- 4
- 0
- 约8.97千字
- 约 13页
- 2019-03-22 发布于湖北
- 举报
实验五 数字时钟的设计
实验性质:综合性 实验级别:
开课单位:信息与通信工程学院通信工程系 学时:4学时
一、实验目的:
1、学习用VHDL语言实现比较大型的电路的方法。
2、继续巩固cpld技术层次化设计方法。
二、实验器材:
计算机、Quartus II软件
三、实验内容:
设计一数字时钟,要求具有时、分、秒、计数显示功能,以24小时循环计时;具有清零,调节小时,分钟功能;具有整点报时功能。
四、实验步骤:
1、根据电路特点,用层次设计的概念,将此任务分成若干模块,规定每一模块的功能和各模块之间的接口。让几个学生分作和调试其中之一,然后再将各模块合起来联试。以培养学生之间的合作精神,同时加深层次化设计概念。
2、了解软件的元件管理深层含义,以及模块元件之间的连接概念,对于不同目录下的同一设计,如何融合。
3、模块说明:
各种进制的计数及时钟控制模块(10进制、6进制、24进制)
扫描分时显示,译码模块
各模块都用VHDL语言编写
五、实验模块:
秒模块
LIBRARY ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
ENTITY second IS
PORT(
clk, reset,setmin : IN STD_LOGIC;
enmin : OUT STD_LOGIC;
da0out: out std_logic_vector (6 downto 0));
END entity second;
ARCHITECTURE fun OF second IS
SIGNAL count: STD_LOGIC_VECTOR( 6 downto 0);
BEGIN
da0out = count;
process ( clk , reset , setmin)
begin
-- enmin=k;
if (reset=0) then
count = 0000000;
elsif (setmin=0) then
enmin = clk;
elsif (clk event and clk=1) then
if (count(3 downto 0)=1001) then
if (count 16#60#) then
if (count=1011001) then
enmin=1;
count=0000000;
ELSE
count=count+7;
end if;
else
count=0000000;
end if;
elsif (count 16#60#) then
count = count+1;
enmin=0 after 100 ns;
else
count=0000000;
end if;
end if;
end process;
END fun;
分析:
脉冲从0计数至59,向前进1,enmin由低电平变至高电平。
分模块
LIBRARY ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
ENTITY minute IS
PORT(
clk, reset,sethour : IN STD_LOGIC;
enhour : OUT STD_LOGIC;
da1out: out std_logic_vector (6 downto 0));
END entity minute;
ARCHITECTURE fun OF minute IS
SIGNAL count: STD_LOGIC_VECTOR( 6 down
您可能关注的文档
最近下载
- 外贸英语写作.pdf VIP
- 2023北京各区初三一模语文试题汇编《记叙文阅读》.pdf VIP
- 辽宁省事业单位考试综合应用能力(医疗卫生类E类)2026年备考难点精析.docx VIP
- 七律一组的诗词有哪些.doc VIP
- 海南省中考数学科模拟试题一.doc VIP
- 民航客舱服务艺术案例分析全套完整教学课件.docx VIP
- 灰姑娘剧本英文版.pdf VIP
- 2025国家核技术利用辐射安全与防护考核测试试题及答案.docx VIP
- 2025年国家核技术利用辐射安全与防护考核测试试题(附答案).docx VIP
- 2020国家核技术利用辐射安全与防护考核测试试题(二)(附答案).docx VIP
原创力文档

文档评论(0)