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

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

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

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

電子設(shè)計 ? 來源:郭婷 ? 作者:電子設(shè)計 ? 2019-05-03 08:13 ? 次閱讀

多采樣率技術(shù)已廣泛應(yīng)用于很多領(lǐng)域。在一個信號處理系統(tǒng)中,在不同的地方使用不同的采樣率有利于信號的存儲、傳輸和處理。例如在數(shù)字通信中,網(wǎng)絡(luò)的不同部分可能需要不同的編碼格式,在這些編碼格式的轉(zhuǎn)化過程中,往往涉及到基本的采樣率變換。

FPGA是實現(xiàn)數(shù)字信號處理的一種高效手段。在實現(xiàn)高帶寬信號處理領(lǐng)域,F(xiàn)PGA技術(shù)可以通過一個芯片上的多級運(yùn)算單元來獲得比通用DSP芯片更高的運(yùn)算速度[2]。由于采樣率變換能用一種并行的方法實現(xiàn),使用FPGA來實現(xiàn)就可以利用其硬件本身的并行性得到較高的效率。

1 有理數(shù)采樣率變換器的原理

從概念上講,采樣率變換器可以通過數(shù)/模轉(zhuǎn)換,再對模擬信號進(jìn)行給定頻率的模/數(shù)轉(zhuǎn)換得到。在實際的系統(tǒng)中,通過在數(shù)字域利用抽取和內(nèi)插運(yùn)算實現(xiàn)是一種更為合理和有效的手段。

抽取是降低采樣率的方法。在時域上,D倍(D為抽取因子)抽取就是從原始序列中每隔D-1個樣點取出一個構(gòu)成新的數(shù)字序列。在頻域上,這一運(yùn)算可以看成是頻譜的壓縮, 即原來以Ω sat1為周期的頻譜變?yōu)橐驭?sat2為周期的頻譜。為避免可能引起的混迭失真,抽取前應(yīng)使原信號通過一個低通濾波器。其抽取的示意圖及實現(xiàn)框圖如圖1所示。

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

內(nèi)插是提高采樣率的方法。實際的內(nèi)插系統(tǒng)由兩部分構(gòu)成:(1)零值插值器。設(shè)插值因子為I, I倍零值內(nèi)插就是在原始序列任意兩個樣本間加入I-1個零值樣本。在頻域上,頻譜進(jìn)行了擴(kuò)張,即原來以Ω sat1為周期的頻譜變?yōu)橐驭?sat2為周期的頻譜。從Ω c到Ω sat2-Ω c的頻帶被稱為鏡像頻譜。(2)低通濾波器。信號經(jīng)過此濾波器后,鏡像頻譜被濾去,從而得到采樣率提高的信號序列。內(nèi)插圖示及實現(xiàn)框圖如圖2所示。

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

利用抽取系統(tǒng)和內(nèi)插系統(tǒng)的級連,就可以得到有理數(shù)采樣率轉(zhuǎn)換器的基本方案。一般地,對于 I/D 倍數(shù)的有理數(shù)采樣變換,通過先內(nèi)插后抽取的方法,可以得到如圖3所示的實現(xiàn)框圖。圖3(a)中的第二部分和第三部分是兩個低通濾波器的級連,因而總的濾波效果等效為通帶邊緣較低的低通濾波器,合并后得到框圖3(b)。

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

然而,對于上述三個系統(tǒng),利用原始框圖直接實現(xiàn)并不是一個很好的方案。如從圖3可以看出,該系統(tǒng)最主要的運(yùn)算量在濾波器的實現(xiàn)部分,圖3(b)中濾波器的采樣率為 F3=I,F(xiàn)1=DF2, 濾波運(yùn)算是在最高采樣率的部分實現(xiàn)的,這是不經(jīng)濟(jì)的。換一種說法,比如對后兩級的系統(tǒng),經(jīng)濾波后的序列每D個樣本中僅有一個是實際需要的,而D-1樣本的運(yùn)算被丟棄了。

2 FIR濾波器的多相分解與多采樣率系統(tǒng)網(wǎng)絡(luò)變換

利用FIR濾波器的多相分解[1~2]及多采樣率系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)的變換[1],可以得到降低了運(yùn)算代價的采樣率變換器的多相結(jié)構(gòu)。

FIR濾波器的多相分解是指將數(shù)字濾波器H(z)可分解為若干個不同的組。設(shè)H(z)的轉(zhuǎn)移函數(shù)為:

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

對于多采樣率網(wǎng)絡(luò),存在下面幾個等效變換:

T1: 抽取與乘常數(shù)可以換位。

T2: 零值插值和乘常數(shù)可以換位。

T3:兩個信號先分別抽取然后相加,以及先相加然后抽取等效。

T4:抽樣率相同的兩個信號先分別零值內(nèi)插(內(nèi)插因子相等)然后相加,以及先相加然后零值內(nèi)插等效。

T5:如果I和D 互質(zhì),則抽取與內(nèi)插可以交換。

此外,Nobel關(guān)系式[3]給出了抽取/內(nèi)插與濾波器級連時如圖4所示的等效變換。

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

Nobel 關(guān)系式的意義在于:在抽取與濾波級連時,首先進(jìn)行抽取運(yùn)算,可以把濾波器的長度降低一個D因子; 內(nèi)插與濾波級連時,首先進(jìn)行濾波運(yùn)算,可以使濾波器的的長度降低一個I因子。

3 采樣率變換器的多相表示結(jié)構(gòu)

通過對圖1中的整數(shù)倍速抽取器系統(tǒng)進(jìn)行多相分解(分解式1),然后依次進(jìn)行T3及Nobel變換(抽?。?,可以得到抽取系統(tǒng)的多相結(jié)構(gòu)。此結(jié)構(gòu)中濾波器將在F2=F1/D的采樣率下進(jìn)行,也就是說,對于給定的芯片和濾波器結(jié)構(gòu),濾波器能達(dá)到最高時鐘頻率相同時,該結(jié)構(gòu)能處理的帶寬是圖1的D倍,或者說對相同采樣率的數(shù)據(jù),該結(jié)構(gòu)對濾波器最高時鐘頻率的要求降低為原來的1/D,因而是一種高效的實現(xiàn)方式。

類似地,對圖2中的整數(shù)內(nèi)插系統(tǒng)進(jìn)行多相分解(分解式2),并依次進(jìn)行T4及Nobel變換(零內(nèi)插),以得到整數(shù)內(nèi)插的多相結(jié)構(gòu),通過變換,將以F1=F2/I的采樣率進(jìn)行濾波運(yùn)算。

分?jǐn)?shù)倍采樣率轉(zhuǎn)換器的多相結(jié)構(gòu)有多種實現(xiàn)方案。

(1)如果I與D不互質(zhì),可以利用已經(jīng)得到的多相結(jié)構(gòu),然后與抽取或內(nèi)插級連實現(xiàn)。如圖3(b)中可以把前兩部分用圖5的多相結(jié)構(gòu)實現(xiàn)或把后兩部分用圖6的多相結(jié)構(gòu)實現(xiàn),具體選擇時可參考D與I的數(shù)值。

(2)如果I與D互質(zhì),則可以轉(zhuǎn)化為更為高效的多相結(jié)構(gòu)[1,4]。圖7即是I、D互質(zhì)時的一種高效結(jié)構(gòu)。這一結(jié)構(gòu)的推導(dǎo)利用了多相分解的分解式1和分解式2、T1~T5以及兩數(shù)互質(zhì)時的歐幾里德公式(若I、D互質(zhì),則存在整數(shù)p、q,使得pI+qD=1)。這樣的結(jié)構(gòu)不是唯一的,通過多采樣率系統(tǒng)的網(wǎng)絡(luò)變換,還可以得到其他的結(jié)構(gòu)。在此結(jié)構(gòu)中,濾波器運(yùn)算是在F4的采樣率中進(jìn)行的,且有F4=F1/D=F2/I,與最初的形式相比,濾波器的最高時鐘頻率相同時,處理帶寬增大為原來的I×D倍。

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

該多相結(jié)構(gòu)中的Rm,n(z4)可以由原始濾波器經(jīng)過兩次多相分解而求得。特殊地,如果有濾波器的級數(shù)N=DI,則 Rm,n(z4)=h[(n+1)I-(m+1)T3],為原始濾波器某一項的系數(shù)。

4 FPGA設(shè)計與驗證

由于整數(shù)倍抽取和內(nèi)插的實現(xiàn)過程可以包含在分?jǐn)?shù)采樣率變換器的實現(xiàn)過程中,因此下面只討論I、D互質(zhì)的有理數(shù)采樣率變換器的實現(xiàn)。

根據(jù)圖7的多相結(jié)構(gòu),對于I、D互質(zhì)的分?jǐn)?shù)抽樣率轉(zhuǎn)化系統(tǒng),可以分解為四個模塊:

(1)輸入與延時鏈模塊。這部分的時鐘周期應(yīng)該為T1。

(2)R0~RI-1的延時與抽取模塊。注意:抽取器只是在第0,D,……,N×D個時鐘周期讓信號通過,其他時鐘周期阻隔信號。若已知延時與抽取鏈的功能,則可用一個如圖8(a)所示的多相選擇開關(guān)來實現(xiàn),而圖8(b)給出了該電路的一種實現(xiàn)方案,其中TClk_T4 =DTclk_T1,T4為模塊3的時鐘周期。

