(57)【要約】  スレーブ装置（１３０）は、異常を検出するためのパラメータの値として、マスター装置から送信されるコマンドの内容毎に、異なる値を設定するパラメータ設定部（１３３）と、パラメータ設定部（１３３）により設定されたパラメータの値に対応する時間と、コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部（１３４）とを備える。
2013046734.tif 000002
【特許請求の範囲】
【請求項１】
ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容毎に、異なる値を設定するパラメータ設定部と、
前記パラメータ設定部により設定されたパラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えること
を特徴とするスレーブ装置。
【請求項２】
前記パラメータ設定部は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項１に記載のスレーブ装置。
【請求項３】
前記マスター装置と、シリアルクロックライン及びシリアルデータラインを介して通信を行うインターフェース部をさらに備え、
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出部は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項１又は２に記載のスレーブ装置。
【請求項４】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを受信してからライトデータを受信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを受信してからライトデータを受信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを受信してからリードデータを送信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを受信してからリードデータを送信するまで、時間を計測すること
を特徴とする請求項１又は２に記載のスレーブ装置。
【請求項５】
前記異常検出部は、時間を計測するカウンタを備えており、前記カウンタの値が、前記パラメータの値を超えた場合に、異常を検出すること
を特徴とする請求項１から４の何れか一項に記載のスレーブ装置。
【請求項６】
前記異常検出部が異常を検出した場合に、前記マスター装置との間の通信をリセットする初期化部をさらに備えること
を特徴とする請求項１から５の何れか一項に記載のスレーブ装置。
【請求項７】
ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容毎に、異なる値を設定するパラメータ設定部と、
前記パラメータ設定部により設定されたパラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えること
を特徴とするマスター装置。
【請求項８】
前記パラメータ設定部は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項７に記載のマスター装置。
【請求項９】
前記スレーブ装置と、シリアルクロックライン及びシリアルデータラインを介して通信を行うインターフェース部をさらに備え、
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出部は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項７又は８に記載のマスター装置。
【請求項１０】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを送信してからライトデータを送信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを送信してからライトデータを送信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを送信してからリードデータを受信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを送信してからリードデータを受信するまで、時間を計測すること
を特徴とする請求項７又は８に記載のマスター装置。
【請求項１１】
前記異常検出部は、時間を計測するカウンタを備えており、前記カウンタの値が、前記パラメータの値を超えた場合に、異常を検出すること
を特徴とする請求項７から１０の何れか一項に記載のマスター装置。
【請求項１２】
前記異常検出部が異常を検出した場合に、前記スレーブ装置との間の通信をリセットする初期化部をさらに備えること
を特徴とする請求項７から１１の何れか一項に記載のマスター装置。
【請求項１３】
ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置が行う通信方法であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容毎に、異なる値を設定するパラメータ設定過程と、
前記パラメータ設定過程により設定されたパラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、
を有することを特徴とする通信方法。
【請求項１４】
前記パラメータ設定過程は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項１３に記載の通信方法。
【請求項１５】
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記マスター装置と通信を行うためのシリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出過程は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項１３又は１４に記載の通信方法。
【請求項１６】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを受信してからライトデータを受信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを受信してからライトデータを受信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを受信してからリードデータを送信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを受信してからリードデータを送信するまで、時間を計測すること
を特徴とする請求項１３又は１４に記載の通信方法。
【請求項１７】
ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置が行う通信方法であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容毎に、異なる値を設定するパラメータ設定過程と、
前記パラメータ設定過程により設定されたパラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、を有すること
を特徴とする通信方法。
【請求項１８】
前記パラメータ設定過程は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項１７に記載の通信方法。
【請求項１９】
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記スレーブ装置と通信を行うためのシリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出過程は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項１７又は１８に記載の通信方法。
【請求項２０】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを送信してからライトデータを送信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを送信してからライトデータを送信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを送信してからリードデータを受信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを送信してからリードデータを受信するまで、時間を計測すること
を特徴とする請求項１７又は１８に記載の通信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＩＩＣ（Ｉｎｔｅｒ  Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）プロトコルに従って通信を行う、スレーブ装置、マスター装置及び通信方法に関する。
【背景技術】
【０００２】
従来から、電子機器内のデバイス同士の通信を、ＳＣＬと呼ばれるシリアルクロックラインと、ＳＤＡと呼ばれるシリアルデータラインとの２本の信号線で行う、ＩＩＣプロトコルを用いた通信方式が用いられている。ＩＩＣ通信では、スレーブ装置がコマンド処理中にビジー状態としてＳＣＬの信号をローレベルに固定し、マスター装置へのデータの送信を保留させることができる。【０００３】
しかし、マスター装置から送信されたＳＣＬの信号と、ＳＤＡの信号とが、スレーブ装置で正常に受信できなかった場合に、スレーブ装置は、ＳＣＬの信号をローレベルに固定してしまう場合がある。これに対し、特許文献１には、マスター装置とスレーブ装置との間を、異常の発生を通知するための通知ラインで接続する通信システムが記載されている。特許文献１に記載された通信システムでは、ＩＩＣ通信で生じた異常を検出する検出手段で異常が検出された場合に、一方のデバイスが、この通知ラインを介して他方のデバイスに異常の発生を通知する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１１−７０２８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
特許文献１に記載された通信システムでは、ＳＣＬの信号が、所定の時間以上、所定のレベルを維持した場合に、異常の発生を検知している。しかし、スレーブ装置では、マスター装置から受信したコマンドの内容によってＳＣＬの信号をローレベルに維持する時間が異なるため、コマンドの内容によっては、誤って異常の発生を検知してしまい、正常動作中にデバイスの復旧処理が行われてしまう場合があった。【０００６】
そこで、本発明は、誤って異常の発生を検知してしまうことを防止することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様に係るスレーブ装置は、ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容毎に、異なる値を設定するパラメータ設定部と、前記パラメータ設定部により設定されたパラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えることを特徴とする。【０００８】
また、本発明の一態様に係るマスター装置は、ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容毎に、異なる値を設定するパラメータ設定部と、前記パラメータ設定部により設定されたパラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えることを特徴とする。【０００９】
さらに、本発明の一態様に係る通信方法は、ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置が行う通信方法であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容毎に、異なる値を設定するパラメータ設定過程と、前記パラメータ設定過程により設定されたパラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、を有することを特徴とする。【００１０】
さらにまた、本発明の一態様に係る通信方法は、ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置が行う通信方法であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容毎に、異なる値を設定するパラメータ設定過程と、前記パラメータ設定過程により設定されたパラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、を有することを特徴とする。
【発明の効果】
【００１１】
本発明の一態様によれば、誤って異常を検知してしまうことを防止することができる。
【図面の簡単な説明】
【００１２】
【図１】実施の形態１〜４に係る通信システムの構成を示す概略図である。
【図２】実施の形態１におけるマスター装置の構成を概略的に示すブロック図である。
【図３】実施の形態１におけるスレーブ装置の構成を概略的に示すブロック図である。
【図４】実施の形態１におけるコマンド保持部の構成を概略的に示すブロック図である。
【図５】実施の形態１及び３における異常検出部の構成を概略的に示すブロック図である。
【図６】実施の形態１において、マスター装置がリードのコマンドを出して、データを取得する際のシーケンスを示す概略図である。
【図７】実施の形態１において、マスター装置がライトのコマンドを出して、データを送る際のシーケンスを示す概略図である。
【図８】実施の形態１におけるスレーブ装置での処理を示すフローチャートである。
【図９】実施の形態２におけるスレーブ装置の構成を概略的に示すブロック図である。
【図１０】実施の形態２及び４における異常検出部の構成を概略的に示すブロック図である。
【図１１】実施の形態２におけるスレーブ装置での処理を示すフローチャートである。
【図１２】実施の形態３におけるマスター装置の構成を概略的に示すブロック図である。
【図１３】実施の形態３におけるマスター装置での処理を示すフローチャートである。
【図１４】実施の形態４におけるマスター装置の構成を概略的に示すブロック図である。
【図１５】実施の形態４におけるマスター装置での処理を示すフローチャートである。
【発明を実施するための形態】
【００１３】
実施の形態１．
図１は、実施の形態１に係る通信システム１００の構成を示す概略図である。通信システム１００は、マスター装置１１０と、スレーブ装置１３０とを備える。なお、図１の括弧内の符号は、実施の形態２〜４における構成を示している。
【００１４】
マスター装置１１０は、マスターモードで動作している通信装置である。また、スレーブ装置１３０は、スレーブモードで動作している通信装置である。マスター装置１１０とスレーブ装置１３０とは、シリアルデータラインであるＳＤＡ及びシリアルクロックラインであるＳＣＬで相互に接続されており、ＩＩＣプロトコルにて通信を行うものである。図１では、スレーブ装置１３０は、１つだけ示されているが、複数あってもよい。
【００１５】
図２は、マスター装置１１０の構成を概略的に示すブロック図である。マスター装置１１０は、制御部１１１と、インターフェース部（以下、Ｉ／Ｆ部という）１１２とを備える。
【００１６】
制御部１１１は、ＩＩＣプロトコルに従った通信を制御する。例えば、制御部１１１は、Ｉ／Ｆ部１１２を介して、スタートコンディションと呼ばれるユニークな状態と、通信を行うスレーブ装置１３０のスレーブアドレスと、このスレーブ装置１３０に行わせる処理の内容を示すコマンドとを送信する処理を行い、このコマンドで示された内容に応じて必要な処理を行う。なお、制御部１１１は、スレーブ装置１３０と通信を行う際に、Ｉ／Ｆ部１１２を介して、ＳＣＬにおけるクロック信号を変化させる。
また、制御部１１１は、ＩＩＣプロトコルに従ってスレーブ装置１３０と通信を行っている最中に、スレーブ装置１３０が通信の初期化（リセット）を行った場合には、初期化された通信を再開する処理を行う。
Ｉ／Ｆ部１１２は、制御部１１１からの制御に応じて、ＳＤＡ及びＳＣＬを介して、通信を実行する。
【００１７】
図３は、スレーブ装置１３０の構成を概略的に示すブロック図である。スレーブ装置１３０は、制御部１３１と、コマンド保持部１３２と、パラメータ設定部１３３と、異常検出部１３４と、クロック生成部１３５と、初期化部１３６と、Ｉ／Ｆ部１３７と、演算処理部１３８とを備える。
【００１８】
制御部１３１は、ＩＩＣプロトコルに従った通信を制御する。
また、制御部１３１は、初期化部１３６からリセット信号を受け取ると、通信処理を初期化（リセット）して、再度、マスター装置１１０からのコマンド待ち状態に移行する。
【００１９】
さらに、制御部１３１は、マスター装置１１０からのコマンドの内容に応じたパラメータの値をパラメータ設定部１３３に通知する。例えば、制御部１３１は、演算処理部１３８との間の通信量、演算処理部１３８での演算負荷等に基づいて、「リード」又は「ライト」における最適な値をパラメータ設定部１３３に通知する。例えば、制御部１３１と、演算処理部１３８との間で通信を行うデータ量が多く、これらの間の通信が遅延している場合には、制御部１３１は、遅延量が大きいほど大きな値（長い時間）となるパラメータをパラメータ設定部１３３に通知する。また、演算処理部１３８での演算処理負荷が高くなっている場合には、制御部１３１は、負荷が高いほど大きな値となるパラメータをパラメータ設定部１３３に通知する。制御部１３１は、これらの両方を加味して、パラメータの値を決定してもよい。
【００２０】
コマンド保持部１３２は、マスター装置１１０から送信され、Ｉ／Ｆ部１３７を介して受信されたコマンドの内容を示す情報を保持する。例えば、ＩＩＣ通信の場合、スレーブアドレスを示すビットの後に、コマンドの内容を表すビットがあるため、コマンド保持部１３２は、このコマンドの内容を表すビットの値を保持する。ここで、ＩＩＣ通信の場合、このコマンドの内容を表すビットの値が「０」の場合は、マスター装置１１０が「ライト」を指示したことになり、このビットの値が「１」の場合、マスター装置１１０が「リード」を指示したことになる。
【００２１】
図４は、コマンド保持部１３２の構成を概略的に示すブロック図である。コマンド保持部１３２は、スタートコンディション認識部１３２ａと、内部カウンタ１３２ｂと、レジスタ１３２ｃとを備える。
スタートコンディション認識部１３２ａは、マスター装置１１０が送信し、Ｉ／Ｆ部１３７で受信されたデータからスタートコンディションを検出する。
内部カウンタ１３２ｂは、スタートコンディション認識部１３２ａがスタートコンディションを検出すると、このスタートコンディションから所定のビット数後に配置されているコマンドの内容を示すビットを特定し、このビットの値をレジスタ１３２ｃに格納する。例えば、スレーブアドレスが７ビットの場合、内部カウンタ１３２ｂは、ＳＣＬのクロック数をカウントすることで、スタートコンディションから８クロック後に到来するコマンド内容ビットを特定する。なお、内部カウンタ１３２ｂは、レジスタ１３２ｃの値を更新した際には、パラメータ設定部１３３にイネーブル信号を出力する。
レジスタ１３２ｃは、内部カウンタ１３２ｂから送られてくるビットの値（コマンド内容ビットの値）を格納する。
【００２２】
図３の説明に戻り、パラメータ設定部１３３は、コマンド保持部１３２に保持されているコマンドの内容を示す情報に応じて、通信異常を検出するためのパラメータの値を変更する。図４に示されているように、パラメータ設定部１３３は、コマンド保持部１３２からイネーブル信号を受け取った際に、異常検出部１３４にパラメータの値を設定する。なお、本実施の形態においては、通信異常を検出するためのパラメータの値は、ＳＣＬのクロック信号がローレベルを維持する時間に対応したしきい値である。このしきい値は、例えば、ＳＣＬのクロック信号がローレベルを維持する最大時間に対応した値とすることができる。ここで、コマンド保持部１３２に保持されているコマンドの内容は「リード」又は「ライト」であるため、パラメータ設定部１３３は、コマンド保持部１３２に保持されているコマンドの内容が「リード」である場合と、これが「ライト」である場合とで、そのパラメータの値を異なるものとする。設定されるパラメータの値は、適宜変更することができるものとすることが望ましく、制御部１３１から通知される。
【００２３】
異常検出部１３４は、コマンドに応じて行われる処理において時間を計測する。例えば、異常検出部１３４は、ＳＣＬのクロック信号がローレベルに固定されている時間を計測する。異常検出部１３４は、計測された時間と、パラメータ設定部１３３により設定されたパラメータの値に対応する最大時間との比較を行う。そして、異常検出部１３４は、この計測された時間が最大時間を越えた場合には、通信異常と判定し、初期化部１３６へ通信異常を通知する。
【００２４】
図５は、異常検出部１３４の構成を概略的に示すブロック図である。異常検出部１３４は、内部カウンタ１３４ａと、比較部１３４ｂとを備える。なお、図５の括弧内の符号は、実施の形態３のマスター装置における構成である。
内部カウンタ１３４ａは、ＳＣＬよりも２倍以上周波数の高い専用クロックでＳＣＬの状態をラッチし、ＳＣＬのクロック信号がローレベルとなっている時間をカウントする。なお、パラメータ設定部１３３で設定される最大時間を示すパラメータの値は、内部カウンタ１３４ａの動作クロックである専用クロックでその最大時間をカウントした場合のカウント値となっている。
比較部１３４ｂは、内部カウンタ１３４ａでのカウント値が、パラメータ設定部１３３が設定したパラメータの値を超えると、通信異常を通知するための通信異常信号を初期化部１３６に与える。
【００２５】
図３の説明に戻り、クロック生成部１３５は、異常検出部１３４がカウント行うために必要とする専用クロックを生成する。そして、クロック生成部１３５は、この専用クロックを異常検出部１３４に与える。
【００２６】
初期化部１３６は、異常検出部１３４から通信異常信号が与えられると、リセット信号を制御部１３１に出力する。
【００２７】
次に、以上に記載した通信システム１００の動作について説明する。
図６は、ＩＩＣ通信で、マスター装置１１０がリードのコマンドを出して、データを取得する際のシーケンスを示す概略図である。なお、図６ではスレーブ装置１３０のアドレス幅を７ビットとしている。
【００２８】
ＩＩＣ通信では、マスター装置１１０の制御部１１１が、Ｉ／Ｆ部１１２を介して、スタートコンディションと呼ばれるユニークな状態を生成し（Ｓ１）、その後、続けて、通信を行うスレーブ装置のアドレスと、「リード」のコマンドの内容とを示すビットをスレーブ装置１３０に送信する（Ｓ２、Ｓ３）。
【００２９】
スレーブ装置１３０では、制御部１３１が、Ｉ／Ｆ部１３７を介して、スタートコンディションを認識し、マスター装置１１０から送信されるスレーブアドレスが自身のアドレスと合致するかを判定する。その結果、合致する場合は、制御部１３１は、ＳＣＬのクロック信号に同期させて、Ｉ／Ｆ部１３７を介して、ＡＣＫ信号をマスター装置１１０に送信する（Ｓ４）。さらに、制御部１３１は、演算処理部１３８との通信を行い、演算処理部１３８を用いて複雑な演算処理を行った結果をマスター装置１１０へ送信する（Ｓ５）。ここで、制御部１３１は、ＡＣＫ信号を送信してから（Ｓ４）、演算処理部１３８による演算処理が終了し、演算結果の準備が完了するまでは、ビジー状態としてＳＣＬのクロック信号を強制的にローレベルに固定する。これにより、スレーブ装置１３０は、ＳＣＬのクロック信号がローレベルである間、データの送信を停止することができる。その後、制御部１３１は、リードデータが準備できると、Ｉ／Ｆ部１３７を介して、ＳＣＬのビジー状態を解除し、リードデータの送信を行う（Ｓ５）。
リードデータを受け取ると、マスター装置１１０では、制御部１１１が、Ｉ／Ｆ部１１２を介して、ＡＣＫ信号をスレーブ装置１３０に返信する（Ｓ６）。そして、スレーブ装置１３０では、制御部１３１が、Ｉ／Ｆ部１３７を介して、リードデータの送信を行う（Ｓ７）。これに対して、マスター装置１１０では、制御部１１１が、Ｉ／Ｆ部１１２を介して、ＡＣＫ信号をスレーブ装置１３０に返信する（Ｓ８）。
【００３０】
図７は、ＩＩＣ通信で、マスター装置１１０がライトのコマンドを出して、データを送る際のシーケンスを示す概略図である。
【００３１】
マスター装置１１０の制御部１１１は、Ｉ／Ｆ部１１２を介して、スタートコンディションを生成し（Ｓ１０）、その後、続けて、通信を行うスレーブ装置のアドレスと、「ライト」のコマンドの内容とを示すビットをスレーブ装置１３０に送信する（Ｓ１１、Ｓ１２）。
【００３２】
スレーブ装置１３０では、制御部１３１が、Ｉ／Ｆ部１３７を介して、スタートコンディションを認識し、マスター装置１１０から送信されるスレーブアドレスが自身のアドレスと合致するかを判定する。その結果、合致する場合は、制御部１３１は、ＳＣＬのクロック信号に同期させて、Ｉ／Ｆ部１３７を介して、ＡＣＫ信号をマスター装置１１０に送信する（Ｓ１３）。ＡＣＫ信号を送信した後、次のデータの受信を行うための準備、例えば、図示していない受信バッファ内のデータをＲＡＭなどのメモリへ書き込んでいる間などは、制御部１３１は、ＳＣＬのクロック信号を強制的にローレベルに固定する。マスター装置１１０は、ＳＣＬのクロック信号がローレベルになっている間、データの送信を停止することになる。
ＡＣＫ信号を受け取ると、マスター装置１１０では、制御部１１１が、Ｉ／Ｆ部１１２を介して、ＳＣＬのクロック信号の立ち上がりに同期してライトデータをスレーブ装置１３０に送信する（Ｓ１４）。
そして、ライトデータを受け取ったスレーブ装置１３０では、制御部１３１が、Ｉ／Ｆ部１３７を介して、ＡＣＫ信号の返信を行う（Ｓ１５）。また、制御部１３１は、受信準備等のためにＳＣＬのクロック信号をローレベルに固定し、受信準備等が完了した後に、ＳＣＬのクロック信号のローレベルへの固定を解除する。これに対して、マスター装置１１０では、制御部１１１が、Ｉ／Ｆ部１１２を介して、ライトデータをスレーブ装置１３０に送信する（Ｓ１６）。スレーブ装置１３０は、Ｉ／Ｆ部１３７を介して、ＡＣＫ信号を返信する（Ｓ１７）。
【００３３】
図８は、スレーブ装置１３０での処理を示すフローチャートである。
まず、スレーブ装置１３０の制御部１３１は、Ｉ／Ｆ部１３７を介して、スタートコンディションを認識し、マスター装置１１０から送信されるスレーブアドレスと、コマンドとを受信する（Ｓ２０）。
【００３４】
制御部１３１は、受信されたスレーブアドレスが、自身のアドレスと合致する場合には、ＳＣＬのクロック信号に同期させて、Ｉ／Ｆ部１３７を介して、ＡＣＫ信号をマスター装置１１０に送信する（Ｓ２１）。
【００３５】
また、マスター装置１１０が生成したスタートコンディションを、図４に示されているコマンド保持部１３２のスタートコンディション認識部１３２ａが認識すると、内部カウンタ１３２ｂは、ＳＣＬのクロック数をカウントすることで、スタートコンディションから８クロック後に到来するコマンド内容ビットを特定する。そして、内部カウンタ１３２ｂは、特定されたビットの値を、レジスタ１３２ｃに保持させる（Ｓ２３）。リードの場合、コマンド内容ビットの値は「１」であり、ライトの場合、コマンド内容ビットの値は「０」である。さらに、内部カウンタ１３２ｂは、コマンド保持部１３２内のレジスタ１３２ｃの値を更新した際に、パラメータ設定部１３３にイネーブル信号を出力する。
【００３６】
パラメータ設定部１３３は、コマンド保持部１３２からのイネーブル信号により、レジスタ１３２ｃに保持されているコマンド内容ビットを参照する。そして、パラメータ設定部１３３は、参照したビット内容（ここでは、「リード」又は「ライト」）に応じて、通信異常と判定するための、ＳＣＬのクロック信号がローレベルを維持する最大時間に対応するパラメータの値を異常検出部１３４に設定する（Ｓ２３）。ここで、コマンド内容ビットの値が「１」の場合、パラメータ設定部１３３は、リードデータを処理する際に、ＳＣＬのクロック信号がローレベルを保持する最大時間に対応するパラメータの値を異常検出部１３４に設定する。このパラメータの値は、リード時に最適となるものである。一方、コマンド内容ビットの値が「０」の場合、パラメータ設定部１３３は、ライトデータを処理する際に、ＳＣＬのクロック信号がローレベルを保持する最大時間に対応するパラメータの値を異常検出部１３４に設定する。このパラメータの値は、ライト時に最適となるものである。
【００３７】
次に、図５に示されている異常検出部１３４では、ＳＣＬのクロック信号よりも２倍以上周波数の高い専用クロックで、ＳＣＬのクロック信号の状態をラッチし、ローレベルとなっている時間を内部カウンタ１３４ａでカウントする。そして、比較部１３４ｂは、内部カウンタ１３４ａでカウントされたカウント値が、パラメータ設定部１３３により設定された、ＳＣＬのクロック信号がローレベルを保持する最大時間に対応するパラメータの値を超えたか否かを確認する（Ｓ２４）。例えば、図６に示されているリードの例では、制御部１３１は、Ｉ／Ｆ部１３７を介して、ＡＣＫ信号を送信（Ｓ４）した後、ＳＣＬのクロック信号を強制的にローレベルにする。また、図７に示されているライトの例では、制御部１３１は、Ｉ／Ｆ部１３７を介して、ＡＣＫ信号を送信（Ｓ１３、Ｓ１５、Ｓ１７）した後、ＳＣＬのクロック信号を強制的にローレベルにする。そして、比較部１３４ｂは、カウント値がパラメータの値を超えた場合（Ｓ２４：Ｙｅｓ）には、ステップＳ２５の処理に進み、カウント値がパラメータの値を超えていない場合（Ｓ２４：Ｎｏ）には、ステップＳ２６の処理に進む。
【００３８】
ステップＳ２５では、比較部１３４ｂは、通信異常であると判断し、通信異常信号を初期化部１３６へ出力する。初期化部１３６は、異常検出部１３４からの通信異常信号がアサートされると制御部１３１を初期化するリセット信号を出力する。
【００３９】
ここで、マスター装置１１０からリードのコマンドが送信された場合、初期化部１３６から出力されたリセット信号でスレーブ装置１３０の通信が初期化されると、ビジー状態が解除され、ＳＣＬが有効となる。この場合、スレーブ装置１３０の制御部１３１が初期状態になっているため、Ｉ／Ｆ部１３７を介してＳＤＡにリードデータを送信する処理が行われない。ＳＤＡは、外部でプルアップされているため、マスター装置１１０に入力されるリードデータは「０ｘＦＦ」となる。
マスター装置１１０とスレーブ装置１３０との間で、通常の通信において「０ｘＦＦ」となるデータを送受信しないように取り決めておくことで、マスター装置１１０は、「０ｘＦＦ」となるリードデータが連続して入力された場合、スレーブ装置１３０において通信が初期化されたと認識し、再度、スタートコンディションを生成し、スレーブアドレス及びコマンドの内容を出力し、スレーブ装置１３０との通信を再開する。
なお、スレーブ装置１３０において通信が初期化されたと認識する「０ｘＦＦ」となるリードデータの連続入力回数は、マスター装置１１０が備える図示していない内部レジスタに設定されているものとする。そして、例えば、マスター装置１１０の制御部１１１は、この内部レジスタの値と、「０ｘＦＦ」となるリードデータの連続入力回数をカウントアップするカウンタの値とを比較して、スレーブ装置１３０において通信が初期化されたか否かを判断する。
【００４０】
また、マスター装置１１０からライトのコマンドが送信された場合、初期化部１３６から出力されたリセット信号でスレーブ装置１３０の通信が初期化されると、制御部１３１は、初期状態になっているため、マスター装置１１０からライトデータを送信しても、ＡＣＫ信号を返すことができない。そのため、マスター装置１１０は、所定の時間、スレーブ装置１３０からＡＣＫ信号が返ってこない場合には、スレーブ装置１３０において通信が初期化されたと認識し、再度、スタートコンディションを生成し、スレーブアドレス及びコマンドの内容を出力し、スレーブ装置１３０との通信を再開する。
【００４１】
一方、ステップＳ２６では、制御部１３１は、マスター装置１１０との通信処理を継続する。
【００４２】
そして、制御部１３１は、Ｉ／Ｆ部１３７を介して、マスター装置１１０が生成するストップコンディションを認識したか否かを確認する（Ｓ２７）。そして、制御部１３１は、ストップコンディションを認識した場合（Ｓ２７：Ｙｅｓ）には、フローを終了し、ストップコンディションを認識していない場合（Ｓ２７：Ｎｏ）には、ステップＳ２４の処理に戻る。
【００４３】
以上のように、コマンドの内容がリードの場合とライトの場合とで、スレーブ装置１３０内での処理内容は異なり、これに従い、制御部１３１が、ＳＣＬのクロック信号を強制的にローレベルに固定する時間も異なる。一般的に、リードの場合は、ライトの場合に比べると処理に時間がかかる。例えば、リードの場合には、リードデータを準備するために、制御部１３１と演算処理部１３８との間の通信時間が必要となる場合、演算処理部１３８での演算処理が必要となる場合、及び、制御部１３１での演算処理が必要となる場合等があるためである。このため、リードの場合には、制御部１３１がＳＣＬのクロック信号をローレベルに維持する時間がライトの場合よりも長くなる。
そのため、リードとライトで異常を検出するためのパラメータの値が同じ値になっていると、このパラメータの値が小さい場合は、正常なリード処理中に誤って異常が検出されてしまい、リセットがかかってしまう。一方、パラメータの値が大きい場合は、異常の検出に時間がかかりすぎて、通信システム１００内での処理速度が遅くなってしまう。
【００４４】
そこで、実施の形態１におけるスレーブ装置１３０によれば、マスター装置１１０からのコマンドの内容によって、異常検出を行うためのパラメータの値が最適な値に設定されるため、リード及びライトといったコマンドの内容に応じて、適切に異常を検出することができる。このため、正常動作時に誤って異常が検出されてしまい、リセットがかかることを防止することができる。さらに、異常の検出に時間がかかり、通信システム１００内での処理速度が遅くなってしまうことを防止することができる。
【００４５】
実施の形態１では、制御部１３１に演算処理部１３８が接続されているが、このような構成に限定されるものではない。例えば、制御部１３１の内部に演算処理装置１３８が設けられていてもよい。また、異常検出部１３４では、ＳＣＬのクロック信号がローレベルとなっている時間を検出するために内部カウンタ１３４ａが設けられているが、ＳＣＬのクロック信号のローレベル時間を検出できる構成であればこれに限るものではない。
【００４６】
実施の形態１では、マスター装置１１０は、リードの場合は「０ｘＦＦ」となるデータが連続して入力された場合に、また、ライトの場合はＡＣＫ信号が一定期間内に返ってこない場合に、スレーブ装置１３０において通信が初期化されたと認識しているが、このような例に限定されない。例えば、スレーブ装置１３０からマスター装置１１０に初期化されたことを通知するための通知ラインを追加してもよい。このような通知ラインを用いて初期化の通知を行うことで、より迅速に、初期化されたことをマスター装置１１０に通知することができる。
【００４７】
実施の形態２．
次に、実施の形態２について説明する。図１に示されているように、実施の形態２に係る通信システム２００は、マスター装置１１０と、スレーブ装置２３０とを備える。実施の形態２に係る通信システム２００は、スレーブ装置２３０において、実施の形態１に係る通信システム１００と異なっている。実施の形態２におけるスレーブ装置２３０は、コマンドの内容がリードの場合には、コマンドを受信してからリードデータを送信するまでの時間と、リード用に設定されたパラメータの値に対応する時間とを比較し、また、コマンドの内容がライトの場合には、コマンドを受信してからライトデータを受信するまでの時間と、ライト用に設定されたパラメータの値に対応する時間とを比較する。
【００４８】
図９は、スレーブ装置２３０の構成を概略的に示すブロック図である。スレーブ装置２３０は、制御部２３１と、コマンド保持部１３２と、パラメータ設定部２３３と、異常検出部２３４と、クロック生成部１３５と、初期化部１３６と、Ｉ／Ｆ部１３７と、演算処理部１３８とを備える。実施の形態２におけるスレーブ装置２３０は、制御部２３１、パラメータ設定部２３３及び異常検出部２３４での処理において、実施の形態１におけるスレーブ装置１３０と異なっている。また、実施の形態２におけるスレーブ装置２３０では、制御部２３１と、異常検出部２３４とを接続する信号線であるＩＲＱ１及びＩＲＱ２が新たに設けられている。
【００４９】
制御部２３１は、ＩＩＣプロトコルに従った通信を制御する。
また、制御部２３１は、初期化部１３６からリセット信号を受け取ると、通信処理を初期化（リセット）して、再度、マスター装置１１０からのコマンド待ち状態に移行する。
【００５０】
さらに、制御部２３１は、マスター装置１１０からのコマンドの内容に応じたパラメータの値をパラメータ設定部２３３に通知する。例えば、制御部２３１は、演算処理部１３８との間の通信量、演算処理部１３８での演算負荷等に基づいて、「リード」又は「ライト」における最適な値をパラメータ設定部２３３に通知する。なお、本実施の形態においては、コマンドが「リード」の場合のパラメータの値は、マスター装置１１０からのコマンドを受けてから、このコマンドに対応するリードデータを送信するまでの時間に対応するしきい値である。このしきい値は、マスター装置１１０からのコマンドを受けてから、このコマンドに対応するリードデータを送信するまでの最大時間に対応した値とすることができる。また、コマンドが「ライト」の場合のパラメータの値は、マスター装置１１０からのコマンドを受けてから、このコマンドに対応するライトデータを受信するまでの時間に対応するしきい値である。このしきい値は、マスター装置１１０からのコマンドを受けてから、このコマンドに対応するライトデータを受信するまでの最大時間に対応した値とすることができる。
【００５１】
また、制御部２３１は、Ｉ／Ｆ部１３７を介して、マスター装置１１０からのスタートコンディションを認識し、自装置のスレーブアドレスを受け取った場合に、コマンドの受信を示すコマンド受信通知を異常検出部２３４に与える。例えば、制御部２３１は、ＩＲＱ１において信号をアサートすることで、コマンド受信通知を行う。
さらに、制御部２３１は、Ｉ／Ｆ部１３７を介して、マスター装置１１０から「リード」のコマンドを受け、このコマンドに対するリードデータを送信した際に、リードデータを送信したことを示すリードデータ送信通知を異常検出部２３４に与える。例えば、制御部２３１は、制御部２３１内の送信バッファ２３１ａにリードデータを格納し、このリードデータをＩ／Ｆ部１３７を介してマスター装置１１０に送信する処理を行うことで、この送信バッファ２３１ａが空になった際（送信が完了した際）に、ＩＲＱ２において信号をアサートすることで、リードデータ送信通知を行う。
さらにまた、制御部２３１は、Ｉ／Ｆ部１３７を介して、マスター装置１１０から「ライト」のコマンドを受け、このコマンドに対するライトデータを受信した際に、ライトデータを受信したことを示すライトデータ受信通知を異常検出部２３４に与える。例えば、制御部２３１は、Ｉ／Ｆ部１３７を介して取得したライトデータを、制御部２３１内の受信バッファ２３１ｂに格納し、このライトデータを演算処理部１３８又は図示してはいないメモリ等に与えることで、この受信バッファ２３１ｂが空になった際（受信が完了した際）に、ＩＲＱ２において信号をアサートすることで、ライトデータ受信通知を行う。
【００５２】
パラメータ設定部２３３は、コマンド保持部１３２に保持されているコマンドの内容を示す情報に応じて、通信異常を検出するためのパラメータの値を変更する。図４に示されているように、パラメータ設定部２３３は、コマンド保持部１３２からイネーブル信号を受け取った際に、異常検出部２３４にパラメータの値を設定する。なお、本実施の形態においては、通信異常を検出するためのパラメータの値は、送信完了及び受信完了までの時間に対応したしきい値である。このしきい値は、送信完了及び受信完了までの最大時間に対応した値とすることができる。ここで、コマンド保持部１３２に保持されているコマンドの内容は「リード」又は「ライト」であるため、パラメータ設定部２３３は、コマンド保持部１３２に保持されているコマンドの内容が「リード」である場合と、これが「ライト」である場合とで、そのパラメータの値を異なるものとする。設定されるパラメータの値は、適宜変更することができるものとすることが望ましく、制御部２３１から与えられる。
【００５３】
異常検出部２３４は、コマンドに応じて行われる処理において時間を計測する。例えば、異常検出部２３４は、制御部２３１からのコマンド受信通知からの時間を計測する。そして、異常検出部２３４は、計測された時間と、パラメータ設定部２３３により設定されたパラメータの値に対応する最大時間との比較を行う。そして、異常検出部２３４は、この計測された時間が最大時間を越えた場合には、通信異常と判定し、初期化部１３６へ通信異常を通知する。
なお、異常検出部２３４は、制御部２３１からのリードデータ送信通知又はライトデータ受信通知を受けた場合には、時間の計測を終了する。
【００５４】
図１０は、異常検出部２３４の構成を概略的に示すブロック図である。異常検出部２３４は、内部カウンタ２３４ａと、比較部２３４ｂとを備える。なお、図１０の括弧内の符号は、実施の形態４のマスター装置における構成である。
内部カウンタ２３４ａは、専用クロックにてＩＲＱ１の信号がアサートされてからの時間をカウントする。なお、パラメータ設定部２３３により設定される最大時間を示すパラメータの値は、内部カウンタ２３４ａの動作クロックである専用クロックでその最大時間をカウントした場合のカウント値となっている。また、内部カウンタ２３４ａは、ＩＲＱ２の信号がアサートされた場合には、カウントを停止する。
比較部２３４ｂは、内部カウンタ２３４ａでのカウント値が、パラメータ設定部２３３が設定したパラメータの値を超えると、通信異常を通知するための通信異常信号を初期化部１３６に与える。
【００５５】
図１１は、スレーブ装置２３０での処理を示すフローチャートである。
まず、スレーブ装置２３０の制御部２３１は、Ｉ／Ｆ部１３７を介して、スタートコンディションを認識し、マスター装置１１０から送信されるスレーブアドレスと、コマンドの内容を受信する（Ｓ３０）。
【００５６】
ここで、制御部２３１は、Ｉ／Ｆ部１３７を介して、スタートコンディションを認識し、受信されたスレーブアドレスが自装置のアドレスであると判断した場合には、ＩＲＱ１の信号をアサートする。そして、異常検出部２３４の内部カウンタ２３４ａは、ＩＲＱ１のアサートを検知して、カウントを開始する（Ｓ３１）。
【００５７】
また、制御部２３１は、受信されたスレーブアドレスが、自身のアドレスと合致する場合には、ＳＣＬのクロック信号に同期させて、Ｉ／Ｆ部１３７を介して、ＡＣＫ信号をマスター装置１１０に送信する（Ｓ３２）。
【００５８】
また、マスター装置１１０が生成したスタートコンディションを、図４に示されているコマンド保持部１３２のスタートコンディション認識部１３２ａが認識すると、内部カウンタ１３２ｂは、ＳＣＬのクロック数をカウントすることで、スタートコンディションから８クロック後に到来するコマンド内容ビットを特定する。そして、内部カウンタ１３２ｂは、特定されたビットの値を、レジスタ１３２ｃに保持させる（Ｓ３３）。内部カウンタ１３２ｂは、コマンド保持部１３２内のレジスタの値を更新した際に、パラメータ設定部２３３にイネーブル信号を出力する。
【００５９】
パラメータ設定部２３３は、コマンド保持部１３２からのイネーブル信号により、レジスタ１３２ｃに保持されているコマンド内容ビットを参照する。そして、パラメータ設定部２３３は、参照したビット内容に応じて、通信異常と判定するための、処理の最大時間に対応するパラメータの値を異常検出部２３４に設定する（Ｓ３４）。ここで、コマンド内容ビットの値が「１」の場合、パラメータ設定部２３３は、リード時に最適となる、処理の最大時間に対応するパラメータの値を異常検出部２３４に設定する。一方、コマンド内容ビットの値が「０」の場合、パラメータ設定部２３３は、ライト時に最適となる、処理の最大時間に対応するパラメータの値を異常検出部２３４に設定する。
【００６０】
次に、図１０に示されている異常検出部２３４では、ＳＣＬのクロック信号よりも２倍以上周波数の高い専用クロックで、ＳＣＬのクロック信号の状態をラッチし、ＩＲＱ１のアサートを検出してからの時間を内部カウンタ２３４ａでカウントする。そして、比較部２３４ｂは、内部カウンタ２３４ａでカウントされたカウント値が、パラメータ設定部２３３により設定された、処理の最大時間を示すパラメータの値を超えたか否かを確認する（Ｓ３５）。そして、比較部２３４ｂは、カウント値がパラメータの値を超えた場合（Ｓ３５：Ｙｅｓ）には、ステップＳ３６の処理に進み、カウント値がパラメータの値を超えていない場合（Ｓ３５：Ｎｏ）には、ステップＳ３７の処理に進む。
【００６１】
ステップＳ３６では、比較部２３４ｂは、通信異常であると判断し、通信異常信号を初期化部１３６へ出力する。初期化部１３６は、異常検出部２３４からの通信異常信号がアサートされると制御部２３１を初期化するリセット信号を出力する。これにより、制御部２３１は、ビジー状態を解除し、再度、マスター装置１１０からのコマンド受信待ち状態に復帰する。
【００６２】
一方、ステップＳ３７では、制御部２３１は、マスター装置１１０との通信処理を継続する。
【００６３】
そして、制御部２３１は、Ｉ／Ｆ部１３７を介して、マスター装置１１０との間の通信が完了したか否かを確認する（Ｓ３８）。例えば、マスター装置１１０からのコマンドが「リード」である場合には、送信バッファ２３１ａに格納されたリードデータが送信されて、送信バッファ２３１ａが空になったときに、マスター装置１１０との間の通信が完了したと判断する。また、マスター装置１１０からのコマンドが「ライト」である場合には、受信バッファ２３１ｂに格納されたライトデータが処理されて、受信バッファ２３１ｂが空になったときに、マスター装置１１０との間の通信が完了したと判断する。そして、制御部２３１は、通信が完了したと判断した場合（Ｓ３８：Ｙｅｓ）には、フローを終了し、通信が完了していないと判断した場合（Ｓ３８：Ｎｏ）には、ステップＳ３５の処理に戻る。なお、制御部２３１は、通信が完了したと判断した場合（Ｓ３８：Ｙｅｓ）には、ＩＲＱ２の信号をアサートする。異常検出部２３４の内部カウンタ２３４ａは、ＩＲＱ２のアサートを検出するとカウントを停止する。
【００６４】
以上のように、実施の形態２に係る通信システム２００によれば、マスター装置１１０から送信されるコマンド受信時にアサートされるコマンド受信割り込みと、送受信バッファが空になった場合にアサートされる送受信バッファエンプティ割り込みとの間の処理時間をカウントし、このカウント値とパラメータの値とを比較しているため、より正確に異常を検出することができる。
【００６５】
実施の形態２に係る通信システム２００では、制御部２３１に演算処理部１３８が接続されているが、このような構成に限るものではなく、制御部２３１の内部に演算処理部１３８が設けられていてもよい。さらに、異常検出部２３４は、ＩＲＱ１からＩＲＱ２までの時間を計測するために内部カウンタ２３４ａを設けているが、ＩＲＱ１からＩＲＱ２までの時間を計測することができる構成であればこれに限るものではない。
【００６６】
実施の形態２においては、コマンドの内容がリードである場合には、パラメータ設定部２３３が設定するパラメータの値は、コマンドを受信してから、リードデータの送信が完了するまでの最大時間に対応する値であるが、このような値に限定されるものではない。例えば、パラメータ設定部２３３が設定するパラメータの値は、コマンドを受信してから、リードデータの送信を開始するまでの最大時間としてもよい。このような場合には、例えば、制御部２３１は、制御部２３１内の送信バッファ２３１ａにリードデータを格納し、このリードデータをＩ／Ｆ部１３７を介してマスター装置１１０に送信し始めた際に、ＩＲＱ２において信号をアサートすることで、リードデータ送信通知を行う。
また、実施の形態２においては、コマンドの内容がライトである場合には、パラメータ設定部２３３が設定するパラメータの値は、コマンドを受信してから、ライトデータの受信が完了するまでの最大時間に対応する値であるが、このような値に限定されるものではない。例えば、パラメータ設定部２３３が設定するパラメータの値は、コマンドを受信してから、ライトデータの受信を開始するまでの最大時間としてもよい。このような場合には、例えば、制御部２３１は、制御部２３１内の受信バッファ２３１ｂにライトデータを格納し始めた際に、ＩＲＱ２において信号をアサートすることで、ライトデータ受信通知を行う。
【００６７】
さらに、実施の形態２においては、コマンドの内容がライトである場合には、制御部２３１は、Ｉ／Ｆ部１３７を介して取得したライトデータを、制御部２３１内の受信バッファ２３１ｂに格納し、このライトデータを演算処理部１３８又は図示してはいないメモリ等に与えることで、この受信バッファ２３１ｂが空になった際に、ＩＲＱ２において信号をアサートすることで、ライトデータ受信通知を行っているが、例えば、受信バッファ２３１ｂにライトデータの格納が完了した際に、ＩＲＱ２において信号をアサートして、ライトデータ受信通知を行ってもよい。
【００６８】
実施の形態３．
次に、実施の形態３について説明する。図１に示されているように、実施の形態３に係る通信システム３００は、マスター装置３１０と、スレーブ装置１３０とを備える。実施の形態３に係る通信システム３００は、マスター装置３１０において、実施の形態１に係る通信システム１００と異なっている。実施の形態３では、マスター装置３１０でも初期化処理を行う。
【００６９】
図１２は、マスター装置３１０の構成を概略的に示すブロック図である。マスター装置３１０は、制御部３１１と、Ｉ／Ｆ部１１２と、コマンド保持部３１３と、パラメータ設定部３１４と、異常検出部３１５と、クロック生成部３１６と、初期化部３１７とを備える。実施の形態３におけるマスター装置３１０は、制御部３１１が行う処理の点、並びに、コマンド保持部３１３、パラメータ設定部３１４、異常検出部３１５、クロック生成部３１６及び初期化部３１７がさらに設けられている点において、実施の形態１におけるマスター装置１１０と異なっている。
【００７０】
制御部３１１は、ＩＩＣプロトコルに従った通信を制御する。
また、制御部３１１は、初期化部３１７からリセット信号を受け取ると、通信処理を初期化（リセット）し、再度、リセットされた通信処理を開始する。
さらに、制御部３１１は、ＩＩＣプロトコルに従ってスレーブ装置１３０と通信を行っている最中に、スレーブ装置１３０が通信の初期化（リセット）を行った場合には、初期化された通信を再開する処理を行う。
【００７１】
また、制御部３１１は、スレーブ装置１３０に送信するコマンドの内容に応じたパラメータの値をパラメータ設定部３１４に通知する。例えば、制御部３１１は、スレーブ装置１３０との間の通信量、図１には１つのスレーブ装置１３０しか示されていないが、複数のスレーブ装置１３０が接続されている場合には他のスレーブ装置１３０との間の通信量等に基づいて、「リード」又は「ライト」における最適な値をパラメータ設定部３１４に通知する。例えば、制御部３１１と、スレーブ装置１３０又は他のスレーブ装置１３０との間で通信を行うデータ量が多く、これらの間の通信が遅延している場合には、制御部３１１は、遅延量が大きいほど大きな値となるパラメータの値をパラメータ設定部３１４に通知する。
さらに、制御部３１１は、Ｉ／Ｆ部１１２を介してスレーブ装置１３０へ送信するコマンドの内容をコマンド保持部３１３に与える。
【００７２】
コマンド保持部３１３は、制御部３１１から与えられたリード又はライトのコマンド内容を表すビットの情報を保持するレジスタを備える。なお、コマンド保持部３１３は、レジスタに保持するビットの値を更新した際には、パラメータ設定部３１４にイネーブル信号を与える。
【００７３】
パラメータ設定部３１４は、コマンド保持部３１３に保持されているコマンドの内容を示す情報に応じて、通信異常を検出するためのパラメータの値を変更する。ここで、パラメータ設定部３１４は、コマンド保持部３１３からイネーブル信号を受け取った際に、異常検出部３１５にパラメータの値を設定する。なお、本実施の形態においては、通信異常を検出するためのパラメータの値は、ＳＣＬのクロック信号がローレベルを維持する時間に対応したしきい値である。このしきい値は、ＳＣＬのクロック信号がローレベルを維持する時間に対応した値とすることができる。ここで、コマンド保持部３１３に保持されているコマンドの内容は「リード」又は「ライト」であるため、パラメータ設定部３１４は、コマンド保持部３１３に保持されているコマンドの内容が「リード」である場合と、これが「ライト」である場合とで、そのパラメータの値を異なるものとする。設定されるパラメータの値は、適宜変更することができるものとすることが望ましく、制御部３１１から通知される。
【００７４】
異常検出部３１５は、コマンドに応じて行われる処理において時間を計測する。例えば、異常検出部３１５は、ＳＣＬのクロック信号がローレベルに固定されている時間を計測する。異常検出部３１５は、計測された時間と、パラメータ設定部３１４により設定されたパラメータの値に対応する最大時間との比較を行う。そして、異常検出部３１５は、この計測された時間が最大時間を越えた場合には、通信異常と判定し、初期化部３１７へ通信異常を通知する。図５に示されているように、異常検出部３１５は、内部カウンタ３１５ａと、比較部３１５ｂとを備える。
【００７５】
内部カウンタ３１５ａは、ＳＣＬよりも２倍以上周波数の高い専用クロックでＳＣＬの状態をラッチし、ＳＣＬのクロック信号がローレベルとなっている時間をカウントする。なお、パラメータ設定部３１４で設定される最大時間を示すパラメータの値は、内部カウンタ３１５ａの動作クロックである専用クロックでその最大時間をカウントした場合のカウント値となっている。
比較部３１５ｂは、内部カウンタ３１５ａでのカウント値が、パラメータ設定部３１４が設定したパラメータの値を超えると、通信異常を通知するための通信異常信号を初期化部３１７に与える。
【００７６】
図１２の説明に戻り、クロック生成部３１６は、異常検出部３１５がカウント行うために必要とする専用クロックを生成する。そして、クロック生成部３１６は、この専用クロックを異常検出部３１５に与える。
【００７７】
初期化部３１７は、異常検出部３１５から通信異常信号が与えられると、リセット信号を制御部３１１に出力する。
【００７８】
図１３は、実施の形態３におけるマスター装置３１０での処理を示すフローチャートである。
【００７９】
制御部３１１は、Ｉ／Ｆ部１１２を介して、スタートコンディションを生成し、続けてスレーブアドレス及びコマンドの内容を送信する処理を行う（Ｓ４０）。
【００８０】
このとき、制御部３１１は、送信されるコマンドの内容をコマンド保持部３１３にも与える。コマンド保持部３１３は、与えられたコマンドの内容を示すように、レジスタの値を更新する（Ｓ４１）。リードの場合、レジスタの値は「１」であり、ライトの場合、レジスタの値は「０」である。そして、コマンド保持部３１３は、パラメータ設定部３１４にイネーブル信号を出力する。
【００８１】
パラメータ設定部３１４は、コマンド保持部３１３からのイネーブル信号により、レジスタに保持されているコマンド内容ビットを参照する。そして、パラメータ設定部３１４は、参照したビット内容に応じて、通信異常と判定するための、ＳＣＬのクロック信号がローレベルを維持する最大時間に対応するパラメータの値を異常検出部３１５に設定する（Ｓ４２）。ここで、コマンド内容ビットの値が「１」の場合、パラメータ設定部３１４は、リードデータを処理する際に、ＳＣＬのクロック信号がローレベルを保持する最大時間に対応するパラメータの値を異常検出部３１５に設定する。このパラメータの値は、リード時に最適なものである。一方、コマンド内容ビットの値が「０」の場合、パラメータ設定部３１４は、ライトデータを処理する際に、ＳＣＬのクロック信号がローレベルを保持する最大時間に対応するパラメータの値を異常検出部３１５に設定する。このパラメータの値は、ライト時に最適なものとなる。
【００８２】
次に、制御部３１１は、Ｉ／Ｆ部１１２を介して、スレーブ装置１３０からのＡＣＫ信号を受信する処理を行う（Ｓ４３）。ＡＣＫ信号が受信されると、制御部３１１は、ステップＳ４０でスレーブ装置１３０に送ったコマンドの内容に応じた処理を行う。例えば、ステップＳ４０で送ったコマンドの内容がリードである場合には、制御部３１１は、制御部３１１内にある受信バッファ３１１ａに、Ｉ／Ｆ部１２２を介して受信されたリードデータを蓄積する。そして、制御部３１１は、リードデータの受信が完了すると、Ｉ／Ｆ部１１２を介して、ＡＣＫ信号をスレーブ装置１３０に対して送信する処理を行う。また、ステップＳ４０で送ったコマンドの内容がライトである場合には、制御部３１１は、Ｉ／Ｆ部１２２を介して、制御部３１１内にある送信バッファ３１１ｂに蓄積されたライトデータを送信する処理を行う。
【００８３】
次に、図５に示されている異常検出部３１５では、ＳＣＬのクロック信号よりも２倍以上周波数の高い専用クロックで、ＳＣＬのクロック信号の状態をラッチし、ローレベルとなっている時間を内部カウンタ３１５ａでカウントする。そして、比較部３１５ｂは、内部カウンタ３１５ａでカウントされたカウント値が、パラメータ設定部３１４により設定された、ＳＣＬのクロック信号がローレベルを保持する最大時間を示すパラメータの値を超えたか否かを確認する（Ｓ４４）。そして、比較部３１５ｂは、ＳＣＬのクロック信号がローレベルを保持する最大時間を示すパラメータの値を超えた場合（Ｓ４４：Ｙｅｓ）には、ステップＳ４５の処理に進み、ＳＣＬのクロック信号がローレベルを保持する最大時間を示すパラメータの値を超えていない場合（Ｓ４４：Ｎｏ）には、ステップＳ４６の処理に進む。
【００８４】
ステップＳ４５では、比較部３１５ｂは、通信異常であると判断し、通信異常信号を初期化部３１７へ出力する。初期化部３１７は、異常検出部３１５からの通信異常信号がアサートされると制御部３１１を初期化するリセット信号を出力する。これにより、制御部３１１は、初期化され、再度、ＩＩＣ通信をスタートさせる。
【００８５】
一方、ステップＳ４６では、制御部３１１は、スレーブ装置１３０との通信処理を継続する。
【００８６】
そして、制御部３１１は、スレーブ装置１３０との通信が完了したか否かを確認する（Ｓ４７）。そして、制御部３１１は、通信が完了した場合（Ｓ４７：Ｙｅｓ）には、Ｉ／Ｆ部１１２を介して、ストップコンディションを生成して、フローを終了する。一方、制御部３１１は、通信が完了していない場合（Ｓ４７：Ｎｏ）には、ステップＳ４４の処理に戻る。
【００８７】
以上のように、実施の形態３によれば、マスター装置３１０及びスレーブ装置１３０のそれぞれにおいて、コマンド内容によって異常検出を行うためのパラメータの値を最適な値に設定し、その値を用いて異常が検出された場合には、それぞれが初期化を行うため、マスター装置３１０とスレーブ装置１３０との間に初期化したことを通知するための新たな信号線を追加する必要がなくなる。
【００８８】
実施の形態３では、異常検出部１３４、３１５は、ＳＣＬのローレベル時間を検出するために内部カウンタ１３４ａ、３１５ａを備えているが、ＳＣＬのローレベル時間を検出できる構成であればこれに限るものではない。
【００８９】
また、実施の形態３で説明されたマスター装置３１０に、実施の形態２で説明されたスレーブ装置２３０が接続されていてもよい。
【００９０】
実施の形態４．
次に、実施の形態４について説明する。図１に示されているように、実施の形態４に係る通信システム４００は、マスター装置４１０と、スレーブ装置２３０とを備える。実施の形態４に係る通信システム４００は、マスター装置４１０において、実施の形態２に係る通信システム２００と異なっている。実施の形態４では、マスター装置４１０において、リードの場合には、リードのコマンドを送信してからリードデータを受信するまでの時間と、リード用に設定されたパラメータで示される時間とが比較され、また、ライトの場合には、ライトのコマンドを送信してからライトデータを送信するまでの時間と、ライト用に設定されたパラメータで示される時間とが比較される。
【００９１】
図１４は、マスター装置４１０の構成を概略的に示すブロック図である。マスター装置４１０は、制御部４１１と、Ｉ／Ｆ部１１２と、コマンド保持部３１３と、パラメータ設定部４１４と、異常検出部４１５と、クロック生成部３１６と、初期化部３１７とを備える。実施の形態４におけるマスター装置４１０は、制御部４１１、パラメータ設定部４１４及び異常検出部４１５において、実施の形態３におけるマスター装置３１０と異なっている。なお、実施の形態４におけるマスター装置４１０では、制御部４１１と、異常検出部４１５とを接続する信号線であるＩＲＱ３及びＩＲＱ４が新たに設けられている。
【００９２】
制御部４１１は、ＩＩＣプロトコルに従った通信を制御する。
また、制御部４１１は、初期化部３１７からリセット信号を受け取ると、通信処理を初期化（リセット）し、再度、リセットされた通信処理を開始する。
さらに、制御部４１１は、ＩＩＣプロトコルに従ってスレーブ装置２３０と通信を行っている最中に、スレーブ装置２３０が通信の初期化（リセット）を行った場合には、初期化された通信を再開する処理を行う。
さらにまた、制御装置４１１は、Ｉ／Ｆ部１１２を介してスレーブ装置２３０へ送信するコマンドの内容をコマンド保持部３１３に与える。
【００９３】
また、制御部４１１は、スレーブ装置２３０に送信するコマンドの内容に応じたパラメータの値をパラメータ設定部４１４に通知する。なお、本実施の形態においては、コマンドが「リード」の場合のパラメータの値は、スレーブ装置２３０にコマンドを送信してから、このコマンドに対応するリードデータを受信するまでの時間に対応したしきい値である。このしきい値は、スレーブ装置２３０にコマンドを送信してから、このコマンドに対応するリードデータを受信するまでの最大時間に対応したものとすることができる。また、コマンドが「ライト」の場合のパラメータの値は、スレーブ装置２３０にコマンドを送信してから、このコマンドに対応するライトデータを送信するまでの時間に対応したしきい値である。このしきい値は、スレーブ装置２３０にコマンドを送信してから、このコマンドに対応するライトデータを送信するまでの最大時間に対応したものである。
【００９４】
さらに、制御部４１１は、Ｉ／Ｆ部１１２を介して、スタートコンディションを生成した場合に、コマンドの送信を示すコマンド送信通知を異常検出部４１５に与える。例えば、制御部４１１は、ＩＲＱ３において信号をアサートすることで、コマンド送信通知を行う。
また、制御部４１１は、Ｉ／Ｆ部１１２を介して、スレーブ装置２３０に「リード」のコマンドを与え、このコマンドに対するリードデータを受信した際に、リードデータを受信したことを示すリードデータ受信通知を異常検出部４１５に与える。例えば、制御部４１１は、Ｉ／Ｆ部１１２を介して、受け取ったリードデータを、制御部４１１内の受信バッファ４１１ｂに格納を開始した際（受信を開始した際）に、ＩＲＱ４において信号をアサートすることで、リードデータ受信通知を行う。
さらにまた、制御部４１１は、Ｉ／Ｆ部１１２を介して、スレーブ装置２３０に「ライト」のコマンドを与え、このコマンドに対するライトデータを送信した際に、ライトデータを送信したことを示すライトデータ送信通知を異常検出部４１５に与える。例えば、制御部４１１は、制御部４１１内の送信バッファ４１１ａにライトデータを格納し、このライトデータをＩ／Ｆ部１３７を介してマスター装置１１０に送信する処理を開始した際（送信を開始した際）に、ＩＲＱ４において信号をアサートすることで、ライトデータ送信通知を行う。
【００９５】
パラメータ設定部４１４は、コマンド保持部３１３に保持されているコマンドの内容を示す情報に応じて、通信異常を検出するためのパラメータの値を変更する。パラメータ設定部４１４は、コマンド保持部３１３からイネーブル信号を受け取った際に、異常検出部４１５にパラメータの値を設定する。なお、本実施の形態においては、通信異常を検出するためのパラメータの値は、送信開始又は受信開始までの最大時間に対応した値である。ここで、コマンド保持部３１３に保持されているコマンドの内容は「リード」又は「ライト」であるため、パラメータ設定部４１４は、コマンド保持部３１３に保持されているコマンドの内容が「リード」である場合と、これが「ライト」である場合とで、そのパラメータの値を異なるものとする。設定されるパラメータの値は、適宜変更することができるものとすることが望ましく、制御部４１１から与えられる。
【００９６】
異常検出部４１５は、コマンドに応じて行われる処理において時間を計測する。例えば、異常検出部４１５は、制御部４１１からのコマンド受信通知からの時間を計測する。異常検出部４１５は、計測された時間と、パラメータ設定部４１４により設定されたパラメータの値に対応する最大時間との比較を行う。そして、異常検出部４１５は、この計測時間が最大時間を越えた場合には、通信異常と判定し、初期化部３１７へ通信異常を通知する。
なお、異常検出部４１５は、制御部４１１からのリードデータ受信通知又はライトデータ送信通知を受けた場合には、時間の計測を終了する。
【００９７】
図１０に示されているように、異常検出部４１５は、内部カウンタ４１５ａと、比較部４１５ｂとを備える。
内部カウンタ４１５ａは、専用クロックを用いてＩＲＱ３の信号がアサートされてからの時間をカウントする。なお、パラメータ設定部４１４により設定される最大時間を示すパラメータの値は、内部カウンタ４１５ａの動作クロックである専用クロックでその最大時間をカウントした場合のカウント値となっている。また、内部カウンタ４１５ａは、ＩＲＱ４の信号がアサートされた場合には、カウントを停止する。
比較部４１５ｂは、内部カウンタ４１５ａでのカウント値が、パラメータ設定部４１４が設定したパラメータの値を超えると、通信異常を通知するための通信異常信号を初期化部３１７に与える。
【００９８】
図１５は、実施の形態４におけるマスター装置４１０での処理を示すフローチャートである。
【００９９】
制御部４１１は、Ｉ／Ｆ部１１２を介して、スタートコンディションを生成し、続けてスレーブアドレス及びコマンドの内容を送信する処理を行う（Ｓ５０）。
【０１００】
このとき、制御部４１１は、送信されるコマンドの内容をコマンド保持部３１３にも与える。コマンド保持部３１３は、与えられたコマンドの内容を示すように、レジスタの値を更新する（Ｓ５１）。リードの場合、レジスタの値は「１」であり、ライトの場合、レジスタの値は「０」である。そして、コマンド保持部３１３は、パラメータ設定部４１４にイネーブル信号を出力する。
【０１０１】
パラメータ設定部４１４は、コマンド保持部３１３からのイネーブル信号により、レジスタに保持されているコマンド内容ビットを参照する。そして、パラメータ設定部４１４は、参照したビット内容に応じて、通信異常と判定するための、送信開始又は受信開始までの最大時間に対応するパラメータの値を異常検出部４１５に設定する（Ｓ５２）。ここで、コマンド内容ビットの値が「１」の場合、パラメータ設定部４１４は、リード時に最適となる、処理の最大時間に対応するパラメータの値を異常検出部４１５に設定する。一方、コマンド内容ビットの値が「０」の場合、パラメータ設定部４１４は、ライト時に最適となる、処理の最大時間に対応するパラメータの値を異常検出部４１５に設定する。
【０１０２】
また、制御部４１１は、Ｉ／Ｆ部１１２を介して、スレーブ装置２３０にコマンドの送信を行った場合には、ＩＲＱ３の信号をアサートする。そして、異常検出部４１５の内部カウンタ４１５ａは、ＩＲＱ３のアサートを検知して、カウントを開始する（Ｓ５３）。
【０１０３】
次に、制御部４１１は、Ｉ／Ｆ部１１２を介して、スレーブ装置２３０からのＡＣＫ信号を受信する処理を行う（Ｓ５４）。ＡＣＫ信号が受信されると、制御部４１１は、ステップＳ５０でスレーブ装置２３０に送ったコマンドの内容に応じた処理を行う。
【０１０４】
次に、図１０に示されている異常検出部４１５では、専用クロックを用いてＩＲＱ３のアサートを検出してからの時間を内部カウンタ４１５ａでカウントする。そして、比較部４１５ｂは、内部カウンタ４１５ａでカウントされたカウント値が、パラメータ設定部４１４により設定された、処理の最大時間を示すパラメータの値を超えたか否かを確認する（Ｓ５５）。そして、比較部４１５ｂは、カウント値がパラメータの値を超えた場合（Ｓ５５：Ｙｅｓ）には、ステップＳ５６の処理に進み、カウント値がパラメータの値を超えていない場合（Ｓ５５：Ｎｏ）には、ステップＳ５７の処理に進む。
【０１０５】
ステップＳ５６では、比較部４１５ｂは、通信異常であると判断し、通信異常信号を初期化部３１７へ出力する。初期化部３１７は、異常検出部４１５からの通信異常信号がアサートされると制御部４１１を初期化するリセット信号を出力する。これにより、制御部４１１は、初期化され、再度、ＩＩＣ通信をスタートさせる。
【０１０６】
一方、ステップＳ５７では、制御部４１１は、スレーブ装置２３０との通信処理を継続する。
【０１０７】
そして、制御部４１１は、Ｉ／Ｆ部１１２を介して、スレーブ装置２３０との間の通信が実行されたか否かを確認する（Ｓ５８）。例えば、スレーブ装置２３０へのコマンドが「リード」である場合には、リードデータが受信バッファ４１１ｂに格納され始めたときに、スレーブ装置２３０との間の通信が実行されたと判断する。また、スレーブ装置２３０からのコマンドが「ライト」である場合には、送信バッファ４１１ａに格納されたライトデータの送信が開始されたときに、スレーブ装置２３０との間の通信が実行されたと判断する。そして、制御部４１１は、通信が実行されたと判断した場合（Ｓ５８：Ｙｅｓ）には、フローを終了し、通信が実行されていないと判断した場合（Ｓ５８：Ｎｏ）には、ステップＳ５５の処理に戻る。なお、制御部４１１は、通信が実行されたと判断した場合（Ｓ５８：Ｙｅｓ）には、ＩＲＱ４の信号をアサートする。異常検出部４１５の内部カウンタ４１５ａは、ＩＲＱ４のアサートを検出するとカウントを停止する。
【０１０８】
以上のように、実施の形態４に係る通信システム４００によれば、マスター装置４１０において、異常検出を行うためのパラメータとして、マスター装置４１０がコマンド送信時にアサートされるコマンド送信割り込みと、受信バッファ４１１ｂにリードデータが格納され始めた場合にアサートされる受信バッファ割り込みと、送信バッファ４１１ａに格納されているライトデータが送信され始めた場合にアサートされる送信バッファ割り込みとを使用するため、マスター装置４１０からの実際のコマンド送信からデータの送受信実行までの正確な間隔を測定することができる。
【０１０９】
実施の形態４では、異常検出部４１５は、ＩＲＱ３からカウントを開始する内部カウンタ４１５ａを備えているが、ＩＲＱ３からの処理時間を計測することができる構成であれば、これに限るものではない。
【０１１０】
また、実施の形態４で説明されたマスター装置４１０に、実施の形態１で説明されたスレーブ装置１３０が接続されていてもよい。
【０１１１】
実施の形態４においては、コマンドの内容がリードである場合には、パラメータ設定部４１４が設定するパラメータの値は、コマンドを送信してから、リードデータの受信が開始されるまでの最大時間に対応する値であるが、このような値に限定されるものではない。例えば、パラメータ設定部４１４が設定するパラメータの値は、コマンドを送信してから、リードデータの受信を完了するまでの最大時間としてもよい。このような場合には、例えば、制御部４１１は、制御部４１１内の受信バッファ４１１ｂにリードデータが格納され、図示されていないメモリ等にリードデータを出力することで、受信バッファ４１１ｂが空になった際に、ＩＲＱ４において信号をアサートすることで、リードデータ受信通知を行う。
また、実施の形態４においては、コマンドの内容がライトである場合には、パラメータ設定部４１４が設定するパラメータの値は、コマンドを送信してから、ライトデータの送信が開始されるまでの最大時間に対応する値であるが、このような値に限定されるものではない。例えば、パラメータ設定部４１４が設定するパラメータの値は、コマンドを送信してから、ライトデータの送信が完了するまでの最大時間としてもよい。このような場合には、例えば、制御部４１１は、制御部４１１内の送信バッファ４１１ａにライトデータを格納し、Ｉ／Ｆ部１１２を介して、このライトデータをスレーブ装置に送信することで、送信バッファ４１１ａが空になった際に、ＩＲＱ４において信号をアサートすることで、ライトデータ送信通知を行う。
【０１１２】
以上に記載された実施の形態４においては、制御部１３１、２３１、３１１、４１１から、パラメータ設定部１３３、２３３、３１４、４１４にパラメータの値を通知しているが、ライトの場合及びリードの場合のそれぞれのパラメータの値が固定値であってもよい。このような場合には、パラメータ設定部４１４の図示してはいないメモリにパラメータの値が記憶されていればよい。
【符号の説明】
【０１１３】
１００，２００，３００，４００：通信システム、  １１０，３１０，４１０：マスター装置、  １１１，３１１，４１１：制御部、  ３１１ａ，４１１ａ：送信バッファ、  ３１１ｂ，４１１ｂ：受信バッファ、  １１２：Ｉ／Ｆ部、  ３１３：コマンド保持部、  ３１４：パラメータ設定部、  ３１５，４１５：異常検出部、  ３１５ａ，４１５ａ：内部カウンタ、  ３１５ｂ，４１５ｂ：比較部、  ３１６：クロック生成部、  ３１７：初期化部、  １３０，２３０：スレーブ装置、  １３１，２３１：制御部、  １３１ａ，２３１ａ：送信バッファ、  １３１ｂ，２３１ｂ：受信バッファ、  １３２：コマンド保持部、  １３２ａ：スタートコンディション認識部、  １３２ｂ：内部カウンタ、  １３２ｃ：レジスタ、  １３３：パラメータ設定部、  １３４，２３４：異常検出部、  １３４ａ，２３４ａ：内部カウンタ、  １３４ｂ，２３４ｂ：比較部、  １３５：クロック生成部、  １３６：初期化部、  １３７：Ｉ／Ｆ部、  １３８：演算処理部。
【図１】
2013046734.tif 000003
【図２】
2013046734.tif 000004
【図３】
2013046734.tif 000005
【図４】
2013046734.tif 000006
【図５】
2013046734.tif 000007
【図６】
2013046734.tif 000008
【図７】
2013046734.tif 000009
【図８】
2013046734.tif 000010
【図９】
2013046734.tif 000011
【図１０】
2013046734.tif 000012
【図１１】
2013046734.tif 000013
【図１２】
2013046734.tif 000014
【図１３】
2013046734.tif 000015
【図１４】
2013046734.tif 000016
【図１５】
2013046734.tif 000017
【手続補正書】
【提出日】平成25年10月4日(2013.10.4)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容毎に、異なる値を設定するパラメータ設定部と、
前記パラメータ設定部により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えること
を特徴とするスレーブ装置。
【請求項２】
前記パラメータ設定部は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項１に記載のスレーブ装置。
【請求項３】
前記マスター装置と、シリアルクロックライン及びシリアルデータラインを介して通信を行うインターフェース部をさらに備え、
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出部は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項１又は２に記載のスレーブ装置。
【請求項４】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを受信してからライトデータを受信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを受信してからライトデータを受信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを受信してからリードデータを送信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを受信してからリードデータを送信するまで、時間を計測すること
を特徴とする請求項１又は２に記載のスレーブ装置。
【請求項５】
前記異常検出部は、時間を計測するカウンタを備えており、前記カウンタの値が、前記パラメータの値を超えた場合に、異常を検出すること
を特徴とする請求項１から４の何れか一項に記載のスレーブ装置。
【請求項６】
前記異常検出部が異常を検出した場合に、前記マスター装置との間の通信をリセットする初期化部をさらに備えること
を特徴とする請求項１から５の何れか一項に記載のスレーブ装置。
【請求項７】
ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容毎に、異なる値を設定するパラメータ設定部と、
前記パラメータ設定部により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えること
を特徴とするマスター装置。
【請求項８】
前記パラメータ設定部は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項７に記載のマスター装置。
【請求項９】
前記スレーブ装置と、シリアルクロックライン及びシリアルデータラインを介して通信を行うインターフェース部をさらに備え、
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出部は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項７又は８に記載のマスター装置。
【請求項１０】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを送信してからライトデータを送信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを送信してからライトデータを送信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを送信してからリードデータを受信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを送信してからリードデータを受信するまで、時間を計測すること
を特徴とする請求項７又は８に記載のマスター装置。
【請求項１１】
前記異常検出部は、時間を計測するカウンタを備えており、前記カウンタの値が、前記パラメータの値を超えた場合に、異常を検出すること
を特徴とする請求項７から１０の何れか一項に記載のマスター装置。
【請求項１２】
前記異常検出部が異常を検出した場合に、前記スレーブ装置との間の通信をリセットする初期化部をさらに備えること
を特徴とする請求項７から１１の何れか一項に記載のマスター装置。
【請求項１３】
ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置が行う通信方法であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容毎に、異なる値を設定するパラメータ設定過程と、
前記パラメータ設定過程により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、
を有することを特徴とする通信方法。
【請求項１４】
前記パラメータ設定過程は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項１３に記載の通信方法。
【請求項１５】
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記マスター装置と通信を行うためのシリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出過程は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項１３又は１４に記載の通信方法。
【請求項１６】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを受信してからライトデータを受信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを受信してからライトデータを受信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを受信してからリードデータを送信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを受信してからリードデータを送信するまで、時間を計測すること
を特徴とする請求項１３又は１４に記載の通信方法。
【請求項１７】
ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置が行う通信方法であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容毎に、異なる値を設定するパラメータ設定過程と、
前記パラメータ設定過程により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、を有すること
を特徴とする通信方法。
【請求項１８】
前記パラメータ設定過程は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項１７に記載の通信方法。
【請求項１９】
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記スレーブ装置と通信を行うためのシリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出過程は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項１７又は１８に記載の通信方法。
【請求項２０】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを送信してからライトデータを送信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを送信してからライトデータを送信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを送信してからリードデータを受信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを送信してからリードデータを受信するまで、時間を計測すること
を特徴とする請求項１７又は１８に記載の通信方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明の一態様に係るスレーブ装置は、ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容毎に、異なる値を設定するパラメータ設定部と、前記パラメータ設定部により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えることを特徴とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
また、本発明の一態様に係るマスター装置は、ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容毎に、異なる値を設定するパラメータ設定部と、前記パラメータ設定部により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えることを特徴とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
さらに、本発明の一態様に係る通信方法は、ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置が行う通信方法であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容毎に、異なる値を設定するパラメータ設定過程と、前記パラメータ設定過程により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、を有することを特徴とする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
さらにまた、本発明の一態様に係る通信方法は、ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置が行う通信方法であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容毎に、異なる値を設定するパラメータ設定過程と、前記パラメータ設定過程により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、を有することを特徴とする。
【手続補正書】
【提出日】平成26年7月29日(2014.7.29)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容がリードであるか、ライトであるかによって、異なる値を設定するパラメータ設定部と、
前記パラメータ設定部により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えること
を特徴とするスレーブ装置。
【請求項２】
前記パラメータ設定部は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項１に記載のスレーブ装置。
【請求項３】
前記マスター装置と、シリアルクロックライン及びシリアルデータラインを介して通信を行うインターフェース部をさらに備え、
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出部は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項１又は２に記載のスレーブ装置。
【請求項４】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを受信してからライトデータを受信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを受信してからライトデータを受信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを受信してからリードデータを送信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを受信してからリードデータを送信するまで、時間を計測すること
を特徴とする請求項１又は２に記載のスレーブ装置。
【請求項５】
前記異常検出部は、時間を計測するカウンタを備えており、前記カウンタの値が、前記パラメータの値を超えた場合に、異常を検出すること
を特徴とする請求項１から４の何れか一項に記載のスレーブ装置。
【請求項６】
前記異常検出部が異常を検出した場合に、前記マスター装置との間の通信をリセットする初期化部をさらに備えること
を特徴とする請求項１から５の何れか一項に記載のスレーブ装置。
【請求項７】
ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容がリードであるか、ライトであるかによって、異なる値を設定するパラメータ設定部と、
前記パラメータ設定部により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えること
を特徴とするマスター装置。
【請求項８】
前記パラメータ設定部は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項７に記載のマスター装置。
【請求項９】
前記スレーブ装置と、シリアルクロックライン及びシリアルデータラインを介して通信を行うインターフェース部をさらに備え、
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出部は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項７又は８に記載のマスター装置。
【請求項１０】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを送信してからライトデータを送信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを送信してからライトデータを送信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを送信してからリードデータを受信するまでの時間に対応したしきい値であり、
前記異常検出部は、前記コマンドを送信してからリードデータを受信するまで、時間を計測すること
を特徴とする請求項７又は８に記載のマスター装置。
【請求項１１】
前記異常検出部は、時間を計測するカウンタを備えており、前記カウンタの値が、前記パラメータの値を超えた場合に、異常を検出すること
を特徴とする請求項７から１０の何れか一項に記載のマスター装置。
【請求項１２】
前記異常検出部が異常を検出した場合に、前記スレーブ装置との間の通信をリセットする初期化部をさらに備えること
を特徴とする請求項７から１１の何れか一項に記載のマスター装置。
【請求項１３】
ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置が行う通信方法であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容がリードであるか、ライトであるかによって、異なる値を設定するパラメータ設定過程と、
前記パラメータ設定過程により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、
を有することを特徴とする通信方法。
【請求項１４】
前記パラメータ設定過程は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項１３に記載の通信方法。
【請求項１５】
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記マスター装置と通信を行うためのシリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出過程は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項１３又は１４に記載の通信方法。
【請求項１６】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを受信してからライトデータを受信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを受信してからライトデータを受信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを受信してからリードデータを送信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを受信してからリードデータを送信するまで、時間を計測すること
を特徴とする請求項１３又は１４に記載の通信方法。
【請求項１７】
ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置が行う通信方法であって、
異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容がリードであるか、ライトであるかによって、異なる値を設定するパラメータ設定過程と、
前記パラメータ設定過程により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、を有すること
を特徴とする通信方法。
【請求項１８】
前記パラメータ設定過程は、前記コマンドの内容がライトである場合に設定されるパラメータの値に対応する時間よりも、前記コマンドの内容がリードである場合に設定されるパラメータの値に対応する時間を長くすること
を特徴とする請求項１７に記載の通信方法。
【請求項１９】
前記コマンドの内容がライトである場合には、前記パラメータの値は、ライトデータを処理する際に、前記スレーブ装置と通信を行うためのシリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記コマンドの内容がリードである場合には、前記パラメータの値は、リードデータを処理する際に、前記シリアルクロックラインの信号が所定のレベルを維持している時間に対応したしきい値であり、
前記異常検出過程は、前記シリアルクロックラインの信号が所定のレベルを維持している時間を計測すること
を特徴とする請求項１７又は１８に記載の通信方法。
【請求項２０】
前記コマンドの内容がライトである場合には、
前記パラメータの値は、前記コマンドを送信してからライトデータを送信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを送信してからライトデータを送信するまで、時間を計測し、
前記コマンドの内容がリードである場合には、
前記パラメータの値は、前記コマンドを送信してからリードデータを受信するまでの時間に対応したしきい値であり、
前記異常検出過程は、前記コマンドを送信してからリードデータを受信するまで、時間を計測すること
を特徴とする請求項１７又は１８に記載の通信方法。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００７
【補正方法】変更
【補正の内容】
【０００７】
本発明の一態様に係るスレーブ装置は、ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容がリードであるか、ライトであるかによって、異なる値を設定するパラメータ設定部と、前記パラメータ設定部により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えることを特徴とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００８
【補正方法】変更
【補正の内容】
【０００８】
また、本発明の一態様に係るマスター装置は、ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容がリードであるか、ライトであるかによって、異なる値を設定するパラメータ設定部と、前記パラメータ設定部により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出部と、を備えることを特徴とする。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
さらに、本発明の一態様に係る通信方法は、ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置が行う通信方法であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置から送信されるコマンドの内容がリードであるか、ライトであるかによって、異なる値を設定するパラメータ設定過程と、前記パラメータ設定過程により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、を有することを特徴とする。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
さらにまた、本発明の一態様に係る通信方法は、ＩＩＣプロトコルに従ってマスターモードで動作するマスター装置が行う通信方法であって、異常を検出するためのパラメータの値として、前記ＩＩＣプロトコルに従ってスレーブモードで動作するスレーブ装置に送信するコマンドの内容がリードであるか、ライトであるかによって、異なる値を設定するパラメータ設定過程と、前記パラメータ設定過程により設定された前記パラメータの値に対応する時間と、前記コマンドに応じて行われる処理において計測される時間とを比較することにより異常を検出する異常検出過程と、を有することを特徴とする。
【国際調査報告】
2013046734.tif 000018
2013046734.tif 000019
2013046734.tif 000020
2013046734.tif 000021