(57)【特許請求の範囲】
【請求項１】
イニシエータおよび応答機を含むシステムにおいてデータを交換する方法であって、前記イニシエータは送信クロックパルスおよび時間ベースのクロックパルスを生じるように構成され、前記応答機は前記イニシエータの送信クロックパルスによって決められたレートでデータを受信および送信するように構成されており、
前記イニシエータの送信クロックパルスを前記応答機に送信するステップと、
データビットを前記イニシエータから前記応答機に送信するステップと、
データビットを前記応答機で受信するステップと、
データビットを前記応答機から前記イニシエータに送信するステップと、
前記時間ベースのクロックパルスにより決定されたレートで前記応答機から受信された前記データを前記イニシエータでサンプリングするステップと、
を含み、
前記応答機からのデータが前記イニシエータによりスタートビットがデータにプリペンドされた非同期式で受信されている間、前記イニシエータから前記応答機にデータが同期式で送信される、データを交換する方法。
【請求項２】
データビットを応答機で受信するステップは前記イニシエータの送信クロックパルスのエッジ上の前記応答機に送信されたデータをサンプリングするステップを含む、請求項１に記載の方法。
【請求項３】
前記応答機からデータビットを送信するステップは前記イニシエータの送信クロックパルスのエッジを使用して前記データをシーケンスするステップを含む、請求項１に記載の方法。
【請求項４】
前記応答機から前記イニシエータにデータビットを送信するステップはさらにスタートビットを送信するステップを含む、請求項３に記載の方法。
【請求項５】
前記イニシエータの送信クロックパルスを前記応答機に送信するステップは、前記時間ベースのクロックパルスをあらかじめ選択された整数によって割ることによって送信クロックパルスを生成するステップを含む、請求項１に記載の方法。
【請求項６】
データビットを前記応答機から前記イニシエータに送信するステップは、スタートビットを検出するステップを含む、請求項５に記載の方法。
【請求項７】
送信クロックパルスおよび時間ベースのクロックパルスを生成しそしてイニシエータからの送信されたシリアルデータの流れを制御するために前記送信クロックパルスを使用し、そして前記イニシエータで受信されたシリアルデータをサンプルするために前記時間ベースのクロックパルスを使用するように構成され、シリアルデータを送信および受信するための前記のイニシエータと、
前記イニシエータの送信クロックパルスによって決められたレートでシリアルデータを受信および送信するように構成されている応答機と、
を含み、
前記応答機からのシリアルデータが前記イニシエータによりスタートビットがシリアルデータにプリペンドされた非同期式で受信されている間、前記イニシエータから前記応答機にシリアルデータが同期式で送信される、データを交換するための通信システム。
【請求項８】
前記応答機はさらにスタートビットを送信するように構成されている、請求項７に記載のシステム。
【請求項９】
前記送信クロックパルスは前記時間ベースのクロックパルスから生成される、請求項７に記載の通信システム。
【請求項１０】
前記応答機にデータを送信するために、前記通信装置が前記送信クロックパルスのエッジ上の前記応答機に受信された前記データをサンプルするように構成されている、請求項７に記載の通信装置。
【請求項１１】
前記応答機からデータを送信するために、前記通信装置が前記イニシエータの送信クロックパルスのエッジを使用しているデータをシーケンスするように構成されている、請求項７に記載の通信装置。
【請求項１２】
データを前記応答機から前記イニシエータに送信するために、前記通信装置がさらにスタートビットを送信するように構成されている、請求項１１に記載の通信装置。
【請求項１３】
前記イニシエータの送信クロックパルスを前記応答機に送信するために、
前記時間ベースのクロックパルスをイニシエータに生成し、
時間ベースのクロックパルスをあらかじめ選択された整数で割ることによって前記送信クロックパルスを生成するように構成されている、請求項７に記載の通信装置。
【請求項１４】
データを前記応答機からイニシエータに受信するために、
スタートビットを検出し、
前記時間ベースのクロックパルスによって決められたレートで前記応答機から受信された前記データをサンプルするように構成されている、請求項１２に記載の装置。
【発明の詳細な説明】
【０００１】
発明の背景
本発明は一般的にデータ通信および、さらに詳しくはシリアル・データを交換する通信装置に関する。
【０００２】
既知の通信システムは、多くの種類の電子装置とともに幅広く利用されている。通信システムはシリアルデータを二つの電子装置間で送信するのに利用されている。例えば、いくつかの既知のコンピュータはシリアルデータを二つのコンピュータ間で高いレートの速さで送信したり、返信するために通信システムを利用している。シリアルデータは典型的には同期式通信システムまたは非同期式通信システムを利用して二つのコンピュータ間で送信される。
【０００３】
同期式通信システムにおいては、クロックパルスおよびデータが第一の装置から第二の装置に、ケーブル上を同時に送信される。第一の装置からのクロックパルスは、データが交換されるであろう速さを確立する。第一の装置に応答している第二の装置は、これらのクロックパルスのエッジを使用して第一の装置から送られたデータを回復し、第一の装置に送られるデータが戻る時間をも決定する。第一の装置から第二の装置にデータを送信している間、クロックパルスおよびデータはケーブルの長さおよび負荷による等しい遅延を受ける。結果として、第一の装置によって送られたデータおよびクロックパルスの位相関係は第二の装置において保たれる。データのリンク方向が逆にされ、データが第二の装置から第一の装置に送られる時、ケーブル遅延はクロックをそれが第一の装置から第二の装置に伝播する時に遅延させるだけではなく、データをそれが第二の装置から第一の装置に伝播させる時に同じ量遅延させる。戻されたデータとともにサンプルされるべき最初のクロックパルスのみを持つ第一の装置は、ケーブル負荷および長さの関数として表される未知の時間量遅らされたデータを与えられる。結果として、信頼あるデータ交換は信号の往復遅延および第一の装置におけるクロックとデータの間のスキュー（ｓｋｅｗ）に対する許容差に制限される。
【０００４】
他の既知の通信システムにおいて、シリアルデータは非同期通信システムを利用して第一、第二の装置間で送信される。非同期システムは往復遅延の問題を、第一および第二の装置の両方を別々の時間ベースに保つことを要求することによって克服する。データ送信の初めは、送信機から受信機へスタートビットを、プリペンドし（前付加し：ｐｒｅ−ｐｅｎｄｉｎｇ）または送ることによって合図される。このスタートビットの開始エッジは受信機にスタートビットにより位相をロックすることを許容し、スタートビットにより位相を維持している次のビットを取り出す。結果として、第一および第二の装置の時間ベースが同じ周波数に設定されている限りは信頼あるデータ交換が維持される。それに加え、第一および第二の装置は、スタートビットが送信される時間およびこのスタートビットに関連した最後のデータビットを受信する時間の間の二つの時間ベース間、小さなパーセントのドリフトを維持しなければならず、そうでなければデータは間違えて受信されるであろう。
【０００５】
前述したように、シリアルデータを送信するこれらの既知の方法はそれぞれデータ送信能力における制限を被っている。これらの制限はしばしば二つの方法のどちらが最大利益を生じるかを決定するために行われるトレードオフ分析を必要とする。
データ送信の速さを決定するために時間ベースを利用し、ケーブル遅延によって制限されない、シリアルデータの送信方法および装置を提供することが望ましい。
【０００６】
発明の簡単な要約
これらおよび他の目的は通信リンクまたは装置によって達成されることができ、一つの実施形態においては、時間ベースを生じるイニシエータと応答機を含む。イニシエータの時間ベースを使用することで、データはイニシエータと応答機の間を正確に伝送されることができる。
【０００７】
さらに詳しくは、一つの典型的な実施形態では、通信装置は二つのモードまたは状態を有する。これらのオペレーション状態はこのなかでは時として送信状態および受信状態と呼ばれる。送信状態とはデータがイニシエータから応答機に伝送される状態のことをいう。データを応答機に送信する前に、時間ベース・クロック出力信号が生成され、そこから送信クロック出力信号がつくられる。データおよび送信クロック信号はそれから応答機に送信される。
【０００８】
受信状態とはデータが応答機からイニシエータに伝送される状態のことをいう。時間ベースクロック信号を使用してイニシエータに伝送されたデータをオーバーサンプリング（ｏｖｅｒｓａｍｐｌｉｎｇ）することにより、イニシエータはデータの中心位置を決めることができる。一度中心位置が規定されると、伝送されるデータのすべてのビットが適切に決定され得る。その次のスタートビットを受信した直後に、応答機から送信されているデータビットを適切に認識するために中心位置が再び決定される。
【０００９】
時間ベースのクロック信号を利用して、装置は送信されたデータを受信する適切なタイミングを決定することができる。結果として、装置は独立した時間ベースを必要としない。それに加え、装置の伝送速度はケーブル遅延によって制限されない。
前述した通信装置はケーブル遅延によって制限されない間にに単一の時間ベースを利用してデータを信頼性よく送信することを許容する。
【００１０】
発明の詳細な説明
図１は本発明の一実施形態に従った通信システム１０のブロック図である。通信システム１０は第一のマイクロコンピュータ１４、第二のマイクロコンピュータ１６、通信リンクまたは装置１８を含む。オペレーションにおいてマイクロコンピュータ１４、１６は、典型的には様々な入力装置（図示されていない）、例えば、記憶装置及びキーボードなどのオペレータ入力装置と結合されている。これらの入力装置からの情報を利用して、マイクロコンピュータ１４、１６はデータを生成することができる。このデータはそれから通信装置１８を使って他のマイクロコンピュータと交換されることができる。通信装置１８はイニシエータ２０と応答機２４を含む。
【００１１】
データ信号はデータバス２６を利用してマイクロコンピュータ１４とイニシエータ２０の間を双方向に結合される。イニシエータ２０はシリアルデータを応答機２４に送信するための送信機３０および応答機２４からシリアルデータを受信するための受信機３２を含む。送信機３０および受信機３２はデータバス２６に結合されている。時間ベースの発生器３４はマイクロコンピュータ１４からのクロック信号に結合され、パルス化された時間ベースのクロック出力信号を生成する。時間ベースのクロック信号は受信機３２と、パルス化された送信クロック出力信号を生成するクロック分周器分周器３６に結合されている。送信クロック信号は送信機３０に結合されている。シリアルデータは送信機３０から伝送され、発生器３４および分周器３６、特に送信クロック信号によって決められたレート（速度）で受信機４４によって受信される。一つの実施形態では、例えば送信機３０および受信機３２はデータバス２６からのパラレルデータをシリアルデータに変換するシフトレジスタであり得、時間ベースの発生器３４はカウンタであり得、クロック分周器３６はＮカウンタによって分周（分割）され得る。クロック分周器３６は時間ベースのクロック信号を整数、例えば４などで分周する。
【００１２】
応答機２４はデータがマイクロコンピュータ１６と応答機２４の間で伝送されるために、双方向バス４０を使用してマイクロコンピュータ１６に結合される。特にデータは、バス４０を使用し、マイクロコンピュータ１６から受信機４４および送信機４６へ結合される。一つの実施形態においては、例えば、受信機４４は受信機３２と同一のシフトレジスタであり、送信機４６は送信機３０と同一のシフトレジスタである。シフトレジスタのパラレルバスの幅は例えば、マイクロコンピュータ１４、１６からのデータの幅によって、８ビット、１６ビットなどに選択されうる。
【００１３】
シリアルデータは多重導体ケーブル５０を利用してイニシエータ２０と応答機２４の間を伝送される。特に、ケーブル５０は送信クロック信号を送信機３０から受信機４４へ結合し、シリアルデータを送信機３０から受信機４４へ結合し、送信機４６からのシリアルデータを受信機３２へ結合する。
前述した構成要素の多くの機能および変更は当通信技術においてよく理解されている。本出願はそのように理解されそして既知の機能および変更を目的としているのではない。むしろ、本出願は以下でもっと詳細に述べられているデータ交換のための方法および装置を目的としている。
【００１４】
さらに、本出願は多くの代替的なマイクロコンピュータとともに実行可能であり、マイクロコンピュータ１４および１６のみと結合して実行することには限定されない。そこで、この中で使用されているように、マイクロコンピュータという言葉はまさにマイクロコンピュータとして当技術上言及されている集積回路の意味には限定されず、広くマイクロコンピュータ、プロセッサ、マイクロコントローラ、専用集積回路、他のプログラム可能回路、同様に他のデータ生成装置を意味する。
【００１５】
通信装置１８は二つの異なるモード、またはオペレーション状態を持つ。これらのオペレーション状態はここでは送信状態および受信状態と呼ばれる。装置１８の送信状態とは、データがイニシエータ２０から応答機２４に送信されている時の装置１８の状態をいう。送信状態では、データは通信システム１８を使って、マイクロコンピュータ１４からマイクロコンピュータ１６に伝送される。もっと詳しく言うと、イニシエータ２０の送信機３０はケーブル５０を使って、送信クロック信号およびシリアルデータを応答機２４の受信機４４に送信もしくは伝送する。特に、イニシエータが送信クロック信号を応答機２４に送信している間、単一のスタートビットは、イニシエータ２０から応答機２４にデータビットを送信する前に、プリペンドされるかまたは送られる。スタートビットは、シリアルデータが続くであろうことをレシーバ４４に通知する。スタートビットを受信した直後、受信機４４は送信機３０からのシリアルデータを受信し始める。シリアルデータはイニシエータ２０から送信された送信クロック信号によって決められたレートでシリアルデータをサンプリングすることによって受信機４４で受信される。特に、シリアルデータは送信クロック信号のリーディング遷移エッジ（ｌｅａｄｉｎｇ  ｔｒａｎｓｉｔｉｏｎ  ｅｄｇｅ）上でサンプル化される。シリアルデータのビットが受信機４４によって受信されるので、データはデータバス４０を使用してマイクロコンピュータ１６に伝送される。
【００１６】
装置１８の受信状態とは、データが応答機２４からイニシエータ２０に送信されている時の装置１８の状態をいう。受信状態では、データは通信システム１８を利用して、マイクロコンピュータ１６からマイクロコンピュータ１４に伝送される。さらに詳細には、応答機２４の送信機４６はシリアルデータをケーブル５０を利用してイニシエータ２０の受信機３２に送信する。初めのデータビットを伝送する前に、単一のスタートビットはケーブル５０を利用して、応答機２４からイニシエータ２０にプリペンドされ、または送られる。スタートビットは受信機３２にシリアルデータが続くであろうことを通知する。スタートビットを送った後、シリアルデータは送信機４６から送信され、送信クロック信号によって決められたレートで受信機３２において受信される。特に、シリアルデータはイニシエータの送信クロックパルスのエッジを使用してシーケンスされる。イニシエータ受信機３２は、スタートビットのリーディング遷移エッジを観察した後、発生器３４によって創られる時間ベースのクロック信号によって決められるレートでデータをオーバーサンプリングすることによって、最初および後続のデータビットの中心位置を決定することができる。シリアルデータのビットが受信機３２によって受信された時、データはデータバス２６を利用してマイクロコンピュータ１４に伝送される。次のスタートビットを受信した直後、応答機から送信されているデータビットを適切に認識するために中心位置は再び決められる。
【００１７】
前述の通信装置は単一時間ベースを利用して、データを信頼性よく伝送することを許容する。伝送レートがイニシエータによって設定されるので、単一時間ベースを利用することは、応答機をセットアップする必要を回避する。通信装置は、応答機にデータを同期式送信および受信することを許容している間、イニシエータにデータを同期式伝送および非同期式受信することをも許容する。それに加えて、データ伝送レートはケーブル遅延によって制限されない。それゆえ、データ伝送レートはイニシエータと応答機両方で設定される必要はない。
【００１８】
別の実施形態では、通信システム１０は単一のイニシエータ１８および複数の応答機２４を含む。データは、特有のアドレスを各々の応答機２４に送信することによって、イニシエータ１８と選択された応答機２４との間で交換される。前述のように、送信されたアドレスに等しいアドレスを持っているその応答機２４のみが使用可能にされ、データは使用可能にされた応答機２４とイニシエータ１８との間でのみ交換されるであろう。データ伝送が完了した後、データは異なった特有アドレスを応答機２４に送信することによって、異なった応答機２４とイニシエータ１８との間で交換されうる。
【００１９】
本発明の様々な実施形態の前述した記述から、本発明の目的が達成されることは明らかである。本発明は詳細に記載、説明されているが、これらの記載、説明は例としてあげられたものにすぎず、これらの記載、説明によって発明を限定するものではない、ということは明らかである。したがって、本発明の趣旨および範囲は、添付の特許請求の範囲の語句のみによって制限されるべきである。
【図面の簡単な説明】
【図１】  本発明の一実施形態に従った通信システムのブロック図である。
【図１】
0004356051.tif 000002