JP2019215725A - 電子制御装置及びソフトウエア生成方法 - Google Patents

電子制御装置及びソフトウエア生成方法 Download PDF

Info

Publication number
JP2019215725A
JP2019215725A JP2018112768A JP2018112768A JP2019215725A JP 2019215725 A JP2019215725 A JP 2019215725A JP 2018112768 A JP2018112768 A JP 2018112768A JP 2018112768 A JP2018112768 A JP 2018112768A JP 2019215725 A JP2019215725 A JP 2019215725A
Authority
JP
Japan
Prior art keywords
functional safety
applications
application
control device
electronic control
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.)
Granted
Application number
JP2018112768A
Other languages
English (en)
Other versions
JP7172155B2 (ja
Inventor
荒井 総一郎
Soichiro Arai
総一郎 荒井
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP2018112768A priority Critical patent/JP7172155B2/ja
Publication of JP2019215725A publication Critical patent/JP2019215725A/ja
Application granted granted Critical
Publication of JP7172155B2 publication Critical patent/JP7172155B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】複数の重要アプリをECUに搭載する場合に、開発工数を低減する。【解決手段】本実施形態の電子制御装置は、車両制御機能を有する複数のアプリを搭載したものであって、前記複数のアプリと、前記複数のアプリ毎の機能安全レベル指定情報を入力情報として生成された機能安全制御機能を有する基盤ソフトとをリンクして生成されたロードモジュール2を搭載したものである。【選択図】図1

Description

本発明は、電子制御装置及びソフトウエア生成方法に関する。
車載用の電子制御装置(以下ECUと称す)には、情報入出力制御などの制御機能を実現するアプリケーションプログラム(以下アプリと称す)が搭載されることが増加している。特に、近年は、情報入出力制御のアプリとして例えばナビ制御のアプリや情報ディスプレイ制御のアプリなど、また、自動運転制御のアプリなど、複数のアプリを、1個のECUに搭載するケースが多くなっている。
従来においては、メータ表示及びエンターテインメント情報表示などの車両制御に関連する重要アプリと、車両制御に関連しない非重要アプリとを、組み合わせて1個のECUに搭載している。この場合、各アプリの機能安全レベルが明白なため、即ち、重要アプリの機能安全レベルが例えばASIL-C、非重要アプリの機能安全レベルが例えばASIL無しであるため、開発工程はいわゆる1直線の開発工程であって、特に問題となることはなかった。尚、上記1直線の開発工程においては、各アプリの機能安全レベルを決定し、ソフトをビルドし、即ち、2個のアプリと基盤ソフト(OSなどを含む)とをリンクしてECUで動作するロードモジュールを作成し、更に、ロードモジュールのアプリ毎にデバグした上で、ロードモジュールの結合デバグを行なうようにしていた。
特開2000−132410号公報
しかし、近年、2個の重要アプリ、例えば、自動運転アプリと、自動運転モード・ユーザインターフェースアプリ(即ち、メータ表示の進化系の重要アプリであり、表示出力の制御とユーザ意思入力の制御等が備わっている重要アプリ)とを、組み合わせて1個のECUに搭載する構成が要望されている。
この構成の場合、まず機能安全レベルを決定する工程において、一方の重要アプリの機能安全レベルASIL-xとして5種類、即ち、ASIL無し、ASIL-AからASIL-Dが考えられると共に、他方の重要アプリの機能安全レベルASIL-yとして5種類、即ち、ASIL無し、ASIL-AからASIL-Dが考えられる。そして、各アプリの機能安全レベルASIL-x、ASIL-yが開発工程の終盤まで決まっていないことが多い。
このため、ロードモジュールを作成する場合に、5×5=25通りの機能安全レベルの組み合わせのロードモジュールを予備的に作成する必要がある。更に、作成した25通りのロードモジュールについて、各ロードモジュールのアプリ毎にデバグした上で、各ロードモジュールの結合デバグを行なう必要があることから、膨大な開発工数を要する事態となっている。更に、3個以上の重要アプリを搭載する場合には、開発工数がより一層増大するおそれがあった。
本発明の目的は、複数の重要アプリをECUに搭載する場合に、開発工数を低減することができる電子制御装置及びソフトウエア生成方法を提供することにある。
請求項1の発明は、車両制御機能を有する複数のアプリを搭載した電子制御装置であって、前記複数のアプリと、前記複数のアプリ毎の機能安全レベル指定情報を入力情報として生成された機能安全制御機能を有する基盤ソフトとをリンクして生成されたロードモジュール2を搭載したものである。
請求項6の発明は、車両制御機能を有する複数のアプリを搭載した電子制御装置のソフトウエア生成方法であって、前記複数のアプリ毎の機能安全レベル指定情報を入力情報として機能安全制御機能を有する基盤ソフトを生成し、前記複数のアプリと前記基盤ソフトとをリンクしてロードモジュールを生成するように構成されたものである。
第1実施形態を示すもので、パソコンと開発工程を説明する図 アプリと基盤ソフトを説明する図 機能安全レベルの組み合わせと機能安全対策の表を示す図 機能安全レベルの組み合わせの一例を示すもので、アプリと基盤ソフトを説明する図 機能安全レベルの組み合わせの他の例を示すもので、アプリと基盤ソフトを説明する図 アドレスのチェックテーブルファイルの一例を示す図 チェックルーチンの動作を説明する図
(第1実施形態)
以下、第1実施形態について、図1ないし図7を参照して説明する。図1は、本実施形態のECUのソフトウエア、即ち、ロードモジュールを製造すると共に、ロードモジュールをデバッグする装置、例えばパソコン1を示す。尚、パソコン1の代わりに他のコンピュータを用いても良い。
本実施形態においては、例えば2個のアプリ、即ち、アプリXとアプリYをECUに搭載する構成について説明する。この構成の場合、図2に示すように、アプリXと、アプリYと、電子制御装置の基盤ソフトとをリンク(即ち、結合)することにより、ロードモジュール2を作成(即ち、ビルド)する。
ここで、2個のアプリの機能安全レベルとしては、ASIL無し、ASIL-A、ASIL-B、ASIL-C、ASIL-Dの5段階があり、ASIL無しは機能安全性が弱く、ASIL-AからASIL-Dまで順に機能安全性が強くなる。2個のアプリの機能安全レベルの組み合わせによって決まる機能安全対策を、表にして図3に示す。
この表、即ち、機能安全対策の機能表においては、5段階ある機能安全レベルを、ASIL無しと、ASIL-A,B,C(以下、ASIL-C以下と称す)と、ASIL-Dの3つのレベルに分けて、機能安全対策を設定している。尚、より精密に機能安全対策を設定して実施する必要がある場合には、ASIL-C以下のランクの機能安全対策を細分化、即ち、ASIL-A、ASIL-B、ASIL-Cに分けるように構成すれば良い。
本実施形態においては、電子制御装置に搭載する2個のアプリX、アプリYの機能安全レベルの組み合わせ、即ち、アプリX、アプリYの機能安全レベルの指定情報、例えばASILレベル・コンフィグファイル(図1参照)から分かる機能安全レベルの組み合わせと、図3の表とに基づいて、必要な機能安全対策(即ち、機能安全制御機能)を求める。そして、図1のステップS10に示すように、上記求めた機能安全対策を組み込んだ基盤ソフトを生成する。更に、図1のステップS20に示すように、この機能安全対策を組み込んだ基盤ソフトと、上記2個のアプリX、Yとをリンクしてロードモジュール2を作成する。この後、図1のステップS30に示すように、ロードモジュール2の結合デバッグを行なうように構成されている。そして、結合デバッグの完了により、複数機能搭載ECU用ソフトの開発が完了する。
次に、機能安全対策の具体例について、図4〜図7を参照して説明する。
まず、アプリXの機能安全レベルが例えばASIL-Dで、アプリYの機能安全レベルが例えばASIL無しである場合、即ち、図3の表の中の番号3の組み合わせの場合について説明する。この場合、アプリXについては、ASIL-Dで開発されているため、機能安全レベルが高いことから、図4にて右方向の矢印で示すように、機能安全対策は不要である。
これに対して、アプリYは、ASIL無しで開発されており、機能安全レベルが低いため、即ち、アプリの検証レベルが低いため、予期しないアクセスを行なう可能性がある。そこで、アプリYのアクセス阻止、即ち、アクセス禁止を行い、アプリXにそのアクセスを代行動作させる機能安全対策の機能、即ち、機能安全制御機能を基盤ソフトに組み込む。
具体的には、基盤ソフトは、アプリYからのアクセスを検出し、アプリXに割込みをかける。アプリXは、割込みルーチンにて、基盤ソフトが保有する「アプリYのアクセス情報」のテーブルに基づいて、アプリYの動作を把握し、アプリYの動作と同一の機能を有するアクセスをアプリXが代行して実行する。例えばアプリYのリード動作は、アプリXのライト動作に置換えられて実行される。このため、アプリXに代行動作させるための付加ルーチンや動作置換テーブルファイル等を生成し、これらルーチンやファイル等を基盤ソフトに組込むように構成されている。
次に、アプリXの機能安全レベルが例えばASIL-Dで、アプリYの機能安全レベルが例えばASIL-C(即ち、ASIL-C以下)である場合、即ち、図3の表の中の番号2の組み合わせの場合の機能安全対策について説明する。この場合、図5に示すように、アプリXについては、ASIL-Dで開発されているため、機能安全対策は不要である。これに対して、アプリYは、ASIL-C以下で開発されており、機能安全レベルが比較的低いため、アプリYがアクセスする際に、そのアクセス内容が安全であるかどうかをチェックする必要がある。そこで、アプリYのアクセス時には、所定のチェック機能を動作させる機能を基盤ソフトに保有させる対策を行なうように構成されている。
具体的には、アプリYがアクセスする際に、基盤ソフトがチェックする情報、例えばアドレス範囲やアクセス権限やアクセス内容などの情報を、予めチェックデータテーブルとして保存しておき、アプリYがアクセスする際に、基盤ソフトが上記チェックデータテーブルをチェックするチェックルーチンを動作させるように構成されている。本実施形態では、上記チェックテーブルファイル及び上記チェックルーチンを作成して、基盤ソフトに予め組込むように構成されている。尚、チェック結果を格納するログファイルは、上記チェックルーチンにより作成される。ログファイルについては、後述する。
チェックテーブルファイルのうちの例えばアドレスのチェックテーブルファイルの一例を、図6に示す。
例えば、図7に示すように、アプリYを実行しているときに、ステップS100にて、メモリアクセスが発生したとする。この場合、まず、(1)基盤ソフトは、上記メモリアクセスを検知して、図6のチェックテーブルファイルに基づいて上記アクセスが正常なものか否かをチェックし、ログファイル3に上記チェック結果を格納するルーチンを起動する。これにより、基盤ソフトは、チェック結果をログファイル3に格納する。
次いで、(2)制御に付随するダイアグルーチンによって、定期的にログファイル3に格納されたNG結果を監視するように構成されている。この場合、NG結果を検出したら、NG結果を、ECUの管理者、例えば車両に搭載されたECUの場合には、ドライバへ通知するなどの処理を実行することが好ましい。尚、NG結果の監視頻度は、危険性や影響性に応じて適宜設定されるように構成されている。
このような構成の本実施形態においては、2個のアプリX、Y毎の機能安全レベルの指定情報を入力情報として機能安全制御機能、即ち、機能安全対策を有する基盤ソフトを生成し、前記2個のアプリX、Yと前記生成した基盤ソフトとを用いてロードモジュール2を生成するように構成した。この構成によれば、2個のアプリX、Y毎の機能安全レベルを変更した場合でも、ロードモジュールを容易に作成してデバグすることができる、即ち、機能安全レベルの組合わせを任意に変えつつ、しかも一気に結合デバグを実行することができる。このため、従来構成に比べて、複数の重要アプリをECUに搭載する場合に、開発工数を大幅に低減することができる。
また、本実施形態では、前記機能安全制御機能は、前記アプリ内の情報アクセスを制限する機能を備えるように構成したので、前記アプリ内の情報アクセスの安全性を高めることができる。
また、本実施形態では、前記機能安全制御機能は、外部から与えられた割込み信号を管理する機能を備えるように構成したので、前記アプリの割込み動作の安全性を高めることができる。
また、本実施形態では、前記機能安全制御機能は、前記基盤ソフトに組込む機能安全制御機能として予め想定されている機能群、例えば図3に示す機能安全対策の機能表の中から、前記アプリ毎の機能安全レベルの指定情報に基づいて選択された機能を備えるように構成した。この構成によれば、必要な機能安全対策を組み込んだ基盤ソフトを容易に生成することができる。
また、本実施形態においては、2個のアプリX、YをECUに搭載する構成について説明したが、これに限られるものではなく、3個以上のアプリをECUに搭載するように構成しても良い。例えば3個のアプリA、B、CをECUに搭載する構成の場合、機能安全対策は、アプリ間に必要なため、アプリAとアプリBとの間、アプリAとアプリCとの間、アプリBとアプリCとの間にそれぞれ機能安全対策が必要となる。アプリ数をNとすると、機能安全対策が必要なアプリ間は、N2通りあり、それぞれのアプリ間に、図3の表に示す機能安全レベルの組合わせ及び機能安全対策を実施するように構成することができる。そして、このように構成した機能安全対策の機能群の情報を基盤ソフトに組み込み、組み込んだ基盤ソフトとN個のアプリをリンクしてロードモジュールを生成するように構成することが好ましい。
本開示は、実施例に準拠して記述されたが、本開示は当該実施例や構造に限定されるものではないと理解される。本開示は、様々な変形例や均等範囲内の変形をも包含する。加えて、様々な組み合わせや形態、さらには、それらに一要素のみ、それ以上、あるいはそれ以下、を含む他の組み合わせや形態をも、本開示の範疇や思想範囲に入るものである。
図面中、1はパソコン、2はロードモジュール、3はログファイルである。

Claims (10)

  1. 車両制御機能を有する複数のアプリを搭載した電子制御装置であって、
    前記複数のアプリと、
    前記複数のアプリ毎の機能安全レベル指定情報を入力情報として生成された機能安全制御機能を有する基盤ソフトと
    をリンクして生成されたロードモジュール(2)を搭載した電子制御装置。
  2. 前記機能安全制御機能は、前記アプリ内の情報アクセスを制限する機能を備えている請求項1記載の電子制御装置。
  3. 前記機能安全制御機能は、外部から与えられた割込み信号を管理する機能を備えている請求項1または2記載の電子制御装置。
  4. 前記機能安全制御機能は、前記基盤ソフトに組込む機能安全制御機能として予め想定されている機能群の中から、前記アプリ毎の機能安全レベル指定情報に基づいて選択された機能を備えている請求項1から3のいずれか一項記載の電子制御装置。
  5. 前記ロードモジュールは、前記複数のアプリと前記基盤ソフトとを結合して生成された請求項1から4のいずれか一項記載の電子制御装置。
  6. 車両制御機能を有する複数のアプリを搭載した電子制御装置のソフトウエア生成方法であって、
    前記複数のアプリ毎の機能安全レベル指定情報を入力情報として機能安全制御機能を有する基盤ソフトを生成し、
    前記複数のアプリと前記基盤ソフトとをリンクしてロードモジュールを生成するように構成された電子制御装置のソフトウエア生成方法。
  7. 前記機能安全制御機能は、前記アプリ内の情報アクセスを制限する機能を備えている請求項6記載の電子制御装置のソフトウエア生成方法。
  8. 前記機能安全制御機能は、外部から与えられた割込み信号を管理する機能を備えている請求項6または7記載の電子制御装置のソフトウエア生成方法。
  9. 前記機能安全制御機能は、前記基盤ソフトに組込む機能安全制御機能として予め想定されている機能群の中から、前記アプリ毎の機能安全レベル指定情報に基づいて選択された機能を備えている請求項6から8のいずれか一項記載の電子制御装置のソフトウエア生成方法。
  10. 前記ロードモジュールは、前記複数のアプリと前記基盤ソフトとを結合して生成された請求項6から9のいずれか一項記載の電子制御装置のソフトウエア生成方法。
JP2018112768A 2018-06-13 2018-06-13 電子制御装置及びソフトウエア生成方法 Active JP7172155B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018112768A JP7172155B2 (ja) 2018-06-13 2018-06-13 電子制御装置及びソフトウエア生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018112768A JP7172155B2 (ja) 2018-06-13 2018-06-13 電子制御装置及びソフトウエア生成方法

Publications (2)

Publication Number Publication Date
JP2019215725A true JP2019215725A (ja) 2019-12-19
JP7172155B2 JP7172155B2 (ja) 2022-11-16

Family

ID=68919740

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018112768A Active JP7172155B2 (ja) 2018-06-13 2018-06-13 電子制御装置及びソフトウエア生成方法

Country Status (1)

Country Link
JP (1) JP7172155B2 (ja)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5384524A (en) * 1976-12-30 1978-07-26 Ibm Computer system having program hierarchy safety mechanism
JPH0887424A (ja) * 1994-09-16 1996-04-02 Toshiba Corp 電子計算機
JP2003337713A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd プロセッサの制御方法
JP2010033435A (ja) * 2008-07-30 2010-02-12 Autonetworks Technologies Ltd 制御装置、制御方法及びコンピュータプログラム
JP2015099517A (ja) * 2013-11-20 2015-05-28 日立オートモティブシステムズ株式会社 車両制御装置
JP2015531521A (ja) * 2012-10-09 2015-11-02 コンチネンタル オートモーティヴ ゲゼルシャフト ミット ベシュレンクテル ハフツングContinental Automotive GmbH リンクされた複数のプログラムブロックの別々の実行を制御するための方法および制御装置
JP2016029547A (ja) * 2014-07-25 2016-03-03 株式会社デンソー 実行モジュール生成装置、及び電子制御装置
JP2016066139A (ja) * 2014-09-24 2016-04-28 日立オートモティブシステムズ株式会社 車両制御装置
US20170083391A1 (en) * 2015-09-21 2017-03-23 Freescale Semiconductor Inc. Safety Level Specific Error Response Scheme for Mixed Criticality Systems

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5384524A (en) * 1976-12-30 1978-07-26 Ibm Computer system having program hierarchy safety mechanism
JPH0887424A (ja) * 1994-09-16 1996-04-02 Toshiba Corp 電子計算機
JP2003337713A (ja) * 2002-05-21 2003-11-28 Hitachi Ltd プロセッサの制御方法
JP2010033435A (ja) * 2008-07-30 2010-02-12 Autonetworks Technologies Ltd 制御装置、制御方法及びコンピュータプログラム
JP2015531521A (ja) * 2012-10-09 2015-11-02 コンチネンタル オートモーティヴ ゲゼルシャフト ミット ベシュレンクテル ハフツングContinental Automotive GmbH リンクされた複数のプログラムブロックの別々の実行を制御するための方法および制御装置
JP2015099517A (ja) * 2013-11-20 2015-05-28 日立オートモティブシステムズ株式会社 車両制御装置
JP2016029547A (ja) * 2014-07-25 2016-03-03 株式会社デンソー 実行モジュール生成装置、及び電子制御装置
JP2016066139A (ja) * 2014-09-24 2016-04-28 日立オートモティブシステムズ株式会社 車両制御装置
US20170083391A1 (en) * 2015-09-21 2017-03-23 Freescale Semiconductor Inc. Safety Level Specific Error Response Scheme for Mixed Criticality Systems

Also Published As

Publication number Publication date
JP7172155B2 (ja) 2022-11-16

Similar Documents

Publication Publication Date Title
US8756460B2 (en) Test selection based on an N-wise combinations coverage
US9405515B1 (en) Computing systems utilizing controlled dynamic libraries and isolated execution spaces
US20140372985A1 (en) API Rules Verification Platform
US20080313602A1 (en) Bounded program failure analysis and correction
US20140372986A1 (en) Timed API Rules for Runtime Verification
US11281768B1 (en) Firmware security vulnerability verification service
JP7377260B2 (ja) 安全性に関連するデータストリームを検出する方法
US20060129880A1 (en) Method and system for injecting faults into a software application
US20080270842A1 (en) Computer operating system handling of severe hardware errors
US7539903B2 (en) Method for monitoring the execution of a program by comparing a request with a response and introducing a falsification in a response
CN112286828A (zh) 一种区块链智能合约的测试方法和系统
CN111897711A (zh) 代码中bug的定位方法、装置、电子设备及可读存储介质
WO2015178895A1 (en) Point-wise protection of application using runtime agent
US9646252B2 (en) Template clauses based SAT techniques
JP6771413B2 (ja) ソフトウェア検証装置およびソフトウェア検証プログラム
US9009671B2 (en) Crash notification between debuggers
EP3765965B1 (en) Static software analysis tool approach to determining breachable common weakness enumerations violations
JP2005149501A (ja) Dmaを使用して拡張カードでメモリをテストするためのシステムおよび方法
JP2019215725A (ja) 電子制御装置及びソフトウエア生成方法
US10691805B2 (en) Resident manufacturing test software based system for mitigating risks associated with vehicle control modules
US20100077383A1 (en) Simulation method and storage medium for storing program
US8799873B2 (en) Collecting tracepoint data
JP2005149503A (ja) Dmaを使用してメモリをテストするためのシステムおよび方法
Pitchford Embedded software quality, integration, and testing techniques
Ohly et al. Automated MPI correctness checking what if there was a magic option?

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210218

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220510

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: 20221004

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221017

R151 Written notification of patent or utility model registration

Ref document number: 7172155

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151