JP2001053621A - Crc generation part and crc calculation device - Google Patents

Crc generation part and crc calculation device

Info

Publication number
JP2001053621A
JP2001053621A JP11229449A JP22944999A JP2001053621A JP 2001053621 A JP2001053621 A JP 2001053621A JP 11229449 A JP11229449 A JP 11229449A JP 22944999 A JP22944999 A JP 22944999A JP 2001053621 A JP2001053621 A JP 2001053621A
Authority
JP
Japan
Prior art keywords
crc
data
unit
circuit
byte
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.)
Granted
Application number
JP11229449A
Other languages
Japanese (ja)
Other versions
JP3302950B2 (en
Inventor
Takatoshi Hashimoto
孝寿 橋本
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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP22944999A priority Critical patent/JP3302950B2/en
Publication of JP2001053621A publication Critical patent/JP2001053621A/en
Application granted granted Critical
Publication of JP3302950B2 publication Critical patent/JP3302950B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

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

Abstract

PROBLEM TO BE SOLVED: To efficiently generate a CRC when discrete data in the main storage of a computer are stored into a transmission data storage part for transmission and to efficiently check the normality of transmitted data with a small circuit scale. SOLUTION: An AND circuit 1037 ANDs the output of a transmit data register 1033 stored with transmit data and the output of a byte effectiveness register 1036 stored with a transmit byte effectiveness showing effectiveness or ineffectiveness and an XOR circuit 1034 XORs the output of the AND circuit 1037 and the output of a halfway result register 1032. A selecting circuit 1038 selects the output of the XOR circuit 1034 or the output of a CRC calculating circuit 1035 according to the final bit of the byte effectiveness register, stores it into a reception handling register 1039 or reception handling register 103A, and stores it into the CRC halfway result register 1032 through a selecting circuit 1031.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明はCRC生成部、CR
C計算装置に関し、特に、離散した送信データから効率
的にCRCを算出し、かつ受信データの正常性を効率的
に検査するCRC生成部、CRC計算装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a CRC generator,
More particularly, the present invention relates to a CRC generation unit and a CRC calculation device that efficiently calculate a CRC from discrete transmission data and efficiently check the normality of received data.

【0002】[0002]

【従来の技術】CRC(巡回冗長検査)に関する技術と
しては、たとえば、「特開平7−1070200号公
報」記載の技術がある。この技術は、「ビット同期され
た入力データを入力するNバイトシフトレジスタと、上
記Nバイトシフトレジスタの出力端に連結された補償多
項式駆動部と、上記ビット同期された入力データを入力
し、上記補償多項式駆動部の出力を入力して、補償多項
式モジューロ2減算および生成多項式モジューロ2除算
を実行する演算部と、上記演算部に接続されたブロック
同期識別部と、上記Nバイトシフトレジスタとブロック
同期識別部に連結されてバイト同期された出力データを
出力する64:8データ選択部と」を備え、ビット単位
でブロックの境界を識別することにより、バイト同期さ
れブロック同期されたデータをブロックの開始時点前に
出力する構成の簡単な巡回冗長検査(CRC)同期装置
を提供するものである。
2. Description of the Related Art As a technique relating to CRC (Cyclic Redundancy Check), there is a technique described in, for example, Japanese Patent Application Laid-Open No. 7-1070200. This technique is based on the following: "an N-byte shift register for inputting bit-synchronized input data, a compensation polynomial driving unit connected to an output terminal of the N-byte shift register, and the bit-synchronized input data, An operation unit that receives an output of the compensation polynomial driving unit and performs compensation polynomial modulo-2 subtraction and generation polynomial modulo-2 division, a block synchronization identification unit connected to the operation unit, the N byte shift register, and a block synchronization A 64: 8 data selection unit connected to the identification unit for outputting byte-synchronized output data, and identifying the block boundary in units of bits to start byte-synchronized and block-synchronized data. It is an object of the present invention to provide a simple cyclic redundancy check (CRC) synchronizer having an output before time point.

【0003】また、CRC(巡回冗長検査)に関する技
術としては、たとえば、「特表平9−507118号公
報」記載の技術がある。
As a technique related to CRC (Cyclic Redundancy Check), for example, there is a technique described in Japanese Patent Publication No. 9-507118.

【0004】[0004]

【発明が解決しようとする課題】上述した従来技術の問
題点は、主記憶に格納されているバイト単位の離散デー
タを送信データとしてCRCを付加して送信する場合
に、効率が悪いことである。
The above-mentioned problem of the prior art is that the efficiency is poor when the discrete data in the byte unit stored in the main memory is added to the CRC as the transmission data and transmitted. .

【0005】その理由は、バイト単位の離散データを考
慮した構成になっていないからである。
[0005] The reason is that the configuration does not take into account the discrete data in byte units.

【0006】本発明の目的は、コンピュータの主記憶内
の離散データを、送信のために送信データ記憶部へ格納
する時に、効率的にCRCを生成し、かつ送信されたデ
ータの正常性を少ない回路規模で効率的に実施すること
である。
SUMMARY OF THE INVENTION It is an object of the present invention to efficiently generate a CRC and reduce the normality of transmitted data when storing discrete data in a main memory of a computer in a transmission data storage unit for transmission. This is to implement it efficiently on a circuit scale.

【0007】[0007]

【課題を解決するための手段】本発明の第1のCRC生
成部は、(a)送信すべき有効バイトデータを含む送信
データを格納する送信データレジスタと、(b)前記送
信データの各バイトの有効・無効を示すバイト単位のバ
イト有効信号を格納するバイト有効レジスタと、(c)
前記送信データレジスタの出力と、前記バイト有効レジ
スタの出力との論理積を算出するAND回路と、(d)
CRCの途中結果または初期値を格納するCRC途中結
果レジスタと、(e)前記CRC途中結果レジスタの出
力と前記AND回路の出力との排他的論理和を作成する
XOR回路と、(f)前記XOR回路の出力からCRC
を生成するCRC計算回路と、(g)前記バイト有効レ
ジスタの最終バイトに対するバイト有効信号が有効を示
す場合には前記CRC計算回路の出力を選択し、最終バ
イトに対するバイト有効信号が無効を示す場合には前記
XOR回路の出力を選択し、CRCの途中結果または最
終結果として出力する第1の選択回路と、(h)前記第
1の選択回路の出力をデータ受信装置対応に保持する1
以上の受信対応レジスタと、(i)前記第1の選択回路
の出力のCRCの途中結果、前記1以上の受信対応レジ
スタの出力のCRCの途中結果、CRCの初期値のいず
れかを選択し、前記CRC途中結果レジスタに出力する
第2の選択回路と、を有する。
A first CRC generator of the present invention comprises: (a) a transmission data register for storing transmission data including valid byte data to be transmitted; and (b) each byte of the transmission data. (C) a byte valid register for storing a byte valid signal in units of bytes indicating valid / invalid of
(D) an AND circuit for calculating an AND of an output of the transmission data register and an output of the byte valid register;
(E) an XOR circuit for creating an exclusive OR of an output of the CRC intermediate result register and an output of the AND circuit; (f) the XOR CRC from circuit output
And (g) selecting the output of the CRC calculation circuit when the byte valid signal for the last byte of the byte valid register indicates valid, and when the byte valid signal for the last byte indicates invalid. A first selection circuit for selecting an output of the XOR circuit and outputting the result as an intermediate result or a final result of CRC; and (h) holding an output of the first selection circuit for a data receiving device.
(I) selecting one of an intermediate result of the CRC of the output of the first selection circuit, an intermediate result of the CRC of the output of the one or more reception corresponding registers, and an initial value of the CRC; A second selection circuit that outputs the result to the CRC intermediate result register.

【0008】本発明の第1のCRC計算装置は、(a)
前記第1のCRC生成部を有し、前記第1のCRC生成
部により生成したCRCを送信データに付加して送信す
るデータ送信装置と、(b)前記データ送信装置から送
信された送信データおよびCRCを転送するネットワー
クと、(c)前記第1のCRC生成部を有し、前記ネッ
トワークを介して転送された前記データ送信装置からの
送信データを受信データとして、かつCRCを受信し、
受信データから前記第1のCRC生成部により生成した
CRCと、受信したCRCとを比較し、受信データの正
常性をチェックする1以上のデータ受信装置と、を有す
ることを特徴とする。
[0008] The first CRC calculation device of the present invention comprises:
A data transmission device having the first CRC generation unit, and adding a CRC generated by the first CRC generation unit to transmission data and transmitting the transmission data; (b) transmitting data transmitted from the data transmission device; A network for transferring a CRC, and (c) having the first CRC generation unit, receiving transmission data from the data transmission device transferred via the network as reception data, and receiving a CRC;
It is characterized by having one or more data receiving devices for comparing the CRC generated by the first CRC generator from the received data with the received CRC and checking the normality of the received data.

【0009】本発明の第2のCRC計算装置は、前記第
1のCRC計算装置であって、離散するバイト単位の送
信データを格納する主記憶部と、送信データ記憶部と、
前記第1のCRC生成部と、選択回路部と、制御部とを
備え、(a)前記主記憶部から1度に読み出された有効
な送信データを含むデータを前記選択回路を介して、順
次、有効なデータのみを前記制御部の指示にしたがい格
納し、次に前記第1のCRC生成部からのCRCを格納
する前記送信データ記憶部と、(b)前記主記憶部から
1度に読み出された有効な送信データを含むデータに対
し前記制御部からのバイト有効信号にしたがい、CRC
を生成する前記第1のCRC生成部と、(c)前記制御
部からの指示にしたがい前記主記憶からのデータ、前記
第1のCRC生成部からのCRCのいずれかを選択する
前記選択回路部と、(d)前記送信データ記憶部から送
信データおよびCRCを前記ネットワークを介して前記
1以上の前記データ受信装置に送信する前記制御部と、
を備える前記データ送信装置を有する。
A second CRC calculation device according to the present invention is the first CRC calculation device, wherein a main storage unit for storing transmission data in discrete bytes, a transmission data storage unit,
A first CRC generation unit, a selection circuit unit, and a control unit, and (a) data including valid transmission data read at once from the main storage unit via the selection circuit; Sequentially storing only valid data in accordance with the instruction of the control unit, and then storing the CRC from the first CRC generation unit; and (b) once from the main storage unit. According to the byte valid signal from the control unit, the read data including the valid transmission data is subjected to a CRC.
And (c) the selection circuit unit that selects one of data from the main memory and a CRC from the first CRC generation unit according to an instruction from the control unit. (D) the control unit for transmitting transmission data and a CRC from the transmission data storage unit to the one or more data reception devices via the network;
The data transmission device comprising:

【0010】本発明の第3のCRC計算装置は、前記第
1または第2のCRC計算装置であって、離散するバイ
ト単位の受信データを格納する主記憶部と、受信データ
記憶部と、前記第1のCRC生成部と、比較回路部と、
制御部とを備え、(a)前記データ送信装置から前記ネ
ットワークを介して転送された送信データを受信データ
として格納し、かつ前記データ送信装置から前記ネット
ワークを介して転送されたCRCを格納する前記受信デ
ータ記憶部と、(b)前記受信データ記憶部から前記主
記憶部に1度に書き込むデータを含むデータに対し前記
制御部からのバイト有効信号にしたがい、CRCを生成
する前記第1のCRC生成部と、(c)前記制御部から
の指示にしたがい、前記第1のCRC生成部からのCR
Cと前記受信データ記憶部からのCRCとの比較を行う
前記比較回路部と、(d)前記比較回路部における比較
結果が一致すれば、受信データが正常であると判断する
前記制御部と、を備える前記データ受信装置を有する。
[0010] A third CRC calculation device according to the present invention is the first or second CRC calculation device, wherein a main storage unit for storing discrete bytes of received data, a received data storage unit, A first CRC generation unit, a comparison circuit unit,
And (a) storing transmission data transferred from the data transmission device via the network as reception data, and storing a CRC transferred from the data transmission device via the network. A reception data storage unit; and (b) the first CRC for generating a CRC according to a byte valid signal from the control unit for data including data to be written from the reception data storage unit to the main storage unit at one time. A generation unit; and (c) a CR from the first CRC generation unit in accordance with an instruction from the control unit.
C: a comparison circuit for comparing C with the CRC from the reception data storage unit; and (d) the control unit for determining that the reception data is normal if the comparison result in the comparison circuit unit matches; The data receiving device comprising:

【0011】本発明の第2のCRC生成部は、前記主記
憶部から1度に読み出すデータのバイト長が前記送信デ
ータ記憶部に1度に書き込めるデータのバイト長の整数
倍である場合に、前記AND回路、前記XOR回路、前
記CRC計算回路、前記第1の選択回路を整数倍分有す
る。
[0011] A second CRC generation unit according to the present invention, when the byte length of data read out from the main storage unit at a time is an integral multiple of the byte length of data that can be written into the transmission data storage unit at one time, The AND circuit, the XOR circuit, the CRC calculation circuit, and the first selection circuit have an integral multiple.

【0012】本発明の第4のCRC計算装置は、(a)
前記第2のCRC生成部を有し、前記第2のCRC生成
部により生成したCRCを送信データに付加して送信す
るデータ送信装置と、(b)前記データ送信装置から送
信された送信データおよびCRCを転送するネットワー
クと、(c)前記第2のCRC生成部を有し、前記ネッ
トワークを介して転送された前記データ送信装置からの
送信データを受信データとして、かつCRCを受信し、
受信データから前記第2のCRC生成部により生成した
CRCと、受信したCRCとを比較し、受信データの正
常性をチェックする1以上のデータ受信装置と、を有す
る。
A fourth CRC calculation device according to the present invention comprises: (a)
A data transmission device having the second CRC generation unit, and adding the CRC generated by the second CRC generation unit to transmission data and transmitting the transmission data; and (b) transmitting data transmitted from the data transmission device; A network for transferring a CRC, and (c) having the second CRC generation unit, receiving transmission data from the data transmission device transferred via the network as reception data, and receiving a CRC;
There is at least one data receiving device that compares a CRC generated by the second CRC generator from the received data with the received CRC and checks the normality of the received data.

【0013】本発明の第5のCRC計算装置は、前記第
4のCRC計算装置であって、離散するバイト単位の送
信データを格納する主記憶部と、送信データ記憶部と、
前記第2のCRC生成部と、選択回路部と、制御部とを
備え、(a)前記主記憶部から1度に読み出された有効
な送信データを含むデータを前記選択回路を介して、順
次、有効なデータのみを前記制御部の指示にしたがい格
納し、次に前記第2のCRC生成部からのCRCを格納
する前記送信データ記憶部と、(b)前記主記憶部から
1度に読み出された有効な送信データを含むデータに対
し前記制御部からのバイト有効信号にしたがい、CRC
を生成する前記第2のCRC生成部と、(c)前記制御
部からの指示にしたがい前記主記憶からのデータ、前記
第2のCRC生成部からのCRCのいずれかを選択する
前記選択回路部と、(d)前記送信データ記憶部から送
信データおよびCRCを前記ネットワークを介して前記
1以上の前記データ受信装置に送信する前記制御部と、
を備える前記データ送信装置を有する。
A fifth CRC calculation device according to the present invention is the fourth CRC calculation device, wherein: a main storage unit for storing transmission data in discrete bytes; a transmission data storage unit;
A second CRC generation unit, a selection circuit unit, and a control unit, and (a) data including valid transmission data read at once from the main storage unit via the selection circuit; Sequentially storing only valid data according to the instruction of the control unit, and then storing the CRC from the second CRC generation unit; and (b) once from the main storage unit. According to the byte valid signal from the control unit, the read data including the valid transmission data is subjected to a CRC.
And (c) the selection circuit unit that selects one of data from the main memory and a CRC from the second CRC generation unit according to an instruction from the control unit. (D) the control unit for transmitting transmission data and a CRC from the transmission data storage unit to the one or more data reception devices via the network;
The data transmission device comprising:

【0014】本発明の第6のCRC計算装置は、前記第
4または第5のCRC計算装置であって、離散するバイ
ト単位の受信データを格納する主記憶部と、受信データ
記憶部と、前記第2のCRC生成部と、比較回路部と、
制御部とを備え、(a)前記データ送信装置から前記ネ
ットワークを介して転送された送信データを受信データ
として格納し、かつ前記データ送信装置から前記ネット
ワークを介して転送されたCRCを格納する前記受信デ
ータ記憶部と、(b)前記受信データ記憶部から前記主
記憶部に1度に書き込むデータを含むデータに対し前記
制御部からのバイト有効信号にしたがい、CRCを生成
する前記第2のCRC生成部と、(c)前記制御部から
の指示にしたがい、前記第2のCRC生成部からのCR
Cと前記受信データ記憶部からのCRCとの比較を行う
前記比較回路部と、(d)前記比較回路部における比較
結果が一致すれば、受信データが正常であると判断する
前記制御部と、を備える前記データ受信装置を有する。
The sixth CRC calculation device of the present invention is the fourth or fifth CRC calculation device, wherein: a main storage unit for storing discrete bytes of received data; a received data storage unit; A second CRC generation unit, a comparison circuit unit,
And (a) storing transmission data transferred from the data transmission device via the network as reception data, and storing a CRC transferred from the data transmission device via the network. A reception data storage unit, and (b) the second CRC for generating a CRC according to a byte valid signal from the control unit for data including data to be written from the reception data storage unit to the main storage unit at one time. A generation unit, and (c) a CR from the second CRC generation unit in accordance with an instruction from the control unit.
C: a comparison circuit for comparing C with the CRC from the reception data storage unit; and (d) the control unit for determining that the reception data is normal if the comparison result in the comparison circuit unit matches; The data receiving device comprising:

【0015】[0015]

【発明の実施の形態】次に、本発明の第1の実施の形態
について図面を参照して詳細に説明する。図1は、本発
明の第1実施の形態を示すブロック図である。図1を参
照すると、本発明の実施の形態は、データ送信装置10
と、データ受信装置20と、データ受信装置40と、デ
ータ送信装置10、データ受信装置20、およびデータ
受信装置40を接続するネットワーク30とから構成さ
れる。
Next, a first embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing a first embodiment of the present invention. Referring to FIG. 1, an embodiment of the present invention includes a data transmitting device 10
, A data receiving device 20, a data receiving device 40, and a network 30 connecting the data transmitting device 10, the data receiving device 20, and the data receiving device 40.

【0016】また、データ送信装置10は、主記憶部1
01と、送信データ記憶部102と、CRC生成部10
3と、選択回路部104と、制御部105とから構成さ
れる。
Further, the data transmitting apparatus 10 includes a main storage unit 1
01, the transmission data storage unit 102, and the CRC generation unit 10
3, a selection circuit unit 104, and a control unit 105.

【0017】また、データ受信装置20、データ受信装
置40は、主記憶部201と、CRC生成部203と、
制御部205と、受信データ記憶部206と、比較回路
部207とから構成される。
The data receiving device 20 and the data receiving device 40 include a main storage unit 201, a CRC generation unit 203,
The control unit 205 includes a control unit 205, a reception data storage unit 206, and a comparison circuit unit 207.

【0018】図2は、図1のCRC生成部103の詳細
を示すブロック図である。図2を参照すると、CRC生
成部103は、選択回路1031と、CRC途中結果レ
ジスタ1032と、送信データレジスタ1033と、排
他的論理和の機能を持つXOR回路1034と、CRC
計算回路1035と、バイト有効レジスタ1036と、
論理積の機能を持つAND回路1037と、選択回路1
038と、受信対応レジスタ1039と、受信対応レジ
スタ103Aとから構成される。CRC生成部203も
CRC生成部103と同一の構成を持つ。
FIG. 2 is a block diagram showing details of the CRC generator 103 in FIG. Referring to FIG. 2, the CRC generation unit 103 includes a selection circuit 1031, a CRC intermediate result register 1032, a transmission data register 1033, an XOR circuit 1034 having an exclusive OR function,
A calculation circuit 1035, a byte valid register 1036,
AND circuit 1037 having a logical product function and selection circuit 1
038, a reception correspondence register 1039, and a reception correspondence register 103A. The CRC generation unit 203 has the same configuration as the CRC generation unit 103.

【0019】主記憶部101から送信データが、CRC
生成部103の送信データレジスタ1033、および選
択回路部104を介して送信データ記憶部102に供給
され、制御部105から送信バイト有効信号が、送信デ
ータ記憶部102、バイト有効レジスタ1036に供給
される。ここでは、送信データは4[バイト]であり、
送信バイト有効信号は、送信データの各バイトが有効で
あると“1”、無効であると、“0”の値が供給され
る。したがって、送信バイト有効信号は、4[ビット]
である。
If the transmission data from the main storage unit 101 is a CRC
The transmission data register 1033 of the generation unit 103 and the transmission data storage unit 102 are supplied via the selection circuit unit 104, and the transmission byte valid signal is supplied from the control unit 105 to the transmission data storage unit 102 and the byte valid register 1036. . Here, the transmission data is 4 [bytes],
The transmission byte valid signal is supplied with a value of “1” when each byte of the transmission data is valid, and with a value of “0” when the byte is invalid. Therefore, the transmission byte valid signal is 4 [bits].
It is.

【0020】AND回路1037では、送信データレジ
スタ1033の出力とバイト有効レジスタ1036の出
力とをバイト単位に論理積の演算を行う。すなわち、有
効なバイトはそのままの値が、無効なバイトは、“0”
が出力される。
The AND circuit 1037 performs an AND operation on the output of the transmission data register 1033 and the output of the byte valid register 1036 in byte units. That is, a valid byte has the same value, and an invalid byte is “0”.
Is output.

【0021】また、CRC計算回路1035では、たと
えば、XOR回路1034の出力を32[ビット]左に
シフトし、16進の数値“FD3EE249”で除算し
た剰余が算出される。
In the CRC calculation circuit 1035, for example, the remainder obtained by shifting the output of the XOR circuit 1034 to the left by 32 [bits] and dividing by the hexadecimal value "FD3EE249" is calculated.

【0022】選択回路1038では、バイト有効レジス
タ1036内の送信データレジスタ1033の最終バイ
ト(たとえば最も右に位置するバイト)に対応する信号
が有効の場合、CRC計算回路1035の出力が選択さ
れ、最終バイトに対応する信号が無効の場合、CRC途
中結果レジスタ1032の出力と、AND回路1037
の出力の排他的論理和を演算したXOR回路1034の
出力が選択される。
In the selection circuit 1038, when the signal corresponding to the last byte (for example, the rightmost byte) of the transmission data register 1033 in the byte valid register 1036 is valid, the output of the CRC calculation circuit 1035 is selected. When the signal corresponding to the byte is invalid, the output of the CRC intermediate result register 1032 and the AND circuit 1037
The output of the XOR circuit 1034 which has calculated the exclusive OR of the outputs of the above is selected.

【0023】選択回路1038の出力は、選択回路10
31に供給され、また、CRC計算の途中結果として、
データ受信装置20に対するものであれば、受信対応レ
ジスタ1039に保持され、データ受信装置40に対す
るものであれば、受信対応レジスタ103Aに保持さ
れ、さらにCRC途中結果レジスタ1032に保持され
る。
The output of the selection circuit 1038 is
31, and as an intermediate result of the CRC calculation,
If it is for the data receiving device 20, it is held in the reception correspondence register 1039, and if it is for the data reception device 40, it is held in the reception correspondence register 103A and further held in the CRC intermediate result register 1032.

【0024】また、上記送信データの最後の4バイトの
データの最終バイトが送信されるデータでない場合に
は、送信バイト有効信号の最終バイトの信号が有効を示
すようにパディングデータ(ダミーのデータ)が補充さ
れて供給される。
If the last byte of the last four bytes of the transmission data is not the data to be transmitted, padding data (dummy data) such that the last byte signal of the transmission byte valid signal indicates validity. Is supplied and supplied.

【0025】次に、本発明の第1の実施の形態の動作に
ついて図面を参照して説明する。図3は、送信データ、
受信データの配列を示す説明図である。図4は、本発明
の第1の実施の形態の動作を示すタイムチャートであ
る。図3を参照すると、主記憶部101には、データ受
信装置20に送信される送信データX1、X2、X3、
X4、X5、X6、X7、X8、X9、X10、X1
1、X12が格納されている。送信データX1、X2、
X3は、それぞれ1[バイト]ずつ不連続であり、送信
データX4〜X12は、9[バイト]連続している。
Next, the operation of the first embodiment of the present invention will be described with reference to the drawings. FIG. 3 shows transmission data,
FIG. 9 is an explanatory diagram showing an array of received data. FIG. 4 is a time chart illustrating the operation of the first exemplary embodiment of the present invention. Referring to FIG. 3, the main storage unit 101 stores transmission data X1, X2, X3,
X4, X5, X6, X7, X8, X9, X10, X1
1, X12 are stored. Transmission data X1, X2,
X3 is discontinuous by 1 [byte] each, and transmission data X4 to X12 are continuous by 9 [bytes].

【0026】また、送信データX1、X2、X3は、そ
れぞれ、4バイト境界の、第0バイトに、第3バイト
に、第2バイトに位置し、送信データX4〜X6は、第
1〜第3バイトに、送信データX7〜X10は、第0〜
第3バイトに、送信データX11〜X12は、第0〜第
2バイト位置する。
The transmission data X1, X2, and X3 are located at the 0th byte, the 3rd byte, and the 2nd byte, respectively, on the 4-byte boundary, and the transmission data X4 to X6 are the first to third bytes, respectively. In the byte, the transmission data X7 to X10 are
In the third byte, the transmission data X11 to X12 are located at the 0th to the 2nd byte.

【0027】また、同様に、主記憶部101には、デー
タ受信装置40に送信される送信データY1、Y2、Y
3、Y4、Y5、Y6、Y7、Y8が格納されている。
送信データY1、Y2、Y3は、それぞれ1[バイト]
ずつ不連続であり、送信データY4〜Y5は、2[バイ
ト]連続し、送信データY6〜Y8は、3[バイト]連
続している。
Similarly, the main storage unit 101 stores transmission data Y 1, Y 2, Y
3, Y4, Y5, Y6, Y7, and Y8 are stored.
The transmission data Y1, Y2, and Y3 are each 1 byte.
The transmission data Y4 to Y5 are continuous for 2 [bytes], and the transmission data Y6 to Y8 are continuous for 3 [bytes].

【0028】また、送信データY1、Y2、X3は、そ
れぞれ、4バイト境界の、第2バイト、第1バイト、第
2バイトに位置し、送信データY4〜Y5は、第0〜第
1バイト、送信データY6〜X8は、第2〜第0バイト
に位置する。
The transmission data Y1, Y2, and X3 are respectively located at the second byte, the first byte, and the second byte on the 4-byte boundary, and the transmission data Y4 to Y5 are the 0th to the first byte, respectively. The transmission data Y6 to X8 are located in the second to zeroth bytes.

【0029】まず、制御部105の指示により主記憶部
101から、送信データX1を含む4バイト境界の4
[バイト](X1,*,*,*)が読み出され、CRC
生成部103および選択回路部104を介して送信デー
タ記憶部102に出力される(ここで、*は、送信され
ない1[バイト]のデータを示す)。
First, in accordance with an instruction from the control unit 105, the main storage unit 101 stores four bytes on the 4-byte boundary including the transmission data X1.
[Byte] (X1, *, *, *) is read and the CRC
The data is output to the transmission data storage unit 102 via the generation unit 103 and the selection circuit unit 104 (* indicates 1 [byte] data that is not transmitted).

【0030】次に、順次、送信データY1を含む4バイ
ト境界の4[バイト](*,*,Y1,*)、送信デー
タY2を含む4バイト境界の4[バイト](*,Y2,
*,*)、送信データX2を含む4バイト境界の4[バ
イト](*,*,*,X2)、送信データY3を含む4
バイト境界の4[バイト](*,Y3,*,*)、送信
データY4〜Y5を含む4バイト境界の4[バイト]
(Y4,Y5,*,*)、送信データX3を含む4バイ
ト境界の4[バイト](*,*,X3,*)、送信デー
タX4〜X6を含む4バイト境界の4[バイト](*,
X4,X5,X6)、送信データX7〜X10を含む4
バイト境界の4[バイト](X7,X8,X9,X1
0)、送信データX11〜X12を含む4バイト境界の
4[バイト](X11,X12,*,*)、送信データ
Y6〜Y7を含む4バイト境界の4[バイト](*,
*,Y6,Y7)、送信データY8を含む4バイト境界
の4[バイト](Y8,*,*,*)が読み出され、順
次、送信データ記憶部102およびCRC生成部103
に出力される。
Next, 4 [bytes] (*, *, Y1, *) on a 4-byte boundary including the transmission data Y1 and 4 [bytes] (*, Y2, 4) on a 4-byte boundary including the transmission data Y2 are sequentially.
*, *), 4 bytes (*, *, *, X2) on a 4-byte boundary including the transmission data X2, and 4 including the transmission data Y3
4 [bytes] at byte boundaries (*, Y3, *, *), 4 [bytes] at 4 byte boundaries including transmission data Y4 to Y5
(Y4, Y5, *, *), 4 bytes at the 4-byte boundary including the transmission data X3 (*, *, X3, *), and 4 bytes at the 4-byte boundary including the transmission data X4 to X6 (* ,
X4, X5, X6), 4 including transmission data X7 to X10
4 bytes at the byte boundary (X7, X8, X9, X1
0), 4 bytes at a 4-byte boundary including transmission data X11 to X12 (X11, X12, *, *), and 4 bytes at a 4-byte boundary including transmission data Y6 to Y7 (*,
*, Y6, Y7) and 4 [bytes] (Y8, *, *, *) on a 4-byte boundary including the transmission data Y8 are read out, and the transmission data storage unit 102 and the CRC generation unit 103 are sequentially read.
Is output to

【0031】また、制御部105から、各4バイト境界
の4[バイト]と同時に対応する送信バイト有効信号
(4[ビット])が、順次、送信データ記憶部102お
よびCRC生成部103に出力される。
Further, the control unit 105 sequentially outputs a transmission byte valid signal (4 [bits]) corresponding to 4 [bytes] at each 4-byte boundary to the transmission data storage unit 102 and the CRC generation unit 103. You.

【0032】送信データ記憶部102には、図3に示す
ように、データ受信装置20、データ受信装置40の領
域ごとに、送信バイト有効信号にしたがって、送信され
るべき送信データのみが詰めて格納される。
As shown in FIG. 3, only the transmission data to be transmitted is packed and stored in the transmission data storage unit 102 in accordance with the transmission byte valid signal for each area of the data receiving device 20 and the data receiving device 40. Is done.

【0033】まず、データ送信装置10の動作について
説明する。
First, the operation of the data transmission device 10 will be described.

【0034】CRC生成部103は、まず、制御部10
5からの指示により選択回路1031を介してCRC初
期値(たとえば、すべて“0”の値)をCRC途中結果
レジスタ1032に格納し、主記憶部101から、送信
データを含むデータ(X1,*,*,*)を、同時に制
御部105から対応する送信データ送信バイト有効信号
(1,0,0,0)をそれぞれ、送信データレジスタ1
033、バイト有効レジスタ1036に格納し、CRC
途中結果レジスタ1032の出力(0,0,0,0)と
AND回路1037の出力(X1,0,0,0)との排
他的論理和を演算したXOR回路1034の出力(X
1,0,0,0)を選択回路1038で選択する。ま
た、送信データ(X1)を選択回路部104を介して送
信データ記憶部102に格納する(図4サイクルT
0)。
The CRC generation unit 103 first controls the control unit 10
5 stores the CRC initial value (for example, all the values of “0”) in the CRC intermediate result register 1032 via the selection circuit 1031 and transmits the data (X1, *, *, *) And the corresponding transmission data transmission byte valid signal (1, 0, 0, 0) from the control unit 105, respectively.
033, stored in byte valid register 1036, CRC
The output (X) of the XOR circuit 1034 which has calculated the exclusive OR of the output (0, 0, 0, 0) of the intermediate result register 1032 and the output (X1, 0, 0, 0) of the AND circuit 1037
1, 0, 0, 0) is selected by the selection circuit 1038. Further, the transmission data (X1) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (the cycle T in FIG. 4).
0).

