利用数据融合IP子系统加速IoT应用

作者:Rich Collins,产品营销经理,Synopsys公司

物联网(IoT)边界设备的巨大扩张对低功耗、“实时响应”功能的需求不断增长,这些功能包括传感器融合、图像和语音检测、手势识别和音频播放等。支持数据源的这种融合需要RISC和DSP处理能力的有效组合。

本文展示了如何利用集成的、预验证的、针对高效DSP性能和超低能耗优化的数据融合子系统加速开发高性能、成本优化的IoT系统并加快上市速度。

从传感器融合到数据融合

将基本传感器元件组合实现高级功能被称为传感器融合。例如,把来自加速度计、罗盘和陀螺仪的输入结合起来以跟踪3D运动在所有现代智能手机中都很常见。随着半导体供应商纷纷将传感器接口集成到他们的许多SoC(片上系统)产品中,包含传感器融合技术的系统数量不断扩大。

除了传感器处理之外,当今的IoT应用还需要越来越多的集成功能,需要支持语音和手势识别、音频播放和基本图像检测。执行这些功能需要更高级别的DSP处理能力,但同时必须以尽可能低的能耗来完成。数据融合已成为IoT边界设备的一项标准要求,以供处理诸如可穿戴设备、个人健康和健身设备以及无线耳机和扬声器等应用。

集成子系统所具备的优势

增加集成度可以让硅供应商的设备与众不同。现在,典型的“集成”解决方案涉及到把各种数据源接口整合到一个类似微控制器的架构中。如图1所示,该架构通常包括一个CPU,它通过一个片上总线连接到外设接口(ADC,SPI,I2C)以及片上内存(ROM,RAM,eFlash)。处理器连接到一个标准总线(通常基于AMBA),而所有的外设都连接到该总线。由于总线延迟和总线上的流量,该处理器和外设之间的处理需要三到七个时钟周期或更长时间。这在性能和功耗方面都是非常低效的。

图1:分立实施与集成子系统

图1:分立实施与集成子系统

与典型的基于总线的系统相比较,搭载DesignWare® ARC® EM处理器的集成IP子系统具有明显的优势,有助于简化集成工作,同时降低片上延迟和功耗。

ARC EM处理器提供了行业领先的能效比 – 这可以节省IoT 边界设备的关键电池电力。ARC EM DSP处理器把DSP指令以及MUL/MAC硬件添加到基础的RISC处理器中,以实现诸如语音/手势和音频播放等实时响应功能。通过提供许可的选项(例如FPU、MPU和microDMA),能够为客户带来灵活的实施选择。

基于ARC处理器的子系统实现能够消除与片上总线之间的接口,因为它能够以寄存器存取指令取代对I/O外设发出的加载/存储指令。使用ARC处理器的辅助总线映射外设块寄存器。这可以把I/O外设接口功能有效地吸收到CPU中,从而消除了总线和桥接器。以类似的方式,指令和数据内存都可以紧密耦合到处理器,从而消除外部总线并减少存取延迟。

ARC处理器和子系统还支持将任何硬件扩展组合添加到内核中:CPU扩展寄存器、辅助扩展寄存器或内存映射块。设计人员也可以添加32位定制指令。

充分利用这些高级配置和扩展概念,能够让最终客户进行高度优化的实现。

紧密集成的DMA节省了电力,提高了性能

在许多可配置子系统选项中,有一项是紧密集成的microDMA引擎。该DMA控制器能够让系统资源和外设独立于处理器对内存进行存取,即使在处理器休眠模式下。这可以实际节省时钟周期和动态功耗。

为了量化这一数值,我们比较了使用ARC EM处理器的两个基本子系统:一个具有紧密耦合的DMA,另一个则没有。通过使用集成的子系统SPI外设,以环回模式(主Tx -> 主Rx)发送一条1800字节的消息。两种实现的CPU时钟频率均为10 MHz,指令和数据内存(ICCM&DCCM)均为32KB。对每种情况测量有效时钟周期和动态功耗。

图2显示了不含有microDMA引擎的第一个子系统实现。图3显示了第二个实现,其含有紧耦合的microDMA引擎。

结果示于下面表1中。以相对较小的面积代价(添加microDMA逻辑增加了大约10K逻辑门和一些内存开销),所需的CPU周期数量大幅度降低(正如预期那样),但是子系统的动态功耗降低了8倍。

图2:具有ARC EM处理器但无集成DMA的子系统

图2:具有ARC EM处理器但无集成DMA的子系统

图3:具有ARC EM处理器以及紧密集成的DMA的子系统

图3:具有ARC EM处理器以及紧密集成的DMA的子系统

总周期: 576K

不含集成DMA的子系统

含有紧密集成DMA的子系统

CPU 周期数

211K 211K(占总周期的37%)

0.128K(占总周期的0.02%)

面积(NAND(与非)等效门数)

397K(47K逻辑/ 350K内存)

417K(57K逻辑/ 360K内存)

动态功耗

56µW (22.5µW CPU/33.5µW 内存)

7µW (2.3µW CPU/1.0µW 内存/3.7µW DMA)


表1:具有/不具有紧耦合DMA的子系统的面积/功耗比较

优化的数据融合子系统

利用上述基本子系统概念,Synopsys开发了一套针对快速增长的IoT边界设备市场的IP子系统 -- 专门针对“实时响应”的应用,这些应用需要强大的DSP性能来处理诸多功能,例如复杂的传感器融合、语音和手势识别、图像检测和音频播放,同时满足电池供电装置的功耗约束。

DesignWare智能数据融合IP子系统(图4)旨在高效处理来自大量数字及模拟传感器的数据,这些传感器既可以作为MCU中的主要处理元件,也可以在大型SoC中作为主处理器的卸载引擎。这套完全可配置的IP子系统包括ARC EM5D、EM7D、EM9D或EM11D处理器。这套低功耗内核系列将RISC及DSP指令与硬件结合在一起,以管理高级数据融合算法所需要的大范围数据处理,并提高MP3、SBC、OPUS和AAC LC等多种音频格式的性能。

该子系统的集成microDMA控制器可在处理器休眠模式下实现对内存和外设的访问。此外,该子系统还整合了高度优化的I/O外设,包括多个SPI、I2C和模数转换器接口,从而进一步降低逻辑门数和功耗。

为了简化软件开发,该子系统包括了软件驱动程序和丰富、现成的DSP函数库,能够支持过滤、关联、矩阵/矢量、抽取/插值和复数的数学运算。设计人员可以利用本机DSP指令与紧耦合硬件加速器的组合在硬件中实现这些传感器特定的DSP功能,以提高性能效率并降低功耗。

此外,Synopsys的embARC开放软件平台能够让软件开发人员在线访问一整套免费和开源的软件,从而加速子系统的代码开发。

图4:Synopsys DesignWare智能数据融合IP子系统

图4:Synopsys DesignWare智能数据融合IP子系统

智能数据融合IP子系统基准测试

对于复杂的传感器集线器实施,通常需要一组通用的信号处理函数。这些函数包括复数和标量的数学运算、矩阵函数、过滤、插值和变换。

为了分析数据融合IP子系统的性能,这些函数的一个库既运行在该数据融合子系统中,也运行在一个含有竞争对手处理器的微控制器中(40LP,典型过程/条件)。在两种情况下,计算完成基准测试所需要的时钟周期数。

在整体上,竞争对手处理器需要大量更多的时钟周期才能完成任务。额外的时钟周期必然消耗更多的功耗(功耗是任务的“生命”所在)。平均而言(如图5所示),竞争对手的实现方案所需要的能耗是我们的2倍还多。对于那些需要最低能耗以节省电池电力的IoT设备而言,智能数据融合IP子系统为典型的传感器功能提供了非常高效的处理能力。

图5:典型融合函数的竞争比较

图5:典型融合函数的竞争比较

小结

快速扩展的IoT边界设备市场在继续推动着集成、成本和性能边界的扩张。需要运行电池限制了整体功耗;而另一方面,人们越来越需要“实时响应”的功能,加之与生物特征输入(语音、图像、触摸)相关的复杂传感器融合,却在不断提出更高的RISC和DSP性能要求。设计人员需要集成更多的这些功能来消除电路板级组件并降低成本。

Synopsys的智能数据融合IP子系统把ARC EMxD CPU的独特功能与紧耦合的外设接口和硬件加速器结合在一起,并且在一套集成的IP产品中提供了软件驱动程序和库,从而大幅度提升了整体性能,同时减少了嵌入式IoT系统的软件空间占用、芯片面积和功耗。