0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

硬件加速器提升下一代SHARC处理器的性能

星星科技指导员 来源:ADI 作者:Paul Beckmann 2023-03-03 14:46 次阅读

SHARC ADSP-2146x处理器集成了硬件加速器,可实现三种广泛使用的信号处理操作:FIR(有限脉冲响应)、IIR(无限脉冲响应)和FFT(快速傅里叶变换)。加速器卸载了核心处理器,并有可能使处理器的计算吞吐量增加一倍以上。本文以加速器在下一代音频系统中的应用为例。®

为什么选择硬件加速器

数字信号处理中常用的FIR滤波器、IIR滤波器和FFT操作具有常规结构,允许在硬件(特别是硬件加速器)中直接实现。这些加速器是专用的固定功能外设,旨在反复执行单个计算密集型任务。它们卸载了主处理器,使其能够执行结构几乎没有规律性的通用任务。

使用硬件加速器提供了一种经济高效的方法来提高处理器的整体计算能力,因为系统设计人员获得了通用处理器的灵活性以及专用硬件的计算优势。

因此,这种加速器是满足许多应用领域中越来越复杂系统需求的宝贵资产。其中之一是音频系统,其中通道的数量正在增加。家庭影院系统从 5.1 声道增加到 6.1 声道,现在是 7.1 声道。高端汽车放大器通常使用 12 个或更多扬声器来让听众沉浸在声音中。

此外,音频源材料现在以高清 (HD) 格式提供,其关联的解码器可扩展系统资源。此外,高清算法以更高的采样率提供内容。以前,内容的峰值采样率很少高于48 kHz。使用HD算法,采样率通常为96 kHz,在某些情况下甚至高达192 kHz。

为了更好地了解计算需求是如何增加的,请考虑采用复杂房间均衡算法的最先进的家庭影院接收器。这些算法可补偿驱动器响应和扬声器位置的变化。算法首先使用麦克风和实时传递函数测量来分析房间。智能组合多个位置的测量值,然后为每个扬声器设计补偿滤波器。

更精确的房间均衡算法使用FIR滤波器来校正整个频率范围内的响应。所需滤波器的长度与采样率成正比,需要更长的滤波器来精确控制低频。256点的滤波器长度在48 kHz时很常见,而在96 kHz下实现相同的频率分辨率需要512点的滤波器长度。采样率和滤波器长度的加倍导致所需的计算量增加四倍。

SHARC ADSP-2146x中的加速器

ADI公司的SHARC处理器有着悠久的历史,可在众多应用中实现复杂的信号处理功能。处理器功能丰富的内核和外设使其成为产品开发人员的合理选择。ADI公司最近推出的SHARC ADSP-2146x处理器通过更高的时钟速度(450 MHz)和扩展的片上存储器(5 Mb)巩固了这一领导地位。

此外,该处理器还具有一组用于实现常见信号处理操作的硬件加速器:FIR 滤波器、IIR 滤波器和 FFT。这些操作构成了通信系统、医疗设备、消费产品以及工业测量和控制应用的基础。这些加速器是对SHARC ADSP-2136x处理器中引入的板载采样速率转换器的补充,也可以被视为硬件加速器。

加速器架构

SHARC ADSP-2146x的所有三个加速器都具有相似的设计,这使得下面显示的FIR加速器很好地说明了硬件加速器架构。FIR 加速器具有以下组件:

控制寄存器集 - 配置加速器的操作。

DMA 控制器 — 在主内存和加速器的本地内存之间移动数据。也可用于配置控制寄存器。

两个本地内存块 — 存储系数和状态变量(或延迟内存),并减少主内存的带宽。

计算单元 - 包含为加速器定制的算术运算。FIR 计算单元有四个并行 MAC。

poYBAGQBmfaABdNTAACf-pFBpKQ621.png

加速器的操作使用链式 DMA 自动执行。FIR 加速器通常通过以下步骤进行:

将此通道的系数数据从内部存储器加载到本地加速器系数存储。

将此通道的状态变量从内部存储器加载到本地加速器状态变量存储。这包括第一个输入样本。

使用四个 MAC 单元计算输出样本。

存储结果。

如果还有样本需要处理,则获取下一个输入样本并写入状态变量存储。

重复步骤3至5,直到计算出通道中的所有输出样本。

对所有输入通道重复步骤 1 到 6。

ADSP-2146x内核的最大时钟速率为450 MHz。通过使用 SIMD(单指令多数据),内核可以在每个时钟周期执行两次 MAC(乘法累加)运算,峰值速率为 900 MMAC/秒。相比之下,该加速器以225 MHz的SHARC外设时钟速率运行。 FIR加速器使用其四个专用MAC单元,实现了900 MMAC/sec的峰值理论吞吐量。配置 FIR 加速器控制寄存器和将数据移入和移出本地内存会产生一些开销。

实现给定FIR滤波器所需的外设时钟周期总数由公式给出

pYYBAGQBl9mARZX5AAASLYD328Y435.png

其中 N 是过滤器抽头的数量,B 是块大小。周期计数可以进一步细分为:

49 = DMA 传输控制块初始化。

4N = 假设每个载荷有两个周期,则加载系数和状态值(延迟线)。

poYBAGQBmguAYDcaAAAQC77YJVs540.png

在实践中使用加速器

应用软件的设计必须能够充分利用硬件加速器。请记住,加速器必须配置为与主 CPU 并行运行,因为如果主 CPU 处于空闲状态等待加速器完成,则没有任何好处。

加速器通常是在实时环境中运行的较大信号链的一部分。与加速器的接口需要双缓冲输入和输出数据,系统设计人员应记住加速器会引入延迟块。

考虑一个家庭影院系统,该系统具有 7.1 个 96 kHz 的音频通道,以 32 个样本的块大小运行。假设房间均衡由八个FIR滤波器应用,每个滤波器长512点。如果核心CPU要执行滤波,则至少需要96 kHz×8×512 = 393 MMAC/秒或44 MHz SHARC处理器的450%。这种FIR处理代表了整个计算的很大一部分,幸运的是,可以卸载到加速器。FIR滤波器的输入和输出是双缓冲的,允许加速器与音频信号链的其余部分并行工作。双缓冲在处理过程中引入了32个延迟样本,在333 kHz时为可接受的96 μs。

使用前面的公式,加速器需要 50,056 个外围循环才能完成操作。在225 MHz的速率下,这是223 μs,这完全在333 μs的阻塞时间内。

结论

音频处理技术的不断进步对音频DSP提出了更高的要求。下一代SHARC ADSP-2146x处理器中的硬件加速器可显著提高整体处理能力。加速器将常见的信号处理操作(FIR 滤波器、IIR 滤波器和 FFT 操作)从核心处理器中卸载出来,使其能够专注于其他任务。这种经济高效的方法使处理器的计算吞吐量增加了一倍以上。虽然本文侧重于音频应用,但内核和加速器是通用的,非常适合各种信号处理任务。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    18275

    浏览量

    222158
  • 滤波器
    +关注

    关注

    158

    文章

    7331

    浏览量

    174780
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10442

    浏览量

    206560
收藏 人收藏

    评论

    相关推荐

    MCU厂推多样解决方案 DSP/FPU硬件加速芯片整合

    处理对应至各式演算法应用,两者功能可以说是各有互补效用,比较 难被独立拆分。以ARM Cortex-M4来看,若仅提供DSP硬件加速处理器反而没设置FPU浮点运算加速器反而会造成应用限
    发表于 10-14 17:17

    ADI SHARC处理器有哪些应用案例

    SHARC®处理器系列在浮点DSP市场占据主导地位,拥有出色的内核和存储性能以及优异的I/O吞吐能力。SHARC
    发表于 10-31 09:21

    无法导入硬件加速器

    嗨!我已经创建了硬件加速器(在vhdl中)并且合成成功完成。但是,当我使用创建和导入外围设备向导时,它向我显示我的包在库中不可用,尽管它是。我能做什么 ???L'enfer,c'est l
    发表于 02-27 14:15

    测试下一代核心路由性能

    测试下一代核心路由性能
    发表于 09-19 07:05

    协调屏幕旋转和硬件加速器

    )。而且,在我的测试中,我发现关闭“硬件加速器”允许屏幕在旋转时正确地绘制,但是这使得系统使用起来非常缓慢和痛苦(坏的用户体验)。谢谢任何帮助。
    发表于 04-03 10:56

    如何充分利用数字信号处理器上的片内FIR和IIR硬件加速器

    上的片内FIR和IIR硬件加速器也分别称为FIRA和IIRA,我们可以利用这些硬件加速器来分担FIR和IIR处理任务,让内核去执行其他处理任务。在本文中,我们将借助不同的使用模型以及实
    发表于 12-28 06:26

    H.264解码中CABAC硬件加速器怎么实现?

    H.264解码中CABAC硬件加速器怎么实现?
    发表于 06-07 06:48

    基于arm Cortex-M3处理器与深度学习加速器的实时人脸口罩检测SoC设计方案

    CMSDK工具设计了AHB总线系统,在基于单级AHB总线的框架下,通过APB桥接器和AXI桥接器扩展了APB总线和AXI总线,进而构成该SoC高效的总线框架。通过搭建高效的总线系统将M3处理器硬件加速器
    发表于 08-26 15:23

    性能提升1倍,成本直降50%!基于龙蜥指令加速下一代云原生网关

    日益增长的速度,CPU 硬件加速成为业界个通用的解决方案。CPU 新特性不久前发布的第三英特尔 ^®^ 至强 ^®^ 可扩展处理器(代号 Ice Lake),单核
    发表于 08-31 10:46

    问下ARM3的硬件加速器只能用verilog写吗?

    问下ARM3的硬件加速器只能用verilog写吗?
    发表于 09-30 10:45

    利用硬件加速器提高处理器性能

    率超过两倍。本文以下一代音频系统为例,说明硬件加速器在这方面的应用。 为什么使用硬件加速器 FIR滤波器、IIR滤波器和FFT操作在数字信号处理器中应用十分普遍,且具有规则的结构,因此
    发表于 12-04 15:22 1080次阅读

    基于Xilinx FPGA的Memcached硬件加速器的介绍

    本教程讨论基于Xilinx FPGA的Memcached硬件加速器的技术细节,该硬件加速器可为10G以太网端口提供线速Memcached服务。
    的头像 发表于 11-27 06:41 3470次阅读

    硬件加速器提升下一代SHARC处理器性能

    硬件加速器提升下一代SHARC处理器性能
    发表于 04-23 13:06 6次下载
    <b class='flag-5'>硬件加速器</b><b class='flag-5'>提升</b><b class='flag-5'>下一代</b><b class='flag-5'>SHARC</b><b class='flag-5'>处理器</b>的<b class='flag-5'>性能</b>

    OpenHarmony 分论坛-华秋电子新硬件加速器

    OpenHarmony 分论坛-华秋电子新硬件加速器 今天的华为开发者大会2021上,OpenHarmony分论坛上展示了华秋电子新硬件加速器 。 HDC分论坛-OpenHarmony 分论坛推荐链接:http://t.elecfans.com/live/1708.htm
    的头像 发表于 10-23 16:53 1527次阅读
    OpenHarmony 分论坛-华秋电子新<b class='flag-5'>硬件加速器</b>

    借助硬件加速器开发您的设计

    借助硬件加速器开发您的设计
    的头像 发表于 01-03 09:45 631次阅读