JP2002141809A - Crc符号演算回路、及びcrc符号演算方法 - Google Patents

Crc符号演算回路、及びcrc符号演算方法

Info

Publication number
JP2002141809A
JP2002141809A JP2000333090A JP2000333090A JP2002141809A JP 2002141809 A JP2002141809 A JP 2002141809A JP 2000333090 A JP2000333090 A JP 2000333090A JP 2000333090 A JP2000333090 A JP 2000333090A JP 2002141809 A JP2002141809 A JP 2002141809A
Authority
JP
Japan
Prior art keywords
crc code
data
parallel
byte
circuit
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
JP2000333090A
Other languages
English (en)
Inventor
Kiyomi Hara
清巳 原
Takao Inoue
孝雄 井上
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.)
Ando Electric Co Ltd
Original Assignee
Ando Electric 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 Ando Electric Co Ltd filed Critical Ando Electric Co Ltd
Priority to JP2000333090A priority Critical patent/JP2002141809A/ja
Priority to US09/983,490 priority patent/US6934902B2/en
Publication of JP2002141809A publication Critical patent/JP2002141809A/ja
Pending 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/6508Flexibility, adaptability, parametrability and configurability of the implementation
    • H03M13/6516Support of multiple code parameters, e.g. generalized Reed-Solomon decoder for a variety of generator polynomials or Galois fields

Abstract

(57)【要約】 【課題】 本発明の課題は、CRC符号演算回路の使用
個数を抑えて、可変長データとして連続入力される2n
バイトパラレルデータからCRC符号を演算するCRC
符号演算回路、及びCRC符号演算方法を提供すること
である。 【解決手段】 可変長データとして入力され、最終段に
余り部分を有するパラレルデータからCRC符号を演算
するCRC符号演算回路1は、パラレルデータの最終段
以外から、CRC符号をパラレルで演算する16バイト
パラレルCRC符号演算回路2と、演算されたCRC符
号から、所定のバイト数分のCRC符号を選択するSE
L2bと、パラレルデータの最終段から、所定のバイト
数分のパラレルデータを選択する15バイトデータセレ
クト回路7と、選択されたCRC符号とパラレルデータ
からCRC符号を演算する8バイトパラレルCRC符号
演算回路3、を備えて構成される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、可変長データとし
て入力され、最終段に余り部分を有するパラレルデータ
からCRC符号を演算するCRC符号演算回路、及びC
RC符号演算方法に関する。
【0002】
【従来の技術】従来より、デジタル通信において高性能
の誤り検出能力を有するCRC(Cyclic Redundancy Ch
eck:巡回冗長検査)が用いられている。ここで、CR
Cとは、データ受信側のCRC符号演算回路において演
算されたCRC符号と、データ送信側で演算されたCR
C符号を比較することにより、データの誤りを検出する
エラー検査方法である。
【0003】近年、例えば、POS(PPP Over SONET/S
DH)の様に、低速の可変長データ(PPPフレーム)を
高速データフレーム(SONET/SDHフレーム)上に載せて
エンド−エンド間の通信を行う高速可変長データ通信が
広く利用されている。入力されるnバイトパラレルデー
タからCRC符号を演算するCRC符号演算回路は、こ
の様な高速可変長データ通信におけるデータの誤り検出
手段として導入されつつある。
【0004】以下、図を参照して、従来のCRC符号演
算回路について説明する。図3は、従来のCRC符号演
算回路21の回路構成図である。図3に示す様に、CR
C符号演算回路21は、16バイトパラレルCRC符号
演算回路22と、1〜15バイトパラレルCRC符号演
算回路23〜37と、SEL38より概略構成されてい
る。
【0005】外部回路から入力された16バイトパラレ
ルデータの内、最終段以外のパラレルデータは、16バ
イトパラレルCRC符号演算回路22で演算され、CR
C符号が演算途中結果として出力される。一方、最終段
のパラレルデータは、そのバイト数に対応する1〜15
の何れかのバイトパラレルCRC符号演算回路で、上記
CRC符号により演算され、SEL38へ入力される。
そして、SEL38は、入力された複数のCRC符号か
ら所望のCRC符号を選択し、最終的な演算結果として
出力する。
【0006】また、図4は、従来のCRC符号演算回路
41の回路構成図である。図4に示す様に、CRC符号
演算回路41は、16バイトパラレルCRC符号演算回
路42と、バイトシリアル変換回路43と、1バイトパ
ラレルCRC符号演算回路44と、SEL45より概略
構成されている。
【0007】外部回路から入力された16バイトパラレ
ルデータの内、最終段以外のパラレルデータは、16バ
イトパラレルCRC符号演算回路22で演算され、CR
C符号が演算途中結果として出力される。一方、最終段
のパラレルデータは、バイトシリアル変換回路43でバ
イトシリアルデータに変換される。変換されたバイトシ
リアルデータは、1バイトシリアルCRC符号演算回路
44で、上記CRC符号により演算され、SEL45へ
入力される。そして、SEL45は、入力された複数の
CRC符号から所望のCRC符号を選択し、最終的な演
算結果として出力する。
【0008】
【発明が解決しようとする課題】上記従来のCRC符号
演算回路21,41は、16バイト未満のデータ処理の
改善策として有用であったが、以下の様な問題点があっ
た。まず、CRC符号演算回路21では、例えば、可変
長データが16バイトパラレルデータの場合、最終段の
バイト数によっては実際に使用されない符号演算回路を
含めて、計16個のバイトパラレルCRC符号演算回路
が必要になる。このため、入力される2nバイトパラレ
ルデータのバイト数の増加に伴って、バイトシリアルC
RC符号演算回路が2n−1個分必要になり、回路規模
が増大すると共に、製造コストも上がる。
【0009】また、CRC符号演算回路41では、1つ
のバイトシリアルCRC符号演算回路でCRC符号の演
算を実現可能である反面、バイトパラレルデータをバイ
トシリアルデータに変換する際に、最大で2n−1回
分、1バイトシリアルCRC符号演算回路を使用するこ
とになる。このため、入力される2nバイトパラレルデ
ータのnが2以上の場合には、連続する可変長データを
処理することはできなかった。
【0010】本発明の課題は、CRC符号演算回路の使
用個数を抑えて、可変長データとして連続入力される2
nバイトパラレルデータからCRC符号を演算するCR
C符号演算回路、及びCRC符号演算方法を提供するこ
とである。
【0011】
【課題を解決するための手段】以上の課題を解決するた
め、請求項1記載の発明は、可変長データとして入力さ
れ、最終段に余り部分を有するパラレルデータからCR
C符号を演算するCRC符号演算回路(例えば、図1の
CRC符号演算回路1)において、前記パラレルデータ
の最終段以外から、CRC符号をパラレルで演算するパ
ラレル演算手段(例えば、図1の16バイトパラレル演
算部2a)と、このパラレル演算手段により演算された
CRC符号から、所定のバイト数分のCRC符号を選択
するCRC符号選択手段(例えば、図1のSEL2c)
と、前記パラレルデータの最終段から、前記所定のバイ
ト数分のパラレルデータを選択するバイトデータ選択手
段(例えば、図1の15バイトデータセレクト回路7)
と、前記CRC符号選択手段により選択されたCRC符
号と、前記バイトデータ選択手段により選択されたパラ
レルデータと、からCRC符号を演算する演算手段(例
えば、図1の8バイトパラレルCRC符号演算回路3)
と、を備えることを特徴としている。
【0012】また、請求項2記載の発明は、請求項1記
載のCRC符号演算回路において、前記パラレル演算手
段は、2nバイトパラレルデータ(例えば、図2の16
バイトパラレルデータD)の最終段(例えば、図2の
)以外から、CRC符号をパラレルで演算し、前記C
RC符号選択手段は、前記パラレル演算手段により演算
されたCRC符号から、2n-mの何れかのバイト(例え
ば、1,2,4,8バイト)数分のCRC符号を選択
し、前記バイトデータ選択手段は、前記2nバイトパラ
レルデータの最終段から、前記2n-mの何れかのバイト
数分のパラレルデータを選択することを特徴としてい
る。
【0013】また、請求項3記載の発明は、請求項2記
載のCRC符号演算回路において、前記パラレルデータ
の最終段から、余り部分を検出する余り部分検出手段
(例えば、図1の制御部10)を更に備え、前記バイト
データ選択手段は、前記余り部分検出手段により検出さ
れた余り部分から、前記バイト数分のパラレルデータを
選択することを特徴としている。
【0014】従って、CRC符号演算回路に対して、1
6バイトパラレルデータの様にフレーム長の長いパラレ
ルデータが連続して入力される場合でも、簡易な回路構
成でデータのCRC符号を演算できる。その結果、回路
規模の増大や製造コストの増加を抑えることができる。
【0015】
【発明の実施の形態】以下、図を参照して本発明に係る
CRC符号演算回路1について説明する。なお、本実施
の形態では、説明を容易にするため、16バイトパラレ
ルデータからのCRC符号演算について説明する。
【0016】まず、構成を説明する。図1に示す様に、
CRC符号演算回路1は、16バイトパラレルCRC符
号演算回路2、8バイトパラレルCRC符号演算回路
3、4バイトパラレルCRC符号演算回路4、2バイト
パラレルCRC符号演算回路5、1バイトパラレルCR
C符号演算回路6、15バイトデータセレクト回路7、
7バイトデータセレクト回路8、3バイトデータセレク
ト回路9、制御部10、及びラッチ11より概略構成さ
れている。
【0017】16バイトパラレルCRC演算回路2は、
16バイトパラレル演算部2a、SEL2b、SEL2
cの各部より構成され、制御部10から入力される制御
タイミング信号に基づいて、外部回路(図示略)から入
力される可変長の16バイトパラレルデータが16バイ
ト以上の場合、初期値を基に最終段以外のデータ(図2
の,参照)を16バイトずつCRC符号演算し、演
算結果を8バイトパラレル演算回路3へ出力する。ま
た、入力される可変長データが16バイト未満の場合
(最初から最終段のデータの場合)CRC符号演算せず
初期値を8バイトパラレル演算回路3へ出力する回路で
ある。
【0018】8バイトパラレルCRC演算回路3は、8
バイトパラレル演算部3a、SEL3b、ラッチ3cの
各部より構成され、制御部10から入力される制御タイ
ミング信号に基づいて、後述する15バイトデータセレ
クト回路7からの入力データを8バイトパラレル演算部
3aで演算を行ったデータか、16バイトパラレルCR
C符号演算回路2からの演算途中結果をラッチしたデー
タの何れかを選択し、4バイトパラレルCRC符号演算
回路4へ出力する。また、8バイトパラレルCRC演算
回路3は、最終段のデータが8〜15バイトの場合、1
6バイトパラレルCRC符号演算回路2から入力される
データを演算の初期値として、15バイトデータセレク
ト回路7から入力される8バイトパラレルデータをCR
C符号演算し、演算結果を4バイトパラレル演算回路4
へ出力するが、最終段のデータが8バイト未満の場合、
CRC符号演算せず16バイトパラレルCRC符号演算
回路2からのデータをラッチし、そのデータを4バイト
パラレル演算回路4へ出力する回路である。
【0019】同様に、4バイトパラレルCRC符号演算
回路4は、4バイトパラレル演算部4a、SEL4b、
ラッチ4cの各部より構成され、制御部10から入力さ
れる制御タイミング信号に基づいて、後述する7バイト
データセレクト回路8からの入力データを4バイトパラ
レル演算部4aで演算を行ったデータか、8バイトパラ
レルCRC符号演算回路3からの演算途中結果をラッチ
したデータの何れかを選択し、2バイトパラレルCRC
符号演算回路5へ出力する。また、4バイトパラレルC
RC符号演算回路4は、最終段の残りデータ(まだ演算
していないデータ)が4〜7バイトの場合、8バイトパ
ラレルCRC符号演算回路3から入力されるデータを演
算の初期値として、7バイトデータセレクト回路8から
入力される4バイトパラレルデータをCRC符号演算
し、演算結果を2バイトパラレル演算回路5へ出力する
が、最終段の残りのデータが4バイト未満の場合、CR
C符号演算せず8バイトパラレルCRC符号演算回路3
からのデータをラッチし、そのデータを2バイトパラレ
ル演算回路5へ出力する回路である。
【0020】以下同様に、2バイトパラレルCRC符号
演算回路5は、3バイトデータセレクト回路9からの入
力データを2バイトパラレル演算部5aで演算を行った
データか、4バイトパラレルCRC符号演算回路4から
の演算途中結果をラッチしたデータの何れかを選択し、
1バイトパラレルCRC符号演算回路5へ出力する回路
である。また、2バイトパラレルCRC符号演算回路5
は、3バイトデータセレクト回路9からの入力データを
1バイトパラレル演算部6aで演算を行ったデータか、
2バイトパラレルCRC符号演算回路5からの演算途中
結果をラッチしたデータの何れかを選択し、得られたデ
ータを最終的な演算結果として出力する回路である。
【0021】15バイトデータセレクト回路7は、SE
L7a、ラッチ7bの各部より構成され、制御部10か
ら入力される制御タイミング信号に基づいて、外部回路
(図示略)から入力される16バイトパラレルデータの
内、最終段のデータが8〜15バイト分のデータの場合
(図2の参照)、上位8バイトデータを8バイトパラ
レルCRC符号演算回路3へ出力し、余りの部分の7バ
イトデータをラッチ7bでラッチして、後述する7バイ
トデータセレクト回路8へ出力する。最終段のデータが
8バイト未満場合は、8バイトパラレルCRC符号演算
回路3へは出力せず、上位7バイトデータをラッチ7b
でラッチして、後述する7バイトデータセレクト回路8
へ出力する回路である。
【0022】同様に、7バイトデータセレクト回路8
は、ラッチ7bから入力される最終段の残りデータ(ま
だ演算していないデータ)が4〜7バイト分のデータの
場合、残りの上位4バイトデータを4バイトパラレルC
RC符号演算回路4へ出力し、余りの部分の3バイトデ
ータをラッチ8bでラッチして、後述する3バイトデー
タセレクト回路9へ出力する。最終段の残りのデータが
4バイト未満のデータの場合、4バイトパラレルCRC
符号演算回路4へは出力せず、残りの上位3バイトデー
タをラッチ8bでラッチして、後述する3バイトデータ
セレクト回路9へ出力する回路である。3バイトデータ
セレクト回路9は、ラッチ8bから入力される最終段の
残りデータ(まだ演算していないデータ)が2〜3バイ
ト分のデータの場合、残りの上位2バイトデータを2バ
イトパラレルCRC符号演算回路5へ出力し、余りの部
分の1バイトデータをラッチ9bでラッチして、1バイ
トパラレルCRC符号演算回路6へ出力する。最終段の
残りのデータが1バイトの場合、2バイトパラレルCR
C符号演算回路5へは出力せず、残りの上位1バイトデ
ータをラッチ9bでラッチして、1バイトパラレルCR
C符号演算回路6へ出力する回路である。
【0023】制御部10は、入力される16バイトパラ
レルデータの最終段にあるデータ(余り部分)、及びそ
のバイト数nを検出すると共に、各種制御タイミング信
号(後述の各種制御信号)を出力し、CRC符号演算回
路1に入力される16バイトパラレルデータから、CR
C符号を演算させる制御を行う制御部である。また、ラ
ッチ11は、制御部10から入力される各種制御信号を
ラッチして次段のラッチ11、及び各バイトパラレルC
RC符号演算回路へ出力するラッチ回路である。
【0024】ここで、CRC符号を演算する16バイト
パラレルデータ、及び制御部10から出力される各種制
御信号(図1のCRCEN,STROBE,STATE[n])について説明
する。16バイトパラレルデータは、データフレームが
可変長の通信データであり、16バイトパラレルCRC
符号演算回路2と、15バイトデータセレクト回路7に
入力される。
【0025】CRCEN(CRC ENABLE)信号は、CRC
符号を演算する範囲を指示する信号であり、16バイト
パラレルCRC符号演算回路2のみに入力される。ST
ROBE信号は、16バイトパラレルデータの最終段に
あるデータを示す信号であり、16バイトパラレルCR
C符号演算回路2、8バイトパラレルCRC符号演算回
路3、及びラッチ11にそれぞれ入力される。STAT
E[n]信号は、上記STROBE信号により示された最
終段データに含まれるバイト数nを示す信号であり、1
6バイトパラレルCRC符号演算回路2、SEL7a、
及びラッチ11にそれぞれ入力される。
【0026】次に、動作を説明する。図2を参照して、
16バイトパラレルデータからCRC符号を演算する手
順について説明する。
【0027】図2に示す様に、47バイトのフレーム長
(1〜47)を有する16バイトパラレルデータDは、
1〜16,17〜32,33〜47の3段のパラ
レルデータにより構成される。最終段は、15バイト
の余り部分33〜47と1バイトの無効データ(図中の
斜線部分)とから成る。
【0028】上記16バイトパラレルデータDのデータ
,は、16バイトパラレルCRC符号演算回路2に
入力される。そして、16バイトパラレルCRC符号演
算部2aは、入力された16バイトパラレルデータ,
を演算し、その演算結果をSEL2cで選択し、演算
途中結果Aとして8バイトパラレルCRC符号演算回路
3へ出力する。
【0029】一方、16バイトパラレルデータDのデー
タは、15バイトデータセレクト回路7により、上位
8バイトのデータ(33〜40)と下位7バイトのデー
タ(41〜47)に分割される。上位8バイトのデータ
は、8バイトパラレルCRC符号演算回路3に入力さ
れ、下位7バイトのデータは、7バイトデータセレクト
回路8に入力される。なお、入力された16バイトパラ
レルデータのフレーム長が16バイト未満の場合、初期
値が8バイトパラレルCRC符号演算回路3へ入力され
る。
【0030】その後、15バイトデータセレクト回路7
から出力された8バイトのデータは、SEL2cで選択
された演算途中結果Aを初期値として、8バイトパラレ
ルCRC符号演算回路3でCRC符号演算され、演算途
中結果Bとして4バイトパラレルCRC演算回路4へ入
力される。
【0031】また、15バイトデータセレクト回路7か
ら入力された7バイトパラレルデータ(41〜47)
は、7バイトデータセレクト回路8により、上位4バイ
トのデータ(41〜44)と下位3バイトのデータ(4
5〜47)に分割される。上位4バイトのデータは、4
バイトパラレルCRC符号演算回路4に入力され、下位
3バイトのデータは、3バイトデータセレクト回路9に
入力される。
【0032】その後、7バイトデータセレクト回路8か
ら出力された4バイトのデータは、SEL3bで選択さ
れた演算途中結果Bを初期値として、4バイトパラレル
CRC符号演算回路4でCRC符号演算され、演算途中
結果Cとして2バイトパラレルCRC演算回路5へ入力
される。
【0033】更に、7バイトデータセレクト回路8から
入力された3バイトパラレルデータ(45〜47)は、
3バイトデータセレクト回路9により、上位2バイトの
データ(45〜46)と下位1バイトのデータ(47)
に分割される。上位2バイトのデータは、2バイトパラ
レルCRC符号演算回路5に入力され、下位1バイトの
データは、1バイトパラレルCRC符号演算回路6に入
力される。
【0034】その後、3バイトデータセレクト回路9か
ら出力された2バイトのデータは、SEL4bで選択さ
れた演算途中結果Cを初期値として、2バイトパラレル
CRC符号演算回路5でCRC符号演算され、演算途中
結果Dとして1バイトパラレルCRC演算回路6へ入力
される。そして、3バイトデータセレクト回路9から出
力された1バイトのデータは、SEL5bで選択された
演算途中結果Dを初期値として、1バイトパラレルCR
C符号演算回路6でCRC符号演算され、最終的な演算
結果として出力される。
【0035】以上の様に、本実施の形態におけるCRC
符号演算回路1は、2n-mバイト(m=1〜n)パラレ
ルのCRC符号演算回路をn−1個備えることにより、
可変長データとして入力される16バイトパラレルデー
タの最終段にある余り部分のデータを、複数のCRC符
号演算回路で演算されたCRC符号により順次演算処理
する機能を有する。
【0036】従って、例えば16バイトパラレルデータ
の様にフレーム長の長いパラレルデータが入力される場
合であっても、簡易な回路構成でデータのCRC符号を
演算できる。その結果、回路規模の増大や製造コストの
増加を抑えることができる。また、2nバイトパラレル
データに対して、最大でもn個のバイトパラレルCRC
符号演算回路を備えれば足り、4バイト以上のパラレル
データが連続入力される場合であっても、CRC符号の
演算が可能となる。
【0037】なお、本実施の形態における記述内容は、
本発明に係るCRC符号演算回路の好適な一例であり、
これに限定されるものではない。例えば、上記実施の形
態では、入力される可変長データを16バイトパラレル
データとしたが、バイトパラレルCRC符号演算回路を
n個、バイトデータセレクト回路n−1個備えることに
より、2nバイトパラレルデータに適用可能である。ま
た、最終段の余り部分のバイト数も任意である。その
他、CRC符号演算回路1の細部構成、及び詳細動作に
関しても、本発明の趣旨を逸脱することのない範囲で適
宜変更可能である。
【0038】
【発明の効果】本発明によれば、CRC符号演算回路に
対して、16バイトパラレルデータの様にフレーム長の
長いパラレルデータが連続して入力される場合でも、簡
易な回路構成でデータのCRC符号を演算できる。その
結果、回路規模の増大や製造コストの増加を抑えること
ができる。
【図面の簡単な説明】
【図1】本発明を適用したCRC符号演算回路1の回路
構成図である。
【図2】図1のCRC符号演算回路1により、16バイ
トパラレルデータからCRC符号を演算する手順を説明
する図である。
【図3】従来のCRC符号演算回路21の回路構成図で
ある。
【図4】従来のCRC符号演算回路41の回路構成図で
ある。
【符号の説明】
1 CRC符号演算回路 2 16バイトパラレルCRC符号演算回路 2a 16バイトパラレル演算部 2b,2c SEL 2d ラッチ 3 8バイトパラレルCRC符号演算回路 4 4バイトパラレルCRC符号演算回路 5 2バイトパラレルCRC符号演算回路 6 1バイトパラレルCRC符号演算回路 7 15バイトデータセレクト回路 8 7バイトデータセレクト回路 9 3バイトデータセレクト回路 10 制御部

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】可変長データとして入力され、最終段に余
    り部分を有するパラレルデータからCRC符号を演算す
    るCRC符号演算回路において、 前記パラレルデータの最終段以外から、CRC符号をパ
    ラレルで演算するパラレル演算手段と、 このパラレル演算手段により演算されたCRC符号か
    ら、所定のバイト数分のCRC符号を選択するCRC符
    号選択手段と、 前記パラレルデータの最終段から、前記所定のバイト数
    分のパラレルデータを選択するバイトデータ選択手段
    と、 前記CRC符号選択手段により選択されたCRC符号
    と、前記バイトデータ選択手段により選択されたパラレ
    ルデータと、からCRC符号を演算する演算手段と、 を備えることを特徴とするCRC符号演算回路。
  2. 【請求項2】前記パラレル演算手段は、2nバイトパラ
    レルデータの最終段以外から、CRC符号をパラレルで
    演算し、 前記CRC符号選択手段は、前記パラレル演算手段によ
    り演算されたCRC符号から、2n-m(m=1〜n)の
    何れかのバイト数分のCRC符号を選択し、 前記バイトデータ選択手段は、前記2nバイトパラレル
    データの最終段から、前記2n-mの何れかのバイト数分
    のパラレルデータを選択することを特徴とする請求項1
    記載のCRC符号演算回路。
  3. 【請求項3】前記パラレルデータの最終段から、余り部
    分を検出する余り部分検出手段を更に備え、 前記バイトデータ選択手段は、前記余り部分検出手段に
    より検出された余り部分から、前記バイト数分のパラレ
    ルデータを選択することを特徴とする請求項2記載のC
    RC符号演算回路。
  4. 【請求項4】可変長データとして入力され、最終段に余
    り部分を有するパラレルデータからCRC符号を演算す
    るCRC符号演算方法において、 前記パラレルデータの最終段以外から、CRC符号をパ
    ラレルで演算するパラレル演算工程と、 このパラレル演算工程で演算されたCRC符号から、所
    定のバイト数分のCRC符号を選択するCRC符号選択
    工程と、 前記パラレルデータの最終段から、前記所定のバイト数
    分のパラレルデータを選択するバイトデータ選択工程
    と、 前記CRC符号選択工程で選択されたCRC符号と、前
    記バイトデータ選択工程で選択されたパラレルデータ
    と、からCRC符号を演算する演算工程と、 を含むことを特徴とするCRC符号演算方法。
  5. 【請求項5】前記パラレル演算工程は、2nバイトパラ
    レルデータの最終段以外から、CRC符号をパラレルで
    演算し、 前記CRC符号選択工程は、前記パラレル演算工程で演
    算されたCRC符号から、2n-m(m=1〜n)の何れ
    かのバイト数分のCRC符号を選択し、 前記バイトデータ選択工程は、前記2nバイトパラレル
    データの最終段から、前記2n-mの何れかのバイト数分
    のパラレルデータを選択することを特徴とする請求項4
    記載のCRC符号演算方法。
JP2000333090A 2000-10-31 2000-10-31 Crc符号演算回路、及びcrc符号演算方法 Pending JP2002141809A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2000333090A JP2002141809A (ja) 2000-10-31 2000-10-31 Crc符号演算回路、及びcrc符号演算方法
US09/983,490 US6934902B2 (en) 2000-10-31 2001-10-24 CRC encoding circuit, CRC encoding method, data sending device and data receiving device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000333090A JP2002141809A (ja) 2000-10-31 2000-10-31 Crc符号演算回路、及びcrc符号演算方法

Publications (1)

Publication Number Publication Date
JP2002141809A true JP2002141809A (ja) 2002-05-17

Family

ID=18809220

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000333090A Pending JP2002141809A (ja) 2000-10-31 2000-10-31 Crc符号演算回路、及びcrc符号演算方法

Country Status (2)

Country Link
US (1) US6934902B2 (ja)
JP (1) JP2002141809A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007166031A (ja) * 2005-12-09 2007-06-28 National Institute Of Advanced Industrial & Technology Crc値の算出装置
US8051359B2 (en) 2003-03-28 2011-11-01 International Business Machines Corporation System and method for optimizing iterative circuit for cyclic redundency check (CRC) calculation

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7103832B2 (en) * 2003-12-04 2006-09-05 International Business Machines Corporation Scalable cyclic redundancy check circuit
US7434150B1 (en) 2004-03-03 2008-10-07 Marvell Israel (M.I.S.L.) Ltd. Methods, circuits, architectures, software and systems for determining a data transmission error and/or checking or confirming such error determinations
US7360142B1 (en) 2004-03-03 2008-04-15 Marvell Semiconductor Israel Ltd. Methods, architectures, circuits, software and systems for CRC determination
US7546512B2 (en) * 2004-09-23 2009-06-09 Intel Corporation Techniques to perform error detection
US7266760B1 (en) * 2004-09-30 2007-09-04 Altera Corporation Method and apparatus for calculating cyclic redundancy checks for variable length packets
US7590920B2 (en) * 2005-08-05 2009-09-15 Hitachi Global Storage Technologies Netherlands, B.V. Reduced complexity error correction encoding techniques
US7865784B1 (en) 2006-09-11 2011-01-04 Marvell International Ltd. Write validation
US7941727B2 (en) * 2006-10-31 2011-05-10 Hewlett-Packard Development Company, L.P. Checksum generator for variable-length data
US20090024900A1 (en) * 2007-07-18 2009-01-22 Cisco Technology, Inc. Cyclic redundancy checking in lane-based communications
JP4798164B2 (ja) * 2008-04-02 2011-10-19 ソニー株式会社 送信装置および方法、受信装置および方法、並びにプログラム
US20090254794A1 (en) * 2008-04-04 2009-10-08 Nxp B.V. Method for efficient packet framing in a communication network
US8892983B2 (en) * 2008-11-04 2014-11-18 Alcatel Lucent Method and apparatus for error detection in a communication system
WO2011077519A1 (ja) * 2009-12-22 2011-06-30 トヨタ自動車株式会社 情報管理装置、及び情報管理方法
US9397785B1 (en) * 2010-04-12 2016-07-19 Marvell International Ltd. Error detection in a signal field of a WLAN frame header
KR102036296B1 (ko) 2011-02-04 2019-10-24 마벨 월드 트레이드 리미티드 Wlan용 제어 모드 phy
US9131528B2 (en) 2012-04-03 2015-09-08 Marvell World Trade Ltd. Physical layer frame format for WLAN
US9414432B2 (en) 2013-04-03 2016-08-09 Marvell World Trade Ltd. Physical layer frame format for WLAN
WO2015038647A2 (en) 2013-09-10 2015-03-19 Marvell World Trade Ltd. Extended guard interval for outdoor wlan
US10194006B2 (en) 2013-10-25 2019-01-29 Marvell World Trade Ltd. Physical layer frame format for WLAN
US10218822B2 (en) 2013-10-25 2019-02-26 Marvell World Trade Ltd. Physical layer frame format for WLAN
WO2015061729A1 (en) 2013-10-25 2015-04-30 Marvell World Trade Ltd. Range extension mode for wifi
US11855818B1 (en) 2014-04-30 2023-12-26 Marvell Asia Pte Ltd Adaptive orthogonal frequency division multiplexing (OFDM) numerology in a wireless communication network
US10097203B2 (en) * 2015-11-12 2018-10-09 Nvidia Corporation Lane-striped computation of packet CRC to maintain burst error properties
JP2021039672A (ja) * 2019-09-05 2021-03-11 キオクシア株式会社 メモリシステム、パケット保護回路およびcrc計算方法
KR20210128240A (ko) * 2020-04-16 2021-10-26 에스케이하이닉스 주식회사 컨트롤러 및 이의 동작 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3678469A (en) * 1970-12-01 1972-07-18 Ibm Universal cyclic division circuit
US6701478B1 (en) * 2000-12-22 2004-03-02 Nortel Networks Limited System and method to generate a CRC (cyclic redundancy check) value using a plurality of CRC generators operating in parallel

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8051359B2 (en) 2003-03-28 2011-11-01 International Business Machines Corporation System and method for optimizing iterative circuit for cyclic redundency check (CRC) calculation
JP2007166031A (ja) * 2005-12-09 2007-06-28 National Institute Of Advanced Industrial & Technology Crc値の算出装置

