Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi

Slides:



Advertisements
Similar presentations
Digital System Design Subject Name : Digital System Design Course Code : IT-314.
Advertisements

ENEL111 Digital Electronics
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.
OBJECTIVES Learn the history of HDL Development. Learn how the HDL module is structured. Learn the use of operators in HDL module. Learn the different.
Introduction To VHDL for Combinational Logic
INTRO TO VHDL Appendix A: page page VHDL is an IEEE and ANSI standard. VHDL stands for Very High Speed IC hardware description language.
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 (Lecture #5) ECE 331 – Digital System Design The slides included herein were taken from the materials accompanying Fundamentals of.
© Dr. Alaaeldin Amin 1 Hardware Modeling & Synthesis Using VHDL Very High Speed Integrated Circuits Start Of VHDL Development First Publication.
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.
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.
ECE 331 – Digital System Design Course Introduction and VHDL Fundamentals (Lecture #1)
VHDL. What is VHDL? VHDL: VHSIC Hardware Description Language  VHSIC: Very High Speed Integrated Circuit 7/2/ R.H.Khade.
Dr. Turki F. Al-Somani VHDL synthesis and simulation – Part 1 Microcomputer Systems Design (Embedded Systems)
VLSI Design Lab Introduction
(1) Introduction © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
GOOD MORNING.
Fall 08, Oct 29ELEC Lecture 7 (updated) 1 Lecture 7: VHDL - Introduction ELEC 2200: Digital Logic Circuits Nitin Yogi
Introduction to VHDL By Mr. Fazrul Faiz Zakaria School of Computer and Communication Engineering UniMAP.
ECE 332 Digital Electronics and Logic Design Lab Lab 5 VHDL Design Styles Testbenches.
An Introduction to VHDL Using Altera’s Quartus II IDE Dr. William M. Jones Coastal Carolina University Numbers and Bytes Meeting 20 OCT 2008.
1 Digital System Design Subject Name : Digital System Design Course Code : IT- 308 Instructor : Amit Prakash Singh Home page :
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.
CSET 4650 Field Programmable Logic Devices Dan Solarek Introduction to VHDL An Overview / Review.
COE 405 Design and Modeling of Digital Systems
VHDL IE- CSE. What do you understand by VHDL??  VHDL stands for VHSIC (Very High Speed Integrated Circuits) Hardware Description Language.
L12 – VHDL Overview. VHDL Overview  HDL history and background  HDL CAD systems  HDL view of design  Low level HDL examples  Ref: text Unit 10, 17,
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 Hardware Description Languages: a Comparison of AHPL and VHDL By Tamas Kasza AHPL&VHDL Digital System Design 1 (ECE 5571) Spring 2003 A presentation.
Introduction to VHDL Simulation … Synthesis …. The digital design process… Initial specification Block diagram Final product Circuit equations Logic design.
Hardware languages "Programming"-language for modelling of (digital) hardware 1 Two main languages: VHDL (Very High Speed Integrated Circuit Hardware Description.
M.Mohajjel. Digital Systems Advantages Ease of design Reproducibility of results Noise immunity Ease of Integration Disadvantages The real world is analog.
Chapter 5 Introduction to VHDL. 2 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
CEC 220 Digital Circuit Design Introduction to VHDL Wed, February 25 CEC 220 Digital Circuit Design Slide 1 of 19.
VHDL Background Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung University.
ELEE 4303 Digital II Introduction to Verilog. ELEE 4303 Digital II Learning Objectives Get familiar with background of HDLs Basic concepts of Verilog.
04/26/20031 ECE 551: Digital System Design & Synthesis Lecture Set : Introduction to VHDL 12.2: VHDL versus Verilog (Separate File)
5-1 Logic System Design I VHDL Design Principles ECGR2181 Reading: Chapter 5.0, 5.1, 5.3 port ( I: in STD_LOGIC_VECTOR (1 to 9); EVEN, ODD: out STD_LOGIC.
Basic VHDL RASSP Education & Facilitation Module 10 Version 2.02 Copyright  RASSP E&F All rights reserved. This information is copyrighted by.
Digital Design Using VHDL and PLDs ECOM 4311 Digital System Design Chapter 1.
VHDL Programming Fundamentals Presented By Dr. Pradyut Kumar Biswal Department of Electronics, IIIT Bhubaneswar.
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.
May 9, 2001Systems Architecture I1 Systems Architecture I (CS ) Lab 5: Introduction to VHDL Jeremy R. Johnson May 9, 2001.
Verilog Intro: Part 1. Hardware Description Languages A Hardware Description Language (HDL) is a language used to describe a digital system, for example,
CEC 220 Digital Circuit Design Introduction to VHDL Wed, Oct 14 CEC 220 Digital Circuit Design Slide 1 of 19.
VHDL From Ch. 5 Hardware Description Languages. History 1980’s Schematics 1990’s Hardware Description Languages –Increased due to the use of Programming.
1 Introduction to Engineering Spring 2007 Lecture 18: Digital Tools 2.
SUBJECT : DIGITAL ELECTRONICS CLASS : SEM 3(B) TOPIC : INTRODUCTION OF VHDL.
Combinational Logic Design
Systems Architecture Lab: Introduction to VHDL
Subject Name: FUNDAMENTALS OF HDL Subject Code: 10EC45
Design Entry: Schematic Capture and VHDL
VHDL VHSIC Hardware Description Language VHSIC
VHDL Introduction.
Hardware Modeling & Synthesis Using VHDL
Digital Designs – What does it take
EEL4712 Digital Design (VHDL Tutorial).
VHDL - Introduction.
Presentation transcript:

Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi

Design Hierarchy Design Specification & Requirement Behavioral Design Register Transfer Level (RTL) Design Logic Design Circuit Design Physical Design Manufacturing Circuit Design

Design Automation (DA) Automatic doing task in design process: – Transforming one form of design to another –Verifying functionality and timing of design –Generating test sequence for design validation –Documentation –…

Hardware Description Languages (HDLs) Describing Hardware for: –Design & Modeling –Simulation –Synthesis –Testing –Documentation –…

VHDL History Initiated with VHSIC project in 1981 by DoD –VHSIC: Very High Speed Integrated Circuits In 1983 DoD established requirements for VHSIC HDL (VHDL) In 1987 VHDL became an IEEE standard: VHDL In 1993 a new version of VHDL released: VHDL

VHDL Specifications Designing in Various Levels of Abstraction: from Behavioral to Gate Level Support for Design Hierarchy (Structural Design) Library Support Support of Generic Design Timing Control Concurrent & Sequential Statements Type Declaration..

Components in VHDL Each Component in VHDL is described as an ENTITY - ARCHITECTURE pair ENTITY part describes the interface of component ARCHITECTURE part describes the functionality and timing of component An ENTITY may have different ARCHITECTURES, describing the component at various levels and with different details of timing and functionality

ENTITY Declaration ENTITY entity_name IS generic clause port clause END ENTITY entity_name ; ENTITY and3 IS GENERIC (delay: TIME := 5 ns); PORT (a, b, c : IN BIT; z : OUT BIT); END and3;

Ports Ports are Component Interface Signals Each Port has: –Name –Mode IN: Input signals OUT: Output Signals INOUT: Bidirectional Signals BUFFER: Like OUT from outside the component & INOUT from Inside it –Type

Standard Types Standard Package Types: –BIT –BIT_VECTOR –BOOLEAN –INTEGER –REAL –TIME –CHARACTER –STRING

ARCHITECTURE Declaration ARCHITECTURE arch_name OF entity_name IS architecture declarative part BEGIN concurrent statements END ARCHITECTURE arch_name ; ARCHITECTURE single_delay OF and3 IS BEGIN z <= a AND b AND c AFTER delay ; END single_delay ;

Concurrent Statements Concurrent Signal Assignment Component Instantiation Statement Generate Statement Process Statement Block Statement Concurrent Procedure Call Statement Concurrent Assert Statement

Concurrent Signal Assignment Conditional Signal Assignment Statement Selected Signal Assignment Statement

Conditional Signal Assignment target <= conditional_waveforms; conditional_waveforms ::= { waveform WHEN condition ELSE } waveform [ WHEN condition] waveform ::= waveform_element {, waveform_element} | UNAFFECTED waveform_element ::= value_expression [AFTER time_expression] | NULL [AFTER time_expression]

Conditional Signal Assignment Examples a <= b; a <= ‘ 0 ’ AFTER 10 ns ; x <= a AND b OR c ; y <= a AFTER 1 ns WHEN x = y ELSE b ; z <= a AND b, c AFTER 5 ns, ‘ 1 ’ AFTER 30 ns WHEN NOW < 1 ms ELSE ‘ 0 ’, a AFTER 4 ns, c OR d AFTER 10 ns;

2 Input NAND Gate ENTITY nand2 IS PORT (a, b: IN BIT; z: OUT BIT); END nand2; ARCHITECTURE no_delay OF nand2 IS BEGIN z <= a NAND b; END no_delay;

3 Input NAND Gate ENTITY nand3 IS PORT (a, b, c: IN BIT; z: OUT BIT); END nand3; ARCHITECTURE no_delay OF nand3 IS BEGIN z <= NOT (a AND b AND c); END no_delay;

2:1 MUX ENTITY Mux2x1 IS PORT (a0, a1, sel: IN BIT; z: OUT BIT); END Mux2x1; ARCHITECTURE conditional OF Mux2x1 IS BEGIN z <= a0 WHEN sel = ‘ 0 ’ ELSE a1; END conditional;

VHDL Operators Logical AND, NAND, OR, NOR, XOR, XNOR Relational =, /=,, >= Shift SLL, SRL, SLA, SRA, ROL, ROR Adding +, -, & Sign +, - Multiplying *, /, MOD, REM Miscellaneous ABS, **

Selected Signal Assignment WITH expression SELECT target <= selected_waveforms ; selected_waveforms ::= { waveform WHEN choices, } waveform WHEN choices choices ::= choice { | choice } choice ::= expression | range | simple_name | OTHERS

2:1 MUX ARCHITECTURE selected OF Mux2x1 IS BEGIN WITH sel SELECT z <= a0 WHEN ‘ 0 ’, a1 WHEN ‘ 1 ’ ; -- a1 WHEN OTHERS; END selected;

Component Instantiation Statement label: instantiated_unit [ GENERIC MAP (association_list) ] [ PORT MAP (association_list) ] ; instantiated_unit ::= [COMPONENT] component_name | ENTITY entity_name [ (architecture_name) ] | CONFIGURATION configuration_name association_list ::= association_element {, association_element } association_element ::= [ formal_part => ] actual_part

4:1 MUX (using entity) ENTITY Mux4x1 IS PORT (a : IN BIT_VECTOR(3 DOWNTO 0); sel: IN BIT_VECTOR(0 TO 1) ; z: OUT BIT); END Mux4x1; ARCHITECTURE mux2x1_based OF Mux4x1 IS SIGNAL im0, im1 : BIT; BEGIN m1: ENTITY WORK.Mux2x1(conditional) PORT MAP (a(0), a(1), sel(0), im0); m2: ENTITY WORK.Mux2x1(conditional) PORT MAP (a(2), a(3), sel(0), im1); m3: ENTITY WORK.Mux2x1(selected) PORT MAP (im0, im1, sel(1), z); END mux2x1_based;

4:1 MUX (using component) ARCHITECTURE comp_based OF Mux4x1 IS SIGNAL im0, im1 : BIT; COMPONENT mux2 PORT (a0, a1, sel: IN BIT; z: OUT BIT); END COMPONENT; FOR ALL: mux2 USE ENTITY WORK.Mux2x1(conditional); BEGIN m1: mux2 PORT MAP (a(0), a(1), sel(0), im0); m2: mux2 PORT MAP (a(2), a(3), sel(0), im1); m3: mux2 PORT MAP (a0 =>im0, a1 =>im1, sel =>sel(1), z => z); END comp_based;

4:1 MUX (another binding) ARCHITECTURE another OF Mux4x1 IS SIGNAL im0, im1 : BIT; COMPONENT mux2 PORT (a0, a1, sel: IN BIT; z: OUT BIT); END COMPONENT; FOR m1, m2: mux2 USE ENTITY WORK.Mux2x1(conditional); FOR OTHERS: mux2 USE ENTITY WORK.Mux2x1(selected); BEGIN m1: mux2 PORT MAP (a(0), a(1), sel(0), im0); m2: mux2 PORT MAP (a(2), a(3), sel(0), im1); m3: mux2 PORT MAP (a0 =>im0, a1 =>im1, sel =>sel(1), z => z); END another;

Testing the Mux4x1 ENTITY test_mux4x1 IS END test_mux4x1; ARCHITECTURE test1 OF test_mux4x1 IS SIGNAL inp: BIT_VECTOR(3 DOWNTO 0); SIGNAL sel: BIT_VECTOR(1 DOWNTO 0); SIGNAL outp: BIT; BEGIN comp: ENTITY Mux4x1(another) PORT MAP (inp, sel, outp); inp <= "0101", "1101" AFTER 50 ns, "1110" AFTER 100 ns, "0011" AFTER 200 ns; sel <= "00", "01" AFTER 20 ns, "11" AFTER 60 ns, "10" AFTER 90 ns, "00" AFTER 180 ns; END test1;