JPH09505952A - プログラム可能な冗長/シンドローム生成装置 - Google Patents

プログラム可能な冗長/シンドローム生成装置

Info

Publication number
JPH09505952A
JPH09505952A JP7509902A JP50990294A JPH09505952A JP H09505952 A JPH09505952 A JP H09505952A JP 7509902 A JP7509902 A JP 7509902A JP 50990294 A JP50990294 A JP 50990294A JP H09505952 A JPH09505952 A JP H09505952A
Authority
JP
Japan
Prior art keywords
cascade
polynomial
order polynomial
cell
register
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP7509902A
Other languages
English (en)
Inventor
ズーク,クリストファ・ピィ
グローバー,ニール
Original Assignee
サーラス・ロジック・インコーポレーテッド
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
Application filed by サーラス・ロジック・インコーポレーテッド filed Critical サーラス・ロジック・インコーポレーテッド
Publication of JPH09505952A publication Critical patent/JPH09505952A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Computer Security & Cryptography (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

(57)【要約】 単一の回路を使用して、送信動作時に検査記号を生成し、受信動作時にシンドロームを生成する多項式符号用の誤り訂正エンコーダ/デコーダのハードウェア実施態様。符号生成元用の根の選択、したがって符号順序はプログラム可能である。

Description

【発明の詳細な説明】 プログラム可能な冗長/シンドローム生成装置 発明の分野 本発明は、全般的には、ディジタル・データ通信システムに関し、詳細には、 誤り訂正符号の符号化および復号に関する。 発明の背景 ディジタル通信システム(光媒体または磁気媒体との間の記憶および検索を含 む)では、情報の転送速度を増加させ、同時に誤り率を任意に低減させるために 、誤り制御システムを使用する必要がある。信号雑音比が固定され、帯域幅が固 定されている場合、誤り訂正符号を使用することによって改良を施すことができ る。 伝送または記憶すべきデータは、誤り訂正符号化を用いて数学的に処理され、 検査記号または冗長記号と呼ばれる追加データ記号を得る。データ記号と検査記 号は共に符号語を構成する。伝送または検索の後に、符号語は数学的に処理され 、誤りの位置および値に関する情報を含む誤りシンドロームを得る。 多くの誤り訂正符号(リード・ソロモン符号などであるが、これに限らない多 項式符号)では、符号語は、複合多項式を生成多項式で除することができるよう にデータ多項式に剰余多項式(冗長記号)を加えることによって形成される。剰 余多項式は、データ多項式を生成多項式で除し、剰余多項式を維持することによ って得られる。誤りシンドロームは、受信した多項式(誤り多項式が加えられた 可能性がある符号語多項式)を生成多項式の個別の係数で除することによって得 られる。 従来の技術 第1図は、多項式除算を行うことによって冗長記号を生成することができる回 路を示す。 第2図は、それぞれ、1つの誤りシンドロームを生成することができる複数の 1階(ファーストオーダ)除算器を示す。 従来の技術の限界 このような符号を使用する際に生じる1つの問題は、冗長記号および誤りシン ドローム用のハイオーダ上位(多数の誤りを訂正することができる)生成の高速 実施態様で必要とされる回路の量が多いことである。符号化と復号の両方を行う 能力を必要とするシステムの場合、同時ではないにせよ両方の記号の組を生成す ることができる1つの回路を有することは望ましい特徴である。エンコーダが、 いくつかの異なる順序符号(それぞれの異なる数の冗長バイトを含む符号語)を 生成できるようにプログラムできるようにすることも望ましい特徴である。通常 の方法は、これらの特徴をどちらも有さない。 Neal Gloverに発行された「REED−SOLOMON CODE ENCODER and SYNDROME GENERATOR CIRC UIT」と題する米国特許第4777635号は、冗長記号とシンドローム記号 の両方を生成することができるが順序プログラム可能ではない回路を開示してい る。 バールカンプ・ウェルチ・アルゴリズムは、シンドロームを使用せず、その代 わりにエンコーダ回路を使用して、受信した多項式から剰余を算出する一般的な 復号アルゴリズムである。しかし、このアルゴリズムは、シンドロームを処理す るアルゴリズムよりも1ビットだけ複雑であり、順序プログラムではない。剰余 をシンドロームに変換することも可能であるが、これにはかなりの追加回路が必 要である。 発明の概要 本発明の目的は、単一の回路を使用して、送信動作時に検査記号を生成し、受 信動作時にもシンドロームを生成することによって、誤り訂正エンコーダ/デコ ーダのハードウェア実施態様中の回路の寸法を減少させることである。本発明の 他の目的は、単一の回路を使用して、それぞれの異なる数の検査記号を含む符号 語用の検査記号を生成することによって誤り訂正エンコーダ/デコーダのハード ウェア実施態様中の回路の寸法を減少させることである。 図面の簡単な説明 第1図は、冗長記号を生成する従来技術の解決策を示す図である。 第2図は、シンドロームを生成する従来技術の解決策を示す図である。 第3図は、本発明で使用される基本原則を示す図である。 第4図は、本発明の好ましい実施例のブロック図である。 第5図は、本発明の代替実施例のブロック図である。 第6図は、本発明の他の代替実施例のブロック図である。 第7図は、本発明の他の代替実施例のブロック図である。 発明の詳細な説明 本発明は、冗長記号およびシンドロームを生成することができる方法および装 置を含み、順序プログラム可能である。本発明の動作の理論は下記のとおりであ る。多項式符号は、符号語、すなわち複数の生成多項式からなる。符号語c(x )は、次数k未満のデータ多項式D(x)を次数n−kの生成多項式g(x)で 除して次数n−k未満の冗長多項式r(x)を得ることによって形成される。r (x)をD(x)に加えることによって次数n未満のc(x)が生成される(す なわち、k個のデータ記号と、n−k個の冗長記号と、n個の合計記号があり、 各記号は所定の複数のビットmを有する)。 下記の説明は、1階除算器(各除算器は、1つの係数、すなわち(x+rj) での除算を行う)のカスケードにD(x)を送りr(x)を生成することが可能 であることを示すものである。次いで、このような1階除算器を使用して読み動 作(復号)時にシンドロームを生成することができる。 第3図は、1階多項式除算器のカスケードと、それに続く1階多項式乗算器の カスケードを示す。多項式除算器は、それぞれ1記号幅である、レジスタ200 と、定数乗算器201と、加算器202とで構成される。多項式除算器の出力は 、入力多項式にxを乗じ(x+rj)で除した値である。各多項式乗算器は、そ の入力に(x+rj)を乗じる。各演算ステップ(すべてのレジスタの同時クロ ッキングと次の記号の入力)で、各除算器の出力は、対応する乗算器への入力に 一致し、たとえば2030は2131に一致する。各除算器レジスタも、対応する 乗算器レジスタに一致し、たとえばAjはBjに一致する。除算器カスケード2 03n-k-1の出力は下記のとおりである。 かつ xn-kD(x)−q(x)×g(x)=xn-kD(x)mod(g(x)) したがって、次式が成立する。 乗算器カスケードの出力はq(x)g(x)である。203n-k-1上に現れる 最初のk個の項(記号)はq(x)であり、2130上に現れる最初のk個の項 (記号)はD(x)である。q(x)g(x)の残りを得るために、乗算器カス ケードへの入力がゲート214によって零にセットされ、回路がさらにn−k回 だけクロックされる。このクロックの間、乗算器カスケードの出力2130は、 xn-kD(x)modg(x)、すなわち多項式符号中の冗長記号の級数である 。 実施態様 第3図中の乗算器レジスタは常に、除算器レジスタに一致するので、乗算器カ スケードを破棄することができ、最後のn−kクロックの間、除算器を乗算器カ スケードとして接続して冗長記号を生成することができる。これを第4図に示す 。この場合、冗長時間がオフのときは、MUX102および103によって、除 算器のカスケードを左から右へ形成するように(加算器106は左から右へ加算 される)レジスタおよび定数乗算器が接続される。REDUNDANCY TI MEがオンのときは、MUX102および103によって、乗算器のカスケード を右から左へ形成するように(加算器106は右から左へ加算される)レジスタ および定数乗算器が接続される。MUX101の機能は、シンドローム生成用の (カスケードにない)別々の除算器を形成することである。 書込み動作(符号化)の間、書き込みモードがオンになる。最初のkクロック 時間の間、冗長時間がオフになり、入力データ・バイトがMUX105の出力に 渡される。最後のn−kクロック時間の間、冗長時間がオンになり、MUX10 5の出力に冗長記号が存在する。 読取り動作時には、書き込みモードがオフになり、冗長時間がオフになり、n クロック時間にわたってデータと冗長性とからなる受信した多項式全体が入力さ れる。最後のクロック時間の間、MUX103の出力上でシンドロームが得られ る。 冗長生成時に、あるレジスタへのリセット入力をオンに保持することによって 、冗長計算からそのレジスタの対応する根が除去される。これによって、根の選 択を完全にプログラム可能にすることができる。特に、根の数(符号順序)をプ ログラムすることができる。 第4図に示した生成装置は、リード・ソロモン符号用のものである(すなわち 、定数乗算器104に示した根は、アルファの連続累乗、すなわちこの体の原始 根である)。しかし、本発明は、根の選択を含むどんな多項式コードにも適用さ れる。レジスタのリセットは、「オーダ<j」、すなわちリード・ソロモン符号 用の選択基準である(すなわち、オーダ連続根が含められ、剰余が除去される。 この場合、オーダは生成器の根の数である)。しかし、任意の選択基準を使用す ることができる。 第5図は、第4図の加算器チェーンから1組のMUXが除去され、第2の加算 器チェーンが追加された代替実施態様を示す。上部加算器チェーン306は、 (データ時間にわたって)左から右へ加算されるに過ぎず、下部加算器チェーン 302は、(冗長時間にわたって)右から左へ加算されるに過ぎない。これによ って、演算を高速化することができ、その代わりにゲート数が増加する(MUX と加算器との兼ね合い)。MUX303は、データ時間にわたって除算器カスケ ードを有する状態と、冗長時間にわたって乗算器カスケードを有する状態との間 で切り替わる。MUX301は、符号化用の除算器/乗算器のカスケードを有す る状態と、シンドローム生成用の別々の除算器を有する状態との間で切り替わる 。 第6図は、第5図中の上部加算器チェーンからMUXの集合が除去された代替 実施態様を示すものであり、シンドロームを生成できるようにするこの実施態様 の機能は、加算器401およびMUX407の集合を含めることによって実行さ れる。読取りモードの間、MUX407によって読取りデータを入力とすること ができ、加算器チェーン401がイネーブルにされ、それによって各段ごとのレ ジスタ出力が加算器401および406を通じて2度にわたって次の段に加えら れる。これによって、有限体GF(2m)において要素をそれ自体に加えた結果 が零になるので、各段が実際上結合解除される。このため、加算器チェーン40 6がもはやMUXを含まなくなるので、最高速の演算が可能になり、その代わり にゲートが増加する(MUXと加算器との兼ね合い)。 第7図は、第6図中のMUXが除去された代替実施態様を示す。各セクション は、冗長時間の間、除算器構成のままであるが、入力はMUX505および50 7を介してデータから冗長に切り替わる。要素がそれ自体に加えられたときに発 生する取り消しのために、レジスタの内容の和に等しい下部加算器チェーンの出 力を上部加算器チェーンの入力に加えることは、他の実施態様と同様に、構成を 実際に左右除算器から右左乗算器に変更することと同じ機能および結果を有する 。 本明細書では、本発明の好ましい実施例および様々な代替実施例を開示し詳し く説明したが、当業者には本発明の趣旨および範囲から逸脱せずに本発明の形態 および細部に様々な変更を加えられることが自明であろう。

Claims (1)

  1. 【特許請求の範囲】 1.それぞれの符号が所定の複数の2進ビットを有し、それぞれの符号語がデ ータと冗長記号とを有していて、2進ビット群を備えるデータを多項式符号の符 号語として符号化するときに冗長記号を生成し、誤りを含む可能性がある対応す る符号語を復号しているときにシンドロームを生成する装置において、 (a)各セルが、 リセット可能なレジスタと、 加算器と、 定数乗算器とを備えるセル集合手段と、 (b)現在の出力が、入力が定数を乗じられた現在の出力であるレジスタの出 力に加えられる現在の入力である1階多項式除算器として前記各セルを接続でき るようにする接続手段と、 (c)現在の出力が、入力が定数を乗じられた現在の入力であるレジスタの出 力を加えられた現在の入力である1階多項式乗算器として前記各セルを接続でき るようにする接続手段と、 (d)前記セル集合を前記1階多項式除算器のカスケードまたは前記1階多項 式乗算器のカスケードとして接続できるようにする接続手段と、 (e)除算器カスケードの入力段に送信データを接続できるようにする接続手 段と、 (f)前記乗算器カスケードの出力段の出力を符号語冗長記号として情報チャ ネルに出力できるようにする接続手段と、 (g)前記各除算器を使用して受信データを分割し1つのシンドロームを生成 することができるように、前記各セルを別々の1階多項式除算器として接続でき るようにする接続手段と を備えることを特徴とする装置。 2.各セルの定数乗算器が、その入力に符号語生成元の1つの根を乗じること を特徴とする請求項1に記載の装置。 3.セルの根が所望の符号語生成元に包含されないときに、セルのレジスタが リセット状態に保持されることを特徴とする請求項1に記載の装置。 4.2進ビット群を備えるデータを、それぞれ、次数k未満のデータ多項式D (x)を次数n−kの生成多項式g(x)で除して次数n−k未満の冗長多項式 r(x)を得て、r(x)をD(x)に加えて次数n未満のc(x)を生成する ことによって形成された、多項式符号の符号語c(x)として符号化する際に、 それぞれ所定の複数の2進ビットmを有する冗長記号を生成し、誤りを含む可能 性のある符号語を復号する際にシンドロームを生成する装置であって、 (a)それぞれが、 第1および第2の加算器と出力とを有するmビット幅加算器と、 前記加算器への1入力として接続された出力を有するmビット幅のリセット可 能なレジスタと、 前記リセット可能なレジスタに接続された出力を有するmビット幅有限体定数 乗算器とを有する複数のセルと、 (b)前記各mビット幅加算器の現在の出力はそれぞれのレジスタの出力に加 えられたそれぞれの前記セルへの現在の入力である1階多項式乗算器として前記 各セルを選択的に接続できるようにする接続手段であって、前記レジスタの入力 は有限体定数が乗じられる加算器の現在の出力である接続手段、 (c)入力が定数が乗じられた現在の入力であるレジスタの出力に加えられた 現在の入力が現在の出力である1階多項式乗算器として前記各セルを選択的に接 続する接続手段であって、前記セルが、1階多項式除算器のカスケード中のセル のそれぞれの順序とは逆の順序で前記1階多項式乗算器のカスケード内で順序付 けられる接続手段と、 (d)前記1階多項式除算器のカスケードまたは前記1階多項式除算器のカス ケードまたは前記1階多項式乗算器のカスケードとして前記セル集合を選択的に 接続する接続手段と、 (e)除算器カスケードの入力段に送信データを接続できるようにする接続手 段と、 (f)前記乗算器カスケードの出力段の出力を符号語冗長記号として情報チャ ネルに出力できるようにする接続手段と、 (g)前記各除算器を使用して受信データを分割し1つのシンドロームを生成 することができるように、前記各セルを別々の1階多項式除算器として接続でき るようにする接続手段を備えることを特徴とする装置。 5.各セルの定数乗算器が、その入力に符号語生成元の1つの根を乗じること を特徴とする請求項4に記載の装置。 6.セルの根が所望の符号語生成元に包含されないときに、セルのレジスタが リセット状態に保持されることを特徴とする請求項4に記載の装置。 7.2進ビット群からなるデータ記号を多項式符号の符号語に符号化する際に 冗長記号を生成する装置であって、各符号語c(x)は、それぞれ、次数k未満 のデータ多項式D(x)を次数n−kの生成多項式g(x)で除し、次数n−k 未満の冗長多項式r(x)を得て、r(x)をD(x)に加えて次数n未満のc (x)を生成することによって形成され、それぞれの記号は所定の複数の2進ビ ットmを有する冗長記号を生成する装置において、 レジスタと、有限体乗算器と、加算器とを有し、それぞれ、1階多項式除算器 または1階多項式乗算器として選択的に接続することができる複数のセルと、 各セルを接続して1階多項式除算器を形成し、前記1階多項式除算器を結合し て1階多項式除算器のカスケードを形成する手段と、 符号語用のデータ記号を順次、1階多項式除算器のカスケードに入力する手段 と、 各セルを接続して1階多項式乗算器を形成し、前記1階多項式除算器を結合し て1階多項式乗算器のカスケードを形成し、前記レジスタが、1階多項式除算器 のカスケード中のレジスタのそれぞれの順序とは逆の順序で前記1階多項式乗算 器のカスケード内で順序付けられる手段と、 前記乗算器カスケードへの入力を零に保持し、前記リセット可能なレジスタを クロックしてデータ記号に関連する冗長記号を除去する手段と を備えることを特徴とする装置。 8.データ記号を符号化する際に冗長記号を生成し、誤りを含む可能性のある 符号語を復号する際にシンドロームを生成する請求項7の装置を備え、さらに、 各セルを接続して別々の1階多項式除算器を形成する手段と、 誤りを有する可能性がある符号語を別々の除算器に供給し、受信した符号語を 生成多項式で除して1つのシンドロームを生成する手段とを備えることを特徴と する装置。 9.セルの根が所望の符号語生成元に包含されないときに、セルのレジスタが リセット状態に保持されることを特徴とする請求項7に記載の装置。 10.それぞれ、次数k未満のデータ多項式D(x)を次数n−kの生成多項 式g(x)で除して次数n−k未満の冗長多項式r(x)を得て、r(x)をD (x)に加えて次数n未満のc(x)を生成することによって形成された多項式 符号の符号語c(x)として2進ビット群からなるデータ記号を符号化する際に 、それぞれ、所定の複数の2進ビットmを有する冗長記号を生成する方法であっ て、 (a)それぞれ、レジスタ入力とレジスタ出力とを有するmビット幅のリセッ ト可能なレジスタと、乗算器入力を有するmビット幅有限体定数乗算器とを有し 、前記レジスタ入力に接続された乗算器出力を有する複数のセルを供給するステ ップと、 (b)複数のセルのそれぞれのレジスタ出力をそれぞれのmビット幅加算器の 2つの加算器入力の一方として接続し、レジスタ自体の入力が、有限体定数が乗 じられる前記それぞれの加算器の現在の出力である、前記それぞれのレジスタの 出力に加えられる前記それぞれの加算器への現在の入力が前記各mビット幅加算 器の現在の出力になるように前記mビット幅有限体定数乗算器の入力を接続して 1階多項式除算器を形成し、前記1階多項式除算器を結合して1階多項式除算器 のカスケードを形成するステップと、 (c)符号語用のデータ記号を順次、ステップ(b)で形成された1階多項式 除算器のカスケードに入力するステップと、 (d)前記セルが、1階多項式除算器のカスケード中のレジスタおよび乗算器 のそれぞれの順序とは逆の順序で前記1階多項式乗算器のカスケード内で順序付 けられたリセット可能なレジスタおよびそれぞれの有限体乗算器で形成されると きに、複数のセルのそれぞれのレジスタ出力をそれぞれのmビット幅加算器の2 つの加算器入力の一方として接続し、レジスタ自体の入力が、有限体定数が乗じ られる前記それぞれの加算器の現在の入力である、前記それぞれのレジスタの出 力に加えられる前記それぞれの加算器への現在の入力が最後に指定された前記各 mビット幅加算器の現在の出力になるように前記mビット幅有限体定数乗算器の 入力を接続し、前記1階多項式除算器を結合して1階多項式除算器のカスケード を形成するステップと、 (e)前記乗算器カスケードへの入力を零に保持し、前記リセット可能なレジ スタをクロックして、ステップ(c)のデータ記号に関連する冗長記号を除去す るステップと を含むことを特徴とする方法。 11.データ記号を符号化する際に冗長記号を生成し、誤りを含む可能性のあ る符号語を復号する際にシンドロームを生成し、請求項10のステップを含み、 さらに、 (f)別々の1階多項式除算器を形成する各セルをmビット幅加算器に接続す るステップと、 (g)誤りを有する可能性のある符号語をステップ(f)の除算器に与え、受 信した符号語に生成多項式で除してシンドロームを生成するステップとを含むこ とを特徴とする方法。 12.ステップ(d)で使用される加算器が、ステップ(b)で使用される加 算器と同じであることを特徴とする請求項10に記載の方法。 13.ステップ(d)で使用される加算器が、ステップ(b)で使用される加 算器と異なることを特徴とする請求項10に記載の方法。 14.データ記号を符号化する際に冗長記号を生成し、誤りを含む可能性のあ る符号語を復号する際にシンドロームを生成し、請求項10のステップを含み、 さらに、 (f)別々の1階多項式除算器を形成する各セルの出力が次のセルに2回加え られるように各セルを一対のmビット幅加算器に接続するステップと、 (g)誤りを有する可能性のある符号語をステップ(f)の除算器に提供し、 受信した符号語を生成多項式の係数で除してシンドロームを生成するステップと を含むことを特徴とする方法。 15.セルの根が所望の符号語生成元に包含されないときに、セルのレジスタ がリセット状態に保持されることを特徴とする請求項10に記載の方法。 16.それぞれ、次数k未満のデータ多項式D(x)を次数n−kの生成多項 式g(x)で除して次数n−k未満の冗長多項式r(x)を得て、r(x)をD (x)に加えて次数n未満のc(x)を生成することによって形成された、多項 式符号の符号語c(x)として2進ビット群からなるデータを符号化する際に、 それぞれ、所定の複数の2進ビットmを有する冗長記号を生成する方法であって 、 (a)レジスタと有限体乗算器と加算器とを有し、それぞれ、1階多項式除算 器または1階多項式乗算器として選択的に接続することができる複数のセルを供 給するステップと、 (b)各セルを接続して1階多項式除算器を形成し、前記1階多項式除算器を 結合して1階多項式除算器のカスケードを形成するステップと、 (c)符号語用のデータ記号を順次、ステップ(b)で形成された1階多項式 除算器のカスケードに入力するステップと、 (d)各セルを接続して1階多項式乗算器を形成し、前記1階多項式除算器を 結合して1階多項式乗算器のカスケードを形成し、前記レジスタが、1階多項式 除算器のカスケード中のレジスタのそれぞれの順序とは逆の順序で前記1階多項 式乗算器のカスケード内で順序付けられるステップと、 (e)前記乗算器カスケードへの入力を零に保持し、前記リセット可能なレジ スタをクロックしてステップ(c)のデータ記号に関連する冗長記号を除去する ステップとを含むことを特徴とする方法。 17.データ記号を符号化する際に冗長記号を生成し、誤りを含む可能性のあ る符号語を復号する際にシンドロームを生成し、請求項16のステップを備え、 さらに、 (f)別々の1階多項式除算器を形成する各セルをmビット幅加算器に接続す るステップと、 (g)誤りを有する可能性がある符号語をステップ(f)の除算器に与え、受 信した符号語を生成多項式の係数で除してシンドロームを生成するステップとを 含むことを特徴とする方法。 18.ステップ(d)で使用される加算器が、ステップ(b)で使用される加 算器と同じであることを特徴とする請求項16に記載の方法。 19.ステップ(d)で使用される加算器が、ステップ(b)で使用される加 算器と異なることを特徴とする請求項16に記載の方法。 20.データ記号を符号化する際に冗長記号を生成し、誤りを含む可能性のあ る符号語を復号する際にシンドロームを生成し、請求項16のステップを含み、 さらに、 (f)別々の1階多項式除算器を形成する各セルの出力が次のセルに2回加え られるように各セルを一対のmビット幅加算器に接続するステップと、 (g)誤りを有する可能性のある符号語をステップ(f)の除算器に提供し、 受信した符号語を生成多項式の係数で除してシンドロームを生成するステップと を含むことを特徴とする方法。 21.セルの根が所望の符号語生成元に包含されないときに、セルのレジスタ がリセット状態に保持されることを特徴とする請求項16に記載の方法。 22.それぞれ、次数k未満のデータ多項式D(x)を次数n−kの生成多項 式g(x)で除して次数n−k未満の冗長多項式r(x)を得て、r(x)をD (x)に加えて次数n未満のc(x)を生成することによって形成された、多項 式符号の符号語c(x)として2進ビット群からなるデータを符号化する際に、 それぞれ、所定の複数の2進ビットmを有する冗長記号を生成する装置であって 、 レジスタと有限体乗算器と加算器とを有し、1階多項式除算器のカスケードま たは1階多項式乗算器のカスケードとして機能するように選択的に接続すること ができ、前記レジスタが、1階多項式除算器のカスケード中のレジスタのそれぞ れの順序とは逆の順序で前記1階多項式乗算器のカスケード内で順序付けられる 複数のセルと、 前記1階多項式除算器のカスケードとして機能するように前記セルを接続する 手段と、 符号語用のデータ記号を順次、1階多項式除算器のカスケードに入力する手段 と、 前記1階多項式乗算器のカスケードとして機能するように前記セルを接続する 手段と、 前記乗算器カスケードへの入力を零に保持し、前記リセット可能なレジスタを クロックしてデータ記号に関連する冗長記号を除去する手段とを備えることを特 徴とする装置。 23.請求項22の装置を備え、データ記号を符号化する際に冗長記号を生成 し、誤りを含む可能性のある符号語を復号する際にシンドロームを生成し、前記 セルを別々の1階多項式除算器として機能するように選択的に接続することがで き、さらに、 各セルを接続して別々の1階多項式除算器を形成する手段と、 誤りを有する可能性がある符号語を別々の除算器に与え、受信した符号語を生 成多項式の係数で除してシンドロームを生成する手段とを備えることを特徴とす る装置。 24.セルの根が所望の符号語生成元に包含されないときに、セルのレジスタ がリセット状態に保持されることを特徴とする請求項22に記載の装置。 25.各セルを前記1階多項式除算器のカスケードとして機能するように選択 的に接続することができ、前記レジスタが、前記セルを前記1階多項式除算器の カスケードとして機能するように接続し前記レジスタの内容の和を前記1階多項 式除算器の入力に適用することによって、1階多項式除算器のカスケード中のレ ジスタのそれぞれの順序とは逆の順序で前記1階多項式乗算器のカスケード内で 順序付けられることを特徴とする請求項22に記載の装置。 26.それぞれ、次数k未満のデータ多項式D(x)を次数n−kの生成多項 式g(x)で除して次数n−k未満の冗長多項式r(x)を得て、r(x)をD (x)に加えて次数n未満のc(x)を生成することによって形成された、多項 式符号の符号語c(x)として2進ビット群からなるデータ記号を符号化する際 に、それぞれ、所定の複数の2進ビットmを有する冗長記号を生成する方法であ って、 レジスタと有限体乗算器と加算器とを有し、1階多項式除算器のカスケードま たは1階多項式乗算器のカスケードとして機能するように選択的に接続すること ができ、前記レジスタが、1階多項式除算器のカスケード中のレジスタのそれぞ れの順序とは逆の順序で前記1階多項式乗算器のカスケード内で順序付けられる 複数のセルを供給するステップと、 前記1階多項式除算器のカスケードとして機能するように前記セルを接続する ステップと 符号語用のデータ記号を順次、1階多項式除算器のカスケードに入力するステ ップと 前記1階多項式乗算器のカスケードとして機能するように前記セルを接続する ステップと 前記乗算器カスケードへの入力を零に保持し、前記リセット可能なレジスタを クロックしてデータ記号に関連する冗長記号を除去するステップと を含むことを特徴とする方法。 27.データ記号を符号化する際に冗長記号を生成し、誤りを含む可能性のあ る符号語を復号する際にシンドロームを生成し、請求項26の装置を備え、前記 セルを別々の1階多項式除算器として機能するように選択的に接続することがで き、さらに、 各セルを接続して別々の1階多項式除算器を形成するステップと 誤りを有する可能性がある符号語を別々の除算器に与え、受信した符号語を生 成多項式の係数で除してシンドロームを生成することを含むことを特徴とする方 法。 28.セルの根が所望の符号語生成元に包含されないときに、セルのレジスタ がリセット状態に保持されることを特徴とする請求項26に記載の方法。 29.各セルを前記1階多項式除算器のカスケードとして機能するように選択 的に接続することができ、前記レジスタが、前記セルを前記1階多項式除算器の カスケードとして機能するように接続し前記レジスタの内容の和を前記1階多項 式除算器の入力に適用することによって、1階多項式除算器のカスケード中のレ ジスタのそれぞれの順序とは逆の順序で前記1階多項式乗算器のカスケード内で 順序付けられることを特徴とする請求項26に記載の方法。
JP7509902A 1993-09-21 1994-09-20 プログラム可能な冗長/シンドローム生成装置 Pending JPH09505952A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/124,938 US5473620A (en) 1993-09-21 1993-09-21 Programmable redundancy/syndrome generator
US08/124,938 1993-09-21
PCT/US1994/010668 WO1995008803A2 (en) 1993-09-21 1994-09-20 Programmable redundancy/syndrome generator

Publications (1)

Publication Number Publication Date
JPH09505952A true JPH09505952A (ja) 1997-06-10

Family

ID=22417508

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7509902A Pending JPH09505952A (ja) 1993-09-21 1994-09-20 プログラム可能な冗長/シンドローム生成装置

Country Status (7)

Country Link
US (2) US5473620A (ja)
EP (1) EP0720759B1 (ja)
JP (1) JPH09505952A (ja)
KR (1) KR960705272A (ja)
DE (1) DE69429525T2 (ja)
SG (1) SG46513A1 (ja)
WO (1) WO1995008803A2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8198294B2 (en) 1998-07-18 2012-06-12 Motac Neuroscience Limited Treatment of dyskinesia
JP2013149290A (ja) * 2001-10-11 2013-08-01 Altera Corp プログラマブルロジックリソース上のエラー検出

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5768296A (en) * 1994-07-01 1998-06-16 Quantum Corporation ECC system supporting different-length Reed-Solomon codes whose generator polynomials have common roots
JP3260630B2 (ja) * 1996-07-31 2002-02-25 エヌイーシーマイクロシステム株式会社 定数除算器及び定数除算方法
JPH11196006A (ja) * 1997-12-26 1999-07-21 Nec Corp 並列処理シンドロ−ム計算回路及びリ−ド・ソロモン複合化回路
US6029186A (en) * 1998-01-20 2000-02-22 3Com Corporation High speed calculation of cyclical redundancy check sums
US6026420A (en) * 1998-01-20 2000-02-15 3Com Corporation High-speed evaluation of polynomials
US6058500A (en) * 1998-01-20 2000-05-02 3Com Corporation High-speed syndrome calculation
EP1146650A1 (en) * 2000-04-10 2001-10-17 Hewlett-Packard Company, A Delaware Corporation Error detection for data storage and transmission
US20020104053A1 (en) * 2000-12-15 2002-08-01 Mike Lei In-band FEC encoder for sonet
US7219289B2 (en) * 2005-03-15 2007-05-15 Tandberg Data Corporation Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same
US8527851B2 (en) * 2008-08-04 2013-09-03 Lsi Corporation System and method for using the universal multipole for the implementation of a configurable binary Bose-Chaudhuri-Hocquenghem (BCH) encoder with variable number of errors
US8464141B2 (en) 2008-08-13 2013-06-11 Infineon Technologies Ag Programmable error correction capability for BCH codes

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0159403A3 (de) * 1984-04-27 1987-11-11 Siemens Aktiengesellschaft Anordnung zur Korrektur von Bündelfehlern in verkürzten zyklischen Blockcodes
JPS62180617A (ja) * 1986-02-04 1987-08-07 Victor Co Of Japan Ltd パリテイ生成回路
US4777635A (en) * 1986-08-08 1988-10-11 Data Systems Technology Corp. Reed-Solomon code encoder and syndrome generator circuit
JPS6356022A (ja) * 1986-08-26 1988-03-10 Victor Co Of Japan Ltd デイジタル記録再生装置
JP2556495B2 (ja) * 1986-12-26 1996-11-20 キヤノン株式会社 符号処理装置
US5325373A (en) * 1986-12-22 1994-06-28 Canon Kabushiki Kaisha Apparatus for encoding and decoding reed-solomon code
JPS63186338A (ja) * 1987-01-28 1988-08-01 Nec Corp 誤り訂正回路
US4782490A (en) * 1987-03-16 1988-11-01 Cythera Corporation Method and a system for multiple error detection and correction
US5107503A (en) * 1987-08-24 1992-04-21 Digital Equipment Corporation High bandwidth reed-solomon encoding, decoding and error correcting circuit
US4868828A (en) * 1987-10-05 1989-09-19 California Institute Of Technology Architecture for time or transform domain decoding of reed-solomon codes
US5185711A (en) * 1989-12-08 1993-02-09 Sony Corporation Apparatus for dividing elements of a finite galois field and decoding error correction codes
US5243604A (en) * 1990-12-18 1993-09-07 Seagate Technology, Inc. On-the-fly error correction
JP2662472B2 (ja) * 1991-06-13 1997-10-15 シャープ株式会社 誤り訂正処理用シンドローム演算回路
US5442578A (en) * 1991-12-12 1995-08-15 Sony Corporation Calculating circuit for error correction
US5444719A (en) * 1993-01-26 1995-08-22 International Business Machines Corporation Adjustable error-correction composite Reed-Solomon encoder/syndrome generator
JP2694792B2 (ja) * 1993-01-27 1997-12-24 日本電気株式会社 誤り位置多項式演算回路
JP2605966B2 (ja) * 1993-02-12 1997-04-30 日本電気株式会社 誤り訂正回路
DE69414631T2 (de) * 1993-03-31 1999-04-08 Toshiba Kawasaki Kk Schaltung zur Durchführung des Euclidschen Algorithmus bei der Dekodierung Arithmetischer Kodes
US5465260A (en) * 1993-11-04 1995-11-07 Cirrus Logic, Inc. Dual purpose cyclic redundancy check

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8198294B2 (en) 1998-07-18 2012-06-12 Motac Neuroscience Limited Treatment of dyskinesia
JP2013149290A (ja) * 2001-10-11 2013-08-01 Altera Corp プログラマブルロジックリソース上のエラー検出

Also Published As

Publication number Publication date
SG46513A1 (en) 1998-02-20
KR960705272A (ko) 1996-10-09
EP0720759A4 (en) 1997-01-22
US5822337A (en) 1998-10-13
DE69429525T2 (de) 2002-07-18
WO1995008803A3 (en) 1995-04-13
WO1995008803A2 (en) 1995-03-30
DE69429525D1 (de) 2002-01-31
EP0720759B1 (en) 2001-12-19
EP0720759A1 (en) 1996-07-10
US5473620A (en) 1995-12-05

Similar Documents

Publication Publication Date Title
US9876607B2 (en) Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US5446743A (en) Coefficient updating method and apparatus for Reed-Solomon decoder
US4649541A (en) Reed-Solomon decoder
Albertengo et al. Parallel CRC generation
EP0527772B1 (en) Forward error correction code system
US20130275839A1 (en) Programmable Error Correction Capability for BCH Codes
US5901158A (en) Error correction encoder/decoder
JPH09505952A (ja) プログラム可能な冗長/シンドローム生成装置
JPH07202715A (ja) 時間定義域代数エンコーダ/デコーダ
US7516394B2 (en) Method and apparatus for combined encoder/syndrome computer with programmable parity level
US4293951A (en) Method and apparatus for encoding/decoding a convolutional code to a periodic convolutional code block
WO1989003621A1 (en) Hypersystolic reed-solomon encoder
US6405339B1 (en) Parallelized programmable encoder/syndrome generator
JP3285428B2 (ja) 符号化方法および装置
US20030041300A1 (en) Universal device for processing Reed-Solomon forward error-correction encoded messages
RU2605672C1 (ru) Реконфигурируемый кодер рида-соломона
WO2005008900A1 (en) Information encoding by shortened reed-solomon codes
EP0341851A2 (en) Method and apparatus for interleaved encoding
US20100031126A1 (en) System and method for using the universal multipole for the implementation of a configurable binary bose-chaudhuri-hocquenghem (BCH) encoder with variable number of errors
RU2591474C1 (ru) Параллельный реконфигурируемый кодер бчх кодов
KR970005125B1 (ko) 리드-솔로만 부호기
Cuevas et al. Turbo decoding of product codes for Gigabit per second applications and beyond
RU160960U1 (ru) Реконфигурируемый кодер рида-соломона
RU2601827C1 (ru) Реконфигурируемый кодер бчх кодов
Steen Error correction for voice grade data communication using a communication processor