亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種卷積碼的數(shù)據(jù)發(fā)送方法及裝置與流程

文檔序號(hào):12133395閱讀:767來源:國知局
一種卷積碼的數(shù)據(jù)發(fā)送方法及裝置與流程

本發(fā)明涉及數(shù)字通信領(lǐng)域,尤其涉及一種卷積碼的數(shù)據(jù)發(fā)送方法及裝置。



背景技術(shù):

圖1為現(xiàn)有數(shù)字通信系統(tǒng)的示意圖。如圖1所示,在數(shù)字通信系統(tǒng)中,發(fā)射端通常包括信源、信源編碼器、信道編碼器和調(diào)制器等部分,接收端通常包括解調(diào)器、信道譯碼器、信源譯碼器和信宿。信道編碼器用于給信息比特按照一定的規(guī)則引入冗余信息,以便接收端信道譯碼器能夠在一定程度上糾正信息在信道上傳輸時(shí)發(fā)生的誤碼。

目前,在諸多信道編碼技術(shù)中,卷積碼是廣泛被應(yīng)用的前向糾錯(cuò)編碼之一。在中短碼長時(shí)卷積碼的糾錯(cuò)性能優(yōu)越,而且編譯碼器的結(jié)構(gòu)簡單,因此卷積碼通常被用于某些中低帶寬的無線通信系統(tǒng)(例如,全球移動(dòng)通信系統(tǒng)(GSM,Global System for Mobile Communication)、全球微波互聯(lián)接入(Wimax,Worldwide Interoperability for Microwave Access)系統(tǒng))的數(shù)據(jù)信息或者寬帶無線通信系統(tǒng)(例如,長期演進(jìn)(LTE,Long Term Evolution)系統(tǒng))的控制信息的編碼。此外,由于卷積碼的硬件成本較低,固定無線寬帶系統(tǒng)(例如,無線保真(WIFI,Wireless-Fidelity)系統(tǒng))中也使用卷積碼作為數(shù)據(jù)信息的編碼方式。

卷積碼通常用碼率、約束長度和生成多項(xiàng)式來描述。在卷積碼編碼器中,每個(gè)輸入比特都經(jīng)過了移位寄存器,從而由編碼器產(chǎn)生的輸出比特的數(shù)目對應(yīng)于輸入比特的數(shù)目以及編碼器的碼率。卷積碼編碼的一種方法是通過用零來初始化每個(gè)移位寄存器(例如強(qiáng)制復(fù)位到零狀態(tài))以使用“尾比特(tail bit)”刷新編碼器,以及在輸入數(shù)據(jù)比特的末端處添加尾比特作為尾部,但這樣會(huì)這引起幀長度的增加,從而降低實(shí)際的傳輸碼率。為了不降低碼率,可以采 用咬尾卷積碼,咬尾卷積碼的移位寄存器使用輸入數(shù)據(jù)的最后幾個(gè)比特進(jìn)行初始化,這樣編碼器仍然保證了移位寄存器的開始和結(jié)束狀態(tài)是相同的。LTE等系統(tǒng)中采用的卷積碼就是咬尾卷積碼。

圖2為LTE系統(tǒng)中采用的卷積碼編碼器的結(jié)構(gòu)示意圖。如圖2所示,編碼器的移位寄存器的初始值設(shè)置為輸入數(shù)據(jù)最后的6個(gè)信息比特對應(yīng)的值,使得移位寄存器的初始和最終狀態(tài)相同。圖2所示為碼率為1/3的咬尾卷積碼編碼器,有一個(gè)輸入ck,三個(gè)輸出端口對應(yīng)的生成多項(xiàng)式如下:G0=133(八進(jìn)制(octal))、G1=171(octal)、G2=165(octal)。

在通常的數(shù)字通信系統(tǒng)中,在設(shè)計(jì)編碼調(diào)制方案時(shí),通常設(shè)置不同階數(shù)的調(diào)制方式(如正交相移鍵控(QPSK,Quadrature Phase Shift Keyin)、16正交幅度調(diào)制(QAM,Quadrature Amplitude Modulation)和64QAM等)和不同的碼率(Rate)(如1/2、2/3、3/4和5/6等)。系統(tǒng)調(diào)度時(shí)按照信道質(zhì)量和業(yè)務(wù)需求對每個(gè)突發(fā)安排一種特定的編碼調(diào)制方式。為了取得更好的鏈路適配效果,每種碼在變換碼率的時(shí)候最好能做到比較小的粒度。

對于數(shù)據(jù)信息的編碼來說,通過對低碼率的母碼進(jìn)行刪余(puncture)來得到更高碼率的編碼,該方法被歸納為速率匹配(RM,Rate Matching)。對于LTE等現(xiàn)代通信系統(tǒng)來說,系統(tǒng)還需要通過速率匹配支持混合自動(dòng)重傳請求(HARQ,Hybrid Automatic Repeat reQuest)過程,然而,LTE的HARQ只針對采用了Turbo碼編碼的數(shù)據(jù)信息,而采用卷積碼編碼的控制信息則不支持HARQ功能。

混合自動(dòng)重傳請求(HARQ)是一種數(shù)字通信系統(tǒng)中極其重要的鏈路自適應(yīng)技術(shù)。接收端對其接收的HARQ數(shù)據(jù)包進(jìn)行譯碼,若譯碼正確則反饋確認(rèn)(ACK,Acknowledgement)信號(hào)給發(fā)送端,通知其發(fā)送新的HARQ數(shù)據(jù)包;若譯碼失敗則反饋未確認(rèn)(NAK,Negative Acknowledgment)信號(hào)給發(fā)送端,請求發(fā)送端重新發(fā)送HARQ數(shù)據(jù)包。接收端通過對多次重傳的數(shù)據(jù)包進(jìn)行遞增冗余(IR,Increasing Redundancy)或Chase合并譯碼,可以提高其譯碼成功概率,實(shí)現(xiàn)鏈路傳輸?shù)母呖煽啃砸蟆?/p>

隨著物聯(lián)網(wǎng)等新型應(yīng)用的蓬勃發(fā)展,在200K左右的窄帶帶寬上,開發(fā)基于LTE標(biāo)準(zhǔn)的小數(shù)據(jù)量的無線通信技術(shù)逐漸成為了熱點(diǎn)需求之一。如果 將卷積碼移植到窄帶LTE系統(tǒng)的數(shù)據(jù)信道中,用于替代昂貴的Turbo編碼,可以起到降低物聯(lián)網(wǎng)設(shè)備的成本和節(jié)省能耗的作用。然而,目前的LTE標(biāo)準(zhǔn)并不支持卷積碼的HARQ。其他的一些通信系統(tǒng),例如Wimax系統(tǒng),雖然支持卷積碼的HARQ,但是,其速率匹配都是采用幾種固定刪余圖樣的打孔方式,只能產(chǎn)生1/2,2/3,3/4,5/6等固定碼率的HARQ子包,速率匹配的方式不夠靈活。

此外,為了增強(qiáng)窄帶物聯(lián)網(wǎng)系統(tǒng)的覆蓋,還可以考慮通過對信息數(shù)據(jù)編碼后再進(jìn)行多次重復(fù)傳輸,這樣可以增強(qiáng)接收信號(hào)。與HARQ的不同之處是,多次重復(fù)傳輸不需要接收端反饋ACK或NAK信號(hào);相同之處是接收端同樣也要進(jìn)行合并譯碼。如何合理選擇每次傳輸?shù)臄?shù)據(jù)包,使得接收端合并后具有更靈活的碼率及更好的性能,這是和HARQ場景一樣需要解決的問題。



技術(shù)實(shí)現(xiàn)要素:

為了解決上述技術(shù)問題,本發(fā)明提供一種卷積碼的數(shù)據(jù)發(fā)送方法及裝置,能夠產(chǎn)生碼率靈活的卷積碼待傳輸數(shù)據(jù)包。

為了達(dá)到上述技術(shù)目的,本發(fā)明提供一種卷積碼的數(shù)據(jù)發(fā)送方法,包括:對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼,并將編碼后的數(shù)據(jù)比特組成循環(huán)緩存區(qū);確定在所述循環(huán)緩存區(qū)中讀取組成待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置;從所述起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成待傳輸數(shù)據(jù)包,并發(fā)送所述待傳輸數(shù)據(jù)包。

本發(fā)明還提供一種卷積碼的數(shù)據(jù)發(fā)送裝置,包括:編碼緩存模塊,用于對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼,并將編碼后的數(shù)據(jù)比特組成循環(huán)緩存區(qū);起始位置確定模塊,用于確定在所述循環(huán)緩存區(qū)中讀取組成待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置;數(shù)據(jù)讀取發(fā)送模塊,用于從所述起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成待傳輸數(shù)據(jù)包,并發(fā)送所述待傳輸數(shù)據(jù)包。

在本發(fā)明中,對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼,并將編碼后的數(shù)據(jù)比特組成循環(huán)緩存區(qū);確定在循環(huán)緩存區(qū)中讀取組成待傳輸數(shù)據(jù)包的數(shù) 據(jù)比特的起始位置;從起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成待傳輸數(shù)據(jù)包,并發(fā)送待傳輸數(shù)據(jù)包。如此,本發(fā)明能夠產(chǎn)生碼率靈活的卷積碼待傳輸數(shù)據(jù)包,解決了現(xiàn)有技術(shù)中如何合理選擇每次傳輸?shù)臄?shù)據(jù)包以使得接收端合并后具有更靈活的碼率及更好的性能的問題。

在本發(fā)明實(shí)施例中,對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼,輸出r個(gè)校驗(yàn)比特流,并將r個(gè)校驗(yàn)比特流分別輸入到大小相等的子塊交織器,根據(jù)給定的重排向量,分別對輸入到各個(gè)子塊交織器的比特流進(jìn)行列間重排,并將重排后的數(shù)據(jù)比特組成循環(huán)緩存區(qū);確定在循環(huán)緩存區(qū)中讀取待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置;從起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成待傳輸數(shù)據(jù)包,并發(fā)送待傳輸數(shù)據(jù)包。如此,本發(fā)明實(shí)施例基于循環(huán)緩存的速率匹配,產(chǎn)生碼率靈活的卷積碼待傳輸包,使得卷積碼的數(shù)據(jù)重傳達(dá)到最優(yōu)的重傳效果,特別適用于兼容LTE技術(shù)的窄帶通信場景。

附圖說明

圖1為現(xiàn)有數(shù)字通信系統(tǒng)的示意圖;

圖2為LTE系統(tǒng)中采用的卷積碼編碼器的結(jié)構(gòu)示意圖;

圖3為本發(fā)明實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送方法的流程圖;

圖4為本發(fā)明實(shí)施例一中確定的待傳輸數(shù)據(jù)包起始位置的示意圖;

圖5為本發(fā)明實(shí)施例二中確定的待傳輸數(shù)據(jù)包起始位置的示意圖;

圖6為本發(fā)明實(shí)施例三中確定的待傳輸數(shù)據(jù)包起始位置的示意圖;

圖7為本發(fā)明實(shí)施例四中確定的待傳輸數(shù)據(jù)包起始位置的示意圖;

圖8為本發(fā)明一實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送裝置的示意圖。

具體實(shí)施方式

以下結(jié)合附圖對本發(fā)明的實(shí)施例進(jìn)行詳細(xì)說明,應(yīng)當(dāng)理解,以下所說明的實(shí)施例僅用于說明和解釋本發(fā)明,并不用于限定本發(fā)明。

圖3為本發(fā)明實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送方法的流程圖。如圖3所示,本發(fā)明實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送方法包括以下步驟:

步驟11:對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼,并將編碼后的數(shù)據(jù)比特組成循環(huán)緩存區(qū)。

于此,步驟11包括:

對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼,輸出r個(gè)校驗(yàn)比特流,其中,r為大于或等于2的整數(shù);

將卷積碼編碼輸出的r個(gè)校驗(yàn)比特流輸入到大小相等的子塊交織器;

根據(jù)給定的重排向量,分別對輸入到各個(gè)子塊交織器的校驗(yàn)比特流進(jìn)行列間重排。

進(jìn)一步地,步驟11還包括:對重排后的t個(gè)校驗(yàn)比特流進(jìn)行比特交錯(cuò),其中,t為正整數(shù),且2≤t≤r。其中,所述對重排后的t個(gè)校驗(yàn)比特流進(jìn)行比特交錯(cuò)包括:對重排后的t個(gè)校驗(yàn)比特流中的數(shù)據(jù)比特,按照先后順序交替排列。

步驟12:確定在循環(huán)緩存區(qū)中讀取組成當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置。

于此,步驟12包括:

根據(jù)欲組成的待傳輸數(shù)據(jù)包對應(yīng)的冗余版本取值,確定在循環(huán)緩存區(qū)中讀取組成待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置;或者,

根據(jù)已發(fā)送的數(shù)據(jù)包,確定在循環(huán)緩存區(qū)中讀取組成當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置;或者,

根據(jù)待傳輸數(shù)據(jù)包對應(yīng)的傳輸次序,確定在循環(huán)緩存區(qū)中讀取當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置。

于一實(shí)施例中,根據(jù)欲組成的待傳輸數(shù)據(jù)包對應(yīng)的冗余版本取值,確定在循環(huán)緩存區(qū)中讀取組成待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置包括:

設(shè)待傳輸數(shù)據(jù)包對應(yīng)的冗余版本的取值有Nrv種,則所述起始位置

其中,Rsubblock為子塊交織器的行數(shù),Ncb為所述循環(huán)緩存區(qū)的大小,Nrv表示冗余版本取值的數(shù)目,Nrv為正整數(shù),rvidx表示冗余版本取值,rvidx在集合{0,1,...Nrv-1}中取值,Operation(·)表示取整運(yùn)算,運(yùn)算方法是向上取整、向下取整或舍入取整,A為一個(gè)取值為正整數(shù)的常數(shù)。

其中,第一次傳輸數(shù)據(jù)包對應(yīng)的冗余版本取值為rvidx=0。

進(jìn)一步地,第n次傳輸數(shù)據(jù)包對應(yīng)的冗余版本取值為rvidx=mod(n-1,Nrv),其中,n為正整數(shù),mod(·)表示求余運(yùn)算。

于一實(shí)施例中,根據(jù)已發(fā)送的數(shù)據(jù)包,確定在循環(huán)緩存區(qū)中讀取組成當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置包括:

設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,前面n-1次已發(fā)送的數(shù)據(jù)包的長度為Ei,則當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置k0=Rsubblock·mod(Cn-1,(r·Csubblock)),

其中,Rsubblock為子塊交織器的行數(shù),Csubblock為子塊交織器的列數(shù),r為卷積碼編碼輸出比特流的數(shù)目,mod(·)表示求余運(yùn)算,Cn-1表示前面n-1次已發(fā)送的數(shù)據(jù)包對應(yīng)著的循環(huán)緩存區(qū)的列數(shù),或者, 其中,n、i為正整數(shù),1≤i≤n-1,表示向上取整運(yùn)算。

于此,在循環(huán)緩存區(qū)中讀取組成第一次傳輸?shù)臄?shù)據(jù)包的數(shù)據(jù)比特的起始位置為所述循環(huán)緩存區(qū)的第一個(gè)有效比特。

于一實(shí)施例中,根據(jù)當(dāng)前待傳輸數(shù)據(jù)包對應(yīng)的傳輸次序,確定在循環(huán)緩存區(qū)中讀取當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置包括:

設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,若n為奇數(shù)(即,mod(n,2)=1),則當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)的第一個(gè)有效比特;若n為偶數(shù)(即,mod(n,2)=0),則當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)的中心列的第一個(gè)有效比特,其中,n為正整數(shù),mod(·)表示求余運(yùn)算。

于一實(shí)施例中,根據(jù)當(dāng)前待傳輸數(shù)據(jù)包對應(yīng)的傳輸次序,確定在循環(huán)緩 存區(qū)中讀取當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置包括:

設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,循環(huán)緩存區(qū)的列索引為[0,1,2,…,r·Csubblock-1],其中,r·Csubblock表示循環(huán)緩存區(qū)的列數(shù),則當(dāng)n為奇數(shù)時(shí),當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)第一列的第一個(gè)有效比特;當(dāng)n為偶數(shù)時(shí),當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩沖區(qū)第 列的第一個(gè)有效比特;其中,B是一個(gè)取值為正整數(shù)的常數(shù),Csubblock為子塊交織器的列數(shù),r為卷積碼編碼輸出比特流的數(shù)目,operation(·)表示取整運(yùn)算,運(yùn)算方法是向上取整、向下取整或舍入取整。

步驟13:從起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成當(dāng)前待傳輸數(shù)據(jù)包,并發(fā)送所述待傳輸數(shù)據(jù)包。

以下通過多個(gè)具體實(shí)施例對本發(fā)明進(jìn)行說明。

實(shí)施例一

本實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送方法包括以下步驟:

步驟A1:對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼;

其中,步驟A1中的編碼是具有r個(gè)編碼分支的卷積碼或者咬尾卷積碼,并且每個(gè)編碼分支對應(yīng)一個(gè)校驗(yàn)比特流,因此,共有r個(gè)輸出的校驗(yàn)比特流;

步驟A2:將編碼后的數(shù)據(jù)比特組成循環(huán)緩存區(qū);

具體而言,步驟A2包括以下子步驟:對卷積碼編碼后的數(shù)據(jù)比特進(jìn)行比特分離,輸出第一校驗(yàn)比特流第二校驗(yàn)比特流…、第r個(gè)校驗(yàn)比特流其中,r為大于或等于2的整數(shù);將分離輸出的第一校驗(yàn)比特流第二校驗(yàn)比特流…、第r個(gè)校驗(yàn)比特流分別輸入到大小為KΠ=(Rsubblock×Csubblock)的三個(gè)子塊交織器中;對輸入到子塊交織器中的數(shù)據(jù)比特流分別進(jìn)行列間重排,重排向量是給定的已知向量,沿著列的次序逐列自上而下地分別從各子塊交織器中讀出;對其中t個(gè)比特流進(jìn)行比特交錯(cuò),t為正整數(shù),且2≤t≤r,其中,交錯(cuò)方法為對t個(gè)比特流中的比特,按照先后順序交替排列;特別地,當(dāng)卷積碼編碼輸出的校驗(yàn)比特流的數(shù)目r=3,且對其中第二校驗(yàn)比特流和第三校驗(yàn)比特流交錯(cuò)時(shí),交錯(cuò)方法如下:其中,分別為重排后的第一、第二 和第三校驗(yàn)比特流中的數(shù)據(jù)比特,為重排后的第二校驗(yàn)比特流進(jìn)行比特交錯(cuò)后的數(shù)據(jù)比特,為重排后的第三校驗(yàn)比特流進(jìn)行比特交錯(cuò)后的數(shù)據(jù)比特,其中,k=0,…,KΠ-1;需要指出的是,比特交錯(cuò)的方法可以不局限于此;

其中,子塊交織器遵循行入列出的原則,其列數(shù)Csubblock為一特定常數(shù),其行數(shù)Rsubblock通過D≤(Rsubblock×Csubblock)確定,其中,D為校驗(yàn)比特流的長度;如果(Rsubblock×Csubblock)>D,則需要對各數(shù)據(jù)比特流添加ND個(gè)“虛比特”,其中,ND=(Rsubblock×Csubblock-D),添加虛比特的位置可以在各數(shù)據(jù)比特流的最前面,但也不局限于此;

需要注意的是:為了簡化硬件實(shí)現(xiàn),將子塊交織器的列數(shù)固定,行數(shù)隨著交織長度的改變而改變,因此,循環(huán)緩沖器可以看作一個(gè)“R行×C列”的行列緩沖器,其中,循環(huán)緩沖器的列數(shù)C等于各個(gè)子塊交織器的列數(shù)之和,即C=r·Csubblock,其中,Csubblock表示子塊交織器的列數(shù),r為編碼輸出的檢驗(yàn)比特流數(shù)目;另外,循環(huán)緩沖器可以并不具有真實(shí)的物理實(shí)體,而是通過邏輯尋址操作實(shí)現(xiàn),因此也可以看作是一個(gè)“R行×C列”的虛擬緩沖器;對于任何期望的碼率(Rate),循環(huán)緩沖速率匹配的比特選擇是從緩沖器的某處開始點(diǎn)順序讀出所需長度的比特流,作為速率匹配的輸出;

步驟A3:根據(jù)欲組成的待傳輸數(shù)據(jù)包對應(yīng)的冗余版本取值,確定在循環(huán)緩存區(qū)中讀取當(dāng)次待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置k0;

考慮到硬件實(shí)現(xiàn)的便利,被選擇用于傳輸?shù)谋忍刈詈脧奶摂M緩沖器的某一列開始位置被讀出來,而不是任意一個(gè)比特位置;

具體而言,設(shè)數(shù)據(jù)包對應(yīng)的冗余版本的取值有Nrv種,其中,Nrv為正整數(shù);則起始位置其中Rsubblock為子塊交織器的行數(shù),Ncb為所述卷積碼循環(huán)緩存區(qū)的大小,Nrv表示冗余版本取值的數(shù)目,rvidx表示冗余版本取值,rvidx在集合{0,1,...Nrv-1}中取值,Operation(·)表示取整運(yùn)算,運(yùn)算方法是向上取整、向下取整或舍入取整,A為一個(gè)取值為正整數(shù)的常數(shù);

其中,當(dāng)Nrv=3時(shí),待傳輸數(shù)據(jù)包在循環(huán)緩存區(qū)中的位置如圖4所示;

步驟A4:從起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成當(dāng)前待傳輸數(shù)據(jù)包;

具體而言,從當(dāng)前的冗余版本取值對應(yīng)的起始位置開始從有限長度數(shù)據(jù)緩存中沿著列的順序逐列讀取L個(gè)數(shù)據(jù)比特(L為當(dāng)前待傳輸數(shù)據(jù)包的大小)組成當(dāng)前的待傳輸數(shù)據(jù)包,在讀取比特的過程中如果遇到“虛比特”,則跳過不讀,直到讀出L個(gè)有效比特為止;根據(jù)循環(huán)緩存的特點(diǎn),如果達(dá)到循環(huán)緩存的末尾,則可以繞到循環(huán)緩存的開始位置繼續(xù)讀取數(shù)據(jù);其中,第一次傳輸?shù)臄?shù)據(jù)包從循環(huán)緩存區(qū)的第一個(gè)有效比特開始讀取,第一次傳輸數(shù)據(jù)包對應(yīng)的冗余版本取值為rvidx=0;第n次傳輸數(shù)據(jù)包對應(yīng)的冗余版本取值為rvidx=mod(n-1,Nrv),其中,n為正整數(shù),mod(·)表示求余運(yùn)算;

步驟A5:發(fā)送當(dāng)前待傳輸數(shù)據(jù)包到后續(xù)處理模塊。

實(shí)施例二

本實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送方法包括以下步驟:

步驟B1:對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼;

其中,步驟B1中的編碼是具有r個(gè)編碼分支的卷積碼或者咬尾卷積碼,并且每個(gè)編碼分支對應(yīng)一個(gè)校驗(yàn)比特流,因此,共有r個(gè)輸出的校驗(yàn)比特流;

步驟B2:將編碼后的數(shù)據(jù)比特組成循環(huán)緩存區(qū);

具體而言,步驟B2包括以下子步驟:對卷積碼編碼后的數(shù)據(jù)比特進(jìn)行比特分離,輸出第一校驗(yàn)比特流第二校驗(yàn)比特流…、第r個(gè)校驗(yàn)比特流其中,r為大于或等于2的整數(shù);將分離輸出的第一校驗(yàn)比特流第二校驗(yàn)比特流…、第r個(gè)校驗(yàn)比特流分別輸入到大小為KΠ=(Rsubblock×Csubblock)的三個(gè)子塊交織器中;對輸入到子塊交織器中的數(shù)據(jù)比特流分別進(jìn)行列間重排,重排向量是給定的已知向量,沿著列的次序逐列自上而下地分別從各子塊交織器中讀出;對其中t個(gè)比特流進(jìn)行比特交錯(cuò),t為正整數(shù),且2≤t≤r,其中,交錯(cuò)方法為對t個(gè)比特流中的比特,按照先后順序交替排列;特別地,當(dāng)卷積碼編碼輸出的校驗(yàn)比特流的數(shù)目r=3,且對其中第二校驗(yàn)比特流和第三校驗(yàn)比特流交錯(cuò)時(shí),交錯(cuò)方法如下:其中,分別為重排后的第一、第二 和第三校驗(yàn)比特流中的數(shù)據(jù)比特,為重排后的第二校驗(yàn)比特流進(jìn)行比特交錯(cuò)后的數(shù)據(jù)比特,為重排后的第三校驗(yàn)比特流進(jìn)行比特交錯(cuò)后的數(shù)據(jù)比特,其中,k=0,…,KΠ-1;需要指出的是,比特交錯(cuò)的方法可以不局限于此;

其中,子塊交織器遵循行入列出的原則,其列數(shù)Csubblock為一特定常數(shù),其行數(shù)Rsubblock通過D≤(Rsubblock×Csubblock)確定,其中,D為校驗(yàn)比特流的長度;如果(Rsubblock×Csubblock)>D,則需要對各數(shù)據(jù)比特流添加ND個(gè)“虛比特”,其中,ND=(Rsubblock×Csubblock-D),添加虛比特的位置可以在各數(shù)據(jù)比特流的最前面,但也不局限于此;

需要注意的是:為了簡化硬件實(shí)現(xiàn),將子塊交織器的列數(shù)固定,行數(shù)隨著交織長度的改變而改變,因此,循環(huán)緩沖器可以看作一個(gè)“R行×C列”的行列緩沖器,其中,循環(huán)緩沖器的列數(shù)C等于各個(gè)子塊交織器的列數(shù)之和,即C=r·Csubblock,其中,Csubblock表示子塊交織器的列數(shù),r為編碼輸出的檢驗(yàn)比特流數(shù)目;另外,循環(huán)緩沖器可以并不具有真實(shí)的物理實(shí)體,而是通過邏輯尋址操作實(shí)現(xiàn),因此也可以看作是一個(gè)“R行×C列”的虛擬緩沖器;對于任何期望的碼率(Rate),循環(huán)緩沖速率匹配的比特選擇是從緩沖器的某處開始點(diǎn)順序讀出所需長度的比特流,作為速率匹配的輸出;

步驟B3:根據(jù)已發(fā)送的數(shù)據(jù)包,確定在循環(huán)緩存區(qū)中讀取組成待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置k0;

在步驟B3中,待傳輸數(shù)據(jù)包所選擇的碼字比特,是緊接著前面的已發(fā)送數(shù)據(jù)包的;考慮到硬件實(shí)現(xiàn)的便利,被選擇用于傳輸?shù)谋忍刈詈脧奶摂M緩沖器的某一列開始位置被讀出來,而不是任意一個(gè)比特位置;

具體而言,由于循環(huán)緩沖器又可以看作一個(gè)“Rsubblock×(r·Csubblock)”的“虛擬循環(huán)緩沖器”,例如可以看作是一個(gè)3*32列的虛擬緩沖器;如果前面的數(shù)據(jù)包傳輸?shù)降趇列,即使這一列還沒有被傳輸完,那么當(dāng)前的待傳輸數(shù)據(jù)包就從第i+1列開始讀取碼字比特,如果到達(dá)緩沖器的末尾,就繞到緩沖器的開始位置繼續(xù)讀數(shù)據(jù),直到完成讀取所需比特為止,如圖5所示;

設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,前面n-1次已發(fā)送的數(shù)據(jù)包的長度為Ei,則當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置 k0=Rsubblock·mod(Cn-1,(r·Csubblock)),

其中,Rsubblock為子塊交織器的行數(shù),Csubblock為子塊交織器的列數(shù),r為卷積碼編碼輸出比特流的數(shù)目,mod(·)表示求余運(yùn)算,Cn-1表示前面n-1次已發(fā)送的數(shù)據(jù)包對應(yīng)著的循環(huán)緩存區(qū)的列數(shù),或者, 其中,n、i為正整數(shù),1≤i≤n-1,其中,表示向上取整運(yùn)算;

步驟B4:從起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成當(dāng)前待傳輸數(shù)據(jù)包;

具體而言,步驟B4包括:從當(dāng)前待傳輸數(shù)據(jù)包對應(yīng)的起始位置開始從有限長度數(shù)據(jù)緩存中沿著列的順序逐列讀取L個(gè)比特(L為當(dāng)前待傳輸數(shù)據(jù)包的大小)組成當(dāng)前的待傳輸數(shù)據(jù)包,在讀取比特的過程中如果遇到“虛比特”,則跳過不讀,直到讀出L個(gè)有效比特為止;根據(jù)循環(huán)緩存的特點(diǎn),如果達(dá)到循環(huán)緩存的末尾,則可以繞到循環(huán)緩存的開始位置繼續(xù)讀取數(shù)據(jù);其中,第一次傳輸?shù)臄?shù)據(jù)包從循環(huán)緩存區(qū)的第一個(gè)有效比特開始讀??;

步驟B5:發(fā)送當(dāng)前待傳輸數(shù)據(jù)包到后續(xù)處理模塊。

實(shí)施例三

本實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送方法包括以下步驟:

步驟C1:對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼;

其中,步驟C1中的編碼是具有r個(gè)編碼分支的卷積碼或者咬尾卷積碼,并且每個(gè)編碼分支對應(yīng)一個(gè)校驗(yàn)比特流,因此,共有r個(gè)輸出的校驗(yàn)比特流;

步驟C2:將編碼后的數(shù)據(jù)比特組成循環(huán)緩存區(qū);

具體而言,步驟C2包括以下子步驟:對卷積編碼后的數(shù)據(jù)比特進(jìn)行比特分離,輸出第一校驗(yàn)比特流第二校驗(yàn)比特流…、第r個(gè)校驗(yàn)比特流其中,r為大于或等于2的整數(shù);將分離輸出的第一校驗(yàn)比特流 第二校驗(yàn)比特流…、第r個(gè)校驗(yàn)比特流分別輸入到大小為KΠ=(Rsubblock×Csubblock)的三個(gè)子塊交織器中;對輸入到子塊交織器中的數(shù)據(jù)比特流分別進(jìn)行列間重排,重排向量是給定的已知向量,沿著列的次序逐列自 上而下地分別從各子塊交織器中讀出;對其中t個(gè)比特流進(jìn)行比特交錯(cuò),t為正整數(shù),且2≤t≤r,其中,交錯(cuò)方法為對t個(gè)比特流中的比特,按照先后順序交替排列;特別地,當(dāng)卷積碼編碼輸出的校驗(yàn)比特流的數(shù)目r=3,且對其中第二校驗(yàn)比特流和第三校驗(yàn)比特流交錯(cuò)時(shí),交錯(cuò)方法如下:其中,分別為重排后的第一、第二和第三校驗(yàn)比特流中的數(shù)據(jù)比特,為重排后的第二校驗(yàn)比特流進(jìn)行比特交錯(cuò)后的數(shù)據(jù)比特,為重排后的第三校驗(yàn)比特流進(jìn)行比特交錯(cuò)后的數(shù)據(jù)比特,其中,k=0,…,KΠ-1;需要指出的是,比特交錯(cuò)的方法可以不局限于此;

其中,子塊交織器遵循行入列出的原則,其列數(shù)Csubblock為一特定常數(shù),其行數(shù)Rsubblock通過D≤(Rsubblock×Csubblock)確定,其中,D為校驗(yàn)比特流的長度;如果(Rsubblock×Csubblock)>D,則需要對各數(shù)據(jù)比特流添加ND個(gè)“虛比特”,其中,ND=(Rsubblock×Csubblock-D),添加虛比特的位置可以在各數(shù)據(jù)比特流的最前面,但也不局限于此;

需要注意的是:為了簡化硬件實(shí)現(xiàn),將子塊交織器的列數(shù)固定,行數(shù)隨著交織長度的改變而改變,因此,循環(huán)緩沖器可以看作一個(gè)“R行×C列”的行列緩沖器,其中,循環(huán)緩沖器的列數(shù)C等于各個(gè)子塊交織器的列數(shù)之和,即C=r·Csubblock,其中,Csubblock表示子塊交織器的列數(shù),r為編碼輸出的檢驗(yàn)比特流數(shù)目;另外,循環(huán)緩沖器可以并不具有真實(shí)的物理實(shí)體,而是通過邏輯尋址操作實(shí)現(xiàn),因此也可以看作是一個(gè)“R行×C列”的虛擬緩沖器;對于任何期望的碼率(Rate),循環(huán)緩沖速率匹配的比特選擇是從緩沖器的某處開始點(diǎn)順序讀出所需長度的比特流,作為速率匹配的輸出;

步驟C3:根據(jù)已發(fā)送的數(shù)據(jù)包,確定在循環(huán)緩存區(qū)中讀取組成待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置k0

在步驟C3中,待傳輸數(shù)據(jù)包所選擇的碼字比特,是緊接著前面的已發(fā)送數(shù)據(jù)包的,與前一次已發(fā)送數(shù)據(jù)包有少量的重疊;考慮到硬件實(shí)現(xiàn)的便利,被選擇用于傳輸?shù)谋忍刈詈脧奶摂M緩沖器的某一列開始位置被讀出來,而不是任意一個(gè)比特位置;

具體而言,由于循環(huán)緩沖器又可以看作一個(gè)“Rsubblock×(r·Csubblock)”的“虛 擬循環(huán)緩沖器”,例如可以看作是一個(gè)3*32列的虛擬緩沖器;如果前面的數(shù)據(jù)包傳輸?shù)降趇列,即使這一列還沒有被傳輸完,那么當(dāng)前的待傳輸數(shù)據(jù)包就從第i+1列開始讀取碼字比特;如果到達(dá)緩沖器的末尾,就繞到緩沖器的開始位置繼續(xù)讀數(shù)據(jù),直到完成讀取所需比特為止,如圖6所示;

設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,前面n-1次已發(fā)送數(shù)據(jù)包的長度為Ei,則當(dāng)前第n次開始讀取的比特的起始位置k0=Rsubblock·mod(Cn-1,(r·Csubblock)),

其中,Rsubblock為子塊交織器的行數(shù),Csubblock為子塊交織器的列數(shù),r為卷積碼編碼輸出比特流的數(shù)目,mod(·)表示求余運(yùn)算,Cn-1表示前面n-1次已發(fā)送的數(shù)據(jù)包對應(yīng)著的循環(huán)緩存區(qū)的列數(shù),且其中,n、i為正整數(shù),1≤i≤n-1,表示向上取整運(yùn)算;

步驟C4:從起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成當(dāng)前待傳輸數(shù)據(jù)包;

具體而言,步驟C4包括:從當(dāng)前待傳輸數(shù)據(jù)包對應(yīng)的起始位置開始從有限長度數(shù)據(jù)緩存中沿著列的順序逐列讀取L個(gè)比特(L為當(dāng)前待傳輸數(shù)據(jù)包的大小)組成當(dāng)前的待傳輸數(shù)據(jù)包,在讀取比特的過程中如果遇到“虛比特”,則跳過不讀,直到讀出L個(gè)有效比特為止;根據(jù)循環(huán)緩存的特點(diǎn),如果達(dá)到循環(huán)緩存的末尾,則可以繞到循環(huán)緩存的開始位置繼續(xù)讀取數(shù)據(jù);其中,第一次傳輸?shù)臄?shù)據(jù)包從循環(huán)緩存區(qū)的第一個(gè)有效比特開始讀??;

步驟C5:發(fā)送當(dāng)前待傳輸數(shù)據(jù)包到后續(xù)處理模塊。

實(shí)施例四

本實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送方法包括以下步驟:

步驟D1:對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼;

其中,步驟D1中的編碼是具有r個(gè)編碼分支的卷積碼或者咬尾卷積碼,并且每個(gè)編碼分支對應(yīng)一個(gè)校驗(yàn)比特流,因此,共有r個(gè)輸出的校驗(yàn)比特流;

步驟D2:將編碼后的數(shù)據(jù)比特組成循環(huán)緩存區(qū);

具體而言,步驟D2包括以下子步驟:對卷積編碼后的數(shù)據(jù)比特進(jìn)行比 特分離,輸出第一校驗(yàn)比特流第二校驗(yàn)比特流…、第r個(gè)校驗(yàn)比特流其中,r為大于或等于2的整數(shù);將分離輸出的第一校驗(yàn)比特流 第二校驗(yàn)比特流…、第r個(gè)校驗(yàn)比特流分別輸入到大小為的三個(gè)子塊交織器中;對輸入到子塊交織器中的數(shù)據(jù)比特流分別進(jìn)行列間重排,重排向量是給定的已知向量,沿著列的次序逐列自上而下地分別從各子塊交織器中讀出;對其中t個(gè)比特流進(jìn)行比特交錯(cuò),t為正整數(shù),且2≤t≤r,其中,交錯(cuò)方法為對t個(gè)比特流中的比特,按照先后順序交替排列;特別地,當(dāng)卷積碼編碼輸出的校驗(yàn)比特流的數(shù)目r=3,且對其中第二校驗(yàn)比特流和第三校驗(yàn)比特流交錯(cuò)時(shí),交錯(cuò)方法如下:其中,分別為重排后的第一、第二和第三校驗(yàn)比特流中的數(shù)據(jù)比特,為重排后的第二校驗(yàn)比特流進(jìn)行比特交錯(cuò)后的數(shù)據(jù)比特,為重排后的第三校驗(yàn)比特流進(jìn)行比特交錯(cuò)后的數(shù)據(jù)比特,其中,k=0,…,KΠ-1;需要指出的是,比特交錯(cuò)的方法可以不局限于此;

其中,子塊交織器遵循行入列出的原則,其列數(shù)Csubblock為一特定常數(shù),其行數(shù)Rsubblock通過D≤(Rsubblock×Csubblock)確定,其中,D為校驗(yàn)比特流的長度;如果(Rsubblock×Csubblock)>D,則需要對各數(shù)據(jù)比特流添加ND個(gè)“虛比特”,其中,ND=(Rsubblock×Csubblock-D),添加虛比特的位置可以在各數(shù)據(jù)比特流的最前面,但也不局限于此;

需要注意的是:為了簡化硬件實(shí)現(xiàn),將子塊交織器的列數(shù)固定,行數(shù)隨著交織長度的改變而改變,因此,循環(huán)緩沖器可以看作一個(gè)“R行×C列”的行列緩沖器,其中,循環(huán)緩沖器的列數(shù)C等于各個(gè)子塊交織器的列數(shù)之和,即C=r·Csubblock,其中,Csubblock表示子塊交織器的列數(shù),r為編碼輸出的檢驗(yàn)比特流數(shù)目;另外,循環(huán)緩沖器可以并不具有真實(shí)的物理實(shí)體,而是通過邏輯尋址操作實(shí)現(xiàn),因此也可以看作是一個(gè)“R行×C列”的虛擬緩沖器;對于任何期望的碼率(Rate),循環(huán)緩沖速率匹配的比特選擇是從緩沖器的某處開始點(diǎn)順序讀出所需長度的比特流,作為速率匹配的輸出;

步驟D3:根據(jù)當(dāng)前待傳輸數(shù)據(jù)包對應(yīng)的傳輸次序,確定在循環(huán)緩存區(qū)中讀取所述當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置;

在步驟D3中,考慮到硬件實(shí)現(xiàn)的便利,被選擇用于傳輸?shù)谋忍刈詈脧奶摂M緩沖器的某一列開始位置被讀出來,而不是任意一個(gè)比特位置;

具體而言,由于循環(huán)緩沖器又可以看作一個(gè)“Rsubblock×(r·Csubblock)”的“虛擬循環(huán)緩沖器”,如果到達(dá)緩沖器的末尾,就繞到緩沖器的開始位置繼續(xù)讀數(shù)據(jù),直到完成讀取所需比特為止,如圖7所示;

設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,若n為奇數(shù)(即,mod(n,2)=1),則當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)的第一列的第1個(gè)有效比特;若n為偶數(shù)(即,mod(n,2)=0),則當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)的中心列的第一個(gè)有效比特,其中n為正整數(shù),mod(·)表示求余運(yùn)算;

其中,設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,循環(huán)緩存區(qū)的列索引為[0,1,2,…,r·Csubblock-1],其中,r·Csubblock表示循環(huán)緩存區(qū)的列數(shù),則當(dāng)n為奇數(shù)時(shí),當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)第一列的第一個(gè)有效比特;當(dāng)n為偶數(shù)時(shí),當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)第 列的第一個(gè)有效比特;其中,B是一個(gè)取值為正整數(shù)的常數(shù),Csubblock為子塊交織器的列數(shù),r為卷積碼編碼輸出比特流的數(shù)目,operation(·)表示取整運(yùn)算,運(yùn)算方法是向上取整、向下取整或舍入取整;

步驟D4:從起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成當(dāng)前待傳輸數(shù)據(jù)包;

具體而言,步驟D4包括:從當(dāng)前待傳輸數(shù)據(jù)包對應(yīng)的起始位置開始從有限長度數(shù)據(jù)緩存中沿著列的順序逐列讀取L個(gè)比特(L為當(dāng)前待傳輸數(shù)據(jù)包的大小)組成當(dāng)前的待傳輸數(shù)據(jù)包,在讀取比特的過程中如果遇到“虛比特”,則跳過不讀,直到讀出L個(gè)有效比特為止;根據(jù)循環(huán)緩存的特點(diǎn),如果達(dá)到循環(huán)緩存的末尾,則可以繞到循環(huán)緩存的開始位置繼續(xù)讀取數(shù)據(jù);其中,第一次傳輸?shù)臄?shù)據(jù)包從循環(huán)緩存區(qū)的第一個(gè)有效比特開始讀?。?/p>

步驟D5:發(fā)送當(dāng)前的待傳輸數(shù)據(jù)包到后續(xù)處理模塊。

此外,本發(fā)明實(shí)施例還提供一種卷積碼的數(shù)據(jù)發(fā)送裝置,包括:編碼緩存模塊,用于對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼,并將編碼后的數(shù)據(jù) 比特組成循環(huán)緩存區(qū);起始位置確定模塊,用于確定在循環(huán)緩存區(qū)中讀取組成待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置;數(shù)據(jù)讀取發(fā)送模塊,用于從起始位置開始,沿著列的順序逐列讀取特定長度的數(shù)據(jù)比特組成待傳輸數(shù)據(jù)包,并發(fā)送待傳輸數(shù)據(jù)包。

進(jìn)一步地,編碼緩存模塊包括:

編碼器,用于對輸入信息塊的數(shù)據(jù)比特進(jìn)行卷積碼編碼,輸出r個(gè)校驗(yàn)比特流,其中,r為大于或等于2的整數(shù);

子塊交織器,用于接收編碼器輸出的校驗(yàn)比特流;

重排單元,用于根據(jù)給定的重排向量,分別對輸入到各個(gè)子塊交織器的校驗(yàn)比特流進(jìn)行列間重排。

進(jìn)一步地,編碼緩存模塊還包括:比特交錯(cuò)單元,用于對重排后的t個(gè)校驗(yàn)比特流進(jìn)行比特交錯(cuò),其中,t為正整數(shù),且2≤t≤r。

進(jìn)一步地,起始位置確定模塊,具體用于:

根據(jù)欲組成的待傳輸數(shù)據(jù)包對應(yīng)的冗余版本取值,確定在所述循環(huán)緩存區(qū)中讀取組成所述待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置;或者,

根據(jù)已發(fā)送的數(shù)據(jù)包,確定在所述循環(huán)緩存區(qū)中讀取組成所述待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置;或者,

根據(jù)待傳輸數(shù)據(jù)包對應(yīng)的傳輸次序,確定在所述循環(huán)緩存區(qū)中讀取所述待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置。

于一實(shí)施例中,所述起始位置確定模塊,用于根據(jù)欲組成的待傳輸數(shù)據(jù)包對應(yīng)的冗余版本取值,確定在所述循環(huán)緩存區(qū)中讀取組成所述待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置,包括:

設(shè)待傳輸數(shù)據(jù)包對應(yīng)的冗余版本的取值有Nrv種,則所述起始位置

其中,Rsubblock為子塊交織器的行數(shù),Ncb為所述循環(huán)緩存區(qū)的大小,Nrv表示冗余版本取值的數(shù)目,Nrv為正整數(shù),rvidx表示冗余版本取值,rvidx在集合{0,1,...Nrv-1}中取值,Operation(·)表示取整運(yùn)算,運(yùn)算方法是向上取整、向下 取整或舍入取整,A為一個(gè)取值為正整數(shù)的常數(shù)。

于一實(shí)施例中,所述起始位置確定模塊,用于根據(jù)已發(fā)送的數(shù)據(jù)包,確定在所述循環(huán)緩存區(qū)中讀取組成所述待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置,包括:

設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,前面n-1次已發(fā)送的數(shù)據(jù)包的長度為Ei,則當(dāng)前待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置k0=Rsubblock·mod(Cn-1,(r·Csubblock)),

其中,Rsubblock為子塊交織器的行數(shù),Csubblock為子塊交織器的列數(shù),r為輸出比特流的數(shù)目,mod(·)表示求余運(yùn)算,Cn-1表示前面n-1次已發(fā)送的數(shù)據(jù)包對應(yīng)著的循環(huán)緩存區(qū)的列數(shù),或者,其中,n、i為正整數(shù),1≤i≤n-1,表示向上取整運(yùn)算。

于一實(shí)施例中,所述起始位置確定模塊,用于根據(jù)待傳輸數(shù)據(jù)包對應(yīng)的傳輸次序,確定在所述循環(huán)緩存區(qū)中讀取所述待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置,包括:

設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,若n為奇數(shù),則所述當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)的第一個(gè)有效比特;若n為偶數(shù),則所述當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)的中心列的第一個(gè)有效比特,其中,n為正整數(shù)。

于一實(shí)施例中,所述起始位置確定模塊,用于根據(jù)待傳輸數(shù)據(jù)包對應(yīng)的傳輸次序,確定在所述循環(huán)緩存區(qū)中讀取所述待傳輸數(shù)據(jù)包的數(shù)據(jù)比特的起始位置,包括:

設(shè)當(dāng)前待傳輸數(shù)據(jù)包是第n次傳輸?shù)臄?shù)據(jù)包,循環(huán)緩存區(qū)的列索引為[0,1,2,…,r·Csubblock-1],其中,r·Csubblock表示循環(huán)緩存區(qū)的列數(shù),則當(dāng)n為奇數(shù)時(shí),當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)第一列的第一個(gè)有效比特;當(dāng)n為偶數(shù)時(shí),當(dāng)前待傳輸數(shù)據(jù)包的起始位置為循環(huán)緩存區(qū)第 列的第一個(gè)有效比特;其中,B是一個(gè)取值為正整數(shù)的常數(shù),Csubblock為子塊交織器的列數(shù),r為卷積碼編碼輸出比特流的數(shù)目, operation(·)表示取整運(yùn)算,運(yùn)算方法是向上取整、向下取整或舍入取整。

進(jìn)一步地,起始位置確定模塊,用于確定在循環(huán)緩存區(qū)中讀取第一次傳輸?shù)臄?shù)據(jù)包的數(shù)據(jù)比特的起始位置為所述循環(huán)緩存區(qū)的第一個(gè)有效比特。

上述裝置的具體處理流程同上述方法所述,故于此不再贅述。

圖8為本發(fā)明一實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送裝置的示意圖。如圖8所示,本實(shí)施例提供的卷積碼的數(shù)據(jù)發(fā)送裝置包括編碼緩存模塊、起始位置確定模塊以及數(shù)據(jù)讀取發(fā)送模塊,其中,編碼緩存模塊包括編碼器、子塊交織器、重排單元以及比特交錯(cuò)單元。上述各模塊/單元的具體處理流程同上所述,故于此不再贅述。于實(shí)際應(yīng)用中,上述各模塊/單元可以通過處理器執(zhí)行存儲(chǔ)在存儲(chǔ)器中的程序/指令實(shí)現(xiàn),然而,本發(fā)明對此并不限定,上述這些模塊/單元的功能還可以通過固件/邏輯電路/集成電路實(shí)現(xiàn)。

以上顯示和描述了本發(fā)明的基本原理和主要特征和本發(fā)明的優(yōu)點(diǎn)。本發(fā)明不受上述實(shí)施例的限制,上述實(shí)施例和說明書中描述的只是說明本發(fā)明的原理,在不脫離本發(fā)明精神和范圍的前提下,本發(fā)明還會(huì)有各種變化和改進(jìn),這些變化和改進(jìn)都落入要求保護(hù)的本發(fā)明范圍內(nèi)。

當(dāng)前第1頁1 2 3 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會(huì)獲得點(diǎn)贊!
1