Académique Documents
Professionnel Documents
Culture Documents
VHDL Processes
If-Then-Else and CASE statements
Flip-Flop description using VHDL
Sequential circuit description (state
tables and diagrams) using VHDL
Process synchronization
Process 2
Concurrent statements
end name_arch;
Oct 23, 2008 MKM - 3
VHDL Process Syntax
Signals and/or
Variables
RASSP
VHDL Sequential Statements
Reinventing
Electronic
Design
Architecture Infrastructure
DARPA Tri-Service
Sel y
a(n-1:0) “00” a
8-line
b(n-1 :0) “01” b
4x1 y(n-1 :0)
c(n-1 :0) MUX “10” c
d(n-1 :0) “11” d
sel(1:0)
Notation:
[ ] -- optional
{ } -- repeatable
[ case_label:]
case expression is
{ when choices =>
{ sequential
statement; }
}
end case [case_label];
RASSP
The Wait Statement
Reinventing
Electronic
Design
Architecture Infrastructure
DARPA Tri-Service
RASSP
Equivalent Processes
Reinventing
Electronic
Design
Architecture Infrastructure
DARPA Tri-Service
Summation:
Summation: Summation:
Summation: PROCESS
PROCESS
PROCESS(
PROCESS( A, A, B,
B, Cin)
Cin) BEGIN
BEGIN
BEGIN
BEGIN
Sum
Sum <=
<= AA XOR
XOR BB XOR
XOR
= Sum
Sum <=
<= AA XOR
XOR BB XOR
WAIT
WAIT ON
XOR Cin;
ON A,
Cin;
A, B,
B, Cin;
Cin;
Cin; END
Cin; END PROCESS
PROCESS Summation;
Summation;
END
END PROCESS
PROCESS Summation;
Summation;
CLK
RASSP
Inertial vs Transport Delays
Reinventing
Electronic
Design
Architecture Infrastructure
DARPA Tri-Service
Transport Timing
A ENTITY
ENTITY nand2
nand2 IS
IS
C
B PORT(
PORT( A, B :: IN
A, B IN BIT;
BIT; CC :: OUT
OUT BIT);
BIT);
END nand2;
END nand2;
ARCHITECTURE
ARCHITECTURE behavior
behavior OFOF nand2
nand2 IS
IS
BEGIN
BEGIN
CC <=
<= TRANSPORT
TRANSPORT NOT(A
NOT(A AND
AND B)
B)
Inertial Timing AFTER
AFTER 25 ns;
25 ns;
END
END behavior;
behavior;
ENTITY
ENTITY nand2
nand2 IS
IS
PORT(
PORT( A, B :: IN
A, B IN BIT;
BIT; CC :: OUT
OUT
BIT);
BIT);
END
END nand2;
nand2;
ARCHITECTURE
ARCHITECTURE behavior behavior OFOF nand2
nand2 IS
IS
BEGIN
BEGIN
CC <= <= NOT(A
NOT(A AND
AND B)
B) AFTER
AFTER 25
25 ns;
ns;
END
END
Copyright
behavior;
behavior;
1995-1999 SCRA
RASSP
Testbenches
Reinventing
Electronic
Design
Architecture Infrastructure
DARPA Tri-Service
Optimization / minimization
Combinatorial Combinatorial
Logic to Logic to
Determine State Determine State
Combinatorial
Combinatorial
Logic to
Logic to
Determine
Determine
Output Based on:
Output Based on: Present State
Present State
Present Inputs
Moore Machine Mealy Machine
Output Output
Oct 23, 2008 MKM - 29
EXAMPLE