(57)【要約】【課題】データ衝突の問題の解消と、通信エラーの検知という要請を満たしつつ、データ通信装置の回路規模を縮小する。【解決手段】相互にデータの送受信を行なうため通信線Ｓに対して複数接続されるデータ通信装置１であって、送信データを記憶する送信用レジスタ３２２に接続され、通信エラーを検知するための確認符号を送信データに基づいて作成する送信用誤り訂正符号回路３１と、受信データを記憶する受信用レジスタ３２２に接続され、受信データに基づいて確認符号を作成する受信用誤り訂正符号回路３３とを設ける。この送信用誤り訂正符号回路３１又は受信用誤り訂正符号回路３３が作成した確認符号の少なくとも一方に基づいて、通信データの衝突が生じたときに待ち時間を設定するための乱数を生成する。【選択図】      図２
2005020200.tif 000002
【特許請求の範囲】
【請求項１】
通信線に対して複数のデータ通信装置を接続し、該データ通信装置間でデータの送受信を相互に行なうにあたり、
送信すべきデータに対し、通信エラーを検知するための確認符号を付随させて前記通信線に対してデータ送信を行なうと共に、前記通信線を介して受信したデータに付随している前記確認符号を検出して評価することで通信エラーの有無を知見するデータ通信方法において、
前記通信線上で複数のデータ通信装置が送信を行なう際に、前記確認符号の一部を用いて所定の待ち時間を設定し、該待ち時間後にデータを送信することを特徴とするデータ通信方法。
【請求項２】
相互にデータの送受信を行なうため通信線に対して複数接続されるデータ通信装置であって、
前記通信線に送信するデータを一時的に保存する送信用レジスタと、
前記通信線を介して受信した信号を一時的に保存する受信用レジスタと、
前記送信用レジスタに接続され、通信エラーを検知するための確認符号を送信データに基づいて作成する送信用誤り訂正符号回路と、
前記受信用レジスタに接続され、受信データに基づいて確認符号を作成する受信用誤り訂正符号回路とを備え、
前記送信用誤り訂正符号回路又は受信用誤り訂正符号回路が作成した確認符号の少なくとも一方に基づいて、通信データの衝突防止用の乱数を生成することを特徴とするデータ通信装置。
【請求項３】
請求項２に記載のデータ通信装置において、前記送信用誤り訂正符号回路が作成した確認符号と、前記受信用誤り訂正符号回路が作成した確認符号とに基づいて演算を行なう演算回路を設け、
該演算回路の演算結果により通信データの衝突防止用の乱数を生成することを特徴とするデータ通信装置。
【請求項４】
請求項２に記載のデータ通信装置において、前記送信用誤り訂正符号回路が作成した確認符号、及び前記受信用誤り訂正符号回路が作成した確認符号の中から任意のデータを選択するセレクト回路を設け、
該セレクト回路が選択したデータに基づいて、通信データの衝突防止用の乱数を生成することを特徴とするデータ通信装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は通信線に多数のデータ通信装置を接続し、これら通信装置間で相互にデータ通信を行なうデータ通信方法及びデータ通信装置に関するものである。
【０００２】
【従来の技術】
一般家庭やオフィス、工場などにおいて、通信ケーブルや光ファイバを通信線とし、これに多数のデータ通信装置を接続して相互通信を行なわせるデータ通信方式が益々発達している。また、前記通信線として既設の電力線を活用し、該電力線に対してデータ通信装置を接続して相互通信を行なわせる電力線通信方式も発達しつつある。
【０００３】
このようなデータ通信方式にあっては、複数の通信装置が同時に通信線に対してデータを送信してしまうことがあり、この場合いわゆる送信データの衝突の問題が生じるので、かかる衝突に対する対応策が必要となる。従来、このような対応策として、各通信装置が通信線上の信号の有無を監視し、通信路上に信号が存在しない場合に送信を開始すると共に、他の通信装置が同時に送信を開始したために通信路上で信号の衝突が発生した場合には、その衝突を検知して所定の待ち時間経過後に再度送信を行なう方式が知られている。
【０００４】
また、上記のように、信号の衝突を検知した複数の通信装置が、同一の待ち時間経過後に再び送信を行った場合には、送信された信号の衝突が繰り返されてしまうことになる。そこで、各通信装置で乱数を生成し、この乱数を用いて通信装置毎に異なる待ち時間経過後に送信を行うことで、信号の衝突が発生する確率を低下させる方式が知られている（例えば、特許文献１参照）。
【０００５】
一方、複数の通信装置間において、通信がエラーなく正常に行なわれたかを確認する必要もある。その確認方式として、送信すべきデータに対し、通信エラーを検知するための確認符号を付随させた状態でデータ送信を行うと共に、通信線を介して受信したデータに付随している前記確認符号を検出して評価することで通信エラーの有無を確認したり、もしくはエラーが検知された場合に該エラーを訂正するようなデータ通信方法も知られている。
【０００６】
このような通信エラー検知方式として一般的に用いられているものは、ＣＲＣ（Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）方式である。このＣＲＣ方式では、伝送すべきデータ列を高次の多項式（メッセージ多項式）とみなし、これをあらかじめ定められた生成多項式でＣＲＣ処理（所定次数の生成多項式による割り算）を行い、その余りであるＢＣ（Ｂｌｏｃｋ  Ｃｈｅｃｋ）コードを確認符号として伝送すべきデータの最後部に付加して送信する。そして受信側では、受信したデータに対して同じ生成多項式でＣＲＣ処理を、送信されたデータとこれに付加された確認符号まで行い、その計算結果が特定の値に一致（剰余が０の場合）すればデータに誤りがないと判定し、計算結果が特定の値と一致しない場合（剰余が０にならない場合）には、データに誤りがあると判定している。
【０００７】
【特許文献１】
特開昭５８−４７３５０号公報
【０００８】
【発明が解決しようとする課題】
このように複数の通信装置間でデータ通信を行なう場合、データ衝突の問題の解消と、通信エラーの検知という要請が存在するのであるが、これらの要請を満たすには、それぞれ別個に回路的手当てを施す必要がある。具体的には、データ衝突の対応策として、特許文献１に開示されているような、送信の待ち時間を設定するための乱数生成回路が必要となり、また通信エラーの検知のためには、送信側にはエラー検知用確認符号を発生させる回路、及び受信側には前記確認信号を検出したりエラーを訂正したりする回路が必要となる。従って、これら回路を本来のデータ送受信回路に付設する関係上、回路規模が大きくなってしまうという不都合があった。
【０００９】
本発明はかかる事情に鑑みてなされたもので、データ衝突の問題の解消と、通信エラーの検知という要請を満たしつつ、回路規模を縮小し得るデータ通信方法及びデータ通信装置を提供することを目的とする。
【００１０】
【課題を解決するための手段】
上記目的を達成するため、請求項１に記載のデータ通信方法は、通信線に対して複数のデータ通信装置を接続し、該データ通信装置間でデータの送受信を相互に行なうにあたり、送信すべきデータに対し、通信エラーを検知するための確認符号を付随させて前記通信線に対してデータ送信を行なうと共に、前記通信線を介して受信したデータに付随している前記確認符号を検出して評価することで通信エラーの有無を知見するデータ通信方法において、前記通信線上で複数のデータ通信装置が送信を行なう際に、前記確認符号の一部を用いて所定の待ち時間を設定し、該待ち時間後にデータを送信することを特徴とするものである。
【００１１】
通信エラーを検知するための確認符号（上述のＣＲＣ方式においてはＢＣコードが相当）は、一般に情報量はさほど大きくはないものの、前記通信エラー検知以外の処理にも活用できる程度の情報量は有している。さらに、通常は複数のデータ通信装置間でデータの送受信を行なう場合には、各データ通信装置は他の通信装置との識別のための固有のアドレスを具備しており、前記確認符号も通常は各データ通信装置固有のデータを元にして生成されることから、当該確認符号がそれぞれのデータ通信装置によって相違している可能性は高いものとなる。従って、かかる確認符号の一部を活用して、例えば確認符号の値に基づいて乱数を作成するなどして、データ衝突後の再送信のための待ち時間設定を行なえば、再送信の際に他のデータ通信装置とのデータ送信の再衝突が生じる確率を極めて低いレベルに抑制することができる。
【００１２】
また、請求項２に記載のデータ通信装置は、相互にデータの送受信を行なうため通信線に対して複数接続されるデータ通信装置であって、前記通信線に送信するデータを一時的に保存する送信用レジスタと、前記通信線を介して受信した信号を一時的に保存する受信用レジスタと、前記送信用レジスタに接続され、通信エラーを検知するための確認符号を送信データに基づいて作成する送信用誤り訂正符号回路と、前記受信用レジスタに接続され、受信データに基づいて確認符号を作成する受信用誤り訂正符号回路とを備え、前記送信用誤り訂正符号回路が作成した確認符号、又は受信用誤り訂正符号回路が作成した確認符号の少なくとも一方に基づいて、通信データの衝突防止用の乱数を生成することを特徴としている。
【００１３】
このようなデータ通信装置によれば、通信データの衝突防止用の乱数を、通信エラー検知のための確認符号を用いて生成する構成であるので、従来のように乱数発生回路を別途設けずとも同様な乱数の生成が可能となり、該生成された乱数に基づいてデータ再送信のための待ち時間設定が可能となる。従って、乱数発生機能を担保しつつも、回路的付加は特段必要としないことから、回路規模を小さいままに維持できるようになる。
【００１４】
さらに、請求項３のデータ通信装置は、請求項２において、前記送信用誤り訂正符号回路が作成した確認符号と、前記受信用誤り訂正符号回路が作成した確認符号とに基づいて演算を行なう演算回路を設け、該演算回路の演算結果により通信データの衝突防止用の乱数を生成することを特徴とする。
【００１５】
このように送信用誤り訂正符号回路と受信用誤り訂正符号回路とがそれぞれ作成する確認符号を演算させることにより、得られる演算結果（値）は、より一層、他のデータ通信装置とは異なる値となる可能性が高くなる。従って、上記と同様に別途乱数発生回路を設ける必要がないというメリットがあると共に、その演算結果に基づいて乱数を生成し待ち時間を設定することにより、再送信の際に、より再衝突が発生しにくい待ち時間設定を行なうことができる。
【００１６】
また、請求項４のデータ通信装置は、請求項２において、前記送信用誤り訂正符号回路が作成した確認符号、及び前記受信用誤り訂正符号回路が作成した確認信号の中から任意のデータを選択するセレクト回路を設け、該セレクト回路が選択したデータに基づいて、通信データの衝突防止用の乱数を生成することを特徴とするものである。
【００１７】
このようにセレクト回路にて確認信号から任意にデータを選出して乱数生成のための元データとする方法によっても、より一層、他のデータ通信装置と異なる値を得る可能性を高くできるので、同様に再送信の際に、より再衝突が発生しにくい待ち時間設定を行なうことができるものである。
【００１８】
【発明の実施の形態】
以下、図面に基づいて本発明の実施態様につき説明する。
【００１９】
（第１実施形態）
図１は本発明にかかるデータ通信方法を実施するための概略ブロック図である。本発明を実施するにあたっては、通信線Ｓに複数のデータ通信装置１，１，・・・を接続し、データ通信装置１相互間で通信可能なように構成される。ここで通信線Ｓとしては、メタル通信ケーブルや光ファイバなどの通常の通信線を当然用いることができるが、電力線通信方式において活用される電力供給用配線であっても良い。電力線通信方式は、家庭内などに商用交流電圧を供給するために配線されている電力線に、数百Ｈｚから数十ＭＨｚの高周波通信信号を重畳して送信し、専用接続装置（データ通信装置）で通信信号をのみ受信して通信する方式である。この方式は、多くの費用がかかる専用線や基幹ネットワークを設置する必要がなく、既存のコンセント等に前記データ通信装置接続することにより、インターネット接続等の外部ネットワークや家庭内ＬＡＮなどの近距離通信網として利用できる便利で経済的な通信網であり、本発明の好適な適用用途である。
【００２０】
図２は上記したデータ通信装置１の装置構成を示すブロック図である。データ通信装置１は、マイクロコンピュータ（以降、マイコンと称す）２、デジタル回路部３及びアナログ回路部４から構成され、前記通信線４に接続されると共に、通信線４に接続された他のデータ通信装置１との間でデータの送受信を行うものである。
【００２１】
マイコン２は、他のデータ通信装置１との間でデータの送受信を行うためのプログラムを備え、デジタル回路部３との間でデータの入出力を行う。上述の電力線通信を行なう場合の一例について説明すると、マイコン２には、例えば人が通ったことを検出するセンサと照明装置（図示せず）とが接続され、センサからの出力信号を受付けたり、照明装置の点灯、消灯を制御したりするプログラムを具備させる。そして、マイコン２は、前記センサから人を検出した旨の信号を受付けると、照明装置を点灯させると共に、センサが設置された場所を人が通ったことを示すデータをデジタル回路部３へ出力することによって、このデータを通信線Ｓに接続された他のデータ通信装置１へ送信する。またマイコン２は、他のデータ通信装置１から送信されてきた照明装置の消灯を要求するデータがデジタル回路部３によって受信された場合に、このデータをデジタル回路部３から読み出して、照明装置を消灯させるものである。このような照明装置の点灯・消灯だけでなく、各種家電機器の動作制御にも勿論適用可能である。
【００２２】
アナログ回路部４は、デジタル回路部３からシリアルに出力されたシリアルデータを、例えば電力線通信方式で用いられる信号レベルに変換して通信線Ｓへ送信するアンプ４１と、通信線Ｓから電力線通信方式で用いられる信号レベルで受信したシリアルデータをデジタル回路部３で用いられる信号レベルに変換してデジタル回路部３へ出力するレシーバ４２とを備えている。
【００２３】
デジタル回路部３は、バッファレジスタ３２１、送信レジスタ３２２、送信用誤り訂正符号回路３１、制御回路３０、衝突検知回路３５、受信レジスタ３３２、バッファレジスタ３３１、受信用誤り訂正符号回路３３及び待ち時間カウンタ３４を備える。後記で詳述する通り、本発明においては送信用誤り訂正符号回路３１及び／又は受信用誤り訂正符号回路３３が作成する通信エラー検知用の確認符号に基づいて、通信データ衝突防止用の乱数を発生する構成であるので、従来のデータ通信装置においては付設されていた乱数発生回路は省略されている。以下、各部の説明を行なう。
【００２４】
バッファレジスタ３２１は、マイコン２から出力されたデータを記憶すると共にそのデータを送信レジスタ３２２と送信用誤り訂正符号回路３１へ出力する。送信レジスタ３２２は、例えばシフトレジスタ等を用いて構成され、バッファレジスタ３２１から出力されたデータを記憶すると共に制御回路３０からの制御信号に従って記憶したデータを１ビットずつシリアルにアナログ回路部４のアンプ４１及び衝突検知回路３５へ出力する。また、送信レジスタ３２２は、記憶していたデータをすべて出力し終わった後、通信線Ｓでのデータの衝突が検出されなかった場合、バッファレジスタ３２１から新たに出力されたデータを取込んで記憶する。
【００２５】
受信レジスタ３３２は、例えばシフトレジスタ等を用いて構成され、アナログ回路部４のレシーバ４２から出力されたシリアルデータを記憶すると共に、パラレルデータに変換してバッファレジスタ３３１及び受信用誤り訂正符号回路３３へ出力する。なお、受信レジスタ３３２は、例えば前記レシーバ４２から出力されたデータを確認して、宛先のアドレスが自分宛てのデータだけをバッファレジスタ３３１へ出力したり、データに付加された制御コードからデータの先頭を検出したりするものであってもよい。
【００２６】
バッファレジスタ３３１は、受信レジスタ３３２から出力されたデータを記憶すると共に、記憶したデータをマイコン２によって読み出し可能に構成される。そして、バッファレジスタ３３１は、記憶していたデータがマイコン２から読み出された後に、受信レジスタ３３２から新たに出力されたデータを取込んで記憶する。
【００２７】
衝突検知回路３５は、例えば排他的論理和回路などから構成され、送信レジスタ３２２から出力されたデータと、アナログ回路部４のレシーバ４２から出力されたデータとが一致しない場合に、通信線Ｓ上でデータの衝突が発生したものとして、制御回路３０へ衝突検知信号を出力する。
【００２８】
送信用誤り訂正符号回路３１は、通信エラーを確認するための確認符号を作成する役目をなし、例えば前述のＣＲＣ方式の回路により構成される。ＣＲＣ方式の場合、具体的には該送信用誤り訂正符号回路３１は、マイコン２からバッファレジスタ３２１を介して入力されるデータをアナログ回路部４へ送信する場合において、マイコン２からシリアルに受信するデータの１ビット毎に、あらかじめ定められた生成多項式でＣＲＣ処理（所定次数の生成多項式による割り算）を行う。そしてマイコン２から送られてきた最後のデータを処理したときの値を記憶すると共に、アナログ回路部４へシリアルに送信するデータの最後に、前記１ビット毎のＣＲＣ処理により作成された確認符号（ＣＲＣ処理の余りであるＢＣコード）を付加して送信を行なう。
【００２９】
受信用誤り訂正符号回路３３は、前記確認符号を処理し、通信エラーが存在するか否かの判定を行い、さらに通信エラーが存在した場合は、そのエラーを訂正するための信号を発する役目をなす。同様にＣＲＣ方式の回路で構成することができ、この場合具体的には、アナログ回路部４のレシーバ４２からシリアルに受信するデータの１ビット毎に、送信用誤り訂正符号回路３１において行なったＣＲＣ処理と同様の生成多項式を用いたＣＲＣ処理を行なう。ここで受信用誤り訂正符号回路３３において処理されるデータは、本来の通信データに前記確認信号を加えたデータである。そして、この確認信号を含めたデータの処理結果に基づいて、通信エラーの有無を検知する。
【００３０】
具体的に詳述すると、例えばマイコン２から送られてきたデータを２００ビット、ＣＲＣ方式に基づく送信用誤り訂正符号回路３１のレジスタを８ビットとすると、アナログ回路部４へ送信されるデータは２０８ビットとなる。この送信用誤り訂正符号回路３１の８ビットの値は、２００ビットのデータ処理を行なったときのレジスタの値である。当該送信信号をレシーバ４２から受信すると、受信データは２０８ビットとなり、受信用誤り訂正符号回路３３はこの２０８ビットのデータを処理することになる。かかる２０８ビットのデータ処理結果に基づいて同様に８ビットの確認符号を作成するのであるが、ＣＲＣ方式にあっては、特に送受信において通信エラーが存在しなければ全て前記生成多項式により割り切れることとなり、前記８ビットの確認符号の値は全て０となる。一方、通信エラーが存在する場合は、前記生成多項式によっては割り切れないこととなり、この確認符号の値は全て０にはならない。従って、生成多項式によって割り切れるか否か、つまり確認符号が全て０か、或いは０ではない情報を含んでいるかにより、通信エラーの有無が検知されるものである。
【００３１】
図３は、以上説明した送・受信データ及び確認符号を模式的に示す図である。すなわち、送信用誤り訂正符号回路３１においては、マイコン２から送出されてくるデータを処理することでａ〜ｈの確認符号を作成し、この確認符号をデータに付随させてデータ送信する。一方、受信用誤り訂正符号回路３３においては、この確認符号が付加されたデータを処理し、新たにａ〜ｆの確認符号を作成するのである。
【００３２】
そして本発明においては、送信用誤り訂正符号回路３１及び／又は受信用誤り訂正符号回路３３が作成した、このような通信エラー検知用の確認符号に基づいて、通信データ衝突防止用の乱数を作成する。具体的には、確認符号の値の一部を活用して乱数を作成するもので、図例ではａ〜ｈの値のうちｆ〜ｈの値を用いる場合を示している。この値を用いて乱数を作成する方法としては、例えば、特開平７−３６６７３号公報の段落番号０００２〜００１１に記載の方法が挙げられる。この乱数は、データ衝突が実際に生じたか否かに拘わらず、常時作成される。
【００３３】
なお、送信用誤り訂正符号回路３１においては、マイコン２からの最後の入力データ（上記の例ならば２００ビット目のデータ）を処理したときのレジスタの値を元に乱数を作成すれば良いが、受信用誤り訂正符号回路３３においては、アナログ回路部４から受信した全データビット数（２０８ビット）から、送信用誤り訂正符号回路３１のレジスタのビット数（８ビット）を引いた数のデータを処理した時点におけるレジスタの値を元に乱数を作成するようにする。すなわち、前述した通り、通信エラーが存在しない場合は受信用誤り訂正符号回路３３のレジスタの値は全て０になってしまい乱数が作成できないので、受信したデータの最後のビット（２０８ビット目のデータ）ではなく、マイコン２が送信したデータの最後のビット（２００ビット目のデータ）を処理した時点におけるレジスタの値を元に乱数を作成する。
【００３４】
この場合、他のデータ通信装置が発したデータを受信して得た受信データから乱数を作成すると、他のデータ通信装置と同じ値となってしまう可能性が生じるので、原則として自身が送信したデータを受信して得た受信データに基づいてのみ乱数を生成するよう制御することが望ましい。このような制御を行なえば、受信した全データ（２０８ビット）のうち、どの部分がマイコン２が発したデータ（２００ビット）で、どの部分が送信用誤り訂正符号回路３１が作成した確認符号（８ビット）かが判別可能となる。従って、受信用誤り訂正符号回路３３においてデータ処理を行なう際に確認符号のデータ処理へ移行する境界が判別できるので、上記の乱数を生成するポイントが明確になるという利点がある。
【００３５】
このようにして乱数を作成すれば、乱数発生回路が不要となるばかりでなく、データ再送信の際にデータの衝突が発生する確率が低い待ち時間を設定できる乱数を作成することができる。すなわち、一般的に複数のデータ通信装置間でデータの送受信を行なう場合には、各データ通信装置には識別用の固有アドレスが付与されており、該データ通信装置が送信するデータには前記固有アドレスに関わるデータも含まれている。従って、異なるデータ通信装置が送信するデータが全く同一であるということは起こり得ないところ、上記ＣＲＣ方式等によれば、送信用誤り訂正符号回路３１において前記固有アドレスを含む送信データを処理することで得られるレジスタの値を元にして乱数を作成するので、各データ通信装置において異なる乱数が生成される可能性は、１００％とは言えないものの、極めて高くなるのである。
【００３６】
上記の如くして得られた乱数を、待ち時間カウンタ３４にて例えばダウンカウンタのカウント値として設定し、例えば水晶発振器等のクロック生成回路により生成されたクロック、例えばクロック周期が１ｍｓｅｃの基準クロックを用いてダウンカウントを行う。そして、待ち時間カウンタ３４は、ダウンカウンタが零になったときにタイムアップ信号を制御回路３０へ出力する。
【００３７】
制御回路３０は、例えば順序回路等を用いて構成され、衝突検知回路３５から衝突検知信号が出力されたとき、送信レジスタ３２２へデータの出力を中止させると共に、出力中のデータを再送信可能な状態で保持させる制御信号を出力する。さらに、制御回路３０は、送信用誤り訂正符号回路３１又は受信用誤り訂正符号回路３３から乱数を取得し、この乱数が待ち時間カウンタ２１０に設定され、待ち時間カウンタ３４からタイムアップ信号が出力されたとき、制御回路３０は、送信レジスタ３２２に保持させたデータを再び出力させる制御信号を出力する役目を果たす。なお乱数は送信用誤り訂正符号回路３１又は受信用誤り訂正符号回路３３のいずれか一方から取得するようにしても、或いは双方から取得するようにしてもよい。
【００３８】
上記のように構成されたデータ通信装置の動作について説明する。まず図２のデータ通信装置１が通信線Ｓを介して他のデータ通信装置へデータを送信する送信動作を説明する。まずマイコン２によって、送信すべきデータがバッファレジスタ３２１へ出力され、該バッファレジスタ３２１にてマイコン２から出力されたデータが送信データとして記憶され、この送信データが送信レジスタ３２２及び送信用誤り訂正符号回路３１へ出力される。
【００３９】
次に、送信レジスタ３２２において、有効な送信データ、すなわちまだ送信を終わっていない前回の送信データ、あるいは再度送信するための待ち状態にある送信データが記憶されている場合には、送信レジスタ３２２に記憶されている前回の送信データがそのまま保持される。一方、送信レジスタ３２２に有効な送信データが記憶されていない場合には、送信レジスタ３２２はバッファレジスタ３２１から送信データを取り込んで記憶し、これに応じてバッファレジスタ３２１は、マイコン２から新たなデータが出力された場合に、この新たなデータを記憶する。このようにして送信レジスタ３２２に記憶されている送信データを、制御回路３０からの指示によってアナログ回路部４のアンプ４１へ送り、その後アンプ４１は通信線Ｓへ該送信データを送信する。
【００４０】
またデータ通信装置１が通信線Ｓを介して他のデータ通信装置からデータを受信する場合は、他のデータ通信装置から送信されたデータがレシーバ４２によって取込まれると共に受信データとして受信レジスタ３３２へ出力される。この受信データは、受信レジスタ３３２によって記憶され、この受信レジスタ３３２から、記憶された受信データがバッファレジスタ３３１及び受信用誤り訂正符号回路３３へ出力される。
【００４１】
次に、バッファレジスタ３３１に、まだマイコン２によって読み出されていない前回の受信データが記憶されている場合には、バッファレジスタ３３１に記憶されている前回の受信データがバッファレジスタ３３１でそのまま保持される。一方、前回の受信データが既に読み出されている場合には、受信レジスタ３３２から出力された受信データがバッファレジスタ３３１に記憶され、これに対応して、受信レジスタ３３２では、レシーバ４２から出力された新たな受信データが出力された場合、この新たな受信データが記憶される。このようにしてバッファレジスタ３３１に記憶された受信データが、マイコン２によって読み出されるものである。
【００４２】
以上がデータの送受信についての基本動作であるが、続いて、通信線Ｓ上で送信したデータの衝突が発生した場合のデータ再送信動作について説明する。まず、送信レジスタ３２２によって、記憶された送信データがアンプ４１及び衝突検知回路３５へ出力される。アンプ４１が、送信レジスタ２０２から出力された送信データを、通信線Ｓを介して送信するのは前述の通りである。
【００４３】
他方、通信線Ｓからレシーバ４２によって取込まれたデータもまた衝突検知回路３５へ出力され、衝突検知回路３５によって、送信レジスタ３２２から入力されたデータとレシーバ４２から入力されたデータとが比較され、比較されたデータが一致した場合は衝突が発生していないと判断して送信処理を終了する。一方、比較されたデータが一致していない場合は衝突が発生していると判断し、データの再送動作を行わせるべく衝突検知回路３５から制御回路３０へ衝突検知信号が出力される。
【００４４】
制御回路３０はこの衝突検知信号を受けて、送信用誤り訂正符号回路３１及び受信用誤り訂正符号回路３３へ乱数を要求する信号を出力する。かかる信号を受けて、送信用誤り訂正符号回路３１及び受信用誤り訂正符号回路３３の少なくとも一方において、上述した通信エラー検知用の確認符号の一部を初期値として用いた乱数が生成され、この乱数が待ち時間カウンタ３４のカウント値として設定される。このカウント値の分だけ、データの再送信が留保されることになる。
【００４５】
待ち時間カウンタ３４では、基準クロックを用いてカウント値がダウンカウントされ、ダウンカウンタが零になったときにタイムアップ信号が制御回路３０へ出力される。制御回路３０は該タイムアップ信号を受けて送信レジスタ３２２に対し、送信レジスタ３２２において記憶している送信データの再送信を要求する制御信号が出力され、送信レジスタ３２２に記憶されている送信データが再度送信される。
【００４６】
以上のデータ再送信動作により、衝突検知回路３５でデータの衝突が検出された場合に、送信用誤り訂正符号回路３１及び／又は受信用誤り訂正符号回路３３が作成する確認符号を、乱数を生成するための初期値として乱数を生成し、その乱数を基に設定された待ち時間の経過後に送信データの再送信が行われるので、前記確認符号に依拠して乱数を生成すれば乱数の乱雑さは十分であることから、信号の衝突を回避するための送信待ち時間が他のデータ通信装置と異なる確率が増大し、送信時に信号の衝突が繰り返されることを回避することができるものである。
【００４７】
（第２実施形態）
図４は、データ通信装置１の他の実施形態を示すブロック図である。第１実施形態と相違する点は、よりデータ衝突確率の低い乱数を生成するための演算回路３６を設ける点である。その他の部分は実施形態１と同様であるので、演算回路３６の関連部分についてのみ重点的に説明する。
【００４８】
演算回路３６は、送信用誤り訂正符号回路３１及び受信用誤り訂正符号回路３３が作成する確認符号（それぞれのレジスタの値）を演算する機能を有する。すなわち、両者が作成したレジスタ値を取り込んで論理和、論理積などの演算処理を行い、この演算結果に基づいて乱数を生成する。そして、この乱数は待ち時間カウンタ３４へ出力され、待ち時間設定用として用いられる。
【００４９】
このような演算回路３６を備えるデータ通信装置の、データ衝突時における動作を説明する。衝突検知回路３５が衝突を検知し制御回路３０へ衝突検知信号が出力されると、上記と同様に、制御回路３０はこの衝突検知信号を受けて、演算回路３６へ乱数を要求する信号を出力する。かかる信号を受けて演算回路３６は、送信用誤り訂正符号回路３１及び受信用誤り訂正符号回路３３が作成している通信エラー検知用の確認符号（レジスタ値）の一部を取り込む。
【００５０】
演算回路３６では、これらレジスタ値を用いて上述の演算処理を行ない、さらに、該演算処理にて得られた値を元にして乱数が生成される。この乱数が待ち時間カウンタ３４へ入力され、待ち時間カウンタ３４のカウント値として設定される。そして、制御回路３０は、このカウント値の分だけデータの再送信を留保する指示を送信レジスタ３２２に与える。以下は実施形態１と同様に、待ち時間カウンタ３４からのタイムアップ信号を待って、制御回路３０が送信レジスタ３２２に対し再送信を要求し、送信レジスタ３２２に記憶されている送信データが再度送信されるものである。
【００５１】
このような演算回路３６を設ける実施形態によれば、送信用誤り訂正符号回路３１又は受信用誤り訂正符号回路３３がそれぞれ作成する確認符号をそのまま乱数作成のための初期値として用いる場合に比べて、より一層、他のデータ通信装置とは異なる乱数を生成できる可能性が高くなる。しかも、別途乱数発生回路を設ける場合に比較して、単純で小規模な演算回路を付加するだけで済むので、回路規模はさほど拡大しないという利点がある。
【００５２】
（第３実施形態）
図５は、データ通信装置１の他の実施形態を示すブロック図である。第１実施形態と相違する点は、よりデータ衝突確率の低い乱数を生成するためのセレクタ回路３７を設ける点である。その他の部分は実施形態１と同様であるので、セレクタ回路３７の関連部分についてのみ重点的に説明する。
【００５３】
セレクタ回路３７は、送信用誤り訂正符号回路３１及び／又は受信用誤り訂正符号回路３３が作成する確認符号（それぞれのレジスタの値）を任意に選択して抽出する機能を有する。すなわち、送信用誤り訂正符号回路３１と受信用誤り訂正符号回路３３とは、上述したＣＲＣ方式によるとデータ処理を順次行なう毎に異なるレジスタ値を持つ（例えば１９９ビット目のデータ処理の時点におけるレジスタ値と２００ビット目のデータ処理の時点におけるレジスタ値とは異なる）ので、前記セレクタ回路３７により、第一に任意の順番のデータ処理段階におけるレジスタ値を選択可能とし、さらに第二に選択したレジスタ値の何ビット目を採るかも選択可能としている。なお、必ずしも双方を選択可能とせずとも、いずれか一方を選択可能としたセレクタ回路であっても良い。このようにして任意に選択した選択値に基づいて乱数を生成する。そして、この乱数は待ち時間カウンタ３４へ出力され、待ち時間設定用として用いられる。
【００５４】
このようなセレクタ回路３７を備えるデータ通信装置の、データ衝突時における動作を説明する。衝突検知回路３５が衝突を検知し制御回路３０へ衝突検知信号が出力されると、制御回路３０はこの衝突検知信号を受けて、セレクタ回路３７へ乱数を要求する信号を出力する。かかる信号を受けてセレクタ回路３７は、送信用誤り訂正符号回路３１及び受信用誤り訂正符号回路３３が作成している通信エラー検知用の確認符号（レジスタ値）の一部を適宜選択・抽出する。
【００５５】
セレクタ回路３７では、この選択されたレジスタ値を元にして乱数が生成される。この乱数が待ち時間カウンタ３４へ入力され、待ち時間カウンタ３４のカウント値として設定される。そして、制御回路３０は、このカウント値の分だけデータの再送信を留保する指示を送信レジスタ３２２に与える。以下は実施形態１と同様に、待ち時間カウンタ３４からのタイムアップ信号を待って、制御回路３０が送信レジスタ３２２に対し再送信を要求し、送信レジスタ３２２に記憶されている送信データが再度送信されるものである。
【００５６】
このようなセレクタ回路３６を設ける実施形態によれば、第２実施形態と同様に、送信用誤り訂正符号回路３１又は受信用誤り訂正符号回路３３がそれぞれ作成する確認符号をそのまま乱数作成のための初期値として用いる場合に比べて、より一層、他のデータ通信装置とは異なる乱数を生成できる可能性が高くなる。しかも、別途乱数発生回路を設ける場合に比較して、単純で小規模な演算回路を付加するだけで済むので、回路規模はさほど拡大しないという利点がある。
【００５７】
【発明の効果】
以上説明した通りのデータ通信方法及びデータ通信装置によれば、通信エラーを検知するための確認符号を活用して乱数を作成し、データ衝突が生じた際の待ち時間の設定を行なう構成であるので、従来のように乱数発生回路を設置する必要がなく、この種データ通信装置にとっては不可欠の通信エラー検知とデータ衝突対策の要請を満たしつつ、その回路規模を小さくすることができる。
【００５８】
従って、デジタル回路部のコンパクト化が可能となり、例えば電力線通信を行なう場合において、電力線通信用データ通信装置の小型化、低コスト化が図れる等、本発明は優れた効果を奏する。
【図面の簡単な説明】
【図１】本発明にかかるデータ通信方法を実施するための概略ブロック図である。
【図２】本発明にかかるデータ通信装置の一例を示すブロック図である。
【図３】本発明における乱数の生成方法を説明するための模式図である。
【図４】本発明にかかるデータ通信装置の他の例を示すブロック図である。
【図５】本発明にかかるデータ通信装置のさらに他の例を示すブロック図である。
【符号の説明】
１    データ通信装置
２    マイクロコンピュータ（マイコン）
３    デジタル回路部
３０  制御回路
３１  送信用誤り訂正符号回路
３３  受信用誤り訂正符号回路
３４  待ち時間カウンタ
３５  衝突検出回路
３６  演算回路
３７  セレクタ回路
４    アナログ回路部
Ｓ    通信線
【図１】
2005020200.tif 000003
【図２】
2005020200.tif 000004
【図３】
2005020200.tif 000005
【図４】
2005020200.tif 000006
【図５】
2005020200.tif 000007