当前课程知识点:现代电子系统设计 > 第九章 SOPC系统设计 > 9.4 SOPC设计方法简介 > 9.4 SOPC设计方法简介
下面讲第九章第四节
SOPC设计方法简介
首先 我们来看一下它的设计工具
在第八章中 我们知道
在开发FPGA的时候呢
我们会要用到软件和硬件
那么在这儿 在设计SOPC的时候
同样也要用到这些硬件和软件
包括一台计算机
和一个FPGA的实验板或者开发板
那么在计算机上面呢
要装入集成的开发环境
这个集成的开发环境就是QuartusII
我们会用到QuartusII的Qsys功能
来设计SOPC它的硬件
然后利用它的Eclipse功能
来设计Nios II里头的软件
那我们通过这个Qsys设计了SOPC硬件以后
再把它下载到FPGA板子上面的
这个FPGA芯片里头
就组成了SOPC的硬件系统
之后 再通过Eclipse软件
再设计Nios II的软件程序
然后再把它下载到这个FPGA里头的
Nios II处理器中
就完成了整个SOPC的设计
那接下来再看一下详细的设计流程
我们在设计一个SOPC的时候呢
那么第一步会要分析系统的需求
也就是要看系统要完成什么样的功能
要完成哪些功能
第二步 就是要对这些功能
进行软件和硬件功能的划分
那就是说哪些功能是由硬件来实现
而哪些功能由软件来实现
接下来就可以设计SOPC的硬件了
我们刚才说了 是通过Qsys来设计的
那设计的时候
第一步就要产生一个基于Nios II的系统
那这时候我们要向这个系统中
添加Nios II处理器以及其它的一些元件
这些元件包括 比如说JTAG UART
时钟 系统ID 然后Timer 还有PIO
或者是SDRAM的控制器
以及其它的一些设备等等
根据需要进行添加
添加完成以后 再连接这些系统
最后组成一个SOPC的硬件系统
之后呢 我们就可以产生一个SOPC系统
那这时候呢 产生的这个SOPC系统
是用一个Verilog的一个模块
也就是一个文件来存储的
我们比如说
称它为nios_system.v这个文件
那接下来还要将这个SOPC进行实例化
这是在QuartusII中完成的
那这时候呢 我们首先要定义一个
Verilog的一个顶层的模块
然后再在这个顶层模块里头
对刚才的那个SOPC系统进行实例化
也就是要将刚才的那个nios_system.v
这个模块进行实例化
另外呢
还要添加一些其它的设备或者功能
比如说锁相环 复位 以及IO的引脚的分配
锁相环呢
是用来对时钟进行分频的一种设备
它除了可以对时钟进行分频呢
同时 输出的时钟还可以产生相位的偏差
根据需要来进行设计
最后 我们编译整个的Quartus的工程
最后将编译好的目标文件
再下载到FPGA中
就形成了SOPC的硬件系统
接下来 就进行Nios II的软件的开发
那这时候用的工具是Eclipse工具
然后是用C语言来开发的
那于是呢
就是在Eclipse产生的这个工程中
可以进行程序的编辑
然后最后编译这个工程
再把编译的软件工程的目标文件
下载到Nios II处理器中
就完成了整个这个SOPC的设计
那下面我们简单地介绍一下Qsys工具
Qsys呢 它是集成在QuartusII中
那我们在QuartusII的界面中
点击右上方的这个图标
就可以打开Qsys的工具的界面
这是它的这个界面
在这个界面的左上方 有一个IP Catalog
列举了它的很多的元件
例如我们如果要找一个元件
就可以在这个框中输入它的名字
有的时候我们要找这个Nios II微处理器
我们就输入一个Nios
然后在底下呢
它就会显示出来Nios II微处理器
然后双击它以后 弹出这个界面
我们就可以选择Nios II微处理器的类型
选择以后再进行一些参数的设置
就可以完成元件的添加
其它的元件 添加方式也类似
添加完元件以后呢
再连接它们组成一个SOPC系统
然后再产生SOPC对应的文件
然后接下来我们再看一下实例化
简单介绍一下
那这个实例化是在QuartusII中完成的
这时候首先在QuartusII的这个界面
点击Project菜单
然后在下拉菜单中呢
我们再选择添加文件
也就是要把刚才生成的那个SOPC的
系统的文件
也就是刚才的那个nios_system.v的文件
添加进来 然后就可以实例化了
最后就是软件设计
我们是用Eclipse工具来完成的
这个工具也集成到这个QuartusII中了
这时候 可以点击QuartusII的
菜单中的tools
然后再选择这个Eclipse软件
然后这是Eclipse软件的界面
这时候我们要进行软件设计的时候呢
我们要建立一个新的工程
点击左上角File 然后再选择New
然后选择建立一个Nios II的应用程序
然后这个应用程序
是可以从模板来创建的
这样可以简化这个设计的过程
这是弹出的对话框
在弹出的对话框中呢
要在两个白框中填入信息
第一个就是在上面这个框中呢
我们要选择SOPC硬件信息的文件
这个信息的文件呢
它的后缀是.sopcinfo
选择完成以后 接下来在第二个框中
我们就可以输入新的软件工程的名字
最后 我们要通过选择一个模板
来进行工程的文件的编辑
选择的这个模板呢
通常可以就用这个简单的
Hello World模板
感谢您的观看
-课程简介
-1.1 电子系统简介
-1.2 现代电子系统举例
-1.3 现代电子系统的组成
-1.4 现代电子系统设计方法
-第一章 作业
-2.1 传感器定义
-2.2 传感器的分类和性能指标
-2.3 常用传感器介绍
-2.4 常用执行器介绍
-第二章 作业
-3.1 模拟信号处理简介
-3.2 信号放大和隔离电路
-3.3 滤波电路
--3.3 滤波电路
-3.4 运算电路(一)
-3.5 运算电路(二)
-3.6 电压比较器
-3.7 功率放大电路
-3.8 模-数转换器
-3.9 数-模转换器
-第三章 作业
-4.1 直流电源简介
-4.2 线性稳压电源
-4.3 开关稳压电源
-第四章 作业
-5.1 微处理器简介
-5.2 微处理器和片上系统的发展历程
-5.3 微处理器分类
-5.4 微处理器和片上系统举例
-5.5 微处理器和片上系统硬件结构
-5.6 外围接口和设备
-5.7 嵌入式软件开发方法
-5.8 嵌入式操作系统
-5.9 外围设备应用程序开发简介
-第五章 作业
-6.1 TM4C123 简介
-6.2 TM4C123 实验板
-6.3 TM4C123 软件开发
-6.4 TM4C123 实验举例
-第六章 作业
-7.1 PSoC简介
-7.2 PSoC实验板
-7.3 PSoC软件开发
-7.4 PSoC实验举例
-第七章 作业
-8.1 FPGA简介
-8.2 FPGA的发展趋势
-8.3 FPGA的特点
-8.4 FPGA的结构
-8.5 FPGA结构举例
-8.6 FPGA设计工具和方法
-8.7 QuartusⅡ集成开发环境
-8.8 DE2-115实验平台简介
-8.9 Verilog硬件设计语言
-- 8.9.8 设计仿真
-8.10 数字电路设计与仿真举例
-第八章 作业
-9.1 SOPC简介
-9.2 Nios II 微处理器简介
-9.3 Avalone总线简介
-9.4 SOPC设计方法简介
-9.5 SOPC设计举例
-- 9.5.1 设计内容
-9.6 Nios II 软件设计
-第九章 作业
-10.1 实验内容与要求
-10.2 实验设备与器材
-10.3 注意事项与调试方法
-10.4 实验结果展示
-第十章 作业
-期末考试
--期末考试