(57)【特許請求の範囲】
【請求項１】
通信バスのタイムアウトを検出する異常検出装置であって、
前記通信バスに接続され、前記通信バスを伝送する信号が第一の論理レベルから第二の論理レベルへ遷移するタイミングで初期化され、前記通信バスを伝送する信号が第一の論理レベルとなる時間を計測する伝送時間計測手段と、
前記伝送時間計測手段で計測された前記時間が第一のしきい値を超えた場合には、前記通信バスの異常を示す第一の異常検出信号を出力する第一の異常検出手段と、
前記伝送時間計測手段で計測された前記時間を、所定の間隔で累積加算する累積加算手段と、
前記累積加算手段で累積加算されることによって得られた累積時間が第二のしきい値を超えた場合には、前記通信バスの異常を示す異常検出信号を出力する第二の異常検出手段とを備え、
前記累積加算手段は、前記伝送時間計測手段に前記累積時間を供給し、
前記伝送時間計測手段は、供給された前記累積時間を初期値として前記計測を継続して行うことを特徴とする通信バスの異常検出装置。
【請求項２】
通信バスに接続されたマイクロコンピュータであって、
前記通信バスに接続され、前記通信バスを伝送する信号が第一の論理レベルから第二の論理レベルへ遷移するタイミングで初期化され、前記通信バスを伝送する信号が第一の論理レベルとなる時間を計測する伝送時間計測手段と、
前記伝送時間計測手段で計測された前記時間が第一のしきい値を超えた場合には、前記通信バスの異常を示す第一の異常検出信号を出力する第一の異常検出手段と、
前記伝送時間計測手段で計測された前記時間を、所定の間隔で累積加算する累積加算手段と、
前記累積加算手段で累積加算されることによって得られた累積時間が第二のしきい値を超えた場合には、前記通信バスの異常を示す異常検出信号を出力する第二の異常検出手段とを備え、
前記累積加算手段は、前記伝送時間計測手段に前記累積時間を供給し、
前記伝送時間計測手段は、供給された前記累積時間を初期値として前記計測を継続して行うことを特徴とするマイクロコンピュータ。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、通信バスを介した通信の異常を検出する通信バスの異常検出装置と、該通信バスに接続されたマイクロコンピュータ（マイコン）に関するものである。
【０００２】
【従来の技術】
近年、様々な通信プロトコルを有する半導体装置が開発されていると共に、複数の半導体装置を通信バスにより相互に接続し、そのうちのある一つの半導体装置がマスタとして動作する時には、他の半導体装置を該マスタとして動作する半導体装置に対してスレイブとして、すなわち従属的に動作させるようなシステムが開発されている。ここで、上記システムにおける該通信バスは「マルチマスタ通信バス」と呼ばれている。
【０００３】
そして、上記のようなシステムにおける通信状態を監視するための回路は、該通信ひいてはシステムの信頼性を確保する上で重要な要素となってきているが、監視方法としては、従来よりタイムアウト検出という手法が採用されている。ここで、「タイムアウト検出」とは、一定時間内に次の情報が受信されない場合には、通信回線に障害等の異常状態が発生したものとみなす手法をいう。
【０００４】
しかしながら、従来のタイムアウト検出では、半導体装置からの応答時間や、通信バスの混雑状態のみを監視することとしていた。また、従来のタイムアウト検出は、簡易的にソフトウェアにより実現されていたため、通信の信頼性は最低限確保されているに過ぎなかった。
【０００５】
ところが近年、より複雑化してきている上記システムにおける通信バスにおいては、予期せぬ通信異常や通信の遅延などが生じた場合、システム全体にその影響が及んでしまう可能性がでてきているため、該通信についてより高い信頼性の確保が望まれる。
【０００６】
なお、従来においては、かかる信頼性を向上させるため、例えば該通信バスの監視頻度を上げるようなプログラムを作成し、ＣＰＵを有するデバイス上で該プログラムを実行するといった対策が施されていたが、該プログラムを含むソフトウェアへの負荷が大きくなってしまうという問題があり、またシステムの処理能力によって通信バスの状態を確認（監視）する頻度が制限されることから、タイムアウト検出の精度が悪くなってしまうなどの問題があった。
【０００７】
【発明が解決しようとする課題】
本発明は、上述の問題を解消するためになされたもので、通信バスを介した通信の信頼性を高めるための通信バスの異常検出装置と、該通信バスに接続されたマイクロコンピュータとを提供することを目的とする。
【０００８】
【課題を解決するための手段】
上記の目的は、前記通信バスに接続され、、前記通信バスを伝送する信号が第一の論理レベルから第二の論理レベルへ遷移するタイミングで初期化され、前記通信バスを伝送する信号が第一の論理レベルとなる時間を計測する伝送時間計測手段と、前記伝送時間計測手段で計測された前記時間が第一のしきい値を超えた場合には、前記通信バスの異常を示す第一の異常検出信号を出力する第一の異常検出手段と、前記伝送時間計測手段で計測された前記時間を、所定の間隔で累積加算する累積加算手段と、前記累積加算手段で累積加算されることによって得られた累積時間が第二のしきい値を超えた場合には、前記通信バスの異常を示す異常検出信号を出力する第二の異常検出手段とを備え、前記累積加算手段は、前記伝送時間計測手段に前記累積時間を供給し、前記伝送時間計測手段は、供給された前記累積時間を初期値として前記計測を継続して行うことにより達成される。このような手段によれば、通信バスを介した通信の状態を伝送時間計測手段により常に監視することができる。
【００１１】
また、上記累積時間を尺度とした異常検出を容易に実現することができ、また、伝送時間計測手段において多様な方法による計測を行うことができる。
【００１２】
また、本発明の目的は、通信バスに接続されたマイクロコンピュータであって、通信バスに接続され、前記通信バスを伝送する信号が第一の論理レベルから第二の論理レベルへ遷移するタイミングで初期化され、前記通信バスを伝送する信号が第一の論理レベルとなる時間を計測する伝送時間計測手段と、前記伝送時間計測手段で計測された前記時間が第一のしきい値を超えた場合には、前記通信バスの異常を示す第一の異常検出信号を出力する第一の異常検出手段と、前記伝送時間計測手段で計測された前記時間を、所定の間隔で累積加算する累積加算手段と、前記累積加算手段で累積加算されることによって得られた累積時間が第二のしきい値を超えた場合には、前記通信バスの異常を示す異常検出信号を出力する第二の異常検出手段とを備え、前記累積加算手段は、前記伝送時間計測手段に前記累積時間を供給し、前記伝送時間計測手段は、供給された前記累積時間を初期値として前記計測を継続して行うことにより達成される。このような手段によれば、マイクロコンピュータによる通信バスを介した通信の状態を伝送時間計測手段により常に監視することができる。
【００１３】
【発明の実施の形態】
以下において、本発明の実施の形態を図面を参照して詳しく説明する。なお、図中同一符号は同一又は相当部分を示す。
［実施の形態１］
図１は、本発明の実施の形態１に係る通信バスの異常検出装置１３を備えたマイコン３の構成を示す図である。図１に示されるように、マイコン３は第一システム１に含まれ、第一システム１は通信バス２に接続される。なお、通信バス２には、通信集積回路（通信ＩＣ）２５や、第二システム２１に含まれる通信ＩＣ２３、第三システム３１に含まれる通信ＩＣ３３、第ｎシステム２７（ｎは整数）に含まれる通信ＩＣ２９が接続される。
【００１４】
そして、上記マイコン３は、タイムアウト検出バスライン４と、中央演算処理装置（ＣＰＵ）５と、外部制御マクロ７，９と、通信マクロ１１と、異常検出装置１３とを含む。ここで、外部制御マクロ７，９と通信マクロ１１とはＣＰＵ５に接続され、タイムアウト検出バスライン４は通信マクロ１１と通信バス２とを接続する。また、異常検出装置１３は、通信マクロ１１及びタイムアウト検出バスライン４に接続される。なおさらに、外部制御マクロ７はマイコン３の外部に配設された集積回路（ＩＣ）１５，１７に接続され、外部制御マクロ９は同じくマイコン３の外部に配設されたメモリ１９や、第二システム２１に接続される。
【００１５】
上記のような構成を有するマイコン３において、通信マクロ１１は、マイコン３と外部システム、すなわち例えば第二システム２１や第三システム３１など、との間の通信をＣＰＵ５による命令に応じて制御する。また、外部制御マクロ７は、ＣＰＵ５による命令に応じてＩＣ１５，１７を制御する。さらに、外部制御マクロ９は、ＣＰＵ５による命令に応じてメモリ１９に対するデータの読み書きを実行し、あるいは第二システム２１へアクセスする。
【００１６】
図２は、図１に示された異常検出装置１３の基本的な構成を示す図である。図２に示されるように、異常検出装置１３はバス状態監視回路３５と、タイマカウンタ３７，４３と、第一レジスタ３９及び第二レジスタ４５と、比較器４１，４７と、選択回路４９とを含む。ここで、バス状態監視回路３５はタイムアウト検出バスライン４に接続され、マイコン３の外部から供給されるソースクロックが入力される。また、選択回路４９には通信マクロ１１から通信ステータス信号が供給され、かつ、通信マクロ１１またはタイムアウト検出バスライン４より第一イベント信号から第ｎイベント信号までの信号が供給される。
【００１７】
なお、上記通信ステータス信号は、他のシステムに対する相対的な動作の種類に応じて、通信状態を監視する方法を選択するための信号である。また上記イベント信号は、タイマカウンタ３７，４３を初期化するタイミングを決定するための信号であり、例えば第一イベント信号はタイムアウト検出バスライン４を伝送する信号がロウ（Ｌ）レベルからハイ（Ｈ）レベルへ遷移するタイミング毎に活性化される信号であり、第二イベント信号はタイムアウト検出バスライン４を伝送するデータが１バイトとなる度に活性化される信号であるとされる。
【００１８】
また、タイマカウンタ３７は、バス状態監視回路３５及び選択回路４９に接続され、比較器４１がタイマカウンタ３７及び第一レジスタ３９に接続される。またさらに、タイマカウンタ４３は、タイマカウンタ３７と同様にバス状態監視回路３５及び選択回路４９に接続され、比較器４７がタイマカウンタ４３及び第二レジスタ４５に接続される。
【００１９】
次に、図２に示された異常検出装置１３の動作を説明する。バス状態監視回路３５は、タイムアウト検出バスライン４においてタイムアウトが検出されるか否かを常に監視し、タイムアウトを自動検出する。またこの際の検出頻度は、供給されるソースクロックの周波数に応じて決定され、該周波数を調整することによりタイムアウトの検出誤差を低減することができる。
【００２０】
また、タイマカウンタ３７，４３は、バス状態監視回路３５によりタイムアウトが検出された場合においてのみカウント動作を行い、タイムアウトが検出された累積時間をカウントする。そしてこのとき、タイマカウンタ３７，４３はそれぞれ、通信ステータス信号に応じて選択回路４９から選択的に供給されるイベント信号により初期化される。これより、タイマカウンタ３７，４３によって通信ステータス信号に応じた方法で累積時間のカウントがなされ、他の回路やソフトウェア等によらずタイムアウト検出を実現できる。
【００２１】
すなわち例えば、選択回路４９において通信ステータス信号により第一イベント信号が選択され、タイマカウンタ３７へ供給されたときには、タイマカウンタ３７はタイムアウト検出バスライン４を伝送する信号がロウ（Ｌ）レベルからハイ（Ｈ）レベルへ遷移するタイミング毎に初期化される。従って、このような場合には、伝送する信号がロウレベルとなる一期間の長さがカウントされる。
【００２２】
また、同様に選択回路４９において通信ステータス信号により第二イベント信号が選択され、タイマカウンタ４３へ供給されたときには、タイマカウンタ４３はタイムアウト検出バスライン４を１バイトのデータが伝送する度に初期化される。従って、このような場合には、１バイトのデータが伝送される間に信号がロウレベルとなった期間の長さが累積的にカウントされる。
【００２３】
またさらに、第一レジスタ３９及び第二レジスタ４５にはそれぞれ、予め所定値が格納される。そして比較器４１，４７は、タイマカウンタ３７，４３から供給されたカウント値と該所定値とを比較し、該カウント値が該所定値に達した場合にタイムアウト検出信号をタイムアウト検出バスライン４へ出力する。これより、任意の値を上記タイマカウンタ３７，４３へ格納することにより、所望のタイムアウト検出時間を設定することができる。
【００２４】
また上記のように、異常検出装置１３内にタイマカウンタとレジスタ及び比較器からなるユニットが複数設けられることにより、伝送する信号がロウレベルとなる期間を並列的に異なる方法でカウントすることができる。従って、他の通信回路との通信ラインの競合により通信ステータスが確定していない場合には、伝送する信号がロウレベルとなる期間を並列的に異なる方法で暫定的にカウントしておき、通信ステータスが確定した時点でいずれかのカウントを採用することによって、最終的に、動作状態に応じた最適なタイムアウト検出を実現することもできる。
【００２５】
次に、図２に示された異常検出装置１３のより具体的な例を、図３を参照しつつ説明する。図３に示されるように、異常検出装置１３はタイマカウンタ３７，４３，６７と、第一レジスタ３９と、第二レジスタ４５と、第三レジスタ６９と、比較器４１，４７，７１と、選択回路４９と、ハイ（Ｈ）検出回路５１と、入力部５２と、第一イベント発生回路５３と、第二イベント発生回路５５と、第三イベント発生回路５７と、分周器５９と、ロウ検出回路６０と、１０分周器６２と、２０分周器６３とを備え、ロウ検出部６０はロウ検出回路６１と１０分周器６２とを含む。なお、上記分周器５９は異常検出装置１３の外部に配設されるようにしてもよい。
【００２６】
以下において、図３に示された異常検出装置１３の動作を説明する。まず、分周器５９は１分周から６分周まで行い得るが、通信マクロ１１から供給される切替信号により該分周率が選択される。そして分周器５９は、選択された該分周率によって入力されるソースクロックを分周し、ロウ検出回路６１へ出力する。
【００２７】
ロウ検出回路６１は、タイムアウト検出バスライン４の状態を監視するが、具体的には、タイムアウト検出バスライン４を伝送するデータがロウレベルとなったときに分周器５９から供給されたクロック信号に応じてカウントアップパルスを発生する。次に、このカウントアップパルスは１０分周器６２において１０分周されると共に、上記ソースクロックを１０分周したときのロウレベルの幅以下の幅を有するロウレベルの信号が除去される。そして、このようなフィルタリングにより所定の分解能が選択され、ノイズなどによる誤動作が回避される。
【００２８】
また、１０分周器６２から出力されたクロック信号は、２０分周器６３及び１０分周器６２へ供給され、それぞれ２０分周あるいは１０分周される。ここで、タイマカウンタ３７は２０分周器６３から供給された信号に応じてカウントアップし、カウントされた値と第一レジスタ３９に予め格納された設定値とが比較器４１により比較される。そして、この比較において該カウント値が該設定値に一致するものと判定されたときには、比較器４１は第一タイムアウト検出信号をタイムアウト検出バスライン４へ出力する。なお、この第一タイムアウト検出信号は、各システムの通信マクロ１１や、場合によっては通信ＩＣ２３，２５，２９，３３により認知され、通信が中断される。
【００２９】
また、同様にタイマカウンタ４３は１０分周器６２から供給された信号に応じてカウントアップし、カウントされた値と第二レジスタ４５に予め格納された設定値とが比較器４７により比較される。そして、この比較において該カウント値が該設定値に一致するものと判定されたときには、比較器４７は第二タイムアウト検出信号をタイムアウト検出バスライン４へ出力する。
【００３０】
そして、タイマカウンタ６７は２０分周器６３から供給された信号に応じてカウントアップし、カウントされた値と第三レジスタ６９に予め格納された設定値とが比較器７１により比較される。そして、この比較において該カウント値が該設定値に一致するものと判定されたときには、比較器７１は第三タイムアウト検出信号をタイムアウト検出バスライン４へ出力する。
【００３１】
一方、ハイ検出回路５１は、タイムアウト検出バスライン４にハイレベルのデータが伝送されたことを検出して、ハイ検出信号を生成する。また、入力部５２には通信マクロ１１またはタイムアウト検出バスライン４からスタート検出信号とストップ検出信号及びアクノリッジ検出信号が供給される。そして、上記ハイ検出信号と、スタート検出信号、ストップ検出信号及びアクノリッジ検出信号に応じて、第一イベント発生回路５３と第二イベント発生回路５５及び第三イベント発生回路５７によって第一から第三のイベント信号が生成される。
【００３２】
具体的には、第一イベント発生回路５３においては、スタート検出信号が入力された時点からストップ検出信号が入力される時点までの間においてタイムアウト検出バスライン４を伝送する信号がロウ（Ｌ）レベルからハイ（Ｈ）レベルへ遷移するタイミング毎に活性化される第一イベント信号が生成される。また、第二イベント発生回路５５においては、スタート検出信号が入力された時点からストップ検出信号が入力される時点までの間においてタイムアウト検出バスライン４を伝送するデータが１バイトとなる度に活性化される第二イベント信号が生成される。さらに、第三イベント発生回路５７においては、スタート検出信号が入力された時点及びストップ検出信号が入力された時点のみにおいて活性化される第三イベント信号が生成される。
【００３３】
さらに、選択回路４９は通信マクロ１１から供給される通信ステータス信号に応じて、上記第一から第三までのイベント信号の中から選択されたイベント信号を各タイマカウンタ３７，４３，６７と１０分周器６２及び２０分周器６３へ供給する。そして、活性化されたこれらのイベント信号により、該タイマカウンタ３７，４３，６７と１０分周器６２及び２０分周器６３がそれぞれ初期化（リセット）される。
【００３４】
なお、上記通信ステータス信号は、該マイコン３が他のシステムに対してマスタとして主導的に動作するか、あるいはスレーブとして従属的に動作するかを示す信号であり、該信号がマスタを示す場合には第二イベント信号がタイマカウンタ４３及び１０分周器６２へ供給され、スレーブを示す場合には第三イベント信号がタイマカウンタ６７及び２０分周器６３へ供給される。
【００３５】
以上より、図３に示された異常検出装置１３によれば、タイムアウト検出バスライン４を伝送する信号がロウ（Ｌ）レベルとなる時間がタイマカウンタ３７，４３，６７で並列的にカウントされると共に、第一から第三のイベント信号によってそれぞれ異なるタイミングで初期化（リセット）が実行されるため、マイコン３の動作状態に応じたタイムアウト検出がハード的構成により実現される。
【００３６】
従って上記のように、タイムアウト検出がハード的構成により実現されるため、タイムアウト検出バスライン４の異常を検出するプログラムを簡略化することができ、ソフトウェアにおける負担を軽減して第一システム１全体の動作の高速化を図ることができる。
【００３７】
なお、図３に示された異常検出装置１３は、図４に示されるように簡略化することもできる。すなわち、タイマカウンタ３７を一つだけ備え、バス状態監視回路３５から供給される信号によって所定のカウント値までカウントアップされた時点でタイマカウンタ３７は、タイムアウト検出信号を出力するような構成にしてもよい。そして、この場合においても選択回路７３から供給されるイベント信号の種類に応じたタイミングで、タイマカウンタ３７が初期化される。このような構成によれば、図２に示された異常検出回路１３に比して第一レジスタ３９や比較器４１が不要とされ、異常検出装置１３の回路規模を低減することができる。
【００３８】
またさらには、図５に示されるように、イベント信号が直接タイマカウンタへ供給されるような構成を有する異常検出装置７７とすることもできる。すなわち例えば、第一イベント信号が選択回路を介さず直接タイマカウンタ３７に供給され、同様に第ｎイベント信号が直接タイマカウンタ４３へ供給されるような構成とすることができる。このような構成によれば、選択回路が不用とされ、さらに異常検出装置７７の回路規模を低減することができる。なお、図５に示された異常検出装置７７においては、タイマカウンタ３７は第一イベント信号に応じてのみ初期化され、タイマカウンタ４３は第ｎイベント信号に応じてのみ初期化される。
【００３９】
また、図６に示されるように、図５に示されたタイマカウンタ３７に対して第一コンペアレジスタ３９が並設され、かつタイマカウンタ３７及び第一コンペアレジスタ３９に接続される比較器４１が配設されると共に、タイマカウンタ４３の代わりにリロードタイマ７９が備えられた異常検出装置８５とすることができる。ここで、リロードタイマ７９は、リロードレジスタ８１と、リロードレジスタ８１に接続されたダウンカウンタ８３とを含む。
【００４０】
そして、上記リロードタイマ７９は、供給される第ｎイベント信号に応じて初期化された上で起動され、リロードレジスタ８１に格納された設定値がダウンカウンタ８３にロードされる。そして、ダウンカウンタ８３により該設定値からカウントダウンされる。そして、該カウントダウンの結果としてカウント値が０以下となるアンダーフロー状態となった時に、ダウンカウンタ８３は第ｎタイムアウト検出信号を出力する。このように、リロードタイマを用いた構成によっても、所望のタイムアウト検出を実現することができる。
【００４１】
ここでさらには、図７に示されるように、タイムアウト検出バスライン４を伝送する信号が第一イベント信号及び第ｎイベント信号として、タイマカウンタ３７及びダウンカウンタ８３へ供給されるような構成を有する異常検出装置８７とすることもできる。このような構成においては、タイムアウト検出バスライン４を伝送するデータがハイレベルからロウレベルとなるいわゆる立ち下がりのタイミングにおいて、タイマカウンタ３７及びダウンカウンタ８３が起動される。
【００４２】
そして、タイマカウンタ３７は初期化信号のみで初期化され、第一レジスタ３９に予め設定されたＬ幅累積時間のしきい値とタイマカウンタ３７によるカウント値とが比較器４１により比較される。そして、該カウント値が該しきい値に到達した時に、比較器４１から第一タイムアウト検出信号が出力されることにより、累積カウントを実現している。
【００４３】
また、リロードタイマ７９では、リロードレジスタ８１に予め設定された１ビット毎のＬ幅しきい値が、その起動時にダウンカウンタ８３へロードされると共に初期化され、上記アンダフロー状態が検出された場合に、ダウンカウンタ８３から第二タイムアウト検出信号が出力される。なお、タイムアウト検出バスライン４を伝送するデータがロウレベルからハイレベルとなるいわゆる立ち上がりのタイミングにおいて、タイマカウンタ３７及びダウンカウンタ８３の動作が停止される。このように、図７に示された構成を有する異常検出装置８７によれば、異なる方法によるタイムアウト検出を簡易な構成により並列的に行うことができる。
［実施の形態２］
図８は、本発明の実施の形態２に係る異常検出装置９５の構成を示す図である。図８に示されるように、本実施の形態２に係る異常検出装置９５は、図２に示された実施の形態１に係る異常検出装置１３と同様な構成を有するが、比較器４１に接続される参照値供給部９３を備える点で相違するものである。
【００４４】
ここで、参照値供給部９３は、それぞれ異なる設定値が格納された複数のコンペアレジスタ８９と、該コンペアレジスタ８９に接続されたセレクタ９１とを含む。そして、該セレクタ９１には通信ステータス信号が供給されると共に、比較器４１に接続される。なお、上記コンペアレジスタ８９は、ランダムアクセスメモリ（ＲＡＭ）であっても良い。
【００４５】
上記のような構成を有する本実施の形態２に係る異常検出装置９５は、上記実施の形態１に係る異常検出装置１３と同様に動作するが、セレクタ９１は複数のコンペアレジスタ８９に格納された異なる設定値の中から、供給される通信ステータス信号に応じていずれか一つの設定値を選択し、該選択した設定値を比較器４１へ供給する点で相違する。
【００４６】
従って、本実施の形態２に係る異常検出装置９５によれば、上記実施の形態１に係る異常検出装置１３と同様な効果を得ることができると共に、複数のコンペアレジスタ８９に異なる設定値を任意に設定できるため、タイムアウトとして検出する際におけるしきい値（タイムアウト時間）の設定の自由度を高めることができる。さらにまた、通信ステータス信号を切り替えることによって、上記タイムアウト時間を容易に調整することができる。
【００４７】
ここで、図９に示されるように、セレクタ９１から出力された信号が直接タイマカウンタ３８へ供給されるような構成を有する異常検出装置９７も同様に考えられる。すなわち、図９に示された異常検出装置９７は、図８に示された異常検出装置９５と同様に動作するが、タイマカウンタ３８はバス状態監視回路３５から供給される信号によってカウントアップすると共に、該カウント値がオーバーフローした時点においてタイムアウト検出信号を出力する。なおタイマカウンタ３８は、セレクタ９１から供給される設定値を選択回路４９から選択的に供給されるイベント信号に応じてロードする。
【００４８】
このような構成を有する異常検出装置９７によれば、図８に示された異常検出装置９５に対して比較器４１が不用とされるため、回路規模を低減することができる。
［実施の形態３］
図１０は、本発明の実施の形態３に係る異常検出装置１０３の構成を示す図である。図１０に示されるように、本実施の形態３に係る異常検出装置１０３は、図８に示された実施の形態２に係る異常検出装置９５と同様な構成を有するが、コンペアレジスタ８９の代わりにＲＡＭ９９が備えられる他、コンペアレジスタ１０１がさらに備えられる点で相違するものである。ここで、コンペアレジスタ１０１は、セレクタ９１及び比較器４１に接続され、かつ通信ステータス信号が供給される。
【００４９】
このような構成を有する異常検出装置１０３は、図８に示された実施の形態２に係る異常検出装置９５と同様に動作するが、セレクタ９１から出力される設定値（しきい値）はコンペアレジスタ１０１へ供給され、コンペアレジスタ１０１により通信ステータス信号に応じて該設定値がロードされる。そして、比較器４１は、タイマカウンタ３７によるカウント値とコンペアレジスタ１０１にロードされた該設定値とを比較し、上記カウント値が該設定値に一致したときタイムアウト検出信号を出力する。
【００５０】
以上より本実施の形態３に係る異常検出装置１０３によれば、ＲＡＭ９９に種々の設定値（しきい値）を予め記憶させておくことによってタイムアウト検出時間の調整が容易にできるため、簡易な構成によりマイコン３の動作状態に合致したタイムアウト検出を実現することができる。
［実施の形態４］
図１１は、本発明の実施の形態４に係る異常検出装置１１１の構成を示す図である。図１１に示されるように、本実施の形態４に係る異常検出装置１１１は、図２に示された実施の形態１に係る異常検出装置１３と同様な構成を有するが、加算器１０９を備える点で相違する。すなわち、図２に示されたタイマカウンタ４３の代わりに、加算演算を実行するレジスタ１０７が備えられる。ここで、レジスタ１０７は選択回路４９とタイマカウンタ１０５及び比較器４７に接続される。
【００５１】
上記のような構成を有する異常検出装置１１１は、図２に示された実施の形態１に係る異常検出装置１３と同様に動作するが、以下の点で相違する。
【００５２】
タイマカウンタ１０５は、選択回路４９から供給されるイベント信号に応じてタイマカウンタ１０５におけるカウント値をレジスタ１０７へ出力し、レジスタ１０７は供給された該カウント値を順次加算する。なおレジスタ１０７は、選択回路４９から供給されるイベント信号に応じて初期化される。
【００５３】
そして、該加算されたカウント値が第二レジスタ４５に予め格納された設定値（しきい値）に一致するとき、比較器４７はタイムアウト検出信号を出力する。
【００５４】
また、レジスタ１０７は、選択回路４９から供給される上記イベント信号に応じて上記の加算されたカウント値をタイマカウンタ１０５へロードするが、この場合には、タイマカウンタ１０５は該ロードされたカウント値を初期値としてカウントアップすることとなる。
【００５５】
以上より、本実施の形態４に係る異常検出装置１１１によれば、実施の形態１に係る異常検出装置１３と同様な効果を得ることができると共に、加算器１０９においてはタイマカウンタ１０５によるカウント値が加算されると共に、タイマカウンタ１０５におけるカウント方法もレジスタ１０７からの加算値のロードにより容易に変更できるため、タイムアウト検出時間の選択における自由度を高めることができる。
【００５６】
【発明の効果】
上述の如く、通信バスに接続され、第一の論理レベルを有する信号が通信バスにおいて伝送される時間を計測する伝送時間計測手段と、伝送時間計測手段で計測された時間がしきい値を超えた場合には、通信バスの異常を示す異常検出信号を出力する異常検出手段とを備えた通信バスの異常検出装置によれば、通信バスを介した通信の状態を伝送時間計測手段により常に監視することができるため、該通信の信頼性を高めることができる。
【００５７】
また、伝送時間計測手段は、供給されるイベント信号に応じて定められた間隔で初期化されることとすれば、上記イベント信号を選択的に供給することにより上記異常検出の方法を任意に設定することができるため、所望の異常検出方法を容易に実現することができる。
【００５８】
また、伝送時間計測手段と異常検出手段とからなるユニットを少なくとも二つ備え、伝送時間計測手段は、それぞれ異なる間隔で初期化されるものとすれば、異なる方法によった異常検出を並列的に実行できるため、該計測が開始された後に必要とされる異常検出方法が判明するような場合においても、所望の異常検出方法を確実に遂行することができる。
【００５９】
また、複数のしきい値を記憶する記憶手段と、記憶手段に記憶された複数のしきい値の中から、供給される選択信号に応じてしきい値を選択して異常検出手段に供給するしきい値選択手段とをさらに備えることにより、異なる異常検出方法の選択的実行を容易に実現することができるため、汎用性を高めることができる。
【００６０】
また、伝送時間計測手段を少なくとも二つ備え、少なくとも一つの伝送時間計測手段で計測された時間を、所定の間隔で累積加算する累積加算手段と、累積加算手段で累積加算されることによって得られた累積時間が第二のしきい値を超えた場合には、通信バスの異常を示す異常検出信号を出力する第二の異常検出手段とをさらに備えたものとすれば、上記累積時間を尺度とした異常検出を容易に実現することができる。ここで、累積加算手段は、少なくとも一つの伝送時間計測手段に上記累積時間を供給し、該累積時間が供給された伝送時間計測手段は、該累積時間を初期値として計測を行うものとすれば、伝送時間計測手段において多様な方法による計測を行うことができるため、汎用性を高めることができる。
【００６１】
また、通信バスに接続され、上記伝送時間計測手段と上記異常検出手段とを備えたマイクロコンピュータによれば、該マイクロコンピュータによる通信バスを介した通信の状態が伝送時間計測手段により常に監視されるため、該通信バスを介した通信の信頼性が向上されたマイクロコンピュータを得ることができる。
【図面の簡単な説明】
【図１】本発明の実施の形態１に係る異常検出装置を備えたマイクロコンピュータの全体構成を示す図である。
【図２】図１に示された異常検出装置の構成を示す図である。
【図３】図２に示された異常検出装置の構成についての一具体例を示す図である。
【図４】本発明の実施の形態１に係る異常検出装置の他の構成を示す図である。
【図５】本発明の実施の形態１に係る異常検出装置のさらに他の構成を示す図である。
【図６】本発明の実施の形態１に係る異常検出装置のさらに他の構成を示す図である。
【図７】本発明の実施の形態１に係る異常検出装置のさらに他の構成を示す図である。
【図８】本発明の実施の形態２に係る異常検出装置の構成を示す図である。
【図９】本発明の実施の形態２に係る異常検出装置の他の構成を示す図である。
【図１０】本発明の実施の形態３に係る異常検出装置の構成を示す図である。
【図１１】本発明の実施の形態４に係る異常検出装置の構成を示す図である。
【符号の説明】
１  第一システム
２  通信バス
３  マイコン
４  タイムアウト検出バスライン
５  中央演算処理装置（ＣＰＵ）
７，９  外部制御マクロ
１１  通信マクロ
１３，７５，７７，８５，８７，９５，９７，１０３，１１１  異常検出装置
１５，１７  集積回路（ＩＣ）
１９  メモリ
２１  第二システム
２３，２５，２９，３３  通信ＩＣ
２７  第ｎシステム
３１  第３システム
３５  バス状態監視回路
３７，３８，４３，６７，１０５  タイマカウンタ
３９  第一レジスタ
４１，４７，７１  比較器
４５  第二レジスタ
４９，７３  選択回路
５１  ハイ（Ｈ）検出部
５２  入力部
５３  第一イベント発生回路
５５  第二イベント発生回路
５７  第三イベント発生回路
５９  分周器
６０  ロウ（Ｌ）検出部
６１  ロウ（Ｌ）検出回路
６２  １０分周器
６３  ２０分周器
６９  第三レジスタ
７９  リロードタイマ
８１  リロードレジスタ
８３  ダウンカウンタ
８９，１０１  コンペアレジスタ
９１  セレクタ
９３  参照値供給部
９９  ランダムアクセスメモリ（ＲＡＭ）
１０７  レジスタ
１０９  加算器
【図１】
0004454772.tif 000002
【図２】
0004454772.tif 000003
【図３】
0004454772.tif 000004
【図４】
0004454772.tif 000005
【図５】
0004454772.tif 000006
【図６】
0004454772.tif 000007
【図７】
0004454772.tif 000008
【図８】
0004454772.tif 000009
【図９】
0004454772.tif 000010
【図１０】
0004454772.tif 000011
【図１１】
0004454772.tif 000012