JPH087700B2 - 巡回冗長検査符号生成の方法および装置 - Google Patents

巡回冗長検査符号生成の方法および装置

Info

Publication number
JPH087700B2
JPH087700B2 JP3284176A JP28417691A JPH087700B2 JP H087700 B2 JPH087700 B2 JP H087700B2 JP 3284176 A JP3284176 A JP 3284176A JP 28417691 A JP28417691 A JP 28417691A JP H087700 B2 JPH087700 B2 JP H087700B2
Authority
JP
Japan
Prior art keywords
crc
codeword
preliminary
prescribed
message
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.)
Expired - Fee Related
Application number
JP3284176A
Other languages
English (en)
Other versions
JPH05127934A (ja
Inventor
ドラヴィダ サブラマニヤム
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
AT&T Corp
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 AT&T Corp filed Critical AT&T Corp
Publication of JPH05127934A publication Critical patent/JPH05127934A/ja
Publication of JPH087700B2 publication Critical patent/JPH087700B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • H03M13/091Parallel or block-wise CRC computation
    • 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/6575Implementations based on combinatorial logic, e.g. Boolean circuits

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、符号語の生成に関し、
さらに詳細には、CRC(巡回冗長検査)符号語の生成
に関する。
【0002】
【従来の技術】CRC符号語は、直列的にも並列的にも
生成される。「高い」ビット速度の通信網では、CRC
符号語を並列的に生成する方が望ましい。CRC符号語
を並列的に生成する周知の従来の装置は、たとえ可能で
あるとしても実用的に実現するには困難であるような複
雑な回路構造を用いる必要があった。この実現上の困難
さは、CRC符号語の生成に一般に用いられるCRC生
成多項式の形式によるものである。一般に、CRC生成
多項式は、(1+x)f(x)という形式である。因子
(1+x)のために、従来の並列CRC符号語生成装置
に対し手にあまる複雑さが導入される。これは、従来の
装置ではCRC生成多項式全体による除算を1段階で行
うことによってCRC符号語が生成されたからである。
このような除算をハードウェア設計で実現することは極
めて困難である。
【0003】
【発明が解決しようとする課題】発明が解決しようとす
る課題は、(1+x)・f(x)という形式のCRC生
成多項式を用いてCRCコードを効率的に生成する方法
および装置を与えることである。
【0004】
【課題を解決するための手段】従来の並列CRC符号語
生成装置に関する問題は、本発明に従い(1+x)f
(x)という形式のCRC生成多項式を用いる2段階処理
において全体的なCRC符号語を生成することによっ
て、解決できる。第1段階は、f(x)に相当する予備段
階のCRC符号語の生成を含む。第2段階は、(1+
x)に相当する項の生成を含む。これらの2つの段階
は、独立に並行して同時に行われる。これらの2つの段
階が完了すると、全体的なCRC符号語を生成するため
に、予備段階のCRC符号語および(1+x)に相当す
る項が規定の要領で結合される。
【0005】さらに詳細には、(1+x)に相当する項
を巧みに利用してf(x)に相当する予備段階のCRC符
号語を規定の要領で修正することによって、全体的なC
RC符号語が得られる。(1+x)に相当する項は、
(0)状態または(1)状態の何れかである。この項が
0状態の場合、予備段階のCRC符号語を第1の規定の
要領で修正することによって、すなわち、f(x)に相当
する予備段階のCRC符号語のビットを左に1回シフト
することによって、全体的なCRC符号語を得る。前記
の項が1状態の場合、予備段階のCRC符号語を第2の
規定の要領で修正することによって、すなわち、f(x)
に相当する予備段階のCRC符号語のビットを左に1回
シフトし、さらにそのシフトした予備段階のCRC符号
語にf(x)を加えることによって、全体的なCRC符号
語を得る。
【0006】
【実施例】論理的説明 以下において、CRC符号の性質を簡単に振り返ってみ
る。CRC符号は、ビット列が0および1のみの係数を
有する多項式の表現として扱われるという点で、多項式
符号である。nビットのメッセージは、xn-1からx0
わたるn項を有する1つの多項式に対する係数のリスト
であると見なされる。代数分野の理論の法則によって、
多項式演算は2を法として行われる。従って、加算も減
算も、ともに排他的論理和演算と同じである。
【0007】以下において、CRCフィールドを含むメ
ッセージの長さをnとし、生成多項式をG(x)で表し、
G(x)の次数をrと仮定する。
【0008】(x+1)が生成多項式G(x)を割り切る
ことができ、かつG(x)がxとnまでの任意のkに対す
る(xk+1)とを割り切ることができない場合、ゼロ
でない正当な多項式のハミングの重み(Hamming weigh
t)は、少なくとも4である。これにより、ハミングの
距離4を与えることができるCRC符号の生成多項式を
見つける方法が与えられる。
【0009】次の多項式は、CRC−10、CRC−1
2、およびCRC−16に対して、それぞれ国際標準と
なったものである。
【数1】 これらの多項式は、すべて(1+x)・f(x)という形
式である。ただし、f(x)は、原始多項式である。関数
(1+x)は、ハミングの距離4を与える生成多項式に
おける因子である。本発明の実施において他の多項式も
同様に使用できることは明かである。
【0010】前記のような多項式に特に適し、かつ本発
明により並列式に非常に簡単に実施することを可能とす
るCRC符号語生成の方法および装置を説明する。多項
式g(x)を多項式h(x)によって割ったときに得られる
剰余を表すのに
【数2】 という表記を用いる。
【0011】CRC生成多項式G(x)が次式で表される
とする。 G(x)=(1+x)f(x) (4) CRC符号を求めるメッセージ多項式をM(x)とし、検
査ビットの数(すなわち、G(x)の次数)をrとする
と、f(x)の次数はr−1である。
【0012】次に、次式によって与えられる剰余R(x)
を求める。
【数3】 剰余R'は、次のように定義される。
【数4】 換言すれば、f(x)が生成多項式であるとき、すなわ
ち、R'(x)がf(x)に相当する予備段階のCRC符号
語であるとき、R'(x)は、M(x)に対するCRC符号
である。
【0013】式(6)は、次のように書くことができ
る。 xr-1M(x)=Q'(x)・f(x)+R'(x) (7) ただし、Q'(x)は、商の多項式である。次に、(1+
x)に相当する項が、次のように定義される。
【数5】 つまり、R"(x)は、Q'(x)を(1+x)で割ったとき
に得られる剰余である。式(8)は、次のように書くこ
とができる。 Q'(x)=Q"(x)・(1+x)+R"(x) (9) ただし、Q"(x)は、適切な商多項式である。式(9)
を式(7)に代入し、全体にxを乗じると、 xrM(x)=x・Q"(x)・(1+x)・f(x)+x・R"(x)・f(x)+x・R'(x) (10) となる。剰余演算子は線形であるから、式(10)の全
体を(1+x)f(x)で割ると、次のようになる。
【数6】 これは、式(10)の右辺の第1項が剰余0を与えるか
らである。ここで、R"(x)は、0次であるから、x・R"
(x)・f(x)はr次である。(1+x)f(x)の次数はrで
ある。従って、剰余
【数7】 を生成するには、1回は除算が必要である。R"(x)
は、0次であるから、2つの値、すなわち0または1の
何れかをとることができる。項R"(x)が0の場合、こ
の剰余は0である。項R"(x)が1ならば、剰余
【数8】 を生成するだけでよく、その結果はf(x)である。
【0014】式(11)の右辺の第2項については、
R'(x)がr−2次であるから、xR'(x)はr−1次で
ある。分母はr次である。従って、結果はxR'(x)で
ある。これには、R'(x)のビットの左へのシフトを伴
うに過ぎない。所望の最終的な結果は、次のようにな
る。 f(x)+x・R'(x) (R"(x)=1の場合) R(x)={ (12) x・R'(x) (R"(x)=0の場合)
【0015】全体的なCRC符号の生成には、2つの段
階が伴う。すなわち、生成多項式としてf(x)を有する
M(x)の予備段階のCRC符号であるR'(x)の生成、
および(1+x)に相当する項R"(x)の生成である。
これらの2つの段階が終了すると、本発明により、式
(12)を用いることによって、所望の全体的なCRC
符号、すなわち、剰余R(x)を非常に簡単に得ることが
できる。
【0016】以下において、R'(x)およびR"(x)の並
行的生成を説明する。例として、16ビットの実施例を
用いる。しかし、勿論、結果は、バイト・ベースでも3
2ビット・ベースでも他の任意の実施例に拡張すること
ができる。
【0017】M(x)が次の多項式表現を有するものとす
る。
【数9】 ただし、kは、メッセージの長さである。式(13)
は、次のように書ける。
【数10】 式(14)にxr-1を掛けて、次式を得る。
【数11】 -1=0 を境界条件として、次の漸化式を定義する。
【数12】 式(17)の定義より、
【数13】 従って、式(16)は、次のように書ける。 xr-1・M(x)=A0・xr-1+Bk-2 (19) 次のようにri(x)を帰納的に定義する。
【数14】 境界条件はr-1(x)=0である。式(20)の代わり
に、次のように表現できる。 Ak-1-i・xr-1+x16・ri-1(x)=f(x)・Ci(x)+ri(x) (21) ただし、Ci(x)は、適当な商多項式である。
【0018】式(21)を式(17)に代入して、次式
を得る。 B0=x16・r0(x)+x16・f(x)・C0(x) (22) 式(22)および式(21)を式(17)に代入して、
次式を得る。 B1=x16・r1(x)+x16・f(x)[C1(x)+x16 0(x)] (23) 式(17)の帰納的処理を実行すると、次のようにな
る。
【数15】 式(24)を式(19)に入れると、
【数16】 となる。剰余演算子は、線形である。
【0019】式(25)をf(x)で割ると、
【数17】 となる。これは、式(25)の右辺の第2項が、剰余0
を生じるからである。また、
【数18】 ただし、Q'は、既に定義したように、式(26)にお
ける除算によって生成される商である。次の漸化式でD
i(x)を定義する。 Di(x)=x16[Ci(x)+Di-1(x)] (28) この境界条件は、 D-1=0 である。式(28)の帰納的処理を実行すると、次のよ
うになる。 Q'(x)=Ck-1(x)+Dk-2(x) (29) 次のようにti(x)を定義する。
【数19】 境界条件は、 t-1=0 である。式(30)は、代わりに次のように書くことが
できる。 Ci(x)+x16・ti-1(x)=(1+x)Ei(x)+ti(x) (31) ただし、Ei(x)は、商多項式である。式(31)を式
(28)に代入し、帰納的処理を実行して式(29)と
結合すると、次式を得る。
【数20】 式(32)全体を(1+x)によって割り、剰余が線形
演算子であるという事実を用いて、次式を得る。
【数21】
【0020】全面的実施に到るために、式(26)の
R'(x)を帰納的に求め、式(33)のR"(x)を帰納的
に求める。
【0021】R'(x)の生成に伴う重要な段階は、式
(20)によって指定される帰納処理である。f(x)は
r−1次であるから、ri-1はr−2次である。従っ
て、x16・ri-1は、14+r次である。Ak-1-iは15
次であるから、Ak-1-i(xr-1)も14+rである。f
(x)による除算の実行にブロック除算回路を使用すれ
ば、剰余が帰還され、到来する16ビットに加えられ
る。
【0022】R"(x)を生成するのに重要な段階は、式
(30)によって与えられる。ここで、ti-1は0次で
あり、x16i-1は16次である。Ci(x)は15次であ
る。まず、一般的な多項式に対するCi(x)を生成し、
(1+x)による除算をブロック除算回路によって行
う。
【0023】この実施および本発明の技術的利点は、f
(x)に相当する予備段階のCRC符号および(1+x)
に相当する項が互いに完全に独立して同時並列的に生成
されることである。
【0024】典型的な実施例 以下において、本発明の実施例を、次のCRC符号生成
多項式について説明する。 G(x)=(1+x2+x15+x17+x30+x31) =(1+x)(1+x+x15+x16+x30) (34)
【0025】図1において、(1+x)f(x)という形
式の生成多項式を用いてCRC符号R'(x)が並行して
生成される。同図には、メッセージ源101、予備段階
CRC符号語R'(x)生成器102、R"(x)項生成器1
03、および結合論理回路104が示されている。メッ
セージ源101には、CRC符号R(x)が生成される対
象であるメッセージM(x)を得るために伝送路100な
どへのインタフェースをとる装置も含まれる。メッセー
ジM(x)の所定のビット長Aiのブロックが、メッセー
ジ源101から予備段階CRC符号R'(x)生成器10
2およびR"(x)項生成器103の両方に供給される。
この例では、Aiビットの各ブロックは、16ビットを
並列に含んでいるが、これは本発明の範囲を制限するも
のではない。予備段階CRC符号R'(x)生成器102
は、供給されたメッセージM(x)のAiビットのブロッ
クに応答して、理論的説明において既に述べたような要
領で、すなわち、式(26)に従って、f(x)に相当す
るCRC符号R'(x)を生成する。また、R"(x)項生成
器103は、供給されるAiビットのブロックに応答し
て、同様に理論的説明において既に述べたように、すな
わち、式(33)に従って、項R"(x)を生成する。
尚、R'(x)およびR"(x)が出力として供給されるの
は、CRC符号R(x)が生成されている対象のメッセー
ジM(x)全体のビットAiのブロックが生成器102お
よび103の両方にすべて入力された後であるという点
に注意を要する。その後、結合論理回路104が、理論
的説明において既に述べたように、すなわち、式(1
2)に従って、R'(x)およびR"(x)を結合して所望の
CRC符号語R(x)を与える。尚、CRC符号生成多項
式である式(34)については、R'(x)が29次、R"
(x)が1次、そしてR(x)が30次である。さらに、生
成器103で生成されているR"(x)項とは独立して、
予備段階のCRC符号R'(x)が生成器102において
生成される。
【0026】図2に示したように、メッセージM(x)の
iビットの各ブロックにおけるビットa(i-16)0〜a
(i-1)15が、対応する複数の排他的ORゲートへと供
給され、さらにレジスタ201の各段へと供給される。
この例におけるレジスタ201は、16段のシフト・レ
ジスタである。レジスタ201からの出力は、別の排他
的ORゲートにおいて結合されて、レジスタ202に供
給される。この例では、レジスタ202も、AからNま
での段を備えたシフト・レジスタである。レジスタ20
1および202は、すべての段がゼロ(0)状態となる
ように初期化される。尚、レジスタ201および202
からの出力は、組合わさって予備段階のCRC符号R'
(x)を形成するが、説明を明晰にするために図示してい
ない。レジスタ201および202からの出力は、図3
において、メッセージM(x)のAiビットのすべてのブ
ロックが処理された後に、出力制御302の制御下で可
制御スイッチ301を通る出力として供給されるように
示してある。尚、+記号を円で囲んだ記号は、排他的O
Rゲートを表し、レジスタの段または排他的ORゲート
に入る矢印は、入力を表し、レジスタ段または排他的O
Rゲートから出る矢印は、出力を表す。
【0027】図4は、図1のR"(x)項生成器103に
おいて利用するのに好都合な構造の1つの略ブロック図
である。メッセージM(x)のAiビットの各ブロックに
おけるビットa(i-16)0〜a(i-1)15が、レジスタ4
01の段0〜15にそれぞれ供給される。レジスタ40
1は、各段がゼロ(0)状態となるように初期化され
る。レジスタ401の段0〜13および15および16
の出力は、図のように排他的ORゲートによって結合さ
れる。メッセージM(x)のすべてのブロックAiを処理
した後で排他的ORをとった最終的な結果が、レジスタ
401の段16に入力として供給される。レジスタ40
1の段16からの出力が、所望の項R"(x)であり、メ
ッセージM(x)のAiビットのすべてのブロックが処理
された後に、出力制御403の制御下で可制御スイッチ
402を介して出力として供給される。既に指摘したよ
うに、+記号を円で囲んだ記号は、排他的ORゲートを
表し、レジスタの段または排他的ORゲートに入る矢印
は、入力を表し、レジスタ段または排他的ORゲートか
ら出る矢印は、出力を表す。
【0028】図5において、結合論理回路は、既に示し
たように式(12)の条件を満たすように動作する。つ
まり、R"(x)がゼロならば、R'(x)のビットを左に1
回シフトすることによって、所望のCRC符号R(x)が
得られる。R"(x)が1ならば、R'(x)のビットを左に
1回シフトし、さらにシフトしたR'(x)に関数f(x)
を加えることによって、所望のCRC符号R(x)が得ら
れる。
【0029】以上の説明は、本発明の一実施例に関する
もので、この技術分野の当業者であれば、本発明の種々
の変形例が考えられるが、それらはいずれも本発明の技
術的範囲に包含される。
【0030】
【発明の効果】以上述べたように、本発明によれば、C
RC符号を効率的に生成することができる。
【図面の簡単な説明】
【図1】CRC符号語を並列に生成する構造の略ブロッ
ク図である。
【図2】f(x)に相当する予備段階のCRC符号語を並
列に生成する構造の略ブロック図である。
【図3】図2の予備段階のCRC符号語生成器102の
出力を略ブロック図の形に表した図である。
【図4】(1+x)に相当する項を生成する構造の略ブ
ロック図である。
【図5】図1の結合論理回路ユニットの関数を図式的に
表す図である。
【符号の説明】
101 メッセージ源 102 予備段階CRC符号R'(x)生成器 103 R"(x)項生成器 104 結合論理回路
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平1−265332(JP,A) 特開 昭58−72253(JP,A) 特開 昭57−68944(JP,A) 特開 昭57−25046(JP,A)

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】 メッセージM(x)の並列ビットAiのブ
    ロックを得るために伝送路へのインタフェースをとるス
    テップと、 メッセージM(x)のビットAiの前記ブロックに応答し
    て、巡回冗長検査(CRC)符号生成多項式としてf
    (x)を用いて予備段階のCRC符号語を生成するステッ
    プと、 メッセージM(x)のビットAiの前記ブロックに応答し
    て、(1+x)に相当する項を生成するステップと、 全体的なCRC符号語を得るために、前記の生成された
    (1+x)に相当する項に応じて前記の予備段階CRC
    符号語を規定の要領で修正するステップを備えて、 メッセージM(x)について、(1+x)f(x)という形
    式のCRC生成多項式を用いて全体的なCRC符号語を
    並列的に生成することを特徴とする巡回冗長検査符号生
    成の方法。
  2. 【請求項2】 前記の予備段階CRC符号語および(1
    +x)に相当する項を生成する両ステップが独立して同
    時に実行されることを特徴とする請求項1の方法。
  3. 【請求項3】 生成中の(1+x)に相当する項が、第
    1の規定の状態または第2の規定の状態の何れかを有す
    ることを特徴とする請求項2の方法。
  4. 【請求項4】 前記の修正するステップが、 前記の(1+x)に相当する項が前記第1の規定の状態
    を有するなら、前記の予備段階のCRC符号語を第1の
    規定の方法で修正し、前記の(1+x)に相当する項が
    前記第2の規定の状態を有するなら、前記の予備段階の
    CRC符号語を第2の規定の方法で修正することを含む
    ことを特徴とする請求項3の方法。
  5. 【請求項5】 前記第1の規定の状態が論理0であり、
    前記第2の規定の状態が論理1であり、前記の予備段階
    のCRC符号語を修正する前記第1の規定の方法が、前
    記規定の状態が論理0ならば前記の予備段階のCRC符
    号語のビットを左に1回シフトすることからなり、前記
    の予備段階のCRC符号語を修正する前記第2の規定の
    方法が、前記規定の状態が論理1ならば前記の予備段階
    のCRC符号語のビットを左に1回シフトし、かつシフ
    トされた予備段階のCRC符号語にf(x)を加えること
    からなることを特徴とする請求項4の方法。
  6. 【請求項6】 「A/B」がA÷Bの剰余を表すものと
    し、R'(x)が予備段階のCRC符号語であり、M(x)
    が全体的なCRC符号語を生成する対象のメッセージで
    あり、rがCRC生成多項式の次数であり、かつ(r−
    1)がf(x)の次数である場合、前記の予備段階のCR
    C符号語が、R'(x)=「xr-1M(x)/f(x)」に従っ
    て生成されることを特徴とする請求項5の方法。
  7. 【請求項7】 R"(x)が(1+x)に相当する項であ
    り、かつQ'(x)が前記メッセージM(x)から得た商多
    項式である場合、前記の(1+x)に相当する項が、
    R"(x)=「Q'(x)/(1+x)」に従って生成される
    ことを特徴とする請求項6の方法。
  8. 【請求項8】 メッセージM(x)の並列ビットAiのブ
    ロックを得るために伝送路へのインタフェースをとる手
    段と、 メッセージM(x)のビットAiの前記ブロックに応答し
    て、CRC生成多項式としてf(x)を用いて予備段階の
    CRC符号語を生成する手段と、 メッセージM(x)のビットAiの前記ブロックに応答し
    て、(1+x)に相当する項を生成する手段と、 全体的なCRC符号語を得るために、前記の生成された
    (1+x)に相当する項に応じて前記の予備段階CRC
    符号語を規定の要領で修正する手段を備えて、 メッセージM(x)について、(1+x)f(x)という形
    式のCRC生成多項式を用いて全体的なCRC符号語を
    並列的に生成することを特徴とする巡回冗長検査符号生
    成装置。
  9. 【請求項9】 前記の予備段階のCRC符号語を生成す
    る手段および前記の(1+x)に相当する項を生成する
    手段が、前記の予備段階のCRC符号語および前記の
    (1+x)に相当する項を独立して同時に生成すること
    を特徴とする請求項8の装置。
  10. 【請求項10】 生成中の(1+x)に相当する項が、
    第1の規定の状態または第2の規定の状態の何れかを有
    することを特徴とする請求項9の装置。
  11. 【請求項11】 前記の修正する手段が、 前記の(1+x)に相当する項が前記第1の規定の状態
    を有する場合に前記の予備段階のCRC符号語を第1の
    規定の方法で修正する手段と、前記の(1+x)に相当
    する項が前記第2の規定の状態を有する場合に前記の予
    備段階のCRC符号語を第2の規定の方法で修正する手
    段とを含むことを特徴とする請求項10の装置。
  12. 【請求項12】 前記第1の規定の状態が論理0であ
    り、前記第2の規定の状態が論理1であり、前記の予備
    段階のCRC符号語を修正する前記第1の規定の方法
    が、前記規定の状態が論理0ならば前記の予備段階のC
    RC符号語のビットを左に1回シフトすることからな
    り、前記の予備段階のCRC符号語を修正する前記第2
    の規定の方法が、前記規定の状態が論理1ならば前記の
    予備段階のCRC符号語のビットを左に1回シフトし、
    かつシフトされた予備段階のCRC符号語にf(x)を加
    えることからなることを特徴とする請求項11の装置。
  13. 【請求項13】 「A/B」がA÷Bの剰余を表すもの
    とし、R'(x)が予備段階のCRC符号語であり、M
    (x)が全体的なCRC符号語を生成する対象のメッセー
    ジであり、rがCRC生成多項式の次数であり、かつ
    (r−1)がf(x)の次数である場合、前記の予備段階
    のCRC符号語を生成する前記手段が、前記の予備段階
    のCRC符号語をR'(x)=「xr-1M(x)/f(x)」に
    従って生成する手段を含むことを特徴とする請求項12
    の装置。
  14. 【請求項14】 R"(x)が(1+x)に相当する項で
    あり、かつQ'(x)が前記メッセージM(x)から得た商
    多項式である場合、前記の(1+x)に相当する項を生
    成する手段が、前記の(1+x)に相当する項をR"
    (x)=「Q'(x)/(1+x)」に従って生成する手段
    を含むことを特徴とする請求項14の装置。
JP3284176A 1990-10-11 1991-10-04 巡回冗長検査符号生成の方法および装置 Expired - Fee Related JPH087700B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US59589990A 1990-10-11 1990-10-11
US595899 1990-10-11

Publications (2)

Publication Number Publication Date
JPH05127934A JPH05127934A (ja) 1993-05-25
JPH087700B2 true JPH087700B2 (ja) 1996-01-29

Family

ID=24385167

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3284176A Expired - Fee Related JPH087700B2 (ja) 1990-10-11 1991-10-04 巡回冗長検査符号生成の方法および装置

Country Status (5)

Country Link
US (1) US5282214A (ja)
EP (1) EP0480621B1 (ja)
JP (1) JPH087700B2 (ja)
CA (1) CA2050123C (ja)
DE (1) DE69117857T2 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2821324B2 (ja) * 1992-11-04 1998-11-05 三菱電機株式会社 誤り訂正回路
US5390196A (en) * 1992-11-12 1995-02-14 Bull Hn Information Systems Inc. Byte-wise determination of a checksum from a CRC-32 polynomial
JP3000811B2 (ja) * 1993-01-25 2000-01-17 日本電気株式会社 巡回符号化およびcrc装置とその処理方法
GB9312135D0 (en) * 1993-06-11 1993-07-28 Inmos Ltd Generation of checking data
GB9312136D0 (en) * 1993-06-11 1993-07-28 Inmos Ltd Transmission of messages
KR950009690B1 (ko) * 1993-09-14 1995-08-26 재단법인한국전자통신연구소 순환 여유검사(crc) 동기 장치
US5878057A (en) * 1995-10-06 1999-03-02 Tektronix, Inc. Highly parallel cyclic redundancy code generator
US5805614A (en) * 1996-07-03 1998-09-08 General Signal Corporation Fault tolerant switch fabric with control and data correction by hamming codes
US5812556A (en) * 1996-07-03 1998-09-22 General Signal Corporation Fault tolerant switch fabric with control and data correction by hamming codes and error inducing check register
US5796733A (en) * 1996-07-03 1998-08-18 General Signal Corporation Time division switching system
GB2321374A (en) * 1997-01-21 1998-07-22 Ico Services Ltd Spread spectrum satellite communication
US6006354A (en) * 1997-02-12 1999-12-21 Stmicroelectronics, Inc. Security device for a video digital to analog converter
DE69731074T2 (de) * 1997-04-30 2005-10-06 Hewlett-Packard Development Co., L.P., Houston Anordnung und Verfahren zur Übertragung von Daten über eine Vielzahl von Kanälen
DE19838865C2 (de) * 1998-08-26 2001-03-01 Ericsson Telefon Ab L M Parallele CRC Erzeugungsschaltung zum Erzeugen eines CRC Codes und Verfahren zum Generieren einer derartigen Schaltung
US6519738B1 (en) * 2000-03-07 2003-02-11 International Business Machines Corporation Method and apparatus for high-speed CRC computation based on state-variable transformation
US6766493B1 (en) 2000-12-21 2004-07-20 Cisco Technology, Inc. Method and apparatus for generating and checking cyclic redundancy code (CRC) values using a CRC generator and binary galois field multiplier
US6609225B1 (en) * 2000-12-21 2003-08-19 Cisco Technology, Inc. Method and apparatus for generating and checking cyclic redundancy code (CRC) values using a multi-byte CRC generator on a variable number of bytes
GB2383725A (en) * 2001-12-27 2003-07-02 Ubinetics Ltd Data decoding with Cyclic Redundancy Check
US7458006B2 (en) * 2002-02-22 2008-11-25 Avago Technologies General Ip (Singapore) Pte. Ltd. Methods for computing the CRC of a message from the incremental CRCs of composite sub-messages
US7225387B2 (en) * 2004-02-03 2007-05-29 International Business Machines Corporation Multilevel parallel CRC generation and checking circuit
US8438265B2 (en) * 2004-11-04 2013-05-07 International Business Machines Corporation Method of offloading iSCSI PDU corruption-detection digest generation from a host processing unit, and related iSCSI offload engine
JP4935787B2 (ja) * 2008-09-12 2012-05-23 日本電気株式会社 巡回符号演算処理回路

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3805232A (en) * 1972-01-24 1974-04-16 Honeywell Inf Systems Encoder/decoder for code words of variable length
US3775746A (en) * 1972-05-19 1973-11-27 Ibm Method and apparatus for detecting odd numbers of errors and burst errors of less than a predetermined length in scrambled digital sequences
US4312068A (en) * 1976-08-12 1982-01-19 Honeywell Information Systems Inc. Parallel generation of serial cyclic redundancy check
JPS58147807A (ja) * 1982-02-26 1983-09-02 Toshiba Corp 誤り訂正回路
US4454600A (en) * 1982-08-25 1984-06-12 Ael Microtel Limited Parallel cyclic redundancy checking circuit
US4498174A (en) * 1982-08-25 1985-02-05 Ael Microtel Limited Parallel cyclic redundancy checking circuit
US4677623A (en) * 1983-11-11 1987-06-30 Hitachi, Ltd. Decoding method and apparatus for cyclic codes
US4593393A (en) * 1984-02-06 1986-06-03 Motorola, Inc. Quasi parallel cyclic redundancy checker
US4809273A (en) * 1987-01-29 1989-02-28 International Business Machines Corporation Device for verifying operation of a checking code generator
US4890286A (en) * 1987-12-11 1989-12-26 Sanyo Electric Co., Ltd. Method and apparatus for decoding error correcting code
US5121396A (en) * 1988-10-27 1992-06-09 International Business Machines Corp. Preservation of crc integrity upon intentional data alteration during message transmission
US5111463A (en) * 1989-11-09 1992-05-05 Exabyte Corporation Error correction method and apparatus
US5103451A (en) * 1990-01-29 1992-04-07 Motorola, Inc. Parallel cyclic redundancy check circuit

Also Published As

Publication number Publication date
JPH05127934A (ja) 1993-05-25
DE69117857D1 (de) 1996-04-18
EP0480621A2 (en) 1992-04-15
US5282214A (en) 1994-01-25
EP0480621A3 (en) 1992-05-13
EP0480621B1 (en) 1996-03-13
CA2050123A1 (en) 1992-04-12
CA2050123C (en) 1997-12-09
DE69117857T2 (de) 1996-08-14

Similar Documents

Publication Publication Date Title
JPH087700B2 (ja) 巡回冗長検査符号生成の方法および装置
KR900006666B1 (ko) 유한체상의 승산기
EP0114938B1 (en) On-the-fly multibyte error correction
US6467063B1 (en) Reed Solomon coding apparatus and Reed Solomon coding method
US4797848A (en) Pipelined bit-serial Galois Field multiplier
JP4777258B2 (ja) ガロア体乗算のためのルックアップテーブルを使用するリード・ソロモン符号の符号化および復号化
JPH09507110A (ja) 有限体反転
US4994995A (en) Bit-serial division method and apparatus
JPH10135848A (ja) リードソロモン符号化装置およびその方法
JP3354025B2 (ja) エラー位置多項式の計算方法およびその装置
US6295626B1 (en) Symbol based algorithm for hardware implementation of cyclic redundancy check
US6751773B2 (en) Coding apparatus capable of high speed operation
JPH11296347A (ja) ガロワ体乗算器及びガロワ体乗算の方法
US6895545B2 (en) System and method for generating cyclic codes for error control in digital communications
CN108809323B (zh) 循环冗余校验码的生成方法和装置
US5971607A (en) Polynomial evaluator for use in a Reed-Solomon decoder
TWI226758B (en) Encoding method and apparatus for cross interleaved cyclic codes
US6484192B1 (en) Root finding method and root finding circuit of quadratic polynomial over finite field
JPH06314978A (ja) チェン・サーチ回路
JP4057876B2 (ja) ガロア体掛け算器の制御方法
JPH06230991A (ja) 有限体での任意元素の逆数算出方法及び装置
JP2591611B2 (ja) t重誤り訂正符号の符号化復号化回路
JPH1196030A (ja) 有限体上の乗算方法及び乗算回路
JPH1065553A (ja) リードソロモン復号化器用多項式評価装置
JP2710176B2 (ja) 誤り位置及び誤りパターン導出回路

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees