JPS63164630A - Crc回路 - Google Patents

Crc回路

Info

Publication number
JPS63164630A
JPS63164630A JP61312077A JP31207786A JPS63164630A JP S63164630 A JPS63164630 A JP S63164630A JP 61312077 A JP61312077 A JP 61312077A JP 31207786 A JP31207786 A JP 31207786A JP S63164630 A JPS63164630 A JP S63164630A
Authority
JP
Japan
Prior art keywords
data
crc
terminal
latch
input terminal
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
JP61312077A
Other languages
English (en)
Inventor
Yosuke Furukawa
洋介 古川
Shigeru Matsukawa
茂 松川
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP61312077A priority Critical patent/JPS63164630A/ja
Publication of JPS63164630A publication Critical patent/JPS63164630A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、データのエラー検出に関する演算機能を持つ
CRC回路に関する。
従来の技術 近年、記録媒体の発達により、大量のデータをたとえば
ディスクドライブのような記憶装置に保存できるように
なってきており、それに伴う読み書きの際のデータ転送
を高速かつ正確に行うためのデータチェックが非常に重
要になってきている。。
その際、巡回符号(サイクリック・リダンダンシー・チ
ェック・コード:以下CRCコードと略する。)を使っ
てデータのエラー検出に関する演算を行うCRC回路が
使用されてきている。
以下図面を参照しながら、上述した従来のCRC回路の
一例について説明する。第3図は従来のCRC回路の構
成を示すブロック図である。
第3図くおいて、6はパラレルデータをシリアルデータ
に変換するためのデータ変換手段でありて、CRCパラ
レルデータ入力端子61を有する。7はCRCiljl
算を行うCRC演算手段で、CRCシリアルデータ入力
端子71.CRCシリアルデータ出力端子72.モード
切換え信号入力端子73を有する。8はCRCシリアル
データをパラレルデータに変換するためのデータ変換手
段であり、CRCパラレルデータ出力端子81を有する
。9はCRCコードの書き込みおよび読み出しを切り換
えるモード切換え手段で、モード切換え信号を7のCR
C演算手段に与える手段である。
CRCパラレルデータ入力端子61より入力さ□  れ
たパラレル8ビツトデータは、6のデータ変換手段によ
りシリアルデータに変換される。データ変換手段6で変
換されたデータは70CRC演算手段のCRCシリアル
データ入力端子71に入力されCRC演算を実行するの
であるが、その際生成多項式によって演算が行われる。
ここで2進数を多項式で表現するということは、たとえ
ば101001をX5 +X3 +1と表現することで
ある。
第4図は生成多項式がX賜+XI!+XS+1の場合の
第3図におけるCRC演算手段7の内部構成を表したも
のである。第4図で、口はシフトレジスタを表し、+は
排他的論理和演算を表す。
10はCRCコードの書き込みおよび読み出しを切り換
える切換えスイッチである。入力、出力。
切換え信号がそれぞれ第3図の71.72.73に対応
している。まずCRCコード生成の際には、第3図のモ
ード切換え手段9からの切換え信号によって切換えスイ
ッチ10をシフトレジスタ16の出力と短絡して“書き
込み”モードにする。実行前にシフトレジスタ1〜16
に0か1の値をセットしておく、入力から上位1ピント
のデータが入力されると、十の部分でシフトレジスタの
データと演算を行い、シフトレジスタ1〜16のデータ
はシフトされる。以下順にデータを入力すると演算を行
いながら右にシフトされ、CRCデータがシフトレジス
タ1〜16に生成されるので、出力の際には第3図のモ
ード切換え手段9からの切換え信号によって切換えスイ
ッチ10をシフトレジスタ16の出力から開放し接地側
の“読み出し”モードにして、生成するバイト数(16
ビツトー2バイト)分だけゼロを第3図のCRCパラレ
ルデータ入力端子6Iから入力すると生成データが出力
される。またCRCコードチェックの際には、まず切換
えスイッチ10を生成の際と同様に“書き込み”モード
にする。実行前にシフトレジスタ1〜16に0か1の値
をセントしておき、入力からデータを1ビツトずつ計1
6ビツト人力した状態でシフトレジスタ1〜16のすべ
てのデータ値の論理和をとって、CRCエラーに0”が
出力されればチェックは完了である。
8のデータ変換手段はCRC演算手段7で演算を実行し
てCRCシリアルデータ出力端子72に出力されたCR
C生成シリアルデータをパラレル8ビツトデータに変換
してCRCパラレルデータ出力端子81に出力する。
また、別の生成多項式を使用してCRC演算を行う場合
は、第3図のCRC演算手段7の内部構成を変えなけれ
ばならない。
発明が解決しようとする問題点 しかしながら上記のような構成では、CRC演算をシリ
アルデータで行っているので高速処理が困難で、実行前
にパラレルからシリアルへ、実行後にシリアルからパラ
レルへデータを変換しなければならないので回路構成に
非常に無駄があるという問題点を有していた。また生成
データ長によってそれぞれ独自の内部構成に固定されて
いるので、データ長に応じて生成多項式を容易に変更す
ることができず回路的に柔軟性が乏しいという問題点を
有していた。
本発明は上記問題点に鑑み、CRC演算をシリアルデー
タで行った場合の結果と相違を生じる。ことなく CR
C演算手段のデータをパラレルで取り扱うことができ、
CRC演算の際の生成多項式を選択することができるC
RC回路を提供するものである。
問題点を解決するための手段 本発明は上記問題点を解決するために、データをラッチ
するためのデータレジスタ部と、CRCコードの生成、
チェックに関する演算を行うCRC演算手段と、生成多
項式を選択するための選択手段と、CRCコードの書き
込みおよび読み出しを切り換えるモード切換え手段とい
う構成を備えたものである。
作用 本発明は前述した構成により、CRCデータをパラレル
で取り扱う構成にすることによって、データをシリアル
に変換する必要がなくなり高速処理が可能になり、また
生成データ長に応じたCRC演算のvJ御を行うことに
よって、生成多項式を容易に選択して使用することがで
きる。
実施例 以下本発明の一実施例のCRC回路について、図面を参
照しながら説明する。
第1図は本発明の一実施例におけるCRC回路の構成を
示すブロック図である。第1図において、lはデータを
ラッチするためのデータレジスタで、ラッチデータ入力
端子11a〜lid、ラッチデータ出力端子12a−1
2d、クロック入力端子13を有する。また、CRC生
成パラレルデータ出力はラッチデータ出力端子12dか
ら得る。2はCRCコードの生成、チェックに関する演
算を行うCRC演算手段で、CRCパラレルデータ入力
端子21を有する。3はCRC演算を行う際の生成多項
式を選択するための選択手段で、生成多項式の選択信号
を1のデータレジスタおよび2のCRC演算手段に与え
る手段である。4はCRCコードの書き込みおよび読み
出しを切り換えるモード切換え手段で、モード切換え信
号を2のCRC演算手段に与える手段である。
以上のように構成された本実施例のCRC回路について
、以下第1図および第2図を用いてその動作を説明する
まず、生成多項式がX旙十Xム+X21+XII+X2
+1(生成データ32ビット−4バイト)の場合につい
て第1図と対応させて考える。CRCコード生成の際に
は、まずモード切換え手段4により“書き込み”モード
を指定する0次にデータレジスタにすべて11”の値を
セントする。クロック入力端子13より入力されたクロ
ックの立ち上りで、CRCパラレルデータ入力端子21
より入力された1バイトデータがラッチデータ出力端子
12dから出力されたデータとCRC演算手段2で演算
実行されて、ラッチデータ入力端子11aに取り込まれ
ラッチされる。同時にう7チデータ出力端子12a〜1
2Cから出力されたデータとも演算が行われそれぞれラ
ッチデータ入力端子11b−11(Iに取り込まれてラ
ッチされる。以下クロック入力端子13に入力されるク
ロックとともにCRCパラレルデータ入力端子21から
新しいデータが取り込まれ同様の演算を繰り返し、11
aからlidへと次々とシフトされた生成データはラッ
チデータ出力端子12dより出力される。ただし、出力
する直前にモード切換え手段4により“読み出し”モー
ドに指定して生成するデータのバイト数分だけクロック
入力端子13からクロックを入力する。第2図(alは
、生成多項式がXM +Xl +X11 +XII +
X2+ 1の場合に第4図と同様にCRC演算手段をシ
フトレジスタと排他的論理和で実現して、データが1バ
イト入力されてCRC演算が実行されたときのシフトレ
ジスタのデータ値の状態関係を表しているものであって
、CRC演算手段2ではこの関係を満たすような構成を
しており、第1図ではラッチデータ入力端子11aのデ
ータがaiQ〜ai7、以下順に1バイトずつ対応し、
ラッチデータ入力端子lidのデータがdiQ〜di7
である。また、ラッチデータ出力端子12aのデータが
aoQ〜ao7、以下順に1バイトずつ対応し1.ラッ
チデータ出力端子12dのデータがdoo〜do7であ
る。そしてCRCパラレルデータ入力端子21より入力
されたデータはXO〜X7で、+は排他的論理和演算を
表す、またCRCコードチェックの際には、まずモード
切換え手段4により“書き込み”モードを指定する0次
にデータレジスタにすべて“1”の値をセットしてCR
Cコードを入力してCRC演算を実行し、入力が終了し
た時点でラッチデータ出力端子12a〜12dのすべて
のデータの論理和をとってCRCエラーに“0”が出力
されればチェックは完了である。
次に、生成多項式が従来例と同様のXi +Xl!+X
5+1(生成データ16ビツトー2バイト)の場合につ
いて第1図と対応させて考えると、CRCコードチェッ
クとCRCコード生成でラッチデータ入力端子11aに
取り込まれてラッチされるところまでは前述の場合と同
様であるが、生成データは2バイトなのでこのとき同時
に入力データX0−X7とCRC演算を行うのはラフチ
デ−タ出力端子12cから出力されたデータのみである
。次のクロフクではラッチデータ入力端子11aのデー
タはラッチデータ出力端子12cに出力され、入力デー
タXO〜X7とCRC演算手段2で演算実行されてラッ
チデータ入力端子lidに取り込まれて、それによる生
成データがラッチデータ出力端子12dより出力される
。第2図中)は、生成多項式がX、l +Xl! +X
54.1の場合に第4図の従来例のCRC演算手段でデ
ータが1バイト入力されてCRC演算が実行されたとき
のシフトレジスタ1〜16のデータ値の状態関係を表し
たものである。CRC演算手段2ではこれら第2図(a
l、 (b)の関係を満たすような構成を実現している
が、ここで第2図ta1. Tblを比較するとCRC
演算手段2内部で51a、51bと52a、52b。
そして51c、51dと52C,52dの関係を満たす
部分がそれぞれ対応している。これより第2図(a)、
 (blのdiO−d17の結果の中で51aと52a
、51cと52Cはそれぞれ同じ演算を表している。し
たがって、CRC演算手段2の内部では第2図(Mlの
すべてのロジックと第2図(blの52b生52dのブ
ロックを構成して、選択手段3の選択信号により生成デ
ータ4バイトの場合は第2図(alのすべてのロジック
を活かして演算を実行し、生成データ2バイトの場合は
第2図(a)の51aと51cのブC17りと第2図(
blの52bと52dのブロックを選択して演算を実行
し、データレジスタの入出力でllaと12cが内部で
結びつくように制御すればよい。
以上のように本実施例によれば、CRC演算をシリアル
データで行った場合の結果と相違を生じることなく C
RC演算部分のデータをパラレルで取り扱い、選択手段
3によってCRC生成データ4バイト、2バイト双方に
おいて適応させるという構成をしたものであるから、従
来のパラレルからシリアルおよびシリアルからパラレル
へのデータ変換が不要になり、またCRC生成データ長
に応じて生成多項式を容易に選択して実行することがで
きる。
なお、本実施例では、2種類の生成多項式について選択
できるものとしたが、別の生成多項式を使用もしくは追
加して同様の構成をとることもできる。
発明の効果 以上のように本発明は、データをラッチするためのデー
タレジスタ部と、CRCコードの生成。
チェックに関する演算を行うCRC演算手段と、生成多
項式を選択するための選択手段と、CRCコードの書き
込みおよび読み出しを切り換えるモード切換え手段を具
備し、前記CRC演算手段によりCRC演算をバイト単
位で取り扱い、かつ前記選択手段で生成多項式を選択し
て実行できるものにしたので、演算実行をビット単位で
なくバイト単位で行うという高速処理が可能になり、ま
た生成多項式に応じてCRCロジックの共通部分を活か
し相違部分を選択して演算できるので、1つの生成多項
式によるそれぞれの固定された回路に比べて回路構成が
簡略化され柔軟性を持たせることができるという優れた
効果を実現できるものである。
【図面の簡単な説明】
第1図は本発明の一実施例におけるCRC回路の構成を
示すブロック図、第2図(a)、 (blは本発明の一
実施例においてCRC演算手段2を実現するために、従
来例におけるCRC演算手段をシフトレジスタと排他的
論理和で実現して(例:第4図参照)、データを1バイ
ト入力してCRC演算が実行されたときのシフトレジス
タのデータ値の状態を表した関係図で、それぞれ生成多
項式が+alX” +X” +X” +XII +X2
 +1.、(blXl +XI! +X5 + 1の場
合の関係図、第3図は従来のCRC回路の構成を示すブ
ロック図、第4図は従来のCRC回路において生成多項
式がxi +xI!+X5+1の場合の第3図における
CRC演算手段7の内部構成を示す模式図である。 1・・・・・・データレジスタ、2・旧・・CRC演算
手段、3・・・・・・選択手段、4・・・・・・モード
切換え手段、6・・・・・・データ変換手段、7・・・
・・・CRC演算手段、8・・・・・・データ変換手段
、9・・・・・・モード切換え手段、lO・・・・・・
切換えスイッチ、lla〜lid・・・・・・うッチデ
ータ入力端子、12a〜12d・・・・・・ラッチデー
タ出力端子、13・・・・・・クロック入力端子、21
・・・・・・CRCパラレルデータ入力端子、61・・
・・・・CRCパラレルデータ入力端子、71・・・・
・・CRCシリアルデータ入力端子、72・・・・・・
CRCシリアルデータ出力端子、73・・・・・・モー
ド切換え信号入力端子、81・・・・・・CRCパラレ
ルデータ出力端子。 代理人の氏名 弁理士 中尾敏男 はか1名第2図 第2図 2C

Claims (1)

    【特許請求の範囲】
  1. データをラッチするためのデータレジスタ部と、CRC
    コードの生成、チェックに関する演算を行うCRC演算
    手段と、生成多項式を選択するための選択手段と、CR
    Cコードの書き込みおよび読み出しを切り換えるモード
    切換え手段を具備し、前記CRC演算手段によりCRC
    演算をバイト単位で取り扱い、かつ前記選択手段で生成
    多項式を選択できることを特徴とするCRC回路。
JP61312077A 1986-12-26 1986-12-26 Crc回路 Pending JPS63164630A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61312077A JPS63164630A (ja) 1986-12-26 1986-12-26 Crc回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61312077A JPS63164630A (ja) 1986-12-26 1986-12-26 Crc回路

Publications (1)

Publication Number Publication Date
JPS63164630A true JPS63164630A (ja) 1988-07-08

Family

ID=18024957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61312077A Pending JPS63164630A (ja) 1986-12-26 1986-12-26 Crc回路

Country Status (1)

Country Link
JP (1) JPS63164630A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007034935A1 (en) * 2005-09-21 2007-03-29 Semiconductor Energy Laboratory Co., Ltd. Cyclic redundancy check circuit and semiconductor device having the cyclic redundancy check circuit
US7915756B2 (en) 2007-06-07 2011-03-29 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
US8144013B2 (en) 2008-01-31 2012-03-27 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
US8432254B2 (en) 2008-01-31 2013-04-30 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6149534A (ja) * 1984-08-17 1986-03-11 Nec Corp 多重処理型crc符号生成回路

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6149534A (ja) * 1984-08-17 1986-03-11 Nec Corp 多重処理型crc符号生成回路

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007034935A1 (en) * 2005-09-21 2007-03-29 Semiconductor Energy Laboratory Co., Ltd. Cyclic redundancy check circuit and semiconductor device having the cyclic redundancy check circuit
US7712009B2 (en) 2005-09-21 2010-05-04 Semiconductor Energy Laboratory Co., Ltd. Cyclic redundancy check circuit and semiconductor device having the cyclic redundancy check circuit
US8627170B2 (en) 2005-09-21 2014-01-07 Semiconductor Energy Laboratory Co., Ltd. Cyclic redundancy check circuit and semiconductor device having the cyclic redundancy check circuit
US9009563B2 (en) 2005-09-21 2015-04-14 Semiconductor Energy Laboratory Co., Ltd. Cyclic redundancy check circuit and semiconductor device having the cyclic redundancy check circuit
US9294126B2 (en) 2005-09-21 2016-03-22 Semiconductor Energy Laboratory Co., Ltd. Cyclic redundancy check circuit and semiconductor device having the cyclic redundancy check circuit
US7915756B2 (en) 2007-06-07 2011-03-29 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
US8144013B2 (en) 2008-01-31 2012-03-27 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
US8432254B2 (en) 2008-01-31 2013-04-30 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
US9460377B2 (en) 2008-01-31 2016-10-04 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device

Similar Documents

Publication Publication Date Title
JPH05290527A (ja) デ・インターリーブ回路
EP0537407B1 (en) Flexible encoding method and architecture for high-speed data transmission and storage
Zhou A new bit-serial systolic multiplier over GF (2/sup m/)
KR100489880B1 (ko) 비동기fifo에서반-충만및반-빈플래그를발생시키기위한상태기계설계
JPS63164630A (ja) Crc回路
JP2000004169A (ja) Crc演算方法及びcrc演算回路
US3821711A (en) Self adaptive compression and expansion apparatus for changing the length of digital information
JPH11196006A (ja) 並列処理シンドロ−ム計算回路及びリ−ド・ソロモン複合化回路
US4159529A (en) Fibonacci code adder
JPS6057774B2 (ja) 論理演算型ディジタル圧伸器
JPH0385923A (ja) Crc演算方式
RU2115231C1 (ru) Устройство кодирования-декодирования информации
JPS6136653B2 (ja)
JPH0427754B2 (ja)
JPS63221426A (ja) GF(2▲上m▼)のガロア体に属する元の乗算装置
KR0155734B1 (ko) 디지탈 신호처리방법 및 장치
JPH06348456A (ja) 1の補数の加算器および動作方法
SU809150A1 (ru) Преобразователь двоичного кодаВ дВОичНО-дЕС ТичНый
JP3645819B2 (ja) デジタル正規化回路
JPS5725046A (en) Cyclic redundancy check operating circuit
EP0782070A1 (en) Finite field inverter
JPS62154049A (ja) デ−タバス変換回路
KR930001921B1 (ko) 사이클릭 리던던시 코드 체크회로
JPH0619797B2 (ja) たたみ込み演算回路
JPH08102657A (ja) 並列データカウンタ回路