Introduction to VHDL CLASS MATERIALS EECE 255. Very High Speed Integrated Circuit Hardware Description Language Industry standard language to describe.

Slides:



Advertisements
Similar presentations
06/10/071 Security System Using VHDL. 06/10/072 Project Members Amal Shanavas Aneez I Ijas Rahim Renjith S Menon Sajid S Chavady.
Advertisements

3-13 Alternate Logic-Gate Representations
VHDL in digital circuit synthesis (tutorial) dr inż. Miron Kłosowski EA 309
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.
VHDL Refresher ECE 437 April 13, 2015 Motivation ECE 337 is a prerequisite But… –You may have taken 337 a few semesters previous –Breaks causes memory.
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.
Multiplexers Section 3-7 Mano & Kime. Multiplexers & Demultiplexers Multiplexers (Selectors) Lab 1 – Behavioral VHDL -- Multiplexers MUX as a Universal.
Multiplexer as a Universal Function Generator Lecture L6.7 Section 6.2.
LECTURE 4: The VHDL N-bit Adder
CSE 341 Verilog HDL An Introduction. Hardware Specification Languages Verilog  Similar syntax to C  Commonly used in  Industry (USA & Japan) VHDL 
Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi
VHDL1 INTRODUCTION TO VHDL (VERY-HIGH-SPEED-INTEGRATED-CIRCUITS HARDWARE DESCRIPTION LANGUAGE) KH WONG (Some pictures are obtained from FPGA Express VHDL.
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.
History TTL-logic PAL (Programmable Array Logic)
Logic Design Fundamentals - 1 Lecture L1.1. Logic Design Fundamentals - 1 Basic Gates Basic Combinational Circuits Basic Sequential Circuits.
Introduction to VHDL (Lecture #5) ECE 331 – Digital System Design The slides included herein were taken from the materials accompanying Fundamentals of.
Introduction to VHDL VHDL Tutorial R. E. Haskell and D. M. Hanna T1: Combinational Logic Circuits.
VHDL Data Types Module F3.1. VHDL Data Types Scalar Integer Enumerated Real (floating point)* Physical* Composite Array Record Access (pointers)* * Not.
Introduction to VHDL Multiplexers. Introduction to VHDL VHDL is an acronym for VHSIC (Very High Speed Integrated Circuit) Hardware Description Language.
Introduction to VHDL CSCE 496/896: Embedded Systems Witawas Srisa-an.
ELEN 468 Lecture 191 ELEN 468 Advanced Logic Design Lecture 19 VHDL.
Basic Gates Discussion D2.1. Basic Gates NOT Gate AND Gate OR Gate XOR Gate NAND Gate NOR Gate XNOR Gate.
Multiplexer as a Universal Function Generator
Programming in VHDL Using Processes. How Processes Run A process is either in suspend mode or is running. For a process to run, there has to be a change.
The IEEE Libraries And Examples Using Functions. Libraries Using the Library Command VHDL allows libraries defined using: library LibraryName; Here, we.
Dr. Turki F. Al-Somani VHDL synthesis and simulation – Part 1 Microcomputer Systems Design (Embedded Systems)
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 Part I: VHDL CODING. 2 Design StructureData TypesOperators and AttributesConcurrent DesignSequential DesignSignals and VariablesState Machines A VHDL.
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.
Purpose of IEEE library in VHDL By Srujana Aramalla Instructor: Dr.Albert B. Grubbs.
Lecture 3 Chap 4 Types Instructors: Fu-Chiung Cheng ( 鄭福炯 ) Associate Professor Computer Science & Engineering Tatung University.
陳慶瀚 機器智慧與自動化技術 (MIAT) 實驗室 國立中央大學資工系 2009 年 10 月 8 日 ESD-04 VHDL 硬體描述語言概論 VHDL Hardware Description Language.
Reconfigurable Computing - VHDL John Morris Chung-Ang University The University of Auckland.
Basic Overview of VHDL Matthew Murach Slides Available at:
1 Introduction to VHDL Spring What is VHDL? VHDL can be uses to model and synthesise digital systems. VHDL = VHSIC Hardware Description Language.
Introduction to VHDL Spring EENG 2920 Digital Systems Design Introduction VHDL – VHSIC (Very high speed integrated circuit) Hardware Description.
VHDL Very High Speed Integrated Circuit Hardware Description Language Shiraz University of shiraz spring 2011.
Reconfigurable Computing - VHDL John Morris Computer Science/ Electrical and Computer Engineering The University of Auckland Iolanthe racing off Fremantle,
1 Introduction to VHDL part 1 Fall Preliminary Class web page egre365/index.html Syllabus Grades: –Quizzes.
Electrical and Computer Engineering University of Cyprus LAB 1: VHDL.
HARDWARE DESCRIPTION LANGUAGE (HDL). What is HDL? A type of programming language for sampling and modeling of electronic & logic circuit designs It can.
Ch.2 Part E: VHDL, SystemC EECE **** Embedded System Design.
Chapter 5 Introduction to VHDL. 2 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
DATA TYPES 1.Pre-Defined Data Types 2. User-Defined Data Types.
CEC 220 Digital Circuit Design Introduction to VHDL Wed, February 25 CEC 220 Digital Circuit Design Slide 1 of 19.
ELEE 4303 Digital II Introduction to Verilog. ELEE 4303 Digital II Learning Objectives Get familiar with background of HDLs Basic concepts of Verilog.
BASIC VHDL LANGUAGE ELEMENTS Digital Design for Instrumentation with VHDL 1.
VHDL Programming Fundamentals Presented By Dr. Pradyut Kumar Biswal Department of Electronics, IIIT Bhubaneswar.
© 2009 Pearson Education, Upper Saddle River, NJ All Rights ReservedFloyd, Digital Fundamentals, 10 th ed Digital Logic Design Dr. Oliver Faust.
Introduction to VHDL Coding Wenchao Cao, Teaching Assistant Department of EECS University of Tennessee.
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.
EECE 320 L8: Combinational Logic design Principles 1Chehab, AUB, 2003 EECE 320 Digital Systems Design Lecture 8: Combinational Logic Design Principles.
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.
Digital Fundamentals Floyd Chapter 3 Tenth Edition
Subject Name: FUNDAMENTALS OF HDL Subject Code: 10EC45
Design Entry: Schematic Capture and VHDL
Engr. Micaela Renee Bernardo
Digital Signals Digital Signals have two basic states:
CPE 528: Lecture #4 Department of Electrical and Computer Engineering University of Alabama in Huntsville.
Digital Fundamentals Floyd Chapter 3 Tenth Edition
HDL Hardware Description Language
CPE 528: Lecture #3 Department of Electrical and Computer Engineering University of Alabama in Huntsville.
VHDL Data Types Module F3.1.
Chapter 10 Introduction to VHDL
EEL4712 Digital Design (VHDL Tutorial).
Presentation transcript:

Introduction to VHDL CLASS MATERIALS EECE 255

Very High Speed Integrated Circuit Hardware Description Language Industry standard language to describe hardware Originated from work in 70’s & 80’s by the U.S. Department of Defence Root : ADA Language ► a structured, statically typed, imperative and object-oriented high-level computer programming language based on Pascal In 1986, VHDL was proposed as an IEEE standard, and in 1987, it was adopted as the IEEE 1076 standard

VHDL Format : Library (1) Library files have commonly used packages and entities in your design. A VHDL package file contains common design elements that you can use in the VHDL file source files that make up design. IEEE created the IEEE VHDL library and std_logic type in standard Parts of the IEEE library can be included in an entity by inserting lines like these before your entity declaration Ex. library ieee; use ieee.std_logic_1164.all; most case use ieee.std_logic_arith.all;

VHDL Format : Library (2) std_logic_1164 : defines the basic std_logic data type and a few functions ‘0’ : logic 0, ‘1’ : logic 1, ‘-’ : Don’t care, 'U': uninitialized, 'X': unknown 'Z': High Impedance, 'W': Weak signal, can't tell if it should be 0 or 1. 'L': Weak signal that should probably go to 0 'H': Weak signal that should probably go to 1 logic operation : and, nand, or, nor, xor, xnor, not Ex. signal s1, s2 : std_logic; variable v1, v2 : std_logic; s1 <= ‘0’; v1 := ‘1’; s2 <= ‘X’; wait for 10 ns; s2 <= s1 and v1; -- ‘0’ v2 := s1 or v1; -- ‘1’

VHDL Format : Library (3) std_logic_arith : defines some types and basic arithmetic operations for representing integers in standard ways a few functions arithmetic functions : +, -, * comparison functions :, =, =, /= and etc. Ex. signal u1, u2 : unsigned (3 downto 0); signal s1 : signed (3 downto 0); signal s2 : signed (4 downto 0); signal v2 : std_logic_vector (4 downto 0); u1 <= “1001”; -- = 9 s1 <= “1001”; -- = -7 wait for 10 ns; s2 <= u1 + s1; -- = 2 v2 := u1 + s1; -- = “0010”

VHDL Format : Library (4) std_logic_unsigned : defines all of the same arithmatic (+, -, *), compaison (, >=, =, /=) and shift (shl, shr) operations as the std_logic_arith library. This difference is that the extensions will take std_logic_vector values as arguments and treat them as unsigned integers ↔ std_logic_signed Ex. signal u1, u2 : unsigned (3 downto 0); signal s1 : signed (3 downto 0); signal s2 : signed (4 downto 0); signal v2 : std_logic_vector (4 downto 0); u1 <= “1001”; -- = 9 s1 <= “1001”; -- = -7 『 』

VHDL Format : Entity (1) Specifies the name of entity, the port of the entity and entity-related information. Ex 1. ENTITY and2 IS PORT ( a, b : IN BIT; c : OUT BIT ); END and2 A B C

VHDL Format : Entity (2) Ex 2. ENTITY mux4 IS PORT ( i0, i1, i2, i3, a, b : IN std_logic; q : OUT std_logic ); END mux4 I0 I1 I2 I3 AB Q → PORT ( i0, i1, i2, i3 : IN std_logic; a, b : IN std_logic;

VHDL Format : Architecture (1) Describes the underlying functionality of the entity and contains the statements that model the behavior of the entity, always related to the entity and describes the behavior of that entity Why make connection between architecture and entity? ► the entity can have multiple architectures describing the behavior of the entity Ex. ARCHITECTURE dataflow of mux4 IS SIGNAL select : INTEGER; BEGIN select <= 0 WHEN A = ‘0’ AND B = ‘0’ ELSE 1 WHEN A = ‘1’ AND B = ‘0’ ELSE 2 WHEN A = ‘0’ AND B = ‘1’ ELSE 3 ; Q <= i0 AFTER 0.5 NS WHEN select = 0 ELSE i1 AFTER 0.5 NS WHEN select = 1 ELSE i2 AFTER 0.5 NS WHEN select = 2 ELSE i3 ; END dataflow Concurrent Assignment Event Scheduling

VHDL Format : Architecture (2) STRUCTURAL DESIGN

VHDL Format : Architecture (3) STRUCTURAL DESIGN Ex. ARCHITECTURE netlist of mux IS COMPONENT andgate port ( a, b, c : IN bit; d : OUT bit) ; END COMPONENT ; COMPONENT inverter port ( in1 : IN bit; x : OUT bit) ; END COMPONENT ; COMPONENT orgate port ( a, b, c, d : IN bit; x : OUT bit) ; END COMPONENT SIGNAL s0_inv, s1_inv, x1, x2, x3, x4 : BIT; BEGIN U1 : inverter (s0, s0_inv) ; U2 : inverter (s1, s1_inv) ; U3 : andgate (a, s0_inv, s1_inv, x1) ; U4 : andgate (b, s0, s1_inv, x2) ; U5 : andgate (c, s0_inv, s1, x3) ; U6 : andgate (d, s0, s1, x4) ; U7 : orgate (x2 => b, x1 => a, x4 => d, x3 => c, x => x) ; END netlist Definition

VHDL Format : Architecture (4) Sequential Behavior I0 I1 I2 I3 AB Q

VHDL Format : Architecture (5) Sequential Behavior Ex. ARCHITECTURE sequential of mux IS PROCESS ( i0, i1, i2, i3, a, b) VARIABLE sel : INTEGER ; BEGIN IF a = ‘0’ and b = ‘0’ THEN sel := 0 ; ELSIF a = ‘1’ and b = ‘0’ THEN sel := 1 ; ELSIF a = ‘0’ and b = ‘1’ THEN sel := 2 ; ELSE sel := 3 ; END IF ; CASE sel IS WHEN 0 => q <= i0; WHEN 1 => q <= i1; WHEN 2 => q <= i2; WHEN 3 => q <= i3; END CASE END PROCESS END sequential Process Execution Sequential Statement