C-Based and Circuit-Level Co-Simulation Using the Verilog Procedural Interface (VPI)

C-Based and Circuit-Level Co-Simulation Using the Verilog Procedural Interface (VPI)

C-based and circuit-level co-simulation using the Verilog Procedural Interface (VPI) Nitasha Jugessur, Emma Sosa Morales NXP Semiconductors, Research - Design Methods and Solutions Abstract This presentation will describe the co-simulation methodology using the Verilog Procedural Interface (VPI), which has been applied during the design phase of an Ultra Wide Band (UWB) Radio system. Co-simulation of circuit descriptions (at transistor or behavioural level) with system descriptions (at C or SystemC level) has been used to investigate the interaction between the digital corrections and compensation techniques implemented in the baseband and the analogue mixed-signal transmit chain. The C language has been used for the functional description in the baseband, doing numerical and digital signal processing. For the transmitter circuit, a behavioral language such as Verilog-AMS is used to describe its functional model and to allow detection and generation of timing events. Fig 1. Co-simulation using the Verilog Procedural Interface (VPI) Unfortunately there is no "plug & play" solution available to integrate C/C++ functions in the Cadence A simple test case has been chosen which allows to mixed-signal design environment to perform quickly check any difference in the results when mixed-abstraction level, mixed-signal simulations. using the C function stand-alone and when using the Therefore a novel method has been studied: co- same C description within the Cadence design simulation through the Verilog Procedural Interface environment. (VPI). A basic example including the digital-to-analogue converter implemented in C and a circuit The Verilog Procedural Interface is a C-programming implementation of a transmit filter is presented. interface for the Verilog Hardware Description Based on this example, the co-simulation capabilities Language (HDL), and standardized as part of the using the Verilog Procedural Interface will be IEEE 1364. compared with the SystemC import approach in An overview is given of the most important access terms of the usability in the available flow, the and utility functions, using the standard C accuracy of the results and the simulation programming language. A summary of the steps that performance. The presentation will show both the are necessary in order to be able to use the VPI for advantages and the drawbacks of these methods, and this purpose will be presented. will highlight the inconveniences encountered during the implementation. This approach will be compared with the SystemC import flow proposed by Cadence [1]. This flow References envelops the C code into a SystemC module, which is [1] W. Hartong, P. Birrer, SpeAC: Leverage from embedded into a Verilog-AMS wrapper, which is the System Level Success-Story in IC Design, then available as a library component in the Cadence Cadence Design Systems, MEDEA+ DAC 2006 design environment. Simulation of C-based functional models and circuit implementation Nitasha Jugessur, Emma Sosa Morales, Giorgia Zucchelli Design Methods and Solutions – System Design Methods June 25, 2007 Outline Introduction – Challenges of wireless systems – Standard flows in NXP Study activities – Simple test case – Verilog Procedural Interface (VPI) – SystemC Import Flow from Cadence Conclusions CONFIDENTIAL 2 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 Challenges of Wireless Systems RF, Mixed Signal and Digital in a single chip ADC BB RX Digital control of analog front- RF Mixed Signal Digital MAC end ~ No off-the-shelf integrated DAC BB TX simulation solution CONFIDENTIAL 3 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 Simple test case – VHDL Clock at a frequency of 1056 MHz – Verilog-AMS module reading data from a file at clocked intervals – Verilog-AMS module using C description of DAC – Circuit implementation of the transmit filter CONFIDENTIAL 4 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 Verilog Procedural Interface (VPI) C programming interface for the Verilog Hardware Description Language Described in the IEEE 1364 standard Verilog HDL Language Reference Manual Consists of a set of access and utility routines called from standard C programming language functions Allows applications that create new simulator system tasks and manipulate instantiated simulation objects CONFIDENTIAL 5 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 VPI – Work flow VPI access functions with input/output handling and C code call Registration as simulator task or function Compilation into shared object Linking of shared object with the simulator Simulator task or function call from Verilog(AMS) module CONFIDENTIAL 6 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 Simulation results CONFIDENTIAL 7 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 SystemC Import Flow from Cadence [1] SystemC wrapper around C code Verilog(AMS) SystemC C/C++ A2D D2A Compilation into shared object Automated by set of SystemC code call from Perl Scripts provided Verilog module by Cadence Compilation of Verilog(AMS) module and symbol generation Linking of shared object with the elaborator [1] W. Hartong, P. Birrer, SpeAC: Leverage from the System Level Success-Story in IC Design, Cadence Design Systems, MEDEA+ DAC 2006 CONFIDENTIAL 8 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 Simulation results CONFIDENTIAL 9 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 Comparison of the 2 methods Work flow – GUI and command line – Basic C and SystemC knowledge required Accuracy – Similar accuracy of results for the 2 methods Performance – 55296 samples (I and Q) Method Memory Usage CPU Usage VPI 88.4M 4786.8s SystemC Import flow 109.0M 10818.9s CONFIDENTIAL 10 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 Conclusions Novel System Design Methodology – To bridge functional, architecture and implementation abstraction levels – Targeted at the system architect or system integrator Unified Simulation Environment for RF, Mixed Signal and RF SoCs – For architecture exploration without subsystem over-specification – For sub-circuit validation and early verification CAD/EDA tool vendor independent solution – Verilog Procedural Interface standardized under IEEE 1364 – Functional blocks based on standardized description languages CONFIDENTIAL 11 Nitasha Jugessur, Design Methods and Solutions, June 25, 2007 .

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    13 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us