JPS61260334A - 記憶装置 - Google Patents

記憶装置

Info

Publication number
JPS61260334A
JPS61260334A JP60102203A JP10220385A JPS61260334A JP S61260334 A JPS61260334 A JP S61260334A JP 60102203 A JP60102203 A JP 60102203A JP 10220385 A JP10220385 A JP 10220385A JP S61260334 A JPS61260334 A JP S61260334A
Authority
JP
Japan
Prior art keywords
register
copy
registers
processor
storage
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
JP60102203A
Other languages
English (en)
Inventor
Yoshinari Nakasaki
中崎 良成
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 JP60102203A priority Critical patent/JPS61260334A/ja
Publication of JPS61260334A publication Critical patent/JPS61260334A/ja
Pending 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/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、リスプ言語やプロローグ言語等で作動する計
算機の記憶装置に関し、%にプロセッサ部で保持してい
るレジスタの内容を効率よく格納する環境退避機能があ
る記憶装置に関する。
(従来技術とその問題点) 卵子続き型のプログラミング言語であるリスプ、プロロ
ーグ言語などにおいては、現在の処理状態から次の処理
状態に移るときに必要な環境の退避操作の一環として、
プロセッサ部で利用しているレジスタ群を記憶装置に格
納する退避処理がある。
こノ退避作業はプロセス、タスクの切替え時にも行われ
るものである。特にリスプ、プロローグでは環境の退避
は頻繁に行われ、これらの言語の処理性能に大きな影響
を及ぼす。環響を退避する例としては、D、 E[、D
、ウオーレン著「アン・アブストラクト彎フロローグ・
インストラクション・セット」テクニカルノート309
1アーテイフイシヤル舎インテリジエンスeセンター、
ニスアールアイ・インターナショナル、1983(D、
H。
D、 Warren ”An Abstract Pr
olog工n5truc−tion Set” Tec
hnical Not6309eムrtifi−cia
l Intellig@nc@C5nt@r、 SRエ
 エntsr −national、 1983 )の
3ページに記されている環境(・nマironm@nt
ll )および選択点(choicepoints )
の退避を挙げることができる。
従来の計算機において、前記の退避操作はプロセッサ部
がレジスタの内容と格納先アドレスとを記憶装置に出力
することKよって1つのレジスタの内容が記憶装置に格
納され、この操作を繰り返すことKよって行われる0即
ち、プロセッサ部においてはレジスタ群を退避する際に
は、単にレジスタの内容を記憶装置に転送する操作のみ
行うことKなシ、プロセッサ部での主要処理である演算
、データ操作、命令の解釈などの処理用に備えられたハ
ードウェアを有効に利用せず、高速な処理ができないと
いう問題点があった。
そこで、本発明の目的は、こOような従来の問題点を除
去せしめて、環境を退避する際にプロセッサ部のレジス
タの内容を高速に記憶部に退避できる記憶装置の提供に
ある。
(問題点を解決するための手段) 前述の問題点を解決するために本発明が提供する記憶装
置は、データ及びプログラムを格納する記憶部と、デー
タの処理を行うプロセッサ部にある各種レジスタと同じ
内容をそれぞれ保持する複数のコピーレジスタからなる
コピーレジスタファイルト、前記コピーレジスタの数に
等しいビット数を有しこれらビットは前記コピーレジス
タにそれぞれ対応している退避フラグと、前記記憶部に
転送する必要がある前記コピーレジスタに対応する前記
退避フラグのビットをセットする手段と、前記記憶部へ
転送することが必要な前記コピーレジスタの内容を前記
記憶部に順次書き込み、書き込みを終えた前記コピーレ
ジスタに対応する前記退避フラグのビットをリセットす
る記憶制御部と、前記プロセッサ部が内部の前記レジス
タに書き込みを行うときに対応する前記コピーレジスタ
に対応する退避フラグのビットがセットされている場合
には前記プロセッサ部が前記コピーレジスタファイルへ
書き込むのを禁止して前記プロセッサ部の処理を止める
手段と、前記プロセッサ部が前記記憶部にアクセス要求
を出すときに、前記コピーレジスタファイルの内容の転
送を中断して前記プロセッサ部のアクセス要求を優先す
る手段とを備えることを特徴とする。
(作用・原理) 本発明は上述の手段によシ、従来技術の問題点を解決し
た。まず、プロセッサ部が保持しているレジスタ群の中
で環境を退避するために必要なレジスタ群を記憶装置側
でも備え、プロセッサ部の対応するレジスタと同一の内
容を保持する。プロセッサ部で環境の退避を行う際には
プロセッサ部のレジスタ群からではなく、記憶装置のレ
ジスタ群のデータを記憶部に格納する。これにより記憶
装置で環境の退避を行っている間に、プロセッサ部では
命令の解釈、演算処理が可能になる他、記憶装置へのア
クセスをも可能にすることによりシステム全体の処理性
能が向上する。
(実施例) 以下本発明の実施例について図面を参照して説明する。
第1図は本発明の詳細な説明するだめの一実施例のブロ
ック図である。第1図で11はデータの転送の制御を可
能にした記憶装置、12はデータの処理を行うプロセッ
サ部、13はデータおよびプログラムを格納する記憶部
、14はプロセッサ部12でのデータ処理時に状態およ
びデータを一時保持するために備えるレジスタ群をまと
めたしジスタフアイル、15は記憶装置11の中にあシ
プロセッサ部12が保持しているレジスタファイル14
の中から環境の退避時に利用するレジスタ(前述のコピ
ーレジスタに相当)群を保持する゛コピーレジスタファ
イル、16はコピーレジスタファイル15の数に等しい
ビット数を有し、これらビットが前記コピーレジスタ1
5の各レジスタにそれぞれ対応している退避フラグ、1
7は記憶装置11でのデータ転送処理をマイクロプログ
ラムで制御する記憶制御部、18は環境を記憶部13に
退避するときにプロセッサ部12から送られる記憶部1
3の退避領域アドレスを保持し、歩進する機能を持つア
ドレスレジスタ、19はプロセッサ部12でのデータ処
理を制御するプロセッサ制御部、20は環境を退避する
ときに退避対象レジスタ群を指定して退避を指示するレ
ジスタコピーコマンド線である。21は、プロセッサ部
12がレジスタファイル14の中のレジスタに書き込み
を行うときレジスタアドレス線35を介して前記レジス
タに対応する退避フラグ16のビットがセットされてい
ると、退避未完了信号36がONになシ、レジスタライ
ト信号34とのAND処理を行うことKよってプロセッ
サ12での処理を禁止するゲートである。22は、アド
レス線32あるいはアドレスレジスタ18のいずれを記
憶部13のアドレスとするかを選択するセレクタである
また、23は、プロセッサ部12からデータ線37を介
して送られるデータあるいはコピーレジスタファイル1
5からデータ線38を介して送られるデータのいずれか
をプロセッサ部12からの記憶部アクセス要求39によ
って選択するセレクタである。前記2つのセレクタ22
.23により、コピーレジスタファイル15から記憶部
13ヘレジスタ内容を転送する環境退避中にプロセッサ
部12から記憶部13へのアクセス要求があったときに
、環境退避処理を一時中断してプロセッサ部12のため
の続出し、書込み処理を行うことが可能になる。データ
線40は、レジスタコピーコマンド線20で送られるレ
ジスタコピーコマンドを記憶制御装置17が受けたとき
にコピーレジスタファイル15の退避対象レジスタ群に
対応したビットパターンを退避フラグ16に格納するた
めに使用される。
第2図(荀及び(b)は第1図実施例の動作を説明する
ための図である。第2図(11)は環境退避直前の状態
を示し、同図(b)はプロセッサ部12の環境を退避す
る途中の状態を示す。以下に第2図(a)、 (t))
をも参照しながら第1図実施例の動作を説明する。
環境を退避する以前の処理として、プロセッサ部12で
はデータ処理を行う。データ処理において、レジスタフ
ァイル14には、一時的なデータあるいは状態が書き込
まれる。このレジスタファイル14に書き込むと同時に
、レジスタアドレス線35で指示される記憶装置11の
コピーレジスタファイル15の対応するレジスタ位置に
、レジスタファイル14に書き込まれる内容と同一の内
容をデータ線31を介して書き込む。この状態を第2図
(&)、 (1))のレジスタファイル14とコピーレ
ジスタファイル15の例で示す。この例では対応するレ
ジスタ位置に同一の値a、  b、  cが格納される
プロセッサ部12で一連のデータ処理を終了した後、環
境を退避する操作を開始する。レジスタファイル14の
中で第2図(唱(1))に示す3個のレジスタR,,R
,、R,+、の内容を退避するために、プロセッサ部1
2では、レジスタコピーコマンド線20を介して前記の
3個のレジスタの内容を記憶部13へ転送することを命
令するレジスタコピーコマンドを記憶制御部17へ送る
。退避するレジスタの順番、およびコピーレジスタファ
イルxso退避対象レジスタのアドレスは記憶制御部1
70マイクロプログラムによって制御される。
実施例における退避順は第2図のR1* R1+ ”l
+1の順である。アドレス線32を介してプロセッサ部
12からアドレスレジスタ18に記憶部13の格納先ア
ドレス”n“を送シ、アドレスレジスタ18にn″が格
納される。
記[制御部17は、プロセッサ部12から送られたレジ
スタコピーコマンドを受けた後、データ線40を介して
退避フラグ16にコピーレジスタ7フイル15のレジス
タの中で退避対象となっているレジスタを示すビットパ
ターンを退避フラグ16に格納する。第2図(a)の例
では“0010・・・011″が退避フラグ16に格納
される。これらのビットパターンはレジスタコピーコマ
ンド線20を介して送られるコピーコマンドの種類によ
って異なり、ビットパターンは記憶制御部170マイク
ロ命令で与えられる即値によって決定される。この後、
R1”l* Rj+1の3個のレジスタの内容を記憶部
13に退避する処理を開始する。転送対象データは、コ
ピーレジスタファイル15からデータ線38を介して記
憶部13へ転送する。
転送先のアドレスはアドレスレジスタ18で示され、最
初の転送では第2図(a)の記憶部13の“n″番地に
コピーレジスタファイル15のR,レジスタの内容″a
”が格納される。このときにR1に対応する退避フラグ
16のビットを“1”から“0′″に変え、R2の退避
を完了したことを示す。
次に、アドレスレジスタ18の内容が“区”から歩進さ
れn+1”となる。このアドレスで示される記憶部13
の′n+1”番地にR,レジスタの内容“b″が格納さ
れる。同時にRt K対応する退避フラグ16のビット
を“1″から“Onに変エル。続いてアドレスレジスタ
18の内容が歩進され“n+2”となる。この結果、第
2図(b)に示す記憶部13および退避フラグ16の状
態になる。
この状態で、プロセッサ部12から記憶部アクセス要求
39によシ記憶部13への書き込み要求があると、環境
退避は中断し、プロセッサ部12の書き込み処理を優先
する。セレクタ22によりプロセッサ部12からアドレ
ス線32を介して送られる書き込みアドレスを記憶部1
3へのアドレスとして選択すると共に1データ線37を
介して送られる書き込みデータをセレクタ23の出力と
して選択することによってプロセッサ部12からの書き
込み処理を行う。このプロセッサ部12からの書き込み
処理後、セレクタ22は再びアドレスレジスタ18の出
力“n+2”を選択し、セレクタ23はデータ)i13
8を選択することによって、コピーレジスタファイル1
5の出力を選択する。
この結果、環境退避操作が続行され、記憶部13の′n
+2”番地に“C″が格納されることにより一連の環境
退避操作が終了する。
第2図(b)の状態のときにプロセッサ部12がレジス
タファイル14のR,+、  レジスタへの書き込み処
理を行う場合について以下に示す。プロセッサ部12が
レジスタファイル14へ書き込むと同時にコピーレジス
タファイル15のR,+、  レジスタへの書き込みを
行い、記憶部13へ退避を完了する前K R1+ 1 
 レジスタの内容′C”が書き替えられたのでは、退避
