1 / 20

Bounded Sequential Equivalence Checking with Range-Equivalent Circuit, Node Merging, and NAR

Bounded Sequential Equivalence Checking with Range-Equivalent Circuit, Node Merging, and NAR. Speaker: Wei-An Ji Adviser: Chun-Yao Wang Date: 2014. 02. 10. Outline. Introduction Problem formulation Range-equivalent circuit Fixed point Future Work. Introduction(1/2). pMiter. s27.

Download Presentation

Bounded Sequential Equivalence Checking with Range-Equivalent Circuit, Node Merging, and NAR

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. Bounded Sequential Equivalence Checking with Range-Equivalent Circuit, Node Merging, and NAR Speaker: Wei-An Ji Adviser: Chun-Yao Wang Date: 2014. 02. 10

  2. Outline • Introduction • Problem formulation • Range-equivalent circuit • Fixed point • Future Work

  3. Introduction(1/2) pMiter s27 Resyn2(s27) • Bounded: timeframe k • Typical BSEC • Unroll • Sequential → Combinational • Miter construction • SAT solver

  4. Introduction(2/2) original method: PPI’s range is what we care! our method: We don’t-carePO’s range!

  5. Problem formulation • Given: • Two sequentialcircuits • A timeframe k • Derive: • Bounded sequential equivalence checking (BSEC) at timeframe koptimized by range-equivalent circuitreplacement, node merging, and NAR

  6. Range-equivalent circuit(1/14) • Range-equivalent circuit • Output’s range doesn’t change after optimization

  7. Range-equivalent circuit(2/14) • Replace tree structure with new PI • The root’s range is 0 or 1. a O1 b O2 d c a O1 O2 d

  8. Range-equivalent circuit(3/14) • In testing, MA is the condition that make the stuck-at-fault observable at POs. • Includes activating and propagating assignments • If there exits any conflict in MA, the fault cannot be tested. ex: a’s stuck-at-0 fault a f b d c g e MA = { a = 1 , d = 1 , e = 0, f = 0, g = 1 }

  9. Range-equivalent circuit(4/14) • RMA is the condition that make the stuck-at-fault observable at POs in range-equivalent circuit. • MA is the subset of RMA. • The extra assignments are observable assignments must make MA assignments observable. • If there exits any conflict in RMA, the range’s difference is not testable.

  10. Range-equivalent circuit(6/14) • Replace PI with constant • stuck-at-0 • stuck-at-1 • Split PI • choose a PI and split it into two • If there exist any conflict in RMA or these two PI’s assigned value are always same, the split doesn’t affect the range of output. • Merge two PIs • Inverse of Split PI

  11. Range-equivalent circuit(7/14) • Flow • In original work, PI processing sequence is in any order, but the sequence affects the result much. Split PI Replace PI with constant Merge two PIs Replace tree with PI Replace tree with PI Replace tree with PI Replace tree with PI

  12. Range-equivalent circuit(8/14) • In replacing PI with constant, if there are three PIs, a, b, and c • RMA of a’s stuck-at-at 0 = {a=1,b = 1, c=0, …, … } • RMA of b’s stuck-at-at 0 = {a=1, b=1, c=0, conflict, … , … } • RMA of c’s stuck-at-at 1 ={a=0,b = 1, c=0, …, … } • If we apply sequence 1 2 3, we can only replace b with 0. • But if we apply sequence 2 1 3, we can replace b with 0 and a with 0.

  13. Range-equivalent circuit(9/14) • In merging PIs, if there are four PIs, a, b, c, and d • RMA of a merges d = {a=1,b = 1, c=0, d = 0…, … } • RMA of b merges c= {a=1, b=0, c=0, d = 1… , … } • RMA of a merges c ={a=0,b = 1, c=1, d = 0…, … } • If we apply sequence, 1, 2, and 3, we can only merge a and b. • But if we apply sequence, 2, 1, and 3, we can merge b and c and merge a and d.

  14. Range-equivalent circuit(10/14) • In replace and merge function, we divide faults into two types. • Undetectable • Undetectabledepended on others • Process sequence • We process the type1 fault first because it doesn’t depend on other faults. • Then, processing type2 fault by rank.

  15. Range-equivalent circuit(11/14) • Type2 fault rank • Ex: now type1 fault d stuck-at-0 is optimize by replacing d with constant 0. f1. RMA of a’s stuck-at-0 = {a=1,b = 1, c=0, d=0…, … } f2. RMA of b’s stuck-at-0 = {a=1, b=1, c=0, d=1, … , … } f3. RMA of c’s stuck-at-0 ={a=0,b = 1, c=1, d=1…, … } f4. RMA of c’s stuck-at-1 ={a=0,b = 1, c=0, d=1…, … } • f1’s score is 0. • f2’s score is 3. • f3’s score is 0. • f4’s score is 2.

  16. Range-equivalent circuit(12/14) • Type2 fault rank update • If PI d’s stuck-at-0 has been optimized by replacing it with 0, any other faults’ score from making d’s stuck-at-1 will be updated. • If PIs a and b are merged, any other faults’ score from merging a or b and other PI will be updated.

  17. Range-equivalent circuit(13/14) • Flow r Replace PI with constant Merge two PIs Split PI Replace tree with PI a O1 Replace tree with PI Replace tree with PI Replace tree with PI b O2 d c a O1 Compute RMA of new PI d, and update the RMA which has node r with PI d. O2 d

  18. Range-equivalent circuit(14/14) • However, in this approach, we just consider the local greedy algorithm in function. • Optimal • Replace - O(PI#!) • Merge - O(((PI#)^2)!) • In practice, replacing PI a with constant 0 also can activate PI merging which has RMA={a=1, b=0, …, … }. • PI merging has the same effect.

  19. Range-equivalent circuit(13/13) • Global greedy algorithm flow Split PI Replace tree with PI Replace tree with PI Replace PI with constant and Merge two PIs Replace tree with PI

  20. Future work • Implementation

More Related