Professional Documents
Culture Documents
Chapter 2 Digital Components CA-401-402-2
Chapter 2 Digital Components CA-401-402-2
monazzah@iust.ac.ir
Spring 2023
*Parts of slides are adopted from prof. David Brooks lectures, Department of Electrical Engineering and Computer Science, Harvard University
Classifying ISAs
Classifying ISAs
Stack
Accumulator
Register
transferring information in a
Memory unit
7
4096× 16 Address
1
to use a common bus (in Sec. LD INR CLR
4-3) LD INR
PC
CLR
2
CLR
4
registers LD
OUTR
INR CLR
Clock
LD
common bus PC 2
DR
CLR
3
(S0, S1, S2) : LD INR CLR
Clock
LD
7
Write, Read 4096× 16 Address
Write Read
PC
CLR
DR
address and data by one LD INR CLR
3
bus) Adder
and
E
AC 4
on p. 146)
IR 5
– AC can directly write to LD
Clock
LD
OUTR
Clock pulses
A master clock generator controls the timing for all
registers in the basic computer
The clock pulses are applied to all FFs and registers in
system
The clock pulses do not change the state of a register
unless the register is enabled by a control signal
The control signals are generated in the control unit: Fig.
5-6
The control signals provide control inputs for the multiplexers in
the common bus, control inputs in processor registers, and
microoperations for the accumulator
Control unit
Two major types of control organization
Hardwired control
• The control logic is implemented with gates, FFs, decoders, and other
digital circuits
• + Fast operation, - Wiring change (if the design has to be modified)
Microprogrammed control
• The control information is stored in a control memory, and the control
memory is programmed to initiate the required sequence of
microoperations
• + Any required change can be done by updating the microprogram in
control memory, - Slow operation
Will be covered in details later!
7 6 5 4 3 2 1 0
T 15
.
.
.
.
15 14 1 0
.
.
.
4× 16
decoder
Clock
when D3T4 = 1: D T : SC 0
3 4
T0 : Inactive
T1 : Active
Instruction engine
Instruction Cycle
1) Instruction fetch from Memory
2) Instruction decode
3) Read effective address (if indirect addressing mode)
4) Instruction execution
5) Go to step 1) : Next Instruction [PC + 1]
Continue
indefinitely
unless HALT
instruction is
encountered
Fetch
Fetch
Decode
I D0
.
.
D7 . Control
outputs! T 15
.
.
T0 .
.
.
.
15 14 1 0
.
.
.
4× 16
decoder
Increment(INR)
4-bit
sequence
Clear(CLR)
counter
(SC)
Clock
Execute
Execute
Execute
Instruction
Memory-reference instructions
IR(12,13,14)
= 111
3X8 D7 : Register or I/O = 1
Decoder D6 - D0 : 7 Memory ref. instruction
D0T4 : DR M [ AR]
AND to AC D0T5 : AC AC DR , SC 0
D1T4 : DR M [ AR]
ADD to AC D1T5 : AC AC + DR , E Cout , SC 0
M [ AR]
LDA: memory read DD TT :: DR 2 4
AC DR , SC 0
2 5
Memory-reference instructions
PC = 10 0 BSA 135
STA: memory write D T : M [ AR] AC, SC 0
3 4 PC = 12 next instruction
PC = 137
BSA: branch and save return address Subroutine
Memory-reference instructions
Control flowchart
Flowchart for the 7
memory reference
instruction
• The longest instruction: ISZ
(T6)
Memory-reference instructions
Control flowchart
Flowchart for the 7
memory reference
instruction
• Therefore, it can be
implemented as 3 bit
sequence counter (currently
4 bits are prepared for
expansion)
Question
Answer
=0
• 3) DMA Execute
instruction
IEN
– Maskable Interrupt =1
FGO
IEN
R
0
0
» Interrupt mask is enabled with ION =0
Introduction
VAX
x86
RISC
Simple Implementation
Load/store, fixed-format 32-bit instructions, efficient
pipelines
Lower CPI
Compilers do a lot of the hard work
• MIPS = Microprocessor without Interlocked Pipelined Stages
CISC
Simple Compilers (assists hand-coding, many addressing
modes, many instructions)
Code density
Amir Mahdi Hosseini Monazzah – IUST Computer Architecture Spring 2023 46
CISC vs. RISC Comparison
MIPS/VAX comparison
Abstract implementation