基于VHDL语言的数字时钟设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程:CPLD与FPGA设计及应用
实验:基于VHDL语言的数字时钟设计
学号:*********
姓名:**
专业:信号与信息处理
学院:电子与信息学院
2011年12月
基于VHDL语言的数字时钟设计一:主要功能
1:具有时、分、秒计数显示功能,以24小时循环计时。
2:具有日期和星期显示功能。
3:具有秒表功能
4:具有调节日期,星期,小时,分钟,清零的功能。
5:具有定时和闹铃的功能。
二:结构框图
三:RTL图
四:功能实现
4.1分频模块设计
本设计使用的输入时钟信号为50Mhz,经过分频产生两路时钟信号,其中一路为微秒计数时钟信号,一路为动态扫描时钟信号。同时模块有一输入控制信号,其功能是停止微秒计数时钟信号,以实现定时的功能。
输入:clk_in 为50Mhz,setstop为微秒计数时能信号
输出:clk_out1为1/60hz
clk_out2为1khz
源代码如下:
library ieee;
use ieee.std_logic_1164.all;
entity div is
port(clk_in,setstop: in std_logic;
clk_out1,clk_out2: out std_logic);
end entity div;
architecture fun of div is
constant a:integer:=8333333;
constant b:integer:=49999;
signal c:integer range 0 to a;
signal d:integer range 0 to b;
begin
process(clk_in,setstop)
begin
if(clk_in 'event and clk_in='1') then