JPH11167494A - Arithmetic processor and register managing method for it - Google Patents

Arithmetic processor and register managing method for it

Info

Publication number
JPH11167494A
JPH11167494A JP33277497A JP33277497A JPH11167494A JP H11167494 A JPH11167494 A JP H11167494A JP 33277497 A JP33277497 A JP 33277497A JP 33277497 A JP33277497 A JP 33277497A JP H11167494 A JPH11167494 A JP H11167494A
Authority
JP
Japan
Prior art keywords
register
data
flag information
stored
buffer
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
JP33277497A
Other languages
Japanese (ja)
Inventor
Isao Watanabe
功 渡邉
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP33277497A priority Critical patent/JPH11167494A/en
Publication of JPH11167494A publication Critical patent/JPH11167494A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To accelerate processings of saving and restoration of register data when procedure call or interruption is generated without providing plural register sets. SOLUTION: A retained flag is provided in each register in a register set 5 in a processor 1, and when procedure call or interruption is generated, all of the retained flags are cleared. When a retained flag corresponding to a time to write into the register is not set during a procedure or interruption processing, the value of the register is retained in a memory and a retained flag is set, and at the time of returning from the procedure or interruption processing, only data in the register set with the retained flag is restored to minimize saving processing of registered data.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、計算機システムの
MPU(Micro Processing Uni
t:超小型演算処理装置)、CPU(Central
Processing Unit:中央演算処理装置)
等の演算処理装置(以下単にプロセッサと称す)に関す
るものであり、特に手続き呼び出しや割り込みが発生し
た際のレジスタデータの退避と回復の処理を高速化を図
る演算処理装置、及び演算処理装置のレジスタ管理方法
に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an MPU (Micro Processing Uni) for a computer system.
t: ultra-compact processing unit), CPU (Central)
Processing Unit: Central Processing Unit)
And more particularly to an arithmetic processing device (hereinafter simply referred to as a processor), and particularly to an arithmetic processing device that speeds up the process of saving and restoring register data when a procedure call or an interrupt occurs, and a register of the arithmetic processing device. Regarding management methods.

【0002】[0002]

【従来の技術】従来、プロセッサでプログラムを実行し
ていて手続き呼び出しや割り込みが発生した場合、新た
に開始される処理においてレジスタを使用する場合に
は、それまで実行していた処理で使用していたデータを
保存するために、レジスタに保持されているデータをメ
モリ上の退避領域に書き込む。このようなメモリへの書
込み処理は、処理性能の低下要因となる。
2. Description of the Related Art Conventionally, when a program is executed by a processor and a procedure call or an interrupt occurs, when a register is used in a newly started process, the register is used in the process which has been executed until then. In order to save the data, the data held in the register is written to a save area on the memory. Such a writing process to the memory causes a reduction in processing performance.

【0003】上記のような問題を解決する方法として、
プロセッサに使用できるレジスタセットを複数設ける方
法が提案されている。この方法では、手続き呼び出しや
割り込みが発生するごとに新しいレジスタセットに切り
替えることで、レジスタデータを保存せずに済ませるも
のである。
[0003] As a method of solving the above problems,
A method of providing a plurality of register sets that can be used in a processor has been proposed. In this method, the register data is not saved by switching to a new register set each time a procedure call or an interrupt occurs.

【0004】[0004]

【発明が解決しようとする課題】しかしながら、上述の
レジスタセットによる方法では以下の問題点がある。
However, the above-described method using the register set has the following problems.

【0005】即ち、レジスタは、高速動作が要求される
ため、複雑で規模の大きい回路となる。レジスタセット
を複数設けることで、プロセッサのハードウェア量が大
幅に増える。また、レジスタセットを複数設けた場合、
プロセッサ内の演算回路とレジスタセットとの間に、レ
ジスタセットを切り替える回路を設けなければならず、
回路動作の高速化の妨げとなる。さらに、ハードウェア
量の制約から、レジスタセットは十分に多く用意するこ
とはできないので、プログラムの処理中にすべてのレジ
スタセットを使い尽くしてしまうことが発生する。その
場合、少なくとも1つのレジスタセットのデータをメモ
リに保存してからでなければ、処理を続けることができ
ず、その際に処理性能が低下することになる。
That is, since a register is required to operate at a high speed, it becomes a complicated and large-scale circuit. Providing a plurality of register sets greatly increases the amount of hardware of the processor. When a plurality of register sets are provided,
A circuit for switching the register set must be provided between the arithmetic circuit in the processor and the register set,
This hinders the speeding up of the circuit operation. In addition, since a sufficient number of register sets cannot be prepared due to the limitation of the amount of hardware, all register sets may be used up during the processing of a program. In this case, the processing cannot be continued unless the data of at least one register set is stored in the memory, and the processing performance is reduced at that time.

【0006】そして、呼び出される手続きや割り込みで
行われる処理が単純である場合には、すべてのレジスタ
を使用するわけではないが、レジスタセットの方法で
は、すべてのレジスタを複数組用意しており、ハードウ
ェア資源の無駄となっている。
[0006] When the called procedure or the processing performed by an interrupt is simple, not all the registers are used, but in the register setting method, a plurality of all registers are prepared. It is a waste of hardware resources.

【0007】本発明は、上記事情を考慮して成されたも
ので、上述不具合を解消し、複数のレジスタセットを設
けることなく、手続き呼び出しや割り込みが発生した際
のレジスタデータの退避と回復の処理を高速化を可能と
する演算処理装置、及び演算処理装置のレジスタ管理方
法を提供することを目的とする。
The present invention has been made in view of the above circumstances, and solves the above-mentioned disadvantages, and saves and restores register data when a procedure call or an interrupt occurs without providing a plurality of register sets. An object of the present invention is to provide an arithmetic processing device capable of speeding up processing and a register management method for the arithmetic processing device.

【0008】[0008]

