Co-simulation Techniques for Mixed Signal Circuits

Similar documents
UVM Testbench Structure and Coverage Improvement in a Mixed Signal Verification Environment by Mihajlo Katona, Head of Functional Verification, Frobas

A Transaction-Oriented UVM-based Library for Verification of Analog Behavior

Designing for the Internet of Things with Cadence PSpice A/D Technology

Digital to Mixed-Signal Verification of Power Management SOCs Using Questa-ADMS. M. Behaghel

Equivalence Checking using Assertion based Technique

White Paper. Mixed Signal Design & Verification Methodology for Complex SoCs

RAPID SOC PROOF-OF-CONCEPT FOR ZERO COST JEFF MILLER, PRODUCT MARKETING AND STRATEGY, MENTOR GRAPHICS PHIL BURR, SENIOR PRODUCT MANAGER, ARM

Sharif University of Technology. SoC: Introduction

MODELING OF ADC ARCHITECTURES IN HDL LANGUAGES

Verification of an Image Processing Mixed- Signal ASIC

Behavioral Modeling of a Charge Pump Voltage Converter for SoC Functional Verification Purposes

VHDL Design and Implementation of FPGA Based Logic Analyzer: Work in Progress

EECS 578 SVA mini-project Assigned: 10/08/15 Due: 10/27/15

Powerful Software Tools and Methods to Accelerate Test Program Development A Test Systems Strategies, Inc. (TSSI) White Paper.

Adding Analog and Mixed Signal Concerns to a Digital VLSI Course

Verification Methodology for a Complex System-on-a-Chip

Radar Signal Processing Final Report Spring Semester 2017

EEC 116 Fall 2011 Lab #5: Pipelined 32b Adder

System Quality Indicators

High Performance Microprocessor Design and Automation: Overview, Challenges and Opportunities IBM Corporation

Certus TM Silicon Debug: Don t Prototype Without It by Doug Amos, Mentor Graphics

Methodology. Nitin Chawla,Harvinder Singh & Pascal Urard. STMicroelectronics

Asynchronous Design for Analogue Electronics. Alex Yakovlev

INF4420 Project Spring Successive Approximation Register (SAR) Analog-to-Digital Converter (ADC)

Area-Efficient Decimation Filter with 50/60 Hz Power-Line Noise Suppression for ΔΣ A/D Converters

UNIT IV CMOS TESTING. EC2354_Unit IV 1

Using on-chip Test Pattern Compression for Full Scan SoC Designs

ADDRESSING THE CHALLENGES OF IOT DESIGN JEFF MILLER, PRODUCT MARKETING MANAGER, MENTOR GRAPHICS

Future of Analog Design and Upcoming Challenges in Nanometer CMOS

A RANDOM CONSTRAINED MOVIE VERSUS A RANDOM UNCONSTRAINED MOVIE APPLIED TO THE FUNCTIONAL VERIFICATION OF AN MPEG4 DECODER DESIGN

4. Formal Equivalence Checking

Signal Persistence Checking of Asynchronous System Implementation using SPIN

2.6 Reset Design Strategy

Boolean, 1s and 0s stuff: synthesis, verification, representation This is what happens in the front end of the ASIC design process

TKK S ASIC-PIIRIEN SUUNNITTELU

Introduction to The Design of Mixed-Signal Systems on Chip 1

Analog Performance-based Self-Test Approaches for Mixed-Signal Circuits

A video signal processor for motioncompensated field-rate upconversion in consumer television

Dual Slope ADC Design from Power, Speed and Area Perspectives

Traffic Light Controller

A New Methodology for Analog/Mixed-Signal (AMS) SoC Design that Enables AMS Design Reuse and Achieves Full-Custom Performance

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Introductory Digital Systems Laboratory

COMPUTER ENGINEERING PROGRAM

Low Power VLSI Circuits and Systems Prof. Ajit Pal Department of Computer Science and Engineering Indian Institute of Technology, Kharagpur

Good afternoon! My name is Swetha Mettala Gilla you can call me Swetha.

CacheCompress A Novel Approach for Test Data Compression with cache for IP cores

VLSI Digital Signal Processing Systems: Design And Implementation PDF

Introduction to Digital Logic Missouri S&T University CPE 2210 Introduction and Application Areas

Experiment # 12. Traffic Light Controller

B. Sc. III Semester (Electronics) - ( ) Digital Electronics-II) BE-301 MODEL ANSWER (AS-2791)

International Research Journal of Engineering and Technology (IRJET) e-issn: Volume: 03 Issue: 07 July p-issn:

DESIGN AND ANALYSIS OF COMBINATIONAL CODING CIRCUITS USING ADIABATIC LOGIC

Massachusetts Institute of Technology Department of Electrical Engineering and Computer Science Introductory Digital Systems Laboratory

Smart Night Light. Figure 1: The state diagram for the FSM of the ALS.

Introduction to Digital Logic Missouri S&T University CPE 2210 Introduction and Application Areas

Unit V Design for Testability

Objectives. Combinational logics Sequential logics Finite state machine Arithmetic circuits Datapath

At-speed Testing of SOC ICs

Innovative Fast Timing Design

Decade Counters Mod-5 counter: Decade Counter:

ADVANCES in semiconductor technology are contributing

WELCOME. ECE 2030: Introduction to Computer Engineering* Richard M. Dansereau Copyright by R.M. Dansereau,

Bell. Program of Study. Accelerated Digital Electronics. Dave Bell TJHSST

BASIC LINEAR DESIGN. Hank Zumbahlen Editor Analog Devices, Inc. All Rights Reserved

Lab Assignment 2 Simulation and Image Processing

International Journal of Engineering Research-Online A Peer Reviewed International Journal

VLSI Design: 3) Explain the various MOSFET Capacitances & their significance. 4) Draw a CMOS Inverter. Explain its transfer characteristics

CHAPTER 6 DESIGN OF HIGH SPEED COUNTER USING PIPELINING

Lecture 17: Introduction to Design For Testability (DFT) & Manufacturing Test

Scan. This is a sample of the first 15 pages of the Scan chapter.

This Chapter describes the concepts of scan based testing, issues in testing, need

IC Layout Design of Decoders Using DSCH and Microwind Shaik Fazia Kausar MTech, Dr.K.V.Subba Reddy Institute of Technology.

FPGA Prototyping using Behavioral Synthesis for Improving Video Processing Algorithm and FHD TV SoC Design Masaru Takahashi

Introduction to Signal Processing D R. T A R E K T U T U N J I P H I L A D E L P H I A U N I V E R S I T Y

Zeroplus Logic Analyzer Multi-LA Stack and LA-Oscilloscope Stack

CS/EE 181a 2010/11 Lecture 6

Digital Integrated Circuits Lecture 19: Design for Testability

FPGA Laboratory Assignment 4. Due Date: 06/11/2012

Clarke and Inverse ClarkeTransformations Hardware Implementation. User Guide

Serial FIR Filter. A Brief Study in DSP. ECE448 Spring 2011 Tuesday Section 15 points 3/8/2011 GEORGE MASON UNIVERSITY.

PREVENTING IOT EDGE DEVICE VULNERABILITIES JEFF MILLER, PRODUCT MARKETING & STRATEGY, MENTOR, A SIEMENS BUSINESS

Design for Testability

Analyze Frequency Response (Bode Plots) with R&S Oscilloscopes Application Note

Design and Implementation OF Logic-BIST Architecture for I2C Slave VLSI ASIC Design Using Verilog

Digitizing and Sampling

TSIU03: Lab 3 - VGA. Petter Källström, Mario Garrido. September 10, 2018

-SQA-SCOTTISH QUALIFICATIONS AUTHORITY HIGHER NATIONAL UNIT SPECIFICATION GENERAL INFORMATION

Digital Logic Design: An Overview & Number Systems

Design of Low Power and Area Efficient 64 Bits Shift Register Using Pulsed Latches

Low-Power Decimation Filter for 2.5 GHz Operation in Standard-Cell Implementation

Design and analysis of microcontroller system using AMBA- Lite bus

COMP12111: Fundamentals of Computer Engineering

nmos transistor Basics of VLSI Design and Test Solution: CMOS pmos transistor CMOS Inverter First-Order DC Analysis CMOS Inverter: Transient Response

Digital Design and Computer Architecture

Design of Fault Coverage Test Pattern Generator Using LFSR

UG0651 User Guide. Scaler. February2018

ENGG2410: Digital Design Lab 5: Modular Designs and Hierarchy Using VHDL

How smart dimming technologies can help to optimise visual impact and power consumption of new HDR TVs

Made- for- Analog Design Automation The Time Has Come

Low Power Digital Design using Asynchronous Logic

Transcription:

Co-simulation Techniques for Mixed Signal Circuits Tudor Timisescu Technische Universität München Abstract As designs grow more and more complex, there is increasing effort spent on verification. Most bugs are found at the interactions between blocks, so it is absolutely necessary to start testing as soon as possible in the development cycle. Behavioral modeling is a technique which allows for higher simulation speeds, as well as early system level verification. Index terms Functional verification, mixed signal, behavioral modeling. I. INTRODUCTION The development of multi-million gate circuits poses increasing challenges due to ever more complex requirements (both physical and functional) to the need to integrate a larger and larger amount of proprietary blocks, IP modules and even software applications. To reach these ambitious goals and still meet time-tomarket requirements, it is mandatory to not waste precious development time on re-spins, which prompts the need for efficient and effective verification practices able to find bugs early on in the design process, way before committing the chip to silicon. II. FUNCTIONAL VERIFICATION Functional verification is the task of proving that a design conforms to its specification and operates as required. Some statistics: it is estimated that around 71% of IC re-spins are due to functional bugs and about 47% are due to incomplete or incorrect specifications. Moreover, the effort required to verify a complex state of the art SoC takes at least Moscow-Bavarian Joint Advanced Student School 2011 1

60 70% of the whole development time [1]. Pre-silicon development consists mostly of the interaction between four teams: architecture development is in charge of formulating specifications for the IC, partitioning the future system into components and working out the functional relations between them; the analog and digital design teams implement the architecture defined beforehand into analog and digital blocks realizable on silicon; finally, the verification team has the task of proving that the implementation of the chip was done resulted in a product conforming to the specifications. The basic interactions between these teams are summarized in Figure 1 - IC Development Flow. Not only is the design of analog blocks very different from the design of digital blocks, but also the way verification is done. While analog circuits are validated to operate correctly in a wide variety of environmental conditions and subject to different process variations, digital circuits on the other hand are required to work under a wide variety of input vectors. The way verification is approached is also fundamentally different: analog blocks use traditional directed testing, while new digital blocks are verified using random constrained stimulus generation. Analog design Netlists Architecture development A. Digital verification Specs Verification Digital design Figure 1 - IC Development Flow RTL Netlists Modern digital verification relies on using hardware verification languages (HVLs) like SystemVerilog or e. These allow for an object oriented approach at a higher level of abstraction, eliminating the need to think only at the signal level. Stimulus is generated randomly out of the allowed input space allowing it to reach corner cases a human test writer would probably omit. As such, the testbenches must implement automatic checking and there exist also clear metrics to evaluate the results by. While this undoubtedly increased the time spent on testbench development in the early stages of the verification process, the effort pays off in the end, as all tests share the verification environment as opposed to writing directed tests, where a new testbench must be built basically from scratch for each one [2]. Figure 2 - Directed vs. Random Constrained Verification shows a qualitative graph comparing the two methodologies in terms of speed. Moscow-Bavarian Joint Advanced Student School 2011 2

B. Analog verification bugs found time constrained random directed Figure 2 - Directed vs. Random Constrained Verification The entire process is done according to a thorough verification plan based on the specification, which requires no white box knowledge of the circuit. There are different methodologies available such as the e Reuse Methodology (erm), the Verification Methodology Manual (VMM), the Open Verification Methodology (OVM) and the new Universal Verification Methodology (UVM) which facilitate reuse of verification components and interoperability between different verification IP providers. The tools on which digital verification is done are logic simulators, such as QuestaSim, VCS and Incisive Unified Simulator. These are event driven and offer high simulation speeds compared to analog simulations at the transistor level. Analog designs still require thinking in terms of various physical quantities such as voltage, current, temperature, charge, etc. This leads to having to manually define input stimuli, which limits the number of different testcases that can be executed. Likewise, the need for visual inspection of waveforms and file dumps of the results decreases the number of test runs that can be performed while also being prone to human errors. There is not really any notion of verification IP, so each circuit has its own testbench built basically from scratch and requires detailed knowledge of its inner workings. The tools used in simulations are called SPICE simulators which solve the differential equations of the circuit. Some examples are Nanosim, Ultrasim and Questa-ADMS. These tools require large amounts of simulation time, but a tradeoff can be made between this and the accuracy of the results. III. MIXED SIGNAL SYSTEM SIMULATION Today s designs are not purely analog or digital, but contain blocks that are either fully analog (voltage regulators, amplifiers, sensors, etc.), fully digital (registers, arithmetic blocks, FSMs, etc.) or contain a mixture of the two which is Moscow-Bavarian Joint Advanced Student School 2011 3