【0035】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031を介してCRC
初期値(0,0,0,0)をCRC途中結果レジスタ1
032に格納し、選択回路1038の出力(X1,0,
0,0)を受信対応レジスタ1039に格納し、次のデ
ータ(Y1,*,*,*)、および送信データ送信バイ
ト有効信号(1,0,0,0)をそれぞれ、送信データ
レジスタ1033、バイト有効レジスタ1036に格納
し、CRC途中結果レジスタ1032の出力(0,0,
0,0)とAND回路1037の出力(Y1,0,0,
0)との排他的論理和を演算したXOR回路1034の
出力(Y1,0,0,0)を選択回路1038で選択す
る。また、送信データ(Y1)を選択回路部104を介
して送信データ記憶部102に格納する(図4サイクル
T1)。
Next, the CRC generation unit 103
5 via the selection circuit 1031 and the CRC
Initial value (0,0,0,0) is set to CRC intermediate result register 1
032, and the output (X1, 0,
(0, 0) is stored in the reception correspondence register 1039, and the next data (Y1, *, *, *) and the transmission data transmission byte valid signal (1, 0, 0, 0) are respectively stored in the transmission data register 1033, The data is stored in the byte valid register 1036, and the output (0, 0,
0, 0) and the output of the AND circuit 1037 (Y1, 0, 0,
0), the output (Y1, 0, 0, 0) of the XOR circuit 1034, which has been calculated by the exclusive OR operation, is selected by the selection circuit 1038. Further, the transmission data (Y1) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T1 in FIG. 4).

【0036】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031の出力(Y1,
0,0,0)をCRC途中結果レジスタ1032に、お
よび選択回路1038の出力(Y1,0,0,0)を受
信対応レジスタ103Aに格納し、次のデータ(*,Y
2,*,*)、および送信データ送信バイト有効信号
(0,1,0,0)をそれぞれ、送信データレジスタ1
033、バイト有効レジスタ1036に格納し、CRC
途中結果レジスタ1032の出力(Y1,0,0,0)
とAND回路1037の出力(0,Y2,0,0)との
排他的論理和を演算したXOR回路1034の出力(Y
1,Y2,0,0)を選択回路1038で選択する。ま
た、送信データ(Y2)を選択回路部104を介して送
信データ記憶部102に格納する(図4サイクルT
2)。
Next, the CRC generation unit 103
5, the output of the selection circuit 1031 (Y1,
(0, 0, 0) is stored in the CRC intermediate result register 1032, and the output (Y1, 0, 0, 0) of the selection circuit 1038 is stored in the reception correspondence register 103A, and the next data (*, Y
2, *, *) and the transmission data transmission byte valid signal (0, 1, 0, 0), respectively.
033, stored in byte valid register 1036, CRC
Output of the intermediate result register 1032 (Y1, 0, 0, 0)
And the output (Y) of the XOR circuit 1034 that is obtained by calculating the exclusive OR of the output (0, Y2, 0, 0) of the AND circuit 1037
1, Y2, 0, 0) is selected by the selection circuit 1038. Also, the transmission data (Y2) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (see cycle T in FIG. 4).
2).

