專利名稱::區(qū)塊交錯與解交錯的編碼方法
技術領域:
:本發(fā)明有關于一種通信系統(tǒng)中交錯及解交錯的方法,特別有關一種執(zhí)行區(qū)塊交錯及解交錯的方法與裝置。
背景技術:
:通道編碼(channelcoding)主要功用是用來檢測及糾正無線通信系統(tǒng)在傳輸中隨機噪聲(randomnoise)所造成的錯誤,這種錯誤的發(fā)生通常是零零散散的,分布在數(shù)據(jù)的各處。然而,在傳送過程中,有些時候會有一連串錯誤(bursterror)的發(fā)生,這種錯誤很可能會超過一般編碼器的錯誤糾正能力,而無法將錯誤的數(shù)據(jù)恢復,導致數(shù)據(jù)損失或需要重新傳送。交錯(interleaving)為一種可提高對抗連續(xù)錯誤的能力的方法。交錯是于數(shù)據(jù)傳送之前,將數(shù)據(jù)、也就是編碼符號(codesymbol)原本的順序重新組合。如此一來,當傳輸過程中發(fā)生一連串錯誤時,這些錯誤將會因解交錯(de-interleaving)時被打散至許多位置。通過將一連串錯誤分散至數(shù)據(jù)內(nèi)各個位置,而減少錯誤的連續(xù)個數(shù)。于是,解碼器便可增進將檢測到的錯誤糾正回來的能力。交錯器(interleaver)是傳送端用來把要傳送的數(shù)據(jù)打散成不同順序的裝置;在接收端,其對應的處理單元為解交錯器(de-interleaver)。其目的是把原來被交錯到不同位置的數(shù)據(jù)恢復回原來的地方。區(qū)塊交錯(blockinterleaving)為一種常用、且容易執(zhí)行的交錯方法。區(qū)塊交錯將編碼器產(chǎn)生的一串編碼符號分成許多區(qū)塊,并將每個區(qū)塊的先后順序重新排列。如圖1A及圖1B所示,一般區(qū)塊交錯先將編碼序列按照橫式的排列順序填入一矩陣,執(zhí)行完區(qū)塊交錯的改變順序后,再將編碼符號以直式讀出,依序輸至調(diào)制器。圖1A表示執(zhí)行區(qū)塊交錯之前,編碼符號在矩陣中的排列順序,圖1B則表示編碼符號執(zhí)行完區(qū)塊交錯后在矩陣中的排列順序。如圖所示,編碼符號填入矩陣時,按照橫式的排列順序,先將第一列填滿,再依次填入下面的每一列。在此例子中,執(zhí)行區(qū)塊交錯會使原本矩陣中行的順序從(0,1,2,3)更改為(0,2,1,3),也就是將中間兩行的位置互換。當編碼符號執(zhí)行完區(qū)塊交錯后,輸出至調(diào)制器的順序以直式排列,先將如圖1B所示的新排列好的順序中的第一行輸出,再依次輸出之后每一行的編碼符號到調(diào)制器。而在接收端的區(qū)塊解交錯器則是執(zhí)行相反的操作。通常進行區(qū)塊交錯與解交錯的兩端,會將編碼符號按照類似圖1A與圖1B中C行R列(C*R)的矩陣所構(gòu)呈的順序,讀出以及寫入存儲器中。編碼符號從存儲器讀出時,所排列的順序會與寫入時的順序不同,而傳統(tǒng)技術需要先將執(zhí)行交錯前的編碼符號依序存儲在存儲單元(memorycell)中,執(zhí)行區(qū)塊交錯后,再將按照新順序排列的編碼符號存儲在另外的存儲單元中。這樣的程序步驟導致每一個編碼符號必須在存儲器中被存儲兩次,也就是需要兩倍編碼符號總數(shù)(2RC)的存儲單元。另外,利用公知技術進行交錯時,由于存儲器的讀寫順序先依序?qū)懭刖仃嚨拿恳涣?,再依新的交錯順序讀出矩陣的每一行。因此最快開始輸出的時間,是在開始寫入編碼符號的最后一列的時候。這是由于至少要等到最后一列的第一個編碼符號寫入后,交錯器才可收集到完整的一行,以輸出至調(diào)制器。如此,導致延遲的時間至少為C(R-1)+1次寫入存儲器所費的時間。
發(fā)明內(nèi)容本發(fā)明提供一種新的執(zhí)行區(qū)塊交錯及解交錯的地址產(chǎn)生方法,及地址發(fā)生器,可有效的縮短處理區(qū)塊交錯及解交錯所花費的時間,并減少執(zhí)行交錯時所需用到的存儲單元。本發(fā)明的方法由于允許在讀編碼符號的同時,立刻計算輸出時的新地址,確??稍谧疃痰难舆t時間內(nèi),完成區(qū)塊交錯或解交錯。本發(fā)明于讀到每一個編碼符號時,即刻輸出編碼符號的新地址至調(diào)制器,無須等到讀至最后一列才開始輸出新地址。這種即時算出新地址的技術,讓每一個編碼符號只需要一次的讀寫即可完成區(qū)塊交錯或解交錯,且不必再等候C(R-1)+1次寫入存儲器所費的時間。本發(fā)明的編碼符號在輸入時寫入的存儲單元,可與輸出所需的存儲單元相重迭,最多可重迭與預設矩陣的列數(shù)(R)相同數(shù)目的存儲單元。不但如此,本發(fā)明的交錯與解交錯的方法十分容易實施于實際應用上,且本發(fā)明的地址發(fā)生器,可用作執(zhí)行區(qū)塊交錯或區(qū)塊解交錯。本發(fā)明提供的區(qū)塊交錯與解交錯的方法,交錯時包括提供M個編碼符號執(zhí)行區(qū)塊交錯,其中第一個編碼符號存儲在一存儲器的一輸入起始地址對應的一存儲單元中,之后多個編碼符號依序存儲在上述輸入起始地址之后對應的多個存儲單元中。執(zhí)行交錯及執(zhí)行解交錯的兩端協(xié)定一列值(volumnvalue)(C),用在分割上述多個編碼符號。將上述多個編碼符號的數(shù)目(M)除以上述列值(C),計算得到一整數(shù)(R),以及一余數(shù)(W)。接著分割上述多個編碼符號為多個區(qū)塊,其中包括有R組區(qū)塊,各有C個編碼符號,假如W不等于零,還包括一第(R+1)組區(qū)塊,有W個編碼符號。由執(zhí)行交錯及執(zhí)行解交錯的兩端協(xié)定一順序?qū)φ毡?,包括C個對應值,用來指定執(zhí)行交錯的排列順序。依序?qū)⒚恳粋€上述多個對應值當作一參考值,從上述存儲器中讀出各組上述R組區(qū)塊中一對應上述參考值的編碼符號,如果上述參考值小于上述余數(shù)(W),更讀出上述第(R+1)組區(qū)塊中一對應上述參考值的編碼符號。最后,按照上述讀出編碼符號的順序,在每一上述多個編碼符號讀出時,將多個編碼符號從上述存儲器的一輸出起始地址對應的一存儲單元開始,依序?qū)懭胫蠖鄠€存儲單元中。本發(fā)明提供的區(qū)塊解交錯的地址產(chǎn)生的方法,包括提供M個編碼符號執(zhí)行區(qū)塊解交錯,其中第一個編碼符號存儲在一存儲器的一輸入起始地址對應的一存儲單元中,之后多個編碼符號依序存儲在上述輸入起始地址之后對應的多個存儲單元中。由執(zhí)行交錯及執(zhí)行解交錯的兩端協(xié)定一列值(C)。將上述多個編碼符號的數(shù)目(M)除以上述列值(C),計算得到一整數(shù)(R),以及一余數(shù)(W)。由執(zhí)行交錯及執(zhí)行解交錯的兩端協(xié)定一順序?qū)φ毡恚–個對應值,用來指定交錯的排列順序。接著,分割上述多個編碼符號為對應上述C個對應值的C組區(qū)塊,各組上述區(qū)塊的上述對應值與上述余數(shù)比較,決定各組上述區(qū)塊包括R或(R+1)個編碼符號。這時將每一上述多個編碼符號依序從上述存儲器中讀出,再依序?qū)⒏鹘M上述區(qū)塊的上述對應值當作一參考值,以上述存儲器中一輸出起始地址結(jié)合上述參考值為開始存儲單元,將各組上述區(qū)塊的上述多個編碼符號,以R為間隔寫入上述存儲器的多個存儲單元中。本發(fā)明還公開一種實施執(zhí)行區(qū)塊交錯及解交錯的地址發(fā)生器,該地址發(fā)生器可被劃分為數(shù)個功能塊,其中包括一輸入功能塊、一存儲重迭功能塊、一計算地址功能塊、以及一輸出功能塊。其中上述輸入功能塊用來接收多個輸入?yún)?shù),包括一輸入起始地址、一編碼符號的數(shù)目(M)、一列值(C)、一時鐘信號、以及一重設信號。上述存儲重迭功能塊,連接于上述輸入功能塊,利用上述多個輸入?yún)?shù)計算一輸出起始地址。上述計算地址功能塊,連接上述輸入功能塊與計憶重迭功能塊,用來計算上述多個編碼符號的輸出及輸入的地址。而輸出功能塊則是連接上述計算地址功能塊,輸出一寫入地址陣列與一讀出地址陣列。為了讓本發(fā)明的上述和其他目的、特征、和優(yōu)點能更明顯易懂,下文特舉一較佳實施例,并配合所附圖示,作詳細說明如下。圖1A表示區(qū)塊交錯前編碼符號以矩陣排列之范例;圖1B表示區(qū)塊交錯后編碼符號以矩陣排列之范例;圖2表示本發(fā)明之編碼符號在存儲體中讀出及寫入地址之范例;圖3為本發(fā)明之地址產(chǎn)生器的方塊圖;圖4為本發(fā)明之地址產(chǎn)生器的邏輯電路圖。符號說明200、220-存儲塊;300-輸入功能塊;302-計算地址功能塊;304-存儲重疊功能塊;306-輸出功能塊;308、408-輸入起始地址;310、410-編碼符號的數(shù)目(M);312、412-列值(C);314、414-時鐘信號;316、416-重設信號;318、418-寫入地址;320、420-讀出地址;400-除法單元;402、404-回路;406-地址修正功能塊具體實施例方式圖1A、圖1B、以及圖2為實施本發(fā)明的一個簡單的范例。本發(fā)明的區(qū)塊交錯與解交錯的方法,可先通過圖1A及圖1B解釋說明本發(fā)明所欲達到的效果。由于利用矩陣來說明本發(fā)明的方法較為簡單,因此圖1A與圖1B將原本如圖2中一串的存儲器地址以矩陣的形式表示。在此范例中,進行區(qū)塊交錯的編碼符號總數(shù)(M)為26,這些示意圖中編碼符號的號碼(0-25)代表編碼符號輸入的順序。此范例將列值(C)設為4,代表要將編碼符號分割成C個區(qū)塊,此列值由執(zhí)行交錯及執(zhí)行解交錯的兩端互相協(xié)定的。在這個例子中,編碼符號的總數(shù)26無法被列值4整除,除出來的整數(shù)為6(R=M/C),余數(shù)則為2(W=M%C)。圖1A描述編碼符號在進行區(qū)塊交錯前,在矩陣中以橫式做排列,也就是從左至右依次將矩陣的第0列到第6列(R)填入。因為這個范例的余數(shù)為2(W),最后一列(即第6列)僅有兩個編碼符號。此時,執(zhí)行交錯以及執(zhí)行解交錯的兩端會協(xié)定一個包括4(C)個對應值的順序?qū)φ毡?T0,T1,T2,T3)。此范例的順序?qū)φ毡頌?0,2,1,3),表示執(zhí)行交錯時會將原本行數(shù)0-3,改為此順序?qū)φ毡硭付ǖ捻樞?。如圖1B所示,矩陣中第0與第3行保留跟圖1A,即交錯前的位置相同,而第1與第2行則于交錯后互相對調(diào)。編碼符號在存儲器中的順序會是圖1B的矩陣中,從第0行由上到下,再同樣的將之后的每一行由上到下排列而成。將輸入的編碼符號按照該順序?qū)φ毡砼懦蛇@樣的順序即是執(zhí)行區(qū)決交錯所欲達到的。解交錯則執(zhí)行相反的任務,將接收到的編碼符號由第0行上至下排列,在依次排列每一行,排成圖1B的狀態(tài)。執(zhí)行區(qū)塊解交錯按照順序?qū)φ毡韺⑿械捻樞蜻€原至圖1A的狀態(tài)。再將圖1A從第0排由左至右,并同樣的依序?qū)⒚恳慌抛x出。在較清楚本發(fā)明的交錯及解交錯所欲達到的效果后,請參閱圖2,其中所要交錯總共有26個地址,列數(shù)為6,在本發(fā)明中可以26+26-6=46單位的存儲器來暫存交錯數(shù)據(jù),存儲塊200及存儲塊220各為具有26單位的存儲器,有6單位的存儲器重迭,表示可以節(jié)省一些存儲器容量。以下就交錯過程中所包含的四個步驟進一步說明本發(fā)明的方法步驟。步驟A中先將執(zhí)行區(qū)塊交錯的編碼符號存儲在存儲塊220中,也就是從地址20開始往下至地址45存儲26個編碼符號。本發(fā)明的方法只須將存儲在存儲器中的編碼符號按照一規(guī)律跳讀,讀出后再由地址0開始的存儲器開始依序填入即可,當數(shù)據(jù)由地址0寫入時,如有需要,可以馬上將數(shù)據(jù)傳送出去不需要等到所有的區(qū)塊交錯完成才送出去。步驟B則是以一定的規(guī)律,通過參考該順序?qū)φ毡碇械闹?,對應一參考點,并以C為間隔讀出存儲在存儲器中的編碼符號,再依讀出的順序從該輸出地址0開始寫入存儲器中。此范例中順序?qū)φ毡硎?0,2,1,3),即先將參考點設為地址20,參考點為第一個讀出的編碼符號,第二個讀出的編碼符號則位于輸入地址20后面4(C)個的地址。同樣地再跳4個地址即可讀出第三個編碼符號,重復此跳讀的操作直到讀出第R個編碼符號,如步驟B所示,由地址20讀出數(shù)據(jù)0后寫入地址0,而后由地址20后面4個的地址的地址24讀出數(shù)據(jù)4,依序?qū)懭氲刂?,依此規(guī)律直到讀區(qū)塊220的結(jié)尾,亦即如步驟B所示,直到數(shù)據(jù)24被寫入地址6,接下來按照順序?qū)φ毡碇械诙€數(shù)值,計算下一個參考點,此范例為地址22的第二個數(shù)值為2,因此新的參考點為輸入起始地址20之后的第二個地址,也就是對應此數(shù)值的輸出的第一個編碼符號行,亦依此規(guī)律直到讀區(qū)塊220的結(jié)尾;而有關區(qū)塊200與區(qū)塊220重迭的部分,如步驟C所示,當要開始由地址20開始寫入時,地址23讀出數(shù)據(jù)3后,在重迭部分的地址20-25的初始數(shù)據(jù)都已讀出,因此可以順利的寫入此重迭區(qū)塊,完成重迭的數(shù)據(jù)如步驟D所示,可以看到由地址0到地址25已經(jīng)把數(shù)據(jù)用預計的交錯方式重新排列。如圖1A的矩陣中每一行編碼符號的數(shù)目可能為6(R)個,也可能為7(R+1)個,因此當讀到順序?qū)φ毡碇忻恳粋€數(shù)值所對應的第6(R)個編碼符號時,檢驗是否需要讀第7(R+1)個編碼符號。檢驗的方法很簡單,將正在執(zhí)行的順序?qū)φ毡淼臄?shù)值,與編碼符號總數(shù)(M)除以列值(C)所得的余數(shù)比較,如果小于此余數(shù),則要多跳C個地址讀出該行的最后一個編碼符號。由于順序?qū)φ毡淼牡诙€數(shù)值2并不小于此范例的余數(shù)2(W),所以第6(R)個編碼符號便是對應該數(shù)值的最后一個編碼符號。以相同的方法,將順序?qū)φ毡砥溆嗟臄?shù)值一一執(zhí)行上述的步驟。這里特別要注意,執(zhí)行完區(qū)塊交錯的編碼符號寫入存儲器時,可與執(zhí)行區(qū)塊交錯之前存在存儲器的編碼符號重迭6(R)個存儲器地址,以節(jié)省6(R)個存儲器單元。輸出起始地址0計算的方法為輸入起始地址20減去編碼符號的數(shù)目26(M),再加上6(R)。執(zhí)行區(qū)塊解交錯時,同樣地,將要執(zhí)行解交錯的編碼符號從輸入起始地址20開始存儲。并在解交錯的時候?qū)⒚恳粋€編碼符號按照輸入的順序讀出,對應該順序?qū)φ毡碇忻恳粋€值各找出一參考點,并將讀出的編碼符號依次寫入?yún)⒖键c之后每間隔C個地址的存儲器中。如本范例的順序?qū)φ毡?0,2,1,3),第一參考點為輸出起始地址0,第二參考點為該第一參考點之后兩個地址,第三與第四參考點則分別為該第一參考點之后一個及三個地址。將讀出的第一個編碼符號寫入第一參考點,第二個編碼符號寫入與第一參考點間隔4(C)個地址的存儲器單元,之后跳4個地址寫入,直到執(zhí)行此寫入操作6(R)次。此時與執(zhí)行區(qū)塊交錯一樣,需要檢測是否要再跳4個地址寫入第7(R+1)個編碼符號。檢測的方法也與交錯時一樣,比較所對應順序?qū)φ毡淼闹?,如果比余?shù)(W)小,表示需要執(zhí)行第7次的寫入操作。接著將讀出的編碼符號寫入順序?qū)φ毡淼南乱粋€值所對應的參考點,以及其參考點之后每隔C個地址。對順序?qū)φ毡碇械拿恳粋€值都要做這樣的跳寫步驟,才可將所有編碼符號完成解交錯。解交錯端的存儲器中輸出起始地址和輸入起始地址之間的間隔與交錯端相同。本發(fā)明還公開一種執(zhí)行上述區(qū)塊交錯及解交錯的地址發(fā)生器。請參閱圖3,圖3將此地址發(fā)生器以簡易方塊圖作為說明。地址發(fā)生器的輸入功能塊300用于接收多個參數(shù),包括輸入起始地址308、編碼符號的數(shù)目(M)310、列值(C)312、時鐘信號314、以及重設信號316。輸入功能塊300將編碼符號的數(shù)目310除以列值312,得到整數(shù)R(M/C)與余數(shù)W(M%C)。存儲重迭功能塊304從輸入功能塊300得到輸入起始地址308、編碼符號的數(shù)目310、以及余數(shù)W,算出輸出起始地址。地址發(fā)生器的計算地址功能塊302中有兩個回路,并有一個順序?qū)φ毡?,按照順序?qū)φ毡淼闹担嬎忝恳粋€編碼符號的輸入與輸出的地址索引。每個編碼符號的輸入地址索引以輸入起始地址308為起點,得到一對應的讀出地址,而輸出地址索引則以輸出起始地址為起點,得到一對應的寫入地址。此計算地址功能塊302還包括地址修正功能塊,在計算寫入地址時,偵測順序?qū)φ毡碇袑闹凳欠裥∮谟鄶?shù)(W),以決定是否對輸出地址索引進行適當修正,確保編碼符號的余數(shù)也可被寫入正確的地址。最后輸出功能塊306將所計算出來的地址輸出成一讀出地址陣列以及一寫入地址陣列。圖4為實施第三圖的地址發(fā)生器的邏輯電路圖。方塊400將編碼符號的數(shù)目410除以列值412,得到一整數(shù)R與余數(shù)W。回路402與回路404結(jié)合地址修正功能塊406,計算每一個編碼符號讀出及寫入的地址。重設信號會在每一次執(zhí)行區(qū)塊交錯或解交錯的一開始,重設邏輯電路中鎖存器、延遲正反器、及回路402與404等邏輯單元。本發(fā)明的區(qū)塊交錯及解交錯的方法,可用簡單的程序說明解釋,而執(zhí)行本發(fā)明方法的地址發(fā)生器也是按照此程序的邏輯構(gòu)成的。下面舉例執(zhí)行區(qū)塊交錯及區(qū)塊解交錯的程序,其中C為設定好的列值、R為編碼符號總數(shù)除以C的整數(shù)值、W為其余數(shù)。Z為地址累積偏移值,用來修正輸出地址索引以得到正確的寫入地址。T_table為順序?qū)φ毡恚话珻個數(shù)值的陣列。傳送端的區(qū)塊交錯程序為Z=0;for(y=0;y<C;y++){T=T-_table[y];for(x=0;x<R;x++){out[y*R+x+Z]=in[x*C+T];}if(T<W){Z++;out[y*R+x+Z]=in[x*C+T];}}接收端的區(qū)塊解交錯程序為Z=0;for(y=0;y<C;y++){T=T_table[y];for(x=0;x<R;x++){out[x*C+T]=in[y*R+x+Z];}if(T<W){Z++;out[x*C+T]=in[y*R+x+Z];<!--SIPO<DPn="8">--><dpn="d8"/>}}綜上所述,雖然本發(fā)明已以較佳實施例公開如上,然其并非用以限定本發(fā)明,任何本領域技術人員,在不脫離本發(fā)明的精神和范圍的情況下,可進行各種更動與修改,因此本發(fā)明的范圍以所提出的權利要求限定的范圍為準。權利要求1.一種區(qū)塊交錯的地址產(chǎn)生的編碼方法,包括下列步驟提供M個編碼符號在一存儲器上執(zhí)行區(qū)塊交錯,上述存儲器包含一寫入存儲器與一讀出存儲器,上述寫入存儲器包括一輸出地址,上述讀出存儲器包括一輸入地址;將上述M個編碼符號依序存儲在上述輸入地址之后對應的M個存儲單元中;設定一列值(C),用來分割上述M個編碼符號,設定一順序?qū)φ毡?,包括C個對應值,用來指定執(zhí)行交錯的排列順序;依上述順序?qū)φ毡?,由C個對應值選擇一對應值,用來設定一參考地址,由該參考地址開始以C的間隔,由上述讀出存儲器的輸入地址,依序讀出編碼符號并依序的將讀出的編碼符號寫入上述寫入存儲器的上述輸出地址對應的存儲單元;重復上述步驟,直至上述順序?qū)φ毡淼腃個對應值均曾被設定成參考地址。2.如權利要求1所述的區(qū)塊交錯的地址產(chǎn)生的編碼方法,還包括將上述M個編碼符號的數(shù)目(M)除以上述列值(C),計算得到一整數(shù)(R)以及一余數(shù)(W)。3.如權利要求2所述的區(qū)塊交錯的地址產(chǎn)生的編碼方法,還包括分割上述M個編碼符號為多個區(qū)塊,其中包括有R組區(qū)塊,各有C個編碼符號,以及一余數(shù)W,假如W不等于零,還包括一第(R+1)組區(qū)塊,有W個編碼符號。4.如權利要求2所述的區(qū)塊交錯的地址產(chǎn)生的編碼方法,上述讀出存儲器與寫入存儲器,與從上述輸入地址重迭R個存儲單元。5.如權利要求2所述的區(qū)塊交錯的地址產(chǎn)生的編碼方法,其中上述輸出地址的計算方法由上述輸入地址,減去上述M個編碼符號的數(shù)目(M),再加上R。6.如權利要求2所述的區(qū)塊交錯的地址產(chǎn)生的編碼方法,還包括當計算到上述參考值小于上述余數(shù)(W)時,更讀出上述第(R+1)組區(qū)塊中一對應上述參考值的編碼符號。7.如權利要求1所述的區(qū)塊交錯的地址產(chǎn)生的編碼方法,其中上述順序?qū)φ毡硪约吧鲜隽兄?C)是由執(zhí)行交錯及執(zhí)行解交錯的兩端所協(xié)定的。8.一種執(zhí)行區(qū)塊解交錯的地址產(chǎn)生的編碼方法,包括下列步驟提供M個編碼符號在一存儲器上執(zhí)行區(qū)塊解交錯,上述存儲器包含一寫入存儲器與一讀出存儲器,上述寫入存儲器包括一輸出地址,而上述讀出存儲器包括一輸入地址;將上述M個編碼符號依序存儲在上述讀出存儲器的一輸入地址后對應的M個存儲單元中;設定一列值(C),用來分割上述M個編碼符號;設定一順序?qū)φ毡?,包括C個對應值,用來指定交錯的排列順序;分割上述M個編碼符號為對應上述C個對應值的C組區(qū)塊;將每一上述M個編碼符號依序從上述讀出存儲器的上述輸入地址開始讀出;以及依序?qū)⒏鹘M上述區(qū)塊的上述對應值當作一參考值,以上述寫入存儲器中上述輸出地址結(jié)合上述參考值開始,將各組上述區(qū)塊的上述M個編碼符號,以一特定間隔跳著寫入上述寫入存儲器中,直到填滿整個寫入存儲器。9.如權利要求8所述的執(zhí)行區(qū)塊解交錯的地址產(chǎn)生的編碼方法,還包括將上述M個編碼符號的數(shù)目(M)除以上述列值(C),計算得到一整數(shù)(R),以及一余數(shù)(W)。10.如權利要求9所述的執(zhí)行區(qū)塊解交錯的地址產(chǎn)生的編碼方法,其中寫入上述寫入存儲器時跳躍的上述特定間隔為整數(shù)R。11.如權利要求9所述的執(zhí)行區(qū)塊解交錯的地址產(chǎn)生的編碼方法,其中分割上述M個編碼符號為對應上述C個對應值的C組區(qū)塊時,還包括將各組上述區(qū)塊的上述對應值與上述余數(shù)(W)比較,決定各組上述區(qū)塊包括R或(R+1)個編碼符號,即如果上述對應值小于上述余數(shù)(W)時,對應的上述區(qū)塊便包括(R+1)個編碼符號。12.如權利要求9所述的執(zhí)行區(qū)塊解交錯的地址產(chǎn)生的編碼方法,其中上述M個編碼符號從上述輸入起始地址開始存儲的多個上述存儲單元,與從上述輸出起始地址開始存儲的多個上述存儲單元,重迭R個存儲單元。13.如權利要求9所述的執(zhí)行區(qū)塊解交錯的地址產(chǎn)生的編碼方法,其中上述輸出地址的計算方法是由上述輸入地址,減去上述M個編碼符號的數(shù)目(M),再加上R而得到的。14.一種執(zhí)行區(qū)塊交錯及解交錯的地址編碼器,對M個編碼符號執(zhí)行交錯與解交錯的編碼,包括一輸入功能塊,用來接收多個輸入?yún)?shù),上述多個參數(shù)包括一輸入地址、一編碼符號的數(shù)目(M)、一列值(C)、一時鐘信號、以及一重設信號;一存儲重迭功能塊,連接于上述輸入功能塊,利用上述多個參數(shù)計算一輸出地址;一計算地址功能塊,連接上述輸入功能塊與計憶重迭功能塊,用于計算讀與寫每一個上述M個編碼符號的地址;以及一輸出功能塊,連接上述計算地址功能塊,輸出一讀出地址陣列與一寫入地址陣列;其中上述計算地址功能塊利用兩個回路,得到每一個上述M個編碼符號的一輸入地址索引及一輸出地址索引,并結(jié)合上述輸入地址、上述輸出地址、以及執(zhí)行交錯及解交錯的兩端協(xié)定的一順序?qū)φ毡?,計算讀出與寫入每一個上述M個編碼符號所對應的地址。15.如權利要求14所述的執(zhí)行區(qū)塊交錯與解交錯的地址編碼器,其中上述計算地址功能塊還包括一地址修正功能塊,利用上述M個編碼符號的數(shù)目(M)被上述列值(C)除,而得到的一余數(shù)(W),在計算地址時,判斷是否將上述輸出地址索引進行適當修正。16.如權利要求14所述的執(zhí)行區(qū)塊交錯與解交錯的地址編碼器,其中上述計算地址功能塊利用二維邏輯方式計算上述M個編碼符號的地址,將地址以大小為C行R列的矩陣表示。17.如權利要求14所述的執(zhí)行區(qū)塊交錯與解交錯的地址編碼器,其中上述讀出地址陣列包括M個地址,對應一讀出存儲器中M個地址。18.如權利要求14所述的執(zhí)行區(qū)塊交錯與解交錯的地址編碼器,其中上述寫入地址陣列包括M個地址,對應一寫入存儲器中M個地址。19.如權利要求16所述的執(zhí)行區(qū)塊交錯與解交錯的地址編碼器,其中上述寫入地址陣列與讀出地址陣列,有R個重復的地址。全文摘要一種區(qū)塊交錯及解交錯的編碼方法,與執(zhí)行該方法的地址編碼發(fā)生器。本發(fā)明的方法可有效節(jié)省交錯及解交錯所費的時間,并可減少存儲器的使用。本發(fā)明的區(qū)塊交錯按照一預定的列值(C)將編碼符號分成數(shù)等份,并依序按照順序?qū)φ毡?T0TC-1)中多個對應值,先讀出每一等份的第T0個編碼符號,再讀出每一等份的第T1個編碼符號,重復直到讀完每一等份的第TC-1個編碼符號。之后再將此讀出的順序依序存儲在以一輸出起始地址為開始的存儲器中。區(qū)塊解交錯則依序?qū)⒚恳粋€輸入的編碼符號讀出,再根據(jù)同樣的列值與順序?qū)φ毡?,計算出對應的地址,還原編碼符號原本的順序。文檔編號H03M13/00GK1642018SQ20041000122公開日2005年7月20日申請日期2004年1月2日優(yōu)先權日2004年1月2日發(fā)明者楊秉忠申請人:明基電通股份有限公司