the synthesis of cyclic combinational circuits marc d.riedel, jehoshua bruck california institute of...
DESCRIPTION
Introduction LED DisplayTRANSCRIPT
![Page 1: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/1.jpg)
The Synthesis of Cyclic Combinational Circuits
Marc D.Riedel , Jehoshua BruckCalifornia Institute of TechnologyPresenter : Chi-Yun Cheng
![Page 2: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/2.jpg)
Introduction 7-segment display decoder There are 4 PIs and 7 POs
x3 x2 x1 x0 Digit
0 0 0 0 0 0 0 0 1 1 0 0 1 0 2 0 0 1 1 3 0 1 0 0 4 0 1 0 1 5 0 1 1 0 6 0 1 1 1 7 1 0 0 0 8 1 0 0 1 9
a
b
c
d
e
f
g
![Page 3: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/3.jpg)
Introduction LED Display
![Page 4: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/4.jpg)
Introduction The display of “e” should be light up at “0” “2” “3” “5” “6” “8” . So the original PO : e = x0’ x1’ x2’ x3’ + x0’ x1 x2’ x3’+ x0 x1 x2’ x3’ + x0 x1’ x2 x3’ + x0’ x1 x2 x3’ + x0’ x1’ x2’ x3
x3 x2 x1 x0 Digit
0 0 0 0 0 0 0 0 1 1 0 0 1 0 2 0 0 1 1 3 0 1 0 0 4 0 1 0 1 5 0 1 1 0 6 0 1 1 1 7 1 0 0 0 8 1 0 0 1 9
![Page 5: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/5.jpg)
Introduction Cyclic Network (These outputs are synthesized)
a = x0’ x3’ c + x1’ cb = x0’ (x1’ x2’ + x1 x3’)c = x0 x2’ x3’ + x2’ (x1’ x3 + e)d = x1 x2’ x3’ + a (x2 + x3)e = x0 x3’ d + bf = x2’ c + x3’ e’g = x0 x3’ + a
g
ab
c
de
f
![Page 6: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/6.jpg)
Introduction With x3 = 0 , x2 = 0 , x1 = 0 , x0 = 1
a = c = 0b = 0c = e = 0d = 0e = b + d = 0f = e’ + c = 1g = 1
b d
e
c
a f
a
b
c
d
e
f
g
![Page 7: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/7.jpg)
Definition Target function : The original PO (Composed by boolean input
variables) Ex: b = x0’ x1’ x2’ x3’ + x0’ x1 x2’ x3’+ x0’ x1’ x2 x3’ + x0’ x1’
x2’ x3
In the network , f = x2’ c + x3’ e’
f is node function , c , e are internal variables
g
ab
c
de
f
![Page 8: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/8.jpg)
Synthesis The goal is to construct a network that computes
target functions with the cost as low as possible .
The operation we use is Substitution .
Using target functions to represent each othere = x0 x3’ d + b
e = x0’ x1’ x2’ x3’ + x0’ x1 x2’ x3’ + x0 x1 x2’ x3’ + x0 x1’ x2 x3’ + x0’ x1 x2 x3’ + x0’ x1’ x2’ x3
![Page 9: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/9.jpg)
Synthesisf1 = x1’ x2 x3’ + x2’ (x1 + x3)
f2 = x1’ x2’ x3’ + x1 (x2 + x3)
f3 = x3’ (x1’ + x2’) + x1’ x2’Substitution f3 into f1 we got f1 = f3(x1+x2)+x2’x3
Substitution f3 into f2 we got f2 = x1’ x2’ x3’ + x1 f3’
Substitution f2 and f3 into f1 we got f1 = x2’x3 + f2’f3
![Page 10: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/10.jpg)
Synthesis Each target function can try substituting
different sets of functions .
For f1 , it can be substitution by : ( none , [f2] , [f3] , [f2+f3] ) = > 4 ways to substitution .
f1 = x1’ x2 x3’ + x2’ (x1 + x3)
f1 = f3 (x1 + x2) + x2’ x3
f1 = x2’ x3 + f2’ f3
![Page 11: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/11.jpg)
Synthesis• Different substitution sets cause different cost .
f1 = x1’ x2 x3’ + x2’ (x1 + x3) => cost 6
f1 = f3 (x1 + x2) + x2’ x3 => cost 5
f1 = x2’ x3 + f2’ f3 => cost 4• In general , augmenting the set of functions available for substitution , makes the cost unchanged or lower.
![Page 12: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/12.jpg)
Algorithm The goal is to select a choice of node
functions that minimize the cost and make the whole circuit combinational.
With n nodes , there are 2n-1 substitutional sets of for each node . The total possibilities is n‧ 2n-1.
It’s evidently intractable search all the conditions,
so we use branch-and-bound approach .
![Page 13: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/13.jpg)
The “Break-Down” Approach A branch terminates when it hits a
combinational solution. Begins with a densely connected network. As edges are excluded in the process , the
cost of the network remains the same or increase .
![Page 14: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/14.jpg)
The “Break-Down” Approach Analyze the current branch. If it’s combinational ,
add it to the solution list. Otherwise , select a set of edges to exclude.
It’s not combinational
Select edge f1←f2 Select edge f2→f3
![Page 15: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/15.jpg)
The “Break-Down” Approach For each edge in the set , create a new branch for a
new node expression If the cost of the new branch equals or exceeds that
of a solution found , kill the branch .
![Page 16: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/16.jpg)
The “Break-Down” Approach Mark the current branch as “explored” Set the current branch to be the lowest cost
unexplored branch
← Current branch
Explored
← Current branch
![Page 17: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/17.jpg)
![Page 18: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/18.jpg)
The “Build-Up” Approach A branch terminates when it hits a non-combinational solution. Begins with an empty edge set. This initial branch provides a lower bound
on the cost. As edges are included , the cost of the
network remains the same or decreases .
![Page 19: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/19.jpg)
The “Build-Up” Approach Analyze the current branch. If it’s not
combinational , then discard it. Otherwise , select a set of edges to include.
It’s combinational
Select edge f2→f3Select edge f2→f1
![Page 20: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/20.jpg)
The “Build-Up” Approach For each edge in the set , create a new branch for a
new node expression .
![Page 21: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/21.jpg)
The “Build-Up” Approach Mark the current branch as “explored” Set the current branch to be the lowest cost
unexplored branch
← Current branch
Explored
← Current branch
![Page 22: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/22.jpg)
![Page 23: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/23.jpg)
ResultsRandomly Generates Networks
# In # Out Cyclic Solutions Found
Avg. Improvement
Range
5 5 100% 8.5 % 3% - 17 %5 7 96% 9.1 % 0% - 18 %5 10 100% 12.0 % 2% - 20 %5 15 100 % 13.4 % 7 % - 23 %5 20 100 % 14.2 % 8 % - 18 %7 10 96 % 5.6 % 0 % - 11 %7 15 88 % 3.6 % 0 % - 10 %
![Page 24: The Synthesis of Cyclic Combinational Circuits Marc D.Riedel, Jehoshua Bruck California Institute of Technology Presenter : Chi-Yun Cheng](https://reader036.vdocuments.us/reader036/viewer/2022062401/5a4d1add7f8b9ab059975985/html5/thumbnails/24.jpg)
Thank You