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

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

3天内不再提示

如何利用不同的加速器使用模型实现所需的MIPS和处理目标

analog_devices 来源:亚德诺半导体 作者:亚德诺半导体 2022-05-05 14:08 次阅读

有限脉冲响应(FIR)和无限脉冲响应(IIR)滤波器都是常用的数字信号处理算法——尤其适用于音频处理应用。因此,在典型的音频系统中,处理器内核的很大一部分时间用于FIR和IIR滤波。数字信号处理器上的片内FIR和IIR硬件加速器也分别称为FIRA和IIRA,我们可以利用这些硬件加速器来分担FIR和IIR处理任务,让内核去执行其他处理任务。在本文中,我们将借助不同的使用模型以及实时测试示例来探讨如何在实践中利用这些加速器。

ce1928e4-c7a5-11ec-bce3-dac502259ad0.png

图1.FIRA和IIRA系统方框图。

图1显示了FIRA和IIRA的简化方框图,以及它们与其余处理器系统和资源的交互方式。

FIRA和IIRA模块均主要包含一个计算引擎(乘累加(MAC)单元)以及一个小的本地数据和系数RAM

为开始进行FIRA/IIRA处理,内核使用通道特定信息初始化处理器存储器中的DMA传输控制块(TCB)链。然后将该TCB链的起始地址写入FIRA/IIRA链指针寄存器,随后配置FIRA/IIRA控制寄存器以启动加速器处理。一旦所有通道的配置完成,就会向内核发送一个中断,以便内核将处理后的输出用于后续操作。

从理论上讲,最好的方法是将所有FIR和/或IIR任务从内核转移给加速器,并允许内核同时执行其他操作。但在实践中,这并非始终可行,特别是当内核需要使用加速器输出进一步处理,并且没有其他独立的任务需要同时完成时。在这种情况下,我们需要选择合适的加速器使用模型来达到最佳效果。。

在本文中,我们将讨论针对不同应用场景充分利用这些加速器的各种模型。

实时使用FIRA和IIRA

ce263b56-c7a5-11ec-bce3-dac502259ad0.png

图2.典型实时音频数据流。

图2显示了典型实时PCM音频数据流图。一帧数字化PCM音频数据通过同步串行端口(SPORT)接收,并通过直接存储器访问(DMA)发送至存储器。在继续接收帧N+1时,帧N由内核和/或加速器处理,之前处理的帧(N-1)的输出通过SPORT发送至DAC进行数模转换。

加速器使用模型

如前所述,根据应用的不同,可能需要以不同的方式使用加速器,以最大限度分担FIR和/或IIR处理任务,并尽可能节省内核周期以用于其他操作。从高层次角度来看,加速器使用模型可分为三类:直接替代、拆分任务和数据流水线。

直接替代

内核FIR和/或IIR处理直接被加速器替代,内核只需等待加速器完成此任务。

此模型仅在加速器的处理速度比内核快时才有效;即,使用FIRA模块。

拆分任务

FIR和/或IIR处理任务在内核和加速器之间分配。

当多个通道可并行处理时,此模型特别有用。

根据粗略的时序估算,在内核和加速器之间分配通道总数,使二者大致能够同时完成任务。

如图3所示,与直接替代模型相比,此使用模型可节省更多的内核周期。

数据流水线

内核和加速器之间的数据流可进行流水线处理,使二者能够在不同数据帧上并行处理。

如图3所示,内核处理第N个帧,然后启动加速器对该帧进行处理。内核随后继续进一步并行处理加速器在上一迭代中产生的第N-1帧的输出。该序列允许将FIR和/或IIR处理任务完全转移给加速器,但输出会有一些延迟。

流水线级以及输出延迟都可能会增加,具体取决于完整处理链中此类FIR和/或IIR处理级的数量。

图3说明了音频数据帧如何在不同加速器使用模型的三个阶段之间传输——DMA IN、内核/加速器处理和DMA OUT。它还显示了通过采用不同的加速器使用模型将FIR/IIR全部或部分处理转移到加速器上,与仅使用内核模型相比,内核空闲周期如何增加。

ce32c11e-c7a5-11ec-bce3-dac502259ad0.png

图3.加速器使用模型比较。

SHARC处理器上的FIRA和IIRA

以下ADI SHARC处理器系列支持片内FIRA和IIRA(从旧到新)。

ADSP-214xx (例如, ADSP-21489)

ADSP-SC58x

ADSP-SC57x/ADSP-2157x

ADSP-2156x

这些处理器系列:

计算速度不同

基本编程模型保持不变,ADSP-2156x处理器上的自动配置模式(ACM)除外。

FIRA有四个MAC单元,而IIRA只有一个MAC单元。

ADSP-2156x的FIRA/IIRA改进

ADSP-2156x是SHARC处理器系列中的最新产品。它是第一款单核1 GHz SHARC处理器,其FIRA和IIRA也可在1 GHz下运行。ADSP-2156x处理器上的FIRA和IIRA与其前代ADSP-SC58x/ADSP-SC57x处理器相比,具有多项改进。

性能改进

计算速度提高了8倍(从SCLK-125 MHz至CCLK-1 GHz)。

由于内核和加速器借助专用内核结构实现了更紧密的集成,因此减少了内核和加速器之间的数据和MMR访问延迟。

功能改进

添加了ACM支持,以尽量减少进行加速器处理所需的内核干预。此模式主要具有以下新特性:

允许加速器暂停以进行动态任务排队。

无通道数限制。

支持触发生成(主器件)和触发等待(从器件)。

为每个通道生成选择性中断。

实验结果

在本节中,我们将讨论在ADSP-2156x评估板上,借助不同的加速器使用模型实施两个实时多通道FIR/IIR用例的结果

用例1

图4显示用例1的方框图。采样率为48 kHz,模块大小为256个采样点,拆分任务模型中使用的内核与加速器通道比为5:7。

表1显示测得的内核和FIRA MIPS数量,以及与仅使用内核模型相比获得的节约内核MIPS结果。表中还显示了相应使用模型增加的额外输出延迟。正如我们所看到的,使用加速器配合数据流水线使用模型,可节约高达335内核MIPS,但导致1块(5.33 ms)的输出延迟。直接替代和拆分任务使用模型也分别可节约98 MIPS和189 MIPS,而且未导致任何额外的输出延迟。

ce4a9618-c7a5-11ec-bce3-dac502259ad0.png

图4.用例1方框图。

ce624e84-c7a5-11ec-bce3-dac502259ad0.png

表1.用例1的内核和FIR/IIRA MIPS总结

用例2

图5显示用例2的方框图。采样率为48 kHz,模块大小为128个采样点,拆分任务模型中使用的内核与加速器通道比为1:1。

与表1一样,表2也显示了此用例的结果。正如我们所看到的,使用加速器配合数据流水线使用模型,可节约高达490内核MIPS,但导致1模块(2.67 ms)的输出延迟。拆分任务使用模型可节约234内核MIPS,而没有导致任何额外输出延迟。请注意,与用例1中不同,在用例2中内核使用频域(快速卷积)处理,而非时域处理。这就是为何处理一个通道所需的内核MIPS比FIRA MIPS少的原因,这可导致直接替代使用模型实现负的内核MIPS节约。

ce731872-c7a5-11ec-bce3-dac502259ad0.png

图5.用例2方框图。

ce84937c-c7a5-11ec-bce3-dac502259ad0.png

表2.用例2的内核和FIR/IIRA MIPS总结

结论

在本文中,我们看到如何利用不同的加速器使用模型实现所需的MIPS和处理目标,从而将大量内核MIPS转移到ADSP-2156x处理器上的FIRA和IIRA加速器。

原文标题:实例测试解读,典型音频系统中FIR和IIR滤波器硬件加速器的使用

文章出处:【微信公众号:亚德诺半导体】欢迎添加关注!文章转载请注明出处。

审核编辑:汤梓红

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

    关注

    4

    文章

    137

    浏览量

    32725
  • mips
    +关注

    关注

    1

    文章

    235

    浏览量

    47394
  • 音频系统
    +关注

    关注

    2

    文章

    97

    浏览量

    28022
  • IIR
    IIR
    +关注

    关注

    1

    文章

    56

    浏览量

    22749

原文标题:实例测试解读,典型音频系统中FIR和IIR滤波器硬件加速器的使用

文章出处:【微信号:analog_devices,微信公众号:analog_devices】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

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

    我们看到如何利用不同的加速器使模型实现所需MIPS处理
    发表于 06-22 14:42 1485次阅读
    充分<b class='flag-5'>利用</b>数字信号<b class='flag-5'>处理</b>器上的片内FIR和IIR硬件<b class='flag-5'>加速器</b>

    一个模型带你了解#回旋加速器原理

    加速器DIY
    jf_49445761
    发布于 :2022年08月28日 08:57:57

    #硬声创作季 电子制作:磁性加速器

    加速器DIY
    Mr_haohao
    发布于 :2022年10月19日 00:19:38

    【FPGA干货分享六】基于FPGA协处理器的算法加速实现

    实现了一种I/O流水线接口,该接口具有I/O连接加速器的典型性能。FPGA/PowerPC/APU接口FPGA允许硬件设计工程师利用单芯片上的处理器、解码逻辑、外设和协
    发表于 02-02 14:18

    关于长整加速器的工作步骤:

    关于长整加速器的工作步骤:1. 系统置位后,CPU向加速器的源地址寄存器发送当前长整计算的源操作数地址(位于Memory中)2. 接着,CPU向加速器目标地址寄存器发送当前长整计算的
    发表于 03-17 10:53

    采用控制律加速器的Piccolo MCU

    日前,德州仪器 (TI) 宣布推出采用控制律加速器 (CLA) 的新型 TMS320F2803x Piccolo 微处理器 (MCU),可促进具有更高可靠性与效率的嵌入式控制应用的开发。CLA
    发表于 07-26 06:21

    机器学习实战:GNN加速器的FPGA解决方案

    加速,我们需要知悉其数学模型,以便将算法映射到不同的逻辑模块中。下图所示的代码阐述了本算法的数学过程。 图 4:GraphSAGE算法的数学模型对于每一个待处理
    发表于 10-20 09:48

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

    器上的片内FIR和IIR硬件加速器也分别称为FIRA和IIRA,我们可以利用这些硬件加速器来分担FIR和IIR处理任务,让内核去执行其他处理
    发表于 12-28 06:26

    核动力发动机与一种电子加速器

    既简单又实用又安全的核动力发动机是直接利用一种电子加速器的铀235高能电子和原子对混合物点火燃烧,与现在利用核反应堆和核裂变的方式不同。由于铀235电子,原子燃烧产生更多的能量,从而节省了燃料,因此
    发表于 04-25 18:32

    基于Fast Model的加速器软件开发

    驱动在目标OS中操作加速器模型平台上进行软件框架,应用匹配移植arm提供了绝大部分市面可见设计的类似子系统,无论是基于arm v7/v8单核,多核,多cluster系统,还是包含最新架构特性的CPU
    发表于 07-29 15:38

    英特尔媒体加速器参考软件Linux版用户指南

    英特尔媒体加速器参考软件是用于数字标志、交互式白板(IWBs)和亭位使用模型的参考媒体播放器应用软件,它利用固定功能硬件加速来提高媒体流速、改进工作量平衡和资源
    发表于 08-04 06:34

    Intel媒体加速器参考软件用户指南

    英特尔媒体加速器参考软件是用于数字标志、交互式白板(IWBs)和亭位使用模型的参考媒体播放器应用软件,它利用固定功能硬件加速来提高媒体流速、改进工作量平衡和资源
    发表于 08-04 07:07

    使用ADSP-21489的fir加速器时,存在很大的噪音如何解决?

    您好!当我使用ADSP-21489的fir加速器时,存在很大的噪音,未知如何解决,希望这里有高人帮我解决。 附件上有工程,该工程参考iir加速器使用例子编写。
    发表于 11-30 07:49

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

    处理器内部集成的硬件加速器可以实现三种广泛使用的信号处理操作:FIR(有限冲激响应)、IIR(无限冲激响应)和FFT(快速傅里叶变换)。硬件加速器
    发表于 12-04 15:22 1080次阅读

    使用协处理加速器的方法介绍

    了解协处理的价值,Zynq-7000加速器一致性端口,使用协处理加速器的方法以及协处理器设计实例的概述。
    的头像 发表于 11-30 06:15 3996次阅读