JP2690910B2 - Control storage device - Google Patents

Control storage device

Info

Publication number
JP2690910B2
JP2690910B2 JP62260581A JP26058187A JP2690910B2 JP 2690910 B2 JP2690910 B2 JP 2690910B2 JP 62260581 A JP62260581 A JP 62260581A JP 26058187 A JP26058187 A JP 26058187A JP 2690910 B2 JP2690910 B2 JP 2690910B2
Authority
JP
Japan
Prior art keywords
error
microinstruction
control storage
error detection
micro
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
JP62260581A
Other languages
Japanese (ja)
Other versions
JPH01102663A (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 JP62260581A priority Critical patent/JP2690910B2/en
Publication of JPH01102663A publication Critical patent/JPH01102663A/en
Application granted granted Critical
Publication of JP2690910B2 publication Critical patent/JP2690910B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔概要〕 誤りの救済を行なう制御記憶装置に関し、 アクセス時間が短かくて済むことを目的とし、 誤り検出符号を持つマイクロ命令で構成された互いに
同一のマイクロプログラムを複数のモジュール夫々に記
憶した制御記憶部と、該複数のモジュール夫々から読み
出された複数のマイクロ命令夫々の誤り検出を行ない、
その検出結果に応じて誤りの検出されなかったものから
順に上記複数のマイクロ命令より少ない数のマイクロ命
令を選択して取り出す誤り検出及び選択部と、該誤り検
出及び選択部で取り出されたマイクロ命令をビット単位
で票決して単一のマイクロ命令を生成し誤りの救済を行
なう票決部とを有し構成する。 〔産業上の利用分野〕 本発明は制御記憶装置に関し、誤り救済を行なう制御
記憶装置に関する。 マイクロプログラム制御の計算機システムにおいて
は、制御記憶装置にマイクロプログラムが格納されてお
り、この制御記憶装置からマイクロプログラムを構成す
るマイクロ命令が順次読み出され、マイクロ命令に基づ
いて各種の制御が行なわれる。 読み出されるマイクロ命令に誤り(エラー)があると
誤った制御が行なわれるので、これを防止するために誤
りの救済が行なわれている。 〔従来の技術〕 第5図は従来の制御記憶装置の一例のブロック図を示
す。 同図中、アドレスレジスタ10から供給されるアドレス
に指示されて制御記憶部11のマイクロプログラムからマ
イクロ命令が読み出され、データレジスタ12に格納され
る。このマイクロ命令には例えば1ビット誤り訂正かつ
2ビット誤り検出可能な誤り訂正符号(ECC)が付加さ
れている。 データレジスタ12の出力するマイクロ命令は誤り検出
及び訂正部13に供給され、ここで上記誤り訂正符号によ
る誤り検出及び誤り訂正の処理(ECC処理)が行なわ
れ、その後マイクロ命令はデータレジスタ14に格納さ
れ、ここから端子15を介して接続のデコーダ等に供給さ
れる。また分岐のマイクロ命令の場合には分岐先アドレ
スがアドレスレジスタ10に供給される。なおアドレスレ
ジスタ10には端子16よりネクストアドレス又は割込みア
ドレスが入来する。 〔発明が解決しようとする問題点〕 従来装置では、誤り検出及び訂正部13でECC処理を行
なうため、ECC処理の時間が加算され、制御記憶のアク
セス時間が長くなり、また分岐のマイクロ命令でも分岐
先アドレスの確定に時間がかかり、処理が遅くなるとい
う問題点があった。 本発明は上記の点に鑑みてなされたものであり、アク
セス時間が短くて済む制御記憶装置を提供することを目
的とする。 〔問題点を解決するための手段〕 本発明の制御記憶装置は、誤り検出符号を持つマイク
ロ命令で構成された互いに同一マイクロプログラムを複
数のモジュール(24a〜24d)夫々に記憶した制御記憶部
(24)と、 複数のモジュール(24a〜24d)夫々から読み出された
複数のマイクロ命令夫々の誤り検出を行ない、その検出
結果に応じて誤りの検出されなかったものから順に上記
複数のマイクロ命令の数より少ない数のマイクロ命令を
選択して取り出す誤り検出及び選択部(25,26,27)と、 誤り検出及び選択部(25,26,27)で取り出されたマイ
クロ命令をビット単位で票決して単一のマイクロ命令を
生成し誤りの救済を行なう票決部(40)とを有する。 〔作用〕 本発明においては、制御記憶部(24)には同一のマイ
クロプログラムが多重して記憶されており、ここから読
み出された複数のマイクロ命令夫々の誤り検出結果に応
じて選択部(25,26,27)は所定数のマイクロ命令を選択
し、票決部(40)は、この所定数のマイクロ命令をビッ
ト単位で票決して誤りの救済を行なう。 単なる誤り検出にはほとんど時間を要せず、またマイ
クロ命令の選択及び票決にもほとんど時間を要しないた
め誤り救済を行なってもアクセス時間が短かくて済み高
速アクセスが可能となる。 〔実施例〕 第1図は本発明の制御記憶装置の一実施例のブロック
図を示す。 同図中、端子20a,20b,20c夫々にはプログラム,コン
ソール,他システム等からの割込みアドレスが入来し、
これらは割込み指令選択部21で選択されてサービスポイ
ンタレジスタ(SPレジスタ)22に供給される。 SPレジスタ22にはこの他に分岐アドレス,インクリメ
ンタ23よりのネクストアドレスが供給されており、SPレ
ジスタ22はこれらのうちのいずれかのアドレスが格納さ
れ、その出力アドレスは制御記憶部24に供給される。 制御記憶部24は互いに同一構成の4つのモジュール24
a〜24dより構成されている。モジュール24a〜24d夫々に
は同一のマイクロプログラムが重複して記憶されてお
り、SPレジスタ22よりのアドレスによって同一のマイク
ロ命令がこれらのモジュール24a〜24dより読み出され
る。なお、上記マイクロ命令には誤り検出用の1ビット
のパリティ符号が付加されている。 モジュール24a〜24d夫々から読み出されたマイクロ命
令A〜Dは夫々サービスセンスレジスタ(SSレジスタ)
25及び誤り検出及び救済制御部26に供給される。SSレジ
スタ25はモジュール24a〜24d夫々よりのマイクロ命令A
〜D夫々を格納して救済選択部27に供給する。 検出及び救済制御部27はマイクロ命令A〜B夫々につ
いて、マイクロ命令の全ビットのイクスクルーシブオア
演算を行なってパリティ検査を行ない、第2図に示す如
き救済コードVCを発生して救済選択部27に供給する。第
2図において、モジュール誤り状態の欄の「−」は誤り
無し、「1」は誤り有を示し、救済コードVCの欄はその
値を示している。 救済選択部27は第3図に示す如くセレクタ28,29,30よ
り構成されている。セレクタ28は救済コードVCが
「0」,「1」,「2」のとき端子31よりのマイクロ命
令Aを選択し、コードVCが「3」のとき端子32よりのマ
イクロ命令Bを選択して端子35よりマイクロ命令V0とし
て出力する。同様にしてセレクタ29はコードVCが
「0」,「1」のときマイクロ命令B、コードVCが
「2」,「3」のとき端子33よりのマイクロ命令Cを選
択して端子36よりマイクロ命令V1として出力する。セレ
クタ30はコードVCが0のときマイクロ命令C、コードVC
が「1」,「2」,「3」のとき端子34よりのマイクロ
命令Dを選択して端子37よりマイクロ命令V2として出力
する。この救済選択状態は第2図にも示している。 票決部40はマイクロ命令V0,V1,V2夫々をビット単位で
第4図に示す如く多数決による票決を行なって救済され
たマイクロ命令OUTを生成する。つまり、ビット単位で
次の演算を行なっている。 OUT=V0・V1+V1・V2+V2・V0 この票決部40の出力するマイクロ命令OUTは端子41から
後続のデコーダ等に供給され、またマイクロ命令OUTが
分岐の場合には分岐先アドレスがアドレスレジスタ22に
供給される。 ここで、マイクロ命令の誤り検出はパリティ符号を用
いたハードウェアによるイクスクルーシブオア演算であ
るのでほとんど時間を要せず、また、救済選択部27及び
票決部40もハードウェアで構成されほとんど時間を要さ
ない。 従って、誤り救済によるアクセス時間の増加がなく、
高速アクセスが可能となる。 〔発明の効果〕 上述の如く、本発明の制御記憶装置によれば、誤り救
済を行なうことによりアクセス時間が長くなることが防
止され、アクセス時間が短かくて済み高速アクセスが可
能で実用上きわめて有用である。
DETAILED DESCRIPTION OF THE INVENTION [Outline] A control storage device for relieving an error is provided with a plurality of identical microprograms composed of microinstructions having an error detection code for the purpose of shortening access time. Error detection for each of the plurality of microinstructions read out from each of the plurality of modules and the control storage unit stored in each of the modules,
An error detection / selection unit that selects and retrieves a smaller number of microinstructions than the plurality of microinstructions in order from the one in which no error is detected according to the detection result, and the microinstruction retrieved by the error detection / selection unit. A bit-by-bit vote and a voter that generates a single microinstruction and repairs errors. BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a control storage device, and more particularly to a control storage device that performs error relief. In a microprogram-controlled computer system, a microprogram is stored in a control storage device, and microinstructions forming the microprogram are sequentially read from this control storage device, and various controls are performed based on the microinstruction. . If the read microinstruction has an error, an erroneous control is performed. Therefore, an error is remedied to prevent this. [Prior Art] FIG. 5 is a block diagram showing an example of a conventional control storage device. In the figure, instructed by the address supplied from the address register 10, a micro instruction is read from the micro program of the control storage unit 11 and stored in the data register 12. An error correction code (ECC) capable of 1-bit error correction and 2-bit error detection is added to the microinstruction. The microinstruction output from the data register 12 is supplied to the error detection / correction unit 13, where the error detection and error correction processing (ECC processing) by the error correction code is performed, and thereafter the microinstruction is stored in the data register 14. From there, it is supplied to the connected decoder or the like via the terminal 15. In the case of a branch micro instruction, the branch destination address is supplied to the address register 10. The address register 10 receives a next address or an interrupt address from the terminal 16. [Problems to be Solved by the Invention] In the conventional device, since the error detection / correction unit 13 performs the ECC processing, the ECC processing time is added, the control storage access time becomes long, and the branch micro instruction is also used. There is a problem that it takes time to determine the branch destination address and the processing becomes slow. The present invention has been made in view of the above points, and an object of the present invention is to provide a control storage device that requires a short access time. [Means for Solving Problems] A control storage device according to the present invention is a control storage unit in which a plurality of modules (24a to 24d) store mutually identical microprograms each composed of a microinstruction having an error detection code ( 24) and an error of each of the plurality of micro-instructions read from each of the plurality of modules (24a to 24d) is detected, and in accordance with the detection result, an error is not detected. The error detection and selection unit (25,26,27) that selects and retrieves a smaller number of micro-instructions and the micro-instruction that is extracted by the error detection and selection unit (25,26,27) are voted in bit units. And a voting section (40) for generating a single micro instruction and repairing an error. [Operation] In the present invention, the same microprogram is stored in the control storage section (24) in a multiplexed manner, and the selection section (corresponding to the error detection result of each of the plurality of microinstructions read from the selection section ( 25, 26, 27) selects a predetermined number of micro-instructions, and a voting section (40) repairs the predetermined number of micro-instructions in bit units. Since simple error detection requires almost no time, and microinstruction selection and voting take almost no time, the access time is short even if error relief is performed, and high-speed access is possible. [Embodiment] FIG. 1 shows a block diagram of an embodiment of a control storage device of the present invention. In the figure, each of the terminals 20a, 20b, 20c receives an interrupt address from a program, a console, another system, etc.,
These are selected by the interrupt command selector 21 and supplied to the service pointer register (SP register) 22. In addition to this, the SP register 22 is supplied with a branch address and the next address from the incrementer 23. The SP register 22 stores any one of these addresses, and its output address is supplied to the control storage unit 24. To be done. The control storage unit 24 includes four modules 24 having the same configuration.
It consists of a to 24d. The same microprogram is redundantly stored in each of the modules 24a to 24d, and the same microinstruction is read from these modules 24a to 24d by the address from the SP register 22. A 1-bit parity code for error detection is added to the microinstruction. The microinstructions A to D read from the modules 24a to 24d are service sense registers (SS registers), respectively.
25 and the error detection and repair control unit 26. The SS register 25 is a micro instruction A from each of the modules 24a to 24d.
Each of D to D is stored and supplied to the repair selection unit 27. The detection and repair control unit 27 performs an exclusive OR operation on all bits of the microinstructions A to B to perform a parity check, and generates a repair code VC as shown in FIG. 2 to generate a repair selection unit. Supply to 27. In FIG. 2, "-" in the module error status column indicates no error, "1" indicates error, and the repair code VC column indicates the value. The repair selecting section 27 is composed of selectors 28, 29, 30 as shown in FIG. The selector 28 selects the microinstruction A from the terminal 31 when the repair code VC is "0", "1", "2", and selects the microinstruction B from the terminal 32 when the code VC is "3". Output as microinstruction V0 from terminal 35. Similarly, the selector 29 selects the micro instruction B when the code VC is "0" or "1", the micro instruction C from the terminal 33 when the code VC is "2" or "3", and selects the micro instruction from the terminal 36. Output as V1. Selector 30 has micro instruction C and code VC when code VC is 0.
Is "1", "2", "3", the microinstruction D from the terminal 34 is selected and output from the terminal 37 as the microinstruction V2. This rescue selected state is also shown in FIG. The voting unit 40 votes each microinstruction V0, V1, V2 bit by bit as shown in FIG. 4 to generate a rescued microinstruction OUT. That is, the following calculation is performed in bit units. OUT = V0 ・ V1 + V1 ・ V2 + V2 ・ V0 The microinstruction OUT output from this voting unit 40 is supplied from the terminal 41 to the subsequent decoder and the like, and when the microinstruction OUT is a branch, the branch destination address is supplied to the address register 22. To be done. Here, the error detection of the micro-instruction requires almost no time because it is an exclusive OR operation by hardware using a parity code, and the rescue selecting unit 27 and the voting unit 40 are also configured by hardware and take almost no time. Does not need Therefore, there is no increase in access time due to error relief,
High-speed access becomes possible. [Advantages of the Invention] As described above, according to the control storage device of the present invention, it is possible to prevent the access time from becoming long due to the error relief, and to shorten the access time to enable high-speed access, which is extremely useful in practice. It is useful.

【図面の簡単な説明】 第1図は本発明の制御記憶装置の一実施例のブロック
図、 第2図は救済コード及び救済選択の動作を説明するため
の図、 第3図は救済選択部の一実施例の回路図、 第4図は票決回復部の票決を説明するための図、 第5図は従来装置の一例のブロック図である。 図において、 22はサービスポインタレジスタ、 24は制御記憶部、 24a〜24dはモジュール、 25はサービスセンスレジスタ、 26は誤り検出及び救済制御部、 27は救済選択部、 40は票決部 を示す。
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram of an embodiment of a control storage device of the present invention, FIG. 2 is a diagram for explaining a repair code and repair selection operation, and FIG. 3 is a repair selection unit. FIG. 4 is a circuit diagram of an embodiment of the present invention, FIG. 4 is a diagram for explaining voting by the voting recovery unit, and FIG. 5 is a block diagram of an example of a conventional device. In the figure, 22 is a service pointer register, 24 is a control storage unit, 24a to 24d are modules, 25 is a service sense register, 26 is an error detection and repair control unit, 27 is a repair selection unit, and 40 is a voting unit.

Claims (1)

(57)【特許請求の範囲】 1.誤り検出符号を持つマイクロ命令で構成された互い
に同一のマイクロプログラムを複数のモジュール(24a
〜24d)夫々に記憶した制御記憶部(24)と、 該複数のモジュール(24a〜24d)夫々から読み出された
複数のマイクロ命令夫々の誤り検出を行ない、その検出
結果に応じて誤りの検出されなかったものから順に上記
複数のマイクロ命令の数より少ない数のマイクロ命令を
選択して取り出す誤り検出及び選択部(25,26,27)と、 該誤り検出及び選択部(25,26,27)で取り出されたマイ
クロ命令をビット単位で票決して単一のマイクロ命令を
生成し誤りの救済を行なう票決部(40)とを有すること
を特徴とする制御記憶装置。
(57) [Claims] Multiple identical microprograms composed of microinstructions with error detection code are stored in multiple modules (24a
~ 24d) The control storage unit (24) stored in each of them and the plurality of micro instructions read from each of the plurality of modules (24a to 24d) are subjected to error detection, and the error is detected according to the detection result. The error detection and selection unit (25, 26, 27) for selecting and extracting a smaller number of micro-instructions than the above-mentioned plurality of micro-instructions in order from the undetected one, and the error detection and selection unit (25, 26, 27). ), A vote storing unit (40) for generating a single microinstruction for each bit of the microinstruction fetched in (1) and performing error relief.
JP62260581A 1987-10-15 1987-10-15 Control storage device Expired - Fee Related JP2690910B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62260581A JP2690910B2 (en) 1987-10-15 1987-10-15 Control storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62260581A JP2690910B2 (en) 1987-10-15 1987-10-15 Control storage device

Publications (2)

Publication Number Publication Date
JPH01102663A JPH01102663A (en) 1989-04-20
JP2690910B2 true JP2690910B2 (en) 1997-12-17

Family

ID=17349932

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62260581A Expired - Fee Related JP2690910B2 (en) 1987-10-15 1987-10-15 Control storage device

Country Status (1)

Country Link
JP (1) JP2690910B2 (en)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52155020A (en) * 1976-06-18 1977-12-23 Fujitsu Ltd Memory unit
JPS58201142A (en) * 1982-05-19 1983-11-22 Hitachi Ltd Microprogram controlling system
JPS6074032A (en) * 1983-09-30 1985-04-26 Fujitsu Ltd Microprogram controller
JPS615360A (en) * 1984-06-19 1986-01-11 Nec Corp Memory control circuit

Also Published As

Publication number Publication date
JPH01102663A (en) 1989-04-20

Similar Documents

Publication Publication Date Title
US4945512A (en) High-speed partitioned set associative cache memory
US5457789A (en) Method and apparatus for performing memory protection operations in a single instruction multiple data system
JPH052654A (en) Method and circuit for detecting fault of microcomputer
EP0668561A2 (en) A flexible ECC/parity bit architecture
JPS62117200A (en) Unchanged memory
EP0048825A2 (en) Microprocessor controlled machine
GB2201016A (en) Memories and the testing thereof
US4368532A (en) Memory checking method
US4039813A (en) Apparatus and method for diagnosing digital data devices
EP0383899B1 (en) Failure detection for partial write operations for memories
JPH06236326A (en) Method and apparatus for execution of nonatomic-level parity protection for storage of data in random-access memory
US3218612A (en) Data transfer system
US4224681A (en) Parity processing in arithmetic operations
JP2690910B2 (en) Control storage device
US4815025A (en) Arrangement for supervising a data processing system
US4637019A (en) Diagnostic method for addressing arrangement verification
JPS58195257A (en) Fault recovery system of electronic computer
US5144628A (en) Microprogram controller in data processing apparatus
KR100216045B1 (en) Bit arithmetic processing method and apparatus of programmable controller
US4644540A (en) Diagnostic method for addressing arrangement verification
JPS589975B2 (en) Parity bit filling device
EP0971362B1 (en) Data integrity checking apparatus
JPH02207355A (en) Memory readout system
SU1030801A1 (en) Microprogram control device
SU1072050A1 (en) Device for checking error detection/corrrection blocks,operated with hamming code

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees