(57)【要約】【課題】処理部からのＷＤパルスなしに、処理部の動作状態の変化に対応して適切に異常を検出して安全性を高めることができる処理装置を提供する。【解決手段】ＣＰＵ１０が機器を制御するために周期的に出力する制御パルス信号が、ＣＰＵ１０の動作を監視して異常を検出する監視回路１３へも入力される。監視回路１３では、ＣＰＵ１０からの制御パルス信号が、監視時間が経過するまでに出力されるか否かが判断され、出力される場合には正常、出力されない場合には異常と判断し、異常と判断した場合にはリセット出力部からＣＰＵ１０へリセット信号を入力させる。ＣＰＵ１０は、制御パルス信号の周期が変化するような状態遷移を行なう場合、状態遷移を知らせる通知をＡＳＩＣ１０１へ出力し、監視回路１３にて状態遷移に応じて監視時間を変更する。【選択図】図１
2011096088.tif 000002
【特許請求の範囲】
【請求項１】
信号処理を周期的に実行し、前記信号処理により機器を制御するための制御パルス信号を他へ出力する処理部と、該処理部の動作の異常を検出する異常検出部とを備え、該異常検出部は、異常を検出した場合に前記処理部の動作を再起動させるようにしてある処理装置において、
前記制御パルス信号を前記異常検出部へ入力するようにしてあり、
前記異常検出部は、前記制御パルス信号を監視し、所定の監視時間にわたり制御パルス信号を受信しないときに異常を検出するようにしてあること
を特徴とする処理装置。
【請求項２】
前記処理部は、
自身の動作状態が変化する際、前記制御パルス信号の出力周期を変更するようにしてあり、
前記異常検出部へ動作状態の変化を通知する手段を備え、
前記異常検出部は、通知された動作状態の変更に応じて前記監視時間を変更する手段を備えること
を特徴とする請求項１に記載の処理装置。
【請求項３】
前記処理部は、自身の動作状態を示す状態信号を出力する手段を備え、
前記異常検出部は、前記状態信号を入力する手段を備えること
を特徴とする請求項２に記載の処理装置。
【請求項４】
前記処理部及び異常検出部は夫々、通信手段を備えて相互に情報を送受信するようにしてあり、
前記処理部は、動作状態の変化の通知を前記異常検出部へ送信するようにしてあること
を特徴とする請求項２に記載の処理装置。
【請求項５】
前記制御パルス信号は、外部からの入力信号を定期的に取得するためのサンプリングパルス信号であること
を特徴とする請求項１乃至４に記載に記載の処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＣＰＵ（Central Processing Unit）を用いる処理装置に関し、特に、ＣＰＵからのＷＤパルスなしに、ＣＰＵの動作状態に応じて異常であるか否かを正確に判断することができる処理装置に関する。
【背景技術】
【０００２】
内蔵する記憶部に記憶されたプログラムを実行させて多様な動作を実現させることができるマイクロコンピュータ（以下、マイコンという）を用いて、機器を制御する処理を行なう制御装置が多用されている。
【０００３】
特に車両の分野では、マイコンを用いるＥＣＵ（Electronic Control Unit）が複数接続される制御システムを利用し、相互に連携してアクチュエータを電気的に制御する構成へ移行しつつある。
【０００４】
また、各分野にて省電力化が奨励されている。車両の分野で用いられるマイコンにもスリープ（休止、省電力）状態へ移行する機能を有するものが普及している。
【０００５】
マイコンを用いた処理では、予期していない状況となった場合、又は異常な信号が入力された場合などに、マイコンが正常な動作を維持することができなくなるときがある。車両の分野では、異常な動作が継続することは安全のためにもできるだけ回避できなければならない。このため、マイコンから定期的にウォッチドッグパルス（以下、ＷＤ（Watch Dog）パルス）が出力されるようにしてあり、マイコンの動作を監視する装置にて当該ウォッチドッグパルスを定期的に入力し、マイコンの動作が異常であると判断される場合にマイコンをリセットするようにした構成が一般的となりつつある。
【０００６】
図９は、従来の異常検出のための構成を示す構成図である。ＥＣＵ９は、ＣＰＵ（マイコン）９０と、ＣＰＵ９０の動作を監視する監視回路９３とを備える。ＣＰＵ９０は、ＥＣＵ９内のＥＣＵ９としての動作を実現する規定された処理を行なう周辺回路９２を制御するために、制御パルスを制御パルス出力部９０２から出力する。更に、ＣＰＵ９０は、自身の動作の異常の監視のために周期的なＷＤパルスをＷＤパルス出力部９０１から出力する。監視回路９３は、ＷＤパルスの周期等を監視し、所定の時間内にパルスが入力されなければ異常と判断してＣＰＵ９０にリセットをかけるなどの動作を行なう。
【０００７】
複数の制御部（ＥＣＵ）を含むシステムでは、制御部夫々の異常を検知するために、各々の制御部からのＷＤパルスを監視するＷＤ回路を複数備えることで夫々の暴走を防止することができる。しかしながら、いずれにもＷＤ回路を備える構成では、処理も複雑化してコストも上昇する。
【０００８】
そこで特許文献１には、メイン制御部とサブ制御部とを備える車両用制御装置について、制御部どうしはメイン制御部の制御によりシリアル通信を可能とし、サブ制御部は通信中には、自身からのＷＤパルスを通信によりメイン制御部へ送信し、メイン制御部にてサブ制御部の動作異常を検出する発明が開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】実開平６−６９０１７号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、特許文献１に開示されている発明では、スリープ時など通信を停止している間は、サブ制御部はＷＤパルスをメイン制御部へ送信できない。したがって、スリープ時のサブ制御部の動作の異常を検出するためには依然として、ＷＤパルスに基づく異常検出を行なう回路が別途必要となる。つまり、動作状態がスリープ状態などへ遷移する機能を有する制御部の場合は、構成を簡素化できない。
【００１１】
図９に示すように、ＣＰＵ９０からはＷＤパルスと同様に周期的に、制御パルスが出力されている。つまり、周期的に出力される信号が独立に複数用いられており、夫々に資源が利用されているため、コスト高であり、その分電力も消費する。
【００１２】
本発明は斯かる事情に鑑みてなされたものであり、処理装置の信号処理に伴い周期的に出力されるパルス信号を利用して、ＷＤパルスを出力しなくとも処理装置の動作状態の変化に対応して適切に異常を検出して安全性を高めることができる処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１３】
第１発明に係る処理装置は、信号処理を周期的に実行し、前記信号処理により機器を制御するための制御パルス信号を他へ出力する処理部と、該処理部の動作の異常を検出する異常検出部とを備え、該異常検出部は、異常を検出した場合に前記処理部の動作を再起動させるようにしてある処理装置において、前記制御パルス信号を前記異常検出部へ入力するようにしてあり、前記異常検出部は、前記制御パルス信号を監視し、所定の監視時間にわたり制御パルス信号を受信しないときに異常を検出するようにしてあることを特徴とする。
【００１４】
第２発明に係る処理装置は、前記処理部は、自身の動作状態が変化する際、前記制御パルス信号の出力周期を変更するようにしてあり、前記異常検出部へ動作状態の変化を通知する手段を備え、前記異常検出部は、通知された動作状態の変更に応じて前記監視時間を変更する手段を備えることを特徴とする。
【００１５】
第３発明に係る処理装置は、前記処理部は、自身の動作状態を示す状態信号を出力する手段を備え、前記異常検出部は、前記状態信号を入力する手段を備えることを特徴とする。
【００１６】
第４発明に係る処理装置は、前記処理部及び異常検出部は夫々、通信手段を備えて相互に情報を送受信するようにしてあり、前記処理部は、動作状態の変化の通知を前記異常検出部へ送信するようにしてあることを特徴とする。
【００１７】
第５発明に係る処理装置は、前記制御パルス信号は、外部からの入力信号を定期的に取得するためのサンプリングパルス信号であることを特徴とする。
【００１８】
第１発明では、処理部が実行する信号処理に伴い定期的に出力されるパルス信号が分岐されて一部が異常検出部に入力され、異常検出部は処理部からのパルス信号の出力周期よりも長い監視時間に基づき、異常を検出する。処理部が、別途ＷＤパルスを出力せずとも自身の動作（信号処理）に応じて定期的にパルス信号を出力する場合には、当該パルス信号がＷＤパルスのように利用できる。これにより、処理部からのＷＤパルスの出力処理、及び処理部のＷＤパルスの出力のための出力端子が不要となる。
【００１９】
第２発明では、処理部は自身の動作状態の変更に対応して、パルス信号の出力周期を変更する。処理部は、自身の動作状態をアクティブ（稼働）状態からスリープ状態（又は省電力状態）へ変更する場合、信号処理の周期を長く、パルス信号の出力周期を長くすることで消費電力を少なくする。異常検出部では、動作状態の変更の通知を受け、パルス信号の出力周期の変更に応じて異常を検出するための監視時間を変更することにより、誤って異常を検出することを回避する。
【００２０】
第３発明では、処理部から異常検出部へ動作状態を通知するために、処理部から異常検出部へ動作状態を示す信号が入力される。これにより異常検出部は状態信号が示す情報に基づいて処理部の動作状態を知り得る。処理部側では、状態信号の出力を簡易な構成で実現できる。
【００２１】
第４発明では、処理部から異常検出部への動作状態の通知は、処理部と異常検出部との間の通信手段による送受信により実現される。処理部と異常検出部との情報の送受信以外にも通信手段による送受信を利用できる。これにより、処理装置の資源を簡素化できる。
【００２２】
第５発明では、処理部から出力されるパルス信号は、処理部が外部から入力信号を定期的に取得するためのサンプリングパルス信号である。処理部が信号処理を行なう際に、外部から入力信号を取得する場合には、定期的に電圧をかけて信号レベルを取得するから、当該サンプリングパルス信号を利用することにより、処理部では特に、ＷＤパルス出力処理、ＷＤ出力端子が不要となる。
【発明の効果】
【００２３】
本発明による場合、処理部の異常を検出するために処理部からのＷＤパルスの出力処理、及び処理部にＷＤパルスの出力のための端子が不要である。処理部は、信号処理に伴なって大抵の場合、パルス信号を出力するので当該パルス信号を利用することにより、異常を検出できる。これにより、処理部では他の信号の入出力に資源を利用することができる。
【００２４】
また、本発明による場合、処理部における信号処理によって周期的に出力されるパルス信号を利用するから、処理部の動作状態がアクティブ（稼働）状態からスリープ状態へ遷移する際には、動作状態の変化に伴ない、出力されるパルス信号の周期も延長される。異常検出部にて動作状態の変化を認識することで、当該周期の延長に応じて異常検出を適切に行なうことができる。処理部と異常検出部との間でＷＤパルスの入出力がされない場合であっても、動作状態が変化したときに、正常であるにも拘わらず異常であると誤って検出することなどを回避して安全性を高めることができる。
【図面の簡単な説明】
【００２５】
【図１】実施の形態１におけるＥＣＵの構成を示す構成図である。
【図２】実施の形態１のＥＣＵのマイコン及びＡＳＩＣによって実現される機能を示す機能ブロック図である。
【図３】実施の形態１におけるＥＣＵのＣＰＵが自身の動作状態の遷移に関して実行する処理手順の一例を示すフローチャートである。
【図４】実施の形態１におけるＥＣＵのＡＳＩＣが実行する処理手順の一例を示すフローチャートである。
【図５】実施の形態２におけるＥＣＵの構成を示す構成図である。
【図６】実施の形態２のＥＣＵのマイコン及びＡＳＩＣによって実現される機能を示す機能ブロック図である。
【図７】実施の形態２におけるＥＣＵのＣＰＵが自身の動作状態に関して実行する処理手順の一例を示すフローチャートである。
【図８】実施の形態２におけるＥＣＵのＡＳＩＣが実行する処理手順の一例を示すフローチャートである。
【図９】従来の異常検出のための構成を示す構成図である。
【発明を実施するための形態】
【００２６】
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。以下に示す実施の形態では、本発明に係る処理装置を車両に搭載されるＥＣＵに適用する場合を例に説明する。
【００２７】
（実施の形態１）
図１は、実施の形態１におけるＥＣＵ１の構成を示す構成図である。ＥＣＵ１は、例えば車両に搭載されるライト、ミラーなどの動作を制御するボディＥＣＵであって、センサによる測定値、又は計算値、制御値などの各種物理量の数値情報を含むデータの送受信を行ない、前記データに基づき制御処理を実行する制御装置である。
【００２８】
ＥＣＵ１は、マイコン１００と、ＡＳＩＣ（Application Specific Integrated Circuit：特定用途集積回路）１０１とを含んで構成される。また、ＡＳＩＣ１０１はバッテリ（＋Ｂ電源）と接続されている。
【００２９】
ＥＣＵ１のマイコン１００は、ＥＣＵ１全体の制御処理を行なうＣＰＵ（コア）１０と、ボディＥＣＵとしての動作を実現するための制御プログラムが記憶されるＲＯＭ１１とを備える。
【００３０】
ＣＰＵ１０は、ＲＯＭ１１に記憶されている制御プログラムを読み出して実行することにより、ボディＥＣＵとしての動作を実現する。ＣＰＵ１０は、ＡＳＩＣ１０１の電源回路１２により、所定の電圧に制御されたバッテリ（＋Ｂ）からの電力の供給を受ける端子を有する（Ｖｃｃ）。ＣＰＵ１０は、リセット（ＲＥＳＥＴ）信号を入力する端子を備え、リセット信号が入力された場合には自身を再起動させる。
【００３１】
また、ＣＰＵ１０は、ＡＳＩＣ１０１内の回路を制御するための制御パルスを出力する端子を有する。実施の形態１では、ＡＳＩＣ１０１が備える周辺回路１４へ、ＡＳＩＣ１０１での処理を制御するための制御パルスを出力する。
【００３２】
ＲＯＭ１１は、ＥＥＰＲＯＭ（Electronically Erasable Programmable Read Only Memory）、フラッシュメモリ、マスクＲＯＭなどを用いる。ＲＯＭ１１には、上述の制御プログラムが記憶されると共に、制御用の情報が記憶されてある。
【００３３】
また、マイコン１００（ＣＰＵ１０）は、自身の動作状態をスリープ状態（又は省電力状態）と、アクティブ状態（通常の稼働状態）との間で遷移させることが可能である。
【００３４】
ＡＳＩＣ１０１は、バッテリと接続してＥＣＵ１の内部構成部へ電力の供給を制御する電源回路１２、マイコン１００の動作を監視する監視回路１３、及び規定された処理を行なう周辺回路１４を備える。
【００３５】
ＡＳＩＣ１０１の電源回路１２は、バッテリと接続されてＥＣＵ１の各構成部に、夫々適切な電圧を供給する。
【００３６】
ＡＳＩＣ１０１の周辺回路１４は、ＥＣＵ１としての動作を実現するためにハードウェア的に規定された処理を行なうように設計された回路である。周辺回路１４は、ＣＰＵ１０からの制御パルスに基づいて処理を行なうように構成されている。周辺回路１４の一例としては、マイコン１００の制御に用いる入力信号を入力し、信号が示す各情報をマイコン１００へ送信する処理を行なう回路などが考えられる。
【００３７】
監視回路１３には、ＣＰＵ１０からＡＳＩＣ１０１の周辺回路１４への制御パルスが分岐されて入力されており、監視回路１３は制御パルスを監視する。具体的には、監視回路１３は、ＣＰＵ１０からの制御パルスの信号を入力する端子を有し、制御パルスのエッジの立ち上がりを検出する。
【００３８】
このように構成されるＥＣＵ１において実現される機能の詳細について機能ブロック図を参照して説明する。図２は、実施の形態１のＥＣＵのマイコン１００及びＡＳＩＣ１０１によって実現される機能を示す機能ブロック図である。
【００３９】
ＥＣＵ１のマイコン１００のＣＰＵ１０は、プログラムを読み出して実行することにより、制御パルス出力部１０２、状態判定部１０３及び状態切替処理部１０４の機能を有する。
【００４０】
ＣＰＵ１０は、自身のＥＣＵ１としての動作により制御パルス出力部１０２から周期的に制御パルスを出力する。例えば、ＣＰＵ１０は、制御プログラムに基づく演算処理、信号処理を周期的（例えば２０ミリ秒周期）に行なう。このため、ＣＰＵ１０はＡＳＩＣ１０１の周辺回路１４へ制御パルスを制御パルス出力部１０２から出力する。周期の例としては、本実施の形態１における制御パルス出力周期ｔは、アクティブ状態ではｔ１＝２０ミリ秒周期、スリープ状態ではｔ２＝６０ミリ秒周期とする。
【００４１】
また、ＣＰＵ１０は、状態判定部１０３の機能により、ＥＣＵ１のマイコン１００（ＣＰＵ１０）がアクティブ状態であるか、スリープ状態であるのか、更にはアクティブ状態からスリープ状態へ遷移するのか、又はスリープ状態からアクティブ状態へ遷移するのかを判定する。状態判定部１０３は、判定結果を状態切替処理部１０４へ出力する。
【００４２】
状態切替処理部１０４は、上述の状態判定部１０３における判定結果に基づき、状態を示す状態信号をＡＳＩＣ１０１へ出力する。本実施の形態１では、状態はアクティブ状態かスリープ状態の２値である。したがって状態信号は図２に示すように信号レベルの高さで状態を示す。本実施の形態１では、例えばＬ（Ｌｏｗ）がアクティブ状態であることを示し、Ｈ（Ｈｉｇｈ）がスリープ状態であることを示す。
【００４３】
一方ＡＳＩＣ１０１は、リセット出力部１３１、監視部１３２及び監視時間設定部１３３の機能、並びに状態確認部１０５の機能を有する。なお、監視回路１３は、リセット出力部１３１、監視部１３２及び監視時間設定部１３３により構成される。
【００４４】
リセット出力部１３１は、後述するように監視部１３２から指示があった場合に、ＣＰＵ１０へリセット信号を出力する。
【００４５】
監視部１３２は、ＣＰＵ１０の制御パルス出力部１０２から周期的に出力されるべき制御パルスを分岐させて入力し、監視しており、制御パルスを直近で検出してからの経過時間を測定する。監視部１３２は、所定の周期で制御パルスを受信している場合には、ＣＰＵ１０の動作を正常と判断し、前記所定の周期よりも長い経過時間となった場合には、ＣＰＵ１０の動作を異常と判断する。詳細には、監視部１３２は、制御パルスを直近で検出してから、設定されている監視時間を経過しても制御パルス出力部１０２から制御パルスが出力されない場合に、ＣＰＵ１０にて異常が発生していると判断してリセット出力部１３１へリセット信号を出力させるべく指示する。このとき監視部１３２は、異常と判断する根拠の現象（例えば監視時間が経過しても制御パルスを検出できないなど）を所定の複数回検出した場合に初めてＣＰＵ１０の動作を異常であると判断してもよい。
【００４６】
監視時間設定部１３３は、後述の状態確認部１０５から通知されるＣＰＵ１０の動作状態に基づき監視部１３２の監視時間を設定する機能を発揮する。なお本実施の形態１における監視時間設定部１３３は、制御パルスの出力周期に対応して監視時間Ｔを、アクティブ状態ではＴ１＝５０ミリ秒周期（＞ｔ１＝２０ミリ秒）、スリープ状態ではＴ２＝１００ミリ秒周期（＞ｔ２＝６０ミリ秒）に設定する。
【００４７】
状態確認部１０５は、ＣＰＵ１０の状態切替処理部１０４から出力される状態信号の信号レベルからＣＰＵ１０の状態を取得し、状態が変化した場合に監視回路１３の監視時間設定部１３３へ通知する機能を有する。
【００４８】
このように構成されるＥＣＵ１にて、マイコン１００とＡＳＩＣ１０１とで行なわれる動作について、フローチャートを参照して説明する。
【００４９】
図３は、実施の形態１におけるＥＣＵ１のＣＰＵ１０が自身の動作状態の遷移に関して実行する処理手順の一例を示すフローチャートである。ＣＰＵ１０は、自身の動作状態に対応する制御パルス出力周期毎に、以下に示す手順を繰り返し行なう。
【００５０】
ＣＰＵ１０は、制御パルスの出力周期ｔ（ｔ１＝２０ミリ秒又はｔ２＝６０ミリ秒）が到来するまで待機し（ステップＳ１０１）、制御パルスの出力周期が到来した時点で、制御パルスを制御パルス出力部１０２により出力する（ステップＳ１０２）。
【００５１】
ＣＰＵ１０は、状態判定部１０３により、自身の動作状態がスリープ状態からアクティブ状態へ、又は逆に、アクティブ状態からスリープ状態へ遷移するか否かを判定し（ステップＳ１０３）、状態遷移しないと判定した場合（Ｓ１０３：ＮＯ）、処理を終了する。この場合ＣＰＵ１０は、処理をステップＳ１０１から繰り返す。
【００５２】
ＣＰＵ１０は、自身が状態遷移すると判定した場合（Ｓ１０３：ＹＥＳ）、スリープ状態からアクティブ状態への遷移か否かを判定する（ステップＳ１０４）。ＣＰＵ１０は、状態判定部１０３によりスリープ状態からアクティブ状態へ遷移すると判定した場合（Ｓ１０４：ＹＥＳ）、制御パルス出力周期ｔをアクティブ状態に対応する周期ｔ１（＝２０ミリ秒）に設定し（ステップＳ１０５）、判定結果を状態切替処理部１０４へ出力する。ＣＰＵ１０は状態切替処理部１０４により、判定結果（スリープ状態からアクティブ状態へ遷移）に応じて状態信号の信号レベルをＬへ切り替え（ステップＳ１０６）、スリープ状態からアクティブ状態への状態遷移を実施し（ステップＳ１０７）、処理を終了する。この場合、ＣＰＵ１０は、処理をＳ１０１から繰り返す。
【００５３】
ＣＰＵ１０は、ステップＳ１０４にて状態判定部１０３により、アクティブ状態からスリープ状態へ遷移すると判定した場合（Ｓ１０４：ＮＯ）、制御パルス出力周期ｔをスリープ状態に対応する周期ｔ２に設定し（ステップＳ１０８）、判定結果を状態切替処理部１０４へ出力する。ＣＰＵ１０は状態切替処理部１０４により、判定結果（アクティブ状態からスリープ状態へ遷移）に応じて状態信号の信号レベルをＨへ切り替え（ステップＳ１０９）、アクティブ状態からスリープ状態への状態遷移を実施し（Ｓ１０７）、処理を終了する。この場合もＣＰＵ１０は、処理をＳ１０１から繰り返す。
【００５４】
次に、ＡＳＩＣ１０１での処理を説明する。図４は、実施の形態１におけるＥＣＵ１のＡＳＩＣ１０１が実行する処理手順の一例を示すフローチャートである。
【００５５】
ＡＳＩＣ１０１では、状態確認部１０５により、ＣＰＵ１０の状態が変化したか否かを判断する（ステップＳ２０１）。状態確認部１０５により、状態が変化していないと判断した場合（Ｓ２０１：ＮＯ）、後述のステップＳ２０５へ処理を進める。
【００５６】
ステップＳ２０１において状態確認部１０５が、状態が変化したと判断した場合（Ｓ２０１：ＹＥＳ）、信号レベルが、アクティブ状態に対応するＬであるか否かを判断する（ステップＳ２０２）。アクティブ状態に対応する信号レベルであると判断した場合（Ｓ２０２：ＹＥＳ）、監視時間設定部１３３は、監視時間Ｔをアクティブ状態に対応するＴ１（＝５０ミリ秒）に設定し（ステップＳ２０３）、処理をステップＳ２０５へ進める。
【００５７】
ステップＳ２０２において、信号レベルがスリープ状態に対応するＨであると判断した場合（Ｓ２０２：ＮＯ）、監視時間設定部１３３は、監視時間Ｔをスリープ状態に対応するＴ２（＝１００ミリ秒）に設定し（ステップＳ２０４）、処理をステップＳ２０５へ進める。
【００５８】
次に、ＡＳＩＣ１０１では、監視部１３２により制御パルス出力周期は正常か否かを判断する（ステップＳ２０５）。監視部１３２が正常であると判断した場合は（Ｓ２０５：ＹＥＳ）、処理を終了する。この場合、ＡＳＩＣ１０１ではＳ２０１から処理が繰り返される。
【００５９】
ステップＳ２０５において監視部１３２が異常であると判断した場合（Ｓ２０５：ＮＯ）、監視部１３２はリセット出力部１３１にリセット信号を出力させ（ステップＳ２０６）、処理を終了する。この場合も、ＡＳＩＣ１０１ではＳ２０１から処理が繰り返される。
【００６０】
このような処理により、ＷＤパルスの出力処理、及び処理部にＷＤパルスの出力のための端子がない場合であっても、ＣＰＵ１０の動作の異常を検出し、更に、ＣＰＵ１０の動作状態の変化に応じて監視することにより、誤検出を回避して安全性を高めることができる。
【００６１】
（実施の形態２）
実施の形態１では、ＣＰＵ１０から出力される状態信号によりＡＳＩＣ１０１の状態確認部１０５にてＣＰＵ１０の動作状態を確認する構成とした。実施の形態２では、マイコンとＡＳＩＣとが、シリアル通信を行なうことを利用し、マイコンから動作状態の情報が送信される構成とする。
【００６２】
図５は、実施の形態２におけるＥＣＵ２の構成を示す構成図である。実施の形態２におけるＥＣＵ２も、実施の形態１におけるＥＣＵ１と同様にボディＥＣＵである。
【００６３】
ＥＣＵ２は、マイコン２００と、ＡＳＩＣ２０１とを含んで構成される。ＡＳＩＣ２０１はバッテリ（＋Ｂ電源）と接続されている。
【００６４】
ＥＣＵ２のマイコン２００は、ＥＣＵ２全体の制御処理を行なうＣＰＵ（コア）２０と、ボディＥＣＵとしての動作を実現するための制御プログラムが記憶されるＲＯＭ２１と、ＡＳＩＣ２０１との間でシリアル通信を行なうための通信部とを備える。
【００６５】
ＣＰＵ２０は、ＲＯＭ２１に記憶されている制御プログラムを読み出して実行することにより、ボディＥＣＵとしての動作を実現する。ＣＰＵ２０は、ＡＳＩＣ２０１の電源回路２３により、所定の電圧に制御されたバッテリ（＋Ｂ）からの電力の供給を受ける端子を有する（Ｖｃｃ）。また、ＣＰＵ２０は、リセット（ＲＥＳＥＴ）信号を入力する端子を備え、リセット信号が入力された場合には自身を再起動させる。
【００６６】
ＣＰＵ２０は、ＡＳＩＣ２０１内の回路を制御するための制御パルスを出力する端子を有する。実施の形態２では、ＡＳＩＣ２０１が備える入出力処理回路２６へ制御パルスを出力する。
【００６７】
ＲＯＭ２１は、ＥＥＰＲＯＭ、フラッシュメモリ、マスクＲＯＭなどを用いる。ＲＯＭ２１には、上述の制御プログラムが記憶されると共に、制御用の情報が記憶されてある。
【００６８】
通信部２２は、ＡＳＩＣ２０１とのシリアル通信を実現する。通信部２２は、ＥＣＵ２に備えられるクロック（図示せず）からのクロック信号に同期してＡＳＩＣ２０１と情報を送受信する。なお、通信部２２による通信は、後述するような状態情報の通信のみならず、他の処理のための情報の送受信に用いられる。
【００６９】
マイコン２００（ＣＰＵ２０）は、自身の動作状態をスリープ状態（又は省電力状態）と、アクティブ状態（通常の稼働状態）との間で遷移させることが可能である。
【００７０】
ＡＳＩＣ２０１は、マイコン２００の制御対象への出力、又はマイコン２００の制御に用いる入力信号に対する規定された処理を行なうべく設計された回路である。ＡＳＩＣ２０１は、マイコン２００から制御対象への出力の情報を通信部２５により受信し、ＥＣＵ２に接続される各制御対象へ出力する。これにより、マイコン２００が入出力端子を多数備えない構成であっても、シリアル通信により、多くの情報の入出力が可能である。
【００７１】
ＡＳＩＣ２０１は、バッテリと接続してＥＣＵ２の内部構成部へ電力の供給を制御する電源回路２３、マイコン２００の動作を監視する監視回路２４、マイコン２００と通信するための通信部２５、及びマイコン２００との入出力に対して規定された処理を行なうようにしてある入出力処理回路２６を備える。
【００７２】
ＡＳＩＣ２０１の電源回路２３は、バッテリと接続されてＥＣＵ２の各構成部に、夫々適切な電圧を供給する。通信部２５は、通信部２２と対応し、マイコン２００との間で情報を送受信する。
【００７３】
入出力処理回路２６は、ＥＣＵ２に接続されている各種センサ又はスイッチなどの機器と接続されており、ＣＰＵ２０からの制御パルスに基づき、機器から入力される入力信号から入力情報を取得し、通信部２５を介してマイコン２００へ送信するようにしてある。
【００７４】
監視回路２４には、ＣＰＵ２０からＡＳＩＣ２０１の入出力処理回路２６への制御パルスが分岐されて入力されており、監視回路２４は制御パルスを監視する。具体的には、監視回路２４は、ＣＰＵ２０からの制御パルスの信号を入力する端子を有し、制御パルスのエッジの立ち上がりを検出する。ＡＳＩＣ２０１にて制御パルス信号を入力する端子を１つとし、ＡＳＩＣ２０１内部で分岐して監視回路２４に入力する構成としてもよい。
【００７５】
図６は、実施の形態２のＥＣＵのマイコン２００及びＡＳＩＣ２０１によって実現される機能を示す機能ブロック図である。
【００７６】
ＥＣＵ２のマイコン２００のＣＰＵ２０は、プログラムを読み出して実行することにより、制御パルス出力部２０２、状態判定部２０３、状態切替通信部２０４及び通信制御部２０５の機能を有する。
【００７７】
ＣＰＵ２０は、自身のＥＣＵ２としての動作により制御パルス出力部２０２から周期的に制御パルスを出力する。ＣＰＵ２０は、ＥＣＵ２に接続されるセンサ又はスイッチなどの機器からの情報を周期的に取得し、プログラムに基づく演算処理、信号処理を周期的（例えば２０ミリ秒周期）に行なう。このため、ＣＰＵ２０はＥＣＵ２に接続される機器へ電圧をかけさせるべくＡＳＩＣ２０１の入出力処理回路２６へ、前記周期に従ってプルアップ電源をオンにさせる制御パルスを制御パルス出力部２０２から出力する。周期の例としては、本実施の形態２における制御パルス出力周期ｔは、アクティブ状態ではｔ１（＝２０ミリ秒）周期、スリープ状態ではｔ２（＝６０ミリ秒）周期とする。
【００７８】
また、ＣＰＵ２０は、状態判定部２０３の機能により、ＥＣＵ２のマイコン２００（ＣＰＵ２０）がアクティブ状態であるか、スリープ状態であるのか、更にはアクティブ状態からスリープ状態へ遷移するのか、又はスリープ状態からアクティブ状態へ遷移するのかを判定する。例えば、状態判定部２０３は、ＡＳＩＣ２０１を介して通信部２２で受信した入力信号の情報に基づき、自身がスリープ状態へ遷移できるか否かを判断し、遷移できると判断した場合に遷移すると判定する。状態判定部２０３は、判定結果を状態切替通信部２０４へ出力する。
【００７９】
状態切替通信部２０４は、上述の状態判定部２０３における判定結果に基づき、状態を示す状態情報を通信制御部２０５により、ＡＳＩＣ２０１へシリアル通信で送信する。実施の形態２では、状態はアクティブ状態かスリープ状態の２値である。したがって状態情報は、１ビットの情報で示す。実施の形態２では、例えばビット「０」がアクティブ状態であることを示し、ビット「１」がスリープ状態であることを示す。
【００８０】
一方ＡＳＩＣ２０１は、リセット出力部２４１、監視部２４２及び監視時間設定部２４３の機能、並びに通信制御部２０６の機能を有する。なお、監視回路２４は、リセット出力部２４１、監視部２４２及び監視時間設定部２４３により構成される。
【００８１】
リセット出力部２４１は、後述するように監視部２４２から指示があった場合に、ＣＰＵ２０へリセット信号を出力する。
【００８２】
監視部２４２は、ＣＰＵ２０の制御パルス出力部２０２から周期的に出力されるべき制御パルスを分岐させて入力し、監視しており、制御パルスを直近で検出してからの経過時間を測定する。監視部２４２は、所定の周期で制御パルスを受信している場合には、ＣＰＵ２０の動作を正常と判断し、前記所定の周期よりも長い経過時間となった場合には、ＣＰＵ２０の動作を異常と判断する。詳細には、監視部２４２は、制御パルスを直近で検出してから、設定されている監視時間を経過しても制御パルス出力部２０２から制御パルスが出力されない場合に、ＣＰＵ２０にて異常が発生していると判断してリセット出力部２４１へリセット信号を出力させるべく指示する。このとき監視部２４２は、異常と判断する根拠の現象（例えば監視時間が経過しても制御パルスを検出できないなど）を所定の複数回検出した場合に初めてＣＰＵ２０の動作を異常であると判断してもよい。
【００８３】
監視時間設定部２４３は、通信により得られるＣＰＵ２０の動作状態を示す状態情報に基づき、状態が変化した場合に監視部２４２の監視時間を設定する機能を発揮する。実施の形態２における監視時間の例としては、制御パルスの出力周期に対応して監視時間Ｔを、アクティブ状態ではＴ１＝５０ミリ秒周期（＞ｔ１＝２０ミリ秒）、スリープ状態ではＴ２＝１００ミリ秒周期（＞ｔ２＝６０ミリ秒）に設定される。
【００８４】
ＡＳＩＣ２０１では、通信制御部２０６にてＣＰＵ２０から状態情報を受信した場合、状態情報が示す状態を監視回路２４の監視時間設定部２４３へ通知する。
【００８５】
このように構成されるＥＣＵ２にて、マイコン２００とＡＳＩＣ２０１とで行なわれる動作について、フローチャートを参照して説明する。
【００８６】
図７は、実施の形態２におけるＥＣＵ２のＣＰＵ２０が自身の動作状態の遷移に関して実行する処理手順の一例を示すフローチャートである。ＣＰＵ２０は、自身の動作状態に対応する制御パルス出力周期毎に、以下に示す手順を繰り返し行なう。
【００８７】
ＣＰＵ２０は、制御パルスの出力周期ｔ（ｔ１＝２０ミリ秒又はｔ２＝６０ミリ秒）が到来するまで待機し（ステップＳ３０１）、制御パルスの出力周期が到来した時点で、制御パルスを制御パルス出力部２０２により出力する（ステップＳ３０２）。
【００８８】
ＣＰＵ２０は、状態判定部２０３により、自身の動作状態がスリープ状態からアクティブ状態へ、又は逆に、アクティブ状態からスリープ状態へ遷移するか否かを判定し（ステップＳ３０３）、状態遷移しないと判定した場合（Ｓ３０３：ＮＯ）、処理を終了する。この場合ＣＰＵ２０は、処理をステップＳ３０１から繰り返す。
【００８９】
ＣＰＵ２０は、自身が状態遷移すると判定した場合（Ｓ３０３：ＹＥＳ）、スリープ状態からアクティブ状態への遷移か否かを判定する（ステップＳ３０４）。ＣＰＵ２０は、状態判定部２０３によりスリープ状態からアクティブ状態へ遷移すると判定した場合（Ｓ３０４：ＹＥＳ）、制御パルス出力周期ｔをアクティブ状態に対応する周期ｔ１（＝２０ミリ秒）に設定し（ステップＳ３０５）、判定結果を状態切替通信部２０４へ出力する。ＣＰＵ２０は状態切替通信部２０４により、判定結果（スリープ状態からアクティブ状態へ遷移）に応じて状態情報としてビット「０」を通信制御部２０５によりＡＳＩＣ２０１へ送信し（ステップＳ３０６）、スリープ状態からアクティブ状態への状態遷移を実施し（ステップＳ３０７）、処理を終了する。この場合、ＣＰＵ２０は、処理をＳ２０１から繰り返す。
【００９０】
ＣＰＵ２０は、ステップＳ３０４にて状態判定部２０３により、アクティブ状態からスリープ状態へ遷移すると判定した場合（Ｓ３０４：ＮＯ）、制御パルス出力周期ｔをスリープ状態に対応する周期ｔ２に設定し（ステップＳ３０８）、判定結果を状態切替通信部２０４へ出力する。ＣＰＵ２０は状態切替通信部２０４により、判定結果（アクティブ状態からスリープ状態へ遷移）に応じて状態情報としてビット「１」を通信制御部２０５によりＡＳＩＣ２０１へ送信し（ステップＳ３０９）、アクティブ状態からスリープ状態への状態遷移を実施し（Ｓ３０７）、処理を終了する。この場合もＣＰＵ２０は、処理をＳ３０１から繰り返す。
【００９１】
次に、ＡＳＩＣ２０１での処理を説明する。図８は、実施の形態２におけるＥＣＵ２のＡＳＩＣ２０１が実行する処理手順の一例を示すフローチャートである。
【００９２】
ＡＳＩＣ２０１では、通信制御部２０６により、通信部２５で状態情報を受信したか否かを判断する（ステップＳ４０１）。通信制御部２０６により、受信していないと判断した場合（Ｓ４０１：ＮＯ）、処理はステップＳ４０７へ進む。
【００９３】
ステップＳ４０１において状態情報を受信したと判断した場合（Ｓ４０１：ＹＥＳ）、監視時間設定部２４３は、通信制御部２０６から状態情報を取得し（ステップＳ４０２）、状態が変化したか否かを判断する（ステップＳ４０３）。ＡＳＩＣ２０１では、監視時間設定部２４３が、状態が変化していないと判断した場合（Ｓ４０３：ＮＯ）、処理はステップＳ４０７へ進む。
【００９４】
監視時間設定部２４３により状態が変化したと判断した場合（Ｓ４０３：ＹＥＳ）、状態情報がアクティブ状態に対応するビット「０」であるか否かを判断する（ステップＳ４０４）。アクティブ状態に対応するビット「０」であると判断した場合（Ｓ４０４：ＹＥＳ）、監視時間設定部２４３は、監視時間Ｔをアクティブ状態に対応するＴ１（＝５０ミリ秒）に設定し（ステップＳ４０５）、処理をステップＳ４０７へ進める。
【００９５】
ステップＳ４０４において、状態情報がスリープ状態に対応するビット「１」であると判断した場合（Ｓ４０４：ＮＯ）、監視時間設定部２４３は、監視時間Ｔをスリープ状態に対応するＴ２（＝１００ミリ秒）に設定し（ステップＳ４０６）、処理をステップＳ４０７へ進める。
【００９６】
次にＡＳＩＣ２０１では、監視部２４２により制御パルス出力周期は正常か否かを判断する（ステップＳ４０７）。監視部２４２が正常であると判断した場合は（Ｓ４０７：ＹＥＳ）、処理を終了する。この場合、ＡＳＩＣ２０１ではＳ４０１から処理が繰り返される。
【００９７】
ステップＳ４０７において監視部２４２が異常であると判断した場合（Ｓ４０７：ＮＯ）、監視部２４２はリセット出力部２４１にリセット信号を出力させ（ステップＳ４０８）、処理を終了する。この場合も、ＡＳＩＣ２０１ではＳ４０１から処理が繰り返される。
【００９８】
このような処理により、ＷＤパルスの出力処理、及び処理部にＷＤパルスの出力のための端子がない場合であっても、ＣＰＵ１０の動作の異常を検出し、更に、ＣＰＵ１０の動作状態の変化に応じて監視することにより、誤検出を回避して安全性を高めることができる。
【００９９】
実施の形態２では特に、制御のために用いられる通信部２２及び通信部２５を利用して状態情報を送受信するから、実施の形態１の状態情報の入出力は不要である。
【０１００】
なお、開示された実施の形態は、全ての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上述の説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味及び範囲内での全ての変更が含まれることが意図される。
【符号の説明】
【０１０１】
１  ＥＣＵ（処理装置）
１０  ＣＰＵ（処理部）
１０２  制御パルス出力部
１０３  状態判定部
１０４  状態切替処理部
１０５  状態確認部
１３  監視回路（異常検出部）
１３１  リセット出力部
１３２  監視部
１３３  監視時間設定部
２０  ＣＰＵ（処理部）
２０２  制御パルス出力部
２０３  状態判定部
２０４  状態切替通信部
２２，２５  通信部
２４  監視回路（異常検出部）
２４１  リセット出力部
２４２  監視部
２４３  監視時間設定部
【図１】
2011096088.tif 000003
【図２】
2011096088.tif 000004
【図３】
2011096088.tif 000005
【図４】
2011096088.tif 000006
【図５】
2011096088.tif 000007
【図６】
2011096088.tif 000008
【図７】
2011096088.tif 000009
【図８】
2011096088.tif 000010
【図９】
2011096088.tif 000011