Emmanuel Boutillon, Eric Martin LESTER, Universite de Britagne Sud Lorient, France. HighLevel Design Verification using Taylor Expansion Diagrams: First Results. Maciej Ciesielski ECE Department. Univ. of Massachusetts. Priyank Kalla ECE Department University of Utah. F(x). x. ….
Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.
Emmanuel Boutillon, Eric Martin
LESTER, Universite de Britagne Sud
Lorient, France
HighLevel Design Verification using Taylor Expansion Diagrams:First Results
Maciej Ciesielski
ECE Department.
Univ. of Massachusetts
Priyank Kalla
ECE Department
University of Utah
F(x)
x
…
F(0)
F’(0)
F’’(0)/2
F(x) = F(0) + x F’(0) + ½ x2 F’’(0) + …
F(x=0) 0child    
F’(x=0) 1child
½ F’’(x=0) 2child======
etc.
F(x) = 0child+ x (1child) + x2(2child) + …
X2 = (8x3 + 4x2 + 2x1 + x0)2
(A+B)(A+2C)
64
x3
A
1
16
1
16
x2
x2
B
B
8
1
4
C
4
x1
x1
2
4
1
2
1
x0
x0
1
0
1
1
1
1
0
A,B,C: arbitrary word width
X decomposed in bits
TED: not a BDD, not a *BMD, not a decision diagram
A*C + B*C + A*D + B*D = (A+B)*(C+D)
(arbitrary wordwidth)
Previous PE
Computation
A[ i ]
B[ j ]

+
Sum of Differences
FIFOs
16x16
PE Array
PE
2
Previous PE
Computation
A[ i ]
Sum
2
B[ j ]

+
Sum of Differences
Of squares
PE Computation: A[ i ] – B[ j ], 8bit vectors
Effect of array size
Size (# nodes)
Time [s]
2
2
PE Computation: A[ i ] – B[ j ], 8bit vectors
Effect of array size
Size ( nodes)
Time [s]
= out of memory
A = [an1, …,ak,…,a0] = [Ahi,ak,Alo], B = [bn1, …,bk,…,b0] = [Bhi,bk,Blo]
B
A
+
*
F2
A
F1

0
1
1
0
*
B

*
D
s2
ak
s1
ak
D
>
bk
bk
F2 = (1s2) (A2B2) + s2 D
s2 = ak’ bk = 1  ak + ak bk
F1 = s1(A+B)(AB) + (1s1)D
s1 = (ak > bk) = ak (1bk)
A = 2(k+1)Ahi + 2k ak + Alo B = 2(k+1)Bhi + 2 kbk + Blo
F1 = F2
D
ak
ak
bk
bk
1
1
Ahi
22k+2
1
Bhi
2k+2
22k+2
Alo
Alo
2k+2
Blo
2k+1
2k
2k
1
1
1
F1 = s1(A+B)(AB) + (1s1)D
A = [Ahi, ak, Alo]
B = [Bhi, bk, Blo]
s1 = (ak > bk) = ak (1bk)
0
Vary k = size of Boolean logic
Time [s]
Size (nodes)
A0
A1
FFT(A)
A2
FAB1
IFFT0
A3
IFFT1
FAB2
InvFFT(FAB)
IFFT2
FAB2
B0
IFFT3
FAB3
B1
FFT(B)
B2
B3
x
x
x
x
C0
A[0:3]
C1
Conv(A,B)
C2
B[0:3]
C3
A0
A2
A1
A3
B0
B3
B1
4
0
IFFT0 = C0 = 4{ A0*B0 + A1*B3 + A2*B2 + A3*B1}
0
4
2
3
1
0
2
3
2
X
X
0
4
3
=
X
X
=
Y
4
3
Y
=
*
Y
Y
2
1
4
0
3
2
1
0
1
3
1
+
= 0
1
1
0
0
let be primitive element of GF(8)
Canonical
Compact
Linear for polynomials of arbitrary degree
TED for Xk, k = const, with n bits, hask(n1)+1 nodes
*BMD is polynomial in n
Can contain symbolic, wordlevel, and Boolean variables
It is not a Decision Diagram
X2 = (8x3 + 4x2 + 2x1 + x0)2
64
x3
1
16
16
x2
x2
8
1
4
4
x1
x1
4
1
2
1
x0
x0
1
1
1
1
0
n = 4, k = 2
PE Computation: A[ i ] – B[ j ]
A[ i ], B[ j ]:8bit vectors
2
2
PE Computation: A[ i ] – B[ j ]
A[ i ], B[ j ]: 8bit vectors
Vary k = size of Boolean logic