JP2010124260A - Crc erroneous discrimination detection method and crc erroneous discrimination detection apparatus - Google Patents

Crc erroneous discrimination detection method and crc erroneous discrimination detection apparatus Download PDF

Info

Publication number
JP2010124260A
JP2010124260A JP2008296258A JP2008296258A JP2010124260A JP 2010124260 A JP2010124260 A JP 2010124260A JP 2008296258 A JP2008296258 A JP 2008296258A JP 2008296258 A JP2008296258 A JP 2008296258A JP 2010124260 A JP2010124260 A JP 2010124260A
Authority
JP
Japan
Prior art keywords
crc
packet
crc code
data
code
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
JP2008296258A
Other languages
Japanese (ja)
Inventor
Shigeo Sano
重雄 佐野
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 Engineering Ltd
Original Assignee
NEC Engineering 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 Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP2008296258A priority Critical patent/JP2010124260A/en
Publication of JP2010124260A publication Critical patent/JP2010124260A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To detect CRC erroneous discrimination, and to improve error detection accuracy in a transmission path. <P>SOLUTION: A memory portion 12 sequentially memorizes the CRC code of the last transmission data. A code adding portion 13 transmits a transmission packet in which the CRC code of the transmission data is added in a position within a packet determined by the value of the memorized CRC code. A memory portion 15 memorizes data in the position within the packet determined by the value of the CRC code of the last reception packet. An error inspection portion 14 performs CRC error inspection about the reception packet with the memorized data. If a CRC error is detected, a search portion 16 sequentially repeats the CRC error inspection making the data in the plurality of positions within the packet previously determined in the reception packet as the CRC code, and if it becomes OK, the CRC error inspection about the last reception packet is made to be an erroneous discrimination. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は、CRC(Cyclic Redundancy Check)誤判定検出方法およびCRC誤判定検出装置に関する。   The present invention relates to a CRC (Cyclic Redundancy Check) erroneous determination detection method and a CRC erroneous determination detection device.

従来、伝送データの誤り検査は、図9に示すように、送信側では、CRCコード生成部91にて送信データを所定の生成多項式で割り算を行い、CRCコード付加部92にてその剰余(CRCコード)を送信データに付加して送信し、一方、受信側では、CRC誤り検査部93にて送信側と同じ生成多項式を用いて割り算を行い、余りがなければデータは正しい、余りがあればデータの伝送誤りがあったと判定する。なお、CRCコードは、図10に示すように、一般的に全てのパケットデータの最後尾に付加される(文献公知発明に係るものではない)。   Conventionally, as shown in FIG. 9, error check of transmission data is performed by dividing a transmission data by a predetermined generation polynomial in a CRC code generation unit 91 on the transmission side and a remainder (CRC) in a CRC code addition unit 92. Code) is added to the transmission data and transmitted. On the other hand, the CRC error checker 93 performs division using the same generator polynomial as that on the transmission side. If there is no remainder, the data is correct. It is determined that there was a data transmission error. In addition, as shown in FIG. 10, the CRC code is generally added to the end of all packet data (not related to the literature known invention).

また、1つのフレームに前回のシリアルデータ列と現在(前々回と前回でも可)のシリアルデータ列を多重すると共に、1フレーム毎にCRC符号を付加する方式が提案されている(例えば、特許文献1参照)。   In addition, a method has been proposed in which the previous serial data sequence and the current serial data sequence (possible before and after the previous time) are multiplexed in one frame and a CRC code is added to each frame (for example, Patent Document 1). reference).

特開平10−84334(第2頁−第3頁、図2)Japanese Patent Laid-Open No. 10-84334 (page 2 to page 3, FIG. 2)

上述した従来の誤り検査方式では、データ送信が冗長であるため伝送効率が極めて低いのは当然として、あるフレームのCRCチェックがNGの場合、冗長で送信した別のフレームを適用することにより伝送データ誤りを救済できるが、CRC誤判定となった場合は、誤ったシリアルデータを適用する可能性がある。即ち、伝送路上で、データとCRCコードの両方に誤りが生じ、且つ受信側における生成多項式での割り算結果が余り0となるような場合、誤り検出ができず、データおよびCRCコードが正しく伝送されたと誤判定してしまう。   In the conventional error checking method described above, since the data transmission is redundant, the transmission efficiency is naturally low. When the CRC check of a certain frame is NG, the transmission data is obtained by applying another frame transmitted redundantly. Although the error can be remedied, there is a possibility that the wrong serial data is applied when the CRC is erroneously determined. That is, if an error occurs in both the data and the CRC code on the transmission line, and the result of division by the generator polynomial on the receiving side is zero, error detection cannot be performed, and the data and CRC code are transmitted correctly. It will be misjudged.

更に、誤判定したことを検出する手段はないため、サイレントアラームとなってしまう。データとCRCコードの両方に誤りが生じた際に誤判定となる確率は、CRCコードのビット長に依存する。例えば、CRCコードが8ビットの場合、その確率は2の(−8)べき乗=約4/1000である。この確率は、一見、低いようであるが、膨大なバーストデータの場合は、その誤りが実感されるものである。   Furthermore, since there is no means for detecting that an erroneous determination has been made, a silent alarm is generated. The probability of erroneous determination when an error occurs in both the data and the CRC code depends on the bit length of the CRC code. For example, if the CRC code is 8 bits, the probability is 2 (−8) power = approximately 4/1000. This probability seems to be low at first glance, but in the case of a huge amount of burst data, the error is perceived.

そこで、本発明は上記の問題点を解消し、伝送路上で誤ったデータおよびCRCに対する生成多項式での割り算結果が余り0となった場合のCRC誤判定を検出できるCRC誤判定検出方法およびCRC誤判定検出装置を提供し、伝送路における誤り検出精度の向上を目的とする。   Therefore, the present invention solves the above-described problems, and a CRC error determination detection method and a CRC error detection method that can detect a CRC error determination when the result of division by a generator polynomial for erroneous data and CRC on the transmission line is zero. It is an object of the present invention to provide a determination / detection device and improve error detection accuracy in a transmission path.

請求項1に記載のCRC誤判定検出方法は、送信側では、送信データのCRCコードを直前の送信データのCRCコードの値で定まるパケット内位置に付加した送信パケットを送信し、受信側では、直前の受信パケットのCRCコードの値で定まるパケット内位置におけるデータを本来のCRC位置へ移してCRC誤り検査を行い、CRC誤りを検出すると、当該受信パケットにおける予め定められた複数のパケット内位置におけるデータをCRCコードとして順次にCRC誤り検査を行い、そのうちCRCエラーを検出しない場合には直前の受信パケットについて、ロスが無く且つCRCエラーが無ければCRC誤り検査の結果は誤判定とし、順次にCRC誤り検査を行ってもCRC誤りを検出する場合には当該受信パケットについてCRC誤りとすることを特徴とする。   In the CRC misjudgment detection method according to claim 1, the transmission side transmits a transmission packet in which the CRC code of the transmission data is added to the position in the packet determined by the CRC code value of the immediately previous transmission data, and on the reception side, When the CRC error check is performed by moving the data in the packet position determined by the CRC code value of the immediately previous received packet to the original CRC position, and CRC error is detected, the data at a plurality of predetermined packet positions in the received packet are detected. If the CRC error check is performed sequentially with the data as a CRC code, and no CRC error is detected, the previous received packet has no loss and there is no CRC error. If a CRC error is detected even after error checking, CR Characterized by an error.

請求項2に記載のCRC誤判定検出方法は、送信側は、送信データに対するCRCコードを生成する手順と、少なくとも直前の送信データに対して生成したCRCコードを順次に記憶する手順と、当該送信データのCRCコードを記憶した直前の送信データに対して生成したCRCコードの値で定まるパケット内位置に付加した送信パケットを送信する手順を有する。   In the CRC misjudgment detection method according to claim 2, the transmitting side generates a CRC code for transmission data, a procedure for sequentially storing a CRC code generated for at least immediately preceding transmission data, and the transmission There is a procedure for transmitting a transmission packet added to a position in the packet determined by the value of the CRC code generated for the transmission data immediately before storing the CRC code of the data.

