專利名稱:一種數(shù)據(jù)傳輸方法和系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于通信領(lǐng)域,更具體地,涉及ー種無線通信系統(tǒng)中的數(shù)據(jù)傳輸方法和系統(tǒng)。
背景技術(shù):
一般來說,無線通信網(wǎng)絡(luò)中類似傳輸能量之類的資源總是會受到一定的限制,如果要將信息傳輸?shù)矫咯`個節(jié)點,需要増大傳輸能量,使信息以較高的信噪比達到接收節(jié)點,但是同時也會產(chǎn)生很強的節(jié)點間干擾。另ー方面,如果信道隨著時間變化,如信道衰落或者節(jié)點的移動,也會對信號接收產(chǎn)生影響。另外,現(xiàn)在很多的無線通信網(wǎng)絡(luò)協(xié)議只針對點對點 的連接,沒有充分利用無線傳輸中的廣播特性;在信息論的研究中發(fā)現(xiàn),通過合適的編解碼方案,網(wǎng)絡(luò)可以節(jié)省物理資源,然而目前大部分的編碼方案復雜度太高。網(wǎng)絡(luò)編碼是ー個比較廣泛的概念,凡是在中繼節(jié)點接收到多個信號,處理并廣播出去的形式都可以稱為網(wǎng)絡(luò)編碼,因此網(wǎng)絡(luò)編碼的實現(xiàn)形式可以有很多種,網(wǎng)絡(luò)編碼利用了無線信道的廣播特性,同時也采用了實用性較高的信息編解碼理論和方法,在技術(shù)上有了很大的進步。傳統(tǒng)的網(wǎng)絡(luò)總是要避免信號在同一個時隙發(fā)送,否則會形成干擾,可能無法正確接收。如圖I所示,該圖表示了傳統(tǒng)網(wǎng)絡(luò)的傳輸模型,令SI和S3分別表示節(jié)點NI和節(jié)點N3發(fā)送的信息,NI首先發(fā)送SI到N2,N2發(fā)送SI到N3 ;然后N3發(fā)送S3到N2,N2再發(fā)送S3到NI,總共需要4個時隙完成信息交換。圖2是采用網(wǎng)絡(luò)編碼的傳輸模型,如圖所示,第一個時隙NI首先發(fā)送SI到N2,第ニ個時隙N3發(fā)送S3到N2,N2接收到SI和S3后,編碼生成= SIΘ幻,其中φ表示對兩個信號幀SI和S3做比特級異或,第三個時隙Ν2發(fā)送S2到NI和Ν3,當NI和Ν3接收到S2后,分別提取自身所需要的信號,NI節(jié)點通過幻Θぬ=^ΙΘ(幻Θ幻)=們獲得S3,Ν3節(jié)點通過^3Θ^2 = ^3Θ (^l Θ ^3)=幻獲得SI,這個方案總共需要3個時隙,和傳統(tǒng)的傳輸模式相比,吞吐量有25%的改善。在實際信道中某一特定的編碼可以實現(xiàn)可靠傳輸?shù)那疤崾前l(fā)送方和接受方都需要知道信道的統(tǒng)計特性,而這ー假設(shè)在很多情況下是不成立的,例如因特網(wǎng)上的數(shù)據(jù)傳輸, 由于信道的情況隨著時間變化,也就意味著丟包率不是恒定的。在網(wǎng)絡(luò)編碼的傳輸模型中的中繼采用什么形式的編碼,如何防止解碼差錯在中繼端繼續(xù)傳播,是以前的研究沒有深入涉及到的。一方面中繼可以對接收到的信息采取直接合并的方法,這樣肯定會引起誤差傳播;另一方面,比如采用普通的糾錯碼,中繼如果不能正確解碼,還需要發(fā)送反饋信息給發(fā)送端要求重傳,所以對于如何減小數(shù)據(jù)在傳輸過程中的譯碼開銷,減小編譯碼復雜度,成為當前在無線傳輸技術(shù)中迫切需要解決的問題。
發(fā)明內(nèi)容
為解決上述技術(shù)問題,在網(wǎng)絡(luò)編碼的傳輸模型基礎(chǔ)上,本發(fā)明提供了一種無線通信系統(tǒng)中數(shù)據(jù)傳輸方法,能充分有效地減小數(shù)據(jù)在傳輸過程中的譯碼開銷,減小編譯碼復雜度。本發(fā)明的技術(shù)方案是第一用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包;第二用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包;控制站對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼;控制站將經(jīng)所述網(wǎng)絡(luò)編碼后的數(shù)據(jù)包用噴泉碼編碼后發(fā)送給第一用戶和第二用戶。另ー方面,本發(fā)明提供了一種無線通信系統(tǒng)中的數(shù)據(jù)傳輸系統(tǒng),其包括
用噴泉碼編碼后向控制站發(fā)送數(shù)據(jù)包的第一用戶;用噴泉碼編碼后向控制站發(fā)送數(shù)據(jù)包的第二用戶;對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼的控制站,其中,控制站中有用于對來自第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼的網(wǎng)絡(luò)編碼裝置;在所述第一用戶、第二用戶和控制站中,都包括有噴泉碼編碼裝置。通過以上技術(shù)方案,可以有效克服差錯傳播的問題,提高收發(fā)數(shù)據(jù)的準確性,減小數(shù)據(jù)在傳輸過程中的譯碼開銷,減小編譯碼復雜度。
此處所說明的附圖用來提供對本發(fā)明的進ー步理解,構(gòu)成本發(fā)明的一部分,本發(fā)明的示意性實施例及其說明用于解釋本發(fā)明,并不構(gòu)成對本發(fā)明的不當限定。在附圖中圖I表不了傳統(tǒng)網(wǎng)絡(luò)的傳輸模型;圖2表示了采用網(wǎng)絡(luò)編碼的傳輸模型;圖3表示了 Raptor碼的編碼過程;圖4表示了本發(fā)明實施例的數(shù)據(jù)傳輸方法流程圖。
具體實施例方式為了使本發(fā)明所要解決的技術(shù)問題、技術(shù)方案及有益效果更加清楚、明白,以下結(jié)合附圖和實施例,對本發(fā)明進行進一歩詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用干限定本發(fā)明。如圖4所示,本發(fā)明實施例提供的數(shù)據(jù)傳輸方法包括第一用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包;第二用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包;控制站對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼;控制站將經(jīng)所述網(wǎng)絡(luò)編碼后的數(shù)據(jù)包用噴泉碼編碼后發(fā)送給第一用戶和第二用戶。其中的噴泉碼是屬于無速率碼(Rateless codes),而Raptor碼又屬于噴泉碼中的ー種。無速率碼(Rateless codes)不同于分組編碼把姆K個比特編為預先設(shè)定好的一定比特數(shù),無速率碼(Rateless codes)是將每K個編為無窮多的比特流進行傳輸,當接收端接收到足夠多的比特數(shù)(依據(jù)信道的情況而定)可以解碼時,告知發(fā)送端停止發(fā)送,如果解碼失敗,則再通過更多的比特數(shù)繼續(xù)解碼直到解碼成功。無速率碼具有兩個顯著特點不依賴信道狀況和低的解碼復雜度。噴泉碼是一種可變碼率的線性分組碼,即發(fā)送端可以由原始的數(shù)據(jù)包生成任意數(shù)量的編碼包,而接收端只要接收到足夠的編碼數(shù)據(jù)包,就可以很高的概率成功譯出原始數(shù)據(jù)包。與其它糾錯碼技術(shù)相比,噴泉碼技術(shù)能適應變化的信道狀況和較低的編譯碼復雜度等,因此,在可靠多播傳輸、多源下載和數(shù)據(jù)存儲等應用場景有著巨大的優(yōu)勢。LT(Luby Transform)碼是最早可以實用的噴泉碼之一,它采用健壯的孤子分布(Robust Soliton Distribution ;RSD)作為碼的度分布,實現(xiàn)碼率可變,但其編譯碼復雜度不能達到設(shè)計目標。Raptor碼又是在LT碼的基礎(chǔ)上進行了改進,所以仍然屬于噴泉碼,它通過對輸入符號進行預編碼,然后采用一個弱化RSD分布的LT碼進行編碼,從而,實現(xiàn)開銷非常小時,達到可靠傳輸。LT碼雖然性能優(yōu)良,但仍未達到編譯碼復雜度的理想目標,即生成每個編碼符號需要的運算量是一個與輸入符號長度無關(guān)的常數(shù),而成功譯碼需要的運算量是一個關(guān)于輸 入符號長度的線性函數(shù)。Raptor 碼巧妙地應用了 LT碼的特點和 LDPC (Low-Density Parity Check)碼的譯碼算法的特點,將二者有機地結(jié)合在一起,設(shè)計了一種級聯(lián)編碼。這樣極大的降低了譯碼的復雜度。Raptor碼的編譯碼復雜度為ο (kln(l/ε)),其中k是輸入符號長度,ε是譯碼開銷??梢?,Raptor碼的編譯碼復雜度是一個關(guān)于輸入符號長度k的線性函數(shù)。Raptor碼的編碼過程如圖3所不,由預編碼過程和LT碼編碼過程組成。預編碼過程將k個輸入符號,通過LDPC等傳統(tǒng)糾刪碼轉(zhuǎn)換為k'個中間符號,然后將k'個中間符號作為LT碼的輸入符號來進行二次編碼,從而得到Raptor碼的編碼符號。Raptor碼的譯碼同樣分兩步,譯出中間符號和譯出源輸入符號。第一步,由于中間符號是作為LT編碼的輸入符號,生成編碼符號的,所以根據(jù)LT碼的性質(zhì),若想譯出k'個中間符號,接收端需要接收到的符號數(shù)目要略大于k',然后通過LT碼的解碼方法即可譯出k'個中間符號。第二步,再利用傳統(tǒng)糾刪碼的解碼性質(zhì),將k'個中間符號譯碼恢復成k個源輸入符號。至此,譯碼過程結(jié)束。Raptor碼的設(shè)計目標是盡量減小譯碼開銷,使其趨近于零,同時盡量減小編譯碼復雜度。理想情況下,應該使生成每個編碼符號的運算量成為與輸入符號長度無關(guān)的常數(shù),而譯碼的運算量是一個關(guān)于輸入符號長度的線性函數(shù)。通常的Raptor碼雖然能達到這兩個設(shè)計目標,但要求輸入符號非常長(碼長一般在一萬個比特以上);而在實際系統(tǒng)中,輸入符號碼長都較短,碼長在幾千比特。發(fā)射端和接收端的噴泉碼可以采用LT碼和Raptor碼等無速率碼,達到獨立于信道和降低解碼復雜度的特性。其中,Raptor碼相比LT碼具有更好的性能。采用新的差分進化的方法重新設(shè)計Raptor碼中的LT碼和LDPC碼的度分布,可以減小譯碼開銷,并使得生成每個編碼符號的運算量是與輸入符號長度無關(guān)的常數(shù)。Raptor碼的編譯碼是LT碼和LDPC碼獨立的過程,因此在設(shè)計時,Raptor碼的設(shè)計可以看成LT碼和LDPC碼的獨立優(yōu)化。LDPC碼的目的是在高碼率下達到最小誤碼率,而LT碼則是在最小譯碼開銷的前提下達到LDPC碼糾錯范圍。實施例一
用戶A采用Raptor碼向基站(或者中繼)發(fā)送NI彡K個數(shù)據(jù)包,其中K為原始數(shù)據(jù)包的數(shù)目,NI為實際發(fā)送的經(jīng)過Raptor碼編碼后的數(shù)據(jù)包數(shù)目;當基站正確譯碼K個原始數(shù)據(jù)包后,基站向用戶A發(fā)送ACK確認消息;當用戶A收到基站發(fā)來的ACK消息后,停止發(fā)送數(shù)據(jù)包。用戶B采用Raptor碼向基站或者中繼發(fā)送N2彡K個數(shù)據(jù)包,其中K為原始數(shù)據(jù)包的數(shù)目,N2為實際發(fā)送的經(jīng)過Raptor碼編碼后的數(shù)據(jù)包數(shù)目;當基站正確譯碼K個原始數(shù)據(jù)包后,基站向用戶B發(fā)送ACK確認消息;當用戶B收到基站發(fā)來的ACK消息后,停止發(fā)送數(shù)據(jù)包;基站(或者中繼)對用戶A和用戶B發(fā)來的原始數(shù)據(jù)包進行網(wǎng)絡(luò)編碼,可以將兩個用戶發(fā)送的信息進行異或,得到新的K個網(wǎng)絡(luò)編碼數(shù)據(jù)包;基站采用Raptor碼向用戶A和用戶B發(fā)送N3彡K個數(shù)據(jù)包,其中K為網(wǎng)絡(luò)編碼數(shù)據(jù)包的數(shù)目,N3為實際發(fā)送的經(jīng)過Raptor碼編碼后的數(shù)據(jù)包數(shù)目。
用戶A和用戶B接收到數(shù)據(jù)包后,首先檢測得到合并后的信息,再利用自身信號分別對接收信號進行異或操作,正確解出所需信號,然后向基站發(fā)送ACK確認消息,當基站接收到兩個用戶的ACK消息后,停止發(fā)送數(shù)據(jù)包?;竞蛢蓚€用戶可以采用如下步驟產(chǎn)生Raptor碼的優(yōu)化度分布進行編碼。在Raptor碼的編碼過程開始,信源產(chǎn)生K個數(shù)據(jù)包,首先需要進入LDPC碼的編碼器,因此需要已知LDPC碼的度分布。該LDPC碼的度分布可以按照如下步驟產(chǎn)生。LDPC碼的度分布的產(chǎn)生方法按照如下步驟執(zhí)行(I)設(shè)置搜索深度的初始值為0,搜索深度的最大值為G ;誤碼率門限值為δ,然后隨機生成M個度分布rjx),r2(x),L ΓΜ(Χ),其中需要搜索的最優(yōu)度分布為rbest(x)。(2)將步驟(I)中生成的度分布代入優(yōu)化目標,使得經(jīng)過N次迭代譯碼過程后,噴泉碼的誤碼率最小。得到經(jīng)過N次迭代后目標函數(shù)的值ber1; ber2, L, berM,其中ber_best是迭代后的目標函數(shù)值中間的最小值,此時記錄相應的度分布Γ best (χ),并將搜索深度的值增加I。如果此時最優(yōu)誤碼率高于預先設(shè)定的誤碼率門限值,即ber_best > ber_th,進入步驟⑶;(3)對于度分布Γ Jx) (I彡i彡M),隨機生成范圍為[1,M]的4個不同的整數(shù),通過控制差分變化的幅度調(diào)整度分布。比如產(chǎn)生的四個隨機整數(shù)分別為為rn,ri2, ri3, ri4。令幅度控制因子F = 0. 5,度分布可以表示為
Γ, (χ) =Γ!(χ) + 0.5χ [ΓΓπ (χ) - Γ Jx) + Γ。(χ) - (χ)]
ο(4)重復步驟(2),當誤碼率不高于預先設(shè)定的誤碼率門限值時,搜索過程結(jié)束,記錄這時的最優(yōu)誤碼率和最優(yōu)度分布。得到最優(yōu)度分布rbest(x) = [λ (χ) P (χ)]之后,將產(chǎn)生的數(shù)據(jù)包進行LDPC編碼,然后進行LT碼的編碼。同樣,編碼過程需要已知LT碼的度分布。LT碼的度分布的產(chǎn)生方法按照如下步驟執(zhí)行(I)根據(jù)輸入信息數(shù)據(jù)包個數(shù)K',設(shè)置初始度分布,該度分布是信息包個數(shù)K'和編碼的碼率R的函數(shù)。(2)隨機產(chǎn)生W個度分布,可以表示為Q1(Cl), Ω 2 (d) , L,Ωμ, (d)。將步驟(I)中生成的度分布代入優(yōu)化目標,使得經(jīng)過N'次迭代譯碼過程后,誤碼率最小。比如得到經(jīng)過N'次迭代后目標函數(shù)的值beiv ber2, L,berM,,并令最優(yōu)目標函數(shù)值ber_best是迭代后的目標函數(shù)值中間的最小值,即ber_best = min (ber_best, ber1; ber2, L, berM,),記錄相應的度分布Ω best' (χ),并將搜索深度的值增加I。(3)隨機生成范圍在[1,Μ']的4個不同的整數(shù)rn,ri2,ri3,ri4,通過控制差分變化的幅度調(diào)整度分布,令 Q(χ) = Ω, 0)+0.5 X [ΩΓη (X) - ΩΓ2 (X) + Qrj3 (X) - Qrj4 (X)],可以從得到的Qi(X)計算出誤碼率ber(1)。(4)若計算出的誤碼率高于目標誤碼率的最小值,則重復步驟(2),直到目標誤碼率保持不變或者低于目標誤碼率的最小值,則停止搜索。記錄相應的度分布為所要的度分布。通過上面的搜索算法可以得到LDPC碼和LT碼的度分布,進而可以進行Raptor碼的編碼。 實施例二用戶A采用Raptor碼向基站(或者中繼)發(fā)送NI彡K個數(shù)據(jù)包,其中K為原始數(shù)據(jù)包的數(shù)目,NI為實際發(fā)送的經(jīng)過Raptor碼編碼后的數(shù)據(jù)包數(shù)目;當基站正確譯碼K個原始數(shù)據(jù)包后,基站向用戶A發(fā)送ACK確認消息;當用戶A收到基站發(fā)來的ACK消息后,停止發(fā)送數(shù)據(jù)包。用戶B采用Raptor碼向基站或者中繼發(fā)送N2彡K個數(shù)據(jù)包,其中K為原始數(shù)據(jù)包的數(shù)目,N2為實際發(fā)送的經(jīng)過Raptor碼編碼后的數(shù)據(jù)包數(shù)目;當基站正確譯碼K個原始數(shù)據(jù)包后,基站向用戶B發(fā)送ACK確認消息;當用戶B收到基站發(fā)來的ACK消息后,停止發(fā)送數(shù)據(jù)包;基站(或者中繼)對用戶A和用戶B發(fā)來的原始數(shù)據(jù)包進行網(wǎng)絡(luò)編碼,可以將兩個用戶發(fā)送的信息采用更高階的調(diào)制方式做合并,得到新的K個網(wǎng)絡(luò)編碼數(shù)據(jù)包;基站采用Raptor碼向用戶A和用戶B發(fā)送N3彡K個數(shù)據(jù)包,其中K為網(wǎng)絡(luò)編碼數(shù)據(jù)包的數(shù)目,N3為實際發(fā)送的經(jīng)過Raptor碼編碼后的數(shù)據(jù)包數(shù)目。當用戶A和用戶B接收到數(shù)據(jù)包后,開始嘗試解碼。首先利用自身信號分別正確解出所需信號后,然后向基站發(fā)送ACK確認消息,當基站接收到兩個用戶的ACK消息后,停止發(fā)送數(shù)據(jù)包?;竞蛢蓚€用戶可以采用如下步驟產(chǎn)生Raptor碼的優(yōu)化度分布進行編碼。
在Raptor碼的編碼過程開始,信源產(chǎn)生K個的數(shù)據(jù)包,首先需要進入LDPC碼的編碼器,因此需要已知LDPC碼的度分布。該LDPC碼的度分布可以按照如下步驟產(chǎn)生。LDPC碼的度分布的產(chǎn)生方法按照如下步驟執(zhí)行(I)設(shè)置搜索深度的初始值為0,搜索深度的最大值為G ;誤碼率門限值為δ,然后隨機生成M個度分布rjx),r2(x),L ΓΜ(Χ),其中需要搜索的最優(yōu)度分布為rbest(x)。(2)將步驟(I)中生成的度分布代入優(yōu)化目標,使得經(jīng)過N次迭代譯碼過程后,噴泉碼的誤碼率最小。得到經(jīng)過N次迭代后目標函數(shù)的值ber1; ber2, L, berM,其中ber_best是迭代后的目標函數(shù)值中間的最小值,此時記錄相應的度分布Γ best (χ),并將搜索深度的 值增加I。如果此時最優(yōu)誤碼率不高于預先設(shè)定的誤碼率門限值,即ber_best ( ber_th,搜索結(jié)束,記錄這時的最優(yōu)誤碼率和最優(yōu)度分布。得到最優(yōu)度分布Γ best (χ) = [ λ (χ) ρ (χ)],將產(chǎn)生的信息序列進行LDPC編碼得到數(shù)據(jù)長度為的序列,然后進行LT碼的編碼。同樣,編碼過程需要已知LT碼的度分布。LT碼的度分布的產(chǎn)生方法按照如下步驟執(zhí)行(I)根據(jù)輸入信息包的個數(shù)K',設(shè)置初始度分布,該度分布是數(shù)據(jù)包個數(shù)K'和編碼的碼率R的函數(shù)。(2)隨機產(chǎn)生W個度分布,可以表示為Ω ! (d) , Ω 2 (d) , L,ΩΜ, (d)。將步驟(I)中生成的度分布代入優(yōu)化目標,使得經(jīng)過N'次迭代譯碼過程后,誤碼率最小。比如得到經(jīng)過N'次迭代后目標函數(shù)的值beiv ber2, L,berM,,并令最優(yōu)目標函數(shù)值ber_best是迭代后的目標函數(shù)值中間的最小值,即ber_best = min (ber_best, ber1; ber2, L, berM,),記錄相應的度分布(χ)。如果此時最優(yōu)誤碼率不高于預先設(shè)定的誤碼率門限值,即ber_ best ( ber_th,搜索結(jié)束,記錄這時的最優(yōu)誤碼率和最優(yōu)度分布。通過上面的搜索算法可以得到LDPC碼和LT碼的度分布,進而可以進行Raptor碼的編碼。實施例三用戶A采用噴泉碼向基站(或者中繼)發(fā)送NI彡K個數(shù)據(jù)包,其中K為原始數(shù)據(jù)包的數(shù)目,NI為實際發(fā)送的經(jīng)過噴泉碼編碼后的數(shù)據(jù)包數(shù)目;當基站正確譯碼K個原始數(shù)據(jù)包后,基站向用戶A發(fā)送ACK確認消息;當用戶A收到基站發(fā)來的ACK消息后,停止發(fā)送數(shù)據(jù)包。用戶B采用噴泉碼向基站或者中繼發(fā)送N2彡K個數(shù)據(jù)包,其中K為原始數(shù)據(jù)包的數(shù)目,N2為實際發(fā)送的經(jīng)過噴泉碼編碼后的數(shù)據(jù)包數(shù)目;當基站正確譯碼K個原始數(shù)據(jù)包后,基站向用戶B發(fā)送ACK確認消息;當用戶B收到基站發(fā)來的ACK消息后,停止發(fā)送數(shù)據(jù)包;基站(或者中繼)對用戶A和用戶B發(fā)來的原始數(shù)據(jù)包進行網(wǎng)絡(luò)編碼,可以將兩個用戶發(fā)送的信息進行異或,得到新的K個網(wǎng)絡(luò)編碼數(shù)據(jù)包;基站采用噴泉碼向用戶A和用戶B發(fā)送N3 > K個數(shù)據(jù)包,其中K為網(wǎng)絡(luò)編碼數(shù)據(jù)包的數(shù)目,N3為實際發(fā)送的經(jīng)過噴泉碼編碼后的數(shù)據(jù)包數(shù)目。用戶A和用戶B接收到數(shù)據(jù)包后,首先檢測得到合并后的信息,再利用自身信號分別對接收信號進行異或操作,正確解出所需信號,然后向基站發(fā)送ACK確認消息,當基站接收到兩個用戶的ACK消息后,停止發(fā)送數(shù)據(jù)包。實施例四用戶A采用LT碼向基站(或者中繼)發(fā)送NI彡K個數(shù)據(jù)包,其中K為原始數(shù)據(jù)包的數(shù)目,NI為實際發(fā)送的經(jīng)過LT碼編碼后的數(shù)據(jù)包數(shù)目;當基站正確譯碼K個原始數(shù)據(jù)包后,基站向用戶A發(fā)送ACK確認消息;當用戶A收到基站發(fā)來的ACK消息后,停止發(fā)送數(shù)據(jù)包。用戶B采用LT碼向基站或者中繼發(fā)送N2彡K個數(shù)據(jù)包,其中K為原始數(shù)據(jù)包的數(shù)目,N2為實際發(fā)送的經(jīng)過LT碼編碼后的數(shù)據(jù)包數(shù)目;當基站正確譯碼K個原始數(shù)據(jù)包后,基站向用戶B發(fā)送ACK確認消息;當用戶B收到基站發(fā)來的ACK消息后,停止發(fā)送數(shù)據(jù)包;基站(或者中繼)對用戶A和用戶B發(fā)來的原始數(shù)據(jù)包進行網(wǎng)絡(luò)編碼,可以將兩個用戶發(fā)送的信息進行異或,得到新的K個網(wǎng)絡(luò)編碼數(shù)據(jù)包;基站采用LT碼向用戶A和用戶B發(fā)送N3彡K個數(shù)據(jù)包,其中K為網(wǎng)絡(luò)編碼數(shù)據(jù)包的數(shù)目,N3為實際發(fā)送的經(jīng)過LT碼編碼后的數(shù)據(jù)包數(shù)目。用戶A和用戶B接收到數(shù)據(jù)包后,首先檢測得到合并后的信息,再利用自身信號分別對接收信號進行異或操作,正確解出所需信號,然后向基站發(fā)送ACK確認消息,當基站接收到兩個用戶的ACK消息后,停止發(fā)送數(shù)據(jù)包。基站和兩個用戶可以采用如下步驟產(chǎn)生LT碼的優(yōu)化度分布進行編碼。(I)根據(jù)輸入數(shù)據(jù)包的長度K,設(shè)置初始度分布;(2)隨機產(chǎn)生M個度分布,表示為Q1(Cl), Q2(d),L, Ω M(d),將所述初始度分布代入優(yōu)化目標,使經(jīng)過若干次迭代譯碼過程后,誤碼率最小,得到經(jīng)過若干次迭代后目標函數(shù)的誤碼率beri,ber2,L,berM,并令最優(yōu)目標函數(shù)的誤碼率ber_best是迭代后的目標函數(shù)誤 碼率中的最小值,記錄相應的度分布Qbest(X);(3)隨機生成范圍在[1,M]的4個不同的整數(shù)rn,ri2,ri3,ri4,通過控制差分變化的幅度調(diào)整度分布得到Qi(X),并計算出對應的誤碼率beri,其中
Ω;(χ) = Q1 (x)+F-[ΩΓη(χ)-ΩΓ2(χ) + ΩΓι3(χ)-Qr^(χ)] , F 是一個用來控制差分變化的幅度
的實常數(shù);(4)若計算出的誤碼率ben低于目標函數(shù)的誤碼率ber_best,則改變目標函數(shù)的誤碼率ber_best = ben和度分布Ωι ^(χ) = Ω i (x),并重復⑶;若計算出的誤碼率不低于目標函數(shù)的誤碼率,則重復(2);直到目標函數(shù)的誤碼率在多次迭代中保持不變或者等于O,則停止搜索,記錄相應的度分布。通過上面的搜索算法可以得到LT碼的度分布,進而可以進行LT碼的編碼。此外,本發(fā)明還提供了一種數(shù)據(jù)傳輸系統(tǒng),包括用噴泉碼編碼后向控制站發(fā)送數(shù)據(jù)包的第一用戶;用噴泉碼編碼后向控制站發(fā)送數(shù)據(jù)包的第二用戶;對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼的控制站,其中,控制站中有用于對來自第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼的網(wǎng)絡(luò)編碼裝置;在所述第一用戶、第二用戶和控制站中,都包括有噴泉碼編碼裝置。所述噴泉碼編碼裝置可以但不局限為Raptor碼編碼裝置。上述說明示出并描述了本發(fā)明的較為優(yōu)選實施例而已,但如前所述,應當理解本發(fā)明并非局限于本文所披露的形式,不應看作是對其他實施例的排除,而可用于各種其他組合、修改和環(huán)境,并能夠在本文所述發(fā)明構(gòu)想范圍內(nèi),通過上述教導或相關(guān)領(lǐng)域的技術(shù)或知識進行改動。而本領(lǐng)域人員所進行的改動和變化不脫離本發(fā)明的精神和范圍,則都應在本發(fā)明所附權(quán)利要求的保護范圍內(nèi)。
權(quán)利要求
1.ー種數(shù)據(jù)傳輸方法,其特征在于,包括 第一用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包; 第二用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包; 控制站對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼; 控制站將經(jīng)所述網(wǎng)絡(luò)編碼后的數(shù)據(jù)包用噴泉碼編碼后發(fā)送給第一用戶和第二用戶。
2.根據(jù)權(quán)利要求I所述的數(shù)據(jù)傳輸方法,其特征在于,在所述第一用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包之后,在所述控制站對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼之前,控制站譯碼來自第一用戶的數(shù)據(jù)包,控制站向第一用戶發(fā)送ACK確認消息,第一用戶在收到來自控制站發(fā)送的ACK確認消息后,停止向控制站發(fā)送數(shù)據(jù)包。
3.根據(jù)權(quán)利要求I所述的數(shù)據(jù)傳輸方法,其特征在于,在所述第二用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包之后,在所述控制站對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼之前,控制站譯碼來自第二用戶的數(shù)據(jù)包,控制站向第二用戶發(fā)送ACK確認消息,第ニ用戶在收到來自控制站發(fā)送的ACK確認消息后,停止向控制站發(fā)送數(shù)據(jù)包。
4.根據(jù)權(quán)利要求I所述的數(shù)據(jù)傳輸方法,其特征在于,所述控制站對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼是在第一用戶和第二用戶的數(shù)據(jù)包之間進行ニ進制異或運算。
5.根據(jù)權(quán)利要求I或4所述的數(shù)據(jù)傳輸方法,其特征在于,所述的噴泉碼為Raptor碼。
6.根據(jù)權(quán)利要求5所述的數(shù)據(jù)傳輸方法,其特征在于,用噴泉碼編碼的方法包括 將K個原始數(shù)據(jù)包送入LDPC編碼器,根據(jù)LDPC碼的度分布,獲得k'個編碼后的數(shù)據(jù)包; 將所述LDPC碼編碼后的k'數(shù)據(jù)包放入LT碼的編碼器,根據(jù)LT碼的度分布,生成N個編碼后的數(shù)據(jù)包。
7.根據(jù)權(quán)利要求6所述的數(shù)據(jù)傳輸方法,其特征在于,所述LDPC碼的度分布獲取過程包括 (1)設(shè)置搜索深度的初始值S= 0,搜索深度的最大值G ;誤碼率門限值ber_th = δ,隨機生成M個度分布,表示為rjx),Γ2(χ), L ΓΜ(Χ),其中,需要搜索的最優(yōu)度分布表示為 Fi(X); (2)將生成的度分布代入優(yōu)化目標,使經(jīng)過若干次迭代譯碼后,得到經(jīng)過若干次迭代后目標函數(shù)的誤碼率為beri,ber2,L,berM,并令最優(yōu)目標函數(shù)的誤碼率ber_best是迭代后的目標函數(shù)誤碼率中的最小值,將搜索深度S的值增加1,如果最優(yōu)誤碼率不高于預先設(shè)定的誤碼率門限值δ,即ber_best彡δ,則搜索度分布的過程結(jié)束,記錄此時的最優(yōu)誤碼率和最優(yōu)度分布;否則,進入⑶; (3)對于度分布?!唉?(I彡i彡Μ),隨機生成范圍為[1,M]的4個不同的整數(shù)rn,ri2,ri3,ri4,通過控制差分變化的幅度調(diào)整度分布得到。(-,并計算出對應的誤碼率-^^其中 I](X) = Γ;(x) + F- [ΓΓπ (X)-Trn (X) + Tra (X)-Tn4 (X)] , F 是ー個用來控制差分變化的幅度的實常數(shù); (4)重復執(zhí)行(2),直到捜索深度達到最大值,或者最優(yōu)誤碼率不高于預先設(shè)定的誤碼率門限值δ,則搜索度分布的過程結(jié)束;記錄此時的最優(yōu)誤碼率和最優(yōu)度分布。
8.根據(jù)權(quán)利要求6所述的數(shù)據(jù)傳輸方法,其特征在于,所述LT碼的度分布獲取過程包括 (1)根據(jù)輸入數(shù)據(jù)包的長度k',設(shè)置初始度分布; (2)隨機產(chǎn)生M個度分布,表示為Q1(Cl),Q2(d),L, Ω M (d),將所述初始度分布代入優(yōu)化目標,使經(jīng)過若干次迭代譯碼過程后,誤碼率最小,得到經(jīng)過若干次迭代后目標函數(shù)的誤碼率beri,ber2,L,berM,并令最優(yōu)目標函數(shù)的誤碼率ber_best是迭代后的目標函數(shù)誤碼率中的最小值,記錄相應的度分布Qbest(X); (3)隨機生成范圍在[I,M]的4個不同的整數(shù)rn, ri2, ri3, ri4,通過控制差分變化的幅度調(diào)整度分布得到Ω“χ),并計算出對應的誤碼率beri,其中O1 (X) = Q1 (x)+F-[ΩΓη(X)-ΩΓ2(X) + ΩΓι3(X)-ΩΓι4(χ)] , F 是ー個用來控制差分變化的幅度的實常數(shù); (4)若計算出的誤碼率beri低于目標函數(shù)的誤碼率ber_best,則改變目標函數(shù)的誤碼率ber_best = beri和度分布Ωι ^(χ) = Ω i (x),并重復(3);若計算出的誤碼率不低于目標函數(shù)的誤碼率,則重復(2);直到目標函數(shù)的誤碼率在多次迭代中保持不變或者等于O,則停止捜索,記錄相應的度分布。
9.根據(jù)權(quán)利要求I所述的數(shù)據(jù)傳輸方法,其特征在于,所述控制站包括基站和/或中繼站。
10.ー種數(shù)據(jù)傳輸系統(tǒng),包括 用噴泉碼編碼后向控制站發(fā)送數(shù)據(jù)包的第一用戶; 用噴泉碼編碼后向控制站發(fā)送數(shù)據(jù)包的第二用戶; 對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼的控制站,其中,控制站中有用于對來自第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼的網(wǎng)絡(luò)編碼裝置; 其特征在于,在所述第一用戶、第二用戶和控制站中,都包括有噴泉碼編碼裝置。
11.根據(jù)權(quán)利要求10所述的數(shù)據(jù)傳輸系統(tǒng),其特征在干,所述噴泉碼編碼裝置為Raptor碼編碼裝置。
12.—種如權(quán)利要求1-11任意ー項中所述的控制站,其特征在于,所述控制站中有噴泉碼編碼裝置。
13.根據(jù)權(quán)利要求12所述的控制站,其特征在于,所述噴泉碼編碼裝置為Raptor碼編碼裝置。
全文摘要
本發(fā)明公開了一種數(shù)據(jù)傳輸方法和系統(tǒng),包括第一用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包;第二用戶向控制站發(fā)送用噴泉碼編碼后的數(shù)據(jù)包;控制站對第一用戶和第二用戶發(fā)來的數(shù)據(jù)包進行網(wǎng)絡(luò)編碼;控制站將經(jīng)所述網(wǎng)絡(luò)編碼后的數(shù)據(jù)包用噴泉碼編碼后發(fā)送給第一用戶和第二用戶;通過該方案,能夠有效克服差錯傳播的問題,提高收發(fā)數(shù)據(jù)的準確性,減小數(shù)據(jù)在傳輸過程中的譯碼開銷,減小編譯碼復雜度。
文檔編號H04L1/00GK102684824SQ20111006466
公開日2012年9月19日 申請日期2011年3月17日 優(yōu)先權(quán)日2011年3月17日
發(fā)明者徐俊, 李睿, 許進 申請人:中興通訊股份有限公司