JP2008539499A - ダイナミックi2cスレーブデバイスアドレスデコーダ - Google Patents

ダイナミックi2cスレーブデバイスアドレスデコーダ Download PDF

Info

Publication number
JP2008539499A
JP2008539499A JP2008508410A JP2008508410A JP2008539499A JP 2008539499 A JP2008539499 A JP 2008539499A JP 2008508410 A JP2008508410 A JP 2008508410A JP 2008508410 A JP2008508410 A JP 2008508410A JP 2008539499 A JP2008539499 A JP 2008539499A
Authority
JP
Japan
Prior art keywords
address
state
slave device
line
slave
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.)
Withdrawn
Application number
JP2008508410A
Other languages
English (en)
Inventor
デシュパンデ アムリタ
アンダーソン アルマ
イラザバル ジャン−マルク
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips NV
Koninklijke Philips Electronics NV
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips NV, Koninklijke Philips Electronics NV filed Critical Koninklijke Philips NV
Publication of JP2008539499A publication Critical patent/JP2008539499A/ja
Withdrawn legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Systems (AREA)
  • Dc Digital Transmission (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一実施例では、本発明の通信システムは、通信プロトコルを実施するためにシリアルデータライン(110)およびクロックライン(120)を有するI2Cシリアルデータ転送バスを使用する。通信システムは、アドレスピンを有するスレーブデバイス(400)を含み、各アドレスピンは、シリアルデータライン、クロックライン、パワーライン、あるいはグラウンドに結合されている。通信回路は、データ転送バスの上の通信プロトコルに従ってマスタデバイスと通信する。デコーディング回路は、アドレスピンの第1状態を検出(410)し、この第1状態の検出に続いてアドレスピンの第2状態を検出(420)し、この検出においてアドレスピンの1つ以上のロジック値が第1状態と第2状態との間で相違し、アドレスピンの第1状態と第2状態との間の関数関係に基づいてスレーブデバイスアドレスをデコード(430)する。

Description

本発明は、一般に、通信装置およびその方法に関するものであり、特には、スレーブデバイスアドレスをダイナミックに変更しデコードするための方法および装置に関するものである。
フィリップス社が開発した I2C(Inter-Integrated Circuit)バスによって、集積回路は(電源およびグラウンドに加えて)簡単な双方向2線バスを介して、互いに直接通信することができる。デバイスはバス上の2ライン、すなわち、データ通信のためのシリアルデータライン(SDA)と、デバイス間のデータ通信の制御および同期のためのシリアルクロックライン(SCL)との各々に接続する。各デバイスは他の各デバイスと並列に結合され、各バスライン(SDAおよびSCL)はバス上の全ラインのワイヤード・アンドとして機能する。各デバイスの出力はオープンコレクタ/オープンドレイン・デバイスとして構成され、バスが休止状態にある間、1つ以上のプルアップ抵抗がバス上に「ソフト」ロジックハイ値を維持する。デバイスがバスにアクセス要求をするとき、デバイスは、導電状態でグラウンド電位になるオープンコレクタ/オープンドレイン・デバイスによって、バスをロジックロー値に引く。
I2Cバスに接続している各デバイスは、アドレスによって識別可能であり、送信機あるいは受信機として、または両方として動作することができる。データ転送は、マスタ−スレーブ通信プロトコルを使用して実行される。マスタはデータ転送を開始するデバイスであり、転送を可能にするためのクロック信号を生成し、アドレス指定される任意のデバイスはこの転送のスレーブとみなされる。データ転送はマスタによって開始され、データをスレーブに送信する(本明細書ではライトと表現される)、または、データをスレーブから要求する(本明細書ではリードと表現される)ことができる。例えば、表示スクリーンのような出力装置は、一般的にデータ転送を開始することができないので、スレーブデバイスとしてのみ動作するように構成される。一方、マイクロプロセッサは、一般的に、状況に応じてマスタあるいはスレーブとして動作するように構成される。
休止状態では、SDAおよびSCLバスラインは、ロジックハイの状態(本明細書では、ハイまたは論理状態1と表現される)にある。SCLラインがハイの間に、マスタはロジックローの状態(本明細書では、ローまたは論理状態0と表現される)への遷移をSDAラインにアサートすることによってデータ転送を開始し、これはスタートコンディションと呼ばれる。その後、マスタは、データ転送を同期制御するために、SCLラインの状態を交互に切り替え、SCLクロックがローのときに、データ値の変化がSDAラインに生じ、SCLクロックがハイのときは、SDAラインの状態が有効であるとみなされるだけである。
複数のスタートコンディションをアサートし、同じ転送セッション内で一連のデータ転送を実行することができる。通常、各データ転送は、データ転送のアドレス指定された受信側からの肯定応答を必要とする。データ転送を終了するには、SCLクロックがハイの間に、ホストはSDAラインにローからハイへの遷移をアサートする。これは、ストップコンディションと呼ばれる。その後、任意のデバイスが、上述したように、ハイからローへの遷移をSDAラインにアサートすることによって、マスタとしてバスを制御することができる。本明細書では、説明を簡略化するために、特定の論理状態を有効にするあるいは有効にするよう試みることをアサートという用語で表していることに注意されたい。ロジックハイ状態への遷移は、一般的に、アサートするデバイスによる強制プルダウン状態からのバスの解放によって与えられる。他のデバイスがプルダウン状態を強制していない限り、このロジックハイ状態のアサーションは、上述したプルアップ抵抗によりバスをロジックハイの状態にすることができる。
I2Cデータ転送の一般的なフォーマットは、I2Cバスを形成するSDAラインおよびSCLライン上の信号を含む。SCLラインがハイの間、スタートコンディション(S)はSDAライン上の信号のハイからローへの遷移に対応する。スタートコンディションの後、ホストはアドレス(公称7ビット)に続いてリード/ライトビットを送信する。アドレスおよびデータ転送方向(R/W)を送信した後に、ホストはSDAラインを解放するので、SDAラインはロジックハイレベルまで上昇することができる。スレーブデバイスは自分のアドレスを認識すると、バスをローに引くことによって肯定応答信号(ACK)を送信する。したがって、ホストがSDAラインを解放するときにロー信号がないことは否定応答(NAK)を示す。SDAのローによってアドレスが肯定される場合、送信装置はデータを送信する。データ転送の方向がホストに対して「リード」の場合、スレーブデバイスが送信装置となり、データ転送の方向がホストに対して「ライト」の場合、マスタデバイスが送信装置となる。送信装置がSDAラインの制御を解放し、受信装置がSDAラインにロジックロー値をアサートすることによってデータ受信を肯定する。データ受信が肯定される場合、送信装置は追加データを送信する。全データが伝達されるまで、または、送信されたデータ項目が否定されるまで、このプロセスが続く。その後、マスタはスタート信号を再びアサートして上述したプロセスを繰り返す、あるいは、ストップ信号(P)をアサートしてこのデータ転送セッションを終了することができる。
上記のインタフェースプロトコルを、さまざまな方法で実現することができる。I2Cインタフェースをプログラムまたは設計するための開発時間を最短にするために、種々の汎用インタフェース方式が発表されてきた。(「Design Of A Behavioral (Register Transfer Level, RTL) Model Of The Inter-Integrated Circuit Or I2C-Bus Master-Slave Interface」, Master's Thesis of Amrita Deshpande, University of New Mexico, 1999)は、I2Cデバイスに具現化するように意図されたI2Cマスタインタフェースおよびスレーブインタフェースを開示しており、参考のためにここに含まれる。検証済のI2Cインタフェースを提供することによって、システム設計者はI2Cの仕様およびプロトコルの詳細に対処する必要がなくなる。この論文のマスタおよびスレーブインタフェースは、ともにステートマシンベースである。ステートマシンベースのシステムおよび方法は米国特許第6,799,233号明細書に更に記載され、参考のためにここに含まれる。
本発明のさまざまな態様は、上述した問題を解決するように、スレーブデバイスアドレスをダイナミックに変更しデコードするための方法および装置を対象にしている。
一実施例では、本発明は、通信プロトコルを実施するためにシリアルデータラインおよびクロックラインを有するI2Cシリアルデータ転送バスを使用する通信システムを対象にしている。通信システムは、アドレスピン有するスレーブデバイスを含み、各アドレスピンは、シリアルデータライン、クロックライン、パワーライン、あるいはグラウンドに結合されている。スレーブデバイス内の通信回路は、データ転送バスを介して通信プロトコルに従ってマスタデバイスと通信するように構成される。スレーブデバイス内のデコーディング回路は、クロックラインがロジックハイのとき、シリアルデータライン上のロジックハイからロジックローへの遷移に応答して、スレーブデバイスのアドレスピンの第1状態を検出し、クロックラインがロジックハイからロジックローに遷移するとき、スレーブデバイスのアドレスピンの第2状態を検出し、この検出においてアドレスピンの1つ以上のロジック値が第1状態と第2状態との間で相違し、アドレスピンの第1状態と第2状態との間の関数関係に基づいてスレーブデバイスアドレスをデコードするように構成される。
他の一実施例では、本発明の方法は、シリアルデータ転送バス上のスタートコンディションに応答して、スレーブデバイスのアドレスピンの第1状態を検出し、第1状態の検出に続き、スレーブデバイスのアドレスピンの第2状態を検出し、この検出においてアドレスピンの1つ以上のロジック値が第1状態と第2状態との間で相違し、アドレスピンの第1状態と第2状態との間の関数関係に基づいてスレーブデバイスアドレスをデコードする。
上述した本発明の要旨は、本発明の各実施例または全実施例を記載することを目的としない。添付図面と合わせて以下の詳細な説明および特許請求の範囲を参照することによって、本発明をより完全に理解するとともに、本発明の効果および達成するものを明らかにする。
本発明は、添付図面と関連した本発明の各種実施例の以下の詳細な説明を考慮すると、より完全に理解することができる。
本発明は種々の変更例および代替例が可能であるが、特定の実施例を一例として図面に示し、以下に詳細に説明する。しかし、本発明は、記載されている特定の実施例に限定されるものではない。それどころか、本発明は、添付の請求の範囲で特定される本発明の範囲に入る全ての変更物、等価物および代替物をカバーするものである。
本発明は、一般的に、スレーブデバイスアドレスをダイナミックに変更およびデコードするための方法および装置に適用できる。本発明は、特に、I2C(Inter Integrated Circuit)シリアルデータ通信バスに有利であるとわかったが、システムマネジメントバス(SMBus)アーキテクチャおよび/またはプロトコルのような、他のバスおよび通信プロトコルにもまた有利であることがわった。本発明は、限定ではなく例示のために、スレーブデバイスに対する通信を制御するマスタデバイスを有するI2Cバスに関して説明される。
マスタは、I2Cバス・アーキテクチャ上でI2Cスレーブとの通信を制御する。I2Cスレーブは、携帯電話、PDAおよびスマートフォンからLCD TV、医療機器、ゲーム機にわたる分野の多数のアプリケーションおよび他のアプリケーションに見られる。一実施例では、本発明の通信システムは、通信プロトコルを実施するためにシリアルデータラインおよびクロックラインを有するシリアルデータ転送バスを使用するものであり、スレーブデバイスに、ダイナミックスレーブアドレスデコーダを組み込む。例えば、本発明のデバイスは、外部プログラム可能なアドレスピンを有するI2Cスレーブデバイスに実装することができる。本発明のスレーブアドレスデコーダの実装は、I2Cトランザクション中にダイナミックに変更されるスレーブアドレスのためであり、スレーブアドレスは正しくデコードされ、その部分をリセットしたり、パワーダウンする必要はない。
本発明のダイナミックスレーブデバイスアドレスデコーディングの実施は、内部遅延セルを用いるので、外部クロックを必要としない。遅延セルは、個別のクロックを用いずにアドレスデコーディングのためのタイミングを提供する。スレーブアドレスは、I2C通信シーケンスの毎スタートコンディションの終わりに検出される。この特徴のため、スレーブアドレスはスタートコンディションの前にいつでも変更することができ、デコーダが正しいアドレスをデコードする。
本発明の一実施例では、スレーブは、VDD(パワー)、GND(グラウンド)、SCLおよびSDAのいずれかに接続されうる、外部プログラム可能なアドレスピンを有する。アドレスピンは4つの接続が可能であるので、アドレスピンは4つの値を有することができる。本発明は、I2Cバス上のスタートコンディションの間にアドレスピンの接続の検出を提供する。
シリアルバス上のスレーブデバイスアドレスのダイナミックな変更およびデコーディングを用いるI2C(Inter-integrated circuit)スレーブデバイスは、汎用入出力(GPIO)デバイスまたは他のスレーブデバイスとして構成することができる。通信システムは、I2C、SMBusおよび/または他のシリアル通信仕様に従うことができる。
図1は、本発明の実施例に係る、スレーブデバイスアドレスのダイナミックな変更およびデコーディングを実施するデータ通信システム100のブロック図である。SDAライン110およびSCLライン120はI2Cデータバス125として構成されている。マスタデバイス130およびスレーブデバイス140は、I2Cデータバス125に接続されている。マスタデバイス130は、SCLライン120およびSDAライン110にそれぞれ電気的に接続されたクロック接続134およびデータ接続132を用いて、I2Cデータバス125に電気的に接続されている。
スレーブデバイス140は、SCLライン120およびSDAライン110にそれぞれ電気的に接続されたクロック接続144およびデータ接続142を用いて、I2Cデータバス125に電気的に接続されている。スレーブデバイスアドレスをダイナミックに変更する一実施例では、マスタデバイス130は、152において、現在のデバイスアドレスを使用してスレーブデバイス140をアドレス指定し、153において、スレーブデバイス140とのトランザクションを実行し、154において、スレーブ140のアドレスを変更する。次に、156において、マスタ130は、スレーブの新たなアドレス情報を、後に使うためにメモリに格納する。スレーブデバイス140は、162において、スタートコンディションを検出し、その後、164において、そのアドレスをデコードする。
図2は、本発明の実施例に係る、スレーブデバイスアドレスのダイナミックな変更およびデコーディングを実施するデータ通信システムのためのタイミング図200の一例である。図2に示すタイミング図200はI2C通信プロトコルに従う。本発明のダイナミックスレーブアドレスデコーダはI2Cクロックライン210(SCL)入力およびI2Cデータライン220(SDA)入力を使用する。スタートコンディション(I2Cプロトコルで定義される)は、I2Cバス(SCLおよびSDA信号からなる)上で生成され、スタートライン250に示される。スタートコンディションの間、SCLライン210はハイであり、その間にSDAライン220がハイからローに遷移する。スレーブデバイスのアドレスピンがこれらの2本のラインのいずれかに接続されている場合、アドレスピンはそれらのバスラインに従う。例えば、アドレスピンがSCLライン210に接続されている場合、アドレスピンは、SCLライン210がハイからローに遷移するとき、ハイからローに遷移する。同様に、アドレスピンがSDAライン220に接続されている場合、アドレスピンは、SDAライン220がハイからローに遷移するとき、ハイからローに遷移する。
スレーブアドレスデコーダ回路はアドレスピンにこの遷移が起こる場合にこの遷移を検出し、後の参照のためにその情報をレジスタに格納する。SCL信号とSDA信号を同期させてライン上の遷移の前後の値を格納するために使用する高周波数の外部クロックは存在しない。外部クロックなしでこれらの遷移を検出するために、遅延セルを用いてアドレスピンの遅延信号を生成する。例えば、3つの遅延セルを用いて、遅延SCL230、遅延SDA240および遅延スタート260を供給する。
SDAライン220上の最初のハイからローへの遷移(タイミング図の「B」で表される)を用いて、アドレスピンの遅延信号の値をラッチする。これは、SDAが遷移する前のアドレスピンの値をセットする。この値がローの場合、アドレスピンがGNDに接続されていると結論づける。
また、SCLライン210上の最初のハイからローへの遷移(タイミング図の「A」で表される)を用いて、アドレスピンの遅延信号の値をラッチする。これは、SCLが遷移する前のアドレスピンの値をセットする。その値がローの場合、アドレスピンがGNDまたはSDAのいずれかに接続されていると結論づける。
アドレスピンがSDAラインとともに変化するか否か検出するために、遅延スタートライン260の立上りエッジ(タイミング図の「C」で表される)を用いて、SDAラインの立下りエッジの遷移後のアドレスピンの値をラッチする。図3を参照して後述するように、これは、アドレスピンおよびSDAラインの排他的論理和によって実行される。遅延スタートライン260の立下りエッジ(タイミング図の「D」で表される)を用いて、以下のように、SCLおよびSDAへのアドレスピンの接続の検出をラッチする。
アドレスピンの値がBにおいてローのとき、アドレスピンはGNDに接続されている。アドレスピンがBにおいてハイを、Cにおいてローを維持したことが分かると、アドレスピンはSDAに接続されている。アドレスピンがCにおいてハイを、Dにおいてローを維持する場合、アドレスピンはSCLに接続されている。アドレスピンがAおよびDにおいてハイを維持する場合、アドレスピンはVDDに接続されている。
4つの信号SCL、SDA、VDD、GNDの組合せと、使用するアドレスピンの数(x)とに従い、最大4倍の(x4の)アドレスを検出することができる。このように、遅延セルを用いて、外部発振器を用いずに、スレーブアドレスは、毎スタートコンディションの間にデコードされ、参照のために格納される。
図3は、本発明の実施例に係る、スレーブデバイスアドレスのダイナミックな変更およびデコーディングを実施するシステム300のブロック図である。システム300は、Dフリップフロップ回路301-307および一般のロジックゲートを使用して実現される例である。遅延セル310-313は、例えば、RC遅延回路を使用して実現することができる。上述した通り、スタートロジック320を用いて、ダイナミックにデバイスのアドレスをデコードする。フィルタ331、332、333および334は、従来技術において既知のトランジスタレベルのグリッチフィルタとして実現することができる。ロジックブロックへの全ての関連した入力および出力は、固有の名前によって識別される。例えば、SCLラインは、スタートロジック320への入力と、SCLフィルタ331への入力と、Dフリップフロップ回路303へのクロック入力として示される。
図4は、本発明の実施例に係る、スレーブデバイスアドレスをダイナミックに変更およびデコードするための方法400のフローチャートである。方法400は、アドレスピンの第1状態を検出するステップ410と、アドレスピンの第2状態を検出するステップ420と、アドレスピンの第1および第2の状態に基づいてアドレスをデコードするステップ430とを含む。
図5は、本発明の他の実施例に係る、スレーブデバイスアドレスをダイナミックに変更およびデコードするための方法500のフローチャートである。一例として、スレーブデバイスは、I2Cバスに接続することができる。スレーブデバイスは、スレーブの各アドレスピンをパワー、グラウンド、SDAまたはSCLのうちの1つに結合するように構成された回路を含むことができる。回路は変更可能あるいはプログラム可能とすることができるので、マスタデバイスはスレーブデバイスのアドレスを変更することができる。
方法500は、アドレスピンの第1状態を検出するステップ510と、アドレスピンの第2状態を検出するステップ520と、アドレスピンの第1および第2の状態に基づいてアドレスをデコードするステップ530とを含む。540において、スレーブデバイスのアドレスを変更することができ、そうすると、スレーブは次のスタートコマンドで異なるアドレスを認識する。これは、例えば、論理アドレスがサポートできるより多くの物理デバイスをI2Cバスにサポートするのに有効となりうる。
ハードウェア、ファームウェア、ソフトウェアまたはそれらの組合せを用いて、本明細書に記載したスレーブデバイスアドレスをダイナミックに変更およびデコードするための種々の実施例を実行することができる。本発明と関連して用いられるマスタデバイスの機能は、上記の如きI2Cマスタデバイスにもたせることもでできるが、スタンドアロンコンピュータあるいはシリアルデータ通信システム100に接続されるネットワーク型コンピュータにもたせることもできる。図1に示すシリアルデータ通信システム100は、本発明の動作を実行するために、この種の通信システム、コンピュータまたは他のコンピュータ実装デバイスと関連して用いることができる構成の一例である。
図1に示すマスタデバイス130の例は、本発明に係る、I2Cバス上のI2C通信を制御するのに適しており、一般的に、ランダムアクセスメモリ(RAM)および/または数種類のリードオンリーメモリ(ROM)に結合された中央制御装置(CPU)を含む。また、ROMは、プログラマブルROM(PROM)、消去可能PROM(EPROM)などのような、プログラムを格納する他のタイプの記憶媒体でもよい。プロセッサは、入出力(I/O)回路および/または他のバスを介して、他の内部及び外部構成要素と通信して、制御信号、通信信号などを供給することができる。
マスタデバイス130は、情報の読み込みおよび/または格納ができるハードディスクドライブ、フレキシブルディスクドライブ、CD−ROMドライブ、DVDなどの他のハードウェアを含む1つ以上のデータ記憶装置を含むことができる。一実施例においては、スレーブデバイスアドレスをダイナミックに変更およびデコードするためのソフトウェアは、CD−ROM、ディスケットまたは携帯可能に情報を格納できる他の形態の媒体に格納し、流通させることができる。これらの記憶媒体は、CD−ROMドライブ、ディスクドライブなどに挿入し、読み出すことができる。ソフトウェアは、例えばインターネットのようなネットワークを介して電子的にダウンロードされるデータ信号によって、コンピュータ装置に送信することができる。さらに、代案として、前述したように、本発明と関連する機能を実行するためのソフトウェアは、コンピュータデバイスの内部メモリ/記憶装置(例えばROM)に格納することができる。
結果として得られる、コンピュータ読取り可能なプログラムコードを有するプログラムを、1つ以上のコンピュータ使用可能な記憶装置のような媒体内または送信装置内に具現化することによって、本発明によるコンピュータプログラム製品を作製することができる。以上のように、本明細書において使用する「コンピュータ読取り可能な媒体」、「製品」、「コンピュータプログラム製品」という用語または他の類似語は、任意の記憶装置のようなコンピュータ使用可能な媒体あるいは任意の送信装置において、永久にあるいは一時的に存在するコンピュータプログラムを含むものである。
明示的に別段の定めをした場合を除き、本明細書(添付の請求の範囲、要約および図面を含む)で開示される各機能は、同一、等価、あるいは類似の目的を有する他の機能によって置換可能である。このように、明示的に別段の定めをした場合を除き、開示される各機能は一般的な一連の等価あるいは類似の機能の一例にすぎない。
本発明は、上述した特定の実施例に限定されるものとみなしてはならない。本発明を適用可能なさまざまな変更例および等価方法ならびに多数の構成が本発明の範囲に含まれる。例えば、本発明に係る、スレーブデバイスアドレスをダイナミックに変更およびデコードするための実施例は、共通バス(例えばSMBusまたは他のバス構成)上のデバイス間の通信のための、同様に構成された一方向または双方向インタフェースを使用して実現することができる。この種の変更は、添付の請求の範囲に記載されているので、本発明の特許請求の範囲の一部とみなすことができる。
本発明の実施例に係る、スレーブデバイスアドレスの変更およびデコーディングを実施するデータ通信システムのブロック図である。 本発明の実施例に係る、スレーブデバイスアドレスの変更およびデコーディングを実施するデータ通信システムのためのタイミング図の一例である。 本発明の実施例に係る、スレーブデバイスアドレスのダイナミックな変更およびデコーディングを実施するシステムのブロック図である。 本発明の実施例に係る、スレーブデバイスアドレスをダイナミックに変更およびデコードするための方法のフローチャートである。 本発明の他の実施例に係る、スレーブデバイスアドレスをダイナミックに変更およびデコードするための方法のフローチャートである。

Claims (5)

  1. 通信プロトコルを実施するためにシリアルデータラインおよびクロックラインを有するシリアルデータ転送バスを使用するデータ通信システムにおいて、スレーブデバイスがそのデバイスアドレスをデコードする方法であって、
    前記シリアルデータ転送バスのスタートコンディションに応答して、前記スレーブデバイスのアドレスピンの第1状態を検出し、前記第1状態の検出に続き、前記スレーブデバイスの前記アドレスピンの第2状態を検出し、この検出において前記アドレスピンの1つ以上のロジック値が前記第1状態と第2状態との間で相違し、前記アドレスピンの前記第1状態と前記第2状態との間の関数関係に基づいてスレーブデバイスアドレスをデコードする、
    スレーブデバイスアドレスデコード方法。
  2. 前記関数関係を使用してスタート信号を生成するステップを含む請求項1に記載の方法。
  3. 前記シリアルデータ転送バス上のマスタデバイスによる要求に応答して、前記スレーブデバイスアドレスを変更するステップを含む請求項1に記載の方法。
  4. 前記シリアルデータ転送バス上の前記マスタデバイスによる次の要求に応答して、前記スレーブデバイスアドレスを元に戻すステップを含む請求項3に記載の方法。
  5. 前記シリアルデータラインまたは前記クロックラインまたはパワーラインまたはグラウンドと関連するアドレスピンの状態を検出するステップを含む請求項1に記載の方法。
JP2008508410A 2005-04-29 2006-05-01 ダイナミックi2cスレーブデバイスアドレスデコーダ Withdrawn JP2008539499A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US67610505P 2005-04-29 2005-04-29
PCT/IB2006/051366 WO2006117753A1 (en) 2005-04-29 2006-05-01 Dynamic 12c slave device address decoder

Publications (1)

Publication Number Publication Date
JP2008539499A true JP2008539499A (ja) 2008-11-13

Family

ID=36968249

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008508410A Withdrawn JP2008539499A (ja) 2005-04-29 2006-05-01 ダイナミックi2cスレーブデバイスアドレスデコーダ

Country Status (7)

Country Link
US (1) US7788431B2 (ja)
EP (1) EP1877916B1 (ja)
JP (1) JP2008539499A (ja)
CN (1) CN101213535B (ja)
AT (1) ATE458224T1 (ja)
DE (1) DE602006012302D1 (ja)
WO (1) WO2006117753A1 (ja)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ATE495498T1 (de) 2007-02-19 2011-01-15 Nxp Bv Integrierter schaltkreis und elektronische vorrichtung
JP2010212989A (ja) 2009-03-10 2010-09-24 Freescale Semiconductor Inc アドレスデコーダ及びアドレス設定方法
US8225021B2 (en) * 2009-05-28 2012-07-17 Lexmark International, Inc. Dynamic address change for slave devices on a shared bus
US8621116B2 (en) * 2011-08-26 2013-12-31 Lexmark International, Inc. Dynamic address change optimizations
US8489786B2 (en) * 2009-11-09 2013-07-16 Stmicroelectronics International N.V. Acknowledgement management technique for supported command set of SMBUS/PMBUS slave applications
DE102010005104B3 (de) * 2010-01-20 2011-07-21 Texas Instruments Deutschland GmbH, 85356 Elektronische Vorrichtung und Verfahren für einen größeren Adressbereich auf einem IIC oder einem IIC-kompatiblen Bus
CN202372971U (zh) 2010-11-29 2012-08-08 意法半导体股份有限公司 电子设备和电子系统
US9037766B2 (en) * 2011-11-18 2015-05-19 Fairchild Semiconductor Corporation Pin selectable I2C slave addresses
US8862802B2 (en) * 2011-12-30 2014-10-14 Bedrock Automation Platforms Inc. Switch fabric having a serial communications interface and a parallel communications interface
US10834094B2 (en) 2013-08-06 2020-11-10 Bedrock Automation Platforms Inc. Operator action authentication in an industrial control system
US9467297B2 (en) 2013-08-06 2016-10-11 Bedrock Automation Platforms Inc. Industrial control system redundant communications/control modules authentication
US9600434B1 (en) 2011-12-30 2017-03-21 Bedrock Automation Platforms, Inc. Switch fabric having a serial communications interface and a parallel communications interface
US11144630B2 (en) 2011-12-30 2021-10-12 Bedrock Automation Platforms Inc. Image capture devices for a secure industrial control system
US9191203B2 (en) 2013-08-06 2015-11-17 Bedrock Automation Platforms Inc. Secure industrial control system
US10834820B2 (en) 2013-08-06 2020-11-10 Bedrock Automation Platforms Inc. Industrial control system cable
US8971072B2 (en) 2011-12-30 2015-03-03 Bedrock Automation Platforms Inc. Electromagnetic connector for an industrial control system
US11967839B2 (en) 2011-12-30 2024-04-23 Analog Devices, Inc. Electromagnetic connector for an industrial control system
US9727511B2 (en) 2011-12-30 2017-08-08 Bedrock Automation Platforms Inc. Input/output module with multi-channel switching capability
US11314854B2 (en) 2011-12-30 2022-04-26 Bedrock Automation Platforms Inc. Image capture devices for a secure industrial control system
US9437967B2 (en) 2011-12-30 2016-09-06 Bedrock Automation Platforms, Inc. Electromagnetic connector for an industrial control system
TWI493401B (zh) * 2013-01-07 2015-07-21 Quanta Comp Inc 電腦系統及其觸控及顯示資料傳輸裝置與方法
US9448960B2 (en) * 2013-03-14 2016-09-20 Linear Technology Corporation Address translation in I2C data communications system
US10613567B2 (en) 2013-08-06 2020-04-07 Bedrock Automation Platforms Inc. Secure power supply for an industrial control system
JP6359955B2 (ja) * 2014-11-13 2018-07-18 ルネサスエレクトロニクス株式会社 シリアル通信システム、通信制御装置および電子装置
US9846672B2 (en) * 2015-02-02 2017-12-19 Atmel Corporation Serial device with configuration mode for changing device behavior
CN106155964B (zh) 2015-03-31 2019-05-21 恩智浦有限公司 使用串行数据传输总线的系统中的地址解码方法与系统
US10067895B2 (en) * 2015-06-03 2018-09-04 Lexmark International, Inc. Systems and methods for asynchronous toggling of I2C data line
WO2017165906A1 (en) * 2016-03-29 2017-10-05 Xped Holdings Pty Ltd Method and apparatus for a network and device discovery
CN108768405A (zh) * 2018-05-08 2018-11-06 厦门科华恒盛股份有限公司 一种系统中各模块的地址定位装置及方法
KR20200129333A (ko) * 2019-05-08 2020-11-18 주식회사 지니틱스 I2c 통신 프로토콜을 이용하는 복수 개의 슬레이브 장치에 서로 다른 주소를 자동으로 할당하는 방법 및 이를 위한 장치
WO2020239944A1 (en) 2019-05-31 2020-12-03 Ams International Ag An inter-integrated circuit (i2c) apparatus
US10805262B1 (en) * 2019-06-10 2020-10-13 Banner Engineering Corp. Modbus system having actual and virtual slave addresses and slave sensors
CN112860609B (zh) * 2019-11-26 2024-04-26 纳恩博(常州)科技有限公司 实现i2c通讯的方法和滑板车及存储介质
KR20230066467A (ko) * 2020-09-17 2023-05-15 후아웨이 테크놀러지 컴퍼니 리미티드 인터 집적 회로를 채용하는 통신 방법 및 장치
CN112597732B (zh) * 2020-11-20 2024-03-26 南京天易合芯电子有限公司 一种通过软件配置改变iic器件地址的方法及系统
CN113032321B (zh) * 2021-05-27 2021-08-27 上海亿存芯半导体有限公司 地址扩展电路、通信接口芯片及通信系统
CN113342725A (zh) * 2021-06-09 2021-09-03 上海南芯半导体科技有限公司 一种用于i2c从机设备地址重置的方法
CN114443554B (zh) * 2022-01-21 2024-05-31 北京中科银河芯科技有限公司 一种用于i2c通信的从机地址产生方法及装置
TWI829505B (zh) * 2023-01-12 2024-01-11 旺玖科技股份有限公司 具有動態位址分配的串列通訊匯流排系統及其控制方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4404962C2 (de) * 1994-02-17 1999-12-16 Heidelberger Druckmasch Ag Verfahren und Anordnung zum Konfigurieren von Funktionseinheiten in einer Master-Slave-Anordnung
US5860028A (en) * 1996-02-01 1999-01-12 Paragon Electric Company, Inc. I/O bus expansion system wherein processor checks plurality of possible address until a response from the peripheral selected by address decoder using user input
US5878234A (en) * 1996-09-10 1999-03-02 Sierra Wireless, Inc. Low power serial protocol translator for use in multi-circuit board electronic systems
GB2326065B (en) * 1997-06-05 2002-05-29 Mentor Graphics Corp A scalable processor independent on-chip bus
US6622188B1 (en) * 1998-09-30 2003-09-16 International Business Machines Corporation 12C bus expansion apparatus and method therefor
US6510522B1 (en) * 1998-11-20 2003-01-21 Compaq Information Technologies Group, L.P. Apparatus and method for providing access security to a device coupled upon a two-wire bidirectional bus
US6255973B1 (en) * 1999-08-26 2001-07-03 Analog Devices, Inc. Address selection circuitry and method using single analog input line
US6530029B1 (en) * 1999-09-23 2003-03-04 National Semiconductor Corporation I2C/SMBus start-stop detecting circuit that reduces the likelihood of stalling the bus due to glitches on the data line
US6745270B1 (en) * 2001-01-31 2004-06-01 International Business Machines Corporation Dynamically allocating I2C addresses using self bus switching device
US6799233B1 (en) 2001-06-29 2004-09-28 Koninklijke Philips Electronics N.V. Generalized I2C slave transmitter/receiver state machine
US7085863B2 (en) * 2003-10-30 2006-08-01 International Business Machines Corporation I2C device including bus switches and programmable address
TWI305617B (en) * 2003-11-27 2009-01-21 Hon Hai Prec Ind Co Ltd Multi-channel inter integrated circuit and decode circuit therein
US20080270654A1 (en) * 2004-04-29 2008-10-30 Koninklijke Philips Electronics N.V. Bus System for Selectively Controlling a Plurality of Identical Slave Circuits Connected to the Bus and Method Therefore
US7484027B1 (en) * 2004-09-20 2009-01-27 Cypress Semiconductor Corporation Apparatus and method for configurable device pins
DE602006012822D1 (de) * 2005-04-29 2010-04-22 Nxp Bv Kommunikationssystem und -verfahren mit einer slave-einrichtung mit zwischengespeicherter service-anforderung
US7587539B2 (en) * 2006-04-25 2009-09-08 Texas Instruments Incorporated Methods of inter-integrated circuit addressing and devices for performing the same
US7739435B2 (en) * 2006-12-29 2010-06-15 Texas Instruments Incorporated System and method for enhancing I2C bus data rate

Also Published As

Publication number Publication date
WO2006117753A1 (en) 2006-11-09
EP1877916B1 (en) 2010-02-17
CN101213535A (zh) 2008-07-02
DE602006012302D1 (de) 2010-04-01
ATE458224T1 (de) 2010-03-15
US20080147941A1 (en) 2008-06-19
EP1877916A1 (en) 2008-01-16
US7788431B2 (en) 2010-08-31
CN101213535B (zh) 2011-11-30

Similar Documents

Publication Publication Date Title
JP2008539499A (ja) ダイナミックi2cスレーブデバイスアドレスデコーダ
JP2008539498A (ja) 単一のi2cデータストリームからの並列i2cスレーブデバイスのプログラミング
EP1877911B1 (en) I2c slave/master interface enhancement using state machines
CN104811273B (zh) 一种高速单总线通信的实现方法
TWI636367B (zh) 用於多個主機匯流排協定的方法與裝置
US6799233B1 (en) Generalized I2C slave transmitter/receiver state machine
US20080201511A1 (en) Device Identification Coding of Inter-Integrated Circuit Slave Devices
JP2008539496A (ja) I2cスレーブ装置の複数のi/oバンクの同時制御
EP1877913B1 (en) Communications system and method having slave device with latched request for service
JP2008539644A (ja) プログラマブル書込みトランザクションサイクルを有するi2cスレーブ装置
JP2016004388A (ja) 通信システム及び電子回路

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20081015

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20081014

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20081106

A761 Written withdrawal of application

Free format text: JAPANESE INTERMEDIATE CODE: A761

Effective date: 20090901