Equivalence Checking by Logic Relaxation - Insights and Methodologies

equivalence checking by logic relaxation n.w
1 / 20
Embed
Share

Learn about the importance of equivalence checking (EC) in formal verification and logic synthesis. Explore the concept of finding inductive proofs of equivalence in combinatorial circuits and the use of logic relaxation techniques. Discover experimental results and conclusions from studies in this field.

  • Equivalence Checking
  • Logic Relaxation
  • Formal Verification
  • Combinatorial Circuits
  • Experimental Results

Uploaded on | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author. If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. Equivalence Checking By Logic Relaxation EugeneGoldberg FMCAD, Mountain View, CA, USA October 3-6, 2016

  2. Outline Introduction Equivalence checking by logic relaxation Experimental results and conclusions

  3. Motivation Equivalence Checking (EC) is an important part of formal verification Any progress in EC empowers logic synthesis Short EC proofs for structurally similar circuits Ideas of EC of combinational circuits can be re- used in EC of sequential circuits and software

  4. Solving EC z' z" Prove EQ Grlx (z' z"), N" N' where Grlx = FN' FN" This reduces to proving EQ Grlx ~(z' z") UNSAT X' X" EQ(X',X" ) EQ(x',x" ) = 1, iff x' = x"

  5. Cut Image Let Imgcutspecify the cut image N' N" q' q" Imgcut(q',q")=0, iff there is no input (x',x"), x' = x" for which N',N" produce (q',q") Cut Let Cut = {z',z"}. N' and N" are equivalent iff Imgcut (z' z"), x' x" EQ(X',X" )

  6. Problem To Solve: Finding an Inductive Proof Of Equivalence z' z" Given combin. circuits N' and N", find formulas Hi such that Cutk Imgi Hi , 0 i <k Hi are as simple as possible Hi can be derived from Hi-1 Hk Imgk(z',z") Cuti Cut0 X' X" A simple inductive proof should exist if N' and N" are struct. similar

  7. Some Background Building inductive proofs of equivalence Berman, Trevillyan 1988 Brand 1993 Kuehlmann, Krohm 1996 Goldberg, Prasad, Brayton 2001 Mishchenko,Chatterjee,Brayton,Een 2006 Proofs are based on derivation of pre-defined relations e.g. equivalences

  8. Outline Introduction Equivalence checking by logic relaxation Experimental results and conclusions

  9. Structure Of Cut Image Assignments excluded from cut image: Sexcl=SrlxU Simp z" z' Srlx = {(q',q") | only relaxed inputs (x',x") where x' x" can produce (q',q") } q' q" Cut Simp= {(q',q") | no input (x',x") can produce (q',q") } X' EQ(X',X" ) (q',q") Simp iff q' cannot be produced in N' and/or q" cannot be produced in N" X"

  10. Definition Of Boundary Formulas EC by Logic Relaxation: replace Imgcut with boundary formula Hcut Boundary formula Hcut : 1. If (q',q") Srlx, then Hcut(q',q") = 0 2. If (q',q") Simp , then Hcut(q',q") can take an arbitrary value 3. Imgcut Hcut

  11. Boundary Formula for Cut = {z',z" } z' z" Assume that N' and N" are not constants Simp= Cut N' N" Sexcl=Srlx Hcut Imgcut X' EQ(X',X" ) X" Testing if N' is a constant: two easy SAT checks

  12. Boundary Formula And Partial Quantifier Elimination Complete Quantif. Elimin. Imgcut W [ EQ FM] W = Vars(FM) \ Vars(Cut) N" N' Cut Partial Quantif. Elimin. M Hcut W [ FM] W [ EQ FM] x' x" EQ Grlx ~(z' z") is equisat. with Hcut Grlx ~(z' z") where Grlx = FN' FN" EQ(X',X" )

  13. Contrasting Cut Image And Boundary Formulas N' N" N' N" Imgcut Hcut Cut Cut M M EQ(X',X" ) EQ(X',X" )

  14. Boundary Formulas Of Structurally Similar Circuits Suppose, v Cut' v= gv(Lv) where Lv Cut" N" N' Cut Cut" Cut' Let Maxcut be the largest value of Lv , v Cut' Then Hcut can be built from (Maxcut + 1)-literal clauses x' x" EQ(X',X" )

  15. EC By Logic Relaxation Cut0 = X' X",...,Cutk={z',z } z' z" Compute H0,..,Hk Cutk where H0= EQ(X',X" ) Hi Wi[ FMi ] Wi[Hi-1 FMi] Cuti Mi Wi = Vars(FMi ) \ Vars(Cuti) If Hk (z' z"), N' and N"are equivalent Cut0 X' X" If, say, Hk(z' =0,z"=1)=1 and N', N" can produce 0 and 1, they are inequivalent

  16. Outline Introduction Equivalence checking by logic relaxation Experimental results and conclusions

  17. Non-Trivial Example Of EC Mlps computes a median bit of an s-bit multiplier Operands A and B where A={a1,..,as}, B={b1,...,bs} h is an additional input variable If h=1, then N' and N" compute Mlps if h=0, then N' and N" evaluate to 0

  18. Comparison With ABC Partial Quantifier Elimination (a variation of HVC-14 algorithm) is based on machinery of D-sequents (FMCAD-12 , FMCAD-13) ABC is a high-quality tool developed at UC, Berkeley val. of s in Mlps 10 11 ABC (s.) 10 38 #cuts EC by Formulas Hi were comp- uted approximately LoR (s.) 4.5 7.1 37 41 Hi Wi[ FMi ] Wi[Hi-1 FMi] 12 13 14 15 16 45 49 53 57 61 142 757 3,667 11,237 > 6 h 11 16 25 40 70 FMi specifies logic below i-th cut Only a subset of clauses of FMi was used

  19. Proving Inequivalence Formula EQ(X',X") FN' FN" ~(z' z") Formula H3 FN' FN" ~(z' z") Formula H3 was computed precisely Sat-solver : Minisat 2.0, Time limit: 600 s Form. type #solved total time (s) > 3,490 1,030 median time (s) 4.2 1.0 95 100

  20. Conclusions Relative_complexity(N',N") << Absolute_complexity(N',N") EC by logic relaxation gives a general solution It can be extended to sequential circuits/programs Efficient partial quantifier elimination is of great value

Related


More Related Content