【課題を解決するための手段】本発明の演算処理装置
は、計算機システムの各種の処理をプログラムを実行し
て制御する演算処理装置において、上記演算処理装置が
プログムを実行する際使用するデータとこのデータに対
応し上記計算機システムのメモリ上の退避領域に上記デ
ータを保存した時設定する保存済みフラグを格納する複
数のレジスタからなるレジスタ手段と、このレジスタ手
段と上記メモリを制御する制御手段とを備え、この制御
手段は、上記演算処理装置がプログラムを実行する際手
続き呼び出しまたは割り込み処理が発生した場合上記保
存済みフラグをクリアし、上記手続き呼び出しまたは割
り込み処理において上記レジスタに対する書込みが行わ
れる場合上記書き込みが行われるレジスタに対応する保
存済みフラグが設定されていなければ保存済みフラグを
設定して上記書込みの行なわれるレジスタのデータを上
記メモリ上の退避領域に保存し、上記手続き呼び出しま
たは割り込み処理終了後上記メモリ上の退避領域から上
記保存済みフラグの設定されているレジスタについての
みこのレジスタに対応したレジスタのデータを読み出し
て上記保存済みフラグの設定されているレジスタに復帰
させ上記保存済みフラグをクリアし上記手続き呼び出し
または割り込み発生前の処理を再開することを特徴とす
る。
According to the present invention, there is provided an arithmetic processing device for controlling various processes of a computer system by executing a program, the data being used when the arithmetic processing device executes a program. Register means comprising a plurality of registers for storing a saved flag which is set when the data is saved in a save area on the memory of the computer system corresponding to the data; control means for controlling the register means and the memory; The control means clears the stored flag when a procedure call or an interrupt process occurs when the arithmetic processing unit executes a program, and writes data to the register in the procedure call or the interrupt process. The saved flag corresponding to the register to be written is set If not, the saved flag is set and the data of the register to be written is saved in the save area on the memory. After the procedure call or the interrupt processing is completed, the saved flag of the saved flag is saved from the save area on the memory. Only for the set register, read the data of the register corresponding to this register, return to the register where the saved flag is set, clear the saved flag, and resume the procedure call or the process before the occurrence of the interrupt It is characterized by the following.

【0009】上記構成によれば、プロセッサ中のそれぞ
れのレジスタに保存済みフラグを設け、手続き呼び出し
や割り込みが発生した時に保存済みフラグをすべてクリ
アし、手続き中や割り込み処理中でレジスタへの書込み
が行なわれるときに対応した保存済みフラグがセットさ
れていなければ、レジスタの値をメモリに保存して保存
済みフラグをセットし、手続きや割り込み処理から復帰
する際には、保存済みフラグがセットされているレジス
タのみデータを回復させることによって、レジスタデー
タの退避処理を最小限にするという効果がある。
According to the above configuration, the stored flags are provided in the respective registers in the processor, and all the stored flags are cleared when a procedure call or an interrupt occurs. If the corresponding saved flag is not set at the time of execution, the value of the register is saved in the memory, the saved flag is set, and when returning from the procedure or the interrupt processing, the saved flag is set. By restoring the data only in the register in which the data is stored, the effect of minimizing the save processing of the register data is obtained.

【0010】また、上記構成に加えて、プロセッサから
メモリにデータを書き込むためデータを一時的に蓄える
書込みバッファを設ければ、レジスタデータを回復する
際に、レジスタデータの保存をする書込みが書込みバッ
ファに未処理で存在する場合、書込みデータをレジスタ
に書き戻して書込み処理そのものはキャンセルすること
によって、メモリへの書込みを減らすとともに、レジス
タデータの回復を高速化することができる。
In addition to the above configuration, if a write buffer for temporarily storing data for writing data from the processor to the memory is provided, when the register data is recovered, the write for storing the register data is performed in the write buffer. If there is any unprocessed data, the write data is written back to the register and the write process itself is canceled, thereby reducing the number of writes to the memory and speeding up the recovery of the register data.

【0011】さらに、上記構成に加えて、プロセッサか
らメモリに書き込むデータをバッファリングする書込み
バッファに関し、レジスタデータの保存を行なうメモリ
コマンドのための書込みバッファを、通常のメモリ書込
みの書込みバッファとは別に設ければ、前者の書込みバ
ッファに空きがある場合、後者の書込みバッファの処理
を前者の書込みバッファの処理よりも優先させ、前者の
書込みバッファに空きが無くなった場合前者の書込みバ
ッファの処理を優先させるように書込み処理を調整する
ことによって、通常のメモリ書込みがレジスタデータの
メモリ書込みによって妨げられないようにすることがで
きる。
Further, in addition to the above configuration, the present invention relates to a write buffer for buffering data to be written to a memory from a processor, wherein a write buffer for a memory command for storing register data is provided separately from a write buffer for normal memory writing. If the former write buffer has free space, the latter write buffer process is given priority over the former write buffer process, and if the former write buffer becomes full, the former write buffer process is prioritized. By adjusting the write processing so as to cause the normal memory write to be prevented from being interrupted by the memory write of the register data.

【0012】[0012]

【発明の実施の形態】以下、本発明の一実施の形態を図
面を参照して説明する。
DESCRIPTION OF THE PREFERRED EMBODIMENTS One embodiment of the present invention will be described below with reference to the drawings.

【0013】図1は、本発明の実施形態に係わる計算機
の一般的な構造を示した概略構成図である。この他に
も、この計算機は、キーボード、ディスプレイ等の各種
I/O装置、ハードディスク等の記憶装置等、通常の計
算機システムに必要な構成を備えているものとするが、
本実施形態の説明に特に係わらない部分について不図示
しとし、詳細は省略する。プロセッサ1は、計算機シス
テムの各構成の制御を行い、バス3を介してメモリ2と
データのやり取りを行う。
FIG. 1 is a schematic configuration diagram showing a general structure of a computer according to an embodiment of the present invention. In addition to this, this computer is assumed to have a configuration necessary for an ordinary computer system, such as various I / O devices such as a keyboard and a display, and a storage device such as a hard disk.
Portions not particularly related to the description of the present embodiment are not shown, and details are omitted. The processor 1 controls each component of the computer system, and exchanges data with the memory 2 via the bus 3.

【0014】図2は、プロセッサ1の一般的な内部構成
の一例を示したものである。実行ユニット4とレジスタ
セット5と制御ユニット8は、内部バス6によって接続
される。実行ユニット4は、データに対して演算処理を
行う。レジスタセット5は、複数のレジスタよりなる。
制御ユニット8は、プログラムを構成する命令で指定さ
れる動作を実現するために、実行ユニット4とレジスタ
セット5などを制御するものである。書込みバッファ7
は、プロセッサ1からメモリ2にデータの書込みを行な
う際に、書込みデータのバッファリングを行なうこと
で、メモリ2への書込みが完了する前に、プロセッサ1
が次の処理を開始できることを可能にするものである。
FIG. 2 shows an example of a general internal configuration of the processor 1. The execution unit 4, the register set 5, and the control unit 8 are connected by an internal bus 6. The execution unit 4 performs arithmetic processing on the data. The register set 5 includes a plurality of registers.
The control unit 8 controls the execution unit 4 and the register set 5 in order to realize an operation specified by an instruction constituting a program. Write buffer 7
When data is written from the processor 1 to the memory 2, buffering of the write data is performed so that the processor 1
Can start the next process.

【0015】図3は、メモリ2上に確保されるレジスタ
退避領域の例を示す図である。プログラムの実行中に手
続き呼び出しや割り込みなどが発生すると、レジスタデ
ータを保存するための新たな退避領域が確保される。使
用中の退避領域のアドレスは、通常はプロセッサ内のレ
ジスタに保持される。
FIG. 3 is a diagram showing an example of a register save area secured on the memory 2. If a procedure call or an interrupt occurs during the execution of the program, a new save area for saving register data is secured. The address of the save area in use is normally held in a register in the processor.

【0016】図4は、本実施形態のレジスタセットの構
成例を示す図である。レジスタセットを構成する個々の
レジスタ9に対応して、保存済みフラグ10の情報を格
納する。
FIG. 4 is a diagram showing a configuration example of the register set of the present embodiment. The information of the stored flag 10 is stored corresponding to each of the registers 9 constituting the register set.

【0017】図5は、本実施形態のレジスタ退避領域の
例を示す図である。通常のレジスタデータに加えて、手
続き呼び出しや割り込みが発生した時点での保存済みフ
ラグ10が、保存データ11として退避領域に保存され
る。制御ユニット8は、手続きや割り込みの処理におけ
るレジスタデータの管理に関して、図6及び図7に示す
ような動作をする。
FIG. 5 is a diagram showing an example of a register save area according to this embodiment. In addition to the normal register data, the saved flag 10 at the time when the procedure call or the interruption occurs is saved as save data 11 in the save area. The control unit 8 operates as shown in FIGS. 6 and 7 with respect to the management of register data in the processing of procedures and interrupts.

【0018】図6に、手続き呼び出しまたは割り込みが
発生した場合の制御ユニット8のレジスタデータの管理
の処理の流れを示す。
FIG. 6 shows a flow of processing for managing register data of the control unit 8 when a procedure call or an interrupt occurs.

【0019】まず、手続き呼び出しや割り込みが発生し
た場合(ステップA1)には、メモリ2上の現在の退避
領域に保存済みフラグ10を保存データ11として保存
(ステップA2)したうえで、保存済みフラグ10をク
リアし(ステップA3)、新たな退避領域を作成する
(ステップA4)。次に、手続きや割り込み処理のプロ
グラムを実行を開始する(ステップA5)。プログラム
の命令の解読をし(ステップA6)、レジスタに対して
書込みが発生するかどうかを判定する(ステップA
7)。レジスタに対して書き込みが発生した場合(ステ
ップA7のYes)、次にそのレジスタに対応する保存
済みフラグがセットされているかどうかを判定する(ス
テップA8)。
First, when a procedure call or an interrupt occurs (step A1), the saved flag 10 is saved as saved data 11 in the current save area on the memory 2 (step A2), and then the saved flag is saved. 10 is cleared (step A3), and a new save area is created (step A4). Next, execution of a procedure or interrupt processing program is started (step A5). The instruction of the program is decoded (step A6), and it is determined whether or not writing to the register occurs (step A6).
7). When writing has occurred in the register (Yes in step A7), it is determined whether or not the stored flag corresponding to the register has been set (step A8).

【0020】保存済みフラグがセットされている場合
(ステップA8のYes)、何もせずにレジスタにデー
タを書き込む(ステップA11)。保存済みフラグがセ
ットされていない場合(ステップA8のNo)、レジス
タデータを現在の退避領域に書き込むために書込みバッ
ファに保存し(ステップA9)、保存済みフラグをセッ
トし(ステップA10)、レジスタへのデータの書込み
を行う(ステップA11)。
If the stored flag is set (Yes in step A8), data is written to the register without doing anything (step A11). If the stored flag is not set (No in step A8), the register data is stored in the write buffer for writing to the current save area (step A9), the stored flag is set (step A10), and the register is set. Is written (step A11).

【0021】レジスタに対して書き込みが発生しない場
合(ステップA7のNo)には、そのまま命令を実行す
る(ステップA12)。命令を実行して(ステップA1
2)、次に命令が終了したかどうかを判定する(ステッ
プA13)。命令が終了した場合(ステップA13のY
es)は、手続き呼び出しまたは割り込み処理を終了す
る。命令が終了していない場合(ステップA13のN
o)、次の命令を解読する(ステップA6)。
If writing to the register does not occur (No in step A7), the instruction is executed as it is (step A12). Execute the instruction (step A1
2) Next, it is determined whether the instruction has been completed (step A13). When the instruction is completed (Y in step A13)
es) ends the procedure call or interrupt processing. If the instruction has not been completed (N in step A13)
o) The next instruction is decoded (step A6).

【0022】図7に、手続き呼び出しや割り込み処理が
終了して元の処理に戻る場合の処理の流れを示す。
FIG. 7 shows a flow of processing when the procedure call or the interrupt processing ends and returns to the original processing.

【0023】手続き呼び出しや割り込み処理が終了した
ら(ステップB1)、保存済みフラグがセットされてい
るレジスタについてのみ退避領域からデータを復帰させ
る(ステップB2)。次に、1つ前の退避領域の保存デ
ータ11を保存済みフラグ10に復帰させ(ステップB
3)、1つ前の退避領域を現在の退避領域とする(ステ
ップB4)。その後、手続き呼び出しや割り込み処理発
生前の処理を再開する(ステップB5)。
When the procedure call and the interrupt processing are completed (step B1), the data is restored from the save area only for the register in which the stored flag is set (step B2). Next, the saved data 11 of the immediately preceding save area is restored to the saved flag 10 (step B).
3) The previous save area is set as the current save area (step B4). Thereafter, the processing before the occurrence of the procedure call or the interrupt processing is restarted (step B5).

【0024】以上のように、レジスタセットを構成する
個々のレジスタ9に対応して、保存済みフラグ10の情
報を格納することによって、プログラムによって一々レ
ジスタの退避を行なう必要が無くなり、プログラム作成
が容易になる。さらに、必要最小限のレジスタのみが保
存されるので、メモリに対する書込み処理が減り、プロ
グラムの処理性能が向上する。
As described above, by storing the information of the saved flag 10 corresponding to each register 9 constituting the register set, it is not necessary to save each register by a program, and the program can be easily created. become. Further, since only the minimum necessary registers are stored, the number of writing processes to the memory is reduced, and the processing performance of the program is improved.

【0025】図8は、本実施形態のレジスタデータの管
理に関して、制御ユニット8の書込みバッファ7に対す
る処理の流れを示したフローチュートである。
FIG. 8 is a flow chart showing the flow of processing for the write buffer 7 of the control unit 8 with respect to the management of register data according to the present embodiment.

【0026】レジスタデータの退避領域からの復帰処理
は、まず、レジスタデータが書き込みバッファ7にある
かどうかを判定する(ステップC1)。レジスタデータ
が書き込みバッファ7に無い場合(ステップC1のN
o)、退避領域からレジスタデータを復帰させる(ステ
ップC5)。レジスタデータが書き込みバッファ7にあ
る場合(ステップC1のYes)、書き込みパッファ7
からレジスタデータを復帰させる(ステップC2)。
In the process of restoring the register data from the save area, first, it is determined whether or not the register data is in the write buffer 7 (step C1). When the register data is not in the write buffer 7 (N in step C1)
o), the register data is restored from the save area (step C5). If the register data is in the write buffer 7 (Yes in step C1), the write buffer 7
From the register data (step C2).

【0027】次に、レジスタデータのメモリ2への書き
込みが未処理かどうかを判定する(ステップC3)。レ
ジスタデータの書き込み処理が行われている場合(ステ
ップC3のNo)、処理は終了する。レジスタデータの
書き込みが未処理の場合(ステップC3のYes)、レ
ジスタデータのメモリ2への書き込み処理をキャンセル
する(ステップC4)。
Next, it is determined whether or not the writing of the register data to the memory 2 has not been processed (step C3). If the register data writing process has been performed (No in step C3), the process ends. If the writing of the register data has not been processed (Yes in step C3), the processing of writing the register data into the memory 2 is canceled (step C4).

【0028】上記のように、レジスタデータを退避領域
から復帰させる場合に、通常のプロセッサでは書込みバ
ッファの内容がすべて書き出されてからメモリの読み出
し処理を行うのに対して、本実施形態では、書込みバッ
ファ7にレジスタデータが残っている場合には、書込み
バッファからレジスタにデータの復帰を行ない、メモリ
への読み出しアクセスを削減するとともに高速化を実現
する。さらに、レジスタデータの書込み処理が行われて
いない場合には、書込み処理そのものをキャンセルして
メモリアクセスを減少させる。
As described above, when the register data is restored from the save area, the ordinary processor performs the read processing of the memory after all the contents of the write buffer have been written out. When the register data remains in the write buffer 7, the data is restored from the write buffer to the register, thereby reducing read access to the memory and realizing high speed. Furthermore, when the register data write processing is not performed, the write processing itself is canceled to reduce memory access.

【0029】図9は、書込みバッファ7の構成の一例を
示す図である。それぞれのエントリは、メモリに書込む
書込みデータ14と書き込み先のメモリアドレスである
書き込みアドレス13、及び個々のエントリについて、
メモリ2への書き込み処理が行なわれいないことを示す
未処理フラグ12とからなる。このような構成をとる場
合、図8の書き込みバッファからレジスタデータを復帰
させる処理は、退避領域の読み出すべきアドレスと書き
込みアドレス13を比較し、等しいものがあれば、対応
する書き込みデータ14をレジスタに転送する。
FIG. 9 is a diagram showing an example of the configuration of the write buffer 7. Each entry is composed of write data 14 to be written to the memory, a write address 13 which is a memory address of a write destination, and individual entries.
An unprocessed flag 12 indicates that the writing process to the memory 2 is not performed. In such a configuration, the process of restoring the register data from the write buffer in FIG. 8 involves comparing the address to be read from the save area with the write address 13, and if there is a match, the corresponding write data 14 is stored in the register. Forward.

【0030】図10は、書込みバッファの別の構成例を
示す図である。この例では、レジスタ退避のためのメモ
リ書込みのために、レジスタ退避用書込みバッファ16
を別に設けた。通常のメモリ書込みに対しては一般書込
みバッファ15を使用する。両方の書込みバッファに書
込み用のデータがある場合に、どちらの書込み処理を実
行するかを優先度制御ユニット17によってコントロー
ルする。
FIG. 10 is a diagram showing another configuration example of the write buffer. In this example, in order to write the memory for saving the register, the write buffer 16 for saving the register is used.
Was provided separately. The general write buffer 15 is used for normal memory writing. When there is data to be written in both write buffers, the priority control unit 17 controls which write process is executed.

【0031】優先度制御ユニット17の制御は、レジス
タ退避用書込みバッファ16に空きがある場合には一般
書込みバッファの処理15を優先し、レジスタ書込みバ
ッファ16に空きが無くなった場合にはレジスタ退避用
書込みバッファ16の処理を優先する。通常のプロセッ
サでは、手続き呼び出しや割り込み処理を開始したとき
にレジスタ退避を行うことによるメモリ書込みが集中的
に発生するが、この方式では、レジスタ退避に伴うメモ
リ書込みを分散させる効果があり、プログラム処理によ
るメモリ書込みを妨げることによる性能低下を少なくす
ることができるものである。
The priority control unit 17 controls the process 15 of the general write buffer when the register saving write buffer 16 has a free space, and when the register write buffer 16 runs out of space, the register saving process is performed. The processing of the write buffer 16 has priority. In a normal processor, memory write due to register saving occurs when a procedure call or interrupt processing is started, but this method has an effect of distributing memory write due to register saving and has an effect of program processing. Therefore, it is possible to reduce the performance degradation caused by preventing the memory writing.

【0032】図11は、図10のレジスタ退避用書込み
バッファ16の構成の一例を示すである。退避領域中で
個々のレジスタデータの保存される相対位置は固定され
ているので、退避領域のアドレスとレジスタ番号から、
レジスタのデータを書込むアドレスは容易に生成するこ
とができる。そこで、図9のように個々のエントリごと
に書込みアドレスを用意せずに、代わりにデータを保存
するレジスタの番号であるレジスタ番号19を設定し、
現在の退避領域ポインタを記憶するレジスタを用意して
おき、書込み処理を行なう時点で書込みアドレス20を
生成する。これにより、書込みアドレスを保存するため
の記憶領域を節約することができる。
FIG. 11 shows an example of the configuration of the register save write buffer 16 of FIG. Since the relative position where each register data is saved in the save area is fixed, from the address of the save area and the register number,
The address at which the data of the register is written can be easily generated. Therefore, as shown in FIG. 9, instead of preparing a write address for each entry, a register number 19 which is a register number for storing data is set instead.
A register for storing the current save area pointer is prepared, and a write address 20 is generated when a write process is performed. Thus, a storage area for storing the write address can be saved.

【0033】[0033]

【発明の効果】以上詳記したように本発明によれば、レ
ジスタセットを構成する個々のレジスタに対応して、保
存済みフラグの情報を格納することによってプログラム
によって一々レジスタの退避を行なう必要が無くなり、
プログラム作成が容易になる。さらに、必要最小限のレ
ジスタのみが保存されるので、メモリに対する書込み処
理が減り、プログラムの処理性能が向上するという効果
を奏する。
As described above in detail, according to the present invention, it is necessary to save registers by a program by storing information of a saved flag corresponding to each register constituting a register set. Gone,
Program creation becomes easy. Furthermore, since only the minimum necessary registers are stored, the number of write operations to the memory is reduced, and the processing performance of the program is improved.

【0034】また、メモリへの書き込み処理を一時的に
貯えるバッファを備え、手続きや割り込みの処理が完了
したときのレジスタデータ復帰の際、上記バッファにレ
ジスタデータの待避のためのデータが残っている場合、
上記メモリからの読み出しを行わず、上記バッファから
データをレジスタに復帰させることにより、メモリへの
読み出しアクセスが減少し、プログラムの処理性能が向
上するという効果を奏する。
Further, a buffer is provided for temporarily storing the write processing to the memory, and when the register data is restored when the procedure or the interrupt processing is completed, data for saving the register data remains in the buffer. If
By returning data from the buffer to the register without reading from the memory, there is an effect that read access to the memory is reduced and the processing performance of the program is improved.

【0035】さらに、上記手続きや割り込みの処理が完
了したときのレジスタデータ復帰の際、上記バッファに
あった書き込み処理において、上記メモリに対する書き
込み処理が終了していない場合、上記メモリへの書き込
み処理を行わないことにより、手続きや割り込みの処理
における上記メモリへの書込みアクセスが減少してバス
の占有率が低下することにより、計算機システムの性能
が向上するという効果を奏する。
Further, at the time of register data restoration upon completion of the above-described procedure or interrupt processing, if the write processing for the memory has not been completed in the write processing for the buffer, the write processing for the memory is performed. By not doing so, there is an effect that the performance of the computer system is improved by reducing the write access to the memory in the processing of the procedure and the interrupt and decreasing the occupancy of the bus.

【0036】さらにまた、上記バッファに、通常の書き
込みバッファとレジスタデータ待避のための書き込みバ
ッファを設け、通常の書き込みバッファの処理をレジス
タデータ待避のための書き込みバッファの処理より優先
することで、プログラムの処理に必要なメモリ書込みア
クセスが、レジスタ退避のためのメモリ書込みアクセス
によって妨げられることが少なくなり、プログラムの処
理効率が向上するという効果を奏する。
Further, a normal write buffer and a write buffer for saving register data are provided in the buffer, and the process of the normal write buffer is prioritized over the process of the write buffer for saving register data. Is less hindered by the memory write access for register saving, and the processing efficiency of the program is improved.

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

【図1】本発明の一実施の形態に係わる計算機システム
の概略構成を示す図。
FIG. 1 is a diagram showing a schematic configuration of a computer system according to an embodiment of the present invention.

【図2】同実施の形態に係わるプロセッサの構成を示す
図。
FIG. 2 is a diagram showing a configuration of a processor according to the embodiment.

【図3】同実施の形態に係わるメモリの概念図。FIG. 3 is a conceptual diagram of a memory according to the embodiment.

【図4】同実施の形態に係わるレジスタの概念図。FIG. 4 is a conceptual diagram of a register according to the embodiment;

【図5】同実施の形態に係わるメモリの概念図。FIG. 5 is a conceptual diagram of a memory according to the embodiment.

【図6】同実施の形態に係わり、手続き呼び出しまたは
割り込み処理の発生時の処理動作を示すフローチャー
ト。
FIG. 6 is a flowchart showing a processing operation when a procedure call or an interrupt processing occurs according to the embodiment;

【図7】同実施の形態に係わり、手続き呼び出しまたは
割り込み処理の終了後、手続き呼び出しまたは割り込み
発生前の処理を再開するための処理動作を示すフローチ
ャート。
FIG. 7 is a flowchart showing a processing operation for resuming processing before a procedure call or an interrupt occurs after a procedure call or an interrupt processing is completed according to the embodiment;

【図8】同実施の形態に係わり、レジスタデータを退避
領域から復帰させる処理動作を示すフローチャート。
FIG. 8 is a flowchart showing a processing operation for restoring register data from a save area according to the embodiment;

【図9】同実施の形態に係わる書き込みバッファの構成
を示す図。
FIG. 9 is a diagram showing a configuration of a write buffer according to the embodiment.

【図10】同実施の形態に係わり、上記図9とは異なる
状態で示す書き込みバッファの構成を示す図。
FIG. 10 is a diagram showing a configuration of a write buffer shown in a state different from that of FIG. 9 according to the embodiment;

【図11】同実施の形態に係わるレジスタ退避用書き込
みバッファの構成を示す図。
FIG. 11 is a diagram showing a configuration of a register save write buffer according to the embodiment;

【符号の説明】[Explanation of symbols]

1…プロセッサ 2…メモリ 3…バス 4…実行ユニット 5…レジスタセット 6…内部バス 7…書き込みバッファ 8…制御ユニット 9…レジスタ 10…保存済みフラグ 11…保存データ 12…未処理フラグ 13…書き込みアドレス 14…書き込みデータ 15…一般用書き込みバッファ 16…レジスタ退避用書き込みバッファ 17…優先度制御ユニット 18…退避領域ポインタ 19…レジスタ番号 20…書き込みアドレス 21…未処理フラグ 22…書き込みデータ DESCRIPTION OF SYMBOLS 1 ... Processor 2 ... Memory 3 ... Bus 4 ... Execution unit 5 ... Register set 6 ... Internal bus 7 ... Write buffer 8 ... Control unit 9 ... Register 10 ... Saved flag 11 ... Saved data 12 ... Unprocessed flag 13 ... Write address 14 Write data 15 General write buffer 16 Register save write buffer 17 Priority control unit 18 Save area pointer 19 Register number 20 Write address 21 Unprocessed flag 22 Write data

Claims (12)

【特許請求の範囲】[Claims] 【請求項1】 計算機システムの各種処理をプログラム
情報を実行して制御する演算処理装置において、 上記演算処理装置がプログラム情報を実行する際、使用
データとこのデータに対応し上記計算機システムのメモ
リ上の退避領域に上記データを保存した時、設定する保
存済みフラグ情報を格納する複数のレジスタからなるレ
ジスタ手段と、 このレジスタ手段と上記メモリを制御する制御手段とを
設け、 この制御手段は、 上記演算処理装置がプログラム情報を実行する際手続き
呼び出しまたは割り込み処理が発生した場合上記保存済
みフラグ情報をクリアし、 上記手続き呼び出しまたは割り込み処理において上記レ
ジスタに対する書込みが行われる場合、上記書き込みが
行われるレジスタに対応する保存済みフラグ情報が設定
されていなければ保存済みフラグ情報を設定して上記書
込みの行われるレジスタのデータを上記メモリ上の退避
領域に保存し、 上記手続き呼び出しまたは割り込み処理終了後上記メモ
リ上の退避領域から上記保存済みフラグ情報の設定され
ているレジスタについてのみこのレジスタに対応したレ
ジスタのデータを読み出して上記保存済みフラグ情報の
設定されているレジスタに復帰させ上記保存済みフラグ
情報をクリアし上記手続き呼び出しまたは割り込み発生
前の処理を再開することを特徴とする演算処理装置。
1. An arithmetic processing device for controlling various processes of a computer system by executing program information, wherein when the arithmetic processing device executes the program information, data used is stored in a memory of the computer system corresponding to the data. Register means comprising a plurality of registers for storing saved flag information to be set when the data is saved in the save area, and control means for controlling the register means and the memory. When a procedure call or an interrupt occurs when the arithmetic processing unit executes the program information, the stored flag information is cleared. When the register is written in the procedure call or the interrupt, the register in which the write is performed is performed. The saved flag information corresponding to If the stored flag information is set, the data of the register to be written is saved in the save area on the memory, and after the procedure call or the interrupt processing is completed, the saved flag information is saved from the save area on the memory. Only for the set register, read the data of the register corresponding to this register, return to the register where the stored flag information is set, clear the stored flag information, and execute the procedure before calling the procedure or interrupt. An arithmetic processing device characterized by restarting.
【請求項2】 上記制御手段は、上記手続き呼び出しま
たは割り込み処理が発生した場合上記レジスタに保存済
みフラグ情報が設定されている時はこの保存済みフラグ
情報を上記メモリ上の退避領域に保存後上記保存済みフ
ラグ情報をクリアし、 上記手続き呼び出しまたは割り込み処理において上記レ
ジスタに対する書込みが行われる場合上記書き込みが行
われるレジスタに対応する保存済みフラグ情報が設定さ
れていなければ保存済みフラグ情報を設定して上記書込
みの行われるレジスタのデータを上記メモリ上に他の退
避領域を確保して保存し、 上記手続き呼び出しまたは割り込み処理終了後上記メモ
リ上の他の退避領域から上記保存済みフラグ情報の設定
されているレジスタについてのみこのレジスタに対応し
たレジスタのデータを読み出して上記保存済みフラグ情
報の設定されているレジスタに復帰させ上記保存済みフ
ラグ情報をクリアし、 上記退避領域に保存した情報に基づき保存済みフラグ情
報を上記手続き呼び出しまたは割り込み処理発生前の設
定に戻すことを特徴とする請求項1記載の演算処理装
置。
2. The control means according to claim 1, wherein said stored flag information is stored in a save area on said memory when said procedure call or interrupt processing is performed, and said stored flag information is set in said register. Clear the saved flag information, and if the register is written in the procedure call or interrupt processing, set the saved flag information if the saved flag information corresponding to the register in which the writing is performed is not set. The data of the register to be written is secured and saved in another save area on the memory. After the procedure call or the interrupt processing is completed, the saved flag information is set from the other save area on the memory. Read the data of the register corresponding to this register only for the register To return to the register where the saved flag information is set, clear the saved flag information, and save the saved flag information to the setting before the procedure call or interrupt processing occurrence based on the information saved in the save area. The arithmetic processing device according to claim 1, wherein the operation is returned.
【請求項3】 上記データを上記メモリに書き込み保存
する際に一旦上記データを格納するバッファ手段を備
え、 上記手続き呼び出しまたは割り込み処理終了後上記バッ
ファ手段に上記保存済みフラグ情報の設定されているレ
ジスタのデータが残っている場合は上記メモリ上の退避
領域からデータを読み出さず上記バッファ手段から上記
保存済みフラグ情報の設定されているレジスタのデータ
を上記保存済みフラグ情報の設定されているレジスタに
復帰させることを特徴とする請求項1記載の演算処理装
置。
3. A register in which said data is temporarily stored when said data is written and stored in said memory, and wherein said stored flag information is set in said buffer after completion of said procedure call or interrupt processing. When the data of the stored flag information remains, the data of the register in which the stored flag information is set is restored from the buffer means to the register in which the stored flag information is set without reading the data from the save area on the memory. The arithmetic processing device according to claim 1, wherein:
【請求項4】 上記データを上記メモリに書き込み保存
する際に一旦上記データを格納するバッファ手段を備
え、 上記手続き呼び出しまたは割り込み処理終了後上記バッ
ファ手段に上記保存済みフラグ情報あの設定されている
レジスタのデータが残っている場合は、上記メモリ上の
他の退避領域からデータを読み出さず上記バッファ手段
から上記保存済みフラグ情報の設定されているレジスタ
のデータを上記保存済みフラグ情報の設定されているレ
ジスタに復帰させることを特徴とする請求項2記載の演
算処理装置。
4. A register in which said data is temporarily stored when said data is written and stored in said memory, and wherein said stored flag information is set in said buffer after completion of said procedure call or interrupt processing. If the data of the stored flag information remains, the data of the register in which the stored flag information is set from the buffer means is not read from another save area on the memory. 3. The arithmetic processing device according to claim 2, wherein the operation is returned to a register.
【請求項5】 上記バッファ手段に上記保存済みフラグ
情報の設定されているレジスタのデータが残っている場
合でこのデータの上記メモリに対する書き込みが終了し
ていない場合は上記メモリへの書き込みを行わないこと
を特徴とする請求項3または4記載の演算処理装置。
5. When the data of the register in which the stored flag information is set remains in the buffer means, and when the writing of the data to the memory is not completed, the writing to the memory is not performed. The arithmetic processing device according to claim 3 or 4, wherein:
【請求項6】 上記バッファ手段は、 上記メモリへの書き込みに対して使用する一般書き込み
用バッファと、 上記レジスタ退避のためのレジスタ退避用バッファと、 上記一般書き込み用バッファと上記レジスタ退避用バッ
ファへの書き込み処理の優先度を制御する優先度制御手
段とを備え、 この優先度制御手段は上記一般書き込み用バッファと上
記レジスタ退避用バッファの両方に書き込み用のデータ
がある場合上記レジスタ退避用バッファに空きがある時
は上記一般書き込み用バッファの処理を優先し上記レジ
スタ退避用バッファに空きが無い時はレジスタ退避用バ
ッファの処理を優先することを特徴とする請求項3、請
求項4、請求項5記載の演算処理装置。
6. The buffer means includes: a general write buffer used for writing to the memory; a register save buffer for saving the register; a general write buffer and the register save buffer. Priority control means for controlling the priority of the write processing of the register. The priority control means is provided in the register save buffer when there is write data in both the general write buffer and the register save buffer. 4. The method according to claim 1, wherein when there is free space, the processing of the general write buffer is prioritized, and when there is no free space in the register save buffer, the process of the register save buffer is prioritized. The arithmetic processing unit according to claim 5.
【請求項7】 計算機システムの各種の処理をプログラ
ム情報を実行して制御する演算処理装置のレジスタ管理
方法において、 上記演算処理装置がプログラムを実行する際、使用する
データとこのデータに対応し上記計算機システムのメモ
リ上の退避領域に上記データを保存した時設定する保存
済みフラグ情報を複数のレジスタに格納し、 上記演算処理装置がプログラム情報ヲ実行する際、手続
き呼び出しまたは割り込み処理が発生した場合上記格納
した保存済みフラグ情報をクリアし、 上記手続き呼び出しまたは割り込み処理において上記レ
ジスタに対する書込みが行われる場合上記書き込みが行
われるレジスタに対応する保存済みフラグ情報が設定さ
れていなければ保存済みフラグ情報を設定して上記書込
みの行われるレジスタのデータを上記メモリ上の退避領
域に保存し、 上記手続き呼び出しまたは割り込み処理終了後上記メモ
リ上の退避領域から上記保存済みフラグ情報の設定され
ているレジスタについてのみこのレジスタに対応したレ
ジスタのデータを読み出して上記保存済みフラグ情報の
設定されているレジスタに復帰させ上記保存済みフラグ
情報をクリアし上記手続き呼び出しまたは割り込み発生
前の処理を再開することを特徴とする演算処理装置のレ
ジスタ管理方法。
7. A register management method for an arithmetic processing unit for controlling various processes of a computer system by executing program information, wherein the arithmetic processing unit executes a program, and uses data to be used and corresponding to the data. When the above-mentioned data is stored in the save area on the memory of the computer system, stored flag information to be set is stored in a plurality of registers, and when the above-mentioned arithmetic processing unit executes the program information ヲ, when a procedure call or an interrupt process occurs. Clearing the stored flag information stored, if writing to the register is performed in the procedure call or interrupt processing, and if the stored flag information corresponding to the register in which the writing is performed is not set, the stored flag information is cleared. Register data to be set and written Is saved in the save area on the memory. After the procedure call or the interrupt processing is completed, the data of the register corresponding to this register is read out from the save area on the memory only for the register in which the saved flag information is set. A register management method for an arithmetic processing unit, wherein the method returns to a register in which the stored flag information is set, clears the stored flag information, and resumes the process before the procedure call or the occurrence of the interrupt.
【請求項8】 上記手続き呼び出しまたは割り込み処理
が発生した場合上記レジスタに保存済みフラグ情報が設
定されている時はこの保存済みフラグ情報の情報を上記
メモリ上の退避領域に保存後上記保存済みフラグ情報を
クリアし、 上記手続き呼び出しまたは割り込み処理において上記レ
ジスタに対する書込みが行われる場合上記書き込みが行
われるレジスタに対応する保存済みフラグ情報が設定さ
れていなければ保存済みフラグ情報を設定して上記書込
みの行なわれるレジスタのデータを上記メモリ上に他の
退避領域を確保して保存し、 上記手続き呼び出しまたは割り込み処理終了後上記メモ
リ上の他の退避領域から上記保存済みフラグ情報の設定
されているレジスタについてのみこのレジスタに対応し
たレジスタのデータを読み出して上記保存済みフラグ情
報の設定されているレジスタに復帰させ上記保存済みフ
ラグ情報をクリアし、 上記退避領域に保存した情報に基づき保存済みフラグ情
報を上記手続き呼び出しまたは割り込み処理発生前の設
定に戻すことを特徴とする請求項7記載の演算処理装置
のレジスタ管理方法。
8. When the procedure call or the interrupt processing occurs, when the stored flag information is set in the register, the information of the stored flag information is stored in a save area on the memory, and then the stored flag is stored. If the information is cleared, and if the write to the register is performed in the procedure call or the interrupt processing, if the stored flag information corresponding to the register to be written is not set, the stored flag information is set and the The data of the register to be executed is saved by securing another save area in the memory. After the procedure call or the interrupt processing is completed, the register in which the saved flag information is set from the other save area in the memory. Only read the data of the register corresponding to this register Restore the saved flag information to the register where the saved flag information is set, clear the saved flag information, and return the saved flag information to the settings before the procedure call or interrupt processing occurred based on the information saved in the save area. 8. The register management method for an arithmetic processing device according to claim 7, wherein:
【請求項9】 上記データを上記メモリに書き込み保存
する際に一旦上記データをバッファに格納し、 上記手続き呼び出しまたは割り込み処理終了後上記バッ
ファに上記保存済みフラグ情報の設定されているレジス
タのデータが残っている場合は、上記メモリ上の退避領
域からデータを読み出さず上記バッファから上記保存済
みフラグ情報の設定されているレジスタのデータを上記
保存済みフラグ情報の設定されているレジスタに復帰さ
せることを特徴とする請求項7記載の演算処理装置のレ
ジスタ管理方法。
9. When the data is written and stored in the memory, the data is temporarily stored in a buffer, and after the procedure call or the interrupt processing is completed, the data of the register in which the stored flag information is set is stored in the buffer. If it remains, the data of the register in which the stored flag information is set is returned from the buffer to the register in which the stored flag information is set without reading the data from the save area on the memory. 8. The register management method for an arithmetic processing device according to claim 7, wherein:
【請求項10】 上記データを上記メモリに書き込み保
存する際に一旦上記データをバッファに格納し、 上記手続き呼び出しまたは割り込み処理終了後上記バッ
ファに上記保存済みフラグ情報の設定されているレジス
タのデータが残っている場合は上記メモリ上の他の退避
領域からデータを読み出さず上記バッファから上記保存
済みフラグ情報の設定されているレジスタのデータを上
記保存済みフラグ情報の設定されているレジスタに復帰
させることを特徴とする請求項8記載の演算処理装置の
レジスタ管理方法。
10. When the data is written and stored in the memory, the data is temporarily stored in a buffer, and after the procedure call or the interrupt processing is completed, the data of the register in which the stored flag information is set is stored in the buffer. If the data remains, the data of the register in which the stored flag information is set is returned from the buffer to the register in which the stored flag information is set without reading data from another save area on the memory. 9. The register management method for an arithmetic processing device according to claim 8, wherein:
【請求項11】 上記バッファに上記保存済みフラグ情
報の設定されているレジスタのデータが残っている場合
でこのデータの上記メモリに対する書き込みが終了して
いない場合は上記メモリへの書き込みを行わないことを
特徴とする請求項9または10記載の演算処理装置のレ
ジスタ管理方法。
11. When the data of the register in which the stored flag information is set remains in the buffer and the writing of the data to the memory is not completed, the writing to the memory is not performed. 11. The register management method for an arithmetic processing device according to claim 9, wherein:
【請求項12】 上記バッファは、 上記メモリへの書き込みに対して使用する一般書き込み
用バッファと、 上記レジスタ退避のためのレジスタ退避用バッファと、 上記一般書き込み用バッファと上記レジスタ退避用バッ
ファへの書き込み処理の優先度を制御する優先度制御手
段とを備え、 この優先度制御手段は上記一般書き込み用バッファと上
記レジスタ退避用バッファの両方に書き込み用のデータ
がある場合、上記レジスタ退避用バッファに空きがある
時は上記一般書き込み用バッファの処理を優先し、上記
レジスタ退避用バッファに空きが無い時はレジスタ退避
用バッファの処理を優先することを特徴とする請求項
9、請求項10、請求項11記載の演算処理装置のレジ
スタ管理方法。
12. The buffer according to claim 1, wherein the buffer includes a general write buffer used for writing to the memory, a register save buffer for saving the register, and a buffer for saving the general write buffer and the register save buffer. Priority control means for controlling the priority of the write processing, wherein the priority control means stores the write data in both the general write buffer and the register save buffer when the general data buffer and the register save buffer have write data. 10. The processing of the general write buffer is prioritized when there is free space, and the processing of the register save buffer is prioritized when there is no free space in the register save buffer. Item 12. The register management method for an arithmetic processing device according to item 11.
JP33277497A 1997-12-03 1997-12-03 Arithmetic processor and register managing method for it Pending JPH11167494A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33277497A JPH11167494A (en) 1997-12-03 1997-12-03 Arithmetic processor and register managing method for it

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33277497A JPH11167494A (en) 1997-12-03 1997-12-03 Arithmetic processor and register managing method for it

