Information Technology Reference
In-Depth Information
Control
Microcode
Control
Microcode
AC
c ADD
M
c STA
t 6
AC + MDR
t 5 M
AC
MDR
c AND
t 6
AC
AC AND MDR
c CLA
t 4
AC
0
PC
c CIL
t 4
AC
Shift(AC)
t 2
PC + 1
PC
c LDA
t 6
AC
MDR
c JZ
t 4
if ( AC = 0) PC
MDR
c CMA
t 4
AC
←¬
AC
c IN
t 4
AC
INR
OPC
t 3 OPC
MDR
MAR
t 1 MAR
PC
OUTR
c OUT
c ADD
t 4 MAR
MDR
t 4 OUTR
AC
c AND
t 4 MAR
MDR
c LDA
t 4 MAR
MDR
HLT
c HLT
c STA
t 4 MAR
MDR
t 4
t j
0for1
j
k
MDR
t 2 MDR
M
c ADD
t 5 MDR
M
c AND
t 5 MDR
M
c LDA
t 5 MDR
M
c STA
t 4 MDR
AC
Figure 3.38 The microinstructions affecting each register.
The expression (AC = 0) denotes a Boolean variable whose value is 1 if all bits in the AC
are zero and 0 otherwise. This variable is the AND of the complement of each component of
register AC.
To illustrate the remaining steps in the design of the CPU, we show in Fig. 3.39 the
circuits used to provide input to the accumulator AC. Shown are registers AC, MDR, and
INR as well as circuits for the functions f add (see Section 2.7 )and f and that add two bi-
nary numbers and take their AND , respectively. Also shown are multiplexer circuits f mux (see
Section 2.5.5 ). They have three control inputs, L 0 , L 1 ,and L 2 , and can select one of eight
inputs to place on their output lines. However, only seven inputs are needed: the result of
adding AC and MDR, the result of AND ing AC and MDR, the zero vector, the result of shift-
ing AC, the contents of MDR or INR, and the complement of AC. The three control inputs
encode the seven control variables, L ( AC, AC + MDR ) , L ( AC, AC AND MDR ) , L ( AC, 0 ) ,
L ( AC, Shift(AC) ) , L ( AC, MDR ) , L ( AC, INR ) ,and L ( AC,
AC ) . Since at most one of these
control variables has value 1 at any one time, the encoder circuit of Section 2.5.3 can be used
to encode these seven control variables into the three bits L 0 , L 1 ,and L 2 shown in Fig. 3.39 .
The logic circuit to supply inputs to AC has size proportional to the number of bits in each
register.Thus,ifthewordsizeoftheCPUwerescaledup,thesizeofthiscircuitwouldscale
linearly with the word size.
¬
 
Search WWH ::




Custom Search