JP6229637B2 - 車載制御装置 - Google Patents

車載制御装置 Download PDF

Info

Publication number
JP6229637B2
JP6229637B2 JP2014218643A JP2014218643A JP6229637B2 JP 6229637 B2 JP6229637 B2 JP 6229637B2 JP 2014218643 A JP2014218643 A JP 2014218643A JP 2014218643 A JP2014218643 A JP 2014218643A JP 6229637 B2 JP6229637 B2 JP 6229637B2
Authority
JP
Japan
Prior art keywords
program
abnormality
vehicle
cpu
safety
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2014218643A
Other languages
English (en)
Other versions
JP2016084050A (ja
Inventor
一美 山田
一美 山田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toyota Motor Corp filed Critical Toyota Motor Corp
Priority to JP2014218643A priority Critical patent/JP6229637B2/ja
Publication of JP2016084050A publication Critical patent/JP2016084050A/ja
Application granted granted Critical
Publication of JP6229637B2 publication Critical patent/JP6229637B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Retry When Errors Occur (AREA)

Description

本発明は、車両制御装置に関する。
従来から、車両に発生した異常に対応して車両の機能(例えば、走行機能)を制限する場合に、異常の種類に応じて、制限の程度を変更する技術が知られている(例えば、特許文献1)。
特許文献1では、車両に発生した異常に対応して駆動力を制限する場合に、異常の種類(異常の発生に伴い更なる異常が発生するおそれがあるか否か等)に応じて、段階的に駆動力制限の程度を変更する運転制御装置が記載されている。
このように、車両に発生した異常の種類に応じて、車両の機能を制限する程度を変更することで、車両機能の維持と、安全性の確保との両立を図ることができる。
特開2001−317399号公報
ところで、車両に発生する異常には、車両の様々な制御を実行する制御装置内のCPU上で実行されるプログラムの異常が含まれる。このようなCPU上で実行されるプログラムの異常に関しても、プログラム自体の異常(コードの誤り等)の場合もあれば、プログラムを実行するハードウェア(CPUやバス等)に起因する異常の場合もあり得る。そのため、本来、発生した異常の種類に応じて、車両の機能を制限することが望ましい。
しかしながら、単に、実行されるプログラムの異常を検出するのみでは、その原因の特定ができないため、異常の種類に関わらず、安全性の確保を優先して、例えば、制御を停止させると共に、CPUを強制的にリセットする処理等を行わざるを得ない場合がある。
そこで、上記課題に鑑み、車両の各種制御を実行する制御装置内のCPU上で実行されるプログラムに異常が発生した場合に、車両機能の維持と、安全性の確保との両立を図り、発生した異常の種類に応じて、車両の機能制限を実行することが可能な車両制御装置を提供することを目的とする。
上記目的を達成するため、一実施形態において、車両制御装置は、
CPUと、
前記CPU上で実行されることにより車両の安全性に関連する車両制御を実行する第1のプログラム、及び、前記CPU上で実行されることにより前記安全性に関連する車両制御以外の車両制御を実行する第2のプログラムを格納するROMと、
前記ROM内に含まれるデータの異常を検出するROM異常検出部と、
前記CPU上で実行される前記第1のプログラム及び前記第2のプログラムの異常を検出する実行プログラム異常検出部と、
前記実行プログラム異常検出部により異常が検出された際に実行されていたプログラムが前記第1のプログラムの場合は、前記CPUのリセットを実行し、前記実行プログラム異常検出部により異常が検出された際に実行されていたプログラムが前記第2のプログラムであった場合であって、前記ROM異常検出部により異常が検出されない場合は、前記CPUのリセット、又は、前記車両の機能制限を実行する異常時処理部を備える。
本実施の形態によれば、車両の各種制御を実行する制御装置内のCPU上で実行されるプログラムに異常が発生した場合に、車両機能の維持と、安全性の確保との両立を図り、発生した異常の種類に応じて、車両の機能制限を実行することが可能な車両制御装置を提供することができる。
本実施形態に係る車両制御装置の構成の一例を示すブロック図である。 車両制御装置におけるメモリ保護機能の一例を示す図である。 車両制御装置によるアクセス異常時処理の一例を示すフローチャートである。
以下、図面を参照して発明を実施するための形態について説明する。
まず、本実施形態に係る車両制御装置1の構成について説明をする。
図1は、本実施形態に係る車両制御装置1の構成の一例を示すブロック図である。車両制御装置1は、ハイブリッド車としての車両100に搭載され、ハイブリッド車の走行制御や高圧バッテリの充放電制御を実行する。
図1に示すように、本実施形態に係る車両制御装置1は、HV−ECU(Electric Control Unit)10を含む。また、車両100は、車両制御装置1に関連する構成要素として、駆動力源であるモータ20、エンジン30、及び、エンジン30の始動手段かつエンジン30を動力源とする交流発電機であるジェネレータ40を含む。
HV−ECU10は、ハイブリッド車としての車両100の走行制御と高圧バッテリの充放電制御を主に実行する電子制御ユニットである。HV−ECU10は、マイクロコンピュータとして構成され、CPU(Central Processing Unit)11、メインメモリ12、メモリ管理部13等を含む。HV−ECU10は、CPU11上でメインメモリ12に格納される各種プログラムを実行することにより各種制御処理を実行する。
なお、HV−ECU10は、上記構成要素の他、マイクロコンピュータが一般的に備えるBIOS(Basic Input/Output System) ROM、DMA(Direct Memory Access)コントローラ、割り込みコントローラ、I/O等を備えてよい。
CPU11は、メインメモリ12に格納される各種プログラムを実行する処理手段である。CPU11は、例えば、命令フェッチユニット、ALU(Arithmetic Logic Unit)、MUL(乗算器)、DIV(除算器)、LSU(Load Store Unit)等を含む演算ユニット、内部レジスタやキャッシュメモリ等の内部メモリ、プログラムカウンタ等を有する。
メインメモリ12は、ROM(Read Only Memory)である。メインメモリ12には、車両100の制御に関する第1のプログラム及び第2のプログラムが格納される。また、メインメモリ12には、第1のプログラム用データ(第1のプログラムをCPU11で実行する際に利用するデータ)及び第2のプログラム用データ(第2のプログラムをCPU11で実行する際に利用するデータ)等が格納される。
なお、メインメモリ12に格納される各種プログラムは、HV−ECU10上のOS(Operating System、以下単にOSと称する)によるタスク管理の下、メインメモリ12からCPU11にロードされ、実行される。また、当該OSは、マルチタスク機能により、複数のプログラムを同時並行して、CPU11上で実行させることができる。
第1のプログラムは、車両100の安全性に関連する車両制御処理を実行するプログラム(以下、「安全関連プログラム」と称する)である。「車両100の安全性に関連する車両制御」とは、車両100の走行に関連する制御のうち、制御に異常が生じた場合に、運転者が当該異常による影響を回避することが困難なものを意味し、より具体的には、制御の異常による影響が即時的に生じるものを意味してよい。第1のプログラムは、例えば、車両100の走行状態や運転者による操作状態等に応じて、モータ20の駆動トルク及びエンジン30の要求出力を算出するためのプログラムである。以下、第1のプログラムは、当該例にかかるプログラムである前提で説明を行う。
第2のプログラムは、車両100の安全性に関連する車両制御処理以外の車両制御処理(車両100の安全性に関連しない車両制御処理)を実行するプログラム(以下、「非安全関連プログラム」と称する)である。「車両100の安全性に関連しない車両制御」とは、車両100の走行に関連する制御のうち、制御に異常が生じた場合に、運転者が当該異常による影響を回避することが可能なものを意味し、より具体的には、制御の異常による影響が緩やかに(即時的でなく)生じるものを意味してよい。第2のプログラムは、例えば、ジェネレータ40を駆動して、モータ20の駆動力源である高圧バッテリ(不図示)の充電を行うためのプログラムである。以下、第2のプログラムは、当該例にかかるプログラムである前提で説明を行う。
図2は、メインメモリ12のメモリ保護機能の一例を示す図であるが、メインメモリ12には、第1のプログラムを実行するタスク(第1のプログラム実行タスク)によるアクセスが許可される第1のプログラム領域と第2のプログラムを実行するタスク(第2のプログラム実行タスク)によるアクセスが許可される第2のプログラム領域が設けられる。
図2に示すように、第1のプログラム領域には、第1のプログラム及び第1のプログラム用データが格納され、第2のプログラム領域には、第2のプログラム及び第2のプログラム用データが格納される。OS及びメモリ管理部13によるメモリ保護機能によって、第1のプログラム領域には、第1のプログラム実行タスクのみがアクセス可能とされ、第2のプログラム領域には、第2のプログラム実行タスクのみがアクセス可能とされる。第2のプログラム実行タスクによる第1のプログラム領域へのアクセス、及び、第1のプログラム実行タスクによる第2のプログラム領域へのアクセスは、メモリ管理部13によりアクセス異常(不正アクセス)と判断される。
また、メインメモリ12は、アクセス異常が発生した場合の処理を実行するプログラム(アクセス異常時処理プログラム)を格納する。アクセス異常時処理プログラムは、メモリ管理部13からOSに対して異常アクセスの通知がされると、OSによる割り込み処理によりCPU11上で実行される。アクセス異常時処理の詳細については、後述する。
また、メインメモリ12は、メインメモリ12に含まれるデータの異常検出処理を実行するプログラム(メインメモリ異常検出処理プログラム)を格納する。例えば、メインメモリ異常検出処理プログラムは、メインメモリ12に含まれるデータ内のチェックサムを用いて、メインメモリ12に含まれるデータの異常検出処理を実行してよい。具体的には、メインメモリ12のアドレスを順次インクリメントしながら、チェックサムの値を累積的に加算し、予め設定した正しいチェックサムの値との一致性に応じて、メインメモリ12内のデータが異常か否かを判断してよい。
メモリ管理部13は、例えば、MMU(Memory Management Unit)であり、メインメモリ12のメモリ保護機能を提供する。メモリ管理部13は、例えば、CPU11からのアクセス要求に含まれる仮想ページ番号とメインメモリ12の物理ページ番号との所定の対応関係(ページエントリテーブル)に応じて、CPU11からメインメモリ12へのアクセスを管理する。そして、メモリ管理部13は、アクセス権のないメインメモリ12の領域(物理ページ番号)にアクセスしている場合、OSに対して、アクセス異常(不正アクセス)を通知する。
次に、本実施形態に係る車両制御装置1による上述したアクセス異常時処理の詳細について説明をする。
図3は、本実施形態に係る車両制御装置1によるアクセス異常時処理の一例を示すフローチャートである。なお、当該フローチャートは、メモリ管理部13からのアクセス異常(具体的には、第1のプログラム実行タスクによる第2のプログラム領域へのアクセス、又は、第2のプログラム実行タスクによる第1のプログラム領域へのアクセス)の通知に応じて、OSがアクセス異常時処理プログラムをCPU11上で実行することにより実現される。
ステップS101では、メモリ管理部13によりアクセス異常の判断がされた際に、CPU11上で実行されていたプログラムが安全関連プログラム(第1のプログラム)か否かを判断する。安全関連プログラムである場合は、ステップS102に進み、安全関連プログラムでない場合(即ち、非安全関連プログラムの場合)、ステップS103に進む。
なお、CPU11上で実行されるアクセス異常時処理プログラムは、OSのタスクスケジューリング情報等を参照することにより、メモリ管理部13によりアクセス異常の判断がされた際に、CPU11上で実行されていたプログラムが安全関連プログラム(第1のプログラム)か否かを判断してよい。
ステップS102では、CPU11上で実行される全制御を停止させた上で、CPU11のリセット(リセット信号を出力させる処理)を実行し、今回の処理を終了する。
なお、CPU11のリセットは、例えば、CPU11外部に設けられるマニュアルリセット回路のリセットスイッチ(不図示)をリセット信号でONすることにより実現されてよい。
ステップS103では、非安全関連プログラム(第2のプログラム)の実行を停止させる。
ステップS104では、上述したメインメモリ異常検出処理プログラムをCPU11上で実行させることにより、メインメモリ12に含まれるデータの異常検出処理を実行する。
ステップS105では、ステップS104の処理にて、メインメモリ12に含まれるデータに異常が検出されたか否かを判定する。異常が検出された場合、今回の処理を終了し、異常が検出されなかった場合、ステップS106に進む。
ステップS106では、車両100の走行機能の制限を要求するフラグ(制限走行要求フラグ)をONにする、或いは、CPU11上で実行される全制御を停止させた上でCPU11のリセットを実行して今回の処理を終了する。
なお、HV−ECU10は、例えば、制限走行要求フラグがONにされた状態にて、モータ20への要求トルク、エンジン30への要求出力に対して、比較的低い値に設定される上限値をそれぞれ設定し、当該上限値以下になるようにモータ20、エンジン30を制御する。
このように、本実施形態に係る車両制御装置1は、安全関連プログラム実行中に、実行中のプログラムの異常(アクセス異常)が検出された場合、CPU11のリセットを実行する。これにより、車両100の安全確保を確実に図ることができる。
即ち、安全関連プログラム(第1のプログラム)の実行中に、例えば、アクセス異常(第1のプログラム実行タスクによる第2のプログラム領域へのアクセス)が発生すると、上述のとおり、運転者が当該アクセス異常による影響を回避するのが困難なおそれがある。そのため、安全関連プログラムの実行中に、実行中のプログラムの異常(アクセス異常)が検出された場合は、CPU11上の全制御処理を速やかに停止させ、CPU11のリセットを実行することにより、車両100の安全確保を確実に図ることができる。
また、本実施形態に係る車両制御装置1は、非安全関連プログラム実行中に、実行中のプログラムの異常(アクセス異常)が検出された場合、非安全関連プログラムの実行を停止させる。これにより、OSのマルチタスク機能により並列処理される安全関連プログラムの実行を確実に継続させることができる。
また、本実施形態に係る車両制御装置1は、非安全関連プログラムの実行中に、実行中のプログラムの異常(アクセス異常)が検出された場合であって、メインメモリ12に含まれるデータの異常が検出されない場合、CPU11をリセットする、又は、車両100の走行機能を制限する。一方、本実施形態に係る車両制御装置1は、非安全関連プログラムの実行中に、実行中のプログラムの異常(アクセス異常)が検出された場合であって、メインメモリ12に含まれるデータの異常が検出される場合、CPU11のリセットや車両100の走行機能の制限を行わない。これにより、車両100の機能維持と、安全確保の両立を図り、発生した異常の種類(CPU11上で実行されるプログラム異常の要因)に応じて、車両100の機能制限を行うことができる。
即ち、メインメモリ12に含まれるデータの異常が検出されない場合は、メインメモリ12内の非安全関連プログラム(第2のプログラム)自体の問題ではなく、CPU11やバス等のハードウェアの異常に起因して、実行中の非安全関連プログラムに異常(アクセス異常)が発生したと考えられる。よって、CPU11やバス等のハードウェアの異常に起因して、実行中の安全関連プログラムにも異常が発生する可能性があるため、CPU11のリセットや車両100の機能制限を実行することで、車両100の安全確保を図ることができる。一方、メインメモリ12に含まれるデータの異常が検出される場合は、メインメモリ12内の非安全関連プログラム(第2プログラム)自体の問題により実行中の非安全関連プログラムに異常(アクセス異常)が発生したと考えられる。よって、CPU11やバス等のハードウェアに異常が発生している可能性は低いため、車両100の安全関連プログラム(第1のプログラム)の実行は継続して、車両100の走行機能の維持を図ることができる。
以上、本発明を実施するための形態について詳述したが、本発明はかかる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
例えば、上述した実施形態における車両制御装置の制御対象となる車両は、ハイブリッド車であったが、エンジンのみを駆動力源とする車両、モータのみを駆動力源とする電動車両(電気自動車)、レンジエクステンダー車、水素自動車等、任意の車両であってよい。
1 車両制御装置
10 HV−ECU
11 CPU
12 メインメモリ(ROM)
13 メモリ管理部(実行プログラム異常検出部)
20 モータ
30 エンジン
40 ジェネレータ

Claims (1)

  1. CPUと、
    前記CPU上で実行されることにより車両の安全性に関連する車両制御を実行する第1のプログラム、及び、前記CPU上で実行されることにより前記安全性に関連する車両制御以外の車両制御を実行する第2のプログラムを格納するROMと、
    前記ROM内に含まれるデータの異常を検出するROM異常検出部と、
    前記CPU上で実行される前記第1のプログラム及び前記第2のプログラムの異常を検出する実行プログラム異常検出部と、
    前記実行プログラム異常検出部により異常が検出された際に実行されていたプログラムが前記第1のプログラムの場合は、前記CPUのリセットを実行し、前記実行プログラム異常検出部により異常が検出された際に実行されていたプログラムが前記第2のプログラムであった場合であって、前記ROM異常検出部により異常が検出されない場合は、前記CPUのリセット、又は、前記車両の機能制限を実行する異常時処理部を備える、
    車両制御装置。
JP2014218643A 2014-10-27 2014-10-27 車載制御装置 Expired - Fee Related JP6229637B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014218643A JP6229637B2 (ja) 2014-10-27 2014-10-27 車載制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014218643A JP6229637B2 (ja) 2014-10-27 2014-10-27 車載制御装置

Publications (2)

Publication Number Publication Date
JP2016084050A JP2016084050A (ja) 2016-05-19
JP6229637B2 true JP6229637B2 (ja) 2017-11-15

Family

ID=55973036

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014218643A Expired - Fee Related JP6229637B2 (ja) 2014-10-27 2014-10-27 車載制御装置

Country Status (1)

Country Link
JP (1) JP6229637B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7419658B2 (ja) * 2019-02-25 2024-01-23 株式会社デンソー センター装置、データ配信システム、制限実施プログラム及び制限実施方法
US20230267776A1 (en) * 2020-06-25 2023-08-24 Sumitomo Electric Industries, Ltd. Vehicle monitoring program, vehicle-mounted device, and vehicle monitoring method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000284983A (ja) * 1999-03-31 2000-10-13 Matsushita Electric Ind Co Ltd メモリ2重化装置
JP2004019457A (ja) * 2002-06-12 2004-01-22 Denso Corp 車両用電子制御装置
US9329919B2 (en) * 2008-07-16 2016-05-03 Freescale Semiconductor, Inc. Micro controller unit including an error indicator module
JP5975923B2 (ja) * 2013-03-29 2016-08-23 日立オートモティブシステムズ株式会社 車両用制御装置

Also Published As

Publication number Publication date
JP2016084050A (ja) 2016-05-19

Similar Documents

Publication Publication Date Title
US8099636B2 (en) System and method for protecting memory stacks using a debug unit
US9612887B2 (en) Firmware-related event notification
EP2962240B1 (en) Performing security operations using binary translation
US9536089B2 (en) Atomic detection and repair of kernel memory
KR20060130200A (ko) 런타임 안전 보장을 위한 자율 메모리 체커 및 이의 방법
US10789184B2 (en) Vehicle control device
WO2013088519A1 (ja) マルチコア・プロセッサ
US9610906B2 (en) Vehicle control device
CN103778099B (zh) 信息处理设备
KR20130098303A (ko) 정렬 제어
JP2015531521A (ja) リンクされた複数のプログラムブロックの別々の実行を制御するための方法および制御装置
JP6229637B2 (ja) 車載制御装置
JP2013225208A (ja) 情報処理装置、情報処理方法、及びプログラム
JP6955858B2 (ja) 制御装置
KR102603835B1 (ko) 프로세서 시스템의 프로그램 카운터 구조를 보호하고 인터럽트 요청의 처리를 모니터링하기 위한 방법 및 장치
JP2013061783A (ja) マルチコア・プロセッサ
US11097857B2 (en) Multiple core motor controller processor with embedded prognostic/diagnostic capabilities
JP2014085770A (ja) 情報処理装置
JP7310521B2 (ja) マイクロコンピュータ
JP5756413B2 (ja) 制御装置
RU101555U1 (ru) Устройство для доверительной загрузки
JP2009271597A (ja) プロセッサ
JP2016177717A (ja) メモリ制御装置及びメモリ制御方法
JP5561295B2 (ja) マイクロコンピュータ
CA2619742A1 (en) An input/output control apparatus for performing high reliability computations

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170123

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170913

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170919

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171002

R151 Written notification of patent or utility model registration

Ref document number: 6229637

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees