EDA秒表设计实验报告

合集下载

EDA数字秒表课程设计报告

EDA数字秒表课程设计报告

课程设计任务书学生姓名:专业班级:电子科学与技术电子00901班指导教师:工作单位:武汉理工大学信息工程学院题目: 数字秒表一、设计目的①根据设计要求,完成对数字秒表的设计。

②进一步加强对QuartusⅡ的应用和对VHDL语言的使用。

二、设计内容和要求①计时精度应大于1/100S,计时器能显示1/100S的时间,提供给计时器内部定时的时钟频率应大于100Hz,这里选用1KHz。

②计时器的最大计时时间为1小时,为此需要6位的显示器,显示的最长时间为59分59.99秒。

③设置有复位和起/停开关,复位开关用来使计数器清零,做好计时准备。

起停开关的使用方法与传统的机械式计数器相同,即按一下,启动计时器开始计时,再按一下计时终止。

三、初始条件CPLD,按键,时钟信号等。

四、时间安排:EDA课程设计布置工作 6.11设计 6.12~6.15硬件调试 6.17~6.19撰写设计报告 6.20~6.21检查硬件、答辩、提交设计报告 6.22指导教师签名:年月日系主任(或责任教师)签名年月日目录摘要 (I)Abstract (II)绪论............................................................................................................................ I II 一系统设计方案. (1)二底层模块设计 (2)2.1 计时电路 (2)2.1.1 时基分频器 (2)2.1.2 100进制计数器 (2)2.1.3 60进制计数器 (3)2.2 计时控制电路 (3)2.3 显示电路 (4)2.3.1 七段译码器 (4)2.3.2 扫描模块 (4)三顶层原理图 (5)四系统仿真 (6)4.1计时电路的仿真 (6)4.2计时控制电路的仿真 (7)4.3 显示电路的仿真 (8)五器件编程与硬件下载 (9)六心得体会 (10)七参考文献 (11)附录 (12)摘要随着人们生活水平的日益提高,社会体系的日益完善,人们对于各种应用器件的要求也越来越高。

EDA秒表实训报告

EDA秒表实训报告

EDA实训报告专业:电子信息班级:电信1013班姓名:赵健时间:2012.6.25——2012.6.29一、EDA实验箱中相关的硬件资源及用法1.点动按键:实验箱提供12个点动按键,按下时输出“低电平”,弹起时输出“高电平”。

本项目中的清零(复位)信号、ON_OFF信号均有点动按键提供。

2.LED数码显示器:实验箱提供8位共阴LED数码管,内部设置了段限流电路和位译码驱动电路。

对外提供一组8位“段码”(a、b 、c 、d 、e、f、g,dp)输入接口和一组3位“位选”(se12 se11 se10)输入接口。

这种电路结构决定了显示多位数码只能采用动态扫描显示方式(各位数码管轮流显示),而不能采用静态显示方式(各位数码管同时显示)。

本项目需要四位LED数码管分别显示10位秒、个位秒、1/10位秒、1/100位秒,如下图所示。

因此,只需要用到se11和se10。

也就是说,所设计的电路要有se11和se10位选择输出信号,要分别与实验箱的se11、se10相连接。

本设计要有8位段码(7位段码+1位dp)输出信号,分别与实验箱的“段码”输入端a、b、c、d、e、f、g、dp 相连。

3、时钟信号:实验箱的DIGITALCLOCK模块提供时钟信号和多级2分频电路,时钟信号最高频率20MHz,通过堆积2分频电路可得到不同频率的时钟信号,f=20MHz/2n,试中n表示2分频的次数。

本项目需要100Hz的时钟脉冲,但是本实验想不能直接提供精准的100Hz 时钟信号,仅能提供接近(100HZ)的152Hz和76Hz的信号。

为了简化设计,突出重点,本项目选用152Hz信号作为时钟脉冲,而不考虑由此产生的误差。

152Hz信号由20MHz信号进行2分频17次得到。

即f=20MHz/2^17。

如果要得到精确的设计结果,就必须产生精确的100Hz信号进行5次2分频,CLK4端输出625000Hz的信号,将该信号作为本设计的时钟输入信号。

EDA秒表实验报告

EDA秒表实验报告

