JPH05197622A - キャッシュサブシステム - Google Patents

キャッシュサブシステム

Info

Publication number
JPH05197622A
JPH05197622A JP4008752A JP875292A JPH05197622A JP H05197622 A JPH05197622 A JP H05197622A JP 4008752 A JP4008752 A JP 4008752A JP 875292 A JP875292 A JP 875292A JP H05197622 A JPH05197622 A JP H05197622A
Authority
JP
Japan
Prior art keywords
instruction
data
entry
address
entry area
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
JP4008752A
Other languages
English (en)
Inventor
Masahiro Kodama
雅裕 児玉
Yasuyo Yamamoto
泰代 山本
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4008752A priority Critical patent/JPH05197622A/ja
Publication of JPH05197622A publication Critical patent/JPH05197622A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】命令のキャッシュ容量とデータのキャッシュ容
量を変えることができ、様々な処理用途に柔軟に対応で
きるキャッシュサブシステムの提供を目的とする。 【構成】1対1に対応付けられたn個の記憶ブロックと
n個のエントリ領域とを有する記憶空間と、命令アドレ
スの内容に基づいて1つのエントリ領域を指定する命令
・エントリ指定部と、データアドレスの内容に基づいて
1つのエントリ領域を指定するデータ・エントリ指定部
と、を備え、指定されたエントリ領域に対応する記憶ブ
ロックから命令またはデータを取り出すキャッシュサブ
システムであって、前記命令・エントリ指定部は、命令
アドレスが最小値のときに0番目のエントリ領域を、ま
た最大値のときにn−1番目のエントリ領域を指定し、
前記データ・エントリ指定部は、データアドレスが最小
値のときにn−1番目のエントリ領域を、また最大値の
ときに0番目のエントリ領域を指定することを特徴とす
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、キャッシュサブシステ
ム、特に、命令/データ分離型キャッシュサブシステム
に関する。
【0002】
【従来の技術】簡便なキャッシュサブシステムとして、
命令/データ統合型キャッシュサブシステム(以下、統
合型キャッシュサブシステムと略す)が知られている。
図4はその概略構成を示す図であり、プロセッサ1とメ
インメモリ(主記憶)2の間をキャッシュメモリ3を介
して接続する。なお、4はこれらメモリ間の命令やデー
タの授受を制御するキャッシュコントロール(及びメモ
リインターフェース)である。
【0003】かかるキャッシュサブシステムにおいて
は、キャッシュメモリ(一般にSRAM等の高速デバイ
スを使用する)3のアクセス速度でシステム全体の性能
が決まるから、メインメモリ(一般にコストの安いDR
AM等の低速デバイスを使用する)2を直接にアクセス
するシステム(すなわちキャッシュサブシステムを持た
ないシステム)に比べ、大幅な性能向上が図られる。
【0004】ところで、この種の統合型キャッシュサブ
システムは、命令とデータの双方でバス(アドレスバ
ス、データバス)を共有しているために、例えばパイプ
ライン処理のような並列計算システムとの相性が悪い。
並列計算システムでは、例えば命令フェッチと同時に、
前回のフェッチ命令をデコードしたり、前回のデコード
命令を実行したり、前回の実行結果をストアしたり、・
・・するが、統合型キャッシュサブシステムでは、命令
フェッチとストアの何れか一方しか行うことができず、
並行計算システムの性能を発揮できない。
【0005】図5は並列計算システムに好適な命令/デ
ータ分離型キャッシュサブシステム(以下、分離型キャ
ッシュサブシステム)を示す図である。統合型との相違
点は、命令専用のキャッシュメモリ(以下、命令・キャ
ッシュメモリ)5と、データ専用のキャッシュメモリ
(以下、データ・キャッシュメモリ)6とを備え、且
つ、メモリごとの専用バス(命令・アドレスバス、命令
・データバス、データ・アドレスバス、データ・データ
バス)を備えることである。
【0006】すなわち、分離型キャッシュサブシステム
では、命令フェッチとデータのストア(またはロード)
を同時に行うことができ、パイプライン処理等を支障な
く行うことができる。
【0007】
【発明が解決しようとする課題】しかしながら、かかる
分離型キャッシュサブシステムにあっては、命令用のキ
ャッシュメモリとデータ用のキャッシュメモリの容量が
それぞれ固定であったため、データ量や命令数が異なる
様々な処理用途に柔軟に対応できないといった問題点が
あった。
【0008】そこで、本発明は、命令のキャッシュ容量
とデータのキャッシュ容量を変えることができ、様々な
処理用途に柔軟に対応できるキャッシュサブシステムの
提供を目的とする。
【0009】
【課題を解決するための手段】本発明は、上記目的を達
成するために、1対1に対応付けられたn個の記憶ブロ
ックとn個のエントリ領域とを有する記憶空間と、命令
アドレスの内容に基づいて1つのエントリ領域を指定す
る命令・エントリ指定部と、データアドレスの内容に基
づいて1つのエントリ領域を指定するデータ・エントリ
指定部と、を備え、指定されたエントリ領域に対応する
記憶ブロックから命令またはデータを取り出すキャッシ
ュサブシステムであって、前記命令・エントリ指定部
は、命令アドレスが最小値のときに0番目のエントリ領
域を、また最大値のときにn−1番目のエントリ領域を
指定し、前記データ・エントリ指定部は、データアドレ
スが最小値のときにn−1番目のエントリ領域を、また
最大値のときに0番目のエントリ領域を指定することを
特徴とする。
【0010】
【作用】本発明では、例えば、 (1) 命令アドレスとデータアドレスが共に最小値か
ら最大値の半分までの範囲であれば、0番目から(n/
2)−1番目までのエントリ領域が命令アドレスで指定
されると共に、n/2番目からn−1番目までのエント
リ領域がデータアドレスで指定され、n個の記憶ブロッ
クの半分づつが命令キャッシュとデータキャッシュに割
り当てられる。 (2) 命令アドレス(またはデータアドレス)が最小
値から最大値までの範囲であれば、0番目からn−1番
目までの全エントリ領域が命令アドレス(またはデータ
アドレス)で指定され、n個の記憶ブロックの全てが命
令キャッシュ(またはデータキャッシュ)に割り当てら
れる。
【0011】したがって、命令アドレスやデータアドレ
スの範囲を調節するだけで、キャッシュ配分を、(1)
の均等配分から(2)の一方配分まで、柔軟に変えるこ
とができる。
【0012】
【実施例】以下、本発明の実施例を図面に基づいて説明
する。図1〜図3は本発明に係るキャッシュサブシステ
ムの一実施例を示す図である。図1において、10記憶
空間であり、この記憶空間10は、SRAM等の高速デ
バイスによって構成された例えば8kバイト(8192
×8ビット)の広さを持つ記憶空間を模式的に表してい
る。記憶空間10は2つに区分され、1方の区画はキャ
ッシュタグ11、他方の区画はキャッシュメモリ12と
して使用される。ここで、キャッシュタグ11は0番目
からn−1(例えばn=512)番目までのエントリ領
域に細分され、また、同様にキャッシュメモリ12も0
番目からn−1番目までの記憶ブロックに細分されてい
る。11mは代表として示すm番目のエントリ領域で、
例えば20ビットのサイズを持っている。また、12m
は代表として示すm番目の記憶ブロックで、例えば16
バイトのサイズを持ち、これを32ビットのサブブロッ
ク(a、b、c、d)に4等分している。
【0013】0番目から511番目までのエントリ領域
と記憶ブロックは、それぞれ番号を同一にするもの同士
が対応付けられており、例えば、m番目のエントリ領域
11mを指定すると、m番目の記憶ブロック12mが指
定(アクセス)されるようになっている。13は命令・
エントリ指定部、14はデータ・エントリ指定部であ
り、上記キャッシュタグ11のn個のエントリ領域は、
これらの命令・エントリ指定部13やデータ・エントリ
指定部14によって個別に指定されるようになってい
る。
【0014】例えば、命令・エントリ指定部13は図示
しないプロセッサからの命令アドレス<11:4>(但
し、<11:4>は命令フォーマットのビット4からビ
ット11までの8ビット分を表す)をデコードし、その
内容に応じてn個のエントリ領域の1つを指定する。ま
た、データ・エントリ指定部14は図示しないプロセッ
サからのデータアドレス<11:4>(但し、<11:
4>はデータフォーマットのビット4からビット11ま
での8ビット分を表す)をデコードし、その内容に応じ
てn個のエントリ領域の1つを指定する。
【0015】ここで、命令・エントリ指定部13による
エントリ領域の指定方向と、データ・エントリ指定部1
4によるエントリ領域の指定方向は逆向きになってい
る。例えば、命令アドレス<11:4>の内容が最小値
から1ステップづつ増加すると、0番目→1番目→2番
目→・・・・の順にエントリ領域が指定されるのに対
し、データアドレス<11:4>の内容が同じように最
小値から1ステップづつ増加すると、511番目→51
0番目→519番目→・・・・の順に逆方向にエントリ
領域が指定される。すなわち、内容が最小値から1ステ
ップづつ増加した場合の命令アドレスによるエントリ領
域指定は、図1の上から下へとなされ、一方、同じくデ
ータアドレスによるエントリ領域指定は、図面の下から
上へとなされる。命令アドレスとデータアドレスの内容
を共に最大値の半分で制限すると、両アドレスによるエ
ントリ領域の最大指定数は、命令アドレスで0番目から
255番目まで、データアドレスで256番目から51
1番目までの範囲になり、丁度半分づつになる。ここ
に、nは512であるから、命令アドレスとデータアド
レスが共に最小値から最大値の半分までの範囲であれ
ば、0番目から(n/2)−1番目(すなわち255番
目)までのエントリ領域が命令アドレスで指定されると
共に、n/2番目(すなわち256番目)からn−1番
目までのエントリ領域がデータアドレスで指定される。
したがって、これらのエントリ領域に対応するn個の記
憶ブロックも同様に、その半分づつ(0〜255番目、
256〜511番目)が命令キャッシュとデータキャッ
シュに割り当てられる。
【0016】図2は命令及びデータのフォーマットを示
す図であり、本実施例では、特に限定されないが32ビ
ットサイズの命令及びデータを取り扱う。ビット2とビ
ット3はサブブロック(a、b、c、d)指定用に割り
当てられ、ビット4からビット31までの28ビットは
命令又はデータアドレスに割り当てられる。命令又はデ
ータアドレスはビット4からビット12までの9ビット
(<13:4>)と、ビット13からビット31までの
19ビット(<31:13>)に分けられ、<12:4
>で下位アドレス、<31:13>で上位アドレスを表
現する。
【0017】上位アドレス<31:13>はキャッシュ
タグ11のエントリ領域に格納され、下位アドレス<1
2:4>によって指定されたエントリ領域から、タグ情
報(命令タグ又はデータタグ)として取り出される。こ
れらのタグ情報(キャッシュデータの上位アドレス)
は、命令・一致検出部15やデータ・一致検出部16に
よってプロセッサからの上位アドレス<31:12>と
の一致がとられる。そして一致したときに、そのタグ情
報を取り出したエントリ領域に対応する記憶ブロックか
ら、命令をフェッチしたり、データをロードしたりす
る。但し、記憶ブロックに格納されている命令又はデー
タは4個のサブブロック(a、b、c、d)から構成さ
れているので、サブブロック(ワード)を選択するため
に、命令・ワードセレクト部17やデータ・ワードセレ
クト部18において、命令アドレスやデータアドレスの
<3:2>を用いたワードセレクトを実行する。
【0018】以上のように、本実施例では、命令の下位
アドレスを<11:4>とすると、この8ビットで表現
できる数の範囲が0〜255であるから、キャッシュタ
グ11を構成する512個のエントリ領域のうち、0番
目から255番目までの256個を命令用に割り当てる
ことができ、これらのエントリ領域に対応する記憶ブロ
ックも、同様にして0番目から255番目までの256
個を命令用に割り当てることができる。また、データの
下位アドレスを同じく<11:4>とすると、上記と同
様に、キャッシュタグ11を構成する512個のエント
リ領域のうち、512番目から256番目までの256
個をデータ用に割り当てることができ、これらのエント
リ領域に対応する記憶ブロックも、同様にして511番
目から256番目までの256個をデータ用に割り当て
ることができる。
【0019】したがって、命令とデータの下位アドレス
のビット数を調節するだけで、命令キャッシュとデータ
キャッシュへの割り当て容量を相補的(一方が増大する
と他方が同量だけ減少する関係)に変更することがで
き、様々な処理用途に柔軟に対応できるキャッシュサブ
システムを提供できる。ちなみに、図3は命令の下位ア
ドレスをビット4からビット12までの9ビット(上記
の例よりも1ビット多い)とすると共に、エントリ領域
のサイズを19ビット(上記の例よりも1ビット少な
い)とした例である。9ビットで表現できる数の範囲は
0から511までであるから、この場合、512個のエ
ントリ領域の全てを命令タグ格納用とすることができ、
したがって、キャッシュメモリ12を専ら命令キャッシ
ュとして使用することができる。かかる一方的な割り当
ては、例えば命令フェッチが頻繁に発生し、且つデータ
ロードが極めて少ない処理用途に好適である。なお、こ
の例では、命令に対する一方的な割り当てとしている
が、データに対しても同様に行い得ることは言うまでも
ない。
【0020】
【発明の効果】本発明によれば、命令のキャッシュ容量
とデータのキャッシュ容量を変えることができ、様々な
処理用途に柔軟に対応できるキャッシュサブシステムを
提供できる。
【図面の簡単な説明】
【図1】一実施例の概念構成図である。
【図2】一実施例の命令及びデータフォーマット図であ
る。
【図3】一実施例の他の概念構成図である。
【図4】統合型キャッシュサブシステムの概略図であ
る。
【図5】分離型キャッシュサブシステムの概略図であ
る。
【符号の説明】
10:記憶空間 11m:エントリ領域 12m:記憶ブロック 13:命令・エントリ指定部 14:データ・エントリ指定部

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】1対1に対応付けられたn個の記憶ブロッ
    クとn個のエントリ領域とを有する記憶空間と、 命令アドレスの内容に基づいて1つのエントリ領域を指
    定する命令・エントリ指定部と、 データアドレスの内容に基づいて1つのエントリ領域を
    指定するデータ・エントリ指定部と、を備え、指定され
    たエントリ領域に対応する記憶ブロックから命令または
    データを取り出すキャッシュサブシステムであって、 前記命令・エントリ指定部は、命令アドレスが最小値の
    ときに0番目のエントリ領域を、また最大値のときにn
    −1番目のエントリ領域を指定し、 前記データ・エントリ指定部は、データアドレスが最小
    値のときにn−1番目のエントリ領域を、また最大値の
    ときに0番目のエントリ領域を指定することを特徴とす
    るキャッシュサブシステム。
  2. 【請求項2】前記命令・エントリ指定部は、命令アドレ
    スが最小値のときにn−1番目のエントリ領域を、また
    最大値のときに0番目のエントリ領域を指定し、 前記データ・エントリ指定部は、データアドレスが最小
    値のときに0番目のエントリ領域を、また最大値のとき
    にn−1番目のエントリ領域を指定することを特徴とす
    る請求項1記載のキャッシュサブシステム。
JP4008752A 1992-01-21 1992-01-21 キャッシュサブシステム Pending JPH05197622A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4008752A JPH05197622A (ja) 1992-01-21 1992-01-21 キャッシュサブシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4008752A JPH05197622A (ja) 1992-01-21 1992-01-21 キャッシュサブシステム

Publications (1)

Publication Number Publication Date
JPH05197622A true JPH05197622A (ja) 1993-08-06

Family

ID=11701662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4008752A Pending JPH05197622A (ja) 1992-01-21 1992-01-21 キャッシュサブシステム

Country Status (1)

Country Link
JP (1) JPH05197622A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100481849B1 (ko) * 2001-12-04 2005-04-11 삼성전자주식회사 용량 변경이 가능한 캐쉬 메모리 및 이를 구비한 프로세서칩
US7539823B2 (en) 2004-09-14 2009-05-26 Panasonic Corporation Multiprocessing apparatus having reduced cache miss occurrences

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100481849B1 (ko) * 2001-12-04 2005-04-11 삼성전자주식회사 용량 변경이 가능한 캐쉬 메모리 및 이를 구비한 프로세서칩
US6954827B2 (en) 2001-12-04 2005-10-11 Samsung Electronics, Co., Ltd. Cache memory capable of selecting size thereof and processor chip having the same
US7539823B2 (en) 2004-09-14 2009-05-26 Panasonic Corporation Multiprocessing apparatus having reduced cache miss occurrences

Similar Documents

Publication Publication Date Title
US4835734A (en) Address translation apparatus
US5721874A (en) Configurable cache with variable, dynamically addressable line sizes
US5313611A (en) Method and apparatus for maintaining a lookup table for storing function values
US6381668B1 (en) Address mapping for system memory
US5018061A (en) Microprocessor with on-chip cache memory with lower power consumption
US5537576A (en) Expandable memory for a digital signal processor including mapped first and second memory banks forming a continuous and contiguous address space
KR100304779B1 (ko) 다방향연상기억방식의캐시메모리
JPH05197622A (ja) キャッシュサブシステム
US20020103977A1 (en) Low power consumption cache memory structure
KR960008320B1 (ko) 어드레스 변환장치 및 어드레스 변환방법
US7124261B2 (en) Access to bit values within data words stored in a memory
JPS5844263B2 (ja) 記憶制御回路
JPH01233537A (ja) キャッシュメモリを備えた情報処理装置
US6674441B1 (en) Method and apparatus for improving performance of an accelerated graphics port (AGP) device
US6742077B1 (en) System for accessing a memory comprising interleaved memory modules having different capacities
US5933856A (en) System and method for processing of memory data and communication system comprising such system
JPH04153753A (ja) キャッシュメモリ制御方式
JPH0421222B2 (ja)
JPS5847784B2 (ja) キ−記憶システム
JPS6349771Y2 (ja)
US20050240715A1 (en) K-way direct mapped cache
KR20010085562A (ko) 데이터 랜덤 액세스 메모리를 사용하는 다양한 사이즈의마이크로컨트롤러를 위한 강제 페이지 페이징 방법
JPS6349772Y2 (ja)
JPS6149249A (ja) 記憶装置のインタリ−ブ制御方式
JPH1091527A (ja) 記憶装置および記録媒体

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20011009