- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
数电实验5
一.实验目的
1、熟悉分频器的原理;
2、掌握采用VerilogHDL语言设计偶数倍分频与不同占空比的方法;
3、熟悉常用中规模计数器74160的逻辑功能;
4、掌握运用DE0开发板产生的分频信号实现驱动计数的功能。
二.实验要求
实验要求1:利用开发板上的50M时钟,用VHDL或VerilogHDL实现两路分
频输出,一路为50M分频占空比50%的1Hz信号输出,另一路5M分频占空比
20%的10Hz信号输出。(不做波形仿真)
实验要求2:根据所学过的门电路、中规模器件和计数器,用原理图方法实现
计数方式如下电路(两位BCD显示)(需要做波形仿真):
00,01,02,09;
11,12,19;
,2229;
33,39;
44,49;
5559;
6669;
7779;
88,89;
99;
实验要求3:用上述实验要求1已经实现的分频信号1Hz和10Hz,作为时钟信
号,驱动实验要求2的计数电路,并结合上次实验实现的乘法器,实现99乘法
表显示并能够用开关控制显示速率(1Hz或10Hz显示)。(不做波形仿真)
附加要求:利用上次实验实现的加法电路,能够用开关实现99乘法表和99加法
表的切换。(不做波形仿真)
三.实验原理
先根据VerilogHDL写出实现两路分频输出的程序,通过分频控制计数器的频
率快慢,计数器个位数字达到9时通过74283的强制置数来控制计数方式按规定
的规律计数,然后将以前实验做过的乘法器和加法器代码转化成芯片,最后将以
上各组件连接到一个电路图里,就实现了99乘法表和加法表的动态显示。
原理图如下所示:
四.实验结果
1、VerilogHDL实现两路分频输出的程序:
moduleclk_div(clk,out1,out2);
inputclk;
outputout1,out2;
regout1,out2;
reg[31:0]cnt1,cnt2;
always@(posedgeclk)begin//50MHz分频计数
if(cnt132
cnt1=cnt1+32d1;
else
cnt1=32d0;
end
always@(posedgeclk)//分频后的半周期反转
if(cnt1==0)
out1=~out1;
always@(posedgeclk)begin//5MHz分频计数
if(cnt232d4999999)
cnt2=cnt2+32d1;
else
cnt2=32d0;
end
always@(posedgeclk)//20%占空比
if(cnt2=32d999999)
out2=0;
elseif(cnt2=32d4999999)
out2=1;
endmodule
2、实验二结果的仿真波形:
五.实验收获
本次实验和以往实验不同,既有代码编程,也有电路图绘制,而且最终要整合
为一个系统,虽然实验中遇到很多问题,但都通过查找资料得到了解决,学会了
把程序代码转化成芯片的原理以及怎样把分系统整合到一起的技巧,通过这次实
验学会了很多。
文档评论(0)