JP7655244B2 - 制御装置、制御方法、制御プログラム、及び車両 - Google Patents

制御装置、制御方法、制御プログラム、及び車両 Download PDF

Info

Publication number
JP7655244B2
JP7655244B2 JP2022022461A JP2022022461A JP7655244B2 JP 7655244 B2 JP7655244 B2 JP 7655244B2 JP 2022022461 A JP2022022461 A JP 2022022461A JP 2022022461 A JP2022022461 A JP 2022022461A JP 7655244 B2 JP7655244 B2 JP 7655244B2
Authority
JP
Japan
Prior art keywords
data
storage unit
vehicle state
vehicle
data output
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
JP2022022461A
Other languages
English (en)
Other versions
JP2023119512A (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 JP2022022461A priority Critical patent/JP7655244B2/ja
Priority to EP23155267.0A priority patent/EP4231150A1/en
Priority to US18/165,418 priority patent/US12158847B2/en
Priority to KR1020230017229A priority patent/KR102824973B1/ko
Priority to CN202310088247.2A priority patent/CN116610603A/zh
Publication of JP2023119512A publication Critical patent/JP2023119512A/ja
Application granted granted Critical
Publication of JP7655244B2 publication Critical patent/JP7655244B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30072Arrangements for executing specific machine instructions to perform conditional operations, e.g. using predicates or guards
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60RVEHICLES, VEHICLE FITTINGS, OR VEHICLE PARTS, NOT OTHERWISE PROVIDED FOR
    • B60R16/00Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for
    • B60R16/02Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements
    • B60R16/023Electric or fluid circuits specially adapted for vehicles and not otherwise provided for; Arrangement of elements of electric or fluid circuits specially adapted for vehicles and not otherwise provided for electric constitutive elements for transmission of signals between vehicle parts or subsystems
    • B60R16/0231Circuits relating to the driving or the functioning of the vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/18Handling requests for interconnection or transfer for access to memory bus based on priority control
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • G06F21/72Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0604Improving or facilitating administration, e.g. storage management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30181Instruction operation extension or modification
    • G06F9/30189Instruction operation extension or modification according to execution mode, e.g. mode flag
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • G06F9/4831Task transfer initiation or dispatching by interrupt, e.g. masked with variable priority
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0001Details of the control system
    • B60W2050/0002Automatic control, details of type of controller or control system architecture
    • B60W2050/0004In digital systems, e.g. discrete-time systems involving sampling
    • B60W2050/0005Processor details or data handling, e.g. memory registers or chip architecture

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Mechanical Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Transportation (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)
  • Memory System (AREA)

Description

本開示は、制御装置、制御方法、制御プログラム、及び車両に関する。
従来、プロセッサの利用効率を向上させる仮想化支援デバイスが知られている(例えば、特許文献1)。特許文献1に開示されているプロセッサは、第1及び第2のアプリケーションからの複数のリクエストに対する複数のアクセラレータの実行順序の調停を実行する。そして、このプロセッサは、調停に基づいて第1及び第2の情報のうち一方の情報を用いて、入出力メモリ管理ユニットの設定を制御し、調停に基づいて複数のリクエストのうち一方のリクエストを、複数のアクセラレータのうち対応する1つ以上に実行させる(例えば、特許文献1の[要約]を参照)。
特開2021‐051420号公報
ところで、複数のアプリケーションソフトウェア(以下、単に「アプリケーション」と称する。)の各々を実行する複数のデバイス(例えば、CPU : Central Processing Unit)が、ほぼ同時にストレージ等の記憶部へアクセスしてデータを記憶させようとした場合、何れのデバイスのデータを優先させて記憶させればよいのか、といった問題が生じるときがある。
特許文献1の技術は、複数のリクエストに対する複数のアクセラレータの実行順序を調停するものであり、複数のアプリケーションの各々のデータをストレージ等の記憶部へ記憶させる際の順序を調停するものではない。
このため、従来技術では、複数のアプリケーションの各々に関係する複数のデバイスがほぼ同時に1つの記憶部へアクセスした際には、複数のデバイス間において競合が発生してしまうときがある、という課題がある。複数のデバイスがほぼ同時に1つの記憶部へアクセスすることにより、例えば、データを更新する際の整合性が失われてしまう場合もある。
本開示は、以上の事実を考慮して成されたもので、複数のアプリケーションに関係する複数のデバイスが1つの記憶部へアクセスする場合であっても、デバイス間の競合の発生を抑制することを目的とする。
上記目的を達成するために本開示の第1態様は、複数のアプリケーションから出力されたデータを受け付ける受付部と、所定の条件に基づいて、複数のアプリケーションから出力された複数の前記データを記憶部へ記憶させる順序を調停する調停部と、を備える制御装置である。
本開示の第1態様の制御装置は、複数のアプリケーションから出力されたデータを受け付ける。制御装置は、所定の条件に基づいて、複数のアプリケーションから出力された複数のデータを記憶部へ記憶させる順序を調停する。これにより、複数のアプリケーションに関係する複数のデバイスが1つの記憶部へアクセスする場合であっても、デバイス間の競合の発生を抑制することができる。
本開示の第2態様の前記所定の条件は、車両状態に応じて予め設定されている条件を表す車両状態条件であり、前記受付部は、前記車両状態を更に受け付け、前記調停部は、前記受付部によって受け付けられた前記車両状態と、前記車両状態条件とに基づいて、前記受付部によって受け付けられた複数の前記データを前記記憶部へ記憶させる順序を調停する。本開示の第2態様によれば、制御装置が搭載されている車両の車両状態に応じて、複数のアプリケーションに関係する複数のデバイスが1つの記憶部へアクセスする場合であっても、デバイス間の競合の発生を抑制することができる。
本開示の第3態様の複数のアプリケーションには、自動運転制御に関するアプリケーションである自動運転アプリケーションと、前記自動運転制御とは異なる車両制御に関するアプリケーションである制御系アプリケーションと、が含まれ、前記車両状態には、車両が自動運転状態であることを表す自動運転モードが含まれ、前記調停部は、前記受付部により受け付けられた前記車両状態が前記自動運転モードである場合、前記自動運転アプリケーションから出力されたデータを、前記制御系アプリケーションから出力されたデータよりも優先させて前記記憶部へ記憶させるようにし、前記受付部により受け付けられた前記車両状態が前記自動運転モードではない場合、前記制御系アプリケーションから出力されたデータを、前記自動運転アプリケーションから出力されたデータよりも優先させて前記記憶部へ記憶させるようにして、複数の前記データを前記記憶部へ記憶させる順序を調停する。本開示の第3態様によれば、車両状態が自動運転モードであるのか否かに応じて、データを記憶部へ記憶させる順序を適切に調停することができる。
本開示の第4態様の複数のアプリケーションには、前記車両において利用されるマルチメディアに関するアプリケーションであるマルチメディア系アプリケーションが更に含まれ、前記調停部は、前記受付部により受け付けられた前記車両状態が前記自動運転モードである場合、前記自動運転アプリケーションから出力されたデータを、前記制御系アプリケーションから出力されるデータ及び前記マルチメディア系アプリケーションから出力されるデータよりも優先させて前記記憶部へ記憶させるようにし、前記受付部により受け付けられた前記車両状態が前記自動運転モードではない場合、前記制御系アプリケーションから出力されるデータ及び前記自動運転アプリケーションから出力されたデータを、前記マルチメディア系アプリケーションから出力されるデータよりも優先させて前記記憶部へ記憶させるようにして、複数の前記データを前記記憶部へ記憶させる順序を調停する。本開示の第4態様によれば、車両状態が自動運転モードであるのか否かとアプリケーションの種類とに応じて、データを記憶部へ記憶させる順序を適切に調停することができる。
本開示の第5態様の前記車両状態には、前記車両が工場内に存在し、かつ前記車両が改良中又は修理中であることを表す車両工場モードが含まれ、前記調停部は、前記受付部により受け付けられた前記車両状態が前記車両工場モードである場合、前記制御系アプリケーションから出力されたデータを、前記自動運転アプリケーションから出力されたデータよりも優先させて前記記憶部へ記憶させるようにして、複数の前記データを前記記憶部へ記憶させる順序を調停する。本開示の第5態様によれば、車両状態が車両工場モードであるのか否かに応じて、データを記憶部へ記憶させる順序を適切に調停することができる。
本開示の第6態様の前記調停部は、前記受付部により受け付けられた前記車両状態が前記車両工場モードである場合、前記アプリケーションから出力されたデータを前記記憶部へ記憶させる処理を、前記記憶部からデータを読み出す処理よりも優先させるようにし、前記受付部により受け付けられた前記車両状態が前記自動運転モードである場合、前記記憶部からデータを読み出す処理を、前記アプリケーションから出力されたデータを前記記憶部へ記憶させる処理よりも優先させるようにして、複数の前記データを前記記憶部へ記憶させる順序と前記記憶部からのデータの読み出しの順序とを更に調停する。本開示の第6態様によれば、データに対する処理の種類に応じて、データを記憶部へ記憶させる処理とデータを記憶部から読み出す処理とを適切に調停することができる。
本開示の第7態様の複数のアプリケーションから出力される前記データには、前記アプリケーションから出力されるデータを暗号化するための鍵データ及び前記アプリケーションを実行する際に利用される実行データが含まれ、前記調停部は、前記所定の条件に基づいて、前記鍵データ及び前記実行データの何れを優先させて前記記憶部へ記憶させるのかを調停する。本開示の第7態様によれば、データの種類に応じて、データを記憶部へ記憶させる処理を適切に調停することができる。
本開示の第8態様の前記所定の条件は、車両状態に応じて予め設定されている条件を表す車両状態条件であり、前記受付部は、前記車両状態を更に受け付け、前記車両状態には、車両が自動運転状態であることを表す自動運転モードと、前記車両が工場内に存在しかつ前記車両が改良中又は修理中であることを表す車両工場モードとが含まれ、前記調停部は、前記受付部により受け付けられた前記車両状態が前記車両工場モードである場合、前記鍵データを前記記憶部へ記憶させる処理を、前記実行データを前記記憶部へ記憶させる処理よりも優先させるようにし、前記受付部により受け付けられた前記車両状態が前記自動運転モードである場合、前記記憶部から前記実行データを読み出す処理を、前記鍵データを前記記憶部へ記憶させる処理よりも優先させるようにして、複数の前記データを前記記憶部へ記憶させる順序と前記記憶部からの前記データの読み出しの順序とを更に調停する。本開示の第8態様によれば、データの種類と処理の種類に応じて、データを記憶部へ記憶させる処理とデータを記憶部から読み出す処理とを適切に調停することができる。
本開示の第9態様は、上記の制御装置を備える車両である。本開示の第9態様によれば、第1態様と同様に、複数のアプリケーションに関係する複数のデバイスが1つの記憶部へアクセスする場合であっても、デバイス間の競合の発生を抑制することができる。
本開示の第10態様の制御方法は、複数のアプリケーションから出力されたデータを受け付け、所定の条件に基づいて、複数のアプリケーションから出力された複数の前記データを記憶部へ記憶させる順序を調停する、処理をコンピュータが実行する制御方法である。本開示の第10態様によれば、第1態様と同様に、複数のアプリケーションに関係する複数のデバイスが1つの記憶部へアクセスする場合であっても、デバイス間の競合の発生を抑制することができる。
本開示の第11態様の制御プログラムは、数のアプリケーションから出力されたデータを受け付け、所定の条件に基づいて、複数のアプリケーションから出力された複数の前記データを記憶部へ記憶させる順序を調停する、処理をコンピュータに実行させるための制御プログラムである。本開示の第11態様によれば、第1態様と同様に、複数のアプリケーションに関係する複数のデバイスが1つの記憶部へアクセスする場合であっても、デバイス間の競合の発生を抑制することができる。
以上説明したように本開示によれば、複数のアプリケーションに関係する複数のデバイスが1つの記憶部へアクセスする場合であっても、デバイス間の競合の発生を抑制することができる、という効果が得られる。
実施形態に係る制御システムの概略構成の一例を示すブロック図である。 デバイスからストレージへのアクセスを説明するための図である。 デバイスからストレージへのアクセスを説明するための図である。 車両状態条件の一例を説明するための図である。 実施形態に係る制御システムで行われる処理の流れの一例を示す図である。 実施形態に係る制御システムで行われる処理の流れの一例を示す図である。 実施形態に係る制御システムで行われる処理の流れの一例を示す図である。
以下、図面を参照して、本開示の実施形態を詳細に説明する。
<実施形態>
図1は、実施形態に係る制御システム10の概略構成の一例を示すブロック図である。制御システム10は、図1に示されるように、複数のCentral Processing Unit(CPU)12-1,12-2,12-3,12-4と、複数のHardware Security Module(HSM)14-1,14-2,14-3と、一時記憶領域としてのメモリ16と、不揮発性の記憶部の一例であるストレージ18と、通信インターフェイスであるイーサネット(登録商標)スイッチ(Eth/SW)19とを備える。制御システム10は、車両(図示省略)に搭載される。
制御システム10は、後述する各種の構成要素が搭載されたハードウェアである。制御システム10は、プロセッサでもある。
複数のCPU12-1,12-2,12-3,12-4と、複数のHSM14-1,14-2,14-3と、メモリ16と、ストレージ18と、Eth/SW19とは、バス(図示省略)を介して通信可能に接続されている。なお、以下では、複数のCPU12-1,12-2,12-3,12-4のうちの何れか1つのCPUを、単にCPU12とも称する。また、以下では、複数のHSM14-1,14-2,14-3のうちの何れか1つのHSMを、単にHSM14とも称する。
HSM14は、データを暗号化又は復号化する際に用いられる鍵データを管理するためのハードウェアである。HSM14は、セキュリティ機能を有しており、耐タンパ性を有している。HSM14は、鍵データの保管、鍵データを用いた暗号化又は復号化の演算、鍵データの生成、及び乱数の生成等を行う。
メモリ16は、プロセッサであるCPU12が直接アクセスすることが可能な記憶装置である。メモリ16には、頻繁に利用されるデータも一時的に格納されるため、記憶部の一例でもある。
ストレージ18は、Hard Disk Drive(HDD)、Solid State Drive(SSD)、フラッシュメモリ等によって実現される。記憶媒体としてのストレージ18には、制御システム10を機能させるためのプログラムが記憶されている。制御システム10を構成する複数のCPU12-1,12-2,12-3,12-4は、各種プログラムをストレージ18から読み出してメモリ16に展開し、プログラムが有するプロセスを順次実行する。
制御システム10の複数のCPU12-1,12-2,12-3,12-4が各種プログラムを順次実行することにより、図1に示される、仮想化機構20、複数の仮想マシン30-1,30-2,30-3,30-4、複数のBasic Software(BSW)40-1,40-2,40-3、セントラルゲートウェイ(G/W)50、制御系アプリケーション60A、自動運転アプリケーション60B、及びマルチメディア系アプリケーション60Cの機能が実現される。
なお、以下では、複数の仮想マシン30-1,30-2,30-3,30-4のうちの何れか1つの仮想マシンを単に仮想マシン30とも称する。また、以下では、複数のBSW40-1,40-2,40-3のうちの何れか1つのBSWを単にBSW40とも称する。また、以下では、制御系アプリケーション60A、自動運転アプリケーション60B、及びマルチメディア系アプリケーション60Cの何れか1つのアプリケーションを、単にアプリケーション60とも称する。
仮想化機構20は、制御システム10上で稼働するソフトウェアによって実現される。仮想化機構20は、制御システム10の物理的な構成である複数のCPU12-1,12-2,12-3,12-4によって実現される。また、仮想化機構20上において仮想マシン30の機能が実現される。
仮想マシン30は、仮想化機構20上において動作する。仮想マシン30は、仮想化されたコンピュータとして動作する。仮想マシン30は、コンピュータの動作を模擬して1台のコンピュータハードウェアのように振る舞うことができる。
BSW40は、仮想マシン30上において動作する。BSW40は、オペレーティングシステムの機能及び通信機能等の基本的な機能を有している。具体的には、BSW40-1は仮想マシン30-2上において動作し、BSW40-2は仮想マシン30-3上において動作し、BSW40-3は仮想マシン30-4上において動作する。
セントラルG/W50は、仮想マシン30上において動作する。セントラルG/W50は、外部から受け付けたデータの中継を行う。
アプリケーション60は、BSW40上において動作する。アプリケーション60は、ある特定の処理を実行するソフトウェアであり、本実施形態では図1に示されるように、自動運転制御とは異なる車両制御に関するアプリケーションである制御系アプリケーション60A、自動運転制御に関するアプリケーションである自動運転アプリケーション60B、及び車両において利用されるマルチメディアに関するアプリケーションであるマルチメディア系アプリケーション60Cが動作する。
具体的には、制御系アプリケーション60AはBSW40-1上において動作し、自動運転アプリケーション60BはBSW40-2上において動作し、マルチメディア系アプリケーション60CはBSW40-3上において動作する。
なお、アプリケーション60から外部へ送信されるデータのうち高いセキュリティ性が要求されるデータは、HSM14によって暗号化された後に、アプリケーション60から外部へ暗号化済みのデータが送信される。また、アプリケーション60が外部から受信したデータのうち暗号化済みのデータは、HSM14によって復号化された後に、アプリケーション60において利用される。
例えば、制御系アプリケーション60Aによって送受信されるデータは、HSM14-1によって暗号化又は復号化がされる。また、自動運転アプリケーション60Bによって送受信されるデータは、HSM14-2によって暗号化又は復号化がされる。また、マルチメディア系アプリケーション60Cによって送受信されるデータは、HSM14-3によって暗号化又は復号化がされる。
図1に示される複数のアプリケーション60が、ある所定時間内においてストレージ18へアクセスした場合、複数のCPU12-1,12-2,12-3,12-4と複数のHSM14-1,14-2,14-3との間において競合が発生し得る。具体的には、図1に示されるアプリケーション60を実行するCPU12と、データに対する暗号化又は復号化処理を実行するHSM14とが、ある所定時間内においてメモリ16又はストレージ18へアクセスした場合、複数のCPU12-1,12-2,12-3,12-4と複数のHSM14-1,14-2,14-3との間において競合が発生し得る。
このような点を考慮して、例えば、あるアプリケーションを他のアプリケーションよりも一律に優先させるといった措置も取り得る。しかし、このような場合には、例えば、優先度の低いアプリケーションが実行されている最中に優先度の高いアプリケーションが実行されたときには、優先度の低いアプリケーションの実行は中断されてしまい、制御システム10は想定外の動作を引き起こす可能性もある。また、アプリケーションに対して優先度が設定された場合には、その優先度が高いアプリケーションに不具合が発生したときには、優先度が高いアプリケーションがストレージ18を占有し続けてしまうということも生じ得る。
そこで、本実施形態の制御システム10は、車両の状態(以下、単に「車両状態」と称する。)に基づいて、複数のアプリケーション60から出力されたデータをストレージ18へ記憶させる順序を調停する。
本実施形態では、仮想化機構20上において動作する制御装置22が、車両状態を受け付ける。そして、制御装置22は、車両状態と、車両状態に応じて予め設定されている条件を表す車両状態条件とに基づいて、複数のデータをストレージ18へ記憶させる順序を調停する。
なお、複数のアプリケーション60から出力されるデータには、アプリケーション60から出力されるデータを暗号化するための鍵データ及びアプリケーション60を実行する際に利用される実行データが含まれている。このため、制御装置22は、車両状態と車両状態条件とに基づいて、鍵データ及び実行データの何れを優先させてストレージ18へ記憶させるのかも調停する。なお、以下では、データをストレージ18へ記憶させる処理を単に「書き込み」とも称する。
図2及び図3に、デバイスからストレージ18へのアクセスを説明するための図を示す。
図2に示されるように、制御系アプリケーション60Aから鍵データKey_Aが出力された場合、HSM14-1は鍵データKey_Aを取得し、自らの記憶部(図示省略)へ鍵データKey_Aを格納する。なお、この鍵データKey_Aは、制御系アプリケーション60Aと外部装置との間において送受信されるデータの暗号化又は復号化に利用される。そして、HSM14-1は鍵データKey_Aを一旦メモリ16へ展開した後に、鍵データKey_Aをストレージ18へ書き込む。
また、図2に示されるように、マルチメディア系アプリケーション60Cから鍵データKey_Cが出力された場合、HSM14-2は鍵データKey_Cを取得し、自らの記憶部(図示省略)へ鍵データKey_Cを格納する。なお、この鍵データKey_Cは、マルチメディア系アプリケーション60Cと外部装置との間において送受信されるデータの暗号化又は復号化に利用される。そして、HSM14-2は鍵データKey_Cを一旦メモリ16へ展開した後に、鍵データKey_Cをストレージ18へ書き込む。
さらに、図2に示されるように、自動運転アプリケーション60Bから自動運転に関する実行データが出力された場合、自動運転アプリケーション60Bを動作させている仮想マシン30に対応するCPU12は、自動運転に関する実行データを一旦メモリ16へ展開した後に、自動運転に関する実行データをストレージ18へ書き込む。また、自動運転アプリケーション60Bを動作させている仮想マシン30に対応するCPU12は、ストレージ18へ既に記憶されている自動運転に関する実行データを読み出し、自動運転アプリケーション60Bへ出力する。
以上のように、各アプリケーションに関係するデバイス(上述の例では、HSM14-1、HSM14-2、及びCPU12)が成り行きでストレージ18へアクセスした場合には、そのデバイスの間において競合が発生し得る。その結果、各種の要求性能要件を満たすことができない状態にもなり得る。
例えば、車両が自動運転モードである場合には、所定時間以内にストレージ18からの実行データの読み出し又は実行データのストレージ18への書き込みが、要求性能要件とされている場合があり得る。また、例えば、車両が車両工場モードである場合には、鍵データを所定時間以内にストレージ18へ書き込むことが、要求性能要件とされている場合もあり得る。
そこで、本実施形態では、図3に示されるように、仮想化機構20上で動作する制御装置22が、車両状態と車両状態条件とデータの種類と処理の種類とに基づいて、データをストレージ18へ記憶させる順序と、ストレージ18からのデータの読み出しの順序とを調停する。
図1に示されるように、制御装置22は、機能的には、受付部24と、条件記憶部25と、調停部26とを備えている。制御装置22はソフトウェアによってその機能が実現される。
受付部24は、制御システム10が搭載されている車両の車両状態と、アプリケーション60から出力されるデータとを受け付ける。
なお、本実施形態では、車両が自動運転状態であることを表す自動運転モードと、車両が工場内に存在しかつ当該車両が改良中又は修理中であることを表す車両工場モードとが車両状態として存在する場合を例に説明する。
条件記憶部25には、車両状態に応じて予め設定されている条件を表す車両状態条件が格納されている。車両状態条件は、所定の条件の一例である。車両状態条件には、車両状態に応じて何れのデータ処理を優先させるかが予め設定されている。
図4に、車両状態条件の一例を示す。図4に示されるように、車両状態条件は、車両状態と各処理の優先順位とが対応付けられている。例えば、図4に示されるように、車両状態が自動運転モードである場合、自動運転アプリケーション60Bの実行データのストレージ18からの読み出し処理の優先度が最も高く、鍵データのストレージ18への書き込み処理の優先度が最も低い。また、図4に示されるように、車両状態が車両工場モードである場合、鍵データのストレージ18への書き込み処理の優先度が最も高く、ストレージ18からの実行データの読み出し処理の優先度が最も低い。
なお、図4に示されるように、車両が故障している状態を表す故障モード及び車載ソフトウェアがアップデートされている状態を表すOver-The-Air(OTA)モードについても各処理の優先度が設定され得る。
調停部26は、受付部24によって受け付けた車両状態と、条件記憶部25に格納されている車両状態条件に基づいて、複数のアプリケーション60から出力された複数のデータをストレージ18へ記憶させる順序を調停する。
具体的には、調停部26は、受付部24によって受け付けた車両状態が自動運転モードである場合には、自動運転アプリケーション60Bから出力された実行データを、制御系アプリケーション60Aから出力される実行データ及びマルチメディア系アプリケーション60Cから出力される実行データよりも優先させてストレージ18へ記憶させるように制御する。なお、調停部26は、受付部24によって受け付けた車両状態が自動運転モードである場合、制御系アプリケーション60Aから出力される実行データを、マルチメディア系アプリケーション60Cから出力される実行データよりも優先させてストレージ18へ記憶させるように制御する。
また、調停部26は、受付部24によって受け付けた車両状態が自動運転モードではない場合、制御系アプリケーション60Aから出力される実行データを、自動運転アプリケーション60Bから出力される実行データ及びマルチメディア系アプリケーション60Cから出力される実行データよりも優先させてストレージ18へ記憶させるように制御する。なお、調停部26は、受付部24によって受け付けた車両状態が自動運転モードではない場合、自動運転アプリケーション60Bから出力される実行データを、マルチメディア系アプリケーション60Cから出力される実行データよりも優先させてストレージ18へ記憶させるように制御する。
また、例えば、調停部26は、受付部24によって受け付けた車両状態が車両工場モードである場合、制御系アプリケーション60Aから出力される実行データを、自動運転アプリケーション60Bから出力される実行データ及びマルチメディア系アプリケーション60Cから出力される実行データよりも優先させてストレージ18へ記憶させるように制御する。また、例えば、調停部26は、受付部24によって受け付けた車両状態が車両工場モードである場合、自動運転アプリケーション60Bから出力される実行データをマルチメディア系アプリケーション60Cから出力される実行データよりも優先させてストレージ18へ記憶させるように制御する。
なお、複数のアプリケーション60から出力されるデータには、アプリケーション60から出力されるデータを暗号化するための鍵データも含まれている。このため、調停部26は、車両状態と車両状態条件とに基づいて、鍵データ及び実行データの何れを優先させてストレージ18へ記憶させるのかも調停する。
調停部26は、受付部24により受け付けられた車両状態が車両工場モードである場合、鍵データをストレージ18へ記憶させる処理を、実行データをストレージ18へ記憶させる処理よりも優先させるように制御する。また、調停部26は、受付部24により受け付けられた車両状態が自動運転モードである場合、ストレージ18からデータを読み出す処理を、鍵データをストレージ18へ記憶させる処理よりも優先させるように制御する。
このようにして、調停部26は、複数のデータをストレージ18へ記憶させる順序とストレージ18からのデータの読み出しの順序とを調停する。
なお、図1に示される例では、4つの仮想マシン30が示され、3つのBSW40が示され、かつ3つのアプリケーション60が示されている。また、図1に示される例では、4つのCPU12、3つのHSM14が示されている。しかし、これら構成要素の数は図1に示されている例に限定されるものではない。
次に、実施形態の制御システム10の作用について説明する。
制御システム10のCPU12によって実現される仮想マシン30がアプリケーション60から出力された要求信号を受け付けると、仮想マシン30を実現させているCPU12は図5に示される制御処理ルーチンを実行する。
ステップS50において、CPU12は、アプリケーション60から出力された要求信号を受け付ける。
ステップS52において、CPU12は、ステップS50で受け付けた要求信号には鍵データの更新要求が含まれているか否かを判定する。要求信号に鍵データの更新要求が含まれている場合には、ステップS54へ進む。一方、要求信号に鍵データの更新要求が含まれていない場合には、ステップS58へ進む。
ステップS54において、CPU12は、鍵データの更新をHSM14へ要求する。
HSM14が、CPU12から出力された更新要求を受け付けると、HSM14は自身の記憶部(図示省略)へ鍵データを格納する。
ステップS56において、CPU12は、鍵データの更新を制御装置22へ要求する。
ステップS58において、CPU12は、ステップS50で受け付けた要求信号にストレージ18へのアクセス要求が含まれているか否かを判定する。要求信号にストレージ18へのアクセス要求が含まれている場合には、ステップS60へ進む。一方、要求信号にストレージ18へのアクセス要求が含まれていない場合には処理を終了する。
ステップS60において、CPU12は、実行データのストレージ18からの読み出し又は実行データのストレージ18への書き込みを制御装置22へ要求する。
上記ステップS56又は上記ステップS60において、制御装置22へ各種処理の要求信号が出力されると、制御装置22に対応するCPU12は、図6及び図7に示す制御処理ルーチンを実行する。
図6のステップS100において、CPU12は、制御装置22の受付部24として、上記ステップS56又は上記ステップS60で出力された要求信号を受け付ける。
ステップS101において、CPU12は、制御装置22の受付部24として、現在の車両状態を受け付ける。
ステップS102において、CPU12は、制御装置22の調停部26として、条件記憶部25から車両状態条件を読み出す。
ステップS103において、CPU12は、制御装置22の調停部26として、ステップS101で受け付けた車両状態が車両工場モードであるか否かを判定する。車両状態が車両工場モードである場合には、ステップS104へ進む。一方、車両状態が車両工場モードではない場合には、図7に示されるステップS110へ進む。
CPU12は、制御装置22の調停部26として、ステップS102で読み出された車両状態条件を参照し、ステップS104~ステップS108の順で各処理を実行する。
ステップS104において、CPU12は、制御装置22の調停部26として、アプリケーション60から出力された鍵データをストレージ18へ書き込む。
ステップS106において、CPU12は、制御装置22の調停部26として、アプリケーション60から出力された実行データをストレージ18へ書き込む。
ステップS108において、CPU12は、制御装置22の調停部26として、アプリケーション60からの要求に応じて、実行データをストレージ18から読み出す。
このように、車両が車両工場モードである場合には、車両に対して改良又は修理等がなされる場面であり、車両に対する各種の設定を円滑にする必要がある。このため、車両が車両工場モードである場合には、各種データのストレージ18への書き込み処理の優先度が高く設定される。特に、鍵データのストレージ18への書き込みの優先度が最も高く設定される。なお、ステップS104~ステップS108の各処理において示されているように、車両が車両工場モードである場合には、アプリケーション60の種類については考慮されない。
次に、図7のステップS110において、CPU12は、制御装置22の調停部26として、ステップS101で受け付けた車両状態が自動運転モードであるか否かを判定する。車両状態が自動運転モードである場合には、ステップS112へ進む。一方、車両状態が自動運転モードではない場合には、ステップS120へ進む。
ステップS112において、CPU12は、制御装置22の調停部26として、自動運転アプリケーション60Bからの要求に応じて実行データをストレージ18から読み出す。そして、CPU12は、制御装置22の調停部26として、読み出した実行データを自動運転アプリケーション60Bへ受け渡す。
ステップS114において、CPU12は、制御装置22の調停部26として、自動運転アプリケーション60Bから出力される実行データをストレージ18へ書き込む。
ステップS116において、CPU12は、制御装置22の調停部26として、制御系アプリケーション60Aからの要求に応じて実行データをストレージ18から読み出す。そして、CPU12は、制御装置22の調停部26として、読み出した実行データを制御系アプリケーション60Aへ受け渡す。
ステップS118において、CPU12は、制御装置22の調停部26として、制御系アプリケーション60Aから出力される実行データをストレージ18へ書き込む。
このように、車両状態が自動運転モードである場合には、自動運転アプリケーション60Bに関するデータに対する各種処理が優先される。
ステップS120において、CPU12は、制御装置22の調停部26として、制御系アプリケーション60Aからの要求に応じて実行データをストレージ18から読み出す。そして、CPU12は、制御装置22の調停部26として、読み出した実行データを制御系アプリケーション60Aへ受け渡す。
ステップS122において、CPU12は、制御装置22の調停部26として、制御系アプリケーション60Aから出力される実行データをストレージ18へ書き込む。
ステップS124において、CPU12は、制御装置22の調停部26として、自動運転アプリケーション60Bからの要求に応じて実行データをストレージ18から読み出す。そして、CPU12は、制御装置22の調停部26として、読み出した実行データを自動運転アプリケーション60Bへ受け渡す。
ステップS126において、CPU12は、制御装置22の調停部26として、自動運転アプリケーション60Bから出力される実行データをストレージ18へ書き込む。
このように、車両が自動運転モードではない場合には、自動運転アプリケーション60Bに関するデータに対する各種処理よりも、制御系アプリケーション60Aに関するデータに対する各種処理が優先される。
ステップS128において、CPU12は、制御装置22の調停部26として、マルチメディア系アプリケーション60Cからの要求に応じて実行データをストレージ18から読み出す。そして、CPU12は、制御装置22の調停部26として、読み出した実行データをマルチメディア系アプリケーション60Cへ受け渡す。
ステップS130において、CPU12は、制御装置22の調停部26として、マルチメディア系アプリケーション60Cから出力される実行データをストレージ18へ書き込む。
このように、車両状態が自動運転モードである場合及び車両状態が自動運転モードではない場合の何れにおいても、制御系アプリケーション60A及び自動運転アプリケーション60Bに関するデータに対する各種処理が、マルチメディア系アプリケーション60Cに関するデータに対する各種処理よりも優先される。
ステップS132において、CPU12は、制御装置22の調停部26として、アプリケーション60から出力された鍵データをストレージ18へ書き込む。
このように、車両状態が車両工場モードではない場合には、アプリケーション60に関するデータに対する各種処理が、鍵データのストレージ18への書き込み処理よりも優先される。
なお、図6及び図7に示される制御処理ルーチンにおいて、制御装置22は、ステップS100で受け付けた要求信号に応じて、ステップS104~ステップS108のうちの何れかの処理を省略する場合もある。また、制御装置22は、ステップS100で受け付けた要求信号に応じて、ステップS112~ステップS132のうちの何れかの処理を省略する場合もある。
例えば、要求信号に鍵データの更新要求が含まれていない場合には、ステップS104及びステップS132の各処理は省略される。また、例えば、要求信号にストレージ18へのアクセス要求が含まれていない場合には、ステップS106~ステップS108及びステップS112~ステップS130の各処理は省略される。
また、要求信号に特定のアプリケーション60に関するデータ処理の要求が含まれていない場合には、そのアプリケーション60に関する処理は省略される。例えば、要求信号に制御系アプリケーション60Aに関するデータ処理の要求が含まれていない場合には、ステップS116~ステップS118及びステップS120~ステップS122の各処理は省略される。
以上説明したように、実施形態に係る制御装置は、複数のアプリケーションから出力されたデータを受け付け、所定の条件に基づいて、複数のアプリケーションから出力された複数のデータをストレージへ記憶させる順序を調停する。これにより、複数のアプリケーションに関係する複数のデバイスが1つの記憶部へアクセスする場合であっても、デバイス間の競合の発生を抑制することができる。
また、上述した車両状態条件は自由に設定可能であるため、各処理の優先度を柔軟に変更することができる。また、本実施形態に係る制御装置によれば、要求性能要件に応じて各処理の優先度を柔軟に設定することもできる。
なお、上記の実施形態における各装置で行われる処理は、プログラムを実行することにより行われるソフトウェア処理として説明したが、ハードウェアで行う処理としてもよい。或いは、ソフトウェア及びハードウェアの双方を組み合わせた処理としてもよい。また、ROMに記憶されるプログラムは、各種記憶媒体に記憶して流通させるようにしてもよい。
さらに、本発明は、上記の実施形態に限定されるものではなく、上記の実施形態以外にも、その主旨を逸脱しない範囲内において種々変形して実施可能である。
本実施形態では、自動運転モードと車両工場モードとが車両状態として存在する場合を例に説明したが、これに限定されるものではない。車両が手動運転状態であることを表す手動運転モード、車両が故障している状態を表す故障モード、及び車載ソフトウェアがアップデートされている状態を表すOver-The-Air(OTA)モードについても各処理の優先度が設定されるようにしてもよい。
また、本実施形態では、複数のアプリケーションとして、制御系アプリケーション60A、自動運転アプリケーション60B、及びマルチメディア系アプリケーション60Cが存在する場合を例に説明したがこれに限定されるものではなく、他のアプリケーションを本実施形態に適用させるようにしてもよい。
10 制御システム
16 メモリ
18 ストレージ
20 仮想化機構
22 制御装置
24 受付部
25 条件記憶部
26 調停部
30 仮想マシン
60 アプリケーション
60A 制御系アプリケーション
60B 自動運転アプリケーション
60C マルチメディア系アプリケーション

Claims (12)

  1. 複数のアプリケーションから出力されたデータを受け付ける受付部と、
    所定の条件に基づいて、複数のアプリケーションから出力された複数の前記データを記憶部へ記憶させる順序を調停する調停部と、
    を備え
    前記所定の条件は、車両状態に応じて予め設定されている条件を表す車両状態条件であり、
    前記受付部は、前記車両状態を更に受け付け、
    前記調停部は、前記受付部によって受け付けられた前記車両状態と、前記車両状態条件とに基づいて、前記受付部によって受け付けられた複数の前記データを前記記憶部へ記憶させる順序を調停する、
    制御装置。
  2. 複数のアプリケーションには、自動運転制御に関するアプリケーションである自動運転アプリケーションと、前記自動運転制御とは異なる車両制御に関するアプリケーションである制御系アプリケーションと、が含まれ、
    前記車両状態には、車両が自動運転状態であることを表す自動運転モードが含まれ、
    前記調停部は、前記受付部により受け付けられた前記車両状態が前記自動運転モードである場合、前記自動運転アプリケーションから出力されたデータを、前記制御系アプリケーションから出力されたデータよりも優先させて前記記憶部へ記憶させるようにし、
    前記受付部により受け付けられた前記車両状態が前記自動運転モードではない場合、前記制御系アプリケーションから出力されたデータを、前記自動運転アプリケーションから出力されたデータよりも優先させて前記記憶部へ記憶させるようにして、複数の前記データを前記記憶部へ記憶させる順序を調停する、
    請求項に記載の制御装置。
  3. 複数のアプリケーションには、前記車両において利用されるマルチメディアに関するアプリケーションであるマルチメディア系アプリケーションが更に含まれ、
    前記調停部は、前記受付部により受け付けられた前記車両状態が前記自動運転モードである場合、前記自動運転アプリケーションから出力されたデータを、前記制御系アプリケーションから出力されるデータ及び前記マルチメディア系アプリケーションから出力されるデータよりも優先させて前記記憶部へ記憶させるようにし、
    前記受付部により受け付けられた前記車両状態が前記自動運転モードではない場合、前記制御系アプリケーションから出力されるデータ及び前記自動運転アプリケーションから出力されたデータを、前記マルチメディア系アプリケーションから出力されるデータよりも優先させて前記記憶部へ記憶させるようにして、複数の前記データを前記記憶部へ記憶させる順序を調停する、
    請求項に記載の制御装置。
  4. 前記車両状態には、前記車両が工場内に存在し、かつ前記車両が改良中又は修理中であることを表す車両工場モードが含まれ、
    前記調停部は、前記受付部により受け付けられた前記車両状態が前記車両工場モードである場合、前記制御系アプリケーションから出力されたデータを、前記自動運転アプリケーションから出力されたデータよりも優先させて前記記憶部へ記憶させるようにして、複数の前記データを前記記憶部へ記憶させる順序を調停する、
    請求項又は請求項に記載の制御装置。
  5. 前記調停部は、
    前記受付部により受け付けられた前記車両状態が前記車両工場モードである場合、前記アプリケーションから出力されたデータを前記記憶部へ記憶させる処理を、前記記憶部からデータを読み出す処理よりも優先させるようにし、
    前記受付部により受け付けられた前記車両状態が前記自動運転モードである場合、前記記憶部からデータを読み出す処理を、前記アプリケーションから出力されたデータを前記記憶部へ記憶させる処理よりも優先させるようにして、
    複数の前記データを前記記憶部へ記憶させる順序と前記記憶部からのデータの読み出しの順序とを更に調停する、
    請求項に記載の制御装置。
  6. 複数のアプリケーションから出力されたデータを受け付ける受付部と、
    所定の条件に基づいて、複数のアプリケーションから出力された複数の前記データを記憶部へ記憶させる順序を調停する調停部と、
    を備え
    複数のアプリケーションから出力される前記データには、前記アプリケーションから出力されるデータを暗号化するための鍵データ及び前記アプリケーションを実行する際に利用される実行データが含まれ、
    前記調停部は、前記所定の条件に基づいて、前記鍵データ及び前記実行データの何れを優先させて前記記憶部へ記憶させるのかを調停する、
    制御装置。
  7. 前記所定の条件は、車両状態に応じて予め設定されている条件を表す車両状態条件であり、
    前記受付部は、前記車両状態を更に受け付け、
    前記車両状態には、車両が自動運転状態であることを表す自動運転モードと、前記車両が工場内に存在しかつ前記車両が改良中又は修理中であることを表す車両工場モードとが含まれ、
    前記調停部は、
    前記受付部により受け付けられた前記車両状態が前記車両工場モードである場合、前記鍵データを前記記憶部へ記憶させる処理を、前記実行データを前記記憶部へ記憶させる処理よりも優先させるようにし、
    前記受付部により受け付けられた前記車両状態が前記自動運転モードである場合、前記記憶部から前記実行データを読み出す処理を、前記鍵データを前記記憶部へ記憶させる処理よりも優先させるようにして、
    複数の前記データを前記記憶部へ記憶させる順序と前記記憶部からの前記データの読み出しの順序とを更に調停する、
    請求項に記載の制御装置。
  8. 請求項1~請求項の何れか1項に記載の制御装置を備える車両。
  9. 複数のアプリケーションから出力されたデータを受け付け、
    所定の条件に基づいて、複数のアプリケーションから出力された複数の前記データを記憶部へ記憶させる順序を調停し、
    前記所定の条件は、車両状態に応じて予め設定されている条件を表す車両状態条件であり、
    前記車両状態を更に受け付け、
    前記調停を実行する際に、受け付けた前記車両状態と、前記車両状態条件とに基づいて、受け付けた複数の前記データを前記記憶部へ記憶させる順序を調停する、
    処理をコンピュータが実行する制御方法。
  10. 複数のアプリケーションから出力されたデータを受け付け、
    所定の条件に基づいて、複数のアプリケーションから出力された複数の前記データを記憶部へ記憶させる順序を調停し、
    前記所定の条件は、車両状態に応じて予め設定されている条件を表す車両状態条件であり、
    前記車両状態を更に受け付け、
    前記調停を実行する際に、受け付けた前記車両状態と、前記車両状態条件とに基づいて、受け付けた複数の前記データを前記記憶部へ記憶させる順序を調停する、
    処理をコンピュータに実行させるための制御プログラム。
  11. 複数のアプリケーションから出力されたデータを受け付け、
    所定の条件に基づいて、複数のアプリケーションから出力された複数の前記データを記憶部へ記憶させる順序を調停し、
    複数のアプリケーションから出力される前記データには、前記アプリケーションから出力されるデータを暗号化するための鍵データ及び前記アプリケーションを実行する際に利用される実行データが含まれ、
    前記調停を実行する際に、前記所定の条件に基づいて、前記鍵データ及び前記実行データの何れを優先させて前記記憶部へ記憶させるのかを調停する、
    処理をコンピュータが実行する制御方法。
  12. 複数のアプリケーションから出力されたデータを受け付け、
    所定の条件に基づいて、複数のアプリケーションから出力された複数の前記データを記憶部へ記憶させる順序を調停し、
    複数のアプリケーションから出力される前記データには、前記アプリケーションから出力されるデータを暗号化するための鍵データ及び前記アプリケーションを実行する際に利用される実行データが含まれ、
    前記調停を実行する際に、前記所定の条件に基づいて、前記鍵データ及び前記実行データの何れを優先させて前記記憶部へ記憶させるのかを調停する、
    処理をコンピュータに実行させるための制御プログラム。
JP2022022461A 2022-02-16 2022-02-16 制御装置、制御方法、制御プログラム、及び車両 Active JP7655244B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2022022461A JP7655244B2 (ja) 2022-02-16 2022-02-16 制御装置、制御方法、制御プログラム、及び車両
EP23155267.0A EP4231150A1 (en) 2022-02-16 2023-02-07 Control device, control method, recording medium in which control program is recorded, and vehicle
US18/165,418 US12158847B2 (en) 2022-02-16 2023-02-07 Control device, control method, recording medium in which control program is recorded, and vehicle
KR1020230017229A KR102824973B1 (ko) 2022-02-16 2023-02-09 제어 장치, 제어 방법, 제어 프로그램을 기록한 기록 매체 및 차량
CN202310088247.2A CN116610603A (zh) 2022-02-16 2023-02-09 控制装置、控制方法、非临时性的记录介质、以及车辆

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022022461A JP7655244B2 (ja) 2022-02-16 2022-02-16 制御装置、制御方法、制御プログラム、及び車両

Publications (2)

Publication Number Publication Date
JP2023119512A JP2023119512A (ja) 2023-08-28
JP7655244B2 true JP7655244B2 (ja) 2025-04-02

Family

ID=85199118

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022022461A Active JP7655244B2 (ja) 2022-02-16 2022-02-16 制御装置、制御方法、制御プログラム、及び車両

Country Status (5)

Country Link
US (1) US12158847B2 (ja)
EP (1) EP4231150A1 (ja)
JP (1) JP7655244B2 (ja)
KR (1) KR102824973B1 (ja)
CN (1) CN116610603A (ja)

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006281900A (ja) 2005-03-31 2006-10-19 Xanavi Informatics Corp 車載情報装置、およびアプリケーション実行方法
WO2008062512A1 (fr) 2006-11-21 2008-05-29 Fujitsu Limited Système multiprocesseur
US20090216917A1 (en) 2005-06-30 2009-08-27 Freescale Semiconductor, Inc Device and method for arbitrating between direct memory access task requests
JP2013161242A (ja) 2012-02-03 2013-08-19 Toyota Motor Corp 電子制御装置
US20160352889A1 (en) 2013-11-19 2016-12-01 Denso Corporation Electronic control apparatus
JP2018092577A (ja) 2016-11-25 2018-06-14 株式会社デンソー 並行処理装置及び並行処理プログラム
JP2019144910A (ja) 2018-02-21 2019-08-29 学校法人関西学院 リアルタイム処理装置及びその作製方法
WO2021144860A1 (ja) 2020-01-14 2021-07-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車両ログ保存装置、車両ログ送信装置、車両ログ収集システムおよび車両ログ保存方法
JP2022053096A (ja) 2020-09-24 2022-04-05 株式会社デンソー 車両用制御装置、車両用制御システム及びアクセス権管理プログラム
US20230066427A1 (en) 2021-08-27 2023-03-02 Microsoft Technology Licensing, Llc Distributed trusted platform module key management protection for roaming data

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6738072B1 (en) * 1998-11-09 2004-05-18 Broadcom Corporation Graphics display system with anti-flutter filtering and vertical scaling feature
US9928183B2 (en) * 2014-09-26 2018-03-27 Ampere Computing Llc Priority framework for a computing device
JP2019082856A (ja) * 2017-10-30 2019-05-30 日本精機株式会社 表示装置、表示制御方法、及びプログラム
US11507111B2 (en) * 2018-10-31 2022-11-22 Uber Technologies, Inc. Autonomous vehicle fleet management for improved computational resource usage
JP2021051420A (ja) 2019-09-24 2021-04-01 株式会社東芝 仮想化支援デバイス及び仮想化支援デバイスの制御方法
JP7613146B2 (ja) 2021-02-19 2025-01-15 トヨタ自動車株式会社 制御装置、方法、プログラム、及び車両
CN113485294A (zh) * 2021-07-05 2021-10-08 安徽江淮汽车集团股份有限公司 车辆的数据记录方法、装置、设备及存储介质

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006281900A (ja) 2005-03-31 2006-10-19 Xanavi Informatics Corp 車載情報装置、およびアプリケーション実行方法
US20090216917A1 (en) 2005-06-30 2009-08-27 Freescale Semiconductor, Inc Device and method for arbitrating between direct memory access task requests
WO2008062512A1 (fr) 2006-11-21 2008-05-29 Fujitsu Limited Système multiprocesseur
JP2013161242A (ja) 2012-02-03 2013-08-19 Toyota Motor Corp 電子制御装置
US20160352889A1 (en) 2013-11-19 2016-12-01 Denso Corporation Electronic control apparatus
JP2018092577A (ja) 2016-11-25 2018-06-14 株式会社デンソー 並行処理装置及び並行処理プログラム
JP2019144910A (ja) 2018-02-21 2019-08-29 学校法人関西学院 リアルタイム処理装置及びその作製方法
WO2021144860A1 (ja) 2020-01-14 2021-07-22 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ 車両ログ保存装置、車両ログ送信装置、車両ログ収集システムおよび車両ログ保存方法
JP2022053096A (ja) 2020-09-24 2022-04-05 株式会社デンソー 車両用制御装置、車両用制御システム及びアクセス権管理プログラム
US20230066427A1 (en) 2021-08-27 2023-03-02 Microsoft Technology Licensing, Llc Distributed trusted platform module key management protection for roaming data

Also Published As

Publication number Publication date
US20230259302A1 (en) 2023-08-17
US12158847B2 (en) 2024-12-03
KR20230123437A (ko) 2023-08-23
JP2023119512A (ja) 2023-08-28
CN116610603A (zh) 2023-08-18
EP4231150A1 (en) 2023-08-23
KR102824973B1 (ko) 2025-06-26

Similar Documents

Publication Publication Date Title
EP3616073B1 (en) Apparatus and method for controlling data acceleration
US7277982B2 (en) DRAM access command queuing structure
KR100268565B1 (ko) 다중 처리 시스템에서 타스크를 큐잉하기 위한 시스템 및 방법
US11042331B2 (en) Memory device managing data in accordance with command and non-transitory computer readable recording medium
US20100128874A1 (en) Encryption / decryption in parallelized data storage using media associated keys
US11669268B2 (en) Information processing apparatus and control method therefor
US10229077B2 (en) Method for data transfer between real-time tasks using a DMA memory controller
JP7655244B2 (ja) 制御装置、制御方法、制御プログラム、及び車両
US11269549B2 (en) Storage device and command processing method
US8135960B2 (en) Multiprocessor electronic circuit including a plurality of processors and electronic data processing system
US20130117533A1 (en) Coprocessor having task sequence control
CN109960567B (zh) 半导体设备
JP5644380B2 (ja) 情報処理装置
US12061804B2 (en) Storage system and data processing method
EP1895427B1 (en) Data processing system, data processing apparatus, and data processing method
US20160179719A1 (en) Computer system, a system management module and method of bidirectionally interchanging data
JP5289688B2 (ja) プロセッサシステム及びプロセッサシステムを動作させるオペレーティングシステムプログラムの処理方法
JP2009157731A (ja) 仮想計算機システムおよび仮想計算機システムの制御方法
CN110554902B (zh) 用于提供虚拟化技术的半导体器件
JP5087884B2 (ja) データ処理ユニット、およびこれを使用したデータ処理装置
KR20250061631A (ko) 반도체 장치 및 기입 방법
US9122424B1 (en) FIFO buffer clean-up
JP4750620B2 (ja) 階層型ストレージ装置のデータリード方法及びシステム
US20040230319A1 (en) Microcontroller device for complex processing procedures and corresponding interrupt management process
CN119046998A (zh) 处理系统、相关的集成电路、装置以及方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231219

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240820

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20241001

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20241125

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20250303

R150 Certificate of patent or registration of utility model

Ref document number: 7655244

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150