一、什么是信道編碼算法
由于無線信號是敏感而脆弱的,易受干擾、弱覆蓋等影響,發(fā)送的數(shù)據(jù)和接收到的數(shù)據(jù)有時候會不一致,比如手機發(fā)送的1 0 0 1 0,而基站接收到的卻是1 1 0 1 0,為了糾錯,無線通信系統(tǒng)就引入了信道編碼技術(shù)。
在上個世紀40年代以前,人們認為只有通過增加發(fā)射功率和重傳的方式,才能減少這種通信錯誤。直到1948年香農(nóng)提出了偉大的香農(nóng)定理,人們才認識到,可以通過信道編碼的方式來實現(xiàn)可靠通信。
所謂信道編碼,也叫差錯控制編碼,就是在發(fā)送端對原數(shù)據(jù)添加冗余信息,這些冗余信息是和原數(shù)據(jù)相關(guān)的,再在接收端根據(jù)這種相關(guān)性來檢測和糾正傳輸過程產(chǎn)生的差錯,從而對抗傳輸過程的干擾。
二、香農(nóng)定理
香農(nóng)定理是所有通信制式最基本的原理,它描述了有限帶寬、有隨機熱噪聲信道的最大傳輸速率與信道帶寬、信號噪聲功率比之間的關(guān)系。其用公式可表示為:
其中:C是信道支持的最大速度或者叫信道容量;B是信道的帶寬;S是平均信號功率;N是平均噪聲功率;S/N即信噪比。
香農(nóng)定理給出了信道信息傳送速率的上限(比特每秒)和信道信噪比及帶寬的關(guān)系。香農(nóng)定理可以解釋現(xiàn)代各種無線制式由于帶寬不同,所支持的單載波最大吞吐量的不同。
理解香農(nóng)公式須注意以下幾點:
(1)信道容量由帶寬及信噪比決定,增大帶寬、提高信噪比可以增大信道容量;
(2)在要求的信道容量一定的情況下,提高信噪比可以降低帶寬的需求,增加帶寬可以降低信噪比的需求;
(3)香農(nóng)公式給出了信道容量的極限,也就是說,實際無線制式中單信道容量不可能超過該極限,只能盡量接近該極限。在卷積編碼條件下,實際信道容量離香農(nóng)極限還差3dB;在Turbo編碼的條件下,接近了香農(nóng)極限。
(4)LTE中多天線技術(shù)沒有突破香農(nóng)公式,而是相當于多個單信道的組合。
香農(nóng)定理可以變換一下形式成為:
這個C/B就是單位帶寬的容量(業(yè)務(wù)速率),就是頻譜利用率的概念,也就是說香農(nóng)定理給出了一定信噪比下頻率利用率的極限。
三、信道編碼發(fā)展史
1、1949年R.Hamming和M.Golay提出了第一個實用的差錯控制編碼方案——漢明碼。
2、M.Golay先生研究了漢明碼的缺點,提出了Golay碼,1979~1981年間被用于美國國家航空航天局太空探測器Voyager的差錯控制系統(tǒng),將成百張木星和土星的彩色照片帶回地球。
3、分組碼——RM碼。在1969年到1977年之間,RM碼廣泛應(yīng)用于火星探測,同時,其快速的譯碼算法非常適合于光纖通信系統(tǒng)。
4、循環(huán)碼,也叫循環(huán)冗余校驗(CRC)碼。循環(huán)碼也是分組碼的一種,其碼字具有循環(huán)移位特性,這種循環(huán)結(jié)構(gòu)大大簡化了編譯碼結(jié)構(gòu)。
/*以上編碼方案都是基于分組碼實現(xiàn),分組碼主要有兩大缺點:一是在譯碼過程中必須等待整個碼字全部接收到之后才能開始進行譯碼,二是需要精確的幀同步,從而導(dǎo)致時延較大、增益損失大。*/
5、Elias于1955年提出卷積碼。
/*卷積碼與分組碼的不同在于:它充分利用了各個信息塊之間的相關(guān)性。在卷積碼的譯碼過程中,不僅從本碼中提取譯碼信息,還要充分利用以前和以后時刻收到的碼組,從這些碼組中提取譯碼相關(guān)信息,而且譯碼也是連續(xù)進行的,這樣可以保證卷積碼的譯碼延時相對比較小。你說卷積碼的問題?那就是“計算復(fù)雜性”問題。其增益與香農(nóng)理論極限始終都存在2~3dB的差距。*/
6、Viterbi于1967年提出的Viterbi譯碼算法。卷積碼在通信系統(tǒng)中得到了極為廣泛的應(yīng)用,如GSM、 IS-95 CDMA、3G、商業(yè)衛(wèi)星通信系統(tǒng)等。
7、1993年,兩位當時名不見經(jīng)傳的法國電機工程師C.Berrou和A.Glavieux聲稱他們發(fā)明了一種編碼方法——Turbo碼,可以使信道編碼效率接近香農(nóng)極限。Turbo繞過數(shù)學(xué)理論,通過迭代譯碼的辦法解決了計算復(fù)雜性問題。Turbo碼也成為了3G/4G移動通信技術(shù)所采用的編碼技術(shù)。
▲Turbo碼的譯碼器有兩個分量碼譯碼器,譯碼在兩個分量譯碼器之間進行迭代譯碼,故整個譯碼過程類似渦輪(turbo)工作,所以又形象的稱為Turbo碼。
/*由于Turbo碼采用迭代解碼,必然會產(chǎn)生時延,所以對于實時性要求很高的場合,對于即將到來的超高速率、超低時延的5G需求,Turbo碼又遇到瓶頸,因此,在5G時代就出現(xiàn)了Polar碼和LDPC碼之爭。*/
8、LDPC和Polar碼閃亮登場。
LDPC碼是由MIT的教授 Robert Gallager在1962年提出,這是最早提出的逼近香農(nóng)極限的信道編碼,2000年左右被WiFi標準采納。LDPC有啥優(yōu)勢呢?LDPC基于高效的并行譯碼構(gòu)架實現(xiàn),其譯碼器在硬件實現(xiàn)復(fù)雜度和功耗方面均優(yōu)于Turbo碼。
Polar碼是由土耳其比爾肯大學(xué)教授E. Arikan在2007年提出,是被理論證明可達到香農(nóng)極限的編碼方案。Polar碼有啥優(yōu)勢呢?Polar碼兼具較低的編碼和譯碼復(fù)雜度,不存在錯誤平層(error floor)現(xiàn)象,誤幀率(FER)比Turbo低得多,Polar碼還支持靈活的編碼長度和編碼速率,各方面證明比Turbo碼具備更優(yōu)的性能。
因此,最后3GPP在5G時代拋棄了Turbo碼,選擇了LDPC為數(shù)據(jù)信道編碼方案,Polar為廣播和控制信道編碼方案。因為各種編碼方案的優(yōu)缺點不同,需對其硬件實現(xiàn)復(fù)雜度、功耗、靈活性、成熟度等進行綜合考量,One code does not fit all,沒有“一刀切”的處方。
四、信道編碼的應(yīng)用