础滨驱动的设计应用
草榴社区 ARC 处理器高级产物营销经理 Graham Wilson
21 世纪初,数字信号处理器 (DSP) 结构简单、性能有限,编程却很复杂。DSP 采用融合指令并利用单指令多数据 (SIMD) 进行数据计算。该计算用于在单 MAC 或双 MAC 计算中的乘法累加 (MAC) 操作。这些 DSP 是简单的汇编级编程芯核,具有有限的指令集架构 (ISA),通常用于各种信号处理和语音处理应用。
DSP 在用于 3G 移动基带调制解调器应用的性能方面取得进一步发展。典型的 3G 调制解调器系统配备针对双/四路 SIMD MAC 性能优化的单个 DSP,设有基本 DSP 滤波器指令,如快速傅里叶变换 (FFT) 和无限脉冲响应 (IIR)。引入了超长指令字 (VLIW) 架构,通过在紧密闭环中执行多个并行操作来提高性能。此时,C 编译器技术正在发展,但为了优化性能,业界仍在使用汇编语言对 DSP 算法进行编程。
DSP 拥有了 DSP 库,可实现更快的软件开发和更优化的运算。3G 无线通信算法需要支持复杂数据类型(I 和 Q)的计算。因此,数据类型被添加到了架构和库中,并且与编译器一起可以映射到 DSP 的 SIMD MAC 计算单元。
然而,当时大约 50% 的无线通信应用的计算是采用数字信号处理的,而另一半还包括控制和非矢量数据计算(标量)任务。控制和标量任务不适合在 SIMD VLIW DSP 芯核上运行,因为控制代码带有分支和异常情况,会导致许多长流水线的停顿。结果,DSP 中引入了标量计算单元和分支预测功能。
DSP 非常适合语音和音频应用,因为 SIMD MAC 性能提供的计算性能正是智能手机和平板电脑中使用的音频分流引擎需要的。这就为 DSP 开辟了新的市场。
无线(蜂窝和 WiFi)移动通信标准推动了对更高计算复杂性的需求,3.9G 调制解调器配备多天线、多输入多输出 (MIMO)、信道聚合和估计算法,需要获得更多软件可编程性,来支持移动基带芯片上的更多功能。同时,编译器技术也不断发展,能够识别 DSP 矢量数据类型并匹配循环步幅,并在内部循环内执行基本的自动矢量化。
随着性能要求的提高,用于蜂窝移动和基础架构应用的 DSP 的 SIMD 宽度增加到 16 MAC/周期、32 MAC/周期,甚至 64 MAC/周期。此外,更加个性化的指令集架构 (ISA) 拥有更多 DSP 滤波器加速指令、矩阵计算加速和寻址模式,能够进一步加速操作,从而提高性能。
具有更宽加载和/或存储单元的双路加载存储架构能够帮助 MAC 单元提高复杂矢量数据的吞吐量。结合这一优势,寄存器文件更新了大量专用矢量数据寄存器文件,以平衡架构与计算吞吐量并尽量减轻内部寄存器的压力。
VLIW 架构也经过扩展,能够支持更高的计算吞吐量。例如,要实现最佳性能,FFT 功能需要加载、加载、执行和存储功能,因此需要四路 VLIW DSP 矢量运算。
这些 DSP 集成了矢量和标量引擎,两者可以并行执行。一些架构具有分离 DSP 矢量操作和标量操作的 VLIW 方案,因此延长了指令字的长度。另一些 DSP 合并了 VLIW 向量和标量操作,好处是指令字长度缩短但指令解码复杂度却提高了。在这些 DSP 上,控制和 DSP 功能会由编译器预先映射并调度到 VLIW 指令中。
由于计算复杂程度会随着 LTE 类别数量的增加而增加,因此业界趋向于在调制解调器系统使用多个处理器核来满足系统内不同的处理要求。处理器具有不同的架构和性能,具体取决于使用它们的系统的功能组件。例如,LTE 调制解调器的前端需要在 DSP 功能上进行复杂的矢量数据计算。与此不同的是,还需要软比特域处理,这种处理技术包含最适合不同类型的架构/ISA 的标量 16 位数据,并且由更小且针对特定任务的处理器提供更好的服务。
与 3G 调制解调器相比,使用 4G(高级 LTE)调制解调器之后,计算复杂度增加了约 10 倍。为了支持 4G,DSP 经过深入优化,并采用定制指令作为基本 ISA 的一部分或作为可扩展选项,进一步加速无线通信算法。新增用于基础架构 MIMO 计算算法的浮点支持是 DSP 处理器技术的又一次重大进步。
随着计算工作量和算法的复杂性程度增大,“一台万用处理器”的方法不再可行,业界已经转向采用异构系统。设计人员无法将运行频率为 GHz 的大型处理器核部署到功耗预算紧张的片上系统 (SoC) 中,因而更多的 DSP 被用于主数据路径计算,将具有高度任务针对性的可编程芯核用于数据最为密集的任务,如前端 FFT、Turbo 编解码器和通道估测任务(图 1)。
图 1:处理器的灵活性可以在性能需求与功耗预算之间达到平衡
相比高端的 4G 无线通信调制解调器,大规模 IoT 和永远在线激活应用将对于 DSP 的要求推向了完全不同的方向。低成本低功耗要求以及在同一个 DSP 芯核中实现多种 DSP 功能的要求正在推动单核产物的实现。这些新型 DSP 所具有的架构和 ISA,能够将音频、无线通信、控制和图像/运动检测算法结合在一起。这种“一核万能”的方法可以灵活地“选择/取消选择”计算和架构选项,以实现最小的尺寸和最低的功耗。
下一步是 5G,估计计算复杂程度会比 4G 调制解调器进一步提高 10 倍至 20 倍。5G 调制解调器更加复杂,稳定性因素会涉及更广泛的应用、带宽和延迟。MIMO 配置要高得多,一些基础设施应用程序使用的大规模 MIMO 只能通过高精度浮点计算来实现。
为了满足这些要求,将使用更多任务特定的可编程芯核来分载主要的计算密集型任务,从而无需主要的宽 SIMD VLIW DSP 来运行这些算法。而且,DSP 纯粹用于 DSP 计算。控制和排序操作从宽 SIMD VLIW DSP 分载到优化的控制器 DSP 芯核。这种芯核是一种新型控制器芯核 (CPU),旨在实现高 GHz 最大时钟频率、非常高效的任务切换和多线程操作。还有支持单、双和四 MAC 级 DSP 计算的 DSP 扩展,可用于非关键 DSP 功能。这些功能不是在主要的宽 SIMD VLIW DSP 上运行的首选,但可以在控制器/DSP 芯核上运行。超标量架构比 VLIW 更适合用于针对控制器算法的处理器,因为这种处理器采用代码控制,存在分支、中断和异常问题。
对于控制和低级 DSP 功能,这些芯核作为硬件加速器模块的定序器运行,这是从主 DSP 分载的另一个功能。控制器芯核必须直接连接到硬件模块,支持服务请求、数据移动以及硬件模块之间的同步操作。
图 2:用于蜂窝用户设备调制解调器的 DSP 和 CPU 的发展历程
草榴社区 是包括处理器在内的 IP 领域的领导者,多年来一直与 4G/5G 调制解调器 SoC 开发人员保持合作,完全理解设计人员面临的问题以及对高性能 DSP 和控制器芯核的需求。这一背景转换成了最近发布的 HS45D,它使用紧密结合的指令和数据存储器,以及 HS47D 芯核(使用指令和数据高速缓冲存储器)。这是具有 DSP 扩展的高性能控制器芯核,可满足上述特定需求。
HS4xD(HS45D 和 HS47D)芯核基于先进的 10 级流水线,可实现双发射超标量指令执行。该流水线和超标量架构能够延迟算术逻辑单元 (ALU) 的执行。根据具体的芯核资源和条件指令的环境,延迟 ALU 可在指令执行之前留出更多周期来解决条件。还能尽早解决未预测到的分支问题。这就大大减少了流水线停滞并提高了控制操作性能。
图 3:ARC HS4xD 处理器框图
高级流水线架构提供真正的双周期指令和数据存储器访问(作为专用于访问 CCM 和高速缓存的两级流水线实现)。这为 SoC 开发人员提供了更紧密结合的存储器技术选择,使处理器的时钟频率可以达到存储器的两倍,从而简化了设计并减少了实现瓶颈。
DSP 扩展包括 150 个 DSP 指令,用于定点、复杂数据类型以及芯核原生的浮点(单精度和双精度)计算。还有指令和寻址模式可加速大多数用于通信、RADAR 和家庭音频应用的 DSP 滤波器功能和算法。内核可以执行持续双 MAC(16 位 x 16 位),并具有用于关键数字滤波器功能的四 MAC(16 位 x 16 位)。DSP 功能受益于超标量架构的并行指令执行,结合了芯核的高级加载/存储单元,可实现高性能持续 DSP 计算,可与仅含 DSP 的芯核相媲美。
凭借所有这些架构和 ISA 功能,HS45D(非缓存版本)可以实现 2.5GHz (16nFF) 的典型时钟频率,并提供足够的性能开销,以满足额外的计算需求增长。该芯核还提供业界领先的 5.2 CoreMarks/MHz 基准数以及 3.0 Dhrystone MIPS/MHz 的性能。
HS4xD 芯核是进行 C 编程,与其他 ARC DSP 解决方案完全兼容。它包括一个优化了性能的 DSP 库,可让开发人员从关键算法的芯核快速获得所需的性能。
HS4xD 芯核与所有 ARC 处理器一样,可根据架构、内存子系统和 ISA 选项进行配置。有许多配置选项能够帮助开发人员定制满足性能要求的芯核,同时保持非常小的尺寸和低功耗。有了这些芯核,就可以使用 ARC APEX 技术。APEX 支持用户将指令集扩展、寄存器库、自定义寄存器和自定义接口添加到芯核中。这使得开发人员能够添加可加速关键算法的自定义指令和寄存器,在需要时提供非常高的性能。
HS4xD 在 SoC 中提供的连接方案选项数量名列前茅。在模块化总线接口(如 AMBA 等)的顶部有连接到 HS4xD 的单独外设总线。这种外设总线具有存储器映射的专用区域和零延迟,SoC 开发人员自己的外设可以连接到这种外设总线上。这使得性能攸关的外设可以不受总线共享延迟造成的延误影响。
使用 APEX 寄存器扩展,可以将硬件模块连接到可以直接访问的 APEX 寄存器。这些寄存器可以提供任何宽度规格,并且 适合硬件模块操作。这让用户硬件模块能够直接连接到芯核并接受芯核指令控制。结合了 HS4xD 芯核提供的 mDMA 引擎之后,HS4xD 芯核可以控制往返硬件模块的数据移动。
十五年来,DSP 发生了显著变化,能够满足无线通信标准的需求。现在,DSP 已经在移动手机设备的基带调制解调器中占据了一席之地。但是,更高性能和更大芯核的局面在电池寿命和功耗都至关重要的现代移动设备中是行不通的。因此,更多任务特定的异构芯核以及 DSP/控制器芯核发展了起来。因此,DSP IP 供应商应该为 SoC 开发人员提供更大范围的 DSP、加速器、定制芯核和 DSP/控制器芯核。草榴社区 的 ARC HS4xD 处理器采用双发射 32 位 RISC + DSP 架构,适用于需要高性能、高时钟速度和信号处理功能的嵌入式应用。HS4xD 芯核具备解决现代 DSP 挑战所需的灵活性、控制、信号处理和功耗性能。
如需更多信息: