下载此文档

实验报告模板实验五数字频率计设计.doc


文档分类:高等教育 | 页数:约4页 举报非法文档有奖
1/4
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/4 下载此文档
文档列表 文档介绍
实验四、五 数字频率计设计
【实验目的】
掌握数字频率计的Verilog描述方法;
学****设计仿真工具的使用方法;
学****层次化设计方法;
【实验内容】
用4位十进制计数器对用户输入时钟进行计数,计数间隔为1秒,计数满1秒后将计数值(即频率值)锁存到4位寄存器中显示,并将计数器清0,再进行下一次计数。
为上述设计建立元件符号
编制仿真测试文件,对实验四设计的频率计并进行功能仿真。
下载并验证分频器功能
【实验原理】
 CNTL为控制模块。CNTL的计数使能信号能产生一个1 s宽的周期信号,并对频率计的每一计数器CNT10的en使能端进行同步控制:当EN高电平时允许计数、低电平时停止计数。    RGB4为锁存器。在信号Load的上升沿时,立即对模块的输入口的数据锁存到RGB4的内部,并由输出端DOUT输出,然后,七段译码器可以译码输出。在这里使用了锁存器,好处是可以稳定显示数据,不会由于周期性的清零信号而不断闪烁。   CNT10为十进制计数器。有一时钟使能输入端en,用于锁定计数值。当高电平时允许计数,低电平时禁止计数。图1中将6个十进制计数器CNT10级联起来实现6位十进制计数功能
【程序源代码】
module CNTL(CLK,CNL_EN,RST_CNL,LOAD); //计数器控制模块端口说明
reg clk2din,CNL_EN,LOAD; //模块内变量说明
reg RST_CNL;
input CLK;
output CNL_EN,RST_CNL,LOAD; //输出控制信号
always@(posedge CLK)
clk2din=~clk2din;
always@(posedge clk2din)
begin
CNL_EN=clk2din; //生成控制信号
LOAD=~clk2din;
end
always@(CLK)
if(CLK==1'b0&&CNL_EN==1'b0)
RST_CNL=1;
else RST_CNL=0;
endmodule //技术控制模块结束说明
module CNT10(clk,RST,EN,COUT,DOUT); //计数器模块端口说明
input clk,RST,EN; //变量定义
output COUT;
output[3:0] DOUT;
reg[3:0]q;
reg COUT;
always@(posedge clk or posedge RST)
begin
if(RST) //RST高电平有效时q置0
q=0;
else if(EN) //EN有效时开始计数
begin if(q<9)q=q+1;
else q=0;
end
end
a

实验报告模板实验五数字频率计设计 来自淘豆网www.taodocs.com转载请标明出处.

非法内容举报中心
文档信息
  • 页数4
  • 收藏数0 收藏
  • 顶次数0
  • 上传人taoapp
  • 文件大小60 KB
  • 时间2021-10-31