【0037】次に、CRC生成部103は、制御部10
5からの指示により、受信対応レジスタ1039の出力
(X1,0,0,0)を選択回路1031を介して、C
RC途中結果レジスタ1032に格納し、選択回路10
38の出力(Y1,Y2,0,0)を受信対応レジスタ
103Aに格納し、次のデータ(*,X2,*,*)、
および送信データ送信バイト有効信号(0,1,0,
0)をそれぞれ、送信データレジスタ1033、バイト
有効レジスタ1036に格納し、CRC途中結果レジス
タ1032の出力(X1,0,0,0)とAND回路1
037の出力(0,X2,0,0)との排他的論理和を
演算したXOR回路1034の出力(X1,X2,0,
0)を選択回路1038で選択する。また、送信データ
(X2)を選択回路部104を介して送信データ記憶部
102に格納する(図4サイクルT3)。
Next, the CRC generation unit 103
5, the output (X1, 0, 0, 0) of the reception correspondence register 1039 is transmitted to the C
The data is stored in the RC intermediate result register 1032 and the selection circuit 10
38 (Y1, Y2, 0, 0) are stored in the reception register 103A, and the next data (*, X2, *, *)
And transmission data transmission byte valid signal (0, 1, 0,
0) are respectively stored in the transmission data register 1033 and the byte valid register 1036, and the output (X1, 0, 0, 0) of the CRC intermediate result register 1032 and the AND circuit 1
The output (X1, X2, 0, X1, X2, 0, 0) of the XOR circuit 1034 which calculated the exclusive OR with the output (0, X2, 0, 0) of the bit 037
0) is selected by the selection circuit 1038. Further, the transmission data (X2) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T3 in FIG. 4).

【0038】次に、CRC生成部103は、制御部10
5からの指示により、受信対応レジスタ103Aの出力
(Y1,Y2,0,0)を選択回路1031を介してC
RC途中結果レジスタ1032に格納し、選択回路10
38の出力(X1,X2,0,0)を受信対応レジスタ
1039に格納し、次のデータ(*,*,Y3,*)、
および送信データ送信バイト有効信号(0,0,1,
0)をそれぞれ、送信データレジスタ1033、バイト
有効レジスタ1036に格納し、CRC途中結果レジス
タ1032の出力(Y1,Y2,0,0)とAND回路
1037の出力(0,0,Y3,0)との排他的論理和
を演算したXOR回路1034の出力(Y1,Y2,Y
3,0)を選択回路1038で選択する。また、送信デ
ータ(Y3)を選択回路部104を介して送信データ記
憶部102に格納する(図4サイクルT4)。
Next, the CRC generation unit 103
5 in response to the output (Y1, Y2, 0, 0) of the reception correspondence register 103A through the selection circuit 1031.
The data is stored in the RC intermediate result register 1032 and the selection circuit 10
The output (X1, X2, 0, 0) is stored in the reception correspondence register 1039, and the next data (*, *, Y3, *),
And transmission data transmission byte valid signal (0, 0, 1,
0) are stored in the transmission data register 1033 and the byte valid register 1036, respectively, and the output (Y1, Y2, 0, 0) of the CRC intermediate result register 1032 and the output (0, 0, Y3, 0) of the AND circuit 1037 are stored in the transmission data register 1033 and the byte valid register 1036, respectively. Of the XOR circuit 1034 (X1, Y2, Y3)
3,0) is selected by the selection circuit 1038. The transmission data (Y3) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T4 in FIG. 4).

【0039】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031の出力(Y1,
Y2,Y3,0)をCRC途中結果レジスタ1032
に、および選択回路1038の出力(Y1,Y2,Y
3,0)を受信対応レジスタ103Aに格納し、次のデ
ータ(*,*,*,Y4)、および送信データ送信バイ
ト有効信号(0,0,0,1)をそれぞれ、送信データ
レジスタ1033、バイト有効レジスタ1036に格納
し、CRC途中結果レジスタ1032の出力(Y1,Y
2,Y3,0)とAND回路1037の出力(0,0,
0,Y4)との排他的論理和を演算したXOR回路10
34の出力(Y1,Y2,Y3,Y4)をCRC計算回
路1035に入力し、CRCを計算し、CRC(C1
1,C12,C13,C14)を選択回路1038で選
択する。また、送信データ(Y4)を選択回路部104
を介して送信データ記憶部102に格納する(図4サイ
クルT5)。
Next, the CRC generation unit 103
5, the output of the selection circuit 1031 (Y1,
Y2, Y3, 0) in the CRC intermediate result register 1032
And the output (Y1, Y2, Y
(3, 0) is stored in the reception correspondence register 103A, and the next data (*, *, *, Y4) and the transmission data transmission byte valid signal (0, 0, 0, 1) are respectively stored in the transmission data register 1033, The data is stored in the byte valid register 1036, and the output (Y1, Y
2, Y3, 0) and the output of the AND circuit 1037 (0, 0,
0, Y4) and an XOR circuit 10 that has performed an exclusive OR operation with the XOR circuit 10
34 (Y1, Y2, Y3, Y4) are input to a CRC calculation circuit 1035 to calculate a CRC, and the CRC (C1
, C12, C13, C14) are selected by the selection circuit 1038. Further, the transmission data (Y4) is transmitted to the selection circuit unit 104.
(FIG. 4, cycle T5).

【0040】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031の出力(C1
1,C12,C13,C14)をCRC途中結果レジス
タ1032に、および選択回路1038の出力(C1
1,C12,C13,C14)を受信対応レジスタ10
3Aに格納し、次のデータ(Y5,*,*,*)、およ
び送信データ送信バイト有効信号(1,0,0,0)を
それぞれ、送信データレジスタ1033、バイト有効レ
ジスタ1036に格納し、CRC途中結果レジスタ10
32の出力(C11,C12,C13,C14)とAN
D回路1037の出力(Y5,0,0,0)との排他的
論理和を演算したXOR回路1034の出力(C21,
C12,C13,C14)を選択回路1038で選択す
る。また、送信データ(Y5)を選択回路部104を介
して送信データ記憶部102に格納する(図4サイクル
T6)。
Next, the CRC generation unit 103
5, the output of the selection circuit 1031 (C1
, C12, C13, C14) to the CRC intermediate result register 1032 and the output (C1
1, C12, C13, and C14)
3A, the next data (Y5, *, *, *) and the transmission data transmission byte valid signal (1, 0, 0, 0) are stored in the transmission data register 1033 and the byte valid register 1036, respectively. CRC intermediate result register 10
32 outputs (C11, C12, C13, C14) and AN
The output (C21, C21, X21) of the XOR circuit 1034 that has calculated the exclusive OR with the output (Y5, 0, 0, 0) of the D circuit 1037
C12, C13, and C14) are selected by the selection circuit 1038. The transmission data (Y5) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T6 in FIG. 4).

【0041】次に、CRC生成部103は、制御部10
5からの指示により、受信対応レジスタ1039の出力
(X1,X2,0,0)を選択回路1031を介して、
CRC途中結果レジスタ1032に格納し、選択回路1
038の出力(C21,C12,C13,C14)を受
信対応レジスタ103Aに格納し、次のデータ(*,
*,X3,*)、および送信データ送信バイト有効信号
(0,0,1,0)をそれぞれ、送信データレジスタ1
033、バイト有効レジスタ1036に格納し、CRC
途中結果レジスタ1032の出力(X1,X2,0,
0)とAND回路1037の出力(0,0,X3,0)
との排他的論理和を演算したXOR回路1034の出力
(X1,X2,X3,0)を選択回路1038で選択す
る。また、送信データ(X3)を選択回路部104を介
して送信データ記憶部102に格納する(図4サイクル
T7)。
Next, the CRC generation unit 103
5, the output (X1, X2, 0, 0) of the reception correspondence register 1039 is passed through the selection circuit 1031.
The data is stored in the CRC intermediate result register 1032 and the selection circuit 1
038 (C21, C12, C13, C14) is stored in the reception correspondence register 103A, and the next data (*,
*, X3, *) and the transmission data transmission byte valid signal (0, 0, 1, 0), respectively.
033, stored in byte valid register 1036, CRC
The output of the intermediate result register 1032 (X1, X2, 0,
0) and the output of the AND circuit 1037 (0, 0, X3, 0)
The selection circuit 1038 selects the output (X1, X2, X3, 0) of the XOR circuit 1034 that has performed the exclusive OR operation with. Further, the transmission data (X3) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T7 in FIG. 4).

【0042】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031の出力(X1,
X2,X3,0)をCRC途中結果レジスタ1032
に、および選択回路1038の出力(X1,X2,X
3,0)を受信対応レジスタ1039に格納し、次のデ
ータ(*,*,*,X4)、および送信データ送信バイ
ト有効信号(0,0,0,1)をそれぞれ、送信データ
レジスタ1033、バイト有効レジスタ1036に格納
し、CRC途中結果レジスタ1032の出力(X1,X
2,X3,0)とAND回路1037の出力(0,0,
0,X4)との排他的論理和を演算したXOR回路10
34の出力(X1,X2,X3,X4)をCRC計算回
路1035に入力し、CRCを計算し、CRC(D1
1,D12,D13,D14)を選択回路1038で選
択する。また、送信データ(X4)を選択回路部104
を介して送信データ記憶部102に格納する(サイクル
T8)。
Next, the CRC generation unit 103
5, the output (X1,
X2, X3, 0) in the CRC intermediate result register 1032
And the outputs (X1, X2, X
3,0) is stored in the reception correspondence register 1039, and the next data (*, *, *, X4) and the transmission data transmission byte valid signal (0, 0, 0, 1) are respectively stored in the transmission data register 1033, The data is stored in the byte valid register 1036, and the output (X1, X
2, X3, 0) and the output (0, 0,
0, X4) and an XOR circuit 10 that has performed an exclusive OR operation with the XOR circuit 10
34 (X1, X2, X3, X4) are input to a CRC calculation circuit 1035, the CRC is calculated, and the CRC (D1
1, D12, D13, D14) are selected by the selection circuit 1038. Also, the transmission data (X4) is transmitted to the selection circuit unit 104.
Is stored in the transmission data storage unit 102 through the process (cycle T8).

【0043】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031の出力(D1
1,D12,D13,D14)をCRC途中結果レジス
タ1032に、および選択回路1038の出力(D1
1,D12,D13,D14)を受信対応レジスタ10
39に格納し、次のデータ(X5,X6,*,*)、お
よび送信データ送信バイト有効信号(1,1,0,0)
をそれぞれ、送信データレジスタ1033、バイト有効
レジスタ1036に格納し、CRC途中結果レジスタ1
032の出力(D11,D12,D13,D14)とA
ND回路1037の出力(X5,X6,0,0)との排
他的論理和を演算したXOR回路1034の出力(D2
1,D22,D13,D14)を選択回路1038で選
択する。また、送信データ(X5,X6)を選択回路部
104を介して送信データ記憶部102に格納する(サ
イクルT9)。
Next, the CRC generation unit 103
5, the output of the selection circuit 1031 (D1
, D12, D13, D14) in the CRC intermediate result register 1032 and the output (D1
1, D12, D13, D14) in the reception register 10
39, and the next data (X5, X6, *, *) and the transmission data transmission byte valid signal (1, 1, 0, 0)
Are stored in the transmission data register 1033 and the byte valid register 1036, respectively.
032 (D11, D12, D13, D14) and A
The output (D2) of the XOR circuit 1034 that has calculated the exclusive OR with the output (X5, X6, 0, 0) of the ND circuit 1037
, D22, D13, and D14) are selected by the selection circuit 1038. Further, the transmission data (X5, X6) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T9).

【0044】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031の出力(D2
1,D22,D13,D14)をCRC途中結果レジス
タ1032に、および選択回路1038の出力(D2
1,D22,D13,D14)を受信対応レジスタ10
39に格納し、次のデータ(*,*,X7,X8)、お
よび送信データ送信バイト有効信号(0,0,1,1)
をそれぞれ、送信データレジスタ1033、バイト有効
レジスタ1036に格納し、CRC途中結果レジスタ1
032の出力(D21,D22,D13,D14)とA
ND回路1037の出力(0,0,X7,X8)との排
他的論理和を演算したXOR回路1034の出力(D2
1,D22,D23,D24)をCRC計算回路103
5に入力し、CRCを計算し、CRC(D31,D3
2,D33,D34)を選択回路1038で選択する。
また、送信データ(X7,X8)を選択回路部104を
介して送信データ記憶部102に格納する(サイクルT
10)。
Next, the CRC generation unit 103
5, the output of the selection circuit 1031 (D2
, D22, D13, D14) in the CRC intermediate result register 1032 and the output (D2
1, D22, D13, D14) in the reception register 10
39, the next data (*, *, X7, X8) and the transmission data transmission byte valid signal (0, 0, 1, 1)
Are stored in the transmission data register 1033 and the byte valid register 1036, respectively.
032 (D21, D22, D13, D14) and A
The output (D2) of the XOR circuit 1034 that has calculated the exclusive OR with the output (0, 0, X7, X8) of the ND circuit 1037
, D22, D23, D24) by the CRC calculation circuit 103
5, CRC is calculated, and CRC (D31, D3
, D33, D34) are selected by the selection circuit 1038.
Further, the transmission data (X7, X8) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T).
10).

