verilog实验报告时钟设计.doc

verilog实验报告时钟设计.doc

ID:59252175

大小:62.00 KB

页数:5页

时间:2020-09-08

verilog实验报告时钟设计.doc_第1页
verilog实验报告时钟设计.doc_第2页
verilog实验报告时钟设计.doc_第3页
verilog实验报告时钟设计.doc_第4页
verilog实验报告时钟设计.doc_第5页
资源描述:

《verilog实验报告时钟设计.doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、成绩:实验报告课程名称:Verilog数字系统设计实验实验项目:时钟姓名:专业:计算机科学与技术班级:学号:计算机科学与技术学院201年月日实验项目名称:时钟设计一、实验目的1.掌握VerilogHDL语言的基本运用;2.熟悉QuartusⅡ的简单操作;3.掌握一个基本EDA工程设计流程;4.掌握时钟的设计基本原理。二、实验内容计数器部分中包含有三个主要计数部分,分别是十进制、六进制以及二十四进制,其中六进制和十进制共同组成六十进制,即实现分和秒的计数,之所以将其分开是便于分别显示个位和十位,通过编写计数器,来计数信号的

2、数量,从而实现时分秒按各自的进制正常计数,同时,将前一时钟单位的进位信号作为下一时钟单位的clk,即从后向前驱动,这样便实现了时钟的正常运转。三、实验要点及说明1.编写各个模块的VHDL代码并进行编译与波形仿真,仿真无误后生成元件符号。2.设计数字钟电路的顶层文件,在顶层文件中调入第一步中生成的元件符号,并根据连接关系将它们连接在一起。3.引脚分配,为顶层设计文件中的各个输入输出端口分配芯片相应的引脚。4.下载程序到芯片,观看实验现象是否为预想的那样。同时使用清零按键看能否实现清零,时间正常走动情况下通过按键能否实现校时

3、。四、实验结果下载成功后,拨动开关DP4至髙电平,使六个数码管复位淸零;拨动开关DP4至低电平,数字钟开始自动计,此过程中可以通过1键设置小时数,2键设置分钟数。当秒数满60则进一位,分钟数满60进一位,当显示为23:59:59时,秒数在加一则显示00:00:00,同时指示一天结束的LED灯亮10秒,之后从新计时。五、程序代码moduleclock(clk,rst,load,data,lamp,de,led_g,st_stop,ledcom);//clk-时钟10M,rst-复位,load-初始值设置,st_stop-启

4、动暂停inputclk,rst,load,st_stop;input[7:0]data;//初始值outputlamp;//倒计时结束指示灯output[2:0]de;//数码管位选output[7:0]led_g;//数码管段码outputledcom;//指示灯公共端regclk_g;//.....LED扫描时钟信号......regclk_s;//秒时钟reg[15:0]cnt1;//10ms分频计数器reg[23:0]cnt2;//1s分频器计数器reg[3:0]bcd1;//个位bcd码reg[3:0]bcd2

5、;//十位bcd码reglamp;//指示灯reg[1:0]state1;//2位数码管扫描位置寄存器reg[3:0]led_g_bcd;//bcd转段码寄存器parameterLED1=3'b000,//数码管1LED2=3'b001;//数码管2assignledcom=1;////10Mhz晶振用2个分频器分别产生数码管扫描时钟和秒时钟//10ms方波时钟clk_galways@(posedgeclk)beginif(cnt1>=50000)begincnt1<=0;clk_g<=~clk_g;endelsecnt

6、1<=cnt1+1'b1;end//1s方波时钟clk_salways@(posedgeclk)beginif(cnt2>=)begincnt2<=0;clk_s<=~clk_s;endelsecnt2<=cnt2+1'b1;endalways@(posedgeclk_sornegedgerstorposedgeload)beginif(!rst)//复位初始状态beginlamp<=0;//灭灯bcd1<=0;//数码管输出0bcd2<=0;//endelseif(load)beginbcd1<=data[3:0];/

7、/设置初值bcd2<=data[7:4];//endelseif(st_stop)//启动暂停切换//BCD倒计时计算,到0时亮灯beginif(bcd1==9)//个位/*******/beginif(bcd2==5)lamp<=1;elsebeginbcd1<=0;bcd2<=bcd2+1;endend/******/elsebeginbcd1<=bcd1+1;lamp<=0;endendend//数码管对应位置扫描输出always@(posedgeclk_gornegedgerst)beginif(!rst)beg

8、instate1<=LED1;led_g_bcd<=0;endelsecase(state1)LED1:beginled_g_bcd<=bcd1;state1<=LED2;endLED2:beginled_g_bcd<=bcd2;state1<=LED1;endendcaseendassignde=state1;//

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。