-
发布时间:2015-8-29 阅读次数:1810
Qualcomm 在移动通讯应用领域方面一直是业界领导厂商,但很多人不知道的是,这公司除移动通讯本业务外,也掌握了许多关键技术来帮助改善使用体验。
Qualcomm 是世界少数拥有自有 DSP 架构的公司,事实上,他也是目前硕果仅存,唯一一家采用自有 DSP 架构的移动通讯方案供应商。Hexagon DSP 在 Qualcomm 方案中,兼顾着基频讯号与多媒体处理的运算需求,从过去以来一直使用着自有架构 DSP,即便是基于标准 ARM 架构的 Snapdragon 810 亦是如此。
逐渐重视异质运算需求
虽然 Hexagon DSP 是 Qualcomm 过去在其移动通讯应用方案中一直存在的运算架构,但过去 CPU 架构强势主导市场行销与消费者使用观感的时代,Qualcomm 只选择对其 OEM / ODM 伙伴开放自有 DSP 的应用,协助其客户制造出具备独特运算能力的终端,然而随着 CPU 重要性的减弱,Qualcomm 重新把自有 DSP 拉到檯面上,不仅强调其自有 DSP 对应用加速的帮助,更开放一般开发人员存取其运算能力,协助业界熟悉高通运算架构,而随着 Qualcomm 加入 HSA 联盟,Hexagon
DSP 更成为辅助高通打入异质运算领域的武器之一。
Hexagon 680 DSP
不论在自有客製化架构,或者是标准 ARM 架构中,Qualcomm 都使用由 ARM 所提供,但经过微调的 NEON SIMD 运算单元,藉以相容几乎所有针对标准 ARM 架构的一般应用。然而 Qualcomm 调整过的 NEON 在多媒体运算性能上却未必能够表现出更优秀的性能,原因在于一般应用多仅针对标准 NEON 结构或运算逻辑最佳化,在具备更宽资料通道的 Qualcomm 版 NEON 上执行往往会水土不服。Qualcomm 自有 Hexagon DSP 拥有独立的快取、汇流排与暂存器设计,理论上效能远高于
NEON 运算单元,Qualcomm 也把 Hexagon DSP 当作 NEON 运算单元的补充,期望能透过平行运算,分担从不同感测器而来的 SIMD 指令运算需求。
为何 Qualcomm 要强调 DSP?
目前 GPGPU 已经蔚为潮流,ARM 与 AMD 也都强调 GPGPU 在异质运算中的重要性,Qualcomm 为何还坚持走 DSP 的路?其实 Qualcomm 认为,GPGPU 虽然在大量平行运算中有性能优势,但功耗相对较难控制,在移动通讯平台上恐怕会产生发热或电力消耗快速的问题,加上 Qualcomm 认为自有的 Hexagon DSP 架构可兼顾功耗与性能表现,作为 CPU 和 GPU 之间的补充,亦可让整个平台拥有更好的反应速度与运算效能。加上 Qualcomm 本身的 GPU 其实支持
GPGPU 运算,所以能在各种不同的情境之下满足消费者的运算需求。
强化的应用配置与性能表现
过去的 Hexagon DSP V3 版仅针对音效处理,比如说音场、抗噪及低功耗解码播放等,较少针对多媒体编解码或照相功能的辅助,后续的 V4/V5 版本则增加了与多媒体解码单元及照相功能的互动,除强化 DSP 的应用广度,也让原本会消耗大量运算效能的计算得以从 CPU 分摊出来。藉由与 Hexagon 680 DSP 的协同运算,在照相功能方面可以快速的进行画质调整、强化,或者是其他特效的即时运算,亦能协助进行视讯解码或编码运算。V5 版亦增加了对Sensor的支持。
至于最新的 Hexagon 680 与之前的 Hexagon V5版 相较之下,又有什么改善?Hexagon 680 DSP 主要增加 Hexagon Vector Extensions / HVX 扩充指令的支持,可针对包含 VR、AR、视讯编解码、后期特效处理等各种运算需求进行低功耗运算。另外从基本运算单元的差别来看,Hexagon 680 与前一版 Qualcomm 自有 DSP 架构相较之下,由每个主频周期可执行 3 道执行绪进步到可同时执行 4 道执行绪,每个执行绪同样包含了 4 个 1024
bit 超长指令(VLIW),且同样具备动态丢弃閒置指令的能力。理论上,在相同主频的条件下,可增加约 3 成的效能表现。不过为了功耗考量,Hexagon 680 主频较 810 的 Hexagon V56 低了 10% 左右,换算之下,Hexagon 680 平均性能约较前代增加了 3 成以上。
另外,从製程和主频设定换算,一般运算状态下,Hexagon 680 平均功耗约为前代架构的 5~6 成。因为 Hexagon 680 DSP 设计上可取代 NEON 来加速多媒体运算,与 NEON 计算单元相较之下,同样的运算需求使用 Hexagon 680 DSP 可带来理论上最多 3 倍的性能改善,且同时还能降低功耗表现。
qualcomm snapdragon 810
比较值得一提的是,过去 Snapdragon 810 分别在 AP 和 Modeom 区块各内建 1 组 Hexagon V56 DSP,Snapdragon 820 则是在这 2 组 Hexagon 680 DSP 之外,另外增加 1 组超低功耗 Hexagon 680 DSP。这个超低功耗 DSP 模组直接与各种感测器连接,除确保包括运动感测、三轴、陀螺仪、GPS 等感测器可在各种状况下发生作用,迅速回应使用者的操作需求,同时并确保系统功耗可以同时维持在相对低的水准,不需动用到 CPU 的运算能量,没错,其作用等同于
1 个 Sensor hub。
Qualcomm 版的 CUDA,但更少人用
Hexagon 680 DSP 不支持标准的 OpenCL,仅支持自家的封闭函式库,也就是说,一般应用开发者仍难以针对此 DSP 架构撰写应用程式。虽然这是为了保护自家的智能财产,但同时也相当程度限制了平台运算性能的发挥,Qualcomm 似乎仅愿意让一般应用开发者取用 GPGPU 的运算能量,DSP 区块仍保留给 OEM / ODM 选择是否采用或开启的弹性
http://www.fashaoyou.net/Article/1212/82711.html