1、 赛灵思-Zynq UltraScale+ MPSoCs:产品简介_apu a53-程序员宅基地

技术标签: # Zynq UltraScale+ MPSoC修炼秘籍  Linux开发  赛灵思  FPGA  Zynq  

1、 赛灵思-Zynq UltraScale+ MPSoCs:产品简介

声明:本文是学习赛灵思 Zynq UltraScale+ MPSoC 5EV过程中写的笔记,便于以后复习,参考《详解 Zynq UltraScale+ MPSoC 无与伦比的低功耗与高灵活性特性》、黑金Zynq UltraScale+ MPSoC 5EV开发板资料。

1.1、Zynq UltraScale+ MPSoCs简介

在这里插入图片描述

赛灵思推出首款真正的 All Programmable(全可编程)异构多处理 SoC —— Zynq UltraScale+MPSoC。
采用台积公司 (TSMC) 新一代 16nm FinFET 工艺节点的 Zynq UltraScale+ MPSoC 包含一个可扩展的 32位 或 64 位多处理器 CPU、用于实时处理图形和视频的专用硬化引擎、先进的高速外设,以及可编程逻辑,可用于汽车驾驶员辅助与安全、无线和有线通信、数据中心以及连接与控制等多种应用领域。

与基于 ASSP 的固定 SoC 解决方案不同,Zynq UltraScale+ MPSoC 能通过灵活的 32 或 64 位数据宽度的处理系统提供最大的可扩展性。它能将关键应用(例如图形和视频管线)分配给专用处理模块来处理,并通过有效的电源域 (power domain) 和门控电源孤岛 (power island) 来开启和关闭模块。Zynq UltraScale+ MPSoC 提供多种互连选项、DSP 模块以及可编程逻辑选择,因而具备整体灵活性,可满足用户的各种应用需求。该产品系列具备出色可扩展性,使设计人员能够利用单个平台和行业标准工具开发出低成本以及高性能应用 。

Zynq UltraScale+ MPSoC 方框图

在这里插入图片描述

1.2、Zynq UltraScale+ MPSoC 处理系统的主要特性

应用程序处理单元 (APU),采用四核 ARM Cortex -A53 处理器 :

新一代 ARMv8 架构支持 32 或 64 位数据宽度;

非常适用于 Linux 和裸机 SMP/AMP 应用系统。

实时处理单元 (RPU),采用双核 ARM Cortex-R5 处理器 :

低时延、高确定性的性能;

APU 任务分担。

最新集成硬化多媒体模块 :

图形处理单元 (GPU) [ARM Mali -400MP2];
4Kx2K 60fps 视频编码器 / 解码器 (VCU) [ 部分器件包含 ];
4Kx2K 30fps DisplayPort 接口。

最新集成高速外设 :

PCIe Gen1 或 Gen2 根联合体和集成端点模块,x1、x2 和 x4 信道;
具有主机、器件和 OTG 模式的 USB 3.0/2.0;
具有巨型帧和精确时间协议的千兆位以太网;
SATA 3.1 主机;
高达 6Gb/s 的专用 Quad 收发器。

通用和引导外设 :

CAN、I2C、QSPI、SD、eMMC 和 NAND 闪存接口;
GPIO、UART 和走线端口。

带 ECC 的 6 端口 DDR 控制器,支持 x32/x64 的 DDR3、DDR3L、LPDDR3、LPDDR4、DDR4。

支持多个电源域的集成平台管理单元 (PMU)。

集成配置安全单元 (CSU)。

提供 TrustZone 支持。

外设和存储器保护。

1.2.1、功耗优先

Zynq UltraScale+ MPSoC 在设计之初就考虑了高效电源管理问题。该器件被分成四个电源域:

Zynq UltraScale+ MPSoC 电源域框架

在这里插入图片描述

处理系统 (PS) 中的电池电源域包含实时时钟和电池供电的 RAM。

PS 中的低电源域包含 RPU、通用外设、片上存储器 (OCM)、平台管理单元,以及配置安全单元。

PS 中的全电源域包含 APU、高速外设、系统存储器管理器和 DDR 控制器。

可编程逻辑 (PL) 位于自身的电源域中。

除了始终处于开启状态的电池电源域外,设计人员有很多运行模式和功率等级可选。不用的电源域可在启动时关闭,然后智能地通过中断或事件唤醒:

低电源和全电源域还支持在单个引擎上建立电源孤岛,以实现更精细的电源控制。APU 中的每个 Cortex-A53 处理器都可进行电源门控,RPU 中的两个 Cortex-R5 处理器可以一起进行电源门控,GPU中的像素和几何处理器均可进行独立门控。与 RPU 紧密耦合的存储器和片上存储器 (OCM) 进一步细分为多个同样可进行独立门控的 Bank,包括 APU 中的 L2 高速缓存。另外,很多通用和高速外设也可作为 电源孤岛进行独立门控。

Zynq UltraScale+ MPSoC 含有可控制电源域的创新型平台管理单元 (PMU)。PMU 负责器件的安全管 理,并监管电源域内的电源。它包含一个专用 ROM,用于智能地处理电源域的上电和断电,以及复位请 求 ;还包含 128KB 的 RAM,用来存储可选的自定义电源管理固件。PMU 包含 256 位的器件秘钥,用以 在安全重启时进行可选的数据解密 ;它还支持处理器间中断 (IPI),这样某个电源域就可以在关键事件发 生时监测和唤醒另一个睡眠电源域。

1.2.2、系统性能功耗比提升 5 倍

Zynq UltraScale+ MPSoC 的核心是两个 CPU 模块。应用处理单元 (APU) 是一个四核 ARM Cortex-A53,理想适合于 Linux 和裸机应用处理 ;实时处理单元 (RPU) 是一个双核 ARM Cortex-R5,理想适用于低时延确定性应用,诸如安全模块和 APU 任务分担等。由于结合了全新多媒体图形引擎、高速 外设,以及最新一代可编程架构和 IP,Zynq UltraScale+ MPSoC 与 前代赛灵思 Zynq-7000 器件相比,系统性能可提升 5 倍。

APU 中的四核 ARM Cortex-A53 处理器在 ARM v8 新一代架构中将领先性能与高能效处理完美结合在一 起。每个 Cortex-A53 都提供更高的基线性能——达到 Zynq-7000 器件中 ARM Cortex-A9 的 2.7 倍 ;并支持多种高级特性,例如新一代浮点,以及由管理程序支持的真正 APM 运行。APU 非常适合在 Linux 和其他第三方 RTOS 上执行应用程序,或者在裸机上执行。

APU 的主要特性包括 :

四核 ARM Cortex-A53 处理器;

高达 1.5GHz 的最高运行速度;
提供 ARMv8 新一代架构支持;
64 位或 32 位数据位宽;
每个处理器有专用存储器管理单元 (MMU);
每个处理器有专用的新一代单指令/多数据 (SIMD) 引擎;
每个处理器有 32KB 的 L1 指令高速缓存(带奇偶校验);
每个处理器有 32KB 的 L1 数据高速缓存(带 ECC);
1MB 的共享 L2 高速缓存(带 ECC);
提供管理程序支持。

RPU 中的双核 ARM Cortex-R5 处理器针对低时延、确定性执行进行了精心优化,并包含安全关键型和 高可靠性安全应用所需的专用低时延紧耦合存储器 (TCM),或者作为附加处理器分担 APU 的处理任务。

RPU 的主要特性包括 :

双核 ARM Cortex-R5 处理器;
高达 600MHz 的最高运行速度;
提供 ARMv7R 架构支持;
32 位数据位宽;
默认的分离模式运行或者双核锁步运行;
每个处理器有专用的存储器保护单元 (MPU);
每个处理器有 32KB 的 L1 指令高速缓存(带 ECC);
每个处理器有 32KB 的 L1 数据缓存(带 ECC);
每个处理器有 128KB 的低时延紧耦合存储器 (TCM)(带 ECC);
锁步模式下 TCM 存储器可耦合为 256KB。

图形处理单元 (GPU) 为 ARM Mali-400 MP2,位于 Zynq UltraScale+ MPSoC 的处理系统 (PS) 内。它直 接与 APU 相连,可加速帧缓冲器中视频图像的渲染以进行显示输出。GPU 可通过其专用并行引擎生成 视频信息,速度比依靠 CPU 进行图形处理的同类竞争性 ASSP 要快得多 ;而且成本和功耗比那些依赖设计人员添加片外 GPU 引擎的解决方案也要低。 GPU 利用完全可编程的架构加速 2D 和 3D 图形处理,该架构可同时支持基于着色的图形 API 和固定函 数图形 API。其内置的抗锯齿功能,可获得最佳图像质量,而且几乎不增加额外性能开销。此外,其还 包括业经验证全套 Linux 驱动程序,可自动将 APU 的图形命令传递给 GPU 并让其执行。

Zynq UltraScale+ MPSoC GPU 的主要特性:

ARM Mali-400 MP2;
高达 667MHz 的最高运行速度;
1 个几何处理器,2 个像素处理器;
专用的 64KB 共享 L2 高速缓存;
专用存储器管理单元;
提供 OpenGL ES 2.0 和 OpenGL ES 1.1 支持;
提供 OpenVG 1.1 API 支持;
三个引擎上均有独立的电源门控;
像素填充率为 :13.34 亿个像素/秒;
7260 万个三角形/秒;
21.34 Gflflops 浮点着色。

视频编解码单元 (VCU):

支持 H.264 和 H.265 HEVC 视频标准;
同步编码/解码;
8Kx4K 视频,15fps,或者 4Kx2K 视频,60fps;
8 位和 10 位色彩分量;
I、IP、IPB 帧编码;
4:2:0 和 4:2:2 色度格式;
同时处理 8 个不同视频流。

1.3、Zynq UltraScale+ MPSoC产品信息

1.3.1、Zynq UltraScale+ MPSoC产品型号

主要有三种型号:

在这里插入图片描述

命名:

在这里插入图片描述

1.3.2、Zynq UltraScale+ CG

CG框架图

在这里插入图片描述

  • 双核 Arm Cortex-A53
  • 双核 Arm Cortex-R5F
  • 16nm FinFET+ 可编程逻辑
1.3.3、Zynq UltraScale+ EG

EG框架图

在这里插入图片描述

四核 Arm Cortex-A53

双核 Arm Cortex-R5F

16nm FinFET+ 可编程逻辑

Arm Mali-400MP2

1.3.4、Zynq UltraScale+ EV

EV框架图

在这里插入图片描述

四核 Arm Cortex-A53;

双核 Arm Cortex-R5F;

16nm FinFET+ 可编程逻辑;

Arm Mali-400MP2;

H.264/H.265 视频编解码器;

2、Zynq UltraScale+ MPSoC 在应用

汽车中央 ADAS 模块

Zynq-7000 器件已经普遍用于当今汽车的安全与摄像头系统。汽车中的摄像头系统数量预计在未来四年 内将会翻倍,包括音响系统。汽车的中央 ADAS 设备需要处理具有六个同步摄像头信号的视频管线,而且每个摄像头至少达到 200 万像素(30fps),而 Zynq UltraScale+ MPSoC 完全可以满足这种要求。

Zynq UltraScale+ MPSoC ADAS 应用实例

在这里插入图片描述

借助 ADAS 中央模块内的 Zynq UltraScale+ MPSoC,该器件的 I/O 可利用多种接口标准(包括 MIPI 和以太网协议)捕捉来自车上多个摄像头的视频链路信号。然后,将原始视频传递给 PL 中运行的视频与分析 IP ;该 IP 支持多种加速功能,例如用于盲点探测的运动估算、用于前大灯控制的头灯/尾灯分类、用于车道偏离警告的边缘检测、用于交通标志识别的模式识别与光流估算,以及用于行人检测的梯度提取。

然后,处理后的图像数据被发送到 Zynq UltraScale+ MPSoC 处理系统,在这里,APU 四核处理器将执行图像数据的环境特性描述,同时监测车辆传感器。APU 可通过设定参数控制寄存器(例如边缘检测的阀值)来调整可编程逻辑中的硬件加速器 ;或者在停车等红灯时动态地切换模块,由车道检测切换成行人监控。APU 执行帧处理,例如对象跟踪和距离估测。附加的视频处理任务(例如镜头形状的变形校正)分配给 GPU,从而实现更高的 CPU 性能和更均匀的热平衡。将环境特性描述信息从 APU 发送至 RPU。RPU 作为汽车的主要接口,用以监测和启动执行器,同时执行并行系统诊断。双核 Cortex-R5 处理器在锁步模式下运行,以满足功能安全性要求。通过集成 CAN 接口从 RPU 向汽车发出的命令,并且在可编程逻辑中有交叉监测和诊断保护投票功能。

APU 和 RPU 共同为 ADAS 主机控制器集成提供功能安全支持。除了这些处理单元外,输入视频链路、图形处理、集成 CAN 接口以及用于硬件加速的可编程逻辑也都集成在 Zynq UltraScale+ MPSoC 板件上,这不仅能降低总体材料清单 (BOM) 成本,省去添加单独的主机控制器和摄像头视频链路接口的麻烦,而且还集成了 GPU 和片上存储器,将 ECU 的系统总功耗降低达 25% 之多,使得系统性能功耗比相对采用 Zynq-7000 AP SoC 的类似系统提升 4 倍。

3、XCZU5EV-2SFVC784I

ZU5EV 芯片的 PS 系统集成了 4 个 ARM Cortex-A53 处理器, 速度高达 1.2Ghz,支持 2 级 Cache; 另外还包含 2 个 Cortex-R5 处理器,速度高达 500Mhz。 ZU5EV 芯片支持 32 位或者 64 位的 DDR4,LPDDR4,DDR3,DDR3L, LPDDR3 存储芯 片,在 PS 端带有丰富的高速接口如 PCIE Gen2, USB3.0, SATA 3.1, DisplayPort;同时另外也支持 USB2.0,千兆以太网,SD/SDIO,I2C,CAN,UART,GPIO 等接口。PL 端内部含有丰富的可编程逻辑单元,DSP 和内部 RAM。

PS 系统部分的主要参数如下:

ARM 四核 Cortex-A53 处理器,速度高达 1.5GHz,每个 CPU 32KB 1 级指令和数据缓存,1MB 2 级缓存 2 个 CPU 共享。
ARM 双核 Cortex-R5 处理器,速度高达 600MHz,每个 CPU 32KB 1 级指令和数据缓存,及 128K 紧耦合内存。
图像视频处理器 Mali-400 MP2, 速度高达 677MHz,64KB 2 级缓存。
外部存储接口,支持 32/64bit DDR4/3/3L、LPDDR4/3 接口。
静态存储接口,支持 NAND, 2xQuad-SPI FLASH。
高速连接接口,支持 PCIe Gen2 x4, 2xUSB3.0, Sata 3.1, DisplayPort, 4x Tri-mode Gigabit Ethernet。
普通连接接口:2xUSB2.0, 2x SD/SDIO, 2x UART, 2x CAN 2.0B, 2x I2C, 2x SPI, 4x 32b GPIO。
电源管理:支持 Full/Low/PL/Battery 四部分电源的划分。
加密算法:支持 RSA, AES 和 SHA。
系统监控:10 位 1Mbps 的 AD 采样,用于温度和电压的检测。
其中 PL 逻辑部分的主要参数如下:
逻辑单元(System Logic Cells):256.2K;
触发器(CLB flip-flops) : 234.24K;
查找表(CLBLUTs) : 117.12K;
Block RAM:5.1Mb;
时钟管理单元(CMTs): 4 个
DSP Slices:1248 个
图像编解码单元(VCU):1 个
PCIE3.0 : 2 个
GTH 12.5Gb/s 收发器: 4 个
XCZU5EV-2SFVC784I芯片的速度等级为-2,工业级,封装为SFVC784。

博文中的资料已经放在下面公众号里面,可以关注公众号:Kevin的学习站,创作不易,但您的点赞、关注、收藏就是对我最大的鼓励!

在这里插入图片描述

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_44705488/article/details/126294662

智能推荐

【解决】1251--Client does not support authentication protocol requested by server 的解决办法_1251-client does not support authentication protoc-程序员宅基地

文章浏览阅读3k次。出现错误:报错(客户端不支持),Navicat版本过低,这儿解决办法分为两种,第一种,升级客户端;第二种,降低服务器端;在镜像拉取的时候,不知道各位注意到没有,镜像的TAG为latest,关于最新版的MySQL才出来没多久,也作了比较多的优化和新能提升,当然就不在这人阐述了,如果对新的版本了解不多的,建议就不要强撑了(会踩到很多坑),所以这儿就建议使用在生产环境中还是选择5.x的吧。(这儿只是建议)拉取5.x的MySQL镜像,如下图:正常启动镜像,如下图:在Navicat客户端中进行连接测试_1251-client does not support authentication protocol requested by server; consid

padding用法-程序员宅基地

文章浏览阅读755次。<html> <head> <title></title> <style> span{ background-color: rgb(76, 236, 71); } i{/*padding是内边距,向内扩展,与margin正好相反*/ background-color: rg._padding用法

Python --Pycharm + Anaconda 的Python3.7遇到“ImportError: DLL load failed: 找不到指定的模块”解决办法_python anaconda ddl load failed-程序员宅基地

文章浏览阅读4.1k次,点赞3次,收藏10次。问题描述python3.7 在Pycharm + Anaconda 不能用,装了包还报错:ImportError: DLL load failed: 找不到指定的模块,把python降到3.6, 然后python3.6 在Pycharm + Anaconda 就没问题了,但是心里总有疙瘩难以解开,后面找到了解决python3.7的问题,将解决办法记录一下解决办法1添加三个path路径(均在A..._python anaconda ddl load failed

【Python】OS 模块简介_os模块-程序员宅基地

文章浏览阅读4.5k次。本文简单介绍了 Python 中的 OS 模块以及其中的一些常用方法。_os模块

(手写)可去重离散化序列_手写离散化-程序员宅基地

文章浏览阅读214次。(手写)可去重离散化序列所谓离散化,就是求一个序列每个数是序列中的第几大/小的,可以为主席树等权值线段树等节省空间(比如数的最大值为1e9,你就要存1e9那么大,但离散化后只用存数的个数那么多)真心看不懂哪些大佬们如何用STL写离散化我手写了一个,保证:如果同样大的名次相同,从小到大类型1:运动员是排序(自己口胡的名字)*即设有k个比他大,他就是k+1名比如:1、3、5、5、7排序后..._手写离散化

计算机发展的几个重要事件,15件在计算机发展史中具有里程碑意义的事件-程序员宅基地

文章浏览阅读3.2k次。共15张图片,发表于2010-01-28 09:52:05据《时代》报道从1946年第一台电子计算机问世到苹果即将发布万众期待的平板电脑,现代电子计算机技术获得了长足的发展,这些发展均离不开人类科技知识的积累,离不开众多热衷于此并呕心沥血。1946年,第一台电子计算机“埃尼阿克”问世。第一台电子计算机叫“埃尼阿克”(ENIAC),它于1946年2月15日在美国宾夕法尼亚大学宣告诞生。承担开发任务的..._我国计算机发展的重要事件

随便推点

电池充电方案总结-程序员宅基地

文章浏览阅读1.3w次。锂离子电池低电压充电(12V以下):多种化学成分电池充电器电路+源码+上位机等http://www.cirmall.com/circuit/3673/%E5%A4%9A%E7%A7%8D%E5%8C%96%E5%AD%A6%E6%88%90%E5%88%86%E7%94%B5%E6%B1%A0%E5%85%85%E7%94%B5%E5%99%A8%E7%94%B5%E8%B7%AF%2B%..._stm32单片机支持13种快冲协议的充电器源码和原理图

如何替换Citrix XenDesktop中使用的vCenter server地址-程序员宅基地

文章浏览阅读477次。一、问题描述:客户重装Vcenter之后(Hostname与之前保持一致)出现如下报错:1.计算机目录显示无法联系到vCenter server2.VM电源状态未知3.测试connection出现如下错误:Attempting to connect to the VCenter server failed due to a certificate error. Check ..._citrix vcenter替换

Android Studio Lint 工具看完这一篇还不够-程序员宅基地

文章浏览阅读6.5k次,点赞12次,收藏24次。前言以前对下面的问题,我的态度是,不报错就是没问题,报错就用快捷键,根据Android Studio提示修复问题,从来不去问个为什么?现在代码洁癖症越来越严重的我,忍不住想看清什么东西在搞鬼。认真看完本文,一定可以学到最新的知识。就算看不下去,也要点个赞收藏,绝对不亏。本文并不是吐槽Lint的不好,而是在学习Lint过程碰到问题,心态是奔溃的,以及解决每个问题带来的喜感。不知道大家有没有注意..._android studio lint

CDH激活分发parcel时因为意外错误卡住不能修改问题解决方案_cdh parcel激活一直卡住-程序员宅基地

文章浏览阅读2.7k次。问题背景:今天因为业务需求需要在CDH集群上安装StreamSets,结果因为权限的原因,之前我把这个parcel文件的权限变更为cloudera-scm,结果后面遇到这个问题了,问了之前部署CDH的人才知道他那时候用的权限是Root用户,所以现在卡在这里,也没有地方可以直接暂停:然后我点进去看详细的信息:可以看到cluster2-1这个结点因为权限的问题,导致不能激活。解决方案:Cloudera并没有在控制台开发Cancel或者回滚的入口,此时服务状态就是卡住页面无法操作。通过_cdh parcel激活一直卡住

TinyRayTracer 用256行C++代码构建一个可理解的光线追踪器(1)_understandable raytracing in 256 lines of bare c++-程序员宅基地

文章浏览阅读1.6k次,点赞7次,收藏13次。网上有大量的光线追踪相关的文章,然而问题在于几乎所有的这些文章都在展示那些成熟的非常难以理解程序。举个例子,非常著名的 明信片光线追踪器 挑战。这段简洁的程序令人印象深刻,但却很难让人理解它是怎么工作的。我想详细地教你怎样实现,而不是向你展示我能完成图像渲染。_understandable raytracing in 256 lines of bare c++

C#实现多个子窗体切换效果_c#多窗体管理-程序员宅基地

文章浏览阅读3.1w次,点赞142次,收藏472次。Hello,大家好!我是灰小猿!今天来和大家分享一下在C#的winform开发中如何实现借助一个主窗体来实现内部多个子窗体的切换效果。多窗体切换首先来看一下主窗体中多个小窗体切换的效果:多窗体切换的原理:多窗体切换的原理其实是借助一个panel容器,在该容器中显示相同大小的窗口,接下来大灰狼和大家分享一下建立多窗口切换的步骤:1、新建一个主窗体并在其中放置适当的控件,包括进行切换的按钮和显示窗体的panel容器,在这里要注意:将要显示的子窗体就是在该panel容器中显..._c#多窗体管理