專利名稱:一種發(fā)送數(shù)據(jù)的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)的方法,更具體地說,涉及一種在考慮檢錯碼的尺寸的情況下來將輸入數(shù)據(jù)劃分成多個碼塊(code block)的各種方法。
背景技術(shù):
在發(fā)送數(shù)據(jù)時,數(shù)據(jù)傳輸效率以及可靠的數(shù)據(jù)傳輸是重要的。為了提高數(shù)據(jù)傳輸效率,通常使用在發(fā)送之前劃分?jǐn)?shù)據(jù)的方法、并且使用利用檢錯碼來對數(shù)據(jù)是否包含錯誤進(jìn)行檢查的方法。
錯誤控制是指對在數(shù)據(jù)傳輸期間所產(chǎn)生的錯誤進(jìn)行檢測和糾正的機(jī)制。錯誤控制方案包括自動重傳請求(ARQ)方案、前向糾錯(FEC)方案和后向糾錯(BEC)方案。
為了在通信線路上進(jìn)行可靠的數(shù)據(jù)傳輸,ARQ方案允許接收側(cè)通過確認(rèn)(ACK)信號和超時來檢測是否發(fā)生錯誤,并且允許發(fā)送側(cè)對發(fā)生了錯誤的幀進(jìn)行重傳。被稱為“自動重傳請求方案”的ARQ方案允許接收側(cè)檢測錯誤并請求數(shù)據(jù)重傳。在FEC方案中,發(fā)送側(cè)在發(fā)送之前向字符或幀添加冗余,并且接收側(cè)利用這種冗余來檢測和糾正錯誤。BEC方案添加用于檢測錯誤的冗余,并向發(fā)送側(cè)發(fā)送用于數(shù)據(jù)重傳的ARQ信號。
“檢錯”是指使得接收側(cè)能夠識別出在傳輸期間是否發(fā)生了錯誤的技術(shù)。檢錯碼是指支持檢錯技術(shù)的碼。檢錯技術(shù)包括奇偶校驗、校驗和、循環(huán)冗余校驗(CRC)和加權(quán)碼技術(shù)。
“糾錯”是指在所發(fā)送的數(shù)據(jù)塊中包含足夠的冗余、以便接收側(cè)能夠從接收到的數(shù)據(jù)塊中推斷出傳輸字符的編碼技術(shù)。根據(jù)開放系統(tǒng)互聯(lián)(OSI)的層模型,糾錯主要在數(shù)據(jù)鏈路層中實現(xiàn)。同時,檢錯是指添加冗余、使得接收側(cè)能夠檢測到錯誤的出現(xiàn)并作出重傳請求的編碼技術(shù)。
糾錯包括塊碼(block code)方案和卷積碼方案,在塊碼方案中,向預(yù)定長度的信息(信號)添加預(yù)定長度的冗余,使得接收側(cè)能夠糾正錯誤;在卷積碼方案中,編碼器具有存儲器,以在編碼期間除了使用當(dāng)前輸入的信號之外還使用之前輸入的信號的一部分。
塊碼包括漢明碼(Hamming code)、作為循環(huán)碼的Reed-Solomon碼、BCH(Bose-Chaudhuri-Hocquenghem)碼和循環(huán)冗余校驗(CRC)碼。卷積碼包括Viterbi碼和turbo碼。
奇偶校驗普遍用于信息比特的數(shù)量較小并且錯誤產(chǎn)生的概率較低的情況。盡管奇偶校驗由于其簡單性而廣泛用于異步通信,但是當(dāng)錯誤數(shù)量為偶數(shù)時難以檢測錯誤。奇偶校驗包括奇數(shù)奇偶校驗和偶數(shù)奇偶校驗,在奇數(shù)奇偶校驗中,字符編碼奇偶比特中的1的數(shù)量設(shè)定為奇數(shù);在偶數(shù)奇偶校驗中,字符編碼奇偶比特中的1的數(shù)量設(shè)定為偶數(shù)。
作為檢錯方法中的一種的CRC是指以下這種技術(shù)發(fā)送側(cè)向幀校驗序列(FCS)添加由多項式從所發(fā)送的數(shù)據(jù)中提取的結(jié)果、并發(fā)送附加后的字段,接收側(cè)通過對所提取的結(jié)果是否與在接收側(cè)通過同一方法執(zhí)行的提取結(jié)果相同進(jìn)行確認(rèn),來檢查錯誤。CRC比較強(qiáng)大,并且其硬件結(jié)構(gòu)比較簡單。通過將要由發(fā)送側(cè)發(fā)送的原始數(shù)據(jù)幀除以CRC生成多項式(generator polynomial)所獲得的余數(shù)為FCS。需要CRC生成多項式(作為這種除法的除數(shù))來生成FCS。將FCS附加到原始數(shù)據(jù)幀的結(jié)尾,使得所獲得的幀(將FCS添加到原始數(shù)據(jù)上)可以準(zhǔn)確地被預(yù)定多項式所相除。也就是說,將針對原始數(shù)據(jù)幀所計算的FCS附加到幀的結(jié)尾。這里,該預(yù)定多項式稱為除數(shù)或CRC多項式。
接收側(cè)在接收到所得到的幀之后執(zhí)行CRC。接收側(cè)對通過將所接收到的數(shù)據(jù)幀除以在傳輸期間所使用的同一CRC多項式所得到的余數(shù)進(jìn)行檢查。接收側(cè)通過對將與冗余一起發(fā)送的數(shù)據(jù)除以原始數(shù)據(jù)所獲取的余數(shù)是否為0進(jìn)行檢查,來檢測錯誤。如果余數(shù)不為0,則判定在傳輸期間發(fā)生了錯誤。
發(fā)明內(nèi)容
在通常使用的CRC附加方法和數(shù)據(jù)塊分段(segment)方法中,將一個CRC碼附加到數(shù)據(jù)塊上,然后對該數(shù)據(jù)塊進(jìn)行分段,由此以碼塊形式來發(fā)送該數(shù)據(jù)塊。在這種情況下,接收側(cè)接收全部被分段的塊,并依次組合這些碼塊。接收側(cè)可以通過CRC,來判定所恢復(fù)的數(shù)據(jù)塊是否包含錯誤。因此,由于針對所恢復(fù)的數(shù)據(jù)塊是否包含錯誤的判定是在依次恢復(fù)了全部碼塊之后作出的,因此不能迅速地檢測出錯誤。
此外,如果錯誤出現(xiàn)在所接收到的數(shù)據(jù)塊的任何位置,則接收側(cè)所執(zhí)行的錯誤恢復(fù)過程會由于碼塊數(shù)量的增大而變得復(fù)雜。
此外,應(yīng)當(dāng)考慮附加到各個碼塊的CRC碼,以計算碼塊的數(shù)量和尺寸。然而,通過通常使用的數(shù)據(jù)塊分段單元來計算碼塊的數(shù)量和尺寸的方法并不考慮將CRC碼附加到各個碼塊上這一情況。
設(shè)計用于解決這些問題的本發(fā)明提供了一種有效的數(shù)據(jù)傳輸方法。
本發(fā)明的一個目的是提供在考慮附加到各個碼塊的檢錯碼的尺寸的情況下來對數(shù)據(jù)塊進(jìn)行分段的各種方法。
本發(fā)明的另一個目的是提供計算碼塊的數(shù)量的各種方法。
本發(fā)明的另一個目的是提供在考慮碼塊的數(shù)量和尺寸、和/或檢錯碼的尺寸的情況下來分配數(shù)據(jù)的各種方法。
本發(fā)明的另一目的是提供一種基于上述目的的有效的數(shù)據(jù)傳輸方法。
本發(fā)明描述了在無線接入系統(tǒng)中對數(shù)據(jù)塊進(jìn)行分段的示例性實施方式。本發(fā)明還描述了一種在考慮檢錯碼的尺寸的情況下來對數(shù)據(jù)塊進(jìn)行分段的方法和一種將檢錯碼附加到碼塊的方法。
根據(jù)本發(fā)明的一個方面,提供了一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)的方法,該方法包括以下步驟通過將第一檢錯碼附加到所述數(shù)據(jù)來生成輸入比特序列;如果所述輸入比特序列的尺寸B大于碼塊的最大尺寸Z,則利用所述輸入比特序列的尺寸B、所述多個碼塊的最大尺寸Z以及要附加到所述多個碼塊中的各個碼塊的第二檢錯碼的尺寸L,來計算所述多個碼塊的數(shù)量C;利用所述多個碼塊的數(shù)量C、所述第二檢錯碼的尺寸L以及所述輸入比特序列的尺寸B,來計算修改后的輸入比特序列的尺寸B′;基于通過將所述修改后的輸入比特序列的尺寸B′除以所述多個碼塊的數(shù)量C所獲得的值,來從多個預(yù)定值中獲取所述多個碼塊的尺寸K;對所述輸入比特序列進(jìn)行分段,以具有所述多個碼塊的數(shù)量C和所述多個碼塊的尺寸K;通過將所述第二檢錯碼附加到分段后的多個所述輸入比特序列中的各個輸入比特序列,來生成所述多個碼塊;以及對所述多個碼塊進(jìn)行信道編碼。
可以將所述多個碼塊的數(shù)量C設(shè)定為以下這種整數(shù)對通過將所述輸入比特序列的尺寸B除以從所述多個碼塊的最大尺寸Z中減去要附加到所述多個碼塊中的各個碼塊的所述第二檢錯碼的尺寸L所得到的結(jié)果而獲取的值進(jìn)行向上取整所得到的整數(shù)。
可以通過不同的多項式來生成所述第一檢錯碼和所述第二檢錯碼。
所述輸入比特序列的尺寸B可以設(shè)定為為通過將所述數(shù)據(jù)的尺寸A加上所述第一檢錯碼的尺寸獲得的值,并且其中,還另外附加要附加到所述多個碼塊中的各個碼塊的所述第二檢錯碼,以檢測所述多個碼塊中的各個碼塊是否包含錯誤。
如果所述輸入比特序列的尺寸B小于所述多個碼塊的最大尺寸Z,則可以將所述多個碼塊的數(shù)量C設(shè)定為1。
可以將所述修改后的輸入比特序列的尺寸B′設(shè)定為以下這種值所述多個碼塊的數(shù)量C乘以要包含于所述多個碼塊中的各個碼塊的所述第二檢錯碼的尺寸L、再加上所述輸入比特序列的尺寸B所獲取的值。所述多個碼塊的尺寸K可以滿足以下這種條件通過將所述多個碼塊的數(shù)量C乘以所述多個碼塊的尺寸K所獲得的值大于或等于所述修改后的輸入比特序列的尺寸B′。
所述多個碼塊的尺寸K中的第一碼塊的尺寸K+可以具有所述預(yù)定值當(dāng)中最小的尺寸,并且所述多個碼塊的尺寸K中的第二碼塊的尺寸K-可以具有所述多個預(yù)定值當(dāng)中最大的尺寸。
可以將所述第二碼塊的數(shù)量C-設(shè)定為以下這種值所述多個碼塊的數(shù)量C乘以所述第一碼塊的尺寸K+、然后減去所述修改后的輸入比特序列的尺寸B′、再除以所述第一碼塊的尺寸K+與所述第二碼塊的尺寸K-之間的差所獲得的值進(jìn)行向下取整所得到的整數(shù)。
可以將所述第一碼塊的數(shù)量C+設(shè)定為以下這種值通過從所述多個碼塊的數(shù)量C中減去所述第二碼塊的數(shù)量C-所獲得的值。
所述發(fā)送數(shù)據(jù)的方法還可以包括以下步驟通過從向?qū)⑺龅诙a塊的數(shù)量C-乘以所述第二碼塊的尺寸K-所獲得的值加上將所述第一碼塊的數(shù)量C+乘以所述第一碼塊的尺寸K+所獲得的值而獲得的結(jié)果中減去所述修改后的輸入比特序列的尺寸,來計算填充比特的長度F;以及向所述多個碼塊中的第一碼塊分配所述填充比特。
所述發(fā)送數(shù)據(jù)的方法還可以包括以下步驟向所述多個碼塊的第一碼塊中的、除填充比特的尺寸和所述第二檢錯碼的尺寸之外的區(qū)域分配數(shù)據(jù);以及向從第二碼塊開始的多個碼塊中的、除所述第二檢錯碼的尺寸之外的區(qū)域分配所述數(shù)據(jù)。
向所述第一碼塊分配數(shù)據(jù)的步驟還可以包括以下步驟將所述第二檢錯碼附加到所述第一碼塊;并且向從所述第二碼塊開始的碼塊分配數(shù)據(jù)的步驟還可以包括以下步驟將所述第二檢錯碼附加到從所述第二碼塊開始的所述多個碼塊。
所述多個碼塊的最大尺寸Z為6144個比特。
根據(jù)本發(fā)明的另一個方面,提供了一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)的方法,該方法包括以下步驟通過將第一檢錯碼附加到第一輸入比特序列來生成第二輸入比特序列;利用所述第一輸入比特序列的尺寸A和所述第一檢錯碼的尺寸L,來計算所述第二輸入比特序列的尺寸B;如果所述第二輸入比特序列的尺寸B大于多個碼塊的最大尺寸Z,則利用所述第二輸入比特序列的尺寸B、所述多個碼塊的最大尺寸Z以及要附加到所述多個碼塊中的各個碼塊的第二檢錯碼的尺寸L,來計算所述多個碼塊的數(shù)量;利用所述多個碼塊的數(shù)量C、所述第二檢錯碼的尺寸L以及所述第二輸入比特序列的尺寸B,來計算修改后的第二輸入比特序列的尺寸B′;基于通過將所述修改后的第二輸入比特序列的尺寸B除以所述多個碼塊的數(shù)量C所獲得的值,來從多個預(yù)定值中獲取所述多個碼塊的尺寸K、K+、和K-;對所述第二輸入比特序列進(jìn)行分段,以具有所述多個碼塊的數(shù)量C和所述多個碼塊的所獲取的尺寸K、K+、和K-;通過將所述第二檢錯碼附加到分段后的多個所述第二輸入比特序列中的各個第二輸入比特序列,來生成所述多個碼塊;以及對所述多個碼塊進(jìn)行信道編碼。
根據(jù)本發(fā)明的另一個方面,提供了一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)的方法,該方法包括以下步驟通過將第一檢錯碼附加到第一輸入比特序列來生成第二輸入比特序列;利用所述第一輸入比特序列的尺寸A和所述第一檢錯碼的尺寸L,來計算所述第二輸入比特序列的尺寸B;如果所述第二輸入比特序列的尺寸B大于碼塊的最大尺寸Z,則利用所述第二輸入比特序列的尺寸B、所述多個碼塊的最大尺寸Z以及要附加到所述多個碼塊中的各個碼塊的第二檢錯碼的尺寸L,來計算所述多個碼塊的數(shù)量C;利用所述多個碼塊的數(shù)量C、所述第二檢錯碼的尺寸L以及所述第二輸入比特序列的尺寸B,來計算修改后的第二輸入比特序列的尺寸B′;通過將所述修改后的第二輸入比特序列的尺寸B′除以所述多個碼塊的數(shù)量C來獲取所述多個碼塊的尺寸Kr;對所述第二輸入比特序列進(jìn)行分段,以具有所述多個碼塊的數(shù)量C和所獲取的所述多個碼塊的尺寸Kr;通過將所述第二檢錯碼附加到分段后的多個所述第二輸入比特序列中的各個第二輸入比特序列,來生成所述多個碼塊;以及對所述多個碼塊進(jìn)行信道編碼。
通過不同的多項式來生成所述第一檢錯碼和所述第二檢錯碼。
根據(jù)本發(fā)明的另一個方面,提供了一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)的方法,該方法包括以下步驟如果所述輸入比特序列的尺寸B大于多個碼塊的最大尺寸Z,則利用所述輸入比特序列的尺寸B、所述多個碼塊的最大尺寸Z以及要附加到所述多個碼塊中的各個碼塊的第二檢錯碼的尺寸L,來計算所述多個碼塊的數(shù)量C;利用所述多個碼塊的數(shù)量C、所述檢錯碼的尺寸L以及所述輸入比特序列的尺寸B,來計算修改后的輸入比特序列的尺寸B′;基于通過將所述修改后的輸入比特序列的尺寸B′除以所述多個碼塊的數(shù)量C所獲得的值,來從多個預(yù)定值中獲取所述多個碼塊的尺寸K;以及對所述輸入比特序列進(jìn)行分段,以具有所述多個碼塊的數(shù)量C和所述多個碼塊的尺寸K。
根據(jù)本發(fā)明的另一個方面,提供了一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)的方法,該方法包括以下步驟通過將第一檢錯碼附加到傳輸塊來生成輸入比特序列;如果所述輸入比特序列的尺寸B大于多個碼塊的最大尺寸Z,則利用所述輸入比特序列的尺寸B、所述多個碼塊的最大尺寸Z以及要附加到所述多個碼塊中的各個碼塊的第二檢錯碼的尺寸L,來計算所述多個碼塊的數(shù)量C;利用所述多個碼塊的數(shù)量C、所述檢錯碼的尺寸L以及所述輸入比特序列的尺寸B,來計算修改后的輸入比特序列的尺寸B′;通過將所述修改后的輸入比特序列的尺寸B′除以所述多個碼塊的數(shù)量C來獲取所述多個碼塊的尺寸Kr;以及對所述輸入比特序列進(jìn)行分段,以具有所述多個碼塊的數(shù)量C和所述多個碼塊的尺寸Kr。
本發(fā)明具有以下優(yōu)點。
首先,因為接收側(cè)能夠在任何時刻接收到了碼塊時來判定是否存在錯誤,因此能夠執(zhí)行高效的錯誤恢復(fù)過程。
其次,通過在考慮CRC碼的長度的情況下來計算碼塊的數(shù)量并對數(shù)據(jù)塊進(jìn)行分段,能夠準(zhǔn)確地執(zhí)行對數(shù)據(jù)塊的分段,并且能夠準(zhǔn)確地附加CRC碼。
第三,當(dāng)將數(shù)據(jù)塊分段成碼塊時,考慮CRC碼的長度計算碼塊的數(shù)量,然后將數(shù)據(jù)分配給碼塊,由此提高了數(shù)據(jù)處理效率。
第四,如果輸入到系統(tǒng)的比特序列的尺寸小于該系統(tǒng)中能夠進(jìn)行劃分的最大尺寸,則不必執(zhí)行對輸入比特序列的分段。相反,將相應(yīng)的輸入比特用于作碼塊。因為可以使用檢測碼來對輸入比特進(jìn)行檢錯,所以不必重新附加該檢錯碼。因此,能夠迅速處理該碼塊。
第五,通過本發(fā)明的各種實施方式可以有效地發(fā)送數(shù)據(jù)。
包括附圖以提供對本發(fā)明的進(jìn)一步理解,附圖示出了本發(fā)明的實施方式,并與說明書一起用于解釋本發(fā)明的原理。
在附圖中 圖1是例示了由CRC附加單元和數(shù)據(jù)塊分段單元中的各個單元執(zhí)行的過程的圖; 圖2是例示了將數(shù)據(jù)塊轉(zhuǎn)換成碼塊的過程的圖; 圖3是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在考慮CRC尺寸的情況下對數(shù)據(jù)塊進(jìn)行分段的過程的圖; 圖4是例示了根據(jù)本發(fā)明的一個示例性實施方式的、將CRC碼附加到多個碼塊的過程的一個示例的圖; 圖5是例示了根據(jù)本發(fā)明的一個示例性實施方式的、將CRC碼附加到多個碼塊的過程的另一個示例的圖; 圖6是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在考慮CRC尺寸的情況下對數(shù)據(jù)塊進(jìn)行分段并附加CRC碼的過程的圖; 圖7是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在考慮CRC尺寸的情況下將數(shù)據(jù)塊轉(zhuǎn)換成碼塊的過程的圖; 圖8是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在考慮CRC尺寸的情況下對數(shù)據(jù)塊進(jìn)行分段的過程的流程圖; 圖9是例示了根據(jù)本發(fā)明的一個示例性實施方式的、計算多個碼塊的數(shù)量的過程的流程圖; 圖10是例示了根據(jù)本發(fā)明的一個示例性實施方式的、利用修改后的輸入比特序列的尺寸來對數(shù)據(jù)塊進(jìn)行分段的過程的流程圖;以及 圖11是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在碼塊的數(shù)量為1時將數(shù)據(jù)塊轉(zhuǎn)換成碼塊的過程的流程圖。
具體實施例方式 本發(fā)明提供了一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)和對碼塊進(jìn)行分段的方法,特別是一種在考慮檢錯碼的尺寸的情況下來對數(shù)據(jù)塊進(jìn)行分段的方法以及一種獲取多個碼塊的數(shù)量的方法。
下面描述的示例性實施方式是本發(fā)明的構(gòu)成元素和特征的多個組合。除非另有說明,否則這些構(gòu)成元素或特征應(yīng)當(dāng)視為是可選的??梢詧?zhí)行各個構(gòu)成元素或特征而無需與其它構(gòu)成元素或特征進(jìn)行組合。此外,可以將一些構(gòu)成元素和/或特征彼此進(jìn)行組合,以構(gòu)成本發(fā)明的實施方式。可以改變本發(fā)明的實施方式中所述操作的次序。任何一個實施方式中的構(gòu)造可以包括在另一實施方式中,并且可由另一實施方式的相應(yīng)構(gòu)造來代替。
在本發(fā)明的以下描述中,如果對已知過程或步驟的詳細(xì)描述會使本發(fā)明的主題模糊不清,則省略這種描述。
在本發(fā)明的示例性實施方式中,對基站與移動臺之間的數(shù)據(jù)發(fā)送和接收關(guān)系進(jìn)行了描述。這里,術(shù)語“基站”是指直接與移動臺進(jìn)行通信的網(wǎng)絡(luò)終端節(jié)點。在一些情況下,可以由基站的上級節(jié)點(upper node)來執(zhí)行所述由基站執(zhí)行的特定操作。
也就是說,明顯的是,在由包括基站在內(nèi)的多個網(wǎng)絡(luò)節(jié)點所構(gòu)成的網(wǎng)絡(luò)中,可以由基站或除了該基站之外的其它網(wǎng)絡(luò)節(jié)點來執(zhí)行與移動臺進(jìn)行通信所執(zhí)行的各種操作。術(shù)語“基站”可以用術(shù)語“固定站”、“節(jié)點B”、“eNode B(eNB)”、“接入點”等代替。術(shù)語“移動臺(MS)”可以用術(shù)語“終端”、“用戶設(shè)備(UE)”、“移動用戶臺(MSS)”等代替。
此外,術(shù)語“發(fā)送側(cè)”是指發(fā)送數(shù)據(jù)或語音業(yè)務(wù)的節(jié)點,術(shù)語“接收側(cè)”是指接收數(shù)據(jù)或語音業(yè)務(wù)的節(jié)點。因此,在上行鏈路中,移動臺可能是發(fā)送側(cè)而基站可能是接收側(cè)。類似地,在下行鏈路中,移動臺可能是接收側(cè)而基站可能是發(fā)送側(cè)。
同時,移動臺可以包括個人數(shù)字助理(PDA)、蜂窩電話、個人通信業(yè)務(wù)(PCS)電話、全球移動系統(tǒng)(GSM)電話、寬帶碼分多址(WCDMA)電話、移動寬帶系統(tǒng)(MBS)電話等。
本發(fā)明的實施方式可以通過各種手段實現(xiàn),例如,硬件、固件、軟件或它們的組合。
在硬件設(shè)置中,根據(jù)本發(fā)明的示例性實施方式的方法可以通過專用集成電路(ASIC)、數(shù)字信號處理器(DSP)、數(shù)字信號處理設(shè)備(DSPD)、可編程邏輯器件(PLD)、現(xiàn)場可編程門陣列(FPGA)、處理器、控制器、微控制器、微處理器等中的一個或更多個來實現(xiàn)。
在固件或軟件設(shè)置中,根據(jù)本發(fā)明的示例性實施方式的方法可以通過執(zhí)行上述功能或操作的模塊、過程或函數(shù)等來實現(xiàn)。軟件代碼可以存儲在存儲單元中,并且可以由處理器驅(qū)動。存儲單元設(shè)置在處理器的內(nèi)部或外部,并且可以通過公知的各種方式來向處理器發(fā)送數(shù)據(jù)和從處理器接收數(shù)據(jù)。
可以由在至少一種無線接入系統(tǒng)(例如,IEEE 802系統(tǒng)、3GPP系統(tǒng)、3GPP LTE系統(tǒng)和3GPP2系統(tǒng))中所公開的文獻(xiàn)來支持本發(fā)明的各個實施方式。具體地說,3GPP TS 36.212V8.0.0(2007-09)到3GPP TS 36.212V8.3.0(2008-05)中所公開的文獻(xiàn)可以支持本發(fā)明的各個實施方式。
以下詳細(xì)描述包括一些具體術(shù)語,以便提供對本發(fā)明的完整理解。然而,可以在不脫離本發(fā)明的精神和范圍的情況下修改這些具體術(shù)語。
圖1是例示了由CRC附加單元和數(shù)據(jù)塊分段單元中的各個單元執(zhí)行的過程的圖。
現(xiàn)在參照圖1來描述常用的CRC附加單元和數(shù)據(jù)塊分段單元。如果需要,數(shù)據(jù)塊100可以被分段成多個碼塊。通過對數(shù)據(jù)塊100進(jìn)行分段來生成碼塊160。
如果用戶輸入了數(shù)據(jù)塊100,則CRC附加單元120將CRC碼附加到數(shù)據(jù)塊100。包含CRC碼在內(nèi)的數(shù)據(jù)塊被數(shù)據(jù)塊分段單元140劃分成必要長度的數(shù)據(jù)塊,并構(gòu)成具有一個或更多個長度的碼塊160。在圖1的右側(cè)中依次示出了該過程。
CRC附加單元120將CRC碼附加到具有指定長度的數(shù)據(jù)塊,使得接收側(cè)能夠利用該數(shù)據(jù)塊100來檢測錯誤。為此,CRC附加單元120基于輸入數(shù)據(jù)塊、利用CRC生成式來生成具有指定長度的CRC奇偶校驗比特(步驟S101)。接著,CRC附加單元120將該CRC奇偶校驗比特按照前向或后向方式附加到前向數(shù)據(jù)塊,以生成串連連接形成的數(shù)據(jù)塊(步驟S102)。
由數(shù)據(jù)塊分段單元140將附加有CRC的數(shù)據(jù)塊分段成一個或多個碼塊。數(shù)據(jù)塊分段單元140通過以下四個過程來將輸入數(shù)據(jù)塊分段成一個或更多個碼塊。
數(shù)據(jù)塊分段單元140將碼塊的數(shù)量設(shè)定成以下這種整數(shù)對將附加有CRC的數(shù)據(jù)塊的尺寸除以碼塊的最大允許尺寸的結(jié)果進(jìn)行向上取整所得到的整數(shù)(步驟S103)。
數(shù)據(jù)塊分段單元140根據(jù)步驟S103中所確定的碼塊的數(shù)量來計算各個碼塊的尺寸(步驟S104)。
在步驟S104中,對各個碼塊的尺寸相加的總和可能大于附加有CRC的數(shù)據(jù)塊的尺寸。在這種情況下,將通過從全部碼塊的尺寸中減去附加有CRC的數(shù)據(jù)塊的尺寸所獲得的值設(shè)定為填充比特的長度(步驟S105)。
如果確定了碼塊的數(shù)量和尺寸與填充比特的長度,則數(shù)據(jù)塊分段單元140對附加有CRC的數(shù)據(jù)塊進(jìn)行分段,并向各個碼塊分配數(shù)據(jù)(步驟S106)。在步驟S106中,將填充比特和數(shù)據(jù)依次分配到碼塊當(dāng)中的第一塊的開頭,并且從第二塊開始依次分配后面的數(shù)據(jù)。
圖2是例示了將數(shù)據(jù)塊轉(zhuǎn)換成碼塊的過程的圖。
在圖2中,可以利用圖1中所使用的各個單元和方法。
參照圖2,將數(shù)據(jù)塊200輸入到CRC附加單元220中。通過CRC附加單元220來將CRC比特附加到數(shù)據(jù)塊200,以生成附加有CRC的數(shù)據(jù)塊230。將附加有CRC的數(shù)據(jù)塊輸入到數(shù)據(jù)塊分段單元240中,然后將其分段成多個碼塊。將填充比特附加到碼塊260的第一塊的開頭,并且向其它部分分配數(shù)據(jù)。從第二碼塊開始依次分配數(shù)據(jù)。
在本發(fā)明的示例性實施方式中,假設(shè)將CRC碼用作一種所需要的檢錯碼,其能夠由數(shù)據(jù)塊分段單元附加到碼塊中。此外,術(shù)語“數(shù)據(jù)塊”是指輸入到數(shù)據(jù)塊分段單元中的輸入比特,并且可以稱為“第一數(shù)據(jù)塊”。如果對輸入比特執(zhí)行分段,則生成碼塊(即,“第二數(shù)據(jù)塊”)。
<第一實施方式> 圖3是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在考慮CRC尺寸的情況下對數(shù)據(jù)塊進(jìn)行分段的過程的圖。
參照圖3,將數(shù)據(jù)塊(例如,第一數(shù)據(jù)塊300)輸入到數(shù)據(jù)塊分段單元320中,并且將其分段成一個或更多個碼塊(例如,第二數(shù)據(jù)塊)。將數(shù)據(jù)依次分配到這些碼塊。將多個碼塊輸入到CRC附加單元340。在這種情況下,數(shù)據(jù)塊可以包括檢錯碼,并且檢錯碼的尺寸優(yōu)選地可以是24比特。
CRC附加單元340生成CRC碼,并且,除了在數(shù)據(jù)塊由包括檢錯碼在內(nèi)的一個碼塊構(gòu)成時之外(例如,除了在數(shù)據(jù)塊的尺寸B小于或等于碼塊的最大尺寸Z時之外),將CRC碼附加到多個碼塊中。因此,通過數(shù)據(jù)塊分段單元320和CRC附加單元340來將數(shù)據(jù)塊300分段成碼塊360。在圖3中,碼塊360是指一個或更多個分段后的數(shù)據(jù)塊。
參照圖3,如果將數(shù)據(jù)塊300輸入到數(shù)據(jù)塊分段單元320中,則數(shù)據(jù)塊分段單元320針對輸入的數(shù)據(jù)來計算碼塊的數(shù)量C。在這種情況下,數(shù)據(jù)塊分段單元320可以在考慮要附加到各個最終碼塊的CRC碼的尺寸L的情況下來計算多個碼塊的數(shù)量C(步驟S301)。
此后,將描述步驟S301中所使用的用于計算多個碼塊的數(shù)量C的各種方法。
現(xiàn)在來描述根據(jù)本發(fā)明的一個示例性實施方式的、在步驟S301中計算多個碼塊的數(shù)量的第一方法。
式1例示了計算多個碼塊的數(shù)量C的一個示例。
[式1]
是對x進(jìn)行向上取整所得到的整數(shù) if C′*L+B>C′*Z C=C′+1 else C=C′ end 數(shù)據(jù)塊分段單元320將通過對數(shù)據(jù)塊的尺寸B除以碼塊的最大尺寸Z得到的值進(jìn)行向上取整所得到的整數(shù),設(shè)定為臨時值C′。如果臨時值C′乘以CRC的尺寸L的結(jié)果加上數(shù)據(jù)塊的尺寸B所獲得的值大于臨時值C′乘以碼塊的最大尺寸Z所獲得的值,則將碼塊的數(shù)量C設(shè)定為臨時值C′加上1所獲得的值,否則,將碼塊的數(shù)量C設(shè)定為臨時值C′。
同時,當(dāng)輸入到數(shù)據(jù)塊分段單元的數(shù)據(jù)塊的尺寸B小于或等于碼塊的最大尺寸Z時,可以使用下面示出的式2。
[式2] if B ≤Z C=1 else
If C′*L+B>C′*Z C=C′+1 else C=C′ end end 式1和式2使用臨時值C′來計算多個碼塊的數(shù)量C。也就是說,可以通過獲取通過對輸入到數(shù)據(jù)塊分段單元320的數(shù)據(jù)塊的尺寸除以碼塊的最大尺寸的結(jié)果進(jìn)行向上取整所獲得的臨時值,來準(zhǔn)確地計算多個碼塊的數(shù)量。
式3和式4例示了式1和式2的其它形式。也就是說,不利用臨時值C′,而是直接計算多個碼塊的數(shù)量。
[式3]
else
end 同時,當(dāng)輸入到數(shù)據(jù)塊分段單元的數(shù)據(jù)塊的尺寸B小于或等于碼塊的最大尺寸Z時,可以使用下面的式4。
[式4] If B≤Z C=1 else
else
end end 現(xiàn)在來描述根據(jù)本發(fā)明的一個示例性實施方式的、在上述步驟S301中計算多個碼塊的數(shù)量的第二方法。
式5例示了利用修改后的輸入比特序列的尺寸B′來計算多個碼塊的數(shù)量C的方法。
[式5]
else
end
在式5中,計算修改后的輸入比特序列的尺寸B′,以獲取碼塊的數(shù)量。假設(shè),“M”表示通過對數(shù)據(jù)塊的尺寸B除以碼塊的最大尺寸Z的結(jié)果進(jìn)行向上取整所獲得的值乘以CRC的尺寸L、然后加上數(shù)據(jù)塊的尺寸B。假設(shè),“N”表示通過對數(shù)據(jù)塊尺寸B除以碼塊的最大尺寸Z的結(jié)果進(jìn)行向上取整所獲得的值乘以碼塊的最大尺寸Z。
如果M大于N,則用于計算碼塊的數(shù)量C和尺寸K的、修改后的輸入比特序列的尺寸B′取以下這種值即,通過對數(shù)據(jù)塊尺寸B除以碼塊的最大尺寸Z的結(jié)果進(jìn)行向上取整、然后加1、再乘以CRC的尺寸L、再加上數(shù)據(jù)塊的尺寸B所獲得的值。
如果M小于N,則修改后的輸入比特序列的尺寸B′取以下這種值即,通過對數(shù)據(jù)塊尺寸B除以碼塊的最大尺寸Z的結(jié)果進(jìn)行向上取整、然后乘以CRC的尺寸L、再加上數(shù)據(jù)塊的尺寸B所獲得的值。
因此,將碼塊的數(shù)量C設(shè)定為以下這種整數(shù)通過對用于計算碼塊的數(shù)量C和碼塊尺寸K的、修改后的輸入比特序列的尺寸B′除以碼塊的最大尺寸Z的結(jié)果進(jìn)行向上取整所獲得的整數(shù)。
同時,當(dāng)輸入到數(shù)據(jù)塊分段單元的數(shù)據(jù)塊的尺寸B小于或等于碼塊的最大尺寸Z時,使用下式6。
[式6] if B≤Z B′=B else
else
end end
不同于式1和式2,式5和式6示出了在不使用臨時值C′的情況下、利用修改后的輸入比特序列的尺寸B′來計算多個碼塊的數(shù)量C的方法。也就是說,可以通過使用修改后的輸入比特序列的尺寸B′獲取碼塊的數(shù)量C。
現(xiàn)在來描述根據(jù)本發(fā)明的一個示例性實施方式的、在步驟S301中計算多個碼塊的數(shù)量的第三方法。
式7例示了計算碼塊的數(shù)量C的另一個示例。
[式7]
可以將多個碼塊的數(shù)量C設(shè)定為以下這種整數(shù)對通過將數(shù)據(jù)塊的尺寸B除以從碼塊的最大尺寸Z中減去CRC的尺寸L所得到的值而得到的結(jié)果進(jìn)行向上取整所得到的整數(shù)。
同時,如果輸入到數(shù)據(jù)塊分段單元的數(shù)據(jù)塊的尺寸B小于或等于碼塊的最大尺寸Z,則可以使用式8。
[式8] If B≤Z C=1 else
end 式7和式8例示了在考慮用于各個碼塊的CRC尺寸L的情況下來計算碼塊的數(shù)量C的方法。也就是說,當(dāng)對數(shù)據(jù)塊的尺寸B進(jìn)行分段時,可以通過將數(shù)據(jù)塊的尺寸B除以從碼塊的最大尺寸Z中減去CRC尺寸L而獲得的值,來考慮CRC的尺寸L。結(jié)果,可以根據(jù)用戶要求來準(zhǔn)確執(zhí)行對數(shù)據(jù)塊的分段。
現(xiàn)在來描述根據(jù)本發(fā)明的一個示例性實施方式的、在步驟S301中計算多個碼塊的數(shù)量C的第四方法。
下面示出的式9例示了碼塊的最大尺寸Z可變的情況。
[式9] Z′=Z-a
數(shù)據(jù)塊分段單元可以將多個碼塊的數(shù)量C設(shè)定為以下這種整數(shù)對將數(shù)據(jù)塊的尺寸B除以比碼塊的最大尺寸Z小“a”(這里,“a”為自然數(shù))的值Z′的結(jié)果進(jìn)行向上取整所得到的整數(shù)。這里,“a”可以是根據(jù)CRC尺寸L或系統(tǒng)環(huán)境的必要尺寸。
同時,如果數(shù)據(jù)塊(或者輸入比特)的尺寸B小于碼塊的最大尺寸Z,則可以使用下式10。
[式10] if B≤Z C=1 else Z′=Z-a
end 現(xiàn)在來描述根據(jù)本發(fā)明的一個示例性實施方式的、在步驟S301中計算多個碼塊的數(shù)量的第五方法。
數(shù)據(jù)塊分段單元利用特定值x來代換碼塊的最大尺寸Z,并將多個碼塊的數(shù)量C設(shè)定為對將數(shù)據(jù)塊的尺寸B除以特定值x的結(jié)果進(jìn)行向上取整所得到的整數(shù)。
下式11例示了計算碼塊的數(shù)量C的一個示例。
[式11] Z=x
同時,如果輸入到數(shù)據(jù)塊分段單元的數(shù)據(jù)塊(或者輸入比特)的尺寸B小于或等于碼塊的最大尺寸Z,則可以使用式12。
[式12] if B≤Z C=1 else Z=x
end 當(dāng)碼塊的最大尺寸Z可變時可以使用式11和式12。也就是說,由于碼塊的最大尺寸可以根據(jù)系統(tǒng)環(huán)境而改變,因此可以靈活使用式11和式12。
參照圖3,如果在步驟S301中確定了碼塊的數(shù)量C,則通過使用碼塊的數(shù)量C和修改后的輸入比特序列的尺寸B′中的至少一項,來計算各個碼塊的尺寸和具有特定長度的碼塊的數(shù)量(步驟S302)。
下面,描述根據(jù)本發(fā)明的一個示例性實施方式的、在步驟S302中計算碼塊的尺寸K的各種方法。
碼塊的尺寸K可以根據(jù)系統(tǒng)要求而具有各種尺寸。在本發(fā)明的示例性實施方式中,假設(shè)了各個碼塊尺寸K恒定或具有尺寸K+和K-的情況。然而明顯的是,可以使用各種尺寸的碼塊。在本發(fā)明的示例性實施方式中,從數(shù)據(jù)塊(或輸入比特)中分段得到碼塊,并且碼塊可以稱為“段(segment)”。
現(xiàn)在來描述在步驟S302中當(dāng)各個碼塊尺寸彼此相同的情況下計算碼塊的尺寸K的第一方法。
式13例示了當(dāng)各個碼塊的尺寸恒定時計算碼塊的尺寸K的一個示例。
[式13]
式13示出了當(dāng)各個碼塊的尺寸恒定時計算碼塊的尺寸K的一種方法。也就是說,將碼塊的尺寸K設(shè)定為以下這種整數(shù)對修改后的輸入比特序列的尺寸B′除以多個碼塊的數(shù)量C的結(jié)果進(jìn)行向上取整所獲得的整數(shù)。在這種情況下,修改后的輸入比特尺寸B′為用于獲取碼塊數(shù)量和尺寸的臨時值。
如果在步驟S301中沒有計算出用于計算碼塊的數(shù)量及尺寸的、修改后的輸入比特序列的尺寸B′,則可以將通過多個碼塊的數(shù)量C乘以CRC的尺寸L、然后向相乘結(jié)果加上數(shù)據(jù)塊的尺寸B所獲得的值(即,C×L+B),用作修改后的輸入比特序列的尺寸B′。
現(xiàn)在來描述在步驟S302中當(dāng)碼塊的尺寸k具有特定值K+或K-的情況下計算第一碼塊的尺寸K+的第二方法。
式14例示了計算第一碼塊的尺寸K+的一個示例。
[式14] K+為K的最小值, 其中,K滿足C*K≥B+C*L或者滿足C*K≥B′ 具有尺寸K+的碼塊使用下面示出的表1中的值K。在這種情況下,值K的條件是碼塊的數(shù)量C乘以K所獲得的結(jié)果大于或等于碼塊的數(shù)量C乘以CRC的尺寸L的值然后加上輸入序列的尺寸B所獲得的結(jié)果。值K的另一個條件是碼塊的數(shù)量C乘以K所得到的結(jié)果大于或等于修改后的輸入比特序列的尺寸B′。也就是說,值K+可以具有滿足式14的兩個條件中的任何一個條件的多個值K當(dāng)中的最小值。
如果利用式14中所示方法來計算碼塊的尺寸,由于在考慮了CRC的尺寸L的情況下來獲取碼塊的尺寸,因此能夠?qū)⑤斎霐?shù)據(jù)塊(或輸入比特)準(zhǔn)確地分成期望長度。
式15例示了計算第一碼塊的尺寸K+的另一個示例。
[式15] K+為K的最小值, 其中,K滿足C*(K-L)≥B′ 在式15中,具有尺寸K+的碼塊利用表1中滿足下述條件的K的最小值。也就是說,在滿足以下這種條件的多個K值中,其最小值用作K+碼塊的數(shù)量C乘以從K中減去CRC的尺寸L的結(jié)果所獲得的值大于或等于修改后的輸入比特序列的尺寸B′ 當(dāng)式15中修改后的輸入比特序列的尺寸B′設(shè)定為多個碼塊的數(shù)量C乘以CRC的尺寸L的結(jié)果、然后加上輸入比特的尺寸B所獲得的值時,可以使用下式16。
[式16] K+為K的最小值, 其中,K滿足C*(K-L)≥B+C*L 在式16中,具有尺寸K+的碼塊可以使用表1中示出的值K。
下表1例示了式13到式16中可以使用的值K的參數(shù)。
[表1] 在表1中,參數(shù)f1和f2可以根據(jù)作為輸入數(shù)據(jù)尺寸的值K而變化。
現(xiàn)在來描述在步驟S302中當(dāng)碼塊的尺寸K具有特定值K+或K-時計算碼塊的尺寸K-的第三方法。
值K-可以設(shè)定為比在式14到式16中的任何一個中計算出的值K+小的多個值K當(dāng)中的最大值。值K可以使用表1中示出的值。下式17例示了計算值K的一種方法。
[式17] K-為K的最大值, 其中,K滿足K<K+。
當(dāng)利用表1中示出的值和式17來計算K-時,可以在考慮附加有CRC碼的碼塊的尺寸的情況下來準(zhǔn)確地執(zhí)行對輸入數(shù)據(jù)塊(或輸入比特)的分段。
已經(jīng)描述了當(dāng)碼塊的尺寸具有特定尺寸時通過式14到式17來計算碼塊的尺寸K+和K-的方法。在這種情況下,必須獲取分別具有碼塊的尺寸K+和K-的碼塊的數(shù)量C+和C-,以準(zhǔn)確地劃分輸入數(shù)據(jù)塊。
此后,將描述在步驟S302中計算具有特定的尺寸K-的多個碼塊的數(shù)量C-的方法。
式18例示了計算具有尺寸K-的第二碼塊的數(shù)量C-的第一方法。
[式18]
可以通過以下方式來計算第二碼塊的數(shù)量C-碼塊的總數(shù)量C乘以第一碼塊的尺寸K+、然后減去修改后的輸入比特序列的尺寸B′、再除以K+與K-之間的差值ΔK而得到的結(jié)果進(jìn)行向下取整所得到的整數(shù)。修改后的輸入比特序列的尺寸B′是用于計算碼塊的數(shù)量及尺寸的臨時值。
在式18中,利用修改后的輸入比特序列的尺寸B′來計算具有尺寸K-的碼塊的數(shù)量C-。因此,可以在考慮各個碼塊中包含的CRC的尺寸L的情況下來準(zhǔn)確地執(zhí)行對輸入數(shù)據(jù)塊序列(或輸入比特)的分段。
式18可以表述為下式19。
[式19]
式19示出了將修改后的輸入比特序列的尺寸B′設(shè)定為以下這種值多個碼塊的數(shù)量C乘以CRC的尺寸L、然后向相乘結(jié)果加上數(shù)據(jù)塊的尺寸B所獲得的值。
現(xiàn)在來描述在步驟S302中計算具有第二碼塊的尺寸K-的碼塊的數(shù)量C-的第二方法。
式20例示了計算具有尺寸K-的第二碼塊的數(shù)量C-的一個示例。
[式20]
可以通過對C*(K+-L)-B′的值除以K+與K-之間的差D的結(jié)果進(jìn)行向下取整所得到的整數(shù),來計算第二碼塊的數(shù)量C-。
也就是說,式20示出了在考慮要包含在第一碼塊中的CRC尺寸L的情況下來計算第二碼塊的數(shù)量C-的方法。
式21例示了利用修改后的輸入比特序列的尺寸B′來表述式20的一個示例。也就是說,將修改后的輸入比特序列的尺寸B′設(shè)定為以下這種值多個碼塊的數(shù)量C乘以CRC的尺寸L而得到的結(jié)果、然后加上數(shù)據(jù)塊的尺寸B所獲得的值。
[式21]
在步驟S302中計算具有特定尺寸K+的第一碼塊的數(shù)量C+的方法如下。
[式22] C+=C-C- 在式22中,通過從碼塊的總數(shù)量C中減去在式19到式21中所計算的第二碼塊的數(shù)量C-,來計算具有特定尺寸K+的第一碼塊的數(shù)量C+。
再參照圖3,在步驟S302中所計算的各個碼塊的尺寸可以是固定的,或者,各個碼塊可以具有特定尺寸K+或K-。數(shù)據(jù)塊尺寸K可以根據(jù)系統(tǒng)要求而確定。
在劃分?jǐn)?shù)據(jù)塊時,通過對全部碼塊的尺寸進(jìn)行求和所獲得的值可能大于用于計算碼塊的數(shù)量C及碼塊的尺寸K的、修改后的輸入比特序列的尺寸B′。在這種情況下,計算與通過對全部碼塊的尺寸進(jìn)行求和所獲得的值與修改后的輸入比特序列的尺寸B′之間的差相對應(yīng)的填充比特的長度F(步驟S303)。
填充比特用于當(dāng)將檢錯碼附加到從數(shù)據(jù)塊分段得到的碼塊上時,利用碼塊的尺寸來對初始輸入的數(shù)據(jù)塊進(jìn)行均衡。如果碼塊數(shù)量是0,則填充比特長度F也為0。
現(xiàn)在來描述計算填充比特長度F的方法。
可以通過從多個碼塊的數(shù)量C乘以碼塊的尺寸K的結(jié)果中減去修改后的輸入比特序列的尺寸B′,來計算填充比特長度F。
下式23例示了計算填充比特長度F的第一方法。
[式23] F=C*K-B′ 式23示出了當(dāng)將輸入數(shù)據(jù)塊分段成長度相同的碼塊時計算填充比特長度的方法。
下式24利用修改后的輸入比特序列的尺寸B′來表述式23。
[式24] F=C*K-(B+C*L) 在步驟S303中計算填充比特長度F的第二方法如下。
式25例示了計算填充比特長度F的一個示例。也就是說,式25示出了當(dāng)輸入數(shù)據(jù)塊(或輸入比特)具有特定尺寸(例如,K+或K-)時計算填充比特長度的方法。
[式25] F=C+*K++C-*K--B′ 可以通過從全部碼塊的尺寸之和中減去修改后的輸入比特序列的尺寸B′來計算填充比特長度F。也就是說,可以通過從(C+×K+)+(C-×K-)的值中減去修改后的輸入比特序列的尺寸B′,來計算填充比特長度F。
利用式25,即使在從數(shù)據(jù)塊中分段得到的多個碼塊的尺寸彼此不同的情況下仍然也可以應(yīng)用本發(fā)明的這些示例性實施方式。由于能夠當(dāng)碼塊中包含檢錯碼時計算填充比特長度,因此能夠準(zhǔn)確地生成碼塊。
在下式26中,將修改后的輸入比特序列的尺寸B′設(shè)定為以下這種值檢錯碼的尺寸L乘以多個碼塊的數(shù)量C、然后向相乘結(jié)果加上數(shù)據(jù)塊(或輸入比特)的尺寸B所獲得的值。
[式26] F=C+*K++C-*K--(B+C*L) 參照圖3,如果確定了多個碼塊的數(shù)量、碼塊尺寸和填充比特長度,則數(shù)據(jù)塊分段單元320可以依次將數(shù)據(jù)分配給碼塊(步驟S304)。
在步驟S304中,如果數(shù)據(jù)塊(300)由包含檢錯碼在內(nèi)的一個碼塊構(gòu)成,則將數(shù)據(jù)分配給數(shù)據(jù)塊300,并且并不將數(shù)據(jù)輸入到CRC附加單元340。這是數(shù)據(jù)塊300的尺寸小于或等于碼塊360的最大尺寸的情況。因此,由數(shù)據(jù)塊分段單元320對數(shù)據(jù)塊進(jìn)行分段,并且省略了將CRC碼附加到各個分段后的碼塊的步驟。也就是說,輸入數(shù)據(jù)塊300直接用作碼塊360。因此,碼塊360中僅存在初始包含的CRC碼,并且,不必將從CRC附加單元340生成的CRC碼附加到碼塊360。
如果將數(shù)據(jù)分配給這些碼塊,則將碼塊輸入到CRC附加單元340。CRC附加單元340基于這些碼塊、利用CRC生成式來生成具有指定長度的CRC奇偶校驗比特(步驟S305)。
CRC附加單元將步驟S305中所生成的CRC奇偶校驗比特按照前向或后向方式附加到碼塊的后部。最終,生成了附加有CRC的碼塊(步驟S306)。
<第二實施方式> 圖4是例示了根據(jù)本發(fā)明的一個示例性實施方式的、將CRC碼附加到多個碼塊的過程的一個示例的圖。
參照圖4,將數(shù)據(jù)塊(第一數(shù)據(jù)塊400)輸入到數(shù)據(jù)塊分段單元420中,并且將其分段成多個碼塊(第二數(shù)據(jù)塊)。將考慮了CRC尺寸的碼塊430輸入到CRC附加單元440中,以生成附加有CRC的碼塊460。除圖3中的步驟S304和S306之外,該過程類似于圖3的方法。
本發(fā)明的另一個示例性實施方式假設(shè)輸入到CRC附加單元的碼塊430的尺寸等于附加有CRC的碼塊460的尺寸。也就是說,CRC尺寸包含在輸入到CRC附加單元的碼塊的尺寸中。因此,當(dāng)針對輸入數(shù)據(jù)來計算碼塊的數(shù)量和尺寸時,數(shù)據(jù)塊分段單元可以考慮要附加到各個碼塊內(nèi)的CRC碼的尺寸。
如果確定了多個碼塊的數(shù)量C、碼塊尺寸K和填充比特長度F,則數(shù)據(jù)塊分段單元420依次將數(shù)據(jù)分配給這些碼塊。此時,將填充比特和數(shù)據(jù)分配給多個碼塊中的第一塊。
在本發(fā)明的另一個示例性實施方式中,在考慮要在CRC附加單元中進(jìn)行附加的CRC碼的尺寸L的情況下來向碼塊分配數(shù)據(jù)。因此,將填充比特和數(shù)據(jù)分配給第一碼塊,并且分配包括與CRC碼的尺寸相對應(yīng)的0或1在內(nèi)的值,以便指定CRC區(qū)域。然而,該值僅指示CRC區(qū)域,并不意味著將CRC碼附加到CRC區(qū)域。
從第二碼塊開始到最末碼塊為止來依次分配數(shù)據(jù)。將由0或1組成的、用于指示CRC區(qū)域的值分配在各個碼塊中,以確定該CRC區(qū)域。
CRC附加單元將CRC碼附加到碼塊上。在這種情況下,生成與填充有0或1的CRC區(qū)域相對應(yīng)的CRC奇偶校驗比特,并且按照前向或后向方式來附加CRC奇偶校驗比特。針對各個碼塊來執(zhí)行該過程。CRC碼的尺寸L可以是24比特。
通過上述方法,通過數(shù)據(jù)塊分段單元420和CRC附加單元440來將具有指定尺寸的數(shù)據(jù)塊分段成附加有CRC的碼塊。
然而,如果數(shù)據(jù)塊420小于或等于碼塊的最大尺寸,則數(shù)據(jù)塊不經(jīng)過數(shù)據(jù)塊分段單元420和CRC附加單元440。也就是說,如果數(shù)據(jù)塊400由包含CRC碼在內(nèi)的一個碼塊構(gòu)成,則由于數(shù)據(jù)塊400已經(jīng)包含了CRC碼,因此僅將數(shù)據(jù)分配給數(shù)據(jù)塊400,而并不在CRC附加單元中附加CRC碼。
當(dāng)構(gòu)造輸入到CRC附加單元的碼塊時,將CRC尺寸包含在碼塊中的詳細(xì)示例如下。
表2例示了在考慮CRC尺寸的情況下碼塊的構(gòu)造式。
[表2] 表3例示了當(dāng)數(shù)據(jù)塊由包含檢錯碼在內(nèi)的一個碼塊構(gòu)成時在考慮CRC尺寸的情況下碼塊的構(gòu)造式。
[表3] 表2和表3中使用的基本參數(shù)如下。參數(shù)“F”表示填充比特的長度,“Ork”表示數(shù)據(jù)塊分段單元的輸出,“r”表示碼塊號,“k”表示第r塊的比特號。
假設(shè)碼塊的尺寸為K+和K-(這里,K-小于K+)。參數(shù)C+和C-表示特定碼塊的數(shù)量,即,分別表示具有尺寸K+的碼塊的數(shù)量和具有尺寸K-的碼塊的數(shù)量。表2和表3中所示的參數(shù)“L”表示要附加到各個碼塊的CRC碼的尺寸,“Kr”表示要應(yīng)用到碼塊的尺寸。
式中例示了將CRC碼附加到在考慮CRC尺寸的情況下而生成的各個碼塊的一個示例。
[式27] Ork=Ork;k=0,1,2,...,Kr-L-1 Ork=Pr(Kr-k-1);k=Kr-L,Kr-L+1,Kr-L+2,...,Kr-1(=Kr-L+L-1) 當(dāng)數(shù)據(jù)塊的尺寸B小于碼塊的最大尺寸Z時,式28例示了將CRC碼附加到在考慮CRC尺寸L的情況下而生成的各個碼塊的一個示例。
[式28] ifC=1 bypass else Ork=Ork;k=0,1,2,...,Kr-L-1 Ork=Pr(Kr-k-1);k=Kr-L,Kr-L+1,Kr-L+2,...,Kr-1(=Kr-L+L-1) end if 在計算用于CRC附加的參數(shù)時,假設(shè)應(yīng)用到碼塊的尺寸是Kr,并且附加到各個碼塊的CRC尺寸為L。可以用Or0,Or1,Or2,...,OrKr-1來表示輸入的比特??梢杂胮r0,pr1,pr2,...,prL-1來表示CRC奇偶校驗比特??梢曰谳斎氡忍?、利用CRC生成式來生成CRC奇偶校驗比特。在附加了CRC奇偶校驗比特之后,可以在同一空間或不同空間中用Or0,Or1,Or2,...,OrKr-1或Cr0,Cr1,Cr2,...,CrKr-1來表示比特??梢愿鶕?jù)系統(tǒng)要求按照碼塊的前向或后向方式來附加CRC奇偶校驗比特。
<第三實施方式> 圖5是例示了根據(jù)本發(fā)明的一個示例性實施方式的、將CRC碼附加到多個碼塊的過程的另一個示例的圖。
在圖5中,輸入到CRC附加單元540的輸入碼塊530的尺寸具有從輸出碼塊560的尺寸中減去CRC尺寸L所獲得的值。盡管數(shù)據(jù)塊分段單元520用于對數(shù)據(jù)塊(第一數(shù)據(jù)塊500)進(jìn)行劃分的操作類似于圖3和圖4中所示的數(shù)據(jù)塊分段單元的操作,但是將數(shù)據(jù)分配到數(shù)據(jù)塊(第二數(shù)據(jù)塊)的方法和生成附加有CRC的塊的方法不同于圖3和圖4中所示的方法。
也就是說,盡管考慮CRC尺寸來對數(shù)據(jù)塊進(jìn)行劃分,但是在輸入到CRC附加單元的碼塊的尺寸中并不確保CRC區(qū)域,這是與圖4中所示方法不同的。
參照圖5,將第一數(shù)據(jù)塊500輸入到數(shù)據(jù)塊分段單元520,并且將其分段成碼塊530,并且碼塊530被輸入到CRC附加單元540中,由此生成附加有CRC的碼塊56。
在圖5中,如果將碼塊500輸入到數(shù)據(jù)塊分段單元520,則數(shù)據(jù)塊分段單元520在考慮CRC尺寸的情況下來計算碼塊的數(shù)量C和尺寸Z。數(shù)據(jù)塊分段單元520還利用碼塊的數(shù)量C和尺寸K來計算填充比特長度。數(shù)據(jù)塊分段單元520將填充比特和數(shù)據(jù)分配給這些碼塊中的第一塊。在這種情況下,按照與從碼塊尺寸中減去填充比特長度和CRC尺寸L所得到的長度相對應(yīng)的方式來依次分配數(shù)據(jù)。CRC尺寸L可以是24比特。
數(shù)據(jù)塊分段單元依次向第二塊分配與從碼塊尺寸中減去CRC尺寸所得到的長度相對應(yīng)的數(shù)據(jù)。按照其余碼塊的數(shù)量,來重復(fù)執(zhí)行分配數(shù)據(jù)的過程。通過該數(shù)據(jù)分配過程,構(gòu)造了輸入到CRC附加單元的碼塊。
也就是說,將通過數(shù)據(jù)塊分段單元計算出的碼塊的數(shù)量C發(fā)送給CRC附加單元,使得CRC附加單元能夠利用多個碼塊的數(shù)量C來將CRC碼附加到碼塊上。假設(shè)輸入到CRC附加單元中的各個碼塊的尺寸恒定,則通過將從碼塊尺寸K中減去CRC尺寸K所得到的結(jié)果乘以碼塊的數(shù)量C,來獲取輸入碼塊530的尺寸。另選的是,輸入碼塊530的尺寸可以設(shè)定為分別具有通過從碼塊尺寸K中減去CRC尺寸L計算得到的值的多個碼塊尺寸的總和。
當(dāng)根據(jù)圖5中描述的本發(fā)明的示例性實施方式來計算輸入到CRC附加單元的碼塊530的整體尺寸時,碼塊530的尺寸比通過圖4中的方法計算得到的尺寸小,兩者的差為要附加到碼塊的CRC碼的尺寸。
參照圖5,CRC附加單元基于輸入碼塊和碼塊的數(shù)量、利用CRC生成式來生成指定尺寸的CRC奇偶校驗比特。CRC附加單元將奇偶校驗比特按照前向或后向方式附加到各個碼塊的結(jié)尾。
利用參照圖5所述的方法,具有指定尺寸的數(shù)據(jù)塊由通過了數(shù)據(jù)塊分段單元和CRC附加單元的、附加有CRC的碼塊構(gòu)成。
然而,如果數(shù)據(jù)塊由包含CRC碼在內(nèi)的一個碼塊組成,則省略了在分配數(shù)據(jù)之后通過CRC附加單元540的步驟。也就是說,如果數(shù)據(jù)塊尺寸小于或等于碼塊的最大尺寸,則不必對數(shù)據(jù)塊進(jìn)行劃分,并且,使用原始包含在數(shù)據(jù)塊中的CRC碼,而無需通過CRC附加單元540來重復(fù)附加CRC碼。
現(xiàn)在根據(jù)本發(fā)明的另一示例性實施方式來描述盡管考慮了CRC尺寸來構(gòu)造碼塊、但是當(dāng)CRC碼并不包含在碼塊中時構(gòu)造輸入到CRC附加單元中的碼塊的一個詳細(xì)示例。
下表4例示了盡管考慮了CRC尺寸來生成碼塊、但是并不包含CRC碼的碼塊的構(gòu)造式。
[表4] 下表5例示了當(dāng)數(shù)據(jù)塊由包含CRC碼在內(nèi)的一個碼塊構(gòu)成時考慮了CRC尺寸、但是并不包括CRC碼的碼塊的構(gòu)造式。
[表5] 表4和表5中使用的基本參數(shù)如下?!癋”表示填充比特的長度,“Ork”表示數(shù)據(jù)塊分段單元的輸出,“r”表示碼塊號,“k”表示第r塊的比特號。
假設(shè)碼塊的尺寸為K+和K-(這里,K小于K+)。參數(shù)C+和C-表示特定碼塊的數(shù)量,即,分別表示具有尺寸K+的碼塊的數(shù)量和具有尺寸K-的碼塊的數(shù)量。表4和表5中所示的參數(shù)“L”表示要附加到各個碼塊的CRC碼的尺寸,“Kr”表示要應(yīng)用到碼塊的尺寸。
參照圖5,構(gòu)造考慮了CRC尺寸、但是并不包含CRC碼的碼塊,并且,式27可以用于將CRC碼附加到碼塊。
如果沒有對數(shù)據(jù)塊進(jìn)行分段并且數(shù)據(jù)塊由包含CRC碼在內(nèi)的一個碼塊構(gòu)成,則構(gòu)造考慮了CRC尺寸、但是并不包含CRC碼的碼塊,并且,式28可以用于將CRC碼附加到碼塊。
可以用Or0,Or1,Or2,...,OrKr-1或Cr0,Cr1,Cr2,...,CrKr-1來表示經(jīng)過CRC附加之后的比特。也就是說,這些比特可以包含在同一空間或不同空間中。
<第四實施方式> 圖6是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在考慮CRC尺寸的情況下對數(shù)據(jù)塊進(jìn)行分段并附加CRC碼的過程的圖。
將具有指定尺寸的數(shù)據(jù)塊(第一數(shù)據(jù)塊600)輸入到功能模塊(數(shù)據(jù)塊分段及CRC附加單元)620,以生成碼塊(第二碼塊640)。功能模塊620對數(shù)據(jù)塊進(jìn)行分段,并且同時附加CRC碼。在輸入到功能模塊620之前,數(shù)據(jù)塊600中可以包含CRC碼。
如果將數(shù)據(jù)塊600輸入到功能模塊620,則功能模塊620在考慮CRC尺寸L的情況下來計算碼塊的數(shù)量C(步驟S601)。功能模塊620利用碼塊的數(shù)量C來計算碼塊的尺寸K(步驟S602)。功能模塊620利用碼塊的數(shù)量C和碼塊的尺寸K來計算填充比特的長度F(步驟S603)。
步驟S601到S603中使用的、用于計算碼塊的數(shù)量C、碼塊尺寸K和填充比特的長度F的方法可以使用圖3到圖5中使用的一個或更多個方法。然而,步驟S604中向碼塊分配數(shù)據(jù)和CRC碼的方法不同于參照圖3到圖5描述的方法。CRC尺寸L可以是24比特。
參照圖6,向碼塊分配數(shù)據(jù)和CRC碼的步驟S604如下。
當(dāng)將填充比特附加到第一碼塊的開頭、并且在第一碼塊中分配與除CRC尺寸L之外的長度相對應(yīng)的數(shù)據(jù)時,將CRC碼按照前向或后向方式附加到第一碼塊的結(jié)尾。在第二碼塊中,分配與除CRC尺寸之外的長度相對應(yīng)的數(shù)據(jù),并且,將CRC碼按照前向或后向方式附加到第二碼塊的結(jié)尾。針對其余碼塊的各個碼塊,來在第二碼塊之后的碼塊中重復(fù)執(zhí)行用于分配數(shù)據(jù)的上述過程。碼塊尺寸K可以具有同一尺寸或者特定值(例如,K+或K-)。值K+和K-表示K的微變化量(minute variation amount)。利用圖6所示的方法,具有指定尺寸的數(shù)據(jù)塊可以由通過功能塊620所得到的、附加有CRC的碼塊640構(gòu)成。然而,如果數(shù)據(jù)塊由包含CRC碼在內(nèi)的一個碼塊構(gòu)成,則在分配數(shù)據(jù)之后并不附加CRC碼,這是因為該數(shù)據(jù)塊包含CRC碼。
在生成碼塊之后,執(zhí)行信道編碼。信息編碼是指對發(fā)送側(cè)所生成的原始碼進(jìn)行轉(zhuǎn)換的過程,使得接收側(cè)能夠?qū)υ谕ㄟ^信道發(fā)送數(shù)據(jù)期間的錯誤進(jìn)行檢測和/或糾正。也就是說,信道編碼是指在功率有限或帶寬有限的信道環(huán)境中克服錯誤的過程。
可以使用各種方法來進(jìn)行信道編碼。信道編碼包括非存儲型的線性編碼和循環(huán)編碼,以及存儲型的截尾卷積編碼(tail biting convolutioncoding)和turbo編碼。
圖7是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在考慮CRC尺寸的情況下將數(shù)據(jù)塊轉(zhuǎn)換成碼塊的過程的圖。
參照圖7,如果將數(shù)據(jù)塊(第一數(shù)據(jù)塊700)輸入到功能模塊(CRC附加及數(shù)據(jù)塊分段)720,則在考慮CRC尺寸L的情況下來將該數(shù)據(jù)塊分段成碼塊(第二碼塊740)。通過CRC附加單元及數(shù)據(jù)塊分段單元來將數(shù)據(jù)塊轉(zhuǎn)換成碼塊的過程可以使用圖6中所示的過程。在圖7中,在數(shù)據(jù)塊輸入到該功能模塊之前,數(shù)據(jù)塊700可以包含針對該數(shù)據(jù)塊的CRC碼。
現(xiàn)在來描述在一個功能模塊中執(zhí)行數(shù)據(jù)塊分段和CRC附加的一個示例。
下表6示出了當(dāng)在一個功能模塊720中執(zhí)行數(shù)據(jù)塊分段和CRC碼附加時、用于對數(shù)據(jù)塊進(jìn)行分段并且附加CRC碼的數(shù)據(jù)塊的構(gòu)造式。
[表6] 下表7示出了當(dāng)沒有對數(shù)據(jù)塊進(jìn)行分段并且數(shù)據(jù)塊由包含CRC碼在內(nèi)的一個碼塊(即,C=1)構(gòu)成時、并且當(dāng)在一個功能模塊720中執(zhí)行數(shù)據(jù)塊分段和CRC碼附加時,用于對數(shù)據(jù)塊進(jìn)行分段并且附加CRC碼的數(shù)據(jù)塊的構(gòu)造式。
[表7] 表6和表7中使用的基本參數(shù)如下。參數(shù)“F”表示填充比特的長度,“Ork”表示數(shù)據(jù)塊分段單元的輸出,“r”表示碼塊號,“k”表示第r塊的比特號。
假設(shè)碼塊的尺寸為K+和K-(這里,K-小于K+)。參數(shù)C+和C-表示特定碼塊的數(shù)量,即,分別表示具有尺寸K+的碼塊的數(shù)量和具有尺寸K-的碼塊的數(shù)量。表6和表7中所示的參數(shù)“L”表示要附加到各個碼塊的CRC尺寸,“Kr”表示要應(yīng)用到最終碼塊的尺寸。
可以用pr0,pr1,pr2,...,prL-1來表示用于CRC碼附加的CRC奇偶校驗比特??梢曰谳斎雺K、利用CRC生成式來生成CRC奇偶校驗比特??梢杂肙r0,Or1,Or2,...,OrKr-1或Cr0,Cr1,Cr2,...,CrKr-1表示數(shù)據(jù)分段及CRC附加之后的比特。也就是說,這些比特可以包含在同一空間或不同空間中。
<第五實施方式> 可以通過第一到第四實施方式中描述的方法的組合來構(gòu)成本發(fā)明的另一示例性實施方式。
可以根據(jù)系統(tǒng)要求在發(fā)送之前將具有較大尺寸的數(shù)據(jù)分段成具有適當(dāng)尺寸的數(shù)據(jù),以便有效傳送數(shù)據(jù)。因此,需要通過適當(dāng)?shù)姆椒▉韺斎霐?shù)據(jù)塊進(jìn)行分段。重要的是,確定使用哪種方法來進(jìn)行數(shù)據(jù)塊分段。
根據(jù)本發(fā)明的該另一示例性實施方式的數(shù)據(jù)塊分段及CRC附加單元是用于對邏輯數(shù)據(jù)塊(或輸入比特)進(jìn)行分段并附加CRC碼的一個功能模塊。該功能模塊可以在考慮包含在要分段的碼塊中的檢錯碼(例如,CRC碼)的尺寸的情況下來將輸入數(shù)據(jù)塊分段成適當(dāng)數(shù)量的碼塊。
如果將輸入比特分段成碼塊(或段),則可以根據(jù)系統(tǒng)要求來確定碼塊的最大尺寸Z。在本發(fā)明的示例性實施方式中,碼塊的最大尺寸可以為6144個比特。
可以用b0,b1,b2,...,bB-1來表示輸入到該功能模塊的輸入比特(或數(shù)據(jù)塊)序列??梢杂谩癇”(這里,B為1以上)來表示輸入比特的尺寸。如果輸入比特尺寸B大于碼塊的最大尺寸Z,則可以對輸入比特執(zhí)行分段。CRC尺寸L可以是24比特。也就是說,可以將作為一種檢錯碼的24比特CRC碼附加到通過對輸入比特進(jìn)行分段所生成的各個碼塊。
如果填充比特的長度不是0,則可以將填充比特添加到第一碼塊的開頭。如果輸入比特尺寸B小于40比特,則將填充比特添加到碼塊的開頭。在該功能模塊的輸入處將該填充比特設(shè)定為空(null)。
可以通過下式29來計算通過對輸入比特進(jìn)行分段所生成的碼塊的總數(shù)量C。
[式29] if B≤Z L=0 C=1 B′=B else L=24
B′=B+C*L end if 在式29中,B表示輸入比特序列(或數(shù)據(jù)塊)的尺寸,B′表示通過碼塊的數(shù)量C乘以CRC尺寸L的結(jié)果、然后加上輸入比特序列的尺寸B所獲得的值。也就是說,B′表示用于計算碼塊的數(shù)量及尺寸的、修改后的輸入比特序列的尺寸。
在式29中,如果輸入比特尺寸B小于碼塊的最大尺寸Z,則可以將要附加到碼塊的檢錯碼的尺寸設(shè)定為0,并且可以將碼塊的總數(shù)量C設(shè)定為1??梢詫⑿薷暮蟮妮斎氡忍匦蛄械某叽鏐′設(shè)定為等于輸入比特序列的尺寸B。
如果輸入比特尺寸B大于碼塊的最大尺寸Z,則可以將CRC尺寸L設(shè)定為24比特,并且可以將碼塊的總數(shù)量C設(shè)定為以下這種整數(shù)對將輸入比特序列的尺寸B除以從碼塊的最大尺寸Z中減去CRC尺寸的結(jié)果而得到的值進(jìn)行向上取整所獲得的值??梢詫⑿薷暮蟮妮斎氡忍匦蛄谐叽鏐′設(shè)定為以下這種值多個碼塊的數(shù)量C乘以CRC尺寸L的結(jié)果、然后加上輸入比特的尺寸B所獲得的值。
如果碼塊的數(shù)量不是0,則可以用Cr0,Cr1,Cr2,...,Cr(Kr-1)(其中,r表示碼塊號,Kr表示第r碼塊的尺寸)來表示從該功能塊生成的碼塊。
該功能模塊應(yīng)當(dāng)在通過式29計算碼塊數(shù)量之后計算各個碼塊的尺寸。輸入比特可以分段成具有同一尺寸或特定尺寸(例如,K+或K-)的碼塊。明顯的是,碼塊可以根據(jù)系統(tǒng)或用戶要求而具有各種尺寸。
在本發(fā)明的另一個示例性實施方式中,碼塊的尺寸可以是K+和K-。在這種情況下,碼塊的數(shù)量C不應(yīng)當(dāng)是0。
在本發(fā)明的一個示例性實施方式中,可以用K+來表示第一碼塊(或第一段)的尺寸??梢愿鶕?jù)表1中的值K來確定尺寸K+??梢杂蓾M足以下這種條件的多個K值中的最小值來確定尺寸K+碼塊的數(shù)量C乘以碼塊尺寸K所獲得的值大于或等于修改后的輸入比特序列的尺寸B′。
如果多個碼塊的數(shù)量C為1,則具有尺寸K+的碼塊的數(shù)量C+為1,具有尺寸K-的碼塊的數(shù)量C-為0。
如果碼塊數(shù)量為2以上(C>1),則可以通過表1中所示的值K來確定第二碼塊(或第二段)的尺寸K-。期望的是,尺寸K-具有小于尺寸K+的多個值K當(dāng)中的最大值。K的變化量ΔK表示K+與K-之間的差。
可以通過以下方式來計算具有尺寸K-的第二碼塊的數(shù)量C-多個碼塊的數(shù)量C乘以第一碼塊的尺寸K+、然后減去修改后的輸入比特序列的尺寸B′、再除以K的變化量ΔK而獲得的值進(jìn)行向下取整。
可以通過從碼塊的總數(shù)量C中減去第二碼塊的數(shù)量C-,來計算出具有尺寸K+的第一碼塊的數(shù)量C+。
由于在考慮碼塊中包含的CRC尺寸L的情況下來計算碼塊的數(shù)量C和碼塊尺寸K,因此多個碼塊的總和可能大于修改后的輸入比特序列尺寸B′。然后,可以將與該差值相對應(yīng)的填充比特添加到第一碼塊中。
在本發(fā)明的另一個示例性實施方式中,可以通過修改后的輸入比特序列尺寸B′與(C+×K+)+(C-×K-)的值之間的差值來計算填充比特長度F。
表8例示了在考慮CRC尺寸的情況下而生成的構(gòu)造式。
[表8] 參照表8,該功能模塊通過包含CRC尺寸的碼塊,來構(gòu)造碼塊。碼塊序列cr0,cr1,cr2,...,cr(Kr-1)可以用于計算CRC奇偶校驗比特pr0,pr1,pr2,...,pr(L-1)。
在本發(fā)明的另一示例性實施方式中,先前包含在輸入數(shù)據(jù)塊中的檢錯碼可以稱為“傳輸塊(TB)CRC”(或第一檢錯碼),包含在要分段的碼塊中的檢錯碼可以稱為“碼塊(CB)CRC”(或第二檢錯碼)。在將TB CRC附加到輸入比特之前的初始數(shù)據(jù)塊可以稱為“初始輸入比特”或“傳輸塊”。TB CRC的尺寸L可以是24比特。
如果沒有執(zhí)行第五實施方式中的對數(shù)據(jù)塊的分段(即,C=1),則可以通過包含TB CRC在內(nèi)的最終碼塊來構(gòu)造初始輸入的數(shù)據(jù)塊。然而,可以根據(jù)用戶要求或本發(fā)明的實施方式通過附加CB CRC、而不是TB CRC來構(gòu)造最終碼塊。
<第六實施方式> 可以通過第一到第四實施方式中描述的方法的組合來構(gòu)成本發(fā)明的另一示例性實施方式。
根據(jù)本發(fā)明的該另一示例性實施方式的數(shù)據(jù)塊分段及CRC附加單元是用于在考慮要分段的碼塊中所包含的檢錯碼(例如,CRC碼)的情況下來將輸入數(shù)據(jù)塊分段成適當(dāng)尺寸的碼塊的一個功能模塊。如果將輸入比特序列分段成多個碼塊,則根據(jù)系統(tǒng)要求來確定能夠進(jìn)行分段的最大尺寸。在本發(fā)明的示例性實施方式中,碼塊的最大尺寸Z可以為6144個比特。
可以用b0,b1,b2,...,bB-1來表示輸入到該功能模塊的輸入比特(或數(shù)據(jù)塊)序列。假設(shè)輸入比特的尺寸為1以上。如果輸入比特的尺寸B大于碼塊的最大尺寸Z,則對輸入比特執(zhí)行分段。在考慮要附加到碼塊的尺寸的情況下來對輸入比特進(jìn)行分段。
如果填充比特長度不是0,則可以將填充比特添加到第一碼塊的開頭。在該功能模塊的輸入處將該填充比特設(shè)定為空。
可以通過下式30來計算通過對輸入比特進(jìn)行分段所生成的碼塊的總數(shù)量C。
[式30] If B≤Z C=1 B′=B Else
B′=B+C×L End 在式30中,B表示輸入比特序列(或數(shù)據(jù)塊)的尺寸,B′表示通過碼塊的數(shù)量C乘以CRC尺寸L的結(jié)果、然后加上輸入比特的尺寸B所獲得的值。也就是說,B′表示用于獲取碼塊尺寸K的、修改后的輸入比特序列的尺寸。
如果碼塊的數(shù)量不是0,則可以用cr0,cr1,cr2,...,cr(Kr-1)(其中,r表示碼塊號,Kr表示第r碼塊的尺寸)來表示從該功能塊生成的碼塊。
該功能模塊應(yīng)當(dāng)在通過式30計算碼塊數(shù)量之后計算各個碼塊的尺寸。各個碼塊可以具有尺寸K+或K-。在這種情況下,碼塊的數(shù)量不應(yīng)當(dāng)是0。
在本發(fā)明的示例性實施方式中,可以用K+來表示第一碼塊的尺寸。可以根據(jù)表1中的值K來確定尺寸K+。尺寸K+可以具有在滿足以下這種條件的多個K值中的最小值將修改后的輸入比特尺寸B′除以碼塊的數(shù)量C所獲得的值大于或等于值K。
如果多個碼塊的數(shù)量C為1,則具有尺寸K+的第一碼塊的數(shù)量C+為1,具有尺寸K-的第二碼塊的數(shù)量C-為0。
如果碼塊的數(shù)量為2以上(C>1),則第二碼塊的尺寸K-可以設(shè)定為表1中所示的小于K+的多個值K當(dāng)中的最大值。K的變化量ΔK表示K+與K-之間的差。
可以通過以下方式來計算具有尺寸K-的第二碼塊的數(shù)量C-多個碼塊的數(shù)量C除以第一碼塊尺寸K+、然后減去修改后的輸入比特序列的尺寸B′、再除以K的變化量ΔK而獲得的值進(jìn)行向下取整??梢酝ㄟ^從碼塊的總數(shù)量C中減去第二碼塊的數(shù)量C-,來計算出具有尺寸K+的第一碼塊的數(shù)量C+。CRC奇偶校驗比特的尺寸L可以設(shè)定為24比特。
由于在考慮CRC尺寸L的情況下來計算碼塊的數(shù)量和尺寸,因此碼塊的尺寸可能大于修改后的輸入比特序列的尺寸B′。在這種情況下,可以將與該差值相對應(yīng)的填充比特添加到第一碼塊中。
在本發(fā)明的另一個示例性實施方式中,可以通過修改后的輸入比特序列的尺寸B′與(C+×K+)+(C-×K-)的值之間的差值來計算填充比特長度F。
表9例示了在考慮CRC尺寸的情況下而生成的碼塊的構(gòu)造式。
[表9] 在表9中,該功能模塊通過包含CRC尺寸,來構(gòu)造碼塊。碼塊序列cr0,cr1,cr2,...,cr(Kr-1)可以用于計算CRC奇偶校驗比特pr0,pr1,pr2,...,pr(L-1)。
<第七實施方式> 可以通過第一到第四實施方式中描述的方法的組合來構(gòu)成本發(fā)明的另一示例性實施方式。
根據(jù)本發(fā)明的該另一示例性實施方式定義了用于CRC附加及輸入比特分段的功能模塊。該功能模塊可以在考慮包含在要分段的碼塊中的檢錯碼(例如,CRC碼)的尺寸的情況下將輸入數(shù)據(jù)塊分段成適當(dāng)數(shù)量的碼塊。如果將輸入比特序列分段成多個碼塊,則根據(jù)系統(tǒng)要求來確定能夠進(jìn)行分段的最大尺寸Z。在本發(fā)明的示例性實施方式中,碼塊的最大尺寸可以為6144個比特。
可以用b0,b1,b2,...,bB-1來表示對輸入到該功能模塊的輸入比特進(jìn)行分段而生成的碼塊。當(dāng)輸入比特的尺寸B大于碼塊的最大尺寸時,可以對輸入比特執(zhí)行分段。
如果輸入比特的尺寸B不是0、并且填充比特的長度不是0,則可以將填充比特添加到第一碼塊的開頭。如果輸入比特的尺寸B小于40比特,則將填充比特添加到碼塊的開頭。將填充比特設(shè)定為空。
可以通過下式31來計算通過對輸入比特進(jìn)行分段所生成的碼塊的數(shù)量。
[式31] If B≤Z B′=B Else
Else
End End
在式31中,如果輸入比特的尺寸B小于或等于碼塊的最大尺寸Z,則輸入比特的尺寸B等于修改后的輸入比特序列的尺寸B′。當(dāng)輸入比特的尺寸B大于碼塊的最大尺寸Z時,使用以下方法。
如果對B除以Z的結(jié)果進(jìn)行向上取整、然后乘以L、再加上B所獲得的值大于對B除以Z的結(jié)果進(jìn)行向上取整、然后乘以Z所獲得的值,則修改后的輸入比特序列的尺寸B′取以下這種值對B除以Z的結(jié)果進(jìn)行向上取整、然后加1、再乘以CRC的尺寸L、最后加上數(shù)據(jù)塊的尺寸B所獲取的值。
通過上述過程,通過以下方式來確定碼塊的數(shù)量C修改后的輸入比特序列的尺寸B′除以碼塊的最大的尺寸Z、然后進(jìn)行向上取整所獲得的值??梢杂肅r0,cr1,cr2,...,cr(Kr-1)(其中,r表示碼塊號,Kr表示第r碼塊的尺寸)來表示從該功能塊分段得到的輸入比特。
該功能模塊應(yīng)當(dāng)在通過式31計算碼塊數(shù)量之后計算各個碼塊的尺寸。各個碼塊可以具有尺寸K+或K-。在這種情況下,碼塊的數(shù)量不應(yīng)當(dāng)是0。
在本發(fā)明的示例性實施方式中,可以用K+來表示第一碼塊的尺寸??梢愿鶕?jù)表1中的值K來確定尺寸K+。尺寸K+可以具有在滿足以下這種條件的多個K值中的最小值將修改后的輸入比特序列的尺寸B′除以碼塊的數(shù)量C獲得的值大于或等于值K。
如果多個碼塊的數(shù)量C為1,則具有尺寸K+的第一碼塊的數(shù)量C+為1,具有尺寸K-的第二碼塊的數(shù)量C-為0。
如果碼塊的數(shù)量為2以上(C>1),則第二碼塊的尺寸K-可以由表1中所示的小于K+的多個值K當(dāng)中的最大值確定。K的變化量ΔK表示K+與K-之間的差。
可以通過以下方式來計算具有尺寸K-的第二碼塊的數(shù)量C-多個碼塊的數(shù)量C除以第一碼塊的尺寸K+、然后減去修改后的輸入比特序列的尺寸B′、再除以K的變化量ΔK而獲得的值進(jìn)行向下取整??梢酝ㄟ^從碼塊的總數(shù)量C中減去第二碼塊的數(shù)量C-,來計算出具有尺寸K+的第一碼塊的數(shù)量C+。CRC奇偶校驗比特的尺寸L可以設(shè)定為24比特。
由于在考慮CRC尺寸L的情況下來計算碼塊的數(shù)量和尺寸,因此碼塊的尺寸可能大于修改后的輸入比特序列的尺寸B′。然后,可以將與該差值相對應(yīng)的填充比特添加到第一碼塊中。
在本發(fā)明的另一個示例性實施方式中,可以通過修改后的輸入比特序列的尺寸B′與(C+×K+)+(C-×K-)的值之間的差來計算填充比特長度F。
表10例示了在考慮CRC的尺寸的情況下而生成的碼塊的構(gòu)造式。
[表10] 通過表10可以理解的是,該功能模塊在考慮CRC的尺寸的情況下對輸入比特進(jìn)行分段,來構(gòu)造碼塊。
<第八實施方式> 可以通過第一到第四實施方式中描述的方法的組合來構(gòu)成本發(fā)明的另一示例性實施方式。
可以根據(jù)系統(tǒng)要求在發(fā)送之前將具有較大尺寸的數(shù)據(jù)分段成具有適當(dāng)尺寸的數(shù)據(jù),以便有效傳送數(shù)據(jù)。因此,需要通過適當(dāng)?shù)姆椒▉韺斎霐?shù)據(jù)塊進(jìn)行分段。重要的是,確定使用哪種方法來進(jìn)行數(shù)據(jù)塊分段。
根據(jù)本發(fā)明的該另一個示例性實施方式的數(shù)據(jù)塊分段及CRC附加單元構(gòu)成一個功能模塊。該功能模塊在考慮包含在要分段的碼塊中的檢錯碼(例如,CRC碼)的尺寸的情況下來將輸入數(shù)據(jù)塊分段成適當(dāng)數(shù)量的碼塊。如果將輸入比特序列分段成多個碼塊,則可以根據(jù)系統(tǒng)要求來確定能夠進(jìn)行分段的最大尺寸。在本發(fā)明的示例性實施方式中,碼塊的最大的尺寸可以為6144個比特。
可以用b0,b1,b2,...,bB-1來表示輸入到該功能模塊的輸入比特(或數(shù)據(jù)塊)序列??梢杂谩癇”(這里,B為1以上)來表示輸入比特的尺寸。如果輸入比特的尺寸B大于碼塊的最大尺寸Z,則可以在考慮CRC的尺寸的情況下來對輸入比特進(jìn)行分段。CRC的尺寸可以是24比特。也就是說,可以將作為一種檢錯碼的24比特CRC碼附加到通過對輸入比特序列進(jìn)行分段所生成的各個碼塊。
如果填充比特長度不是0,則可以將填充比特添加到第一碼塊的開頭。如果輸入比特的尺寸B小于40比特,則將填充比特添加到碼塊的開頭。將填充比特設(shè)定為空。
可以通過下式32來計算通過對輸入比特進(jìn)行分段所生成的碼塊的數(shù)量C。
[式32]
B′=B+C*L 在式32中,B表示輸入比特(或數(shù)據(jù)塊)的尺寸,并且,通過碼塊的數(shù)量C乘以CRC的尺寸L、然后加上輸入比特的尺寸B來獲得修改后的輸入比特序列的尺寸B′。
也就是說,修改后的輸入比特序列的尺寸B′用于計算碼塊數(shù)量和尺寸的臨時值。
如果碼塊的數(shù)量不是0,則可以用cr0,cr1,cr2,...,cr(Kr-1)(其中,r表示碼塊號,Kr表示第r碼塊的尺寸)來表示從該功能塊生成的碼塊。
該功能模塊應(yīng)當(dāng)在通過式32計算碼塊數(shù)量之后計算各個碼塊的尺寸。各個碼塊可以具有尺寸K+或K-。在這種情況下,碼塊的數(shù)量應(yīng)當(dāng)在1以上。
在本發(fā)明的示例性實施方式中,可以用K+來表示第一碼塊的尺寸??梢愿鶕?jù)表1中的值K來確定尺寸K+。尺寸K+可以具有在滿足以下這種條件的多個K值中的最小值將修改后的輸入比特序列的尺寸B′除以碼塊的數(shù)量C獲得的值大于或等于值K。如果多個碼塊的數(shù)量C為1,則具有尺寸K+的第一碼塊的數(shù)量C+為1,具有尺寸K-的第二碼塊的數(shù)量C-為0。
如果碼塊的數(shù)量為2以上(C>1),則第二碼塊的尺寸K-可以由表1中所示的小于K+的多個值K當(dāng)中的最大值確定。K的變化量ΔK表示K+與K-之間的差。
可以通過以下方式來計算具有尺寸K-的第二碼塊的數(shù)量C-多個碼塊的數(shù)量C除以第一碼塊的尺寸K+、然后減去修改后的輸入比特序列的尺寸B′、再除以K的變化量ΔK而獲得的值進(jìn)行向下取整。可以通過從碼塊的總數(shù)量C中減去第二碼塊的數(shù)量C-,來計算出具有尺寸K+的第一碼塊的數(shù)量C+。
由于在考慮CRC尺寸L的情況下來計算碼塊的數(shù)量和尺寸,因此碼塊的尺寸可能大于修改后的輸入比特序列的尺寸B′。然后,可以將與該差值相對應(yīng)的填充比特添加到第一碼塊中。
在本發(fā)明的另一個示例性實施方式中,可以通過修改后的輸入比特序列的尺寸B′與(C+×K+)+(C-×K-)的值之間的差值來計算填充比特長度F。
表11例示了在考慮CRC尺寸的情況下而生成的碼塊的構(gòu)造式。
[表11] 通過表11可以理解的是,該功能模塊在考慮CRC的尺寸的情況下來構(gòu)造碼塊。在表11中,碼塊序列cr0,cr1,cr2,...,cr(Kr-1)可以用于計算CRC奇偶校驗比特pr0,pr1,pr2,...,pr(L-1)。
<第九實施方式> 可以通過第一到第四實施方式中描述的方法的組合來構(gòu)成本發(fā)明的另一示例性實施方式。
根據(jù)第九實施方式的方法類似于第八實施方式中描述的方法。也就是說,計算通過對輸入比特進(jìn)行分段所生成的碼塊的數(shù)量的方法可以使用第八實施方式中描述的方法。此外,計算填充比特、碼塊的尺寸、碼塊數(shù)量的方法類似于第八實施方式中描述的方法。此后,僅描述在構(gòu)造分段后的碼塊的方法中的不同部分。
下表12例示了在考慮CRC的尺寸的情況下而生成的碼塊的構(gòu)造式。
[表12] 通過表12可以理解的是,該功能模塊在考慮CRC的尺寸的情況下來構(gòu)造碼塊。在表12中,碼塊序列cr0,cr1,cr2,...,cr(Kr-1)可以用于計算CRC奇偶校驗比特pr0,pr1,pr2,...,pr(L-1)。
<第十實施方式> 可以通過第一到第四示例性實施方式中描述的方法的組合來構(gòu)成本發(fā)明的另一示例性實施方式。
第十實施方式類似于第五實施方式。計算碼塊數(shù)量、碼塊的尺寸和填充比特長度的方法與第五實施方式中描述的方法相同。然而,用于向各個碼塊分配數(shù)據(jù)并同時附加檢錯碼的方法不同于第五實施方式中描述的方法。
下表13例示了在考慮CRC的尺寸的情況下而生成的碼塊的構(gòu)造式。
[表13] 對表13的基本描述類似于對表8的描述。因此,重復(fù)部分可以參照表8的描述。
在表13中,如果碼塊的數(shù)量在1以上,則將CRC校驗比特附加到各個碼塊上。碼塊序列cr0,cr1,cr2,...,cr(Kr-1)可以用于計算CRC奇偶校驗比特pr0,pr1,pr2,...,pr(L-1)。可以將CRC奇偶校驗比特按照前向或后向方式附加到包含在碼塊中的CRC奇偶校驗比特的位置。在本發(fā)明的示例性實施方式中,假設(shè)按照前向方式來附加CRC奇偶校驗比特。
式33例示了CRC奇偶校驗比特的前向附加。
[式33] If C>1 while k<Krcrk=pr(k+L-Kr)k=k+1 end while end if 在式33中,按照前向方式來附加輸入到碼塊中的CRC奇偶校驗比特(pr(k+L-Kr))。也就是說,在向一個碼塊輸入數(shù)據(jù)之后輸入CRC碼,并且在向另一個碼塊輸入數(shù)據(jù)之后輸入CRC碼。通過這些過程,可以同時將數(shù)據(jù)和CRC碼分配給碼塊。
圖8是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在考慮CRC的尺寸的情況下來對數(shù)據(jù)塊進(jìn)行分段的過程的流程圖。
可以根據(jù)系統(tǒng)要求在發(fā)送之前將具有較大尺寸的數(shù)據(jù)分段成具有適當(dāng)尺寸的數(shù)據(jù),以便有效傳送數(shù)據(jù)。因此,需要通過適當(dāng)?shù)姆椒▉韺斎霐?shù)據(jù)塊進(jìn)行分段。重要的是,確定使用哪種方法來進(jìn)行數(shù)據(jù)塊分段。
根據(jù)本發(fā)明的示例性實施方式的邏輯數(shù)據(jù)塊分段及CRC附加單元由在考慮要分段的碼塊中所包含的檢錯碼(例如,CRC碼)的尺寸的情況下來對輸入數(shù)據(jù)塊進(jìn)行分段的一個功能模塊構(gòu)成。然而,當(dāng)將輸入比特序列分段成多個碼塊時,可以根據(jù)系統(tǒng)要求確定能夠進(jìn)行分段的最大尺寸。
數(shù)據(jù)塊中可以預(yù)先包含CRC碼。在將CRC碼附加到數(shù)據(jù)塊之前的初始數(shù)據(jù)塊可以稱為“初始輸入比特”或“傳輸塊”。傳輸塊可以是指從上層發(fā)送的數(shù)據(jù)。
參照圖8,將具有尺寸B的數(shù)據(jù)塊輸入到功能模塊中(步驟S801)。數(shù)據(jù)塊可以包括表示用于輸入比特的檢錯碼的第一CRC碼。
該功能模塊將數(shù)據(jù)塊(或輸入比特)的尺寸B與碼塊的最大尺寸Z進(jìn)行比較(步驟S802)。
如果在步驟S802中數(shù)據(jù)塊的尺寸B大于碼塊的最大尺寸Z,則該功能模塊在考慮要附加到碼塊中的CRC的尺寸的情況下來計算對輸入數(shù)據(jù)塊分段得到的碼塊的數(shù)量C(步驟S803)。
在步驟S803中計算出碼塊的數(shù)量C之后,該功能模塊計算各個碼塊的尺寸K+或K-(步驟S804)。
在步驟S804中可以通過各種方法來計算各個碼塊的尺寸。也就是說,可以使用本發(fā)明的第一到第九實施方式中描述的計算各個碼塊的尺寸的方法。作為一個示例,可以利用修改后的輸入比特序列的尺寸B′來計算各個碼塊的尺寸。
在考慮CRC的尺寸的情況下計算出碼塊的數(shù)量和尺寸之后,該功能模塊通過從碼塊的尺寸中減去修改后的輸入比特序列的尺寸B′,來計算填充比特長度(步驟S805)。
在從步驟S803到步驟S805計算出碼塊的數(shù)量和尺寸之后,該功能模塊分配數(shù)據(jù)和第二CRC碼(步驟S806)。第二CRC碼在功能上不同于數(shù)據(jù)塊中所包含的第一CRC碼。第一CRC碼是用于數(shù)據(jù)塊的檢錯碼,第二CRC碼是用于通過對數(shù)據(jù)塊分段得到的碼塊的檢錯碼。
如果在步驟S802中數(shù)據(jù)塊的尺寸B并不大于碼塊的最大尺寸Z,則不必對數(shù)據(jù)塊進(jìn)行分段。也就是說,將碼塊的數(shù)量C設(shè)定為1,并省略計算碼塊的尺寸和填充比特長度的步驟。因此,可以將數(shù)據(jù)直接分配給輸入數(shù)據(jù)塊(步驟S807)。此時,可以使用數(shù)據(jù)塊中所包含的第一CRC碼,并且不再另外附加第二CRC碼。
圖9是例示了根據(jù)本發(fā)明的一個示例性實施方式的、計算多個碼塊的數(shù)量C的過程的流程圖。
圖9中的步驟S901和S902類似于圖8中的步驟S801和S802,因此省略對其的說明。
參照圖9,如果在步驟S902中數(shù)據(jù)塊的尺寸B大于碼塊的最大尺寸Z,則通過以下方式來計算碼塊的數(shù)量C將數(shù)據(jù)塊的尺寸B除以從碼塊的最大尺寸Z中減去第二CRC碼的尺寸L的結(jié)果、然后進(jìn)行向上取整(步驟S903)。
如果在步驟S902中數(shù)據(jù)塊的尺寸B并不大于碼塊的最大尺寸Z,則不必對輸入數(shù)據(jù)塊進(jìn)行分段,并且將碼塊的數(shù)量C設(shè)定為1(步驟S904)。
圖10是例示了根據(jù)本發(fā)明的一個示例性實施方式的、利用修改后的輸入比特序列的尺寸對數(shù)據(jù)塊進(jìn)行分段的過程的流程圖。
可以根據(jù)系統(tǒng)要求在發(fā)送之前將具有較大尺寸的數(shù)據(jù)分段成具有適當(dāng)尺寸的數(shù)據(jù),以便有效傳送數(shù)據(jù)。因此,需要通過適當(dāng)?shù)姆椒▉韺斎霐?shù)據(jù)塊進(jìn)行分段。重要的是,確定使用哪種方法來進(jìn)行數(shù)據(jù)塊分段。
根據(jù)本發(fā)明的示例性實施方式的邏輯數(shù)據(jù)塊分段及CRC附加單元由一個功能模塊構(gòu)成。該功能模塊將輸入數(shù)據(jù)塊分段成具有適當(dāng)數(shù)量的碼塊,并通過計算各個碼塊的尺寸來添加數(shù)據(jù)。
參照圖10,如果將數(shù)據(jù)塊(即,輸入比特)輸入到該功能模塊中,則該功能模塊計算對數(shù)據(jù)塊分段得到的碼塊的數(shù)量C(步驟S1001)。數(shù)據(jù)塊可以包括表示用于輸入比特的檢錯碼的第一CRC碼。
在計算出碼塊的數(shù)量C之后,該功能模塊計算出修改后的輸入比特序列的尺寸B′,以獲取各個碼塊的尺寸K(步驟S1002)。
在步驟S1002中,可以通過以下方式來計算修改后的輸入比特序列的尺寸B′多個碼塊的數(shù)量C乘以要附加到碼塊的第二CRC的尺寸L、然后加上數(shù)據(jù)塊的尺寸B。修改后的輸入比特序列的尺寸用于計算各個碼塊的尺寸K。
碼塊可以由第一碼塊和第二碼塊構(gòu)成。第一碼塊的尺寸K+和第二碼塊的尺寸K-并不是固定值,而是可以根據(jù)系統(tǒng)要求可變。尺寸K表示當(dāng)碼塊具有固定尺寸時各個碼塊的尺寸。
在步驟S1002中計算出修改后的輸入比特序列的尺寸B′之后,可以利用表1中所示的值K中的最小值來計算第一碼塊的尺寸K+。然而,值K應(yīng)當(dāng)為大于或等于通過將修改后的輸入比特序列的尺寸B′除以碼塊的數(shù)量C所獲得的值(步驟S1003)。
如果確定了第一碼塊的尺寸K+,則利用表1中所示的值K的最大值來計算第二碼塊的尺寸K-。然而,用于計算第二碼塊的尺寸K-的值K應(yīng)當(dāng)是在小于第一碼塊的尺寸K+的多個值中的最大值(步驟S1004)。
該功能模塊可以利用第一碼塊的尺寸K+和修改后的輸入比特序列的尺寸B′來計算第二碼塊的數(shù)量C-。該功能模塊計算第一碼塊的尺寸K+與第二碼塊的尺寸K-之間的差值ΔK。該功能模塊通過以下方式來計算第二碼塊的數(shù)量C-將多個碼塊的數(shù)量C乘以第一碼塊的尺寸、然后減去修改后的輸入比特序列的尺寸B、再除以差值ΔK、最后進(jìn)行向下取整。
可以通過從碼塊的總數(shù)量C中減去第二碼塊的數(shù)量C-,來計算出第一碼塊的數(shù)量C+(步驟S1006)。
可以利用參照圖10描述的方法來計算由對輸入比特分段得到的碼塊的適當(dāng)尺寸。具體地說,即使在各個碼塊的尺寸根據(jù)系統(tǒng)要求而彼此不同時并且在碼塊具有固定尺寸時,仍然也可以利用修改后的輸入比特序列的尺寸來計算各個碼塊的尺寸。
圖11是例示了根據(jù)本發(fā)明的一個示例性實施方式的、在碼塊數(shù)量為1時將數(shù)據(jù)塊轉(zhuǎn)換成碼塊的過程的圖。
可以根據(jù)系統(tǒng)要求在發(fā)送之前將具有較大尺寸的數(shù)據(jù)分段成具有適當(dāng)尺寸的數(shù)據(jù)。因此,需要通過適當(dāng)?shù)姆椒▉韺斎霐?shù)據(jù)塊進(jìn)行分段。重要的是,確定使用哪種方法來進(jìn)行數(shù)據(jù)塊分段。
根據(jù)本發(fā)明的示例性實施方式的邏輯數(shù)據(jù)塊分段及CRC附加單元由在考慮對輸入比特序列分段得到的碼塊中所包含的檢錯碼(例如,CRC碼)的尺寸的情況下對輸入數(shù)據(jù)塊進(jìn)行分段的一個功能模塊構(gòu)成。
然而,當(dāng)將輸入比特序列分段成多個碼塊時,可以根據(jù)系統(tǒng)要求來確定分段的最大尺寸。稍后描述當(dāng)輸入比特的尺寸B小于或等于碼塊的最大的尺寸Z時的數(shù)據(jù)處理方法。
圖11示出了將輸入到功能模塊(CRC附加單元和輸入比特分段單元1120)的輸入比特1100轉(zhuǎn)換成碼塊1140的過程。具體地說,將輸入比特1100輸入到功能模塊1120中。輸入比特1100可以包括表示用于輸入比特1100的檢錯碼的第一CRC碼。
功能模塊1120將輸入比特1100的尺寸與碼塊的最大尺寸Z進(jìn)行比較。如果輸入比特的尺寸小于或等于碼塊的最大尺寸Z,則不在功能模塊1120中對輸入比特進(jìn)行分段,并且輸入比特可以由碼塊1140構(gòu)成。
因此,將輸入比特1100轉(zhuǎn)換成碼塊1140,并且,碼塊1140可以使用第一CRC碼。由于將第一CRC碼用作碼塊1140的檢錯碼,因此功能模塊1120不向碼塊1140附加第二CRC碼。
參照圖11,如果輸入比特的尺寸小于或等于碼塊的最大尺寸Z,則不對輸入比特1100進(jìn)行分段,并且輸入比特1100用作碼塊1140。也就是說,碼塊的數(shù)量C為1,并且,碼塊的尺寸K可以等于輸入比特的尺寸B。此外,可以使用輸入比特1100中所包含的第一CRC碼,而不向碼塊1140附加第二CRC碼。因此,可以迅速地處理數(shù)據(jù)。
<第十一實施方式> 可以通過第一到第十實施方式中描述的方法的組合來構(gòu)成本發(fā)明的另一示例性實施方式。
當(dāng)碼塊的尺寸K總是恒定并且可能出現(xiàn)填充比特時,可以使用第十一實施方式。計算碼塊的數(shù)量C的過程與第四或第五實施方式中描述的過程相同。然而,在第十一實施方式中,各個碼塊的尺寸Kr相同。
下式34例示了計算碼塊的尺寸Kr和填充比特長度F(即,填充比特的數(shù)量)的方法。
[式34] Kr=B′/C 填充比特的數(shù)量F=C*Kr-B′ 在式34中,通過將修改后的輸入比特序列的尺寸B′除以碼塊的數(shù)量C來計算碼塊的尺寸Kr。此時,“r”表示碼塊的索引。通過從多個碼塊的數(shù)量C乘以碼塊的尺寸Kr的結(jié)果中減去修改后的輸入比特序列的尺寸B′,來計算填充比特長度F。也就是說,第十一實施方式示出了當(dāng)全部碼塊中的各個碼塊的尺寸相同時計算碼塊的尺寸Kr的方法。
表14例示了在考慮CRC的尺寸和填充比特長度F的情況下而生成的碼塊的構(gòu)造式。
[表14] 通過表14可以理解的是,該功能模塊在考慮CRC的尺寸的情況下構(gòu)造碼塊。在表14中,碼塊序列cr0,cr1,cr2,...,cr(Kr-1)可以用于計算CRC奇偶校驗比特pr0,pr1,pr2,...,pr(L-1)。
在本發(fā)明的另一示例性實施方式中,先前包含在數(shù)據(jù)塊中的檢錯碼可以稱為“傳輸塊(TB)CRC”(或第一檢錯碼),包含在要分段的碼塊中的檢錯碼可以稱為“碼塊(CB)CRC”(或第二檢錯碼)。
當(dāng)沒有對數(shù)據(jù)塊執(zhí)行分段(即,C=1)時,可以通過包含TB CRC在內(nèi)的最終碼塊來構(gòu)造輸入數(shù)據(jù)塊。然而,可以根據(jù)用戶要求或本發(fā)明的實施方式通過附加CB CRC、而不是TB CRC來構(gòu)造最終碼塊。
<第十二實施方式> 可以通過第一到第十示例性實施方式中描述的方法的組合來構(gòu)成本發(fā)明的另一示例性實施方式。當(dāng)碼塊的尺寸恒定并且不會出現(xiàn)填充比特時,可以使用第十二實施方式。也就是說,輸入比特的尺寸等于碼塊的總數(shù)量。
當(dāng)各個碼塊的尺寸Kr相同時,可以使用第十二實施方式。計算碼塊的數(shù)量C的過程與第四或第五實施方式中描述的過程相同。
下式35例示了計算碼塊的尺寸Kr的方法。
[式35] Kr=R′/C 在式35中,通過將修改后的輸入比特序列的尺寸B′除以碼塊的數(shù)量C來計算碼塊的尺寸Kr。此時,Kr表示碼塊的尺寸,“r”表示碼塊的索引。
表15例示了在考慮CRC的尺寸L的情況下而生成的構(gòu)造式。
[表15] 通過表15可以理解的是,該功能模塊在考慮CRC的尺寸的情況下構(gòu)造碼塊。在表15中,碼塊序列cr0,cr1,cr2,...,cr(Kr-1)可以用于計算CRC奇偶校驗比特pr0,pr1,pr2,...,pr(L-1)。
在本發(fā)明的另一示例性實施方式中,先前包含在數(shù)據(jù)塊中的檢錯碼可以稱為“傳輸塊(TB)CRC”(或第一檢錯碼),包含在要分段的碼塊中的檢錯碼可以稱為“碼塊(CB)CRC”(或第二檢錯碼)。
當(dāng)沒有對輸入數(shù)據(jù)塊進(jìn)行分段(即,C=1)時,可以通過包含TB CRC在內(nèi)的最終碼塊來構(gòu)造輸入數(shù)據(jù)塊。然而,可以根據(jù)用戶要求或本發(fā)明的實施方式通過附加CB CRC、而不是TB CRC來構(gòu)造最終碼塊。
對于本領(lǐng)域技術(shù)人員明顯的是,可以在不偏離本發(fā)明的精神或范圍的情況下在本發(fā)明中作出各種修改和變化。因此,本發(fā)明旨在涵蓋落入本發(fā)明所附權(quán)利要求及其等同物的范圍內(nèi)的修改例和變型例。
工業(yè)應(yīng)用性 本發(fā)明的示例性實施方式可以應(yīng)用于無線接入系統(tǒng)。此外,本發(fā)明的示例性實施方式可以應(yīng)用于生成由對輸入比特序列分段得到的碼塊的全部方法。根據(jù)本發(fā)明的示例性實施方式所生成的碼塊可以應(yīng)用于對物理信道的編碼、復(fù)用和交織。本發(fā)明并不限于以上具體示出并說明的內(nèi)容,相反本發(fā)明可以應(yīng)用于落入本發(fā)明的范圍內(nèi)的全部技術(shù)。
權(quán)利要求
1.一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)的方法,該方法包括以下步驟
通過將第一檢錯碼附加到所述數(shù)據(jù)來生成輸入比特序列;
如果所述輸入比特序列的尺寸B大于多個碼塊的最大尺寸Z,則利用所述輸入比特序列的尺寸B、所述多個碼塊的最大尺寸Z以及要附加到所述多個碼塊中的各個碼塊的第二檢錯碼的尺寸L,來計算所述多個碼塊的數(shù)量C;
利用所述多個碼塊的數(shù)量C、所述第二檢錯碼的尺寸L以及所述輸入比特序列的尺寸B,來計算修改后的輸入比特序列的尺寸B′;
基于通過將所述修改后的輸入比特序列的尺寸B′除以所述多個碼塊的數(shù)量C所獲得的值,來從多個預(yù)定值中獲取所述多個碼塊的尺寸K;
對所述輸入比特序列進(jìn)行分段,以具有所述多個碼塊的數(shù)量C和所述多個碼塊的尺寸K;
通過將所述第二檢錯碼附加到分段后的多個所述輸入比特序列中的各個輸入比特序列,來生成所述多個碼塊;以及
對所述多個碼塊進(jìn)行信道編碼。
2.根據(jù)權(quán)利要求1所述的方法,
其中,所述多個碼塊的數(shù)量C被設(shè)定為以下這種整數(shù)對通過將所述輸入比特序列的尺寸B除以從所述多個碼塊的最大尺寸Z中減去要附加到所述多個碼塊中的各個碼塊的所述第二檢錯碼的尺寸L所得到的結(jié)果而獲取的值進(jìn)行向上取整所得到的整數(shù)。
3.根據(jù)權(quán)利要求1所述的方法,
其中,通過不同的多項式來生成所述第一檢錯碼和所述第二檢錯碼。
4.根據(jù)權(quán)利要求1所述的方法,
其中,所述輸入比特序列的尺寸B被設(shè)定為通過將所述數(shù)據(jù)的尺寸A加上所述第一檢錯碼的尺寸獲得的值,并且其中,還另外附加要附加到所述多個碼塊中的各個碼塊的所述第二檢錯碼,以檢測所述多個碼塊中的各個碼塊是否包含錯誤。
5.根據(jù)權(quán)利要求1所述的方法,
其中,如果所述輸入比特序列的尺寸B小于所述多個碼塊的最大尺寸Z,則將所述多個碼塊的數(shù)量C設(shè)定為1。
6.根據(jù)權(quán)利要求1所述的方法,
其中,所述修改后的輸入比特序列的尺寸B′被設(shè)定為以下這種值所述多個碼塊的數(shù)量C乘以要包含于所述多個碼塊中的各個碼塊的所述第二檢錯碼的尺寸L、再加上所述輸入比特序列的尺寸B所獲取的值。
7.根據(jù)權(quán)利要求1或6所述的方法,
其中,所述多個碼塊的尺寸K滿足以下這種條件通過將所述多個碼塊的數(shù)量C乘以所述多個碼塊的尺寸K所獲得的值大于或等于所述修改后的輸入比特序列的尺寸B′
8.根據(jù)權(quán)利要求7所述的方法,
其中,所述多個碼塊的尺寸K中的第一碼塊的尺寸K+具有所述多個預(yù)定值當(dāng)中最小的尺寸,并且
所述多個碼塊的尺寸K中的第二碼塊的尺寸K-具有小于所述第一碼塊的尺寸K+的所述多個預(yù)定值當(dāng)中最大的尺寸。
9.根據(jù)權(quán)利要求8所述的方法,
其中,所述第二碼塊的數(shù)量C-被設(shè)定為以下這種整數(shù)所述多個碼塊的數(shù)量C乘以所述第一碼塊的尺寸K+、然后減去所述修改后的輸入比特序列的尺寸B′、再除以所述第一碼塊的尺寸K+與所述第二碼塊的尺寸K-之間的差所獲得的值進(jìn)行向下取整所得到的整數(shù)。
10.根據(jù)權(quán)利要求9所述的方法,
其中,所述第一碼塊的數(shù)量C+被設(shè)定為以下這種值通過從所述多個碼塊的數(shù)量C中減去所述第二碼塊的數(shù)量C-所獲得的值。
11.根據(jù)權(quán)利要求10所述的方法,該方法還包括以下步驟
通過從向?qū)⑺龅诙a塊的數(shù)量C-乘以所述第二碼塊的尺寸K-所獲得的值加上將所述第一碼塊的數(shù)量C+乘以所述第一碼塊的尺寸K+所獲得的值而獲得的結(jié)果中減去所述修改后的輸入比特序列的尺寸B′,來計算填充比特的長度F;以及
向所述多個碼塊中的第一碼塊分配所述填充比特。
12.根據(jù)權(quán)利要求1所述的方法,該方法還包括以下步驟
向所述多個碼塊的第一碼塊中的、除填充比特的尺寸和所述第二檢錯碼的尺寸之外的區(qū)域分配數(shù)據(jù);以及
向從第二碼塊開始的多個碼塊中的、除所述第二檢錯碼的尺寸之外的區(qū)域分配所述數(shù)據(jù)。
13.根據(jù)權(quán)利要求12所述的方法,
其中,向所述第一碼塊分配數(shù)據(jù)的步驟還包括以下步驟將所述第二檢錯碼附加到所述第一碼塊;以及
其中,向從所述第二碼塊開始的多個碼塊分配數(shù)據(jù)的步驟還包括以下步驟將所述第二檢錯碼附加到從所述第二碼塊開始的所述多個碼塊。
14.根據(jù)權(quán)利要求1所述的方法,
其中,所述多個碼塊的最大尺寸Z為6144個比特。
15.一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)的方法,該方法包括以下步驟
通過將第一檢錯碼附加到第一輸入比特序列來生成第二輸入比特序列;
利用所述第一輸入比特序列的尺寸A和所述第一檢錯碼的尺寸L,來計算所述第二輸入比特序列的尺寸B;
如果所述第二輸入比特序列的尺寸B大于多個碼塊的最大尺寸Z,則利用所述第二輸入比特序列的尺寸B、所述多個碼塊的最大尺寸Z以及要附加到所述多個碼塊中的各個碼塊的第二檢錯碼的尺寸L,來計算所述多個碼塊的數(shù)量C;
利用所述多個碼塊的數(shù)量C、所述第二檢錯碼的尺寸L以及所述第二輸入比特序列的尺寸B,來計算修改后的第二輸入比特序列的尺寸B′;
基于通過將所述修改后的第二輸入比特序列的尺寸B′除以所述多個碼塊的數(shù)量C所獲得的值,來從多個預(yù)定值中獲取所述多個碼塊的尺寸K、K+、和K-;
對所述第二輸入比特序列進(jìn)行分段,以具有所述多個碼塊的數(shù)量C和所述多個碼塊的所獲取的尺寸K、K+、和K-;
通過將所述第二檢錯碼附加到分段后的多個所述第二輸入比特序列中的各個第二輸入比特序列,來生成所述多個碼塊;以及
對所述多個碼塊進(jìn)行信道編碼。
全文摘要
公開了一種在無線接入系統(tǒng)中發(fā)送數(shù)據(jù)的方法。該方法包括以下步驟在考慮要附加到各個碼塊的檢錯碼的情況下來獲取碼塊的數(shù)量,計算所述碼塊的尺寸,對輸入數(shù)據(jù)進(jìn)行分段,并對所述碼塊進(jìn)行信道編碼,由此高效地發(fā)送數(shù)據(jù)。
文檔編號H04L1/00GK101821980SQ200880111567
公開日2010年9月1日 申請日期2008年8月14日 優(yōu)先權(quán)日2007年8月14日
發(fā)明者金起煥, 李榮燮, 姜承顯, 鄭載薰 申請人:Lg電子株式會社