EDA毕业课程设计报告书.docx

上传人:b****6 文档编号:12056959 上传时间:2023-06-04 格式:DOCX 页数:22 大小:135.38KB
下载 相关 举报
EDA毕业课程设计报告书.docx_第1页
第1页 / 共22页
EDA毕业课程设计报告书.docx_第2页
第2页 / 共22页
EDA毕业课程设计报告书.docx_第3页
第3页 / 共22页
EDA毕业课程设计报告书.docx_第4页
第4页 / 共22页
EDA毕业课程设计报告书.docx_第5页
第5页 / 共22页
EDA毕业课程设计报告书.docx_第6页
第6页 / 共22页
EDA毕业课程设计报告书.docx_第7页
第7页 / 共22页
EDA毕业课程设计报告书.docx_第8页
第8页 / 共22页
EDA毕业课程设计报告书.docx_第9页
第9页 / 共22页
EDA毕业课程设计报告书.docx_第10页
第10页 / 共22页
EDA毕业课程设计报告书.docx_第11页
第11页 / 共22页
EDA毕业课程设计报告书.docx_第12页
第12页 / 共22页
EDA毕业课程设计报告书.docx_第13页
第13页 / 共22页
EDA毕业课程设计报告书.docx_第14页
第14页 / 共22页
EDA毕业课程设计报告书.docx_第15页
第15页 / 共22页
EDA毕业课程设计报告书.docx_第16页
第16页 / 共22页
EDA毕业课程设计报告书.docx_第17页
第17页 / 共22页
EDA毕业课程设计报告书.docx_第18页
第18页 / 共22页
EDA毕业课程设计报告书.docx_第19页
第19页 / 共22页
EDA毕业课程设计报告书.docx_第20页
第20页 / 共22页
亲,该文档总共22页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

EDA毕业课程设计报告书.docx

《EDA毕业课程设计报告书.docx》由会员分享,可在线阅读,更多相关《EDA毕业课程设计报告书.docx(22页珍藏版)》请在冰点文库上搜索。

EDA毕业课程设计报告书.docx

EDA毕业课程设计报告书

(此文档为word格式,下载后您可任意编辑修改!

第一章EDA技术简介.......................................2

第二章抢答器的设计要求...................................2

第三章抢答器的设计分析...................................3

第四章抢答器的抢答鉴别模块...............................4

4.1抢答鉴别的功能.....................................4

4.2抢答鉴别模块的源程序...............................4

4.3抢答鉴别模块的时序仿真图...........................7

第五章抢答器的计时模块......................................................................8

5.1计时模块的功能.....................................8

5.2计时模块的源程序...................................8

5.3计时模块的时序仿真图...............................11

第六章抢答器的计分模块...................................12

6.1计分模块的功能.....................................12

6.2计分模块的源程序...................................12

6.3计分模块的时序仿真图...............................15

第七章抢答器的译码显示模块...............................16

7.1译码显示模块的功能.................................16

7.2译码显示模块的源程序...............................16

7.3译码显示模块的时序仿真图...........................17

第八章抢答器的其他功能模块...............................18

8.1其他功能模块的具体信息.............................18

第九章抢答器的顶层原理图设计.............................19

9.1顶层原理图的源文件.................................20

9.2顶层设计的时序仿真图...............................21

第十章抢答器的硬件测试...................................22

10.1抢答器的引脚绑定..................................22

10.2抢答器的测试结果..................................22

第十一章课程设计的总结...................................23

参考文献...............................................23

 

第一章EDA技术简介

随着电子技术和计算机技术的飞速发展,电子线路的设计工作也日益显得重要。

经过人工设计、制作实验板、调试再修改的多次循环才定型的传统产品设计方法必然被计算机辅助设计所取代,因为这种费时费力又费资源的设计调试方法既增加了产品开发的成本,又受到实验工作场地及仪器设备的限制。

为了克服上述困难,加拿大InteractiveImageTechnologies公司推出的基于Windows95/98/NT操作系统的EDA软件(ElectronicsWorkbench“电子工作台”,EWB)。

他可以将不同类型的电路组合成混合电路进行仿真。

EWB是用在计算机上作为电子线路设计模拟和仿真的新的软件包,是一个具有很高实用价值的计算机辅助设计工具。

目前已在电子工程设计等领域得到了广泛地应用。

与目前流行的电路仿真软件相比较,EWB具有界面直观、操作方便等优点。

他改变了有些电路仿真软件输入电路采用文本方式的不便之处,该软件在创建电路、选用元器件的测试仪器等均可以直接从屏幕图形中选取,而且测试仪器的图形与实物外形基本相似,从而大大提高了电子设计工作的效率。

此外,从另一角度来看,随着计算机技术和集成电路技术的发展,现代电子与电工设计,已经步入了电子设计自动化(EDA)的时代,采用虚拟仿真的手段对电子产品进行前期工作的调试,已成为一种发展的必然趋势。

通过对实际电子线路的仿真分析,从而提高对电路的分析、设计和创新能力。

第二章抢答器的设计要求

在许多比赛活动中,为了准确、公正、直观地判断出第一抢答者,通常设置一台抢答器,通过数显、灯光及音响等多种手段指示出第一抢答者。

同时,还可以设置计分、犯规及奖惩计录等多种功能。

本设计的具体要求是:

(1)设计制作一个可容纳四组参赛者的数字智力抢答器,每组设置一个抢答按钮供抢答者使用。

(2)电路具有第一抢答信号的鉴别和锁存功能。

(3)系统具有计分电路。

(4)系统具有犯规电路。

系统设计方案:

系统的输入信号有:

各组的抢答按钮A、B、C、D,系统清零信号CLR,系统时钟信号CLK,计分复位端RST,加分按钮端ADD,计时预置控制端LDN,计时使能端EN,计时预置数据调整按钮可以用如TA、TB表示;系统的输出信号有:

四个组抢答成功与否的指示灯控制信号输出口可用如LEDA、LEDB、LEDC、LEDD表示,四个组抢答时的计时数码显示控制信号若干,抢答成功组别显示的控制信号若干,各组计分动态显示的控制信号若干。

整个系统至少有三个主要模块:

抢答鉴别模块;抢答计时模块;抢答计分模块,其他功能模块(犯规警告模块,输出显示模块)。

第三章抢答器的设计分析

按照要求,我们可以将整个系统分为四个主要模块:

抢答鉴别模块;抢答计时模块;抢答计分模块;译码显示模块。

对于需显示的信息,需要增加或外接译码器,进行显示译码。

考虑到实验开发平台提供的输出显示资源的限制,我们将组别显示和计时显示的译码器内设,而将各组的计分显示的译码器外接。

整个系统的大致组成框图如图2.1所示。

图2.1

第四章抢答器的抢答鉴别模块

4.1抢答鉴别模块的功能

抢答队伍共分为四组A,B,C,D。

当主持人按下START键后,四组队伍才可以按抢答键抢答。

抢答成功后表示该组的指示灯见亮起,但在主持人未按下START键之前,所有的抢答键按下均是无效的。

当任意一个组抢答成功后,其余的组按抢答键无效。

抢答键为A,B,C,D四个键。

4.2抢答鉴别模块的源程序

libraryieee;

useieee.std_logic_1164.all;

entityjbis

port(sta:

instd_logic;

rst:

instd_logic;

a,b,c,d:

instd_logic;

a1,b1,c1,d1:

outstd_logic;

states:

outstd_logic_vector(3downto0);

start:

outstd_logic);

endentityjb;

architectureartofjbis

constantw1:

std_logic_vector:

="0001";

constantw2:

std_logic_vector:

="0010";

constantw3:

std_logic_vector:

="0100";

constantw4:

std_logic_vector:

="1000";

signalsinor:

std_logic;

signalnsinor:

std_logic;

signals_start:

std_logic;

begin

sinor<=aorborcord;

nsinor<=not(aorborcord);

start<=s_start;

process(sta,nsinor)is

begin

if(sta='1')then

s_start<='1';

elsif(nsinor'eventandnsinor='1')then

s_start<='0';

endif;

endprocess;

process(rst,sta,sinor,nsinor)is

begin

if(rst='1'orsta='1'ornsinor='1')then

a1<='0';b1<='0';c1<='0';d1<='0';

elsif(sinor'eventandsinor='1')then

if(s_start='1')then

if(a='1')then

a1<='1';b1<='0';c1<='0';d1<='0';

elsif(b='1')then

a1<='0';b1<='1';c1<='0';d1<='0';

elsif(c='1')then

a1<='0';b1<='0';c1<='1';d1<='0';

elsif(d='1')then

a1<='0';b1<='0';c1<='0';d1<='1';

endif;

endif;

endif;

endprocess;

process(sinor)is

begin

if(rst='1')then

states<="0000";

elsif(sinor'eventandsinor='1')then

if(s_start='1')then

if(a='1')then

states<=w1;

elsif(b='1')then

states<=w2;

elsif(c='1')then

states<=w3;

elsif(d='1')then

states<=w4;

endif;

endif;

endif;

endprocess;

endarchitectureart;

4.3抢答鉴别模块的时序仿真图

图4.1

抢答开始后,A组按下抢答键,抢答成功

第五章抢答器的抢答计时模块

5.1抢答计时模块的功能

主持人宣布抢答成功后,按下EN键,选手开始回答,系统开始计时。

TA和TB键选择计时的时间(TA:

9秒,TB:

7秒)

5.2抢答计时模块的源程序

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;

entityjsis

port(clr,ldn,en,clk:

instd_logic;

ta,tb:

instd_logic;

qa:

outstd_logic_vector(3downto0);

qb:

outstd_logic_vector(3downto0));

endentityjs;

architectureartofjsis

signalda:

std_logic_vector(3downto0);

signaldb:

std_logic_vector(3downto0);

begin

process(ta,clr)is

begin

if(clr='1')then

da<="1001";

elsif(ta'eventandta='1')then

if(ldn='1')then

if(da="0000")then

da<="1001";

else

da<=da-1;

endif;

endif;

endif;

endprocess;

process(tb,clr)is

begin

if(clr='1')then

db<="0101";

elsif(tb'eventandtb='1')then

if(ldn='1')then

ifdb="0000"then

db<="1001";

else

db<=db-1;

endif;

endif;

endif;

endprocess;

process(clk)is

variabletmpa:

std_logic_vector(3downto0);

variabletmpb:

std_logic_vector(3downto0);

begin

if(clr='1')then

tmpa:

="0000";

tmpb:

="0000";

elsifclk'eventandclk='1'then

ifen='1'then

tmpa:

=da;

tmpb:

=db;

elsiftmpa="0000"then

iftmpb="0000"then

tmpa:

="0000";

else

tmpa:

="1001";

endif;

iftmpb="0000"then

tmpb:

="0000";

else

tmpb:

=tmpb-1;

endif;

else

tmpa:

=tmpa-1;

endif;

endif;

qa<=tmpa;

qb<=tmpb;

endprocess;

endarchitectureart;

5.3抢答计时模块的时序仿真图

图5.1

按下EN开始答题,回答问题时,选择TA模式计时

第六章抢答器的计分模块

6.1抢答计分模块的功能

主持人确认选手回答正确后,按下ADD键为选手加分。

6.2抢答计分模块的源程序

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;

entityjfis

port(rst:

instd_logic;

add:

instd_logic;

chose:

instd_logic_vector(3downto0);

aa2,aa1,aa0,bb2,bb1,bb0:

outstd_logic_vector(3downto0);

cc2,cc1,cc0,dd2,dd1,dd0:

outstd_logic_vector(3downto0));

endentityjf;

architectureartofjfis

begin

process(rst,add,chose)is

variablea2,a1:

std_logic_vector(3downto0);

variableb2,b1:

std_logic_vector(3downto0);

variablec2,c1:

std_logic_vector(3downto0);

variabled2,d1:

std_logic_vector(3downto0);

begin

if(rst='1')then

a2:

="0001";a1:

="0000";

b2:

="0001";b1:

="0000";

c2:

="0001";c1:

="0000";

d2:

="0001";d1:

="0000";

elsif(add'eventandadd='1')then

ifchose="0001"then

ifa1="1001"then

a1:

="0000";

ifa2="1001"then

a2:

="0000";

else

a2:

=a2+'1';

endif;

else

a1:

=a1+'1';

endif;

elsifchose="0010"then

ifb1="1001"then

b1:

="0000";

ifb2="1001"then

b2:

="0000";

else

b2:

=b2+'1';

endif;

else

b1:

=b1+'1';

endif;

elsifchose="0100"then

ifc1="1001"then

c1:

="0000";

ifc2="1001"then

c2:

="0000";

else

c2:

=c2+'1';

endif;

else

c1:

=c1+'1';

endif;

elsifchose="1000"then

ifd1="1001"then

d1:

="0000";

ifd2="1001"then

d2:

="0000";

else

d2:

=d2+'1';

endif;

else

d1:

=d1+'1';

endif;

endif;

endif;

aa2<=a2;aa1<=a1;aa0<="0000";

bb2<=b2;bb1<=b1;bb0<="0000";

cc2<=c2;cc1<=c1;cc0<="0000";

dd2<=d2;dd1<=d1;dd0<="0000";

endprocess;

endarchitectureart;

6.3抢答计分模块的时序仿真图

图6.1

A组回答正确,加分

第七章抢答器的译码显示模块

7.1译码显示模块的功能

译码显示模块用于显示每组选手的分数,计时的的时间等信息。

7.2译码显示模块的源程序

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;

entityymis

port(in4:

instd_logic_vector(3downto0);

out7:

outstd_logic_vector(6downto0));

endym;

architectureartofymis

begin

process(in4)

begin

casein4is

when"0000"=>out7<="";

when"0001"=>out7<="";

when"0010"=>out7<="";

when"0011"=>out7<="";

when"0100"=>out7<="";

when"0101"=>out7<="";

when"0110"=>out7<="";

when"0111"=>out7<="";

when"1000"=>out7<="";

when"1001"=>out7<="";

whenothers=>out7<="";

endcase;

endprocess;

endarchitecture;

7.3译码显示模块的时序仿真图

图7.1

输入0001,输出,在共阴极数码管上显示1

第八章抢答器的其他功能模块

其他功能模块的具体信息

犯规功能模块:

但主持人未按下START键时,若有选手按抢答键,系统报警。

犯规功能模块的源程序:

libraryieee;

useieee.std_logic_1164.all;

entityfgis

port(a,b,c,d,start:

instd_logic;

y:

outstd_logic);

endfg;

architecturebhvoffgis

begin

process(a,b,c,d,start)

begin

ifstart='0'then

if(aorborcord)='1'then

y<='1';

endif;

else

y<='0';

endif;

endprocess;

endarchitecture;

犯规功能模块的时序仿真图:

图8.1

B组提前抢答,报警铃鸣叫示意

第九章抢答器的顶层原理图设计

9.1顶层原理图的源文件

图9.1

9.2顶层原理图的时序仿真图

图9.2

A组抢答成功,问题回答正确,加分

第十章抢答器的硬件测试

10.1抢答器的引脚绑定

由于硬件条件的限制,只测试抢答鉴别功能的检测。

实验用的芯片为GWAC3EP1C3TC144采用实验电路模式6检测,引脚绑定如下图:

图10.1

ZB接共阴极数码管,A,B,C,D接按键5,6,7,8。

10.2抢答器的测试结果

按下5键,数码管显示1,即A组抢答成功。

第十一章课程设计的总结

本次的EDA课程设计历时三个星期,时间虽短,但通过三个星期的实践,使我对EDA技术有了更进一步的了解。

同时,大致懂得了一个课题制作的具体流程和实施方法。

另外,课程设计对QuartusⅡ软件的使用要求较高,从而使我能较为熟练的运用此软件。

在设计时,采用模块化的设计思路使得问题变的简单明了,大大缩短了时间,降低了发生错误的机侓,也便于修改和更新。

课程设计中,需要找很多资料,在当今的信息化环境中,虽然资料很多,但需要仔细斟酌才能找到所要的。

这次的课程设计很好的锻炼了这种能力。

此外,与同学和老师的交流必不可少,我从中也学到了不少东西。

课程设计是一次很好的锻炼机会,我从中学的很多知识对将来的学习和工作都有很大的帮助,十分感谢学校能提供这样一个机会。

【1】EDA技术与VHDL(第2版)潘松黄继业编著清华大学出版社.2007

【2】EDA技术实验与课程设计曹昕燕周凤臣聂春燕编著清华大学出版社.2006

【3】杭州康芯电子有限公司GW48-PK3实验系统说明书.杭州康芯电子有限公司.

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2