硬核科普,華為polar碼與高通LDPC碼之爭

能在頭條上發這樣的文章需要莫大的勇氣,希望諸位看官能點點贊點點關注,並且說說你的理解。

Polar碼在2009年首次被Arikan提出。它以理論可達香農限,以及簡單的編譯碼算法等優點迅速成為編碼界的研究熱點。目前,polar碼主要研究方向有以下幾個:一是polar碼的碼字構造。Polar碼的原理基礎是信道極化:在無限碼長下,以一定的編碼方式進行編碼,則編碼後的“比特信道”將極化為“好信道”和“壞信道”。這裡的“比特信道”實際上是串行消除譯碼時的信道。。但在有限碼長下,“比特信道”極化將不完全,即只有部分信道是“好信道”或者是“壞信道”,當中還有部分信道介於“好信道”和“壞信道”之間,這裡我們將其稱為“不完全極化信道”。如何在不完全極化信道中挑選出相對較好的“比特信道”就是polar碼碼字構造問題。二是polar碼譯碼算法研究。目前polar碼譯碼算法主要有SC算法、SCL算法、CA-SCL算法、BP算法、SCAN算法,以及各種算法的簡化版本。其中SC算法最初由Arikan提出,但其在碼長有限長情形下,性能一般。SCL是SC算法性能提升的改進版本,原理是在SC的基礎上提供了多條路徑;而CA-SCL是在SCL的基礎上對信息比特進行了循環冗餘校驗。它通過簡單的校驗就可以帶來性能的極大提升。目前基於CA-SCL譯碼算法,polar碼性能已經優於LDPC碼。SC、SCL、以及CA-SCL算法均是硬輸出算法,即最終輸出的是0、1比特序列而不是對應的LLR值。為了在一些聯合設計中使用polar碼,就必須提供polar碼的軟輸出算法,即輸出對應比特的LLR值。BP和SCAN算法就是軟輸出算法,由於BP和SCAN算法在消息傳遞和遞歸規則上不同,導致了兩種算法的譯碼延時和收斂速度不同。

Polar碼的基本原理是信道極化。Arikan在他的文章中指出如果對二進制對稱信道進行特定的“組合”和“拆分”,則拆分後的“比特信道”將呈現極化現象:一部分“比特信道”的對稱信道容量趨近於1,而其餘部分“比特信道”的對稱信道信道容量趨近於0。如果發送端將源信息比特放置在“好的比特信道上”,而在“壞的比特信道上”放置固定比特,如0,同時在接收端採用連續消除譯碼算法,則該碼字的碼率 在碼長 時將可以達到信道容量。

polar碼編碼,以polar碼碼長等於8為例,在找到polar碼的固定比特位置和信息比特位置後,採用如圖 所示的編碼方式。而譯碼算法主要包括SC譯碼SCL譯碼SCAN譯碼以及BP譯碼

硬核科普,華為polar碼與高通LDPC碼之爭

需要解決的問題:

1針對特定條件下的Polar碼構造方法的改進。目前,Polar碼的構造算法還未有公認的最優算法。傳統的巴氏參數法在BEC信道下提出,理論上可以達到香農容量極限,但在其他信道下其複雜度呈指數上升,無法實際應用。在高斯信道下,儘管已經有許多學者提出相對成熟的構造算法,如密度進化構造法、高斯近似構造法、PW構造法等,但這些算法的性能仍有優化的空間。而在衰弱信道下,目前仍未有較公認的優良構造算法。在僅知道CSI或CDI的前提下,Polar碼的構造方案也不盡相同。需研究適合於寬帶衛星通信系統的Polar碼構造方法。Polar碼譯碼算法的改進,提升其誤碼性能。傳統的SC譯碼雖然算法實現簡單,複雜度較低為O(NlogN),且在碼長趨於無窮大時能達到香農容量,但在有限碼長時誤碼性能不理想。而用於其他碼的BP算法/ML算法誤碼性能較好,碼長N=256時,在BEC、BSC、AWGN信道下性能均優於RM碼,但算法複雜度太高。

最後華為公司主導的polar與碼美國高通公司主導的LDPC碼相比,是一個非常年輕的編碼方案,也就才誕生十餘年。目前已確定5G的eMBB應用場景中,控制信道編碼採用華為公司的polar碼,注意並不是整個5G。其實我前面說過,華為的polar碼在長碼部分反而是更有優勢的,因為它更逼近於香農極限。但是投票結果長碼卻是採用了高通的LDPC碼。沒錯,之前炒的沸沸揚揚的聯想投票事件,投的就是這個標準。聯想最後選擇把票投給美國高通公司主導的LDPC碼,且不管結果如何,這種行為本身就值得思考。中國公司為什麼不能站在一起呢,或者說聯想到底怎麼了?


分享到:


相關文章: