(57)【要約】【課題】  自動車の安全性能と運動性能を両立しつつ、半導体メモリの記憶容量の使用量を削減する車載制御装置を提供する。半導体メモリの故障時でも、自動車の安全性能と運転性能を両立しつつ、記憶容量の使用量削減を可能にすること。【解決手段】  データを記憶する記憶部と、前記記憶部が格納しているデータを用いて処理を実施する制御部と、前記記憶部の故障を検出し通知する機能を有する検出部と、を備えた車載制御装置において、前記記憶部は、ソフトウェアによりある単位に分割された部分記憶部で構成されているもの、間接アドレッシングによりデータの書き込み、読み出しがなされるもの、であって、前記記憶部の一部に故障が発生した際に、前記間接アドレッシングにおけるポインタが指示する前記故障が生じた部分記憶部のアドレスを前記未使用の記憶部のアドレスに書き換えることを特徴とする車載制御装置。【選択図】図２
2017228052.tif 000002
【特許請求の範囲】
【請求項１】
データを記憶する記憶部と、前記記憶部が格納しているデータを用いて処理を実施する制御部と、前記記憶部の故障を検出し通知する機能を有する検出部と、を備えた車載制御装置において、
前記記憶部は、
ソフトウェアによりある単位に分割された部分記憶部で構成されているもの、
間接アドレッシングによりデータの書き込み、読み出しがなされるもの、
であって、前記記憶部の一部に故障が発生した際に、前記間接アドレッシングにおけるポインタが指示する前記故障が生じた部分記憶部のアドレスを前記未使用の記憶部のアドレスに書き換えることを特徴とする車載制御装置。
【請求項２】
請求項１の前記記憶部が、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）で構成されていることを特徴とする車載制御装置。
【請求項３】
請求項２の車載制御装置において、複数の部分記憶部を指示するポインタテーブルが前記記憶部に備えられていることを特徴とする車載制御装置。
【請求項４】
請求項３の車載制御装置において、変更のあった前記ポインタテーブルを不揮発データとして記憶するための不揮発データ記憶部を有することを特徴とする車載制御装置。
【請求項５】
請求項３及び請求項４の車載制御装置が、車両用変速機の制御装置として使用されていることを特徴とする車載制御装置。
【請求項６】
請求項５の車載制御装置において、前記部分記憶部の１つがイグニッションスイッチのモニタ制御のために使用されていることを特徴とする車載制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は車載制御装置に関する。
【背景技術】
【０００２】
近年、自動車のさらなる電子化に伴い、自動車部品の安全に対するニーズが高まっている。それを受けて、機能安全に関する国際標準としてＩＥＣ６１５０８やＩＳＯ２６２６２等も制定され、今後の自動車に関わる製造においてそれらへの準拠が必須条件となってきている。
【０００３】
そのようなニーズに対応すべく、車両用変速機に搭載されているマイクロプロセッサでは、半導体メモリであるＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）の故障検出機能の高性能化等、安全状態を常時監視できる機能が備わってきている。また、自動車の運動性能においても、機能安全で車両の安全を確保しつつも、運動性能低下を回避することも重要になっている。
【０００４】
一方で、マイクロプロセッサの技術向上により半導体メモリの記憶容量が増加し、より複雑で大規模な制御やシステムに対応できるようになってきているが、さらなる自動車の電子化や機能安全等への対応により半導体メモリの使用量も急増し、記憶容量のひっ迫は大きな懸念事項となっている。そのため、自動車の安全性能と運動性能を両立しつつ、記憶容量のひっ迫を回避することが重要である。
【０００５】
ところで、自動車の安全性能と運動性能に関わる技術として、半導体メモリのフェイルセーフに関する技術が公開されている。特許文献１では半導体メモリの記憶部に故障が発生したときのフェイルセーフが提案されており、内容としては、あらかじめ通常の使用部とは別に予備部を用意しておき、通常の使用部で故障が起こった場合に予備部に切り替えて通常処理を継続しようとする技術である。
【０００６】
しかし、特許文献１の従来技術では、予備部はハードウェア的に特殊な構成が必要であり、既存メモリにそのまま適用することが難しかった。そこで、特許文献２では、特許文献１の課題であった、既存メモリに対する適用の難しさを解決するフェイルセーフ処理方法が提案されている。具体的な方法としては、別で予備部を用意しなくても、記憶部の一部で故障が発生した場合、間接アドレッシングにより故障部分へアクセスしていたポインタを、同じ通常使用の未使用記憶部に書き換えることで処理を継続しようとする方法である。ただし、書き換えを行う条件としては、未使用の記憶部があると判定された場合のみである。つまり、別でハードウェア的に特殊な構成を有する予備部を設ける必要が無く、通常使用の記憶部のみで実現可能なため、既存メモリにも容易に適用できるフェイルセーフ処理方法である。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２０００−１６３９８５号公報
【特許文献２】特開２００５−１４９１８３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、特許文献２の既存技術では、記憶部の一部が故障した場合に記憶部のポインタをそのまま別領域に書き換えるため、記憶部と同じ容量の空き容量が必要となる。つまり、書き換え時の記憶容量に関して何ら考慮がなされていなかった。そのため、現在の自動車に対するニーズや問題を考慮すると、特許文献２の既存技術では記憶容量のひっ迫が問題となってくることが予想される。
【０００９】
本発明は、上記問題に鑑みてなされたものであり、その目的は、半導体メモリの記憶部に故障が発生したときでも、自動車の安全性能と運転性能を両立しつつ、記憶容量の使用量削減を可能にすることである。
【課題を解決するための手段】
【００１０】
データを記憶する記憶部と、前記記憶部が格納しているデータを用いて処理を実施する制御部と、前記記憶部の故障を検出し通知する機能を有する検出部と、を備えた車載制御装置において、
前記記憶部は、
ソフトウェアによりある単位に分割された部分記憶部で構成されているもの、
間接アドレッシングによりデータの書き込み、読み出しがなされるもの、
であって、前記記憶部の一部に故障が発生した際に、前記間接アドレッシングにおけるポインタが指示する前記故障が生じた部分記憶部のアドレスを前記未使用の記憶部のアドレスに書き換えることを特徴とする車載制御装置。
【発明の効果】
【００１１】
本発明によれば、半導体メモリの記憶部に故障が発生したときでも、分割された部分記憶部のみ別の場所に書き換えて処理を継続できるため、自動車の安全性能と運転性能を両立しつつ、記憶容量の使用量削減を実現できる。
【図面の簡単な説明】
【００１２】
【図１】車両用変速機の制御装置に関するシステム概要の一例を示す。
【図２】イグニッションスウィッチ（以下、ＳＷと省略する）モニタ制御に関する本発明の実施形態の一例を示す。
【図３】イグニッションＳＷの監視とイグニッションＳＷ異常時の対応に関する制御のフローチャートを示す。
【図４】ＲＡＭ割り付け制御に関するフローチャートを示す。
【発明を実施するための形態】
【００１３】
以下、本発明の実施の形態を図面に基づき詳細に説明する。
【実施例】
【００１４】
図１を用いて，車載制御装置の例である車両用変速機の制御装置に関するシステム概要の一例について説明する。  
車両用変速機には、エンジン００８からの駆動力を受けるプライマリプーリー００２、ファイナルギア００９へ駆動力を出力するセカンダリプーリー００４、プライマリプーリー００２とセカンダリプーリー００４を接続するベルト００３を備える。プライマリプーリー００２とセカンダリプーリー００４は、油圧により溝幅を変化させ、変速比を変えることができる。
【００１５】
また、プライマリプーリー００２とセカンダリプーリー００４へ油を供給するオイルポンプ００５、油の供給量を調整するプライマリソレノイドバルブ００６、セカンダリソレノイドバルブ００７を備える。
【００１６】
車両用変速機の制御装置であるＡＴＣＵ(Ａｕｔｏｍａｔｉｃ  Ｔｒａｎｓｍｉｓｓｉｏｎ  Ｃｏｎｔｒｏｌ  Ｕｎｉｔ）００１では、プライマリソレノイドバルブ００６、セカンダリソレノイドバルブ００７を開閉することで、プライマリプーリー００２とセカンダリプーリー００４の油圧を制御し、それにより車両用変速機の変速比を制御している。
【００１７】
図２から４を用いて本発明の実施例について説明する。  
図２は、イグニッションＳＷモニタ制御に関する本発明の実施形態の一例を示す。ＡＴＣＵ１０１内には、マイクロプロセッサ１０２、マイクロプロセッサ１０２への電源供給を行う電源ＩＣ１２０を備える。電源ＩＣ１２０内には、バッテリ１２５から電源を受けるＶｉｎ１２３、マイクロプロセッサへの電源供給を行うＶｏｕｔ１２２、Ｖｏｕｔ１２２の出力許可を行うＶｏｕｔ出力許可判定装置１２１を備える。Ｖｏｕｔ出力許可判定装置１２１へはイグニッションＳＷ１２４とマイクロプロセッサ電源供給制御１１９からの信号が入力され、入力のいずれかがＯＮ状態のときにＶｏｕｔ１２２が出力許可状態となる。
【００１８】
マイクロプロセッサ１０２内には、不揮発データを記憶する不揮発データ記憶部１０６、ソフトウェアプログラムを記憶するＲＯＭ制御部１０４、ソフトウェアの実行に必要なデータを記憶するＲＡＭ記憶部１０５、ＲＡＭ故障アドレスを検出できるＲＡＭ故障検出部１０３を備える。
【００１９】
ＲＡＭ故障検出部１０３内には、ＲＡＭ故障発生有無の情報を格納するＲＡＭ故障通知レジスタ１２９、ＲＡＭ故障の発生したアドレスｎ個を格納するＲＡＭ故障アドレス格納レジスタ１３０を備える。ＲＡＭ故障検出部１０３はマイクロプロセッサ１０２に搭載されている機能であり、マイクロプロセッサが起動してから停止するまでの間、ＲＡＭ故障を監視する。
【００２０】
ＲＯＭ制御部１０４内には、ＲＡＭ割り付け制御１０７、イグニッションＳＷモニタ制御１１５、ＡＴＣＵ終了制御１１６、マイクロプロセッサ電源供給制御１１９を有する。
【００２１】
ＲＡＭ割り付け制御１０７では、故障アドレスを含む部分記憶部をアドレス空間１２７の未使用記憶部に割り付ける制御を行う。構成としては、ＲＡＭ故障アドレス格納レジスタ１３０から故障アドレスを取得するＲＡＭ故障アドレス取得処理１０８、ＲＡＭ故障アドレス取得処理１０８が取得したアドレスを基に故障がＲＡＭ記憶部のどの部分記憶部で起きたかを判定するＲＡＭ故障記憶部判定処理１０９、ＲＡＭ割り付け領域の判定を行うＲＡＭ割り付け領域判定処理１１０、ＲＡＭ割り付けの際にＲＡＭ容量がオーバーフローしているかを判定するＲＡＭ容量オーバーフロー判定処理１１１、スタック用ポインタテーブル１２６の開始アドレスを書き換えてアドレス空間１２７の未使用記憶部にスタックの割り付けを行うＲＡＭ割り付け処理１１２、ＲＡＭ割り付け後に通常動作に復帰するための処理を行う通常動作復帰処理１１４、ＲＡＭ割り付け不可の場合に行う故障時処理１１３、を備える。
【００２２】
イグニッションＳＷモニタ制御１１５は、イグニッションＳＷ１２４の電圧をモニタする。ＡＴＣＵ終了制御１１６では、車両用変速機やＡＴＣＵ１０１の故障を回避するための処理が行われる。イグニッションＳＷ監視処理１１７は、イグニッションＳＷ１２４のＯＮ、ＯＦＦを常時監視する。終了処理１１８は、イグニッションＳＷ１２４がＯＮからＯＦＦになり、ＯＦＦ状態が一定時間経過したときに行われ、マイクロプロセッサ１０２の初期化処理等、ＡＴＣＵ１０１の故障を回避するための処理が行われる。  
マイクロプロセッサ電源供給制御１１９は、電源ＩＣ１２０によりマイクロプロセッサ１０２への電源供給を制御する。不揮発データ記憶部１０６内には、分割されたＲＡＭ記憶部の部分記憶部であるスタック領域を示すポインタテーブル、すなわちスタック用ポインタテーブル１２８を備える。
【００２３】
スタック用ポインタテーブル１２８には、制御単位で分割された部分記憶部を備え、イグニッションＳＷモニタ制御１１５のスタック領域が割り付けられている。他の部分記憶部としては、共通で使用するスタック領域が割り付けられている。それぞれに対して、開始アドレスとデータサイズが備えられている。
【００２４】
ＲＡＭ記憶部１０５内には、不揮発データ記憶部１０６のスタック用ポインタテーブル１２８からコピーしてきたスタック用ポインタテーブル１２６と、スタック用ポインタテーブル１２６で示されるアドレス空間１２７の各スタック領域を備える。また、アドレス空間１２７に未使用記憶部を備える。
【００２５】
図３、図４は、イグニッションＳＷモニタ制御に関する本発明のソフトウェア処理の一例を示す。  
前提を以下に示す。  
マイクロプロセッサ１０２が起動してから終了するまでの間、一定周期で図３のソフトウェア処理を行う。
【００２６】
各制御用スタックは各制御でのみ使用される。すなわち、アドレス空間１２７のイグニッションＳＷモニタ制御用スタックはイグニッションＳＷモニタ制御１１５でのみ使用される。共通用スタックは、イグニッションＳＷモニタ制御１１５以外で使われるスタックである。
【００２７】
スタック用ポインタテーブル１２６で示されている各制御、つまり今回の場合はイグニッションＳＷモニタ制御１１５では、グローバル変数は使用されず、ローカル変数およびＲｅｔｕｒｎにより処理が行われる。この意図としては、イグニッションＳＷモニタ制御１１５中のいずれのタイミングでＲＡＭ故障が発生しても、通常動作復帰処理１１４によりイグニッションＳＷモニタ制御１１５の先頭アドレスから正常に通常動作を開始できるようにするためである。
【００２８】
図３は、イグニッションＳＷの監視とイグニッションＳＷ異常時の対応に関する制御のフローチャートである。  
スタック用ポインタテーブル１２６を参照してアドレス空間１２７のイグニッションＳＷモニタ制御用スタックを使用しているイグニッションＳＷモニタ制御２０１では、モニタしていたイグニッションＳＷ１２４の信号に異常が発生すると、イグニッションＳＷ監視処理２０２においてそれを検出し、終了処理２０３が実行される。それを受けて、マイクロプロセッサ電源供給制御２０４が電源ＩＣ１２０からの電源供給を遮断する。
【００２９】
図３のフローチャートにおいて、イグニッションＳＷモニタ制御２０１中にアドレス空間１２７のイグニッションＳＷモニタ制御用スタックで故障が発生した場合、ＲＡＭ故障検出部１０３のＲＡＭ故障アドレス格納レジスタ１３０に故障アドレスが記憶され、ＲＡＭ故障通知レジスタ１２９により割り込み処理が起動し、ＲＡＭ割り付け制御２０５が実行される。
【００３０】
図４は、ＲＡＭ割り付け制御に関するフローチャートである。
【００３１】
ＲＡＭ故障検出部１０３のＲＡＭ故障アドレス格納レジスタ１３０に記憶された故障アドレスをＲＡＭ故障アドレス取得処理３０１により取得する。
【００３２】
取得した故障アドレスを用いて、ＲＡＭ故障記憶部判定処理３０２を行う。いずれのスタック領域にも合致していなければ、例外処理のための故障時処理３０７を行う。アドレス空間１２７のイグニッションＳＷモニタ制御用スタックが故障だと判定されると、ＲＡＭ割り付け領域判定処理３０３を行い、アドレス空間１２７の未使用記憶部のどこに割り付けるかを決定する。
【００３３】
ＲＡＭ割り付け領域判定処理３０３では、開始アドレスの最大値算出処理３０３ａで、スタック用ポインタテーブル１２６の部分記憶部における開始アドレスの最大値を求める。つまり、アドレス空間１２７の最下層にある部分記憶部の開始アドレスを算出する。次に、ＲＡＭ割り付けアドレス算出処理３０３ｂにおいて、開始アドレスの最大値算出処理３０３ａで算出した開始アドレスと該当する最下層の部分記憶部のデータサイズを足したアドレスを算出する。そして、その足したアドレスの次の有効なアドレス（例えば４バイト境界の場合は、次の４バイト境界となるアドレス）がＲＡＭ割り付けアドレスとなる。
【００３４】
次に、ＲＡＭ容量オーバーフロー判定処理３０４によりＲＡＭ記憶部１０５のオーバーフローを判定する。処理としては、ＲＡＭ割り付けアドレス算出処理３０３ｂで算出したＲＡＭ割り付けアドレスと故障発生した制御のスタックデータサイズ（ここではイグニッションＳＷモニタ制御１１５の０ｘ７ＦＦ）を足したアドレスが使用可能なＲＡＭ容量より大きいかどうかを判定する。Ｙｅｓと判定された場合は、例外処理のための故障時処理３０７を実行する。Ｎｏと判定された場合は、ＲＡＭ割り付け処理３０５で、スタック用ポインタテーブル１２６の該当する部分記憶部の開始アドレスをＲＡＭ割り付けアドレス算出処理３０３ｂで算出されたＲＡＭ割り付けアドレスに書き換える。
【００３５】
続いて、通常動作復帰処理３０６でプログラムカウンターをイグニッションＳＷモニタ制御２０１の先頭アドレスに書き換え、処理を終了する。マイクロプロセッサ１０２は、次のクロックでイグニッションＳＷモニタ制御２０１の先頭から、新しく割り付けられたスタックを用いて通常の制御を行う。
【００３６】
共通用スタックで故障が発生した場合でも、ＲＡＭ割り付け領域判定処理３０３、ＲＡＭ容量オーバーフロー判定処理３０４、ＲＡＭ割り付け処理３０５まで同じように処理が進むが、通常動作復帰処理３０６では、どの制御の途中で故障が発生したか判断できないため、マイクロプロセッサ１０２のリセット処理を行い、通常動作の復帰を行う。
【００３７】
また、イグニッションＳＷ  ＯＦＦ時などのバックアップ処理において、書き換えたスタック用ポインタテーブル１２６を不揮発メモリ記憶部１０６に書き込み、次のドライビングサイクルから新しく割り付けられたスタック領域で処理を継続する。
【００３８】
以上の通り、本実施例の車載制御装置（ＡＴＣＵ００１）は、データを記憶する記憶部（ＲＡＭ記憶部１０５）と、記憶部（ＲＡＭ記憶部１０５）が格納しているデータを用いて処理を実施する制御部（ＲＯＭ制御部１０４）と、前記記憶部の故障を検出し通知する機能を有する検出部（ＲＡＭ故障検出部１０３）と、を備えた。そして、記憶部（ＲＡＭ記憶部１０５）は、ソフトウェアによりある単位に分割された部分記憶部で構成されているもの、間接アドレッシングによりデータの書き込み、読み出しがなされるもの、であって、記憶部（ＲＡＭ記憶部１０５）の一部に故障が発生した際に、間接アドレッシングにおけるポインタが指示する前記故障が生じた部分記憶部のアドレスを前記未使用の記憶部のアドレスに書き換えるようにした。
【００３９】
また、複数の部分記憶部を指示するポインタテーブル（スタック用ポインタテーブル１２６）が記憶部（ＲＡＭ記憶部１０５）に備えられていることが望ましい。また、変更のあった前記ポインタテーブルを不揮発データとして記憶するための不揮発データ記憶部（不揮発データ記憶部１０６）を有することが望ましい。
【００４０】
また、上記した車載制御装置が、車両用変速機の制御装置として使用されていることが望ましい。さらに上記した部分記憶部の１つがイグニッションスイッチのモニタ制御のために使用されていることが望ましい。
【００４１】
本実施例では、各制御と共通用途のスタック領域にフォーカスした部分記憶部を備えて、ＲＡＭ割り付け制御１０７を行うようにしたものである。上記したイグニッションＳＷモニタ制御１１５のスタック領域において故障が生じたとき、仮にスタック領域を分割していなければ、スタック用ポインタテーブル、イグニッションＳＷモニタ制御用スタック、共通用スタック、の３つすべての記憶部を未使用記憶部に割り付けなければならない。特に共通用スタック領域は他と比べてデータサイズがかなり大きい。この場合、割り付けを行う際に大きな記憶容量を必要とするため、近年急増しているＲＡＭ使用量を考慮すると望ましくない。本実施例を用いると、制御単位で分割されているイグニッションＳＷモニタ制御用スタックのみを未使用記憶部に割り付けることができるので、ＲＡＭ使用量を抑えることができる。
【００４２】
また、近年は、機能安全の観点において重要な制御や処理のスタック領域を排他的に使用して安全性を確保することが検討されている。本実施例は、そのような機能安全への取り組みに対しても親和性があると考えられる。各制御に設定する制御を機能安全として重要な制御にすることによって、安全性能と運動性能の両立、ＲＡＭ使用量削減に加え、スタック使用に関する機能安全への適用も可能となる優れた発明である。
【００４３】
なお、記憶部の分割方法やそれらの使用形態などは本実施例に記載の範囲に限定されるものではない。例えば、記憶部を制御単位ではない方法で分割できる。また各制御にイグニッションＳＷモニタ制御１１５のみを設定したが、イグニッションＳＷモニタ制御１１５のみならず他の制御も複数設定できる。
【００４４】
以上、車両用変速機の制御装置を例に説明したが、本発明の技術はそれ以外の車載制御装置、例えばエンジンの制御装置にも適用することができる。
【図１】
2017228052.tif 000003
【図２】
2017228052.tif 000004
【図３】
2017228052.tif 000005
【図４】
2017228052.tif 000006