Microcode pre-release

I decided to stop at this point and declare the initial version of the microcode complete (although the machine has not been simulated yet and the microcode is still untested). I have not yet completed faults and interrupts microcode, because I don’t know how I am going to do user/supervisor mode context switching and which ...

Bitwise shifts – here comes the shifter

Bitwise shifts – here comes the shifter
I have added yet another component to the high level design. It is a shifter and its role is to… shift. More specifically, it is a right shifter which will allow me to perform bitwise right shift in just one clock cycle. Until now, the design was lacking this ability. Doing left shifts is fairly ...

Architecture update

Architecture update
At a certain point when microcoding I realized that my architecture was obviously wrong in one aspect. Frankly speaking it was so wrong that I am embarrassed I had not noticed this earlier. The problem was that all address registers were connected to the 8-bit data bus. With such layout, every address loading operation consumed ...

New toys

New toys
I have been collecting various stuff I will need to build the computer for some time already. As I am still struggling to complete the microcode assembler (I keep changing my mind on various microcode word structures back and forth), I decided to take a little brake and share photos of what I have gathered. ...

Block diagram

Block diagram
As I am working through the microcode (and the microcode assembler) this finally required me to sketch a block diagram of the entire machine and the CPUs internal datapaths. The microcode is not ready yet (I have completed about 20 most typical instructions), neither is the assembler (I am adding features to the lexer and parser ...