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.

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.
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.
Dr. Turki F. Al-Somani VHDL synthesis and simulation – Part 2 Microcomputer Systems Design (Embedded Systems)
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.
331 W05.1Spring :332:331 Computer Architecture and Assembly Language Spring 2006 Week 5: VHDL Programming [Adapted from Dave Patterson’s UCB CS152.
Lecture #6 Page 1 Lecture #6 Agenda 1.VHDL - Architecture 2.VHDL - Packages Announcements 1.HW #3 assigned ECE 4110– Sequential Logic Design.
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.
Introduction to VHDL Arab Academy for Science, Technology & Maritime Transport Computer Engineering Department Magdy Saeb, Ph.D.
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.
VHDL Introduction. V- VHSIC Very High Speed Integrated Circuit H- Hardware D- Description L- Language.
ENG241 Digital Design Week #4 Combinational Logic Design.
IAY 0600 Digital Systems Design VHDL discussion Dataflow&Behavioral Styles Combinational Design Alexander Sudnitson Tallinn University of Technology.
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.
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.
(1) Basic Language Concepts © Sudhakar Yalamanchili, Georgia Institute of Technology, 2006.
Introduction to VHDL Simulation … Synthesis …. The digital design process… Initial specification Block diagram Final product Circuit equations Logic design.
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 Data Flow Modeling in VHDL ECE 545 Lecture 7.
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)
EE121 John Wakerly Lecture #17
VHDL Discussion Subprograms IAY 0600 Digital Systems Design Alexander Sudnitson Tallinn University of Technology 1.
ECOM 4311—Digital System Design with VHDL
Data Flow Modeling in VHDL
Digital Design Using VHDL and PLDs ECOM 4311 Digital System Design Chapter 1.
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.
George Mason University Data Flow Modeling of Combinational Logic ECE 545 Lecture 5.
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
Describing Combinational Logic Using Processes
Design Entry: Schematic Capture and VHDL
Behavioral Style Combinational Design with VHDL
IAY 0600 Digital Systems Design
ENG2410 Digital Design “Combinational Logic Design”
Introduction Introduction to VHDL Entities Signals Data & Scalar Types
Structural style Modular design and hierarchy Part 1
Behavioral Style Combinational Design with VHDL
Combinational Circuits Using VHDL
LIBRARY IEEE; Include Libraries for standard logic data types USE IEEE.STD_LOGIC_1164.ALL; -- Entity name normally the same as file name.
Hardware Descriptive Languages these notes are taken from Mano’s book
LIBRARY IEEE; Include Libraries for standard logic data types USE IEEE.STD_LOGIC_1164.ALL; -- Entity name normally the same as file name.
ECE 448 Lecture 3 Combinational-Circuit Building Blocks Data Flow Modeling of Combinational Logic ECE 448 – FPGA and ASIC Design with VHDL.
VHDL VHSIC Hardware Description Language VHSIC
IAS 0600 Digital Systems Design
Structural style Modular design and hierarchy Part 1
Data Flow Modeling of Combinational Logic
Hardware Descriptive Languages these notes are taken from Mano’s book
VHDL Discussion Subprograms
VHDL Structural Architecture
VHDL Introduction.
VHDL Discussion Subprograms
IAS 0600 Digital Systems Design
Digital Designs – What does it take
Sequntial-Circuit Building Blocks
4-Input Gates VHDL for Loops
EEL4712 Digital Design (VHDL Tutorial).
Presentation transcript:

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 );

Logic System Design I5-2 HDL-based design flow –For ASICs, verification and fitting phases are usually much longer (as a fraction of overall project time) than what you’ve experienced in class.

Logic System Design I5-3 VHDL Developed in the mid-1980s under DoD sponsorship –Mandated for federally-sponsored VLSI designs Used for design description, simulation, and synthesis –Synthesis became practical in the early 90s and use of VHDL (and Verilog) has taken off since then Only a subset of the language can be synthesized

Logic System Design I5-4 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.

Logic System Design I5-5 VHDL Hierarchy

Logic System Design I5-6 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.

Logic System Design I5-7 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)

Logic System Design I5-8 Standard logic values -- not just 0,1 Need additional values for simulation, three-state logic, pull- ups, etc. –Defined in IEEE 1164 STD_LOGIC package.

Logic System Design I5-9 Logic functions defined by table lookup

Logic System Design I5-10 VHDL strong typing Every signal, variable, function parameter, and function result has a “type”. –A few built-in types, plus user defined types. 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.

Logic System Design I5-11 library IEEE; use IEEE.std_logic_1164.all; entity parity9 is port ( I: in STD_LOGIC_VECTOR (1 to 9); EVEN, ODD: out STD_LOGIC ); end parity9; architecture parity9p of parity9 is begin process (I) variable p : STD_LOGIC; variable j : INTEGER; begin p := I(1); for j in 2 to 9 loop if I(j) = '1' then p := not p; end if; end loop; ODD <= p; EVEN <= not p; end process; end parity9p;

Logic System Design I5-12 VHDL programming styles Structural –Define explicit components and the connections between them. –Textual equivalent of drawing a schematic Dataflow –Assign expressions to signals –Includes “when” and “select” (case) statements 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

Logic System Design I5-13 Example: 2-to-4 decoder EN I1 I0Y3 Y2 Y1 Y0

Logic System Design I5-14 Example: 2-to-4 decoder Entity

Logic System Design I5-15 Architecture built-in library components positional correspondence with entity definition Example: 2-to-4 decoder

Logic System Design I5-16 Dataflow-style program for 3-to-8 decoder

Logic System Design I5-17 Dataflow-style program for 3-to-8 decoder Note: All assignment statements operate concurrently (combinational circuit ).

Logic System Design I5-18 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

Logic System Design I5-19 VHDL process A sequence of “sequential statements”. Activated when any signal in the “sensitivity list” changes. Primarily a simulation concept, but can be synthesized

Logic System Design I5-20 Behavioral version of 74x138 Except for different syntax, approach is not all that different from the dataflow version

Logic System Design I5-21 Truly behavioral version May not be synthesizable, or may have a slow or inefficient realization. But just fine for simulation and verification. type conversion

Logic System Design I5-22 library IEEE; use IEEE.STD_LOGIC_1164.ALL; --Declaration of the module's inputs and outputs entity fewgates is port ( A: in std_logic; B: in std_logic; C: in std_logic; Y: out std_logic ); end fewgates; --Defining the modules behavior Architecture behavioral of fewgates is begin process (A, B, C) begin Y <= C OR ((NOT A) AND (NOT B)); end process; end behavioral;

Logic System Design I5-23 More VHDL Powerful facilities for generating iterative circuit descriptions (e.g., multiplier array) Facilities for modeling timing behavior of known components Program I/O facilities for use in simulation Design-management facilities for selecting alternative components and architectures And more...