JPS60254250A - Control sequencer for microdiagnosis having dual microprogram counter - Google Patents

Control sequencer for microdiagnosis having dual microprogram counter

Info

Publication number
JPS60254250A
JPS60254250A JP60100363A JP10036385A JPS60254250A JP S60254250 A JPS60254250 A JP S60254250A JP 60100363 A JP60100363 A JP 60100363A JP 10036385 A JP10036385 A JP 10036385A JP S60254250 A JPS60254250 A JP S60254250A
Authority
JP
Japan
Prior art keywords
microprogram
counter
background
address
processing system
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
JP60100363A
Other languages
Japanese (ja)
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.)
Raytheon Co
Original Assignee
Raytheon Co
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 Raytheon Co filed Critical Raytheon Co
Publication of JPS60254250A publication Critical patent/JPS60254250A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/28Enhancement of operational speed, e.g. by using several microcontrol devices operating in parallel
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
(57) [Summary] This bulletin contains application data before electronic filing, so abstract data is not recorded.

Description

【発明の詳細な説明】 (技術分野) 本発明は、自己試験機能を有する情報処理システムに関
する。より詳細には、故障の検出を行なイ且つ故障のハ
ードウェア・モジュール・レベルへの分離を助けるため
に内蔵試験(B I T : Built−in Te
5t )ハードウェア及びマイクロ作動可能性試験と結
び付いてコンピュータ・システムのハート9ウエア部を
試験するマイクロ診断試験ルーチンを有するデジタル・
コンピュータ・システムに関する。
DETAILED DESCRIPTION OF THE INVENTION (Technical Field) The present invention relates to an information processing system having a self-test function. More specifically, built-in tests (BIT) are used to detect faults and to help isolate faults to the hardware module level.
5t) Digital micro-diagnostic test routines that combine hardware and micro-operability tests to test the hardware parts of a computer system.
Concerning computer systems.

(背景技術) いかなる情報処理システムも、即ち特にデジタル・コン
ピュータ・システムも、作動可能性を確実にするために
幾つかのレベルの試験即ち診断を必要とする。典型的な
ソフトウェア試験は、与えられた期間中にコンピュータ
・システムの小さな部分のみを対象にする。BITとも
呼ばれるノ・−ドウエア支持試験機能は、付加されたシ
ステム試験を行う。しかし、経費が非常に高くなるため
、完全な診断法とはならない。
BACKGROUND OF THE INVENTION Any information handling system, especially digital computer systems, requires some level of testing or diagnostics to ensure operability. Typical software testing targets only a small portion of a computer system during a given period of time. The hardware support test facility, also referred to as BIT, performs additional system testing. However, it is not a complete diagnostic method as it is very expensive.

BITは、初期診断、オンラインBIT及びオフライン
技術T等の3しはルの活動を通して達成されてきた。初
期診断プログラムは、コンピュータ・システムが最初に
ターンオンした時か、あるいは初期プログラム・ロート
9に携わっている時に実行されるマイクロ診断及び作動
可能性試験を含み得る。
BIT has been achieved through three activities such as initial diagnosis, online BIT and offline technology. The initial diagnostic program may include microdiagnostics and operability tests that are performed when the computer system is first turned on or while engaging in the initial program rotor 9.

オンラインBITは、コンピュータが作動している間に
起る故障監視活動、例えば、コンピュータ内の臨界点を
連続的に監視する自己検査ハードウェア故障モニタ等の
領域の全てを含む。オフラインBITは、コンピュータ
故障を分離する時の初期の試みがより十分な試験手順を
必要として失敗した時に必要になる。試験中のコンピュ
ータを外部診断エクセサイザに保守部を通してインター
フェースすることにより論理走査設計(LSD : L
ogic ScanDesign)及びシダネチュア分
析(S i gnatur eAnalysis)等の
オフライン技術を実行できる。論理走査設計は、特に大
規模集積(LSI)論理設計の改良された試験可能性を
もたらす内部ノ・−ドウエアを直列にリンクする方法で
ある。この方法は、直列にアクセスすることのできるレ
ジスタに保持されるべき全ての内部論理状態について配
慮を行い、これによりこれらの内部状態を観察して制御
する。修理が行なわれた後、シダネチュア分析は、何千
という内部試験点シーケンスの、外部診断エクセサイザ
によって直列に読み出され且つ妥当性を検査される1つ
のシダネチュア・ワード9への蓄積を伴う。この外部診
断エクセサイザは、試験中のコンぎユータの内部状態へ
の精密な制御を維持すると同時に、診断ルーチンを実施
することにより、コンピュータ・システムにおける故障
モジュールを分離しようと試みる。オンラインBITは
、パワー・ターン・オンにおいてだけではなく通常のコ
ンピューターオはレーションの間でも、マイクロプログ
ラム制御ユニットに記憶されたマイクロ診断試験ルーチ
ンの使用を含み、これによりこの方法を用いない時に可
能であるよりもかなり早く故障を検出するための手段を
提供する。しかしながら、マイクロプログラム制御ユニ
ットにおいてマイクロ診断を採用するという従来の試み
は、コンピュータ即ちデータ処理システムを、システム
のアイドル状態に押しやって、これにより通常の処理オ
はレーションを終了せしめることを基本としており、従
って、かなりの量の付加的な対応ハードウェアを必要と
していた。
Online BIT includes all areas of fault monitoring activities that occur while the computer is operating, such as self-testing hardware fault monitors that continuously monitor critical points within the computer. Off-line BIT becomes necessary when initial attempts at isolating computer failures fail requiring more thorough testing procedures. Logic scan design (LSD: L
Off-line techniques such as Logic ScanDesign and Science Analysis can be performed. Logic scan design is a method of serially linking internal nodes that provides improved testability, especially for large scale integration (LSI) logic designs. This method takes account of all internal logic states to be held in serially accessible registers, thereby observing and controlling these internal states. After repairs have been made, cidernature analysis involves the accumulation of thousands of internal test point sequences into one cidernature word 9 which is serially read and validated by an external diagnostic exerciser. This external diagnostic exerciser attempts to isolate faulty modules in the computer system by performing diagnostic routines while maintaining precise control over the internal states of the computer under test. Online BIT involves the use of microdiagnostic test routines stored in the microprogram control unit not only at power turn-on, but also during normal computer operation, which would otherwise be possible without this method. Provides a means for detecting failures much earlier than otherwise possible. However, previous attempts to employ microdiagnostics in microprogrammed control units have been based on forcing the computer or data processing system into an idle state of the system, thereby terminating normal processing operations. Therefore, a significant amount of additional supporting hardware was required.

(発明の概要) 本発明は、前景(foreground)プログラムの
オはレーションの間に背i (background)
マイクロ診断マイクロプログラムを実行するマイクロプ
ログラム制御ユニットを有する情報処理システムを開示
するものである。背景マイクロプログラムと前景プログ
ラムの両方を実行するためにメモリが複数のマイクロ命
令を記憶するようになっている。
SUMMARY OF THE INVENTION The present invention provides the ability to create a
An information processing system having a microprogram control unit that executes a microdiagnosis microprogram is disclosed. A memory is adapted to store a plurality of microinstructions for executing both background and foreground microprograms.

マイクロプログラム制御ユニットは、2つのマイクロプ
ログラム・カウンタ、即ち、第1マイクロプログラム・
カウンタが前景プログラムの実行に関与し、第2マイク
ロプログラム・カウンタが、前景プログラムオはレーシ
ョンに影響せずに背景マイクロ診断マイクロプログラム
を制御する2つのマイクロプログラム・カウンタを用い
ることにより前景プログラム・オはレーションと背景マ
イクロプログラムを独立に制御するための制御シーケン
サを含んでいる。この制御シーケンサは更に、マイクロ
命令アト9レス及びデータ・エラーを検出するための予
想/残部コード化法を含んでいる。
The microprogram control unit has two microprogram counters, namely a first microprogram counter;
A counter participates in the execution of the foreground program, and a second microprogram counter controls the foreground program operation by using two microprogram counters that control the background microdiagnostic microprogram without affecting the foreground program operation. contains a control sequencer for independently controlling the ration and background microprograms. The control sequencer further includes a speculative/remainder encoding method for detecting microinstruction addresses and data errors.

更に、この背景マイクロ診断マイクロプログラム、メモ
リに記憶された複数の試験モジュールであって、各々が
、情報処理システムの特定の部分を試験する複数の試験
モジュールを含んでおり、これらの試験モジュールの各
々が、各試験モジュールの実行の証明のための短サイク
ル・コードを含む。
Further, this background microdiagnostic microprogram includes a plurality of test modules stored in memory, each of which tests a particular portion of the information handling system, each of these test modules contains short cycle code for proof of execution of each test module.

本発明は更に、マイクロプログラム制御ユニツトを有す
る情報処理システムにおいて前景プログラムのオRレー
ションの間に背景マイクロプログラムを実行する方法を
開示している。即ち、この方法は、背景マイクロプログ
ラムと前景プログラムを実行するために複数のマイクロ
命令を記憶するステップ及び少なくとも2つのマイクロ
プログラム・カウンタ、即ち第1マイクロプログラム・
カウンタが前景プログラムの実行に関与し且つ第2マイ
クロプログラム・カウンタが背景マイクロプログラムを
制御する2つのマイクロプログラム・カウンタでもって
前景プログラム・オにレーションと背景マイクロプログ
ラムを独立に制御するステップを含んでいる。
The present invention further discloses a method for executing a background microprogram during operation of a foreground program in an information handling system having a microprogram control unit. That is, the method includes the steps of: storing a plurality of microinstructions for executing a background microprogram and a foreground microprogram; and at least two microprogram counters, a first microprogram counter;
independently controlling the foreground program operation and the background microprogram with two microprogram counters, a counter participating in the execution of the foreground program and a second microprogram counter controlling the background microprogram. There is.

本発明は更に、前景プログラムのオはレーションノ間K
 背景マイクロプログラムを実行するマイクロプログラ
ム制御ユニットを有する情報処理システムにおいて故障
検出を実行する方法を開示している。即ち、この方法は
、背景マイクロプログラムと前景プログラムを実行する
ために複数のマイクロ命令を記憶するステップであって
これらのマイクロ命令の各々が上記マイクロ命令の各々
のアドレス及びこのアトゝレスの内容の証明のための第
1コードを有している記憶ステップ、少なくとも2つの
マイクロプログラム・カウンタでもって前景プログラム
及び背景マイクロプログラムを制御するステップ、上記
第1コートゝから現在のマイクロ命令アドレスに対する
コードを表わしている残部コードを発生するステップ、
直前に実施されたマイクロ命令第4レ−ションの間に次
のマイクロ命令アドレスに対する第2コードを発生し且
つ記憶するステップ、及び故障を検出するために残部コ
ードを記憶された第2コードと比較するステップを含む
The present invention further provides that the foreground program is
BACKGROUND A method for performing fault detection in an information handling system having a microprogram control unit that executes a microprogram is disclosed. That is, the method includes the steps of storing a plurality of microinstructions for executing a background microprogram and a foreground microprogram, each of these microinstructions having an address of each of said microinstructions and the contents of said address. a step of storing a first code for proof; a step of controlling a foreground program and a background microprogram with at least two microprogram counters; representing a code for a current microinstruction address from said first code; The steps that generate the remaining code,
generating and storing a second code for the next microinstruction address during the most recently executed fourth microinstruction ration; and comparing the remaining code with the stored second code to detect a failure. including steps to

(実施例の説明) 情報処理内蔵テス) (BIT)機能の有意な改良が、
第1図に示すように、本発明に従って達成されている。
(Explanation of Examples) Significant improvement in the built-in information processing test (BIT) function
As shown in FIG. 1, this has been achieved in accordance with the present invention.

