JPH0340048A - Memory error processing system - Google Patents

Memory error processing system

Info

Publication number
JPH0340048A
JPH0340048A JP1056943A JP5694389A JPH0340048A JP H0340048 A JPH0340048 A JP H0340048A JP 1056943 A JP1056943 A JP 1056943A JP 5694389 A JP5694389 A JP 5694389A JP H0340048 A JPH0340048 A JP H0340048A
Authority
JP
Japan
Prior art keywords
program
checksum
check sum
memory
stored
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.)
Pending
Application number
JP1056943A
Other languages
Japanese (ja)
Inventor
Kazuya Nomura
和哉 野村
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 JP1056943A priority Critical patent/JPH0340048A/en
Publication of JPH0340048A publication Critical patent/JPH0340048A/en
Pending legal-status Critical Current

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

PURPOSE:To improve the reliability of a system by calculating the check sum of a program at the time point of actuating this program, and actuating this program after confirming a fact that the check sum coincides with a check sum value stored in a check sum table. CONSTITUTION:Programs P of the same contents are stored in plural parts on a memory 1, and also, a check sum table 2 for calculating and storing a check sum CS at every program at the time of storing each program on the memory 1 is provided. At the time of actuating some program P, the check sum of this program is calculated at its time point, compared with the check sum value of this program stored in the check sum table 2, and after confirming a fact that they coincide with each other, this program is actuated. When they do not coincide with each other, the check sum is calculated and compared in the same way with regard to the same program stored in other part. In such a manner, the reliability of a system can be improved.

Description

【発明の詳細な説明】 〔概 要コ ECC回路を有さないテータプロセッサゾステムにkい
て、 プログラムの正当性を検査する手段を提供することを目
的とし、 同一内容のプログラムをメモリ上の複数箇所に記憶して
おき、且つ、各プログラムをメモリ上に記憶する際に各
プログラム毎にそのチェックサムを計算して記憶して3
くチェックサムテーブルを設け、あるプログラムを起動
するときに、その時点で当該プログラムのチェックサム
會計算し、前記チェックサムテーブルに記憶しておいた
当該プログラムのチェックサム値と比較し、一致してい
ることを確認した後に当該プログラムを起動するように
する。
[Detailed Description of the Invention] [Summary] The purpose of this invention is to provide a means for checking the validity of a program in a data processor system that does not have a core ECC circuit, and to store multiple programs with the same content in memory. In addition, when each program is stored in memory, the checksum is calculated and stored for each program.
A checksum table is provided, and when a program is started, the checksum of the program is calculated at that time, and the checksum value of the program is compared with the checksum value of the program stored in the checksum table. After confirming that the program is running, start the program.

〔産業上の利用分野〕[Industrial application field]

本発明は、ハードウェア的にメモリエラーを認識出来な
い型のプロセッサ応用システムにhける信頼性設計に関
する。
The present invention relates to reliability design for a type of processor application system in which memory errors cannot be recognized by hardware.

近年の宇宙用マイクロプロセッザ応用ゾスナム等のシス
テムでは、低い消費電力でかつ軽量のシステムが要求さ
れている。このため、ECC回路を持たないシステムが
考えられるが、ECC回路に相当する信頼性設計を行う
必要がある。
In recent years, space microprocessor application systems such as Zosnam require low power consumption and lightweight systems. For this reason, a system without an ECC circuit is conceivable, but it is necessary to perform a reliability design equivalent to an ECC circuit.

〔従来の技術〕[Conventional technology]

従来の主記憶回路に訟いては、1ビット反転エラーを自
動修復したり、2ビノトエラーを認識したりする為にE
CC回路を組み込んでいる。一方、宇宙用マイクロブa
セッサ応用システム等ノように低消費電力、軽量化を望
まれる分野では、低消費電力、軽量化のためECC回路
を付加しない方法が検討されてきた。
In conventional main memory circuits, E is used to automatically repair 1-bit inversion errors and recognize 2-bit errors.
It incorporates a CC circuit. On the other hand, space microbe a
In fields where low power consumption and weight reduction are desired, such as processor application systems, methods without adding an ECC circuit have been studied in order to reduce power consumption and weight.

ところが、宇宙用マイクロプロセッサ応用システムの例
では、宇宙線の影響により、ビット反転が起こる為、ビ
ット反転等のメモリエラーを無視出来ず、主記憶回路に
ECC回路を付加する方法が選択されている。
However, in the example of a space microprocessor application system, bit inversion occurs due to the influence of cosmic rays, so memory errors such as bit inversion cannot be ignored, and a method of adding an ECC circuit to the main memory circuit is selected. .

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

