


Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
Community
Ask the community for help and clear up your study doubts
Discover the best universities in your country according to Docsity users
Free resources
Download our free guides on studying techniques, anxiety management strategies, and thesis advice from Docsity tutors
notes on hardwired control unit
Typology: Exams
1 / 4
This page cannot be seen from the preview
Don't miss anything!
Design of Control Unit To execute an instruction, the control unit of the CPU must generate the required control signal in the proper sequence. As for example, during the fetch phase, CPU has to generate PCout signal along with other required signal in the first clock pulse. In the second clock pulse CPU has to generate PC (^) in signal along with other required signals. So, during fetch phase, the
proper sequence for generating the signal to retrieve from and store to PC is PCout and PC (^) in.
To generate the control signal in proper sequence, a wide variety of techniques exist. Most of these techniques, howeve, fall into one of the two categories, .1 Hardwired Control
.2 Microprogrammed Control. Hardwired Control
Consider the sequence of control signal required to execute the ADD instruction that is explained in previous lecture. It is obvious that eight non-overlapping time slots are required for proper execution of the instruction represented by this sequence.
Each time slot must be at least long enough for the function specified in the corresponding step to be completed. Since, the control unit is implemented by hardwire device and every device is having a propagation delay, due to which it requires some time to get the stable output signal at the output port after giving the input signal. So, to find out the time slot is a complicated design task.
ADD NUM R 1 Add the contents of memory location specified by NUM to the contents of register R (^1) R1<-R1+[NUM]
ADD R 2 R 1 Add the contents of register R 2 to the contents of register R (^) 1. R1<-R1+R
The control sequence for execution of these two ADD instructions is different. Of course, the fetch phase of all the instructions remains same.
It is clear that control signals depend on the instruction, i.e., the contents of the instruction register. It is also observed that execution of some of the instructions depend on the contents of condition code or status flag register, where the control sequence depends in conditional branch instruction.
Hence, the required control signals are uniquely determined by the following information:
Control Unit Organization
Figure: Organization of control unit. The structure of control unit can be represented in a simplified view by putting it in block diagram. The detailed hardware involved may be explored step by step. The simplified view of the control unit is given in above fig. The decoder/encoder block is simply a combinational circuit that generates the required control outputs depending on the state of all its input. The decoder part of decoder/encoder part provide a separate signal line for each control step, or time slot in the control sequence. Similarly, the output of the instructor decoder (The Instruction Decoder reads the next instruction in from memory, and sends the component pieces of that instruction to the necessary destinations.) consists of a separate line for each machine instruction loaded in the IR, one of the output line INS 1 to INSm is set to 1 and all other lines are set to 0. The detailed view of the control unit organization is shown in the Figure
All input signals to the encoder block should be combined to generate the individual control signals. In the previous section, we have mentioned the control sequence of the instruction, "Add contents of memory location address in memory direct made to register R 1 ( ADD_MD)",
"Control sequence for an unconditional branch instruction ( BR)",
also, we have mentioned about Branch on negative ( BRN).
Consider those three CPU instructions ADD_MD, BR , BRN.
It is required to generate many control signals by the control unit. These are basically coming out from the encoder circuit of the control signal generator. The control signals are: PCin , PCout , Zin, Zout , MAR (^) in , ADD, END , etc.
in the next control step, the WMFC signal goes low and control unit operates normally till the next memory access signal is generated.
The timing diagram for an instruction fetch operation is shown in the Figure