本発明は、2つの独立したマイクロプログラム・カウン
タを用いることにより通常作動している情報処理システ
ムを中断することな(オンラインBITマイクロ診断テ
ストの実行を行うものである。第1マイクロプログラム
・カウンタ24は、一般的に機械マイクロ命令を実行す
るオはレーティング前景プログラムのオはレーションニ
関与し、第2マイクロ診断マイクロプログラム・カウン
タ26は、前景プログラムを実施するマイクロ命令のア
イドル・タイムの期間中に同時に実行されている背景マ
イクロ診断テストの実施を制御する。
The present invention utilizes two independent microprogram counters to perform on-line BIT microdiagnostic tests without interrupting a normally operating information processing system. The second micro-diagnostic microprogram counter 26 is used during the idle time of the micro-instructions executing the foreground programs. Control the execution of background microdiagnostic tests that are running concurrently.

特殊な応用に志向されたタスクを実施するための標準機
械マイクロ命令を用いてマイクロプログラムが実施され
る。1つの74クロプログラムは、メモリ・ユニット6
6に記憶されたマイクロ命令に従ってマイクロプログラ
ム・カウンタ81によって制御される。メモリ・ユニッ
ト66から得られる74クロ命令からのオはレーション
・ツー1’i!、マツぎングPROM74に結合されて
おり、マツピングFROM741d 、このオはレーシ
ョン・コート9によって規定されるマイクロ命令を実施
するマイクロプログラムのための制御記憶装置70に於
ける開始マイクロ命令アト9レスを決定する。制御記憶
装置70から読み出されるマイクロプログラムは、制御
シーケンサ76に供給される。制御シーケンサ76は、
上記の2つのマイクロプログラム・カウンタ24及び2
6を含んでいる。斯くして、マイクロプログラム・カウ
ンタ24は、第2図に示す情報処理システム60の前景
プログラムによって実施されているマイクロ命令に対す
る次のマイクロ命令のアト9レスを発生する。
Microprograms are implemented using standard machine microinstructions to perform tasks directed to specific applications. One 74 chrome program is stored in memory unit 6.
6. Controlled by microprogram counter 81 according to microinstructions stored in 6. The output from the 74-crore instruction obtained from memory unit 66 is ration two 1'i! , which is coupled to a mapping PROM 74 and a mapping FROM 741d, which determines the starting microinstruction address in control storage 70 for a microprogram implementing the microinstruction specified by ration code 9. do. The microprogram read from control storage 70 is supplied to control sequencer 76 . The control sequencer 76 is
The above two microprogram counters 24 and 2
Contains 6. Thus, microprogram counter 24 generates the address of the next microinstruction for the microinstruction being executed by the foreground program of information handling system 60 shown in FIG.

第1図について説明する。マイクロ診断マイクロプログ
ラム・カウンタ26は、処理システム60のアイドル機
械タイムあるいは電力ターンオン時に於て実施される作
動可能性マイクロ診断試験の期間中に前景マイクロプロ
グラムと同時に行なわれる背景マイクロ診断の実施の期
間中に次のマイクロ診断マイクロ命令のアドレスを発生
する。作動可能性マイクロ診断は、前景プログラムが何
も作動しない状態で、マイクロプログラム−カウンタ2
4の制御下で順次様式でもって実施される。マルチプレ
クサ28は、制御記憶装置70に結合された制御レジス
タ71から制御スイッチ161に結合されたマイクロ命
令の特定の制御ビットに基づいて制御スイッチ161論
理によって発生されたアドレス選択148信号に従って
マイクロプログラム・カウンタ(MPC)24あるいは
マイクロ診断マイクロプログラム・カウンタ26のどち
らから出力を選択する。
FIG. 1 will be explained. The micro-diagnostic micro-program counter 26 is used during the performance of background micro-diagnostics that are performed simultaneously with foreground micro-programs during operational potential micro-diagnostic tests that are performed during idle machine time or power turn-on of the processing system 60. generates the address of the next microdiagnostic microinstruction. Operation possibility microdiagnosis is performed when the foreground program is not activated and the microprogram counter 2
4 in a sequential manner under the control of Multiplexer 28 selects the microprogram counter according to address select 148 signals generated by control switch 161 logic based on specific control bits of the microinstruction coupled to control switch 161 from control register 71 coupled to control store 70. (MPC) 24 or microdiagnosis microprogram counter 26.

マルチプレクサ28の出力は、出力アドレス・マルチプ
レクサ32に接続している。制御スイッチ161はまた
、マイクロプログラム・カウンタ24に結合されるマイ
クロプログラム・カウンタ(MPC)ソース選択152
信号を且つマイクロ診断マイクロプログラム・カウンタ
26に結合される背景分岐選択160信号を発生し、こ
れにより次のマイクロ命令のアドレスが選択されている
時に上記のマイクロプログラム・カウンタ24及び26
を切り換える。
The output of multiplexer 28 is connected to output address multiplexer 32. Control switch 161 also provides a microprogram counter (MPC) source selection 152 that is coupled to microprogram counter 24.
generates a background branch select 160 signal which is coupled to the microdiagnostic microprogram counter 26, thereby causing the microprogram counters 24 and 26 to be activated when the address of the next microinstruction is being selected.
Switch.

マイクロプログラム・カウンタ24の出力はまた、マイ
クロプログラム・スタック3oに結合されている。マイ
クロプログラム・スタック3oは、マイクロプログラム
割込みサブルーチンを扱うためのスタック及び関連のス
タック・ポインタを含んでいる。このマイクロプログラ
ム・スタックは、スタックPUSH及びPOPオパレー
ションの期間中ニ用いられる18ビット幅6レベル後入
れ/先出しくLIFO)レジスタである。このスタック
・ポインタは、パリティ予想論理によって6状態UP/
DOWNカウンタな実行するととによって上記のスタッ
ク・オ啄し−ションを制御する。通常はカウンタと結び
付いて用いられるパリティ予想論理は、クロックされた
カウンタ・オはし〜ジョンの後ニパリテイの次の状態を
予想する。上記の6しくルースタックは、現在のマイク
ロプログラム・カウンタ位置及び対応するコートゝを上
記のスタック・ポインタ論理によって決定されたように
LIFOに記憶スる。PUSHオ啄レーシしンハ、マイ
クロプログラム・カウンタを記憶し、POPオRレーシ
ョンは、選択されたLIFO位置をスタック出力に移動
する。マイクロプログラム・スタックの実施例及び作動
は当業者にとっては公知である。
The output of microprogram counter 24 is also coupled to microprogram stack 3o. Microprogram stack 3o includes a stack and associated stack pointers for handling microprogram interrupt subroutines. The microprogram stack is an 18-bit wide, 6-level, last-in/first-out (LIFO) register that is used during stack PUSH and POP operations. This stack pointer is set to 6 states UP/UP by parity prediction logic.
The stack operation described above is controlled by the execution of the DOWN counter. Parity prediction logic, typically used in conjunction with counters, predicts the next state of parity after a clocked counter output. The loop stack described above stores the current microprogram counter position and corresponding code in the LIFO as determined by the stack pointer logic described above. The PUSH operation stores the microprogram counter, and the POP operation moves the selected LIFO location to the stack output. The implementation and operation of microprogram stacks are known to those skilled in the art.

マイクロプログラム・スタック30018ビツト出力は
、出力アドレス・マルチプレクサ32及びマイクロプロ
グラム・カウンタ24に接続されている。
Microprogram stack 30018 bit outputs are connected to output address multiplexer 32 and microprogram counter 24.

出力−y )”レス・マルチプレクサ32への他の入力
は、マルチプレクサ28から直接接合されている18ビ
ットワード、制御記憶装置70に於ける所定のアドレス
に制御を転送することにより現在のマイクロブーログラ
ムの流れの終了を行うアト9レス・ジャム48信号、制
御レジスタ71を通して行なわれる制御記憶部700マ
イクロ命令読出しからのソース選択55信号及び13ビ
ツト・ア1−″レスと及び分岐状態マルチプレクサ22
からの5ビツト・コードを含む18ビット・ワード9を
含んでいる。アドレス・ジャム48信号は、実施されて
いる現在のマイクロ診断マイクロプログラムを即座に一
時停止し、前景マイクロプログラム・カウンタの内容を
スタック30に置き、制御記憶装置70のアドレスを所
定の状態に押しやる。背景マイクロ診断が実施されてい
る場合、この背景マイクロ診断は終了し、背景マイクロ
プロダラム−カウンタ26が(0001) 16に初期
設定され、モードが前景に切り換えられ、前景マイクロ
プログラム・カウンタ24の内容がマイクロプログラム
・スタック30の頂点に置かれる。出力アト9レスφマ
ルチプレクサ32は、その種々のアト゛レス入力からの
制御記憶装置70への入口点のためのマイクロ命令アト
9レス50を選択する。マツプ・イネーブル52信号は
また、出力アドレス・マルチプレクサ32によって発生
する。マイクロ命令アトゝレスがマツピングFROM7
4によって発生されると、上記のアドレスは、制御記憶
装置70に於けるマイクロプログラム・エントリ・アト
8レスを決定する。制御記憶装置70からのマイクロ命
令ワードは、第5図に示すような且つ以下に説明される
切換え163及びINHIBIT164である2つの制
御信号を制御スイッチ161の入力に供給する。
Output -y)'' The other input to the multiplexer 32 is an 18-bit word that is directly concatenated from the multiplexer 28 and outputs the current microprogram by transferring control to a predetermined address in the control store 70. At9res jam 48 signal, source select 55 signal from control store 700 microinstruction read through control register 71 and 13-bit a1-''res and branch status multiplexer 22
contains an 18-bit word 9 containing a 5-bit code from The address jam 48 signal immediately suspends the current microdiagnostic microprogram being executed, places the contents of the foreground microprogram counter on stack 30, and forces the control store 70 address into a predetermined state. If a background microdiagnosis is being performed, this background microdiagnosis is terminated, the background microprogram counter 26 is initialized to (0001) 16, the mode is switched to foreground, and the contents of the foreground microprogram counter 24 are is placed at the top of the microprogram stack 30. Output address φ multiplexer 32 selects microinstruction address 50 for entry point into control store 70 from its various address inputs. A map enable 52 signal is also generated by output address multiplexer 32. Microinstruction address mapping FROM7
4, the above address determines the microprogram entry address in control store 70. A microinstruction word from control store 70 provides two control signals to the inputs of control switch 161, toggle 163 and INHIBIT 164, as shown in FIG. 5 and described below.

再び第1図について説明する。制御装置20は、内部デ
ータ・パス40、分岐状態マルチプレクサ22から入力
を且つ制御レジスタ71から機能選択19信号を受ける
。制御装置20は、制御シーケンサ76に対する幾つか
の論理機能、例えば、機能選択19コービを復号する機
能及び内部故障状態を故障54と呼ばれる1つの故障指
示に合成する機能を実施する。制御装置20の出力は、
分岐状態マルチプレクサ22及びマイクロプログラム・
スタック30に接続されており、実施されるべきオにレ
ーションを規定することによって復号された機能を行う
。この分岐状態マルチプレクサ22は、制御装置20、
制御レジスタ71、分岐状態42及びコード検査器56
から信号を受け、次に、マイクロプログラム・カウンタ
24、マイクロ診断マイクロプログラム・カウンタ26
及び出力アトゝレス・マルチプレクサ32に結合されて
いる分岐アドレスを発生する。従って、マイクロ命令ア
ビレス50のソースは、マツピングFROM74につけ
加えて、分岐状態、マイクロプログラムφカウンタ24
及び26の1つ、マイクロプログラム・スタック30あ
るいはアドレス・ジャム48からのソースであり得る。
FIG. 1 will be explained again. Controller 20 receives inputs from internal data path 40, branch state multiplexer 22, and function select 19 signals from control register 71. Controller 20 implements several logical functions for control sequencer 76, such as decoding function selection 19 Kobi and combining internal fault conditions into a single fault indication called fault 54. The output of the control device 20 is
Branch state multiplexer 22 and microprogram
It is connected to the stack 30 and performs the decoded functions by defining the operations to be performed. This branch state multiplexer 22 includes a control device 20,
Control register 71, branch status 42 and code checker 56
receives signals from the microprogram counter 24 and microdiagnostic microprogram counter 26.
and generates a branch address which is coupled to an output address multiplexer 32. Therefore, the source of the microinstruction aviles 50 is the mapping FROM 74 as well as the branch state, the microprogram φ counter 24
and 26, the microprogram stack 30 or the address jam 48.

どのエグゼクティブ・モードが実施されているか即ち背
景あるいは前景かに応じて、一度に、2つのマイクロプ
ログラム・・カウンタ24及び26の一方のみが出力ア
ト9レス・マルチプレクサ32に使用できる。どの場合
も、使用可能なマイクロプログラム・カウンタは実施マ
イクロ・サイクルが切換え実施モードのプロセスにない
限す、マイクロ−10グラム・アトゝレスの値は1だけ
増分した状態でマイクロ・サイクルの終りにロードされ
る。この状態に於て、出力アドレス・マルチプレクサ3
2ハ、制御を行う寸前のマイクロプログラム・カウンタ
から制御記憶装置70に強制的にマイクロ命令アドレス
を供給させられる。一方、現在使用可能であるが、出て
行くマイクロプログラム・カウンタには、このカウンタ
が出力アドレス・マルチプレクサ32に供給しようと意
図していたアドレスがロードされる。これは、実施制御
が、出て行くマイクロプログラム・カウンタに戻る時に
このマイクロプログラムが戻るであろうアドレスである
。制御シーケンサ76は、プレプログラミングの結果マ
イクロプログラム自体からマイクロプログラム・カウン
タ24及び26の切換えをするように命令される。
Depending on which executive mode is being implemented, background or foreground, only one of the two microprogram counters 24 and 26 is available to the output address multiplexer 32 at a time. In all cases, the available microprogram counter will be incremented by 1 at the end of the microcycle, unless the executing microcycle is in a process in switched execution mode. loaded. In this state, output address multiplexer 3
2c. The microprogram counter that is about to take control is forced to supply the microinstruction address to the control storage device 70. Meanwhile, the currently available but outgoing microprogram counter is loaded with the address that this counter was intended to provide to the output address multiplexer 32. This is the address to which this microprogram will return when execution control returns to the outgoing microprogram counter. Control sequencer 76 is commanded to switch microprogram counters 24 and 26 from the microprogram itself as a result of preprogramming.

次に実施されるべきマイクロ命令のアドレスは、制御を
行なっているマイクロプログラム−カウンタからソース
が出ており、1つのマイクロ命令ソース選択フィールド
によって規定されるアドレスは出て行くマイクロプログ
ラム・カウンタに送られる。
The address of the next microinstruction to be executed is sourced from the controlling microprogram counter, and the address defined by one microinstruction source selection field is sent to the outgoing microprogram counter. It will be done.

第2図について説明する。第2図には、情報処理システ
ム600ブロック図が示されている。この情報処理シス
テム60は、制御ユニット62、演算ユニット64、メ
モリユニット66及び入力/出カニニット90を含んで
いる。この制御ユニット62及び演算ユニット64は共
に中央処理装置を形成しており、この中央処理装置は、
システム・アドレス・バス85及びシステム・データ・
バス87を含むシステム・バス89を経由してメモリ・
ユニット66及び入力/出カニニット90にインターフ
ェースしている。
FIG. 2 will be explained. FIG. 2 shows a block diagram of an information processing system 600. This information processing system 60 includes a control unit 62, an arithmetic unit 64, a memory unit 66, and an input/output unit 90. The control unit 62 and the calculation unit 64 together form a central processing unit, which includes:
system address bus 85 and system data bus 85;
memory via system bus 89, including bus 87.
It interfaces to unit 66 and input/output unit 90.

制御ユニット62は、第1図に示すように制御シーケン
サ76を含んでいる。この制御シーケンサ76は、マイ
クロ命令データ、プロセッサ・バス・データ、又は中央
処理装置内の幾つかの所定の状態の検査によって決定さ
れるようにマイクロ命令アドレス50をメモリ即ち制御
記憶装置70に供給する。
Control unit 62 includes a control sequencer 76 as shown in FIG. The control sequencer 76 provides microinstruction addresses 50 to a memory or control store 70 as determined by examination of microinstruction data, processor bus data, or some predetermined state within the central processing unit. .

各制御シーケンサ・システム・クロック106サイクル
の期間中1回、次のアドレス決定が行なわれる。1つの
マイクロプログラムの各マイクロ命令は、マイクロプロ
グラムの次の段階のアビレスのソースを規定する。制御
記憶装置70の出力は、1つのマイクロ命令ワードを構
成する136ビツトを有する制御レジスタ71を含んで
いる。マイクロ命令アドレス50に対する幾つかのソー
スの1つである8KX24ビツト・マツピングFROM
74は、制御レジスタ71からの命令流又は内部データ
・バス4゜に於ける演算数コード及び演算数規定要因を
マイクロ命令アドレスに変換する。情報処理システム6
0の各モジュールには内蔵テス) (BIT)データ 
・状態情報を集めるための内蔵テスト/保守制御装置(
BMC)72が配設されている。各BMG72は、シス
テム・レベル・ビット保守デバイスにシステムBIT7
3状態情報を報告する。このシステム・しはル・ビット
保守デノミイスは、図示されていないが、入力/出カニ
ニット90に存在し得る。斯かるシステム・レイル・デ
バイスハ、どのモジュールが全ての故障報告の分析に基
づく故障を生じたかを決定し、故障指示を行う。
Once during each control sequencer system clock cycle of 106, the next address determination is made. Each microinstruction of a microprogram defines the source of the aviles for the next stage of the microprogram. The output of control store 70 includes a control register 71 having 136 bits making up one microinstruction word. 8KX24 bit mapping FROM that is one of several sources for microinstruction address 50
74 converts the instruction stream from the control register 71 or the operand code and operand definition factor in the internal data bus 4° into a microinstruction address. Information processing system 6
Each module of 0 has built-in test) (BIT) data.
・Built-in test/maintenance control equipment to collect condition information (
BMC) 72 is installed. Each BMG72 has a system level bit maintenance device with a system BIT7
3 Reports state information. This system bit maintenance denominator may be present in the input/output unit 90, although not shown. The system rail device determines which module caused the failure based on analysis of all failure reports and issues a failure indication.

再び第2図について説明する。演算ユニット64は、レ
ジスタ演算論理ユニツ) (RALU)80を含んでお
り、このユニット80は、マイクロプログラム・カウン
タ81を含むレジスタ配列、(第1図に示すように)マ
ルチ機能ALU、シシト及び符号拡張論理及び種々のデ
ータ径路を含んでいる。RALU80によって実行され
る機能は、主にマイクロプログラム制御ユニット62に
よって決定される。RALU80は、システム・バス・
インターフェース88 K−結合されている内部データ
・バス40に結合されている。RALUはまた、拡張精
密情報及びポイント・オはレーションの浮動に用いられ
る乗算器78に結合されている。RALU80と乗算器
78の両方の実施例は、当業者にとっては公知である。
FIG. 2 will be explained again. The arithmetic unit 64 includes a register arithmetic and logic unit (RALU) 80, which includes a register array including a microprogram counter 81, a multifunction ALU (as shown in FIG. Contains extended logic and various data paths. The functions performed by RALU 80 are primarily determined by microprogram control unit 62. RALU80 is a system bus
Interface 88 K-coupled to internal data bus 40. The RALU is also coupled to a multiplier 78 that is used for extended precision information and floating point rations. Implementations of both RALU 80 and multiplier 78 are known to those skilled in the art.

RALUはまた、連想登録演算論理ユニツ) (ARA
LU)82に結合されており、この連想登録演算論理ユ
ニット82は、仮想アドレスを仮想アドレス境界に関連
させ、次に適当な再配置量をこの仮想アドレスに加算す
ることによってメモリ管理ユニットとして機能する。A
RALU 82は、2つの個別ARALUでもって実施
することができ、この場合、一方のARALUが仮想ア
ドレス境界ケ記憶し、再配置量は第2ARALUのレジ
スタに記憶される。第1 ARALUは、各々の16仮
想アドレス境界から入って来る仮想アト9レスを減算す
る。この減算が行なわれている間、第2 ARALUは
、入って来る仮想アドレスを16再配置量の各々に加算
する。第1 ARALUが第1仮想アドレス境界を識別
すると、即ち、入って来る仮想アドレスより大きいか等
しくなると、入口点が第2 ARALUに送られ、第2
 ARALUは次に適当なアドレスをシステム・アドレ
ス・バス85に出力する。
RALU is also an Associative Registration Arithmetic Logic Unit) (ARA
(LU) 82, which associative registration logic unit 82 functions as a memory management unit by associating a virtual address with a virtual address boundary and then adding an appropriate relocation amount to the virtual address. . A
RALU 82 may be implemented with two separate ARALUs, where one ARALU stores virtual address boundaries and the relocation amount is stored in a register of the second ARALU. The first ARALU subtracts the incoming virtual address from each of the 16 virtual address boundaries. While this subtraction is occurring, the second ARALU adds the incoming virtual address to each of the 16 relocation quantities. When the first ARALU identifies a first virtual address boundary, i.e. is greater than or equal to the incoming virtual address, the entry point is sent to the second ARALU and the second
ARALU then outputs the appropriate address onto system address bus 85.

メモリ・ユニット66は、2つの16KX48ビツト・
ランダムアクセスメモリ100及び102を含んでいる
が、容易に拡張することができる。1つのメモリ・アド
レス制御装置96が、システム・アドレス・バス85と
メモリ100及び102の間に接続されている。この制
御装置は、メモIJ 100及び102の制御に必要な
全ての機能を実行する。第1リツプラ/バイト調整器(
RIBA)94が、システム・データ・バス87とメモ
リ100の間に接続されており、第2リツプラ/バイト
調整器(RIBA)98が、システム・データ・バス8
7とメモリ102の間に接続されている。このRIBA
94及び98は、データ調整、バーイト及びノ・−フ・
ワード転送、エラー検出及び補正、リツプラ・エラー補
正及びバス・インターフェースを実行する多機能素子で
ある。リツプラ・エラー補正は、同等のデバイスの直線
配列にある任意の欠陥メモリ・デバイスをその最寄シの
デバイスでもって置き換え、次にこのデバイスをその最
寄りのデバイスでもって置換えることによって実行され
る。これらの全体のプロセスは、最後の活発なデバイス
が最初に得られるスば一スでもって置き換えられる迄、
サブエレメントの配列を「リプル」ダウンする。従来の
直接置換方法に対するこのスイッチング法の利点は、比
較的単純で且つ確実に実施される制御アルゴリ〆ムに対
するその従順性にある。リツプラのより細部については
、米国特許第3,805,039号に開示されている。
Memory unit 66 includes two 16K x 48 bit memory units.
It includes random access memories 100 and 102, but can be easily expanded. A memory address controller 96 is connected between system address bus 85 and memories 100 and 102. This control device performs all the functions necessary to control Memo IJ 100 and 102. 1st Ritz Puller/Bite Adjuster (
RIBA) 94 is connected between system data bus 87 and memory 100, and a second ripple/byte adjuster (RIBA) 98 is connected between system data bus 87 and memory 100.
7 and memory 102. This RIBA
94 and 98 are data adjustment, byte and no-f.
It is a multifunctional element that performs word transfer, error detection and correction, ripple error correction, and bus interfacing. Ripple error correction is performed by replacing any defective memory device in a linear array of equivalent devices with its nearest neighbor and then replacing this device with its nearest neighbor. These entire processes continue until the last active device is replaced by the first available swap.
"Ripple" down the array of subelements. The advantage of this switching method over conventional direct replacement methods is its amenability to control algorithms that are relatively simple and reliably implemented. More details about the Rippler are disclosed in US Pat. No. 3,805,039.

入力出カニニット90は、I10制御装置91及びI1
0インターフェース92を含む。I10制御装置91は
、I10命令を実施し且つ、種々のI10ポートを制御
するために適当な割込みを発生する。
The input/output unit 90 has an I10 control device 91 and an I1
0 interface 92. I10 controller 91 generates appropriate interrupts to implement I10 instructions and control the various I10 ports.

I10インターフェース92は、標準周辺装置、並列あ
るいは直列インターフェース等の特定インターフェース
を含んでいる。更に入力/出カニニット90は、割込み
を扱うための優先割込みネットワーク84、情報処理シ
ステムの現在の状態に関連する情報を保持するためのプ
ロセッサ制御レジスタ86、及びシステムバス制御、シ
ステム・バス・アービトレーション命令プレフェッチ制
御及び記憶クロック分配制御を行うためのシステムバス
インターフェース88を含んでいる。
I10 interface 92 includes standard peripherals, specific interfaces such as parallel or serial interfaces. The input/output unit 90 also includes a priority interrupt network 84 for handling interrupts, a processor control register 86 for holding information related to the current state of the information handling system, and system bus control, system bus arbitration instructions. It includes a system bus interface 88 for prefetch control and storage clock distribution control.

第3図について説明する。この図には、背景マイクロプ
ログラム・カウンタ24及び背景マイクロ診断マイクロ
プログラム・カウンタ26のための論理の実施例が示さ
れている。マイクロプログラム・カウンタ24は、13
ビツトレジスタ124に接続されている4/1マルチプ
レクサ120を含んでおり、このレジスタ124は、マ
イクロ命令アドレスを記憶する。また、4/1マルチプ
レクサ122が、5ビツトレジスタ126に接続されて
いる。このレジスタ126は、アドレス指定エラーを検
出するためのマイクロプログラム・カウンタ・コードを
記憶するためのものである。この5ビツト・マイクロプ
ログラム・カウンタ・コードは、13ビツト・マイクロ
命令アドレスの関数としてコード発生器142によって
発生される。このようにして発生されたコードは、制御
記憶装置70を制御シーケンサ76アドレス径路に対し
て検査するために、制御レジスタ71から制御シーケン
サ76に入るマイクロコード・ビットから抽出された同
等のコードと第1図及び第4図に示すように、コート9
検査器56において比較される。マイクロプログラム・
カウンタ24はまた、スタック・アトゝレス154ライ
ンからアドレス゛ を受け、関連のスタック・コー)1
58がマイクロプログラム・カウンターコート9・レジ
スタ126に与えられる。
FIG. 3 will be explained. In this figure, an example of the logic for the background microprogram counter 24 and the background microdiagnostic microprogram counter 26 is shown. The microprogram counter 24 is 13
It includes a 4/1 multiplexer 120 connected to a bit register 124, which stores the microinstruction address. A 4/1 multiplexer 122 is also connected to a 5-bit register 126. This register 126 is for storing microprogram counter code for detecting addressing errors. This 5-bit microprogram counter code is generated by code generator 142 as a function of a 13-bit microinstruction address. The code thus generated is matched with an equivalent code extracted from the microcode bits entering the control sequencer 76 from the control register 71 in order to check the control store 70 against the control sequencer 76 address path. As shown in Figures 1 and 4, the coat 9
A comparison is made in the tester 56. Micro program/
The counter 24 also receives the address from the stack address line 154 and the associated stack code) 1
58 is applied to the microprogram countercoat 9 register 126.

背景マイクロ診断マイクロプログラム・カウンタ26は
、マイクロ命令アトゞレスを記憶するための13ビツト
レジスタ136に接続された2/1マルチプレクサ13
2及び5ビツトマイクロゾログラム・カウンタ・コ−1
・゛を記憶するための5ビツト・レジスタ138に接続
された2/1マルチプレクサ134を含んでいる。マイ
クロ命令アドレス50は、レジスタ124又はレジスタ
136に記憶される前にアトゝレス・インクリメンタ1
40によって増分する。コード発生器142は、マイク
ロ命令アトゝレスに関連し且つ第4図の所で後に説明す
るマイクロプログラム・カウンタ・コードを発生する。
Background Microdiagnostics Microprogram counter 26 includes a 2/1 multiplexer 13 connected to a 13-bit register 136 for storing microinstruction addresses.
2 and 5 bit microzologram counter code 1
• includes a 2/1 multiplexer 134 connected to a 5-bit register 138 for storing . Microinstruction address 50 is passed through address incrementer 1 before being stored in register 124 or register 136.
Increment by 40. Code generator 142 generates microprogram counter code associated with the microinstruction address and described below in FIG.

前景マイクロプログラム・カウンタ24は、MPCソー
ス選択152信号によってゲートされた時に、マルチウ
ェイ分岐アドレス150ライン、スタック154ライン
又はマイクロ命令アドレス50ラインを経由してアドレ
スを受ける。背景マイクロ診断マイクロプログラム・カ
ウンタ26は、背景分岐選択160信号によってゲート
された時にマイクロ命令アドレス50ライン又はマルチ
ウェイ分岐アドレス150ラインを経由してアドレスを
受ける。マイクロ診断アボート状態が起きると、DIA
GABORT44信号が第5図に示すようにアドレス・
ジャム48によって発生し、これにより制御が前景マイ
クロプログラム・カウンタ24に転送される。アドレス
選択148信号は、プログラムφカウンタ・アドレス1
44及びその関連プログラム・カウンタ・コード143
が、前景マイクロプログラム・カウンタ24あるいは背
tマイクロ診断マイクロプログラムΦカウンタ26から
来るのかを選択する。第3図に示す論理機能を実行する
のに要する集積回路は、当業者には公知である。
Foreground microprogram counter 24 receives addresses via the multiway branch address 150 line, stack 154 line, or microinstruction address 50 line when gated by the MPC source select 152 signal. The background microdiagnostic microprogram counter 26 receives addresses via the microinstruction address 50 line or the multiway branch address 150 line when gated by the background branch select 160 signal. When a microdiagnostic abort condition occurs, the DIA
The GABORT44 signal is set to address as shown in Figure 5.
This is caused by a jam 48, which transfers control to the foreground microprogram counter 24. Address selection 148 signal is program φ counter address 1
44 and its associated program counter code 143
selects whether it comes from the foreground microprogram counter 24 or the back microdiagnostic microprogram Φ counter 26. The integrated circuits required to perform the logic functions shown in FIG. 3 are well known to those skilled in the art.

第4図、第9図及び第10図について説明する。FIG. 4, FIG. 9, and FIG. 10 will be explained.

これらの図には、マイクロ命令アドレス及び制御シーケ
ンサ76のデータ・エラーを予想/残部コー1−゛法に
よって検出するための故障検出回路が図示されている。
These figures illustrate a fault detection circuit for detecting data errors in the microinstruction address and control sequencer 76 by a predict/remainder method.

第9図及び第10図に示すように、特定のマイクロ命令
アトゝレス、次のアドレス103フイールド、制御フィ
ール)”104及びマイクロ命令アドレス自体の中のデ
ータビットの論理和を排他的にとることによって巡回パ
リティ・コードが発生し、その結果得られた巡回パリテ
ィ・コードはマイクロ命令のコート105フイールドに
置かれる。
Exclusively ORing the data bits within a particular microinstruction address, the next address 103 field, the control field 104, and the microinstruction address itself, as shown in FIGS. 9 and 10. generates a cyclic parity code, and the resulting cyclic parity code is placed in the coat 105 field of the microinstruction.

コード検査器56内の論理は、次のアドレス103及び
制御フィールド″104のこのコードに対する寄与を除
く。排他的OR109に接続されたエンコーダ107は
、次のアドレス103フイールド8寄与を除き、排他的
0RIIOに接続されたエンコーダ108は、制御フィ
ールド104寄与を除き、これにより、現在のマイクロ
命令アドレスについての検査である残部コードを排他的
OR1,1,0の出力に表わす。現在のマイクロ命令ア
ドレスに対する予想されたコードは前にコード・レジス
タ113に記憶された。従って、排他的0RIIIは基
本的には、その入力における予想されたコードと残部コ
ードの比較を実施し、ゼロ検出器112に接続された排
他的○R111の出力がゼロ以外である場合、FAIL
54信号が発生する。前のマイクロ命令は、コード・レ
ジスタ113に、定義では排他的0R110の出力に発
生される残部コードに同等でなげればならない次のアド
レスのために予想されたコート9をロート9した。コー
ドレジスタ113の適当なロードは、制御シーケンサク
ロック106信号によって制御される。
Logic within the code checker 56 removes the contribution of the next address 103 and control field "104 to this code. The encoder 107 connected to the exclusive OR 109 removes the next address 103 field 8 contribution The encoder 108 connected to the control field 104 removes the control field 104 contribution and thereby represents the remainder code, which is a test for the current microinstruction address, at the output of the exclusive OR 1,1,0.The prediction for the current microinstruction address The code entered was previously stored in the code register 113. Therefore, the exclusive 0RIII basically performs a comparison of the expected code at its input with the remaining code and is connected to the zero detector 112. Exclusive○ If the output of R111 is non-zero, FAIL
54 signals are generated. The previous microinstruction rotot9 code register 113 expected code 9 for the next address, which by definition must be equal to the remainder code generated at the output of exclusive 0R110. The appropriate loading of code register 113 is controlled by the control sequencer clock 106 signal.

分岐状態マルチプレクサ22は、次のマイクロ命令アド
レス50がマイクロプログラム・カウンタ24及び26
の1方からソースを与えられない時に、分岐状態を正し
く扱うために制御レジスタ71から13ビツトの次のア
ドレス103を且つエンコータ107から関連の5ビツ
ト・コードヲ受ける。前に説明したように、出力アドレ
ス・マルチプレクサ32は、次のマイクロ命令50に対
するソースを選択し、関連の予想コードはコード・レジ
スタ113に送られる。
Branch state multiplexer 22 indicates that the next microinstruction address 50 is
It receives the 13-bit next address 103 from control register 71 and the associated 5-bit code from encoder 107 to handle branch conditions correctly. As previously explained, output address multiplexer 32 selects the source for the next microinstruction 50 and the associated expected code is sent to code register 113.

予想/残部コード故障検出法によって、制御レジスタ7
1を経由して制御記憶部70からのデータが正しく読み
出されたこと、制御記憶装置70の任意のアドレスライ
ンに故障が起きなかったこと、制御記憶出力には1つも
データエラーが無かったこと、及び制御記憶装置70と
制御シーケンサ76の間にはデータ経路エラーが起きな
かったことが証明される。
The expected/remaining code failure detection method allows control register 7
1, that the data from the control storage unit 70 was correctly read out via the control storage unit 70, that no failure occurred in any address line of the control storage unit 70, and that there was no data error in the control storage output. , and that no data path errors occurred between control store 70 and control sequencer 76.

第5図について説明する。この図には、マイクロ診断制
御スイッチ161が図示されている。制御記憶装置70
からのスイッチ163及びINHIBITl、64と呼
ばれる2つのマイクロ命令信号は、制御スイッチ161
のオRレ−ションを制御する。両方の信号は、スイッチ
ング轡オはレーションに影響スるように表明されなげれ
ばならない。信号INHIBIT164の1方は、モー
)” (背景及び前景)の切換えを制御するように用い
られる。このINHIBIT信号は、オフライン・テス
ト及び作動可能性マイクロ診断によって前景マイクロプ
ログラム・カウンタを用いて背景診断を実行する時に用
いられる。このDフリップ・クロック168は、マイク
ロ診断イネーブル171信号を発生し、とのようにして
マイクロプログラム瞭カウンタ選択のための活動を開始
する。ANDゲート165は、INHIBITが論理0
である場合にDクリップ・フロップ168のトゲリング
を行う。NORゲート166は、制御シーケンサΦクロ
ック106YANDゲート167を経由してDクリップ
・フロップ168にゲートする。背景モート9がイネー
ブルされた時に(フリップ・フロップ168がセットさ
れた時)アドレスのジャム48信号が活性された場合、
DIAGA BORT44信号は、活性(論理1)にな
り、これによりクリップ・フロップ168がリセットさ
れ、即ち、アドレス・ジャム・シーケンスの実施の前に
、背景マイクロプログラムの終了(背景マイクロプログ
ラム・カウンタ26が開始される)及び制御シーケンサ
の前景モードへの転送が行なわれる。マイクロ診断イネ
ーブル171を、背景マイクロ診断あるいは作動可能性
マイクロ診断テストが進行中であるかの分岐状態識別と
して用いることができるようにすることによってより一
層のフレキシプリティが与えられる。
FIG. 5 will be explained. A microdiagnostic control switch 161 is illustrated in this figure. Control storage device 70
Two microinstruction signals called switch 163 and INHIBITl, 64 from the control switch 161
control the operation of Both signals must be asserted to affect the switching function. One of the signals INHIBIT 164 is used to control the switching between background and foreground. This D-flip clock 168 generates the microdiagnostic enable 171 signal and initiates the microprogram transparent counter selection activity as follows. AND gate 165 indicates that INHIBIT is logic 0
If so, the D clip flop 168 is toggled. NOR gate 166 gates to D-clip flop 168 via control sequencer Φ clock 106 YAND gate 167. If the address jam 48 signal is activated when background mote 9 is enabled (when flip-flop 168 is set),
The DIAGA BORT 44 signal goes active (logic 1), which resets the clip-flop 168, i.e., the end of the background microprogram (the background microprogram counter 26 is started) before the address jam sequence is performed. ) and transfer to the foreground mode of the control sequencer. Further flexibility is provided by allowing micro-diagnostic enable 171 to be used as a branch state identification of whether a background micro-diagnostic or enablement micro-diagnostic test is in progress.

再び第5図について説明する。この制御スイッチ161
は、背景マイクロ診断の実施中にアト9レス・ジャム4
8が起きた場合に自動的に前景オはレーションに転送さ
れる。この状態は、DIAflABORT44信号を発
生し、どの信号は、背景マイクロプログラム・カウンタ
を(000i) 1.6に初期設定し且つ背景マイクロ
診断ルーチンを再開始せしめるのに用いられる。AND
NOゲート166、マイクロ診断イネーブル171及び
アドレス・ジャム48は、分岐状態マルチプレクサ22
がらのTRUE21と制御レジスタ71からのソース選
択55と共に、デコーダ169への入力であり、このデ
コーダ169は、マイクロプログラム・カウンタ24及
び26及びマルチプレクサ28を制御するために4つの
出力を発展させる。
FIG. 5 will be explained again. This control switch 161
During background microdiagnosis, At9ResJam4
If an 8 occurs, the foreground o is automatically transferred to the ration. This condition generates the DIAflABORT44 signal, which signal is used to initialize the background microprogram counter to (000i) 1.6 and restart the background microdiagnostic routine. AND
NO gate 166, microdiagnostic enable 171 and address jam 48 are connected to branch state multiplexer 22.
TRUE 21 and source select 55 from control register 71 are inputs to decoder 169, which develops four outputs to control microprogram counters 24 and 26 and multiplexer 28.

背景分岐選択160は、背景マイクロ診断マイクロプロ
グラム・カウンタ26のロードを制御し、MPCソース
選択152は、前景マイクロプログラム・カウンタのロ
ードを制御し、アビレス選択148信号は、マルチプレ
クサ28を通して前景マイクロプログラム・カウンタ又
は背景マイクロ診断マイクロプログラム・カウンタと関
連のマイクロプログラム・カウンターコードのどちらか
を選択する。
Background branch select 160 controls the loading of the background microdiagnostic microprogram counter 26, MPC source select 152 controls the loading of the foreground microprogram counter, and the Aviles select 148 signal is routed through multiplexer 28 to the foreground microprogram counter. Select either a counter or a background microdiagnostic microprogram counter and associated microprogram counter code.

BITハート9ウェアに結び付いて用いられるマイクロ
診断テストマイクロコービルーチン及びマ吟クロ作動可
能性テストは、故障検出を行い且つモジュールハービウ
ェアレはルへの故障分離を助ける。マヘクロ作動可能性
テストは、マイクロ診断テストが情報処理システムの基
本的作動可能性を確認するのに用いられる。マイクロ診
断は、作動可能性マイクロ診断と背景マイクロ診断に分
けられる。この作動可能性マイクロ診断は、マくクロ作
動可能性テストを支持し、且つこの作動可能性マイクロ
診断は、故障の場合の第17※クロ作動可能性命令の実
施を阻止するハードウェア回路を検査することによって
システムの初期のパワーアップの間に実施される。作動
可能性マイクロ診断及び背景マイクロ診断は、高いパー
センテージの故障検出を達成する目的で且つBITハー
ドウェアを排他的に用いて試験ができないあるいは試験
するのに不十分な試験回路によって故障分離を助けるた
めに共に働く。
The microdiagnostic tests used in conjunction with the BIT HART9 hardware, microcobi routines and macro operability tests, provide fault detection and assist in fault isolation to module hardware. The Maheklo operability test is a microdiagnostic test used to confirm the basic operability of an information handling system. Microdiagnosis is divided into operability microdiagnosis and background microdiagnosis. This readiness micro-diagnosis supports the macro readiness test, and this readiness micro-diagnosis tests the hardware circuitry that prevents execution of the 17th readiness instruction in case of a failure. is performed during initial power-up of the system by Operability Micro-Diagnostics and Background Micro-diagnostics is used to achieve a high percentage of fault detection and to aid in fault isolation by test circuits that cannot or are insufficiently tested using BIT hardware exclusively. work together.

第6図について説明する。この図にはマイクロ診断の階
層構造としての組繊が図示されている。
FIG. 6 will be explained. This figure shows a composition as a hierarchical structure of microdiagnosis.

