JP5915624B2 - 電子制御装置 - Google Patents
電子制御装置 Download PDFInfo
- Publication number
- JP5915624B2 JP5915624B2 JP2013235881A JP2013235881A JP5915624B2 JP 5915624 B2 JP5915624 B2 JP 5915624B2 JP 2013235881 A JP2013235881 A JP 2013235881A JP 2013235881 A JP2013235881 A JP 2013235881A JP 5915624 B2 JP5915624 B2 JP 5915624B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- address
- cpu
- storage unit
- constant
- 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
- 238000000034 method Methods 0.000 claims description 74
- 230000015654 memory Effects 0.000 description 105
- 101001069810 Homo sapiens Psoriasis susceptibility 1 candidate gene 2 protein Proteins 0.000 description 6
- 102100034249 Psoriasis susceptibility 1 candidate gene 2 protein Human genes 0.000 description 6
- 101100314273 Arabidopsis thaliana TOR1 gene Proteins 0.000 description 5
- 239000000284 extract Substances 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
- G06F15/163—Interprocessor communication
- G06F15/167—Interprocessor communication using a common memory, e.g. mailbox
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
- G06F9/4484—Executing subprograms
- G06F9/4486—Formation of subprogram jump address
Description
本実施形態の電子制御装置(Electronic Control Unit)1(以下、ECU1という)は、車両に搭載され、車両のエンジン(不図示)の制御を行う。
マイコン2は、エンジンを制御するための処理を実行し、車両に取り付けられた電気負荷(インジェクタ等)を制御するための制御信号を出力する。
CPU10,20は、フラッシュROM30に記憶されたプログラムに基づいて各種処理を実行する。フラッシュROM30は、CPU10,20によって実行されるプログラムを記憶するための不揮発性メモリである。RAM40は、CPU10,20の演算結果等を一時記憶するための揮発性メモリである。
データ用内蔵メモリ14,24はそれぞれ、CPU10,20がプログラムを実行するために使用するデータを記憶するための揮発性メモリである。
まず、アドレス設定処理の手順を説明する。アドレス設定処理は、ECU1が起動した直後に1回のみ実行される処理である。
このためS110では、当該プログラムアクセス処理において予め設定されているフラッシュROM内アドレスから下位アドレスを抽出することにより、オフセットアドレスを取得する。
次に、変数アクセス処理の手順を説明する。変数アクセス処理は、OS変数データ毎に設けられている。そして変数アクセス処理は、対応するOS変数データをOSプログラムPGが読み出す場合、または、対応するOS変数データにOSプログラムPGが書き込む場合に実行される。
次にS320にて、専用レジスタSPR2に格納されている変数用ベースアドレスを取得する。さらにS330にて、取得したオフセットアドレスと変数用ベースアドレスとを加算することにより絶対アドレスを算出する。
図6に示すように、フラッシュROM30には、OSプログラムPG、OS定数データ群C1およびOS定数データ群C2が記憶される。なお、OSプログラムPGの記憶領域として0x00100000からの論理アドレスが割り当てられている。また、OS定数データ群C1の記憶領域として0x00500000からの論理アドレスが割り当てられている。また、OS定数データ群C2の記憶領域として0x00700000からの論理アドレスが割り当てられている。
そして、CPU10においてOSプログラムPGがアプリケーションプログラミングインタフェースActivateTask()をサブルーチンコールする場合に、アプリケーションプログラミングインタフェースActivateTask()に対応するプログラムアクセス処理が実行される。
この定数アクセス処理には、OS定数データQueueMaxの上記フラッシュROM内アドレスが予め設定されている。このフラッシュROM内アドレスは、0x00502000であるため、CPU10の演算装置11は、0x00502000の下位アドレスを抽出し、オフセットアドレスとして0x00002000を取得する(S210)。
そして、CPU20においてOSプログラムPGがアプリケーションプログラミングインタフェースActivateTask()をサブルーチンコールする場合に、アプリケーションプログラミングインタフェースActivateTask()に対応するプログラムアクセス処理が実行される。
このように構成されたECU1は、CPU10と、CPU20と、CPU10,20の外部に設けられ、CPU10,20の両方が実行するOSプログラムPGを記憶するフラッシュROM30とを備える。
プログラム用内蔵メモリ13は、フラッシュROM30とは異なる論理アドレスが割り当てられ、フラッシュROM30からコピーされるOSプログラムPGを記憶する。また演算装置11は、プログラム用内蔵メモリ13に記憶されているOSプログラムPGへアクセスすることにより処理を実行する。そしてCPU10では、プログラム用内蔵メモリ13に記憶されているOSプログラムPGから読み込む命令に基づいて、プログラム用内蔵メモリ13に記憶されているOSプログラムPGの内部に記載されているアプリケーションプログラミングインタフェースにアクセスする場合において、OSプログラムPG内で基準となるアドレスとして予め設定された先頭アドレス(本実施形態では0x00100000)を基準としてOSプログラムPG内でアプリケーションプログラミングインタフェースへアクセスするためのオフセットアドレス(以下、プログラムオフセットアドレスともいう)と、プログラム用内蔵メモリ13内においてOSプログラムPGの先頭アドレスに対応する論理アドレスを示すプログラム用ベースアドレス(本実施形態では0x10000000)とに基づき、アプリケーションプログラミングインタフェースへアクセスする論理アドレスを決定する(S130)。さらにCPU10では、演算装置11に対して、決定された論理アドレスへアクセスさせる(S140)。
例えば上記実施形態では、マイコン2が2つのCPUを備えるものを示した。しかし、マイコン2が3つ以上のCPUを備え、3つ以上のCPUが、それぞれの内蔵メモリに記憶されているOSプログラムPGを実行するようにしてもよい。
また上記実施形態では、プログラム用ベースアドレスが、プログラム用内蔵メモリ13,23に記憶されているOSプログラムPGの先頭アドレスであるものを示した。しかし、プログラム用ベースアドレスはこれに限定されるものではなく、例えば、OSプログラムPGの末尾アドレスであってもよい。
Claims (9)
- 第1CPU(10)と、
第2CPU(20)と、
前記第1CPUおよび前記第2CPUの外部に設けられ、前記第1CPUおよび前記第2CPUの両方が実行する共通プログラムを記憶する共通プログラム記憶部(30)とを備え、
前記第1CPUは、
前記共通プログラム記憶部とは異なる論理アドレスが割り当てられ、前記共通プログラム記憶部からコピーされる前記共通プログラムを記憶する第1プログラム記憶部(13)と、
前記第1プログラム記憶部に記憶されている前記共通プログラムへアクセスすることにより処理を実行する第1処理実行部(11)と、
前記第1プログラム記憶部に記憶されている前記共通プログラムから読み込む命令に基づいて、前記第1プログラム記憶部に記憶されている前記共通プログラムの内部に記載されている内部プログラムにアクセスする場合において、前記共通プログラム内で基準となるアドレスとして予め設定された共通プログラム内基準アドレスを基準として前記共通プログラム内で前記内部プログラムへアクセスするためのオフセットアドレスを示すプログラムオフセットアドレスと、前記第1プログラム記憶部内において前記共通プログラム内基準アドレスに対応する論理アドレスを示す第1プログラム基準アドレスとに基づき、前記内部プログラムへアクセスする論理アドレスを決定する第1プログラムアドレス決定手段(S130)と、
前記第1処理実行部に対して、前記第1プログラムアドレス決定手段により決定された論理アドレスへアクセスさせる第1プログラムアクセス手段(S140)とを備え、
前記第2CPUは、
前記共通プログラム記憶部および前記第1プログラム記憶部とは異なる論理アドレスが割り当てられ、前記共通プログラム記憶部からコピーされる前記共通プログラムを記憶する第2プログラム記憶部(23)と、
前記第2プログラム記憶部に記憶されている前記共通プログラムへアクセスすることにより処理を実行する第2処理実行部(21)と、
前記第2プログラム記憶部に記憶されている前記共通プログラムから読み込む命令に基づいて、前記第2プログラム記憶部に記憶されている前記共通プログラムの内部に記載されている内部プログラムにアクセスする場合において、前記プログラムオフセットアドレスと、前記第2プログラム記憶部内において前記共通プログラム内基準アドレスに対応する論理アドレスを示す第2プログラム基準アドレスとに基づき、前記内部プログラムへアクセスする論理アドレスを決定する第2プログラムアドレス決定手段(S130)と、
前記第2処理実行部に対して、前記第2プログラムアドレス決定手段により決定された論理アドレスへアクセスさせる第2プログラムアクセス手段(S140)とを備える
ことを特徴とする電子制御装置(1)。 - 前記共通プログラム内基準アドレスは、前記共通プログラム記憶部に記憶されている前記共通プログラムにおける先頭の論理アドレスを示す
ことを特徴とする請求項1に記載の電子制御装置。 - 前記第1CPUおよび前記第2CPUを識別するためのCPU識別情報が、前記第1CPUおよび前記第2CPUのそれぞれに設定され、
前記第1CPUおよび前記第2CPUがそれぞれ、前記第1プログラム基準アドレスおよび前記第2プログラム基準アドレスに対応付けられているプログラム対応関係記憶部(AT)を備え、
前記第1CPUは、
前記第1CPUの前記CPU識別情報と、前記プログラム対応関係記憶部とを参照することにより、前記第1CPUに対して前記第1プログラム基準アドレスを設定する第1プログラム設定手段(S10,S20,S30)を備え、
前記第2CPUは、
前記第2CPUの前記CPU識別情報と、前記プログラム対応関係記憶部とを参照することにより、前記第2CPUに対して前記第2プログラム基準アドレスを設定する第2プログラム設定手段(S10,S20,S30)を備える
ことを特徴とする請求項1または請求項2に記載の電子制御装置。 - 前記第1CPUが前記共通プログラムを実行するために使用される複数の第1定数データを有する第1定数データ群(C1)と、前記第2CPUが前記共通プログラムを実行するために使用される複数の第2定数データを有する第2定数データ群(C2)とを記憶する共通定数記憶部(30)を備え、
前記第1CPUは、
前記共通プログラム記憶部、前記第1プログラム記憶部および前記第2プログラム記憶部とは異なる論理アドレスが割り当てられ、前記共通定数記憶部からコピーされる前記第1定数データ群を記憶する第1定数記憶部(14)と、
前記第1プログラム記憶部に記憶されている前記共通プログラムから読み込む命令に基づいて、前記第1定数記憶部に記憶されている前記第1定数データ群の前記第1定数データにアクセスする場合において、前記第1定数データ群内で基準となるアドレスとして予め設定された第1定数群内基準アドレスを基準として前記第1定数データ群内で前記第1定数データへアクセスするためのオフセットアドレスを示す第1定数オフセットアドレスと、前記第1定数記憶部内において前記第1定数群内基準アドレスに対応する論理アドレスを示す第1定数基準アドレスとに基づき、前記第1定数データへアクセスする論理アドレスを決定する第1定数アドレス決定手段(S230)と、
前記第1処理実行部に対して、前記第1定数アドレス決定手段により決定された論理アドレスへアクセスさせる第1定数アクセス手段(S240)とを備え、
前記第2CPUは、
前記共通プログラム記憶部、前記第1プログラム記憶部、前記第2プログラム記憶部および前記第1定数記憶部とは異なる論理アドレスが割り当てられ、前記共通定数記憶部からコピーされる前記第2定数データ群を記憶する第2定数記憶部(24)と、
前記第2プログラム記憶部に記憶されている前記共通プログラムから読み込む命令に基づいて、前記第2定数記憶部に記憶されている前記第2定数データ群の前記第2定数データにアクセスする場合において、前記第2定数データ群内で基準となるアドレスとして予め設定された第2定数群内基準アドレスを基準として前記第2定数データ群内で前記第2定数データへアクセスするためのオフセットアドレスを示す第2定数オフセットアドレスと、前記第2定数記憶部内において前記第2定数群内基準アドレスに対応する論理アドレスを示す第2定数基準アドレスとに基づき、前記第2定数データへアクセスする論理アドレスを決定する第2定数アドレス決定手段(S230)と、
前記第2処理実行部に対して、前記第2定数アドレス決定手段により決定された論理アドレスへアクセスさせる第2定数アクセス手段(S240)とを備える
ことを特徴とする請求項1〜請求項3の何れか1項に記載の電子制御装置。 - 前記第1定数群内基準アドレスは、前記共通定数記憶部に記憶されている前記第1定数データ群における先頭の論理アドレスを示し、
前記第2定数群内基準アドレスは、前記共通定数記憶部に記憶されている前記第2定数データ群における先頭の論理アドレスを示す
ことを特徴とする請求項4に記載の電子制御装置。 - 前記第1CPUおよび前記第2CPUを識別するためのCPU識別情報が、前記第1CPUおよび前記第2CPUのそれぞれに設定され、
前記第1CPUおよび前記第2CPUがそれぞれ、前記第1定数基準アドレスおよび前記第2定数基準アドレスに対応付けられている定数対応関係記憶部(AT)を備え、
前記第1CPUは、
前記第1CPUの前記CPU識別情報と、前記定数対応関係記憶部とを参照することにより、前記第1CPUに対して前記第1定数基準アドレスを設定する第1定数設定手段(S10,S20,S40)を備え、
前記第2CPUは、
前記第2CPUの前記CPU識別情報と、前記定数対応関係記憶部とを参照することにより、前記第2CPUに対して前記第2定数基準アドレスを設定する第2定数設定手段(S10,S20,S40)を備える
ことを特徴とする請求項4または請求項5に記載の電子制御装置。 - 前記第1CPUが前記共通プログラムを実行するために使用される複数の第1変数データを有する第1変数データ群(V1)と、前記第2CPUが前記共通プログラムを実行するために使用される複数の第2変数データを有する第2変数データ群(V2)とを記憶する共通変数記憶部(40)を備え、
前記第1CPUは、
前記共通プログラム記憶部、前記第1プログラム記憶部および前記第2プログラム記憶部とは異なる論理アドレスが割り当てられ、前記共通変数記憶部からコピーされる前記第1変数データ群を記憶する第1変数記憶部(14)と、
前記第1プログラム記憶部に記憶されている前記共通プログラムから読み込む命令に基づいて、前記第1変数記憶部に記憶されている前記第1変数データ群の前記第1変数データにアクセスする場合において、前記第1変数データ群内で基準となるアドレスとして予め設定された第1変数群内基準アドレスを基準として前記第1変数データ群内で前記第1変数データへアクセスするためのオフセットアドレスを示す第1変数オフセットアドレスと、前記第1変数記憶部内において前記第1変数群内基準アドレスに対応する論理アドレスを示す第1変数基準アドレスとに基づき、前記第1変数データへアクセスする論理アドレスを決定する第1変数アドレス決定手段(S330)と、
前記第1処理実行部に対して、前記第1変数アドレス決定手段により決定された論理アドレスへアクセスさせる第1変数アクセス手段(S340)とを備え、
前記第2CPUは、
前記共通プログラム記憶部、前記第1プログラム記憶部、前記第2プログラム記憶部および前記第1変数記憶部とは異なる論理アドレスが割り当てられ、前記共通変数記憶部からコピーされる前記第2変数データ群を記憶する第2変数記憶部(24)と、
前記第2プログラム記憶部に記憶されている前記共通プログラムから読み込む命令に基づいて、前記第2変数記憶部に記憶されている前記第2変数データ群の前記第2変数データにアクセスする場合において、前記第2変数データ群内で基準となるアドレスとして予め設定された第2変数群内基準アドレスを基準として前記第2変数データ群内で前記第2変数データへアクセスするためのオフセットアドレスを示す第2変数オフセットアドレスと、前記第2変数記憶部内において前記第2変数群内基準アドレスに対応する論理アドレスを示す第2変数基準アドレスとに基づき、前記第2変数データへアクセスする論理アドレスを決定する第2変数アドレス決定手段(S330)と、
前記第2処理実行部に対して、前記第2変数アドレス決定手段により決定された論理アドレスへアクセスさせる第2変数アクセス手段(S340)とを備える
ことを特徴とする請求項1〜請求項6の何れか1項に記載の電子制御装置。 - 前記第1変数群内基準アドレスは、前記共通変数記憶部に記憶されている前記第1変数データ群における先頭の論理アドレスを示し、
前記第2変数群内基準アドレスは、前記共通変数記憶部に記憶されている前記第2変数データ群における先頭の論理アドレスを示す
ことを特徴とする請求項7に記載の電子制御装置。 - 前記第1CPUおよび前記第2CPUを識別するためのCPU識別情報が、前記第1CPUおよび前記第2CPUのそれぞれに設定され、
前記第1CPUおよび前記第2CPUがそれぞれ、前記第1変数基準アドレスおよび前記第2変数基準アドレスに対応付けられている変数対応関係記憶部(AT)を備え、
前記第1CPUは、
前記第1CPUの前記CPU識別情報と、前記変数対応関係記憶部とを参照することにより、前記第1CPUに対して前記第1変数基準アドレスを設定する第1変数設定手段(S10,S20,S50)を備え、
前記第2CPUは、
前記第2CPUの前記CPU識別情報と、前記変数対応関係記憶部とを参照することにより、前記第2CPUに対して前記第2変数基準アドレスを設定する第2変数設定手段(S10,S20,S50)を備える
ことを特徴とする請求項7または請求項8に記載の電子制御装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013235881A JP5915624B2 (ja) | 2013-11-14 | 2013-11-14 | 電子制御装置 |
DE102014223148.5A DE102014223148A1 (de) | 2013-11-14 | 2014-11-13 | Elektronische Steuervorrichtung |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013235881A JP5915624B2 (ja) | 2013-11-14 | 2013-11-14 | 電子制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015095218A JP2015095218A (ja) | 2015-05-18 |
JP5915624B2 true JP5915624B2 (ja) | 2016-05-11 |
Family
ID=53184538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013235881A Active JP5915624B2 (ja) | 2013-11-14 | 2013-11-14 | 電子制御装置 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5915624B2 (ja) |
DE (1) | DE102014223148A1 (ja) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01243146A (ja) * | 1988-03-24 | 1989-09-27 | Hitachi Ltd | 共用メモリアクセス方式 |
JPH07219779A (ja) * | 1994-02-02 | 1995-08-18 | Fuji Electric Co Ltd | 計算機システムの立ち上げ方法 |
US7689784B2 (en) * | 2005-03-18 | 2010-03-30 | Sony Computer Entertainment Inc. | Methods and apparatus for dynamic linking program overlay |
JP2007034910A (ja) | 2005-07-29 | 2007-02-08 | Fujitsu Ten Ltd | マルチcpuシステム及びスケジューラ |
JP2008097134A (ja) * | 2006-10-06 | 2008-04-24 | Oki Electric Ind Co Ltd | アドレスオフセット制御回路 |
JP5224498B2 (ja) * | 2007-02-28 | 2013-07-03 | 学校法人早稲田大学 | メモリ管理方法、情報処理装置、プログラムの作成方法及びプログラム |
JP4869301B2 (ja) * | 2008-08-22 | 2012-02-08 | 三菱電機株式会社 | 画像処理装置 |
-
2013
- 2013-11-14 JP JP2013235881A patent/JP5915624B2/ja active Active
-
2014
- 2014-11-13 DE DE102014223148.5A patent/DE102014223148A1/de active Pending
Also Published As
Publication number | Publication date |
---|---|
DE102014223148A1 (de) | 2015-05-21 |
JP2015095218A (ja) | 2015-05-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9465750B2 (en) | Memory protection circuit, method and processing unit utilizing memory access information register to selectively allow access to memory areas by virtual machines | |
US8234476B2 (en) | Information processing apparatus and method of updating stack pointer | |
KR20150129692A (ko) | 멀티 부트 디바이스들용 부트 시퀀싱 | |
TW201706856A (zh) | 具有增強指令集之中央處理單元 | |
JP4874165B2 (ja) | マルチプロセッサシステム及びマルチプロセッサシステムにおけるアクセス権設定方法 | |
US20180113816A1 (en) | Memory protecting unit and method for protecting a memory address space | |
JP2009199414A (ja) | マイクロコンピュータ | |
JP2021503126A5 (ja) | ||
KR20150018441A (ko) | 반도체 집적 회로 장치 | |
JP5915624B2 (ja) | 電子制御装置 | |
JP4522799B2 (ja) | 半導体回路装置及び暴走検出方法 | |
EP3246821B1 (en) | Semiconductor device and its memory access control method | |
JP5644380B2 (ja) | 情報処理装置 | |
CN108229201B (zh) | 数据处理设备和访问控制方法 | |
KR102441992B1 (ko) | 분리 메모리 관리 방법 및 장치 | |
JP2017107394A (ja) | 車両用制御装置 | |
JP2017204083A (ja) | メモリ保護システム | |
JP6596455B2 (ja) | 自動車用電子制御装置 | |
JP6555184B2 (ja) | 車載制御装置 | |
JP5181907B2 (ja) | 画像処理装置、画像処理制御方法、画像処理制御プログラム及び記録媒体 | |
JP4829618B2 (ja) | マイクロコンピュータ | |
JP6762411B2 (ja) | 自動車用電子制御装置 | |
JP7419662B2 (ja) | マルチプロセッサシステム | |
JP2010237770A (ja) | 情報処理装置、ブリッジ装置および情報処理方法 | |
JP2015090512A (ja) | メモリダンプ機能を有する情報処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20150427 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160119 |
|
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: 20160308 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20160321 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5915624 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |