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多功能秒表课程设计一、课程目标知识目标:1. 学生能理解EDA多功能秒表的基本原理和功能。
2. 学生能掌握秒表的计时、计次和闹钟等功能操作。
3. 学生了解秒表在日常生活和运动竞赛中的应用。
技能目标:1. 学生能运用所学知识,独立操作多功能秒表,进行计时和计次。
2. 学生能通过分析秒表数据,提高解决问题的能力。
3. 学生能运用秒表进行简单的运动计时和数据分析。
情感态度价值观目标:1. 学生培养对电子产品的兴趣,激发学习电子技术知识的热情。
2. 学生在团队协作中,培养合作精神和沟通能力。
3. 学生通过运用秒表进行运动计时,培养公平竞争和尊重规则的意识。
课程性质:本课程为实践性较强的电子技术课程,结合多功能秒表的实用功能,使学生掌握基本操作和运用。
学生特点:学生处于好奇心强、动手能力逐渐增强的阶段,对新鲜事物充满兴趣,善于合作与分享。
教学要求:教师需引导学生主动参与,注重实践操作,培养学生动手能力和解决问题的能力。
在教学过程中,关注学生的情感态度,激发学生的学习兴趣,提高学生的综合素质。
通过本课程的学习,使学生将所学知识应用于实际生活,达到学以致用的目的。
二、教学内容本章节教学内容主要包括以下几部分:1. 多功能秒表的原理与结构:介绍秒表的电子元件、工作原理和整体结构,使学生了解秒表的内部构造和功能实现方式。
教材章节:第一章 电子元件与电路基础2. 多功能秒表的操作与使用:详细讲解秒表的计时、计次、闹钟等功能操作,以及如何进行复位、设置等操作。
教材章节:第二章 数字电路与计时器3. 秒表在运动计时中的应用:通过实例分析,使学生了解秒表在运动竞赛中的实际应用,如田径、游泳等项目的计时。
教材章节:第三章 计时器在体育运动中的应用4. 秒表数据的分析与处理:教授学生如何分析秒表数据,进行简单的数据处理,提高学生解决问题的能力。
教材章节:第四章 数据分析与处理5. 实践操作:安排学生进行实际操作,如使用秒表进行计时、计次,分析数据等,巩固所学知识。
EDA-数字秒表设计
电子设计自动化大作业题目数字秒表设计学院控制科学与工程学院一、设计要求:(1)数字秒表的计时精度是10ms;(2)复位开关可以在任何情况下使用,计时在计时过程中,只要按一下复位开关,计时器就清零,并做好下次计时的准备;(3)具有启/停开关,即按一下启/停开关,启动计时器开始计时,再按一下启/停开关则停止计时。
(4)数字秒表的计时范围是0秒~59分59.99秒,显示的最长时间为59分59秒二、总体设计:1、总体结构图中21)SEL模块:将扫描信号输给选择(CHOICE)模块2)选择模块:按扫描信号的指定选择输出3)3-8译码模块:通过SEL给的信号来控制8位数码管位的亮灭45)显示模块:通过CHOICE三、单元模块设计1、模块名:sel模块设计useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityselisport(clk:instd_logic;selout:outstd_logic_vector(2downto0));endsel;architectureoneofselissignalcount:std_logic_vector(2downto0);beginprocess(clk)beginifclk'eventandclk='1'thenif(count="101")thencount<="000";elsecount<=count+1;endif;endif;endprocess;selout<=count;endone;(4)仿真结果说明:来一个上升沿,SELOUT的值增2(3)VHDL源程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitychoiceisport(a,b,c:instd_logic;data1,data2,data3,data4,data5,data6:instd_logic_vector(3downto0);ch_out:outstd_logic_vector(3downto0));endchoice;architecturebehaveofchoiceissignalch:std_logic_vector(2downto0);beginch(2)<=c;ch(1)<=b;ch(0)<=a;process(ch)begincasechis说明:abc的值递增,ch_out选择输出data1,data2,data3,data4,data5,data6的值,证明模块是正确的3、模块名:3-8译码模块设计(1)模块功能:通过SEL给的信号来控制8位数码管位的亮灭。
数字秒表的设计——EDA技术综合设计与实践
课程设计EDA技术综合设计与实践——数字秒表的设计目录目录 (1)一、课程设计目的与要求 (2)1.1课程设计目的 (2)1.2基本要求 (2)二、设计方案--数字秒表的设计 (2)2.1设计功能 (2)2.2秒表基本原理及设计方法 (2)2.3数字秒表设计原理 (3)三、开发环境 (3)四、模块结构 (4)4.1数字秒表RTL级电路 (4)4.2计时器模块 (5)4.3取数模块 (7)4.4编码模块 (9)4.5数码管显示控制模块 (13)4.6数码管地址选择模块 (14)五、设计仿真和实验 (16)5.1 计时器模块仿真 (16)5.2 秒表仿真 (16)5.3 pin引脚接口图 (17)5.4 实验结果图 (17)六、总结与体会 (19)6.1错误分析 (19)6.2心得体会 (19)七、参考文献 (20)一、课程设计目的与要求1.1课程设计目的《EDA技术综合设计与实践》(注:EDA即电子设计自动化,Electronics Design Automation)是继《模拟电子技术基础》、《数字电子技术基础》、《电子技术基础实验》、《EDA》等课程后,电子类等专业学生在电子技术实验技能方面综合性质的实验训练课程,是电子技术基础的一个部分,其目的和任务是通过一周的时间,让学生掌握EDA的基本方法,熟悉一种EDA软件(Quartus II),并能利用EDA软件设计一个电子技术综合问题,并在实验板上成功下载,为以后进行工程实际问题的研究打下设计基础。
1.2基本要求(1)通过课程设计使学生能熟练掌握一种EDA软件(Quartus II)的使用方法,能熟练进行设计输入、编译、管脚分配、下载等过程。
(2)通过课程设计使学生能利用EDA软件(Quartus II)进行至少一个电子技术综合问题的设计(内容可由老师指定或自由选择),设计输入采用VerilogHDL硬件描述语言输入法。
(3)通过课程设计使学生初步具有分析、寻找和排除电子电路中常见故障的能力。
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、熟练利用VHDL语言进行数字系统设计;2、掌握数字系统的设计方法——自顶向下的设计思想;3、掌握计数器的设计与使用;4、根据秒表的功能要求设计一个秒表;二、实验设备:PC机一台、EDA教学实验系统一台、下载电缆一根(已接好)、导线若干三、实验要求:1、有秒、分计数,数码扫描显示输出;2、有清零端和计数使能端;3、在功能允许的情况下,可自由发挥;四、实验原理:1、功能描述:秒表是一种计时的工具,有着很广泛的用途。
本实验中的秒表要求有两个功能按钮:一个是计数和停止计数按钮,当第一次按下此按钮时,秒表开始计数,再一次按下时,秒表停止计数,并显示所计的数字;另一个是清零按钮,当按下此按钮时,秒表清零。
在数码管上采用扫描显示输出。
2、基本原理:本实验中用到的主要元件有计数器、控制逻辑、数据选择器和译码器等。
秒、分都是60 进制计数,所以必须采用两个60 进制的计数器(或6 进制计数器与10 进制计数器的组合);控制逻辑主要是用来实现计数和清零。
基本方框图如下:注意:计数器必须有进位输出、计数使能端和清零端。
3、自顶向下的设计方法:自顶向下的设计方法是数字系统设计中最常用的设计方法,也是基于芯片的系统设计的主要方法。
它的基本原理框图如下:自顶向下的设计方法利用功能分割手段将设计由上到下进行层次化和模块化,即分层次、分模块进行设计和仿真。
功能分割时,将系统功能分解为功能块,功能块再分解为逻辑块,逻辑块再分解为更少的逻辑块和电路。
如此分割,逐步的将系统细化,将功能逐步具体化,模块化。
高层次设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细描述在下一设计层次说明,最底层的设计才涉及具体寄存器和逻辑门电路等实现方式的描述。
(注意:这里所说的模块可能是芯片或电路板。
)五、实验步骤:1、采用自顶向下的设计方法,首先将系统分块;2、设计元件,即逻辑块;3、一级一级向上进行元件例化(本实验只需例化一次即可),设计顶层文件。
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作业1-秒表
EDA作业一--秒表循环一、设计任务及要求1. 设计数码管显示的秒表。
2. 能够准确的计时并显示。
3. 开机显示00.00.00。
4. 用户可以随时清零、暂停、计时。
5. 最大记时59.59.99分钟,最小精确到0.01秒。
二、设计总体框图秒表计时器常常用于体育竞赛及各种其他要求有较精确时间的各领域中。
其中启/停开关的使用方法与传统的机械计时器相同,即按一下启/停开关,启动计时器开始计时,再按一下启/停开关计时终止。
而复位开关可以在任何情况下使用,即使在计时过程中,只要按一下复位开关,计时应立即终止,并对计时器清零。
具体框图见附录一。
三、硬件电路设计与程序设计本设计采用模块化设计,共分为顶层文件、控制毫秒模块(msecond)、控制秒模块(second)、控制分钟模块(minute)、LED模块(alert)、数码管扫描模块(zhishi)、分频器模块(fenpin)六个模块。
其中LED模块可以去掉,不影响秒表正常运行以下对各个模块一一描述。
1、分频器模块系统的输入时钟为4100HZ,用来驱动显示电路;同时输入时钟通过41分频,可以产生100HZ的频率来驱动计数电路,即为0.01秒,程序见附录二。
2.控制毫秒模块对这个功能模块用一个进程语句描述。
clk、reset和调秒的setsec(暂停\启动)为输入信号程序见附录二。
3.控制秒模块程序见附录二4.控制分模块程序见附录二5.数码管模块该模块的功能是选择个计数端口来的数据,当相应的数据到来时数据选择器选择器数据后输出给数码管,并由数码管显示。
程序见附录二四、编译仿真下面使用Quartus II对本设计进行编译和仿真。
首先创建工程,使用文本编辑器输入本设计的所有模块的源程序,把G-1DE.vhd设为顶层文件。
把本设计中的所有设计文件添加进工程后,先对每个模块进行编译纠错,然后把各个模块连接在一起保存然后在全程编译,通过之后就可以进行仿真。
先进行软件仿真每一部分的仿真从略,下面只说明系统的整体仿真波形。
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课程设计
EDA 课程设计报告书课题名称 基于VHDL 语言的数字秒表的设计姓 名胡杨学 号 0812201-40 院 系 物理与电信工程系 专 业 电子信息工程 指导教师周来秀 讲师2011年 6月10日※※※※※※※※※ ※※ ※※ ※※※※※※※※※※※2008级学生 EDA 课程设计基于VHDL语言的数字秒表的设计胡杨(湖南城市学院物理与电信工程系电子信息工程专业,益阳,413000)1设计目的(1)熟悉简单的VHDL程序。
(2)掌握相关的EDA知识。
(3)了解数字秒表的设计原理。
(4)熟悉掌握程序设计思路及运用VHDL语言控制。
(5)熟悉QuartusⅡ5.0软件的使用方法。
2设计的主要内容和要求要求设计一个简易的数字秒表,最低能精确显示到百分之一秒,最大显示到59分59.99秒。
采用数码管作为显示屏。
同时要求秒表具有暂停功能和计时暂停以及停止等秒表的基本功能首先,熟悉设计任务,查看相关资料。
然后,在理解程序的基础上自行编写代码。
之后,调试程序并软件仿真。
最后,在设计基础上,认真分析设计结果,撰写设计报告。
3 整体设计方案3.1秒表系统的设计模块秒表共有三个模块:分频模块、计时模块和显示模块。
分频模块,只提供了40 MHz和22 MHz的时钟信号,而秒表设计中要用到100 Hz的时钟作为基本时钟来产生0.01秒的精确度。
所以分频的任务就是从40 MHz(或22 MHz)的系统时钟信号中产生出100 Hz的时钟信号作为计时模块的基本时钟。
计时模块,这部分事秒表的最重要的部分。
由0.01秒到1秒进位事100进制的,而由秒到分和由分到时的进制是60进制的,秒表计时系统可以由一个100进制计数器和两个60进制计数器连接而成,即给100进制计数器提供100 Hz的时钟信号,让它产生0.01秒的精确度,即它每隔0.01秒计数一次,所以可以把其计数输出cq 连接到数码管显示上,作为0.01秒和0.1秒的计时显示,而100进制计数器的进位输出carry_out是频率为1 Hz(即周期为1秒)的另一个新的时钟信号,可以将其连接到下一个60进制计数器的时钟输入端口上,作为秒的计数精确度产生时钟,其输出是每隔1秒加1的,因此要将其输出cq显示到数码管上,作为“秒”单位的显示,相同的,这个60进制计数器的进位输出carry_out也是一个周期为1分钟的新的时钟信号,将它作为下一个60进制计数器的时钟输入,该计数器的输出就事“分”的计数输出。
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. 学生能够运用所学知识,分析并描述数字秒表的电路结构、工作原理及各部分功能;3. 学生能够掌握数字秒表中计时、清零、启动/停止等基本操作。
技能目标:1. 学生能够运用EDA软件进行数字秒表的原理图绘制和仿真;2. 学生能够根据设计要求,编写数字秒表的Verilog HDL代码,并进行功能验证;3. 学生能够通过实际操作,调试并优化数字秒表的性能。
情感态度价值观目标:1. 学生培养对电子设计自动化技术的兴趣,激发学习热情;2. 学生培养团队协作精神,学会与他人共同解决问题;3. 学生培养严谨、细致、求实的科学态度,提高创新意识和实践能力。
课程性质:本课程为实践性较强的电子技术课程,旨在让学生通过实际操作,掌握EDA数字秒表的设计与实现。
学生特点:本年级学生已具备一定的电子技术基础,对EDA技术有一定了解,具有较强的学习能力和动手能力。
教学要求:教师需引导学生运用所学知识,通过实际操作,完成数字秒表的设计与制作。
在教学过程中,注重培养学生的实践能力、创新意识和团队协作能力。
通过本课程的学习,使学生能够将理论知识与实践相结合,提高综合素养。
二、教学内容本课程教学内容紧密围绕课程目标,结合教材相关章节,组织以下内容:1. EDA技术简介:使学生了解EDA技术的发展、应用及优势,为后续学习打下基础。
2. 数字秒表原理:讲解数字秒表的电路结构、工作原理,引导学生掌握计时、清零、启动/停止等基本功能。
3. 原理图绘制与仿真:教授学生使用EDA软件绘制数字秒表的原理图,并进行功能仿真。
4. Verilog HDL编程:教授学生编写数字秒表的Verilog HDL代码,掌握代码编写规范和技巧。
5. 功能验证与优化:指导学生进行数字秒表的功能验证,分析并解决可能出现的问题,优化设计。
具体教学内容安排如下:1. 第1-2课时:EDA技术简介,数字秒表原理学习。
基于EDA的数字秒表的设计
EDA 课程设计报告书课题名称 基于EDA 的数字秒表的设计姓 名学 号 院 系 专 业 指导教师年 月 日※※※※※※※※※ ※※ ※※ ※※※※※※※※※※※2008级学生EDA 课程设计一、设计任务及要求:利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。
该数字秒表能对0秒~59分59.99秒范围进行计时,显示最长时间是59分59秒。
计时精度达到10ms。
设计了复位开关和启停开关。
复位开关可以在任何情况下使用,使用以后计时器清零,并做好下一次计时的准备。
指导教师签名:年月日二、指导教师评语:指导教师签名:年月日三、成绩验收盖章年月日在科技高度发展的今天,集成电路和计算机应用得到了高速发展。
尤其是计算机应用的发展。
它在人们日常生活已逐渐崭露头角。
大多数电子产品多是由计算机电路组成,如:手机、mp3等。
而且将来的不久他们的身影将会更频繁的出现在我们身边。
各种家用电器多会实现微电脑技术。
电脑各部分在工作时多是一时间为基准的。
本文就是基于计算机电路的时钟脉冲信号、状态控制等原理设计出的数字秒表。
秒表在很多领域充当一个重要的角色。
在各种比赛中对秒表的精确度要求很高,尤其是一些科学实验。
他们对时间精确度达到了几纳秒级别。
1设计目的本次设计的目的就是在掌握EDA实验开发系统的初步使用基础上,了解EDA 技术,对计算机系统中时钟控制系统进一步了解,掌握状态机工作原理,同时了解计算机时钟脉冲是怎么产生和工作的。
在掌握所学的计算机组成与结构课程理论知识时。
通过对数字秒表的设计,进行理论与实际的结合,提高与计算机有关设计能力,提高分析、解决计算机技术实际问题的能力。
通过课程设计深入理解计算机结构与控制实现的技术,达到课程设计的目标。
2 课程设计的内容利用VHDL语言设计基于计算机电路中时钟脉冲原理的数字秒表。
该数字秒表能对0秒~59分59.99秒范围进行计时,显示最长时间是59分59秒。
计时精度达到10ms。
EDA课程设计--带存储功能的秒表
2.控制分钟模块
太原科技大学:名字起个什么
图 4.4 分钟计时器
分钟计时器由一个 60 进制的计数器构成的,具有清零,置数和计数的功能。其 中 reset 为清零信号,当 reset 为 0 时,分计时器清零;setmin 为调分信号与 置数信号 set 相连;clk 为驱动分计时器工作的时钟,与 enmin 相连接;daout 为输出信号与 seltime 的 minute 相连。
elsif(clk'event and clk='1')then if(count(3 downto 0)="1001")then
if(count<16#A0#)then if(count="10011001")then ensec<='1'; count<="00000000";
ELSE count<=count+7;
(
时
分
秒
扫
显
钟
频
表
描
示
信
器
电
电
电
号
路
路
路
图 2.1,总体原理框图 总体框图由秒表电路(包括 msecond,second,minute 三个小模块);扫描电路 驱动 5 位八段共阴扫描数码管的片选驱动信号输出模块(seltime);显示电路驱 动八段字形译码器输出模块(deled)。
的实现和使用如同 89c51/52 一样方便。 缺点: 1. 设计繁琐可以直接用 8051 单片机代替。 2. 程序复杂。 方案二 采用芯片 EP1C2Q240C8,共阴七段数码管,按键开关,发光二级管 设计。EP1C12Q240C8 是 Cyclone 器件,Cyclone 可以最多支持 129 个通道的 LVDS 和 RSDA。Cyclone 器件的 LVDS 缓冲器可以支持最高达 640Mbps 的数据传输速度。 与单端的 I/0 口标准相比,这些内显置于 Cyclone 器件内部的 LVDS 缓冲器保持 了信号的完整性,并且有更低的电磁干扰,更好的电磁兼容性及更低的电源功耗。 采用此芯片设计简单,不需要用汇编语言编写程序,直接用 VHDL 编写即可。所 以优先选用方案二。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验三秒表的设计
一、实验目的:
1、熟练利用VHDL语言进行数字系统设计;
2、掌握数字系统的设计方法——自顶向下的设计思想;
3、掌握计数器的设计与使用;
4、根据秒表的功能要求设计一个秒表;
二、实验设备:
PC机一台、EDA教学实验系统一台、下载电缆一根(已接好)、导线若干
三、实验要求:
1、有秒、分计数,数码扫描显示输出;
2、有清零端和计数使能端;
3、在功能允许的情况下,可自由发挥;
四、实验原理:
1、功能描述:
秒表是一种计时的工具,有着很广泛的用途。
本实验中的秒表要求有两个功能按钮:一个是计数和停止计数按钮,当第一次按下此按钮时,秒表开始计数,再一次按下时,秒表停止计数,并显示所计的数字;另一个是清零按钮,当按下此按钮时,秒表清零。
在数码管上采用扫描显示输出。
2、基本原理:
本实验中用到的主要元件有计数器、控制逻辑、数据选择器和译码器等。
秒、分都是60 进制计数,所以必须采用两个60 进制的计数器(或6 进制计数器与10 进制计数器的组合);控制逻辑主要是用来实现计数和清零。
基本方框图如下:
注意:计数器必须有进位输出、计数使能端和清零端。
3、自顶向下的设计方法:
自顶向下的设计方法是数字系统设计中最常用的设计方法,也是基于芯片的系统
设计的主要方法。
它的基本原理框图如下:
自顶向下的设计方法利用功能分割手段将设计由上到下进行层次化和模块化,即分层次、分模块进行设计和仿真。
功能分割时,将系统功能分解为功能块,功能块再分解为逻辑块,逻辑块再分解为更少的逻辑块和电路。
如此分割,逐步的将系统细化,将功能逐步具体化,模块化。
高层次设计进行功能和接口描述,说明模块的功能和接口,模块功能的更详细描述在下一设计层次说明,最底层的设计才涉及具体寄存器和逻辑门电路等实现方式的描述。
(注意:这里所说的模块可能是芯片或电路板。
)
五、实验步骤:
1、采用自顶向下的设计方法,首先将系统分块;
2、设计元件,即逻辑块;
3、一级一级向上进行元件例化(本实验只需例化一次即可),设计顶层文件。
六、实验报告
1,写出实验源程序:
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
use IEEE.std_logic_unsigned.all;
entity myclock is
PORT(CLK: IN bit;
second: out std_logic_vector (0 to 5);
minute: out std_logic_vector (0 to 5)); END myclock;
architecture rtl of myclock is
BEGIN
PROCESS(CLK)IS
variable count: std_logic_vector(0 to 5); variable c: std_logic_vector(0 to 5); BEGIN
IF(CLK'EVENT AND CLK='1')THEN
count:=count+1;
IF count="111011"then
count:="000000";
c:=c+'1';
if c="111011"then
c:="000000";
end IF;
end if;
end if;
second<=count;
minute<=c;
END PROCESS;
END architecture rtl;
2,仿真图如下:。