Professional Documents
Culture Documents
CET 486 - 586 Hardware Description Language: Hardware Description Language: VHDL VHDL
CET 486 - 586 Hardware Description Language: Hardware Description Language: VHDL VHDL
C. Sisterna
ECET – CET 486
Spring 2003
Textbooks
C. Sisterna
ECET – CET 486
Spring 2003
General Information
P
Prerequisites
i it
Purposes
Labs
Exercises
Quiz
Tests
C. Sisterna
ECET – CET 486
Spring 2003
Grading
Quizzes 10%
Labs 25%
Project 25%
C. Sisterna
ECET – CET 486
Spring 2003
Academic Integrity Policy
• AIP:
http://www asu edu/studentlife/judicial/integrity html
http://www.asu.edu/studentlife/judicial/integrity.html
• C
Code
d off C
Conduct:
d t
http://www.asu.edu/aad/manuals/sta/sta104-01.html
C. Sisterna
ECET – CET 486
Spring 2003
Contact Information
Cristian
C i ti Si
Sisterna
t
cristian.sisterna@asu.edu
Website: www. . .
C. Sisterna
ECET – CET 486
Spring 2003
VHDL – Introduction
Chapter I
C. Sisterna
ECET – CET 486
Spring 2003
VHDL - Features
• Very High
Hi h S
Speed
d IC Hardware
H d D
Description
i ti Language
L
• The design is technologically independent
• Allow to design generic components
• Standard component
p already
y coded in VHDL
• Timing verification
• The designer concern is the functionality
• Portability: VHDL is an IEEE standard
• VHDL = S Sequential
ti l L
Language + CConcurrentt L
Language +
Net-List + Timing Constraints + Waveform Generation
C. Sisterna
ECET – CET 486
Spring 2003
VHDL – Features (cont’)
C. Sisterna
ECET – CET 486
Spring 2003
VHDL Flow Design
Specifications
p Synthesis
y &
Optimization
VHDL C
Code
d
Place & Route
Compilation
Timing
Simulation & Verification
Verification
C. Sisterna
ECET – CET 486
Spring 2003
VHDL – General View
Introduction to VHDL
C. Sisterna
ECET – CET 486
Spring 2003
Entity
C. Sisterna
ECET – CET 486
Spring 2003
Entity declaration
entity
tit <entity_name>
i i
is
[generic
(list_of_generics_their_types_and_value);]
[port
(list_of_interface_port_names_mode_and_types);]
[entity_item_declaration]
[begin
entity_statements]
end [entity] [entity_name];
C. Sisterna
ECET – CET 486
Spring 2003
Architecture body
• Contains the internal description of the entity
--====================================================--
--
-- architecture body syntax
--
--====================================================--
C. Sisterna
ECET – CET 486
Spring 2003
Example: Half-adder
A
X1 Sum
A1 Carry
B
C. Sisterna
ECET – CET 486
Spring 2003
Half-adder: entity declaration
--================================-
--
--
-- Circuit: Half Adder A
X1 Sum
-- Objective: example
-- Ref: fig 2.3 "VHDL
VHDL Primer"
Primer
--
--===============================-- A1 Carry
B
entity half_adder is
port(
A: in bit;
B: in bit;
SUM: out bit;
CARRY: out bit);
end half_adder;
C. Sisterna
ECET – CET 486
Spring 2003
Half_adder: architecture body as a set of
interconnected components
STRUCTURAL
--
--====== structural style of modeling =====--
--
architecture HA_STRUCTURE of HALF_ADDER is
component XOR2
port (X, Y: in bit
Z: out bit); A
end component; X1 Sum
component AND2
port (
p (L,
, M: in bit;
;
N: out bit);
end component; A1 Carry
begin B
X1 XOR2 port
X1: t map (A,
(A BB, SUM)
SUM);
A1: AND2 port map (A, B, CARRY);
end HA_STRUCTURE;
C. Sisterna
ECET – CET 486
Spring 2003
Half_adder: architecture body as a set of
concurrent assignment statements
DATAFLOW
--
--====== data flow style of modeling ======--
--
architecture HA_DATA_FLOW of HALF_ADDER is
begin
SUM <= A xor B;
CARRY <= A and B;
end HA_CONCURRENT;
A
X1 Sum
A1 Carry
B
C. Sisterna
ECET – CET 486
Spring 2003
Half_adder: architecture body as a set of
sequential assignment statements
BEHAVOIRAL
--
--========= behavioral style of modeling ========--
--
architecture HA_BEHAVIORAL_2 of HALF_ADDER is
begin
process (A, B)
begin
if (A='0' and B='0')then
SUM <= '0';
CARRY <= '0';
elsif (A='1' and B='0'| A='0' and B='1')then
SUM <= '1';
CARRY <= '0';
else
l -- A'1'
'1' and
d B='1'
'1' A
SUM <= '0';
X1 Sum
CARRY <= '1';
end if
if;
end process; A1 Carry
end HA_BEHAVIORAL_2; B
C. Sisterna
ECET – CET 486
Spring 2003
Half_adder: architecture body as a mixed style
C. Sisterna
ECET – CET 486
Spring 2003
Simulation
Waveform Text
C. Sisterna
ECET – CET 486
Spring 2003
Simulation
Waveform Stimulus
C. Sisterna
ECET – CET 486
Spring 2003
Simulation
C. Sisterna
ECET – CET 486
Spring 2003
Simulation
Test Bench
C. Sisterna
ECET – CET 486
Spring 2003
Simulation
C. Sisterna
ECET – CET 486
Spring 2003
Download
C. Sisterna
ECET – CET 486
Spring 2003