本発明は、ECC回路を付加しない場合IC1−いても
、ソフトウェアによってメモリエラー金認識し、システ
ムの信頼性を同上させる事を目的とする。
The present invention aims to improve the reliability of the system by recognizing memory errors by software even if the IC1- is not added with an ECC circuit.

〔課賠を解決するための手段〕[Means for resolving liability]

本発明では、第1図に示す如く、同一内容のプログラム
Pをメモリ1上の複数箇所に記憶しておき、且つ、各プ
ログラムをメモリ上に記憶する際に各プログラム毎にそ
のチェックサムC8f、計算して記憶してむくチェック
サムテーブル2を設け、あるプログラムPi起動すると
きに、その時点で当該プログラムのチェックサムを計算
し、前記チェックサムテーブル21C記憶しておいた当
該プログラムのチェックサム値と比較し、一致している
ことを確認した後に当該プログラムを起動するようにし
、一致しない場合には、他の箇所に記憶されている同一
プログラムについて同様にチェックサムの計算および比
較を行うようにしたこと金時徴とする。
In the present invention, as shown in FIG. 1, programs P with the same content are stored in multiple locations on the memory 1, and when each program is stored on the memory, its checksum C8f, A checksum table 2 is provided to calculate and store the checksum table 2, and when a program Pi is started, the checksum of the program is calculated at that time, and the checksum value of the program stored in the checksum table 21C is calculated. After confirming that they match, the program is started, and if they do not match, the checksum of the same program stored elsewhere is calculated and compared in the same way. What he did was a credit to Kim Ji Chong.

〔作用〕[Effect]

上記のごとくにすることにより、メモリ上の各データや
命令にECC1付力口し、ECC回路で検査することを
しなくても、起動すべきプログラムの正当性を検査して
から起動することが可能となシ、処理時間はかかるもの
の実用上充分の信頼性をECC回路なしで保証できる。
By doing the above, it is possible to check the validity of the program to be started before starting it, without applying ECC1 to each data and instruction on the memory and checking it with the ECC circuit. If possible, although it takes a long processing time, it is possible to guarantee sufficient reliability for practical use without an ECC circuit.

〔実施例〕〔Example〕

現在実行中のプログラムは、これから制御分わたそうと
するプログラムに、メモリエラーカ発生していないかを
チェックサムを用いて検査し、メモリエラーの発生して
いないプログラムに対して制御をわたす手法である。
This method uses a checksum to check whether the currently running program has a memory error in the program to which it is about to transfer control, and then transfers control to the program with no memory errors. be.

主制御装置と主記憶装置のある仮想システムで、本発明
を説明する。
The present invention will be described using a virtual system with a main controller and a main memory.

仮想するソフトウニアンステムは、第2図に示す様なモ
ジ−−ル構造をして訃り、重要なモジュ−ル1クメモリ
エラー時のりトライの為、同じものが重複して格納され
る。本仮想システムの場合、主フログラム、サブプログ
ラム人、及びBがそれぞれ3本づつ独立して個別の領域
に格納される。
The virtual software system has a module structure as shown in FIG. 2, and the same module is stored redundantly due to a retry when an important module 1 block memory error occurs. In the case of this virtual system, three main programs, three subprograms, and three B programs are independently stored in separate areas.

(第3図参照) 又、メモリレイアウト決定時に、各プログラム対応して
チェックサムテーブル2を作成して卦く。
(See FIG. 3) Also, when determining the memory layout, a checksum table 2 is created for each program.

(第4図参照) ここでチェックサムというのは、あるメモリ領域にある
データ(命令の場合も含む)の1.0のパターンをすべ
て加算または排他的OR演算した結果のパターンをいう
。あるいはその結果に特定の値(例えばそのプログラム
の名称など)を加算したものでもよい。したがって、宇
宙線によりエラーヲ生じる前と後では、チェックサムの
値(パターン)が異なる筈である。
(See FIG. 4) Here, the checksum refers to a pattern resulting from addition or exclusive OR operation of all 1.0 patterns of data (including instructions) in a certain memory area. Alternatively, a specific value (for example, the name of the program) may be added to the result. Therefore, the checksum value (pattern) should be different before and after the error occurs due to cosmic rays.

