Question: Description: Create a project with behavioral VHDL and evaluate the behav - ioral - to - hardware translation process. Part A: Use Vivado to create
Description: Create a project with behavioral VHDL and evaluate the behav
ioraltohardware translation process.
Part A: Use Vivado to create a project. Add the VHDL code which implements the multiplier
FSMD from the lecture. Open 'elaborated design' and identify components of the schematic that
correspond to elements of the VHDL code. Please include your name and the title "Lab #: Mul
tiplier FSMD from Lecture".
Part B: Use Vivado to create a project. Write your own VHDL code which instantiates the multi
plier FSMD from Part A and implements the following:
Idle: It checks the ready signal, if it applies two bit values of your choice to the bit
inputs of the multiplier and asserts the start signal and transitions to the WaitMultDone state.
WaitMultDone: It continuously checks the status of the ready signal. If ready becomes
again, it transitions back to Idle. Please title "Lab #: Multiplier FSMD with Parent Module".
This lab is worth points.
FSMD Design Examples
architecture twosegarch of seqmult is
constant WIDTH: integer :;
type statetype is idle ab load, op ;
signal statereg, statenext: statetype;
signal areg, anext: unsignedWIDTH downto ;
signal nreg, nnext: unsignedWIDTH downto ;
signal rreg, rnext: unsignedWIDTH downto ;
begin
state and data register
processclk reset
begin
if reset then
statereg idle;
areg others ;
nreg others ;
rreg others ;
text wo Segment VHDL Descriptions of FSNIDS
elsif clkevent and clk then
statereg statenext;
areg anext;
nreg nnext;
rreg rnext;
end if;
end process;
combinational circuit
processstart statereg, areg, nreg, rreg, ain
bin nnext
begin
statenext statereg;
anext areg;
nnext nreg;
rnext rreg;
ready ;
Two Segment VHDL Descriptions of FSMDs
case statereg is
when idle
if start then
if ain or
bin then
statenext ab;
else
statenext load;
end if;
end if;
ready ;
when ab
anext unsignedain;
nnext unsignedbin;
rnext others ;
statenext idle;
when load
anext unsignedain;
nnext unsignedbin;
rnext others ;
statenext op;
when op
nnext nreg ;
rnext & areg rreg;
if nnext then
statenext idle;
end if;
end case;
end process;
r stdlogicvectorrreg;
end twosegarch;
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
