王秀敏,宿 晨,單 良,王 怡,王 玉
(1. 中國計量大學 信息工程學院,浙江 杭州310018; 2. 紐約城市科技大學 計算機工程技術學院,紐約 11201)
高性能LDPC/Turbo碼雙模譯碼器的發(fā)展綜述
王秀敏1,宿 晨1,單 良1,王 怡1,王 玉2
(1. 中國計量大學 信息工程學院,浙江 杭州310018; 2. 紐約城市科技大學 計算機工程技術學院,紐約 11201)
目前LDPC碼和Turbo碼廣泛應用于3G和4G商用移動通信系統(tǒng)中,并且在無線局域網(wǎng)、光纖通信、水下通信、視頻和圖象的加密以及網(wǎng)絡安全等方面也發(fā)揮著重要的作用. 由于全球在不同地區(qū)的移動通信設備只支持一種碼,這使得移動通信有一定的地域局限性并影響通信質(zhì)量. 因此,通過對LDPC碼和Turbo碼譯碼過程的研究與結合,實現(xiàn)一種高性能的LDPC/Turbo碼雙模譯碼器具有重要意義. 文章回顧了目前LDPC/Turbo碼雙模譯碼器的發(fā)展情況,并針對存在的不足進行分析和總結,最后介紹LDPC碼和極化碼未來發(fā)展的趨勢.
LDPC/Turbo碼;雙模譯碼器;SISO計算單元;極化碼
進入21世紀以來,無線通信已經(jīng)基本覆蓋到了全球的每一個角落,影響著我們的生活,拉近了人與人之間的距離. 數(shù)字通信系統(tǒng)具有抗干擾能力強、傳輸差錯可控、可加密并保密性好等特點,并且對于不同信源的信號在傳輸和接收處理方面有非常好的靈活性,因而能與現(xiàn)代通信完美結合[1-2]. 在通信系統(tǒng)中最重要的就是保證信息傳輸?shù)姆€(wěn)定、可靠[3],Gallager先生于1962年發(fā)明了一種低密度奇偶校驗碼(LDPC)[4], 由于當時LDPC碼只有在碼長較長時性能好但通信硬件條件難以滿足這個需求而被忽視,直到1996年MacKay和Neal再次提出了它[5]. 在此之前,Berrou等人于1992年發(fā)明了Turbo碼,同時提出了迭代譯碼的思想[6]. LDPC碼和Turbo碼都接近Shannon極限,良好的譯碼性能滿足現(xiàn)代通信的需要. 實驗證明當碼長大于104時,LDPC碼的譯碼性能要優(yōu)于Turbo碼[7].
最早詳細提出LDPC碼和Turbo碼雙模譯碼器設計思路是在2008年,當時Sun Yang 等人提出了一種能同時支持LDPC碼和Turbo碼的譯碼算法,以及一種支持兩種碼共享的軟輸入軟輸出SISO計算單元[8-9],最大化的減少邏輯資源消耗,這些成果也為之后雙模的研究打下堅實基礎. 2014年Carlo 提出的LDPC/Turbo碼雙模譯碼器支持深空通訊,將雙模譯碼器的應用推向了新的高度,并且在計算單元SISO中實現(xiàn)了約90%的資源共享[10-11].
隨著4G通信的日漸成熟人們把更多的目光投向5G的研究中,其中極化碼已經(jīng)與5G悄然的聯(lián)系在了一起. 極化碼是由Erdal 教授于2008年提出的[12],極化碼在理論上可達到Shannon極限,并且在編譯碼設計上會有線性的復雜度變化,因而成為了研究的焦點[13].
1.1 雙模譯碼器總體結構
譯碼器總體結構設計主要基于譯碼過程,目前LDPC/Turbo碼雙模譯碼器中應用最廣泛的算法是Turbo碼的LUT-LogMAP算法和LDPC碼的LUT-TDMP算法,由于兩種算法在譯碼過程上基本一致,因此在設計中可以共享大量的計算單元. 文獻[8]提出的雙模譯碼器總體結構如圖1. 該結構支持WiMAX標準下的LDPC碼和TD-LTE標準下的Turbo碼,圖中虛線指向代表LDPC碼的譯碼過程,實線是Turbo碼的譯碼過程,而加粗實線為兩種碼共有的譯碼過程. 其中,交織器負責Turbo碼信息的交織或解交織[14],移位器負責LDPC碼信息的循環(huán)移位[15],兩者的目的都是為了打亂信息序列從而去掉消息在傳遞過程中的關聯(lián)度. 由于工作原理不同,交織器與移位器也是目前無法實現(xiàn)共享的模塊.
圖1 LDPC/Turbo碼雙模譯碼器的總體譯碼結構圖Figure 1 Overall structure of LDPC/Turbo dual-mode decoder
1.2 存在的不足
譯碼器的性能主要看吞吐率、誤碼率和邏輯資源消耗,其中決定吞吐率的主要因素就是譯碼延時. 隨著科技不斷進步,硬件手段更加豐富,邏輯資源消耗已不是致命的問題,人們?yōu)榱烁酶斓耐ㄐ艜x擇消耗較多的邏輯資源. 結合這一趨勢,我們總結出目前LDPC/Turbo碼雙模譯碼器的不足如下:
1)吞吐率較低. LDPC碼或Turbo碼單模譯碼器已經(jīng)可以達到3G以上的吞吐率[16-17],相比之下LDPC/Turbo碼雙模譯碼器還有很大的差距,主要原因是Turbo碼最大碼長要比LDPC碼長,并且各自的譯碼并行度也有很大不同[18],因此在分塊譯碼處理時很難減少譯碼延時,受影響最大的就是Turbo碼.
2)譯碼性能一般.由于LDPC碼和Turbo碼目前僅能以MAP算法相結合,因此譯碼算法的選擇受到很大的限制,無論是LUT-LogMAP算法還是LUT-TDMP算法均不是各自碼中性能最好的譯碼算法,因而直接影響到誤碼率.
3)標準限制. 本文研究的雙模譯碼器僅支持WiMAX標準的LDPC碼和TD-LTE標準下的Turbo碼,由于不同標準在碼的構造、信道選取和譯碼算法等方面也會不同,因此雙模譯碼器支持多標準的路還很長.
2.1 LDPC/Turbo碼雙模譯碼器改進與發(fā)展
在譯碼器吞吐率改進上,2011年Sun Yang 等人提出了基于QPP交織器的動態(tài)交織結構,實現(xiàn)了實時輸出交織地址從而在減少了大量存儲單元的同時降低了譯碼延時,并使得Turbo碼吞吐率達到了1 Gb/s以上[19]. Robert于2015年提出了一種高并行的Turbo碼譯碼算法,通過滑窗結構對消息節(jié)點進行最大化的并行處理,從而實現(xiàn)1 Gb/s以上的吞吐率[20]. 雖然雙模譯碼器并行度受限制,但采用以上兩種方法均可使數(shù)據(jù)處理更加連續(xù),從而減少譯碼延時,但應用到雙模中時還要考慮資源共享. Lin于2015年提出Radix-4 SISO計算單元結構[21],該結構支持Turbo碼的MAP算法和LDPC碼的MS算法,通過改變消息傳遞網(wǎng)絡,增加消息傳遞路徑來提升消息傳遞的效率. 由于MS算法在LDPC碼譯碼算法中性能較差,因此將該算法升級為NMS算法會使譯碼性能有大幅度提升,而僅提升LDPC譯碼算法性能會使計算單元共享率降低,因此我們嘗試將Turbo碼的算法也做相應的調(diào)整. NMS算法是Wu Xiaofu于2010年提出的基于歸一化的MS算法,該算法在MS算法的基礎上通過引入歸一化因子修正狀態(tài)轉移函數(shù)達到比BP算法更優(yōu)的譯碼性能[22].
由于NMS算法的譯碼性能也優(yōu)于LUT-TDMP算法[23],因此可以嘗試將歸一化近似的優(yōu)勢結合到LUT-TDMP算法和LUT-LogMAP算法計算狀態(tài)轉移函數(shù)的近似中. Vanukurn于2013年提出混合算法的思想,通過對LUT-Log-MAP算法和Linear-Log-MAP算法的混合達到了比Log-MAP算法更優(yōu)的譯碼性能[24],結合的部分為狀態(tài)轉移函數(shù)近似部分. 基于以上兩個思想可以將文獻[8]中的狀態(tài)轉移函數(shù)f(x,y)和max*進行查表近似和歸一化近似法相結合,選取合適的歸一化因子不但能夠提升譯碼性能,還可以將乘法運算轉化為移位加法的形式,這樣相比查表近似還減少了邏輯資源消耗[25].
圖2 支持雙模譯碼器的NFU單元結構圖Figure 2 NFU structure of dual-mode decoder
因此,可將文獻[8]中的靈活的功能單元(FFU)升級為采用混合近似法處理狀態(tài)轉移函數(shù)的歸一化功能單元(NFU),其結構如圖2. 其中4個CS信號控制不同近似法,在文獻[8]的查表模塊LUT-u和LUT-s的基礎上加入LDPC碼和Turbo碼各自的歸一化近似單元Nor-L和Nor-T,以滿足最佳的譯碼需求. SISO調(diào)用NFU的結構如圖3所示[9],其中前后向遞歸單元(FBR)利用分支度量γ進行前向度量α和后向度量β的遞歸計算[10]. 通過加法、比較和選取單元(ACS)計算出外信息. 結合圖3可以看出,采用混合近似法可以在LDPC碼或Turbo碼每次進行狀態(tài)轉移函數(shù)計算時最多可以分別減少16個和22個LUT計算,并將其替換為復雜度更低的移位加法運算[26],這樣的改進不但在理論上可以提升譯碼性能,而且還會節(jié)省邏輯資源.
圖3 基于NFU單元的SISO結構圖Figure 3 Structure of SISO based on NFU
2.2 雙模譯碼器與極化碼
隨著5G時代的悄然臨近,極化碼逐漸成為研究的重點.極化碼的核心就是“信道極化”,當極化碼的碼長持續(xù)增加時,一部分信道的容量將趨向于1即沒有誤碼的信道,而另一部分信道的容量則趨向于0的純噪聲信道.因此不難看出,我們將會選擇在容量接近于1的信道上直接傳輸信息從而逼近信道容量[27]. 在極化碼譯碼時,主要采用簡單的逐次干擾抵消譯碼的方法,從而以較低的實現(xiàn)復雜度獲得與最大自然譯碼相近的性能[28].
目前有很多學者已經(jīng)對LDPC碼、Turbo碼和極化碼的性能進行比較,發(fā)現(xiàn)LDPC碼在中短碼長的譯碼性能要遠遠優(yōu)于極化碼并且在碼長大于104時優(yōu)于Turbo碼,而極化碼雖然有理論上接近信道極限的性能但是也同樣要求碼長大于220時才行,不過考慮到極化碼在編碼和譯碼方面均有比LDPC碼和Turbo碼更低的復雜度因而受到了廣泛認可[29].
圖4 LDPC/Polar碼雙模譯碼器結構Figure 4 Structure of LDPC/Polar dual-mode decoder
由于極化碼同其他碼的譯碼原理不同,因此共享計算單元會非常復雜. 但是隨著研究的不斷深入,更多的共性將會被挖掘出來.例如,極化碼和LDPC碼均可用于AWGN信道,并且極化碼SC譯碼算法及其改進算法也涉及到消息傳遞的遞歸計算,這點同LDPC碼的前后向度量遞歸計算的過程類似. 因此,可以構想一種LDPC/Polar碼雙模譯碼器如圖4所示,根據(jù)控制單元和數(shù)據(jù)分配來對不同碼長的碼字選取最佳的譯碼方式,目的是對于中短碼長的碼字進行LDPC碼譯碼,而較長碼長則采用極化碼譯碼[30],這樣的譯碼器相比LDPC碼與極化碼的級聯(lián)會有很大的優(yōu)勢. 由于大多極化碼譯碼算法不需要迭代,因此極化碼SISO單元僅需要內(nèi)部存儲并沒有與外信息緩存相連[31].
本文針對當前LDPC/Turbo碼雙模譯碼器的研究現(xiàn)狀,結合它的不足提出改進想法,目的是為了提升雙模譯碼器的吞吐率和譯碼性能并減少邏輯資源消耗. 同時,結合5G時代的到來以及極化碼的不斷深入研究,提出一種LDPC/Polar碼雙模譯碼器模型,該譯碼器可以完成對不同碼長的碼字以最佳的譯碼方案譯碼. 目前由于LDPC碼和極化碼聯(lián)合后其共享模塊較少,因此找到更多LDPC碼與極化碼在計算單元的共享方案也是后續(xù)研究的主要內(nèi)容之一.
[1] SHENG G, ZHAO X Y, ZHANG H D, et al. Mathematical models for simulating coded digital communication: a comprehensive tutorial by big data analytics in cyber-physical systems[J]. IEEE Journals & Magazines,2016,4(1):9018-9026.
[2] SUN S L, KADOCH M, GONG L, et al. Integrating network function virtualization with SDR and SDN for 4G/5G networks[J]. IEEE Journals & Magazines,2015,29(3):54-59.
[3] FENG L X, PENG J, CHEN G R, et al. Communication channel analysis and simulation of medical implanted electronic devices based on the volume conduction[C]//15th International Conference on Cognitive Informatics & Cognitive Computing. USA: IEEE Press,2016:423-431.
[4] GALLAGER R. Low-density parity-check codes[J]. IEEE Transactions on Information Theory,1962,8(1):21-28.
[5] DAVEY M, MACKAY D. Low-density parity check codes over GF(q)[J]. IEEE Communications Letters,2002,2(6):165-167.
[6] BERROU C, GLAVIEUX A, THITIMAJSHIMA P. Near Shannon limit error-correcting coding and decoding: Turbo-codes [C]// Communications, ICC ’93 Geneva, Technical Program. USA: IEEE Press,1993:1064-1070.
[7] BAEK C, JUNG J. A study on turbo equalization for MIMO system based on LDPC codes[C]// Eighth International Conference on Ubiquitous and Future Networks (ICUFN). USA: IEEE Press,2016:501-504.
[8] SUN Y, CAVALLARO J R. A flexible LDPC/Turbo decoder architecture[J]. Journals of Sign Process Systems,2011,64(1):1-16.
[9] SUN Y, CAVALLARO J R. Unified decoder architecture for LDPC/turbo codes[C]// IEEE Workshop on Signal Processing Systems. USA: IEEE Press,2008:13-18.
[10] CARLO C, GUIDO M. Unified Turbo/LDPC code decoder architecture for deep-space communications[J]. IEEE Transactions on Aerospace and Electronic Systems,2014,50(4):3115-3125.
[11] CARLO C, MAURIZIO M, GUIDO M. VLSI implementation of a Multi-Mode Turbo/LDPC decoder architecture[J]. IEEE Transactions on Circuits and Systems I: Regular Papers,2013,60(6):1441-1454.
[12] ERDAL A. A performance comparison of polar codes and Reed-Muller codes[J]. IEEE Communications Letters,2008,12(6):447-449.
[13] SYED M A, FAN Y Z, CHEN J, et al. High-Throughput and Energy-Efficient belief propagation polar code decoder[J]. IEEE Transactions on Very Large Scale Integration (VLSI) Systems,2017,25(3):1098-1111.
[14] JYRKI L, JONGHOON R, EEVA S. On the degree of the inverse of quadratic permutation polynomial interlreavers[J]. IEEE Transactions on Information Theory,2012,58(6):3925-3932.
[15] DAESUN O, KESHAB K P. Low-Complexity switch network for reconfigurable LDPC decoders[J]. IEEE transactions on very large scale integration(VLSI systems),2010,18(1):85-94.
[16] SACHIN K, RAHUL S, NIKUNJ D, et al. High-Throughput LDPC-Decoder architecture using efficient comparison techniques & dynamic Multi-Frame processing schedule[J]. IEEE Transactions on Circuits and Systems I: Regular Papers,2015,62(5):1421-1430.
[17] RAHUL S, ROY P P. High-Throughput turbo decoder with parallel architecture for LTE wireless communication standards[J]. IEEE Transactions on Circuits and Systems I: Regular Papers,2014,61(9):2699-2710.
[18] SHAHRIAR S, JANNE J, MUHAMMET F B, et al. Design of a unified transport triggered processor for LDPC/turbo decoder[C]// Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS XIII). USA: IEEE Press,2013:288-295.
[19] SUN Y, CAVALLARO J R. Efficient hardware implementation of a highly parallel 3GPP LTE/LTE-advance Turbo decoder[J]. Intergation, the VLSI Joural,2011,44:305-315.
[20] ROBERT G M. A Fully-Parallel Turbo Decoding Algorithm[J]. IEEE Transactions on Communications,2015,63(8):2762-2775.
[21] LIN C H, YU C S. Multi-mode radix-4 SISO kernel design for Turbo/LDPC decoding[J]. IEEE Transactions on Very Large Scale Integration (VLSI) Systems,2015,23(10):2256-2267.
[22] WU X F, SONG Y, JIANG M, et al. Adaptive-Normalized/Offset min-sum algorithm[J]. IEEE Communications Letters,2010,14(7):667-669.
[23] ZHAO M, ZHANG X L, ZHAO L, et al. Design of a high-throughput QC-LDPC decoder with TDMP scheduling[J]. IEEE Transactions on Circuits and Systems II: Express Briefs,2015,62(1):56-60.
[24] VANUKURU H R, AKSHAY S, NIGAR S. A composite sub-optimal approach for hardware implementation of turbo decoder[C]// 2013 IEEE International Conference on Communications (ICC). USA: IEEE Press,2013:4515-4519
[25] 張順根,仰楓帆.基于FPGA的隨機構造QC-LDPC分層譯碼器設計[J].無線電通信技術,2015,41(1):41-45.
ZHANG S G, YANG F F. Design on randomly constructed QC-LDPC layered decoder based on FPGA[J]. Radio Communications Technology,2015,41(1):41-45.
[26] 盧海芹,仰楓帆.基于FPGA有限域構造的QC-LDPC分層譯碼器設計[J].電子科技,2015,28(2):78-82. LU H Q, YANG F F. Design of QC-LDPC layered FPGA decoder based on the structure of finite fields[J]. Electronic Science & Technology,2015,28(2):78-82.
[27] YANG G Y, ZHUANG M J. Achieving the secrecy capacity on strong security using LT code with polar code pre-coding[C]// 2016 10th IEEE International Conference on Anti-counterfeiting, Security, and Identification (ASID). USA: IEEE Press,2016:53-57.
[28] SUN S H, CHO S G, ZHANG Z Y. Error patterns in belief propagation decoding of polar codes and their mitigation methods[C]// 2016 50th Asilomar Conference on Signals, Systems and Computers. USA: IEEE Press,2016:1199-1203.
[29] IDO T. On the construction of polar codes for channels with moderate input alphabet sizes[J]. IEEE Transactions on Information Theory,2017,63(3):1501-1509.
[30] SYED M A, FAN Y Z, CHEN J, et al. High-throughput and energy-efficient belief propagation polar code decoder[J]. IEEE Transactions on Very Large Scale Integration (VLSI) Systems,2017,25(3):1098-1111.
[31] ZHANG Y X, YANG Z, LIU A J, et al. Secure transmission over the wiretap channel using polar codes and artificial noise[J]. IET Communications,2017,11(3):377-384.
A development overview of high-performance LDPC/Turbo dual-mode decoders
WANG Xiumin1, SU Chen1, SHAN Liang1, WANG Yi1, WANG Yu2
(1. College of Information Engineering, China Jiliang University, Hangzhou 310018, China; 2. College of Computer Engineering Technology, New York City College of Technology, New York 11201, USA)
LDPC codes and Turbo codes are widely used in the commerce of 3G and 4G mobile communication systems and play an important role in wireless LAN, optical fiber communication, underwater communication, video and image encryption and network security. Global mobile devices in different regions only support one code. Domain limitation in mobile communication affects the quality of communication. Therefore, it is very important to realize a high-performance LDPC/Turbo dual-mode decoder by combining the LDPC and Turbo codes in the decoding process. This paper reviews the development of LDPC/Turbo dual-mode decoders, analyzes and summarizes the shortcomings of the decoder, and introduces the trend of future development for LDPC and polar codes.
LDPC/Turbo code; dual-mode decoder; SISO calculation unit; polar code
2096-2835(2017)02-0203-05
10.3969/j.issn.2096-2835.2017.02.011
2017-03-13 《中國計量大學學報》網(wǎng)址:zgjl.cbpt.cnki.net
國家自然科學基金資助項目(No. 61379027),國家自然科學青年基金資助項目(No. 51404223),浙江省自然科學青年基金資助項目(No.LQ14E060003).
王秀敏(1963-),女,遼寧省錦州人,教授,主要研究方向為電子信息與通信.E-mail:wxm6341@163.com
TN91
A