“我希望使用dsp编程,让我的应用也能利用异构计算。不过,它究竟是如何提升处理功能,改善计算效率,降低功耗的呢?”
软件开发者的大多数问题最终均可归结为这一点。在上一篇文章中,我讲述了开发人员利用hexagon sdk 3.0的hexagon™ vector extensions (hvx) 创建的应用。他们利用sdk开发视频、计算成像、计算机视觉(cv)、机器学习及全时服务用例,这些用例往往要求更多的cpu资源,同时也是耗电大户。
本文中,我将给出三点理由,说明他们为什么要使用sdk 3.0。
1. 提升处理能力:每个时钟周期同时处理高达 1024位数据
hvx宽度——可同时处理的数据位数——每个时钟周期应用可执行更多工作。
标准移动cpu为32位指令宽度,其计算协处理器扩展4倍,达到128位宽度。基本hexagon处理器为64位指令宽度,是移动cpu正常宽度的两倍,而hvx协处理器扩展了8倍,达到1024位宽度。如下图红色所示,hexagon dsp可结合两个512位矢量模式单元,在单一时钟周期处理1024位数据。hvx使用超长指令字(vliw)实现惊人的工作宽度。因此,内置hvx的hexagon拥有比标准移动cpu 高出8-32倍的性能。
hvx 还具有另外一个重大优势。对移动cpu而言,利用了协处理器,则标量处理器就处于空闲,鱼和熊掌不可兼得。而对hexagon处理器来说,协处理器和标量处理器可以同时执行指令,因此,可两者兼得。
为什么这一点很重要?假设您在移动cpu控制代码模式进行处理,然后切换到协处理器的计算模式。此时,如果您需要使用控制代码,就必须暂停,从协处理器返回到主cpu。而利用hexagon处理器,dsp的控制代码处理器和hvx的计算代码处理器可同时运行,紧密耦合控制和计算代码。这样,dsp可以获取hvx计算结果,并且用于下一个时钟周期的控制码决定。corephotonics和smi在他们的应用中利用了hvx紧密耦合的控制和计算代码。
2. 提高计算效率:绕过 cpu的流式处理
hvx的流式处理模式适合于极低功耗相机处理。将数据直接从相机流传输到hexagon dsp本地内存(二级缓存),hvx使得超越摄影的新用例成为可能,比如计算机视觉(cv)、计算成像和机器学习。
hvx绕过执行相机处理功能的ddr存储器控制器和外部存储器,而利用现有二级缓存进行处理,旨在降低摄像头和视觉处理算法延迟、耗电量和cpu/ddr访问需求。
在相机流处理的例子中,比方说您的应用需要将数据从相机感光元件移动到设备处理器。如果没有hvx,应用需将数据读取到ddr内存,然后由cpu读取ddr执行计算,这样,在真正的处理还没有开始之前就消耗了数十毫瓦电量,并且造成ddr内存往返延迟。利用hexagon sdk 3.0,您可以在hexagon dsp的hvx中直接处理流式传输,避免临时存储,省却传输步骤,而且还不用涉及到cpu。
事实上,qualcomm® snapdragon™处理器的cpu和其他元件的设计就是在整个操作中保持空闲。通常情况下,如果其它元件参与的话,整体芯片会消耗更多电量,但是,如果只需要dsp就能满足要求,就没有必要调用这些元件。
通过直接在dsp运行数据,hvx可以在本地处理数据,尽可能地降低总耗电量。这一点对于集成视觉和机器学习的应用来说尤其有用,可以在隔离状态下立即处理相机数据。如果dsp上的机器学习确认某事件需要额外的处理能力,hvx可以触发调动芯片上的其他元件。
3. 降低功耗:始终在线感知
智能手机越来越聪明,如果它们能够始终保持警觉,就更加有用了。保持警觉的重要一环就是依赖dsp的始终在线感知:
hvx 解决了始终在线感知领域两个挥之不去的问题。首先,始终保持警觉需要消耗巨多电量。但是,运行在dsp的hvx 本身耗电量极低,而且无需调动其它元件就可以做到始终在线感知。其次,视觉一直是最难以捉摸的始终在线感知能力,因为相机数据流式传输时会经过主芯片。但是,hvx 打通了一条直接从相机传输数据到dsp的通道。和其他感知能力一样,借助hvx,始终在线的视觉只有在需要额外处理能力时才会调用芯片的其它元件。
以前的文章中我介绍了hexagon dsp编程将带来高性能、低功耗的优势。您不妨试试它在始终在线感知状态下的表现。
接下来...
您现在可以开始使用hvx了,因为搭载了snapdragon 820处理器的商业设备,包括oneplus 3、htc 10、samsung galaxy s7、lg g5内置hvx。一些厂商依靠hvx使他们产品的相机和视频功能独树一帜。
hexagon sdk 兼容 windows与linux。下载hexagon sdk 3.0,看看您如何针对自己的应用提高处理能力、改善计算效率、降低耗电量。
始终在线的语音——设备关闭,等待您称呼它,识别您的语音或关键字。
始终在线的触摸——设备在后台监控屏幕,在您触摸屏幕时唤醒。
始终在线的传感器——罗盘、加速度计等传感器连接到传感器中心,等待需要额外处理的事件。
始终在线的视觉——相机将数据流传输到设备,仅在出现阈值事件才触发处理。
更多qualcomm开发内容请详见: qualcomm开发者社区 。
液体涡轮流量计测量度下降的原因有哪些
魅族Note 9或下月发布 华为P30将搭载麒麟980处理器
新唐科技W567C100控制器介绍
简述噪声的产生机理和来源
线性电路的基本定理
Qualcomm Hexagon SDK 3.0 ——DSP 功能与效率
在数字货币的助推下,NFC是否能够再度卷土重来
智能家居种类和分类
上海未来一公里文旅科技节投石科技景观交互艺术让植物飞起来
算力至上?AI芯片的大对决
基于89C51汽车防撞防盗报警系统电路设计
群联CEO:NAND市场回暖迹象显现 部分主控芯片供不应求
高通将发布骁龙660 联发科市场竞争压力加大
Quantenna选择莱特波特进行测试其802.11ac 高性能芯片组
漏极电压及电流的测量技巧
ic设计是芯片设计吗 数字ic设计流程及工具介绍
如何保障激光测径仪测量数据精度
CR929已经进行了风洞研究实验
工业射频识别技术的应用:RFID智能仓储管理方案
国家财政部领导一行莅临航芯调研指导工作