Automatic constraint based test generation for behavioral HDL models

  • Authors:
  • Siva Kumar Sastry Hari;Vishnu Vardhan Reddy Konda;V. Kamakoti;Vivekananda M. Vedula;Kailasnath S. Maneperambil

  • Affiliations:
  • Intelligent Systems Engineering Group, Department of Computer Science and Engineering, Indian Institute of Technology, Madras, India;Intelligent Systems Engineering Group, Department of Computer Science and Engineering, Indian Institute of Technology, Madras, India;Intelligent Systems Engineering Group, Department of Computer Science and Engineering, Indian Institute of Technology, Madras, India;Validation and Test Solutions, Intel Corporation, Austin, TX;Validation and Test Solutions, Intel Corporation, Austin, TX

  • Venue:
  • IEEE Transactions on Very Large Scale Integration (VLSI) Systems
  • Year:
  • 2008

Quantified Score

Hi-index 0.00

Visualization

Abstract

With the emergence of complex high-performance microprocessors, functional test generation has become a crucial design step. Constraint-based test generation is a well-studied directed behavioral level functional test generation paradigm. The paradigm involves conversion of a given circuit model into a set of constraints and employing constraint solvers to generate tests for it. However, automatic extraction of constraints from a given behavioral hardware design language (HDL) model remained a challenging open problem. This paper proposes an approach for automatic extraction of word-level model constraints from the behavioral verilog HDL description. The scenarios to be tested are also expressed as constraints. The model and the scenario constraints are solved together using an integer solver to arrive at the necessary functional test. The effectiveness of the approach is demonstrated by automatically generating the constraint models for: 1) an exclusive-shared-invalid multiprocessor cache coherency model and 2) the 16-bit DLX-architecture, from their respective Verilog-based behavioral models. Experimental results that generate test vectors for high level scenarios like pipeline hazards, cache miss, etc., spanning over multiple time-frames are presented.