Microprocessor System Design Single-purpose processors

Single-purpose processors
A single-purpose processor can only carry out particular computational
task.
Microprocessor System Design
EHB432E
Lecture -3
Combinational Logic
Driver, AND, OR, XOR, INVERTER, NAND, NOR, XNOR
RT-Level Combinational Components:
Prof. Dr. Müştak E. Yalçın
Miltiplexor, Decoder, Adder, Comparator, ALU
Combinational logic design (Karnaugh map,...)
Istanbul Technical University
Sequential Logic
[email protected]
RT-Level Sequential Components
Register, Shift Register, Counter
Sequential logic design
BLG 231E Digital Circuits
Prof. Dr. Müştak E. Yalçın (İTÜ)
MSD
January, 2016
1 / 13
Single-purpose processor basic model
Prof. Dr. Müştak E. Yalçın (İTÜ)
MSD
January, 2016
2 / 13
Example: greatest common divisor
The system specification
" compute a greatest common divisor of two inputs"
0: int x, y;
1: while (1) {
2: while (!go i);
3: x = x i;
Black-box view
4: y = y i;
5: while (x != y) {
6: if (x < y)
7: y = y - x;
else
8: x = x - y;
}
9: d o = x;
}
Prof. Dr. Müştak E. Yalçın (İTÜ)
MSD
January, 2016
3 / 13
Prof. Dr. Müştak E. Yalçın (İTÜ)
MSD
January, 2016
4 / 13
Algorithm
Assignment statement
a = b
next statement
Loop statement
while (cond) {
loop-bodystatements
}
next statement
Branch statement
if (c1)
c1 stmts
else if c2
c2 stmts
else
other stmts
next statement
! FSM with data (FSMD)
Templates
0: int x, y;
1: while (1) {
2: while (!go i);
3: x = x i;
4: y = y i;
5: while (x !=
y) {
6: if (x < y)
7: y = y - x;
else
8: x = x - y;
}
9: d o = x;
}
Behavioural
tion !
Prof. Dr. Müştak E. Yalçın (İTÜ)
MSD
January, 2016
5 / 13
Register Transfer (RT) specification
Behavioural
tion !
Specifica-
MSD
MSD
January, 2016
6 / 13
January, 2016
8 / 13
Register Transfer (RT) specification
Create a register for any declared variable
Prof. Dr. Müştak E. Yalçın (İTÜ)
Prof. Dr. Müştak E. Yalçın (İTÜ)
Specifica-
Create a functional unit for each arithmetic operation
January, 2016
7 / 13
Prof. Dr. Müştak E. Yalçın (İTÜ)
Behavioural
tion !
Specifica-
MSD
Register Transfer (RT) specification
Register Transfer (RT) specification
Connect the ports, registers and functional units
Prof. Dr. Müştak E. Yalçın (İTÜ)
Behavioural
tion !
MSD
Create unique identifier
January, 2016
9 / 13
Specifica-
Prof. Dr. Müştak E. Yalçın (İTÜ)
Behavioural
tion !
MSD
January, 2016
10 / 13
January, 2016
12 / 13
Specifica-
Creating the controller’s FSM:
Register Transfer (RT) specification
Creating the controller’s FSM: Replace complex actions/conditions with
datapath configurations
Prof. Dr. Müştak E. Yalçın (İTÜ)
MSD
January, 2016
11 / 13
How to design combinational logic in the controller ? Figure 2.12, page: 43
Optimizing single-purpose Processor ! –¿ Read Chp. 2.6
Prof. Dr. Müştak E. Yalçın (İTÜ)
MSD
General-purpose processors
Prof. Dr. Müştak E. Yalçın (İTÜ)
MSD
January, 2016
13 / 13