JPH01187653A - キヤツシユシステム - Google Patents

キヤツシユシステム

Info

Publication number
JPH01187653A
JPH01187653A JP63011223A JP1122388A JPH01187653A JP H01187653 A JPH01187653 A JP H01187653A JP 63011223 A JP63011223 A JP 63011223A JP 1122388 A JP1122388 A JP 1122388A JP H01187653 A JPH01187653 A JP H01187653A
Authority
JP
Japan
Prior art keywords
cache
data
cpu
address
memory system
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
JP63011223A
Other languages
English (en)
Inventor
Akira Yamada
朗 山田
Tatsuo Yamada
山田 達雄
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP63011223A priority Critical patent/JPH01187653A/ja
Priority to GB8828558A priority patent/GB2214670B/en
Priority to DE3842100A priority patent/DE3842100C2/de
Publication of JPH01187653A publication Critical patent/JPH01187653A/ja
Priority to US07/734,088 priority patent/US5185879A/en
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野」 この発明は、キャッシュミス時のメモリへのアクセス時
開の高速化を図ったキャッシュシステムに関する。
〔従来の技術j @1図はキャッシュシステムの一例トシテCPU、キャ
ッシュ周辺部を示した構成説明図である。
この例では、CPUIからの単一データのREADアク
セスに対してキャッシュ2がキャッシュミス時に、メモ
リシステム3から複数のデータを転送するブロック転送
鳴−ドでしかメモリシステム3とアクセスしない場合の
構成を示す。この図は、三菱電照の山田により日本特許
として同時出願中(API9408)のものである。
同図においてCPUI、キャッシュ2とシステム/(ス
8B闇の共通のインタフェーストシテシステムバスバツ
ファ6を投けCいる。これらの1mKおける信号は制御
信号、アドレス信号、7′−夕信号に大別でき、iIJ
#信’i3 SCaはCPUI、 キャッシュ2.デー
タ376間の双方向共通信号信りとして利用される。一
方、CPU1がパスマスタの時のみ使用する制御信’i
3 scbはCP、Ul、キャッシュ聞及びCPUI、
 77レチプレクサ7間の双方向信号として利用され、
キャッシュ2がバスマスタの時のみ使用する制御信gc
scbはキャッシュ2、ヤルチデレクサ7rviJの双
方自信りとして利用される。
マルチプレクサ7はキャッシュ2よリノマlレチプレク
サ制御信号SCIに従い、出力の際、制御信ちscb 
、制御信らC3CbのいずれかをNIJal信号8Cc
としてシステムバスバッファ6に伝え、入力の際、シス
テムバスバッファ6からの制御信うsCcを同じくマル
チプレクサ制御信j)SC1に従い制御信号SCbとし
てCPUIに、あるいは制御信!cscbとしてキャッ
シュ2に伝える機能を備えている。
5Cci;iシステムバスバッファ6からCPUIとキ
ャッシュ2に共通に入力される制御信号で。
この例では、メモリシステム3からのレディ信号を含む
。また、SCdはキャッシュ2からCPU1への再読み
出し要求信号、SCeは、キャッシュからメモリシステ
ム3への動作許可信号である。
アドレス信1iJAD lはCPUl−キャッシュ2、
CPUI→システムバスバッファ6に伝えられる信号で
あり、CPUIがパスマスタの時のみ使用するアドレス
信号AD2はCPU→キャッシュ2、CPUl−マルチ
プレクサ8に云えられる信号、キャッシュ2がバスマス
タの時のみ使用するアドレス信!1tcAD2はキャッ
シュ2→マルチプレクサ8に云えられる信号として働く
マIレチプレクサ8はキャッシュ2よりのマIレチデレ
クサ制御信号SC2に°従い、アドレス信号AD2.C
AD2のどちらか一方をアドレス信号AD3としてシス
テムパスバッファ6に出力する機能を備えている。
なおデ′−タ信うSDは、CPUI、  キャッシュ2
、システムバスバッファ6間において双方向共通信号と
して利用されている。また、−はCPU1、キャッシュ
2に与えられるクロックである。
このような構成において、CPUIがキャッシュ2を使
用しない場合(ケースl)とcpu tがキャッシュ2
を使用し、キャッシュミスが生じた場合(ケース■)を
対比させて説明する。
まず、CPUIがキャッシュ2を使用せず、図示しない
メモリシステム3からの読み出し動作について説明する
(ゲースエ)。このとき%CPU1は単一デ°−夕の読
み出しを仮定する。CPU 1は、制御信号SCaによ
りキャッシュ2の読み出し動作を禁止し、メモリシステ
ム3からの読み出しを許可する。読み出すべきアドレス
は、ADIとAD2より出力され、ADlはそのままシ
ステムパスバッファ6に出力され、AD2は!IJal
tl信りSC2により制御されマルチプレクサ8を通シ
テシステムパスバッファ6へAD2の値がAD3として
出力される。
メモリシステム3からのレディ信’jは、Vステムバス
BB、システムパスバッファ6、w+t1mM@SCc
を通じマルチプレクサ7に送られる。マルチプレクサ7
は制御信gsctにより制御され、制御信らSCcに含
まれたレディ信号は制御信9SCbにaカされCPUI
に送られる。
メモリシステム3よりのガータは、システムパスSB、
システムパスバッファ6、ガータies Dを通じてC
PU lに送られレディ信号受付後にCPUIに取り込
まれる。
次に、CPU1がキャッシュ2を使用し、キャッシュミ
スが生じた場合(ケースn)のメモリシステム3のアク
セス法について説明する。本例では、前述したようにC
PUIが単一のガータでしか読み出しをせず、キャッシ
ュ2はキャッシュミス時にブロック転送モードでしかメ
モリシステム3をアクセスしない場合を仮定してhる。
CPU1は、制御信jJscaを用いてキャッシュ2の
動f′Ft−fWqL、メモリシステム3の動作を禁止
する。
アドレスADIに対するガータが、キャッシュ2内にな
いことがわかるとキャッシュ2は、CPU1に再読み出
しを要求し、またメモリシステム3に対して制御信うS
CeによりwJ作の許可を行う。
次のサイクルでCPUIはキャッシュ2からの再読み出
し要求信号に対応して再読み出し動作を行う。
とのCPUIの読み出し!+121作は単一テ°−夕の
読み出しである。この時キャッシュ2が、?fiのガー
タをメモリシステム3より受信する2種類の方法につい
て以下に説明する。
l)説明の都合上アドレス信’8ADLを上位30ビツ
トとアドレス信53hD2を下位2ビツトとすル、 c
 P U IJE指定した1つのデータのアドレスをA
