JP3785291B2 - Data communication method - Google Patents
Data communication method Download PDFInfo
- Publication number
- JP3785291B2 JP3785291B2 JP20841499A JP20841499A JP3785291B2 JP 3785291 B2 JP3785291 B2 JP 3785291B2 JP 20841499 A JP20841499 A JP 20841499A JP 20841499 A JP20841499 A JP 20841499A JP 3785291 B2 JP3785291 B2 JP 3785291B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- frame
- collision
- transmission
- collision detection
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Small-Scale Networks (AREA)
- Monitoring And Testing Of Transmission In General (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、複数の装置やプロセッサ等の間で非同期にデータの送受を行うデータ通信方式に関する。
【0002】
【従来の技術】
従来、複数のデータ通信装置が1つの通信媒体を利用してデータ通信を行う非同期通信では、2つ以上のデータ通信装置から同時にデータ送信が行われることにより、送信されたデータ同士の衝突によるデータの破壊が生じる場合があった。データの破壊が生じると、送受信されるデータの内容が変わってしまうため、送信元の装置あるいは送信先の装置においてデータの衝突が生じたことを検出する必要がある。
【0003】
データの衝突による破壊を検出する代表的なものとして以下の2つがある。一つ目は、通信路上のデータの衝突を検出する専用の検出回路を設ける方法である。例えば、“0”と“1”の各ビットデータが通信路上で衝突した場合に“0”が優先的に伝送されるものとすると、各送信元の装置に設けられたこの検出回路において、自身が送出したデータ“1”が通信路上で“0”に変化している場合には、自身が送出したデータと他の送信元が送出したデータとが衝突したものと判定する。専用の検出回路を用いているため、データの衝突を短時間で検出することができ、次のデータの送信を停止することができるため、優先度が高いデータのみが通信路上に残ることになる。
【0004】
また、2つ目は、通信路上でデータが衝突してもそのままデータの送出を継続し、衝突によって破壊されたデータを検出する方法である。例えば、データ内のCRC符号やバイト単位で付加されるパリティの内容を調べることによりデータの破壊を検出することができる。
【0005】
【発明が解決しようとする課題】
ところで、上述した専用の回路を用いてデータの衝突を検出する方法では、データの衝突検出用に特別なハードウエアが必要になるため、コストの上昇を招くという問題がある。また、通信用の汎用的なマイクロコンピュータ(以後、「マイコン」と称する)を用いる場合には、上述した衝突検出用の回路が備わっていない場合も多いため、使用できるマイコンが限られ、設計の自由度を損なうおそれもある。
【0006】
また、CRC符号等を用いてデータの内容を調べてデータの衝突を検出する方法では、データが衝突して破壊されているにもかかわらず、偶然正しいCRC符号が得られる場合もあり、確実にデータの衝突が検出できるわけではなかった。
【0007】
本発明は、このような点に鑑みて創作されたものであり、その目的は、専用のハードウェアを用いることなく通信路上のデータの衝突を確実に検出することができるデータ通信方式を提供することにある。
【0008】
【課題を解決するための手段】
上述した課題を解決するために、本発明のデータ通信方式では、通信路上に送出されたフレームがないことを条件にフレームの送信が許容される場合に、フレームの送信元に固有の付加データをフレームに付加して通信路に送出し、実際に通信路に送出された付加データの内容に基づいて通信路上でのフレームの衝突を検出している。各送信元に固有の付加データを用いることにより、この付加データ同士が通信路上で衝突したときに必ずその内容の一部が破壊されるため、フレーム同士が衝突したことを確実に検出することができる。また、フレームの衝突を検出することができればよいため、特にハードウエアによる専用の回路を用いる必要がなく、部品等のコストを低減することができる。
【0009】
また、フレームの送信元に備わった衝突検出手段は、自己が送出した付加データと異なる内容の付加データが検出されたときにフレームの衝突を検出することが望ましい。自己が送出した付加データのみを比較対象とすればよいため、処理の簡略化が可能になる。
【0010】
また、フレームの送信先に備わった衝突検出手段は、通信路を介して受信したフレームに対応する付加データが、フレームの送信元に固有の付加データの一覧リストの中に含まれていないときにフレームの衝突を検出することが望ましい。各送信元の付加データを一覧リストとして備えておいてこれを比較対象とすることにより、確実にフレームの衝突を検出することができる。
【0011】
また、通信路を介して行われるフレームの送受信がシリアルデータの形式で行われる場合に、上述した付加データは、連続する複数ビットが同一内容に設定されることが望ましい。通信路上に送出されるフレームの送出タイミングがずれた場合であっても、連続する複数ビットの範囲内であれば、確実にフレームの衝突を検出することができる。
【0012】
【発明の実施の形態】
以下、本発明を適用した一実施形態のデータ通信システムについて、図面を参照しながら説明する。
【0013】
〔第1の実施形態〕
図1は、第1の実施形態のデータ通信システムの全体構成を示す図である。図1に示す本実施形態のデータ通信システムは、音声認識装置1、ナビゲーション装置2、CDチェンジャ3、オーディオ装置4を含んでおり、これらがバス5を介して接続されている。
【0014】
音声認識装置1は、利用者の発声による操作音声に対して音声認識処理を行うものであり、認識結果がバス5を介してデータ通信によってナビゲーション装置2やオーディオ装置4等の他の装置に送られる。ナビゲーション装置2は、自車位置を検出して自車位置周辺の地図を表示したり、利用者によって選択された目的地までの経路探索および経路誘導等を行うものである。
【0015】
CDチェンジャ3は、複数枚のCDが装填されており、利用者によって選択されたCDの記録面に記録された信号を読みとり、音楽等の再生を行うものである。オーディオ装置4は、車室内のダッシュボードに収容された1つの筐体内に含まれるオールインワンタイプのオーディオ機器であり、例えばラジオチューナやカセットテープデッキの他に各種の操作キーを有する操作盤を含んでいる。この操作盤を用いて行われる各種の操作指示は、オーディオ装置4自身に含まれるラジオチューナやカセットテープデッキに対して行われるものの他に、CDチェンジャ3や音声認識装置1等に対して行われるものもある。オーディオ装置4以外の他の装置に対する操作が行われると、その操作状態に応じた操作信号がバス5を介してデータ通信によって他の装置に送られる。
【0016】
次に、ナビゲーション装置2とオーディオ装置4との間で相互にデータ通信を行う場合について詳細に説明する。例えば、ナビゲーション装置2から所定のフレームをオーディオ装置4に対して送信する場合について説明する。図2は、ナビゲーション装置2およびオーディオ装置4の詳細構成を示す図である。
【0017】
図2に示すナビゲーション装置2は、ナビゲーション処理部20およびデータ送信部22を含んで構成されている。ナビゲーション処理部20は、自車位置周辺の地図画像の表示処理や経路探索処理、経路誘導処理等の所定のナビゲーション動作を行うものであり、例えば、経路誘導時に音声案内を行う際にオーディオ装置4に対して送信する音声割り込み要求を示すフレームがデータ送信部22に向けて出力される。データ送信部22は、ナビゲーション処理部20から出力されるデータを通信用のフォーマットに変換して他の装置に向けて送信するためのものであり、送信データ生成部60、送信データバッファ62、先頭データ設定部64、送信処理部66、フレーム衝突判定部68、フレーム終了判定部70を含んで構成されている。
【0018】
送信データ生成部60は、ナビゲーション処理部20から出力された送信データに対してデータ通信に必要な各種のデータを付加することにより、フレームを生成する。
【0019】
図3は、送信データ生成部60によって生成されるフレームのデータ構造を示す図である。図3に示すように、フレームは、先頭から順に通信タイプ(TYPE)、送信先アドレス(DA)、送信元アドレス(SA)、データ長(LEN)、送信データ(DATA)、エラー検出用データ(ERR)を含んで構成されている。
【0020】
通信タイプは、このフレームを用いた通信の種類を規定したものである。例えば、通常の1対1通信、同報通信、レスポンス等が指定される。また、送信先アドレスには、このフレームの送信先となる装置に対応したアドレスが格納されている。送信元アドレスには、このフレームの送信元となる装置に対応したアドレスが格納されている。本実施形態では、送信先アドレスにはオーディオ装置4に対応したアドレスが格納され、送信元アドレスにはナビゲーション装置2に対応したアドレスが格納される。
【0021】
データ長は、送信対象となっているデータ(図3に示すDATA)のデータ長をバイト単位で表したものである。送信データは、送信対象となっているデータが格納されており、例えばナビゲーション処理部20から出力された音声割り込み要求を示すデータがこれにあたる。エラー検出用データは、フレームに含まれる通信タイプから送信データまでの各データの内容にエラーがある場合にこれを検出するために付加されるものである。エラー検出用データとしては、例えば、チェックサムデータやCRC符号等が用いられる。
【0022】
送信データバッファ62は、送信データ生成部60によって生成されるフレームを一時的に格納する。先頭データ設定部64は、バス5上におけるフレームの衝突を検出するために設定された所定の内容を有する1バイトの「衝突検出用データ」をフレームに付加する。
【0023】
図4は、衝突検出用データが付加されたフレームを説明するための図である。図4に示すように、先頭データ設定部64は、送信データバッファ62に格納されたフレームの先頭に、上述した衝突検出用データを付加する。この衝突検出用データは、バス5に接続された各装置毎に固有の値が用いられており、バス5上でフレームの衝突が生じた場合には、バス5上に実際に送出された衝突検出用データの内容を調べることにより、フレームの衝突判定が行われる。
【0024】
次に、上述した衝突検出用データの内容について具体的に説明する。図5は、衝突検出用データの一例を示す図である。本実施形態では、衝突検出用データは8ビットであり、この8ビット中のいずれか1ビットの論理のみが“1”で他の7ビットの論理が“0”となるように設定されている。この場合に、衝突検出用データの内容としては、図5に示すように01h、02h、04h、08h、10h、20h、40h、80hの8パターンが考えられる。なお、上述した衝突検出用データに付加されている「h」は、16進数であることを表している。本実施形態では、上述した8パターンの衝突検出用データを、バス5に接続された各装置に対応させている。具体的には、図5に示すように、例えば01hを音声認識装置1に、02hをナビゲーション装置2に、04hをCDチェンジャ3に、08hをオーディオ装置4にそれぞれ対応させている。
【0025】
送信処理部66は、送信データバッファ62に格納されたフレーム(衝突検出用データが付加された後のフレーム)をバイト単位で読み出してシリアルデータに変換し、さらに先頭にスタートビット“0”を、後部にパリティ(例えば偶数パリティ)とストップビット“1”をそれぞれ付加して、バス5上に送出する。
【0026】
フレーム衝突判定部68は、バス5上で送受信されるフレームの先頭1バイト分のデータを抽出し、送信処理部66から出力したフレームの先頭1バイトに付加した衝突検出用データの内容と一致しているか否かを判定する。一致しない場合には、フレーム衝突判定部68は、送信処理部66に対してフレームを再送する指示を行う。
【0027】
フレーム終了判定部70は、バス5上を送受信されるフレームの終了を判定してフレーム信号を出力する。例えば、バス5上を送受信されるデータがなくなってから所定時間経過の後にハイレベルのフレーム信号が出力される。このフレーム信号は、送信処理部66による送信動作を許可するための信号として使用される。すなわち、送信処理部66は、フレーム終了判定部70からフレーム信号が出力されていることを条件に、すなわちその時点でバス5上に送出されたフレームがないことを条件にフレームの送信を行う。
【0028】
また、図2に示すように、オーディオ装置4は、オーディオ処理部40およびデータ受信部42を含んで構成されている。オーディオ処理部40は、オーディオ装置4の各種機能を実現するものであり、ラジオチューナやカセットテープデッキおよびパワーアンプ等が含まれている。データ受信部42は、ナビゲーション装置2やその他の装置から送信されてくるフレームを受信するためのものであり、受信処理部80、受信データバッファ82、衝突検出用データテーブル格納部84、フレーム衝突判定部86を含んで構成されている。
【0029】
受信処理部80は、シリアルデータの形態でフレームが入力されると、スタートビットとストップビットを検出することにより1バイト単位でデータを抽出し(パリティが含まれている場合にはさらにパリティによるエラーチェックを行った後)、このデータを順次パラレルデータに変換して図3に示したフレームを復元する。その後、このフレームに含まれるエラー検出用データ等を用いてエラー検出処理を行った後に、フレームに含まれる送信先アドレスやエラー検出用データ等を除く各種のデータを受信データバッファ82に向けて出力する。
【0030】
受信データバッファ82は、受信処理部80から出力される各種のデータを一時的に格納する。このデータ格納動作が完了するとその旨の通知が受信データバッファ82からオーディオ処理部40に対して行われる。
【0031】
衝突検出用データテーブル格納部84は、上述した図5に示した衝突検出用データの一覧リストに対応するテーブルを格納する。具体的には、衝突検出用データテーブル格納部84は、バス5に接続された音声認識装置1、ナビゲーション装置2、CDチェンジャ3、オーディオ装置4のそれぞれに対応する衝突検出用データを格納している。
【0032】
フレーム衝突判定部86は、バス5上で送受信されるフレームの先頭1バイト分のデータを抽出し、衝突検出用データテーブル格納部84に格納されたテーブルに含まれる衝突検出用データのいずれかと一致しているか否かを判定する。いずれとも一致しない場合には、フレーム衝突判定部86は、受信データバッファ82に対して受信したフレームを廃棄する指示を行う。
【0033】
上述した衝突検出用データがフレームの送信元に固有の付加データに対応する。また、送信処理部66がフレーム送信手段に、フレーム衝突判定部68、86が衝突検出手段にそれぞれ対応する。
【0034】
本実施形態のナビゲーション装置2およびオーディオ装置4は上述した構成を有しており、次にナビゲーション装置2に含まれるフレーム衝突判定部68およびオーディオ装置4に含まれるフレーム衝突判定部86において行われるフレーム衝突判定の動作について説明する。
【0035】
図6は、フレーム衝突を判定する具体例を示す図であり、音声認識装置1から送信されたフレームとナビゲーション装置2から送信されたフレームがバス5上で衝突した場合について示されている。図6(A)は、音声認識装置1から送信されたフレームの先頭に付加された衝突検出用データの波形を示す図であり、図6(B)は、ナビゲーション装置2から送信されたフレームの先頭に付加された衝突検出用データの波形を示す図である。また、図6(C)は、図6(A)に示す音声認識装置1に対応する衝突検出用データと図6(B)に示すナビゲーション装置2に対応する衝突検出用データが衝突した場合のバス5上の波形を示す図である。なお、以下の説明では、バス5上でデータが衝突することにより“0”と“1”のデータの重なりが生じた場合には、“0”が優先されるように設定されているものとする。
【0036】
図6に示すように、音声認識装置1に対応する衝突検出用データ01hとナビゲーション装置2に対応する衝突検出用データ02hが衝突すると、バス5上のデータは00hとなる。
【0037】
したがって、フレームの送信元となるナビゲーション装置2では、送信処理部66からフレームを送信した際に、バス5上を送受信されているフレームの先頭8ビット分のデータが、自装置に対応する衝突検出用データ02hと一致しているか否かをフレーム衝突判定部68によって判定することにより、フレームの衝突を検出することができる。上述した例では、実際にバス5上を送受信されるフレームの先頭8ビット分のデータが00hであり、自装置の衝突検出用データが02hであって一致しないため、バス5上でフレームが衝突しているものと判定される。
【0038】
また、オーディオ装置4では、バス5を介して送受信されているフレームの先頭8ビット分のデータが衝突検出用データテーブル格納部84に格納されたいずれかの衝突検出用データと一致しているか否かをフレーム衝突判定部86によって判定することにより、バス5上でのフレームの衝突を検出することができる。上述した例では、実際にバス5上を送受信されるフレームの先頭8ビット分のデータが00hであり、図5に示したように、衝突検出用データテーブル格納部84に格納されているいずれのデータとも一致しないことから、バス5上でフレームが衝突しているものと判定される。
【0039】
このように、本実施形態のデータ通信システムでは、バス5に接続された各装置に対応した固有の値を有する衝突検出用データを設定し、各装置間でフレームの送受信を行う場合には、この衝突検出用データをフレームの先頭に付加している。特に、上述した衝突検出用データは、フレーム同士がバス5上で衝突した場合に、各装置に対応して設定された衝突検出用データのいずれとも一致しないように工夫して設定されている。したがって、バス5上に送出されたフレームの先頭に付加された衝突検出用データの内容を調べるだけで、フレームがバス5上で衝突したことを容易かつ確実に検出することができる。しかも、この部分の比較処理をマイクロコンピュータ等によるプログラム処理で実現することができるため、専用の回路を用いてフレームの衝突を検出する場合に比べてコストダウンを図ることができる。
【0040】
なお、上述した実施形態においては、衝突検出用データのデータ長は8ビットであったが、このデータ長は8ビットに限定されるものではなく、使用する通信フォーマット等に合わせて所望のビット数に設定することができる。また、上述したように、衝突検出用データを生成する際に論理を“1”とするビット数は1ビットに限定されるものではなく、衝突検出用データのデータ長Mビットに対して、1〜(M−1)ビットの範囲で設定することが可能である。
【0041】
また、上述した実施形態では、フレームの衝突を検出する場合に、あらかじめ設定された衝突検出用データと実際にバス5上で送受信されたフレームに付加されている衝突検出用データとを比較してバス5上のフレームの衝突を判定したが、バス5上で送受信されたフレームに付加されている衝突検出用データの各ビットの論理状態を調べ、論理が“1”となっているビット数を計数することにより、バス5上でのフレームの衝突の有無を判定してもよい。すなわち、上述した例では、バス5上でフレームが衝突している場合には、論理が“1”となるビット数が必ず減少するため、これを検出してフレームの衝突判定を行うことができる。特に、このようにしてフレームの衝突判定を行う場合には、フレームの送信先となる受信側の装置に備わっている衝突検出用データテーブル格納部84が不要になるため、処理および構成の簡略化によるコストダウンが可能になる。
【0042】
また、衝突検出用データを付加する場所は、必ずしもフレームの先頭である必要はなく、フレーム中の予め決められた任意の場所に付加することができる。また、上述した実施形態では、ナビゲーション装置2からオーディオ装置4に対してフレームを送信する場合を例に取って説明したが、反対にオーディオ装置4からナビゲーション装置2にフレームを送信する場合や、その他の装置間でフレームを送受信する場合にも本発明を適用することができる。
【0043】
〔第2の実施形態〕
ところで、上述したバス5に接続されている各装置内のデータ送信部22にはフレーム終了判定部70が備わっているため、異なるタイミングで送出が開始される複数のフレームがバス5上で衝突することはない。しかし、実際にフレーム終了判定部70によってフレームの終了が判定された後、送信処理部66からフレームが送出されるタイミングが若干ずれる場合も考えられる。このような場合に、バス5上の波形の変化点と受信側の装置におけるサンプリングタイミングとがほぼ一致するような場合もあるため、正確にバス5上でのフレームの衝突を検出できないおそれがある。
【0044】
図7は、第2の実施形態において用いられる衝突検出用データの具体例を示す図である。本実施形態の衝突検出用データは、各衝突検出用データが互いにずれて衝突した場合であっても、必ず衝突の前後でその内容が変化するように考慮されている。
【0045】
具体的には、各衝突検出用データをシリアルデータに変換した際に前後に付加されるスタートビットおよびパリティも含めて考えた場合に、論理が“1”となるビットと論理が“0”となるビットがそれぞれ2ビット以上連続するように設定されている。したがって、衝突検出用データとしては、1Eh、66h、78h、86h、98h、E0hの6パターンが考えられる。
【0046】
このような衝突検出用データを用いることにより、2つのフレームの送出タイミングがほぼ1.5ビットに相当する時間までずれた場合であっても、先頭の8ビット分のデータを調べることによって、フレームの衝突を確実に検出することができる。
【0047】
図8は、バス5に接続された各装置と本実施形態の衝突検出用データとの対応関係を示す図である。図8に示すように、本実施形態においては、上述した6パターンの衝突検出用データの中で、78hが音声認識装置1に、86hがナビゲーション装置2に、98hがオーディオ装置4に、E0hがCDチェンジャ3にそれぞれ対応している。なお、オーディオ装置4に含まれる衝突検出用データテーブル格納部84には、図8に示した衝突検出用データの一覧リストに対応するテーブルが格納されている。
【0048】
本実施形態のデータ通信システムは、上述した図7および図8に示したような衝突検出用データを用いてフレームの送受信を行っており、次に、フレームの衝突検出の具体例について説明する。
【0049】
図9は、第2の実施形態におけるフレーム衝突の具体例を示す図である。図9(A)は、オーディオ装置4に対応する衝突検出用データである98hを示す信号波形であり、図9(B)は、ナビゲーション装置2に対応する衝突検出用データである86hを示す信号波形である。例えば、2つのフレームの送出開始タイミングが約1.3ビット分ずれた場合が示されている。また、図9(C)は、図9(A)に示した信号波形と図9(B)に示した信号波形とがバス5上で衝突した波形である。
【0050】
バス5に接続された各装置では、バス5に先に送出されたフレームに同期してサンプリングタイミングが設定される。例えば、図9(C)で矢印で示したように、フレームの送出開始タイミングから0.5ビット分ずれたタイミングで各ビット毎にデータを取り込むようにサンプリングタイミングが設定される。このため、バス5に接続された各装置において、図9(C)に示したバス5上の波形から抽出されるデータは、2進数表現で“00001000”となり、これを16進数表現すると“08h”となるので、各装置に対応するいずれの衝突検出用データにも一致しないことが分かる。したがって、フレーム衝突判定部68あるいは86は、バス5上でのフレームの衝突を判定することができる。
【0051】
特に、本実施形態では、スタートビットを含んで先頭から2ビット単位で連続した各ビットの論理が同じになるように衝突検出用データが設定されているため、約1.5ビットまでの範囲で送出タイミングがずれたであっても確実にフレームの衝突を検出することができる。例えば、図7において「*」で示したように、同じ論理に設定される2ビットの内送出タイミングが遅いほうの4ビットの値については、バス5上における2つのフレームの送出タイミングがずれた場合であっても、送出タイミングが全くずれない場合と同じ論理を有することになる。したがって、この4ビットの内容を調べることにより、確実にフレームの衝突を検出することができる。
【0052】
なお、上述した第2の実施形態における衝突検出用データは、これをシリアルデータに変換した際に前後に付加されるスタートビットおよびパリティも含めて考えた場合に、ハイレベル期間およびローレベル期間がそれぞれ2ビット以上連続するようなデータとなるように設定していたが、このハイレベルおよびローレベルが連続する期間は3ビット以上あるいは4ビット以上としてもよい。3ビット以上連続するように設定することにより、約2.5ビット分までの範囲で送出タイミングがずれたフレームの衝突を検出できるようになる。また、4ビット以上連続するよう設定することにより、約3.5ビット分までの範囲で送出タイミングがずれたフレームの衝突を検出できるようになる。
【0053】
【発明の効果】
上述したように、本発明によれば、各送信元に固有の付加データを付加してフレームの送信を行うことにより、この付加データ同士が通信路上で衝突したときに必ずその内容の一部が破壊されるようにできるため、フレーム同士が衝突したことを確実に検出することができる。また、フレームの衝突を検出することができればよいため、特にハードウエアによる専用の回路を用いる必要がなく、部品等のコストを低減することができる。
【図面の簡単な説明】
【図1】第1の実施形態のデータ通信システムの全体構成を示す図である。
【図2】ナビゲーション装置およびオーディオ装置の詳細構成を示す図である。
【図3】送信データ生成部によって生成されるフレームのデータ構造を示す図である。
【図4】衝突検出用データが付加されたフレームを説明するための図である。
【図5】衝突検出用データの一例を示す図である。
【図6】フレーム衝突を判定する具体例を示す図である。
【図7】第2の実施形態において用いられる衝突検出用データの具体例を示す図である。
【図8】バスに接続された各装置と本実施形態の衝突検出用データとの対応関係を示す図である。
【図9】第2の実施形態におけるフレーム衝突の具体例を示す図である。
【符号の説明】
1 音声認識装置
2 ナビゲーション装置
3 CDチェンジャ
4 オーディオ装置
64 先頭データ設定部
66 送信処理部
68、86 フレーム衝突判定部
70 フレーム終了判定部
80 受信処理部
84 衝突検出用データテーブル格納部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data communication system for asynchronously transmitting and receiving data between a plurality of devices, processors, and the like.
[0002]
[Prior art]
Conventionally, in asynchronous communication in which a plurality of data communication devices perform data communication using a single communication medium, data is transmitted from two or more data communication devices at the same time. There was a case where the destruction of. When the data is destroyed, the contents of the transmitted / received data are changed. Therefore, it is necessary to detect that a data collision has occurred in the transmission source device or the transmission destination device.
[0003]
There are two typical ones for detecting destruction due to data collision. The first is a method of providing a dedicated detection circuit for detecting data collision on the communication path. For example, if each bit data of “0” and “1” collides on the communication path, “0” is preferentially transmitted. In this detection circuit provided in each transmission source device, When the data “1” sent by the client changes to “0” on the communication path, it is determined that the data sent by itself collides with the data sent by another transmission source. Since a dedicated detection circuit is used, a data collision can be detected in a short time, and transmission of the next data can be stopped, so that only high priority data remains on the communication path. .
[0004]
The second method is to continue sending data even if data collides on the communication path, and to detect data destroyed by the collision. For example, data corruption can be detected by examining the CRC code in the data and the contents of parity added in byte units.
[0005]
[Problems to be solved by the invention]
By the way, in the method of detecting data collision using the above-described dedicated circuit, special hardware is required for data collision detection, which raises a problem of increasing costs. In addition, when using a general-purpose microcomputer for communication (hereinafter referred to as “microcomputer”), there are many cases where the above-described collision detection circuit is not provided. There is also a risk of losing freedom.
[0006]
In addition, in the method of detecting data collision by examining the contents of data using a CRC code or the like, a correct CRC code may be obtained accidentally even though the data is destroyed due to collision. Data collisions could not be detected.
[0007]
The present invention was created in view of the above points, and an object of the present invention is to provide a data communication method capable of reliably detecting a collision of data on a communication path without using dedicated hardware. There is.
[0008]
[Means for Solving the Problems]
In order to solve the above-described problem, in the data communication method of the present invention, when transmission of a frame is allowed on the condition that there is no frame transmitted on the communication path, additional data specific to the transmission source of the frame is added. The frame is added to the frame and transmitted to the communication path, and the collision of the frame on the communication path is detected based on the content of the additional data actually transmitted to the communication path. By using additional data unique to each transmission source, when the additional data collide with each other on the communication path, a part of the contents is always destroyed, so that it is possible to reliably detect that the frames collide with each other. it can. In addition, since it is only necessary to be able to detect the collision of frames, it is not necessary to use a dedicated circuit by hardware in particular, and the cost of components and the like can be reduced.
[0009]
Further, it is desirable that the collision detection means provided at the frame transmission source detect a frame collision when additional data having a content different from that of the additional data transmitted by itself is detected. Since only the additional data sent by itself needs to be compared, the processing can be simplified.
[0010]
Further, the collision detection means provided in the frame transmission destination is configured such that the additional data corresponding to the frame received via the communication path is not included in the list of additional data specific to the frame transmission source. It is desirable to detect frame collisions. By providing additional data of each transmission source as a list and using this as a comparison target, it is possible to reliably detect frame collisions.
[0011]
In addition, when the transmission / reception of the frame performed via the communication path is performed in the form of serial data, it is desirable that the above-described additional data is set to have the same content in a plurality of consecutive bits. Even when the transmission timing of a frame transmitted on the communication path is deviated, the collision of frames can be reliably detected as long as it is within a range of continuous bits.
[0012]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, a data communication system according to an embodiment to which the present invention is applied will be described with reference to the drawings.
[0013]
[First Embodiment]
FIG. 1 is a diagram illustrating an overall configuration of a data communication system according to the first embodiment. The data communication system according to this embodiment shown in FIG. 1 includes a
[0014]
The
[0015]
The
[0016]
Next, a case where data communication is performed between the
[0017]
The
[0018]
The transmission
[0019]
FIG. 3 is a diagram illustrating a data structure of a frame generated by the transmission
[0020]
The communication type defines the type of communication using this frame. For example, normal one-to-one communication, broadcast communication, response, and the like are designated. The transmission destination address stores an address corresponding to the device that is the transmission destination of this frame. The transmission source address stores an address corresponding to the device that is the transmission source of this frame. In the present embodiment, an address corresponding to the
[0021]
The data length represents the data length of data to be transmitted (DATA shown in FIG. 3) in bytes. As the transmission data, data to be transmitted is stored, and for example, data indicating a voice interrupt request output from the
[0022]
The
[0023]
FIG. 4 is a diagram for explaining a frame to which collision detection data is added. As shown in FIG. 4, the head
[0024]
Next, the content of the above-described collision detection data will be specifically described. FIG. 5 is a diagram illustrating an example of collision detection data. In this embodiment, the collision detection data is 8 bits, and only one of the 8 bits is set to “1” and the other 7 bits are set to “0”. . In this case, as the content of the collision detection data, as shown in FIG. 5, eight patterns of 01h, 02h, 04h, 08h, 10h, 20h, 40h, and 80h are conceivable. Note that “h” added to the above-described collision detection data represents a hexadecimal number. In the present embodiment, the eight patterns of collision detection data described above are associated with each device connected to the
[0025]
The
[0026]
The frame
[0027]
The frame end determination unit 70 determines the end of a frame transmitted / received on the
[0028]
As shown in FIG. 2, the
[0029]
When a frame is input in the form of serial data, the reception processing unit 80 extracts data in units of 1 byte by detecting a start bit and a stop bit (if parity is included, an error due to parity is further generated. After the check), this data is sequentially converted into parallel data to restore the frame shown in FIG. Then, after performing error detection processing using the error detection data included in this frame, various data other than the transmission destination address and error detection data included in the frame are output to the
[0030]
The
[0031]
The collision detection data
[0032]
The frame
[0033]
The collision detection data described above corresponds to additional data unique to the frame transmission source. The
[0034]
The
[0035]
FIG. 6 is a diagram showing a specific example of determining a frame collision, and shows a case where a frame transmitted from the
[0036]
As shown in FIG. 6, when the
[0037]
Therefore, in the
[0038]
Also, in the
[0039]
Thus, in the data communication system of the present embodiment, when collision detection data having a unique value corresponding to each device connected to the
[0040]
In the above-described embodiment, the data length of the collision detection data is 8 bits. However, the data length is not limited to 8 bits, and a desired number of bits according to the communication format to be used. Can be set to Further, as described above, the number of bits for which the logic is “1” when generating the collision detection data is not limited to 1 bit, but is 1 for the data length M bits of the collision detection data. It is possible to set in a range of ~ (M-1) bits.
[0041]
Further, in the above-described embodiment, when detecting a frame collision, the collision detection data set in advance is compared with the collision detection data added to the frame actually transmitted / received on the
[0042]
Further, the location where the collision detection data is added does not necessarily need to be at the head of the frame, and can be added to any predetermined location in the frame. In the above-described embodiment, the case where a frame is transmitted from the
[0043]
[Second Embodiment]
By the way, since the
[0044]
FIG. 7 is a diagram illustrating a specific example of collision detection data used in the second embodiment. The collision detection data of this embodiment is considered so that the contents always change before and after the collision even when the collision detection data collide with each other.
[0045]
Specifically, when the start bit and parity added before and after the collision detection data are converted into serial data are considered, the logic is “1” and the logic is “0”. Are set so that 2 bits or more are consecutive. Therefore, 6 patterns of 1Eh, 66h, 78h, 86h, 98h, and E0h are considered as collision detection data.
[0046]
By using such collision detection data, even if the transmission timing of the two frames is shifted to a time corresponding to approximately 1.5 bits, the frame data can be obtained by examining the data for the first 8 bits. Can be reliably detected.
[0047]
FIG. 8 is a diagram illustrating a correspondence relationship between each device connected to the
[0048]
The data communication system of this embodiment performs frame transmission / reception using the collision detection data as shown in FIGS. 7 and 8 described above. Next, a specific example of frame collision detection will be described.
[0049]
FIG. 9 is a diagram illustrating a specific example of a frame collision in the second embodiment. 9A is a signal waveform indicating 98h which is collision detection data corresponding to the
[0050]
In each device connected to the
[0051]
In particular, in this embodiment, since the collision detection data is set so that the logic of each successive bit including the start bit in units of 2 bits is the same, the range of up to about 1.5 bits is set. Even if the transmission timing is deviated, it is possible to reliably detect a frame collision. For example, as indicated by “*” in FIG. 7, the transmission timing of two frames on the
[0052]
Note that the collision detection data in the second embodiment described above has a high level period and a low level period when the start bit and parity added before and after conversion to serial data are considered. Although the data is set to be continuous for 2 bits or more, the period in which the high level and the low level are continuous may be 3 bits or more or 4 bits or more. By setting the bits to be continuous for 3 bits or more, it becomes possible to detect a collision of frames whose transmission timings are shifted within a range up to about 2.5 bits. In addition, by setting 4 bits or more to continue, it is possible to detect a collision of frames whose transmission timings are shifted within a range up to about 3.5 bits.
[0053]
【The invention's effect】
As described above, according to the present invention, a frame is transmitted by adding specific additional data to each transmission source, so that when the additional data collides on the communication path, a part of the content is always included. Since it can be destroyed, it is possible to reliably detect that the frames collide with each other. In addition, since it is only necessary to be able to detect the collision of frames, it is not necessary to use a dedicated circuit by hardware in particular, and the cost of components and the like can be reduced.
[Brief description of the drawings]
FIG. 1 is a diagram illustrating an overall configuration of a data communication system according to a first embodiment.
FIG. 2 is a diagram showing a detailed configuration of a navigation device and an audio device.
FIG. 3 is a diagram illustrating a data structure of a frame generated by a transmission data generation unit.
FIG. 4 is a diagram for explaining a frame to which collision detection data is added.
FIG. 5 is a diagram illustrating an example of collision detection data.
FIG. 6 is a diagram illustrating a specific example of determining a frame collision.
FIG. 7 is a diagram illustrating a specific example of collision detection data used in the second embodiment.
FIG. 8 is a diagram illustrating a correspondence relationship between each device connected to a bus and collision detection data according to the present embodiment.
FIG. 9 is a diagram illustrating a specific example of a frame collision in the second embodiment.
[Explanation of symbols]
1 Voice recognition device
2 Navigation device
3 CD changer
4 Audio equipment
64 Lead data setting section
66 Transmission processing unit
68, 86 Frame collision determination unit
70 Frame end determination unit
80 Reception processing section
84 Data table storage for collision detection
Claims (3)
フレームの送信元に固有の付加データをフレームに付加して前記通信路に送出するフレーム送信手段と、
前記通信路に送出された前記付加データの内容に基づいて、前記通信路上のフレームの衝突を検出する衝突検出手段と、
を備え、前記通信路を介して行われるフレームの送受信はシリアルデータの形式で行われており、前記付加データは連続する複数ビットが同一内容に設定されることを特徴とするデータ通信方式。In a data communication method in which transmission of a frame is allowed on condition that there is no frame transmitted on the communication path,
Frame transmission means for adding additional data specific to the frame transmission source to the frame and sending it to the communication path;
A collision detection means for detecting a collision of frames on the communication path based on the content of the additional data sent to the communication path;
The provided, transmission and reception of frames are performed via the communication path is performed in the form of serial data, data communication method the additional data, wherein Rukoto plurality consecutive bits are set to the same contents.
フレームの送信元に備わった前記衝突検出手段は、自己が送出した前記付加データと異なる内容の付加データが検出されたときにフレームの衝突を検出することを特徴とするデータ通信方式。In claim 1,
The data communication system according to claim 1, wherein the collision detection means provided at a frame transmission source detects a collision of frames when additional data having a content different from that of the additional data transmitted by itself is detected.
フレームの送信先に備わった前記衝突検出手段は、前記通信路を介して受信したフレームに対応する前記付加データが、フレームの送信元に固有の前記付加データの一覧リストの中に含まれていないときにフレームの衝突を検出することを特徴とするデータ通信方式。In claim 1,
The collision detection means provided at the transmission destination of the frame does not include the additional data corresponding to the frame received via the communication path in the list of additional data specific to the transmission source of the frame. A data communication method characterized by detecting a collision of frames sometimes.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20841499A JP3785291B2 (en) | 1999-07-23 | 1999-07-23 | Data communication method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20841499A JP3785291B2 (en) | 1999-07-23 | 1999-07-23 | Data communication method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001036553A JP2001036553A (en) | 2001-02-09 |
JP3785291B2 true JP3785291B2 (en) | 2006-06-14 |
Family
ID=16555851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20841499A Expired - Fee Related JP3785291B2 (en) | 1999-07-23 | 1999-07-23 | Data communication method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3785291B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007096902A (en) * | 2005-09-29 | 2007-04-12 | Oki Electric Ind Co Ltd | Method for detecting packet collision of radio communication system and radio communication equipment |
-
1999
- 1999-07-23 JP JP20841499A patent/JP3785291B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001036553A (en) | 2001-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4750176A (en) | Single-channel communication bus system and station for use in such system | |
JP3785291B2 (en) | Data communication method | |
JP3623677B2 (en) | Data communication method | |
JP2000183864A (en) | Data communication system | |
US20030194036A1 (en) | Synchronization code recovery circuit and method | |
JP3187857B2 (en) | Interface circuit | |
JP2001045095A (en) | Data communication system | |
JP2817803B2 (en) | Sync generation method | |
JP2979814B2 (en) | Serial data transfer device | |
JPS5859651A (en) | Digital signal transmitting method | |
JP2001057582A (en) | Data communication system | |
JP4187920B2 (en) | Data communication method | |
JP2933647B2 (en) | Electronic equipment system | |
JP3120594B2 (en) | Synchronous signal detection device | |
KR100190289B1 (en) | Apparatus and method for data buffering and error correction of cd-rom | |
KR100230423B1 (en) | Subcode queue channel interface in a digital multi-functional disc system | |
JP3345130B2 (en) | Data transceiver | |
CN1134997C (en) | Information receiver and its transmitting and receiving method | |
JP2556044B2 (en) | Interface circuit | |
JPS63284935A (en) | Detecting system for collision of optical transceiver | |
JPH0317427B2 (en) | ||
JPH09214565A (en) | Data transmission device and data reception device | |
JPH04278742A (en) | Method of detecting error in reception data | |
JPH0865277A (en) | Serial data transmitting method | |
JPH11205396A (en) | Serial communication equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050826 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050913 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051107 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060314 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060317 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100324 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100324 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110324 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110324 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120324 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120324 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130324 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130324 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140324 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |