赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...wp497 (v1.0) 2017 年...

19
china.xilinx.com WP497 (v1.0) 2017 年 10 月 23 日 1 白皮书 :Zynq UltraScale+ MPSoC WP497 (v1.0) 2017 年 10 月 23 日 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解决方案 作者:Yashu Gosain 和 Alok Gupta 赛灵思高效节能的可编程 SoC (System-on-Chip) 多媒体解决方 案带有集成型 GPU 和编解码器,专为超高清 (UHD) 视频而设 计,可提供出色的设计灵活性,支持差异化的产品创新。 摘要 该白皮书探讨了 Zynq ® UltraScale+ ™ MPSoC 的多媒体功能。MPSoC 基于 Zynq-7000 SoC ,包括一个可编程逻辑 (PL) 的桥接处理系统 (PS),但它在 Zynq UltraScale+ MPSoC 进行了额外的扩展,因而非常适合多媒体应用。主要的区别包括: 针对 UHD-4K 集成了支持 H.264 / H.265 的视频编解码器单元,适用但不仅仅适用 于监控、视频会议、嵌入式视觉和一些广播应用等领域,实现低时延的编码,同时相对于 服务器或可编程逻辑而言能效更高。 该功耗优化型图形子系统基于 ARM ® Mali-400,这是一种业经验证的完善架构,非常 适用于 2D 和 3D 图形。 PL 可编程性可提供:(a) 任意到任意高速视频/ 音频接口的灵活性及可扩展性;(b) 为多媒体管道带来定制图像及视频处理功能的差异化效果。 该白皮书还重点介绍了处理引擎搭配 Zynq UltraScale+ MPSoC 的独特配置如何满足下一 代多媒体需求。 © Copyright 2017 年赛灵思公司版权所有。Xilinx、赛灵思标识、Artix、ISE、Kintex、Spartan、Virtex、Vivado、Zynq 及本文提到的其它指定品牌均为赛灵思在美国及 其它国家的商标。AMBA、AMBA Designer、ARM、ARM1176JZ-S、CoreSight、Cortex、PrimeCell 均属于 ARM 在欧盟和其他国家和地区的注册商标。 “PCI”、“PCIe”和“PCI Express”均为 PCI-SIG 拥有的商标,且经授权使用。所有其它商标均为各自所有方所属财产。 · · ·

Upload: others

Post on 22-May-2020

23 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 1

白皮书 :Zynq UltraScale+ MPSoC

WP497 (v1.0) 2017 年 10 月 23 日

赛灵思面向视频编解码器和图形

引擎的前沿多媒体解决方案

作者:Yashu Gosain 和 Alok Gupta

赛灵思高效节能的可编程 SoC (System-on-Chip) 多媒体解决方案带有集成型 GPU 和编解码器,专为超高清 (UHD) 视频而设计,可提供出色的设计灵活性,支持差异化的产品创新。

摘要

该白皮书探讨了 Zynq® UltraScale+ ™ MPSoC 的多媒体功能。MPSoC 基于 Zynq-7000 SoC ,包括一个可编程逻辑 (PL) 的桥接处理系统 (PS),但它在 Zynq UltraScale+ MPSoC 进行了额外的扩展,因而非常适合多媒体应用。主要的区别包括:

针对 UHD-4K 集成了支持 H.264 / H.265 的视频编解码器单元,适用但不仅仅适用于监控、视频会议、嵌入式视觉和一些广播应用等领域,实现低时延的编码,同时相对于服务器或可编程逻辑而言能效更高。

该功耗优化型图形子系统基于 ARM® Mali-400,这是一种业经验证的完善架构,非常适用于 2D 和 3D 图形。

PL 可编程性可提供 :(a) 任意到任意高速视频 / 音频接口的灵活性及可扩展性 ;(b) 为多媒体管道带来定制图像及视频处理功能的差异化效果。

该白皮书还重点介绍了处理引擎搭配 Zynq UltraScale+ MPSoC 的独特配置如何满足下一代多媒体需求。

© Copyright 2017 年赛灵思公司版权所有。Xilinx、赛灵思标识、Artix、ISE、Kintex、Spartan、Virtex、Vivado、Zynq 及本文提到的其它指定品牌均为赛灵思在美国及其它国家的商标。AMBA、AMBA Designer、ARM、ARM1176JZ-S、CoreSight、Cortex、PrimeCell 均属于 ARM 在欧盟和其他国家和地区的注册商标。 “PCI”、“PCIe”和“PCI Express”均为 PCI-SIG 拥有的商标,且经授权使用。所有其它商标均为各自所有方所属财产。

�容

简介 2

3

Zynq UltraScale+ MPSoC 多媒体解决方案 4

集成型视频编解码器单元 (VCU) 5

6

VCU 软件堆栈 8

集成型图形处理单元 (GPU) 9

GPU 软件堆栈 10

内核空间 10

用户空间 11

应用空间 11

显示控制器 11

集成型可编程逻辑 (PL) 11

采用 Vivado 和 SDK 工具支持任意连接功能 12

应用示例 13

视频会议应用 13

14

14

数据中心与云计算领域的视频转码 15

汽车全景查看系统 16

16

Zynq UltraScale+ MPSoC 优势 18

结论 18

修订历史 19

免责声明 19

汽车应用免责声明 19

·

·

·

Page 2: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 2

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

简介从屏幕到屏幕的媒体网络包括捕获或创建内容的采集端和在各种不同设备上观看或使用内容的消费端。在采集端,支持 4K(乃至更高)分辨率的高级传感器的不断推广和普及,结合消费级 4K (3840x2160) 显示器在消费端的日益普及,这一势态不仅带来了分辨率更高的内容,还为诸如 360 度全景视频、虚拟现实 (VR) 等令人振奋的创新技术提供了环境。额外的技术使能因素也带来了精彩内容,其中包括面向 HD 和 UHD 分辨率的的高动态范围 (HDR) 技术以及面向深颜色的广色域 (WCG) 技术等。

增强的传感器、更好的显示器、更高的分辨率、HDR、WCG 及更高的帧率,这些因素相结合,共同支持更高的视频质量,使黑白色彩更加分明锐利、颜色精度更高、范围更广,而且减少运动伪影问题。

压缩是用于减少数据带宽和存储空间的标准技术,针对不同的用例,要选用不同的编解码器,在输出质量、时延、大小、功耗和成本等各种关键参数方面做到完美平衡。消费者渴望在任何种类的屏幕上都能体验更出色的 HD 和 UHD 屏显质量,这一点驱动了编解码器标准的发展。为满足消费者的更高期望,自然就要努力通过低带宽网络向尽可能多的消费者交付内容,但是受限访问、播放速度慢、连接不可靠等问题带来的威胁时隐时现。

如今,H.264 (MPEG-4,AVC (Part 10)) 是在线和广播领域最广为接受并采用的高清内容压缩与发布格式。但是,消费者渴望更高的视频质量,这推动了高清内容向超高清内容的迈进,同时也将对存储及传输带宽的要求提高了四倍。这也对当前部署的用于发布视频内容的基础架构构成巨大挑战。因此,就现有的编解码器标准来说,就必须在不影响质量的前提下进一步提高压缩率。

视频压缩技术的发展推动系统带宽和存储效率的大幅提升。高效视频编码 (HEVC) ,也就是 H.265 压缩技术正成为 UHD 的关键使能因素,相对于当前部署的 H.264 压缩标准而言,有望将带宽和存储效率提高多达 50%。HEVC 普及所实现的带宽效率提升预示着能显著推动高质量高分辨率视频在带宽受限网络上的交付传输。例如,某个多视图应用汇集不同来源的视频,通过实时视频处理(如缩放、组合或叠加等)将这些视频拼接合一,在一台 4K 输出显示器上显示。(如图 1 所示。)

Page 3: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 3

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

图 1 :带有实时处理功能的多视图应用

可实时运行视频源接口与视频处理,从而提供非压缩式输出。可通过使用编解码器对多视图输出进行大幅压缩,从而能通过以太网传输输出内容。IP 视频传输方式引发了当今多方对安全与隐私问题的密切关注。

为了保护数字内容,要在传输流中对编解码器输出进行加密打包,然后该内容就可传输到远程监测站或世界任何地方的数字化电子招牌。

在远程监测站,对实时接收的多个压缩视频流进行解包与解码,以提取出相关视频内容。视频解密后,采用特定的编解码器进行视频输出解压缩。随后将该视频流(来自编解码器的解压缩输出)提交给后处理块执行叠加、降噪、组合等操作,配合单台或多台 4k 显示器使用。远程监测应用还能通过返回通道捕获多个视频源,然后可进行压缩、加密并打包视频流,以实现网络传输。

为实现这种高级拓扑,系统必须支持多种不同的编解码器和图形引擎,同时还要与多媒体连接接口、实时视频处理管道以及 IP 网络功能实现高度集成。

这种复杂的拓扑可通过 Xilinx® Zynq® UltraScale+ ™ MPSoC 平台得到简化,该平台集成了多核处理器子系统、图形处理单元、符合 HEVC/AVC 标准的视频编解码器单元以及紧密耦合于可编程逻辑 (PL) 的多种片上外设。

该白皮书将探讨 Zynq UltraScale+ MPSoCEV 器件的多媒体问题,并重点介绍处理引擎搭配独特的器件配置如何满足下一代多媒体发展要求。

不同

来源

的非

压缩

视频

和音

来源

预处

理 / 后

处理

编解

码器

加密

/ 解密

MPE

G-TS

打包

器 / 解

包器

流汇

来源

汇集

MPE

G-TS

打包

器 / 解

包器

加密

/ 解密

编解

码器 显

示器

非压

缩的

多视

频 / 音

预处

理 / 后

处理

压缩

的视

频 / 音

频流

压缩

的Av

流到

显示

网络本地多视图

远程多视图

Page 4: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 4

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

Zynq UltraScale+ MPSoC 多媒体解决方案Zynq UltraScale+ MPSoC 是一款异构 SoC,包括许多处理引擎、一系列高速外设、高级 I/O 功能和 PL。( 如图 2 所示。) 处理引擎包括基于四核 ARM® Cortex ™ A53 的 APU、基于双核 ARM Cortex R5 的 RPU、Mali 图形处理单元、平台管理单元和视频编解码器单元 (VCU)。它可将图形与视频流水线化等关键应用交由专用处理块分担,也能通过高效的电源域与电源分区开关不同的块。通过多种互联选择、DSP 块和 PL 选择,Zynq UltraScale+ MPSoC 的整体灵活性能满足用户许多不同的应用需求。

Zynq UltraScale+ MPSoC 处理系统

Zynq UltraScale+ MPSoC 可编程逻辑

应用处理单元

实时处理单元

通用 I/O

高性能 HP I/O

高密度 HD I/O

高速连接 GTH 存储与信号处理块 RAM

配置与安全单元 平台管理单元系统控制 一般连接

存储器 图形处理单元ARM Mali ™ -400 MP2

高速连接显示端口

浮点单元显示端口

DMA、定时器、WDT、复位、时钟、及调试

几何图形处理器

存储器管理单元

64KB L2 缓存

两个像素处理器DDR4/3/3L, LPDDR4/3

ECC 支持

256KB OCM带 ECC

Config AES 解密、验证、安全启动

电压 / 温度检测器

功耗

系统管理

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

系统监测器

向量浮点单元

存储器保护单元

32KBI- 缓存w/ 校验

32KBI- 缓存w/ 校验

32KB D- 缓存w/ECC

32KB D- 缓存w/ECC

存储器管理单元

Trace 宏单元

Trace 宏单元

图 2 :方框图

该产品系列的可扩展性能完美满足设计师的要求,使用单个平台和业界标准的工具即可同时满足成本敏感型和高性能应用的需求。

为了实现高性能、先进的多媒体系统,必须采用适当的处理引擎,还要能添加定制逻辑以实现差异化。此外,也可支持当今多种多媒体设备所需的任意到任意的连接功能。此前,要满足上述要求,往往要采用多芯片解决方案。虽然多芯片解决方案可能提供所需的多媒体和连接功能,但也会导致高功耗。像Zynq UltraScale+ MPSoC 这种单芯片解决方案则能解决该问题。定制逻辑能在同一器件上满足硬件加速或任意到任意的连接需求,从而能显著节约功耗。除了处理引擎、硬件编解码器(自带功耗管理功能)

Page 5: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 5

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

和对定制逻辑的支持之外,Zynq UltraScale+ MPSoC 将这些组件放置在具有独立电轨的不同电源域中。这种配置可用于为整个系统设计优化功耗管理方案。Zynq UltraScale+ MPSoC 采用台积电 16nm FinFET 工艺节点,这就能大幅提高性能并降低功耗,也能支持下一代节能型多媒体系统的设计。

集成型视频编解码器单元 (VCU)我们有多种软件视频编解码器实现方案,但实际上 , 所有软件都要在硬件上运行。使用基于软件的编解码器解决方案,以合理的帧速率实现具有出色视频质量 (VQ) 的高压缩比,需要多个高功耗服务器类 CPU,此类 CPU 通常部署在云端。

由于必须远离设备,实时压缩通常无法实现。不过软件实施方案极为灵活,系统也能进行高度优化。但是,在软件中实现十分灵活,系统也极可能得到优化。另一种解决方案是在 PL 中实现软 IP 块。这种实现方案相对于离线软件模式或许性能较低,但能实现低时延压缩。相对于服务器级 CPU 而言,功耗得以改善,但并不像全集成解决方案那么出色。通常高级编解码器需要相对较大的可编程逻辑器件 ;但是,部署后的可编程性则为该解决方案提供了高度灵活性。

Zynq UltraScale+ MPSoCs 采用了另一种策略,即使用硬化的专用视频编解码器块。由于采用包含硬化 VCU 的单晶片,与其他策略相比,Zynq UltraScale+ MPSoC 可实现具有低时延路径、低功耗的实时压缩。由于采用了专用的编解码器引擎,应用处理单元 (APU) 和/或 PL 能用于其他计算。

VCU 可提供多标准编码解码功能,包括支持 AVC/H.264 和 HEVC/H.265 标准。它不仅同时具有编码(压缩)和解码(解压缩)功能,还支持 60Hz 下分辨率高达 4K UHD 的并行编码解码功能如果降低帧率,还能支持 4K 乃至更高的 DCI 等更高分辨率。VCU 可同时支持多达八个不同的视频流。同时处理不同视频流的总带宽要求不得超过 VCU 在 60fps 下对 4K UHD 的最大处理吞吐量。图 3 给出了不同的视频编码解码器实施策略。

Page 6: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 6

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

图 3 :视频编解码器实现策略

VCU 是 PL 中的集成块,可支持 H.265 (HEVC) 和 H.264 (AVC) 标准,与处理系统 (PS) 非直连(硬连接)。使用赛灵思Vivado IP 集成器,设计人员可将 VCU 连接至应用处理单元 (APU) 以及 PS 和/或 PL 中的存储器子系统。如图 4 所示。

应用处理

图形处理

存储器

集成块 (PCIe®, ILKN,MAC) 高速收发器

实时处理

功耗管理

安全高效视频编码通用与高速连接

处理系统

可编程逻辑 视频编解码器

图 4 :视频编解码器块

软件解决方案

性能

性能

性能

功耗

功耗

功耗

低成本大体积高灵活性

低成本器件占用面积大高灵活性

低成本高度集成高灵活性

软 IP 解决方案 专用的视频编解码器

Page 7: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 7

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

VCU 的特性:

• 支持多标准编码解码,包括:○ ISO MPEG-4 部分 10 :高级视频编码 (AVC)/ITU H.264○ ISO MPEG-H 部分 2 :高效视频编码 (HEVC)/ITU H.265○ HEVC :Main, Main Intra, Main10, Main10 Intra, Main 4:2:2 10, Main 4:2:2 10 Intra up to 5.1

High Tier○ AVC: Baseline, Main, High, High10, High 4:2:2 up to 5.2 level

• 支持同时多达八个视频流编码解码

• 动态修改多编码参数

• 灵活的速率控制:CBR、VBR 和 ConstantQP• 支持最高 4K UHD、60Hz 的同时编码与解码• 支持低帧率 8K UHD(~15Hz)

• 逐行扫描仅支持 H.264/H.265 标准

• 视频输入○ YCbCr 4:2:2、YCbCr 4:2:0、与 Y 单独输入○ 8-Bit 和 10-bit / component

• 灵活 GOP 配置

• 低时延模式

• 电源管理○ 闲置时支持主动式时钟门控

• 性能监控:○ 检测任务执行时间○ 检测带宽和 AXI 事物数○ 检测最小、最大和平均时延

与软件编码解码器不同,Zynq UltraScale+ MPSoC EV 器件中的 VCU 支持 H.264/H.265 视频数据的低功耗高性能压缩和解压缩。H.264/H.265 视频数据的低功耗、高性能压缩和解压缩。使其能够完美支持网络上的实时 UHD 视频流,可节约大量存储空间与网络带宽。VCU 同时支持 H.264 和 H.265 标准,有助于开发满足当前市场需求 (H.264) 和下一代高级需求 (H.265) 的解决方案。采用低时延方式同时编码与解码的能力使其完美支持视频会议和 H.264、H.265 之间的转码要求。多视频流多编解码器的编码与解码能力可满足 DVR、视频服务器和多视频流 IP 摄像头的视频监控头端应用要求。由于支持高达 4:2:2 10 位 UHD-4K 的视频格式,VCU 也适合专业和高端消费级的制作与后期制作解决方案。All Programmable Zynq UltraScale+ MPSoCEV 器件结合集成 VCU 规范,为各种多媒体市场带来了理想的低成本、单芯片解决方案。

Page 8: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 8

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

VCU 软件堆栈可用 Zynq UltraScale+ MPSoC 结合常见的多媒体框架 GStreamer,来开发硬件加速型多媒体应用。GStreamer 采用的插件模型可分为三大功能 :源极、过滤和汇极插件。通过链接不同的插件 / 元素,可创建实现美的回放或捕获等具体任务的流水线。GStreamer 提供的 gst-omx 插件能在 Zynq UltraScale+ MPSoC 器件上执行硬件加速视频编码与解码。GStreamer 应用与 OpenMAX 集成层通过 gst-omx 插件互动。由 OMX IL 定义标准化的媒体组件接口,能与硬件中实现的 VCU 通讯。该层与控制软件(用户空间驱动程序)API 交互,而 API 则能调用内核空间驱动程序。

内核驱动程序与嵌入式微控制器单元 (MCU) 通讯,MCU 在 VCU 中集成编码器和解码器。MCU 上运行底层固件,控制编码器 / 解码器引擎。内核驱动程序向 MCU 发送帧级命令到,并等待 MCU 的响应。收到内核驱动程序的命令后,MCU 为编码器/ 解码器引擎调度任务,并向内核驱动程序返回状态。

根据用户的应用要求,灵活的 VCU 软件堆栈可在任何层面使用。开发人员能用控制软件 API、OMX IL 或 GStreamer 与 VCU 硬件交互,开发多媒体流水线。

图 5 展示了 VCU Linux 软件堆栈的流程。

应用

控制软件 API

OpenMAX 集成层 (OMX IL)

内核驱动程序 (ioctl)

用户空间

内核空间

硬件解码器核心

解码器 IP编码器核心

编码器 IP

GStreamer OMX IL 插件

图 5 :VCU 软件架构

Page 9: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 9

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

根据待开发的多媒体应用的复杂程度,开发人员可可选用特定的 VCU 框架层。由于 GStreamer 具有跨平台滤镜、编解码器支持 ;可轻松创建视频编辑器、转码器、流媒体播放工具与媒体播放器,而采用即插即用的模式,系统只需读取单一格式的文件,处理之后再导出为其它格式,这使 GStreamer 成为一大广受欢迎的选择。它能灵活地集成插件组件,将组建混合匹配构成任意流水线,为编写成熟的多媒体应用提供了条件。此外,如需开发具有简单轻便设计的定制化多媒体应用/框架,应用也可采用控制软件 API。

集成型图形处理单元 (GPU)Zynq UltraScale+ MPSoC 处理系统 (PS) 中的 GPU 为 ARM Mali-400 MP2,与 APU 直接绑定,还可在帧缓存中加速视频图形渲染,从而实现显示器输出。(参见图 6)

GPU 可通过独立的并行引擎进行像素渲染,速度远高于依靠 CPU 来处理图形的友商 ASSP,而且与需要设计人员添加片外 GPU 引擎的解决方案相比,成本与功耗均更低。

Vertex 处理器

图形处理单元

碎片处理器

碎片处理器

L2 缓存

图 6: Mali-400 MP2 架构设计

GPU 通过全面可编程的架构加速 2D 和 3D 图形,该架构既支持基于着色器的图形 API ,也支持固定功能图形 API 。GPU 具有抗锯齿功能,能实现最佳图像质量,且几乎不会造成额外的性能损耗。配套提供经实践检验的全套 Linux 驱动程序,能自动将图形命令从 APU 转到 CPU 处理。

Page 10: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 10

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

Zynq UltraScale+ MPSoCGPU 的突出特性包括:

• ARM Mali-400MP2

• 最高速度等级下性能可达 667MHz

• 具有一个几何处理器,两个像素处理器

• 专用的 64KB 共享 L2 缓存

• 专用的存储器管理单元

• OpenGL ES 2.0 和 OpenGL ES 1.1 支持

• OpenVG 1.1 API 支持

• 三个引擎上均采用独立电源门控

• 像素填充率达每秒 13.34 亿 (Mpixels/sec)

• 每秒 7260 万三角形 (Mtriangles/sec)

• 浮点着色 ��Gflops

上述性能数据基于 667MHz 的最高 GPU 时钟速率。

GPU 软件堆栈Zynq Ultra Scale+ MPSoC 图形软件堆栈分为三层:内核空间、用户空间和应用空间。如图 7 所示

Mali 通用用户库

用户应用

用户应用

内核空间

硬件L2 缓存

L2 缓存Mali 内核驱动程序

Mali-400MP2 硬件

OpenGLES 应用

图 7 :图形软件堆栈

内核空间内核空间与 GPU 硬件交互,提供必要的信息,以便向集成式硬件着色器分发任务。此外还负责处理底层

中断,进行存储器管理。

Page 11: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 11

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

用户空间

用户空间驱动程序包含以下组件:

• Mali 通用用户库:该层负责 GPU 工作创建以及图形渲染流水线的任务调度。

• 扩展图形库 (EGL) :该层用于同下层窗口层交互,进而与显示驱动程序交互。负责处理包括窗口创建在内的资源管理,也处理图形环境管理、表面/ 缓存绑定、渲染同步等操作。

• OpenGL ES :该层提供标准化的抽象 API,供应用使用。

应用空间GPU 可用的软件包包含 OpenGL ES 1.1 和 OpenGL ES 2.0、底层图形库以及 ARM 提供的工

具(Streamliner 和 Graphics Debugger)。Open GL ES 支持各种操作系统,为应用提供了高度轻便的特性。其他软件组件将按需提供。

显示控制器Zynq UltraScale+ MPSoC 提供高速互联外设,后者包含集成式 DisplayPort 接口模块。DisplayPort 接口位于 PS 端,可多路复用至四个专用高速串行收发器中的两个,工作速率高达 6 Gb/s。该架构摆脱了对于额外显示芯片的需求,进一步降低了系统 BOM 成本。

DisplayPort 接口基于 VESA DisplayPort Standard Version 1 和 Revision 2a 开发,其提供的多个接口能处理来自 PS 或 PL 的实时音视频流,也能存储来自存储器帧缓存的音视频。它同时支持两个音视频流水线,支持 alpha 混合、chroma 复采样、色彩空间转换和音频混合等功能的动态渲染。DisplayPort 既可使用一个 PS PLL,也能使用 PL 的时钟生成像素时钟。

集成型可编程逻辑 (PL)除视频编解码器和图形处理之外,多媒体应用还需要其他重要组件,如视频数据的输入输出管理 , 以及处理高速视频数据的功能。ARM Cortex-A53 核心、存储器单元和Zynq UltraScale+ MPSoC 的诸多外设相结合,为管理和捕获多个不同来源的数据发挥了关键作用,而后再向 VCU 提供数据。USB 和以太网等 PS 外设可用于摄像机、网络相机与网络摄像头等视频流设备。在 PL 内可设计定制化逻辑,用于捕获来自直播源的视频。例如,SDI RX、HDMI RX、MIPI CSI IP 等协议均可用于捕获不同来源的原始视频。 VCU 随后可将原始视频编码为AVC 或 HEVC 压缩比特流格式。同样,经解码的原始视频也能发送至外部显示单元,随后可采用 PS 中的 DisplayPort 控制器(DP 控制器)显示,或通过 HDMI TX、SDI TX MIPI DSI 等其他协议创建相关 IP。

Page 12: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 12

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

赛灵思提供一系列显示接口 IP,参见赛灵思 Vivado IP 目录,便于取得许可证的用户在 PL 中实现显示接口 :

• HDMI 1.4/2.0 发射器子系统和 HDMI 1.4/2.0 接收器子系统

• MIPI CSI-2 接收器子系统

• MIPI DSI 发射器子系统

• UHD-SDI 发射器子系统和 UHD-SDI 接收器子系统

视觉算法可用于采集来自原始数据的重要信息,如路标识别和针对驾驶员辅助技术的动作检测、视频监控面部识别、高级拍摄应用的物体与动作识别等。除收集数据外,算法还可用于音视频广播和视频会议等用例中处理与操控原始数据。考虑到今后几年视频分辨率不可避免的攀升态势,有关算法需要具备极高的工作速度。PL 为此类算法提供了所需的硬件加速功能,便于大幅提高性能,满足下一代技术需求。

采用 Vivado 和 SDK 工具支持任意连接功能对于硬件差异化,许多平台开发人员使用可编程逻辑实现任意互联。Vivado Design Suite 通过提供以下设计套件帮助系统设计者开发易用性系统:

• IP 集成器 (IPI) 工具○ 使用原理方框图方法整合 IP,创建总体系统

• PS 配置向导 (PCW)○ 用户能配置、启用或禁用 PS 外设,并实现时钟和存储器配置等。

• IP 目录○ 使用 IPI 可将 IP 实例化并集成到更大系统中。此外,用户能将自己的定制 IP 库集成到 IP 目录中。

Vivado Design Suite 还可提供 IP 仿真、综合、布局和布线、目标器件配置以及导出至硬件等特性,能向软件开发工具提供硬件配置信息。赛灵思软件开发套件 (SDK) 用其生成启动加载器,并在执行阶段向软件传递专门用于某个特定硬件的信息。

SDK 用于 C/C++ 嵌入式软件开发和调试,其基于 Eclipse 开源框架,并可提供系统性能监测功能,以便于用户在运行时对系统性能进行监测。

就使用 Linux 操作系统的用户而言,赛灵思可提供 PetaLinux ( 嵌入式 Linux SDK)。它可提供多面的 Linux 操作系统工具流程,能带来全面的配置、构建及部署环境。

Page 13: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 13

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

硬件资源有限乃至根本没有硬件资源的团队因开发 RTL(VHDL 或 Verilog)所需的专业技术不足,一直面临严峻挑战,而 Zynq UltraScale+ MPSoC 则为他们提供了完美的解决方案,帮助实现可编程器件的全面优势。近期,赛灵思发布了 SDSoC ™工具,提供了熟悉的嵌入式 C/C++/OpenCL 应用开发体验,包括简单易用的 Eclipse IDE 和用于异构 Zynq UltraScale+ MPSoC 部署的全面设计环境。为缩短编程时间,SDSoC 工具还提供了系统层剖析、自动化软件加速、自动化系统连接生成等功能和库。它还支持终端用户开发人员快速定义、集成和验证系统级解决方案,并为终端客户提供定制的编程环境。用于视频数据分析和处理的复杂算法用高级软件编写,可用 SDSoC 工具在 PL 中实现加速。它能缩短开发周期,同时提升性能。

应用示例Zynq UltraScale+MPSoC 的可扩展电源、高性能和专用引擎使其成为许多应用的理想选择。

视频会议应用Zynq UltraScale+ MPSoC 支持高端视频会议端点。视频会议端点是用来进行点对点视频通话的终端。一个完整的双向视频会议系统由一个视频摄像头和一个基本单元组成,该基本单元与每个位置的视频显

示器连接。两个基础单元间的通信在 IP 网络上进行。视频基础单元由带有集成型片上视频端口的 DSP 组成,用于处理音频和视频编码/ 解码。

逻辑资源和收发器可用来连接 UHD-4K 视频摄像头以采集原始视频,并将其馈送至已连接的存储器中。DSP 块资源用来对采集到的数据进行图像处理,而处理后的数据转发给集成 VCU 进行压缩。使用运行于 APU 子系统之上的应用软件将压缩后的数据进行分组,并通过以太网将其以流媒体的形式传输到远程端点。

终端端点也能从远程端点接收压缩数据,用 VCU 将其解码,并存储在已连接的存储器上。在 PL 中运行的软视频处理块 IP 能缩小从摄像头采集到的原始数据,并将其与解码数据混合,随后将其提供给显示控制器,在 PS 或 PL 的软 IP 中实现。

GPU 可用来创建屏幕显示 OSD,其输出可与来自视频处理单元 (VPU) 的视频输出混合,将其发送到显示控制器,并在监测器上显示。参见图 8 和图 9.

Page 14: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 14

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

处理系统

可编程逻辑

处理系统

APU音频编解码器、

多媒体应用、A/V Mux/De-mux

图像处理器图像传感器

管道、加速分析

视频处理器扩展、叠加、

封装、整合

DDR帧缓冲器、视频存储器、编码器

区、解码器区域、图形存储器

DDR解码器区域后

处理显示

以太网

存储器控制器

DP 子系统

采集 编码器 编码器

显示子系统

VCU 模块

音频处理器音频接口

应用处理器单

实时处理器单元

可编程逻辑 视频编解码

DDR 控制器

安全 功耗

ECC 支持

复位系统配置安全单元

浮点单元

32KB I-缓存 w/ 方

32KB D-缓存 w/

ECC

32KBI- 缓存w/ 方

32KBD- 缓存

w/ 方

存储器管理单元

加密与验证

向量浮点单元

存储器保护单元

可定制逻辑

块 RAM

通用 IO

高性能 HPIO

用于视频会议的 VCU 用于 OSD 生

成的 GPU

用于运行应用的 ARM

用于主板与面板连接的 DP

用于高级视频处理的可编程逻辑

高密度 HPIO

高速 SERDES

安全启动

电压 / 温度监测器

功耗管理单元

全功耗域

低功耗域

电池功耗域

A 至 D 转换器

温度监测器

功耗监测器

休眠模式定时器

系统 MPU

看门狗定时器

显示端口

四 -SPI NOR

时钟 /PLL

通用连接

压缩的 A/V 流输入 / 输出

摄像头输入

音频输入

