專利名稱:渦輪解碼器及解碼渦輪編碼信號的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通信系統(tǒng),更具體地說,涉及一種采用渦輪(turbo)編碼的通信系統(tǒng)。
背景技術(shù):
數(shù)據(jù)通信系統(tǒng)已經(jīng)持續(xù)發(fā)展了許多年。最近比較受關(guān)注的一種通信系統(tǒng)是采用迭代錯(cuò)誤糾正碼的通信系統(tǒng)。其中,近些年來受到很多關(guān)注的一種特定通信系統(tǒng)是采用了渦輪碼(迭代錯(cuò)誤糾正碼的一種類型)的通信系統(tǒng)。對于指定的信噪比(SNR),使用迭代碼的通信系統(tǒng)通常能夠比使用其它碼的系統(tǒng)達(dá)到更低的位錯(cuò)誤率(BER)。
在本發(fā)展領(lǐng)域中,主要的持續(xù)方向是為了努力在通信系統(tǒng)中連續(xù)地降低所需的SNR以達(dá)到指定的BER。理想的目標(biāo)是為了努力在通信信道中到達(dá)香農(nóng)極限(Shannon’s limit)。香農(nóng)極限可以視為用于通信信道中的數(shù)據(jù)率,其具有特殊的SNR并能夠通過通信信道無錯(cuò)地傳輸。換言之,對于指定的調(diào)制和碼率,香農(nóng)極限是信道容量的理論界限。
渦輪碼的使用提供了這種相關(guān)的更低錯(cuò)誤率,并且以相關(guān)的低數(shù)據(jù)吞吐量率操作,渦輪碼的使用已經(jīng)大量地用在通信信道內(nèi)具有大的噪聲級的通信系統(tǒng)環(huán)境中,在這種通信系統(tǒng)以最大可能的維護(hù)完全無錯(cuò)通信。渦輪編碼的一些最初應(yīng)用是空間相關(guān)的應(yīng)用,其中準(zhǔn)確通信(即理想地?zé)o錯(cuò))通常被認(rèn)為是基本的設(shè)計(jì)標(biāo)準(zhǔn)。然后,發(fā)展方向轉(zhuǎn)向發(fā)展適用于地面和與消費(fèi)者相關(guān)的應(yīng)用。還有,基于空間相關(guān)應(yīng)用的繼承,渦輪編碼環(huán)境努力的焦點(diǎn)繼續(xù)是實(shí)現(xiàn)相對更低錯(cuò)誤平底(error floor),而不是特定地達(dá)到更高的吞吐量。
最近,本領(lǐng)域的焦點(diǎn)已經(jīng)轉(zhuǎn)向發(fā)展渦輪編碼及其各種變化,在保持在渦輪碼環(huán)境中提供相對低錯(cuò)誤平底的同時(shí),支持更高的吞吐量。
實(shí)際上,隨著通信系統(tǒng)中吞吐量需求的增加,渦輪采用多個(gè)處理器和多個(gè)存儲器組的并行渦輪解碼變得很有必要。許多當(dāng)前的系統(tǒng)支持寬范圍的碼字大小。因而,并行渦輪解碼器設(shè)計(jì)中的有效性和靈活性是非常重要的。
一般來說,在采用渦輪碼的通信系統(tǒng)環(huán)境中,在通信信道的一端存在具有編碼能力的第一通信設(shè)備,而在通信信道的另一端也存在具有解碼能力的第二通信設(shè)備。在許多實(shí)例中,這兩個(gè)通信設(shè)備中的一個(gè)或兩個(gè)包括有編碼器和解碼器能力(在雙向通信系統(tǒng)中)。
發(fā)明內(nèi)容
本發(fā)明主要涉及設(shè)備和操作方法,并將在下面的
具體實(shí)施方式
及權(quán)利要求作進(jìn)一步描述。
根據(jù)本發(fā)明的一方面,提供了一種渦輪解碼器,用于對使用二次多項(xiàng)式排列(QPP)交織生成的渦輪編碼信號執(zhí)行并行解碼,所述渦輪解碼器包括 多個(gè)渦輪解碼器,其數(shù)量是2到渦輪編碼信號的信息塊長度之間的任意整數(shù); 多個(gè)存儲器;其中 所述多個(gè)渦輪解碼器用來讀寫所述多個(gè)存儲器; 在第一解碼周期 根據(jù)所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第一映射,所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器從所述多個(gè)存儲器的第一相應(yīng)存儲器中獲取第一信息; 所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器使用從所述多個(gè)存儲器的第一相應(yīng)存儲器中獲取的所述第一信息執(zhí)行解碼處理,以生成第一更新信息; 所述第一更新信息在所述多個(gè)存儲器的每個(gè)第一相應(yīng)存儲器中覆蓋所述第一信息; 在第二解碼周期 根據(jù)所述多個(gè)解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第二映射,所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器從所述多個(gè)存儲器的第二相應(yīng)存儲器中獲取第二信息; 所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器使用從所述多個(gè)存儲器的第二相應(yīng)存儲器中獲得的所述第二信息執(zhí)行解碼處理,以生成第二更新信息; 所述第二更新信息在所述多個(gè)存儲器的每個(gè)第二相應(yīng)存儲器中覆蓋所述第二信息; 所述多個(gè)渦輪解碼器用來生成已被編碼到所述渦輪編碼信號中的至少一個(gè)位的最佳估計(jì)值。
優(yōu)選地,所述渦輪解碼器進(jìn)一步包括 處理模塊,用來在所述渦輪編碼信號的迭代解碼處理過程中執(zhí)行所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間的無沖突調(diào)制映射;其中 所述處理模塊提供所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第一映射; 所述處理模塊提供所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第二映射; 將所述多個(gè)渦輪解碼器和所述多個(gè)存儲器相關(guān)聯(lián)的所述無沖突調(diào)制存儲器映射是基于所述渦輪編碼信號的信息塊長度和所述渦輪編碼信號的虛塊長度兩者至少其一確定的。
優(yōu)選地 執(zhí)行渦輪解碼時(shí),所述多個(gè)渦輪解碼器中的渦輪解碼器用來在外部信息(extrinsic information)上執(zhí)行QPP交織,從而生成用于后續(xù)解碼處理的“先驗(yàn)概率”(app)信息。
優(yōu)選地 執(zhí)行渦輪解碼時(shí),所述多個(gè)渦輪解碼器中的渦輪解碼器用來在外信息上執(zhí)行QPP解交織,從而生成用于后續(xù)解碼處理的“先驗(yàn)概率”(app)信息。
優(yōu)選地,所述多個(gè)渦輪解碼器中的渦輪解碼器包括 第一軟輸入/軟輸出(SISO)解碼器,用來 接收與渦輪編碼信號相關(guān)的多個(gè)度量; 在所述多個(gè)度量上執(zhí)行SISO解碼,從而計(jì)算第一外部信息; 交織器模塊,在第一外部信息上執(zhí)行交織,從而生成第一“先驗(yàn)概率”(app)信息; 第二SISO解碼器,在第一app信息上執(zhí)行SISO解碼,從而生成第二外信息; 解交織器模塊,在第二外部信息上執(zhí)行解交織,從而生成第二“先驗(yàn)概率”(app)信息; 輸出處理器,用來處理第二SISO解碼器已生成的最新外部信息,從而生成被編碼在渦輪編碼信號中信息位的最佳估計(jì)值。
優(yōu)選地,所述多個(gè)渦輪解碼器中的渦輪解碼器包括 第一軟輸入/軟輸出(SISO)解碼器,用來 接收與渦輪編碼信號相關(guān)的多個(gè)度量; 在所述多個(gè)度量上執(zhí)行SISO解碼,從而計(jì)算第一外部信息; 交織器模塊,在第一外部信息上執(zhí)行QPP交織,從而生成第一“先驗(yàn)概率”(app)信息; 第二SISO解碼器,在第一app信息上執(zhí)行SISO解碼,從而生成第二外部信息; 解交織器模塊,在第二外部信息上執(zhí)行QPP解交織,從而生成第二“先驗(yàn)概率”(app)信息; 輸出處理器,用來處理第二SISO解碼器已生成的最新外部信息,從而生成被編碼在渦輪編碼信號中的信息位的最佳估計(jì)值。
優(yōu)選地 所述多個(gè)渦輪解碼器包括一定數(shù)量的渦輪解碼器; 所述多個(gè)存儲器包括同樣數(shù)量的存儲器。
優(yōu)選地 所述多個(gè)渦輪解碼器包括第一數(shù)量的渦輪解碼器; 所述多個(gè)存儲器包括第二數(shù)量的存儲器。
優(yōu)選地 所述渦輪解碼器在無線個(gè)人通信設(shè)備中實(shí)現(xiàn)。
優(yōu)選地 所述渦輪解碼器在通信設(shè)備中實(shí)現(xiàn); 所述通信設(shè)備在衛(wèi)星通信系統(tǒng)、無線通信系統(tǒng)、有線通信系統(tǒng)、光纖通信系統(tǒng)的至少一個(gè)中實(shí)現(xiàn)。
根據(jù)本發(fā)明的一方面,提供了一種渦輪解碼器,用于對使用二次多項(xiàng)式排列(QPP)交織生成的渦輪編碼信號執(zhí)行并行解碼,所述渦輪解碼器包括 多個(gè)渦輪解碼器,其數(shù)量是2到渦輪編碼信號的信息塊長度之間的任意整數(shù); 多個(gè)存儲器; 處理模塊,用來在所述渦輪編碼信號的迭代解碼處理過程中執(zhí)行所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間的無沖突調(diào)制映射;其中 所述多個(gè)渦輪解碼器用來讀寫所述多個(gè)存儲器; 在第一解碼周期 根據(jù)所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第一映射,所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器從所述多個(gè)存儲器的第一相應(yīng)存儲器中獲取第一信息; 所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器使用從所述多個(gè)存儲器的第一相應(yīng)存儲器中獲取的所述第一信息執(zhí)行解碼處理,以生成第一更新信息; 所述第一更新信息在所述多個(gè)存儲器的每個(gè)第一相應(yīng)存儲器中覆蓋所述第一信息; 所述處理模塊提供所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第一映射; 在第二解碼周期 根據(jù)所述多個(gè)解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第二映射,所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器從所述多個(gè)存儲器的第二相應(yīng)存儲器中獲取第二信息; 所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器使用從所述多個(gè)存儲器的第二相應(yīng)存儲器中獲得的所述第二信息執(zhí)行解碼處理,以生成第二更新信息; 所述第二更新信息在所述多個(gè)存儲器的每個(gè)第二相應(yīng)存儲器中覆蓋所述第二信息; 所述處理模塊提供所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第二映射; 所述多個(gè)渦輪解碼器用來生成已被編碼到所述渦輪編碼信號中的至少一個(gè)位的最佳估計(jì)值;且 執(zhí)行渦輪解碼時(shí),所述多個(gè)渦輪解碼器中的渦輪解碼器用來 在第一外部信息上執(zhí)行QPP交織,從而生成用于后續(xù)解碼處理的第一“先驗(yàn)概率”(app)信息。
在第二外部信息上執(zhí)行QPP解交織,從而生成用于后續(xù)解碼處理的第二“先驗(yàn)概率”(app)信息。
優(yōu)選地,所述多個(gè)渦輪解碼器中的渦輪解碼器包括 第一軟輸入/軟輸出(SISO)解碼器,用來 接收與渦輪編碼信號相關(guān)的多個(gè)度量; 在所述多個(gè)度量上執(zhí)行SISO解碼,從而計(jì)算第一外部信息; 交織器模塊,在第一外部信息上執(zhí)行QPP交織,從而生成第一“先驗(yàn)概率”(app)信息; 第二SISO解碼器,在第一app信息上執(zhí)行SISO解碼,從而生成第二外信息; 解交織器模塊,在第二外部信息上執(zhí)行QPP解交織,從而生成第二“先驗(yàn)概率”(app)信息; 輸出處理器,用來處理第二SISO解碼器已生成的最新外部信息,從而生成被編碼在渦輪編碼信號中信息位的最佳估計(jì)值。
優(yōu)選地 所述多個(gè)渦輪解碼器包括一定數(shù)量的渦輪解碼器; 所述多個(gè)存儲器包括同樣數(shù)量的存儲器。
優(yōu)選地 所述渦輪解碼器在無線個(gè)人通信設(shè)備中實(shí)現(xiàn)。
優(yōu)選地 所述渦輪解碼器在通信設(shè)備中實(shí)現(xiàn); 所述通信設(shè)備在衛(wèi)星通信系統(tǒng)、無線通信系統(tǒng)、有線通信系統(tǒng)、光纖通信系統(tǒng)的至少一個(gè)中實(shí)現(xiàn)。
根據(jù)本發(fā)明的一方面,提供了一種用于對使用二次多項(xiàng)式排列(QPP)交織生成的渦輪編碼信號進(jìn)行解碼的方法,所述方法包括 從通信信道中接收渦輪編碼信號; 執(zhí)行預(yù)處理以從所述渦輪編碼信號中提取出編碼塊; 將所述編碼塊分離成多個(gè)子塊,以便所述多個(gè)子塊的每個(gè)子塊包括相應(yīng)的多個(gè)數(shù)據(jù); 將所述多個(gè)子塊中第一子塊的第一多個(gè)數(shù)據(jù)存儲到多個(gè)存儲器組中的第一存儲器組; 將所述多個(gè)子塊中第二子塊的第二多個(gè)數(shù)據(jù)存儲到多個(gè)存儲器組中的第二存儲器組; 從第一存儲器組中獲取第一多個(gè)數(shù)據(jù)的第一元素,對其執(zhí)行渦輪自然順序相位解碼處理(turbo natural order phase decoding processing),從而更新第一元素,并使用更新后的第一元素覆蓋第一存儲器組中的第一元素; 從第二存儲器組中獲取第二多個(gè)數(shù)據(jù)的第二元素,對其執(zhí)行渦輪自然順序相位解碼處理,從而更新第二元素,并使用更新后的第二元素覆蓋第二存儲器組中的第二元素; 從第一存儲器組中獲取第一多個(gè)數(shù)據(jù)的第三元素,對其執(zhí)行渦輪自然順序相位解碼處理,從而更新第三元素,并使用更新后的第三元素覆蓋第一存儲器組中的第三元素; 從第二存儲器組中獲取第二多個(gè)數(shù)據(jù)的第四元素,對其執(zhí)行渦輪自然順序相位解碼處理,從而更新第四元素,并使用更新后的第四元素覆蓋第二存儲器組中的第四元素; 根據(jù)并行渦輪解碼處理,使用多個(gè)解碼處理器對所述編碼塊進(jìn)行渦輪解碼處理,其中所述多個(gè)解碼處理器的數(shù)量是2到渦輪編碼信號的信息塊長度之間的任意整數(shù); 生成被編碼在渦輪編碼信號中的至少一個(gè)信息位的最佳估計(jì)值。
優(yōu)選地,所述方法進(jìn)一步包括 采用以并行解碼組合實(shí)現(xiàn)的多個(gè)渦輪解碼器,以執(zhí)行渦輪自然順序相位解碼處理和交織順序相位解碼處理;其中 所述多個(gè)渦輪解碼器用來讀寫所述多個(gè)存儲器組。
優(yōu)選地,所述方法進(jìn)一步包括 在外部信息上執(zhí)行QPP交織,從而生成用于后續(xù)解碼處理的“先驗(yàn)概率”(app)信息。
優(yōu)選地 在外部信息上執(zhí)行QPP解交織,從而生成用于后續(xù)解碼處理的“先驗(yàn)概率”(app)信息。
優(yōu)選地 所述方法在通信設(shè)備中執(zhí)行; 所述通信設(shè)備在衛(wèi)星通信系統(tǒng)、無線通信系統(tǒng)、有線通信系統(tǒng)、光纖通信系統(tǒng)的至少一個(gè)中實(shí)現(xiàn)。
本發(fā)明的其它特征和優(yōu)點(diǎn)通過引用附圖所作的具有實(shí)施方式描述變得顯而易見。
下面將結(jié)合附圖及實(shí)施例對本發(fā)明作進(jìn)一步說明,附圖中 圖1是通信系統(tǒng)的一個(gè)實(shí)施例的示意圖; 圖2是渦輪解碼器的一個(gè)實(shí)施例的示意圖; 圖3是具有分時(shí)的渦輪碼解碼器的實(shí)施例示意圖,其采用單個(gè)SISO解碼器或單個(gè)SISO解碼器陣列; 圖4是可以應(yīng)用在渦輪解碼中的并行解碼的實(shí)施例示意圖; 圖5是自然/非交織順序解碼處理器(用于渦輪編碼信號的并行解碼)的分離處理的實(shí)施例示意圖; 圖6是交織(π)順序解碼處理器(用于渦輪編碼信號的并行解碼中)的分離處理的實(shí)施例示意圖; 圖7A是針對自然/非交織順序相位在并行解碼上的存儲器映射的實(shí)施例示意圖; 圖7B是針對交織(π)順序(一個(gè)存儲器中存在沖突)在并行解碼上的存儲器映射的實(shí)施例示意圖; 圖8是執(zhí)行并行解碼的渦輪解碼器的實(shí)施例示意圖,其中因?yàn)闇u輪解碼器和存儲器之間缺少無沖突存儲器映射,該渦輪解碼器中有沖突發(fā)生; 圖9是執(zhí)行并行解碼的渦輪解碼器的實(shí)施例示意圖,其中因?yàn)闇u輪解碼器和存儲器之間的無沖突存儲器映射,該渦輪解碼器中沒有沖突發(fā)生; 圖10和圖11分別是通信系統(tǒng)其它實(shí)施例的示意圖; 圖12A、圖12B、圖12C和圖12D分別是渦輪解碼器和存儲器之間不同的、連續(xù)的無沖突存儲器映射的示意圖; 圖13是渦輪解碼器實(shí)施例的示意圖,其采用兩組單獨(dú)的SISO解碼器來訪問存儲在多個(gè)存儲器組中的數(shù)據(jù); 圖14是渦輪解碼器實(shí)施例的示意圖,其采用多個(gè)SISO解碼器來訪問存儲在多個(gè)存儲器組中的數(shù)據(jù); 圖15是解碼渦輪編碼信號的方法的實(shí)施例示意圖; 圖16是解碼渦輪編碼信號的方法的另一實(shí)施例示意圖。
具體實(shí)施例方式 許多通信系統(tǒng)都會結(jié)合渦輪碼的使用。雖然存在許多可使用渦輪碼的潛在應(yīng)用,我們提出了可以應(yīng)用于3GPP信道碼的方式,以支持任意數(shù)量的信息位。對于WCDMA、HSDPA,使用本發(fā)明在此提出的各種特征可支持的信息位的數(shù)量可以是40到5114,對于LTE,其數(shù)量會更多。
關(guān)于UTRA-UTRAN長期演化(LTE)和3GPP系統(tǒng)結(jié)構(gòu)演化(SAE)的更多信息可以在以下網(wǎng)站獲得 www.3gpp.org 渦輪碼早已被建議用于3GPP LTE信道編碼。在3GPP LTE的信道編碼系統(tǒng)中,存在對配備和提供寬范圍塊大小(即渦輪碼的塊長度)的需求。參考文獻(xiàn)[1]中被稱為“準(zhǔn)規(guī)則排列(ARP)”的代數(shù)交織(algebraic interleave)可以考慮作為此編碼系統(tǒng)的候選,還有參考文獻(xiàn)[2]中的“二次多項(xiàng)式排列(QPP)”可以考慮作為替代的候選。
此外,此系統(tǒng)的渦輪編碼一般需要使用并行解碼方案來實(shí)現(xiàn),這是因?yàn)?GPP LTE信道編碼期望有特高的數(shù)據(jù)吞吐量和較大的塊大小。并行解碼需要無沖突存儲器訪問,即任何一個(gè)渦輪解碼器(其為一組并行排列的渦輪解碼器之一)在任何指定時(shí)間僅訪問存儲器(其為一組并行排列的存儲器之一)。在并行渦輪解碼中,解碼處理包括窗口的處理,這些窗口共同組成整個(gè)渦輪碼塊。例如,因?yàn)榻獯a方法本質(zhì)上是有窗的,所以整個(gè)渦輪碼塊被分成許多子塊,并在子塊中執(zhí)行更短的遞歸。并行解碼方案包括有并行工作的多個(gè)渦輪解碼處理器,并且將每個(gè)子塊分配到不同的解碼處理器。既然每個(gè)處理器使用同樣的解碼方法,那么每個(gè)處理器同時(shí)訪問存儲器。如果存在無效的存儲器映射(M),那么將出現(xiàn)沖突;這就是說,來自兩個(gè)或多個(gè)處理器的兩個(gè)或多個(gè)存儲器訪問在同一時(shí)間對同一存儲器組作出嘗試。(見后面圖7A、圖7B、圖8、圖9和它們相關(guān)的字面描述,以及并行渦輪解碼環(huán)境中的沖突對無沖突存儲器映射的其它描述)。存儲器和處理器之間的無效存儲器映射(M)引起的沖突將降低解碼實(shí)現(xiàn)的效率。在參考文獻(xiàn)[3]中指出,總是存在用于任何程度和任何交織(π)的并行解碼的無沖突存儲器訪問。然而,參考文獻(xiàn)[3]中給出的方法是點(diǎn)對點(diǎn)的(ad-hoc),而且一般實(shí)現(xiàn)不是很友好,特別當(dāng)需要支持許多不同的塊大小時(shí),如在3GPP LTE信道編碼的環(huán)境中。
數(shù)字通信系統(tǒng)的目標(biāo)是將數(shù)字?jǐn)?shù)據(jù)從一個(gè)位置或子系統(tǒng)中無錯(cuò)地或以可接受的低錯(cuò)誤率傳輸?shù)搅硪粋€(gè)位置。如圖1所示,數(shù)據(jù)在多種通信系統(tǒng)中通過多種通信信道進(jìn)行傳輸磁介質(zhì)、有線、無線、光纖、銅線和其它類型的媒介。
圖1是通信系統(tǒng)100的一個(gè)實(shí)施例的示意圖。
參考圖1,通信系統(tǒng)100的這個(gè)實(shí)施例是通信信道199,其將位于通信信道199一端的通信設(shè)備110(包括具有編碼器114的發(fā)送器112和具有解碼器118的接收器116)通訊連接到位于通信信道199另一端的通信設(shè)備120(包括具有編碼器128的發(fā)送器126和具有解碼器124的接收器122)。在某些實(shí)施例中,通信設(shè)備110和120僅包括發(fā)送器或接收器。實(shí)現(xiàn)通信信道199的媒介存在幾種不同的類型,即使用碟形衛(wèi)星天線132和134的衛(wèi)星通信信道130、使用塔142、144和/或本地天線152、154的無線通信信道150、有線通信信道150和/或使用電光(E/O)接口162和光電(O/E)接口164的光纖通信信道160。另外,還可以一起實(shí)現(xiàn)和接入一種以上的媒介類型,從而形成通信信道199。
圖2是渦輪解碼器200的一個(gè)實(shí)施例的示意圖。將接收的信號(即通常從通信信道接收)提供給I、Q提取模塊202,由其從接收信號201中提取I、Q(同相和正交)成分。這可視為接收器預(yù)處理,它包括任何適當(dāng)?shù)念l率轉(zhuǎn)換(若需要,通常從載波頻率向下轉(zhuǎn)換)。I、Q然后可以根據(jù)調(diào)制的適當(dāng)星座(constellation)和映射進(jìn)行映射。然后,將映射的I、Q傳送到度量(metric)生成器204。度量生成器204生成適當(dāng)?shù)亩攘?41(其根據(jù)接收的I、Q測得)給調(diào)制的適當(dāng)星座和映射中的星座點(diǎn)接收;星座點(diǎn)的映射在調(diào)制中對度量進(jìn)行索引;這些度量可視為在調(diào)制中從實(shí)際接收符號位置到預(yù)期星座點(diǎn)位置的換算歐幾里德(Euclidian)距離。
繼續(xù)討論渦輪解碼處理和功能性。接著,將度量生成器204計(jì)算出的度量241同時(shí)提供給第一軟輸入/軟輸出(SISO0)解碼器210和第二SISO1解碼器230。在格柵編碼(trellis coding)的環(huán)境中(如渦輪格柵編碼調(diào)制(TTCM)),第一SISO0解碼器210和第二SISO1解碼器230均根據(jù)采用的格柵計(jì)算出向前度量(α)和向后度量(β)以及外部(extrinsic)值。
針對待解碼的幀內(nèi)的每一符號,計(jì)算出這些向前度量、向后度量和外部值。向前度量、向后度量和外部值的這些計(jì)算全部基于所用的格柵。
以第一SISO0解碼器210開始,計(jì)算出外部值211以后,將其傳送給交織器(interleaver)(π)220,之后將其作為“先驗(yàn)概率”(app)信息221傳送到第二SISO1解碼器230。類似地,在第二SISO1解碼器230內(nèi)計(jì)算出外部值231以后,將其傳送到解交織器(de-interleaver)(π-1)240,然后作為“先驗(yàn)概率”(app)信息241傳送到第一SISO0解碼器210。注意,渦輪解碼器200的迭代解碼處理中的單個(gè)解碼迭代包括執(zhí)行兩個(gè)SISO操作;這就是說,迭代解碼處理必須經(jīng)過第一SISO0解碼器210和第二SISO1解碼器230。
達(dá)到有效置信級別并收斂得到解以后,或者已執(zhí)行了預(yù)定次數(shù)的解碼迭代以后,來自第二SISO1解碼器230的輸出作為輸出被傳送到輸出處理器250。SISO210和230的操作一般稱為對符號(包含在接收的符號中)的軟符號判決的計(jì)算。在某些實(shí)施例中,在實(shí)際位級別上執(zhí)行這些軟符號判決。輸出處理器250使用這些軟符號判決以生成信息位的最佳估計(jì)值251(如硬位(soft bit)和/或符號判決),其中該信息位在源渦輪編碼信號中已被編碼(一般在信號201最先進(jìn)入的通信信道的另一端的渦輪編碼器位置)。
同樣注意,在交織器(π)220中執(zhí)行的交織可以使用QPP交織的實(shí)施例執(zhí)行,如附圖標(biāo)號291所示。
許多在此提出的實(shí)施例采用了二次多項(xiàng)式排列(QPP)交織的不同實(shí)施例。以下提供了關(guān)于執(zhí)行QPP交織的方法的更多細(xì)節(jié)。
圖3是具有分時(shí)的渦輪碼解碼器的實(shí)施例示意圖,其采用單個(gè)SISO解碼器或單個(gè)SISO解碼器陣列。該實(shí)施例根據(jù)渦輪解碼處理(并行渦輪解碼處理)采用單個(gè)SISO解碼器或單個(gè)SSO解碼器陣列來執(zhí)行SISO0和SISO1解碼操作。MUX305用來接收信息位310和冗余位302,并選擇性地將它們提供給SISO解碼器310。該實(shí)施例中的SISO解碼器也包括集成的交織器(π)320和集成的解交織器(π-1)340。MUX305的選擇信號根據(jù)一個(gè)信號工作,其偶相位303控制對提供到SISO解碼器310的信息位301或冗余位302的選擇,以執(zhí)行SISO0解碼處理或SISO1解碼處理。
在一個(gè)實(shí)施例中,如附圖標(biāo)號312所示,當(dāng)執(zhí)行自然順序相位解碼時(shí)(即SISO0解碼操作),對存儲器入口的訪問是在選擇信號303指示偶相位給MUX306時(shí)執(zhí)行的。同樣,當(dāng)執(zhí)行交織(π)順序相位解碼(即SISO1解碼操作)時(shí),對存儲器入口的訪問是在選擇信號303指示奇相位給MUX306時(shí)執(zhí)行的。
圖4是可以應(yīng)用在渦輪解碼中的并行解碼的實(shí)施例示意圖。如圖所示,渦輪編碼信號中信息塊的塊長度401表示為L,其也可以稱為交織(π)大小。這也可以稱為將進(jìn)行渦輪解碼的編碼塊。該塊可以分成多個(gè)窗口,以便每個(gè)窗口的大小W=L/M(W是窗口大小)。如附圖標(biāo)號402所示。由于渦輪碼使用卷積編碼器作為其組成編碼器,連續(xù)的符號通過狀態(tài)進(jìn)行連接且因此子塊必須包含連續(xù)的信息位。
并行解碼實(shí)現(xiàn)中設(shè)置的處理器的數(shù)量表示為M(如附圖標(biāo)號404所示),并且注意M是L的因數(shù)(即M除以L沒有余數(shù))。
在周期0中(即渦輪解碼的迭代解碼處理中的第一次解碼迭代),處理每個(gè)窗口的第一部分,如每個(gè)窗口相應(yīng)的陰影部分所示。然后,在周期1中(即渦輪解碼的迭代解碼處理中的第二次解碼迭代),處理每個(gè)窗口的第二個(gè)部分,如每個(gè)窗口相應(yīng)的陰影部分所示。如此繼續(xù)直到周期W-1(即渦輪解碼的迭代解碼處理中的最終解碼迭代),處理每個(gè)窗口的最終部分,如每個(gè)窗口相應(yīng)的陰影部分所示。
在每個(gè)周期中,使用多個(gè)解碼處理器(例如多個(gè)渦輪解碼器)的并行實(shí)現(xiàn)中的一個(gè)解碼處理器(例如一個(gè)渦輪解碼器)處理每個(gè)窗口的指定部分。
圖5是自然/非交織順序解碼處理器(用于渦輪編碼信號的并行解碼)的分離處理的實(shí)施例500的示意圖。該示意圖同樣與圖4相對應(yīng)。例如,窗口大小W、處理器數(shù)量M和塊長度L的規(guī)定都與之前的實(shí)施例相同,如附圖標(biāo)號502所示(即W=L/M或M.W=L)。另外,信息序列的索引集(index set)如附圖標(biāo)號501所示,I={0,1,...L-1},因此交織信息序列的索引集在圖6中如附圖標(biāo)號601所示,為π(I)={π(0),π(1),...π(L-1)}。
然后I的M個(gè)窗口的索引集如下 {0,1,...W-1},{W,W+1,...2W-1},...{(M-1)W,...MW-1}(1) 根據(jù)以自然順序相位進(jìn)行的并行渦輪解碼處理(采用M個(gè)解碼處理器),在周期0(即渦輪解碼的迭代解碼處理中的第一次解碼迭代)中,被處理的每個(gè)窗口各自的第一部分如下 1、處理器0處理信息塊的0部分。
2、處理器1處理信息塊的W部分。
3、處理器2處理信息塊的2W部分。
... s、處理器s處理信息塊的sW部分(s是整數(shù))。
... M-1、處理器M-1處理信息塊的(M-1)W部分。
在周期1(渦輪解碼的迭代解碼處理中的第二次解碼迭代)中,被處理的每個(gè)窗口各自的第二部分如下 1、處理器0處理信息塊的1部分。
2、處理器1處理信息塊的W+1部分。
3、處理器2處理信息塊的2W+1部分。
... s、處理器s處理信息塊的sW+1部分(s是整數(shù))。
... M-1、處理器M-1處理信息塊的(M-1)W+1部分。
如此繼續(xù)直到周期W-1(渦輪解碼的迭代解碼處理中的最終解碼迭代)中,被處理的每個(gè)窗口各自的最終部分如下 1、處理器0處理信息塊的W-1部分。
2、處理器1處理信息塊的W+W-1部分。
3、處理器2處理信息塊的W+2W-1部分。
... s、處理器s處理信息塊的sW+W-1部分(s是整數(shù))。
... M-1、處理器M-1處理信息塊的(M-1)W+W-1部分。
在第0和第t解碼周期上,每列上的元素集分別是(同樣如附圖標(biāo)號503所示) E0={0,W,...(M-1)W},及 Et={t,W+t,...(M-1)W+t}。
這就是說,這是所有M個(gè)窗口中所有第i個(gè)元素的“集”。事實(shí)上,在周期t上,M個(gè)處理器對Et中的索引位并行地執(zhí)行解碼。
圖6是交織(π)順序解碼處理器(用于渦輪編碼信號的并行解碼中)的分離處理的實(shí)施例600的示意圖。該示意圖同樣對應(yīng)圖4。例如,窗口大小W、處理器數(shù)量M、塊長度L的規(guī)定都與之前的實(shí)施例相同,如附圖標(biāo)號602所示(即W=L/M或M.W=L)。另外,信息序列的索引集(index set)如附圖標(biāo)號501所示,I={0,1,...L-1},因此交織信息序列的索引集在圖6中如附圖標(biāo)號601所示,為π(I)={π(0),π(1),...π(L-1)}。
根據(jù)以自然順序相位進(jìn)行的并行渦輪解碼處理(采用M個(gè)解碼處理器),在周期0(即渦輪解碼的迭代解碼處理中的第一次解碼迭代)中,被處理的每個(gè)窗口各自的第一部分如下(注意這些是交織(π)部分) 1、處理器0處理信息塊的π(0)部分。
2、處理器1處理信息塊的π(W)部分。
3、處理器2處理信息塊的π(2W)部分。
... s、處理器s處理信息塊的π(sW)部分(s是整數(shù))。
... M-1、處理器M-1處理信息塊的π((M-1)W)部分。
在周期1(渦輪解碼的迭代解碼處理中的第二次解碼迭代)中,被處理的每個(gè)窗口各自的第二部分如下 1、處理器0處理信息塊的π(1)部分。
2、處理器1處理信息塊的π(W+1)部分。
3、處理器2處理信息塊的π(2W+1)部分。
... s、處理器s處理信息塊的π(sW+1)部分(s是整數(shù))。
... M-1、處理器M-1處理信息塊的π((M-1)W+1)部分。
如此繼續(xù)直到周期W-1(渦輪解碼的迭代解碼處理中的最終解碼迭代)中,被處理的每個(gè)窗口各自的最終部分如下 1、處理器0處理信息塊的π(W-1)部分。
2、處理器1處理信息塊的π(W+W-1)部分。
3、處理器2處理信息塊的π(2W+W-1)部分。
... s、處理器s處理信息塊的π(sW+W-1)部分(s是整數(shù))。
... M-1、處理器M-1處理信息塊的π((M-1)W+W-1)部分。
在交織(π)處理一側(cè)上,第0個(gè)和第t個(gè)解碼周期上的每列內(nèi)的元素集分別是(同樣如附圖標(biāo)號603所示) 及 然后π(I)的M個(gè)窗口的索引集如下 {π(0),π(1),...π(W-1)},{π(W),π(W+1),...π(2W-1)},...{π((M-1)W),...,π(MW-1)} 一般地,針對第i次解碼迭代可作出如下定義 然后,從索引集I和π(1)到集Zp={0,1,...P-1}所定義的存儲器映射M被稱為用于具有并行度M的并行解碼的無沖突映射(如參考文獻(xiàn)[4]所述),以上是假設(shè)如下關(guān)系對于所有可能i的每個(gè)j,j′∈{0,...L-1},j≠j′成立 j,j′∈EtM(j)≠M(fèi)(j′),且 注意,第t個(gè)周期的索引集中的解碼值應(yīng)該被映射到不同的存儲器組(例如提供來服務(wù)多個(gè)并行設(shè)置的渦輪解碼器的多個(gè)存儲器中的不同存儲器)。
參考文獻(xiàn)[4]中已經(jīng)證明,針對任何指定的交織(π),總存在用于任何并行解碼處理器的并行解碼的無沖突映射。然而,對于需要支持許多不同塊大小信道編碼的通信系統(tǒng),生成參考文獻(xiàn)[2]給出的這樣一種映射的方法很難實(shí)現(xiàn)。
在參考文獻(xiàn)[5]中,定義了一個(gè)公式化無沖突映射(formulaic collision-freememory mapping),其將π(jw+j)映射到π(jW+i)/W,并將π-1(jw+1)映射到π-1(jW+i)/W,其中W是窗口大小。如果交織有這種無沖突映射,在參考文獻(xiàn)[4]中稱之為無沖突。由于這種映射采用了劃分,稱之為劃分映射(MDIV,W)。事實(shí)上,該映射可以表示如下
然而,由于使用劃分映射,并行處理器的數(shù)量限制為交織(π)大小的因子。例如,采用大小為L=6144=3×211的QPP交織。若使用劃分存儲器映射MDIV,W,那么并行解碼處理器的數(shù)量M必須是L的因子。因此,如果數(shù)據(jù)吞吐量需要20個(gè)處理器(M=20),那么劃分存儲器映射MDIV,W將不能工作。在此,介紹一種可變通但仍公式化的存儲器映射(M),其能夠適用于任意數(shù)量M的并行處理器以用于任何二次多項(xiàng)式排列(QPP)交織。
然而,以下提出了更多的信息,以幫助讀者理解并行實(shí)現(xiàn)的渦輪解碼器環(huán)境中的無沖突存儲器訪問。另外,也提出了采用并行實(shí)現(xiàn)的渦輪解碼器的通信設(shè)備的更多實(shí)施例。
圖7A是針對自然/非交織順序相位在并行解碼700上存儲器映射的實(shí)施例示意圖。
圖7B是針對交織(π)順序在并行解碼702上存儲器映射的實(shí)施例示意圖(一個(gè)存儲器中存在沖突)。
圖7A和圖7B應(yīng)該互相結(jié)合來考慮。實(shí)施例700和702每個(gè)都采用4個(gè)存儲器組(表示為存儲器741、存儲器742、存儲器743、存儲器744)。所示編碼塊被分離成多個(gè)子塊。這個(gè)特殊的編碼塊包括4W個(gè)數(shù)據(jù)位置。
第一子塊以數(shù)據(jù)位置0、1開始,一直到W-1。第二子塊以數(shù)據(jù)位置W、W+1開始,一直到2W-1。第三子塊以數(shù)據(jù)位置2W、2W+1開始,一直到3W-1。第四子塊以數(shù)據(jù)3W、3W+1開始,一直到4W-1。
在周期0中,第一子塊的第一數(shù)據(jù)(即位置0中的數(shù)據(jù))存儲在存儲器742的第一位置。
在周期0中,第二子塊的第一數(shù)據(jù)(即位置W中的數(shù)據(jù))存儲在存儲器743的第一位置。
在周期0中,第三子塊的第一數(shù)據(jù)(即位置2W中的數(shù)據(jù))存儲在存儲器741的第一位置。
在周期0中,第四子塊的第一數(shù)據(jù)(即位置3W中的數(shù)據(jù))存儲在存儲器744的第一位置。
在周期1中,第一子塊的第二數(shù)據(jù)(即位置1中的數(shù)據(jù))存儲在存儲器741的第二位置。
在周期1中,第二子塊的第二數(shù)據(jù)(即位置W+1中的數(shù)據(jù))存儲在存儲器744的第二位置。
在周期1中,第三子塊的第二數(shù)據(jù)(即位置2W+1中的數(shù)據(jù))存儲在存儲器742的第二位置。
在周期1中,第四子塊的第二數(shù)據(jù)(即位置3W+1中的數(shù)據(jù))存儲在存儲器743的第二位置。
這個(gè)處理過程一直持續(xù),直到編碼塊的所有數(shù)據(jù)元素都被存儲到4個(gè)存儲器組相應(yīng)的存儲器位置。特定數(shù)據(jù)元素將存儲到那個(gè)存儲器組內(nèi)的這種放置取決于所采用的映射。
經(jīng)過交織(π)后,如圖所示,交織編碼塊被分成多個(gè)子塊。這個(gè)特殊編碼塊包括4W個(gè)數(shù)據(jù)位置。
第一子塊以數(shù)據(jù)位置π(0)、π(1)開始,一直到π(W-1)。第二子塊以數(shù)據(jù)位置π(W)、π(W+1)開始,一直到π(2W-1)。第三子塊以數(shù)據(jù)位置π(2W)、π(2W+1)開始,一直到π(3W-1)。第四子塊以數(shù)據(jù)π(3W)、π(3W+1)開始,一直到π(4W-1)。
在周期0中,根據(jù)所采用的特殊交織和映射,第一子塊的第一數(shù)據(jù)(即位置π(0)中的數(shù)據(jù))存儲在存儲器741的位置。
在周期0中,根據(jù)所采用的特殊交織和映射,第二子塊的第一數(shù)據(jù)(即位置π(W)中的數(shù)據(jù))存儲在存儲器744的位置。
在周期0中,根據(jù)所采用的特殊交織和映射,第三子塊的第一數(shù)據(jù)(即位置π(2W)中的數(shù)據(jù))存儲在存儲器743的位置。
在周期0中,根據(jù)所采用的特殊交織和映射,第四子塊的第一數(shù)據(jù)(即位置π(3W)中的數(shù)據(jù))存儲在存儲器742的位置。
在周期1中,根據(jù)所采用的特殊交織和映射,第一子塊的第二數(shù)據(jù)(即位置π(1)中的數(shù)據(jù))存儲在存儲器742的位置。
在周期1中,根據(jù)所采用的特殊交織和映射,第二子塊的第二數(shù)據(jù)(即位置π(W+1)中的數(shù)據(jù))存儲在存儲器741的位置。
在周期1中,根據(jù)所采用的特殊交織和映射,第三子塊的第二數(shù)據(jù)(即位置π(2W+1)中的數(shù)據(jù))存儲在存儲器742的位置。
在周期1中,根據(jù)所采用的特殊交織和映射,第四子塊的第二數(shù)據(jù)(如位置π(3W+1)中的數(shù)據(jù))存儲在存儲器744的位置。
這個(gè)處理過程一直持續(xù),直到編碼塊的所有數(shù)據(jù)元素都被存儲到4個(gè)存儲器組相應(yīng)的存儲器位置。特定數(shù)據(jù)元素將存儲到哪個(gè)存儲器組的這種放置取決于所采用的映射。
注意,這個(gè)映射不是無沖突的,因?yàn)樵诮豢楉樞蛳辔坏闹芷?中,第一子塊的第二數(shù)據(jù)(即位置π(1)中的數(shù)據(jù))和第三子塊的第二數(shù)據(jù)(即位置π(2W+1)中的數(shù)據(jù))都映射到同一存儲器742。
圖8是執(zhí)行并行解碼的渦輪解碼器800的實(shí)施例示意圖,其中因?yàn)闇u輪解碼器和存儲器之間缺少無沖突存儲器映射,該渦輪解碼器800中有沖突發(fā)生。
該渦輪解碼器800包括多個(gè)渦輪解碼器821-827、多個(gè)存儲器841-847和處理模塊830(用來執(zhí)行多個(gè)渦輪解碼器821-827和多個(gè)存儲器841-847之間的存儲器映射)??梢钥闯?,一個(gè)以上的解碼器在指定時(shí)間試圖訪問同一存儲器。特別地,渦輪解碼器821和渦輪解碼器822正試圖訪問存儲器841,渦輪解碼器824和渦輪解碼器825正試圖訪問存儲器845。同樣,渦輪解碼器827和另一渦輪解碼器(包括在省略號...所示區(qū)域)正試圖訪問存儲器847。而這會引起沖突并導(dǎo)致不良性能。
圖9是執(zhí)行并行解碼的渦輪解碼器900的實(shí)施例示意圖,其中因?yàn)闇u輪解碼器和存儲器之間的無沖突存儲器映射,該渦輪解碼器900中沒有沖突發(fā)生。
該渦輪解碼器900包括多個(gè)渦輪解碼器921-927、多個(gè)存儲器941-947、處理模塊930(用來執(zhí)行多個(gè)渦輪解碼器921-927和多個(gè)存儲器941-947之間的存儲器映射)??梢钥闯?,只有一個(gè)渦輪解碼器在特定時(shí)間訪問任何一個(gè)存儲器。這是多個(gè)渦輪解碼器921-927和多個(gè)存儲器941-947之間真正的無沖突存儲器映射。
圖10和圖11是通信系統(tǒng)的其它實(shí)施例的示意圖。
參考圖10的通信系統(tǒng)1000,通信系統(tǒng)1000包括通信設(shè)備1010,其通過通信信道1099連接到另一設(shè)備。通信設(shè)備1010包括解碼器1021,其實(shí)現(xiàn)為用來采用無沖突存儲器映射的并行實(shí)現(xiàn)渦輪解碼器。
通信設(shè)備1010通過通信信道1099連接到其它設(shè)備1090,而該其它設(shè)備可以是另一通信設(shè)備1092、存儲媒介1094(如在硬盤驅(qū)動(HDD)的環(huán)境中)或用來接收和/或傳輸信號的任何其它類型設(shè)備。在某些實(shí)施中,通信信道1099是雙向通信信道,其用來在第一時(shí)間段執(zhí)行第一信號的傳輸以及在第二時(shí)間段接收第二信號。若需要,可以采用全雙工通信,其中通信設(shè)備1010和設(shè)備1090中每個(gè)都可以同時(shí)相互傳輸和/或接收。
通信設(shè)備1010的解碼器1021包括渦輪解碼器1020、處理模塊1030、存儲器1040。處理模塊1030可以連接到存儲器1040,以便存儲器用來存儲使處理模塊1030執(zhí)行某些功能的可操作指令。
一般來說,處理模塊1030用來在迭代解碼處理過程中執(zhí)行渦輪解碼器1020和存儲器1040之間的無沖突存儲器映射。
同樣需要注意,處理模塊1030和在此所述的任何其它處理模塊能以如下所述任何數(shù)量的方式實(shí)現(xiàn)。在一個(gè)實(shí)施例中,處理模塊1030可以嚴(yán)格地作為電路實(shí)現(xiàn)??蛇x地,處理模塊1030可以嚴(yán)格地在軟件中實(shí)現(xiàn),如可以在數(shù)字信號處理器(DSP)或相似類型的設(shè)備中采用。在另一實(shí)施例中,在不脫離本發(fā)明范圍和精神的情況下,處理模塊1030可以作為軟硬件的結(jié)合實(shí)現(xiàn)。
在其它更多的實(shí)施例中,處理模塊1030可以使用共享處理設(shè)備、個(gè)人處理設(shè)備或多個(gè)處理設(shè)備實(shí)現(xiàn)。這種處理設(shè)置可以是微處理器、微控制器、數(shù)字信號處理器、微型計(jì)算機(jī)、中心處理單元、現(xiàn)場可編程門陣列、可編程邏輯設(shè)備、狀態(tài)機(jī)、邏輯電路、模擬電路、數(shù)字電路和/或任何基于可操作指令處理信號(模擬和/或數(shù)字)的設(shè)備。處理模塊1030可以連接到用來存儲可操作指令的存儲器1040,其中可操作指令使處理模塊1030執(zhí)行渦輪解碼器1020和存儲器1040之間適當(dāng)?shù)臒o沖突儲存映射。
這種存儲器1040可以是單個(gè)存儲設(shè)備或多個(gè)存儲設(shè)備。這種存儲器1040可以是只讀存儲器、動態(tài)存儲器、靜態(tài)存儲器、閃存和/或任何存儲數(shù)字信息的設(shè)備。注意當(dāng)處理模塊1030通過狀態(tài)機(jī)、模擬電路、數(shù)字電路和/或邏輯電路實(shí)現(xiàn)一個(gè)或多個(gè)其功能時(shí),存儲相應(yīng)可操作指令的存儲器嵌入在電路中,包括狀態(tài)機(jī)、模擬電路、數(shù)字電路和/或邏輯電路。
參考圖11的通信系統(tǒng)1100,該實(shí)施例與之前的實(shí)施例稍微有點(diǎn)相似。通信系統(tǒng)1100包括通過通信信道1199連接到另一設(shè)備的通信設(shè)備1110。通信設(shè)備1110包括渦輪解碼器1120,其本身由多個(gè)渦輪解碼器1121-1122組成。通信設(shè)備1110也包括存儲器1140,其本身由多個(gè)存儲器1141-1142組成。處理模塊1130用來在渦輪編碼信號的迭代解碼處理過程中,執(zhí)行多個(gè)渦輪解碼器1121-1122和多個(gè)存儲器1141-1142之間的無沖突存儲器映射。
圖12A、圖12B、圖12C和圖12D分別是渦輪解碼器和存儲器之間不同的、連續(xù)的無沖突存儲器映射的示意圖。這四個(gè)圖應(yīng)該相互結(jié)合來考慮。
通信設(shè)備包括渦輪解碼器,其本身由多個(gè)渦輪解碼器1221、1222和1223組成。這種通信設(shè)備也包括存儲器,其本身由存儲器1241、1242和1243組成。處理模塊1230用來在渦輪編碼信號的迭代解碼處理過程中執(zhí)行多個(gè)渦輪解碼器1221、1222、1223和多個(gè)存儲器1241、1242、1243之間的無沖突存儲器映射。
在任何特定時(shí)間,處理模塊1230用來確保只有一個(gè)渦輪解碼器在該特定時(shí)間訪問特定的存儲器。例如,處理模塊1230在時(shí)間1執(zhí)行第一無沖突存儲器映射,如附圖標(biāo)號1201所示。處理模塊1230在時(shí)間2執(zhí)行第二無沖突存儲器映射,如附圖標(biāo)號1202所示。處理模塊1230在時(shí)間3執(zhí)行第二無沖突存儲器映射,如附圖標(biāo)號1203所示。處理模塊1230在時(shí)間4執(zhí)行第二無沖突存儲器映射,如附圖標(biāo)號1204所示??梢钥闯?,這四個(gè)圖的每個(gè)圖中,都只有一個(gè)渦輪解碼器在任何特定時(shí)間連接到任何一個(gè)存儲器。
可以看出,渦輪解碼器1221、1222、1223和多個(gè)存儲器1241、1242、1243之間的無沖突存儲器映射在渦輪編碼信號的迭代解碼處理過程中隨時(shí)間函數(shù)變化。
二次多項(xiàng)式排列(QPP) 關(guān)于二次多項(xiàng)式排列(QPP)交織(π)的更多細(xì)節(jié)在下面給出。
設(shè)塊大小或交織大小是L,如果以下函數(shù) π(x)=ax+bx2mod(L)(4) 是{0,1,...L-1}上的排列(permutation),那么其稱之為參考文獻(xiàn)[3]所述的二次多項(xiàng)式。
參考文獻(xiàn)[3]中同樣指出,如果處理器的數(shù)量M是L的約數(shù),即W=L/M,那么使用等式(3)的劃分存儲器映射MDIV,W便是無沖突QPP交織(π)。
公式化可變通無沖突存儲器映射(M)(formulaic and flexible collision-freememory mapping) 如上,使用劃分存儲器映射MDIV,W的情況下,并行實(shí)現(xiàn)的解碼處理器的數(shù)量限制為交織大小的因子。換句話說,劃分存儲器映射MDIV,W不能適應(yīng)任何可能數(shù)量的并行實(shí)現(xiàn)解碼處理器。
例如,取QPP交織的大小為L=6144=3×211。使用劃分存儲器映射MDIV,W,則并行實(shí)現(xiàn)的解碼處理器的數(shù)量P必須是塊長度/交織大小L的因子。因此,考慮一個(gè)可能的例子,如果數(shù)據(jù)吞吐量需要P=20,則劃分存儲器映射MDIV,W將不能進(jìn)行。
以下提出一種存儲器映射(M)的新方法,其是可變通的(能夠適應(yīng)任何數(shù)量的解碼處理器P),并且是一種公式化存儲器映射(M)。
假定交織π的大小為L。設(shè)C是數(shù)字,那么以下條件成立 條件I 如果π(x)=π(y)modC,那么x=y(tǒng)modC(5) 指定并行處理器的任何數(shù)量P,那么P≤C。設(shè)窗口大小W是符合以下條件的最小數(shù) 條件II a)W≥L/P且b)gcd(W,C)=1。(6) 設(shè)L′=P*W。
渦輪解碼的并行實(shí)現(xiàn)現(xiàn)在可以考慮在大小為L′的“虛”交織(也可以是大小為L′的“虛”塊)上執(zhí)行。
參考圖5和圖6可以觀察到,具有sW+t>L或π(sW+t)>L的某些解碼周期變成偽(dummy)解碼周期,即該周期內(nèi)對應(yīng)的處理器沒有工作。
窗口大小為W的調(diào)制存儲器映射MMOD,C,W可以如下定義
C的值和條件在以下的法則1中定義。
法則1 設(shè)并行解碼處理器的數(shù)量P是滿足P≤C的任何數(shù),其中C滿足上述等式(5)中的條件I且窗口大小W滿足上述等式(6)的條件II,那么調(diào)制存儲器映射MMOD,C,W是π的無沖突存儲訪問映射。
證明 A)在渦輪解碼的自然順序相位中,如果 MMOD,C,W(s0W+t)=MMOD,C,W(s1W+t),那么s0W≡s1WmodC。
但是s0和s1都小于P≤C(見等式1)且gcd(W,C)=1(條件,等式6)。因此以下關(guān)系成立 MMOD,,C,W(s0W+t)=MMOD,,C,W(s1W+t)s0=s1。
B)在渦輪解碼的交織(π)順序相位中,如果 MMOD,,C,W(π(s0W+t))=MMOD,,C,W(π(s1W+t)),那么 π(s0W+t)≡π(s1W+t)modC。
根據(jù)等式(5)的條件,有π(s0W+t)≡π(s1W+t)modC。所以,再有s0=s1。
通過結(jié)合A)和B),可以證明調(diào)制存儲器映射MMOD,C,W是π的無沖突存儲訪問映射。
當(dāng)交織(π)是二次多項(xiàng)式排列(QPP)時(shí),我們有如下的定理。
定理1 假定QPPπ(x)=ax+bx2modL,L為大小。如果整數(shù)C滿足C|b(即如果是C,b是約數(shù))且gcd(a,C)=1,那么 π(x)=π(y)modCx=y(tǒng)modC。
證明π(x)=π(y)modCa(x-y)+b(x2-y2)=0modC。從而 a(x-y)modC=0。
這意味著x=y(tǒng)modC。
以下提供了在并行實(shí)現(xiàn)的渦輪解碼器環(huán)境中采用QPP交織(π)的一些例子,可以看出,提供了一種公式化且可變通的無沖突存儲器映射(M)來訪問使用二次多項(xiàng)式排列(QPP)交織的并行渦輪解碼架構(gòu)中的存儲器組。
例1在參考文獻(xiàn)[5]的列表中取大小為L=6144=3×211的QPPπ,其中a=263,b=480=25×3×5。取P=C=20=5×4。有g(shù)cd(a,C)=1且C|b(即C滿足定理1)。因而 π(x)=π(y)modCx=y(tǒng)modC。
設(shè)W=309,那么W滿足等式(6)中的條件,也就是 a)W≥L/P,且 b)gcd(W,C)=1。
那么,通過法則1,調(diào)制存儲器映射MMOD,20,309是使用20個(gè)并行實(shí)現(xiàn)渦輪解碼處理器(即P=20)的此QPP的無沖突存儲器映射。
通過取P=19<C=20,有調(diào)制存儲器映射MMOD,20,324,其使用19個(gè)并行實(shí)現(xiàn)渦輪解碼處理器(即P=20)的QPP的無沖突存儲器映射。
如下給出了一個(gè)滿足條件I的更常規(guī)的情形。
法則2設(shè)π(x)=ax+bx2modL是大小為L的QPP交織。
如果C是L的因數(shù),即C|L。當(dāng)且僅當(dāng)x=y(tǒng)modC(即滿足條件I)時(shí),π(x)=π(y)modC。
證明(←)假設(shè)x=y(tǒng)modC。
存在整數(shù)k使x=y(tǒng)+kC。從而 π(y)-π(x)=a(x+kC-x)+b(x2+2kCx+4k2C2-x2)modL =C(ak+2b2kx+4k2C)modL=0modC 由于C|L, (→)假設(shè)π(x)=π(y)modC。
定義兩個(gè)集 集1S(x)={i|i=xmodC}和 集2S(y)={j|j=y(tǒng)modC}。
假定x≠ymodC,那么S(x)⌒s(y)=。
然而,通過(←)有 π(S(x))={π(i)|i=xmodC}={π(i)|π(i)=π(x)modC},和 π(S(y))={π(j)|j=y(tǒng)modC}={π(j)|π(j)=π(y)modC}。
從而π(S(x))=π(S(y))。
這與S(x)⌒s(y)=相矛盾,且π是一種排列。
因此,x=y(tǒng)modC。
例2在參考文獻(xiàn)[5]的列表中取大小為L=6144=3×211的QPPπ。設(shè)并行實(shí)現(xiàn)渦輪解碼處理器的數(shù)量為20(即P=20)。取C=24。那么C|L且P<C。那么通過法則2,條件I成立。
設(shè)W=311,則W滿足等式(6)中的條件II,即 a)W≥L/P,且 b)gcd(W,C)=1。
那么,通過法則1,調(diào)制存儲器映射MMOD,20,311是用于使用20個(gè)并行實(shí)現(xiàn)渦輪解碼處理器(即P=20)的此QPP交織的無沖突存儲器映射。
例3在參考文獻(xiàn)[5]的列表中取大小為L=4736=37*27的QPPπ。設(shè)并行實(shí)現(xiàn)渦輪解碼處理器的數(shù)量為10(即P=10)。取C=16。那么C|L且P<C。那么通過法則2,條件I成立。
設(shè)W=475,那么W滿足等式(6)中的條件II,即 a)W≥L/P,且 b)gcd(W,C)=1。
那么,通過法則1,調(diào)制存儲器映射MMOD,10,475是用于有20個(gè)并行實(shí)現(xiàn)的渦輪解碼處理器(即P=10)的此QPP的無沖突存儲器映射。
總之,對于并行實(shí)現(xiàn)的渦輪解碼處理器的任何數(shù)量P,通過注意選取數(shù)C≥P和W,調(diào)制存儲器映射MMOD,C,W是用于參考文獻(xiàn)[5]的表3中給出的任何QPP交織(π)的無沖突存儲器映射。
而且,調(diào)制存儲器映射MMOD,C,W提供了更多的自由度來選擇特殊的二次多項(xiàng)式排列(QPP)交織(π),以滿足使用任何所需數(shù)量的并行實(shí)現(xiàn)渦輪解碼處理器的并行渦輪解碼實(shí)現(xiàn)。
圖13是渦輪解碼器1300實(shí)施例的示意圖,其采用兩組單獨(dú)的SISO解碼器(1310和1330)來訪問存儲在多個(gè)存儲器組1390中的數(shù)據(jù)。如其它實(shí)施例中所示,接收到的信號(例如,通常從通信信道接收)提供給I、Q提取模塊1302,由其從接收的信號1301中提取I、Q(同相和正交)成分。這可視為接收器預(yù)處理,它包括任何適當(dāng)?shù)念l率轉(zhuǎn)換(若需要,通常從載波頻率向下轉(zhuǎn)換)。I、Q然后可以根據(jù)調(diào)制的適當(dāng)星座(constellation)和映射進(jìn)行映射。然后,將映射的I、Q傳到度量(metric)生成器1304。度量生成器1304生成適當(dāng)?shù)亩攘?341,其從接收的I、Q分派到調(diào)制的適當(dāng)星座和映射中的星座點(diǎn);星座點(diǎn)的映射在調(diào)制中對度量進(jìn)行索引;這些度量可視為在調(diào)制中從實(shí)際接收符號的位置到預(yù)想星座點(diǎn)位置的換算歐幾里德(Euclidian)距離。
繼續(xù)討論渦輪解碼處理和功能性,度量生成器1304計(jì)算出的度量1341然后被同時(shí)提供給第一軟輸入/軟輸出(SISO)0解碼器陣列1310和第二SISO1解碼器陣列1330。第一SISO0解碼器陣列1310包括一定數(shù)量的SISO0解碼器,如SISO0 1311,...和SISO0 1312所示。第一SISO0解碼器陣列1310中每個(gè)單獨(dú)的解碼器用來對存儲在特定存儲器組1390中一個(gè)存儲器的特定存儲器位置中的數(shù)據(jù)執(zhí)行SISO解碼。
將先前由度量生成器1304計(jì)算出的度量1341也提供到第二SISO1解碼器陣列1330。這一SISO1解碼器陣列1330包括一定數(shù)量的SISO1解碼器,如SISO1 1331,...和SISO0 1332所示。SISO1解碼器陣列1330中的每個(gè)單獨(dú)的解碼器用來對存儲在特定存儲器組1390中一個(gè)存儲器的特定存儲位置中的數(shù)據(jù)執(zhí)行SISO解碼。
在格柵編碼的環(huán)境中(如渦輪格柵編碼調(diào)制(TTCM)),第一SISO0解碼器陣列1310和第二SISO1解碼器陣列1330均根據(jù)所采用的格柵,為在特定解碼迭代中被更新的每個(gè)對應(yīng)存儲器位置內(nèi)的特定數(shù)據(jù)條目計(jì)算出向前度量(α)和向后度量(β)以及外部(extrinsic)值。
針對將被解碼的幀中的每個(gè)符號,均計(jì)算出這些向前度量、向后度量和外部值。向前度量、向后度量和外部值的這些計(jì)算全部基于所用的格柵。
以第一SISO0解碼器陣列1310開始,在計(jì)算出外部值1311以后,將其傳送到交織器(π)1320,然后作為“先驗(yàn)概率”(app)信息1321傳送到第二SISO1解碼器陣列1330。注意,對存儲器組1390中數(shù)據(jù)的訪問是以無沖突方式執(zhí)行的,這是因?yàn)槠渲兴捎玫拇鎯ζ饔成?根據(jù)調(diào)制存儲器映射MMOD,C,W)提供了更多的自由來選擇特定二次多項(xiàng)式排列(QPP)交織(π),以滿足具有任何所需數(shù)量的并行實(shí)現(xiàn)渦輪解碼處理器的并行渦輪解碼實(shí)現(xiàn)。
類似地,在第二SISO1解碼器陣列1330內(nèi)計(jì)算出外部值1331以后,將其傳送到解交織器(π-1)1340,然后作為“先驗(yàn)概率”(app)信息1341傳送到第一SISO0解碼器陣列1310。
注意,渦輪解碼器1300的迭代解碼處理過程中的單次解碼迭代執(zhí)行兩個(gè)SISO操作;這就是說,迭代解碼處理必須經(jīng)過第一SISO0解碼器陣列1310和第二SISO1解碼器陣列1330。
達(dá)到有效置信級別并收斂得到解后,或者執(zhí)行解碼迭代預(yù)定次數(shù)后,來自第二SISO1解碼器陣列1330的輸出作為輸出被傳送到輸出處理器1350。SISO0解碼器陣列1310和SISO1解碼器陣列1330的操作一般稱為對包含在接收的信號1301中的符號的軟符號判決的計(jì)算。在某些實(shí)施例中,以實(shí)際位級別執(zhí)行這些軟符號判決。輸出處理器1350使用這些軟符號判決以生成已被編碼在原始渦輪編碼信號(例如,一般在信號1301最先進(jìn)入的通信信道的另一端的渦輪編碼器位置內(nèi))內(nèi)的信息位的最佳估計(jì)值1351(如硬位和/或符號判決)。
還要注意的是,在交織器(π)1320中執(zhí)行的每次交織可以使用QPP交織的實(shí)施例執(zhí)行,如附圖標(biāo)號1391所示。同樣,在解交織器(π-1)1340中執(zhí)行的解交織也可以使用QPP解交織的實(shí)施例執(zhí)行。
圖14是渦輪解碼器1400實(shí)施例的示意圖,其采用多個(gè)SISO解碼器來訪問存儲在多個(gè)存儲器組中的數(shù)據(jù)。如其它實(shí)施例中所示,將接收的信號(如通常從通信信道接收)提供給I、Q提取模塊1402,由其從接收的信號1401中提取I、Q(同相和正交)成分。這可視為接收器預(yù)處理,其可包括任何適當(dāng)?shù)念l率轉(zhuǎn)換(若需要,通常從載波頻率向下轉(zhuǎn)換)。I、Q然后可以根據(jù)調(diào)制的適當(dāng)星座(constellation)和映射進(jìn)行映射。然后,將映射的I、Q傳到度量(metric)生成器1404。度量生成器1404生成適當(dāng)?shù)亩攘?441,其從接收的I、Q分派到調(diào)制的適當(dāng)星座和映射中的星座點(diǎn);星座點(diǎn)的映射在調(diào)制中對度量進(jìn)行索引;這些度量可視為在調(diào)制中從實(shí)際接收符號的位置到預(yù)想星座點(diǎn)位置的換算歐幾里德(Euclidian)距離。
繼續(xù)討論渦輪解碼處理和功能性,度量生成器1404計(jì)算出的度量1441然后被同時(shí)提供給軟輸入/軟輸出(SISO)解碼器陣列1410,其既執(zhí)行SISO0解碼操作又執(zhí)行SISO1解碼操作。該SISO0解碼器陣列1410包括一定數(shù)量的SISO解碼器,如SISO 1411,...和SISO 1412所示。SISO解碼器陣列1410中每個(gè)單獨(dú)的解碼器用來對存儲在特定存儲器組1490中一個(gè)存儲器的特定存儲器位置中的數(shù)據(jù)執(zhí)行SISO解碼(針對SISO0解碼操作和SISO1解碼操作兩者)。
在格柵編碼的環(huán)境中(如渦輪格柵編碼調(diào)制(TTCM)),SISO解碼器陣列14310中的每個(gè)SISO解碼器根據(jù)所采用的格柵,為在特定解碼迭代中被更新的每個(gè)對應(yīng)存儲器位置內(nèi)的特定數(shù)據(jù)條目計(jì)算出向前度量(α)和向后度量(β)以及外部(extrinsic)值。
針對將被解碼的幀中的每個(gè)符號,均計(jì)算出這些向前度量、向后度量和外部值。向前度量、向后度量和外部值的這些計(jì)算全部基于所用的格柵。
以SISO解碼器陣列1410所執(zhí)行的第一解碼操作(即SISO0)開始,在計(jì)算出外部值1411以后,將其傳送到交織器(π)1420,然后作為“先驗(yàn)概率”(app)信息1421傳回到SISO解碼器陣列1410。注意,在執(zhí)行SISO1解碼操作時(shí),SISO解碼器陣列1410對存儲器組1490中數(shù)據(jù)的訪問是以無沖突方式執(zhí)行的,這是因?yàn)槠渲兴捎玫拇鎯ζ饔成?根據(jù)調(diào)制存儲器映射MMOD,C,W)提供了更多的自由來選擇特定二次多項(xiàng)式排列(QPP)交織(π),以滿足具有任何所需數(shù)量的并行實(shí)現(xiàn)渦輪解碼處理器的并行渦輪解碼實(shí)現(xiàn)。
類似地,在SISO解碼器陣列1430內(nèi)計(jì)算出外部值1431以后,將其傳送到解交織器(-1)1440,然后作為“先驗(yàn)概率”(app)信息1441傳回給SISO解碼器陣列1410。
注意,渦輪解碼器1400的迭代解碼處理過程中的單次解碼迭代執(zhí)行兩個(gè)SISO操作;這就是說,迭代解碼處理必須經(jīng)過SISO解碼器陣列1410兩次。
達(dá)到有效置信級別并收斂得到解后,或者執(zhí)行解碼迭代預(yù)定次數(shù)后,來自SISO解碼器陣列1430的輸出(已經(jīng)執(zhí)行了SISO1解碼操作)作為輸出被傳送到輸出處理器1450。SISO解碼器陣列1410的操作一般稱為對包含在接收的信號1401中的符號的軟符號判決的計(jì)算。在某些實(shí)施例中,以實(shí)際位級別執(zhí)行這些軟符號判決。輸出處理器1450使用這些軟符號判決以生成已被編碼在原始渦輪編碼信號(例如,一般在信號1401最先進(jìn)入的通信信道的另一端的渦輪編碼器位置內(nèi))內(nèi)的信息位的最佳估計(jì)值1451(如硬位和/或符號判決)。
還要注意的是,在交織器(π)1420中執(zhí)行的每次交織可以使用QPP交織的實(shí)施例執(zhí)行,如附圖標(biāo)號1491所示。同樣,在解交織器(π-1)1440中執(zhí)行的解交織也可以使用QPP解交織的實(shí)施例執(zhí)行。
如此實(shí)施例中所示,使用了單個(gè)SISO解碼器陣列1410來執(zhí)行SISO0解碼操作和SISO1解碼操作。還需要注意的是,可采用單個(gè)模塊來實(shí)現(xiàn)交織器(π)1420和解交織器(-1)1440兩者的功能,這兩者都可基于QPP格式實(shí)現(xiàn)。
圖15是解碼渦輪編碼信號的方法的流程圖。如步驟1510所示,方法1500通過從通信信道接收渦輪編碼信號而開始。注意渦輪編碼信號可以是使用二次多項(xiàng)式排列(QPP)交織(π)生成的,如步驟1512所示。
方法1500繼續(xù)在步驟1520中,執(zhí)行預(yù)處理以從渦輪編碼信號中提取出編碼塊。步驟1530中,將該編碼塊分割成多個(gè)子塊。同樣注意,每個(gè)子塊本身包括多個(gè)數(shù)據(jù)。
然后在步驟1540中,將多個(gè)子塊的多個(gè)數(shù)據(jù)存儲到多個(gè)存儲器組內(nèi)。步驟1550中,根據(jù)并行渦輪解碼處理,使用多個(gè)解碼處理器對所述編碼塊(即多個(gè)子塊中每個(gè)中的數(shù)據(jù))進(jìn)行渦輪解碼。步驟1560中,生成被編碼在該渦輪編碼信號中的信息位的最佳估計(jì)值。
圖16是解碼渦輪編碼信號的方法的另一實(shí)施例1600的示意圖。最初,在某些實(shí)施例中,方法1600可以初步地執(zhí)行與圖15中方法1500的步驟1510、1520、1530和1540相似的操作。
如步驟1610所示,方法1600根據(jù)并行渦輪解碼處理使用多個(gè)解碼器來執(zhí)行第一次SISO解碼(例如,SISO0,自然順序相位)并因此生成第一外部信息。多個(gè)子塊的多個(gè)數(shù)據(jù)存儲在多個(gè)存儲器組內(nèi)并可從該多個(gè)存儲器組中讀出。
方法1600然后在步驟1620中,使用二次多項(xiàng)式排列(QPP)交織(π)對第一外部信息進(jìn)行交織,從而生成第一先驗(yàn)概率信息。
步驟1630中,根據(jù)并行渦輪解碼處理使用多個(gè)解碼器來執(zhí)行第二次SISO解碼并因此生成第二外部信息。
在執(zhí)行附圖標(biāo)號1641所示的附加解碼操作時(shí),方法1600繼續(xù)使用二次多項(xiàng)式排列(QPP)解交織(π-1)來解交織(π-1)第二外部信息,從而生成第二先驗(yàn)概率,如步驟1600所示。方法1600然后返回到步驟1610來進(jìn)行后續(xù)的解碼迭代。
然而,當(dāng)最終解碼迭代已經(jīng)執(zhí)行完(所有SISO0和SISO1解碼操作已經(jīng)執(zhí)行,特別在最終SISO1解碼操作已經(jīng)執(zhí)行后),如附圖標(biāo)號1631所示,然后方法1600在步驟1650中生成被編碼在渦輪編碼信號中的信息位的最佳估計(jì)值。
以上借助于說明指定的功能和關(guān)系的方法步驟對本發(fā)明進(jìn)行了描述。為了描述的方便,這些功能組成模塊和方法步驟的界限和順序在此處被專門定義。然而,只要給定的功能和關(guān)系能夠適當(dāng)?shù)貙?shí)現(xiàn),界限和順序的變化是允許的。任何上述變化的界限或順序應(yīng)被視為在權(quán)利要求保護(hù)的范圍內(nèi)。
以上還借助于說明某些重要功能的功能模塊對本發(fā)明進(jìn)行了描述。為了描述的方便,這些功能組成模塊的界限在此處被專門定義。當(dāng)這些重要的功能被適當(dāng)?shù)貙?shí)現(xiàn)時(shí),變化其界限是允許的。類似地,流程圖模塊也在此處被專門定義來說明某些重要的功能,為廣泛應(yīng)用,流程圖模塊的界限和順序可以被另外定義,只要仍能實(shí)現(xiàn)這些重要功能。上述功能模塊、流程圖功能模塊的界限及順序的變化仍應(yīng)被視為在權(quán)利要求保護(hù)范圍內(nèi)。
本領(lǐng)域技術(shù)人員也知悉此處所述的功能模塊,和其它的說明性模塊、模組和組件,可以如示例或由分立元件、特殊功能的集成電路、帶有適當(dāng)軟件的處理器及類似的裝置組合而成。
此外,雖然描述細(xì)節(jié)的目的是清楚和明白上述實(shí)施例,本發(fā)明并不限于這些實(shí)施例。任何本領(lǐng)域技術(shù)人員知悉的、對這些特征和實(shí)施例進(jìn)行各種改變或等效替換而得的技術(shù)方案,都屬于本發(fā)明的保護(hù)范圍。
參考文獻(xiàn)C.Berrou,Y.Saouter,C.Douillard,S.Kerouédan,and M.Jézéquel,“Designing good permutations for turbo codestowards a single model,”2004 IEEEInternational Conference on Communications(ICC),Vol.1,pp341-345,20-24 June2004.O.Y.Takeshita,“On maximum contention-free interleavers andpermutation polynomials over integer rings,”IEEE Trans.Information Theory,vol 52,No.3,March 2006.A.Tarable,S.Benedetto and G.Montorsi“Mapping Interleaving Laws toParallel Turbo and LDPC Decoder Architectures,”IEEE Trans.on Information Theory,Vol.50,No.9,pp.2002-2009,Sept.2004.A.Nimbalker,T.E.Fuja,D.J.Costello,Jr.T.K.Blankenship and B.Classon,“Contention-Free Interleavers,”IEEE ISIT 2004,Chicago,USA,June 27-July2,2004.Ericsson,Motorola,QPP interleaver parameters,3GPP TSG RAN WG1#47bis R1-070484.
權(quán)利要求
1.一種渦輪解碼器,用于對使用二次多項(xiàng)式排列交織生成的渦輪編碼信號執(zhí)行并行解碼,其特征在于,所述渦輪解碼器包括
多個(gè)渦輪解碼器,其數(shù)量是2到渦輪編碼信號的信息塊長度之間的任意整數(shù);
多個(gè)存儲器;其中
所述多個(gè)渦輪解碼器用來讀寫所述多個(gè)存儲器;
在第一解碼周期
根據(jù)所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第一映射,所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器從所述多個(gè)存儲器的第一相應(yīng)存儲器中獲取第一信息;
所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器使用從所述多個(gè)存儲器的第一相應(yīng)存儲器中獲取的所述第一信息執(zhí)行解碼處理,以生成第一更新信息;
所述第一更新信息在所述多個(gè)存儲器的每個(gè)第一相應(yīng)存儲器中覆蓋所述第一信息;
在第二解碼周期
根據(jù)所述多個(gè)解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第二映射,所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器從所述多個(gè)存儲器的第二相應(yīng)存儲器中獲取第二信息;
所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器使用從所述多個(gè)存儲器的第二相應(yīng)存儲器中獲得的所述第二信息執(zhí)行解碼處理,以生成第二更新信息;
所述第二更新信息在所述多個(gè)存儲器的每個(gè)第二相應(yīng)存儲器中覆蓋所述第二信息;
所述多個(gè)渦輪解碼器用來生成已被編碼到所述渦輪編碼信號中的至少一個(gè)位的最佳估計(jì)值。
2.根據(jù)權(quán)利要求1所述的渦輪解碼器,其特征在于,所述渦輪解碼器進(jìn)一步包括
處理模塊,用來在所述渦輪編碼信號的迭代解碼處理過程中執(zhí)行所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間的無沖突調(diào)制映射;其中
所述處理模塊提供所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第一映射;
所述處理模塊提供所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第二映射;
將所述多個(gè)渦輪解碼器和所述多個(gè)存儲器相關(guān)聯(lián)的所述無沖突調(diào)制存儲器映射是基于所述渦輪編碼信號的信息塊長度和所述渦輪編碼信號的虛塊長度兩者至少其一確定的。
3.根據(jù)權(quán)利要求1所述的渦輪解碼器,其特征在于
執(zhí)行渦輪解碼時(shí),所述多個(gè)渦輪解碼器中的渦輪解碼器用來在外部信息上執(zhí)行二次多項(xiàng)式排列交織,從而生成用于后續(xù)解碼處理的先驗(yàn)概率信息。
4.根據(jù)權(quán)利要求1所述的渦輪解碼器,其特征在于
執(zhí)行渦輪解碼時(shí),所述多個(gè)渦輪解碼器中的渦輪解碼器用來在外部信息上執(zhí)行二次多項(xiàng)式排列解交織,從而生成用于后續(xù)解碼處理的先驗(yàn)概率信息。
5.根據(jù)權(quán)利要求1所述的渦輪解碼器,其特征在于,所述多個(gè)渦輪解碼器中的渦輪解碼器包括
第一軟輸入/軟輸出解碼器,用來
接收與渦輪編碼信號相關(guān)的多個(gè)度量;
在所述多個(gè)度量上執(zhí)行軟輸入/軟輸出解碼,從而計(jì)算第一外部信息;
交織器模塊,在第一外部信息上執(zhí)行交織,從而生成第一先驗(yàn)概率信息;
第二軟輸入/軟輸出解碼器,在第一先驗(yàn)概率信息上執(zhí)行軟輸入/軟輸出解碼,從而生成第二外部信息;
解交織器模塊,在第二外部信息上執(zhí)行解交織,從而生成第二先驗(yàn)概率信息;
輸出處理器,用來處理第二軟輸入/軟輸出解碼器已生成的最新外部信息,從而生成被編碼在渦輪編碼信號中的信息位的最佳估計(jì)值。
6.一種渦輪解碼器,用于對使用二次多項(xiàng)式排列交織生成的渦輪編碼信號執(zhí)行并行解碼,其特征在于,所述渦輪解碼器包括
多個(gè)渦輪解碼器,其數(shù)量是2到渦輪編碼信號的信息塊長度之間的任意整數(shù);
多個(gè)存儲器;
處理模塊,用來在所述渦輪編碼信號的迭代解碼處理過程中執(zhí)行所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間的無沖突調(diào)制映射;其中
所述多個(gè)渦輪解碼器用來讀寫所述多個(gè)存儲器;
在第一解碼周期
根據(jù)所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第一映射,所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器從所述多個(gè)存儲器的第一相應(yīng)存儲器中獲取第一信息;
所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器使用從所述多個(gè)存儲器的第一相應(yīng)存儲器中獲取的所述第一信息執(zhí)行解碼處理,以生成第一更新信息;
所述第一更新信息在所述多個(gè)存儲器的每個(gè)第一相應(yīng)存儲器中覆蓋所述第一信息;
所述處理模塊提供所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第一映射;
在第二解碼周期
根據(jù)所述多個(gè)解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第二映射,所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器從所述多個(gè)存儲器的第二相應(yīng)存儲器中獲取第二信息;
所述多個(gè)渦輪解碼器中的每個(gè)渦輪解碼器使用從所述多個(gè)存儲器的第二相應(yīng)存儲器中獲得的所述第二信息執(zhí)行解碼處理,以生成第二更新信息;
所述第二更新信息在所述多個(gè)存儲器的每個(gè)第二相應(yīng)存儲器中覆蓋所述第二信息;
所述處理模塊提供所述多個(gè)渦輪解碼器和所述多個(gè)存儲器之間無沖突調(diào)制存儲器映射的第二映射;
所述多個(gè)渦輪解碼器用來生成已被編碼到所述渦輪編碼信號中的至少一個(gè)位的最佳估計(jì)值;且
執(zhí)行渦輪解碼時(shí),所述多個(gè)渦輪解碼器中的渦輪解碼器用來
在第一外部信息上執(zhí)行二次多項(xiàng)式排列交織,從而生成用于后續(xù)解碼處理的第一“先驗(yàn)概率”信息。
在第二外部信息上執(zhí)行二次多項(xiàng)式排列解交織,從而生成用于后續(xù)解碼處理的第二“先驗(yàn)概率”信息。
7.根據(jù)權(quán)利要求6所述的渦輪解碼器,其特征在于,所述多個(gè)渦輪解碼器中的渦輪解碼器包括
第一軟輸入/軟輸出解碼器,用來
接收與渦輪編碼信號相關(guān)的多個(gè)度量;
在多個(gè)度量上執(zhí)行第一軟輸入/軟輸出解碼,從而計(jì)算第一外部信息;
交織器模塊,在第一外部信息上執(zhí)行二次多項(xiàng)式排列交織,從而生成第一“先驗(yàn)概率”信息;
第二軟輸入/軟輸出解碼器,在第一“先驗(yàn)概率”信息上執(zhí)行軟輸入/軟輸出解碼,從而生成第二外部信息;
解交織器模塊,在第二外部信息上執(zhí)行二次多項(xiàng)式排列解交織,從而生成第二“先驗(yàn)概率”信息;
輸出處理器,用來處理第二軟輸入/軟輸出解碼已生成的最新外部信息,從而生成被編碼在渦輪編碼信號中的信息位的最佳估計(jì)值。
8.一種用于對使用二次多項(xiàng)式排列交織生成的渦輪編碼信號進(jìn)行解碼的方法,其特征在于,所述方法包括
從通信信道中接收渦輪編碼信號;
執(zhí)行預(yù)處理以從所述渦輪編碼信號中提取出編碼塊;
將所述編碼塊分離成多個(gè)子塊,以便所述多個(gè)子塊的每個(gè)子塊包括相應(yīng)的多個(gè)數(shù)據(jù);
將所述多個(gè)子塊中第一子塊的第一多個(gè)數(shù)據(jù)存儲到多個(gè)存儲器組中的第一存儲器組;
將所述多個(gè)子塊中第二子塊的第二多個(gè)數(shù)據(jù)存儲到多個(gè)存儲器組中的第二存儲器組;
從第一存儲器組中獲取第一多個(gè)數(shù)據(jù)的第一元素,對其執(zhí)行渦輪自然順序相位解碼處理,從而更新第一元素,并使用更新后的第一元素覆蓋第一存儲器組中的第一元素;
從第二存儲器組中獲取第二多個(gè)數(shù)據(jù)的第二元素,對其執(zhí)行渦輪自然順序相位解碼處理,從而更新第二元素,并使用更新后的第二元素覆蓋第二存儲器組中的第二元素;
從第一存儲器組中獲取第一多個(gè)數(shù)據(jù)的第三元素,對其執(zhí)行渦輪自然順序相位解碼處理,從而更新第三元素,并使用更新后的第三元素覆蓋第一存儲器組中的第三元素;
從第二存儲器組中獲取第二多個(gè)數(shù)據(jù)的第四元素,對其執(zhí)行渦輪自然順序相位解碼處理,從而更新第四元素,并使用更新后的第四元素覆蓋第二存儲器組中的第四元素;
根據(jù)并行渦輪解碼處理,使用多個(gè)解碼處理器對所述編碼塊進(jìn)行渦輪解碼處理,其中所述多個(gè)解碼處理器的數(shù)量是2到渦輪編碼信號的信息塊長度之間的任意整數(shù);
生成被編碼在渦輪編碼信號中的至少一個(gè)信息位的最佳估計(jì)值。
9.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述方法進(jìn)一步
采用以并行解碼組合實(shí)現(xiàn)的多個(gè)渦輪解碼器,以執(zhí)行渦輪自然順序相位解碼處理和交織順序相位解碼處理;其中
所述多個(gè)渦輪解碼器用來讀寫所述多個(gè)存儲器組。
10.根據(jù)權(quán)利要求8所述的方法,其特征在于,所述方法進(jìn)一步包括
在外部信息上執(zhí)行二次多項(xiàng)式排列交織,從而生成用于后續(xù)解碼處理的“先驗(yàn)概率”信息。
全文摘要
本發(fā)明涉及一種渦輪解碼器及解碼渦輪編碼信號的方法。本發(fā)明通過采用任何所需數(shù)量的并行實(shí)現(xiàn)的渦輪解碼處理器來執(zhí)行已使用QPP交織執(zhí)行的渦輪解碼。該方法允許選擇任意數(shù)量(M)的解碼處理器(即多個(gè)并行實(shí)現(xiàn)的渦輪解碼器)以使用QPP交織來執(zhí)行渦輪編碼信號的解碼。另外,調(diào)制存儲器映射(MMOD,C,W)提供了更多的自由來選擇特定二次多項(xiàng)式排列(QPP)交織(π),以滿足具有任何所需數(shù)量的并行實(shí)現(xiàn)渦輪解碼處理器的并行渦輪解碼實(shí)現(xiàn)。該存儲器映射允許更新信息(使用并行實(shí)現(xiàn)渦輪解碼器實(shí)現(xiàn)更新)的無沖突讀寫到存儲器組。
文檔編號H03M13/27GK101232289SQ20081000843
公開日2008年7月30日 申請日期2008年1月16日 優(yōu)先權(quán)日2007年1月17日
發(fā)明者巴中·申, 塔克·K·李 申請人:美國博通公司