基本触发器-四选一数据选择器.docx

上传人:夺命阿水 文档编号:845632 上传时间:2023-12-24 格式:DOCX 页数:10 大小:39.40KB
返回 下载 相关 举报
基本触发器-四选一数据选择器.docx_第1页
第1页 / 共10页
基本触发器-四选一数据选择器.docx_第2页
第2页 / 共10页
基本触发器-四选一数据选择器.docx_第3页
第3页 / 共10页
基本触发器-四选一数据选择器.docx_第4页
第4页 / 共10页
基本触发器-四选一数据选择器.docx_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《基本触发器-四选一数据选择器.docx》由会员分享,可在线阅读,更多相关《基本触发器-四选一数据选择器.docx(10页珍藏版)》请在课桌文档上搜索。

1、选一数据选择器和根本触发器的设计摘要系统基于数据选择器及D触发器,JK触发器,T触发器的原理,使用EDA技术在FPGA中设计了四选一数据选择器和根本触发器,采用硬件描述语言VHDL按模块化方式进行设计,然后进行编程,时序仿真等。在数据选择器中,用拨码开关作四位数据及两位控制端的输入,LED作输出,通过拨码开关组成控制输入端Sl和SO不同组合,观察LED与数据输入端a,b,c,d的关系,验证4选一数据选择器设计的正确性,通过VHDL语言实现了本设计的控制功能,按不同的键实现不同的功能,根据数据选择器的特性方程设计输出状态。在根本触发器中通过VHDL语言实现了本设计的控制功能,按不同的键实现不同的

2、功能,根据三钟触发器的特性方程设计输出状态。整个系统结构简单,使用方便,值得推广使用。关键字FPGA;VHDL;EDA;数据选择器;触发器目录1. 1设计的目的2L2设计的根本内容21 .四选一数据选择器22 .根本触发器42EDA、VHDL简介42. 1ED技术42, 2硬件描述语言VHDl63设计规划过程73, 1四选一数据选择器的工作原理73. 2根本触发器器的工作原理63课程设计中各个模块的设计61.数据选择器的设计62,根本触发器的设计64结束语7参考文献,.,.,.,.,.,.,.,.,.,.,.,.,.121引言20世纪60年代初,美国德克萨斯仪器公司Tl(TexasInstru

3、ments)将各种根本逻辑电路以及连线制作在一片体积很小的硅片上,经过封装后提供应用户使用,这就是集成电路。从先前的采用半导体技术实现的计算机到现在广泛应用的采用高集成度芯片实现的计算机。根本门电路和数值比拟器作为根本逻辑电路的“细胞,因而成为深入研究和了解根本逻辑电路的基石。计算机组成原理与设计是计算机科学与技术专业本科生的必修课程。在完成理论学习和必要的实验后,本科学生掌握了它的根本原理和各种根本功能的应用,但对硬件实际应用设计和其完整的用户程序设计还不清楚,实际动手能力不够,因此对该课程进行一次课程设计是有必要的。计算机组成原理与设计的课程设计既要让学生稳固课本学到的理论,还要让学生学习

4、硬件电路设计和用户程序设计,同时学习查阅资料、参考资料的方法。计算机原理与设计的课程设计主要是通过学生独立设计方案并自己动手用计算机电路设计软件,编写和调试用户程序,来加深对该课程的认识和理解,充分发挥我们的个体创新能力。1.1 设计的目的学习根本触发器的设计,进一步了解VHDL语言。稳固和运用所学课程,理论联系实际,提高分析、解决计算机技术实际问题的独立工作能力,本次设计的目的就是学习根本触发器的设计,了解并掌握VHDL硬件描述语言的设计方法和思想,通过对根本触发器的设计,稳固和综合运用所学课程,理论联系实际,提高IC设计能力,提高分析、解决计算机技术实际问题的独立工作能力。通过课程设计深入

5、理解VHDL语言的精髓,到达课程设计的目标。1.2 设计的根本内容本设计主要是利用超高速硬件描述语言VHDL对四选一数据选择器和根本触发器电路进行编程实现。用原理图输入法或VHDL文本输入法设计4选1数据选择器根本触发器电路,建立4选1数据选择器和根本触发器的实验模式。通过电路仿真和硬件验证,进一步了解4选1数据选择器和根本触发器的功能。1 .四选一数据选择器用拨码开关作四位数据及两位控制端的输入,LED作输出,通过拨码开关组成控制输入端Sl和SO不同组合,观察LED与数据输入端a,b,c,d的关系,验证4选一数据选择器设计的正确性。2 .根本触发器先按键选择一种触发器(按键0-2分别代表DJ

6、K,T触发器),再拨动拨码开关(SWo为D触发器输入,SW1,SW2为JK触发器输入,SW3为T触发器输入,观察验证小LED上显示的结果。2EDA、VHDL简介2.1 EDA技术20世纪末,电子技术获得了飞速的开展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力地开展和社会信息化程度地提高,同时也使现代电子产品性能进一步地提高,产品更新换代的节奏也越来越快。EDA技术是伴随着计算机、集成电路、电子系统的设可阶计开展起来的。回忆近30年电子设计技术的开展历程,将EDA技术由浅到深分为CAD阶段、CAE阶段、ESDA段这3个阶段:(1)CAD阶段。20世纪70年代,随着中

7、小规模集成电路的开发应用,传统的手工制图设计印刷电路板和集成电路的方法己无法满足设计精度和效率的要求,因此工程师们开始进行二维平面图形的计算机辅助设计,以便解脱繁杂、机械的幅员设计工作,这就产生了第1代EDA工具CAD6十算机辅助设计)。这是EDA开展的初级阶段,其主要特征是利用计算机辅助进行电路原理图编辑,PCB布同布线。它可以减少设计人员的繁琐重复劳动,但自动化程度低,需要人工干预整个设计过程。这类专用软件大多以微机为工作平台,易于学用,设计中小规模电子系统可靠有效,现仍有很多这类专用软件被广泛应用于工程设计。(2)CAE阶段。20世纪80年代,为适应电子产品在规模和制作上的需要,应运出现

8、了以计算机仿真和自动布线为核心技术的第2代EDA技术,即CAE计算机辅助工程设计阶段。这一阶段的主要特征是以逻辑摸拟、定时分析、故障仿真、自动布局布线为核心,重点解决电路设计的功能检测等问题,使设计能在产品制作之前预知产品的功能与性能,己经具备了自动布局布线、电路的逻辑仿真、电路分析和测试等功能,其作用己不仅仅是辅助设计,而且可以代替人进行某种思维。与CAD相比,CAE除了纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,从而实现工程设计。(3)ESDA阶段。20世纪90年代,尽管CAD/CAE技术取得了巨大的成功,但并没有把人从繁重的设计工作中彻底

9、解放出来。在整个设计过程中,自动化和智能化程度还不高,各种EDA软件界面干差万别,学习使用比拟困难,并且互不兼容,直接影响到设计环节间的衔接。基于以上缺乏,EDA技术继续开展,进人了以支持高级语言描述、可进行系统级仿真和综合技术为特征的第3代EDA技术ESDA电子系统设计自动化阶段。这一阶段采用一种新的设计概念自顶而下(TOP-DoWn)的设计程式和并行工程(COnCUrrentEngineering)的设计方法,设计者的精力主要集中在所要电子产品的准确定义上,EDA系统去完成电子产品的系统级至物理级的设计。EDA技术主要是指面向专用集成电路设计的计算机技术,将EDA技术与传统电子设计方法进行

10、比拟可以看出,传统的数字系统设计只能在电路板上进行设计,是一种搭积木式的方式,使复杂电路的设计、调试十分困难;如果某一过程存在错误.查找和修改十分不便:对于集成电路设计而言,设计实现过程与具体生产工艺直接相关,因此可移植性差;只有在设计出样机或生产出芯片后才能进行实泅,因而开发产品的周期长。而电子EDA技术那么有很大不同,采用可编程器件,通过设计芯片来实现系统功能。采用硬件描述语言作为设计输入和库(Libraly)的引入,由设计者定义器件的内部逻辑和管脚,将原来由电路板设计完成的大局部工作故在芯片的设计中进行。由于管脚定义的灵活性,大大减轻了电路图设计和电路板设计的工作量和难度,有效增强了设计

11、的灵活性,提高了工作效率。并且可减少芯片的数量,缩小系统体积,降低能源消耗,提高了系统的性能和可靠性。能全方位地利用计算机自动设计、仿真和调试。现代电子设计技术的核心是EDA(ElectronicDesignAutomation)技术,EDA技术就是依赖功能强大的计算机,在EDA工具软件平台上,对以硬件描述语言HDL为系统逻辑描述手段完成的设计文件,自动地完成逻辑编译,逻辑化简,逻辑分割,逻辑综合,结构综合,以及逻辑优化和仿真测试,直至实现既定的电子线路系统功能。EDA是电子设计自动化(ElectronicDesignAutomation)的缩写,在20世纪90年代初从计算机辅助设计(CAD)

12、、计算机辅助制造(CAM)、计算机辅助测试(CAT)和计算机辅助工程(CAE)的概念开展而来的。EDA技术就是以计算机为工具,设计者在EDA软件平台上,用硬件描述语言HDL完成设计文件,然后由计算机自动地完成逻辑编译、化简、分割、综合、优化、布局、布线和仿真,直至对于特定目标芯片的适配编译、逻辑映射和编程下载等工作。2. 2硬件描述语言一VHDLVHDL(Very-High-SpeedIntegratedCircuitHardwareDescription)语言是一种用于电路设计的高级语言。VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形

13、式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是局部,及端口)和内部(或称不可视局部),既涉及实体的内部功能和算法完成局部。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。VHDL语言有如下特点:1与其他的硬件描述语言相比,VHDL行为描述能力强,是系统设计领域最正确的硬件描述语言。强大的行为描述能力可以避开具体的器件结构,从逻辑行为上描述和设计大规模的电子系统。2 .VHDL有丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设

14、计系统的功能可行性,随时可对设计进行仿真模拟。3 .对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。4 .VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行独立的设计。设计流程为:1文本编辑:用任何文本编辑器都可以进行,也可以用专用的HDL编辑环境。通常VHDL文件保存为.vhd文件。2 .功能仿真(前仿真):将文件调入HDL仿真软件进行功能仿真,检查逻辑功能是否正确。3 .逻辑综合:将源文件调入逻辑综合软件进行综合,即把语言综合成最简的布尔表达式和信号的连接关系。逻辑

15、综合软件会生成edf(edif)的EDA工业标准文件。4 .布局布线:将.edf文件调入PLD厂家提供的软件中进行布线,即把设计好的逻辑安放到PLDFPG内5 .时序仿真(后仿真):需要利用在布局布线中获得的精确参数,用仿真软件验证电路的时序。6 .编程下载:确认仿真无误后,将文件下载到芯片中。3设计规划过程7 .1四选一数据选择器的工作原理数据选择器又叫“多路开关。数据选择器在地址控制端(或叫选择控制)的控制下,从多个数据输入通道中选择其中一通道的数据传输至输出端。4选1数据选择器的元件符号如图*.1所示,其中a,b,c,d是4位数据输入端,Sl和s0是控制输入端,y是数据输出端。当SlSO

16、=Oo时,输出y=a:sIsO=Ol时,y=b;SISo=IO时,y=c;sls=l1,y=d四选一数据选择器的框图如图3.1所示。图3.1四选一数据选择器的框图3. 2根本触发器器的工作原理触发器是数字系统中广泛应用的能够记忆一位二进制信号的根本逻辑单元电路。触发器具有两个能自行保持的稳定状态,用来表示逻辑1和“0。在不同的输入信号作用下其输出可以置成1态和0态,且当输入信号消失后,触发器获得的新状态能保持下来。将D触发器,JK触发器,T触发器实行按键控制。按不同的键实现不同的功能,根据三钟触发器的特性方程设计输出状态。根本触发器的框图如图3.2所示。图3.2根本触发器器的框图4. 3课程设

17、计中各个模块的设计1数据选择器的设计数据选择器可由VHDL程序来实现,下面是数据选择器的一局部VHDL代码:BEGINSV=SI&$0;PROCESS(sl,sO,a,b,c,d)BEGINCASEsISWHEN00,=Y.TEMPY.TEMPY.TEMPY.TEMPY.TEMP=,X,;ENDCASE;y=TEMP;ENDPROCESS;ENDrtl;四选一数据选择器由VHDL程序实现后,其仿真图如图3.3所示:四选一数据选择器的引脚分配如下:2. 根本触发器的设计根本触发器器可由VHDL程序来实现,下面是根本触发器的一局部VHDL代码:process(clk,key)BEGINif(key

18、=1111,)thencntO1999999thencnt=temp=key;elsecnt=cnt+1;endif;endif;endprocess;process(clk)beginif(clk,eventandclk=)thencnt=cnt+1;ifcnt10000000thenclk-fresh=0,;elsifcnt20000000thenclk-fresh20000000thencnt=O;endif;endif;endprocess;process(clk_fresh)BEGINif(clk-fresh,eventandclk_fresh-)thenif(temp=l10m)t

19、henq_temp=d;elsif(temp=n10,)thenjkq-tempq-tempq_tempq-tempq_temp=NULL;endcase;elsif(temp=,101)thcnif(t-O)thenq_temp=q_temp;elseq_temp=notqemp;endif;endif;endif;q=qtemp;nq=notq_temp;endprocess;endBehavioral;根本触发器器由VHDL程序实现后,可以得到D触发器,JK触发器,T触发器的仿真图。这里仅画出JK触发器的仿真图如图3.4所示:根本触发器的引脚分配如下:4结束语通过两星期的紧张工作,最后完

20、成了我的设计任务。通过课程设计,发现自己的很多缺乏,自己知识的很多漏洞,看到了自己的实践经验还是比拟缺乏,理论联系实际的能力还急需提高。同时也体会到设计课的重要性和目的性所在。本次设计课不仅仅培养了我们实际操作能力,也培养了我们灵活运用课本知识,理论联系实际,独立自主的进行设计的能力。它不仅仅是一个学习新知识新方法的好时机,同时也是对我所学知识的一次综合的检验和复习,使我明白了自己的缺陷所在,从而查漏补缺。希望学校以后多安排一些类似的实践环节,让同学们学以致用。在设计中要求我要有耐心和毅力,还要细心,稍有不慎,一个小小的错误就会导致结果的不正确,而对错误的检查要求我要有足够的耐心,通过这次设计

21、和设计中遇到的问题,也积累了一定的经验,对以后从事集成电路设计工作会有一定的帮助。在应用VHDL的过程中让我真正领会到了其并行运行与其他软件(C语言)顺序执行的差异及其在电路设计上的优越性。用VHDL硬件描述语言的形式来进行数字系统的设计方便灵活,利用EDA软件进行编译优化仿真极大地减少了电路设计时间和可能发生的错误,降低了开发本钱,这种设计方法必将在未来的数字系统设计中发挥越来越重要的作用。在此次课程设计中,非常感谢肖晓丽老师对我的指导与大力的帮助。参考文献1林明权.VHDL数字控制系统设计范例.北京:电子工业出版社,20032曾繁泰,陈美金.VHDL程序设计M北京:清华大学出版社,2001

22、3潘松.VHDL实用教程M.成都:电子科技大学出版社,20004侯伯亨,顾新.VHDL硬件描述语言及数字逻辑电路设计.西安:西安电子科技大出版社,20035谭会生.EDA技术根底.长沙:湖南大学出版社,20046甘登岱.EDA培训教程.北京:机械工业出版社,20057 Jayaram.Bhaker.VHDL教程.北京:机械工业出版社,2006附录.数据选择器的VHDL程序1.IBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYmux41ISPORT(a,b,c,d:INSTD一LOGIC;sO,s

23、l:INSTD_LOGIC;y:OUTSTD.LOGIC);ENDENTITY;ARCHITECTURErtlOFmux41ISSIGNALs:STD_LOG1C_VECTOR(1DOWNTO0);SIGNALY-TEMP:STD一LoGlC;BEGINs=slY.TEMPY.TEMPY.TEMPY.TEMPY.TEMP=,X,;ENDCASE;y=TEMP;ENDPROCESS;ENDrtl;2根本触发器的VHDL代码libraryIEEE;useIEEE.STD_LOGIC_1164.ALL;useIEEE.STD_LOGIC_ARITH.ALL;useIEEE.STD_LOGIC_UNS

24、IGNED.ALL;entitytriggerisPan(d,j,k,EinstdOgic;clk:instd_logic;key:instd_logic_vector(2downtoO);q,nq:outstd_logic);endtigger;architectureBehavioraloftriggerissignaltemp:std_logic_vector(2downtoO);signalq_temp:std_logic:=,0*;signalclk_fresh:std_logic;signaljk:std_logic_vector(1downtoO);signalcnt:integ

25、errangeOto2000(XX);signalent:integerrangeOto20000000;begiNprocess(clk,key)BEGINif(key-,ll,)thencntO1999999thenCnto=O;temp=key;elsecnt=cnt+1;endif;endif;endprocess;process(clk)beginif(clkreventandclk=)thencnt=cnt+l;ifcnt10000000thenclk-fresh=0,;elsifcnt20000000thenclk-fresh20000000thencnt=O;endif;endif;endprocess;process(clk_fresh)BEGINif(clk-fresh,eventandclk_fresh-)thenif(temp=l10m)thenq_tempq-tempq-tempq_tempq_tempq_temp=NULL;endcase;elsif(temp=,0H)thenif(t=O,)thenq_temp=qjemp;elseq-temp=notq_temp;endif;endif;endif;q=q_temp;nq=notq_tcmp;endprocess;endBehavioral;

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

当前位置:首页 > 在线阅读 > 生活休闲


备案号:宁ICP备20000045号-1

经营许可证:宁B2-20210002

宁公网安备 64010402000986号