TW201216624A - Systems and methods for error correction - Google Patents
Systems and methods for error correction Download PDFInfo
- Publication number
- TW201216624A TW201216624A TW100120538A TW100120538A TW201216624A TW 201216624 A TW201216624 A TW 201216624A TW 100120538 A TW100120538 A TW 100120538A TW 100120538 A TW100120538 A TW 100120538A TW 201216624 A TW201216624 A TW 201216624A
- Authority
- TW
- Taiwan
- Prior art keywords
- lookup table
- error
- algorithm
- symbols
- reed solomon
- Prior art date
Links
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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1525—Determination and particular use of error location polynomials
- H03M13/153—Determination and particular use of error location polynomials using the Berlekamp-Massey algorithm
-
- 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/152—Bose-Chaudhuri-Hocquenghem [BCH] 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1525—Determination and particular use of error location polynomials
-
- 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/159—Remainder calculation, e.g. for encoding and syndrome calculation
-
- 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/6569—Implementation on processors, e.g. DSPs, or software implementations
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
- Detection And Correction Of Errors (AREA)
Description
201216624 六、發明說明: 【發明所屬之技術領域】 更詳 本發明標的係有關用於通訊系統之技術及設備 細的說’其係有關用於解碼廣播信號之技術及設備 【先前技術】 串列級聯(seda! concatenated)解碼通常牵涉到兩個串 耳!^連接的解碼器。第一艇级、s # 罘解碼器通常稱為内解碼器,並且第 二解碼器稱為外解碼器。串列級聯解碼讓其本身能夠有許 多用途。-個例子是從—編碼字回復資訊位元。 在更特疋的例子令,數位視訊廣播地面標準係在發 送器使用串列級聯編碼。該發送器係包含—種非二進位的 方塊碼(例如’里德所羅門(RS)碼),接著是—種穿刺迴旋 (㈣伽⑽C〇nV〇1Uti〇n)碼(經常被稱為前向錯誤修正)。為了 觀看該廣# ’接收器係使用串列級聯解碼。—血型 方式係使用-維特比(Viterbi)解碼器作為該内解碼器 一里德所羅門解碼器作為該外解碼器。 里德所羅門係依賴對每個發送的資料封包都附 小量的額外資料(亦即,同位位元)之實際情況。該額外㈣ 訊可被利用來修正由資料發送所造成之可能的錯誤“卜 算法係由兩個重要的階段所組成:⑴錯㈣ … 存在’以及(2)錯誤修正,^ 利用該錯誤傾測階段谓測到錯誤時,其係修正該 / 里德所羅門演算法基本 一、曰5吳。 上疋由利用伽羅瓦場 3 201216624 (Galois-Fiehis)多項式係數的大量互斥或(exelusive_Qr)為基 礎的運算所組成》因此,該演算法是非常高度密集計算的。 在某些解碼應用中,該里德所羅門演算法佔去多達百分之 十的整個處理時間’即使是對-無錯誤錢,甚至是在利 用現有的硬體指令最佳化之後都是如此。 【發明内容】 在一例子中,本揭露内 收到的廣播信號之系統、方 門解碼演算法的特點係加以 羅門解碼所需的處理時間量 容係針對於一種用於解碼一接 法及產品。尤其,該里德所羅 改良’藉此減少執行該里德所 、在一特點令,一種解碼一接收到的廣播信號之方法係 被展示及敘述。該方法係包含在解碼該廣播信號之前,對 於-錯誤偵測演算法的每個輸入計算出該錯誤偵測演算法 2組可月&的結|,並纟儲存該錯誤傾測演算法之該組計 算出的可忐的結果在一第一查找表(l〇〇k up以以…中。該方 法亦包含在解碼該廣播信號之前,對於一錯誤修正演算法 的每^輸入計算出一組可能的錯誤修正結果,並且儲存該 組計算出的可能的錯誤修正結果在一第二查找表中。再 X方法係包含利用該第一查找表以在一接收到的廣播 η號中偵測一錯誤,並且當偵測到一錯誤時,利用該第二 查找表以修正該錯誤。 在各種例子中,該偵測發生時,其都僅利用該第一查 找表並且戎修正發生時,其都僅利用該第二查找表。該 4 201216624 些查找表可被儲存為三維陣列。該錯誤修正及錯誤谓測寅 算法可以是-里德所羅門演算法。該錯誤修正演算法可包、 含執行一錢氏(Chien)搜尋法。該廣播信號可以是一數位益 線電信號、-數位電視廣播信號、或是其它廣播信號。Z 外’複數個第-查找表以及第二查找表可對應於—特定的 數位廣播標準來加以產生。該方法可包含判斷哪個廣播標 準是被用來編碼該接收到的信號,並且利用對應於該標準 之對應的第一查找表及第二查找表。 在另一例子中,一種用於處理資料之計算系統係被展 不及敘述。該系、统可包含—接收器以及—和該接收器通訊 的中央處理單元(CPU)。—廣播信號係藉由該接收器來加以 接收。該CPU係執行—解碼該接收到的廣播信號之應用程 式。該應用程式係執行例如是以下的步驟:在解碼該廣播 ::號之前:對於一錯誤偵測演算法的每個輸入計算出該錯 二偵測廣算去的—組可能的結果,並且儲存該錯誤债測演 异法之该組計算出的可能的結果在一第一查找表中。該應 :程f亦執行以下的步驟:在解碼該廣播信號之前,對於 &曰4 i廣算法的每個輸人計算出-組可能的錯誤修正 、名。果,並且储存該組計算出㈤▼㉟的錯誤修正結果在一第 中此外’ 6亥應用程式係執行例如是以下的步驟: =用及第查找表以在—接收到的廣播信號中债測一錯 並且^貞測到—錯誤時’利用該第二查找表以修正該 錯誤。 在另一例子中 一種產品係被展示及敘述。該產品係 201216624 包3機器可讀取的儲存媒體以及體現在該機器可讀取的 储存媒體中之可執行的程式指令。當一可程式化的系統執 订錢指令時,該可程式化的系統係執行解碼一接收到的 廣播L號之功能1些功能係包含在解碼該廣播信號之 ^對於-錯誤賴演算法的每個輸人計算出該錯誤偵測 +算法的組可A的結果’並且儲存該錯誤偵測演算法之 组計算出的可能的結果在—第—查找表中。該些功能亦 匕含在解碼該廣播信號之前’對於一錯誤修正演算法的每 ^輸入計算出-組可能的錯誤修正結果,並且儲存該組計 算出的可能的錯誤修正結果在一第二查找表中。此外,該 :功能係包含利用該第一查找表以在一接收到的廣播信號 偵測-錯⑨’並當偵測到_錯誤時,利用該第二查找 表以修正該錯誤。 本揭露内容的裝詈、糸铋; 系,,先及方法可被利用來解碼許多 類型的信號及資料。例如’音訊信號可被解碼。同樣地, 視訊信號可被解碼。當然’組合的音訊及視訊信號可被解 因此,在此所述的裝置、系統及方法可被利用在電視 應用、音訊應用、無線通訊應_如,蜂巢式電話、無線 網路、等等)、網路應用及其它應用中。 在-例子中’該揭露内容的特點是實施在此所述的解 碼之各種型式因素。在-例子中,—解碼器係包含一處理 例如,位在一機上盒中)以及藉由該處理器執行的相關軟 體。在另一例子中’該處理器係位在蜂巢式電話令,並且 遠相關軟體係藉由該電話來加以執行。當然,收音機可包 201216624 含執行s亥相關軟體的處理器 【實施方式】 力以:辻下的斤細說明中’許多特定的細節係藉由舉例來 加以閣途,以便提供相關的教示之徹底理解。然而,對於 ==術者而言應該明顯的是,本教示可在 細 …以貫施。在其它情形中,眾所週知的方法、程序、 構件及/或電路已經以相對离 从妨、十、 ㈣4的方式加以敘述,而未詳細 敘这,以避免不必要地模糊本教示的特點。 統、各種例子係有關用於解碼-廣播信號之系 、’ '品。尤其’該里德所羅門解碼演算法的特點 係加以改良,藓此^ ^次异沄的特點 時間量。4此減)執行該里德所羅門解碼所需的處理 子。參考所附的圖式及以下的論述中所說明的例 施例1一種用於解碼一廣播信號之系統10的-實 施例。S亥糸統10俜展 _ π 解的是]〜串列級聯解碼的-例子。應瞭 緩衝器; 案亦可被利用。該系統10係包含- ’’裘衝器 1 4·、4$. 3S 1。 咖A 、—最佳的内解碼器22、一-大佳的 内解碼器26、-反交鈣考w — 人佳的 該緩衝器“係和—日㈣外解碼器34。 訊。該緩衝器】4在本質上=顯示)以及該選擇器18通 塊之記憶體。在—例子中堵存從該解調器接收的資料區 電視廣播的信號。該緩資料區塊係代表接收到的 的執订該解碼的計算裝置(例如,個人電腦)的記憶體 201216624 内。該緩衝5| 1 / _p 。4可以是隨機存取記憶體(RAM)與類似者。 上 中°亥緩衝器14的儲存大小係被選擇成等於 。錯器30及内解碼器22、26的延遲總和(以解碼區塊來 、’奇盗14可以根據應用而為較大或較小 =3子:;假設_器22、26的延遲是-個資料 处Lr 期間的資料區塊係容許某些資料區塊
月匕夠根據所需地再次M Λ ^ ^ 解1例如,若次佳的内解碼是原先 心…責料區塊’則外解碼器的輸出可能會指出一錯 此-情形令,先前利用次佳的内解碼 ==區塊係從該緩衝器14取出並且利用該最佳的 描、f °再切碼°再:欠解碼的進—步細節係在以下 描述0 該選擇器18係和該緩衝器14以及該 22與次佳的内解碼涔% .3切 謂’巧益 χ ^ ^ * 。該選擇器18係提供一機制 内從該緩衝器14接收到的資料區塊之最佳的 _/、或者疋被應用至從該緩衝器14接收到的資料區塊 之人佳的内解碼。在本質上,該選擇器18係運 以將内解碼器22、26中之一和該緩衝㈣連接。: 器18可採用許多種形式,其包含在-軟體常式中的一旗標 或是-實體的電子電路(例如’ 一電晶體或二極體卜儘管該 選擇器18係破展示為具有兩個狀態··位置。或位置 應該理解的是’根據存在的内解碼器數目而可能有更多的 狀態。 另尺夕的 該最佳的内解碼器22係和該選擇器18及反交錯器Μ 201216624 通訊。至該選擇器18的連接可以週期性地加以建立。換言 之,至該選擇器18的連接可以根據所需地暫時施加及移 除。此動作的進—步細節係在以下論述。如在此所用的, 最佳的係指當相較於該次佳的内解碼器26時在處理上造 成較大負載的解·“最佳的,,作為一修飾語的使用絕非意味 γ項絕對完美的程度。其僅被用來指出内解碼器之間的區 隔程度。例如,若使用到三個内解碼器,其概念上可被想 成子於肖疋的應用而言是一良好的内解碼器、一較佳的 •内解碼器以及—最佳的内解碼器。在此-情形中,該“最佳 的内解碼器”可被視為該最佳的内解碼器22。在某些應用 中該最佳的内解碼器22係以硬體來加以實施。在應 用中,該最佳的内解碼器22係、以軟體來加以實施。軟體及 硬體的組合亦可被利用。 …在-例子中,該最佳的内解碼Ε 22 i一維特比解碼 益。亥維特比解碼器係具有一些狀態(例如,六十四個)。在 此例子中,該最佳的内解 ㈣料自22㈣加Hb解碼演算 法至從忒緩衝器14接收到的資料區塊。 在另-例子中,該最佳的内解碼器22可以 L讀查⑽PC)解碼器,當相較於該次佳的解碼器26時, =霄施季父大數量的解碼迭代(iteration)。該最佳的内解碼 :可以實施-些解碼演算法的任一種。例子係包含但不 “及:Γ專播(beIief pr。㈣—n)演算法、訊息傳遞演算 法以及朴_乘積演算法。LDPC碼亦被稱為Gailagher碼。 在又一例子中’該最佳的内解碼器22是—渴輪㈣0) 201216624 碼解碼器。在一特定的例子中 邊破佳的内解碼器22係實 施一 log-MAP渦輪解碼演算法。當然,盆— 解碼演算法亦可被利用。 、、-匕已知的渦輪碼 該次佳的内解碼器26係和該選擇器18及反交以器30 通訊。至該選擇器18的連接可以週期性地加以建立。換言 之,至該選擇器1 8的連接可以桐诚 遗按』以根據所需地暫時施加及移 !。此動作的進一步細節係在以下論述。如在此所用的, :人佳的係指當相較於該最佳的内解碼器22時, 少該負載的解碼。“次佳的”作為 減 + ㈣作為—修飾語的使用絕非意味- 、·邑對的程度。在某些應用中, 〇亥-人佳的内解碣器26係以硬 體來加以實施。在其它應用巾,兮A ^ 亥次佳的内解碼器26係以 軟體來加以實施。芬成躺 貝犯救體及硬體的組合亦可被利用。 在某些應用中,該次佳的内解 巧解碼器26係被選擇為該最 佳的内解碼器22之一互輔。也丨上.4 拉W ρα 若一個六十四狀態的維 '解碼器是該最佳的解碼器22,則哕次# ^ & Μ θ 則°哀-人佳的内解碼器26 疋一具有較少狀態(例如’三十二個)的維特比解碼器。在另 例子中,右該最佳的内解踩哭a ,.L Λ 円解碼盗22疋一個三十二狀態的維 特比解碼器,則該次佳的内解 J Π解碼态26可具有十六個狀態。 丨一例子中’一具有當相較於該最佳的解碼器26時為減 少數量的解碼迭代之LDPC解碼演算法係被使用。再者,當 i最佳的内解碼器22係實施_ — ΜΑ?渦輪碼解碼演算法 時,該次佳的内解碼器%可以勃— . 、 =算^當[在該次佳的内解碼器係減少執行該解2 .理益所遭受到的處理負载的前提下,該最佳的内解碼 10 201216624 器22及次佳的内解碼器26的各種組合都可被利用。 該反交錯器30係和該最佳的内解碼器22及次佳的内 解碼器26通訊。該反交錯器3〇係接收内解碼的資料並且 隨機化在該内解碼的資料中之錯誤型樣。 該内解碼器22、26係運算及產生作為資料的::::在 此種情形中,該些位元係在藉由該反交錯器30運算之前先 被轉換成位元組。在某些例子中,該反交錯器Μ是一 超過一解碼區塊的延遲之迴旋反交錯器。 料解碼H 34係和該反交錯器 .:4破假設能夠修正達到-特定數目,,個位元組。換言之 ::::器Μ可接受一具有一最大數目的位元組錯誤的輸 成功地修正該些錯誤。若該外解碼器的輸入
二:錯誤,則該外解…的輸出係指出-解碼失敗。 在某些例子中,此y +在、木m A 器22再次解二:被用來觸發利用該最佳的内解碼 料區塊。利用該次佳的内解碼器所解碼的某些資 器二該外解碼器34是一里德所羅門卿解碼 正數目 U 34亦指出其對於該内解碼的資料所做的修 還是-Mil修正數目的量測係被用來決定是最佳的内解碼 佳的内解碼可被該系統10利用,而不影響系統10 34,::::忐。其它解碼器亦可被利用作為該外解碼器 該二 =的:常二的可靠度指出解碼是失敗或成功。 ^ 的輪出疋解碼後的資料。 該系統10之_曰Β π疋獲得在一採用該最佳的内解碼器 11 201216624 的裝置内之實質相同的錯誤效能,然而當通道狀況容許 時,5亥次佳的内解碼器係在一較低的計算負載下被採用。 此可藉由監視錯誤統計並且正_地預測在兩種動作模式(亦 即’最佳的以及次佳的)中的另一模式是否提供處理器所遭 又的- lx低計算負載來加以達成。快速的在模式之間進 切換可響應於變化的通道狀況。因此,在任一模式中 出錯誤效能實質是未受影響的。 剧 在動作中’上述的系統1G係提供資料區塊的串列級朽 解碼。如圖戶斤$,該系統可提供兩個動作模式。第一槿; _稱為㈣的模式,並且第二模式係被稱為最佳= 在最佳的模式中,該選擇器18係維持在位置〇,因此 建立包含^緩衝器14、最佳的内解碼器22、反交錯器3〇 以及外解碼器3 4的通訊路徑。 ° 在該次佳的模式中,該選擇器Η通常是在位置 而’當因為一外解碼器34的失敗而啟動再次解碼時 切換至位置0。當操作在次佳的模式時,一通訊^係 在該緩衝器14、次佳的内解$ '、立 解碼器34之間。然而,若 外 右而要再_人解碼時,該選 暫時轉變至位置〇以“接 Π 接通5亥最佳的内解碣器22。此係传 得某些資料區塊能夠被再次解 “吏 姑 极冉人解碼。在該些資料區塊被再次 解碼之後,該選擇器到 〆 罝1並且该次佳的内解碼器26 係切換回到該處理路徑中。 26
在某些情況中
’該外解碼器34可能佔 時間中之一相當大的量 去解碼該接收到 。這是因為需要 12 201216624 執行的數學運算的數目之緣故。對於該外解碼器34的每個 輸入都重複這些運算。在以下所述的某些例子中,其並非 連續地重複這些運算,而是該些運算的結果係預先計算1 ^儲存在一或多個查找表中。該些查找表實際上包含利用 每個可能的輸入情形的該些數學運算之每個可能的輸出的 一快照(snapshot)。此外,這些查找表係以—種容許使用預 先確定(usage predeterminati〇n)的方式來加以組織因而明 確的資料預提取技術可被利用來減少記憶體停頓。因此, 計算並且儲存該些結果可以減少解碼該接收到的廣播信號 所需之處理的時間量及資源。該預先計算可以發生在解碼 應用程式的初始化期間。 … 如同先前在某些情況中所提及的,該外解碼器34係實 施一種里德所羅門解碼演算法。實施—種里德所羅門演算 法的細節是該項技術中具有通常技能者所理解的,因而: 此並不詳細地論述。在—高階下’―個完整的里德所羅門 碼是由兩個部分所組成:資料部分以及同位部分。對於具 有η個符號的一里德所羅門碼而言,前面k個符號是資料 部分,其係為欲保護免於毀損的資訊,而後面的(Μ)個符 號是同位部分,其係根據該資料部分來計算出。此種里德 所羅門碼係被稱為(n,k)里德所羅門碼、或是叫响碼。^ 位符號的數目是(n_k),通常是一個被表示為2t的偶數。一 具有2t個同位符號的里德所羅門碼係具有修正最多〖個錯 誤符號的能力。 在一例子中,該里德所羅門碼可具有2〇7個八位元的 13 201216624 符號,其係包括18 7個眘粗忽;咕,、,„ Λ 此碑且右。Λ7 繼以及20個同位符號。於是, 碼具有 n=2〇7,k=187,…0,並且 t=1〇。 ?德所羅門碼係藉由一多項式產生器(例 = (X + a )(X + a—)(X + am〇+2). χ + ^〇+2( g2X2+ ... + χ2Η 、 } = g0 + glX + 二e X )所界定,其中a(—個m位元的 ; 幻是有限場GF(2m)的基本元素(primitive e_t)’並且叫是一預先設定的數目通常是〇或卜 為了解碼資料,可以想成該里德所羅門演算法係包含 一錯誤偵測部份以及-錯誤修正部份。這些部份的每一個 可以想成個別的演算法。為了助於理解,Μ用-個例子是 有用的。假設發送的碼向量是:t(x) = t〇 + tiX ++ H1。再者,假設接收到的向量是:Γ(χ) = Γ〇 + Γιχ + Γ2χ2 + **· + Γη.,Χ0·1 〇 為了偵測錯誤,外解碼器34係計算“個出錯 (syndrome)。在前述的例子中,該些出錯是、 S〇 = r(a°) = r〇 + r, + Γ2 + ... A η · 1, S2 = r(a2) = r〇 + r丨(?) + r2(a2)2 + ... +。.丨(々·丨;… S2t•丨=r(a2t-丨)=r〇 + ri(a2t·丨)+ Γ2(,-丨)2 + …+ rn-Ka21·1)0·1 〇 出錯多項式是:s(x) = s〇 + SiX + δ2χ2 〇 v 21 · 1 >2t-l 人 。 外解碼器亦決定錯誤位置多項式L(x)及錯誤評估多項 式W(x)。該錯誤位置多項式是l(x) = 1 + l!X + L2X2 +… 14 201216624 + LeXe。該錯誤評估多項式是w(x) = w〇 + + W2X2 +… + We'lX ,其中e是錯誤的數目。該錯誤位置多項式及錯 誤評估多項式係透過方程式L(X)S(X) = w(x) m〇d ft而相 關於該出錯多項式。在某些例子中,外解碼㈣使用遞迴 式 Berlekamp-Massey 演算法以解出 L(x)及 w(x)。 利用上述内容,該錯誤位置及錯誤值係藉由外解碼器 34來獲仔。該錯誤位置可利用錢式搜尋來加以獲得。基本 上、,對於—碼中之所有可能的n,L(X)中的X剌an來代 入以找出L(X)的根。該錯誤位置多項式的根的倒數是該錯 誤位置。 。若該位置找到之後,該錯誤值可利用例如是的 錯^平估决异法來加以計算…旦該錯誤值找到,其係加 到該遭到毁損的符號以修正該錯誤。 八 如同從以上的解料理解的,此過程是計算密集的。 /所述、’在本發明中’並非是對於料解碼器34的每個 行這些計算’而是外解碼器的各種部份可加以計算 :子為查找表。因此外解碼器的運算速度係被提升。 例如’對於該錯誤偵測演算法的每個 =出係在程式開始時加以計算,並且這些計算=二 的輸出係儲存在一第一杳抻矣 了月b 照輸入、多項… 該些結果可被儲存為按 夕項式位置及輸出的一個三維陣列。 因此,g該外解碼器3 4正在摔作時1 地對於每個m“ 在刼作時,其並非必須即時 的儲存的輸出值可從該杳找表選出此:的輸入,對應 —找表選出。此係提升該外解碼器 15 201216624 34能夠在接收到的資料中偵測是否存在有錯誤的速度。 在一個其中利用一里德所羅門解碼演算法的例子中, 該錯誤偵測演算法的輸入可以是如上所論述的里德所羅門 碼°每個里德所羅門碼係包括η個符號,並且這η個符號 的每一個將具有ρ個可能的值的範圍。 在以上論述的包括八個位元符號的里德所羅門碼的你 子中’每個符號將會具有ρ為256個可能的值的範圍。 對於一里德所羅門碼的每個符號的每個可能的值,一 組可能的出錯成分結果係被計算,並且在該第—查找表中 儲存為一個三維陣列。該組可能的值係包括一組伽羅瓦續 值,並且在該組中的值之數目係等於在該里德所羅門碼中 的同位符號數目。因此,儲存在該第一查找表中的三維陣 列係具有維度X、y、ζ,其中χ是符號的數目η,y是每個 符號的值範圍p’並且2是伽羅瓦場值的數目n_k。參照在 上述段落中的出錯方程式,對u能㈣y值的每一個, 儲存的值是rx(axz)。 在以上論述具有n=2〇7、k〜7及n-k=2〇的里德所羅 門碼的例子中,同位符號的數目I 2(),因此對於在該里德 所羅門碼t的207⑷個符號的每一個符號之256⑻個可能 的值的每_可旎的值,該第_查找表將會包含—袓 (n-k)個預先計算出的伽羅瓦場值。因此,在此例子中,該 三維的儲存陣列是—2〇7乘256乘2〇個值的Μ”陣歹^ 在一個其中使用一里德所羅門解碼演算法的例子中’ 對於里德所羅門碼M U田1 % 馬的母個付唬而言,該符號的序號以及該 16 201216624 符號的值於疋被用來從該第—杳 < f + μ # w —找表找出—對應組的預先 计异出的伽羅瓦場值。 此過程係依次對於被處理的 J至‘所羅門碼的每個符號 順序地加以執行,技θ 4M· fig ^h\ ^ ,.. 1且對應於母個符號找出的伽羅瓦場值 的組係藉由互斥或(X0R)運算來加以組合。 當該里德所羅門碼的所有符號都已經處理時,從該些 臟運算產生的值的組將會是原始的里德所羅門碼的出 錯。若該些出錯是零,則該里德所羅門碼中沒有錯誤 該些出錯非零,則該里德所羅門码中有一或多個錯誤。於 是’在該里德所羅門碼t的錯誤可藉由檢查最後的輸出出 錯是否為零來加以偵測。 將會瞭解㈣是’從-查找表揭取計算的結果並且藉 由XOR運算來組合該些擷取出的結果可以遠快於計算該些 結果所需之計算上為更加複雜的計算來加以執行。因此, 該外解碼器的操作速度係被提升。 在以上論述的具有n=2〇7、k=187及n - k=20的里德所 羅門碼的例子中’對於該里德所羅門碼的第一個符號而 言,該號碼(x=l)以及該符號的值(y)係被用來找出—組2〇 (幻 個伽羅瓦場值。接著,對於該被處理的里德所羅門碼的第 二個符號而言’該號碼(x=2)以及該符號之目前的值(y)係被 用來找出一第一組的20 (z)個伽羅瓦場值。每一組的第一個 伽羅瓦場值一起被進行XOR運算以產生一第—部分的会士 果,並且每一組的第二至第二十個伽羅瓦場值係分別被進 行XOR運算以產生個別的第二至第二十部分的結果。對於 17 201216624 在該碼中剩餘的符號的每-個,一組伽羅瓦場值係從該表 找出並且和該些部分的結果做X0R運算,以產生該里德所 羅門碼的出錯。 若該演算法的錯誤谓測部份的結果確認出一錯誤,換 ^ ’在該例子中,若該些出錯的任_個是非零的,則該 演算法的錯誤修正部份係被應用。 相同的程序係應用於該演算法的錯誤修正部份。在程 式開始時,對於該錯誤修正演算法的每個輸入,個別的可 能的輸出係被計算出並且儲存在一第二查找表中。同樣 地,該些結果可用一個三維陣列來加以儲存。對於一特定 的輸入而言,若一錯誤被該演算法的錯誤谓測部份谓測 出,則該演算法的錯誤修正部份係被執行,並且該第二查 找表係被用來修正該錯誤,而不須再次執行計算上費力: 錯块修正計算。取而代之的是,該修正的值係從該第二查 找表讀取出。此係提升外解碼器34能夠修正在接收到 料t被確認存在的錯誤之速度。 在個其中使用-里德所羅門解碼演算法的例子中, 該錯誤偵測演算法的輸入可以是如上所論述的里德所羅門 對於里德所羅門碼的每個符號的每個可能的值,— 的錯誤修正結果係被計算,並且在該第二查找表中 =:個三維陣列。該組可能的值係包括-組錯誤修正 碼中的回並,在该組中的值之數目係等於在該里德所^門 4符號數目。因此’儲存在該第—查找表中的三 18 201216624 維陣列係具有維度x、y、z,《中χ是符號的數目η,y是 每個符號的值範圍p,並且z是同位符號的數目n_k。 該些錯誤修正結果係被用來確認出錯誤位置及錯誤 值。當錯誤位置及錯誤值已經確認出時,該些偵測到的錯 誤可加以修正。在一個其中使用一里德所羅門解碼演算法 的例子中,該些錯誤修正結果可被利用來執行錢式搜尋以 確認出錯誤位置。在知道錯誤位置之後,該些錯誤值可加 以修正。當利用該里德所羅門解碼演算法時,在知道錯誤 位置之後,錯誤值的決定在計算上是比找出錯誤位置較為 不費力的。 該些查找表可以根據何種類型的信號正被解碼而變 化。例如,若一特定的數位電視標準正被解碼,對應的錯 誤债測及錯誤修正的查找表係被選出。在某些實施例中, 用於由應用程式所支援的每一種標準之錯誤修正及錯誤偵 測查找表係在程式開始時被計算出。當然,該些查找表的 一子集合亦可加以計算出。 以上的討論係指利用在一里德所羅門解碼演算法中的 里德所羅門碼之例子,但本發明並不限於這些例子,而是 可應用至其它的碼及解碼演算法。 、參考圖2,-種解碼—廣播信號之方法綱係被展示及 ,述,亥方去係包含計算(步驟21〇)一錯誤偵測演算法之可 能的結果’並且儲存(步驟22〇)該些計算出之可能的錯誤福 測結果在-第-查找表中。該方法2〇〇亦包含計算(步驟洲 一錯誤修正演算法之可能的結果,並且儲存(步驟240)該些 19 201216624 計算出之錯誤修正輸出在一第二查找表中。該方法2〇〇亦 。a利用”玄第纟找表來偵測(步驟25〇)一錯誤,並且利用 β玄第一查找表來修正(步驟26〇)該偵測到的錯誤。 〜如上所論述,該錯誤偵測查找表及錯誤修正查找表的 計算(步驟2U)及23G)可以在被用來解碼接收到的廣播信號 ^應用程式的開料力以計算。再者可以對於該應用程 "所支援的每種類型的接收信號計算出-個別的第一查找 表以及個別的第二查找表。支援的信號之例子係、包含(但不 限於)刚-τ、T_DMB、dmb t/h及hd無線電以及其它。 在忒應用程式的執行期間,可以僅利用該第一杳 以在接收到的信號中债測出錯誤。在某些應用[ 需要结人兮绝 、飞j月匕 、3第—查找表的使用來執行某些數學運算或計 二的在:種情形中’使用查找表來執行解碼方面仍然是有 ^ 其係'適用於利用該錯誤修正查找表的錯誤修正。換 二,在:某些例子令’可以僅利用該第二查找表來修正錯 找表來:匕例子中’某些數學運算或計算亦結合該第二杳 找表來加以利用。 一 的。對於方法中,注意到的是效能增益是顯著 有的數學方法I 號而1該提出的方法證明是比現 羅門實施方Γ大約十倍,並且比一指令集目標的里德所 言(例如,最:所用的方法快大約四倍。對於最壞的情況而 的數學方法Γ可修正的錯誤),該提出的方法證明是比現有 約兩件。/、大約五倍’並且比該目標的指令集方法快大 20 201216624 4提出的方法疋可攜的,並且已經在不同的其它應用 上加以測試,並且從任何可能的配置之變化(由不同的應用 所需的)可以在-非常短的時間(幾分鐘的級數)内完成。並 且因為其係-種以記憶體為中心的方法,而不是一種以算 數為中心的方法,所以該提出的解決方案可以自由地裝設 在任何的PC CPU配置上,而無遭遇到相容性問題(例如, 相關於指令集)的風險。 一圖3及4係提供一般用途的電腦硬體平台的功能方塊 圖不。圖3係描繪一如同通常可被用來做成伺服器的網路 或主機電腦平台。_ 4係騎—如料被利用來做成個人 電腦㈣或其它類型的工作站或終端裝置之具有使用者介 面元件的電腦,儘管若適當地加以程式化,圖彳的電腦亦 可以作用為一伺服器。相信熟習此項技術者是熟悉此種電 腦設備的結構、程式化及一般的動作,因此該些圖式應該 是一目瞭然的。 此種電腦的硬體元件、作業系統及程式語言在本質上 是習知的,並且假設前述是熟習此項技術者所充分熟悉 的。當‘然’伺服器的功能可用—分散的方式實施在一些類 似的平台上,以分散處理的負載。 因此,以上概述的解碼一廣播信號之方法的特點可以 用程式化加以體現。該技術的程式特點可被想成通常是承 載或體現在-類型的機器可讀取的媒體中之可執行的碼及/ 或相關資料的型式之“產物,,或“產品製造,,。‘‘儲存,,類型的媒 體係包含電腦、處理器或類似者的記憶體或是其相關的模 21 201216624 組,例如,各種的半導體記憶體、磁帶機、磁碟機盘類似 者的任-種或全部,其可以在軟體程式化的任何時候提供 儲存。㈣體的全部或部份偶爾可透過網際網路或各種其 它的電信網路來加以通訊。例如,此種通訊可以致能該軟 體從-電腦或處理器載入另一電腦或處理器,例如,從網 路業者或經營者的-管理飼服器或主機電腦載入資料匯她 工具(aggrega㈣的電腦平台及/或作為消f者通訊系統: =平台。因此,另-類型的可帶有該些軟體元件的媒體 係包含透過有線及光學的陸上通訊線料以及在各 鏈路上的光學、電氣及電磁的波,其例如是用來橫跨:地 的裝置間之實體介面.。像是有線或無線鏈路、光學鍵路或 類似者的載有此種波的實體元件亦可被視為帶有該軟雕的 媒體。如同在此所用的,除非限於有形的“儲存,,媒體,=則 f是電腦或機器“可讀取的媒體,,的用語係指任何參與提供 指令給一處理器以供執行的媒體。 、八
因此,一機器可讀取的媒體可採用許多種形式,其包 不限於:一有形的儲存媒體、一載波媒體或實體的: 、媒體。非揮發㈣存媒體係包含例如是光碟μ或㈣ 片,例如在像是可被利用來實施在圖式中所示的資料匯總 具、消費者通訊系統等等的任何電腦或類似者中的儲存 裝置之任一種。揮發性儲存媒體係包含動態記憶體,例士子 此種電腦平台的主要記憶體。有形的發送媒體係包含同口轴 電I線,銅線及光纖,其包含構成在一電腦系統内之匯流 排的導線。載波發送媒體可採用電氣或電磁信號或是聲L 22 201216624 或光波的形式,也丨丄 例如那些在射頻(RF)及紅外線(IR)資料通訊 期間產生的形★ m ^八。因此,電腦可讀取的媒體的普通形式 包含例如:—敕雄 ’、 π磲片、一可撓性碟片、硬碟、磁帶、 其它磁性媒體、— CD-R〇M、DVD 或 DVD-ROM、任何 i 它光學媒體、打#丨丰 八 丁孔卡紙帶、任何其它具有孔洞圖案的實 儲存媒體、一RA1U ^ AM、— PR〇M 及 EPR0M---决閃-EPROM、 可'、匕的。己憶體晶片或匣、-傳輸資料或指令的載波、 傳輸此種载波的f缓線或鏈路、或是電腦可以從其讀取程 式碼及/或資料的任何其它媒體。這些電腦可讀取的媒體的 形式中的許多種可能會涉及承載一或多個序列的一或多個 指令至一處理器以供執行。 熟習此項技術者將會體認到本教示係可順應各種修改 或文進例如,儘管上述例子是相關於在一電視廣播環 勺解碼但在此所述盈處同樣可應用到無線電廣播、 蜂巢式通讯、及其它其中使用串列級聯解碼的通訊系統。 儘言兩個内解碼器被展示,但超過兩個的内解碼器 可破利用。因此,可以達成各種程度的處理器負載減輕。 儘笞上文已經敘述被認為是最佳模式及/或其它例子, 但所了解的{,可於其中進行各種修改並且在此揭露之標 ,可用各種形成及例子來加以實施,並且該教示可應用在 許多應用中’其中只有一些應用是已經在此加以敘述。其 係欲藉由以下的申請專利範圍來主張任何及所有落在本教 示的真實範疇内的應用、修改及變化。 23 201216624 【圖式簡單說明】 該些繪圖的圖式係只 本教示的一或多個實施方 係指相同或類似的元件。 圖1是一種用於解碼 功能方塊圖。 X藉由舉例而非限制地描繪根據 式。在圖式中,相同的元件符號 —廣播信號之系統的一實施例的 圖2是.描緣一箱田狄β 用於解碼一廣播信號之方法的一實施 例的流程圖。 機或伺服器的電腦之簡化的功 圖3是一可配置成主 能 方塊圖 之簡化的 圖4是一個人電腦或其它工作站或終端裝置 功能方塊圖。 【主要元件符號說明】 1 〇系統 1 4緩衝器 U選擇器 22最佳的内解碼器 26次佳的内解碼器 30反交錯器 3 4外解碼器 24
Claims (1)
- 201216624 七、申請專利範圍: 1 ·—種用於處理資料之計算系統,該系統係包括: 一用於接收一廣播信號的接收器; 一和該接收器通訊的中央處理單元(CPU),該CPU係被 配置以執行一解碼該廣播信號的應用程式丨以及 記憶體; 該應用程式係被配置 (a)在解碼該廣播信號 每個輸入計算出該錯誤偵 以執行以下步驟: 之前,對於一錯誤偵測演算法的 測演算法的一組可能的結果; 傾仔該錯誤偵 在一第一查找表中; 在解碼該廣播信號之前,對於—錯誤修正演算法的 每個輸入計算出-組可能的錯誤修正結果; (d)儲存所計算出之該組 龅的錯誤修正結果在一第二 查找表中; 測 錯 (e) 利用該第一查找表以 一錯誤;以及 (f) t偵測到一錯誤時, 誤。 在—接收到的廣播信號中偵 利用該第二查找表以修正該 2.如申請專利範圍第 利用該第—查找表。 3 如申請專利範圍第 利用該第二查找表。 4·如申請專利範圍第 1項之系統,其中該偵測發生在僅 項之系統,其中該修正發生在僅 2或3項之系統,其中該廣播 25 201216624 信號是一數位電視廣播信號。 5.如申請專利範圍第丨 ^ s ^ ^ 卜 峭之系統,其中該錯誤偵測演算 演算法。 匕括—里德所羅門(Reed-Soiomon) 6. 如宇請專利範圍第】 ^λλ ^ 項之糸統,其令對於一錯誤修正 n ^ 丫异係包括執行一錢式(Chien)搜尋。 7. 如申請專利範圍第1 項之系統,其中儲存該第一查找 表係包括儲存该第-查找表為一個三維陣列。 8 ·如申凊專利範圍第7項之系統,其令該資料係包括里 ‘所羅門碼’每個里德所羅門碼係包括複數個符號;以及 二存該第一查找表係包括對於構成一里德所羅門碼的 數個符號的每-個符號之每個可能的值,以儲存一對 應組的出錯成分。 中 W甲睛專利範圍第8項之系統,其中該儲存該第一杳 找表係包括將該第一查找表儲存為一個三維陣列,該三維 陣列係具有在該里德所羅門碼中的符號數目的—維度、符 號值的-維度、以及在該組中的出錯成分數目的度付 a ι〇·如申請專利範圍第9項之系統’其中該些出錯1分 疋伽羅瓦(Galois)場值。 y·如申請專利範圍第10項之系統,其中該里德所羅門 碼的該些符號係被用來從該第一查找表擷取出錯成分,= 些出錯成分係一起進行X0R運算以產生該些出錯。 Λ 12·如申請專利範圍第1項之系統,其中儲存該第_ 、 找表係包括儲存該第二查找表為一個三維陣列。 一 26 201216624 13.如申請專利範圍第12項之 · 多個里德所羅門碼,每〜 +該資料係包括 號;以及‘、所羅門碼係包括複數個符 儲存該第二查找表係包. 該複數個符號的每—喻之丄:構成-里德所羅門碼的 應組的錯誤修正結果虎之母個可能的值,以儲存一對 14.如申請專利範圍第13項之系統,其中 查找表係包括將該第二杳找 第一 維陣列係具有在該里㈣==為一個三維陣列,該三 符號值"度、以中的符號數目的-維度、 維度。 及在该組中的錯誤修正結果數目的— A如申請專利範圍第1項之系統,其進一步包括對於 複數個數位廣播電視俨進的 > 匕括對於 "播電視钛準的母-個標準以重複步驟⑷、 、。及⑷;判斷接收到的是哪一數位廣播標準;並且其 中步驟⑷及⑴係根據用於所判斷出的數位廣播標準之個別 的第一查找表及第二查找表。 16·一種包括電腦可讀取的指令之電腦可讀取的媒體, 當該些電腦可讀取的指令藉由一可程式化的系統執行時, 而使传該系統執行解碼廣播信號的功能,該些功能係包括: —(a)在解碼該廣播信號之前,對於一錯誤靖測演算法的 母個輪入汁异出該錯誤偵測演算法的一組可能的結果; ()儲存忒錯誤偵測演算法所計算出之該組可能的結果 在一第一查找表中; (c)在解碼該廣播信號之前,對於一錯誤修正演算法的 27 201216624 每個輪人古+曾山 ,>u 。十算出一組可能的錯誤修正結果; (d) 儲存所計算出之該組可能的錯誤修正結果在一第二 查找表中; ' (e) 利用該第一查找表以在一接收到的廣播信號中偵測 一錯誤;以及 (f) 當偵測到一錯誤時,利用該第二查找表以修正該錯 誤。 一 17 ·如申明專利範圍第16項之電腦可讀取的媒體,其中 該偵測發生在僅利用該第—查找表。 18.如申凊專利範圍第16項之電腦可讀取的媒體,其中 該修正發生在僅利用該第二查找表。 1 9.如申凊專利範圍第丨6、丨7或丨8項之電腦可讀取的 媒體,其申該廣播信號是—數位電視廣播信號。 2〇·如申凊專利範圍第1 6項之電腦可讀取的媒體,其中 該錯誤偵測演算法及錯誤修正演算法係包括一里德所羅 演算法。 •如中請專利範圍第16項之電腦可讀取的媒體,其中 對於-錯誤修正演算法的每個輸人的計算係包括執行 式搜尋。 22·如中請專利範圍第16項之電腦可讀取的媒體,其中 儲存該第-查找表係包括儲存該第一查找表為一個三維 列。 23.如申請專利範圍第 該資料係包括里德所羅門 2 2項之電腦可讀取的媒體,其中 碼,每個里德所羅門碼係包括複 28 201216624 数個符號;以及 儲存該第-查找表係包括 該複數個符號的每一個符號之每二J‘所羅門碼的 應組的出錯成分。 此的值,以儲存一對 24·如申請專利範圍第。項 該儲存該第—查找表係包括將該第體’其中 目的—唯产 二在該里德所羅門碼中的符號數 维度#遽值的一維度、以及在該組中的 數目的一維度。 丁刃出錯成分 衫2屮5.如中料利範圍第24項之電腦可讀取的媒體,其中 ι二出錯成分是伽羅瓦場值。 八 26.如申請專利範圍第25項之電腦可讀取的媒體 〜里德所羅門碼的該些符號係被用來從該[槐 屮料占八 # , —找表願取 出錯成分,該些出錯成分係一起 “。 雙進仃舰運异以產生該些 27·如巾請專利範圍第16項之電腦可讀取的媒體,立中 =存該第二查找表係包括儲存該第:查找表為—個三維陣 28.如申請專利範圍第27項之電腦可讀取的媒體,其中 該資料係包括多個里德所羅門碼,每個里德所羅門碼係 括複數個符號;以及 …儲存該第二查找表係包括對於構成一里德所羅門碼的 戎複數個符號的每一個符號之每個可能的值’以儲存一對 應組的錯誤修正結果。 29 201216624 29.如申請專利範圍第28項之電腦可讀取的媒體,其中 該儲存該第二查找表係包括將該第二查找表儲存為一個三 維陣列’該三維陣列係具有在該里德所羅門碼中的符號數 目的-維度、符號值的-維度、以及在該組中的錯誤修正 結果數目的一維度。 30.如申請專利範圍帛16項之電腦可讀取的媒體,其令 »玄二功此進步包括對於複數個數位廣播電視標準的每一 個標準以重複步驟(a)、(b)、⑷及⑷;判斷接收到的是哪一 數位廣播標準’·並且其中步驟⑷及⑽根據用於所判斷出 的數位廣播標準之個別的第—查找表及第二查找表。 31. 一種解碼一接收到的廣播信號之方法,其係包括以 下步驟: ⑷在解碼該廣播信號之前,對於—錯誤㈣演算法的 母個輸人計算出該錯誤_演算法的—組可能的結果; (b) 儲存該錯誤偵測演算 .吐 异凌所δ十异出之該組可能的結果 在一第一查找表中; (c) 在解碼該廣播信號之一 夂伽认 錄误修正演算法的 母個輪入計算出一組可能的錯誤修正結果; (d) 儲存所計算出之該纟且可能沾扭吃放 查找表♦ . j此的錯誤修正結果在一第二 (e) 利用該第一查找表以在—地 一供组. 接收到的廣播信號中偵測 箱疾,以及 (f) 當偵測到一錯誤時,利用 誤。 〜用該第二查找表以修正該錯 30 201216624 32. 如申請專利範圍第3 項 也 ^ 万去,其中該偵測發生在 僅利用該第一查找表。 33. 如申請專利範圍第31項 咕^ 項之方法,其中該修正發生在 僅利用該第二查找表。 i你 34. 如申請專利範圍第31 W或33項之方法,盆中 廣播信號是一數位電視廣播信號。 /、Τ X 35·如申請專利範圍第31項 比 m 万去,其中該錯誤偵測演 算法及錯誤修正演算法係包括一 王h所羅門演算法。 3 6 ·如申請專利範圍第3 1 I畐夕士 T ^ . ^ . 之方法,其中對於一錯誤修 正濟算法的母個輸入的計算係包括執行一錢式搜尋。 37. 如申請專利範圍第31 抑主_ 嗖您方去,其中儲存該第一查 找表係匕括儲存該第-查找表為—個三維陣列。 38. 如申請專利範圍第37 w咕π w a 喟之方去,其中該資料係包括 里k、所羅門瑪,每個里_所羅 … 里‘所羅門碼係包括複數個符號;及 儲存該第一杳找表传句扭I# μ 兮趨, 構成—里德所羅門碼的 -複數個符號的每一個符號 .I丨回j能的值,以儲存一斟 組的出錯成分。 诚仔封 杳找=中請專利範圍第38項之方法,其_該儲存該第— 、㈣第—查找表儲存為—個三维陣列,該三 符號值的掩体 ]碼中的符谠數目的一維度、 值的一維度、以及在該組中 4 f的出錯成分數目的一維度。 0.如申請專利範圍第39項 甘士兮+ L w 县‘报 万法,其中該些出錯成分 疋伽羅瓦場值。 41.如申請專利範圍第4〇 . . _ ^ ^ 角之万法,其中該里德所羅門 31 201216624 碼的該些符號係被用來從該第-查找表操取出錯成分,上 些出錯成分係-起進行X0R運算以產生該些出錯。4 42.如申請專利範圍帛”項之方法,其十健存日該第 找表係包括儲存該第二查找表為一個三維陣列。 ~ :如申請專利範圍第42項之方法,其令該資料係包括 里仏所羅門碼’每個里德所羅門碼係包括複數個符號;及 …=存-亥第一查找表係包括對於構成一里德所羅門碼的 該複數個符號的每-個符號之每個可能的值,以儲存一對 應組的錯誤修正結果。 44.如申請專利範圍第43項之方法,其中該儲存該第二 安戈表係包括將该第二查找表儲存為一個三維陣列,該三 係具有在該里德所羅門碼中的符號數 符號值的一唯产、w β + 又以及在該組中的錯誤修正結果數目的一 維度。 ^ 45 ·如申請專利範圍第3 1項之方法,其進一步包括對於 ^ 數位廣播電視標準的每一個標準以重複步驟(a)、 (c)及(d);判斷接收到的是哪一數位廣播標準;並且其 ,驟(e)及(f)係根據用於所判斷出的數位廣播標個別 的第—查找表及第二查找表。 八、圖式: (如次頁) 32
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB201009780A GB2482656A (en) | 2010-06-11 | 2010-06-11 | Digital TV decoder with adaptive inner decoder and Reed-Solomon outer decoder implemented as look up tables |
US12/814,099 US20110307757A1 (en) | 2010-06-11 | 2010-06-11 | Systems and methods for error correction |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201216624A true TW201216624A (en) | 2012-04-16 |
Family
ID=44486993
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100120538A TW201216624A (en) | 2010-06-11 | 2011-06-13 | Systems and methods for error correction |
Country Status (2)
Country | Link |
---|---|
TW (1) | TW201216624A (zh) |
WO (1) | WO2011154750A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10198317B1 (en) | 2014-11-17 | 2019-02-05 | Amazon Technologies Inc. | Computation refinement in a data storage system |
US10198319B1 (en) | 2014-12-15 | 2019-02-05 | Amazon Technologies Inc. | Computation refinement storage in a data storage system |
US10423670B1 (en) | 2015-01-05 | 2019-09-24 | Amazon Technologies, Inc. | Object coding in a host-side processing device |
US9898474B1 (en) | 2015-01-05 | 2018-02-20 | Amazon Technologies, Inc. | Object sharding in a host-side processing device for distributed storage |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4958349A (en) * | 1988-11-01 | 1990-09-18 | Ford Aerospace Corporation | High data rate BCH decoder |
US6360348B1 (en) * | 1999-08-27 | 2002-03-19 | Motorola, Inc. | Method and apparatus for coding and decoding data |
-
2011
- 2011-06-13 TW TW100120538A patent/TW201216624A/zh unknown
- 2011-06-13 WO PCT/GB2011/051092 patent/WO2011154750A1/en active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2011154750A1 (en) | 2011-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10243589B2 (en) | Multi-bit error correction method and apparatus based on a BCH code and memory system | |
TWI500038B (zh) | 記憶體系統之全套平行編碼方法與全套平行解碼方法 | |
US8074154B2 (en) | Methods and apparatus for encoding and decoding cyclic codes by processing multiple symbols per cycle | |
US9053047B2 (en) | Parameter estimation using partial ECC decoding | |
JP4462342B2 (ja) | 復号装置および復号方法 | |
US7934142B2 (en) | Encoding method to QC code | |
KR20040075954A (ko) | 에러 정정 디코더에서의 이중 치엔 탐색 블록 | |
TW201216624A (en) | Systems and methods for error correction | |
Wu | Novel burst error correction algorithms for Reed-Solomon codes | |
US7810015B2 (en) | Decoding with a concatenated error correcting code | |
Panda et al. | FPGA implementation of encoder for (15, k) binary BCH code using VHDL and performance comparison for multiple error correction control | |
JP4603518B2 (ja) | 符号化装置及び復号化装置 | |
EP2309650B1 (en) | A systematic encoder with arbitrary parity positions | |
Yathiraj et al. | Implementation of BCH code (n, k) encoder and decoder for multiple error correction control | |
CN108886369B (zh) | 用于执行里德-所罗门编码的方法和装置 | |
GB2469889A (en) | Serial concatenated decoding with optional sub-optimal inner decoding | |
JP2001196938A (ja) | デジタルデータをデコーディングする装置及び方法 | |
Spinner et al. | Design and implementation of a pipelined decoder for generalized concatenated codes format | |
Tiwari et al. | Design and implementation of Reed Solomon Decoder for 802.16 network using FPGA | |
JP3734486B2 (ja) | 誤り訂正装置および誤り訂正方法 | |
KR101636406B1 (ko) | 저지연 신드롬 계산을 위한 bch 디코더의 전처리 장치 및 방법 | |
Barbosa et al. | FPGA implementation of a Reed-Solomon CODEC for OTN G. 709 standard with reduced decoder area | |
Mahdy et al. | Design and Simulation of Parallel BCH Code with LDPC Code For Flash Memories | |
JP6532636B2 (ja) | 中継装置 | |
Fu et al. | Architecture design of reconfigurable Reed-Solomon error correction codec |