Classification of Simulators Logic Simulators Emulator-basedSchematic-basedHDL-based Event-drivenCycle-basedGateSystem.

Slides:



Advertisements
Similar presentations
HDL Programming Fundamentals
Advertisements

Digital Systems Verification Lecture 13 Alessandra Nardi.
Tutorial 2 Sequential Logic. Registers A register is basically a D Flip-Flop A D Flip Flop has 3 basic ports. D, Q, and Clock.
ENEL111 Digital Electronics
ECE Synthesis & Verification - Lecture 2 1 ECE 667 Spring 2011 ECE 667 Spring 2011 Synthesis and Verification of Digital Circuits High-Level (Architectural)
SYEN 3330 Digital SystemsJung H. Kim 1 SYEN 3330 Digital Systems Chapter 6 – Part 1.
Evolution and History of Programming Languages Software/Hardware/System.
ECE 553: TESTING AND TESTABLE DESIGN OF DIGITAL SYSTES Logic Simulation.
Digitaalsüsteemide verifitseerimise kursus1 Formal verification: Property checking Property checking.
ECAD Tool Flows These notes are taken from the book: It’s The Methodology, Stupid! by Pran Kurup, Taher Abbasi, Ricky Bedi, Publisher ByteK Designs,
Hardware Description Languages Drawing of circuit schematics is not practical for circuits containing more than few tens of gates. We need a way to just.
Copyright 2001, Agrawal & BushnellDay-1 PM Lecture 4a1 Design for Testability Theory and Practice Lecture 4a: Simulation n What is simulation? n Design.
Spring 07, Feb 6 ELEC 7770: Advanced VLSI Design (Agrawal) 1 ELEC 7770 Advanced VLSI Design Spring 2007 Verification Vishwani D. Agrawal James J. Danaher.
Behavioral Design Outline –Design Specification –Behavioral Design –Behavioral Specification –Hardware Description Languages –Behavioral Simulation –Behavioral.
ECE Synthesis & Verification1 ECE 667 Spring 2011 Synthesis and Verification of Digital Systems Verification Introduction.
System verification.
Logic Design Outline –Logic Design –Schematic Capture –Logic Simulation –Logic Synthesis –Technology Mapping –Logic Verification Goal –Understand logic.
مرتضي صاحب الزماني  The registers are master-slave flip-flops (a.k.a. edge-triggered) –At the beginning of each cycle, propagate values from primary inputs.
Foundation and XACTstepTM Software
CSET 4650 Field Programmable Logic Devices
Digitaalsüsteemide verifitseerimise kursus1 Formal verification: BDD BDDs applied in equivalence checking.
Digital Design Strategies and Techniques. Analog Building Blocks for Digital Primitives We implement logical devices with analog devices There is no magic.
FPGA-Based System Design: Chapter 4 Copyright  2004 Prentice Hall PTR HDL coding n Synthesis vs. simulation semantics n Syntax-directed translation n.
Cycle Based Simulation Mehrdad Abutalebi. Outline Motivation Cycle Simulation Cycle Simulation Techniques Cycle Simulation Specifications Areas of Applicability.
IAY 0600 Digitaalsüsteemide disain Event-Driven Simulation Alexander Sudnitson Tallinn University of Technology.
Mugil Vannan H ST Microelectronics India Pvt. Ltd, Noida
ASIC/FPGA design flow. FPGA Design Flow Detailed (RTL) Design Detailed (RTL) Design Ideas (Specifications) Design Ideas (Specifications) Device Programming.
Xilinx Development Software Design Flow on Foundation M1.5
Digitaalsüsteemide verifitseerimise kursus1 Digitaalsüsteemide verifitseerimine IAF0620, 5.0 AP, E Jaan Raik IT-208,
Design Verification An Overview. Powerful HDL Verification Solutions for the Industry’s Highest Density Devices  What is driving the FPGA Verification.
1 H ardware D escription L anguages Modeling Digital Systems.
Teaching Functional Verification – Course Organization Design Automation Conference Sunday, June 9, 2002.
HDL Bencher FPGA Design Workshop. For Academic Use Only Presentation Name 2 Objectives After completing this module, you will be able to:  Describe the.
Assertion Based Testing. Testing and verification Does the design function according to the specifications? Example.
Languages for HW and SW Development Ondrej Cevan.
RTL Hardware Design by P. Chu Chapter Overview on sequential circuits 2. Synchronous circuits 3. Danger of synthesizing asynchronous circuit 4.
Modern VLSI Design 4e: Chapter 8 Copyright  2008 Wayne Wolf Topics Modeling with hardware description languages (HDLs).
ECE-C662 Lecture 2 Prawat Nagvajara
Modern VLSI Design 3e: Chapter 8 Copyright  1998, 2002 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
Seminar for the Class of Digital Systems Electronics Seminar for the Class of Digital Systems Electronics The VHDL simulation environment Polytechnic of.
Verification & Validation By: Amir Masoud Gharehbaghi
ELEE 4303 Digital II Introduction to Verilog. ELEE 4303 Digital II Learning Objectives Get familiar with background of HDLs Basic concepts of Verilog.
IAY 0600 Digital Systems Design Event-Driven Simulation VHDL Discussion Alexander Sudnitson Tallinn University of Technology.
FPGA-Based System Design Copyright  2004 Prentice Hall PTR Topics n Modeling with hardware description languages (HDLs).
TOPIC : Types of Simulation UNIT 1 : Modeling Module 1.5 Simulation.
Teaching Functional Verification – Course Organization Design Automation Conference Sunday, June 9, 2002.
Classification of Simulators Logic Simulators Emulator-basedSchematic-basedHDL-based Event-drivenCycle-basedGateSystem.
ECE 448 Lecture 6 Finite State Machines State Diagrams vs. Algorithmic State Machine (ASM) Charts.
ASIC/FPGA design flow. Design Flow Detailed Design Detailed Design Ideas Design Ideas Device Programming Device Programming Timing Simulation Timing Simulation.
VHDL From Ch. 5 Hardware Description Languages. History 1980’s Schematics 1990’s Hardware Description Languages –Increased due to the use of Programming.
TOPIC : Introduction to Sequential Circuits UNIT 1: Modeling and Simulation Module 4 : Modeling Sequential Circuits.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
1 A hardware description language is a computer language that is used to describe hardware. Two HDLs are widely used Verilog HDL VHDL (Very High Speed.
Copyright 2001, Agrawal & BushnellVLSI Test: Lecture 61 Lecture 6 Logic Simulation n What is simulation? n Design verification n Circuit modeling n True-value.
Programmable Hardware: Hardware or Software?
ASIC Design Methodology
Combinational Logic Design
HDL simulation and Synthesis (Marks16)
VLSI Testing Lecture 5: Logic Simulation
Topics Modeling with hardware description languages (HDLs).
VLSI Testing Lecture 5: Logic Simulation
Digital System Verification
Vishwani D. Agrawal Department of ECE, Auburn University
VLSI Testing Lecture 6: Fault Simulation
Topics Modeling with hardware description languages (HDLs).
Hardware Description Languages
CS341 Digital Logic and Computer Organization F2003
Lesson 4 Synchronous Design Architectures: Data Path and High-level Synthesis (part two) Sept EE37E Adv. Digital Electronics.
HDL Hardware Description Language
SystemVerilog and Verification
Presentation transcript:

Classification of Simulators Logic Simulators Emulator-basedSchematic-basedHDL-based Event-drivenCycle-basedGateSystem

Classification of Simulators HDL-basedHDL-based: Design and testbench described using HDL –Event-driven –Cycle-based Schematic-basedSchematic-based: Design is entered graphically using a schematic editor EmulatorsEmulators: Design is mapped into FPGA hardware for prototype simulation. Used to perform hardware/software co-simulation.

(Some) EDA Tools and Vendors Logic Simulation –Scirocco (VHDL)  Synopsys –Verilog-XL (Verilog)  Cadence Design Systems –Leapfrog (VHDL)  Cadence Design Systems –VCS (Verilog)  Chronologic (Synopsys) Cycle-based simulation –SpeedSim (VHDL)  Quickturn –PureSpeed (Verilog)  Viewlogic (Synopsys) –Cobra  Cadence Design Systems –Cyclone  Synopsys

Event-driven Simulation Event: change in logic value at a node, at a certain instant of time  (V,T) Event-driven: only considers active nodes –Efficient Performs both timing and functional verification –All nodes are visible –Glitches are detected Most heavily used and well-suited for all types of designs

Event-driven Simulation Event: change in logic value, at a certain instant of time  (V,T) D=2 a b c Events: Input: b(1)=1 Output: none D=2 a b c Events: Input: b(1)=1 Output: c(3)=0 3

Event-driven Simulation Uses a timewheel to manage the relationship between components TimewheelTimewheel = list of all events not processed yet, sorted in time (complete ordering) When event is generated, it is put in the appropriate point in the timewheel to ensure causality

Event-driven Simulation b(1)=1 d(5)=1 D= D=2 a b c d(5)=1 d e c(3)=0 d(5)= e(4)=0 6 e(6)=1

Cycle-based Simulation Take advantage of the fact that most digital designs are largely synchronous Synchronous circuit: state elements change value on active edge of clock Only boundary nodes are evaluated Internal Node Boundary Node LatchesLatches LatchesLatches

Cycle-based Simulation Compute steady-state response of the circuit –at each clock cycle –at each boundary node LatchesLatches LatchesLatches Internal Node

Cycle-based versus Event-driven Cycle-based:Cycle-based: –Only boundary nodes –No delay information Event-driven:Event-driven: –Each internal node –Need scheduling and functions may be evaluated multiple times Cycle-based is 10x-100x faster than event-driven (and less memory usage) Cycle-based does not detect glitches and setup/hold time violations, while event-driven does

Simulation: Perfomance vs Abstraction.001x SPICE Event-driven Simulator Cycle-based Simulator 1x10x Performance and Capacity Abstraction

Simulation Testplan Simulation –Write test vectors –Run simulation –Inspect results About test vectors – HDL code coverage

Digitaalsüsteemide verifitseerimise kursus13 Formal verification Symbolic simulation Can be applied in property checking Or in input space constraining

Digitaalsüsteemide verifitseerimise kursus14 Symbolic simulation Free variables (primary inputs, flip-flops) and internal variables. Considers relations between free variables, not the stimuli values. Good for verifying properties. Circuit unrolling for sequential circuits. Expressions will become complex! BDDS used in representing the expressions.

Digitaalsüsteemide verifitseerimise kursus15 Circuit unrolling: Symbolic simulation

Digitaalsüsteemide verifitseerimise kursus16 Var.1. cycle h gb 1 · c 1 kk1k1 f n j Var.2. cycle h gb 2 · c 2 k f n j Symbolic simulation

Digitaalsüsteemide verifitseerimise kursus17 Symbolic verification Symbolic simulation allows considering several stimuli simultaneously. Thus suitable for verifying properties (assertions) Properties may be time-limited (bound) or time-unlimited (unbound) Symbolic verification can be applied to the former

Digitaalsüsteemide verifitseerimise kursus18 Sisendruumi kitsendamine Mõnedele sisenditele omistatakse konkreetsed väärtused ja simuleeritakse Vähendab oluliselt avaldiste keerukust Eesmärgiks võib olla osalise funktsionaalsuse kontroll (funktsionaalne tükeldamine) või keskkonna kirjeldamine Piiril, kui kõik vabad muutujad omavad väärtust, on tegu traditsioonilise simuleerimisega

Digitaalsüsteemide verifitseerimise kursus19 Sisendruumi kitsendamine sõlm1. takt h gb 1 · c 1 kk1k1 f n j sõlm2. takt h gb 2 · c 2 k f n j

Digitaalsüsteemide verifitseerimise kursus20 Sisendruumi kitsendamine sõlm1. takt h0 gb 1 · c 1 kk 1 k 1 (b 1 · c 1 ) f n j sõlm2. takt h g0 k f n 1 j a 1 =1, c 2 =0

Digitaalsüsteemide verifitseerimise kursus21 Sisendruumi kitsendamine

Digitaalsüsteemide verifitseerimise kursus22 Sisendruumi kitsendamine Olgu sisendid x, y, z ja väljundid p, q x, y, z võivad saada 100, 111, 010, 011 kitsendamiseks kodeerime muutujatega v, w saame x = ¬v, y = v+w, z = w (v, w)(x, y, z)