JP3360587B2 - 多重メモリアクセスシステム及びその方法並びにその制御方法を記録した記録媒体 - Google Patents

多重メモリアクセスシステム及びその方法並びにその制御方法を記録した記録媒体

Info

Publication number
JP3360587B2
JP3360587B2 JP33224997A JP33224997A JP3360587B2 JP 3360587 B2 JP3360587 B2 JP 3360587B2 JP 33224997 A JP33224997 A JP 33224997A JP 33224997 A JP33224997 A JP 33224997A JP 3360587 B2 JP3360587 B2 JP 3360587B2
Authority
JP
Japan
Prior art keywords
store
address
alias
buffer
entry
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.)
Expired - Fee Related
Application number
JP33224997A
Other languages
English (en)
Other versions
JPH11167516A (ja
Inventor
俊明 井上
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 JP33224997A priority Critical patent/JP3360587B2/ja
Publication of JPH11167516A publication Critical patent/JPH11167516A/ja
Application granted granted Critical
Publication of JP3360587B2 publication Critical patent/JP3360587B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は多重メモリアクセス
システム及びアクセス方法並びにその制御方法を記録し
た記録媒体に関し、特に複数のロードストアユニットを
備えたプロセッサの多重メモリアクセスシステム及びア
クセス方法並びにその制御方法を記録した記録媒体に関
するものである。
【0002】
【従来の技術】現在のスーパースカラプロセッサでは、
主記憶を高速にアクセスするために、複数のロードスト
アユニットを搭載してロードストア処理を順不同(並
列)に実行するのが一般的となっている。この場合、命
令間でのメモリアドレスに関する依存関係(正依存、逆
依存及び出力依存)は、命令発行後アドレスが確定した
時点で検出が可能となる。
【0003】ここで、正依存とは、プログラム順序で先
行するストア命令と後続するロード命令とが同一のメモ
リアドレスをアクセスした場合に生じる依存関係であ
る。また、逆依存とは、プログラム順序で先行するロー
ド命令と後続するストア命令とが順不同で同一のメモリ
アドレスをアクセスした場合に生じる依存関係である。
更に、出力依存とは、プログラム順序で先行するストア
命令と後続するストア命令とが順不同で同一のメモリア
ドレスをアクセスした場合に生じる依存関係である。
【0004】これ等の依存関係が存在する命令はプログ
ラム順序で実行されなければ正しい結果が得られないの
で、そのまま並列実行することはできない。但し、逆依
存と出力依存に関しては、依存関係にある先行命令と順
不同で実行しても、主記憶をアクセスせずにストアアド
レスとストア値とを一時的なバッファに保留しておき、
先行命令が主記憶へのアクセスを完了した後に、このバ
ッファからストアアドレスとストア値とを取り出して主
記憶をアクセスすることによって、プログラム順序での
主記憶アクセスが保証されることになる。すなわち、逆
依存または出力依存の関係にあるロードストア命令の並
列実行が可能になるのである。
【0005】従来のプロセッサでは、この一時的なバッ
ファは図5に示す様なストアバッファとして実装されて
いる。ストアバッファ302はストアアドレス(AD
R)とストア値(VAL)とが確定したストア命令をプ
ログラム順序で保持するためのバッファである。アドレ
スが確定したロード命令またはストア命令301は、ス
トアアドレスとストア値とを格納する複数のエントリを
有するストアバッファ302の有効なエントリに格納さ
れたアドレスと、アドレス比較器303にて比較され、
一致エントリ検出器304にて依存関係の有無と、アド
レスが一致したエントリ番号とが検出される。
【0006】命令301がストアバッファ302内に存
在する有効な全てのストア命令に後続するロード命令で
あり、かつ一致エントリが存在した場合(正依存関
係)、主記憶をアクセスせずに一致エントリのストアデ
ータ(VAL)をフォワーディングして(フォワーディ
ング値として)使用することが可能となる。
【0007】また、命令301が先行するロード命令で
ある場合は、ストアバッファ302内にアドレスが一致
するエントリが存在しても(逆依存関係)、無視して主
記憶をアクセスすることによって、逆依存関係にある先
行ロード命令と後続ストア命令とを順不同で実行するこ
とが可能となる。
【0008】また、命令301がストア命令である場
合、順不同で実行されても、ストアバッファ302内で
プログラム順序で格納されるので、結果的に出力依存は
ストアバッファ302内で解消されることになる。
【0009】すなわち、メモリアクセスに関する逆依存
と出力依存とを、ストア命令のアドレスをストアバッフ
ァ302内で名前替えする(同一のストアアドレスを異
なるアドレスとしてプログラム順序で保持する)ことに
よって解消し、これ等を並列実行可能として、プロセッ
サの処理性能を向上する様にしている。
【0010】
【発明が解決しようとする課題】しかしながら、依存関
係の検出とストアアドレスの名前替えは、アドレスに関
してのみ行えば良く、ストア値に関しては必要はない。
また、メモリ空間はレジスタ空間(高々32個)に比較
して広大であり、広範囲に複数の依存関係が生じる可能
性があるので、ストアアドレスを格納するためのエント
リ数を多く必要とする。従って、ストアバッファを使用
すると、名前替えに不必要なストア値のフィールドが当
該ストアバッファに含まれているので、そのエントリ数
の増加に伴って不必要にハードウェア量が増大するとい
う問題がある。
【0011】また、ストアバッファのエントリ数は同時
命令発行数に関連しているので、過度にエントリ数を増
やしても性能向上に寄与しないという問題もある。例え
ば、4命令同時発行のスーパスカラ処理では、高々4エ
ントリで十分であり、それ以上のエントリ数を実装する
ようにしても性能向上には寄与しないのである。
【0012】本発明の目的は、アドレスの名前替えを行
うハードウェアとストアバッファの機能とを分離するこ
とにより、アドレスの名前替え可能なストア命令数を増
やすことができ、かつストアバッファのハードウェア量
を節約可能とした多重メモリアクセスシステム及びその
方法並びにその制御方法を記録した記録媒体を提供する
ことである。
【0013】
【課題を解決するための手段】本発明によれば、メモリ
に対するロードストア処理を順不同にて実行する複数の
ロードストア処理ユニットを備えたプロセッサを含み、
同一アドレスに対する複数のストア命令に対して夫々異
なる短いビット長の別名アドレスを対応付けて管理する
ようにした多重メモリアクセスシステムであって、前記
ストア命令がアクセスするストアアドレスと、このスト
アアドレスに対応付けられた別名アドレスとの組を格納
するエントリを複数有する別名テーブルと、前記別名ア
ドレスに対応して設けられ対応別名アドレスが使用済み
か否かを示す開放テーブルと、最新の別名アドレスと前
記ストア命令のストア値との組みを格納するエントリを
複数有するストアバッファと、古い別名アドレスとスト
アアドレスとの組を格納するエントリを複数有するリオ
ーダバッファと、アドレス計算後に確定したストア命令
のストアアドレスを前記別名テーブル及び前記リオーダ
バッファに夫々与え、前記ストア命令のストア値を前記
ストアバッファに与え、前記別名テーブルの別名アドレ
スを前記リオーダバッファの古い別名アドレスに与え、
前記開放テーブルの未使用別名アドレスを前記別名テー
ブル及び前記ストアバッファに夫々与え、前記ストアバ
ッファのストア値と前記リオーダバッファのストアアド
レスとをメモリへ送出するよう制御する手段とを含む
とを特徴とする多重メモリアクセスシステムが得られ
る。
【0014】
【0015】また、本発明によれば、ストア命令がアク
セスするストアアドレスと、このストアアドレスに対応
付けられた別名アドレスとの組を格納するエントリを複
数有する別名テーブルと、前記別名アドレスに対応して
設けられ対応別名アドレスが使用済みか否かを示す開放
テーブルと、最新の別名アドレスと前記ストア命令のス
トア値との組みを格納するエントリを複数有するストア
バッファと、古い別名アドレスとストアアドレスとの組
を格納するエントリを複数有するリオーダバッファとを
含み、メモリに対するロードストア処理を順不同にて実
行する複数のロードストア処理ユニットを備えたプロセ
ッサにおける多重メモリアクセス方法であって、前記ス
トア命令のデコード時に前記リオーダバッファの未使用
エントリを割当てて有効エントリとし、アドレス計算に
より確定した前記ストアアドレスを前記有効エントリに
登録するステップと、前記ストアアドレスと前記別名テ
ーブルの全ての有効エントリに格納されているストアア
ドレスと比較して一致したエントリが存在した場合、そ
の一致エントリの別名アドレスを読出して前記リオーダ
バッファの前記有効エントリの古い別名アドレス部に登
録するステップと、前記開放テーブルから未使用の別名
アドレスを取得して前記別名テーブルの前記一致エント
リの別名アドレス部に登録すると共に、前記ストアバッ
ファの特定エントリの最新の別名アドレス部にも登録す
るステップと、前記ストア命令のストアデータが確定し
た時点で、前記ストアデータを前記ストアバッファの前
記エントリのストア値部に格納するステップとを含むこ
とを特徴とする多重メモリアクセス方法が得られる。
【0016】また、本発明によれば、ストア命令がアク
セスするストアアドレスと、このストアアドレスに対応
付けられた別名アドレスとの組を格納するエントリを複
数有する別名テーブルと、前記別名アドレスに対応して
設けられ対応別名アドレスが使用済みか否かを示す開放
テーブルと、最新の別名アドレスと前記ストア命令のス
トア値との組みを格納するエントリを複数有するストア
バッファと、古い別名アドレスとストアアドレスとの組
を格納するエントリを複数有するリオーダバッファとを
含み、メモリに対するロードストア処理を順不同にて実
行する複数のロードストア処理ユニットを備えたプロセ
ッサにおける多重メモリアクセス方法をコンピュータに
実行させるためのプログラムを記録した記録媒体であっ
て、前記ストア命令のデコード時に前記リオーダバッフ
ァの未使用エントリを割当てて有効エントリとし、アド
レス計算により確定した前記ストアアドレスを前記有効
エントリに登録するステップと、前記ストアアドレスと
前記別名テーブルの全ての有効エントリに格納されてい
るストアアドレスと比較して一致したエントリが存在し
た場合、その一致エントリの別名アドレスを読出して前
記リオーダバッファの前記有効エントリの古い別名アド
レス部に登録するステップと、前記開放テーブルから未
使用の別名アドレスを取得して前記別名テーブルの前記
一致エントリの別名アドレス部に登録すると共に、前記
ストアバッファの特定エントリの最新の別名アドレス部
にも登録するステップと、前記ストア命令のストアデー
タが確定した時点で、前記ストアデータを前記ストアバ
ッファの前記エントリのストア値部に格納するステップ
とを実行させるためのプログラムを記録したコンピュー
タ読み取り可能な記録媒体が得られる。
【0017】本発明では、ストアアドレスの名前替えを
行うハードウェアをストアバッファとは分離して設ける
ことにより、ストアバッファのエントリ数とは無関係に
別名アドレスのエントリ数を、ハードウェアの増加なく
増やすことが可能となる。また、ストア値はアドレスの
名前替えに必要がないので、ストアバッファのエントリ
数を増やして複数のストア命令のアドレス名前替えを行
う場合に比較して、ハードウェア量を削減することがで
きる。
【0018】
【発明の実施の形態】以下に図面を参照しつつ本発明の
実施例を詳述する。
【0019】図1は本発明の実施例の全体構成を示すブ
ロック図である。図1を参照すると、ストア命令101
は図示せぬ命令発行機能部から生成され、その命令の内
容STOREと、ストアアドレスADRと、ストア値V
ALとを含む。別名テーブル102はストアアドレスA
DRとこれに対応する別名アドレスADR´とを組とし
て、複数組格納可能なエントリを備えている。解放テー
ブル105はこの別名テーブル102の各エントリの別
名アドレスADR´の使用(NOT FREE)/未使
用(FREE ADR´)の状態を記憶するものであ
る。別名アドレスはストア命令のストアアドレスADR
に比し短いビット長に設定されているものとする。
【0020】アドレス比較器103はアドレスが確定し
たストア命令101のアドレス部(ADR)と別名テー
ブル102の全ての有効なエントリのアドレス部(AD
R)とを比較するものである。一致エントリ検出器10
4は、このアドレス比較器103の結果からストアアド
レスが一致したエントリを検出するものである。
【0021】リオーダバッファ106は古い別名アドレ
ス(OLD ADR´)と対応するストアアドレスとの
組をプログラ順序で格納するものである。ストアバッフ
ァ107は最新の別名アドレス(NEW ADR´)と
ストア値(VAL)との組をプログラ順序で格納するも
のである。
【0022】ストア命令101はプロセッサ内でデコー
ドされた時点でリオーダバッファ106及びストアバッ
ファ107内に夫々エントリが確保される。その後、ア
ドレス計算が完了したストア命令101は別名テーブル
102の中の全ての有効なエントリに格納されたアドレ
スと、エントリ毎に設けられた比較器103にて比較さ
れる。この比較結果は一致エントリ検出器104に供給
されてストア命令101のアドレスと一致するエントリ
が検出される。
【0023】次に、一致エントリの別名アドレスが別名
テーブル102より読出されて、リオーダバッファ10
6に既に確保されているストア命令101のエントリに
古い別名アドレスとして登録される。登録完了後、解放
テーブル105から未使用の別名アドレスが一つ読出さ
れ、別名テーブル102の一致エントリ内の別名アドレ
スとストアバッファ107の別名アドレスとに、新しい
別名アドレスとして登録される。
【0024】命令101のストア値(VAL)は、その
値が確定した後ストアバッファ107に既に割当てられ
ているエントリに格納される。また、命令101のスト
アアドレスは、値が確定した後リオーダバッファ106
に予め割当てられているエントリに格納される。先行す
る全ての命令が完了後、ストア命令101はリオーダバ
ッファ106の該当エントリのアドレスとストアバッフ
ァ107の該当エントリのストア値とをキャッシュまた
は主記憶へ送出することによって、処理が完了すること
になる。
【0025】図2は図1のブロックの動作を説明するた
めの機能図であり、図1と同等部分は同一符号により示
している。また、図3及び図4は本発明の実施例の動作
の詳細を示すフロー図であり、これ等各図を参照しつつ
本発明の実施例の動作を説明する。
【0026】先ず、各部の初期状態につき述べる。別名
テーブル102は、初期時全てのエントリが不定であ
り、ストア命令のアドレス計算が完了する毎にエントリ
への追加登録が行われる。解放テーブル105は、初期
時全てのエントリが未使用状態(FREE ADR´)
であり、別名テーブル102への割当てにより使用中
(NOT FREE)の状態になり、命令実行終了(リ
オーダバッファ106からこのストア命令が取り除かれ
る)により解放状態(FREE ADR´)に戻る。
【0027】リオーダバッファ106は、初期時全ての
エントリが不定であり、ストア命令がデコードされる毎
に追加登録される。またストアバッファ107の全ての
エントリも初期時不定であり、ストア命令の別名アドレ
ス(ADR´)と値(VAL)が確定する毎に追加登録
される。
【0028】図3を参照すると、メモリアドレスの名前
替えの方法の手順が示されている。先ず、アドレスが未
確定のストア命令101が発行されると(ステップS
1)、リオーダバッファ106とストアバッファ107
内に夫々エントリが割当てられる。このとき、リオーダ
バッファ106の当該エントリには、このストア命令を
識別する番号(ID)が付加される(ステップS2)。
これ等のエントリの割当ては命令のデコード時に行われ
るので、例えば、順不同で並列に実行されるスーパスカ
ラプロセッサにおいても、プログラム順序で割当てが行
われる。
【0029】命令101の未確定アドレス(ADR)は
アドレス加算器202にて計算されて確定すると(ステ
ップS3,S4)、リオーダバッファ106で同一命令
識別番号ID(ID比較器203で同一IDが検出され
る)を有するエントリに格納される(ステップS5)と
共に、別名テーブル102内の有効な全てのエントリの
アドレスと比較される(ステップS6)。
【0030】この比較により、一致するエントリが存在
すると(ステップS7)、そのエントリの別名アドレス
(ADR´)が読出され、リオーダバッファ106内の
そのエントリに、古い別名アドレス(OLD ADR)
として格納される(ステップS8)。
【0031】その後、解放テーブル105から未使用の
別名アドレス(FREE ADR´)が一つ読出され
(ステップS10)、別名アドレステーブル102の対
応エントリの別名アドレスを置換えると共に(ステップ
S11)、ストアバッファ107に新しい別名アドレス
(NEW ADR´)として格納される(ステップS1
2)。このとき、ストア命令101のストア値(VA
L)は命令発行後ストアバッファ107の当該エントリ
に格納される。
【0032】尚、ステップS7において、一致エントリ
が存在しないと、別名テーブル102の未使用エントリ
に命令101のアドレス(ADR)が格納され(ステッ
プS8)、以後の動作は一致エントリの場合と同様にス
テップS10〜S12と進むことになる。
【0033】図4は図3の名前替え処理に基づくメモリ
アクセス命令の実行方法を示すフローである。図3の処
理が終了して、最後に、ストア命令101に先行する全
ての命令が完了し、ストア命令101が完了可能になる
と、リオーダバッファ106内の前記エントリ(最下
端)のストアアドレスと、ストアバッファ107の前記
エントリ(最下端)のストア値とが導出され(ステップ
S21)、キャッシュまたは主記憶へ送出される(ステ
ップS22)。そして、リオーダバッファ106内の前
記エントリの古い別名アドレスが未使用アドレスとして
解放テーブル105に登録される(ステップS23)。
以上の処理により、ストア命令101が完了するのであ
る。
【0034】ここで、例えば、32ビットのマイクロプ
ロセッサに本発明を適用した場合、通常のアドレス長は
32ビットである。従来の図5の例では、ストアバッフ
ァ302はこの32ビットのアドレスADRとストア値
VALとを格納する構成のために、エントリ数の増加に
伴ってハードウェア量も増大する。
【0035】一方、本発明では、別名アドレスADR´
のビット長は、別名テーブル102のエントリ数で決ま
るが、例えば、一例としてそのエントリ数を16とする
と4ビットとなり、エントリ数を32とすると5ビット
となって、従来例に比してストアバッファ107の容量
が少なくなる。逆に言えば、アドレスの名前替え可能な
ストア命令の数を増大してもハードウェア量の増大は従
来に比し小となり、よって同時命令発行数を増やすこと
ができるのである。
【0036】以上の図3,4に示した処理手順に従う制
御動作は、特に図示しないが、予めプログラム手順とし
て記録した記録媒体から当該記録プログラムをコンピュ
ータにより読出して実行せしめることにより実現可能で
あることは明白である。
【0037】本発明が適用可能なプロセッサは、現在の
技術では、スーパースカラプロセッサであるが、今後L
SIの集積度が更に向上して複数のプロセッサ要素をL
SI内に搭載して複数の命令を並列に実行するプロセッ
サに対しても、同様に適用可能である。
【0038】
【発明の効果】以上述べた様に、本発明によれば、スト
アバッファにストア命令で指定されるアドレスそのもの
を格納するのではなく、よりビット長の短い別名アドレ
スを格納することにより、ストアバッファのハードウェ
ア量を削減することが可能となるという効果がある。
【0039】また、ストアバッファのハードウェア量を
増加させることなく、複数のロードストア命令間の依存
関係を解消できると言う効果がある。そのために、同一
アドレスに依存関係を有するストア命令が多数存在して
も、容易にこれを解消して複数のロードストア命令を並
列実行可能となる。その理由は、ストアバッファからア
ドレス名前替えの機能を分離して別名テーブルを設ける
ことにより、ストアバッファのエントリ数とは無関係に
別名テーブルのエントリ数を増やせば、同一のアドレス
に対して多くの別名アドレスを割当てることができるか
らである。
【図面の簡単な説明】
【図1】本発明の実施例のブロック図である。
【図2】図1のブロックの動作を説明するための図であ
る。
【図3】本発明の実施例の動作を示すフローチャートで
あり、メモリアドレスの名前替えの方法を説明する手順
である。
【図4】本発明の実施例の動作を示すフローチャートで
あり、図3のメモリアドレスの名前替えに基づくメモリ
アクセス命令の実行方法を説明する手順である。
【図5】従来のメモリアクセス方式の例を示すブロック
図である。
【符号の説明】
101 命令 102 別名テーブル 103 アドレス比較器 104 一致エントリ検出器 105 解放テーブル 106 リオーダバッファ 107 ストアバッファ 202 アドレス加算器

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 メモリに対するロードストア処理を順不
    同にて実行する複数のロードストア処理ユニットを備え
    たプロセッサを含み、同一アドレスに対する複数のスト
    ア命令に対して夫々異なる短いビット長の別名アドレス
    を対応付けて管理するようにした多重メモリアクセスシ
    ステムであって、 前記ストア命令がアクセスするストアアドレスと、この
    ストアアドレスに対応付けられた別名アドレスとの組を
    格納するエントリを複数有する別名テーブルと、 前記別名アドレスに対応して設けられ対応別名アドレス
    が使用済みか否かを示す開放テーブルと、 最新の別名アドレスと前記ストア命令のストア値との組
    みを格納するエントリを複数有するストアバッファと、 古い別名アドレスとストアアドレスとの組を格納するエ
    ントリを複数有するリオーダバッファと、 アドレス計算後に確定したストア命令のストアアドレス
    を前記別名テーブル及び前記リオーダバッファに夫々与
    え、前記ストア命令のストア値を前記ストアバッファに
    与え、前記別名テーブルの別名アドレスを前記リオーダ
    バッファの古い別名アドレスに与え、前記開放テーブル
    の未使用別名アドレスを前記別名テーブル及び前記スト
    アバッファに夫々与え、前記ストアバッファのストア値
    と前記リオーダバッファのストアアドレスとをメモリへ
    送出するよう制御する手段と、を含む ことを特徴とする
    多重メモリアクセスシステム。
  2. 【請求項2】 ストア命令がアクセスするストアアドレ
    スと、このストアアドレスに対応付けられた別名アドレ
    スとの組を格納するエントリを複数有する別名テーブル
    と、前記別名アドレスに対応して設けられ対応別名アド
    レスが使用済みか否かを示す開放テーブルと、最新の別
    名アドレスと前記ストア命令のストア値との組みを格納
    するエントリを複数有するストアバッファと、古い別名
    アドレスとストアアドレスとの組を格納するエントリを
    複数有するリオーダバッファとを含み、メモリに対する
    ロードストア処理を順不同にて実行する複数のロードス
    トア処理ユニットを備えたプロセッサにおける多重メモ
    リアクセス方法であって、 前記ストア命令のデコード時に前記リオーダバッファの
    未使用エントリを割当てて有効エントリとし、アドレス
    計算により確定した前記ストアアドレスを前記有効エン
    トリに登録するステップと、 前記ストアアドレスと前記別名テーブルの全ての有効エ
    ントリに格納されているストアアドレスと比較して一致
    したエントリが存在した場合、その一致エントリの別名
    アドレスを読出して前記リオーダバッファの前記有効エ
    ントリの古い別名アドレス部に登録するステップと、 前記開放テーブルから未使用の別名アドレスを取得して
    前記別名テーブルの前記一致エントリの別名アドレス部
    に登録すると共に、前記ストアバッファの特定エントリ
    の最新の別名アドレス部にも登録するステップと、 前記ストア命令のストアデータが確定した時点で、前記
    ストアデータを前記ストアバッファの前記エントリのス
    トア値部に格納するステップと、 を含むことを特徴とする多重メモリアクセス方法。
  3. 【請求項3】 前記ストア命令に対応して前記ストアバ
    ッファのエントリに格納されたストア値と前記リオーダ
    バッファに格納されたストアアドレスとを用いて、メモ
    リをアクセスした後、前記ストアアドレスに対応する古
    い別名アドレスを未使用の別名アドレスとして前記開放
    テーブルに登録するステップを更に含むことを特徴とす
    る請求項記載の多重メモリアクセス方法。
  4. 【請求項4】 ストア命令がアクセスするストアアドレ
    スと、このストアアドレスに対応付けられた別名アドレ
    スとの組を格納するエントリを複数有する別名テーブル
    と、前記別名アドレスに対応して設けられ対応別名アド
    レスが使用済みか否かを示す開放テーブルと、最新の別
    名アドレスと前記ストア命令のストア値との組みを格納
    するエントリを複数有するストアバッファと、古い別名
    アドレスとストアアドレスとの組を格納するエントリを
    複数有するリオーダバッファとを含み、メモリに対する
    ロードストア処理を順不同にて実行する複数のロードス
    トア処理ユニットを備えたプロセッサにおける多重メモ
    リアクセス方法をコンピュータに実行させるためのプロ
    グラムを記録した記録媒体であって、 前記ストア命令のデコード時に前記リオーダバッファの
    未使用エントリを割当てて有効エントリとし、アドレス
    計算により確定した前記ストアアドレスを前記有効エン
    トリに登録するステップと、 前記ストアアドレスと前記別名テーブルの全ての有効エ
    ントリに格納されているストアアドレスと比較して一致
    したエントリが存在した場合、その一致エントリの別名
    アドレスを読出して前記リオーダバッファの前記有効エ
    ントリの古い別名アドレス部に登録するステップと、 前記開放テーブルから未使用の別名アドレスを取得して
    前記別名テーブルの前記一致エントリの別名アドレス部
    に登録すると共に、前記ストアバッファの特定エントリ
    の最新の別名アドレス部にも登録するステップと、 前記ストア命令のストアデータが確定した時点で、前記
    ストアデータを前記ストアバッファの前記エントリのス
    トア値部に格納するステップと、を実行させるためのプ
    ログラムを記録したコンピュータ読み取り可能な記録媒
    体。
  5. 【請求項5】 前記ストア命令に対応して前記ストアバ
    ッファのエントリに格納されたストア値と前記リオーダ
    バッファに格納されたストアアドレスとを用いて、メモ
    リをアクセスした後、前記ストアアドレスに対応する古
    い別名アドレスを未使用の別名アドレスとして前記開放
    テーブルに登録するステップを、更に実行させるための
    プログラムを記録したコンピュータ読み取り可能な請求
    項4記載の記録媒体。
JP33224997A 1997-12-03 1997-12-03 多重メモリアクセスシステム及びその方法並びにその制御方法を記録した記録媒体 Expired - Fee Related JP3360587B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP33224997A JP3360587B2 (ja) 1997-12-03 1997-12-03 多重メモリアクセスシステム及びその方法並びにその制御方法を記録した記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP33224997A JP3360587B2 (ja) 1997-12-03 1997-12-03 多重メモリアクセスシステム及びその方法並びにその制御方法を記録した記録媒体

Publications (2)

Publication Number Publication Date
JPH11167516A JPH11167516A (ja) 1999-06-22
JP3360587B2 true JP3360587B2 (ja) 2002-12-24

Family

ID=18252849

Family Applications (1)

Application Number Title Priority Date Filing Date
JP33224997A Expired - Fee Related JP3360587B2 (ja) 1997-12-03 1997-12-03 多重メモリアクセスシステム及びその方法並びにその制御方法を記録した記録媒体

Country Status (1)

Country Link
JP (1) JP3360587B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10740107B2 (en) 2016-06-01 2020-08-11 International Business Machines Corporation Operation of a multi-slice processor implementing load-hit-store handling
US11243774B2 (en) 2019-03-20 2022-02-08 International Business Machines Corporation Dynamic selection of OSC hazard avoidance mechanism
US10929142B2 (en) * 2019-03-20 2021-02-23 International Business Machines Corporation Making precise operand-store-compare predictions to avoid false dependencies
US10990393B1 (en) * 2019-10-21 2021-04-27 Advanced Micro Devices, Inc. Address-based filtering for load/store speculation

Also Published As

Publication number Publication date
JPH11167516A (ja) 1999-06-22

Similar Documents

Publication Publication Date Title
JP4323637B2 (ja) メモリアロケーション方法及びメモリアロケーション装置並びに記憶媒体
US7174428B2 (en) Method and system for transforming memory location references in instructions
US6009509A (en) Method and system for the temporary designation and utilization of a plurality of physical registers as a stack
JPS6341100B2 (ja)
JP2002140227A (ja) メモリ圧縮管理デバイス
JP2006513493A (ja) フリーバッファプールを使用することによるメモリの管理
JP3360587B2 (ja) 多重メモリアクセスシステム及びその方法並びにその制御方法を記録した記録媒体
JPH07262140A (ja) 排他制御装置
US7539850B2 (en) Enhanced virtual renaming scheme and deadlock prevention therefor
EP1505490A1 (en) Method and computer system for accessing thread private data
EP0969358A2 (en) Information processing device and method for performing parallel processing
US6829693B2 (en) Auxiliary storage slot scavenger
FI90805B (fi) Menetelmä ja laite sivukehyksen korvaamiseksi tietojenkäsittelyjärjestelmässä
US20060143405A1 (en) Data processing device
US7552285B2 (en) Line fill techniques
JPH09218823A (ja) キャッシュメモリ制御装置
JP3645671B2 (ja) 命令バッファを有するプロセッサ装置
JP2001005721A (ja) Dspによるリング・バッファ用メモリ確保によるフィルタ処理方法及びそのフィルタ処理システム
JP2853736B2 (ja) クラスタ番号変換回路
US20050021837A1 (en) Method and apparatus for implementing virtual packet storage via packet work area
JP3799451B2 (ja) 電子計算機システム
JPH01251248A (ja) スタックデータ構造用キャッシュ制御方式
JPH04139545A (ja) データベース更新処理方式
JPH0991199A (ja) 階層記憶システムにおけるデバイスアクセス方法
EP0349757A2 (en) Apparatus and method for enhanced virtual to real address translation for accessing a cache memory unit

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071018

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081018

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091018

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091018

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101018

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111018

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121018

Year of fee payment: 10

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131018

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees