1 / 11
文档名称:

学号-姓名-3-8译码器实验报告.doc

格式:doc   大小:496KB   页数:11页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

学号-姓名-3-8译码器实验报告.doc

上传人:iluyuw9 2019/8/6 文件大小:496 KB

下载得到文件列表

学号-姓名-3-8译码器实验报告.doc

文档介绍

文档介绍:学号-姓名-3-8译码器实验报告电子科技大学实验报告学生姓名:学号:指导教师:黄敏实验地点:主楼C2-514实验时间:(1班)一、实验室名称:虚拟仪器实验室二、实验项目名称:3-8译码器实验三、实验学时:4学时四、实验原理开发板上共四个按键:SW3~SW6,其中SW3为总开关;SW4、SW5、SW6作为三个译码输入。本实验3-8译码器所有的接口如下。inputext_clk_25m,//外部输入25MHz时钟信号inputext_rst_n,//外部输入复位信号,低电平有效input[3:0]switch,//4个拨码开关接口,ON--低电平;OFF--高电平。SW3为总开关;SW4、SW5、SW6的三个译码输入outputreg[7:0]led//8个LED指示灯接口3-8译码器真值表如下:SW3SW6,SW5,SW4复位点亮LEDXX,X,X0全灭OFFX,X,X1全灭ONOFF,OFF,OFF1D2点亮ONOFF,OFF,ON1D3点亮ONOFF,ON,OFF1D4点亮ONOFF,ON,ON1D5点亮ONON,OFF,OFF1D6点亮ONON,OFF,ON1D7点亮ONON,ON,OFF1D8点亮ONON,ON,ON1D9点亮注:X表示ON或OFF,即任意状态。五、实验目的熟悉利用HDL代码输入方式进行电路的设计和仿真的流程,掌握Verilog语言的基本语法。并通过一个3-8译码器的设计把握利用EDA软件()进行HDL代码输入方式的电子线路设计与仿真的详细流程。六、-8译码器设计,并进行仿真,然后生成配置文件下载到开发板上进行验证。七、实验器材(设备、元器件)1. 计算机(&);2. CycloneIVFPGA开发板一套(带AlteraUSB-Blaster下载器)。八、实验步骤新建工程,设置器件属性:,新建一个工程(注意命名规范),在“Family”中选择“CycloneIVE”系列,“Availabledevice”中选择具体型号“EP4CE6E22C8”,设置好器件属性。在EDAToolSettings页面中,可以设置工程各个开发环节中需要用到的第三方(Altera公司以外)EDA工具,我们只需要设置“Simulation”工具为“ModelSim-Altera”,Format为“VerilogHDL”即可,其他工具不涉及,因此都默认为<None>。(详见实验指导书)Verilog源码文件创建与编辑:点击菜单栏的“File→New…”,然后弹出如图所示的新建文件窗口,在这里我们可以选择各种需要的设计文件格式。可以作为工程顶层设计文件的格式主要在DesignFiles类别下,我们选择VerilogHDLFile(或者VHDLFile)并单击OK完成文件创建。将新建的文件保存后通过菜单栏“Project→Add/RemoveFilesinProject”将刚刚创建的文件加入新建的工程中,点击“Add”加入后选择OK按钮。(详见实验指导书)Modelsim仿真验证:将工程编译,无误后,采用第三方EDA仿真工具Modelsim进行仿真。1)设置路径:点击Tools→Options…”,进入选项卡“GeneralEDAToolOptions”,设置“Modelsim-Altera”后面的路径,即我们安装Modelsim时的路径;2)完成测试脚本创建与编辑;3)测试脚本关联设置;4)调用Modelsim进行功能仿真和时序仿真。(详见实验指导书)管脚分配:根据文档“SF-”对3-8译码器的进行引脚分配。(详见实验指导书)综合、实现与配置文件产生综合。(详见实验指导书)FPGA在线下载配置:1)连接开发板并给开发板供电;2)开启Programmer界面;3)识别USB-Blaster;4)执行在线下载操作。(详见实验指导书)拨动开发板对应按钮,观察输出是否符合预期。给开发板断电,清理器件,实验结束。九、-8译码器源码如下:moduletxt1(inputext_clk_25m, inputext_rst_n, input[3:0]switch, outputreg[7:0]led ); always@(posedgeext_clk_25mornegedgeext_rst_n) if(!ext_rst_n) led<=8'hff; elseif(switch[0]) led<=8'hff; elsebegin case(switch[3:1]) 3