860 likes | 1.14k Views
Nios II and SOPC Builder 培训 实验部分. 一步一步搭建一个 NIOS2 平台 (40 分钟 ) 在 NIOS2 IDE 中建立一个 hellow word 的程序模板 , 初步了解 nios2 ide 的一些配制功能 . (15 分钟 ) 运行一个 hellow word 程序 (10 分钟 ) 进行一次 PIO 操作 , 点量 LED, 使能按键 (10 分钟 ) 使用 NIOS2 平台中的一个计数器做为中断源 , 设计一个秒灯 (15 分钟 ) 加入一个用户自定义的设备模块 , 并用 Sigtap 进行波型观测 (20 分钟 )
E N D
Nios II and SOPC Builder 培训 实验部分
一步一步搭建一个NIOS2平台 (40分钟) • 在NIOS2 IDE中建立一个hellow word 的程序模板,初步了解nios2 ide 的一些配制功能. (15分钟) • 运行一个hellow word 程序 (10分钟) • 进行一次PIO操作,点量LED,使能按键(10分钟) • 使用NIOS2平台中的一个计数器做为中断源,设计一个秒灯(15分钟) • 加入一个用户自定义的设备模块,并用Sigtap进行波型观测(20分钟) • 加入一个用户指令(10分钟) • 使用 flash programmer 功能烧写一次epcs flash,完成一次程序boot过程(10 分钟) • 一些设计方法演示
第一节 快速搭建一个基本的NIOS2平台
Step1 :打开quartus2,建立一个新的工程.增加一个图形顶层 Step2:在quartus中打开SOPC Step3 :在sopc中开始组装nios2 MCU
Step5 增加一个定制nios2 内核 选择nios2/s型 注意下方的reset地址,这就是mcu boot时的启动点
注意这里每一级的调试功能,更多高级调试能力请仔细阅读手册注意这里每一级的调试功能,更多高级调试能力请仔细阅读手册
Step 6加入一个用户指令模块 增加一条默认配制的32位字翻转用户指令BITSWAP
Step7 增加一个jtag_uart 保持原有设置不变 这个外设的功能用于DEBUG用,所以是必须的
Step9 添入一个15K在片memory 这将是整个实验的程序运行空间
注意箭头所指位置,作为程序运行区,必须是程序指令和数据指令都能访问到的,所以2个接点都要确定点上注意箭头所指位置,作为程序运行区,必须是程序指令和数据指令都能访问到的,所以2个接点都要确定点上
Step10 增加一个4输入的IO端口 Input options 一项在这次实验中可以不用设置
Step10 增加一个4输出IO端口 output options 一项在这次实验中可以不用设置
Step11 修改器件名 将pio 改名为pio_led Pio_1改名为pio_button
Step12 增加2个计数器 一个设置为每个周期1ms(试验中将作为中断源),一个为1us(将作为程序执行时间计数器)
Step13 增加一个system ID system ID将给你的nios2平台一个唯一的ID号,用于软件检测
Step14 增加一个EPCS 控制器 试验中的加载程序和运行程序都将通过这个控制器烧写如EPCS flash
step15增加一个PLL 增加2个倍频输出, C0 100M C1 200M
Step16添加一个新的器件 从拷贝到自己计算机中的文件中指定REG_mode.vhd
配制接口 请注意箭头所指向的地方,这是这个试验的重点所在
添加器件描述 注意箭头所指,你将在这里调用你的器件
添加器件描述 添加自定义器件
Step17 添加一条用户指令 加入拷贝的用户指令文件 Custom_add.vhd
添加这条指令到CPU中 点击已经生成的CPU核,点击新窗口这里 提醒:7.2这个版本下加入一个用户指令SOPC会报告一个错误,不用管,关掉SOPC再开一次就好了 点击这里生成用户指令 这里将是软件中调用指令的名称,可以自己修改,但要注意软件调用时的正确调用
再添加字节高低位翻转这条指令到CPU中 点击已经生成的CPU核,点击新窗口这里 提醒:7.2这个版本下加入一个用户指令SOPC会报告一个错误,不用管,关掉SOPC再开一次就好了 点击这里生成用户指令 这里将是软件中调用指令的名称,可以自己修改,但要注意软件调用时的正确调用
添加完所有的器件后, 请注意整个SOPC参数 的设置
请注意这里的总线连接,除了mem,ECPS控制器外,别的都没必要连接上指令总线请注意这里的总线连接,除了mem,ECPS控制器外,别的都没必要连接上指令总线 按图中所注修改pll 2个输出的名字 修改所有器件所使用的始终为pll_sys_clk,除pll自身外
Step19 右键鼠标,自动分配地址和中断 左键鼠标点击
将所有地址范围都修改到0x00800000上 ,然后锁定所有地址将所有地址范围都修改到0x00800000上 ,然后锁定所有地址
Step18 修改nios重启时的指向地址 指定这里,每次NIOS2重启时将从这里执行程序
Step21 将分配好的管叫脚按图所示连接上nios2模块
Step22 综合布线生成 点击这里,开始
Step22 将生成配置文件烧入FPGA 点这 点这 点这
一个nios2系统已经搭建完成, 下一步,我们将开始软件工作
第二节 在NIOS2 IDE中建立一个hellow word 的程序模板,初步了解nios2 ide 的一些配制功能
Step2 指定软件项目存放路径 指定到您的试验目录下\software 打开项目路径制定器
Step4 选择软件模版 指定sopc建立的nios2所在 选折hellow_word 项目名称 指定这个.ptf文件 最后选择finish 生成软件模板