官靖凱,蔡文郁,朱張峰,唐國棟
(1.杭州電子科技大學 電子信息學院,浙江 杭州 310018;2.國家電網寧波市北侖區(qū)供電公司,浙江 寧波 315000)
水下激光通信通過激光發(fā)射器件,將電信號調制成激光信號發(fā)射。經過海水信道傳播,在接收端使用光電接收器件,將激光信號轉換成電信號,再經過解調還原出發(fā)射端的原始信號,以實現無纜的遠距離通信[1]。
水下可見光通信受多種因素影響。水體介質作為一種特殊的通信信道,其物理化學等系統的復雜性,會造成水下光傳播特性衰減。其中最主要的為散射現象,最重要的影響是能量衰減[2-3]。此外,散射和反射現象可能造成路徑改變,從而產生多徑效應[4]。為提高傳輸通道的抗噪能力,水下可見光通信通常采用了脈沖位置調制(Pulse Position Modulation,PPM)技術。PPM是利用脈沖的相對位置傳遞信息的一種調制方式,最早應用于空間通信[5]。在激光通信中,與OOK(On-Off Keying)調制相比,PPM使得信號脈沖能量更為集中,瞬時功率更大,傳播距離更遠。因此采用PPM作為水下激光通信的調制方式,可提高激光信號脈沖的瞬時輻射功率,從而實現遠距離信號傳輸。由于通信信道固有的噪聲和衰減影響,信號在信道傳輸中,必然會出現失真現象。目前,糾錯編碼技術是解決該問題的主要技術手段,例如線性分組碼、網格碼。
低密度校驗碼(Low-Density Parity-Check codes,LDPC codes)是于1962年提出的一種具有稀疏校驗矩陣的線性分組碼[6-7]。LDPC碼幾乎適用于所有信道,具有逼近香農碼性能的優(yōu)點[8]。相比其他編碼方式,LDPC碼更便于描述,編碼與譯碼的實現更為簡單[9]。按照校驗矩陣構造方式的不同,可分為隨機LDPC碼和結構化LDPC碼。準循環(huán)低密度奇偶校驗(Quasi-Cyclic Low-Density Parity-Check,QC-LDPC)碼是一種結構化LDPC碼,具有構造簡單、短環(huán)易消的特點[10-12]。
因為電磁波在水中衰減嚴重,現有水下激光通信多為近距離通信。為達到遠距離低誤碼率通信,本文采用PPM與QC-LDPC編碼組合的方式,對不同碼長、碼率和調制階數的組合方案進行仿真。本文對仿真結果進行比較和分析,在不同信噪比SNR條件下,尋找最優(yōu)QC-LDPC編碼和PPM的組合方案。
基于QC-LDPC編碼和PPM的水下激光通信系統的模型如圖1所示。該系統描述了信號從信源發(fā)出到信宿接收的整個過程。由信源發(fā)出的信號在編碼器中進行信源編碼與QC-LDPC編碼,經PPM碼型產生器實現編碼后通過調制器調制,最終由光學發(fā)射模塊發(fā)送。光學發(fā)射模塊發(fā)送的信號經過水下信道后由光學接收模塊接收。在接收端,通過光電傳感器將信號轉換為電信號。在解調器中將獲取的信號進行解調,再通過譯碼器進行糾錯譯碼,得到信源信息。
圖1 基于QC-LDPC編碼和PPM的水下激光通信系統模型
若調制信號僅使載波脈沖系列中每一個脈沖產生的時間發(fā)生改變,而不改變其形狀和幅度,且每一個脈沖產生時間的變化量比例于調制信號電壓的幅度,而與調制信號的頻率無關,則稱這種調制為脈沖位置調制,簡稱脈位調制[5]。
PPM的原理是將一段時間進行M等分,每等份稱為一個時隙,在一幀時間內的某個時隙發(fā)送一個時隙。單脈位調制(L-PPM)將一個N位的二進制數據由某一個時隙處的單個脈沖信號表示,某一個時隙為由2N個時隙組成的時間段上的一個時隙處。因此,一個L位的PPM調制信號的信息比特為log2L。將N位數據寫成S=(s1,s2,…,sN),時隙位置記為l。
l=s1+2s2+…+2n-1sn∈{0,1,…,N-1}
(1)
在4-PPM中,信息由4個時隙表示。若S0=(0,0),則l=0;若S1=(1,0),則l=1;若S2=(0,1),則l=2;若S3=(1,1),則l=3,其中0、1、2、3分別對應脈沖所在的時隙位置。4-PPM模型如圖2所示,下述S0、S1、S2、S3分別代表l為0、1、2、3時的脈沖位置,其他階數調制類似于4-PPM。
圖2 4-PPM 脈沖位置調制示意圖
低密度校驗碼是一類基于稀疏校驗矩陣的線性分組碼,其校驗矩陣H是一稀疏矩陣,即H中非零元素遠遠小于零元素的個數。校驗矩陣通常用H(n-k)×k來表示,n為碼字長度,其由信息位與校驗位構成,k表示信息位個數,n-k表示校驗位個數,通常用m替代,即m=n-k。所有碼字均滿足線性分組碼運算規(guī)則,即cHT=0[13]。
若構建一個LDPC碼,已知維數的校驗矩陣H,可記為G={(V,E)},其中V為全部節(jié)點的集合。V=Vb∪Vc,其中Vb={b1,b2,…,bm}為校驗節(jié)點集合,對應校驗矩陣的行;Vc={c1,c2,…,cn}是變量節(jié)點集合,稱為比特節(jié)點,對應校驗矩陣的列[7]。當H中某元素為1時,代表校驗節(jié)點bi與變量節(jié)點cj相連,稱為一條邊。從一節(jié)點出發(fā)再回到此節(jié)點的路徑為循環(huán),所經過邊的條數為循環(huán)長度。循環(huán)長度的大小會影響編碼的性能。
QC-LDPC碼屬于結構化LDPC碼的一種,其特點為校驗矩陣具有分塊循環(huán)特性。QC-LDPC碼的校驗矩陣H由諸多同維度大小的小循環(huán)方陣構成,而小循環(huán)方陣又由相同維度的單位矩陣循環(huán)移位得到。循環(huán)規(guī)律為第一行由最后一行向右移動一位得到,每一行向右移動一位得到下一行,列移動同理。由此得到諸多小循環(huán)方陣,再由循環(huán)方陣構成校驗矩陣,因此校驗矩陣可表示為
(2)
式中,A為維數為d×d的循環(huán)子矩陣;Pij∈{0,1,…,L-1,∞}。因為Pij取值可為∞或0~L-1中任意值,故存在Pij為確定有限值和值為∞兩種情況。當Pij為確定有限值時,APij為矩陣A中每一行向右循環(huán)移位Pij位后得到的變換子矩陣;若Pij=∞,則APij由維數為d×d的全零子矩陣替代。
校驗矩陣H的構造與基矩陣Hb、矩陣P和循環(huán)子矩陣A相關?;仃嘓b為二進制矩陣,其元素值代表該位置是否需要用經過移位后的非零循環(huán)子矩陣A取代,其中0代表不需要,1代表需要[14-16]?;仃嚾缡?3)所示。
(3)
構建維度為m×n的校驗矩陣時,需要確定基矩陣、移位次數矩陣與循環(huán)子矩陣[17]。本文采用維度為d×d的循環(huán)子矩陣,維度均為c×t的基矩陣和移位次數矩陣,并針對不同碼長與碼率的碼字,通過cd=m和td=n分別計算c與t值。本文選擇單位陣作為循環(huán)子矩陣,從而確定構建該種碼字所需矩陣維度。
基矩陣的構造采用隨機生成設置列重的矩陣,并使列重與行重接近相等。移位次數矩陣中,元素值由基矩陣中為1的元素位置決定,矩陣P則采用式(4)構建。其中,參數b代表基矩陣中每行元素出現1的位置,取值范圍為(0~t-1)。b=t-1表示該行第t個1的位置。
(4)
當循環(huán)子矩陣、基矩陣與移位次數矩陣都確立時,可構建出對應碼字與碼率的校驗矩陣H。
采用該方法構造的校驗矩陣可以根據情況要求靈活地構建所需要的校驗矩陣。針對不同碼長和碼率的碼字,可更改碼長、碼率、校驗位長度和循環(huán)子矩陣維度d等參數,構造出不同的準循環(huán)校驗矩陣。
通常采用迭代譯碼算法對準循環(huán)LDPC碼進行譯碼。在迭代譯碼過程中,會出現被節(jié)點傳遞出去的信息經過幾次迭代后又傳遞回該節(jié)點的情況。當經過的環(huán)長較小,即存在短環(huán)時,會造成信息重復利用,降低譯碼的效率與性能。其中,以環(huán)長為4的短環(huán)影響性能最為明顯[18]。短環(huán)的存在會導致準循環(huán)LDPC碼的誤碼率性能遠高于隨機LDPC。
通過上述方式編碼后,再進行有無4環(huán)碼的判斷,若存在,則重新生成基矩陣進行構造。
為模擬信號發(fā)送,采用隨機產生的二進制矩陣數據作為信源原始信號,經過QC-LDPC編碼后傳送到PPM信號器中。PPM信號產生器將數據按照調制階數所需位數進行數據的提取、轉換與組合,最終生成由時隙位置表示的PPM信號。例如4-PPM,信號需4個時隙來表示,輸入信號為二進制數據,將輸入數據按2位進行提取轉換為十進制。其值代表脈沖信號所在時隙位置,并生成新的4位二進制數據。
定義每經過QC-LDPC編碼后的信號為一幀數據,采用鏈接40幀數據為一幀數據的方式發(fā)送到PPM信號產生器中。按照對應調制階數,將接收數據進行調制編碼,生成經過QC-LDPC編碼與PPM的信號。在解調端將接收到的一幀數據按照對應的PPM階數完成數據的拆解,提取其中的每一幀數據進行解碼,將解碼后的信號與發(fā)送信號進行誤碼率的統計。每一種方案均執(zhí)行100次,以減少出現的偶然誤差,提高實驗結果的可靠性。
本文針對IEEE802.16e標準中的QC-LDPC各標準碼長與碼率的QC-LDPC碼進行了構造,目的在于找出在不同信噪比(Signal-to-Noise Ratio,SNR)條件下,最優(yōu)的QC-LDPC編碼和PPM的組合方案。本文采用上述方法進行構造,確保構造的均為無四環(huán)QC-LDPC碼。本文對不同階數PPM按上述方法進行處理,并將所有可能的組合進行了仿真,得到了不同SNR條件下的誤碼率(Bit Error Ratio,BER)性能曲線。本文對比了相同碼長碼率條件下,調制階數對性能的影響與相同調制階數條件下不同碼長碼率對性能的影響,以BER性能小于10-4為評判標準,找出在不同SNR范圍內的最佳組合方案。
實驗仿真平臺為MATLAB軟件,仿真中采用列重為2的(3,6)的基矩陣和維數為96×96的循環(huán)子矩陣構造的QC-LDPC碼,標準碼長依次為576、960、1 248、1 536、1 920、2 304,標準碼率依次為1/2、2/3、3/4、5/6;信道為AWGN信道,采用的PPM階數為4、8、16,SNR范圍為0~6,編碼與譯碼次數均為100次。本文所選取的最優(yōu)標準為在當前SNR條件下,系統的誤碼率必須低于誤碼率限制10-4。除此以外,還需要考慮帶寬利用率,以便讓系統在當前的信道信噪比條件下實現最高的通信速率。
圖3反映了碼字長度為576的QC-LDPC碼在不同碼率下的BER的仿真曲線,圖3(a)為碼長576且碼率1/2條件下的性能曲線,圖3(b)~圖3(d)為碼率2/3、3/4和5/6條件下的性能曲線。仿真結果表明,經過QC-LDPC編碼后,BER性能均有所改善,且在同等SNR條件下PPM階數越高,性能越好。在相同SNR條件與PPM階數下,碼率對誤碼率影響較小。
(a)
與碼長為576的QC-LDPC碼類似,圖4為碼長960的QC-LDPC碼的BER性能曲線。對比同一碼率與調制階數條件下不同碼字的性能曲線可發(fā)現,碼長越大的碼字,在越小的SNR條件下,越容易滿足低于誤碼率限制的要求。
(a)
通過對各個碼長的碼字性能曲線進行對比可知,對于同一碼字,在同等SNR條件下,BER隨PPM階數增加而降低,且經過QC-LDPC編碼后的性能好于未編碼性能。將各碼字進行對比可發(fā)現在不同信噪比范圍內的最優(yōu)的碼長碼率的編碼方式與PPM方案的組合。在相對較小的SNR范圍內,QC-LDPC碼在任意碼率和PPM的組合下,系統的誤碼率普遍高于最高誤碼率限制10-4,BER性能達不到所需要求。當信噪比為0~0.5 dB時,僅有(1 536,768)QC-L DPC碼、碼率1/2、16PPM的組合方案滿足BER<10-4。
通過對比各碼字性能曲線,可得到各SNR范圍內的最佳組合方案。當SNR在0.5~1.5 dB內,最優(yōu)組合方案為(1 248,624)QC-LDPC碼、碼率為1/2、16-PPM。當SNR在1.5~2 dB內,最優(yōu)組合方案為(960,640)QC-LDPC碼、碼率為2/3、16-PPM。當SNR在2~3 dB內,最優(yōu)組合方案為(1 536,768)QC-LDPC碼、碼率為1/2、8-PPM。當SNR在3~4 dB內,最優(yōu)組合方案為(960,720)QC-LDPC碼、碼率為3/4、16-PPM。當SNR>4 dB時,QC-LDPC碼在任意碼率和PPM的組合下,系統的誤碼率普遍低于最高誤碼率限制10-4,方案選取的最優(yōu)標準改變?yōu)闈M足誤碼率要求下的帶寬利用率。當SNR在4~5 dB內,不同碼長和碼率的QC-LDPC碼的BER性能相近,僅PPM調制方式對性能的影響較大,因此選用16-PPM方式。當SNR>5 dB時,選用8-PPM方式。
針對不同長度與碼率的QC-LDPC碼,最優(yōu)的PPM組合方案如表1所示。
表1 最佳PPM調制組合方案
本文基于水下激光通信系統模型,利用軟件模擬的方式,采用PPM和QC-LDPC編碼相結合的方式,對不同長度與碼率的QC-LDPC碼和PPM的組合方案進行仿真,得到在不同SNR條件下的誤碼率曲線。在不同信噪比條件下,尋找到了最優(yōu)QC-LDPC編碼和PPM的組合方案。本文采用隨機生成基矩陣與剔除4環(huán)矩陣的方式確保QC-LDPC碼構建的一般性與有效性,并采用上述PPM信號生成方式來達到PPM的效果,減少偶然誤差的出現,提高了實驗結果的可靠性。通過對比多組性能曲線,本文尋找到在不同SNR條件下可采用的最優(yōu)組合方案。在下一步的研究中,將重點對水下信道模型進行改良,使其更加貼近真實的水下信道。