View
224
Download
0
Tags:
Embed Size (px)
Citation preview
234262 © – Yohai Devir 2007Technion - IIT
GCDa is given at the first cycle and that b is given at the following cycle
ALUOpCC
A B
234262 © – Yohai Devir 2007Technion - IIT
DP flow chart (moore)(a)
A ß a
(c)
A-B
(f)
(e)
A ß A-B
A-B == 0
(b)
B ß b
(d)
B ß B-A
A-B < 0 A-B > 0
*
234262 © – Yohai Devir 2007Technion - IIT
Switch implementation
LdA A B
ALUOpCC
In
SelB
LdB
SelA 0 1 0 1
(a)
A ß a
(c)
A-B
(f)
(e)
A ß A-B
A-B == 0
(b)
B ß b
(d)
B ß B-A
A-B < 0 A-B > 0
234262 © – Yohai Devir 2007Technion - IIT
A B
ALUOpCC
In
SelB
LdB
SelA 0 1 0 1
Control (moore)
(a)selA=1LD_A
(c)
OP=A-B
(f)
ready
(e)Sel_A=0
LD_AOP=A-B
CC=zero
(b)Sel_B=1
LD_B
(d)Sel_B=0
LD_BOP=B-A
CC=neg CC=pos
(a)
A ß a
(c)
A-B
(f)
(e)
A ß A-B
A-B == 0
(b)
B ß b
(d)
B ß B-A
A-B < 0 A-B > 0
Implementation – just as in tutorial 4…
234262 © – Yohai Devir 2007Technion - IIT
GCD – slower ALU
A B
ALUOpCCALU
In
SelB
LdB
SelA 0 1 0 1
CC
'0'
ReadCC
01
234262 © – Yohai Devir 2007Technion - IIT
(a)
A ß a
(c)
A-B
(f)
(e)
A ß A-B
A-B == 0
(b)
B ß b
(d)
B ß B-A
A-B < 0 A-B > 0
(a)selA=1LD_A
(c2)CC=CC_ALU
OP=A-BreadCC = 1
(f)
ready
(e)Sel_A=0
LD_AOP=A-B
CC=zero
(b)Sel_B=1
LD_B
(d1)CC=0
OP=B-AreadCC = 0
CC=neg CC=pos
(c1)CC=0
OP=A-BreadCC = 0
(d2)OP=B-AselB=0LD_B
*
234262 © – Yohai Devir 2007Technion - IIT
DP mealy (regular ALU)
(a)
A ß a
(c)If (A-B>0)A ß A-B
(f)
A-B == 0
(b)
B ß b
(d)
B ß B-A
A-B < 0
A-B > 0
(a)
A ß a
(c)
A-B
(f)
(e)
A ß A-B
A-B == 0
(b)
B ß b
(d)
B ß B-A
A-B < 0 A-B > 0
*
234262 © – Yohai Devir 2007Technion - IIT
CTL mealy
(a)selA=1Ld_A
(c)OP=A-B
Sel_A = 0If (CC=pos)
LD_A
(f)
ready
CC=zero
(b)Sel_B=1
LD_B
(d)Sel_B=0
LD_BOP=B-A
CC=neg
CC = pos
(a)
A ß a
(c)If (A-B>0)A ß A-B
(f)
A-B == 0
(b)
B ß b
(d)
B ß B-A
A-B < 0
A-B > 0
*