functionally deeply intertwined (ADCs and DACs are the most eloquent examples). Such systems are called mixed signal systems (Figure 3 - Example of a Mixed Signal System shows a small sample of such a mixed signal system, where the yellow blocks are purely analog, the blue blocks represent digital logic and the green blocks are mixed analog-digital blocks). It is not sufficient to simulate each component individually to achieve a working system, as most bugs are usually found at the interfaces and interactions between sub-blocks. These types of systems must be simulated using analog tools and their verification inherits all the weaknesses of analog verification, mainly the touch and feel approach and the huge simulation times required. Besides these drawbacks, the biggest problem is that this verification step can only be done in a late stage of the development cycle, so finding too many bugs here could be fatal for the time-to-market. A. Analog model based verification A possible solution to two of these problems, namely the large simulations times and the availability only very late in the development process, is using behavioral models in place of transistor based analog blocks. These models would only capture the interesting and essential behaviors of the blocks and not details AMP Sensor Voltage Regulator ADC DAC Reset Gen Digital Logic Figure 3 - Example of a Mixed Signal System such as variations with temperature, process, supply voltage, etc. Using them also removes the need to solve differential equation, giving the possibility of using logic simulators. Early system integration and testing becomes a reality as well and some of the advantages of digital verification become accessible (developed methodologies for the digital interfaces, reuse, etc.). The languages of choice for modeling are pure behavioral VHDL (most widely used) or Verilog AMS and VHDL AMS. The latter are used for also implementing structural models of any type of analog system (even, for example, mechanical systems [3]), but with the downside of requiring more advanced simulators. A testbench developed to use analog models can not only be used for early simulations, but also for late full system integration testing. Blocks can be replaced with their implemented counterparts as they become available, to do the final top level verification using Moscow-Bavarian Joint Advanced Student School 2011 4

Analog Stims VHDL Models OVM Testbench Digital Stims ADC Outputs DUT only a smaller number of tests to achieve sign-off. B. System level reference models DUT Outputs Simulink Model Figure 4 D-BAP Sensor Verification Environment In the digital verification section, it was mentioned that the testbench must be self-checking. This requires the verification team to come up with a high level model for the inner workings of the system. Such a model should already exist, developed by the system level team as an executable specification for early architecture validation and to be provided to the customer to refine the specifications. These models are usually written in plain C, SystemC, Simulink or maybe a mixture of all these and more. As they already capture the intended behavior of the IC, reusing this for verification purposes removes the need for double work and error prone translation from one language to another. C and SystemC are supported by all major simulators (but the solutions are Reference Outputs usually proprietary and cannot be moved from one tool to another). SystemC provides the additional bonuses of transaction level modeling support, integration of hardware and software components and the extensive methodologies already available (for example, the Open SystemC Initiative) [4]. Matlab and Simulink models must use separate products for co-simulation (such as the EDA Simulator Link). These provide interfaces only at signal level and the licenses for them usually cost a lot of money (not counting the license costs for Matlab, Simulink and any required toolboxes). Communication with the HDL/SPICE simulator can be done either via shared memory on the same machine or via a network. IV. EXAMPLE As a practical example to illustrate the concepts described in this paper, an overview of the verification environment for one of the new Digital Barometric Air Pressure Sensors from Infineon Technologies is given. A simplistic block diagram is given in Figure 4 D-BAP Sensor Verification Environment. The DUT contains the entire digital core of the IC (color white). The analog parts, such as the sensors, voltage regulator, reset generator, EEPROM, ADC, etc. are modeled using behavioral Moscow-Bavarian Joint Advanced Student School 2011 5

VHDL (color green). A reference model for the pressure and temperature signal processing paths is available in the form of a Simulink model (color yellow). The OVM testbench (color blue) contains the bulk of the verification environment: test control, driving the inputs (both digital and analog), monitoring the interfaces for data transactions, modeling the rest of the digital core, and coverage collection. Analog stimuli are passed through the VHDL models and are converted to digital signals representing the ADC outputs. These are then sent to both the DUT and the Simulink model and their responses are compared. V. CONCLUSIONS It has been mentioned in this paper that the majority of bugs are found at the system level. Unfortunately, the need to have all these blocks ready before such simulations can be performed means that they can only be done late in the development cycle. A method to allow early testing is using behavioral blocks to speed up testbench development and the availability of a top level integration for the DUT. Future trends include multi-language testbenches (such as the Universal Verification Methodology), using such testbenches for transistor level simulations and promoting analog VIP reuse. REFERENCES 1. Bonfini, G., Chiavacci, M. and Pescari, E. Verification of Mixed-Signal Systems. [Online] http://www.embeddedstar.com/articles/20 05/11/article20051107-1.html. 2. Spear, Chris. SystemVerilog for Verification - A Guide to Learning the Testbench Language Features. s.l. : Springer, 2008. 3. Watkins, Steve and Wong, Kam. Hardware Design for Software People in the SoC Era. Mixed Signal Modeling with Vanilla VHDL and Verilog. [Online] http://www.bluepc.com/mixpap.html. 4. Open SystemC Initiative. Open SystemC Initiative - About SystemC. Open SystemC Initiative. [Online] http://www.systemc.org/community/about _systemc/. Moscow-Bavarian Joint Advanced Student School 2011 6