• DocumentCode
    1126394
  • Title

    Specification, Synthesis, and Simulation of Transactor Processes

  • Author

    Balarin, Felice ; Passerone, Roberto

  • Author_Institution
    Cadence Design Syst., Inc., Berkeley
  • Volume
    26
  • Issue
    10
  • fYear
    2007
  • Firstpage
    1749
  • Lastpage
    1762
  • Abstract
    Transaction-level models promise to be the basis of the verification environment for the whole design process. Realizing this promise requires connecting transaction-level and register-transfer-level (RTL) blocks through a transactor, which translates back and forth between RTL signal-based communication and transaction-level function-call-based communication. Each transactor is associated with a pair of interfaces, one at RTL and one at transaction level. Typically, however, a pair of interfaces is associated with more than one transactor, each assuming a different role in the verification process. In this paper, we propose a methodology in which both the interfaces and their relation are captured by a single formal specification. By using the specification, we show how the code for all the transactors associated with a pair of interfaces can be automatically generated. Our synthesis algorithm avoids the state-explosion problems associated with certain features of the specification formalism, at the expense of a more sophisticated simulation algorithm. We describe three different code-generation techniques targeted at different verification languages: (1) C++; (2) Verilog; and (3) the combination of the two that is compliant with the Standard Co-Emulation Modeling Interface protocol. In addition, we present several case studies demonstrating that automatically generated transactors can indeed replace handcrafted ones in realistic designs.
  • Keywords
    circuit CAD; formal verification; integrated circuit design; integrated circuit modelling; specification languages; C++; RTL signal-based communication; Standard Co-Emulation Modeling Interface protocol; Verilog; code generation; code-generation techniques; design process; fnite state machine; formal specification; property specification language; register-transfer-level blocks; state-explosion problems; transaction-level blocks; transaction-level function-call-based communication; transaction-level models; transactor processes; verification environment; verification languages; verification process; Code standards; Explosions; Formal specifications; Hardware design languages; Joining processes; Performance analysis; Process design; Programming; Protocols; Specification languages; Code generation; SystemC; Verilog; finite-state machine (FSM) simulation; property specification language (PSL); standard co-emulation modeling interface (SCE-MI); state explosion; transaction-level models (TLMs); transactor; verification;
  • fLanguage
    English
  • Journal_Title
    Computer-Aided Design of Integrated Circuits and Systems, IEEE Transactions on
  • Publisher
    ieee
  • ISSN
    0278-0070
  • Type

    jour

  • DOI
    10.1109/TCAD.2007.895792
  • Filename
    4305239