《EDA课程设计——秒表》题目数字秒表学院信息学院专业电子信息工程班级 11电子A姓名朱彦杰学号指导教师凌朝东课题名称秒表完成时间11.28指导教师凌朝东学生姓名朱彦杰班级11电子A总体设计要求和技术要点设计要求:5. 秒表,难度系数0.9要求:计时范围为0∼59 分59 秒,精度为百分之一秒;能同时显示分秒信息(LED 数码管)。

技术要点:1.利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。

该秒表计时范围为0秒~59分59.99秒,显示的最长时间为59分59秒,计时精度为10毫秒以内,具有复位功能。

2.秒表有共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出。

一、系统组成模块连接图和系统框图- 3 -二、模块器件及其程序1、分频模块及其程序本模块实现脉冲分频,本实验使用的EP2C5T144C8的频率计进行50MHz 分频产生100HZ 的脉冲。

LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY fenpin ISPORT ( CLK: IN STD_LOGIC; OUTCLK: out std_logic ); END fenpin;ARCHITECTURE behav OF fenpin IS BEGINPROCESS( CLK )variable cnt:integer range 0 to ; BEGINIF CLK'EVENT AND CLK = '1' THEN if cnt= then cnt:=0; outclk<='1'; elsecnt:=cnt+1;分频器十进制计数器 时钟频率十进制计数器 十进制计数器六进制计数器十进制计数器 六进制计数器输出到LED开始清零outclk<='0';end if;END IF;END PROCESS;END behav;2、十进制程序产生99毫秒、秒的低位、分的低位的功能。

EDA实验报告(秒表设计)

EDA实验报告(秒表设计)

机械电子工程系EDA实验报告专业班级 07级电信一班学号实验名称秒表设计学生姓名2010年12月秒表设计一、实验说明:秒表的逻辑结构较简单,它主要由显示译码器、分频器、十进制计数器、报警器和6进制计数器组成。

在整个秒表中最关键的是如何获得一个精确的100HZ计时脉冲,除此之外,整个秒表还需有一个启动信号和一个归零信号,以便秒表能随意停止及启动。

秒有共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出,这样便与同显示译码器的连接。

当计时达60分钟后,蜂鸣器鸣响10声二、结构组成:四个10进制计数器:用来分别对百分之一秒、十分之一秒、秒和分进行计数;两个6进制计数器:用来分别对十秒和十分进行计数;分频率器:用来产生100HZ计时脉冲;显示译码器:完成对显示的控制。

三、硬件要求:1.主芯片Cyclone。

2.6位八段扫描共阴级数码显示管。

3.二个按键开关(归零,启动)。

四、实验内容及步骤:1.根据电路持点,可在教师指导下用层次设计概念。

将此设计任务分成若干模块,规定每一模块的功能和各模块之间的接口。

让几个学生分做和调试其中之一,然后再将各模块合起来联试。

以培养学生之间的合作精神,同时加深层次化设计概念。

2.了解软件的元件管理深层含义,以及模块元件之间的连接概念,对于不同目录下的同一设计,如何熔合。

3.适配划分前后的仿真内容有何不同概念,仿真信号对象有何不同,让学生有更深一步了解。

熟悉了CPLD设计的调试过程中手段的多样化。

4.按适配划分后的管脚定位,同相关功能块硬件电路接口连线。

5.所有模块全用VHDL语言描述。

6.内部结构图如图50-1所示。

五、实验连线:输入接口:1.代表归零,启动信号RESET, START的管脚分别连接按键开关。

2.蜂鸣器鸣响信号SPEAKER接蜂鸣器的输入。

3.代表计数时钟信号CLK的管脚同2. 5MHz时钟源相连。

数字秒表实验报告---EDA

数字秒表实验报告---EDA

数字秒表实验报告—EDA项目背景本次实验旨在使用EDA工具设计一个数字秒表电路,通过FPGA开发板进行验证,具体要求如下:1.实现毫秒计时,并可以在数码管上显示当前计时数值。

2.支持开始/暂停、清零等操作。

设计思路本次实验的数字秒表电路由以下模块构成:1.时钟发生器模块:用于产生时钟信号,以驱动计数器进行计数。

2.计数器模块:通过时钟信号进行计数,并将计数结果传递给显示模块。

3.显示模块:将计数结果转换为数码管显示的数码信号,并控制数码管进行显示。

其中,时钟发生器模块和计数器模块都是基础电路模块,在这里不再赘述,下面将着重介绍显示模块的设计。

