In the previous post I had discussed the basic idea of the URISC processor and the 'SUBNEG' instruction. In this post I will try and explain how the various registers are controlled.
First let me talk about the control word. A control word is a a large binary number (also called a word) that is used to control the various elements in the processor.

Going by the same idea all the control lines can be figured out.
The table below, shows all the various control lines of each component.
In the table 'IE' is Input Enable (read line) and 'OE' is Output Enable (Write line).
The 'inc' control line is for incrementing the program counter by 1.
'RST' is for resetting the micro-instruction counter and 'WE' is the Write Enable line of the RAM.
In total there are 12 control lines hence we have a 12-Bit control word.
The idea behind the control lines is that you can transfer data from one register to another by simultaneously reading from and writing to the bus.
For eg. if we were to transfer a 16-bit address from the Memory Address Pointer (MAP) to the Program Counter (PC), we could do this by setting the control lines such that MAP writes to the bus and PC reads from the bus. In this way we successfully copy data from one register to another.
Shown above is a gif demonstrating 4-Bit data being transferred from one register to another.
When executing an instruction we need to do many such data transfers in a fixed sequence and for that we need a counter to keep track of which step of the sequence we are in and what to do next.
As a matter of fact this is exactly what the CU (Control Unit) of a processor is, a circuit that determines which step of the sequence is being currently executed and which control line should be switched ON next.
In the next post I will try explaining the micro-code counter and how the instruction is actually executed...till then.....
Got any queries???E-Mail me at: shashwath.sundar@gmail.com
Comments
Post a Comment