EDA专业课程设计数字秒表.doc
《EDA专业课程设计数字秒表.doc》由会员分享,可在线阅读,更多相关《EDA专业课程设计数字秒表.doc(15页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、课 程 设 计题 目 数字秒表设计 院 系 信息工程学院 班级 姓名 指导老师 目录第一章 :系统设计要求.3第二章 :试验目标.3第三章 :试验原理.3第四章 :系统设计方案.3第五章 :关键VHDL源程序.4 1) 十进制计数器VHDL源程序.42) 六进制计数器VHDL源程序.5 3)蜂鸣器VHDL源程序.5 4)译码器VHDL源程序.65)控制选择器VHDL源程序.76)元原件例化VHDL源程序.8第六章:系统仿真.10第七章:系统扩展思绪.11第八章:设计心得总结.11数字秒表设计一、 系统设计要求 1.秒表共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有
2、6个计数器和之相对应,6个计数器输出全全部为BCD码输出,这么便于和显示译码器连接。当计时达60分钟后,蜂鸣器鸣响10声。 2.整个秒表还需有一个开启信号和一个归零信号,方便秒表能随意停止及开启。 3.秒表逻辑结构较简单,它关键由显示译码器、分频器、十进制计数器、六进制计数器和报警器组成。在整个秒表中最关键是怎样取得一个正确100HZ计时脉冲。二、 试验目标经过此次课设,加深对EDA技术设计了解,学会用Quartus工具软件设计基础电路,熟练掌握VHDL语言,为以后工作使用打下坚实基础。三、 试验原理秒表因为其计时正确,分辨率高(0.01秒),在多种竞技场所得到了广泛应用。秒表工作原理和数字时
3、基础相同,唯一不一样是秒表计时时钟信号,因为其分辨率为0.01秒,所以整个秒表工作时钟是在100Hz时钟信号下完成。当秒表计时小于1个小时时,显示格式是mm-ss-xx(mm表示分钟:059;ss表示秒:059;xx表示百分之一秒:099),当秒表计时大于或等于一个小时时,显示和多功效时钟是一样,就是hh-mm-ss(hh表示小时:099),因为秒表功效和钟表有所不一样,所以秒表hh表示范围不是023,而是099,这也是和多功效时钟不一样地方。在设计秒表时候,时钟选择为100Hz。变量选择:因为xx(0.01秒)和hh(小时)表示范围全部是099,所以用两个4位二进制码(BCD码)表示;而ss
4、(秒钟)和mm(分钟)表示范围是059,所以用一个3位二进制码和一个4位二进制码(BCD)码表示。显示时候要注意问题就是小时判定,假如小时是00,则显示格式为mm-ss-xx,假如小时不为00,则显示hh-mm-ss。四、 系统设计方案秒表逻辑结构较简单,它关键由显示译码器、分频器、十进制计数器、六进制计数器和报警器组成。四个10进制计数器:用来分别对百分之一秒、十分之一秒、秒和分进行计数;两个6进制计数器:用来分别对十秒和十分进行计数;分频器:用来产生100HZ计时脉冲;显示译码器:完成对显示控制。 依据电路持点,用层次设计概念将此设计任务分成若干模块,要求每一模块功效和各模块之间接口。按适
5、配划分后管脚定位,同相关功效块硬件电路接口连线。用VHDL语言描述全部底层模块。清零信号为异步清零。当最高位记到6时 停止计数 显示译码器全部显示零,并发出十声警报声。按下复位按钮后继续计数。数字秒表拟由单片CPLD/FPGA来实现,经分析设计要求,确定整个系统由10个模块组成,原理图以下:五、 关键VHDL源程序1. 十进制计数器VHDL源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity count10 isport (clk,start,clr : in std_logic;c
6、out : out std_logic;daout : out std_logic_vector(3 downto 0);end count10;architecture one of count10 issignal q0 : std_logic_vector(3 downto 0);signal q1 : std_logic;beginprocess(clk,clr)beginif clr=1 then q0=0000;elsif ( clkevent and clk=1) thenif start=1 then if q0=1001 then q0=0000;q1=1; else q0=
7、q0+1;q1=0; end if;end if;end if;end process;daout= q0;cout=q1;end one;2. 六进制计数器VHDL源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity count6 isport (clk,start,clr : in std_logic;cout : out std_logic;daout : out std_logic_vector(3 downto 0);end count6;architecture two
8、of count10 issignal q0 : std_logic_vector(3 downto 0);signal q1 : std_logic;beginprocess(clk,clr)beginif clr=1 then q0=0000;elsif ( clkevent and clk=1) thenif start=1 then if q0=0101 then q0=0000;q1=1; else q0=q0+1;q1=0; end if;end if;end if;end process;daout= q0;cout=q1;end two;3. 蜂鸣器VHDL源程序library
9、 ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity alarm isport(clk,I:in std_logic; q:out std_logic );end alarm;architecture ar of alarm issignal n:integer range 0 to 20;signal q0:std_logic;beginprocess(clk)begin if clkevent and clk=1thenif i=0 then q0=0;n=0;elsif n=19 and i=1
10、thenq0=not q0;n=n+1;else q0=0;end if;end if;end process;qledledledledledledledledledledled=0000000; end case; end process; end a;5. 控制选择器VHDL源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity seltime isport(clr,clk: in bit; dain0,dain1,dain2,dain3,dain4,dain5: in std_
11、logic_vector(3 downto 0); sel: out std_logic_vector(2 downto 0); daout: out std_logic_vector(3 downto 0);end seltime;architecture a of seltime is signal temp:integer range 0 to 5;begin process(clk) begin if (clr=1) then daout=0000; sel=000; temp=0; elsif (clk=1and clkevent) then if temp=5 then temp=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 专业 课程设计 数字 秒表
限制150内