姜 龍,張 彧,萬曉峰
(微波與數(shù)字通信技術(shù)國家重點實驗室;清華信息科學(xué)與技術(shù)國家實驗室;清華大學(xué) 電子工程系,北京 100084)
無線突發(fā)通信信道通常是時變的多徑衰落信道,影響信號的傳輸質(zhì)量。為了減小誤碼率,需要使用一定的均衡技術(shù)來抵消衰落的不利影響,而信道參數(shù)估計通常是信道均衡的基礎(chǔ)。在眾多信道估計方法中,一種常用的方法是在時域發(fā)送訓(xùn)練序列,利用最大似然準(zhǔn)則來估計信道參數(shù),其中以PN序列作為訓(xùn)練序列的方法得到了廣泛應(yīng)用[1]。在信道估計過程中,通常需要進行矩陣乘法及求逆運算,不僅需要大量的乘法器,而且不易在FPGA上實現(xiàn)。如果采用簡化算法,又會影響信道參數(shù)估計的準(zhǔn)確程度,進而影響信道均衡質(zhì)量。筆者提出了一種適用于無線突發(fā)通信的信號幀結(jié)構(gòu)及信道參數(shù)估計方法,以帶有循環(huán)前綴的PN序列作為幀頭來進行信道估計,可以僅利用加法及移位運算實現(xiàn)矩陣的相乘及求逆,便于在FPGA上實現(xiàn)信道參數(shù)的無偏估計。
本系統(tǒng)無線突發(fā)通信的信號幀結(jié)構(gòu)如圖1所示。
信號幀由幀頭和幀體兩部分組成,其中幀體為需要發(fā)送的數(shù)據(jù),幀頭為帶有循環(huán)前綴的PN序列,可以用來進行同步及信道估計。本系統(tǒng)中PN序列選擇m序列。PN序列定義為
圖1 信號幀結(jié)構(gòu)
式中:N為PN序列的長度。采用QPSK調(diào)制方式,I和Q 兩路的幀頭相同,即 xi=1+j或者 xi=-1-j,i=0,1,…,N-1。加上長度為M的循環(huán)前綴后,幀頭的表示形式為(xN-M,…,xN-1,x0,x1,…,xN-1)T。
在接收端,定義接收到的PN序列為
x和y的關(guān)系式為
其中,h=(h0,h1,…,hL-1)T為信道參數(shù),長度為 L。
矩陣A的表達式為
其中,第1列即為矢量x,其他各列是第1列的循環(huán)移位。為準(zhǔn)確地估計信道參數(shù),要求選擇的幀頭循環(huán)前綴長度M滿足條件M≥L。
矢量W為零均值復(fù)加性高斯白噪聲,則y的概率密度函數(shù)為
式中:H表示共軛轉(zhuǎn)置。由最大似然估計法[2],可以解得
式中:h^是信道參數(shù)h的無偏估計??梢钥吹剑琱^的求解需要進行矩陣乘法及矩陣求逆,如果直接計算,在硬件實現(xiàn)中需要用到大量的乘法器,而且矩陣的逆也不容易準(zhǔn)確地求得。下面將闡述如何利用加法及移位器實現(xiàn)信道參數(shù)的無偏估計。
首先計算矩陣乘法AHy,定義
由于矩陣A的各項實部虛部相同,則AH的各項或者為1-j,或者為-1+j,定義接收矢量y的第i項為
則AH的任意一項與y的任意一項之積可表示為
或者
因此,只通過加法即可求出矢量z的各項。
根據(jù)m序列的相關(guān)性質(zhì)[3],當(dāng)相位偏移為0時,其相關(guān)值為N,否則其相關(guān)值為-1,可以求得
式中:系數(shù)2的出現(xiàn)是因為x的各項取值為實部與虛部相同的復(fù)數(shù)。對AHA求逆,得到
式中:[1]表示所有元素全為1的矩陣;I表示單位矩陣。
定義
定義
其中
則信道參數(shù)
式中:z及a均可以只通過加法器求得。又根據(jù)m序列的性質(zhì),N+1必定是2的整數(shù)次冪,關(guān)鍵是對N-L+1的處理。如果適當(dāng)選擇L,使得N-L+1也為2的整數(shù)次冪,則信道參數(shù)h^的計算就可以只通過加法及移位運算完成,也就是說可以在FPGA上實現(xiàn)信道參數(shù)的無偏估計。在實際應(yīng)用過程中,可以選擇較大的L值,截短后得到需要的結(jié)果。
在FPGA上實現(xiàn)信道參數(shù)無偏估計需要用到的硬件資源如下:
1)寄存器組1,長度為N,用于存放矢量x及其移位。由于該矢量是實部與虛部相同的復(fù)數(shù),x的每一項在寄存器中用 1 bit表示,1 代表 1+j,0 代表-1-j。
2)寄存器組2,長度為L,其0~L-1號寄存器分別對應(yīng)寄存器組 1中標(biāo)號 0,N-1,…,N-L+1 號寄存器,在寄存器組1循環(huán)左移后依次表示矩陣A的各行。
3)寄存器組3,長度為 L,用于存放z=AHy的計算結(jié)果。
4)寄存器4,用于存放標(biāo)量a。
5)寄存器5,用于存放矢量q的計算結(jié)果。
在FPGA上實現(xiàn)信道參數(shù)無偏估計步驟如下:
1)等待突發(fā)數(shù)據(jù)的到來,置寄存器組1為初始狀態(tài),寄存器組3及寄存器4清0。
2)突發(fā)數(shù)據(jù)到來,每周期輸入接收到的PN序列y的一項yi。寄存器組1循環(huán)左移,則寄存器組2依次對應(yīng)矩陣A的1~L行。寄存器組3根據(jù)寄存器組2的值為1或者 0,將各寄存器值與(1-j)yi或(-1+j)yi相加,得到新的寄存器值,經(jīng)過N個周期后,寄存器組3的各寄存器值即為z的各項值。
3)寄存器組3循環(huán)左移,寄存器4將其寄存器值與寄存器組3的第1個寄存器值相加,得到新的寄存器值。經(jīng)過L個周期后,寄存器4的值即為a。寄存器組3中各寄存器的值與步驟3)開始時相同。
4)寄存器組3循環(huán)左移,將寄存器4的值與寄存器組3的第1個寄存器值左移k位后相加的結(jié)果保存到寄存器5,此值即為q的各項qi,其后n位為小數(shù)部分,前面各位是整數(shù)部分,經(jīng)適當(dāng)取舍后即可作為信道估計值輸出。經(jīng)過L個周期后,即可計算出所有的信道參數(shù)。這里k與n分別滿足關(guān)系式
5)返回到步驟1)。
選擇信號幀的幀頭長度811,其中循環(huán)前綴為300,PN序列長度為511,幀體長度為2048。PN序列選擇9級m序列,其生成多項式x9+x4+1,初始狀態(tài)010000000。選擇參與運算的信道長度 L=256,則有 k=8,n=18。 信道模型采用Brazil A,參數(shù)如表1所示。
表1 Brazil A信道參數(shù)
采用QPSK調(diào)制方式,基帶采樣率7.56 MHz,接收數(shù)據(jù)信噪比為20 dB。先用Matlab軟件生成加入靜態(tài)多徑及噪聲的數(shù)據(jù)文件,然后使用ModelSim SE 6.2e軟件讀取文件進行信道估計,估計的信道參數(shù)幅度如圖2所示,截取前50個信道參數(shù),后面的參數(shù)均在0附近波動。
圖2 信道參數(shù)幅度
筆者提出了一種適用于無線突發(fā)通信的信號幀結(jié)構(gòu),利用帶有循環(huán)前綴的PN序列幀頭,采用最大似然法進行信道參數(shù)估計。通過適當(dāng)選擇信道運算參數(shù),選擇QPSK調(diào)制方式,并且利用m序列的相關(guān)性質(zhì),可以僅利用加法及移位運算實現(xiàn)矩陣的相乘及求逆,便于在FPGA上實現(xiàn)信道參數(shù)的無偏估計。
[1]GB20600-2006,數(shù)字電視地面廣播傳輸系統(tǒng)幀結(jié)構(gòu)、信道編碼和調(diào)制[S].2006.
[2]張旭東,陸明泉.離散隨機信號處理[M].北京:清華大學(xué)出版社,2006.
[3]曹志剛,錢亞生.現(xiàn)代通信原理[M].北京:清華大學(xué)出版社,2006.