显示模块设计显示模块主要由控制模块和数码管模块构成。

控制模块根据计数结果和当前时间,控制数码管模块显示相应的数码。

在这里,我们采用的是共阳极的数码管。

具体来说,我们将控制模块分为两个子模块:时分秒计数器和数码显存控制器。

时分秒计数器时分秒计数器通过接收计数器模块的计数结果,将其转换为时分秒,并存储在计数器寄存器中。

计数器寄存器是一个64位的寄存器,由三个16位的子寄存器组成,用于存储时分秒。

当计数器模块的计数结果为0时,时分秒计数器会重置计数器寄存器。

数码显存控制器数码显存控制器由一个6位的数据存储器和一个6位的显示寄存器组成。

当计数器模块进行计数时,显示寄存器中存储的数码信号会根据时分秒计数器的值进行更新。

同时,数码显存控制器也会控制共阳极数码管进行相应的显示操作。

原理图设计根据以上的设计思路,我们可以得到数字秒表电路的原理图如下:原理图原理图EDA设计流程设计环境本次实验使用的是Xilinx ISE Design Suite 14.7,这是一个使用VHDL进行设计的EDA工具。

设计流程1.新建工程并设置工程名、目录、设备等基本信息。

2.添加源文件,包括时钟发生器模块、计数器模块、显示模块,以及顶层模块。

将所有模块综合为一个顶层设计。

3.检查时序约束,以保证电路能够正确运行。

EDA数字秒表的设计

EDA数字秒表的设计

EDA数字秒表的设计第一篇:EDA数字秒表的设计设计报告——数字秒表的设计EDA 一设计目的1.根据设计要求,完成对数字秒表的设计。

2.进一步加强对QuartusⅡ的应用和对Verilog HDL语言的使用。

二设计内容和要求1.计时精度应大于1/100S,计时器能显示1/100S的时间,提供给计时器内部定时的时钟频率应大于100Hz,这里选用KHz。

2.计时器的最大计时时间为1小时,为此需要6位的显示器,显示的最长时间为59分59.99秒。

3.设置有复位和起/停开关,复位开关用来使计数器清零,做好计时准备。

起停开关的使用方法与传统的机械式计数器相同,即按一下,启动计时器开始计时,再按一下计时终止。

三系统设计方案自顶向下的设计自顶向下的设计方法是数字系统设计中最常用的设计方法.也是基于芯片的系统设计的主要方法。

自顶向下的设计方法利用功能分割手段将设计由上到下进行层次话和模块化,及分层次、分模块进行设计和仿真。

功能分割时,将系统功能分解为功能块,功能块再分解为逻辑块,逻辑块再分解为更少的逻辑块和电路。

如此分割,逐步的将系统细化,将功能逐步的具体化,模块化。

高层次设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细描述在下一设计层次说明,最底层的设计才涉及具体寄存器和逻辑门电路等实现方式的描述。

四模块设计1.分频模块将输入1KHZ的系统时钟经过十分频分为100HZ的单位时钟。

编程原理跟计数器原理相似。

2.定时模块采用2个60进制、1个100进制的BCD码全加器作为定时器,分为分,秒,百分秒,输入时钟信号为分频器输出信号100HZ时钟,外界两个拨码开关作为清零按钮和暂停按钮。

3.位选发生器:根据显示的数据位和人眼暂留效应,设计显示分为分、秒、百分秒位,每位需要2个数码管进行显示,因此变化频率至少为300HZ,为了方便则采用1KHZ,循环码则从000循环到101。

4.多路选择器根据位选信号,输出对应位显示的数据。

EDA实验报告-数字秒表

EDA实验报告-数字秒表

EDA实验报告数字秒表的设计指导老师:谭会生班级:电技1503学号::博交通工程学院2017.10.28实验二数字秒表电路的设计一、实验目的1.学习Quartus Ⅱ软件的使用方法。

2.学习GW48系列或其他EDA实验开发系统的基本使用方法。

3.学习VHDL程序的基本结构和基本语句的使用。

二、实验容设计并调试一个计时围为0.01s~1h的数字秒表,并用GW48系列或其他EDA实验开发系统进行硬件验证。

三、实验要求1.画出系统的原理框图,说明系统中各主要组成部分的功能。

2.编写各个VHDL源程序。

