JP6438381B2 - 電子制御装置 - Google Patents
電子制御装置 Download PDFInfo
- Publication number
- JP6438381B2 JP6438381B2 JP2015243289A JP2015243289A JP6438381B2 JP 6438381 B2 JP6438381 B2 JP 6438381B2 JP 2015243289 A JP2015243289 A JP 2015243289A JP 2015243289 A JP2015243289 A JP 2015243289A JP 6438381 B2 JP6438381 B2 JP 6438381B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- unit
- storage unit
- core
- calculation
- 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
Links
Images
Landscapes
- Storage Device Security (AREA)
Description
図1は、本発明の実施形態1に係る電子制御装置100の構成を説明するブロック図である。電子制御装置100は、n個のプロセッサコア(以下単にコアと呼ぶ)を持つマルチコアマイコンとして構成されている。各コアはそれぞれ専用記憶領域を備え、自身が備える専用記憶領域に対してデータを読み書きすることができる。各コアは他のコアが備える専用記憶領域に対してアクセスすることができないように構成されている。電子制御装置100はさらに、共有記憶領域110を備える。共有記憶領域110は、各コアがいずれもアクセスすることができる。
第1コア140は、保存したいデータをデータ保存領域111のアドレス2に対して格納する。
第1コア140は、排他制御レジスタ120内のあらかじめ定めておいたレジスタ121〜124に対してデータ保存命令を書き込む。レジスタ121はデータ保存領域111がデータを格納するアドレスを記録するためのものであり、今回の例では「2」を格納する。レジスタ122は命令を実施するコアを指定するためのものであり、今回の例では「2」を格納する。レジスタ123はデータ保存領域152がデータを格納するアドレスを指定するためのものであり、今回の例では「3」を格納する。レジスタ124はデータ保存/データ読出のいずれを実施するかを指定するためのものであり、今回の例では「データ保存」を格納する。
第2コア150は、ポーリングを実施して定期的に排他制御レジスタ120を参照することにより、第2コア150に対してデータ保存/データ読み出しを実施するよう指示する命令が発行されているか否かを確認する。今回の例において第2コア150は、データ保存領域111のアドレス2に格納されているデータをデータ保存領域152のアドレス3に対して保存するよう指示する命令が、第1コア140から発行されているものと解釈する。
第3コア160は、ポーリングを実施して定期的に排他制御レジスタ120を参照することにより、第3コア160に対してデータ保存/データ読み出しを実施するよう指示する命令が発行されているか否かを確認する。今回の例では第2コア150が指定されているので、第3コア160は第1コア140からの命令を実施せずポーリングを続ける。
第2コア150は、ステップS102における解釈にしたがって、データ保存領域111のアドレス2に格納されているデータを、データ保存領域152のアドレス3に対して保存する。本実施形態1においては、排他制御レジスタ120が全て「0」にセットされている場合、第1コア140は命令を発行していないことを意味するものとする。そこで第2コア150は、データ保存が完了すると排他制御レジスタ120の内容をすべて「0」にセットする。ソフトウェア起動時の初期化処理において、例えば第1コア140は排他制御レジスタ120を全て「0」にセットしておくことを前提とする。以上のステップS100〜S104により、第1コア140が用いるデータを安全に第2コア専用記憶領域151へ保存することができる。
第1コア140は、排他制御レジスタ120内のあらかじめ定めておいたレジスタ121〜124に対してデータ読出命令を書き込む。今回の例では、レジスタ121に「2」を、レジスタ122に「2」を、レジスタ123に「3」を、レジスタ124に「データ読出」を、それぞれ設定する。
第2コア150は、ポーリングを実施して定期的に排他制御レジスタ120を参照することにより、第2コア150に対してデータ保存/データ読出を実施するよう指示する命令が発行されているか否かを確認する。今回の例において第2コア150は、データ保存領域152のアドレス3に格納されているデータをデータ保存領域111のアドレス2に対してコピーするよう指示する命令が、第1コア140から発行されているものと解釈する。
第3コア160は、ポーリングを実施して定期的に排他制御レジスタ120を参照することにより、第3コア160に対してデータ保存/データ読み出しを実施するよう指示する命令が発行されているか否かを確認する。今回の例では第2コア150が指定されているので、第3コア160は第1コア140からの命令を実施せずポーリングを続ける。
第2コア150は、ステップS201における解釈にしたがって、データ保存領域152のアドレス3に格納されているデータを、データ保存領域111のアドレス2に対してコピーする。第2コア150は、コピーが完了すると排他制御レジスタ120の内容をすべて「0」にセットする。
第1コア140は、排他制御レジスタ120の内容がすべて「0」になっていることを確認した後、データ保存領域111のアドレス2に格納されているデータを読み出す。以上のステップS200〜S204により、第1コア140は安全にデータを読み出すことができる。
本実施形態1に係る電子制御装置100は、共有記憶領域110を介して、コア専用記憶領域に対してデータを読み書きする。コア専用記憶領域に対してデータを格納することにより、複数のコアからのアクセスが競合することなく、データを安全に読み書きすることができる。
実施形態1では、各サブコアが排他制御レジスタ120をポーリングすることにより、第1コア140から命令が発行されているか否かを確認する動作例を説明した。本発明の実施形態2では、ポーリングに代えてコア間割り込みレジスタ130を利用することにより実施形態1と同様の動作を実現する方法について説明する。
第1コア140は、保存したいデータをデータ保存領域111のアドレス2に対して格納する。
第1コア140は、排他制御レジスタ120内のあらかじめ定めておいたレジスタ121〜124に対してデータ保存命令を書き込む。今回の例では、レジスタ121に「2」を、レジスタ122に「3」を、レジスタ123に「1」を、レジスタ124に「データ保存」を、それぞれ設定する。
第1コア140は、ステップS301においてレジスタ122により指定したコアに対して、コア間割り込みレジスタ130を用いて割り込みを発生させる。今回の例では第3コア160に対して割り込みを発生させたいので、コア間割り込みレジスタ133に対して所定のデータを書き込むことにより、割り込みを発生させる。
第3コア160は、ステップS302の割り込み要求にしたがって割り込み処理を実施し、排他制御レジスタ120を参照する。第3コア160は、データ保存領域111のアドレス2に格納されているデータをデータ保存領域162のアドレス1に対して保存するよう指示する命令が、第1コア140から発行されているものと解釈する。
第3コア160は、ステップS303における解釈にしたがって、データ保存領域111のアドレス2に格納されているデータを、データ保存領域162のアドレス1に対して格納する。
第3コア160は、第1コア140に対してコア間割り込みレジスタ131を用いて割り込み要求を発行することにより、データ保存が完了した旨を第1コア140に対して通知する。
第1コア140は、ステップS305の割り込み要求にしたがって、割り込み処理を実施する(すなわちデータ保存処理を完了する)。以上のステップS300〜S306により、第1コア140が用いるデータを安全に第3コア専用記憶領域161へ保存することができる。
第1コア140は、排他制御レジスタ120内のあらかじめ定めておいたレジスタ121〜124に対してデータ読出命令を書き込む。今回の例では、レジスタ121に「2」を、レジスタ122に「3」を、レジスタ123に「1」を、レジスタ124に「データ読出」を、それぞれ設定する。
第1コア140は、ステップS401においてレジスタ122により指定したコアに対して、コア間割り込みレジスタ130を用いて割り込みを発生させる。今回の例では第3コア160に対して割り込みを発生させたいので、コア間割り込みレジスタ133に対して所定のデータを書き込むことにより、割り込みを発生させる。
第3コア160は、ステップS401の割り込み要求にしたがって割り込み処理を実施し、排他制御レジスタ120を参照する。第3コア160は、データ保存領域162のアドレス1に格納されているデータをデータ保存領域111のアドレス2に対してコピーするよう指示する命令が、第1コア140から発行されていると解釈する。
第3コア160は、ステップS402における解釈にしたがって、データ保存領域162のアドレス1に格納されているデータを、データ保存領域111のアドレス2に対してコピーする。
第3コア160は、第1コア140に対してコア間割り込みレジスタ131を用いて割り込み要求を発行することにより、データコピーが完了した旨を第1コア140に対して通知する。
第1コア140は、ステップS404の割り込み要求にしたがって、割り込み処理(S406)を実施する。
第1コア140は、ステップS400において指定したデータ保存領域111のアドレス2よりデータを読み出す。以上のステップS400〜S406により、第1コア140は安全にデータを読み出すことができる。
本実施形態2に係る電子制御装置100は、コア間割り込みレジスタ130を用いて、データ保存命令/データ読出命令や格納先アドレスについてコア間で通知する。これにより、実施形態1と同様にデータ保存/データ読出を安全に実施することができる。また各コアは排他制御レジスタ120をポーリングする必要がなくなるので、処理負荷を抑えることができる。
本発明は上記実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換える事が可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について他の構成の追加・削除・置換をすることができる。
Claims (5)
- 自動車の動作を電子的に制御する電子制御装置であって、
前記自動車の動作を制御するための制御演算を実施する第1および第2演算部、
前記第1および第2演算部の間で共用してデータを格納する共用記憶部、
前記第1演算部のみがデータを読み書きすることができる第1専用記憶部、
前記第2演算部のみがデータを読み書きすることができる第2専用記憶部、
を備え、
前記第1演算部は、前記第2専用記憶部が格納すべきデータを前記共用記憶部に対して書き込むとともに、前記共用記憶部上における前記データのアドレスを読取指定アドレスとして前記第2演算部に対して通知し、
前記第2演算部は、前記データを前記共用記憶部に対して書き込んだ旨の通知を受け取ると、前記第1演算部から通知された前記読取指定アドレスから前記データを読み取るとともに、その読み取ったデータを前記第2専用記憶部に対して書き込み、
前記第1演算部は、前記第2専用記憶部が格納している前記データを読み取ることを要求する読出要求を前記第2演算部に対して通知するとともに、前記第2専用記憶部が格納している前記データを格納すべき前記共用記憶部上のアドレスを書込指定アドレスとして前記第2演算部に対して通知し、
前記第2演算部は、前記読出要求を取得すると、前記第2専用記憶部が格納している前記データを前記第1演算部から通知された前記書込指定アドレスに対して書き込むとともに、その旨を前記第1演算部に対して通知し、
前記第1演算部は、前記第2演算部から前記共用記憶部に対して前記データを書き込んだ旨の通知を受け取ると、前記第2演算部に対して通知した前記書込指定アドレスから前記データを読み取る
ことを特徴とする電子制御装置。 - 自動車の動作を電子的に制御する電子制御装置であって、
前記自動車の動作を制御するための制御演算を実施する第1および第2演算部、
前記第1および第2演算部の間で共用してデータを格納する共用記憶部、
前記第1演算部のみがデータを読み書きすることができる第1専用記憶部、
前記第2演算部のみがデータを読み書きすることができる第2専用記憶部、
を備え、
前記第1演算部は、前記第2専用記憶部が格納すべきデータを前記共用記憶部に対して書き込むとともに、前記共用記憶部上における前記データのアドレスを読取指定アドレスとして前記第2演算部に対して通知し、
前記第2演算部は、前記データを前記共用記憶部に対して書き込んだ旨の通知を受け取ると、前記第1演算部から通知された前記読取指定アドレスから前記データを読み取るとともに、その読み取ったデータを前記第2専用記憶部に対して書き込み、
前記第1演算部は、前記データを格納すべき前記第2専用記憶部上のアドレスを前記第2演算部に対して通知し、
前記第2演算部は、前記第1演算部から通知された前記第2専用記憶部上のアドレスに対して前記データを書き込む
ことを特徴とする電子制御装置。 - 自動車の動作を電子的に制御する電子制御装置であって、
前記自動車の動作を制御するための制御演算を実施する第1および第2演算部、
前記第1および第2演算部の間で共用してデータを格納する共用記憶部、
前記第1演算部のみがデータを読み書きすることができる第1専用記憶部、
前記第2演算部のみがデータを読み書きすることができる第2専用記憶部、
を備え、
前記第1演算部は、前記第2専用記憶部が格納すべきデータを前記共用記憶部に対して書き込むとともに、前記共用記憶部上における前記データのアドレスを読取指定アドレスとして前記第2演算部に対して通知し、
前記第2演算部は、前記データを前記共用記憶部に対して書き込んだ旨の通知を受け取ると、前記第1演算部から通知された前記読取指定アドレスから前記データを読み取るとともに、その読み取ったデータを前記第2専用記憶部に対して書き込み、
前記電子制御装置はさらに、前記第1演算部と前記第2演算部のいずれか一方がデータを書き込んでいる間は他方がデータを書き込むことができない排他制御レジスタを備え、
前記第1演算部は、前記共用記憶部上における前記データのアドレスを前記排他制御レジスタに対して書き込むことによりそのアドレスを前記第2演算部に対して通知する
ことを特徴とする電子制御装置。 - 前記第2演算部は、前記排他制御レジスタをポーリングすることにより、前記データを前記共用記憶部に対して書き込んだ旨の通知を前記第1演算部から受け取る
ことを特徴とする請求項3記載の電子制御装置。 - 前記電子制御装置はさらに、所定の値を書き込むことによって前記第1および第2演算部それぞれに対して個別の割り込みを発生させる割込制御レジスタを備え、
前記第1演算部は、前記共用記憶部上における前記データのアドレスを前記排他制御レジスタに対して書き込むとともに、前記割込制御レジスタに対して前記第2演算部における割り込みを発生させる値を書き込むことにより、前記第2演算部に対して前記共用記憶部上に前記データを書き込んだ旨を通知し、
前記第2演算部は、前記割込制御レジスタを介して割り込みが発生すると、前記第1演算部から通知された前記共用記憶部上におけるアドレスから前記データを読み取る
ことを特徴とする請求項3記載の電子制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015243289A JP6438381B2 (ja) | 2015-12-14 | 2015-12-14 | 電子制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015243289A JP6438381B2 (ja) | 2015-12-14 | 2015-12-14 | 電子制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017111491A JP2017111491A (ja) | 2017-06-22 |
JP6438381B2 true JP6438381B2 (ja) | 2018-12-12 |
Family
ID=59080687
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015243289A Active JP6438381B2 (ja) | 2015-12-14 | 2015-12-14 | 電子制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP6438381B2 (ja) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08241186A (ja) * | 1995-03-07 | 1996-09-17 | Fujitsu Ltd | バッファメモリ管理ユニット及びバッファメモリ管理方法 |
JP3666286B2 (ja) * | 1999-02-08 | 2005-06-29 | 株式会社デンソー | 自動車用制御装置 |
JP5213485B2 (ja) * | 2008-03-12 | 2013-06-19 | 株式会社トヨタIt開発センター | マルチプロセッサシステムにおけるデータ同期方法及びマルチプロセッサシステム |
JP4920015B2 (ja) * | 2008-09-03 | 2012-04-18 | 日立オートモティブシステムズ株式会社 | 分散制御用制御ソフトウェアおよび電子制御装置 |
WO2015019421A1 (ja) * | 2013-08-06 | 2015-02-12 | 株式会社アイ・エル・シー | 組み込みソフトウェアのプログラム開発方法、プログラミング装置および組み込み機器 |
-
2015
- 2015-12-14 JP JP2015243289A patent/JP6438381B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JP2017111491A (ja) | 2017-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5981845B2 (ja) | 仮想計算機システム、仮想計算機制御方法、仮想計算機制御プログラム、及び半導体集積回路 | |
US9690704B2 (en) | Paging in secure enclaves | |
US8583960B2 (en) | Processor device and program | |
JP5582971B2 (ja) | メモリ保護方法および情報処理装置 | |
JP5225003B2 (ja) | メモリ保護方法、情報処理装置、メモリ保護プログラム及びメモリ保護プログラムを記録した記録媒体 | |
US9740636B2 (en) | Information processing apparatus | |
JP2011170477A (ja) | ハイパーバイザ及びサーバ装置 | |
JP5338435B2 (ja) | 情報処理プログラム、情報処理装置および情報処理方法 | |
WO2010097925A1 (ja) | 情報処理装置 | |
JP2013161299A (ja) | 情報処理装置、インタフェースアクセス方法 | |
JP4656347B2 (ja) | コンピュータ・システム | |
JP4533713B2 (ja) | 情報処理装置およびデータ転送制御方法 | |
JP2007334432A (ja) | 情報処理装置及びそのアクセス制御方法 | |
JP6679419B2 (ja) | メモリ保護ユニット、メモリ管理ユニット、及びマイクロコントローラ | |
JP6438381B2 (ja) | 電子制御装置 | |
JP6318073B2 (ja) | 電子機器 | |
JP2005209178A (ja) | メモリ保護装置、メモリ保護方法及びメモリ保護プログラム | |
WO2021192098A1 (ja) | 情報処理装置、情報処理方法及び情報処理プログラム | |
JP5765311B2 (ja) | マイコン | |
US20090037668A1 (en) | Protected portion of partition memory for computer code | |
US11119931B1 (en) | Data pipeline for microkernel operating system | |
JP2010122787A (ja) | 半導体集積回路及びレジスタアドレス制御装置 | |
TWI467374B (zh) | 運算系統及用於分割記憶體之受保護部分之方法 | |
JP2016009275A (ja) | 情報処理装置、情報処理方法、およびコンピュータプログラム | |
JP5561147B2 (ja) | 仮想記憶管理装置、仮想記憶管理方法および仮想記憶管理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180123 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20180803 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181002 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20181026 |
|
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: 20181106 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20181116 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6438381 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |