sopc 实验指导EP2C35
更新时间:2023-05-23 22:05:01 阅读量: 实用文档 文档下载
- sopc推荐度:
- 相关推荐
sopc 实验指导EP2C35 Qsys
实验一 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下开发应用程序;
sopc 实验指导EP2C35 Qsys
(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所示。
sopc 实验指导EP2C35 Qsys
图3 JTAG UART调试接口的调用及配置(EP2C35)
(3)添加SDRAM
选择System Contents\Avalon Components\Memory\SDRAM Controller,参数设置如图4所示。
图4 SDRAM的调用及配置
sopc 实验指导EP2C35 Qsys
(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设置对话框
sopc 实验指导EP2C35 Qsys
(6)分配基地址及中断优先级
选择System/Auto-Assign Base Address菜单自动分配各组件的基地址;选择System/Auto-Assign IRQs菜单自动分配中断号。
图7 分配基地址及中断优先级 (7)生成系统模块
选择System Generation 选项卡,单击Generation 按钮,当生成结束时,将出现System Generation Completed信息,单击Exit按钮退出SOPC Builder。
3. 在Quartus II 中添加所建的Nios 系统以及PLL (1)添加锁相环
在Quartus II原理图编辑窗口空白处双击鼠标左键,弹出Symbol窗口,在Libraries中选择megafunctions\IO\altpll。
参数设置如下图8至图11所示。PLL输入输出时钟均为50MHz。由于时钟信号在PCB板上的传输延时明显,考虑到信号的同步性,必须设置时钟相移-70deg(重要)。
图8 锁相环参数设置
sopc 实验指导EP2C35 Qsys
图9锁相环参数设置
图10 锁相环参数设置
图11 锁相环参数设置
sopc 实验指导EP2C35 Qsys
(2)添加所建的Nios系统
在Quartus II 窗口,在原理图文件的空白区双击鼠标左键,在弹出的Symbol 对话框中,选择Libraries窗口下面Project文件夹中的myCPU,如图12所示。
图12 调入myCPU
(3)模块连接及管脚分配
图13 模块连接及管脚分配
管脚分配如图14所示。
sopc 实验指导EP2C35 Qsys
sopc 实验指导EP2C35 Qsys
图14.a 管脚分配(EP2C35)
(4)全编译、下载配置 4. 软件设计
(1)运行Nios II IDE,新建工程。
在File菜单下单击New/Nios II C/C++Application,出现如图15所示对话框。命工程名为hello_world_0,选择工程模板 Hello world Small,从Browse找到系统文件myCPU.ptf,单击Finish返回主界面。
图15 用户软件工程向导设置
(2)创建并编译源文件
Nios II 主界面左侧显示项目的名称,对每个项目,Nios II IDE都将生成一个
System Library,本例中项目名称为hello_world_0, System Library为hello_world_0_syslib。选中hello_world_0,单击鼠标右键,选择Build Project,进行编译;再选中hello_world_0_syslib,单击鼠标右键,选择Build Project;编译之后,在hello_world_0和hello_world_0_syslib栏下生成了一些文件。 (3)系统属性修改
在 Nios II 主界面选中hello_world_0,单击鼠标右键,选择Properties,出现如图16所示窗口。选中C/C++ Build,Configuration 设置为Release,再在Configuration Setting/Tool Setting 栏选中General,Optimization Levels/Optimize size(-0s)。
sopc 实验指导EP2C35 Qsys
图16 修改系统属性
重新选中项目名,单击右键,选择System Library Properties,出现如图17所示窗口,设置如下图。
图17 修改系统库的属性
(4)运行,即软件、硬件协同工作
连接FPGA实验箱,在Quartus II 中通过USB下载电缆将***.sof 文件通过JTAG接口下载到FPGA中。
下载成功后,回到Nios II IDE 窗口,点击Run/run,弹出如下所示窗口。
sopc 实验指导EP2C35 Qsys
图19 下载用户软件程序
注意:初次打开图19所示窗口,若JTAG cable、JTAG device栏为空时,点击右侧Refresh按钮。
sopc 实验指导EP2C35 Qsys
设置后之后点击窗口下方的run按钮,运行结果如下图所示。
图20运行结果 实验结束。
sopc 实验指导EP2C35 Qsys
基于Qsys工具设计流程
1.在Quartus II 中新建工程,选择器件cyclone II EP2C35F672C8或cyclone IV EP4CE6E22C8N,将不用的引脚设置为三态,如图1所示。新建原理图文件。
图21 设置不用的引脚为三态 2.添加锁相环 步骤同上
3.创建自己的CPU系统
进入Qsys设计界面。打开Qsys工具命令如图22所示。进入Qsys设计界面,如图23所示。
图22 打开Qsys工具命令
sopc 实验指导EP2C35 Qsys
图23 Qsys的设计界面
(1)添加Nios II Processor
选择合适的CPU处理器(依据器件资源而定),出现错误先忽视。
sopc 实验指导EP2C35 Qsys
图24 选择Nios II处理器
(2)添加on-chip memory
图25 .a 选择片内存储器(EP2C35)
sopc 实验指导EP2C35 Qsys
图25 .b 选择片内存储器(EP4CE6)
(3)添加SDRAM
SDRAM控制器参数选择,(必须依据datasheet),否则c代码可以下载但不可运行。在此ROW:13 Column:9
sopc 实验指导EP2C35 Qsys
图26.a SDRAM参数设置
(EP2C35)
图26.b SDRAM参数设置(EP4CE6)
sopc 实验指导EP2C35 Qsys
(4)添加
PIO
图27 PIO参数设置
(5)添加JTAG UART 默认参数设置。
图 28 JTAG UART参数设置
(6)添加system ID
SYS_ID是CPU的标记,如果不添加也行,为防止后续软件下载时对应不了底层硬件,elipse会自动识别sys_id而避免错误。
sopc 实验指导EP2C35 Qsys
图 29 选择system ID
(7)进行时钟、数据端口,指令端口的连接。
根据需要在总线界面重新排列IP核和修改IP核名称,单击IP核的结合点,变为实心黑点表征电气上连接,如图30所示。
sopc 实验指导EP2C35 Qsys
图30 总线结构
(8)设置复位向量和异常向量
选择双击CPU,配置程序存储器类型和地址,如下所示窗口,设置复位向量和异常向量均指向onchip_mem.s1。
sopc 实验指导EP2C35 Qsys
图31 配置NIOS II核的存储器
(9)分配IP核的基地址,选择菜单选项System /Assign Base Addresses,自动排列NIOS处理器系统各个部分的地址;分配中断优先级,在IRQ栏下选择Avalon Memory Slave和IRQ的连接点,就会添加一个值为0的中断号;双击Export栏需要引出的端口将其引出,如图32所示。
图32 中断优先级设置
(10)确认无错误和警告,点击generate生成系统文件,并为CPU命名、保存,记住保存路径,至出现如下窗口,表明系统生成结束。
正在阅读:
sopc 实验指导EP2C3505-23
2015年八年级地理下册知识点总结(1)12-16
婚礼父母贺词12-13
ONU配置12-31
辨析并修改病句教案08-06
大学生团日活动总结05-15
新员工工作心得体会(优秀3篇)03-22
中国拟两年内投资4万亿人民币扩大内需03-02
- 教学能力大赛决赛获奖-教学实施报告-(完整图文版)
- 互联网+数据中心行业分析报告
- 2017上海杨浦区高三一模数学试题及答案
- 招商部差旅接待管理制度(4-25)
- 学生游玩安全注意事项
- 学生信息管理系统(文档模板供参考)
- 叉车门架有限元分析及系统设计
- 2014帮助残疾人志愿者服务情况记录
- 叶绿体中色素的提取和分离实验
- 中国食物成分表2020年最新权威完整改进版
- 推动国土资源领域生态文明建设
- 给水管道冲洗和消毒记录
- 计算机软件专业自我评价
- 高中数学必修1-5知识点归纳
- 2018-2022年中国第五代移动通信技术(5G)产业深度分析及发展前景研究报告发展趋势(目录)
- 生产车间巡查制度
- 2018版中国光热发电行业深度研究报告目录
- (通用)2019年中考数学总复习 第一章 第四节 数的开方与二次根式课件
- 2017_2018学年高中语文第二单元第4课说数课件粤教版
- 上市新药Lumateperone(卢美哌隆)合成检索总结报告
- 指导
- 实验
- EP2C35
- sopc
- 材料作文“有用”和“无用”范文3
- 新教师岗前培训心得
- 阳光课堂答案八年级
- 小学六年级数学培优专题训练
- 0307 第二次课 单纯形法
- 怎样感受学生的感受
- 消防安全培训教材(2011-8-11)
- 5 卫生部原发性肝癌诊疗规范之消融治疗
- 2021小学二年级教学工作计划范文
- PDCA循环管理法抓住质量管理的规律
- 中国生产性服务业集聚区的创新系统与重点模式研究
- 功能文体学理论在中文语篇中的运用——白岩松耶鲁大学演讲的文体学解读
- 公路工程试验检测人员业务考试大纲
- 工程项目管理承包责任合同书20100528版
- 学生公寓管理制度
- 江苏省无锡市惠山区八校2020-2021学年九年级12月月考物理试题
- 上海租车资格手续
- 童装市场调查报告
- 人教版 高中选修六第三单元语法——it的用法(1)
- 区域代理销售合同1