TW201216624A - Systems and methods for error correction - Google Patents

Systems and methods for error correction Download PDF

Info

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
Application number
TW100120538A
Other languages
English (en)
Inventor
Marius P Bonaciu
Original Assignee
Mirics Semiconductor Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from GB201009780A external-priority patent/GB2482656A/en
Priority claimed from US12/814,099 external-priority patent/US20110307757A1/en
Application filed by Mirics Semiconductor Ltd filed Critical Mirics Semiconductor Ltd
Publication of TW201216624A publication Critical patent/TW201216624A/zh

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic 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/1525Determination and particular use of error location polynomials
    • H03M13/153Determination and particular use of error location polynomials using the Berlekamp-Massey algorithm
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic 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/1515Reed-Solomon codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic 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/152Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic 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/1525Determination and particular use of error location polynomials
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/159Remainder calculation, e.g. for encoding and syndrome calculation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/65Purpose and implementation aspects
    • H03M13/6569Implementation 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)

  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
TW100120538A 2010-06-11 2011-06-13 Systems and methods for error correction TW201216624A (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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