版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
-.z.EDA实验报告教师:明磊:同**:学院:电子工程学院实验一:QUARTUSII软件使用及组合电路设计仿真一、实验目的:学习QUARTUSII软件的使用,掌握软件工程的建立、VHDL源文件的设计和波形仿真等根本容;二、实验容:四选一多路选择器的设计首先利用QuartusⅡ完成4选1多路选择器的文本编辑输入(mu*41a.vhd)和仿真测试等步骤,给出仿真波形。、功能及原理原理:数据选择器又称为多路转换器或多路开关,它是数字系统中常用的一种典型电路。其主要功能是从多路数据中选择其中一路信号发送出去。所以它是一个多输入、单输出的组合逻辑电路。功能:中选择控制端s10=00时,输出;s10=01时,输出;s10=10时,输出;s10=11时,输出。、逻辑器件符号、VHDL语言、波形仿真、仿真分析由波形可知:当s10=00时,y的波形与a一样;当s10=01时,y的波形与b一样;当s10=10时,y的波形与c一样;当s10=11时,y的波形与d一样;与所要实现的功能相符,源程序正确。七段译码器程序设计仿真、功能及原理7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用VHDL译码程序在FPGA或CPLD中实现。实验中的数码管为共阳极,接有低电平的段发亮。例如当LED7S输出为"0010010"时,数码管的7个段:g、f、e、d、c、b、a分别接0、0、1、0、0、1、0,于是数码管显示"5〞。、逻辑器件符号、VHDL语言、波形仿真、仿真分析由仿真波形可以直观看到,当A="0000〞时,led7s=1000000,数码管显示为0;A="0001〞时,led7s=1111001,数码管显示为1;....依此可验证波形仿真结果完全符合预期,源程序正确。实验心得在第一次上机实验中,我们通过对EDA设计软件QuartusⅡ使用,初步学会了它的使用方法。在实验中我们编写程序,编译,进展时序仿真以验证程序对错等。在完成VHDL的编辑以后,进展编译,结果出现了很多错误,在细心的检查之下,最终将VHDL描述修改成功并且通过了编译,在编译过程中我了解到很多在书本上没有理解的知识。总的来说,通过上机实验,我激发了对EDA学习的兴趣,也对这门课程有了更深的理解,对EDA设计软件Quarter
Ⅱ的使用也更加熟练。实验二计数器设计与显示一、实验目的〔1〕、熟悉利用QUARTUSII中的原理图输入法设计组合电路,掌握层次化设计的方法;〔2〕、学习计数器设计、多层次设计方法和总线数据输入方式的仿真,并进展电路板下载演示验证。二、实验容1、完成计数器设计〔4位二进制加减可控计数器〕〔1〕、功能及原理含有异步清零和计数使能的4位二进制加减可控计数器:清零端reset:低电平有效,异步清零,即reset=0时,无论时钟处于什么状态,输出立即置零。使能端enable:高电平有效,即enable=1时,计数器开场计数;enable=0时,计数器停顿计数。加减控制端updown:当updown=0时,为减法计数器;当updown=1时,为加法计数器。、逻辑器件符号、VHDL语言、波形仿真updown=1时,为加法计数:updown=0时,为减法计数:、仿真分析由以上两个波形很容易看出,enable=1时,计数器开场计数;reset=0时,计数器置零;updown=0时,减法计数;updown=1时,加法计数;co为进位端。符合设计初衷。2、50M分频器的设计〔1〕、功能及原理50M分频器的作用主要是控制后面的数码管显示的快慢。即一个模为50M的计数器,由时钟控制,分频器的根本原理与上述计数器根本一样。分频器的进位端co用来控制加减计数器的时钟,将两个器件连接起来。〔2〕、逻辑器件符号〔3〕、VHDL语言(4)、波形仿真(5)、仿真分析由波形仿真可以看出,enable=1时,由0开场计数,由于计数器模值较大,故只显示了一局部波形,计数围由0到50M。3、七段译码器程序设计在实验一中已给出具体程序及仿真结果,不再赘述。4、计数器显示译码设计与下载以前面设计的七段译码器decl7s和计数器为底层元件,完成"计数器显示译码〞的顶层文件设计。计数器和译码器连接电路的顶层文件原理图如下:原理图连接好之后就可以进展引脚的锁定,然后将整个程序下载到已经安装好的电路板上,即可进展仿真演示。实验心得实验三:大作业设计〔循环彩灯〕一、实验目的:综合应用数字电路的各种设计方法,完成一个较为复杂的电路设计;设计目标设计一个循环彩灯控制器,该控制器可控制10个发光二极管循环点亮、间隔点亮或者闪烁等花型。要求至少设计三种以上花型,用按键控制花型之间的转换,并用数码管显示当前花型。三.实验分工硕负责代码搜查与编写,王卓负责电路连接与引脚编写四.设计流程1、分频器的设计所用50M分频器在实验二中已有具体说明,不再赘述。彩灯控制器的设计、功能及原理清零端reset:高电平有效,异步清零。即当reset=1时,灯全灭。使能端enable:enable=1时,彩灯工作。把戏控制端s10:s10取不同的值来控制把戏的转换。led10s:控制10个led灯的亮灭。〔2〕、逻辑器件符号〔3〕、VHDL语言七段译码器设计〔1〕、功能原理原理在实验一中已详细说明,功能是显示把戏序号。〔2〕、VHDL语言顶层文件原理图如下:仿真波形第一种波形:〔从左到右依次点亮,再从右到左依次点亮〕第二种波形:〔从左到右依次两两点亮,再从右到左依次两两点亮〕第三种波形:〔从到外顺次展开点亮〕第四种波形:〔闪烁点亮〕仿真分析由波形仿真结果可知,源程序正确。实验心得这次实验在参考资料的根底上,加以修改,使程序满足设计要求。因为本次实验完全靠独立完成,在设计过程中出现了很多问题,编译和波形仿真的过程中都不顺利,在和同学交流探讨的过程中,一一将这些问题解决,最终成功设计出了四种花型。通过这次实验,我真正体会到了EDA这门课的乐趣,提高了自身的能力。课后习题InputoutputenableE*1:Inputoutputenable2选1多路选择器:selselIn0In1outputE*2:ENTITYmu*4ISPORT〔A,B,C,D:INBit;S:INBit_Vector〔3DOWNTO0〕;Y:OUTBit〕;ENDmu*4;ARCHITECTUREbehav1OFmu*4ISBEGINmu*4_p1:PROCESS〔A,B,C,D,S〕BEGINIFS=″1110″THENY<=A;ELSIFS=″1101″THENY<=B;ELSIFS=″1011″THENY<=C;ELSES="0111"THENY<=D;ELSEY<='1';ENDIF;ENDPROCESSmu*4_p1;ENDbehav1;ARCHITECTUREbehav2OFmu*4ISBEGINY<=AWHENS=″1110″ELSEBWHENS=″1101″ELSECWHENS=″1011″ELSEDWHENS="0111"ELSE'1';ENDbehav2;ARCHITECTUREbehav3OFmu*4ISBEGINmu*4_p2:PROCESS〔A,B,C,D,S〕BEGINCASESISWHEN″1110″=>Y<=A;WHEN″1101″=>Y<=B;WHEN″1011″=>Y<=C;WHEN"0111"=>Y<=D;WHENOTHERS=>Y<="1";ENDCASE;ENDPROCESSmu*4_p2;ENDbehav3;E*3:libraryieee;useieee.std_logic_1164.all;entitymu*kisport(a1,a2,a3:instd_logic;--待选择变量temp:bufferstd_logic;--中间信号s1,s0:instd_logic;--控制端output:outstd_logic);--输出结果endmu*k;architecturepr1ofmu*kisbeginprocess(a2,a3,s0)--process1begincases0is--使用case语句when'0'=>temp<=a2;when'1'=>temp<=a3;endcase;endprocess;process(a1,temp,s1)--process2begincases1iswhen'0'=>output<=a1;when'1'=>output<=temp;endcase;endprocess;endpr1;E*4:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYMULTIISPORT(CL:INSTD_LOGIC;--输入选择信号CLK0:INSTD_LOGIC;--输入信号OUT1:OUTSTD_LOGIC);--输出端ENDENTITY;ARCHITECTUREONEOFMULTIISSIGNALQ:STD_LOGIC;BEGINPR01:
PROCESS(CLK0)BEGINIFCLK‘EVENTANDCLK=’1’THENQ<=NOT(CLORQ);ELSEENDIF;ENDPROCESS;PR02:
PROCESS(CLK0)BEGINOUT1<=Q;ENDPROCESS;ENDARCHITECTUREONE;ENDPROCESS;E*5:libraryieee;useieee.std_logic_1164.all;entityh_subisport(*,y:instd_logic;diff,s_out:outstd_logic);endh_sub;architectureoneofh_subisbegindiff<=**ory;s_out<=(not*)andy;endone;libraryieee;useieee.std_logic_1164.all;entityor_2isport(a,b:instd_logic;q:outstd_logic);endor_2;architectureoneofor_2isbeginq<=aorb;endone;libraryieee;useieee.std_logic_1164.all;entityf_subisport(*,y,sub_in:instd_logic;diff,s_out:outstd_logic);endf_sub;architectureoneoff_subisponenth_subport(*,y:instd_logic;diff,s_out:outstd_logic);endponent;ponentor_2port(a,b:instd_logic;q:outstd_logic);endponent;signale,f,g:std_logic;beginh_suber1:h_subportmap(*=>*,y=>y,diff=>e,s_out=>f);h_suber2:h_subportmap(*=>e,y=>sub_in,diff=>diff,s_out=>g);or21:or_2portmap(a=>g,b=>f,q=>s_out);endone;libraryieee;useieee.std_logic_1164.all;entityf_sub8isport(*,y:instd_logic_vector(7downto0);sub_in:instd_logic;diff:outstd_logic_vector(7downto0);s_out:outstd_logic);endf_sub8;architectureoneoff_sub8isponentf_subport(*,y,sub_in:instd_logic;diff,s_out:outstd_logic);endponent;signale:std_logic_vector(6downto0);beginh_suber1:f_subportmap(*=>*(0),y=>y(0),sub_in=>sub_in,diff=>diff(0),s_out=>e(0));h_suber2:f_subportmap(*=>*(1),y=>y(1),sub_in=>e(0),diff=>diff(1),s_out=>e(1));h_suber3:f_subportmap(*=>*(2),y=>y(2),sub_in=>e(1),diff=>diff(2),s_out=>e(2));h_suber4:f_subportmap(*=>*(3),y=>y(3),sub_in=>e(2),diff=>diff(3),s_out=>e(3));h_suber5:f_subportmap(*=>*(4),y=>y(4),sub_in=>e(3),diff=>diff(4),s_out=>e(4));h_suber6:f_subportmap(*=>*(5),y=>y(5),sub_in=>e(4),diff=>diff(5),s_out=>e(5));h_suber7:f_subportmap(*=>*(6),y=>y(6),sub_in=>e(5),diff=>diff(6),s_out=>e(6));h_suber8:f_subportmap(*=>*(7),y=>y(7),sub_in=>e(6),diff=>diff(7),s_out=>s_out);endone;libraryieee;useieee.std_logic_1164.all;entityf_sub81isport(*,y:instd_logic_vector(7downto0);sub_in:instd_logic;diff:outstd_logic_vector(7downto0);s_out:outstd_logic);endf_sub81;architectureoneoff_sub81isponentf_subport(*,y,sub_in:instd_logic;diff,s_out:outstd_logic);endponent;signale:std_logic_vector(8downto0);begine(0)<=sub_in;s_out<=e(8);q1:foriin0to7generateh_suber1:f_subportmap(*=>*(i),y=>y(i),sub_in=>e(i),diff=>diff(i),s_out=>e(i+1));endgenerateq1;endone;E*6:设计框图为:EN,CLC,CLKEN,CLC,CLK开场CLC=’0’NCLC=’0’CLK’EVENTCLK=’1’CLK’EVENTCLK=’1’Q1<=Q1-1EN=’1’Q1<=Q1-1EN=’1’Q1<=(OTHERS=>
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 学校的装修合同
- 玻璃公司面试题及答案
- 收意向金合同
- 2025装载机转让合同范本
- 2025借款合同书范本模板
- 切断机行业相关项目可行性研究分析报告
- 英文 设备 合同
- 企业分立合同
- 2025共同责任借款担保合同
- 不发劳动合同
- 骨肉瘤护理查房
- 中国常规肺功能检查基层指南解读
- 分子生物学文献阅读汇报
- 贴砖劳务合同补充协议
- 转正述职报告怎么写个人
- 2025深圳网约车考试题库及答案
- 思创优学无人机编程课件
- 2025-2030肉制品消费升级趋势与品类创新机会评估报告
- 2026届高考备考数学总复习的一些想法和做法
- 人工智能在法律行业的应用
- 湖南省永州市2025年-2026年小学六年级数学期末考试(上学期)试卷及答案
评论
0/150
提交评论