7/31/2019 Functional Units and Addressing Modes
1/18
7/31/2019 Functional Units and Addressing Modes
2/18
7/6/2012 Department of Information Technology 2
Processor
Computer Functional Units
Memory
Arithmetic
& Logic
Control
I/O
Input
Output
7/31/2019 Functional Units and Addressing Modes
3/18
7/6/2012 Department of Information Technology 3
Processor and Memory
ALUIR
MAR
MEM
PC
MDR
R0
R1
.
.
.
Rn-1
Control
Processor
MAR - Memory Address Register
MDR - Memory Data Register
PC - Program Counter
IR - Instruction Register
7/31/2019 Functional Units and Addressing Modes
4/18
7/6/2012 Department of Information Technology 4
Computer Instructions
Assembly Language
MOVE NUM1,R1
MOVE #1,R2
ADD #1,R1
ADD R1,R2
Register Transfer Notation
R1 [NUM1]
R2 1
R1 1 + [R1]
R2 [R1] + [R2]
7/31/2019 Functional Units and Addressing Modes
5/18
7/6/2012 Department of Information Technology 5
Example Instruction
Fetch
MAR [PC]
PC [PC] + 1
MDR [MEM([MAR])]
IR [MDR]
Execute
MAR NUM1
MDR [MEM([MAR])]
R1 [MDR]
MOVE NUM1,R1
7/31/2019 Functional Units and Addressing Modes
6/18
7/6/2012 Department of Information Technology 6
Another Example
Fetch
MAR [PC]
PC [PC] + 1
MDR [MEM([MAR])]
IR [MDR]
Execute
R1 1 + [R1]
ADD #1,R1
7/31/2019 Functional Units and Addressing Modes
7/187/6/2012 Department of Information Technology 7
Single-Bus Structure
Memory ProcessorInput Output
7/31/2019 Functional Units and Addressing Modes
8/187/6/2012 Department of Information Technology 8
Single-Bus Architecture (HW1)
A B
R
ALU
MDR
MAR
MEM
BUS A
Y
Z
7/31/2019 Functional Units and Addressing Modes
9/187/6/2012 Department of Information Technology 9
Single-Bus Architecture (HW3)
12
PC
IR
REGS
A B
R
ALU
MDR
MAR
MEM
BUS A
Y
Z
1 2
MUX 6
66
21
1
MUX
6
7/31/2019 Functional Units and Addressing Modes
10/187/6/2012 Department of Information Technology 10
Design Project Architecture
6
A
B
R
6
1 12
A1 A2
PC
IR
1
2
2
22
REGS
ALU
MDR3 1
MAR
MEM
NZVC
BUS A BUS B BUS C
MUX
7/31/2019 Functional Units and Addressing Modes
11/187/6/2012 Department of Information Technology 11
System Software
Compiler High-level LanguageMachine Language
Assembler Assembly LanguageMachine Language
Text Editor Keyboard Input File
Operating System Control Sharing & Interaction
Assign & Manage Resources Memory
Disk Space
Handle I/O
7/31/2019 Functional Units and Addressing Modes
12/187/6/2012 Department of Information Technology 12
Memory Performance
Main
MemoryProcessor
Cache
Memory
7/31/2019 Functional Units and Addressing Modes
13/187/6/2012 Department of Information Technology 13
Processor Clock
Period (P)
Rate (R)
CLK
R = 1/P
1 GHz = 1/1ns
7/31/2019 Functional Units and Addressing Modes
14/187/6/2012 Department of Information Technology 14
Performance Equation
Processor Execution Time (T)
Number of Machine Language Instructions (N)
Average Steps per Machine Instruction (S)
Clock Rate (R)
Performance Measurement (Benchmarking)
TN S
R
7/31/2019 Functional Units and Addressing Modes
15/187/6/2012 Department of Information Technology 15
Pipelining
F1 E1
I1
F2 E2
I2
F3 E3
I3
Sequential Execution
F1 E1I1
F2 E2I2
F3 E3I3
Pipelined Execution
7/31/2019 Functional Units and Addressing Modes
16/187/6/2012 Department of Information Technology 16
Parallel Processing
Parallel Execution
Superscalar
Multiprocessors
Shared-Memory
Multicomputers
Message-Passing
7/31/2019 Functional Units and Addressing Modes
17/187/6/2012 Department of Information Technology 17
CISC vs RISC
Complex Instruction Set Computers (CISC)
Smaller N
Larger S
Reduced Instruction Set Computers (RISC)
Larger N
Smaller S
Easier to Pipeline
7/31/2019 Functional Units and Addressing Modes
18/187/6/2012 Department of Information Technology 18
Review
Binary
Hex
2's-complement
Overflow