Publications (1)

Publication Number Publication Date
JPH11167494A true JPH11167494A (en) 1999-06-22

Family

ID=18258688

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33277497A Pending JPH11167494A (en) 1997-12-03 1997-12-03 Arithmetic processor and register managing method for it

Country Status (1)

Country Link
JP (1) JPH11167494A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008123503A (en) * 2006-11-14 2008-05-29 Samsung Electronics Co Ltd Apparatus and method for controlling operation processing in nonvolatile memory
JP2008282105A (en) * 2007-05-08 2008-11-20 Fujitsu Microelectronics Ltd Microprocessor and register saving method
US11010192B2 (en) * 2017-04-18 2021-05-18 International Business Machines Corporation Register restoration using recovery buffers
US11061684B2 (en) 2017-04-18 2021-07-13 International Business Machines Corporation Architecturally paired spill/reload multiple instructions for suppressing a snapshot latest value determination

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008123503A (en) * 2006-11-14 2008-05-29 Samsung Electronics Co Ltd Apparatus and method for controlling operation processing in nonvolatile memory
JP2008282105A (en) * 2007-05-08 2008-11-20 Fujitsu Microelectronics Ltd Microprocessor and register saving method
US8484446B2 (en) 2007-05-08 2013-07-09 Fujitsu Semiconductor Limited Microprocessor saving data stored in register and register saving method
US11010192B2 (en) * 2017-04-18 2021-05-18 International Business Machines Corporation Register restoration using recovery buffers
US11061684B2 (en) 2017-04-18 2021-07-13 International Business Machines Corporation Architecturally paired spill/reload multiple instructions for suppressing a snapshot latest value determination

Similar Documents

Publication Publication Date Title
KR100934533B1 (en) Computer-readable recording medium recording arithmetic processing system, task control method on computer system, and computer program
JPH09212371A (en) Register saving and restoring system
JP2001166950A (en) Device and method for managing interruption
US20100332722A1 (en) Virtual machine system and control method thereof
US7617389B2 (en) Event notifying method, event notifying device and processor system permitting inconsistent state of a counter managing number of non-notified events
JP2009157684A (en) Virtualization program, simulation device, and virtualization method
JP3970609B2 (en) Processor system
JP3525518B2 (en) Data transfer device
JPH1011301A (en) Multitask processor and multitask processing control method
JPH11167494A (en) Arithmetic processor and register managing method for it
JP2005004562A (en) Multiprocessor system and method and program for controlling it
JPH1139171A (en) Multitask processor, multitask processing control method and control program storing medium
JP2671160B2 (en) Exception handling method
JP4057769B2 (en) Interrupt management device and interrupt management method
JP3067253B2 (en) Data processing device
WO2023144939A1 (en) Computer, control method, and control program
JP3013725B2 (en) How to return from interrupt processing
JP2000132409A (en) Stack sharing system for task having no wait state
JP2885210B2 (en) Graphic processing system
JP3463696B2 (en) Online garbage collection processing method
JPH09134292A (en) Interruption control method
JPH10247161A (en) Memory management system
JPH0262633A (en) Inter-program communication system
JP2007122343A (en) Information processing apparatus and screen display method for information processing apparatus
JP2000020155A (en) Temporary interruption and restart control method for system operation