JP5699896B2 - Information processing apparatus and abnormality determination method - Google Patents
Information processing apparatus and abnormality determination method Download PDFInfo
- Publication number
- JP5699896B2 JP5699896B2 JP2011225172A JP2011225172A JP5699896B2 JP 5699896 B2 JP5699896 B2 JP 5699896B2 JP 2011225172 A JP2011225172 A JP 2011225172A JP 2011225172 A JP2011225172 A JP 2011225172A JP 5699896 B2 JP5699896 B2 JP 5699896B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- cpu
- core
- address
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Test And Diagnosis Of Digital Computers (AREA)
Description
本発明は、複数のコアを有する情報処理装置に関し、コアの動作を監視することが可能な情報処理装置に関する。 The present invention relates to an information processing apparatus having a plurality of cores, and relates to an information processing apparatus capable of monitoring core operations.
燃費向上や運転者の負担軽減、安全性の向上などをもたらすため、車両にはマイコンを応用した多くの電子制御装置が搭載されている。マイコンが故障するとこれらの制御が損なわれるため、マイコンの動作状態を監視してマイコンの動作を保証する対策が講じられている。 In order to improve fuel efficiency, reduce driver's burden, and improve safety, vehicles are equipped with many electronic control devices that apply microcomputers. Since these controls are lost when a microcomputer breaks down, measures are taken to ensure the operation of the microcomputer by monitoring the operation state of the microcomputer.
ところで、マイコンに、コアが複数個含まれるマルチコア型のプロセッサが搭載されるようになってきた(以下、マルチコアマイコンという)。マルチコアマイコンにおいて各コアの動作状態を監視する手法として、一命令を同時に複数のコアで実行して、命令単位で実行結果を比較するロックステップ方式が知られている。しかし、ロックステップ方式では、複数のコアが同じ命令を実行するため同時に1つのタスクしか実行されず処理効率が低下してしまう。 By the way, a multi-core type processor including a plurality of cores has been mounted on a microcomputer (hereinafter referred to as a multi-core microcomputer). As a technique for monitoring the operating state of each core in a multi-core microcomputer, a lockstep method is known in which one instruction is executed simultaneously by a plurality of cores and the execution results are compared in units of instructions. However, in the lockstep method, since a plurality of cores execute the same instruction, only one task is executed at the same time, resulting in a reduction in processing efficiency.
そこで、複数のコアで同じタスクを単発的に実行し、比較回路が処理結果を比較することでコアの異常を検出する手法が知られている(例えば、特許文献1参照。)。特許文献1には、複数の通常タスク処理用プロセッサのうち所定順序で選択されたプロセッサと同一の処理を、選択された通常タスク処理用プロセッサと並行して行う並行同一処理用プロセッサと、順に選択された通常タスク処理用プロセッサによる処理結果と並行同一処理用プロセッサによる処理結果とを比較する比較手段と、を有するマルチプロセッサ装置が開示されている。
Therefore, a technique is known in which the same task is executed on a plurality of cores in a single shot, and a comparison circuit detects the abnormality of the core by comparing the processing results (see, for example, Patent Document 1). In
しかしながら、特許文献1に開示されたコアの監視方法では、専用の比較手段が必要になるという問題がある。これは複数のコアの処理結果を比較するには、各コアの処理結果をコアの外部に取り出す必要があるためである。
However, the core monitoring method disclosed in
複数のコアのいずれかが他のコアの処理結果と自コアの処理結果を比較すれば、比較回路が不要になるが、比較処理を行うコアは他のコアの処理結果を読み出すなどの余分の処理が必要になってしまう。また、この場合、各コアが使用するRAM領域等が異なるため、同じ入力データを使用し同じ処理を行ったはずでも、処理結果が一致しない場合が生じる可能性がある。 If one of the multiple cores compares the processing result of the other core with the processing result of the own core, the comparison circuit becomes unnecessary, but the core that performs the comparison processing reads extra processing results such as reading the processing result of the other core. Processing is required. In this case, since the RAM area used by each core is different, there is a possibility that the processing results may not match even if the same processing should be performed using the same input data.
本発明は、上記課題に鑑み、比較回路を用いることなく複数のCPUの動作を監視可能な情報処理装置を提供することを目的とする。 An object of the present invention is to provide an information processing apparatus capable of monitoring operations of a plurality of CPUs without using a comparison circuit.
本発明は、複数のCPUと、各CPUがアクセス可能な記憶手段と、第2のCPUが前記記憶手段へデータを書き込むことを禁止するアクセス制御手段と、を有し、各CPUが共通の異常検出プログラムを実行することで各CPUがそれぞれ実現させる手段として、演算用データを前記記憶手段の第1のアドレスに書き込むデータ書き込み手段と、前記記憶手段の前記第1のアドレスから前記演算用データを読み出すデータ読み出し手段と、前記データ読み出し手段が読み出した前記演算用データに演算を施し演算結果データを生成するデータ演算手段と、前記データ書き込み手段が前記記憶手段の第2のアドレスに書き込み前記データ読み出し手段が前記記憶手段の前記第2のアドレスから読み出した演算結果データと、前記データ演算手段が生成した演算結果データを比較する比較手段と、を有し、前記アクセス制御手段により前記第2のCPUが前記記憶手段への書き込みを禁止されている状態で、第1のCPUの前記データ書き込み手段が前記記憶手段の前記第2のアドレスに書き込んだ演算結果データを前記第2のCPUの前記データ読み出し手段が読み出すことで、前記第2のCPUの前記比較手段は前記第1のCPUの前記データ演算手段による演算結果データと、前記第2のCPUの前記データ演算手段による演算結果データとを比較する、ことを特徴とする。 The present invention has a plurality of CPUs, storage means accessible by each CPU , and access control means for prohibiting the second CPU from writing data into the storage means , and each CPU has a common abnormality as means for each CPU to realize each by executing the detecting program, and a data writing means for writing the operation data to the first address of the storage means, the arithmetic data from the first address of said storage means a data reading means for reading a data calculating means for generating an operation result data performing an operation on said calculation data for data reading means has read, the data writing means writing the data read to the second address of said memory means and calculation result data unit read from the second address of said memory means, said data computation hand A state but which has a comparing means for comparing the generated operation result data, and the by the access control means the second CPU is prohibited to write to the storage means, the data writing of the first CPU The data reading means of the second CPU reads out the operation result data written by the means to the second address of the storage means, so that the comparing means of the second CPU is the data of the first CPU. The calculation result data by the data calculation means is compared with the calculation result data by the data calculation means of the second CPU .
比較回路を用いることなく複数のCPUの動作を監視可能な情報処理装置を提供することができる。 An information processing apparatus capable of monitoring the operations of a plurality of CPUs without using a comparison circuit can be provided.
以下、本発明を実施するための形態について図面を参照しながら説明する。
図1は、本実施形態のマイコンの概略的な特徴を説明する図の一例である。CPUコア1とCPUコア2は(以下、CPUコアを単にコアという)、異常判定処理を異なるタイミングで実行する。この異常判定処理はコア1,2から共通に実行されるタスクである。
Hereinafter, embodiments for carrying out the present invention will be described with reference to the drawings.
FIG. 1 is an example of a diagram illustrating schematic features of the microcomputer according to the present embodiment. The
また、多くのマイコンは、MPU(Memory Protection Unit)と呼ばれる回路を有している。MPUはコア1,2のRAMへのアクセスを制御する。ここでは、MPUは以下のようにアクセス制御を行う。
・コア1がRAMのアドレスA、アドレスBにライト/リードすることを許可する。
・コア2がRAMのアドレスA、アドレスBからリードすることは許可するが、ライトすることを禁止する。
A.異常判定処理を開始したコア1は以下のように動作する。
(1) 演算用データをアドレスAに書き込む。
(2) 演算用データをアドレスAから読み出す。
(3) 演算用データを使って演算を実行して比較用データを生成する。比較用データはコア1が保持しておく。
(4) 比較用データをアドレスBに書き込む。
(5) 比較用データをアドレスBから読み出す。
(6) アドレスBから読み出した比較用データと、保持している比較用データを比較して、一致するか否かを判定する。
Many microcomputers have a circuit called MPU (Memory Protection Unit). The MPU controls access to the RAMs of the
The
The
A. The
(1) Write operation data to address A.
(2) Read operation data from address A.
(3) Perform calculation using the calculation data to generate comparison data. The
(4) Write the comparison data to address B.
(5) Read the comparison data from address B.
(6) The comparison data read from address B is compared with the held comparison data to determine whether or not they match.
コア1が実行する異常判定処理では、(3)と(5)の比較用データが元々同じものなので、書き込みエラー等が生じない限り、2つの比較用データは一致する。
B.異常判定処理を開始したコア2は以下のように動作する。
(1) 演算用データをアドレスAに書き込む。しかし、コア2はアドレスAに演算用データを書き込むことができない。
(2) 演算用データをアドレスAから読み出す。
(3) 演算用データを使って演算を実行して比較用データを生成する。比較用データはコア2が保持しておく。
(4) 比較用データをアドレスBに書き込む。しかし、コア2はアドレスBに比較用データを書き込むことができない。
(5) 比較用データをアドレスBから読み出す。
(6) アドレスBから読み出した比較用データと、保持している比較用データを比較して、一致するか否かを判定する。
In the abnormality determination process executed by the
B. The
(1) Write operation data to address A. However, the
(2) Read operation data from address A.
(3) Perform calculation using the calculation data to generate comparison data. The
(4) Write the comparison data to address B. However, the
(5) Read the comparison data from address B.
(6) The comparison data read from address B is compared with the held comparison data to determine whether or not they match.
つまりコア2は、(1)において演算用データを書き込めないので、(3)においてコア2はコア1と同じ演算用データを用いて演算を実行する。そして、(4)においてコア2は比較用データを書き込めないので、(6)においてコア2は、コア1が実行してアドレスBに書き込んだ比較用データと、コア2が演算を実行して生成した比較用データを比較する。
That is, since the
したがって、コア2は、コア1が比較用データを演算するために使用した演算用データを使用して比較用データを生成し、コア1が生成した比較用データと比較することができる。演算用データの同一性が保証されるので、比較用データの不一致からコア1又はコア2の異常を高い確度で検出できる。
Therefore, the
また、異常判定処理は全く同じ処理なので、ROMには1つの異常判定処理のプログラムを記憶しておけばよい。さらに、異常判定処理の上記のプロセスは、制御用のプログラムでも含まれうるので、制御用のプログラムにいくつかの処理を加えるだけで異常判定処理が可能となる。 Further, since the abnormality determination processing is exactly the same processing, it is sufficient to store one abnormality determination processing program in the ROM. Furthermore, since the above-described process of abnormality determination processing can be included in a control program, the abnormality determination processing can be performed only by adding some processing to the control program.
〔構成例〕
図2は、車両に搭載されるマイコンのハードウェア構成図の一例である。マイコン100は、ECU(Electronic Control Unit)に搭載されることが想定されているがその用途は車両に限定されない。車載されるECUには、その主要な機能により、エンジンECU、ブレーキECU、ボディECU、ナビゲーションECU(AV・情報処理ECU)、ゲートウェイECU等の種類がある。本実施例のマイコン100はECUの機能の違いに影響されず搭載されることが可能である。また、複数の機能が1つに統合されたECUにマイコン100を搭載してもよい。
[Configuration example]
FIG. 2 is an example of a hardware configuration diagram of a microcomputer mounted on the vehicle. The
マイコン100は、メインバス21に接続されたプロセッサ11、ROM12、INTC13、RAM14、DMAC15、並びに、I/Oブリッジ16を有し、I/Oブリッジ16には周辺バス22を介してADC(Analog to Digital Converter)17及びCANコントローラ18が接続されている。
The
プロセッサ11は少なくとも2つ以上のコア1〜nを有する。各コア1〜nは一般的な演算機能(例えば、ALU等の演算装置、命令バッファ、命令デコーダ、レジスタセット等)を有している。1つのチップに複数のコア1〜nを有するプロセッサでなく、CPUが独立にメインバス21に接続されていてもよい。
The processor 11 has at least two or
MPU20はプロセッサ内に配置されているが、単独で搭載されてもよい。また、MPU20はMMU(Memory Management Unit)として実装されることも多い。MMUはアドレス変換機能、メモリ保護機能、キャッシュ管理機能、及び、バス調停機能等を有し、このメモリ保護機能がMPU20の機能に相当する。
The
ROM12はフラッシュメモリなどの不揮発メモリであり、プロセッサ11が実行するプログラム30や初期値、パラメータ等を記憶している。
The
INTC13はIRQやその他の割り込み端子を介して周辺機器から入力された割り込み要求を、周辺機器の優先順位に基づき調停してプロセッサ11に通知する。これによりプロセッサ11は、割り込みした周辺機器に応じて決まったアドレスの命令をROM12から読み出して処理を実行する。
The
RAM14は、プロセッサ11がプログラム30を実行するための作業領域である。プロセッサ11はROM12からプログラム30を読み込み、また、必要であればデータバスを介してRAM14からデータを読み出しプログラム30を実行する。DMAC15は、プロセッサ11からの指示によりRAM14からI/Oブリッジ16を介して周辺機器にデータを送信する。また、周辺機器から割り込みされたプロセッサ11から指示を受けて、I/Oブリッジ16を介して周辺機器からデータを受け取り、RAM14に書き込む。
The
I/Oブリッジ16は、メインバス21と周辺バス22との周波数の違いを吸収し、メインバス側の回路と周辺バス側の回路のデータを互いに受け渡す。I/Oブリッジ16は、マルチプレクサやブリッジ回路などであり、チャネル毎に、ADC17、及び、CANコントローラ18とそれぞれ接続されており、これらの周辺機器とデータを送受信する。
The I / O bridge 16 absorbs the difference in frequency between the main bus 21 and the
ADC17は、各種のセンサが検出したアナログ信号をデジタル信号に変換する。ADC17は変換の終了を、INTC13を介してプロセッサ11に通知する。CANコントローラ18は、車載ネットワークを介して接続された他のECUと通信するための通信装置である。CANコントローラ18は、プロセッサ11から通信データの送信要求を受け付けるとフレームの各フィールドにCAN IDやデータを格納しCANバスに出力する。また、CANコントローラ18は、受信すべきCAN IDの通信データを検出するとそれを取り込みINTC13を介してプロセッサ11に割り込んで通知する。
The
図3は、MPU20によるRAM14へのアクセス制御を説明する図の一例である。コア1,コア2は、アドレス線41、R/W選択信号線42、及び、チップ識別信号線43などを介してMPU20と接続されている。MPU20は、アドレス線41、R/W選択信号線42、及び、R/W許否信号線44などを介してRAM14と接続されている。また、RAM14はデータ線45を介してコア1、コア2と接続されている。
FIG. 3 is an example of a diagram illustrating access control to the
コア1又はコア2がRAM14へアクセス要求する際、例えば、不図示のアービタがラウンドロビン方式、固定優先順位方式、又は、重み付けラウンドロビン方式などに基づき、コア1又はコア2にアクセス権を与える。
When the
アクセス権を取得したコア1又はコア2は、チップ識別信号線をアサートしてMPU20と接続する。そして、リード要求かライト要求かをR/W選択信号線によりMPU20に通知すると共に、アドレス線によりアドレスを通知する。MPU20がMMUの一機能として搭載されている場合、MMUは仮想アドレスを物理アドレスに変換するが、本実施形態ではアドレスの変換の有無は問わない。
The
MPU20は、チップ識別信号線で接続されたコア1又はコア2のアドレス線及びR/W選択信号線をRAM14側にパススルーして、アドレスとリード要求/ライト要求をRAM14に出力する。RAM14からデータのリード又はRAM14へのライトが許可されるか否かは、R/W許否信号線により制御される。
The
MPU20はアクセス許否情報23を有している。アクセス許否情報23は、OSやプログラムがマイコンの起動時にMPU20のレジスタに記憶させる。アクセス許否情報23には、RAM14の領域単位に、各コアがリード可能か否か、ライト可能か否かが設定されている。
The
MPU20は、アクセス許否情報23を参照して、アクセス要求したコアがアドレスの示す領域にリード又はライト可能か否かを判定する。コア1又はコア2がリード要求し、リードが禁止されている場合、MPU20はR/W許否信号線によりリード禁止をRAM14に出力する。この場合、コア1又はコア2はRAM14からデータを読み出すことができない。コア1又はコア2がライト要求し、ライトが禁止されている場合、MPU20はR/W許否信号線によりライト禁止をRAM14に出力する。この場合、コア1又はコア2はRAM14にデータを書き込むことができない。
The
図4は、アクセス許否情報23の一例を示す図である。アクセス許否情報23はコア毎に設けられている。コア毎かつタスク毎に規定することも可能である。アクセス許否情報23は、「領域番号」、「アドレス」、「サイズ」、「リード」、「ライト」、「モード」の各項目を有する。実際にはMPU20にこのようなラベルが付与されているわけではなく、MPU20のレジスタ番号やレジスタ内のbit位置により格納される情報が予め定められている。
FIG. 4 is a diagram illustrating an example of the
「領域番号」は、RAM14の一部又は全体をいくつかの領域に区分した場合に領域を識別するための識別情報である。「アドレス」は領域が始まるアドレスを示し、「サイズ」は領域の容量を示す。「リード」はその領域のリードが許可されているか否かを示し、「ライト」はその領域へのライトが許可されているか否かを示す。「モード」は、コア1,2の動作モードであり、本実施形態では各コアは特権モードとユーザモードの2つの動作モードを有している。簡単には、特権モードは、コアがOSを実行する動作モードであり、ユーザモードは、コアがアプリケーションを実行する動作モードである。一般に、OSのシステム領域にアクセスできるのはOSだけである。図4では、領域1をシステム領域としたため、領域1は特権モードでのみリード及びライトが許可されている。
The “area number” is identification information for identifying an area when a part or the whole of the
コア1のアクセス許否情報23とコア2のアクセス許否情報23を比較すると、コア2は、領域2においてユーザモードのライトが禁止されている。すなわち、コア2はユーザモードにおいて、領域2にデータを書き込むことができない。したがって、アクセス許否情報23により、コア1には領域2にリード及びライトすることを許可し、コア2には領域2からのリードのみを許可する、というアクセス制御が可能になる。
Comparing the
例えば、コア1及びコア2がRAM14にデータを書き込むための命令は以下のようになる。
ST Gr0, @Gr1
この命令は、レジスタGr0のデータをレジスタGr1に格納されているRAM14のアドレス(図1ではアドレスA,及び、アドレスBが相当する)に書き込むというものである(“@”はポインタを意味する)。開発者等は、レジスタGr1に格納されているRAM14のアドレスを把握しておき、このアドレスが含まれる領域のアクセス許否情報23を図4の領域2のように記述する。これにより、コア1はリード/ライト可能だがコア2はリードのみが可能な領域を、異常判定処理により使用されるRAM14の領域として確保することができる。
For example, an instruction for the
ST Gr0, @ Gr1
This instruction is to write the data of the register Gr0 to the address of the
なお、MPU20がアクセス許否情報23によりコアのアクセス(リード又はライトのどちらの場合でも)を拒否する場合、一般には例外が発生する。つまりMPU20は、アクセスを拒否するコアに対し例外の発生を知らせる割込みする。コアはこの割込みに対し予め定められた例外ハンドラや例外処理ルーチンを実行するが、本実施形態ではこの例外は想定されている例外なので、例外ハンドラがすぐに元の異常判定処理に戻る処理を実行すればよい。また、この例外による割込みをマスクしておいてもよい。また、MPU20がコア2と接続された場合に、例外の発生をコア2に通知しないようにしてもよい。例えば、MPU20とコアを接続する例外の割込み線にスイッチを配置し、コア2と接続された場合に、コア2又はMPU20がスイッチをオフにする。
When the
〔タスクスケジュール〕
図5(a)はコア1とコア2が実行するタスクの順番を模式的に説明する図の一例である。タスクとは、Main関数から始まる1つのプログラムに含まれる処理を機能単位で区分したものであり、例えば、Main関数から呼ばれる関数、サブルーチンなどが相当する。また、外部割り込みにより実行されるプログラムもタスクである。
[Task Schedule]
FIG. 5A is an example of a diagram schematically illustrating the order of tasks executed by the
本実施形態では、例えば図のタスクBが異常判定処理のタスクであるとして説明する。コア1及びコア2のいずれもタスクBを実行するが、完全に同一タイミングで実行することはできない。これは、コア2はコア1のタスクBの処理結果を利用するためである。このため、コア2は、コア1がタスクBの実行を開始してから、少なくともやや遅れてタスクBを実行する必要がある。このようなタスクのスケジューリングは、OSが提供するスケジューラにより行われる。
In the present embodiment, description will be made assuming that, for example, task B in the figure is a task for abnormality determination processing. Although both the
図5(b)はタスクのスケジューリングを説明するための図の一例である。タスクは一般に、休止状態、実行可能状態、実行状態、及び、待ち状態の各状態を経る。休止状態は生成直後又は実行が完了したタスクの状態である。実行状態は、コアにより現在、実行されているタスクの状態をいう。実行状態のタスクはコアの数以下しか存在しない。実行可能状態は、周辺機器の入出力などが完了し、実行の準備が整ったタスクの状態をいう。実行可能状態のタスクは、コアが実行状態のタスクを終了させれば(コアが空けば)コアに割り当てられる(ディスパッチされる)。待ち状態は、周辺機器が入出力を完了させるなど、実行に必要な条件が整うまで待機しているタスクの状態をいう。 FIG. 5B is an example of a diagram for explaining task scheduling. In general, a task goes through a dormant state, an executable state, an executing state, and a waiting state. The dormant state is the state of a task that has just been created or has completed execution. The execution state refers to the state of the task currently being executed by the core. There are less than the number of cores in the running state. The executable state refers to a task state in which input / output of peripheral devices is completed and ready for execution. A task in an executable state is assigned (dispatched) to a core if the core terminates the task in the execution state (if the core is free). The wait state is a state of a task that is waiting until a necessary condition for execution is satisfied, such as a peripheral device completing input / output.
例えば、各タスクは、プログラムのシステムコールにより生成され休止状態になり、システムコールにより休止状態から実行可能状態になる。タスクが生成されると、スケジューラ(又はOS)はタスクの状態等をTCB(Task Control Block)に登録し、以降はTCBに基づきタスクを管理する。 For example, each task is generated by a system call of a program and enters a dormant state. The system call is changed from the dormant state to an executable state. When a task is generated, the scheduler (or OS) registers the task status and the like in a TCB (Task Control Block), and thereafter manages the task based on the TCB.
TCBには、タスク識別番号、タスクの優先度、タスクの現在の状態、タスクの開始アドレスやスタック領域のアドレスなどが登録されている。タスクの優先度は予めプログラムに記述されている。タスクの識別番号、タスクの現在の状態、タスクの開始アドレスやスタック領域のアドレスはOSが登録する。 In the TCB, a task identification number, task priority, task current state, task start address, stack area address, and the like are registered. The task priority is described in advance in the program. The OS registers the task identification number, the current state of the task, the task start address, and the stack area address.
ここで、マルチコアのプロセッサ11のプログラム実行態様が、各コアのOSとタスクの実行形態により分類されることが知られている。このプログラム実行態様には、コアに特定のOSとタスクを割り当てるAMP(Asymmetric Multiprocessing)」と、各コアが共通のOSを実行しコアとタスクの関係が動的に変動しうるSMP(Symmetric Multi-processing)」、AMPとSMPの双方の性質をもつBMP(Bound Multiprocessing)がある。 Here, it is known that the program execution mode of the multi-core processor 11 is classified according to the OS and task execution mode of each core. This program execution mode includes AMP (Asymmetric Multiprocessing) in which a specific OS and task are assigned to the core, and SMP (Symmetric Multi-processing) in which each core executes a common OS and the relationship between the core and the task can dynamically change. processing) ”, there is BMP (Bound Multiprocessing) having both AMP and SMP properties.
AMPではシングルコアと同様に、スケジューラはコア毎に用意され、SMPでは複数のコアに1つ用意される。AMPでは、それぞれのコアで固有のタスクが動作するため、スケジューラは1つのコアだけをスケジューリングすればよい。SMPではコアが実行するタスクが固定でなく動的に切り換えることができるため、スケジューラはコア1,2に対し実行可能状態のタスクを割り当てる。本実施形態では、コア1,2が実行タイミングをずらしてタスクBを実行するので、SMP又はBMPの方がスケジューリングが容易である。しかし、プロセッサ11がAMPで動作した場合でも、コア2のスケジューラがコア1によるタスクBの実行タイミングを監視するなどして、コア1とコア2が適切なタイミングでそれぞれタスクBを実行することも可能である。
Similar to a single core in AMP, a scheduler is prepared for each core, and in SMP, one scheduler is prepared for a plurality of cores. In AMP, a unique task operates in each core, so the scheduler need only schedule one core. In SMP, the tasks executed by the core are not fixed and can be switched dynamically. Therefore, the scheduler assigns tasks in an executable state to the
スケジューラは、所定の規則に従って、実行可能状態のタスクからコア1又はコア2に割り当てるタスクを決定する。例えば、優先度の高い順に割り当てる場合、スケジューラは、実行可能状態のタスクから最も優先度の高いタスクを、コア1又はコア2に割り当てる。最も優先度の高いタスクが複数ある場合は、より早く実行可能状態になったタスクを優先する。
The scheduler determines a task to be assigned to the
タスクBは、例えば、タイマ割込みにより定期的に生成又は生成・起動される。また、タスクBはコア1とコア2がそれぞれ実行できるように、ある時間間隔をおいて2つ起動される。または、コア1がタスクBの実行途中又は実行完了時に、コア2が実行するためのタスクBを生成・起動してもよい。
The task B is generated or generated and started periodically by a timer interrupt, for example. In addition, two tasks B are started at certain time intervals so that the
そして、スケジューラは、タスクBをコア1とコア2の順に交互に割り当てる。これにより、コア1がタスクBを実行した後、コア2がタスクBを実行できる。ある時間間隔は、コア1が少なくとも演算用データをRAM14に書き込むために必要な時間、又は、演算用データ及び比較用データをRAM14に書き込むために必要な時間である。したがって、この時間間隔があいていれば、コア1とコア2は並行してタスクBを実行できる。
Then, the scheduler alternately assigns task B in the order of
なお、定期的に異常判定処理が実行されるのであれば、スケジューラがコア1,2に異常判定処理を割り当てるタイミングを厳密に制御しなくても、いずれは、コア1の後にコア2が異常判定処理を実行する状況が得られる。しかし、コア1が異常判定処理を実行してからコア2が異常判定処理を実行するまでに、コア1の別のタスクがRAM14の演算用データや比較用データを書き換えるおそれがある。このため、好ましくは、コア1が異常判定処理を実行した後、他のタスクを実行するまでに,コア2に異常判定処理を割り当てる。
If the abnormality determination process is periodically executed, the
なお、コア1及びコア2がタスクBの実行を終了すると、タスクBは休止状態になるか又は消滅し、次回の処理タイミングになると生成、又は、生成・起動される。
Note that when the
図6は、コア1又はコア2が実行する異常判定処理(タスクB)の機能ブロック図の一例を示す。コア1とコア2で機能ブロックは同一である。異常判定処理は、データ演算部31、データ比較部36、異常処理部33、データ書き込み部34、データ読み出し部35、及び、データ保持部32を有する。
FIG. 6 shows an example of a functional block diagram of the abnormality determination process (task B) executed by the
データ書き込み部34は、上記のような命令を使用して演算用データ及び比較用データをRAM14に書き込む。
ST Gr0, @Gr1
演算用データを書き込む際、Gr0には、異常判定処理のプログラムに記述されている演算用データが格納されており、Gr1には上述した領域2のRAM14のアドレス(図1のアドレスAが相当し、以下「演算データ記憶アドレス」という)が格納されている。
The
ST Gr0, @ Gr1
When the calculation data is written, the calculation data described in the abnormality determination processing program is stored in Gr0, and Gr1 corresponds to the address of the
また、比較用データをRAM14に書き込む際、Gr0には、データ演算部31が演算用データを用いて演算することで生成した比較用データが格納されている。Gr1には上述した領域2のRAM14のアドレス(図1のアドレスBが相当し、以下「比較データ記憶アドレス」という)が格納されている。
Further, when writing the comparison data into the
データ読み出し部35は、演算用データ及び比較用データをRAM14から読み出す。
LD @Gr1,Gr0
この命令は、レジスタGr1に格納されているRAM14のアドレスから読み出したデータを、レジスタGr0に格納するというものである。演算用データを読み出す際、Gr1にはST命令で使用した演算データ記憶アドレスが格納されている。よって、Gr0には演算用データが記憶される。比較用データを読み出す際、Gr1にはST命令で使用した比較データ記憶アドレスが格納されている。よって、Gr0には比較用データが記憶される。
The
LD @ Gr1, Gr0
This instruction stores data read from the address of the
データ演算部31は、演算用データに予め定められた演算F(x)を施す。演算F(x)の内容は、コア1及びコア2のALUが実装する、算術シフト、論理シフト、加算器、乗算器、除算器等が作動するように定められている。こうすることで、ALUに一部でも異常があれば検出しやすくなる。
The
データ演算部31が行った演算結果は比較用データとして、データ書き込み部34によりRAM14に書き込まれると共に、データ保持部32が保持する。保持するのは、データ読み出し部35がRAM14から読み出した比較用データとの比較のためである。したがって、保持とは、データ読み出し部35による読み出しや不図示の他の処理により破壊されなければよい。C言語などの高級言語によるプログラムの記述上、演算結果は戻り値という変数に格納されているので、保持のための特別な記述は不要である。ニーモニックで表せば、演算結果をGr2などの汎用レジスタに退避しておく記述や、スタック領域に記憶する記述で表すことができる。
MOV Gr0,Gr2
PUSH Gr0
データ比較部36は、データ保持部32が保持する比較用データと、データ読み出し部35がRAM14から読み出した比較用データを比較する。高級言語によるプログラムの記述では、適宜、2つの変数を比較するための命令が用意されている。データ保持部32が保持する比較用データがGr2に記憶され、データ読み出し部35が、RAM14から読み出した比較用データをGr0に格納した場合、ニーモニックでは以下のように表すことができる。
CMP Gr0,Gr2
比較結果は、ステータスフラグに反映される。
The calculation result performed by the
MOV Gr0, Gr2
PUSH Gr0
The
CMP Gr0, Gr2
The comparison result is reflected in the status flag.
異常処理部33は、データ保持部32が保持する比較用データと、データ読み出し部35がRAM14から読み出した比較用データが一致しない場合、異常処理を行う。MPU20が上記のアクセス許否情報23を適用する場合、コア1が異常判定処理(タスクB)を実行した時点で、コア1のデータ比較部36が不一致を検出することはないとしてよい。
The
これに対し、コア2のデータ比較部36は不一致を検出することがあるが、不一致になるのは、コア1に異常がある場合とコア2に異常がある場合の2つの場合がある。このため、不一致の場合、データ比較部36はさらに、定数として予め有している期待値データと、データ保持部32が保持している比較用データを比較することが有効である。期待値データは、正常なコアが演算用データに演算F(x)を施して得られるデータである。
・期待値データとデータ保持部32が保持している比較用データが一致する場合、コア1に異常があると判定する。
・期待値データとデータ保持部32が保持している比較用データが一致しない場合、少なくともコア2に異常があるが、コア1とコア2の両方に異常がある可能性が残る。
On the other hand, the
When the expected value data matches the comparison data held by the
If the expected value data and the comparison data held in the
このため、期待値データとデータ読み出し部35が読み出した比較用データ(コア1の演算結果)を比較する。
Therefore, the expected value data is compared with the comparison data (calculation result of the core 1) read by the
・比較結果が一致すれば、コア2に異常があることを確定できる。
-If the comparison result matches, it can be determined that the
・比較結果が不一致の場合、コア1及びコア2の両方に異常があることを確定できる。
(i) コア1に異常があると判定した場合、監視用のコア(コア2)が被監視コア(コア1)を監視した態様になるので、異常処理は容易である。コア2の異常処理部33は例えば、以下のようなフェールセーフ処理を行う。
-If the comparison results do not match, it can be determined that both the
(i) When it is determined that there is an abnormality in the
(a) コア1をリセットする。復帰しても同様の異常が検出される場合、コア1への電源を遮断し待機しているコアnを起動させ、コア1のタスクをコアnに割り当てる。このようなコアnがない場合、コア1のタスクをコア2に割り当てる。コア3など動作している他のコアがあればコア1が停止したことを通知する。
(a)
(b) 車載ネットワークを介して他のECUに通知する。他のECUは、異常検出を記録したり、警告ランプを点灯するなどの処理を行う。
(ii) コア2に異常があると判定した場合、監視用のコア(コア2)がコア2自身を監視した態様になるので、コア2の異常処理部33は例えば、コア1又は待機しているコアnを起動させこれらのコアに異常を通知する。これにより、コア1又はコアnはコア2と同様のフェールセーフ処理が可能になる。
(iii) コア1とコア2の両方に異常があると判定した場合、マイコン全体をリセットする。または、コアm、nなど待機しているコア、又は、コア3,4など他に動作しているコアがあればコア1,2を停止させ、これらのコアにコア1,2のタスクを割り当てる。
(b) Notify other ECUs via the in-vehicle network. Other ECUs perform processing such as recording abnormality detection and turning on a warning lamp.
(ii) When it is determined that there is an abnormality in the
(iii) If it is determined that both
なお、例外処理部37は、例外ハンドラや例外処理ルーチンが相当し、例外発生の次の命令(ST命令の次の命令)に戻す処理を行う。具体的には、例外発生によりコンテキストを退避し、コンテキストを復帰させる。または、例外による割込みをマスクする処理を行う。
The
〔動作手順〕
図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はフェールセーフ処理を行う。一致する場合は、異常判定処理は終了する。
[Operation procedure]
FIG. 7 is a flowchart illustrating an example of a procedure in which the
S10-1: First, the
S20-1: The
S30-1: The
S40-1: The
S50-1: The
S60-1: The
S70-1: The
S80-1: If they do not match, the
次に、コア2に異常判定処理(タスクB)が割り当てられる。
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はフェールセーフ処理を行う。一致する場合は、異常判定処理は終了する。
Next, an abnormality determination process (task B) is assigned to the
S10-2: First, the
S20-2: The
S30-2: The
S40-2: The
S50-2: The
S60-2: The
S70-2: The
S80-2: If they do not match, the
以上説明したように、本実施形態のマイコンは、コアが比較処理を行うので、特定の比較回路などを必要としない。また、コア1,コア2は、異常判定処理以外は制御タスクを実行できるので、ロックステップCPUなどのように1つのコアが異常監視に占有されない。
As described above, the microcomputer of this embodiment does not require a specific comparison circuit or the like because the core performs comparison processing. Further, since the
また、同一の異常判定処理をコア1,2が実行しても、MPU20の機能を利用してコア2の書き込みを禁止すること及びコア1が演算用データをRAM14に書き込みコア2がそれを読み出すことにより、コア1,2が同じ演算用データを使用して演算できる。また、同様に、コア1が比較用データをRAM14に書き込みコア2がそれを読み出すため、コア2はコア1の演算結果と自コアの演算結果を比較できる。
Even if the
また、MPU20の機能を利用してコア2の書き込みを禁止すること、及び、RAMへの書き込みや読み出しなど両方のコア1,2に必要な処理が異常判定処理に記述されていることにより、コア1とコア2が全く同じ異常判定処理を実行できプログラムサイズ(ROM容量)を節約できる。
In addition, by prohibiting the writing of the
また、本実施形態では、説明のため、タスクBを異常判定処理とした。しかし、制御タスクに、演算用データと演算処理があれば、RAM14への書き込み、読み出し、及び、比較処理を加えるだけで、異常判定処理となるので、制御タスクを利用した異常判定処理も可能である。
In the present embodiment, for the sake of explanation, task B is determined to be abnormality determination processing. However, if the control task has calculation data and calculation processing, it is possible to perform abnormality determination processing simply by adding, reading, and comparing to the
〔その他の例〕
コアが3つ以上ある場合も同様に異常判定することができる。例えば、コア2を監視用のコアとする。この場合、MPU20のアクセス許否情報23には、コア1とコア3〜nのリード及びライトを許可するがコア2のライトを禁止するというアクセス制限が記述される。
[Other examples]
When there are three or more cores, an abnormality can be similarly determined. For example, the
スケジューラは、コア1に異常判定処理を割り当てた後、コア2に異常判定処理を割り当てる。これにより、コア1又はコア2の異常を検出できる。また、スケジューラはコア3に異常判定処理を割り当てた後、コア2に異常判定処理を割り当てる。これにより、コア3又はコア2の異常を検出できる。
The scheduler assigns the abnormality determination process to the
スケジューラは同様の処理をコアnに達するまで繰り返す。このように、複数のコアのうち任意の1つのコアに異常判定処理を割り当てた後、MPU20によりライトが禁止されたコア2に異常判定処理を割り当てれば、コアが3つ以上あっても各コアの異常を検出できる。
The scheduler repeats the same processing until the core n is reached. As described above, after assigning the abnormality determination process to any one of the plurality of cores, if the abnormality determination process is assigned to the
また、上記のアクセス許否情報23では固定的に、コア1はリード及びライトが許可され、コア2はライトが禁止されていることが定めらている。しかしながら、アクセス許否情報23におけるコア1とコア2のアクセス許否を逆にすることもできる。例えば、マイコンの起動時にOSがコア1のアクセス許否情報23をコア2に、コア2のアクセス許否情報23をコア1に書き換えることで、コア1を監視用のコアとすることができる。この場合、スケジューラは、コア2に異常判定処理を割り当てた後に、コア1に異常判定処理を割り当てれば、コア1がコア2を監視することができる。
Further, the
3つ以上のコアがある場合も同様で、マイコンの起動時に例えばOSがアクセス許否情報23を書き換えることで監視用のコアを切り換えることができる。
The same applies to the case where there are three or more cores. For example, when the microcomputer is activated, the OS can rewrite the
11 プロセッサ
12 ROM
14 RAM
20 MPU(Memory Protection Unit)
31 データ演算部
32 データ保持部
34 データ書き込み部
35 データ読み出し部
36 データ比較部
100 マイコン
11
14 RAM
20 MPU (Memory Protection Unit)
31
Claims (5)
第2のCPUが前記記憶手段へデータを書き込むことを禁止するアクセス制御手段と、を有し、
各CPUが共通の異常検出プログラムを実行することで各CPUがそれぞれ実現させる手段として、
演算用データを前記記憶手段の第1のアドレスに書き込むデータ書き込み手段と、
前記記憶手段の前記第1のアドレスから前記演算用データを読み出すデータ読み出し手段と、
前記データ読み出し手段が読み出した前記演算用データに演算を施し演算結果データを生成するデータ演算手段と、
前記データ書き込み手段が前記記憶手段の第2のアドレスに書き込み前記データ読み出し手段が前記記憶手段の前記第2のアドレスから読み出した演算結果データと、前記データ演算手段が生成した演算結果データを比較する比較手段と、を有し、
前記アクセス制御手段により前記第2のCPUが前記記憶手段への書き込みを禁止されている状態で、第1のCPUの前記データ書き込み手段が前記記憶手段の前記第2のアドレスに書き込んだ演算結果データを前記第2のCPUの前記データ読み出し手段が読み出すことで、前記第2のCPUの前記比較手段は前記第1のCPUの前記データ演算手段による演算結果データと、前記第2のCPUの前記データ演算手段による演算結果データとを比較する、情報処理装置。 A plurality of CPUs and storage means accessible by each CPU;
An access control means for prohibiting the second CPU from writing data into the storage means ,
As a means for each CPU to realize each CPU by executing a common abnormality detection program,
Data writing means for writing operation data to the first address of the storage means;
A data reading means for reading the operational data from the first address of said storage means,
A data calculating means for generating an operation result data performing an operation on said calculation data for data reading means has read,
The data writing means writes to the second address of the storage means, and the data reading means compares the calculation result data read from the second address of the storage means with the calculation result data generated by the data calculation means. A comparison means ,
Operation result data written by the data writing unit of the first CPU to the second address of the storage unit in a state where the second CPU is prohibited from writing to the storage unit by the access control unit Is read by the data reading means of the second CPU, so that the comparing means of the second CPU is operated by the data calculating means of the first CPU and the data of the second CPU. An information processing apparatus that compares calculation result data obtained by calculation means .
前記第1のCPUの前記データ読み出し手段が前記記憶手段の前記第1のアドレスから演算用データを読み出し、
前記第1のCPUの前記データ演算手段が、前記データ読み出し手段が読み出した演算用データに演算を施し演算結果データを生成し、
前記第1のCPUの前記データ書き込み手段が演算結果データを前記記憶手段の前記第2のアドレスに書き込み、
前記アクセス制御手段により前記第2のCPUによる前記記憶手段への書き込みが禁止された状態で、前記第2のCPUの前記データ書き込み手段が演算用データを前記記憶手段の前記第1のアドレスに書き込みを試みるが書き込めず、
前記第2のCPUの前記データ読み出し手段が前記記憶手段の前記第1のアドレスから演算用データを読み出し、
前記第2のCPUの前記データ演算手段が、前記第2のCPUの前記データ読み出し手段が読み出した演算用データに演算を施し演算結果データを生成し、
前記アクセス制御手段により前記第2のCPUによる前記記憶手段への書き込みが禁止された状態で、前記第2のCPUの前記データ書き込み手段が演算結果データを前記記憶手段の前記第2のアドレスに書き込みを試みるが書き込めず、
前記第2のCPUの前記データ読み出し手段が前記記憶手段の前記第2のアドレスから演算結果データを読み出し、
前記第2のCPUの前記比較手段は、前記第2のCPUの前記データ読み出し手段が読み出した演算結果データと、前記第2のCPUの前記データ演算手段が生成した演算結果データを比較する、ことを特徴とする請求項1記載の情報処理装置。 It said data writing means of the first CPU writes the calculation data to the first address of said storage means,
Wherein said data reading means in the first CPU reads the operation data from the first address of said storage means,
The data arithmetic unit of the first CPU generates a operation result data subjected to the arithmetic operation to the arithmetic data which the data reading means has read,
It said data writing means of the first CPU writes the calculation result data to said second address of said storage means,
The data writing unit of the second CPU writes the operation data to the first address of the storage unit in a state where writing to the storage unit by the second CPU is prohibited by the access control unit. I can't write ,
Wherein said data reading means of the second CPU reads the operation data from the first address of said storage means,
The data arithmetic unit of the second CPU generates a operation result data performing an operation on said data reading means has read arithmetic data of the second CPU,
The data writing unit of the second CPU writes the operation result data to the second address of the storage unit in a state where the writing to the storage unit by the second CPU is prohibited by the access control unit. I can't write ,
Said data reading means of said second CPU reads the operation result data from the second address of said storage means,
Wherein the comparison means of the second CPU compares the calculation result data by the data reading means of the second CPU has read, the operation result data, wherein the data calculation means is generated in the second CPU, it The information processing apparatus according to claim 1.
さらに、正常な演算結果である期待値データと前記第2のCPUの前記データ演算手段が生成した演算結果データ、又は、前記期待値データと前記第2のCPUの前記データ読み出し手段が前記記憶手段の前記第2のアドレスから読み出した演算結果データを比較し、前記第1のCPU又は前記第2のCPUのどちらに異常があるかを判定する、
ことを特徴とする請求項1又は2いずれか1項記載の情報処理装置。 If the said comparison means of the second CPU is that the calculation result data by the data reading means of the second CPU has read, the second of said operation result data the data computing means is generated by the CPU do not match,
Furthermore, a normal operation result expected value data and the second of said data arithmetic means has generated operation result data of the CPU, or the expected value data and the data reading means said memory means of said second CPU said second comparing operation result data read from the address to determine which of whether there is abnormality in the first CPU or said second CPU,
The information processing apparatus according to claim 1, wherein the information processing apparatus is an information processing apparatus.
読み書きが許可されたCPUと書き込みが禁止されたCPUが切り換わるように、アクセス許否情報を書き換える、ことを特徴とする請求項1〜3いずれか1項記載の情報処理装置。 The access control means has access permission information that defines, for each CPU, permission to read from or write to the storage means,
The information processing apparatus according to any one of claims 1 to 3, wherein the access permission / rejection information is rewritten so that a CPU in which reading and writing is permitted and a CPU in which writing is prohibited are switched.
第2のCPUが前記記憶手段へデータを書き込むことを禁止するアクセス制御手段と、を有する情報処理装置の異常判定方法であって、
各CPUが共通の異常検出プログラムを実行することで各CPUがそれぞれ実現させる手段が実行するステップとして、
データ書き込み手段が、演算用データを前記記憶手段の第1のアドレスに書き込むステップと、
データ読み出し手段が、前記記憶手段の前記第1のアドレスから演算用データを読み出すステップと、
データ演算手段が、前記データ読み出し手段が読み出した前記演算用データに演算を施し演算結果データを生成するステップと、
比較手段が、前記データ書き込み手段が前記記憶手段の第2のアドレスに書き込み前記データ読み出し手段が前記記憶手段の前記第2のアドレスから読み出した演算結果データと、前記データ演算手段が生成した演算結果データを比較するステップと、を有し、
前記アクセス制御手段により前記第2のCPUが前記記憶手段への書き込みを禁止されている状態で、前記第1のCPUの前記データ書き込み手段が前記記憶手段の前記第2のアドレスに書き込んだ演算結果データを前記第2のCPUの前記データ読み出し手段が読み出すことで、前記第2のCPUの前記比較手段は前記第1のCPUの前記データ演算手段による演算結果データと、前記第2のCPUの前記データ演算手段による演算結果データとを比較する、異常判定方法。 A plurality of CPUs and storage means accessible by each CPU;
An access control means for prohibiting a second CPU from writing data to the storage means, and an abnormality determination method for an information processing apparatus,
As the steps executed by the means realized by each CPU by executing the common abnormality detection program for each CPU,
A step of writing data for calculation to the first address of the storage means;
A step of reading data for operation from the first address of the storage means;
Data calculation means, and generating an operation result data performing an operation on said calculation data for data reading means has read,
Comparing means, the data writing means writes to the second address of the storage means, and the data reading means reads the operation result data read from the second address of the storage means, and the calculation results generated by the data operation means Comparing the data , and
The calculation result written by the data writing unit of the first CPU to the second address of the storage unit in a state where the second CPU is prohibited from writing to the storage unit by the access control unit The data reading means of the second CPU reads the data, so that the comparison means of the second CPU performs calculation result data by the data calculation means of the first CPU and the second CPU. An abnormality determination method for comparing calculation result data by a data calculation means .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011225172A JP5699896B2 (en) | 2011-10-12 | 2011-10-12 | Information processing apparatus and abnormality determination method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011225172A JP5699896B2 (en) | 2011-10-12 | 2011-10-12 | Information processing apparatus and abnormality determination method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2013084219A JP2013084219A (en) | 2013-05-09 |
JP5699896B2 true JP5699896B2 (en) | 2015-04-15 |
Family
ID=48529328
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2011225172A Expired - Fee Related JP5699896B2 (en) | 2011-10-12 | 2011-10-12 | Information processing apparatus and abnormality determination method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5699896B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6471510B2 (en) | 2015-01-21 | 2019-02-20 | 株式会社デンソー | Microcomputer |
JP6524989B2 (en) * | 2016-11-15 | 2019-06-05 | トヨタ自動車株式会社 | Operation guarantee method of arithmetic unit |
JP2021076021A (en) * | 2019-11-05 | 2021-05-20 | 株式会社デンソー | Electronic control unit |
JP7062142B2 (en) * | 2020-03-25 | 2022-05-02 | 三菱電機株式会社 | Information processing equipment, information processing methods and information processing programs |
JP7582029B2 (en) | 2021-04-01 | 2024-11-13 | ブラザー工業株式会社 | Printing device |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58127242A (en) * | 1982-01-25 | 1983-07-29 | Nec Corp | Logical circuit |
US8271708B2 (en) * | 2006-02-17 | 2012-09-18 | Phoenix Contact Gmbh & Co. Kg | Method and device adapted for performing single-channel bus coupling of a safety-critical process |
JP2011145900A (en) * | 2010-01-14 | 2011-07-28 | Toyota Motor Corp | Multiprocessor device |
-
2011
- 2011-10-12 JP JP2011225172A patent/JP5699896B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2013084219A (en) | 2013-05-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101067264B1 (en) | Control method and device of computer system | |
JP5316718B1 (en) | Multi-core processor | |
JP5699896B2 (en) | Information processing apparatus and abnormality determination method | |
US9841795B2 (en) | Method for resetting an electronic device having independent device domains | |
JP5745868B2 (en) | Multiprocessor system | |
US20060294348A1 (en) | Multi-processor system | |
JP2013161299A (en) | Information processing apparatus and interface access method | |
JP5532144B2 (en) | Processor, electronic control device, creation program | |
JP5533789B2 (en) | In-vehicle electronic control unit | |
US20170154480A1 (en) | Information processing apparatus and large scale integrated circuit | |
JP5999216B2 (en) | Data processing device | |
JP2011216004A (en) | Microprocessor, electronic control unit, execution ratio switching method | |
JP2011150532A (en) | Information processing apparatus | |
JP7236811B2 (en) | Information processing equipment | |
JP2013061783A (en) | Multi-core processor | |
JP7095513B2 (en) | Multi-core microcomputers and in-vehicle devices | |
JP7498845B2 (en) | Control device and control method | |
JP5703505B2 (en) | Computer with bus partition structure | |
JP2008225710A (en) | Computer system and process-switching method used in the system | |
US9342359B2 (en) | Information processing system and information processing method | |
CN118227278A (en) | Scheduling of duplicate threads | |
JP2012053817A (en) | Multiprocessor system and control method | |
US20100268923A1 (en) | Method and device for controlling a computer system having at least two groups of internal states |
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 |