發布日期:2022-10-09 點擊率:89
0 引 言 由于在FPGA中數據由定點數表示,所以需要對系數進行量化。本設計中,采用整系數表示方法,對濾波器系數先放大127倍,然后取整量化為8位整數,量化后它的沖激響應系數如表1所示。 2 分布式算法與多相原理 這里,利用一個查找表來實現,即把所有可能的2N個中間數據存儲在一個查找表中,以一個N位輸入向量xb作為地址,輸出為對應該向量的一個特定值。對于并行分布式算法結構濾波器,從低位到高位,依次乘以2N,N=0,1,2,…,然后相加得到輸出值。 2.2 多速率FIR的多相表示
根升余弦成形濾波器是數字信號處理中的重要部件,它能對數字信號進行成形濾波,壓縮旁瓣,減少干擾的影響,從而降低誤碼率。根據文獻[1],它的傳統FP-GA實現方式基于乘累加器(Multiplier Add Cell,MAC)結構,設計方便,只需要乘法器、加法器和移位寄存器即可實現,但是在FPGA中實現硬件乘法器十分耗費資源。特別是當濾波器階數很高時,資源耗費不可忽視。若采用乘法器復用的結構,運算速度較慢。分布式算法(Distribute Arithmetic,DA)是另一種應用在FPGA中計算乘積和的算法。根據文獻[2],分布式算法結構的FIR濾波器利用FPGA中的查找表(LUT)來替代乘法器,這種方法可以極大地減少硬件電路規模,有效提高邏輯資源的利用率,而且有較高的處理速度,滿足實時處理的要求。分布式算法的處理速度僅與輸入的位寬有關,對于大規模乘積和的運算,其計算速度有著明顯的優勢。當輸入位寬過大時,可以通過將DA算法改進成并行結構而獲得更快的處理速度。根據文獻[3],對多速率系統來說,還可以引入多相結構來減少計算量,提高處理速度。本文針對根升余弦成形濾波器提出一種基于多速率信號處理技術和分布式算法的FPGA實現技術,使得計算量大幅減少,處理速度得到較大提高,而且使得FPGA資源利用更合理。
1 根升余弦濾波器原理與結構
奈奎斯特第一準則提出消除碼間干擾,系統從發送濾波器經信道到接收濾波器總的傳輸特性所應滿足的條件,據此可以求出滿足奈奎斯特準則的成形濾波器。根據文獻[4],在實際中得到廣泛應用的是幅頻響應,它是具有奇對稱升余弦形狀過渡帶的一類濾波器,即升余弦濾波器,它的沖激響應為:
式中:丁為輸入碼元速率;a為滾降系數,實際應用在0~0.4之間。除了抽樣點n=0之外,它在其余所有抽樣點上均為0,而且它的衰減很快,隨著n的增大,呈平方衰減。這樣,對于減小碼間干擾及對定時誤差的影響非常有利。
本文要求實現的基帶成形濾波器滾降系數為0.35。它的頻率響應要求如圖1所示。
2.1 分布式算法原理
分布式最初由Croisier于1973年提出,但直到出現查找表結構的FPGA之后,分布式算法才被廣泛應用于乘積計算中。FIR濾波器采用分布式算法可以極大地減少硬件電路的規模,很容易實現流水線技術,提高電路的執行速度。
根據文獻[5],長度為N的因果有限沖激響應濾波器(FIR)可以用下列傳輸函數H(z)來描述。
在時域中,上述FIR濾波器的輸入輸出關系為:
式中:y[n]和x[n]分別是輸出和輸入的序列;h[k]為沖激響應在時間序號k時的系數。若y(n)表示濾波器的輸出,Ak表示濾波器的系數,xk(n)表示第忌個輸入變量,則N階線性、時不變FIR濾波器的輸出為:
在FPGA的實現中,根據文獻[6]數據采用二進制補碼表示,所以變量xk可以表示為:
式中:xkb為xk的第b比特位;B為輸入變量xk的數據位數。將式(5)代入式(4)可得:
下一篇: PLC、DCS、FCS三大控
上一篇: 索爾維全系列Solef?PV