JPH02272654A - キャッシュメモリ装置 - Google Patents

キャッシュメモリ装置

Info

Publication number
JPH02272654A
JPH02272654A JP1094551A JP9455189A JPH02272654A JP H02272654 A JPH02272654 A JP H02272654A JP 1094551 A JP1094551 A JP 1094551A JP 9455189 A JP9455189 A JP 9455189A JP H02272654 A JPH02272654 A JP H02272654A
Authority
JP
Japan
Prior art keywords
data
memory
address
value
register
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
JP1094551A
Other languages
English (en)
Inventor
Tsutomu Maruyama
勉 丸山
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 JP1094551A priority Critical patent/JPH02272654A/ja
Publication of JPH02272654A publication Critical patent/JPH02272654A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はキャッシュメモリ装置に関するものである。
〔従来の技術〕
従来のキャッシュメモリ装置は、周知のように、主記憶
が保持するデータの一部を記憶するデータメモリと、デ
ータメモリに記憶されたデータのアドレスを記憶するタ
グメモリと、メモリがアクセス要求されたときに、その
アクセス要求アドレスがタグメモリに記憶されているが
否かを調べる比較器とを備え、比較器におけるヒツト・
ミスヒツトに応じてデータメモリまたは主記憶をアクセ
スするようにしている。
〔発明が解決しようとする課題〕
従来、Li5p、Prolog等の変数のデータ型がプ
ログラムの実行時に決まる言語においては、変数の値が
まだ定まっていないことを示すために特定の値を用いて
いる。こ値は、多くの場合、 (1)変数にまだ値が代入されていないことを示すタグ
(UNDEF)をタグフィールドに設定、(2〉変数の
タグフィールドにはポインタであることを示すタグ(R
EF)を設定しデータフィールドには、変数自身のアド
レスを設定、することによって実現されている。
従来のキャッシュメモリ装置を使用してこの処理を行な
うには、プログラムの実行において関数呼び出しが行わ
れるごとに必要であり、ソフトウェアまたはファームウ
ェアによって必要となった変数の数だけ、1語ずつ行わ
れていたため、間数呼び出しの処理速度を低下させる原
因の一つとなっていた。
本発明の目的は、上記(2)の方法に対して、複数語の
データ幅を持ち複数語の同時書き込み可能なデータメモ
リと、データメモリに書き込むデータの下位数ビットの
変更を行うデータ変更装置を用いて、データメモリのデ
ータ幅の語数を同時に初期化可能なキャッシュメモリ装
置を実現することにより変数領域の初期化を高速化し、
高速な関数呼び出しを実現するキャッシュメモリ装置を
提供することにある。
〔課題を解決するための手段〕
本発明のキャッシュメモリ装置は、キャッシュメモリ装
置より読み出す値のアドレスを保持するアドレスレジス
タと、複数語のデータ幅を持ち複数語のデータを同時書
き込み可能なデータメモリと、前記データメモリに書き
込むデータを保持するデータレジスタと、前記データメ
モリに対して書き込む複数のデータの一部を定められた
値に変更する複数のデータ変更装置と、前記データメモ
リに対して連続して複数データの書き込みを行うための
アドレス計算を行う加算器と、前記データメモリに格納
されているデータのアドレスの一部を保持するタグメモ
リと、前記タグメモリより読み出された値と、前記アド
レスレジスタの値の一部を比較する比較器と、前記デー
タメモリおよび前記タグメモリに与えるアドレスのデコ
ードを行うアドレスデコーダと、全体の制御を行う制御
装置とから構成される。
〔作用〕
プロローグに代表される論理型言語等においては、新し
い変数領域がスタック上に確保された場合には、ガーベ
ジコレクションの必要性のために、その領域をある値に
初期化する必要がある。一般には、 (1)変数にまだ値が代入されていないことを示すタグ
(UNDEF)をタグフィールドに設定、(2)変数の
タグフィールドにはポインタであることを示すタグ(R
EF)を設定しデータフィールドには、変数自身のアド
レスを設定、することによって実現されている。
本発明の装置は、上記(2)の場合に対して、複数語の
データ幅を持ち複数語の同時書き込み可能なデータメモ
リと、データメモリに書き込むデータの下位数ビットの
変更を行うデータ変更装置を用いて、データメモリのデ
ータ幅単位での変数の初期化を同時に行うことによって
変数領域の初期化を高速に行うものである。
変数の値を一部ずつその変数自身のアドレスにするコマ
ンド例を第2図(a)に示す。
第2図(a)はレジスタRiで指定されるアドレスから
始まる6語の初期化を行なうコマンド例であり、wri
te  *Ri、  REFIRi十+は、Riで指定
されるアドレスにタグがREF。
データがRi(アドレス自身)を書き込み、その後、レ
ジスタRiの値を1つだけ加算するコマンドを示す。
これに対して、複数語同時に初期化可能ならば、第2図
(b)に示したように、この処理時間を短縮することが
でき、処理速度の高速化を実現することができる。
〔実施例〕
以下、本発明の装置について図面を用いて詳細に説明す
る。
本発明のキャッシュメモリ装置の一実施例を第1図に示
す。
第1図において、10はキャッシュ装置から読み出すデ
ータのアドレスを保持するアドレスレジスタ、20はキ
ャッシュ装置に書き込む値を保持するデータレジスタ、
30はデータを格納するデータメモリ、40はデータメ
モリに格納されているデータのアドレスの一部を保持す
るタグメモリ、50はアドレスレジスタ10によって与
えられたアドレスのデコードを行いタグメモリ40から
のデータの読み出しを行うアドレスデコーダ、60はア
ドレスレジスタ10より与えられたアドレスとそのアド
レスによってタグメモリ40より読み出された値との比
較を行う比較器、80はデータメモリから同時に読み出
された4語の中から1語をアドレスレジスタ10より与
えられたアドレスに応じて選択するセレクタ、90,9
1,92゜93はデータレジスタ20より与えられた値
の下位2ビツトを変更するためのセレクタ(本実施例は
ワードアドレスであるとする)、95は連続して書き込
みを行う場合にアドレス計算を行う加算器、96はアド
レスレジスタの与えるアドレスの切り替えを行うセレク
タ、70は全体の制御を行う制御装置である。セレクタ
90,91,92゜93の一方の入力にはそれぞれ固定
値“00°。
“01” 、  ”10” 、  ”11”が、また加
算器95の一方の入力には固定値“4″がそれぞれ供給
されている。
まず、本キャッシュメモリ装置の通常の動作について述
べる。
(1)キャッシュメモリ装置よりデータの読み出しを行
う場合 アドレスレジスタ10よりアドレスが与えられると、ア
ドレスの一部がアドレスデコーダ50によってデコード
されたタグメモリ40、続いてデータメモリ30の読み
出しが行われる。タグメモリ40より読み出された値は
、比較器60によってアドレスレジスタ10の値と比較
されデータメモリ30に格納されている値が適切なもの
であるかが判定される。
適切でない場合には、制御装置70によってデータメモ
リ30およびタグメモリ40に、適切なデータがメモリ
より読み出され書き込まれる。また、適切なときはデー
タメモリ30からデータが読み出されるが、データメモ
リ4語同時に読み出しを行っているためその中の1語が
セレクタ80によって選択され、データ線104によっ
てキャッシュメモリ装置より読み出される。
(2)キャッシュメモリ装置にデータの書き込みを行う
場合 データの読み出しを行う場合と同様の処理がまず行われ
る。その結果、適切な値がデータメモリ30およびタグ
メモリ40に格納されていたならば、制御装置70はア
ドレスレジスタ10より与えられたアドレスの一部を用
いて、信号線110111 112.113によってデ
ータレジスタ20の値を書き込むデータメモリ30中の
位置を4つ列の内から1列選択し、アドレスデコーダ5
0によって定まるデータメモリ30中のアドレスにデー
タレジスタ20の値を書き込む。このとき信号線114
によってセレクタ90.91,92゜93はそれぞれデ
ータ線120,121,122゜123の値を選択する
。この結果データレジスタ20の値がそのままデータメ
モリ30に書き込まれる。
以下、第1図に示したキャッシュメモリ装置を使用して
第2図(b)に示した命令を実行した場合について述べ
る。この場合、まずデータ読み出しを行う場合と同様の
処理が行われる。次いでデータの書き込みが行われるが
この場合には、以下のような手順で書き込みが行われる
(a)信号線100により、制御装置70に何語分のデ
ータ領域の初期化を行うかが与えられる。
(b)その値に基づいて制御装置70は、信号線110
,111,1.12,113を制御しデータメモリ30
への書き込みを指示する。この場合、上記(2)で述べ
た書き込みの場合には、データを書き込む位置は1列の
みだったが、アドレスレジスタ10より与えられるアド
レスの値に応じて、 アドレスの下位2ビツトの値が00′°の場合にはデー
タメモリ30の第0〜3列に、アドレスの下位2ビツト
の値が01″の場合にはデータメモリ30の第1〜3列
に、アドレスの下位2ビツトの値が“’ 10 ”の場
合にはデータメモリ30の第2〜3列に、アドレスの下
位2ビツトの値が“11′°の場合にはデータメモリ3
0の第3列に、 書き込みという制御を行う。
また制御装置70は、信号線114によってセレクタ9
0,91,92.93を用いてそれぞれデータ線130
,131,132,133を選択し、アドレスデコーダ
50および信号線110゜111.112,113によ
って定められた複数のアドレスにデータの書き込みを行
う。データ線130.131,132,133がj闘択
されたことによって、指定された歯数のアドレスのデー
タには、そのデータのアドレス自身が書き込まれる。
この場合、信号線100によって与えられた語数が2、
アドレスレジスタ10によって与えられたアドレスの下
位2ビツトが” 01 ’”の場合には第1列、第2列
のみの書き込みを行えば充分であるが、制御か複雑にな
るので、このような場合でも第1列から第3列までの書
き込みを行うものとする。
(c)信号線100によって指定された語数が多く、デ
ータメモリ30への一回の書き込みによって全ての書き
込みを行うことができない場合には、加算器95によっ
て計算されたアドレスを用いて(このアドレスの切り替
えはセレクタ96によって行われる)、(b)と同様の
書き込みが繰り返し行われる。この場合には、第0〜3
列の全ての列への書き込みが行われる。
以上、本発明の一実施例について説明したが、本発明は
この実施例にのみ限定されるものではなく、データメモ
リのデータ幅、データ変換装置の実施方法を変えてもよ
い。
〔発明の効果〕
本発明によれば、複数語のデータ幅を持ち、複数語同時
書き込み可能なデータメモリと簡単なデータ変更装置に
よって、論理型言語の実行などにおいて、必要となる変
数領域の初期化を高速に行うことができ言語の処理速度
の向上を実現することができる。
【図面の簡単な説明】
第1図は本発明の一実施例、第2図は変数領域の初期化
を行なうコマンド例をそれぞれ示す図である。 10・・・アドレスレジスタ、20・・・データレジス
タ、30・・・データメモリ、40・・・タグメモリ、
50・・・アドレスデコーダ、60・・・比較器、70
・・・制御装置、80,90,91,92.93,96
・・・セレクタ、95・・・加算器。

Claims (1)

    【特許請求の範囲】
  1. キャッシュメモリ装置より読み出す値のアドレスを保持
    するアドレスレジスタと、複数語のデータ幅を持ち複数
    語のデータを同時書き込み可能なデータメモリと、前記
    データメモリに書き込むデータを保持するデータレジス
    タと、前記データメモリに対して書き込む複数のデータ
    の一部を定められた値に変更する複数のデータ変更装置
    と、前記データメモリに対して連続して複数データの書
    き込みを行うためのアドレス計算を行う加算器と、前記
    データメモリに格納されているデータのアドレスの一部
    を保持するタグメモリと、前記タグメモリより読み出さ
    れた値と、前記アドレスレジスタの値の一部を比較する
    比較器と、前記データメモリおよび前記タグメモリに与
    えるアドレスのデコードを行うアドレスデコーダとを有
    することを特徴とするキャッシュメモリ装置。
JP1094551A 1989-04-13 1989-04-13 キャッシュメモリ装置 Pending JPH02272654A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1094551A JPH02272654A (ja) 1989-04-13 1989-04-13 キャッシュメモリ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1094551A JPH02272654A (ja) 1989-04-13 1989-04-13 キャッシュメモリ装置

Publications (1)

Publication Number Publication Date
JPH02272654A true JPH02272654A (ja) 1990-11-07

Family

ID=14113453

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1094551A Pending JPH02272654A (ja) 1989-04-13 1989-04-13 キャッシュメモリ装置

Country Status (1)

Country Link
JP (1) JPH02272654A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735661B2 (en) * 2000-06-27 2004-05-11 Koninklijke Philips Electronics N.V. Integrated circuit with flash memory including dedicated flash bus and flash bridge

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735661B2 (en) * 2000-06-27 2004-05-11 Koninklijke Philips Electronics N.V. Integrated circuit with flash memory including dedicated flash bus and flash bridge

Similar Documents

Publication Publication Date Title
EP0213843B1 (en) Digital processor control
EP0595880B1 (en) Memory management method
US4574349A (en) Apparatus for addressing a larger number of instruction addressable central processor registers than can be identified by a program instruction
JPS6114535B2 (ja)
JPS59117666A (ja) ベクトル処理装置
KR930006541A (ko) 원자 억세스를 제공하는 레지스터가 소프트웨어 인터록 없이 공유된 레지스터의 개별 비트를 세트하고 클리어하기 위한 방법 및 장치
US5440714A (en) Method and system configuration for simplifying the decoding system for access to an register file with overlapping windows
JPS593642A (ja) 制御レジスタ処理方式
JPS5911921B2 (ja) 数値制御装置
US5179682A (en) Method and apparatus for improved current window cache with switchable address in, out, and local cache registers
JP2000353092A (ja) 情報処理装置及びそのレジスタファイル切替方法
JPS5844263B2 (ja) 記憶制御回路
JPH02272654A (ja) キャッシュメモリ装置
US5450587A (en) Expanded memory addressing scheme
JPH02272628A (ja) キャッシュメモリ装置
JPH0377137A (ja) 情報処理装置
JP3203007B2 (ja) 仮想計算機のi/oアドレス変換方式
US3397391A (en) Compact storage control apparatus
JPS6065342A (ja) マイクロコンピユ−タ
JPH0731608B2 (ja) 情報処理装置
SU734686A1 (ru) Устройство дл формировани команд
JPH05108353A (ja) 情報処理装置
JPS5972545A (ja) マイクロプログラム制御システム
JPS6247745A (ja) マイクロプログラム制御方式
JPH0256029A (ja) 汎用レジスタ切換方式