GPU是提高HMI用户体会的根底技能,能够完结屏幕/UI组成,包含多个源(ISP/照相机、视频等)的多层混合、图画过滤、字体烘托/加速、3D作用(改换、透视等)等许多其他功用。Vivante具有一条依据GPU技能的归纳产品线,包含GC Vega系列和GC Nano系列。
GC Vega系列适用于需求最新、最好GPU硬件和功用的SoC,这些功用包含:OpenGL ES 3.1,完好安卓扩展包(AEP)支撑,包含硬件镶嵌/几许着色器(TS/GS)、DirectX 12、CTM(closetothemetal) GPU编程、混合射线盯梢、零驱动开支、传感器交融以及针对运用OpenVX、OpenCV或OpenCL视觉处理的GPU核算,都归入到最活跃的PPA(功用、功耗和面积)和全功用规划方案中。方针商场掩盖高端可穿戴设备和近距离/中距离移动设备、4K电视以及用于服务器虚拟化的GPU。
GC Nano系列则归于另一领域,适用于为具有GPU烘托的HMI/UI的可穿戴设备和IoT设备(智能家庭/家电、信息设备……)等消费类产品带来革命性推进的器材。该内核专为在CPU、内存(片上和DDR)、电池及带宽十分有限的资源受限型环境下作业而规划。GC Nano还进行了优化,与需求在30/60fps及以上速率下供给UI组成加速的较小尺度的MCU渠道合作作业。GC Nano系列的优势包含:
·优化的硅片面积和功率。硅片占位极小,可使受限SoC的单位面积功用到达最佳;这就意味着,厂商可在不超出硅片/功率预算且确保活络、滑润的UI功用的前提下,在其规划中增加增强图画功用。GC Nano可在超低功耗和热量(最小动态功率和挨近零的走漏功率)下最大极限地延伸电池寿数。
·智能组成。Vivante的即时形式烘托(IMR)架构经过智能化的办法,仅组成和更新产生改动的屏幕区域,削减了组成带宽、推迟、开支及功率。组成能够经过两种办法进行:运用GC Nano组成一切屏幕层(图形、布景、图画、视频、文本等);或经过紧耦合的规划,其间GC Nano与显现控制器/处理器(第三方或Vivante DC核)一起作业完结UI组成。想要进一步削减带宽,还能够经过Vivante的DEC紧缩IP核对数据进行紧缩/解紧缩。
·可穿戴和IoT 设备即用。超轻量级向量图形(GC Nano Lite ) 和OpenGLES 2.0(GC Nano、GC Nano Ultra)驱动、SDK及东西可很容易地将可穿戴设备及物联网设备屏幕过渡到消费级图形界面。GC Nano包还包含教程、示例代码及其他文档,以协助开发人员优化或移植其代码。
·为MCU/MPU渠道规划。可卸载并极大下降体系资源的有用规划,包含完好UI/组成及显现控制器集成、最小CPU开支、无DDR且仅含闪存的装备、带宽调制、CTM GPU驱动以及针对可穿戴/IoT设备的、可削减硅片尺度的GPU特性。软件代码量极小,削减了对内存巨细的约束,缩短了GPU初始化/发动时刻,一起关于需求一键显现信息的屏幕,能够瞬间发动UI组成。
·生态体系和软件支撑。开发人员能够运用轻量级NanoUI或OpenGL ES API进一步扩展或定制解决方案。业界关于现有Vivante产品供给的许多支撑,包含掩盖字体、插图东西及Qt开发环境的重要合作伙伴的、针对Android、AndroidWear及嵌入式UI解决方案的GC Nano/GC Nano Ultra产品线。
·核算即用。未来几年内,可穿戴/物联网(处理)节点数量将以数百亿个的速度增加,由于节点始终坚持敞开、互联和处理状况,数据网络的带宽或许成为问题。GC Nano经过在节点上进行超低功率处理(GFLOP/GINT ops),且仅依据需求发送有用的紧缩数据,能够有用缓解带宽压力。事例包含传感器交融核算和图画/视频带宽下降。
Vivante的软件驱动栈、SDK以及东西包将支撑NanoUI API,其可为无操作体系/无DDR 的GC Nano Lite供给CTM GPU加速,一起还可为更先进的解决方案(包含专有或高档操作体系,例如嵌入式Linux、Tizen、Android、AndroidWear 及其他在最小内存空间中需求OpenGL ES 2.0+的RTOS)供给OpenGLES 2.0 API(3.x可选)。这些各式各样的操作体系/无操作体系渠道将构成下一代可穿戴设备和物联网的根底,为每个人带来共同的最佳特性化体会。GC Nano驱动包含主动节能、智能组成与烘托以及带宽调制,使OEM厂商和开发人员能够运用超轻UI/组成或3D图形驱动为可穿戴设备和物联网构建丰厚的视觉体会。
GC Nano的许多立异创建了一个完好“视觉”可穿戴设备MCU/SoC渠道(图1),能够完结PPA和软件功率最优化,然后改进设备的全体功用和BOM本钱,一起供给最紧凑的UI图形软硬件开支,不会下降或约束屏幕上的用户体会。跟着可穿戴设备和物联网逐渐融入人们的日子,这些新的GPU将会越来越多地使用到身边的别致产品中。
3D UI烘托的趋势和重要性
下一代产品将选用智能手机、平板电脑及智能电视中精心策划的UI规划元素,并将它们整合到物联网设备及可穿戴设备中,使产品坚持一致界面。类似的UI外观(look -and-feel)能够削减运用学习曲线,加速设备选用速度。别的,由于不同设备的处理才能/功用水平不同,会依据较小尺度屏幕选用最低水平装备(基准功用),可是跟着设备功用上升到操作体系供货商区分的更高层级,还可增加附加特性/更高功用。
更新后的UI包含以下新特性:
·动画图标—为用户轻松出现选中的菜单项或输入光标指向的方位,运用户无需花费时刻寻觅屏幕上的光标方位。在选中图标前,图标能够旋转、摇摆、弹出、闪现等。
·实时动画—动态内容能够将简略的布景(壁纸)转化成动态的移动场景,为用户设备增加特性润饰。布景图画和规划也可调配装修、照明、主题及气氛等完结特性化设置。一些大型白色家电制造商正在测验这些概念规划,期望不远的将来能够展示一二。
·3D作用—文本、图标和图画可逾越简略的暗影作用,其间,GPU功用可运用强壮的着色器指令烘托,为UI各个部分增加3D特征(例如:转盘、视差、深度含糊、部件/图标烘托成3D/2D形状、图标运动的程序/模板动画、粒子体系的物理仿真、透视图等)。这些作用能够运用GCNano的超低功率OpenGL ES 2.0/3.x流水线完结。
GC Nano的架构在HMI UI组成方面表现出色,能够出现3D UI作用并下降带宽和推迟,详见下文。
GC Nano带宽核算
本节将会逐渐叙说多种用户界面场景示例,并对GC Nano GPU烘托的30和60fpsUI HMI核算体系带宽。
组成办法
将评价的屏幕显现组成有两种挑选:榜首,GPU完结一切层(或外表,包含视频)的整个屏幕组成,显现控制器仅将已组成的HMI U I输出到屏幕上(图3);第二,显现控制器对GPU和视频解码器(VPU)组成的层进行终究的混合和兼并,再显现出来(图4)。顶层示意图未显现DDR内存业务,但将在后续UI进程的描绘中给出。
UI带宽核算
核算假定。GC Nano UI处理选用ARGB8(每像素32位)格局。当GC Nano进行全组成时,GPU会主动将16位YUV视频格局转换成32位ARGB格局。
视频帧为YUV422(每像素16位)格局,并且与屏幕尺度分辨率相同(GC Nano将输入视频作为视频纹路对待)。终究组成的帧为ARGB8格局(每像素32位)。读取视频的恳求突发长度为32字节。GC Nano UI恳求突发长度为64位字节。写出UI烘托和终究帧的写长度为64字节。
这些状况假定UI烘托为32位。假如显现格局为16位(适用于较小屏幕),则以下所列的带宽核算将会大大下降。带宽核算将以WVGA(800×480)和720p(1280×720)为例。本例中,需求改写/更新的每帧UI像素的巨细包含以下份额:15%(规范UI);25%; 50%(最差UI)。
·GC Nano全UI组成。图5 描绘了来/去DDR内存的数据流运用GC Nano进行整个UI组成的进程。选用这种办法的优点包含:运用GPU在图画或视频上进行一些前后处理、过滤、为图画/视频增加规范3D作用(视频转盘、曲折/去曲折等)以及增强实境(GC Nano在视频流顶部掩盖烘托的3D内容)。由于能够对GC Nano编程使其履行图画/UI相关使命,这种办法灵敏度最高。
显现控制器包含一个能够直接从体系内存中读取数据的DMA引擎,其支撑多种数据格局,包含ARGB、RGB、YUV444/422/420及其重排格局。
GC Nano组成UI的架构优势
GPU烘托包含两个首要架构,即瓦片纹路烘托(TBR)和直接烘托(IMR)。TBR在全帧一切相关信息都可用时,将屏幕图画分化成方块并进行烘托。在IMR下,图形指令直接向GPU发布并当即履行。Vivante架构中的技能能够除掉帧中躲藏或不行见的部分,因此不会在烘托终究将被去除的场景部分上糟蹋履行、带宽和功率等。Vivante的IMR在为最新AAA级游戏(运用全硬件加速出现精密的几许图形和PC水平的图形质量)烘托传神的3D图画时也具有显着优势,例如其高端GC Vega内核(DirectX 11.x、OpenGL ES 3.1及安卓扩展包AEP)可支撑高档GS/TS着色器等。注:GC/TS等一些高档特性不适用于GC Nano系列。
UI瓦片纹路烘托(TBR)架构
下面阐明在TBR架构下烘托UI的进程。
·场景分化成块。TBR架构将图画分化成独立的瓦片(小方块)进行烘托。每个方块都有自己的数据库/指令列表(方块列表),并且在GPU开端烘托和进入下一帧之前,整个帧的一切指令都需处于可用状况。数据库/方块列表缓冲区的巨细在烘托(或许导致溢出)前也是不知道的,并且依赖于帧—简略帧数据库较小,而杂乱帧数据库较大。任何方块在处理进程中产生改变都意味着整个帧数据库需求再次更新,并且在某些状况下,需求改写全帧并重启。
将预处理进程和分块进程相结合,可完结以下作用。图8展示了当时帧的状况,一切的UI外表都被分割为三角形,整个帧被分块,并准备好进行烘托。假如帧不产生任何改变(静态UI),则可按原样烘托。
TBR UI烘托总结
从上述进程可看出,由于预处理的UI三角形需求首要贮存在内存中,然后在运用时会被读取,依据TBR的GPU具有额定开支,这就增加了UI烘托的时延。TBR GPU也需求许多的片上L2缓存来存储整个帧(方块)数据库,但跟着UI杂乱性增强,片上L2缓存巨细(裸片面积)只能一起增加,或TBR内核只能不断溢出至DDR内存,这会导致时延、带宽和功率增加。TBR具有承认和追寻U I的哪些部分(方块)和哪些外表产生了改变的机制,可尽或许简化预处理进程,但关于具有许多移动区域的较新UI来说,这仍构成了约束。此外,跟着屏幕尺度/分辨率和内容杂乱性的增加,在一切屏幕上,由此导致的时延在运用一致UI的谷歌、微柔和其他操作体系渠道上乃至显得更为显着。
UI的直接烘托(IMR)架构
最先进的GPU运用的是IMR技能,它是依据方针的烘托技能,在PC(台式机/笔记本)显卡中直到Vivante的GC系列产品线上都能看到。IMR技能使GPU能够烘托传神的图画,并制作屏幕上最新的杂乱、动态、交互式内容。在该架构中,图形API调用指令被直接发送至GPU,收到指令和数据后马上进行目标烘托。这一流程显着提高了3D烘托功用。
对UI来说,无需进行预经过处理,这消除了上一节中看到的TBR相关推迟。此外,UI中加入了许多智能业务消除机制,使得帧中的躲藏(看不到的)部分乃至不用经过GPU流水线发送;或是假如躲藏部分现已处于发送状况(例如,UI外表产生改变),它们也能够当即丢掉掉,这样流水线即可持续履行有意义的作业。
出于灵敏性考虑,组成处理进程在着色器中进行,Vivante GPU能够主动增加矩形图元,以便将整个屏幕归入考虑规模,从而完结100%的功率(运用两个三角形仅发挥50%的功率)。关于简略UI和3D帧而言,内存带宽等效于TBR架构,但关于更高档的UI和3D场景来说,TBR规划需接入远超过IMR的外存,由于TBR的片上缓存中无法包容许多的杂乱场景数据。
依据目标的IMR UI烘托。IMR GPU是依据目标的,即每个UI外表都被视为一个待烘托的个别目标。GPU收到与一个目标的指令列表后,它会当即履行指令,并制作出外表。与此一起,GC Nano中也会增加一个新的图元,使矩形图元能够被烘托,从而完结100%的功率(运用两个三角形制作矩形仅有50%的功率)。
附加UI内容被视为新目标。新的UI外表(弹出式视窗、告诉、新内容、新窗口等)也仅被视为目标进行处理。
IMR GPU 是下一代动态UI 的抱负之选。GPU收到某一目标的指令列表后,就会当即对其进行静态或动态烘托。一起,GPU也会对各个目标进行测验,运用各种除掉和深度/Z办法确认哪些是看得见的部分,并丢掉躲藏的部分。目标中看不见的部分会被马上丢掉。那些开始看得见(坐落GPU流水线中)但后来被躲藏(弹出告诉掩盖了一个外表)的部分会被马上摒弃,这样GPU就能够对另一个可视目标进行烘托。与TBR不同的是,IMR在处理前不用等候整个帧指令列表。
IMR UI烘托总结。关于动态3D UI、杂乱3D图形和映射使用等,IMR在推迟、带宽和功率方面更具优势。内存耗费与内存I/O是IMR的另一显着优势—对新式动态实时3D UI来说,IMR实属不贰之选;关于规范UI来说,IMR和TBR旗鼓相当,但IMR 可为SoC / MCU 赋予灵敏性且更适用于未来。注:在曩昔,TBR更适用于简略UI和简略的3D游戏(矩形/多边形数量少、杂乱度低),由于TBR能够将完好的帧方块数据库保留在芯片(L2缓存)上。但跟着抢先的智能手机、平板电脑和电视的开展,UI技能也在不断进步,这使得IMR技能越来越受欢迎。