EDA数字秒表设计

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

--1--北华航天工业学院《EDA技术综合设计》课程设计报告报告题目:数字秒表设计作者所在系部:电子工程系作者所在专业:电子信息工程作者所在班级:作者姓名:指导教师姓名:完成时间:2010年12月12日--2--内容摘要应用VHDL语言设计数字系统,很多设计工作可以在计算机上完成,从而缩短了数字系统的开发时间。我们尝试利用VHDL为开发工具设计数字秒表。秒表的逻辑结构较简单,它主要由十进制计数器、六进制计数器、12500的分频器、数据选择器、和显示译码器等组成。在整个秒表中最关键的是如何获得一个精确的100HZ计时脉冲,除此之外,整个秒表还需有一个启动信号和一个清零信号,以便秒表能随意停止及启动。秒表有共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出,这样便与同显示译码器连接。开关设置秒表报警器,每10秒钟,蜂鸣器鸣响1声,发光二极管闪烁。当计时达60分钟后,蜂鸣器鸣响10声。关键词:VHDL、数据选择器、计数器、显示器--3--目录一、系统组成框图……………………………………………………5二、各模块原理及其程序……………………………………………51、六进制计数器……………………………………………………62、十进制计数器…………………………………………………63、蜂鸣器………………………………………………………74、译码器…………………………………………………………85、控制器…………………………………………………………9三、系统仿真………………………………………………………101、六进制计数器…………………………………………………102、十进制计数器…………………………………………………103、蜂鸣器………………………………………………………104、译码器………………………………………………………105、控制器………………………………………………………10四、心得体会……………………………………………………11--4--课程设计任务书课题名称数字秒表设计完成时间10.12指导教师职称学生姓名班级总体设计要求和技术要点总体设计要求:通过本课程的学习使学生掌握可编程器件、EDA开发系统软件、硬件描述语言和电子线路设计与技能训练等各方面知识;提高工程实践能力;学会应用EDA技术解决一些简单的电子设计问题。技术要点:1.秒表有共有6个输出显示,分别为百分之一秒、十分之一秒、秒、十秒、分、十分,所以共有6个计数器与之相对应,6个计数器的输出全都为BCD码输出,这样便与同显示译码器的连接。2.开关设置秒表报警器,每10秒钟,蜂鸣器鸣响1声,发光二极管闪烁。当计时达60分钟后,蜂鸣器鸣响10声。工作内容及时间进度安排工作内容:在软件上编辑、编译程序,并仿真到达实验要求。进度安排;课下编写程序,并要求程序能通过编译仿真;第十六周的周三,周四在实验板上下载调试程序;周五课设答辩。课程设计成果1.与设计内容对应的软件程序2.课程设计报告书3.成果使用说明书4.设计工作量要求--5--设计过程一.系统组成框图二.各模块及的原理及其程序(1)六进制计数器数字秒表计时控制电路控制状态机计时电路显示电路分频电路计数器六进制计数器扫描电路七段译码器十进制计数器系统组成框图--6--libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitycount6isport(clk,clr,start:instd_logic;daout:outstd_logic_vector(3downto0);cout:outstd_logic);endcount6;architecturebehaveofcount6issignaltemp:std_logic_vector(3downto0);beginprocess(clk,clr)beginifclr='1'thentemp=0000;cout='0';elsifclk'eventandclk='1'thenifstart='1'theniftemp=0101thentemp=0000;cout='1';elsetemp=temp+1;cout='0';endif;endif;endif;endprocess;daout=temp;endbehave;(2)十进制计数器libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;useieee.std_logic_arith.all;entitycount10isport(clr,start,clk:instd_logic;cout:outstd_logic;--7--daout:bufferstd_logic_vector(3downto0));endcount10;architecturebehaveofcount10isbeginprocess(clr,start,clk)beginifclr='1'thendaout=0000;elsif(clk'eventandclk='1')thenifstart='1'thenifdaout=1001thendaout=0000;cout='1';elsedaout=daout+1;cout='0';endif;endif;endif;endprocess;endbehave;(3)蜂鸣器libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityalarmisport(clk,I:instd_logic;q:outstd_logic);endalarm;architecturearofalarmissignaln:integerrange0to20;signalq0:std_logic;beginprocess(clk)beginifclk'eventandclk='1'thenifi='0'thenq0='0';n=0;--8--elsifn=19andi='1'thenq0=notq0;n=n+1;elseq0='0';endif;endif;endprocess;q=q0;endar;(4)译码器libraryieee;useieee.std_logic_1164.all;entitydeledisport(num:instd_logic_vector(3downto0);led:outstd_logic_vector(6downto0));enddeled;architectureaofdeledisbeginprocess(num)begincasenumiswhen0000=led=0111111;when0001=led=0000110;when0010=led=1011011;when0011=led=1001111;when0100=led=1100110;when0101=led=1101101;when0110=led=1111101;when0111=led=0100111;when1000=led=1111111;when1001=led=1101111;whenothers=led=0000000;endcase;endprocess;enda;--9--(5)控制器libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityseltimeisport(clr,clk:inbit;dain0,dain1,dain2,dain3,dain4,dain5:instd_logic_vector(3downto0);sel:outstd_logic_vector(2downto0);daout:outstd_logic_vector(3downto0));endseltime;architectureaofseltimeissignaltemp:integerrange0to5;beginprocess(clk)beginif(clr='1')thendaout=0000;sel=000;temp=0;elsif(clk='1'andclk'event)theniftemp=5thentemp=0;elsetemp=temp+1;endif;casetempiswhen0=sel=000;daout=dain0;when1=sel=001;daout=dain1;when2=sel=010;daout=dain2;when3=sel=011;daout=dain3;when4=sel=100;daout=dain4;when5=sel=101;daout=dain5;endcase;endif;endprocess;enda;三.系统仿真--10--(1)六进制(2)十进制(3)蜂鸣器(4)译码器(5)控制器--11--四.心得体会开始做设计时总是会犯一些错误,只有经过不停的改错不停的编译才能得到正确的程序。在编程时,我充分使用了结构化的思想,这样程序检查起来也比较方便,调试时也给了我很大方便,只要一个模块一个模块的进行调就可以了,充分体现了结构化编程的优势。在设计中要求我要有耐心和毅力,还要细心,稍有不慎,一个小小的错误就会导致结果的不正确,而对错误的检查要求我要有足够的耐心,通过这次设计和设计中遇到的问题,也积累了一定的经验,对以后从事集成电路设计工作会有一定的帮助。在应用VHDL的过程中让我真正领会到了其并行运行与其他软件顺序执行的差别及其在电路设计上的优越性。用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发成本,这种设计方法在数字系统设计中发挥越来越重要的作用。--12--教师评语及设计成绩评语课程设计成绩:指导教师:日期:年月日

1 / 12
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功