一方、受信側は、少なくとも直前の受信パケットのCRCコードの値で定まるパケット内位置におけるデータを記憶する手順と、記憶したデータを本来のCRC位置へ移して当該受信パケットについてCRC誤り検査を行う手順と、CRC誤り検査の結果、CRC誤りを検出すると、当該受信パケットにおける予め定められた複数のパケット内位置におけるデータをCRCコードとして順次にCRC誤り検査を繰り返す手順と、CRC誤り検査を繰り返すうちにCRC誤りを検出しない場合には、直前の受信パケットについて、ロスが無く且つCRCエラーが無ければCRC誤り検査は誤判定とする手順と、CRC誤り検査を繰り返してもCRC誤りを検出する場合には、当該受信パケットについてCRC誤りとする手順を有することを特徴とする。   On the other hand, the receiving side stores at least data at a position in the packet determined by the CRC code value of the immediately preceding received packet, and performs a CRC error check on the received packet by moving the stored data to the original CRC position. If a CRC error is detected as a result of the CRC error check, a procedure for sequentially repeating the CRC error check using data at a plurality of predetermined positions in the received packet as CRC codes, and while repeating the CRC error check If no CRC error is detected, if there is no loss and there is no CRC error for the previous received packet, the CRC error check is erroneously determined, and the CRC error is detected even after repeated CRC error checks. And a procedure for making a CRC error for the received packet. To.

請求項3に記載のCRC誤判定検出方法は、請求項1〜2に記載のCRC誤判定検出方法において、パケット内位置はCRCコードの下位nビットで定められることを特徴とする。   The CRC misjudgment detection method according to claim 3 is characterized in that, in the CRC misjudgment detection method according to claims 1-2, the position in the packet is determined by the lower n bits of the CRC code.

請求項4に記載のCRC誤判定検出方法は、請求項1〜3に記載のCRC誤判定検出方法において、本来のCRC位置はパケット内の末尾とすることを特徴とする。   The CRC misjudgment detection method according to claim 4 is the CRC misjudgment detection method according to claims 1 to 3, wherein the original CRC position is the end of the packet.

請求項5に記載のCRC誤判定検出装置は、送信側は、送信データに対するCRCコードを生成するCRCコード生成部と、少なくとも直前の送信データに対して生成したCRCコードを順次に記憶するCRCコード記憶部と、当該送信データのCRCコードを記憶した直前の送信データに対して生成したCRCコードの値で定まるパケット内位置に付加した送信パケットを送信するCRCコード付加部を有する。   The CRC misjudgment detection apparatus according to claim 5, wherein the transmitting side sequentially generates a CRC code generation unit that generates a CRC code for transmission data and a CRC code generated for at least the immediately preceding transmission data. A storage unit and a CRC code adding unit that transmits a transmission packet added to a position in the packet determined by the value of the CRC code generated for the transmission data immediately before storing the CRC code of the transmission data.

一方、受信側は、少なくとも直前の受信パケットのCRCコードの値で定まるパケット内位置におけるデータを記憶するCRCコード記憶部と、記憶したデータを本来のCRC位置へ移して当該受信パケットについてCRC誤り検査を行うCRCコード誤り検査部と、CRC誤り検査の結果、CRC誤りを検出すると、当該受信パケットにおける予め定められた複数のパケット内位置におけるデータをCRCコードとして順次にCRC誤り検査を繰り返し、そのうちにCRC誤りを検出しない場合には直前の受信パケットについて、パケットロスが無く且つCRCエラーが無ければCRC誤り検査は誤判定とし、CRC誤りを検出する場合には当該受信パケットについてCRC誤りとするCRCコード位置サーチ部を有することを特徴とする。   On the other hand, the receiving side moves the stored data to the original CRC position and stores CRC data in the packet position determined by at least the CRC code value of the immediately preceding received packet. When a CRC error is detected as a result of the CRC error check and the CRC code error check unit that performs the CRC error check, the CRC error check is sequentially repeated with the data at a plurality of predetermined positions in the received packet as CRC codes. If no CRC error is detected, the CRC code for the immediately preceding received packet is a CRC error check if there is no packet loss and there is no CRC error, and if a CRC error is detected, the CRC code is set as a CRC error for the received packet. It has a position search part

[作用]
本発明の誤り検出方式では、送信側におけるCRCコード生成部は、送信データを所定の生成多項式で割り算を行い、その剰余(CRCコード)をCRCコード記憶部およびCRCコード付加部へ送信する。CRCコード記憶部は、CRCコード生成部より受信したCRCコードを保持し、前パケットのCRCコードをCRCコード付加部へ送信する。CRCコード付加部は、CRCコード記憶部より受信した前パケットのCRCコードに対応したパケット内の指定位置に当該データのCRCコードを付加しパケット送信する。
[Action]
In the error detection method of the present invention, the CRC code generation unit on the transmission side divides transmission data by a predetermined generation polynomial, and transmits the remainder (CRC code) to the CRC code storage unit and the CRC code addition unit. The CRC code storage unit holds the CRC code received from the CRC code generation unit, and transmits the CRC code of the previous packet to the CRC code addition unit. The CRC code adding unit adds the CRC code of the data to the designated position in the packet corresponding to the CRC code of the previous packet received from the CRC code storage unit, and transmits the packet.

受信側において、CRC誤り検査部は、CRCコード記憶部から与えられる前パケットのCRCコードにより、当該パケットにおけるCRCコードの付加位置を認識し、誤り検出を行う。CRCコード記憶部は、受信パケットもしくはCRCコード位置サーチ部より受信したCRCコードを保持し、前パケットのCRCコードをCRC誤り検査部へ送信する。CRCコード位置サーチ部は、CRC誤り検査部より与えられるCRC判定結果がNGの場合、当該パケットのCRCコード付加位置をサーチし、NG要因が「前パケットのCRC誤判定」、もしくは「当該パケットのCRCエラー」いずれであるかの判定を行う。   On the receiving side, the CRC error checking unit recognizes the CRC code addition position in the packet based on the CRC code of the previous packet given from the CRC code storage unit, and performs error detection. The CRC code storage unit holds the received packet or the CRC code received from the CRC code position search unit, and transmits the CRC code of the previous packet to the CRC error check unit. When the CRC determination result given by the CRC error checking unit is NG, the CRC code position search unit searches the CRC code addition position of the packet, and the NG factor is “CRC erroneous determination of the previous packet” or “ It is determined which is “CRC error”.

これにより、伝送路上で、データとCRCコードの両方に誤りが生じ、且つ受信側における生成多項式での割り算結果が余り0となった場合のCRC誤判定を検出することができる。以下、パケットA,パケットB、パケットCがこの順序に送受信されるとして具体的に説明する。   As a result, it is possible to detect a CRC misjudgment when an error occurs in both the data and the CRC code on the transmission line, and the result of division by the generator polynomial on the receiving side is zero. Hereinafter, the packet A, the packet B, and the packet C are specifically described as being transmitted and received in this order.

当該送信パケットBについては、CRCコードの送信パケットB内での付加位置を直前の送信パケットAのCRCコードにより指定する。この送信パケットBにつき、通信の途上で送信データに誤りが発生すると共に、CRCコードにも誤りが発生し、しかも、これらの誤りが受信パケットBにおけるCRC誤り検査で検出されず、CRC誤判定になったとする。   For the transmission packet B, the position where the CRC code is added in the transmission packet B is designated by the CRC code of the immediately preceding transmission packet A. For this transmission packet B, an error occurs in the transmission data in the middle of communication, and an error also occurs in the CRC code. Further, these errors are not detected by the CRC error check in the reception packet B, and the CRC is erroneously determined. Suppose that

