專利名稱:一種交織速率匹配和解交織解速率匹配方法
技術(shù)領(lǐng)域:
本發(fā)明涉及速率匹配技術(shù),特別涉及一種交織速率匹配和解交織解速率 匹配方法。
背景技術(shù):
在通信系統(tǒng)中,速率匹配的作用是調(diào)整信道編碼器輸出的碼率,使速率匹 配模塊輸出的比特?cái)?shù)與系統(tǒng)分配的物理資源所能承載的比特?cái)?shù)相符合。速率匹 配過(guò)程中一般要與交織處理相結(jié)合,以便實(shí)現(xiàn)性能優(yōu)越的可變速率機(jī)制,并在 高碼速率下提高編碼性能的穩(wěn)定性。
通常的交織方法可分為分組交織以及巻積交織等。分組交織,也稱為矩陣
交織或塊交織?,F(xiàn)有通信系統(tǒng)中,例如3GPP、 3GPP2等無(wú)線通信技術(shù)標(biāo)準(zhǔn)協(xié) 議中,速率匹配算法多采用分組交織方式。即在交織時(shí),將比特流按行寫入交 織矩陣,進(jìn)行列交織,然后按列順序讀出;而解交織時(shí)則將軟比特按列寫入解 交織矩陣,進(jìn)行列解交織,再按行順序讀出。這種方式的特點(diǎn)是實(shí)現(xiàn)相對(duì)簡(jiǎn)單, 且對(duì)于R行C列的交織矩陣(RxQ,可以將連續(xù)差錯(cuò)在譯碼端以C個(gè)比特的周 期間隔分隔開(kāi),當(dāng)這種差錯(cuò)處于所采用的編譯碼方案的糾錯(cuò)能力范圍內(nèi)時(shí),即 可糾正這一類差錯(cuò)。這里,交織參數(shù)C的取值越大,交織均勻度就越好,最終速 率匹配的性能也會(huì)提高;但是在利用硬件電路高速并行實(shí)現(xiàn)交織器的時(shí)候,交 織參數(shù)取C的交織器通常需要C塊存儲(chǔ)器(RAM), C越大,消耗硬件資源就越 多,實(shí)現(xiàn)復(fù)雜度也隨之提高。
在3GPP LTE標(biāo)準(zhǔn)技術(shù)中,采用了基于循環(huán)緩存器的速率匹配機(jī)制,具有 如下特點(diǎn)同以往的分組交織技術(shù)一樣,數(shù)據(jù)傳輸塊被分割為多個(gè)碼塊(CB), 針對(duì)每個(gè)碼塊進(jìn)行速率匹配,并且可以并行處理多個(gè)碼塊;為每個(gè)碼塊配備一個(gè)循環(huán)緩沖器,可以降低處理復(fù)雜度和時(shí)延;僅需要一個(gè)比特收集交織器,處
理時(shí)延低。具體對(duì)每個(gè)碼塊進(jìn)行速率匹配構(gòu)件的結(jié)構(gòu)通常由n個(gè)子塊交織器才莫 塊, 一個(gè)比特收集模塊和一個(gè)比特選擇和修剪模塊組成,可參考圖1所示。其 工作過(guò)程如下
*首先將編碼器輸出的n個(gè)比特流《),《1),......《)經(jīng)n個(gè)子塊交織器模塊分
別做子塊交織,得到交織后的n個(gè)比特流《),《),......《);例如,在3GPPLTE系
統(tǒng)中,編碼器輸出3個(gè)比特流,其中第一個(gè)比特流為信息比特,后面兩個(gè)比特 流為校驗(yàn)比特,將三個(gè)比特流分別按行寫入子塊交織矩陣,進(jìn)行列交織后,再 分別按列讀出形成3個(gè)交織后的比特流;3個(gè)編碼比特流的交織可以并行進(jìn)行, 但是需要3個(gè)緩沖器用于保存交織后形成的比特流;
將《),《),......《'送往比特收集模塊,將交織后的比特根據(jù)協(xié)議規(guī)定的模式
做某種間插排列,級(jí)聯(lián)拼接,送入循環(huán)緩沖器,得到^,例如,在3GPP LTE 標(biāo)準(zhǔn)中, 一個(gè)信息比特流的交織結(jié)果順序排列在循環(huán)緩沖器的開(kāi)頭,兩個(gè)沖交一險(xiǎn) 比特流的交織結(jié)果間隔排列在其后;
*由比特選擇和修剪模塊根據(jù)冗余版本的需要對(duì)循環(huán)緩沖器中的比特進(jìn)行 篩選和修剪,得到指定碼率和格式的輸出比特流e,.;即根據(jù)冗余版本的不同, 循環(huán)緩沖器中輸出比特的起始位置可能不同,因此,需要根據(jù)冗余版本確定此 次輸出比特的起始位置,并按照指定碼率和格式進(jìn)行輸出。
從上述過(guò)程可以發(fā)現(xiàn),圖1所示的速率匹配結(jié)構(gòu)在實(shí)現(xiàn)時(shí),存在以下問(wèn)題 如果按照子塊交織器模塊、比特收集模塊和比特選擇和修剪模塊為功能塊實(shí)現(xiàn), 則每一模塊都需要分別用緩沖器暫存中間結(jié)果,再由下一模塊從上一模塊的緩 沖器中取出中間結(jié)果進(jìn)行處理,這樣將引入大量對(duì)緩沖器的讀寫操作;雖然進(jìn) 行子塊交織時(shí)各子塊可以并行處理,但是同樣的n個(gè)子塊交織過(guò)程需要n個(gè)相 同的硬件資源,難以實(shí)現(xiàn)資源共享。
解速率匹配過(guò)程是速率匹配過(guò)程的逆過(guò)程。如果按照?qǐng)D1所示結(jié)構(gòu)的逆 過(guò)程進(jìn)行實(shí)現(xiàn),同樣存在對(duì)緩沖器讀寫操作多和資源難以共享的缺點(diǎn)。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明提供一種交織速率匹配和解交織解匹配方法,能夠減 少速率匹配時(shí)對(duì)緩存器的讀寫操作。
一種交織速率匹配方法,包括
a、 根據(jù)列交織模式確定交織算子;將編碼輸出的比特流寫入各個(gè)子塊交織 矩陣,并進(jìn)行比特填充,將所有子塊交織矩陣按系統(tǒng)協(xié)議規(guī)定方式排列;根據(jù) 各個(gè)子塊交織矩陣確定對(duì)應(yīng)的掩碼矩陣;按照冗余版本確定本次傳輸數(shù)據(jù)的起 始位置所在的子塊交織后矩陣以及列編號(hào)i;
b、 將交織算子的第i行作為當(dāng)前行,并將確定的所述子塊交織后矩陣對(duì)應(yīng) 的子塊交織矩陣作為當(dāng)前子塊交織矩陣;
c、 依次將所述當(dāng)前子塊交織矩陣對(duì)應(yīng)的掩碼矩陣中的每一行與交織算子當(dāng) 前行的轉(zhuǎn)置相乘,根據(jù)相乘結(jié)果,選擇當(dāng)前子塊交織矩陣中的相應(yīng)行與交織算 子當(dāng)前行的轉(zhuǎn)置相乘,并將得到的比特值順序輸出,直到所有輸出的比特?cái)?shù)滿 足速率匹配要求,或?qū)⒌玫降乃斜忍鼐敵觯?br>
d、 判斷當(dāng)前行是否為交織算子的最后一行,若是,則執(zhí)行步驟e,否則將 當(dāng)前行的下 一行作為當(dāng)前行,返回步驟c;
e、 判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子的第1行作為當(dāng)前行,返 回步驟c;否則,將下一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子 的第1行作為當(dāng)前行,返回步驟c。
較佳地,所述根據(jù)各個(gè)子塊交織矩陣確定對(duì)應(yīng)的掩碼矩陣為子塊交織矩 陣對(duì)應(yīng)的掩碼矩陣的維數(shù)與所述子塊交織矩陣的維數(shù)相同,掩碼矩陣的每個(gè)元 素用于標(biāo)識(shí)子塊交織矩陣中相同位置上的比特是否有效。
較佳地,步驟c中所述根據(jù)相乘結(jié)果選擇當(dāng)前子塊交織矩陣中的相應(yīng)行與 交織算子當(dāng)前行的轉(zhuǎn)置相乘包括
若相乘結(jié)果為無(wú)效比特,則不將當(dāng)前子塊交織矩陣的相應(yīng)行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,且不輸出比特值;若相乘結(jié)果為有效比特,則將當(dāng)前子塊交
織矩陣的相應(yīng)行與交織算子當(dāng)前行的轉(zhuǎn)置相乘。
較佳地,交織算子的任一行、子塊交織矩陣的任一行和掩碼矩陣的任一行, 均利用與機(jī)器字長(zhǎng)相匹配的單元表示,其中所述單元的每個(gè)有效比特對(duì)應(yīng)表示 交織算子任一行中的每個(gè)元素、子塊交織矩陣任一行的每個(gè)元素或掩碼矩陣任
一行的每個(gè)元素;
步驟c中掩碼矩陣中的任一行與交織算子的當(dāng)前行轉(zhuǎn)置的相乘操作為用 于表示掩碼矩陣中所述任一行的單元與用于表示交織算子當(dāng)前行的單元進(jìn)行邏 輯與操作;
步驟c中當(dāng)前子塊交織矩陣中的任一行與交織算子的當(dāng)前行轉(zhuǎn)置的相乘操 作為用于表示當(dāng)前子塊交織矩陣中所述任一行的單元與用于表示交織算子當(dāng)
前行的單元進(jìn)行邏輯與揭:作。
較佳地,所述根據(jù)列交織模式確定交織算子為交織算子為方陣,行數(shù)C 與所述子塊交織矩陣的列數(shù)相等,且交織算子第j行的第P(j)列元素取值為1, 第j行的其他元素全部取O,其中,j=l,2,...,C, P(j)為所述列交織模式。
較佳地,所述將編碼輸出的比特流寫入各個(gè)子塊交織矩陣包括
將編碼輸出的信息比特流寫入一個(gè)子塊交織矩陣,將編碼輸出的兩個(gè)校驗(yàn) 比特流寫入另 一個(gè)子塊交織矩陣,且所述兩個(gè)校驗(yàn)比特流隔行排列在所述另一 個(gè)子塊交織矩陣中。
一種解交織解速率匹配的方法,包括
a、 根據(jù)編碼參數(shù)確定各個(gè)子塊交織矩陣的大小和填充比特位置,并確定各 個(gè)子塊交織矩陣對(duì)應(yīng)的掩碼矩陣;設(shè)置各個(gè)子塊交織矩陣中非填充比特對(duì)應(yīng)軟 比特的保存位置;按照冗余版本確定本次傳輸數(shù)據(jù)的起始位置所在的子塊交織 后矩陣以及列編號(hào)i;
b、 將確定的所述子塊交織后矩陣對(duì)應(yīng)的子塊交織矩陣作為當(dāng)前子塊交織矩 陣,將接收的第一個(gè)軟比特作為當(dāng)前軟比特;
c、 根據(jù)當(dāng)前子塊交織矩陣對(duì)應(yīng)的掩碼矩陣,依次確定當(dāng)前子塊交織矩陣中第P(i)列的每個(gè)元素是否為有效,若為無(wú)效,則不讀取當(dāng)前軟比特;若為有效, 則讀取當(dāng)前軟比特,將讀取的當(dāng)前軟比特保存在該有效比特對(duì)應(yīng)軟比特的保存 位置上,并將下一個(gè)軟比特作為當(dāng)前軟比特;當(dāng)讀取出所有接收的軟比特時(shí), 結(jié)束本流程,否則執(zhí)行步驟d;其中,所述P(i)為列交織模式;
d、 判斷i是否等于當(dāng)前子塊交織矩陣的列數(shù),若是,則執(zhí)行步驟e,否則 將i自力口,返回步驟c;
e、 判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令卜l,返回步驟c;否則,將下一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i-l,返回步驟c。
較佳地,所述將讀取的當(dāng)前軟比特保存在該有效比特對(duì)應(yīng)軟比特的保存位 置上包括
若所述該有效比特對(duì)應(yīng)軟比特的保存位置上為空,則直接將所述當(dāng)前軟比 特保存在該保存位置上;
若所述該有效比特對(duì)應(yīng)軟比特的保存位置上不為空,則將該保存位置上的 值與所述當(dāng)前軟比特進(jìn)行合并,將合并結(jié)果保存在該保存位置上。
較佳地,所述根據(jù)各個(gè)子塊交織矩陣確定對(duì)應(yīng)的掩碼矩陣為子塊交織矩 陣對(duì)應(yīng)的掩碼矩陣的維數(shù)與所述子塊交織矩陣的維數(shù)相同,掩碼矩陣的每個(gè)元 素用于標(biāo)識(shí)子塊交織矩陣中相同位置上的比特是否有效。
一種交織速率匹配方法,包括
a、 根據(jù)列交織模式確定交織算子;將編碼輸出的比特流寫入信息子塊交織 矩陣和各個(gè)校驗(yàn)子塊交織矩陣,并進(jìn)行比特填充,將所有子塊交織矩陣按比特
流順序排列;
b、 根據(jù)編碼參數(shù)確定信息子塊交織矩陣的填充比特,從交織算子的第1 行開(kāi)始到最后一行為止,對(duì)每一行執(zhí)行如下步驟
依次將所述信息子塊交織矩陣中的每一行與交織算子當(dāng)前行的轉(zhuǎn)置相乘, 若相乘結(jié)果為所述確定的填充比特,則不輸出相乘結(jié)果,若相乘結(jié)果不是所述 確定的填充比特,則將相乘結(jié)果輸出到虛循環(huán)緩沖區(qū)中;C、根據(jù)編碼參數(shù)確定各個(gè)校驗(yàn)子塊交織矩陣的填充比特,從交織算子的第 l行開(kāi)始到最后一行為止,對(duì)每一行,執(zhí)行如下步驟
將各個(gè)校驗(yàn)子塊交織矩陣中的第n行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,依次 得到多個(gè)相乘結(jié)果,按校驗(yàn)子塊交織矩陣的排列順序判斷每個(gè)校驗(yàn)子塊交織矩 陣對(duì)應(yīng)的相乘結(jié)果,若相乘結(jié)果為所述確定的填充比特,則不輸出該相乘結(jié)果, 若相乘結(jié)果不是所述確定的填充比特,則將該相乘結(jié)果輸出到虛循環(huán)緩沖區(qū)中; 其中,n依次取l,2,…,N, N為校驗(yàn)子塊交織矩陣的行數(shù);
d、根據(jù)冗余版本號(hào)從虛循環(huán)緩沖區(qū)中輸出符合速率匹配要求的比特。
較佳地,步驟a中所述將編碼輸出的比特流寫入信息子塊交織矩陣和各個(gè) 校驗(yàn)子塊交織矩陣包括將編碼輸出的信息比特流寫入信息子塊交織矩陣,將 編碼輸出的第一個(gè)校驗(yàn)比特流寫入第一個(gè)校驗(yàn)子塊交織矩陣,將編碼輸出的第 二個(gè)校驗(yàn)比特流寫入第二個(gè)4L驗(yàn)子塊交織矩陣;
所述校驗(yàn)子塊交織矩陣的排列順序?yàn)榈谝粋€(gè)校驗(yàn)子塊交織矩陣在前,第 二個(gè)校驗(yàn)子塊交織矩陣在后。
較佳地,交織算子的任一行和各個(gè)子塊交織矩陣的任一行,均與機(jī)器字長(zhǎng) 相匹配的單元表示,其中所述單元的每個(gè)有效比特對(duì)應(yīng)表示交織算子任一行中 的每個(gè)元素或子塊交織矩陣任一行的每個(gè)元素;
步驟c中子塊交織矩陣中的任一行與交織算子的當(dāng)前行轉(zhuǎn)置的相乘操作 為用于表示子塊交織矩陣中所述任一行的單元與用于表示交織算子當(dāng)前行的 單元進(jìn)行邏輯與操作。
較佳地,所述根據(jù)列交織模式確定交織算子為交織算子為方陣,行數(shù)C 與所述子塊交織矩陣的列數(shù)相等,且交織算子第j行的第P(j)列元素耳又值為1, 第j行的其他元素全部取O,其中,H,2,…,C, P(j)為所述列交織模式。
一種解交織解速率匹配的方法,其特征在于,該方法包括
a、根據(jù)編碼參數(shù)確定各個(gè)子塊交織矩陣的大小和填充比特位置,并設(shè)置各 個(gè)子塊交織矩陣中非填充比特對(duì)應(yīng)軟比特的保存位置;按照冗余版本確定本次 傳輸數(shù)據(jù)的起始位置所在的子塊交織后矩陣以及列編號(hào)i;b、 將確定的所述子塊交織后矩陣對(duì)應(yīng)的子塊交織矩陣作為當(dāng)前子塊交織矩
陣,將接收的第一個(gè)軟比特作為當(dāng)前軟比特;
c、 依次確定所述當(dāng)前子塊交織矩陣中第P(i)列的每個(gè)元素是否為填充比特, 若為填充比特,則不讀取當(dāng)前軟比特;若為非填充比特,則讀取當(dāng)前軟比特, 將讀取的當(dāng)前軟比特保存在該非填充比特對(duì)應(yīng)軟比特的保存位置上,將下一個(gè) 軟比特作為當(dāng)前軟比特;當(dāng)讀取出所有接收的軟比特時(shí),結(jié)束本流程,否則執(zhí) 行步驟d;其中,所述P(i)為列交織模式;
d、 判斷i是否等于當(dāng)前子塊交織矩陣的列數(shù),若是,則執(zhí)行步驟e,否則 將i自力口,返回步驟c;
e、 判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i-l,返回步驟c;否則,將下一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i-l,根據(jù)編碼參數(shù)確定當(dāng)前子塊 交織矩陣的填充比特,并返回步驟c。
較佳地,所述將讀取的當(dāng)前軟比特保存在該非填充比特對(duì)應(yīng)軟比特的保存 位置上包括
若所述該非填充比特對(duì)應(yīng)軟比特的保存位置上為空,則直接將所述當(dāng)前軟 比特保存在該保存位置上;
若所迷該非填充比特對(duì)應(yīng)軟比特的保存位置上不為空,則將該保存位置上 的值與所述當(dāng)前軟比特進(jìn)行合并,將合并結(jié)果保存在該保存位置上。
一種交織速率匹配方法,包括
a、 根據(jù)列交織模式確定交織算子;將編碼輸出的比特流寫入各個(gè)子塊交織 矩陣,并進(jìn)行比特填充,將所有子塊交織矩陣按系統(tǒng)協(xié)議規(guī)定方式排列;按照 冗余版本確定本次傳輸數(shù)據(jù)的起始位置所在的子塊交織后矩陣以及列編號(hào)i;
b、 將交織算子的第i行作為當(dāng)前行,并將確定的所述子塊交織后矩陣對(duì)應(yīng) 的子塊交織矩陣作為當(dāng)前子塊交織矩陣;
c、 根據(jù)編碼參數(shù)確定當(dāng)前子塊交織矩陣的填充比特,依次將所述當(dāng)前子塊 交織矩陣中的每一行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,若相乘結(jié)果為所述確定的填充比特,則不輸出相乘結(jié)果,若相乘結(jié)果不是所述確定的填充比特,則輸出 該相乘結(jié)果,直到所有輸出的比特?cái)?shù)滿足速率匹配要求,或?qū)⒌玫降乃斜忍?br>
均輸出;
d、 判斷當(dāng)前行是否為交織算子的最后一行,若是,則執(zhí)行步驟e,否則將 當(dāng)前行的下一4亍作為當(dāng)前行,返回步驟c;
e、 判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子的第1行作為當(dāng)前行,返 回步驟c;否則,將下一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子 的第1行作為當(dāng)前行,返回步驟c。
較佳地,步驟a中所述將編碼輸出的比特流寫入各個(gè)子塊交織矩陣包括
將編碼輸出的信息比特流寫入一個(gè)子塊交織矩陣,將編碼輸出的兩個(gè)4吏馬僉 比特流寫入另一個(gè)子塊交織矩陣,且所述兩個(gè)校驗(yàn)比特流隔行排列在所述另一 個(gè)子塊交織矩陣中。
較佳地,交織算子的任一行和子塊交織矩陣的任一行,均與機(jī)器字長(zhǎng)相匹 配的單元表示表示,其中所述單元的每個(gè)有效比特對(duì)應(yīng)表示交織算子任一行中 的每個(gè)元素或子塊交織矩陣任一行的每個(gè)元素的每個(gè)元素;
步驟c中當(dāng)前子塊交織矩陣中的任一行與交織算子的當(dāng)前行轉(zhuǎn)置的相乘4乘 作為用于表示當(dāng)前子塊交織矩陣中所述任一行的單元與用于表示交織算子當(dāng) 前行的單元進(jìn)行邏輯與操作。
較佳地,所述才艮據(jù)列交織模式確定交織算子為交織算子為方陣,列^tC 與所述子塊交織矩陣的列數(shù)相等,且交織算子第j行的第P(j)列元素取]直為1, 第j行的其他元素全部取O,其中,j=l,2,...,C, P(j)為所述列交織模式。
一種解交織解速率匹配的方法,其特征在于,該方法包括
a、 根據(jù)編碼參數(shù)確定各個(gè)子塊交織矩陣的大小和填充比特位置,并設(shè)置各 個(gè)子塊交織矩陣中非填充比特對(duì)應(yīng)軟比特的保存位置;按照冗余版本確定本次 傳輸數(shù)據(jù)的起始位置所在的子塊交織后矩陣以及列編號(hào)i;
b、 將確定的所述子塊交織后矩陣對(duì)應(yīng)的子塊交織矩陣作為當(dāng)前子塊交織矩陣,將接收的第一個(gè)軟比特作為當(dāng)前軟比特;
c、 依次確定所述當(dāng)前子塊交織矩陣中第P(i)列的每個(gè)元素是否為填充比特, 若為填充比特,則不讀取當(dāng)前軟比特;若為非填充比特,則讀取當(dāng)前軟比特, 將讀取的當(dāng)前軟比特保存在該非填充比特對(duì)應(yīng)軟比特的保存位置上,將下一個(gè) 軟比特作為當(dāng)前軟比特;當(dāng)讀取出所有接收的軟比特時(shí),結(jié)束本流程,否則執(zhí) 行步驟d;其中,所述P(i)為列交織模式;
d、 判斷i是否等于當(dāng)前子塊交織矩陣的列數(shù),若是,則執(zhí)行步驟e,否則 將i自加,返回步驟c;
e、 判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i-l,返回步驟c;否則,將下一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i-l,才艮據(jù)編碼參^t確定當(dāng)前子塊 交織矩陣的填充比特,并返回步驟c。
較佳地,所述將讀取的當(dāng)前軟比特保存在該非填充比特對(duì)應(yīng)軟比特的保存 位置上包括
若所述該非填充比特對(duì)應(yīng)軟比特的保存位置上為空,則直接將所述當(dāng)前軟 比特保存在該保存位置上;
若所述該非填充比特對(duì)應(yīng)軟比特的保存位置上不為空,則將該保存位置 上的值與所述當(dāng)前軟比特進(jìn)行合并,將合并結(jié)果保存在該保存位置上。
由上述本發(fā)明的技術(shù)方案可見(jiàn),本發(fā)明中,根據(jù)列交織模式確定交織算 子,利用交織算子順序?qū)ψ訅K交織矩陣進(jìn)行交織處理, 一種方式可以根據(jù)冗 余版本要求,利用交織算子對(duì)子塊交織矩陣中需要輸出的比特進(jìn)行交織處 理,在完成子塊交織的同時(shí),將按協(xié)議排序后的子塊交織結(jié)果直接輸出,直 到達(dá)到相應(yīng)的碼率要求;另一種方式可以利用交織算子逐個(gè)對(duì)子塊交織矩陣 進(jìn)行交織處理,在完成子塊交織的同時(shí),將按協(xié)議排序后的子塊交織結(jié)果輸 出到循環(huán)緩沖器中,再根據(jù)冗余版本要求輸出相應(yīng)的交織后比特。從而在速 率匹配過(guò)程中,大大減少了使用的緩存器以及對(duì)緩存器的讀寫操作。
圖1為現(xiàn)有的速率匹配結(jié)構(gòu)示意圖。
圖2為本發(fā)明中交織算子生成方式示意圖。
圖3為本發(fā)明實(shí)施例 一 中組成的各個(gè)子塊交織矩陣的示意圖。
圖4為應(yīng)用實(shí)施例一的方法對(duì)LTE Turbo編碼傳輸信道進(jìn)行速率匹配過(guò) 程的示意圖。
圖5是生成3個(gè)掩碼矩陣并將這3個(gè)掩碼矩陣存放到內(nèi)存中的示意圖。
圖6為應(yīng)用實(shí)施例一的方法對(duì)LTE Turbo i奪碼傳輸信道進(jìn)行解交織解速 率匹配過(guò)程的示意圖。
圖7是實(shí)施例 一的方法用于LTE Turbo編碼傳輸信道速率匹配的內(nèi)存占 用情況與采用圖1所示的速率匹配結(jié)構(gòu)的比較。
圖8是實(shí)施例一的方法用于LTE Turbo編碼傳輸信道速率匹配的內(nèi)存讀 寫次數(shù)與采用圖1所示的速率匹配結(jié)構(gòu)的比較。
圖9為實(shí)施例二中將子塊交織矩陣的交織結(jié)果輸出到循環(huán)緩沖器的示 意圖。
具體實(shí)施例方式
為使本發(fā)明的目的、技術(shù)手段和優(yōu)點(diǎn)更加清楚明白,以下結(jié)合附圖對(duì)本 發(fā)明做進(jìn)一步詳細(xì)說(shuō)明。
本發(fā)明的基本思想是將子塊交織和速率匹配過(guò)程相結(jié)合,相應(yīng)的,將 解速率匹配和子塊解交織過(guò)程相結(jié)合,聯(lián)合簡(jiǎn)化其間所需的緩存器,從而減 少對(duì)緩存器的讀寫。
首先對(duì)交織過(guò)程進(jìn)行分析
列交織過(guò)程可以理解為對(duì)交織矩陣(這里記為F)做列初等變換。給定尺寸為 《1mxC工m的矩降Y,交換y的i, j兩列相當(dāng)于對(duì)y右乘一個(gè)初等矩陣&: r = yx£;. (1)其中^是由C^階單位矩陣交換其i, j列得到。根據(jù)矩陣列初等變換原 理,設(shè)子塊交織矩陣的行為i^歸,列為c:^ ;設(shè)輸入比特序列為
0^',A = o,i,......x -1},
按行寫入子塊交織矩陣后得到矩陣為
<formula>formula see original document page 20</formula>假定列交織模式表示為A = 0,1, Y進(jìn)行列交織后的矩陣即可以表示為
c:l&,-i ,則按照該列交織模對(duì)矩陣
7
p (,。t i -1)+d"
設(shè)交織算子PO為一個(gè)C,w。
矩陣,其中POr第/行第列取值為1 ,行
內(nèi)其它元素全部取0。圖2為PO第./行的生成方式,C工m,C。
根據(jù)上述交織算子的形式以及前述矩陣Y和Y'的關(guān)系,則由矩陣Y和交 織算子可以得到矩陣Y',即
y' = yx(_po), (2)
可見(jiàn),利用交織算子可以實(shí)現(xiàn)子塊交織的過(guò)程,相應(yīng)的,利用交織算子也
可以進(jìn)行子塊解交織,具體可表示為
r4'x(尸o) (3) 其中y'x(/Y>) = yxCPOr)'x(po)=:Fx£ = :r
由上述對(duì)于子塊交織的分析可見(jiàn),利用交織算子能夠?qū)崿F(xiàn)子塊交織和解 交織過(guò)程。
本發(fā)明中,正是利用交織算子,依次對(duì)每個(gè)子塊交織矩陣進(jìn)行處理,并 直接將交織結(jié)果以協(xié)議規(guī)定方式保存在循環(huán)緩沖器中,而不需要中間的暫存 單元;或者,在進(jìn)行交織處理前,通過(guò)對(duì)編碼比特流的合理排列使得形成的子塊交織矩陣即按照協(xié)議規(guī)定方式構(gòu)成,再利用交織算子對(duì)子塊交織矩陣中 需要輸出的比特進(jìn)行交織處理,將符合速率要求和冗余版本規(guī)定的交織結(jié)果 輸出,不需要循環(huán)緩沖器。
另外,從編碼器輸出的比特流在寫入交織矩陣時(shí),存在比特流不能填滿 子塊交織矩陣的情況,需要對(duì)未填滿部分進(jìn)行比特填充,這些填充比特是無(wú) 效比特,因此不需要輸出。那么在利用交織算子對(duì)子塊交織矩陣進(jìn)行交織處 理,并直接輸出交織結(jié)果時(shí),是不需要輸出無(wú)效比特的,這就要求在進(jìn)行交 織處理的過(guò)程中,確定無(wú)效比特的位置,并不對(duì)其進(jìn)行輸出。具體實(shí)現(xiàn)方式
可以有兩種 一種方式是生成子塊交織矩陣對(duì)應(yīng)的掩碼矩陣,用于表示相應(yīng) 子塊交織矩陣上各個(gè)位置比特的有效性,這樣,可以通過(guò)掩碼矩陣確定出填 充比特的位置,從而不對(duì)該比特的交織結(jié)果進(jìn)行輸出;另一種方式是根據(jù)編 碼參數(shù)預(yù)先計(jì)算出填充比特在交織后數(shù)據(jù)流中的位置,在輸出時(shí)即不再輸出 該相應(yīng)交織結(jié)果,這種方式下不需要引入額外的掩碼矩陣,進(jìn)一步減少了緩 存。
下面通過(guò)三個(gè)實(shí)施例說(shuō)明本發(fā)明的具體實(shí)現(xiàn)方式。 實(shí)施例一
在本實(shí)施例中,引入掩碼矩陣用于記錄子塊交織矩陣中各個(gè)比特的有效 性,并且在利用交織算子進(jìn)行子塊交織處理后,直接根據(jù)冗余版本號(hào),對(duì)需 要輸出的比特進(jìn)行交織處理,并將交織后的比特流直接寫入碼塊級(jí)聯(lián)緩存, 實(shí)現(xiàn)速率匹配。
具體的,本實(shí)施例中的速率匹配方法流程包括
步驟IOI,根據(jù)列交織模式生成交織算子。
具體生成交織算子的方式如前所述,即交織算子戶Or為 一 個(gè) CxC矩陣,其中/^第J行第P(力列取值為1,第)行內(nèi)其它元素全
部取O, 乂的取值為0, 1,…d,。
步驟102,將編碼輸出的比特流寫入各個(gè)子塊交織矩陣,進(jìn)行比特填充,并按照系統(tǒng)協(xié)議規(guī)定方式排列;根據(jù)各個(gè)子塊交織矩陣確定對(duì)應(yīng)的掩碼矩 陣。
從編碼器輸出的/2個(gè)比特流《),《),......《")首先需要根據(jù)系統(tǒng)協(xié)議規(guī)定分別
將每個(gè)比特流按行優(yōu)先的順序?qū)懭牍潭袑挼淖訅K交織矩陣。子塊交織矩陣的 行數(shù)應(yīng)選擇能容納相應(yīng)比特流長(zhǎng)度的最小值。因此存在比特流不能填滿交織矩
陣的情況。需要對(duì)未填滿部分做比特填充,即將無(wú)效位置標(biāo)記為〈冊(cè)LL〉。
對(duì)于采用不同的列交織模式的比特流,表現(xiàn)為對(duì)應(yīng)子塊交織矩陣的比特 寫入方式,無(wú)效位置標(biāo)記和交織算子的差別。在3GPPLTE系統(tǒng)中,將編碼 比特流寫入子塊交織矩陣的編碼輸出的信息比特流寫入一個(gè)子塊交織矩陣, 將輸出的兩個(gè)校驗(yàn)比特流寫入另一個(gè)子塊交織矩陣,并且這兩個(gè)校驗(yàn)比特流 隔行排列在該子塊交織矩陣中,具體示意圖如圖3所示。
本實(shí)施例中,利用掩碼矩陣標(biāo)記各個(gè)子塊交織矩陣中填充比特(即無(wú)效 比特)位置。具體的,對(duì)應(yīng)每個(gè)子塊交織矩陣,生成與該子塊交織矩陣維數(shù) 相同的掩碼矩陣,掩碼矩陣中的每個(gè)比特取值為對(duì)應(yīng)子塊交織矩陣相同位置 比特的屬性值,稱為比特標(biāo)志位,例如矩陣中某位置上的比特取1時(shí),表示 對(duì)應(yīng)子塊交織矩陣中相同位置上為有效比特,當(dāng)掩碼矩陣中某位置上的比特 取0時(shí),表示對(duì)應(yīng)子塊交織矩陣中相同位置上為填充比特;或者可以利用相 反的比特表示。
步驟103,根據(jù)冗余版本號(hào),確定本次傳輸數(shù)據(jù)的起始位置所在的子塊 交織后矩陣A以及列編號(hào)i。
對(duì)于不同的冗余版本號(hào),傳輸數(shù)據(jù)的起始位置會(huì)有所差異,在本實(shí)施例 中,僅對(duì)本次需要傳輸?shù)臄?shù)據(jù)進(jìn)行子塊交織,因此,需要在進(jìn)行交織前,確 定此次需要傳輸數(shù)據(jù)的起始位置。每個(gè)子塊交織矩陣進(jìn)行子塊交織后會(huì)形成 相應(yīng)的子塊交織后矩陣。根據(jù)冗余版本號(hào)確定的數(shù)據(jù)傳輸起始位置指的是在-進(jìn)行子塊交織后得到的交織后比特流中的起始位置,也就是在子塊交織后矩 陣中的位置。而每個(gè)子塊交織后矩陣對(duì)應(yīng)一個(gè)子塊交織矩陣,由子塊交織后矩陣的起始位置能夠推出對(duì)應(yīng)子塊交織矩陣中的相應(yīng)位置,則可以直接從該 位置起進(jìn)行交織處理,那么得到的輸出比特即為本次傳輸數(shù)據(jù)的起始比特, 于是可以將其直接輸出到碼塊級(jí)聯(lián)緩存,并順次將后續(xù)產(chǎn)生的交織后比特輸 出,直到輸出的比特?cái)?shù)滿足速率匹配要求,從而實(shí)現(xiàn)了子塊交織和速率匹配 的聯(lián)合筒化,避免了在此過(guò)程中緩存器的引入,也由于不需要進(jìn)行起始位置 前比特的子塊交織處理,從而節(jié)省了處理時(shí)間。
步驟104,將交織算子的第i行作為當(dāng)前行,并將確定的起始位置所在 的子塊交織后矩陣A對(duì)應(yīng)的子塊交織矩陣作為當(dāng)前子塊交織矩陣。
從本步驟開(kāi)始進(jìn)行子塊交織操作。如前所述,該子塊交織#:作從確定的 起始位置開(kāi)始。由于需要對(duì)子塊交織矩陣進(jìn)行交織處理,因此具體的交織處 理從子塊交織后矩陣A對(duì)應(yīng)的子塊交織矩陣開(kāi)始進(jìn)行。
步驟105,依次將當(dāng)前子塊交織矩陣對(duì)應(yīng)的掩碼矩陣中的每一行與交織
算子當(dāng)前行的轉(zhuǎn)置相乘,并根據(jù)相乘結(jié)果,選擇當(dāng)前子塊交織矩陣中的相應(yīng) 行與交織算子的當(dāng)前行的轉(zhuǎn)置相乘,并順序輸出相乘結(jié)果,若所有輸出的比 特?cái)?shù)滿足速率匹配要求,或?qū)⒌玫降乃斜忍鼐敵?,則結(jié)束本流程,否則
執(zhí)4亍步驟106。
本步驟中,由于在子塊交織矩陣中可能存在填充比特,因此當(dāng)子塊交織 矩陣中的某一行與交織算子當(dāng)前行轉(zhuǎn)置相乘時(shí),可能得到的結(jié)果是填充比 特,而對(duì)于這些填充比特是不需要輸出的,因此,對(duì)于這些結(jié)果是填充比特 的子塊交織矩陣中的行,就沒(méi)有必要與交織算子當(dāng)前行裝置進(jìn)行相乘操作, 也就是說(shuō),需要選擇結(jié)果為有效比特的行與交織算子當(dāng)前行轉(zhuǎn)置進(jìn)行相乘操 作。而具體判斷相乘結(jié)果是否為填充比特的方式,可以通過(guò)掩碼矩陣與與交 織算子當(dāng)前行轉(zhuǎn)置的相乘操作來(lái)進(jìn)行。
具體的,將掩碼矩陣的任一行與交織算子當(dāng)前行轉(zhuǎn)置相乘,若相乘結(jié)果 為無(wú)效比特,即與交織算子當(dāng)前行中取值為1元素相乘的是掩碼矩陣中的無(wú) 效標(biāo)志位,則不將當(dāng)前子塊交織矩陣中的相應(yīng)行與交織算子當(dāng)前行的轉(zhuǎn)置相 乘,也就不會(huì)輸出比特,直接將掩碼矩陣的下一行與交織算子當(dāng)前行轉(zhuǎn)置相乘,并判斷相乘結(jié)果;若相乘結(jié)果為有效比特,即與交織算子當(dāng)前行中取值 為1元素相乘的是掩碼矩陣中的有效標(biāo)志位,則將當(dāng)前子塊交織矩陣中的相 應(yīng)行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,并直接輸出當(dāng)前子塊交織矩陣與交織算 子的相乘結(jié)果。
通過(guò)本步驟中交織算子的當(dāng)前行與選擇出的當(dāng)前子塊矩陣中相應(yīng)行的 相乘操作,事實(shí)上是將當(dāng)前子塊交織矩陣中與交織算子當(dāng)前行對(duì)應(yīng)列中的所 有有效比特順序輸出。也就是說(shuō),經(jīng)過(guò)本步驟的操作,能夠讀取當(dāng)前交織矩 陣中某 一 列進(jìn)行交織后的各個(gè)有效比特。
進(jìn)一步的,通過(guò)合理的硬件設(shè)計(jì),可以大大簡(jiǎn)化相乘操:作的實(shí)現(xiàn)復(fù)雜度。 具體的,可以將交織算子的任一行、子塊交織矩陣的任一行和掩碼矩陣的任一 行,均利用與機(jī)器字長(zhǎng)相匹配的單元表示,這些單元的每個(gè)有效比特對(duì)應(yīng)表示 交織算子任一行中的每個(gè)元素、子塊交織矩陣任一行的每個(gè)元素或掩碼矩陣任 一行的每個(gè)元素。其中,與機(jī)器字長(zhǎng)相匹配的單元通常為機(jī)器進(jìn)行運(yùn)算的基本
單位或其整數(shù)倍,例如8位的字節(jié)、16位的字、32位的雙字等等。具體利用單 元表示交織算子的任一行、子塊交織矩陣的任一行和掩碼矩陣的任一行的方式, 可以考慮如下幾種情況
(1)若子塊交織矩陣的列數(shù)剛好與上述單元相等時(shí),則將交織算子的任一 行的每個(gè)元素、子塊交織矩陣的任一行的每個(gè)元素和掩碼矩陣的任一行的每個(gè) 元素,對(duì)應(yīng)利用相應(yīng)單元的每個(gè)比特表示,則單元的每個(gè)比特均為有效比特;
(2 )若子塊交織矩陣的列數(shù)剛好是上述單元所包括比特?cái)?shù)的N (N為大于 l的整數(shù))倍時(shí),例如,8位的處理系統(tǒng)、子塊交織矩陣為32列的情況;則可 以將子塊交織矩陣的任一行、交織算子的任一行和掩碼矩陣的任一行均等分為 N份,利用N個(gè)單元表示子塊交織矩陣的任一行、交織算子的任一行和掩碼矩 陣的任一行,每個(gè)比特對(duì)應(yīng)表示任一行中的每個(gè)元素,則單元的每個(gè)比特均為 有效比特;
(3)若子塊交織矩陣的列數(shù)M少于相應(yīng)單元所包括的比特?cái)?shù),則仍然利 用單元表示子塊交織矩陣的任一行、交織算子的任一行和掩碼矩陣的任一行,但其中的前M個(gè)比特對(duì)應(yīng)表示子塊交織矩陣的任一行、交織算子的任一行和掩 碼矩陣的任一行的每個(gè)元素,后面的比特標(biāo)識(shí)為無(wú)效,只是為了湊齊機(jī)器處理 的字長(zhǎng)數(shù)。因此,將表示元素的前M個(gè)比特稱為有效比特,其他的比特為無(wú)效 比特。
(4)對(duì)于子塊交織矩陣的列數(shù)是上述單元所包括比特?cái)?shù)的非整數(shù)倍的情 況,可以將其看作一個(gè)整數(shù)倍加上(3)中情況的組合,這樣, 一方面將子塊交 織矩陣分塊表示,另一方面進(jìn)行填充表示,從而利用整數(shù)倍的單元來(lái)表示子塊 交織矩陣的任一行、交織算子的任一行和掩碼矩陣的任一行。例如,在16位的 處理系統(tǒng)中,子塊交織矩陣為18列,則可以利用一個(gè)兩個(gè)16位的字來(lái)表示子 塊交織矩陣的任一行、交織算子的任一行和掩碼矩陣的任一行,其中,第一個(gè) 16位的字表示子塊交織矩陣的任一行、交織算子的任一行和掩碼矩陣的任一行 的前16個(gè)元素,第二個(gè)16位的字的前2個(gè)比特表示子塊交織矩陣的任一行、 交織算子的任一行和掩碼矩陣的任一行的第17和18個(gè)元素。
舉個(gè)具體的例子,在LTE系統(tǒng)中,子塊交織矩陣為32列,則在32位或64 位的處理系統(tǒng)中,交織算子的任一行、子塊交織矩陣的任一行和#務(wù)碼矩陣的任 一行,都可以利用32位的雙字來(lái)表示,其中,雙字的每個(gè)比特表示交織算子任 一4亍中的每個(gè)元素、子塊交織矩陣任一行的每個(gè)元素或掩碼矩陣任一4亍的每個(gè) 元素。因此,本步驟中掩碼矩陣中的任一行a與交織算子的當(dāng)前行b轉(zhuǎn)置的相 乘操作也就可以轉(zhuǎn)換為用于表示掩碼矩陣中任一行a的雙字與用于表示交織 算子當(dāng)前行b的雙字進(jìn)行邏輯與操作;本步驟中當(dāng)前子塊交織矩陣中的任一行 c與交織算子的當(dāng)前行b轉(zhuǎn)置的相乘操作也可以轉(zhuǎn)換為用于表示當(dāng)前子塊交 織矩陣中任一行c的雙字與用于表示交織算子當(dāng)前行b的雙字進(jìn)行邏輯與才喿作。 這樣,大大簡(jiǎn)化了兩個(gè)相乘4喿作?;蛘?,如果在8位或16位的處理系統(tǒng)中,則 可以將LTE系統(tǒng)中的交織算子的任一行、子塊交織矩陣的任一行和掩碼矩陣的 任一行,利用4個(gè)字節(jié)或兩個(gè)字來(lái)表示。
步驟106,判斷當(dāng)前行是否為交織算子的最后一行,若是,則執(zhí)行步驟 107,否則,將當(dāng)前行的下一行作為當(dāng)前行,返回步驟105。如前所述,通過(guò)上一步驟,實(shí)現(xiàn)了讀取當(dāng)前子塊交織矩陣中的一列的操 作。在此之后,如果交織算子的當(dāng)前行為最后一行,則意味著當(dāng)前子塊交織 矩陣對(duì)應(yīng)的子塊交織后矩陣的最后一列已經(jīng)被讀出,需要對(duì)下一個(gè)子塊交織 矩陣進(jìn)行處理。如果交織算子的當(dāng)前行不是最后一行,則繼續(xù)利用交織算子 的下一行"t丸行步驟105,以讀取當(dāng)前子塊交織矩陣中下一個(gè)應(yīng)該輸出的列。
步驟107,判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是, 則將第一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子的第1行作為
當(dāng)前行,返回步驟105;否則,將下一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩 陣,將交織算子的第1行作為當(dāng)前行,返回步驟105。
通過(guò)前述步驟105到106的反復(fù)執(zhí)行,能夠?qū)?dāng)前子塊交織矩陣在本次 傳輸中需要輸出的比特均按照協(xié)議規(guī)定方式全部輸出,并且在此輸出過(guò)程 中,如果達(dá)到速率匹配要求,則結(jié)束本速率匹配流程。如果執(zhí)4亍到步驟107, 則需要開(kāi)始對(duì)下一個(gè)子塊交織矩陣進(jìn)行交織處理和比特輸出過(guò)程。由于之前 在步驟104中是從此次數(shù)據(jù)輸出的起始位置開(kāi)始的,因此可能最先處理的子 塊交織矩陣并不是第一個(gè)子塊交織矩陣,而是中間的子塊交織矩陣或最后一 個(gè)子塊交織矩陣,如果在前面步驟105 - 106中處理的是最后一個(gè)子塊交織 矩陣,則接下來(lái)需要循環(huán)會(huì)第一個(gè)子塊交織矩陣,進(jìn)行交織處理;如果在前 面步驟105- 106中處理的不是最后一個(gè)子塊交織矩陣,則接下來(lái)需要對(duì)下 一個(gè)子塊交織矩陣,進(jìn)行交織處理。并且在對(duì)新的子塊交織矩陣進(jìn)行交織處 理時(shí),交織算子也需要重新從第一行開(kāi)始,以將新的子塊交織矩陣中交織后 第一列輸出。
至此,本實(shí)施例中的速率匹配流程結(jié)束。由上述流程可見(jiàn),本實(shí)施例中, 利用掩碼矩陣標(biāo)識(shí)子塊交織矩陣中每個(gè)位置上比特的有效性,并在利用交織 算子進(jìn)行交織處理時(shí),僅對(duì)需要輸出的部分進(jìn)行交織處理,且在交織處理后 可以直接輸出到碼塊級(jí)聯(lián)緩存。通過(guò)上述方式,將子塊交織和速率匹配過(guò)程 聯(lián)合簡(jiǎn)化,減少了在此過(guò)程中緩存器的個(gè)數(shù)以及對(duì)于緩存器的讀寫。
解速率匹配的過(guò)程是速率匹配的逆過(guò)程,j旦是解速率匹配的處理對(duì)象不是比特信息,而是解調(diào)后的軟比特信息。與上述速率匹配方法相應(yīng)的解交織
解速率匹配方法流程包括
步驟201,根據(jù)編碼參數(shù)確定各個(gè)子塊交織矩陣的大小和填充比特位置, 并確定各個(gè)子塊交織矩陣對(duì)應(yīng)的掩碼矩陣,設(shè)置各個(gè)子塊交織矩陣中非填充 比特對(duì)應(yīng)軟比特的保存位置。
在進(jìn)行解速率匹配時(shí),首先需要確定發(fā)送端進(jìn)行各個(gè)子塊交織矩陣的大 小和填充比特位置。本領(lǐng)域技術(shù)人員可知,這些可以根據(jù)編碼參數(shù)確定。同 時(shí),根據(jù)確定的各個(gè)子塊交織矩陣的大小和填充比特位置即可以利用與速率 匹配方法中相同的方式構(gòu)造各個(gè)子塊交織矩陣對(duì)應(yīng)的掩碼矩陣。
在接收端存在一個(gè)比特軟合并緩沖器,用于保存每個(gè)編碼比特的軟比特 值(即該比特取值的概率信息)。設(shè)置比特軟合并緩沖器中非填充比特對(duì)應(yīng) 的軟比特(填充比特沒(méi)有被傳輸?shù)浇邮斩?的保存位置為軟比特按照子塊 交織矩陣中行優(yōu)先順序進(jìn)行保存,因此根據(jù)子塊交織矩陣中的行列坐標(biāo)可以 計(jì)算出相應(yīng)位置上的軟比特在比特軟合并緩沖器中的保存地址。
事實(shí)上,可以利用形同子塊交織矩陣的矩陣來(lái)保存各個(gè)軟比特信息。
步驟202,按照冗余版本確定本次傳輸數(shù)據(jù)的起始位置所在的子塊交織 后矩陣以及列編號(hào)i。
本步驟的操作與本實(shí)施例速率匹配方法中步驟103的#:作相同,這里就 不再贅述。
步驟203,將步驟202中確定的子塊交織后矩陣對(duì)應(yīng)的子塊交織矩陣作 為當(dāng)前子塊交織矩陣,將接收的第一個(gè)軟比特作為當(dāng)前軟比特。
接收端經(jīng)過(guò)前置的各個(gè)單無(wú)的處理,能夠得到一個(gè)軟比特流,其中軟比 特流中軟比特信息的排序與發(fā)送端經(jīng)過(guò)交織和速率匹配后的比特流的順序 相同。
從本步驟開(kāi)始進(jìn)行子塊解交織操作。如前所述,子塊交織操作從確定的 起始位置開(kāi)始,相應(yīng)的,子塊解交織操作也從確定的數(shù)據(jù)傳輸?shù)钠鹗嘉恢瞄_(kāi)始。步驟204,根據(jù)當(dāng)前子塊交織矩陣對(duì)應(yīng)的掩碼矩陣,依次確定當(dāng)前子塊 交織矩陣中第P(i)列的每個(gè)元素是否為有效,若為無(wú)效,則不讀取當(dāng)前軟比
特;若為有效,則讀取當(dāng)前軟比特,將讀取的當(dāng)前軟比特保存在該有效比特 對(duì)應(yīng)軟比特的保存位置上,并將接收的下一個(gè)軟比特作為當(dāng)前軟比特;若已 讀取出所有接收的軟比特,則結(jié)束本流程,否則執(zhí)行步驟205。
本步驟中,由于子塊交織矩陣中可能存在填充比特,而這些填充比特并 未進(jìn)行傳輸,因此,需要在接收的軟比特流中確定這些填充比特的位置,從 而在將當(dāng)前軟比特保存在比特軟合并緩沖器(也即子塊交織矩陣)中時(shí),空 出填充比特的相應(yīng)位置。
確定填充比特的方式與本實(shí)施例中速率匹配方式中的類似,利用掩碼矩 陣來(lái)確定。具體的,對(duì)于當(dāng)前的取值i,即子塊交織后矩陣的第i列,在子 塊交織矩陣中對(duì)應(yīng)的列應(yīng)為第P(i)列,則應(yīng)將接下來(lái)的這些軟比特從子塊交 織矩陣中的第P(i)列開(kāi)始填寫。于是判斷與該子塊交織矩陣對(duì)應(yīng)掩碼矩陣的 第P(i)列中各個(gè)元素是否有效,如果無(wú)效,則需要空出子塊交織矩陣中相應(yīng) 的位置,不將當(dāng)前的軟比特輸出,而將其輸出下一個(gè)有效比特對(duì)應(yīng)的位置; 如果有效,則可以直接將當(dāng)前軟比特輸出到子塊交織矩陣中相應(yīng)元素的位置 上。由該有效元素在子塊交織矩陣中的行列坐標(biāo)就可以計(jì)算出比特軟合并緩 沖器中的相應(yīng)保存位置。
另外,對(duì)于不同冗余版本的數(shù)據(jù)傳輸,傳輸?shù)木幋a比特可能有重疊,則 在第一次接收到編碼比特的軟比特后,直接保存在比特軟合并緩沖器中與該 比特相應(yīng)的位置上,在接收到后續(xù)重傳的數(shù)據(jù)時(shí),將相應(yīng)編碼比特的軟比特 與比特軟合并緩沖器中與該編碼比特相應(yīng)位置上所保存的軟比特進(jìn)行合并 后保存在該相應(yīng)位置上。
基于上述考慮,在進(jìn)行軟比特信息保存時(shí),需要根據(jù)當(dāng)前相應(yīng)保存位置 上的狀態(tài)不同,進(jìn)行不同的處理。具體的,若當(dāng)前軟比特的相應(yīng)保存位置上 為空,則直接將當(dāng)前軟比特保存在該保存位置上;若當(dāng)前軟比特的相應(yīng)保存 位置上不為空,則表明在此之前,該數(shù)據(jù)被傳輸過(guò),需要首先將該保存位置上的值與當(dāng)前軟比特進(jìn)行合并,再將合并結(jié)果保存在該保存位置上。
在上述過(guò)程中, 一旦所有的軟比特均輸出,即結(jié)束本流程,否則在第
P(i)列的位置都判斷完成后,進(jìn)行下一列的判斷,進(jìn)入下一個(gè)步驟。
步驟205,判斷i是否等于當(dāng)前子塊交織矩陣的列數(shù),若是,則執(zhí)行步
驟206,否則將i自加,返回步驟204。
通過(guò)上一步驟,已經(jīng)將子塊交織后矩陣中的第i列對(duì)應(yīng)的軟比特進(jìn)行解
交織并輸出了,接下來(lái),進(jìn)行下一列的輸出。如果第i列是子塊交織后矩陣
中的最后一列,則需要對(duì)下一個(gè)子塊交織后矩陣對(duì)應(yīng)的軟比特進(jìn)行輸出,并
且輸出到下一個(gè)子塊交織矩陣對(duì)應(yīng)的保存位置上;如果第i列不是子塊交織
后矩陣中的最后一列,則繼續(xù)對(duì)下一列對(duì)應(yīng)的軟比特進(jìn)行輸出,同樣輸出到
當(dāng)前子塊交織矩陣對(duì)應(yīng)的保存位置上。
步驟206,判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,
則將第一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令1=1,返回步驟204;
否則,將下一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i=l,返回步驟
204。
通過(guò)步驟204- 205,已經(jīng)完成了一個(gè)子塊交織后矩陣對(duì)應(yīng)的軟比特信 息的解交織和輸出。從本步驟開(kāi)始,對(duì)下一個(gè)子塊交織后矩陣對(duì)應(yīng)的軟比特 信息進(jìn)行解交織和輸出。則若當(dāng)前子塊交織后矩陣對(duì)應(yīng)的當(dāng)前子塊交織是最 后一個(gè)子塊交織矩陣,則需要循環(huán)到第一個(gè)子塊交織矩陣進(jìn)行接下來(lái)的軟比 特信息解交織和輸出;若當(dāng)前子塊交織后矩陣對(duì)應(yīng)的當(dāng)前子塊交織不是最后 一個(gè)子塊交織矩陣,則需要對(duì)下一個(gè)子塊交織矩陣的軟比特信息解交織和輸 出。
至此,本實(shí)施例中的解交織解速率匹配流程結(jié)束。由上述流程可見(jiàn),本 實(shí)施例中,依次將接收的軟比特信息進(jìn)行相應(yīng)位置的保存,并且通過(guò)掩碼矩 陣中填充比特位置的確定,可以直接將解交織后的軟比特保存在比特軟合并 緩沖器中的相應(yīng)位置上,不需要先將其保存為子塊交織后矩陣,再依照列交 織模式逐個(gè)轉(zhuǎn)換為子塊交織矩陣進(jìn)行保存。節(jié)省了處理過(guò)程,減少了緩存器的使用和對(duì)緩存器的讀寫次數(shù)。 速率匹配方法。
圖4為L(zhǎng)TE Turbo編碼傳輸信道速率匹配過(guò)程的一個(gè)示意圖。這一過(guò)程包括 組織數(shù)據(jù)階段和利用速率匹配運(yùn)算單元進(jìn)行速率匹配兩個(gè)階段。
組織數(shù)據(jù)階段包括生成并在內(nèi)存中存放交織算子i^r、交織矩陣y和掩碼
矩陣MA—:r;根據(jù)LTE協(xié)議,子塊交織矩陣為32列,在32位的處理系統(tǒng)中,每 行利用一個(gè)32比特的雙字表示,根據(jù)設(shè)定的列交織模式P(/)生成交織算子尸0, 其中,利用一個(gè)32比特的雙字表示交織算子的任一行,共32個(gè)雙字表示交織算 子。生成方法參考圖2所示。
對(duì)于Turbo編碼器輸出比特流y ,在LTE系統(tǒng)中,輸出3個(gè)比特流分別為甲、 尸l和",根據(jù)LTE協(xié)議規(guī)定的方式寫入內(nèi)存,寫入方法參考圖3所示。按照?qǐng)D3 方式寫入3個(gè)比特流的內(nèi)存可分為兩個(gè)子塊交織矩陣進(jìn)行處理,第一部分記為 爭(zhēng),即從第1個(gè)雙字直到第R個(gè)雙字的內(nèi)存區(qū)域;第二部分設(shè)為PLP2,即從第 R+l個(gè)雙字直到第3R個(gè)雙字的內(nèi)存區(qū)域。生成方法參考圖3所示。
與Turbo編碼器輸出比特流F中砂s 、尸l和尸2對(duì)應(yīng)的掩碼Msyt —y中的三個(gè)才務(wù) 碼M" MP1和MP2流按照?qǐng)D5方式寫入內(nèi)存,此內(nèi)存可分為兩部分,第一部分 記為M」,即從第1個(gè)雙字直到第R個(gè)雙字的內(nèi)存區(qū)域,對(duì)應(yīng)第一個(gè)子塊交織矩 陣平;第二部分設(shè)為M —PLP2,即從第R+1個(gè)雙字直到第3R個(gè)雙字的內(nèi)存區(qū)域, 對(duì)應(yīng)第二個(gè)子塊交織矩陣Pl戶2 。
利用速率匹配運(yùn)算單元進(jìn)行速率匹配的過(guò)程如下先根據(jù)當(dāng)前指定的冗余 版本號(hào),此處設(shè)為rv,+ ,確定當(dāng)前編碼后讀出比特的起始位置,在LTE Turbo
編碼傳輸信道的速率匹配過(guò)程中,rv,* =0對(duì)應(yīng)子塊交織矩陣^5交織后形成的
子塊交織后矩陣的第3列第1行,"*=1對(duì)應(yīng)子塊交織矩陣,交織后形成的
子塊交織后矩陣的第27列第l行,rv,由-2對(duì)應(yīng)子塊交織矩陣PLP2交織后形成 的子塊交織后矩陣的第10列第l行,"*=3對(duì)應(yīng)子塊交織矩陣戶1戶2交織后形成的子塊交織后矩陣的第22列第1行。.
從^Wi確定的列起始位置開(kāi)始,逐列讀出,和尸LP2塊中的比特;例如要
讀取,交織后的第7'列時(shí),先從交織算子尸O中取其第行PO。,用PO,.與掩碼
塊M一s逐行相乘(也可邏輯與AND),當(dāng)取出相應(yīng)掩碼位為〈NULL〉時(shí),則跳 過(guò)s,塊中相應(yīng)的比特位;當(dāng)取出相應(yīng)掩碼位為有效時(shí),再用PO。與砂s相應(yīng)行 相乘(也可邏輯與AND),取得其中的信息比特;讀取P1P2塊的過(guò)程與上述過(guò)
程類似。
根據(jù)速率匹配的參數(shù)設(shè)置,將讀出的信息比特直接寫入當(dāng)前傳輸塊對(duì)應(yīng)的 碼塊級(jí)聯(lián)緩存器中分配給當(dāng)前編碼塊的相應(yīng)地址。若一個(gè)傳輸塊#:分為多個(gè)編 碼塊,每個(gè)編碼塊的速率匹配過(guò)程可根據(jù)以上步驟并行進(jìn)行。在LTE標(biāo)準(zhǔn)中傳 輸塊中各子塊采用相同的列交織沖莫式,因而可以共用同一個(gè)交織算子;對(duì)于具 有相同參數(shù)的編碼塊,掩碼結(jié)構(gòu)也相同,因而可以共用同一個(gè)掩碼資源。因此 可以實(shí)現(xiàn)資源共享。
圖6為實(shí)現(xiàn)LTE Turbo譯碼傳輸信道解交織解速率匹配過(guò)程的一個(gè)示意圖。 這一過(guò)程包括計(jì)算軟比特寫入地址和比特軟合并兩個(gè)階段。
當(dāng)前軟比特對(duì)應(yīng)的有效掩碼,以及計(jì)算軟比特寫入地址三個(gè)子過(guò)程。 首先根據(jù)當(dāng)前編碼塊參數(shù)生成掩碼矩陣M — ,y和M —月P2 。
根據(jù)冗余版本號(hào)rv,^.,確定當(dāng)前編碼塊輸出比特的起始位置,從rv,^確定
的起始位置開(kāi)始,根據(jù)列交織模式,逐列讀取掩碼矩陣中的標(biāo)志位;當(dāng)讀出的 掩碼位為〈NULL〉時(shí),則跳過(guò),塊中相應(yīng)的比特位;當(dāng)讀出的掩碼位為有效時(shí), 就得到當(dāng)前軟比特在當(dāng)前交織矩陣中的行列坐標(biāo)。
由于比特軟合并緩沖器中軟比特是按交織矩陣中行優(yōu)先順序?qū)懭?,因此?以由交織矩陣中的行列坐標(biāo)很容易地計(jì)算出當(dāng)前軟比特應(yīng)寫入的比特軟合并緩 沖器中的地址。
比特軟合并階段過(guò)程如下根據(jù)計(jì)算得到的當(dāng)前軟比特對(duì)應(yīng)的比特軟合并
31模塊的地址,讀出比特軟合并模塊對(duì)應(yīng)位置原有的軟值,與當(dāng)前軟值進(jìn)行軟合 并處理,再將得到的結(jié)果寫回比特軟合并模塊對(duì)應(yīng)位置。
在比特軟合并模塊初始化時(shí),可以根據(jù)當(dāng)前碼塊參數(shù)設(shè)定好比特軟合并 才莫塊的初值。以1"更完成當(dāng)前碼塊解速率匹配和軟合并過(guò)程后,直接送往-譯碼 模塊進(jìn)行譯碼處理。
上述即為本實(shí)施例中交織速率匹配方法和解交織解速率匹配方法的實(shí) 現(xiàn)流程以及實(shí)例。
圖7是本實(shí)施例用于LTE Turbo編碼傳輸信道速率匹配的內(nèi)存占用情況與 采用圖1所示的速率匹配結(jié)構(gòu)的比較。由此曲線圖可以發(fā)現(xiàn),本實(shí)施例中交織 速率匹配算法內(nèi)存占用數(shù)大約是采用圖1所示的速率匹配結(jié)構(gòu)算法內(nèi)存占用數(shù) 的一半。
在傳輸塊TBs>6144后曲線產(chǎn)生拐點(diǎn)的原因是由于TB塊大于6144后將 被分割為多個(gè)CB塊,因而帶來(lái)更多的附帶內(nèi)存開(kāi)銷,因而斜率稍有增加。
圖8是本實(shí)施例中用于LTE Turbo編碼傳輸信道速率匹配的內(nèi)存讀寫次 數(shù)與采用圖1所示的速率匹配結(jié)構(gòu)的比較。由此曲線圖可以發(fā)現(xiàn),本實(shí)施例 中交織速率匹配時(shí)內(nèi)存讀寫操作總次數(shù)僅為采用圖1所示的速率匹配結(jié)構(gòu) 算法的約55%。
實(shí)施例二
在本實(shí)施例中,直接根據(jù)編碼參數(shù)確定子塊交織矩陣的填充比特,不再 需要掩碼矩陣,進(jìn)一步節(jié)約了緩存器。同時(shí),在利用交織算子進(jìn)行子塊交織 處理時(shí),對(duì)于所有比特均進(jìn)行交織處理,并按照協(xié)議規(guī)定方式輸出到循環(huán)緩 沖器中,再根據(jù)冗余版本號(hào),從循環(huán)緩沖器中輸出符合速率匹配要求的比特?cái)?shù)。
具體的,本實(shí)施例中的速率匹配方法流程包括 步驟3(U,根據(jù)列交織模式生成交織算子。
步驟302,將編碼輸出的比特流寫入信息子塊交織矩陣和各個(gè)校驗(yàn)子塊 交織矩陣,進(jìn)行比特填充,按照編碼比特流的順序排列所有子塊交織矩陣。本步驟中,將編碼輸出的比特流按行優(yōu)先順序?qū)懭胄畔⒆訅K交織矩陣和 各個(gè)校驗(yàn)子塊交織矩陣。其中,編碼輸出的信息比特流寫入的子塊交織矩陣 稱為信息子塊交織矩陣,將編碼輸出的校驗(yàn)比特流寫入的子塊交織矩陣稱為 校驗(yàn)子塊交織矩陣。進(jìn)行比特填充的操作與現(xiàn)有相同。在LTE系統(tǒng)中,將 編碼輸出的信息比特流寫入信息子塊交織矩陣,將編碼輸出的第一個(gè)校驗(yàn)比 特流寫入第一個(gè)校驗(yàn)子塊交織矩陣,將編碼輸出的第二個(gè)校驗(yàn)比特流寫入第 二個(gè)校驗(yàn)子塊交織矩陣。然后,將信息子塊交織矩陣、第一校驗(yàn)子塊交織矩 陣和第二校驗(yàn)子塊交織矩陣順序排列。
步驟303,根據(jù)編碼參數(shù)確定信息子塊交織矩陣的填充比特位置,利用 交織算子對(duì)信息子塊交織矩陣進(jìn)行交織處理,并將處理結(jié)果輸出到循環(huán)緩沖 器中。
本領(lǐng)域技術(shù)人員可知,由設(shè)定好的編碼參數(shù)能夠確定出各個(gè)子塊交織矩 陣的填充比特位置,具體確定方式這里就不再贅述。利用交織算子對(duì)信息子 塊交織矩陣進(jìn)行交織處理并輸出交織結(jié)果的具體方式為
從交織算子的第l行開(kāi)始到最后一行為止,對(duì)每一行n執(zhí)行如下步驟
依次將信息子塊交織矩陣中的每一行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,若 相乘結(jié)果為確定的填充比特,即與交織算子當(dāng)前行中取值為l元素相乘的是 信息子塊交織矩陣中的填充比特,則不輸出相乘結(jié)果,若相乘結(jié)果確定的填 充比特,則將相乘結(jié)果輸出到循環(huán)緩沖器中。具體如圖9所示。事實(shí)上,本 步驟的操作與實(shí)施例一中步驟105相類似,只是不需要掩碼矩陣記錄填充比 特的位置,而是預(yù)先確定并記錄信息子塊交織矩陣中填充比特的位置,直接 利用交織算子的當(dāng)前行轉(zhuǎn)置與信息子塊交織矩陣中的任 一 行相乘。
步驟304,根據(jù)編碼參數(shù)確定各個(gè)校驗(yàn)子塊交織矩陣的填充比特,對(duì)各 個(gè)校驗(yàn)子塊交織矩陣進(jìn)行交織處理,并按照協(xié)議規(guī)定方式將交織結(jié)果輸出到 循環(huán)緩沖器中。
通過(guò)上一步驟已經(jīng)完成對(duì)信息子塊交織矩陣的交織處理和交織結(jié)果輸 出。本步驟對(duì)剩余的各個(gè)校驗(yàn)子塊交織矩陣進(jìn)行交織處理和交織結(jié)果輸出。本步驟中確定校驗(yàn)子塊交織矩陣填充比特的方式與步驟303中的類似。對(duì)校
驗(yàn)子塊交織矩陣進(jìn)行交織處理并輸出交織結(jié)果的方式為
從交織算子的第l行開(kāi)始到最后一行為止,對(duì)每一行執(zhí)行如下步驟
a、 令n= 1;
b、 將各個(gè)校驗(yàn)子塊交織矩陣中的第n行與交織算子當(dāng)前行的轉(zhuǎn)置相乘, 依次得到多個(gè)相乘結(jié)果,按校驗(yàn)子塊交織矩陣的排列順序判斷每個(gè)校驗(yàn)子塊 交織矩陣對(duì)應(yīng)的相乘結(jié)果,若相乘結(jié)果為確定的填充比特,即與交織算子當(dāng) 前行中取值為1元素相乘的是校驗(yàn)子塊交織矩陣中的填充比特,則不輸出該 相乘結(jié)果,若相乘結(jié)果不是確定的填充比特,則將該相乘結(jié)果輸出到循環(huán)緩 沖器中;
c、 判斷n是否等于校驗(yàn)子塊交織矩陣的行數(shù),若是,則完成了對(duì)所有 校驗(yàn)子塊交織矩陣的交織處理和結(jié)果輸出;否則,將n自加,再返回步驟步 驟b。
在上述步驟a c的處理中,在對(duì)校驗(yàn)子塊交織矩陣中的某一列進(jìn)行交 織并讀出該列中有效比特時(shí),依次讀取每個(gè)校驗(yàn)子塊交織矩陣中相同行的比 特,從而使得在循環(huán)緩沖器各個(gè)校驗(yàn)子塊交織矩陣的比特為間隔排列,符合 協(xié)議^見(jiàn)定。具體如圖9所示。
步驟305,根據(jù)冗余版本號(hào)從循環(huán)緩沖器中輸出符合速率匹配要求的比特。
通過(guò)上述步驟303 ~ 304的操作,已經(jīng)所有交織結(jié)果輸入到循環(huán)緩沖器 中。本步驟只需要根據(jù)冗余版本號(hào)從循環(huán)緩沖器中輸出符合速率匹配要求的 比特即可。
至此,本實(shí)施例中的速率匹配流程結(jié)束。與實(shí)施例一中的流程類似,可 以利用與機(jī)器字長(zhǎng)相匹配的單元來(lái)表示交織算子的任一行、信息子塊交織矩 陣和校驗(yàn)子塊矩陣的任一行,從而將相乘操作轉(zhuǎn)換為邏輯與操作進(jìn)行。例如, 在LTE系統(tǒng)中,如果為32位或64位的處理系統(tǒng),則交織算子的任一行、 信息子塊交織矩陣和校驗(yàn)子塊矩陣的任一行,都可以利用32位的雙字來(lái)表示,其中,雙字的每個(gè)比特表示交織算子任一行中的每個(gè)元素、信息或校驗(yàn) 子塊交織矩陣任一行的每個(gè)元素。或者,如果在8位或16位的處理系統(tǒng)中,
則可以將LTE系統(tǒng)中的交織算子的任一行、子塊交織矩陣的任一行和掩碼 矩陣的任一行,利用4個(gè)字節(jié)或兩個(gè)字來(lái)表示。從而可以將子塊交織矩陣中 某一行與交織算子某一行轉(zhuǎn)置的相乘操作轉(zhuǎn)換為邏輯與操作,從而大大簡(jiǎn)化 了處理流程。由上述速率匹配流程可見(jiàn),本實(shí)施例中仍然利用交織算子進(jìn)行 交織處理,并且未采用掩碼矩陣標(biāo)記各個(gè)子塊交織矩陣中的填充比特位置, 這樣相對(duì)于實(shí)施例一,又節(jié)省了一部分存儲(chǔ)空間,減少了對(duì)緩存器的讀寫。
與上述交織速率匹配方法相應(yīng)的解交織解速率匹配方法流程包4舌
步驟401,根據(jù)編碼參數(shù)確定各個(gè)子塊交織矩陣的大小和填充比特位置, 設(shè)置各個(gè)子塊交織矩陣中非填充比特對(duì)應(yīng)軟比特的保存位置。
本步驟的操作與實(shí)施例一的解交織解速率匹配方法中步驟201相應(yīng)操 作完全相同,只是不需要確定掩碼矩陣。
步驟402~ 403,按照冗余版本確定本次傳輸數(shù)據(jù)的起始位置所在的子 塊交織后矩陣以及列編號(hào)i;將確定的子塊交織后矩陣對(duì)應(yīng)的子塊交織矩陣 作為當(dāng)前子塊交織矩陣,將接收的第一個(gè)軟比特作為當(dāng)前軟比特。
步驟402 ~ 403的操作與實(shí)施例一的解交織解速率匹配方法中步驟 202~203完全相同,這里就不再贅述。
步驟404,依次確定當(dāng)前子塊交織矩陣中第P(i)列的每個(gè)元素是否為填 充比特,若為填充比特,則不讀取當(dāng)前軟比特;若為非填充比特,則讀取當(dāng) 前軟比特,將讀取的當(dāng)前軟比特保存在該非填充比特對(duì)應(yīng)軟比特的保存位置 上,將接收的下一個(gè)軟比特作為當(dāng)前軟比特;當(dāng)讀取出所有接收的軟比特時(shí), 結(jié)束本流程,否則執(zhí)行步驟405。
本步驟的操作與實(shí)施例一的解交織解速率匹配方法中步驟204的"t喿作 相類似,只是不需要利用掩碼矩陣來(lái)確定是否輸出當(dāng)前軟比特,而是直接根 據(jù)步驟401中確定的各個(gè)子塊交織矩陣的填充比特,來(lái)確定第P(i)列中的各 個(gè)元素是否有效,從而確定是否輸出相應(yīng)的軟比特,如果有效,則輸出軟比特到相應(yīng)的保存位置上,如果無(wú)效,則空出相應(yīng)的保存位置,對(duì)下一個(gè)軟比 特進(jìn)行處理。
具體在保存軟比特信息時(shí),與實(shí)施例一中類似的,也需要判斷對(duì)應(yīng)保存 位置上是否為空,若是,則直接將當(dāng)前軟比特保存在該保存位置上;若相應(yīng) 保存位置上不為空,則需要首先將該保存位置上的值與當(dāng)前軟比特進(jìn)行合 并,再將合并結(jié)果保存在該保存位置上。
步驟405,判斷i是否等于當(dāng)前子塊交織矩陣的列數(shù),若是,則執(zhí)行步驟 406,否則將i自加,返回步驟404。
步驟406,判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是, 則將第 一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i = 1,返回步驟404; 否則,將下一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令1=1,根據(jù)編碼參 ^t確定當(dāng)前子塊交織矩陣的填充比特,并返回步驟204。
步驟405 - 406的操作與實(shí)施例一的解交織解速率匹配方法中步驟 205 206完全相同,這里就不再贅述。
至此,本實(shí)施例中的解交織解速率匹配流程結(jié)束。本流程中,不需要利 用掩碼矩陣,即可以實(shí)現(xiàn)解交織和解速率匹配流程,并且相對(duì)于背景技術(shù)中 描述的解速率匹配流程,減少了存儲(chǔ)空間和對(duì)緩存器的讀寫操作。
上述即為本實(shí)施例中交織速率匹配方法和解交織解速率匹配方法的具 體實(shí)現(xiàn)方式。與實(shí)施例一相比,本實(shí)現(xiàn)方式中不需要引入掩碼矩陣,進(jìn)一步 減少了存儲(chǔ)空間和對(duì)緩存器的讀寫操作。但是在進(jìn)行交織速率匹配過(guò)程中, 需要對(duì)所有子塊交織矩陣進(jìn)行交織處理并保存交織結(jié)果,進(jìn)一步增加了處理 時(shí)延。
實(shí)施例三
- 本實(shí)施例中, 一方面直接根據(jù)編碼參數(shù)確定子塊交織矩陣的填充比特位 置,不需要引入掩碼矩陣;另一方面,在進(jìn)行交織處理時(shí),根據(jù)冗余版本, 僅對(duì)需要輸出的比特進(jìn)行交織處理。
具體的,本實(shí)施例中的速率匹配方法流程包括步驟501,根據(jù)列交織模式生成交織算子。
本步驟的操作與實(shí)施例一中步驟101的操作相同,這里就不再贅述。
步驟502,將編碼輸出的比特流寫入各個(gè)子塊交織矩陣,并進(jìn)行比特填充,
將所有子塊交織矩陣按系統(tǒng)協(xié)議規(guī)定方式排列。
本步驟的操作,與實(shí)施例一中步驟102相應(yīng)操作相同,只是不需要確定掩 碼矩陣。
步驟503,按照冗余版本確定本次傳輸數(shù)據(jù)的起始位置所在的子塊交織后 矩陣以及列編號(hào)i。
步驟504,將交織算子的第i行作為當(dāng)前行,并將確定的所述子塊交織后矩 陣對(duì)應(yīng)的子塊交織矩陣作為當(dāng)前子塊交織矩陣。
步驟503 ~ 504的操作與實(shí)施例一中步驟103 ~ 104中相同,這里就不再贅述。
步驟505,根據(jù)編碼參數(shù)確定當(dāng)前子塊交織矩陣的填充比特,依次當(dāng)前子 塊交織矩陣中的每一行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,若相乘結(jié)果為確定的填 充比特,則不輸出相乘結(jié)果,若相乘結(jié)果不是確定的填充比特,則輸出該相乘 結(jié)果,若所有輸出的比特?cái)?shù)滿足速率匹配要求,或?qū)⒌玫降乃斜忍鼐敵觯?則結(jié)束本流程,否則執(zhí)行步驟506。
本步驟中的操作與實(shí)施例一步驟105相類似,只是確定填充比特以及是否 輸出相乘結(jié)果的方式略有差異。由于本實(shí)施例中,直接根據(jù)編碼參數(shù)確定各個(gè) 子塊交織矩陣的填充比特,不需要掩碼矩陣,因此在確定填充比特和確定是否 輸出相乘結(jié)果時(shí)的操作與實(shí)施例二中相同,這里就不再贅述。
步驟506,判斷當(dāng)前行是否為交織算子的最后一行,若是,則執(zhí)行步驟507, 否則將當(dāng)前行的下一行作為當(dāng)前行,返回步驟505。
步驟507,判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是, 則將第一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子的第1行作為 當(dāng)前行,返回步驟505;否則,將下一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩 陣,將交織算子的第1行作為當(dāng)前行,返回步驟505。步驟506 ~ 507的操作與實(shí)施例一中步驟106 ~ 107中相同,這里就不再贅述。
至此,本實(shí)施例中的交織速率匹配方法流程結(jié)束。與實(shí)施例一和二中的 流程類似,可以利用與機(jī)器字長(zhǎng)相匹配的單元來(lái)表示交織算子的任一行、信 息子塊交織矩陣和校驗(yàn)子塊矩陣的任一行,從而將相乘操作轉(zhuǎn)換為邏輯與操 作進(jìn)行。例如,在LTE系統(tǒng)中,若為32位或64位的處理系統(tǒng),則交織算 子的任一行、信息子塊交織矩陣和校驗(yàn)子塊矩陣的任一行,都可以利用32 位的雙字來(lái)表示,其中,雙字的每個(gè)比特表示交織算子任一行中的每個(gè)元素、 信息或校驗(yàn)子塊交織矩陣任一行的每個(gè)元素?;蛘撸绻?位或16位的 處理系統(tǒng)中,則可以將LTE系統(tǒng)中的交織算子的任一行、子塊交織矩陣的 任一行和掩碼矩陣的任一行,利用4個(gè)字節(jié)或兩個(gè)字來(lái)表示。從而可以將子 塊交織矩陣中某 一 行與交織算子某 一 行轉(zhuǎn)置的相乘操作轉(zhuǎn)換為邏輯與操作, 從而大大簡(jiǎn)化了處理流程。由上述具體流程可見(jiàn),本實(shí)施例的交織匹配方法, 一方面不需要引入掩碼矩陣,從而進(jìn)一步減少了所需的存儲(chǔ)空間和緩存器的 讀寫操作;另一方面根據(jù)冗余版本,僅對(duì)需要輸出的比特進(jìn)行交織處理,縮 短了處理時(shí)延。
與上述交織速率匹配方法相應(yīng)的解交織解速率匹配方法流程與實(shí)施例 二中的解交織解速率匹配方法流程相同,這里就不再贅述。
上述即為本發(fā)明的交織速率匹配和解交織解速率匹配方法的三種具體 實(shí)施方式。在上述三種方式,通過(guò)引入交織算子實(shí)現(xiàn)交織和速率匹配過(guò)程的 簡(jiǎn)化結(jié)合,不需要利用三個(gè)矩陣保存各個(gè)子塊交織矩陣的交織結(jié)果,而能夠 直接輸出交織結(jié)果到循環(huán)緩沖器或碼塊級(jí)聯(lián)緩存中,從而大大節(jié)省了交織匹 配過(guò)程中所需要的存儲(chǔ)空間,減少了對(duì)緩存器的讀寫操作。在解交織解速率 匹配流程中相類似的,也大大節(jié)省了交織匹配過(guò)程中所需要的存儲(chǔ)空間,減 少了對(duì)緩存器的讀寫操作。并且,在LTE系統(tǒng)中,交織矩陣為32列,可以 利用交織算子與交織矩陣的邏輯與操作實(shí)現(xiàn)交織,能夠進(jìn)一步簡(jiǎn)化交織處理 操作。本發(fā)明的保護(hù)范圍。 凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng) 包含在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種交織速率匹配方法,其特征在于,該方法包括a、根據(jù)列交織模式確定交織算子;將編碼輸出的比特流寫入各個(gè)子塊交織矩陣,并進(jìn)行比特填充,將所有子塊交織矩陣按系統(tǒng)協(xié)議規(guī)定方式排列;根據(jù)各個(gè)子塊交織矩陣確定對(duì)應(yīng)的掩碼矩陣;按照冗余版本確定本次傳輸數(shù)據(jù)的起始位置所在的子塊交織后矩陣以及列編號(hào)i;b、將交織算子的第i行作為當(dāng)前行,并將確定的所述子塊交織后矩陣對(duì)應(yīng)的子塊交織矩陣作為當(dāng)前子塊交織矩陣;c、依次將所述當(dāng)前子塊交織矩陣對(duì)應(yīng)的掩碼矩陣中的每一行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,根據(jù)相乘結(jié)果,選擇當(dāng)前子塊交織矩陣中的相應(yīng)行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,并將得到的比特值順序輸出,直到所有輸出的比特?cái)?shù)滿足速率匹配要求,或?qū)⒌玫降乃斜忍鼐敵?;d、判斷當(dāng)前行是否為交織算子的最后一行,若是,則執(zhí)行步驟e,否則將當(dāng)前行的下一行作為當(dāng)前行,返回步驟c;e、判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子的第1行作為當(dāng)前行,返回步驟c;否則,將下一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子的第1行作為當(dāng)前行,返回步驟c。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)各個(gè)子塊交織矩陣 確定對(duì)應(yīng)的掩碼矩陣為子塊交織矩陣對(duì)應(yīng)的掩碼矩陣的維數(shù)與所述子塊交織 矩陣的維數(shù)相同,掩碼矩陣的每個(gè)元素用于標(biāo)識(shí)子塊交織矩陣中相同位置上的 比特是否有效。
3、 根據(jù)權(quán)利要求2所述的方法,其特征在于,步驟c中所述根據(jù)相乘結(jié)果 選擇當(dāng)前子塊交織矩陣中的相應(yīng)行與交織算子當(dāng)前行的轉(zhuǎn)置相乘包括若相乘結(jié)果為無(wú)效比特,則不將當(dāng)前子塊交織矩陣的相應(yīng)行與交織算子當(dāng) 前行的轉(zhuǎn)置相乘,且不輸出比特值;若相乘結(jié)果為有效比特,則將當(dāng)前子塊交織矩陣的相應(yīng)^f亍與交織算子當(dāng)前行的轉(zhuǎn)置相乘。
4、 根據(jù)權(quán)利要求1所述的方法,其特征在于,交織算子的任一行、子塊交 織矩陣的任一行和掩碼矩陣的任一行,均利用與機(jī)器字長(zhǎng)相匹配的單元表示, 其中所述單元的每個(gè)有效比特對(duì)應(yīng)表示交織算子任一行中的每個(gè)元素、子塊交 織矩陣任一行的每個(gè)元素或掩碼矩陣任一行的每個(gè)元素;步驟c中掩碼矩陣中的任一行與交織算子的當(dāng)前行轉(zhuǎn)置的相乘操作為用 于表示掩碼矩陣中所述任一行的單元與用于表示交織算子當(dāng)前行的單元進(jìn)行邏輯與操作;步驟C中當(dāng)前子塊交織矩陣中的任一行與交織算子的當(dāng)前行轉(zhuǎn)置的相乘操作為用于表示當(dāng)前子塊交織矩陣中所述任一行的單元與用于表示交織算子當(dāng) 前4t的單元進(jìn)ft還輯與l喿作。
5、 根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)列交織模式確定交 織算子為交織算子為方陣,行數(shù)C與所述子塊交織矩陣的列數(shù)相等,且交織 算子第j行的第P(j)列元素取值為1,第j行的其他元素全部取0,其中, j=l,2,...,C, P(j)為所述列交織模式。
6、 根據(jù)權(quán)利要求1所迷的方法,其特征在于,所述將編碼輸出的比特流寫 入各個(gè)子塊交織矩陣包括將編碼輸出的信息比特流寫入一個(gè)子塊交織矩陣,將編碼輸出的兩個(gè)校驗(yàn) 比特流寫入另 一個(gè)子塊交織矩陣,且所述兩個(gè)校驗(yàn)比特流隔行排列在所述另一 個(gè)子塊交織矩陣中。
7、 一種對(duì)利用權(quán)利要求1所述的方法得到的比特流進(jìn)行解交織解速率匹配 的方法,其特征在于,該方法包括a、 根據(jù)編碼參數(shù)確定各個(gè)子塊交織矩陣的大小和填充比特位置,并確定各 個(gè)子塊交織矩陣對(duì)應(yīng)的掩碼矩陣;設(shè)置各個(gè)子塊交織矩陣中非填充比特對(duì)應(yīng)軟 比特的保存位置;按照冗余版本確定本次傳輸數(shù)據(jù)的起始位置所在的子塊交織 后矩陣以及列編號(hào)i;b、 將確定的所述子塊交織后矩陣對(duì)應(yīng)的子塊交織矩陣作為當(dāng)前子塊交織矩陣,將接收的第一個(gè)軟比特作為當(dāng)前軟比特;c、 根據(jù)當(dāng)前子塊交織矩陣對(duì)應(yīng)的掩碼矩陣,依次確定當(dāng)前子塊交織矩陣中第P(i)列的每個(gè)元素是否為有效,若為無(wú)效,則不讀取當(dāng)前軟比特;若為有效, 則讀取當(dāng)前軟比特,將讀取的當(dāng)前軟比特保存在該有效比特對(duì)應(yīng)軟比特的保存 位置上,并將下一個(gè)軟比特作為當(dāng)前軟比特;當(dāng)讀取出所有接收的軟比特時(shí), 結(jié)束本流程,否則執(zhí)行步驟d;其中,所述P(i)為列交織模式;d、 判斷i是否等于當(dāng)前子塊交織矩陣的列數(shù),若是,則執(zhí)行步驟e,否則 將i自加,返回步驟c;e、 判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i-l,返回步驟c;否則,將下一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i = 1 ,返回步驟c。
8、 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述將讀取的當(dāng)前軟比特保 存在該有效比特對(duì)應(yīng)軟比特的保存位置上包括若所述該有效比特對(duì)應(yīng)軟比特的保存位置上為空,則直接將所述當(dāng)前軟比 特保存在該保存位置上;若所述該有效比特對(duì)應(yīng)軟比特的保存位置上不為空,則將該保存位置上的 值與所述當(dāng)前軟比特進(jìn)行合并,將合并結(jié)果保存在該保存位置上。
9、 根據(jù)權(quán)利要求7所述的方法,其特征在于,所述根據(jù)各個(gè)子塊交織矩陣 確定對(duì)應(yīng)的掩碼矩陣為子塊交織矩陣對(duì)應(yīng)的掩碼矩陣的維數(shù)與所述子塊交織 矩陣的維數(shù)相同,掩碼矩陣的每個(gè)元素用于標(biāo)識(shí)子塊交織矩陣中相同位置上的 比特是否有效。
10、 一種交織速率匹配方法,其特征在于,該方法包括a、 根據(jù)列交織模式確定交織算子;將編碼輸出的比特流寫入信息子塊交織 矩陣和各個(gè)校驗(yàn)子塊交織矩陣,并進(jìn)行比特填充,將所有子塊交織矩陣按比特流順序排列;b、 根據(jù)編碼參數(shù)確定信息子塊交織矩陣的填充比特,從交織算子的第1 行開(kāi)始到最后 一行為止,對(duì)每一行執(zhí)行如下步驟依次將所述信息子塊交織矩陣中的每一行與交織算子當(dāng)前行的轉(zhuǎn)置相乘, 若相乘結(jié)果為所述確定的填充比特,則不輸出相乘結(jié)果,若相乘結(jié)果不是所述 確定的填充比特,則將相乘結(jié)果輸出到虛循環(huán)緩沖區(qū)中;C、根據(jù)編碼參數(shù)確定各個(gè)校驗(yàn)子塊交織矩陣的填充比特,從交織算子的第1行開(kāi)始到最后一行為止,對(duì)每一行執(zhí)行如下步驟將各個(gè)校驗(yàn)子塊交織矩陣中的第n行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,依次 得到多個(gè)相乘結(jié)果,按校驗(yàn)子塊交織矩陣的排列順序判斷每個(gè)校驗(yàn)子塊交織矩 陣對(duì)應(yīng)的相乘結(jié)果,若相乘結(jié)果為所述確定的填充比特,則不輸出該相乘結(jié)果, 若相乘結(jié)果不是所述確定的填充比特,則將該相乘結(jié)果輸出到虛循環(huán)緩沖區(qū)中; 其中,n依次取1,2,...,N, N為校驗(yàn)子塊交織矩陣的行數(shù);d、根據(jù)冗余版本號(hào)從虛循環(huán)緩沖區(qū)中輸出符合速率匹配要求的比特。
11 、根據(jù)權(quán)利要求10所述的方法,其特征在于,步驟a中所述將編碼輸出 的比特流寫入信息子塊交織矩陣和各個(gè)校驗(yàn)子塊交織矩陣包括將編碼輸出的 信息比特流寫入信息子塊交織矩陣,將編碼輸出的第一個(gè)校驗(yàn)比特流寫入第一 個(gè)校驗(yàn)子塊交織矩陣,將編碼輸出的第二個(gè)校驗(yàn)比特流寫入第二個(gè)校驗(yàn)子塊交 織矩陣;所述校驗(yàn)子塊交織矩陣的排列順序?yàn)榈谝粋€(gè)校驗(yàn)子塊交織矩陣在前,第 二個(gè)一L瞼子塊交織矩陣在后。
12、 根據(jù)權(quán)利要求10或11所述的方法,其特征在于,交織算子的任一行 和各個(gè)子塊交織矩陣的任一行,均利用與機(jī)器字長(zhǎng)相匹配的單元表示,其中所述單元的每個(gè)有效比特對(duì)應(yīng)表示交織算子任一行中的每個(gè)元素或子塊交織矩陣 任一行的每個(gè)元素;步驟c中子塊交織矩陣中的任一行與交織算子的當(dāng)前行轉(zhuǎn)置的相乘操作 為用于表示子塊交織矩陣中所述任一行的單元與用于表示交織算子當(dāng)前行的 單元進(jìn)行邏輯與操作。
13、 根據(jù)權(quán)利要求10或11所述的方法,其特征在于,所述才艮據(jù)列交織才莫 式確定交織算子為交織算子為方陣,行數(shù)C與所述子塊交織矩陣的列數(shù)相等,且交織算子第j行的第P(j)列元素取值為1,第j行的其他元素全部取O,其中,j二l,2,…,C, P(j)為所述列交織模式。
14、 一種對(duì)利用權(quán)利要求10所述的方法得到的比特流進(jìn)行解交織解速率匹 配的方法,其特征在于,該方法包括a、 根據(jù)編碼參數(shù)確定各個(gè)子塊交織矩陣的大小和填充比特位置,并設(shè)置各 個(gè)子塊交織矩陣中非填充比特對(duì)應(yīng)軟比特的保存位置;按照冗余版本確定本次 傳輸數(shù)據(jù)的起始位置所在的子塊交織后矩陣以及列編號(hào)i;b、 將確定的所述子塊交織后矩陣對(duì)應(yīng)的子塊交織矩陣作為當(dāng)前子塊交織矩 陣,將接收的第一個(gè)軟比特作為當(dāng)前軟比特;c、 依次確定所述當(dāng)前子塊交織矩陣中第P(i)列的每個(gè)元素是否為填充比特, 若為填充比特,則不讀取當(dāng)前軟比特;若為非填充比特,則讀取當(dāng)前軟比特, 將讀取的當(dāng)前軟比特保存在該非填充比特對(duì)應(yīng)軟比特的保存位置上,將下一個(gè) 軟比特作為當(dāng)前軟比特;當(dāng)讀取出所有接收的軟比特時(shí),結(jié)束本流程,否則執(zhí) 行步驟d;其中,所述P(i)為列交織模式;d、 判斷i是否等于當(dāng)前子塊交織矩陣的列數(shù),若是,則執(zhí)行步驟e,否則 將i自力口,返回步驟c;e、 判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令卜l,返回步驟c;否則,將下一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i-l,根據(jù)編碼參數(shù)確定當(dāng)前子塊 交織矩陣的填充比特,并返回步驟c。
15、 根據(jù)權(quán)利要求14所述的方法,其特征在于,所述將讀取的當(dāng)前軟比特 保存在該非填充比特對(duì)應(yīng)軟比特的保存位置上包括若所述該非填充比特對(duì)應(yīng)軟比特的保存位置上為空,則直接將所述當(dāng)前軟 比特保存在該保存位置上;若所述該非填充比特對(duì)應(yīng)軟比特的保存位置上不為空,則將該保存位置上 的值與所述當(dāng)前軟比特進(jìn)行合并,將合并結(jié)果保存在該保存位置上。
16、 一種交織速率匹配方法,其特征在于,該方法包括a、 根據(jù)列交織模式確定交織算子;將編碼輸出的比特流寫入各個(gè)子塊交織 矩陣,并進(jìn)行比特填充,將所有子塊交織矩陣按系統(tǒng)協(xié)議規(guī)定方式排列;按照 冗余版本確定本次傳輸數(shù)據(jù)的起始位置所在的子塊交織后矩陣以及列編號(hào)i;b、 將交織算子的第i行作為當(dāng)前行,并將確定的所述子塊交織后矩陣對(duì)應(yīng) 的子塊交織矩陣作為當(dāng)前子塊交織矩陣;c、 根據(jù)編碼參數(shù)確定當(dāng)前子塊交織矩陣的填充比特,依次將所述當(dāng)前子塊 交織矩陣中的每一行與交織算子當(dāng)前行的轉(zhuǎn)置相乘,若相乘結(jié)果為所述確定的 填充比特,則不輸出相乘結(jié)果,若相乘結(jié)果不是所述確定的填充比特,則輸出 該相乘結(jié)果,直到所有輸出的比特?cái)?shù)滿足速率匹配要求,或?qū)⒌玫降乃斜忍?均輸出;d、 判斷當(dāng)前行是否為交織算子的最后一行,若是,則執(zhí)行步驟e,否則將 當(dāng)前4亍的下一4亍作為當(dāng)前4亍,返回步艱《c;e、 判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子的第1行作為當(dāng)前行,返 回步驟c;否則,將下一個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,將交織算子 的第1行作為當(dāng)前行,返回步驟c。
17、 根據(jù)權(quán)利要求16所述的方法,其特征在于,步驟a中所述將編碼輸出 的比特流寫入各個(gè)子塊交織矩陣包括將編碼輸出的信息比特流寫入一個(gè)子塊交織矩陣,將編碼輸出的兩個(gè)才交'瞼 比特流寫入另一個(gè)子塊交織矩陣,且所述兩個(gè)校驗(yàn)比特流隔行排列在所述另一 個(gè)子塊交織矩陣中。
18、 根據(jù)權(quán)利要求16或17所述的方法,其特征在于,交織算子的任一行 和子塊交織矩陣的任一行,均利用與沖幾器字長(zhǎng)相匹配的單元表示表示,其中所 述單元的每個(gè)有效比特對(duì)應(yīng)表示交織算子任一行中的每個(gè)元素或子塊交織矩陣 任一行的每個(gè)元素的每個(gè)元素;步驟c中當(dāng)前子塊交織矩陣中的任一行與交織算子的當(dāng)前行轉(zhuǎn)置的相乘操 作為用于表示當(dāng)前子塊交織矩陣中所述任一行的單元與用于表示交織算子當(dāng)前行的單元進(jìn)行邏輯與操作。
19、 根據(jù)權(quán)利要求16或17所述的方法,其特征在于,所述根據(jù)列交織模式確定交織算子為交織算子為方陣,列^:C與所述子塊交織矩陣的列數(shù)相等, 且交織算子第j行的第P(j)列元素取值為1,第j行的其他元素全部取0,其中, j=l,2,...,C, P(j)為所述列交織模式。
20、 一種對(duì)利用權(quán)利要求16所述的方法得到的比特流進(jìn)行解交織解速率匹 配的方法,其特征在于,該方法包括a、 根據(jù)編碼參數(shù)確定各個(gè)子塊交織矩陣的大小和填充比特位置,并設(shè)置各 個(gè)子塊交織矩陣中非填充比特對(duì)應(yīng)軟比特的保存位置;按照冗余版本確定本次 傳輸數(shù)據(jù)的起始位置所在的子塊交織后矩陣以及列編號(hào)i;b、 將確定的所述子塊交織后矩陣對(duì)應(yīng)的子塊交織矩陣作為當(dāng)前子塊交織矩 陣,將接收的第一個(gè)軟比特作為當(dāng)前軟比特;c、 依次確定所述當(dāng)前子塊交織矩陣中第P(i)列的每個(gè)元素是否為填充比特, 若為填充比特,則不讀取當(dāng)前軟比特;若為非填充比特,則讀取當(dāng)前軟比特, 將讀取的當(dāng)前軟比特保存在該非填充比特對(duì)應(yīng)軟比特的保存位置上,將下一個(gè) 軟比特作為當(dāng)前軟比特;當(dāng)讀取出所有接收的軟比特時(shí),結(jié)束本流程,否則執(zhí) 行步驟d;其中,所述P(i)為列交織;溪式;d、 判斷i是否等于當(dāng)前子塊交織矩陣的列數(shù),若是,則執(zhí)行步驟e,否則 將i自力口,返回步驟c;e、 判斷當(dāng)前子塊交織矩陣是否為最后一個(gè)子塊交織矩陣,若是,則將第一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令i-l,返回步驟c;否則,將下一 個(gè)子塊交織矩陣作為當(dāng)前子塊交織矩陣,令1=1,根據(jù)編碼參凄t確定當(dāng)前子塊 交織矩陣的填充比特,并返回步驟c。
21、 根據(jù)權(quán)利要求20所述的方法,其特征在于,所述將讀取的當(dāng)前軟比特 保存在該非填充比特對(duì)應(yīng)軟比特的保存位置上包括若所述該非填充比特對(duì)應(yīng)軟比特的保存位置上為空,則直接將所述當(dāng)前軟 比特保存在該保存位置上;若所述該非填充比特對(duì)應(yīng)軟比特的保存位置上不為空,則將該保存位置上 的值與所述當(dāng)前軟比特進(jìn)行合并,將合并結(jié)果保存在該保存位置上。
全文摘要
本發(fā)明公開(kāi)了交織匹配方法,根據(jù)列交織模式確定交織算子,利用交織算子順序?qū)ψ訅K交織矩陣進(jìn)行交織處理,一種方式可以根據(jù)冗余版本要求,利用交織算子對(duì)子塊交織矩陣中需要輸出的比特進(jìn)行交織處理,在完成子塊交織的同時(shí),將按協(xié)議排序后的子塊交織結(jié)果直接輸出,直到達(dá)到相應(yīng)的碼率要求;另一種方式可以利用交織算子逐個(gè)對(duì)子塊交織矩陣進(jìn)行交織處理,在完成子塊交織的同時(shí),將按協(xié)議排序后的子塊交織結(jié)果輸出到循環(huán)緩沖器中,再根據(jù)冗余版本要求輸出相應(yīng)的交織后比特。進(jìn)一步的,本發(fā)明還公開(kāi)了與交織速率匹配方法相應(yīng)的解交織解速率匹配方法。應(yīng)用本發(fā)明能夠在交織速率匹配和解交織解速率匹配過(guò)程中,大大減少了使用的緩存器以及對(duì)緩存器的讀寫操作。
文檔編號(hào)H04W28/06GK101540654SQ20091008342
公開(kāi)日2009年9月23日 申請(qǐng)日期2009年5月4日 優(yōu)先權(quán)日2009年5月4日
發(fā)明者趙顧良, 辰 鄭 申請(qǐng)人:普天信息技術(shù)研究院有限公司