HDL simulation and Synthesis (Marks16)

Slides:



Advertisements
Similar presentations
9/18/08 Lab 2 - Solution TA: Jorge. 9/18/08 Half-adder.
Advertisements

Sistemas Digitais I LESI - 2º ano Lesson 5 - VHDL U NIVERSIDADE DO M INHO E SCOLA DE E NGENHARIA Prof. João Miguel Fernandes Dept.
Why Behavioral Wait statement Signal Timing Examples of Behavioral Descriptions –ROM.
VHDL Intro What does VHDL stand for? VHSIC Hardware Description Language VHSIC = Very High Speed Integrated Circuit Developed in 1982 by Govt. to standardize.
HDL-Based Digital Design Part I: Introduction to VHDL (I) Dr. Yingtao Jiang Department Electrical and Computer Engineering University of Nevada Las Vegas.
Package with 4-valued logic Signal Attributes Assertion Data Flow description.
Fall 08, Oct 29ELEC Lecture 7 (updated) 1 Lecture 7: VHDL - Introduction ELEC 2200: Digital Logic Circuits Nitin Yogi
1 H ardware D escription L anguages Basic Language Concepts.
IAY 0600 Digitaalsüsteemide disain Event-Driven Simulation Alexander Sudnitson Tallinn University of Technology.
VHDL IE- CSE. What do you understand by VHDL??  VHDL stands for VHSIC (Very High Speed Integrated Circuits) Hardware Description Language.
2-Jun-16EE5141 Chapter 3 ä The concept of the signal ä Process concurrency ä Delta time ä Concurrent and sequential statements ä Process activation by.
Basic Concepts in VHDL Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung University.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Fall 08, Oct 29ELEC Lecture 7 (updated) 1 Lecture 7: VHDL - Introduction ELEC 2200: Digital Logic Circuits Nitin Yogi
Electrical and Computer Engineering University of Cyprus LAB 1: VHDL.
Timing Model VHDL uses the following simulation cycle to model the stimulus and response nature of digital hardware Start Simulation Update Signals Execute.
Ch.2 Part E: VHDL, SystemC EECE **** Embedded System Design.
(1) Basic Language Concepts © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Behavioural modelling Lecture 3. Outline 3.1. Processes. Sequential statements. WAIT statement Simulation mechanism Sequential signal assignment.
1/8/ L16 Timing & Concurrency III Copyright Joanne DeGroat, ECE, OSU1 Timing & Concurrency III Delay Model foundations for simulation and.
CSCI-365 Computer Organization Lecture Note: Some slides and/or pictures in the following are adapted from: Computer Organization and Design, Patterson.
© 조준동 2008 ECE C03 Lecture 121 Lecture 12 Introduction to VHDL Hai Zhou ECE 303 Advanced Digital Design Spring 2002.
Relational Operators Result is boolean: greater than (>) less than (=) less than or equal to (
IAY 0600 Digital Systems Design Event-Driven Simulation VHDL Discussion Alexander Sudnitson Tallinn University of Technology.
TOPIC : Types of Simulation UNIT 1 : Modeling Module 1.5 Simulation.
Dataflow modelling Lecture 4. Dataflow modelling Specifies the functioning of a circuit without explicitly refer to its structure Functioning is described.
Lecture #12 Page 1 ECE 4110– Digital Logic Design Lecture #12 Agenda 1.VHDL : Behavioral Design (Processes) Announcements 1.n/a.
IAY 0600 Digital Systems Design VHDL discussion Structural style Modular design and hierarchy Part 1 Alexander Sudnitson Tallinn University of Technology.
1 Introduction to Engineering Spring 2007 Lecture 18: Digital Tools 2.
ECE 4110–5110 Digital System Design
Structural style Modular design and hierarchy Part 1
Basic Language Concepts
Subject Name: FUNDAMENTALS OF HDL Subject Code: 10EC45
IAY 0600 Digitaalsüsteemide disain
Behavioral Style Combinational Design with VHDL
B e h a v i o r a l to R T L Coding
Topics Modeling with hardware description languages (HDLs).
VLSI Testing Lecture 5: Logic Simulation
ECE 551: Digital System Design & Synthesis
Timing Model Start Simulation Delay Update Signals Execute Processes
Structural style Modular design and hierarchy Part 1
Vishwani D. Agrawal Department of ECE, Auburn University
Digital System Design Verilog ® HDL Scheduling Semantics Maziar Goudarzi.
Behavioral Style Combinational Design with VHDL
IAY 0600 Digital Systems Design
Topics Modeling with hardware description languages (HDLs).
CPE/EE 422/522 Advanced Logic Design L06
ECE 434 Advanced Digital System L08
Hardware Description Languages
IAS 0600 Digital Systems Design
Structural style Modular design and hierarchy Part 1
Copyright Joanne DeGroat, ECE, OSU
ECE-C662 Introduction to Behavioral Synthesis Knapp Text Ch
VHDL Discussion Subprograms
332:437 Lecture 8 Verilog and Finite State Machines
CPE 528: Lecture #3 Department of Electrical and Computer Engineering University of Alabama in Huntsville.
VHDL Discussion Subprograms
IAS 0600 Digital Systems Design
VHDL Programming (08 Marks)
How do you achieve deterministic concurrent simulation.
Timing & Concurrency II
The Verilog Hardware Description Language
Copyright Joanne DeGroat, ECE, OSU
Timing & Concurrency II
Behavioural modelling
Timing & Concurrency II
332:437 Lecture 8 Verilog and Finite State Machines
COE 202 Introduction to Verilog
VHDL - Introduction.
Presentation transcript:

HDL simulation and Synthesis (Marks16) CH.5 HDL simulation and Synthesis (Marks16) Visit for more Learning Resources

Event Scheduling Event is a change observed in any signal and the method used for updating a new value by certain amount of delay (finite time) is termed as event scheduling. Event is nothing bue change on target signal which is updated. Example- X<= a after 05ns when select=0 else x<= b after 0.5ns. The assignment to signal ‘X’ does not happen instantly. Each of the values assigned to X contain the new value for signal x. When the event matures, signal receives a new value.

Continued…. Event occurs at different times. In VHDL, event queue is divided into five regions. Each event is added in one of the five regions but thay are removed from queue. Active event Inactive Event Non blocking assign update events Monitor Events Future Events Processing all active events is called simulation cycle.

Sensitivity List The sensitivity list is a list of the signals that will cause the process to execute. It is compact way for specifying the set of signals, events on which process resumes. every concurrent statement has a sensitivity list. Statement are executed only when there is an event or signal in sensitivity list, otherwise they are suspended . The sensitivity list is equivalent to the wait on statement, which is the last statement of the process statement section. The process statement can have explicit sensitivity list. This list defines the signals that cause the statement inside the process statement to execute whenever one or more elements of the list change value.

Continued… The sensitivity list is specified right after the key process Ex. Process(CLK,sel).

Zero Modeling The ordering of zero delays events is handled with a functionality unit called delta time. Delta delay represents the execution of a simulation cycle without advancing simulation time. The simulator models zero delay events using delta time. Events scheduled at the same time are simulated in specific order during delta time step. while describing any system for synthesis circuit delays are determined by the target technology. All digital circuit elements have a delay even if it is very short.

Continued…. The ‘0’ ns delta delay has a little impact while writing VHDL code for synthesis. But it must be included so that all circuits will be realizable. The physical circuit always have finite delays. In VHDL zero delay components which could never built. Specifying zero delay events must be orderedto produce consistence result. VHDL delays- Transport -- prescribes propagation delay only 􀂄 Inertial -- prescribes minimum input pulse width and propagation delay 􀂄 Delta -- the default, if no delay time is explicitly specified

Simulators Software used for simulation is called simulator. Classification of simulator- Logic simulator HDL based Emulator based schematic based Event Based Cycle based Gate system

The process of all active events is called simulation cycle. Delay Start Simulation Execute Process Update signals End Simulation

Continued… A VHDL simulation cycle consists of the following steps: The current time, t c is set equal to t n . Each active signal in the model is updated and events may occur as a result. For each process P, if P is currently sensitive to a signal S, and an event has occurred on signal S in this simulation cycle, then process P resumes. Each resumed process is executed until it suspends. The time of the next simulation cycle, t n , is set to the earliest of:  a. the next time at which a driver becomes active or b. the next time at which a process resumes

Continued…. If t n = t c , then the next simulation cycle is a delta cycle . Simulation is complete when we run out of time ( t n = TIME'HIGH ) and there are no active drivers or process resumptions at t n (there are some slight modifications to these rules involving postponed processes—which we rarely use in ASIC design). Time in an event-driven simulator has two dimensions. A delta cycle takes delta time , which does not result in a change in real time. Each event that occurs at the same time step executes in delta time. Only when all events have been completed and signals updated does real time advance to the next time step

Continued… Simulation cycle having three stages- 1.Analysis 2. Elaboration 3. Excution 1.Analysis In the first stage , the VHDL description of a system is checked for various kinds of errors. It is possible to analyze design units such as entity ,Architecture, body declarations separately . If analyzer finds no errors in design unit, it creates an intermediate representation of the unit and stores it in a library. The exact mechanism varies between VHDL tools .

Elaboration The second stage in simulating a model elaboration is a collection of signals and processes with each process possibly containing variables. A model must be reducible to a collection of signals and processes in order to simulate it.

Event based 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

Continued… Event: change in logic value, at a certain instant of time  (V,T)

Continued…

Comparison Of Software and Hardware Language For more detail contact us