ABSTRACT
Verification of gate-level implementations of arithmetic circuits is challenging due to a number of reasons: the existence of some hard-to-verify arithmetic operators (e.g. multiplication), the use of different operand ordering, the incorporation of merged arithmetic with cross-operator implementations, and the employment of circuit transformations based on arithmetic relations. It is hence a peculiar problem that does not fit quite well into the existing RTL-to-gate equivalence checking methodology. In this paper, we propose a self-referential functional verification approach which uses the gate-level implementation of the arithmetic circuit under verification to verify itself. Specifically, the verification task is decomposed into a sequence of equivalence checking subproblems, each of which compare circuit pairs derived from the implementation under verification based on the proposed self-referential functional equations. A decomposition-based heuristic using structural information is employed to guide the verification process for better efficiency. Experimental results on a number of implementations of the multiply-add units and the inner product units with different architectures demonstrate the versatility of this approach.
- Special issue on verification of arithmetic hardware. Formal Methods in System Design, 14(1), 1999. Google ScholarDigital Library
- D. Brand. Verification of large synthesized designs. In Proceedings of the International Conference on Computer-Aided Design (ICCAD), pages 534--537, November 1993. Google ScholarDigital Library
- R. K. Brayton. The future of logic synthesis and verification. In Logic Synthesis and Verification, pages 403--434. Kluwer Academic Publishers, 2002. Google ScholarDigital Library
- R. E. Bryant. Graph-based algorithm for boolean function manipulation. IEEE Trans. on Computers, C-35(8):677--691, 1986. Google ScholarDigital Library
- R. E. Bryant. On the complexity of VLSI implementations and graph representations of boolean functions with application to integer multiplication. IEEE Trans. on Computers, 40(2):205--213, 1991. Google ScholarDigital Library
- R. E. Bryant and Y. A. Chen. Verification of arithmetic circuits with binary moment diagrams.In Proceedings of the 32nd ACM/IEEE Design Automation Conference (DAC), pages 535--541, 1995. Google ScholarDigital Library
- Y.-T. Chang and K.-T. Cheng. Induction-based gate-level verification of multipliers. In Proceedings of International Conference on Computer-Aided Design (ICCAD), pages 190--193, November 2001. Google ScholarDigital Library
- M. Fujita. Verification of arithmetic circuits by comparing two similar circuits. In Proceedings of the 8th International Conference on Computer Aided Verification (CAV), pages 159--168, 1996. Google ScholarDigital Library
- K. Hamaguchi, A. Morita, and S. Yajma. Efficient construction of binary moment diagrams for verifying arithmetic circuits. In Proceedings of International Conference on Computer-Aided Design (ICCAD), pages 78--82, November 1995. Google ScholarDigital Library
- T. Kim, W. Jao, and S. Tjiang. Arithmetic optimization using carry-save adders. In Proceedings of the 35th ACM/IEEE Design Automation Conference (DAC), pages 433--438, 1998. Google ScholarDigital Library
- S. Kimura. Residue BDD and its application to the verification of arithmetic circuits. In Proceedings of the 32nd ACM/IEEE Design Automation Conference (DAC), pages 542--545, 1995. Google ScholarDigital Library
- A. Migdall. Correlated-photon metrology without absolute standards. Physics Today, 52(1):41--46, 1999.Google ScholarCross Ref
- B. Parhami. Computer Arithmetic: Algorithms and Hardware Designs. Oxford University Press, 1999. Google ScholarDigital Library
- M. Potkonjak and J. Rabaey. Optimizing resource utilization using transformations. IEEE Trans. on CAD, 13(3):277--292, 1994.Google ScholarDigital Library
- F. Somenzi. CUDD: CU decision diagram package Release 2.3.1. University of Colorado at Boulder, 2001.Google Scholar
- T. Stanion. Implicit verification of structurally dissimilar arithmetic circuits. In Proceedings of IEEE International Conference on Computer Design (ICCD), pages 46--50, 1999. Google ScholarDigital Library
- E. E. J. Swartzlander. Merged arithmetic. IEEE Transactions on Computers, 29(10):946--950, 1980.Google ScholarDigital Library
- J. Um, T. Kim, and C.-L. Liu. Optimal allocation of carry-save-adders in arithmetic optimization. In Proceedings of International Conference on Computer Aided Design (ICCAD), pages 410--413, November 1999. Google ScholarDigital Library
- Z. Zhou and W. Burleson. Equivalence checking of datapaths based on canonical arithmetic expressions. In Proceedings of the 32nd ACM/IEEE Design Automation Conference (DAC), pages 546--551, 1998. Google ScholarDigital Library
Index Terms
- Self-referential verification of gate-level implementations of arithmetic circuits
Recommendations
Self-referential verification for gate-level implementations of arithmetic circuits
Verification of gate-level implementations of arithmetic circuits is challenging for a number of reasons: the existence of some hard-to-verify arithmetic operators, the use of different operand ordering, the incorporation of merged arithmetic with cross-...
Verification of gate-level arithmetic circuits by function extraction
DAC '15: Proceedings of the 52nd Annual Design Automation ConferenceThe paper presents an algebraic approach to functional verification of gate-level, integer arithmetic circuits. It is based on extracting a unique bit-level polynomial function computed by the circuit directly from its gate-level implementation. The ...
Incremental column-wise verification of arithmetic circuits using computer algebra
AbstractVerifying arithmetic circuits and most prominently multiplier circuits is an important problem which in practice still requires substantial manual effort. The currently most effective approach uses polynomial reasoning over pseudo boolean ...
Comments