基于 NIOSII 软核的流水灯实验

前言

本篇博客主要是学习 Quartus 、Platform Designer、Nios-II SBT 的基本操作;初步了解 SOPC 的开发流程,基本掌握 Nios-II 软核的定制方法;掌握 Nios-II 软件的开发流程,软件的基本调试方法。实现在DE2-115开发板上分别用Verilog和Nios软件编程两种方式完成LED流水灯显示。

一、实验设备

硬件:PC 机、DE2-115 FPGA 实验开发平台;
软件:Quartus Prime 18.1、Platform Designer、Nios II SBT

二、实验原理

控制 LED 灯闪烁的用户程序代码很小,可将其固化在片内 ROM 来执行。变量、堆栈等空间使用片内 RAM,不使用任何片外存储器。整个系统的框图如图 1 所示。从图 1.1 控制 LED 闪烁的系统框图可知,其它逻辑与 Nios II 系统一样可存在于 FPGA中。Nios II 系统可与其它片内逻辑相互作用,取决于整个系统的需要。为了简单起见,本实验在 FPGA 内不包括其它逻辑。
在这里插入图片描述

三、硬件设计

1.建立新项目

可参考前面的博客:FPGA

2.进行 Qsys 系统设计

在这里插入图片描述

新建kernel.qsys文件:
在这里插入图片描述
设置clk时钟:
在这里插入图片描述
添加 Nios II:
在这里插入图片描述
在这里插入图片描述

其余选项保持默认

添加 jtag uart 接口:
在这里插入图片描述
添加片上存储器 On-Chip Memory(RAM)核:
在这里插入图片描述
添加 PIO 接口:
在这里插入图片描述
添加 PIO 接口:
在这里插入图片描述
添加片 System ID Peripheral 核:
在这里插入图片描述
连线及中断:
在这里插入图片描述
分配基地址:
在这里插入图片描述
配置 Reset Vector 和 Exception Vector 为”onchip_ram.s1”
在这里插入图片描述
点击 Qsys 主界面菜单栏中的 ”System” 下的 ”Create Global Reset Network”。完成后会自动连接所有复位端口
在这里插入图片描述
生成 Qsys 系统:点选 ”Generation HDL” 标签栏中 Generate 按钮生成 Qsys 系统,保存文件
在这里插入图片描述
在这里插入图片描述

依次关闭即可。

四、逻辑连接

新建BDF文件,将设计好的系统符号引入
在这里插入图片描述
在这里插入图片描述
生成管脚:
在这里插入图片描述
添加 kernel.qip 文件:在这里插入图片描述
芯片引脚设置:
在这里插入图片描述
在这里插入图片描述
进行 unused pin 设置,可能会收到外部信号的干扰,将未用引脚设置为 As input tri-stated
在这里插入图片描述
设为常规引脚:
在这里插入图片描述
编译成功:
在这里插入图片描述

五、软件设计

在这里插入图片描述
选择工程目录:
在这里插入图片描述
创建工程:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
编译工程:
在这里插入图片描述

六、运行项目

1、配置 FPGA

1、连接 JTAG 到开发板,确定 A.已正确安装驱动。B. 防火墙不会影响到 JTAG
的正常工作。最后给开发板上电。
2、启动 Quartus Prime Programmer。
3、添加下载文件。然后点击 Start 开始下载,下载成过后关闭,回到 Eclipse 主机面。

2、运行/调式程序

1、用户将运行程序来观察编译代码的执行。用户可以在目标硬件上或 Nios II 指令集仿真器(ISS)上运行程序。本节实验只讲述在目标硬件上调试和运行程序。在 C/C++ Projects 视图中右击 hello_led_0 工程文件夹,然后在弹出的快捷菜单中选择 Run As→Nios II Hardware 运行程序,也可以在菜单栏中选择 Run →Run Configurations。
注意:在目标板上运行程序前,要确保 USB Blaster 下载电缆已经连接好,要保证已经使用硬件系统对 FPGA 完成配置,即完成第(1)步。
2、配置 Run Configurations,转到”Target Connection”标签栏,点击右侧的 Refresh Connections 将 USB-Blaster 加入。
3、Apply 后,Run。
运行结果如下:

VID_20230406_170854

七、总结

本次主要学到了以下内容:
1、懂得了Nios II 软核的搭建方法,掌握 了Nios II 软件的特性。
2、熟悉了解了Quartus Prime 、Platform Designer、Nios II SBT 的基本操作。
3、了解了流水灯的工作原理。

八、参考链接

基于Nios-II实现流水灯显示
基于 NIOSII 软核的流水灯实验

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值