TWI235911B - Error correction code generator - Google Patents
Error correction code generator Download PDFInfo
- Publication number
- TWI235911B TWI235911B TW093104359A TW93104359A TWI235911B TW I235911 B TWI235911 B TW I235911B TW 093104359 A TW093104359 A TW 093104359A TW 93104359 A TW93104359 A TW 93104359A TW I235911 B TWI235911 B TW I235911B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- memory
- error correction
- correction code
- patent application
- Prior art date
Links
- 238000012937 correction Methods 0.000 title claims abstract description 115
- 230000015654 memory Effects 0.000 claims description 183
- 238000000034 method Methods 0.000 claims description 31
- 239000000463 material Substances 0.000 claims description 13
- 230000003068 static effect Effects 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 8
- 239000011159 matrix material Substances 0.000 claims description 8
- 230000010387 memory retrieval Effects 0.000 claims description 8
- 238000004519 manufacturing process Methods 0.000 claims 5
- 238000009434 installation Methods 0.000 claims 2
- 238000013500 data storage Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 20
- 238000005516 engineering process Methods 0.000 description 4
- 238000013075 data extraction Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/65—Purpose and implementation aspects
- H03M13/6561—Parallelized implementations
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2903—Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/29—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
- H03M13/2906—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
- H03M13/2909—Product codes
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
1235911 五、發明說明(1) 【發明所屬之技術領域】 本發明係關於一種錯誤更正碼產生裝置,特別是指一 種利用額外之靜態隨機存儲器(S R A Μ )或使用一多資 料單元編碼器(M u 1 t i — s y m b〇1 e n c o d e r )以改善編碼效率的錯誤更正碼產生裝置。 【先前技術】 按,傳統上錯誤更正碼產生的過程中,如多功能數位 碟片(DVD) 燒錄之前置編碼程序,所欲編碼的原始 資料通常會預先儲存於動態隨機存儲器(D R A Μ )。而 習知之動態隨機存儲器一般係利用行位址(R 〇 w Ad dress)及列位址(Column Address )來定位資料的位置,而該動態隨機存儲器之記憶體亦被 分割成複數個記憶區塊以對應該些行位址及列位址。 當錯誤更正碼產生裝置欲讀取該動態隨機存儲器内的 資料時,其會依序傳出一列位址信號及一行位址信號給該 動態隨機存儲器以定位所欲讀取的記憶區塊。然而,為使 資料的讀取能更有效率,一般習知之動態隨機存儲器皆具 有頁模式(P a g e — m 〇 d e )的功能。意即,若所欲 讀取的資料具有相同的列位址,即具有相同的記憶頁(m e m 〇 r y page),則只須在讀取第一筆資料時送 出列位址信號,其後之資料的讀取皆只須送出行位址信號 即可。 此外,由於動態隨機存儲器每次只會對具有同一列位 址的記憶區塊充電,以啟動該些具有同一列位址的記憶區
第6頁 1235911 五、發明說明(2) 域。因此,每當錯誤更正碼產生裝置欲使用具有不同列位 址的記憶區塊時,其不僅須再送出一列位址位號,並須等 待一預定的充電時間。故,當所欲讀取之資料的列位址切 換次數增加時,會使該動態隨機存儲器的效率大幅降低。 習知之錯誤更正碼的產生過程,如產生里德一所羅門 乘積碼(Reed — So 1 〇m〇 n Product Code ,即RSPC)之Ρ〇同位碼(Par i ty of Outer codes)的編碼過程,常常會需 要讀取具有不同列位址之資料區塊,而如上所述,由於使 用具有不同列位址的記憶區塊時,皆需等待一預定的充電 時間,故,產生錯誤更正碼的效率會因此受到限制,進而 導致傳統錯誤更正碼的產生過程須耗費相當長的時間。 請參閱第一圖,其係為一習知之錯誤更正碼的資料架 構圖,而該錯誤更正碼係為一里德一所羅門乘積碼。該錯 誤更正碼的資料主要分成三個主資料區塊,而該些主資料 區塊係由複數個子資料區塊組成,每個子資料區塊為一該 錯誤更正碼之運算單位符號(s y m b ο 1 ),其係具有 一個位元組(b y t e )的資料量,該些子資料區塊係分 別標示為{ B i,], i = 0〜2 0 7 , j = 0〜1 8 1 }。 其中,i=0〜191及j=0〜171的資料區塊 係為經過擾頻運算(s c r a m b 1 e )的原始資料;i 二1 9 2〜2 0 7及j二0〜1 7 1的資料區塊係為里德 一所羅門乘積碼的P〇同位碼;i = 0〜2 0 7及j = 1
1235911 五、發明說明(3) 7 2〜1 8 1的資料區塊係為里德一所羅門乘積碼的P I 同位碼(Parity of Inner codes )° 該P〇同位碼係針對該原始資料區塊的資料進行縱向 編碼’例如’編號為零之P〇行B 〇〜1 9 1,〇的P〇同位碼 係為B i 9 2〜2 〇 7,0 ;而該P I同位碼係針對該原始資料 區塊的資料進行橫向編碼,例如,編號為零之p I列B 〇 〇〜171的P I同位碼係為B 〇,172〜181。 請參閱第二圖,其係為一存於動態隨機存儲器中之經 過擾頻運算的原始資料位置圖。當欲進行編 碼時,錯誤 更正碼產生裝置會先產生一擾頻位元組序列(s e q u e nee of scramble bytes),以對 從主機(h o s t )所接收到之原始資料作擾頻運算,之 後其會將該經過擾頻運算的原始資料存於該動態隨機存儲 器中,最後該錯誤更正碼產生裝置會從動態隨機存儲器中 取出該經過擾頻運算的原始資料,並依據里德一所羅門乘 積碼的規格進行編碼。
對照第一圖及第二圖所示,可了解該經過擾頻運算的 原始資料於動態隨機存儲器中的位址,須注意的是該動態 隨機存儲器是以字元組(w 〇 r d ,其所記錄的資料量同 等於兩個位元組)為單位,且該經過擾頻運算之原始資料 的儲存次序係為(B Q,Q’ B Q,1’ · · · B 〇 > 1 7 1 5 B I 0…)。 而依據該經過擾頻運算的原始資料的儲存次序,在進
1235911 五、發明說明(4) 行里德一所羅門乘積碼之P〇同位碼的編碼程序時,欲進 行編碼之資料的列位址切換的情況佔大多數。因此,很明 顯的,在進行里德一所羅門乘積碼之P〇同位碼的編碼程 序時,該錯誤更正碼產生裝置會遭受效率較低的問題(以 下之說明皆只針對此一問題作闡述)。 請參閱第三圖,其係為一習知之錯誤更正碼產生裝置 的方塊圖。該錯誤更正碼產生裝置3 0係包括一第一記憶 體(DRAM) 31 、一多工器32及一編碼器33 。在 進行編碼的過程中,主機會傳送一原始資料給該錯誤更正 碼產生裝置3 0。而該錯誤更正碼產生裝置3 0會對所接 收到之原始資料作擾頻運算,並將該經過擾頻運算的原始 資料存於該第一記憶體3 1中。 之後,該錯誤更正碼產生裝置3 0會從該第一記憶體 3 1中,逐行的將資料取出以進行P〇同位碼的編碼。然 而,如第二圖所示,該第一記憶體3 1係以字元組為單元 ,是以每筆所取出的資料量皆為二個位元組。因此,該錯 誤更正碼產生裝置30會使用該多工器32 ,以取出其中 一個所須使用之位元組的資料,並將之傳給該編碼器3 3 以進行編碼。 請再參閱第二圖,依據上述之編碼架構及方法,要完 成P〇同位碼的編碼^須經過1 7 2次縱向編碼。而若要 進行一次縱向編碼,例如對B Q〜1 9 i,〇的資料進行編碼以 產生其P〇同位碼B 192〜207,〇’其須經過1 3 5次跨列 位址之資料擷取,以及5 7次非跨列位址的資料操取。是
1235911 五、發明說明(5) 以,要完成P〇同位碼的編碼,總共須經過1 7 2 X 1 3 5二2 3 2 2 0次跨列位址之資料擷取,且須經過1 7 2 X 5 7 = 9 8 0 4次非跨列位址的資料擷取。由於跨列位 址之資料擷取須耗費較多的時間,而此種編碼的方式在大 多數的情況下皆須跨列位址以擷取資料,是以此編碼架構 的效率很低,會耗費許多時間。 因此,本案發明人有感於上述習知/先前技術之缺失 ,乃提出一種新的設計,能合理且有效排除其缺失。 【發明内容】 本發明之主要目的,在於提供一種錯誤更正碼產生裝 置及方法,其係藉由減少動態隨機存儲器之跨列擷取資料 的運作次數,以改善編碼效率並減少編碼所須耗費的時間 〇 本發明之再一目的,在於在於提供一種錯誤更正碼產 生裝置,其係利用額外之靜態隨機存儲器來減少動態隨機 存儲器之跨列擷取資料的運作次數,以改善編碼效率並減 少編碼所須耗費的時間。 本發明之又一目的,在於在於提供一種錯誤更正碼產 生裝置,其係藉由使用一多資料單元編碼器來減少動態隨 機存儲器之跨列擷取資料的運作次數,以改善編碼效率並 減少編碼所須耗費的時間。 為達上述之目的,本發明係提供一種錯誤更正碼產生 裝置,其包括一第一記憶體(動態隨機存儲器)、一第二 記憶體(靜態隨機存儲器)、一記憶體擷取控制器及一編
第10頁 1235911
五、發明說明(6) - 一 碼器。在編碼的過程中,義 數P 0行的原始資料,並二=第-記憶體?先讀出複 ,該第-記憶ΙΪ (動態隨機f :貧料暫存於該第二記憶體 為達上述之目的,本於 裝置,其包括-記憶體:t供-種錯誤更正,產生 取控制器及一多資料單元編=:機存儲器)、一記憶體擷 從該記憶體直接讀出複數:n“。I編碼的過程中,藉由 些資料送給該多資料單元绝£仃的原始資料,並直接將該 儲器)之跨列擷取資料的、ί:器,該記憶體(動態隨機存 I…吏t審查數可有效的被降低。 内容,謹請參閱以下右M V瞭解本發明之特徵與技術 【實施方式】 關本發明之詳細說明與所附圖式。 請參閱第四圖,i孫 I圖。如圖所示,本♦二二f本發明之一較佳實施例的方塊 0 ,其係包括一第I記=提供—種錯誤更正碼產生裝置5 j記憶體拍員取控制哭5 q 體5 1 、一第一記憶體5 2、一 憶體5 1係為動:隨碼器5 4。其中’該第—記 靜態隨機存儲哭f 存儲态,而該第二記憶體5 2係為 1 *同上述:』Γ”'ΑΜ)。 _原始資料給該錯誤|術,於編碼的過程中,主機會傳送 I碼產生裝置5 〇會對正碼產生裝置5 0 ,而該錯誤更正 將該經過擾頻運算的所接收到之原始資料作擾頻運算,並 即將該經過擾頻運I原始資料存於該第一記憶體5 1中, 的原始資料存於一動態隨機存儲器中 第11頁 1235911 五、發明說明(7) 。該經過擾頻運算的原始資料為一或多個資料區塊,該資 料區塊係具有複數資料行及複數資料列以形成一資料矩陣 ,並以一適當的排列方式儲存於該動態隨機存儲器中,使 得該資料區塊中大部分資料列的大部分資料的儲存位址位 於該第一記憶體5 1的同一記憶頁’以減少將該資料區塊 儲存於該動態隨機存儲器所需之時間。 而在進行P〇同位碼的編碼時,該記憶體擷取控制器 5 3會控制該第一記憶體5 1及第二記憶體5 2 ,以將部 分欲進行編碼的原始資料從該第一記憶體5 1讀出,並轉 存至該第二記憶體5 2。在實行時,該記憶體擷取控制器 5 3會從該第一記憶體5 1讀出複數P〇行的原始資料, 並將該些資料存入該第二記憶體5 2。之後,該編碼器5 4會由該第二記憶體5 2逐行讀出該些P〇行的原始資料 ,並進行P〇同位碼的編碼。 由於該第二記憶體5 2係為靜態隨機存儲器,其存取 的速度較動態隨機存儲器快,即比該第一記憶體5 1快, 因此該第二記憶體5 2並不會降低編碼的速率。 此外,由於本實施例在運作時,會先從該第一記憶體 5 1讀出複數P〇行的原始資料,並將該些資料存入該第 二記憶體5 2以供該編碼器5 4使用,而非直接由該第一 記憶體5 1將各個P〇行逐行讀出,是以本實施例能有效 的減少該第一記憶體5 1跨列擷取資料的運作次數,因此 ,本實施例可提高資料的擷取效率,進而可使編碼所須耗 費的時間大幅降低。
第12頁 1235911 五、發明說明(8) 為使本實施例能更清楚,請參閱第五圖,其係為本發 明之一較佳實施例之動態記憶體的資料擷取次序示意圖。 如圖所示,本實施例係以一能儲存8個P〇行的靜態隨機 存儲器來作說明,是以當欲進行P〇同位碼的編碼時,該 記憶體擷取控制器5 3會依圖示之箭頭的方向,依序從該 第一記憶體5 1讀出8個P〇行的原始資料,並將該些資 料存入該第二記憶體5 2。 由於,本實施例係先從該第一記憶體5 1讀出8個P 〇行的原始資料,並將該些資料存入該第二記憶體5 2以 供該編碼器5 4使用,而從該第一記憶體5 1讀出8個P 〇行的原始資料係須經過1 3 5次跨列位址之資料擷取, 及(1 9 2 * 4 — 1 3 5 )次非跨列位址的資料擷取。是 以,要完成P〇同位碼的編碼,總共須經過(1 7 2 / 8 )X 1 3 5与2 9 0 3次跨列位址之資料擷取,且須經過 (172/8) X (192*4-135) ^13640 次非跨列位址的資料擷取。 再者,於實際之應用本發明時,除了如第五圖所示之 讀取該第一記憶體5 1的順序之外,亦可有多種讀出順序 ,只要該讀出順序儘量能使得位於同一列位址之資料被連 續讀取,就能減少讀取該第一記憶體5 1所需之時間,例 如該Ί買出順序可為{ B 0 > 8 m + 0 B 〇,8m+i B ο , 8 m + 4 Β Ο » 8 m + 5 Β 〇,8m+2 Β 〇 > 8 m + 3 Β 〇,8m+6 Β 〇,8m 一 · · · i- 〇 + 7 i 此外,當第一記憶體5 1的一記憶頁(即具有同一列
第13頁 1235911 五、發明說明(9) 位址者)内可容納多個P I列之資料時,只要讀取第一記 憶體5 1的順序儘量能使得該第一記憶體5 1内儲存位址 相鄰之多個P I列内的資料被連續讀取,就能減少讀取該 第一記憶體5 1所需之時間。以第二圖中所示的記憶頁為 例,一記憶頁内約可容納兩個P I列之資料,是以,第五 圖所不之讀取順序亦可換成為{ B 〇,8m+0 B 1 > 8 m + 0 B 〇,8m+l B l,8m+l B 0,8m+2 B l,8m+2 B 〇,8m + 3 B 1 , 8m+ 3 …},仍然可以減少讀取該第一記憶體 5 1所需之時間。 與習知技術比較,本實施例之跨列位址之資料擷取數 目明顯降低許多,是以本發明確可提高資料的擷取效率, 並且可使編碼所須耗費的時間大幅降低。 請參閱第六圖,其係為本發明之另一較佳實施例的方 塊圖。如圖所示,本發明係提供一種錯誤更正碼產生裝置 6 0 ,其係包括一第一記憶體6 1 、一第二記憶體6 2 、 一記憶體擷取控制器6 3、及一編碼器6 4。其中,該第 一記憶體6 1係為動態隨機存儲器,而該第二記憶體6 2 係為靜態隨機存儲器。 如同第四圖所述之實施例,本實施例於編碼的過程中 ,主機一樣會傳送一原始資料給該錯誤更正碼產生裝置6 0 ,而該錯誤更正碼產生裝置6 0會對所接收到之原始資 料作擾頻運算,並將該經過擾頻運算的原始資料存於該記 憶體6 1中。 之後,該憶體擷取控制器6 3會控制該記憶體6 1及
第14頁 1235911 五 第 原 器 6 出 發明說明(10) 一 二記憶體6 2 ,以從該記憶體6 1擷取出複數ρ Ω — :資料,,該…行之其中-ρ ◦行直接送至::: 4先行編碼,並轉存該些剩餘ρ 〇行至 _ ▲ 2。之後,ι編碼器“會由該第一憶體 該些剩餘Ρ ◦行的原於資料,並弟隹:體6 2逐行讀 摩始員卄亚進仃Ρ〇同位碼的編碼 不同ί:2t ί計的概念係與第四圖之實施例相同,所 Ρ η者在於本貫施例直接將自該記情體fi 1掏讯山 斤 P〇行中之其中一 ρ n —、、,石分己U體b 1擷取出複數 少所需儲存2第二2 =二二編碼為、6 4先行編碼,減 體6 2的硬體成本°。思體6 2的資料量’ α降低第二記憶 晴參閱第七圖,後炎士路 圖。如圖所示,本發明U : 另一較佳實施例的方塊 2,其係包括一記‘體7、’、_種錯誤更正碼產生裝置7 :多資料單元編碼:”盆φ §己憶體榻取控制器7 2及 態隨機存儲器。 7 3。其中,該記憶體7 1係為一動 ’主機二:會;:=之實她例’本實施例於編碼的過程中 〇 ,而該錯誤更i:原始資料給該錯誤更正碼產生裝置7 料作擾頻運算,”:產生裝置7 〇會對所接收到之原始資 憶體7 1中。之;將該經過擾頻運算的原始資料存於該記 體7 1 ,以從該:該憶體操取控制器7 2會控制該記憶 ,每次從該記t音俨=體7 1擷取出複數Ρ〇行的原始資料 料輩# ^ ^ 7 1 1235911 五、發明說明(11) 下次讀取該記憶體7" 1之前’完成該字元組所對應之編碼 動作。 同樣的,由於本實施例在運作時,其係從該記憶體7 1中讀出複數P〇行的原始資料並分別送到該多資料單元 編碼器7 3進行編碼,而非從該記憶體7 1將各個P〇行 逐行讀出,是以本實施例能有效的減少該記憶體7 1跨列 掘取資料的運作次數,並且可使編碼所須耗費的時間大幅 降低。 本實施例之設計的概念係與第四圖之實施例相同,所 不同者只在於第四圖之實施例係利用一靜態隨機存儲器, 來降低動態隨機存儲器所須之跨列擷取資料的運作次數, 而本實施例係以一多資料單元編碼器來降低動態隨機存儲 器所須之跨列擷取資料的運作次數。 請參閱第八圖,其係為該多資料單位編碼器7 3之一 較佳實施例的方塊圖,其中該記憶體7 1之一字元組包含 兩個資料單位,該多資料單位編碼器7 3從該記憶體7 1 讀取4個P〇行的原始資料{ B i,4 n + j, i = 0〜1 9 1 , j = 0〜3 }以進行編碼,讀取該些Ρ〇行的順序 為{ B 〇’4η + 〇 Β 〇 » 4 η + 1 Β Ο 5 4 η + 2 Β Ο 5 4 η 4- 3 ^ 1 4 η + Ο Β 1,4η+1 Β 1,4η + 2 Β + 。如圖所示 ,該多資料單位編碼器7 3包括一第一編碼器8 1 、一第 二編碼器8 2 、一第三記憶體8 3 、及一第四記憶體8 4 。其中,該第一編碼器8 1用以對該P〇行{ B ,,4 n + 〇, i = 0〜1 9 1 }進行編碼,該第二編碼器8 2用以對
第16頁 1235911 五、發明說明(12) 該P〇行{ B 1,4 η + !, i二0〜1 9 1 }進行編碼,該 第三編碼器8 3用以對該Ρ〇行{ B i,4 n f 2 ’ i二0〜 1 9 1 }進行編碼,而該第四編碼器8 4用以對該Ρ〇行 { B i,4 η + 3, i二〇〜1 9 1 }進行編碼。 請參閱第九圖,其係為該多資料單位編碼器7 3之另 一較佳實施例的方塊圖,其中該記憶體7 1之一字元組包 含兩個資料單位,該多資料單位編碼器7 3從該記憶體7 1讀取4個P〇行的原始資料{ B 1,4 n + j, i二0〜1 9 1, j = 0〜3 }以進行編碼,讀取該些Ρ〇行的順 序為{ Β 〇,4η + 0 Β 〇,4η+1 Β Ο > 4 η + 2 Β Ο » 4 η + 3 Β 1,4η + 〇 Β 1 , 4 η + 1 Β 1 , 4 η + 2 Β !,〇 +,··}。如圖所 示,該多資料單位編碼器7 3包括一第一編碼暫存器9 1 、一第二編碼暫存器9 2 ' —第三編碼暫存器9 3 、一第 四編碼暫存器9 4 、一第一多工器9 5 、一編碼組合邏輯 電路9 6 、及第二多工器9 7 。其中,該編碼組合邏輯電 路9 6為編碼運算所需之組合邏輯電路,該第一編碼暫存 器9 1配合該編碼組合邏輯電路9 6 ,用以對該Ρ〇行{ B i,4 η + 〇, i = 0〜1 9 1 }進行編碼;該第二編碼暫 存器9 2配合該編碼組合邏輯電路9 6 ,用以對該Ρ〇行 { Β 1,4 η + 1, i二0〜1 9 1 }進行編碼;該第三編碼 暫存器9 3配合該編碼組合邏輯電路9 6 ,用以對該P〇 行{ B i,4 η + 2, i = 0〜1 9 1 }進行編碼;而該第四 編碼暫存器9 4配合該編碼組合邏輯電路9 6 ,用以對該 Ρ〇行{ B i,4 η + 3, i二0〜1 9 1 }進行編碼。請參
第17頁 1235911 五、發明說明(13) 閱第十圖,其係為本實施例的資料編碼示意圖,其中該多 資料單位編碼器7 3會在每次讀取該記憶體7 1後進行兩 次對單一資料單元的編碼,以完成該字元組中的兩個資料 單元所對應之編碼動作。 再者,於實際之應用本發明時,除了如第八圖之實施 例中利用多個編碼器,以及第九圖之實施例中在一次讀取 該記憶體7 1動作中進行多次編碼動作外,亦可利用其他 如平行化(parallei processing) 或管線化(p i p e 1 i n i n g )等習知技巧來加速該 多資料單位編碼器7 3的編碼速度,使其可以以在一個讀 取該記憶體7 1的動作之時間内,完成所讀取的該字元組 對應之編碼動作。 綜上所陳,本發明所提供之一種錯誤更正碼產生裝置 ,確可解決習知技術之缺點,實屬於一具有高度實用價值 之發明,具功效上的增進,符合發明專利之申請要件,爰 依專利法提出申請,敬請詳予審查並賜准本案專利,以保 障發明者之權益。 惟以上所述者,僅係本發明之較佳可行的實施例而已 ,非因此即局限本發明之權利範圍,舉凡運用本發明說明 書及圖式内容所為之等效結構變化,均理同包含於本發明 之權利範圍内,合予陳明。
第18頁 1235911 圖式簡單說明 第一圖 係為一習知之錯誤更正碼的資料架構圖。 第二圖 係為一存於動態隨機存儲器中之經過擾頻運算的 原始資料位置圖。 第三圖 係為一習知之錯誤更正碼產生裝置的方塊圖。 第四圖 係為本發明之一較佳實施例的方塊圖。 第五圖 係為本發明之一較佳實施例之動態記憶體的資料 擷取次序示意圖。 第六圖 係為本發明之另一較佳實施例的方塊圖。 第七圖 係為本發明之另一較佳實施例的方塊圖。 第八圖 係為本發明之多資料單位編碼器之一較佳實施例 的方塊圖。 第九圖 係為本發明之多資料單位編碼器之另一較佳實施 例的方塊圖。 第十圖 係為本發明之多資料單位編碼器的資料編碼示意 圖。 【圖式中之參考號數】 錯誤更正碼產生裝置 30 第一記憶體 31 多工器 32 編碼器 33 錯誤更正碼產生裝置 50 第一記憶體 51 第二記憶體 52
第19頁 1235911
第20頁 1235911
第21頁
Claims (1)
1235911 六、申請專利範圍 1 、一種錯誤更正碼產生裝置,其係用以對具有至少一資 料區塊的原始資料進行編碼,以產生一對應之錯誤更 正碼,該資料區塊係具有複數資料行及複數資料列以 形成一資料矩陣,該錯誤更正碼產生裝置包括: 一第一記憶體,其係支援頁模式(P a g e — m 〇 d e )功能,且具有複數記憶頁以接收並儲存該資料 區塊,而該資料區塊係以一排列方式儲存於該第一記 憶體,該排列方式使得大部分資料列之大部分資料的 儲存位址具有一區域性’該區域性使得該貢料區塊之 資料列之大部分資料係儲存於同一記憶頁上; 一第二記憶體,其係用以從該第一記憶體讀取及儲 存至少二個資料行,其中讀取該第一記憶體之動作係 包含複數次從同一資料列内連續讀取至少二個資料單 位; 一編碼器,其係用以從該第二記憶體讀取至少一個 料行以進行編碼;及 一記憶體擷取控制器,其係用以控制該第一記憶體 之資料的存取。 2、如申請專利範圍第1項所述之錯誤更正碼產生裝置, 其中該第一記憶體係為動態隨機存儲器(D R A Μ ) ο 3 、如申請專利範圍第1項所述之錯誤更正碼產生裝置, 其中該第二記憶體係為靜態隨機存儲器(S R A Μ )
第22頁 1235911 六 4 置 裝 生 產 碼 正 更 誤 錯 之 述 所 項 1 第 圍 範 利 專 圍 範¾ 專 請如 中 6 Θ R d (ο 碼C 積 乘t 門 C 羅U 所d I ο 德r 里P 為 係 η 碼ο 正m 更 ο 誤1 錯ο 該S 中一 其d f 〇 y t •1 Γ a p ( o 碼} 位 s 同 e 〇 d p o 之c XJ c r p e St Ru 即〇 V 置D 裝c 生片 產碟 碼位 正數 tfn >bb 多 A月 誤功 錯多 之護 述保 所以 項用 4係 第碼 圍正 範更 利誤 專錯 請該 申中 如其 置號 裝符 生位 產單 碼算 正運 更之 誤碼 錯正 之更 述誤 所錯 項一 1為 第係 圍位 。範單 料利料 資專資 的請該 N 申中 D如其 6 資一 少 至 有 具 對 以 用 係 其 置 裝 生 。產 }碼 1 正 ο 更 b誤 m錯 y種 s - Λ 7 更以 誤列 錯料 之資 應數 對複 一及 生行 產料 以資 ,數 碼複 編有 行具 進係 料塊 資區 始料 原資 的該 塊, 區碼 料正 數以 複係 • ·有塊 括具區 包且料 置,資 裝能該 生功而 產式, 碼模塊 正頁區 更援料 誤支資 錯係該 該其存 ,,儲 陣體並 矩憶收 料記接 資一以 一 第頁 成一憶 形 記 大,儲 ⑼付^ 使域料 式區資 方一分 列有部 排具大 該址之 ,位列 體存料 憶儲資 記的之 一料塊 第資區 該分料 於部資 存大該 儲之得 式列使 方料性 列資域 排分區 一部該 同第 於一 存 己 古口 儲 並 取 讀 體 意 記一 第 該 從 以 用 係 •,其 上, 頁體 意意 己 古口 意 記 二 第 該 或 體 憶 己 古口 1 第 該 從 以 •,用 行係 料其 資’ 個器 一碼 少編 至一 存
1235911 六、申請專利範圍 體讀取至少一個資料行以進行編碼;及 一記憶體擷取控制器,其係用以控制該第一記憶體 之資料的存取; 其中,讀取該第一記憶體之動作係包含複數次從同一 資料列内連續讀取至少二個資料單位。 8 、如申請專利範圍第7項所述之錯誤更正碼產生裝置, 其中該第一記憶體係為動態隨機存儲器。 9 、如申請專利範圍第7項所述之錯誤更正碼產生裝置, 其中該第二記憶體係為靜態隨機存儲器。 1 0、如申請專利範圍第7項所述之錯誤更正碼產生裝置 ,其中該錯誤更正碼係為里德一所羅門乘積碼之P 〇同位碼。 1 1 、如申請專利範圍第1 0項所述之錯誤更正碼產生裝 置,其中該錯誤更正碼係用以保護多功能數位碟片 的資料。 1 2、如申請專利範圍第7項所述之錯誤更正碼產生裝置 ,其中該資料單位係為一錯誤更正碼之運算單位符 號(symbol) 〇 1 3 、一種錯誤更正碼產生裝置,其係用以對具有至少一 資料區塊的原始資料進行編碼,以產生一對應之錯 誤更正碼,該資料區塊係具有複數資料行及複數資 料列以形成一資料矩陣,該錯誤更正碼產生裝置包 括: 一記憶體,其係支援頁模式功能,且具有複數記
第24頁 1235911 六、申請專利範圍 憶頁以接收並儲存該資料區塊,而該資料區塊係以 一排列方式儲存於該記憶體,該排列方式使得大部 分資料列之大部分資料的儲存位址具有一區域性, 該區域性使得該資料區塊之資料列之大部分資料係 儲存於同一記憶頁上; 一多資料單元編碼器,其係用以從該記憶體讀取 複數個資料行以進行編碼,每次從該記憶體讀取之 資料為一字元組(w 〇 r d ),該字元組包含複數 個資料單位,該多資料單位編碼器可以在下次讀取 記憶體之前,完成該字元組所對應之編碼動作,其 中讀取該記憶體之動作係包含複數次從同一資料列 内連續讀取至少二個資料單位;及 一記憶體擷取控制器,其係用以控制該記憶體之 資料的存取。 1 4、如申請專利範圍第1 3項所述之錯誤更正碼產生裝 置,其中該記憶體係為動態隨機存儲器。 1 5 、如申請專利範圍第1 3項所述之錯誤更正碼產生裝 置,其中該錯誤更正碼係為里德一所羅門乘積碼之 P〇同位碼。 1 6 、如申請專利範圍第1 5項所述之錯誤更正碼產生裝 置,其中該錯誤更正碼係用以保護多功能數位碟片 的貢料。 1 7、如申請專利範圍第1 3項所述之錯誤更正碼產生裝 置,其中該資料單位係為一錯誤更正碼之運算單位
第25頁 1235911 六、申請專利範圍 符號(symbol)。 1 8 、一種錯誤更正碼產生方法,其係用以對具有至少一 資料區塊的原始資料進行編碼,以產生一對應之錯 誤更正碼,該資料區塊係具有複數資料行及複數資 料列以形成一資料矩陣,該錯誤更正碼產生方法包 括: 提供一第一記憶體以接收並儲存該資料區塊,其 中,該第一記憶體係支援頁模式功能且具有複數記 憶頁,而該資料區塊係以一排列方式儲存於該第一 記憶體,該排列方式使得大部分資料列之大部分資 料的儲存位址具有一區域性,該區域性使得該資料 區塊之資料列之大部分資料係儲存於同一記憶頁上 j 提供一第二記憶體以從該第一記憶體讀取並儲存 至少二個資料行,其中讀取該第一記憶體之動作係 包含複數次從同一資料列内連續讀取至少二個資料 單位; 提供一編碼器以從該第二記憶體讀取至少一個資 料行並進行編碼;及 提供一記憶體擷取控制器以控制該第一記憶體之 資料的存取。 1 9 、如申請專利範圍第1 8項所述之錯誤更正碼產生方 法,其中該第一記憶體係為動態隨機存儲器。 2 0 、如申請專利範圍第1 8項所述之錯誤更正碼產生方
第邡頁 1235911 六、申請專利範圍 法,其中該第二記憶體係為靜態隨機存儲器。 2 1 、如申請專利範圍第1 8項所述之錯誤更正碼產生方 法,其中該錯誤更正碼係為里德一所羅門乘積碼之 P〇同位碼 。 2 2 、如申請專利範圍第2 1項所述之錯誤更正碼產生方 法,其中該錯誤更正碼係用以保護多功能數位碟片 的資料。 2 3 、如申請專利範圍第1 8項所述之錯誤更正碼產生方 法,其中該資料單位係為一錯誤更正碼之運算單位 符號(s y m b ο 1 )。 2 4、一種錯誤更正碼產生方法,其係用以對具有至少一 資料區塊的原始資料進行編碼,以產生一對應之錯 誤更正碼,該資料區塊係具有複數資料行及複數資 料列以形成一資料矩陣,該錯誤更正碼產生方法包 括: 提供一記憶體以接收並儲存該資料區塊,其中, 該記憶體係支援頁模式功能,且具有複數記憶頁, 而該資料區塊係以一排列方式儲存於該記憶體,該 排列方式使得大部分資料列之大部分資料的儲存位 址具有一區域性,該區域性使得該資料區塊之資料 列之大部分資料係儲存於同一記憶頁上; 提供一多資料單元編碼器以從該記憶體讀取複數 個貢料行並進行編碼^每次從該記憶體讀取之貧料 為一字元組,該字元組包含複數個資料單位,該多
第27頁 1235911 六、申請專利範圍 資料單位編碼器可以在下次讀取該記憶體之前,完 成該字元組所對應之編碼動作,其中讀取該記憶體 之動作係包含複數次從同一資料列内連續讀取至少 二個資料單位;及 提供一記憶體擷取控制器以控制該記憶體之資料 的存取。 2 5 、如申請專利範圍第2 4項所述之錯誤更正碼產生方 法,其中該記憶體係為動態隨機存儲器。 2 6 、如申請專利範圍第2 4項所述之錯誤更正碼產生方 法,其中該錯誤更正碼係為里德一所羅門乘積碼之 P〇同位碼。 2 7、如申請專利範圍第2 6項所述之錯誤更正碼產生方 法,其中該錯誤更正碼係用以保護多功能數位碟片 的資料。 2 8、如申請專利範圍第2 4項所述之錯誤更正碼產生方 法,其中該資料單位係為一錯誤更正碼之運算單位 符號(symbol)。 2 9 、一種錯誤更正碼產生裝置,其係用以對具有至少一 資料區塊的原始資料進行編碼,以產生一對應之錯 誤更正碼,該資料區塊係具有複數資料行及複數資 料列以形成一資料矩陣,該錯誤更正碼產生裝置包 括: 一第一記憶體,其係支援頁模式功能,且具有複 數記憶頁以接收並儲存該貧料區塊,而該貪料區塊
第28頁 1235911 六、申請專利範圍 係以一排列方式儲存於該第一記憶體,該排列方式 使得大部分資料列之大部分資料的儲存位址具有一 區域性,該區域性使得該資料區塊之資料列之大部 分資料係儲存於同一記憶頁上; 一第二記憶體,其係用以從該第一記憶體讀取並 儲存至少二個資料行,其中讀取該第一記憶體之動 作係包含複數次從複數個在該第一記憶體内儲存位 址相鄰之資料列内連續讀取至少二個資料單位; 一編碼器,其係用以從該第二記憶體讀取至少一 個資料行以進行編碼;及 一記憶體擷取控制器,其係用以控制該第一記憶 體之資料的存取。 3 0、如申請專利範圍第2 9項所述之錯誤更正碼產生裝 置,其中該第一記憶體係為動態隨機存儲器。 3 1 、如申請專利範圍第2 9項所述之錯誤更正碼產生裝 置,其中該第二記憶體係為靜態隨機存儲器。 3 2 、如申請專利範圍第2 9項所述之錯誤更正碼產生裝 置,其中該錯誤更正碼係為里德一所羅門乘積碼之 P〇同位碼。 3 3 、如申請專利範圍第3 2項所述之錯誤更正碼產生裝 置,其中該錯誤更正碼係用以保護多功能數位碟片 的資料。 3 4、如申請專利範圍第2 9項所述之錯誤更正碼產生方 法,其中該資料單位係為一錯誤更正碼之運算單位
第29頁 1235911 六、申請專利範圍 符號(symbol)。 3 5 、一種錯誤更正碼產生裝置,其係用以對具有至少一 資料區塊的原始資料進行編碼,以產生一對應之錯 誤更正碼,該資料區塊係具有複數資料行及複數資 料列以形成一資料矩陣,該錯誤更正碼產生裝置包 括: 一第一記憶體,其係支援頁模式功能,且具有複 數記憶頁以接收並儲存該資料區塊,而該資料區塊 係以一排列方式儲存於該第一記憶體,該排列方式 使得大部分資料列的大部分資料的儲存位址具有一 區域性,該區域性使得該資料區塊之資料列的該大 部分資料係儲存於同一記憶頁上; 一第二記憶體;其係用以從該第一記憶體讀取並 儲存至少一個資料行; 一編碼器,其係用以從該第一記憶體或該第二記 憶體讀取至少一個資料行以進行編碼;及 一記憶體擷取控制器,其係用以控制該第一記憶 體之貧料的存取, 其中,讀取該第一記憶體之動作係包含複數次從複 數個在該第一記憶體内儲存位址相鄰之資料列内連 續讀取至少二個資料單位。 3 6 、如申請專利範圍第3 5項所述之錯誤更正碼產生裝 置,其中該第一記憶體係為動態隨機存儲器。 3 7 、如申請專利範圍第3 5項所述之錯誤更正碼產生裝
第30頁 1235911 六、申請專利範圍 置,其中該第二記憶體係為靜態隨機存儲器。 3 8 、如申請專利範圍第3 5項所述之錯誤更正碼產生裝 置,其中該錯誤更正碼係為里德一所羅門乘積碼之 P〇同位碼。 3 9 、如申請專利範圍第3 8項所述之錯誤更正碼產生裝 置,其中該錯誤更正碼係用以保護多功能數位碟片 的資料。 4 0 、如申請專利範圍第3 5項所述之錯誤更正碼產生裝 置,其中該資料單位係為一錯誤更正碼之運算單位 符號(symbol)。 4 1 、一種錯誤更正碼產生裝置,其係用以對具有至少一 資料區塊的原始資料進行編碼,以產生一對應之錯 誤更正碼,該資料區塊係具有複數資料行及複數資 料列以形成一資料矩陣,該錯誤更正碼產生裝置包 括: 一記憶體,其係支援頁模式功能,且具有複數記 憶頁以接收並儲存該貧料區塊’而該貢料區塊係以 一排列方式儲存於該記憶體^該排列方式使得大部 分資料列的大部分資料的儲存位址具有一區域性, 該區域性使得該資料區塊之資料列的該大部分資料 係儲存於同一記憶頁上; 一多資料單元編碼器,其係用以從該記憶體讀取 複數個資料行以進行編碼,每次從該記憶體讀取之 資料為一字元組,該字元組包含複數個資料單位,
第31頁 1235911 六、申請專利範圍 該多資料單位編碼器可以在下次讀取該記憶體之 前,完成該字元組所對應之編碼動作,其中讀取該 記憶體之動作係包含複數次從複數個在該第一記憶 體内儲存位址相鄰之資料列内連續讀取至少二個資 料單位;及 一記憶體擷取控制器,其係用以控制該記憶體之 資料的存取。 4 2 、如申請專利範圍第4 1項所述之錯誤更正碼產生裝 置,其中該記憶體係為動態隨機存儲器。 4 3 、如申請專利範圍第4 1項所述之錯誤更正碼產生裝 置,其中該錯誤更正碼係為里德一所羅門乘積碼之 P〇同位碼。 4 4、如申請專利範圍第4 3項所述之錯誤更正碼產生裝 置,其中該錯誤更正碼係用以保護多功能數位碟片 的資料。 4 5 、如申請專利範圍第4 1項所述之錯誤更正碼產生裝 置,其中該資料單位係為一錯誤更正碼之運算單位 符號(symbol)。
第32頁
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW093104359A TWI235911B (en) | 2004-02-20 | 2004-02-20 | Error correction code generator |
| US10/912,155 US7415660B2 (en) | 2004-02-20 | 2004-08-06 | Error correction code generator |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW093104359A TWI235911B (en) | 2004-02-20 | 2004-02-20 | Error correction code generator |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TWI235911B true TWI235911B (en) | 2005-07-11 |
| TW200528975A TW200528975A (en) | 2005-09-01 |
Family
ID=34882457
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW093104359A TWI235911B (en) | 2004-02-20 | 2004-02-20 | Error correction code generator |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US7415660B2 (zh) |
| TW (1) | TWI235911B (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7823045B2 (en) | 2005-09-06 | 2010-10-26 | Realtek Semiconductor Corp. | Error correction apparatus and method thereof |
| US7917826B2 (en) | 2005-08-18 | 2011-03-29 | Realtek Semiconductor Corp. | Error correction apparatus and method for data stored in memory |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI302291B (en) * | 2004-03-25 | 2008-10-21 | Mstar Semiconductor Inc | Management method and display method of on screen display thereof and related display controlling apparatus |
| US7774676B2 (en) * | 2005-06-16 | 2010-08-10 | Mediatek Inc. | Methods and apparatuses for generating error correction codes |
| US7430701B2 (en) * | 2005-06-16 | 2008-09-30 | Mediatek Incorporation | Methods and systems for generating error correction codes |
| US20070067702A1 (en) * | 2005-09-05 | 2007-03-22 | Kuo-Lung Chien | Method and apparatus for syndrome generation |
| US8510631B2 (en) * | 2009-11-24 | 2013-08-13 | Mediatek Inc. | Multi-channel memory apparatus and method thereof |
| JP6294346B2 (ja) * | 2013-11-15 | 2018-03-14 | 株式会社日立製作所 | 通信装置及びシステム及び方法 |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE69030405T2 (de) * | 1989-05-17 | 1997-07-24 | Sony Corp | Wiedergabevorrichtung für produktkodierte Blockdaten |
| KR0155702B1 (ko) * | 1992-08-13 | 1998-12-15 | 강진구 | 2차원 에러정정방법 및 복호화장치 |
-
2004
- 2004-02-20 TW TW093104359A patent/TWI235911B/zh not_active IP Right Cessation
- 2004-08-06 US US10/912,155 patent/US7415660B2/en active Active
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7917826B2 (en) | 2005-08-18 | 2011-03-29 | Realtek Semiconductor Corp. | Error correction apparatus and method for data stored in memory |
| US7823045B2 (en) | 2005-09-06 | 2010-10-26 | Realtek Semiconductor Corp. | Error correction apparatus and method thereof |
Also Published As
| Publication number | Publication date |
|---|---|
| TW200528975A (en) | 2005-09-01 |
| US20050193317A1 (en) | 2005-09-01 |
| US7415660B2 (en) | 2008-08-19 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US10922172B2 (en) | On the fly raid parity calculation | |
| US8438457B2 (en) | Nonvolatile memory apparatus, memory controller, and memory system | |
| US5696775A (en) | Method and apparatus for detecting the transfer of a wrong sector | |
| US6192499B1 (en) | Device and method for extending error correction beyond one sector time | |
| US5546409A (en) | Error correction encoding and decoding system | |
| TW201435893A (zh) | 用於內建錯誤更正的儲存架構 | |
| US20130117632A1 (en) | Storage control apparatus | |
| CN101685381A (zh) | 固态大容量存储装置的数据串流 | |
| TWI235911B (en) | Error correction code generator | |
| US10229052B2 (en) | Reverse map logging in physical media | |
| CN111858131A (zh) | 提供针对交叉点存储器中的行方向和列方向的纠错的技术 | |
| TWI227869B (en) | Data coding method and system | |
| US7913110B2 (en) | Electronic circuit with a memory matrix that stores pages including extra data | |
| CN107787485A (zh) | 多读取和写入端口存储器 | |
| JP2013191169A (ja) | ホスト機器、メモリコントローラ、及びメモリ装置 | |
| CN113393884A (zh) | 组合qlc编程方法 | |
| US5878059A (en) | Method and apparatus for pipelining an error detection algorithm on an n-bit word stored in memory | |
| US10585803B2 (en) | Systems and methods for addressing a cache with split-indexes | |
| TW200534084A (en) | Apparatus for accessing and outputting optical data | |
| US5886930A (en) | Bit interleaving in a memory which uses multi-bit DRAMs | |
| US6904492B2 (en) | Write-once memory device including non-volatile memory for temporary storage | |
| RU2008133604A (ru) | Способ и устройство для записи высокоскоростных входных данных в матрицу запоминающих устройств | |
| JPS59178538A (ja) | シフタ回路のアレイ | |
| CN101256803A (zh) | 错误校正设备和记录及再现设备 | |
| US7523376B2 (en) | Apparatus for accessing and transferring optical data |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| MK4A | Expiration of patent term of an invention patent |