Memory, registers and ALU

Memory, registers and ALU

For my 8 bit computer I built the A and B registers and the Arithmetic Logic Unit (the ALU). Also I’m experimenting to create 256 bytes of memory.

Status

The registers now work, they can put values on and accept values from the bus. The ALU is wired for addition now, but it will be re-wired to be able to subtract as well.

In the picture below you can see the clock module top left, under that we have the memory. For the memory, I stepped Ben’s design up a notch, because I found that 16 bytes of memory was somewhat to small. I will use two 256×4 RAM chips, creating a whopping 256 bytes of memory!

This of course means that I will have to write my own micro-code later on, for instructions that need an address to store or retrieve data will need an extra fetch cycle. In Ben’s design the memory address for the 16 byte memory was stored in the second half of the instruction byte…

In the center we find the vertically positioned bus. To the right we find, from top to bottom, the A register, the ALU and the B register.