EDA数字秒表的设计
EDA数字秒表的设计
目录1 绪论 ....................................................................... 1 .2 设计要求 ................................................................... 2 .3 总体设计要求 ............................................................... 2 .3.1 基本原理.............................................................. 2 .3.2 分频器模块............................................................ 3 .3.3 计数模块.............................................................. 4 .3.4 记录模块.............................................................. 6 .3.5 寄存器模块............................................................ 7 .3.6 回放模块.............................................................. 8 .3.7 选择模块.............................................................. 9 .3.8 数显模块............................................................. 1..13.9 数字秒表的总原理图................................................... 1..34 仿真调试 .................................................................. 1..44.1 分频器模块的仿真调试................................................. 1 (4)4.2 计数器模块的仿真调试................................................. 1 (4)4.3 记录模块的仿真调试................................................... 1..54.4 寄存器模块的仿真..................................................... 1 (5)4.5 回放模块的仿真调试................................................... 1..64.6 选择模块的仿真调试................................................... 1..65 管脚分配 .................................................................. 1..66 总结与心得体会 ............................................................ 1..7参考文献..................................................................... 1 (8)附录:源程序代码............................................................. 1..9 1绪论EDA是电子设计自动化(Electronic Design Automation )的缩写,在20世纪 60年代中期从计算机辅助设计(CAD )、计算机辅助制造(CAM )、计算机辅助测试(CAT)和计算机辅助工程(CAE、的概念发展而来的。
基于EDA的数字秒表课程设计
基于EDA的数字秒表课程设计一、课程目标知识目标:1. 学生能理解EDA(电子设计自动化)的基本概念,掌握数字秒表的基本原理;2. 学生能描述数字秒表的电路结构,了解各个部分的功能和相互关系;3. 学生能掌握数字秒表设计中所涉及的数字逻辑,如计时、清零、启动/停止等功能的实现。
技能目标:1. 学生能够运用所学知识,使用EDA工具进行数字秒表的电路设计和仿真;2. 学生能够分析并解决数字秒表设计过程中遇到的问题,提高实际操作能力;3. 学生能够通过小组合作,完成数字秒表的调试与优化,提高团队协作能力。
情感态度价值观目标:1. 学生通过本课程的学习,培养对电子设计的兴趣和热情,提高探究精神;2. 学生能够认识到科技发展对日常生活的影响,增强社会责任感和创新意识;3. 学生在小组合作中学会尊重他人意见,培养良好的沟通能力和团队精神。
分析课程性质、学生特点和教学要求,本课程目标将分解为以下具体学习成果:1. 学生能够独立完成数字秒表的电路设计和仿真;2. 学生能够通过小组合作,完成数字秒表的调试与优化,并撰写实验报告;3. 学生能够对课程中所学知识进行总结,以口头或书面的形式进行分享。
二、教学内容本课程教学内容依据课程目标,紧密结合教材,制定以下详细教学大纲:1. 数字电路基础知识回顾- 复习数字逻辑基础,强调触发器、计数器等基本组件的工作原理。
2. EDA工具介绍- 介绍EDA软件的使用方法,如Multisim、Proteus等。
3. 数字秒表的原理与设计- 讲解数字秒表的电路结构,分析各部分功能;- 引导学生理解秒表的计时原理,探讨如何实现启动、停止、清零等功能。
4. 电路设计与仿真- 指导学生使用EDA工具进行数字秒表的电路设计;- 教学过程中,针对设计过程中可能遇到的问题进行讲解和指导。
5. 小组合作调试与优化- 学生分组进行电路调试,优化设计;- 引导学生学会分析问题、解决问题,提高实际操作能力。
EDA课程设计数字秒表设计
目录数字秒表设计性实验任务书 ........................................................ 错误!未定义书签。
一、设计性实验目的 ............................................................... 错误!未定义书签。
二、设计性实验说明 ............................................................... 错误!未定义书签。
三、实验箱给定硬件 ............................................................... 错误!未定义书签。
四、要求 ................................................................................... 错误!未定义书签。
实验报告 .. (3)一、数字秒表顶层设计 (3)二、数字秒表内部设计 (3)1、分频器 (3)2、十进制计数器 (4)3、六进制计数器 (6)4、二十四进制计数器 (7)5、数据选择和数码管选择模块 (8)6、数码管驱动模块: (10)三、数字秒表仿真波形 (11)四、实验总结 (11)数字秒表设计性实验任务书一、设计性实验目的:在MAX-PLUS II软件平台上,熟练运用VHDL硬件描述语言,完成数字时钟的文本输入或原理图输入、编译、综合、仿真,利用EDA实验箱,实现数字秒表的硬件实现。
二、设计性实验说明:1、数字秒表电路主要由:分频器、扫描显示译码器、六十进制计数器(或由十进制计数器与六进制计数器组成),十二进制计数器(或二十四进制计数器)、一百进制计数器电路组成;2、数字秒表显示由小时(十二或二十四进制任选)、分钟(六十进制)、秒(六十进制)、十分之一秒、百分之一秒组成;3、各模块功能:(1)分频器模块:用来产生100Hz计时脉冲;(2)十二或二十四进制计数器模块:对小时进行计数;(3)六十进制计数器模块:对分秒进行计数;(4)六进制计数器模块:分别对分十位和秒十位进行计数;(5)十进制计数器模块:分别对分个位、秒个位、十分之一秒、百分之一秒进行计数;(6)扫描显示译码器模块:完成对7字段数码管/液晶显示的控制;(7)一百进制计数器模块:对十分之一秒和百分之一秒进行计数;三、实验箱给定硬件:1、系统时钟脉冲信号为10MHz;2、CPLD/FPGA芯片型号:EPM7128SLC84-5、EPM1K30TC144-3、EPM1K100QC208-3(根据实验箱上的芯片型号选择);3、8个7字段共阴显示数码管(选用);4、液晶显示器1602(选用);5、拨码开关、按键;四、要求:1、精确显示小时、分钟、秒;2、具有清零、启动、保持功能;3、显示采用数码管显示或液晶显示;实验报告一、数字秒表顶层设计外部输入:启动/停止信号(start);10MHZ的时钟信号(clk);清零信号(clr);外部输出:位选控制信号(sel0、sel1、sel2);7段数码管显示信号(led0、led1、led2、led3、led4、led5、led6、led7);数字秒表顶层原理图二、数字秒表内部设计1、分频器功能:将10MHz的时钟信号转换成100Hz的计时脉冲,使秒表正常工作。
EDA秒表设计
EDA原理及应用实验报告题目:多功能数字秒表专业:电子信息工程班级:姓名:学号:一、设计题目:多功能数字秒表二、设计目标:1.精确到1/100秒2.留个数码管显示范围0.01——59.59.99S3.有复位端,使能端4.当时间到达设置的时间时,蜂鸣器报警,按下按键可消除声音,但继续计时。
三、设计原理:(含系统总的原理图)由三个分频器模块,六个计数器模块,一个扫描数码管模块,和一个蜂鸣器报警模块连接而成。
四、设计内容:(含状态转换图、软件流程图、说明文字等,每单独模块的图标和VHDL程序;最后为总体程序框图)(1)分频器模块1LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY DVF ISPORT(CLK:IN STD_LOGIC;--D:IN STD_LOGIC_VECTOR(3 DOWNTO 0);FOUT:OUT STD_LOGIC);END;ARCHITECTURE one OF DVF ISSIGNAL FULL:STD_LOGIC;BEGINP_REG:PROCESS(CLK)V ARIABLE CNT8:INTEGER RANGE 48000000 DOWNTO 0; BEGINIF CLK'EVENT AND CLK='1' THENIF CNT8=240000 THENCNT8:=0;FULL<='1';ELSE CNT8:=CNT8+1;FULL<='0';END IF;END IF;END PROCESS P_REG;P_DIV:PROCESS(FULL)V ARIABLE CNT2:STD_LOGIC;BEGINIF FULL'EVENT AND FULL='1' THENCNT2:=NOT CNT2;IF CNT2='1' THEN FOUT<='1';ELSE FOUT<='0';END IF;END IF;END PROCESS P_DIV;END;RTL状态图说明:采用的是48M时钟输入,作为0.01S最低位的时钟信号。
EDA课程设计数字秒表
课程设计目录第一章:系统设计要求 (3)第二章:实验目的 (3)第三章:实验原理 (3)第四章:系统设计方案 (3)第五章:主要VHDL源程序 (4)1) 十进制计数器的VHDL源程序 (4)2) 六进制计数器的VHDL源程序 (5)3)蜂鸣器的VHDL源程序 (5)4)译码器的VHDL源程序 (6)5)控制选择器的VHDL源程序 (7)6)元原件例化的VHDL源程序 (8)第六章:系统仿真 (10)第七章:系统扩展思路 (11)第八章:设计心得总结 (11)数字秒表的设计一、系统设计要求1.秒表共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出,这样便于和显示译码器的连接。
当计时达60分钟后,蜂鸣器鸣响10声。
2.整个秒表还需有一个启动信号和一个归零信号,以便秒表能随意停止及启动。
3.秒表的逻辑结构较简单,它主要由显示译码器、分频器、十进制计数器、六进制计数器和报警器组成。
在整个秒表中最关键的是如何获得一个精确的100HZ计时脉冲。
二、实验目的通过本次课设,加深对EDA技术设计的理解,学会用QuartusⅡ工具软件设计基本电路,熟练掌握VHDL语言,为以后工作使用打下坚实的基础。
三、实验原理秒表由于其计时精确,分辨率高(0.01秒),在各种竞技场所得到了广泛的应用。
秒表的工作原理与数字时基本相同,唯一不同的是秒表的计时时钟信号,由于其分辨率为0.01秒,所以整个秒表的工作时钟是在100Hz的时钟信号下完成。
当秒表的计时小于1个小时时,显示的格式是mm-ss-xx(mm表示分钟:0~59;ss表示秒:0~59;xx表示百分之一秒:0~99),当秒表的计时大于或等于一个小时时,显示的和多功能时钟是一样的,就是hh-mm-ss(hh表示小时:0~99),由于秒表的功能和钟表有所不同,所以秒表的hh表示的范围不是0~23,而是0~99,这也是和多功能时钟不一样的地方。
EDA多功能秒表课程设计
EDA多功能秒表课程设计一、课程目标知识目标:1. 学生能理解EDA多功能秒表的基本原理和功能。
2. 学生能掌握秒表的计时、计次和闹钟等功能操作。
3. 学生了解秒表在日常生活和运动竞赛中的应用。
技能目标:1. 学生能运用所学知识,独立操作多功能秒表,进行计时和计次。
2. 学生能通过分析秒表数据,提高解决问题的能力。
3. 学生能运用秒表进行简单的运动计时和数据分析。
情感态度价值观目标:1. 学生培养对电子产品的兴趣,激发学习电子技术知识的热情。
2. 学生在团队协作中,培养合作精神和沟通能力。
3. 学生通过运用秒表进行运动计时,培养公平竞争和尊重规则的意识。
课程性质:本课程为实践性较强的电子技术课程,结合多功能秒表的实用功能,使学生掌握基本操作和运用。
学生特点:学生处于好奇心强、动手能力逐渐增强的阶段,对新鲜事物充满兴趣,善于合作与分享。
教学要求:教师需引导学生主动参与,注重实践操作,培养学生动手能力和解决问题的能力。
在教学过程中,关注学生的情感态度,激发学生的学习兴趣,提高学生的综合素质。
通过本课程的学习,使学生将所学知识应用于实际生活,达到学以致用的目的。
二、教学内容本章节教学内容主要包括以下几部分:1. 多功能秒表的原理与结构:介绍秒表的电子元件、工作原理和整体结构,使学生了解秒表的内部构造和功能实现方式。
教材章节:第一章 电子元件与电路基础2. 多功能秒表的操作与使用:详细讲解秒表的计时、计次、闹钟等功能操作,以及如何进行复位、设置等操作。
教材章节:第二章 数字电路与计时器3. 秒表在运动计时中的应用:通过实例分析,使学生了解秒表在运动竞赛中的实际应用,如田径、游泳等项目的计时。
教材章节:第三章 计时器在体育运动中的应用4. 秒表数据的分析与处理:教授学生如何分析秒表数据,进行简单的数据处理,提高学生解决问题的能力。
教材章节:第四章 数据分析与处理5. 实践操作:安排学生进行实际操作,如使用秒表进行计时、计次,分析数据等,巩固所学知识。
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课程设计--数字秒表设计
电子课程设计—数字秒表的设计数字秒表的设计数字秒表的设计一、设计任务与要求1、数字秒表的计时范围是0秒~59分59.99秒,显示的最长时间为59分59秒。
秒。
2 2、数字秒表的计时精度是、数字秒表的计时精度是10ms 10ms。
3 3、、复位开关可以在任何情况下使用,复位开关可以在任何情况下使用,即便在计时过程中,即便在计时过程中,即便在计时过程中,只要按一下复位只要按一下复位开关,计时器就清零,并做好下次计时的准备。
开关,计时器就清零,并做好下次计时的准备。
4 4、、具有启具有启//停开关,停开关,即按一下启即按一下启即按一下启//停开关,停开关,启动计时器开始计时,启动计时器开始计时,启动计时器开始计时,再按一下再按一下启/停开关则停止计时。
停开关则停止计时。
二、总体框图由频率信号输出端输出频率为100HZ 的时钟信号,输入到微妙模块的时钟端clk ,高/低电平电平频率信号输入输入微妙模块微妙模块秒模块秒模块分模块分模块置数/位选位选显示模块显示模块进位进位微妙模块为100进制的计数器,产生的进位信号co 输入到下一级秒模块的时钟端,以此类推,直到分模块计数到59进60时,产生的进位信号不输出,计数清零。
将微妙、秒、分产生的计数通过置数/位选再通过显示模块实时显示。
设计方案:利用一块芯片完成除时钟源,利用一块芯片完成除时钟源,按键和显示器之外的所有数字电路功按键和显示器之外的所有数字电路功能。
所有数字逻辑功能都在CPLD 器件上用VHDL 语言实现。
这样设计具有体积小,设计周期短,调试方便,故障率地和修改升级容易等特点,本设计采用自顶向下,混合输入方式(原理图输入——顶层文件链接和VHDL 语言输入——各模块程序设计)实现数字秒表的设计,下载和调试。
三、功能模块1.1. 微秒模块微秒模块采用VHDL 语言输入方式,以时钟clk clk,清零信号,清零信号clr 以及暂停信号STOP 为进程敏感变量,程序如下:为进程敏感变量,程序如下:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all; entity MINSECONDb isport(clk,clrm,stop:in std_logic;----时钟时钟//清零信号清零信号secm1,secm0:out std_logic_vector(3 downto 0);----秒高位秒高位//低位co:out std_logic);------- co:out std_logic);-------输出输出输出//进位信号进位信号 end MINSECONDb;architecture SEC of MINSECONDb is signal clk1,DOUT2:std_logic;beginprocess(clk,clrm)variable cnt1,cnt0:std_logic_vector(3 downto 0);---计数计数 VARIABLE COUNT2 :INTEGER RANGE 0 TO 10 beginIF CLK'EVENT AND CLK='1'THENIF COUNT2>=0 AND COUNT2<10 THEN COUNT2:=COUNT2+1; ELSE COUNT2:=0;DOUT2<= NOT DOUT2; END IF; END IF;if clrm='1' then----if clrm='1' then----当当clr 为1时,高低位均为0cnt1:="0000"; cnt0:="0000";elsif clk'event and clk='1' then if stop='1' then cnt0:=cnt0; cnt1:=cnt1; end if;if cnt1="1001" and cnt0="1000" ;then----then----当记数为当记数为9898(实际是经过(实际是经过59个记时脉冲)个记时脉冲) co<='1';----co<='1';----进位进位进位cnt0:="1001";----cnt0:="1001";----低位为低位为9elsif cnt0<"1001" then----elsif cnt0<"1001" then----小于小于9时 cnt0:=cnt0+1;----cnt0:=cnt0+1;----计数计数计数 --elsif cnt0="1001" then --clk1<=not clk1;elsecnt0:="0000";if cnt1<"1001" then----if cnt1<"1001" then----高位小于高位小于9时 cnt1:=cnt1+1; elsecnt1:="0000"; co<='0'; end if; end if; end if;secm1<=cnt1; secm0<=cnt0;end process; end SEC;程序生成器件如图:clk clrm stopsecm1[3..0]secm0[3..0]coMINSECONDbinst3微妙模块生成的器件可以实现带有100进制进位和清零功能,暂停等功能,MINSECONDb 输入为100HZ 脉冲和低电平的清零信号CLR 与暂停信号STOP STOP,输出,输出微妙个位、十位及进位信号CO CO。
eda课程设计资料 实验一 数字式秒表
实验一 数字式秒表设计一、设计任务与技术指标试设计并制作一个用七段数码管显示的秒表,并具有如下指标:1. 设计一个用七段数码管显示的秒表,它有“分”、“秒”、“百分之一秒” 十进制显示,如图1所示:图1 秒表表盘示意图2. 开机显示00.00.00,最大显示23.59.99; 3. 能够准确地计时并正确显示时间,计时精度 0.01秒;4. 用户可以随时开始计时,也可随时结束计时。
二、设计原理该系统由时钟信号发生器、分频电路、计时电路、译码显示电路等模块组成。
其总体框图如图2所示:图2 系统总体框图1.时钟信号发生器使用GW48系统主板上的“CL0CK0”时钟频率来实现(信号频率范围:0.5Hz ~50MHz ,建议选用1.5MHz 信号源)。
2.分频电路的设计设输入频率为1.5MHz 的脉冲信号,要求得到100Hz 的脉冲信号,那么分频系数的计算公式如下:分频系数=分频后的频率分频前的频率3.计时电路在数字电路中,计时电路一般是用计数器来实现的,例如时间的“秒”与“分”就是一个60进制的问题。
60进制计数器外部端口图如图3所示:occlky[5…0]图3 计数器外部端口图时钟信号 发 生 器 分频 电路 计时 电路 数码管显示驱动电路计数器其中,oc是计数器进位输出端。
y[5…0]为本位输出端。
三、设计平台及可选器件GW48-CK EDA实验板开发系统、EP1K30、共阴极七段数码管、发光二极管、按键开关、电阻、电容等。
选用平台的模式:No.7四、设计要求1.编制VHDL程序,并在QuartusII环境下编译通过;2.对源程序进行逻辑仿真,仿真结果正确;3.将编译后的程序下载至目标器件,进行硬件测试,硬件测试结果正确;4.各块采用文本编辑的方式生成元件图形,在直接利用元件图形编辑秒表。
五、设计报告要求1.简单叙述设计过程(包括原理、方案);2.画出完整的顶层文件原理图;3.给出完整的程序设计文档;4.说明调试方法与调试过程;。
EDA秒表设计 实验报告
EDA课程设计报告——基于VHDL语言的秒表设计课程名称:EDA技术院系:地球物理及信息工程学院专业班级:电子信息工程08级2班学生姓名:学号:指导老师:完成时间:2011年5月18日秒表设计一. 设计要求利用EDA实验箱,通过VHDL语言进行编程,设计一个简单的秒表,并用EDA实验箱进行实现,具体设计要求如下:(1)有使能、暂停、继续、秒表计数功能;(2)带有异步复位功能;(3)显示分、秒信息,若需要,显示秒表信息。
二. 设计的作用、目的在本次设计中,可以简单的了解EDA技术的应用以及VHDL语言编写的方法。
通过设计一个秒表,可以掌握用VHDL设计多位加法计数器的方法,尤其是调整时钟使得每过一秒就改变一个数,达到设计的要求。
三. 设计的具体实现1.系统概述本次系统设计主要分三个部分,一是通过VHDL语言设计一个八位的加法计数器,来实现秒表的计时功能;二是通过调整时钟使秒表计数为每秒改变一个数;三是加入一些控制按键,实现使能、暂停、继续等功能。
2.程序具体设计秒表显示共有6位,两位显示分,两位显示秒,十分秒和百分秒各一位。
设计时使用一个计数器,随着时钟上升沿的到来循环计数,每计数一次,百分秒位加一,通过百分秒位满十进位来控制十分位的计数,十分位满十进位,依次类推,实现秒表计数。
为实现秒位的计时精确,百秒位必须以0.01秒的时间间隔计数,即时钟的频率是100Hz。
为此,本设计采用3MHz的时钟频率通过分频得到100Hz的时钟频率,再送给控制时钟以得到比较精确的CLK信号。
具体程序设计见附录。
引脚定义如下:其中,时钟信号CLK为3MHz的时钟频率,分频后得到的时钟为CLK2,输出引脚CLK2和输入引脚CLK2在外部相连,实现将分频后的时钟送入。
3.调试应用MAX+plus II软件编译调试实验控制程序, 仿真运行结果如下:(1)给时钟后,实现开始功能:开始键按下(STA=‘1’)后,秒表计数开始。
(2)给时钟后,实现暂停功能:从上图可以看出暂停键按下后(POS=‘1’),输出(CQ)保持不变,直到暂停键再次按下(POS=‘0’),输出才继续计数,从而实现了暂停的功能。
eda电子秒表的课程设计
eda电子秒表的课程设计一、课程目标知识目标:1. 学生能够理解电子秒表的基本原理,掌握EDA技术中电子秒表的设计流程。
2. 学生能够描述电子秒表的各个模块功能,如计时器、触发器、显示等。
3. 学生了解数字电路的基础知识,并掌握基础的编程思想。
技能目标:1. 学生能够运用所学知识,设计并实现一个简单的电子秒表,具备计时、停止、清零等功能。
2. 学生能够通过实验操作,培养动手实践能力,提高问题解决能力。
3. 学生能够运用团队协作,进行项目设计与实施,提高沟通与协作能力。
情感态度价值观目标:1. 学生培养对电子技术和编程的兴趣,激发学习热情,形成积极的学习态度。
2. 学生通过实践操作,培养创新思维和探究精神,提高自信心。
3. 学生在团队协作中,学会尊重他人,培养集体荣誉感和社会责任感。
课程性质:本课程为实践性强的课程,结合电子技术、数字电路和编程知识,培养学生的实际操作能力和团队协作精神。
学生特点:学生为初中生,具备一定的电子知识和编程基础,对实践操作感兴趣,喜欢探索新事物。
教学要求:课程要求教师引导学生主动参与,注重实践操作和团队协作,强调知识与技能的融合,培养学生解决问题的能力。
通过本课程的学习,学生能够达到上述课程目标,实现知识、技能和情感态度价值观的全面发展。
二、教学内容本课程教学内容主要包括以下几部分:1. 电子秒表原理介绍:讲解电子秒表的基本工作原理,包括计时器、触发器、显示等模块的功能和相互关系。
2. 数字电路基础知识:复习与电子秒表相关的数字电路知识,如门电路、触发器、计数器等。
3. EDA技术:介绍EDA技术的基本概念,学习如何利用EDA软件(如Multisim、Protel等)进行电子秒表的设计与仿真。
4. 编程知识:学习与电子秒表相关的编程语言和编程思想,如C语言、汇编语言等。
5. 实践操作:分组进行电子秒表的设计与制作,包括电路图绘制、程序编写、电路板焊接、调试与测试等。
教学内容安排如下:第一课时:电子秒表原理介绍,数字电路基础知识复习。
EDA课程设计:数字秒表的设计
EDA 课程设计报告——数字秒表的设计指导老师:时间:组员:一、设计流程1. 文本编辑:用Active-HDL的编译环境进行编写源代码,编译通过后,保存为.hdl文件格式。
2. 功能仿真:将文件调入Active-HDL仿真环境里进行功能仿真,检查逻辑功能是否正确。
3. 逻辑综合与物理实现:将源代码调入ISE软件中,逻辑综合,管脚分配,下载到FPGA板上调试物理实现。
二、设计规划本系统设计采用自顶向下的设计方案,系统的整体组装设计原理图如图1所示,它主要由控制模块、时基分频模块,计时模块和显示模块四部分组成。
各模块分别完成计时过程的控制功能、计时功能与显示功能。
图1系统组成框图三、各模块的原理及其程序本系统设计由控制模块、时基分频模块,计时模块和显示模块四部分组成。
各模块实现秒表不同的功能。
1、控制模块计时模块的作用是针对计时过程进行控制。
计时控制模块可用俩个按钮来完成秒表的启动、停止和复位。
部分源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRL ISPORT( CLR,CLK,SP:IN STD_LOGIC;EN :OUT STD_LOGIC);COM:PROCESS(SP,CURRENT_STATE)BEGINEND IF;END PROCESS;END BEHAVE;2、时基分频模块时基分频模块的作用把输入时钟信号变为分频输出信号。
部分源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CB10 ISPORT( CLK: IN STD_LOGIC;CO : OUT STD_LOGIC);END CB10;ARCHITECTURE ART OF CB10 ISSIGNAL COUNT:STD_LOGIC_VECTOR (3 DOWNTO 0); BEGINPROCESS(CLK)BEGINIF RISING_EDGE(CLK)THENIF COUNT="1001"THENCOUNT<="0000";CO<='1';ELSECOUNT<=COUNT+1;CO<='0';END IF;END IF;END PROCESS;END ART;3、计时模块计时模块执行计时功能,计时方法和计算机一样是对标准时钟脉冲计数。
EDA-数字秒表设计
电子设计自动化I 大作业ii 题目数字秒表设计j:ii:-I 学院控制科学与工程学院:iI 班级_______ 自动化0803 ____________ -iI 姓名_______________________________________ j学号_______________________________________!j:i 二oo——年五月十二日题目:数字秒表的设计一、设计要求:(1)数字秒表的计时精度是10ms;(2)复位开关可以在任何情况下使用,计时在计时过程中,只要按一下复位开关,计时器就清零,并做好下次计时的准备;(3)具有启/停开关,即按一下启/停开关,启动计时器开始计时,再按一下启/ 停开关则停止计时。
⑷数字秒表的计时范围是0秒~59分59.99秒,显示的最长时间为59分59 秒、总体设计:1、总体结构图通过数据的编码控制数码管的显2、各模块功能示1) SEL模块:将扫描信号输给选择(CHOICE)模块2) 选择模块:按扫描信号的指定选择输出3) 3-8译码模块:通过SEL给的信号来控制8位数码管位的亮灭4 )计时模块:分别对毫秒,秒,分计时5)显示模块:通过CHOICE模块的输出信号来控制三、单元模块设计1、模块名:sel模块设计t-T-HHT—■- - - ■SH— -■■■ - -eH— - ! ! - - -BS - ■SB TT SS ・* - ■sel Ii3—elk □叫2期irstS 1j ■■■■= = > ■■■■■■■■"■■ - is™"■! ■■■r - —-r■ - yd、(1 )模块功能:CLK为扫描时钟脉冲,SELOUT端不停的发出扫描到的信号(2 )端口定义:CLK为信号输入端SELOUT[2..0]为选择到的信号输出3) VHDL 源程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity sel is port(clk: in std_logic;selout: out std_logic_vector(2 downto 0)); end sel; architecture one of sel issignal count: std_logic_vector(2 downto 0);beginprocess(clk)beginif clk'event and clk='1' thenif (count="101") then count<="000";elsecount<=count+1;end if;end if;end process;selout<=count;end one;(4 )仿真结果0] 0](1 )模块功能:按扫描信号的指定选择输出 (2 )端口定义:a,b,c 为控制信号;data1[3..O],data2[3..O],data3[3..O],data4[3..O],data5[3..O], data6[3..O] 分别是毫秒的低位,毫秒的高位, 秒的低位,秒的高位,分的低位,分的高位的数据值; ch_out[3..0]为选择输出端。
数字秒表设计EDA课设报告
数字秒表设计EDA课设报告概述本课设要求设计一款加减计时秒表,需要实现的功能如下: - 显示秒表计时的数字; - 点击“开始”按钮开始计时; - 点击“停止”按钮停止计时; - 点击“复位”按钮清零计时; - 点击“加号”和“减号”按钮可以每次增加或减少1秒计时。
为了完成上述功能,我们选择EDA软件进行仿真和布图设计。
设计思路我们首先需要构思秒表的实现流程,考虑到需要实时更新读取的数据,所以我们选择使用FPGA芯片作为逻辑控制基础。
FPGA芯片是可编程逻辑芯片,可以对逻辑电路进行可编程配置,实现各种功能,如:加法器、减法器、触发器等。
整体设计思路我们将秒表的设计思路划分为以下步骤: 1. 使用时钟信号,设置计时寄存器和数码管显示寄存器; 2. 配合开始、停止两个开关控制开始和停止计时; 3. 设置加减计时器,在每次计时加减操作时使用; 4. 清零操作使用复位开关实现。
时钟信号和计时寄存器时钟信号可以使用EDA软件自带的时钟模块实现,设置计时寄存器用于记录加减后的计时结果。
这部分主要有以下几个步骤: - 外部时钟进入FPGA芯片中;- 引出一个指定频率的时钟信号; - 将时钟信号连接到计时寄存器的时钟端; - 计时寄存器向外部输出计时结果。
开始、停止控制实现开始、停止控制实现需要引入开关电路,可以使用EDA软件预设的开关模块。
我们可以将开关模块与数码管显示寄存器和计时寄存器进行连接,参考以下步骤进行实现: - 设计电路,将“开始”和“停止”两个开关用于控制计时器寄存器的启动和停止; - 将时钟信号连接到开关电路中,作为同步信号; - 将开关电路输出的信号连接到计时器寄存器和数码管显示寄存器。
这样,在开始计时时,计时寄存器会开始计时,并输出计时结果到数码管;而停止计时时,计时寄存器和数码管都会停止更新。
加减计时器和清零操作加减计时器和清零操作也可以使用EDA软件中的加减器模块和复位模块来实现。
实现步骤如下: - 设计加减计时器模块,包含加减按钮、加减器、计时寄存器,将加减按钮连接至加减器,加减器连接至计时寄存器; - 设计一个带复位功能的复位模块,将复位按钮连接至计时器寄存器和数码管。
EDA课程设计:数字秒表地设计
EDA课程设计报告——数字秒表的设计指导老师:时间:组员:一、设计流程1.文本编辑:用Active-HDL的编译环境进行编写源代码,编译通过后,保存为.hdl文件格式。
2.功能仿真:将文件调入Active-HDL仿真环境里进行功能仿真,检查逻辑功能是否正确。
3.逻辑综合与物理实现:将源代码调入ISE软件中,逻辑综合,管脚分配,下载到FPGA板上调试物理实现。
二、设计规划本系统设计采用自顶向下的设计方案,系统的整体组装设计原理图如图1所示,它主要由控制模块、时基分频模块,计时模块和显示模块四部分组成。
各模块分别完成计时过程的控制功能、计时功能与显示功能。
图1 系统组成框图三、各模块的原理及其程序本系统设计由控制模块、时基分频模块,计时模块和显示模块四部分组成。
各模块实现秒表不同的功能。
1、控制模块计时模块的作用是针对计时过程进行控制。
计时控制模块可用俩个按钮来完成秒表的启动、停止和复位。
部分源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CTRL ISPORT( CLR,CLK,SP:IN STD_LOGIC;EN :OUT STD_LOGIC);…………………………………………COM:PROCESS(SP,CURRENT_STATE)BEGINEND IF;END PROCESS;END BEHAVE;2、时基分频模块时基分频模块的作用把输入时钟信号变为分频输出信号。
部分源程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY CB10 ISPORT( CLK: IN STD_LOGIC;CO : OUT STD_LOGIC);END CB10;ARCHITECTURE ART OF CB10 ISSIGNAL COUNT:STD_LOGIC_VECTOR (3 DOWNTO 0);BEGINPROCESS(CLK)BEGINIF RISING_EDGE(CLK)THENIF COUNT="1001"THENCOUNT<="0000";CO<='1';ELSECOUNT<=COUNT+1;CO<='0';END IF;END IF;END PROCESS;END ART;3、计时模块计时模块执行计时功能,计时方法和计算机一样是对标准时钟脉冲计数。
eda电子秒表课程设计
eda电子秒表课程设计一、课程目标知识目标:1. 让学生掌握EDA电子秒表的基本原理和功能,理解数字电路基础知识;2. 学会使用EDA工具进行电子秒表的电路设计和仿真;3. 掌握电子秒表中计时、计数、复位等模块的工作原理和相互关系。
技能目标:1. 培养学生运用EDA工具进行电子电路设计和仿真的能力;2. 提高学生分析问题和解决问题的能力,能针对电子秒表设计过程中出现的问题进行调试和优化;3. 培养学生的团队合作能力,学会在团队中沟通、协作、共同完成任务。
情感态度价值观目标:1. 激发学生对电子工程的兴趣和热情,培养其探索精神和创新意识;2. 引导学生树立正确的工程观念,认识到电子工程在现代社会中的重要作用;3. 培养学生严谨、认真、负责的学习态度,养成良好的学习习惯。
本课程针对高中年级学生,结合其知识水平和认知特点,注重理论与实践相结合,以项目为导向,让学生在实际操作中掌握电子秒表的设计与制作。
通过课程学习,使学生能够将所学知识应用于实际工程问题,提高其创新能力和实践能力。
同时,注重培养学生的团队合作精神和责任感,为其未来的学习和职业发展奠定基础。
二、教学内容1. 电子秒表基本原理:介绍EDA电子秒表的工作原理,包括计时、计数、显示等模块的功能和相互关系,对应教材第三章第二节。
2. EDA工具使用:讲解如何使用EDA工具进行电子秒表的电路设计和仿真,包括电路图的绘制、元件库的选择、仿真参数的设置等,对应教材第四章。
a. 电路图绘制b. 元件库使用c. 仿真参数设置3. 电子秒表电路设计与仿真:指导学生进行电子秒表的电路设计和仿真,分析并解决设计过程中可能出现的问题,对应教材第五章。
a. 设计计时模块b. 设计计数模块c. 设计显示模块d. 整体电路调试与优化4. 团队合作与项目实施:组织学生分组进行项目实践,培养学生的团队合作能力和沟通协作能力,对应教材第六章。
a. 分组讨论b. 制定项目计划c. 项目实施与汇报教学内容的安排和进度:共安排6个课时,具体分配如下:1-2课时:电子秒表基本原理及EDA工具使用;3-4课时:电子秒表电路设计与仿真;5-6课时:团队合作与项目实施。
eda数字秒表课程设计
eda数字秒表课程设计一、教学目标本课程旨在让学生了解和掌握eda数字秒表的基本原理和设计方法。
通过本课程的学习,学生将能够:1.理解数字秒表的功能和应用;2.掌握eda数字秒表的设计原理和流程;3.学会使用eda工具进行数字秒表的设计和仿真;4.培养动手实践能力和团队协作精神。
二、教学内容本课程的教学内容主要包括以下几个部分:1.eda简介:介绍eda的基本概念、发展历程和常用工具;2.数字秒表设计原理:讲解数字秒表的组成部分、工作原理和设计方法;3.eda数字秒表设计实例:通过具体实例,演示如何使用eda工具进行数字秒表的设计和仿真;4.实践操作:学生分组进行数字秒表的设计和仿真,培养动手实践能力和团队协作精神。
三、教学方法为了提高教学效果,本课程将采用以下几种教学方法:1.讲授法:讲解eda的基本概念、发展历程和常用工具;2.案例分析法:通过分析具体案例,让学生了解数字秒表的设计方法和流程;3.实验法:学生动手进行数字秒表的设计和仿真,培养实践能力;4.讨论法:分组讨论,引导学生主动思考和解决问题。
四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:选用权威、实用的教材,为学生提供系统、科学的学习资料;2.多媒体资料:制作精美的PPT,生动展示数字秒表的设计原理和流程;3.实验设备:准备充足的设计和仿真实验设备,确保每位学生都能动手实践;4.网络资源:提供在线学习平台和参考资料,方便学生随时查阅和复习。
五、教学评估本课程的评估方式包括以下几个方面:1.平时表现:考察学生在课堂上的参与程度、提问回答等情况,占总评的20%;2.作业:布置适量作业,检查学生对知识点的掌握程度,占总评的30%;3.实验报告:评估学生在实验过程中的操作能力和解决问题的能力,占总评的20%;4.期末考试:全面考察学生的知识掌握和应用能力,占总评的30%。
六、教学安排本课程的教学安排如下:1.课时:共计32课时,每课时45分钟;2.教学时间:安排在每周的二、四、六下午;3.教学地点:实验室和教室;4.教学进度:按照教材的章节顺序进行,确保每个章节都有足够的时间进行讲解和实践。
哪里有EDA数字秒表课程设计
哪里有EDA数字秒表课程设计一、课程目标知识目标:1. 让学生掌握EDA(电子设计自动化)的基本概念和原理;2. 使学生了解数字秒表的组成、功能及工作原理;3. 帮助学生掌握数字秒表设计的相关知识点,如计时器、计数器等。
技能目标:1. 培养学生运用EDA工具进行数字电路设计和仿真的能力;2. 提高学生分析问题、解决问题的能力,能针对具体需求设计合适的数字秒表;3. 培养学生的团队协作能力和沟通表达能力,能在小组合作中发挥积极作用。
情感态度价值观目标:1. 激发学生对电子设计领域的兴趣,培养其探索精神和创新意识;2. 引导学生树立正确的价值观,认识到科技发展对人类社会的重要性;3. 培养学生严谨、务实的科学态度,注重实践操作和理论学习的结合。
课程性质:本课程属于电子技术实践课程,注重理论与实践相结合,以项目为导向,培养学生的实际操作能力和创新能力。
学生特点:学生处于高年级阶段,已具备一定的电子技术基础,具有较强的学习能力和动手能力。
教学要求:教师需结合学生特点,以项目驱动教学,注重过程评价,引导学生主动参与,提高其综合运用知识解决问题的能力。
通过本课程的学习,使学生能够达到上述课程目标,为后续相关课程打下坚实基础。
二、教学内容本课程教学内容主要包括以下几部分:1. EDA基本概念与原理:介绍EDA技术的发展和应用,使学生了解EDA工具在数字电路设计中的重要性。
2. 数字秒表的组成与功能:分析数字秒表的各个组成部分,如计时器、计数器、控制单元等,以及它们的工作原理。
3. 数字秒表设计原理:讲解数字秒表设计的相关知识,包括晶振电路、分频器、计数器、显示电路等。
4. EDA工具应用:教授学生如何使用EDA工具(如Multisim、Protel等)进行数字秒表的设计和仿真。
5. 实践操作与调试:指导学生进行数字秒表的硬件搭建、程序编写和调试,培养学生的实际操作能力。
教学内容安排如下:1. 第一周:EDA基本概念与原理,数字秒表的组成与功能;2. 第二周:数字秒表设计原理,EDA工具的使用方法;3. 第三周:学生分组进行数字秒表设计,教师指导;4. 第四周:实践操作与调试,小组展示与评价。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
目录1 绪论 (1)2 设计要求 (2)3 总体设计要求 (2)3.1 基本原理 (2)3.2分频器模块 (3)3.3 计数模块 (4)3.4 记录模块 (5)3.5 寄存器模块 (6)3.6 回放模块 (8)3.7 选择模块 (9)3.8 数显模块 (11)3.9 数字秒表的总原理图 (13)4 仿真调试 (13)4.1 分频器模块的仿真调试 (13)4.2 计数器模块的仿真调试 (14)4.3 记录模块的仿真调试 (14)4.4 寄存器模块的仿真 (14)4.5 回放模块的仿真调试 (15)4.6 选择模块的仿真调试 (15)5 管脚分配 (16)6 总结与心得体会 (17)参考文献 (18)附录:源程序代码 (19)1 绪论EDA是电子设计自动化(Electronic Design Automation)的缩写,在20世纪60年代中期从计算机辅助设计(CAD)、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念发展而来的。
20世纪90年代,国际上电子和计算机技术较先进的国家,一直在积极探索新的电子电路设计方法,并在设计方法、工具等方面进行了彻底的变革,取得了巨大成功。
在电子技术设计领域,可编程逻辑器件(如CPLD、FPGA)的应用,已得到广泛的普及,这些器件为数字系统的设计带来了极大的灵活性。
这些器件可以通过软件编程而对其硬件结构和工作方式进行重构,从而使得硬件的设计可以如同软件设计那样方便快捷。
这一切极大地改变了传统的数字系统设计方法、设计过程和设计观念,促进了EDA技术的迅速发展。
EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言VHDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。
EDA技术的出现,极大地提高了电路设计的效率和可操作性,减轻了设计者的劳动强度。
在EDA软件开发方面,目前主要集中在美国。
但各国也正在努力开发相应的工具。
日本、韩国都有ASIC设计工具,但不对外开放。
中国华大集成电路设计中心,也提供IC设计软件,但性能不是很强。
相信在不久的将来会有更多更好的设计工具在各地开花并结果。
2 设计要求①设计一个能测量4名运动员短跑成绩的数字秒表。
要求用四位数码管显示时间,格式为00.00s。
②秒表设置3个开关输入(清零开关1个,记录开关1个,回放开关1个)。
按下“记录”开关,则将当前运动员成绩时间暂存,按下回放开关,依次回放各运动员成绩。
3 总体设计要求3.1 基本原理根据要求,数字秒表输入信号有:时钟信号CLK,清零开关CLR,记录开关RST,回放开关RSH;数字秒表的输出信号有:4个数码显示管的显示。
数字秒表的主要功能是:计数功能和记录功能数字秒表主要由七个部分构成:一是分频器;二是计数模块;三是记录模块;四是寄存器模块;五是回放模块;六是选择模块;七是数显模块。
当清零开关置低位‘0’时,所有显示均清零。
分频器模块的作用是将实验板子上50MHZ的信号频率降低到计数所需要的频率100HZ,然后将100HZ的信号作为实验的脉冲输入。
计数模块分为十秒、秒、百毫秒、十毫秒四个计数器。
当时钟信号来临时,开始计数,十毫秒的进位信号让百毫秒开始计数,百毫秒的进位使秒开始计数,以此类推。
记录模块所需要实现的:当按下记录开关的时候,使能开关EN加一,并将当前的显示时间存入到使能所对应的组寄存器中。
寄存器模块功能是当记录模块的使能信号来临时,对应的一组寄存器将当前的时间存储起来,到要用的时候再调用。
回放模块:当回放开关按下形成一个脉冲的时候,使能开关PN加一,并将对应的寄存器中信号送入数显模块。
选择模块:通过使能开关PN来选择所需要的信号送到数显模块,完成计数,记录和回放的功能。
数显模块:将选择模块的信号经过译码后输出对应的时间显示图1.总体设计框图3.2分频器模块分频器模块所实现的具体功能是将50MHZ的信号转化成所需要的100HZ的信号,所以需要对信号进行500000的分频,设计思想是:在程序内设置具有某范围的变量随时钟计数,前一半输出“0”,后一半输出“1”。
实现这个分频器模块的VHDL程序为:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY fenpinl IS --------分频器PORT(CLK_IN:IN STD_LOGIC;CLK_OUT:OUT STD_LOGIC);END ENTITY fenpinl;ARCHITECTURE structure of fenpinl isconstant count0:integer:=500000;begindivide_clk:process(CLK_IN)variable n0:integer range 0 to 499999;beginIF RISING_EDGE(CLK_IN) THENif(n0<(count0/2))thenCLK_OUT<='0';n0:=n0+1;elsif(n0<count0)thenCLK_OUT<='1';n0:=n0+1;else n0:=0;END if;END IF;END PROCESS divide_clk;END ARCHITECTURE structure;图2.分频器封装图3.3计数模块本模块实现的是计数功能,时钟信号是由分频器所得到的100HZ信号,并且本模块由4个十进制的计数模块构成,各级进位作为高级的时钟信号,分别对应十秒,秒,百毫秒和十毫秒,理论可以显示出的最大值为99.99s,并且计数器都是异步清零的。
实现本模块的程序为:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity count10 is ----------十进制计数器port(clk,clr:in std_logic;----时钟/清零信号dout:buffer std_logic_vector(3 downto 0);co:out std_logic);-------输出/进位信号end count10;architecture behave of count10 isbeginprocess(clr,clk)beginif clr='0' thendout<="0000";elsif(rising_edge(clk)) thenif dout="1001" then dout<="0000";co<='1';else dout<=dout+1;co<='0';end if;end if;end process;end behave;图3.十进制计数器模块封装图3.4 记录模块记录模块的功能是实现当有一个记录脉冲过来时,所记录的使能输出加一,第一个使能输出对应的是第一个寄存器模块,往后以此类推。
实现的程序:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity RECORD1 is --------记录模块port( clr:in std_logic;RST:in STD_LOGIC;en:BUFFER std_logic_vector(2 downto 0)); ---使能输出end;architecture behave of record1 isbeginprocess(clr,RST)beginif clr='0' then en<="000";elsif(RISING_edge(RST)) thenen<=en+1;end if;end process;end;图4.记录模块封装图3.5 寄存器模块寄存器模块主要是由4组16个D触发器构成的,当使能信号EN来临时,对应EN的一组触发器记录一个时间,并且将每一组的时间信号从输出端口输送到选择模块的输入端口。
其中一组寄存器的程序为:LIBRARY IEEE;use ieee.std_logic_1164.all;ENTITY DFF1 IS ------4位D触发器PORT(clr:in std_logic;en:in std_logic_vector(2 downto 0);-----使能信号clk:in std_logic;d1:in std_logic_vector(3 downto 0);------输入信号q1:out std_logic_vector(3 downto 0));END;architecture behave of dff1 issignal Q:std_logic_VECTOR(3 DOWNTO 0);BEGINPROCESS(CLR,CLK,EN)BEGINIF en="000" THENIF CLR='0' THENQ<="0000";ELSIF RISING_EDGE(CLK) THENQ<=d1;END IF;END IF;END PROCESS;Q1<=Q;END;图5.寄存器模块封装图3.6 回放模块回放模块输入是回放按钮的一个脉冲信号,来一个脉冲,使能信号PN加一,然后将使能信号输入到选择模块中作为判断信号。
程序为:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;entity REPLAY is -----------回放模块port(clr:in std_logic;rsh:in std_logic;pn:buffer std_logic_vector(2 downto 0)); ---使能输出end;architecture behave of replay isbeginprocess(clr,rsh)beginif clr='0' then pn<="000";ELSif (RISING_EDGE(RSH)) thenpn<=pn+1;end if;end process;end;图6.回放模块封装图3.7 选择模块选择模块的功能是:当PN=”000”时,输出的只是计数器数据,即当时时间;当PN=”001”时,输出的是存储在第一组寄存器中的时间;当PN=”010”时,输出的是存储在第二组寄存器中的时间;当PN=”011”时,输出的是存储在第三组寄存器中的时间;当PN=”100”时,输出的是存储在第四组寄存器中的时间。