(57)【特許請求の範囲】
【請求項１】
他のシステムから送信される通信データを受信するマイクロコンピュータに内蔵される監視回路であって、
前記通信データの受信波形内のパルスの時間幅を計測するインプットキャプチャと、
前記通信データの通信速度によって決まるビット幅と、前記インプットキャプチャによって計測される時間幅との関係に基づいて、前記マイクロコンピュータの動作周波数の異常を判定する異常判定部とを備える、監視回路。
【請求項２】
前記異常判定部は、前記ビット幅と前記インプットキャプチャによって計測される時間幅との差が許容範囲外であるとき、前記動作周波数の異常と判定する、請求項１に記載の監視回路。
【請求項３】
前記異常判定部は、前記差が前記許容範囲外であることが継続するとき、前記動作周波数の異常と判定する、請求項２に記載の監視回路。
【請求項４】
前記異常判定部は、前記ビット幅と前記インプットキャプチャによって計測される時間幅との差が許容範囲外であり、かつ、前記インプットキャプチャによって計測される時間幅が前記ビット幅以上であることが、継続して成立する場合、前記動作周波数の異常と判定する、請求項１に記載の監視回路。
【請求項５】
前記異常判定部は、前記ビット幅と前記インプットキャプチャによって計測される時間幅との差が許容範囲外であり、かつ、前記インプットキャプチャによって計測される時間幅が前記ビット幅未満である場合、前記動作周波数の異常と判定する、請求項１または４に記載の監視回路。
【請求項６】
前記異常判定部は、前記ビット幅と、前記インプットキャプチャによって計測される前記受信波形内のスタートビットのパルスの時間幅との関係に基づいて、前記動作周波数の異常を判定する、請求項１から５のいずれか一項に記載の監視回路。
【請求項７】
前記他のシステムは、複数存在し、
前記異常判定部は、前記ビット幅と、前記他のシステムのうち少なくとも一つのシステムについて前記インプットキャプチャによって計測される時間幅との関係に基づいて、前記動作周波数の異常を判定する、請求項１から６のいずれか一項に記載の監視回路。
【請求項８】
前記少なくとも一つのシステムは、前記通信データ内の識別情報に応じて判断される、請求項７に記載の監視回路。
【請求項９】
前記少なくとも一つのシステムは、前記マイクロコンピュータが属するシステムの信頼度と同じ信頼度を有するシステムであるか、または、前記マイクロコンピュータが属するシステムの信頼度よりも高い信頼度を有するシステムである、請求項７又は８に記載の監視回路。
【請求項１０】
前記異常判定部は、前記ビット幅と前記インプットキャプチャによって計測される時間幅との前記他のシステム毎の差が全て許容範囲外であるとき、前記動作周波数の異常と判定する、請求項７に記載の監視回路。
【請求項１１】
他のシステムから送信される通信データを受信するマイクロコンピュータであって、
前記通信データの受信波形内のパルスの時間幅を計測するインプットキャプチャと、
前記通信データの通信速度によって決まるビット幅と、前記インプットキャプチャによって計測される時間幅との関係に基づいて、前記マイクロコンピュータの動作周波数の異常を判定する異常判定部とを備える、マイクロコンピュータ。
【請求項１２】
他のシステムと、
前記他のシステムから送信される通信データを受信するマイクロコンピュータを内蔵する制御装置とを備える通信システムであって、
前記マイクロコンピュータは、
前記通信データの受信波形内のパルスの時間幅を計測するインプットキャプチャと、
前記通信データの通信速度によって決まるビット幅と、前記インプットキャプチャによって計測される時間幅との関係に基づいて、前記マイクロコンピュータの動作周波数の異常を判定する異常判定部とを備える、通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マイクロコンピュータの異常を判定する異常判定部を備える、監視回路、マイクロコンピュータ及び通信システムに関する。
【背景技術】
【０００２】
従来技術とてして、外部の監視ＩＣによってマイクロコンピュータの出力のパルス幅を監視して、パルス幅の変動が激しいときは、出力が異常であると判断する、マイクロコンピュータ監視システムが知られている（例えば、特許文献１を参照）。監視ＩＣは、そのＩＣ内の発振器の発振周波数を基準に、マイクロコンピュータの出力のパルス幅を監視している。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平１０−３４０９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、マイクロコンピュータ外部に設けられた監視ＩＣ内の発振器の発振精度ではマイクロコンピュータからのパルス幅の検出精度が低い場合があるため、そのパルス幅が大きくずれないと異常を検出できない可能性がある。また、パルス幅の検出精度を上げるため、監視ＩＣにも外部発振器を接続すると、コストや部品点数が増加する可能性がある。
【０００５】
そこで、本発明は、マイクロコンピュータ側でそのマイクロコンピュータの動作周波数の異常を判定できる、監視回路、マイクロコンピュータ及び通信システムの提供を目的とする。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明は、
他のシステムから送信される通信データを受信するマイクロコンピュータに内蔵される監視回路であって、
前記通信データの受信波形内のパルスの時間幅を計測するインプットキャプチャと、
前記通信データの通信速度によって決まるビット幅と、前記インプットキャプチャによって計測される時間幅との関係に基づいて、前記マイクロコンピュータの動作周波数の異常を判定する異常判定部とを備える、監視回路を提供するものである。
【０００７】
また、上記目的を達成するため、本発明は、
他のシステムから送信される通信データを受信するマイクロコンピュータであって、
前記通信データの受信波形内のパルスの時間幅を計測するインプットキャプチャと、
前記通信データの通信速度によって決まるビット幅と、前記インプットキャプチャによって計測される時間幅との関係に基づいて、前記マイクロコンピュータの動作周波数の異常を判定する異常判定部とを備える、マイクロコンピュータを提供するものである。
【０００８】
また、上記目的を達成するため、本発明は、
他のシステムと、
前記他のシステムから送信される通信データを受信するマイクロコンピュータを内蔵する制御装置とを備える通信システムであって、
前記マイクロコンピュータは、
前記通信データの受信波形内のパルスの時間幅を計測するインプットキャプチャと、
前記通信データの通信速度によって決まるビット幅と、前記インプットキャプチャによって計測される時間幅との関係に基づいて、前記マイクロコンピュータの動作周波数の異常を判定する異常判定部とを備える、通信システムを提供するものである。
【発明の効果】
【０００９】
本発明によれば、マイクロコンピュータ側でそのマイクロコンピュータの動作周波数の異常を判定できる。
【図面の簡単な説明】
【００１０】
【図１】本発明の一実施形態である通信システム１００の構成図である。
【図２】ＣＡＮ通信の通信フレームを示した図である。
【図３】マイコン１０の動作周波数の異常判定方法の第１例を示したフローチャートである。
【図４】マイコン１０の動作周波数の異常判定方法の第２例を示したフローチャートである。
【発明を実施するための形態】
【００１１】
以下、本発明の実施形態を図面に従って説明する。
【００１２】
図１は、本発明の一実施形態である通信システム１００の構成図である。通信システム１００は、複数のシステム（図１には、３つのシステム１，２，３を例示）と、マイクロコンピュータ（以下、「マイコン」ともいう）１０を内蔵するＥＣＵ（Electric  Control  Unit）７とを備えている。なお、ＥＣＵ７の通信相手は、一つのシステムでもよいし、２つ又は４つ以上のシステムでもよい。
【００１３】
システム１，２，３は、ＥＣＵ７の外部に設けられ、マイコン１０とは別のマイコンでそれぞれ動作する制御システムである。システム１，２，３は、ＣＡＮ（Controller  Area  Network）バス６を介して、ＥＣＵ７に通信可能に接続され、ＣＡＮバス６及びＣＡＮドライバ８を介して、ＥＣＵ７に内蔵されるマイコン１０に通信可能に接続されている。システム１，２，３は、それぞれ、ＥＣＵ７のマイコン１０に対して、ＣＡＮバス６及びＣＡＮドライバ８を介して、ビット列から構成された通信データを送信する。
【００１４】
ＣＡＮバス６は、システム１，２，３からＥＣＵ７のマイコン１０に対して供給される通信データが伝達する通信信号線である。ＣＡＮバス６は、ＥＣＵ７からシステム１，２，３に対して供給される通信データが伝達する通信信号線でもある。ＣＡＮドライバ８は、ＥＣＵ７に内蔵され、ＣＡＮバス６とマイコン１０との間に配置された、ＣＡＮ通信用のインターフェイス回路である。ＣＡＮ通信では、通信データとして差動信号が使われ、システム１，２，３とＥＣＵ７はＣＡＮバス６を介して平衡接続される。
【００１５】
ＥＣＵ７は、マイコン１０を内蔵する電子制御装置である。マイコン１０は、ＣＰＵ（中央演算処理装置）としてマイクロプロセッサを使用した制御回路であって、ＥＣＵ７の筐体内に設けられた基板に実装されるものである。マイコン１０は、ＣＰＵの他に、位相同期回路（ＰＬＬ（Phase‐Locked  Loop）回路）、メモリ、後述の監視回路２０等が内蔵されている。ＰＬＬ回路は、マイコン１０に外付けされた発振器９の発振周波数を逓倍して、マイコン１０の動作周波数を生成する。マイコン１０は、この動作周波数を基準に動作する。発振器９は、例えば水晶振動子を備えている。
【００１６】
マイコン１０は、通信コントローラ２１を備えている。通信コントローラ２１は、システム１，２，３とマイコン１０との間の信号の送受信を制御する通信制御部である。
【００１７】
通信コントローラ２１は、システム１，２，３のうち少なくとも一つのシステムに対する送信信号Ｔｘを、マイコン１０の送信端子１６から出力する。送信信号Ｔｘは、送信端子１６とＣＡＮドライバ８の入力端子とを結ぶ送信ライン１１を介して、ＣＡＮドライバ８に入力される。ＣＡＮドライバ８は、送信信号Ｔｘに対応する通信データを、ＣＡＮバス６上に出力する。これにより、システム１，２，３は、送信信号Ｔｘに対応する通信データをＣＡＮバス６から受信することができる。
【００１８】
一方、ＣＡＮドライバ８は、システム１，２，３のいずれかのシステムからＣＡＮバス６上に送信された通信データを、ＣＡＮバス６から取得する。ＣＡＮドライバ８は、ＣＡＮバス６から取得した通信データに対応する受信信号Ｒｘを、マイコン１０の受信端子１７に対して出力する。受信信号Ｒｘは、受信端子１７とＣＡＮドライバ８の出力端子とを結ぶ受信ライン１２を介して、マイコン１０の通信コントローラ２１に入力される。これにより、マイコン１０の通信コントローラ２１は、システム１，２，３のいずれかのシステムからＣＡＮバス６上に送信された通信データを受信することができる。
【００１９】
図２は、ＣＡＮ通信の通信フレームを示した図である。ＣＡＮ通信で送受される通信データに対応する信号パルスには、予め固定されたビット幅のパルスが必ず存在する。そのような固定のビット幅のパルスとして、例えば、１ビット幅のＳＯＦ（Start  of  Frame）ビットが挙げられる。ＳＯＦビットは、スタートビットである。そうすると、バスアイドル後のＳＯＦビットは必ず１ビット幅であることを利用して、マイコン１０がこの固定の１ビット幅を正しく認識できなければ、マイコン１０の動作周波数がずれているとみなすことができる。
【００２０】
そこで、本発明の一実施例であるマイコン１０は、監視回路２０を内蔵している。監視回路２０は、通信データの受信波形内のパルスの時間幅（パルス幅）に基づいて、マイコン１０の動作周波数の異常の有無を監視する回路である。監視回路２０は、マイコン１０に内蔵されるインプットキャプチャ２５及び異常判定部２２を備えている。
【００２１】
インプットキャプチャ２５は、受信信号Ｒｘを取得する回路である。受信信号Ｒｘは、受信ライン１２とマイコン１０のインプットキャプチャ端子１８とを結ぶインプットキャプチャライン１３を介して、マイコン１０のインプットキャプチャ２５に入力される。インプットキャプチャ端子１８は、受信端子１７とは別の入力端子である。
【００２２】
なお、インプットキャプチャライン１３をマイコン１０の内部に設け、マイコン１０のインプットキャプチャ端子１８を削除してもよい。この場合、受信信号Ｒｘは、マイコン１０の受信端子１７に入力された後、インプットキャプチャ２５と通信コントローラ２１のそれぞれに入力される。
【００２３】
インプットキャプチャ２５は、受信信号Ｒｘの波形内のパルスの隣り合うエッジの時間幅（受信信号Ｒｘのパルス幅ｔＲｘ）を自動で計測する。インプットキャプチャ２５は、受信信号Ｒｘのパルスの立ち上がりエッジから次の立ち下がりエッジまでの時間をパルス幅ｔＲｘとして計測し、受信信号Ｒｘのパルスの立ち下がりエッジから次の立ち上がりエッジまでの時間をパルス幅ｔＲｘとして計測する。インプットキャプチャ２５によって計測されたパルス幅ｔＲｘは、受信信号Ｒｘのパルスの立ち上がりエッジ又は立ち下がりエッジでレジスタに退避（格納）される。
【００２４】
異常判定部２２は、マイコン１０とシステム１，２，３との間で送受される通信データの通信速度によって設計的に決まる本来のビット幅ｔｂｉｔと、インプットキャプチャ２５によって計測されたパルス幅ｔＲｘとの関係に基づいて、マイコン１０の動作周波数の異常を判定する回路である。異常判定部２２は、通信コントローラ２１の内部に存在してもよいし、通信コントローラ２１の外部に存在してもよい。
【００２５】
本来のビット幅ｔｂｉｔ［ｓ］は、
ｔｂｉｔ［ｓ］＝１／（通信データの通信速度［ｂｐｓ］）      ・・・（１）
に従って演算可能である。通信データの通信速度は、通信コントローラ２１によって設定されている。異常判定部２２は、式（１）で定義できるビット幅ｔｂｉｔの値を通信コントローラ２１から取得する。
【００２６】
図３は、マイコン１０の動作周波数の異常判定方法の第１例を示したフローチャートである。マイコン１０は、受信信号Ｒｘのパルスの立ち上がりエッジ又は立ち下がりエッジで割込みが発生するように設定されている。異常判定部２２は、この割り込みが発生するたびに、インプットキャプチャ２５によって計測されたパルス幅ｔＲｘと、計算から求められる本来のビット幅ｔｂｉｔとを比較する。図３の以下の説明では、その説明の簡単化のため、ＣＡＮバス６に接続される他のシステムが一つの場合を想定している。
【００２７】
異常判定部２２は、その比較されるパルス幅ｔＲｘとビット幅ｔｂｉｔとの時間差ΔｔＲｘ−ｂｉｔを演算し（ステップＳ１０）、ステップＳ１０で演算した時間差ΔｔＲｘ−ｂｉｔが許容範囲内であるか否かを判断する（ステップＳ１２）。
【００２８】
異常判定部２２は、ステップＳ１０で演算した時間差ΔｔＲｘ−ｂｉｔが所定の許容範囲内の場合、マイコン１０の動作周波数の異常を判定するためのエラーカウンタをクリアする（ステップＳ１４）。一方、異常判定部２２は、ステップＳ１０で演算した時間差ΔｔＲｘ−ｂｉｔがその所定の許容範囲を超える場合、今回の割り込み時にインプットキャプチャ２５によって計測されたパルス幅ｔＲｘが、所定の許容下限値ｔＭＩＮ以上か否かを判断する（ステップＳ１６）。
【００２９】
この許容下限値ｔＭＩＮは、ＣＡＮ通信における最小のビット幅が１ビットであることを考慮し（例えば、スタートビットＳＯＦのビット幅）、上述の式（１）で計算されるビット幅ｔｂｉｔに等しい値に設定されている。つまり、ステップＳ１６では、異常判定部２２は、今回の割り込み時にインプットキャプチャ２５によって計測されたパルス幅ｔＲｘが、１ビット幅以上か否かを判断している。
【００３０】
異常判定部２２は、ステップＳ１６において、今回の割り込み時にインプットキャプチャ２５によって計測されたパルス幅ｔＲｘが許容下限値ｔＭＩＮ未満の場合、マイコン１０の動作周波数が許容下限周波数よりも遅いと判断して、マイコン１０の動作周波数が異常であると判定する（ステップＳ２４）。
【００３１】
一方、異常判定部２２は、ステップＳ１６において、今回の割り込み時にインプットキャプチャ２５によって計測されたパルス幅ｔＲｘが許容下限値ｔＭＩＮ以上の場合、エラーカウンタを増加させる（ステップＳ１８）。例えば、エラーカウンタのカウンタ値が、１だけインクリメントされる。
【００３２】
インプットキャプチャ２５によって計測されたパルス幅ｔＲｘが許容下限値ｔＭＩＮ以上の場合には、受信信号Ｒｘのパルスのレベルが、ハイレベル又はローレベルに２ビット幅以上固定されているフレームのパルス幅が計測される正常な場合が含まれる。したがって、ステップＳ１８では、ステップＳ１６でパルス幅ｔＲｘが許容下限値ｔＭＩＮ以上であっても、ステップＳ２４のように、マイコン１０の動作周波数が異常であるとすぐには確定しないようにしている。
【００３３】
そして、異常判定部２２は、エラーカウンタが所定の規定値以上か否かを判断し（ステップＳ２０）、エラーカウンタがその所定の規定値以上であれば、マイコン１０の動作周波数が許容上限周波数よりも速いと判断して、マイコン１０の動作周波数が異常であると判定する（ステップＳ２２）。つまり、インプットキャプチャ２５がマイコン１０の許容上限周波数よりも速い動作周波数に従って動作していると、上述の式（１）で計算されるビット幅ｔｂｉｔ以上の時間幅がインプットキャプチャ２５によって継続して計測されることになる。このような場合には、異常判定部２２は、インプットキャプチャ２５が受信信号Ｒｘのパルス内に必ず存在する１ビット幅のパルスを一定の時間内に一度も捉えることができない状態であると判断して、マイコン１０の動作周波数が異常であると判定することができる。
【００３４】
図４は、マイコン１０の動作周波数の異常判定方法の第２例を示したフローチャートである。図３と同様の説明については省略する。異常判定部２２は、上述の式（１）で計算されるビット幅ｔｂｉｔと、システム１，２，３のうち少なくとも一つのシステムについてインプットキャプチャ２５によって計測されたパルス幅ｔＲｘとの関係に基づいて、マイコン１０の動作周波数の異常を判定する。
【００３５】
異常判定部２２は、受信信号Ｒｘに基づいて、ＣＡＮバス６がバスアイドル中であるか否かを判断し（ステップＳ３０）、バスアイドル中である場合、１ビット幅のＳＯＦフィールドから１ビット幅のＩＤフィールドまでの１２ビット分のパルス幅ｔＲｘを取り込む（ステップＳ３２，Ｓ３４）。
【００３６】
そして、ステップＳ３６において、異常判定部２２は、ステップＳ３４で１２ビット分まで取り込んだフレームが、マイコン１０が属するＥＣＵ７と安全度が同じ又はＥＣＵ７よりも安全度が高いシステム内のＥＣＵからのフレームであるか否かを判断する。この判断は、ステップＳ３４で取り込んだＩＤフィールド内のＥＣＵの識別情報のビットパターンを解析することにより行われる。異常判定部２２は、ＩＤフィールド内のＥＣＵの識別情報に基づいて、ステップＳ３４で１２ビット分まで取り込んだフレームが、どのシステム内のＥＣＵからのフレームであるのかを特定できる。
【００３７】
また、安全度は、システム又はＥＣＵ毎に予め設定されている。例えば、システムの安全度が高いほど、信頼性が高い、言い換えれば、故障率の低いシステムであることを表している。安全度の具体例として、ＡＳＩＬ（Automotive  Safety  Integrity  Level：安全度水準）が挙げられる。
【００３８】
したがって、異常判定部２２は、ＩＤフィールド内のＥＣＵの識別情報に基づいて、ステップＳ３４で１２ビット分まで取り込んだフレームを送信したＥＣＵ又はそのＥＣＵが属するシステムの安全度を判別することもできる。
【００３９】
異常判定部２２は、安全度が同じ又はそれよりも高いシステム内のＥＣＵからのフレームであると判断された場合、そのフレームを出力するＥＣＵは正常であると判断する。この場合、インプットキャプチャ２５によって、その正常と判断されたＥＣＵからのフレーム内の１ビットのＳＯＦフィールドについて計測されたパルス幅ｔＲｘを使って（ステップＳ３８）、異常判定部２２は、パルス幅ｔＲｘとビット幅ｔｂｉｔとの時間差ΔｔＲｘ−ｂｉｔを演算する（ステップＳ４０）。以降、図３と同じ流れで、マイコン１０の動作周波数が正常か否かを判定できる。したがって、マイコン１０よりも信頼性の高い通信相手からのフレームに基づいてマイコン１０の動作周波数の異常を判定するので、その判定精度が向上する。
【００４０】
このように、上述の実施例によれば、マイコン１０側でマイコン１０の動作周波数の異常を判定できる。また、マイコン１０の動作周波数を監視する外部ＩＣを必要としないため、コスト低減や小型化の実現がしやすくなる。
【００４１】
以上、本発明の好ましい実施例について詳説したが、本発明は、上述した実施例に制限されることはなく、また、上述した実施例は、他の実施例の一部又は全部との組み合わせや置換などの種々の変形を加えることができる。
【００４２】
例えば、本発明は、上述の実施例のようなＣＡＮ通信に限らず、他の調歩同期式のシリアル通信に適用することもできる。また、本発明は、上述の実施例のような差動型の平衡接続の通信システムに限らず、シングル型の不平衡接続の通信システムに適用することもできる。
【００４３】
また、上述の実施例では、許容下限値ｔＭＩＮは、上述の式（１）で計算されるビット幅ｔｂｉｔに等しく設定されているが、必ずしも等しくなくてもよい。例えば、受信信号Ｔｘ内の最小のビット幅が２ビットであれば、許容下限値ｔＭＩＮは、上述の式（１）で計算されるビット幅ｔｂｉｔを２倍した値に設定されるとよい。
【００４４】
また、システム１，２，３のＥＣＵ内のマイコンの動作周波数が正常でＥＣＵ７のマイコン１０のみの動作周波数が異常である場合、システム１，２，３毎の時間差ΔｔＲｘ−ｂｉｔは、全て許容範囲外の値に演算される。したがって、異常判定部２２は、システム１，２，３毎の時間差ΔｔＲｘ−ｂｉｔが全て許容範囲外であるとき、マイコン１０の動作周波数の異常と判定することも可能である。
【００４５】
また、システム１，２，３のＥＣＵ内のマイコンのうち一部のシステムのマイコンの動作周波数のみが異常で、それ以外のシステムのマイコン（ＥＣＵ７のマイコン１０も含む）が正常である場合、その一部のシステムからの受信信号Ｒｘに基づいて演算された時間差ΔｔＲｘ−ｂｉｔのみ、許容範囲外の値になる。したがって、異常判定部２２は、システム１，２，３毎の時間差ΔｔＲｘ−ｂｉｔのうち、一部のシステムの時間差ΔｔＲｘ−ｂｉｔが許容範囲外であるとき、その一部のシステム内のＥＣＵのマイコンの動作周波数が異常と判定することも可能である。
【符号の説明】
【００４６】
１，２，３  システム
６  ＣＡＮバス
７  ＥＣＵ
８  ＣＡＮドライバ
９  発振器
１０  マイコン（マイクロコンピュータ）
１１  送信ライン
１２  受信ライン
１３  インプットキャプチャライン
１６  送信端子
１７  受信端子
１８  インプットキャプチャ端子
２０  監視回路
２１  通信コントローラ
２２  異常判定部
２５  インプットキャプチャ
１００  通信システム
【図１】
0005664540.tif 000002
【図２】
0005664540.tif 000003
【図３】
0005664540.tif 000004
【図４】
0005664540.tif 000005