verilog HDL十进制加减法计数器报告

发布时间:   来源:文档文库   
字号:
十进制加减法计数器
1.实验要求
1)在Modelsim环境中编写十进制加减法计数器程序;2)编译无误后编写配套的测试程序;3)仿真后添加信号,观察输出结果。
2.设计程序如下
moduledecade_counter
#(parameterSIZE=4
(inputclock,load_n,clear_n,updown,input[SIZE-1:0]load_data,outputreg[SIZE-1:0]q;always
@(negedgeload_n,negedgeclear_n,posedgeclockif(!load_nq<=load_data;elseif(!clear_nq<=0;else//clock???if(updownq<=(q+1%10;elsebeginif(q==0q<=9;elseq<=q-1;end
endmodule

3.测试程序如下
`timescale1ns/1ns
moduletest_decade_counte;
regclock,load_n,clear_n,updown;reg[3:0]load_data;wire[3:0]q;
decade_counterT1(clock,load_n,clear_n,updown,load_data,q;initialbeginclock=0;clear_n=0;



#30clear_n=1;load_n=0;load_data=7;#30load_n=1;updown=0;#300updown=1;#300updown=0;#300updown=1;#300$stop;endalways#10clock=~clock;always@(q
$display("Attime%t,q=%d",$time,q;endmodule

4.波形如下


5.测试结果如下
#Attime0,q=0#Attime30,q=7#Attime70,q=6#Attime90,q=5#Attime110,q=4#Attime130,q=3#Attime150,q=2#Attime170,q=1#Attime190,q=0#Attime210,q=9#Attime230,q=8#Attime250,q=7#Attime270,q=6#Attime290,q=5#Attime310,q=4#Attime330,q=3

#Attime350,q=2#Attime370,q=3#Attime390,q=4#Attime410,q=5#Attime430,q=6#Attime450,q=7#Attime470,q=8#Attime490,q=9#Attime510,q=0#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime#Attime530,q=1550,q=2570,q=3590,q=4610,q=5630,q=6650,q=7670,q=6690,q=5710,q=4730,q=3750,q=2770,q=1790,q=0810,q=9830,q=8850,q=7870,q=6890,q=5910,q=4930,q=3950,q=2970,q=3990,q=41070,q=81210,q=5
1010,q=51030,q=61050,q=71090,q=91110,q=01130,q=11150,q=21170,q=31190,q=4
#Attime1230,q=6#Attime1250,q=7

本文来源:https://www.2haoxitong.net/k/doc/1a48c78471fe910ef12df822.html

《verilog HDL十进制加减法计数器报告.doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式