290 likes | 402 Views
High Level Symmetric Inputs Identification. Student : Ming-Hong Su Advisor : Chun-Yao Wang. Outline. Introduction Previous Work BDD Based Simulation Based The E-Symmetry Detection Algorithm Experimental Result. What is Symmetry Detection ?.
E N D
High Level Symmetric Inputs Identification Student : Ming-Hong Su Advisor : Chun-Yao Wang
Outline • Introduction • Previous Work • BDD Based • Simulation Based • The E-Symmetry Detection Algorithm • Experimental Result
What is Symmetry Detection ? (1) (2) = = (3) (4) = =
Applications • Design verification and diagnosis • Save effort of trying different combinations • Example: for an 10-input circuit, there are 2^10=1024 different inputs combinations. If we can sure that input1 and input2 are symmetry, then combinations were reduced to 2^9=512 • Technology mapping • Accelerate the process of mapping
Outline • Introduction • Previous Work • BDD Based • Simulation Based • The E-Symmetry Detection Algorithm • Experimental Result
a a 0 1 0 1 b’ b 1 0 1 0 NE-symmetry E-symmetry BDD Based Approach
Simulation Based Approach • BDD construction is not necessary • Applicable in behavior level or RT-level Start Iteration=0 All asymmetric or Iteration>bound Yes No Pattern Generation Iteration++ Stop Pattern Simulation Symmetry Identification
Outline • Introduction • Previous Work • BDD Based • Simulation Based • The E-Symmetry Detection Algorithm • Experimental Result
Overview • Exploiting simulation based approach to identify E-symmetry • Based on “negative thinking” to detect as many E-asymmetric variables as possible • To determine xi is asymmetric to xj is easier
E-asymmetry • Pair of patterns whose inputs are identical except on xi and xj, and xi = xj in each patterns. If the outputs of those patternsare different, xi and xj are E-asymmetric inputs • Example: If two patterns 00000 and 11000 have different outputs, then input1and input2are E-asymmetric inputs
Symmetric-Asymmetric Inputs (SASIs) • SASIs: represent the maximal symmetric inputs sets • if any two inputs are not in the same group, then they are E-asymmetric inputs • if any two inputs are in the same group, then they are “possibly” equivalence symmetric inputs • Example: for an 6-inputs circuit, the SASIs(125)(4)(36) indicates that inputs 1,2,5 are possibly equivalence symmetric inputs and input4 is E-asymmetric input to the other inputs
VPs and SASIs • Grouping all VPs to form SASIs • Example: 10-input circular with VPs{(1,2),(2,3),(3,4),(5,6),(6,7),(8,9)} VPs{(1,2),(2,3),(3,4),(5,6),(6,7),(8,9)} (5,6,7) (1,2,3,4) SASIs=(1,2,3,4)(5,6,7)(8,9) (10)
MEG and SEG • MEG ( Multiple Elements Group): group contain two or above elements • SEG (Signal Element Group): group only contain one element SASIs=(1,2,3,4)(5,6,7)(8,9)(10) SEG MEG
Distance (1/2) • Distance: the difference of relative position between two elements in MEG MEG(1,3,5,7,9,11,13) MEG(1,2,3,4,5,6,7) Position 6 Position 2 Position 7 Position 1 distance 4 distance 6 Distance of VP(1,7) is 6 Distance of VP(3,11) is 4
Distance (2/2) • For MEG with m inputs, the maximal distance is (m-1), and the number of VPs with distance i is (m - i) MEG(1,2,3,4,5) 5 VPs with distance 1 1 4 VPs with distance 2 6 2 3 VPs with distance 3 Total VPs=10 2 VPs with distance 4 3 5 1 VPs with distance 5 4
Self-Patterns SASIs=(12345)(67)(8) {(1),(2),(3),(4),(5)} MEG(12345) VP{(1,2),(1,3),(1,4),(1,5)(2,3),(2,4),(3,4),(4,5)} {(1,2,3),(1,2,4),(1,2,5)….,(3,4,5)} MEG(67) No self-patterns
Example (1/4) 6 of distance (2,3) (3,4) (4,5) (5,6) (6,7) (1,2) 1 of distance 6 (7,1) 5 of distance 2 (1,3) (2,4) (3,5) (4,6) (5,7) 2 of distance 5 (6,1) (7,2) 1 2 3 4 5 6 7 1 2 3 4 5 6 7 2 3 4 5 6 7 1 3 4 5 6 7 1 2
Example (2/4) 3 of distance 4 (1,5) (2,6) (3,7) 4 of distance 3 (1,4) (5,2) (6,3) (7,4) 1 2 3 4 5 6 7 1 2 3 4 5 6 7 4 5 6 7 1 2 3 5 6 7 1 2 3 4
Example (3/4) 6 of distance 1 (3,4) (4,5) (5,6) (6,7) (1,2) (2,3) 1 of distance 6 (7,1) 4 of distance 3 (1,4) (2,5) (3,6) (4,7) 3 of distance 4 (5,1) (6,2) (7,3) 4 5 6 7 1 2 3 12 23 34 45 56 67 71 1 2 3 4 5 6 7 2 3 4 5 6 7 1 3 4 5 6 7 1 2
Example (4/4) 5 of distance 2 (1,3) (2,4) (3,5) (4,6) (5,7) 2 of distance 5 (6,1) (7,2) 5 6 7 1 2 3 4 12 23 34 45 56 67 71 1 2 3 4 5 6 7 3 4 5 6 7 1 2 4 5 6 7 1 2 3
Observation 6 of distance 1 1 of distance 6 5 of distance 2 2 of distance 5 1 2 3 4 5 6 7 1 2 3 4 5 6 7 2 3 4 5 6 7 1 3 4 5 6 7 1 2
Outline • Introduction • Previous Work • BDD Based • Simulation Based • The E-Symmetry Detection Algorithm • Experimental Result
Experimental Result • Coming Soon…..