JPS5894038A - 電子計算機 - Google Patents

電子計算機

Info

Publication number
JPS5894038A
JPS5894038A JP19051681A JP19051681A JPS5894038A JP S5894038 A JPS5894038 A JP S5894038A JP 19051681 A JP19051681 A JP 19051681A JP 19051681 A JP19051681 A JP 19051681A JP S5894038 A JPS5894038 A JP S5894038A
Authority
JP
Japan
Prior art keywords
register
stack
contents
area
circuit
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
JP19051681A
Other languages
English (en)
Other versions
JPS6240736B2 (ja
Inventor
Koichi Tsukizoe
築添 弘一
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.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric Co 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP19051681A priority Critical patent/JPS5894038A/ja
Publication of JPS5894038A publication Critical patent/JPS5894038A/ja
Publication of JPS6240736B2 publication Critical patent/JPS6240736B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/461Saving or restoring of program or task context

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 本晃明は、針J1機システムの中央処iM装置で演算に
使用されるレジスタ群が、プログラムの処理単位である
プロセス毎に1組ずつ定義されてそれぞれ主紀憶装瀘内
のプロセスごとに対応して設けらt′L九レジしタ退避
エリアVC退避格′網が口」能であり、複数個の実行可
能状−にあるプロセスのうち、同時にはl@Oプロセス
を実行するlJ1機システムムにおけるレジスタ群貯蔵
装置に関し、特に、プロセス切替時のレジスタl#に対
する1lFIJ#に関する。
従来、この棟のシステム#i論1図にボすように構成烙
れている。すなわち、主記憶装置lは、命令およびオペ
ランドと、複数組のレジスタ群の各内容に対する退避デ
ータとを記憶している。上記1組のレジスタ群の内容は
、1つのプロセスに対応している。中央処理妓112U
、命令フェッチ装置3.命令実行装置1114およびレ
ジスタ群貯蔵装置5等から構成される。レジスタ群貯蔵
装置5は、実行中のプロセスに対応し九1膨のレジスタ
群を貯蔵するレジスタスタック51と、該レジスタスタ
ック51の絖出しおよび豊込みのためのアドレス虻供給
するアドレスレジスタ52とから構成されている。上記
レジスタスタック51は、通常主記憶アドレスのベース
アドレスを保持する16個のベースレジスタ(HRQ〜
Bル15)と、主記憶アドレスの指嫌アドレスおよび演
算に使用されるデータを保持する16個の汎用レジスタ
((jkLθ〜(jRts)を有する。
前記命令フェッチ装置it3/fi命令を主記憶装置1
よりフェッチするとともに解読し、メモリオペランドお
よびレジスタオペランドを準備する。メモリオペランド
の単一とは、命令で指定さオしたベースレジスタおよび
汎用レジスタの内容をアドレスレジスタ52に介してレ
ジスタスタック51から絖出し、これらの内容と命令内
の変位フィールドの内容との3個のデータを演算するこ
とKより主記憶アドレスを求め、主起tik!電lヘロ
ードアクセス賛求を発生することである。lた、レジス
タオペランドの準備とは、命令で指定された汎用レジス
タの内容を、アドレスレジスタ52t−介してレジスタ
スタック51から絖出し、この続出しデータが鮎令夾行
装置4で受取られることである。
域令夷打快随4での演算結果は、命令フェッチ装置t3
からアドレスレジスタ52を介して与えられたレジスタ
スタック51のアドレス位置へ格納される。
命令フェッチ装置[3において、人出方+bll #装
置などの他プロセツサからの割込÷、若しくは謔令夾行
中の例外検出による割込又は命令解d等により、プロセ
スの切替えか必賛になった場合は、まず実行中でおった
プロセスに対応(7だレジスタ群であるレジスタスタッ
ク51の内容を、主記憶装置l内のあらかじめプロセス
対応ににめられたエリアへ過避場せ、次に新しく実行す
べきプロセスに対応したレジスタ群の内容を主起u1装
置l内のI&il当退避エリアからレジスタスタック5
1へ5t−(すなわち回復する)ことが必喪である。こ
のレジスタ群の退避お↓び回復の動作を第2図に下すタ
イムチャートを参照してa明する。先ず、レジスタスタ
ック5xo16(10ペースレジス/ (880〜BR
I 5)および16澗の汎用レジスタ(qル0〜*aI
S> 、合計3211Iのレジスタの内容を鵬次主記惜
装置lへ書込み退避させる。次いで主記憶装置llから
レジスタスタック51の32個のレジスタ(BRO〜B
ル15.G几0〜GR15)へ新しいプロセスに対応す
る主記憶装置の退避エリアから順次読込み回復する。す
なわち、退避処理および回復処理のために、32回の主
記憶装置への書込みと、32[glの主記憶装置からの
読出1.#作が必要である。すなわち、第1図に示した
ような従来のレジスタ群貯蔵装置5を用い友1ts(2
)システムでtま、プロセスの切替eC多大の時間ヲ賛
するという欠点がある。このプロセス切替KJMする時
間は、基本命令の処理に賛する時間に比して、lO〜1
00倍程度を貴し、システムの性能を着しく低ヤーさせ
る豊凶となる。
−力、上述の欠点を改良し、プロセス処理の切替えに際
し、レジスタ群の過避熟虐に景する時間を実質的に零と
することか可能なレジスタ群貯蔵装置が提案されている
。この貯蔵mtilL、実行中ρプロセスに対応する1
組の前記レジスタ群の内容を貯蔵するMlのレジスタス
タッタと、上記実行中のプログラムに対応する1組のレ
ジスタ群の内容および以前に実行中でbつ九1組のレジ
スターの内容とを貯蔵できる2つのエリアを有−ノる第
2のレジスタスタッタと、これら#!lおよび論2のレ
ジスタスタックへの続出し書込みのための′γドレス情
報、退避先エリア先鎮アドレスi’*m、回復開始指示
信号等を鹸配謔令フェッチ装置から受けてこれらの動作
を制御するレジスタ群制御1111回路とを備えて、命
令の実行に使用されるし/スタオベランドFi@配線令
フェッチ装置から与えられるレジスタアドレス情報によ
シ前記j1!1のレジスタスタックから繭配命令実行M
WK銃出され、演算結果は前記命令フェッチ装置から与
えられるレジスタアドレス情報によシ前記第1のレジス
タスタックシよび$2のレジス・タスタックの1つのエ
リアの対応位置に同時に格納され、#J配命令7エツチ
装置からプロセス切替処理のための回復開始指示16号
が与えられると、Itl主記憶装置の咳歯過避エリアか
ら続出された対応する1組のレジスタ群内容を前記第1
のレジスタスタックおよび第2のレジスタスタックの上
記と異なるもう1つのエリアに同時に格納し、前記命令
7エツテ装置から与えられるプロセス切替終了16号に
より、新しいプロセスに対する命令の実行と並行して前
記第2のレジスタスタックの以前実行中でめつ九プロセ
スに対応し′fic1つのエリアに格納されている1組
のレジスタ群の内容を順次送出してilr記主船主記憶
装置当退避エリアへ退避させるように構成されている。
第3図は、上述のり置場れた貯蔵#critの一例を示
すブロック図である。すなわち、レジスタ群貯蔵装置1
1t6は、32個のレジスタを有する第1のレジスタス
タック61と、64個のレジスタを有するJig2のレ
ジスタスタック62と、これらレジスタの内容の退避1
回復を11制御するレジスタ群制御回路63とからMl
成される。上記絽lのレジスタスタック61は、実行中
のプロセスに対応した1組のレジスタ群の内容を格納す
る16個のペースレジスタと16個の汎用レジスタとを
肩し、32ワード×4バイトのデータを貯蔵することが
できる。また、第2のレジスタスタック62Fi、64
ワード×4バイトのデータを貯蔵可能であり、上述の実
行中のプロセスに対応する1組のレジスタ群と、直前の
実行プロセスに対応する1ffiのレジスタ群の内容と
を貯蔵する2つのエリアを有する。
レジスタ群制ml路63#i、これらのレジスタスタッ
ク61および62への命令実行に丈用されるレジスタオ
ペランドの読出しおよび膏込みの走めのアドレスを供給
し、プロセス切替処理の終r俵に通常の命令の処理と並
行して第2のレジスタスタック62の1つの工、リアに
格納されている旧プロセスに対応し良しジスタ解の内容
を主記憶装置lへ退避させるように制御する。
上述の貯戚妓tILは、通常の*貧の処理中には、レジ
スタ内容の貌出しは論1のレジスタスタック61から行
なわれ、命令実打執1a14での演算結果に、第1およ
び第2のレジスタスタックの双方へ41皐込まれる。第
2のレジスタスタック62は、前述し友ように2つのエ
リアt−自し、いずれか一方のエリア#は実行中のプロ
セスに対応していて第1のレジスタスタック61と同じ
内容を有し、第1のスタック61と同時に内容が書き瞥
見られる。他方のエリアにFi1回前に実行中であった
プロセスに対応し九レジスタ群の内容が貯蔵されている
。上記2つの1リアは、プロセスの切替ごとに交互に切
替えられる。
第4図は、プロセス切替時における上記レジスタ群貯蔵
装置の動作を示すタイムチャートである。
プロセス切曽処鳩時(同国時刻■〜■)において、主起
t4を装fl 1内のν[シく実行するプロセスに対応
したレジスタ群の内容は、BルOから順次読み出され、
(M3図の)岐令実行装置4會介して第1および第2の
レジスタスタック61および62(−力のエリア)tC
誉注込まれる。すなわち レジス) クリ回復処理が行なわれる。このとき第2のレジスタス
タック62の他方のエリアには、直前に実行されていた
プロセスに対応するレジスタ群の内容が残されている。
そして、時刻■でレジスタの回復処理が元rしたのち、
命令の真性と平行して、第2のレジスタ6・2の上記北
方のエリアに格納されている直−Uのプロセスに対応す
るレジスタ群の内容の退避が行なわれる。すなわち、時
A11(J〜(りの間に上mlエリアの内容がBル0か
ら順次主ml儂挾置l内の対一応エリアへ転送される。
上述の動作によりプロセス切替処理に賛する時間が、実
質的にはレジスタの回復処理に資する時間の与となり、
退避動作の時間は考慮する必蒙がない。すなわち、前述
の従来例に比して約2倍の^連化が達成される。しかし
、基本醋令の実行時間との間には未だ大急な差があり、
システムの性能會劣化させる大きな資因となっている。
本発明の目的は、上述の従来の欠点を解決し、プロセス
切替処理rC&けるレジスータ群の回復処理をaJ能な
限り尚連化し、システム性能への影響を最小限りこする
ことができるレジスタ群貯蔵装置を提供することKある
本発明の貯蔵装置は、命令のフェッチ装置と、#嗜寮行
#cliI[と、レジスタ群貯蔵装置とを内戚して、主
記憶装置から命令を7エツチ、解読し、命令の実行およ
び部会の′ps絖や割込により起動されるプロセスの切
替処理を行ない、プログラムの処8!単位モめるグロセ
ス毎に演其に使用される1組のレジスタ群の内容を主起
w装置の谷プロセスに対応して設けられ九レジスタ退避
エリアから続出して一紀しジスタ群貯JR装置に@納さ
せ、かつ咳しジスタ群貯蔵装置に格納されていた以前に
実行中のプロセスに対する1組のレジスタ群の内容をp
A把王配置ム装置の対応するレジスタ退避エリアにa斑
させるようにして、夾村uj能状態にある複数のプロセ
スのうち同時に會11個のプロセスを実何する中央処a
!装置のレジスタ評貯戚装置において、実行中のプロセ
スに対応する1組のIIU記レジしタ群の内容を貯蔵す
る第1のレジスタスタックと、上記実行中のプロセスに
対応する1組のレジスタ群の内容および以前に実行中で
あった1組のレジスタ群の内容並びに次に実行すべきプ
ロセスに対応するレジスタ群の内容とを貯蔵できる複数
のエリアを有する第2のレジスタスタックと、繭記匍令
フェッチ装置からのレジスタアドレス情報等によって前
記謳1および第2のレジスタスタックへのアドレス指示
を行ない後記する′w理開回路らの実行エリアアドレス
情報又は転送アドレス情報によって前記第2のレジスタ
スタックのエリアを指示シてfiJ紀第2のレジスタス
タックの誓込み又は続出しを制御し、かつ前記第2のレ
ジスタスタックかう前記第1のレジスタスタックへの1
俵動作の終了によシ回v1終了イ6号を送出し前記第2
のレジスタスタックへの主記憶装置からの転送終fによ
り転送終了16′@を出す制御回路と、前記制御回路か
らの回復終了信号によりメモリアクセス信号を送出し上
記回復終了後に主ml憶装置からのメモリ終了信号を受
けると次りロセス決定偏号を送出する次プロセス決定回
路と、前記第2のレジスタスタックの複数のエリアに対
応して設けられ−これらの各エリアに格納されているレ
ジスタ11’pK対応するプロセス4に号tX録する複
数のスタック管理レジスタを内蔵し命令フェッチ装置か
らのプロセス情報又は主記憶装置からの続出しデータ中
のプロセス着号と上記スタック置場レジスタの内容と會
グロセス切誉指示信号又は繭記次プロセス決’jt1g
号により比較した結果により実行中アドレス情報および
回復終了信号または転送エリアアドレス情報および転送
指示信号t−前記制御回路へ送出する管理回路とを備え
て、通常の命令実行時に14前記第1のレジスタスタッ
クから絖出して幀令が実行され、頂算結釆Vi前記第1
のレジスタスタックおよび前記第2のレジスタスタック
の1つのエリアに同時に格納し、プロセス切替時におい
ては前記第2のレジスタスタックの1つのエリアに格納
されている矢プロセスに対応するレジスタ群の内容をm
tt第1のレジスタスタッタへ転送して回復処理を完了
し、そのflk該ノロセスの実行と平行してその次に実
行すべき次プロセス査号全土紀憶装置から絖み出し該プ
ロセス4r号と削紀複畝のスタック管理レジスタの一致
の有無を慣出し、いずれとも不一致であるときは当該プ
ロセスのレジスタ群が退避されている主記憶装置の退避
正リア先頭アドレスから順次対応するレジスタ群の内容
を続出して前記第2のレジスタスタックのもう1つ別の
エリアに格納することを籍敞とする。
次に、本発明について、凶tmを参照して旺−に説明す
る。
第5図は、本発明の一511!施例で弗るレジスタ朴貯
蔵、誠[6の他に、市令フェッチ狭1.f4令夾行#l
$1および主起1装−をも含む計鼻慎システムを   
□4くすブロック図である。すなわち、主記憶装置1t
lと中央処J!l装置1t2とから成シ、中央処理装置
2は線分フェッチ#装置3と命令実行装置4およびレジ
スタ紳貯戚装置6を含む。レジスタ群貯蔵装置6を除い
友構成は、前述の第1図又は第3図にボされた従来例と
四様である。レジスタ群貯蔵装置6は、1i41のレジ
スタスタック61.第2のレジスタスタック62.制御
回路631次プロセス決定回路65.管理回路66、f
i択回路601,602寺から構成される。
第1のレジスタスタック61は、実行中のプロセスに対
応するレジスタ群を貯蔵するレジスタで、32ワード×
4バイトの構成を持つ。そして、制御回路63から指示
されるアドレスの内容を続出して命令フェッチ装置3お
よび命令実行装置4に送り、選択−路601で選択され
九命令実行装置4の出力または第2のレジスタスタック
62の絖出しデータを指示されたアドレスに書き込む。
第2のレジスタスタック62Vi、上記嬉lのレジスタ
スタック62の4倍の容量、すなわち128ワード×4
バイトの構成を持ち、4つのエリアに分割されている。
各エリアの容置は32ワード×4バイトであり、それぞ
れのエリアに対して2ビツトのアドレスが削り当てられ
ている。上記4つのエリアのうち、1つFi実行中のプ
ロセスに対応するレジスタ群を貯蔵するエリアであり、
前記第1のレジスタスタックと同時に11き替えられる
他の1つは直HVC実行されたプロセスのレジスタ群貯
蔵エリアであシ、残9の2′)のエリア甚は、次に実行
すべきノ゛ロセスのレジスタ群をあらかじめ貯蔵するた
めに使用される。選択回路602は、命令実行装置4の
出力又は主記憶装置lからの絖出しデータを択一的に選
択して上記第2のレジスタスタック62に与える。第2
のレジスタスタック62に誓込むべき番地およびエリア
指定は、制御回路63    ゛       から与
えられる。そして、次vc実行すべ専プロセスに対応す
るレジスタ群の内容は、あらかじめ主記憶装置lから転
送されて1つのエリアに1慎しておいて、プロセス切替
時に選択回路601を介して第1のレジスタスタック6
1へ転送する。これらの動作は制御回路639次プロセ
ス決定回路65.″#jjI/A&!!1路66等の協
ToKよって行なう。
制a回路63t′i、Mlおよび第2のレジスタスタッ
ク61および62に対するアドレス1itl#、および
命令の実行とは独立に主記憶装置1ヘアクセスするため
の制御等を行なう回路であって、jlE6図K yr<
すように構成されている。すなわち、命令フェッチ装置
3からのレジスタアドレス情報71をレジスタアクセス
指示信号72によって格納するアドレスレジスタ631
9回復動作時等の萬2のレジスタスタックのアドレスを
与える良めの一復アドレスレジスタ637.上記両レジ
スタの出力を択一的に選択して第1のレジスタスタック
61に供給する選択回路632.第2のレジスタスタッ
ク62に供給するアドレスを選択する選択回路633、
管理回路66から与えられる実行エリアアドレス情報8
8または、転送エリアアドレス情報89 (2ビツト)
を択一的に選択出力して第2レジスタスタツク62の4
つのエリアのうち1つを指定する選択回路634.’!
理開回路66ら与えられる回復指示信号74をセットす
る回復指示レジスタ635.管理回路66から与えられ
る転送指示信号81をセットする転送指示レジスタb4
5.王記慣表置】がらの続出しデータ85の)°位24
ビット79および[!11定+m A並びに“+4′″
回@644の出力を人力し2、次プロセス決定回路65
から与えられる次プロセス次に16号8o又はアンド回
路641を介して与えられる回復完r値号によって、上
1人カ信号を択一的に選択出力してメモリアドレスレジ
スタ642に供給する選択回j1643.上記メモリア
ドレスレジスタ642゜該レジスタ642の内容を+4
する回路644゜回復アドレスレジスタ637のALL
 @1 ”を検出し、アンド回路641を介して回01
終了1g号75を出力させるALL@l”検出11NI
640.上紀各儲信号のアンド又はオアにより各徳レジ
スタのセット、リセット又は外S輌直に対する各種信号
を出力する多数のす子回路およびアンド回路等によって
m成さ・れている。オア回路648は、次プロセス決足
回路65からの次プロセス決定信号8o。
アンド回路641の出力する回*軒r偏号75およびア
ンド回路647の出力1g号を人力するオア回路であシ
、それらの信号をliI記メセメモリアドレスレジスタ
6420セツト端子8える。アンド回路647ri、主
起憶装mlからのメモリ終了備考78と転送指示レジス
タ645の出力とを人力し、出力を前記オア(ロ)路6
48およびアンド回路6500Å力に*[する、アンド
回路650は、アンド−路647の出力とムLL”l″
慣出出回路640出力を人力し、転送終了信号82を送
出して當iIA回路66に送る。!友、メモリ終了信号
78とALL”l”検出回路640をアンド回路651
に入力させ、その出力で転送指示レジスタ645をリセ
ットさせる。転送指示レジスタ645の出力と次プロセ
ス決定回路65からのメモリアクセス信号76とはオア
回路646を介して主配議装置lへのメモリリクエスト
46号77とされる。
を九、転送指示レジスタ645の出力およびIgl傷指
不レジスタ635の出力はオア回路639を介して切替
回路633の切替制@信号とされる。ア> VIm路6
41 HALL、” 1″検1t1回路64011!1
01指ホレジスタ635の出力を人力とし、その出力は
@述の回復終r倍号75とされる。回復アドレスレジス
タ637の出力は、+1回w163gンCよって+1さ
れてレジスタ内科が+lされる。
以上の構成により、制#回路63の動作は以トのように
なる。常時は、命令フェッチ装置I/1.3からのレジ
スタアドレス情報71 iI(よって第lのレジスタス
タック61の書き込み読み出しアドレスとし、かつ第2
のレジスタスタック62の書込みアドレスの下位5ビツ
トとする。第2レジスタスタツク62の上位2ビツトす
なわち前記4つのエリアは管理回路66から実行エリア
アドレス情報88によって指示されている。
プロセス切替時に管理回路66からの回復指示16号7
4によシ遇択回路632および633t−介して回復ア
ドレスレジスタの出力が、@lおよび鯖2レジスタスタ
ック61および62に与えられ、管理回路66からの実
行エリアアドレス情報88の指示する該当エリアに貯蔵
されているレジスメ群の内dを0査地から順次読み出し
て第lのレジスタスタック61へ転送させる。uomア
ドレスレジスタ637の初期状態は′0“であり、順次
+1される。すなわち糾しく夾付すべきプロセスに対応
したエリアの内容が第ルジスタスタックに格納される。
回復アドレスレジスタの出力がALL”]”になるとア
ンド回路641の出力により回珈終r信号75が次プロ
セス決定回路65へ送出される。またALL″′1”−
出回路640の出力により回(J14にホレジスタ63
5かリセットされる。
−力、アンド回路641の出力がオア回路648t−介
してメモリアドレスレジスタ642のセット人力8に与
えられ、レジスタ642には選択回路643t−介して
与えられる固定埴Aがセットされる。そして、次プロセ
ス決寛回路65からのメモリアクセス信号76がオア回
路646を介して主kitm鋏111へのメモリリクエ
スト信号77となり、Igtl記固定埴Aを主記憶アド
レス83として王紀惜装miへ読出しアクセス資求が行
なわれる。上記iJ1表置のA番地には、第9図に不す
ように上位8ビツトにプロセス番号が下位24ビツトに
レジスタ#退避エリア先頭アドレスが記憶させてるる。
A+4 、A+8 、・・・番地にも同様に各プロセス
の番号および過N1エリア先劇アドレスが記憶されてい
る。これらは優先度の高いプロセスかう1liK紀憶さ
れていて次グロセスに対応するものはA番地にくり上け
られるものとする。そして、主ela*装置のA番地か
らの絖出しテーク85が込られて米ると、その下位24
ビツト(退避エリア先願アドレス)が選択回路643に
人力し、久プロセス決定レジスタ65からの次プロセス
決定信号8oにより、上記退避エリア先願アドレスが選
択されてメモリアドレスレジスタ642にセットされる
次に、’tml路66から転送指示信号81が与えられ
たとき(後述するように必ず与えられるとは限らない)
、転送指示レジスタ645がセット逼れ、オア回路64
6を介してメモリリクエスト信号77が、主起憶鉄fl
ltlへ出力される。
主記憶装置1の退赳エリア先鎮アドレスから1ワードの
読出しが終′rするごとにメモリ終rid号78が入力
し、メモリアドレスレジスタ642U+4回路によって
+4され九アドレスを送出する。−力、上記メモリ軒f
信号によりフリップフロッグ649がセットされ、回復
アドレスレジスタ637は”+1m回路638によって
1+11されたアドレスを出力し、選択回路633を介
して絶2のレジスタスタック62へ送る。第2のレジス
タスタック62の上位2ビツトのアドレスは選択i!!
1wl634で11塩回路66からの転送エリアアドレ
スflv報89が選択出力されている。従って、第2の
レジスタスタック62の上記転送エリアア下しス悄@8
9で指足されるエリアにOII地から順次、次ノロセス
VC対応するレジスタ群の内容が書込まれる。書込みが
終rし、ALL@l″慣出四路640の両刀が@1II
Iとな9、主記憶装置lからメモリ終f1fi878が
米ると、アンド回路651の出力により転送指示レジス
タ645がリセットされ、またアンド回Ii&650の
出力が11”となり、転送路rIg号82が管理回路6
6へ送られる。
メプロセス火定回路66ri、実?T待ちの状態にめる
プロセスのうち賊も尚い優先度をもつ次プロセスを決に
する回路であって、第7図に示すように構成されている
。すなわち、制御回路63から与えられる回傷終/1g
号75をセットする回偵軒rレジスタ655と、該レジ
スタ655の出力および主記憶装置1からのメモリ軒了
偵号78を人力とするアンド回路656から構成される
。前記回Q1終fレジスタ655の出力は劇−回路63
へのメモリアクセス信号76とされ、前6己アンド回路
656の出力は次プロセス決定信号8oとして制御回路
63および管理回路66へ送られる。なお、レジスタ6
55tiメモリ終fjt1号78によってリセットされ
る。上述のS成により、メモリ終f信号78が人力する
と、アンド回路656を介して次プロセス決定信号80
を送出すると共に1伽終了しジスタロ55をリセットし
、メモリアクセス信号76の送出を停止する。
1[1路66ti、第2のレジスタスタック62の貯蔵
1′#を管埋し、次プロセスに対応したレジスタ群の内
容を主記憶装置1から転送する必要性の有無の判w#t
−L、かつ、プロセス切V時のレジスタ回復処理の方法
を決定する回路であり、M8図にホすように構成されて
いる。すなわち、制御回路63から与えられる絖出しデ
ータ上位8ビツト87(次プロセス書号)と、命令フェ
ッチ装置3から与えられるプロセス番号情報89とを入
力し、プロセス切替指示信号73によって前記番号悄@
89′を選択してプロセス番号レジスタ665に人力さ
せる選択回路664.および上記プロセス番号レジスタ
665.上記プロセス切替指示信ロセス決定徊号80を
入力し一紀しジスタロ650セット端子へ出力するオア
回路663,1!#紀プロセス切替指示信号73をセッ
トするプロセス切替指示レジスタ661 、III紀次
プロセス決定信号80をセットする次プロセス決定レジ
スタ662。
レジスタ661および6620両出力を入力するオア回
路676、第2レジスタスタツク62の礪つのエリアに
それぞれ対応して設けられ、それぞれのエリアに貯蔵し
ているレジスタ群に対応するプロセス番号および有効性
を表示するVビットを格納するスタック管理レジスタ6
66〜669。
該レジスタ666〜669の内容と前記レジスタ665
の内容とをそれぞれ比較し、内容が1敏しかつ、前記v
ビットが@l”のとき”l”を出力する比較回路670
〜673,上記各比較回路の出方を保持する4ビツトの
実行中エリア表示レジスタ678、前記比較回路670
〜673の出力を人力するオア回路674,オア回路6
74の出力および前記レジスタ6610出刃を入力し、
回復指不偏号74を制御回路63へ送出するアンド回路
675、前記オア回路674の台定用力と前記オア回w
5676の出力とを入力し転送終了信号81を送出する
アンド回路6’l’1.tljJ記レジスタ678の出
力をエンコードし2ビツトの実行中エリアアドレス情@
88を出力するエンコーター679,前記レジスタ67
8の出力の1序を右回転してセットする転送エリアay
s<レジスタ681.dレジスタの出力をエンコードし
て2ビツトの転送エリアアドレス情@89を出力するエ
ンコーダ682。
両組レジスタ681の各ビット出方をそれぞれ入力し、
転送終了信号82とのアンドを取って前記スタック管理
レジスタ666〜669へのセット信号をそれぞれ出力
するアンド回路683〜686等から構成されている。
管理回路−66の動作は次の通りである。
通常の輩令実行時においてtま、命令フェッチ装置3か
ら与えられたプロセス番号情報89′tレジスタ665
に保持していて、比較回路670−673で検出した該
当プロセス番号に対応するレジスタ群を貯蔵している(
第2のレジスタスタック62の)エリアが実行中エリア
表示レジスタ678に保持されている。そしで、エンコ
ーダ679がら実行中エリアアドレス情報88が制御回
路63へ送出されている。
ノ゛ロセス切賛処理時に2いては、節合フェッチ*随か
らプロセス番号t#@s9’およびプロセス切賛掬ボ信
号73が与えられる。選択回路664は、上記プロセス
番号情報89′を選択してレジスタ665へ供給する。
プロセス切替指示信号73はオア回路663を介してレ
ジスタ6650セット指小洛号となプ、レジスタ665
に上記プロセス番号情報89′がセットされる。また、
レジスタ661もセットされる。比較回路670−67
3はスタック管理レジスタ666〜669の内容をそれ
ぞれレジスタ665の内容と比較し、−紋したスタック
1ftj!!!レジスタのVビットが11の場合に@1
″を出力する。いずれか1つの比較−路がらl”が出力
されるとオア回路674およびアンド回路675を介し
て回復指不イば号74が制御回路63へ送出される。同
時に実行中エリア表示レジスタ678の対応するビット
が11”にセットされる。以上賛約すると、(第5図の
)#I2のレジスタスタック62内に耕しく実行すべき
プロセスに対応し九レジスタ群が既に貯蔵されている場
合は、制御回路63に圓復指示偏号74を送出する。ま
た、実行中エリア表示レジスタ678の内容はエンコー
ダ679で2ビツトに変換されて実行エリアアドレス情
報88として送出される。
上記信号74と実行エリアアドレス悄[88によシ前記
制御回路63の制御で四俵処理が行なわれ、回復完r後
主記憶装ff1lのアドレスAから続出された続出しデ
ータの上位8ビツト87(次プμセス番号)が選択回路
664に入力し、選択回u664で選択されてレジスタ
665へ入カスる。
會セットする。また、次プロセス決定レジスタ662も
セットされる。一方、上記レジスタ665の内容をスタ
ック管理レジスタ666〜669の内容と比較し、いず
れの比較回路670〜673でも一致が検出されない場
合祉オア回路674の否定出力が@1′″となシアンド
lEM677を介して転送指7F、1N号81が制御回
路63へ送られる。比較回路670〜673のいずtL
かで一致が検出されれば、次プロセスがすでに17g2
のレジスタスタック62内に存在するということである
から、上記転送指示は不賛である。制御回路63が転送
動作を制御し、その終了により転送終了信号82が送ら
れて来ると、アンド回路683〜686が開かれて転送
エリア表示レジスタ681の111、音出力しているビ
ットに対応するスタック管理レジスタ666〜669に
セット信号が与えられ、当該レジスタにはレジスタ66
5の出力およびVビットがセットされる。すなわち次プ
ロセス番号がセットされる。これによシ次にプロセス切
替指示信号が米友とき前述のように該当エリアのアドレ
ス情報すなわち実行エリアアドレス88および回復指示
信号74を出すことができる。
第10図は、プロセス切替処理時および次プロセス決定
処理時並びにメモリ自答転送処理時K>ける転送状況を
説明する丸めの図である。次に、第5図〜第8図および
第1θ図を参照して、各時点における動作′を説明する
通常の曾令夾行中は、レジスタオペランドの続出しは第
1めレジスタスタック61から命令フェッチ装置3およ
び命令実行Mt4へ行なわれ、命令実行装置4での演算
結果は菖lおよび第2のレジスタスタック61および6
20両方へ書込まれる。この場合第2のレジスタスタッ
クの上位2ビツトは″#理回路66からの実行エリアア
ドレス情報88が制御回路63を介して与えられる。
次に、プロセス切替処理は、M2O図の時刻■において
、命令フェッチ装置3からプロセス切替4’tj yr
’z Ir1号73およびプロセス番号情報89′が管
理回路66に与えられ、そのプロセスに対比するレジス
タ群を貯蔵している第2のレジスタスタックのエリアを
示す実行中エリアアドレス情@88および回復指示(−
号74が管理回路66から制御回路63へ送られる。こ
れにより、制御回路63は、第2のレジスタスタック6
2の該当エリアの0番尾から順次読出して第1のレジス
タスタック61へ転送させ書き込ませる。すなわち、B
ROからBRI 5およびGル0からGK15までの3
2ワードが転送される。第10図の時刻(りで転送が終
りプロセス切替処理が完了゛すると制#回路63から回
m%了偏号75が次プロセス決定回111365テ送ら
れる。
次プロセス決定回路65は、回復終・rO!号7号音5
復終了レジスタ655にセットし、メモリアクセス16
号76を制御回路63へ送る。該メモリアクセス信号?
6t′i、制御回路63のオア回路646を介してメモ
リリクエスト信号77として主記憶装置lへ送られ、−
力、馴−四路63のメモリアドレスレジスタ64から固
定(IEAが主記憶アドレス83として送出さハる。す
なわち主記憶装置lへ続出しアクセス安水が行なわれ、
主記憶装置からの続出しデータ85が返送される。該続
出しデータの下位24ビツト79(レジスタ群退避エリ
ア先鎮アドレス)は制御回路63の選択回路643を介
してメモリアドレスレジスタ642にセットされるi上
位8ビット87(プロセス番号)は管−理回路66の選
択回路664に人力させる。そして、主記憶装置1から
のメモリ終了信号78が次プロセス決定回路65に与え
られると、メモリアクセス信号76が消失し、次プロセ
ス決矩信号80が出力される。置場回路66は該信号8
0によ#)次プロセス決定レジスタ662をセットし、
前記続出しデニタ上位8ビット87(次プロセス命号)
をレジスタ665にセットする。
該レジスタ665の内容がスタック管理レジスタのいず
れにも一致しないときは、管理回路66から転送指示信
号81が制御回路63へ送出される。また、転送エリア
アドレス情報89は、第2レジスタスタツク62内にお
いて実行中のエリアの次のエリアを指定する2ビツト情
報を出力している。上記レジスタ665の内容がいずれ
かのスタック管理レジスタと一致したときは転送指示信
号81は出力されない。制御回路63は、転送指示信号
81が人力すると、メモリリクエスト信号77を上記[
#e11111 K送り、先にメモリアドレスレジスタ
642にセットされている次プロセスの退避エリア先願
アドレスに対する続出し賛求を行なう。
上記憶装[1からの耽出しデータ85すなわちkl)t
oの内容が選択回路602を介して第2のレジスタスタ
ック62に書込まれる。このと睡の第2レジスタスタツ
ク62のエリアすなわち上位2ビツトは、!壇回路66
から与えられ喪転送エリアアドレス情報89が選択され
ている。また下位5ビツトは回復アドレスレジスタ63
7の出力が選択されている。上記BKQの内容が転送さ
れて、メ七りMF’(11号78が来るとメモリアドレ
スレジスタ642の内容が+4され、かつ、回復アドレ
スレジスタ637の内容が+1されて、順次BRO〜B
)415およびqル0〜qル15の内容が転送きれる(
110図時副時刻)〜■)。転送がNrし、ALL@l
’″検出回路640の出力か11となり、メモリ終了信
号78とのアンドによシ私送if値号82が管埋回路6
6へ送られ、かつ、転送指不レジスタ645がリセット
され、メモリリクエスト信号77が消失する。管理四路
66ゼま、転送料r’tti号82を受けると、転送エ
リアに対応したスタック管理レジスタ666〜669の
うちの1つにVビットおよびプロセス着号レジスタ66
5の内容(次プロセス番号)をセットする。前述のプロ
セス切替処m終r時点すなわち回復完r時点(第1θ図
の時刻■)以後tよ、通常の命令の実イIが平行して行
なわれているから、上述の次プロセス決定処S(時刻■
〜(す)およびメモリ内容転送処IIC時’jillL
り〜■)は、命令の実行と平行して行なわれる。又プロ
セス切替処理(時刻■〜■)は、。
第2レジスタスタツクの内容を1@ルジスタスタックへ
転送するのみで69、m2レジスタスタツクへの主記憶
装置1からの続出しViあらかじめ時刻(3)〜(りの
間に行なわれているから切曽処理は迅速になされる。
次に、丹びプロセス切替を行なうrCは、上述と同様に
処理され、第2のレジスタスタック62の残りのエリア
に次プロセスに対応するレジスタ群が書き込まれる。さ
らに、次のプロセス切曽え時161次プロセスの書込み
が必歎とされるときは、厳初のプロセスに対応し良レジ
スタ群の内容を貯蔵している#s2のレジスタスタック
b201つのエリアの内容を主起憶鉄[1へ退避させた
のちに1該エリアに次プロセスのレジスタl#を貯蔵さ
せれば良い。
プロセス切替処理時に、軒プロセスに対応するレジスタ
群の内容が@2のレジスタスタック62内に存在しない
場合は、1ず転送指示信号81によって主記憶装置lか
ら第2のレジスタスタック62ヘメモリ内容の転送が(
32回)行なわれた後pc N *指示信号74によシ
第2のレジスタスタック62からWJlのレジスタスタ
ック61への転送が行なわれる。しかし、このような場
合は、割込み処理の時に発生するaJ症性があるのみで
、殆んど生じない。
本実施例では、第2のレジスタスタック62の装置をレ
ジスタ#P4個分とし九が、さらに谷皺を増加すること
も可能である。プロセッサが使用さtLる環境条件など
によるプロセスの個数分布や。
切替頻度又は必蒙とするノ・−ド量などにより任意に設
計すれば、よい。
以上のように、本発明においてe、複数のレジスタ群を
貯I1.可能な#!2のレジスタスタックを設けて、以
前に命令実行したプロセスのレジスタ群および現在実行
中のプロセスのレジスタ群および次に実行すべきプロセ
スのレジスタ群の内容を貯蔵し、通常の命令実行時には
、第1のレジスタスタックからの読出し書込みによって
命令を実行するとき、前記第2のレジスタスタックへ演
算結果を同時に書き込ませ、プロセス切替時には、あら
かじめ前記第2のレジスタスタックの他のエリアに貯I
Kしている次プロセスのレジスタ群の内容を前記第1の
レジスタスタックに転送して命令を実行し、命令の実行
と平行して更に次のプロセスに対応するレジスタ群の内
容を主記憶装置の該当退避エリアから第2のレジスタス
タッタの別のエリアに書き込ませるように構成したから
、プロセス切替時におけるlll1のレジスタスタック
へのレジスタ群の内容転送が迅速に行なわれるという効
果がある。まえ、次プロセスに対応するレジスタ群の内
容を主記憶装置から読出してllJ記第2のレジスタス
タックへ書き込む動作および必要なときの主記憶装置へ
の退避動作は、命令実行と平行して行なわれる構成であ
るから、実質的にはプロセス切替処理の時間を延長しな
い。すなわち、プロセス切替処理は、前記第2のレジス
タスタックから前記IEIのレジスタスタックへの転送
時間のみとなシ、迅速に完了゛することが可能である。
【図面の簡単な説明】
第1図祉従米のレジスタ群貯蔵装置を使用し良計算機シ
ステムを示すブロック図、第2図は上記従来例の動作を
説明するだめのタイムチャート、第3図は、改良された
別のレジスタ群貯蔵装置を使用した計算機システムの従
来例をボナブロック図、絡4図はその動作を説明するた
めのタイムチャート、第5図は本発明の−*mnを示す
ブロック図、第6図は上記実施例の制御回路の#l成の
一例を示すブロック図、第7図は上記実施例の久プロセ
ス決定回路の構成例を示すブロック図、第8図は上記実
施例の管理回路の構成例を示すブロック図、第9図は主
記憶装置内のプロセス番号およびレジスタ群退避エリア
先頼アドレスの格納フォーフットを示す図、第10図は
第5図に示す実施例の動作を説明するためのタイムチャ
ートである。 図において、l・・・主記憶装置、2・・・中央処jj
l装置、3・・・命令フェッチ装置、4・・・命令実何
装置、5・・・レジスタ群貯蔵装置、6・・・レジスタ
群貯蔵偵[51・・・レジスタスタッタ、52・・・ア
ドレスレジスタ、61・・1目のレジスタスタック、6
2・−・IJJ2のレジスタスタック、63・・・制御
回−路、65・・・次プロセス決定回路、66・・・′
t7ta+回路、601゜602・・・選択回路。 第1図 第2凶 第4凶 第5凶 第6図 一欠アクτス3 1) t

Claims (1)

    【特許請求の範囲】
  1. 命令の7エツチ装置と、命令実行装置と、レジスタ群貯
    蔵装置とt内戚して、主記憶装置から命令をフェッチ、
    解読し、命令の実行および命令の解読や割込によシ起動
    されるプロセスの切替処理を行な−、プログラムの処理
    単位であるプロセス毎に演舞に使用される1組のレジス
    タ群の内容を主起u1装随の各プロセスに対応して設け
    られたレジスタ退避エリアから続出して繭記しジスタ鮮
    貯賦m1lK−格納させ、かつ該レジスタsi威1tt
    rc格納されていた以前に実行中のプロセスに対する1
    組のレジスタ群の内容を前記主記憶装置の対応するレジ
    スタ退避エリアに退避させるようにして、実行口■鹸状
    −にある複数のプロセスのうち同時に1よ1個のプロセ
    スを実行する中央処理装置のレジスタ群貯g装置におい
    て、実行中のプロセスに対ふらする1ffiの前記レジ
    スタ群の内容金貯斌する第1のレジスタスタックと、ヒ
    配夾行中のプロセスに対応する1組のレジスタ群の内容
    ふ・よび以剖に実行中であつ喪1組のレジスタ群の内容
    並びに次に実行すべきプロセスに対応するレジスタ群の
    内容とを貯蔵できる複数のエリアを有゛するJI2のレ
    ジスタスタックと、繭配岐令フェッを装置がらのレジス
    タアドレス情報等によって−1MlおよびjK2のレジ
    スタスタックへのアドレス指示を行ない後記するt理回
    路からの実行エリアアドレス情報又は転送アドレスf′
    #報F(よってIi+7記第2のレジスタスタックのエ
    リアを指示して前記第2のレジスタスタックの優込み又
    は続出しを1IIIIl#シ、かつ前記第2のレジスタ
    スタックからeiJ1第1のレジスタスタックへの回復
    −作の@rにより圓偵終f債号を送出し前記第2のレジ
    スタスタッタへの主記憶装置からの転送終了により転送
    に4r信号を出す制御回路と、前記制御回路からの回仮
    終r偏号I/Cよりメモリアクセス1イ月會送出し上記
    回復P、r後に主配憶装置からのメモリ終r1d号を受
    けると次プロセス決定11i号を送出する次プロセス決
    定圓略と、前記第2のレジスタスタックの複数のエリア
    に対応して設けられ−これらの各エリアに格納されてい
    るレジスタ群に対応するプロセス番号を登録する複数の
    スタック管層レジスタを内蔵し命令フェッチ装置からの
    プロセス情報又は主起u1装置からの続出しデータ中の
    プロセス番号と上記スタック管層レジスタの内容とをプ
    ロセス切替指示信号又は前記次プロセス決定信号により
    比較し九結束によプ実行中アドレス情報および回復指示
    信号または転送エリアアドレス情報および転送指示信号
    を前記制御回路へ送出する’f理回路とを備えて、通常
    の命令実行時には前記第1のレジスタスタッタから続出
    して命令が実行され、演算結果は前記第1のレジスタス
    タックおよび前記$2のレジスタスタックの1つのエリ
    アに同時に格納し、プロセス切替時においては前記第2
    のレジスタスタッタの1つのエリアに格納されている次
    プロセスに対応するレジスタ群の内容を前記第1のレジ
    スタスタックへ転送して回復処理を完了し、その後該プ
    ロセスの実行と平行してその次に実行すべき次プロセス
    査号を主記憶装置から絖み出し該/ロセス番−1と前記
    複数のスタック管層レジスタの一欽の有無を検出し、い
    ずれとも不−蚊であるときは当該プロセスのレジスタ駐
    が退避されでいる主記憶装置の退社エリア先願アドレス
    から順次対応するレジスタ群の内容を絖出して@配植2
    のレジスタスタックのもう1つ別のエリアに格納するこ
    とを特値とするレジスタ群貯蔵装置。
JP19051681A 1981-11-30 1981-11-30 電子計算機 Granted JPS5894038A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19051681A JPS5894038A (ja) 1981-11-30 1981-11-30 電子計算機

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19051681A JPS5894038A (ja) 1981-11-30 1981-11-30 電子計算機

Publications (2)

Publication Number Publication Date
JPS5894038A true JPS5894038A (ja) 1983-06-04
JPS6240736B2 JPS6240736B2 (ja) 1987-08-29

Family

ID=16259385

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19051681A Granted JPS5894038A (ja) 1981-11-30 1981-11-30 電子計算機

Country Status (1)

Country Link
JP (1) JPS5894038A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59146387A (ja) * 1983-02-10 1984-08-22 Fujitsu Ltd マルチプロセスにおけるスタツク制御方式
JPS6255741A (ja) * 1985-09-04 1987-03-11 Nec Corp トレ−ス回路
JPS6380332A (ja) * 1986-09-24 1988-04-11 Mitsubishi Electric Corp マイクロプロセツサ
JPS63238631A (ja) * 1986-12-17 1988-10-04 インテル・コーポレーション I/oプロセツサ用の実行装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5398753A (en) * 1977-02-09 1978-08-29 Nippon Telegr & Teleph Corp <Ntt> Interrupt processing system

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5398753A (en) * 1977-02-09 1978-08-29 Nippon Telegr & Teleph Corp <Ntt> Interrupt processing system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59146387A (ja) * 1983-02-10 1984-08-22 Fujitsu Ltd マルチプロセスにおけるスタツク制御方式
JPS6255741A (ja) * 1985-09-04 1987-03-11 Nec Corp トレ−ス回路
JPS6380332A (ja) * 1986-09-24 1988-04-11 Mitsubishi Electric Corp マイクロプロセツサ
JPS63238631A (ja) * 1986-12-17 1988-10-04 インテル・コーポレーション I/oプロセツサ用の実行装置

Also Published As

Publication number Publication date
JPS6240736B2 (ja) 1987-08-29

Similar Documents

Publication Publication Date Title
JPS6051948A (ja) 情報処理装置
JPS59174948A (ja) 情報処理装置
JPS5894038A (ja) 電子計算機
CA1228678A (en) Method for controlling buffer memory in data processing apparatus
JPS6041769B2 (ja) アドレス指定方式
JPS6049340B2 (ja) 分岐命令先取り方式
JPH0623977B2 (ja) ベクトル処理装置
JP2794782B2 (ja) 命令取出装置
JPS58176751A (ja) 命令語解読ユニツト
JPH0218732B2 (ja)
JPS62232036A (ja) 情報処理装置
JP2798492B2 (ja) リストベクトル処理装置
JP2522840B2 (ja) プログラマブルコントロ―ラのプログラミング装置
JP2527814B2 (ja) 命令処理システム
JPS6152748A (ja) マイクロコンピユ−タ開発装置のトレ−ス選択方式
JPH0335327A (ja) 多数決障害処理装置
JPS6394303A (ja) 演算制御システム
JPS6042968B2 (ja) 情報処理装置
JPS58172753A (ja) マイクロプログラム制御方式
JP4433492B2 (ja) プログラマブルコントローラとの間のデータ授受方式
JPS58166452A (ja) デ−タ処理装置
JPH0778730B2 (ja) 情報処理装置
JPS58121459A (ja) 電子計算機のサ−ビスプロセツサ
JPS6244663B2 (ja)
JPS6158042A (ja) マイクロプログラム制御方式