2-Jun-16EE5141 Chapter 3 ä The concept of the signal ä Process concurrency ä Delta time ä Concurrent and sequential statements ä Process activation by.

Slides:



Advertisements
Similar presentations
COE 405 VHDL Basics Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Dr. Aiman H. El-Maleh Computer Engineering.
Advertisements

2/16/09 Lab 3 Jorge Crichigno. 2/16/09 Half-adder.
Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi
1 Lecture 13 VHDL 3/16/09. 2 VHDL VHDL is a hardware description language. The behavior of a digital system can be described (specified) by writing a.
COE 405 Basic Concepts in VHDL Dr. Aiman H. El-Maleh Computer Engineering Department King Fahd University of Petroleum & Minerals Dr. Aiman H. El-Maleh.
Week 6.1Spring :332:331 Computer Architecture and Assembly Language Spring 2006 Week 6 VHDL Programming [Adapted from Dave Patterson’s UCB CS152.
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.
SubprogramsSubprograms. SubprogramsSubprograms ä Similar to subprograms found in other languages ä Allow repeatedly used code to be referenced multiple.
Topics of Lecture Structural Model Procedures Functions Overloading.
Topics Entity DeclarationsEntity Declarations Port ClausePort Clause Component DeclarationComponent Declaration Configuration DeclarationConfiguration.
VHDL. What is VHDL? VHDL: VHSIC Hardware Description Language  VHSIC: Very High Speed Integrated Circuit 7/2/ R.H.Khade.
Package with 4-valued logic Signal Attributes Assertion Data Flow description.
Today’s Lecture Process model –initial & always statements Assignments –Continuous & procedural assignments Timing Control System tasks.
Introduction to VHDL (part 2)
Advanced FPGA Based System Design Lecture-9 & 10 VHDL Sequential Code By: Dr Imtiaz Hussain 1.
1 Data Object Object Types A VHDL object consists of one of the following: –Signal, Which represents interconnection wires that connect component instantiation.
1 H ardware D escription L anguages Basic Language Concepts.
1 Data Object Object Types A VHDL object consists of one of the following: –Signal, Which represents interconnection wires that connect component instantiation.
VHDL Training ©1995 Cypress Semiconductor 1 Introduction  VHDL is used to:  document circuits  simulate circuits  synthesize design descriptions 
ECE 332 Digital Electronics and Logic Design Lab Lab 5 VHDL Design Styles Testbenches.
Modeling styles: 1. Structural Modeling: As a set of interconnected components (to represent structure), 2. Dataflow Modeling: As a set of concurrent assignment.
IAY 0600 Digitaalsüsteemide disain Event-Driven Simulation Alexander Sudnitson Tallinn University of Technology.
1 H ardware D escription L anguages Modeling Complex Systems.
A VHDL Tutorial ENG2410. ENG241/VHDL Tutorial2 Goals Introduce the students to the following: –VHDL as Hardware description language. –How to describe.
VHDL Introduction. V- VHSIC Very High Speed Integrated Circuit H- Hardware D- Description L- Language.
Basic Concepts in VHDL Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung University.
Module 1.2 Introduction to Verilog
Fall 2004EE 3563 Digital Systems Design EE 3563 VHDL – Basic Language Elements  Identifiers: –basic identifier: composed of a sequence of one or more.
Introduction to VHDL Spring EENG 2920 Digital Systems Design Introduction VHDL – VHSIC (Very high speed integrated circuit) Hardware Description.
IAY 0600 Digital Systems Design VHDL discussion Verification: Testbenches Alexander Sudnitson Tallinn University of Technology.
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.
Behavioural modelling Lecture 3. Outline 3.1. Processes. Sequential statements. WAIT statement Simulation mechanism Sequential signal assignment.
15-Dec-15EE5141 Chapter 4 Sequential Statements ä Variable assignment statement ä Signal assignment statement ä If statement ä Case statement ä Loop statement.
1/8/ L16 Timing & Concurrency III Copyright Joanne DeGroat, ECE, OSU1 Timing & Concurrency III Delay Model foundations for simulation and.
04/26/20031 ECE 551: Digital System Design & Synthesis Lecture Set : Introduction to VHDL 12.2: VHDL versus Verilog (Separate File)
VHDL Discussion Subprograms IAY 0600 Digital Systems Design Alexander Sudnitson Tallinn University of Technology 1.
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.
1/8/ L11 Project Step 5Copyright Joanne DeGroat, ECE, OSU1 Project Step 7 Behavioral modeling of a dual ported register set.
Midterm Exam ReviewCopyright Joanne DeGroat, ECE, OSU1 Midterm Exam Notes.
55:032 - Intro. to Digital DesignPage 1 VHDL and Processes Defining Sequential Circuit Behavior.
Lecture #10 Page 1 Lecture #10 Agenda 1.VHDL : Concurrent Signal Assignments 2.Decoders using Structural VHDL Announcements 1.HW #4 due 2.HW #5 assigned.
IAY 0600 Digital Systems Design VHDL discussion Verification: Testbenches Alexander Sudnitson Tallinn University of Technology.
Interacting Finite State Machine Design Shaun Murphy.
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.
ECE 4110–5110 Digital System Design
Introduction To VHDL 홍 원 의.
Basic Language Concepts
IAY 0600 Digitaalsüsteemide disain
HDL simulation and Synthesis (Marks16)
Behavioral Style Combinational Design with VHDL
Timing Model Start Simulation Delay Update Signals Execute Processes
Behavioral Style Combinational Design with VHDL
IAY 0600 Digital Systems Design
ECE 434 Advanced Digital System L08
IAS 0600 Digital Systems Design
Copyright Joanne DeGroat, ECE, OSU
VHDL Discussion Subprograms
VHDL Discussion Subprograms
IAS 0600 Digital Systems Design
How do you achieve deterministic concurrent simulation.
Timing & Concurrency II
Copyright Joanne DeGroat, ECE, OSU
Timing & Concurrency II
Timing & Concurrency II
4-Input Gates VHDL for Loops
EEL4712 Digital Design (VHDL Tutorial).
Presentation transcript:

2-Jun-16EE5141 Chapter 3 ä The concept of the signal ä Process concurrency ä Delta time ä Concurrent and sequential statements ä Process activation by a signal event ä Signal-valued & signal-related attributes ä Exercises

2-Jun-16EE5142 The concept of the signal Signal functions as connection line which transfers information between circuit parts  Signal properties present and future values timing delay event and transaction signal driver and signal resolution  Multiple drivers

2-Jun-16EE5143 Process concurrency ä NANXOR code entity NANDXOR is port ( port ( A, B : in bit; A, B : in bit; C : in bit; C : in bit; D : out bit); D : out bit); end NANDXOR; architecture RTL of NANDXOR is signal T : bit; signal T : bit;begin p0 : T <= A nand B after 2 ns; p0 : T <= A nand B after 2 ns; p1 : process (T, C) p1 : process (T, C) begin begin D <= T xor C after 3 ns; D <= T xor C after 3 ns; end process p1; end process p1; end RTL;

2-Jun-16EE5144 Process concurrency Signal T:bit; Defines T as the connection signal between NAND and OR gates. Initialization: signals set to their default (left most for their type) values Each process is evaluated and then suspended ActiveSuspended Running Select a process by a scheduler Signal event Update signal value Execution complete

2-Jun-16EE5145 Process concurrency architecture RTL of NANDXOR is signal T : bit; begin p0 : T <= A nand B after 2 ns; p1 : process (T, C) begin D <= T xor C after 3 ns; end process p1; end RTL;

2-Jun-16EE5146 Delta time architecture DELTA of NANDXOR is signal T : bit; begin p0 : T <= A nand B; p1 : process (T, C) begin D <= T xor C; end process p1; end DELTA;

2-Jun-16EE5147 Delta time ä Compare Figures 3.5 & 3.6

2-Jun-16EE5148 Delta time ä Waveforms at time 30

2-Jun-16EE5149 Delta time Processes p0, p1 have no time delay, but if the simulator continues to increase the delta delay, the delta goes up infinitely and the simulator may go into an infinite loop. Processes p0, p1 have no time delay, but if the simulator continues to increase the delta delay, the delta goes up infinitely and the simulator may go into an infinite loop.

2-Jun-16EE51410 Concurrent & sequential statements ä Concurrent statements ä Sequential statements if statement case and loop statements procedure call statement assert statement signal assignment statement variable assignment statement null, exit, and wait statements return and next statements block statement process statement generate statement procedure call statement assert statement signal assignment component instantiation

2-Jun-16EE51411 Concurrent & sequential statements VHDL coding rules ä Only concurrent statements can be inside the architecture statement part. ä Sequential statements can only appear inside the procedure and function body and inside the process statement. ä Signals are used to communicate among concurrent processes. ä Local variables can only be declared inside the procedure and function body and the process statement. They are not visible outside of the procedure, function, and process statement.

2-Jun-16EE51412 Concurrent & sequential statements ä Architecture VHDL code entity OVERALL is end OVERALL architecture RTL of OVERALL is --architecture declarative part begin --architecture statement part end RTL;

2-Jun-16EE51413 Concurrent & sequential statements

2-Jun-16EE51414 Process activation by a signal event architecture SLIST of NANDXOR is signal T : bit; signal T : bit;begin p0 : T <= A nand B; p0 : T <= A nand B; p1 : process (T) p1 : process (T) begin begin D <= T xor C; D <= T xor C; end process p1; end process p1; end SLIST;

2-Jun-16EE51415 Process activation by a signal event T is the sensitivity list of the p1 process (line 5 of SLIST architecture). Process is activated by a signal T event. A process statement requires an explicit wait statement or a process sensitivity list but not both. A process statement requires an explicit wait statement or a process sensitivity list but not both.

2-Jun-16EE51416 Process activation by a signal event Wrong simulation waveforms of the SLIST

2-Jun-16EE51417 Signal-valued & signal-related attributes ä SIG’delayed(T) defines a signal which is the signal SIG delayed by time T. T=0 ns is the default if parameter T is not specified. ä SIG’stable(T) defines a BOOLEAN signal whose value is TRUE if signal SIG has not had an event for the length of time T. T=0 ns is the default if parameter T is not specified. SIG’stable would be FALSE during the simulation cycle when SIG is changed and then returns to TRUE.

2-Jun-16EE51418 Signal-valued & signal-related attributes ä SIG’quiet(T) defines a BOOLEAN signal whose value is TRUE if signal SIG has not had an transaction (not active) for the length of time T. T=0 ns is the default. SIG’quiet would be FALSE during the simulation cycle when SIG is assigned to and then returns to TRUE. ä SIG’transaction defines a BIT signal whose value toggles each time a transaction occurs on signal SIG.

2-Jun-16EE51419 Signal-valued & signal-related attributes ä SIG’event is a BOOLEAN typed attribute. It is true if an event occurs on signal SIG during the current simulation cycle. ä SIG’active is a BOOLEAN typed attribute. It is true if a tranction occurs on signal SIG during the current simulation cycle. ä SIG’last_event is a TIME typed attribute. It returns the amount of time elapsed since the last event on signal SIG.

2-Jun-16EE51420 Signal-valued & signal-related attributes ä SIG’last_active is a TIME typed attribute.It returns the amount of time elapsed since the last transaction on signal SIG. ä SIG’last_value returns the value of signal SIG before the last event on signal SIG.

2-Jun-16EE51421 Exercises entity RUNAWAY is port ( port ( X : in bit; X : in bit; Z : out bit); Z : out bit); end RUNAWAY; Is it possible for a VHDL simulator to run forever without advancing simulation time? For example, Figure 3.13 shows a NAND gate with its output connecting to one of its inputs architecture RTL of RUNAWAY is signal T : bit; signal T : bit;begin T <= X nand T; T <= X nand T; Z <= T; Z <= T; end RTL;