欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

具有兩個(gè)路徑的同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器卷積交織器的制作方法

文檔序號(hào):6457191閱讀:341來(lái)源:國(guó)知局
專利名稱:具有兩個(gè)路徑的同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器卷積交織器的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及數(shù)據(jù)通信,更特定來(lái)說(shuō)涉及錯(cuò)誤校正技術(shù),且更特定來(lái)說(shuō)涉及巻積交背景技木世界正趨向于數(shù)字化。手機(jī)通信即是數(shù)字信號(hào)通信的實(shí)例,且衛(wèi)星廣播通常是數(shù) 字的。許多有線電話連接仍是模擬的,就像大多數(shù)電視廣播,然而這些媒體也將走向 數(shù)字化,且模擬信號(hào)用于通信將在很大程度上成為歷史,這并不是不可想象的。與"數(shù)字革命"同時(shí)發(fā)生的是,世界正趨向于無(wú)線化。手機(jī)即是無(wú)線通信的實(shí)例。 整個(gè)數(shù)字通信領(lǐng)域已形成數(shù)個(gè)專門(mén)知識(shí)及技術(shù)方面,其中包含錯(cuò)誤檢測(cè)及校正技 術(shù),僅舉少量實(shí)例。"譯碼"是通常在對(duì)數(shù)字信號(hào)處理的任何討論中都會(huì)出現(xiàn)的術(shù)語(yǔ)。 一般來(lái)說(shuō),譯碼可指將模擬信號(hào)(例如電影圖像)轉(zhuǎn)換為數(shù)字格式(i和o)。因此,舉例來(lái)說(shuō),可通過(guò)(例如)"MPEG"編碼將原來(lái)在電影上的移動(dòng)圖片(模擬格式)轉(zhuǎn)換為數(shù)據(jù)文 件(數(shù)字格式)。當(dāng)需要觀看經(jīng)MPEG編碼的電影(且應(yīng)了解,我們的眼睛對(duì)數(shù)字圖 像做出響應(yīng))時(shí),必須對(duì)數(shù)字文件進(jìn)行"解碼",返回到其原始的模擬格式。"譯碼"還可指取已經(jīng)在一個(gè)數(shù)字格式中的數(shù)字信號(hào),并將其改變?yōu)榱硪粩?shù)字格 式以便適用于特定目的,例如經(jīng)由即定媒體進(jìn)行存儲(chǔ)或發(fā)射。舉例來(lái)說(shuō),可將原始CD 波文件轉(zhuǎn)碼(或壓縮)為另一格式,例如MP3格式,從而形成較小的數(shù)據(jù)文件(例如 3兆字節(jié)而不是30兆字節(jié))。 錯(cuò)誤檢測(cè)及校TH一般來(lái)說(shuō),"錯(cuò)誤檢測(cè)"是檢測(cè)在從發(fā)射器到接收器的發(fā)射過(guò)程中因噪聲或其它 減損而產(chǎn)生的錯(cuò)誤的能力,且"錯(cuò)誤校正"是在接收器處校正錯(cuò)誤的能力。通常將被發(fā)送(發(fā)射)的數(shù)據(jù)(不論是經(jīng)由有線連接還是無(wú)線連接)布置成具有 規(guī)定大小的若干包或塊,且通常與所述包或塊一起產(chǎn)生并發(fā)送錯(cuò)誤校正碼。在接收端 處,可將所接收數(shù)據(jù)與錯(cuò)誤校正碼進(jìn)行比較以確定包內(nèi)所含有的數(shù)據(jù)是否發(fā)生訛誤。 在許多情況下,可使用正向錯(cuò)誤校正(FEC)來(lái)校正發(fā)生訛誤的數(shù)據(jù)。在其它情況下, 接收站可以重新發(fā)射數(shù)據(jù)的請(qǐng)求向接收所述訛誤數(shù)據(jù)的發(fā)射站發(fā)信號(hào)。(在另外一些 情況下,可干脆忽略發(fā)生訛誤的數(shù)據(jù)。)可將錯(cuò)誤校正碼劃分為若干塊碼及巻積碼。其它塊錯(cuò)誤校正碼(例如里德-所羅門(mén)5(Reed-Solomon)碼)以可檢測(cè)及校正每一塊中高達(dá)某一閾值的錯(cuò)誤的方式將一大塊 位轉(zhuǎn)變?yōu)?更長(zhǎng)的) 一大塊位。然而,在實(shí)踐中,錯(cuò)誤通常以突發(fā)形式而非隨機(jī)地發(fā) 生。此通常通過(guò)在譯碼之后攪亂(交織)消息中的位來(lái)補(bǔ)償。因此,當(dāng)反移消息的位 (去交織)然后進(jìn)行解碼時(shí),位錯(cuò)誤中的任何突發(fā)均分解為一組分散的單位錯(cuò)誤。 錯(cuò)誤校正方案的一個(gè)特征可以是以可成功地處理將預(yù)料到的錯(cuò)誤的方式來(lái)組織 數(shù)據(jù)。交織是以可將錯(cuò)誤校正方案成功地應(yīng)用于訛誤數(shù)據(jù)以從發(fā)生訛誤的數(shù)據(jù)恢復(fù)原 始數(shù)據(jù)的方式來(lái)布置數(shù)據(jù)的方式。 交織交織包括以非相連方式重新布置數(shù)據(jù)以增加性能。交織主要用于數(shù)據(jù)通信、多媒 體文件格式、無(wú)線電發(fā)射(例如以衛(wèi)星)或通過(guò)ADSL (非對(duì)稱數(shù)字訂戶鏈路)。過(guò) 去,交織已同樣用于對(duì)硬盤(pán)上的塊存儲(chǔ)進(jìn)行排序。術(shù)語(yǔ)"多路復(fù)用"有時(shí)用以指代數(shù) 字信號(hào)數(shù)據(jù)的交織。如今,交織主要用于數(shù)字?jǐn)?shù)據(jù)發(fā)射技術(shù)中以保護(hù)發(fā)射不發(fā)生"突發(fā)錯(cuò)誤"。突發(fā) 錯(cuò)誤重寫(xiě)(訛誤、更改)行中的數(shù)個(gè)位,但很少發(fā)生。使用交織來(lái)應(yīng)對(duì)/解決此問(wèn)題。所有數(shù)據(jù)均與某些控制位(例如使得信道解碼器能夠校正特定數(shù)目的已更改位的 錯(cuò)誤校正位) 一起被發(fā)射(獨(dú)立于交織)。如果突發(fā)錯(cuò)誤發(fā)生,且多于此數(shù)目的位被 更改,則碼字不能被正確地解碼。因此,"交織"若干碼字的位且接著將其發(fā)射。這 樣一來(lái),突發(fā)錯(cuò)誤在每一碼字中僅影響可校正數(shù)目的位,因此解碼器可正確地對(duì)所述 碼字進(jìn)行解碼。舉例來(lái)說(shuō),應(yīng)用錯(cuò)誤校正碼以使得信道碼字具有四個(gè)位且可校正一位錯(cuò)誤。將信 道碼字表達(dá)成這樣的塊aaaabbbbccccddddeeeeffffgggg (所述塊包括七個(gè)4位碼字a、 b、 c、 d、 e及f)。在沒(méi)有交織而發(fā)射的情況下,所接收信號(hào)應(yīng)為(無(wú)錯(cuò)誤發(fā)射)aaaabbbbccccddddeeeeffffgggg然而,突發(fā)錯(cuò)誤可使所發(fā)射數(shù)據(jù)的若干相連位發(fā)生訛誤以使得所接收信號(hào)看起來(lái)是這樣aaaabbbbccc_deeeeffffgggg在此實(shí)例中,碼字"cccc"的一個(gè)位被更改(缺少第四個(gè)c),且可被校正。然而,碼字"dddd"的三個(gè)位被更改(缺少前三個(gè)d)。其有可能不能被解碼(解碼失 敗)或可能被解碼為不正確的碼字(錯(cuò)誤的解碼)。這兩種情況發(fā)生哪一種取決于所 應(yīng)用的錯(cuò)誤校正碼。根據(jù)定義,突發(fā)錯(cuò)誤通常使一序列位發(fā)生訛誤(如在先前實(shí)例中),此可完全地 擦除特定的碼字,或至少使碼字中其不能被校正的足夠的位發(fā)生訛誤。交織一般需要重新布置碼字的位一也就是說(shuō)將其分散一從而可校正所預(yù)期的突 發(fā)錯(cuò)誤??紤]以下實(shí)例,其中發(fā)射七個(gè)碼字中的每一者的四個(gè)位中的第一位(al、 bl、 cl、dl、 el、 fl、 gl),接著發(fā)射七個(gè)碼字中的每一者的第二位(a2、 b2、 c2、 d2、 e2、 f2、 g2),接著是七個(gè)第三位(a3、 b3、 c3、 d3、 e3、 f3、 g3),接著是七個(gè)第四位(a4、 b4、 c4、 d4、 e4、 f4、 g4)。這叫做"交織"。(在接收端處,必須將經(jīng)交織/重新布 置的位放回到其原始次序中一這叫做"去交織")。
所發(fā)射信號(hào)(具有交織)看起來(lái)應(yīng)該是這樣(無(wú)錯(cuò)誤發(fā)射)
abcdefgabcdefgabcdefgabcdefg (更詳細(xì)地說(shuō),發(fā)射看起來(lái)是這樣al、 bl、 cl、 dl、 el、 fl、 gl、 a2、 b2、 c2、 d2、 e2、 f2、 g2、 a3、 b3、 c3、 d3、 e3、 f3、 g3、 a4、 b4、 c4、 d4、 e4、抖、g4)
然而,突發(fā)錯(cuò)誤可使數(shù)據(jù)發(fā)生訛誤以使得信號(hào)看起來(lái)是這樣
abcdefgabcd_bcdefgabcdefg
此時(shí),如先前實(shí)例中所述,缺少四個(gè)相連的位,在此實(shí)例中為第二 e、f及g位(e2、 f2、 g2)及第三位(a3)。
且具有以上突發(fā)錯(cuò)誤的經(jīng)去交織發(fā)射看起來(lái)應(yīng)是這樣
aa_abbbbccccdddde_eef—ffg_gg
在碼字aaaa、 eeee、 ffff、 gggg中的每一者中,僅更改一個(gè)位,因此一位錯(cuò)誤校正 碼可正確地解碼每一位。
當(dāng)然,此交織全部需要計(jì)算標(biāo)頭,且這是本發(fā)明總的主題一也就是與交織和去交 織相關(guān)的技術(shù)。
巻積交織
巻積交織器通常由一組移位寄存器組成,每一移位寄存器具有固定的延遲。在典 型的巻積交織器中,所述延遲是固定整數(shù)的非負(fù)整數(shù)倍(盡管一般的經(jīng)多路復(fù)用交織 器允許任意的延遲值)。來(lái)自輸入信號(hào)的每一新符號(hào)均饋送到下一移位寄存器中且所 述寄存器中的最老符號(hào)變?yōu)檩敵鲂盘?hào)的一部分。
通常在FEC方案中采用巻積交織器及去交織器以保護(hù)錯(cuò)誤突發(fā)不會(huì)被發(fā)送到塊 解碼器,例如里德-所羅門(mén)(Reed-Solomon)解碼器。眾所周知,交織技術(shù)改善了錯(cuò)誤 校正能力。
圖1是圖解說(shuō)明根據(jù)現(xiàn)有技術(shù)的典型巻積交織器及去交織器的簡(jiǎn)化示意性方塊 圖。在許多應(yīng)用中,使用靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)來(lái)緩沖經(jīng)交織數(shù)據(jù)。待存儲(chǔ) 到存儲(chǔ)器中的數(shù)據(jù)的寬度與交織器/去交織器符號(hào)大小匹配。對(duì)于交織器100,每一連 續(xù)分支(102、 103、…109)比緊接在前面的分支多具有J個(gè)符號(hào)。舉例來(lái)說(shuō),分支 103比分支102多具有J個(gè)符號(hào)。
相反,對(duì)于去交織器120,每一連續(xù)分支(102'、 103'、 104'、 ...、 109')比緊接在 前面的分支少具有J個(gè)符號(hào)。舉例來(lái)說(shuō),分支103'比分支102'少具有J個(gè)符號(hào)。除非 另有指示,否則"I"表示交織深度且"J"表示交織增量。因此, 一個(gè)分支具有與另 一分支不同的延遲。因此,當(dāng)使用常規(guī)存儲(chǔ)器存取時(shí),前述特性(即延遲差異)形成依序?qū)懭氲刂芳胺且佬蜃x取地址,或反之亦然。寫(xiě)入與讀取地址之間的此不對(duì)稱性影 響數(shù)據(jù)吞吐量。此外,與SRAM相關(guān)聯(lián)的另一問(wèn)題是,SRAM比其它類型的存儲(chǔ)器(例 如同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(SDRAM))相對(duì)來(lái)說(shuō)更昂貴。
在某些實(shí)施方案中,使用SDRAM來(lái)存儲(chǔ)經(jīng)交織數(shù)據(jù)。然而,上文所述基于交織 /去交織方法使用SDRAM也具有其缺點(diǎn)。舉例來(lái)說(shuō), 一個(gè)缺點(diǎn)是,通過(guò)使用常規(guī) SDRAM存取,非依序讀取或?qū)懭氲刂返拈_(kāi)銷"有效"(ACTIVE)及"預(yù)充電" (PRECHARGE)命令循環(huán)顯著地減小數(shù)據(jù)吞吐量。另一缺點(diǎn)是,當(dāng)使用常規(guī)SDRAM 時(shí),某些應(yīng)用可不具有足夠的帶寬來(lái)滿足與存儲(chǔ)器相關(guān)聯(lián)的數(shù)據(jù)寬度需要等于符號(hào)大 小的要求。
數(shù)據(jù)通信系統(tǒng)
圖2描繪典型的現(xiàn)有技術(shù)通信系統(tǒng),其包含用于將輸入數(shù)據(jù)序列TX轉(zhuǎn)換為通過(guò) 通信信道214發(fā)射到接收器212的傳出模擬信號(hào)VI的發(fā)射器210。接收器212將信號(hào) V2轉(zhuǎn)換回為匹配發(fā)射器的傳入數(shù)據(jù)序列TX的輸出數(shù)據(jù)序列RX。由于信道214可向 信號(hào)V2中引入隨機(jī)噪聲,因此RX序列的位中的某些位有可能將不匹配TX序列的對(duì) 應(yīng)位。為減少信道214中的噪聲將在RX序列中產(chǎn)生錯(cuò)誤的可能性,發(fā)射器210包含 正向錯(cuò)誤校正(FEC)編碼器216,例如里德-所羅門(mén)(Reed-Solomon)編碼器,以用 于將傳入數(shù)據(jù)序列TX編碼為N字節(jié)字的序列A。序列A的每一字均"過(guò)度表示"TX 序列的對(duì)應(yīng)部分,因?yàn)槠浜腥哂鄶?shù)據(jù)。巻積交織器218交織字序列A的連續(xù)字的字 節(jié)以產(chǎn)生供應(yīng)給調(diào)制器220的輸出字序列B。調(diào)制器220產(chǎn)生用以表示字序列B的連 續(xù)字節(jié)的信號(hào)V1。
接收器212內(nèi)的解調(diào)器222解調(diào)信號(hào)V2以產(chǎn)生字序列B'。字序列B'將標(biāo)稱地將 字序列B輸入匹配到發(fā)射器的調(diào)制器220,盡管形成字序列B'的字節(jié)中的某些字節(jié)可 包含由信道214中的噪聲所導(dǎo)致的位錯(cuò)誤。去交織器電路224去交織字序列B'以產(chǎn)生 標(biāo)稱地匹配字序列A的字序列A',盡管其也可包含由字序列B'中的錯(cuò)誤所引起的錯(cuò)誤。 接著,F(xiàn)EC解碼器226對(duì)字序列A'進(jìn)行解碼以產(chǎn)生輸出數(shù)據(jù)序列RX。
盡管A'序列可含有一些錯(cuò)誤,但FEC解碼器226有可能產(chǎn)生匹配TX序列的傳出 序列RX,因?yàn)锳'序列的字含有冗余數(shù)據(jù)。當(dāng)A'序列字中表示RX數(shù)據(jù)的任何特定部 分的部分因B'序列中的錯(cuò)誤而發(fā)生訛誤時(shí),A'序列字中同樣表示RX序列的所述特定 部分的另一冗余部分可能不發(fā)生訛誤。FEC解碼器226能夠確定每一 A'序列字的哪些 部分不發(fā)生訛誤并使用所述字的未發(fā)生訛誤部分作為確定RX序列的其對(duì)應(yīng)部分的位 值的基礎(chǔ)。每一可能的FEC方案均將具有校正字節(jié)錯(cuò)誤的有限能力。舉例來(lái)說(shuō),包含 16個(gè)冗余數(shù)據(jù)字節(jié)以形成255字節(jié)碼字的(255, 16)里德-所羅門(mén)(Reed-Solomon) 碼可校正多達(dá)8字節(jié)錯(cuò)誤,但不會(huì)校正更多。
當(dāng)表示RX序列的某一部分的A'序列字內(nèi)存在連續(xù)錯(cuò)誤時(shí),RX序列的所述特定 部分有可能含有錯(cuò)誤,但交織器218及去交織器224幫助減少這種情況發(fā)生的機(jī)會(huì)。 由于信道14中的噪聲可以突發(fā)形式發(fā)生而所述突發(fā)形式可持續(xù)足夠長(zhǎng)以使傳達(dá)B'序列字的每一字節(jié)的信號(hào)VI的若干部分發(fā)生訛誤,因此交織器218通過(guò)交織序列A的連續(xù)字的字節(jié)以產(chǎn)生字序列B來(lái)改善系統(tǒng)的抗噪聲能力。由于FEC編碼器216所產(chǎn)生的序列A的每一字均含有描述TX序列的特定區(qū)段的冗余數(shù)據(jù),因此交織序列A的字以產(chǎn)生序列B的字具有以下效果分散信號(hào)Vl所傳達(dá)的信息以使得信道214中的單個(gè)噪聲突發(fā)較不可能使表示TX序列的相同部分的連續(xù)數(shù)目的信息字節(jié)發(fā)生訛誤。
圖3是包括巻積交織器的通信系統(tǒng)的另一圖表。ITU正向錯(cuò)誤校正(FEC)定義由四個(gè)處理層組成,如圖3中所圖解說(shuō)明。在所述FEC層中的任一層中均不存在對(duì)輸入數(shù)據(jù)協(xié)議的依賴性。FEC同步化是完全內(nèi)部及透明的。任何數(shù)據(jù)序列均將從編碼器輸入被遞送到解碼器輸出。
FEC區(qū)段使用各種類型的錯(cuò)誤校正算法及交織技術(shù)來(lái)經(jīng)由有線電視信道可靠地輸送數(shù)據(jù)。
里德-所羅門(mén)(RS)譯碼一提供塊編碼及解碼以校正RS塊內(nèi)多達(dá)三個(gè)符號(hào)。 交織一均勻地分散符號(hào),從而保護(hù)符號(hào)錯(cuò)誤突發(fā)不被發(fā)送到RS解碼器。 隨機(jī)化一將信道上的數(shù)據(jù)隨機(jī)化以允許有效的QAM解調(diào)器同步。 格柵譯碼一提供巻積編碼且具有使用隨機(jī)信道錯(cuò)誤的軟決策格柵解碼的可能性。
對(duì)于交織,在RS塊譯碼與隨機(jī)化器之間的調(diào)制解調(diào)器中包含交織以實(shí)現(xiàn)突發(fā)噪聲引入的錯(cuò)誤的校正。在64-QAM及256-QAM兩者中均采用巻積交織器。
巻積交織圖解說(shuō)明于ITU文檔的圖B.8中。在隨后的子條款中定義的FEC幀的開(kāi)始處,將交織換向器位置初始化到最頂端分支并以RS符號(hào)頻率遞增,其中從每一位置輸出單個(gè)符號(hào)。借助于巻積交織器,RS碼符號(hào)被依序地移位到I個(gè)寄存器的組(每一寄存器的寬度均為7位,這與RS符號(hào)大小匹配)中。每一連續(xù)寄存器均比前面的寄存器多具有j個(gè)符號(hào)的存儲(chǔ)。第一交織器路徑具有零延遲,第二個(gè)具有J符號(hào)周期的延遲,第三個(gè)具有2W符號(hào)周期的延遲,依此類推,直到具有(I-1"J符號(hào)周期的延遲的第I個(gè)路徑。對(duì)于有線電視解碼器中的去交織器,情況是相反的,以使得每一RS符號(hào)的凈延遲在交織器與去交織器中是相同的。信道中的突發(fā)噪聲導(dǎo)致一系列不良符號(hào)。這些不良符號(hào)由去交織器分散于許多RS塊中以使得每一塊的所得符號(hào)錯(cuò)誤均處于RS解碼器校正能力范圍內(nèi)。
相關(guān)專利及公開(kāi)案
參照第21頁(yè)第B.5.2部分(4/97)的ITU-T介紹J.83 (用于有線電視分配的電視、
聲音及數(shù)據(jù)服務(wù)的數(shù)字多程序系統(tǒng)),下文中稱為"ITU說(shuō)明",其以全文引用方式并入本文中。
以全文引用方式并入本文中的美國(guó)專利公開(kāi)案第2005/0063421號(hào)("萬(wàn)(Wan)")揭示了巻積交織器及去交織器。如其中所揭示,交織器或去交織器以巻積方式交織或去交織傳入字序列以形成傳出字序列。所述交織器或去交織器包含由直接存儲(chǔ)器存取(DMA)控制器存取的外部存儲(chǔ)器讀取及寫(xiě)入,所述直接存儲(chǔ)器存取控制器用于存儲(chǔ)
9形成傳入字序列的字的字節(jié)直到需要所述字節(jié)來(lái)形成傳出序列的字為止。交織器使用高速緩沖存儲(chǔ)器來(lái)存儲(chǔ)下一組傳出序列字的字節(jié)。交織器首先將每一傳入字的字節(jié)寫(xiě)入到外部存儲(chǔ)器且還在傳入字的某些字節(jié)將形成當(dāng)前存儲(chǔ)于所述高速緩沖存儲(chǔ)器中的傳出序列字的若干部分時(shí)將所述字節(jié)直接寫(xiě)入到所述高速緩沖存儲(chǔ)器。當(dāng)需要字節(jié)來(lái)形成下一組輸出序列字時(shí),交織器將所述字節(jié)從主存儲(chǔ)器傳送到高速緩沖存儲(chǔ)器。去交織器將傳入字的若干字節(jié)存儲(chǔ)于其高速緩沖存儲(chǔ)器中直到所述高速緩沖存儲(chǔ)器已充滿為止,且接著DMA將所述字節(jié)傳送到外部存儲(chǔ)器。去交織器由其從其高速緩沖存
儲(chǔ)器及其外部存儲(chǔ)器兩者獲得的字節(jié)形成輸出序列的字。
萬(wàn)(Wan)揭示了若干交織,更特定來(lái)說(shuō),萬(wàn)(Wan)的圖3圖解說(shuō)明現(xiàn)有技術(shù)交織器18,其包含控制器28、輸入緩沖器30、靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM) 32及輸出緩沖器34,其均可在相同集成電路(IC) 35上實(shí)施。FEC編碼器16 (萬(wàn)(Wan)圖1)將序列A的每一連續(xù)字的連續(xù)字節(jié)寫(xiě)入到輸入緩沖器30中,且只要其已將序列A的整個(gè)字寫(xiě)入到緩沖器30中,其即將"輸入一準(zhǔn)備"(INPUT—READY)輸入信號(hào)以脈沖輸送到控制器28??刂破?8通過(guò)將緩沖器30中的序列A字的每一字節(jié)寫(xiě)入到SRAM 32的單獨(dú)地址來(lái)響應(yīng)于"輸入_準(zhǔn)備"信號(hào)??刂破?8接著從SRAM 32中依序地讀出將形成序列B的下一字的每一字節(jié),將其存儲(chǔ)于輸出緩沖器34中且接著將"輸出_準(zhǔn)備"信號(hào)發(fā)送到調(diào)制器20 (萬(wàn)(Wan)圖1),從而告知調(diào)制器20其可從輸出緩沖器34中讀出序列B的下一字。
用于產(chǎn)生SDRAM 32的讀取及寫(xiě)入地址的算法控制器28確保進(jìn)入SRAM 32中的序列A的每一傳入字均重寫(xiě)序列A中不再需要的先前字且確保以適當(dāng)?shù)拇涡蜃x取形成序列B的字的字節(jié)。為以交織深度D來(lái)交織傳入序列A的N字節(jié)字,SRAM 32必須具有DXN個(gè)可尋址字節(jié)存儲(chǔ)位置。萬(wàn)(Wan)圖3中所圖解說(shuō)明的交織器架構(gòu)通常在交織器18可實(shí)施于單個(gè)IC 35上時(shí)被采用,但當(dāng)NXD較大時(shí),將足夠大的SDRAM 32嵌入在單個(gè)IC中則變得不切實(shí)際。
萬(wàn)(Wan)圖4圖解說(shuō)明交織器18'的另一現(xiàn)有技術(shù)架構(gòu),其包含包含在單個(gè)IC 35'內(nèi)的控制器28'、輸入緩沖器30'及輸出緩沖器34'。交織器18'采用外部同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(SDRAM) 36來(lái)存儲(chǔ)字節(jié),而不是采用內(nèi)部SRAM。盡管萬(wàn)(Wan)圖3的控制器28可直接讀取及寫(xiě)入存取SRAM 32的每一字節(jié),但萬(wàn)(Wan)圖4的控制器28'可僅經(jīng)由直接存儲(chǔ)器存取(DMA)控制器38來(lái)存取SDRAM 36中的數(shù)據(jù)。DMA控制器38以"突發(fā)"模式(其中其讀取或?qū)懭氪嫒〈鎯?chǔ)于數(shù)個(gè)(通常為16個(gè))連續(xù)地址處的字節(jié))操作而不是個(gè)別地讀取及寫(xiě)入存取SDRAM 36中所存儲(chǔ)的每一字節(jié)。因此,當(dāng)控制器28'想要獲得SDRAM 36中所存儲(chǔ)的特定字節(jié)以寫(xiě)入到輸出緩沖器34'中時(shí),其必須令DMA控制器38讀取包含需用以形成下一輸出序列字的特定字節(jié)的字節(jié)塊。控制器28'接著將所述特定字節(jié)傳送到輸出緩沖器34'。然而,由于字節(jié)沒(méi)有以其形成傳出字序列所需要的次序在SDRAM中被尋址,因此將丟棄每一 DMA讀取存取期間DMA控制器38從SDRAM 36讀取的字節(jié)中的許多字節(jié)。由于SDRAM相對(duì)不昂貴,因此交織器或去交織器采用萬(wàn)(Wan)圖4的架構(gòu)可比釆用萬(wàn)(Wan)圖3的架構(gòu)更具成本效益,尤其是在需要大存儲(chǔ)量時(shí)。然而,由于對(duì)內(nèi)部SRAM的讀取及寫(xiě)入存取通常比對(duì)外部SDRAM的讀取及寫(xiě)入存取要快,因此萬(wàn)(Wan)圖3的交織器18可比萬(wàn)(Wan)圖4的交織器18'具有更高的吞吐量(以每秒字節(jié)計(jì))。由于SDRAM 36的許多帶寬都浪費(fèi)在了讀取已丟棄的字節(jié)上,因此圖4的交織器的最大吞吐量可受到進(jìn)一步限制。
萬(wàn)(Wan)圖5描繪根據(jù)本發(fā)明的巻積交織器39的實(shí)例,其包含控制器40、輸入緩沖器42、直接存儲(chǔ)器存取(DMA)控制器44、多路復(fù)用器48、高速緩沖存儲(chǔ)器50及輸出緩沖器52,其均優(yōu)選地在單個(gè)集成電路(IC)芯片53上實(shí)施。DMA控制器44讀取及寫(xiě)入存取"主"存儲(chǔ)器46,合適地為IC芯片53外部的SDRAM。交織器39以最高可達(dá)Dmax的交織深度D以巻積方式交織N字節(jié)傳入字的序列A以形成N字節(jié)傳出字的序列B。每一傳入字中及每一傳出字中字節(jié)的數(shù)目N最高可達(dá)最大數(shù)目Nmax,例如255??刂破?0合適地實(shí)施為可編程狀態(tài)機(jī)以便可通過(guò)借以對(duì)控制器40進(jìn)行編程的方式來(lái)選擇N與D的值。
主存儲(chǔ)器46合適地具有至少NmaxXDmax個(gè)存儲(chǔ)位置,其中每一可尋址存儲(chǔ)位置經(jīng)大小設(shè)定以保存單個(gè)字節(jié)。DMA控制器44在突發(fā)讀取及寫(xiě)入模式中操作,其中只要所述控制器讀取或?qū)懭氪嫒≈鞔鎯?chǔ)器46其即讀取或?qū)懭氪嫒≈鞔鎯?chǔ)器46的許多連續(xù)地址。高速緩沖存儲(chǔ)器50優(yōu)選地包含至少BurstLen XDmax個(gè)存儲(chǔ)位置,其中BurstLen是DMA控制器在每一突發(fā)模式讀取或?qū)懭氪嫒∑陂g所存取的連續(xù)地址的數(shù)目(例如16)(其"突發(fā)長(zhǎng)度")。高速緩沖存儲(chǔ)器50還可在其可尋址存儲(chǔ)位置中的每一者處存儲(chǔ)一個(gè)字節(jié),而控制器40可單獨(dú)地且獨(dú)立地讀取及寫(xiě)入存取其可尋址存儲(chǔ)位置中的每一者。
因此,如上所述,交織器39使用主存儲(chǔ)器46來(lái)僅在NXD超過(guò)高速緩沖存儲(chǔ)器50中的可用存儲(chǔ)位置的數(shù)目時(shí)存儲(chǔ)字節(jié)并僅使用高速緩沖存儲(chǔ)器50來(lái)存儲(chǔ)傳入字的字節(jié)直到需要所述字節(jié)來(lái)形成傳出字為止。否則,交織器39使用主存儲(chǔ)器46來(lái)存儲(chǔ)所有輸入序列字并使用高速緩沖存儲(chǔ)器50來(lái)僅存儲(chǔ)與其最多能保存的輸出序列字一樣多的字節(jié)。
高速緩沖存儲(chǔ)器50與萬(wàn)(Wan)圖4的現(xiàn)有技術(shù)交織器相比改善了交織器39的DMA讀取存取的效率,因?yàn)槠錅p少了其DMA控制器讀取的必須丟棄的字節(jié)的數(shù)目。萬(wàn)(Wan)圖4的現(xiàn)有技術(shù)交織器的DMA控制器在每一 DMA讀取存取期間讀取數(shù)個(gè)傳出序列字中將包含的字節(jié),但實(shí)際上僅使用將并入到下一傳出序列字中的那些字節(jié);丟棄DMA控制器讀取的剩余字節(jié)且必須在其它時(shí)候再次讀取所述字節(jié),即當(dāng)實(shí)際上需要所述字節(jié)來(lái)形成下一輸出序列字時(shí)。由于萬(wàn)(Wan)圖5的交織器39的高速緩沖存儲(chǔ)器50可保存將形成許多傳出序列字的字節(jié),因此DMA控制器44需要丟棄的字節(jié)較少。因此,高速緩沖存儲(chǔ)器50減小了 DMA控制器44必須借以讀取存取主存儲(chǔ)器46的頻率,從而增大了交織器的可用吞吐量。以全文引用方式并入本文中的美國(guó)專利第7,051,171號(hào)("劉(Liu)")揭示了 用于使用SDRAM提供多信道交織器/去交織器的方法及系統(tǒng)。提供用于使用外部 SDRAM執(zhí)行高速多信道正向錯(cuò)誤校正的去交織器。根據(jù)一個(gè)例示性方面,所述去交 織器通過(guò)隱藏有效及預(yù)充電循環(huán)來(lái)對(duì)SDRAM執(zhí)行面向突發(fā)的讀取及寫(xiě)入存取兩者以 實(shí)現(xiàn)高數(shù)據(jù)速率操作。將SDRAM的數(shù)據(jù)總線長(zhǎng)度設(shè)計(jì)為去交織符號(hào)大小的兩倍,從 而允許帶寬增加。去交織器存取SDRAM中的數(shù)據(jù)來(lái)作為讀取塊及寫(xiě)入塊。每一塊包 含待交織/去交織的預(yù)定數(shù)目的數(shù)據(jù)字。當(dāng)處理一個(gè)塊的前一塊時(shí),發(fā)布所述一個(gè)塊的 "有效"命令。 一個(gè)讀取/寫(xiě)入塊中的數(shù)據(jù)在SDRAM的相同組內(nèi)具有相同行地址。更 特定來(lái)說(shuō),
劉(Liu)圖2圖解說(shuō)明根據(jù)本發(fā)明一個(gè)例示性實(shí)施例的巻積去交織器21的簡(jiǎn)化 方塊圖。巻積去交織器21使用SDRAM 22來(lái)實(shí)施。在此例示性實(shí)施例中,數(shù)據(jù)或符 號(hào)大小為八(8)位,且字大小為十六(16)位(第3巻,第16-21行)。
如劉圖2中所示,輸入緩沖器24將去交織器21的相同分支中的兩個(gè)符號(hào)組合到 一個(gè)字中。相同分支中的兩個(gè)符號(hào)之間的延遲是去交織深度I的整數(shù)倍。對(duì)于每一字, 輸入緩沖器24存儲(chǔ)第一符號(hào)直到己接收到所述字的第二符號(hào)為止。當(dāng)將用于一個(gè)信道 的預(yù)定數(shù)目的字存儲(chǔ)于輸入緩沖器24中時(shí),將總體作為寫(xiě)入塊(如下文進(jìn)一步描述) 的此類字轉(zhuǎn)發(fā)給SDRAM寫(xiě)入緩沖器30以進(jìn)行寫(xiě)入處理。根據(jù)優(yōu)選實(shí)施例,輸入緩沖 器24的大小不超過(guò)交織深度I的兩倍??刂破?8產(chǎn)生傳入數(shù)據(jù)34的周期性地址序列 以組合一個(gè)信道的符號(hào)s(t)與s(t+一I)來(lái)形成字,其中n是大于零(0)的整數(shù)。在例示 性實(shí)施例中,n等于一 (1)。基于本文中提供的揭示內(nèi)容及教示,所屬領(lǐng)域的技術(shù)人 員將知曉并了解如何選擇n的適當(dāng)值(第3巻,第22-40行)。
計(jì)算機(jī)存儲(chǔ)器, 一般來(lái)說(shuō)
本發(fā)明很大程度上涉及在對(duì)數(shù)據(jù)進(jìn)行交織時(shí)達(dá)到特定目標(biāo)的例示性背景下高效 且有效地利用計(jì)算機(jī)存儲(chǔ)器以(例如)適應(yīng)正向錯(cuò)誤校正(FEC)技術(shù)。
一般來(lái)說(shuō),存在兩種主要的計(jì)算機(jī)存儲(chǔ)器形式一易失性及非易失性。非易失性存 儲(chǔ)器(NVM)是即便在未通電時(shí)也可保持所存儲(chǔ)信息的計(jì)算機(jī)存儲(chǔ)器。非易失性存儲(chǔ) 器的實(shí)例包含只讀存儲(chǔ)器、快閃存儲(chǔ)器、多數(shù)類型的磁性計(jì)算機(jī)存儲(chǔ)裝置(例如硬盤(pán)、 軟盤(pán)驅(qū)動(dòng)器及磁帶)、光盤(pán)驅(qū)動(dòng)器及早先的計(jì)算機(jī)存儲(chǔ)方法,例如紙帶及穿孔卡片。 非易失性存儲(chǔ)器通常用于輔助存儲(chǔ)或長(zhǎng)期持續(xù)存儲(chǔ)的任務(wù)。如今最廣泛使用的形式的 主要存儲(chǔ)裝置是易失形式的隨機(jī)存取存儲(chǔ)器(RAM),這意味著當(dāng)計(jì)算機(jī)關(guān)斷時(shí),RAM
中所含有的任何東西都會(huì)丟失。遺憾的是,多數(shù)形式的非易失性存儲(chǔ)器具有若干限制, 這使得其不適合用作主要存儲(chǔ)裝置。通常非易失性存儲(chǔ)器不是比易失性隨機(jī)存取存儲(chǔ)
器花費(fèi)更多就是性能更差。(照此類推,NVM存儲(chǔ)器單元的最簡(jiǎn)單形式是簡(jiǎn)單的燈 開(kāi)關(guān)。實(shí)際上,可將此開(kāi)關(guān)設(shè)置到兩個(gè)(二進(jìn)制)位置中的一者,且"記憶"所述位 置。)
在內(nèi)部,計(jì)算機(jī)存儲(chǔ)器布置為呈若干行及若干列的"存儲(chǔ)器單元"矩陣,就像棋
12為"陣列"。使用每一存儲(chǔ)器單元來(lái)存儲(chǔ)一個(gè)(或 一個(gè)以上)數(shù)據(jù)位,所述數(shù)據(jù)位可通過(guò)指示數(shù)據(jù)的行及列位置來(lái)檢索。
如果不能以某一方式在其中及從中獲得信息,則單是存儲(chǔ)器單元將是沒(méi)有價(jià)值 的。因此,所述存儲(chǔ)器單元具有其它專門(mén)電路的完整支持架構(gòu)。這些電路執(zhí)行若干功 能,例如
一識(shí)別每一行及列(行地址選擇及列地址選擇) -記錄再新序列(計(jì)數(shù)器)
-讀取及再新來(lái)自從單元(感測(cè)放大器)的信號(hào) 一告知單元其是否應(yīng)采取充電(允許寫(xiě)入)
存儲(chǔ)器控制器的其它功能包含一系列任務(wù),其包含識(shí)別存儲(chǔ)類型、速度及量以及 對(duì)錯(cuò)誤的檢查。
現(xiàn)在簡(jiǎn)要論述幾種類型的隨機(jī)存取存儲(chǔ)器(RAM),其中包含SRAM、 DRAM、 SDRAM及DDR SDRAM,如下
-SRAM: SRAM代表靜態(tài)隨機(jī)存取存儲(chǔ)器?;旧?,SRAM是可尋址的觸發(fā)器 陣列??扇绱伺渲盟鲫嚵幸允沟脭?shù)據(jù)以單個(gè)位、4位、8位等格式出現(xiàn)。SRAM技 術(shù)是易失性的,正如其基本存儲(chǔ)器單元一觸發(fā)器。SRAM具有可非??焖偾液?jiǎn)便的優(yōu) 點(diǎn)。因此,在總存儲(chǔ)量可很小的情況下通常將其用作存儲(chǔ)器組件。SRAM常存在于微 控制器板上(在CPU芯片上或外),因?yàn)閷?duì)于此類應(yīng)用來(lái)說(shuō),所需的存儲(chǔ)量很小且為 DRAM構(gòu)建額外的接口電路將是不劃算的。歸因于SRAM高存儲(chǔ)速度,其中通常有 SRAM存儲(chǔ)器的另一應(yīng)用是用于高速緩存器應(yīng)用。
- DRAM: DRAM代表動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器。"動(dòng)態(tài)" 一詞指示數(shù)據(jù)并非保存在 觸發(fā)器中而是在存儲(chǔ)單元中。關(guān)于存儲(chǔ)單元的不好的一面是其發(fā)生泄露。因此,必須 每一次在數(shù)據(jù)丟失之前讀出并重寫(xiě)數(shù)據(jù)。此再新時(shí)間間隔通常為4ms到64ms。關(guān)于 存儲(chǔ)器單元的好的一面是其僅需要一個(gè)電容器及一個(gè)晶體管,而連接在陣列中的觸發(fā) 器則需要6個(gè)晶體管。在用于所有現(xiàn)代DRAM中的溝槽電容器存儲(chǔ)器技術(shù)中,將單元 存取晶體管構(gòu)造在電容器上方以使得芯片上的空間最終得以最小化。出于此原因, DRAM技術(shù)比SRAM技術(shù)每位具有較低成本。當(dāng)使用較大存儲(chǔ)器大小時(shí),進(jìn)行再新 所需要的額外電路的缺點(diǎn)由每位較低的價(jià)格容易地抵銷。因此,幾乎所有計(jì)算設(shè)備的 工作存儲(chǔ)器都包括DRAM存儲(chǔ)器。正如SRAM存儲(chǔ)器,DRAM存儲(chǔ)器構(gòu)造為存儲(chǔ)器 單元陣列。然而,SRAM與DRAM之間的一大差異在于尋址技術(shù)。需要借助SRAM 來(lái)提供地址且芯片將通過(guò)在輸出處提供存儲(chǔ)器單元的數(shù)據(jù)或在輸入處接受數(shù)據(jù)并將其 寫(xiě)入到所尋址單元中來(lái)做出響應(yīng)。借助DRAM技術(shù),此簡(jiǎn)單的方法是不可能的,因?yàn)?在不重寫(xiě)數(shù)據(jù)行的情況下尋址所述數(shù)據(jù)行將因動(dòng)態(tài)性質(zhì)而破壞所述行中的所有數(shù)據(jù)。
-SDRAM: SDRAM代表同步動(dòng)態(tài)RAM。在普通的異步DRAM中,由外部電路 (芯片組)來(lái)為尋址及數(shù)據(jù)讀取/寫(xiě)入定序,所述外部電路需要在每一序列之間等待以 允許DRAM對(duì)其信號(hào)及輸出做出響應(yīng)/接受所述數(shù)據(jù)。然而,借助普通的DRAM,保證可靠操作的唯一方式是遵守定時(shí)規(guī)范并允許足夠的定時(shí)容限。很明顯,這是一種簡(jiǎn) 單卻不是非常高效的方法。在SDRAM中,由控制電路(芯片組)將時(shí)鐘信號(hào)提供給 DRAM。此允許所述DRAM使其操作與控制電路的操作同步,從而其知曉正傳入什么 信號(hào)、確切的時(shí)間且還可以極精確的定時(shí)做出響應(yīng)。此方法允許更高速度下的操作。
-DDR SDRAM: DDR SDRAM代表雙倍數(shù)據(jù)速率同步動(dòng)態(tài)RAM。在上升及下 降時(shí)鐘邊緣兩者上對(duì)DDR芯片計(jì)時(shí),從而有效地加倍了傳送速率。
術(shù)語(yǔ)表
除非另有表示,或如根據(jù)其用途環(huán)境可顯而易見(jiàn),將給本文中使用的任何術(shù)語(yǔ)、 縮略語(yǔ)、首字母縮寫(xiě)或科學(xué)符號(hào)及記號(hào)賦予本發(fā)明最相近地歸屬的技術(shù)學(xué)科中的其普 通含義。可在本文中提供的說(shuō)明通篇中使用以下術(shù)語(yǔ)、縮略語(yǔ)及首字母縮寫(xiě)且應(yīng)在一 般意義上賦予其以下含義,除非本文中所述的其它說(shuō)明對(duì)其加以反駁或詳盡說(shuō)明。
位 位(二進(jìn)制數(shù)字)是指二進(jìn)制記數(shù)系統(tǒng)中由基本的2個(gè)數(shù)字(只有兩
個(gè)可能值0或1)組成的數(shù)字。舉例來(lái)說(shuō),數(shù)10010111為8位長(zhǎng)。 在數(shù)字計(jì)算及數(shù)字信息原理中,二進(jìn)制數(shù)字幾乎始終用作信息存儲(chǔ)及 通信的基本單位。"千位"(kb或kbit)為1000位。"兆位"(Mb 或Mbit)為1,000,000位。
突發(fā)錯(cuò)誤在電信中,錯(cuò)誤突發(fā)是經(jīng)由數(shù)據(jù)發(fā)射信道而接收的連續(xù)符號(hào)序列,使 得第一及最后的符號(hào)發(fā)生錯(cuò)誤,且錯(cuò)誤突發(fā)內(nèi)不存在m個(gè)經(jīng)正確接收 符號(hào)的連續(xù)序列。整數(shù)參數(shù)m稱為錯(cuò)誤突發(fā)的保護(hù)頻帶。突發(fā)中的最 后一個(gè)符號(hào)及后面的突發(fā)的第一個(gè)符號(hào)由m個(gè)或更多個(gè)正確位相應(yīng) 地分開(kāi)。當(dāng)描述錯(cuò)誤突發(fā)時(shí),應(yīng)規(guī)定參數(shù)m。
字節(jié) 字節(jié)是位的集合,最初是大小可變的,但現(xiàn)在幾乎始終是8位。(當(dāng)
需要較大確定性時(shí),術(shù)語(yǔ)八位字節(jié)被廣泛地用作同義詞。)用于字 節(jié)測(cè)量的前綴通常與用于其它測(cè)量的SI前綴相同,但具有略微不同的 值。前者是基于冪1,024 (210),這是合適的二進(jìn)制數(shù),而SI前綴則 是基于冪l,OOO (103),這是合適的十進(jìn)制數(shù)。舉例來(lái)說(shuō), 一千字節(jié) (kB)將具有IOOO字節(jié)的SI含義,但通常是指1024字節(jié)(1024是 2升到10次冪); 一兆字節(jié)(MB)將具有1,000,000字節(jié)的SI含義, 但通常是指1,048,576字節(jié)(1,048,576是2升到20次冪)。
信道 通信中的信道(有時(shí)稱為通信信道)是指用以將信息從發(fā)送者(或發(fā)
射器)傳達(dá)給接收者的媒體。所述信道可以是有線的、光學(xué)的或無(wú)線 的(其中包含衛(wèi)星發(fā)射)。
巻積譯碼
為使噪聲的負(fù)面影響最小化,在過(guò)去已研發(fā)并采用了各種正向錯(cuò)誤校正譯碼技術(shù) (也稱為巻積譯碼)。通常,在正向錯(cuò)誤校正譯碼中,在發(fā)射器處通過(guò)向數(shù)據(jù)位系統(tǒng) 地添加冗余位來(lái)對(duì)數(shù)據(jù)位進(jìn)行編碼,從而通常僅允許從一個(gè)依序位群組(對(duì)應(yīng)于符號(hào)或波特)到另一位群組的預(yù)定轉(zhuǎn)變。經(jīng)由連續(xù)波特的這些冗余位之間存在固有的關(guān)系。 在接收器處,嘗試性地對(duì)每一波特進(jìn)行解碼且接著基于過(guò)去的歷史記錄加以分析,并 在必要時(shí)校正已解碼位。
DDR 隨著SDRAM已發(fā)展,其已在逐漸增長(zhǎng)的時(shí)鐘速度下操作。曾將第二 代SDRAM稱為雙倍數(shù)據(jù)速率(DDR) SDRAM,且現(xiàn)在通常稱為 "DDR-I" SDRAM。在第二代同步SDRAM中,133 MHz的時(shí)鐘頻率 是常見(jiàn)的。最近,正定義新的第三代同步SDRAM以在兩倍于或大于 DDR-I SDRAM的速度下操作,且有時(shí)稱為"DDR-II" SDRAM。 DRAM 動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器的簡(jiǎn)稱。DRAM是將每一數(shù)據(jù)位存儲(chǔ)于單獨(dú)的電 容器中的一種類型的隨機(jī)存取存儲(chǔ)器。由于現(xiàn)實(shí)世界電容器并不理想 且因此泄露電子,因此信息最終會(huì)消失,除非周期性地再新電容器電 荷。歸因于此再新要求,其為動(dòng)態(tài)存儲(chǔ)器而不是SRAM及其它靜態(tài)存 儲(chǔ)器。其優(yōu)于SRAM的優(yōu)點(diǎn)是其結(jié)構(gòu)簡(jiǎn)單每位僅需要一個(gè)晶體管及 電容器,而SRAM中則需要六個(gè)晶體管。此允許DRAM達(dá)到極高密 度。由于在移走電源時(shí)DRAM丟失其數(shù)據(jù),因此其屬于易失性存儲(chǔ)器 裝置類別。
FIFO FIFO是先入先出的首字母縮寫(xiě)。此表達(dá)描述了隊(duì)列或先來(lái)先服務(wù) (FCFS)行為先來(lái)的先受到處置,接下來(lái)來(lái)的等到第一個(gè)完成,等 等。FIFO通常在用于緩沖及流控制的電子電路中使用。以硬件形式, FIFO主要由一組讀取及寫(xiě)入指針、存儲(chǔ)裝置及控制邏輯組成。存儲(chǔ)裝 置可以是SRAM、觸發(fā)器、鎖存器或任何其它合適形式的存儲(chǔ)裝置。 針對(duì)非平凡大小的FIFO,通常使用雙端口SRAM,其中一個(gè)端口用于 寫(xiě)入且另一端口用于讀取。
觸發(fā)器 在數(shù)字電路中,觸發(fā)器、鎖存器或雙穩(wěn)態(tài)多諧振蕩器是具有兩個(gè)穩(wěn)定 狀態(tài)且借此能夠用作一個(gè)存儲(chǔ)位的電子電路。觸發(fā)器由一個(gè)或兩個(gè)控 制信號(hào)及/或門(mén)或時(shí)鐘信號(hào)來(lái)控制。輸出通常包含補(bǔ)碼及普通輸出。
FPGA 現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)是一種含有可編程邏輯組件及可編程互連 件的半導(dǎo)體裝置。可編程邏輯組件可經(jīng)編程以復(fù)制基本邏輯門(mén)的功能, 例如"與"、"或"、"異或"、"非"或更多復(fù)雜的計(jì)算功能,例 如解碼器或簡(jiǎn)單的數(shù)學(xué)函數(shù)。在多數(shù)FPGA中,這些可編程邏輯組件 (或在FPGA用法中稱為邏輯塊)還包含存儲(chǔ)器元件,所述存儲(chǔ)器元 件可以是簡(jiǎn)單的觸發(fā)器或更完整的存儲(chǔ)器塊。
交織器 交織器是一種可(舉例來(lái)說(shuō))根據(jù)總體正向錯(cuò)誤校正(FEC)方案重 新布置數(shù)據(jù)(例如符號(hào))的次序的功能塊(模塊)。去交織器恢復(fù)數(shù) 據(jù)的原始次序。
ITU 國(guó)際電l言聯(lián)盟(ITU;法語(yǔ)Union internationale des t616communications;西班牙語(yǔ)Uni6n Internacional de Telecomunicaciones)是一禾中經(jīng)倉(cāng)ll建以 標(biāo)準(zhǔn)化并調(diào)節(jié)國(guó)際無(wú)線電及電信的國(guó)際組織。 M 兆的簡(jiǎn)稱,意為百萬(wàn)。實(shí)例 MSym代表百萬(wàn)符號(hào)。
MPEG 運(yùn)動(dòng)圖像專家組的簡(jiǎn)稱。MPEG是負(fù)有開(kāi)發(fā)視頻及音頻編碼標(biāo)準(zhǔn)的責(zé) 任的ISO/IEC工作組。MPEG的官方稱號(hào)為ISO/IEC JTC1/SC29 WG11 。 MPEG (讀做EM-peg)已標(biāo)準(zhǔn)化以下壓縮格式及附屬標(biāo)準(zhǔn) MPEG-1:初始視頻及音頻壓縮標(biāo)準(zhǔn)。隨后用作視頻CD的標(biāo)準(zhǔn),且包含流行的 層3 (MP3)音頻壓縮格式。
MPEG-2:廣播質(zhì)量電視的輸送、視頻及音頻標(biāo)準(zhǔn)。用于空中數(shù)字電視ATSC、 DVB及ISDB、數(shù)字衛(wèi)星TV服務(wù)(如碟形網(wǎng)絡(luò)、數(shù)字有線電視信號(hào))且(略作修改 地)用于DVD。
MPEG-3:最初為HDTV設(shè)計(jì),但當(dāng)發(fā)現(xiàn)MPEG-2 (具有擴(kuò)展)對(duì)HDTV足夠時(shí) 將其放棄。(不要與MP3混淆,MP3是MPEG-1層3。)
MPEG-4:擴(kuò)展MPEG-1以支持視頻/音頻"對(duì)象"、3D內(nèi)容、低位率編碼且支 持?jǐn)?shù)字產(chǎn)權(quán)管理。包含數(shù)種新的(比MPEG-2視頻新)較高效率視頻標(biāo)準(zhǔn)(MPEG-2 視頻的替代方案),特別是
MPEG-4部分2 (或高級(jí)簡(jiǎn)單簡(jiǎn)檔)及
MPEG-4部分10 (或高級(jí)視頻譯碼或H.264) 。 MPEG-4部分10可與VC-1及 MPEG- 2 —起用于HD-DVD及藍(lán)光光盤(pán)上。 MPEG標(biāo)準(zhǔn)以整體引用方式并入本文中。
NVM 非易失性存儲(chǔ)器的簡(jiǎn)稱。NVM是即使在沒(méi)有通電時(shí)也可保持所存
儲(chǔ)信息的計(jì)算機(jī)存儲(chǔ)器。非易失性存儲(chǔ)器的實(shí)例包含只讀存儲(chǔ)器、 快閃存儲(chǔ)器、多數(shù)類型的磁性計(jì)算機(jī)存儲(chǔ)裝置(例如硬盤(pán)、軟盤(pán) 驅(qū)動(dòng)器及磁帶)、光盤(pán)驅(qū)動(dòng)器及早先的計(jì)算機(jī)存儲(chǔ)方法,例如紙 帶及穿孔卡片。非易失性存儲(chǔ)器通常用于輔助存儲(chǔ)或長(zhǎng)期持續(xù)存 儲(chǔ)的任務(wù)。如今最廣泛使用的形式的主要存儲(chǔ)裝置是易失形式的 隨機(jī)存取存儲(chǔ)器(RAM),這意味著當(dāng)計(jì)算機(jī)關(guān)斷時(shí),RAM中所 含有的任何東西都會(huì)丟失。遺憾的是,多數(shù)形式的非易失性存儲(chǔ) 器具有若干限制,這使得其不適合用作主要存儲(chǔ)裝置。通常非易 失性存儲(chǔ)器不是比易失性隨機(jī)存取存儲(chǔ)器花費(fèi)更多就是性能更 差。(照此類推,NVM存儲(chǔ)器單元的最簡(jiǎn)單形式是簡(jiǎn)單的燈開(kāi)關(guān)。 實(shí)際上,可將此開(kāi)關(guān)設(shè)置到兩個(gè)(二進(jìn)制)位置中的一者,且"記 憶"所述位置。)
打包器 打包器是一種可積累(組合、結(jié)合)并重新布置數(shù)據(jù)以寫(xiě)入到存
儲(chǔ)器的功能塊(模塊)。舉例來(lái)說(shuō),打包器可將四個(gè)8位符號(hào)積 累為32位以突發(fā)寫(xiě)入到SDRAM。"拆包器"執(zhí)行相反的功能,例如從SDRAM進(jìn)行32位突發(fā)讀取,并將其去積累(去組合、分 害U)為四個(gè)8位符號(hào)一主要將數(shù)據(jù)恢復(fù)到其原始的預(yù)打包形式。
RAM 隨機(jī)存取存儲(chǔ)器的簡(jiǎn)稱。RAM是指允許以任何次序(也就是隨機(jī)
地,不只是依序地)存取所存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)存儲(chǔ)格式及設(shè)備。相 反,由于其機(jī)械設(shè)計(jì)上的限制,其它類型的存儲(chǔ)器裝置(例如磁 帶、磁盤(pán)及磁鼓)可僅以預(yù)定次序存取存儲(chǔ)媒體上的數(shù)據(jù)。
寄存器 寄存器是通常給予可存儲(chǔ)少量數(shù)目的位的少量極快速的計(jì)算機(jī)存
儲(chǔ)器的名稱(舉例來(lái)說(shuō),"8位寄存器"或"32位寄存器")。 寄存器現(xiàn)在通常實(shí)施為寄存器堆,但其巳使用個(gè)別觸發(fā)器、高速 核心存儲(chǔ)器、薄膜存儲(chǔ)器且在各種機(jī)器中以其它方式來(lái)實(shí)施。
RS譯碼 里德-所羅門(mén)(RS)錯(cuò)誤校正是一種通過(guò)對(duì)由數(shù)據(jù)構(gòu)成的多項(xiàng)式過(guò)
度取樣來(lái)運(yùn)行的錯(cuò)誤校正碼。在數(shù)個(gè)點(diǎn)處評(píng)估所述多項(xiàng)式,且發(fā) 送或記錄這些值。由于比所必要的更頻繁地對(duì)多項(xiàng)式取樣,所述 多項(xiàng)式被過(guò)度確定。只要正確地接收所述點(diǎn)中的"許多"點(diǎn),接 收器即可恢復(fù)原始多項(xiàng)式,即使是在存在"少數(shù)"不良點(diǎn)的情況 下。里德-所羅門(mén)(Reed-Solomon)譯碼極為廣泛地用于大容量存 儲(chǔ)系統(tǒng)中以校正與媒體缺陷相關(guān)聯(lián)的突發(fā)錯(cuò)誤。/里德-所羅門(mén) (Reed-Solomon)譯碼是壓縮磁盤(pán)(CD)的重要組成部分。其曾 是強(qiáng)錯(cuò)誤校正譯碼在大量產(chǎn)生的消費(fèi)者產(chǎn)品中的首次使用,且 DAT與DVD使用類似的方案。在CD中,由28路巻積交織器分 開(kāi)的里德-所羅門(mén)(Reed-Solomon)譯碼的兩個(gè)層產(chǎn)生稱為交叉交 織里德-所羅門(mén)(Reed Solomon)譯碼(CIRC)的方案。CIRC解 碼器的第一元素是從具有8位符號(hào)的(255,251)碼縮短的相對(duì)弱 的內(nèi)部(32,28)里德-所羅門(mén)(Reed-Solomon)碼。此碼對(duì)每32 字節(jié)塊可校正多達(dá)2字節(jié)錯(cuò)誤。
SDRAM 同步動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器的簡(jiǎn)稱。SDRAM是一種類型的固態(tài)計(jì)算
機(jī)存儲(chǔ)器。其它動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)具有異步接口, 這意味著其盡可能快地對(duì)控制輸入的變化做出反應(yīng)。SDRAM具有 同步接口,這意味著其在對(duì)其控制輸入做出響應(yīng)之前等待時(shí)鐘信 號(hào)。其與計(jì)算機(jī)的系統(tǒng)總線同步,且因此與處理器同步。時(shí)鐘用 于驅(qū)動(dòng)使傳入命令呈管線形式的內(nèi)部有限狀態(tài)機(jī)。此允許芯片具 有比不具有同步化控制電路的DRAM更為復(fù)雜的操作模式。
移位寄存器在數(shù)字電路中,寄存器堆是以線性方式建立的寄存器群組,所述 寄存器以在電路被激活時(shí)使數(shù)據(jù)沿線向下移位的方式將其輸入與 輸出連接在一起。移位寄存器可具有串行與并行輸入與輸出的組 合,其中包含串行輸入并行輸出(SIPO)及并行輸入串行輸出
17(PISO)類型。還存在具有串行及并行輸入兩者的類型及具有串 行及并行輸出的類型。還存在允許改變移位寄存器的方向的雙向 移位寄存器。寄存器的串行輸入與輸出還可連接在一起以形成環(huán) 形移位寄存器。還可形成可執(zhí)行更復(fù)雜計(jì)算的多維移位寄存器。
分類器 分類器是可重新布置數(shù)據(jù)(例如符號(hào))的次序以(舉例來(lái)說(shuō))進(jìn)
行交織的功能塊(模塊)。去分類器恢復(fù)數(shù)據(jù)的原始次序。
SRAM 靜態(tài)隨機(jī)存取存儲(chǔ)器(SRAM)是一種類型的半導(dǎo)體存儲(chǔ)器。"靜
態(tài)" 一詞指示,只要保持施加電力存儲(chǔ)器即保持其內(nèi)容,這與需 要周期性地再新的動(dòng)態(tài)RAM (DRAM)是不同的。(然而,SRAM 不應(yīng)與只讀存儲(chǔ)器及快閃存儲(chǔ)器混淆,因?yàn)槠錇橐资源鎯?chǔ)器且 僅在持續(xù)施加電力的情況下才保留數(shù)據(jù)。)
狀態(tài)機(jī)
有限狀態(tài)機(jī)(FSM)或有限狀態(tài)自動(dòng)機(jī)(automaton)(復(fù)數(shù)形式automata)是 由有限數(shù)目的狀態(tài)、所述狀態(tài)之間的轉(zhuǎn)變及動(dòng)作組成的行為模式。狀態(tài)存儲(chǔ)關(guān)于過(guò)去 的信息,即,其反映從系統(tǒng)開(kāi)始到當(dāng)前時(shí)刻的輸入改變。轉(zhuǎn)變指示狀態(tài)改變且由實(shí)現(xiàn) 轉(zhuǎn)變將需要滿足的條件來(lái)描述。動(dòng)作是對(duì)將在給定時(shí)刻執(zhí)行的活動(dòng)的描述。FSM的概 念處于計(jì)算原理的中心,因?yàn)槠湟越?jīng)適當(dāng)編碼的信息的有限位可借以在理論上被機(jī)器 智能地處置的基本過(guò)程開(kāi)始。
符號(hào) 符號(hào)可包括若干(n個(gè))位。"字"也可包括若干位。字可包括若
干符號(hào)。

發(fā)明內(nèi)容
本發(fā)明的一般目標(biāo)是提供用于執(zhí)行巻積交織的經(jīng)改善技術(shù)。
根據(jù)本發(fā)明, 一般來(lái)說(shuō),使用SRAM來(lái)實(shí)施交織器以對(duì)來(lái)自兩個(gè)路徑的數(shù)據(jù)(符 號(hào))進(jìn)行緩沖及分類,隨后將所述數(shù)據(jù)突發(fā)寫(xiě)入到SDRAM。對(duì)來(lái)自兩個(gè)路徑的符號(hào) 進(jìn)行預(yù)先分類以將來(lái)自每一路徑的符號(hào)分組在一起,從而實(shí)現(xiàn)從SRAM到SDRAM的 大量依序突發(fā)寫(xiě)入,其中在順序交織器寫(xiě)入地址中僅發(fā)生一次斷開(kāi)。同樣,可通過(guò)在 寫(xiě)入之前積累四個(gè)完整的交織器換向器循環(huán)將SDRAM寫(xiě)入到4個(gè)字符寬。這樣可(舉 例來(lái)說(shuō))實(shí)現(xiàn)從96/16M符號(hào)/秒的先前水平到約110M符號(hào)/秒的吞吐量增加。
根據(jù)本發(fā)明特征,使用小型SRAM來(lái)對(duì)SDRAM數(shù)據(jù)加以重新排序及存儲(chǔ)以便 可優(yōu)化SDRAM存取,從而可高效地實(shí)施雙路徑巻積交織器。
根據(jù)本發(fā)明特征,將數(shù)據(jù)分類并收集在SRAM中以便可對(duì)SDRAM進(jìn)行大量依 序突發(fā)寫(xiě)入。
根據(jù)本發(fā)明特征,可對(duì)十六個(gè)信道符號(hào)的群組加以分類以使得在順序交織器寫(xiě)入 地址中僅發(fā)生一次斷開(kāi)。根據(jù)本發(fā)明特征,積累用于四個(gè)完整交織器換向器循環(huán)的數(shù)據(jù)以便能夠以四個(gè)符 號(hào)寬向SDRAM寫(xiě)入,此將優(yōu)化存取時(shí)間。
根據(jù)本發(fā)明特征,通過(guò)以交錯(cuò)模式寫(xiě)入數(shù)據(jù)來(lái)存儲(chǔ)雙路徑交織器數(shù)據(jù)以便可完成 線性讀取。此外,此提供突發(fā)序列期間寫(xiě)入地址變化快于讀取地址變化的優(yōu)點(diǎn)。
根據(jù)本發(fā)明特征,將雙路徑交織器數(shù)據(jù)存儲(chǔ)于SDRAM中以使得線性的32位讀 取將提供表示來(lái)自雙路徑交織器的串流的數(shù)據(jù)串流。
根據(jù)本發(fā)明, 一種對(duì)數(shù)據(jù)進(jìn)行交織的方法包括提供兩個(gè)交織器路徑;接收多個(gè) 符號(hào);將所述符號(hào)中的每一者指派給兩個(gè)路徑中給定的一個(gè)路徑;及對(duì)所述符號(hào)進(jìn)行 分類以使得順序交織器寫(xiě)入地址中斷開(kāi)的數(shù)目最小化。在進(jìn)行分類之后,將符號(hào)突發(fā) 寫(xiě)入到SDRAM。在進(jìn)行分類之后,順序交織器寫(xiě)入地址中僅存在一個(gè)斷開(kāi)。在寫(xiě)入 到SDRAM之前, 一次針對(duì)四個(gè)換向器循環(huán)積累數(shù)據(jù),且將數(shù)據(jù)以四個(gè)符號(hào)寬寫(xiě)入以 優(yōu)化SDRAM存取時(shí)間。因此,將8位元符號(hào)一次32位寫(xiě)入到SDRAM。
根據(jù)本發(fā)明實(shí)施例, 一種對(duì)數(shù)據(jù)進(jìn)行交織的方法包括提供兩個(gè)交織器路徑;接 收多個(gè)符號(hào);將所述符號(hào)中的一者指派給兩個(gè)路徑中的給定的路徑;及對(duì)所述符號(hào)進(jìn) 行分類以使得順序交織器寫(xiě)入地址中的斷開(kāi)數(shù)目最小化。在依序進(jìn)行分類之后,必須 將所述符號(hào)突發(fā)寫(xiě)入到SDRAM,且順序交織器寫(xiě)入地址中僅可存在一個(gè)斷開(kāi)??商?供多個(gè)符號(hào)信道。
根據(jù)本發(fā)明另一實(shí)施例,在寫(xiě)入到SDRAM之前,可一次針對(duì)四個(gè)FEC符號(hào)積 累數(shù)據(jù);且接著以四個(gè)符號(hào)寬寫(xiě)入以優(yōu)化SDRAM存取時(shí)間。所述FEC符號(hào)可以是8 位;且可將數(shù)據(jù)一次32位寫(xiě)入到SDRAM以適合SDRAM接口。可提供兩個(gè)交織器 路徑。在打包之前,可對(duì)符號(hào)進(jìn)行分類以使得順序交織器寫(xiě)入地址中的斷開(kāi)數(shù)目最小 化,從而增強(qiáng)性能。
根據(jù)本發(fā)明另一實(shí)施例,可通過(guò)以交錯(cuò)模式寫(xiě)入數(shù)據(jù)來(lái)將雙路徑交織器數(shù)據(jù)存儲(chǔ) 于SDRAM中,以便可進(jìn)行線性讀取以提高速度。交錯(cuò)可在換向器循環(huán)內(nèi)重新開(kāi)始以 保持SRAM較小,同時(shí)維持針對(duì)SDRAM的交織器結(jié)構(gòu)及突發(fā)寫(xiě)入特征??蓪?shù)據(jù)存 儲(chǔ)于SDRAM中以使得線性的32位讀取將提供表示來(lái)自雙路徑交織器的串流的數(shù)據(jù)串 流。
根據(jù)本發(fā)明另一實(shí)施例,揭示一種對(duì)作為符號(hào)序列的數(shù)據(jù)進(jìn)行交織的方法,其中 "I"表示交織深度且"J"表示交織增量。此實(shí)施例包括將所述符號(hào)序列寫(xiě)入到SRAM, 所述SRAM具有"r"數(shù)目的行及"c"數(shù)目的列。特定來(lái)說(shuō),通過(guò)以下步驟寫(xiě)入所述 符號(hào)(a)將第一符號(hào)寫(xiě)入到位于SRAM的第一列及第一行處的地址;(b)將序列 中下一符號(hào)寫(xiě)入在從先前列移動(dòng)了 J列的新列中且寫(xiě)入于SRAM的從先前行移動(dòng)了一 行的新行中;及(c)重復(fù)步驟(b)直到將所有符號(hào)寫(xiě)入到SRAM為止。根據(jù)本發(fā)明 又一特征,(d)在將所有符號(hào)寫(xiě)入到SRAM之后,將所述數(shù)據(jù)突發(fā)寫(xiě)入到SDRAM。
根據(jù)本發(fā)明再一特征,可以由以下關(guān)系定義的交錯(cuò)模式寫(xiě)入數(shù)據(jù)-c_new=(c—previous+J) modulo 4, 其中"c"為歹ij數(shù)目;及r_new=(r—previous+l) modulo
19I,其中"r"為行數(shù)目。
使用這些特征的組合可產(chǎn)生高達(dá)10倍的性能上的增益。舉例來(lái)說(shuō),根據(jù)本發(fā)明
實(shí)施例, 一種對(duì)數(shù)據(jù)進(jìn)行交織的方法包括提供兩個(gè)交織器路徑及多個(gè)符號(hào)信道;接 收多個(gè)符號(hào);將所述符號(hào)中的每一者指派給兩個(gè)路徑中給定的路徑;將所述符號(hào)分類 以使得順序交織器寫(xiě)入地址中的斷開(kāi)數(shù)目最小化;及在依序進(jìn)行分類之后,將所述符 號(hào)突發(fā)寫(xiě)入到SDRAM。在依序進(jìn)行分類之后,順序交織器寫(xiě)入地址中僅存在一個(gè)斷 開(kāi)。在寫(xiě)入到SDRAM之前, 一次針對(duì)四個(gè)FEC符號(hào)積累數(shù)據(jù),并將數(shù)據(jù)以四個(gè)符號(hào) 寬寫(xiě)入以優(yōu)化SDRAM存取時(shí)間。所述FEC符號(hào)為8位,將數(shù)據(jù)一次32位寫(xiě)入到 SDRAM以適合SDRAM接口,并將數(shù)據(jù)以交錯(cuò)模式寫(xiě)入到SDRAM以便可完成線性 讀取以提高速度。交錯(cuò)可在換向器循環(huán)內(nèi)重新開(kāi)始以保持SRAM較小,同時(shí)維持針對(duì) SDRAM的交織器結(jié)構(gòu)及突發(fā)寫(xiě)入特征。
根據(jù)本發(fā)明對(duì)數(shù)據(jù)進(jìn)行交織的另一方法包括接收多個(gè)符號(hào),其中將所述符號(hào)中的 每一者指派給兩個(gè)路徑中的一個(gè)路徑。對(duì)所述符號(hào)進(jìn)行分類以便將指派給兩個(gè)路徑中 的一個(gè)路徑的所有符號(hào)分組在一起,且將指派給兩個(gè)路徑中的另一路徑的所有符號(hào)分 組在一起。使用SRAM,以交錯(cuò)模式將已分類符號(hào)打包以便可將數(shù)據(jù)突發(fā)寫(xiě)入到 SDRAM。當(dāng)SRAM具有對(duì)應(yīng)于SDRAM突發(fā)塊的完整塊時(shí),可執(zhí)行從SRAM到 SDRAM的完整長(zhǎng)度突發(fā)寫(xiě)入。
根據(jù)本發(fā)明用于對(duì)數(shù)據(jù)進(jìn)行交織的設(shè)備包括用于實(shí)施以下的構(gòu)件對(duì)指派給兩個(gè) 路徑中的一個(gè)路徑的符號(hào)進(jìn)行分類;及對(duì)所述符號(hào)進(jìn)行分類以便將符號(hào)中指派給兩個(gè) 路徑中給定的一個(gè)路徑的第一部分分組在一起且將符號(hào)中指派給兩個(gè)路徑中的另一給 定路徑的剩余部分分組在一起。提供用于以交錯(cuò)模式存儲(chǔ)已分類符號(hào)以便可將數(shù)據(jù)突 發(fā)寫(xiě)入到SDRAM的構(gòu)件。還提供用于將符號(hào)突發(fā)寫(xiě)入到SDRAM的構(gòu)件。用于以交 錯(cuò)模式存儲(chǔ)已分類符號(hào)的構(gòu)件可包括SRAM。


閱讀以下結(jié)合附圖所述的詳細(xì)說(shuō)明可更完整地了解本發(fā)明。
圖1是圖解說(shuō)明根據(jù)現(xiàn)有技術(shù)的典型巻積交織器及去交織器的簡(jiǎn)化示意性方塊圖。
圖2是根據(jù)現(xiàn)有技術(shù)的數(shù)據(jù)通信系統(tǒng)的圖表。
圖3是根據(jù)現(xiàn)有技術(shù)包括巻積交織器的通信系統(tǒng)的圖表。
圖4是圖解說(shuō)明(例如)可與本發(fā)明一起使用的巻積交織器的圖表。
圖5是顯示本發(fā)明主要組件及所述組件如何彼此相關(guān)的圖表。
圖6是圖解說(shuō)明根據(jù)本發(fā)明的分類器的操作的圖表。
圖7及8是圖解說(shuō)明根據(jù)本發(fā)明的打包器的操作的圖表。
圖9及10是圖解說(shuō)明根據(jù)本發(fā)明的SDRAM的操作的圖表。圖11是圖解說(shuō)明根據(jù)本發(fā)明的拆包器的操作的圖表。 圖12是根據(jù)本發(fā)明的去分類器的圖表。
具體實(shí)施例方式
根據(jù)本發(fā)明, 一般來(lái)說(shuō),以多個(gè)信道來(lái)建立兩(2)路徑交織器,且每一信道可 由于SRAM中的信道分類而通過(guò)短路徑或長(zhǎng)路徑并在高速度下執(zhí)行。此外,到SRAM 的交錯(cuò)寫(xiě)入允許SRAM較小,當(dāng)在FPGA中實(shí)施時(shí)這是有益的。另外,將所述寫(xiě)入打 包以支持小SRAM的許多交織器模式。本文中揭示的技術(shù)支持具有兩個(gè)交織器長(zhǎng)度而 不導(dǎo)致極大的減速及雙SDRAM。
本發(fā)明使得通過(guò)使用SDRAM、 FPGA邏輯及FPGA SRAM以兩個(gè)路徑(A與B) 實(shí)施SDRAM巻積交織器成為可能。
由本發(fā)明解決的問(wèn)題是,到SDRAM兩路徑交織器的突發(fā)寫(xiě)入將在10 M符號(hào)/秒 的吞吐量處達(dá)到最大值(限定于此),且需要更高的符號(hào)速率(例如110M符號(hào)/秒)。
根據(jù)本發(fā)明,將符號(hào)內(nèi)容寫(xiě)入到小型SRAM,且隨后突發(fā)寫(xiě)入到SDRAM以便可 達(dá)到較高的符號(hào)速率(110MSym/sec)。
用于本發(fā)明例示性實(shí)施例的技術(shù)環(huán)境
交織器通常每秒鐘可接收144兆符號(hào)的數(shù)據(jù)串流。每一符號(hào)為7位寬。所述符號(hào) 串流由128個(gè)符號(hào)的塊實(shí)體來(lái)構(gòu)建。每一此128符號(hào)塊均由16符號(hào)的群組構(gòu)建。在此 16符號(hào)的群組中,16個(gè)符號(hào)中的一者屬于"信道"。
SDRAM通常是交織器所選擇的存儲(chǔ)器,例如本文中所揭示。舉例來(lái)說(shuō),參見(jiàn)上 文論述的萬(wàn)(Wan)參考文獻(xiàn)的圖5(主存儲(chǔ)器46,合適地為IC芯片53外部的SDRAM)。
然而,具有兩個(gè)交織器路徑可使得SDRAM中的存儲(chǔ)器存取因SDRAM的架構(gòu)而 效率極為低下。盡管SRAM不遭受此限制,但作為一般命題,SRAM比SDRAM昂貴 得多。SRAM在FPGA實(shí)施中同樣受限。
一般來(lái)說(shuō),當(dāng)使用SDRAM時(shí),會(huì)想要一次寫(xiě)入一行。當(dāng)停留在給定行中時(shí)速度 是最佳的。同樣,當(dāng)每循環(huán)寫(xiě)入及讀取32位時(shí),SDRAM最高效地運(yùn)行。如果所存儲(chǔ) 的數(shù)據(jù)為8位寬串流,則此可帶來(lái)挑戰(zhàn)。
在過(guò)去,己通過(guò)向SDRAM寫(xiě)入及從SDRAM讀取來(lái)實(shí)施對(duì)數(shù)據(jù)串流的交織。所 述寫(xiě)入是以遞增的地址依序進(jìn)行的。所述讀取從交織算法規(guī)定的位置發(fā)生。
存取SDRAM的一個(gè)問(wèn)題是會(huì)付出每次從讀取變?yōu)閷?xiě)入時(shí)及每次將數(shù)據(jù)流變?yōu)閬?lái) 自非后續(xù)地址時(shí)都進(jìn)行時(shí)鐘循環(huán)的代價(jià)。對(duì)于行變化會(huì)付出更高的代價(jià)。
當(dāng)交織器必須支持兩個(gè)數(shù)據(jù)路徑時(shí),SDRAM存取問(wèn)題加劇。這意味著,SDRAM 必須切換并支持兩個(gè)不同的地址序列,同時(shí)維持?jǐn)?shù)據(jù)流。因此,利用SDRAM的最有 效方式是以32位寬的數(shù)據(jù)"突發(fā)"逐行地讀取及寫(xiě)入。
根據(jù)本發(fā)明, 一般來(lái)說(shuō),揭示一種通過(guò)使用額外的SRAM向SDRAM突發(fā)寫(xiě)入經(jīng)非線性地址序列循環(huán)打包的交織器模式的方法。(如本文中所使用,"突發(fā)"寫(xiě)入 是指向(例如)SDRAM中的多個(gè)順序存儲(chǔ)器地址寫(xiě)入或讀取的模式。)
如ITU規(guī)范的B.5.2部分(交織)中所述,"在RS塊譯碼與隨機(jī)化器之間的調(diào) 制解調(diào)器中包含交織以實(shí)現(xiàn)對(duì)突發(fā)噪聲引入的錯(cuò)誤的校正。在64-QAM及256-QAM 兩者中均采用巻積交織器。巻積交織圖解說(shuō)明于圖B.8中。在隨后的子條款中定義的 FEC幀的開(kāi)始處,將交織換向器位置初始化到最頂端分支并以RS符號(hào)頻率遞增,其 中從每一位置輸出單個(gè)符號(hào)。借助于巻積交織器,RS碼符號(hào)被依序地移位到I個(gè)寄存 器的組(每一寄存器的寬度均為7位,這與RS符號(hào)大小匹配)中。每一連續(xù)寄存器 均比前面的寄存器多具有J個(gè)符號(hào)的存儲(chǔ)。第一個(gè)交織器路徑具有零延遲,第二個(gè)具 有J符號(hào)周期的延遲,第三個(gè)具有2"符號(hào)周期的延遲,依此類推,直到具有(I-1"J 符號(hào)周期的延遲的第I個(gè)路徑。對(duì)于有線電視解碼器中的去交織器,情況是相反的, 以使得每一 RS符號(hào)的凈延遲在交織器與去交織器中是相同的。信道中的突發(fā)噪聲導(dǎo) 致一系列不良符號(hào)。這些不良符號(hào)由去交織器分散于許多RS塊中以使得每一塊的所 得符號(hào)錯(cuò)誤均處于RS解碼器校正能力范圍內(nèi)。"另外,必須支持兩個(gè)延遲長(zhǎng)度且因 此支持兩個(gè)路徑"A"與"B"。
輸入數(shù)據(jù)
圖4圖解說(shuō)明根據(jù)本發(fā)明例示性實(shí)施例的巻積交織器的架構(gòu)。(所述交織器與圖 1中所示的交織器基本相同。)
到交織器(中)的輸入數(shù)據(jù)經(jīng)構(gòu)造以具有〗=16個(gè)符號(hào)的1= 128個(gè)群組。前16 個(gè)符號(hào)是128個(gè)符號(hào)的16個(gè)里德-所羅門(mén)(Reed-Solomon)包的所有第一個(gè)符號(hào)。在 交織器之前完成從128 X 16到16X 128的轉(zhuǎn)換。 "AB路徑"巻積交織器
巻積交織器用于在較長(zhǎng)符號(hào)序列上分布可能的傳輸錯(cuò)誤的目的。交織器實(shí)現(xiàn)對(duì)突 發(fā)噪聲更好的錯(cuò)誤校正。交織器以預(yù)定義方式延遲符號(hào)。不延遲包的第一個(gè)符號(hào),且 越來(lái)越多地延遲隨后的符號(hào)。交織器延遲由I與J定義。I表示抽頭的數(shù)目,且J表示 抽頭1的延遲。
本發(fā)明的交織器解決ITU交織規(guī)范(ITU-T介紹J.83)的變化,并極類似于先前 交織器地運(yùn)作,但支持交織器本身內(nèi)的兩個(gè)數(shù)據(jù)路徑("A"與"B" ) 。 16個(gè)符號(hào) 中的任一者均應(yīng)能夠通過(guò)路徑A或路徑B。所述不同路徑實(shí)施唯一的交織算法(13個(gè) 中的l個(gè))。
本發(fā)明的交織器支持標(biāo)示為"A"與"B"的2個(gè)路徑,且每一路徑均應(yīng)具有可 配置延遲模式。給定路徑可用于視頻或數(shù)據(jù)。
交織器必須支持B種模式。[I,J]模式定義交織器的結(jié)構(gòu)及其延遲。 I可具有值[l, 16, 32, 64, 128]。 J可具有值[1,2,3,4,5,6, 7, 8]。
16個(gè)信道可(最壞情況)導(dǎo)致從路徑到路徑的15種模式變化。
22數(shù)據(jù)流
圖5圖解說(shuō)明根據(jù)本發(fā)明的例示性總體數(shù)據(jù)流。交織器500的例示性實(shí)施例通常 包括5個(gè)功能塊(模塊)。
-分類器(例如下文中所描述的504),
-打包器(例如下文中所描述的506),
-SDRAM狀態(tài)機(jī)(例如下文中所描述的508),
-拆包器(例如下文中所描述的510),及
-去分類器(例如下文中所描述的512)。
在此實(shí)例中,將到交織器的輸入數(shù)據(jù)502 (IN)組織為16+ 16+ 16....個(gè)符號(hào),此 有助于提供在八8_分類(AB—Sorting)(下文所描述)之后僅具有1個(gè)目的地地址變 化的期望序列。所述地址變化與16個(gè)符號(hào)內(nèi)從"A"數(shù)據(jù)到"B"數(shù)據(jù)的變化相關(guān), 此在最壞情況下可導(dǎo)致15個(gè)變化(如果沒(méi)有被解決)。
在AB—分類器(AB_Sorter) 504中,A與B路徑的符號(hào)分類為若干群組以使得A 與B路徑的SDRAM地址的切換將不會(huì)斷開(kāi)SDRAM突發(fā)序列。在下文中參照?qǐng)D6(分 類器)對(duì)此加以更詳細(xì)描述。
所述16個(gè)符號(hào)最初處于常規(guī)次序中,例如1、 2、 3、 4、 5、 6、 7、 8、 9、 10、 11、 12、 13、 14、 15、 16。將所述符號(hào)中選定的符號(hào)指派給"A"符號(hào)路徑,將剩余符號(hào) 指派給"B"數(shù)據(jù)路徑。 一般來(lái)說(shuō),將"N"個(gè)符號(hào)指派給"A"路徑,且將16-N (16 減"N")個(gè)符號(hào)指派給"B"路徑。舉例來(lái)說(shuō),將N-10個(gè)符號(hào)指派給"A"路徑, 且將16-10=6個(gè)符號(hào)指派給"B"路徑。
所述分類器用于更改16個(gè)符號(hào)的次序以將去往"A"符號(hào)路徑的所有符號(hào)分組在 一起且將去往"B"符號(hào)路徑的所有符號(hào)分組在一起的目的。所述分類器通過(guò)觀察作 為交織器的輸入的16位向量而知曉哪一符號(hào)應(yīng)去往A或B方向。
在對(duì)輸入數(shù)據(jù)進(jìn)行分類之后,打包器506執(zhí)行四列打包以使得可隨后將四個(gè)符號(hào) (或32位)寫(xiě)入到SDRAM。使用SRAM將此完成。執(zhí)行到SRAM的寫(xiě)入以便將交 錯(cuò)模式(例如所定義的交錯(cuò)模式)置于SRAM中。隨時(shí)間推移,所述交錯(cuò)模式將填滿 SRAM。在SRAM具有對(duì)應(yīng)于SDRAM突發(fā)塊的完整塊時(shí),可對(duì)SDRAM執(zhí)行全長(zhǎng)突 發(fā)寫(xiě)入。
除交錯(cuò)模式之外,盡可能頻繁地將向SRAM的寫(xiě)入在地址上"向后移動(dòng)"。如本 文中使用,"向后移動(dòng)"是指從SRAM地址中減去一個(gè)數(shù)。在向SDRAM的每一次突 發(fā)寫(xiě)入開(kāi)始時(shí)補(bǔ)償所述減法。"盡可能頻繁地"是指避免斷開(kāi)到SDRAM的突發(fā)序列 同時(shí)保持SRAM較小,且因此按所準(zhǔn)許盡可能快地減去。下文中參照?qǐng)D7及8 (打包 器)對(duì)此加以更詳細(xì)描述。
打包器506包括具有8 (7)位輸入路徑及32 (28)位寬輸出路徑的FIFO。對(duì)數(shù) 據(jù)的分類及32位組織(打包)兩者均用于優(yōu)化隨后存取SDRAM 508的定時(shí)的目的。
SDRAM 508接收32位形式的數(shù)據(jù)且分類(504)通過(guò)確保從SDRAM的隨后讀取可以相繼次序發(fā)生且僅具有從A地址到B地址的一個(gè)變化來(lái)幫助。另外,16個(gè)群 組的4X將用于SDRAM存取。此將進(jìn)一步有助于優(yōu)化SDRAM定時(shí)。
在64個(gè)時(shí)鐘中應(yīng)通過(guò)64個(gè)符號(hào)以維持144M符號(hào)速率。SDRAM應(yīng)需要2X(64/4) =32個(gè)時(shí)鐘來(lái)讀取及寫(xiě)入64個(gè)符號(hào)。被4除(64/4)是來(lái)自DDR (X1/2)的使用且 來(lái)自16位寬度數(shù)據(jù)路徑(X1/2)。所述2X是來(lái)自每一符號(hào)需要讀取及寫(xiě)入存取的事 實(shí)。此將導(dǎo)致32個(gè)時(shí)鐘"多余"。需要這些時(shí)鐘以在"讀取到寫(xiě)入"(IO個(gè)時(shí)鐘)、 讀取地址變化(IO個(gè)時(shí)鐘)與其它SDRAM開(kāi)銷(12個(gè)時(shí)鐘)之間切換。
SDRAM 508暫存(臨時(shí)存儲(chǔ))從打包器506寫(xiě)入(突發(fā)寫(xiě)入)的數(shù)據(jù)。下文中 參照?qǐng)D9及10 (SDRAM)對(duì)此加以更詳細(xì)描述,圖中可見(jiàn)來(lái)自所寫(xiě)入數(shù)據(jù)的對(duì)角線。
狀態(tài)機(jī)控制SDRAM的操作。 一般來(lái)說(shuō),SDRAM狀態(tài)機(jī)如現(xiàn)有交織器中所實(shí)施 的狀態(tài)機(jī)一樣運(yùn)作。然而,不同之處是,狀態(tài)機(jī)寫(xiě)入16個(gè)符號(hào)(所述符號(hào)被分類及打 包)接著讀取N個(gè)符號(hào)且接著讀取(16-N)個(gè)符號(hào),而不是寫(xiě)入并讀取16個(gè)符號(hào)。 所述N個(gè)符號(hào)通過(guò)A路徑而來(lái),且所述(16-N)個(gè)符號(hào)通過(guò)B路徑而來(lái)。N由16位 向量選定。
對(duì)于使用32位路徑的SDRAM,有時(shí)有可能做出5次讀取(20個(gè)符號(hào))而不是 16次。
在上文提及的實(shí)例中,A路徑具有11個(gè)符號(hào)且B路徑具有5個(gè)符號(hào)。 一些替代 方案為
-如果A與B路徑各自具有8個(gè)符號(hào),則將執(zhí)行4次讀取。
-如果A路徑具有3個(gè)符號(hào)且B路徑具有13個(gè)符號(hào),則將執(zhí)行5次讀取。
從A路徑讀取1次得到3個(gè)符號(hào),且從B路徑讀取4次得到13個(gè)符號(hào)。
寫(xiě)入組合4X16個(gè)符號(hào)。
讀取針對(duì)A路徑組合4XN/16個(gè)符號(hào)。
讀取針對(duì)B路徑組合4X(16-N)* 16個(gè)符號(hào)。
拆包器510將從SDRAM逐行地讀取4個(gè)符號(hào)寬的數(shù)據(jù)。在完成完整的列寫(xiě)入之 后,開(kāi)始單個(gè)列的讀取。所述拆包器讀取串流向去分類器512提供數(shù)據(jù)。此模塊將向 其FIFO讀取32位且輸出將為16位。(下文中參照?qǐng)D11 (拆包器)對(duì)此加以更詳細(xì) 描述)。
AB—去分類器(AB—UnSorter) 512反轉(zhuǎn)AB—分類器(AB—Sorter) 504過(guò)程。下 文中參照?qǐng)D12 (AB—去分類器)對(duì)此加以更詳細(xì)地描述。
去分類器512將從SDRAM接收A與B路徑符號(hào)串流且接著取出16符號(hào)的塊并 以將信道次序維持為與其被分類之前一樣的方式將其放回在所述塊可用的16個(gè)位置 中。此邏輯塊512還含有用以將32位符號(hào)串流轉(zhuǎn)換為7位寬輸出數(shù)據(jù)路徑的FIFO。 重要地,應(yīng)注意,A與B路徑將不會(huì)遍布交織具有相同"延遲"。一個(gè)路徑可具有0.15ms 的等待時(shí)間且另一路徑可具有22ms的等待時(shí)間。因此,在交織器之后A與B信道將 不具有"相同"延遲。圖6-12提供上文中所述5個(gè)模塊(分類器、打包器、SDRAM、拆包器、去分類 器)的操作的進(jìn)一步細(xì)節(jié)及實(shí)例。 AB分類器(圖6)
分類器(504)用于更改16個(gè)輸入符號(hào)的次序以使得去往"A"符號(hào)路徑的所有 符號(hào)分組在一起且去往"B"符號(hào)路徑的所有符號(hào)分組在一起的目的。所述分類器(504) 通過(guò)觀察作為交織器的輸入的16位向量而知曉哪一符號(hào)應(yīng)去往A或B方向。
圖6圖解說(shuō)明根據(jù)本發(fā)明例示性實(shí)施例用于對(duì)輸出串流的輸入數(shù)據(jù)進(jìn)行分類的分 類器(AB—分類器)的操作。
在圖左側(cè)上的列顯示總共16個(gè)完整輸入符號(hào)1-16。將10個(gè)(N=10)符號(hào)1、 2、 6、 7、 8、 9、 12、 13、 14、 15指派給"A"路徑。將6個(gè)(16-N)符號(hào)3、 4、 5、 10、
11、 16指派給"B"路徑。
圖右側(cè)上的列顯示16個(gè)輸入符號(hào),其經(jīng)重新布置以使得所有A路徑符號(hào)(1、 2、
6、 7、 8、 9、 12、 13、 14、 15)分組在一起,隨后是剩余的B路徑符號(hào)(16、 11、 10、 5、 4、 3)。
在進(jìn)行分類之前U6符號(hào)輸入(SYMIN)),可觀察到存在5次"斷開(kāi)"。(斷 開(kāi)被定義為從A到B或從B到A的轉(zhuǎn)變)。在"最壞情況"情形下,如果每隔一個(gè) 符號(hào)從A變?yōu)锽,則可存在15個(gè)斷開(kāi)。舉例來(lái)說(shuō),所有奇數(shù)號(hào)碼的符號(hào)(1、 3、 5、
7、 9、 11、 13、 15)均被指派給A路徑,且所有偶數(shù)號(hào)碼的符號(hào)(2、 4、 6、 8、 10、
12、 14、 16)均被指派給B路徑。
在進(jìn)行分類之后(16SYM0UT),突發(fā)地址中僅存在一個(gè)斷開(kāi)("分割")。 為使到SDRAM的突發(fā)寫(xiě)入的性能最大化,突發(fā)地址中僅具有一個(gè)斷開(kāi)是期望的,因 為順序交織器寫(xiě)入地址中僅發(fā)生一次斷開(kāi)。
打包器(圖7及8)
在寫(xiě)入到SDRAM之前,需要將經(jīng)分類符號(hào)打包。從上文回顧,在此實(shí)例中,所 述符號(hào)為8位,且SDRAM在一次性寫(xiě)入32位時(shí)最有效。
打包器(506)進(jìn)一步將經(jīng)分類符號(hào)置于具有8 (7)位輸入路徑及32 (28)位寬 輸出路徑的FIFO中。對(duì)數(shù)據(jù)的分類及32位組織兩者均用于優(yōu)化對(duì)SDRAM的存取的 定時(shí)的目的。SDRAM以32位接收數(shù)據(jù),從而確保后來(lái)從SDRAM的讀取可以相繼次 序發(fā)生。
一次四個(gè)地將16個(gè)8位符號(hào)打包來(lái)以32位形式寫(xiě)入到SDRAM,以優(yōu)化SDRAM 存取時(shí)間。換句話說(shuō),積累來(lái)自4個(gè)完整交織器換向器循環(huán)的數(shù)據(jù)以將4個(gè)符號(hào)寬寫(xiě) 入到SDRAM 。
圖7是圖解說(shuō)明針對(duì)I, J= 128,1的打包器的圖表,且圖8是圖解說(shuō)明針對(duì)I,J=128,3 的打包器的圖表。在這兩個(gè)圖式中,存在四個(gè)列(垂直)及多個(gè)行(水平)。為清晰 地圖解說(shuō)明,僅顯示15個(gè)行。
顯示多個(gè)"框"。每一框指代16個(gè)符號(hào)。舉例來(lái)說(shuō),標(biāo)記為"1"的框指代符號(hào)
251…16,每一符號(hào)均為16個(gè)MPEG塊中的第一個(gè)符號(hào)。應(yīng)相同地處理所有16個(gè)符號(hào), 以使得其顯示為單個(gè)框。標(biāo)記為"2"的框指代16個(gè)MPEG塊中的第二個(gè)符號(hào)中的每 一者,依此類推。
一次一行地讀出打包器。舉例來(lái)說(shuō),將從打包器中讀出符號(hào)塊[385,257,129,1]中 的符號(hào)1并將其以32位形式寫(xiě)入到SDRAM。
在SDRAM行地址變化之前,16個(gè)此類行將被突發(fā)寫(xiě)入到SDRAM。因此,可在 沒(méi)有SDRAM地址變化的情況下寫(xiě)入最少64個(gè)字節(jié)。
在圖7及8中,可觀察到"5"(表示16個(gè)MPEG塊的第五個(gè)符號(hào))被"拉回" 到右手邊的列。然而,應(yīng)了解,當(dāng)被寫(xiě)入到SDRAM時(shí),所述5將被寫(xiě)入在4的下方 且左邊。此交錯(cuò)確保在讀取SDRAM時(shí)可進(jìn)行線性讀取,同時(shí)維持交織器。
用于支持所有13種交織器模式的交錯(cuò)模式
交織器支持13 [I,J]模式,其中T可具有五個(gè)值[l, 16, 32, 64, 128],且"J"可 具有八個(gè)值[1,2, 3,4, 5, 6, 7, 8]。
在進(jìn)行分類(504)之后,在將數(shù)據(jù)(符號(hào))打包(506)到SRAM中時(shí)所述數(shù)據(jù) (符號(hào))是交錯(cuò)的,隨后將其突發(fā)寫(xiě)入(507)到SDRAM,同時(shí)維持到SDRAM的突 發(fā)寫(xiě)入能力。交錯(cuò)模式(算法)針對(duì)每一模式而略有不同,且針對(duì)每一模式均取決于 I及J。
上文在圖7及8中闡述了使數(shù)據(jù)交錯(cuò)(或預(yù)交錯(cuò)或預(yù)處理)并將數(shù)據(jù)臨時(shí)存儲(chǔ)(寫(xiě) 入)在SRAM中,隨后且準(zhǔn)備將數(shù)據(jù)突發(fā)寫(xiě)入到SDRAM的兩個(gè)實(shí)例。
參照?qǐng)D7,對(duì)于1=128且hl,可觀察到,在具有4列寬(及"n"行)架構(gòu)的SRAM 中,將第一符號(hào)"1"寫(xiě)入在列1 (右手邊的列)行1 (頂行)中。(將第一符號(hào)寫(xiě)入 在第一列中,假定第一行針對(duì)所有情況均為真。)將第二符號(hào)"2"寫(xiě)入在列2 (先前 列左邊的第"J"歹iJ,在此情況下為下一列,因?yàn)镴=l)行2 (向下的下一行,n=n+l) 中。注意,對(duì)于每一后續(xù)符號(hào),在所有情況下,將下一符號(hào)寫(xiě)入在向下的下一行中。 將第三符號(hào)"3"寫(xiě)入在列3 (其中存儲(chǔ)先前第二個(gè)符號(hào)的列左邊的J列)行3 (向下 的下一行)中。將第四符號(hào)"4"寫(xiě)入在列4 (同樣,其中存儲(chǔ)先前第三個(gè)符號(hào)處左邊 的J^列)行4 (向下的下一行)中。
這是四列寬架構(gòu),下一符號(hào)"5"寫(xiě)入在列1 (列序列為1、 2、 3、 4、 1、 2、 3、 4、 1、 2、 3、 4…)中,列1為列4左邊的一個(gè)(J=l)歹U,繞回列l(wèi),且在向下的下一 行(n=n+l)中。根據(jù)本文中定義的交錯(cuò)模式,始終將下一符號(hào)寫(xiě)入在向下的下一行中。
圖9顯示來(lái)自圖7的數(shù)據(jù)在突發(fā)寫(xiě)入之后如何布置在較寬(32列)SDRAM中。
在根據(jù)預(yù)定義模式(J=3)的交錯(cuò)的圖8實(shí)例中,可觀察到,每一后續(xù)符號(hào)均被 寫(xiě)入在先前符號(hào)左邊J-3列。同樣,在四列寬架構(gòu)下,其中=3的序列因此變?yōu)?、 4、 3、 2、 1、 4、 3、 2、 1、 4、 3、 2…此簡(jiǎn)單公式為c—new=(c—last+J) modulo 4,其中"c" 為列數(shù)目("last"-先前)。如在先前實(shí)例(針對(duì)I,J-128,1)中,將每一后續(xù)符號(hào)寫(xiě) 入到向下的下一行。如從這些實(shí)例顯而易見(jiàn),將所述列寫(xiě)入在每一后續(xù)符號(hào)左邊"J"歹'j,當(dāng)?shù)竭_(dá)最 后一列(在此實(shí)例中為列4)時(shí)繞回(回到列l(wèi))。應(yīng)了解,方向"左"僅是對(duì)列序列 中的方向的命名,在此實(shí)例中,SRAM經(jīng)布置以具有四個(gè)列。在模運(yùn)算(有時(shí)稱為取 模運(yùn)算)或塊運(yùn)算中,遞增的數(shù)目(1、 2、 3、 4、…)在達(dá)到特定的數(shù)(即最高準(zhǔn)許 數(shù))之后繞回。舉例來(lái)說(shuō),在時(shí)鐘中,數(shù)目在超過(guò)12之后"繞"回到l。在SRAM的 本實(shí)例中,所述列在超過(guò)4之后繞回到1。對(duì)于J-1,將每一后續(xù)符號(hào)寫(xiě)入到序列中的 第一下一列,對(duì)于J-2,將每一后續(xù)符號(hào)寫(xiě)入到序列中的第二下一列,對(duì)于J-3,將下 一符號(hào)寫(xiě)入到序列中的第三下一列,對(duì)于J的每一可能值依此類推。
注意,可容易地適應(yīng)存儲(chǔ)器的其它布置。舉例來(lái)說(shuō),出于實(shí)踐原因,可并排地布 置八個(gè)四列群組。通過(guò)在SRAM中并排地使用8 X 4列塊布置,在將地址寫(xiě)入到SDRAM 的同時(shí)將必須較不頻繁地改變所述地址。此表示SRAM大小與相關(guān)聯(lián)邏輯的簡(jiǎn)單性/ 性能之間的折衷。在具有四個(gè)以上列的SRAM的情況下,如在8X4列塊布置的實(shí)例 中,圖7及8中所圖解說(shuō)明的實(shí)施例將使其寬度變?yōu)閮杀?列及使其寬度變?yōu)槿?2 列。對(duì)于所屬領(lǐng)域的技術(shù)人員,其它寬度配置將是顯而易見(jiàn)的。
在上文給出的實(shí)例中,將每一符號(hào)寫(xiě)入到SRAM中向下的下一行。此繼續(xù)進(jìn)行, 直到達(dá)到"I"。所寫(xiě)入的行的數(shù)目取決于"I"。以類似于以模的方式計(jì)數(shù)所述列(1、 2、 3、 4、 1、 2、 3、 4、)的方式,當(dāng)?shù)竭_(dá)第I行時(shí)(在上文給出的實(shí)例中1=128), 下一寫(xiě)入將是寫(xiě)入到行1。這是強(qiáng)迫交錯(cuò)重新開(kāi)始的概念。以公式表示,此為 r—new=(r—last+l) modulo I,其中"r"為行數(shù)目("last"=先前)。
存儲(chǔ)器地址通常由行與列標(biāo)示, 一般來(lái)說(shuō),在規(guī)定的列與規(guī)定的行相交(交叉) 處。此命名可指代僅可存儲(chǔ)一個(gè)或少數(shù)數(shù)據(jù)位的個(gè)別存儲(chǔ)器單元,也指代可保存許多 數(shù)據(jù)位的相連存儲(chǔ)器單元的塊。應(yīng)了解,"列1"或"第一列"指代SRAM(或SDRAM, 下文中描述)的初始列,且"行1"或"第一行"指代SRAM (或SDRAM,下文中 描述)的初始行。
應(yīng)了解,SRAM應(yīng)具有"I"個(gè)以上行,但交錯(cuò)模式經(jīng)定義以在到達(dá)行"I"之后 在行l(wèi)處重新開(kāi)始。此外,SRAM可具有四個(gè)以上列,但交錯(cuò)模式在達(dá)到列4之后在 列1處重新開(kāi)始。所有這些準(zhǔn)備將數(shù)據(jù)有效地突發(fā)寫(xiě)入到SDRAM。在1=128的情況 下,可將SRAM視為128行陣列。如果1=8,則可保持128行并將其視為在彼此下方 的16個(gè)8行塊。以此方式,可在概念上堅(jiān)持128行的想法,但令交錯(cuò)在128內(nèi)重新開(kāi) 始16次。128的每個(gè)第8行將被視為塊內(nèi)的行1。
如果"I"為128,則從行1到128交錯(cuò)到SDRAM的寫(xiě)入。如果"I"為8,則將 強(qiáng)制對(duì)SDRAM的交錯(cuò)的16=128/8重新開(kāi)始。在"I"寫(xiě)入循環(huán)結(jié)束時(shí)強(qiáng)制重新開(kāi)始。 在"I"寫(xiě)入循環(huán)結(jié)束時(shí),下一寫(xiě)入在行I之后移回到開(kāi)始列。存在兩種列重新開(kāi)始。 當(dāng)達(dá)到行"I"時(shí),在SRAM及SDRAM兩者中重新開(kāi)始交錯(cuò)。當(dāng)僅在SRAM中重新 開(kāi)始時(shí),為保持SRAM較小(注意上文的四列實(shí)例),SDRAM地址遞增以補(bǔ)償此種 重新開(kāi)始。SDRAM (圖9及10)
在此實(shí)施例中,SDRAM及其狀態(tài)機(jī)極類似在過(guò)去的交織器中所實(shí)施的狀態(tài)機(jī)而運(yùn)作。不同之處是,狀態(tài)機(jī)現(xiàn)在將寫(xiě)入/讀取N個(gè)符號(hào)且接著寫(xiě)入/讀取(16-N)個(gè)符號(hào),而不是寫(xiě)入/讀取16個(gè)符號(hào)。所述N個(gè)符號(hào)是針對(duì)A路徑,且所述(16-N)個(gè)符號(hào)是針對(duì)B路徑。N由16位向量選定。
由于SDRAM使用32位路徑,因此可進(jìn)行5次讀取(5X4= 20個(gè)符號(hào)),而不是16次。如果A與B路徑各自具有8個(gè)符號(hào),則可進(jìn)行4次讀取。如果存在3個(gè)A符號(hào)及13個(gè)B符號(hào),則可進(jìn)行5次讀取一從A路徑進(jìn)行1次讀取以得到3個(gè)符號(hào)且從B路徑進(jìn)行4次讀取以得到13個(gè)符號(hào)。
寫(xiě)入將組合4XN符號(hào)"6。
寫(xiě)入將針對(duì)B路徑組合4X(16-N)*16符號(hào)。
圖9圖解說(shuō)明針對(duì)I, J=128,l的SDRAM,且圖10圖解說(shuō)明針對(duì)I,J= 128,3的SDRAM。如圖7及8中的情況,每一框指代16個(gè)符號(hào)。僅顯示總共八個(gè)列中的三個(gè)。以交錯(cuò)方式從右上到左下進(jìn)行寫(xiě)入, 一次四列以維持交織器延遲。從上向下一次四列地進(jìn)行讀取,接著讀取下四列。
舉例來(lái)說(shuō),在圖9中,符號(hào)l、 2、 3及4沿著"45度"對(duì)角線,每一符號(hào)位于前一符號(hào)的向下一行且向左一列。在圖9中可觀察到符號(hào)5、 6、 7及8的相同對(duì)角線模式。
注意,舉例來(lái)說(shuō),圖9右上方16個(gè)(4X4)框的群組(標(biāo)記為902)重復(fù)圖7頂部處的16個(gè)框的群組(標(biāo)記為702)。(且如圖中將看到與圖ll右上方處的16個(gè)框的群組(標(biāo)記為1102)相同)。
類似地,圖9中含有符號(hào)5、 6、 7、 8的群組的16個(gè)框的群組(標(biāo)記為904)重復(fù)圖7中相同行位置(行5-8)處的16個(gè)框的群組(標(biāo)記為704)的群組以及圖11中相同行位置處的16個(gè)框的群組(標(biāo)記為1104)。
通過(guò)以交錯(cuò)模式寫(xiě)入數(shù)據(jù)來(lái)存儲(chǔ)路徑交織器數(shù)據(jù)的方法使得線性讀取能夠完成。此外,此提供在突發(fā)序列期間寫(xiě)入地址變化比讀取地址變化更快的優(yōu)點(diǎn)。將數(shù)據(jù)存儲(chǔ)于SRAM中以使得線性32位讀取將提供表示來(lái)自雙路徑交織器的串流的數(shù)據(jù)串流同時(shí)使用小的SRAM。通過(guò)盡可能頻繁地進(jìn)行交錯(cuò)同時(shí)維持所需突發(fā)長(zhǎng)度來(lái)保持SRAM較小。
拆包器(510圖11)
拆包器510的目的是從SDRAM讀取4符號(hào)寬數(shù)據(jù)并將其作為1符號(hào)寬串流提供給去—分類器([/n—Sorter) 512。
圖11圖解說(shuō)明拆包器。如在圖7、 8、 9及10中,每一框指代16個(gè)符號(hào)。(標(biāo)記為"1"的框指代16個(gè)符號(hào),等等。)
逐行地從上向下地進(jìn)行到拆包器510中的寫(xiě)入以填充一個(gè)列。接著,在從SDRAM填充行時(shí)將填充下一列。逐列地進(jìn)行從拆包器的讀取。舉例來(lái)說(shuō),從"129"開(kāi)始,接著將讀取"2"…。AB去分類器(AB UnSorter) (512.圖12)
去_分類器(Un一Sorter) 512恢復(fù)串流的信道次序。交織器的此最后階段將移除交織器中的AB一分類器優(yōu)化的所有痕跡。 一般來(lái)說(shuō),圖12 (去分類器)僅僅是圖6 (分類器)的"鏡像"。為讀取SDRAM,對(duì)于寫(xiě)入來(lái)說(shuō),僅存在一個(gè)A/B分割,如圖中所示。
應(yīng)了解,本發(fā)明可以控制邏輯的形式實(shí)現(xiàn),實(shí)施于軟件或硬件或兩者的組合中,如所屬領(lǐng)域的技術(shù)人員基于本文中所述教示將顯而易見(jiàn)。
出于解釋的目的,前述說(shuō)明使用特定命名來(lái)提供對(duì)本發(fā)明的透徹了解。然而,所屬領(lǐng)域的技術(shù)人員將明了,不需要特定細(xì)節(jié)來(lái)實(shí)踐本發(fā)明。因此,呈現(xiàn)本發(fā)明特定實(shí)施例的前述說(shuō)明是出于圖解說(shuō)明及說(shuō)明的目的。其并不希望作為窮舉性說(shuō)明或?qū)⒈景l(fā)明限定為所揭示的確切形式,且鑒于上述教示可做出許多修改及變化。選擇及描述所述實(shí)施例以對(duì)本發(fā)明的原理及其實(shí)際應(yīng)用進(jìn)行最佳解釋,從而使所屬領(lǐng)域的其它技術(shù)人員能夠最佳地利用本發(fā)明及各種實(shí)施例及適用于所預(yù)期的特定使用的各種修改。希望由以下權(quán)利要求書(shū)及其等效物界定本發(fā)明范圍。
權(quán)利要求
1、一種對(duì)數(shù)據(jù)進(jìn)行交織的方法,其包括提供兩個(gè)交織器路徑;接收多個(gè)符號(hào);將所述符號(hào)中的每一者指派給所述兩個(gè)路徑中的給定路徑;及對(duì)所述符號(hào)進(jìn)行分類以將順序交織器寫(xiě)入地址中的斷開(kāi)的數(shù)目最小化。
2、 根據(jù)權(quán)利要求1所述的方法,其中 在依序進(jìn)行分類之后,將所述符號(hào)突發(fā)寫(xiě)入到SDRAM。
3、 根據(jù)權(quán)利要求2所述的方法,其中在依序進(jìn)行分類之后,所述順序交織器寫(xiě)入地址中僅存在一個(gè)斷開(kāi)。
4、 根據(jù)權(quán)利要求1所述的方法,其中在依序進(jìn)行分類之后,所述順序交織器寫(xiě)入地址中僅存在一個(gè)斷開(kāi)。
5、 根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包括-提供多個(gè)符號(hào)信道。
6、 一種對(duì)數(shù)據(jù)進(jìn)行交織的方法,其包括在寫(xiě)入到SDRAM之前,通過(guò)一次針對(duì)四個(gè)FEC符號(hào)積累數(shù)據(jù)來(lái)執(zhí)行打包;及 以四個(gè)符號(hào)寬進(jìn)行寫(xiě)入以優(yōu)化SDRAM存取時(shí)間。
7、 根據(jù)權(quán)利要求6所述的方法,其中 所述FEC符號(hào)為8位;將數(shù)據(jù)一次32位寫(xiě)入到SDRAM以適合SDRAM接口 。
8、 根據(jù)權(quán)利要求6所述的方法,其中 提供兩個(gè)交織器路徑;且在進(jìn)行打包之前,對(duì)所述符號(hào)進(jìn)行分類以將順序交織器寫(xiě)入地址中的斷開(kāi)的數(shù)目 最小化。
9、 一種對(duì)數(shù)據(jù)進(jìn)行交織的方法,其包括通過(guò)首先以交錯(cuò)模式將所述數(shù)據(jù)寫(xiě)入于SRAM中以便可進(jìn)行線性讀取來(lái)將雙路 徑交織器數(shù)據(jù)存儲(chǔ)于SDRAM中。
10、 根據(jù)權(quán)利要求9所述的方法,其進(jìn)一步包括在換向器循環(huán)內(nèi)重新開(kāi)始所述交錯(cuò)以保持所述SRAM較小,同時(shí)維持針對(duì)所述 SDRAM的交織器結(jié)構(gòu)及突發(fā)寫(xiě)入特征。
11、 根據(jù)權(quán)利要求9所述的方法,其中將所述數(shù)據(jù)存儲(chǔ)于所述SDRAM中以使得線性32位讀取將提供表示來(lái)自所述雙 路徑交織器的串流的數(shù)據(jù)串流。
12、 一種對(duì)作為符號(hào)序列的數(shù)據(jù)進(jìn)行交織的方法,其中"I"表示交織深度且"J"表示交織增量,所述方法包括將所述符號(hào)序列寫(xiě)入到SRAM,所述SRAM具有"r" 數(shù)目個(gè)行及"c"數(shù)目個(gè)列,所述寫(xiě)入通過(guò)以下步驟實(shí)現(xiàn)(a) 將第一符號(hào)寫(xiě)入到位于所述SRAM的第一列及第一行處的地址;(b) 將所述序列中的下一符號(hào)寫(xiě)入于從先前列移動(dòng)了 J個(gè)列的新列中且寫(xiě)入于 所述SRAM的從先前行移動(dòng)了一行的新行中;及(c) 重復(fù)所述步驟(b)直到將所有所述符號(hào)寫(xiě)入到SRAM為止。
13、根據(jù)權(quán)利要求12所述的方法,其進(jìn)一步提供-(d) 在將所有所述符號(hào)寫(xiě)入到SRAM之后,將所述數(shù)據(jù)突發(fā)寫(xiě)入到SDRAM。
14、 根據(jù)權(quán)利要求12所述的方法,其中以由以下關(guān)系定義的交錯(cuò)模式寫(xiě)入所述數(shù)據(jù)-c—new=(c—previous+J) modulo 4,其中"c"為歹U數(shù)目;及 r—new=(r—previous+l) modulo I, 其中"r"為行數(shù)目。
15、 一種對(duì)數(shù)據(jù)進(jìn)行交織的方法,其包括提供兩個(gè)交織器路徑;提供多個(gè)符號(hào)信道; 接收多個(gè)符號(hào);將所述符號(hào)中的每一者指派給所述兩個(gè)路徑中的給定路徑;對(duì)所述符號(hào)進(jìn)行分類以將順序交織器寫(xiě)入地址中的斷開(kāi)的數(shù)目最小化;及在依序進(jìn)行分類之后,將所述符號(hào)突發(fā)寫(xiě)入到SDRAM;其中,在依序進(jìn)行分類之后,所述順序交織器寫(xiě)入地址中僅存在一個(gè)斷開(kāi);其進(jìn)一步包括.-在寫(xiě)入到SDRAM之前, 一次針對(duì)四個(gè)FEC符號(hào)積累數(shù)據(jù);及以四個(gè)符號(hào)寬進(jìn)行寫(xiě)入以優(yōu)化SDRAM存取時(shí)間;其中所述FEC符號(hào)為8位;將數(shù)據(jù)一次32位寫(xiě)入到SDRAM以適合SDRAM接口 ,且 以交錯(cuò)模式將數(shù)據(jù)從SRAM寫(xiě)入到SDRAM以便可進(jìn)行線性讀取以提高速度。
16、 根據(jù)權(quán)利要求15所述的方法,其進(jìn)一步包括在換向器循環(huán)內(nèi)重新開(kāi)始所述交錯(cuò)以保持所述SRAM較小,同時(shí)維持針對(duì)所述 SDRAM的交織器結(jié)構(gòu)及突發(fā)寫(xiě)入特征。
17、 一種對(duì)數(shù)據(jù)進(jìn)行交織的方法,其包括接收多個(gè)符號(hào),其中將所述符號(hào)中的每一者指派給兩個(gè)路徑中的一個(gè)路徑;及 對(duì)所述符號(hào)進(jìn)行分類以使得指派給所述兩個(gè)路徑中的一個(gè)路徑的所有所述符號(hào)分組在一起,且使得指派給所述兩個(gè)路徑中的另一路徑的所有所述符號(hào)分組在一起;及使用SRAM以交錯(cuò)模式打包所述經(jīng)分類符號(hào)以便可將數(shù)據(jù)突發(fā)寫(xiě)入到SDRAM。
18、 根據(jù)權(quán)利要求14所述的方法,其進(jìn)一步包括當(dāng)所述SRAM具有對(duì)應(yīng)于SDRAM突發(fā)塊的完整塊時(shí),執(zhí)行從SRAM到SDRAM的完整長(zhǎng)度突發(fā)寫(xiě)入。
19、 一種用于對(duì)數(shù)據(jù)進(jìn)行交織的設(shè)備,其包括用于對(duì)指派給兩個(gè)路徑中的一個(gè)路徑的符號(hào)進(jìn)行分類且對(duì)所述符號(hào)進(jìn)行分組以 使得符號(hào)中指派給所述兩個(gè)路徑中的給定路徑的第一部分分組在一起且使得符號(hào)中指 派給所述兩個(gè)路徑中的另一給定路徑的剩余部分分組在一起的構(gòu)件;用于以交錯(cuò)模式存儲(chǔ)所述經(jīng)分類符號(hào)以便可將數(shù)據(jù)突發(fā)寫(xiě)入到SDRAM的構(gòu)件;及用于將所述符號(hào)突發(fā)寫(xiě)入到SDRAM的構(gòu)件。
20、 根據(jù)權(quán)利要求19所述的設(shè)備,其中 所述用于以交錯(cuò)模式存儲(chǔ)所述經(jīng)分類符號(hào)的構(gòu)件包括SRAM。
全文摘要
本發(fā)明提供一種具有兩個(gè)路徑的SDRAM卷積交織器。將符號(hào)指派給所述兩個(gè)路徑中的給定路徑,接著對(duì)所述符號(hào)進(jìn)行分類以將順序交織器寫(xiě)入地址中的斷開(kāi)的數(shù)目最小化(到1)。在進(jìn)行分類之后,將所述符號(hào)交錯(cuò)地存儲(chǔ)于SRAM中且突發(fā)寫(xiě)入到SDRAM。在寫(xiě)入到SDRAM之前,一次針對(duì)四個(gè)符號(hào)積累數(shù)據(jù)并將所述數(shù)據(jù)以四個(gè)符號(hào)寬寫(xiě)入以優(yōu)化SDRAM存取時(shí)間。將8位符號(hào)一次32位寫(xiě)入到SDRAM。
文檔編號(hào)G06F12/00GK101652757SQ200780052560
公開(kāi)日2010年2月17日 申請(qǐng)日期2007年10月30日 優(yōu)先權(quán)日2007年4月13日
發(fā)明者約爾延·安德松 申請(qǐng)人:Rgb網(wǎng)絡(luò)有限公司
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
漯河市| 锡林郭勒盟| 茌平县| 曲靖市| 彰武县| 楚雄市| 涞源县| 清新县| 临猗县| 伊川县| 青田县| 随州市| 宣化县| 台中市| 新疆| 措勤县| 伊金霍洛旗| 凤城市| 新郑市| 通许县| 竹北市| 界首市| 高雄市| 黄骅市| 德昌县| 曲周县| 日照市| 印江| 绍兴县| 台北市| 栾城县| 广昌县| 罗定市| 时尚| 清水河县| 鞍山市| 海口市| 济南市| 醴陵市| 庆云县| 安顺市|