JPH0385923A - Crc演算方式 - Google Patents

Crc演算方式

Info

Publication number
JPH0385923A
JPH0385923A JP1221695A JP22169589A JPH0385923A JP H0385923 A JPH0385923 A JP H0385923A JP 1221695 A JP1221695 A JP 1221695A JP 22169589 A JP22169589 A JP 22169589A JP H0385923 A JPH0385923 A JP H0385923A
Authority
JP
Japan
Prior art keywords
bits
bit string
crc
bit
gate
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
JP1221695A
Other languages
English (en)
Inventor
Ryuji Hyodo
竜二 兵頭
Tetsuo Nishino
西野 哲男
Osamu Isono
磯野 修
Tetsuo Tachibana
橘 哲夫
Eisuke Iwabuchi
岩渕 英介
Toshimasa Fukui
福井 敏正
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP1221695A priority Critical patent/JPH0385923A/ja
Publication of JPH0385923A publication Critical patent/JPH0385923A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔概要〕 CRC演算を行う方式の改良に関し、 入力データのビットレートが高速の場合にも容易に対応
でき、またCRC演算結果を収容するROMテーブルの
アドレス空間を削減できるCRC演算方式を提供するこ
とを目的とし、 人力ビット列を適当なビット数のビット列に分割し、こ
れらの分割した各ビット列に対応して該ビット列を前記
生成多項式によって割算した余りを格納するROMテー
ブルと、前記分割された各ビット列に対する該ROMテ
ーブルの出力の排他的論理和をとるEX−ORゲートと
を備え、前記入力ビット列のCRC演算結果を該EX−
ORゲートの出力として得ることによって構成する。
〔産業上の利用分野〕
本発明はCRC(Cyclic Redundancy
 Check)演算を行う方式の改良に関するものであ
る。
CRC演算方式は伝送符号の誤りを検出する手段として
、広く用いられている。
このようなCRC演算方式においては、高速のビットレ
ートにも容易に対応できるとともに、演算に用いるRO
Mのアドレス空間を削減できるものであることが要望さ
れる。
〔従来の技術〕 従来、CRC演算方弐としては、テーブルによるCRC
(!!読み出し方式と、シフトレジスタによる演算方式
とが知られている。
第6図はテーブルによるCRC値読み出し方式を示す図
である。この方式では、mビットのビット列を入力とし
て、n次(n+1ビット)の生成多項式によってCRC
演算を行う場合、このmビットのビット列に対するすべ
てのCRC演算結果を予め求めて、ROMテーブル1に
記憶させてお(。
CRC演算を行う場合には、人力ビット列をROMテー
ブルlのアドレスとみなして、このアドレスによってR
OMテーブル1の内容を読み出すことによって、nビッ
トのデータからなるCRC演算結果の出力を得る。
第7図はシフトレジスタによるCRC演算方弐を示す図
である。同図において、ブロック2゜〜2、、−Iはシ
フトレジスタを示し、ブロック3゜〜31’l−1はE
X−OR論理を行うEX−ORゲートを示している。ま
たC0〜C,、−、はコネクタを示し、生成多項式に応
じて各EX−ORゲートに人力を与えるか、または 論
理値“0”を固定的に与える。
第7図において、mヒントの人力データ列を先頭のEX
−ORゲート3゜から順次入力して、クロックによって
順次シフトする場合、最終のビットがシフトレジスタ2
.に入力されたときに、シフトレジスタ2゜〜2 n−
1に蓄積されているデータの値χ。〜χ7−1がCRC
演算結果である。
〔発明が解決しようとする課題〕
第6図に示された従来方式では、対象とするデータのビ
、7ト数がmのとき、CRC演算結果を収容するROM
Iにおいては、2′ワードのメモリ空間が必要となる。
従ってCRC演算結果がnビットの場合には、ROMテ
ーブル1としては、n×2′″ビットの容量をもつもの
が必要となる。このように第6図に示された従来方式で
は、入力データのビット数の増加に応じて、ROMテー
ブル1において必要なメモリ空間が急速に大きくなると
いう問題がある。
また第7図に示された従来方式では、CRC演算を行う
ためにシフトレジスタを含む複雑な回路が必要となるが
、この回路は対象とするデータと同速度のビットレート
を必要とする。従ってデータ伝送速度の増大に伴って高
速の演算素子が必要となり、特に高速の場合には、実現
不可能となる場合も生じる。
本発明はこのような従来技術の課題を解決しようとする
ものであって、入力データのビットレートが高速の場合
にも容易に対応でき、またCRC演算結果を収容するR
OMテーブルのアドレス空間を削減できるCRC演算方
式を提供することを目的としている。
[課題を解決するための手段〕 本発明は、第1図にその原理的構成を示されるように、
ROMテーブル16,1□、・・・、・・・・・、1n
と、EX−ORゲート4とを備え、入力ビット列のCR
C演算結果をEX−ORゲート4の出力として得るが、
この際、ROMテーブル1 r、 1 z、・・・、1
.。
に、入力ビット列を適度のビット数のビット列に分割し
た各ビット列に対応して、このビット列を生成多項式に
よって割算した余りを格納しておく。
EX−ORゲート4は、分割された各ビット列に対する
このROMテーブルh、1□、−,1,の出力の排他的
論理和をとって、入力ビット列のCRC演算結果を示す
出力を生じる。
また本発明は、ROMテーブルI L+ 1 z、・−
1・・・・・、1nと、EX−ORゲート4とを備え、
入力ビット列のCRC演算結果をEX−ORゲート4の
出力として得るが、この際、ROMテーブル111 1
 !。
・・・、1イに、入力ビット列を上位の適当なビット数
のビット列と、最下位の、生成多項式のビット数に達し
ないビット数のビット列とに分割し、上位の各ビット列
に対応してこのビット列を生成多項式によって割算した
余りを格納しておく。
EX−ORゲート4は、分割された各ビット列に対する
この各ROMテーブル11.1□、・・−1・・・・・
、1nの出力と、生成多項式のビット数に達しないビッ
ト数の最下位ビット列との排他的論理和をとって、入力
ビット列のCRC演算結果を示す出力を生じる。
[作用〕 いまCRC演算の対象とする(m+n)ビットのビット
列F(χ)が、第2図に示されるように、mビットの上
位桁F、(χ)と、nビットの下位桁F、(χ)とから
なるものとする。
このビット列に対するCRC演算は次式によって行われ
る。
ここで ( :生成多項式(1次) ):()内の割算の余りを求 める演算記号 である。
式(1)は、以下のように変形される。
・・(2) (2)式の結果を利用することによって、第6図に示さ
れた従来方式を第3図に示すように改善することができ
る。
第3図は、本発明の基本的な実現例を示す図である。(
m+n)ビットのビット列F(χ)は、mビットの上位
桁F、(χ)と、nビットの下位桁Fz(χ)に分割さ
れて、それぞれROMテーブル1 +、1 tに加えら
れる。ROMテーブル11、1gにおいては、それぞれ
の入力に対し1次(ffi+1ビット)の生成多項式に
よって第6図に示すようにして割算が行われ、その結果
はEX−ORゲート4において排他的論理和の演算を行
われて、lビットからなる演算結果の出力を生じる。
さらに、(2)式の第1項、第2項にそれぞれ(1)式
を通用して、上位桁と下位桁に分割する手順を繰り返す
ことによって、対象とする弐F(χ)を任意の項数に分
割することができる。
また、次式に示すように、対象式の下位lビットを生成
多項式で割って余りを出しても、その割られる値と余り
の値との間には変化が生じない。
ただしここでP≦1 (3)式の性質を利用して、第6図に示された従来方式
を第4図に示すように改善することができる。
第4図は本発明の一般的な実現例を示す図である。対象
とする(α1 +α2+・・・+α7+α7゜1)ビッ
トのビット列F(χ)は、α、ビットの第1位ビット列
F、(χ)、α2ビットの第2位ビット列F、(χ)、
・・・、α7ビットの第0位ビット列F、1(χ)およ
びα、1(α7゜、≦1)ビットの第n+1位ビット列
F−+(χ)に分割され、F+(χ)、Fz(χ)、・
・・、F、(χ〉はそれぞれROMテーブル1□1.、
・−’+Lに加えられる。ROMテーブル1□1□・・
r  ll’lにおいては、それぞれlビットの生成多
項式で割算が行われ、その結果に対してEX−ORゲー
ト45.・・・y4n−+において順次排他的論理和の
演算が行われる。最後にEX−ORゲート4.1におい
て、EX−ORゲート47−1の演算結果と、α7.1
 ビットとの排他的論理和の演算が行われて、lビット
からなる演算結果の出力を発生する。
このような方法でCRC演算を行うことによって、第6
図について説明した第1の従来方式における問題点であ
る、ROMのメモリ空間の増大を抑制することができる
。また分割されたそれぞれの入力信号は、パラレル信号
として処理されるため、入力信号のビットレートが高速
になっても実現性があり、第7図について説明した第2
の従来方式における問題点である、高速のビットレート
に対する対応も容易である。
〔実施例〕
第5図(a)、(財)は本発明の一実施例を示す図であ
る。送受信される情報(ビット列)のうちの、24ビッ
トのみについて8次の生成多項式でCRC演算を行う場
合を例示したものであり、(a)は送信側の構成を示し
、0))は受信側の構成を示している。
送信側においては、第5図(a)に示すように、24ビ
ットの入力信号を上位桁12ビットと下位桁12ビット
とに分割して、それぞれROMテーブル11,1!に加
える。ROMテーブルh、1□においては、人力信号を
並列処理して、それぞれ8ビットの生成多項式で割算を
行い、それぞれの結果によって、EX−ORゲート4に
おいて排他的論理和の演算を行われて、8ビットからな
る演算結果の出力を生じる。
この場合ROMテーブルhには、入力“XXXXXXX
XXXXX0OOOOOOOOOOOOOOOOOOO
’ (各Xは°O゛またはl″の値を持つ。そのため″
XXXXXXXXXXXX″は12ビットの任意の2進
数となる)に対するCRC演算結果が格納されており、
ROM 1 tには、入力”XXXXXXXXXXXX
0OOOOOOO’ II、:対するCRC演算結果が
格納されている。これによってEX−ORゲート4から
、8ビットからなる演算結果の出力を発生する。この演
算結果の出力は人力信号に付加されて、合計32ビット
の信号として受信側に伝送される。
受信側では、第5図(1))に示すように、伝送された
32ビットの入力信号を、上位桁12ビットと下位桁1
2ビットおよび最下位桁8ビットとに分割し、上位桁1
2ビットおよび下位桁12ビットを、それぞれROMテ
ーブル1114111に加える。
ROMテーブルIfl、112においては、それぞれ8
ビットの生成多項式で割算を行い、その結果である余り
はEX−ORゲート14+において排他的論理和の演算
を行われて、8ビットからなる演算結果の出力を生じる
この場合ROMテーブル11.には、入力“XXXXX
XXXXXXX0OOOOOOOOOOOOOOOOO
OO”に対するCRC演算結果が格納されており、RO
Mテーブル1hには、人力’XXXXXXXXXXXX
0OOOOOOO” ニ対するCRC演算結果が格納さ
れている。
EX−ORゲート14.の出力は、入力の最下位桁8ビ
ットともにE;X−0Rゲートl’bに加えられて、排
他的論理和の演算を行われ、8ビットからなる演算結果
の出力を生じる。EX−ORゲート14□の演算結果の
出力が“oooooooo”であれば、伝送路において
誤りが発生しなかったことが示される。
〔発明の効果〕
以上説明したように本発明によれば、入力データ列を分
割した各データ列に対応して、分割されたデータ列ごと
のCRC演算結果を格納するROMテーブルを設け、各
ROMテーブルの出力を排他的論理和演算して入力デー
タ列に対するCRC演算結果を求めるようにしたので、
CRC演算結果を記憶するROMのメモリ空間を削減で
きるとともに、高速のビットレートに対しても容易に対
応できるようになる。
【図面の簡単な説明】
第1図は本発明の原理的構成を示す図、第2図はCRC
演算の対象とするビット列を示す図、第3図は本発明の
基本的な実現例を示す図、第4図は本発明の一般的な実
現例を示す図、第5図(a)。 (b)は本発明の一実施例を示す図、第6図はテーブル
によるC RC(i読み出し方式を示す図、第7図はシ
フトレジスタによるCRC演算方式を示す図である。 111 1 !、−−,1,1はROMテーブル、4,
414□。 4゜はEX−ORゲートである。

Claims (1)

  1. 【特許請求の範囲】 〔1〕入力ビット列を適当なビット数のビット列に分割
    し、これらの分割した各ビット列に対応して該ビット列
    を前記生成多項式によって割算した余りを格納するRO
    Mテーブル(1_1、1_2、・・・・・、1_n)と
    、 前記分割された各ビット列に対する該ROMテーブル(
    1_1、1_2、・・・・・、1_n)の出力の排他的
    論理和をとるEX−ORゲート(4)とを備え、前記入
    力ビット列のCRC演算結果を該EX−ORゲート(4
    )の出力として得ることを特徴とするCRC演算方式。 〔2〕入力ビット列を適当なビット数のビット列に分割
    し、これらの分割した各ビット列の最下位のビット列の
    ビット数が生成多項式のビット数を超えないようにする
    とともに、最下位以外の分割された各ビット列に対応し
    て該ビット列を前記生成多項式によって割算した余りを
    格納するROMテーブル(1_1、1_2・・・・・、
    1_n)と、前記分割された各ビット列に対する該各R
    OMテーブル(1_1、1_2、・・・・・、1_n)
    の出力と、前記生成多項式のビット数に達しないビット
    数のビット列との排他的論理和をとるEX−ORゲート
    (4)とを備え、 前記入力ビット列のCRC演算結果を該EX−ORゲー
    ト(4)の出力として得ることを特徴とするCRC演算
    方式。
JP1221695A 1989-08-30 1989-08-30 Crc演算方式 Pending JPH0385923A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1221695A JPH0385923A (ja) 1989-08-30 1989-08-30 Crc演算方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1221695A JPH0385923A (ja) 1989-08-30 1989-08-30 Crc演算方式

Publications (1)

Publication Number Publication Date
JPH0385923A true JPH0385923A (ja) 1991-04-11

Family

ID=16770831

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1221695A Pending JPH0385923A (ja) 1989-08-30 1989-08-30 Crc演算方式

Country Status (1)

Country Link
JP (1) JPH0385923A (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003090362A1 (fr) * 2002-04-22 2003-10-30 Fujitsu Limited Codeur et decodeur de detection d'erreur, et diviseur
JP2005102213A (ja) * 2003-09-22 2005-04-14 Agilent Technol Inc メッセージのcrcを計算するための方法
JP2008160663A (ja) * 2006-12-26 2008-07-10 Fujitsu Ltd 情報ビット列の除算方法及びその装置
JP2010534007A (ja) * 2007-07-13 2010-10-28 インテル・コーポレーション メッセージ剰余の決定
JP2011521292A (ja) * 2008-05-20 2011-07-21 イルデト・コーポレート・ビー・ヴイ 暗号システム
JP5126230B2 (ja) * 2007-08-07 2013-01-23 富士通株式会社 誤り検出方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003090362A1 (fr) * 2002-04-22 2003-10-30 Fujitsu Limited Codeur et decodeur de detection d'erreur, et diviseur
US7428693B2 (en) 2002-04-22 2008-09-23 Fujitsu Limited Error-detecting encoding and decoding apparatus and dividing apparatus
JP2005102213A (ja) * 2003-09-22 2005-04-14 Agilent Technol Inc メッセージのcrcを計算するための方法
JP2008160663A (ja) * 2006-12-26 2008-07-10 Fujitsu Ltd 情報ビット列の除算方法及びその装置
JP2010534007A (ja) * 2007-07-13 2010-10-28 インテル・コーポレーション メッセージ剰余の決定
US8689078B2 (en) 2007-07-13 2014-04-01 Intel Corporation Determining a message residue
JP5126230B2 (ja) * 2007-08-07 2013-01-23 富士通株式会社 誤り検出方法
JP2011521292A (ja) * 2008-05-20 2011-07-21 イルデト・コーポレート・ビー・ヴイ 暗号システム
US8724802B2 (en) 2008-05-20 2014-05-13 Irdeto Corporate B.V. Cryptographic system

Similar Documents

Publication Publication Date Title
US5297153A (en) Method and apparatus for decoding code words protected wordwise by a non-binary BCH code from one or more symbol errors
US4117458A (en) High speed double error correction plus triple error detection system
JPS59124011A (ja) 多数バイトエラ−訂正システム
JPH05127934A (ja) 周期的冗長チエツク符号生成の方法および装置
JPS632370B2 (ja)
JPH0385923A (ja) Crc演算方式
JP2000004169A (ja) Crc演算方法及びcrc演算回路
JP3000811B2 (ja) 巡回符号化およびcrc装置とその処理方法
JP4515651B2 (ja) 巡回冗長検査演算方法及び巡回冗長検査演算回路
US20040187064A1 (en) Data generating method for forming desired CRC code
AU611448B2 (en) Method and apparatus for decoding reed-solomon code
JP2001036414A (ja) Crc符号生成回路及びcrcエラー検出回路
JP4057876B2 (ja) ガロア体掛け算器の制御方法
JPH0345020A (ja) 巡回符号処理回路
JPS6217256B2 (ja)
JP2797570B2 (ja) ユークリッドの互除回路
JP2008112522A (ja) 誤り検出装置および誤り検出方法
JP2797569B2 (ja) ユークリッドの互除回路
JPS5899028A (ja) 符号変換装置
JPH04284541A (ja) Crc符号の生成及び検査方法並びにその回路
JPS6034136B2 (ja) リ−ド・ソロモン符号復号方式
JPH0964754A (ja) 誤り検出符号生成回路
KR0137354B1 (ko) 무선 데이타 통신에서의 에러검출 및 정정방법
JPH0778748B2 (ja) ガロア体演算ユニット
JPH10150367A (ja) 誤り訂正装置