摘 要:提出了數(shù)字信道模擬器中一種高精度的高斯分布誤碼插入方法,該方法結合了改進型混和同余算法和中心極限定理,并采用FPGA+ARM實現(xiàn)了數(shù)字基帶信號的高斯誤碼插入,具有精度高、容易實現(xiàn)的優(yōu)點。Matlab仿真結果和測試數(shù)據(jù)驗證了算法的可行性。
關鍵詞:信道模擬器;高斯分布誤碼;混和同余法;中心極限定理
中圖分類號:TN911.4 文獻標識碼:B
文章編號:1004373X(2008)0100403
Design and Implementation of Gaussian[CD*2]distribution Error Code Insertion
ZHANG Huping,YAO Yuancheng,F(xiàn)ENG Li
(School of Information Engineering,Southwest University of Science Technology,Mianyang,621010,China)
Abstract:This paper presents a method for designing a high accuracy Gaussian[CD*2]distribution error code insertion suitable for digital channel simulator.The proposed solution is based on the combined use of the improved mixing congruent method and the central limit theorem.The resulting architecture provides a high accuracy Gaussian[CD*2]distribution error code insertion with low complexity architecture for a digital implementation in FPGA and ARM.The performance is studied by means of Matlab simulations and test data.
Keywords:channel simulator;Gaussian[CD*2]distribution error code;mixing congruent method;central limit theorem
1 引 言
數(shù)字信道模擬器中,需要對輸入的數(shù)字信號插入一定的誤碼和延時。而插入的誤碼一般有隨機誤碼和突發(fā)誤碼,其中信號隨機誤碼插入一般是具有高斯分布特性誤碼的插入,是模擬器設計中的難點。相對于傳統(tǒng)的軟件方法,硬件實現(xiàn)方法具有速度快的優(yōu)點。在文獻\\[1\\]中提出了實現(xiàn)隨機誤碼插入的軟硬相結合的方法,結合了軟件產(chǎn)生偽隨機數(shù)長和硬件速度快的優(yōu)點,但需要占用大量的存儲空間。針對信道模擬器的噪聲發(fā)生器設計,在文獻\\[2\\]中將Box[CD*2]Muller算法和中心極限定理應用在FPGA中產(chǎn)生加性高斯白噪聲。
本文將改進型混和同余法和中心極限定理應用在數(shù)字信道模擬器的高斯誤碼插入設計中,采用FPGA+ARM全數(shù)字硬件架構,具有精度高、硬件實現(xiàn)容易、節(jié)約硬件邏輯資源的優(yōu)點,可廣泛應用于高速無線和有線通信信道模擬器。
2 設計原理
數(shù)字模擬器的高斯分布誤碼插入的性能指標為:插入具有高斯白噪聲下的誤比特特性,誤比特率為0,1.0×10-8 ~9.9×10-3 可調(diào),每量級上步進均為0.1,且每個信道每個方向上可獨立仿真隨機誤比特。
數(shù)字信道中接收信號的誤碼特性可以用誤碼分布和誤碼率來描述。因此,對數(shù)字信道器中誤碼的插入,實質(zhì)上是要解決誤碼分布的產(chǎn)生及誤碼數(shù)量的控制問題。隨機誤碼插入的過程如圖1所示。
首先,根據(jù)誤碼分布特性,隨機數(shù)發(fā)生器產(chǎn)生與隨機誤碼分布特性相一致的隨機數(shù)序列,同時借鑒真實數(shù)字信道中誤碼數(shù)量與判決電平選取相關,模擬器誤碼數(shù)量的控制通過設置與誤比特率和誤碼分布相關的閾值TH來實現(xiàn)。接著,比較器將閾值TH和隨機數(shù)發(fā)生器產(chǎn)生的隨機數(shù)R相比較,若R≤TH則輸出誤碼標記1,否則輸出0,這樣就產(chǎn)生了0和1誤碼圖案數(shù)據(jù)流。顯然誤碼圖案數(shù)據(jù)流中的誤碼標記1的分布與誤碼分布一致,且其個數(shù)與誤碼數(shù)量一致。最后,將具有誤碼分布特性和數(shù)量特性誤碼圖案數(shù)據(jù)流與模擬器輸入的無誤碼的數(shù)據(jù)作模二和運算,完成隨機誤碼的插入。
由上面的論述可知隨機誤碼的插入有4個關鍵點:
(1) 具有誤碼分布特性的隨機數(shù)的產(chǎn)生;
(2) 由誤碼分布特性和誤比特率求取閾值;
(3) 將產(chǎn)生的隨機數(shù)和閾值作比較獲取誤碼圖案數(shù)據(jù)流;
(4) 將誤碼圖案數(shù)據(jù)流疊加到輸入的無誤碼數(shù)據(jù),完成隨機誤碼插入。
其中產(chǎn)生具有誤碼分布特性的隨機數(shù)和計算閾值是隨機誤碼插入中的難點,下面將對這兩個步驟進行分析。
2.1 具有誤碼分布特性的隨機數(shù)的產(chǎn)生
受高斯白噪聲的影響的傳輸信號其誤比特的分布也服從高斯分布,所以設計中產(chǎn)生的隨機數(shù)應具有高斯分布特性。
高斯分布的隨機數(shù)可由(0,1)區(qū)間均勻分布的隨機數(shù)近似得到[3],因此這里先討論均勻分布隨機數(shù)的產(chǎn)生。
2.1.1 均勻分布隨機數(shù)的產(chǎn)生
均勻分布隨機數(shù)是產(chǎn)生其他分布隨機數(shù)的基礎,如高斯分布、指數(shù)分布等,因此產(chǎn)生獨立的、均勻的且具有大周期的均勻隨機數(shù)至關重要。
常用的均勻隨機數(shù)的產(chǎn)生方法主要有線性同余法、反饋位移寄存法和組合同余法。其中線性同余法實現(xiàn)簡單、占用存儲單元少,是目前應用最廣泛的方法之一,他包括同余與線性同余法,混和同余法,乘同余法和素數(shù)乘同余法。但用線性同余法產(chǎn)生的隨機數(shù)的周期與處理器的數(shù)據(jù)位數(shù)有關,不易得到大周期的隨機數(shù),而且每個隨機數(shù)僅能出現(xiàn)1次而不能重復。
在文獻\\[4\\]中提出的一種生產(chǎn)大周期隨機數(shù)的新算法——改進的混和同余法,他克服了一般生產(chǎn)的隨機數(shù)周期小,每個隨機數(shù)僅能出現(xiàn)1次而不能重復的缺點。這種改進的混和同余法迭代公式為:
其中a,x0和M是正整數(shù),i是迭代次數(shù),ri是(0,1)區(qū)間均勻分布的隨機數(shù)。
2.1.2 高斯分布隨機數(shù)的產(chǎn)生
用均勻分布隨機數(shù)產(chǎn)生高斯分布隨機數(shù)常用的方法有:直接抽樣、變化抽樣、舍選抽樣和近似抽樣[2]。其中,近似抽樣中基于中心極限定理的方法硬件實現(xiàn)簡單且精度適中[3,5]。
由中心極限定理可知,獨立同分布且具有相同的均值μ和方差σ2(σ2≠0)的隨機變量,X1,
2.1.3 仿真結果
應用式(1),取a=75、初值x0=51,并考慮到系統(tǒng)要求的最小誤比特率為1.0×10-81.0×10-25,因此取M=226-1,通過Matlab仿真得到(0,M)區(qū)間分布的隨機數(shù)xi,其樣本均值為3.367 5×107,方差為3.757 5×1014。而其標準均值為M/2=3.355 4×107,方差為M2/12=3.753 0×1014。
采用32路(0,226-1)區(qū)間均勻分布的隨機數(shù)合成一路(0,231-1)區(qū)間的高斯分布隨機數(shù)。
圖2給出了Matlab仿真產(chǎn)生的10 000個高斯分布隨機數(shù)。圖3,圖4分別給出了Matlab 中hist函數(shù)和normplot函數(shù)繪制的圖2中隨機數(shù)的直方圖和正態(tài)校驗圖。
用Matlab中的mean函數(shù)和var函數(shù)計算出圖2中10 000個隨機數(shù)的樣本均值和方差分別為1.073 8×109,1.296 1×1016。
從圖3所示直方圖可以看出,這10 000個隨機數(shù)的分布與高斯分布相一致。此外,從圖4中的分布情況看,基本上所有的隨機數(shù)都落在虛線上,滿足高斯分布。所以可以得出結論:采用32路改進型混和同余法產(chǎn)生的均勻分布的隨機數(shù)求和合成的隨機數(shù)完全符合高斯分布隨機數(shù)的統(tǒng)計特性。
2.2 閾值的求取
根據(jù)設置的誤比特率Pe和誤碼分布的概率密度函數(shù)(如高斯分布),可以通過式(3)求出閾值TH。
該積分函數(shù)可以通過分位數(shù)的概念來求,需要查表。因此采用該方法雖然理論上比較嚴謹,但是實際中求取閾值TH是比較困難的,并且求出來的閾值不一定使錯誤概率等于Pe,會存在一定的誤差。文中直接采用正態(tài)分布的分布函數(shù)來求解,正態(tài)分布的分布函數(shù)為:
其中erf(x)=2π∫x0e-t2dt,在Matlab中可識別這個函數(shù),因此可以通過仿真求得一個特定值(誤比特率)所對應的x即TH值。表1給出了均值為1.073 8×109,方差為1.296 1×1016高斯分布誤碼率Pe和閾值TH對應典型值。
3 誤碼插入的實現(xiàn)
圖5給出了數(shù)字信道模擬器的誤碼插入實現(xiàn)框圖。其中,ARM作為模擬器主控器,提供PC機配置接口、液晶顯示和鍵盤操作、存儲器接口以及ARM與FPGA間協(xié)議轉(zhuǎn)換;FPGA作為信號實時處理器,實現(xiàn)信號的輸入/輸出以及隨機誤碼的實時插入。
設計中,主控器ARM采用了ARM公司的32位ARM7TDMI處理器,F(xiàn)PGA采用了Xilinx公司的Spartan III系列150萬門的XC3S1500 FPGA。ARM7TDMI具有高的指令吞吐量、出色的實時中斷響應等優(yōu)異的性能,但功耗缺很低,使用門的數(shù)量也很少。XC3S1500封裝為FG456,兼容同系統(tǒng)的40、100萬門FPGA,支持MicroBlaze32位微處理器IP和Chipscope片內(nèi)邏輯分析儀,具有資源豐富、功耗低調(diào)試方便的優(yōu)點。
這種方案的優(yōu)點是:采用ARM作為主控器可以利用其豐富的硬件資源實現(xiàn)多種人機交互接口;采用FPGA作為實時信號處理器可以利用其強大的實時信號處理能力完成高速的數(shù)據(jù)流的誤碼實時插入,且FPGA具有無限次可編程的優(yōu)點使得系統(tǒng)的擴展和升級變得非常容易。此外利用配置PC機通過ARM將閾值存儲到存儲器中,使得更新閾值庫變得非常方便;同時利用FPGA產(chǎn)生隨機數(shù),不需要額外的存儲空間或器件充分利用FPGA,節(jié)約了成本,降低了設計難度。
4 測 試
所研制的數(shù)字信道模擬器具多種信號協(xié)議接口,利用電子工業(yè)部第41研究所制造的AV5223B誤碼測試儀,搭建測試環(huán)境測試了數(shù)字信道模擬器的E1接口下信號的誤比特率。
AV5223B誤碼測試儀具有E1接口,可以測試2 M、8 M和34 M數(shù)據(jù)流的誤碼。 所以,只需直接將數(shù)字信道模擬器E1接口和AV5223B誤碼儀直接連接便可測試。
測試時,通過數(shù)字信號模擬器的人機交互接口設置了不同隨機誤比特率值進行了測試,測試結果見表2。
5 結 語
本文提出了一種高斯誤碼插入方法,通過實際測試數(shù)據(jù)表明該方法能較好地模擬各種數(shù)字通信信道,用以檢測數(shù)字設備的抗干擾能力。與已有的誤碼插入方法相比,本文方法具有以下優(yōu)點:首先,通過采用改進型混和同余法和中心極限定理來產(chǎn)生高斯分布隨機數(shù),從而保證了誤碼具有足夠的隨機性,Matlab仿真實驗表明該方法產(chǎn)生的高斯分布隨機數(shù)完全符合高斯分布隨機數(shù)的統(tǒng)計特性;其次,本文采用FPGA實現(xiàn)了多種誤碼圖案,使得數(shù)字信道模擬器可根據(jù)需要模擬不同誤碼特性的數(shù)字信道;最后,通過ARM主控器提供了友好的人機交互窗口,使得誤碼率和傳輸速率可調(diào),從而增加了系統(tǒng)的靈活性。
參 考 文 獻
[1]成曉雄,余松煜.數(shù)字通信系統(tǒng)中實時誤碼發(fā)生器的一種設計方法[J].通信技術,1997(3):58-63.
[2]Boutillon E,Danger J L,Gazel A.Design of High Speed AWGN Communication Channel Emulator[J].Analog Integrated Circuits and Signal Processing,2003,34(2):133-142.
[3]張傳林,林立東.偽[CD*2]隨機數(shù)發(fā)生器及其應用[J].數(shù)值計算與計算機應用,2002,9(3):188-196.
[4]郭鳳鳴.一種生成大周期偽隨機數(shù)的新算法——改進型的混和同余法[J].中國地質(zhì)大學學報,1992,17(6):733-738.
[5]Lee D,Luk W,Villasenor J D,et al.A Hardware Gaussian Noise Generator Using the Wallace Method[J].IEEE Transactions on Very Large Integration(VLSI) Systems,2005,13( 8): 911-920.
作者簡介 張胡平 女,1980年出生,四川成都人,碩士在讀。主要從事數(shù)字通信和信號處理的研究。
姚遠程 男,1962年出生,四川閬中人,教授。主要從事通信系統(tǒng)設計與信號處理的研究。
馮 立 男,1981年出生,四川內(nèi)江人,碩士在讀。主要從事信息處理和數(shù)字通信的研究。
注:“本文中所涉及到的圖表、注解、公式等內(nèi)容請以PDF格式閱讀原文?!?/p>
`