JPH0196734A - Stack control system - Google Patents

Stack control system

Info

Publication number
JPH0196734A
JPH0196734A JP25512487A JP25512487A JPH0196734A JP H0196734 A JPH0196734 A JP H0196734A JP 25512487 A JP25512487 A JP 25512487A JP 25512487 A JP25512487 A JP 25512487A JP H0196734 A JPH0196734 A JP H0196734A
Authority
JP
Japan
Prior art keywords
address register
halt
value
data
stack
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.)
Granted
Application number
JP25512487A
Other languages
Japanese (ja)
Other versions
JP2604604B2 (en
Inventor
Kazuko Shimakura
島倉 一子
Kunihiro Ohata
大畑 邦弘
Katsuji Fujimori
藤森 勝二
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 JP25512487A priority Critical patent/JP2604604B2/en
Publication of JPH0196734A publication Critical patent/JPH0196734A/en
Application granted granted Critical
Publication of JP2604604B2 publication Critical patent/JP2604604B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To assure the executing sequence of command data even when the command data received from plural systems are stored in one stack by using a means which can stop temporarily only the processing carried out based on the command data received from the system issuing a halt instruction. CONSTITUTION:When an A system, for example, issues a halt instruction, the contents of an executing address register 2 (value is address 01) are stored into a saving register 3. Thus the A system is held. While data are read out of a B system and the V bits of the corresponding address of a stack 32 are set at 0 when the processing is through. Thus the command data of a system B are successively processed and the V bits are set at 0. When a start command is produced from the A system, the address 01 is written into the register 2 and the data are read out of the stack 32. These data are processed based on the data on the A system.

Description

【発明の詳細な説明】 〔概要〕 複数システムからの指令データを1個のスタックに格納
し、スタックに格納された指令データを取り出して実行
するスタック制御方式に関し、この種のスタック制御方
式において、指令データ実行の順序性を保証するこ、と
を目的とし、指令データと有効ビットとシステム・コー
ドを記憶するスタック、スタックに指令データを書き込
む際に使用される書込アドレス・レジスタ、スタックの
指令データを実行する際に使用される実行アドレス・レ
ジスタ、セーブ・アドレス・レジスタ、スタックの指令
データの中で何れのシステムの指令データがホルト状態
かを示すホルト状態記憶手段、実行アドレス・レジスタ
をセーブ・アドレス・レジスタにコピーする処理を行う
コヒー手段、セーブ・アドレス・レジスタを実行アドレ
ス・レジスタに復元するための復元手段、指令データの
スタックへの書込処理をけう書込処理手段、スタックの
中の指令データを実行する実行処理手段などを具備する
ことを構成要件としている。
[Detailed Description of the Invention] [Summary] Regarding a stack control method in which command data from multiple systems is stored in one stack, and the command data stored in the stack is retrieved and executed, in this type of stack control method, A stack that stores command data, valid bits, and system code, with the purpose of guaranteeing the order of command data execution; a write address register used when writing command data to the stack; and a stack command. Execution address register used when executing data, save address register, halt state storage means that indicates which system command data is in a halt state among command data in the stack, save execution address register Cohering means for copying to the address register, restoring means for restoring the save address register to the execution address register, write processing means for writing command data to the stack, inside the stack A structural requirement is to include an execution processing means for executing the command data.

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

本発明は、複数のシステムから送られて来る命令や命令
を間接的に指定するデータなどの指令データを1個のス
タックに格納し、スタックに格納された指令データを取
り出して実行するスタック制御方式に関するものである
The present invention is a stack control method in which command data such as commands sent from multiple systems and data indirectly specifying commands is stored in one stack, and the command data stored in the stack is retrieved and executed. It is related to.

〔従来の技術〕[Conventional technology]

第8図は従来のスタック制御方式を示す図である。同図
において、50はスタック、51は書込アドレス・レジ
スタ、52は実行アドレス・レジスタ、53は指令デー
タ・レジスタ、54は実行順序判別回路、55はホルト
状態記憶部、56は実行レジスタをそれぞれ示している
。システムとしては、A系、B系、・・・、n系が存在
する。符号51から56の部分は、システム毎に存在す
る。
FIG. 8 is a diagram showing a conventional stack control method. In the figure, 50 is a stack, 51 is a write address register, 52 is an execution address register, 53 is a command data register, 54 is an execution order determination circuit, 55 is a halt state storage unit, and 56 is an execution register. It shows. As systems, there are A system, B system, . . . , n system. Portions 51 to 56 exist for each system.

スタック50には、対応するシステムから送られて来た
指令データ及び実行順序コードが格納される。指令デー
タとは、命令または命令を間接的に指示するデータを意
味している。書込アドレス・レジスタ51は、指令デー
タをスタック50に書き込むときに使用されるものであ
る。実行アドレス・レジスタ52は、スタック50の中
の指令データを実行するときに使用されるものである。
The stack 50 stores command data and execution order codes sent from the corresponding system. Command data means a command or data that indirectly instructs a command. Write address register 51 is used when writing command data to stack 50. Execution address register 52 is used when executing command data in stack 50.

指令データ・レジスタ53には、対応するシステムから
送られて来た指令データがセットされる。実行順序判別
回路54は、指令データの受付順序を判別するものであ
る0例えば、指令データの受付順序がA系の指令データ
、B系の指令データ、・・・と言うものであれば、A系
の実行順序判別回路54は自分のデータの受付順序が第
1番目(最先)であると判別して第1番目を表す実行順
序コードを生成し、B系の実行順序判別回路54は自分
の指令データの受付順序が第2番目であると判別して第
2番目を表す実行順序コードを生成する0例えば、A系
のホルト状態記憶部55の状態値は、A系システムから
ホルト指示が送られて来た時にホルト値(オン)になり
、スタート指示が送られて来た時に非ホルト値(オフ)
になる。A系のホルト状態記憶部55の値がホルト値を
示している場合には、A系のスタック50からの読み出
しは行われない、実行レジスタ56には、スタック50
から読出された指令データがセットされる。
The command data register 53 is set with command data sent from the corresponding system. The execution order determination circuit 54 determines the order in which command data is received.For example, if the order in which command data is received is A-system command data, B-system command data, etc., then A The system's execution order determining circuit 54 determines that its own data reception order is the first (first) and generates an execution order code representing the first, and the B system's execution order determining circuit 54 determines that its own data reception order is the first (first) For example, the state value of the halt state storage unit 55 of system A is determined to be the second command data reception order and generates an execution order code representing the second command data. It becomes a halt value (on) when it is sent, and a non-halt value (off) when a start instruction is sent.
become. When the value of the A-system halt state storage unit 55 indicates the halt value, reading from the A-system stack 50 is not performed.
The command data read from is set.

A系システムから指令データが送られて来ると、指令デ
ータがスタック50に書き込まれ、書込アドレス・レジ
スタ51が+1される。この時、受付順序(A系、B系
、・・・・n系を含めた全体としての)が実行順序判別
回路54により判別され、実行順序コードが生成され、
この実行順序コードもスタック50に書き込まれる。同
様な動作がB系。
When command data is sent from the A system, the command data is written to the stack 50 and the write address register 51 is incremented by 1. At this time, the reception order (as a whole including A system, B system, ... n system) is determined by the execution order determination circuit 54, and an execution order code is generated.
This execution order code is also written to the stack 50. A similar action occurs in the B series.

・・・、n系についても行われる。. . . This is also carried out for the n-series.

起動されると、スタック50から指令データ及び実行順
次゛コードが読み出される。他のシステムついても同様
である。A系のスタック50から読み出された指令デー
タ、B系のスタック50から読み出された指令データ、
・・・、n系のスタック50から読み出された指令デー
タに基づく処理が行われるが、その実行順序は読み出さ
れた実行順序コードの値に従う。
When activated, command data and execution sequential code are read from the stack 50. The same applies to other systems. Command data read from the A-system stack 50, command data read from the B-system stack 50,
. . . Processing is performed based on command data read from the n-system stack 50, and the execution order follows the value of the read execution order code.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

従来の技術においては、システム毎にスタックなどを用
意し、多数システムからの指令データを順番に対応する
スタックに格納し、順番に取り出して実行し、且つ各シ
ステム毎にホルト指示やスタート指示がなされたりする
ため、ホルト指示やスタート指示がなされても、各シス
テム毎の指令データの実行の順次性を保つようにするに
は、各システム毎にスタック及びシステム間の指令デー
タの順番を記憶するための機能が必要となり、ハードウ
ェアが増大するという欠点があった。
In conventional technology, a stack is prepared for each system, and command data from multiple systems is stored in the corresponding stack in order, retrieved and executed in order, and halt and start instructions are issued for each system. In order to maintain the sequential execution of command data for each system even when a halt command or a start command is issued, it is necessary to store the stack for each system and the order of command data between systems. This had the disadvantage of requiring additional functions and increasing hardware.

本発明は、この点に鑑みて創作されたものであって、複
数システムからの指令データを1個のスタックに格納し
、しかも指令データ実行の順序性を保証できるようにな
ったスタック制御方式を提供することを目的としている
The present invention was created in view of this point, and provides a stack control method that stores command data from multiple systems in one stack and also guarantees the order of command data execution. is intended to provide.

〔問題点を解決するための手段〕[Means for solving problems]

第1図は本発明の原理図である0本発明のスタック制御
方式は、書込アドレス・レジスタ1、実行アドレス・レ
ジスタ2、セーブ・アドレス・レジスタ3、ホルト状態
記憶手段10と11、スタック32、有効ビット生成手
段60、システム・コード生成手段61、コピー手段6
2、復元手段63、書込処理手段64、実行処理手段6
5、更新手段66と67等を具備している。スタック3
2は、2個のシステムA、Bからの指令データを記憶す
ると共に、有効ビット及び指令データ発行元のシステム
を示すシステム・コードをも記憶する。書込アドレス・
レジスタlは、指令データ等をスタック32に書き込む
ときに使用される。更新手段66は、書込アドレス・レ
ジスタ1の更新を行う、実行アドレス・レジスタ2は、
スタック32の指令データを実行する場合などに使用さ
れる。更新手段67は、実行アドレス・レジスタ2の更
新を行う、セーブ・アドレス・レジスタ3は、実行アド
レス・レジスタ2の値をセーブするためのものである。
FIG. 1 is a diagram showing the principle of the present invention. The stack control method of the present invention includes a write address register 1, an execution address register 2, a save address register 3, halt state storage means 10 and 11, and a stack 32. , valid bit generation means 60, system code generation means 61, copying means 6
2. Restoring means 63, writing processing means 64, execution processing means 6
5. Update means 66 and 67 are provided. stack 3
2 stores command data from the two systems A and B, and also stores a valid bit and a system code indicating the system that issued the command data. Write address/
Register l is used when writing command data etc. to stack 32. The updating means 66 updates the write address register 1, and the execution address register 2:
It is used, for example, when executing command data in the stack 32. The update means 67 updates the execution address register 2. The save address register 3 is used to save the value of the execution address register 2.

有効ビット生成手段60は、オンの有効ビット及びオフ
の有効ビットを生成する。
The valid bit generating means 60 generates an on valid bit and an off valid bit.

システム・コード生成手段61は、指令データ発行元シ
ステムを示すシステム・コードを生成する。
System code generation means 61 generates a system code indicating the command data issuing system.

ホルト状態記憶手段10は、A系システムからホルト指
示が送られて来た時にホルト値となり、A系システムか
らスタート指示が送られて来た時に非ホルト値となる。
The halt state storage means 10 takes a halt value when a halt instruction is sent from the A system, and takes a non-halt value when a start instruction is sent from the A system.

ホルト状態記憶手段11は、B系システムからホルト指
示が送られて来た時にホルト値となり、B系システムか
らスタート指示が送られて来た時に非ホルト値となる。
The halt state storage means 11 becomes a halt value when a halt instruction is sent from the B system, and becomes a non-halt value when a start instruction is sent from the B system.

コピー手段62は、実行アドレス・レジスタ2の値をセ
ーブ・アドレス・レジスタ3にコピーする処理を行う。
The copying means 62 performs a process of copying the value of the execution address register 2 to the save address register 3.

復元手段63は、セーブ・アドレス・レジスタ3の値を
実行アドレス・レジスタ2に復元するための処理を行う
、書込処理手段64は、指令データ等をスタック32に
書き込むための処理を行う、実行処理手段65は、スタ
ック32に格納されている指令データを実行するための
処理を行う。
The restoring means 63 performs processing to restore the value of the save address register 3 to the execution address register 2. The write processing means 64 performs processing to write command data etc. to the stack 32. The processing means 65 performs processing for executing command data stored in the stack 32.

コピー手段62は、 ■ 他方のシステムBのホルト状態記憶手段11が非ホ
ルト値の状態の下で一方のシステムAからホルト指示が
出された場合、 ■ 一方のシステムAのホルト状態記憶手段10が非ホ
ルト値の状態の下で他方のシステムBからホルト指示が
出された場合、 ■ 2個のホルト状態記憶手段10.11が両方ともホ
ルト値であり且つ実行アドレス・レジスタ2の値がセー
ブ・アドレス・レジスタ3の値以上である状態の下で、
セーブ・アドレス・レジスタ3の値が実行アドレス・レ
ジスタ2に復元された場合、 に実行アドレス・レジスタ2の値をセーブ・アドレス・
レジスタ3にコピーするための処理を行う。
The copying means 62 performs the following operations: (1) When one system A issues a halt instruction while the other system B's halt state storage means 11 is in a non-halt value state, (1) the halt state storage means 10 of one system A When a halt instruction is issued from the other system B under a non-halt value state, ■ both of the two halt state storage means 10 and 11 are the halt value, and the value of the execution address register 2 is the save value. Under the condition that the value of address register 3 is greater than or equal to
If the value of save address register 3 is restored to execution address register 2, the value of execution address register 2 is restored to save address register 2.
Perform processing to copy to register 3.

復元手段63は、一方のシステムAのホルト状態記憶手
段10がホルト値を示し且つ他方のシステムBのホルト
状態記憶手段11が非ホルト値を示している状態の下で
一方のシステムAのホルト状態記憶手段10が非ホルト
値を示したこと又は他方のシステムBのホルト状態記憶
手段11がホルト値を示し且つ一方のシステムAのホル
ト状態記憶手段11が非ホルト値を示している状態の下
で他方のシステムBのホルト状態記憶手段11が非ホル
ト値を示したことを条件として、セーブ・アドレス・レ
ジスタ3の値を実行アドレス・レジスタ2に復元するた
めの処理を行う。
The restoring means 63 restores the halt state of one system A under a state in which the halt state storage means 10 of one system A indicates a halt value and the halt state storage means 11 of the other system B indicates a non-halt value. Under the condition that the storage means 10 indicates a non-halt value or the halt state memory means 11 of the other system B indicates a halt value and the halt state memory means 11 of one system A indicates a non-halt value. On condition that the halt state storage means 11 of the other system B indicates a non-halt value, processing is performed to restore the value of the save address register 3 to the execution address register 2.

書込処理手段64は、システムから指令データが送られ
て来た時、当該指令データ、オンの有効ビット及び指令
データ発行元システムのシステム・コードをスタック3
2における書込アドレス・レジスタ1で示される番地に
書き込み、その後に書込アドレス・レジスタ1の更新の
ための処理を行う。
When command data is sent from the system, the write processing means 64 stores the command data, the ON valid bit, and the system code of the command data issuing system in the stack 3.
2 to the address indicated by write address register 1, and then processing for updating write address register 1 is performed.

実行処理手段65は、スタック32における実行アドレ
ス・レジスタ2で示される番地からデータを読み出し、 ■ 読出データの中の有効ビットがオフの場合には、実
行アドレス・レジスタ2の更新を行ってスタック32か
ら次のデータを読み出すための処理を行い、 ■ 読出データのシステム・コードで特定されるホルト
状態記憶手段10又は11がホルト値を示している場合
には、実行アドレス・レジスタ2の更新を行ってスタッ
ク32から次のデータを読み出すための処理を行い、 ■ 読出データの中の有効ビットがオンであり且つ読出
データのシステム・コードで特定されるホルト状態記憶
手段10又は11が非ホルト値を示している場合には、
読出データの中の指令データに基づく処理を実行し、処
理終了後に実行アドレス・レジスタ2で示される番地の
有効ビットをオフにし、その後に実行アドレス・レジス
タ2を更新するための処理を行う。
The execution processing means 65 reads data from the address indicated by the execution address register 2 in the stack 32; (1) If the valid bit in the read data is off, it updates the execution address register 2 and writes the 1. If the halt state storage means 10 or 11 specified by the system code of the read data indicates a halt value, the execution address register 2 is updated. (1) The valid bit in the read data is on and the halt state storage means 10 or 11 specified by the system code of the read data has a non-halt value. If indicated,
It executes processing based on command data in the read data, turns off the valid bit at the address indicated by execution address register 2 after the processing is completed, and then performs processing for updating execution address register 2.

〔実施例〕〔Example〕

第2図は本発明の実施例の概要を示す図、第3図はスタ
ックの実行を説明する図、第4図はスタックへあデータ
の書込み及びスタックのデータに基づく実行を説明する
図、第5図は本発明の実施例のブロック図、第6図は制
御信号の生成を示す図、第7図はホルト指示がなされそ
の後にスタート指示がなされた場合の動作を示す図であ
る。図において、1は書込アドレス・レジスタ、2は実
行アドレス・レジスタ、3はセーブ・アドレス・レジス
タ、4はシステムA側のコマンド・アドレス・レジスタ
、5はシステムB側のコマンド・アドレス・レジスタ、
6は読出Vビット、7は読出Sビット、8は実行レジス
タ、10から15はフリップ・フロップ、16はホルト
解除信号、17はC0PY信号、19から22はAND
回路、23はOR回路、24と25はAND回路、26
はOR回路、−27はAND回路、28はOR回路、3
0はシステムA側のアダプタ操作レジスタ、31はシス
テムB側のアダプタ操作レジスタ、32はスタック、3
3はコマンド・バッファ、40は共通メモリ・アダプタ
、41は共通メモリ、G1から614はゲート条件をそ
れぞれ示している。
FIG. 2 is a diagram showing an overview of an embodiment of the present invention, FIG. 3 is a diagram explaining stack execution, FIG. 4 is a diagram explaining writing of data to the stack and execution based on stack data, and FIG. FIG. 5 is a block diagram of an embodiment of the present invention, FIG. 6 is a diagram showing the generation of control signals, and FIG. 7 is a diagram showing the operation when a halt instruction is issued and then a start instruction is issued. In the figure, 1 is a write address register, 2 is an execution address register, 3 is a save address register, 4 is a command address register on the system A side, 5 is a command address register on the system B side,
6 is the read V bit, 7 is the read S bit, 8 is the execution register, 10 to 15 are flip-flops, 16 is the halt release signal, 17 is the C0PY signal, 19 to 22 are AND
circuit, 23 is an OR circuit, 24 and 25 are an AND circuit, 26
is an OR circuit, -27 is an AND circuit, 28 is an OR circuit, 3
0 is the adapter operation register on the system A side, 31 is the adapter operation register on the system B side, 32 is the stack, 3
3 is a command buffer, 40 is a common memory adapter, 41 is a common memory, and G1 to 614 are gate conditions.

先ず、第2図について説明する。共通メモリ41と接続
している共通メモリ・アダプタ40は、二重化システム
において、主系ダウン時に従系システムに素早く切り換
えるための装置であり、共通メモリ41には切り換える
ときに必要な情報が格納されている。システムAがコマ
ンド・アl’レスを送出すると、このコマンド・アドレ
スはコマンド・アドレス・レジスタ4にセットされ、次
いでスタック32に書き込まれ、書込アドレス・レジス
タ1(第5図を参照)が+1される。システムAのコマ
ンド・アドレスを書き込むときには、“1°のVビット
及び“0゛のSビットも同一番地に書き込まれる(第5
図を参照)0次に、例えばシステムBがコマンド・アド
レスを発行すると、このコマンド・アドレスはコマンド
・アドレス・レジスタ5にセットされ、次いでスタック
32に書き込まれ、書込アドレス・レジスタlが+1さ
れる。システムBのコマンド・アドレスを書き込む際に
は、“1゛のvビット及び“1”のSビットが同一番地
に書き込まれる。スタック32へのコマンド・アドレス
の書込みは上述のようにして行われる。
First, FIG. 2 will be explained. The common memory adapter 40 connected to the common memory 41 is a device for quickly switching to the slave system when the main system is down in a duplex system, and the common memory 41 stores information necessary for switching. There is. When system A issues a command address, this command address is set in command address register 4, then written to stack 32, and write address register 1 (see Figure 5) is set to +1. be done. When writing the command address of system A, the V bit of “1°” and the S bit of “0” are also written to the same location (5th
(see figure) 0 Then, for example, when system B issues a command address, this command address is set in command address register 5, then written to stack 32, and write address register l is incremented by 1. Ru. When writing the command address of system B, the v bit of "1" and the S bit of "1" are written to the same location. Writing of the command address to the stack 32 is performed as described above.

システムからの指示する5TART/HALT命令はス
タック内のコマンドを読み出すための開始信号ではなく
、コマンドを実行していいか、待たせるかを指示するも
のである。実際、スタック内のデータを読み出すのはマ
イクロプログラムが管理しており、マイクロプログラム
の指示によりコマンドの読み出しを行う、スタック32
のX番地から読出された読出データ(コマンド・アドレ
ス、Vビット及びSビットより成る)は実行レジスタ8
などにセットされる。読出データのSビットが“O゛で
あり且つVビットが“1゛である場合には、システムA
の主記憶におけるコマンド・アドレスで示される番地か
らコマンドを読み出し、読み出したコマンドをコマンド
・バッファ33に格納する。
The 5TART/HALT command issued by the system is not a start signal for reading commands in the stack, but rather indicates whether to execute the command or whether to wait. In fact, reading the data in the stack is managed by the microprogram, and the stack 32 reads commands according to instructions from the microprogram.
The read data (consisting of command address, V bit and S bit) read from address X of execution register 8
etc. is set. If the S bit of the read data is “O” and the V bit is “1”, the system A
The command is read out from the address indicated by the command address in the main memory of , and the read command is stored in the command buffer 33.

コマンドは、第3図に示すように、コマンド・コード、
バイト・カウント、共通メモリ・アドレスおよび主記憶
アドレスなどから構成されている。
As shown in Figure 3, the command is a command code,
It consists of byte count, common memory address, main memory address, etc.

コマンド・コードには、1eadと−riteとがある
Command codes include 1ead and -rite.

バッファ33にコマンドをフェッチした後、共通メモリ
・アダプタ40は、コマンド・コードに従って共通メモ
リ41とシステムAの主記憶との間でデータ転送を行う
、データ転送が終了した後、X番地のVビットは“0”
とされる。システムBがスタート指示を送出した場合に
も同様な動作が行われる。
After fetching the command into the buffer 33, the common memory adapter 40 transfers data between the common memory 41 and the main memory of system A according to the command code. After the data transfer is completed, the V bit at address is “0”
It is said that A similar operation is performed when system B sends a start instruction.

システムAがホルト(HALT)指示を送出すると、こ
のホルト指示はアダプタ操作レジスタ30にセットされ
、スタック32に格納されているシステムAのコマンド
・アドレスに基づくデータ転送は中断される。システム
Bがホルト指示を送出した場合には、スタック32に格
納されているシステムBのコマンド・アドレスに基づく
データ転送は中断される。
When System A issues a HALT instruction, the HALT instruction is set in adapter operation register 30 and data transfer based on System A's command address stored in stack 32 is interrupted. If System B issues a halt indication, data transfer based on System B's command address stored in stack 32 is interrupted.

第4図はスタックへのデータの書込み及びスタックのデ
ータに基づく実行を説明する図である。
FIG. 4 is a diagram illustrating writing of data to the stack and execution based on the data in the stack.

コマンド・アドレス・レジスタ4又は5にデータが書き
込まれると、5TKRQIA (スタック・リクエスト
)または5TKRQIBがオンになる。5TKRQIA
がオンになると、ゲートG5(第5図参照)が開きコマ
ンド・アドレス・レジスタ4のデータがスタック32に
書き込まれる。同様に、5TKRQIIBがオンになる
と、ゲートG6 (第5図参照)が開きコマンド・アド
レス・レジスタ5のデータがスタック32に書き込まれ
る。 5TKRQ暑Aおよび5TKRQIBの両方がオ
ンでない場合には、スタック32からデータが読み出さ
れ、読出データが有効な場合には、読出データに基づく
処理が実行される。なお、第4図の処理はマイクロプロ
グラムにより実現される。
When data is written to command address register 4 or 5, 5TKRQIA (stack request) or 5TKRQIB is turned on. 5TKRQIA
When turned on, gate G5 (see FIG. 5) opens and the data in command address register 4 is written to stack 32. Similarly, when 5TKRQIIB turns on, gate G6 (see FIG. 5) opens and the data in command address register 5 is written to stack 32. If both 5TKRQ A and 5TKRQIB are not on, data is read from the stack 32, and if the read data is valid, processing based on the read data is executed. Note that the processing in FIG. 4 is realized by a microprogram.

第5図は本発明の実施例のブロック図である。FIG. 5 is a block diagram of an embodiment of the present invention.

システムAがシステムBよりも先にホルト指示を送出す
るとビットAIはオンになり、システムBがシステムA
よりも先にホルト指示を送出すると、ビットBHはオン
になる。ビットAIとBHを合わせたものをHコードと
言う。ゲートG1は、コマンド・アドレスをスタックす
る時に開き、ゲートG2はコマンド・アドレスに基づく
データ転送が終了した時に開き、ゲートG3はシステム
Aのコマンド・アドレスをスタックする時に簡き、ゲー
トG4はシステムBのコマンド・アドレスをスタックす
る時に開き、ゲー)G5はシステムAのコマンド・アド
レスをスタックする時に開き、ゲートG6はシステムB
のコマンド・アドレスをスタックする時に開く。
If system A sends a halt instruction before system B, bit AI will turn on and system B will
If a halt instruction is sent earlier than , bit BH turns on. The combination of bits AI and BH is called the H code. Gate G1 is opened when stacking the command address, gate G2 is opened when data transfer based on the command address is completed, gate G3 is opened when stacking the command address of system A, and gate G4 is opened when stacking the command address of system A. Gate G5 is opened when stacking the command address of system A, gate G5 is opened when stacking the command address of system A, and gate G6 is opened when stacking the command address of system A.
Open when stacking command addresses.

ゲートG7は、信号C0PYがオンになった時に開く。Gate G7 opens when signal C0PY is turned on.

ゲートG8は、ホルト解除信号がオンしたことを条件に
開く。ゲートG9は、 “0゛のVビットがスタック3
2から読出された時、コマンド・アドレスに基づくデー
タ転送が終了した時又はスタックから読出されたデータ
のSビットとHコードが一致する時に開く。ゲートG1
0は、コマンド・アドレスの書込みが指示された時に開
く。ゲー) Gllは、コマンド・アドレスに基づくデ
ータ転送の実行が指示された時に開く、書込アドレス・
レジスタ1は、スタック32にコマンド・アドレスが書
き込まれる度に+1される。書込みが指示されている場
合には、書込アドレス・レジスタ1のアドレスがスタッ
ク32に送られる。実行アドレス・レジスタ2の内容は
、ゲートG9が開くと+1される。
Gate G8 opens on condition that the halt release signal is turned on. Gate G9 is “0” V bit is stack 3
2, when data transfer based on a command address is completed, or when the S bit and H code of data read from the stack match. Gate G1
0 is opened when command address writing is instructed. Game) Gll is a write address that opens when instructed to execute data transfer based on a command address.
Register 1 is incremented by 1 each time a command address is written to stack 32. If a write is instructed, the address of write address register 1 is sent to stack 32. The contents of execution address register 2 are incremented by 1 when gate G9 opens.

