JP2013084219A - 情報処理装置、異常判定方法 - Google Patents
情報処理装置、異常判定方法 Download PDFInfo
- Publication number
- JP2013084219A JP2013084219A JP2011225172A JP2011225172A JP2013084219A JP 2013084219 A JP2013084219 A JP 2013084219A JP 2011225172 A JP2011225172 A JP 2011225172A JP 2011225172 A JP2011225172 A JP 2011225172A JP 2013084219 A JP2013084219 A JP 2013084219A
- Authority
- JP
- Japan
- Prior art keywords
- data
- calculation
- core
- cpu
- read
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
【解決手段】複数のCPUと、各CPUがアクセス可能な記憶手段14と、を有する情報処理装置100であって、各CPUが共通に読み出す異常検出プログラムを記憶したプログラム記憶手段12と、前記記憶手段への書き込みをCPU毎に禁止可能なアクセス制御手段20と、演算用データを前記記憶手段に書き込むデータ書き込み手段34と、前記記憶手段から演算用データを読み出すデータ読み出し手段35と、前記データ読み出し手段が読み出した演算用データに演算を施し演算結果データを生成するデータ演算手段31と、前記データ書き込み手段が前記記憶手段に書き込み前記データ読み出し手段が読み出した演算結果データと、前記データ演算手段が生成した演算結果データを比較する比較手段36と、を有することを特徴とする。
【選択図】図1
Description
図1は、本実施形態のマイコンの概略的な特徴を説明する図の一例である。CPUコア1とCPUコア2は(以下、CPUコアを単にコアという)、異常判定処理を異なるタイミングで実行する。この異常判定処理はコア1,2から共通に実行されるタスクである。
・コア1がRAMのアドレスA、アドレスBにライト/リードすることを許可する。
・コア2がRAMのアドレスA、アドレスBからリードすることは許可するが、ライトすることを禁止する。
A.異常判定処理を開始したコア1は以下のように動作する。
(1) 演算用データをアドレスAに書き込む。
(2) 演算用データをアドレスAから読み出す。
(3) 演算用データを使って演算を実行して比較用データを生成する。比較用データはコア1が保持しておく。
(4) 比較用データをアドレスBに書き込む。
(5) 比較用データをアドレスBから読み出す。
(6) アドレスBから読み出した比較用データと、保持している比較用データを比較して、一致するか否かを判定する。
B.異常判定処理を開始したコア2は以下のように動作する。
(1) 演算用データをアドレスAに書き込む。しかし、コア2はアドレスAに演算用データを書き込むことができない。
(2) 演算用データをアドレスAから読み出す。
(3) 演算用データを使って演算を実行して比較用データを生成する。比較用データはコア2が保持しておく。
(4) 比較用データをアドレスBに書き込む。しかし、コア2はアドレスBに比較用データを書き込むことができない。
(5) 比較用データをアドレスBから読み出す。
(6) アドレスBから読み出した比較用データと、保持している比較用データを比較して、一致するか否かを判定する。
図2は、車両に搭載されるマイコンのハードウェア構成図の一例である。マイコン100は、ECU(Electronic Control Unit)に搭載されることが想定されているがその用途は車両に限定されない。車載されるECUには、その主要な機能により、エンジンECU、ブレーキECU、ボディECU、ナビゲーションECU(AV・情報処理ECU)、ゲートウェイECU等の種類がある。本実施例のマイコン100はECUの機能の違いに影響されず搭載されることが可能である。また、複数の機能が1つに統合されたECUにマイコン100を搭載してもよい。
ST Gr0, @Gr1
この命令は、レジスタGr0のデータをレジスタGr1に格納されているRAM14のアドレス(図1ではアドレスA,及び、アドレスBが相当する)に書き込むというものである(“@”はポインタを意味する)。開発者等は、レジスタGr1に格納されているRAM14のアドレスを把握しておき、このアドレスが含まれる領域のアクセス許否情報23を図4の領域2のように記述する。これにより、コア1はリード/ライト可能だがコア2はリードのみが可能な領域を、異常判定処理により使用されるRAM14の領域として確保することができる。
図5(a)はコア1とコア2が実行するタスクの順番を模式的に説明する図の一例である。タスクとは、Main関数から始まる1つのプログラムに含まれる処理を機能単位で区分したものであり、例えば、Main関数から呼ばれる関数、サブルーチンなどが相当する。また、外部割り込みにより実行されるプログラムもタスクである。
ST Gr0, @Gr1
演算用データを書き込む際、Gr0には、異常判定処理のプログラムに記述されている演算用データが格納されており、Gr1には上述した領域2のRAM14のアドレス(図1のアドレスAが相当し、以下「演算データ記憶アドレス」という)が格納されている。
LD @Gr1,Gr0
この命令は、レジスタGr1に格納されているRAM14のアドレスから読み出したデータを、レジスタGr0に格納するというものである。演算用データを読み出す際、Gr1にはST命令で使用した演算データ記憶アドレスが格納されている。よって、Gr0には演算用データが記憶される。比較用データを読み出す際、Gr1にはST命令で使用した比較データ記憶アドレスが格納されている。よって、Gr0には比較用データが記憶される。
MOV Gr0,Gr2
PUSH Gr0
データ比較部36は、データ保持部32が保持する比較用データと、データ読み出し部35がRAM14から読み出した比較用データを比較する。高級言語によるプログラムの記述では、適宜、2つの変数を比較するための命令が用意されている。データ保持部32が保持する比較用データがGr2に記憶され、データ読み出し部35が、RAM14から読み出した比較用データをGr0に格納した場合、ニーモニックでは以下のように表すことができる。
CMP Gr0,Gr2
比較結果は、ステータスフラグに反映される。
・期待値データとデータ保持部32が保持している比較用データが一致する場合、コア1に異常があると判定する。
・期待値データとデータ保持部32が保持している比較用データが一致しない場合、少なくともコア2に異常があるが、コア1とコア2の両方に異常がある可能性が残る。
(i) コア1に異常があると判定した場合、監視用のコア(コア2)が被監視コア(コア1)を監視した態様になるので、異常処理は容易である。コア2の異常処理部33は例えば、以下のようなフェールセーフ処理を行う。
(ii) コア2に異常があると判定した場合、監視用のコア(コア2)がコア2自身を監視した態様になるので、コア2の異常処理部33は例えば、コア1又は待機しているコアnを起動させこれらのコアに異常を通知する。これにより、コア1又はコアnはコア2と同様のフェールセーフ処理が可能になる。
(iii) コア1とコア2の両方に異常があると判定した場合、マイコン全体をリセットする。または、コアm、nなど待機しているコア、又は、コア3,4など他に動作しているコアがあればコア1,2を停止させ、これらのコアにコア1,2のタスクを割り当てる。
図7は、コア1,2が異常判定処理を行う手順の一例を示すフローチャート図である。コア1とコア2の異常判定処理の手順は同一だが、説明のためそれぞれを別に示している。コア1の処理から説明する。
S10-1:まず、データ書き込み部34は演算用データをアドレスAに書き込む。これにより、コア1はコア2に演算用データを渡すことができる。なお、コア1はアクセス許否情報23により書き込みが許可されている。
S20-1:データ読み出し部35は演算用データをアドレスAから読み出す。この処理は、コア1にとっては不要だがコア2に必要なため、異常判定処理に含まれている。こうすることで、コア1とコア2が実行する異常判定処理を同一にできる。
S30-1:データ演算部31は、読み出した演算用データを使って演算を実行して比較用データを生成する。
S40-1:データ保持部32が比較用データを保持しておく。
S50-1:データ書き込み部34は、比較用データをアドレスBに書き込む。これにより、コア1はコア2に演算結果である比較用データを渡すことができる。
S60-1:データ読み出し部35は比較用データをアドレスBから読み出す。この処理は、コア1にとっては不要だがコア2に必要なため、異常判定処理に含まれている。
S70-1:データ比較部36はアドレスBから読み出した比較用データと、保持している比較用データを比較して、一致するか否かを判定する。
S80-1:一致しない場合、異常処理部33はフェールセーフ処理を行う。一致する場合は、異常判定処理は終了する。
S10-2:まず、データ書き込み部34は演算用データをアドレスAに書き込む。コア2はアクセス許否情報23により書き込みが許可されていないので例外が発生するが、その後、処理はS20-2に戻る。
S20-2:データ読み出し部35は演算用データをアドレスAから読み出す。これにより、コア1とコア2が同じ演算用データを用いて演算することができる。
S30-2:データ演算部31は、読み出した演算用データを使って演算を実行して比較用データを生成する。
S40-2:データ保持部32が比較用データを保持しておく。
S50-2:データ書き込み部34は、比較用データをアドレスBに書き込む。コア2はMPU20により書き込みが許可されていないので例外が発生するが、その後、処理はS60-2に戻る。
S60-2:データ読み出し部35は比較用データをアドレスBから読み出す。これにより、コア2はコア1の演算結果を取得できる。
S70-2:データ比較部36はアドレスBから読み出した比較用データと、保持している比較用データを比較して、一致するか否かを判定する。
S80-2:一致しない場合、異常処理部33はフェールセーフ処理を行う。一致する場合は、異常判定処理は終了する。
コアが3つ以上ある場合も同様に異常判定することができる。例えば、コア2を監視用のコアとする。この場合、MPU20のアクセス許否情報23には、コア1とコア3〜nのリード及びライトを許可するがコア2のライトを禁止するというアクセス制限が記述される。
12 ROM
14 RAM
20 MPU(Memory Protection Unit)
31 データ演算部
32 データ保持部
34 データ書き込み部
35 データ読み出し部
36 データ比較部
100 マイコン
Claims (5)
- 複数のCPUと、各CPUがアクセス可能な記憶手段と、を有する情報処理装置であって、
各CPUが共通に読み出す異常検出プログラムを記憶したプログラム記憶手段と、
前記記憶手段への書き込みをCPU毎に禁止可能なアクセス制御手段と、
演算用データを前記記憶手段に書き込むデータ書き込み手段と、
前記記憶手段から演算用データを読み出すデータ読み出し手段と、
前記データ読み出し手段が読み出した演算用データに演算を施し演算結果データを生成するデータ演算手段と、
前記データ書き込み手段が前記記憶手段に書き込み前記データ読み出し手段が読み出した演算結果データと、前記データ演算手段が生成した演算結果データを比較する比較手段と、
を有することを特徴とする情報処理装置。 - 第1のCPUの前記データ書き込み手段が演算用データを前記記憶手段に書き込み、
第1のCPUの前記データ読み出し手段が前記記憶手段から演算用データを読み出し、
第1のCPUの前記データ演算手段が、データ読み出し手段が読み出した演算用データに演算を施し演算結果データを生成し、
第1のCPUの前記データ書き込み手段が演算用データを前記記憶手段に書き込み、
第2のCPUの前記データ読み出し手段が前記記憶手段から演算用データを読み出し、
第2のCPUの前記データ演算手段が、データ読み出し手段が読み出した演算用データに演算を施し演算結果データを生成し、
第2のCPUの前記データ読み出し手段が前記記憶手段から演算結果データを読み出し、
第2のCPUの前記比較手段が、第2のCPUの前記データ読み出し手段が読み出した演算結果データと、第2のCPUの前記データ演算手段が生成した演算結果データを比較する、
ことを特徴とする請求項1記載の情報処理装置。 - 第2のCPUの前記比較手段は、第2のCPUの前記データ読み出し手段が読み出した演算結果データと、第2のCPUの前記データ演算手段が生成した演算結果データが一致しない場合、
さらに、正常な演算結果である期待値データと第2のCPUの前記データ演算手段が生成した演算結果データ、又は、前記期待値データと第2のCPUの前記データ読み出し手段が前記記憶手段から読み出した演算結果データを比較し、第1のCPU又は第2のCPUのどちらに異常があるかを判定する、
ことを特徴とする請求項1又は2いずれか1項記載の情報処理装置。 - 前記アクセス制御手段は、前記記憶手段からの読み出し、又は、前記記憶手段への書き込みの許否をCPU毎に規定したアクセス許否情報を有し、
読み書きが許可されたCPUと書き込みが禁止されたCPUが切り換わるように、アクセス許否情報を書き換える、
ことを特徴とする請求項1〜3いずれか1項記載の情報処理装置。 - 複数のCPUと、各CPUがアクセス可能な記憶手段と、各CPUが共通に読み出す異常検出プログラムを記憶したプログラム記憶手段と、を有する情報処理装置の異常判定方法であって、
データ書き込み手段が、演算用データの前記記憶手段への書き込みを試みるステップと、
アクセス制御手段が、書き込みを試みたCPUに基づき演算用データの前記記憶手段への書き込みを許可するか否を判定するステップと、
データ読み出し手段が、前記記憶手段から演算用データを読み出すステップと、
前記データ演算手段が、データ読み出し手段が読み出した演算用データに演算を施し演算結果データを生成するステップと、
データ書き込み手段が、演算結果データの前記記憶手段への書き込みを試みるステップと、
アクセス制御手段が、書き込みを試みたCPUに基づき演算結果データの前記記憶手段への書き込みを許可するか否を判定するステップと、
データ読み出し手段が、前記記憶手段から演算結果データを読み出すステップと、
比較手段が、前記データ読み出し手段が読み出した演算結果データと、前記データ演算手段が生成した演算結果データを比較するステップと、
を有する異常判定方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011225172A JP5699896B2 (ja) | 2011-10-12 | 2011-10-12 | 情報処理装置、異常判定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011225172A JP5699896B2 (ja) | 2011-10-12 | 2011-10-12 | 情報処理装置、異常判定方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013084219A true JP2013084219A (ja) | 2013-05-09 |
JP5699896B2 JP5699896B2 (ja) | 2015-04-15 |
Family
ID=48529328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011225172A Expired - Fee Related JP5699896B2 (ja) | 2011-10-12 | 2011-10-12 | 情報処理装置、異常判定方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5699896B2 (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102016200413A1 (de) | 2015-01-21 | 2016-07-21 | Denso Corporation | Mikrocomputer |
JP2018081427A (ja) * | 2016-11-15 | 2018-05-24 | トヨタ自動車株式会社 | 演算器の動作保証方法 |
JP2021076021A (ja) * | 2019-11-05 | 2021-05-20 | 株式会社デンソー | 電子制御装置 |
JPWO2021192098A1 (ja) * | 2020-03-25 | 2021-09-30 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58127242A (ja) * | 1982-01-25 | 1983-07-29 | Nec Corp | 論理回路 |
JP2009527038A (ja) * | 2006-02-17 | 2009-07-23 | フェニックス コンタクト ゲーエムベーハー ウント コムパニー カーゲー | 安全関連プロセスのバス結合のための方法および装置 |
JP2011145900A (ja) * | 2010-01-14 | 2011-07-28 | Toyota Motor Corp | マルチプロセッサ装置 |
-
2011
- 2011-10-12 JP JP2011225172A patent/JP5699896B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58127242A (ja) * | 1982-01-25 | 1983-07-29 | Nec Corp | 論理回路 |
JP2009527038A (ja) * | 2006-02-17 | 2009-07-23 | フェニックス コンタクト ゲーエムベーハー ウント コムパニー カーゲー | 安全関連プロセスのバス結合のための方法および装置 |
US20100217408A1 (en) * | 2006-02-17 | 2010-08-26 | Phoenix Contact Gmbh & Co. Kg | Method and device for the bus coupling of safety-relevant processes |
JP2011145900A (ja) * | 2010-01-14 | 2011-07-28 | Toyota Motor Corp | マルチプロセッサ装置 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102016200413A1 (de) | 2015-01-21 | 2016-07-21 | Denso Corporation | Mikrocomputer |
JP2018081427A (ja) * | 2016-11-15 | 2018-05-24 | トヨタ自動車株式会社 | 演算器の動作保証方法 |
JP2021076021A (ja) * | 2019-11-05 | 2021-05-20 | 株式会社デンソー | 電子制御装置 |
JPWO2021192098A1 (ja) * | 2020-03-25 | 2021-09-30 | ||
WO2021192098A1 (ja) * | 2020-03-25 | 2021-09-30 | 三菱電機株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
JP7062142B2 (ja) | 2020-03-25 | 2022-05-02 | 三菱電機株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
Also Published As
Publication number | Publication date |
---|---|
JP5699896B2 (ja) | 2015-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101067264B1 (ko) | 컴퓨터 시스템의 제어 방법 및 장치 | |
JP5316718B1 (ja) | マルチコア・プロセッサ | |
JP5745868B2 (ja) | マルチプロセッサシステム | |
US20140059553A1 (en) | Hardware assisted real-time scheduler using memory monitoring | |
US7398378B2 (en) | Allocating lower priority interrupt for processing to slave processor via master processor currently processing higher priority interrupt through special interrupt among processors | |
JP5699896B2 (ja) | 情報処理装置、異常判定方法 | |
JP2013161299A (ja) | 情報処理装置、インタフェースアクセス方法 | |
US20090113439A1 (en) | Method and Apparatus for Processing Data | |
JP5533789B2 (ja) | 車載電子制御装置 | |
US20170154480A1 (en) | Information processing apparatus and large scale integrated circuit | |
JP5999216B2 (ja) | データ処理装置 | |
JP5532144B2 (ja) | プロセッサ、電子制御装置、作成プログラム | |
US20130132708A1 (en) | Multi-core processor system, computer product, and control method | |
JP2011216004A (ja) | マイクロプロセッサ、電子制御ユニット、実行比率切り替え方法 | |
JP2009175960A (ja) | 仮想マルチプロセッサシステム | |
JP7236811B2 (ja) | 情報処理装置 | |
JP2013061783A (ja) | マルチコア・プロセッサ | |
JP5703505B2 (ja) | バスパーティション構造を備えるコンピュータ | |
JP7498845B2 (ja) | 制御装置及び制御方法 | |
JP2008225710A (ja) | コンピュータシステム及び該システムで用いられるプロセス切替え方法 | |
US9342359B2 (en) | Information processing system and information processing method | |
JP5856220B2 (ja) | ナビゲーションシステム | |
JP2012053817A (ja) | マルチプロセッサシステムと制御方法 | |
CN118227279A (zh) | 重复线程的调度 | |
JP2008046697A (ja) | データ処理ユニット、およびこれを使用したデータ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20140116 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20141107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20141218 |
|
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: 20150120 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150202 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 5699896 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
LAPS | Cancellation because of no payment of annual fees |