李常春,劉紹華,王 偉,謝 箭
(1.重慶工程學院,重慶 400056;2.重慶金美通信有限責任公司,重慶 400030)
在同步時分復用系統中,每路信號周期性地占用一個指定的時隙,此時隙一旦劃定,不管信息量的多少或者有無,時隙所占帶寬都已確定,不再變化。如果一個指定的時隙傳輸的信息不是固定碼率,而是變化的,指定的時隙則按照最大的碼率進行分配,各種變化的碼率需要統一到最大碼率上,傳統的方法是通過擾碼將低碼率提高到規定的碼率上去,這種方法的弊端可帶來錯碼的擴散。要解決此問題,方法較多,一些復雜擾碼算法[1-3]、基于無線信道估值算法[4-5]和擴頻[6-8]方法均有效,而擴頻方法主要用在抗干擾和保密通信等領域。綜合考慮,采用具備嚴格正交特性的沃爾什碼作為擴頻碼對所傳信息進行直接擴頻后再傳輸,沃爾什碼通過Hadamard矩陣[3]遞推運算生成,本文稱此方法為基于Hadamard矩陣的擴頻方法,該方法的復雜度低并能解決速率匹配問題。
正交編碼的實現最為關鍵的是要找到正交碼組,正交碼組數又和每組正交碼的碼元個數有關,其基本規律是碼組越長,碼組數越多,但正交碼越復雜,越不易找尋到。本文采用熟知的Hadamard矩陣,從中選取正交碼組,因為它的每一行(或列)都是正交碼組,而且通過它還很容易構成超正交碼和雙正交碼。Hadamard矩陣是一個方陣(即H矩陣),其元素僅由‘+1’和‘-1’構成,而且各行(和列)是互相正交的。最低階的H矩陣是2階的,即:
為了簡化,將上式中的‘+1’和‘-1’簡寫為‘+’和‘-’,上式就變為:
階數為2的冪的高階H矩陣可以從下列遞推關系得出:
HN=HN/2?H2,
式中,N=2m;?為直積。直積是指將矩陣HN/2中的每一元素用矩陣H2代替:
在H矩陣中,交換任意2行,或交換任意2列,或改變任一行中每個元素的符號,或改變任一列中每個元素的符號,都不會影響矩陣的正交性質。H矩陣中各行(或各列)是相互正交的,若把其中每一行看作是一個碼組,則這些碼組也是互相正交的,而整個H矩陣就是一種長度為n的正交編碼,它包含n個碼組。
Hadamard矩陣具備嚴格的正交特性,被廣泛應用在圖像壓縮編碼、模式識別、人工智能和大數據等領域中[9-10],用于特征提取,同時也用到移動、衛星等通信中的多址技術。擴頻通信是指在普通通信系統中加入擴頻調制和擴頻解調的通信方式。在發送端,除了通常采用的基帶信號對正弦載波調制之外,再用獨立于傳輸信息的擴頻碼進行擴頻調制,產生帶寬遠大于欲傳送信息所需的最小帶寬擴頻信號,在接收端先用同步于接收信號擴頻碼的本地擴頻碼對輸入信號解擴,然后再用通常的數據解調方式解調。常用的實現方式有:直接序列(DS)擴頻、跳頻(FH)擴頻、跳時(TH)擴頻和混合擴頻等,考慮到抗干擾性、抗截獲性和解擴算法復雜度等因素,關鍵是擴頻碼的選取,本文選用沃爾什碼直接編碼來實現擴頻。
設計時,用VHDL[11-12]編程在Modelsimgon仿真軟件[13]中仿真,選取將碼率為8 kbit/s的數據統一提高到64 kbit/s的碼率上去作為示例,其他情況可以類推。因為8×8 kbit/s=64 kbit/s,所以設計選用H8矩陣中某2行作為2個碼組使用,具體選用H8矩陣中第2行和第6行2個碼組,符號‘+’代表二進制中的‘1’,符號‘-’ 代表二進制中的‘0’,第2行碼組的特點是前半部分數據和后半部分數據完全相同,都是“10”循環;第6行碼組的特點是前半部分數據和后半部分數據相反,前半部分是“10”循環,后半部分是“01”循環。輸入數據為‘0’時,選用第2行碼組“10101010”來實現;輸入數據為‘1’時,選用第6行碼組“10100101”來實現,即:

擾碼的作用就是將二進制數字信息做隨機化處理,變為偽隨機序列,可以限制連“0”、連“1”的長度。其實現就是在選定特征多項式以后,通過線性反饋移位寄存器和模二和相加等來實現,連“0”、連“1”的長度與特征多項式的級數有關。在接收端,也是通過線性反饋移位寄存器和模二和相加等來實現解擾,恢復出與發送端完全相同的數字信息。該方法簡單可行,但如果出現錯碼會帶來錯碼擴散的弊端。
基于Hadamard矩陣的擴頻方法是選用Hadamard矩陣中的某些行作為相應數據的編碼,輸入數據為“0”時,選用第2行碼組“10101010”來代替;輸入數據為“1”時,選用第6行碼組“10100101”來取替。當原始數據出現“1”時,編碼后會出現2個連“0”;當原始數據出現“1”到“0”的跳變,或者出現連“1”時,編碼后會出現2個連“1”。也就是說,采用基于Hadamard的擴頻方法實現的編碼,連“0”、連“1”的長度最長也只有2個,相比擾碼實現方法而言,相同碼元長度短了很多,更不會出現長串的“0”或“1”,在接收端定時提取的信息就更豐富,更利于定時地提取。基于Hadamard的擴頻方法在接收端根據識別連“1”的位置來解析數據,擴頻后接收到的8 bit數據對應原始1 bit的數據信息,在接收端,設定相應的判決門限值,只有達到相應門限值才將數據判定為“1”,否則判定為“0”,該方法可以保證在接收端出現誤碼的情況下,也能正確恢復出原始數據,即具備一定的糾錯能力。擾碼實現的碼率提升以及采用基于Hadamard擴頻后的數據對比如圖1所示。

圖1 通過擾碼和Hadamard實現的擴頻數據仿真對比Fig.1 Simulation comparison between scrambling and Hadamard spread spectrum data
圖1中,txc為8 Hz的時鐘,txda為8 kbit/s的數據,ss_clk為64 Hz的時鐘,scramble_txda為直接通過擾碼方式將8 kbit/s的數據提速到64 kbit/s,ss_txda為通過基于Hadamard的擴頻方法將8 kbit/s的數據提速到64 kbit/s。從圖1中可以看出,編碼擴頻后的數據連“0”、連“1”極少,且最大長度值為2。在數字通信設備中,需要從“0”和“1”碼元的交變點提取定時信息,若經常出現長“0”和長“1”,則不利于定時的提取。從圖1中可以看出,基于Hadamard擴頻后的數據相比擾碼后的數據更有利于定時信息的提取。
擾碼的主要缺點就是在接收端會帶來誤碼的擴散,這是由錯碼在移位寄存器內的這段時間帶來。分析發現,擴散誤碼與線性反饋移位寄存器的特征方程式的項數有關。產生一個誤碼時擾碼恢復后的擴散如圖2所示。

圖2 擾碼在一個錯碼時的糾錯能力仿真Fig.2 Simulation of scrambling correction capability of an error
圖2中,clk為64 Hz的時鐘,scramble_txda為直接通過擾碼方式將8 kbit/s的數據提速到64 kbit/s,data_err為人為添加的1個錯碼,scramble_txda_err為scramble_txda添加1個錯碼后的數據(圈出處為錯碼處),txda為8 kbit/s的數據,unscramble_txda_err為解擾恢復的數據,本應和txda一致,但其中出現了錯碼(圈出處)。擾碼的實現是通過移位寄存器來實現的,當信道干擾造成錯碼時,錯碼在移位寄存器內的這段時間就會一直帶來錯碼,錯碼會進行擴散。
基于Hadamard的擴頻在1個錯碼時的糾錯能力仿真如圖3所示。基于Hadamard的擴頻方法在接收端會對收到的8 bit數據進行判定,錯碼的個數只要低于設定的門限值就能恢復出正確的碼元。

圖3 基于Hadamard的擴頻在1個錯碼時的糾錯能力仿真Fig.3 Simulation of Hadamard correction capability of an error
圖3中,clk為64 Hz的時鐘,ss_txda為通過基于Hadamard的擴頻方法將8 kbit/s的數據提速到64 kbit/s,data_err為人為添加的1個錯碼,ss_txda_err為ss_txda添加1個錯碼后的數據(圈出處為錯碼處),txda為8 kbit/s的原始需要傳輸的數據,rxd_dess_err為擴頻狀態下接收端恢復的數據,與txda一致,圈出處并未因為1個錯碼的引入而導致錯碼。由此可以看出,采用基于Hadamard的擴頻方法具有一定的糾錯能力。
基于Hadamard的擴頻方法的糾錯能力與選擇的Hadamard矩陣大小有關,同時門限值的設定也是參照Hadamard矩陣的大小來設,一般正確數據過半即認為數據傳輸正確。當然也可以設定更為苛刻的條件,比如8 bit數據設定6 bit或者7 bit的門限值。連續3個錯碼時的仿真如圖4所示。

圖4 連續3個錯碼時的仿真Fig.4 Simulation of Hadamard correction capability of three successive errors
圖4中,clk為64 Hz的時鐘,ss_txda為通過基于Hadamard的擴頻方法將8 kbit/s的數據提速到64 kbit/s,data_err為人為添加的3個連續錯碼,ss_txda_err為ss_txda添加3個連續錯碼后的數據(圈出的為錯碼處,txda為8 kbit/s的原始需要傳輸的數據,rxd_dess_err為擴頻狀態下接收端恢復的數據,與txda一致,圈出處并未因3個連續錯碼的引入而導致錯碼。由此可以看出,采用基于Hadamard的擴頻方法的糾錯能力不僅限于一個錯碼情況,其糾錯能力與選用的Hadamard矩陣大小有關,Hadamard矩陣選用的越大,糾錯能力就會越強。
由此可見,采用擾碼的方式,即便傳輸過程只出現一個錯碼的現象發生,在解擾恢復數據時錯碼都會出現擴散,但如果采用基于Hadamard的擴頻方法,數據中出現連“0”、連“1”概率極小,擴頻后的數據相比擾碼后的數據更有利于定時信息的提取,擴頻后的碼抗干擾能力增強;同時,在數據恢復時,可以靈活選擇合理的判決門限值方法,降低對數據的誤判,具有一定的糾錯能力。
針對速率匹配問題,開展了擾碼、正交碼組產生和擴頻等技術工作研究,通過實驗仿真發現,采用基于Hadamard的擴頻方法,擴頻后的碼抗干擾能力增強,不但有利于定時信息的提取,同時,在數據還原時具有一定的糾錯能力。該方法具有一定的實用性,可以運用到具體的通信設備中。