続く送信パケットCは、送信パケットBのCRCコードで指定される送信パケットC内の指定位置に送信パケットCのCRCコードが付加される。一方、受信パケットCでは、受信パケットBにおける誤ったCRCコードによる受信パケットC内での指定位置に、送信パケットCのCRCコードが付加されているものと解釈する。これは、送信側と受信側とで別個に送信履歴と受信履歴の管理をしているために起こる齟齬である。受信側は、誤解釈したCRCコードを使用してCRC誤り検査を行なうため、当然にCRC誤りが検出される。   In the subsequent transmission packet C, the CRC code of the transmission packet C is added to the designated position in the transmission packet C designated by the CRC code of the transmission packet B. On the other hand, in the reception packet C, it is interpreted that the CRC code of the transmission packet C is added to the designated position in the reception packet C due to an incorrect CRC code in the reception packet B. This should occur because the transmission history and the reception history are separately managed on the transmission side and the reception side. Since the reception side performs a CRC error check using a misinterpreted CRC code, a CRC error is naturally detected.

しかし、受信パケットCが送信パケットCを正しく受信したものであるならば、本来の正しい位置には送信パケットCのCRCコードが付加されている筈である。そこで、受信側では、予め定められた複数のパケット内位置におけるデータをCRCコードとして順次にCRC誤り検査を試みる。その結果、CRC誤りが検出されない場合があれば、受信パケットBにおけるCRC誤り検査の結果はCRC誤判定だったとするものである。但し、受信パケットBにパケットロスがある場合は除かれる。   However, if the received packet C is a packet correctly received from the transmission packet C, the CRC code of the transmission packet C should be added to the original correct position. Therefore, the reception side sequentially tries CRC error check using data at a plurality of predetermined positions in the packet as CRC codes. As a result, if there is a case where no CRC error is detected, it is assumed that the CRC error check result in the received packet B is a CRC error determination. However, the case where there is a packet loss in the received packet B is excluded.

なお、上記のように順次にCRC誤り検査を試みてみても受信パケットCのCRC誤りが解消しない場合には、受信パケットCのCRC誤りとする。   Note that if the CRC error of the received packet C is not resolved even after trying the CRC error check sequentially as described above, the CRC error of the received packet C is set.

本発明によれば、CRCコードを用いた伝送データの誤り検出において、送信側にて前パケットのCRCコードの値に応じて、次パケットのCRC付加位置を決定し、受信側にて前パケットのCRCコードの値に応じてCRCコードの付加位置を認識してCRC誤り検出処理を行うことにより、伝送路上で、データとCRCコードの両方に誤りが生じ、受信側における生成多項式での割り算結果が余り0となった場合のCRC誤判定を検出できるという効果がある。   According to the present invention, in transmission data error detection using a CRC code, the transmission side determines the CRC addition position of the next packet according to the CRC code value of the previous packet, and the reception side determines the previous packet's CRC code. By performing the CRC error detection process by recognizing the CRC code addition position according to the CRC code value, an error occurs in both the data and the CRC code on the transmission line, and the division result in the generator polynomial on the receiving side is There is an effect that CRC misjudgment when the remainder becomes 0 can be detected.

[構成の説明]
次に、本発明の実施例について図面を参照して詳細に説明する。図1は本発明の一実施例によるCRC誤判定検出装置の主要部の構成を示すブロック図である。図1において、送信側は、CRCコード生成部11、CRCコード記憶部12およびCRCコード付加部13とから構成される。受信側は、CRC誤り検査部14、CRCコード記憶部15およびCRCコード位置サーチ部16から構成される。
[Description of configuration]
Next, embodiments of the present invention will be described in detail with reference to the drawings. FIG. 1 is a block diagram showing a configuration of a main part of a CRC error determination detection apparatus according to an embodiment of the present invention. In FIG. 1, the transmission side includes a CRC code generation unit 11, a CRC code storage unit 12, and a CRC code addition unit 13. The receiving side includes a CRC error checking unit 14, a CRC code storage unit 15, and a CRC code position search unit 16.

送信側のCRCコード生成部11は、送信データを所定の生成多項式で割り算を行い、その剰余(CRCコード)を生成する。CRCコード記憶部12は、CRCコード生成部11より受信したCRCコードの所定の一部、例えば下位3ビットを保持しておき、前パケットのCRCコードをCRCコード付加部13へ送信する。CRCコード付加部13は、CRCコード記憶部12より受信した前パケットのCRCコードに対応したパケット内の指定位置に当該送信データのCRCコードを付加し、パケット送信する。   The CRC code generator 11 on the transmission side divides the transmission data by a predetermined generator polynomial and generates a remainder (CRC code). The CRC code storage unit 12 holds a predetermined part of the CRC code received from the CRC code generation unit 11, for example, the lower 3 bits, and transmits the CRC code of the previous packet to the CRC code addition unit 13. The CRC code adding unit 13 adds the CRC code of the transmission data to the designated position in the packet corresponding to the CRC code of the previous packet received from the CRC code storage unit 12, and transmits the packet.

受信側のCRCコード記憶部15は、受信パケットもしくはCRCコード位置サーチ部16より受信したCRCコードを保持しておき、前パケットのCRCコードをCRC誤り検査部14へ送信する。CRC誤り検査部14は、CRCコード記憶部15から与えられる前パケットのCRCコードにより、当該パケットにおけるCRCコードの付加位置を認識し、CRCコードを元の位置、例えば下位3ビットであればパケットデータの最後尾に並び替える。そして、送信側と同じ生成多項式を用いて割り算を行い、余りがなければデータは正しい、余りがあればデータの伝送誤りがあったと判定する。   The CRC code storage unit 15 on the receiving side holds the received packet or the CRC code received from the CRC code position search unit 16 and transmits the CRC code of the previous packet to the CRC error check unit 14. The CRC error checking unit 14 recognizes the CRC code addition position in the packet from the CRC code of the previous packet given from the CRC code storage unit 15, and packet data if the CRC code is the original position, for example, the lower 3 bits Sort at the end of. Then, division is performed using the same generator polynomial as that on the transmission side. If there is no remainder, it is determined that the data is correct, and if there is a remainder, it is determined that there is a data transmission error.

CRCコード位置サーチ部16は、CRC誤り検査部14より与えられるCRC判定結果がNGの場合、当該パケットのCRCコード付加位置をサーチし、NG要因が「前パケットのCRC誤判定」、もしくは「当該パケットのCRCエラー」のいずれであるかの判定を行う。CRCコード付加位置のサーチは、CRCコードの付加位置を順次にシフト巡回し、CRC誤り検出処理を行うことにより実現する。CRC誤り検出処理はCRC誤り検査部14に委ねる。   When the CRC determination result given by the CRC error checking unit 14 is NG, the CRC code position search unit 16 searches for the CRC code addition position of the packet, and the NG factor is “CRC erroneous determination of the previous packet” or “ It is determined whether the packet is a CRC error. The search for the CRC code addition position is realized by sequentially shifting the CRC code addition position and performing CRC error detection processing. The CRC error detection process is left to the CRC error checker 14.

図2は本発明の一実施例によるCRC誤判定検出方式のCRCコード付加位置を示すパケット構成図である。図2において、aはCRCコードの下位nビットの値を示し、本例ではn=3ビットとし、aは0〜7までの値をとる。bはaに基づき決定されるCRCコードの付加位置を示し、本例においてbは0〜7までの値をとる。   FIG. 2 is a packet configuration diagram showing a CRC code addition position of a CRC error determination detection system according to an embodiment of the present invention. In FIG. 2, a indicates the value of the lower n bits of the CRC code. In this example, n = 3 bits, and a takes a value from 0 to 7. b indicates the CRC code addition position determined based on a. In this example, b takes a value from 0 to 7.

先ず、パケット#1におけるCRCコード(a=3)が、b=0の位置に付加されていたとする。その場合、次に送信するパケット#2については、前パケット(パケット#1)のCRCコードの下位3ビットの値aが3であることから、パケット#2のCRCコード(a=7)をb=3の位置に付加する。同様に、パケット#3、#4においても、当該パケットのCRCコードを、前パケットのCRC下位3ビットの値aに対応したbの位置に付加する。   First, it is assumed that the CRC code (a = 3) in the packet # 1 is added at the position of b = 0. In this case, for the packet # 2 to be transmitted next, since the value a of the lower 3 bits of the CRC code of the previous packet (packet # 1) is 3, the CRC code (a = 7) of the packet # 2 is set to b. = 3 is added to the position. Similarly, in the packets # 3 and # 4, the CRC code of the packet is added to the position of b corresponding to the value a of the CRC lower 3 bits of the previous packet.

なお、nは送信側と受信側を同じ値とすれば、装置システムにおいて任意に設定できるパラメータである。nは大きいほどCRC誤判定の検出精度は高くなるが、装置システムにおけるパケット長の範囲(特に最小値)や、誤り検出に要する遅延の許容時間を考慮に入れて決定すべきパラメータである。また、bは、装置システムにおいて送信側と受信側とで予め取り決めておくべき任意のパラメータである。本例の図2ではパケットの末尾をb=0〜7としているが、パケット内であれば末尾以外でも差し障りなく、または分散していてもよい。ただし、生成多項式での割り算はパケットの先頭ビットから順次行われるのが一般的であることから、CRCコードの付加位置は図2のようにパケット末尾にまとめて配置した方が、CRCコード付加位置のサーチ時間は短く済む。   Note that n is a parameter that can be arbitrarily set in the apparatus system if the transmission side and the reception side have the same value. The larger n is, the higher the CRC misjudgment detection accuracy is. However, it is a parameter that should be determined in consideration of the packet length range (particularly the minimum value) in the apparatus system and the allowable delay time required for error detection. Further, b is an arbitrary parameter that should be determined in advance between the transmission side and the reception side in the apparatus system. In FIG. 2 of this example, the end of the packet is set to b = 0 to 7. However, as long as it is within the packet, other than the end may be acceptable or distributed. However, since the division by the generator polynomial is generally performed sequentially from the first bit of the packet, the CRC code addition position is more collectively arranged at the end of the packet as shown in FIG. Search time is short.

[動作の説明]
次に、図1および図2に示す本実施例の動作について、図3と図4のフローチャートを参照しながら説明する。図3は送信側のフローチャートを、図4は受信側のフローチャートを示す。
[Description of operation]
Next, the operation of the present embodiment shown in FIGS. 1 and 2 will be described with reference to the flowcharts of FIGS. FIG. 3 shows a flowchart on the transmission side, and FIG. 4 shows a flowchart on the reception side.

図3の送信側フローチャートにおいて、送信側のCRCコード生成部11は、先ず送信データの有無を判定する(図3のステップS1)。送信データなしの場合は現状を保持し、送信データありの場合は送信データを所定の生成多項式で割り算を行い、その剰余(CRCコード)を生成する(ステップS2)。生成したCRCコードはCRCコード付加部13に出力すると共に、その所定の一部(以下、下位3ビットとして説明する)をCRCコード記憶部12に記憶する(ステップS2)。   In the transmission side flowchart of FIG. 3, the CRC code generation unit 11 on the transmission side first determines the presence or absence of transmission data (step S1 in FIG. 3). When there is no transmission data, the current state is maintained, and when there is transmission data, the transmission data is divided by a predetermined generator polynomial to generate a remainder (CRC code) (step S2). The generated CRC code is output to the CRC code adding unit 13 and a predetermined part (hereinafter, described as lower 3 bits) is stored in the CRC code storage unit 12 (step S2).

次に、CRCコード付加部13は、パケット送信履歴の有無を判定し(ステップS3)、装置立ち上げ直後等、パケット送信履歴がない場合は、前パケットのCRCコードの下位3ビット値aが未確定のため、a=0をセットし(ステップS4)、図2のパケット#1のように、当該パケットのb=0の位置にCRCコードを付加する(ステップS6)。   Next, the CRC code adding unit 13 determines the presence / absence of a packet transmission history (step S3). If there is no packet transmission history, for example, immediately after the apparatus is started up, the lower 3 bit value a of the CRC code of the previous packet is not set. For confirmation, a = 0 is set (step S4), and a CRC code is added to the position of b = 0 of the packet as in packet # 1 in FIG. 2 (step S6).

パケット送信履歴ありの場合は、aに前パケットのCRCコードの下位3ビット値を代入する(ステップS5)。前パケットのCRCコードはCRCコード記憶部12から読み出す。図2のパケット#2を用いて説明すると、前パケット(パケット#1)のCRCコードの下位3ビット値aが3であるので、パケット#2のb=3の位置にパケット#2の当該データのCRCコードを付加する(ステップS6)。以降、パケット送信に際し、CRCコードの付加位置は、前パケットのCRCコード下位3ビット値aに応じて決定される。CRCコードが付加されたパケットは受信側へ向けて送信される(ステップS7)。   If there is a packet transmission history, the lower 3 bit value of the CRC code of the previous packet is substituted for a (step S5). The CRC code of the previous packet is read from the CRC code storage unit 12. Referring to packet # 2 in FIG. 2, since the lower 3 bit value a of the CRC code of the previous packet (packet # 1) is 3, the data of packet # 2 is located at the position of b = 3 of packet # 2. The CRC code is added (step S6). Thereafter, in packet transmission, the CRC code addition position is determined according to the CRC code lower 3 bit value a of the previous packet. The packet with the CRC code added is transmitted toward the receiving side (step S7).

一方、図4の受信側フローチャートにおいて、受信側のCRC誤り検査部14は、先ず受信パケットの有無を判定する(図4のステップT1)。受信パケットなしの場合は現状保持し、受信パケットありの場合、CRC誤り検査部14はパケット受信履歴の有無を判定する(ステップT2)。   On the other hand, in the receiving side flowchart of FIG. 4, the CRC error checking unit 14 on the receiving side first determines the presence or absence of a received packet (step T1 in FIG. 4). If there is no received packet, the current state is maintained, and if there is a received packet, the CRC error checking unit 14 determines whether there is a packet reception history (step T2).

装置立ち上げ直後等、パケット受信履歴がない場合は、前パケットのCRCコードの下位3ビット値aが未確定のため、a=0をセットし(ステップT3)、図2のパケット#1のように、b=0の位置に当該パケットのCRCコードが付加されていると認識し、そのCRCコードを最後尾へ移動してCRC誤り検出処理を行う(ステップT4)。   If there is no packet reception history, such as immediately after device startup, the lower 3 bit value a of the CRC code of the previous packet is unconfirmed, so a = 0 is set (step T3), and packet # 1 in FIG. Then, it is recognized that the CRC code of the packet is added at the position of b = 0, and the CRC code is moved to the tail and the CRC error detection process is performed (step T4).

パケット受信履歴ありの場合は、CRCコード記憶部15から前パケットのCRCコードを読み出して、その下位3ビット値aを適用する。図2のパケット#2を用いて説明すると、前パケット(パケット#1)のCRCコードの下位3ビット値aが3であるので、b=3の位置にパケット#2のCRCコードが付加されていると認識して、CRC誤り検出処理を行う(ステップT4)。CRC誤り検出処理の結果、CRC判定がOKの場合は(ステップT5)、aに当該パケットのCRCコードの下位3ビットの値をセットし(ステップT6)、パケット受信判定シーケンスに戻る。   If there is a packet reception history, the CRC code of the previous packet is read from the CRC code storage unit 15 and its lower 3 bit value a is applied. Referring to packet # 2 in FIG. 2, since the lower 3 bit value a of the CRC code of the previous packet (packet # 1) is 3, the CRC code of packet # 2 is added at the position of b = 3. CRC error detection processing is performed (step T4). As a result of the CRC error detection process, when the CRC determination is OK (step T5), the value of the lower 3 bits of the CRC code of the packet is set to a (step T6), and the process returns to the packet reception determination sequence.

一方、CRC判定がNGの場合、CRCコード位置サーチ部16はパケット#2のCRCコードがb=0〜7のどの位置に付加されているかサーチする(ステップT7)。サーチは、b=0〜7のそれぞれからaを順次に読み出して、CRC判定を行なうことにより実行する。サーチの結果、CRC判定がOKとなった場合は(ステップT8)、そのbの位置に当該パケットのCRCコードの下位3ビットの値をセットし(ステップT9)、パケット受信判定シーケンスに戻るとともに、前パケットでのパケットロス有無を判定する(ステップT10)。   On the other hand, when the CRC judgment is NG, the CRC code position search unit 16 searches for the position where the CRC code of the packet # 2 is added at b = 0 to 7 (step T7). The search is executed by sequentially reading a from each of b = 0 to 7 and performing CRC determination. As a result of the search, if the CRC judgment is OK (step T8), the value of the lower 3 bits of the CRC code of the packet is set at the position b (step T9), and the process returns to the packet reception judgment sequence. The presence / absence of packet loss in the previous packet is determined (step T10).

ここでのパケットロス検出手段は、本発明に依らず、例えば、IPヘッダのフラグメントオフセット等、連続するパケットに対してシーケンシャルに割り振られた番号の連続性チェックにより行われ、パケットロス検出時はパケットロスALMが発出されるものとする(ステップT11)。前パケットのパケットロス判定の結果、パケットロスなしの場合であって、且つ前パケットのCRC誤りが無い場合(ステップT12)は、前パケットでCRC誤判定があったと判断し、前パケットCRC誤判定ALMを発出する(ステップT13)。なお、前パケットのCRC誤りがある場合(ステップT12)は、ALM非発出とする(ステップT14)。   The packet loss detecting means here does not depend on the present invention, and is performed, for example, by checking the continuity of numbers sequentially assigned to consecutive packets, such as the fragment offset of the IP header. Assume that loss ALM is issued (step T11). As a result of the packet loss determination of the previous packet, when there is no packet loss and there is no CRC error of the previous packet (step T12), it is determined that there was a CRC erroneous determination in the previous packet, and the previous packet CRC erroneous determination ALM is issued (step T13). If there is a CRC error in the previous packet (step T12), no ALM is issued (step T14).

また、CRCコード位置のサーチ(ステップT7)後、CRC判定がNGとなった場合は(ステップT8)、a=0をセットし(ステップT15)、パケット受信判定シーケンスに戻るとともに、当該パケットCRCエラーを発出する(ステップT16)。   If the CRC determination is NG after the CRC code position search (step T7) (step T8), a = 0 is set (step T15), the process returns to the packet reception determination sequence, and the packet CRC error is detected. Is issued (step T16).

次に、以上に説明した本実施例の動作について、図5、図6、図7および図8のタイムチャートにより更に詳しく説明する。図5は送信側のタイムチャートを、図6は受信側のタイムチャート(OK時)を、図7は受信側のタイムチャート(CRC誤判定検出時)を、図8は受信側のタイムチャート(パケットロス時)を示す。   Next, the operation of the present embodiment described above will be described in more detail with reference to the time charts of FIG. 5, FIG. 6, FIG. 7, and FIG. FIG. 5 is a time chart on the transmission side, FIG. 6 is a time chart on the reception side (when OK), FIG. 7 is a time chart on the reception side (when CRC misjudgment is detected), and FIG. Indicates packet loss).

図5の送信側タイムチャートを参照しながら、送信データが#1から#4までの4データである場合の動作を説明する。データ#1は、装置立ち上げ直後等、パケット送信履歴がない場合の先頭データを示す。   The operation when the transmission data is four data from # 1 to # 4 will be described with reference to the transmission side time chart of FIG. Data # 1 indicates head data when there is no packet transmission history, such as immediately after the apparatus is started up.

はじめに、送信データ#1について所定の生成多項式での割り算を行い、CRCコード(a=3)を生成する。生成したCRCコード(a=3)をデータ#1に付加する際、前パケットのCRCコード下位3ビット値aを参照する。しかし、この時点では送信履歴がないため初期値0を適用し、CRCコード付加位置b=0の位置にCRCコードa=3を付加する。こうして送信データ#1のb=0の位置にCRCコードa=3を付加した信号が、送信パケット#1として送信される。   First, the transmission data # 1 is divided by a predetermined generator polynomial to generate a CRC code (a = 3). When the generated CRC code (a = 3) is added to the data # 1, the lower 3 bit value a of the CRC code of the previous packet is referred to. However, since there is no transmission history at this time, the initial value 0 is applied, and the CRC code a = 3 is added to the position where the CRC code addition position b = 0. Thus, a signal obtained by adding the CRC code a = 3 to the position of b = 0 in the transmission data # 1 is transmitted as the transmission packet # 1.

送信データ#2についても所定の生成多項式での割り算を行い、CRCコードa=7を生成する。生成したCRCコードa=7をデータ#2に付加する際、前パケットパケット#1のCRCコード下位3ビット値a=3を参照し、CRCコード付加位置b=3の位置にCRCコードa=7を付加する。こうして送信データ#2のb=3の位置にCRCコードa=7を付加した信号が、送信パケット#2として送信される。   Transmission data # 2 is also divided by a predetermined generator polynomial to generate CRC code a = 7. When the generated CRC code a = 7 is added to the data # 2, the CRC code lower 3 bit value a = 3 of the previous packet packet # 1 is referred to, and the CRC code a = 7 is set at the CRC code addition position b = 3. Is added. Thus, a signal obtained by adding the CRC code a = 7 to the position of b = 3 in the transmission data # 2 is transmitted as the transmission packet # 2.

同様に、送信データ#3については生成したCRCコードa=2をb=7の位置に付加し、送信データ#4については生成したCRCコードa=5をb=2の位置に付加し、パケット送信する。   Similarly, the generated CRC code a = 2 is added to the position of b = 7 for the transmission data # 3, the generated CRC code a = 5 is added to the position of b = 2 for the transmission data # 4, and the packet Send.

次に、図6の受信側タイムチャート(OK時)を参照しながら、受信パケットが#1から#4までの4パケットで、CRC判定がいずれもOKの場合の動作を説明する。受信パケット#1は、装置立ち上げ直後等、パケット受信履歴がない場合の先頭パケットを示す。   Next, referring to the reception side time chart of FIG. 6 (during OK), the operation when the received packets are 4 packets from # 1 to # 4 and the CRC judgment is all OK will be described. Received packet # 1 indicates the first packet when there is no packet reception history, such as immediately after the apparatus is started up.

はじめに、受信パケット#1のCRC誤り検出を行う際、CRCコードの位置を知るために前パケットのCRCコード下位3ビット値aを参照する。しかし、この時点では受信履歴がないため初期値0を適用し、CRCコード付加位置b=0の位置にCRCコードa=3が付加されているものと認識する。そしてb=0の位置にあるCRCコードa=3を、データの最後尾へ移動し、データの先頭から所定の生成多項式で割り算を行い、割り算結果の余りがなければデータは正しい、余りがあればデータの伝送誤りがあったと判定する。   First, when performing CRC error detection of the received packet # 1, the CRC code lower 3 bit value a of the previous packet is referred to in order to know the position of the CRC code. However, since there is no reception history at this time, the initial value 0 is applied, and it is recognized that the CRC code a = 3 is added to the CRC code addition position b = 0. Then, the CRC code a = 3 at the position of b = 0 is moved to the end of the data, and division is performed with a predetermined generator polynomial from the beginning of the data. If there is no remainder of the division result, the data is correct and there is a remainder. If there is a data transmission error, it is determined.

受信パケット#2についてもCRC誤り検出を行う際、CRCコードの位置を知るために前パケットのCRCコード下位3ビット値a=3を参照し、CRCコード付加位置b=3の位置にCRCコードa=7が付加されているものと認識する。そしてb=3の位置にあるCRCコードa=7を、データの最後尾へ移動し、データの先頭から所定の生成多項式で割り算を行い、割り算結果の余りがなければデータは正しい、余りがあればデータの伝送誤りがあったと判定する。   When the CRC error detection is performed also for the received packet # 2, the CRC code lower 3 bit value a = 3 of the previous packet is referred to know the position of the CRC code, and the CRC code a is set at the CRC code addition position b = 3. = 7 is recognized. Then, the CRC code a = 7 at the position of b = 3 is moved to the end of the data, and division is performed with a predetermined generator polynomial from the beginning of the data. If there is no remainder of the division result, the data is correct and there is a remainder. If there is a data transmission error, it is determined.

同様に、受信パケット#3についてはb=7の位置にCRCコードa=2が付加されているものと認識して誤り検出を行い、受信パケット#4についてはb=2の位置にCRCコードa=5が付加されているものと認識して誤り検出を行う。   Similarly, it is recognized that the CRC code a = 2 is added to the position of b = 7 for the received packet # 3, and error detection is performed. For the received packet # 4, the CRC code a is set to the position of b = 2. = 5 is recognized and error detection is performed.

さて、次に、図7の受信側タイムチャートを参照しながら、受信パケットが#1から#4までの4パケット中、#2のパケットでCRC誤判定が発生した場合の動作を説明する。受信パケット#1は、装置立ち上げ直後等、パケット受信履歴がない場合の先頭パケットを示し、受信処理の動作は図6で説明した通りである。   Next, the operation when a CRC erroneous determination occurs in the # 2 packet among the four received packets from # 1 to # 4 will be described with reference to the reception side time chart of FIG. Received packet # 1 indicates the first packet when there is no packet reception history, such as immediately after the apparatus is started up, and the operation of the reception process is as described with reference to FIG.

受信パケット#2は、伝送路上でデータとCRCの両方で誤りが発生し、送信側にてb=3の位置に付加されていた正しいCRCコードa=7が誤ったCRCコードa=4となってしまったにもかかわらず、所定の生成多項式での割り算結果が余り0となってしまう場合を仮定する。   In received packet # 2, an error occurs in both data and CRC on the transmission path, and the correct CRC code a = 7 added to the position of b = 3 on the transmission side becomes the incorrect CRC code a = 4. It is assumed that the result of division by a predetermined generator polynomial is not so much even though it has been.

受信パケット#2については、CRC誤り検出を行う際、CRCコードの位置を知るために前パケットのCRCコード下位3ビット値a=3を参照し、CRCコード付加位置b=3の位置にCRCコードが付加されているものと認識する。ここで、本来の正しいCRCコードの下位3ビット値はa=7であるが伝送路誤りによりa=4と誤認識してしまう。   For the received packet # 2, when performing CRC error detection, the CRC code lower 3 bit value a = 3 is referred to know the CRC code position, and the CRC code is added to the CRC code addition position b = 3. It is recognized that is added. Here, although the lower 3 bit value of the original correct CRC code is a = 7, it is erroneously recognized as a = 4 due to a transmission path error.

そして、b=3の位置にある誤ったCRCコードa=4)を、データの最後尾へ移動し、データの先頭から所定の生成多項式で割り算を行う。通常はここで割り算結果の余りが発生しCRC判定NGとなるが、伝送路上で、偶然割り算の結果が余り0となるような誤り方をした場合、誤り検出ができずにCRC判定はOKであると、誤判定してしまう。   Then, the erroneous CRC code a = 4) at the position of b = 3 is moved to the end of the data, and division is performed with a predetermined generator polynomial from the top of the data. Normally, the remainder of the division result occurs and the CRC judgment is NG. However, if an error is made such that the result of the accidental division is zero on the transmission line, error detection cannot be performed and the CRC judgment is OK. If it exists, it will be misjudged.

この時点では、誤判定したまま受信パケット#3の処理に移る。受信パケット#3のCRC誤り検出を行う際、CRCコードの位置を知るために前パケットのCRCコード下位3ビット値a=4を参照し、CRCコードはb=4の位置に付加されているものと認識する。ここで、本来の正しいCRCコード付加位置はb=7であるが、前パケットのCRCコードが誤っていたため、b=4の位置のデータをCRCコードとして誤認識することになる。   At this time, the process proceeds to the received packet # 3 with erroneous determination. When performing CRC error detection for received packet # 3, the CRC code lower 3 bit value a = 4 is referred to know the position of the CRC code, and the CRC code is added at the position of b = 4 Recognize. Here, although the original correct CRC code addition position is b = 7, since the CRC code of the previous packet is incorrect, the data at the position of b = 4 is erroneously recognized as the CRC code.

そして、b=4の位置にあるデータを、データの最後尾へ移動し、データの先頭から所定の生成多項式で割り算を行う。この結果、当然ながら余りは0とならずにCRC判定はNGとなる。そこで、CRCコード位置サーチのシーケンスに移り、パケット#3のb=0〜7のいずれかがCRCコードであると仮定して、それぞれをデータ最後尾に移動して所定の生成多項式で割り算を行い、CRCコードの位置をサーチする。   Then, the data at the position of b = 4 is moved to the end of the data, and division is performed from the top of the data by a predetermined generator polynomial. As a result, as a matter of course, the remainder is not 0, and the CRC judgment is NG. Therefore, the sequence moves to a CRC code position search sequence, assuming that any of b = 0 to 7 of packet # 3 is a CRC code, and moves each to the end of the data and divides by a predetermined generator polynomial. Search for the position of the CRC code.

その結果、送信側でCRCコードを付加したb=7の位置のデータをCRCコードと仮定して割り算した結果が余り0となり、b=7が正しいCRCコードの付加位置であることが判明する。更に、前パケットのパケットロスがなければ、前パケットのCRC判定が誤判定であったと判断できる。このようにして、前パケットでCRC誤判定となった場合でも、次のパケットでCRC誤判定が発生していたことを検出することができる。   As a result, the data obtained by dividing the data at the position of b = 7 to which the CRC code is added on the transmission side is assumed to be a CRC code, and the remainder is 0, and it is found that b = 7 is the correct CRC code addition position. Furthermore, if there is no packet loss of the previous packet, it can be determined that the CRC determination of the previous packet was an erroneous determination. In this way, even when a CRC misjudgment occurs in the previous packet, it can be detected that a CRC misjudgment has occurred in the next packet.

なお、CRCコード位置サーチでは、正しいCRCコードの下位3ビット値が2であることが判明したので、前パケットのCRCコード下位3ビット値として、a=2を保持する。こうすることにより、受信パケット#4については、正しくb=2の位置にCRCコードa=5が付加されているものと認識して、誤り検出処理を行うことが可能となる。   In the CRC code position search, it has been found that the lower 3 bit value of the correct CRC code is 2, so a = 2 is held as the lower 3 bit value of the CRC code of the previous packet. By doing so, it is possible to recognize that the received packet # 4 is correctly added with the CRC code a = 5 at the position of b = 2 and perform error detection processing.

次に、図8の受信側タイムチャート(パケットロス時)を参照しながら、受信パケットが#1から#4までの4パケット中、#2のパケットでパケットロスが発生した場合の動作を説明する。受信パケット#1は、装置立ち上げ直後等、パケット受信履歴がない場合の先頭パケットを示し、受信処理の動作は図6で説明した通りである。受信パケット#2は、伝送路上でパケットロスしたため、受信側ではパケット#1の次にパケット#3を受信することとなる。   Next, with reference to the reception side time chart of FIG. 8 (during packet loss), the operation when a packet loss occurs in the # 2 packet among the four packets # 1 to # 4 will be described. . Received packet # 1 indicates the first packet when there is no packet reception history, such as immediately after the apparatus is started up, and the operation of the reception process is as described with reference to FIG. Since the received packet # 2 has lost a packet on the transmission path, the receiving side receives the packet # 3 after the packet # 1.

受信パケット#3のCRC誤り検出を行う際、CRCコードの位置を知るために前パケットのCRCコード下位3ビット値a=3を参照し、CRCコードはb=3の位置に付加されているものと認識する。ここで、本来の正しいCRCコード付加位置はb=7であるが、パケット#2がロスしていたため、前パケットのCRCコード下位3ビットの値aが正しく更新されず、パケット#1の値a=3のままとなっているため、b=3の位置のデータをCRCコードとして誤認識することになる。   When detecting CRC error of received packet # 3, the CRC code lower 3 bit value a = 3 is referred to know the position of the CRC code, and the CRC code is added at the position of b = 3 Recognize. Here, although the original correct CRC code addition position is b = 7, since packet # 2 has been lost, the value a of the lower 3 bits of the CRC code of the previous packet is not correctly updated, and the value a of packet # 1 = 3, the data at the position of b = 3 is erroneously recognized as a CRC code.

そして、b=3の位置にあるデータを、データの最後尾へ移動し、データの先頭から所定の生成多項式で割り算を行う。この結果、当然ながら余りは0とならずにCRC判定はNGとなる。そこで、CRCコード位置サーチのシーケンスに移り、パケット#3のb=0〜7のいずれかがCRCコードであると仮定して、それぞれをデータ最後尾に移動して所定の生成多項式で割り算を行い、CRCコードの位置をサーチする。   Then, the data at the position of b = 3 is moved to the tail of the data, and division is performed with a predetermined generator polynomial from the top of the data. As a result, as a matter of course, the remainder is not 0, and the CRC judgment is NG. Therefore, the sequence moves to a CRC code position search sequence, assuming that any of b = 0 to 7 of packet # 3 is a CRC code, and moves each to the end of the data and divides by a predetermined generator polynomial. Search for the position of the CRC code.

その結果、送信側でCRCコードを付加したb=7の位置のデータをCRCコードと仮定して割り算した結果が余り0となり、b=7が正しいCRCコードの付加位置であることが判明する。ここで、前パケットのロスが判明した場合、前パケットのパケットロスALMが発出され、CRC誤判定ではないとされる。ここでのパケットロス検出手段は、本発明に依らず、IPヘッダのフラグメントオフセット等、連続するパケットに対してシーケンシャルに割り振られた番号の連続性チェックにより行われるものとする。   As a result, the data obtained by dividing the data at the position of b = 7 to which the CRC code is added on the transmission side is assumed to be a CRC code, and the remainder is 0, and it is found that b = 7 is the correct CRC code addition position. Here, if the loss of the previous packet is found, the packet loss ALM of the previous packet is issued, and it is not a CRC misjudgment. Here, the packet loss detecting means is not limited to the present invention, but is performed by checking the continuity of numbers sequentially allocated to consecutive packets, such as the fragment offset of the IP header.

なお、CRCコード位置サーチでは、正しいCRCコードの下位3ビット値が2であることが判明したので、前パケットのCRCコード下位3ビット値として、a=2を保持する。こうすることにより、受信パケット#4については、正しくb=2の位置にCRCコードa=5が付加されているものと認識して、誤り検出処理を行うことが可能となる。   In the CRC code position search, it has been found that the lower 3 bit value of the correct CRC code is 2, so a = 2 is held as the lower 3 bit value of the CRC code of the previous packet. By doing so, it is possible to recognize that the received packet # 4 is correctly added with the CRC code a = 5 at the position of b = 2 and perform error detection processing.

本発明の一実施例によるCRC誤判定検出装置の主要部の構成を示すブロック図The block diagram which shows the structure of the principal part of the CRC misjudgment detection apparatus by one Example of this invention. 本発明の一実施例におけるCRCコード付加位置を示すパケット構成図Packet configuration diagram showing CRC code addition position in one embodiment of the present invention 本発明の一実施例による送信側の動作を示すフローチャートThe flowchart which shows operation | movement of the transmission side by one Example of this invention. 本発明の一実施例による受信側の動作を示すフローチャートThe flowchart which shows operation | movement of the receiving side by one Example of this invention. 本発明の一実施例による送信側の動作を示すタイムチャートThe time chart which shows the operation | movement of the transmission side by one Example of this invention 本発明の一実施例による受信側の動作(OK時)を示すタイムチャートThe time chart which shows the operation | movement (at the time of OK) of the receiving side by one Example of this invention 本発明の一実施例による受信側の動作(CRC誤判定検出時)を示すタイムチャートFIG. 4 is a time chart showing the operation on the receiving side (when a CRC error determination is detected) according to an embodiment of the present invention; 本発明の一実施例による受信側の動作(パケットロス時)を示すタイムチャート4 is a time chart showing the operation (at the time of packet loss) on the receiving side according to an embodiment of the present invention. 従来のCRCコードを用いた誤り検出方式の構成を示すブロック図Block diagram showing the configuration of an error detection method using a conventional CRC code 従来のCRCコード付加位置を示すパケット構成図Packet configuration diagram showing conventional CRC code addition position

符号の説明Explanation of symbols

11 CRCコード生成部
12 CRCコード記憶部
13 CRCコード付加部
14 CRC誤り検査部
15 CRCコード記憶部
16 CRCコード位置サーチ部
91 CRCコード生成部
92 CRCコード付加部
93 CRC誤り検査部
DESCRIPTION OF SYMBOLS 11 CRC code production | generation part 12 CRC code memory | storage part 13 CRC code addition part 14 CRC error inspection part 15 CRC code memory | storage part 16 CRC code position search part 91 CRC code generation part 92 CRC code addition part 93 CRC error inspection part

Claims (5)

送信側では、送信データのCRCコードを直前の送信データのCRCコードの値で定まるパケット内位置に付加した送信パケットを送信し、
受信側では、直前の受信パケットのCRCコードの値で定まるパケット内位置におけるデータを本来のCRC位置へ移してCRC誤り検査を行い、CRC誤りを検出すると、当該受信パケットにおける予め定められた複数のパケット内位置におけるデータをCRCコードとして順次にCRC誤り検査を行い、そのうちCRC誤りを検出しない場合には直前の受信パケットについて、ロスが無く且つCRCエラーが無ければCRC誤り検査の結果は誤判定とし、順次にCRC誤り検査を行ってもCRC誤りを検出する場合には当該受信パケットについてCRC誤りとすることを特徴とするCRC誤判定検出方法。
On the transmission side, a transmission packet in which the CRC code of the transmission data is added to the position in the packet determined by the CRC code value of the previous transmission data is transmitted,
On the receiving side, the data at the position in the packet determined by the CRC code value of the immediately preceding received packet is moved to the original CRC position to perform a CRC error check, and when a CRC error is detected, The CRC error check is performed sequentially using the data at the position in the packet as a CRC code. If no CRC error is detected, the previous received packet is not lost and there is no CRC error. A CRC misjudgment detection method, wherein a CRC error is detected for the received packet when a CRC error is detected even if CRC error checking is performed sequentially.
送信側は、
送信データに対するCRCコードを生成する手順と、
少なくとも直前の送信データに対して生成したCRCコードを順次に記憶する手順と、
当該送信データのCRCコードを前記記憶した直前の送信データに対して生成したCRCコードの値で定まるパケット内位置に付加した送信パケットを送信する手順を有し、
受信側は、
少なくとも直前の受信パケットのCRCコードの値で定まるパケット内位置におけるデータを記憶する手順と、
前記記憶したデータを本来のCRC位置へ移して当該受信パケットについてCRC誤り検査を行う手順と、
前記CRC誤り検査の結果、CRC誤りを検出すると、当該受信パケットにおける予め定められた複数のパケット内位置におけるデータをCRCコードとして順次に前記CRC誤り検査を繰り返す手順と、
前記CRC誤り検査を繰り返すうちにCRC誤りを検出しない場合には、直前の受信パケットについて、ロスが無く且つCRCエラーが無ければCRC誤り検査は誤判定とする手順と、
前記CRC誤り検査を繰り返してもCRC誤りを検出する場合には、当該受信パケットについてCRC誤りとする手順を有することを特徴とするCRC誤判定検出方法。
The sender is
A procedure for generating a CRC code for transmission data;
A procedure for sequentially storing at least the CRC code generated for the immediately preceding transmission data;
A step of transmitting a transmission packet added to a position in a packet determined by a CRC code value generated for the immediately preceding stored transmission data, the CRC code of the transmission data;
The receiving side
A procedure for storing data at a position in a packet determined by at least the CRC code value of the immediately preceding received packet;
Moving the stored data to the original CRC position and performing a CRC error check on the received packet;
When a CRC error is detected as a result of the CRC error check, a procedure of sequentially repeating the CRC error check with data at a plurality of predetermined positions in the received packet as CRC codes;
If no CRC error is detected while repeating the CRC error check, the CRC error check is erroneously determined if there is no loss and no CRC error for the immediately preceding received packet;
A CRC misjudgment detection method comprising a step of setting a CRC error for the received packet when a CRC error is detected even after repeating the CRC error check.
前記パケット内位置はCRCコードの下位nビットで定められることを特徴とする請求項1〜2に記載のCRC誤判定検出方法。   3. The CRC misjudgment detection method according to claim 1, wherein the in-packet position is determined by lower n bits of a CRC code. 前記本来のCRC位置はパケット内の末尾とすることを特徴とする請求項1〜3に記載のCRC誤判定検出方法。   4. The CRC misjudgment detection method according to claim 1, wherein the original CRC position is the end of the packet. 送信側は、
送信データに対するCRCコードを生成するCRCコード生成部と、
少なくとも直前の送信データに対して生成したCRCコードを順次に記憶するCRCコード記憶部と、
当該送信データのCRCコードを前記記憶した直前の送信データに対して生成したCRCコードの値で定まるパケット内位置に付加した送信パケットを送信するCRCコード付加部を有し、
受信側は、
少なくとも直前の受信パケットのCRCコードの値で定まるパケット内位置におけるデータを記憶するCRCコード記憶部と、
前記記憶したデータを本来のCRC位置へ移して当該受信パケットについてCRC誤り検査を行うCRCコード誤り検査部と、
前記CRC誤り検査の結果、CRC誤りを検出すると、当該受信パケットにおける予め定められた複数のパケット内位置におけるデータをCRCコードとして順次に前記CRC誤り検査を繰り返し、そのうちにCRC誤りを検出しない場合には直前の受信パケットについて、パケットロスが無く且つCRCエラーが無ければCRC誤り検査は誤判定とし、CRC誤りを検出する場合には当該受信パケットについてCRC誤りとするCRCコード位置サーチ部を有することを特徴とするCRC誤判定検出装置。
The sender is
A CRC code generator for generating a CRC code for transmission data;
A CRC code storage unit for sequentially storing CRC codes generated for at least the immediately preceding transmission data;
A CRC code adding unit for transmitting a transmission packet added to a position in the packet determined by the value of the CRC code generated for the transmission data immediately before the CRC code of the transmission data;
The receiving side
A CRC code storage unit for storing data at a position in the packet determined by at least the CRC code value of the immediately preceding received packet;
A CRC code error checking unit that moves the stored data to an original CRC position and performs a CRC error check on the received packet;
When a CRC error is detected as a result of the CRC error check, the CRC error check is sequentially repeated with data at a plurality of predetermined positions in the received packet as CRC codes, and no CRC error is detected in the meantime. If there is no packet loss and no CRC error with respect to the immediately preceding received packet, the CRC error check is determined to be erroneous, and when a CRC error is detected, a CRC code position search unit is provided that sets the CRC error for the received packet. A CRC misjudgment detection device as a feature.
JP2008296258A 2008-11-20 2008-11-20 Crc erroneous discrimination detection method and crc erroneous discrimination detection apparatus Pending JP2010124260A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008296258A JP2010124260A (en) 2008-11-20 2008-11-20 Crc erroneous discrimination detection method and crc erroneous discrimination detection apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008296258A JP2010124260A (en) 2008-11-20 2008-11-20 Crc erroneous discrimination detection method and crc erroneous discrimination detection apparatus

Publications (1)

Publication Number Publication Date
JP2010124260A true JP2010124260A (en) 2010-06-03

Family

ID=42325191

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008296258A Pending JP2010124260A (en) 2008-11-20 2008-11-20 Crc erroneous discrimination detection method and crc erroneous discrimination detection apparatus

Country Status (1)

Country Link
JP (1) JP2010124260A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019207697A1 (en) * 2018-04-25 2019-10-31 三菱電機株式会社 Information processing device, information processing method, and information processing program

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019207697A1 (en) * 2018-04-25 2019-10-31 三菱電機株式会社 Information processing device, information processing method, and information processing program
JPWO2019207697A1 (en) * 2018-04-25 2020-07-30 三菱電機株式会社 Information processing apparatus, information processing method, and information processing program
CN112005508A (en) * 2018-04-25 2020-11-27 三菱电机株式会社 Information processing apparatus, information processing method, and information processing program

Similar Documents

Publication Publication Date Title
RU2626094C2 (en) Method and device for improving transmission reliability of serial data transmission with flexible messages
RU2597467C2 (en) Method and device for adaptation of reliability of data transmission in serial bus system
RU2620989C2 (en) Method and apparatus for increasing throughput capacity in data transmission in serial bus system
RU2597501C2 (en) Method and device for serial transmission of data with flexible size and variable bit length
RU2603534C2 (en) Method and device for serial data transmission having a flexible message size and a variable bit length
US11146090B2 (en) Battery management system, and method and apparatus for transmitting information
JP6318713B2 (en) Error detection apparatus, error detection method, and error detection program
KR0175111B1 (en) Error correction apparatus and method
JP4322946B2 (en) Communication device
CN108337069B (en) Improved error rate reducing end parallel grouping CRC (Cyclic redundancy check) system
JP5536889B2 (en) Method and system for detecting a frame boundary of a data stream received at a forward error correction layer in Ethernet and a frame synchronization method and system for the data stream
JP3583148B2 (en) Variable length frame transmission method, transmitting apparatus and receiving apparatus
JP6668588B2 (en) Error correction device and error correction method
JP2010124260A (en) Crc erroneous discrimination detection method and crc erroneous discrimination detection apparatus
CN110474715B (en) Method and system for improving data transmission accuracy of Internet of things
CN108650047B (en) Serial data receiving real-time synchronous monitoring circuit and monitoring method
JP2007511982A (en) Check for message errors using checking for hidden data
US20050257117A1 (en) Method and circuit for determining an ending of an ethernet frame
KR101642440B1 (en) Network recovering method for ring network
JP5895238B2 (en) COMMUNICATION DEVICE, COMMUNICATION METHOD, AND COMMUNICATION PROGRAM
JP2017168917A (en) Serial communication apparatus
US11871166B2 (en) Sensor system
JP5308193B2 (en) Serial communication method
JP7279556B2 (en) Communication device, method and program
JP2007104423A (en) Method of error correction using repetition transmission scheme, communication system and reception apparatus