引言
在現(xiàn)代電子系統(tǒng)中,,到處都可以看到數(shù)字信號(hào)處理( DSP )的應(yīng)用,從MP3播放器,、數(shù)碼相機(jī)到手機(jī),。DSP設(shè)計(jì)人員的工具箱的支柱之一是有限脈沖響應(yīng)( FIR )濾波器。FIR濾波器越長(zhǎng)(有大量的抽頭),,濾波器的響應(yīng)越好,。然而這里有折衷的情況,由于大量的抽頭增加了對(duì)邏輯的需求,、增加了計(jì)算的復(fù)雜性,,增加了功耗,以及可能引起飽和/溢出,。
多相技術(shù)可以用于實(shí)現(xiàn)濾波器,,擁有與傳統(tǒng)FIR濾波器可比的結(jié)果,而且使用了較少的邏輯,、需要較少的計(jì)算資源,、更低的功耗,并減少了可能的飽和/溢出,??捎萌缃裥滦偷男∫?guī)模、中檔的FPGA,,如LatticeECP3 來實(shí)現(xiàn)這些濾波器,。
基本概念
進(jìn)入DSP世界可能會(huì)有些令人生畏,因此,,讓我們首先介紹一些簡(jiǎn)單的概念,。對(duì)于數(shù)字系統(tǒng),如音頻,,視頻和無線領(lǐng)域,,形成信號(hào)的結(jié)果是與采樣率相關(guān)的。舉例來說,,以48 kHz(即每秒48000個(gè)樣本)對(duì)專業(yè)音頻信號(hào)進(jìn)行采樣。相比之下,,消費(fèi)者的CD播放機(jī)則使用44.1 kHz的采樣率,。
多速率系統(tǒng)
多速率系統(tǒng)使用多個(gè)采樣速率。在某些情況下,,運(yùn)行于某個(gè)速率的系統(tǒng)的一部分需要一個(gè)原來以另外某個(gè)速率采樣的信號(hào)(轉(zhuǎn)換專業(yè)音頻到消費(fèi)者的CD音頻就是一個(gè)例子),。在這種情況下,,原始信號(hào)的速率必須根據(jù)需要增加或減少。
或者針對(duì)特定的用途,,也可能以比實(shí)際需要更高的速率對(duì)原來的數(shù)據(jù)進(jìn)行了采樣,。因此,降低采樣率,,然后運(yùn)行所得到的數(shù)據(jù)就可以大幅度降低數(shù)據(jù)吞吐量的要求,,降低對(duì)存儲(chǔ)器的要求,提高處理效率并降低功耗,。
向下采樣和抽取
讓我們首先考慮降低采樣率的問題,。假設(shè)我們有一個(gè)信號(hào),原來以我們稱之為fHz的某一頻率進(jìn)行采樣,,如如圖1所示,。
|
圖1 用f Hz采樣率對(duì)原始信號(hào)采樣 |
現(xiàn)在假設(shè)我們要降低采樣率至原來頻率的1/4。達(dá)到此目的一個(gè)方法來就是簡(jiǎn)單地扔掉每四個(gè)原始采樣中的三個(gè),,如圖2所示,。
|
圖2 用1/4 f Hz采樣率得到新的信號(hào) |
在數(shù)字信號(hào)處理中, “混疊現(xiàn)象”是指采樣時(shí)造成不同的連續(xù)信號(hào)彼此難以區(qū)分的情況,,它們互相“混疊”,。 混疊現(xiàn)象也稱為失真,或贗品,,即源于采樣重構(gòu)的信號(hào)不同于原來的連續(xù)信號(hào),。
如果我們丟棄了如上文所討論的一些樣本,由此得到的信號(hào)會(huì)含有混疊現(xiàn)象的贗品,。作為一個(gè)簡(jiǎn)單的例子,,考慮一個(gè)音頻信號(hào),可能含有人耳聽不見的高頻分量的樂曲,。如果我們以過低的速率對(duì)這個(gè)信號(hào)采樣(當(dāng)我們丟棄一些樣本時(shí),,實(shí)際上是我們正在做的事情),然后用數(shù)字模擬轉(zhuǎn)換器重構(gòu)這個(gè)樂曲,,我們可以聽到欠采樣高頻分量的低頻混疊,。
為了避免這種情況,常見的做法是在丟棄不想要的樣本之前,,用低通濾波器去除不要的高頻,,如圖3所示。
|
圖3 在丟棄任何樣本前對(duì)這個(gè)信號(hào)進(jìn)行濾波 |
一般而言,, “向下采樣”只是指丟棄樣本的處理而不執(zhí)行濾波的操作,。相比之下, “抽取”指的是降低采樣率的整個(gè)過程,,即執(zhí)行濾波操作,,然后丟棄樣本,。實(shí)際上, “向下采樣” ,、“下變頻”和“抽取”往往交替使用,。
“抽取因子”是指輸入采樣率與輸出采樣率之比。通常用字母M來表示,。在上面的例子中,,輸入速率是輸出速率的4倍,所以M=4,。
向上采樣和內(nèi)插
現(xiàn)在考慮的情況是,,我們希望提高采樣率。這樣做的原因是為了使系統(tǒng)的另一部分與信號(hào)運(yùn)行在更高的采樣速率,。假設(shè)我們從一個(gè)信號(hào)開始,,即原來以我們稱為fHz的某個(gè)頻率進(jìn)行采樣的信號(hào),如圖4所示,。
|
圖4 采樣率為f Hz的原始信號(hào) |
現(xiàn)在假設(shè)我們要增加采樣率為原來頻率的4倍,。我們開始在原始樣本之間插入零值樣本,以提高采樣率,,如圖5所示,。
|
圖5 用零值樣本對(duì)原始信號(hào)進(jìn)行擴(kuò)充 |
但現(xiàn)在有一個(gè)問題,因?yàn)樾碌牧阒禈悠诽砑恿瞬灰念l譜分量至信號(hào),。為了解決此問題,,我們對(duì)這個(gè)新的信號(hào)進(jìn)行了濾波,除去了不想要的分量,,產(chǎn)生了更合適的采樣值,,如圖6所示。
|
圖6采樣率為4倍 fHz的最終信號(hào) |
從技術(shù)上講,, “ 向上采樣 ”只是指插入零值樣本的過程,。相比之下, “內(nèi)插”指的是增加采樣率的整個(gè)過程,,即插入零值樣本,,然后進(jìn)行濾波操作1。實(shí)際上,, “向上采樣 ”,、“向上轉(zhuǎn)換”和“內(nèi)插”往往交替使用。
“內(nèi)插因子”指的是輸出采樣率對(duì)輸入采樣率的比例,。這通常用字母L來表示,。在上面的例子中,輸出速率4倍于輸入速率,因此,,L = 4 。這個(gè)過程的圖形說明參見圖7,。
|
圖7 插入零值樣本后對(duì)這個(gè)信號(hào)進(jìn)行濾波 |