Logic Synthesis for Look-Up Table based FPGAs using Functional
Logic Synthesis for Look-Up Table based FPGAs using Functional
Logic Synthesis for Look-Up Table based FPGAs using Functional
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
1 <br />
(LUT: <strong>Look</strong>-<strong>Up</strong> <strong>Table</strong>) FPGA(Field<br />
Programmable Gate Array) <br />
<br />
<br />
LUT LUT<br />
m(m 4 5 ) <br />
<br />
<br />
<br />
[1] <br />
LUT <br />
[2, 3] <br />
[4, 5, 6, 7, 8] <br />
[5, 6, 7] (ordered<br />
binary decision diagram: OBDD BDD)<br />
[9] <br />
BDD <br />
LUT <br />
LUT disjunctive <br />
disjunctive <br />
nondisjunctive <br />
<br />
<br />
LUT <br />
<br />
<br />
<br />
<br />
<br />
<br />
[1, 10] LUT<br />
<br />
<br />
[11, 12, 13] <br />
LUT SDC(Satisability<br />
Don't Care) <br />
2 <br />
BDD <br />
3 <br />
LUT <br />
4 <br />
LUT <br />
5 <br />
6 <br />
bound<br />
set<br />
2 <br />
0<br />
f<br />
x 2 1<br />
x 1<br />
x 1<br />
0 1 0 1<br />
0 1<br />
x 4 x 4 x 4<br />
0 1 01<br />
x 3<br />
0 1<br />
v 2<br />
level<br />
1<br />
2<br />
3<br />
4<br />
v 0 v 1<br />
0 1<br />
2.1 BDD<br />
π<br />
π<br />
π<br />
π<br />
index<br />
2<br />
1<br />
4<br />
3<br />
cut_ set( f , π, 3) = { v0, v1, v2}<br />
cut_ set_ nd( f , π,,,) 330 = { v0, v2}<br />
cut_ set_ nd( f , π, 331 , , ) = { v1, v2}<br />
x 4 x 1 x 2<br />
1: BDD <br />
x 4 x 1 x 2<br />
x 3 αα x 3 1 2<br />
α 1<br />
g g<br />
f f<br />
f : f0; 1g n ! f0; 1g (x 1 ;:::;x n ) <br />
f xi = f(x 1 ;:::;x i01 ; 1;<br />
x i+1 ;:::;x n ) f xi = f(x 1 ;:::;x i01 ; 0; x i+1 ;:::;x n )<br />
f (support) sup(f) <br />
<br />
8x 2 sup(f);f x 6= f x 8x 62 sup(f);f x = f x<br />
f jsup(f)j m m-<br />
feasible m-infeasible <br />
(BDD) [9] <br />
( 1) BDD <br />
2 <br />
0 1 <br />
0 1 2 <br />
<br />
<br />
<br />
<br />
<br />
v i v j <br />
v i v j <br />
1 1 <br />
BDD <br />
<br />
2.2 <br />
f(x 1 ;:::;x n ) <br />
<br />
f = g( 1(X B );:::; t(X B );X F )=g(~(X B );X F ); (1)<br />
X B X F X B [ X F = fx 1 ;:::;x n g<br />
X B , X F <br />
bound set, free set X B \X F = ;<br />
disjunctive <br />
nondisjunctive g <br />
2