【0045】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031の出力(D3
1,D32,D33,D34)をCRC途中結果レジス
タ1032に、および選択回路1038の出力(D3
1,D32,D33,D34)を受信対応レジスタ10
39に格納し、次のデータ(X9,X10,*,*)、
および送信データ送信バイト有効信号(1,1,0,
0)をそれぞれ、送信データレジスタ1033、バイト
有効レジスタ1036に格納し、CRC途中結果レジス
タ1032の出力(D31,D32,D33,D34)
とAND回路1037の出力(X9,X10,0,0)
との排他的論理和を演算したXOR回路1034の出力
(D41,D42,D33,D34)を選択回路103
8で選択する。また、送信データ(X9,X10)を選
択回路部104を介して送信データ記憶部102に格納
する(サイクルT11)。
Next, the CRC generation unit 103
5, the output of the selection circuit 1031 (D3
, D32, D33, and D34) to the CRC intermediate result register 1032 and the output (D3
1, D32, D33, D34) in the reception register 10
39, and the next data (X9, X10, *, *),
And transmission data transmission byte valid signal (1, 1, 0,
0) are stored in the transmission data register 1033 and the byte valid register 1036, respectively, and the outputs (D31, D32, D33, D34) of the CRC intermediate result register 1032 are stored.
And the output of the AND circuit 1037 (X9, X10, 0, 0)
The output (D41, D42, D33, D34) of the XOR circuit 1034 which has calculated the exclusive OR with the selection circuit 103
Select with 8. Further, the transmission data (X9, X10) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T11).

【0046】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031の出力(D4
1,D42,D33,D34)をCRC途中結果レジス
タ1032に、および選択回路1038の出力(D4
1,D42,D33,D34)を受信対応レジスタ10
39に格納し、次のデータ(*,*,X11,X1
2)、および送信データ送信バイト有効信号(0,0,
1,1)をそれぞれ、送信データレジスタ1033、バ
イト有効レジスタ1036に格納し、CRC途中結果レ
ジスタ1032の出力(D41,D42,D33,D3
4)とAND回路1037の出力(0,0,X11,X
12)との排他的論理和を演算したXOR回路1034
の出力(D41,D42,D43,D44)をCRC計
算回路1035に入力し、CRCを計算し、CRC(D
51,D52,D53,D54)を選択回路1038で
選択する。また、送信データ(X11,X12)を選択
回路部104を介して送信データ記憶部102に格納す
る(サイクルT12)。
Next, the CRC generation unit 103
5, the output of the selection circuit 1031 (D4
, D42, D33, D34) to the CRC intermediate result register 1032 and the output (D4
1, D42, D33, D34) in the reception register 10
39, and the next data (*, *, X11, X1
2) and a transmission data transmission byte valid signal (0, 0,
, 1) are stored in the transmission data register 1033 and the byte valid register 1036, respectively, and the outputs (D41, D42, D33, D3) of the CRC intermediate result register 1032 are stored.
4) and the output of the AND circuit 1037 (0, 0, X11, X
XOR circuit 1034 which calculated exclusive OR with 12)
(D41, D42, D43, D44) are input to a CRC calculation circuit 1035, and the CRC is calculated.
51, D52, D53, and D54) are selected by the selection circuit 1038. The transmission data (X11, X12) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T12).

【0047】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1038の出力CRC
(D51,D52,D53,D54)を受信対応レジス
タ1039に格納し、選択回路部104を介して、選択
回路1038の出力のCRC(D51,D52,D5
3,D54)を送信データ記憶部102に格納する(サ
イクル13)。
Next, the CRC generation unit 103
5, the output CRC of the selection circuit 1038
(D51, D52, D53, D54) are stored in the reception correspondence register 1039, and the CRC (D51, D52, D5) of the output of the selection circuit 1038 is output via the selection circuit section 104.
, D54) in the transmission data storage unit 102 (cycle 13).

【0048】次に、CRC生成部103は、制御部10
5からの指示により、受信対応レジスタ103Aの出力
(C21,C12,C13,C14)を選択回路103
1を介してCRC途中結果レジスタ1032に格納し、
次のデータ(*,Y6,Y7,*)、および送信データ
送信バイト有効信号(0,1,1,0)をそれぞれ、送
信データレジスタ1033、バイト有効レジスタ103
6に格納し、CRC途中結果レジスタ1032の出力
(C21,C12,C13,C14)とAND回路10
37の出力(0,Y6,Y7,0)との排他的論理和を
演算したXOR回路1034の出力(C21,C22,
C23,C14)を選択回路1038で選択する。ま
た、送信データ(Y6,Y7)を選択回路部104を介
して送信データ記憶部102に格納する(サイクルT1
4)。
Next, the CRC generation unit 103
5, the output (C21, C12, C13, C14) of the reception correspondence register 103A is selected by the selection circuit 103.
1 is stored in the CRC intermediate result register 1032 via
The next data (*, Y6, Y7, *) and the transmission data transmission byte valid signal (0, 1, 1, 0) are sent to the transmission data register 1033 and the byte valid register 103, respectively.
6 and outputs (C21, C12, C13, C14) of the CRC intermediate result register 1032 and the AND circuit 10
37. The outputs (C21, C22, C22, C22, C22,...) Of the XOR circuit 1034 which calculated the exclusive OR with the outputs (0, Y6, Y7, 0) of the 37
C23, C14) are selected by the selection circuit 1038. Further, the transmission data (Y6, Y7) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T1).
4).

【0049】さらに、送信データ記憶部102から送信
データ(X1,X2,X3,X4)を読み出し、ネット
ワーク30を介してデータ受信装置20に送信する(サ
イクルT14)。
Further, the transmission data (X1, X2, X3, X4) is read from the transmission data storage unit 102 and transmitted to the data receiving device 20 via the network 30 (cycle T14).

【0050】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1031の出力(C2
1,C22,C23,C14)をCRC途中結果レジス
タ1032に、および選択回路1038の出力(C2
1,C22,C23,C14)を受信対応レジスタ10
3Aに格納し、次のデータ(*,*,*,Y8)、およ
び送信データ送信バイト有効信号(0,0,0,1)を
それぞれ、送信データレジスタ1033、バイト有効レ
ジスタ1036に格納し、CRC途中結果レジスタ10
32の出力(C21,C22,C23,C14)とAN
D回路1037の出力(0,0,0,Y8)との排他的
論理和を演算したXOR回路1034の出力(C21,
C22,C23,C24)をCRC計算回路1035に
入力し、CRCを計算し、CRC(C31,C32,C
33,C34)を選択回路1038で選択する。また、
送信データ(Y8)を選択回路部104を介して送信デ
ータ記憶部102に格納する(サイクルT15)。
Next, the CRC generation unit 103
5, the output of the selection circuit 1031 (C2
, C22, C23, C14) in the CRC intermediate result register 1032 and the output (C2
1, C22, C23, C14) in the reception register 10
3A, the next data (*, *, *, Y8) and the transmission data transmission byte valid signal (0, 0, 0, 1) are stored in the transmission data register 1033 and the byte valid register 1036, respectively. CRC intermediate result register 10
32 outputs (C21, C22, C23, C14) and AN
The output (C21, X21) of the XOR circuit 1034 obtained by calculating the exclusive OR with the output (0, 0, 0, Y8) of the D circuit 1037
C22, C23, and C24) are input to a CRC calculation circuit 1035, the CRC is calculated, and the CRC (C31, C32, C24) is calculated.
33, C34) are selected by the selection circuit 1038. Also,
The transmission data (Y8) is stored in the transmission data storage unit 102 via the selection circuit unit 104 (cycle T15).

【0051】さらに、送信データ記憶部102から送信
データ(X5,X6,X7,X8)を読み出し、ネット
ワーク30を介してデータ受信装置20に送信する(サ
イクルT15)。
Further, the transmission data (X5, X6, X7, X8) is read from the transmission data storage unit 102 and transmitted to the data receiving device 20 via the network 30 (cycle T15).

【0052】次に、CRC生成部103は、制御部10
5からの指示により、選択回路1038の出力CRC
(C31,C32,C33,C34)を受信対応レジス
タ1039Aに格納し、選択回路部104を介して、選
択回路1038の出力のCRC(C31,C32,C3
3,C34)を送信データ記憶部102に格納する(サ
イクル16)。
Next, the CRC generation unit 103
5, the output CRC of the selection circuit 1038
(C31, C32, C33, C34) are stored in the reception correspondence register 1039A, and the CRC (C31, C32, C3
3, C34) is stored in the transmission data storage unit 102 (cycle 16).

【0053】さらに、送信データ記憶部102から送信
データ(X9,X10,X11,X12)を読み出し、
ネットワーク30を介してデータ受信装置20に送信す
る(図4サイクルT16)。
Further, the transmission data (X9, X10, X11, X12) is read from the transmission data storage unit 102,
The data is transmitted to the data receiving device 20 via the network 30 (cycle T16 in FIG. 4).

【0054】次に、CRC生成部103は、制御部10
5からの指示により、送信データ記憶部102からCR
C(D51,D52,D53,D54)を読み出し、ネ
ットワーク30を介してデータ受信装置20に送信する
(サイクルT17)。
Next, the CRC generation unit 103
5 from the transmission data storage unit 102
C (D51, D52, D53, D54) is read and transmitted to the data receiving device 20 via the network 30 (cycle T17).

【0055】次に、CRC生成部103は、制御部10
5からの指示により、送信データ記憶部102から送信
データ(Y1,Y2,Y3,Y4)を読み出し、ネット
ワーク30を介してデータ受信装置20に送信する(サ
イクルT18)。
Next, the CRC generation unit 103
In response to the instruction from 5, the transmission data (Y1, Y2, Y3, Y4) is read from the transmission data storage unit 102 and transmitted to the data receiving device 20 via the network 30 (cycle T18).

【0056】次に、CRC生成部103は、制御部10
5からの指示により、送信データ記憶部102から送信
データ(Y5,Y6,Y7,Y8)を読み出し、ネット
ワーク30を介してデータ受信装置20に送信する(サ
イクルT19)。
Next, the CRC generation unit 103
In response to the instruction from 5, the transmission data (Y5, Y6, Y7, Y8) is read from the transmission data storage unit 102 and transmitted to the data receiving device 20 via the network 30 (cycle T19).

【0057】次に、CRC生成部103は、制御部10
5からの指示により、送信データ記憶部102からCR
C(C31,C32,C33,C34)を読み出し、ネ
ットワーク30を介してデータ受信装置20に送信する
(サイクルT20)。
Next, the CRC generation unit 103
5 from the transmission data storage unit 102
C (C31, C32, C33, C34) is read and transmitted to the data receiving device 20 via the network 30 (cycle T20).

【0058】次に、データ受信装置20の動作について
説明する。図5は、データ受信装置20の動作を示すタ
イムチャートである。データ受信装置20は、データ送
信装置10からネットワーク30を介して送信された送
信データ(X1,X2,X3,X4)、(X5,X6,
X7,X8)、(X9,X10,X11,X12)、C
RC(D51,D52,D53,D54)を受信する
と、図3に示すように受信データとして受信データ記憶
部206に詰めて格納する。また、主記憶部201に
は、図3に示すように(X1,X2)、(X3,X
4)、(X5,X6,X7,X8)、(X9,X1
0)、(X11,X12)のように分割して格納するよ
うに制御される。
Next, the operation of the data receiving device 20 will be described. FIG. 5 is a time chart showing the operation of the data receiving device 20. The data receiving device 20 transmits the transmission data (X1, X2, X3, X4), (X5, X6,
X7, X8), (X9, X10, X11, X12), C
When the RC (D51, D52, D53, D54) is received, it is packed and stored in the received data storage unit 206 as received data as shown in FIG. The main storage unit 201 stores (X1, X2), (X3, X
4), (X5, X6, X7, X8), (X9, X1
0) and (X11, X12).

【0059】まず、データ受信装置20のCRC生成部
203は、制御部205からの指示により選択回路10
31を介してCRC初期値(すべて“0”の値)をCR
C途中結果レジスタ1032に格納し、受信データ記憶
部206から受信データ(X1,X2,X3,X4)を
読み出し、同時に制御部205から対応する受信データ
送信バイト有効信号(1,1,0,0)をそれぞれ、送
信データレジスタ1033、バイト有効レジスタ103
6に格納し、CRC途中結果レジスタ1032の出力
(0,0,0,0)とAND回路1037の出力(X
1,X2,0,0)との排他的論理和を演算したXOR
回路1034の出力(X1,X2,0,0)を選択回路
1038で選択する。また、送信データ(X1,X2)
を主記憶部201に格納する(図5サイクル40)。
First, the CRC generating unit 203 of the data receiving device 20 selects the selecting circuit 10 according to an instruction from the control unit 205.
31 to the CRC initial value (all "0" values)
C, the received data (X1, X2, X3, X4) is read from the received data storage unit 206, and at the same time, the corresponding received data transmission byte valid signal (1, 1, 0, 0) is sent from the control unit 205. ) Are the transmission data register 1033 and the byte valid register 103, respectively.
6 and the output (0, 0, 0, 0) of the CRC intermediate result register 1032 and the output (X
XOR calculated by exclusive OR with (1, X2,0,0)
The output (X1, X2, 0, 0) of the circuit 1034 is selected by the selection circuit 1038. Also, transmission data (X1, X2)
Is stored in the main storage unit 201 (cycle 40 in FIG. 5).

【0060】次に、CRC生成部203は、制御部20
5からの指示により、選択回路1038の出力(X1,
X2,0,0)を選択回路1031を介して、CRC途
中結果レジスタ1032に格納し、次のデータ(X1,
X2,X3,X4)、および受信データ送信バイト有効
信号(0,0,1,1)をそれぞれ、送信データレジス
タ1033、バイト有効レジスタ1036に格納し、C
RC途中結果レジスタ1032の出力(X1,X2,
0,0)とAND回路1037の出力(0,0,X3,
X4)との排他的論理和を演算したXOR回路1034
の出力(X1,X2,X3,X4)をCRC計算回路1
035に入力し、CRCを計算し、CRC(D11,D
12,D13,D14)を選択回路1038で選択す
る。また、受信データ(X3,X4)を主記憶部201
に格納する(図5サイクルT41)。
Next, the CRC generation section 203
5, the output (X1,
X2, 0, 0) is stored in the CRC intermediate result register 1032 via the selection circuit 1031 and the next data (X1, 0, 0) is stored.
X2, X3, X4) and the received data transmission byte valid signal (0, 0, 1, 1) are stored in the transmission data register 1033 and the byte valid register 1036, respectively.
The output (X1, X2,
0, 0) and the output (0, 0, X3,
XOR circuit 1034 which calculated exclusive OR with X4)
Output (X1, X2, X3, X4) of the CRC calculation circuit 1
035, CRC is calculated, and CRC (D11, D11
12, D13, D14) are selected by the selection circuit 1038. The received data (X3, X4) is stored in the main storage unit 201.
(Cycle T41 in FIG. 5).

【0061】次に、CRC生成部203は、制御部20
5からの指示により、選択回路1038の出力(D1
1,D12,D13,D14)を選択回路1031を介
して、CRC途中結果レジスタ1032に格納し、次の
データ(X5,X6,X7,X8)、および受信データ
送信バイト有効信号(1,1,1,1)をそれぞれ、送
信データレジスタ1033、バイト有効レジスタ103
6に格納し、CRC途中結果レジスタ1032の出力
(D11,D12,D13,D14)とAND回路10
37の出力(X5,X6,X7,X8)との排他的論理
和を演算したXOR回路1034の出力(D21,D2
2,D23,D24)をCRC計算回路1035に入力
し、CRCを計算し、CRC(D31,D32,D3
3,D34)を選択回路1038で選択する。また、受
信データ(X5,X6,X7,X8)を主記憶部201
に格納する(図5サイクルT42)。
Next, the CRC generation section 203
5, the output of the selection circuit 1038 (D1
, D12, D13, D14) are stored in the CRC intermediate result register 1032 via the selection circuit 1031, and the next data (X5, X6, X7, X8) and the received data transmission byte valid signal (1, 1, 1, 1) are respectively assigned to the transmission data register 1033 and the byte valid register 103.
6 and outputs (D11, D12, D13, D14) of the CRC intermediate result register 1032 and the AND circuit 10
37 output (X5, X6, X7, X8) and the output (D21, D2
, D23, D24) are input to a CRC calculation circuit 1035, and the CRC is calculated, and the CRC (D31, D32, D3) is calculated.
3, D34) is selected by the selection circuit 1038. The received data (X5, X6, X7, X8) is stored in the main storage unit 201.
(Cycle T42 in FIG. 5).

【0062】次に、CRC生成部203は、制御部20
5からの指示により、選択回路1038の出力(D3
1,D32,D33,D34)を選択回路1031を介
して、CRC途中結果レジスタ1032に格納し、次の
データ(X9,X10,X11,X12)、および受信
データ送信バイト有効信号(1,1,0,0)をそれぞ
れ、送信データレジスタ1033、バイト有効レジスタ
1036に格納し、CRC途中結果レジスタ1032の
出力(D31,D32,D33,D34)とAND回路
1037の出力(X9,X10,0,0)との排他的論
理和を演算したXOR回路1034の出力(D41,D
42,D33,D34)を選択回路1038で選択す
る。また、受信データ(X9,X10)を主記憶部20
1に格納する(図5サイクルT43)。
Next, the CRC generation section 203
5, the output of the selection circuit 1038 (D3
, D32, D33, and D34) are stored in the CRC intermediate result register 1032 via the selection circuit 1031 and the next data (X9, X10, X11, X12) and the received data transmission byte valid signal (1, 1, (0, 0) are stored in the transmission data register 1033 and the byte valid register 1036, respectively, and the outputs (D31, D32, D33, D34) of the CRC intermediate result register 1032 and the outputs (X9, X10, 0, 0) of the AND circuit 1037 are stored. ) And the output of the XOR circuit 1034 (D41, D41
42, D33, and D34) are selected by the selection circuit 1038. The received data (X9, X10) is stored in the main storage unit 20.
1 (cycle T43 in FIG. 5).

【0063】次に、CRC生成部203は、制御部20
5からの指示により、選択回路1038の出力(D4
1,D42,D33,D34)を選択回路1031を介
して、CRC途中結果レジスタ1032に格納し、次の
データ(X9,X10,X11,X12)、および受信
データ送信バイト有効信号(0,0,1,1)をそれぞ
れ、送信データレジスタ1033、バイト有効レジスタ
1036に格納し、CRC途中結果レジスタ1032の
出力(D41,D42,D33,D34)とAND回路
1037の出力(0,0,X11,X12)との排他的
論理和を演算したXOR回路1034の出力(D41,
D42,D43,D44)をCRC計算回路1035に
入力し、CRCを計算し、CRC(D51,D52,D
53,D54)を選択回路1038で選択する。また、
受信データ(X11,X12)を主記憶部201に格納
する(図5サイクルT44)。
Next, the CRC generation unit 203
5, the output of the selection circuit 1038 (D4
, D42, D33, D34) are stored in the CRC intermediate result register 1032 via the selection circuit 1031, and the next data (X9, X10, X11, X12) and the received data transmission byte valid signal (0, 0, 1, 1) are stored in the transmission data register 1033 and the byte valid register 1036, respectively, and the outputs (D41, D42, D33, D34) of the CRC intermediate result register 1032 and the outputs (0, 0, X11, X12) of the AND circuit 1037 are stored. ) And the output of the XOR circuit 1034 (D41,
D42, D43, and D44) are input to a CRC calculation circuit 1035, the CRC is calculated, and the CRC (D51, D52, D
53, D54) are selected by the selection circuit 1038. Also,
The received data (X11, X12) is stored in the main storage unit 201 (cycle T44 in FIG. 5).

【0064】次に、データ受信装置20は、CRC(D
51,D52,D53,D54)をCRC途中結果レジ
スタ1032に格納し、CRC生成部203の選択回路
1038の出力CRC(D51,D52,D53,D5
4)と受信データ記憶部206からのCRC(D51,
D52,D53,D54)とを比較回路部207で比較
し、比較結果が一致すれば、送受信は正常に行われたと
判断する(図5サイクルT45)。
Next, the data receiving device 20 checks the CRC (D
51, D52, D53, and D54) are stored in the CRC intermediate register 1032, and the output CRCs (D51, D52, D53, and D5) of the selection circuit 1038 of the CRC generation unit 203 are stored.
4) and the CRC (D51,
D52, D53, and D54) are compared by the comparison circuit unit 207, and if the comparison results match, it is determined that transmission and reception have been normally performed (cycle T45 in FIG. 5).

【0065】同様に、データ受信装置40では、データ
送信装置10からネットワーク30を介して送信された
送信データ(Y1,Y2,Y3,Y4)、(Y5,Y
6,Y7,Y8)、CRC(C31,C32,C33,
C34)を受信し、データ受信装置40で生成したCR
Cとデータ送信装置10から受信したCRCとを比較
し、送受信の正常性をチェックする。
Similarly, in the data receiving device 40, the transmission data (Y1, Y2, Y3, Y4), (Y5, Y
6, Y7, Y8), CRC (C31, C32, C33,
C34) and the CR generated by the data receiving device 40
C is compared with the CRC received from the data transmission device 10 to check the normality of transmission and reception.

【0066】次に、本発明の第2の実施の形態について
図面を参照して詳細に説明する。図6は、本発明の第2
の実施の形態を示すブロック図である。本発明の第2の
実施の形態は、図1に示す本発明の第1の実施の形態と
同一の構成を持ち、CRC生成部103、CRC生成部
203が異なっている。
Next, a second embodiment of the present invention will be described in detail with reference to the drawings. FIG. 6 shows a second embodiment of the present invention.
It is a block diagram showing an embodiment. The second embodiment of the present invention has the same configuration as that of the first embodiment of the present invention shown in FIG. 1 except that the CRC generation unit 103 and the CRC generation unit 203 are different.

【0067】図6を参照すると、本発明の第2の実施の
形態のCRC生成部103、CRC生成部203は、選
択回路1031と、CRC途中結果レジスタ1032
と、送信データレジスタ1033と、排他的論理和の機
能を持つXOR回路1034、XOR回路2034と、
CRC計算回路1035、CRC計算回路2035と、
バイト有効レジスタ1036と、論理積の機能を持つA
ND回路1037、AND回路2037と、選択回路1
038と、選択回路2038と、受信対応レジスタ10
39と、受信対応レジスタ103Aとから構成される。
Referring to FIG. 6, a CRC generation unit 103 and a CRC generation unit 203 according to the second embodiment of the present invention include a selection circuit 1031 and a CRC intermediate result register 1032.
A transmission data register 1033, an XOR circuit 1034 having an exclusive OR function, an XOR circuit 2034,
A CRC calculation circuit 1035, a CRC calculation circuit 2035,
Byte valid register 1036 and A having a logical product function
ND circuit 1037, AND circuit 2037, and selection circuit 1
038, the selection circuit 2038, and the reception correspondence register 10
39 and a reception correspondence register 103A.

