Automatic Merge-Point Detection for Sequential Equivalence Checking of System-Level and RTL Descriptions

In this paper, we propose a novel approach to verify equivalence of C-based system level description versus Register Transfer Level (RTL) model by looking for merge points as early as possible to reduce the size of equivalence checking problems. We tackle exponential path enumeration problem by identifying merge points as well as equivalent nodes automatically. It will describe a hybrid bit- and word-level representation called Linear Taylor Expansion Diagram (LTED) [1] which can be used to check the equivalence of two descriptions in different levels of abstractions. This representation not only has a compact and canonical form, but also is close to high-level descriptions so that it can be utilized as a formal model for many EDA applications such as synthesis. It will then show how this leads to more effective use of LTED to verify equivalence of two descriptions in different levels of abstractions. We use LTED package to successfully verify some industrial circuits. In order to show that our approach is applicable to industrial designs, we apply it to 64- point Fast Fourier Transform and Viterbi algorithms that are the most computationally intensive parts of a communication system.

[1]  Alan J. Hu,et al.  Early outpoint insertion for high-level software vs. RTL formal combinational equivalence verification , 2006, 2006 43rd ACM/IEEE Design Automation Conference.

[2]  Zainalabedin Navabi,et al.  Word-level symbolic simulation in processor verification , 2004 .

[3]  Kurt Keutzer,et al.  Functional vector generation for HDL models using linear programming and 3-satisfiability , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[4]  Jacob A. Abraham,et al.  Automatic decomposition for sequential equivalence checking of system level and RTL descriptions , 2006, Fourth ACM and IEEE International Conference on Formal Methods and Models for Co-Design, 2006. MEMOCODE '06. Proceedings..

[5]  Yuan Lu,et al.  Embedded tutorial: formal equivalence checking between system-level models and RTL , 2005, ICCAD-2005. IEEE/ACM International Conference on Computer-Aided Design, 2005..

[6]  Masahiro Fujita,et al.  LTED : A Canonical and Compact Hybrid Word-Boolean Representation as a Formal Model for Hardware / Software Co-designs , 2007 .

[7]  R. Drechsler,et al.  Formal verification of word-level specifications , 1999, Design, Automation and Test in Europe Conference and Exhibition, 1999. Proceedings (Cat. No. PR00078).

[8]  Masahiro Fujita,et al.  A Hybrid Approach for Equivalence Checking Between System Level and RTL Descriptions , 2007 .

[9]  Daniel Kroening,et al.  Behavioral consistency of C and Verilog programs using bounded model checking , 2003, Proceedings 2003. Design Automation Conference (IEEE Cat. No.03CH37451).

[10]  Masahiro Fujita,et al.  Equivalence checking of C programs by locally performing symbolic simulation on dependence graphs , 2006, 7th International Symposium on Quality Electronic Design (ISQED'06).

[11]  Petri Mähönen,et al.  On the single-chip implementation of a Hiperlan/2 and IEEE 802.11a capable modem , 2001, IEEE Wirel. Commun..

[12]  Chittaranjan A. Mandal,et al.  A formal verification method of scheduling in high-level synthesis , 2006, 7th International Symposium on Quality Electronic Design (ISQED'06).