O+2とし、キャッシュ2はAO+2を含むAO,AO
+L、AO+2.AO+3.(D4りcDダデーの転送
をメモリシステム3に要求していると仮定する。なお%
AOは下位2ビツトのアドレス信号AD2が00である
とする。
キャッシュ2の再読み出し要求に対してCPU1より出
力されたアドレスは、AO+2を示している。この時シ
ステムパスバッファ6へ送られるアドレスは上位30ビ
、ットをアドレス信号ADlで早見られ、下位2ビツト
は、キャッシュ2よりの制御信jJ s c 2により
制御されるマルチプレクサ8によりキャッシュ2からの
アドレス信号CAD2がアドレス信55AD3に送られ
、システムパスバッファ6に至る。この時アドレス信5
3cAD2は、00を示している。このアドレスAOK
対応したメモリシステム3からのレディ信すは、システ
ムパヌSE、システムパスバツ7ア6、制御信号SCc
を通り、キャッシュ2からの制御信9SCIにより制御
されたマルチプレクサ7により制御信号C3Cbを通し
てキャッシュ2に送られる。7−′−夕は、データイ言
号SDよりキャッシュ2に取り込まれる。キャッシュ2
は決りの3つのガータと転送するために、再び再読み出
し要求信号SCdにより再読み出し要求を出す。そのた
めCPUIは、アドレスAOに対応するf−夕を取り込
まずに再びアドレスAO+2のアドレスのテ゛−タを読
み出しを行う。この時、キャッシュ2はアドレス信jl
cAD2のアドレスを01に変更して同様にAO+1の
データを取り込む。キャッシュ2は、ブロック転送の取
り込みに必要なガータか揃うまで同様にデータ収り込み
を続ける。キャッシュ2へのデータの読み出しが完了す
るとキャッシュ2は、再び再読み出し要求を行い、CP
UIはそれに対応してアドレスAO+2に対応するデー
タの読み出しを行う。この時、アドレス信9hD2には
制御信号SC2に対応したマルチプレクサ8の靭縄によ
りCPUIからのアドレス信l8AD2が出力されメモ
リシステム3よりアドレスA()+2のデータはデータ
信号SDよりC,P U lへ、レディ信9は、システ
ムパス9B、システムパスバッファ6 、 !II御信
号SCcを通ってCPUIに収り込まれる。
2)第2の方法について以下に説明する。CPU1がキ
ャッシュ2を使用し、キャッシュミスか生じた場合(ケ
ースIn)CPUIは、制御信号scaを用いてキャッ
シュ2の動作を許可し、メモリシステム3の動作を禁止
する。アドレスADIに対するデータが、キャッシュ2
内にないことがわかるとキャッシュ2は、CPUIに再
読み出しを要求し、またメモリシステム3に対して制御
信号SCeにより動作の許可を行う。次のサイクルでC
PUIはキャッシュ2からの再読み出し要求信号に対応
して再読み出し動作を行う。キャッシュ2の再読み出し
要求に対してCPUIより出力されたアドレスは、AO
+2を示している。この時システムバスバッファ6へ送
られるアドレスハ上位30ビットをアドレス信!ADI
で与えられ、下位2ビツトは、キャッシュ2よりの制御
信tsC2により制御されるマルチプレクサ8によりキ
ャッシュ2からのアドレス信l8CAD2がアドレス信
号AD3に送られ、クステムパスパツファ6に至る。こ
の時アドレス信号CAD2は、OOを示している。この
アドレスAOに対応したメモリシステム3からのレディ
信号ハ、システムパスSB、システムパスパッ7ア6、
制御信198ccを通り、キャッシュ2からの制御信号
SCIにより制御されたマルチプレクサ7によりI+J
m信号csCbを通してキャッシュ2に送らスする。デ
ータは、データ信9SDよりキャッシュ2に取り込まれ
る。なおこの時レテ゛イ信号はキャッシュ2にのみ転送
され、キャッシュ2からしfイ信らをCPU1に送らな
い。このため、CPU lはWA工T状uKなりパスマ
スタはキャッシュ2になる。キャッシュ2は残りの3つ
のデータを転送するためにCPUIからの上位30ビツ
トのアドレス信’y3hDiはそのまよで、アドレス信
号CAD2−1Jhらマルチプレクサ8を通して4見ら
れるアドレス信号AD3の値をOlに変化させ、メモリ
システム3への制御信号を制御信号C3Cb、マルチプ
レクサ7、制御信号SCcを通じてメモリシステム3に
送信することによりアドレスAO+1のデータをキャッ
シュ2内に取り込む。同様にアドレス信ちCAD2を変
化することによりAO+2.AO+3のデータを取り込
んだ後、マルチプレクサ8を切り霞え、アドレス信jt
AD2’を転送し、CPU1の指定したアドレスAO+
2fシステムバスバッファ6に送る。メモリシステム3
よりのアドレスAO+2に対応するデータはデータ信号
SDよりCPUIへ、レテ°イ信ちは、システムパスS
B、システムバスバッファ6、IIJIIIII信”1
sccヲ通ってCPU 1に取り込まれる。
以上、第1図を用いて従来例において、CPU1の単一
データアクセスに対しキャッシュミスし、キャッシュ2
がメモリシステム3より複数のブロックを転送する際に
キャッシュ2に必要な4つのデータを終了後、CPU 
lが指定したアドレスを再びアクセスすることによりデ
ータ転送を行うという従来例の動作を第1図を用いて説
明した。
以下にCPU 1からのREAD動作に対してキャツシ
ュミヌシた際のメモリシステム3からキャッシュ2への
データ転送方法について第6図を用いて詳しく説明する
第6図においてlot、102,103,104は、そ
れぞれアドレスA O,A O+ l、  A O+2
、AO+3に対応するメモリシステム3内のデータを示
しているa 105は、アドレスAO,AO+l、AO
+2.AO+3のデータを合むテ゛−タのブロック。1
07.108.109.110は、それぞnキャッシュ
内のデータメモリ、  106は、107,108,1
09,110を含む1つのデータプロツクを示す、この
例では%CPU1は、AO+2のアドレスを指定してい
るが、キャッシュミスしたキャッシュ2は、メモリシス
テム3よりアドレスAO,AO+l、AO+2.AO+
3の順でアクセスし、データ101,102.103,
104とキャッシュメモリの107、tOS、109,
110に■−■の順序で格納し、その後CPULにCP
UIがアクセスを行ってい6A 13 +2アドレスを
データ103とCPU 1に格納する(順序■)。この
ため5回Of−夕のアクセスが行われていた。
また、他の従来例として日本特許公開昭54−1286
36におけるCPUからのRE AD動乍に対しくキャ
ッシュミスした際のメモリシステムからキャッシュへの
デ−タ転送方法について第7図を用いて説明する。
第7図において101,102,103,104は、そ
れぞれアドレスAO,AO+l、AO+2、AO+3に
・対応するメモリシステム3内のデータを示している。
105は、アドレスAO,AO+l、AO+2.AO+
3のデータを含むデータのブロック。107,108,
109,110は、それぞれキャッシュ内のデータメモ
リ、106は、107.108.109.110を含む
1つのデ゛−タブロックを示す。この例では、CPU1
は、A 11 + 2のアドレスを指定したとすると。
ギャツシュミスシタキャッシュ2は、メモリシステム3
よりアドレスAO+2を最初ICcPUに転送する(順
序■)。その後、アドレスAO,AO+l、AO+2.
AO+3の順でアクセスし、データ101,102,1
03,104をキャッシュメモリの107.108.1
09.110に■−■の順序で格納する。このため5回
のテ°−夕のアクセスが行われていた。
[発明が解決しようとする課題j 上述の2つのものは、CPUからの単一データのREA
Dアクセスに対してキャッシュがキャッシュミスL7’
Cl1eに、キャッシュがメモリシステムから複数のデ
ータを転送するブロック転送上−ドでしかメモリシステ
ム3をアクセスしない場合に、メモリシステムからキャ
ッシュへのデータ転送を最小回数で行うことかできなか
った。
〔課題を解決するための手段] この発明におけるギャツVユシステムハ、CPUからの
単一データのREADアクセスに対してキャッシュがキ
ャッシュミスした時に、キャッシュがメモリシステムか
ら複数のテ°−タt−転送するブロック転送モードでし
かメモリシステム3をアクセスしない場合に、CPUが
指定したアドレスの次のアドレスのデータをjIi初に
メモリシステムからCPHに伝送し、その後ラウントロ
ピン的にアドレスを変化させてテ°−夕を転送し、最後
にCPUが指定しキャッシュミスしたアドレスのデータ
をキャッシュとCPUに並列に転送する。
〔作用」 この発明におけるキャッシュミスシステムは。
CPUからの単一データのREADアクセスニ対してキ
ャッシュがキャッシュミスした時に、キャッシュがメモ
リシステムから複数のデータを、転送するブロック転送
モードでしかメモリシステム3をアクセスしない場合に
、CPUが指定したアドレスの次のアドレスのデータを
最初にメモリシスT ムカG) CP Uに転送し、そ
の後フランドロビン的にアドレスを変化させてデータを
転送し、最後にCPJ>j指定しキャッシュミスしたア
ドレスのデータをキャッシュとCPUに並列に転送する
こトニより、メモリシステムからキャッシュへのデータ
転送を最小回数で行うことが可能となる。
〔実施例J 本発明の実施例を第1図と第2図を用いて説明する。第
1図はキャッシュシステムの一例トシてCPU、 キャ
ッシュ周辺部を示した構成説f!A図である。この例で
は、CPU1からの単一データのREADアクセスに対
してキャッシュ2がキャッシュミス時に、メモリシステ
ム3から複数のデータを転送するブロック転送モードで
しかメモリシステム3をアクセスしない場合の構成を示
す。なお、第1図は、従来例で示した構成図であるが、
その制御方法が異なる。以下に、その動作について説明
する。
同図においてCPU 1.キャッシュ2とシステAt<
スBBfflJの共通のインタフェーストシてシステム
パスバッファ6を設けている。これらの間における信号
は制御信号、アドレス信号、7′−夕信号に大別でき、
iH信9SCa#−i″c p U l + キャッシ
ュ2.′データパス6間の双方向共通制御信号として利
用される。一方、CPUIがバスマスタの時のみ使用す
る制御信t5scbはCPUI、キ’r’) V−”I
WJ及UCP U l、 マルチプレクサ7間の双方向
信号として利用され、キャッシュ2がバスマスタの時の
み使用する制御信号C3Cbはキャッシュ2.マルチプ
レクサ7間の双方自信9として利用される。
マルチプレクサ7はキャッシュ2よりのマIレチプレク
サ制御信号5CIK従い、出力の際、制御信号SCb、
制御信うC3Cbのいずれかを制御信@ s c cと
してシステムバスバッファ6に伝、t、入力の際、シス
テムパスバッファ6からの制御信号SCcを同じくマル
チプレクサ制御信うSC1に従い制御信!SCbとして
CPUIに、あるいは制御信ちC3CI)としてキャッ
シュ2に云える機能を備えている。
SCc[システムパスバッファ6からCPUIとキャッ
シュ2に共通に入力される制御信号で、この例では、メ
モリシステム3からのレテ゛イ信らを含む。また、SC
dはキャッシュ2からCPU1への再読み出し要求信号
、SCeは、キャッシュからメモリシステム3への動f
1g許可信号である。
アドレスmLADlはCPU l−キャッシュ2、CP
UI→システムパスバッファ6に伝えられる信らであり
、CPUIがバスマスタの時のみ使用するアドレス信号
AD2はCPUl−キャッシュ2.CPUl−マルチプ
レクサ8に伝えられる信号、キャッシュ2がバスマスタ
の時のみ使用スるアドレス信1i1cAD2はキャラ。
シュ2−*マ〃チデレクサ8に伝えられる信号として働
く。
マルチプレクサ8はキャッシュ2よりのマルチプレクサ
制御信号SC2に従い、アドレス信すAD2.CAD2
のどちらか一方をアドレス信号AD3としてシステムパ
スバッファ6に出力する機能を備えている。
なおデータ信9SDは、CPUI、キャッシュ2、シス
テムバスバッファ6間においC双方向共通信りとして利
用されている。また、−はCPU1.キャッシュ2に与
えられるクロックである。
このような構成においC%CPU Lがキャッシュ2を
使用しない場合(ケースエ)とCPUIがキャッシュ2
を使用し、キャッシュミスが化シタ場合(ケース■)を
対比させて説明する。
まず、CPUIがキャッシュ2を使用せず1図示しない
メモリシステム3からの読み出し動作について説明する
(ケースl)。このとき、CPU1は単一データの読み
出しを仮定する。CPUIは、制御信号5CaKよりキ
ャッシュ2の読み出し動作を禁止し、メモリシステム3
からの読み出しを許可する。読み出すべきアドレスは、
ADIとAD2より出力され、ADIはそのままシステ
ムパスバッファ6に出力され、AD2は制御信りSC2
により制御されマルチプレクサ8を通してシステムパス
バッファ6へAD2の値がAD3として出力される。
メモリシステム3からのレディ信号は、システムバス8
B、システムバスバッフ76、利IHJM号SCcを通
じマルチプレクサ7に送られる。マルチプレクサ7は制
御信うSCIにより制御され、制御信9s Caに含ま
れたレディ信号は制御信号scbに出力されCPU I
K送られる。
メモリシステム3よりのデータハ、システムバスSB、
システムパスバッファ6、データ信@sDを通じてCP
UIに送られレディ信号受付後にCPULに取り込まれ
る。
次に、CPUIがキャラツユ2を使用し、キヤ’/!’
−1スが生eた場合(ケースII)のメモリシステム3
のアクセス法について説明する。本例では、前述したよ
うにCPU Lが単一のテ′−夕でしか読み出しをせず
、キャッシュ2はキャッシュミス時にブロック転送モー
ドでしかメモリシステム′3をアクセスしない場合を仮
定している。CPU1は、制御信jsscaを用いてキ
ャッシュ2の動作と許可し、メモリシステム3の動作を
禁止する。
アドレスADIに対するデータが、キャッシュ2内にな
いことがわかるとキャッシュ2は、CPU1に再読み出
しを要求し、またメモリシステム3に対して制御信りS
Ceにより動作の許可を行う。
次のサイクルでCPUIはキャッシュ2からの再読み出
し要求信号に対応して再読み出し動作を行う。
このCPUIの読み出し動作は単一データの読み出しで
ある。この時キャッシュ2か、複数のデータをメモリシ
ステム3より受信する2種類の方法について以下に説明
する。
l)説明の都合上アドレス信5jADlを上位30ピツ
トとアドレス信8AD2を下位2ビツトとする。CPU
Iが指定したlりのデータのアドレスをAO+2とし、
キャッシュ2はAO+2を含むAO,AO+l、AO+
2.AO+3の4つのダークの転送をメモリシステム3
に要求していると仮定する。なお、AOは下位2ビツト
のアドレス信18AD2か00であるとする。
キャッシュ2の再読み出し要求に対してCPU1より出
力されたアドレスは、AO+2を示している。この時シ
ステムバスバッファ6へ送られるアドレスは上位30ビ
ツトをアドレス信号ADI′  で与えられ、下位2ビ
ツトは、キャッシュ2よりの制御信’8BC2により制
御されるマルチプレクサ8によりキャッシュ2からのア
ドレス信号CAD2がアドレス信υAD3に送られ、シ
ステムパス/<ツファ6に至る。この時アドレス信9C
AD2は、11を示している。
このアドレスは、CPU lが指定したアドレスAO+
2をインクリメントしたアドレスAO+3を示している
。このアドレスA O+ 3 KME Lりfiメモリ
システムからのレダイ信りは、Vステムパス8B、シス
テムバスバッファ6、制御信号5caft通り、キャッ
シュ2からの制御信号5CIKよ6制御されたマルチプ
レクサ7により制御信号C3Cbを通してキャッシュ2
に送られる。データは、テ゛−タ信号SDよりキャッシ
ュ2に取り込まれる。キャッシュ2は残りの3つのデー
タを転送するために、再び再読み出し要求信’8sca
により再読み出し要求を出す。そのためC!PUIは、
アドレスAUに対応するデータを取り込まずに再びアド
レスAO+2のアドレヌデータヲ読み出Lf行う。この
時、キャッシュ2はアドレス信すCAD2のアドレスを
インクリメントしてさら釦次のアドレスをアクセスする
。なお、インクリメントする際、アドレスかブロック内
アドレスの最上位アドレスの次は最下位アドレスに移る
。コノ順序のアクセスをここではラウントロピン方式の
アクセスと呼ぶ。このためキャッシュ2のアドレス信号
CAD2はOOとなり、AOのデータを取り込む。キャ
ッ、Vユ2は、ブロック転送の取り込みに必要なデータ
が揃うまでデータ取り込みを続ける。キャッシュ2への
データの続み出しの最後は、CPU1が指定したアドレ
スAQ+2に対するf−夕の転送である。
最後のテ゛−タ転送のためにキャッシュ2は、再び再読
み出し要求を行い、CPUIはそれに対応してアドレス
AO+2に対応するデータの読み出しを行う。このアド
レスAO+2に対応し九メそりシステム3からのレディ
信号は、システムパスSB、シスデムパスバツファ6.
1lJal信号s c aを通り、キャッシュ2からの
制御信号5CIKより制御されたマルチプレクサ7によ
り制御信53cSCbを通してキャッシュ2に送られる
。データは、データ信’j5EIDよりキャッシュ2に
取り込まれる。その後、キャッシュ2はCPUIKレデ
ィ信1tscbを送ることにより、CPULはAO+2
に対応したデータを取り込む、このとき当然キャッシュ
2はcpatに再読み出しを要求しない。
なお、CPUIが指定したアドレスAO+2のアクセス
時のレディ信号をCPUIとキャッシュ2で並列的に受
信するようにシステム構成してもCPU lとキャッシ
ュ2にアドレスAO+2に、対応するデータを並列に取
り込むことができる。
2)第2の方法について以下に説明する。CPU1がキ
ャッシュ2を使用し、キャッシュミスが生じた場合(ケ
ース71 )CPUIは、制#信りSCaを用いてキャ
ッシュ2の動作を許可し、メモリシステム3の動作を禁
止する。アドレスADIに対するデータが、キャッシュ
2内にないことがわかるとキャッシュ2は、CPU l
に再読み出しを要求し、またメモリシステム3に対して
制御信号SCeにより動作の、f町を行う。次のサイク
lしでCPU lはキャッシュ2からの再読み出し要求
信号に対応して再読み出し動作を行う、キャッシュ2の
再読み出し要求に対してCPU tより出力されたアド
レスは、AU +2を示している。この時システムパス
バッファ6へ送られるアドレスハ上位30ビットをアド
レス信9ADlで与えられ、下位2ビツトは、キャッシ
ュ2よりの制御信8SC2により制御されるマルチプレ
クサ8によりキャッシュ2からのアドレス信号CAD2
がアドレス信5MAD3に送られ、システムバスバッフ
ァ6に至る。この時アドレス信! CA、D 2は、1
1を示している。このアドレスAO+3に対応したメモ
リシステム3からのレディ信号は、システムパスSB%
システムバスバッファ6、MJalJm5jsr:cf
通り、キャッシュ2からのIIJ御信りSCIによす制
卸されたマルチプレクサ7により制御[C8Cbを通し
てキャッシュ2に送られる。データは、データ伯′;3
SDよりキャッシュ2に取り込まれる。なおこの時レテ
°イ信9はキャッシュ2にのみ転送され、キャッシュ2
からレディ信号をCPUIに送らない。このため、CP
U lは°WAIT状aKなりバスマスタはキャッシュ
2になる。
キャッシュ2はIAりの3つのガータを転送するために
CPU、Lからの上位30ビツトのアドレス信すADI
はそのままで、アドレス信号CAD2からマルチプレク
サ8を通して4見られるアドレス信@AD3の値をOO
に変化させ、メモリシステム3への制御信号を制御信’
8C8Cb、マルチプレクサ7、制御信号SCcを通じ
てメモリシステム3に送信することによりアドレスAO
のデータをキャッシュ2内に取り込む。ここでも、l)
で述べたようにブロックアドレス内でラウントロピン方
式でアクセスを行うため、AO+3アドレスの次KAO
アドレスのガータをアクセスする。同様にアドレス信”
8cAD2を変化することにより八〇+l、AQ+2の
データを取り込む。アドレスAO+2はC!PUIで指
定されたアドレスであるため、キャッシュ2はCPUI
にレダイ信うscbを送ることにより、CPUIはAO
+Zに対応したガータを取り込む。このとき当然キャッ
シュ2はCPUIに再読み出しを要求しない。
なお、CPUIか指定したアドレスAO+2のアクセス
時のレディ信うをCPUIとキャッシュ2で並列的に受
信するようにシステムa成してもCPU1とキャッシュ
2にアドレスAO+2(C対応するガータを並列に取り
込むことができる3このように、との例でもCPULが
指定したアドレスのデ°−夕を最後にメモリシステム3
かうcPUIとキャッシュ2とに並列的にガータを転送
する。
以上、第1図全周いて一実施例における、CPU1の単
一データアクセスに対しキャッシュミスし、キャッシュ
2がメモリシステム3よす複数の7”0ツクを転送する
際にキャッシュ2KCPULが指定し、そのアドレスを
ブロックアドレス内で循環的に1つインクリメントした
アドレスのデータを最初に転送し、同様の順序で残りの
ガータを転送し、最後にCPUIが指定したアドレスに
対応するガータをCPUIとキャッシュ2に並列的に転
送することにより最小回数でデータ転送が可能であるこ
とを第1図を用いて説明した。以下にCPU lからの
REhDm作に対してキャッシュミスした際のメモリシ
ステム3からキャッシュ2へのテ°−タ転送方法につい
て第2図を用いて詳しく説明する。
第2図において101,102,103,104は、そ
れぞれアドレスAO,AO+1.  Ao+2、AO+
3に対応するメモリシステム3内のガータを示している
。105は、アドレスAO,AO+ L、 A O+2
. A O+ 3のガータを含むデ°−タのブロック。
107,108,109,110は、それぞれキャッシ
ュ内のガータメモリ、1゜6は、107,108,10
9,110を含む1つのテ゛−タブロックを示す。
この例では、CPU tは、AQ+2のアドレスを指定
している。この時をヤツシュミスL7’Cキャツ&ユ2
ii、CP U Lが指定したアドレスをインクリメン
トし、そのアドレスのガータを最初に転送する。その後
、CPU lかアクセスしたテ゛−タの次アドレスをキ
ャッシュ2に読み込み次からはブロック内アドレスを増
加させブロック内の最上位アドレスの次は、最下位アド
レスをアクセスする。このアクセス方法をここでは、ラ
ウントロピン方式、!−呼ぶ。このように、メモリシス
テム3よリアドL/スAO+3.AO,AO+1.AO
+2の順でアクセスし、データ104.101% 10
2をキャッシュメモリの110% 107.108に■
−■の順序で格納し、その後CPU IJccPUlか
アクセスを行っているAO+2アドレスをデータ103
をCPU lとキャッシュ2に並列に格納する(順序■
)。このように、CPUがらの単一データのREADア
クセスに対シてキャッシュがキャッシュミスした時に、
キャッシュがメモリシステムから複数のデータを転送す
るブロック転送上−ドでしかメモリシステム3をアクセ
スしない場合に、メモリシステムからキャッシュへのデ
ータ転送を最小回数で行うことが可能となった。
次に、本発明の他の実施例を第3図を用いて説明する。
第3図において101%102.103.104は、そ
れぞれアドレスAO,AO+l。
AO+2.AO+3に対応するメモリシステム3内のデ
ータを示している。105は、アドレスAO,AO+l
、AO+2.AO+3(DT”−fiを含むデータのブ
ロック、107,108.109゜110は、それぞれ
キャッシュ内のデータメモリ、106は、107,10
8,109,110を含む1つのテ°−タプロックヲ示
ス。
この例では、CPUIで指定されたアドレスAO+2t
−Ji初にアクセスし、データ103をメモリシステム
3からCPUIとキャッシュ内のデータメモ!7109
に並列に格納する(順序■)。
その後キャッシュ2に必要ナデータto4、t。
1.102をメモリシステム3よリラウンドロビン方式
のアクセスでキャッシュのデータメモリ110%107
.108に■から■の順序で読み込む、なお、最初のC
PUIへのデータが格納された後のCPUIの動作は、
CPUIをWA工Tさせるか、CPUIにアドレスAO
+2のデータを用いて動作させるかであるが、これは、
キャッシュからの制御信号SCaにより制御を行う。
このように、CPUからの単一データのREADアクセ
スに対してキャッシュがキャッシュミスした時に、キャ
ッシュがメモリシステムかう複数のデータを転送するブ
ロック転送モードでしかメモリシステム3をアクセスし
ない場合に、メモリシステムからキャッシュへのデータ
転送を最小回数で行うことが可能となった。
次に1本発明の他の実施例について第4図を用いて説明
する。第4図において101,102゜103.104
は、それぞれアトI/スAO,AD+1.AO+2.A
O+3に対応するメモリシステム3内のデータを示して
いる。105は、アドレスAO,AO+l、AO+2.
AO+3のデ°−タを含むデータのブロック。107,
108,109.110は、それぞれキャッシュ内のテ
°−タメモリ、106は、107、tOS、109.1
10を含む1つのテ゛−タブロックを示す、この例では
、CPU lは、AO+2のアドレスを指定しており、
この時キャッシュミスしたキャッシュ2は、CPU1が
指定したアドレスをラウントロピン方式でダクリメント
したアドレスのデータ102を最初に転送し、同様に残
りのデータもラウントロピン方゛式のテ°クリメントの
順序で転送を続ける。つまり、メモリシステム3よりア
ドレスAO+L、AO,AO+3.AO+2の順で一ア
クセスし、データ102、iot% 104をキャッシ
ュメモリの108,107、tioに■−■の順序で格
納し、その後CPU lにCPU lがアクセスヲ行っ
ているAO+2アドレスをデータ103をCPU lと
キャッシュのデータメモリ109に並列に格納する(順
序■)。このように、CPUからの単一データのREA
DアクセスKNしてキャッシュがキャッシュミスした時
に、キャッシュがメモリシステムから4i数のデータヲ
転送f:6フc:1”)り転送モードでしかメモリシス
テム3をアクセスしない場合に、メモリシステムからキ
ャッシュへのデータ転送を最小回数で行うことが可能と
なった。
次に、本発明の他の実施例を第5図と用いて説明する。
第5図にThイテl 01.102,103.104は
、それぞれアトL/スAO,AO+l。
AO+2.AO+3に対応するメモリシステム3内のデ
ータを示しCいる。105は、アドレスAO,AO+l
、AO+2.AO+3’7)データを含むデータのブロ
ック。107.108,109、llOは、それぞれキ
ャッシュ内のデータメモリ、106は、1°07,10
8,109.1lOi合ひ1つのデータプロツクを示す
コノZJ t” ハ%CPUIで指定されたアドレスA
O+24−j&初にアクセスし、デ°−夕103をメモ
リシステム3からCPUIとキャッシュ内のダータメモ
リ109に並列に格納する(順序■)。
その後キャッシュ2に必要なデ°−夕102,1OL、
104をメモリシステム3よりフランドロビン方式のダ
クリメントの順序でアクセスしキャッシュのデータメモ
リ108,107.110に■から■の順序で読み込む
、なお、最初のCPUIへのデータが格納された後のC
PUIの動作は、CPUIをWA工Tさせるか、CPU
 lにアドレスAO+2のデータを用いて動作させるか
であるが、これは、キャッシュからの制御信号SCaに
より制御を行う。
このように、CPUからの単一データのREムDアクセ
スに対してキャッシュがキャッシュミスシタ時に、キャ
ッシュがメモリシステムから複数のデータを転送するブ
ロック転送セードでしかメモリシステム3をアクセスし
ない場合に、メモリシステムからキャッシュへのデータ
転送を最小回数で行うことがq能となった。
〔発明の効果」 この発明はCPUからの単一デ°−夕のREADアクセ
スに対してキャッシュがキャッシュミスしり時ニ、キャ
ッシュがメモリシステムかう複数のデータを転送するブ
ロック転送モードでしかメモリシステム3をアクセスし
ない場合に、CPUが指定したアドレスの次のアドレス
のデータを最初にメモリシステムからCPHに転送し、
その後ラウントロピン的にアドレスを灰化させてデータ
を転送し、最後にCPUが指定しキャッシュミスしたア
ドレスのデータをキャッシュとCPUに並列に転送する
ようにしたので、メモリシステムからキャッシュへのデ
ータ転送を最小回数で行うことがtv能となる。
4、図面の筒車な脱明 第1図は従来例とこの発明の説明のためにキャッシュシ
ステムのCPU、 キャッシュ8 辺部’t” 示した
ー構成説明図、第2図はこの発明の一実施例であるメモ
リシステムからキャッシュへの転送順序の説明図、第3
図はこの発明の一実施例であるメモリシステムからキャ
ッシュへの転送順序の説明図、第4図はこの発明の一実
施例であるメモリシステムからキャッシュへの転送順序
の説明図、第5図はこの発明の一実施例であるメモリシ
ステムからキャッシュへの転送順序の説明図、第6図ハ
従来のメモリシステムからキャッシュへの転送順序の説
明図、第7図は従来のメモリシステムからキャッシュへ
の転送順序の説明図である。
図におい′〔、lはCPU、2はキャッシュ、3はメモ
リシステム、6はシステムパスバッファ、7.8はマル
チプレクサ、ADI、AD2.CAD2.AD3はアド
レス信!、SDはデータ信号、SCa、SCb、C3C
b、 SCc、SCd。
SCeは制御信ち、−はクロック%SBはシステムパス
である。
なお、各図中同一符号は同一または相当部分を示す。

Claims (4)

    【特許請求の範囲】
  1. (1)少なくともCPUとキャッシュとキャッシュ外の
    メモリシステムから成るシステムにおいて、CPUから
    の読み出しに対してキャッシュがキャッシュミスし、メ
    モリシステムから複数のデータをブロック転送する際、
    CPUが指定したアドレスをブロックアドレス内で循環
    的に1つインクリメントし、そのアドレスのデータを最
    初に転送し、同様の順序で残りのデータを転送し、最後
    にCPUが指定しキャッシュミスしたアドレスのデータ
    をCPUとキャッシュに並列に転送を行うキャッシュシ
    ステム。
  2. (2)少なくともCPUとキャッシュとキャッシュ外の
    メモリシステムから成るシステムにおいて、CPUから
    の読み出しに対してキャッシュがキャッシュミスし、メ
    モリシステムから複数のデータをブロック転送する際、
    最初にCPUが指定したアドレスのデータをCPUとキ
    ャッシュに並列に転送を行い、その後CPUが指定した
    アドレスをブロックアドレス内で循環的に1つインクリ
    メントする順序でブロック内の残りのデータを転送する
    キャッシュシステム。
  3. (3)少なくともCPUとキャッシュとキャッシュ外の
    メモリシステムから成るシステムにおいて、CPUから
    の読み出しに対してキャッシュがキャッシュミスし、メ
    モリシステムから複数のデータをブロック転送する際、
    CPUが指定したアドレスをブロックアドレス内で循環
    的に1つデクリメントし、そのアドレスのデータを最初
    に転送し、同様の順序で残りのデータを転送し、最後に
    CPUが指定しキャッシュミスしたアドレスのデータを
    CPUとキャッシュに並列に転送を行うキャッシュシス
    テム。
  4. (4)少なくともCPUとキャッシュとキャッシュ外の
    メモリシステムから成るシステムにおいて、CPUから
    の読み出しに対してキャッシュがキャッシュミスし、メ
    モリシステムかの複数のデータをブロック転送する際、
    最初にCPUが指定したアドレスのデータをCPUとキ
    ャッシュに並列に転送を行い、その後CPUが指定した
    アドレスをブロックアドレス内で循環的に1つデクリメ
    ントする順序でブロック内の残りのデータを転送するキ
    ャッシュシステム。
JP63011223A 1988-01-21 1988-01-21 キヤツシユシステム Pending JPH01187653A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP63011223A JPH01187653A (ja) 1988-01-21 1988-01-21 キヤツシユシステム
GB8828558A GB2214670B (en) 1988-01-21 1988-12-07 Cache system
DE3842100A DE3842100C2 (de) 1988-01-21 1988-12-14 Steuerungsverfahren für ein Cache-System
US07/734,088 US5185879A (en) 1988-01-21 1991-07-22 Cache system and control method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63011223A JPH01187653A (ja) 1988-01-21 1988-01-21 キヤツシユシステム

Publications (1)

Publication Number Publication Date
JPH01187653A true JPH01187653A (ja) 1989-07-27

Family

ID=11771961

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63011223A Pending JPH01187653A (ja) 1988-01-21 1988-01-21 キヤツシユシステム

Country Status (1)

Country Link
JP (1) JPH01187653A (ja)

Similar Documents

Publication Publication Date Title
JP6746572B2 (ja) ノンブロッキング高性能トランザクションクレジットシステムを備えるマルチコアバスアーキテクチャ
US5930523A (en) Microcomputer having multiple bus structure coupling CPU to other processing elements
US5280598A (en) Cache memory and bus width control circuit for selectively coupling peripheral devices
US7581054B2 (en) Data processing system
EP1307818B1 (en) Implementing locks in a distributed processing system
JPH02205964A (ja) 書込み―読出し/書込み―パス記憶装置のサブシステム・サイクル
US6742058B2 (en) Memory controller having a multiplexer selecting either second set of input signals or converted signals from first set of input signals by a bus mode input
US6601145B2 (en) Multiprocessor system snoop scheduling mechanism for limited bandwidth snoopers that uses dynamic hardware/software controls
JPS5832427B2 (ja) 多重情報処理システム
JPH01187653A (ja) キヤツシユシステム
JPH0238968B2 (ja)
US6546469B2 (en) Multiprocessor system snoop scheduling mechanism for limited bandwidth snoopers
US20010005870A1 (en) External bus control system
KR870000117B1 (ko) 액세스 제어 처리방식
US6546470B1 (en) Multiprocessor system snoop scheduling mechanism for limited bandwidth snoopers with banked directory implementation
RU1820392C (ru) Мультипроцессорна вычислительна система
JPS59114657A (ja) マイクロコンピユ−タのメモリ用インタ−フエイス回路
SU1061606A1 (ru) Микроэлектронна вычислительна машина
JPS63313253A (ja) キヤツシユシステム
JP2533923B2 (ja) 記憶制御装置
JPH01187651A (ja) キヤツシユシステム
JPH065521B2 (ja) メツセージ・バツフア・システム
KR19980025738U (ko) 이 기종 메모리 모듈 사용을 위한 인터리빙의 모드 변환 회로
JPS62217348A (ja) インタフエ−ス装置
JPH04156635A (ja) ブロックリードアドレス生成システム