《電子技術(shù)應(yīng)用》
您所在的位置:首頁(yè) > 模擬設(shè)計(jì) > 設(shè)計(jì)應(yīng)用 > 基于FPGA的低資源極化碼SC譯碼架構(gòu)研究與實(shí)現(xiàn)
基于FPGA的低資源極化碼SC譯碼架構(gòu)研究與實(shí)現(xiàn)
2020年電子技術(shù)應(yīng)用第9期
曹 蓉1,2,趙德政2,郭 佳2,李家鑫1
1.華北計(jì)算機(jī)系統(tǒng)工程研究所,北京100083;2.中電智能科技有限公司,北京100083
摘要: 針對(duì)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中對(duì)資源消耗及成本敏感的應(yīng)用場(chǎng)景,研究并提出了一種基于FPGA的低資源極化碼連續(xù)刪除(Successive Cancellation,SC)譯碼架構(gòu)。該譯碼架構(gòu)采用同級(jí)計(jì)算單元串行運(yùn)算,不同級(jí)計(jì)算單元并行運(yùn)算,不同組譯碼數(shù)據(jù)并行處理的方式,通過(guò)減少計(jì)算單元(Processing Element,PE)個(gè)數(shù)、復(fù)用寄存器存儲(chǔ)資源提升硬件資源利用率,復(fù)用譯碼延遲提升吞吐率。通過(guò)Xilinx xc7vx330t綜合結(jié)果分析,該譯碼架構(gòu)在碼長(zhǎng)為N=128時(shí)譯碼最高時(shí)鐘頻率為220.444 MHz,吞吐率為89.86 Mb/s,與樹(shù)型SC譯碼架構(gòu)相比,計(jì)算單元利用率提升了14.67倍,在主要硬件資源指標(biāo)查找表(Look-Up-Table,LUT)和觸發(fā)器(Filp-Flop,F(xiàn)F)上分別節(jié)省了74.22%和62.1%。
中圖分類(lèi)號(hào): TN911
文獻(xiàn)標(biāo)識(shí)碼: A
DOI:10.16157/j.issn.0258-7998.200203
中文引用格式: 曹蓉,趙德政,郭佳,等. 基于FPGA的低資源極化碼SC譯碼架構(gòu)研究與實(shí)現(xiàn)[J].電子技術(shù)應(yīng)用,2020,46(9):74-78,84.
英文引用格式: Cao Rong,Zhao Dezheng,Guo Jia,et al. Research and implementation of low resource polar code SC decoding architecture based on FPGA[J]. Application of Electronic Technique,2020,46(9):74-78,84.
Research and implementation of low resource polar code SC decoding architecture based on FPGA
Cao Rong1,2,Zhao Dezheng2,Guo Jia2,Li Jiaxin1
1.National Computer System Engineering Research Institute of China,Beijing 100083,China; 2.Intelligence Technology of CEC Co.,Ltd.,Beijing 100083,China
Abstract: In view of the application scenarios are sensitive to resource consumption and cost in wireless sensor networks, this paper studies and proposes a low resource polar code successive cancellation(SC) decoding architecture based on FPGA. The decoding architecture adopts the serial operation of the same level computing units, the parallel operation of different levels of computing units, and the parallel processing of different groups of decoding data. By reducing the number of processing elements(PE), reusing register storage resources, the architecture improves the utilization of hardware resources, and reusing decoding delay improves the throughput. According to the analysis of the comprehensive results of Xilinx xc7vx330t, when the code length is N=128, the architecture′s highest decoding clock frequency is 220.444 MHz, and the throughput is 89.86 Mb/s. Compared with the tree SC decoding architecture, its utilization ratio of computing unit is increased by 14.67 times. It saves 74.22% and 62.1% on Look-Up-Table(LUT) and Flip-Flop(FF) of main hardware resource indexes respectively.
Key words : FPGA;polar code;low resource;processing elements;SC decoding algorithm

