0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何利用不同的加速器使用模型實現(xiàn)所需的MIPS和處理目標(biāo)

analog_devices ? 來源:亞德諾半導(dǎo)體 ? 作者:亞德諾半導(dǎo)體 ? 2022-05-05 14:08 ? 次閱讀

有限脈沖響應(yīng)(FIR)和無限脈沖響應(yīng)(IIR)濾波器都是常用的數(shù)字信號處理算法——尤其適用于音頻處理應(yīng)用。因此,在典型的音頻系統(tǒng)中,處理器內(nèi)核的很大一部分時間用于FIR和IIR濾波。數(shù)字信號處理器上的片內(nèi)FIR和IIR硬件加速器也分別稱為FIRA和IIRA,我們可以利用這些硬件加速器來分擔(dān)FIR和IIR處理任務(wù),讓內(nèi)核去執(zhí)行其他處理任務(wù)。在本文中,我們將借助不同的使用模型以及實時測試示例來探討如何在實踐中利用這些加速器。

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

圖1.FIRA和IIRA系統(tǒng)方框圖。

圖1顯示了FIRA和IIRA的簡化方框圖,以及它們與其余處理器系統(tǒng)和資源的交互方式。

FIRA和IIRA模塊均主要包含一個計算引擎(乘累加(MAC)單元)以及一個小的本地數(shù)據(jù)和系數(shù)RAM。

為開始進行FIRA/IIRA處理,內(nèi)核使用通道特定信息初始化處理器存儲器中的DMA傳輸控制塊(TCB)鏈。然后將該TCB鏈的起始地址寫入FIRA/IIRA鏈指針寄存器,隨后配置FIRA/IIRA控制寄存器以啟動加速器處理。一旦所有通道的配置完成,就會向內(nèi)核發(fā)送一個中斷,以便內(nèi)核將處理后的輸出用于后續(xù)操作。

從理論上講,最好的方法是將所有FIR和/或IIR任務(wù)從內(nèi)核轉(zhuǎn)移給加速器,并允許內(nèi)核同時執(zhí)行其他操作。但在實踐中,這并非始終可行,特別是當(dāng)內(nèi)核需要使用加速器輸出進一步處理,并且沒有其他獨立的任務(wù)需要同時完成時。在這種情況下,我們需要選擇合適的加速器使用模型來達到最佳效果。。

在本文中,我們將討論針對不同應(yīng)用場景充分利用這些加速器的各種模型。

實時使用FIRA和IIRA

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

圖2.典型實時音頻數(shù)據(jù)流。

圖2顯示了典型實時PCM音頻數(shù)據(jù)流圖。一幀數(shù)字化PCM音頻數(shù)據(jù)通過同步串行端口(SPORT)接收,并通過直接存儲器訪問(DMA)發(fā)送至存儲器。在繼續(xù)接收幀N+1時,幀N由內(nèi)核和/或加速器處理,之前處理的幀(N-1)的輸出通過SPORT發(fā)送至DAC進行數(shù)模轉(zhuǎn)換。

加速器使用模型

如前所述,根據(jù)應(yīng)用的不同,可能需要以不同的方式使用加速器,以最大限度分擔(dān)FIR和/或IIR處理任務(wù),并盡可能節(jié)省內(nèi)核周期以用于其他操作。從高層次角度來看,加速器使用模型可分為三類:直接替代、拆分任務(wù)和數(shù)據(jù)流水線。

直接替代

內(nèi)核FIR和/或IIR處理直接被加速器替代,內(nèi)核只需等待加速器完成此任務(wù)。

此模型僅在加速器的處理速度比內(nèi)核快時才有效;即,使用FIRA模塊。

拆分任務(wù)

FIR和/或IIR處理任務(wù)在內(nèi)核和加速器之間分配。

當(dāng)多個通道可并行處理時,此模型特別有用。

根據(jù)粗略的時序估算,在內(nèi)核和加速器之間分配通道總數(shù),使二者大致能夠同時完成任務(wù)。

如圖3所示,與直接替代模型相比,此使用模型可節(jié)省更多的內(nèi)核周期。

數(shù)據(jù)流水線

內(nèi)核和加速器之間的數(shù)據(jù)流可進行流水線處理,使二者能夠在不同數(shù)據(jù)幀上并行處理。

如圖3所示,內(nèi)核處理第N個幀,然后啟動加速器對該幀進行處理。內(nèi)核隨后繼續(xù)進一步并行處理加速器在上一迭代中產(chǎn)生的第N-1幀的輸出。該序列允許將FIR和/或IIR處理任務(wù)完全轉(zhuǎn)移給加速器,但輸出會有一些延遲。

流水線級以及輸出延遲都可能會增加,具體取決于完整處理鏈中此類FIR和/或IIR處理級的數(shù)量。

圖3說明了音頻數(shù)據(jù)幀如何在不同加速器使用模型的三個階段之間傳輸——DMA IN、內(nèi)核/加速器處理和DMA OUT。它還顯示了通過采用不同的加速器使用模型將FIR/IIR全部或部分處理轉(zhuǎn)移到加速器上,與僅使用內(nèi)核模型相比,內(nèi)核空閑周期如何增加。

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

圖3.加速器使用模型比較。

SHARC處理器上的FIRA和IIRA

以下ADI SHARC處理器系列支持片內(nèi)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處理器系列中的最新產(chǎn)品。它是第一款單核1 GHz SHARC處理器,其FIRA和IIRA也可在1 GHz下運行。ADSP-2156x處理器上的FIRA和IIRA與其前代ADSP-SC58x/ADSP-SC57x處理器相比,具有多項改進。

性能改進

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

由于內(nèi)核和加速器借助專用內(nèi)核結(jié)構(gòu)實現(xiàn)了更緊密的集成,因此減少了內(nèi)核和加速器之間的數(shù)據(jù)和MMR訪問延遲。

功能改進

添加了ACM支持,以盡量減少進行加速器處理所需的內(nèi)核干預(yù)。此模式主要具有以下新特性:

允許加速器暫停以進行動態(tài)任務(wù)排隊。

無通道數(shù)限制。

支持觸發(fā)生成(主器件)和觸發(fā)等待(從器件)。

為每個通道生成選擇性中斷。

實驗結(jié)果

在本節(jié)中,我們將討論在ADSP-2156x評估板上,借助不同的加速器使用模型實施兩個實時多通道FIR/IIR用例的結(jié)果

用例1

圖4顯示用例1的方框圖。采樣率為48 kHz,模塊大小為256個采樣點,拆分任務(wù)模型中使用的內(nèi)核與加速器通道比為5:7。

表1顯示測得的內(nèi)核和FIRA MIPS數(shù)量,以及與僅使用內(nèi)核模型相比獲得的節(jié)約內(nèi)核MIPS結(jié)果。表中還顯示了相應(yīng)使用模型增加的額外輸出延遲。正如我們所看到的,使用加速器配合數(shù)據(jù)流水線使用模型,可節(jié)約高達335內(nèi)核MIPS,但導(dǎo)致1塊(5.33 ms)的輸出延遲。直接替代和拆分任務(wù)使用模型也分別可節(jié)約98 MIPS和189 MIPS,而且未導(dǎo)致任何額外的輸出延遲。

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

圖4.用例1方框圖。

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

表1.用例1的內(nèi)核和FIR/IIRA MIPS總結(jié)

用例2

圖5顯示用例2的方框圖。采樣率為48 kHz,模塊大小為128個采樣點,拆分任務(wù)模型中使用的內(nèi)核與加速器通道比為1:1。

與表1一樣,表2也顯示了此用例的結(jié)果。正如我們所看到的,使用加速器配合數(shù)據(jù)流水線使用模型,可節(jié)約高達490內(nèi)核MIPS,但導(dǎo)致1模塊(2.67 ms)的輸出延遲。拆分任務(wù)使用模型可節(jié)約234內(nèi)核MIPS,而沒有導(dǎo)致任何額外輸出延遲。請注意,與用例1中不同,在用例2中內(nèi)核使用頻域(快速卷積)處理,而非時域處理。這就是為何處理一個通道所需的內(nèi)核MIPS比FIRA MIPS少的原因,這可導(dǎo)致直接替代使用模型實現(xiàn)負(fù)的內(nèi)核MIPS節(jié)約。

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

圖5.用例2方框圖。

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

表2.用例2的內(nèi)核和FIR/IIRA MIPS總結(jié)

結(jié)論

在本文中,我們看到如何利用不同的加速器使用模型實現(xiàn)所需的MIPS和處理目標(biāo),從而將大量內(nèi)核MIPS轉(zhuǎn)移到ADSP-2156x處理器上的FIRA和IIRA加速器。

原文標(biāo)題:實例測試解讀,典型音頻系統(tǒng)中FIR和IIR濾波器硬件加速器的使用

文章出處:【微信公眾號:亞德諾半導(dǎo)體】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

審核編輯:湯梓紅

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • FIR
    FIR
    +關(guān)注

    關(guān)注

    4

    文章

    146

    瀏覽量

    33174
  • mips
    +關(guān)注

    關(guān)注

    1

    文章

    239

    瀏覽量

    47758
  • 音頻系統(tǒng)
    +關(guān)注

    關(guān)注

    2

    文章

    113

    瀏覽量

    28175
  • IIR
    IIR
    +關(guān)注

    關(guān)注

    1

    文章

    61

    瀏覽量

    22841

原文標(biāo)題:實例測試解讀,典型音頻系統(tǒng)中FIR和IIR濾波器硬件加速器的使用

文章出處:【微信號:analog_devices,微信公眾號:analog_devices】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    充分利用數(shù)字信號處理器上的片內(nèi)FIR和IIR硬件加速器

    我們看到如何利用不同的加速器使模型實現(xiàn)所需MIPS處理
    發(fā)表于 06-22 14:42 ?1789次閱讀
    充分<b class='flag-5'>利用</b>數(shù)字信號<b class='flag-5'>處理</b>器上的片內(nèi)FIR和IIR硬件<b class='flag-5'>加速器</b>

    一個模型帶你了解#回旋加速器原理

    加速器DIY
    jf_49445761
    發(fā)布于 :2022年08月28日 08:57:57

    【FPGA干貨分享六】基于FPGA協(xié)處理器的算法加速實現(xiàn)

    實現(xiàn)了一種I/O流水線接口,該接口具有I/O連接加速器的典型性能。FPGA/PowerPC/APU接口FPGA允許硬件設(shè)計工程師利用單芯片上的處理器、解碼邏輯、外設(shè)和協(xié)
    發(fā)表于 02-02 14:18

    關(guān)于長整加速器的工作步驟:

    關(guān)于長整加速器的工作步驟:1. 系統(tǒng)置位后,CPU向加速器的源地址寄存器發(fā)送當(dāng)前長整計算的源操作數(shù)地址(位于Memory中)2. 接著,CPU向加速器目標(biāo)地址寄存器發(fā)送當(dāng)前長整計算的
    發(fā)表于 03-17 10:53

    采用控制律加速器的Piccolo MCU

    日前,德州儀器 (TI) 宣布推出采用控制律加速器 (CLA) 的新型 TMS320F2803x Piccolo 微處理器 (MCU),可促進具有更高可靠性與效率的嵌入式控制應(yīng)用的開發(fā)。CLA
    發(fā)表于 07-26 06:21

    機器學(xué)習(xí)實戰(zhàn):GNN加速器的FPGA解決方案

    加速,我們需要知悉其數(shù)學(xué)模型,以便將算法映射到不同的邏輯模塊中。下圖所示的代碼闡述了本算法的數(shù)學(xué)過程。 圖 4:GraphSAGE算法的數(shù)學(xué)模型對于每一個待處理
    發(fā)表于 10-20 09:48

    如何充分利用數(shù)字信號處理器上的片內(nèi)FIR和IIR硬件加速器?

    器上的片內(nèi)FIR和IIR硬件加速器也分別稱為FIRA和IIRA,我們可以利用這些硬件加速器來分擔(dān)FIR和IIR處理任務(wù),讓內(nèi)核去執(zhí)行其他處理
    發(fā)表于 12-28 06:26

    基于Fast Model的加速器軟件開發(fā)

    驅(qū)動在目標(biāo)OS中操作加速器模型平臺上進行軟件框架,應(yīng)用匹配移植arm提供了絕大部分市面可見設(shè)計的類似子系統(tǒng),無論是基于arm v7/v8單核,多核,多cluster系統(tǒng),還是包含最新架構(gòu)特性的CPU
    發(fā)表于 07-29 15:38

    英特爾媒體加速器參考軟件Linux版用戶指南

    英特爾媒體加速器參考軟件是用于數(shù)字標(biāo)志、交互式白板(IWBs)和亭位使用模型的參考媒體播放器應(yīng)用軟件,它利用固定功能硬件加速來提高媒體流速、改進工作量平衡和資源
    發(fā)表于 08-04 06:34

    Intel媒體加速器參考軟件用戶指南

    英特爾媒體加速器參考軟件是用于數(shù)字標(biāo)志、交互式白板(IWBs)和亭位使用模型的參考媒體播放器應(yīng)用軟件,它利用固定功能硬件加速來提高媒體流速、改進工作量平衡和資源
    發(fā)表于 08-04 07:07

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

    處理器內(nèi)部集成的硬件加速器可以實現(xiàn)三種廣泛使用的信號處理操作:FIR(有限沖激響應(yīng))、IIR(無限沖激響應(yīng))和FFT(快速傅里葉變換)。硬件加速器
    發(fā)表于 12-04 15:22 ?1322次閱讀

    使用協(xié)處理加速器的方法介紹

    了解協(xié)處理的價值,Zynq-7000加速器一致性端口,使用協(xié)處理加速器的方法以及協(xié)處理器設(shè)計實例的概述。
    的頭像 發(fā)表于 11-30 06:15 ?4266次閱讀

    如何對推理加速器進行基準(zhǔn)測試

      客戶對基準(zhǔn)推理學(xué)習(xí)曲線的最后階段是開發(fā)自己的模型,使用通常來自 Nvidia 或數(shù)據(jù)中心的訓(xùn)練硬件/軟件,然后在可能的目標(biāo)推理加速器上對該模型進行基準(zhǔn)測試。
    的頭像 發(fā)表于 06-06 16:02 ?1331次閱讀

    處理器使開發(fā)人員能夠實現(xiàn)自定義指令并添加加速器

    Bluespec 宣布推出新的MCUX RISC-V處理器,使開發(fā)人員能夠輕松實現(xiàn)自定義指令,并為FPGA和ASIC添加加速器。MCUX是Bluespec的MCU RISC-V處理器系
    的頭像 發(fā)表于 07-04 11:05 ?592次閱讀

    CTAccel圖像處理(CIP)加速器

    電子發(fā)燒友網(wǎng)站提供《CTAccel圖像處理(CIP)加速器.pdf》資料免費下載
    發(fā)表于 09-15 14:21 ?0次下載
    CTAccel圖像<b class='flag-5'>處理</b>(CIP)<b class='flag-5'>加速器</b>