Automatic verification of finite-state concurrent systems using temporal logic specifications
ACM Transactions on Programming Languages and Systems (TOPLAS)
REAL: a program for REgister ALlocation
DAC '87 Proceedings of the 24th ACM/IEEE Design Automation Conference
A global, dynamic register allocation and binding for a data path synthesis system
DAC '90 Proceedings of the 27th ACM/IEEE Design Automation Conference
High-level synthesis: introduction to chip and system design
High-level synthesis: introduction to chip and system design
Distributed design-space exploration for high-level synthesis systems
DAC '92 Proceedings of the 29th ACM/IEEE Design Automation Conference
Experiences in functional validation of a high level synthesis system
DAC '93 Proceedings of the 30th international Design Automation Conference
FM8501: a verified microprocessor
FM8501: a verified microprocessor
Binary decision diagrams and beyond: enabling technologies for formal verification
ICCAD '95 Proceedings of the 1995 IEEE/ACM international conference on Computer-aided design
Behavioral synthesis: digital system design using the synopsys behavioral compiler
Behavioral synthesis: digital system design using the synopsys behavioral compiler
HAL: a multi-paradigm approach to automatic data path synthesis
DAC '86 Proceedings of the 23rd ACM/IEEE Design Automation Conference
Symbolic Model Checking
Synthesis of Digital Design from Recursive Equations
Synthesis of Digital Design from Recursive Equations
Synthesis and Optimization of Digital Circuits
Synthesis and Optimization of Digital Circuits
High-Level VLSI Synthesis
Algorithmic and Register-Transfer Level Synthesis: The System Architect's Workbench
Algorithmic and Register-Transfer Level Synthesis: The System Architect's Workbench
DSS: A Distributed High-Level Synthesis System
IEEE Design & Test
Observable Time Windows: Verifying High-Level Synthesis Results
IEEE Design & Test
A Formally Verified System for Logic Synthesis
ICCD '91 Proceedings of the 1991 IEEE International Conference on Computer Design on VLSI in Computer & Processors
A Formal Framework for High Level Synthesis
TPCD '94 Proceedings of the Second International Conference on Theorem Provers in Circuit Design - Theory, Practice and Experience
Specification of Control Flow Properties for Verification of Synthesized VHDL Designs
FMCAD '96 Proceedings of the First International Conference on Formal Methods in Computer-Aided Design
FMCAD '98 Proceedings of the Second International Conference on Formal Methods in Computer-Aided Design
Symbolic Simulation: An ACL2 Approach
FMCAD '98 Proceedings of the Second International Conference on Formal Methods in Computer-Aided Design
Symbolic Simulation of the JEM1 Microprocessor
FMCAD '98 Proceedings of the Second International Conference on Formal Methods in Computer-Aided Design
Toward a Super Duper Hardware Tactic
HUG '93 Proceedings of the 6th International Workshop on Higher Order Logic Theorem Proving and its Applications
HUG '93 Proceedings of the 6th International Workshop on Higher Order Logic Theorem Proving and its Applications
Proceedings of the 11th International Conference on Theorem Proving in Higher Order Logics
Formally embedding existing high level synthesis algorithms
CHARME '95 Proceedings of the IFIP WG 10.5 Advanced Research Working Conference on Correct Hardware Design and Verification Methods
Automatic verification of Pipelined Microprocessor Control
CAV '94 Proceedings of the 6th International Conference on Computer Aided Verification
Automated High-level Verification Against Clocked Algorithmic Specifications
CHDL '93 Proceedings of the 11th IFIP WG10.2 International Conference sponsored by IFIP WG10.2 and in cooperation with IEEE COMPSOC on Computer Hardware Description Languages and their Applications
Cone Based Clustering for List Scheduling Algorithms
EDTC '97 Proceedings of the 1997 European conference on Design and Test
Facet: A procedure for the automated synthesis of digital systems
DAC '83 Proceedings of the 20th Design Automation Conference
A Hierarchical Register Optimization Algorithm for Behavioral Synthesis
VLSID '96 Proceedings of the 9th International Conference on VLSI Design: VLSI in Mobile Communication
Synchronous Controller Models for Synthesis from Communicating VHDL Processes
VLSID '96 Proceedings of the 9th International Conference on VLSI Design: VLSI in Mobile Communication
WIFT '95 Proceedings of the 1st Workshop on Industrial-Strength Formal Specification Techniques
Dynamic bounding of successor force computations in the force directed list scheduling algorithm
ICCD '97 Proceedings of the 1997 International Conference on Computer Design (ICCD '97)
ICCD '98 Proceedings of the International Conference on Computer Design
Symbolic Boolean Manipulation with Ordered Binary Decision Diagrams
Symbolic Boolean Manipulation with Ordered Binary Decision Diagrams
EURO-DAC '90 Proceedings of the conference on European design automation
Verification of synthesized circuits at register transfer level with flow graphs
EURO-DAC '91 Proceedings of the conference on European design automation
Verification method of dataflow algorithms in high-level synthesis
Journal of Systems and Software
Automated formal verification of scheduling with speculative code motions
Proceedings of the 18th ACM Great Lakes symposium on VLSI
Hi-index | 0.00 |
High-level synthesis tools generate register-transfer leveldesigns from algorithmic behavioral specifications. The high-levelsynthesis process typically consists of dependency graph scheduling,functional unit allocation, register allocation, interconnect allocationand controller generation tasks. Widely used algorithms for these tasksretain the overall control flow structure of the behavioralspecification allowing code motion only within basic blocks. Further,high-level synthesis algorithms are oblivious to the mathematicalproperties of arithmetic and logic operators. Selecting and sharingof RTL library modules are solely based on matching uninterpretedfunction symbolsand constants. Many researchers have noted that these features ofhigh-level synthesis algorithms canbe exploited to develop efficient verification strategies forsynthesized designs. This paper reports a verification techniquethat effectively exploits these features toachieve efficient and fully automated verification ofsynthesized designs and its incorporation in a high-level synthesis tool.In our technique, a correctness condition generator is tightlyintegrated with a high-level synthesis tool to automaticallygenerate (1) formal specifications of the behavior and the RTLdesign including the data path and the controller, (2) the correctnesslemmas establishing equivalence between the synthesizedRTL design and its behavioral specification, and (3) their proofscripts that can be submitted to a higher-order logic proof checkerwithout further human interaction. This approach is based on theidentification, by the synthesis tool during the synthesis process, ofthe binding between critical specification variables and criticalregisters in the RTL design, and between the critical states in thebehavior and the corresponding states in the RTL design.We have implemented our verification technique inconjunction with a relatively mature high-level synthesis tool. Wereport experimental results indicating the effectiveness of the proposedtechnique and summarize our ongoing work to further strengthen it.