ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:75.25KB ,
资源ID:25829420      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/25829420.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(VHDL实验半加器等等指导书.docx)为本站会员(b****7)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

VHDL实验半加器等等指导书.docx

1、VHDL实验半加器等等指导书实验一 半加器和全加器的设计一、 实验目的1、掌握图形的设计方式; 2、掌握自建元件及调用自建元件的方法;3、熟练掌握MAXPLUS II的使用。二、实验内容1、熟练软件基本操作,完成半加器和全加器的设计; 2、正确设置仿真激励信号,全面检测设计逻辑; 3、综合下载,进行硬件电路测试。三、实验原理1、半加器的设计半加器只考虑了两个加数本身,没有考虑由低位来的进位。半加器真值表:被加数A 加数B 和数S 进位数C 0 0 0 0 0 1 1 0 1 0 1 0 1 1 0 1半加器逻辑表达式:;2.全加器的设计全加器除考虑两个加数外,还考虑了低位的进位。全加器真值表:

2、 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0 0 1 1 0 1 1 0 0 1 0 1 0 1 0 1 1 1 0 0 1 1 1 1 1 1全加器逻辑表达式:; 3、利用半加器元件完成全加器的设计 (1)图形方式 其中HADDER为半加器元件。四、实验步骤 1、完成图形半加器设计。 2、完成VHDL半加器设计与仿真(记录仿真波形)。 3、完成VHDL全加器设计与仿真(记录仿真波形)。 4、利用半加器元件进行图形的全加器设计。 五、思考题: 1、怎样自建元件?自建元件的调用要注意什么?实验二 二位加法计数器的设计一、实验目的 1、掌握二位加法计数器的原理; 2、掌握二位加法计

3、数器的VHDL描述。 3、深入理解VHDL中元件例化的意义。二、实验内容 1、完成带进位功能二位加法计数器的VHDL设计; 2、正确设置仿真激励信号,全面检测设计逻辑; 3、综合下载,进行硬件电路测试。三、实验原理1、二位加法计数器中使用了矢量类型的数据,用来表示计数的数值。2、元件的例化就是元件的调用,是层次化设计的基础。具体设计程序由学生自己完成。四、实验步骤 1、了解二位加法计数器的工作原理。 2、用VHDL文本方式设计二位加法计数器。 3、进行二位加法计数器的设计仿真(记录仿真波形)。 4、进行二位加法计数器的设计下载与测试。 五、思考题 1、怎样设计“减法”计数器?2、进位信号的设置

4、应注意什么?实验三 基于QUARTUSII图形输入电路的设计一、 实验目的1、 通过一个简单的38译码器的设计,掌握组合逻辑电路的设计方法。2、 初步了解QUARTUSII原理图输入设计的全过程。3、 掌握组合逻辑电路的静态测试方法。二、 实验原理3-8译码器三输入,八输出。当输入信号按二进制方式的表示值为N时,输出端标号为N的输出端输出高电平表示有信号产生,而其它则为低电平表示无信号产生。因为三个输入端能产生的组合状态有八种,所以输出端在每种组合中仅有一位为高电平的情况下,能表示所有的输入组合。其真值表如表1-1所示输入输出ABCD7D6D5D4D3D2D1D0000000000011000

5、0000010010000001001100000100000100010000101001000000110100000011110000000表1-1 三-八译码器真值表译码器不需要像编码器那样用一个输出端指示输出是否有效。但可以在输入中加入一个输出使能端,用来指示是否将当前的输入进行有效的译码,当使能端指示输入信号无效或不用对当前信号进行译码时,输出端全为高电平,表示无任何信号。本例设计中没有考虑使能输入端,自己设计时可以考虑加入使能输入端时,程序如何设计。三、 实验内容 在本实验中,用三个拨动开关来表示三八译码器的三个输入(A、B、C);用八个LED来表示三八译码器的八个输出(D0-D

6、7)。通过输入不同的值来观察输入的结果与三八译码器的真值表(表1-1)是否一致。实验箱中的拨动开关与FPGA的接口电路如下图1-1所示,当开关闭合(拨动开关的档位在下方)时其输出为低电平,反之输出高电平。其电路与FPGA的管脚连接如表1-2所示图1-1 拨动开关与FPGA接口电路信号名称对应FPGA(EP2C35)管脚名信号说明K1E15从K1输出到FPGA的E15K2B14从K2输出到FPGA的B14K3F9从K3输出到FPGA的F9K4B15从K4输出到FPGA的B15K5A15从K5输出到FPGA的A15K6F11从K6输出到FPGA的F11K7A16从K7输出到FPGA的A16K8F1

7、3从K8输出到FPGA的F13K9F14从K8输出到FPGA的F14K10A17从K8输出到FPGA的A17K11H7从K8输出到FPGA的H7K12A18从K8输出到FPGA的A18表1-2 拨动开关与FPGA管脚连接表当FPGA与其对应的端口为高电平时LED就会发光,反之LED灯灭。其与FPGA对应的管脚连接如表1-3所示。 信号名称对应FPGA(EP1C12)管脚名说明D1E9从FPGA的E9输出至D1D2A11从FPGA的A11输出至D2D3E11从FPGA的E11输出至D3D4B13从FPGA的B13输出至D4D5E14从FPGA的E14输出至D5D6A13从FPGA的A13输出至D

8、6D7L7从FPGA的L7输出至D7D8B19从FPGA的B19输出至D8D9M8从FPGA的M8输出至D9D10A19从FPGA的A19输出至D10D11M7从FPGA的M7输出至D11D12B20从FPGA的B20输出至D12表1-3 LED灯与FPGA管脚连接表四、 实验步骤下面将通过这个实验,向读者介绍QUARTUSII的项目文件的生成、编译、管脚分配以及时序仿真等的操作过程。1、建立工程文件1)选择开始程序AlteraQuartusII5.1,运行QUARTUSII软件。2)选择软件中的菜单FileNew Project Wizard,新建一个工程。3)点击图1-4中的NEXT进入工

9、作目录,工程名的设定对话框。第一个输入框为工程目录输入框,用户可以输入如e:/eda等工作路径来设定工程的目录,设定好后,所有的生成文件将放入这个工作目录。第二个输入框为工程名称输入框,第三个输入框为顶层实体名称输入框。用户可以设定如EXP1,一般情况下工程名称与实体名称相同。使用者也可以根据自已的实际情况来设定。4)点击NEXT,进入下一个设定对话框,按默认选项直接点击NEXT进行器件选择对话框。这里我们以选用Cyclone系列芯片EP2C35F484C8为例进行介绍。用户可以根据使用的不同芯片来进行设定,其方法基本一致。 首先在对话框的左上方的Family下拉菜单中选取Cyclone,在中

10、间右边的Speed grade下拉菜单中选取8,在左下方的Available devices框中选取EP1C12F324C8,点击NEXT完成器件的选取,进入EDA TOOL设定界面。5)按默认选项,点击NEXT出现新建工程以前所有的设定信息,点击FINISH完成新建工程的建立。2、建立图形设计文件 1)在创建好设计工程后,选择FileNEW菜单,出现新建设计文件类型选择窗口。这里我们以建立图形设计文件为例进行说明,其它设计输入方法与之基本相同。2)在New对话框中选择Device Design Files页下的Block Diagram/Schematic File,点击OK按钮,打开图形编

11、辑器对话框。图中标明了常用的每个按钮的功能。QUARTUSII图形编辑器也称块编辑器(Block Editor),用于以原理图(Schematics)和结构图(Block Diagrams)的形式输入和编辑图形设计信息。QUARTUSII图形编辑器可以读取并编译结构图设计文件(Block Design File)和MAXPLUSII图形设计文件(Graphic Design Files),可以在QUARTUSII软件中打开图形设计文件并将其另存为结构图设计文件。在QUARTUSII图形编辑器窗口中,根据个人爱好,可以随时改变Block Editor的显示选项,如导向线和网格间距、橡皮筋功能、颜

12、色以及基本单元和块的属性等。3)在这里以用原理图输入设计一个三八译码器为例,介绍基本单元符号输入方法的步骤。在图形编辑器窗口的工件区双击鼠标的左键,或点击图中的符号工具按钮,或选择菜单EditInsert Symbol,则弹出Symbol对话框。 4)用鼠标点击单元库前面的“+”号,展开单元库,用户可以选择所需要的图元或符号,该符号则显示在右边的显示符号窗口,用户也可以在符号名称里输入你所需要的符号名称,点击OK按钮,所选择的符号将显示在图形编辑器的工作区域。5)将要选择的器件符号放置在图形编辑器的工件区域,用正交节点工具将原件边接起来,然后定义端口的名称。在这个例子里,定义三个输入为A、B、

13、C,定义八个输出为D0、D1、D2、D3、D4、D5、D6、D7。用户也可以根据自己的习惯来定义这些端口名称。6)完成图形编辑的输入之后,需要保存设计文件或重新命名设计文件。选择FileSave As项,出现对话框,选择好文件保存目录,并在文件名栏输入设计文件名。如需要将设计文件添加到当前工程中,则选择对话框下面的Add file to current project复选框,单击保存按钮即可保存文件。需要注意的是,在整个设计文件保存的过程当中,都需要遵循设计输入法的一般规则。3、对设计文件进行编译QUARTUSII编译器窗口包含了对设计文件处理的全过程。在QUARTUSII软件中选择ToolC

14、ompiler Tool菜单项,则出现QUARTUSII的编译器窗口。需要说明的是在进行设计文件的综合和分析,也可以单独打开某个分析综合过程不必进行全编译界面。当完成上述窗口的设定后,点击START按钮进行设计文件的全编译。如果文件有错,在软件的下方则会提示错误的原因和位置,以便于使用者进行修改直到设计文件无错。整个编译完成,软件会提示编译成功。4、管脚分配在前面选择好一个合适的目标器件(在这个实验中选择为EP2C35F484C8),完成设计的分析综合过程,得到工程的数据文件以后,需要对设计中的输入、输出引脚指定到具体的器件管脚号码,指定管脚号码称为管脚分配或管脚锁定。管脚分配完之后一定要进行

15、再进行一次全编译,以使分配的管脚有效。5、对设计文件进行仿真1)创建一个仿真波形文件,选择QUARTUSII软件FileNew,进行新建文件对话框。如图1-24所示。选取对话框的Other File标签页,从中选取Vector Waveform File,点击OK按钮,则打开了一个空的波形编辑器窗口。2)设置仿真结束时间,波形编辑器默认的仿真结束时间为1S,根据仿真需要,可以自由设置仿真的结束时间。选择QUARTUSII软件的EditEnd Time命令,弹出线路束时间对话框,在Time框办输入仿真结束时间,点击OK按钮完成设置。3)加入输入、输出端口,在波形编辑器窗口左边的端口名列表区点击鼠

16、标右键,在弹出的右键菜单中选择Insert Node or Bus命令,在弹出的Insert Node or Bus对话框界面中点击Node Finder按钮。在出现的Node Finder界面中,如图1-27所示,在Filter列表中选择Pins:all,在Named窗口中输入“*”,点击List在Nodes Found窗口出现所有信号的名称,点击中间的按钮则Selected Nodes窗口下方出现被选择的端口名称。双击OK按钮,完成设置,回到的Insert Node or Bus对话框,双击OK按钮,所有的输入、输出端口将会在端口名列表区内显示出来。4)编辑输入端口波形,即指定输入端口的逻

17、辑电平变化,在的波形编辑窗口中,选择要输入波形的输入端口如A端口,在端口名显示区左边的波形编辑器工具栏中有要输入的各种波形,其按钮说明。根据仿真的需要输入波形。最后选择软件的FileSave进行保存。5)指定仿真器设置,在仿真过程中有时序仿真和功能仿真之分,在这里介绍功能仿真。在QUARTUSII软件中选择ToolSimulator Tool命令,打开仿真器工具窗口。首先产生功能仿真网表文件,点击产生功能仿真网表的按钮Generate Functional Simulation Netlist,产生功能仿真网表,然后点击开始仿真的START按钮开始进行仿真,直到仿真进度条为100%完成仿真。点

18、击仿真报告窗口按钮Report,观察仿真波形。6、从设计文件到目标器件的加载 完成对器件的加载有两种形式,一种是对目标器件进行加载文件,一种是对目标器件的配置芯片进行加载。这里我们介绍对目标器件EP2C35F672C8进行加载的方法。 1)使用下载电缆将PC机与实验系统连接起来。2)选择QUARTUSII软件的ToolProgrammer命令,进行编程器窗口。如果没有设置编程硬件,则编程硬件类型为No Hardware,需要对编程硬件进行设置。3)点击Add Hardware按钮,出现Add Hardware对话框。4)在Add Hardware对话框中,从Hardware type列表中选择

19、所需要硬件类型,如果是USB接口的请参照用户使用手册中的USB电缆的安装与使用,如果使用的是并口下载线则选取如图1-35所示的硬件类型,点击OK按钮,完成对硬件类型的设置。回到编程器硬件设置窗口, 点击Close按钮退出设置。则在编程器对话框中的编程硬件类型会出现刚才选取的编程器硬件。5)如果软件已运行一个工程,则在打开编程器的时候,编程器窗口会自动出现这个工程文件要加载到目标器件的文件,如果要加载其它文件可以从其它地方进行添加更改。选好加载文件后,再点选Progam/Configure,编程模式选取JTAG模式,点击STRAT进行文件加载,直到加载进度变为100%,文件成功加载完成。五、实验

20、现象与结果文件加载到目标器件后,拨动拨动开关,LED灯会按表1-1所示的真值表对应的点亮。六、实验报告1、进一步熟悉和理解QUARTUSII软件的使用方法。实验四 可控脉冲发生器的设计一、 实验目的1、 了解可控脉冲发生器的实现机理。2、 学会用示波器观察FPGA产生的信号。3、 学习用VHDL编写复杂功能的代码。二、 实验原理脉冲发生器就是要产生一个脉冲波形,而可控脉冲发生器则是要产生一个周期和占空比可变的脉冲波形。可控脉冲发生器的实现原理比较简单,可以简单的理解为一个计数器对输入的时钟信号进行分频的过程。通过改变计数器的上限值来达到改变周期的目的,通过改变电平翻转的阈值来达到改变占空比的目

21、的。下面举个简单的例子来说明其工作原理。 假如有一个计数器T对时钟分频,其计数的范围是从0N,另取一个M(0MN),若输出为Q,那么Q只要满足条件时,通过改变N值,即可改变输出的脉冲波的周期;改变M值,即可改变脉冲波的占空比。这样输出的脉冲波的周期和占空比分别为:三、 实验内容本实验的任务就是要设计一个可控的脉冲发生器,要求输出的脉冲波的周期和占空比都可变。具体的实验过程中,时钟信号选用时钟模块中的1MHz时钟,然后再用按键模块的S1和S2来控制脉冲波的周期,每按下S1,N会在慢速时钟作用下不断地递增1,按下S2,N会在慢速时钟作用下不断地递减1;用S3和S4来控制脉冲波的占空比,每按下S3,

22、M会在慢速时钟作用下不断地递增1,每按下S4,M会在慢速时钟作用下不断地递减1,S8用作复位信号,当按下S8时,复位FPGA内部的脉冲发生器模块。脉冲波的输出直接输出到实验箱观测模块的探针,以便用示波器观察输出波形的改变。四、 实验步骤1、 打开QUARTUSII软件,新建一个工程。2、 建完工程之后,再新建一个VHDL File,打开VHDL编辑器对话框。3、 按照实验原理和自己的想法,在VHDL编辑窗口编写VHDL程序,用户可参照光盘中提供的示例程序。4、 编写完VHDL程序后,保存起来。方法同实验一。5、 对自己编写的VHDL程序进行编译并仿真,对程序的错误进行修改。6、 编译仿真无误后

23、,依照拨动开关、LED与FPGA的管脚连接表(表1-1、表1-2)或参照附录进行管脚分配。表9-1是示例程序的管脚分配表。分配完成后,再进行全编译一次,以使管脚分配生效。端口名使用模块信号对应FPGA管脚说 明CLK数字信号源L2时钟为1MHZMD按键开关S1F8频率控制/增加MU 按键开关S2A14频率控制/减少ND按键开关S3F10占空比控制/增加NU按键开关S4B16占空比控制/减少RST复位按键RESETB18复位控制FOUT输出观测模块V15示波器观测点表9-1 端口管脚分配表7、 用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。观察实验结果是否与自己的编程思想一致。五、

24、 实验结果与现象以设计的参考示例为例,当设计文件加载到目标器件后,将数字信号源模块的时钟选择为1MHZ,按下按键开关模块的S8按键,在输出观测模块通过示波器可能观测到一个频率约为1KHZ、占空比为50%的矩形波。按下S1键或者S2键,这个矩形波的频率会发生相应的增加或者减少。按下S3键或者S4键,这个矩形波的占空比会相应的增加或减少。六、 实验报告1、 绘出仿真波形,并作说明。2、 在这个实验的基础上重新设计,使程序改变频率的时候不会影响占空比的改变。3、 将实验原理、设计过程、编译仿真波形和分析结果、硬件测试结果记录下来。实验五 基于VHDL的抢答器的设计一、 实验目的1、熟悉四人抢答器的工

25、作原理。2、 加深对VHDL语言的理解。3、 掌握EDA开发的基本流程。二、 实验原理抢答器在各类竞赛性质的场合得到了广泛的应用,它的出现,消除了原来由于人眼的误差而未能正确判断最先抢答的人的情况。抢答器的原理比较简单,首先必须设置一个抢答允许标志位,目的就是为了允许或者禁止抢答者按按钮;如果抢答允许位有效,那么第一个抢答者按下的按钮就将其清楚,同时记录按钮的序号,也就是对应的按按钮的人,这样做的目的是为了禁止后面再有人按下按钮的情况。总的说来,抢答器的实现就是在抢答允许位有效后,第一个按下按钮的人将其清除以禁止再有按钮按下,同时记录清楚抢答允许位的按钮的序号并显示出来,这就是抢答器的实现原理

26、。三、 实验内容本实验的任务是设计一个四人抢答器,用按键模块的S8来作抢答允许按钮,用S1S4来表示1号抢答者4号抢答者,同时用LED模块的LED1LED4分别表示于抢答者对应的位子。具体要求为:按下S8一次,允许一次抢答,这时S1S4中第一个按下的按键将抢答允许位清除,同时将对应的LED点亮,用来表示对应的按键抢答成功。数码管显示对应抢答成功者的号码。在此实验中数码管、LED、按键开关与FPGA的连接电路和管脚连接在以前的实验中都做了详细说明,这里不在赘述。四、 实验步骤1、 打开QUARTUSII软件,新建一个工程。2、 建完工程之后,再新建一个VHDL File,打开VHDL编辑器对话框

27、。3、 按照实验原理和自己的想法,在VHDL编辑窗口编写VHDL程序,用户可参照光盘中提供的示例程序。4、 编写完VHDL程序后,保存起来。方法同实验一。5、 对自己编写的VHDL程序进行编译并仿真,对程序的错误进行修改。6、 编译仿真无误后,依照按键开关、LED、数码管与FPGA的管脚连接表或参照附录进行管脚分配。表10-1是示例程序的管脚分配表。分配完成后,再进行全编译一次,以使管脚分配生效。端口名使用模块信号对应FPGA管脚说 明S1按键开关S1F8表示1号抢答者S2按键开关S2A14表示2号抢答者S3按键开关S3F10表示3号抢答者S4按键开关S4B16表示4号抢答者S8按键开关S8B

28、18开始抢答按键DOUT0LED模块D1E91号抢答者灯DOUT1LED模块D2A112号抢答者灯DOUT2LED模块D3E113号抢答者灯DOUT3LED模块D4B134号抢答者灯LEDAG0数码管模块A段G6抢答成功者号码显示LEDAG1数码管模块B段G7LEDAG2数码管模块C段H3LEDAG3数码管模块D段H4LEDAG4数码管模块E段H5LEDAG5数码管模块F段H6LEDAG6数码管模块G段J4表10-1 端口管脚分配表7、 用下载电缆通过JTAG口将对应的sof文件加载到FPGA中。观察实验结果是否与自己的编程思想一致。五、 实验结果与现象以设计的参考示例为例,当设计文件加载到目标器件后,按下按键开关的S8按键,表示开始抢答。然后,同时按下S1-S4,首先按下的键的键值被数码管显示出来,对应的LED灯被点亮。与此同时,其它按键失去抢答作用。六、 实验报告1、 绘出仿真波形,并作说明。2、 将实验原理、设计过程、编译仿真波形和分析结果、硬件测试结果记录下来。

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1