欢迎来到天天文库
浏览记录
ID:58820308
大小:697.50 KB
页数:9页
时间:2020-10-25
《FPGA-测试频率实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、西南科技大学电工学,电子技术学生实验报告课程名称FPGA现代数字系统设计实验名称4位十进制频率计设计姓名邓彪班级电子0902指导老师评分2012年4月10日1.实验目的:设计4位十进制频率计,学习较复杂的数字系统设计方法。2.实验原理:根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的对输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器清0信号。这清0个信号可以由一个测频控制信号发生器产生,即图5-1中的TESTCTL,它的设计要求是,TESTCTL的计数使能信号CNT_EN能产生一个1秒脉宽的
2、周期信号,并对频率计的每一计数器CNT10的EN使能端进行同步控制。当CNT_EN高电平时,允许计数;低电平时停止计数,并保持其所计的脉冲数。在停止计数期间,首先需要一个锁存信号LOAD的上跳沿将计数器在前1秒钟的计数值锁存进各锁存器REG4B中,并由外部的7段译码器译出,显示计数值。设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。锁存信号之后,必须有一清零信号RST_CNT对计数器进行清零,为下1秒钟的计数操作作准备。3.实验内容:1、根据例5-1(10进制计数器,用于计算分频结果,并连接数码管显示)、例5-2(测频控制器,使得频率计能自动测频
3、)、例5-3(锁存器,将频率计的每位数锁存后输出)以及4位十进制频率计的工作原理写出频率计的顶层文件(或者原理图),并给出其测频时序波形,及其分析。在测试时候添加以下两个模块:(1)DE2上有两个时钟源,分别是(50MHZ,PIN_N2),(27MHz,PIN_D13),编写一个分频模块,分别产生测频器的clk(8Hz)和f_in(频率任意定)时钟,用于连接在DE2上进行测试。(2)编写数码显示模块led7s,用于显示频率计数的结果显示。2、频率计设计硬件验证。编译、综合和适配频率计顶层设计文件,并编程下载进入目标器件中。4.实验步骤:1.构建一个工程名是我的学号f_t
4、est。2、输入cnt10d的Verilog文本,将设计的Verilog程序输入,并存盘名为cnt10d.v,将波形文件存盘为cnt10d.vwf。modulecnt10d(clk,rst,en,cq,cout);inputclk;inputrst;inputen;output[3:0]cq;outputcout;reg[3:0]cq;regcout;always@(posedgeclkorposedgerst)beginif(rst)cq<=4'b0000;elseif(en)beginif(cq<9)begincq<=cq+1'b1;cout<=1'b0;endel
5、sebegincq<=4'b0000;cout<=1'b1;endendendendmodule3.设定cnt10d.v是目前的顶层文件由Processing->start->startannlysis&elaboration对程序进行初步的分析4、对仿真工具设定为功能仿真,并将激励文件调入,提取功能仿真的网表。5、进行功能仿真和时序仿真,并对结果进行分析。功能仿真:时序仿真:6、仿照工程cnt10d的设计方法,再分别设计testctl、reg4、div27、decl7s和div8模块,并分别对testctl、decl7s、reg4进行功能仿真和时序仿真,对仿真结果进行
6、分析。(程序及仿真见附录)7、频率计设计硬件验证。编译、综合和适配频率计顶层设计文件,并编程下载进入目标器件中。8、用原理图方式将各模块连接起来。9、锁定引脚(附四)并进行全编译。10、如果编译没有错误,准备下载5.实验结果:连接下载后,数码管显示5885,与预期结果相同。附录:1.测频控制器,使得频率计能自动测频moduletestctl(clkk,cnt_en,rst_cnt,load);inputclkk;//1HZoutputcnt_en;outputrst_cnt;outputload;regdiv2clk;wirecnt_en;regrst_cnt;wire
7、load;always@(posedgeclkk)div2clk<=~div2clk;always@(clkkordiv2clk)beginif(!clkk&!div2clk)rst_cnt<=1'b1;elserst_cnt<=1'b0;endassignload=~div2clk;assigncnt_en=div2clk;endmodule仿真图:1.锁存器,将频率计的每位数锁存后输出modulereg4(clk,cq,led);inputclk;input[3:0]cq;output[3:0]led;reg[3:0]led;alwa
此文档下载收益归作者所有