Control Unit Operation 329
are necessary to complete the ongoing instruction before fetching the next instruction. We have taken up
only this part of operation for the purpose of explaining some details related with data path and control
signal design.
The complete timing diagram for the present operational example is illustrated in Figure 10.21 .
As we can see, it would consume four clock cycles and with alternate design methods it may further
be reduced to three cycles. In this timing diagram of Figure 10.21 , the reader may note that the signal
O’
12
is depicted at two different places although it is the same signal. This has been done just for better
understanding of the sequences.
If any software micro-coding is necessary, control signals related with this example may be gener-
ated as per the details available in Table 10.3 . In Table 10.3 , the reader should note that the control signal
O’
12
is listed only once, and in two cycles, Cycle 1 and Cycle 3, it goes low. We shall now redesign
control signals to further optimize the number of cycles.
Cycle O’
12
I’
14
O
ad
I
dt
MEMR O
13
I
15
F
0
O
9
I
12
Operation
1 0 0 1 1 1 1 1 1 1 1 Copy PC to MAR
2 1 1 0 0 0 1 1 1 1 1 Fetch instruction
3 0 1 1 1 1 0 0 0 1 1 Copy MBR to IR and PC to ALU
4 1 1 1 1 1 1 1 1 0 0 Z to PC
Table 10.3 Control signals for micro-operation with C-Bus and B-Bus
10.6.3 Example 3 (Alternate Solution Using C-Bus and B-Bus)
Problem
Solve the same problem with reduced number of required cycles.
Solution
When we are having two independent buses, the operations may be carefully planned to minimize the
bus-cycles of the processor. For the instruction fetch problem, the following may be the necessary steps.
R Step 1: Copy PC to MAR through C-Bus and simultaneously send PC to ALU using B-Bus. Set
ALU in increment by one mode by turning F0 low. Latch data in MAR and also the result in Z
simultaneously.
R Step 2: Allow MAR to send address via external address bus and also make MEMR low. Receive
data from external memory through external data bus at MBR and latch the data. Simultane-
ously, copy result from Z to PC using C-Bus and latch the data inside PC.
R Step 3: Copy MBR to IR through C-Bus and latch the data within IR.
Control signals related with this operation are presented in Table 10.4 .
Therefore, we can conclude that instead of four cycles as in Example 2, the operation may be com-
pleted within three cycles as illustrated above. Note that we are using B-Bus simultaneously with C-Bus
in one cycle only as in previous example. For all remaining cycles, we are using C-Bus. As a matter of
fact, an additional data path would not enhance the ef ciency in this situation. The reader may ask why
or when a three-data-path system is adopted? In general, three data paths are properly utilized in the case
of ALU operations, which we are about to discuss now.
M10_GHOS1557_01_SE_C10.indd 329M10_GHOS1557_01_SE_C10.indd 329 4/29/11 5:19 PM4/29/11 5:19 PM