52nd Design Automation Conference Maciej Ciesielski, Cunxi Yu, Walter Brown, Duo Liu University of Massachusetts, Amherst, USA Andre Rossi Université de Bretagne-Sud - Lab STICC, France Verification of Gate - level Arithmetic Circuits by Function Extraction
12
Embed
Verification of Gate-level Arithmetic Circuits by Function ...
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
52nd Design Automation Conference
Maciej Ciesielski, Cunxi Yu, Walter Brown, Duo LiuUniversity of Massachusetts, Amherst, USA
Andre RossiUniversité de Bretagne-Sud - Lab STICC, France
Verification of Gate-level Arithmetic Circuits by Function Extraction
Introduction
q Hardware verificationn Checking if the design meets specification
• Equivalence checking• Property, model checking• Functional verification ß
n Circuit represented in arithmetic bit level (ABL)• Specification Fspec and implementation B defined as polynomials in Z2
n
• Reduce Fspec modulo B by polynomial divisions
n If r = 0, the circuit is correctn Otherwise, canonical Groebner basis is
needed to determine if r = 0• Must model all signals as Boolean
– include polynomials <x2-x> for all signals x• Complex math, unnecessary
n Provided main motivation for our work
52ndDAC: Verification of Gate-level Arithmetic Circuits by Function Extraction 3
Fspec r
NOR
XOR
AND
HA
(gates, Add, Mult, etc.)
B
ImplementationSpecification Fspec
Previous Work
q Linear Algebra Model [Basith FMCAD’11, Ciesielski HVC’13]
n Use linear algebraic model of the circuit
n Circuit represented as network of adders (HA, FA)• described using only linear equations
n Logic gates derived from HAs (linear)
52ndDAC: Verification of Gate-level Arithmetic Circuits by Function Extraction 4
HA
C S
a b
a+ b = 2C + S
FA
C S
a b cin
a+ b+ cin = 2C + S
Linear Algebra Approachq Input and Output Signatures
q Major limitationsn Limited to linear network of HAs with few connecting gatesn Translating gate-level to HA network (ABL) is difficultn Difficult to extend to non-linear circuits
52ndDAC: Verification of Gate-level Arithmetic Circuits by Function Extraction 5
HA
C S
FA
C S
a0a1 b1 b0
z0z1z2
Transform Sigin into Sigout
to prove thatSigIn = Sigout
Sigout = z0 + 2z1 + 4z2
Sigin = a0 + 2a1 + b0 + 2b1
This Work - Nonlinear Model
q Algebraic Model
q Main idea : Fspec = (Sigout-Sigin) ® 0 mod Bn replace by Sigin® Sigout (forward rewriting)n or by Sigout® Sigin (backward rewriting)
52ndDAC: Verification of Gate-level Arithmetic Circuits by Function Extraction 9
Comparison with Other Methodsn SAT
n used ABC “miter”n SMT
n Algebraic model, similar to oursn Boolean model, similar to SAT
n Formality (Synopsys)
TIME OUT = AFTER 3600 SEC
52ndDAC: Verification of Gate-level Arithmetic Circuits by Function Extraction 10
XOR=?0
Multiplier
Ref. Mult
CSA-MultiplierOur [sec]
SAT SMT CommercialOp size # gates Lingling Boolector Formality
4 86 0.01 0.01 0.01 0.81
12 481 0.04 TIME OUT 2030.91 108.1
64 41.4 K 5.50 - TIME OUT 675.4
128 164 K 39.64 - - TIME OUT
Conclusions
q Functional verification by extracting arithmetic functionq Method: backward rewriting
n Extracts the function of arithmetic circuitsn Correctly model Boolean signalsn More effective than forward, but complex
q Limitationsn Less efficient for highly bit-optimized arithmetic circuitsn Potential memory explosion n Bit composition of the output needs to be known
q Future workn Diagnostics and logic debugging (using back/forward rewriting)n Application to floating-point and cryptographic arithmetic circuits
52ndDAC: Verification of Gate-level Arithmetic Circuits by Function Extraction 11
Thank you !
52ndDAC: Verification of Gate-level Arithmetic Circuits by Function Extraction 12