【0068】ここで、送信データレジスタ1033、バ
イト有効レジスタ1036は、本発明の第2の実施の形
態の送信データレジスタ1033、バイト有効レジスタ
1036に対して2倍の大きさ(たとえば、8[バイ
ト]、8[ビット])を持つ。AND回路1037は、
バイト有効レジスタ1036内の前4ビットと送信デー
タレジスタ1033内の前4バイトとの論理積を、AN
D回路2037は、バイト有効レジスタ1036内の後
ろ4ビットと送信データレジスタ1033内の後ろ4バ
イトとの論理積を算出する。
Here, the transmission data register 1033 and the byte valid register 1036 are twice as large as the transmission data register 1033 and the byte valid register 1036 according to the second embodiment of the present invention (for example, 8 [bytes]). ], 8 [bits]). AND circuit 1037
The logical product of the preceding 4 bits in the byte valid register 1036 and the preceding 4 bytes in the transmission data register 1033 is expressed as AN
The D circuit 2037 calculates the logical product of the last 4 bits in the byte valid register 1036 and the last 4 bytes in the transmission data register 1033.

【0069】XOR回路1034は、途中結果レジスタ
1032の出力とAND回路1037の出力との排他的
論理和を算出し、CRC計算回路1035は、XOR回
路1034の出力からCRCを算出し、選択回路103
8は、バイト有効レジスタ1036内の前4ビットの最
終ビットに従ってXOR回路1034、CRC計算回路
1035のいずれかを選択する。
XOR circuit 1034 calculates the exclusive OR of the output of intermediate result register 1032 and the output of AND circuit 1037, and CRC calculation circuit 1035 calculates the CRC from the output of XOR circuit 1034, and
8 selects one of the XOR circuit 1034 and the CRC calculation circuit 1035 according to the last four bits of the preceding four bits in the byte valid register 1036.

【0070】XOR回路2034は、選択回路1038
の出力とAND回路2037の出力との排他的論理和を
算出し、CRC計算回路2035は、XOR回路203
4の出力からCRCを算出し、選択回路2038は、バ
イト有効レジスタ1036内の後ろ4ビットの最終ビッ
トに従ってXOR回路2034、CRC計算回路203
5のいずれかを選択する。
The XOR circuit 2034 includes a selection circuit 1038
The exclusive OR of the output of the AND circuit 2037 and the output of the AND circuit 2037 is calculated.
Then, the selection circuit 2038 calculates the CRC from the output of the XOR circuit 2034 and the CRC calculation circuit 203 according to the last bit of the last 4 bits in the byte valid register 1036.
Select one of 5

【0071】受信対応レジスタ1039と、受信対応レ
ジスタ103Aは、選択回路2038の出力をそれぞれ
データ受信装置対応に保持する。選択回路1031は、
受信対応レジスタ1039、受信対応レジスタ103
A、選択回路2038の出力、制御部105、制御部2
05からのCRC初期値のいずれかを選択し、CRC途
中結果レジスタ1032は、選択回路1031の出力を
格納する。
The reception correspondence register 1039 and the reception correspondence register 103A hold the output of the selection circuit 2038 for each data reception device. The selection circuit 1031
Reception correspondence register 1039, reception correspondence register 103
A, output of selection circuit 2038, control unit 105, control unit 2
05, the CRC intermediate value register 1032 stores the output of the selection circuit 1031.

【0072】以上は、送信データレジスタ1033、バ
イト有効レジスタ1036は、2倍の大きさであるとし
たが、整数倍の大きさであってもかまわない。
Although the transmission data register 1033 and the byte valid register 1036 have been described as being twice as large as described above, the transmission data register 1033 and the byte valid register 1036 may have integer times as large.

【0073】本発明の第2の実施の形態においては、本
発明の第1の実施の形態に比べて、主記憶部101から
の読み出し、または、主記憶部201への書き込みが、
最大2倍となり、それに伴い、CRCの算出も最大2倍
となり、性能が向上する。
In the second embodiment of the present invention, reading from the main storage unit 101 or writing to the main storage unit 201 is different from that in the first embodiment of the present invention.
The maximum is twice as large, and accordingly, the calculation of the CRC is also doubled at the maximum, and the performance is improved.

【0074】以上は、データ受信装置20、データ受信
装置40の2台の場合について説明したが、3台以上で
も、同様に実現可能である。
Although the above description has been made of the case of two data receiving devices 20 and 40, the same can be realized with three or more data receiving devices.

【0075】[0075]

【発明の効果】本発明の第1の効果は、データ送信装置
において、主記憶に格納されているバイト単位の離散デ
ータを送信データ記憶部に格納するのと平行して、効率
よくCRCを生成できることである。
A first effect of the present invention is that, in a data transmitting apparatus, a CRC is efficiently generated in parallel with storing byte-based discrete data stored in a main memory in a transmission data storage unit. What you can do.

【0076】その理由は、主記憶から一度に読み出せる
送信すべきバイトデータを含むデータに対して、送信バ
イト有効信号にしたがいAND回路で送信すべきバイト
データのみを有効とし、主記憶から一度に読み出せるデ
ータの最終バイトが無効な場合には、CRCを生成しな
いように制御するからである。
The reason is that, for data including byte data to be transmitted which can be read at once from the main memory, only the byte data to be transmitted by the AND circuit is made valid according to the transmission byte valid signal, This is because if the last byte of readable data is invalid, control is performed so as not to generate a CRC.

【0077】本発明の第2の効果は、データ受信装置に
おいて、受信データを主記憶に離散データとして格納す
るのと平行して、CRCの比較を行い、効率よく受信デ
ータの正常性がチェックできることである。
The second effect of the present invention is that, in parallel with storing the received data as discrete data in the main memory, the data receiving apparatus can compare the CRC and efficiently check the normality of the received data. It is.

【0078】その理由は、受信バイト有効信号にしたが
いAND回路で主記憶に一度に書き込めるバイトデータ
のみを有効とし、一度に書き込めるデータの最終バイト
が無効な場合には、CRCを生成しないように制御する
からである。
The reason is that according to the received byte valid signal, only the byte data that can be written to the main memory at once by the AND circuit is made valid, and if the last byte of the data that can be written at one time is invalid, the CRC is not generated. Because you do.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の第1の実施の形態を示すブロック図で
ある。
FIG. 1 is a block diagram showing a first embodiment of the present invention.

【図2】図1のCRC生成部を示す詳細ブロック図であ
る。
FIG. 2 is a detailed block diagram illustrating a CRC generator of FIG. 1;

【図3】送信データ、受信データの配列を示す説明図で
ある。
FIG. 3 is an explanatory diagram showing an array of transmission data and reception data.

【図4】本発明の第1の実施の形態の動作を示すタイム
チャートである。
FIG. 4 is a time chart illustrating the operation of the first exemplary embodiment of the present invention.

【図5】本発明の第1の実施の形態の動作を示すタイム
チャートである。
FIG. 5 is a time chart illustrating an operation of the first exemplary embodiment of the present invention.

【図6】本発明の第2の実施の形態を示すブロック図で
ある。
FIG. 6 is a block diagram showing a second embodiment of the present invention.

【符号の説明】[Explanation of symbols]

10 データ送信装置 20 データ受信装置 30 ネットワーク 40 データ受信装置 101 主記憶部 102 送信データ記憶部 103 CRC生成部 104 選択回路部 105 制御部 201 主記憶部 203 CRC生成部 205 制御部 206 受信データ記憶部 207 比較回路部 1031 選択回路 1032 CRC途中結果レジスタ 1033 送信データレジスタ 1034 XOR回路 1035 CRC計算回路 1036 バイト有効レジスタ 1037 AND回路 1038 選択回路 1039 受信対応レジスタ 103A 受信対応レジスタ 2034 XOR回路 2035 CRC計算回路 2037 AND回路 2038 選択回路 Reference Signs List 10 data transmission device 20 data reception device 30 network 40 data reception device 101 main storage unit 102 transmission data storage unit 103 CRC generation unit 104 selection circuit unit 105 control unit 201 main storage unit 203 CRC generation unit 205 control unit 206 reception data storage unit 207 Comparison circuit section 1031 Selection circuit 1032 CRC intermediate result register 1033 Transmission data register 1034 XOR circuit 1035 CRC calculation circuit 1036 Byte valid register 1037 AND circuit 1038 Selection circuit 1039 Reception correspondence register 103A Reception correspondence register 2034 XOR circuit 2035 CRC calculation circuit 2037 AND Circuit 2038 Selection circuit

Claims (8)

