(57)【要約】【課題】マルチマスタ・二線シリアルバスの提供【解決手段】  本開示の態様（２００）では、第１のマスタ装置（２０２）と１以上のスレーブ装置（２０４、２０８）と有するホスト二線シリアルバス（２１０）に、１以上のチェーン接続された二線シリアルバス（２２０）が１以上のスレーブ装置（２０８）を介して結合されている。スレーブ装置（２０８）は、マスタ装置（３０２）に結合された二線シリアルスレーブコンポーネント（３１２）と、チェーン接続された二線シリアルバス（３０８）上のスレーブ装置（３１０）に結合された二線シリアルマスタコンポーネント（３１６）を含むディジタル状態機械（３０６）を有する。ディジタル状態機械（３０６）は、ホスト二線シリアルバス（２１０）上のスレーブ装置（２０８）と、チェーン接続された二線シリアルバス（２２０）上のマスタ装置（２０８）とをエミュレートしている。【選択図】図２
2007251947.tif 000002
【特許請求の範囲】
【請求項１】
第１のマスタ装置と、前記第１のマスタ装置に結合された１つ又は複数のスレーブ装置であって、それぞれが、前記第１のマスタ装置との間においてデータを送受信するべく動作可能である１つ又は複数のスレーブ装置と、を含むホスト二線シリアルバスと、
前記ホスト二線シリアルバス上のスレーブ装置でもあり、前記第１のマスタ装置との間においてデータを送受信するべく動作可能な第２のマスタ装置と、前記第２のマスタ装置に結合された１つ又は複数のその他のスレーブ装置であって、それぞれが、前記第２のマスタ装置との間においてデータを送受信するべく動作可能である１つ又は複数のその他のスレーブ装置と、を含む前記ホスト二線シリアルバスに結合された１つ又は複数のチェーン接続された二線シリアルバスと、
を有するマルチマスタのチェーン接続された二線シリアルバス。
【請求項２】
前記第１のマスタ装置が、前記第２のマスタ装置との間における二線シリアルトランザクションを完了することにより、前記１つ又は複数のその他のスレーブ装置との間におけるデータの書き込み又はデータの読み取りを実行することを特徴とする請求項１に記載のマルチマスタのチェーン接続された二線シリアルバス。
【請求項３】
チェーン接続された二線シリアルバス上の二線シリアルマスタ装置及び二線シリアルスレーブ装置の両方をエミュレートするべく動作可能なディジタル状態機械において、
ホスト二線シリアルバス上のマスタ装置との間においてデータを送受信するべく動作可能な二線シリアルスレーブコンポーネントと、
第２の二線シリアルバス上の１つ又は複数のスレーブ装置との間においてデータを送受信するべく動作可能である二線シリアルマスタコンポーネントと、
前記二線シリアルスレーブコンポーネントに結合され、且つ、前記二線シリアルマスタコンポーネントにも結合されているエミュレーションメモリコンポーネントであって、前記ホスト二線シリアルバス上のマスタ装置から受信した又は前記第２の二線シリアルバス上のスレーブ装置から受信したデータを保存するべく動作可能なエミュレーションメモリコンポーネントと、
を有するディジタル状態機械。
【請求項４】
前記二線シリアルスレーブコンポーネントが、前記ホスト二線シリアルバス上の前記マスタ装置との間における二線シリアルトランザクションをエミュレートし、前記エミュレートされた二線シリアルトランザクションにおいて、前記二線シリアルスレーブコンポーネントが、前記エミュレーションメモリとの間におけるデータの書き込み及びデータの読み取りを実行することを特徴とする請求項３に記載のディジタル状態機械。
【請求項５】
二線シリアルマスタコンポーネントが、前記第２の二線シリアルバス上のスレーブ装置との間における二線シリアルトランザクションをエミュレートし、前記エミュレートされた二線シリアルトランザクションにおいて、前記二線シリアルマスタコンポーネントが、前記エミュレーションメモリとの間におけるデータの書き込み及びデータの読み取りを実行することを特徴とする請求項３に記載のディジタル状態機械。
【請求項６】
前記エミュレーションメモリが、前記第２の二線シリアルバス上の前記１つ又は複数のスレーブ装置と同一のタイプ及び量のデータを同一のアドレス及びオフセットに保存していることを特徴とする請求項３に記載のディジタル状態機械。
【請求項７】
第１の二線シリアルバス上の第１の装置と第２の二線シリアルバス上の第２の装置の間においてデータを転送する方法において、
前記第１のバス上の前記第１の装置からデータを受信する段階と、
ディジタル状態機械のエミュレーションメモリ内に前記データを保存する段階と、
前記第２のバス上の前記第２の装置に対して送信するべく、前記エミュレーションメモリから前記データを抽出する段階と、
前記データを前記第２のバス上の前記第２の装置に対して送信する段階と、
を有する方法。
【請求項８】
前記第１の装置がマスタ装置であり、前記第１のバスがホスト二線シリアルバスであり、前記第２の装置がスレーブ装置であり、前記第２の二線シリアルバスが前記ホスト二線シリアルバスにチェーン接続されたチェーン接続二線シリアルバスであることを特徴とする請求項７に記載の方法。
【請求項９】
前記第１の装置がスレーブ装置であり、前記第１のバスがチェーン接続された二線シリアルバスであり、前記第２の装置がマスタ装置であり、前記第２の二線シリアルバスがホスト二線シリアルバスであり、前記チェーン接続された二線シリアルバスが前記ホスト二線シリアルバスにチェーン接続されていることを特徴とする請求項７に記載の方法。
【請求項１０】
データが、定期的に、前記１つ又は複数のスレーブ装置から受信され、前記エミュレーションメモリ内に保存されることを特徴とする請求項９に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
一般に、本明細書は、マルチマスタのチェーン接続された二線シリアルバスを提供する回路及び方法に関するものである。
【背景技術】
【０００２】
２つの電気装置又はコンポーネント間におけるデータ伝送又は通信は、多くの場合に、「バス」と呼ばれるネットワークを介して実行される。バスは、複数の装置又はコンポーネントを相互接続すると共に、そのバスに接続されている１つ又は複数の装置による信号の送信もしくは受信またはそれらの両方を可能にする。バスシステムは、一般に、プロトコル、規格、又は既定の設計に従って機能している。
【０００３】
このようなバスシステムの１つが二線シリアルバスである。例えば、Ｉ２Ｃ（ｉｎｔｅｒ−ｉｎｔｅｇｒａｔｅｄ  ｃｉｒｃｕｉｔ）バスは、二線シリアルバスである。単純化された二線シリアルバスシステム１００が図１に示されている。二線シリアルバスシステムは、一般に、１つ又は複数のスレーブ装置１０４、１０６、及び１０８と相互接続されたマスタ装置１０２を含んでいる。マスタ装置１０２は、バス１１０を介し、スレーブ装置１０４、１０６、及び１０８との間においてデータ又はメッセージの送受信を可能にする。一般に、マスタ装置１０２が二線シリアルバスシステム１００上におけるすべての通信を制御している。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
残念ながら、図１の二線シリアルバスシステム１００などの二線シリアルバスシステムは、多くの場合に、マルチマスタのバス（これは、バスを制御する複数のマスタ装置を具備したバスである）を実装するために複雑な設計を必要としている。又、例えば、ＧＢＩＣ（Ｇｉｇａｂｉｔ  Ｉｎｔｅｒｆａｃｅ  Ｃｏｎｖｅｒｔｅｒ）、ＳＦＰ（Ｓｍａｌｌ  Ｆｏｒｍ  Ｆａｃｔｏｒ  Ｐｌｕｇｇａｂｌｅ）コンバータ、及びＸＦＰコンバータなどのギガビットインターフェイスコンバータに対してルーターラインカードを接続するネットワーク装置などの多くのアプリケーションにおいては、単一マスタ／スレーブ構成のみが可能であり、マルチマスタバスがサポートされてはいない。
【課題を解決するための手段】
【０００５】
一態様は、複数のチェーン接続された二線シリアルバスを有するマルチマスタの二線シリアルバスである。このチェーン接続された二線シリアルバスは、第１のマスタ装置と、１つ又は複数のスレーブ装置と、を有するホスト二線シリアルバスを含んでいる。１つ又は複数のチェーン接続された二線シリアルバスがホストバスに結合されている。チェーン接続された二線シリアルバスは、第２のマスタ装置（これは、ホスト二線シリアルバス上のスレーブ装置でもある）と、１つ又は複数のスレーブ装置と、を含んでいる。
【０００６】
更なる態様は、ホスト二線シリアルバス上のスレーブ装置と、チェーン接続された二線シリアルバス上のマスタ装置の両方として機能するべく動作可能なディジタル状態機械（ステートマシン）である。このディジタル状態機械は、ホスト二線シリアルバス上のマスタ装置との間においてデータを送受信するべく動作可能な二線シリアルスレーブコンポーネントを含んでいる。ディジタル状態機械は、チェーン接続された二線シリアルバス上の１つ又は複数のスレーブ装置との間においてデータを送受信するべく動作可能な二線シリアルマスタコンポーネントを更に含んでいる。二線シリアルスレーブコンポーネントと二線シリアルマスタコンポーネントの両方は、エミュレーションメモリに結合されている。エミュレーションメモリは、ホスト二線シリアルバス上のマスタ装置から受信した又はチェーン接続された二線シリアルバス上のスレーブ装置から受信したデータを保存又は提供するべく動作可能である。
【０００７】
更に別の態様は、チェーン接続された二線シリアルバス間においてデータを転送する方法である。この方法は、第１のバス（ホスト二線シリアルバス又はチェーン接続された二線シリアルバスのいずれか）上の第１の装置（スレーブ装置又はマスタ装置のいずれか）からデータを受信する段階を有している。次いで、このデータは、ディジタル状態機械のエミュレーションメモリ内に保存される。次いで、エミュレーションメモリ内のデータが抽出され、第２のバス上の第２の装置に対して送信される。
【発明を実施するための最良の形態】
【０００８】
添付の図面を参照して様々な実施例について詳細に説明するが、これらいくつかの図面を通して、類似の参照符号は類似の部分及びアセンブリを表している。様々な実施例に対する参照は、添付の請求項の範囲を限定するものではない。又、本明細書に記述されている例は、限定を意図するものではなく、添付の請求項に伴う多数の可能な実施例の中のいくつかを示しているものに過ぎない。
【０００９】
模範的な実施例において、図２に示されているマルチマスタの二線シリアルバスシステム２００は、複数のチェーン接続されたバス２１０及び２２０を含んでいる。ホストバス２１０は、マスタ装置２０２と、３つのスレーブ装置２０４、２０６、及び２０８を含んでいる。マスタ装置は、ルーターラインカードなどのネットワーク装置であってよい。スレーブ装置も、ＧＢＩＣ、ＳＦＰ、又はＸＦＰなどのネットワーク装置であってよい。ホストバス２１０又はチェーン接続されたバスのその他の実施例は、図２に示されているものよりも多くの又は少ない数のスレーブ装置を包含することができる。第２の（又は、チェーン接続された）バス２２０は、別のマスタ装置２０８（これは、ホストバス２１０上のスレーブ装置でもある）と、２つのスレーブ装置２１６及び２１８を含んでいる。本明細書に記述されているすべての装置又はコンポーネントは、データ接続が有線であるか無線であるかを問わず、装置の相互運用が可能な任意のタイプの適切なデータ接続を使用して互いに結合又は接続可能である。
【００１０】
更なる実施例は、１つ又は複数のチェーン接続されたバスを包含している。例えば、スレーブ装置２０４は、１つ又は複数のその他のスレーブ装置を含む更なるチェーン接続されたバスにおける更なるマスタ装置として機能することも可能である。スレーブ装置２１８も、スレーブ装置２１８に接続され、且つ、１つ又は複数のその他のスレーブ装置を含む更なるチェーン接続されたバスにおけるマスタ装置として機能可能である。従って、このマルチマスタの二線シリアルバスシステム２００は、多数の構成が可能である。又、マルチマスタの二線シリアルバスシステム２００は、マルチマスタの二線シリアルバスを提供してはいるが、ホスト二線シリアルバス２１０であるか、或いは、二線シリアルバス２２０などのチェーン接続された二線シリアルバスであるかを問わず、それぞれの二線シリアルバスごとに存在するマスタは、１つのみである。従って、このマルチマスタの二線シリアルバスシステム２００は、ネットワーク装置などの二線シリアルバス上に単一マスタ装置のみを許容している装置を有するマルチマスタの二線シリアルバスシステム２００を生成することができる。
【００１１】
二線シリアルバスは、クロック回路（ＳＣＬ）２１４とデータ回路（ＳＤＡ）２１２という２つの回路を含んでいる。二線シリアルバスは、バス上の公称電圧がＨｉｇｈ（論理１）であり、装置が電圧をＬｏｗ（論理０）にプルする「オープンドレイン」システムであってよい。二線シリアルバスアプリケーションの実施例においては、論理１は、３．５Ｖを上回る電圧であってよく、論理０は、０．６Ｖを下回る電圧であってよい。回路又はバスは、抵抗器２２６及び２２８などの「プルアップ抵抗器」により、電圧源２２２及び２２４などの電圧源に接続可能である。プルアップ抵抗器は、二線シリアルバス２１０上のマスタ装置２０２又はスレーブ装置２０４、２０６、又は２０８によってプルダウンされていない際に、これらの回路がＨｉｇｈ状態（論理１）を維持するのを支援している。
【００１２】
複数の二線シリアルバスを共にチェーン接続するべく、スレーブ装置２０８（図２）などの１つのスレーブ装置は、図３に示されているディジタル状態機械３０６を実装している。このディジタル状態機械は、マイクロプロセッサ、ＦＰＧＡ（Ｆｉｅｌｄ  Ｐｒｏｇｒａｍｍａｂｌｅ  Ｇａｔｅ  Ａｒｒａｙ）、ＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）、又は本明細書に記述されている機能を実行するべく動作可能なその他の装置などのネットワーク装置内において実装されている。スレーブ装置３１０は、ホスト二線シリアルバス３０４から切断されており、スレーブインターフェイスバス３０８に接続されている。二線シリアルホストインターフェイス３０４は、ディジタル状態機械３０６の二線シリアルスレーブコンポーネント３１２（これは、単にスレーブコンポーネントとも呼ばれる）に接続されている。同様に、スレーブインターフェイスバス３０８は、二線シリアルマスタコンポーネント３１６（これは、単にマスタコンポーネントとも呼ばれる）に接続されている。
【００１３】
二線シリアルマスタコンポーネント及び二線シリアルスレーブコンポーネントの両方は、エミュレーションメモリ３１４に接続されている。このエミュレーションメモリは、ＲＡＭ、ＰＲＯＭ、磁気媒体、光学媒体、又はその他のシステムなどの本明細書に記述されている機能を実行可能な任意のタイプのメモリ装置又は技術によって提供された任意の外部又は内部メモリである。エミュレーションメモリ３１４は、１つ又は複数のスレーブ装置３１０によって維持又は生成されたすべてのデータを保存又は「エミュレート」している。模範的な実施例においては、スレーブ装置３１０と同一のデータを同一のアドレスにおいて同一のオフセットによって保存している。例えば、スレーブ装置がＡ０のアドレスを具備している場合には、このスレーブ装置のデータは、アドレスＡ０においてエミュレーションメモリ３１４内に保存される。従って、ホストバス３０４上のマスタ装置３０２は、スレーブインターフェイスバス３０８上のスレーブ装置３１０とインターフェイスしているかのように、ディジタル状態機械３０６とインターフェイスし、エミュレーションメモリ３１４との間においてデータの書き込み又は読み取りを実行することができる。
【００１４】
二線シリアル通信の模範的なブロックダイアグラムが図４に示されている。二線シリアルトランザクション４００は、ＳＴＡＲＴ状態４０２の発行に伴って始まっている。マスタ装置がアドレス４０４を伝送する。更なる実施例においては、ＲＥＡＤ／ＷＲＩＴＥ（Ｒ／Ｗ）信号も伝送可能である。アドレス４０４を有するスレーブ装置は、アクノリッジ（ＡＣＫ）信号４０６によって応答する。次いで、データワード４０８が伝送される。ＲＥＡＤトランザクションにおいては、スレーブ装置がデータワード４０８をマスタ装置に対して送信する。データワード４０８は、８ビットワード（これは、バイトとも呼ばれる）などの任意の数のビットであってよい。更なる実施例においては、マスタ装置は、マスタ装置がデータワードを受信したことを確認するアクノリッジ信号をスレーブ装置に対して送信することができる。ＷＲＩＴＥトランザクションにおいては、マスタ装置がデータワード４０８を送信し、スレーブ装置がアクノリッジ信号を送信することができる。すべてのデータが伝送されるまで、更なるデータワード及びアクノリッジ信号は反復可能である。その他の実施例においては、データワードは、別個のパケットに分割されていないデータストリームであってよい。データが伝送された後に、マスタ装置は、ＳＴＯＰ状態４１０を発行する。
【００１５】
別の模範的な実施例においては、データをマスタ装置からスレーブ装置に対して送信する二線シリアルトランザクションが、ある時点ｔ０において始まっている。二線シリアルトランザクションを開始するべく、マスタ装置は、クロックラインがＨｉｇｈに留まっている際にデータラインをＬｏｗにプルすることにより、ＳＴＡＲＴ状態を発行する。このＳＴＡＲＴ状態は、データ転送の準備を整えるようにすべてのスレーブ装置に対して通知する「注意」信号として機能している。
【００１６】
ＳＴＡＲＴ状態の後に、クロックライン（ＳＣＬ）がクロックの伝送を開始する。まず、マスタ装置がアドレスを送信する。スレーブ装置が、このアドレスを受信し、このアドレスをその独自のアドレスと比較する。アドレスがマッチングしない場合には、スレーブ装置は、ＳＴＯＰ状態を待つことになる。アドレスがマッチングした場合には、スレーブ装置は、データを受信する準備を実行する。
【００１７】
次いで、マスタ装置は、信号を送信することにより、そのトランザクションがＷＲＩＴＥ動作であってＲＥＡＤ動作ではないことをスレーブ装置に対して通知する。一実施例においては、ＲＥＡＤ／ＷＲＩＴＥ信号は、単一ビットの通知である。アドレスを受信した後に、スレーブ装置は、アクノリッジ信号を送信する。次いで、マスタ装置は、バイトサイズのデータワードのスレーブ装置に対する伝送を開始することができる。スレーブ装置は、それぞれのデータワードの後に、アクノリッジ信号を送信することができる。
【００１８】
データワードの伝送は、すべてのデータがマスタ装置からスレーブ装置に送信されるまで継続可能である。データ伝送が成功裏に完了した際に、マスタ装置は、ＳＴＯＰ状態を発行することになる。一実施例においては、ＳＴＯＰ状態は、クロックがＨｉｇｈである時にデータラインがＨｉｇｈになることをマスタ装置が許容した際に実現する。この時点において、二線シリアルバスが解放され、すべての装置は、更なるＳＴＡＲＴ状態の発行を待つことになる。
【００１９】
ＲＥＡＤ動作においては、マスタ装置は、ＲＥＡＤビットを送信することができる。スレーブ装置は、バイトサイズのデータワードをマスタ装置に対して送信する。マスタ装置は、それぞれのデータワードの後に、アクノリッジ信号を送信する。すべてのデータの受信が完了した際に、マスタ装置はＳＴＯＰ状態を発行する。
【００２０】
図３を再度参照すれば、ディジタル状態機械３０６の模範的な実施例は、二線シリアルトランザクションをエミュレートすることができる。模範的な実施例においては、エミュレーションメモリ３１４が定期的に更新されている。例えば、二線シリアルマスタコンポーネント３１６は、スレーブバス３０８上の１つ又は複数のスレーブ装置３１０とのＲＥＡＤトランザクションを完了する。１つ又は複数のスレーブ装置３１０から受信されたデータは、同一のアドレス、オフセット、及びその他のフォーマットを使用してエミュレーションメモリ３１４に保存される。エミュレーションメモリ３１４の更新は、数秒ごと、数時間ごと、毎日、或いは、エミュレーションメモリ３１４が１つ又は複数のスレーブ装置に保存されているデータを正確に反映することを保証する任意のインターバルにおいて実行可能である。
【００２１】
マスタバス３０４上のマスタ装置３０２がスレーブ装置３１０のＲＥＡＤ要求を発行した際には、ＲＥＡＤトランザクションが二線シリアルスレーブコンポーネント３１２によってエミュレートされる。二線シリアルスレーブコンポーネント３１２は、装置アドレスを受信し、このアドレスをエミュレーションメモリ３１４内に保存されているアドレスと比較する。アドレスがエミュレーションメモリ３１４内のアドレスとマッチングした場合には、二線シリアルスレーブコンポーネント３１２は、アクノリッジ信号を送信する。次いで、二線シリアルスレーブコンポーネント３１２は、定期的に更新されているエミュレーションメモリ３１４から適切なデータを判読する段階と、このデータをマスタ装置３０２に対して送信する段階を開始する。この結果、マスタ装置３０２は、スレーブ装置３１０と相互運用するのと同一の方式によってスレーブコンポーネント３１２と相互運用する。従って、スレーブコンポーネント３１２は、二線シリアルトランザクションを「エミュレート」している。
【００２２】
その他の実施例においては、二線シリアルトランザクションにおいて（又は、このために）、エミュレーションメモリ３１４を更新することができる。即ち、二線シリアルスレーブコンポーネント３１２がＲＥＡＤ要求を受信する。二線シリアルスレーブコンポーネント３１２は、スレーブ装置３１０から現在のデータを取得するようにマスタコンポーネント３１６に対して信号を送る。現在のデータが、エミュレーションメモリ３１４に保存され、エミュレーションメモリ３１４から読み取られ、マスタ装置３０２に対して送信される。データをマスタ装置３０２に送信する前に、スレーブ装置３１０からエミュレーションメモリ３１４への情報の転送を確実に完了するように、マスタ装置３０２に対する通信に遅延が必要となる可能性がある。
【００２３】
更にその他の実施例においては、マスタ装置３０２からのＲＥＡＤ要求に応答して（或いは、定期的に）、エミュレーションメモリ３１４内のデータをチェックしている。例えば、エミュレーションメモリ３１４とスレーブ装置３１０との間においてチェックサム又はその他のデータをチェックすることにより、エミュレーションメモリ３１４が最新の情報を保存しているかどうかを判定することができる。チェックサム又はその他の情報がマッチングしていない場合には、マスタコンポーネント３１６とスレーブ装置３１０との間におけるＲＥＡＤトランザクションにより、エミュレーションメモリ３１４の更新を実行することができる。
【００２４】
ＷＲＩＴＥトランザクションは、二線シリアルマスタ装置３０２がＷＲＩＴＥ要求を発行することによって始まる。スレーブコンポーネント３１２は、エミュレーションメモリ３１４内に保存されているアドレスに照らして、そのアドレスをチェックする。アドレスがマッチングしている場合には、スレーブコンポーネント３１２は、アクノリッジ信号を発行し、ＷＲＩＴＥトランザクションを完了させる。データがエミュレーションメモリ３１４に書き込まれる。次いで、二線シリアルマスタコンポーネントが、スレーブ装置３１０とのＷＲＩＴＥトランザクションを完了させ、エミュレーションメモリ３１４からのデータをスレーブ装置３１０に対して書き込む。実施例においては、データ存在フラグ又はその他の通知により、１つ又は複数のスレーブ装置３１０に対するデータ書き込み要求についてマスタコンポーネント３１６に通知している。
【００２５】
二線シリアルバスシステム３００（図３）などのチェーン接続された二線シリアルバスシステムのスレーブバス３０８（図３）上のスレーブ装置３１０（図３）などのスレーブ装置からデータを読み取る方法５００が図５に示されている。判定動作５０２は、どのスレーブ装置からデータを受信するかを判定している。一実施例においては、エミュレーションメモリ３１４（図３）などのエミュレーションメモリ内のデータが定期的に更新されている。エミュレーションメモリ内においてエミュレートされているデータを具備したそれぞれの装置を選択し、エミュレーションメモリ内の関連するデータを更新している。
【００２６】
送信動作５０４は、ＲＥＡＤ要求をスレーブ装置に対して送信している。模範的な実施例においては、マスタコンポーネント３１６（図３）は、図４と関連して説明したように、ＲＥＡＤ要求を発行している。このＲＥＡＤ要求により、二線シリアルトランザクションが起動される。受信動作５０６は、スレーブ装置からデータを受信している。スレーブ装置は、図４と関連して説明した二線シリアルトランザクションに従って、データ送信を開始する。マスタコンポーネントが、このデータを受信する。書き込み動作５０８は、このデータを、そのデータ及びスレーブ装置と関連付けられているエミュレーションメモリの部分に書き込む。図３と関連して説明したように、エミュレーションメモリは、エミュレートされているスレーブ装置におけるデータと同一のタイプ及び量のデータを同一のアドレス及びオフセットに具備している。模範的な実施例においては、同一のアドレス及びオフセットにおけるデータを置換することにより、スレーブ装置から受信されたデータを使用してエミュレーションメモリ内の関連したデータを更新している。
【００２７】
バスシステム３００（図３）などのチェーン接続された二線シリアルバスシステムのホスト二線シリアルバス３０４（図３）上のディジタル状態機械３０６（図３）などのディジタル状態機械からデータを読み取る方法６００が図６に示されている。受信動作（６０２）は、ホスト二線シリアルバス上のマスタ装置３０２（図３）などのマスタ装置からＲＥＡＤ要求を受信している。模範的な実施例においては、ディジタル状態機械内のスレーブコンポーネント３１２（図３）などのスレーブコンポーネントがＲＥＡＤ要求を受信する。判定動作６０４は、データを要求する先のスレーブ装置を判定している。模範的な実施例においては、スレーブコンポーネントがマスタ装置から装置アドレスを受信している。スレーブコンポーネントは、エミュレーションメモリ３１４（図３）などのエミュレーションメモリ内に保存されているアドレスに照らして、このアドレスをチェックする。受信したアドレスがエミュレーションメモリ内のアドレスとマッチングした場合には、スレーブコンポーネントは、アクノリッジ信号を送信する。
【００２８】
検出動作６０６は、要求されたデータを保存しているエミュレーションメモリの部分を見つけ出す。図３と関連して説明したように、エミュレーションメモリは、エミュレーションメモリがエミュレートしているスレーブ装置と同一のタイプ及び量のデータを同一のアドレス及びオフセットに格納している。従って、スレーブコンポーネントは、スレーブ装置からメモリを抽出するかのように、エミュレーションメモリ内のデータを見つけ出す。抽出動作６０８は、エミュレーションメモリからデータを読み取っている。模範的な実施例においては、スレーブコンポーネントがエミュレーションメモリからデータを読み取っている。送信動作６１０は、抽出されたデータを要求者（即ち、マスタ装置）に送信している。模範的な実施例においては、スレーブコンポーネントは、すべての要求されたデータのマスタ装置に対する送信が完了するまで、マスタ装置との二線シリアルトランザクションを維持している。
【００２９】
以上において説明した様々な実施例は、例示を目的として提供されたものに過ぎず、添付の請求項の範囲を限定するものと解釈してはならない。当業者であれば、本明細書に図示及び説明されている実施例及びアプリケーションに準拠することなしに、且つ、添付の請求項の真の精神及び範囲を逸脱することなしに、実施可能となる様々な変更及び変形について容易に認識するであろう。念のため、本発明の実施の形態を以下に要約して例示列挙する。
【００３０】
（実施態様１）
第１のマスタ装置（２０２）と、前記第１のマスタ装置（２０２）に結合された１つ又は複数のスレーブ装置（２０４）であって、それぞれが、前記第１のマスタ装置（２０２）との間においてデータを送受信するべく動作可能である１つ又は複数のスレーブ装置（２０４）と、を含むホスト二線シリアルバス（２１０）と、
前記ホスト二線シリアルバス（２１０）上のスレーブ装置（２０８）でもあり、前記第１のマスタ装置（２０２）との間においてデータを送受信するべく動作可能な第２のマスタ装置（２０８）と、前記第２のマスタ装置（２０８）に結合された１つ又は複数のその他のスレーブ装置（２１６）であって、それぞれが、前記第２のマスタ装置（２０８）との間においてデータを送受信するべく動作可能である１つ又は複数のその他のスレーブ装置（２１６）と、を含む前記ホスト二線シリアルバス（２１０）に結合された１つ又は複数のチェーン接続された二線シリアルバス（２２０）と、
を有するマルチマスタのチェーン接続された二線シリアルバス（２００）。
【００３１】
（実施態様２）
前記第１のマスタ装置（２０２）が、前記第２のマスタ装置（２０８）との間における二線シリアルトランザクションを完了することにより、前記１つ又は複数のその他のスレーブ装置（２１６）との間におけるデータの書き込み又はデータの読み取りを実行することを特徴とする実施態様１に記載のマルチマスタのチェーン接続された二線シリアルバス（２００）。
【００３２】
（実施態様３）
チェーン接続されたＩ２（ｉｎｔｅｒ−ｉｎｔｅｇｒａｔｅｄ）（二線シリアル）バス（３００）上の二線シリアルマスタ装置及び二線シリアルスレーブ装置の両方をエミュレートするべく動作可能なディジタル状態機械（３０６）において、
ホスト二線シリアルバス（３０４）上のマスタ装置（３０２）との間においてデータを送受信するべく動作可能な二線シリアルスレーブコンポーネント（３１２）と、
第２の二線シリアルバス（３０８）上の１つ又は複数のスレーブ装置（３１０）との間においてデータを送受信するべく動作可能である二線シリアルマスタコンポーネント（３１６）と、
前記二線シリアルスレーブコンポーネント（３１２）に結合され、且つ、前記二線シリアルマスタコンポーネント（３１６）にも結合されているエミュレーションメモリコンポーネント（３１４）であって、前記ホスト二線シリアルバス（３０４）上のマスタ装置（３０２）から受信した又は前記第２の二線シリアルバス（３０８）上のスレーブ装置（３１０）から受信したデータを保存するべく動作可能なエミュレーションメモリコンポーネント（３１４）と、
を有するディジタル状態機械（３０６）。
【００３３】
（実施態様４）
前記二線シリアルスレーブコンポーネント（３１２）が、前記ホスト二線シリアルバス（３０４）上の前記マスタ装置（３０２）との間における二線シリアルトランザクションをエミュレートし、前記エミュレートされた二線シリアルトランザクションにおいて、前記二線シリアルスレーブコンポーネント（３１２）が、前記エミュレーションメモリ（３１４）との間におけるデータの書き込み及びデータの読み取りを実行することを特徴とする実施態様３に記載のディジタル状態機械（３０６）。
【００３４】
（実施態様５）
二線シリアルマスタコンポーネント（３１６）が、前記第２の二線シリアルバス（３０８）上のスレーブ装置（３１０）との間における二線シリアルトランザクションをエミュレートし、前記エミュレートされた二線シリアルトランザクションにおいて、前記二線シリアルマスタコンポーネント（３１６）が、前記エミュレーションメモリ（３１４）との間におけるデータの書き込み及びデータの読み取りを実行することを特徴とする実施態様３に記載のディジタル状態機械（３０６）。
【００３５】
（実施態様６）
前記エミュレーションメモリ（３１４）が、前記第２の二線シリアルバス（３０８）上の前記１つ又は複数のスレーブ装置（３１０）と同一のタイプ及び量のデータを同一のアドレス及びオフセットに保存していることを特徴とする実施態様３に記載のディジタル状態機械（３０６）。
【００３６】
（実施態様７）
第１の二線シリアルバス（３０８）上の第１の装置（３１０）と第２の二線シリアルバス（３０４）上の第２の装置（３０２）の間においてデータを転送する方法（５００）において、
前記第１のバス（３０８）上の前記第１の装置（３１０）からデータを受信する段階（５０６）と、
ディジタル状態機械（３０６）のエミュレーションメモリ（３１４）内に前記データを保存する段階（５０８）と、
前記第２のバス（３０４）上の前記第２の装置（３０２）に対して送信するべく、前記エミュレーションメモリ（３１４）から前記データを抽出する段階（６０８）と、
前記データを前記第２のバス（３０４）上の前記第２の装置（３０２）に対して送信する段階（６１０）と、
を有する方法（５００）。
【００３７】
（実施態様８）
前記第１の装置がマスタ装置（３０２）であり、前記第１のバスがホスト二線シリアルバス（３０４）であり、前記第２の装置がスレーブ装置（３１０）であり、前記第２の二線シリアルバスが前記ホスト二線シリアルバス（３０４）にチェーン接続されたチェーン接続二線シリアルバス（３０８）であることを特徴とする実施態様７に記載の方法。
【００３８】
（実施態様９）
前記第１の装置がスレーブ装置（３１０）であり、前記第１のバスがチェーン接続された二線シリアルバス（３０８）であり、前記第２の装置がマスタ装置（３０２）であり、前記第２の二線シリアルバスがホスト二線シリアルバス（３０４）であり、前記チェーン接続された二線シリアルバス（３０８）が前記ホスト二線シリアルバス（３０４）にチェーン接続されていることを特徴とする実施態様７に記載の方法。
【００３９】
（実施態様１０）
データが、定期的に、前記１つ又は複数のスレーブ装置（３１０）から受信され、前記エミュレーションメモリ（３１４）内に保存されることを特徴とする実施態様９に記載の方法。
【図面の簡単な説明】
【００４０】
【図１】従来技術において既知の二線シリアルバスシステムの概略図である。
【図２】マルチマスタのチェーン接続された二線シリアルバスシステムの一実施例の概略図である。
【図３】第１の二線シリアルバス上のスレーブと第２の二線シリアルバス上のマスタの両方として機能するべく動作可能なディジタル状態機械の一実施例のブロックダイアグラムである。
【図４】二線シリアルバス上のデータ転送用の模範的なデータブロックダイアグラムである。
【図５】チェーン接続された二線シリアルバスに跨ってデータを受信する方法の模範的な実施例を示している。
【図６】チェーン接続された二線シリアルバスに跨ってデータを送信する方法の模範的な実施例を示している。
【符号の説明】
【００４１】
２００  二線シリアルバス
２０２  第１のマスタ装置
２０４  スレーブ装置
２０８  第２のマスタ装置
２１０  ホスト二線シリアルバス
２１６  その他のスレーブ装置
２２０  二線シリアルバス
３００  チェーン接続されたＩ２（二線シリアル）バス
３０２  マスタ装置
３０４  ホスト二線シリアルバス
３０６  ディジタル状態機械
３０８  第２の二線シリアルバス
３１０  スレーブ装置
３１２  二線シリアルスレーブコンポーネント
３１４  エミュレーションメモリコンポーネント
３１６  二線シリアルマスタコンポーネント
【図１】
2007251947.tif 000003
【図２】
2007251947.tif 000004
【図３】
2007251947.tif 000005
【図４】
2007251947.tif 000006
【図５】
2007251947.tif 000007
【図６】
2007251947.tif 000008
【外国語明細書】
2007251947000001.pdf