VHDL Intro What does VHDL stand for? VHSIC Hardware Description Language VHSIC = Very High Speed Integrated Circuit Developed in 1982 by Govt. to standardize.

Slides:



Advertisements
Similar presentations
Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi
Advertisements

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.
Mridula Allani Fall 2010 (Refer to the comments if required) ELEC Fall 2010, Nov 21(Adopted from Profs. Nelson and Stroud)
Introduction to VHDL Dr. Adnan Shaout The University of Michigan-Dearborn.
Introduction to VHDL VHDL Tutorial R. E. Haskell and D. M. Hanna T1: Combinational Logic Circuits.
Lab Lecture 3 VHDL Architecture styles and Test Bench -Aahlad.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
1 Hardware description languages: introduction intellectual property (IP) introduction to VHDL and Verilog entities and architectural bodies behavioral,
Introduction to VHDL CSCE 496/896: Embedded Systems Witawas Srisa-an.
1/31/20081 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
HDL-Based Digital Design Part I: Introduction to VHDL (I) Dr. Yingtao Jiang Department Electrical and Computer Engineering University of Nevada Las Vegas.
VHDL. What is VHDL? VHDL: VHSIC Hardware Description Language  VHSIC: Very High Speed Integrated Circuit 7/2/ R.H.Khade.
Fall 08, Oct 29ELEC Lecture 7 (updated) 1 Lecture 7: VHDL - Introduction ELEC 2200: Digital Logic Circuits Nitin Yogi
Introduction to VHDL (part 2)
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.
IAY 0600 Digitaalsüsteemide disain Event-Driven Simulation Alexander Sudnitson Tallinn University of Technology.
VHDL TUTORIAL Preetha Thulasiraman ECE 223 Winter 2007.
A VHDL Tutorial ENG2410. ENG241/VHDL Tutorial2 Goals Introduce the students to the following: –VHDL as Hardware description language. –How to describe.
1 H ardware D escription L anguages Modeling Digital Systems.
Tutorial 1 Combinational Logic Synthesis. Introduction to VHDL VHDL = Very high speed Hardware Description Language VHDL and Verilog are the industry.
Sequential Statements
VHDL IE- CSE. What do you understand by VHDL??  VHDL stands for VHSIC (Very High Speed Integrated Circuits) Hardware Description Language.
CWRU EECS 317 EECS 317 Computer Design LECTURE 1: The VHDL Adder Instructor: Francis G. Wolff Case Western Reserve University.
Introduction to VLSI Design – Lec01. Chapter 1 Introduction to VLSI Systems Lecture # 6 Computer-Aided Design Technology for VLSI.
Module 1.2 Introduction to Verilog
Introduction to VHDL Spring EENG 2920 Digital Systems Design Introduction VHDL – VHSIC (Very high speed integrated circuit) Hardware Description.
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.
Introduction to VLSI Design – Lec01. Chapter 1 Introduction to VLSI Design Lecture # 11 High Desecration Language- Based Design.
HARDWARE DESCRIPTION LANGUAGE (HDL). What is HDL? A type of programming language for sampling and modeling of electronic & logic circuit designs It can.
1 component OR_3 port (A,B,C: in bit; Z: out bit); end component ; Reserved Words  Declarations of Components and Entities are similar  Components are.
Hardware languages "Programming"-language for modelling of (digital) hardware 1 Two main languages: VHDL (Very High Speed Integrated Circuit Hardware Description.
Introduction to ASIC flow and Verilog HDL
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.
Digital Design Using VHDL and PLDs ECOM 4311 Digital System Design Chapter 1.
Apr. 3, 2000Systems Architecture I1 Introduction to VHDL (CS 570) Jeremy R. Johnson Wed. Nov. 8, 2000.
VHDL ELEC 311 Digital Logic and Circuits Dr. Ron Hayne Images Courtesy of Cengage Learning.
IAY 0600 Digital Systems Design Event-Driven Simulation VHDL Discussion Alexander Sudnitson Tallinn University of Technology.
May 9, 2001Systems Architecture I1 Systems Architecture I (CS ) Lab 5: Introduction to VHDL Jeremy R. Johnson May 9, 2001.
Lecture #12 Page 1 ECE 4110– Digital Logic Design Lecture #12 Agenda 1.VHDL : Behavioral Design (Processes) Announcements 1.n/a.
1 Introduction to Engineering Spring 2007 Lecture 18: Digital Tools 2.
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.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
An Introduction to V.H.D.L.. Need of a Compiler… main( ) { int x=10,y=20,z; z = x + y ; printf ( “ %d “, z ); getch( ) ; } What’s That ? Give me only.
IAY 0600 Digital Systems Design
Combinational logic circuit
Structural style Modular design and hierarchy Part 1
Systems Architecture Lab: Introduction to VHDL
IAY 0600 Digitaalsüsteemide disain
HDL simulation and Synthesis (Marks16)
Behavioral Style Combinational Design with VHDL
Structural style Modular design and hierarchy Part 1
HDL Programming Fundamentals
IAY 0600 Digital Systems Design
ECE 4110–5110 Digital System Design
CPE/EE 422/522 Advanced Logic Design L06
ECE 434 Advanced Digital System L08
Peter J. Ashenden The University of Adelaide
VHDL VHSIC Hardware Description Language VHSIC
VHDL Discussion Subprograms
VHDL Structural Architecture
VHDL Introduction.
VHDL Discussion Subprograms
Sequntial-Circuit Building Blocks
Chapter 10 Introduction to VHDL
4-Input Gates VHDL for Loops
VHDL - Introduction.
Presentation transcript:

VHDL Intro What does VHDL stand for? VHSIC Hardware Description Language VHSIC = Very High Speed Integrated Circuit Developed in 1982 by Govt. to standardize the coded representation of hardware for govt. projects

Why use VHDL VHDL is for coding models of a digital system... Reasons for modeling –documentation –testing using simulation –formal verification –Synthesis – can optimize designs beyond practical means possible by regular person Goal –most ‘reliable’ design process, with minimum cost and time –avoid design errors! –Reuse libraries and designs already provided

VHDL Design Process Write module code Write a VHDL Driver program (TestBench) Simulation – Simulate your design using Modelsim on your TestBench Synthesis – Synthesize your design using a given set of constraints Verification (timing, etc) – Verify that the synthesized design works

VHDL Models Every VHDL model generally consists of one entity declaration –Entity Name/Identity of the module you want to design Declares number and types of ports that module uses Allows the internal algorithm or hardware representation of that entity to separated from its module reference (the entity is the black box)

VHDL Models VHDL models have one or more Architecture descriptions –The architecture description is the actual implementation of the entity reference (the inside of the black box) –Can have more than one architecture description to handle varying design cases Example, with a 32bit adder entity, you can have architecture descriptions for a slow, small carry- ripple adder, and a faster, bigger carry look ahead

VHDL Models Architectures for your entities can be coded using three different VHDL language constructs –Behavioral Sequential statements done in a special VHDL construct called a process –Dataflow Concurrent assignment statements –Structural Component instantiation and port mapping

Behavioral Used to model things that are sequential in nature (sequential logic for example) –Uses the idea of something called a process A process holds a block of sequential statements inside its code area A process is only executed when something in its sensitivity list changes –Inside process statement Can declare variables Use := operator with variable assignments Can use specialized keywords (such as wait, after) to simulate real world delays (example can include a global variable that simulates delay time of basic gates, then simulation timing will be more accurate

Behavioral Example process( S1, S2 )  Sensitivity list variable V1, V2: BIT;  Variable Declarations begin V1 := ’1’; –– This sets the value of V1 V2 := ’1’; –– This sets the value of V2 V1 := ’0’; –– This sets the new value of V1 V2 := ’0’; –– This sets the new value of V2 end process;

Dataflow Used to assign changes concurrently, value gets propagated from input to output whenever input changes Use the <= operator Remember, everything happens concurrently Generally a Dataflow item will synthesize to some sort of memory based hardware (latch or flip flop for clocked processes ) as storage is implied

Dataflow Example library IEEE; use IEEE.std_logic_1164.all; entity simpleAnd is port ( A: in STD_LOGIC; B: in STD_LOGIC; OUT: out STD_LOGIC ); end simpleAnd; architecture dataflowAnd of simpleAnd is begin OUT <= A & B; end dataflowAnd;

Structural Used when you want to include other modules in your current design. –First you instantiate a module and give it a unique name –Then you map its input/output ports into your current module using a port map

Structural Example architecture struct of comb_ckt is component AND_GATE is-- as entity of AND_GATE port( A:in std_logic; B:in std_logic; F1:out std_logic ); end component; component OR_GATE is-- as entity of OR_GATE port( X:in std_logic; Y:in std_logic; F2: out std_logic ); end component; begin Gate1: AND_GATE port map (A=>input1, B=>input2, F1=>wire); Gate2: OR_GATE port map (X=>wire, Y=>input3, F2=>output); end struct;

Overall Design All three different methods of design can be mixed in one architecture block Example – Finite State Machine Design –Data Flow design used to pick the next state assigned to state storage flip flop –Behavioral process block used to write logic that determines what the next state is

Other VHDL keywords Signals –Syntax: signal <= value –Used mostly in structural, dataflow designs –Cause simulation events to be created, but they will be handled during the next simulation delta –Can be considered as a wire (with the understanding of how the simulation delta affects it) Variables –Syntax: var:=expression –Can only be used in processes (behavioral designs) –Do not cause simulation events

Example - Variables Process statement using variables process (y) variable x,z : bit; begin x:=y; x now has the value of y after this line executes z:=x; z now has the value of x after this line executes end process; Question: Is z == x ? –Yes, because variables are updated immediately during the CURRENT simulation delta after every assignment

Example -Signals Process statement using signals … signal x,y,z : bit; … process (y) begin x<=y; x is assigned the value of y as soon as the process starts z<=x; z is assigned the OLD value of x as soon as the process starts end process; Question: Is z == x ? –NO, because when the assignment x<=y takes place, on the next simulation delta the change of x will be available not in the current simulation delta –z == old value of x