(57)【特許請求の範囲】
【請求項１】
マスタ装置とスレーブ装置との間でクロック、データ、および前記スレーブ装置の選択信号を用いて第１のプロトコルに基づく通信を行う第１のモードと、前記マスタ装置と前記スレーブ装置との間でクロックおよびデータを用いて第２のプロトコルに基づく通信を行う第２のモードと、を切り換えるインターフェース回路であって、
前記クロックがハイレベルであり、かつ前記データがハイレベルからローレベルに変化する状態を判定し、判定信号を生成する判定手段と、
前記第１のプロトコルに使用される所定の信号の変化を検出し、前記第１のプロトコル動作であることを検出した時には動作検出信号を生成する動作検出手段と、
前記動作検出信号が生成された時には、前記判定信号の生成にかかわらず、前記第２のモードでのデータの送受を制限する信号を生成する制限手段と、
を備えることを特徴とするインターフェース回路。
【請求項２】
前記動作検出手段は、
前記クロックを計数し、当該計数に基づいて前記第１のプロトコルに使用される所定の信号を生成するカウンタを備えることを特徴とする請求項１に記載のインターフェース回路。
【請求項３】
前記動作検出手段は、
前記第１のプロトコルに使用される信号をトリガーとして前記動作検出信号を生成するフリップフロップを備えることを特徴とする請求項１または請求項２に記載のインターフェース回路。
【請求項４】
インターフェース回路を備えた電子装置であって、
前記インターフェース回路は、請求項１乃至請求項３のうちの何れか１項に記載のインターフェース回路であることを特徴とする電子装置。
【請求項５】
マスタ装置とスレーブ装置との間でクロック、データ、および前記スレーブ装置の選択信号を用いて第１のプロトコルに基づく通信を行う第１のモードと、前記マスタ装置と前記スレーブ装置との間でクロックおよびデータを用いて第２のプロトコルに基づく通信を行う第２のモードと、を切り換える方法であって、
前記選択信号のハイレベルからローレベルへの遷移の有無を検出する第１のステップと、
前記第１のステップにおいて、前記選択信号のハイレベルからローレベルへの遷移があると検出された場合に、前記第２のモードによる動作を制限する制限フラグを設定し、前記スレーブ装置が前記第１のモードで動作を実行し、実行の終了後に前記第１のステップに戻る第２のステップと、
前記第１のステップにおいて、前記選択信号のハイレベルからローレベルへの遷移がないと検出された場合に、前記データの転送開始の遷移の有無を判定する第３のステップと、
前記第３のステップにおいて、前記データの転送開始の遷移があると判定された場合には、前記制限フラグの設定の有無を判定し、前記制限フラグの設定があると判定された場合には、前記第１のステップに戻り、前記制限フラグの設定がないと判定された場合には、前記スレーブ装置が前記第２のモードで動作を実行し、実行の終了後に前記第１のステップに戻る第４のステップと、
を備えることを特徴とするプロトコルの切り換え方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、各種の電子装置で使用される２種類の標準プロトコルを自動的に切り換える機能を有するインターフェース回路などに関する。
【背景技術】
【０００２】
図５は、モトローラ社によって開発された汎用のＳＰＩインターフェースを用いて、マスタ装置（図示せず）との間でシリアル通信ができるスレーブ装置である電子装置１００のブロック図である。
このスレーブ装置１００は、図５に示すように、選択信号線１０２、クロック線１０６、およびデータ線１０４と接続されるようになっている。選択信号線１０２には、マスタ装置からスレーブ装置１００を選択するための選択信号ＣＳＢが供給される。クロック線１０６には、マスタ装置からシリアルクロックＳＣＬが供給される。データ線１０４は、マスタ装置との間で双方向の通信をするときに、データＳＤＡの授受に使用される。
【０００３】
このような構成のスレーブ装置１００では、図６に示すようなタイミングで通信が行われる。すなわち、選択信号ＣＳＢが「ハイレベル」から「ローレベル」に遷移後に、クロックＳＣＬに同期してデータＳＤＡが供給される。
図７は、フィリップス社によって開発された汎用のＩ２Ｃインターフェースを用いて、マスタ装置（図示せず）との間で双方向の通信を行うことができるスレーブ装置である電子装置３００のブロック図である。
【０００４】
このスレーブ装置３００は、図７に示すように、クロック線３０４およびデータ線３０２からなる双方向バスと接続されるようになっている。クロック線３０４には、マスタ装置からシリアルクロックＳＣＬが供給される。データ線３０２は、マスタ装置との間で双方向の通信をするときに、データＳＤＡの授受に使用される。
このような構成のスレーブ装置３００では、図８に示すようなタイミングで通信が行われる。
【０００５】
すなわち、この通信では、通信開始はデータ転送開始「ＳＴＡＲＴ」、その終了はデータ転送終了「ＳＴＯＰ」という固有の状態が発生する。そして、データ転送開始「ＳＴＡＲＴ」は、クロックＳＣＬが「ハイレベル」でデータＳＤＡが「ハイレベル」から「ローレベル」への遷移である。一方、データ転送終了「ＳＴＯＰ」は、クロックＳＣＬが「ハイレベル」でデータＳＤＡが「ローレベル」から「ハイレベル」への遷移である。データ転送開始「ＳＴＡＲＴ」後に、クロックＳＣＬに同期してデータＳＤＡが供給される。
【０００６】
ここで、ＳＰＩインターフェースとＩ２Ｃインターフェースの両方の機能を持ち、これらを自動的に切り換える電子装置、およびその機能の自動切り換え方法が知られている（例えば、特許文献１参照）。
図９は、特許文献１に記載された、従来のインターフェース・プロトコルを自動的に切り換える電子装置のブロック図である。
この電子装置５００は、選択信号線５０２、クロック線５０６、およびデータ線５０４と接続されるようになっている。
【０００７】
選択信号線５０２には、マスタ装置からスレーブ装置である電子装置５００を選択するための選択信号ＣＳＢが供給される。クロック線５０６には、マスタ装置からクロックＳＣＬが供給される。データ線５０４は、マスタ装置との間で双方向の通信をするときに、データＳＤＡの授受に使用される。
このような電子装置５００では、選択信号ＣＳＢの極性、言い換えると選択信号ＣＳＢのレベルで、ＳＰＩインターフェースとＩ２Ｃインターフェースの機能を自動的に切り換えるように構成されている。すなわち、選択信号ＣＳＢが「ローレベル」ではＳＰＩインターフェースが選択され、選択信号ＣＳＢが「ハイレベル」ではＩ２Ｃインターフェースが選択される。
【０００８】
図１０は、特許文献１に記載された２つのプロトコルの切り換える方法に関するデータ送受のフローチャートであり、電子装置５００の動作手順について以下に説明する。
ステップＳ１において、マスタ装置が選択信号５０２上とデータ線５０４上とクロック線５０６上に「ハイレベル」を供給することで、電子装置５００はデフォルト（標準動作）としてインターフェースをＩ２Ｃモードに設定する。ステップＳ２において、電子装置５００は入力信号についてインターフェースを監視する。ステップＳ３において、電子装置５００は、選択信号線５０２上の選択信号ＣＳＢの「ハイレベル」から「ローレベル」への遷移の有無を検出する。
【０００９】
ステップＳ３において、選択信号ＣＳＢの「ローレベル」への遷移が検出されないときには、ステップＳ８に進む。ステップＳ８では、電子装置５００は、データ線５０４上のデータＳＤＡについてデータ転送開始「ＳＴＡＲＴ」に遷移があるか否かを判定する。この判定の結果、その遷移がない場合にはステップＳ２に戻り、その遷移がある場合にはステップＳ９に進む。ステップＳ９では、電子装置５００はＩ２Ｃモードで読み出し動作や書き込み動作を実行し、その実行の終了後にステップＳ２に戻る。
【００１０】
一方、ステップＳ３において、選択信号ＣＳＢの「ローレベル」への遷移が検出されると、次のステップＳ４に進む。ステップＳ４では、電子装置５００はインターフェースをＳＰＩモードで動作するように設定する。ステップＳ５では、電子装置５００は、ＳＰＩモードで読み出し動作や書き込み動作を実行する。電子装置５００は、ステップＳ６において選択信号線５０２上の選択信号ＣＳＢの「ハイレベル」への遷移を検出すると、ステップＳ７でインターフェースをＩ２Ｃモードに設定して、ステップＳ２に戻る。
【００１１】
図９で示すような電子装置５００をスレーブ装置としてマスタ装置との間で通信を行う通信システムでは、１つのマスタ装置で多数の電子装置のアクティブ／非アクティブを制御することが要求される。図１１は、このような通信システムの一例を示すブロック図である。
図１１の通信システムは、１つのマスタ装置７０２と、スレーブ装置として機能する４つの電子装置７０４、７０６、７０８、７１０とからなり、マスタ装置７０２がその４つの電子装置のうちの１つと選択的に双方向通信する。
【００１２】
このため、マスタ装置７０２と４つの電子装置７０４、７０６、７０８、７１０とは、クロックＳＣＬを転送する共通のクロック線７２０およびデータＳＤＡを転送する共通のデータ線７２２で接続されている。また、マスタ装置７０２と電子装置７０４、７０６、７０８、７１０とは、独立の選択信号線７２４、７２６、７２８、７３０により接続されている。そして、マスタ装置７０２との間で行われるＳＰＩプロトコルに基づく通信における電子装置７０４、７０６、７０８、７１０のうちの何れかのアクティブ／非アクティブの制御には、選択信号ＣＳＢ１、ＣＳＢ２、ＣＳＢ３、ＣＳＢ４が使用される。
【００１３】
図１２は、１つのマスタ装置８０２が２つの電子装置８０４、８０６と選択的に双方向の通信を行う通信システムのブロック図である。
この通信システムにおいて、マスタ装置８０２が電子装置８０４との間でＳＰＩプロトコルに従ったデータ送受を行う場合、クロック線８１４上のクロックＳＣＬ、データ線８１２のデータＳＤＡ、および選択信号線８１０上の選択信号ＣＳＢ１が使用される。選択信号線８１０上の選択信号ＣＳＢ１が「ローレベル」で、選択信号線８１６上の選択信号ＣＳＢ２が「ハイレベル」となる。
このとき、電子装置８０４はＳＰＩインターフェースが設定され、電子装置８０６はＩ２Ｃインターフェースが設定された状態である。そして、電子装置８０４へのデータ線８１２上の送受データＳＤＡとクロック線８１４上のクロックＳＣＬは、電子装置８０６にも入力される。
【００１４】
このとき、選択信号ＣＳＢ２が「ハイレベル」であって、クロックＳＣＬが「ハイレベル」で送受データＳＤＡが「ハイレベル」から「ローレベル」への遷移が行われると、電子装置８０６はＩ２Ｃインターフェースのデータ転送開始「ＳＴＡＲＴ」を認識して（図８参照）、Ｉ２Ｃモードで読み出し動作や書き込み動作を開始する。
このように、クロックＳＣＬと転送データＳＤＡによって、電子装置８０６がＩ２Ｃモードで読み出し動作や書き込み動作を開始する誤動作を生じる。そしてさらに、電子装置８０４へのデータ送受が妨害される、という不具合が発生する。
【００１５】
図１２では、２つの電子装置を用いたデータ送受の例を示したが、このような誤動作は図１１のように多数の電子装置を制御する場合にも同様である。
このような誤動作は、たとえば、電子装置８０６がデータ転送開始「ＳＴＡＲＴ」を認識しないタイミング、つまりクロックＳＣＬが「ハイレベル」で送受データＳＤＡの「ハイレベル」から「ローレベル」への遷移が生じないようにマスタ装置８０２が信号を発行した場合であっても、起こりうる。この理由について、以下に図面を参照して説明する。
【００１６】
図１３は、図１２の電子装置の内部回路の概要を示し、インターフェースコア回路９０６と、スタートストップ判定回路９０８とを備えている。
図１３に示す電子装置９０４では、スタートストップ判定回路９０８は、データ線８１２上のデータＳＤＡとクロック線８１４上のクロックＳＣＬに基づき、データ転送開始「ＳＴＡＲＴ」を認識し、スタート判定信号を生成する。このスタート判定信号と選択信号線８１０上の選択信号ＣＳＢとを用いて、図１０のフローチャートのステップＳ３、Ｓ８の判定処理を行う。そして、これら判定処理に基づき、インターフェースコア回路９０６は、Ｉ２ＣモードまたはＳＰＩモードで読み出し動作や書き込み動作を実行する（図１０のステップＳ５、Ｓ９）。
【００１７】
ここで、マスタ装置８０２から電子装置９０４に向けて転送されるクロック線８１４上のクロックＳＣＬとデータ線８１２上のデータＳＤＡとは、マスタ装置８０２の発生直後には、例えば図１４（Ａ）（Ｂ）に示すようなタイミングにある。
しかし、そのクロックＳＣＬとデータＳＤＡは、マスタ装置８０２からスタートストップ判定回路９０８に至るまでに遅延がある。この遅延の原因としては、内部回路に起因する遅延（図１３では、この遅延を抵抗９１４、９１６で表現）、または配線に起因する遅延（図１３では、この遅延を抵抗９１０、９１２で表現）がある。
【００１８】
そして、データＳＤＡの遅延がクロックＳＣＬの遅延よりも大きな場合には（データＳＤＡの遅延＞クロックＳＣＬの遅延）、クロックＳＣＬとデータＳＤＡは図１４（Ｃ）（Ｄ）のようになる。このため、スタートストップ判定回路９０８は、データ転送開始「ＳＴＡＲＴ」を認識し、スタート判定信号を生成し、この結果、電子装置９０４はＩ２Ｃモードで読み出し動作や書き込み動作を開始する誤動作を生じる。
【先行技術文献】
【特許文献】
【００１９】
【特許文献１】特開２００２−２３２５０８号公報
【発明の概要】
【発明が解決しようとする課題】
【００２０】
そこで、本発明の目的は、マスタ装置が複数のスレーブ装置との間でデータとクロックについて共用の信号線を使用し、複数のプロトコルのうちの１つを選択して通信する場合に、スレーブ装置の誤動作を防止できるインターフェース回路などを提供することにある。
【課題を解決するための手段】
【００２１】
上記の課題を解決し本発明の目的を達成するために、各発明は以下のような構成からなる。
第１の発明は、マスタ装置とスレーブ装置との間でクロック、データ、および前記スレーブ装置の選択信号を用いて第１のプロトコルに基づく通信を行う第１のモードと、前記マスタ装置と前記スレーブ装置との間でクロックおよびデータを用いて第２のプロトコルに基づく通信を行う第２のモードと、を切り換えるインターフェース回路であって、前記クロックがハイレベルであり、かつ前記データがハイレベルからローレベルに変化する状態を判定し、判定信号を生成する判定手段と、前記第１のプロトコルに使用される所定の信号の変化を検出し、前記第１のプロトコル動作であることを検出した時には動作検出信号を生成する動作検出手段と、前記動作検出信号が生成された時には、前記判定信号の生成にかかわらず、前記第２のモードでのデータの送受を制限する信号を生成する制限手段と、を備える。
【００２２】
第２の発明は、第１の発明において、前記動作検出手段は、前記クロックを計数し、当該計数に基づいて前記第１のプロトコルに使用される所定の信号を生成するカウンタを備える。
第３の発明は、第１または第２の発明において、前記動作検出手段は、前記第１のプロトコルに使用される信号をトリガーとして前記動作検出信号を生成するフリップフロップを備える。
第４の発明は、インターフェース回路を備えた電子装置であって、前記インターフェース回路は、第１〜第３の発明のうちの何れか１のインターフェース回路である。
【００２３】
第５の発明は、マスタ装置とスレーブ装置との間でクロック、データ、および前記スレーブ装置の選択信号を用いて第１のプロトコルに基づく通信を行う第１のモードと、前記マスタ装置と前記スレーブ装置との間でクロックおよびデータを用いて第２のプロトコルに基づく通信を行う第２のモードと、を切り換える方法であって、前記選択信号のハイレベルからローレベルへの遷移の有無を検出する第１のステップと、前記第１のステップにおいて、前記選択信号のハイレベルからローレベルへの遷移があると検出された場合に、前記第２のモードによる動作を制限する制限フラグを設定し、前記スレーブ装置が前記第１のモードで動作を実行し、実行の終了後に前記第１のステップに戻る第２のステップと、前記第１のステップにおいて、前記選択信号のハイレベルからローレベルへの遷移がないと検出された場合に、前記データの転送開始の遷移の有無を判定する第３のステップと、前記第３のステップにおいて、前記データの転送開始の遷移があると判定された場合には、前記制限フラグの設定の有無を判定し、前記制限フラグの設定があると判定された場合には、前記第１のステップに戻り、前記制限フラグの設定がないと判定された場合には、前記スレーブ装置が前記第２のモードで動作を実行し、実行の終了後に前記第１のステップに戻る第４のステップと、を備える。
【発明の効果】
【００２４】
このような構成の本発明によれば、マスタ装置が複数のスレーブ装置との間でデータとクロックについて共用の信号線を使用し、複数のプロトコルのうちの１つを選択して通信する場合に、スレーブ装置の誤動作を防止できる。
【図面の簡単な説明】
【００２５】
【図１】本発明のインターフェース回路の実施形態を適用した電子装置の一例を示すブロック図である。
【図２】本発明のインターフェース回路の実施形態の動作例を説明するフローチャートである。
【図３】図１のＳＰＩ動作検出回路の構成を具体化した、電子装置の構成を示すブロック図である。
【図４】図３の実施形態の動作時における各部の波形例を説明するタイミングチャートである。
【図５】ＳＰＩプロトコルによるデータの送受が可能な電子装置のブロック図である。
【図６】ＳＰＩプロトコルに従ったデータの送受のタイミングチャートである。
【図７】Ｉ２Ｃプロトコルによるデータの送受が可能な電子装置のブロック図である。
【図８】Ｉ２Ｃプロトコルに従ったデータの送受のタイミングチャートである。
【図９】ＳＰＩとＩ２Ｃプロトコルの両者のデータの送受を自動的に切り換える電子装置のブロック図である。
【図１０】ＳＰＩとＩ２Ｃプロトコルの両者に従ったデータの送受の動作を示すフローチャートである。
【図１１】マスタ装置と複数の電子装置間における通信システムを示すブロック図である。
【図１２】マスタ装置と２つの電子装置間における通信システムを示すブロック図である。
【図１３】電子装置の内部回路と、電子装置の設計や通信システムの構築において生じる配線遅延などを説明するブロック図である。
【図１４】図１３による配線遅延による不具合を説明するためのタイミングチャートである。
【発明を実施するための形態】
【００２６】
以下、本発明の実施形態について、図面を参照して説明する。
（インターフェース回路の実施形態）
図１は、本発明のインターフェース回路を適用した電子装置の一例を示すブロック図である。
このインターフェース回路に係る実施形態は、マスタ装置（図示せず）との間で双方向の通信を行う各種の電子装置１１００に適用されるものである。
電子装置１１００は、図示しないマスタ装置との間でＳＰＩプロトコルに基づく通信を行うＳＰＩモードと、マスタ装置との間でＩ２Ｃプロトコルに基づく通信を行うＩ２Ｃモードとを有する。そして、その２つのモードで通信を行うとともに、その２つのモードがインターフェース回路によって自動的に切り換わるようになっている。
【００２７】
このため、電子装置１１００は、図１に示すように、インターフェースコア回路１１０２と、スタートストップ判定回路１１０４と、ＳＰＩ動作検出回路１１０６と、インバータ回路１１０９と、オア回路１１０８とを少なくとも備え、これらが本発明のインターフェース回路の実施形態を構成する。
インターフェースコア回路１１０２は、図示しないマスタ装置との間でＳＰＩプロトコルとＩ２Ｃプロトコルに従うデータの送受とを自動的に切り換えて行うために、図２に示すような各種の処理や動作を行う。
【００２８】
また、インターフェースコア回路１１０２は、選択信号線１１１０、データ線１１１２、およびクロック線１１１４によって図示しないマスタ装置と接続される。選択信号線１１１０には、マスタ装置から電子装置１１００を選択するための選択信号が供給される。データ線１１１２は、データＳＤＡの転送に使用される。クロック線１１１４には、マスタ装置からクロックＣＳＢが供給される。
【００２９】
スタートストップ判定回路１１０４は、データ線１１１２上のデータＳＤＡとクロック線１１１４上のクロックＳＣＬを監視し、これに基づいてデータ転送開始「ＳＴＡＲＴ」の有無を判定し、スタート判定信号を生成して出力する。スタート判定信号は、データ転送開始「ＳＴＡＲＴ」があることを判定したときには例えば「ハイレベル」になる。
ＳＰＩ動作検出回路１１０６は、ＳＰＩプロトコルで使用される所定の信号の極性変化（レベル変化）を検出し、ＳＰＩプロトコル動作のときには動作検出信号Ｉ２ＣＤＩＳを出力する。動作検出信号Ｉ２ＣＤＩＳは、ＳＰＩプロトコル動作のときには例えば「ハイレベル」になる。
【００３０】
スタートストップ判定回路１１０４から出力されるスタート判定信号はインバータ回路１１０９で論理値が反転され、その反転信号がオア回路１１０８に入力される。オア回路１１０８は、インバータ回路１１０９の出力信号とＳＰＩ動作検出回路１１０６から出力される動作検出信号Ｉ２ＣＤＩＳとの論理和演算を行い、その結果を出力する。
このように、この実施形態では、ＳＰＩ動作検出回路１１０６がＳＰＩプロトコルのアクセスを検出したときには、動作検出信号Ｉ２ＣＤＩＳが「ハイレベル」になり、スタートストップ判定回路１１０４から出力されるスタート判定信号の有無にかかわらず、オア回路１１０８から出力される制限信号は「ハイレベル」になる。このため、インターフェースコア回路１１０２は、ＳＰＩプロトコルで動作する場合には、Ｉ２Ｃプロトコルでの動作が制限される。
【００３１】
（実施形態の動作例）
次に、このような構成の実施形態の動作例について、図２のフローチャートを参照して説明する。
ステップＳ２１において、マスタ装置が選択信号線１１１０上とデータ線１１１２上とクロック線１１１４上に「ハイレベル」を供給することで、インターフェースコア回路１１０２は、デフォルト（標準動作）としてインターフェースをＩ２Ｃモードに設定する。ステップＳ２２において、インターフェースコア回路１１０２は、動作検出信号Ｉ２ＣＤＩＳを「ローレベル」に設定する。これにより、動作開始時においてＳＰＩプロトコルとＩ２Ｃプロトコルの両方のプロトコルが選択可能となる。
【００３２】
ステップＳ２３において、インターフェースコア回路１１０２は、入力信号についてインターフェースを監視する。ステップＳ２４では、インターフェースコア回路１１０２は、選択信号線１１１０上の選択信号ＣＳＢの「ハイレベル」から「ローレベル」への遷移の有無を検出する。
ステップＳ２４において、選択信号ＣＳＢの「ハイレベル」から「ローレベル」への遷移が検出されると、次のステップＳ２５に進む。ステップＳ２５では、インターフェースコア回路１１０２は、インターフェースをＳＰＩモードで動作するように設定する。ステップＳ２６では、インターフェースコア回路１１０２は、動作検出信号Ｉ２ＣＤＩＳを「ハイレベル」に設定する。この設定により、マスタ装置から電子装置１１００へのデータ転送はＳＰＩプロトコルのみが使用可能となる。
【００３３】
ステップＳ２７では、インターフェースコア回路１１０２は、ＳＰＩモードで読み出し動作や書き込み動作を実行する。インターフェースコア回路１１０２は、ステップＳ２８において選択信号線１１１０上の選択信号ＣＳＢの立ち上がりエッジを検出すると、ステップＳ２９でインターフェースをＩ２Ｃモードに設定して、ステップＳ２３に戻る。
一方、ステップＳ２４において、選択信号ＣＳＢの「ハイレベル」から「ローレベル」への遷移が検出されないときには、ステップＳ３０に進む。ステップＳ３０では、インターフェースコア回路１１０２は、データ線１１１０上のデータＳＤＡについてデータ転送開始「ＳＴＡＲＴ」に遷移があるか否かを判定する。この判定の結果、その遷移がない場合にはステップＳ２３に戻り、その遷移がある場合にはステップＳ３１に進む。
【００３４】
ステップＳ３１では、インターフェースコア回路１１０２は、動作検出信号Ｉ２ＣＤＩＳが「ローレベル」であるか否かを判定する。
この判定の結果、動作検出信号Ｉ２ＣＤＩＳが「ローレベル」でないと判定された場合、すなわち、動作検出信号Ｉ２ＣＤＩＳが「ハイレベル」であってＳＰＩプロトコルによるデータ転送であると判定された場合には、ステップＳ２３に戻る。
一方、ステップＳ３１において、動作検出信号Ｉ２ＣＤＩＳが「ローレベル」であると判定された場合には、ステップＳ３２に進む。ステップＳ３２では、インターフェースコア回路１１０２は、Ｉ２Ｃモードで読み出し動作や書き込み動作を実行し、その実行の終了後にステップＳ２３に戻る。
【００３５】
図３は、図１のＳＰＩ動作検出回路１１０６の構成を具体化した、電子装置１１００の構成を示すブロック図である。
ＳＰＩ動作検出回路１１０６は、８ビットのアドレスと８ビットのデータとを１６ビットで送受するＳＰＩプロトコルの場合を想定したものであり、図３に示すように、カウンタ１１１６と、フリップフロップ１１１８とを備えている。
カウンタ１１１６は、インターフェースコア回路１１０２に供給されるクロックＳＣＬのエッジ数で状態遷移するための５ビットのカウンタ［４：０］、すなわち、そのエッジに同期して計数動作を行う５ビットのカウンタである。フリップフロップ１１１８は、５ビットのカウンタ１１１６のＭＳＢビット（最上位ビット）の値をそのクロックとして用いる。
なお、図３の電子装置１１００において、カウンタ１１１６およびフリップフロップ１１１８以外の部分の構成は、図１の電子装置の構成と実質的に同様である。
【００３６】
次に、図３に示すインターフェース回路の実施形態の動作例について、図４を参照して説明する。
図４は、ＳＰＩプロトコルの入力信号のタイミングチャートである。
カウンタ１１１６は、ＳＰＩプロトコルに従って入力されるクロックＳＣＬの立ち上がりに同期して計数動作を行う（図４（Ｂ）（Ｄ）参照  ）。そして、カウンタ１１１６のＭＳＢビットの値は、クロックＳＣＬの１６発目の立ち上がりエッジに同期して「ローレベル」から「ハイレベル」に変化する（図４（Ｂ）（Ｅ）参照  ）。カウンタ１１１６のＭＳＢビットの値はフリップフロップ１１１８に入力されるので、フリップフロップ１１１８から出力される動作検出信号Ｉ２ＣＤＩＳは「ローレベル」から「ハイレベル」に変化する（図４（Ｅ）（Ｆ）参照  ）。
オア回路１１０８は、インバータ回路１１０９の出力信号とフリップフロップ１１１８から出力される動作検出信号Ｉ２ＣＤＩＳとの論理和演算を行い、その結果を出力する。このため、オア回路１１０８からは、インターフェースコア回路１１０２がＩ２Ｃプロトコルで動作することを制限するための制限信号が出力される。
【００３７】
すなわち、カウンタ１１１６およびフリップフロップ１１１８が、ＳＰＩプロトコルのアクセスを検出すると、フリップフロップ１１１８から出力される動作検出信号Ｉ２ＣＤＩＳが「ハイレベル」になる。これにより、スタートストップ判定回路１１０４から出力されるスタート判定信号の有無にかかわらず、オア回路１１０８の出力信号は「ハイレベル」になる。このため、インターフェースコア回路１１０２は、ＳＰＩプロトコルで動作する場合には、Ｉ２Ｃプロトコルでの動作が制限される。
このように、この実施形態では、マスタ装置が電子装置１１００との間でＳＰＩプロトコルに従ったデータの送受を行ないたいときには、電子装置１１００が自動的にＩ２Ｃモードでの読み出し動作や書き込み動作が常に無効となるようにしたので、ＳＰＩモードでの動作を確保することができる。
【００３８】
（ＳＰＩ動作検出回路の変形例）
図３では、ＳＰＩ動作検出回路は、カウンタ１１１６とフリップフロップ１１１８で構成し、動作検出信号Ｉ２ＣＤＩＳを生成するようにしたが、このような構成に限定されるものではない。
また、フリップフロップ１１１８のトリガーは、カウンタ１１１８のＭＳＢビットを使用したが、これはカウンタ１１１８のＭＳＢビットに限定するものではなく、さらにカウンタ１１１８に限定するものではない。
フリップフロップ１１１８のトリガーとしては、例えばカウンタ１１１８のＬＳＢビットの値、または選択信号線１１１０上の選択信号ＣＳＢの「ハイレベル」から「ローレベル」への遷移を検出した信号を使用することができる。
つまり、ＳＰＩ動作検出回路は、ＳＰＩアクセスのみで極性の変化する所定の信号を検出し、これに基づいてフリップフロップ１１１８のトリガーなどとして使用することで、動作検出信号Ｉ２ＣＤＩＳを生成することができれば良い。
【産業上の利用可能性】
【００３９】
本発明のインターフェース回路は、例えばＡＤコンバータ、ＤＡコンバータや通信用ＩＣと接続する場合に適用することができる。
【符号の説明】
【００４０】
１１００・・・電子装置
１１０２・・・インターフェースコア回路
１１０４・・・スタートストップ判定回路
１１０６・・・ＳＰＩ動作検出回路
１１０８・・・オア回路
１１０９・・・インバータ回路
１１１０・・・選択信号線
１１１２・・・データ線
１１１４・・・クロック線
１１１６・・・カウンタ
１１１８・・・フリップフロップ
【図１】
0005385722.tif 000002
【図２】
0005385722.tif 000003
【図３】
0005385722.tif 000004
【図４】
0005385722.tif 000005
【図５】
0005385722.tif 000006
【図６】
0005385722.tif 000007
【図７】
0005385722.tif 000008
【図８】
0005385722.tif 000009
【図９】
0005385722.tif 000010
【図１０】
0005385722.tif 000011
【図１１】
0005385722.tif 000012
【図１２】
0005385722.tif 000013
【図１３】
0005385722.tif 000014
【図１４】
0005385722.tif 000015