微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 行业新闻动态 > ARM不只有MCU,GPU Mali的底层架构分析

ARM不只有MCU,GPU Mali的底层架构分析

时间:07-28 来源:微型计算机 点击:

缓存、可以访问内存或者CPU缓存的内存控制器,最后还有系统总线AMBA 4 ACE-Lite。对于最强悍的Mali-T760MP16而言,ARM的设计方案中配置了一个任务管理单元和内存控制器,而为了满足16个核心的计算资源需求,ARM设计了两组L2高速缓存和总线接口。


ARM一直在规划有关通用计算的内容。


Android Extension Pack中加入了大量目前的安卓系统无法支持的新技术。

说完了外围和全局设计,下面来看看核心本身,尤其是最重要的三管线设计。这个模块是整个GPU计算的核心,它由多个ALU单元、读/写单元和纹理单元组成。虽然很多的GPU设计基础部分都需要这三个模块,但是ALU可变设计着实非常少见-在不同型号的GPU上,ARM在相同的架构中使用了不同的ALU。

这句话听起来有点拗口。举例来说,在Mali-T760上,每个"三管线"包含了2个ALU,这也是Midgard中最常见的配置。此外,Midgard也拥有每个"三管线"中包含1个ALU和4个ALU的方案,前者比如Mali-T720,后者比如Mali-T678,此外还有Mali T628和Mali-T760一样都是每个"三管线"内含2个ALU。当然,在不同的"三管线"中使用不同数量的ALU带来了一些连锁效应,ARM调整了ALU和纹理单元、读/写单元之间的比率以获得相应的性能。比如Mali-T678,每个着色器采用4 ALU设计,因此这颗GPU的内部指标和其它的产品都有所不同,在纹理单元上为了配合增多的ALU也相应增加了。实际上ARM在Midgard上尝试了多种不同的配置方案,最终确定了在Mali-T760上使用每"三管线"2个ALU、以及在定位低端的Mali-T720上使用每"三管线"1个ALU的方案,并进一步优化了这样的设计。Midgard的设计使得GPU的每一个计算管道在任何情况下都有自己独立的线程,这和目前比较常见的超标量架构有明显不同,常见的超标量架构的一些附加计算单元可以在一个线程中用于执行进一步的无阻塞指令,而Midgard的设计可能会消除一些瓶颈效应从而带来效率的提升。


Midgard的基本架构示意图。

在看完了有关ALU的内容,下面来分析一下纹理单元。Midgard的纹理单元可以在一个时钟周期中处理一次双线性计算,或者在两个时钟周期内完成一次三线性计算。需要注意的是,这里分析的是内容是基于Mali-T760的ROP单元和纹理单元比例,另外,在任何情况下Midgard中的纹理单元和像素单元的比例都是1∶1。接下来的内容在图表中没有画出来,也就是曲面细分单元。要知道Mali-T760宣称支持Direct3D 11.1,但是为什么在架构中没有硬件的曲面细分模块呢?这并非遗漏或者ARM在吹牛,这是Midgard的一个独特设计。

Midgard可以执行曲面细分,但是它没有使用固定的功能来完成几何创建的过程。Midgard使用了着色器硬件的部分来执行曲面细分,不仅仅是在Hull和域着色器阶段,实际的几何生成过程也发生在着色器中。这和之前我们看到的几乎所有的硬件都完全不同,因为迄今为止还没有出现不使用专门的曲面细分硬件但同时又完成曲面细分功能的产品出现,Midgard首个这样设计的方案。


Midgard的核心流水线示意图。


传统的曲面细分过程需要硬件执行操作,但是Midgard没有这部分内容,这令人感到疑惑。

ARM的消息指出,之所以这样设计,是因为他们考察了有限的晶体管使用、芯片体积以及专用曲面细分单元的优势后,最终决定的方案。事实证明,Midgard的着色器引擎可以以较高的比率完成曲面细分多边形处理,这意味着Midgard不需要专门的曲面细分单元,也意味着Midgard几乎不存在曲面细分瓶颈,因为Midgard的每个着色器都是曲面细分的处理模块。在节约了空间后,ARM还可以将有限的芯片面积用于增加着色器数量从而有效提高性能。


Midgard的扩展能力非常强悍,可以支持最多16个着色器核心扩展。

由于目前还没有实际产品可以看到,因此最终这个方案是否有效也只有ARM才能知道了。只有他们实际掌握了有关Midgard GPU曲面细分的性能的细节信息,但这样的设计已经使得Midgard变得极不寻常。另外需要考虑的一点是这样设计的能耗成本,我们暂时没有理由怀疑ARM这样设计所带来的空间或性能上的优势,但以通常的角度来说,一个专职的硬件模块会比通用性强的硬件模块有更好的性能表现乃至功耗比,这也是为什么我们看到有这么多的SoC GPU和桌面GPU比较相似的原因。

小结

在使用了令人诧异的硬件设计后,显然还有另外一个问题需要考虑,那就是实际性能。Midgard的"着色器曲面细分"设计是否能获得相应的性能呢?是否比使用传统硬件曲面细分要更出色呢?电能消耗是否划算呢?这一切目前还都是未知数,但仅从硬件上看已经

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top