- 1、本文档共8页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于xilinx仿真数字电子时钟的VHDL设计课案
VHDL语言设计数字时钟
实验性质:综合性 实验级别:
开课单位:信息与通信工程学院通信工程系 学时:4学时
一、实验目的:
1、学习用VHDL语言实现比较大型的电路的方法。
2、继续巩固cpld技术层次化设计方法。
二、实验器材:
计算机、Quartus II软件或xilinx ISE
三、实验内容:
设计一数字时钟,要求具有时、分、秒、计数显示功能,以24小时循环计时;具有清零,调节小时,分钟功能;具有整点报时功能。
四、实验步骤:
1、根据电路特点,用层次设计的概念,将此任务分成若干模块,规定每一模块的功能和各模块之间的接口。让几个学生分作和调试其中之一,然后再将各模块合起来联试。以培养学生之间的合作精神,同时加深层次化设计概念。
2、了解软件的元件管理深层含义,以及模块元件之间的连接概念,对于不同目录下的同一设计,如何融合。
3、模块说明:
各种进制的计数及时钟控制模块(10进制、6进制、24进制)
扫描分时显示,译码模块
各模块都用VHDL语言编写
实现电子钟原理图
各模块程序
秒模块:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
---- Uncomment the following library declaration if instantiating
---- any Xilinx primitives in this code.
--library UNISIM;
--use UNISIM.VComponents.all;
entity second is
Port ( clk : in STD_LOGIC;
reset : in STD_LOGIC;
semin : in STD_LOGIC;
enmin : out STD_LOGIC;
daout : out STD_LOGIC_VECTOR (6 downto 0));
end second;
architecture Behavioral of second is
signal count:std_logic_vector(6 downto 0);
signal enmin_1,enmin_2:std_logic;
begin
daout=count;
enmin_2=(semin and clk);
enmin=(enmin_1 or enmin_2);
process(clk,reset,semin)
begin
if(reset=0)then
count=0000000;
enmin_1=0;
elsif(clkevent and clk=1)then
if(count(3 downto 0))=1001then
if(count16#60#)then
if(count=1011001)then
enmin_1=1;count=0000000;
else
count=count+7;
end if;
else
count=0000000;
end if;
elsif(count16#60#)then
count=count+1;
enmin_1=0;
else
count=0000000;enmin_1=0;
end if;
end if;
end process;
end Behavioral;
分模块:
library IEEE;
use IEEE.STD_LOGIC_1164.ALL
文档评论(0)