图 8: 视频会议应用

图 9 :利用 Zynq UltraScale+ MPSoC

Page 15: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 15

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

数据中心与云计算领域的视频转码视频转码是指将媒体资产从一种格式转为另一种格式的过程,从而可在不同平台和设备上查看视频。大多数情况下,进行视频转码是由于以下一种或多种情况:

• 目标设备不支持原始数据的格式。

• 目标设备容量有限,需减小原始文件的大小。

• 必须将不兼容或过时的文件格式转为现代格式,从而使新设备更好地支持。

视频转码流程通常分为两步。第一步是解码,可将原始数据转为非压缩格式。第二步是对数据重新编码,即可将数据以所需的格式传送到新设备上。

随着互联网上 Netflix 和 YouTube 等流行网站的流媒体不断增长,而且 UHD 4K 摄像头在市场上地位日益突显,需要大量存储和带宽。服务多样化不断发展,高清视频的日益普及,以及超高清格式(如 UHD)的出现,对编码效率的强烈需求远超诸如 H.264/AVC 等现有编解码器的能力。当更高的分辨率伴随着立体声或多视点捕获和显示时,需求就更为强烈。H.265/HEVC 编解码器的设计旨在支持 UHD4K 和 UHD8K,并且有关工具能充分发挥并行架构的优势。与同等质量水平的 H.264 编码内容相比,HEVC 标准能够削减约 50% 的带宽占用。

大部分数据中心采用不同的压缩格式存储视频,但传输视频流的方式则需参照接收器所支持的格式。为支持有关拓扑,数据中心需要根据目标支持的格式将一种视频格式转码为其他格式。

在这种拓扑中,Zynq UltraScale+ MPSoC 器件非常适合高性能转码,因为它支持当前部署的技术 (H.264/AVC) 和未来新一代编解码器标准 (HEVC)。它还具有在可编程逻辑中编程不同的硬件编解码器的灵活性,从而支持各种编解码器标准。如果在数据中心或云计算系统中部署为加速器,Zynq UltraScale + MPSoC 上的 VCU 就能加速转码过程。例如,移动用户录制 H.264 格式的直播视频,并将视频上传到云服务器以便将来播放。如用户希望在仅支持 HEVC 格式的工作站上播放云端存储的视频,那么工作站可请求服务器进行内容转码,并以 HEVC 格式发送视频。在接收到工作站的请求后,服务器利用集成型 VCU 作为编解码器加速器执行从 H.264 到 HEVC 的转码,并将视频流传输至工作站。如图 10 所示。

Page 16: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 16

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

图 10 : 视频转码

实时转码的另一个应用是监控摄像头,摄像头支持 H.264 压缩,但播放设备支持 HEVC 编解码器。在此情况下,Zynq UltraScale+ MPSoC VCU 能完美匹配相关要求,因为它能从监控网络 IP 摄像头接收 H.264 压缩数据,然后用 VCU 模块将其转码为 H.265,再将其传输到目标播放设备显示播放内容。

汽车全景查看系统汽车全景查看已改变了驾驶体验,而 GPU 是推进该技术发展的主要力量。全景摄像系统是一种新兴的汽车高级驾驶辅助系统 (ADAS) 技术,允许司机看到车辆周围 360 度全景视图,从而帮助司机安全泊车。

基于全景视觉图像解决方案的实时渲染利用虚拟摄像机在 GPU 上重建全视觉测距,其中虚拟摄像机参数从实体摄像机克隆并在 GPU 上实现,生成随实时参数变化的虚拟场景图像。Zynq UltraScale+ MPSoC 非常适合这一领域,因为 GPU 具有极高效的固定功能单元。

GPU 马力用来完成综合,以阐释复合视图,生成输出像素。生成的像素可能是两个像素的组合(如输出处于重叠区)或单个像素(如输出处于非重叠区),用几何查找表 (LUT) 从输入帧提取该像素。几何 LUT 中的每个条目指定摄像机 ID 和输入帧的坐标,从而生成当前位置的输出像素。网表流程随后生成输出帧。给定一个特定的输出分辨率,每个输出位置都可以通过投影和透镜转换到输入图像中的一个位置来映射到输入图像。网表包括车辆周边环境位置的 3D 世界坐标和用于从给定位置的相邻摄像机观察场景

VCU 模块

云服务器

PCIe 接口

解码器 H.264 编码器 H.265

Page 17: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 17

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

进行纹理映射的相关输入位置。将输出表示为碗形,其高度根据距车辆中心的距离而变化。将包括输出网格和相关纹理映射的网表集合传递给图形处理器做进一步的渲染。应用结合网表也能生成混合 LUT,除了网格表,应用程序还可以生成一个混合 LUT,它可以对每个位置接收到的图像强度信息的线性组合进行编码。采用 GL_OES_EGL_image_external 延伸,将摄像机 YUV 图像作为纹理传输给 GPU 进行渲染。如图 11 所示。

典型配置

左摄像头前摄像头

右摄像头

后摄像头车辆传感器•速度•转向角度

图 11 :全景视图

全景视觉系统从四个鱼眼摄像头接收输入视频流,并创建合成全景视图。该系统利用几何 LUT 编码的映射来创建拼接的输出图像。如图 12 所示。

透镜变形修正

3D 到 2D 投影转换碗形生成器

3D 网表

输入帧缓冲器摄像头 2

输入帧缓冲器摄像头 3

输入帧缓冲器摄像头 1

输入帧缓冲器摄像头 0

[ 摄像头 D, x, y] [ 摄像头 D, x, y] 重叠 (4,1)

重叠 (3,4)

摄像头3

摄像头 1

网格 X,Y位置

网格 Z 位置

摄像头2

摄像头0

重叠 (1,2)

重叠 (2,3)

图 12 :综合复合视图

Page 18: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 18

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

Zynq UltraScale+ MPSoC 优势Zynq UltraScale+ MPSoC 的灵活性能加速计算密集型应用程序,在 GPU、CPU 和 PL 之间共享工作负载,在 PL 中可卸载复杂的算数计算以实现硬件加速,并且在 APU 上可预先计算 OpenGL 着色语言 (GLSL) 一致变量。GPU 着色器核心上的计算仅适用于顶点和片断之间不同的值。整批顶点中所有保持常量的值在 CPU 上处理最为有效。

在某些任务中,即使对于非常大的数据集,CPU 可轻松地胜过 GPU。此外,平台上有可编程逻辑能为 OpenGL 矩阵提供硬件加速,并为复杂 3D 模型提供闪电计算。图形系统通过流水线操作序列生成图像,通常将其中最慢的阶段称为流水线瓶颈。三角形等单个图形原语具有单一图形流水线瓶颈。但是,当渲染包含多个原语的图形帧时,瓶颈可能会发生变化。例如,如果应用程序先渲染一组线条,再渲染一组亮的且有阴影的三角形,那么瓶颈将可能发生变化。由于某些流水线阶段在 CPU 上执行,其他阶段在 GPU 上执行,瓶颈会不断变化。Zynq UltraScale+ MPSoC 封装了多个处理引擎和 PL,通过提供灵活性在 GPU、PL 和 CPU 之间执行计算的工作分配,消除性能瓶颈并提高整体吞吐量从而帮助 GPU 加速 2D 和 3D 图形的处理。

结论Zynq UltraScale+ MPSoC 堪称名副其实的异构多处理器SoC 平台。所谓“名副其实”,是指其远远超越高性能 64 位处理器耦合可编程逻辑的范畴。它采用专用引擎进行实时处理、图形处理以及视频编码与解码。这样用户就可以选择在何处实现算法,从而优化系统性能和功耗。Zynq UltraScale+ MPSoC 在软硬件层面都能实现完全的灵活性,同时集成了嵌入式市场上有史以来最多样化的专用引擎。

Page 19: 赛灵思面向视频编解码器和图形 引擎的前沿多媒体解 …...WP497 (v1.0) 2017 年 10 月 23 日 china.xilinx.com 3 赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

china.xilinx.comWP497 (v1.0) 2017 年 10 月 23 日 19

赛灵思面向视频编解码器和图形引擎的高级多媒体解决方案

修订历史下表是本文档的修订历史:

修订描述日期 版本2017 年 10 月 23 日 v1.0 赛灵思初始版本

免责声明本文向贵司/您所提供的信息(下称“资料”)仅在对赛灵思产品进行选择和使用时参考。在适用法律允许的最大范围内 :(1)资料均按“现状”提供,且不保证不存在任何瑕疵,赛灵思在此声明对资料及其状况不作任何保证或担保,无论是明示、暗示还是法定的保证,包括但不限于对适销性、非侵权性或任何特定用途的适用性的保证 ;且(2)赛灵思对任何因资料发生的或与资料有关的(含对资料的使任用)何损失或赔偿(包括任何直接、间接、特殊、附带或连带损失或赔偿,如数据、利润、商誉的损失或任何因第三方行为造成的任何类型的损失或赔偿),均不承担责任,不论该等损失或者赔偿是何种类或性质,也不论是基于合同、侵权、过失或是其他责任认定原理,即便该损失或赔偿可以合理预见或赛灵思事前被告知有发生该损失或赔偿的可能。赛灵思无义务纠正资料中包含的任何错误,也无义务对资或料产品说明书发生的更新进行通知。未经赛灵思公司的事先书面许可,贵司/您不得复制、修改、分发或公开展示本资料。部分产品受赛灵思有限保证条款的约束,请参阅赛灵思销售条款 :https://china. xilinx.com/legal.htm#tos ;IP 核可能受赛灵思向贵司/您签发的许可证中所包含的保证与支持条款的约束。赛灵思产品并非为故障安全保护目的而设计,也不具备此故障安全保护功能,不能用于任何需要专门故障安全保护性能的用途。如果把赛灵思产品应用于此类特殊用途,贵司 /您将自行承担风险和责任。请参阅赛灵思销售条款:http://china.xilinx.com/legal.htm#tos

汽车应用免责声明如将汽车产品(部件编号中含“XA”字样)用于部署安全气囊或用于影响车辆控制的应用(“安全应用”),除非有符合 ISO 26262 汽车安全标准的安全概念或冗余特性(“安全设计”),否则不在质保范围内。客户应在使用或分销任何包含产品的系统之前为了安全的目的全面地测试此类系统。在未采用安全设计的条件下将产品用于安全应用的所有风险,由客户自行承担,并且仅在适用的法律法规对产品责任另有规定的情况下,适用该等法律法规的规定。