 Delay values control the time between the change in a right-hand-side operand and when the new value is assigned to the left- hand side.  Three ways.

Slides:



Advertisements
Similar presentations
Verilog Section 3.10 Section 4.5. Keywords Keywords are predefined lowercase identifiers that define the language constructs – Key example of keywords:
Advertisements

Verilog.
Simulation executable (simv)
ECE 551 Digital Design And Synthesis
Supplement on Verilog adder examples
ELEN 468 Lecture 61 ELEN 468 Advanced Logic Design Lecture 6 Delay Models.
Chap. 6 Dataflow Modeling
Hardware Description Language (HDL)
16/04/20151 Hardware Descriptive Languages these notes are taken from Mano’s book It can represent: Truth Table Boolean Expression Diagrams of gates and.
Half Adder Sec Sec. 4.5, Schedule 11/13MondayCourse intro, diagnostic test 21/15Wednesday Fundamentals of digital logic design (1) (signed.
1 Workshop Topics - Outline Workshop 1 - Introduction Workshop 2 - module instantiation Workshop 3 - Lexical conventions Workshop 4 - Value Logic System.
Digital System Design Verilog ® HDL Timing and Delays Maziar Goudarzi.
Introduction to Verilog (Behavioral Modeling). Agenda Gate Delays and User-Defined Primitives Behavioral Modeling Design Examples Hands-on Practice.
Verilog Sequential Circuits Ibrahim Korpeoglu. Verilog can be used to describe storage elements and sequential circuits as well. So far continuous assignment.
ECE 353 Computer Systems Lab I Verilog Hardware Description Language.
Arbitrary Waveform Discussion 12.2 Example 34. Recall Divide-by-8 Counter Use q2, q1, q0 as inputs to a combinational circuit to produce an arbitrary.
ENEE 408C Lab Capstone Project: Digital System Design Spring 2005 Class Web Site: e408c.
Hardware Description Language HDL. 2 Hardware Description Language HDL  Describes circuits and systems in text. −As a software program.  Can be processed.
Quad 2-to-1 Multiplexer Discussion D7.4 Example 7.
OUTLINE Introduction Basics of the Verilog Language Gate-level modeling Data-flow modeling Behavioral modeling Task and function.
ELEN468 Lecture 31 ELEN 468 Advanced Logic Design Lecture 3 Simulation and Testbench.
B. RAMAMURTHY Hardware Description Language 8/2/
Digital System Design EEE344 Lecture 3 Introduction to Verilog HDL Prepared by: Engr. Qazi Zia, Assistant Professor EED, COMSATS Attock1.
Today’s Lecture Process model –initial & always statements Assignments –Continuous & procedural assignments Timing Control System tasks.
Timing control in verilog Module 3.1 Delays in Verilog.
each of these is an instantiation of “full_adder”
1 H ardware D escription L anguages Basic Language Concepts.
Chapter 6. Dataflow Modeling. Continuous Assignments The left hand side always be a scalar or vector net or a concatenation of scalar and vector nets.
XOR and XNOR Logic Gates. XOR Function Output Y is TRUE if input A OR input B are TRUE Exclusively, else it is FALSE. Logic Symbol  Description  Truth.
Verilog Language Concepts
C ONTINUOUS A SSIGNMENTS. C OMBINATIONAL L OGIC C IRCUITS each output of a Combinational Logic Circuit  A function of the inputs - Mapping functions.
Module 2 : Behavioral modeling TOPIC : Modeling a Digital pulse UNIT 1: Modeling and Simulation.
Module 2.1 Gate-Level/Structural Modeling UNIT 2: Modeling in Verilog.
CWRU EECS 317 EECS 317 Computer Design LECTURE 1: The VHDL Adder Instructor: Francis G. Wolff Case Western Reserve University.
2-Jun-16EE5141 Chapter 3 ä The concept of the signal ä Process concurrency ä Delta time ä Concurrent and sequential statements ä Process activation by.
COE 202 Introduction to Verilog Computer Engineering Department College of Computer Sciences and Engineering King Fahd University of Petroleum and Minerals.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Timing Model VHDL uses the following simulation cycle to model the stimulus and response nature of digital hardware Start Simulation Update Signals Execute.
(1) Basic Language Concepts © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Behavioral Modelling - 1. Verilog Behavioral Modelling Behavioral Models represent functionality of the digital hardware. It describes how the circuit.
1 Verilog Digital System Design Z. Navabi, 2006 Verilog Language Concepts.
M.Mohajjel. Continuous Assignments Continuously Drive a value onto a net Left hand side must be net Right hand side registers nets function calls Keyword.
1/8/ L16 Timing & Concurrency III Copyright Joanne DeGroat, ECE, OSU1 Timing & Concurrency III Delay Model foundations for simulation and.
Introduction to Verilog Section Outline Set Up the Environment Your First Verilog File Set Up the Test Bench Running the Simulation.
Digital Logic Design Lecture # 6 University of Tehran.
Multiplexers Section Topics Multiplexers – Definition – Examples – Verilog Modeling.
COE 202 Introduction to Verilog Computer Engineering Department College of Computer Sciences and Engineering King Fahd University of Petroleum and Minerals.
Chapter 3: Dataflow Modeling Digital System Designs and Practices Using Verilog HDL and 2008~2010, John Wiley 3-1 Chapter 3: Dataflow Modeling.
LECTURE V TEST BENCHES. As your projects become more complex and multiple modules are employed, it will no longer be possible to simulate them as we did.
Digital System Design Verilog ® HDL Dataflow Modeling Maziar Goudarzi.
Boolean Algebra and Computer Logic Mathematical Structures for Computer Science Chapter 7 Copyright © 2006 W.H. Freeman & Co.MSCS Slides Boolean Logic.
Introduction to Verilog COE 202 Digital Logic Design Dr. Muhamed Mudawar King Fahd University of Petroleum and Minerals.
Structural Description
Basic Language Concepts
Reg and Wire:.
Verilog Introduction Fall
Timing Model Start Simulation Delay Update Signals Execute Processes
Lecture 2 Supplement Verilog-01
Introduction to DIGITAL CIRCUITS MODELING & VERIFICATION using VERILOG [Part-I]
Hardware Descriptive Languages these notes are taken from Mano’s book
UNIT 2: Data Flow description
OUTLINE Introduction Basics of the Verilog Language
ECE 434 Advanced Digital System L08
Introduction to Verilog
Hardware Descriptive Languages these notes are taken from Mano’s book
Lecture 3 Simulation and Testbench
Supplement on Verilog adder examples
The Verilog Hardware Description Language
Today’s Lab Start working with Xilinx
COE 202 Introduction to Verilog
Presentation transcript:

 Delay values control the time between the change in a right-hand-side operand and when the new value is assigned to the left- hand side.  Three ways of specifying delays in continuous assignment statements are: ◦ regular assignment delay, ◦ implicit continuous assignment delay, and ◦ net declaration delay.

 The first method is to assign a delay value in a continuous assignment statement.  The delay value is specified after the keyword assign. Any change in values of in1 or in2 will result in a delay of 10 time units before recomputation of the expression in1 & in2, and the result will be assigned to out.  If in1 or in2 changes value again before 10 time units when the result propagates to out, the values of in1 and in2 at the time of recomputation are considered. This property is called inertial delay.  An input pulse that is shorter than the delay of the assignment statement does not propagate to the output.

The waveform in Figure on right is generated by simulating the above assign statement. It shows the delay on signal out. Note the following changes. 1. When signals in1 and in2 go high at time 20, out goes to a high 10 time units later (time = 30). 2. When in1 goes low at 60, out changes to low at However, in1 changes to high at 80, but it goes down to low before 10 time units have elapsed. 4. Hence, at the time of recomputation, 10 units after time 80, in1 is 0. Thus, out gets the value 0. A pulse of width less than the specified assignment delay is not propagated to the output.

 An equivalent method is to use an implicit continuous assignment to specify both a delay and an assignment on the net. //implicit continuous assignment delay wire #10 out = in1 & in2; //same as wire out; assign #10 out = in1 & in2;

 A delay can be specified on a net when it is declared without putting a continuous assignment on the net.  If a delay is specified on a net out, then any value change applied to the net out is delayed accordingly.  Net declaration delays can also be used in gate- level modeling. //Net Delays wire # 10 out; assign out = in1 & in2; //The above statement has the same effect as the following wire out; assign #10 out = in1 & in2;

 Example: `timescale 1ns/100ps module HalfAdder (A, B, Sum, Carry); input A, B; output Sum, Carry; assign #3 Sum = A ^ B; assign #6 Carry = A & B; endmodule 8

9