ECE 368 EXAM 2 Chris Edition Flashcards
What are the 3 concurrent statements?
1) WHEN
2) SELECT
3) GENERATE
What are the 4 sequential statements?
1) IF
2) WAIT
3) LOOP
4) CASE
What are the 3 kinds a sequential code?
1) PROCESS
2) FUNCTION
3) PROCEDURE
(T/F) As a whole, a PROCESS or a subprogram call is a
concurrent statement.
True
(T/F) VHDL is inherently sequential.
False
Is a process sequential or concurrent
Sequential
(T/F) A process is located in the entity section of a VHDL program
False
(T/F) A process sensitivity list is mandatory
False
(T/F) A variable is optional prior to a process statement
True
When is a signal updated in sequential code?
After conclusion of the PROCESS statement
Where can VARIABLE be declared and used?
Inside of a PROCESS or subprogram.
When are variables updated?
Immediately.
(Y/N) are multiple variable assignments allowed?
Yes.
How many ways can VHDL pass non-static values? what are they?
Two Ways.
- SIGNAL
- VARIABLE
(Y/N) Can signals be global? Can variables be global?
Signals can, but a Variable can NEVER be global.
How do you pass the value of a Variable out of a PROCESS?
Assign it to a signal
What are the 4 statements for Sequential code?
-IF
-WAIT
-LOOP
-CASE
Where can sequential code statements be used?
inside of…
-PROCESS
-FUNCTION
-PROCEDURE
What are the pure concurrent statements?
WHEN
SELECT
GENERATE
What reserved words indicate that no action should take place?
unaffected
null
When can the PROCESS not have a sensitivity list?
When WAIT is Employed
What are the three forms of WAIT?
WAIT UNTIL condition; – synthesis
WAIT ON sensitivity_list; – synthesis
WAIT FOR time_expression; – simulation
What does WAIT UNTIL do?
This statement causes the process or subprogram
to hold until the expressed condition is fulfilled.
Is WAIT UNTIL better for synchronous or asynchronous code?
it is better for synchronous code since it only accepts only one signal.
What does WAIT ON do?
This statement causes the process or subprogram to hold
until any listed signal changes.
Do WHEN and SELECT have sequential versions?
Yes, VHDL-2008 added these.
where is CASE used?
Inside of PROCESS or subprogram
what is the main use of CASE?
To enter truth tables into programs.
is CASE similar to SELECT?
Yes, All permutations
must be tested, so the keyword OTHERS is often helpful.
What is LOOP useful for?
Instantiating the same piece of code multiple times.
What is LOOP the counterpart for?
GENERATE.
What is GENERATE the counterpart for?
LOOP
(T/F) Any circuit with memory is an infinite state
machine
False (FINITE!)
What are the two types of state machines?
Mealy and Moore
Moore is a function of:
The present state only
Mealy is a function of:
The present state and it’s inputs
What statement in VHDL best describes FSM?
PROCESS
A process used to incorporate an FSM must be sensitive to:
Clock (possibly reset)
(T/F) a Mealy machine has less flip-flops than a Moore machine
False (States, only sometimes flip-flops)
(T/F) ASM diagrams are similar to FSM’s except they also contain implicit timing information
True
What are the three basic elements of an ASM diagram?
1) State box
2) Decision box
3) Conditional output box
What is the shape of a state box?
Rectangle
What is the shape of a decision box?
Diamond/rhombus
What is the shape of a conditional output box?
Oval/ellipse
How many states can be active at a time in an ASM?
ONLY ONE!
(T/F) Outputs for a mealy machine will be listed inside of a decision box
False (Moore)
Where is the name for the state box listed?
Top left corner of the state
How many entrance paths does a decision box have? Exit paths?
1, 2
(T/F) Outputs for a mealy machine will be listed inside of a conditional output box
True
Conditional output boxes are only needed when:
A mealy output is ‘1’.
An ASM block consists of:
One state box and the tree of decision
boxes and corresponding conditional output boxes
(T/F) Each exit path from an ASM block must connect to a state
box.
True
What are the two primary “blocks” used to implement a Datapath?
1) Register file
2) Function unit
The two “blocks” that make up the function unit are;
1) ALU
2) Shifter
How long is the control word for the Datapath?
16 bits or 2 bytes