1 / 79

电工电子实验中心

电工电子实验中心. 实验一、 Quartus II 开发环境. 下载区. 数码管指示 灯输出单元. 模拟信号 输入单元. 液晶屏. 电机输出单元. 下载目标板. 频率 输出单元. 点阵输出单元. 频率 选择单元. 单片机下载单元. 数字量输入单元. A/D 和 D/A 处理单元. 实验一、 Quartus II 开发环境. 实验一、 Quartus II 开发环境. SW1 ~ SW16 是拨码开关,向上为 1 ;向下为 0 。 本实验箱指定了 SW1 ~ SW8 的端口(见附录);而 SW9 ~ SW16 未指定端口,不能使用。.

vega
Download Presentation

电工电子实验中心

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 电工电子实验中心

  2. 实验一、Quartus II开发环境 下载区 数码管指示 灯输出单元 模拟信号 输入单元 液晶屏 电机输出单元 下载目标板 频率 输出单元 点阵输出单元 频率 选择单元 单片机下载单元 数字量输入单元 A/D和D/A处理单元

  3. 实验一、Quartus II开发环境

  4. 实验一、Quartus II开发环境 SW1~SW16是拨码开关,向上为1;向下为0。 本实验箱指定了SW1~SW8的端口(见附录);而SW9~SW16未指定端口,不能使用。 注意:SW7和SW8 的端口号。 对应的管脚,参考实验报告书后面

  5. 实验一、Quartus II开发环境 组合逻辑 对应的管脚,参考实验报告书后面 AN1~AN8是按键开关,按下为1;不按为0。(端口号见附录)

  6. 实验一、Quartus II开发环境 时序逻辑 有5个时钟源 CLK1~CLK5,端口号见附录。 使用时,将短路块插在所需频 率的跳针上即可。 对应的管脚,参考实验报告书后面

  7. 实验一、Quartus II开发环境 8个数码管 LED1~LED8,端口号见 附录。 数码管采用扫描方式显 示,8个数码管的对应笔段 共用同一端口,利用 74LS138输出片选,任一 时刻只选通一个数码管, 当扫描频率足够快时,可 看作同时显示。 对应的管脚,参考实验报告书后面

  8. 实验一、Quartus II开发环境 如: 当指定S3S2S1=011时, 则选通左边第四个数码管

  9. 实验一、Quartus II开发环境 12个发光二极管 D112~D101,端口号见 附录。 高电平点亮,低电平熄灭

  10. 实验一、Quartus II开发环境

  11. 实验一、Quartus II开发环境 主 芯片

  12. 一、实验目的 1:练习使用QUARTUS II 7.1软件,掌握利用该软件进行简单EDA设计的基本流程。 2:完成一个通过拨码开关控制发光二极管亮灭的应用,实验结束后可独立完成思考题。 实验一、Quartus II开发环境

  13. 实验一、Quartus II开发环境 二、实验内容及步骤 步骤一:项目的创建 (1).建立工程,设计输入。选择菜单“File”→“New Preject Wizard”

  14. (2)点击Next,为工程选择存储目录、工程名称、顶层实体名等,如图1-3 所示; (3)点击Next,若目录不存在,系统可能提示创建新目录,如图1-4所示, 点击“是”按钮创建新目录,系统显示如图1-5所示; (4)系统提示是否需要加入文件,在此不添加任何文件; (5) 点击Next,进入设备选择对话框,如图1-6,这里选中实验箱的核心 芯片CYCLONE系列FPGA产品EP1C6Q240C8; (6)点击Next,系统显示如图1-7,提示是否需要其他EDA工具,这里不选 任何其他工具; (7)点击Next后,系统提示创建工程的各属性总结,若没有错误,点击 Finish,工程创建向导将生成一个工程,这时软件界面如图1-8,在窗口左侧显示出设备型号和该工程的基本信息等。 实验一、Quartus II开发环境

  15. 实验一、Quartus II开发环境 Cyclone系列的EP1C6Q240C8 图1-6

  16. 实验一、Quartus II开发环境 图1-7

  17. 实验一、Quartus II开发环境 步骤二:VHDL文本编辑输入 1.选择File/New或点击主菜单中的空白图标,进入新建程序文件状态,选择VHDL file 。VHDL程序文件的扩展名是:* .vhd 为实现用一个拨码开关控制一个LED亮灭的功能,可用VHDL编写一个程序实现

  18. 实验一、Quartus II开发环境 2.点击OK按钮进入VHDL文本编辑环境界面

  19. 实验一、Quartus II开发环境 3、在编辑窗口中编辑以下程序: library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; entity test is Port ( led:out std_logic; key:in std_logic ); end test; architecture Behavioral of test is begin led <= key; end Behavioral;

  20. 实验一、Quartus II开发环境 4、输入程序后,存盘,如图1-10所示: 图1-10

  21. 实验一、Quartus II开发环境 5.点击Processing->Start Compilation编译该文件,系统将开始编译,结束后,给出提示信息和编译结果,如图1-11所示: 图1-11

  22. 实验一、Quartus II开发环境 6.点击Assignment->Pins进行引脚分配,实验箱上拨码开关和LED对应的引脚分别为58和98,分配结果如图1-12所示。

  23. 7.参照步骤(5)重新编译系统,系统将生成FPGA配置文件,在编译过程中若显示警告可不理会;7.参照步骤(5)重新编译系统,系统将生成FPGA配置文件,在编译过程中若显示警告可不理会; 8.准备下载,注意打开实验箱电源,并连接下载电缆; 9.点击Tools->Programmer将配置文件下载到FPGA,系统显示如图1-13所示,注意选择下载模式为JTAG,若下载线硬件显示“No Hardware”(如图1-13所示),则点击Hardware Setup按钮,系统显示如图1-14,双击USB-Baster,设定其为当前选定硬件,再点Close返回。 实验一、Quartus II开发环境

  24. 实验一、Quartus II开发环境 图1-13 下载界面

  25. 实验一、Quartus II开发环境 图1-14 下载线配置

  26. 实验一、Quartus II开发环境 图1-15 配置好下载电缆的下载界面

  27. 观察实验效果,尝试开关拨码开关K1,发光二极管D1-1将随之亮灭。观察实验效果,尝试开关拨码开关K1,发光二极管D1-1将随之亮灭。 实验一、Quartus II开发环境

  28. 通过本实验学生应掌握QUARTUS 7.1软件的基本使用方法和利用该软件进行EDA设计的基本流程。本实验的内容虽然简单,但却是进行复杂设计的基础。 实验一、Quartus II开发环境 三、实验总结

  29. 实验一、Quartus II开发环境 四、思考题 • 本实验是利用1个拨码开关控制1个LED,现要求利用8个拨码开关控制8个LED,在现有的实验环境下完成。实验箱上8个拨码开关控制8个LED对应的FPGA引脚为:

  30. 一、实验目的及要求: 1、学习使用QUARTUS II 7.1、SOPC Builder、NIOS II IDE软件,掌握利用这些软件进行简单SOPC设计和调试的基本流程; 2、完成一个简单的NIOS II CPU设计,通过JTAG-UART接口向计算机发送一段字符串。 实验二 SOPC基础实验——Hello实验

  31. 二、实验环境及器材: 1、微机(已安装授权的QUARTUS II 7.1、SOPC Builder、NIOS II IDE) 2、EDA/SOPC实验开发系统 3、USB Blaster下载线一根

  32. 三、背景知识及操作流程: NIOS II 软核CPU是ALTERA公司2005年推出的新一代软核CPU产品,较其前一代产品NIOS,在用户界面、可调试性等方面都有了很大的改进,目前最新版本为7.1。NIOS II设计工具为SOPC BUILDER,已嵌入到QUARTUS II软件中,调试工具为NIOS II IDE。 本实验设计一个含NIOS II CPU的简单应用,可在控制台显示一段字符串,具体实验步骤如下: (1)启动QUARTUS软件并建立一个工程,其过程请参照实验1,在此不作赘述,工程名不妨命名为hello; (2)点击Tools->SOPC Builder,启动SOPC Builder,如图5-1所示; 实验二 SOPC基础实验——Hello实验

  33. (3)启动SOPC Builder后,系统提示输入系统名以及目标语言,这里可随意为系统命名,不妨命名为MYCPU,请注意该名称将在后面的设计中用到,因此最好命名为有意义的名字,目标语言不妨选VHDL; 实验二 SOPC基础实验——Hello实验

  34. (4)点击OK,系统显示SOPC Builder界面,窗口左侧为IP核列表,右侧为设计界面,下方为信息窗口。由于实验箱上FPGA的工作时钟为24MHz,因此须更改时钟设置,只要鼠标双击频率数并进行修改即可; 实验二 SOPC基础实验——Hello实验

  35. (5)下面就可以为设计添加组件了,首先双击左侧的Nios II Processor,为系统添加Nios II CPU,系统显示如图2-4,Nios II的类型分为经济型、标准型和完全型三种,这里选标准型,即Nios II/s,其他选项取默认值即可,点击Finish,系统显示如图2-5所示; 实验二 SOPC基础实验——Hello实验

  36. 实验二 SOPC基础实验——Hello实验

  37. (6)最好为添加的CPU更改个名字,用鼠标右键点击CPU,选Rename为其更名,不妨更名为MYNIOS,系统显示如图2-6所示,请注意这时信息窗有三行提示,可暂时不去管它。(6)最好为添加的CPU更改个名字,用鼠标右键点击CPU,选Rename为其更名,不妨更名为MYNIOS,系统显示如图2-6所示,请注意这时信息窗有三行提示,可暂时不去管它。 (7)继续为设计添加组件,在左侧列表中选择On Chip Memory(ROM or RAM),双击后,系统显示如图2-7;首先为系统添加片上ROM,在内存类型上选ROM,数据宽度选32位,容量选1Kbytes,其他内容可不作修改; 实验二 SOPC基础实验——Hello实验

  38. (8)类似(6),为设计添加1K字节片上RAM组件,其选项界面如图2-9所示,添加完成后将其更名为RAM。添加完ROM和RAM后,请将它们的基地址分别更改为0x00001000和0x00002000,如图2-10所示;(8)类似(6),为设计添加1K字节片上RAM组件,其选项界面如图2-9所示,添加完成后将其更名为RAM。添加完ROM和RAM后,请将它们的基地址分别更改为0x00001000和0x00002000,如图2-10所示; (9)设计添加UART JTAG组件,从左侧列表中选择UART JTAG并双击,系统显示,不用更改设置,直接点击Finish,完成所有组件的添加,系统显示如图2-12; (10)MYCPU为其设置复位向量和异常向量,如图2-13所示,复位向量的内存选ROM,异常向量的内存选RAM,地址不用改变; (11)至此,CPU的所有组件添加完毕,点击Generate开始生成CPU。 (12)生成过程结束后,系统给出相应提示“System generation was successful”,如图2-14所示,至此CPU设计完成。 实验二 SOPC基础实验——Hello实验

  39. 实验二 SOPC基础实验——Hello实验

  40. 实验二 SOPC基础实验——Hello实验 图2-12 添加完成所有组件

  41. 实验二 SOPC基础实验——Hello实验 图2-14 CPU生成完毕

  42. CPU设计完成后,返回到Quartus窗口,利用顶层图的设计方法进行该CPU的应用设计,具体步骤如下: (1)新建一个BDF文件,系统显示BDF设计窗口,点击Symbol Tools后,展开左侧的Library,在Project下出现一个组件,名称为MYCPU,如图2-15所示,这就是刚才生成的CPU,双击该CPU将其加入设计窗口; 实验二 SOPC基础实验——Hello实验

  43. (2)类似实验1的操作,添加两个INPUT类型的PIN,分别连接到MYCPU的clk和reset_n,并更名为CLOCK和RESET,如图2-16所示,这两个引脚分别是所设计CPU的时钟和复位引脚;(2)类似实验1的操作,添加两个INPUT类型的PIN,分别连接到MYCPU的clk和reset_n,并更名为CLOCK和RESET,如图2-16所示,这两个引脚分别是所设计CPU的时钟和复位引脚; (3)存盘,命名为hello.bdf; (4)编译系统,注意本设计目前还未进行引脚锁定,因此编译过程可在进行完Analysis & Synthesis后人为中断; (5)类似实验1操作,对CLOCK和RESET两个引脚进行锁定,它们对应的FPGA引脚分别为28和240; (6)再次编译系统,直到最后结束,在编译过程中可能会出现若干警告可不去理会;编译结束后将生成相应的配置文件hello.sof; (7)类似实验1操作,将hello.sof下载到FPGA; 至此,实验箱上的FPGA已经成为一个具有调试接口的CPU,可对其进行编程令其完成某些操作,本实验令其通过JTAG UART向计算机发送一段字符串并显示到计算机控制台,具体操作如下: (1)启动NIOS II IDE后,点击File->New->NIOS II C/C++ Application,如图2-17所示; 实验二 SOPC基础实验——Hello实验

  44. 实验二 SOPC基础实验——Hello实验

  45. (2)在name栏中为工程名命名,不妨为hello;在location栏中指定存储位置;在SOPC Builder System PTF File栏内指定该工程所用到的CPU,本例为刚才创建的MYNIOS; 在工程模板列表中选Hello World Small,由于本例设计的CPU只有少量的RAM,不能选Hello World模板。完成以上设置后,点击Next,此页面的设置不做任何修改,点击Finish,系统将按Hello World Small工程模板为本应用创建工程,创建结束后,在NIOS II IDE 左侧的工程列表中将多出两个,一个是hello,另外一个是hello_syslib,同时创建了若干C源文件,其中包括main函数的文件如图2-18所示: 实验二 SOPC基础实验——Hello实验

  46. 实验二 SOPC基础实验——Hello实验 图2-18 NIOS II IDE创建完成的hello工程

  47. (3)用户可对该源文件进行修改,实现用户要求的功能,例如在alt_putstr语句下添加一条新语句:(3)用户可对该源文件进行修改,实现用户要求的功能,例如在alt_putstr语句下添加一条新语句: alt_printf(“Hello from SOPC Lab!\n”); (4)存盘后,鼠标右键点击左侧的hello工程名,选Build Project,开始对该工程进行编译。与一般的编译工具类似,若程序中存在错误,NIOS II IDE也会给出错误信息,供用户更改程序。 (5)若编译成功,则可运行,选择Run->Run,系统显示如图2-19,为了使程序在实验箱上运行,可用鼠标右键点击Nios II Hardware,并选择New,系统将创建一个新的运行配置文件,如图2-20所示。请注意,若NIOS II IDE同时包含多个工程,在进行此步操作之前,一定要在窗口左侧的工程列表中将要运行的工程名选中。 (6)点击Run,则系统开始运行,请注意,该应用是在实验箱FPGA上的CPU运行的,运行结果如图2-21所示; 实验二 SOPC基础实验——Hello实验

  48. 实验二 SOPC基础实验——Hello实验 图2-21 运行结果

  49. 实验二 SOPC基础实验——Hello实验 (7)在屏幕下方的控制台窗口中显示的就是该应用的运行结果,由显示结果看,程序运行正确,可点击红色的终止按钮或Ctrl-C结束运行;

  50. 至此,一个完整的NIOS II应用设计、运行完成。NIOS II CPU支持调试,即单步执行、察看变量值等操作,下面简单介绍一下调试过程: 为说明问题,将上面程序作简单修改如图2-22所示,编译通过后,点击Run->Debug,系统显示类似图2-20,再点击Debug开始调试,系统显示如图2-23,这时可按F6单步执行,注意观察屏幕右上方窗口显示的变量值的变化,可点击红色的终止按钮结束程序调试。 实验二 SOPC基础实验——Hello实验

More Related