JPH0837464A - エラーチェックコード生成装置およびエラーチェック装置 - Google Patents
エラーチェックコード生成装置およびエラーチェック装置Info
- Publication number
- JPH0837464A JPH0837464A JP6172476A JP17247694A JPH0837464A JP H0837464 A JPH0837464 A JP H0837464A JP 6172476 A JP6172476 A JP 6172476A JP 17247694 A JP17247694 A JP 17247694A JP H0837464 A JPH0837464 A JP H0837464A
- Authority
- JP
- Japan
- Prior art keywords
- parity
- data
- code
- error
- error check
- 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
Links
Landscapes
- Detection And Correction Of Errors (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
(57)【要約】
【目的】 高い検出能力を有し、短いデータであっても
効率よくエラーチェックを行なうことのできるエラーチ
ェックコードを生成でき、また該エラーチェックコード
が付加されたデータのエラーチェックを行なう構成の簡
単な、エラーチェックコード生成装置およびエラーチェ
ック装置を提供する。 【構成】 8ビットの送信データD0〜D7に付加されるエ
ラーチェックコードP0〜P3は、送信データD0〜D7に0〜
7の番号を割り当て、この番号を2進表現した時の値
(000,001,…,111)の1桁目が0であるデータD0,D2,D
4,D6、2桁目が0であるデータD0,D1,D4,D5、3桁目が
0であるデータD0〜D3、3桁目が1であるデータD4〜D7
毎にそのパリティ符号を生成する排他的論理和回路XOR1
〜XOR4および反転回路NOT5〜NOT8により生成される。こ
のエラーチェックコードP0〜P3を用いることにより、デ
ータD0〜D7の任意の3ビット誤りが検出できる。
効率よくエラーチェックを行なうことのできるエラーチ
ェックコードを生成でき、また該エラーチェックコード
が付加されたデータのエラーチェックを行なう構成の簡
単な、エラーチェックコード生成装置およびエラーチェ
ック装置を提供する。 【構成】 8ビットの送信データD0〜D7に付加されるエ
ラーチェックコードP0〜P3は、送信データD0〜D7に0〜
7の番号を割り当て、この番号を2進表現した時の値
(000,001,…,111)の1桁目が0であるデータD0,D2,D
4,D6、2桁目が0であるデータD0,D1,D4,D5、3桁目が
0であるデータD0〜D3、3桁目が1であるデータD4〜D7
毎にそのパリティ符号を生成する排他的論理和回路XOR1
〜XOR4および反転回路NOT5〜NOT8により生成される。こ
のエラーチェックコードP0〜P3を用いることにより、デ
ータD0〜D7の任意の3ビット誤りが検出できる。
Description
【0001】
【産業上の利用分野】本発明は、シリアル通信におい
て、データのエラーをチェックするためにデータに付加
されるエラーチェックコードを生成し、また、そのエラ
ーチェックコードを用いてデータのエラーをチェックす
る、エラーチェックコード生成装置およびエラーチェッ
ク装置に関する。
て、データのエラーをチェックするためにデータに付加
されるエラーチェックコードを生成し、また、そのエラ
ーチェックコードを用いてデータのエラーをチェックす
る、エラーチェックコード生成装置およびエラーチェッ
ク装置に関する。
【0002】
【従来の技術】従来より、シリアル通信においてデータ
伝送時のエラーの有無を検査する方法として、パリティ
符号を用いた方法や、CRC符号を用いた方法等が知ら
れている。
伝送時のエラーの有無を検査する方法として、パリティ
符号を用いた方法や、CRC符号を用いた方法等が知ら
れている。
【0003】このうち、パリティ符号を用いたエラーチ
ェック方法は、送信側において、データ中に含まれるの
デジタルデータ「1」の数が偶数個あるいは奇数個ある
か(パリティ)によりセットされる1ビットのパリティ
符号をデータに付加すると共に、受信側においては、送
信側と同様にデータのパリティを求め、パリティ符号と
比較して、データに誤りがあるか否かを検査するもので
ある。このパリティ符号を生成する回路は、きわめて簡
単な回路にて構成することができ、また、パリティ符号
を付加したデータのエラーを検査するための回路も同様
に簡単な回路にて構成することができるのであるが、2
ビット誤りが検出できないため、同時に複数ビットの誤
りが生じるような場所、例えば車両内など外来ノイズの
多い環境下での使用には適さなかった。
ェック方法は、送信側において、データ中に含まれるの
デジタルデータ「1」の数が偶数個あるいは奇数個ある
か(パリティ)によりセットされる1ビットのパリティ
符号をデータに付加すると共に、受信側においては、送
信側と同様にデータのパリティを求め、パリティ符号と
比較して、データに誤りがあるか否かを検査するもので
ある。このパリティ符号を生成する回路は、きわめて簡
単な回路にて構成することができ、また、パリティ符号
を付加したデータのエラーを検査するための回路も同様
に簡単な回路にて構成することができるのであるが、2
ビット誤りが検出できないため、同時に複数ビットの誤
りが生じるような場所、例えば車両内など外来ノイズの
多い環境下での使用には適さなかった。
【0004】また、複数ビットの誤りを検出可能なエラ
ーチェック方法であるCRC符号を用いたエラーチェッ
ク方法は、例えば特開昭61−195453号公報に開
示されているように、伝送すべきデータを2進数の多項
式とみなし、この多項式を所定の生成多項式にて除算し
て得られる剰余をCRC符号としてデータに付加し、受
信側では、CRC符号を含めたデータを、CRC符号を
生成したものと同じ生成多項式にて除算し、その結果、
余りが0であれば、エラーが発生していないと判断する
ものである。
ーチェック方法であるCRC符号を用いたエラーチェッ
ク方法は、例えば特開昭61−195453号公報に開
示されているように、伝送すべきデータを2進数の多項
式とみなし、この多項式を所定の生成多項式にて除算し
て得られる剰余をCRC符号としてデータに付加し、受
信側では、CRC符号を含めたデータを、CRC符号を
生成したものと同じ生成多項式にて除算し、その結果、
余りが0であれば、エラーが発生していないと判断する
ものである。
【0005】
【発明が解決しようとする課題】しかし、CRC符号を
用いたエラーチェック方法は、データ長が比較的長い場
合には、データ長に対してCRC符号長が比較的短く、
また、そのエラー検出能力の割には回路規模を比較的小
さくすることができるのであるが、データ長が短かい場
合、データ長に対してCRC符号長はそれほど短くなら
ないため、伝送効率が悪くなり、また、回路規模も小さ
くできないという問題があった。更に、エラー検出能力
は任意の2ビット誤りまでであり、3ビット以上の誤り
は、検出できない場合があった。なお、任意の3ビット
誤りまで検出可能とする方法として、生成多項式に(X
+1)の項を乗じる方法も知られているが、この方法で
は、検出能力を向上させることができるものの、CRC
符号が1ビット長くなってしまうという問題があった。
用いたエラーチェック方法は、データ長が比較的長い場
合には、データ長に対してCRC符号長が比較的短く、
また、そのエラー検出能力の割には回路規模を比較的小
さくすることができるのであるが、データ長が短かい場
合、データ長に対してCRC符号長はそれほど短くなら
ないため、伝送効率が悪くなり、また、回路規模も小さ
くできないという問題があった。更に、エラー検出能力
は任意の2ビット誤りまでであり、3ビット以上の誤り
は、検出できない場合があった。なお、任意の3ビット
誤りまで検出可能とする方法として、生成多項式に(X
+1)の項を乗じる方法も知られているが、この方法で
は、検出能力を向上させることができるものの、CRC
符号が1ビット長くなってしまうという問題があった。
【0006】本発明は、上記問題点を解決するために、
高い検出能力を有し、短いデータであっても効率よくエ
ラーチェックを行なうことのできるエラーチェックコー
ドを生成でき、また該エラーチェックコードが付加され
たデータのエラーチェックを行なう構成の簡単な、エラ
ーチェックコード生成装置およびエラーチェック装置を
提供することを目的とする。
高い検出能力を有し、短いデータであっても効率よくエ
ラーチェックを行なうことのできるエラーチェックコー
ドを生成でき、また該エラーチェックコードが付加され
たデータのエラーチェックを行なう構成の簡単な、エラ
ーチェックコード生成装置およびエラーチェック装置を
提供することを目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するため
になされた請求項1に記載の発明は、2n (n>1)個
の2値化データからなるシリアルデータのエラーチェッ
クコードを生成するエラーチェックコード生成装置であ
って、上記2値化データの各ビットに0から2n−1 ま
での番号を順番に割り当て、該番号を2進表現して得ら
れるn桁の2進値の各桁毎に、当該桁の値が0または1
の所定値となる上記2進値を抽出し、該抽出された2進
値に対応する上記番号が割り当てられた2n-1 個の上記
2値化データを夫々第1ないし第nのグループとし、各
グループに属する2値化データを夫々対象としたn個の
パリティ符号を生成するn個のパリティ符号生成手段
と、上記第1ないし第nのグループのいずれかにおいて
該グループの対象とならなかった2n-1 個の2値化デー
タを第n+1のグループとし、当該グループに属する2
値化データを対象としたパリティ符号を生成するパリテ
ィ符号生成手段と、を備え、上記各パリティ符号生成手
段にて生成されたn+1個のパリティ符号を上記シリア
ルデータのエラーチェックコードとして出力することを
特徴とする。
になされた請求項1に記載の発明は、2n (n>1)個
の2値化データからなるシリアルデータのエラーチェッ
クコードを生成するエラーチェックコード生成装置であ
って、上記2値化データの各ビットに0から2n−1 ま
での番号を順番に割り当て、該番号を2進表現して得ら
れるn桁の2進値の各桁毎に、当該桁の値が0または1
の所定値となる上記2進値を抽出し、該抽出された2進
値に対応する上記番号が割り当てられた2n-1 個の上記
2値化データを夫々第1ないし第nのグループとし、各
グループに属する2値化データを夫々対象としたn個の
パリティ符号を生成するn個のパリティ符号生成手段
と、上記第1ないし第nのグループのいずれかにおいて
該グループの対象とならなかった2n-1 個の2値化デー
タを第n+1のグループとし、当該グループに属する2
値化データを対象としたパリティ符号を生成するパリテ
ィ符号生成手段と、を備え、上記各パリティ符号生成手
段にて生成されたn+1個のパリティ符号を上記シリア
ルデータのエラーチェックコードとして出力することを
特徴とする。
【0008】また、請求項2に記載の発明は、2n 個の
2値化データに、請求項1に記載のエラーチェックコー
ド生成装置により生成された上記エラーチェックコード
が付加されたシリアルデータのビット誤りを検出するエ
ラーチェック装置であって、上記2n 個の2値化データ
を上記第1ないし第n+1のグループにグループ分け
し、各グループ毎に、当該グループに属する2n-1 個の
2値化データを対象としたパリティ符号を生成するn+
1個のパリティ符号生成手段と、該各パリティ符号生成
手段にて生成されたn+1個のパリティ符号と、上記エ
ラーチェックコードとして上記シリアルデータに付加さ
れたn+1個のパリティ符号とを対応するグループ毎に
比較することにより、各グループ毎にパリティエラーを
夫々検出するn+1個のパリティチェック手段と、を備
えたことを特徴とする。
2値化データに、請求項1に記載のエラーチェックコー
ド生成装置により生成された上記エラーチェックコード
が付加されたシリアルデータのビット誤りを検出するエ
ラーチェック装置であって、上記2n 個の2値化データ
を上記第1ないし第n+1のグループにグループ分け
し、各グループ毎に、当該グループに属する2n-1 個の
2値化データを対象としたパリティ符号を生成するn+
1個のパリティ符号生成手段と、該各パリティ符号生成
手段にて生成されたn+1個のパリティ符号と、上記エ
ラーチェックコードとして上記シリアルデータに付加さ
れたn+1個のパリティ符号とを対応するグループ毎に
比較することにより、各グループ毎にパリティエラーを
夫々検出するn+1個のパリティチェック手段と、を備
えたことを特徴とする。
【0009】次に、請求項3に記載の発明は、請求項1
に記載のエラーチェックコード生成装置において、更
に、上記各パリティ符号生成手段により生成されたn+
1個のパリティ符号を第n+2のグループとし、当該グ
ループに属するn+1個のパリティ符号を対象としたパ
リティ符号を生成するパリティ符号生成手段を設け、該
パリティ符号生成手段を含むn+2個のパリティ符号生
成手段にて生成されたn+2個のパリティ符号をエラー
チェックコードとして出力することを特徴とする。
に記載のエラーチェックコード生成装置において、更
に、上記各パリティ符号生成手段により生成されたn+
1個のパリティ符号を第n+2のグループとし、当該グ
ループに属するn+1個のパリティ符号を対象としたパ
リティ符号を生成するパリティ符号生成手段を設け、該
パリティ符号生成手段を含むn+2個のパリティ符号生
成手段にて生成されたn+2個のパリティ符号をエラー
チェックコードとして出力することを特徴とする。
【0010】また、請求項4に記載の発明は、2n 個の
2値化データに、請求項3に記載のエラーチェックコー
ド生成装置により生成された上記エラーチェックコード
が付加されたシリアルデータのビット誤りを検出するエ
ラーチェック装置であって、上記2n 個の2値化データ
を上記第1ないし第n+1のグループにグループ分け
し、各グループ毎に、当該グループに属する2n-1 個の
2値化データを対象としたパリティ符号を生成するn+
1個のパリティ符号生成手段と、上記エラーチェックコ
ードとして上記シリアルデータ付加された上記第1ない
し第n+1のグループに対応するn+1個のパリティ符
号を第n+2のグループとし、当該グループに属するn
+1個のパリティ符号を対象としたパリティ符号を生成
するパリティ符号生成手段と、該パリティ符号生成手段
を含むn+2個の上記パリティ符号生成手段により生成
されたn+2個のパリティ符号と、上記エラーチェック
コードとして上記シリアルデータに付加されたn+2個
のパリティ符号とを対応するグループ毎に比較すること
により、各グループ毎にパリティエラーを夫々検出する
n+2個のパリティチェック手段と、上記第n+2のグ
ループに対応したパリティチェック手段により、当該グ
ループに属する第1ないし第n+1のグループに対応し
たn+1個のパリティ符号に誤りがないことが確認され
ると、第1ないし第n+1のグループに対応したn+1
個のパリティチェック手段による検出結果に基づき、誤
りビットの訂正を行なう誤り訂正手段と、を備えたこと
を特徴とする。
2値化データに、請求項3に記載のエラーチェックコー
ド生成装置により生成された上記エラーチェックコード
が付加されたシリアルデータのビット誤りを検出するエ
ラーチェック装置であって、上記2n 個の2値化データ
を上記第1ないし第n+1のグループにグループ分け
し、各グループ毎に、当該グループに属する2n-1 個の
2値化データを対象としたパリティ符号を生成するn+
1個のパリティ符号生成手段と、上記エラーチェックコ
ードとして上記シリアルデータ付加された上記第1ない
し第n+1のグループに対応するn+1個のパリティ符
号を第n+2のグループとし、当該グループに属するn
+1個のパリティ符号を対象としたパリティ符号を生成
するパリティ符号生成手段と、該パリティ符号生成手段
を含むn+2個の上記パリティ符号生成手段により生成
されたn+2個のパリティ符号と、上記エラーチェック
コードとして上記シリアルデータに付加されたn+2個
のパリティ符号とを対応するグループ毎に比較すること
により、各グループ毎にパリティエラーを夫々検出する
n+2個のパリティチェック手段と、上記第n+2のグ
ループに対応したパリティチェック手段により、当該グ
ループに属する第1ないし第n+1のグループに対応し
たn+1個のパリティ符号に誤りがないことが確認され
ると、第1ないし第n+1のグループに対応したn+1
個のパリティチェック手段による検出結果に基づき、誤
りビットの訂正を行なう誤り訂正手段と、を備えたこと
を特徴とする。
【0011】また次に、請求項5に記載の発明は、請求
項1または請求項3に記載のエラーチェックコード生成
装置であって、上記各パリティ符号生成手段は、外部か
らの指示に従い、偶数パリティあるいは奇数パリティの
いずれによるパリティ符号でも生成可能であることを特
徴とする。
項1または請求項3に記載のエラーチェックコード生成
装置であって、上記各パリティ符号生成手段は、外部か
らの指示に従い、偶数パリティあるいは奇数パリティの
いずれによるパリティ符号でも生成可能であることを特
徴とする。
【0012】
【作用及び発明の効果】上記のように構成された請求項
1に記載のエラーチェックコード生成装置においては、
まず、2n 個の2値化データからなるシリアルデータの
各ビットは、次のようにグループ分けされる。即ち、2
n 個の2値化データの各ビットに、0から2n−1 まで
の番号を割り当て、該番号を2進表現して得られるn桁
の2進値の各桁毎に、当該桁の値が0または1の所定値
となる上記2進値を抽出し、該抽出された2進値に対応
する上記番号が割り当てられている2n-1 個の2値化デ
ータが、夫々第1ないし第nのグループとされる。ま
た、第1ないし第nのグループのいずれかにおいて該グ
ループの対象とならなかった2n-1 個の2値化データが
第n+1のグループとされる。
1に記載のエラーチェックコード生成装置においては、
まず、2n 個の2値化データからなるシリアルデータの
各ビットは、次のようにグループ分けされる。即ち、2
n 個の2値化データの各ビットに、0から2n−1 まで
の番号を割り当て、該番号を2進表現して得られるn桁
の2進値の各桁毎に、当該桁の値が0または1の所定値
となる上記2進値を抽出し、該抽出された2進値に対応
する上記番号が割り当てられている2n-1 個の2値化デ
ータが、夫々第1ないし第nのグループとされる。ま
た、第1ないし第nのグループのいずれかにおいて該グ
ループの対象とならなかった2n-1 個の2値化データが
第n+1のグループとされる。
【0013】例えば、n=2のとした場合は、4個の2
値化データD0〜D3には、夫々、0〜3の番号が割り
当てられ、この番号を2進表現して得られる2桁の2進
値(00,01,10,11)の1桁目の値が0である
2進値を抽出し、その2進値に対応する番号が割り当て
られているデータD0,D2が第1のグループとされ、
同様に、2桁目の値が0である2進値を抽出し、その2
進値に対応する番号が割り当てられているデータD0,
D1が第2のグループとされ、更に、第2のグループの
対象とならなかったデータD2,D3が第3のグループ
とされる。なお、第1および第2のグループは、割り当
てられた番号の各桁の値が夫々1であるデータにより構
成してもよく、また、第3のグループは、第1のグルー
プの対象とならなかったデータにより構成してもよい。
値化データD0〜D3には、夫々、0〜3の番号が割り
当てられ、この番号を2進表現して得られる2桁の2進
値(00,01,10,11)の1桁目の値が0である
2進値を抽出し、その2進値に対応する番号が割り当て
られているデータD0,D2が第1のグループとされ、
同様に、2桁目の値が0である2進値を抽出し、その2
進値に対応する番号が割り当てられているデータD0,
D1が第2のグループとされ、更に、第2のグループの
対象とならなかったデータD2,D3が第3のグループ
とされる。なお、第1および第2のグループは、割り当
てられた番号の各桁の値が夫々1であるデータにより構
成してもよく、また、第3のグループは、第1のグルー
プの対象とならなかったデータにより構成してもよい。
【0014】そして、n+1個のパリティ符号生成手段
が、夫々、第1ないし第n+1のグループに属する2
n-1 個の2値化データを対象としてn+1個のパリティ
符号を生成する。ここで生成されたn+1個のパリティ
符号がエラーチェックコードとして上記2n 個の2値化
データからなるシリアルデータに付加される。
が、夫々、第1ないし第n+1のグループに属する2
n-1 個の2値化データを対象としてn+1個のパリティ
符号を生成する。ここで生成されたn+1個のパリティ
符号がエラーチェックコードとして上記2n 個の2値化
データからなるシリアルデータに付加される。
【0015】一方、請求項2に記載のエラーチェック装
置においては、2n 個の2値化データに、請求項1に記
載のエラーチェックコード生成装置により生成されたエ
ラーチェックコードが付加されたシリアルデータが入力
され、このうちエラーチェックの対象となる上記2n 個
の2値化データが、請求項1に記載のエラーチェックコ
ード生成装置と同様に、第1ないし第n+1のグループ
にグループ分けされる。
置においては、2n 個の2値化データに、請求項1に記
載のエラーチェックコード生成装置により生成されたエ
ラーチェックコードが付加されたシリアルデータが入力
され、このうちエラーチェックの対象となる上記2n 個
の2値化データが、請求項1に記載のエラーチェックコ
ード生成装置と同様に、第1ないし第n+1のグループ
にグループ分けされる。
【0016】そして、n+1個のパリティ符号生成手段
が、上記各グループ毎に、当該グループに属する2n-1
個の2値化データを対象としたパリティ符号を夫々生成
する。また、n+1個のパリティチェック手段が、パリ
ティ符号生成手段にて生成されたn+1個のパリティ符
号と、エラーチェックコードとしてシリアルデータに付
加されたn+1個のパリティ符号とを、対応するグルー
プ毎に夫々比較し、各グループのパリティエラーを検出
する。
が、上記各グループ毎に、当該グループに属する2n-1
個の2値化データを対象としたパリティ符号を夫々生成
する。また、n+1個のパリティチェック手段が、パリ
ティ符号生成手段にて生成されたn+1個のパリティ符
号と、エラーチェックコードとしてシリアルデータに付
加されたn+1個のパリティ符号とを、対応するグルー
プ毎に夫々比較し、各グループのパリティエラーを検出
する。
【0017】従って、請求項1に記載のエラーチェック
コード生成装置にて生成されたエラーチェックコードが
付加されたデータを、請求項2に記載のエラーチェック
装置にてエラーチェックすれば、2n 個の2値化データ
からなるシリアルデータ任意の3個のビット誤りまで検
出することができる。
コード生成装置にて生成されたエラーチェックコードが
付加されたデータを、請求項2に記載のエラーチェック
装置にてエラーチェックすれば、2n 個の2値化データ
からなるシリアルデータ任意の3個のビット誤りまで検
出することができる。
【0018】即ち、第n+1のグループが、第1ないし
第nのグループのいずれかにおいて、該グループ(ここ
では第kのグループとする。但し、1≦k≦n)の対象
とならなかった2n-1 個の2値化データからなることに
より、ビット誤りを起こした2値化データは、必ず第k
あるいは第n+1のグループに属することになる。この
ため、2値化データが奇数個のビット誤りを起こしてい
る場合には、第kあるいは第n+1のグループのいずれ
かが、必ず奇数個の誤りビットを含むことになり、第k
あるいは第n+1のパリティチェック手段のいずれかに
より、必ずパリティエラーが検出されることになる。
第nのグループのいずれかにおいて、該グループ(ここ
では第kのグループとする。但し、1≦k≦n)の対象
とならなかった2n-1 個の2値化データからなることに
より、ビット誤りを起こした2値化データは、必ず第k
あるいは第n+1のグループに属することになる。この
ため、2値化データが奇数個のビット誤りを起こしてい
る場合には、第kあるいは第n+1のグループのいずれ
かが、必ず奇数個の誤りビットを含むことになり、第k
あるいは第n+1のパリティチェック手段のいずれかに
より、必ずパリティエラーが検出されることになる。
【0019】また、2値化データが2個のビット誤りを
起こしている場合、第kあるいは第n+1のグループ
に、夫々1個づつ誤りビットが含まれていれば、第kお
よび第n+1のパリティチェック手段により、必ずパリ
ティエラーが検出される。一方、誤った2値化データ
が、2個とも第kあるいは第n+1のグループの一方に
含まれている場合、第kおよび第n+1のパリティチェ
ック手段では、エラーを検出できないが、第kのグルー
プを除く第1ないし第nのグループには、必ず、誤った
2個の2値化データのうち一方しか含まないものがある
ので、そのグループを対象としてパリティチェックを行
なうパリティチェック手段により、必ずパリティエラー
が検出される。
起こしている場合、第kあるいは第n+1のグループ
に、夫々1個づつ誤りビットが含まれていれば、第kお
よび第n+1のパリティチェック手段により、必ずパリ
ティエラーが検出される。一方、誤った2値化データ
が、2個とも第kあるいは第n+1のグループの一方に
含まれている場合、第kおよび第n+1のパリティチェ
ック手段では、エラーを検出できないが、第kのグルー
プを除く第1ないし第nのグループには、必ず、誤った
2個の2値化データのうち一方しか含まないものがある
ので、そのグループを対象としてパリティチェックを行
なうパリティチェック手段により、必ずパリティエラー
が検出される。
【0020】つまり、任意の2個のビット誤りを必ず検
出することができ、また任意の奇数個のビット誤りも必
ず検出できるので、任意の3個のビット誤りまでは、確
実に検出できるのである。また、本発明の主要部分であ
るエラーチェックコード生成装置におけるパリティ符号
生成手段およびエラーチェック装置におけるパリティチ
ェック手段は、いずれも、例えば多入力の排他的論理和
回路を中心とした簡単な論理回路により構成することが
できるので、極めて構成が簡単であり、装置を小型化す
ることができる。
出することができ、また任意の奇数個のビット誤りも必
ず検出できるので、任意の3個のビット誤りまでは、確
実に検出できるのである。また、本発明の主要部分であ
るエラーチェックコード生成装置におけるパリティ符号
生成手段およびエラーチェック装置におけるパリティチ
ェック手段は、いずれも、例えば多入力の排他的論理和
回路を中心とした簡単な論理回路により構成することが
できるので、極めて構成が簡単であり、装置を小型化す
ることができる。
【0021】次に、請求項3に記載のエラーチェックコ
ード生成装置においては、請求項1に記載のエラーチェ
ックコード生成装置に、更に、n+2個目のパリティ符
号生成手段が設けられており、このパリティ符号生成手
段が、上記第1ないし第n+1のグループに対応したn
+1個のパリティ符号生成手段により生成されたn+1
個のパリティ符号を第n+2のグループとし、当該グル
ープを対象としたパリティ符号を生成する。そして、こ
のパリティ符号生成手段を含むn+2個のパリティ符号
生成手段にて生成されるn+2個のパリティ符号が、エ
ラーチェックコードとして2n 個の2値化データからな
るシリアルデータに付加される。
ード生成装置においては、請求項1に記載のエラーチェ
ックコード生成装置に、更に、n+2個目のパリティ符
号生成手段が設けられており、このパリティ符号生成手
段が、上記第1ないし第n+1のグループに対応したn
+1個のパリティ符号生成手段により生成されたn+1
個のパリティ符号を第n+2のグループとし、当該グル
ープを対象としたパリティ符号を生成する。そして、こ
のパリティ符号生成手段を含むn+2個のパリティ符号
生成手段にて生成されるn+2個のパリティ符号が、エ
ラーチェックコードとして2n 個の2値化データからな
るシリアルデータに付加される。
【0022】一方、請求項4に記載のエラーチェック装
置においては、2n 個の2値化データに、請求項3に記
載のエラーチェックコード生成装置により生成されたエ
ラーチェックコードが付加されたシリアルデータが入力
され、このうちエラーチェックの対象となる上記2n 個
の2値化データが、請求項1に記載のエラーチェックコ
ード生成装置と同様に、第1ないし第n+1のグループ
にグループ分けされ、また、エラーチェックコードとし
て上記シリアルデータに付加された第1ないし第n+1
のグループに対応するn+1個のパリティ符号が、第n
+2のグループとされる。
置においては、2n 個の2値化データに、請求項3に記
載のエラーチェックコード生成装置により生成されたエ
ラーチェックコードが付加されたシリアルデータが入力
され、このうちエラーチェックの対象となる上記2n 個
の2値化データが、請求項1に記載のエラーチェックコ
ード生成装置と同様に、第1ないし第n+1のグループ
にグループ分けされ、また、エラーチェックコードとし
て上記シリアルデータに付加された第1ないし第n+1
のグループに対応するn+1個のパリティ符号が、第n
+2のグループとされる。
【0023】そして、n+2個のパリティ符号生成手段
が、上記第1ないし第n+1の各グループ毎に、当該グ
ループに属する2n-1 個の2値化データ、あるいは第n
+2のグループに属するエラーチェックデータとしてシ
リアルデータに付加された上記各グループに対応するパ
リティ符号を対象としたパリティ符号を夫々生成する。
が、上記第1ないし第n+1の各グループ毎に、当該グ
ループに属する2n-1 個の2値化データ、あるいは第n
+2のグループに属するエラーチェックデータとしてシ
リアルデータに付加された上記各グループに対応するパ
リティ符号を対象としたパリティ符号を夫々生成する。
【0024】更に、n+2個のパリティチェック手段
が、各パリティ符号生成手段にて夫々生成されたn+2
個のパリティ符号と、エラーチェックコードとしてシリ
アルデータに付加されたn+2個のパリティ符号とを、
対応する各グループ毎に夫々比較し、各グループのパリ
ティエラーを検出する。
が、各パリティ符号生成手段にて夫々生成されたn+2
個のパリティ符号と、エラーチェックコードとしてシリ
アルデータに付加されたn+2個のパリティ符号とを、
対応する各グループ毎に夫々比較し、各グループのパリ
ティエラーを検出する。
【0025】その結果、第n+2のグループに対応した
パリティチェック手段により、当該グループに属する第
1ないし第n+1のグループに対応したn+1個のパリ
ティ符号に誤りがないことが確認されると、誤り訂正手
段が、第1ないし第n+1のグループに対応したパリテ
ィチェック手段による検出結果に基づき、誤りビットの
訂正を行なう。
パリティチェック手段により、当該グループに属する第
1ないし第n+1のグループに対応したn+1個のパリ
ティ符号に誤りがないことが確認されると、誤り訂正手
段が、第1ないし第n+1のグループに対応したパリテ
ィチェック手段による検出結果に基づき、誤りビットの
訂正を行なう。
【0026】従って、請求項3に記載のエラーチェック
コード生成装置にて生成されたエラーチェックコードが
付加されたデータを、請求項4に記載のエラーチェック
装置にてエラーチェックすることにより、2n 個の2値
化データからなるシリアルデータの任意の1ビット誤り
であれば、これを訂正することができる。
コード生成装置にて生成されたエラーチェックコードが
付加されたデータを、請求項4に記載のエラーチェック
装置にてエラーチェックすることにより、2n 個の2値
化データからなるシリアルデータの任意の1ビット誤り
であれば、これを訂正することができる。
【0027】即ち、上述したように、2n 個の各2値化
データを、各ビット毎に番号を割り当て、その番号を2
進表現して得られるn桁の2進値における各桁の0/1
の値に従ってグループ分けしたことにより、2n 個の2
値化データの各ビットは、全てが互いに、その属するグ
ループのパタンが異なる。従って、2値化データに1ビ
ット誤りがある場合、誤ったビットが属するグループの
パリティが誤りとなるため、第1ないし第(n+1)の
パリティチェック手段による検出結果のパタンは、誤っ
たビットに対応して、夫々異なったパタンとなる。この
ため、パリティ符号に誤りがないことが確認できれば、
この検出結果のパタンに従って、誤った1ビットを特定
することができ、訂正できるのである。
データを、各ビット毎に番号を割り当て、その番号を2
進表現して得られるn桁の2進値における各桁の0/1
の値に従ってグループ分けしたことにより、2n 個の2
値化データの各ビットは、全てが互いに、その属するグ
ループのパタンが異なる。従って、2値化データに1ビ
ット誤りがある場合、誤ったビットが属するグループの
パリティが誤りとなるため、第1ないし第(n+1)の
パリティチェック手段による検出結果のパタンは、誤っ
たビットに対応して、夫々異なったパタンとなる。この
ため、パリティ符号に誤りがないことが確認できれば、
この検出結果のパタンに従って、誤った1ビットを特定
することができ、訂正できるのである。
【0028】次に、請求項5に記載のエラーチェックコ
ード生成装置においては、各パリティ符号生成手段が、
外部からの指示に従い、偶数パリティあるいは奇数パリ
ティのいずれによるパリティ符号でも生成可能にされて
いる。従って、受信側をグループ分けし、一方のグルー
プでは、偶数パリティにてチェックを行ない、他方のグ
ループでは奇数パリティにてチェックを行なうように
し、送信側は、送信したいグループに応じて、使用する
パリティを切り替えれば、送信するデータにアドレス等
を付加することなく、希望の端末に選択的にデータを受
信させることができる。
ード生成装置においては、各パリティ符号生成手段が、
外部からの指示に従い、偶数パリティあるいは奇数パリ
ティのいずれによるパリティ符号でも生成可能にされて
いる。従って、受信側をグループ分けし、一方のグルー
プでは、偶数パリティにてチェックを行ない、他方のグ
ループでは奇数パリティにてチェックを行なうように
し、送信側は、送信したいグループに応じて、使用する
パリティを切り替えれば、送信するデータにアドレス等
を付加することなく、希望の端末に選択的にデータを受
信させることができる。
【0029】
【実施例】以下に本発明の実施例を図面と共に説明す
る。図2は、本発明が適用された実施例の車両用通信シ
ステムの全体構成を表すブロック図である。
る。図2は、本発明が適用された実施例の車両用通信シ
ステムの全体構成を表すブロック図である。
【0030】図2に示すように、本実施例の車両用通信
システムは、車両に搭載された各種機器の制御を行なう
電子制御装置(以下、ECUと呼ぶ)4が搭載されたマ
スタノード(以下、単にマスタと呼ぶ)Mと、ECU4
により制御されるモータや電磁弁等のアクチュエータA
1,A2,…が夫々搭載された複数のスレーブノード
(以下、単にスレーブと呼ぶ)S1,S2,…と、マス
タMと各スレーブS1,S2,…とをバス状に接続する
伝送線路BUSとからなる。
システムは、車両に搭載された各種機器の制御を行なう
電子制御装置(以下、ECUと呼ぶ)4が搭載されたマ
スタノード(以下、単にマスタと呼ぶ)Mと、ECU4
により制御されるモータや電磁弁等のアクチュエータA
1,A2,…が夫々搭載された複数のスレーブノード
(以下、単にスレーブと呼ぶ)S1,S2,…と、マス
タMと各スレーブS1,S2,…とをバス状に接続する
伝送線路BUSとからなる。
【0031】なお、伝送線路BUSは、マスタMおよび
スレーブS1,S2,…間の制御信号をシリアル通信で
送受するための信号線Lと、マスタMから各スレーブS
1,S2,…に電源を供給する電源線Vと、信号線Lお
よび電源線Vの基準電位を定めるグランド線Gとからな
る。
スレーブS1,S2,…間の制御信号をシリアル通信で
送受するための信号線Lと、マスタMから各スレーブS
1,S2,…に電源を供給する電源線Vと、信号線Lお
よび電源線Vの基準電位を定めるグランド線Gとからな
る。
【0032】そして信号線L上では、伝送符号としてN
RZ(non-return to zero)符号を用いたシリアル双方
向通信が行なわれ、その信号レベルは、どのノードも送
信を行なっていない場合、ハイレベル(Hレベル)とな
り、送信を行っている場合に、ロウレベル(Lレベル)
が現れるようにされている。
RZ(non-return to zero)符号を用いたシリアル双方
向通信が行なわれ、その信号レベルは、どのノードも送
信を行なっていない場合、ハイレベル(Hレベル)とな
り、送信を行っている場合に、ロウレベル(Lレベル)
が現れるようにされている。
【0033】図3は、マスタMとスレーブS1,S2,
…との間で信号線Lを介して送受信される伝送データの
フレームフォーマットである。図3に示すように、スレ
ーブS1,S2,…がフレームを検出するため、および
通信速度を学習するためにフレームの先頭に設けられた
前置領域PAと、マスタMからスレーブS1,S2,…
への送信データを格納するデータ領域DAと、データ領
域DAのエラーの有無をスレーブS1,S2,…からマ
スタMに通知するための応答領域RAとからなる。な
お、フレームの前後は、無信号状態IDLEとなってい
る。
…との間で信号線Lを介して送受信される伝送データの
フレームフォーマットである。図3に示すように、スレ
ーブS1,S2,…がフレームを検出するため、および
通信速度を学習するためにフレームの先頭に設けられた
前置領域PAと、マスタMからスレーブS1,S2,…
への送信データを格納するデータ領域DAと、データ領
域DAのエラーの有無をスレーブS1,S2,…からマ
スタMに通知するための応答領域RAとからなる。な
お、フレームの前後は、無信号状態IDLEとなってい
る。
【0034】ここで、前置領域PAは、1ビット長のL
レベル区間SLと、1ビット長のHレベル区間SHとで
構成されたSOF符号(Start of frame)からなる。ま
た、データ領域DAは、5ビットを1単位とした3つの
基本ブロックBLn(n=1〜3)からなり、各基本ブ
ロックBLnは、4ビットのデータと、4ビット目のデ
ータを反転させて生成する同期ビットとからなる。この
同期ビットを設けたことにより、どの様などのようなデ
ータを送信してもフレーム内において、6ビット長以上
同一の信号レベルが発生することがなく、6ビット長以
上の同一信号レベルが発生するのは無信号状態IDLE
の時だけとなる。
レベル区間SLと、1ビット長のHレベル区間SHとで
構成されたSOF符号(Start of frame)からなる。ま
た、データ領域DAは、5ビットを1単位とした3つの
基本ブロックBLn(n=1〜3)からなり、各基本ブ
ロックBLnは、4ビットのデータと、4ビット目のデ
ータを反転させて生成する同期ビットとからなる。この
同期ビットを設けたことにより、どの様などのようなデ
ータを送信してもフレーム内において、6ビット長以上
同一の信号レベルが発生することがなく、6ビット長以
上の同一信号レベルが発生するのは無信号状態IDLE
の時だけとなる。
【0035】なお、最初の2つの基本ブロックBL1,
BL2には、夫々送信データD0〜D3,D4〜D7が
設定され、最後の基本ブロックBL3には、後述するエ
ラーチェックコードP0〜P3が設定される。また、送
信データD0〜D3の4ビットがスレーブS1の制御用
に使用され、送信データD4〜D7の4ビットがスレー
ブS2の制御用に使用される。
BL2には、夫々送信データD0〜D3,D4〜D7が
設定され、最後の基本ブロックBL3には、後述するエ
ラーチェックコードP0〜P3が設定される。また、送
信データD0〜D3の4ビットがスレーブS1の制御用
に使用され、送信データD4〜D7の4ビットがスレー
ブS2の制御用に使用される。
【0036】応答領域RAは、スレーブS1,S2,…
がデータ領域DAをエラーなく受信した場合に、スレー
ブS1,S2,…によりHレベルに設定されるACKビ
ットと、受信したデータ領域DAにエラーがあった場合
に、スレーブS1,S2,…によりHレベルに設定され
るNCKビットとからなる。
がデータ領域DAをエラーなく受信した場合に、スレー
ブS1,S2,…によりHレベルに設定されるACKビ
ットと、受信したデータ領域DAにエラーがあった場合
に、スレーブS1,S2,…によりHレベルに設定され
るNCKビットとからなる。
【0037】次に、マスタMには、図2に示すように、
上記ECU4の他、マスタM内の各部に電源を供給する
と共に、各スレーブS1,S2,…にも電源線Vを介し
て電源を供給するための電源回路2と、ECU4が生成
する制御信号を伝送データに変換して信号線Lに送出す
ると共に、伝送データ送出後にスレーブS1,S2,…
より送出されるACKビットあるいはNCKビットを受
信する送信回路6とが設けられている。なお、ECU4
は、CPU,ROM,RAMを中心に構成された周知の
マイクロコンピュータからなり、図示しない各種センサ
からの入力により、車速,エンジン回転数等の車両各部
の状態を監視し、これに基づき、スレーブS1,S2,
…に搭載された各種アクチュエータを駆動するための制
御信号を生成する。
上記ECU4の他、マスタM内の各部に電源を供給する
と共に、各スレーブS1,S2,…にも電源線Vを介し
て電源を供給するための電源回路2と、ECU4が生成
する制御信号を伝送データに変換して信号線Lに送出す
ると共に、伝送データ送出後にスレーブS1,S2,…
より送出されるACKビットあるいはNCKビットを受
信する送信回路6とが設けられている。なお、ECU4
は、CPU,ROM,RAMを中心に構成された周知の
マイクロコンピュータからなり、図示しない各種センサ
からの入力により、車速,エンジン回転数等の車両各部
の状態を監視し、これに基づき、スレーブS1,S2,
…に搭載された各種アクチュエータを駆動するための制
御信号を生成する。
【0038】一方、スレーブS1,S2,…には、上記
アクチュエータA1,A2,…の他、信号線Lを介して
マスタMから伝送データを受信すると共に、この伝送デ
ータの受信の成否をマスタMに通知するために、ACK
ビットあるいはNCKビットを送出する受信回路8と、
受信回路8が受信したデータの内容を解読し、アクチュ
エータA1,A2,…を駆動するための駆動信号を出力
する駆動制御回路10とが設けられている。ここで、ス
レーブS1のアクチュエータA1としては、トラクショ
ンコントロールに使用するスロットルバルブを駆動する
ための4相ステップモータが、またスレーブS2のアク
チュエータA2としては、油圧回路を切り替えてホイー
ルシリンダのブレーキ油圧を制御する電磁ソレノイドが
接続されている。
アクチュエータA1,A2,…の他、信号線Lを介して
マスタMから伝送データを受信すると共に、この伝送デ
ータの受信の成否をマスタMに通知するために、ACK
ビットあるいはNCKビットを送出する受信回路8と、
受信回路8が受信したデータの内容を解読し、アクチュ
エータA1,A2,…を駆動するための駆動信号を出力
する駆動制御回路10とが設けられている。ここで、ス
レーブS1のアクチュエータA1としては、トラクショ
ンコントロールに使用するスロットルバルブを駆動する
ための4相ステップモータが、またスレーブS2のアク
チュエータA2としては、油圧回路を切り替えてホイー
ルシリンダのブレーキ油圧を制御する電磁ソレノイドが
接続されている。
【0039】これにより、ECU4にて生成されたアク
チュエータ駆動用の制御信号は、送信回路6,信号線L
を介して各スレーブS1,S2,…の受信回路8にて受
信され、駆動制御回路10が、受信した制御信号に応じ
た駆動信号を生成して、アクチュエータA1,A2,…
を動作させ、トラクション制御やスキッド制御を行な
う。
チュエータ駆動用の制御信号は、送信回路6,信号線L
を介して各スレーブS1,S2,…の受信回路8にて受
信され、駆動制御回路10が、受信した制御信号に応じ
た駆動信号を生成して、アクチュエータA1,A2,…
を動作させ、トラクション制御やスキッド制御を行な
う。
【0040】次に、マスタMの送信回路6、およびスレ
ーブS1,S2,…の受信回路8について詳細に説明す
る。まず、送信回路6は、図4に示すように、ECU4
が出力する送信データD0〜D7から、信号線Lに送出
される伝送データを生成するフレーム生成部12と、フ
レーム生成部12が生成した伝送データを信号線Lに送
出するドライバ部14と、信号線Lを介してスレーブS
1,S2,…より送出された信号を受信するレシーバ部
16とからなる。
ーブS1,S2,…の受信回路8について詳細に説明す
る。まず、送信回路6は、図4に示すように、ECU4
が出力する送信データD0〜D7から、信号線Lに送出
される伝送データを生成するフレーム生成部12と、フ
レーム生成部12が生成した伝送データを信号線Lに送
出するドライバ部14と、信号線Lを介してスレーブS
1,S2,…より送出された信号を受信するレシーバ部
16とからなる。
【0041】ドライバ部14は、コレクタが信号線Lに
接続され、エミッタが接地されたトランジスタTR1
と、コレクタを電源Vに接続しトランジスタTR1の非
導通時に、信号線LをHレベルに保持するエミッタ抵抗
R1と、トランジスタTR1にベース電流を供給するベ
ース抵抗R2と、フレーム生成部12が出力する伝送デ
ータを反転させる反転回路NOT1とからなる。このた
めフレーム生成部12から出力された伝送データは、反
転回路NOT1およびトランジスタTR1にて2度反転
させられるため、結局、信号線L上には、フレーム生成
部12が出力する伝送データと同じ極性の信号が出力さ
れる。
接続され、エミッタが接地されたトランジスタTR1
と、コレクタを電源Vに接続しトランジスタTR1の非
導通時に、信号線LをHレベルに保持するエミッタ抵抗
R1と、トランジスタTR1にベース電流を供給するベ
ース抵抗R2と、フレーム生成部12が出力する伝送デ
ータを反転させる反転回路NOT1とからなる。このた
めフレーム生成部12から出力された伝送データは、反
転回路NOT1およびトランジスタTR1にて2度反転
させられるため、結局、信号線L上には、フレーム生成
部12が出力する伝送データと同じ極性の信号が出力さ
れる。
【0042】また、レシーバ部16は、電源電圧を分圧
して基準電圧を生成する分圧抵抗R2,R3と、正転入
力が信号線Lに接続され、反転入力が分圧抵抗R1,R
2が接続されている点に接続されると共に、出力が、E
CU4のシリアル入力端子Siに接続された電圧比較器
18とからなる。このレシーバ部16は、通信線Lの信
号レベルを、分圧抵抗R1,R2にて生成された基準電
圧と比較することにより波形成形し、この波形成形され
た伝送データをECU4に供給する。
して基準電圧を生成する分圧抵抗R2,R3と、正転入
力が信号線Lに接続され、反転入力が分圧抵抗R1,R
2が接続されている点に接続されると共に、出力が、E
CU4のシリアル入力端子Siに接続された電圧比較器
18とからなる。このレシーバ部16は、通信線Lの信
号レベルを、分圧抵抗R1,R2にて生成された基準電
圧と比較することにより波形成形し、この波形成形され
た伝送データをECU4に供給する。
【0043】次に、送信回路6の主要部であるフレーム
生成部12は、マスタMから送信する伝送データのフレ
ーム長(ここでは、25ビット)と同じ段数を有するシ
フトレジスタ20と、ECU4が出力する送信データD
0〜D7からエラーチェックコードP0〜P3を生成す
るエラーチェックコード生成回路22と、シフトレジス
タ20を動作させ、所定の伝送速度で伝送データを送り
出すための送信クロックを生成する送信クロック生成回
路24とからなる。
生成部12は、マスタMから送信する伝送データのフレ
ーム長(ここでは、25ビット)と同じ段数を有するシ
フトレジスタ20と、ECU4が出力する送信データD
0〜D7からエラーチェックコードP0〜P3を生成す
るエラーチェックコード生成回路22と、シフトレジス
タ20を動作させ、所定の伝送速度で伝送データを送り
出すための送信クロックを生成する送信クロック生成回
路24とからなる。
【0044】送信クロック生成回路24は、発振回路お
よび分周回路からなり、約40KHzの送信クロックを
生成するものである。なお、ECU4を構成するCPU
を駆動するためのクロックを分周することにより、送信
クロックを生成してもよい。また、エラーチェックコー
ド生成回路22は、図1に示すように、送信データD
0,D2,D4,D6(第1のグループ)を入力とする
排他的論理和回路XOR1と、送信データD0,D1,
D4,D5(第2のグループ)を入力とする排他的論理
和回路XOR2と、送信データD0,D1,D2,D3
(第3のグループ)を入力とする排他的論理和回路XO
R3と、送信データD4,D5,D6,D7(第4のグ
ループ)を入力とする排他的論理和回路XOR4と、こ
れら排他的論理和回路XOR1〜XOR4の出力を反転
させ、エラーチェックコードP0〜P3を生成する反転
回路NOT5〜NOT8とからなる。なお、排他的論理
和回路XOR1〜XOR4および反転回路NOT5〜N
OT8が、本発明のエラーチェックコード生成装置にお
けるパリティ符号生成手段に相当する。
よび分周回路からなり、約40KHzの送信クロックを
生成するものである。なお、ECU4を構成するCPU
を駆動するためのクロックを分周することにより、送信
クロックを生成してもよい。また、エラーチェックコー
ド生成回路22は、図1に示すように、送信データD
0,D2,D4,D6(第1のグループ)を入力とする
排他的論理和回路XOR1と、送信データD0,D1,
D4,D5(第2のグループ)を入力とする排他的論理
和回路XOR2と、送信データD0,D1,D2,D3
(第3のグループ)を入力とする排他的論理和回路XO
R3と、送信データD4,D5,D6,D7(第4のグ
ループ)を入力とする排他的論理和回路XOR4と、こ
れら排他的論理和回路XOR1〜XOR4の出力を反転
させ、エラーチェックコードP0〜P3を生成する反転
回路NOT5〜NOT8とからなる。なお、排他的論理
和回路XOR1〜XOR4および反転回路NOT5〜N
OT8が、本発明のエラーチェックコード生成装置にお
けるパリティ符号生成手段に相当する。
【0045】ここで、送信データD0〜D7のグループ
分けは、次のようにされている。即ち、各データに0〜
7の番号を順番に割り当て、この番号を2進表現して得
られる3桁の2進値(000,001,…,111)の
1桁目の値が0であるものを抽出し、この2進値に対応
する番号が割り当てられたデータを第1のグループ、同
様に2桁目が0であるものを第2のグループ、3桁目が
0であるものを第3のグループ、3桁目が1であるもの
を第4のグループとしている。
分けは、次のようにされている。即ち、各データに0〜
7の番号を順番に割り当て、この番号を2進表現して得
られる3桁の2進値(000,001,…,111)の
1桁目の値が0であるものを抽出し、この2進値に対応
する番号が割り当てられたデータを第1のグループ、同
様に2桁目が0であるものを第2のグループ、3桁目が
0であるものを第3のグループ、3桁目が1であるもの
を第4のグループとしている。
【0046】なお、多入力の排他的論理和回路XOR1
〜XOR4は、Hレベルの入力が奇数個の時に、出力が
1となる。従って、エラーチェックコードP0〜P3
は、入力に奇数個のHレベルがあれば、Lレベルとな
り、逆に入力に偶数個のHレベルがあれば、Hレベルと
なる。
〜XOR4は、Hレベルの入力が奇数個の時に、出力が
1となる。従って、エラーチェックコードP0〜P3
は、入力に奇数個のHレベルがあれば、Lレベルとな
り、逆に入力に偶数個のHレベルがあれば、Hレベルと
なる。
【0047】つまり、エラーチェックコード生成回路2
2は、次式(1)〜(4)を回路として実現したもので
あり、エラーチェックコードP0〜P3は、各入力の奇
数パリティを生成するものである。 P0=NOT(D0*D2*D4*D6) (1) P1=NOT(D0*D1*D4*D5) (2) P2=NOT(D0*D1*D2*D3) (3) P3=NOT(D4*D5*D6*D7) (4) *:排他的論理和 また、シフトレジスタ20は、パラレルデータロード端
子PLが、ECU4のライト信号出力端子WRに接続さ
れており、ECU4よりライト信号が出力されると、シ
フトレジスタ20のパラレル入力に設定されたデータが
シフトレジスタ20にロードされる。
2は、次式(1)〜(4)を回路として実現したもので
あり、エラーチェックコードP0〜P3は、各入力の奇
数パリティを生成するものである。 P0=NOT(D0*D2*D4*D6) (1) P1=NOT(D0*D1*D4*D5) (2) P2=NOT(D0*D1*D2*D3) (3) P3=NOT(D4*D5*D6*D7) (4) *:排他的論理和 また、シフトレジスタ20は、パラレルデータロード端
子PLが、ECU4のライト信号出力端子WRに接続さ
れており、ECU4よりライト信号が出力されると、シ
フトレジスタ20のパラレル入力に設定されたデータが
シフトレジスタ20にロードされる。
【0048】なお、シフトレジスタ20のパラレル入力
は、ドライバ部14に接続された側を先頭として、先頭
の8ビットは、信号線Lの無信号状態IDLEと同じH
レベルとなるように電源Vに接続され、以下、図3で示
した伝送データのフレームフォーマットに従い、続く2
ビットは、SOF符号を表すLレベルとHレベルとなる
ように、夫々、グランドGおよび電源Vに接続され、続
く4ビットは、ECU4が出力する送信データD0〜D
3が順番に接続され、続く1ビットは、同期ビットとし
て送信データD3を反転する反転回路NOT2に接続さ
れ、続く4ビットは、ECU4が出力する送信データD
4〜D7が順番に接続され、続く1ビットは、同期ビッ
トとして送信データD7を反転する反転回路NOT3に
接続され、続く4ビットは、エラーチェックコード生成
回路22が出力するエラーチェックコードP0〜P3が
順番に接続され、最後の1ビットは、同期ビットとして
エラーチェックコードP3を反転する反転回路NOT4
に接続されている。
は、ドライバ部14に接続された側を先頭として、先頭
の8ビットは、信号線Lの無信号状態IDLEと同じH
レベルとなるように電源Vに接続され、以下、図3で示
した伝送データのフレームフォーマットに従い、続く2
ビットは、SOF符号を表すLレベルとHレベルとなる
ように、夫々、グランドGおよび電源Vに接続され、続
く4ビットは、ECU4が出力する送信データD0〜D
3が順番に接続され、続く1ビットは、同期ビットとし
て送信データD3を反転する反転回路NOT2に接続さ
れ、続く4ビットは、ECU4が出力する送信データD
4〜D7が順番に接続され、続く1ビットは、同期ビッ
トとして送信データD7を反転する反転回路NOT3に
接続され、続く4ビットは、エラーチェックコード生成
回路22が出力するエラーチェックコードP0〜P3が
順番に接続され、最後の1ビットは、同期ビットとして
エラーチェックコードP3を反転する反転回路NOT4
に接続されている。
【0049】また、シフトレジスタ20のシリアル入力
Siは、電源Vに接続されており、シフト動作中、最後
尾には、Hレベルの信号が順次付加される。次に、この
ように構成された送信回路6の動作について説明する。
まず、ECU4は、スレーブS1,S2,…へ送信すべ
きデータがあると、送信データD0〜D7をセットし
て、ライト信号を送出する。すると、送信回路6では、
ライト信号を受けたシフトレジスタ20が、送信データ
D0〜D7を含むパラレル入力にセットされたデータを
取り込む。以後、送信クロックに従い、シフトレジスタ
20の内容が順次シフトされ、シリアル出力から出力さ
れたデータは、ドライバ部14を介して信号線Lに出力
される。
Siは、電源Vに接続されており、シフト動作中、最後
尾には、Hレベルの信号が順次付加される。次に、この
ように構成された送信回路6の動作について説明する。
まず、ECU4は、スレーブS1,S2,…へ送信すべ
きデータがあると、送信データD0〜D7をセットし
て、ライト信号を送出する。すると、送信回路6では、
ライト信号を受けたシフトレジスタ20が、送信データ
D0〜D7を含むパラレル入力にセットされたデータを
取り込む。以後、送信クロックに従い、シフトレジスタ
20の内容が順次シフトされ、シリアル出力から出力さ
れたデータは、ドライバ部14を介して信号線Lに出力
される。
【0050】送信すべきデータがない場合、シフトレジ
スタ20は、シリアル入力から入力されるHレベルを順
次シフトし、ドライバ部14を介して信号線Lへは、無
信号状態を表すHレベルが出力される。なお、送信クロ
ックは約40KHzで発振しており、伝送符号はNRZ
を使用しているので、信号線L上の通信速度は、約40
Kbpsとなる。
スタ20は、シリアル入力から入力されるHレベルを順
次シフトし、ドライバ部14を介して信号線Lへは、無
信号状態を表すHレベルが出力される。なお、送信クロ
ックは約40KHzで発振しており、伝送符号はNRZ
を使用しているので、信号線L上の通信速度は、約40
Kbpsとなる。
【0051】伝送データを受信したスレーブS1,S
2,…は、この伝送データの最後に、ACKビットある
いはNCKビットを出力するので、レシーバ部16がこ
れを受信して、ECU4のシリアル入力に入力する。E
CU4は、この信号を取り込むことにより、送信が成功
したか否かを確認し、失敗したのであれば、送信データ
の再送処理などを実行する。
2,…は、この伝送データの最後に、ACKビットある
いはNCKビットを出力するので、レシーバ部16がこ
れを受信して、ECU4のシリアル入力に入力する。E
CU4は、この信号を取り込むことにより、送信が成功
したか否かを確認し、失敗したのであれば、送信データ
の再送処理などを実行する。
【0052】次に、スレーブS1,S2,…に搭載され
た受信回路8の構成を、図5のブロック図に沿って説明
する。図5に示すように、受信回路8は、信号線Lに接
続され、マスタMから送出される伝送データを受信する
レシーバ26と、少なくとも通信速度の4倍以上の周波
数で発振する基準クロックFCKを生成する発振回路2
8と、伝送データの先頭に付加されたSOF符号を検出
してSOF検出信号DSOを出力すると共に、そのLレ
ベルの区間SLを基準クロックFCKにてカウントする
ことにより、基準クロックFCKが通信速度の何倍で発
信しているかを算出する通信速度学習回路30と、基準
クロックFCKを通信速度学習回路30がカウントした
カウント値に基づき分周し、伝送データのビット境界を
表すエッジクロックECKおよび伝送データの各ビット
のほぼ中央で立上るデータサンプリング用のサンプルク
ロックSCKを生成する分周回路32と、分周回路32
が出力するサンプルクロックSCKを用いて受信した伝
送データをパラレルデータに変換するシフトレジスタ3
4と、伝送データに含まれるエラーチェックコードP0
〜P3に基づき、伝送データのデータ領域DAにエラー
が発生しているか否かをチェックするエラーチェック回
路36と、フリップフロップ回路またはラッチ回路にて
構成され、伝送データに含まれる受信データD0〜D7
を格納する受信バッファ38と、ACKビットまたはN
CKビットを信号線Lに送出するためのドライバとして
のトランジスタTR2と、通信速度学習回路30がSO
F符号を検出した時に出力するSOF符号検出信号DS
Oおよび分周回路32が出力するエッジクロックEC
K,サンプルクロックSCKに基づき、受信した伝送デ
ータのフレーム長を確認し、エラーチェック回路36の
エラーチェック結果に基づき、トランジスタTR2を介
して信号線LにACKビットあるいはNCKビットを送
信させるためのACK/NCK信号を出力すると共に、
エラーチェックの結果、エラーが発生していなければ、
受信バッファ38にデータを記憶させるラッチ信号LT
を送出するタイミング生成回路40とからなる。
た受信回路8の構成を、図5のブロック図に沿って説明
する。図5に示すように、受信回路8は、信号線Lに接
続され、マスタMから送出される伝送データを受信する
レシーバ26と、少なくとも通信速度の4倍以上の周波
数で発振する基準クロックFCKを生成する発振回路2
8と、伝送データの先頭に付加されたSOF符号を検出
してSOF検出信号DSOを出力すると共に、そのLレ
ベルの区間SLを基準クロックFCKにてカウントする
ことにより、基準クロックFCKが通信速度の何倍で発
信しているかを算出する通信速度学習回路30と、基準
クロックFCKを通信速度学習回路30がカウントした
カウント値に基づき分周し、伝送データのビット境界を
表すエッジクロックECKおよび伝送データの各ビット
のほぼ中央で立上るデータサンプリング用のサンプルク
ロックSCKを生成する分周回路32と、分周回路32
が出力するサンプルクロックSCKを用いて受信した伝
送データをパラレルデータに変換するシフトレジスタ3
4と、伝送データに含まれるエラーチェックコードP0
〜P3に基づき、伝送データのデータ領域DAにエラー
が発生しているか否かをチェックするエラーチェック回
路36と、フリップフロップ回路またはラッチ回路にて
構成され、伝送データに含まれる受信データD0〜D7
を格納する受信バッファ38と、ACKビットまたはN
CKビットを信号線Lに送出するためのドライバとして
のトランジスタTR2と、通信速度学習回路30がSO
F符号を検出した時に出力するSOF符号検出信号DS
Oおよび分周回路32が出力するエッジクロックEC
K,サンプルクロックSCKに基づき、受信した伝送デ
ータのフレーム長を確認し、エラーチェック回路36の
エラーチェック結果に基づき、トランジスタTR2を介
して信号線LにACKビットあるいはNCKビットを送
信させるためのACK/NCK信号を出力すると共に、
エラーチェックの結果、エラーが発生していなければ、
受信バッファ38にデータを記憶させるラッチ信号LT
を送出するタイミング生成回路40とからなる。
【0053】ここで、発振回路28は、図6に示すよう
に、リング状に連結した奇数個の反転回路からなり、各
反転回路の反転動作によってパルス信号を順次遅延して
周回させるリングオシレータ41と、このリングオシレ
ータ41の出力を分周するフリップフロップ回路FF
1,FF2とからなる。なお、リングオシレータ41の
反転回路の数は、発振回路28の出力である基準クロッ
クFCKが640KHz以上10.24MHz以下とな
るように調整し、分周の必要がない場合は、フリップフ
ロップ回路FF1,FF2は省略してもよい。ここで、
基準クロックFCKは、約2.5MHzの周波数で発振
しているものとする。
に、リング状に連結した奇数個の反転回路からなり、各
反転回路の反転動作によってパルス信号を順次遅延して
周回させるリングオシレータ41と、このリングオシレ
ータ41の出力を分周するフリップフロップ回路FF
1,FF2とからなる。なお、リングオシレータ41の
反転回路の数は、発振回路28の出力である基準クロッ
クFCKが640KHz以上10.24MHz以下とな
るように調整し、分周の必要がない場合は、フリップフ
ロップ回路FF1,FF2は省略してもよい。ここで、
基準クロックFCKは、約2.5MHzの周波数で発振
しているものとする。
【0054】次に、エラーチェック回路36は、図7に
示すように、受信データD3およびこれを反転した同期
ビットを入力とする排他的論理和回路XOR5と、受信
データD7およびこれを反転した同期ビットを入力とす
る排他的論理和回路XOR6と、エラーチェックコード
P3およびこれを反転した同期ビットを入力とする排他
的論理和回路XOR7と、受信データD0,D2,D
4,D6(第1のグループ)およびエラーチェックコー
ドP0を入力とする排他的論理和回路XOR8と、受信
データD0,D1,D4,D5(第2のグループ)およ
びエラーチェックコードP1を入力とする排他的論理和
回路XOR9と、受信データD0,D1,D2,D3
(第3のグループ)およびエラーチェックコードP2を
入力とする排他的論理和回路XOR10と、受信データ
D4,D5,D6,D7(第4のグループ)およびエラ
ーチェックコードP3を入力とする排他的論理和回路X
OR11と、これら排他的論理和回路XOR5〜XOR
11およびSOF符号のHレベル区間SHを入力とし、
すべてがHレベルのときに出力がHレベルとなる論理積
回路AND1とからなる。この論理積回路AND1の出
力が、エラーチェック信号ERとしてタイミング生成回
路40に供給される。なお、排他的論理和回路XOR8
〜XOR11の夫々が、本発明のエラーチェック装置に
おけるパリティ符号生成手段およびパリティチェック手
段に相当する。ここで、排他的論理和回路XOR5〜X
OR7は、同期ビットのエラーをチェックするものであ
り、直前のビットの反転した値となっていれば、正常で
あるとして、その出力がHレベルとなる。
示すように、受信データD3およびこれを反転した同期
ビットを入力とする排他的論理和回路XOR5と、受信
データD7およびこれを反転した同期ビットを入力とす
る排他的論理和回路XOR6と、エラーチェックコード
P3およびこれを反転した同期ビットを入力とする排他
的論理和回路XOR7と、受信データD0,D2,D
4,D6(第1のグループ)およびエラーチェックコー
ドP0を入力とする排他的論理和回路XOR8と、受信
データD0,D1,D4,D5(第2のグループ)およ
びエラーチェックコードP1を入力とする排他的論理和
回路XOR9と、受信データD0,D1,D2,D3
(第3のグループ)およびエラーチェックコードP2を
入力とする排他的論理和回路XOR10と、受信データ
D4,D5,D6,D7(第4のグループ)およびエラ
ーチェックコードP3を入力とする排他的論理和回路X
OR11と、これら排他的論理和回路XOR5〜XOR
11およびSOF符号のHレベル区間SHを入力とし、
すべてがHレベルのときに出力がHレベルとなる論理積
回路AND1とからなる。この論理積回路AND1の出
力が、エラーチェック信号ERとしてタイミング生成回
路40に供給される。なお、排他的論理和回路XOR8
〜XOR11の夫々が、本発明のエラーチェック装置に
おけるパリティ符号生成手段およびパリティチェック手
段に相当する。ここで、排他的論理和回路XOR5〜X
OR7は、同期ビットのエラーをチェックするものであ
り、直前のビットの反転した値となっていれば、正常で
あるとして、その出力がHレベルとなる。
【0055】また、排他的論理和回路XOR8〜XOR
11は、エラーチェックコードP0〜P3と、そのエラ
ーチェックコードP0〜P3を生成した第1〜第4のグ
ループの各データD0〜D7とのパリティをとることに
より、データD0〜D7およびエラーチェックコードP
0〜P3のエラーをチェックするものであり、正常であ
ればその出力C0〜C3がHレベルとなる。
11は、エラーチェックコードP0〜P3と、そのエラ
ーチェックコードP0〜P3を生成した第1〜第4のグ
ループの各データD0〜D7とのパリティをとることに
より、データD0〜D7およびエラーチェックコードP
0〜P3のエラーをチェックするものであり、正常であ
ればその出力C0〜C3がHレベルとなる。
【0056】即ち、式(1)〜(4)において、右辺の
式に示された受信データD0〜D7の各ビットを、その
左辺に示されたエラーチェックコードP0〜P3を含め
てパリティを計算することにより、エラーチェックコー
ドP0〜P3は奇数パリティとなるように生成されてい
るため、データD0〜D7およびエラーチェックコード
P0〜P3に誤りがなければ、各排他的論理和回路XO
R8〜XOR11に入力される「1」(Hレベル)の数
は奇数となり、出力C0〜C3がHレベルとなる。
式に示された受信データD0〜D7の各ビットを、その
左辺に示されたエラーチェックコードP0〜P3を含め
てパリティを計算することにより、エラーチェックコー
ドP0〜P3は奇数パリティとなるように生成されてい
るため、データD0〜D7およびエラーチェックコード
P0〜P3に誤りがなければ、各排他的論理和回路XO
R8〜XOR11に入力される「1」(Hレベル)の数
は奇数となり、出力C0〜C3がHレベルとなる。
【0057】なお、シフトレジスタ34が、伝送データ
のビットの中央で立上がるサンプルクロックSCKを用
いてシフト動作を行っているため、エラーチェック信号
ERは、エラーチェックコードP3の反転信号が信号線
L上に発生してから、サンプルクロックSCKにてシフ
ト動作が完了するまでの間だけ有効な値を出力する。
(図8参照) 次に、タイミング生成回路40は、エラーチェック回路
36の出力するエラーチェック信号ERと、通信速度学
習回路30の出力するSOF検出信号DSOと、分周回
路32の出力するエッジクロックECKおよびサンプル
クロックSCKとを入力して受信バッファ38へ受信デ
ータD0〜D7を格納するためのラッチ信号LTと、受
信した伝送データの末尾に付加して、マスタMに伝送デ
ータ受信の成否を通知するACKビットあるいはNCK
ビットを送信するためACK/NCK信号を生成する。
なお、タイミング生成回路40は、簡単なシーケンス回
路で実現できるので具体的な回路構成は省略するが、そ
の動作を、図8のタイミング図に基づき説明する。
のビットの中央で立上がるサンプルクロックSCKを用
いてシフト動作を行っているため、エラーチェック信号
ERは、エラーチェックコードP3の反転信号が信号線
L上に発生してから、サンプルクロックSCKにてシフ
ト動作が完了するまでの間だけ有効な値を出力する。
(図8参照) 次に、タイミング生成回路40は、エラーチェック回路
36の出力するエラーチェック信号ERと、通信速度学
習回路30の出力するSOF検出信号DSOと、分周回
路32の出力するエッジクロックECKおよびサンプル
クロックSCKとを入力して受信バッファ38へ受信デ
ータD0〜D7を格納するためのラッチ信号LTと、受
信した伝送データの末尾に付加して、マスタMに伝送デ
ータ受信の成否を通知するACKビットあるいはNCK
ビットを送信するためACK/NCK信号を生成する。
なお、タイミング生成回路40は、簡単なシーケンス回
路で実現できるので具体的な回路構成は省略するが、そ
の動作を、図8のタイミング図に基づき説明する。
【0058】まず、SOF検出信号DSOの立上りが入
力されると、サンプルクロックSCKをカウントし、1
6パルス目、即ちデータ領域DAの最後のビットを受信
した時点でエラーチェック信号ERを確認し、受信した
伝送データにエラーがなく、エラーチェック信号ERが
Hレベルの場合は、16パルス目のサンプルクロックS
CKをそのまま受信ラッチ信号LTとして受信バッファ
38に出力するとともに、次のエッジクロックECKか
ら1ビット長時間分のパルスをACK/NCK信号とし
てトランジスタTR2に出力する。一方、受信した伝送
データにエラーがあり、SOF検出信号DSOの立上り
からサンプルクロックSCKの16パルス目でエラーチ
ェック信号ERを確認した時に、エラーチェック信号E
RがLレベルであった場合は、ラッチ信号LTはLレベ
ルのまま保持し、16パルス目のサンプルクロックSC
Kの後、2パルス目のエッジクロックECKから1ビッ
ト長のHパルスをACK/NCK信号として出力する。
力されると、サンプルクロックSCKをカウントし、1
6パルス目、即ちデータ領域DAの最後のビットを受信
した時点でエラーチェック信号ERを確認し、受信した
伝送データにエラーがなく、エラーチェック信号ERが
Hレベルの場合は、16パルス目のサンプルクロックS
CKをそのまま受信ラッチ信号LTとして受信バッファ
38に出力するとともに、次のエッジクロックECKか
ら1ビット長時間分のパルスをACK/NCK信号とし
てトランジスタTR2に出力する。一方、受信した伝送
データにエラーがあり、SOF検出信号DSOの立上り
からサンプルクロックSCKの16パルス目でエラーチ
ェック信号ERを確認した時に、エラーチェック信号E
RがLレベルであった場合は、ラッチ信号LTはLレベ
ルのまま保持し、16パルス目のサンプルクロックSC
Kの後、2パルス目のエッジクロックECKから1ビッ
ト長のHパルスをACK/NCK信号として出力する。
【0059】受信バッファ38は、ラッチ信号LTを受
けた時、即ち、伝送データをエラー無く受信した時に、
シフトレジスタ34のパラレル出力から、必要な受信デ
ータD0〜D7だけを記憶保持し外部に出力する。次
に、通信速度学習回路30は、図9に示すように、レシ
ーバ26を介して受信する伝送データTDの立下りエッ
ジを検出すると、基準クロックFCKの1周期の間だけ
Hレベルとなる立下りエッジ検出信号DEGを出力する
立下りエッジ検出回路42と、同様に伝送データTDの
立上りエッジを検出すると、基準クロックFCKの1周
期の間だけHレベルとなる立上りエッジ検出信号UEG
を出力する立上がりエッジ検出回路44と、立上りエッ
ジ検出信号DEGによりカウント値がクリアされ、信号
線LがHレベルである間、基準クロックFCKのカウン
トをし、信号線LがLレベルになるとカウントを停止し
て11ビットのカウント値HC0〜HC10を保持する
ハイレベルカウンタ46と、立下りエッジ検出信号UE
Gによりカウント値がクリアされ、信号線LがLレベル
である間、基準クロックFCKのカウントをし、信号線
LがHレベルになるとカウントを停止して8ビットのカ
ウント値LC0〜LC7を保持するロウレベルカウンタ
48と、ハイレベルカウンタ46の上位8ビットのカウ
ント値HC3〜HC10がロウレベルカウンタ48のカ
ウント値LC0〜LC7より大きい時、即ち、ハイレベ
ルカウンタ46のカウント値がロウレベルカウンタ48
のカウント値の8倍以上の時に、出力がHレベルになる
比較器50と、ロウレベルカウンタ48の出力がすべて
Hレベルの時、即ち、ロウレベルカウンタ48がオーバ
ーフローしている時に、出力がLレベルとなる否定論理
積回路NAND1と、ロウレベルカウンタ48の出力の
上位4ビットLC4〜LC7のいずれかがHレベルの
時、即ち、ロウレベルカウンタ48のカウント値が16
以上の時に、出力がHレベルになる論理和回路OR1
と、比較器50,否定論理積回路NAND1,論理和回
路OR1の出力がいずれもHレベルの時に、出力がHレ
ベルになる論理積回路AND2と、論理積回路AND2
の出力を立上りエッジ検出信号UEGのタイミングで保
持し、SOF検出信号DSOとして出力するフリップフ
ロップ回路FF3と、SOF検出信号DSOが立上るタ
イミングで、ロウレベルカウンタ48のカウント値LC
0〜LC7を保持するレジスタ52と、立下りエッジ検
出信号DEGおよび立上りエッジ検出信号UEGのいず
れかがHレベルの時に、出力がHレベルになる論理和回
路OR2とからなる。
けた時、即ち、伝送データをエラー無く受信した時に、
シフトレジスタ34のパラレル出力から、必要な受信デ
ータD0〜D7だけを記憶保持し外部に出力する。次
に、通信速度学習回路30は、図9に示すように、レシ
ーバ26を介して受信する伝送データTDの立下りエッ
ジを検出すると、基準クロックFCKの1周期の間だけ
Hレベルとなる立下りエッジ検出信号DEGを出力する
立下りエッジ検出回路42と、同様に伝送データTDの
立上りエッジを検出すると、基準クロックFCKの1周
期の間だけHレベルとなる立上りエッジ検出信号UEG
を出力する立上がりエッジ検出回路44と、立上りエッ
ジ検出信号DEGによりカウント値がクリアされ、信号
線LがHレベルである間、基準クロックFCKのカウン
トをし、信号線LがLレベルになるとカウントを停止し
て11ビットのカウント値HC0〜HC10を保持する
ハイレベルカウンタ46と、立下りエッジ検出信号UE
Gによりカウント値がクリアされ、信号線LがLレベル
である間、基準クロックFCKのカウントをし、信号線
LがHレベルになるとカウントを停止して8ビットのカ
ウント値LC0〜LC7を保持するロウレベルカウンタ
48と、ハイレベルカウンタ46の上位8ビットのカウ
ント値HC3〜HC10がロウレベルカウンタ48のカ
ウント値LC0〜LC7より大きい時、即ち、ハイレベ
ルカウンタ46のカウント値がロウレベルカウンタ48
のカウント値の8倍以上の時に、出力がHレベルになる
比較器50と、ロウレベルカウンタ48の出力がすべて
Hレベルの時、即ち、ロウレベルカウンタ48がオーバ
ーフローしている時に、出力がLレベルとなる否定論理
積回路NAND1と、ロウレベルカウンタ48の出力の
上位4ビットLC4〜LC7のいずれかがHレベルの
時、即ち、ロウレベルカウンタ48のカウント値が16
以上の時に、出力がHレベルになる論理和回路OR1
と、比較器50,否定論理積回路NAND1,論理和回
路OR1の出力がいずれもHレベルの時に、出力がHレ
ベルになる論理積回路AND2と、論理積回路AND2
の出力を立上りエッジ検出信号UEGのタイミングで保
持し、SOF検出信号DSOとして出力するフリップフ
ロップ回路FF3と、SOF検出信号DSOが立上るタ
イミングで、ロウレベルカウンタ48のカウント値LC
0〜LC7を保持するレジスタ52と、立下りエッジ検
出信号DEGおよび立上りエッジ検出信号UEGのいず
れかがHレベルの時に、出力がHレベルになる論理和回
路OR2とからなる。
【0060】そして、フリップフロップ回路FF3の出
力は、SOF検出信号DSOとしてタイミング生成回路
40に供給され、また、レジスタ52の出力は、分周デ
ータRC0〜RC7として、論理和回路OR2の出力
は、エッジ信号EDとして分周回路32に供給される。
力は、SOF検出信号DSOとしてタイミング生成回路
40に供給され、また、レジスタ52の出力は、分周デ
ータRC0〜RC7として、論理和回路OR2の出力
は、エッジ信号EDとして分周回路32に供給される。
【0061】なお、ハイレベルカウンタ46およびロウ
レベルカウンタ48は、カウント値が最大値になると、
カウント動作を停止して最大値となったカウント値を保
持するように構成されている。このように構成された、
通信速度学習回路30においては、ハイレベルカウンタ
46およびロウレベルカウンタ48が、伝送データTD
のHレベルおよびLレベルの継続時間を基準クロックF
CKにて順次カウントし、比較器50にて、Hレベルの
カウント値が、それに続くLレベルのカウント値の8倍
以上で有ると判断されると、そのLレベルは、伝送デー
タTDの先頭を表すSOF符号のLレベル区間SLであ
るとして、SOF検出信号DSOが出力されると共に、
レジスタ52が、区間SLをカウントしたカウント値を
保持する。
レベルカウンタ48は、カウント値が最大値になると、
カウント動作を停止して最大値となったカウント値を保
持するように構成されている。このように構成された、
通信速度学習回路30においては、ハイレベルカウンタ
46およびロウレベルカウンタ48が、伝送データTD
のHレベルおよびLレベルの継続時間を基準クロックF
CKにて順次カウントし、比較器50にて、Hレベルの
カウント値が、それに続くLレベルのカウント値の8倍
以上で有ると判断されると、そのLレベルは、伝送デー
タTDの先頭を表すSOF符号のLレベル区間SLであ
るとして、SOF検出信号DSOが出力されると共に、
レジスタ52が、区間SLをカウントしたカウント値を
保持する。
【0062】なお、HレベルがLレベルの8倍以上とな
るのは、伝送データには同期ビットが挿入され最長5ビ
ットまでしか同一レベルが継続しないようにされている
ことから、伝送データが送出されていない無信号状態I
DLEの後に、SOF符号が表れた時だけである。しか
も、ノイズ等により、短期間Lレベルになっても、論理
和回路OR1により、16クロック以上の幅がなけれ
ば、そのLレベルは信号として認識されないので、誤動
作することがない。
るのは、伝送データには同期ビットが挿入され最長5ビ
ットまでしか同一レベルが継続しないようにされている
ことから、伝送データが送出されていない無信号状態I
DLEの後に、SOF符号が表れた時だけである。しか
も、ノイズ等により、短期間Lレベルになっても、論理
和回路OR1により、16クロック以上の幅がなけれ
ば、そのLレベルは信号として認識されないので、誤動
作することがない。
【0063】また、区間SLは、送信クロックの1ビッ
ト幅を有するため、レジスタ52に保持される区間SL
をカウントした分周データRC0〜RC7は、基準クロ
ックFCKが送信クロック、延いては通信速度の何倍で
発振しているのかを表しているのである。
ト幅を有するため、レジスタ52に保持される区間SL
をカウントした分周データRC0〜RC7は、基準クロ
ックFCKが送信クロック、延いては通信速度の何倍で
発振しているのかを表しているのである。
【0064】一方、分周回路32は、図10に示すよう
に、基準クロックFCKの立下りで動作し、後述するエ
ッジクロックECKがロード端子LDに入力されると、
分周データRC0〜RC7をカウント値として再設定す
るダウンカウンタ54と、分周データRC0〜RC7が
示す値の2分の1の値(即ち、RC1〜RC7で表され
る値)とダウンカウンタ54のカウント値DC0〜DC
7が一致したときに出力がHレベルとなる比較器56
と、カウント値DC0〜DC7が0になるとダウンカウ
ンタ54より出力されるボロー信号B、および伝送デー
タの信号レベルの変化点を表すエッジ信号EDを入力と
し、いずれかがHレベルの時に出力がHレベルとなるエ
ッジクロックECKを出力する論理和回路OR3とから
なる。
に、基準クロックFCKの立下りで動作し、後述するエ
ッジクロックECKがロード端子LDに入力されると、
分周データRC0〜RC7をカウント値として再設定す
るダウンカウンタ54と、分周データRC0〜RC7が
示す値の2分の1の値(即ち、RC1〜RC7で表され
る値)とダウンカウンタ54のカウント値DC0〜DC
7が一致したときに出力がHレベルとなる比較器56
と、カウント値DC0〜DC7が0になるとダウンカウ
ンタ54より出力されるボロー信号B、および伝送デー
タの信号レベルの変化点を表すエッジ信号EDを入力と
し、いずれかがHレベルの時に出力がHレベルとなるエ
ッジクロックECKを出力する論理和回路OR3とから
なる。
【0065】なお、比較器56の出力は、受信した伝送
データの各ビットをサンプリングするためのサンプルク
ロックSCKとしてシフトレジスタ34およびタイミン
グ生成回路40に供給され、エッジクロックECKもタ
イミング生成回路40に供給される。
データの各ビットをサンプリングするためのサンプルク
ロックSCKとしてシフトレジスタ34およびタイミン
グ生成回路40に供給され、エッジクロックECKもタ
イミング生成回路40に供給される。
【0066】このように構成された、分周回路32にお
いては、ダウンカウンタ54が、通信速度学習回路30
にて検出され保持された分周データRC0〜RC7を、
カウント値として設定し、基準クロックFCKにてダウ
ンカウントして、カウント値が0になるとボロー信号B
を発生する。そして、このボロー信号Bにより分周デー
タRC0〜RC7をカウント値として再設定しダウンカ
ウントを繰り返す。なお、分周データのカウントに要す
る時間は、伝送データの1ビット長に相当するので、ボ
ロー信号Bは、伝送データのビット境界を表すことにな
る。
いては、ダウンカウンタ54が、通信速度学習回路30
にて検出され保持された分周データRC0〜RC7を、
カウント値として設定し、基準クロックFCKにてダウ
ンカウントして、カウント値が0になるとボロー信号B
を発生する。そして、このボロー信号Bにより分周デー
タRC0〜RC7をカウント値として再設定しダウンカ
ウントを繰り返す。なお、分周データのカウントに要す
る時間は、伝送データの1ビット長に相当するので、ボ
ロー信号Bは、伝送データのビット境界を表すことにな
る。
【0067】また、ダウンカウンタ54は、伝送データ
の信号レベルの変化を表すエッジ信号EGが入力される
と、分周データRC0〜RC7を再設定する。即ち、伝
送データの1ビット長が、正確に基準クロックFCKの
整数倍になるとは限らず、ダウンカウンタ54にて分周
データを0までカウントすると、実際の伝送データの1
ビット長との間に、基準クロックFCKの1周期以内の
誤差を生じるため、カウントを繰り返す毎に、ボロー信
号Bと実際のビット境界の位置がずれてしまうのである
が、伝送データの変化点、即ち実際のビット境界位置が
表れた時に、これにカウントの開始を一致させることに
より、伝送データとの位相を一致させるのである。当
然、エッジパルスEGは、ボロー信号Bと共に、伝送デ
ータのビット境界を表すエッジクロックECKとして出
力される。
の信号レベルの変化を表すエッジ信号EGが入力される
と、分周データRC0〜RC7を再設定する。即ち、伝
送データの1ビット長が、正確に基準クロックFCKの
整数倍になるとは限らず、ダウンカウンタ54にて分周
データを0までカウントすると、実際の伝送データの1
ビット長との間に、基準クロックFCKの1周期以内の
誤差を生じるため、カウントを繰り返す毎に、ボロー信
号Bと実際のビット境界の位置がずれてしまうのである
が、伝送データの変化点、即ち実際のビット境界位置が
表れた時に、これにカウントの開始を一致させることに
より、伝送データとの位相を一致させるのである。当
然、エッジパルスEGは、ボロー信号Bと共に、伝送デ
ータのビット境界を表すエッジクロックECKとして出
力される。
【0068】つまり、ダウンカウンタ54は、伝送デー
タに信号レベルの変化がない場合は、分周データRC0
〜RC7のみに頼って、基準クロックFCKの分周を行
ない、実際のビット境界がある場合は、常に、これに位
相を合わせながら分周を行うのである。
タに信号レベルの変化がない場合は、分周データRC0
〜RC7のみに頼って、基準クロックFCKの分周を行
ない、実際のビット境界がある場合は、常に、これに位
相を合わせながら分周を行うのである。
【0069】また、比較器56が、ダウンカウンタ54
のカウント値と分周データの2分の1の値とを比較し、
これらの値が一致した時に、Hレベルのパルスをサンプ
ルクロックSCKとして発生する。つまり、カウント値
の2分の1というのは、ほぼ伝送データのビットの中央
に相当するため、伝送データのサンプリングに好適なク
ロックとなる。
のカウント値と分周データの2分の1の値とを比較し、
これらの値が一致した時に、Hレベルのパルスをサンプ
ルクロックSCKとして発生する。つまり、カウント値
の2分の1というのは、ほぼ伝送データのビットの中央
に相当するため、伝送データのサンプリングに好適なク
ロックとなる。
【0070】以下、伝送データを受信した時の通信速度
学習回路30および分周回路32の各部における詳細な
動作を、図11および図12に示すタイミング図に沿っ
て説明する。図11は、信号線Lに表れた伝送データT
Dにおいて、SOF符号の直前からSOF符号のHレベ
ル区間SHの途中までを示したものである。
学習回路30および分周回路32の各部における詳細な
動作を、図11および図12に示すタイミング図に沿っ
て説明する。図11は、信号線Lに表れた伝送データT
Dにおいて、SOF符号の直前からSOF符号のHレベ
ル区間SHの途中までを示したものである。
【0071】図11に示すように、信号線Lが無信号状
態IDLEにあるときは、信号線LはHレベルに保持さ
れているため、ハイレベルカウンタ46が動作し、その
カウント値HC0〜HC10が、基準クロックFCKの
立下りに同期してカウントアップする。この時、ロウレ
ベルカウンタ48は、現在のHレベルの前に現れたLレ
ベルをカウントしたカウント値LC0〜LC7(ここで
は255)を保持したまま停止している。
態IDLEにあるときは、信号線LはHレベルに保持さ
れているため、ハイレベルカウンタ46が動作し、その
カウント値HC0〜HC10が、基準クロックFCKの
立下りに同期してカウントアップする。この時、ロウレ
ベルカウンタ48は、現在のHレベルの前に現れたLレ
ベルをカウントしたカウント値LC0〜LC7(ここで
は255)を保持したまま停止している。
【0072】無信号状態IDLEが終了し、信号線Lが
Lレベルに変化すると、ハイレベルカウンタ46は、動
作を停止しその時のカウント値HC0〜HC10(ここ
では633)が保持される。これと同時に、ロウレベル
カウンタ48は、カウント動作を開始しようとするが、
立下りエッジ検出回路42から出力される立下りエッジ
検出信号DEGにより、カウント値が0クリアされ、立
下りエッジ信号DEGがLレベルに戻った後、基準クロ
ックFCKの立下りに同期してその後カウント動作を開
始する。
Lレベルに変化すると、ハイレベルカウンタ46は、動
作を停止しその時のカウント値HC0〜HC10(ここ
では633)が保持される。これと同時に、ロウレベル
カウンタ48は、カウント動作を開始しようとするが、
立下りエッジ検出回路42から出力される立下りエッジ
検出信号DEGにより、カウント値が0クリアされ、立
下りエッジ信号DEGがLレベルに戻った後、基準クロ
ックFCKの立下りに同期してその後カウント動作を開
始する。
【0073】この時、ハイレベルカウンタ46のカウン
ト値(633)は、ロウレベルカウンタ48のカウント
値(0)の8倍以上となるため、比較器50の出力はH
レベルとなる。また、ロウレベルカウンタ48のオーバ
フローを検出する否定論理積回路NAND1の出力はH
レベルとなり、Lレベルの継続時間が所定以下である場
合これを排除するために設けられた論理和回路OR1の
出力はLレベルとなる。
ト値(633)は、ロウレベルカウンタ48のカウント
値(0)の8倍以上となるため、比較器50の出力はH
レベルとなる。また、ロウレベルカウンタ48のオーバ
フローを検出する否定論理積回路NAND1の出力はH
レベルとなり、Lレベルの継続時間が所定以下である場
合これを排除するために設けられた論理和回路OR1の
出力はLレベルとなる。
【0074】その後、信号線LがHレベルに変化する
と、ロウレベルカウンタ48は、カウント値(ここでは
63)を保持しカウント動作を停止する。一方、ハイレ
ベルカウンタ46は、立上りエッジ検出信号UEGによ
り0クリアされた後、カウントを開始する。
と、ロウレベルカウンタ48は、カウント値(ここでは
63)を保持しカウント動作を停止する。一方、ハイレ
ベルカウンタ46は、立上りエッジ検出信号UEGによ
り0クリアされた後、カウントを開始する。
【0075】なお、信号線LのLレベルが継続されてい
る間、ロウレベルカウンタ48のカウント値LC0〜L
C7がカウントアップされ、その値が16に達すると、
論理和回路OR1の出力がHレベルに変化する。この結
果、比較器50,否定論理積回路NAND1,論理和回
路OR1の出力が総てHレベルとなるため、これらを入
力とする論理積回路AND1の出力もHレベルとなる。
なお、信号線LのLレベルの状態が更に継続し、ロウレ
ベルカウンタ48のカウント値がハイレベルカウンタ4
6に保持されたカウンタ値の8分の1以上になり、比較
器50の出力がLレベルになるか、または、ロウレベル
カウンタ48がオーバフローし、否定論理積回路NAN
D1の出力がLレベルになった場合に、論理積回路AN
D1の出力はLレベルに戻るのであるが、図11におい
ては、信号線LがHレベルに変化した時点で、ロウレベ
ルカウンタ48のカウント値は63であるため、論理積
回路AND1の出力はHレベルのまま保持されている。
る間、ロウレベルカウンタ48のカウント値LC0〜L
C7がカウントアップされ、その値が16に達すると、
論理和回路OR1の出力がHレベルに変化する。この結
果、比較器50,否定論理積回路NAND1,論理和回
路OR1の出力が総てHレベルとなるため、これらを入
力とする論理積回路AND1の出力もHレベルとなる。
なお、信号線LのLレベルの状態が更に継続し、ロウレ
ベルカウンタ48のカウント値がハイレベルカウンタ4
6に保持されたカウンタ値の8分の1以上になり、比較
器50の出力がLレベルになるか、または、ロウレベル
カウンタ48がオーバフローし、否定論理積回路NAN
D1の出力がLレベルになった場合に、論理積回路AN
D1の出力はLレベルに戻るのであるが、図11におい
ては、信号線LがHレベルに変化した時点で、ロウレベ
ルカウンタ48のカウント値は63であるため、論理積
回路AND1の出力はHレベルのまま保持されている。
【0076】そして、信号線LがHレベルに変化した時
点で論理積回路AND1の出力がHレベルにあるという
ことは、その信号線のLレベルは、SOF符号のLレベ
ル区間LSであるということであり、論理積回路AND
1の出力は、立上りエッジ信号UEGのタイミングでフ
リップフロップ回路FF3に保持され、SOF符号検出
信号DSOとして出力される。
点で論理積回路AND1の出力がHレベルにあるという
ことは、その信号線のLレベルは、SOF符号のLレベ
ル区間LSであるということであり、論理積回路AND
1の出力は、立上りエッジ信号UEGのタイミングでフ
リップフロップ回路FF3に保持され、SOF符号検出
信号DSOとして出力される。
【0077】また、SOF符号検出信号DSOの立上り
タイミングで、この区間LSをカウントしたロウレベル
カウンタ48のカウント値(63)が分周データRC0
〜RC7としてレジスタ52に保持される。なお、区間
LSは伝送データの1ビット長に相当するため、レジス
タ52に保持されたカウント値から、基準クロックFC
Kは、伝送データの通信速度の約63倍の周波数で発振
していることがわかる。
タイミングで、この区間LSをカウントしたロウレベル
カウンタ48のカウント値(63)が分周データRC0
〜RC7としてレジスタ52に保持される。なお、区間
LSは伝送データの1ビット長に相当するため、レジス
タ52に保持されたカウント値から、基準クロックFC
Kは、伝送データの通信速度の約63倍の周波数で発振
していることがわかる。
【0078】次に、図12は、SOF符号のHレベル区
間SHからデータ領域DAの途中までの動作を示したタ
イミング図である。通信速度学習回路30により設定さ
れた分周データRC0〜RC7は、まずSOF符号の立
上りを検出したエッジ信号EDにより、基準クロックF
CKの立下りのタイミングで、ダウンカウンタ54にカ
ウント値DC0〜DC7として設定される。
間SHからデータ領域DAの途中までの動作を示したタ
イミング図である。通信速度学習回路30により設定さ
れた分周データRC0〜RC7は、まずSOF符号の立
上りを検出したエッジ信号EDにより、基準クロックF
CKの立下りのタイミングで、ダウンカウンタ54にカ
ウント値DC0〜DC7として設定される。
【0079】以後、基準クロックFCKにより、カウン
ト値DC0〜DC7がデクリメントされる。なお、区間
SHに続くデータ領域DAの最初の区間D0がHレベル
であった場合、区間SHとD0とのビット境界において
伝送データは信号レベルの変化がない。このため、ダウ
ンカウンタ54は、カウント値が0になるまでカウント
されると、ボロー信号Bを発生して、レジスタ52に記
憶された分周データRC0〜RC7をカウント値DC0
〜DC7として再度設定する。この時のボロー信号B
が、区間SHとD0とのビット境界を表すエッジクロッ
クECKとして出力される。
ト値DC0〜DC7がデクリメントされる。なお、区間
SHに続くデータ領域DAの最初の区間D0がHレベル
であった場合、区間SHとD0とのビット境界において
伝送データは信号レベルの変化がない。このため、ダウ
ンカウンタ54は、カウント値が0になるまでカウント
されると、ボロー信号Bを発生して、レジスタ52に記
憶された分周データRC0〜RC7をカウント値DC0
〜DC7として再度設定する。この時のボロー信号B
が、区間SHとD0とのビット境界を表すエッジクロッ
クECKとして出力される。
【0080】また、伝送データのビット境界(ここでは
区間D0とD1の境界)で信号レベルの変化があった場
合、分周データRC0〜RC7をカウントダウンするこ
とにより得られる1ビット長、即ちボロー信号Bが発生
する間隔が、実際の伝送データの1ビット長より短い時
は、ダウンカウンタ54よりボロー信号Bが発生した後
に、引続き、実際のビット境界を表すエッジ信号EDが
発生し、ボロー信号Bにより設定したカウント値をすぐ
に再設定することになる。これにより、ダウンカウンタ
54によるカウントの開始が実際のビット境界に一致さ
せられ、即ち、クロックの位相が伝送データに合わせら
れる。
区間D0とD1の境界)で信号レベルの変化があった場
合、分周データRC0〜RC7をカウントダウンするこ
とにより得られる1ビット長、即ちボロー信号Bが発生
する間隔が、実際の伝送データの1ビット長より短い時
は、ダウンカウンタ54よりボロー信号Bが発生した後
に、引続き、実際のビット境界を表すエッジ信号EDが
発生し、ボロー信号Bにより設定したカウント値をすぐ
に再設定することになる。これにより、ダウンカウンタ
54によるカウントの開始が実際のビット境界に一致さ
せられ、即ち、クロックの位相が伝送データに合わせら
れる。
【0081】逆に、図12には図示しないが、ボロー信
号Bが発生する間隔が伝送データの1ビット長より長い
場合は、カウンタ値が0になる前にエッジ信号EDが現
れるため、伝送データの信号レベルに変化がある時は、
ボロー信号Bが発生することなく、エッジ信号EDによ
りカウント値が再設定され、クロックの位相が伝送デー
タに合わせられる。
号Bが発生する間隔が伝送データの1ビット長より長い
場合は、カウンタ値が0になる前にエッジ信号EDが現
れるため、伝送データの信号レベルに変化がある時は、
ボロー信号Bが発生することなく、エッジ信号EDによ
りカウント値が再設定され、クロックの位相が伝送デー
タに合わせられる。
【0082】また、カウント中に、レジスタ52に記憶
された分周データRC0〜RC7の2分の1(即ち、こ
こでは31)に達すると、比較器56よりサンプルクロ
ックSCKが出力される。このパルスは、常に、伝送デ
ータのビットの中心位置に現れることになり、このサン
プルクロックSCKにより、シフトレジスタ34にて、
伝送データのサンプリングが行われる。
された分周データRC0〜RC7の2分の1(即ち、こ
こでは31)に達すると、比較器56よりサンプルクロ
ックSCKが出力される。このパルスは、常に、伝送デ
ータのビットの中心位置に現れることになり、このサン
プルクロックSCKにより、シフトレジスタ34にて、
伝送データのサンプリングが行われる。
【0083】以上、詳述したように、本実施例の車両用
データ通信システムにおいて、送信回路6のエラーチェ
ックコード生成回路22は、送信データD0〜D7を第
1〜第4のグループにグループ分けし、夫々のグループ
に対応したエラーチェックコードP0〜P3を生成し
て、これを送信データD0〜D7に付加して送信し、一
方、受信回路8のエラーチェック回路36は、受信した
データD0〜D7を第1〜第4のグループ毎に各グルー
プに対応したエラーチェックコードP0〜P3と共に夫
々パリティチェックを行ない、データD0〜D7のビッ
ト誤りを検出している。
データ通信システムにおいて、送信回路6のエラーチェ
ックコード生成回路22は、送信データD0〜D7を第
1〜第4のグループにグループ分けし、夫々のグループ
に対応したエラーチェックコードP0〜P3を生成し
て、これを送信データD0〜D7に付加して送信し、一
方、受信回路8のエラーチェック回路36は、受信した
データD0〜D7を第1〜第4のグループ毎に各グルー
プに対応したエラーチェックコードP0〜P3と共に夫
々パリティチェックを行ない、データD0〜D7のビッ
ト誤りを検出している。
【0084】従って、本実施例の車両用データ通信シス
テムでは、通信線Lを介して送受信される伝送データの
8ビットデータの任意の3ビット誤りまで検出すること
ができる。即ち、データが奇数ビット誤った場合は、第
3のグループ(D0〜D3)あるいは第4のグループ
(D4〜D7)のいずれか一方に、必ず奇数個の誤りビ
ットが属し、第3あるいは第4のグループのパリティを
誤まらせるため、夫々のグループのパリティを検査する
排他的論理和回路XOR10あるいはXOR11の出力
C2あるいはC3がエラーを示すLレベルとなって、エ
ラーが検出される。
テムでは、通信線Lを介して送受信される伝送データの
8ビットデータの任意の3ビット誤りまで検出すること
ができる。即ち、データが奇数ビット誤った場合は、第
3のグループ(D0〜D3)あるいは第4のグループ
(D4〜D7)のいずれか一方に、必ず奇数個の誤りビ
ットが属し、第3あるいは第4のグループのパリティを
誤まらせるため、夫々のグループのパリティを検査する
排他的論理和回路XOR10あるいはXOR11の出力
C2あるいはC3がエラーを示すLレベルとなって、エ
ラーが検出される。
【0085】また、データが2ビット誤った場合、一方
の誤りビットが第3のグループ(D0〜D3)に属し、
他方の誤りビットが第4のグループ(D4〜D7)に属
する場合には、夫々のグループのパリティを検査する排
他的論理和回路XOR10およびXOR11の出力C2
およびC3が必ずエラーを示すLレベルとなってエラー
が検出される。一方、第3あるいは第4のグループのい
ずれか一方のグループに誤りビットが2ビットとも属す
る場合には、どの2ビットが誤ったとしても、第1のグ
ループ(D0,D2,D4,D6)または第2のグルー
プ(D0,D1,D4,D5)のいずれかは、誤ったビ
ットのいずれか一方しか含まないので、誤ったビットを
1つしか含まないグループのパリティが誤り、排他的論
理和回路XOR8あるいはXOR9の出力C0あるいは
C1がエラーを示すLレベルとなって、エラーが検出さ
れる。
の誤りビットが第3のグループ(D0〜D3)に属し、
他方の誤りビットが第4のグループ(D4〜D7)に属
する場合には、夫々のグループのパリティを検査する排
他的論理和回路XOR10およびXOR11の出力C2
およびC3が必ずエラーを示すLレベルとなってエラー
が検出される。一方、第3あるいは第4のグループのい
ずれか一方のグループに誤りビットが2ビットとも属す
る場合には、どの2ビットが誤ったとしても、第1のグ
ループ(D0,D2,D4,D6)または第2のグルー
プ(D0,D1,D4,D5)のいずれかは、誤ったビ
ットのいずれか一方しか含まないので、誤ったビットを
1つしか含まないグループのパリティが誤り、排他的論
理和回路XOR8あるいはXOR9の出力C0あるいは
C1がエラーを示すLレベルとなって、エラーが検出さ
れる。
【0086】このように、任意の奇数ビット誤り、およ
び任意の2ビット誤りを検出することができ、つまり、
任意の3ビット誤りを検出することができるのである。
なお、エラーチェックコードP0〜P3が誤った場合
は、誤ったエラーチェックコードP0〜P3に対応する
グループのパリティチェックの結果に誤りが生じるた
め、これも検出することができる。
び任意の2ビット誤りを検出することができ、つまり、
任意の3ビット誤りを検出することができるのである。
なお、エラーチェックコードP0〜P3が誤った場合
は、誤ったエラーチェックコードP0〜P3に対応する
グループのパリティチェックの結果に誤りが生じるた
め、これも検出することができる。
【0087】ここで、従来技術のCRC符号を使用して
エラーチェックを行なう場合と比較してみると、8ビッ
トのデータにおいて任意の3ビット誤りを検出可能とす
るためのエラーチェックコードの符号長は、CRC符号
では、5ビット必要であるのに対し、本実施例では上述
したように4ビットでよい。このように、より効率のよ
いエラーチェックコードを提供でき、効率のよいデータ
伝送を行なうことができるのである。
エラーチェックを行なう場合と比較してみると、8ビッ
トのデータにおいて任意の3ビット誤りを検出可能とす
るためのエラーチェックコードの符号長は、CRC符号
では、5ビット必要であるのに対し、本実施例では上述
したように4ビットでよい。このように、より効率のよ
いエラーチェックコードを提供でき、効率のよいデータ
伝送を行なうことができるのである。
【0088】また、エラーチェックコード生成回路22
およびエラーチェック回路36は、いずれも、排他的論
理和回路を中心とした、簡単な論理回路により構成され
ており、送信回路および受信回路を小型化することがで
きる。以上、本発明の一実施例について説明したが、本
発明は上記実施例に限定されるものではなく、様々な態
様で実施することができる。
およびエラーチェック回路36は、いずれも、排他的論
理和回路を中心とした、簡単な論理回路により構成され
ており、送信回路および受信回路を小型化することがで
きる。以上、本発明の一実施例について説明したが、本
発明は上記実施例に限定されるものではなく、様々な態
様で実施することができる。
【0089】例えば、上記実施例においては、エラーチ
ェック回路36は、単にデータのエラーの有無を調べて
いるだけであるが、伝送データの1フレーム内に発生す
るデータエラーが、せいぜい1ビットだけという、比較
的伝送路の信頼性の高い通信システムにて使用される場
合は、エラーチェックコードP0〜P3のエラーの有無
をチェックするパリティ符号を更に1ビット追加するこ
とにより、1ビット誤りのエラー訂正を行なうことがで
きる。
ェック回路36は、単にデータのエラーの有無を調べて
いるだけであるが、伝送データの1フレーム内に発生す
るデータエラーが、せいぜい1ビットだけという、比較
的伝送路の信頼性の高い通信システムにて使用される場
合は、エラーチェックコードP0〜P3のエラーの有無
をチェックするパリティ符号を更に1ビット追加するこ
とにより、1ビット誤りのエラー訂正を行なうことがで
きる。
【0090】即ち、伝送データに付加されたエラーチェ
ックコードP0〜P3に誤りがないことが明かであれ
ば、排他的論理和回路XOR8〜XOR11のチェック
出力C0〜C3は、データD0〜D7の誤りビットに応
じて、夫々[表1]に示すようなパタンとなり、互いに
同じパタンとなる場合がないので、このチェック出力C
0〜C3により、誤ったビットを特定することができ、
誤りを訂正することができるのである。
ックコードP0〜P3に誤りがないことが明かであれ
ば、排他的論理和回路XOR8〜XOR11のチェック
出力C0〜C3は、データD0〜D7の誤りビットに応
じて、夫々[表1]に示すようなパタンとなり、互いに
同じパタンとなる場合がないので、このチェック出力C
0〜C3により、誤ったビットを特定することができ、
誤りを訂正することができるのである。
【0091】
【表1】
【0092】例えば、チェック出力C0,C3が誤りで
あることを表していた場合、[表1]よりビットD6が
誤りを起こしたことがわかる。また、上記実施例では、
各スレーブS1,S2,…に使用すべき基本ブロックB
Lnを割当て、全ての伝送データを各スレーブS1,S
2,…に受信させることにより、マスタMは、希望する
スレーブS1,S2にデータを送信しているが、送信回
路6のエラーチェックコード生成回路22を、外部から
の指示に応じて、エラーチェックコードP0〜P3を奇
数パリティあるいは偶数パリティのいずれによっても生
成できるように構成し、受信回路8のエラーチェック回
路36を、例えばスレーブS1は、奇数パリティでチェ
ックし、スレーブS2は、偶数パリティでチェックする
というように構成すれば、アドレス等を付加することな
く、希望するスレーブだけに伝送データを受信させるこ
とができる。
あることを表していた場合、[表1]よりビットD6が
誤りを起こしたことがわかる。また、上記実施例では、
各スレーブS1,S2,…に使用すべき基本ブロックB
Lnを割当て、全ての伝送データを各スレーブS1,S
2,…に受信させることにより、マスタMは、希望する
スレーブS1,S2にデータを送信しているが、送信回
路6のエラーチェックコード生成回路22を、外部から
の指示に応じて、エラーチェックコードP0〜P3を奇
数パリティあるいは偶数パリティのいずれによっても生
成できるように構成し、受信回路8のエラーチェック回
路36を、例えばスレーブS1は、奇数パリティでチェ
ックし、スレーブS2は、偶数パリティでチェックする
というように構成すれば、アドレス等を付加することな
く、希望するスレーブだけに伝送データを受信させるこ
とができる。
【0093】即ち、例えば、スレーブS1にデータを送
信したい場合、マスタMは、エラーチェックコードP0
〜P3が奇数パリティにて生成された伝送データを送出
することにより、スレーブS2では、この伝送データを
受信しても、エラーチェックの結果、エラーが検出され
破棄されることになり、結局、目的のスレーブS1だけ
が伝送データを受信できるのである。
信したい場合、マスタMは、エラーチェックコードP0
〜P3が奇数パリティにて生成された伝送データを送出
することにより、スレーブS2では、この伝送データを
受信しても、エラーチェックの結果、エラーが検出され
破棄されることになり、結局、目的のスレーブS1だけ
が伝送データを受信できるのである。
【0094】なお、マスタMのエラーチェックコード生
成回路22にて、エラーチェックコードP0〜P3を奇
数パリティまたは偶数パリティのいずれによっても生成
できるようにするには、例えば、図1において、パリテ
ィを生成する各排他的論理和回路XOR1〜XOR4の
入力に、新たに選択信号を追加すればよい。また、排他
的論理和回路XOR1〜XOR4の出力に、反転回路N
OT5〜NOT8の代わりに、イネーブル入力付の反転
回路およびバッファ回路が並列に配置されたものを接続
し、選択信号をイネーブル入力に接続して、選択信号の
H/Lに従い、反転回路あるいはバッファ回路のいずれ
かの出力が有効となるように構成してもよい。
成回路22にて、エラーチェックコードP0〜P3を奇
数パリティまたは偶数パリティのいずれによっても生成
できるようにするには、例えば、図1において、パリテ
ィを生成する各排他的論理和回路XOR1〜XOR4の
入力に、新たに選択信号を追加すればよい。また、排他
的論理和回路XOR1〜XOR4の出力に、反転回路N
OT5〜NOT8の代わりに、イネーブル入力付の反転
回路およびバッファ回路が並列に配置されたものを接続
し、選択信号をイネーブル入力に接続して、選択信号の
H/Lに従い、反転回路あるいはバッファ回路のいずれ
かの出力が有効となるように構成してもよい。
【図1】 エラーチェックコード生成回路22の詳細を
表す回路図である。
表す回路図である。
【図2】 本実施例の車両用通信システムの全体構成を
表すブロック図である。
表すブロック図である。
【図3】 本実施例において通信線Lを介して送受信さ
れる伝送データの構成を表す説明図である。
れる伝送データの構成を表す説明図である。
【図4】 送信回路6の構成を表すブロック図である。
【図5】 受信回路8の構成を表すブロック図である。
【図6】 発振回路28の詳細を表す回路図である。
【図7】 エラーチェック回路36の詳細を表す回路図
である。
である。
【図8】 タイミング生成回路40の動作を説明する動
作説明図である。
作説明図である。
【図9】 通信速度学習回路30の詳細を表す回路図で
ある。
ある。
【図10】 分周回路32の詳細を表す回路図である。
【図11】 通信速度学習回路30の動作を説明する動
作説明図である。
作説明図である。
【図12】 分周回路32の動作を説明する動作説明図
である。
である。
2…電源回路 4…ECU 6…送信回路
8…受信回路 10…駆動制御回路 12…フレーム生成部 14
…ドライバ部 16…レシーバ部 18…電圧比較器 20…シフ
トレジスタ 22…エラーチェックコード生成回路 24…送信ク
ロック生成回路 26…レシーバ 28…発振回路 30…通信速度
学習回路 32…分周回路 34…シフトレジスタ 36…エ
ラーチェック回路 38…受信バッファ 40…タイミング生成回路
41…リングオシレータ 42…立下りエッジ検出回路 44…立上りエッジ検
出回路 46…ハイレベルカウンタ 48…ロウレベルカウン
タ 50,56…比較器 52…レジスタ 54…ダウ
ンカウンタ
8…受信回路 10…駆動制御回路 12…フレーム生成部 14
…ドライバ部 16…レシーバ部 18…電圧比較器 20…シフ
トレジスタ 22…エラーチェックコード生成回路 24…送信ク
ロック生成回路 26…レシーバ 28…発振回路 30…通信速度
学習回路 32…分周回路 34…シフトレジスタ 36…エ
ラーチェック回路 38…受信バッファ 40…タイミング生成回路
41…リングオシレータ 42…立下りエッジ検出回路 44…立上りエッジ検
出回路 46…ハイレベルカウンタ 48…ロウレベルカウン
タ 50,56…比較器 52…レジスタ 54…ダウ
ンカウンタ
Claims (5)
- 【請求項1】 2n (n>1)個の2値化データからな
るシリアルデータのエラーチェックコードを生成するエ
ラーチェックコード生成装置であって、 上記2値化データの各ビットに0から2n−1 までの番
号を順番に割り当て、該番号を2進表現して得られるn
桁の2進値の各桁毎に、当該桁の値が0または1の所定
値となる上記2進値を抽出し、該抽出された2進値に対
応する上記番号が割り当てられている2n-1 個の上記2
値化データを夫々第1ないし第nのグループとし、各グ
ループに属する2値化データを夫々対象としたn個のパ
リティ符号を生成するn個のパリティ符号生成手段と、 上記第1ないし第nのグループのいずれかにおいて該グ
ループの対象とならなかった2n-1 個の2値化データを
第n+1のグループとし、当該グループに属する2値化
データを対象としたパリティ符号を生成するパリティ符
号生成手段と、 を備え、上記各パリティ符号生成手段にて生成されたn
+1個のパリティ符号を上記シリアルデータのエラーチ
ェックコードとして出力することを特徴とするエラーチ
ェックコード生成装置。 - 【請求項2】 2n 個の2値化データに、請求項1に記
載のエラーチェックコード生成装置により生成された上
記エラーチェックコードが付加されたシリアルデータの
ビット誤りを検出するエラーチェック装置であって、 上記2n 個の2値化データを上記第1ないし第n+1の
グループにグループ分けし、各グループ毎に、当該グル
ープに属する2n-1 個の2値化データを対象としたパリ
ティ符号を生成するn+1個のパリティ符号生成手段
と、 該各パリティ符号生成手段にて生成されたn+1個のパ
リティ符号と、上記エラーチェックコードとして上記シ
リアルデータに付加されたn+1個のパリティ符号とを
対応するグループ毎に比較することにより、各グループ
毎にパリティエラーを夫々検出するn+1個のパリティ
チェック手段と、 を備えたことを特徴とするエラーチェック装置。 - 【請求項3】 請求項1に記載のエラーチェックコード
生成装置において、更に、上記各パリティ符号生成手段
により生成されたn+1個のパリティ符号を第n+2の
グループとし、当該グループに属するn+1個のパリテ
ィ符号を対象としたパリティ符号を生成するパリティ符
号生成手段を設け、 該パリティ符号生成手段を含むn+2個のパリティ符号
生成手段にて生成されたn+2個のパリティ符号をエラ
ーチェックコードとして出力することを特徴とするエラ
ーチェックコード生成装置。 - 【請求項4】 2n 個の2値化データに、請求項3に記
載のエラーチェックコード生成装置により生成された上
記エラーチェックコードが付加されたシリアルデータの
ビット誤りを検出するエラーチェック装置であって、 上記2n 個の2値化データを上記第1ないし第n+1の
グループにグループ分けし、各グループ毎に、当該グル
ープに属する2n-1 個の2値化データを対象としたパリ
ティ符号を生成するn+1個のパリティ符号生成手段
と、 上記エラーチェックコードとして上記シリアルデータ付
加された上記第1ないし第n+1のグループに対応する
n+1個のパリティ符号を第n+2のグループとし、当
該グループに属するn+1個のパリティ符号を対象とし
たパリティ符号を生成するパリティ符号生成手段と、 該パリティ符号生成手段を含むn+2個の上記パリティ
符号生成手段により生成されたn+2個のパリティ符号
と、上記エラーチェックコードとして上記シリアルデー
タに付加されたn+2個のパリティ符号とを対応するグ
ループ毎に比較することにより、各グループ毎にパリテ
ィエラーを夫々検出するn+2個のパリティチェック手
段と、 上記第n+2のグループに対応したパリティチェック手
段により、当該グループに属する第1ないし第n+1の
グループに対応したn+1個のパリティ符号に誤りがな
いことが確認されると、第1ないし第n+1のグループ
に対応したn+1個のパリティチェック手段による検出
結果に基づき、誤りビットの訂正を行なう誤り訂正手段
と、 を備えたことを特徴とするエラーチェック装置。 - 【請求項5】 請求項1または請求項3に記載のエラー
チェックコード生成装置であって、 上記各パリティ符号生成手段は、外部からの指示に従
い、偶数パリティあるいは奇数パリティのいずれによる
パリティ符号でも生成可能であることを特徴とするエラ
ーチェックコード生成装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6172476A JPH0837464A (ja) | 1994-07-25 | 1994-07-25 | エラーチェックコード生成装置およびエラーチェック装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP6172476A JPH0837464A (ja) | 1994-07-25 | 1994-07-25 | エラーチェックコード生成装置およびエラーチェック装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0837464A true JPH0837464A (ja) | 1996-02-06 |
Family
ID=15942700
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP6172476A Pending JPH0837464A (ja) | 1994-07-25 | 1994-07-25 | エラーチェックコード生成装置およびエラーチェック装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0837464A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100322574B1 (ko) * | 1998-07-01 | 2002-03-08 | 윤종용 | 오류 검출 코드의 생성방법 |
JP2008005419A (ja) * | 2006-06-26 | 2008-01-10 | Alaxala Networks Corp | 情報処理装置および情報処理方法 |
JP2008502215A (ja) * | 2004-06-03 | 2008-01-24 | シリコン・ラボラトリーズ・インコーポレイテッド | スペクトル拡散アイソレータ |
JP2010133891A (ja) * | 2008-12-08 | 2010-06-17 | Yokohama Rubber Co Ltd:The | タイヤ状態監視方法及び監視システム |
JP2011078115A (ja) * | 2010-11-15 | 2011-04-14 | Alaxala Networks Corp | 情報処理装置および情報処理方法 |
-
1994
- 1994-07-25 JP JP6172476A patent/JPH0837464A/ja active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100322574B1 (ko) * | 1998-07-01 | 2002-03-08 | 윤종용 | 오류 검출 코드의 생성방법 |
JP2008502215A (ja) * | 2004-06-03 | 2008-01-24 | シリコン・ラボラトリーズ・インコーポレイテッド | スペクトル拡散アイソレータ |
JP2008005419A (ja) * | 2006-06-26 | 2008-01-10 | Alaxala Networks Corp | 情報処理装置および情報処理方法 |
JP4648255B2 (ja) * | 2006-06-26 | 2011-03-09 | アラクサラネットワークス株式会社 | 情報処理装置および情報処理方法 |
US8527834B2 (en) | 2006-06-26 | 2013-09-03 | Alaxala Networks Corporation | Information processing device and information processing method |
JP2010133891A (ja) * | 2008-12-08 | 2010-06-17 | Yokohama Rubber Co Ltd:The | タイヤ状態監視方法及び監視システム |
WO2010067715A1 (ja) * | 2008-12-08 | 2010-06-17 | 横浜ゴム株式会社 | タイヤ状態監視方法及びタイヤ状態監視システム |
KR101384257B1 (ko) * | 2008-12-08 | 2014-04-11 | 요코하마 고무 가부시키가이샤 | 타이어 상태 감시 방법 및 타이어 상태 감시 시스템 |
US8781760B2 (en) | 2008-12-08 | 2014-07-15 | The Yokohama Rubber Co., Ltd. | Tire condition monitoring method and tire condition monitoring system |
JP2011078115A (ja) * | 2010-11-15 | 2011-04-14 | Alaxala Networks Corp | 情報処理装置および情報処理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5787132A (en) | Data communication system having improved synchronization capability | |
US5450403A (en) | Method and apparatus for multiplex transmission | |
US5687103A (en) | Position measuring device | |
EP0352970B1 (en) | System and method for detecting character boundaries in a serial coded data stream | |
CN1171398C (zh) | 集成电路之间的串行数据通信 | |
US5027356A (en) | Error control system | |
JPS594906B2 (ja) | デジタルデ−タを伝送する方法および装置 | |
JPS62151032A (ja) | たたみ込み符号器および最尤復号器 | |
US5982294A (en) | Paging receiver which performs data communication protocol analysis through execution of control program | |
EP0127984A2 (en) | Improvements to apparatus for decoding error-correcting codes | |
EP0367435A2 (en) | Data communication system using repetition of transmission | |
JPH08223048A (ja) | データ変換方式 | |
JPH0837464A (ja) | エラーチェックコード生成装置およびエラーチェック装置 | |
JPH08335955A (ja) | データ伝送用の符号化方法および装置 | |
EP0383925B1 (en) | Device for detecting the position of a broken line in a serial control system | |
US5889817A (en) | Communication system with data comparison circuit | |
US4959834A (en) | Word syncronization system and method | |
JPH07170200A (ja) | 巡回冗長検査同期装置 | |
CN1044757C (zh) | 用于检测维特比译码器中同步的方法和电路 | |
JPH0439929B2 (ja) | ||
EP0530030A2 (en) | Circuit for detecting synchronizing signal in frame synchronization data transmission | |
CN116192993A (zh) | 一种数据传输电路、恒流驱动芯片和显示系统 | |
JP5644570B2 (ja) | 通信方法、通信システム及びそのデバイス | |
US5642369A (en) | Quick resynchronization receiver for sequential decoding of convolutional codes | |
JP2004173199A (ja) | 巡回符号を用いた誤り訂正回路 |