Also Published As

Publication number Publication date
US6934902B2 (en) 2005-08-23
US20020053059A1 (en) 2002-05-02

Similar Documents

Publication Publication Date Title
JP2002141809A (ja) Crc符号演算回路、及びcrc符号演算方法
JP2002164791A (ja) Crc符号演算回路、及びcrc符号演算方法
JP2001285076A (ja) Crc符号演算回路、及びcrc符号演算方法
US7590916B2 (en) Cyclic redundancy checking value calculator
US7870466B2 (en) Parallel cyclic code generation device and parallel cyclic code error detection device
JPS62133825A (ja) Crcビット計算装置およびcrcビット計算方法
JPH04284753A (ja) Crc演算方法及びatm交換方式におけるhec同期装置
Nair et al. A symbol based algorithm for hardware implementation of cyclic redundancy check (CRC)
US20080201689A1 (en) Vector Crc Computatuion on Dsp
US20020042804A1 (en) Parallel processing syndrome calculating circuit and reed-solomon decoding circuit
KR100756424B1 (ko) 파이프라인 재귀적인 기술을 이용한 면적 효율적인 리드솔로몬 복호기
JPH10117147A (ja) エラーチェック用データ発生回路
JPH1098392A (ja) Crc符号発生回路、符号誤り検出回路、及びcrc回路
JP2002033669A (ja) 復号回路及びその復号方法
JP3269415B2 (ja) Crc演算回路
JP2003046393A (ja) 誤り検出装置
JP2016201770A (ja) Crc符号演算回路、及びその方法並びに半導体装置
JPH0787090A (ja) 巡回符号検出方法及び装置
US6674374B1 (en) Data compressor utilizing switched input coincidence elements
JP2999561B2 (ja) データ圧縮及び復元装置
US8015476B2 (en) CRC syndrome generation for multiple data input widths
US6756923B1 (en) Data compressor utilizing switched input coincidence elements arranged in virtual levels
EP0790710B1 (en) Method for rapid validation and coding of cyclic codes
US6788226B1 (en) Data compressor with string code reassignment utilizing switched input coincidence elements
JPH07121471A (ja) データ転送装置