第6図の各ボックスは、マイクロプログラム試験モジュ
ールを表わしており、制御あるいは試験モジュールであ
り得る。制御モジュールは、2つ又はそれ以上の呼出し
命令及び1つの帰還命令からなる。制御モジュールは、
下位制御モジュールあるいは試験モジュールのどちらか
を呼び出す。試験モジュールは情報処理システム60の
機能的ノ・−ビラエア領域をはっきりと試験する。制御
モジュールの例としては、ニブ42フ4フ1フ8作動可
能性マイクロ診断180及び背景マイクロ診断181が
挙げられる。背景マイクロ診断181は、全体的に、R
OM186 、制御シーケンサ187、浮動小数点18
8、登録された演算論理ユニット189及びレジスタ1
90モジユールからなっている。これらのマイクロ診断
は、作動回部性マイクロ診断180及び背景マイクロ診
断181が、第6図に示すようなマイクロ・テスト・モ
ジュールあるいは共通のマイクロ命令コート0を共有す
るように設計される。故障182モジユールは、故障が
検出されるとマイクロプログラムによって呼び出される
。故障182モジユールの目的は、安定システム状態(
即ち、それ自身で飛び越す〕を確立し、BIT保守制御
装置72に故障を警告することにある。各機能テスト・
モジュールは、その機能のために規定された短サイクル
・コートヲ有している。このコーrは、1つのモジュー
ルに発生し且つパラメータとして次のモジュールに送ら
れる。次のモジュールは、プログラムがエントリされた
際に、通過した短サイクル・コード値を試験し、正しく
ない場合、BITノ・−ドウエアは故障を告知される。
Each box in FIG. 6 represents a microprogram test module, which may be a control or test module. The control module consists of two or more call instructions and one return instruction. The control module is
Call either the lower control module or the test module. The test module explicitly tests the functional areas of information handling system 60. Examples of control modules include nib 42 f4 f1 f8 actuation potential micro-diagnostic 180 and background micro-diagnostic 181. Background microdiagnosis 181 is generally R
OM186, control sequencer 187, floating point 18
8. Registered arithmetic logic unit 189 and register 1
It consists of 90 modules. These microdiagnostics are designed such that the active microdiagnosis 180 and the background microdiagnosis 181 share a microtest module or common microinstruction code 0 as shown in FIG. The fault 182 module is called by the microprogram when a fault is detected. The purpose of the Fault 182 module is to establish a stable system state (
That is, the purpose is to establish a "jump by itself" and alert the BIT maintenance control device 72 of the failure. Each function test/
The module has a short cycle coat defined for its function. This call r originates in one module and is passed as a parameter to the next module. The next module tests the short cycle code value passed when the program is entered, and if it is incorrect, the BIT hardware is notified of a failure.

この短サイクル・コードは、通過したコードをある定数
でもって増分することによって発生する。短サイクル・
コードは、背景マイクロ診断181及び作動可能性マイ
クロ診断180を実行する時に試験される。
This short cycle code is generated by incrementing the passed code by some constant. Short cycle/
The code is tested when running background micro-diagnostics 181 and operability micro-diagnostics 180.

1つの完全な作動可能性マイクロ診断テスト・シーケン
スは、システム・バス・インターフェース183、優先
割込みネットワーク184、RAM 185、ROM 
186、制御シーケンサ187、浮動小数点188、及
び登録された演算論理ユニット189を含む第6図に示
す試験モジュールの全てを実行するステップを含む。完
全なシーケンスの背景マイクロ診断は、次の試験モジュ
ールを実行するステップを含む。即ち、ROM 186
、制御シーケンサ187、浮動小数点188、登録され
た演算論理ユニット189及びレジスタ190のモジュ
ールである。ROM 186、制御シーケンサ187、
浮動小数点188及び登録された演算論理ユニット18
9のテストモジュールは、作動可能性マイクロ診断18
0及び背景マイクロ診断181の両方に対して同じ試験
モジュールであるので、必要な制御記憶装置70の量を
最小化できる。
One complete operability micro-diagnostic test sequence includes system bus interface 183, priority interrupt network 184, RAM 185, ROM
186, control sequencer 187, floating point 188, and registered arithmetic logic unit 189. A complete sequence of background microdiagnostics includes the steps of executing the following test modules: That is, ROM 186
, control sequencer 187 , floating point 188 , registered arithmetic logic unit 189 and registers 190 modules. ROM 186, control sequencer 187,
floating point 188 and registered arithmetic logic unit 18
9 test modules perform operability micro-diagnostics 18
Since it is the same test module for both 0 and background microdiagnostics 181, the amount of control storage 70 required can be minimized.

この作動可能性マイクロ診断180は、第1マ薬クロ作
動可能性命令の実施を阻止する回路を試験することによ
って、情報処理システムの初期のプログラム・ロード及
びパワー・アップの直後に実施されるアセンブリ言語マ
本りロ作動可能性テスト(ソフトウェア・テスト)を支
持している。この作動可能性マイクロ診断180は、情
報処理システムの前の状態を保持せず、ハードウェア・
ハードコア〔第1マイクロ診断テストを開始するのに必
要な回路の最小量〕が作動すると仮定する。この作動可
能性マイクロ診断180は、全ての必要な試験が完了す
る迄、付加的な回路を試験することによってハードコア
を基にして成長する。即ち、これらのマイクロ診断は、
前景マイクロゾログラム・カウンタ24の制御の下で実
施される。作動可能性マイクロ診断が完了した後、アセ
ンブリ言語マ*クロ作動可能性テストが実施される。
This readiness micro-diagnosis 180 is performed immediately after the initial program load and power-up of the information handling system by testing the circuitry that prevents execution of the first macro readiness command. Supports language mapping functionality testing (software testing). This readiness micro-diagnosis 180 does not preserve the previous state of the information handling system;
Assume that the hardcore (the minimum amount of circuitry required to initiate the first micro-diagnostic test) is activated. This operability microdiagnostic 180 builds on the hard core by testing additional circuits until all necessary tests are completed. That is, these micro-diagnoses are
This is carried out under the control of a foreground microzologram counter 24. After the readiness microdiagnostics are completed, an assembly language macro readiness test is performed.

背景マイクロ診断181がプロセッサ・アイドル機械時
間の期間中に実施される。マイクロプログラム制御ユニ
ット62の制御シーケンサ76は、前に説明したように
2つのマイクロプログラム・カウンタ24及び26を含
んでおり、これらのカウンタ24及び26は、アセンブ
リ言語プログラムの実施中に同時に作動する。背景マイ
クロ診断テストは、アイト9ル機械タイムの間に背景マ
イクロプログラム・カウンタ26ヲ用いて実施されるた
め、これらのテストは、任意のユーザプログラムに対し
て(時間的に)透明である。背景マイクロ診断は、より
完全な試験を行うために、第8図に示すように、1度に
3つのマイクロ命令を実施する。第8図は、マイクロ命
令Aを実施するための前景マイクロプログラム及びマイ
クロ診断試験モジュールB及びCを含む制御記憶装置7
0を示している。時間Tnにおけるマイクロ命令Anの
実施の期間中、上記のマイクロ命令Anからの2つの制
御信号によって、プログラム制御は背景マイクロプログ
ラム・カウンタ26に切り変わり、これにより、この説
明の場合、マイクロ診断試験モジュールBが1度に3つ
の命令だけ実施される。第3のマイクロ命令(B3)の
完了において、プログラム制御は前景マイクロプログラ
ム・カウンタ24に戻って切り換わり、マイクロ命令A
nの実施が完了する。背景マイクロ診断181は、それ
らの実施の特性の故に、コンピュータ・システム即ち情
報処理システム60の状態を変化させない。背景マイク
ロ診断181の意図は、オンラインBITによって試験
されない機能を連続的に練習することにあり且つ故障の
検出の際に、第2図に示すように、ビット保持制御装置
72に警告することにある。背景マイクロ診断181が
実施されている時のアイト9ル時間は、メモリ・アクセ
スがマイクロ・コード実施にオーバーラツプしない期間
するいはプロセッサが別のオはレーションが実施するの
を待たなければならない期間を含んでいる。また、特定
の命令は、不活性(待機状態)の期間を有しており、更
に、背景マイクロ診断のフェールセーフ・オはレーンヨ
ンを確実にするために、ミリ秒毎の周期タイムアウトを
用いることができる。
Background microdiagnostics 181 are performed during periods of processor idle machine time. The control sequencer 76 of the microprogram control unit 62 includes two microprogram counters 24 and 26, as previously described, which operate simultaneously during execution of an assembly language program. Because the background microdiagnostic tests are performed using the background microprogram counter 26 during individual machine time, these tests are transparent (in time) to any user program. Background microdiagnostics executes three microinstructions at a time, as shown in FIG. 8, for a more complete test. FIG. 8 shows a control memory 7 containing a foreground microprogram for implementing microinstruction A and microdiagnostic test modules B and C.
It shows 0. During the execution of the microinstruction An at the time Tn, two control signals from the microinstruction An mentioned above switch program control to the background microprogram counter 26, which in the case of this description microdiagnostic test module B executes only three instructions at a time. Upon completion of the third microinstruction (B3), program control switches back to the foreground microprogram counter 24 and microinstruction A
The implementation of n is completed. Background microdiagnostics 181, by the nature of their implementation, do not change the state of computer system or information handling system 60. The intent of the background microdiagnosis 181 is to continuously practice functions not tested by the online BIT and to alert the bit retention controller 72 upon detection of a fault, as shown in FIG. . Item 9 time when background microdiagnostics 181 is being performed is the period during which memory accesses do not overlap with microcode execution or during which the processor must wait for another operation to perform. Contains. Also, certain instructions have periods of inactivity (wait state), and in addition, background microdiagnostic fail-safe operations can use periodic timeouts every millisecond to ensure safe operation. can.

第1図及び第2図について説明する。マイクロ診断のオ
はレーションの方法は次の通りである。
1 and 2 will be explained. The method for conducting microdiagnosis is as follows.

即ち、メモリ・ユニット66からの取出しを必要とする
機械マイクロ命令又は命令セット・アーキテクチャ(I
SA)オはレーションを実施するマイクロ命令の連糸を
実施するのに前景マイクロプログラム・カウンタ24が
用いられていると仮定する。
That is, machine microinstructions or instruction set architectures (I
SA) Assume that the foreground microprogram counter 24 is used to implement the chain of microinstructions that perform the ration.

このメモリ取出しは、開始され、制御ユニット62及び
演算ユニット64を含むプロセッサはシステム嗜データ
・バス87が有効データを出すのを待機することを開始
する。メモリ取出しの開始と共に、ISAオはレーショ
ン・マイクロ命令ハ、制御スイッチ161によって制御
を背景マイクロプログラム拳カウンタ26に転送する。
This memory fetch is initiated and the processors, including control unit 62 and computing unit 64, begin waiting for system specific data bus 87 to issue valid data. Upon initiation of the memory fetch, the ISA transfers control to the background microprogram counter 26 by means of the ration microinstruction control switch 161.

この制御シーケンサ76は、これにより背景モードに切
り換えられ、マイクロ診断マイクロプログラム・カウン
タ26によって制御される背景マイクロ診断試験は、第
6図に示す試験モジュールの1つから、第8図に示すよ
うに、3つのマイクロ命令B1.B2及びB3を実行す
る。
The control sequencer 76 is thereby switched to background mode and the background microdiagnostic test controlled by the microdiagnostic microprogram counter 26 is executed from one of the test modules shown in FIG. , three microinstructions B1. Execute B2 and B3.

第3マイクロ命令の実施の完了においてこのマイクロ診
断試験は、制御を前景マイクロプログラム・カウンタ2
4に戻して転送するスワップ・マイクロプログラム・カ
ウンタ作動を起こすために制御信号(SWITCH16
3及びINHIBIT164)を発生する。この手順は
、マイクロ診断試験を構成する全ての試験モジュールが
完了する迄継続する。
Upon completion of execution of the third microinstruction, this microdiagnostic test transfers control to foreground microprogram counter 2.
A control signal (SWITCH16) is used to cause the swap microprogram counter operation to transfer back to
3 and INHIBIT164). This procedure continues until all test modules that make up the microdiagnostic test are completed.

背景モート9にあるマイクロ診断試験は、プロセッサの
作動状態を変えず、ISA実施に影響し得るいかなる状
態(汎用フラグ、データレジスタ又はオーバーフロー)
を行うことを防ぐ。前景モート90オはレーションは、
背景モート9マイクロ診断の実施に気付かない。
The micro-diagnostic tests in background mote 9 do not change the operating state of the processor and detect any conditions (general purpose flags, data registers or overflows) that may affect ISA implementation.
prevent doing so. The foreground morte 90 is
I am not aware of the implementation of Background Mote 9 Micro Diagnosis.

第7図について説明する。この図には、制御シーケンサ
187、登録された演算論理ユニット189、浮動小数
点188及びレジスタ190試験モジユールを含む典型
的な背景マイクロ診断プログラム・シ−ケンスが図示さ
れている。1つの試験モジュールの名前は、試験されて
いるシステムの機能領域を示している。各試験モジュー
ルは、短サイクル・コート”(SCC)を発生する。背
景モード・マイクロ診断がイネーブルされて新しい機能
試験モジュールが入ると、前の試、験モジュールによっ
て発生された短サイクルコードは、実施シーケンスにお
ける次のモジュールに1つのパラメータとして送られ、
検査される。送られたコードは、不正であると決定され
た場合、BITハードウェアに欠陥が告知される。短サ
イクル・コードが作動可能性マイクロ診断試験及び背景
マイクロ診断試験の両方でもって試験される。この短サ
イクルコードにヨッて、試験モジュールの完全なマイク
ロ診断シーケンスが実施され且つこのシーケンスは待ち
時間故障による試験モジュールの単なる部分集合ではな
いことが保証される。背景マイクロ診断を実行する主な
理由は、故障待ち時間を減少し即ち故障状態を発見する
のにかかる時間を減少することにある。
FIG. 7 will be explained. Illustrated in this figure is a typical background microdiagnostic program sequence including a control sequencer 187, registered arithmetic logic unit 189, floating point 188 and register 190 test modules. The name of one test module indicates the functional area of the system being tested. Each test module generates short cycle codes (SCCs). When background mode microdiagnostics is enabled and a new functional test module enters, the short cycle codes generated by the previous test module are sent as one parameter to the next module in the sequence,
be inspected. If the sent code is determined to be invalid, the BIT hardware is notified of the defect. Short cycle codes are tested with both operability and background microdiagnostic tests. This short cycle code ensures that a complete micro-diagnostic sequence of the test module is performed and that this sequence is not just a subset of the test module due to latency failures. Background The primary reason for performing microdiagnostics is to reduce fault latency, ie, reduce the time it takes to discover a fault condition.

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

第1図は、本発明に係る2つのマイクロプログラム・カ
ウンタを含む制御シーケンサを有するマイクロプログラ
ム制御ユニットのブロック図。第2図は、第1図の制御
シーケンサをマイクロプログラム制御ユニットの一部と
して示している情報処理システムのブロック図。第3図
は、2つのマイクロプログラム・カウンタを実施するた
めのハードウェア構造のノロツク図。第4図は、マイク
ロ命令アドレス及びデータ・エラーを検出するための制
御シーケンサ内の故障検出回路を示す機能ブロック図。 第5図は、第1図に示す2つのマイクロプログラム・カ
ウンタの切換えを制御するための第1図に示す制御スイ
ッチの論理図。第6図は、作動可能性マイクロ診断及び
背景マイクロ診断?jllt成するマイク凸診断テスト
・モジュールの且つマイクロプログラム−テスト・モジ
ュールを示す階層チャート。第7図は、背景マイクロ診
断テストのためのテストのモジュールのシーケンスを示
し且つ各テスト・モジュールによって発生し且つ後続の
テスト・モジュールによって検査される短サイクル・コ
ードを更に示す図。第8図は、前景マイクロプログラム
に戻る前に3つのマイクロ命令を実施するために前景マ
イクロプログラムから背景マイクロ診断マイクロプログ
ラムへの切換えを示す図。第9図は、1つのマイクロ命
令アドレス及びこのマイクロ命令アドレスに記憶された
マイクロ命令ワードのフイールドケ示す図。第10図は
、第4図に示す故障検出回路に用いられる予想/残部コ
ードの発生のためのパリティトリーを示す図。 24・・・前景マイクロプログラムカウンタ26・・・
背景マイクロ診断マイクロプログラムカウンタ28・・
・マルチプレクサ 62・・・制御ユニット64・・・
演算ユニット66・・・メモリユニット70・・・制御
記憶装置 76・・・制御シーケンサ90・・・入力出
力ユニット 第1頁の続き 0発 明 者 ステイーケン・シー・ アメジョンソン
 ルφ 0発 明 者 リチャード・ビー・ゴ アメード ツジ 0発 明 者 ジャック・ジエイ・ス アメテイツフラ
ー り・ リカ合衆国マサチューセッツ州つオルサム、スフ−スト
リート 94 リカ合衆国マサチューセッツ州コンコード、ケンブリ・
ターンバイク 490 リカ合衆国マサチューセッツ州ホブキントン、レイショ
ア・ドライブ 34
FIG. 1 is a block diagram of a microprogram control unit having a control sequencer including two microprogram counters according to the present invention. FIG. 2 is a block diagram of an information processing system showing the control sequencer of FIG. 1 as part of a microprogram control unit. FIG. 3 is a diagram of the hardware structure for implementing two microprogram counters. FIG. 4 is a functional block diagram illustrating fault detection circuitry within the control sequencer for detecting microinstruction address and data errors. 5 is a logic diagram of the control switch shown in FIG. 1 for controlling switching of the two microprogram counters shown in FIG. 1; FIG. Figure 6 shows the operability micro-diagnosis and the background micro-diagnosis? 1 is a hierarchical chart showing a microprogram-test module and a microphone protrusion diagnostic test module formed by JLLT. FIG. 7 is a diagram illustrating the module sequence of tests for a background microdiagnostic test and further illustrating the short cycle codes generated by each test module and examined by subsequent test modules. FIG. 8 is a diagram illustrating switching from a foreground microprogram to a background microdiagnostic microprogram to execute three microinstructions before returning to the foreground microprogram. FIG. 9 is a diagram illustrating one microinstruction address and the field diagram of the microinstruction word stored at the microinstruction address. 10 is a diagram showing a parity tree for generating expected/remaining codes used in the failure detection circuit shown in FIG. 4; FIG. 24...Foreground micro program counter 26...
Background micro diagnosis micro program counter 28...
・Multiplexer 62...Control unit 64...
Arithmetic unit 66...Memory unit 70...Control storage device 76...Control sequencer 90...Input/output unitContinued from page 1 0 Inventor: Steken C.A.・Be Go Amed Tsuji 0 Inventor: Jack G. A. 94 Souf Street, Concord, Massachusetts, United States
Turn Bike 490 34 Rayshore Drive, Hobkinton, Massachusetts, United States

Claims (1)

【特許請求の範囲】 1)記憶された主プログラムを実施するための処理シス
テムであって、 第2プログラムを記憶するためのメモリ手段、及び 上記の主プログラムの少なくとも1つの選択された命令
に応答する手段であって、上記の処理システムをイネー
ブルして上記の選択された主プログラム命令の実施中に
上記の記憶された第2プログラムを実施せしめる手段、 から構成される処理システム。 2)上記の記憶された第2プログラムが、マイクロプロ
グラム・マイクロ診断を含む特許請求の範囲第1項に記
載の処理システム。 3)上記のイネーブル手段が、制御シーケンサを有する
マイクロプログラム制御ユニットを含む(1) 特許請求の範囲第1項に記載の処理システム。 4)上記主プログラムの上記の選択された命令が、上記
のマイクロプログラム制御ユニットノ少なくとも1つの
マイクロ命令によって実施される特許請求の範囲第3項
に記載の処理システム。 5)上記制御シーケンサが、少なくとも2つのマイクロ
プログラム・カウンタを含む特許請求の範囲第3項に記
載の処理システム。 6)上記の2つのマイクロプログラム・カウンタの最初
のカウンタが、上記主プログラムを実施するためにマイ
クロ命令のアドレス指定を制御し且つ上記の2つのマイ
クロプログラムカウンタの2番目のカウンタが、上記第
2プログラムを実行するためにマイクロ命令のアドレス
指定を制御する特許請求の範囲第5項に記載の処理シス
テム。 7)前景プログラムのオ被し−ションの間ニ背景マイク
ロプログラムを実行するマイクロプログラム制御ユニッ
トを有する情報処理システムであって、 上記背景マイクロプログラム及び上記前景プロ(2) ダラムを実行するための複数のマイクロ命令を記憶する
ためのメモリ手段、及び 上記前景プログラムオにレーションと上記背景マイクロ
プログラムを独立に制御するための制御シーケンサ手段
であって、少なくとも2つのマイクロプログラム春カウ
ンタであって、第1マイクロプログラム・カウンタが上
記前景プログラムの実行に関与し、第2マイクロプログ
ラム・カウンタが上記背景マイクロプログラムを制御す
る2つのマイクロプログラム・カウンタを含む制御シー
ケンサ手段、 から構成される情報処理システム。 8)上記背景マイクロプログラムが、マイクロ診断を実
行するための複数のマイクロ命令を含む特許請求の範囲
第7項に記載の情報処理システム。 9)上記制御シーケンサ手段が、上記マイクロ命令の1
つからの複数の信号に従って上記第1マイクロプログラ
ム・カウンタと上記第2マイクロプログラム・カウンタ
との切換え制御のための手段を含む特許請求の範囲第7
項に記載の情報処理システム。 10)上記背景マイクロプログラムが、上記メモリ手段
に記憶された複数の試験モジュールであって、各々が上
記試験モジュールの性能を証明するために短サイクル行
動を発生し且つ試験するための手段を含む複数の試験モ
ジュールを含む特許請求の範囲第7項に記載の情報処理
システム。 11)前景プログラムのオシレーションの間ニ背景マイ
クロプログラムを実行するマイクロプログラム制御ユニ
ットを有する情報処理システムであって、 上記背景マイクロプログラム及び上記前景プログラムを
実行するために複数のマイクロ命令を記憶するためのメ
モリ手段、 上記前景プログラム・オシレーションと上記背景マイク
ロプログラムを独立に制御するための制御シーケンサ手
段であって、少なくとも2つのマイクロプログラム・カ
ウンタであって、第1マイクロプログラム・カウンタが
上記前景プログラムの実行に関与し、第2マイクロプロ
グラム・カウンタが上記背景マイクロプログラムを制御
する2つのマイクロプログラム・カウンタを含む制御シ
ーケンザ手段、及び 上記制御シーケンサ手段内のコートゝ化手段であって、
マイクロ命令アドレス指定及びデータエラーを検出する
ためのコード化手段、 から構成される情報処理システム。 12)上記コード化手段が、上記メモリ手段におけるア
ト゛レスと上記ア1〜゛レスの内容の証明のための第1
コード及び予想された次のマイクロ命令アドレスの証明
のための第2コート゛を与える特許請求の範囲第11項
に記載の情報処理システム。 13)」二記コード化手段が、上記第1コードを上記第
2コードと比較し且つエラーが検出された時に故、障信
号を発生するための検出手段を含む特許請求の範囲第1
2項に記載の情報処理システム。 14)マイクロプログラム制御ユニットを有する情報処
理システムであって、 前景プログラムのオはレーションの間に背景マイクロ診
断マイクロプログラムを実行するために複数のマイクロ
命令を記憶するためのメモリ手段、上記前景プログラム
の実行の間に次のマイクロ命令のアドレスを発生するた
めの第1マイクロプログラム・カウンタ、 上記背景マイクロ診断マイクロプログラムの次のマイク
ロ命令のアドレスを発生するための第2マイクロプログ
ラム・カウンタ、及び 上記第1マイクロプログラム・カウンタ及び上記第2マ
イクロプログラム・カウンタに接続されたマルチプレク
サ手段であって、アドレス選択信号に従って、上記第1
マイクロプログラム・カウンタあるいは上記第2マイク
ロプログラム・カウンタのどちらから上記の次のマイク
ロ命令のアドレスを選択するためのマルチプレクサ手段
、から構成される情報処理システム。 15)上記マイクロプログラム制御ユニットが、上記マ
イクロ命令の1つからの複数の切換え制御信号に従って
上記第1マイクロプログラム・カウンタと上記第2マイ
クロプログラム・カウンタとの切換え制御のための手段
を含む特許請求の範囲第11項に記載の情報処理システ
ム。 16)マイクロプログラム制御ユニットを有する情報処
理システムであって、 前景プログラムのオはし〜ジョンの間に背景マイクロ診
断マイクロプログラムを実行するために複数のマイクロ
命令を記憶するためのメモリ手段、上記前景プログラム
の実行の間に次のマイクロ命令のアドレスを発生するた
めの第1マイクロプログラム・カウンタ、 上記背景マイクロ診断マイクロプログラムの次のマイク
ロ命令のアドレスを発生するための第2マイクロプログ
ラム・カウンタ、 上記第1マイクロプログラム・カウンタと上記第2マイ
クロプログラム−カウンタに接続されたマルチプレクサ
手段であって、上記メモリ手段からのアト9レス選択信
号に従って、上記第1マイクロプログラム・カウンタあ
るいは上記第2マイクロプログラム・カウンタのどちら
からか上記の次のマイクロ命令のアビレスを選択するた
めのマルチプレクサ手段、 上記第1マイクロプログラム・カウンタに接続されたマ
イクロプログラムΦスタック手段であって、マイクロプ
ログラム割込みサブルーチンを実行するためのマイクロ
プログラム・スタック手段、上記第1マイクロプログラ
ム・カウンタ、上記第2マイクロプログラム・カウンタ
及び出力アトゝレスマルチプレクサに接続された分岐状
態マルチプレクサ手段であって、分岐状態信号に従って
上記次のマイクロ命令のアドレスを発生するための分岐
状態マルチプレクサ手段であって、上記出力マルチプレ
クサ手段が、アトゝレスジャム入力信号を受け且つ上記
の次のマイクロ命令アト9レスのソースを選択するため
に、上記マルチプレクサ手段、上記スタック手段及び上
記分岐状態マルチプレクサ手段の出力信号に結合されて
いることを特徴とする分岐状態マルチプレクサ手段、上
記メモリ手段に接続された制御スイッチ手段であって、
上記第1マイクロプログラムφカウンタと上記第2マイ
クロプログラム・カウンタの切換え制御のための制御ス
イッチ手段、及び上記分岐状態マルチプレクサ手段及び
上記マイクロプログラム・スタック手段に接続された制
御装置手段であって、上記メモリ手段からの機能コード
を復号するための制御装置手段、 から構成される情報処理システム。 17)マイクロプログラム制御ユニットを有する情報処
理システムであって、 マイクロ診断試験及びマイクロ命令を実行するために複
数のマイクロ命令を記憶するためのメモリ手段、 上記マイクロ診断試験を実行するための又は上記マイク
ロ命令を実行するために次のマイクロ命令のアドレスを
発生するための第1マイクロプログラム曝カウンタ、 前景マイクロ命令のオはレーションの間に実行されてい
る背景マイクロ診断試験の次のマイクロ命令のアドレス
を発生するための第2マイクロプログラム・カウンタで
あって、上記前景マくクロ命令が独立のプログラムカウ
ンタの制御下にある第2マイクロプログラム・カウンタ
、 から構成される情報処理システム。 18)前景プログラムのオはレーションの間に背景マイ
クロ診断マイクロプログラムを実行するために複数のマ
イクロ命令を記憶するためのメモリ手段、 上記前景プログラムオはレーション及び上記背景マイク
ロ診断マイクロプログラムを独立に制御するための制御
シーケンサ手段であって、少なくとも2つのマイクロプ
ログラム・カウンタであって、第1マイクロプログラム
・カウンタが上記前景プログラムの実行に関与し、第2
マイクロプログラム・カウンタが上記背景マイクロ診断
マイクロプログラムを制御する2つのマイクロプログラ
ム・カウンタを含む制御シーケンサ手段、から構成され
るマイクロプログラム制御ユニット。 19)上記制御シーケンサ手段が、上記マイクロ命令の
1つからの複数の信号に従って上記第1マイクロプログ
ラム・カウンタと上記第2マイクロプログラム・カウン
タとの切換え制御のための手段を含む特許請求の範囲第
18項に記載のマイクロプログラム制御ユニット。 20)上記背景マイクロ診断マイクロプログラムが、上
記メモリ手段に記憶された複数の試験モジュールであっ
て、各々が、上記試験モジュールの実行を証明するため
に短サイクルコートゝを発生し且つ試験するための手段
を含む複数の試験モジュールを含む特許請求の範囲第1
8項に記載のマイクロプログラム制御ユニット。 21〕処理システムにおいて記憶された主プログラムを
実施するための方法であって、 第2プログラムを記憶するステップ、 上記処理システムによって上記主プログラムの選択され
た命令の実施中に上記の記憶された第2プログラムを実
施するステップ、 から構成される方法。 22)前景プログラムのオはレーション中に背景。 マイクロプログラムを実行するためのマイクロプログラ
ム制御ユニットを有する情報処理システムにおける方法
であって、 上記背景マイクロプログラム及び上記前景プログラムを
実行するための複数のマイクロ命令を記憶するステップ
、及び 少なくとも2つのマイクロプログラム・カウンタであっ
て、上記マイクロプログラム・カウンタの第1のカウン
タが上記前景プログラムの実行に関与し且つ上記マイク
ロプログラム・カウンタの第2のカウンタが上記背景マ
イクロプログラムを制御する2つのマイクロプログラム
・カウンタでもって上記前景プログラム・オはレーショ
ン及ヒ上記背景マイクロプログラムを独立に制御するス
テップ、 から構成される方法。 23)上記前景プログラムオシレーション及び上記背景
マイクロプログラムを独立に制御するステップが、上記
マイクロ命令の1つからの複数の信号に従って上記第1
マイクロプログラム・カウンタと上記第2マイクロプロ
グラム・カウンタとの切換え制御を含む特許請求の範囲
第22項に記載の方法。 24)上記の背景マイクロプログラムを実行するステッ
プが、複数の試験モジュールを実行するステップ、及び
上記の試験モジュールの各々において、上記試験モジュ
ールの実行を証明するために短サイクルコードを発生し
且つ試験するステップを含む特許請求の範囲第22項に
記載の方法。 25)前景プログラムのオはレーション中に背景マイク
ロプログラムを実行するマイクロプログラム制御ユニッ
トを有する情報処理システムにおいて故障検出を実行す
る方法において、 上記背景マイクロプログラム及び上記前景プログラムを
実行するための複数のマイクロ命令であって、各々が、
上記マイクロ命令の各々の1つのアト9レス及び上記ア
ドレスの内容の証明のための第1コート9を有する複数
のマイクロ命令を記憶するステップ、 上記前景プログラム及び上記背景マイクロプログラムを
少なくとも2つのマイクロプログラム0カウンタでもっ
て制御するステップ、 現在のマイクロ命令アト9レスに対するコードを示す残
部コードを上記第1コードから発生するステップ、 直前に実施されたマイクロ命令オはレーションの期間中
に次のマイクロ命令アト9レスに対する第2コードを発
生し且つ記憶するステップ、及び故障を検出するために
上記残部コードを上記第2コードと比較するステップ、 から構成される方法。
Claims: 1) A processing system for executing a stored main program, the processing system comprising: memory means for storing a second program; and responsive to selected instructions of at least one of said main program. means for enabling the processing system to execute the stored second program during execution of the selected main program instructions. 2) The processing system according to claim 1, wherein the second stored program includes a microprogram/microdiagnosis. 3) The enabling means comprises a microprogrammed control unit having a control sequencer (1) Processing system according to claim 1. 4) The processing system of claim 3, wherein said selected instructions of said main program are implemented by at least one microinstruction in said microprogram control unit. 5) The processing system of claim 3, wherein said control sequencer includes at least two microprogram counters. 6) The first of said two microprogram counters controls the addressing of microinstructions to implement said main program and the second of said two microprogram counters controls the addressing of said second microprogram counters. 6. A processing system according to claim 5, which controls addressing of microinstructions to execute a program. 7) An information processing system having a microprogram control unit that executes a background microprogram during overlay of a foreground program, the information processing system comprising a plurality of microprogram control units for executing the background microprogram and the foreground program. and control sequencer means for independently controlling said foreground program operation and said background microprogram, comprising at least two microprogram spring counters, a first Control sequencer means comprising two microprogram counters, a microprogram counter participating in the execution of said foreground program and a second microprogram counter controlling said background microprogram. 8) The information processing system according to claim 7, wherein the background microprogram includes a plurality of microinstructions for executing microdiagnosis. 9) The control sequencer means executes one of the microinstructions.
Claim 7, further comprising means for controlling switching between said first microprogram counter and said second microprogram counter in accordance with a plurality of signals from said first microprogram counter and said second microprogram counter.
The information processing system described in Section. 10) said background microprogram comprises a plurality of test modules stored in said memory means, each comprising means for generating and testing short cycle actions to prove the performance of said test module; The information processing system according to claim 7, comprising a test module. 11) An information processing system having a microprogram control unit for executing a background microprogram during oscillations of a foreground program, the information processing system having a microprogram control unit for storing a plurality of microinstructions for executing the background microprogram and the foreground program. memory means for independently controlling said foreground program oscillation and said background microprogram; at least two microprogram counters, a first microprogram counter for controlling said foreground program oscillation; control sequencer means comprising two microprogram counters involved in the execution of the background microprogram, a second microprogram counter controlling said background microprogram, and coding means within said control sequencer means,
An information handling system comprising: microinstruction addressing and coding means for detecting data errors. 12) The encoding means includes a first address for proving the address in the memory means and the contents of the addresses 1 to 1.
12. An information handling system as claimed in claim 11 providing a second code for proof of code and expected next microinstruction address. 13) The second encoding means comprises detection means for comparing said first code with said second code and generating a fault signal when an error is detected.
The information processing system described in Section 2. 14) An information processing system having a microprogram control unit, comprising memory means for storing a plurality of microinstructions for executing a background microdiagnostic microprogram during the operation of the foreground program; a first microprogram counter for generating the address of the next microinstruction during execution; a second microprogram counter for generating the address of the next microinstruction of the background microdiagnostic microprogram; multiplexer means connected to one microprogram counter and said second microprogram counter;
An information processing system comprising multiplexer means for selecting the address of the next microinstruction from either the microprogram counter or the second microprogram counter. 15) Claim wherein said microprogram control unit includes means for controlling switching between said first microprogram counter and said second microprogram counter in accordance with a plurality of switching control signals from one of said microinstructions. The information processing system according to item 11. 16) An information processing system having a microprogram control unit, comprising: memory means for storing a plurality of microinstructions for executing a background microdiagnosis microprogram during an operation of the foreground program; a first microprogram counter for generating the address of the next microinstruction during program execution; a second microprogram counter for generating the address of the next microinstruction of the background microdiagnostic microprogram; multiplexer means connected to a first microprogram counter and said second microprogram counter, said multiplexer means being connected to said first microprogram counter or said second microprogram counter in accordance with an at9less selection signal from said memory means; multiplexer means for selecting said next microinstruction abilis from either of the counters; microprogram Φ stack means connected to said first microprogram counter for executing a microprogram interrupt subroutine; branch status multiplexer means connected to the microprogram stack means, the first microprogram counter, the second microprogram counter and the output address multiplexer, the address of the next microinstruction according to the branch status signal; branch state multiplexer means for generating an address jam input signal, said output multiplexer means receiving said address jam input signal and selecting said source of said next microinstruction address; and branch state multiplexer means coupled to the output signal of said branch state multiplexer means, control switch means connected to said memory means, comprising:
control switch means for switching control of said first microprogram φ counter and said second microprogram counter, and controller means connected to said branch state multiplexer means and said microprogram stack means, said An information processing system comprising: controller means for decoding a function code from the memory means. 17) An information handling system having a microprogram control unit, comprising memory means for storing a plurality of microinstructions for executing microdiagnostic tests and microinstructions; A first microprogram exposure counter for generating the address of the next microinstruction to execute the instruction; The operation of the foreground microinstruction generates the address of the next microinstruction of the background microdiagnostic test being executed during the execution of the foreground microinstruction; a second microprogram counter for generating the foreground macro instructions, the second microprogram counter being under control of an independent program counter. 18) memory means for storing a plurality of microinstructions for executing a background micro-diagnosis microprogram during the foreground program operation; independently controlling the foreground program operation and the background micro-diagnosis microprogram; control sequencer means for at least two microprogram counters, a first microprogram counter participating in the execution of said foreground program;
A microprogram control unit comprising control sequencer means comprising two microprogram counters, the microprogram counters controlling the background microdiagnostic microprogram. 19) The control sequencer means includes means for controlling switching between the first microprogram counter and the second microprogram counter in accordance with a plurality of signals from one of the microinstructions. 19. The microprogram control unit according to item 18. 20) The background microdiagnostic microprogram comprises a plurality of test modules stored in the memory means, each for generating and testing a short cycle code for verifying the execution of the test module. Claim 1 comprising a plurality of test modules comprising means.
9. The microprogram control unit according to item 8. 21. A method for executing a stored main program in a processing system, the method comprising: storing a second program; during execution of selected instructions of the main program by the processing system; 2. A method comprising the steps of implementing a program. 22) O of the foreground program is background during ration. A method in an information processing system having a microprogram control unit for executing a microprogram, comprising: storing a plurality of microinstructions for executing the background microprogram and the foreground program; and at least two microprograms. two microprogram counters, a first of said microprogram counters participating in the execution of said foreground program and a second of said microprogram counters controlling said background microprogram; The method comprises the steps of independently controlling the foreground microprogram and the background microprogram. 23) independently controlling said foreground program oscillation and said background microprogram according to a plurality of signals from said one of said microinstructions;
23. The method of claim 22, including controlling switching between a microprogram counter and the second microprogram counter. 24) executing the background microprogram, executing a plurality of test modules, and in each of the test modules, generating and testing short cycle code to prove execution of the test module; 23. The method of claim 22, comprising the steps. 25) A method for performing fault detection in an information processing system having a microprogram control unit that executes a background microprogram during operation of a foreground program, comprising: a plurality of microprograms for executing the background microprogram and the foreground program; A command, each of which
storing a plurality of microinstructions having one address 9 for each of said microinstructions and a first code 9 for proving the content of said address; a step of controlling with a 0 counter; a step of generating a residual code indicating a code for the current microinstruction address from the first code; A method comprising the steps of: generating and storing a second code for a 9 response; and comparing the remaining code with the second code to detect a fault.
JP60100363A 1984-05-11 1985-05-11 Control sequencer for microdiagnosis having dual microprogram counter Pending JPS60254250A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60960284A 1984-05-11 1984-05-11
US609602 1996-03-01

Publications (1)

Publication Number Publication Date
JPS60254250A true JPS60254250A (en) 1985-12-14

Family

ID=24441504

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60100363A Pending JPS60254250A (en) 1984-05-11 1985-05-11 Control sequencer for microdiagnosis having dual microprogram counter

Country Status (4)

Country Link
JP (1) JPS60254250A (en)
CA (1) CA1226954A (en)
DE (1) DE3517103A1 (en)
GB (1) GB2158977B (en)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4839895A (en) * 1987-01-07 1989-06-13 Nec Corporation Early failure detection system for multiprocessor system
US5117387A (en) * 1988-08-18 1992-05-26 Delco Electronics Corporation Microprogrammed timer processor
US5068851A (en) * 1989-08-01 1991-11-26 Digital Equipment Corporation Apparatus and method for documenting faults in computing modules
EP1113454B1 (en) * 1999-11-15 2007-05-30 Autonetworks Technologies, Ltd. Check method of temporary storage circuit in electronic control unit
JP4310878B2 (en) * 2000-02-10 2009-08-12 ソニー株式会社 Bus emulation device
US7415700B2 (en) 2003-10-14 2008-08-19 Hewlett-Packard Development Company, L.P. Runtime quality verification of execution units

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5614356A (en) * 1979-07-13 1981-02-12 Toshiba Corp Diagnostic system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE2238496A1 (en) * 1972-08-04 1974-02-14 Siemens Ag METHOD OF TESTING MICRO-PROGRAM CONTROLLED PROCESSORS
GB1436428A (en) * 1972-10-31 1976-05-19 Ibm Data processing apparatus
US3831148A (en) * 1973-01-02 1974-08-20 Honeywell Inf Systems Nonexecute test apparatus
US3838260A (en) * 1973-01-22 1974-09-24 Xerox Corp Microprogrammable control memory diagnostic system
DE2350314A1 (en) * 1973-10-06 1975-06-26 Ibm Deutschland PROGRAMS FOR PROGRAM ANALYSIS AND PROGRAM MAINTENANCE OF PROGRAMS
SU613651A1 (en) * 1976-12-16 1987-03-15 Предприятие П/Я А-3886 Memory

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5614356A (en) * 1979-07-13 1981-02-12 Toshiba Corp Diagnostic system

