1 / 36

Fast Spectral Transforms and Logic Synthesis

Fast Spectral Transforms and Logic Synthesis. DoRon Motter August 2, 2001. Introduction. Truth Table Representation Value provides complete information for one combination of input variables Provides no information about other combinations Spectral Representation

jacie
Télécharger la présentation

Fast Spectral Transforms and Logic Synthesis

An Image/Link below is provided (as is) to download presentation 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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

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 Mt is found by interchanging rows and columns • M is orthogonal if MMt = MtM = I • M is orthogonal up to the constant k if MMt = MtM = kI • M-1 is the inverse of M if MM-1 = M-1M = 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 2n output values of f as a column vector F • Find some transformation matrix T(n) and possibly its inverse T-1(n) • Produce RF, the spectrum of F, as a column vector by • RF = T(n)F • F = T-1(n)RF

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

  8. Walsh-Hadamard Matrices

  9. Walsh-Hadamard Example

  10. Walsh-Hadamard Example 3

  11. Walsh-Hadamard Example

  12. Walsh-Hadamard Example

  13. Walsh-Hadamard Transform • Why is it useful? • Each row vector of T(n) has a ‘meaning’ 1 x1 x2 x1x2 • 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 x0 x1 x2 x1 x2 x3 x1 x3 x2 x3 x1 x2 x3

  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. Walsh Transform DDs 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 • Convert the truth table F from {0, 1} to {1, -1} • Compute transformation matrix T using constituent functions {Fc(x)} • Constituent functions are implied via gate library • Compute spectral coefficients • Choose largest magnitude coefficient • Realize constituent function Fc(x) corresponding to this coefficient

  27. Thornton’s Method • Compute the error e(x) = Fc(x) F with respect to some operator,  • If e(x) indicates w or fewer errors, continue to 8. Otherwise iterate by synthesizing e(x) • Combine intermediate realizations of chosen {Fc(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 x1 x2 x3 x1 x2 x1 x3 x2  x3 x1  x2 x3 x1 + x2 x1 + x3 x2 + x3 x1 + x2 + x3 x1x2 x1x3 x2x3 x1x2x3

  32. Thornton’s Method: Example • Step 3: Compute spectral coefficients • S[Fc(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 x1  x2 x3

  33. Thornton’s Method: Example • Step 5: Realize the constituent function Fc • 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

More Related