Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP3553793B2 - Single event upset countermeasure data processing device and single event upset countermeasure processing method - Google Patents
[go: Go Back, main page]

JP3553793B2 - Single event upset countermeasure data processing device and single event upset countermeasure processing method - Google Patents

Single event upset countermeasure data processing device and single event upset countermeasure processing method Download PDF

Info

Publication number
JP3553793B2
JP3553793B2 JP11030898A JP11030898A JP3553793B2 JP 3553793 B2 JP3553793 B2 JP 3553793B2 JP 11030898 A JP11030898 A JP 11030898A JP 11030898 A JP11030898 A JP 11030898A JP 3553793 B2 JP3553793 B2 JP 3553793B2
Authority
JP
Japan
Prior art keywords
program
cache memory
execution
result
cpu
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
Application number
JP11030898A
Other languages
Japanese (ja)
Other versions
JPH11306083A (en
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP11030898A priority Critical patent/JP3553793B2/en
Publication of JPH11306083A publication Critical patent/JPH11306083A/en
Application granted granted Critical
Publication of JP3553793B2 publication Critical patent/JP3553793B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は,放射線等によりデータ保持回路にシングルイベントアップセット(SEU:Single Event Upset)が発生する分野で使用される計算機の技術に係わり,特に衛星に搭載するデータ処理装置や原子炉内で使用するデータ処理装置に好適なシングルイベントアップセット対策データ処理装置およびシングルイベントアップセット対策処理方法に関する。
【0002】
【従来の技術】
まず,シングルイベントアップセット(SEU:Single Event Upset)について説明する。宇宙環境に存在する重粒子等の放射線がCMOS等のLSIに進入すると,データ保持回路(メモリ,レジスタ等)におけるデータの反転,例えば2値論理において,「1→0」や「0→1」というような情報反転現象を引き起こすことが知られている。この反転現象は再書き込みによりデータが回復することから,一過性のソフトエラー現象と考えられ,シングルイベントアップセット(SEU)といわれる。
【0003】
図4は,シングルイベントアップセット(SEU)の例を示す図である。
CPU1に内蔵のキャッシュメモリ(cache memory)11に重粒子が入射されると,放射線のエネルギーがチャージされ,チャージが一定の量になることにより情報の反転が生じる。図4中,se1は,重粒子によるSEUエラーを示す。se1は,キャッシュメモリ11のみで,メインメモリ(MEM:main memory)2には反映されないが,キャッシュメモリ11がストアスルー方式の場合には,se1を使って計算された演算結果であるse2は,メインメモリ2に反映されてしまう。
【0004】
従来は,衛星搭載のデータ処理装置に対して,それほど高速性が要求されなかったため,宇宙用CPU(低性能)を使用し,必要に応じてハードウェア回路を付加することにより,宇宙搭載機器を開発することが行われていた。そして,シングルイベントアップセットが発生しやすいキャッシュメモリを内蔵したCPUは使用されていなかった。
【0005】
しかし,近年の衛星,特に科学衛星においては,ミッションの高機能化,高性能化要求の増加に伴い,高性能のCPUで対処せざるを得ない状況になってきている。現在のところ,宇宙用に開発された数十MIPS以上の高性能な宇宙用CPUは,世の中に存在しない。また,一般的に宇宙用デバイスを開発するには膨大な開発費が必要とされるが,高性能宇宙用CPUを開発する場合にも同様に膨大な開発費用が必要である。しかし,高性能宇宙用CPUを開発したとしても,需要が少なく,製造ラインを保持していくためにも莫大な費用がかかるという問題がある。
【0006】
このような従来の技術的な背景を考慮すると,民生用の高性能CPUを備えたデータ処理装置を衛星に搭載することが必要となる。
【0007】
【発明が解決しようとする課題】
一般の民生用高性能CPUは,コンピュータシステムにおいてCPUとメインメモリとの性能差を吸収するためにキャッシュメモリを内蔵している。一方,従来の衛星搭載のデータ処理装置は高速性が要求されなかったために,キャッシュを内蔵したCPUは使用されていなかった。衛星に搭載するデータ処理装置において,高性能化のためにキャッシュメモリ内蔵のCPUを用いる場合,キャッシュメモリおよびメインメモリに対してSEU対策を考える必要がある。
【0008】
ここで,メインメモリは,通常EDAC(Error Detection And Correction:1ビットエラー訂正・2ビットエラー検出機構)を装備しており,これによりSEU対策が実現されている。このEDACにより,メインメモリでSEUが発生した場合には,1ビットエラーは訂正され,また,2ビットエラーは検出されるので問題が生ずることはない。これによって,メインメモリはクリティカルとならないことが期待されている。
【0009】
一方,CPUに内蔵されるキャッシュメモリは,物量等の関係もあり,通常ではEDAC等のエラー訂正・検出機構が装備されていない。そのため,宇宙放射線環境で使用する場合には,SEUが発生しても表面化しないで演算処理が進むことがある。これにより,誤った結果を生む等のきわめてクリティカルな事態が起こる。
【0010】
本発明の目的は,CPU内のキャッシュメモリで発生するSEUに対処可能なデータ処理装置およびSEU対策方法を実現することである。本発明により,宇宙放射線環境において民生用高性能CPUの使用が可能となる。
【0011】
【課題を解決するための手段】
図1は,本発明のデータ処理装置の構成例を示す。
データ処理装置1は,キャッシュメモリ11を内蔵するCPU10を備えるとともに,CPU10による命令実行機能としてシーケンス制御手段12,結果保存手段13,キャッシュリセット手段15を持つ。また,メインメモリ(図示省略)に複数の処理結果が格納される結果格納領域14を持つ。
【0012】
結果保存手段13は,メインメモリの結果格納領域14に,CPU10で計算されたプログラムの各回の実行結果を保存する手段である。シーケンス制御手段12は,結果格納領域14にある複数の実行結果の比較を行い,実行結果が等しい場合には次のプログラム処理のために,実行結果が等しくない場合には再度同じプログラムを実行するために,実行するプログラムアドレスを制御する手段である。キャッシュリセット手段15は,同じプログラムを繰り返して実行する前にキャッシュメモリ11をリセットする手段である。
【0013】
本発明の基本的な考え方は,プログラムの2回計算方式である。すなわち,基本的には同一プログラムを2回実行し,その実行結果が等しい場合には,次のプログラムの実行へ進む方式を採用する。1回目の計算開始時および2回目の計算開始時におけるキャッシュメモリ11を,実行しようとするプログラムに対して初期状態にしてから処理を進める。そのために2回目以降の各計算開始時にはキャッシュメモリ11をリセットする。
【0014】
キャッシュメモリの特徴として,実行しようとしているプログラム等がキャッシュメモリ内に存在すれば,そのプログラム等を使用して実行する。すなわち,キャッシュメモリの利用によって,そのプログラム等を新たにメインメモリからロードしないため,効率化が図られる。しかし,このようなキャッシュメモリの特徴を利用した場合,宇宙放射線環境でプログラムの2回計算を行う方式では,1回目の計算時にキャッシュメモリで発生したSEUが,2回目の計算時にも残ってしまい,2回目の計算結果に影響を及ぼしてしまうおそれがある。そこで,2回目以降の計算開始時にキャッシュメモリをリセット(パージ)することにより,このような前回の計算で発生したSEUの影響を回避することができる。
【0015】
また,プログラムの処理時間は,キャッシュメモリにおいてSEUが発生する頻度に比べて十分短い。このため,プログラムを2回計算した場合に,2回ともSEUが発生する確率は非常に小さい。
【0016】
したがって,このようにプログラムを2回計算して,その実行結果を比較し,計算結果が異なっているかどうかを調べることにより,キャッシュでSEUが発生した場合にはそれを検知できる。また,計算結果が等しい場合にのみ次の処理に進むため,SEU発生による誤動作を回避できる。
【0017】
【発明の実施の形態】
以下,本発明の実施の形態を説明する。
図2は,本発明の実施の形態における処理およびキャッシュメモリの変遷を説明する図である。
【0018】
本発明を実現するためには,逐次的にプログラムA,B,C,…と処理していくような従来のプログラム処理において,以下のような処理を行う。
まず,CPU10はプログラムの1回目の計算を行う。このとき,シーケンス制御手段12は,CPU10が実行しようとしているプログラムAのアドレス「ep−i]をセットする。CPU10によるプログラムAの命令フェッチに伴い,メインメモリ2からプログラムAがキャッシュメモリ11にロードされ(▲1▼),CPU10で実行される。計算結果(ans−A)は,結果保存手段13によりメインメモリ2の結果格納領域14に格納しておく。
【0019】
ここで,キャッシュメモリ11にSEUが発生したとする(▲2▼)。
次に,プログラムAについて2回目の計算を行うが,その前に,キャッシュリセット手段15によりキャッシュメモリ11を一度リセットし,初期状態にする(▲3▼)。2回目の計算を開始すると,1回目の計算と同様に実行するプログラムAがキャッシュメモリ11上には存在しないので,再びメインメモリ2からキャッシュメモリ11にロードされ(▲4▼),2回目の計算が行われ,計算結果(ans−B)が結果格納領域14に格納される。
【0020】
シーケンス制御手段12は,結果格納領域14に保存された1回目の計算結果(ans−A)と2回目の計算結果(ans−B)とを比較する(▲5▼)。計算結果が等しければ,次の処理(プログラムB)へ進むため,プログラムBのアドレス「ep−i+1」をセットする。もし,計算結果(ans−A,ans−B)が等しくなければ,キャッシュメモリ11をリセットし初期状態にして,プログラムAのアドレス「ep−i]を再セットする。2回目と同様にして3回目の計算を行い,3回目の計算結果が1回目(ans−A)あるいは2回目(ans−B)の計算結果と等しければ,次の処理(プログラムB)に進むため,プログラムBのアドレス「ep−i+1」をセットする。計算結果が等しくない場合には同様の方法の処理を数回繰り返し,予め定めた回数を繰り返しても計算結果が等しくない場合には,CPUエラーとして処理する。
【0021】
このように,2回目の計算の実行開始時にキャッシュメモリ11をリセットして初期状態へ戻すので,キャッシュメモリ11にSEUが発生したとしても,2回目の計算は,SEUの影響を受けることがない。
【0022】
本発明におけるシーケンス制御手段12,結果保存手段13,キャッシュリセット手段15を実現するためのプログラムは,例えばアプリケーションプログラムと組み合わせることが可能なライブラリプログラムとして提供することができる。また,これらの手段をオペレーティング・システムの機能として提供することも可能である。
【0023】
図3は,本発明の実施の形態における処理のフローチャートである。
まず,処理するプログラムのアドレスをセットして(S1),プログラムを実行し(S2),実行結果を所定の結果格納領域14に格納する(S3)。実行は1回目かどうかを判断して(S4),1回目であればキャッシュメモリ11をリセットし(S7),今実行したプログラムのアドレスを再セットして(S8),ステップS2へ戻り,処理を進める。
【0024】
ステップS4の判定で実行が1回目でなければ,結果格納領域14に格納されている新しい実行結果を前の実行結果と比較する(S5)。結果が同じであれば,SEUは発生していないので,次のプログラム実行へ移る。結果が同じでなければ,さらに実行がn回目(nは所定のリトライ回数)かどうかを判断し(S6),n回実行していなければ,キャッシュメモリ11をリセットし(S7),アドレスを再セットして(S8),ステップS2へ戻り処理を進める。所定のリトライ回数であるn回実行しても,実行結果が同じでなければ,SEU以外のエラーと考えられるので,エラー処理へ進む(S9)。
【0025】
本発明を用いたシステムの性能評価のため,ある試験システムで評価用ソフトウェアを実行させて,キャッシュメモリを使用した(cache enable) ときと,キャッシュメモリを使用しなかった(cache disable)ときの実行時間の比較を行った。
【0026】
メモリとしてSRAMを用いた場合,実行時間比は,キャッシュメモリを使用したときのプログラムの実行時間=1に対して,キャッシュメモリを使用しなかったときは実行時間=5であった。また,メモリとしてDRAMを用いた場合のキャッシュメモリを使用したときと使用しなかったときの実行時間比は,1対7であった。
【0027】
すなわち,cache disable 状態での実行時間は,cache enable状態での実行時間に比べて,メモリがSRAMおよびDRAMの場合において,それぞれ5倍および7倍要する。このことは,同じプログラムを2回以上実行したとしても,キャッシュメモリを使用したほうがキャッシュメモリを使用しない場合よりも,高速実行が可能であることを示す。したがって,本発明を用いてシングルイベントアップセット対策を行うことにより,キャッシュメモリを内蔵する民生用高性能CPUを用いることが可能になり,それによる性能向上を図ることができる。
【0028】
なお,衛星搭載機器の場合,通常メモリとしては,SRAMを使用する。これは一般的にSRAMのほうがDRAMよりも耐放射線性に優れているからである。
【0029】
【発明の効果】
以上説明したように,本発明によれば,高性能CPUの内蔵キャッシュのSEUを回避でき,宇宙放射線環境においてはクリティカルな民生用の高性能CPUを,宇宙放射線環境で利用できることにより,衛星ミッションの高性能・高機能要求に対応でき,高価な宇宙用CPUの開発・維持に伴う費用負担を回避できる。
【図面の簡単な説明】
【図1】本発明のデータ処理装置の構成例を示す図である。
【図2】本発明の実施の形態における処理およびキャッシュメモリの変遷を示す図である。
【図3】本発明の実施の形態における処理のフローチャートである。
【図4】シングルイベントアップセット(SEU)の例を示す図である。
【符号の説明】
1 データ処理装置
2 メインメモリ(MEM)
10 CPU
11 キャッシュメモリ
12 シーケンス制御手段
13 結果保存手段
14 結果格納領域
15 キャッシュリセット手段
[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a computer technology used in a field in which a single event upset (SEU) occurs in a data holding circuit due to radiation or the like, and is particularly used in a data processing device mounted on a satellite or in a nuclear reactor. The present invention relates to a single-event upset countermeasure data processing device and a single-event upset countermeasure processing method suitable for a data processing device to perform.
[0002]
[Prior art]
First, a single event upset (SEU) will be described. When radiation such as heavy particles existing in the space environment enters an LSI such as a CMOS or the like, inversion of data in a data holding circuit (memory, register, etc.), for example, in binary logic, “1 → 0” or “0 → 1” It is known to cause such an information inversion phenomenon. This inversion phenomenon is considered to be a transient soft error phenomenon because data is recovered by rewriting, and is called a single event upset (SEU).
[0003]
FIG. 4 is a diagram illustrating an example of a single event upset (SEU).
When heavy particles enter a cache memory (cache memory) 11 built in the CPU 1, the energy of radiation is charged, and the charge becomes a certain amount, thereby inverting information. In FIG. 4, se1 indicates an SEU error due to heavy particles. Although se1 is only in the cache memory 11 and is not reflected in the main memory (MEM: main memory) 2, when the cache memory 11 is of the store-through type, se2, which is an operation result calculated using se1, is This is reflected in the main memory 2.
[0004]
Conventionally, high speed was not required for a data processor mounted on a satellite, so a space CPU (low performance) was used, and a hardware circuit was added as necessary, so that space equipment could be used. The development was done. A CPU having a built-in cache memory in which a single event upset is likely to occur has not been used.
[0005]
However, recent satellites, especially scientific satellites, have been forced to deal with high-performance CPUs as mission demands for higher functionality and higher performance have increased. At present, there is no high-performance space CPU developed for space that has more than several tens of MIPS. In general, developing a space device requires enormous development costs, but developing a high-performance space CPU also requires enormous development costs. However, even if a high-performance space CPU is developed, there is a problem that the demand is small and enormous cost is required to maintain the production line.
[0006]
In view of such a conventional technical background, it is necessary to mount a data processing device having a high-performance CPU for consumer use on a satellite.
[0007]
[Problems to be solved by the invention]
A general consumer high-performance CPU has a built-in cache memory in a computer system to absorb a performance difference between the CPU and the main memory. On the other hand, a conventional data processor mounted on a satellite does not require a high speed, so that a CPU with a built-in cache is not used. When a CPU with a built-in cache memory is used in a data processing device mounted on a satellite for high performance, it is necessary to consider SEU measures for the cache memory and the main memory.
[0008]
Here, the main memory is usually provided with an EDAC (Error Detection And Correction: 1-bit error correction / 2-bit error detection mechanism), thereby implementing SEU measures. When an SEU occurs in the main memory by the EDAC, a one-bit error is corrected and a two-bit error is detected, so that no problem occurs. As a result, the main memory is not expected to be critical.
[0009]
On the other hand, the cache memory built in the CPU also has a relation of physical quantity and the like, and usually does not have an error correction / detection mechanism such as EDAC. For this reason, when used in a space radiation environment, the arithmetic processing may proceed without surface even if SEU occurs. This can lead to extremely critical situations, such as producing incorrect results.
[0010]
An object of the present invention is to realize a data processing device and an SEU measure method capable of dealing with SEU generated in a cache memory in a CPU. The invention allows the use of high performance consumer CPUs in space radiation environments.
[0011]
[Means for Solving the Problems]
FIG. 1 shows a configuration example of a data processing device of the present invention.
The data processing device 1 includes a CPU 10 having a built-in cache memory 11 and has a sequence control unit 12, a result storage unit 13, and a cache reset unit 15 as an instruction execution function of the CPU 10. Further, it has a result storage area 14 for storing a plurality of processing results in a main memory (not shown).
[0012]
The result storage unit 13 is a unit that stores the result of each execution of the program calculated by the CPU 10 in the result storage area 14 of the main memory. The sequence control unit 12 compares a plurality of execution results in the result storage area 14, and executes the next program if the execution results are equal, and executes the same program again if the execution results are not equal. Therefore, it is a means for controlling the program address to be executed. The cache reset unit 15 is a unit that resets the cache memory 11 before repeatedly executing the same program.
[0013]
The basic concept of the present invention is a two-time calculation method of a program. In other words, basically, the same program is executed twice, and when the execution results are equal, a method of proceeding to the execution of the next program is adopted. The process proceeds after the cache memory 11 at the start of the first calculation and at the start of the second calculation is initialized to the program to be executed. For this purpose, the cache memory 11 is reset at the start of each calculation after the second time.
[0014]
As a feature of the cache memory, if a program or the like to be executed exists in the cache memory, the cache memory is used to execute the program or the like. That is, by using the cache memory, the program and the like are not newly loaded from the main memory, thereby improving efficiency. However, when such a feature of the cache memory is used, in a method in which the program is calculated twice in the space radiation environment, the SEU generated in the cache memory at the time of the first calculation remains even at the time of the second calculation. , May affect the result of the second calculation. Therefore, by resetting (purging) the cache memory at the start of the second and subsequent calculations, it is possible to avoid such an influence of the SEU generated in the previous calculation.
[0015]
Further, the processing time of the program is sufficiently shorter than the frequency of occurrence of SEU in the cache memory. Therefore, when the program is calculated twice, the probability that an SEU will occur twice is very small.
[0016]
Therefore, when a program is calculated twice, the execution results are compared, and whether or not the calculation results are different is checked, it is possible to detect the occurrence of SEU in the cache. Further, since the process proceeds to the next process only when the calculation results are equal, a malfunction due to the occurrence of SEU can be avoided.
[0017]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described.
FIG. 2 is a diagram for explaining processing and transition of the cache memory according to the embodiment of the present invention.
[0018]
In order to realize the present invention, the following processing is performed in a conventional program processing in which programs A, B, C,... Are sequentially processed.
First, the CPU 10 performs the first calculation of the program. At this time, the sequence control means 12 sets the address “ep-i” of the program A to be executed by the CPU 10. The program A is loaded from the main memory 2 to the cache memory 11 with the instruction fetch of the program A by the CPU 10. (1) and executed by the CPU 10. The calculation result (ans-A) is stored in the result storage area 14 of the main memory 2 by the result storage means 13.
[0019]
Here, it is assumed that an SEU has occurred in the cache memory 11 ((2)).
Next, the second calculation is performed for the program A, but before that, the cache memory 11 is reset once by the cache reset means 15 to bring it into the initial state ([3]). When the second calculation is started, the program A to be executed in the same manner as the first calculation does not exist in the cache memory 11, so that the program A is loaded from the main memory 2 to the cache memory 11 again ((4)), and the second calculation is performed. The calculation is performed, and the calculation result (ans-B) is stored in the result storage area 14.
[0020]
The sequence control means 12 compares the first calculation result (ans-A) and the second calculation result (ans-B) stored in the result storage area 14 ([5]). If the calculation results are equal, the address "ep-i + 1" of the program B is set to proceed to the next processing (program B). If the calculation results (ans-A, ans-B) are not equal, the cache memory 11 is reset to the initial state, and the address “ep-i” of the program A is reset. The third calculation is performed. If the third calculation result is equal to the first (ans-A) or second (ans-B) calculation result, the process proceeds to the next process (program B). ep-i + 1 "is set. If the calculation results are not equal, the same method is repeated several times, and if the calculation results are not equal even after repeating the predetermined number of times, it is processed as a CPU error.
[0021]
As described above, since the cache memory 11 is reset and returned to the initial state at the start of execution of the second calculation, even if SEU occurs in the cache memory 11, the second calculation is not affected by the SEU. .
[0022]
A program for implementing the sequence control means 12, the result storage means 13, and the cache reset means 15 in the present invention can be provided as a library program that can be combined with, for example, an application program. These means can be provided as a function of the operating system.
[0023]
FIG. 3 is a flowchart of a process according to the embodiment of the present invention.
First, the address of the program to be processed is set (S1), the program is executed (S2), and the execution result is stored in a predetermined result storage area 14 (S3). It is determined whether or not the execution is the first time (S4). If the execution is the first time, the cache memory 11 is reset (S7), the address of the currently executed program is reset (S8), and the process returns to the step S2. Advance.
[0024]
If the execution in step S4 is not the first execution, the new execution result stored in the result storage area 14 is compared with the previous execution result (S5). If the result is the same, no SEU has occurred, and the program moves to the next program execution. If the results are not the same, it is further determined whether or not the execution has been performed n times (n is a predetermined number of retries) (S6). If the execution has not been performed n times, the cache memory 11 is reset (S7) and the address is re-executed. It is set (S8), and the process returns to step S2 to proceed. If the execution result is not the same even after executing the predetermined number of retries n times, the error is considered to be an error other than SEU, and the process proceeds to error processing (S9).
[0025]
In order to evaluate the performance of the system using the present invention, the evaluation software is executed in a certain test system, and execution is performed when a cache memory is used (cache enable) and when the cache memory is not used (cache disable). Time comparisons were made.
[0026]
When the SRAM was used as the memory, the execution time ratio was 1 when the cache memory was used and 1 when the cache memory was not used. The execution time ratio between when the cache memory was used and when the cache memory was not used when the DRAM was used was 1: 7.
[0027]
In other words, the execution time in the cache disable state requires five times and seven times the execution time in the cache enable state when the memory is the SRAM and the DRAM, respectively. This indicates that even if the same program is executed twice or more, the use of the cache memory can be executed at a higher speed than the case where the cache memory is not used. Therefore, by taking measures against a single event upset using the present invention, it becomes possible to use a consumer high-performance CPU having a built-in cache memory, thereby improving the performance.
[0028]
In the case of a satellite device, an SRAM is used as a normal memory. This is because SRAM is generally superior in radiation resistance to DRAM.
[0029]
【The invention's effect】
As described above, according to the present invention, the SEU in the internal cache of the high-performance CPU can be avoided, and in the space radiation environment, a high-performance CPU for a consumer that is critical can be used in the space radiation environment. It can respond to demands for high performance and high functionality, and can avoid the cost burden associated with the development and maintenance of expensive space CPUs.
[Brief description of the drawings]
FIG. 1 is a diagram showing a configuration example of a data processing device of the present invention.
FIG. 2 is a diagram showing a transition of processing and cache memory according to the embodiment of the present invention.
FIG. 3 is a flowchart of a process according to the embodiment of the present invention.
FIG. 4 is a diagram illustrating an example of a single event upset (SEU).
[Explanation of symbols]
1 data processing device 2 main memory (MEM)
10 CPU
11 cache memory 12 sequence control means 13 result storage means 14 result storage area 15 cache reset means

Claims (2)

キャッシュメモリを内蔵するCPUを持つデータ処理装置において,
プログラムの実行結果を格納する結果格納領域に各回の実行結果を保存する手段と,
同じプログラムを複数回実行させ,前記結果格納領域にある複数の実行結果を比較し,実行結果が等しい場合には次のプログラム処理のために,実行結果が等しくない場合には再度同じプログラムを実行するために,実行するプログラムアドレスを制御するシーケンス制御手段と,
同じプログラムを繰り返して実行する前にキャッシュメモリをリセットする手段とを備える
ことを特徴とするシングルイベントアップセット対策データ処理装置。
In a data processing device having a CPU with a built-in cache memory,
Means for storing each execution result in a result storage area for storing a program execution result;
Executes the same program multiple times, compares multiple execution results in the result storage area, executes the next program if the execution results are equal, and executes the same program again if the execution results are not equal Sequence control means for controlling a program address to be executed,
Means for resetting the cache memory before repeatedly executing the same program.
キャッシュメモリを内蔵するCPUを持つデータ処理装置におけるキャッシュメモリのシングルイベントアップセット対策処理方法であって,
目的とする処理を行うプログラムのアドレスをセットし,プログラムを実行する過程と,
プログラムの実行結果を第1の結果格納領域に保存する過程と,
同じプログラムを繰り返して実行する前にキャッシュメモリをリセットする過程と,
前記プログラムのアドレスを再セットし,プログラムを実行する過程と,
プログラムの実行結果を第2の結果格納領域に保存する過程と,
前記第1および第2の結果格納領域にある複数の実行結果を比較し,実行結果が等しい場合には次のプログラム処理に移行し,実行結果が等しくない場合には再度同じプログラムの実行処理またはエラー処理へ移行する過程とを有する
ことを特徴とするシングルイベントアップセット対策処理方法。
A single event upset countermeasure processing method for a cache memory in a data processing device having a CPU with a built-in cache memory,
The process of setting the address of the program that performs the desired processing and executing the program;
Storing a program execution result in a first result storage area;
Resetting the cache memory before repeatedly executing the same program;
Resetting the program address and executing the program;
Storing a program execution result in a second result storage area;
A plurality of execution results in the first and second result storage areas are compared, and if the execution results are equal, the process proceeds to the next program process; if the execution results are not equal, the same program execution process or Shifting to error processing.
JP11030898A 1998-04-21 1998-04-21 Single event upset countermeasure data processing device and single event upset countermeasure processing method Expired - Fee Related JP3553793B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11030898A JP3553793B2 (en) 1998-04-21 1998-04-21 Single event upset countermeasure data processing device and single event upset countermeasure processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11030898A JP3553793B2 (en) 1998-04-21 1998-04-21 Single event upset countermeasure data processing device and single event upset countermeasure processing method

Publications (2)

Publication Number Publication Date
JPH11306083A JPH11306083A (en) 1999-11-05
JP3553793B2 true JP3553793B2 (en) 2004-08-11

Family

ID=14532424

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11030898A Expired - Fee Related JP3553793B2 (en) 1998-04-21 1998-04-21 Single event upset countermeasure data processing device and single event upset countermeasure processing method

Country Status (1)

Country Link
JP (1) JP3553793B2 (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4810972B2 (en) * 2005-10-31 2011-11-09 マックス株式会社 Hot water jetting device and a room where it is applied
JP5521684B2 (en) * 2010-03-25 2014-06-18 富士電機株式会社 Self-diagnosis device and self-diagnosis method
CN104133738B (en) * 2014-07-11 2017-04-12 中国人民解放军信息工程大学 SEU-resistant method for satellite-borne MIMO detector based on SEC-DED
KR102028355B1 (en) * 2018-05-23 2019-10-04 재단법인대구경북과학기술원 Method for predicting on board processors system failure rate, recording medium and apparatus for performing the method
CN109976962B (en) * 2019-03-10 2023-10-20 国家卫星气象中心(国家空间天气监测预警中心) An FPGA single particle flip protection method and system for FY-4A satellite lightning imager
CN111708695A (en) * 2020-06-12 2020-09-25 上海航天计算机技术研究所 The verification method of cache anti-single event flip effect based on AT697

Also Published As

Publication number Publication date
JPH11306083A (en) 1999-11-05

Similar Documents

Publication Publication Date Title
Hari et al. Making convolutions resilient via algorithm-based error detection techniques
US5692121A (en) Recovery unit for mirrored processors
CN100578462C (en) Apparatus, method and system for reducing error rate in clock synchronization dual-modular redundancy system
US5504859A (en) Data processor with enhanced error recovery
US8732551B2 (en) Memory controller with automatic error detection and correction
US7447948B2 (en) ECC coding for high speed implementation
US20090044044A1 (en) Device and method for correcting errors in a system having at least two execution units having registers
US20180129573A1 (en) Error detection
US8095829B1 (en) Soldier-on mode to control processor error handling behavior
US10915402B2 (en) Software fault monitoring
De Oliveira et al. Applying lockstep in dual-core ARM Cortex-A9 to mitigate radiation-induced soft errors
de Oliveira et al. Exploring performance overhead versus soft error detection in lockstep dual-core ARM cortex-A9 processor embedded into Xilinx Zynq APSoC
JP3553793B2 (en) Single event upset countermeasure data processing device and single event upset countermeasure processing method
US6507928B1 (en) Processor cache system with parity protection and method of operation
US10185635B2 (en) Targeted recovery process
CN117112318A (en) Dual-core fault-tolerant system based on RISC-V architecture
Fabrício Filho et al. AxRAM: A lightweight implicit interface for approximate data access
Calhoun et al. Towards a more fault resilient multigrid solver
Tedeschi et al. A low-cost fault tolerance technique for microcontroller-class RISC-V processors
Sakata et al. A cost-effective dependable microcontroller architecture with instruction-level rollback for soft error recovery
Haas Fault-tolerant execution of parallel applications on x86 multi-core processors with hardware transactional memory
Cui et al. Fault‐tolerant method for anti‐SEU of embedded system based on dual‐core processor
Mummidi et al. A novel self-repair mechanism for tiled matrix multiplication unit
US12265444B2 (en) Systems and methods for detection of persistent faults in processing units and memory
US20260003727A1 (en) Scalable architecture for configurable dynamic error correction coding (ecc) memory

Legal Events

Date Code Title Description
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: 20040427

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040430

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080514

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090514

Year of fee payment: 5

LAPS Cancellation because of no payment of annual fees