3.根据系统的功能,选好测试用例,画出测试输入信号波形或编好测试程序。

4.根据选用的EDA实验开发装置偏好用于硬件验证的管脚锁定表格或文件。

5.记录系统仿真,逻辑综合及硬件验证结果。

6.记录实验过程中出现的问题及解决方法。

四、实验条件1.开发软件:Quartus Ⅱ13.0.2.实验设备:GW48系列EDA实验开发系统。

3.拟用芯片:EP3C55F484C7五、实验设计1.设计思路要设计一个计时为0.01S~1h的数字秒表,首先要有一个比较精确的计时基准信号,这里是周期为1/100s的计时脉冲。

其次,除了对每一个计数器需要设置清零信号输入外,还需为六个技术器设置时钟使能信号,即计时允许信号,以便作为秒表的计时起、停控制开关。

因此数字秒表可由一个分频器、四个十进制计数器以及两个六进制记数器组成,如图1所示。

系统原理框图2.VHDL程序(1)3MHz→100Hz分频器的源程序CLKGEN.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CLKGEN ISPORT(CLK: IN STD_LOGIC; --3MHZ信号输入NEWCLK: OUT STD_LOGIC); --100HZ计时时钟信号输出END ENTITY CLKGEN;ARCHITECTURE ART OF CLKGEN ISSIGNAL CNTER: INTEGER RANGE 0 TO 10#239999#; --十进制计数预置数BEGINPROCESS(CLK) ISBEGINIF CLK' EVENT AND CLK='1'THENIF CNTER=10#239999#THEN CNTER<=0; --3MHZ信号变为100MHZ,计数常熟为30000ELSE CNTER<=CNTER+1;END IF;END IF;END PROCESS;PROCESS(CNTER) IS --计数溢出信号控制BEGINIF CNTER=10#239999#THEN NEWCLK<='1';ELSE NEWCLK<='0';END IF;END PROCESS;END ARCHITECTURE ART;六进制计数器的源程序CNT6.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT6 ISPORT(CLK: IN STD_LOGIC;CLR: IN STD_LOGIC;ENA: IN STD_LOGIC;CQ: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);CO: OUT STD_LOGIC);END ENTITY CNT6;ARCHITECTURE ART OF CNT6 ISSIGNAL CQI: STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(CLK,CLR,ENA) ISBEGINIF CLR='1'THEN CQI<="0000";ELSIF CLK'EVENT AND CLK='1'THENIF ENA='1'THENIF CQI="0101" THEN CQI<="0000";ELSE CQI<=CQI+'1';END IF;END IF;END IF;END PROCESS;PROCESS(CQI) ISBEGINIF CQI="0000" THEN CO<='1';ELSE CO<='0';END IF;END PROCESS;CQ<=CQI;END ARCHITECTURE ART;十进制计数器的源程序CNT10.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CNT10 ISPORT(CLK:IN STD_LOGIC;CLR:IN STD_LOGIC;ENA: IN STD_LOGIC;CQ:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);CO: OUT STD_LOGIC );END ENTITY CNT10;ARCHITECTURE ART OF CNT10 ISSIGNAL CQI:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGINPROCESS(CLK,CLR,ENA) ISBEGINIF CLR='1' THEN CQI<="0000";ELSIF CLK'EVENT AND CLK='1' THENIF ENA='1' THENIF CQI="1001" THEN CQI<="0000";ELSE CQI<=CQI+'1';END IF;END IF;END IF;END PROCESS;PROCESS(CQI) ISBEGINIF CLK'EVENT AND CLK='1' THENIF CQI<"1001" THEN CO<='0';ELSE CO<='1';END IF;END IF;END PROCESS;CQ<=CQI;END ARCHITECTURE ART;数字秒表的源程序TIMES.VHDLIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY TIMES ISPORT(CLR: IN STD_LOGIC;CLK: IN STD_LOGIC;CLK2: IN STD_LOGIC;ENA: IN STD_LOGIC;COM: OUT STD_LOGIC_VECTOR(7 DOWNTO 0);SEG: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END ENTITY TIMES;ARCHITECTURE ART OF TIMES ISCOMPONENT CLKGEN ISPORT(CLK: IN STD_LOGIC;NEWCLK: OUT STD_LOGIC);END COMPONENT CLKGEN;COMPONENT CNT10 ISPORT(CLK, CLR, ENA: IN STD_LOGIC;CQ: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);CO: OUT STD_LOGIC);END COMPONENT CNT10;COMPONENT CNT6 ISPORT(CLK, CLR, ENA: IN STD_LOGIC;CQ: OUT STD_LOGIC_VECTOR(3 DOWNTO 0);CO: OUT STD_LOGIC);END COMPONENT CNT6;COMPONENT CTRLS IS --元件定义语句PORT(CLK: IN STD_LOGIC; --端口说明语句(端口名:端口模式数据类型)SEL: OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END COMPONENT CTRLS;COMPONENT DISPLAY IS --元件定义语句PORT(SEL: IN STD_LOGIC_VECTOR(2 DOWNTO 0);DATAIN: IN STD_LOGIC_VECTOR(23 DOWNTO 0);COM: OUT STD_LOGIC_VECTOR(7 DOWNTO 0);SEG: OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END COMPONENT DISPLAY;SIGNAL S0: STD_LOGIC;SIGNAL S1, S2, S3, S4, S5: STD_LOGIC;SIGNAL SEL: STD_LOGIC_VECTOR(2 DOWNTO 0); --定义1个标准位矢量的位矢量信号SEL,含有3个元素SIGNAL DOUT:STD_LOGIC_VECTOR(23 DOWNTO 0); --定义1个标准位矢量的位矢量信号DOUT,有24个数组元素BEGINU0: CLKGEN PORT MAP(CLK=>CLK, NEWCLK=>S0); --名字关联U1: CNT10 PORT MAP(S0, CLR, ENA, DOUT(3 DOWNTO 0), S1);U2: CNT10 PORT MAP(S1, CLR, ENA, DOUT(7 downto 4), S2); --位置关联U3: CNT10 PORT MAP(S2, CLR, ENA, DOUT(11 DOWNTO 8), S3);U4: CNT6 PORT MAP(S3, CLR, ENA, DOUT(15 DOWNTO 12), S4);U5: CNT10 PORT MAP(S4, CLR, ENA, DOUT(19 DOWNTO 16), S5);U6: CNT6 PORT MAP(S5, CLR, ENA, DOUT(23 DOWNTO 20));U7: CTRLS PORT MAP(CLK2,SEL);U8: DISPLAY PORT MAP(SEL(2 DOWNTO 0),DOUT(23 DOWNTO 0),COM(7 DOWNTO 0),SEG(7 DOWNTO 0)); --位置关联方式END ARCHITECTURE ART;六、实验结果及总结(1)仿真波形本设计包括两个层次,先进行底层的分频器CLKGEN、十进制计数器CNT10和六进制计数器CNT6的仿真,再进行顶层TIMES的仿真。

EDA技术之_秒表的设计

EDA技术之_秒表的设计

实验三秒表的设计一、实验目的:1、熟练利用VHDL语言进行数字系统设计;2、掌握数字系统的设计方法——自顶向下的设计思想;3、掌握计数器的设计与使用;4、根据秒表的功能要求设计一个秒表;二、实验设备:PC机一台、EDA教学实验系统一台、下载电缆一根(已接好)、导线若干三、实验要求:1、有秒、分计数,数码扫描显示输出;2、有清零端和计数使能端;3、在功能允许的情况下,可自由发挥;四、实验原理:1、功能描述:秒表是一种计时的工具,有着很广泛的用途。

本实验中的秒表要求有两个功能按钮:一个是计数和停止计数按钮,当第一次按下此按钮时,秒表开始计数,再一次按下时,秒表停止计数,并显示所计的数字;另一个是清零按钮,当按下此按钮时,秒表清零。

在数码管上采用扫描显示输出。

2、基本原理:本实验中用到的主要元件有计数器、控制逻辑、数据选择器和译码器等。

秒、分都是60 进制计数,所以必须采用两个60 进制的计数器(或6 进制计数器与10 进制计数器的组合);控制逻辑主要是用来实现计数和清零。

基本方框图如下:注意:计数器必须有进位输出、计数使能端和清零端。

3、自顶向下的设计方法:自顶向下的设计方法是数字系统设计中最常用的设计方法,也是基于芯片的系统设计的主要方法。

它的基本原理框图如下:自顶向下的设计方法利用功能分割手段将设计由上到下进行层次化和模块化,即分层次、分模块进行设计和仿真。

功能分割时,将系统功能分解为功能块,功能块再分解为逻辑块,逻辑块再分解为更少的逻辑块和电路。

如此分割,逐步的将系统细化,将功能逐步具体化,模块化。

高层次设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细描述在下一设计层次说明,最底层的设计才涉及具体寄存器和逻辑门电路等实现方式的描述。

(注意:这里所说的模块可能是芯片或电路板。

)五、实验步骤:1、采用自顶向下的设计方法,首先将系统分块;2、设计元件,即逻辑块;3、一级一级向上进行元件例化(本实验只需例化一次即可),设计顶层文件。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

编译原理课程
2015~2016年度第2学期实验题目:数字秒表设计
院系:信息学院
班级:
学号:
姓名:
一. 设计原理和结构
1.秒表功能
秒表实现显示范围为是00:00:00-11:59:59的功能,显示精度为1ms,可实现功能:
①、通过计数器的cin端口来控制计数器的启动实现可控的启动功能;
②、通过控制计数器清零端aclr来实现数字秒表清零功能。

当aclr清零端为
高电平时,计数器清零,也即数字秒表清零,否则秒表正常计数;
③、通过暂停键pause暂停功能,当暂停键为低电平时,数字出现暂停。

2.秒表结构
秒表主要以下起见构成:
①.50M_100HZ的分频器
②.12进制的BCD计数器
③.460进制的BCD计数器
④.try7447译码器
此外,秒表还需有一个启动信号、清零信号及报时信号,以便实现对秒表的控制和有效应用(启动和清零信号及报时信号由使用者给出,设计时主要任务是将此外界信号的功能准确的通过数字秒表体现出来,也即,当使用者给出启动信号时数字秒表能够正常启动,上面已经给出,启动和清零的功能是通过将此信号送给计数器来实现的)。

二. 方案实施
1. 子模块原理图及功能仿真
1.1分频器模块
由于下载板只能提供50M的时钟脉冲,为了达到秒表显示1ms的精度,需要50M_100HZ 的分频器进行分频。

图1.1-1为分频器的原理图。

图1.1-1原理图:
1.2 模12BCD计数器
模12BCD计数器显示范围的是00-12,由symbol图可以看出clk为时钟信号、clr_n为清零端(cir_n为低电平时计数器清零)、shiwei[3..0]和gewei[3..0]为输出计数端口。

图1.2-1为模12BCD计数器原理图,图1.2-2为生成模12BCD计数器symbol文件,图1.2-3为功能仿真波形图。

图1.2-1原理图:
图1.2-2 symbol:
图1.2-3仿真波形图:
1.3 模60BCD计数器
模60BCD计数器显示范围的是00-59,由symbol文件可以得clk1为时钟信号,cin为使能信号(start为1时计数器正常计数),pause1为暂停键(当pause1为低电平时,计数暂停),aclr为清零端(高电平有效),ql[3..0]和qh[3..0]为BCD码输出端,cout1为进位输出端。

图1.3-1为模60BCD计数器原理图,图1.3-2为生成模60BCD计数器symbol文件,图1.3-3为功能仿真波形图。

图1.3-1原理图:
图1.3-2symbol文件:
图1.3-3 功能仿真波形图:
1.4try7447译码器
图1.4-1为try7447译码器原理图,图1.4-2为生成try7447译码器symbol文件,图1.4-3为功能仿真波形。

图1.4-1原理图:
图1.4-2 symbol文件:
图1.4-3仿真波形图:
2.顶层模块
图2-1为顶层原理图,图2-2为没有加分频器的原理图(为了方便接下来的功能仿真),图2-3为clk的时钟周期设置,图2-4和图2-5均为功能仿真波形图。

图2-1顶层原理图:
图2-2 仿真原理图:
图2-3 clk的时钟周期:
图2-4功能仿真波形图:
三.实验总结
通过此次课程设计,学到了很多。

即使再简单的题目也会因为知识的匮乏而显得困难,因此需要加强对EDA知识的学习;实验是学习EDA最好的方法,在没做实验前,纯理论的学习效率很低,接触实验后,才明白好多不懂的问题,做了一个完整的题目就对EDA的基本流程有了大致的了解,胜于看几遍书,以后要加强实验练习。

相关文档
最新文档