sopc 实验指导EP2C35
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一Hello from Nios II
一.实验目的
1. 熟悉用Quartus II开发SOPC的基本流程。
2. 熟悉用SOPC Builder进行NiOS II CPU开发的基本流程。
3. 熟悉用NIOS II IDE进行C语言编译、下载的基本过程。
4. 掌握NIOS II 集成开发环境。
二.实验内容
实验完成的是一个简单的系统设计,系统中包括NIOS CPU 、作为标准输入/输出的JTAG UART、存储器on chip memory和SDRAM、并行输入输出PIO。通过SOPC 实现NIOS 系统配置、生成以及与NIOS II 系统相关的监控和软件调试平台的生成;在NIOS II IDE中完成系统软件开发和调试;通过Quartus II 完成NIOS 系统的分析综合、硬件优化、适配、配置文件编程下载以及硬件系统调试等。实验最终实现在NIOS II IDE 窗口打印一条信息——―Hello from Nios II ‖。
三.实验平台
硬件平台:SOPC 实验开发系统
软件平台:Quartus II 7.0 NIOS II IDE
四.实验原理
Altera 公司提供的Nios II 嵌入式微处理器软核专为SOPC系统设计核优化,是一种面向用户、可以灵活定制的通用RISC嵌入式处理器。它采用Avalon总线结构通信接口,带有增强的内存、调试和软件功能,可采用汇编或C、C++等进行程序优化开发。Nios II具有32位指令集、32位数据通道和可配置的指令及数据缓冲。与普通嵌入式CPU系统的特性不同,其外设可以灵活选择或增减,可以自定制用户逻辑为外设,可以允许用户定制自己的指令集。由硬件模块构成的自定制指令可通过硬件算法操作来完成复杂的软件处理任务,也能访问存储器或Nios II 系统外的接口逻辑。设计者可以使用Nios II及外部的Flash、ROM、SRAM等,在FPGA上构成一个嵌入式处理器系统。
基于NiOS II处理器软核的SOPC系统设计是一个软硬件协同开发的过程,在设计时可分为硬件核软件两部分,需要多款EDA软件和软件开发环境的相互协同配合。
SOPC的开发流程包括两个方面:基于Quartus II 和SOPC Builder的硬件开发和基于Nios II IDE 的软件开发。基本设计流程如下:
(1)分析系统需求,设计规划系统哪些由硬件实现,哪些由软件实现;
(2)启动Quartus II 并创建一个新的工程,建立系统的顶层模块文件;
(3)启动SOPC Builder,添加需要的功能模块,定义和生成系统模块。这是整个开发流程中最核心的一步。在定义系统时,SOPC Builder可以根据用户
的编辑实时的生成sopc文件和ptf文件(7.1版本之前为ptf文件),类似
一个数据库文件,存储了系统设计信息;
(4)将SOPC Builder生成的Nios II系统元件导入Quartus II,根据需要添加其他逻辑模块。按照Quartus II的开发流程最终生成FPGA的编程文件,完成
Nios II系统的硬件开发;
(5)启动Nios II IDE集成开发环境,创建一个软件工程项目,并指向生成的Nios II硬件系统。
(6)在Nios II IDE下开发应用程序;
(7)将硬件配置文件下载到硬件目标板上的FPGA,将软件可执行文件下载到目标板的RAM,调试软件,达到设计要求;
(8)利用Nios II IDE 的Flash编程器工具烧写配置文件和软件代码。
五.实验步骤
基于SOPC Builder工具设计流程
1.打开Quartus II 7.0 ,在Quartus 中新建一个工程,新建一个原理图工程文件。
这一步请参考《FPGA与VHDL应用设计实验指导书》,这里不再说明。另外,注意:工程路存放地址为E盘或学生盘;工程和实体名一致;命名由字母、数字、下划线组成,不能包括空格和汉字。FPGA器件选Cyclone II EP2C35F672C8或Cyclone IV EP4CE6E22C8,使用SOPC Builder创建Nios系统。注:实验流程设置是以Cyclone II EP2C35F672C8为目标器件的。
(1)添加NIOS II系统
在SOPC Builder窗口,System Contents栏下,Avalon Components中选择Nios II Processor.
设置如下图1、图2所示。
图1 NIOS II处理器核的调用和配置
图2 NIOS II处理器核的调用和配置
(2)添加作为标准输入/输出的JTAG UART
在System Contents\Avalon Components\Communication 中选择JTAG UART。
参数设置如下图3所示。
图3 JTAG UART调试接口的调用及配置(EP2C35)
(3)添加SDRAM
选择System Contents\Avalon Components\Memory\SDRAM Controller,参数设置如图4所示。
图4 SDRAM的调用及配置
(4)添加on-chip memory
选择System Contents\Avalon Components\Memory \On-Chip Memory(RAM or ROM) ,参数设置如图5所示。
图5 on-chip memory 的调用及配置
(5)添加LED-PIO
选择System Contents\Avalon Components\other\PIO(Parallel I\O),参数设置如图6所示。
图6 PIO设置对话框