JPS6027031A - Information processor - Google Patents
Information processorInfo
- Publication number
- JPS6027031A JPS6027031A JP13556283A JP13556283A JPS6027031A JP S6027031 A JPS6027031 A JP S6027031A JP 13556283 A JP13556283 A JP 13556283A JP 13556283 A JP13556283 A JP 13556283A JP S6027031 A JPS6027031 A JP S6027031A
- Authority
- JP
- Japan
- Prior art keywords
- register
- program
- register set
- contents
- information
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
Abstract
Description
【発明の詳細な説明】
本発明は多重プログラミング処理を行なう情報処理装置
に関し、とくにプログラムの切換が発生した場合のレジ
スタ情報の退避方式に関するものである。DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an information processing apparatus that performs multiple programming processing, and more particularly to a method for saving register information when a program switch occurs.
多重プログラミングを行なう情報処理装置では、ある一
定時間ごと又は割込みの発生などによシブログラムの切
換えが起こる。プログラムの切換えが起きた場合、現在
実行されているプログラムのレジスタセットの内容を別
の場所に退避し、次に実行されるべきプログラムのレジ
スタ情報をそのレジスタセット(即ち、演お部が使用す
るレジスタセット)にロードすることによって処理が惟
められなければならない。このレジスタ退避処理におい
て従来は次のような方式が採用されていた。In an information processing device that performs multiple programming, switching of programs occurs at certain fixed time intervals or when an interrupt occurs. When a program switch occurs, the contents of the register set of the currently executed program are saved to another location, and the register information of the program to be executed next is transferred to that register set (i.e., the contents of the register set used by the (register set). Conventionally, the following method has been adopted for this register saving process.
(1)第1図に示すように、情報処理装置は演p一時(
プログラム処理時)に使用するレジスタセット1を1セ
ツトだけ有し、プログラム実行中にプログラム切換えが
起った場合は現在実行されているプログラムのレジスタ
セットの内容を別の場所に転送して退避させ、その後次
に実行すべきプログラムのレジスタ情報を記憶装置2か
ら読み出して空になったレジスタセント1にロードし実
行を開始する方式。ここで、制御記憶装置3はマイクロ
コードを有する几0ムI、演算部4はプログラムを実行
する処理部である。(1) As shown in FIG.
It has only one register set 1, which is used during program processing), and if a program switch occurs during program execution, the contents of the register set of the currently executed program are transferred to another location and saved. Then, the register information of the next program to be executed is read from the storage device 2, loaded into the empty register 1, and execution is started. Here, the control storage device 3 is a memory having a microcode, and the arithmetic unit 4 is a processing unit that executes a program.
(2)第2図に示すように情報処理装置がレジスタセッ
ト5〜8を複数組(図では4組)有し、実行可能なプロ
グラムの内からレジスタセット数に一致する数のプログ
ラムを選択し、そのプログラムで使うレジスタ情報をあ
らかじめ対応するレジスタセットにロードしておく。プ
ログラム切換えが起り、次に実行されるべきプログラム
のレジスタ情報が既に上記レジスタセットの内の1つに
ロードされているならば演算部9に対してそのレジスタ
セットを使用できるように指令して実行を開始する方式
。ここでは、レジスタ情報の退避の必要はない。(2) As shown in FIG. 2, the information processing device has multiple sets of register sets 5 to 8 (four sets in the figure), and selects programs whose number matches the number of register sets from among executable programs. , load the register information used in the program into the corresponding register set in advance. If program switching occurs and the register information of the program to be executed next has already been loaded into one of the above register sets, execute by instructing the arithmetic unit 9 to use that register set. How to start. Here, there is no need to save register information.
しかし、上記(1)の方式ではプログラムの切換えによ
るオーバーヘッドが増加し、上記(2)の方式ではプロ
グラム切換えによるオーバーヘッドは小さいがハードウ
ェア量を多く必要とするという欠点がある。However, the method (1) described above has the disadvantage that the overhead due to program switching increases, and the method (2) described above has the disadvantage that although the overhead due to program switching is small, it requires a large amount of hardware.
本発明はハードウェア量の大幅な増加を招くことなく、
シかもプログラムの切換えによるオーバーヘッドを小さ
くすることができる情報処理装置を提供することを目的
とする。The present invention does not require a significant increase in the amount of hardware.
An object of the present invention is to provide an information processing device that can reduce overhead caused by switching programs.
本発明はプログラム切換えの際の現在のレジスタセット
の内容の転送、退避、及び次に実行すべきプログラムの
実行開始動作に注目し、該情報処理装置にレジスタセク
トを2セツト、レジスタセントの内容を転送して退避す
るだめの転送R置、及び演算部と転送装置とで使用され
るレジスタセットを選択して切換える制御部とを備え、
どちらか一方のレジスタセットが演努1部により使用さ
れているときにプログラムの切換えが発生した場合現在
使用されていないレジスタセットを演Wfr)I、に与
え、それまで使用されていたレジスタセットのレジスタ
情報を別のi易所に退避する処理と、新たに実行される
プログラムでのレジスタ+1?報を演算部に与えたレジ
スタセットにロードする処理とを独立に行々えるように
したことを特徴とする。The present invention focuses on the operation of transferring and saving the contents of the current register set when switching programs, and starting the execution of the next program to be executed, and provides two sets of register sectors and the contents of register cents in the information processing device. It includes a transfer R location for transferring and saving, and a control unit that selects and switches a register set used by the arithmetic unit and the transfer device,
If a program switch occurs while one of the register sets is being used by Part 1, the currently unused register set is given to Part 1, and the previously used register set is Processing to save register information to another i-location and register +1 in newly executed program? The present invention is characterized in that the process of loading the information into the register set given to the arithmetic unit can be carried out independently.
以下に本発明の一実施例を詳細に説明する。第3図は本
発明が適用される情報処理装置の一実施例を示す回路ブ
ロック図である。情報処理装置にて実行されるべきプロ
グラムのレジスタ情報は記憶装置19に格納されている
。現任実行中のプロクラムのレジスタ情報はレジスクセ
ソ)11又kiレジスタセシート12のいずれかに格納
される。レジスタセット制御部13は演q1部14がプ
ログラムを実行するために使用するレジスタセットをレ
ジスタセクト11又はレジスタセット12から選択する
だめのものである。レジスタ情報I・制作11部13に
よりレジスクセソI・117>”選択でれている場合に
は、現在実行中のプログラムのレジスタ情報はレジスタ
セクト11に入っておυ、レジスタセクト12が衣;釈
さ19ている場合には現在実行中のプログラムのレジス
タ情報はレジスタセント12に入っているわけである。An embodiment of the present invention will be described in detail below. FIG. 3 is a circuit block diagram showing an embodiment of an information processing apparatus to which the present invention is applied. Register information of a program to be executed by the information processing device is stored in the storage device 19. Register information of the program currently being executed is stored in either the register sheet 11 or the ki register sheet 12. The register set control unit 13 is used to select a register set from the register sector 11 or the register set 12 to be used by the arithmetic and q1 unit 14 to execute the program. If register information I/production 11 section 13 selects register information I/117>, the register information of the program currently being executed is stored in register sector 11, and register sector 12 is stored. 19, the register information of the program currently being executed is stored in register center 12.
制御記憶装置151−i、演7)[(ALU) 14
、レジスタセット制御部13、シリアル転送数v16、
記憶制御装置18、の動作を制御するだめのマイクロコ
ードが入ったROMである。シリアル転送装置16、シ
リアル転送受信装置17はプログラム切換えが発生した
場合にレジスタセットの内容を転送退避するだめのもの
である。Control storage device 151-i, performance 7) [(ALU) 14
, register set control unit 13, serial transfer number v16,
This is a ROM containing microcode for controlling the operation of the storage control device 18. The serial transfer device 16 and the serial transfer receiving device 17 are used to transfer and save the contents of the register set when program switching occurs.
かかる情報処理装置においてプログラム切換えが発生す
ると、第4図のフローチャートに示すように、まずレジ
スタセット制御部13によυ、演算部14が現在演算部
14が使用していないレジスタセットを使用できるよう
にし、次に実行すべきプログラムのレジスタ情報をその
レジスタセットにロードし、実行を開始する。前記動作
と並行してレジスタ制御部13はシリアル転送装置16
に対してそれまで演算部14が使用していたレジスタセ
ットの内容をシリアルに外部のシリアル転送受信装置1
7に送るように指令する。この内容は受信装置17で元
のデータ形式に戻されて記憶装置19に格納される。When a program switch occurs in such an information processing device, as shown in the flowchart of FIG. , loads the register information of the next program to be executed into that register set, and starts execution. In parallel with the above operation, the register control unit 13 controls the serial transfer device 16.
The contents of the register set that had been used by the arithmetic unit 14 are serially transferred to the external serial receiver 1.
7. This content is returned to the original data format by the receiving device 17 and stored in the storage device 19.
記憶制御装置18はシリアル転送装置16によシレジス
タセットの内容を記憶装置のあるエリアに転送を行なっ
ている間に、演算部14が同一のエリアに読み書きを行
なおうとした場合に演算部14の実行をシリアル転送が
終了するまで中断するためのものである。While the storage control device 18 is transferring the contents of the register set to a certain area of the storage device by the serial transfer device 16, if the calculation section 14 attempts to read or write to the same area, the storage control device 18 This is to suspend the execution of the serial transfer until the serial transfer is completed.
以上の説明から明らかなように本発明の情報処理装置は
、プログラム切換えが発生した場合に現在実行されてい
るプログラムのレジスタセットの内容の転送退避動作と
、次に実行すべきプログラムの実行開始動作とを2組の
レジスタセットで独立にかつ並列に行なうことができ、
ハードウェアの大幅な増加を招くことなくプログラム切
換えのだめのオーバーヘッドを小さくすることができる
という効果がある。As is clear from the above description, the information processing apparatus of the present invention performs an operation to transfer and save the contents of the register set of the currently executed program when a program switch occurs, and an operation to start execution of the next program to be executed. can be performed independently and in parallel using two register sets,
This has the effect that the overhead of program switching can be reduced without causing a significant increase in hardware.
またプログラム切換えが発生した際のレジスタセットの
内容のメモリエリアへの転送手段としてシリアル転送方
式を用いておシ、これによシ外部のシリアル転送受信装
置への接続が最小り本のバスで可能であシ、このためL
SI化を行なった場合、端子数の増加を抑えることがで
きるという効果がある。In addition, a serial transfer method is used as a means of transferring the contents of the register set to the memory area when a program change occurs, and this allows connection to an external serial transfer receiving device using a minimum number of buses. Ashi, for this reason L
SI implementation has the effect of suppressing an increase in the number of terminals.
第1図および第2図は従来の装置の要部ブロック図、第
3図は本発明が適用された情報処理装置の一実施例のブ
ロック図である。
1.5〜8,11.12・・・・・・レジスタセット、
13・・・・・・レジスタセット制御部、4,9.14
・・・・・・演算部、3.15・・・・・・制御記憶
装置、16・・・・・・シリアル転送装置、17・・・
・・・シリアル転送受信送置、18・・・・・・記憶制
御装置、2.19・・・・・・記憶装置。
第4図は本発明においてプログラム切換が発生した際の
処理動作を示すフローチャートである。
−′ ・、・
代理人 弁理士 内 原 ffff1・ −・1日1.
1
第3図1 and 2 are block diagrams of main parts of a conventional device, and FIG. 3 is a block diagram of an embodiment of an information processing device to which the present invention is applied. 1.5-8, 11.12...Register set,
13...Register set control section, 4,9.14
. . . Arithmetic unit, 3.15 . . . Control storage device, 16 . . . Serial transfer device, 17 .
. . . Serial transfer/reception/transmission, 18 . . . Storage control device, 2.19 . . . Storage device. FIG. 4 is a flowchart showing processing operations when program switching occurs in the present invention. -' ・・・ Agent Patent Attorney Uchihara ffff1・ −・1 day 1.
1 Figure 3
Claims (1)
有し、プログラムの切換えに際して現在未使用のレジス
タセットを前記プログラム実行部に与え、現在使用中の
レジスタセットの内容を退避する処理と、プログラム実
行部に与えたレジスタセットへ次に実行すべきプログラ
ムのレジスタ情報をロードする処理とを独立に実行でき
るようにしたことを特徴とする情報処理装置。It has two sets of registers that can be used by the program execution unit, and when switching programs, it provides the currently unused register set to the program execution unit, saves the contents of the register set currently in use, and executes the program. 1. An information processing device characterized in that a process of loading register information of a program to be executed next into a register set given to a program can be executed independently.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13556283A JPS6027031A (en) | 1983-07-25 | 1983-07-25 | Information processor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP13556283A JPS6027031A (en) | 1983-07-25 | 1983-07-25 | Information processor |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6027031A true JPS6027031A (en) | 1985-02-12 |
Family
ID=15154710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP13556283A Pending JPS6027031A (en) | 1983-07-25 | 1983-07-25 | Information processor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6027031A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61241838A (en) * | 1985-04-19 | 1986-10-28 | Nec Corp | Storage device |
JPS61241835A (en) * | 1985-04-19 | 1986-10-28 | Nec Corp | Data processor capable of environment saving parallel processing |
US7117319B2 (en) | 2002-12-05 | 2006-10-03 | International Business Machines Corporation | Managing processor architected state upon an interrupt |
US7272664B2 (en) | 2002-12-05 | 2007-09-18 | International Business Machines Corporation | Cross partition sharing of state information |
US7493478B2 (en) | 2002-12-05 | 2009-02-17 | International Business Machines Corporation | Enhanced processor virtualization mechanism via saving and restoring soft processor/system states |
-
1983
- 1983-07-25 JP JP13556283A patent/JPS6027031A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61241838A (en) * | 1985-04-19 | 1986-10-28 | Nec Corp | Storage device |
JPS61241835A (en) * | 1985-04-19 | 1986-10-28 | Nec Corp | Data processor capable of environment saving parallel processing |
US7117319B2 (en) | 2002-12-05 | 2006-10-03 | International Business Machines Corporation | Managing processor architected state upon an interrupt |
US7272664B2 (en) | 2002-12-05 | 2007-09-18 | International Business Machines Corporation | Cross partition sharing of state information |
US7493478B2 (en) | 2002-12-05 | 2009-02-17 | International Business Machines Corporation | Enhanced processor virtualization mechanism via saving and restoring soft processor/system states |
US7849298B2 (en) | 2002-12-05 | 2010-12-07 | International Business Machines Corporation | Enhanced processor virtualization mechanism via saving and restoring soft processor/system states |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS6364144A (en) | Inter-memory data transfer system | |
US4095268A (en) | System for stopping and restarting the operation of a data processor | |
JPS6027031A (en) | Information processor | |
JP2003058381A (en) | Processor realizing exception processing setting by program | |
JP2564054B2 (en) | Register file | |
JP2985244B2 (en) | Information processing device | |
JPH01161477A (en) | Vector arithmetic processing unit | |
JPH0883187A (en) | Data processor | |
JPS6120139A (en) | Interruption control system | |
JPH0228840A (en) | Information processor | |
JPH05120014A (en) | Microcomputer | |
JPH0285933A (en) | Information processor | |
JPS61166631A (en) | Microprogram control processor | |
JPH07271630A (en) | Register/memory switching control unit of microprocessor | |
JPH04358227A (en) | Microprocessor | |
JPH0347536B2 (en) | ||
JPH01309174A (en) | Vector processor | |
JPS61184644A (en) | Control system of virtual computer system | |
JPH05298119A (en) | Context switch mechanism for microprocessor | |
JPH05233026A (en) | Microcomputer circuit | |
JPH02113363A (en) | Time slice controlling system for multiprocessor system | |
JPH02137028A (en) | Instruction control system | |
JPH01216433A (en) | Interruption control system | |
JPH0883188A (en) | Multitask processing computer | |
JPS60129841A (en) | Interruption control circuit |