Uhm, is this using custom logic gates or just regular AND/OR/NAND/XOR/NXOR/ETC. gates?
Good luck to anyone trying to make a computer out of regular gates and have the server not run at 1 FPS.
I would personally make the cpu have one general purpose register, and just implement 8 instructions that manipulate it, those being:
Store (from register to address)
Load (to register from address)
Add (the number in register to a specified address, the result being written to the register again)
Subtract (same as above)
Jump (to address)
Jump if zero flag is on (to address)
Jump if negative number flag is on (to address)
halt (just stops the clock)
There's only 8 different instructions, so each instruction will only take up 3 bits of data. A ram module has an address width of 4 bits, so you can save the entire instruction and any parameters it has into a single byte and still have 1 bit left over. You could even attach another ram module, and have the last bit decide between which one to address, doubling the amount. This way you could make a computer that would be simple and relatively small. It would be limited, but adding more memory wouldn't be that much of a problem I dont think and really you don't want to have too many instructions. You could just make more instructions in software anyway, like multiplication would just be adding over and over.
Or you could just not use machine codes at all and just use microcode which negates the need for an instruction decoder and sequencer completely:
http://en.wikipedia.org/wiki/Microcode however this means that you'll need a lot more memory to do the same tasks.
You can also have specific addresses, eg 0xf be some sort of display and 0xe be a keyboard or something, so you can save the number 30
into address 0xf and a character comes up on a display or something.
Also, what happened to Cca's logic brick server? I miss that.