Presentation is loading. Please wait.

Presentation is loading. Please wait.

Anti-Symmetry and Logic Simulation Reviewer Ko-Lung Yuan.

Similar presentations


Presentation on theme: "Anti-Symmetry and Logic Simulation Reviewer Ko-Lung Yuan."— Presentation transcript:

1 Anti-Symmetry and Logic Simulation Reviewer Ko-Lung Yuan

2 Outline Abstract Introduction Classical Symmetry Anti-Symmetry Symmetry Detection Experimental Results Conclusion Comment

3 Abstract

4 Simulation Naïve simulation has state explosion problem, but we can use symmetry to reduce the possible state Symmetry detection is an important progress This paper want to give a simulation method based on symmetry detection with anti-symmetry detection joined

5 Logic Simulation Flow I think it might be… Circuit Symmetry Detection State-Space Transformation Function Correction Simulation Gate State Machine Boolean Function

6 Introduction Detecting symmetries has proven to be useful in many areas of EDA Permutation-based symmetry detection algorithm ▫ Capture the idea of rearranging things

7 Symmetry Type

8 Symmetry Detection

9 Symmetric Pairs Detection

10 Cofactor

11 Classical Symmetry There are six possible relations in these four cofactors, each of which represents a certain type of symmetry RelationSymmetry Type Ordinary Multi-Phase Single-Variable A Single-Variable B Multi-Phase Single-Variable A Multi-Phase Single-Variable B

12 Symmetry Correction

13 Symmetric Detection The detection algorithm tests only for ordinary symmetry The other five relations are detected by transforming the state space of the function, and then testing for ordinary symmetry

14 It is possible to treat the multi-phase relation as ordinary symmetry after performing a state-space transformation and add a NOT gate to one of the inputs State space transformation (symmetry)

15 Conjugate symmetry It is possible to treat conjugate symmetries as if they were ordinary symmetries using a stat-space transformation and a collection of XOR gates on the function inputs State space transformation (symmetry) XOR

16 Multi-Phase Single-Variable Symmetry These types of symmetry can be handled by combining the techniques for multi-phase and conjugate symmetry State space transformation (symmetry) XOR

17 State Machine The result of symmetry detection is a multi-dimensional state machine which represents the state of Boolean function. Each dimension of the state machine represents a cluster of symmetric variables Non-clustered input variable ▫ The dimension will have two states representing input values of zero and one Cluster of n variables ▫ The dimension will have n+1 states with the state representing the number of ones in the inputs

18 State Machine (cont.) Example of state machine 0,01,02,03,0 0,11,12,13,1 {B,C,D} A

19 Anti-Symmetry RelationSymmetry Type Ordinary Multi-Phase Single-Variable A Single-Variable B Multi-Phase Single-Variable A Multi-Phase Single-Variable B

20 Symmetry Correction Anti-symmetries can be transformed into ordinary symmetries using state-space transformations These transformations are easier to visualize if we place the four cofactors into a hyper-linear structure There are several different state-space transformations that will transform anti-symmetry into an ordinary symmetry

21 Simple Method

22 Simple Method (cont.) Trans. Func. … A B

23 Simple Method (cont.) A NOT gate and an AND gate required for every anti- symmetric pair (for detection) but just one XOR gate needed (for correction) The proliferation of gates may negate the benefit of detecting the anti-symmetry

24 Over-Kill Method

25 Over-Kill Method (cont.) Sophisticated Corrective Actions

26 Over-Kill Method (cont.) Simple Corrective Function Trans. Func. … A B

27 Symmetry Detection Problems There are several problems in determining the inputs of the XOR gate First, when combining anti-symmetry with conjugate symmetry, adding inputs to the correcting XOR becomes more complicated Second, we need to determine what should happen when a variable is added twice to the correcting XOR Third, we need to determine how to detect anti- symmetry with respect to clustered variables

28 Ordinary Symmetry Ordinary symmetry can be detected by examining cofactors along the anti-diagonals If there are more than two dimensions, the diagonal tests must be repeated for each of the planes containing the two variables There is no required relationship between separate diagonals or between separate planes

29 Ordinary Symmetry (conj.) Example 0,01,02,03,0 0,11,12,13,1 {B,C,D} A

30 Multi-Phase Symmetry M.P. can be detected by reversing the structure along one dimension and then testing for ordinary symmetry 0,01,02,03,0 0,11,12,13,1 {B,C,D} A

31 Conjugate Symmetry Conj. can be detected by reversing the odd numbered rows (starting with 0 at the top) or the odd numbered columns (starting with 0 at the left) and then testing for ordinary symmetry

32 Conjugate Multi-Phase Symmetry C.M.P. can be detected by reversing the even numbered rows and columns In practice this is accomplished by reversing the entire structure and then reversing the odd rows or columns

33 Anti-Symmetry When an anti-symmetry exists between any two variables in two different clustered pairs, then an anti-symmetry exists between every pair of variables in the two of clustered variables A function must alternate with its complement along each back-diagonal To convert the anti-symmetry into an ordinary symmetry, we invert the functions in the odd- numbered rows or the odd-numbered columns

34 Clustered-Variable State Machine Example LFG KLF FGH (a,b) (c,d) L’F’G KLF FG’H (a,b) (c,d) Anti-Symmetry Ordinary Symmetry

35 Clustered-Variable State Machine (cont.) Example L’F’G KLF FG’H (a,b) (c,d) L’FG K F FGH (a,b) (c,d) Anti-SymmetryState space transformation

36 A clustered Corrective Function Example Trans. Func. … A B When A equals one or B equals one Correct the output

37 XOR Gate Inputs Create a list of the input variables that must be added to the inputs of the XOR gate When new anti-symmetries are detected, new input variables are added to the list When we add an input to the list, we check to see whether it is currently on the list. If so, then we remove it instead of adding it

38 Experimental Results ISCAS 85 benchmarks-they are specified at the gate level rather than at the Boolean function level They exhibit a wide variety of symmetries of all types Each simulation was performed on a dedicated 2.06 Ghz Xeon processor with 2 GB of 233 Mhz memory The simulation rate is 500,000 input vectors/sec All of the simulations are compiled simulations Symmetry detection takes less than a second for each circuit in simulation

39 Exp1 Determine the number of anti-symmetries that appear in these circuits This experiment verifies that anti-symmetries are indeed prevalent enough to be worth pursuing

40 Exp2 Determine the number of classical symmetries in each of the four categories

41 Ex3 Symmetry masking phenomenon

42 Ex4 Simulation running time (not include symmetry detection time)

43 Conclusion Even though detecting anti-symmetries is somewhat more difficult than detecting classical symmetries, the detection can be done quickly, virtually always with beneficial results There are other types of relations that may permit detection of even more symmetries

44 Comment-Advantage Stimulate my thoughts of symmetries

45 Comment-Disadvantage The key word simulation in the title does not be well described Not well organized, it is hard to follow the architecture of this paper No preliminaries and any definitions No enough background and explanation for readers Some Several non-clear description and denotation Many stupid mistakes Non-clear picture Experimental results are not effective


Download ppt "Anti-Symmetry and Logic Simulation Reviewer Ko-Lung Yuan."

Similar presentations


Ads by Google