国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      用于矢量化turbo解碼器的數(shù)據(jù)交織電路和方法

      文檔序號(hào):7515841閱讀:351來(lái)源:國(guó)知局
      專(zhuān)利名稱(chēng):用于矢量化turbo解碼器的數(shù)據(jù)交織電路和方法
      用于矢量化TURBO解碼器的數(shù)據(jù)交織電路和方法
      背景技術(shù)
      在通信系統(tǒng)中,例如以無(wú)線(xiàn)方式傳送的信號(hào)可能受到衰落、擁塞和可能導(dǎo)致誤差被引入信號(hào)中的其它因素的影響。通過(guò)允許在接收器處解碼信號(hào)時(shí)對(duì)傳輸期間所引入的誤 差進(jìn)行檢測(cè)和校正,傳輸之前的信號(hào)編碼有助于克服信道噪聲、衰落和擁塞的影響。“Turbo碼”已經(jīng)被認(rèn)為是編碼機(jī)制中的一個(gè)突破,并且對(duì)傳輸期間所生成的誤差 提供了有力的抵制。它們能夠被實(shí)施為并行鏈接卷積碼(PCCC)或串行鏈接卷積碼(SCCC)。 Turbo碼提供了高編碼增益以及低至10_7的誤碼率。Turbo碼提供了出色的誤差校正并且 由此在信噪比(SNR)通常低的應(yīng)用(例如,無(wú)線(xiàn)通信)中非常有用。圖1示出了傳統(tǒng)turbo編碼器的一個(gè)示例。turbo編碼器100接收信號(hào)102,所述 信號(hào)102被傳送到第一遞歸系統(tǒng)卷積(RSC)編碼器104,并且經(jīng)由交織器106被傳送到第二 卷積編碼器108。這兩個(gè)卷積編碼器提供了 turbo碼的組成碼(component code) 0交織器 106在數(shù)據(jù)流被輸入到第二卷積編碼器之前改變其順序,并且因?yàn)橐粋€(gè)數(shù)據(jù)流被交織,所產(chǎn) 生的碼具有時(shí)變特性,這提供了從turbo編碼器所獲得的高編碼增益。經(jīng)編碼的信號(hào)110 在通信信道上被調(diào)制和傳送。圖2示出了傳統(tǒng)turbo解碼器的一個(gè)示例。Turbo解碼器200從通信信道接收經(jīng) 解調(diào)的信號(hào)202。信號(hào)202被傳送到第一軟輸入軟輸出(SISO)解碼器204,并且經(jīng)由交織 器206被傳送到第二 SISO解碼器208。第二 SISO解碼器208還接收信號(hào)202的分量。第 一 SISO解碼器204的輸出經(jīng)由交織器210傳送到第二 SISO解碼器208,并且第二 SISO解 碼器208的輸出經(jīng)由去交織器212傳送到第一 SISO解碼器204,從而使能夠迭代解碼。在 操作中,到來(lái)的數(shù)據(jù)塊(也被稱(chēng)作數(shù)據(jù)幀)被處理一次并接著被循環(huán)若干次以獲得所需的 編碼增益。雖然turbo碼表現(xiàn)出對(duì)誤差的高度抵制,但是它們并非理想地適于許多實(shí)際應(yīng) 用,原因在于作為turbo編碼器使用交織器(其帶來(lái)延遲)的結(jié)果的非常高的等待時(shí)間以 及計(jì)算復(fù)雜的turbo解碼器的迭代算法。Turbo碼通常以大的塊大小(例如,> 5000比特) 進(jìn)行工作。整個(gè)塊的軟輸入必須存儲(chǔ)在存儲(chǔ)器中以便促進(jìn)迭代解碼。換句話(huà)說(shuō),在每個(gè)解 碼階段將反復(fù)使用和更新軟輸入。因此,turbo解碼器是存儲(chǔ)器敏感的,這會(huì)使得它們對(duì)于 一些應(yīng)用而言是不切實(shí)際或者過(guò)于昂貴的。通常,可以通過(guò)使用特殊設(shè)計(jì)的高速硬件來(lái)實(shí)現(xiàn)turbo解碼器而勉強(qiáng)改善串行 turbo解碼器的等待時(shí)間;然而,除了增加的功率消耗(這在許多低功率無(wú)線(xiàn)設(shè)備中是不可 接受的)之外,只能以成本增加和設(shè)備復(fù)雜度為代價(jià)來(lái)提供等待時(shí)間的遞增改善。一種克服turbo解碼的高等待時(shí)間的可選方法是使用并行解碼體系結(jié)構(gòu)。并行解 碼能夠大幅改善吞吐量和等待時(shí)間。有兩種基本的并行機(jī)制可用??赏ㄟ^(guò)同時(shí)對(duì)所接收的 多個(gè)信號(hào)進(jìn)行解碼或者通過(guò)將所接收的信號(hào)塊劃分為子塊并由多個(gè)并行處理器對(duì)所述子 塊并行解碼來(lái)實(shí)現(xiàn)并行。雖然使用并行解碼會(huì)減少吞吐量和等待時(shí)間,但是并不會(huì)減少對(duì) 大存儲(chǔ)器的需求。此外,硬件復(fù)雜度和成本也會(huì)增加。因此,對(duì)于turbo碼的實(shí)際實(shí)施方式 而言,需要具備存儲(chǔ)器效率和硬件(或面積)效率的并行機(jī)制。關(guān)于并行操作的一個(gè)問(wèn)題在于存儲(chǔ)器訪(fǎng)問(wèn)。特別地,交織器的出現(xiàn)意味著存儲(chǔ)器必須由多個(gè)并行處理器亂序?qū)ぶ?。在兩個(gè)或更多處理器需要在相同的時(shí)鐘周期對(duì)相同存儲(chǔ) 器進(jìn)行讀或?qū)懺L(fǎng)問(wèn)時(shí)會(huì)出現(xiàn)存儲(chǔ)器競(jìng)爭(zhēng)。特定類(lèi)型的無(wú)競(jìng)爭(zhēng)(CF)交織器消除了存儲(chǔ)器競(jìng)爭(zhēng)。已經(jīng)在長(zhǎng)期演進(jìn)(LTE)標(biāo)準(zhǔn)中采用的二次置換多項(xiàng)式(QPP) turbo交織器是一種 CF交織器。由于LTE系統(tǒng)中需要高的數(shù)據(jù)速率,所以turbo解碼器將需要采用使用多個(gè)處 理器的并行解碼。因此,需要將QPP應(yīng)用于多處理器turbo解碼器。


      相同附圖標(biāo)記在所有單獨(dú)示圖中指代相同或功能類(lèi)似部件并且連同以下的詳細(xì) 描述一起結(jié)合在說(shuō)明書(shū)中并形成其一部分的附圖用來(lái)進(jìn)一步說(shuō)明各個(gè)實(shí)施例并且解釋完 全依據(jù)本發(fā)明的各種原理和優(yōu)點(diǎn)。圖1是示例性的傳統(tǒng)turbo編碼器的框圖。圖2是示例性的傳統(tǒng)turbo解碼器的框圖。圖3是依據(jù)本發(fā)明一些實(shí)施例的解碼器電路的一部分的框圖。圖4示出了依據(jù)本發(fā)明一些實(shí)施例的示例性數(shù)據(jù)置換。圖5是依據(jù)本發(fā)明一些實(shí)施例的示例性交織器的框圖。圖6是依據(jù)本發(fā)明一些實(shí)施例的示例性多項(xiàng)式遞歸電路的框圖。圖7是依據(jù)本發(fā)明一些實(shí)施例的示例性可重規(guī)范化加法器(renormalizable adder)的框圖。圖8是依據(jù)本發(fā)明一些實(shí)施例的用于基4(radix-4)的turbo解碼器的示例性交 織器的框圖。圖9是依據(jù)本發(fā)明一些實(shí)施例的使用單個(gè)置換電路的示例性turbo解碼器電路的 框圖。圖10和11示出了依據(jù)本發(fā)明一些實(shí)施例的示例性存儲(chǔ)器分配。圖12是依據(jù)本發(fā)明一些實(shí)施例的使用兩個(gè)置換電路的示例性turbo解碼器電路 的框圖。圖13是依據(jù)本發(fā)明一些實(shí)施例的示例性W基加法器的框圖。圖14是依據(jù)本發(fā)明一些實(shí)施例的示例性W基多項(xiàng)式遞歸電路的框圖。圖15是依據(jù)本發(fā)明一些實(shí)施例的使用W基多項(xiàng)式遞歸電路的直接形式索引生成 器的框圖。圖16是依據(jù)本發(fā)明一些實(shí)施例的使用W基多項(xiàng)式遞歸電路的間接形式索引生成 器的框圖。圖17是依據(jù)本發(fā)明一些實(shí)施例的用于以交織順序訪(fǎng)問(wèn)數(shù)據(jù)值的方法的流程圖。本領(lǐng)域技術(shù)人員將會(huì)意識(shí)到,附圖中的部件出于簡(jiǎn)單和簡(jiǎn)要的目的而圖示并且不 必依比例繪制。例如,圖中一些部件的大小可以相對(duì)于其它部件有所放大以助于增進(jìn)對(duì)本 發(fā)明實(shí)施例的理解。
      具體實(shí)施例方式在對(duì)依據(jù)本發(fā)明的實(shí)施例進(jìn)行詳細(xì)描述之前,應(yīng)當(dāng)注意到所述實(shí)施例主要以與turbo解碼器中的交織器相關(guān)的方法步驟和裝置組件的組合形式而存在。因此,所述裝置組 件和方法步驟已經(jīng)由傳統(tǒng)符號(hào)所適當(dāng)表示,僅示出與本發(fā)明實(shí)施例的理解相關(guān)的特定細(xì)節(jié) 從而不會(huì)將公開(kāi)內(nèi)容與對(duì)從這里的描述獲益的本領(lǐng)域技術(shù)人員而言將輕易顯而易見(jiàn)的細(xì) 節(jié)相混淆。在本文中,諸如第一和第二、上方和下方等的相關(guān)術(shù)語(yǔ)僅被用來(lái)將一個(gè)實(shí)體或動(dòng) 作與另一實(shí)體或動(dòng)作進(jìn)行區(qū)分,而不要求或暗示這些實(shí)體或動(dòng)作之間任何這樣的實(shí)際關(guān)系 或順序。術(shù)語(yǔ)“包括”、“包括著”或其任意其它變化形式意在覆蓋非排他性的包含,諸如包括 一系列要素的過(guò)程、方法、物品或裝置并不僅僅包括那些要素,而是可包括其它沒(méi)有明確列 出或結(jié)合到這些過(guò)程、方法、物品或裝置中的要素。在沒(méi)有更多限制的情況下,之前帶有“包 括一個(gè)”的要素并不排除在包括該要素的過(guò)程、方法、物品或裝置中存在其它相同的要素。將要意識(shí)到的是,這里所描述的本發(fā)明實(shí)施例可包括可編程邏輯電路,諸如現(xiàn)場(chǎng) 可編程門(mén)陣列(FPGA)或具有唯一存儲(chǔ)程序指令的傳統(tǒng)處理器,所述程序指令控制一個(gè)或 多個(gè)處理器實(shí)施這里所描述的交織的一些、大部分或全部功能。作為選擇,一些或全部功 能能夠由不具有所存儲(chǔ)程序指令的狀態(tài)機(jī)來(lái)實(shí)施,或者在一個(gè)或多個(gè)應(yīng)用特定集成電路 (ASIC)中實(shí)施,其中每個(gè)功能或者特定功能的組合被實(shí)施為定制邏輯。當(dāng)然,可以使用這些 方法的組合。因此,這里已經(jīng)描述了用于這些功能的方法和手段。此外,雖然可能的顯著努 力和許多設(shè)計(jì)選擇例如由可用時(shí)間、現(xiàn)有技術(shù)以及經(jīng)濟(jì)考慮所激發(fā),但是當(dāng)被這里所公開(kāi) 的概念和原理所教導(dǎo)時(shí),預(yù)期本領(lǐng)域技術(shù)人員將能夠輕易地以最少的實(shí)驗(yàn)而生成這樣的軟 件指令和程序以及IC。本發(fā)明的實(shí)施例涉及并行或矢量化的turbo解碼器中的存儲(chǔ)器訪(fǎng)問(wèn)。因此,本發(fā) 明的實(shí)施例總體上涉及數(shù)據(jù)處理電路,尤其涉及用于采用“turbo碼”的通信系統(tǒng)的數(shù)據(jù)處 理電路。圖3是依據(jù)本發(fā)明一些實(shí)施例的解碼器電路300的一部分的框圖。參見(jiàn)圖3,電路 300包括為解碼器304提供數(shù)據(jù)存儲(chǔ)的數(shù)據(jù)存儲(chǔ)器302。交織器電路306可操作以將數(shù)據(jù) 從存儲(chǔ)器302傳送到解碼器304。交織器電路306是根據(jù)由索引的有序序列所定義的置換 來(lái)對(duì)數(shù)據(jù)序列進(jìn)行置換的設(shè)備。在諸如turbo解碼的典型應(yīng)用中,交織器生成用于存儲(chǔ)器 中數(shù)據(jù)的隨機(jī)訪(fǎng)問(wèn)的地址308,并且從存儲(chǔ)器接收相應(yīng)數(shù)據(jù)310。由于所生成的地址通常對(duì) 應(yīng)于索引的有序序列,所以本文可互換地使用術(shù)語(yǔ)“索引”和“地址”。處于自然或經(jīng)交織順 序的數(shù)據(jù)312被傳送到解碼器304。解碼器304是并行或矢量化處理器,其包括并行操作以解碼數(shù)據(jù)的多個(gè)處理部件 314。每個(gè)處理部件在所接收數(shù)據(jù)塊的子部分、子塊或“窗口”上進(jìn)行操作。所述交織器運(yùn) 行以在窗口之間對(duì)來(lái)自存儲(chǔ)器的數(shù)據(jù)進(jìn)行置換。術(shù)語(yǔ)“矢量化”在所述交織器允許數(shù)據(jù)作 為矢量存儲(chǔ)和取得(即,作為不同群組)時(shí)使用。從解碼器輸出的數(shù)據(jù)316可存儲(chǔ)在存儲(chǔ) 器302中或者輸出到其它處理模塊。
      交織器306可以以各種矢量化turbo解碼器體系結(jié)構(gòu)來(lái)實(shí)現(xiàn),并且公開(kāi)了對(duì)用于 生成窗口間置換的序列的邏輯電路進(jìn)行簡(jiǎn)化的設(shè)計(jì)標(biāo)準(zhǔn)。在本發(fā)明的一個(gè)實(shí)施例中,交織器是矢量化turbo解碼器中的二次置換多項(xiàng)式 (QPP)交織器。在該實(shí)施例中,所述交織器以前向或反向順序提供較高次置換多項(xiàng)式的遞歸 生成。在一個(gè)實(shí)施例中,所述交織器被實(shí)現(xiàn)為自動(dòng)將地址η (x) =mxW+wx分解為其叫和^分量的邏輯電路。此外,所述交織器可被用來(lái)生成矢量化turbo解碼所需的“窗口內(nèi)”地址 和“窗口間”置換。所述交織器可在為隨后被稱(chēng)作“LTE”的第三代(3G)長(zhǎng)期演進(jìn)(LTE)無(wú)線(xiàn)電接入 技術(shù)所提出的turbo解碼器硬件中使用。QPP置換是由多項(xiàng)式所生成的置換的二次情形。首先描述置換多項(xiàng)式的初步處理。 該處理是一般性的,原因在于turbo解碼器能夠有效使用倒數(shù)置換,雖然形式上為多項(xiàng)式, 但是其并不必須是二次的。接下來(lái),描述示例性的矢量化turbo解碼體系結(jié)構(gòu),從其推導(dǎo)出 交織器的功能要求。交織器的一個(gè)功能是將置換分解為“窗口內(nèi)”地址和“窗口間”置換。 還描述了能夠簡(jiǎn)化窗口間置換序列生成的設(shè)計(jì)標(biāo)準(zhǔn)。第η次置換多項(xiàng)式具有形式 其中χ和&為整數(shù)。隨著χ從0增加到K-I,多項(xiàng)式Pn(X)生成置換,所述置換通 常被解釋為處于置換序列中的位置Χ的量的預(yù)置換。在這里并沒(méi)有涉及的對(duì)于的若干約 束確保了 Pn(X)生成置換。在LTE的情況下,turbo交織器使用二次多項(xiàng)式,即η = 2。為 了簡(jiǎn)要,本文的剩余部分通常省略modK符號(hào),除非另外注明,否則隱含假設(shè)所有量都被約 去模K。倒數(shù)置換PnT1(X),其中 并且還具有多項(xiàng)式形式 通常n#m。對(duì)于QPP而言,f2必定在一些次數(shù)包含K的所有質(zhì)因數(shù)。因此,m不 大于f2的所有質(zhì)因數(shù)的最高次。能夠通過(guò)矢量化來(lái)提高解碼器吞吐量。在矢量化解碼器中,K長(zhǎng)度的數(shù)據(jù)塊被劃 分為由M個(gè)處理器同時(shí)處理的M個(gè)通常不重疊的W長(zhǎng)度的“窗口”,K =麗。圖4示出了依據(jù)本發(fā)明一些實(shí)施例的示例性數(shù)據(jù)置換。圖4示出了具有長(zhǎng)度K = 40的數(shù)據(jù)塊402。塊402已經(jīng)被劃分為M = 4個(gè)長(zhǎng)度為10的窗口 404。所述數(shù)據(jù)由4個(gè)處 理器406所處理。第i個(gè)處理器,0 ^ i ^ 3,對(duì)數(shù)據(jù)塊402中處于位置IOi至10i+9的數(shù) 據(jù)進(jìn)行處理。由于反復(fù)處理,turbo解碼器應(yīng)當(dāng)能夠以順序或“自然”的次序以及以經(jīng)置換的次 序來(lái)處理數(shù)據(jù)。在圖4中,陣列402描繪了處于自然次序的數(shù)據(jù)序列,而陣列408則描繪了 處于經(jīng)置換或經(jīng)交織次序的序列。圖4示出了處理器0必須能夠順序處理處于位置0,1, 2,...,9和位置0,17,34,11,28,5,22,39,16,33的數(shù)據(jù)。類(lèi)似地,處理器1必須能夠順序 處理處于位置 10,11,12,· · ·,19 和位置 10,27,4,21,38,15,32,9,26,3 的數(shù)據(jù)。由于多個(gè)處理器必須同時(shí)以經(jīng)置換次序從存儲(chǔ)器取出數(shù)據(jù)而彼此不對(duì)存儲(chǔ)器訪(fǎng) 問(wèn)有所干擾或競(jìng)爭(zhēng),所以矢量化和經(jīng)置換次序處理帶來(lái)了存儲(chǔ)器管理的問(wèn)題。圖4的“經(jīng)交織數(shù)據(jù)”欄中的置換地址實(shí)際上通過(guò)QPP 37x+20x2mod 40所生成。 在圖4中,每個(gè)自然次序和每個(gè)置換地址已經(jīng)被分解為mlO+w的形式,其中w處于“窗口內(nèi)地址”欄,而m則處于“窗口號(hào)”欄中。因此,地址通常被構(gòu)成為mW+w的形式,并且m和w分 別被稱(chēng)作地址的m和w分量。對(duì)于置換地址而言,m分量指示預(yù)置換序列中的數(shù)據(jù)從其起 始的窗口,而w分量則指示窗口內(nèi)數(shù)據(jù)從其發(fā)起的相對(duì)位置。圖4的置換地址欄408示出了所有處理器在任意的給定步驟在相同的窗內(nèi)地址 (欄410)處理數(shù)據(jù)。例如,對(duì)于置換次序處理而言,在第一步驟,所有處理器處理窗內(nèi)地址0 處的數(shù)據(jù)。在第二步驟,所有處理器處理窗內(nèi)地址7處的數(shù)據(jù)。此外,注意到對(duì)于置換次序 處理而言,在每個(gè)步驟上存在窗口間置換(欄412)。令Hii= (m0, Iii1,1112^3)^0 ^mojIHljIii2, m3 < 3,分別表示在第i處理步驟中處理器0,1,2和3的置換地址的m分量,其中0 < i < 9。 每個(gè)Hii是步驟i的窗口間置換。表1列出了作為i的函數(shù)的這些窗口間置換。順便,注意 到每個(gè)Hli是Hltl的循環(huán)移位,其中0 < i < 9。雖然這并不是置換多項(xiàng)式的一般真實(shí)情況, 但是以下得出了保持特性的條件。
      表 1 因此,該示例中的數(shù)據(jù)能夠存儲(chǔ)在10X4B存儲(chǔ)器中,其中B為以比特為單位的數(shù)
      據(jù)寬度。圖5是依據(jù)本發(fā)明一些實(shí)施例的示例性交織器的框圖。參見(jiàn)圖5,所述交織器包括 索引生成器500、存儲(chǔ)器502和窗口間置換電路504。10X4B存儲(chǔ)器502包含塊的40個(gè)數(shù) 據(jù)樣本。所述存儲(chǔ)器的每行包含具有相同窗口內(nèi)索引w的數(shù)據(jù)元素,而每欄則包含具有相 同窗口索引m的數(shù)據(jù)元素。當(dāng)以自然次序處理數(shù)據(jù)時(shí),處理器0處理第一欄數(shù)據(jù)值。當(dāng)以交織次序處理數(shù)據(jù)時(shí),處理器0以窗口內(nèi)次序{0,7,4,1,8,5,2,9,6,3}處理具有下劃線(xiàn)數(shù) 字的數(shù)據(jù)值。在操作中,索引生成器500生成傳送到存儲(chǔ)器訪(fǎng)問(wèn)控制器508的窗口內(nèi)索引 506 (w)。在該示例中,存儲(chǔ)器訪(fǎng)問(wèn)控制器508包括行選擇器,其使得存儲(chǔ)器502的相應(yīng)行中 的四個(gè)數(shù)據(jù)元素被傳送到窗口間置換電路504。索引生成器500還生成被傳送到窗口間置 換電路504的四元素置換矢量510 (m)。窗口間置換電路504依據(jù)置換矢量對(duì)所述四個(gè)數(shù)據(jù) 元素的次序進(jìn)行置換并且以經(jīng)置換的次序向解碼器的處理部件輸出數(shù)據(jù)。為了以如矢量的順序次序處理數(shù)據(jù),所述索引生成器發(fā)布連續(xù)的窗口內(nèi)尋址地址 {0,1,2, ...,9},并且應(yīng)用窗口間置換{0,1,2,3}的身份(identity)(即,傳遞身份pass through) 0為了以經(jīng)置換次序處理數(shù)據(jù),索引生成器發(fā)布地址0,7,4,1,8,5,2,9,6,3并且 應(yīng)用表1中的窗口間置換。之前的示例論證了取出數(shù)據(jù)矢量以便進(jìn)行置換次序處理要求所有處理器在每個(gè) 步驟處理處于相同窗口內(nèi)地址的數(shù)據(jù)。在數(shù)學(xué)上,對(duì)于所有的1≤u≤M-I和0≤ν≤W-I 而言,用于置換η (x)的矢量化標(biāo)準(zhǔn)由此為Ji (uff+v)modff = π (v)modff (4)滿(mǎn)足等式(4)的置換在這里被稱(chēng)作矢量化置換。假設(shè)W以K為因數(shù),直接示出Pn(X)被如下向量化。
      =Pn(v)modW
      等式(5)在W以K為因數(shù)時(shí)對(duì)任意整數(shù)t使用關(guān)系t modKmodW = t modW。等式 (5)五個(gè)等式中第四個(gè)中的雙重求和為零,原因在于求和中的每一項(xiàng)包含至少一個(gè)W因數(shù)。由于PnT1(X)是與Pn(X)類(lèi)似形式的多項(xiàng)式,所以其也必須對(duì)于所有的1≤u≤M-I 和0≤V≤W-I滿(mǎn)足矢量化標(biāo)準(zhǔn) 由于Pn(x)和PnT1(X)是可矢量化的,所以能夠以自然次序或經(jīng)交織次序矢量地存 儲(chǔ)和取出數(shù)據(jù)。如以下所討論的,這對(duì)于矢量化turbo解碼器具有重要的簡(jiǎn)化效果。雖然等式(6)依賴(lài)于P/U)的多項(xiàng)式形式來(lái)論證可矢量性能 (vectorizability),但是通常是這樣,如果置換π (χ)是可矢量化的,則其倒數(shù)置換 ^1(X)也是可矢量化的。由于η (x)可矢量化,所以必然π((uW+v)=muW+wv(7)
      其中0≤u,mu≤M-1,并且對(duì)于χ乒y,mx乒my并且0≤v,wv≤W-1。對(duì)等式(7)取倒數(shù),
      π^-1 (muW+wv) = uw+v (8)給定等式(8),π"1 (χ)明顯滿(mǎn)足等式(4)的矢量化標(biāo)準(zhǔn)。工程文獻(xiàn)對(duì)所有0≤p,q≤M-I從而ρ乒q引用長(zhǎng)度為K =麗的置換π (χ)的
      無(wú)競(jìng)爭(zhēng)標(biāo)準(zhǔn)如下 由于Pn(X)滿(mǎn)足等式(4)的矢量化標(biāo)準(zhǔn),所以必然
      (10)其中0≤mu≤M-I且對(duì)于χ≠y而言mx Φ my,并且0≤wv≤W-1且對(duì)于χ≠y而
      言Wx≠wy。由于等式(9)的floor運(yùn)算提取出mu,則Pn(X)由此必須滿(mǎn)足不等式(9)。相同的 理由指示由于滿(mǎn)足等式(6),所以PnT1(X)也必須滿(mǎn)足不等式(9)。然而,考慮到以下形式的置換Ji (uW+v) = muW+wuj v (11)其中0<mu≤M-I且對(duì)于χ≠y而言mx≠my,并且0≤wu,v≤W-1。這里,如等式 (10)所示,W分量依賴(lài)于U和V而并不單獨(dú)依賴(lài)于V。因此不等式(9)得到滿(mǎn)足,但是矢量 化標(biāo)準(zhǔn)卻不必要得到滿(mǎn)足。除了保證無(wú)競(jìng)爭(zhēng)的存儲(chǔ)器訪(fǎng)問(wèn),還通過(guò)發(fā)布所需的窗口內(nèi)地址 而允許數(shù)據(jù)作為矢量被存儲(chǔ)和取得。硬件turbo解碼需要遞歸生成Pn(X)的器件??赏ㄟ^(guò)如下對(duì)Pn(x+1)進(jìn)行擴(kuò)展而 得出遞歸關(guān)系, 其中PlrinOO為η-1次多項(xiàng)式
      (13)其具有系數(shù)
      (14)由于PlrinOO自身為多項(xiàng)式,所以得到
      (15)
      等式(12)的遞歸關(guān)系由此能夠如下回歸到0次項(xiàng) 等式(16)具有直接的硬件實(shí)施方式,針對(duì)ri = 5,其示例在圖6中示出。在圖6中, 遞歸電路600包括寄存器602、604、606、608和610以及加法器612、614、616、618和620。 輸入信號(hào)Ptl1 U) (622)是常數(shù),并且每個(gè)Pj (χ)寄存器,的初始值是等式(13) 的常數(shù)項(xiàng)IVu。例如,可以通過(guò)實(shí)時(shí)計(jì)算初始值或者預(yù)先進(jìn)行計(jì)算并將數(shù)值存儲(chǔ)在只讀存 儲(chǔ)器中來(lái)確定初始值Iv1,『輸出624是多項(xiàng)式值Pn(X)。圖6中的硬件也能夠通過(guò)針對(duì) 1彡i彡5-n將Pj (χ)初始化為0來(lái)為任意的η < 5計(jì)算Pn(X)。已經(jīng)通過(guò)省略實(shí)際出現(xiàn)的信號(hào)的約去模K而對(duì)圖6中的硬件模型進(jìn)行了簡(jiǎn)化。這 能夠通過(guò)使用圖7所示的可重規(guī)范化的加法器700替代圖6中的每個(gè)加法器來(lái)實(shí)現(xiàn)。參見(jiàn) 圖7,可重規(guī)范化的加法器700可操作以對(duì)以K取模的輸入信號(hào)702 (χ)和704 (y)進(jìn)行相 力口。輸入信號(hào)χ和y在加法器706中相加以產(chǎn)生信號(hào)708。在加法器710,從信號(hào)708減去 數(shù)值K(712)以產(chǎn)生信號(hào)714。如果信號(hào)714為正,則其應(yīng)當(dāng)被用作輸出。如果信號(hào)714為 負(fù),則應(yīng)當(dāng)將信號(hào)708用作輸出。在該示例中,數(shù)據(jù)以2的余數(shù)的形式存儲(chǔ),所以能夠在716 選擇信號(hào)714的最高有效位(MSB)并且將其用于控制信號(hào)選擇器718。以K取模相加的結(jié) 果被輸出作為信號(hào)720。圖6中的硬件自X = O處開(kāi)始并且增加至χ = K-I而生成Pn(X)。然而,turbo解 碼器還需要以反轉(zhuǎn)順序生成PnOO,即自χ = K-I開(kāi)始并且減小至χ = 0??赏ㄟ^(guò)如下擴(kuò)展 Pn(X-I)來(lái)得出遞歸關(guān)系 其中QlrinOO是η-1次的多項(xiàng)式 具有系數(shù) 由于QlrinOO自身為多項(xiàng)式,所以得到 等式(20)的遞歸關(guān)系由此能夠如下回歸到0次項(xiàng)
      因此,為了利用圖6的硬件以前向順序計(jì)算P3(X),寄存器被如下初始化 (1)寄存器P5(X)被初始化為0。通過(guò)將PiY(X)寄存器,1彡i ( 5,的初始值初始化為常數(shù)項(xiàng)kH,。,圖6的硬件就 能夠被用來(lái)計(jì)算等式(21)的遞歸。如同針對(duì)用于前向順序生成的寄存器初始化,例如可通 過(guò)實(shí)時(shí)計(jì)算初始值或者預(yù)先進(jìn)行計(jì)算并將數(shù)值存儲(chǔ)在只讀存儲(chǔ)器中來(lái)確定初始值kpu。
      作為該概念的示例,考慮置換多項(xiàng)式 P3(X) = 37x+20x2+10x3mod40 (22) 使用以上等式, 如上所述,為了利用圖6的硬件以前向順序計(jì)算P3(X),寄存器被如下初始化(1)寄存器P5(X)被初始化為0。(2)寄存器P45OO被初始化為27 (P23U)多項(xiàng)式的常數(shù)項(xiàng))。(3)寄存器P34OO被初始化為20 (P12U)多項(xiàng)式的常數(shù)項(xiàng))。(4)寄存器P23 (χ)被初始化為20 (常數(shù)項(xiàng)Ptl1 (χ))。(5)寄存器P12 (χ)和Ptl1 (χ)被初始化為0。在初始化之后,寄存器被施加時(shí)鐘(CloCked)39次以生成序列中的所有40個(gè)地 址。表2列出了作為周期數(shù)χ的函數(shù)的前向順序的多項(xiàng)式P3(X) = 37x+20x2+10x3mod 40的 寄存器內(nèi)容。能夠驗(yàn)證該表中P5OO欄中的地址序列與通過(guò)等式(22)的直接計(jì)算所生成 的地址序列相同。從如下的Qi^(X)找出用于反向順序遞歸的初始寄存器值。(2)寄存器P45OO被初始化為13(Q23(x)多項(xiàng)式的常數(shù)項(xiàng))。(3)寄存器P34OO被初始化為20 (Q12U)多項(xiàng)式的常數(shù)項(xiàng))。(4)寄存器P23 (χ)被初始化為20 (常數(shù)項(xiàng)Qtl1 (χ))。(5)寄存器P12 (χ)和Ptl1 (χ)被初始化為0。 在初始化之后,寄存器被施加時(shí)鐘40次以生成序列中的所有40個(gè)地址。表3列 出了作為周期數(shù)X的函數(shù)的反向順序的多項(xiàng)式P3 (X) = 37x+20x2+10x3mod 40的寄存器內(nèi) 容。視覺(jué)觀(guān)察表明表3中的序列是表2的反向序列。表2 之前的概念主要應(yīng)用于基2(radiX-2)的解碼器,其每個(gè)時(shí)鐘周期處理一個(gè)矢量。 在編碼網(wǎng)格描述中,基2的多處理器解碼器的每個(gè)處理器每個(gè)時(shí)鐘周期處理一個(gè)網(wǎng)格步驟?;?解碼是用來(lái)提高解碼器吞吐量的慣用技術(shù)。在編碼網(wǎng)格描述中,基4的多處理器 解碼器的每個(gè)處理器每個(gè)時(shí)鐘周期處理兩個(gè)網(wǎng)格步驟。因此,基4的矢量化解碼器每個(gè)時(shí) 鐘周期處理兩個(gè)矢量。一個(gè)矢量對(duì)應(yīng)于偶數(shù)編號(hào)的網(wǎng)格步驟,而另一個(gè)則對(duì)應(yīng)于奇數(shù)編號(hào) 的網(wǎng)格步驟。圖8是依據(jù)本發(fā)明一些實(shí)施例的用于基4的解碼器的諸如交織器電路306的示例 性交織器電路的框圖。參見(jiàn)圖8,所述交織器電路包括偶數(shù)索引生成器800、奇數(shù)索引生成 器802、偶數(shù)窗口間置換電 路804和奇數(shù)窗口間置換電路806。IOX4B存儲(chǔ)器502包含塊的 40個(gè)數(shù)據(jù)樣本。在操作中,偶數(shù)索引生成器800生成偶數(shù)窗口內(nèi)索引808,其被傳送到存儲(chǔ) 器訪(fǎng)問(wèn)控制器,這使得存儲(chǔ)器502相應(yīng)行中的四個(gè)數(shù)據(jù)元素被傳送到偶數(shù)窗口間置換電路 804。同樣,奇數(shù)索引生成器802生成奇數(shù)窗口內(nèi)索引810,其被傳送到存儲(chǔ)器訪(fǎng)問(wèn)控制器, 這使得存儲(chǔ)器502相應(yīng)行中的四個(gè)數(shù)據(jù)元素被傳送到偶數(shù)窗口間置換電路806。索引生成 器800、802還生成四元素置換矢量meven 812和四元素置換矢量ni。dd814,它們被分別傳送到 偶數(shù)窗口間置換電路804和奇數(shù)窗口間置換電路806。偶數(shù)和和奇數(shù)窗口間置換電路804 和806分別依據(jù)置換矢量meven和m。dd對(duì)四個(gè)數(shù)據(jù)元素的次序進(jìn)行置換,并且以經(jīng)置換次序 向解碼器的處理部件輸出所述數(shù)據(jù)。為了實(shí)現(xiàn)基4運(yùn)算,索引生成器800和802必須在每個(gè)時(shí)鐘周期上前進(jìn)兩步。注 意,等式(12)至(16)通過(guò)每個(gè)時(shí)鐘周期一個(gè)步驟給出了索引生成器前向前進(jìn)的遞歸公式。 等式(17)至(21)通過(guò)每個(gè)時(shí)鐘周期一個(gè)步驟給出了索引生成器反向前進(jìn)的遞歸公式。這 些公式適用于基2處理。對(duì)于基4處理,這些公式被如下概括。與步驟χ相距d步驟的遞歸多項(xiàng)式的數(shù)值 為 其中SlrinOO是n-1次的多項(xiàng)式 具有系數(shù) 由于SlrinOO自身為多項(xiàng)式,所以得到 等式(32)的遞歸關(guān)系由此能夠如下回歸到0次項(xiàng)

      (33)等式(29)至(33)是等式(12)至(16)以及(17)至(21)的概括。對(duì)于基2而言 前向前進(jìn)d= 1,而對(duì)于基2而言反向前進(jìn)d = -l。同樣,對(duì)于基4而言前向前進(jìn)d = 2,而 對(duì)于基4而言反向前進(jìn)d = -2。圖9是示例性矢量化turbo解碼器體系結(jié)構(gòu)的框圖。例如解碼器304的Iog-MAP 解碼器由諸如處理器314 (標(biāo)記為“PR0C O”至“PR0CM-1”)的多個(gè)M Iog-MAP處理器所構(gòu) 成。Iog-MAP解碼器304在解碼器模式1(自然次序處理)和解碼器模式2 (置換次序處理) 之間進(jìn)行交替。還存在諸如存儲(chǔ)器502和另一存儲(chǔ)器502’的兩個(gè)用于外部數(shù)據(jù)存儲(chǔ)的存 儲(chǔ)器,以及諸如置換電路504的置換電路。存儲(chǔ)器選擇器902根據(jù)Iog-MAP解碼器304處 于解碼器模式1還是解碼器模式2而在兩個(gè)存儲(chǔ)器502和502’之間進(jìn)行選擇。在任一種 模式中,包括諸如索引生成器500的索引生成器和置換電路504的交織器生成用于從存儲(chǔ) 器的行提取數(shù)據(jù)矢量的窗口內(nèi)地址以及用于在窗口之間置換數(shù)據(jù)矢量的窗口間置換矢量。 注意,該體系結(jié)構(gòu)還支持基4處理,其中除了生成用于在窗口之間置換這些數(shù)據(jù)矢量的兩 個(gè)窗口間置換矢量,索引生成器還生成用于從存儲(chǔ)器的兩行提取兩個(gè)數(shù)據(jù)矢量的兩個(gè)地址 (奇數(shù)和偶數(shù))。圖10和11圖示了外部存儲(chǔ)器對(duì)于K長(zhǎng)度塊的存儲(chǔ)設(shè)置,其中K =麗。所述外部 存儲(chǔ)器為W位置的深度,并且每個(gè)位置存儲(chǔ)B比特量的M長(zhǎng)度的矢量。圖10和11中的每 個(gè)小框顯示了其所包含的數(shù)據(jù)的索引。交織器置換由π (χ)所表示,0<X<MW-1。圖10 示出了外部存儲(chǔ)器1 (502’)以置換次序存儲(chǔ)數(shù)據(jù)。圖11示出了外部存儲(chǔ)器2 (502)以自然 次序存儲(chǔ)數(shù)據(jù)。該體系結(jié)構(gòu)中的數(shù)據(jù)流程如下。在解碼器2模式(經(jīng)置換次序處理)中,通過(guò)連 同窗口間置換矢量一起發(fā)布窗口內(nèi)置換地址以控制置換電路來(lái)從外部存儲(chǔ)器2 (自然次序 存儲(chǔ)器)矢量取出外部數(shù)據(jù)。在Iog-MAP處理器生成所更新的外部數(shù)據(jù)時(shí),解碼器2在外 部存儲(chǔ)器1中存儲(chǔ)它們(作為矢量)。如圖10所示,由于解碼器2以經(jīng)置換次序生成所更 新的外部數(shù)據(jù)但是對(duì)它們順序進(jìn)行存儲(chǔ),所以所述外部數(shù)據(jù)在外部存儲(chǔ)器1中最終處于經(jīng) 置換次序。在解碼器1模式(自然次序處理)中,從外部存儲(chǔ)器1 (經(jīng)置換次序存儲(chǔ)器)矢量 取出外部數(shù)據(jù)。由于數(shù)據(jù)在該存儲(chǔ)器中為經(jīng)置換次序但是解碼器1以自然次序進(jìn)行處理, 所以外部數(shù)據(jù)必須在它們被取出時(shí)去置換。如以上所討論的,反向QPP置換是可矢量化的。 因此,以解碼器2將自然次序的外部數(shù)據(jù)置換為經(jīng)置換次序的外部數(shù)據(jù)的相同方式,解碼 器1將經(jīng)置換次序的外部數(shù)據(jù)去置換為自然次序的外部數(shù)據(jù)。解碼器1由此連同窗口間去 置換一起發(fā)布窗口間去置換地址以控制置換電路。圖9的解碼器體系結(jié)構(gòu)中的置換電路應(yīng)當(dāng)能夠進(jìn)行任意置換。因此,必須使用用 于B比特?cái)?shù)值的MXM十字切換。對(duì)于LTE而言,吞吐量要求會(huì)規(guī)定M為32那么大,并且B 約為8比特。能夠利用8192個(gè)2輸入的多路復(fù)用器來(lái)實(shí)現(xiàn)用于8比特?cái)?shù)值的32X32十字 切換。因此,所述置換電路并非是所述解碼器微不足道的部分。圖9的解碼器體系結(jié)構(gòu)中 的單個(gè)置換電路是可以的,原因在于交織器置換及其反向置換都可以是被矢量化。當(dāng)置換能夠被矢量化時(shí),其倒數(shù)也能夠被矢量化(如以上所描述的)。然而,無(wú)競(jìng)爭(zhēng)置換并不意味著無(wú)競(jìng)爭(zhēng)的倒數(shù)置換。考慮置換η (χ),0<χ<7,并且其倒數(shù)置換π— (χ) 在表4中列出。置換π (χ)明顯對(duì)于M = 2(即,W = 4)是無(wú)競(jìng)爭(zhēng)的。然而,同樣明顯的是, 倒數(shù)置換^! — (χ)對(duì)于M= 2并不是無(wú)競(jìng)爭(zhēng)的。例如, 和 實(shí)際上,在該情況下每個(gè)步驟都存在競(jìng)爭(zhēng)。表4 當(dāng)交織器倒數(shù)置換并非無(wú)競(jìng)爭(zhēng)時(shí),解碼器必須在兩個(gè)外部存儲(chǔ)器中以自然順序存 儲(chǔ)外部數(shù)據(jù),迫使其為圖12所示的體系結(jié)構(gòu)。圖12示出了在交織器倒數(shù)置換并非無(wú)競(jìng)爭(zhēng) 時(shí)的示例性turbo解碼器體系結(jié)構(gòu)。該體系結(jié)構(gòu)具有兩個(gè)置換電路504和1202。置換電路 504在取出外部數(shù)據(jù)時(shí)對(duì)其進(jìn)行置換,而置換電路1202則在存儲(chǔ)時(shí)對(duì)外部數(shù)據(jù)去置換。此 夕卜,需要反向器1204對(duì)窗口間置換進(jìn)行反向以驅(qū)動(dòng)置換電路1202。因此,圖9所示的解碼 器比圖12所示的解碼器更為簡(jiǎn)單。如以上所討論的,當(dāng)使用類(lèi)似QPP的可矢量化的交織器 置換時(shí),僅需要單個(gè)置換網(wǎng)絡(luò),并且不需要硬件對(duì)窗口間置換進(jìn)行反向。推導(dǎo)出圖9中較為簡(jiǎn)單的解碼器體系結(jié)構(gòu)的交織器模塊的以下性能。(1)所述交織器模塊應(yīng)當(dāng)能夠生成置換及其倒數(shù)(inverse)。此外,所述模塊應(yīng)當(dāng) 能夠以前向次序和反向次序生成這些置換。這要求通用邏輯電路遞歸計(jì)算置換多項(xiàng)式。所述邏輯電路需要針對(duì)最高次數(shù)進(jìn)行設(shè)計(jì),所述最高次數(shù)對(duì)于LTE將為4或5。(2)所述交織器模塊應(yīng)當(dāng)能夠以每個(gè)時(shí)鐘周期一個(gè)的速度將M個(gè)地址分解為窗口 內(nèi)地址和窗口間置換。所述邏輯電路需要被設(shè)計(jì)為適應(yīng)一些最大窗口數(shù)目Mmax以及一些最 大窗 口大小 Wmax。對(duì)于 LTE 而言,Mfflax = 16 或 Mmax = 32 并且 Wmax = 384 或 Wmax = 192。考慮具有在W長(zhǎng)度的窗口上運(yùn)行的M個(gè)并行處理器的矢量化turbo解碼器。對(duì)于 經(jīng)置換次序處理而言,在第i步驟,0 ( i ( W-1,必須取出地址為如下的數(shù)據(jù)。 Ji (i+(M-I) W) = m^iff+Wi量Wi, 0彡Wi彡W-I為窗口內(nèi)地址,并且m = (m0, Hi1, m2, . . . , Hi^1) (37)其中0彡HiiS M-I是窗口間置換。等式(36)示出了所述硬件必須將地址π (χ) = mxff+wx分解為其mx和Wx分量,其 中
      π(χ)
      Wr =(3O)并且wx = π (x)modff (39)針對(duì)該問(wèn)題的一種方法是通過(guò)等式(38)和(39)的窮舉(bruteforce)計(jì)算的硬 件來(lái)計(jì)算η (χ)并接著遵循它。不幸的是,該方法隨著M的增加而成本增加。更好的解決方案是在“W基”域中進(jìn)行確定π (χ)中所涉及的所有計(jì)算。利用這 種解決方案,η (χ)計(jì)算中所涉及的每個(gè)量ν = mvff+wv并不表示為V,而是表示為數(shù)對(duì)(mv, wv)。所有運(yùn)算都在數(shù)對(duì)上進(jìn)行,并且結(jié)果以數(shù)對(duì)所表示。對(duì)于圖6所示的遞歸地址生成硬 件而言,圖7的可重規(guī)范化地址被圖13中所示的基于數(shù)對(duì)的地址所替代。圖13示出了用于 圖6的遞歸地址生成硬件的基于數(shù)對(duì)的示例性加法器1300。參見(jiàn)圖13,基于數(shù)對(duì)的加法器 1300將信號(hào)對(duì)(mx,wx) (702和702,)加到信號(hào)對(duì)(my,wy) (704和704,),產(chǎn)生信號(hào)對(duì)(mz, wz) (720和720’)。注意,該結(jié)果是可重規(guī)范化的,從而0彡mz彡M-I且0彡Wz彡W-1。力口 法器706、加法器710、MSB選擇器716和信號(hào)選擇器718形成第一可重規(guī)范化加法器,如以 上參見(jiàn)圖7所描述的,其對(duì)以L(fǎng)取模的Wx和Wy進(jìn)行相加,其中L = W。類(lèi)似地,包括耦合到 加法器1308的加法器706,、耦合到加法器1308的加法器710,、耦合到加法器710,的MSB 選擇器716’以及耦合到MSB選擇器716’和加法器706’和加法器710’的信號(hào)選擇器718’ 的第二可重規(guī)范化加法器對(duì)以L(fǎng)取模的mx,my以及“進(jìn)位”信號(hào)1306進(jìn)行相加,其中L = W。如果wx+wy-W為負(fù),則MSB選擇器716輸出信號(hào)1302。該信號(hào)通過(guò)反向器1304以產(chǎn)生 以L(fǎng)取模的“進(jìn)位”信號(hào)1306,如果wx+wv>W,則所述“進(jìn)位”信號(hào)1306被設(shè)置。進(jìn)位信號(hào)1306在加法器1308中被加到加法器706’的輸出。因此,所有計(jì)算都可以以W取模而不是 以K取模來(lái)進(jìn)行。當(dāng)在圖6的遞歸電路中使用基于數(shù)對(duì)的加法器時(shí),窗口內(nèi)地址和窗口間 置換矢量元素被直接計(jì)算,而不是通過(guò)連續(xù)計(jì)算將地址分解為其w和m分量來(lái)計(jì)算地址并 遵循它的窮舉(brute force)技術(shù)。利用該解決方案,當(dāng)計(jì)算地址π (χ)時(shí),結(jié)果將自動(dòng)以其分解形式(mx,wx)而出現(xiàn), 其中 圖14示出了具有W基加法器的用于? 00的多項(xiàng)式遞歸電路1400。用于Pn(X)的 電路1400被以W基加法器來(lái)配置。該電路接受一組初始化參數(shù)1402(以初始化如以上所 討論的寄存器)并且生成等式(40)中所定義的分別對(duì)應(yīng)于輸出1406和1404的分量數(shù)對(duì) (mx, wx) ο之前部分描述了用于Pn(X)的多項(xiàng)式遞歸電路能夠如何被修改以使得每個(gè)地址被 自動(dòng)分解為其m和w分量。如等式(24),矢量化的turbo解碼器實(shí)際上需要用于M個(gè)窗口 的同時(shí)M個(gè)分解。注意,利用可矢量化的置換,所有M個(gè)窗口的w分量都相同,而m分量的 集合將形成窗口間置換。在用于同時(shí)M個(gè)分解的間接方法中,如圖15所示,例示了 M個(gè)相同WPn(X)電路。 圖15示出了用于將交織器分解為窗口內(nèi)地址和窗口間置換的間接方法的示例。遞歸電路 1400被初始化為以交錯(cuò)的方式以及貫串序列以窗口大小W為間隔開(kāi)始。特別地,第u個(gè)電 路被初始化以使得其在Pn(UW)開(kāi)始,0彡u彡M-1。以這種方法,使用了 Pn(X)的自動(dòng)分解 形式,從而第u個(gè)電路生成Pn (uff+v) modff和floor (Pn (uff+v) /W) = mu (ν)。由于所有電路的 Pn(UW+v)modW都相同,所以這些輸出中僅有一個(gè)被實(shí)際采用。一組mu(v)被收集以形成窗 口間置換。與間接方法相比,直接方法得出遞歸以直接如下計(jì)算窗口間置換。在第ν個(gè)步驟 上,0彡ν彡W-1,第u個(gè)處理器,0彡u彡M-I,的地址的m分量mu(v)能夠簡(jiǎn)化如下。
      其中Ru(V)是η-1次多項(xiàng)式 注意,由于Ru(V)是多項(xiàng)式,所以其能夠利用圖6所描繪的遞歸結(jié)構(gòu)進(jìn)行遞歸計(jì) 算。當(dāng)圖6所描繪的遞歸結(jié)構(gòu)被用來(lái)遞歸計(jì)算Ru(V)時(shí),該計(jì)算可以約去模M。因此,在這 種情況下,能夠使用圖7的可重規(guī)范化的地址,其中K被M所替代。等式(41)的五個(gè)等式中的最后一個(gè)等式具有圖16所示的前向硬件實(shí)施方式。圖 16示出了用于Pn(V)的自動(dòng)分解遞歸電路的單個(gè)實(shí)例1400被用來(lái)提取窗口內(nèi)地址以及窗 口間置換的Hi0(V)項(xiàng),其被初始化為在置換序列的起始處開(kāi)始。還具有電路的M-I個(gè)實(shí)例 (1602,1602'和1602〃)來(lái)計(jì)算Pu(V),1彡u彡M_1,0彡ν彡W-1。根據(jù)等式(41)中的方 式,mQ(V)在加法器1602、1602'和1602"中被加到每個(gè)輸出Ru(V)以獲得mu(v)。輸出510 包括自動(dòng)分解遞歸電路1400的輸出1406、1404的第一輸出1406以及加法器1602、1602' 和1602"的輸出,并且是窗口間置換矢量m(V) = (nUvhmJv),···,HIsh(V)),并且作為窗 口內(nèi)索引w的輸出506包括電路1400的輸出1406、1404的第二輸出1404。窗口間置換的生成可以使用循環(huán)移位來(lái)簡(jiǎn)化。在特定條件下,m(V)是m(0)針對(duì)所 有ν的循環(huán)移位,0 ^ V^ff-I0這將潛在地有助于簡(jiǎn)化硬件以實(shí)施諸如圖4所示的置換。 為了理解其如何發(fā)生,考慮置換Hi(V)。由于HItl(V)對(duì)于m(V)的所有元素都相同,所以 特別感興趣的是矢量R(V)恒定并且不依賴(lài)于ν的情況,也就是 因此意味著對(duì)于每個(gè)u而言,0彡u彡M-IRu (v) =rUj0(46)當(dāng)處于這種情況時(shí),m(v)是R(O)通過(guò)Hitl(V)位置的循環(huán)移位0從等式(42)得出,如果對(duì)所有u和W保持等式(46)中的條件,則對(duì)于所有 1 < i < η-1和i+1 ^ j ^ η而言,必須的是
      由于每個(gè)數(shù)值j具有多個(gè)位置i,所以對(duì)于2 < j < η而言,必須的是 其中IXDi [Xi]表示所有數(shù)字Xi的最小公約數(shù)。依據(jù)本發(fā)明的一個(gè)方面,適當(dāng)初始化的單個(gè)邏輯電路被用來(lái)實(shí)施矢量化的turbo 解碼器中的QPP交織器。所述電路能夠生成QPP置換索引的序列或者倒數(shù)置換索引的序列。 所述電路可以以前向或反向次序來(lái)計(jì)算這些序列。所述電路可包括單個(gè)這樣的電路,其對(duì) 于基2處理而言每個(gè)時(shí)鐘周期前進(jìn)一步。此外,所述電路可包括兩個(gè)這樣的電路,奇數(shù)和偶 數(shù),其中每個(gè)對(duì)于基4處理而言每個(gè)時(shí)鐘周期前進(jìn)兩步。以上已經(jīng)描述了矢量化置換和矢量化turbo解碼體系結(jié)構(gòu)。在一個(gè)實(shí)施例中,在 置換及其倒數(shù)均可矢量化(如作為QPP轉(zhuǎn)換)時(shí),使用單個(gè)置換電路的解碼器體系結(jié)構(gòu)。討 論了對(duì)于矢量化turbo解碼器的交織器產(chǎn)生窗口內(nèi)地址和窗口間置換的要求,并且提出了 針對(duì)該問(wèn)題的兩種解決方案。圖15所示的一種(間接)方案例示了多個(gè)交錯(cuò)的完全交織 器,而圖16所示的另一種(直接)方案則依賴(lài)于遞歸來(lái)直接計(jì)算窗口間置換的序列。得出 了能夠在交織器設(shè)計(jì)階段使用的標(biāo)準(zhǔn)(等式(48)),其將窗口間置換序列的生成轉(zhuǎn)換為一 系列循環(huán)移位。這里所得出的所有技術(shù)都依賴(lài)于對(duì)一組寄存器的適當(dāng)初始化。這些初始化數(shù)值 (等式(14)、(19)和(42)的常數(shù)項(xiàng))可預(yù)先計(jì)算并存儲(chǔ)在只讀存儲(chǔ)器中或者實(shí)時(shí)進(jìn)行計(jì)算。
      圖17是依據(jù)本發(fā)明特定方面的用于經(jīng)交織數(shù)據(jù)的矢量化處理的方法的流程圖。 流程在圖17中的框1702開(kāi)始,在框1704對(duì)遞歸電路的寄存器進(jìn)行初始化。在框1706,所 述遞歸電路被施加時(shí)鐘以生成窗口內(nèi)索引w和窗口間置換矢量πι。在框1708,窗口內(nèi)索引w 被用來(lái)從存儲(chǔ)器獲取數(shù)據(jù)行。在框1710,這些數(shù)據(jù)值被置換并傳送到并行處理器。它們可以 是turbo解碼器的處理器,或者它們可以執(zhí)行利用交織或置換數(shù)據(jù)的其它一些處理。所述 數(shù)據(jù)在框1712進(jìn)行處理,并且在框1714,處理結(jié)果可以存儲(chǔ)在存儲(chǔ)器中或者被輸出。如果 在當(dāng)前數(shù)據(jù)塊中還存在更多數(shù)據(jù)值有待處理,則如決策框1716的肯定分支所描繪的,流程 返回框1706并且計(jì)算下一個(gè)窗口內(nèi)索引和置換矢量。如果在當(dāng)前數(shù)據(jù)塊中再?zèng)]有數(shù)據(jù)值 有待處理,則如決策框1716的否定分支所描繪的,當(dāng)前塊已經(jīng)完成處理并且方法在框1719 結(jié)束。在以上說(shuō)明書(shū)中,已經(jīng)對(duì)本發(fā)明的特定實(shí)施例進(jìn)行了描述。然而,本領(lǐng)域技術(shù)人員 應(yīng)當(dāng)意識(shí)到,能夠進(jìn)行各種修改和變化而不會(huì)背離如以下權(quán)利要求中所給出的本發(fā)明的保 護(hù)范圍。因此,該說(shuō)明書(shū)和附圖要以說(shuō)明而非限制的含義來(lái)理解,并且所有這些修改意在包 括于本發(fā)明的范圍之內(nèi)。優(yōu)點(diǎn)、優(yōu)勢(shì)、對(duì)問(wèn)題的解決方案以及可能使得任何。優(yōu)點(diǎn)、優(yōu)勢(shì)、解 決方案發(fā)生或變得更為明確的任意(多個(gè))要素都不被認(rèn)為是關(guān)鍵的、所必需的,或者是任 意或所有權(quán)利要求的實(shí)質(zhì)性特征或要素。當(dāng)前所要求保護(hù)的發(fā)明由所附權(quán)利要求所確定, 其中包括在本申請(qǐng)未決期間所進(jìn)行的修改以及所提出的那些權(quán)利要求的所有等同方式。
      權(quán)利要求
      一種用于在包括M個(gè)并行處理器的信號(hào)處理系統(tǒng)中根據(jù)索引x的n次置換多項(xiàng)式Pn(x)對(duì)包括W個(gè)數(shù)值的M個(gè)窗口的數(shù)據(jù)塊進(jìn)行交織的方法,所述方法包括在存儲(chǔ)器中的W×M陣列中存儲(chǔ)所述數(shù)據(jù)塊;對(duì)于范圍0≤x<W中的每個(gè)索引x為第一窗口的索引x生成窗口內(nèi)數(shù)值w(x)和第一窗口間數(shù)值m(x),其中Pn(x)=m(x)W+w(x);根據(jù)所述第一窗口間數(shù)值m(x)計(jì)算長(zhǎng)度為M的窗口間置換矢量m;從所述存儲(chǔ)器檢索對(duì)應(yīng)于所述窗口內(nèi)索引w(x)的數(shù)據(jù)值;依據(jù)所述窗口間置換矢量m對(duì)所檢索的數(shù)據(jù)值進(jìn)行重新排序以產(chǎn)生經(jīng)重新排序的數(shù)據(jù)值;并且將經(jīng)重新排序的數(shù)據(jù)值傳送到所述M個(gè)并行處理器中的每一個(gè)。
      2.如權(quán)利要求1所述的方法,進(jìn)一步包括使用多個(gè)寄存器和可重規(guī)范化的加法器,根據(jù)M-I個(gè)η-1次的多項(xiàng)式R1 (x) ,R2(x),..., IV1(X),遞歸生成M-I個(gè)并行數(shù)值;并且計(jì)算窗 口 間置換矢量 m = [m (χ),m (x) +R1 (χ),m (χ) +R2 (χ),· · ·,m (χ) +Rsh (χ)]以 M 取模。
      3.如權(quán)利要求ι所述的方法,其中計(jì)算窗口間置換矢量m包括使用多個(gè)寄存器和基于 數(shù)對(duì)的加法器遞歸計(jì)算 M 對(duì)數(shù)值(W0 (χ),m0 (χ) ),(W1 (X),Hl1 (X) ),· · ·,(Wlhl (X),HIsh (X)),其 中 Pn(X+iW) = Hli(X)Mwi(Xhi)彡 i <M-1,并且 W0(X) =W1(X) =··· = Wsh (X),并且其中 m = [m0 (χ), Iii1 (χ), ... , Hi^1 (χ)]。
      4.如權(quán)利要求1所述的方法,其中所述信號(hào)處理系統(tǒng)包括turbo解碼器,并且其中生成 窗口內(nèi)索引W(X)和窗口間置換矢量m包括在所述信號(hào)處理系統(tǒng)處于第一操作模式時(shí),生成用于自然次序處理的窗口內(nèi)索引W(X) 和窗口間置換矢量Π1;并且在所述信號(hào)處理系統(tǒng)處于第二操作模式時(shí),生成用于交織次序處理的窗口內(nèi)索引W(X) 和窗口間置換矢量Π1。
      5.如權(quán)利要求1所述的方法,其中所述信號(hào)處理系統(tǒng)包括turbo解碼器,并且其中生成 窗口內(nèi)索引W(X)和窗口間置換矢量Π1包括在所述信號(hào)處理系統(tǒng)處于第一操作模式時(shí),生成用于去交織的窗口內(nèi)索引W(X)和窗 口間置換矢量Π1;并且在所述信號(hào)處理系統(tǒng)處于第二操作模式時(shí),生成用于經(jīng)交織次序處理的窗口內(nèi)索引 w (χ)和窗口間置換矢量m。
      6.一種用于對(duì)具有K個(gè)元素的數(shù)據(jù)塊進(jìn)行編碼的turbo編碼器,所述turbo編碼器包括turbo交織器,其可操作以依據(jù)η階置換多項(xiàng)式P l;^‘mod尺對(duì)數(shù)據(jù)塊進(jìn)/=0行交織,其中自變量X和多項(xiàng)數(shù)系數(shù)fi為整數(shù),并且對(duì)于2 < j < n,所述系數(shù)fi滿(mǎn)足LCD I 1 .)乃mod似=0,其中LCDi[Xi]表示所有數(shù)字Xi的最小公約數(shù)。
      /sy-i yj-ιJ J
      7. 一種用于對(duì)具有K個(gè)元素的數(shù)據(jù)塊進(jìn)行解碼的turbo解碼器,所述turbo解碼器包括turbo去交織器,其可操作以依據(jù)n階置換多項(xiàng)式 對(duì)數(shù)據(jù)塊進(jìn) 行去交織,其中自變量X和多項(xiàng)數(shù)系數(shù)fi為整數(shù),并且對(duì)于2 ≤ j ≤ n,所述系數(shù)fi滿(mǎn)足 ,其中LCDJ^]表示所有數(shù)字Xi的最小公約數(shù)。
      8.一種數(shù)據(jù)交織電路,其可操作以在包括M個(gè)并行處理器的信號(hào)處理系統(tǒng)中根據(jù)索引 x的n次置換多項(xiàng)式Pn(x)對(duì)包括W個(gè)數(shù)值的M個(gè)窗口的數(shù)據(jù)塊進(jìn)行交織,所述電路包括存儲(chǔ)器,其可操作以在存儲(chǔ)器中的WXM陣列中存儲(chǔ)所述數(shù)據(jù)塊; 第一電路,其可操作以為第一窗口的索引x生成窗口內(nèi)索引w(x)和第一窗口間索引 m(x),其中 Pn(x) = m(x)W+w(x);第二電路,其可操作以根據(jù)所述第一窗口間數(shù)值m(x)生成長(zhǎng)度為M的窗口間置換矢量m ;存儲(chǔ)器訪(fǎng)問(wèn)控制器,其可操作以從所述存儲(chǔ)器接收所述窗口內(nèi)索引W(x)并且檢索對(duì) 應(yīng)的數(shù)據(jù)值;和置換電路,其可操作以從所述存儲(chǔ)器接收具有所述窗口內(nèi)索引w(x)的數(shù)據(jù)值,依據(jù)所 述窗口間置換矢量21對(duì)所述數(shù)據(jù)值進(jìn)行重新排序,并且向所述M個(gè)并行處理器輸出經(jīng)重新 排序的數(shù)據(jù)值。
      9.如權(quán)利要求8所述的數(shù)據(jù)交織電路,其中所述第二電路包括M-1個(gè)并行電路,其可操作以根據(jù)M-1個(gè)n-1次的多項(xiàng)式隊(duì)(x),R2(x),. . .,l (x)生 成M-1個(gè)并行數(shù)值;以及M-1個(gè)并行的可重規(guī)范化加法器,其可操作以計(jì)算窗口間置換矢量ni= [m(x), m (x) (x),m (x) +R2 (x), ,m (x) (x)]以 M 取模。
      10.如權(quán)利要求8所述的數(shù)據(jù)交織電路,其中所述第二電路包括M個(gè)電路,其可操作以生成M對(duì)窗口內(nèi)和窗口間索引(W(1(x),n^x)),(Wl(x), mi (x)),…,(wM_! (x),hih (x)),其中 Pn(x+iff) = nii (x)ff+Wi (x),0 ≤ i < M_1,w0 (x) = (x) =...=%_々),并且x是范圍0≤x<W中的索引,并且其中m= [m0(x), mi(x),, m^j (x)]。
      11.如權(quán)利要求8所述的數(shù)據(jù)交織電路,其中對(duì)范圍0≤ x < W中的每個(gè)索引x所執(zhí)行 的運(yùn)算在以下一個(gè)或多個(gè)上執(zhí)行對(duì)應(yīng)于自0開(kāi)始以1遞增x并且遞增至W-1的W個(gè)連續(xù)時(shí)鐘周期; 對(duì)應(yīng)于自W-1開(kāi)始以1遞減x并且遞減至0的W個(gè)連續(xù)時(shí)鐘周期; W/2個(gè)連續(xù)時(shí)鐘周期,其中在第i個(gè)時(shí)鐘周期上對(duì)索引2i和2i+l執(zhí)行運(yùn)算,并且i自 0開(kāi)始以1遞增且遞增至W/2-1,并且其中W為偶數(shù);和W/2個(gè)連續(xù)時(shí)鐘周期,其中在第i個(gè)時(shí)鐘周期上對(duì)索引2i和2i+l執(zhí)行運(yùn)算,并且i自 W/2-1開(kāi)始以1遞減且遞減至0,并且其中W為偶數(shù)。
      12.如權(quán)利要求8所述的數(shù)據(jù)交織電路,其中所述電路可操作以為第一窗口的索引x生 成窗口內(nèi)數(shù)值w(x)和窗口間數(shù)值m(x),其中Pn(x) =m(X)W+w(X),所述電路包括多個(gè)寄存器和基于數(shù)對(duì)的加法器,每個(gè)基于數(shù)對(duì)的加法器進(jìn)一步包括第一可重規(guī)范化加法器,其被配置為計(jì)算兩個(gè)數(shù)字wx和wy的相加以W取模; 至少一個(gè)邏輯電路,用以計(jì)算進(jìn)位信號(hào),所述進(jìn)位信號(hào)在^+ ^ W時(shí)等于1否則等于 ;禾口第二可重規(guī)范化加法器,其被配置為計(jì)算三個(gè)數(shù)字mx、my和進(jìn)位信號(hào)的相加以W取模。
      13.如權(quán)利要求8所述的數(shù)據(jù)交織電路,其中所述信號(hào)處理系統(tǒng)包括turbo解碼器并且 其中所述turbo解碼器進(jìn)一步包括第一存儲(chǔ)器,其可操作以交織次序存儲(chǔ)所述數(shù)據(jù)塊; 第二存儲(chǔ)器,其可操作以自然次序存儲(chǔ)所述數(shù)據(jù)塊;耦合在所述第一和第二存儲(chǔ)器以及所述置換電路之間的存儲(chǔ)器選擇器,并且其可操作 以在所述第一和第二存儲(chǔ)器之間進(jìn)行選擇。
      14.如權(quán)利要求8所述的數(shù)據(jù)交織電路,可操作以當(dāng)處于第一操作模式中時(shí)根據(jù)n次 置換多項(xiàng)式Pn(x)對(duì)數(shù)據(jù)塊進(jìn)行交織,并且當(dāng)處于第二操作模式中時(shí)根據(jù)置換多項(xiàng)式Pn(x) 的倒數(shù)對(duì)數(shù)據(jù)塊進(jìn)行交織。
      15.如權(quán)利要求8所述的數(shù)據(jù)交織電路,其中所述信號(hào)處理系統(tǒng)包括turbo解碼器并且 其中所述turbo解碼器進(jìn)一步包括兩個(gè)存儲(chǔ)器,各自均可操作以自然次序存儲(chǔ)數(shù)據(jù);耦合在所述兩個(gè)存儲(chǔ)器和置換電路之間的存儲(chǔ)器選擇器,并且其可操作以在所述兩個(gè) 存儲(chǔ)器之間進(jìn)行選擇;反向器電路,其可操作以計(jì)算窗口間置換1的倒數(shù)置換;和第二置換電路,其可操作以依據(jù)所述窗口間置換的倒數(shù)對(duì)經(jīng)處理的數(shù)據(jù)重新排序。
      全文摘要
      一種數(shù)據(jù)交織電路(306)和用于對(duì)包括W個(gè)數(shù)值的M個(gè)窗口的數(shù)據(jù)塊進(jìn)行交織的方法,包括索引生成器(500)和窗口間置換電路(504),索引生成器(500)用于生成窗口內(nèi)索引w以及具有M個(gè)元素的窗口間置換矢量m,窗口間置換電路(504)可操作以從存儲(chǔ)器接收具有窗口內(nèi)索引w的M個(gè)數(shù)據(jù)值,并且進(jìn)一步可操作以依據(jù)窗口間置換矢量m對(duì)所述M個(gè)數(shù)據(jù)值重新排序并且輸出經(jīng)重新排序的數(shù)據(jù)值。索引生成器包括遞歸電路,其依據(jù)置換多項(xiàng)式生成窗口內(nèi)索引w和窗口間置換矢量m。在一種應(yīng)用中,經(jīng)重新排序的數(shù)據(jù)值被傳送到turbo解碼器的M個(gè)并行處理器。
      文檔編號(hào)H03M13/37GK101874354SQ200880117581
      公開(kāi)日2010年10月27日 申請(qǐng)日期2008年11月11日 優(yōu)先權(quán)日2007年11月26日
      發(fā)明者T·基思·布蘭肯希普 申請(qǐng)人:摩托羅拉公司
      網(wǎng)友詢(xún)問(wèn)留言 已有0條留言
      • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1