模板。
3.掌握用Verilog编写状态机模块的测试文件的一般方法。
二.实验设备:
安装的PC机。
三.实验内容:
设计一个简单的状态机,功能是检测一个5位的二进制序列“10010”。
四.实验代码moduleseqdetxzclkrststate
i
putxclkrstoutputzoutput20statereg20statewirezparameterIDLEd0Ad1Bd2Cd3Dd4Ed5Fd6Gd7assig
zstateEx010alwaysposedgeclkifrst
begi
stateIDLE
e
delsecasexstate
IDLEifx1begi
stateAe
d
Aifx0begi
stateBe
d
fBifx0begi
stateCe
d
elsebegi
stateFe
d
Cifx1begi
stateDe
d
elsebegi
stateGe
d
Difx0begi
stateEe
d
elsebegi
stateAe
d
Eifx0begi
stateCe
d
elsebegi
stateAe
d
Fifx1begi
stateAe
d
elsebegi
stateBe
d
Gifx1begi
stateFe
d
fdefaultstateIDLEe
dcasee
dmoduletimescale1
s1
smoduleseqdet_Topregclkrstreg230datawire20statewirezxassig
xdata23always10clkclkalwaysposedgeclkdatadata220data30i
itialbegi
clk0rst12rst030rst1datab1100_1001_0000_1001_0100500stope
dseqdetmxzclkrststatee
dmodule五.综合仿真结果
实验九楼梯灯
一.实验目的:
f掌握用Verilog编写简单程序二.实验设备:
安装的PC机。三.实验内容:
楼下到楼上依次有3个感应灯:灯1、灯2、灯3。当行人上下楼梯时,各个灯感应到后自动点亮,若在8s内感应信号消失,则点亮8s,若感应信号存在时间超过8s,则感应信号消失4s后灯自动关闭。
任务1:做出如上逻辑电路设计并仿真;任务2:考虑去抖情况,对于感应信号到达存在毛刺小于,设计合适逻辑并剔出。任务3:若为节约能源,下一个灯点亮的同时将自动关闭上一个灯,做出如上逻辑设计并仿真(仅考虑一个人的情况)
四.实验代码modulestairledlightswitchclk10rst
i
putclk10rsti
put20switchoutput20light
reg20state1state2state3reg70cou
t1cou
t2cou
t3reg20lightreg20cou
ter1cou
ter2cou
ter3
parameterIDLE13b000IDLE23b000IDLE33b000state1_mai
3b001state2_mai
3b001state3_mai
3b001state1_pos3b010state2_pos3b010state3_pos3b010state1_
eg3b011state2_
eg3b011state3_
eg3b011
fstate1_spe_013b100state2_spe_013b100state3_spe_013b100state1_spe_023b101state2_spe_023b101state3_spe_023b101
ThefirstalwaysblockTodealwithlight1switch1alwaysposedgeclk10
ifrstbegi
state1IDLE1cou
t18b0cou
ter13b0e
d
elseifswitch01b1cou
ter15cou
ter1cou
ter11
elsecasestate1
IDLE1ifswitch0b1
begi
state1state1_poscou
t179
e
delse
begi
state1IDLE1light00
e
d
state1_mai
fifcou
t10begi
cou
t1cou
t11e
d
elseifswitch00begi
star