Presentation is loading. Please wait.

Presentation is loading. Please wait.

Fast Spectral Transforms and Logic Synthesis DoRon Motter August 2, 2001.

Similar presentations


Presentation on theme: "Fast Spectral Transforms and Logic Synthesis DoRon Motter August 2, 2001."— Presentation transcript:

1 Fast Spectral Transforms and Logic Synthesis DoRon Motter August 2, 2001

2 Introduction Truth Table Representation –Value provides complete information for one combination of input variables –Provides no information about other combinations Spectral Representation –Value provides some information about the behavior of the function at multiple points –Does not contain complete information about any single point

3 Spectral Transformation Synthesis –Many algorithms proposed leveraging fast transformation Verification –Correctness may be checked more efficiently using a spectral representation.

4 Review – Linear Algebra Let M be a real-valued square matrix. –The transposed matrix M t is found by interchanging rows and columns –M is orthogonal if MM t = M t M = I –M is orthogonal up to the constant k if MM t = M t M = kI –M -1 is the inverse of M if MM -1 = M -1 M = I –M has its inverse iff the column vectors of M are linearly independent

5 Review – Linear Algebra Let A and B be (n  n) square matrices Define the Kronecker product of A and B as

6 Spectral Transform General Transform Idea –Consider the 2 n output values of f as a column vector F –Find some transformation matrix T(n) and possibly its inverse T -1 (n) –Produce R F, the spectrum of F, as a column vector by R F = T(n)F F = T -1 (n)R F

7 Walsh-Hadamard Transform The Walsh-Hadamard Transform is defined:

8 Walsh-Hadamard Matrices

9 Walsh-Hadamard Example

10 3

11

12

13 Walsh-Hadamard Transform Why is it useful? –Each row vector of T(n) has a ‘meaning’ 1 x 1 x 2 x 1  x 2 –Since we take the dot product of the row vector with F we find the correlation between the two

14 Walsh-Hadamard Transform Constant, call it x 0 x 1 x 2 x 1  x 2 x 3 x 1  x 3 x 2  x 3 x 1  x 2  x 3

15 Walsh-Hadamard Transform Alternate Definition Recursive Kronecker Structure gives rise to DD/Graph Algorithm

16 Walsh-Hadamard Transform Alternate Definition Note, T is orthogonal up to the constant 2:

17 Decision Diagrams A Decision Diagram has an implicit transformation in its function expansion –Suppose –This mapping defines an expansion of f

18 Binary Decision Diagrams To understand this expansion better, consider the identity transformation Symbolically,

19 Binary Decision Diagrams The expansion of f defines the node semantics By using the identity transform, we get standard BDDs What happens if we use the Walsh Transform?

20 Walsh Transform DDs

21 1

22 Walsh Transform DDs It is possible to convert a BDD into a WTDD via a graph traversal. The algorithm essentially does a DFS

23 Applications: Synthesis Several different approaches (all very promising) use spectral techniques –SPECTRE – Spectral Translation –Using Spectral Information as a heuristic –Iterative Synthesis based on Spectral Transforms

24 Thornton’s Method M. Thornton developed an iterative technique for combination logic synthesis Technique is based on finding correlation with constituent functions Needs a more arbitrary transformation than Walsh-Hadamard –This is still possible quickly with DD’s

25 Thornton’s Method Constituent Functions –Boolean functions whose output vectors are the rows of the transformation matrix –If we use XOR as the primitive, we get the rows for the Walsh-Hadamard matrix Other functions are also permissible

26 Thornton’s Method 1.Convert the truth table F from {0, 1} to {1, -1} 2.Compute transformation matrix T using constituent functions {F c (x)} Constituent functions are implied via gate library 3.Compute spectral coefficients 4.Choose largest magnitude coefficient 5.Realize constituent function F c (x) corresponding to this coefficient

27 Thornton’s Method 6.Compute the error e(x) = F c (x)  F with respect to some operator,  7.If e(x) indicates w or fewer errors, continue to 8. Otherwise iterate by synthesizing e(x) 8.Combine intermediate realizations of chosen {F c (x)} using  and directly realize e(x) for the remaining w or fewer errors

28 Thornton’s Method Guaranteed to converge Creates completely fan-out free circuits Essentially a repeated correlation analysis Extends easily to multiple gate libraries

29 Thornton’s Method: Example Step 1: Create the truth table using {-1, 1}

30 Thornton’s Method: Example Step 2: Compute transformation matrix T using constituent functions. In this case, we’ll use AND, OR, XOR

31 Thornton’s Method: Example 1 x 1 x 2 x 3 x 1  x 2 x 1  x 3 x 2  x 3 x 1  x 2  x 3 x 1 + x 2 x 1 + x 3 x 2 + x 3 x 1 + x 2 + x 3 x 1 x 2 x 1 x 3 x 2 x 3 x 1 x 2 x 3

32 Thornton’s Method: Example Step 3: Compute spectral coefficients S[F c (x)]= [-2, -2, 2, -2, 2, -2, 2, -6, 2, -2, 2, 2, -2, -2, -2, -4] Step 4: Choose largest magnitude coefficient. –In this case, it corresponds to x 1  x 2  x 3

33 Thornton’s Method: Example Step 5: Realize the constituent function F c –In this case we use XNOR since the coefficient is negative

34 Thornton’s Method: Example Step 6: Compute the error function e(x) –Use XOR as a robust error operator

35 Thornton’s Method: Example Step 7: Since there is only a single error, we can stop, and realize the final term directly

36 Conclusion The combination of spectral transforms and implicit representation has many applications Many ways to leverage the spectral information for synthesis


Download ppt "Fast Spectral Transforms and Logic Synthesis DoRon Motter August 2, 2001."

Similar presentations


Ads by Google