本文主要是關于卷積編碼的相關介紹,并著重對卷積編碼的碼率進行了詳細的闡述。
卷積碼
卷積碼是一種差錯控制編碼,由P.Elias于1955年發明。因為數據與二進制多項式滑動相關故稱卷積碼。卷積碼在通信系統中應用廣泛,如IS-95,TD-SCDMA,WCDMA,IEEE 802.11及衛星等系統中均使用了卷積碼。
卷積碼使用(n,k,L)表示,碼率為R。
n為輸出碼字;
k為輸入的比特信息;
L為約束長度,也稱為記憶深度。
R表示為R = k/n。
卷積碼是一種有記憶的糾錯碼,編碼規則是將k個信息比特編碼形成n個比特,編碼后的n個碼元不但與當前輸入的k個信息有關,仍與之前的L-1組的信息有關,其結構如下圖1所示,圖1來自Goldsmith的著作。
圖中表示有L級信息比特,每次輸入k比特信息,共有k*L個比特,每次輸出n個比特信息,可以明顯地看出該n個比特信息不僅與當前輸入的k個比特信息有關,與之前L-1組信息比特也有關,所以卷積碼是有記憶的編碼,記憶深度為L。
注:此處與其他常見表示方法不同,此處將輸入的比特做了緩存,所以記憶深度不一樣,L看寄存器的個數確定。
2、卷積碼表示方法
圖2是輸出碼長n=2,記憶深度L為2,輸入比特k=1的,(2,1,2)卷積碼編碼器。用該例說明卷積碼的以下幾種表示方法。
2.1 生成多項式
生成多項式使用K-1階的多項式描述編碼器的移位寄存器和模二加法器的連接狀態。每個模二加法器的連接可表示成一個多項式。多項式的次數輸入的階次為0,其余按寄存器數的移位次數依次遞增。如上圖
輸出1: ???????? g1(x) = 1 + x + x^2
輸出2:????????? g2(x) = 1 + x^2
以下是IEEE 802.11標準中的卷積碼編碼器,生成多項式分別為:
輸出1:????????? g1(x) = 1 + x^2 + x^3+ x^5 + x^6
輸出2:????????? g2(x) = 1 + x + x^2 +x^3 + x^6
2.2 狀態圖
狀態圖是關于系統狀態變化的描述,它將由系統的輸入,根據當前的系統狀態,影響系統的輸出。卷積碼編碼器存儲的L-1段消息,既要因新的消息輸入而改變,又要影響當前的編碼輸出,把卷積碼編碼器的移位寄存器中任一時刻所存儲的信息稱為卷積碼編碼器的一個狀態。
(n,k,L)卷積碼共有2^(k*(L-1))個狀態,每次輸入k比特只有2^k種狀態變化,所以,每個狀態只能轉移到全部狀態的某個子集(2^k個狀態)中去,每個狀態也只能由全部狀態的某個子集(2^k個狀態)轉移而來。
(2,1,2)卷積碼編碼器包含2級移位寄存器和2個模2加法器。2級移位寄存器共有2^2=4種不同狀態,定義為S0(00)、S1(01)、S2(10)和S3(11)四種狀態。在每個時刻,輸入的1個比特信息,當前狀態將轉為4種狀態中的任何一種。
狀態表類似查找表,原理即根據當前的輸入和當前的狀態,可以從表中查得輸出信息。圖4為卷積碼的狀態轉移圖,圖中的狀態轉移表示“輸入/輸出1輸出2”。
卷積編碼碼率是什么
為了支持高效、靈活的傳輸方式,信道編碼技術需要考慮到各種不同的傳輸碼率和調制方式,兼顧HARQ重傳技術以及鏈路自適應技術。為此,信道編碼技術常常使用打孔或者重復的方法,從編碼比特流中提取預定長度比特序列,這個過程稱為速率匹配。研究表明,均勻并且對稱的打孔或者重復模式能夠獲得最優的速率匹配性能。均勻的打孔或者重復模式是指打孔或者重復的比特位置的分布是均勻的,以避免連續的比特位置上的比特被打孔或者重復。
TD-LTE中卷積碼速率匹配的原理如圖3-31所示。卷積編碼器輸出的第一、二和三校驗比特流分別獨立地交織后,被比特收集單元依次收集,也就是交織后的第一、二和三校驗比特流依次輸入到緩沖器中。每次傳輸時,比特選擇單元從緩沖器頭部的比特開始逐位讀取,直至達到預定的比特數。當讀取到緩沖器的尾部,仍然沒有達到預定的比特數時,比特選擇單元自動跳至緩沖器的頭部繼續讀取。卷積碼的這種基于緩沖器的速率匹配的過程,被稱為循環緩沖器速率匹配(CBRM)。
TD-LTE采用的卷積編碼器是碼率為1/3的最優距離譜編碼器,內嵌碼率為1/2的最優距離譜編碼器,這種編碼編碼方法能夠保證獲得優異的糾錯性能。如圖3-31所示,卷積碼速率匹配時,比特收集單元在收集3個比特流時,3個比特流是依次被收集,這樣能夠保證卷積碼通過速率匹配得到碼率為1/2碼字時,其距離譜仍然是最優的。
TD-LTE卷積碼速率匹配采用的交織器是一個簡單的行列交織器,如圖3-32所示,交織器執行按行寫入、內部列交織、按列讀出的簡單操作。行列交織器的列數固定為32,交織前,需要根據每個比特流的長度,計算得到行列交織器的行數,并根據需要在行列交織器的第一行的頭部進行補零操作。在基于循環緩沖器進行速率匹配時,交織器的使用能夠保證卷積碼的打孔或者重復模式是均勻的,從而獲得優異的卷積碼速率匹配性能。另外,由于卷積碼和Turbo碼采用了一致的速率匹配方法,因此基站和終端能夠采用一致的算法實現卷積碼和Turbo碼的速率匹配。
卷積編碼1/2碼率是什么
(1)對輸入的數據進行卷積編碼,編碼速率為1/2,即每輸入1個比特編碼輸出2個比特。
(2)將每次編碼輸出的2個比特量化為相應的數值,通過每一組數值計算出該組4個狀態(s0,s1,s2,s3)的分支度量值,即BM值。
(3)進行加比選(ACS)運算,同時保存路徑信息。首先在0時刻給4個狀態(s0,s1,s2,s3)賦初始路徑向量值(PM):假如起始點為狀態s0,則狀態s0的初始路徑向量值為PM0=100(該數值根據實際的情況來定,如回溯深度和分支度量值等,以便計算),狀態s1、狀態s2、狀態s3的初始路徑向量賦值為PM1=PM2=PM3=0。
(4)ACS過程。因為到達每一個狀態有兩條路徑(如圖3),例如到達狀態s0(00)的兩條路徑分別是s0(00)和s1(01),從中選出到達s0路徑度量值最大的一條路徑作為幸存路徑。如圖2,若從0時刻到1時刻:BM0=-8,BM1=0,max{PM0+BM0,PM1+BM1}=PM0+BM0=92,所以1時刻到達狀態s0的保留路徑為0時刻從狀態s0來的路徑,從而更新1時刻s0的PM0=92;同時由于1時刻到達s0的是“0”路徑,所以保存的該時刻s0的路徑信息是0(若是“1”路徑,則保存的該時刻s0的路徑信息為1)。以此類推,可求出該時刻到達狀態s1、s2、s3的幸存路徑,存儲該路徑信息,更新其路徑度量值PM。
(5)輸出判決(OD),即回溯過程,就是根據回溯深度以及ACS過程中所保存的PM值和幸存路徑信息進行相應的算法回溯出譯碼結果。
結語
關于卷積編碼的碼率介紹就到這了,如有不足之處歡迎指正。
評論
查看更多