通过设计一个由18个发光二级管组成的流水灯控制电路来完整地描述Nios II软核处理器系统的开发过程。
开发环境:Quartus II 9.0、Nios II 9.0 IDE。
说明:详细内容参考赫建国 倪德克 郑燕编著《基于Nios II内核的FPGA电路系统设计》电子工业出版社。
1 配置NIOS II软核处理器系统
1.1 创建Nios II软核处理器系统
首先新建一个文件夹,该文件夹用来保存整个设计过程生成的文件。接着由Quartus II开发软件创建一个工程(本次试验选用目标FPGA芯片Cyclone II系列的EP2C35F672C6),并建立一个原理图输入文件。在Quartus II窗口中,由菜单“Tools→SOPC Builder”可以打开Nios II软核处理器系统开发工具,系统出现下图所示的SOPC Builder启动画面。
在创建Nios II软核处理器系统对话框“create new system”中的文本框“System Name”中输入将要创建的NiosII软核处理器系统的名称led18_cpu。注意:Nios II软核处理系统的名称不要与Quartus II的工程名称相同。完成后单击“OK”按钮关闭该对话框,同时系统将自动出现如下图所示的Nios II软核处理器系统配置窗口。
Nios II软核处理器系统配置窗口右侧为目标器件“Target”的系列名称“Device Family”,这个系列名称建议由创建Quartus II工程时选择的具体目标器件来决定。“Target”的右侧用来设置Nios II软核处理器的系统时钟“Clock Setting”。设置的时钟频率必须与处理器在工作时实际使用的时钟频率一致,若没有,则单击“Add”添加系统时钟,还可以设置多个。
1.2 配置Nios II软核处理器系统
1配置Nios II软核处理器
在如上图所示的Nios II软核处理器系统配置窗口的“System Contents”选项卡中,选择“Nios II Processor”,单击选项卡中的“Add”按钮将出现如下图所示的Nios II软核处理器“Nios II Processor”配置窗口。Nios II软核处理器具有3种类型:经济型内核“Nios II/e”、标准型内核“Nios II/s”和快速型内核“Nios II/f”。不同类型的处理器内核具有不同的功能和技术指标,当然在获得强功能和高技术指标的同时也需要付出较多的逻辑资源,同时使用过程也变得复杂。鉴于这里控制18个发光二级管的任务比较简单,系统工作速度也不需要很高,因此选择经济型内核“Nios II/e”。在选择经济型内核“Nios II/e”的情况下,不能向处理器添加硬件乘法器和硬件除法器,因此这些设备对应的选项无效。复位矢量“Reset Vector”和异常矢量“Exception Vector”指向的储存器及地址需要在完成处理器配置之后才能设置。

配置一个最简单的Nios II软核处理器系统还需要设置“JTAG Debug Module”选项卡中的内容,如下图所示。在选择经济型内核“Nios II/e”的情况下,处理器只支持“Level 1”级的JTAG调试模块。必须选择这个最基本的调试模块,本实验将利用该模块支持对FPGA芯片的配置。
完成Nios II软核处理器“Nios II processor”配置窗口的“Core Nios II”选项卡和“JTAG Debug Module”选项卡的配置后,单击“F