《探索Zynq MPSoC》学习笔记(二)

**引言:**本文开始学习第二章内容,本文重点介绍FPGA、Zynq和Zynq MPSoC器件技术演进以及Zynq和Zynq MPSoC器件的基本结构和特点。

第二章 FPGA、Zynq和Zynq MPSoC (1)

Zynq MPSoC是Xilinx发布的第一款SoC Zynq-7000片上系统(SoC)的演进。这两个器件都包括处理系统(PS)和可编程逻辑(PL),PL等效于现场可编程门阵列(FPGA)。如图1所示,它在高层次上比较了三种类型器件,Zynq MPSoC中的PS比Zynq中的PS更大、更复杂。

在本章中,将回顾这三种设备类型的特点,并强调它们之间的异同。我们还提出了一些潜在演进的原因。

图1:FPGA、Zynq和Zynq MPSoC的高层次比较

1. 技术演进时间表

Zynq、Zynq MPSoC和FPGA都是当前的技术,并且相互补充。"最佳"选择取决于正在创建的设计的特性。所有三种器件类别都有自己独特的功能平衡,这使得它们中的每一种都特别适合一系列不同的任务和应用程序。

图2:FPGA、Zynq和Zynq MPSoC演进时间表

这本书的许多读者可能都熟悉Zynq,所以我们从那里开始复习,可以将其与较新的Zynq MPSoC器件进行比较。FPGA是两个SoC的PL部分的基础,将在本章后面介绍。

2. Zynq-7000 SoC

Zynq-7000 SoC是Xilinx发布的第一款SoC设备,将基于FPGA的PL与基于Arm的PS相结合。在本节中,我们将简要介绍Zynq的架构和功能,读者可以参考我们上一本书中的详细内容[1]。

2.1 Zynq的结构和特点

为了提供架构的高层次概述,Zynq架构有两个部分:PS和PL,它们之间有一组互连,如图3所示。这些互连基于先进可扩展接口(AXI)标准,这是Arm开发的片上通信标准。

图3:Zynq SoC设备的高级框图(来自"Zynq Book"[3])

将PS处理系统组件与PL耦合是运行嵌入式系统软件的基础要求,特别是操作系统和软件应用程序,需提供专用的优化资源,同时保留FPGA逻辑的所有优点(特别是其强大的并行性和可重配置性)。AXI接口形成了两个部分之间的连接。AXI是针对SoC应用程序进行优化的标准。

图3中PS和PL的相对尺寸未按比例绘制,事实上,Zynq系列中有几个器件,每个器件都具有相同的PS架构和不同大小的PL。

稍后将更详细介绍Zynq架构和Zynq MPSoC器件之间PS和PL架构的差异。

2.1.1 Zynq处理系统 (PS)

Zynq PS部分,如图3中的蓝色部分所示,包括一个应用级处理器和其他组件。这些概述如下(有关详细信息,请参见[3])。

++•应用处理器单元(APU):++该单元包括双核Arm Cortex-A9处理器以及256KB的片上高速缓存。

++•互连和存储器接口:++它们分别实现PS和PL之间以及与外部存储器之间的通信。

++•I/O外设组:++集成外设接口,涵盖通用标准,如USB、UART、SPI、I2C等。

Zynq中的PS有两个处理核,设计者可以选择将两个核心用于同一操作系统,或者在每个操作系统上使用不同的操作系统。稍后,我们将Zynq PS与Zynq MPSoC架构的PS进行比较,并注意到新器件中功能的扩展,特别是,Zynq MPSoC最多有六个处理核心!

2.1.2 Zynq可编程逻辑(PL)

Zynq的PL部分基于Artix-7 FPGA结构(适用于该系列中较小的器件)或Kintex-7 FPGA架构(适用于较大的器件)。这两个变体代表Xilinx 7系列FPGA的成员,其中还包括更高性能的Virtex-7。

与等效的FPGA一样,Zynq PL包括DSP48 Slice切片(用于高速算术的资源)、块RAM、高速收发器、集成通信块以及通用逻辑。在本章的后面,第2.4.3节提供了现代FPGA关于这些资源的更多信息。

2.1.3 PS和PL之间的接口

Zynq的两个区域之间有九个接口。其中四个互连被指定为"通用"接口,四个互连为"高性能"接口,其余互连为"加速器一致性端口"(ACP),它提供了应用程序处理单元(APU,位于PS内)和PL之间的直接路由。

2.2 Zynq器件

为了对Zynq-7000系列中的器件进行简要比较,请考虑表1,该表汇总了每个芯片的关键特性和参数(请注意,单核Zynq-700S系列不包括在表中)。

表1:Zynq-7000 SoC系列家族器件的比较

a.支持的最大处理器时钟频率取决于器件速度等级。

所有Zynq-7000芯片的PS都是相同的,唯一的区别是支持的最大时钟频率。PL在整个系列中都是相似的,低端器件采用基于Artix-7的逻辑,其余器件采用Kintex-7中的逻辑。专业资源(如DSP片、块RAM存储器和输入/输出资源)的PL尺寸和数量也各不相同。

2.3 Zynq使用模式

设计者以前使用过FPGA,或者使用过处理器,或者两者兼而有之都可以采用Zynq。Zynq在推出时的卖点是提供一种解决方案,用于在单个器件上实现基于处理器的任务,如运行软件和操作系统,以及基于FPGA的处理,并具有高端性能和两个组件之间的高容量互连。如果以前只使用FPGA,那么添加专用硬处理器可以提高性能(与由通用PL资源构建的"软"处理器相比);而另一方面,如果以前单独使用处理器,FPGA逻辑的存在使某些任务能够在硬件中实现,从而提供加速并释放处理器用于其他任务。

以前需要专用处理器和FPGA的系统可以从两个物理器件减少到一个,从而节省了接口工作量、功耗、材料清单成本等。

这些考虑因素在[3]中进一步讨论,特别是Zynq-7000。然而,我们发现类似的因素促使Zynq MPSoC的使用。如接下来所述,Zynq MPSoC提供了处理单元的进一步集成,扩展了Zynq的PS部分,包括实时处理引擎、图形处理器和视频编解码器(某些器件具备),以及功能更强大的应用处理器。

3. Xilinx Zynq MPSoC

与Zynq相比,Zynq MPSoC代表了架构的扩展和扩展。尽管由相同的高级组件(PS和PL,使用AXI互连接口)组成,但PS更为复杂,PL从Xilinx的7系列升级为UltraScale+ FPGA架构。在大多数Zynq MPSoC系列中,PL的尺寸也比Zynq系列器件大。

3.1 Zynq MPSoC的发布

Zynq MPSoC于2015年首次发布,距离Zynq首次发布已有四年时间。在这段时间里,Zynq在各种应用领域得到了广泛应用,通过这一点,对完全集成的"FPGA+处理器"解决方案的需求已经根深蒂固。

Zynq MPSoC提供了增强型PS和更大的PL(有多种不同尺寸可供选择)。Zynq MPSoC系列已经建立了子家族,以满足不同类型的应用及其需求,特别是在PS资源方面。这些子家族通过两个字母的名称来区分:CG、EG和EV,其中两个字符的含义如表2所示。

表2:Zynq MPSoC子族标识符

Zynq MPSoC并没有取代Zynq,而是提供了一种类似形式的扩展和增强解决方案。Zynq器件将继续是低成本、低复杂系统的合适选择。

3.2 Zynq MPSoC体系结构和特点

与Zynq相比,Zynq MPSoC包括一组扩展的资源,有三种变体(即CG、EG和EV子家族)。PS和PL的主要特征如表2.4所示。在后面章节详细了解体系结构时,我们将详细介绍这些资源的功能。

Zynq MPSoC架构的另一个重要发展是其电源管理功能。器件被划分为四个独立的电源域,可以单独操作。这意味着设备的未使用部分可以在不需要时断电,从而提高整体电源效率。另外,安全功能也得到了增强。

此外,需要强调的是,Zynq MPSoC得益于UltraScale+ FPGA体系结构(将在第4.3节中进行介绍),其中包括对Zynq使用的7系列体系结构的某些改进。两个特别显著的区别特征是包含了UltraRAM,以及将DSP Slices进一步升级为DSP48E2(DSP48E1包含在Zynq中)。

表3中突出显示了资源最小和最大的器件。通过与表1进行比较,请注意,Zynq MPSoC系列包括具有比Zynq系列大得多的PL面积的器件。这使得Zynq MPSoC在需要大量使用PL时成为更好的选择,例如,作为嵌入式系统设计的一部分,用于一组复杂算法的硬件加速。

表3:基本资源比较(最小和最大Zynq MPSoC的PL)

a.不包括高速串行接口。

表4:Zynq MPSoC的特性概述(按子家族)[24]

各种Zynq MPSoC芯片还包含不同数量的其他PL资源类型(DSP48x Slices、块RAM等)---有关完整信息,请参阅详细的技术手册。

相关推荐
9527华安3 小时前
FPGA实现PCIE3.0视频采集转10G万兆UDP网络输出,基于XDMA+GTH架构,提供工程源码和技术支持
网络·fpga开发·udp·音视频·xdma·pcie3.0·万兆网
able陈3 小时前
为什么verilog中递归函数需要定义为automatic?
fpga开发
fei_sun3 小时前
【Verilog】第二章作业
fpga开发·verilog
碎碎思4 小时前
如何使用 Vivado 从源码构建 Infinite-ISP FPGA 项目
fpga开发·接口隔离原则
江山如画,佳人北望6 小时前
fpga-状态机的设计及应用
fpga开发
晓晓暮雨潇潇8 小时前
Xilinx IP核(3)XADC IP核
fpga开发·vivado·xadc·ip核
CWNULT8 小时前
AMD(Xilinx) FPGA配置Flash大小选择
fpga开发
碎碎思21 小时前
很能体现FPGA硬件思维的一道面试题
fpga开发
9527华安1 天前
FPGA实现PCIE3.0视频采集转SFP光口千兆UDP网络输出,基于XDMA+GTH架构,提供2套工程源码和技术支持
网络·fpga开发·udp·音视频·xdma·pcie3.0
ZxsLoves2 天前
【【简单systyem verilog 语言学习使用三--- 新新adder加法器-覆盖率测试】】
学习·fpga开发