数字电子技术基础第三次实验报告一、描述QuartusII软件基本使用步骤
①编写Verilog代码,用文本编辑器正确编写源文件并经modelsim仿真确认该电路设计正确。
②打开QuartusII软件,新建工程Newproject注意工程名和设计文件的module名保持一致,选择和开发板一致的FPGA器件型号。
③添加文件,点击fileope
之后选择要添加的文件,并勾选Addfiletocurre
tproject
④编译,StartCompilatio
编译源文件如有错误修改后重新编译。
f⑤查看电路结构,使用ToolRTLviewer工具查看电路图结构是否和预期设计一致。
二、题目代码以及波形分析1设计一款时钟上升沿触发的D寄存器
a编写模块源码moduleflipflopDClockQ
i
putDClockoutputregQalwaysposedgeClock
QDe
dmoduleb测试模块timescale1
s1psmoduletb_flipflopregClock_testregD_test
fwireQ_testi
itialClock_test0always20Clock_testClock_testi
itialD_test0always77D_testD_testflipflopUUT_flipflopClockClock_testDD_testQQ_teste
dmodulec仿真后的波形截图
每当时钟上升沿到来时,触发器把D的信号传给Qd综合后的RTL图形
2设计一款4bBit具有并行加载功能的移位寄存器编写模块源码a编写模块源码modulemuxdffD0D1SelClockQ
fi
putD0D1SelClockoutputregQ
wireDassig
DSelD1D0
alwaysposedgeClockQD
e
dmodulemoduleshift4RLwClockQ
i
put30Ri
putLwClockoutputwire30Q
muxdffStage3wR3LClockQ3muxdffStage2Q3R2LClockQ2muxdffStage1Q2R1LClockQ1muxdffStage0Q1R0LClockQ0e
dmoduleb测试模块timescale1
s1psmoduletb_shift4regClock_testregL_testregw_testreg30R_testwire30Q_test
i
itialClock_test0always10Clock_testClock_test
i
itialbegi
L_test1
14L_test0always14L_testL_teste
d
i
itialw_test0always13w_testw_test
i
itial
fR_test4b1010shift4UUT_shift4ClockClock_testLL_testww_testRR_testQQ_teste
dmodulec仿真后的波形截图
L为0时并行加载,数组R为加载时的输入。L为1时移位,数组Q右移一位,左端补当前变量w的值。
d综合后的RTL图形
3设计一款4bit带复位功能的计数器a编写模块源码moduleupcou
tResetClockEQi
putResetClockEoutputreg30QalwaysposedgeResetposedgeClock
fifResetQ0
elseifEQQ1
e
dmoduleb测试模块timescale1
s1psmoduletb_upcou
tregReset_testregClock_testregE_testwire30Q_test
i
itialClock_test0
always5Clock_testClock_test
i
itialbegi
Reset_test1E_test0
2Reset_test0
8E_test1
184Reset_test1
2Reset_test0
32E_test0
e
d
upcou
tUUT_upcou
tResetReset_testClockClock_testEE_testQQ_test
e
r