JPH05165726A - データ処理装置 - Google Patents
データ処理装置Info
- Publication number
- JPH05165726A JPH05165726A JP3350623A JP35062391A JPH05165726A JP H05165726 A JPH05165726 A JP H05165726A JP 3350623 A JP3350623 A JP 3350623A JP 35062391 A JP35062391 A JP 35062391A JP H05165726 A JPH05165726 A JP H05165726A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- cache
- access
- output
- priority
- 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
Links
Landscapes
- Multi Processors (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】 複数のプロセッサが1つのキャッシュメモリ
を共有する場合、特定のプロセッサからのアクセスした
ラインが他のプロセッサのアクセスによりスワップされ
るのを防ぐことができるデータ処理装置を得る。 【構成】 キャッシュメモリのラインに対応して優先度
指示を記憶するプライオリティメモリ34の出力をラウ
ンドロビンメモリ33へアクセスする毎に反映させ、R
RMデータ生成回路35により高優先度のラインを最近
アクセスしたようにラウンドロビンメモリ33を更新す
ることによって、LRUアルゴリズムでスワップされる
のを防ぐ。
を共有する場合、特定のプロセッサからのアクセスした
ラインが他のプロセッサのアクセスによりスワップされ
るのを防ぐことができるデータ処理装置を得る。 【構成】 キャッシュメモリのラインに対応して優先度
指示を記憶するプライオリティメモリ34の出力をラウ
ンドロビンメモリ33へアクセスする毎に反映させ、R
RMデータ生成回路35により高優先度のラインを最近
アクセスしたようにラウンドロビンメモリ33を更新す
ることによって、LRUアルゴリズムでスワップされる
のを防ぐ。
Description
【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はデータ処理装置に関し、
特に2次キャッシュメモリを有するデータ処理装置に関
する。
特に2次キャッシュメモリを有するデータ処理装置に関
する。
【0002】
【従来の技術】データ処理装置の高速化技術として、記
憶階層手法が汎く使用されている。特に中央処理装置
(CPUと略す)内の1次キャッシュメモリに加え、C
PU・入出力処理装置(IOP)からのメモリアクセス
を制御するシステム制御装置SCU内に大容量の2次キ
ャッシュメモリを設ける手法はメモリアクセス時間の短
縮に効果が大きい(日系エレクトロニクス、1985、
11、18、「演算パイプラインや3階層記憶により高
速化を図った M−680/682Hの処理方式、P2
28〜P267)。
憶階層手法が汎く使用されている。特に中央処理装置
(CPUと略す)内の1次キャッシュメモリに加え、C
PU・入出力処理装置(IOP)からのメモリアクセス
を制御するシステム制御装置SCU内に大容量の2次キ
ャッシュメモリを設ける手法はメモリアクセス時間の短
縮に効果が大きい(日系エレクトロニクス、1985、
11、18、「演算パイプラインや3階層記憶により高
速化を図った M−680/682Hの処理方式、P2
28〜P267)。
【0003】この手法では、図9に示すようにデータア
レイ11、アドレスアレイ12を有し、セットアソシア
ティブ方式のキャッシュメモリを構成している。一セッ
ト内のブロックが全て使用されている状態でキャッシュ
ミスが生じた場合にはラウンドロビンメモリ(RRM)
13内の過去のブロックアクセス履歴を参照してLea
st Recently Used(LRU)アルゴリ
ズムにてリプレースされるブロックを選択する。
レイ11、アドレスアレイ12を有し、セットアソシア
ティブ方式のキャッシュメモリを構成している。一セッ
ト内のブロックが全て使用されている状態でキャッシュ
ミスが生じた場合にはラウンドロビンメモリ(RRM)
13内の過去のブロックアクセス履歴を参照してLea
st Recently Used(LRU)アルゴリ
ズムにてリプレースされるブロックを選択する。
【0004】この2次キャッシュメモリのリプレースア
ルゴリズムはCPUおよびIOPからのメモリアクセス
に対して同じであった。特に、IOPのメモリアクセス
頻度は周辺制御装置のデータ転送能力と関連している
為、CPUからのアクセス頻度より低い。一方、IOP
からのメモリアクセス時間は、周辺装置の動作と同期さ
せる為に、ある程度の実時間応答性を保証しなければな
らない。
ルゴリズムはCPUおよびIOPからのメモリアクセス
に対して同じであった。特に、IOPのメモリアクセス
頻度は周辺制御装置のデータ転送能力と関連している
為、CPUからのアクセス頻度より低い。一方、IOP
からのメモリアクセス時間は、周辺装置の動作と同期さ
せる為に、ある程度の実時間応答性を保証しなければな
らない。
【0005】
【発明が解決しようとする課題】この従来の2次キャッ
シュメモリを使用したデータ処理装置においては、アド
レスアレイ、ラウンドロビンメモリ内にメモリアクセス
要求元に関する情報を持っていない為、キャッシュ内の
ブロックのリプレース制御をCPU/IOPといった要
求元に応じて変更することができなかった。また、リプ
レースアルゴリズムがLRUである為、IOPからアク
セスされたブロックがCPUからのアクセスによって、
リプレースされてしまい、同一ブロックへのアクセスが
連続してキャッシュミスとなる場合にIOPからのアク
セス応答が異常に遅れて周辺装置が追従できずオーバラ
ンするという問題を生ずる。
シュメモリを使用したデータ処理装置においては、アド
レスアレイ、ラウンドロビンメモリ内にメモリアクセス
要求元に関する情報を持っていない為、キャッシュ内の
ブロックのリプレース制御をCPU/IOPといった要
求元に応じて変更することができなかった。また、リプ
レースアルゴリズムがLRUである為、IOPからアク
セスされたブロックがCPUからのアクセスによって、
リプレースされてしまい、同一ブロックへのアクセスが
連続してキャッシュミスとなる場合にIOPからのアク
セス応答が異常に遅れて周辺装置が追従できずオーバラ
ンするという問題を生ずる。
【0006】さらに、IOPのメモリアクセスの大半は
データ転送であり、2次キャッシュメモリの個々のブロ
ックはシーケンシャルにアクセスされる為、1ブロック
分のアクセスを終了した後、全く使用されないにもかか
わらず、LRUアルゴリズムでリプレースされるまで2
次キャッシュ内に留まる。この結果、キャッシュの使用
効率が低下する問題があった。また、IOPからのアク
セスに対して2次キャッシュのアクセス時間はキャッシ
ュミス時にブロックロード時間が加算される為、周辺装
置に対するメモリアクセスタイムが増加し、周辺装置が
要求するデータを供給できない(データオーバラン)事
態に達する確率が増加するという問題点があった。
データ転送であり、2次キャッシュメモリの個々のブロ
ックはシーケンシャルにアクセスされる為、1ブロック
分のアクセスを終了した後、全く使用されないにもかか
わらず、LRUアルゴリズムでリプレースされるまで2
次キャッシュ内に留まる。この結果、キャッシュの使用
効率が低下する問題があった。また、IOPからのアク
セスに対して2次キャッシュのアクセス時間はキャッシ
ュミス時にブロックロード時間が加算される為、周辺装
置に対するメモリアクセスタイムが増加し、周辺装置が
要求するデータを供給できない(データオーバラン)事
態に達する確率が増加するという問題点があった。
【0007】本発明は、上述した従来例における問題点
を解消するためになされたもので、複数のプロセッサが
1つのキャッシュメモリを共有する場合、特定のプロセ
ッサからのアクセスしたラインが他のプロセッサのアク
セスによりスワップされるのを防ぐことができるデータ
処理装置を提供することを目的とする。
を解消するためになされたもので、複数のプロセッサが
1つのキャッシュメモリを共有する場合、特定のプロセ
ッサからのアクセスしたラインが他のプロセッサのアク
セスによりスワップされるのを防ぐことができるデータ
処理装置を提供することを目的とする。
【0008】
【課題を解決するための手段】上述目的を達成するため
に、本発明の第1のデータ処理装置は、セットアソシア
ティブ方式のキャッシュメモリと、該キャッシュメモリ
の同一セット内のアクセス履歴を保持する履歴メモリ
と、該履歴メモリの出力に応答し最も過去にアクセスさ
れたwayを指定する判定手段と、前記キャッシュメモ
リのラインに対応するエントリを有し、該個々のエント
リは前記ラインの使用優先度を示す優先度メモリと、該
優先度メモリの出力の示す優先度を前記履歴メモリの更
新時に反映させる更新手段とを有する。
に、本発明の第1のデータ処理装置は、セットアソシア
ティブ方式のキャッシュメモリと、該キャッシュメモリ
の同一セット内のアクセス履歴を保持する履歴メモリ
と、該履歴メモリの出力に応答し最も過去にアクセスさ
れたwayを指定する判定手段と、前記キャッシュメモ
リのラインに対応するエントリを有し、該個々のエント
リは前記ラインの使用優先度を示す優先度メモリと、該
優先度メモリの出力の示す優先度を前記履歴メモリの更
新時に反映させる更新手段とを有する。
【0009】また、本発明の第2のデータ処理装置は、
複数のプロセッサからアクセスされるセットアソシアテ
ィブ方式のキャッシュメモリと、該キャッシュメモリの
同一セット内のアクセス履歴を記憶する履歴メモリと、
該履歴メモリの出力を参照し、最も過去にアクセスされ
たwayとしてリプレース対象と判定する判定手段と、
前記複数のプロセッサ内の特定のプロセッサからのアク
セスに応答してアクセスされたキャッシュメモリのライ
ンに対応するエントリに表示するメモリと、前記履歴メ
モリの更新時に前記メモリの出力を、加味した値を設定
する更新手段とを有する。
複数のプロセッサからアクセスされるセットアソシアテ
ィブ方式のキャッシュメモリと、該キャッシュメモリの
同一セット内のアクセス履歴を記憶する履歴メモリと、
該履歴メモリの出力を参照し、最も過去にアクセスされ
たwayとしてリプレース対象と判定する判定手段と、
前記複数のプロセッサ内の特定のプロセッサからのアク
セスに応答してアクセスされたキャッシュメモリのライ
ンに対応するエントリに表示するメモリと、前記履歴メ
モリの更新時に前記メモリの出力を、加味した値を設定
する更新手段とを有する。
【0010】また、本発明の第3のデータ処理装置は、
プロセッサからアクセスされるセットアソシアティブ方
式のキャッシュメモリと、該キャッシュメモリの同一セ
ット内のアクセス履歴を記憶する履歴メモリと、該履歴
メモリの出力を参照し最も過去にアクセスされたway
としてリプレース対象と判定する判定手段と、前記プロ
セッサからキャッシュアクセス要求に付加して転送され
る指示に応じてアクセスされたキャッシュラインに対応
したエントリに優先表示を行うメモリと、前記履歴メモ
リの更新時に前記メモリの出力を反映する更新手段とを
有する。
プロセッサからアクセスされるセットアソシアティブ方
式のキャッシュメモリと、該キャッシュメモリの同一セ
ット内のアクセス履歴を記憶する履歴メモリと、該履歴
メモリの出力を参照し最も過去にアクセスされたway
としてリプレース対象と判定する判定手段と、前記プロ
セッサからキャッシュアクセス要求に付加して転送され
る指示に応じてアクセスされたキャッシュラインに対応
したエントリに優先表示を行うメモリと、前記履歴メモ
リの更新時に前記メモリの出力を反映する更新手段とを
有する。
【0011】また、本発明の第4のデータ処理装置は、
第3のデータ処理装置の構成に加えて、高速入出力チャ
ネルと低速入出力チャネルと備え、高速入出力チャネル
のデータ転送に関わるメモリアクセスの送出時に優先表
示指示を出力し、該メモリアクセス対象キャッシュライ
ンの最終アクセスに優先を解除する指示を出力する入出
力プロセッサを備える。
第3のデータ処理装置の構成に加えて、高速入出力チャ
ネルと低速入出力チャネルと備え、高速入出力チャネル
のデータ転送に関わるメモリアクセスの送出時に優先表
示指示を出力し、該メモリアクセス対象キャッシュライ
ンの最終アクセスに優先を解除する指示を出力する入出
力プロセッサを備える。
【0012】さらに、本発明の第5のデータ処理装置
は、セットアソシアティブ方式のキャッシュメモリと、
該キャッシュの同一セット内のアクセス履歴を保持する
履歴メモリと、該履歴メモリの出力に応答し最も過去に
アクセスされたwayを指定する履歴メモリと、前記キ
ャッシュメモリのラインに対応するエントリを有し、該
エントリは同一セット中のwayの優先度を示す優先度
メモリ手段と、該優先度メモリの出力の示す優先度を前
記履歴メモリの更新時に反映する更新手段と、プログラ
ムにより設定可能なレジスタ手段と、前記優先度メモリ
手段の同一セット内のway優先度表示エントリ数が、
該レジスタ手段の数を越える設定を抑止する更新抑止手
段とを有する。
は、セットアソシアティブ方式のキャッシュメモリと、
該キャッシュの同一セット内のアクセス履歴を保持する
履歴メモリと、該履歴メモリの出力に応答し最も過去に
アクセスされたwayを指定する履歴メモリと、前記キ
ャッシュメモリのラインに対応するエントリを有し、該
エントリは同一セット中のwayの優先度を示す優先度
メモリ手段と、該優先度メモリの出力の示す優先度を前
記履歴メモリの更新時に反映する更新手段と、プログラ
ムにより設定可能なレジスタ手段と、前記優先度メモリ
手段の同一セット内のway優先度表示エントリ数が、
該レジスタ手段の数を越える設定を抑止する更新抑止手
段とを有する。
【0013】
【作用】本発明においては、高優先度指定されたライン
の余分なスワップアウトを未然に防止する。また、特定
のプロセッサのアクセスを高優度とすることによって、
特定プロセッサによりアクセスされたラインのスワップ
アウトを防止し、そのプロセッサの性能低下を防止す
る。さらに、プロセッサから個々のラインをアクセスす
る毎に優先度指定を制御することにより、個別ラインの
アクセス低下を防止する。また、高速入出力チャネルか
らのアクセス時に優先度指定を行うことによって、この
チャネルの性能低下を防止する。
の余分なスワップアウトを未然に防止する。また、特定
のプロセッサのアクセスを高優度とすることによって、
特定プロセッサによりアクセスされたラインのスワップ
アウトを防止し、そのプロセッサの性能低下を防止す
る。さらに、プロセッサから個々のラインをアクセスす
る毎に優先度指定を制御することにより、個別ラインの
アクセス低下を防止する。また、高速入出力チャネルか
らのアクセス時に優先度指定を行うことによって、この
チャネルの性能低下を防止する。
【0014】また、上限レジスタを設け、同一セット内
の優先度指定を制限することによって、他のプロセッサ
からアクセスされたラインが極端にスワップされること
を防ぐ。
の優先度指定を制限することによって、他のプロセッサ
からアクセスされたラインが極端にスワップされること
を防ぐ。
【0015】
【実施例】次に本発明について図面を用いて説明する。
図1は本発明を使用したシステムキャッシュを内蔵した
計算機システムのブロック図である。このシステムでは
システムキャッシュ22を内蔵するシステム制御装置
(SCU)21は主記憶装置(MMU)29へのメモリ
アクセスを集中的に管理し、そのデータのコピーをシス
テムキャッシュ22へ作成し、中央処理装置(CPU
A)25、CPUB26、入出力装置(IOPA)2
7、IOPB28からの高速メモリアクセスに対してシ
ステムキャッシュにヒットする場合はシステムキャッシ
ュ22に登録済みのデータにて処理し、キャッシュミス
であればMMU29にアクセスして処理する。また、シ
ステムキャッシュ22がフルであり、新たなブロックが
登録不可の場合には、既定のアルゴリズムに従い登録済
みのブロックのデータをMMU29へ書き込んだ後に、
新しいブロックを主記憶からシステムキャッシュへ転送
し書き込む。
図1は本発明を使用したシステムキャッシュを内蔵した
計算機システムのブロック図である。このシステムでは
システムキャッシュ22を内蔵するシステム制御装置
(SCU)21は主記憶装置(MMU)29へのメモリ
アクセスを集中的に管理し、そのデータのコピーをシス
テムキャッシュ22へ作成し、中央処理装置(CPU
A)25、CPUB26、入出力装置(IOPA)2
7、IOPB28からの高速メモリアクセスに対してシ
ステムキャッシュにヒットする場合はシステムキャッシ
ュ22に登録済みのデータにて処理し、キャッシュミス
であればMMU29にアクセスして処理する。また、シ
ステムキャッシュ22がフルであり、新たなブロックが
登録不可の場合には、既定のアルゴリズムに従い登録済
みのブロックのデータをMMU29へ書き込んだ後に、
新しいブロックを主記憶からシステムキャッシュへ転送
し書き込む。
【0016】図2は上記システムキャッシュ22の詳細
なブロック図である。
なブロック図である。
【0017】アドレスセレクタ40はシステムキャッシ
ュへのリクエスト元(CPUA、CPUB、IOPA、
IOB)から転送されたアドレスおよびアドレスバッフ
ァ44からの出力から1つを選択する。選択されたアド
レスの一部をアドレスアレイ31、データアレイ32の
索引アドレスとして供給する。また、選択されたアドレ
スの上位部はアドレスアレイ37の連想アドレス用書込
データとしてアドレスアレイ31に供給される。システ
ムキャッシュへの読出アクセス時には、アドレスセレク
タ43から供給される索引アドレスに従い、アドレスア
レイ31は4wayの各メモリ部から保持している連想
アドレスを出力する。
ュへのリクエスト元(CPUA、CPUB、IOPA、
IOB)から転送されたアドレスおよびアドレスバッフ
ァ44からの出力から1つを選択する。選択されたアド
レスの一部をアドレスアレイ31、データアレイ32の
索引アドレスとして供給する。また、選択されたアドレ
スの上位部はアドレスアレイ37の連想アドレス用書込
データとしてアドレスアレイ31に供給される。システ
ムキャッシュへの読出アクセス時には、アドレスセレク
タ43から供給される索引アドレスに従い、アドレスア
レイ31は4wayの各メモリ部から保持している連想
アドレスを出力する。
【0018】出力された連想アドレスは比較器51、5
2、53、54にてアドレスセレクタ43から出力され
た参照アドレスの対応部分と比較して一致判定される。
一致を検出した比較器は要求されたデータがキャッシュ
内にあることを示すヒット信号を送出する。このヒット
信号はデータセレクタ37に送られ、ヒットを検出した
比較器に対応するデータアレイ32のwayから出力さ
れるラインの出力データをデータセレクタ37に選択さ
せる。選択されたデータはデータレジスタ46から読出
要求元のプロセッサへ転送される。
2、53、54にてアドレスセレクタ43から出力され
た参照アドレスの対応部分と比較して一致判定される。
一致を検出した比較器は要求されたデータがキャッシュ
内にあることを示すヒット信号を送出する。このヒット
信号はデータセレクタ37に送られ、ヒットを検出した
比較器に対応するデータアレイ32のwayから出力さ
れるラインの出力データをデータセレクタ37に選択さ
せる。選択されたデータはデータレジスタ46から読出
要求元のプロセッサへ転送される。
【0019】また、比較器51〜54のいずれもアドレ
スアレイの出力と、参照アドレスとの一致を検出しない
場合は、制御回路47はキャッシュミスと認識して、ア
ドレスセレクタ43から出力されるアクセスアドレスを
アドレスバッファ44へ転送し、アドレスバッファ44
から主記憶装置(MMU)29へ読出アドレスとして送
出する。MMU29で読出されたデータは、データセレ
クタ48を介してデータバッファ45へセットされる。
スアレイの出力と、参照アドレスとの一致を検出しない
場合は、制御回路47はキャッシュミスと認識して、ア
ドレスセレクタ43から出力されるアクセスアドレスを
アドレスバッファ44へ転送し、アドレスバッファ44
から主記憶装置(MMU)29へ読出アドレスとして送
出する。MMU29で読出されたデータは、データセレ
クタ48を介してデータバッファ45へセットされる。
【0020】制御回路47は、読出データが転送される
と、アドレスバッファ44内に保持していた読出アドレ
スをアドレスセレクタ40を介して参照アドレスとして
キャッシュを再アクセスし、ラウンドロビンメモリ33
の状態から指定されたデータアレイ32の空ラインにデ
ータバッファ45からデータセレクタ41を介して転送
したデータを書き込むとともに、このラインに対応する
アドレスアレイのラインに参照アドレスを登録する。こ
れによりキャッシュヒットのエントリを生成できるの
で、以後はキャッシュヒット時と同じ動作で読出データ
をデータレジスタ46から要求元プロセサへ転送する。
と、アドレスバッファ44内に保持していた読出アドレ
スをアドレスセレクタ40を介して参照アドレスとして
キャッシュを再アクセスし、ラウンドロビンメモリ33
の状態から指定されたデータアレイ32の空ラインにデ
ータバッファ45からデータセレクタ41を介して転送
したデータを書き込むとともに、このラインに対応する
アドレスアレイのラインに参照アドレスを登録する。こ
れによりキャッシュヒットのエントリを生成できるの
で、以後はキャッシュヒット時と同じ動作で読出データ
をデータレジスタ46から要求元プロセサへ転送する。
【0021】次に、比較器51、52、53、54のい
ずれもキャッシュヒットを検出しない、即ちキャッシュ
ミスの場合で、かつアドレスアレイ31の4wayのす
べてのエントリが有効データを保持している場合の動作
を説明する。索引アドレスを用いてラウンドロビンメモ
リ(RRM)33を読出した内容を用いて、図3のアル
ゴリズムで1wayを選択してデータアレイ32の1ラ
インのデータを次の手順でスワップアウトする。キャッ
シュミス検出後、アクセスアドレスはアドレスバッファ
44に保持される。このアドレスをアドレスセレクタ4
0を介してアドレスアレイ31とデータアレイ32に転
送してメモリの内容を読み出す。RRM33の内容を元
にして決定された1wayに対応するアドレスアレイ3
1の内容をセレクタ48により主記憶の書込アドレスを
供給する。また書込みデータをデータセレクタ37によ
り読出されたデータアレイ32の1wayを選択してデ
ータレジスタ46を介して主記憶へ書き込み要求を送出
する。
ずれもキャッシュヒットを検出しない、即ちキャッシュ
ミスの場合で、かつアドレスアレイ31の4wayのす
べてのエントリが有効データを保持している場合の動作
を説明する。索引アドレスを用いてラウンドロビンメモ
リ(RRM)33を読出した内容を用いて、図3のアル
ゴリズムで1wayを選択してデータアレイ32の1ラ
インのデータを次の手順でスワップアウトする。キャッ
シュミス検出後、アクセスアドレスはアドレスバッファ
44に保持される。このアドレスをアドレスセレクタ4
0を介してアドレスアレイ31とデータアレイ32に転
送してメモリの内容を読み出す。RRM33の内容を元
にして決定された1wayに対応するアドレスアレイ3
1の内容をセレクタ48により主記憶の書込アドレスを
供給する。また書込みデータをデータセレクタ37によ
り読出されたデータアレイ32の1wayを選択してデ
ータレジスタ46を介して主記憶へ書き込み要求を送出
する。
【0022】続いて、アドレスバッファ44内のアドレ
スをセレクタ48で選択し、主記憶へ転送し、読出し要
求を送付する。読出されたデータはデータバッファ45
を介してデータアレイ32のRRM33によって決定さ
れた1way内のアドレスバッファ44で指定するライ
ンに書き込まれる。これと同時に、アドレスバッファ4
4の連想アドレス部がこのラインに対応するアドレスア
レイに書き込まれる。
スをセレクタ48で選択し、主記憶へ転送し、読出し要
求を送付する。読出されたデータはデータバッファ45
を介してデータアレイ32のRRM33によって決定さ
れた1way内のアドレスバッファ44で指定するライ
ンに書き込まれる。これと同時に、アドレスバッファ4
4の連想アドレス部がこのラインに対応するアドレスア
レイに書き込まれる。
【0023】プライオリティメモリ(PRM)34はセ
レクタ43によって切替られたキャッシュへのアクセス
要求元に対応して、要求元がIOPであれば“1”を、
CPUであれば“”0”を示すプライオリティビットと
要求元から送付されたリクエクトコードの一部を対にし
てアドレスアレイ31に対応するエントリに保持するメ
モリである。PRM34の出力はRRM33の内容を更
新するデータを生成するRRMデータ生成回路35へ転
送し、ここでRRM書込データの生成に使用される。
レクタ43によって切替られたキャッシュへのアクセス
要求元に対応して、要求元がIOPであれば“1”を、
CPUであれば“”0”を示すプライオリティビットと
要求元から送付されたリクエクトコードの一部を対にし
てアドレスアレイ31に対応するエントリに保持するメ
モリである。PRM34の出力はRRM33の内容を更
新するデータを生成するRRMデータ生成回路35へ転
送し、ここでRRM書込データの生成に使用される。
【0024】次に、本発明のキャッシュラインのリプレ
ース方式について説明する(キャッシュのラインのリプ
レースはアクセスされたアドレスの索引アドレス部でア
ドレスアレイ31内の4wayがすべて既に有効データ
を有しかつキャッシュミスであるときに発生する)。キ
ャッシュへのアクセスがあると、アドレスアレイ31と
データアレイ32へのアクセスと並行してRRM33と
PRM34がアクセスされ索引アドレスに対応するエン
トリが読出される。RRM更新回路35はタイミングt
1 においてアクセスされたキャッシュレベルに応じてR
RM33を更新するとともにRRM更新回路35はタイ
ミングt2 においてPRM34からの読出データによ
り、RRM更新データを生成する。
ース方式について説明する(キャッシュのラインのリプ
レースはアクセスされたアドレスの索引アドレス部でア
ドレスアレイ31内の4wayがすべて既に有効データ
を有しかつキャッシュミスであるときに発生する)。キ
ャッシュへのアクセスがあると、アドレスアレイ31と
データアレイ32へのアクセスと並行してRRM33と
PRM34がアクセスされ索引アドレスに対応するエン
トリが読出される。RRM更新回路35はタイミングt
1 においてアクセスされたキャッシュレベルに応じてR
RM33を更新するとともにRRM更新回路35はタイ
ミングt2 においてPRM34からの読出データによ
り、RRM更新データを生成する。
【0025】図4はRRM更新回路35の回路図であ
り、キャッシュヒットしたレベルはデコーダ52の入力
となり、図5のデコード論理によってRRM反転信号と
して反転回路51へ供給される。さらに、PRM34の
出力はデコーダ53へ供給され図5のデコード論理によ
ってRRM反転信号となる。
り、キャッシュヒットしたレベルはデコーダ52の入力
となり、図5のデコード論理によってRRM反転信号と
して反転回路51へ供給される。さらに、PRM34の
出力はデコーダ53へ供給され図5のデコード論理によ
ってRRM反転信号となる。
【0026】従って、RRM更新データは下式で生成さ
れる:
れる:
【0027】
【数1】 ここで、Di はRRMの出力であり、Di+1 はRRMへ
のセットデータであり、d(CHj )・t1 はt1 タイ
ミングでのキャッシュヒットレベルのデコード出力であ
り、d(CPi )・t2 はt2 タイミングでPRM出力
のデコード出力であり、RRMはt1 およびt2 タイミ
ングで更新される。
のセットデータであり、d(CHj )・t1 はt1 タイ
ミングでのキャッシュヒットレベルのデコード出力であ
り、d(CPi )・t2 はt2 タイミングでPRM出力
のデコード出力であり、RRMはt1 およびt2 タイミ
ングで更新される。
【0028】これによって、PRMに1を指定されたレ
ベルはキャッシュに最近アクセスされたのと等価な値と
なる為、キャッシュからリプレスされない。
ベルはキャッシュに最近アクセスされたのと等価な値と
なる為、キャッシュからリプレスされない。
【0029】図6はPRM34のデータ生成回路を示し
ており、アクセス元がIOPの場合に“1”を書き込
み、CPUでは“0”を書込む。IOPからのリクエス
トコードのキャッシュラインアクセス開始ビットにて
“1”をセットし、ラインアクセス終了ビットにて
“0”をセットする。これによって、IOPのリクエス
トにて登録されたブロックはCPUからのアクセスによ
ってリプレースされることはなく、IOPからのアクセ
ス速度の低下は少ない。また、プライオリティはブロッ
ク単位で高く設定されているのでCPUへの性能インパ
クトも小さい。
ており、アクセス元がIOPの場合に“1”を書き込
み、CPUでは“0”を書込む。IOPからのリクエス
トコードのキャッシュラインアクセス開始ビットにて
“1”をセットし、ラインアクセス終了ビットにて
“0”をセットする。これによって、IOPのリクエス
トにて登録されたブロックはCPUからのアクセスによ
ってリプレースされることはなく、IOPからのアクセ
ス速度の低下は少ない。また、プライオリティはブロッ
ク単位で高く設定されているのでCPUへの性能インパ
クトも小さい。
【0030】また、PRM34にIOPの入出力チャネ
ル識別ビット(CHID)としてリクエストコードの一
部に埋め込まれたデータを保持するビットを図7のよう
に設けた場合、このビットは入出力チャネルが高速チャ
ネルで“1”低速チャネルであれば“0”を示すので、
前述の生成信号とANDをとることによって、高速チャ
ネルからアクセスされたキャッシュブロックのみを高プ
ライオリティに設定できる。
ル識別ビット(CHID)としてリクエストコードの一
部に埋め込まれたデータを保持するビットを図7のよう
に設けた場合、このビットは入出力チャネルが高速チャ
ネルで“1”低速チャネルであれば“0”を示すので、
前述の生成信号とANDをとることによって、高速チャ
ネルからアクセスされたキャッシュブロックのみを高プ
ライオリティに設定できる。
【0031】また、IOPがデータチェイン、コマンド
チェイン、終了ステータスを検出して動作を終了する場
合、図7に示すような転送終了リクエストコードを該当
するチャネルが直前に出したアドレスと共に送出する。
このリクエストコードはPRM34の対応するビットを
0にセットさせる。
チェイン、終了ステータスを検出して動作を終了する場
合、図7に示すような転送終了リクエストコードを該当
するチャネルが直前に出したアドレスと共に送出する。
このリクエストコードはPRM34の対応するビットを
0にセットさせる。
【0032】次に、PRM34のプライオリティ上限設
定回路について説明する。同一の索引アドレスで索引さ
れる4レベルのPRM34において“1”のレベルが増
加すると、低レベルのアクセス要求元に割り当てられた
キャッシュラインは頻繁にリプレースされる為、メモリ
アクセス性能が極端に低下する欠点を生じる。図8は、
RRM34の出力をコード化する符号器61と、CPU
から設定される上限レジスタ62と、(符号器61の出
力)−(上限レジスタ62)を計算する減算器63から
構成された上限設定回路であり、減算器63のキャリー
出力によって、RRM34への“1”セットを抑止す
る。これによって、上限レジスタ62に設定された値以
上のプライオリティ付レベルが増加することを抑止でき
る。
定回路について説明する。同一の索引アドレスで索引さ
れる4レベルのPRM34において“1”のレベルが増
加すると、低レベルのアクセス要求元に割り当てられた
キャッシュラインは頻繁にリプレースされる為、メモリ
アクセス性能が極端に低下する欠点を生じる。図8は、
RRM34の出力をコード化する符号器61と、CPU
から設定される上限レジスタ62と、(符号器61の出
力)−(上限レジスタ62)を計算する減算器63から
構成された上限設定回路であり、減算器63のキャリー
出力によって、RRM34への“1”セットを抑止す
る。これによって、上限レジスタ62に設定された値以
上のプライオリティ付レベルが増加することを抑止でき
る。
【0033】本発明は、次の構成を備える態様に従った
データ処理装置を構成できる。
データ処理装置を構成できる。
【0034】本発明の第1のデータ処理装置は、セット
アソシアティブ方式のキャッシュメモリと、該キャッシ
ュメモリの同一セット内のアクセス履歴を保持する履歴
メモリと、該履歴メモリの出力に応答し最も過去にアク
セスされたwayを指定する判定手段と、前記キャッシ
ュメモリのラインに対応するエントリを有し、該個々の
エントリは前記ラインの使用優先度を示す優先度メモリ
と、該優先度メモリの出力の示す優先度を前記履歴メモ
リの更新時に反映させる更新手段とを有する。また、本
発明の第2のデータ処理装置は、複数のプロセッサから
アクセスされるセットアソシアティブ方式のキャッシュ
メモリと、該キャッシュメモリの同一セット内のアクセ
ス履歴を記憶する履歴メモリと、該履歴メモリの出力を
参照し、最も過去にアクセスされたwayとしてリプレ
ース対象と判定する判定手段と、前記複数のプロセッサ
内の特定のプロセッサからのアクセスに応答してアクセ
スされたキャッシュメモリのラインに対応するエントリ
に表示するメモリと、前記履歴メモリの更新時に前記メ
モリの出力を、加味した値を設定する更新手段とを有す
る。
アソシアティブ方式のキャッシュメモリと、該キャッシ
ュメモリの同一セット内のアクセス履歴を保持する履歴
メモリと、該履歴メモリの出力に応答し最も過去にアク
セスされたwayを指定する判定手段と、前記キャッシ
ュメモリのラインに対応するエントリを有し、該個々の
エントリは前記ラインの使用優先度を示す優先度メモリ
と、該優先度メモリの出力の示す優先度を前記履歴メモ
リの更新時に反映させる更新手段とを有する。また、本
発明の第2のデータ処理装置は、複数のプロセッサから
アクセスされるセットアソシアティブ方式のキャッシュ
メモリと、該キャッシュメモリの同一セット内のアクセ
ス履歴を記憶する履歴メモリと、該履歴メモリの出力を
参照し、最も過去にアクセスされたwayとしてリプレ
ース対象と判定する判定手段と、前記複数のプロセッサ
内の特定のプロセッサからのアクセスに応答してアクセ
スされたキャッシュメモリのラインに対応するエントリ
に表示するメモリと、前記履歴メモリの更新時に前記メ
モリの出力を、加味した値を設定する更新手段とを有す
る。
【0035】また、本発明の第3のデータ処理装置は、
プロセッサからアクセスされるセットアソシアティブ方
式のキャッシュメモリと、該キャッシュメモリの同一セ
ット内のアクセス履歴を記憶する履歴メモリと、該履歴
メモリの出力を参照し最も過去にアクセスされたway
としてリプレース対象と判定する判定手段と、前記プロ
セッサからキャッシュアクセス要求に付加して転送され
る指示に応じてアクセスされたキャッシュラインに対応
したエントリに優先表示を行うメモリと、前記履歴メモ
リの更新時に前記メモリの出力を反映する更新手段とを
有する。
プロセッサからアクセスされるセットアソシアティブ方
式のキャッシュメモリと、該キャッシュメモリの同一セ
ット内のアクセス履歴を記憶する履歴メモリと、該履歴
メモリの出力を参照し最も過去にアクセスされたway
としてリプレース対象と判定する判定手段と、前記プロ
セッサからキャッシュアクセス要求に付加して転送され
る指示に応じてアクセスされたキャッシュラインに対応
したエントリに優先表示を行うメモリと、前記履歴メモ
リの更新時に前記メモリの出力を反映する更新手段とを
有する。
【0036】また、本発明の第4のデータ処理装置は、
第3のデータ処理装置の構成に加えて、高速入出力チャ
ネルと低速入出力チャネルと備え、高速入出力チャネル
のデータ転送に関わるメモリアクセスの送出時に優先表
示指示を出力し、該メモリアクセス対象キャッシュライ
ンの最終アクセスに優先を解除する指示を出力する入出
力プロセッサを備える。
第3のデータ処理装置の構成に加えて、高速入出力チャ
ネルと低速入出力チャネルと備え、高速入出力チャネル
のデータ転送に関わるメモリアクセスの送出時に優先表
示指示を出力し、該メモリアクセス対象キャッシュライ
ンの最終アクセスに優先を解除する指示を出力する入出
力プロセッサを備える。
【0037】さらに、本発明の第5のデータ処理装置
は、セットアソシアティブ方式のキャッシュメモリと、
該キャッシュの同一セット内のアクセス履歴を保持する
履歴メモリと、該履歴メモリの出力に応答し最も過去に
アクセスされたwayを指定する履歴メモリと、前記キ
ャッシュメモリのラインに対応するエントリを有し、該
エントリは同一セット中のwayの優先度を示す優先度
メモリ手段と、該優先度メモリの出力の示す優先度を前
記履歴メモリの更新時に反映する更新手段と、プログラ
ムにより設定可能なレジスタ手段と、前記優先度メモリ
手段の同一セット内のway優先度表示エントリ数が、
該レジスタ手段の数を越える設定を抑止する更新抑止手
段とを有する。
は、セットアソシアティブ方式のキャッシュメモリと、
該キャッシュの同一セット内のアクセス履歴を保持する
履歴メモリと、該履歴メモリの出力に応答し最も過去に
アクセスされたwayを指定する履歴メモリと、前記キ
ャッシュメモリのラインに対応するエントリを有し、該
エントリは同一セット中のwayの優先度を示す優先度
メモリ手段と、該優先度メモリの出力の示す優先度を前
記履歴メモリの更新時に反映する更新手段と、プログラ
ムにより設定可能なレジスタ手段と、前記優先度メモリ
手段の同一セット内のway優先度表示エントリ数が、
該レジスタ手段の数を越える設定を抑止する更新抑止手
段とを有する。
【0038】
【発明の効果】以上説明したように構成することによっ
て、本発明は、高優先度指定されたラインの余分なスワ
ップアウトを未然に防止する効果がある。
て、本発明は、高優先度指定されたラインの余分なスワ
ップアウトを未然に防止する効果がある。
【0039】また、特定のプロセッサのアクセスを高優
度とすることによって、特定プロセッサによりアクセス
されたラインのスワップアウトを防止し、このプロセッ
サの性能低下を防止する効果がある。
度とすることによって、特定プロセッサによりアクセス
されたラインのスワップアウトを防止し、このプロセッ
サの性能低下を防止する効果がある。
【0040】また、プロセッサから個々のラインをアク
セスする毎に優先度指定を制御することにより個別ライ
ンのアクセス低下を防止する効果がある。
セスする毎に優先度指定を制御することにより個別ライ
ンのアクセス低下を防止する効果がある。
【0041】また、高速入出力チャネルからのアクセス
時に優先度指定を行うことによって、このチャネルの性
能低下を防止する効果がある。
時に優先度指定を行うことによって、このチャネルの性
能低下を防止する効果がある。
【0042】また、上限レジスタを設け、同一セット内
の優先度指定を制限することによって他のプロセッサか
らアクセスされたラインが極端にスワップされることを
防ぐ効果がある。
の優先度指定を制限することによって他のプロセッサか
らアクセスされたラインが極端にスワップされることを
防ぐ効果がある。
【0043】以上に記述した性能低下防止は特定のメモ
リアクセスにおいて即答性を要求されるケースで効果を
発揮する。
リアクセスにおいて即答性を要求されるケースで効果を
発揮する。
【図1】システムキャッシュを内蔵した計算機システム
のブロック図である。
のブロック図である。
【図2】図1のシステムキャッシュ22の詳細なブロッ
ク図である。
ク図である。
【図3】図2のRRM33の更新アルゴリズムの説明図
である。
である。
【図4】図2のRRMの更新回路35の回路図である。
【図5】図4のデコーダ52の真理値表を示した説明図
である。
である。
【図6】図2のPRM34の入力データ生成回路の一実
施例による回路図である。
施例による回路図である。
【図7】図6に対応する他の実施例による回路図であ
る。
る。
【図8】PRM34のプライオリティ上限設定回路の一
実施例による回路図である。
実施例による回路図である。
【図9】従来のシステムキャッシュメモリの該略図であ
る。
る。
21 システム制御装置、 22 システムキャッシュ 25 CPUA.26CPUB 27 IOPA 28 IOPB 29 手記憶装置(MMU) 31 アドレスアレイ 32 データアレイ 33 ラウンドロビンメモリ(RRM) 34 メモリ(PRM)
Claims (5)
- 【請求項1】 セットアソシアティブ方式のキャッシュ
メモリと、該キャッシュメモリの同一セット内のアクセ
ス履歴を保持する履歴メモリと、該履歴メモリの出力に
応答し最も過去にアクセスされたwayを指定する判定
手段と、前記キャッシュメモリのラインに対応するエン
トリを有し、該個々のエントリは前記ラインの使用優先
度を示す優先度メモリと、該優先度メモリの出力の示す
優先度を前記履歴メモリの更新時に反映させる更新手段
とを有するデータ処理装置。 - 【請求項2】 複数のプロセッサからアクセスされるセ
ットアソシアティブ方式のキャッシュメモリと、該キャ
ッシュメモリの同一セット内のアクセス履歴を記憶する
履歴メモリと、該履歴メモリの出力を参照し、最も過去
にアクセスされたwayとしてリプレース対象と判定す
る判定手段と、前記複数のプロセッサ内の特定のプロセ
ッサからのアクセスに応答してアクセスされたキャッシ
ュメモリのラインに対応するエントリに表示するメモリ
と、前記履歴メモリの更新時に前記メモリの出力を、加
味した値を設定する更新手段とを有するデータ処理装
置。 - 【請求項3】 プロセッサからアクセスされるセットア
ソシアティブ方式のキャッシュメモリと、該キャッシュ
メモリの同一セット内のアクセス履歴を記憶する履歴メ
モリと、該履歴メモリの出力を参照し最も過去にアクセ
スされたwayとしてリプレース対象と判定する判定手
段と、前記プロセッサからキャッシュアクセス要求に付
加して転送される指示に応じてアクセスされたキャッシ
ュラインに対応したエントリに優先表示を行うメモリ
と、前記履歴メモリの更新時に前記メモリの出力を反映
する更新手段とを有するデータ処理装置。 - 【請求項4】 高速入出力チャネルと低速入出力チャネ
ルと備え、高速入出力チャネルのデータ転送に関わるメ
モリアクセスの送出時に優先表示指示を出力し、該メモ
リアクセス対象キャッシュラインの最終アクセスに優先
を解除する指示を出力する入出力プロセッサを備えた請
求項3記載のデータ処理装置。 - 【請求項5】 セットアソシアティブ方式のキャッシュ
メモリと、該キャッシュの同一セット内のアクセス履歴
を保持する履歴メモリと、該履歴メモリの出力に応答し
最も過去にアクセスされたwayを指定する履歴メモリ
と、前記キャッシュメモリのラインに対応するエントリ
を有し、該エントリは同一セット中のwayの優先度を
示す優先度メモリ手段と、該優先度メモリの出力の示す
優先度を前記履歴メモリの更新時に反映する更新手段
と、プログラムにより設定可能なレジスタ手段と、前記
優先度メモリ手段の同一セット内のway優先度表示エ
ントリ数が、該レジスタ手段の数を越える設定を抑止す
る更新抑止手段とを有するデータ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3350623A JPH05165726A (ja) | 1991-12-12 | 1991-12-12 | データ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3350623A JPH05165726A (ja) | 1991-12-12 | 1991-12-12 | データ処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH05165726A true JPH05165726A (ja) | 1993-07-02 |
Family
ID=18411731
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3350623A Pending JPH05165726A (ja) | 1991-12-12 | 1991-12-12 | データ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH05165726A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002510085A (ja) * | 1998-03-31 | 2002-04-02 | インテル・コーポレーション | テンポラリ命令及び非テンポラリ命令用の共用キャッシュ構造 |
-
1991
- 1991-12-12 JP JP3350623A patent/JPH05165726A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002510085A (ja) * | 1998-03-31 | 2002-04-02 | インテル・コーポレーション | テンポラリ命令及び非テンポラリ命令用の共用キャッシュ構造 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5535361A (en) | Cache block replacement scheme based on directory control bit set/reset and hit/miss basis in a multiheading multiprocessor environment | |
US5465342A (en) | Dynamically adaptive set associativity for cache memories | |
EP0097790A2 (en) | Apparatus for controlling storage access in a multilevel storage system | |
US7447844B2 (en) | Data processing system, processor and method of data processing in which local memory access requests are serviced on a fixed schedule | |
US6643733B2 (en) | Prioritized content addressable memory | |
JPH05127992A (ja) | 2レベルのキヤツシユ・メモリ内の干渉を低減する装置と方法 | |
EP0407119A2 (en) | Apparatus and method for reading, writing and refreshing memory with direct virtual or physical access | |
JPH0364893B2 (ja) | ||
US6332179B1 (en) | Allocation for back-to-back misses in a directory based cache | |
US6792498B2 (en) | Memory system with mechanism for assisting a cache memory | |
US20040153610A1 (en) | Cache controller unit architecture and applied method | |
US7543113B2 (en) | Cache memory system and method capable of adaptively accommodating various memory line sizes | |
US5724548A (en) | System including processor and cache memory and method of controlling the cache memory | |
JPH05165726A (ja) | データ処理装置 | |
US20010034808A1 (en) | Cache memory device and information processing system | |
JPH09218823A (ja) | キャッシュメモリ制御装置 | |
JP2002041358A (ja) | プロセッサシステム | |
EP0628912B1 (en) | Cache memory apparatus | |
JPS629945B2 (ja) | ||
EP0502206A1 (en) | System equipped with processor and cache memory, and method of controlling said cache memory | |
JP3729832B2 (ja) | キャッシュメモリ装置 | |
EP0567708A1 (en) | Apparatus for optimizing cache memory invalidation | |
JPH06282487A (ja) | キャッシュ装置 | |
JPH04102146A (ja) | 高性能キャッシュ | |
JPH06149673A (ja) | キャッシュ制御方式 |