亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        一種適用于嵌入式平臺(tái)的Raptor碼算法

        2015-06-23 16:27:38
        無線電工程 2015年10期
        關(guān)鍵詞:譯碼嵌入式分組

        梁 斌

        (中國電子科技集團(tuán)公司第五十四研究所,河北 石家莊 050081)

        一種適用于嵌入式平臺(tái)的Raptor碼算法

        梁 斌

        (中國電子科技集團(tuán)公司第五十四研究所,河北 石家莊 050081)

        針對Raptor編/譯碼器在衛(wèi)星通信工程應(yīng)用中運(yùn)算量過大的不足,提出一種新的稀疏矩陣方程求解算法。采用該算法求解Raptor編/譯碼方程,可簡化求解步驟。與3GPP描述的Raptor碼求解算法相比,該算法可有效降低基于嵌入式平臺(tái)的Raptor編/譯碼器的運(yùn)算時(shí)間,滿足了實(shí)際工程中對時(shí)延限制和設(shè)備小型化的需求。

        噴泉碼;Raptor碼;前向糾錯(cuò);嵌入式

        0 引言

        Raptor碼[1]是一種新型噴泉碼[2],由shokrollahi于2006年提出。與此前Luby提出的噴LT碼(Luby Transform)[3]相比,Raptor碼具備更好的編譯碼性能[4]。因此,它被3GPP選定為多媒體組播多播服務(wù)(MultimediaBroadcast/Multicast Service,MBMS)中的前向糾錯(cuò)(Forward Error Correc-tion,F(xiàn)EC)算法[5]。在通信設(shè)備中常用的嵌入式平臺(tái)上直接使用3GPP標(biāo)準(zhǔn)中的Raptor編/譯碼算法,由于其編譯碼過程的運(yùn)算量大,且CPU性能有限,導(dǎo)致運(yùn)算時(shí)間延遲過大,無法滿足需求。

        為解決此問題,本文提出一種新的稀疏矩陣求解算法,對3GPP標(biāo)準(zhǔn)的Raptor編/譯碼算法中的計(jì)算量最大的方程系數(shù)矩陣降階過程進(jìn)行優(yōu)化,使其能夠滿足工程應(yīng)用。

        1 Raptor編譯碼原理

        Raptor碼編碼和譯碼過程如圖1所示。Raptor編譯碼運(yùn)算的基本單位為符號。符號指長度為若干比特的定長數(shù)據(jù)塊。

        圖1 Raptor碼編譯碼過程

        Raptor編碼過程可分為預(yù)編碼和LT編碼。在預(yù)編碼過程中,輸入的數(shù)據(jù)塊被分割為1~k個(gè)符號,并通過編碼矩陣運(yùn)算轉(zhuǎn)化為中間符號。LT編碼過程則根據(jù)中間符號和編碼符號ID(Encoded Symbol ID,ESI)產(chǎn)生1~m個(gè)編碼符號。因噴泉碼為無率碼,m理論上可取無窮大的整數(shù)。在實(shí)際應(yīng)用中,則根據(jù)信道狀況確定m的取值。

        編碼符號序列通過刪除信道后進(jìn)入Raptor譯碼器。Raptor譯碼過程同樣可分為預(yù)譯碼和LT譯碼。預(yù)譯碼過程將收到的編碼符號序列恢復(fù)成中間符號。因Raptor碼為系統(tǒng)碼,前k個(gè)編碼符號與原始數(shù)據(jù)相同。LT譯碼過程只需根據(jù)中間符號生成1~k個(gè)編碼符號,即可恢復(fù)原始數(shù)據(jù)。

        Raptor預(yù)編/譯碼過程可等價(jià)為模2線性方程組求解。其編/譯碼線性方程組的系數(shù)矩陣即為Raptor編/譯碼矩陣。3GPP推薦的Raptor編碼矩陣由LDPC[6,7]矩陣、Half矩陣、單位陣和前k個(gè)符號對應(yīng)的偽隨機(jī)數(shù)向量組成,其整體為一個(gè)方陣;譯碼矩陣則由LDPC[7,8]矩陣、Half矩陣、單位陣和n個(gè)偽隨機(jī)向量組成,其整體為一個(gè)長方形矩陣。其中n為1~m個(gè)編碼符號通過刪除信道后,被譯碼器接收到的符號個(gè)數(shù)。Raptor預(yù)編/譯碼過程就是將編/譯碼矩陣轉(zhuǎn)換為單位陣的過程。此操作完成后,中間符號就會(huì)被求取出來。然后,LT編碼過程則根據(jù)中間符號和ESI信息,通過一系列運(yùn)算和查表操作,生成該ESI對應(yīng)的編碼符號。

        由線性代數(shù)相關(guān)知識可知,線程方程組有解的充要條件是其系數(shù)矩陣滿秩。Raptor編碼矩陣的產(chǎn)生規(guī)則可保證其必然為滿秩方陣。但是Raptor譯碼矩陣與接收符號對應(yīng)的向量相關(guān),因而導(dǎo)致其不一定滿秩。如譯碼矩陣不滿秩,則Raptor譯碼失敗。因此,Raptor譯碼存在失敗概率。人們經(jīng)過長期試驗(yàn),總結(jié)出Raptor碼譯碼失敗概率為:

        式中,n為譯碼器收到的編碼符號數(shù)量;k為編碼原始數(shù)據(jù)包含的符號數(shù)量。當(dāng)n<k的時(shí)候,譯碼矩陣的行數(shù)低于列數(shù),必然不滿秩,譯碼失敗概率為1。當(dāng)n≥k的時(shí)候,譯碼系數(shù)矩陣行數(shù)大于等于列數(shù),矩陣有可能滿秩。隨著(n-k)的增加,Raptor碼的譯碼失敗概率會(huì)降低。當(dāng)(n-k)=30時(shí),譯碼失敗概率為10-9量級。因此,要保證譯碼成功率,必須確保一定的接收符號冗余量。

        由此不難發(fā)現(xiàn),k越大,冗余量在接收符號中所占的比例(n-k)/n就越小,Raptor碼的傳輸效率就越高。單從這個(gè)角度看,Raptor碼的k取值越大越好。但隨著k的增加,編/譯碼矩陣也就變得越來越大,進(jìn)而導(dǎo)致預(yù)編/譯碼的方程求解過程變的更加復(fù)雜。導(dǎo)致運(yùn)算時(shí)間增加,編譯碼時(shí)間延遲增大,數(shù)據(jù)吞吐量降低。與之相比LT編碼過程的計(jì)算量幾乎可以忽略不計(jì)。因此,優(yōu)化Raptor編譯碼過程的重點(diǎn)是優(yōu)化預(yù)編/譯碼過程,而優(yōu)化預(yù)/編譯碼過程的本質(zhì)則是優(yōu)化模2線性方程組的求解過程,使用盡量少的步驟求解出Raptor編/譯碼方程。

        2 3GPP描述的矩陣求解算法

        求解線性方程組的基本方法是高斯消元法。但是直接使用高斯消元法求解方程組的復(fù)雜度非常高,約為k的3次方量級。且整個(gè)過程為串行處理過程,難以使用并行處理的方法提高效率。

        為了解決編譯碼性能和計(jì)算復(fù)雜度的矛盾,3GPP提出了一種較為高效的求解方法。它利用Raptor編/譯碼矩陣為稀疏矩陣,先將其降階,然后再進(jìn)行高斯消去,進(jìn)而達(dá)到降低運(yùn)算復(fù)雜度的目的。該處理過程如下[9]:令方程系數(shù)矩陣為A。定義行重為矩陣A某一行包含的1的個(gè)數(shù)。r為矩陣A中的非零最小行重值。如圖2(a)所示,令矩陣V=A。令矩陣U為空矩陣。按照如下步驟運(yùn)算,逐漸將矩陣V轉(zhuǎn)換成圖2(b)所示的分塊矩陣狀況。

        圖2 3GPP算法求解示意

        步驟1:在矩陣V中查找r最小的行。如果r≠2,則任選一行;如果r=2,任選包含在矩陣V誘導(dǎo)的二分圖G中的最大尺度環(huán)的1行。

        步驟2:將前一部中所選的行與V中的第1行進(jìn)行交換,且V中的列進(jìn)行重排,重排后的非零元素除了第1個(gè)放置在首列以外,其他非零元素全部放置在V的后部。

        步驟3:V中的首列非零的行與首行執(zhí)行行加減操作,以使得V中除了第1行外的首列全部變成0。

        步驟4:V的各行尾部元素移入矩陣U。跳回到步驟1。

        此算法反復(fù)執(zhí)行后,使矩陣V逐漸變小直至消失,變?yōu)閳D2(c)所示狀況。將矩陣U的元素可劃分為矩陣UU和矩陣Ul,如圖2(d)所示,。Ul即為降階產(chǎn)生的稠密矩陣。使用高斯消去求解出Ul,然后用該結(jié)果求解出UU。最終求解中所有的結(jié)果。

        本算法在X86平臺(tái)運(yùn)行的效果尚可,但移植到嵌入式平臺(tái)后,因嵌入式CPU的處理能力有限,導(dǎo)致其數(shù)據(jù)吞吐量大幅降低,編譯碼時(shí)間顯著增加。要開發(fā)出具有實(shí)用價(jià)值的Raptor編/譯碼,必須對該算法進(jìn)行優(yōu)化改進(jìn)。

        3 基于分組法降階的矩陣求解算法

        線性方程組總是存在一個(gè)最優(yōu)求解步驟,依照該步驟對各行進(jìn)行消元操作,可以用最少的步驟求解出方程。在每一步運(yùn)算中,需執(zhí)行2個(gè)操作:決策和消元。3GPP算法在嵌入式平臺(tái)上之所以效率明顯降低,是因?yàn)槠錄Q策過程過于復(fù)雜。例如矩陣V誘導(dǎo)的二分圖G中的最大尺度環(huán)的求取過程,涉及了大量查找和排序操作。要降低決策時(shí)間,必須設(shè)法在不進(jìn)行查找及排序的情況下完成決策過程。

        分組求解法正是基于此思路設(shè)計(jì),以分組代替排序和查找。先求解出一些易于求解的變量,當(dāng)求解決策代價(jià)增加到一定程度后,就放棄決策,改用高斯消元處理剩余方程。其基本步驟如下:

        步驟1 如圖3(a)所示,以r為依據(jù)對矩陣各行分組r=1組中的行每行只包含一個(gè)非零系數(shù)。r=2組中的行包含2個(gè)非零系數(shù)。其余各行分為2組,即設(shè)定一個(gè)界限值Min,r小于等于該界限值的行組成r≤Min組。r大于該界限值的行組成r>Min組。設(shè)置2個(gè)空組為最終組和接近最終組。

        步驟2 如圖3(b)所示,指定r=1組中的一行為操作行。用該行對其他各行進(jìn)行行加減操作。如被處理行的r變化,則將其歸入對應(yīng)組。操作行歸入最終組。直到r=1組中無元素。

        步驟3 如圖3(c)所示,指定r=2組中的一行為操作行。用該行對其他各行進(jìn)行行加減操作。如被處理行的r變化,則將其歸入對應(yīng)組。操作行歸入接近最終組。如出現(xiàn)r=1的行,則執(zhí)行步驟2。直到r=2組中無元素。

        步驟4 如圖3(d)所示,指定r≤Min組中的一行為操作行。用該行對其他各行進(jìn)行行加減操作。如被處理行的r變化,則將其歸入對應(yīng)組。操作行歸入接近最終組。如出現(xiàn)r=1的行,則執(zhí)行步驟2。如出現(xiàn)r=2的行,則執(zhí)行步驟3。直到r≤Min組中無元素。

        步驟5 如圖3(e)所示,用高斯消元法求解r>Min組中的方程。

        步驟6 如圖3(f)所示,用步驟5的結(jié)果求解接近最終組,進(jìn)而求解出全部結(jié)果。

        圖3 分組法求解示意

        4 2種求解算法的比較

        因節(jié)省了查找和排序時(shí)間,分組法的矩陣降階速度比3GPP算法快。但是分組法的產(chǎn)生的稠密矩陣比3GPP大。通過控制k和調(diào)整Min的取值,分組求解算法可保證其在嵌入式平臺(tái)上的處理時(shí)間滿足吞吐量指標(biāo)和時(shí)間延遲的要求。

        分組求解算法的決策代價(jià)較低,可用行加減次數(shù)來衡量算法的運(yùn)算復(fù)雜度。以k=200為例,使用高斯消元法,需要執(zhí)行約16 000次行加減操作,而使用分組法只需要執(zhí)行5 125次行加減操作。分組法求解法較高斯消元法的計(jì)算效率明顯提高。

        與3GPP算法相比,由于分組求解法的決策過程簡單,使得其在實(shí)際運(yùn)算中的整體耗時(shí)有所降低。在計(jì)算機(jī)模擬測試中,k值取512及以下參數(shù)中,分組法的數(shù)據(jù)處理能力普遍高于3GPP算法,而在嵌入式平臺(tái)上,分組求解法的優(yōu)勢更加明顯。

        分組求解法在S3C6410上運(yùn)行的結(jié)果打印如圖4所示。S3C6410是三星公司生產(chǎn)的一款基于ARM11體系結(jié)構(gòu)的精簡指令集處理器[10],其運(yùn)算能力并不突出。采用分組法算法,k取320,編碼符號長度為31 bytes,編碼420個(gè)符號的情況下,S3C6410芯片可在60 ms左右時(shí)間完成Raptor碼編碼操作。該速度較基于3GPP算法的程序約提高了2倍左右。

        圖4 S3C6410計(jì)算k=320矩陣的結(jié)果

        5 結(jié)束語

        本文介紹的適用于嵌入式平臺(tái)的Raptor碼算法,有效降低了Raptor編譯碼算法中矩陣降階的運(yùn)算復(fù)雜度,進(jìn)而降低了總運(yùn)算時(shí)間,使得在嵌入式CPU上,能夠?qū)崿F(xiàn)較高速度,較低時(shí)延的Raptor編/譯碼運(yùn)算邏輯。這使得Raptor碼編譯碼器的硬件體積顯著降低,能夠方便地集成在設(shè)備中。該算法為Raptor編/譯碼技術(shù)的應(yīng)用與推廣提供了一種可行的解決方案。

        [1]SHOKROLLAHI A.Raptor Codes[R].Digital Fountain,Technical Report,2003:1-37.

        [2]LUBY M,MITZENMACHER M,SHOKROLLAHI A.Prac-tical Loss-resilient Codes[C]∥Proceedings of the 43rd Annual IEEE Symposium on the Foundations of Computer Science,1997:150-159.

        [3]LUBY M.LT-codes[C]∥Proceedings of the 43rd Annual IEEESymposiumontheFoundationsofComputer Science,2002:271-280.

        [4]LUBY M,MITZENMACHER M,SHOKROLLAHI A,et al.Efficient Erasure Correcting Codes[J].IEEE Transa-ction on Information Theory,2001,47(2):569-584.

        [5]3GPP TS 26.346 V7.0.0.Technical Specification Group Services and System Aspects:Multimedia Broadcast/Mul-ticast Service:Protocols and Codes[S],2007.

        [6]吳 瓊,梅進(jìn)杰.改進(jìn)Min sum的LDPC譯碼算法研究[J].無線電通信技術(shù),2012,38(2):27-29.

        [7]陳遠(yuǎn)友.一種用于短猝發(fā)通信的LDPC短碼設(shè)計(jì)[J].無線電通信技術(shù),2014,40(1):32-33.

        [8]趙建功,劉香玲.準(zhǔn)循環(huán)LDPC碼的部分并行譯碼算法[J].無線電工程,2012,42(2):55-57.

        [9]3GPP TS 26.346 version 6.3.0.FEC encoder specification[S],2005.

        [10]孫連文,朱正禮,馬艷婷.基于S3C6410處理器的嵌入式Linux系統(tǒng)的構(gòu)建[J].計(jì)算機(jī)與現(xiàn)代化,2013(11):155-157.

        A Raptor Code Algorithm for Embedded Platform

        LIANG Bin
        (The 54th Research Institute of CETC,Shijiazhuang Hebei 050081,China)

        To solve the problem that the calculations of Raptor encoder/decoder is too complex to apply in satellite communication project,a novel sparse matrix rank reduction method is proposed.The method used to solve Raptor encoding/decoding equation can sim-plify the process of solution.Compared with the algorithm recommended by 3GPP,the method can effectively reduce the running time of Raptor encoder/decoder based on embedded platform,and can meet the requirements of time delay and equipment miniaturization in practical engineering.

        fountain codes;Raptor code;FEC;embedded

        TP391.4

        A

        1003-3106(2015)10-0077-04

        10.3969/j.issn.1003-3106.2015.10.21

        梁 斌.一種適用于嵌入式平臺(tái)的Raptor碼算法[J].無線電工程,2015,45(10):77-80.

        梁 斌男,(1982—),碩士,工程師。主要研究方向:衛(wèi)星通信與廣播電視。

        2015-07-28

        猜你喜歡
        譯碼嵌入式分組
        基于校正搜索寬度的極化碼譯碼算法研究
        分組搭配
        怎么分組
        搭建基于Qt的嵌入式開發(fā)平臺(tái)
        分組
        嵌入式軟PLC在電鍍生產(chǎn)流程控制系統(tǒng)中的應(yīng)用
        從霍爾的編碼譯碼理論看彈幕的譯碼
        新聞傳播(2016年3期)2016-07-12 12:55:27
        LDPC 碼改進(jìn)高速譯碼算法
        遙測遙控(2015年2期)2015-04-23 08:15:19
        Altera加入嵌入式視覺聯(lián)盟
        倍福 CX8091嵌入式控制器
        果冻传媒2021精品一区| 人妻一区二区三区av| 亚洲国产av综合一区| 日韩不卡一区二区三区色图| 中国老熟女露脸老女人| 91久久精品色伊人6882| 无码国产成人午夜电影在线观看| 亚洲成av人片天堂网无码| 好紧好爽免费午夜视频| 免费无码一区二区三区蜜桃| 中文字字幕在线精品乱码| 少妇脱了内裤让我添| 99这里只有精品| 亚洲三级香港三级久久| 女厕厕露p撒尿八个少妇| 嫩草影院未满十八岁禁止入内| 狠狠躁夜夜躁AV网站中文字幕| 日日爽日日操| 小草手机视频在线观看| 中文字幕亚洲一区视频| 日本亚洲中文字幕一区| 国产日本精品一二三四区| 天天做天天爱夜夜爽| 男女车车的车车网站w98免费| 久久久久中文字幕精品无码免费| 在线亚洲精品国产成人二区| 亚洲人妻av综合久久| 日韩国产精品一区二区三区 | 日韩女同在线免费观看| 二区三区三区视频在线观看| 手机福利视频| 国产在线精品成人一区二区三区| 夜夜爽一区二区三区精品| 国产精品久久久久影视不卡| 久久久亚洲欧洲日产国码是AV| 久久精品国产精品亚洲婷婷| 在线不卡av一区二区| 午夜精品久久久久久久久| 国产麻豆md传媒视频| 亚洲激情人体艺术视频| 一区二区久久精品66国产精品|