Introduction to VHDL Simulation … Synthesis …. The digital design process… Initial specification Block diagram Final product Circuit equations Logic design.

Slides:



Advertisements
Similar presentations
1 Introduction to VHDL (Continued) EE19D. 2 Basic elements of a VHDL Model Package Declaration ENTITY (interface description) ARCHITECTURE (functionality)
Advertisements

Digital Design with VHDL Presented by: Amir Masoud Gharehbaghi
VHDL Structural Architecture ENG241 Week #5 1. Fall 2012ENG241/Digital Design2 VHDL Design Styles Components and interconnects structural VHDL Design.
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)
Introduction to VHDL (Lecture #5) ECE 331 – Digital System Design The slides included herein were taken from the materials accompanying Fundamentals of.
02/02/20091 Logic devices can be classified into two broad categories Fixed Programmable Programmable Logic Device Introduction Lecture Notes – Lab 2.
FPGAs and VHDL Lecture L12.1. FPGAs and VHDL Field Programmable Gate Arrays (FPGAs) VHDL –2 x 1 MUX –4 x 1 MUX –An Adder –Binary-to-BCD Converter –A Register.
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.
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.
Kazi Fall 2006 EEGN 4941 EEGN-494 HDL Design Principles for VLSI/FPGAs Khurram Kazi Some of the slides were taken from K Gaj’s lecture slides from GMU’s.
Introduction to VHDL (part 2)
ECE 332 Digital Electronics and Logic Design Lab Lab 5 VHDL Design Styles Testbenches.
CprE / ComS 583 Reconfigurable Computing Prof. Joseph Zambreno Department of Electrical and Computer Engineering Iowa State University Lecture #17 – Introduction.
CSET 4650 Field Programmable Logic Devices Dan Solarek Introduction to VHDL An Overview / Review.
VHDL Introduction. V- VHSIC Very High Speed Integrated Circuit H- Hardware D- Description L- Language.
VHDL IE- CSE. What do you understand by VHDL??  VHDL stands for VHSIC (Very High Speed Integrated Circuits) Hardware Description Language.
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.
Copyright © 1997 Altera Corporation & 提供 What is VHDL Very high speed integrated Hardware Description Language (VHDL) –is.
ENG241 Digital Design Week #8 Registers and Counters.
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.
Fall 2004EE 3563 Digital Systems Design EE 3563 VHSIC Hardware Description Language  Required Reading: –These Slides –VHDL Tutorial  Very High Speed.
Copyright © 1997 Altera Corporation 11/20/2015 P.1 Beginner VHDL Training Class Danny Mok Altera HK FAE
Electrical and Computer Engineering University of Cyprus LAB 1: VHDL.
(1) Basic Language Concepts © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
1 Hardware description languages: introduction intellectual property (IP) introduction to VHDL and Verilog entities and architectural bodies behavioral,
Hardware languages "Programming"-language for modelling of (digital) hardware 1 Two main languages: VHDL (Very High Speed Integrated Circuit Hardware Description.
Chapter 5 Introduction to VHDL. 2 Hardware Description Language A computer language used to design circuits with text-based descriptions of the circuits.
VHDL Discussion Sequential Sytems. Memory Elements. Registers. Counters IAY 0600 Digital Systems Design Alexander Sudnitson Tallinn University of Technology.
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.
EE121 John Wakerly Lecture #17
CEC 220 Digital Circuit Design VHDL in Sequential Logic Wednesday, March 25 CEC 220 Digital Circuit Design Slide 1 of 13.
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.
VHDL Programming Fundamentals Presented By Dr. Pradyut Kumar Biswal Department of Electronics, IIIT Bhubaneswar.
VHDL ELEC 311 Digital Logic and Circuits Dr. Ron Hayne Images Courtesy of Cengage Learning.
George Mason University Behavioral Modeling of Sequential-Circuit Building Blocks ECE 545 Lecture 8.
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.
Combinational logic circuit
Basic Language Concepts
Subject Name: FUNDAMENTALS OF HDL Subject Code: 10EC45
Registers and Counters
Design Entry: Schematic Capture and VHDL
Behavioral Style Combinational Design with VHDL
Introduction Introduction to VHDL Entities Signals Data & Scalar Types
CHAPTER 17 VHDL FOR SEQUENTIAL LOGIC
ECE 4110–5110 Digital System Design
LIBRARY IEEE; Include Libraries for standard logic data types USE IEEE.STD_LOGIC_1164.ALL; -- Entity name normally the same as file name.
Sequential-Circuit Building Blocks
LIBRARY IEEE; Include Libraries for standard logic data types USE IEEE.STD_LOGIC_1164.ALL; -- Entity name normally the same as file name.
CHAPTER 17 VHDL FOR SEQUENTIAL LOGIC
VHDL VHSIC Hardware Description Language VHSIC
IAS 0600 Digital Systems Design
VHDL (VHSIC Hardware Description Language)
VHDL Discussion Subprograms
VHDL Structural Architecture
VHDL Introduction.
Behavioral Modeling of Sequential-Circuit Building Blocks
Sequntial-Circuit Building Blocks
VHDL Discussion Subprograms
IAS 0600 Digital Systems Design
Figure 8.1. The general form of a sequential circuit.
Digital Designs – What does it take
CprE / ComS 583 Reconfigurable Computing
Sequntial-Circuit Building Blocks
EEL4712 Digital Design (Midterm 1 Review).
Presentation transcript:

Introduction to VHDL Simulation … Synthesis …

The digital design process… Initial specification Block diagram Final product Circuit equations Logic design Physical implementation High-level design Iterations due to errors

Hardware Description Languages Traditionally, different ‘languages’ are used at each stage of the design process (text, diagrams, tables, equations, etc) Also, different manufacturers (and CAD tools) use different formats Languages should support Specification – Synthesis – Simulation

VHDL Originally developed for US DoD (c.1980) Standardised by IEEE in 1987 Intended to support all stages of digital design (high-level, logic, netlist) Now widely used for synthesis

VHDL-based design flow

VHDL entity and architecture concept System is a collection of modules. Architecture: detailed description of the internal structure or behavior of a module. Entity: a “wrapper” for the architecture that exposes only its external interfaces, hiding the internal details.

VHDL program file structure Entity and architecture definitions for different modules can be in different files. –Compiler maintains “work” library and keeps track of definitions using entity and architecture names.

Entity and architecture(s) example Note that either architecture may be used

VHDL Hierarchy

VHDL - designed by committee Tries to be all things to all people. –Result - very general, but also very complex. Standard logic values and elements are not built-in. Standard logic defined by a “package”, IEEE 1164 STD_LOGIC. –Must be explicitly “used” by program. library namepackage name Use all definitions in package Compiler knows where to find this (system-dependent)

Standard logic values -- not just 0,1 Need additional values for simulation of - three-state logic, pull-ups, etc.

VHDL strong typing Every signal, variable, function parameter, and function result has a “type”. In assignment statements, comparisons, and function calls, types must match. Commonly used IEEE-1164 types: – STD_LOGIC (one bit) – STD_LOGIC_VECTOR( range ) (multibit vector) – INTEGER (built-in integer type) Pain in the neck: Must explicitly convert between INTEGER and STD_LOGIC_VECTOR.

VHDL programming styles Behavioral –Write an algorithm that describes the circuit’s output –May not be synthesizable or may lead to a very large circuit –Primarily used for simulation Dataflow –assign expressions to signals –Includes “ when ” and “ select ” (case) statements Structural –Define explicit components and the connections between them. –Textual equivalent of drawing a schematic

Example: 2-to-4 decoder Entity

Architecture built-in library components positional correspondence with entity definition

Dataflow-style program for 74x138 3-to-8 decoder

Note: All assignment statements operate concurrently

Behavioral program style Normally uses VHDL “processes” Each VHDL process executes in parallel with other VHDL processes and concurrent statements “Concurrent” statements include assignment and select statements in dataflow-style programs Concurrency is needed to model the behavior of parallel, interconnected hardware elements But “sequential” statements can be used within a process

VHDL process A sequence of “sequential statements”. Activated when any signal in the “sensitivity list” changes.

Sequential statements assignment if-then-else infinite loop for loop while loop case

Behavioral version of 74x138 Except for different syntax, approach is not all that different from the dataflow version

Sequential circuits in VHDL Edge-triggered D flip-flop with clear

Other models for the same flip-flop Synthesis software may only recognize one or two of the possible models of edge triggering, and map these to known flip-flop elements

Sequential example: Loadable counter with enable and reset library ieee; use ieee.std_logic_1164.all; USE work.STD_ARITH.all; entity counter is port (clk, reset, load, counten: in std_logic; data: in std_logic_vector(3 downto 0); count: buffer std_logic_vector(3 downto 0) ); end counter; architecture archcounter of counter is begin process (clk, reset) begin if reset = '1' then count <= "0000"; elsif (clk'event and clk= '1') then if load = '1' then count <= data; elsif counten = '1' then count <= count + 1; end if; end if; end processt; end archcounter;

VHDL state machine

VHDL Synthesis Synthesis tools will generate circuit equations, state assignment, logic minimisation, etc - but may need additional input from user (pin assignments, speed/area optimisation, etc) Tools may require VHDL written in a certain style The target device must contain the resources required by the VHDL description Not all VHDL can be synthesised

VHDL resources There are many sources of reference information, examples, ‘cookbooks’, etc Text books Web sites Computer-based reference manuals/examples