(整理)实验52跑马灯实验.

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验 5.2 跑马灯实验

·实验说明

在FPGA 实验板上用VHDL 语言或者Verilog语言都能够很快地写出跑马灯实验程序。本实验要求完成的是基于SOPC 的跑马灯设计,具有一定的操作复杂性。

·实验步骤

5.2.1建立Quartus 工程

1.新建Quartus 工程RunningLED,顶层实体名RunningLED。

2.重新设置编译输出目录为../ RunningLED/release。

5.2.2建立SOPC系统

3.点击Quartus II 软件右上方图标打开SOPC Builder,创建一个SOPC 系统。填写系统名称为RinningLED_System,并指定VHDL 为描述系统的语言,如图5-23。

图5-23 添加系统名称并指定语言

4.在系统上添加On-Chip Memory

在程序左侧列表中选择Memory and Memory Controllers -> On-Chip -> On-Chip Memory (RAM or ROM),双击添加至系统中。

在弹出的对话框中指定片上RAM 的属性,因为不需要显示,编译结果很小,保持默认即可。

图5-24 指定On-Chip Memory 属性

鼠标移动到片内存储器的名称onchip_memonry2.0上并点击右键,在弹出菜单中选择Rename,然后更改名称为onchip_mem。

5.添加Nios II Processor

双击Altera SOPC Builder -> Nios II Processor,在弹出的对话框中间选择处理器NIOS II/s;硬件乘法器(Hardware Multiply)选择None,即不需要硬件乘法器;复位向量和异常向量存储器(Memory)均选择前面刚刚添加的片内存储器onchip_mem,此时二者的偏移量(Offset)自动设置为0x0和ox20。复位向量是指整个系统软件复位后启动的程序地址,一般为非易失存储器。异常向量是软件的起始地址,一般是易失存储器,如SDRAM等。如图5-24 所示。

选择

图5-25 添加CPU 设置参数

更改指令缓存(Instruction Cache)为2Kbyte,其他地方使用默认设置。最后点击Finish 完成处理器设置。

6. 添加定时器

在列表中选择Peripherals -> Microcontroller Peripherals -> Interval Timer,弹出如下

对话框。定时器在本系统中主要作用是产生一个固定间隔的中断信号,让CPU 改变LED 灯的状态。因此在Period 中选择500ms,表示灯的状态每500ms 改变一次。更

改预置(Presets)选项为Full-featured。如图5-25。更改定时器组件名为sys_clk_timer。

图5-26 添加定时器并设置参数

7.配置JTAG UART

如图所示,双击组件库中的JTAG UART,添加JTAG UART组件。

更改JTAG UART组件名为jtag_uart。

8. 添加IO 控制器

双击Peripherals -> Microcontroller Peripherals -> PIO (Parallel I/O),保持默认设置即可,表示有8 个输出用IO口,分别控制开发板上的8 个绿色LED 灯(LEDG[7..0])。

如图5-26。

图5-27 添加IO 控制器并设置参数

更改PIO组件名为led_pio。

9. 配置系统ID

如图所示,双击组件库中的System ID Peripheral,添加系统ID组件。

告信息。是的,在配置完成后,务必更改系统ID名称为sysid。

10. 完成SOPC 工程设计

如图5-28。

图5-28 完成的SOPC 工程

注意:系统的每个组件都需要一个地址才能正常工作。某些组件,如定时器(Interval Timer)还需要分配一个IRQ 号。如果发现各组件的地址或者IRQ 号出现冲突,可以选择菜单栏上System -> Auto-Assign Base Addresses 以及System -> Auto-Assign IRQs 自动设定地址和IRQ。系统IRQ 可以是从0 到31 的整数,数值越小优先级越高。

9. 生成系统

通过点击下方Generate 完成。如图5-29。

图5-29 生成系统

5.2.3用符号框图完成顶层实体

10. 使用符号框图完成顶层实体

新建一个符号文件,添加刚才建立的SOPC 系统。如图5-30。

图5-30 添加SOPC 系统

11. 添加输入与输出端口

在空白部分双击,在Name 框内输入input 可以快速定位,添加输入端口。一共需

要两个。然后使用同样步骤添加一个ouput 输出端口。结果应如图5-31 所示。

图5-31 添加结果图

将两个输入端分别改名为iCLK_50 及iKEY[0],代表开发板上的50MHz 晶振和KEY0 按钮。将输出端改名为oLEDG[7..0],代表开发板上的oLEDG7 到oLEDG0 共8 个绿色LED 灯。需要注意的是SOPC Builder 生成的系统的重启信号为低电平有效,开发板上的按键按下后代表低电平,弹起代表高电平。然后将这几个元件连接起来,硬件电路部分设计完毕。电路应如下图所示。(注意:此处的名称修改应该与DE2-115 引脚的配置相一致)。

图5-32 电路图

12. 保存bdf 文件,然后执行分析与综合

13. 分配引脚

相关文档
最新文档