教案2011~2012学年第1学期系(部)室电子与通信工程系课程名称EDA技术及应用(实验)专业、年级、班级09电气、08通信专业主讲教师张文希长沙学院教务处教案编写说明-1-长沙学院教案编号:1(累积2课时)课时安排:2学时教学课型:实验课题目:实验一简单逻辑电路实验教学目的要求:运用QuartusII集成环境下的VHDL文本设计方法设计半加器,进行波形仿真、引脚分配并下载到实验设备上进行逻辑功能验证,并分析其波形。教学重点、难点:重点:QuartusII软件平台和使用VHDL语言设计电路的方法难点:波形仿真、分析教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的1.学习Create-SOPC实验平台的使用方法;2.熟悉QuartusII软件平台和使用VHDL语言设计电路的方法;3.学习简单逻辑电路的设计、仿真和硬件测试。二、实验内容运用QuartusII集成环境下的VHDL文本设计方法设计半加器,进行波形仿真、引脚分配并下载到实验设备上进行逻辑功能验证。三、实验步骤及参考程序1.EDA实验箱介绍和使用2.创建个人实验文件夹(最好使用英文字母命名不要用中文或数字名称)如:D:\example3.运行QuartusⅡ软件。4.创建一个VHDL设计文件:File-New,在DeviceDesignFiles中选择VHDLFile。在程序编辑窗输入VHDL程序并保存;在弹出对话框中输入文件名(必须和程序中实体名相同)并使下方小框内出现“√”,点击保存会弹出“是否创建新工程”提示信息如图1-1所示。图1-1图1-2-2-5.创建一个新工程:点击图1-1中“是”可进入创建工程向导(也可以File-NewprojectWizard进入向导),此时看到的默认工程名、顶层实体名都为h_adder(其中工程名可换名但顶层实体名必与编写的程序实体名一致),如图1-2。点击NEXT,再在弹出窗中点击NEXT,选择目标器件:Cyclone系列EP1C20F324C8芯片,如图1-3。图1-36.编译:选择Processing-StartCompilation命令,对此工程进行逻辑分析、综合适配、时序分析等。如果设计正确则完全通过各种编译,如果有错误则根据报错信息返回h_adder.vhd进行修改,直至完全通过编译为止。7.创建一个仿真波形文件:File-New,在OtherFiles中选择VectorWaveformFile,如图1-4,进入波形编辑窗口。图1-4图1-58.以扩展名为.VWF,文件名与编译的文件名相同,保存创建的仿真波形文件,如h_adder.vwf。9.输入引脚:Name栏中点击鼠标右键,选择“InsertNodeorBus”,在其对话框中点击“NodeFinder”按钮,弹出“NodeFinder”对话框,Named:*;Filter:Pin:all,点击“List”,列出所有引脚,在其中选择需要仿真的引脚,如图1-5所示。它们将在波形编辑窗口中出现。图1-6图1-7-3-10.对所有input引脚赋初值(所有可能出现的信号组合状态都要求存在),对所有output引脚赋随机值后,保存仿真波形文件,如图1-6所示。11.开始仿真:选择Processing-StartSimulation若仿真没有出错,则在完成仿真后,可以看到仿真结果波形,观察输入、输出波形逻辑关系是否是与设计要求相符,波形仿真无误后进行下步操作。12.选择Assignments-AssignmentsEditor,在AssignmentsEditor窗口中选择Pin标签页,再按下表分配引脚,如图1-7所示:引脚名称引脚编号连接网络引脚名称引脚编号连接网络aPIN_N14KEY2coPIN_N15LED2bPIN_V11KEY3soPIN_U11LED313.重编译:选择Processing-StartCompilation命令,重新编译,完成后形成可配置到FPGA的h_adder.sof文件和配置到外部存储器的h_adder.pof文件。14.编程下载:使用Create-SOPC2000实验系统及SOPC开发板,将ByteBlasterII下载电缆插入SOPC开发板的JTAG下载接口中。仔细检查确保接线无误后打开电源。在QuartusII软件中,选择Tools/Programmer菜单,出现如图1-8所示的编程配置界面。在”Mode”中选择JTAG,点击”AddFile”按钮添加需要配置的SOF文件,选中Program/Configure,点击”Start”按钮就可以对芯片进行配置。15.测试:配置完成后按动KEY2和KEY3,改变a、b的输入电平观察输出结果验证设计是否正确。参考程序如下:LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYh_adderISPORT(a,b:INSTD_LOGIC;co,so:OUTSTD_LOGIC);END;ARCHITECTUREoneOFh_adderISBEGINso=NOT(aXOR(NOTb));co=aANDb;END;板书设计:讨论、思考题、作业1.一位全加器VHDL文本输入设计;2.改变输入、输出引脚编号,并测试逻辑功能。参考书目:后记:-4-长沙学院教案编号:2(累积4课时)课时安排:2学时教学课型:实验课题目:实验二2选1多路选择器教学目的要求:运用QuartusII集成环境下的VHDL文本设计方法设计2选1多路选择器,进行波形仿真、引脚分配并下载到实验设备上进行逻辑功能测试,合理设计输入波形。教学重点、难点:重点:掌握QuartusII软件平台、VHDL语言的基本语法和语句。难点:波形仿真激励设置、分析教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的学习Create-SOPC实验平台的使用方法;熟悉QuartusII软件平台和使用VHDL语言设计电路的方法;掌握VHDL语言的基本语法和语句;把握VHDL程序设计组合逻辑电路的基本结构和设计特点。二、实验内容运用QuartusII集成环境下的VHDL文本设计方法设计2选1多路选择器,进行波形仿真、引脚分配并下载到实验设备上进行逻辑功能测试。三、实验步骤及参考程序实验步骤和方法参考实验一,引脚分配可参考下表。引脚名称引脚编号连接网络引脚名称引脚编号连接网络aPIN_M3FPGA_M1qPIN_R10LED1bPIN_M4FPGA_M2selPIN_T10KEY1参考程序如下:libraryieee;useieee.std_logic_1164.all;entitymux21aisport(a,b,sel:instd_logic;q:outstd_logic);end;architecturebehaveofmux21aisbeginprocess(a,b,sel)begin-5-ifsel='0'thenq=a;elseq=b;endif;endprocess;end;板书设计:讨论、思考题、作业分析程序中的每一条语句的功能及特点;采用多种描述方式表达出2选1多路选择器功能。参考书目:后记:-6-长沙学院教案编号:3(累积6课时)课时安排:2学时教学课型:实验课题目:实验三D触发器设计教学目的要求:运用QuartusII集成环境下的VHDL文本设计方法设计简单时序电路——D触发器,依据D触发器的工作特性,进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。教学重点、难点:重点:时序逻辑电路的设计方法和VHDL语句并行、串行特性。难点:进程、变量、信号的使用用教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的熟悉QuartusII的VHDL文本设计简单时序电路的方法;掌握时序电路的描述方法、波形仿真和测试,特别是时钟信号的特性。二、实验内容运用QuartusII集成环境下的VHDL文本设计方法设计简单时序电路——D触发器,依据D触发器的工作特性,进行波形仿真和分析、引脚分配并下载到实验设备上进行功能测试。三、实验步骤及参考程序实验步骤和方法参考实验一,引脚分配可参考下表。引脚名称引脚编号连接网络clkPIN_T10/J16KEY1/连线dPIN_M3FPGA_M1qPIN_R10LED1libraryieee;useieee.std_logic_1164.all;entityDFF1isport(clk:instd_logic;d:instd_logic;q:outstd_logic);end;-7-architecturebhvofDFF1issignalq1:std_logic;beginprocess(clk)beginifclk’eventandclk=’1’thenq1=d;endif;q=q1;endprocess;end;板书设计:讨论、思考题、作业分析程序中的每一条语句的功能及特点;试调整CLK频率,观看其波形仿真及测试情况;试设计一锁存器并与D触发器进行比较。参考书目:后记:-8-长沙学院教案编号:4(累积8课时)课时安排:2学时教学课型:实验课题目:实验四1位二进制全加器设计教学目的要求:使用图形输入的方法用逻辑门电路设计一个半加器,生成符号文件。分别进行仿真、引脚分配并下载到电路板进行功能验证。教学重点、难点:重点:图形法设计电路,学会制作图形元件,调用自制图形元件。难点:顶层文件与底层文件的设计教学方式、手段、媒介:讲授、多媒体、示范教学过程:一、实验目的熟悉QuartusII集成环境的图形输入方法;学会把设计项目成为可调用元件符号和调用元件的方法;掌握同一工程中多个文件的编译、仿真方法。二、实验内容本实验首先使用图形输入的方法由逻辑门电路设计一个半加器,然后使用。分别进行仿真、引脚分配并下载到电路板进行功能验证。三、实验步骤创建个人实验文件夹(最好使用英文字母命名不要用中文名称)。运行QuartusII软件,选择File-New,在DeviceDesignFiles中选择BlockDiagram/SchematicFile,如图4-1所示,点击OK打开原理图编辑窗口。图4-1图4-2-9-在图形编辑窗中双击鼠标左键,将弹出元件输入对话框,在对话框右栏打开元件库找到需要的元件,如图4-2所示,点击OK即可将元件调入原理图编辑窗。将所有需要的元件都调入编辑窗。将各个元件采用单击鼠标并拖动的方法连接号电路图,然后分别在input和output的pin_name上双击使变为黑色,再分别输入各引脚名,如图4-3所示。图4-3选择File—SaveAs命令,选择为此工程已建好目录,将设计好的原理图文件取名为h_adder.bdf同时使下方小框内出现“√”,点击保存会弹出“是否创建新工程”提示信息如图4-4所示。图4-4图4-5创建一个新工程:点击图4-4中“是”可进入创建工程向导(也可以File-NewprojectWizard进入向导),此时看到的默认工程名、顶层实体名都为h_adder,此时将工程名换为f_adder顶层实体名不变,如图4-5所示。点击NEXT,再在弹出窗中点击NEXT,选择目标器件:Cyclone系列EP1C20F324C8芯片。按照实验一的方法完成半加器的编译、仿真。将半加器设置成可调用的元件,在打开半加器原理图文件下,选择File—Create/Update—CreateSymbolFilesforCurrentFile命令,如图4-6所示。此时半加器文件形成了一个符号元件可供高层次设计调用。图4-6-10-建立全加器原理图。与半加器原理图建立方法相同,选择File—New进入编辑窗,双击编辑窗,弹出元件输入对话框,此时在对话框右栏顶上可以看到多了一个Project元件库,其中有一个元件,它就是前面生成的可供调用的半加器元件,如图4-7所示。找到需要的元件,连接好全加器原理图,选择Project—SetasTop-LevelEntity命令,将其设置为顶层文件,如图4-8所示。图