また、ゲー)G7が開くと、実行アドレス・レジスタ2
の内容はセーブ・アドレス・レジスタ3にコピーされる
。ゲートG8が開くと、セーブ・アト−レス・レジスタ
3の内容は実行アドレス・レジスタ2に復元される。実
行が指示されると、実行アドレス・レジスタ2のアドレ
スがゲー) Gllを介してスタック32に送られ、ス
タック32からデータが読み出される。A系システムが
コマンド・アドレスを送出すると、このコマンド・アド
レスがレジスタ4にセットされ、ゲートG5が開き、レ
ジスタ4のコマンド・アドレスがスタック32のデータ
入力端子に印加される。同様に、B系システムがコマン
ド・アドレスを送出すると、このコマンド・アドレスが
レジスタ5にセットされ、ゲー)G6が開き、レジスタ
5のコマンド・アドレスがスタック32のデータ入力端
子に印加される。コマンド・アドレスをスタック32に
書き込む時、ゲー)Glが開き、“1”のVビットも書
き込まれ、更に、A系スタックの時は“0°のSビット
がスタック32に書き込まれ、B系スタックのときは“
1゛のSビットがスタック32に書き込まれる。
Also, when G7 opens, the execution address register 2
The contents of are copied to save address register 3. When gate G8 opens, the contents of save address register 3 are restored to execution address register 2. When execution is instructed, the address of the execution address register 2 is sent to the stack 32 via the GLL, and data is read from the stack 32. When the A system sends a command address, this command address is set in register 4, gate G5 is opened, and the command address in register 4 is applied to the data input terminal of stack 32. Similarly, when the B system sends a command address, this command address is set in register 5, gate G6 is opened, and the command address in register 5 is applied to the data input terminal of stack 32. When a command address is written to the stack 32, Gl is opened, the V bit of "1" is also written, and furthermore, when the A system stack is written, the S bit of "0° is written to the stack 32, and the S bit of 0° is written to the B system stack. When “
An S bit of 1' is written to the stack 32.

スタック32のX番地からデータが読出されると、その
読出データの中のコマンド・アドレスは実行レジスタ8
にセットされ、Vビットは読出Vビット部6にセットさ
れ、Sビットは読出Sビット部7にセットされる。読み
出されたコマンド・アドレスに基づくデータ転送が終了
した時、ゲートG2が開き、スタック2のX番地のVビ
ットが“0゜にされる。
When data is read from address X of the stack 32, the command address in the read data is stored in the execution register 8.
, the V bit is set in the read V bit section 6, and the S bit is set in the read S bit section 7. When the data transfer based on the read command address is completed, gate G2 is opened and the V bit at address X of stack 2 is set to "0".

第6図は制御信号の生成を説明する図である。FIG. 6 is a diagram illustrating generation of control signals.

同図において、10.11.15はJ−にフリップ・フ
ロップを示し、12から14はDフリップ・フロップを
示す。
In the figure, 10.11.15 indicates a J- flip-flop, and 12 to 14 indicate a D flip-flop.

第6図(a)に示すように、A系ホルト指示がなされる
と、J−にフリップ・フロップlOがセットされ、信号
HALTAがオンになる。A系スタート指示がなされる
と、J−にフリップ・フロップ10はリセットされ、信
号HALTAがオフされる。同様に、B系ホルト指示が
なされると、J−にフリップ・フリップ11がセットさ
れ、信号HALTBがオンになる。B系スタート指示が
なされと、J−にフリップ・フロップ11はリセットさ
れ、信号HALTBがオフされる。信号HALTAと信
号HALTBが両方ともオンになると、信号Wllがオ
ンになる。オンの信号−Hは、A系およびB系の両方か
らホルト指示が出されたことを示している。
As shown in FIG. 6(a), when the A-system halt instruction is issued, the flip-flop IO is set to J-, and the signal HALTA is turned on. When the A-system start instruction is issued, the flip-flop 10 is reset to J-, and the signal HALTA is turned off. Similarly, when a B-system halt instruction is issued, the flip-flip 11 is set to J-, and the signal HALTB is turned on. When the B system start instruction is issued, the flip-flop 11 is reset to J-, and the signal HALTB is turned off. When signal HALTA and signal HALTB are both turned on, signal Wll is turned on. The ON signal -H indicates that a halt instruction has been issued from both the A system and the B system.

第6図℃)に示すように、信号HALTAがオンで且つ
信号HALTBがオンである場合には、信号Allがオ
ンになる。同様に、信号HALTBがオシで且つ信号H
ALTAがオンである場合には、信号BHがオンになる
。信号AIがオンの状態の下で信号HALTAがオンに
なった場合にはホルト解除信号がオンとなり、また、信
号BHがオンの状態の下で信号11.A LT Bがオ
ンになった場合にもホルト解除信号がオンとなる。
As shown in FIG. 6° C.), when the signal HALTA is on and the signal HALTB is on, the signal All is turned on. Similarly, the signal HALTB is high and the signal H
When ALTA is on, signal BH is on. When the signal HALTA turns on while the signal AI is on, the halt release signal turns on, and when the signal BH turns on, the signal 11. The halt release signal also turns on when ALT B turns on.

第6図(C)に示すように、実行アドレス・レジスタ2
の内容とセーブ・アドレス・レジスタ3の内容が等しく
なると、J−にフリップ・フロップ15はセットされ、
信号11:A、SAがオンになる。そして、信号C0P
Yがオンになると、J−にフリップ・フロップ15はリ
セットされ、信号EA=SAがオフになる。
As shown in FIG. 6(C), execution address register 2
When the contents of the save address register 3 become equal to the contents of the save address register 3, the flip-flop 15 is set to J-;
Signal 11: A, SA turns on. And signal C0P
When Y is turned on, flip-flop 15 is reset to J- and signal EA=SA is turned off.

第6図(d)に示すように、信号HALTBがオン(B
系ホルトではない)の状態の下でA系ホルト指示がなさ
れると、信号C0PYがオンになる。また、信号HAL
TAがオン(A系ホルトではない)の状態の下でB系ホ
ルト指示がなされると、信号C0PYがオンになる。更
に、ホルト解除信号がオン、信号WHがオン及び信号E
A=S^がオンと言う条件が成立した時にも信号cop
yがオンになる。
As shown in FIG. 6(d), the signal HALTB is turned on (B
When an A-system halt instruction is issued under a condition (not a system-system halt), the signal C0PY is turned on. In addition, the signal HAL
When a B-system halt instruction is issued while TA is on (not an A-system halt), the signal C0PY is turned on. Furthermore, the halt release signal is turned on, the signal WH is turned on, and the signal E is turned on.
The signal cop is also activated when the condition that A=S^ is on is met.
y turns on.

次に第5図の実施例の動作について説明する。Next, the operation of the embodiment shown in FIG. 5 will be explained.

スタック32にコマンド・アドレスを格納する場合には
、A系かB系かにかかわらず送られて来た順番にコマン
ド・アドレスをスタック32に格納し、実行アドレス・
レジスタ2を+1更新する。
When storing command addresses in the stack 32, the command addresses are stored in the stack 32 in the order in which they are sent, regardless of whether they are sent from the A system or the B system, and the execution address
Update register 2 by +1.

この際に、コマンド・アドレスの他に、当該コマンド・
アドレスが有効であることを示す°1″のVビットをス
タック32の同一番地に書込み、更に当該コマンド・ア
ドレスがA系のものであれば“0”のSビットを、B系
のものであれば“1”のSビットをスタック32の同一
番地に書き込む。
At this time, in addition to the command address,
A V bit of °1" indicating that the address is valid is written to the same location on the stack 32, and if the command address is from the A system, an S bit of "0" is written, and an S bit of "0" is written if the command address is from the A system. For example, an S bit of “1” is written to the same location on the stack 32.

実行時には、実行アドレス・レジスタ2を使用する。ス
タック32から読み出したデータのVビットが“l”で
あれば当該コマンド・アドレスを有効とみなし、A系又
はB系に対する処理を行い、処理が完了するとVビット
を0°とし、スタック32に格納し、実行アドレス・レ
ジスタ2を+1更新する。スタック32からデータを読
み出したとき、読出データのVビットが“0゛であれば
、そのデータは無効とし、Vビットが“1°のデータを
取り出すまで実行アドレス・レジスタ2の更新を行う。
During execution, execution address register 2 is used. If the V bit of the data read from the stack 32 is "l", the command address is considered valid, processing is performed for the A system or B system, and when the processing is completed, the V bit is set to 0° and stored in the stack 32. and updates execution address register 2 by +1. When data is read from the stack 32, if the V bit of the read data is "0", the data is invalidated, and the execution address register 2 is updated until data with the V bit of "1" is retrieved.

第7図はホルト指示が発行され、その後にスタート指示
が発行された場合の動作を説明する図−である、同図に
おいて、EARは実行アドレス・レジスタ、SARはセ
ーブ・アドレス・レジスタを示している。また、AIH
ALTはA系がホルト状態であることを示し、Al5T
ARTはA系がスタート指示を発行したことを示し、B
IIIALTはB系がホルト状態であることを示し、B
ISTARTはB系がスタート指示を発行したことを意
味している。
FIG. 7 is a diagram explaining the operation when a halt instruction is issued and then a start instruction is issued. In the figure, EAR indicates the execution address register and SAR indicates the save address register. There is. Also, AIH
ALT indicates that the A system is in the halt state, and Al5T
ART indicates that the A system has issued a start instruction, and the B system
IIIALT indicates that the B system is in the halt state, and B
ISTART means that the B system has issued a start instruction.

第7図(a)はA系システムがホルト指示を発行し、そ
の後にA系システムがスタート指示を発行した場合の動
作を示す図である。A系システムがホルト指示を発行す
ると、その時の実行アドレス・レジスタ2の内容がセー
ブ・アドレス・レジスタ3に格納され、A系はホルト状
態になる0図示の例では、ホルト指示が発行された時の
実行アドレス・レジスタ2の値は01番地を示している
と仮定している。B系システムからホルト指示が発行さ
れていないので、スタック32の01番地からデータが
読出され、この読出データはB系システムのものである
ので、読出データに基づく処理が行われ、処理終了後に
01番地のVビットは′0゜にされる0次に02番地の
データが読出され、この読出データはA系システムのも
のであるので、次に03番地のデータが読出されるが、
この読出データもA系システムのものであるので、読出
データに基づく処理は行われず、04番地のデータが読
出される。04番地のデータはB系システムのものであ
るので、このデータに基づく処理が行われ、処理終了後
に04番地のVビットは0”とされ、実行アドレス・レ
ジスタ2の値は05番地に更新される。この時に、A系
システムからスタート指示が発行されると、セーブ・ア
ドレス・レジスタ3に保存されていた01番地は実行ア
ドレス・レジスタ2に書き込まれ、スタック32の01
番地からデータが読出され、A系システムのデータに基
づく処理が行われる。この場合、既に処理済のB系シス
テムのコマンド・アドレスはVビットが“0”にリセッ
トされているので、これらB系システムのコマンド・ア
ドレスに基づ(処理は行われない。
FIG. 7(a) is a diagram showing the operation when the A system issues a halt instruction and then the A system issues a start instruction. When the A system issues a halt instruction, the contents of execution address register 2 at that time are stored in save address register 3, and the A system enters the halt state.0 In the illustrated example, when a halt instruction is issued, It is assumed that the value of execution address register 2 indicates address 01. Since no halt instruction has been issued from the B system, data is read from address 01 of the stack 32. Since this read data is from the B system, processing is performed based on the read data, and after the processing is completed, the data is read from address 01. The V bit of the address is set to '0°.0 Next, the data at address 02 is read out, and since this read data is from the A system, the data at address 03 is read out next.
Since this read data is also from the A system, no processing is performed based on the read data, and the data at address 04 is read. Since the data at address 04 is from the B system, processing is performed based on this data, and after the processing is completed, the V bit at address 04 is set to 0'' and the value of execution address register 2 is updated to address 05. At this time, when a start instruction is issued from the A system, address 01 saved in save address register 3 is written to execution address register 2, and address 01 of stack 32 is written to execution address register 2.
Data is read from the address and processing is performed based on the data of the A system. In this case, since the V bit of the command addresses of the B-systems that have already been processed has been reset to "0", no processing is performed based on the command addresses of these B-systems.

第7図(ロ)はA系システムがホルト指示を発行し、そ
の後でB系システムがホルト指示を発行し、その後でス
タート指示が発行された場合の動作を説明する図である
。実行アドレス・レジスタが01番地を指している時に
A系システムがホルト指示を発行すると、信号AIがオ
ンになり、セーブ・アドレス・レジスタ3に01番地が
保存される。実行アドレス・レジスタ2が04番地を指
している時にB系システムがホルト指示を発行すると、
A系システム及びB系システムの両方ともホルト指示を
発行したので、実行アドレス・レジスタ2の更新は停止
され、スタック32からのデータの読出しも停止される
。この状態の下で、Bシステムがスタート指示を発行す
ると、実行アドレス・レジスタ2の値がスタック32に
のアドレス端子に入力され、スタック32からのデータ
読出しが再開される。それ以後は、第7図(a)の場合
と同じである。
FIG. 7(B) is a diagram illustrating the operation when the A system issues a halt instruction, then the B system issues a halt instruction, and then a start instruction is issued. When the A system issues a halt instruction while the execution address register is pointing to address 01, signal AI is turned on and address 01 is saved in save address register 3. If the B system issues a halt instruction when execution address register 2 points to address 04,
Since both the A system and the B system have issued a halt instruction, updating of execution address register 2 is stopped and reading of data from stack 32 is also stopped. Under this condition, when the B system issues a start instruction, the value of execution address register 2 is input to the address terminal of stack 32, and data reading from stack 32 is resumed. The subsequent steps are the same as in the case of FIG. 7(a).

A系システムがホルト指示を発行した時点での実行アド
レス(01番地)がセーブ・アドレス・レジスタ2に存
在し、B系がホルト指示を発行した時点での実行アドレ
ス(04番地)が実行アドレス・レジスタ2に存在する
状態の下において、A系システムが先にスタート指示を
発行した場合には、セーブ・アドレス・レジスタ3に格
納されている01番地が実行アドレス・レジスタ2に書
込まれると同時に実行アドレス・レジスタ2に格納され
ている04番地がセーブ・アドレス・レジスタ3に書込
まれる。そして、01番地のデータが読み出されるが、
01番地のデータは処理済であるので、02番地のデー
タが読み出され、この読出データに基づ(処理が行われ
、処理終了後に02番地のデータのVビットは“0゛と
される。
The execution address (address 01) at the time when the A system issues the halt instruction is present in save address register 2, and the execution address (address 04) at the time the B system issues the halt instruction is the execution address. Under the state existing in register 2, if the A system issues a start instruction first, address 01 stored in save address register 3 is written to execution address register 2 at the same time. Address 04 stored in execution address register 2 is written to save address register 3. Then, the data at address 01 is read, but
Since the data at address 01 has been processed, the data at address 02 is read out, and processing is performed based on this read data, and after the processing is completed, the V bit of the data at address 02 is set to "0".

同様にして03番地のデータに基づ(処理が行われる。Similarly, processing is performed based on the data at address 03.

04番地のデータはB系のものであり且つB系がホルト
状態であるので、このデータに基づく処理は実行されな
い。05番地のデータはA系のものであるので、05番
地のデータに基づ(処理が行われる。06番地のデータ
はB系のものであるので、このデータに基づく処理は行
われない。
Since the data at address 04 belongs to the B system and the B system is in a halt state, no processing is executed based on this data. Since the data at address 05 is from the A system, processing is performed based on the data at address 05. Since the data at address 06 is from the B system, no processing is performed based on this data.

実行アドレスが07番地を指している時に、B系からス
タート指示が送られて来ると、セーブ・アドレス・レジ
スタ3に保存されている04番地が実行アドレス・レジ
スタ2に書き込まれ、04番地のデータの読出しが行わ
れ条。
When the execution address points to address 07, when a start instruction is sent from the B system, address 04 saved in save address register 3 is written to execution address register 2, and the data at address 04 is The reading is performed.

この場合、セーブ・アドレス・レジスタ3のアドレスよ
りも実行アドレス・レジスタ2のアドレスの方が小さい
時に、B系がスタートすると、セーブ・アドレス・レジ
スタ3のアドレスと実行アドレス・レジスタ2のアドレ
スの間のデータを飛ばしてしまう可能性がある0例えば
、A系およびB系が両方とホルト状態で、セーブ・アド
レス・レジスタ3に01番地が保持され、実行アドレス
・レジスタ2に04番地が保持されていると仮定する。
In this case, if the B system starts when the address of execution address register 2 is smaller than the address of save address register 3, the address between save address register 3 and execution address register 2 will be For example, if both A and B systems are in a halt state, save address register 3 holds address 01, and execution address register 2 holds address 04. Assume that there is.

A系のホルト状態が解除されると、実行アドレス・レジ
スタ2の内容はセーブ・アドレス・レジスタ3にセーブ
され、セーブ・アドレス・レジスタ3の内容は実行アド
レス・レジスタ2に復元される。この結果、セーブ・ア
ドレス・レジスタ2の内容は04番地となり、実行アド
レス・レジスタ2の内容は01番地となる。次に、B系
のホルト状態が解除された場合、セーブ・アドレス・レ
ジスタ3の内容(04番地)を実行アドレス・レジスタ
2に復元すると、02番地及び03番地にA系のコマン
ドがあった場合には、これらのコマンドは飛ばされてし
まう、これを防止するために、両系がホルト状態(信号
Wllがオン)で次に片系がホルト状態を解除したとき
、セーブ・アドレス・レジスタ3の内容が実行アドレス
・レジスタ2の内容より小であったならば、実行アドレ
ス・レジスタ2の内容をセーブ・アドレス・レジスタ3
にコピーしない、このような動作は第5図(d)の回路
によって実現される。即ち、セーブ・アドレス・レジス
タ3の内容が実行アドレス・レジスタ2の内容より小で
あるときにはEA=SAビットはオンにならないので、
AND回路27のAND条件は成立せず、実行アドレス
・レジスタ2の内容はセーブ・アドレス・レジスタ3に
コピーされない。
When the halt state of system A is released, the contents of execution address register 2 are saved in save address register 3, and the contents of save address register 3 are restored to execution address register 2. As a result, the contents of save address register 2 become address 04, and the contents of execution address register 2 become address 01. Next, when the B-system halt state is released and the contents of save address register 3 (address 04) are restored to execution address register 2, if there are A-system commands at addresses 02 and 03, then In order to prevent this, when both systems are in the halt state (signal Wll is on) and one system releases the halt state, the save address register 3 is If the contents are smaller than the contents of execution address register 2, the contents of execution address register 2 are saved to save address register 3.
Such an operation, which is not copied to the original, is realized by the circuit shown in FIG. 5(d). In other words, when the contents of save address register 3 are smaller than the contents of execution address register 2, the EA=SA bit will not turn on.
The AND condition of the AND circuit 27 is not satisfied, and the contents of the execution address register 2 are not copied to the save address register 3.

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

以上の説明から明らかように、本発明によれば、(萄 
スタックの個数が1個で済むなどハードウェア構成を簡
単化できること、 (ロ)ホルト指示が発行された時、ホルト指示を発行し
たシステムからの指令データに基づく処理のみを一時的
に中断できること、 (C)  ホルト指示がない場合には、指令データの格
納順序に従って指令データが読出され、指令データに基
づく処理が行われること、 (財)ホルト指示があった後にスタート指示があった場
合においても、システム毎の指令データ格納順序を乱す
ことなくスタックから指令データを読み出し、指令デー
タに基づく処理を実行できること、 などの顕著な効果を奏することが出来る。
As is clear from the above description, according to the present invention,
(b) When a halt instruction is issued, only the processing based on the command data from the system that issued the halt instruction can be temporarily interrupted; C) If there is no halt instruction, the command data will be read out according to the storage order of the command data, and processing will be performed based on the command data.Even if a start instruction is given after a halt instruction is given, It is possible to achieve remarkable effects such as being able to read command data from the stack and execute processing based on the command data without disturbing the order in which command data is stored in each system.

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

第1図は本発明の原理図、第2図は本発明の実施例の概
要を示す図、第3図はスタックの実行を説明する図、第
4図はスタックへのデータの書込み及びスタックのデー
タに基づく実行を説明する図、第5図は本発明の実施例
のブロック図、第6図は制御信号の生成を示す図、第7
図はホルト指示が発行され、その後にスタート指示が発
行された場合の動作を説明する図、第8図は従来のスタ
ック制御方式のブロック図である。 l・・・書込アドレス・レジスタ、2・・・実行アドレ
ス・レジスタ、3・・・セーブ・アドレス・レジスタ、
4・・・システムA側のコマンド・アドレス・レジスタ
、5・・・システムB側のコマンド・アドレス・レジス
タ、6・・・読出Vビット、7・・・読出Sビット、8
・・・実行アドレス・レジスタ、10から15・・・フ
リップ・フロップ、16・・・ホルト解除信号、17・
・・C0PY信号、19から22・・・AND回路、2
3・・・OR回路、24と25−AND回路、26 ・
OR回路、27・・・AND回路、28・・・OR回路
、30・・・システムA側のアダプタ操作レジスタ、3
1・・・システムB側のアダプタ操作レジスタ、32・
・・スタック、33・・・コマンド・バッファ、40・
・・共通メモリ・アダプタ、41・・・共通メモリ、G
1ないしG14  ・・・ゲート。 第1図 スタックのス竹1鎚哨イる尺めの間 第:5図 壜公、!理乙貢イ↑匹理 第4図 本発明の実施イ別 第5図 第6図
FIG. 1 is a diagram showing the principle of the present invention, FIG. 2 is a diagram showing an overview of an embodiment of the present invention, FIG. 3 is a diagram explaining stack execution, and FIG. 4 is a diagram showing writing of data to the stack and stack operation. 5 is a block diagram of an embodiment of the present invention; FIG. 6 is a diagram illustrating generation of control signals; FIG.
This figure is a diagram for explaining the operation when a halt instruction is issued and a start instruction is issued thereafter, and FIG. 8 is a block diagram of a conventional stack control system. l...Write address register, 2...Execution address register, 3...Save address register,
4... Command address register on the system A side, 5... Command address register on the system B side, 6... Read V bit, 7... Read S bit, 8
...Execution address register, 10 to 15...Flip-flop, 16...Holt release signal, 17.
...C0PY signal, 19 to 22...AND circuit, 2
3...OR circuit, 24 and 25-AND circuit, 26 ・
OR circuit, 27...AND circuit, 28...OR circuit, 30...system A side adapter operation register, 3
1... Adapter operation register on the system B side, 32.
...Stack, 33...Command buffer, 40...
・・Common memory adapter, 41 ・・Common memory, G
1 to G14...Gate. Figure 1: The stack of bamboos is placed in the bamboo chamber. Figure 5: The bottle! Figure 4 Implementation of the present invention Figure 5 Figure 6

Claims (1)

【特許請求の範囲】 2個のシステム(A、B)と、 指令データ、有効ビット及び指令データ発行元のシステ
ムを示すシステム・コードよりなる語の複数個を記憶す
るスタック(32)と、 書込アドレス・レジスタ(1)と、 書込アドレス・レジスタ(1)の値を更新する更新手段
(66)と、 実行アドレス・レジスタ(2)と、 実行アドレス・レジスタ(2)の値を更新する更新手段
(67)と、 実行アドレス・レジスタ(2)の値をセーブするための
セーブ・アドレス・レジスタ(3)と、オンの有効ビッ
ト及びオフの有効ビットを生成する有効ビット生成手段
(60)と、 指令データ発行元システムを示すシステム・コードを生
成するシステム・コード生成手段(61)と、各々が2
個のシステムの各々と1対1の対応をなし、対応するシ
ステムからホルト指示が送られて来た時にホルト値とな
り、対応するシステムからスタート指示が送られて来た
時に非ホルト値となるホルト状態記憶手段の複数個(1
0、11)と、実行アドレス・レジスタ(2)の値をセ
ーブ・アドレス・レジスタ(3)にコピーするための処
理を行うコピー手段(62)と、 セーブ・アドレス・レジスタ(3)の値を実行アドレス
・レジスタ(2)に復元するための処理を行う復元手段
(63)と、 書込処理手段(64)と、 実行処理手段(65)と を具備し、 上記コピー手段(62)は、 [1]他方のシステム(B)のホルト状態記憶手段(1
1)が非ホルト値の状態の下で一方のシステム(A)か
らホルト指示が出された場合、 [2]一方のシステム(A)のホルト状態記憶手段(1
0)が非ホルト値の状態の下で他方のシステム(B)か
らホルト指示が出された場合、 [3]2個のホルト状態記憶手段(10、11)が両方
ともホルト値であり且つ実行アドレス・レジスタ(2)
の値がセーブ・アドレス・レジスタ(3)の値以上であ
る状態の下で、セーブ・アドレス・レジスタ(3)の値
が実行アドレス・レジスタ(2)に復元された場合、 に実行アドレス・レジスタ(2)の値をセーブ・アドレ
ス・レジスタ(3)にコピーするための処理を行うよう
に構成され、 上記復元手段(63)は、一方のシステム(A)のホル
ト状態記憶手段(10)がホルト値を示し且つ他方のシ
ステム(B)のホルト状態記憶手段(11)が非ホルト
値を示している状態の下で一方のシステム(A)のホル
ト状態記憶手段(10)が非ホルト値を示したこと又は
他方のシステム(B)のホルト状態記憶手段(11)が
ホルト値を示し且つ一方のシステム(A)のホルト状態
記憶手段(11)が非ホルト値を示している状態の下で
他方のシステム(B)のホルト状態記憶手段(11)が
非ホルト値を示したことを条件として、セーブ・アドレ
ス・レジスタ(3)の値を実行アドレス・レジスタ(2
)に復元するための処理を行うように構成され、 書込処理手段(64)は、システムから指令データが送
られて来た時、当該指令データ、オンの有効ビット及び
指令データ発行元システムのシステム・コードをスタッ
ク(32)における書込アドレス・レジスタ(1)で示
される番地に書き込み、その後に書込アドレス・レジス
タ(1)の更新を行うための処理を行うよう構成され、 実行処理手段(65)は、スタック(32)における実
行アドレス・レジスタ(2)で示される番地からデータ
を読み出し、 [1]読出データの中の有効ビットがオフの場合には、
実行アドレス・レジスタ(2)の更新を行ってスタック
(32)から次のデータを読み出すための処理を行い、 [2]読出データのシステム・コードで特定されるホル
ト状態記憶手段(10又は11)がホルト値を示してい
る場合には、実行アドレス・レジスタ(2)の更新を行
ってスタック(32)から次のデータを読み出すための
処理を行い、 [3]読出データの中の有効ビットがオンであり且つ読
出データのシステム・コードで特定されるホルト状態記
憶手段(10又は11)が非ホルト値を示している場合
には、読出データの中の指令データに基づく処理を実行
し、処理終了後に実行アドレス・レジスタ(2)で示さ
れる番地の有効ビットをオフにし、その後に実行アドレ
ス・レジスタ(2)を更新するための処理を行うように
構成されている ことを特徴とするスタック制御方式。
[Scope of Claims] Two systems (A, B), a stack (32) for storing a plurality of words consisting of command data, valid bits, and a system code indicating the system that issued the command data; a write address register (1); an update means (66) for updating the value of the write address register (1); an execution address register (2); and an update means (66) for updating the value of the execution address register (2). an updating means (67); a save address register (3) for saving the value of the execution address register (2); and a valid bit generating means (60) for generating an on valid bit and an off valid bit. and a system code generation means (61) for generating a system code indicating the command data issuing system.
A halt value has a one-to-one correspondence with each system, and becomes a halt value when a halt instruction is sent from the corresponding system, and becomes a non-halt value when a start instruction is sent from the corresponding system. A plurality of state storage means (1
0, 11), copying means (62) that performs processing to copy the value of the execution address register (2) to the save address register (3), and The copying means (62) comprises a restoring means (63) that performs processing for restoring to the execution address register (2), a writing processing means (64), and an execution processing means (65), and the copying means (62) comprises: [1] Holt state storage means (1) of the other system (B)
When a halt instruction is issued from one system (A) under the condition where 1) is a non-halt value, [2] The halt state storage means (1) of one system (A)
0) is a non-halt value and a halt instruction is issued from the other system (B), [3] The two halt state storage means (10, 11) both have a halt value and are not executed. Address register (2)
If the value of the save address register (3) is restored to the execution address register (2) under a condition where the value of is greater than or equal to the value of the save address register (3), then the execution address register is The restoring means (63) is configured to perform processing for copying the value of (2) to the save address register (3); Under the condition where the halt value is indicated and the halt state memory means (11) of the other system (B) indicates the non-halt value, the halt state memory means (10) of one system (A) indicates the non-halt value. or under a condition in which the halt state storage means (11) of the other system (B) indicates a halt value and the halt state memory means (11) of one system (A) indicates a non-halt value. Provided that the halt state storage means (11) of the other system (B) indicates a non-halt value, the value of the save address register (3) is saved to the execution address register (2).
), and when command data is sent from the system, the write processing means (64) stores the command data, the ON valid bit, and the command data issuing system. Execution processing means is configured to write the system code to the address indicated by the write address register (1) in the stack (32), and then perform processing for updating the write address register (1). (65) reads data from the address indicated by the execution address register (2) in the stack (32), and [1] If the valid bit in the read data is off,
performs processing to update the execution address register (2) and read the next data from the stack (32); [2] halt state storage means (10 or 11) specified by the system code of the read data; If indicates a halt value, update the execution address register (2) and perform processing to read the next data from the stack (32). [3] If the valid bit in the read data is If it is on and the halt state storage means (10 or 11) specified by the system code of the read data indicates a non-halt value, the process is executed based on the command data in the read data, and A stack control characterized in that it is configured to turn off a valid bit at an address indicated by an execution address register (2) after completion, and then perform processing for updating the execution address register (2). method.
JP25512487A 1987-10-09 1987-10-09 Stack control device Expired - Lifetime JP2604604B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP25512487A JP2604604B2 (en) 1987-10-09 1987-10-09 Stack control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP25512487A JP2604604B2 (en) 1987-10-09 1987-10-09 Stack control device

Publications (2)

Publication Number Publication Date
JPH0196734A true JPH0196734A (en) 1989-04-14
JP2604604B2 JP2604604B2 (en) 1997-04-30

Family

ID=17274423

Family Applications (1)

Application Number Title Priority Date Filing Date
JP25512487A Expired - Lifetime JP2604604B2 (en) 1987-10-09 1987-10-09 Stack control device

Country Status (1)

Country Link
JP (1) JP2604604B2 (en)

Also Published As

Publication number Publication date
JP2604604B2 (en) 1997-04-30

Similar Documents

Publication Publication Date Title
JPH0196734A (en) Stack control system
US20230004326A1 (en) Storage system control method and storage system
JPS6240736B2 (en)
JPS5953579B2 (en) character compression device
JPH113274A (en) Memory access control system
KR19980037407A (en) Structure of Double-sided Nonvolatile Memory in Disk-Shared Parallel Database System and Its Recovery Method
JPH03103951A (en) Memory patrol control system
JPH02161514A (en) Control processing system for idle storage block
JPH0683639A (en) Register device
JP2906739B2 (en) Storage device
JP3009168B2 (en) Data processing device
JP2793258B2 (en) Data setting method for positioning control device
JPH0462645A (en) Storage device and overflow processing method
JPS60142450A (en) Storage system
JPH03256145A (en) Duplexed file system
JPH0217816B2 (en)
JPH08249224A (en) Transaction management device
JPS60254256A (en) Information processor
JPH0315217B2 (en)
JPH02123426A (en) Microprocessor
JPS62168246A (en) Memory writing control system
JPH06168195A (en) Adaptor control system
JPH0326177A (en) Compression and expansion controller for image data
JPH04271449A (en) High-speed data transfer method
JPH06348645A (en) Dma circuit