【特許請求の範囲】[Claims] 【請求項1】(a)送信すべき有効バイトデータを含む
送信データを格納する送信データレジスタと、(b)前
記送信データの各バイトの有効・無効を示すバイト単位
のバイト有効信号を格納するバイト有効レジスタと、
(c)前記送信データレジスタの出力と、前記バイト有
効レジスタの出力との論理積を算出するAND回路と、
(d)CRCの途中結果または初期値を格納するCRC
途中結果レジスタと、(e)前記CRC途中結果レジス
タの出力と前記AND回路の出力との排他的論理和を作
成するXOR回路と、(f)前記XOR回路の出力から
CRCを生成するCRC計算回路と、(g)前記バイト
有効レジスタの最終バイトに対するバイト有効信号が有
効を示す場合には前記CRC計算回路の出力を選択し、
最終バイトに対するバイト有効信号が無効を示す場合に
は前記XOR回路の出力を選択し、CRCの途中結果ま
たは最終結果として出力する第1の選択回路と、(h)
前記第1の選択回路の出力をデータ受信装置対応に保持
する1以上の受信対応レジスタと、(i)前記第1の選
択回路の出力のCRCの途中結果、前記1以上の受信対
応レジスタの出力のCRCの途中結果、CRCの初期値
のいずれかを選択し、前記CRC途中結果レジスタに出
力する第2の選択回路と、を有することを特徴とするC
RC生成部。
1. A transmission data register for storing transmission data including valid byte data to be transmitted, and (b) a byte valid signal in a byte unit indicating validity / invalidity of each byte of the transmission data. A byte valid register;
(C) an AND circuit for calculating the logical product of the output of the transmission data register and the output of the byte valid register;
(D) CRC for storing intermediate results or initial values of CRC
An intermediate result register, (e) an XOR circuit for generating an exclusive OR of an output of the CRC intermediate result register and an output of the AND circuit, and (f) a CRC calculation circuit for generating a CRC from the output of the XOR circuit. And (g) selecting the output of the CRC calculation circuit when the byte valid signal for the last byte of the byte valid register indicates valid,
(H) a first selection circuit for selecting the output of the XOR circuit when the byte valid signal for the last byte indicates invalid, and outputting the result as an intermediate or final result of the CRC;
One or more reception correspondence registers for holding the output of the first selection circuit corresponding to the data receiving device; and (i) an intermediate result of the CRC of the output of the first selection circuit, the output of the one or more reception correspondence registers. A second selecting circuit for selecting any of the CRC intermediate values and the initial value of the CRC and outputting the selected value to the CRC intermediate result register.
RC generator.
【請求項2】(a)請求項1記載の前記CRC生成部を
有し、前記CRC生成部により生成したCRCを送信デ
ータに付加して送信するデータ送信装置と、(b)前記
データ送信装置から送信された送信データおよびCRC
を転送するネットワークと、(c)請求項1記載の前記
CRC生成部を有し、前記ネットワークを介して転送さ
れた前記データ送信装置からの送信データを受信データ
として、かつCRCを受信し、受信データから前記CR
C生成部により生成したCRCと、受信したCRCとを
比較し、受信データの正常性をチェックする1以上のデ
ータ受信装置と、を有することを特徴とするCRC計算
装置。
2. A data transmitting apparatus having the CRC generating section according to claim 1, wherein the data transmitting apparatus adds a CRC generated by the CRC generating section to transmission data and transmits the data, and (b) the data transmitting apparatus. Data and CRC transmitted from
And (c) having the CRC generating unit according to claim 1, receiving, as reception data, transmission data from the data transmission device transferred via the network, and receiving a CRC. From the data, the CR
A CRC calculation device comprising: at least one data reception device that compares a CRC generated by a C generation unit with a received CRC and checks the normality of received data.
【請求項3】 離散するバイト単位の送信データを格納
する主記憶部と、送信データ記憶部と、請求項1記載の
前記CRC生成部と、選択回路部と、制御部とを備え、
(a)前記主記憶部から1度に読み出された有効な送信
データを含むデータを前記選択回路を介して、順次、有
効なデータのみを前記制御部の指示にしたがい格納し、
次に前記CRC生成部からのCRCを格納する前記送信
データ記憶部と、(b)前記主記憶部から1度に読み出
された有効な送信データを含むデータに対し前記制御部
からのバイト有効信号にしたがい、CRCを生成する前
記CRC生成部と、(c)前記制御部からの指示にした
がい前記主記憶からのデータ、前記CRC生成部からの
CRCのいずれかを選択する前記選択回路部と、(d)
前記送信データ記憶部から送信データおよびCRCを前
記ネットワークを介して前記1以上の前記データ受信装
置に送信する前記制御部と、を備える前記データ送信装
置を有することを特徴とする請求項2記載のCRC計算
装置。
3. A main storage unit for storing transmission data in discrete byte units, a transmission data storage unit, the CRC generation unit according to claim 1, a selection circuit unit, and a control unit,
(A) data including valid transmission data read at once from the main storage unit is sequentially stored via the selection circuit according to an instruction of the control unit, and only valid data is stored;
Next, the transmission data storage unit for storing a CRC from the CRC generation unit, and (b) byte validity data from the control unit for data including valid transmission data once read from the main storage unit. A CRC generating unit that generates a CRC according to a signal; and (c) the selecting circuit unit that selects one of data from the main memory and a CRC from the CRC generating unit according to an instruction from the control unit. , (D)
3. The data transmission device according to claim 2, further comprising: the control unit configured to transmit transmission data and a CRC from the transmission data storage unit to the one or more data reception devices via the network. CRC calculator.
【請求項4】 離散するバイト単位の受信データを格納
する主記憶部と、受信データ記憶部と、請求項1記載の
前記CRC生成部と、比較回路部と、制御部とを備え、
(a)前記データ送信装置から前記ネットワークを介し
て転送された送信データを受信データとして格納し、か
つ前記データ送信装置から前記ネットワークを介して転
送されたCRCを格納する前記受信データ記憶部と、
(b)前記受信データ記憶部から前記主記憶部に1度に
書き込むデータを含むデータに対し前記制御部からのバ
イト有効信号にしたがい、CRCを生成する前記CRC
生成部と、(c)前記制御部からの指示にしたがい、前
記CRC生成部からのCRCと前記受信データ記憶部か
らのCRCとの比較を行う前記比較回路部と、(d)前
記比較回路部における比較結果が一致すれば、受信デー
タが正常であると判断する前記制御部と、を備える前記
データ受信装置を有することを特徴とする請求項2また
は3記載のCRC計算装置。
4. A main storage unit for storing reception data in discrete bytes, a reception data storage unit, the CRC generation unit according to claim 1, a comparison circuit unit, and a control unit,
(A) the reception data storage unit that stores transmission data transferred from the data transmission device via the network as reception data, and stores a CRC transferred from the data transmission device via the network;
(B) The CRC for generating a CRC according to a byte valid signal from the control unit with respect to data including data to be written at once from the reception data storage unit to the main storage unit.
A generation unit; (c) a comparison circuit unit that compares a CRC from the CRC generation unit with a CRC from the received data storage unit in accordance with an instruction from the control unit; and (d) the comparison circuit unit. 4. The CRC calculation device according to claim 2, further comprising: the data receiving device including: the control unit that determines that the received data is normal if the comparison result in the above is identical.
【請求項5】主記憶部から1度に読み出すデータのバイ
ト長が前記送信データ記憶部に1度に書き込めるデータ
のバイト長の整数倍である場合に、前記AND回路、前
記XOR回路、前記CRC計算回路、前記第1の選択回
路を整数倍分有することを特徴とする請求項1記載のC
RC生成部。
5. When the byte length of data read at one time from the main storage unit is an integral multiple of the byte length of data that can be written to the transmission data storage unit at one time, the AND circuit, the XOR circuit, and the CRC 2. The circuit according to claim 1, wherein the calculation circuit and the first selection circuit have an integral multiple.
RC generator.
【請求項6】(a)請求項5記載の前記CRC生成部を
有し、前記CRC生成部により生成したCRCを送信デ
ータに付加して送信するデータ送信装置と、(b)前記
データ送信装置から送信された送信データおよびCRC
を転送するネットワークと、(c)請求項5記載の前記
CRC生成部を有し、前記ネットワークを介して転送さ
れた前記データ送信装置からの送信データを受信データ
として、かつCRCを受信し、受信データから前記CR
C生成部により生成したCRCと、受信したCRCとを
比較し、受信データの正常性をチェックする1以上のデ
ータ受信装置と、を有することを特徴とするCRC計算
装置。
6. A data transmission device having the CRC generation unit according to claim 5, wherein the data transmission device adds the CRC generated by the CRC generation unit to transmission data and transmits the data. (B) The data transmission device. Data and CRC transmitted from
And (c) the CRC generation unit according to claim 5, wherein the transmission data transmitted from the data transmission device via the network is received as data, and a CRC is received. From the data, the CR
A CRC calculation device comprising: at least one data reception device that compares a CRC generated by a C generation unit with a received CRC and checks the normality of received data.
【請求項7】 離散するバイト単位の送信データを格納
する主記憶部と、送信データ記憶部と、請求項5記載の
前記CRC生成部と、選択回路部と、制御部とを備え、
(a)前記主記憶部から1度に読み出された有効な送信
データを含むデータを前記選択回路を介して、順次、有
効なデータのみを前記制御部の指示にしたがい格納し、
次に前記CRC生成部からのCRCを格納する前記送信
データ記憶部と、(b)前記主記憶部から1度に読み出
された有効な送信データを含むデータに対し前記制御部
からのバイト有効信号にしたがい、CRCを生成する前
記CRC生成部と、(c)前記制御部からの指示にした
がい前記主記憶からのデータ、前記CRC生成部からの
CRCのいずれかを選択する前記選択回路部と、(d)
前記送信データ記憶部から送信データおよびCRCを前
記ネットワークを介して前記1以上の前記データ受信装
置に送信する前記制御部と、を備える前記データ送信装
置を有することを特徴とする請求項6記載のCRC計算
装置。
7. A main storage unit for storing discrete transmission data in byte units, a transmission data storage unit, the CRC generation unit according to claim 5, a selection circuit unit, and a control unit,
(A) data including valid transmission data read at once from the main storage unit is sequentially stored via the selection circuit according to an instruction of the control unit, and only valid data is stored;
Next, the transmission data storage unit for storing a CRC from the CRC generation unit, and (b) byte validity data from the control unit for data including valid transmission data once read from the main storage unit. A CRC generating unit that generates a CRC according to a signal; and (c) the selecting circuit unit that selects one of data from the main memory and a CRC from the CRC generating unit according to an instruction from the control unit. , (D)
7. The data transmission device according to claim 6, further comprising: the control unit configured to transmit transmission data and a CRC from the transmission data storage unit to the one or more data reception devices via the network. CRC calculator.
【請求項8】 離散するバイト単位の受信データを格納
する主記憶部と、受信データ記憶部と、請求項5記載の
前記CRC生成部と、比較回路部と、制御部とを備え、
(a)前記データ送信装置から前記ネットワークを介し
て転送された送信データを受信データとして格納し、か
つ前記データ送信装置から前記ネットワークを介して転
送されたCRCを格納する前記受信データ記憶部と、
(b)前記受信データ記憶部から前記主記憶部に1度に
書き込むデータを含むデータに対し前記制御部からのバ
イト有効信号にしたがい、CRCを生成する前記CRC
生成部と、(c)前記制御部からの指示にしたがい、前
記CRC生成部からのCRCと前記受信データ記憶部か
らのCRCとの比較を行う前記比較回路部と、(d)前
記比較回路部における比較結果が一致すれば、受信デー
タが正常であると判断する前記制御部と、を備える前記
データ受信装置を有することを特徴とする請求項6また
は7記載のCRC計算装置。
8. A main storage unit for storing discrete reception data in byte units, a reception data storage unit, the CRC generation unit according to claim 5, a comparison circuit unit, and a control unit,
(A) the reception data storage unit that stores transmission data transferred from the data transmission device via the network as reception data, and stores a CRC transferred from the data transmission device via the network;
(B) The CRC for generating a CRC according to a byte valid signal from the control unit with respect to data including data to be written at once from the reception data storage unit to the main storage unit.
A generation unit; (c) a comparison circuit unit that compares a CRC from the CRC generation unit with a CRC from the received data storage unit in accordance with an instruction from the control unit; and (d) the comparison circuit unit. 8. The CRC calculation device according to claim 6, further comprising: the data reception device including: the control unit that determines that the received data is normal if the comparison result in the above is matched.
JP22944999A 1999-08-13 1999-08-13 CRC generation unit and CRC calculation device Expired - Fee Related JP3302950B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22944999A JP3302950B2 (en) 1999-08-13 1999-08-13 CRC generation unit and CRC calculation device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22944999A JP3302950B2 (en) 1999-08-13 1999-08-13 CRC generation unit and CRC calculation device

Publications (2)

Publication Number Publication Date
JP2001053621A true JP2001053621A (en) 2001-02-23
JP3302950B2 JP3302950B2 (en) 2002-07-15

Family

ID=16892391

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22944999A Expired - Fee Related JP3302950B2 (en) 1999-08-13 1999-08-13 CRC generation unit and CRC calculation device

Country Status (1)

Country Link
JP (1) JP3302950B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005114848A1 (en) * 2004-05-18 2005-12-01 Ricardo Uk Limited Data processing
CN100418312C (en) * 2005-06-30 2008-09-10 英业达股份有限公司 Digital data transmission error-detecting method and system
CN102360316A (en) * 2011-10-20 2012-02-22 深圳芯邦科技股份有限公司 Method and device for operating startup procedure in one-time programmable storage

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005114848A1 (en) * 2004-05-18 2005-12-01 Ricardo Uk Limited Data processing
US8015478B2 (en) 2004-05-18 2011-09-06 Ricardo Uk Limited Data processing
CN100418312C (en) * 2005-06-30 2008-09-10 英业达股份有限公司 Digital data transmission error-detecting method and system
CN102360316A (en) * 2011-10-20 2012-02-22 深圳芯邦科技股份有限公司 Method and device for operating startup procedure in one-time programmable storage

Also Published As

Publication number Publication date
JP3302950B2 (en) 2002-07-15

Similar Documents

Publication Publication Date Title
CN102096609B (en) Instruction-set architecture for programmable cyclic redundancy check (CRC) computations
JP3306210B2 (en) CRC code confirmation method and device
JP4917671B2 (en) Data transmission method between master device and slave device
US20050010630A1 (en) Method and apparatus for determining a remainder in a polynomial ring
US5883907A (en) Asymmetrical digital subscriber line (ADSL) block encoder circuit and method of operation
JPWO2004001701A1 (en) Sign arithmetic unit
US9680605B2 (en) Method of offloading cyclic redundancy check on portions of a packet
JP2002351689A (en) Data transfer system
JPS60146337A (en) Generation of error pointer
CN112306741A (en) CRC (Cyclic redundancy check) method and related device
US7434150B1 (en) Methods, circuits, architectures, software and systems for determining a data transmission error and/or checking or confirming such error determinations
WO2011103741A1 (en) Method and device for data check processing
JPH0936753A (en) Data-block encoding method for generating redundant information based on symbol length code, symbol length reed-solomon code-based encoding method for block-wise formated data received by encoder as a series of data word, and word type encoder
JP3302950B2 (en) CRC generation unit and CRC calculation device
CN111247516A (en) Circuit structure, system-on-chip (SoC) and data processing method
CN116861493A (en) Verification code generation method, processor and electronic equipment
JP4515651B2 (en) Cyclic redundancy check operation method and cyclic redundancy check operation circuit
WO2006105525A2 (en) Combined command and data code
JP4271602B2 (en) Apparatus and method for determining validity of transfer data
WO2017148096A1 (en) Method and device for generating cyclic redundancy check
JP2015019276A (en) Storage device, crc generation device and crc generation method
CN109889309A (en) Forward error correction data generation method, device and electronic equipment
JP3071482B2 (en) Error correction circuit of packet receiver
WO2024168608A1 (en) Logic operation circuit, compression circuit of secure hash algorithm, and chip
JP6813637B1 (en) Transmission device and transmission method

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020409

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees