Verilog入门训练4-三人表决器_第1页
Verilog入门训练4-三人表决器_第2页
Verilog入门训练4-三人表决器_第3页
Verilog入门训练4-三人表决器_第4页
Verilog入门训练4-三人表决器_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实训3:三人表决器的设计与实现问题提出:表决器既是多数通过事件,三个人参与表决,大于或等于二人即为通过。请设计一个数字组合逻辑电路,实现上述三人表决功能。1.逻辑抽象假设参与表决的三人分别为A、B、C,表决结果为F。当三人中有两人或以上同意,即A、B、C三个输入中有两个或以上为1时,F=1。在FPGA开发板上,同样可以定义三个拨动开关分别代表A、B和C,一个LED灯代表F,表决通过时,灯亮,否则灯灭。2.列出真值表A00001111B00110011C01010101F00010111ABC0001111000011101110得到:F=AB+BC+AC3.使用Quartus8.0建立项目,建立过程和注意事项见前两周的实验指导,选择器件时随便指定一个。这里的项目名称为voter3。(切记项目保存路径和实验过程中新建的文件保存路径都不要出现中文)4.项目建好后,新建Verilog文件并输入代码选择“File”——“New”——“VerilogHDLfile”。第1种方法:直接根据逻辑表达式写出代码,即数据流描述方式。如下所示。保存文件,文件名同为voter3。5.编译项目。“Processing”——“StartCompilation”6.功能仿真编译通过后,新建波形仿真文件:“File”——“New”,选择“VectorWaveformFile”,如下图所示:在出现的编辑界面左侧右键,选择如下:在“InsertNodeorBus”里选择“NodeFinder…”在弹出来的“NodeFinder”中,首先在“Filter”中选择“Pins:Unassigned”,然后点击“list”,在“NodesFound”中会列出引脚,第三步选择全部引脚(鼠标拉),点击“>>”,最后点击“OK”即可。在“InsertNodeorBus”界面点击“OK”。所有的回到的这时候会看到所有的引脚会列出来,如下所示,三个输入默认为低电平,输出F状态未知。由实验原理可知,为了得到A、B、C三个信号不同的组合,设置A为10ns周期信号,B为20ns周期信号,C为40ns周期信号。设置方法如下:选择输入“A”,点击右键,选择“Value”——“Clock”。在Clock中设置周期为10ns。如下所示:按设置完成后,如下所示:保存波形文件,路径不要有中文!添加完激励信号后,选择“Processing”—“SimulatorTool”,在“Simulationmode”中选择“Functional”,再点击“GenerateFunctionalSimulationNetlist”。然后选择“Overwritesimulationinputfilewithsimulationresult”,点击“Start”开始仿真。Voter3.vwf仿真成功后,回到波形文件,会弹出提示。选择“是”来更新仿真结果,如下图所示:根据仿真结果分析,例如在红线所在位置,A=1,B=0,C=1,就是说三个人中有两个人举手通过,因此F应该等于1。结果正确。也可以从其他任意位置是否符合要求。分析,看电路7.指定引脚点击“File”——“SaveProject”,然后关闭quartus8.0。打开Quartus11.0,选择“OpenProject”,找到上面保存的项目。项目打开后,首先更换器件,方法如下:点击项目中器件(刚才随便指定的),右键,选择“Device”在弹出来的器件选择界面中,在Family栏选择CycloneIVE,右边Package处选择“FBGA”,然后在列表中找到需要的EP4CE30F23C08器件,点击OK。器件选择后,需要重新编译程序:“Processing”——“StartCompilation”。编译通过后,查看开发板使用手册,指定引脚。A、B、C对应SW0至SW2,引脚分别为:C2、F1、F2,。LED_OUT对应LEDG0,引脚为J2。“Assignments”—“PinPlanner”。8.设置其他没有使用的引脚为接地状态第一步,在项目导航栏中选择器件名称,右键选择“Device”;第二步,在弹出框中选择“DeviceandPinOptions”在“Category”中选择“UnusedPins”,将所有“Reserveallunusedpins”设置为“Asoutputdrivingground”,点击“OK”。最后编译项目。“Processing”——“StartCompilation”。9.烧写程序。“Tools”——“Programor”。检查是否有编程器USBBlaster0,然后按“Start”开始烧写程序。10.在开发板上检验实验结果,拨动开关至不同状态,查看LED灯是否符合设计要求。拍照,记录实验结果。未能得到预期实验结果的同学思考各个步骤,排除错误。扩展实验部分:1.使用行为描述,用case语句实现三人表决器。重新编译代码:“Processing”——“StartCompilation”。到FPGA,看电路是否按照要求工作。reg是什么关键词?always的用法、格式?case的语法格式?下载代码思考以下几点:2.使用结构描述方式完成三人表决器。由于F的表达式为:实现上述电路一共需要3个二输入与门和1个三输入或门。其他设置全部不要改变,回到Verilog代码F=AB+BC+AC,将原来的代码改写为下述代码:代码主体部分中的and和or是quartus中已经定义好的基本门电路,代码相当于直接调用。这点非常重要,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论