FPGA学习之嵌入式硬件系统(SOPC)概述(软硬件设计)

FPGA学习之嵌入式硬件系统(SOPC)概述(软硬件设计)

首先我们知道FPGA可以实现充当完整微处理器的逻辑,并且提供许多灵活性选项。下图体现出FPGA器件为何是现场可编辑门阵列器件。
在这里插入图片描述

为了使基于FPGA的嵌入式系统能够充当微处理器的系统,那么我们就必须要学习NIOS II (SOPC)系统设计,而且在设计之时系统应包括以下内容,这是因为微处理器和FPGA之间的区别就是FPGA上电时不包含任何逻辑(基于SDRAM工艺所致),我们需要系统运行之前来配置FPGA处理器。

(1)JTAG接口支持FPGA配置以及硬件和软件调试

(2)上电FPGA配置机制

那什么是FPGA嵌入式系统呢?

简单的说,就是在FPGA器件内部放置了一个或多个CPU。
在这里插入图片描述
FPGA本身是硬件处理,放置在FPGA内部的CPU就需要软件处理,这样建立的系统就可以协调软硬件之间的联系。

而且这样的系统是可以裁剪的。
在这里插入图片描述

那么SOPC和SOC区别是什么呢?P代表了什么?

在这里插入图片描述

一字之差竟是两种不同的模式,而这个可编程性“P”的灵活性有以下两方面:

(1)CPU本身可修改

  • CPU规模:三种模式,经济型,标准型和快速型。
  • 频率:默认50MHz,可提高或降低
  • MMU------Yes/No
  • Cache-------iCache指令缓存,dCache数据缓存
  • 指令。复杂的数据处理用一条指令完成,起到加速作用

(2)自定义总线的外设

但是在今天的发展中ARM系列编程好像更加吃香,在实际工业应用中NIOS II系统似乎要被淘汰了

下图是NIOS II系统通用设计流程

在这里插入图片描述
由上图流程展示可知在平台中定义和生成系统包含两个方面:一个是硬件设计流程和软件设计流程。而且两个流程所需要的资源是完全不同的,硬件设计需要NIOS II核和标准组件来实现的,软件设计就需要单间用户指令和周边设备系统软件。

在这里插入图片描述

下图是NIOS II 系统硬件设计流程

在这里插入图片描述
由上图可知在平台设计NIOS II系统硬件时,需要使用NIOS II核和标准组件,可以看出即SOPC系统设计中标准组件即IP核必不可少,而且quartus软件自带基础常用的一些ip核,目录结构如下图,可以看出在组件库里包含如PIO,Bridges等ip核,也有用户自定义的user分组的ip核。具体ip核如何使用及如何自定义ip核将在后期学习记录。

在这里插入图片描述

在上述硬件设计流程中还看出我们需要对系统进行时钟约束,而且这一步是必不可少的,因此在对NIOS II系统设计时我们会开始进入时钟约束这一单元学习,因为在之前的Verilog语法实现的简单系统,时钟约束可有可无,显得不怎么重要,但是在NIOS II硬件系统中时钟约束是系统成败的关键所在,关系整个NIOS II系统能否正常运行。

由于NIOS II系统软件开发流程涉及到C或C++编程语言,个人对此不太熟练,因此在后期开发过程中,只会涉及到对NIOS II系统软件的介绍,比如如何调用接口,Avalon总线上的静态和动态地址该如何寻找?不会介绍如何进行软件具体设计。

  • 1
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
第1章 概述 3 1.1 SOC与SOPC技术简介 3 1.1.1 SOC单片系统 3 1.1.2 SOPC及其技术 3 1.2 嵌入式系统简介 3 1.2.1 嵌入式系统的概念与组成 3 1.2.2 嵌入式系统的特点与应用 3 1.2.3 嵌入式系统的发展趋势 3 第2章 FPGA设计基础 4 2.1 Quartus II综述 4 2.1.1 软件特点 4 2.1.2 用户界面 4 2.2 Quartus II设计流程 7 2.3 流水灯的FPGA设计 8 2.4 使用嵌入式逻辑分析仪进行实时测试 16 2.5 FPGA内部存储器设计 20 2.6 嵌入式锁相环altPLL宏功能模块调用 24 第3章 优化设置与时序分析 27 3.1 Setting设置 27 3.2 时序设置与分析 27 3.3 分析结果查看 27 第4章 第三方EDA工具 28 4.1 概述 28 4.2 仿真工具ModelSim的使用 28 4.3 ModelSim和Quartus Ⅱ联合使用 40 第5章 基于FPGA的DSP开发技术 41 5.1Matlab/DSP builder及其设计流程 41 5.2DSP Builder的安装与注册 42 5.3基于MATLAB/Simulink模块的FIR滤波器设计与仿真 42 5.3基于IP核的FIR滤波器设计与仿真 54 第6章 SOPC设计基础 58 6.1 Nios II处理器结构 58 6.2 Avalon总线规范 69 6.3 Nios II硬件开发 105 6.4 Nios II软件开发 123 6.5 HAL系统库 142 第7章 Nios II外设及其编程 143 7.1 PIO 144 7.2 UART 149 7.3 定时器 155 7.4 片内存储器 159 7.5 SDRAM控制器 159 7.6 Flash 163 7.7 DMA控制器 163 7.8 SPI 168 7.9 简单NIOS II系统建立 173 第8章 Nios II深入设计 174 8.1 定制Nios II用户指令 174 8.2 自定义Avalon从组件 183 8.3 Nios II多处理器系统 183 8.4 中断处理 183

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值