JP6838233B2 - 車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム - Google Patents

車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム Download PDF

Info

Publication number
JP6838233B2
JP6838233B2 JP2018113852A JP2018113852A JP6838233B2 JP 6838233 B2 JP6838233 B2 JP 6838233B2 JP 2018113852 A JP2018113852 A JP 2018113852A JP 2018113852 A JP2018113852 A JP 2018113852A JP 6838233 B2 JP6838233 B2 JP 6838233B2
Authority
JP
Japan
Prior art keywords
control device
vehicle control
interrupt information
identifier
vehicle
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.)
Active
Application number
JP2018113852A
Other languages
English (en)
Other versions
JP2019215822A (ja
JP2019215822A5 (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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo Ltd
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 Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Priority to JP2018113852A priority Critical patent/JP6838233B2/ja
Priority to PCT/JP2019/019304 priority patent/WO2019239778A1/ja
Priority to DE112019002392.6T priority patent/DE112019002392T5/de
Publication of JP2019215822A publication Critical patent/JP2019215822A/ja
Publication of JP2019215822A5 publication Critical patent/JP2019215822A5/ja
Application granted granted Critical
Publication of JP6838233B2 publication Critical patent/JP6838233B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4812Task transfer initiation or dispatching by interrupt, e.g. masked
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • F02D41/266Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor the computer being backed-up or assisted by another circuit, e.g. analogue

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Small-Scale Networks (AREA)

Description

本発明は、車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラムに関する。
複数のハードウエアデバイスが相互接続された電子処理システムや電子処理環境においては、アプリケーションを1つのハードウエアエデバイスから別のハードウエアエデバイスに移行可能であることが重要である。そして,この様なアプリケーション移行プロセスを用いれば、アプリケーションの可用性を維持し、システム全体の性能を向上することが可能であることから、複数のハードウエアデバイスが相互接続された電子処理システムなどにおいて広く使用されている。
このようなアプリケーション移行は、汎用性の高いハードウエアデバイスからなる分散コンピューティング環境においては容易に行うことができる。しかし、自動車などのような、1つの機能に特化した専用の車両用デバイスを多く含む環境では、アプリケーションが要するデータを供給する車両用デバイスとの接続を中断せずにアプリケーションを別の装置に移行することが難しい。
これに対して、特表2017-507401(特許文献1)号公報には、「車両ユーザインターフェースと統合されるコンピュータシステムであって、前記コンピュータシステムは、マルチコアプロセッサを備える処理システムを備え、前記処理システムは、前記マルチコアプロセッサの1つ又は複数の第1のコアにおいて第1のゲストオペレーティングシステムに仮想化を提供し、且つ前記マルチコアプロセッサの1つ又は複数の第2の異なるコアにおいて第2のゲストオペレーティングシステムに仮想化を提供するように構成され、前記第1のゲストオペレーティングシステムは高信頼性動作用に構成され、前記仮想化は前記第2のゲストオペレーティングシステムの動作が前記第1のゲストオペレーティングシステムの前記高信頼性動作を中断することを防ぐ、コンピュータシステム」が記載されている。
特表2017-507401号公報
上記の特許文献1においては、車載用のコンピュータ化ユーザインタフェースが記載されている。特許文献1における発明によると、1つのオペレーティングシステムの動作が他のオペレーティングシステムの動作との干渉を防ぐために、実質的に独立して動作する複数の異なるオペレーティングシステムが提供される。しかし、特許文献1においては、自動車ネットワークにおけるアプリケーション移行が検討されておらず、アプリケーションを移行する際には、アプリケーションが要するデータを供給する車両用デバイスとの接続が中断されてしまうため、アプリケーション移行が限られてしまう。
そこで本発明は、ハードウエアデバイスとアプリケーションの間で発生する割り込み信号を仮想化管理部(例えば、ハイパーバイザ)によって転送することで、データの転送等に生じる遅延を削減し、アプリケーションを柔軟かつ迅速に移行することを目的とする。
前述の課題を解決するために、代表的な本発明の一つは、車両用デバイスに接続可能な第1の車両制御装置であって、前記第1の車両制御装置は、複数の仮想化管理部、記憶部及び演算部とを備え、アプリケーションソフトウエアが実装されており、前記記憶部は、前記第1の車両制御装置に接続される車両用デバイスからの割り込み情報を一意に識別する第1の識別子と、前記第1の車両制御装置に実装される前記仮想化管理部を一意に識別する第2の識別子と、前記アプリケーションソフトウエアを一意に識別する第3の識別子と、を対応付けたマッピングテーブルを格納し、前記演算部は、前記第1の識別子を含む割り込み情報を前記車両用デバイスから受信した場合に、前記マッピングテーブルに基づき、前記第1の車両制御装置における前記複数の仮想化管理部の中から、前記割り込み信号要求の転送先となる仮想化管理部を決定する、ことを特徴とする車両制御装置。
本発明によると、ハードウエアデバイスとアプリケーションの間で発生する割り込み信号を仮想化管理部によって転送することで、データの転送等に生じる遅延を削減し、アプリケーションを柔軟かつ迅速に移行することを目的とする。
上記した以外の課題、構成及び効果は、以下の実施形態の説明により明らかにされる。
本発明の一実施例における自動車ネットワークを示す概略図である。 第1の実施形態におけるマッピングテーブルを示す図である。 第1の実施形態における変更不可能な車両用デバイスからの割り込み信号をアプリケーションに転送するためのデータ処理システムを示す図である。 第1の実施形態における変更不可能な車両用デバイスからの割り込み信号をアプリケーションに転送する動作を示すフローチャート図である。 第2の実施形態におけるマッピングテーブルを示す図である。 第2の実施形における変更可能な車両用デバイスからの割り込み信号をアプリケーションに転送するためのデータ処理システムを示す図である。 第2の実施形における変更可能な車両用デバイスからの割り込み信号をアプリケーションに転送する動作を示すフローチャート図である。
まず、本発明の全体概要について説明する。本発明は、アプリケーションソフトウェア(以下、「アプリケーション」ともいう。)が現在実装されている装置に関わらず、車両用デバイス等のハードウエアデバイスとの通信において発生する割り込み信号を所望のアプリケーションに転送することで、アプリケーションの装置間移行を容易に行うための技術である。ここでは、アプリケーション移行とは、1つの動作環境(自動車のECU,サーバ装置、クラウドサーバによって構築されている論理空間)から、別の動作環境へと移すことを意味する。このアプリケーション移行は、1つの装置(例えば、ハードウエアデバイス)の上に実装されている仮想化管理部において稼働しているアプリケーションを、別の装置の上に実装されている仮想化管理部に移行することを含んでもよく、アプリケーションを1つの装置の上に実装されている仮想化管理部を同一の装置の別の仮想化管理部に移行することを含んでもよい。
一般的な電子処理環境は、RAMやCPUなどのハードウエア資源を提供するハードウエア層と、一つまたは複数の仮想機械の稼働を管理するハイパーバイザ層と、それぞれの仮想機械のOS(Operating System)を実装するスーパーバイザ層と、アプリケーションソフトウェアが稼働するアプリケーション層からなる。ハイパーバイザは、この構造における最も上位の制御プログラムとして、下位の層で実装されるスーパーバイザやアプリケーションソフトウェアにリソースを分け与え、外部の装置とのコミュニケーションを受け付ける。本発明における仮想化管理部とは、ハイパーバイザであってもよく、スーパーバイザであってもよい。ただし、割り込み情報転送に生じる遅延を最小化することを考慮すると、仮想化管理部をハイパーバイザとして実現することが望ましい。
なお、本明細書では、ハイパーバイザを仮想化管理部の一例として実施形態を説明するが、本発明はこれに限定されず、ハイパーバイザ以外の仮想化管理部を使用する構成であってもよい。
上述したように、クラウド等の分散コンピューティング環境においては、アプリケーションがハードウエアに依存している傾向(以下、「ハードウエア依存性」ということがある)が低く、物理的なリソースさえあれば、QoE(Quality of Experience)改善やリソース使用効率の向上等の理由で、アプリケーションを一つの装置から別の装置へと移行することは広く行われている。しかし、自動車ネットワークでは、アプリケーションは、カメラ、センサ、GPU(Graphic Processing Unit)、FPGA(Field Programmable Gate Array)等の専用ハードウエアと連携して稼働し、ハードウエア依存性が高いため、アプリケーションが移行されると、連携しているハードウエアとの接続が中断されてしまうことがある。
自動車ネットワークにおけるアプリケーション移行は、次世代の自動車アーキテクチャを実現するための重要な一環であり、斯かるアーキテクチャを可能にするために、割り込み信号を柔軟かつ迅速に転送し、アプリケーションを自由に移行できる技術が求められる。
従って、本発明は、ハードウエアデバイスとアプリケーションの間で発生する割り込み信号を仮想化管理部(例えば、ハイパーバイザ)に実装される割り込み転送部によって送信先のアプリケーションに転送することで、ハードウエアデバイスとアプリケーションの接続を中断することなく、アプリケーションを柔軟かつ迅速に1つのハードウエアエデバイスから別のハードウエアエデバイスに移行することを目的とする。具体的には、本発明では、自動車に搭載される車両制御装置の各SOCに実装される仮想化管理部(すなわち、ハイパーバイザ)を利用してこの問題を解決している。すなわち、各SOCの仮想化管理部には、複数のお互いに独立した名称の空間(以下、「名称空間」ともいう。)からなるマッピングテーブルを管理する記憶部を有している。この記憶部とは、上述したマッピングテーブルを割り込み転送部によってアクセス可能な形で格納するストレージ媒体であり、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等のよって実現されてもよい。
上述した名称空間とは、IRQ(Interrupt Service Request)を判別するIRQ名空間と、システム内のハイパーバイザ上で動作するアプリケーションを一意に識別するアプリケーション名空間(以下、A名空間)と、SoC上で実装されるハイパーバイザを一意に識別するハイパーバイザ名空間(以下、H名空間)と、SoCに使用可能な伝送経路を特定するためのデータ伝送経路名空間(以下、「接続名空間」ともいう。)とを含む。
これらのIRQ名空間、H名空間、A名空間、及び接続名空間はそれぞれ、車両用デバイスからの割り込み情報を一意に識別する第1の識別子と、仮想化管理部を一意に識別するための第2の識別子と、アプリケーションを一意に識別するための第3の識別子と、割り込み情報を送信するための接続(すなわち、ネットワーク経路)を一意に識別する第4の識別子として機能する。
上述したマッピングテーブルは、一つの名称空間を別の名称空間へとマッピングするためのテーブルであり、IRQ名からA名テーブル、A名からH名テーブル、及びH名から接続テーブルを含む。車両用デバイスからの割り込み信号が発生すると、割り込み転送部は、これらのマッピングテーブルを参照することで、発生した割り込み信号を転送すべき制御装置を特定し、割り込み信号を転送することができる。これにより、アプリケーションが、車両用デバイスと物理的に接続されている制御装置と異なる制御装置に移行されても、割り込み信号を発生させた車両用デバイスと当該車両用デバイスを管理するアプリケーションの通信が中断されない。
以下、図面を参照して、本発明の実施例について説明する。なお、この実施例により本発明が限定されるものではない。また、図面の記載において、同一部分には同一の符号を付して示している。
(第1の実施形態)
図1は、本発明の第1の実施形態における自動車ネットワーク100を示す概略図である。図1に示されるように、自動車ネットワーク100は、車両用デバイス105と、車両制御装置110、120、130、140とを含む。
ここでの車両制御装置とは、自動車内部に搭載され、自動車における様々なシステムを電子回路を用いて総合的に制御する装置である。車両制御装置は例えば、エンジン、モーター、メーター、トランスミッション、ブレーキ、エアバッグ、ランプ、パワーステアリング、パワーウィンドウ、カーエアコン、電子キーの車両側受信部、カーオーディオ、カーナビゲーション等のシステムの各種機能を制御するECU(Electronic Control Unit)であってもよい。これらの車両制御装置はぞれぞれ、一つまたは複数のSOC(System-on-a-chip)を有する。また、それぞれのSOCには、1つまたは複数のハイパーバイザなどのような仮想化管理部が実装される。これらの仮想化管理部はそれぞれ、構成の異なる車両制御装置(例えば、ECU)に含まれる。ここでは、構成の異なる車両制御装置という表現は、それぞれの車両制御装置がお互いに物理的に独立した装置であることを意味する。また、それぞれの車両制御装置に搭載されているハードウエア(例えば、CPUの数、メモリの容量、センサの種類)またはソフトウエア(例えば、アプリケーションの機能)が他の車両制御装置と異なる構成であってもよい。後述するように、マッピングテーブルをそれぞれの車両制御装置の記憶部に格納することで、構成の異なる車両制御装置の間で、割り込み情報を転送することができる。
また、それぞれの仮想化管理部は、1つまたは複数の仮想機械を実装する。更に、各仮想機械には、上述した自動車の様々なシステムを制御するアプリケーションが実装される。このアプリケーションは、例えば、エンジンの温度を検出するアプリケーション、車に搭載されるカメラに画像を撮像させるアプリケーション、撮像された画像における障害物を特定するアプリケーションなどを含む。なお、ここでは、車両制御装置を4つ含む自動車を一例として説明したが、本発明はこれに限定されず、より多くの車両制御装置やより少ない車両制御装置が搭載される自動車であってもよい。
ここでの車両用デバイスとは、自動車内部に搭載され、予め定めた機能を実施するための専用装置である。車両用デバイスは例えば、カメラ、温度計、車速センサ、空気圧センサ、バッテリ電圧センサなどを含む。これらの車両用デバイス105はそれぞれ、1つの車両制御装置に接続し、制御される。これらの車両用デバイス105は、変更不可能なデバイス(任意のプログラムが実施不可能なデバイス)であってもよく、変更可能なデバイス(任意のプログラムが実施可能なデバイス)であってもよい。
後述するように、変更可能なデバイスは、割り込み転送部の機能の一部を担うことができるため、変更不可能なデバイスが使用される場合に比べ、処理のフローが異なる。変更不可能なデバイスが使用される場合における処理とフローと、変更可能なデバイスが使用される場合における処理のフローは、それぞれ図4及び図7を参照して説明する。
次に、図2を参照して、本実施形態におけるマッピングテーブルについて説明する。図2に示すマッピングテーブルは、変更不可能なデバイスが車両用デバイスとして使用される場合のマッピングテーブルの一例を示す図である。
図2に示されるように、本実施形態におけるマッピングテーブルは、あるIRQ(割り込み情報に含まれる処理要求)がどのアプリケーションに該当するかを示すIRQからA名テーブル1142、3142と、それぞれのアプリケーションがどのハイパーバイザによって制御されているかを示すA名からH名テーブル1143、3143と、それぞれのハイパーバイザをアクセスするための経路を示すH名から接続テーブル1144、3144とを含む。これらのマッピングテーブルは、各車両制御装置に実装されるハイパーバイザ層が有する割り込み転送部に格納されてもよい。
例えば、マッピングテーブル1142、1143、及び1144は図3に示す車両制御装置1300に格納され、マッピングテーブル3142、3143、及び3144は車両制御装置3300に格納されてもよい(例示せず)。これにより、車両用デバイスからの割り込み信号が発生すると、割り込み転送部はこれらのマッピングテーブルを参照することで、当該割り込みを転送すべき送信先を特定することができる。
例えば、一例として、車両用デバイスからの割り込み信号が発生すると、割り込み転送部は、まず、IRQからA名テーブル1142を参照し、当該割り込みが対象とするアプリケーション(例えば、A名1212に該当するアプリケーション)を特定する。アプリケーションを特定した後、割り込み転送部は、A名からH名テーブル1143を参照し、特定したアプリケーションが実装されているハイパーバイザを特定する(例えば、H名1141に該当するハイパーバイザ)。
ハイパーバイザを特定した後、割り込み転送部は、H名から接続テーブル1144を参照し、特定したハイパーバイザをアクセスするための接続(例えば、接続1031)を特定する。これにより、割り込み転送部は、ハイパーバイザを介して、発生した割り込み信号を、割り込み信号が該当するアプリケーションに転送することができる。
次に、図3を参照して、本発明に係るデータ処理システムについて説明する。図3は、本発明の第1の実施形態おける変更不可能な車両用デバイスからの割り込み信号をアプリケーションに転送するためのデータ処理システムを示す図である。
本実施形態に係るデータ処理システムは、図3に示されるように、車両制御装置1300と、車両用デバイス2300と、車両制御装置3300とを含む。上述したように、車両制御装置1300、3300は自動車における様々なシステムを電子回路を用いて総合的に制御する装置である。また、車両用デバイス2300は、カメラ、温度計、車速センサ、空気圧センサ等の予め定めた機能を実施するための装置である。
また、車両制御装置はCPU1010及びCPU1020とを含む。図3には、二つのCPUを含む車両制御装置が一例として示されているが、本発明では、CPUの数は限定されるものではなく、CPUをn個含む構成であってもよい。
また、車両制御装置1300は、車両用デバイス2300や車両制御装置3300の外部装置に相互的に接続されてもよく、外部装置との通信を行うための情報通信部1030を含んでもよい。この情報通信部1030は、自動車ネットワークにおける他の装置とのデータやり取りを行うものであり、接続1031を含む。この接続1031とは、外部装置とデータを入出力するためのIOインターフェースである。
また、接続1031の「1031」とは、車両制御装置1300までのネットワーク経路を一意に識別する第4の識別子として機能する。なお、図3では、車両制御装置1300、車両用デバイス2300、及び車両制御装置3300のそれぞれがお互いに相互的に接続されている構成を示しているが、車両用デバイス2300と車両制御装置3300がお互いに接続されていない構成や、車両制御装置1300と車両用デバイス2300がお互いに接続されていない構成も可能である。
車両制御装置1300は、割り込み転送部1140を含むハイパーバイザ1100を有する。割り込み転送部1140は、上述したように、IRQからA名テーブル1142と、A名からH名テーブル1143と、H名から接続テーブル1144とを含み、車両用デバイスから発生した割り込み信号を転送する演算部である。この演算部とは、論理演算や四則演算などの演算を行うソフトウエアモジュールであり、ハイパーバイザ1100のような仮想化管理部に含まれてもよい。ここでは、「含まれる」という表現は、演算部の機能が仮想化管理部によって処理されることを意味する。具体的には、演算部は仮想化管理部内に実装されていない場合であっても演算部が実質的に仮想化管理部によって制御されている場合、及び、演算部が仮想化管理部上に実装されており、仮想化管理部によって制御されている場合の両方の態様を含む。このように、演算部を仮想化管理部内に実装することにより、割り込み情報を転送する処理をハイパーバイザ層において行うことができ、割り込み転送に生じる遅延を最小化することが可能となる。
ハイパーバイザ1100は、CPU1010、CPU1020、及びメモリ1040等のリソースを用いて、仮想化環境1200を生成する。仮想化環境1200とは、車両制御装置1300の物理リソースを抽象化し、仮想機械やアプリケーションをお互いに独立した状態で実行させるための論理空間である。仮想化環境1200内では、WindowsやLinux等のオペレーティングシステムがスーパーバイザ1210、1220として実装される。それぞれのスーパーバイザ1210、1220の上では、アプリ1211及びアプリ1222が実装される。上述したように、これらのアプリ1211、1222とは、車両用デバイス2300が取得した生データを処理するプログラムであってもよい。
また、それぞれのアプリ1211、1222は、お互いに独立した状態で同時に稼働するように構成されてもよい。更に、図3に示されるように、各アプリ1211、1222は、それぞれがネットワークで一意に識別されるためのA名に対応付けられている。例えば、アプリ1211はA名1212に対応付けられており、アプリ1222はA名1222に対応付られている。上述したように、これらのA名は、割り込み転送部1140のマッピングテーブルに格納され、割り込み信号を転送すべきハイパーバイザ及びアプリケーションを特定するために用いられる。
上述したように、車両用デバイス2300は、カメラ、温度計、車速センサ、空気圧センサ等の予め定めた機能を実施するための専用装置である。図3に示されるように、車両用デバイス2300は情報通信部2030を含む。この情報通信部2030は、車両制御装置1300の情報通信部1030と同様に、自動車ネットワークにおける他の装置とのデータやり取りを行うものであり、接続2031を含む。この接続2031とは、外部装置とデータを入出力するためのIOインターフェースである。
また、接続2031の「2031」とは、車両制御装置2300を一意に識別する第4の識別子として機能する。本実施形態では、車両用デバイス2300は、プログラム可能なインタフェースを有しない変更不可能なデバイスであるため、生データを取得し、車両制御装置に送信する機能だけを有する。ただし、本発明はこれに限定されず、車両用デバイス2300は他の機能を有する構成であってもよい。
上述したように、車両制御装置3300は、自動車における様々なシステムを電子回路を用いて総合的に制御する装置である。この車両制御装置3300の構造や機能は、車両制御装置1300と実質的に同様であるため、同様の構成要素について、詳細な説明を省略する。車両制御装置3300は、車両制御装置1300と同様に、CPUやメモリ等の物理リソース、ハイパーバイザ、及び仮想化環境を含む。また、車両制御装置3300のハイパーバイザやハイパーバイザ上で稼働するアプリケーションは、車両制御装置1300と同様に、第2の識別子であるH名および第3の識別子であるA名で識別される。
次に、図4を参照して、割り込み信号を転送することでアプリケーションと車両用デバイスとの通信を維持する処理について説明する。図4は、本発明の第1の実施形態における変更不可能な車両用デバイスからの割り込み信号をアプリケーションに転送する動作を示すフローチャート図である。
なお、以下の説明では、「#」というマークは、対象の装置・機能部を示す意味で使われており、任意の参照符号であってもよい。
図4で示される割り込み転送処理は、あるアプリケーションが1つのハイパーバイザから、別の車両制御装置のハイパーバイザに移行された際に行われる。一例として、本処理は、カメラ(例えば、図3に示す車両用デバイス2300)が取得した映像データを解析するアプリケーション(例えば、図3に示すアプリ1211)が元の車両制御装置のハイパーバイザ(例えば、図3に示す車両制御装置3300のハイパーバイザ)から、別の車両制御装置のハイパーバイザ(例えば、図3に示す車両制御装置1300のハイパーバイザ1100)に移行された場合に適用されてもよい。このアプリケーション移行は、全体のシステムリソースの使用効率の向上、顧客向けのQoS(Quality of Service)改善等の理由で行われてもよい。
アプリケーション移行を行うための具体的な手順やアプリケーションの移行先は、自動車ネットワークのリソース使用率、アプリケーション可用性、ネットワーク負荷や時間等の制約に応じて適宜に決められてもよく、ここでは限定されない。本発明では、アプリケーションは同一のA名(すなわち、アプリケーションのA名が起動時から終了時まで変わらない)を有し、上述したマッピングテーブルが自動車ネットワークの各ハイパーバイザに格納されていればよい。
一例として、自動車ネットワーク起動時に、周知のアルゴリズム(例えば、path finding algorithm、loop-free routing algorithm、ideal link-state algorithm等)が、ネットワーク内でどのハイパーバイザが使用されているか、特定のH名を有するハイパーバイザにアクセスするためにどの経路を使えばよいかを各ハイパーバイザに通知し、マッピングテーブルを更新してもよい。このアルゴリズムを定期的(一定時間ごとに、アプリケーションが追加・削除・変更される度等)に実行することで、それぞれのハイパーバイザが有するマッピングテーブルを更新することができる。
図4に示すように、ステップ4000では、車両用デバイス(例えば、図3に示す車両用デバイス2300)が割り込み情報を生成する。この割り込み情報とは、CPUに対して、現在の処理を中断して、指定した処理を強制的に実行させることを要求する信号である。例えば、車両用デバイスがカメラである場合、車両デバイスは映像を撮像した後、撮像した画像をアプリケーションに処理させるために、割り込み情報を生成してもよい。
次に、ステップ4001では、車両用デバイスの情報通信部は接続#を介して、割り込み情報を所定の接続#に送信する。一例として、図3に示す車両用デバイス2300の情報通信部2030は、接続2031を介して、割り込み情報を車両制御装置3300の接続3031に送信してもよい。
次に、ステップ4002では、接続#は車両用デバイスからの割り込み情報を受信する。
次に、ステップ4003では、接続#を有する情報通信部は、受信した割り込み情報を同一の車両制御装置内の割り込み転送部に送信する。
次に、ステップ4004では、割り込み転送部は、受信した割り込み情報が送信先のハイパーバイザを指定するH名メタデータに対応付けられているか否かを判断する。受信した割り込み情報は、送信先のハイパーバイザを指定するH名メタデータに対応付られている場合には、本処理はステップ4005に進行する。受信した割り込み情報は、送信先のハイパーバイザを指定するH名メタデータに対応付けられていない場合には、本処理はステップ4009に進行する。
受信した割り込み情報は、送信先のハイパーバイザを指定するH名メタデータに対応付られていない場合には、次にステップ4009では、割り込み転送部は受信した割り込み情報からIRQの情報を読み出す。
次に、ステップ4010では、割り込み転送部は、ステップ4009で読み出したIRQ情報を用いて、IRQからA名テーブル#を参照し、当該IRQに対応するA名を検索する。
次に、ステップ4011では、割り込み転送部は、読み出したIRQに対応するA名がIRQからA名テーブル#に存在するかを判定する。一例としては、割り込み転送部は、ステップ4009で読み出したIRQ情報を用いて、図2に示すIRQからA名テーブル3142を参照し、当該IRQに対応するA名であるA名1212を取得する。受信したIRQに対応するA名がIRQからA名テーブル#にある場合には、本処理はステップ4012に進行し、ない場合には、本処理は終了する。
次に、ステップ4012では、割り込み転送部は、取得したA名と、割り込み情報とを対応付ける。具体的には、割り込み転送部は、当該割り込み情報が処理すべきアプリケーションに該当するA名を指定するメタデータを割り込み情報に付す。一例として、割り込み転送部は、割り込み情報に、A名1212を指定するメタデータを対応付けてもよい。
次に、ステップ4013では、ステップ4011で取得したA名に該当するアプリケーションがどのハイパーバイザ上に稼働しているかを判定するために、割り込み転送部は、取得したA名を用いて、A名からH名テーブル#を参照し、当該A名に対応するH名(すなわち、ハイパーバイザ)を検索する。
次に、ステップ4014では、割り込み転送部は、取得したA名に対応するH名がA名からH名テーブル#に存在するかを判定する。一例としては、割り込み転送部は、ステップ4011で読み出したIRQ情報を用いて、図2に示すA名からH名テーブル3144を参照し、当該A名1212に対応するH名であるH名1141を取得する。受信したA名に対応するH名がA名からH名テーブル#にある場合には、本処理はステップ4015に進行し、ない場合には、本処理は終了する。
次に、ステップ4015では、割り込み転送部は、取得したH名と、割り込み情報とを対応付ける。具体的には、割り込み転送部は、当該割り込み情報が処理すべきアプリケーションを含むハイパーバイザに該当するH名を指定するメタデータを割り込み情報に付す。一例として、割り込み転送部は、割り込み情報に、H名1141を指定するメタデータを対応付けてもよい。
次に、A名とH名を割り込み情報に対応付けた後、本処理はステップ4005に戻る。ステップ4005では、割り込み転送部は、割り込み情報からH名(ステップ4015で対応付けたH名)を抽出する。一例として、割り込み転送部は、割り込み情報からH名1141を抽出してもよい。
次に、ステップ4006では、割り込み転送部は、抽出したH名を用いて、割り込み情報を受信したハイパーバイザがH名に指定されているハイパーバイザと同一のハイパーバイザであるか(つまり、送信先のアプリケーションが、割り込み情報を受信したハイパーバイザと同一の装置内で実装されているか)を判定する。割り込み情報を受信したハイパーバイザは、対応付られているH名に指定されているハイパーバイザと同一のハイパーバイザである場合(すなわち、割り込み情報を受信したハイパーバイザが送信先のハイパーバイザであるため、別の制御装置に転送する必要はない)には、本処理は、ステップ4007に進行し、そうでない場合には、本処理はステップ4016に進行する。
割り込み情報を受信したハイパーバイザは、対応付られているH名に指定されているハイパーバイザと同一のハイパーバイザである場合、ステップ4007では、割り込み転送部は、ステップ4012で割り込み情報に対応付けたA名を割り込み情報から抽出する。一例として、割り込み転送部は、A名1212を割り込み情報から抽出してもよい。
次に、ステップ4015では、割り込み転送部は、受信した割り込み情報を、抽出したA名を持つアプリケーションに送信する。なお、ここでは、割り込み情報を受信したハイパーバイザは、H名で指定されているハイパーバイザと同一であるため、抽出したA名を持つアプリケーションが当該ハイパーバイザと同一の車両制御装置であり、H名から接続テーブルを参照する必要はない。
ステップ4006において、割り込み情報を受信したハイパーバイザはH名に指定されているハイパーバイザではないと判定された場合、次に、ステップ4016では、割り込み転送部は、抽出したH名を用いて、H名から接続テーブル#を参照し、当該H名に対応する接続#を検索する。
次に、ステップ4017では、割り込み転送部は、抽出したH名に対応する接続#がH名から接続テーブル#に存在するか否かを判定する。一例としては、割り込み転送部は、ステップ4005で抽出したH名1141を用いて、図2に示すH名から接続テーブル3143を参照し、当該H名に対応する接続#である接続1031を取得する。受信したH名に対応する接続#名がH名から接続テーブル#にある場合には、本処理はステップ4018に進行し、ない場合には、本処理は終了する。
次に、ステップ4018では、割り込み転送部は、情報通信部#を用いて、ステップ4017で取得した接続#に割り込み情報を送信する。一例として、割り込み転送部は、車両制御装置3300の接続3031(図3に例示せず)を介して、図3に示す割り込み情報を車両制御装置1300の接続1031に送信する。
次に、ステップ4019では、送信先の車両制御装置の情報通信部は、接続#を介してステップ4018で送信された割り込み情報を受信し、同一の車両制御装置内の割り込み転送部に送信する。一例として、車両制御装置1300の情報通信部1030は、接続1031を介して、受信した割り込み情報を割り込み転送部1140に送信する。次に、割り込み情報を受信した割り込み転送部は、上述したステップ4003からの処理を行うことで、割り込み情報に対応付けられたH名及びA名を用いて、割り込み情報を送信すべきアプリケーションに転送することができる。
このように、上述した割り込み転送部及びマッピングテーブルを用いることで、アプリケーションが、一つの制御装置から別の制御装置へと移行されても、車両用デバイスからの割り込み信号を転送させることによって、割り込み信号を発生させた車両用デバイスと当該車両用デバイスを管理するアプリケーションの通信が中断されない。
(第2の実施形態)
次に、図5〜7を参照して、第2の実施形態におけるマッピングテーブルについて説明する。
図5に示すマッピングテーブルは、変更可能なデバイスが車両用デバイスとして使用される場合のマッピングテーブルの一例を示す図である。
図5に示されるように、本実施形態におけるマッピングテーブルは、あるIRQがどのアプリケーションに該当するかを示すIRQからA名テーブル1152、2152と、それぞれのアプリケーションがどのハイパーバイザによって制御されているかを示すA名からH名テーブル1153、2153と、それぞれのハイパーバイザをアクセスするための接続(すなわち、経路)を示すH名から接続テーブル1154、2154とを含む。これらのマッピングテーブルは、各車両制御装置に実装されるハイパーバイザ層が有する割り込み転送部に格納されてもよい。
例えば、マッピングテーブル1152、1153、及び1154は図6に示す車両制御装置1300に格納され、マッピングテーブル2152、2153、及び2154は車両制御装置3300に格納されてもよい(例示せず)。これにより、車両用デバイスからの割り込み信号が発生すると、割り込み転送部はこれらのマッピングテーブルを参照することで、当該割り込みを転送すべき送信先を特定することができる。
後述するように、本実施形態に係るデータ処理システム(図6参照)は、割り込み情報転送処理の一部を担う変更可能な車両用デバイスを備えているため、本実施形態におけるマッピングテーブルの構成は、実施形態1に係るマッピングテーブルと異なる。具体的には、本実施形態におけるマッピングテーブルは、変更可能な車両用デバイスを識別するH名(例えば、H名2141)及び変更可能な車両用デバイスの入出力インターフェースとなる接続2031を有する点において、実施形態1に係るマッピングテーブルと異なる。このようなマッピングテーブル構成を用いることで、変更可能車両用デバイスは、割り込み情報転送処理の一部を担うことができ、実施形態1に係るデータ処理システムより更に効率よく行うことができる。
次に、図6を参照して、本発明に係るデータ処理システムについて説明する。図6は、本発明の第2の実施形態における変更可能な車両用デバイスからの割り込み信号をアプリケーションに転送するためのデータ処理システムを示す図である。
本実施形態に係るデータ処理システムは、図6に示されるように、車両制御装置1300と、車両用デバイス2500と、車両制御装置3300とを含む。上述したように、車両制御装置1300、3300は自動車における様々なシステムを電子回路を用いて総合的に制御する装置である。また、車両用デバイス2500は、カメラ、温度計、車速センサ、空気圧センサ等の予め定めた機能を実施するための専用装置である。
第2の実施形態に係るデータ処理システムは、変更不可能な車両用デバイス2300の代わりに、変更可能な車両用デバイス2500を有する点において、第2の実施形態に係るデータ処理システムと異なる。具体的には、車両用デバイス2500は、単に生データを取得して送信する車両用デバイス2300と異なり、情報通信部2030及び接続2031に加えて、割り込み転送部2140、H名2141、IRQからA名テーブル2142、A名からH名テーブル2143、及び、H名から接続テーブル2144を含む。このように、変更可能な車両用デバイス2500は、割り込み転送処理の一部(すなわち、割り込み情報の送信先となるハイパーバイザを判定する処理)を行うことができるため、割り込み信号を転送する処理を、第1の実施形態に係るデータ処理システムより更に効率よく行うことができる。
第2の実施形態に係るデータ処理システムの構成は、変更不可能な車両用デバイス2300の代わりに、変更可能な車両用デバイス2500を有する点以外では、第1の実施形態に係るデータ処理システムと同様である。そのため、第1の実施形態に係るデータ処理システムと実質的に同様である構成要素の説明はここで繰り返さない。
次に、図7を参照して、割り込み信号を転送することでアプリケーションと車両用デバイスの通信を維持する処理について説明する。図7は、本発明の一実施例における変更可能な車両用デバイス(例えば、図6に示す変更可能な車両用デバイス2500)からの割り込み信号をアプリケーションに転送する動作を示すフローチャート図である。図7に示されるフローチャートでは、割り込み情報の送信先となるハイパーバイザを判定する処理が(変更可能な)車両用デバイスによって行われる点において、図4に示される処理と異なる。このように、割り込み情報の送信先となるハイパーバイザを判定する処理を車両用デバイスによって行うことで、割り込み情報を送信先のハイパーバイザに届けるための時間を短縮し、CPUなどのリソースを節約する等の効果が得られる。
なお、以下の説明では、「#」というマークは、対象の装置・機能部を示す意味で使われており、任意の参照符号であってもよい。
図7で示される割り込み転送処理は、あるアプリケーションが1つのハイパーバイザから、別の車両制御装置のハイパーバイザに移行された際に行われる。一例として、本処理は、カメラ(例えば、図6に示す車両用デバイス2500)が取得した映像データを解析するアプリケーション(例えば、図6に示すアプリ1211)が元の車両制御装置のハイパーバイザ(例えば、図6に示す車両制御装置3300のハイパーバイザ)から、別の車両制御装置のハイパーバイザ(例えば、図6に示す車両制御装置1300のハイパーバイザ1100)に移行された場合に適用されてもよい。このアプリケーション移行は、全体システムのリソースの使用効率の向上、顧客向けのQoS(Quality of Service)改善等の理由で行われてもよい。
上述したように、アプリケーション移行を行うための具体的な手順やアプリケーションの移行先は、自動車ネットワークのリソース使用率、アプリケーション可用性、ネットワーク負荷や時間等の制約に応じて適宜に決められてもよく、ここでは限定されない。本発明では、アプリケーションは同一のA名(すなわち、アプリケーションのA名が起動時から終了時まで変わらない)を有し、上述したマッピングテーブルが自動車ネットワークの各ハイパーバイザに格納されていればよい。一例として、自動車ネットワーク起動時に、周知のアルゴリズム(例えば、path finding algorithm、loop-free routing algorithm、ideal link-state algorithm等)が、ネットワーク内でどのハイパーバイザが使用されているか、特定のH名を有するハイパーバイザにアクセスするためにどの経路を使えばよいかを各ハイパーバイザに通知し、マッピングテーブルを更新してもよい。このアルゴリズムを定期的(一定時間ごとに、アプリケーションが追加・削除・変更される度等)に実行することで、それぞれのハイパーバイザが有するマッピングテーブルを更新することができる。
図7に示すように、ステップ5000では、車両用デバイス(例えば、図6に示す車両用デバイス2500)が割り込み情報を生成する。この割り込み情報とは、CPUに対して、現在の処理を中断して、指定した処理を強制的に実行させることを要求する信号である。例えば、車両用デバイスがカメラである場合、車両デバイスは映像を撮像した後、撮像した画像をアプリケーションに処理させるために、割り込み情報を生成してもよい。
次に、ステップ5001では、割り込み情報を生成した車両用デバイスは、当該車両用のデバイス内の割り込み転送部に送信する。一例として、図6に示す車両用デバイス2500は、割り込み情報を当該車両用デバイス2500の割り込み転送部2140に送信する。
次に、ステップ5002では、割り込み情報を受信した割り込み転送部(例えば、図6に示す車両用デバイス2500の割り込み転送部2140)は、受信した割り込み情報が送信先のハイパーバイザを指定するH名メタデータに対応付けられているか否かを判定する。受信した割り込み情報は、送信先のハイパーバイザを指定するH名メタデータに対応付けられている場合には、本処理はステップ5003に進行する。受信した割り込み情報は、送信先のハイパーバイザを指定するH名メタデータに対応付けられていない場合には、本処理はステップ5007に進行する。
受信した割り込み情報は、送信先のハイパーバイザを指定するH名メタデータに対応付けられていない場合には、次にステップ5007では、割り込み転送部は受信した割り込み情報からIRQの情報を読み出す。
次に、ステップ5008では、割り込み転送部は、ステップ5007で読み出したIRQ情報を用いて、IRQからA名テーブル#を参照し、当該IRQに対応するA名を検索する。
次に、ステップ5009では、割り込み転送部は、読み出したIRQに対応するA名がIRQからA名テーブル#に存在するかを判定する。一例としては、割り込み転送部は、ステップ5007で読み出したIRQ情報を用いて、図6に示すIRQからA名テーブル2152を参照し、当該IRQに対応するA名であるA名1222を取得する。受信したIRQに対応するA名がIRQからA名テーブル#にある場合には、本処理はステップ5010に進行し、受信したIRQに対応するA名がIRQからA名テーブル#にない場合には、本処理は終了する。
次に、ステップ5010では、割り込み転送部は、取得したA名と、割り込み情報とを対応付ける。具体的には、割り込み転送部は、当該割り込み情報が処理すべきアプリケーションに該当するA名を指定するメタデータを割り込み情報に付す。一例として、割り込み転送部2140は、割り込み情報に、A名1222を指定するメタデータを対応付けてもよい。
次に、ステップ5011では、ステップ5008で取得したA名に該当するアプリケーションがどのハイパーバイザ上に稼働しているかを判定するために、割り込み転送部は、取得したA名を用いて、A名からH名テーブル#を参照し、当該A名に対応するH名(すなわち、ハイパーバイザ)を検索する。
次に、ステップ5012では、割り込み転送部は、取得したA名に対応するH名がA名からH名テーブル#に存在するかを判定する。一例としては、割り込み転送部2140は、ステップ5007で読み出したIRQ情報を用いて、図6に示すA名からH名テーブル2153を参照し、当該A名1222に対応するH名であるH名1141を取得する。受信したA名に対応するH名がA名からH名テーブル#にある場合には、本処理はステップ5013に進行し、ない場合には、本処理は終了する。
次に、ステップ5013では、割り込み転送部は、取得したH名と、割り込み情報とを対応付ける。具体的には、割り込み転送部は、当該割り込み情報が処理すべきアプリケーションを含むハイパーバイザに該当するH名を指定するメタデータを割り込み情報に付す。一例として、割り込み転送部2140は、割り込み情報に、H名1141を指定するメタデータを対応付けてもよい。
次に、本処理はステップ5002に戻り、受信した割り込み情報が送信先のハイパーバイザを指定するH名メタデータに対応付けられているか否かを判定する。今回の処理では、H名メタデータがステップ5013で割り込み情報に対応付けられたため、H名メタデータが対応付られていると判定され、本処理はステップ5003に進行する。
次に、ステップ5003では、割り込み転送部は、割り込み情報からH名(ステップ5013で対応付けたH名)を抽出する。一例として、割り込み転送部は、割り込み情報からH名1141を抽出してもよい。
次に、ステップ5004では、割り込み転送部は、抽出したH名を用いて、割り込み情報を受信したハイパーバイザがH名に指定されているハイパーバイザと同一のハイパーバイザであるか(つまり、送信先のアプリケーションが、割り込み情報を受信したハイパーバイザと同一の装置内で実装されているか)を判定する。割り込み情報を受信したハイパーバイザは、対応付けられているH名に指定されているハイパーバイザと同一のハイパーバイザである場合(すなわち、割り込み情報を受信したハイパーバイザが送信先のハイパーバイザであるため、別の制御装置に転送する必要はない)には、本処理は、ステップ5005に進行し、そうでない場合には、本処理はステップ5014に進行する。
割り込み情報を受信したハイパーバイザが、対応付けられているH名に指定されているハイパーバイザと同一のハイパーバイザである場合、ステップ5005では、割り込み転送部は、ステップ5010で割り込み情報に対応付けたA名を割り込み情報から抽出する。一例として、割り込み転送部2140は、A名1222を割り込み情報から抽出してもよい。
次に、ステップ5006では、割り込み転送部は、受信した割り込み情報を、抽出したA名を持つアプリケーションに送信し、本処理は終了する。なお、ここでは、割り込み情報を受信したハイパーバイザがH名で指定されているハイパーバイザと同一であるため、抽出したA名を持つアプリケーションが当該ハイパーバイザと同一の車両制御装置であり、H名から接続テーブルを参照する必要はない。
ステップ5004において、割り込み情報を受信したハイパーバイザはH名に指定されているハイパーバイザではないと判定された場合、次に本処理はステップ5014に進行する。ステップ5014では、割り込み転送部は、抽出したH名を用いて、H名から接続テーブル#を参照し、当該H名に対応する接続#を検索する。
次に、ステップ5015では、割り込み転送部は、抽出したH名に対応する接続#がH名から接続テーブル#に存在するか否かを判定する。一例としては、割り込み転送部2140は、ステップ5003で抽出したH名1141を用いて、図6に示すH名から接続テーブル2154を参照し、当該H名に対応する接続#である接続1031を取得する。受信したH名に対応する接続#名がH名から接続テーブル#にある場合には、本処理はステップ45016に進行し、ない場合には、本処理は終了する。
次に、ステップ5016では、割り込み転送部は、情報通信部#を用いて、ステップ5015で取得した送信先の車両制御装置の接続#に割り込み情報を送信する。一例として、割り込み転送部2140は接続2031を介して、図6に示す割り込み情報を車両制御装置1300の接続1031に送信する。
次に、ステップ5017では、送信先の車両制御装置の情報通信部は、接続#を介してステップ5016で送信された割り込み情報を受信し、同一の車両制御装置内の割り込み転送部に送信する。一例として、車両制御装置1300の情報通信部1030は、接続1031を介して、受信した割り込み情報を割り込み転送部1140に送信する。次に、割り込み情報を受信した割り込み転送部は、上述したステップ5002からの処理を行うことで、割り込み情報に対応付けられたH名及びA名を用いて、割り込み情報を送信すべきアプリケーションに転送することができる。
このように、第2の実施形態に係るデータ処理システムは、変更可能な車両用デバイスを用いて割り込み転送処理を行うことで、割り込み信号が送信先の車両制御装置に届くまでの時間を短縮し、車両制御装置の処理負荷を削減できるため、第1の実施形態に係るデータ処理システムに比べて、割り込み転送処理を更に効率よく行うことが可能となる。
次に、実施例1〜4を用いて、本発明に係る割り込み転送を実装した具体例を説明する。
実施例1は、上述した車両制御装置(例えば、図3に示す車両制御装置1300、3300)を、SoCとして半導体基盤に搭載し、PCIExpress等の通信媒体によって相互接続する。このような場合には、各SoC上には、ハイパーバイザ及び割り込み転送部が実装され、これらのSoCは情報通信部として機能するPCIExpress経由で、割り込み情報転送等のデータやり取りを行うことができる(すなわち、PCIExpressは図3における情報通信部1030として機能する)。
実施例2では、上述した車両制御装置(例えば、図3に示す車両制御装置1300、3300)は、ECUとして自動車に搭載され、車載Ethernetによって他のデバイス(他のECU及びカメラやセンサ等の車両用デバイス)に相互接続される。このような場合には、各ECU上には、ハイパーバイザ及び割り込み転送部は実装され、車載Ethernetを介してお互いに割り込み情報を転送することができる。また、本実施例では、各ECUには複数のハイパーバイザが実装されてもよい。この場合には、ハイパーバイザごとに、割り込み転送のON・OFFを設定する構成であってもよい。
本実施例3では、上述した車両制御装置(例えば、図3に示す車両制御装置1300、3300)は、それぞれ異なる自動車に搭載される。これらの自動車は、LTEAdvancedや802.11等の無線通信で相互接続される。このような場合には、車両用デバイス(例えば、図3に示す車両用デバイス2300)は、1つの車両制御装置のみに接続される。
また、この場合には、それぞれの自動車に、ハイパーバイザや割り込み転送部が実装され、これらのハイパーバイザや割り込み転送部は、上述したLTEAdvancedや802.11等の無線通信を介して、割り込み情報を別の自動車に実装されているアプリケーションに転送することができる。これにより、アプリケーションは、元の自動車の車両用デバイスとの接続を維持しつつ、別の自動車に移行されてもよい。
本実施例4では、上述した車両制御装置の1つ(例えば、図3に示す車両制御装置1300)は自動車に搭載され、1つまたは複数の車両用デバイス(例えば、図3に示す車両用デバイス2300)に接続される。そして、他の制御装置は、データセンターに設置され、インターネット等のネットワークを介して自動車に搭載されている車両制御装置に相互接続される。このような場合には、自動車に搭載されている制御装置のリソースが不足する場合には、自動車に実装されているアプリケーションがデータセンターに設置されている制御装置に移行され、自動車の割り込み転送部は車両用デバイスからの割り込み情報を、インターネットを介してデータセンターに設置される制御装置に転送することができる。これにより、アプリケーションは、元の自動車の車両用デバイスとの接続を維持しつつ、データセンターの制御装置のリソースを活用することができ、アプリケーションの性能を向上させる効果が得られる。
以上、本発明のいくつかの実施例を説明してきたが、これらは、本発明の説明のための例示であって、本発明の範囲をこれらの実施例にのみ限定する趣旨ではない。本発明は、他の種々の形態でも実施する事が可能である。
105:車両用デバイス
110、120、130、140、150:車両制御装置
1100:ハイパーバイザ
1142、2152、3142:IRQからA名テーブル
1143、2153、3143:A名からH名テーブル
1144、2154、3144:H名から接続テーブル
1300、3300:車両制御装置
2300:変更不可能な車両用デバイス
2500:変更可能な車両用デバイス

Claims (15)

  1. 車両用デバイスに接続可能な第1の車両制御装置であって、
    前記第1の車両制御装置は、
    複数の仮想化管理部、記憶部及び演算部とを備え、
    アプリケーションソフトウエアが実装されており、
    前記記憶部は、前記第1の車両制御装置に接続される車両用デバイスからの割り込み情報を一意に識別する第1の識別子と、前記第1の車両制御装置に実装される前記仮想化管理部を一意に識別する第2の識別子と、前記アプリケーションソフトウエアを一意に識別する第3の識別子と、を対応付けたマッピングテーブルを格納し、
    前記演算部は、
    前記第1の識別子を含む割り込み情報を前記車両用デバイスから受信した場合に、
    前記マッピングテーブルに基づき、前記第1の車両制御装置における前記複数の仮想化管理部の中から、前記割り込み情報の転送先となる仮想化管理部を決定する、
    ことを特徴とする車両制御装置。
  2. 前記第1の車両制御装置において、
    前記演算部が、前記仮想化管理部に含まれる、
    ことを特徴とする請求項1に記載の車両制御装置。
  3. 前記複数の仮想化管理部は、それぞれ構成の異なる車両制御装置に含まれる、
    ことを特徴とする請求項2に記載の車両制御装置。
  4. 前記第1の車両制御装置において、
    前記記憶部に格納される前記マッピングテーブルは、割り込み情報を転送する際に使用するネットワーク経路を一意に識別する第4の識別子と、前記第2の識別子とを対応付けた情報を含む、
    ことを特徴とする請求項3に記載の車両制御装置。
  5. 前記第1の車両制御装置に接続される車両用デバイスは、任意のプログラムが実施可能なデバイスである、
    ことを特徴とする請求項1に記載の車両制御装置。
  6. 前記第1の車両制御装置及び第2の車両制御装置が自動車に搭載され、
    前記第2の車両制御装置は、
    第2の仮想化管理部を実装し、
    前記第1の車両制御装置に実装される前記アプリケーションソフトウエアが前記第2の車両制御装置に移行された場合に、
    前記第1の車両制御装置の前記演算部は、
    前記車両用デバイスから、前記第1の識別子を含む割り込み情報を受信し、
    前記第1の識別子を用いて、前記マッピングテーブルから、前記第2の車両制御装置の前記第2の仮想化管理部に対応する前記第2の識別子を抽出し、
    前記第2の識別子を用いて、前記マッピングテーブルから、前記アプリケーションソフトウエアに対応する前記第3の識別子を抽出し、
    前記第3の識別子を用いて、前記マッピングテーブルから、前記第2の車両制御装置までのネットワーク経路に対応する前記第4の識別子を抽出し、
    前記割り込み情報を、前記第2の車両制御装置までの前記ネットワーク経路を介して送信する、
    ことを特徴とする請求項4に記載の車両制御装置。
  7. 車両用デバイスに接続可能な第1の車両制御装置における割り込み情報管理方法であって、
    前記第1の車両制御装置は、
    複数の仮想化管理部、記憶部及び演算部とを備え、
    アプリケーションソフトウエアが実装されており、
    前記記憶部は、前記第1の車両制御装置に接続される車両用デバイスからの割り込み情報を一意に識別する第1の識別子と、前記第1の車両制御装置に実装される前記仮想化管理部を一意に識別する第2の識別子と、前記アプリケーションソフトウエアを一意に識別する第3の識別子と、を対応付けたマッピングテーブルを格納しており、
    前記演算部が、
    前記第1の識別子を含む割り込み情報を前記車両用デバイスから受信した場合に、
    前記マッピングテーブルに基づき、前記第1の車両制御装置における前記複数の仮想化管理部の中から、前記割り込み情報の転送先となる仮想化管理部を前記演算部によって決定する工程、
    を含む割り込み情報管理方法。
  8. 前記第1の車両制御装置において、
    前記演算部が、前記仮想化管理部に含まれる、
    ことを特徴とする請求項7に記載の割り込み情報管理方法。
  9. 前記複数の仮想化管理部は、それぞれ構成の異なる車両制御装置に含まれる、
    ことを特徴とする請求項8に記載の割り込み情報管理方法。
  10. 前記第1の車両制御装置において、
    前記記憶部に格納される前記マッピングテーブルは、割り込み情報を転送する際に使用するネットワーク経路を一意に識別する第4の識別子と、前記第2の識別子とを対応付けた情報を含む、
    ことを特徴とする請求項9に記載の割り込み情報管理方法。
  11. 車両用デバイスに接続可能な第1の車両制御装置における割り込み情報管理プログラムであって、
    前記第1の車両制御装置は、
    複数の仮想化管理部、記憶部及び演算部とを備え、
    アプリケーションソフトウエアが実装されており、
    前記記憶部は、前記第1の車両制御装置に接続される車両用デバイスからの割り込み情報を一意に識別する第1の識別子と、前記第1の車両制御装置に実装される前記仮想化管理部を一意に識別する第2の識別子と、前記アプリケーションソフトウエアを一意に識別する第3の識別子と、を対応付けたマッピングテーブルを格納しており、
    前記演算部が前記第1の識別子を含む割り込み情報を前記車両用デバイスから受信した場合に、
    前記マッピングテーブルに基づき、前記第1の車両制御装置における前記複数の仮想化管理部の中から、前記割り込み情報の転送先となる仮想化管理部を前記演算部によって決定する工程、
    をコンピュータに実行させる割り込み情報管理プログラム。
  12. 前記第1の車両制御装置において、
    前記演算部が、前記仮想化管理部に含まれる、
    ことを特徴とする請求項11に記載の割り込み情報管理プログラム。
  13. 前記複数の仮想化管理部は、それぞれ構成の異なる車両制御装置に含まれる、
    ことを特徴とする請求項12に記載の割り込み情報管理プログラム。
  14. 前記第1の車両制御装置において、
    前記記憶部に格納される前記マッピングテーブルは、割り込み情報を転送する際に使用するネットワーク経路を一意に識別する第4の識別子と、前記第2の識別子とを対応付けた情報を含む、
    ことを特徴とする請求項13に記載の割り込み情報管理プログラム。
  15. 前記第1の車両制御装置及び第2の車両制御装置が自動車に搭載され、
    前記第2の車両制御装置は、
    第2の仮想化管理部を実装し、
    前記第1の車両制御装置に実装される前記アプリケーションソフトウエアが前記第2の車両制御装置に移行された場合に、
    前記第1の車両制御装置の前記演算部は、
    前記車両用デバイスから、前記第1の識別子を含む割り込み情報を受信する工程と、
    前記第1の識別子を用いて、前記マッピングテーブルから、前記第2の車両制御装置の前記第2の仮想化管理部に対応する前記第2の識別子を抽出する工程と、
    前記第2の識別子を用いて、前記マッピングテーブルから、前記アプリケーションソフトウエアに対応する前記第3の識別子を抽出する工程と、
    前記第3の識別子を用いて、前記マッピングテーブルから、前記第2の車両制御装置までのネットワーク経路に対応する前記第4の識別子を抽出する工程と、
    前記割り込み情報を、前記第2の車両制御装置までの前記ネットワーク経路を介して送信する工程と、
    をコンピュータに実行させる、請求項14に記載の割り込み情報管理プログラム。
JP2018113852A 2018-06-14 2018-06-14 車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム Active JP6838233B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018113852A JP6838233B2 (ja) 2018-06-14 2018-06-14 車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム
PCT/JP2019/019304 WO2019239778A1 (ja) 2018-06-14 2019-05-15 車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム
DE112019002392.6T DE112019002392T5 (de) 2018-06-14 2019-05-15 Fahrzeugsteuergerät, verfahren zur verwaltung von interruptinformationen und programm zur verwaltung von interruptinformationen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018113852A JP6838233B2 (ja) 2018-06-14 2018-06-14 車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム

Publications (3)

Publication Number Publication Date
JP2019215822A JP2019215822A (ja) 2019-12-19
JP2019215822A5 JP2019215822A5 (ja) 2020-10-08
JP6838233B2 true JP6838233B2 (ja) 2021-03-03

Family

ID=68843265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018113852A Active JP6838233B2 (ja) 2018-06-14 2018-06-14 車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム

Country Status (3)

Country Link
JP (1) JP6838233B2 (ja)
DE (1) DE112019002392T5 (ja)
WO (1) WO2019239778A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021135808A (ja) * 2020-02-27 2021-09-13 マツダ株式会社 車載機器制御装置
JP7443820B2 (ja) * 2020-02-27 2024-03-06 マツダ株式会社 車載機器制御装置および車両制御システム
JP2021135806A (ja) * 2020-02-27 2021-09-13 マツダ株式会社 車載機器制御装置及び車両制御システム

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5611060B2 (ja) * 2011-01-07 2014-10-22 三菱電機株式会社 計算機システム及び割込み制御方法及びプログラム
JP5737050B2 (ja) * 2011-08-15 2015-06-17 富士通株式会社 情報処理装置、割込み制御方法および割込み制御プログラム
JP5658197B2 (ja) * 2012-06-04 2015-01-21 株式会社日立製作所 計算機システム、仮想化機構、及び計算機システムの制御方法

Also Published As

Publication number Publication date
JP2019215822A (ja) 2019-12-19
DE112019002392T5 (de) 2021-03-04
WO2019239778A1 (ja) 2019-12-19

Similar Documents

Publication Publication Date Title
US11416275B2 (en) Techniques for migration paths
JP6559777B2 (ja) 自律走行車における処理ノードのデータフローを管理する方法、装置及びシステム
JP6838233B2 (ja) 車両制御装置、割り込み情報管理方法及び割り込み情報管理プログラム
TW202042059A (zh) 用於將應用函數卸載到裝置的系統和方法
CN110276194B (zh) 信息处理方法、信息处理装置和电子设备
JP6297232B2 (ja) データ処理装置、データ処理方法及びデータ処理プログラム
US9317520B2 (en) State scope data file sharing
KR20220002480A (ko) Ml 가속기들에 대한 머신 학습 모델 업데이트들
CN102326147B (zh) 虚拟网络环境中的复制避免
CN115858103B (zh) 用于开放堆栈架构虚拟机热迁移的方法、设备及介质
US9733846B1 (en) Integrated backup performance enhancements by creating affinity groups
US10599440B2 (en) Method for sharing processing modules between pipelines
US20150254102A1 (en) Computer-readable recording medium, task assignment device, task execution device, and task assignment method
US20120260246A1 (en) Software application installation
US10909044B2 (en) Access control device, access control method, and recording medium containing access control program
CN110532099B (zh) 资源隔离方法和装置以及电子设备和介质
US11726885B2 (en) Efficient method and system of intelligent deploying file level restore agent in multicloud
CN116349216A (zh) 边缘计算方法及系统、边缘设备和控制服务器
US10701176B1 (en) Messaging using a hash ring with host groups
JP7313123B2 (ja) 演算システムおよび演算方法
US20240118692A1 (en) System and method for preforming live migration from a source host to a target host
US11256643B2 (en) System and method for high configurability high-speed interconnect
US20230067658A1 (en) System and operation method of hybrid virtual machine managers
KR102224327B1 (ko) Rdma 기반의 노드 간 데이터 전송 방법 및 노드 장치
US20220171612A1 (en) Electronic control unit, software update method, software update program product and electronic control system

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200827

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200827

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210114

R150 Certificate of patent or registration of utility model

Ref document number: 6838233

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250