8PSK
8PSK
8PSK (8 Phase Shift Keying 8移相鍵控) 是一種相位調製演演算法。相位調製(調相)是頻率調製(調頻)的一種演變,載波的相位被調整用於把數字信息的比特編碼到每一次相位改變(相移)。
"8PSK"中的"PSK表示使用移相鍵控方式,移相鍵控是調相的一種形式,用於表達一系列離散的狀態,8PSK對應8種狀態的PSK。如果是其一半的狀態,即4種,則為QPSK,如果是其2倍的狀態,則為16PSK。因為8PSK擁有8種狀態,所以8PSK每個符號(symbol)可以編碼3個比特(bits)。8PSK抗鏈路惡化的能力(抗噪能力)不如QPSK,但提供了更高的數據吞吐容量。
信息的發送是以數據幀的形式進行發送的,每次只發送一個數據幀,而不是連續發送的,這樣信息在發送前發送端就不需要先跟接收端建立連接,但同時在對信號進行信源編碼,通道編碼和前導及探測報頭序列的過程中則降低了信號傳送的效率。數據幀主要包括兩部分即前導及探測報頭序列和所要傳輸的數據部分。
1、截尾卷積編碼
一般情況下,卷積編碼的時候在輸入信息序列輸入完畢后都還要再輸入一串零比特的數據用於對移位寄存器進行複位,這樣在一定程度上影響了信源的編碼效率。而截尾卷積編碼則是在每次編碼完成後不對移位寄存器進行複位操作,而是將上次編碼后編碼寄存器的狀態作為下次編碼時移位寄存器的初始狀態。這樣一方面使得信源的編碼的碼率得到了提高,另一方面也增加了信息的安全性,因為接收端只有知道發送端編碼器中的移位寄存器的初始狀態或者付出比較大的解碼代價的情況下才能對接收到的信號進行解調,否則解調出來的永遠是亂碼。
2、交織
碼元的交織其實是屬於通道編碼,交織的目的是通過將信息在通道中受到的突發連續差錯分散開來,使得接收到的信號中的差錯趨向於隨機差錯,降低接收端信息解調出錯的概率,從而提高通信中信息的可靠性。交織的方法一般是用兩個適當大小的矩陣,同一時間一個用於數據的存儲另外一個則用於數據的讀取,而且兩個矩陣的存取或者輸出是交替的。輸入序列按照逐行(列)的順序存儲到其中的一個矩陣中,而輸出序列則是按照逐列(行)的順序從另一個矩陣中讀取。通常矩陣越大,則對於連續性的突發錯誤的分散效果越好,但是編碼的時延也就越大。
3、Walsh碼
Walsh碼是一種同步正交碼,在同步傳輸的情況下,具有良好的自相關特性和處處為零的互相關特性。其編碼所得到的碼元都是取自Hadamard矩陣的行或者列。理論上,信號如果在通道中是相互正交的,那麼信號之間的相互干擾就可以達到零了。但是由於信號的多徑效應和其他非同步信號的干擾,使得通道中的信號並不是完全正交的,干擾也就不為零了。所以實際情況下,Walsh碼一般都只是作為擴頻碼來使用。
擴頻簡單地說就是將傳輸信號的帶寬擴展到更寬的頻帶上去。在通道的傳輸過程中,由於信號的頻譜擴展了,其幅值也隨之減小,使得信號很好地隱藏在雜訊之中,即可以用比較低的發送功率來傳輸信號,同時提高信號的保密性。而在接收端對信號進行解調的時候,只是將擴展后的信號的功率譜縮回來使得其功率譜的幅值大大增加,而並沒有改變接收信號中雜訊功率譜的幅值,這樣就能夠大大提高接收端的信噪比,從而提高信號的抗干擾能力。
4、PN碼
Walsh碼的自相關特性和互相關特性在實際的應用中都不夠理想,即信號經過多徑通道時,不同徑之間不同信號之間都會產生嚴重的干擾。為此,可以用相關性較好的偽隨機序列與Walsh碼模8相加,這時得到的碼元序列既保持了Walsh碼的正交性,同時又大大改善了其相關特性,使其相關功率譜的旁瓣大大減小。該調製中所用到的偽隨機序列即PN序列(Pseudorandom Noise偽雜訊序列)。通常所說的M序列和m序列即為短PN序列和長PN序列。將Walsh編碼和PN碼模8相加后,所得到的信息序列在傳輸中的抗多徑引起的干擾性能就能夠得到較大的提高了。
5、前導及探測報頭序列
前導序列及探測報頭就是在信息發送之間加在數據幀前相對於接收端已知的序列。前導及探測報頭序列的作用是用於接收端對信號的捕獲,通道的估計、均衡和對接收信號頻偏的估計。若沒有在發送信息前加上前導及探測報頭,則接收端沒法判斷接收到的信號到底是雜訊還是發送端發送的消息,信號也就無法解調。
6、8PSK調製
8PSK信號的調製主要包括對每輸入的三個比特信號映射到同相支路和正交支路上的相應電平,並對兩路的電平分別進行濾波,最後再將濾波所得的同相支路和正交支路的信號調製到頻帶上去。其調製框圖如下所示:
8PSK
根號升餘弦濾波器的衝激響應為:
8PSK
接收端在對信號進行解調的時候主要解決的問題包括:
·傳輸過程中多普勒效應產生的頻移;
·時延產生的多徑效應;
·對接收到的碼元序列進行解碼。
8PSK信號接收端的解調框圖如下所示:
8PSK
1、去載波低通濾波
該模塊的是利用已知的發送端載波頻率的正弦波信號和接收採樣所得的信號進行相乘,所得的結果包括兩部分,即載波的倍頻部分和基帶部分,其中不考慮接收信號在傳輸過程中由於干擾導致的頻率變化。然後將所得的信號進行低通濾波,即可將前一步所得的信號中的載波倍頻部分濾除而只保留信號的基帶部分。該過程相當於將接收到信號的頻譜從一定的頻段上搬移到基帶上,以便於後面模塊對信號的解調。
2、信號的捕獲
8PSK
數據幀頭位置的捕獲只是實現了信號的碼元級同步,之後還需進行位同步。捕獲是否成功很大程度上決定了接收端是否能夠接收到發送的信號,所以捕獲時的相關序列應該足夠長(探測報頭384碼元),從而確保系統有足夠的抗干擾能力。但是當序列太長時,FFT變換的計算量就很大,所需的時間也會比較長,可以將本地序列進行分段,然後進行分段的相關和FFT變換,以減少計算量,但是這樣帶來的後果是信號的捕獲率將會有所降低,所以要對運算量和捕獲率進行權衡。
滑動步長的大小和每次作相關FFT運算所需要的指令數有關,每個步長內DSP所能執行的指令數應該不少於每次相關FFT運算所需的指令數,不然就會影響到信號解調的實時性。
3、第一次頻偏估計
8PSK
第一次頻偏估計採用的方法是利用探測報頭碼元與本地序列進行相乘,若本地序列的頻率為,接收到的信號頻率為,那麼理想情況下,兩序列相乘則得到的結果中僅包含頻率為和的分量,其中即為所想要求的頻偏值。這時可以對相乘所得的結果進行FFT變換,將時域上的信號變換到頻域上去,就可以很容易地根據頻域中低頻段上的頻譜峰值的位置估計出頻偏的大小,最後再利用估計出的頻偏值對接收到的信號進行調整。由於前面的粗同步只是碼元級別上的同步,所以第一次頻偏估計所得到的頻偏值不夠精確,調整后的信號可能還存在一定的相位差。
4、位同步
信號的捕獲位置並不一定是最佳的採樣時刻,接收信號經過粗同步的調整后雖然頻率已經基本正確,但是其中可能還存在一定的相位差,所以必須對信號再次進行同步,即精同步。由於信號經過粗同步以後就已經實現了碼元級的同步,表明信號的精確採樣位置肯定在粗同步位置及其前一碼元和后一碼元之間的某個位置上,要找出其確切的位置則可以利用本地已知的探測報頭序列和從粗同步位置的前一碼元到后一碼元之間的序列進行滑動相關。相關值最大的位置即為所要尋找的精同步位置,即最佳採樣時刻的位置。
5、第二次頻偏估計
8PSK
對於雙方都有信息收發的通信系統而言,可以將主要的頻偏工作交給其中的一方,而另一方則只要對收到的信號頻率進行稍微的調整就行了。如開始的時候發送端發送的信號頻率為,傳輸過程中由於多普勒效應使得接收端接收到的信號頻率為,若接收端能將其中的頻偏準確地估計出來,則下次原來的接收端在將新的消息發送給原來的發送端的時候就可以調整其發送信號的頻率為,而不是。理想情況下,如果通道的特性在兩個信號傳輸的過程中都保持不變的情況下,那麼原來發送端接收到的信號的頻率就為,就不用再對接收的信號進行頻偏估計了。
6、均衡
通道均衡的主要功能是用於消除由於信號在傳輸過程中經歷頻率選擇性衰落所引起的碼間干擾。一般情況下若要使用的不是自適應均衡,那麼在對信號進行均衡的時候要用到通道的各種參數,那麼就應先對通道進行估計。
信號在傳輸過程中會有多徑效應,所以應該對接收信號進行通道估計,找出其中的主徑和多徑(一般情況下只要找出其中一條主要的多徑即可)。通道估計即在粗同步位置周圍將接收信號和本地序列進行相關,找出其中的峰值,其目的就是找出接收信號中主徑信號和多徑信號的精確起始位置。在好的通道中,若通道的信噪比比較低,則主徑的第一個旁瓣和多徑的主瓣有可能重疊在一起,導致多徑判決出現偏差。這時可以採用主徑重構的方法來解決該問題,即利用本地序列的相關圖重構出理想情況下主徑的相關圖,然後再用總的相關圖減去主徑序列的相關圖,即可得到多徑序列的相關圖根據所得的主徑和多徑的位置就可以進行均衡了。
自適應均衡器中的均衡係數可以實現自動調整,所以均衡前可以先不對通道進行估計,經常使用的線性橫向均衡器(LTE)如下圖所示:
8PSK
除了圖中所示的線性橫向均衡器外,還包括線性格型均衡器(LLE)、判決反饋均衡器(DFE)和分數間隔均衡器。其中線性格型均衡器最複雜,但收斂速度也快,係數也優良。判決反饋均衡器能夠很好地解決后尾效應,適於有嚴重失真的無線通道,但同時也可能導致誤碼擴散。分數間隔的均衡器和其他的均衡器不一樣,其他均衡器的採樣周期都是碼元周期,即都可以稱得上是碼率均衡器,但是分數間隔均衡器的採樣周期小於碼元周期的一半,故所得的信號不會出現頻譜的混疊現象。
7、截尾卷積解碼
由於截尾卷積碼在進行編碼前沒有對編碼器的移位寄存器進行複位操作,所以在接收端對其進行解碼的情況下,如果不清楚其初始狀態,那麼就要付出額外的代價才能對其進行解碼。目前主要的截尾卷積解碼方法包括循環維特比解碼演演算法(CAV)和BCJR解碼演演算法。通常在進行截尾卷積編碼時,會將一段數據序列的后m個碼字初始化編碼移位寄存器,從而使得其移位寄存器在編碼前和編碼后的狀態保持一致。其中循環維特比解碼演演算法就是利用這一性質在接收端將接收到碼字序列的多個拷貝首尾相連,然後進行維特比解碼,在經過一定長度的解碼后最佳路徑和倖存路徑在很大程度上是一致的,這是就可以將找到的首尾狀態相等的碼塊作為最終的解碼結果。這樣就可以在不知道編碼移位寄存器初始狀態的情況下進行截尾卷積解碼,但其計算量要比一般情況下的卷積碼解碼計算量大得多。