JPH0384636A - 計算機制御方式 - Google Patents

計算機制御方式

Info

Publication number
JPH0384636A
JPH0384636A JP22242489A JP22242489A JPH0384636A JP H0384636 A JPH0384636 A JP H0384636A JP 22242489 A JP22242489 A JP 22242489A JP 22242489 A JP22242489 A JP 22242489A JP H0384636 A JPH0384636 A JP H0384636A
Authority
JP
Japan
Prior art keywords
register
cache
value
task
address
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
JP22242489A
Other languages
English (en)
Inventor
Masaaki Tamaru
田丸 雅紹
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
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 filed Critical NEC Corp
Priority to JP22242489A priority Critical patent/JPH0384636A/ja
Publication of JPH0384636A publication Critical patent/JPH0384636A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は計算機制御方式に関し、特にタスクの切り換え
により複数のタスクをCPU上で並行して実行するマル
チタスク計算機の制御方式に関する。
〔従来の技術〕
従来、この種のマルチタスク計算機では、CPU内のレ
ジスタ・セットに1つのタスクのレジスタ・セットの値
を保持してそのタスクの実行を行い、別のタスクに切り
換えるときは、CPU内のレジスタ・セットの値すべて
を主記憶装置の所定の場所に退避し、切り換え先のタス
クのレジスタ・セットの値すべてを主記憶装置の該当箇
所からCPUの上記レジスタ・セットに書き込む(回復
する)ことにより、複数のタスクの並行処理を可能なら
しめていた。
〔発明が解決しようとする課題〕
上述した従来の計算機制御方式でも複数のタスクの並行
処理が可能となる。しかし、タスク切り換え時にCPU
内のレジスタ・セントの全内容を主記憶装置に退避する
処理と、その逆に主記憶装置上のレジスタ・セットの全
内容をCPU内のレジスタ・セットに回復する処理とを
行っているため、切り換え前のタスクでは未使用のレジ
スタの退避、切り換え後のタスクでは内容が保証されな
くても良いレジスタの回復などの、無駄なレジスタの退
避1回復が行われ、そのための主記憶装置へのアクセス
に時間がかかり、タスクの切り換えに要する時間が増大
する。
そこで本発明の目的は、タスク切り換え時におけるレジ
スタの退避5回復を必要最小限に仰えることにより、タ
スクの切り換えに要する時間を短縮した計算機制御方式
を提供することにある。
〔課題を解決するための手段〕 本発明の計算機制御方式は、上記の目的を達成するため
に、CPUと主記憶装置とを備えたマルチタスク方式の
計算機において、前記主記憶装置上に各タスク対応のレ
ジスタ・セントの値を格納する格納域を備えると共に、
前記CPU上に、現在実行中のタスクに対応するレジス
タ・セントの値を格納する前記格納域のベース・アドレ
スを保持するセット・アドレス・レジスタと、このセッ
ト・アドレス・レジスタが保持するベース・アドレスで
特定される前記主記憶装置上の格納域に格納されたレジ
スタ・セントのキャッシュとして管理されるレジスタ・
キャッシュとを備え、タスクの切り換えは、前記レジス
タ・キャッシュに保持されたレジスタのうち書き込みの
行われたレジスタの値を前記主記憶装置上の対応する格
納域に退避すると共に前記セット・アドレス・レジスタ
の値を切り換え先のタスクに対応する値に変更すること
で行うようにしている。
(作用〕 本発明の計算機制御方式においては、主記憶装置上に設
けられた各々の格納域が各タスク対応のレジスタ・セッ
トの値を保持し、CPU上に設けられたセット・アドレ
ス・レジスタが現在実行中のタスクに対応するレジスタ
・セントの値を保持すると共に、レジスタ・キャッシュ
が上記セット・アドレス・レジスタが保持するベース・
アドレスで特定される前記主記憶装置上の格納域に格納
されたレジスタ・セントのキャッシュとして、即ち、現
在実行中のタスクに対応するレジスタ・セットのキャッ
シュとして管理される。つまり、現在実行中のタスクの
処理に関してレジスタの内容を読み出す処理が必要な場
合、レジスタ・キャッシュ中に該当レジスタの値が保持
されていればその値が使用され、保持されていなければ
セット・アドレス・レジスタの保持するベース・アドレ
スとそのレジスタ固有のオフセント値とに基づいて生成
したアドレスを使用して主記憶装置上の対応する格納域
から該当レジスタの値がレジスタ・キャンシュに読み込
まれた後にその値が使用され、またレジスタに対する書
き込み処理が必要な場合、レジスタ・キャッシュの1亥
当レジスタにイ直が書き込まれる如く、レジスタ・キャ
ッシュが管理されるものである。そして、このようなレ
ジスタ・キャッシュとセット・アドレス・レジスタとを
備えているため、タスクの切り換え時には、全レジスタ
・セットの退避2回復は行わず、前記レジスタ・キャッ
シュに保持されたレジスタのうち書き込みの行われたレ
ジスタの値を主記憶装置上の対応する格納域に退避し、
前記セット・アドレス・レジスタの値を切り換え先のタ
スクに対応する値に変更するだけで終了する。
〔実施例〕
次に、本発明の実施例について図面を参照して詳細に説
明する。
第1図を参照すると、本発明の計算機制御方式の一実施
例を適用した計算機は、CPUIと主記憶装置2とを備
え、CPUIには、セット・アドレス・レジスタ11.
  レジスタ・アクセス手段12、アドレス生成手段1
3.主記憶装置アクセス手段14.キャンシュ制御手段
15.レジスタ・キャッシュ16および命令実行手段1
7が設けられ、上記il 装R2には各タスク対応のレ
ジスタ・セットの値を格納する格納域21〜2nが設け
られている。
CPUI内のセット・アドレス・レジスタ11は、CP
UIで現在実行中のタスクのレジスタ・セットを格納し
ている主記憶装置2上の格納域2i  (i=1〜n)
のベース・アドレスを保持するレジスタであり、その出
力はアドレス生成手段13に加えられている。
レジスタ・アクセス手段12は、命令実行手段17から
のレジスタ読み出し要求、レジスタ書き込み要求を入力
とし、キャッシュ制御手段15およびアドレス生成手段
13に作用して当該要求を処理する手段である。
アドレス生成手段13は、セット・アドレス・レジスタ
11の出力するベース・アドレスとレジスタ・アクセス
手段12の出力するオフセット値とから主記憶装置2上
のアドレスを生成する手段であり、生成されたアドレス
は主記憶装置アクセス手段14に加えられる。
主記憶装置アクセス手段14は、アドレス生成手段13
から加わるアドレスを使用して主記憶装置2をアクセス
し、主記憶装置2上の各格納域21〜2nのレジスタの
値をレジスタ・キャッシュ16に書き込んだり、その逆
にレジスタ・キャッシュ16のレジスタの値を主記憶装
置2上の各格納域21〜2nに書き込んだりする働きを
する。
レジスタ・キャッシュ16は、セント・7ドレス・レジ
スタ11が保持するベース・アドレスで特定される主記
憶装置2上の格納域2iに格納されたレジスタ・セット
のキャッシュとして管理されるもので、キャッシュ制御
手段15によって制御され、命令実行手段17から参照
、更新される。
キャッシュ制御手段15は、レジスタ・キヤ、7シユ1
6を管理、制御する手段である。例えばレジスタ・キャ
ッシュ16に含まれる1つのレジスタ・セット中の各レ
ジスタに対応する有効フラグと書き込みフラグとによっ
て、それらの各レジスタが有効な値そ保持しているか否
か及び書き込みが為されたか否かを管理している。
命令実行手段17は命令の実行を行う手段である。この
命令実行手段17は、命令の実行過程においてレジスタ
・アクセス手段12に対しレジスタの読み出し要求、書
き込み要求を出すことにより、レジスタ・キャッシュ1
6から命令実行に必要なレジスタの値を読み出し、また
変更したレジスタの値をレジスタ・キャッシュ16へ書
き込む動作を行っている。
次に、このように構成された本実施例の動作を説明する
今、第1図において、主記憶装置2上の格納域21〜2
nのうちの1つの格納域たとえば格納域21に格納され
たレジスタ・セットに対応するタスクがCPUI上で実
行されているものとする。
このとき、セット・アドレス・レジスタ11は格納域2
1のベース・アドレスを保持するように制御され、レジ
スタ・キャッシュ16は格納域2■のレジスタ・セット
のキャッシュとして管理されている。このような状態で
、命令実行手段17の命令実行に際し成るレジスタの値
を参照することが必要となった場合、第2図に示すよう
な処理によってレジスタの内容の読み出しが行われる。
先ず、命令実行手段17からレジスタのアクセス要求(
レジスタ読み出し要求)がレジスタ・アクセス手段12
に出されると(第2図の処理201)、レジスタ・アク
セス手段12は対象のレジスタの値がレジスタ・キャッ
シュ16に存在するか否かの問い合わせをキャッシュ制
御手段15に出す(処理202)。キャッシュ制御手段
15はその問い合わせに応答して対象のレジスタの値が
レジスタ・キャッシュ16上に存在するか否かを対象レ
ジスタに対応する有効フラグの値を判定して調べ(処理
203)、存在すればレジスタ・キャッシュ16を制御
してその対象のレジスタの値をレジスタ・キャッシュ1
6から読み出して命令実行手段17に転送する(処理2
06)。他方、対象のレジスタの値がレジスタ・キャッ
シュ16に存在しない場合には、キャッシュ制御手段1
5はその旨をレジスタ・アクセス手段12に通知し、レ
ジスタ・アクセス手段12は対象のレジスタを指定して
アドレス生成手段13を起動する。これによってアドレ
ス生成手段13は、セット・アドレス・レジスタ11に
保持されている格納域21のベース・アドレスと、対象
のレジスタによって決まる固有のオフセットとから主記
憶装置2上の格納域21における対象レジスタのアドレ
スを生威しく処理204L主記憶装置アクセス手段14
を起動する。主記憶装置アクセス手段14は、アドレス
生成手段13から通知されたアドレスを使用して主記憶
装置2をアクセスし、格納域21の対象レジスタの値を
読み出し、レジスタ・キャッシュ16の対象レジスタに
書き込む(処理205)、この書き込みが終了すると、
キャッシュ制御手段15が動作してそのレジスタの値を
レジスタ・キャンシュ16から読み出して命令実行手段
17へ転送する(処理206)、なお、このときキャッ
シュ制御手段15はそのレジスタに対応する有効フラグ
をオンにするものである0以上のようにして、命令実行
に必要なレジスタの値がレジスタ・キャッシュ16上に
無い場合にはその時点で主記憶装置2から取り込まれて
使用され、以後、レジスタ・キャッシュ16上に保持さ
れる。
次に、命令実行手段17の命令実行において成るレジス
タの値を更新することが必要となった場合、第3図に示
すような処理によってレジスタ・キャッシュ16中の該
当するレジスタに値が書き込まれる。すなわち、命令実
行手段17からレジスタのアクセス要求(レジスタ書き
込み要求)がレジスタ・アクセス手段12に出されると
(第3図の処理301)、レジスタ・アクセス手段12
はキャッシュ制御手段15を用いて命令実行手段17か
ら出力されたレジスタの値をレジスタ・キャッシュ■6
に転送しく処理302)、レジスタ・キャッシュ16中
の言亥当するレジスタにその(直を書き込ませるもので
ある。なお、キャッシュ制御手段15はレジスタ・キャ
ッシュ16中のレジスタに書き込みが行われると、その
レジスタに対応する書き込みフラグをオンにしてそのこ
とを記録しておくものである。
さて、CPUI上で動作するタスクを別のタスク例えば
主記憶装置2の格納域22のレジスタ・セットに対応す
るタスクに切り換える場合、CPU1上では第4図に示
すような処理が実行される。
先ず、処理401により、切り換え前のタスクが実行中
にレジスタ・キャッシュ16に書き込んだレジスタの値
を主記憶装置2の元の格納域21のレジスタ・セットに
退避(転送)する。これは第1図では次のようにして行
われる。
命令実行手段17は退避指示をキャッシュ制御手段15
に出す。キャッシュ制御手段15は退避指示を受けると
、内部で管理しているレジスタ・キャッシュ16中の各
レジスタ対応の書き込みフラグを順次チエツクし、書き
込みフラグがオンになっているレジスタがあればそのレ
ジスタを指定してアドレス生成手段13を起動すると共
に、そのレジスタの値をレジスタ・キャッシュ16から
主記憶装置アクセス手段14に読み出す、アドレス生成
手段13はキャッシュ制御手段15から通知されたレジ
スタに固有のオフセットとセット・アドレス・レジスタ
11の内容とからアドレスを生成して主記憶装置アクセ
ス手段14に加え、主記憶装置アクセス手段14はその
アドレスを使用してレジスタ・キャッシュ16から読み
出されたレジスタの値を主記憶装置2の格納域21にお
ける該当するレジスタに書き込む。なお、キャッシュ制
御手段I5はタスク切り換え時には内部で管理している
全ての有効フラグおよび書き込みフラグをクリアするも
のである。
レジスタ・キャッシュ16中の必要なレジスタの退避が
終了すると、CPUIは次の処理402により、セット
・アドレス・レジスタ11の内容を、切り換え後のタス
クに対応する格納域22のヘース・アドレスに更新する
。これは、第1図では例えば命令実行手段17がセット
・アドレス・レジスタ11の内容を更新することで行わ
れる。
〔発四の効果〕
以上説明したように、本発明の計算機制御方式によれば
、各タスクのレジスタ・セントの実体を主記憶装置上に
おくと共に、CPU内には現在使用中のレジスタ・セッ
トのうちで既に使用されたレジスタの値を保持するレジ
スタ・キャッシュを設け、タスクを切り換えるときのレ
ジスタの退避。
回復を必要最小限に抑えたことにより、タスクの切り換
えに要する時間を短縮できるという効果がある。
【図面の簡単な説明】
第1図は本発明の一実施例の構成国、 第2図はレジスタの内容を読み出す処理の一例を示す流
れ図、 第3図はレジスタに値を書き込む処理の一例を示す流れ
図および、 第4図はタスク切り換え処理の一例を示す流れ図である
。 図において、 1・・・CPU 11・・・セット・アドレス・レジスタ12・・・レジ
スタ・アクセス手段 13・・・アドレス生成手段 14・・・主記憶装置アクセス手段 15・・・キャッシュ制御手段 16・・・レジスタ・キャッシュ 17・・・命令実行手段 2・・・主記憶装置 21〜2n・・・各タスク対応のレジスタ・セットを格
納する格納域

Claims (1)

  1. 【特許請求の範囲】  CPUと主記憶装置とを備えたマルチタスク方式の計
    算機において、 前記主記憶装置上に各タスク対応のレジスタ・セットの
    値を格納する格納域を備えると共に、前記CPU上に、
    現在実行中のタスクに対応するレジスタ・セットの値を
    格納する前記格納域のベース・アドレスを保持するセッ
    ト・アドレス・レジスタと、該セット・アドレス・レジ
    スタが保持するベース・アドレスで特定される前記主記
    憶装置上の格納域に格納されたレジスタ・セットのキャ
    ッシュとして管理されるレジスタ・キャッシュとを備え
    、 タスクの切り換えは、前記レジスタ・キャッシュに保持
    されたレジスタのうち書き込みの行われたレジスタの値
    を前記主記憶装置上の対応する格納域に退避すると共に
    前記セット・アドレス・レジスタの値を切り換え先のタ
    スクに対応する値に変更することで行うことを特徴とす
    る計算機制御方式。
JP22242489A 1989-08-29 1989-08-29 計算機制御方式 Pending JPH0384636A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22242489A JPH0384636A (ja) 1989-08-29 1989-08-29 計算機制御方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22242489A JPH0384636A (ja) 1989-08-29 1989-08-29 計算機制御方式

Publications (1)

Publication Number Publication Date
JPH0384636A true JPH0384636A (ja) 1991-04-10

Family

ID=16782179

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22242489A Pending JPH0384636A (ja) 1989-08-29 1989-08-29 計算機制御方式

Country Status (1)

Country Link
JP (1) JPH0384636A (ja)

Similar Documents

Publication Publication Date Title
KR100848603B1 (ko) 데이터 처리장치와 복귀상태의 저장방법
JP3204323B2 (ja) キャッシュメモリ内蔵マイクロプロセッサ
JP2004220070A (ja) コンテキスト切り替え方法及び装置、中央演算装置、コンテキスト切り替えプログラム及びそれを記憶したコンピュータ読み取り可能な記憶媒体
JPH05150981A (ja) データ処理装置
JP2523814B2 (ja) ム―ブアウト・システム
US7107407B2 (en) Arithmetic unit with reduced startup time and method of loading data
JPH0384636A (ja) 計算機制御方式
JP2000029690A (ja) デ―タ処理の方法および装置
JPH0447350A (ja) 主記憶読み出し応答制御方式
JPH05257807A (ja) キャッシュメモリ制御装置
JP2910131B2 (ja) レジスタファイル
JPH0520246A (ja) 非同期i/oダイナミツクプライオリテイチエンジ方式
JPH07152650A (ja) キャッシュ制御装置
JPH0553912A (ja) キヤツシユメモリの制御方法
JPH03141444A (ja) データ処理装置
US7840757B2 (en) Method and apparatus for providing high speed memory for a processing unit
JP3074897B2 (ja) メモリ回路
JPH05210695A (ja) データ処理装置
JPH03127126A (ja) 情報処理装置
JPH0728701A (ja) 計算機システム
JPH07262004A (ja) プロセッサ
JPH09282202A (ja) データ移動管理システム
JPH02259945A (ja) ストア処理方式
JP2000066946A (ja) メモリコントローラ
JPH11120011A (ja) 割込み処理方法およびマルチタスク実行システム