0 引言

    無(wú)線(xiàn)傳感器網(wǎng)絡(luò)是將自動(dòng)控制技術(shù)、傳感器技術(shù)、無(wú)線(xiàn)傳輸技術(shù)、數(shù)字信號(hào)分析處理技術(shù)融合于一體的先進(jìn)系統(tǒng),由大量帶有傳感器并能夠進(jìn)行無(wú)線(xiàn)通信的節(jié)點(diǎn)通過(guò)自組織的方式構(gòu)成網(wǎng)絡(luò),各節(jié)點(diǎn)之間相互協(xié)作對(duì)周?chē)h(huán)境進(jìn)行物理感知,并將處理后的信息返回終端設(shè)備[1]。無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的數(shù)據(jù)傳輸差錯(cuò)控制一般采用循環(huán)冗余校驗(yàn)(Cyclic Redundancy Check,CRC),而循環(huán)冗余校驗(yàn)只能校驗(yàn)出某段信息中出現(xiàn)差錯(cuò),然后通知發(fā)送端重傳信息,當(dāng)傳感器網(wǎng)絡(luò)傳輸大量數(shù)據(jù),并且傳輸距離較遠(yuǎn)時(shí),信息差錯(cuò)率明顯提升,通信系統(tǒng)的可靠性大大降低。從網(wǎng)絡(luò)能耗方面分析,無(wú)線(xiàn)通信模塊發(fā)送、接收信息的能耗是無(wú)線(xiàn)傳感器網(wǎng)絡(luò)中最大的,重傳率的升高必然導(dǎo)致能量消耗加快。文獻(xiàn)[2]中提出的利用低密度奇偶校驗(yàn)(Low-Density Parity-Check,LDPC)碼的信道編碼技術(shù)可以大幅度提升數(shù)據(jù)的可靠性,從而降低無(wú)線(xiàn)傳感器的能量消耗,但是LDPC碼并沒(méi)有達(dá)到香農(nóng)極限,因此無(wú)線(xiàn)傳感器傳輸?shù)目煽啃赃€有進(jìn)一步提升的可能性。

    極化碼是目前唯一被理論證實(shí)能夠達(dá)到香農(nóng)極限[3]的一種基于信道極化現(xiàn)象提出的信道編碼方式,具有較低的編譯碼復(fù)雜度和高可靠傳輸性能等優(yōu)勢(shì),被確立為5G eMBB(Enhanced Mobile Broadband)場(chǎng)景下控制信道的編碼方式[4]。5G的應(yīng)用場(chǎng)景要求低延時(shí)高吞吐率,因此在極化碼SC譯碼器研究中大部分研究者主要在吞吐率上的優(yōu)化和提升,如文獻(xiàn)[5]提出的FFT型SC譯碼器架構(gòu),需要Nlog2N(N為SC碼長(zhǎng))個(gè)節(jié)點(diǎn)計(jì)算單元,每一級(jí)需要N個(gè)寄存器,該譯碼結(jié)構(gòu)采用自右向左的譯碼順序,譯碼N比特信息需要2N-2個(gè)時(shí)鐘周期(Clock Cycle,CC),也就是每2N-2個(gè)時(shí)鐘周期所有計(jì)算節(jié)點(diǎn)都只使用了一次,可見(jiàn)在FFT型SC架構(gòu)譯碼過(guò)程中大部分時(shí)間計(jì)算節(jié)點(diǎn)都是處于空閑狀態(tài),造成了大量硬件資源的浪費(fèi)。樹(shù)型SC架構(gòu)譯碼過(guò)程中,當(dāng)任意級(jí)k開(kāi)始計(jì)算似然比信息(Likelihood Ratio,LR)時(shí),最多只有2k個(gè)節(jié)點(diǎn)參與計(jì)算,樹(shù)型SC架構(gòu)包括N-1個(gè)PE和N-1個(gè)寄存器,PE是可以選擇執(zhí)行f函數(shù)或g函數(shù)的可配置單元。和FFT架構(gòu)相比,盡管吞吐率和計(jì)算量沒(méi)有提升,但是樹(shù)型架構(gòu)減少了PE和寄存器的數(shù)量。線(xiàn)型SC架構(gòu)寄存器依舊保持樹(shù)型架構(gòu),寄存器和PE仿照樹(shù)型架構(gòu)通過(guò)資源多路復(fù)用的方式相連,盡管線(xiàn)型結(jié)構(gòu)加入了二輸入多路復(fù)用器,但是PE數(shù)量的減少使它顯著降低了硬件復(fù)雜度,又同時(shí)達(dá)到了和樹(shù)型架構(gòu)一樣的吞吐率。以上SC譯碼器架構(gòu)雖然能達(dá)到較高的吞吐率,但是在碼長(zhǎng)較長(zhǎng)(如N=128)時(shí),計(jì)算單元PE使用的數(shù)據(jù)較大,消耗硬件資源極大。但是對(duì)于無(wú)線(xiàn)傳感器網(wǎng)絡(luò),1 Mb/s的吞吐率就能滿(mǎn)足需求,同時(shí)無(wú)線(xiàn)傳感器網(wǎng)絡(luò)節(jié)點(diǎn)多采用電池進(jìn)行供電,能量有限[2,6],因此在犧牲部分吞吐率的前提下,大幅度降低極化碼SC譯碼器的硬件資源消耗對(duì)于極化碼在無(wú)線(xiàn)傳感器網(wǎng)絡(luò)的應(yīng)用具有重大意義。

    基于以上問(wèn)題,本文提出了一種基于FPGA低資源極化碼SC譯碼架構(gòu),采用同級(jí)計(jì)算單元串行運(yùn)算,不同級(jí)計(jì)算單元并行運(yùn)算,不同組譯碼數(shù)據(jù)并行處理的硬件架構(gòu),通過(guò)減少計(jì)算單元的個(gè)數(shù)、復(fù)用譯碼延時(shí)和寄存器存儲(chǔ)資源,提升硬件利用率,降低硬件資源消耗和硬件成本。通過(guò)Xilinx xc7vx330t綜合結(jié)果分析,該譯碼架構(gòu)在碼長(zhǎng)為128時(shí)吞吐率為89.86 Mb/s,主要硬件資源指標(biāo)LUT和FF分別是690和274。本文研究的低資源的極化碼SC譯碼架構(gòu)的計(jì)算單元PE利用率相比樹(shù)型SC架構(gòu)提升了14.67倍;相比文獻(xiàn)[7]提出的SC譯碼架構(gòu),在碼長(zhǎng)N=128時(shí),主要硬件資源指標(biāo)LUT和FF上分別節(jié)省了74.22%和62.1%。




本文詳細(xì)內(nèi)容請(qǐng)下載:http://theprogrammingfactory.com/resource/share/2000002985




作者信息:

曹  蓉1,2,趙德政2,郭  佳2,李家鑫1

(1.華北計(jì)算機(jī)系統(tǒng)工程研究所,北京100083;2.中電智能科技有限公司,北京100083)

此內(nèi)容為AET網(wǎng)站原創(chuàng),未經(jīng)授權(quán)禁止轉(zhuǎn)載。