1 Data Object Object Types A VHDL object consists of one of the following: –Signal, Which represents interconnection wires that connect component instantiation.

Slides:



Advertisements
Similar presentations
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.
Advertisements

9/18/08 Lab 2 - Solution TA: Jorge. 9/18/08 Half-adder.
Introduction to VHDL VHDL Tutorial R. E. Haskell and D. M. Hanna T1: Combinational Logic Circuits.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
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.
VHDL Intro What does VHDL stand for? VHSIC Hardware Description Language VHSIC = Very High Speed Integrated Circuit Developed in 1982 by Govt. to standardize.
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
4-to-1 Multiplexer: case Statement Discussion D2.3 Example 6.
331 W05.1Spring :332:331 Computer Architecture and Assembly Language Spring 2006 Week 5: VHDL Programming [Adapted from Dave Patterson’s UCB CS152.
VHDL. What is VHDL? VHDL: VHSIC Hardware Description Language  VHSIC: Very High Speed Integrated Circuit 7/2/ R.H.Khade.
Introduction to VHDL (part 2)
Advanced FPGA Based System Design Lecture-9 & 10 VHDL Sequential Code By: Dr Imtiaz Hussain 1.
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.
ECE 332 Digital Electronics and Logic Design Lab Lab 5 VHDL Design Styles Testbenches.
Circuit Simulation 1) Functional simulation :- Propagation delay through the circuit are neglected. 2) Timing simulation :- Propagation delay through the.
IAY 0600 Digitaalsüsteemide disain Event-Driven Simulation Alexander Sudnitson Tallinn University of Technology.
A.7 Concurrent Assignment Statements Used to assign a value to a signal in an architecture body. Four types of concurrent assignment statements –Simple.
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.
ENG6090 RCS1 ENG6090 Reconfigurable Computing Systems Hardware Description Languages Part 5: Modeling Structure.
7/10/2007DSD,USIT,GGSIPU1 Basic concept of Sequential Design.
Language Concepts Ver 1.1, Copyright 1997 TS, Inc. VHDL L a n g u a g e C o n c e p t s Page 1.
RTL Hardware Design by P. Chu Chapter Basic VHDL program 2. Lexical elements and program format 3. Objects 4. Data type and operators RTL Hardware.
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.
VHDL for Combinational Circuits. VHDL We Know Simple assignment statements –f
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.
Copyright(c) 1996 W. B. Ligon III1 Getting Started with VHDL VHDL code is composed of a number of entities Entities describe the interface of the component.
(1) Basic Language Concepts © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Chapter 5 Introduction to VHDL. 2 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
George Mason University Simple Testbenches ECE 545 Lecture 4.
16/11/2006DSD,USIT,GGSIPU1 Packages The primary purpose of a package is to encapsulate elements that can be shared (globally) among two or more design.
VHDL Discussion Sequential Sytems. Memory Elements. Registers. Counters IAY 0600 Digital Systems Design Alexander Sudnitson Tallinn University of Technology.
1 Part III: VHDL CODING. 2 Design StructureData TypesOperators and AttributesConcurrent DesignSequential DesignSignals and VariablesState Machines A VHDL.
04/26/20031 ECE 551: Digital System Design & Synthesis Lecture Set : Introduction to VHDL 12.2: VHDL versus Verilog (Separate File)
BASIC VHDL LANGUAGE ELEMENTS Digital Design for Instrumentation with VHDL 1.
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.
VHDL Tutorial.
George Mason University Behavioral Modeling of Sequential-Circuit Building Blocks ECE 545 Lecture 8.
EGRE 6311 LHO 04 - Subprograms, Packages, and Libraries EGRE 631 1/26/09.
IAY 0600 Digital Systems Design VHDL discussion Structural style Modular design and hierarchy Part 1 Alexander Sudnitson Tallinn University of Technology.
1 - CPRE 583 (Reconfigurable Computing): VHDL overview 1 Iowa State University (Ames) CPRE 583 Reconfigurable Computing Lecture 2: 8/26/2011 (VHDL Overview.
1 Introduction to Engineering Spring 2007 Lecture 18: Digital Tools 2.
Structural style Modular design and hierarchy Part 1
Basic Language Concepts
IAY 0600 Digitaalsüsteemide disain
Behavioral Style Combinational Design with VHDL
IAY 0600 Digital Systems Design
Dataflow Style Combinational Design with VHDL
Structural style Modular design and hierarchy Part 1
Behavioral Style Combinational Design with VHDL
IAS 0600 Digital Systems Design
ECE 434 Advanced Digital System L08
Signal & Variables April 14,2007 DSD,USIT,GGSIPU.
IAS 0600 Digital Systems Design
Instructions to get MAX PLUS running
VHDL Discussion Subprograms
CPE 528: Lecture #3 Department of Electrical and Computer Engineering University of Alabama in Huntsville.
VHDL Discussion Subprograms
IAS 0600 Digital Systems Design
Modeling Complex Behavior
ECE 545 Lecture 5 Simple Testbenches.
Data Object By E. Thirumeni Department of Electronics
4-Input Gates VHDL for Loops
EEL4712 Digital Design (Lab 1)
(Simple Testbenches & Arithmetic Operations)
Presentation transcript:

1 Data Object Object Types A VHDL object consists of one of the following: –Signal, Which represents interconnection wires that connect component instantiation ports together. –Variable, Which is used for local storage of temporary data, visible only inside a process. –Constant, which names specific values.

2 Objects Objects are used to represent & store the data in the system being described in VHDL. Object contains a value of a specific type. The name given to object is called identifier. Each object has a type & class. –Class indicates how the object is used in the model & what can be done with the object. –Type indicates what type of data the object contains.

3 Signal Signal objects are used to connect entities together to form models. Signals are the means for communication of dynamic data between entities. A signal declaration looks like this: Signal Signal_name : Signal_type [:= initial_value] The Keyword SIGNAL is followed by one or more signal names.

4 Each Signal name creates a new signal. Separating the signal names from the signal type is colon. Signal type specifies the data type of the information that the signal contains. The signal can contain an initial value specifier so that the signal value may initialized. Signals can be declared in entity declaration sections, architecture declarations and package declarations.

5 Signals in package declaration are also referred to as global signals because they can be shared among entities. Each signal has a history of values I.e. holds a list of values which include current value of signal & set of possible future values that are to appear on the signal. Computed value is assigned to signal after delay called ‘delta delay’.

6 Example : Signal library ieee; use ieee.std_logic_1164.all; entity signal_example is port (a : in std_logic_vector(7 downto 0); y: out std_logic ); end signal_example;

7 architecture behave_signal of signal_example is signal temp : std_logic; begin process (a) begin temp <= '1'; for i in 0 to 7 loop temp <= temp xor a(i); end loop; y <= temp; end process; end behave_signal;

8 Waveform Waveform show one input only

9 Variable Variable are used for local storage in process statements and subprograms. All assignment to variable occur immediately. A variable declaration looks like this: Variable variable_name: variable_type [: value]

10 The keyword VARIABLE is followed by one or more variable names. Each name creates a new variable. The construct variable_type defines the data type of the variable, and an optional initial value can be specified. Variable can be declared in the process declaration and subprogram declaration sections only.

11 Variable are inherently more efficient because assignments happen immediately, while signals must be scheduled to occur. Variables take less memory, while signals need more information to allow for scheduling and signal attributes. Using a Signal would have required a WAIT statement to synchronize the signal assignment to the same execution iteration as the usage.

12 Example - Variable library ieee; use ieee.std_logic_1164.all; entity variable_example is port (a : in std_logic_vector(7 downto 0); y: out std_logic ); end variable_example;

13 architecture behave_variable of variable_example is begin process (a) variable temp: std_logic; begin temp := '0'; for i in 0 to 7 loop temp := temp xor a(i); end loop; y <= temp; end process; end behave_variable;

14

15 Signal vs Variables A Signal has three properties attached to it: type, value and time. while a variable has only two properties attached to it type and value. Use signals as channels of communication between concurrent statement. In non-synthesizeable models, avoid using signals to describe storage elements. Use variable instead. Signals occupy about two orders of magnitude more storage than variable during simulation. Signals also cost a performance penalty due to the simulation overhead necessary to maintain the data structures representing signals.

16 Constants Constant objects are names assigned to specific values of a type. Constants give the designer the ability to have a better-documented model, and a model that is easy to update. Constant declaration : Constant constant_name : type_name [:value];