処理が正常に終了しないことになる。したがって、本実
施例においては退避フラグ16を備え、RJ+1のレジ
スタに対応するビットが“1″である場合には、退避未
完了信号36に“1′″を出力し、ゲート21に入力し
、インヒビット信号41を発生することによってプロセ
ッサ部12でのレジスタ書込み処理を中断させる。
この結果コピーレジスタファイル15のRj+l レジ
スタに対応するレジスタの値としてC″が保存され、記
憶部12の“n+2′″番地にはR,+。
レジスタの退避内容として“C”を格納できる。
本実施例は本発明の詳細な説明するために示したもので
あシ、本発明の特許請求の範凹を制限するものではない
。即ち、本実施例では、3個のレジスタを退避するレジ
スタコピーコマンドヲ例トして示したが、この他に異な
るレジスタ、あるいは異なる個数のレジスタを退避する
コマンドも備えることができる。特に環境を退避する場
合に常に同一のレジスタ群を退避するものではなく、個
数、順序が異なるので、これらの退避の型に対応して複
数種類のコマンドを備えることも可能である0 またプロセッサ部でのレジスタファイルは、1個のみを
示したが、複数のレジスタファイル、複数の各種レジス
タを備えることができ、これらのレジスタファイル、レ
ジスタが、環境退避処理に必要であれば、コピーレジス
タファイルと同様、記憶装置内に備えることができる。
記憶装置に備えるレジスタ、レジスタファイルはプロセ
ッサ部で備えているもの全てを備える必要はなく、環境
の退避に必要なレジスタ、レジスタファイルに対応して
備えれば、十分である。
退避フラグ16に格納するビットパター7は記憶制御部
17のマイクロプログラムで指定できる即値によル生成
したが、レジスタコピーコマンドに対応したビットパタ
ーンテーブルを備えることKより、ビット幅の大きいビ
ットパターンを扱りことができる。さらにテーブルを介
することKよるビットパターン発生、修正処理をより柔
軟に実現することができる。
(発明の効果) 本発明によれば記憶装置中にプロセッサ部に備えている
レジスタ群と同一内容のレジスタ群を備える仁とKよシ
、プロセッサ部の環境を退避する処理ではプロセッサ部
のレジスタ群から記憶装置にデータを転送することなく
、記憶装置中の前記レジスタから記憶部に書き込むこと
ができる。この結果プロセッサ部では環境を退避するた
めのデータ転送を行う必要がなく環境を退避した後に必
要な命令の解釈、演算などの処理を行うととができ、プ
ロセッサ部での処理性能を向上させることができる。
さらに記憶装置中で環境退避している時にプロセッサ部
からのアクセス要求に従って読出し、書き込み処理を可
能にするととくよってプロセッサ部での処理を環境退避
処理と並行して実現できる。
この結果プロセッサ部での処理性能をやはり向上させる
ことができる。
このように、本発明によれば、環境を退避する際にプロ
セッサ部のレジスタの内容を高速に配憶部に退避できる
とともに、プロセッサ部の処理性能を大幅に向上できる
記憶装置が提供できる。
【図面の簡単な説明】
第1図は本発明の一実施例を示すブロック図、第2図(
IL)、 (b)はその実施例の動作を説明するための
記憶装置、プロセッサ部の記憶内容例を示す図である。 図において、11は記憶装置、12はプロセッサ部、1
3は記憶部、14はプロセッサ部12で一時的な内部デ
ータ、状態を保持するレジスタファイル、15は環境退
避時にプロセッサ部12でのレジスタファイル14に替
えて環境情報を供給するコピーレジスタファイル、16
はコピーレジスタファイル15の各レジスタが退避済で
あるか否かを示す退避フラグ、17は記憶装置での操作
を制御する記憶制御部、18は記憶装置11での環境退
避先アドレスを示すために歩進機能を備えるアドレスレ
ジスタである。

Claims (1)

    【特許請求の範囲】
  1. データ及びプログラムを格納する記憶部と、データの処
    理を行うプロセッサ部にある各種レジスタと同じ内容を
    それぞれ保持する複数のコピーレジスタからなるコピー
    レジスタファイルと、前記コピーレジスタの数に等しい
    ビット数を有しこれらビットは前記コピーレジスタにそ
    れぞれ対応している退避フラグと、前記記憶部に転送す
    る必要がある前記コピーレジスタに対応する前記退避フ
    ラグのビットをセットする手段と、前記記憶部へ転送す
    ることが必要な前記コピーレジスタの内容を前記記憶部
    に順次書き込み、書き込みを終えた前記コピーレジスタ
    に対応する前記退避フラグのビットをリセットする記憶
    制御部と、前記プロセッサ部が内部の前記レジスタに書
    き込みを行うときに対応する前記コピーレジスタに対応
    する退避フラグのビットがセットされている場合には前
    記プロセッサ部が前記コピーレジスタファイルへ書き込
    むのを禁止して前記プロセッサ部の処理を止める手段と
    、前記プロセッサ部が前記記憶部にアクセス要求を出す
    ときに、前記コピーレジスタファイルの内容の転送を中
    断して前記プロセッサ部のアクセス要求を優先する手段
    とを備えることを特徴とする記憶装置。
JP60102203A 1985-05-14 1985-05-14 記憶装置 Pending JPS61260334A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60102203A JPS61260334A (ja) 1985-05-14 1985-05-14 記憶装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60102203A JPS61260334A (ja) 1985-05-14 1985-05-14 記憶装置

Publications (1)

Publication Number Publication Date
JPS61260334A true JPS61260334A (ja) 1986-11-18

Family

ID=14321106

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60102203A Pending JPS61260334A (ja) 1985-05-14 1985-05-14 記憶装置

Country Status (1)

Country Link
JP (1) JPS61260334A (ja)

Similar Documents

Publication Publication Date Title
JPS6376034A (ja) 多重アドレス空間制御方式
US7434222B2 (en) Task context switching RTOS
KR20060114722A (ko) 컴퓨팅 시스템
EP0373790A2 (en) Data processing apparatus for saving and restoring
EP0660229B1 (en) Method and apparatus for modifying the contents of a register
JPS61260334A (ja) 記憶装置
JPH0546581B2 (ja)
JPS61241838A (ja) 記憶装置
JPH033049A (ja) プロセスコントローラ単一メモリチップシャドー化技術
KR100259073B1 (ko) 플래쉬 메모리의 오류 처리 장치
JPS61241835A (ja) 環境退避並列処理可能デ−タ処理装置
JPH05242009A (ja) 直接メモリアクセス装置
JPS61188633A (ja) 記憶装置
JPH02163834A (ja) マルチ・タスク処理方式
JPS62139039A (ja) ユニフイケ−シヨン処理装置
JPH03158943A (ja) バッファ記憶・転送方式
JPS6155741A (ja) 演算処理装置
JPH11154096A (ja) フラッシュメモリの管理装置及びフラッシュメモリの管理方法、割り込み管理装置及び割り込み管理方法
JPS61190648A (ja) メモリ間のデ−タ転送制御回路
JPS63214806A (ja) プログラマブル・コントロ−ラ
JPS61241852A (ja) 更新・保存同時処理可能レジスタフアイル
JPH04271432A (ja) 中央演算処理装置のオペランド指定方法及び当該方法を使用する中央演算処理装置
JPS61272856A (ja) プロセツサ制御方式
JPH06259265A (ja) Cpuのユーザ定義状態遷移方式
JPH02230326A (ja) パイプライン情報処理装置