第4図のようなチェックサムテーブル2が谷プログラム
毎に設けられ、各テーブルにはプログラム名であるID
21と、プログラム長(ワード数又はバイト数)22と
、プログラムの先頭アドレス23と、その全ワード/バ
イトの排他的OR結果であるチェックサム24とを含ん
でいる。プログラムIDは同一のプログラムについては
同一の値であり、例えばプログラムA1.、A2  A
rcは全て同一のIDが付く。
A checksum table 2 as shown in Figure 4 is provided for each valley program, and each table has an ID that is the program name.
21, a program length (number of words or number of bytes) 22, a start address 23 of the program, and a checksum 24 which is the exclusive OR result of all the words/bytes. The program ID has the same value for the same program, for example, program A1. , A2 A
All rcs have the same ID.

仮りに王プログラムからサブプログラムAiコールする
場合を考えて与たい(第5図の流れ図参照)。オす、チ
ェックサムテーブルよりザブプログラムkをサーチする
。むそらく、サブプログラムA1のチェックサムテーブ
ルが見付かるだろう。
Let's consider a case where subprogram Ai is called from the king program (see the flowchart in Figure 5). Then, search for subprogram k from the checksum table. Most likely, the checksum table for subprogram A1 will be found.

この時、チェックサムが計算値と一致したならば、主プ
ログラムはサブプログラムA1に制御をわたせば良い。
At this time, if the checksum matches the calculated value, the main program may transfer control to the subprogram A1.

もし、サブプログラムAIKメモリエラーカ発生し7て
いれば、チェックサムは計算値と一致しないだろう。こ
の場合は、再びチェックサムテーブルをサーチする。そ
してサブプログラムA2(i7発見するだろう。この様
に計算値と、チェックサムが一致するまで、この課程を
繰り返す。もし、チェックサムテーブル上に目的のモジ
ュールが見っからなければ、あきらめて、エラー処理を
行う。
If a subprogram AIK memory error occurs, the checksum will not match the calculated value. In this case, the checksum table is searched again. Then, subprogram A2 (i7 will be found. In this way, repeat this process until the calculated value and the checksum match. If the target module is not found on the checksum table, give up and Perform error handling.

第5区の流れ図では、目的のモジ−−ルはサブルーチン
形式だが、場合によっては呼び出し元に復帰しない事も
ある。
In the flowchart in Section 5, the target module is in the form of a subroutine, but in some cases it may not return to the caller.

本発明では上述の如く、モジュールの実行前にメモリエ
ラーのチエツクをするようにし、メモリエラーがあると
、モジュールの実行を行なわない様にしている。
In the present invention, as described above, memory errors are checked before a module is executed, and if a memory error occurs, the module is not executed.

従って、メモリエラーが発生しても、プログラム上で認
識出来るため、暴走等重大な障害を未然に防止する事が
出来る。
Therefore, even if a memory error occurs, it can be recognized on the program, making it possible to prevent serious problems such as runaway.

〔発明の効果〕〔Effect of the invention〕

以上、説明した様に、本発明によれば、ECC回路を持
たないシステムにおいてもメモリエラーに耐久性のある
システムが構威し、連続稼動時間を長くし、そしてメモ
リエラーを局所化する事が出来、システムの信頼性同上
に寄与するところが大きい。
As explained above, according to the present invention, even in a system without an ECC circuit, a system that is resistant to memory errors can be created, the continuous operation time can be extended, and memory errors can be localized. This greatly contributes to the reliability of the system.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の原理図、 第2図は仮想システムのプログラムモジュール構造図、 第3図は仮想システムのメモリエラー、第4図は仮想シ
ステムのチェックサムテーブル上 仕様図である第四図は仮想システムにかける本発明の一
実施例70−チャートである。 図中、1はメモリ、2はチェックサムテーブルである。
Figure 1 is a diagram of the principle of the present invention, Figure 2 is a diagram of the program module structure of the virtual system, Figure 3 is a memory error in the virtual system, and Figure 4 is a diagram of the specifications on the checksum table of the virtual system. 70 is a chart of an embodiment of the present invention applied to a virtual system. In the figure, 1 is a memory and 2 is a checksum table.

Claims (1)

【特許請求の範囲】 同一内容のプログラムをメモリ上の複数箇所に記憶して
おき、 且つ、各プログラムをメモリ上に記憶する際に各プログ
ラム毎にそのチェックサムを計算して記憶しておくチェ
ックサムテーブルを設け、 あるプログラムを起動するときに、その時点で当該プロ
グラムのチェックサムを計算し、前記チェックサムテー
ブルに記憶しておいた当該プログラムのチェックサム値
と比較し、一致していることを確認した後に当該プログ
ラムを起動するようにし、 一致しない場合には、他の箇所に記憶されている同一プ
ログラムについて同様にチェックサムの計算および比較
を行うようにしたことを特徴とするメモリエラーの処理
方式。
[Claims] A check that stores programs with the same content in multiple locations on a memory, and calculates and stores a checksum for each program when storing each program on the memory. A sum table is provided, and when a program is started, the checksum of the program is calculated at that time, and the checksum value of the program is compared with the checksum value of the program stored in the checksum table. The program is started after checking the program, and if they do not match, the checksums of the same program stored in other locations are similarly calculated and compared. Processing method.
JP1056943A 1989-03-09 1989-03-09 Memory error processing system Pending JPH0340048A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1056943A JPH0340048A (en) 1989-03-09 1989-03-09 Memory error processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1056943A JPH0340048A (en) 1989-03-09 1989-03-09 Memory error processing system

Publications (1)

Publication Number Publication Date
JPH0340048A true JPH0340048A (en) 1991-02-20

Family

ID=13041628

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1056943A Pending JPH0340048A (en) 1989-03-09 1989-03-09 Memory error processing system

Country Status (1)

Country Link
JP (1) JPH0340048A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04289940A (en) * 1991-03-18 1992-10-14 Fujitsu Ltd Data management method
JPH05334196A (en) * 1991-09-30 1993-12-17 Oki Electric Ind Co Ltd Memory management system for memory multiplexing system
JPH08305638A (en) * 1995-05-01 1996-11-22 Nec Corp Rom data check method
WO2022102385A1 (en) * 2020-11-12 2022-05-19 株式会社オートネットワーク技術研究所 On-vehicle ecu, program, and information processing method

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04289940A (en) * 1991-03-18 1992-10-14 Fujitsu Ltd Data management method
JPH05334196A (en) * 1991-09-30 1993-12-17 Oki Electric Ind Co Ltd Memory management system for memory multiplexing system
JPH08305638A (en) * 1995-05-01 1996-11-22 Nec Corp Rom data check method
WO2022102385A1 (en) * 2020-11-12 2022-05-19 株式会社オートネットワーク技術研究所 On-vehicle ecu, program, and information processing method
JP2022077803A (en) * 2020-11-12 2022-05-24 株式会社オートネットワーク技術研究所 On-vehicle ecu, program, and information processing method

Similar Documents

Publication Publication Date Title
EP2370899B1 (en) Poison bit error checking code scheme
US6971041B2 (en) Cache entry error-correcting code (ECC) based at least on cache entry data and memory address
CN103077095B (en) Error correction method and device for stored data and computer system
CN101114218A (en) A Depth-First Exception Handling Method in Complex Instruction Set Architecture
US11409608B2 (en) Providing host-based error detection capabilities in a remote execution device
JP4434548B2 (en) Method for deallocating multiple processor cores for L2 correctable errors
EP1241560A2 (en) Using task description blocks to maintain information regarding operations
US10241860B2 (en) Method of executing data scrubbing inside a smart storage device
JPH044616B2 (en)
CN117149507A (en) Vehicle ECU data updating and checking method and device
JPH0340048A (en) Memory error processing system
US7539851B2 (en) Using register readiness to facilitate value prediction
JPS5835295B2 (en) Data transfer method in master-slave system
CN1871582A (en) Method and device for operand processing in a processor unit
CN105117201A (en) Method and apparatus for data processing
KR20240093640A (en) Data processing network for data processing
US20020133745A1 (en) Self-checking multi-threaded processor
JP2001520415A (en) Method and apparatus for optimizing instruction execution
KR20220158639A (en) Operation device of convolutional neural network, operation method of convolutional neural network and computer program stored in a recording medium to execute the method thereof
US20100070951A1 (en) Generic assembler
CN115016993B (en) Error cleaning method, device and computer equipment suitable for heterogeneous redundancy
CN111061591A (en) System and method for realizing data integrity check based on memory integrity check controller
JPH06505820A (en) How to create a program that is combined from multiple modules
US10162728B2 (en) Method and device for monitoring the execution of a program code
TWI226997B (en) System and method preventing exceptional execution of central processing unit and the computer readable storage medium