(3)本系統(tǒng)最為關(guān)鍵的部分是第三部分。該部分是運(yùn)算的主體部分,對整個系統(tǒng)的資源利用率和時鐘性能有很大的影響。該模塊需要實現(xiàn)的是I×D個FIR濾波器。對于給定的設(shè)計,這些濾波器的系數(shù)是常數(shù),可由如下方法得到:

①根據(jù)低通濾波器的要求,用Matlab的FDAtool計算出濾波器的系數(shù),并使其階數(shù)N=M×I×D,M為正整數(shù),可根據(jù)濾波器的需要選取。

②利用多相分解公式計算每個濾波器的系數(shù)。

③把所得到的數(shù)字進(jìn)行定點化處理(比如系數(shù)同乘以2 048,取整,待計算出結(jié)果后右移11位)。

對于常系數(shù)的FIR濾波器,在FPGA實現(xiàn)時,有多種可以選擇的方式以降低復(fù)雜性。在本設(shè)計中,采用簡化的加法器圖[3]來實現(xiàn),避免了使用資源代價較大的通用乘法器,同時提高了系統(tǒng)的整體性能。例如,在測試系統(tǒng)的設(shè)計中,需要計算132×x(n)、28×x(n-1)、126×x(n-2)、13×x(n-3),用圖9方案來實現(xiàn)時,將比用四個通用乘法器節(jié)省更多的LE資源,并且使最高的時鐘頻率得到了提高。表1給出了一個測試系統(tǒng)的資源與性能對比(使用了Altera公司的EP1C3T144C6芯片及Quartus II 5.1版本進(jìn)行綜合)。

(4)第四部分是與第二部分類似的模塊。零內(nèi)插器的特點是某個時鐘周期有用信號通過,其余時鐘周期通過零值,因而內(nèi)插與延時相加模塊也可用一個多相選擇開關(guān)來實現(xiàn)。內(nèi)插與延時相加模塊實現(xiàn)電路圖如圖10所示。

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

通過FPGA芯片實現(xiàn)對高效多相結(jié)構(gòu)的采樣率變換器進(jìn)行優(yōu)化

圖11給出了一個D=3、I=4、N為12時的分?jǐn)?shù)采樣率變換的部分仿真結(jié)果(Modelsim 6.1)。其中,濾波器系數(shù)定點化為12位補(bǔ)碼,輸入、輸出數(shù)據(jù)為12位補(bǔ)碼整數(shù), 測試輸入序列為20kHz的正弦波波形序列,采樣率為600kHz,輸出為800kHz采樣的正弦波序列。通過把輸入輸出序列保存并做FFT變換,可以得到兩者的實際頻率相同的結(jié)論。

利用FIR濾波器的多相分解及多采樣率網(wǎng)絡(luò)變換技術(shù),本文介紹了一種有理數(shù)采樣率變換器的高效多相結(jié)構(gòu),并結(jié)合FPGA芯片的結(jié)構(gòu)進(jìn)行了實現(xiàn)與優(yōu)化。文中的一些方法也適用于其他多采速率系統(tǒng)的設(shè)計。


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

    關(guān)注

    1630

    文章

    21777

    瀏覽量

    604734
  • 濾波器
    +關(guān)注

    關(guān)注

    161

    文章

    7854

    瀏覽量

    178526
  • 變換器
    +關(guān)注

    關(guān)注

    17

    文章

    2106

    瀏覽量

    109427
收藏 人收藏

    評論

    相關(guān)推薦

    【TL6748 DSP申請】矩陣變換器

    電流信號,進(jìn)行調(diào)制占空比矩陣的計算,控制算法的實現(xiàn)等。FPGA板與DSK板通過2個80Pin的插座連接,FPGA
    發(fā)表于 09-10 11:06

    怎樣進(jìn)行音頻采樣率的轉(zhuǎn)換?

    怎樣進(jìn)行音頻采樣率的轉(zhuǎn)換?用FPGA實現(xiàn)音頻頻率的采樣率轉(zhuǎn)換存在哪些問題?
    發(fā)表于 04-08 07:01

    矩陣變換器空間矢量調(diào)制策略的FPGA實現(xiàn)

    本文介紹了矩陣變換器的雙空間矢量調(diào)制的基本原理和仿真算法,給出了基于FPGA實現(xiàn)方法及其結(jié)果。仿真波形和實驗結(jié)果表明:采用FPGA 實現(xiàn)
    發(fā)表于 01-13 17:04 ?13次下載

    FPGA中轉(zhuǎn)換音頻采樣率

    摘要:本文探討和分析了采用FPGA進(jìn)行音頻信號處理的方案,使用SynplifyDSP綜合工具可取得最佳結(jié)果。關(guān)鍵詞:音頻信號處理,采樣率轉(zhuǎn)換,Synplify材DSP綜合工具,折疊系
    發(fā)表于 07-05 14:35 ?30次下載

    FPGA實現(xiàn)音頻采樣率的轉(zhuǎn)換

    FPGA實現(xiàn)音頻采樣率的轉(zhuǎn)換 如今,即使低成本FPGA也能提供遠(yuǎn)遠(yuǎn)大于DSP的計算能力。目前的FPGA包含專用乘法器甚至DSP乘法/累加
    發(fā)表于 03-01 10:50 ?4479次閱讀
    用<b class='flag-5'>FPGA</b><b class='flag-5'>實現(xiàn)</b>音頻<b class='flag-5'>采樣率</b>的轉(zhuǎn)換

    采樣率變換器多相表示結(jié)構(gòu)FPGA實現(xiàn)

    本文介紹了一種有理數(shù)采樣率變換器高效多相結(jié)構(gòu),并結(jié)合FPGA
    發(fā)表于 03-02 10:04 ?2459次閱讀
    <b class='flag-5'>采樣率</b><b class='flag-5'>變換器</b>的<b class='flag-5'>多相</b>表示<b class='flag-5'>結(jié)構(gòu)</b><b class='flag-5'>FPGA</b><b class='flag-5'>實現(xiàn)</b>

    采樣率濾波的硬件離散小波變換

    采樣率濾波的硬件離散小波變換,下來看看
    發(fā)表于 01-08 15:59 ?13次下載

    基于FPGA實現(xiàn)采樣率FIR濾波的研究

    基于FPGA實現(xiàn)采樣率FIR濾波的研究
    發(fā)表于 01-08 15:59 ?19次下載

    采樣率轉(zhuǎn)換中Farrow濾波實現(xiàn)結(jié)構(gòu)研究

    采樣率轉(zhuǎn)換中Farrow濾波實現(xiàn)結(jié)構(gòu)研究
    發(fā)表于 02-14 17:13 ?58次下載

    DN222-高效多相變換器采用雙輸入單輸出

    DN222-高效多相變換器采用雙輸入單輸出
    發(fā)表于 04-25 08:20 ?1次下載
    DN222-<b class='flag-5'>高效</b><b class='flag-5'>多相變換器</b>采用雙輸入單輸出

    什么是信號采樣率?如何更改信號的采樣率?

    更改信號采樣率是數(shù)字信號處理中的一個重要操作,它涉及對信號進(jìn)行重新采樣,以改變信號的采樣率。
    的頭像 發(fā)表于 06-20 14:44 ?4054次閱讀

    多相結(jié)構(gòu)采樣率變換器FPGA實現(xiàn)

    專用集成電路(ASIC)領(lǐng)域中的一種半定制電路而出現(xiàn)的,既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點。FPGA結(jié)構(gòu)靈活,其邏輯單元、可編程內(nèi)部連線和I/O單元都可以由用戶編程,可以實現(xiàn)任何邏輯功能,滿足各種
    的頭像 發(fā)表于 08-08 18:05 ?925次閱讀
    <b class='flag-5'>多相</b><b class='flag-5'>結(jié)構(gòu)</b><b class='flag-5'>采樣率</b><b class='flag-5'>變換器</b>的<b class='flag-5'>FPGA</b><b class='flag-5'>實現(xiàn)</b>

    什么叫采樣率 數(shù)字信號處理時鐘與采樣率的關(guān)系

    對于相同的信號周期(下述圓),每隔一段時間采樣點移動一次為采樣率,表格為三種不同采樣率。由表知采樣率1采樣速度最慢,
    發(fā)表于 08-17 10:11 ?4534次閱讀
    什么叫<b class='flag-5'>采樣率</b> 數(shù)字信號處理時鐘與<b class='flag-5'>采樣率</b>的關(guān)系

    什么是示波器的實時采樣率?什么是示波器的等效時間采樣

    什么是示波器的實時采樣率? 什么是示波器的等效時間采樣? 示波器是一種測試儀器,用于顯示波形和信號的性質(zhì)。實時采樣率是指示波器在一個時間單位內(nèi)(通常是1秒),可以將信號進(jìn)行
    的頭像 發(fā)表于 10-17 16:16 ?2111次閱讀

    如何優(yōu)化adc的采樣率

    重要參數(shù),它決定了信號數(shù)字化的頻率。根據(jù)奈奎斯特定理,為了避免混疊效應(yīng),采樣率至少應(yīng)為信號中最高頻率成分的兩倍。然而,實際應(yīng)用中,為了獲得更好的信號質(zhì)量,采樣率通常會更高。 采樣率優(yōu)化
    的頭像 發(fā)表于 10-31 11:04 ?740次閱讀