(57)【要約】  シリアル半二重スタート／ストップイベント検出回路は、シリアルクロック入力を入力として取り込みストップイベントを示すストップ信号出力を生成する、シリアルデータ入力をクロック源とするストップ検出フリップフロップ（ＦＦ）を備える。シリアルデータ入力の反転コピーをクロック源とするスタート検出ＦＦは、シリアルクロック入力を入力として取り込み、スタートイベントを示すスタート信号出力を生成する。シリアルクロック入力の反転コピーをクロック源とする第１バッファＦＦは、スタート信号出力を入力として取り込み、第１遅延スタート信号出力を生成する。同様に、シリアルクロック入力をクロック源とする第２バッファＦＦは、第１遅延スタート信号出力を入力として取り込み、第２遅延スタート信号出力を生成する。第２遅延スタート信号出力は、前述のストップ検出ＦＦ、スタート検出ＦＦ、第１バッファＦＦのうちの少なくとも一つをリセットする。【選択図】図２
2018514873.tif 000002
【特許請求の範囲】
【請求項１】
シリアル半二重スタート／ストップイベント検出回路であって、
シリアルデータ入力と、
シリアルクロック入力と、
ストップデータ入力としての前記シリアルクロック入力を取り込むと、ストップイベントが検出されたことを示すストップ信号出力を生成する、前記シリアルデータ入力をクロック源とするストップ検出フリップフロップと、
スタートデータ入力としての前記シリアルクロック入力を取り込むと、スタートイベントが検出されたことを示すスタート信号出力を生成する、前記シリアルデータ入力の反転コピーをクロック源とするスタート検出フリップフロップと、
第１バッファデータ入力としての前記スタート信号出力を取り込むと、第１遅延スタート信号出力を生成する、前記シリアルクロック入力の反転コピーをクロック源とする第１バッファフリップフロップと、
第２バッファデータ入力としての前記第１遅延スタート信号出力を取り込むと、第２遅延スタート信号出力を生成する、前記シリアルクロック入力をクロック源とする第２バッファフリップフロップと、を備え、
前記第２遅延スタート信号出力は、前記ストップ検出フリップフロップ、前記スタート検出フリップフロップ、または前記第１バッファフリップフロップのうちの少なくとも一つをリセットするように構成される
ことを特徴とするシリアル半二重スタート／ストップイベント検出回路。
【請求項２】
前記スタート信号出力は、前記シリアルクロック信号がハイであるとともに前記シリアルデータ信号が論理ハイから論理ローへ遷移すると、論理ハイに設定される
ことを特徴とする、請求項１に記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項３】
前記ストップ信号出力は、前記シリアルクロック信号がハイであるとともに前記シリアルデータ信号が論理ローから論理ハイへ遷移すると、論理ハイに設定される
ことを特徴とする、請求項１または請求項２に記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項４】
前記第１バッファフリップフロップおよび前記第２バッファフリップフロップは、シフトレジスタとして構成される
ことを特徴とする、請求項１乃至請求項３のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項５】
前記第２遅延スタート信号出力が前記スタート検出フリップフロップをリセットする
ことを特徴とする、請求項１乃至請求項４のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項６】
前記第１遅延スタート信号出力が前記ストップ検出フリップフロップをリセットする
ことを特徴とする、請求項１乃至請求項５のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項７】
前記ストップ信号出力が前記第２バッファフリップフロップをリセットする
ことを特徴とする、請求項１乃至請求項６のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項８】
非同期リセット信号入力は、前記したフリップフロップのうちの少なくとも１つをリセットする
ことを特徴とする、請求項１乃至請求項７のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項９】
前記スタート検出フリップフロップの非同期リセット入力に接続される出力と、それぞれ前記非同期リセット信号入力および前記第２遅延スタート信号出力に接続される二つの入力とを有する、スタートリセットＯＲゲートを備える
ことを特徴とする、請求項１乃至請求項８のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項１０】
前記ストップ検出フリップフロップの非同期リセット入力と、それぞれ前記非同期リセット信号入力および前記第１の遅延したスタート信号出力に接続される二つの入力と、に接続されるストップリセットＯＲゲートを備える
ことを特徴とする、請求項１乃至請求項９のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項１１】
前記第２バッファフリップフロップの非同期リセット入力と、それぞれ前記非同期リセット信号入力および前記ストップ信号出力に接続される二つの入力と、に接続される第２バッファリセットＯＲゲートを備える
ことを特徴とする、請求項１乃至請求項１０のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項１２】
前記非同期リセット信号入力は、前記第１バッファフリップフロップの非同期リセット入力に直接接続される
ことを特徴とする、請求項１乃至請求項１１のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項１３】
前記シリアル半二重スタート／ストップイベント検出回路は、非同期リセット信号出力を生成する
ことを特徴とする、請求項１乃至請求項１２のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項１４】
前記非同期リセット信号出力は、前記ストップ信号出力および／または前記非同期リセット信号入力が論理ハイであると、論理ハイに設定される
ことを特徴とする、請求項１乃至請求項１３のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項１５】
前記非同期リセット信号出力は、前記スタート信号出力が論理ハイであるとともに前記第１遅延スタート信号出力が論理ローであると、論理ハイに設定される
ことを特徴とする、請求項１乃至請求項１４のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項１６】
インター・インテグレーテッド・サーキットデバイスに実装される
ことを特徴とする、請求項１乃至請求項１５のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項１７】
システム管理バスデバイスに実装される
ことを特徴とする、請求項１乃至請求項１６のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【請求項１８】
バッテリ駆動のデバイス内に実装される
ことを特徴とする、請求項１乃至請求項１７のいずれかに記載のシリアル半二重スタート／ストップイベント検出回路。
【発明の詳細な説明】
【技術分野】
【０００１】
通称ＩＩＣ、Ｉ2Ｃ、またはＩ２Ｃと呼ばれるインター・インテグレーテッド・サーキット（Ｉｎｔｅｒ−Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）は、Ｐｈｉｌｉｐｓ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒ（現在はＮＸＰ  Ｓｅｍｉｃｏｎｄｕｃｔｏｒｓ）によって開発された、普及し定評のあるシリアルコンピュータバスであり、複数の低速な集積回路を互いに接続するのに用いられる。前述した複数の集積回路は、同じ回路基板上の単一の回路内に存在する場合もあれば、ケーブルを介して接続される場合もある。ＩＩＣの主な特徴は、回路設計を比較的単純に保ちつつ、マルチマスタ、マルチスレーブの、シングルエンド通信を提供することである。
【０００２】
ＩＩＣは、シリアル半二重通信を提供する、すなわち、一度に１ビットずつバスのいずれの方向にも送信できるが、しかし任意の所与の時点では１方向にのみ送信される。ＩＩＣバスが必要とするのは、２本の双方向ライン、すなわち、シリアルデータライン（ＳＤＡ）とシリアルクロックライン（ＳＣＬ）だけである。ＳＤＡとＳＣＬの両方とも、オープンドレインであり、プルアップ抵抗を用いて論理ハイの基準電圧（通常＋３．３Ｖまたは＋５．０Ｖ）に引き上げられる。
【０００３】
ＩＩＣバスでは、ノード（すなわち、バスの両端にある端子接続部）は、スレーブまたはマスタのいずれとしても動作することができる。当該バスはマルチマスタおよびマルチスレーブに対応するので、任意の所与の時点で任意の数のマスタノードおよびスレーブノードが存在してもよく、これらの役割は動作中に変化することがある。
【０００４】
メッセージ（以下、トランザクションと呼ぶ）をマスタからスレーブに送信するために、マスタは、最初に特別な「ＳＴＡＲＴ」ビットシーケンスを送信する。所望のデータが送信された後で、マスタは、特別な「ＳＴＯＰ」ビットシーケンスを送信する。受信側のＩＩＣスレーブがこれらのＳＴＡＲＴ／ＳＴＯＰビットシーケンスを正確に検出できることが重要である。
【０００５】
ＩＩＣプロトコル内では、ＳＴＡＲＴビットシーケンスは、シリアルクロックラインが論理ハイの状態でシリアルデータラインが負の遷移（すなわち、論理ハイから論理ローへ）をするときに生じる。対照的に、ＳＴＯＰビットシーケンスは、シリアルクロックラインが論理ハイの状態でシリアルデータラインが正の遷移（すなわち、論理ローから論理ハイへ）をするときに生じる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
従来のＩＩＣバス実装は、ＳＤＡラインおよびＳＣＬラインをポーリングするサンプリング機構を使用して、ＳＴＡＲＴビットシーケンスまたはＳＴＯＰビットシーケンスがいつ送信されたかを検出し、それに応じてトランザクションの始まりおよび終わりを判定する。しかしながら、これらのシーケンスを正確に判定するためには、ＳＤＡラインおよびＳＣＬラインを比較的高周波数（普通はデータ転送速度の二倍）でサンプリングする必要がある。このような高周波数でＳＤＡおよびＳＣＬをサンプリングするには、高周波数のサンプリングクロックが必要となり、不必要にデバイスの所要電力を増加させる。
【０００７】
この問題を回避する複数の対策が当技術分野でなされてきており、その一例として米国特許第６，５３０，０２９号には、ＳＴＡＲＴビットシーケンスまたはＳＴＯＰビットシーケンスがいつ受信されたかを判定できる検出回路をＩＩＣデバイスに追加し別個のサンプリングクロックの必要性をなくすことで回避する対策が説明されている。しかし、前述の検出回路は、複数のフリップフロップが自らの入力をリセットするなどの「安全でない構成」を含み、誤作動および誤検出につながることがある。さらに、米国特許第６，５３０，０２９号で提案された解決策は、複数のセット・リセット（ＳＲ）フリップフロップを必要とするので、セット入力およびリセット入力の両方を複数有することに関係する複雑さのため実行中に諸問題を発生させ得る。
【課題を解決するための手段】
【０００８】
第１の態様から見ると、本発明は、シリアル半二重スタート／ストップイベント検出回路であって、
シリアルデータ入力と、
シリアルクロック入力と、
ストップデータ入力としての前記シリアルクロック入力を取り込むと、ストップイベントが検出されたことを示すストップ信号出力を生成する、前記シリアルデータ入力をクロック源とするストップ検出フリップフロップと、
スタートデータ入力としての前記シリアルクロック入力を取り込むと、スタートイベントが検出されたことを示すスタート信号出力を生成する、前記シリアルデータ入力の反転コピーをクロック源とするスタート検出フリップフロップと、
第１バッファデータ入力としての前記スタート信号出力を取り込むと、第１遅延スタート信号出力を生成する、前記シリアルクロック入力の反転コピーをクロック源とする第１バッファフリップフロップと、
第２バッファデータ入力としての前記第１遅延スタート信号出力を取り込むと、第２遅延スタート信号出力を生成する、前記シリアルクロック入力をクロック源とする第２バッファフリップフロップと、を備え、
前記第２遅延スタート信号出力は、前記ストップ検出フリップフロップ、前記スタート検出フリップフロップ、または前記第１バッファフリップフロップのうちの少なくとも一つをリセットするように構成される、シリアル半二重スタート／ストップイベント検出回路を提供する。
【０００９】
出願人は、従来のシリアル半二重スタート／ストップイベント検出回路実装に比べてかなりの電力節減をもたらすだけでなく、誤作動が生じないことと、どの時点においてもスタートコンディションまたはストップコンディションなどのイベントが１つだけ存在できることを保証する「安全な構成」だけを用いる解決策を知るに至った。
【００１０】
したがって、本発明は、専用のサンプリングクロックを必要とせずにスタートイベントおよびストップイベントを検出するための安定した方法およびデバイスを提供することが当業者は理解するであろう。スタート検出フリップフロップおよびストップ検出フリップフロップは、シリアルクロックラインを自らへのデータ入力とみなし、シリアルデータラインをクロック源として用いる。これにより、スタートイベントまたはストップイベントはシリアルクロックが論理ハイのときにのみ検出されることと、シリアルデータラインはそれぞれ負の遷移または正の遷移をすることが保証される。
【００１１】
バスの問題が発生しても回路が自己回復するので、ダウンタイムを最小に抑え当該バスが動作しなくなるのを防ぐことも、当業者は理解するであろう。
【００１２】
バス上の誤作動は、特にマルチマスタ構成で問題を生じることがあり、ある一つのマスタから送信されたと以前に判定されたスタートイベントまたはストップイベントが、もう一つのマスタから発生する誤作動によって無効にされる場合がある。出願人は、任意の所与のフリップフロップとこれがリセットするフリップフロップとの間に少なくとも一つの追加のフリップフロップが存在することを保証することによって、どのフリップフロップもそれ自身のデータソースをリセットせず、シリアル半二重スタート／ストップイベント検出回路が安定しており、バス上の誤作動の後に自己回復することを知るに至った。
【００１３】
いくつかの実施形態群において、スタート信号出力は、シリアルクロック信号がハイであるとともにシリアルデータ信号が論理ハイから論理ローへ遷移すると、論理ハイに設定される。いくつかの実施形態群において、ストップ信号出力は、シリアルクロック信号がハイであるとともにシリアルデータ信号が論理ローから論理ハイへ遷移すると、論理ハイに設定される。
【００１４】
いくつかの実施形態群において、第１バッファフリップフロップおよび第２バッファフリップフロップは、シフトレジスタとして構成される。
【００１５】
いくつかのシリアル半二重通信プロトコルでは、ストップイベントを介在せずに複数のスタートイベントが生じる可能性がある。これは、反復スタートイベントまたは再スタートイベントとして知られている。通常、シリアルデータラインは確定的ではない（すなわち、次の信号遷移がいつ生じるかを事前に知ることは不可能である）ことから、いつ次の遷移が生じてスタート検出フリップフロップ（すなわち、シリアルクロックライン）の入力が出力側に渡されるのかを知る手立ては存在しない。出願人は、再スタートイベントを検出できるようにするために、シリアルクロックラインをクロック源とする発信元を用いてスタート検出フリップフロップをリセットすることが有利であることを知るに至った。したがって、いくつかの実施形態群において、第２遅延スタート信号出力がスタート検出フリップフロップをリセットする。
【００１６】
これに加えるかこれに代えて、第１遅延スタート信号出力がストップ検出フリップフロップをリセットする。いくつかの重複する実施形態群において、ストップ信号出力が第２バッファフリップフロップをリセットする。
【００１７】
したがって、上記で概説した実施形態において、内部信号を用いて、スタートビットシーケンスまたはストップビットシーケンスが検出されるたびに検出回路をリセットできることが理解されるであろう。これに加えるかこれに代えて、いくつかの実施形態群において、非同期リセット信号入力が、シリアル半二重スタート／ストップイベント検出回路内の少なくとも一つのフリップフロップをリセットする。この有利な構成によって、検出回路全体を外部トリガによってリセットできる追加のリセット機構が提供される。いくつかの別の実施形態群において、スタート検出フリップフロップの非同期リセット入力は、非同期リセット信号入力および第２遅延スタート信号出力を入力として取り込むスタートリセットＯＲゲートに接続される。これに加えるかこれに代えて、いくつかの実施形態群において、ストップ検出フリップフロップの非同期リセット入力は、非同期リセット信号入力および第１遅延スタート信号出力を入力として取り込むストップリセットＯＲゲートに接続される。これに加えるかこれに代えて、いくつかの実施形態群において、第２バッファフリップフロップの非同期リセット入力は、非同期リセット信号入力およびストップ信号出力を入力として取り込む第２バッファリセットＯＲゲートに接続される。これに加えるかこれに代えて、いくつかの実施形態群において、非同期リセット信号入力は、第１バッファフリップフロップの非同期リセット入力に直接接続される。
【００１８】
いくつかの実施形態群において、シリアル半二重スタート／ストップイベント検出回路は、ＩＩＣデバイスに実装される。これらの実施形態では、上記のスタート信号およびストップ信号は、ＩＩＣプロトコル内で定義されるＳＴＡＲＴ信号およびＳＴＯＰ信号にそれぞれ対応する。本発明はＩＩＣとの広い類似性があるので、システム管理バス（ＳＭＢｕｓ）プロトコルにも適用可能であることが当業者に理解されよう。
【００１９】
シリアル半二重スタート／ストップイベント検出回路は、ＩＩＣスレーブデバイスなどのシリアル半二重通信デバイスを実装するのに必要なスタート信号出力およびストップ信号出力を提供する自立モジュールとして存在してもよい。しかしながら、いくつかの実施形態群において、シリアル半二重スタート／ストップイベント検出回路は、非同期リセット信号出力を生成する。この追加の出力によって、当該検出回路は、シリアル半二重通信デバイスの残りの部分内にある外部回路のリセットをトリガすることができる。いくつかの実施形態群において、非同期リセット信号出力は、ストップ信号出力および／または非同期リセット信号入力が論理ハイであると、論理ハイに設定される。これに加えるかこれに代えて、非同期リセット信号出力は、スタート信号出力が論理ハイであるとともに第１遅延スタート信号出力が論理ローであると、論理ハイに設定される。
【００２０】
いくつかの実施形態群において、シリアル半二重スタート／ストップイベント検出回路は、バッテリ駆動のデバイス内に実装される。
【００２１】
次に、ほんの一例として、添付図を参照しながら本発明の実施形態を説明する。
【図面の簡単な説明】
【００２２】
【図１】ＩＩＣを介して通信するように構成された二つの集積回路のブロック図である。
【図２】本発明に係るＩＩＣ  ＳＴＡＲＴ／ＳＴＯＰ検出回路の回路図である。
【図３】図２に示されたＩＩＣ  ＳＴＡＲＴ／ＳＴＯＰ検出回路の典型的な信号のタイミング図である。
【発明を実施するための形態】
【００２３】
図１は、ＩＩＣを介して通信するように構成された二つの集積回路のブロック図を示す。ＩＩＣマスタデバイス１００およびＩＩＣスレーブデバイス１０２は、シリアルクロックライン４およびシリアルデータライン６からなる２線式インターフェースを共有するように構成される。データは、シリアルデータライン６を介していずれの方向にも送信できるが、一度に１方向にしか送信できない、すなわち、マスタデバイス１００とスレーブデバイス１０２との間でシリアル半二重通信を行う。
【００２４】
図２は、本発明に係るシリアル半二重スタート／ストップイベント検出回路の回路図を示しており、ここでは図１のＩＩＣスレーブデバイス１０２内のＩＩＣ  ＳＴＡＲＴ／ＳＴＯＰ検出回路２として実装される。検出回路２は、ＩＩＣプロトコルに従って、シリアルクロックライン４およびシリアルデータライン６を備える。検出回路２は、四つのフリップフロップ、すなわち、ＳＴＯＰ検出フリップフロップ１８、ＳＴＡＲＴ検出フリップフロップ２０、第１バッファフリップフロップ２２、および第２バッファフリップフロップ２４を備える。
【００２５】
ＳＴＯＰ検出フリップフロップ１８は、データ入力１８ａがシリアルクロックライン４に接続され、クロック入力１８ｂがシリアルデータライン６に接続されて、出力１８ｃからＳＴＯＰ信号出力１０をもたらすように構成される。
【００２６】
ＳＴＡＲＴ検出フリップフロップ２０は、データ入力２０ａがシリアルクロックライン４に接続され、クロック入力２０ｂが反転器を介してシリアルデータライン６の反転コピーを生成するように接続されて、出力２０ｃからＳＴＡＲＴ信号出力１２をもたらすように構成される。
【００２７】
第１バッファフリップフロップ２２は、データ入力２２ａがＳＴＡＲＴ検出フリップフロップ２０の出力２０ｃに接続され、クロック入力２２ｂが反転器に接続されてシリアルクロックライン４の反転コピーを生成して、出力２２ｃから第１遅延ＳＴＡＲＴ信号出力であるＳＴＡＲＴ＿Ｄ１  １４をもたらすように構成される。
【００２８】
第２バッファフリップフロップ２４は、データ入力２４ａが第１バッファフリップフロップ２２の出力２４ｃに接続され、クロック入力２４ｂがシリアルクロックライン４に接続されて、出力２４ｃから第２遅延ＳＴＡＲＴ信号出力であるＳＴＡＲＴ＿Ｄ２  １７をもたらすように構成される。
【００２９】
非同期リセット信号入力８も、ＩＩＣ  ＳＴＡＲＴ／ＳＴＯＰ検出回路２に供給され、後述するように四つのフリップフロップ１８、２０、２２、２４の各々をリセットするのに用いることができる。
【００３０】
ＳＴＯＰ検出フリップフロップ１８の非同期リセット入力１８ｄが、非同期リセット信号入力８およびＳＴＡＲＴ＿Ｄ１  １４を入力として取り込むＯＲゲート２６に接続されるので、ＳＴＯＰ検出フリップフロップ１８は、第１遅延ＳＴＡＲＴ信号出力１４および／または非同期リセット信号入力８が論理ハイに設定されるとリセットされる。
【００３１】
ＳＴＡＲＴ検出フリップフロップ２０の非同期リセット入力２０ｄが、非同期リセット信号入力８およびＳＴＡＲＴ＿Ｄ２  １７を入力として取り込むＯＲゲート３４に接続されるので、ＳＴＡＲＴ検出フリップフロップ２０は、第２遅延ＳＴＡＲＴ信号出力および／または非同期リセット信号入力が論理ハイに設定されるとリセットされる。
【００３２】
第１バッファフリップフロップ２の非同期リセット入力２２ｄが、非同期リセット信号入力８に直接接続されるので、第１バッファフリップフロップ２２は、非同期リセット信号入力が論理ハイに設定されるとリセットされる。
【００３３】
第２バッファフリップフロップ２４の非同期リセット入力２４ｄが、非同期リセット信号入力８およびＳＴＯＰ１０を入力として取り込むＯＲゲート３６に接続されるので、第２バッファフリップフロップ２４は、ＳＴＯＰ信号出力および／または非同期リセット信号入力が論理ハイに設定されるとリセットされる。
【００３４】
第１遅延ＳＴＡＲＴ信号出力１４は、ＮＯＴゲート２８にも接続され、ＮＯＴゲート２８は、ＳＴＡＲＴ＿Ｄ１  １４を、入力としてＡＮＤゲート３０に渡す前に反転させる。ＡＮＤゲート３０は、ＳＴＡＲＴ信号出力１２も取り込んで、ＯＲゲート３２への入力として渡される出力を生成する。ＯＲゲート３２は、ＯＲゲート３６によって生成された信号（すなわち、非同期リセット信号入力８およびＳＴＯＰ信号出力１０に対して行われる論理ＯＲ動作の結果）も取り込む。このＯＲゲート３２の出力は、ＩＩＣデバイスの他の部分をリセットするために外部回路に渡すことができる非同期リセット信号出力１６である。
【００３５】
図３は、図２に示されたＩＩＣ  ＳＴＡＲＴ／ＳＴＯＰ検出回路２が動作中の典型的な信号のタイミング図を示す。上から下に示されるのは、非同期リセット入力信号ＡＲＳＴ８、シリアルクロックラインＳＣＬ４、シリアルデータラインＳＤＡ６、非同期リセット出力信号ＡＲＳＴ＿ＳＣＬ１６、第１遅延ＳＴＡＲＴ出力信号ＳＴＡＲＴ＿Ｄ１  １４、第２遅延ＳＴＡＲＴ出力信号ＳＴＡＲＴ＿Ｄ２  １７、ＳＴＡＲＴ出力信号１２、およびＳＴＯＰ出力信号１０のそれぞれのトレースである。
【００３６】
最初の時点５０で、非同期リセット入力信号ＡＲＳＴ８が論理ハイから論理ローへ設定され、ＩＩＣ  ＳＴＡＲＴ／ＳＴＯＰ検出回路２が正常に動作できるようになる。非同期リセット出力信号ＡＲＳＴ＿ＳＣＬ１６は、ＯＲゲート３２、３６を介してＡＲＳＴ８に依存し、ＯＲゲート３２、３６への他の入力がローなので、この時点で負の遷移をする。
【００３７】
その後の時点５２で、シリアルクロックラインＳＣＬ４が論理ハイの状態で負の遷移としてシリアルデータラインＳＤＡ６上に伝送されるＳＴＡＲＴ信号が、ＩＩＣバス上に送信される。ＳＤＡ６のこの立ち下りエッジは、ＳＴＡＲＴ検出フリップフロップ２０のクロック入力の立ち上がりエッジ（反転器に起因する）として現れるので、ＳＣＬ４からのデータ入力２０ａ上の論理ハイが出力２０ｃに渡され、これが次にＳＴＡＲＴ出力信号１２となる。当該回路がこうしてＳＴＡＲＴイベントを検出すると、スレーブデバイス１０２の残りの部分は、これを受けて、当該デバイスがＩＩＣバス上でデータを受信し始めるべきであることを知らされる。ＳＴＡＲＴ＿Ｄ１はこの時点で論理ローであるので、ＡＮＤゲート３０は論理ハイ出力を生成し、これが次にＯＲゲート３２を介してＡＲＳＴ＿ＳＣＬ１６をハイに駆動する。
【００３８】
その後すぐに、時点５４で、シリアルクロックラインＳＣＬ４が負の遷移をする。これは、反転によって第１バッファフリップフロップ２２のクロック入力２２ｂ上で立ち上がりエッジとして取り込まれる。これにより、第１バッファフリップフロップ２２は、ＳＴＡＲＴ出力信号１２上の論理ハイを、データ入力２２ａから出力２２ｃへＳＴＡＲＴ＿Ｄ１  １４として渡す。ＳＴＡＲＴ＿Ｄ１  １４がこのとき論理ハイであるので、反転器２８は論理ローを生成し、これにより、ＡＮＤゲート３０の出力が論理ローに降下する。この時点でＯＲゲート３２のどの他の入力も論理ハイに設定されていないので、ＡＲＳＴ＿ＳＣＬ１６も論理ローに降下する。ＳＴＯＰ出力信号１０が既に論理ローであるので、結果的に生じるＯＲゲート２６からの論理ハイ出力は変化をもたらさない。
【００３９】
その後の時点５６で、シリアルクロックラインＳＣＬ４の次の立ち上がりエッジが生じ、これが第２バッファフリップフロップ２４へのクロック入力２４ｂとなるので、第２バッファフリップフロップ２４は、ＳＴＡＲＴ＿Ｄ１  １４上の論理ハイを、データ入力２４ａから出力２４ｃにＳＴＡＲＴ＿Ｄ２  １７として渡す。このときＯＲゲート３４は、ＳＴＡＲＴ＿Ｄ２  １７へのその依存性に起因して論理ハイ出力を生成する。ＯＲゲート３４の出力がリセット入力２０ｄに接続されるので、ＳＴＡＲＴ検出フリップフロップ２０がリセットされ、ＳＴＡＲＴ出力信号１２は論理ローに降下する。
【００４０】
時点５８で、シリアルクロックラインＳＣＬ４が再び論理ローに降下し立ち下がりエッジを生じるが、第１バッファフリップフロップ２２からは立ち上がりエッジとして見られる。次いで、第１バッファフリップフロップ２２が、論理ロー（この時点でＳＴＡＲＴ１２は論理ローであるため）を入力２２ａから出力２２ｃに渡すことによって、ＳＴＡＲＴ＿Ｄ１  １４は負の遷移をする。
【００４１】
その後の時点６０で、シリアルクロックラインＳＣＬ４が論理ハイに上昇し、第２バッファフリップフロップ２４をクロックする立ち上がりエッジを生成する。次いで、第２バッファフリップフロップ２４が、論理ロー（この時点でＳＴＡＲＴ＿Ｄ１  １４は論理ローであるので）を入力２４ａから出力２４ｃに渡すことによって、ＳＴＡＲＴ＿Ｄ２  １７は負の遷移をする。
【００４２】
関連データがＩＩＣバスを介して送信された後に、時点６２で、シリアルクロックラインＳＣＬ４が論理ハイに保たれた状態でシリアルデータラインＳＤＡ６が正の遷移をし、ＳＴＯＰイベントを知らせる。ＳＴＯＰ検出フリップフロップ１８が、（ＳＣＬ４からの）論理ハイをデータ入力１８ａから出力１８ｃに渡すことによって、ＳＴＯＰ出力信号１０に正の遷移をさせる。また、ＯＲゲート３６およびＯＲゲート３２によって形成される組合せ論理回路によって、非同期出力信号ＡＲＳＴ＿ＳＣＬ１６も正の遷移をする。
【００４３】
その後すぐに、時点６４で、シリアルクロックラインＳＣＬ４が論理ハイに保たれたままの状態で、シリアルデータラインＳＤＡ６は負の遷移をする。これによって、次のトランザクションの前に伝送されるＳＴＡＲＴ信号を知らせる。前述のように、ＳＴＡＲＴ検出フリップフロップ２０は、論理ハイをデータ入力２０ａから出力２０ｃに渡すことによって、ＳＴＡＲＴ出力信号１２を論理ハイに駆動する。
【００４４】
すぐ後に、シリアルクロックラインＳＣＬ４の次の立ち下がりエッジも時点６６で、ＳＴＡＲＴ＿Ｄ１  １４が追従し、また正の遷移をする。ＳＴＡＲＴ＿Ｄ１  １４上の論理ハイがＯＲゲート２６の出力を論理ハイに駆動し、これがＳＴＯＰ検出フリップフロップ１８をリセットすることによって、ＳＴＯＰ出力信号１０は論理ローとなる。
【００４５】
したがって、どのフリップフロップもそれ自身のデータソースをリセットしないことを保証するためにバッファフリップフロップを用いることによって達成される、安全な構成だけを含むシリアル半二重スタート／ストップイベント検出回路が説明されていることが分かるであろう。特定の実施形態を詳細に説明してきたが、本発明の範囲内で多くの変異および変形が可能である。
【図１】
2018514873.tif 000003
【図２】
2018514873.tif 000004
【図３】
2018514873.tif 000005
【国際調査報告】
2018514873.tif 000006
2018514873.tif 000007