ABSTRACT
In recent years, formal methods based on Symbolic Computer Algebra (SCA) have shown very good results in verification of integer multipliers. The success is based on removing redundant terms (vanishing monomials) early which allows to avoid the explosion in the number of monomials during backward rewriting. However, the SCA approaches still suffer from two major problems: (1) high dependence on the detection of Half Adders (HAs) realized as AND-XOR gates in the multiplier netlist, and (2) extremely large search space for finding the source of the vanishing monomials. As a consequence, if the multiplier consists of dirty logic, i.e. for instance using non-standard libraries or logic optimization, the existing SCA methods are completely blind on the resulting polynomials, and their techniques for effective division fail.
In this paper, we present RevSCA. RevSCA brings back light into backward rewriting by identifying the atomic blocks of the arithmetic circuits using dedicated reverse engineering techniques. Our approach takes advantage of these atomic blocks to detect all sources of vanishing monomials independent of the design architecture. Furthermore, it cuts the local vanishing removal time drastically due to limiting the search space to a small part of the design only. Experimental results confirm the efficiency of our approach in verification of a wide variety of integer multipliers with up to 1024 output bits.
- Abc: A system for sequential synthesis and verification. available at https://people.eecs.berkeley.edu/~alanmi/abc/, 2018.Google Scholar
- Arithmetic module generator based on acg. available at https://www.ecsis.riec.tohoku.ac.jp/topics/amg/i-amg, 2019.Google Scholar
- M. Bahadori, M. Kamal, A. Afzali-Kusha, and M. Pedram. High-speed and energy-efficient carry skip adder operating under a wide range of supply voltage levels. TVLSI, 24(2):421--433, Feb. 2016.Google Scholar
- D. A. Cox, J. Little, and D. O'Shea. Ideals Varieties and Algorithms. Springer, 1997. Google ScholarDigital Library
- F. Farahmandi and B. Alizadeh. Gröbner basis based formal verification of large arithmetic circuits using gaussian elimination and cone-based polynomial extraction. MICPRO, 39(2):83--96, 2015. Google ScholarDigital Library
- I. Koren. Computer Arithmetic Algorithms. A. K. Peters, Ltd., 2nd edition, 2001. Google ScholarDigital Library
- A. Mahzoon, D. Große, and R. Drechsler. Combining symbolic computer algebra and boolean satisfiability for automatic debugging and fixing of complex multipliers. In ISVLSI, pages 351--356, 2018.Google ScholarCross Ref
- A. Mahzoon, D. Große, and R. Drechsler. PolyCleaner: clean your polynomials before backward rewriting to verify million-gate multipliers. In ICCAD, pages 129:1--129:8, 2018. Google ScholarDigital Library
- A. Mishchenko, S. Chatterjee, and R. K. Brayton. Dag-aware aig rewriting a fresh look at combinational logic synthesis. In DAC, pages 532--535, 2006. Google ScholarDigital Library
- P. Pan and C.-C. Lin. A new retiming-based technology mapping algorithm for lut-based fpgas. In FPGAs for Custom Computing Machines, pages 35--42, 1998. Google ScholarDigital Library
- D. Ritirc, A. Biere, and M. Kauers. Column-wise verification of multipliers using computer algebra. In FMCAD, pages 23--30, 2017. Google ScholarDigital Library
- D. Ritirc, A. Biere, and M. Kauers. Improving and extending the algebraic approach for verifying gate-level multipliers. In DATE, pages 1556--1561, 2018.Google Scholar
- A. Sayed-Ahmed, D. Große, U. Kühne, M. Soeken, and R. Drechsler. Formal verification of integer multipliers by combining Gröbner basis with logic reduction. In DATE, pages 1048--1053, 2016. Google ScholarDigital Library
- A. Sayed-Ahmed, D. Große, M. Soeken, and R. Drechsler. Equivalence checking using Gröbner bases. In FMCAD, pages 169--176, 2016. Google ScholarDigital Library
- M. Soeken, H. Riener, W. Haaswijk, and G. D. Micheli. The EPFL logic synthesis libraries, May 2018. arXiv:1805.05121.Google Scholar
- D. Stoffel and W. Kunz. Equivalence checking of arithmetic circuits on the arithmetic bit level. TCAD, 23(5):586--597, 2004. Google ScholarDigital Library
- S. Vasudevan, V. Viswanath, R. W. Sumners, and J. A. Abraham. Automatic verification of arithmetic circuits in RTL using stepwise refinement of term rewriting systems. TC, 56(10):1401--1414, 2007. Google ScholarDigital Library
- C. Yu, W. Brown, D. Liu, A. Rossi, and M. Ciesielski. Formal verification of arithmetic circuits by function extraction. TCAD, 35(12):2131--2142, 2016. Google ScholarDigital Library
- C. Yu, M. Ciesielski, and A. Mishchenko. Fast algebraic rewriting based on and- inverter graphs. TCAD, 37(9):1907--1911, 2017. Google ScholarDigital Library
- R. Zimmermann. Binary Adder Architectures for Cell-Based VLSI and their Synthesis. PhD thesis, Swiss Federal Institute of Technology, 1997.Google Scholar
- RevSCA: Using Reverse Engineering to Bring Light into Backward Rewriting for Big and Dirty Multipliers
Recommendations
Optimized reversible binary-coded decimal adders
Babu and Chowdhury [H.M.H. Babu, A.R. Chowdhury, Design of a compact reversible binary coded decimal adder circuit, Journal of Systems Architecture 52 (5) (2006) 272-282] recently proposed, in this journal, a reversible adder for binary-coded decimals. ...
Hardware Designs for Decimal Floating-Point Addition and Related Operations
Decimal arithmetic is often used in commercial, financial, and Internet-based applications. Due to the growing importance of decimal floating-point (DFP) arithmetic, the IEEE 754 Draft Standard for Floating-Point Arithmetic (IEEE P754) includes ...
Logic Networks of Carry-Save Adders
logic networks of carry-save adders such as high-speed multipliers, multioperand adders, and double-rail input parallel adders are designed based on the parallel adders with a minimum number of NOR gates discussed in [1]. After a discussion of the ...
Comments