劉 晟
(上海諾基亞貝爾股份有限公司,江蘇 南京 210037)
在現(xiàn)代無線通信系統(tǒng)中,分布式基站是最主要的部署形式。從基站(Base Band Unit,BBU)到用戶設(shè)備終端(User Equipment,UE)的連接依靠射頻拉遠單元(Radio Remote Unit,RRU)完成。RRU在中頻帶上實現(xiàn)數(shù)據(jù)流速率的轉(zhuǎn)換。完成基帶數(shù)據(jù)下行與移動終端數(shù)據(jù)上行[1-2]。
下行鏈路包括數(shù)字正交上變頻(Digital Up Conversion,DUC)、峰均比控制、增益與延時調(diào)節(jié)等,送入射頻芯片變?yōu)槟M信號放大后由天線發(fā)射;上行鏈路將天線接收的射頻信號經(jīng)射頻芯片變成數(shù)字信號,送入基帶單元,包括增益與延時調(diào)節(jié)、數(shù)字正交下變頻(Digital Down Conversion,DDC)等。在此過程中,數(shù)字濾波器要對鏈路中的數(shù)據(jù)流做插值與抽取操作,以改變信號的數(shù)據(jù)率。
為了使信號頻譜不產(chǎn)生混疊,采樣間隔必須服從奈奎斯特(Nyquist)采樣定理。假設(shè)連續(xù)信號x(t)的頻譜響應(yīng)X(jω)限制在(0,fH)范圍,當采樣率fs≥2fH時,x(t)可以被無失真恢復(fù);否則會發(fā)生頻譜混疊[3]。傳統(tǒng)的低通采樣在當fH很高的時候顯然難以實現(xiàn),為此引入帶通采樣定理。采樣率滿足:
定義(0,fs/2)為第一Nyquist區(qū),(fs/2,fs)為第二Nyquist區(qū),以此類推。當輸入信號頻率高于fs/2時,通過數(shù)次fs/2“折疊”,最終都能落進第一Nyquist區(qū),如圖1所示。這就意味著位于不同Nyquist區(qū)的信號最終都能用位于第一Nyquist區(qū)內(nèi)的基帶信號來表示,實現(xiàn)了頻譜搬移[3],如圖1所示。
圖1 帶通采樣時域與頻域圖
雖然絕對頻率信息丟失了,但是只要不發(fā)生頻譜混疊,都可以通過混頻把信號恢復(fù)出來。當帶通信號x(t)處于整數(shù)倍的頻帶位置,即fH和fL均為帶寬的整數(shù)倍時,最小采樣率為帶寬的兩倍,即:2*(fH-fL)。
帶通采樣中的采樣率小于兩倍信號最大頻率或帶寬,因此屬于“欠采樣(Undersampling)”。欠采樣容易在第一Nyquist區(qū)出現(xiàn)混疊,同時也會產(chǎn)生帶外噪聲的混疊效應(yīng),造成信噪比下降。實際工作中需要在帶通采樣之前設(shè)計抗混疊濾波器來消除位于Nyquist帶寬之外的頻率成分,并且加入一定寬度的保護帶
與之相對應(yīng)的是“過采樣(Oversampling)”。此時信號的采樣率遠大于兩倍信號最大頻率或帶寬,采樣后的信號是原來的信號頻域延拓疊加,對于限帶信號來說,當采樣率越高,混疊的情況越小。所以過采樣就是要改變噪聲分布,將量化噪聲推到更高的頻率上,再通過低通濾波器濾除噪聲,以此來避免混疊,改善分辨率。
對于通信系統(tǒng)而言,BBU與RRU的信號速率不同,需要變換信號的采樣率,以匹配信號速率[5]。在下行鏈路中,RRU做DUC實現(xiàn)內(nèi)插(Interpolation),提高信號采樣率;在上行鏈路中,RRU做DDC實現(xiàn)抽?。―ecimation),降低信號采樣率。
內(nèi)插是指在輸入信號中兩個原始采樣點之間等間距地插入N個新數(shù)據(jù)值,一般采用插0的操作[1]。設(shè)輸入序列x(n),插值后采樣率提高了N倍:
圖2是內(nèi)插前后時域與頻域變化。原采樣序列間均勻地插入0值在頻域上表現(xiàn)為對原頻譜的壓縮,進行頻率拓展。這樣頻譜中同時含有基帶分量與n/N的高頻分量,產(chǎn)生鏡像頻率,導致頻譜冗余。因此需要對內(nèi)插后的信號進行低通濾波,以去除鏡像頻率。該低通濾波器的頻率響應(yīng)特性為:
圖2 內(nèi)插前后時域與頻域變化
內(nèi)插采樣可以理解成過采樣的一種。信號經(jīng)過內(nèi)插采樣后,提高了數(shù)據(jù)率,簡化了后級模擬抗混疊濾波器的設(shè)計,降低了量化噪聲。內(nèi)插采樣結(jié)構(gòu)如圖3所示。
圖3 內(nèi)插采樣結(jié)構(gòu)圖
抽取可以看成是插值的逆操作,即在輸入信號的每N個等間隔采樣點中抽出一個組成新序列。設(shè)輸入序列x(n),抽取后采樣率降低了N倍:
圖4是抽取前后時域與頻域變化。信號經(jīng)過抽取之后,在頻譜上表現(xiàn)為對原頻譜進行頻移和擴展。當抽取因子N較大時,,需要保證原信號采樣率至少為Nyquist采樣率的N倍,抽取才不會發(fā)生混疊[5]。為此要先對原信號做低通濾波來限制帶寬,低通濾波器的頻率響應(yīng)特性與式(4)相同。
圖4 抽取前后時域與頻域變化
信號經(jīng)過抽取采樣后,數(shù)據(jù)率降低,簡化了對基帶數(shù)字信號處理的要求。抽取也可以通過多級級聯(lián)實現(xiàn)。抽取采樣結(jié)構(gòu)如圖5所示。
圖5 抽取采樣結(jié)構(gòu)圖
插值與抽取過程中除了采樣率變換之外,低通濾波器在模型上是一致的,用有限沖激響應(yīng)(Finite Impulse Response,F(xiàn)IR)濾波器可以實現(xiàn)。FIR濾波器用有限長度的沖激響應(yīng),對N點的輸入數(shù)據(jù)進行加權(quán)和卷積計算,得到濾波后的公式為:
系數(shù)b(n)僅依賴于輸入,而不依賴于過去的輸出。其極點只存在于零點,沒有任何反饋,在有限精度范圍內(nèi)能夠穩(wěn)定地計算,誤差也較小。FIR濾波器在通帶內(nèi)具有恒定幅頻特性和線性相位特性。
在整個頻帶上,線性相位的FIR濾波器的相位滯后和群延遲是相等并且不變的。一個N階的線性相位FIR濾波器,群延遲為常數(shù):
經(jīng)過FIR濾波后的信號延遲了N/2個時間長度。這使得通帶頻率內(nèi)的信號通過FIR濾波器后仍然保持原有形狀,而無相位畸變或者失真。
當FIR濾波器滿足原點對稱條件時,系數(shù):b(n)=-b(N-n),此時相位特性:
當FIR濾波器滿足Y軸對稱條件時,系數(shù):b(n)=b(N-n),此時相位特性:
由此可見,無論采用哪種形式的系數(shù),在逼近平直的幅頻特性的同時,還能獲得嚴格的線性相位特性,與系數(shù)b(n)的具體值無關(guān)。由于FIR濾波器只有零點,所以只需直接從頻域入手,保證具有線性相位的同時逼近理想頻率特性即可。
半帶濾波器(Half-band Filter)是一種特殊的FIR濾波器,其沖激響應(yīng)在非零點處所有的偶數(shù)點全部為0。相比于普通的FIR濾波器,其乘加的運算量幾乎減少了一倍。利于加速設(shè)計,便于硬件實現(xiàn)。
設(shè)半帶濾波器的通帶截止頻率為fp,阻帶截止頻率為fs,通帶寬度為ωp,阻帶寬度為ωs,通帶內(nèi)波紋δp,阻帶內(nèi)波紋δs,其頻率響應(yīng)H(ejω)與由于過渡帶的存在導致頻譜混疊而產(chǎn)生的鏡像頻率響應(yīng)H(ej(π-ω))之間滿足以下關(guān)系:
半帶濾波器的幅頻響應(yīng)特性圖如圖6所示。
圖6 半帶濾波器的幅頻響應(yīng)特性
由此可見,半帶濾波器在過渡帶(fsa/2,fs)內(nèi)存在混疊,在通帶(0,fp)和阻帶(fs,fsa/2)內(nèi)不存在混疊,抽取或插值后信號可以完全被恢復(fù)。半帶濾波器一般只用于2倍的插值或抽取,如果想要把信號變到更遠的頻段上,通常采用多級濾波器級聯(lián)的方式來實現(xiàn),這樣一方面減輕了單個濾波器運算的負擔,另一方面由于濾波器的階數(shù)減少了,乘加計算后的累計誤差也會相應(yīng)減少,提高了濾波器計算的精度。因此在上下變頻通道中,常用D=2N倍的插值和抽取。
在工程實現(xiàn)中,最常用的是用MATLAB軟件和可編程邏輯器件(Field Programmable Gate Array,F(xiàn)PGA)聯(lián)合設(shè)計濾波器。其流程如圖7所示。
第一步由系統(tǒng)指標來確定,第二步和第三步在MATLAB中完成,濾波器的系數(shù)可以用MATLAB函數(shù)在.m文件中設(shè)計,或者用FDAtool直接設(shè)計,前者更容易從理論的角度進行分析,后者更加直觀方便。第四步在FPGA的開發(fā)工具中實現(xiàn),可以用IP核,也可以用乘加的邏輯,前者方便簡潔,對時序的控制更好,便于綜合和布局布線,適用于FPGA工程的快速迭代。第五步在EDA仿真軟件中完成,主要是驗證濾波器的時序和邏輯的正確性。最后再回到MATLAB,用頻譜分析輸出數(shù)據(jù)是否正確。一般情況下,對于LTE信號,在RRU中的數(shù)據(jù)率變換關(guān)系如表1所示。
圖7 插值與抽取濾波器的設(shè)計流程
表1 RRU中不同帶寬數(shù)據(jù)率變換
例如,當載波帶寬為5 MHz的時候,輸入信號數(shù)據(jù)率為7.68 Mbit/s,經(jīng)過DUC后,信號數(shù)據(jù)率為122.88 MHz,因此需要16倍的插值濾波,可以設(shè)計4個×4的插值濾波器級聯(lián);當載波帶寬為20 MHz的時候,信號數(shù)據(jù)率為122.88 Mbit/s,經(jīng)過DDC后,信號數(shù)據(jù)率為30.72 Mbit/s,因此需要4倍的抽取濾波,可以設(shè)計2個×2的抽取濾波器級聯(lián)。
在MATLAB中,F(xiàn)DAtool工具可以通過圖形化的設(shè)計來生成所需的濾波器系數(shù)。FDAtool工具界面顯示如圖8所示。
圖8 FDAtool工具界面
在圖形化界面中設(shè)置Response Type為Halfband Lowpass。設(shè)載波帶寬為20 MHz,有效帶寬18 MHz,由圖5可知,fpass為18 MHz/4=4.5 MHz。采樣率從30.72~122.88 MHz之間變換。當30.72 MHz時,系數(shù)為18階;當61.44 MHz時,系數(shù)為10階;當122.88 MHz時,系數(shù)為6階。因此鏈路上整個濾波器就是三個濾波器級聯(lián)。
產(chǎn)生濾波器系數(shù)也可以用MATLAB的函數(shù)實現(xiàn)。MATLAB有自帶的半帶濾波器設(shè)計函數(shù)firhalfband,直接返回濾波器的系數(shù)。函數(shù)的具體語法可以用help來查閱。此時生成的濾波器系數(shù)是雙精度浮點型的小數(shù),為了在FPGA中實現(xiàn),必須對其做定點化,例如系數(shù)是16 bit或者18 bit二進制整數(shù),最后存儲在.coe文件中。
在FPGA中實現(xiàn)時,通常采用IP核完成。以Xilinx的Vivado開發(fā)軟件為例,選擇FIR Compiler。Coefficient File用上文MATLAB生成的.coe文件,F(xiàn)ilter Type可以選擇Interpolation或者Decimation,Rate Value表示插值或者抽取的倍數(shù)。此外通道數(shù)、數(shù)據(jù)率等接口信息在Channel Specification中設(shè)置,如圖9所示。
圖9 Xilinx的FIR濾波器IP核設(shè)計界面
本文在帶通采樣理論的基礎(chǔ)上,分析了通信系統(tǒng)里上下變頻鏈路中的多采樣率濾波器的原理,并采用MATLAB與FPGA聯(lián)合開發(fā)的方式,詳細設(shè)計了插值與抽取濾波器,具有實際的工程意義。