Also Published As

Publication number Publication date
CA1226954A (en) 1987-09-15
GB2158977B (en) 1988-04-07
GB8511670D0 (en) 1985-06-12
GB2158977A (en) 1985-11-20
DE3517103A1 (en) 1985-11-14

Similar Documents

Publication Publication Date Title
US4841434A (en) Control sequencer with dual microprogram counters for microdiagnostics
US8145797B2 (en) Simultaneous multi-threaded (SMT) processor supporting thread-execution-state-sensitive supervisory commands
JP2846406B2 (en) Branch processing method and branch processing device
US6925584B2 (en) Systems and methods for testing processors
US7392431B2 (en) Emulation system with peripherals recording emulation frame when stop generated
US4811345A (en) Methods and apparatus for providing a user oriented microprocessor test interface for a complex, single chip, general purpose central processing unit
US6550020B1 (en) Method and system for dynamically configuring a central processing unit with multiple processing cores
US5388242A (en) Multiprocessor system with each processor executing the same instruction sequence and hierarchical memory providing on demand page swapping
JP2846407B2 (en) Exception handling method and exception handling device
US7370238B2 (en) System, method and software for isolating dual-channel memory during diagnostics
US7721148B2 (en) Method and apparatus for redirection of machine check interrupts in multithreaded systems
KR100647526B1 (en) Zero overhead computer interrupts with task switching
JPH02232737A (en) Method and apparatus for detecting and correcting error in pipeline type computer system
JPS5911943B2 (en) Trap mechanism for data processing equipment
US6820051B1 (en) Software emulation monitor employed with hardware suspend mode
JP2020113266A (en) Checksum generation
JPS60254250A (en) Control sequencer for microdiagnosis having dual microprogram counter
US8904227B2 (en) Cache self-testing technique to reduce cache test time
US7100027B1 (en) System and method for reproducing system executions using a replay handler
US6347368B1 (en) Microcomputing device for exchanging data while executing an application
JPS5868165A (en) Additional function unit in microprocessor and operation thereof
US5896526A (en) Programmable instruction trap system and method
US6836757B1 (en) Emulation system employing serial test port and alternative data transfer protocol
US6510507B1 (en) Page address look-up range ram
US20230314508A1 (en) In-field latent fault memory and logic testing using structural techniques