[go: up one dir, main page]

JP3199465B2 - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JP3199465B2
JP3199465B2 JP19550292A JP19550292A JP3199465B2 JP 3199465 B2 JP3199465 B2 JP 3199465B2 JP 19550292 A JP19550292 A JP 19550292A JP 19550292 A JP19550292 A JP 19550292A JP 3199465 B2 JP3199465 B2 JP 3199465B2
Authority
JP
Japan
Prior art keywords
address
page
register
index
logical
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
JP19550292A
Other languages
English (en)
Other versions
JPH0644135A (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.)
Hitachi Ltd
Hitachi Solutions Technology Ltd
Original Assignee
Hitachi Ltd
Hitachi ULSI Systems Co 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 Hitachi Ltd, Hitachi ULSI Systems Co Ltd filed Critical Hitachi Ltd
Priority to JP19550292A priority Critical patent/JP3199465B2/ja
Priority to US08/093,969 priority patent/US5490259A/en
Publication of JPH0644135A publication Critical patent/JPH0644135A/ja
Application granted granted Critical
Publication of JP3199465B2 publication Critical patent/JP3199465B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、メモリアクセスを改良
した情報処理装置に係り、特に、物理アドレスの確定を
早め、早期にキャッシュメモリの検索を可能とし、効率
よく命令の処理を続行させることのできる情報処理装置
に関する。
【0002】
【従来の技術】図3は従来技術による情報処理装置の一
例を示すブロック図であり、以下、この図を参照して従
来技術を説明する。図1において、110は指標レジス
タ識別子101と基底レジスタ識別子102と変位ビッ
ト103とを含む命令レジスタ、120は指標レジスタ
及び基底レジスタとして使用できる多数の汎用レジスタ
(以下、GPRという)、130は指標レジスタの内容
221と基底レジスタの内容222と変位ビット103
とからページアドレス部分及びページオフセット部分を
有する論理アドレスを生成するためのアドレス加算器、
140はアドレス加算器130により求められた論理ア
ドレスを格納する論理アドレスレジスタ、150は論理
アドレスレジスタ140からの論理アドレスに対応する
物理アドレスを選択する変換索引緩衝機構(以下、TL
Bという)、160はTLB150により求められた物
理アドレスのページアドレス部分と論理アドレスレジス
タ140からのページオフセット部分とを格納する物理
アドレスレジスタ、170は物理アドレスレジスタ16
0からの物理アドレスにより格納データを検索し要求し
ている装置にデータを供給するキャッシュメモリ装置、
171はキャッシュメモリ、172は命令によって要求
されたデータがキャッシュメモリ171内に存在するか
否かを判断するキャッシュディレクトリ、180は算術
論理演算装置(以下、ALUという)である。
【0003】図3に示す従来技術において、メモリオペ
ランドを使用する命令の処理は、次のように行われる。
【0004】まず、命令解読のマシンサイクルが実行さ
れる。命令レジスタ110に格納された命令は解読さ
れ、その指標レジスタ識別子101、基底レジスタ識別
子102は、それぞれGPR120に転送される。GP
R120は、例えば、16本の汎用レジスタ群により構
成されており、それぞれ、0〜15の識別番号が割り当
てられている。GPR120は、指標レジスタ識別子1
01に対応する識別番号の汎用レジスタを選択し、その
内容を指標レジスタの内容221としてアドレス加算器
130に転送する。また、GPR120は、基底レジス
タ識別子102に対応する識別番号の汎用レジスタを選
択し、その内容を基底レジスタの内容222としてアド
レス加算器130に転送する。
【0005】この場合、指標レジスタ、基底レジスタの
番号として0番の汎用レジスタが指定されたときは、0
番の汎用レジスタの内容にかかわらずAll“0”のデ
ータがアドレス加算器130に転送される。
【0006】次の論理アドレス生成のマシンサイクルで
は、アドレス加算器130が、指標レジスタの内容22
1と基底レジスタの内容222と変位ビット103とを
加算することにより論理アドレスを求め、その値を論理
アドレスレジスタ140に格納する処理が実行される。
【0007】次のTLB検索のマシンサイクルでは次の
処理が実行される。論理アドレスレジスタ140のペー
ジアドレス部分をキーとしてTLB150が検索され、
TLB150は、その論理アドレスに対応する物理アド
レスのページアドレス部分を物理アドレスレジスタ16
0に転送する。そして、TLB150からの物理アドレ
スのページアドレス部分と、論理アドレスレジスタ14
0からのページオフセット部分とが物理アドレスレジス
タ160に格納される。
【0008】なお、TLB150の検索に関する詳細
は、本発明の範囲外であるためここでは省略する。
【0009】次のキャッシュメモリ検索のマシンサイク
ルでは次の処理が実行される。キャッシュメモリ装置1
70は、物理アドレスレジスタ160からの物理アドレ
スによりキャッシュディレクトリ172を検索し、命令
によって要求されたデータがキャッシュメモリ171内
に存在するか否かを判断する。この結果、キャッシュメ
モリ装置170は、データがキャッシュメモリ171内
になければ、直接にはキャッシュメモリ171を検索せ
ず、要求されたデータを、別の独立した機構により検索
させるように処理をその機構に移す。データがキャッシ
ュメモリ171内にあれば、キャッシュメモリ装置17
0は、物理アドレスによりキャッシュメモリ171を検
索し、命令によって要求されたデータをALU180に
転送する。
【0010】次の演算実行のマシンサイクルでは、AL
U180が、キャッシュメモリ装置170から転送され
たデータに基づいて演算の実行を行う。
【0011】なお、この種の情報処理装置に関する従来
技術として、例えば、特開平3−194632号公報等
に記載された技術が知られている。
【0012】
【発明が解決しようとする課題】前述した従来技術は、
キャッシュメモリ装置の検索のために必要な物理アドレ
スの早期確定についての考慮がなされておらず、命令レ
ジスタへの命令格納から当該命令の要求するメモリオペ
ランドの読み出しに必要な物理アドレスの確定まで、常
に3マシンサイクルを要し、物理アドレスの確定までに
時間がかかるという問題点を有している。
【0013】本発明の目的は、前記従来技術の問題点を
解決し、キャッシュメモリ装置の検索のために必要な物
理アドレスを早期に確定させることができ、処理の高速
化を図ることのできる情報処理装置を提供することにあ
る。
【0014】
【課題を解決するための手段】本発明によれば前記目的
は、基底レジスタ識別子、指標レジスタ識別子、変位ビ
ットを含む命令格納装置と、基底レジスタ及び指標レジ
スタとして使用することのできる多数の汎用レジスタ
と、前記命令格納装置によって受け取った命令により指
定される基底レジスタの内容、指標レジスタの内容及び
変位ビットから、ページアドレス部分及びページオフセ
ット部分を有する論理アドレスを生成するための論理ア
ドレス生成装置と、前記論理アドレス生成装置により求
められた論理アドレスを格納する論理アドレス格納装置
と、論理アドレスに対応する物理アドレスを検索するた
めの変換索引緩衝機構と、前記変換索引緩衝機構により
求まった前記物理アドレスを格納する物理アドレス格納
装置とを備えて構成される情報処理装置において、前記
基底レジスタのページアドレス部分、前記指標レジスタ
のページアドレス部分、前記論理アドレス格納装置のペ
ージアドレス部分の1つを選択する第1の選択装置を備
え、前記第1の選択装置が、前記基底レジスタのページ
アドレス部分が全て“0”または前記指標レジスタのペ
ージアドレス部分が全て“0”のとき、前記指標レジス
タのページアドレス部分または前記基底レジスタのペー
ジアドレス部分を選択し、前記基底レジスタのページア
ドレス部分に“0”でないビットが少なくとも1つ存在
しかつ前記指標レジスタのページアドレス部分に“0”
でないビットが少なくとも1つ存在するとき、前記論理
アドレス格納装置のページアドレス部分を選択し、前記
変換索引緩衝機構が、前記第1の選択装置の選択結果に
対応する前記物理アドレスを検索することにより達成さ
れる。
【0015】本発明は、これにより、キャッシュメモリ
装置の検索のために必要な物理アドレスの確定を早める
ことができる。
【0016】また、前記目的は、前述において、変換索
引緩衝機構を複数備え、さらに、前記複数の変換索引緩
衝機構により求められた複数の前記物理アドレスを選択
する第2の選択装置を備え、前記複数の変換索引緩衝機
構が、第1の変換索引緩衝機構と第2の変換索引緩衝機
構とから構成され、前記第2の選択装置が、前記論理ア
ドレス生成装置のアドレス生成途中の結果が“0”のと
き、前記第1の変換索引緩衝機構の検索結果を選択し、
前記基底レジスタのページアドレス部分に“0”でない
ビットが少なくとも1つ存在しかつ前記指標レジスタの
ページアドレス部分に“0”でないビットが少なくとも
1つ存在するとき、前記第1の変換索引緩衝機構の検索
結果を選択し、前記論理アドレス生成装置のアドレス生
成途中の結果が“1”でかつ前記基底レジスタのページ
アドレス部分が全て“0”もしくは前記指標レジスタの
ページアドレス部分が全て“0”のとき、前記第2の変
換索引緩衝機構の検索結果を選択し、前記物理アドレス
格納装置が、前記第2の選択装置の選択結果を格納する
ことにより達成される。
【0017】本発明は、これにより、基底レジスタまた
は指標レジスタの内容の次のページアドレスが論理アド
レスのページアドレスと一致する場合にも、TLBを予
め検索することができるので、キャッシュメモリ装置の
検索のために必要な物理アドレスの確定を早めることが
できる。
【0018】さらに、前記目的は、アドレス加算結果の
ページオフセットと論理アドレスレジスタのページオフ
セットとを選択する選択装置を備え、アドレス加算処理
とTLB検索処理とを独立に動作可能とすることにより
達成される。
【0019】本発明は、これにより、命令の論理アドレ
スに対応するTLB検索処理が遅れた場合、次の命令の
アドレス加算処理を同時に行うことが可能となり、キャ
ッシュメモリ装置の検索のために必要な物理アドレスの
確定を早めることができる。
【0020】
【作用】本発明による情報処理装置において、メモリオ
ペランドを使用する命令が解読されると、指標レジスタ
識別子と基底レジスタ識別子とが汎用レジスタに送られ
る。汎用レジスタは、指標レジスタ識別子と基底レジス
タ識別子とに対応するレジスタのそれぞれの内容を、指
標レジスタの内容及び基底レジスタの内容として論理ア
ドレス生成装置に送る。論理アドレス生成装置は、指標
レジスタの内容と基底レジスタの内容と命令に含まれる
変位ビットとよりメモリオペランドの論理アドレスを求
め、求めた論理アドレスを論理アドレス格納装置に格納
する。
【0021】一方、選択装置は、論理アドレスのページ
アドレス部分と指標レジスタのページアドレス部分とが
等しい場合、指標レジスタのページアドレス部分を選択
し、論理アドレスのページアドレス部分と基底レジスタ
のページアドレス部分とが等い場合、基底レジスタのペ
ージアドレス部分を選択し、また、論理アドレスのペー
ジアドレス部分が指標レジスタのページアドレス部分及
び基底レジスタのページアドレス部分のどちらとも等し
くない場合、論理アドレスが論理アドレス格納装置内に
確定するまで待ってから論理アドレス格納装置のページ
アドレス部分を選択する。TLBは、この選択装置の選
択結果により検索され、これにより、メモリオペランド
の論理アドレスに対応する物理アドレスが求められる。
【0022】本発明は、前述のように、予め論理アドレ
スのページアドレス部分が判っている場合、論理アドレ
ス生成装置をバイパスして論理アドレス生成マシンサイ
クルでTLBを検索するようにし、予め論理アドレスの
ページアドレス部分が判らない場合、論理アドレス格納
装置に論理アドレスが確定した後、すなわち、論理アド
レス生成マシンサイクルの次のマシンサイクルでTLB
を検索するようにしているので誤動作をすることがな
い。
【0023】
【実施例】以下、本発明の一実施例を図面により詳細に
説明する。
【0024】図1は本発明の一実施例の構成を示すブロ
ック図、図2は命令の流れを説明する図である。図1に
おいて、111は“0”検出回路、121、122はA
ND回路、151は第2のTLB、190はOR回路、
191〜193は選択回路、194は選択制御回路、1
97は+1加算回路であり、他の符号は図3の場合と同
一である。なお、図3におけると同一のTLB150
を、以下の説明では第1のTLB150という。
【0025】図1に示す本発明の一実施例は、図3に説
明した従来技術の構成に加え、さらに、指標レジスタ識
別子101、基底レジスタ識別子102が“0”である
ことを検出する“0”検出回路111と、指標レジスタ
識別子101が“0”のときON状態となる制御信号1
12及び基底レジスタ識別子102が“0”のときON
状態となる制御信号103により、指標レジスタ識別子
101、基底レジスタ識別子102により指定される汎
用レジスタ120の内容をAll“0”とするAND回
路121、122と、AND回路121の出力のページ
アドレス部分とAND回路122の出力のページアドレ
ス部分の論理和をとるOR回路190と、ページアドレ
ス141とOR回路190の出力の一方選択する選択回
路191と、ページオフセット142とページオフセッ
ト133の一方を選択する選択回路192と、選択回路
191からのページアドレスに+1を行う加算回路19
7と、この加算回路197からのページアドレスに対応
する物理アドレスのページアドレス部分を選択する第2
のTLB151と、第1のTLB150の出力と第2の
TLB151の出力の一方を選択する選択回路193
と、AND回路121の出力のページアドレス部分、A
ND回路122の出力ページアドレス部分、及び、アド
レス加算器130の中間結果であるページオフセットか
らのCarry131に基づいて選択回路191、192、
193の制御を行う選択制御回路194とを備えて構成
されている。
【0026】次に、前述のように構成される本発明の一
実施例において、メモリオペランドを使用する命令の処
理を行う動作を説明する。
【0027】まず、命令解読のマシンサイクルが実行さ
れる。命令レジスタ110に格納された命令は解読さ
れ、指標レジスタ識別子101及び基底レジスタ識別子
102はGPR120に転送される。GPR120は、
例えば、16本の汎用レジスタ群により構成されてお
り、それぞれ、0〜15の識別番号が割り当てられてい
る。そして、GPR120は、指標レジスタ識別子10
1に対応する識別番号の汎用レジスタを選択し、その内
容を指標レジスタの内容としてAND回路121に転送
する。また、GPR120は、基底レジスタ識別子10
2に対応する識別番号の汎用レジスタを選択し、その内
容を基底レジスタの内容としてAND回路122に転送
する。
【0028】“0”検出回路111は、指標レジスタ識
別子101の“0”検出を行い、指標レジスタ識別子1
01が“0”のとき、制御信号112をON状態とし、
指標レジスタ識別子101が“0”以外のとき、制御信
号112をOFF状態とする。また、“0”検出回路1
11は、基底レジスタ識別子102の“0”検出を行
い、基底レジスタ識別子102が“0”のとき、制御信
号113をON状態とし、基底レジスタ識別子102が
“0”以外のとき、制御信号113をOFF状態とす
る。
【0029】従って、AND回路121は、制御信号1
12がON状態のとき、すなわち、指標レジスタ識別子
101が“0”のとき、All“0”のデータを出力
し、制御信号112がOFF状態のとき、すなわち、指
標レジスタ識別子101が“0”以外のとき、指標レジ
スタの内容を出力する。
【0030】また、AND回路122は、制御信号11
3がON状態のとき、すなわち、基底レジスタ識別子1
02が“0”のとき、All“0”データを出力し、制
御信号113がOFF状態のとき、すなわち、基底レジ
スタ識別子102が“0”以外のとき、基底レジスタの
内容を出力する。
【0031】これにより、指標レジスタ、基底レジスタ
として“0”番の汎用レジスタが指定されたとき、
“0”番の汎用レジスタの内容にかかわらず、All
“0”のデータが、アドレス加算器130とOR回路1
90と選択制御回路194とに転送される。
【0032】通常、この種の処理においては、指標レジ
スタ識別子101、基底レジスタ識別子102が“0”
のとき、それらにレジスタの内容をアドレス生成のため
に使用しない。本発明は、このような処理の特性を利用
するために、前述のような識別子の“0”検出と、それ
に伴う処理を実行するものである。
【0033】次の論理アドレス生成のマシンサイクルで
は次の処理が実行される。AND回路121の出力とA
ND回路122の出力と変位ビット103とが、アドレ
ス加算器130で加算され、ページアドレス132とペ
ージオフセット133を含む論理アドレスが求められ、
このアドレスが論理アドレスレジスタ140に格納され
る。また、AND回路121の出力のページアドレス部
分とAND回路122の出力のページアドレス部分と
は、OR回路190で論理和をとられ選択回路191に
転送される。
【0034】一方、選択制御回路194は、AND回路
121の出力のページアドレス部分とAND回路122
の出力のページアドレス部分とにより選択回路191お
よび選択回路192を制御する。具体的にいえば、選択
制御回路194は、AND回路121の出力のページア
ドレス部分に“0”でないビットが少なくとも1つ存在
し、かつ、AND回路122の出力のページアドレス部
分に“0”でないビットが少なくとも1つ存在すると
き、制御信号195をON状態とし、前記以外のときは
制御信号195をOFF状態にする。
【0035】これにより、選択回路191は、制御信号
195がON状態のとき、アドレス加算器130により
得られた論理アドレスレジスタ140のページアドレス
141を選択し、制御信号195がOFF状態のとき、
OR回路190の出力を選択する。また、選択回路19
2は、制御信号195がON状態のとき、論理アドレス
レジスタ140のページオフセット142を選択し、制
御信号195がOFF状態のとき、アドレス加算器13
0から早期に得られるページオフセット133を選択す
る。
【0036】また、加算回路197は、選択回路191
の出力に1を加算し、選択回路191の出力の次のペー
ジアドレスを求める。
【0037】さらに、第1のTLB150は、選択回路
191の出力をキーとして論理アドレスに対応する物理
アドレスのページアドレス部分を検索し、第2のTLB
151は、加算回路197の出力、すなわち、選択回路
191の出力の次のページアドレスをキーとして論理ア
ドレスに対応する物理アドレスのページアドレス部分を
検索する。
【0038】なお、TLB検索に関する詳細は本発明の
範囲外であるため、ここではその説明を省略する。
【0039】また、選択制御回路194は、AND回路
121の出力のページアドレス部分とAND回路122
の出力のページアドレス部分とCarry131とにより選
択回路193を制御する。具体的にいえば、選択制御回
路194は、Carry131が“0”のとき、制御信号1
96をON状態とし、AND回路121の出力のページ
アドレス部分に“0”でないビットが少なくとも一つ存
在し、かつ、AND回路122の出力のページアドレス
部分に“0”でないビットが少なくとも一つ存在すると
き、制御信号196をON状態とし、前記以外のとき、
制御信号196をOFF状態にする。
【0040】これにより、選択回路193は、制御信号
196がON状態のとき、第1のTLB150の検索結
果を選択し、制御信号196がOFF状態のとき、第2
のTLB151の検索結果を選択する。また、選択回路
193の出力と選択回路192の出力とは、物理アドレ
スレジスタ160に格納される。
【0041】本発明の一実施例は、指標レジスタ識別子
101が“0”番、または、指標レジスタ内ページアド
レス部分がAll“0”のとき、ページアドレス141
が、基底レジスタの内容のページアドレス部分、すなわ
ち、OR回路190の出力あるいはその次のページアド
レスに等しく、また、基底レジスタ識別子102が
“0”番、または、基底レジスタ内ページアドレス部分
がAll“0”のとき、ページアドレス141が、指標
レジスタの内容のページアドレス部分、すなわち、OR
回路190の出力あるいはその次のページアドレスに等
しいことを利用するものであり、この条件が成立したと
き、アドレス加算と同時にTLBの検索を行うようにし
たものである。
【0042】これにより、本発明の一実施例は、1マシ
ンサイクルで物理アドレスを確定させることができる。
【0043】なお、前述において、レジスタ識別子が
“0”番のとき、汎用レジスタの読み出し結果であるA
ND回路121の出力あるいはAND回路122の出力
には、All“0”のデータが保証されているため、選
択回路191に入力されるデータは、AND回路121
の出力とAND回路122の出力の論理和で問題ない。
【0044】また、指標レジスタ内のページアドレス部
分に“0”でないビットが少なくとも1つ存在し、か
つ、基底レジスタ内ページアドレス部分に“0”でない
ビットが少なくとも1つ存在する場合、アドレス加算が
終了するまで論理アドレスのページアドレス部分が判ら
ないため、アドレス加算とTLB検索とをシリアルに実
行し、2マシンサイクルを使用して物理アドレスを確定
させる。
【0045】この場合、当該命令のTLB検索のマシン
サイクルでは、アドレス加算器130及び論理アドレス
レジスタ140が使用されないため、次命令のアドレス
加算を実行することができる。
【0046】次のキャッシュメモリ検索のマシンサイク
ルでは次の処理が実行される。キャッシュメモリ装置1
70は、物理アドレスレジスタ160によりキャッシュ
ディレクトリ172を検索し、命令によって要求された
データがキャッシュメモリ171内に存在するか否かを
判断する。データがキャッシュメモリ171内になけれ
ば、キャッシュメモリ装置170は、直接にはキャッシ
ュメモリ171を検索せず、要求されたデータを、別の
独立した機構により検索させるように処理をその機構に
移す。データがキャッシュメモリ171内にあれば、キ
ャッシュメモリ装置170は、物理アドレスによりキャ
ッシュメモリ171を検索し、命令によって要求された
データをALU180に転送する。
【0047】次の演算実行のマシンサイクルでは、AL
U180が、キャッシュメモリ装置170から転送され
たデータに基づいて演算の実行を行う。
【0048】次に、前述した本発明の一実施例における
命令の流れを図2を参照して説明する。図2において、
横軸は時間方向を表している。
【0049】図2において、命令1、命令2は、論理ア
ドレスのページアドレス部分が指標レジスタまたは基底
レジスタのページアドレス部分から予め判っている場合
であり、論理アドレス生成マシンサイクルとTLB検索
マシンサイクルとを同一のマシンサイクル内で実行する
ことができる。命令3は、アドレス加算終了まで論理ア
ドレスのページアドレス部分が判らない場合であり、こ
の場合、論理アドレス生成マシンサイクルとTLB検索
マシンサイクルとがシリアルに実行される。
【0050】また、命令3のTLB検索マシンサイクル
では、アドレス加算器が使用されないため、アドレス加
算処理とTLB検索処理は独立に動作可能であり、命令
4のアドレス加算を実行することができる。すなわち、
命令3の論理アドレス生成マシンサイクルとTLB検索
マシンサイクルとがシリアルに実行されても、命令4の
論理アドレス生成マシンサイクルが遅れることはない。
【0051】さらに、命令5の命令解読マシンサイクル
が何らかの原因で遅れても、図の例では、1マシンサイ
クル遅れて命令5の命令解読マシンサイクルが開始され
るが、命令5の論理アドレスのページアドレス部分が指
標レジスタまたは基底レジスタのページアドレス部分か
ら予め判っている場合には、論理アドレス生成マシンサ
イクルとTLB検索マシンサイクルとを同時に実行する
ことができるので、命令5の演算実行マシンサイクルが
遅れることはない。
【0052】前述したように本発明の一実施例によれ
ば、指標レジスタまたは基底レジスタのページアドレス
部分と論理アドレスのページアドレス部分とが等しいと
き、あるいは、指標レジスタまたは基底レジスタのペー
ジアドレス部分の次のページアドレスと論理アドレスの
ページアドレス部分とが等しいさき、アドレス加算と同
時にTLBを検索することが可能となり、物理アドレス
の確定までに要する時間を1マシンサイクル分短縮する
ことができる。
【0053】また、前述した本発明の一実施例は、論理
アドレスのページアドレス部分が予め判らない命令が連
続したときにも、アドレス加算に要するマシンサイクル
とTLB検索に要するマシンサイクルとが独立して動作
可能であるため、実効的な処理の遅れが生じない。
【0054】
【発明の効果】以上説明したように本発明によれば、論
理アドレスレジスタ確定以前に論理アドレスのページア
ドレス部分が予め判る場合、アドレス加算に要するマシ
ンサイクルと同一のマシンサイクルにおいてTLBを検
索することができる、すなわち、アドレス加算器をバイ
パスしてTLBを検索することができるので、キャッシ
ュメモリ装置の検索のために必要な物理アドレスの確定
までに要する時間を1マシンサイクル分短縮することが
できる。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示すブロック図であ
る。
【図2】本発明の一実施例における命令の流れを説明す
る図である。
【図3】従来技術の構成を示すブロック図である。
【符号の説明】
101 指標レジスタ識別子 102 基底レジスタ識別子 103 変位ビット 110 命令レジスタ 111 “0”検出回路 120 汎用レジスタ(GPR) 121、122 AND回路 130 アドレス加算器 140 論理アドレスレジスタ 150、151 変換索引緩衝機構(TLB) 160 物理アドレスレジスタ 170 キャッシュメモリ装置 171 キャッシュメモリ 172 キャッシュディレクトリ 180 算術論理演算装置(ALU) 190 OR回路 191〜193 選択回路 194 選択制御回路 197 +1加算回路
───────────────────────────────────────────────────── フロントページの続き (72)発明者 山岡 彰 神奈川県秦野市堀山下1番地 株式会社 日立製作所神奈川工場内 (56)参考文献 特開 昭57−33478(JP,A) 特開 昭57−74876(JP,A) 特開 昭59−56278(JP,A) 特開 平1−177145(JP,A) 特開 平2−12544(JP,A) 特開 平2−24718(JP,A) 特開 平3−194632(JP,A) 特開 平4−213135(JP,A) 特開 平4−277846(JP,A) 社団法人電子情報通信学会,”マイク ロプロセッサとRISC”,第1版,株 式会社オーム社,平成3年5月25日, p.113−114,120−123 (58)調査した分野(Int.Cl.7,DB名) G06F 12/08 - 12/12 G06F 9/30 - 9/355

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 基底レジスタ識別子、指標レジスタ識別
    子、変位ビットを含む命令格納装置と、基底レジスタ及
    び指標レジスタとして使用することのできる多数の汎用
    レジスタと、前記命令格納装置によって受け取った命令
    により指定される基底レジスタの内容、指標レジスタの
    内容及び変位ビットから、ページアドレス部分及びペー
    ジオフセット部分を有する論理アドレスを生成するため
    の論理アドレス生成装置と、前記論理アドレス生成装置
    により求められた論理アドレスを格納する論理アドレス
    格納装置と、論理アドレスに対応する物理アドレスを
    索するための変換索引緩衝機構と、前記変換索引緩衝機
    構により求まった前記物理アドレスを格納する物理アド
    レス格納装置とを備えて構成される情報処理装置におい
    て、 前記基底レジスタのページアドレス部分、前記指標レジ
    スタのページアドレス部分、前記論理アドレス格納装置
    のページアドレス部分の1つを選択する第1の選択装置
    を備え、前記第1の選択装置は、前記基底レジスタのページアド
    レス部分が全て“0”または前記指標レジスタのページ
    アドレス部分が全て“0”のとき、前記指標レジスタの
    ページアドレス部分または前記基底レジスタのページア
    ドレス部分を選択し、前記基底レジスタのページアドレ
    ス部分に“0”でないビットが少なくとも1つ存在しか
    つ前記指標レジスタのページアドレス部分に“0”でな
    いビットが少なくとも1つ存在するとき、前記論理アド
    レス格納装置のページアドレス部分を選択し、 前記変換索引緩衝機構は、前記第1の選択装置の選択結
    果に対応する前記物理アドレスを検索する ことを特徴と
    する情報処理装置。
  2. 【請求項2】 前記変換索引緩衝機構を複数備え、さら
    に、前記複数の変換索引緩衝機構により求められた複数
    の前記物理アドレスを選択する第2の選択装置を備え、 前記複数の変換索引緩衝機構は、第1の変換索引緩衝機
    構と第2の変換索引緩衝機構とから構成され、 前記第2の選択装置は、前記論理アドレス生成装置のア
    ドレス生成途中の結果 が“0”のとき、前記第1の変換
    索引緩衝機構の検索結果を選択し、前記基底レジスタの
    ページアドレス部分に“0”でないビットが少なくとも
    1つ存在しかつ前記指標レジスタのページアドレス部分
    に“0”でないビットが少なくとも1つ存在するとき、
    前記第1の変換索引緩衝機構の検索結果を選択し、前記
    論理アドレス生成装置のアドレス生成途中の結果が
    “1”でかつ前記基底レジスタのページアドレス部分が
    全て“0”もしくは前記指標レジスタのページアドレス
    部分が全て“0”のとき、前記第2の変換索引緩衝機構
    の検索結果を選択し、 前記物理アドレス格納装置は、前記第2の選択装置の選
    択結果を格納することを特徴とする請求項1記載の 情報
    処理装置。
  3. 【請求項3】 前記第1の変換索引緩衝機構は、前記第
    1の選択装置の選択結果に対応する第1の物理アドレス
    を検索し、前記第2の変換索引緩衝機構は前記第1の選
    択装置の選択結果の次のページアドレスに対応する第2
    の物理アドレスを検索することを特徴とする請求項2記
    載の情報処理装置。
  4. 【請求項4】 前記論理アドレス生成装置により求めら
    れた前記論理アドレスのページオフセット部分と前記論
    理アドレス格納装置のページオフセット部分とを選択す
    る第3の選択装置を備え、 前記第3の選択装置は、前記基底レジスタのページアド
    レス部分が全て“0”または前記指標レジスタのページ
    アドレス部分が全て“0”のとき、前記論理アドレス生
    成装置により求められた前記論理アドレスのページオフ
    セット部分を選択し、前記基底レジスタのページアドレ
    ス部分に“0”でないビットが少なくとも1つ存在しか
    つ前記指標レジスタのページアドレス部分に“0”でな
    いビットが少なくとも1つ存在するとき、前記論理アド
    レス格納装置のページオフセット部分を選択することを
    特徴とする請求項1または2記載の 情報処理装置。
  5. 【請求項5】 前記指標レジスタ識別子が“0”のとき
    当該指標レジスタの内容を全て“0”とし、前記基底レ
    ジスタ識別子が“0”のとき当該基底レジスタの内容を
    全て“0”とする検出装置を備えることを特徴とする請
    求項1ないし4のうちいずれか1記載の情報処理装置。
JP19550292A 1992-07-22 1992-07-22 情報処理装置 Expired - Fee Related JP3199465B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP19550292A JP3199465B2 (ja) 1992-07-22 1992-07-22 情報処理装置
US08/093,969 US5490259A (en) 1992-07-22 1993-07-21 Logical-to-real address translation based on selective use of first and second TLBs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19550292A JP3199465B2 (ja) 1992-07-22 1992-07-22 情報処理装置

Publications (2)

Publication Number Publication Date
JPH0644135A JPH0644135A (ja) 1994-02-18
JP3199465B2 true JP3199465B2 (ja) 2001-08-20

Family

ID=16342155

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19550292A Expired - Fee Related JP3199465B2 (ja) 1992-07-22 1992-07-22 情報処理装置

Country Status (2)

Country Link
US (1) US5490259A (ja)
JP (1) JP3199465B2 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6427193B1 (en) 1999-05-18 2002-07-30 Advanced Micro Devices, Inc. Deadlock avoidance using exponential backoff
US6473837B1 (en) 1999-05-18 2002-10-29 Advanced Micro Devices, Inc. Snoop resynchronization mechanism to preserve read ordering
US6393536B1 (en) 1999-05-18 2002-05-21 Advanced Micro Devices, Inc. Load/store unit employing last-in-buffer indication for rapid load-hit-store
US6266744B1 (en) 1999-05-18 2001-07-24 Advanced Micro Devices, Inc. Store to load forwarding using a dependency link file
US6473832B1 (en) 1999-05-18 2002-10-29 Advanced Micro Devices, Inc. Load/store unit having pre-cache and post-cache queues for low latency load memory operations
US6415360B1 (en) 1999-05-18 2002-07-02 Advanced Micro Devices, Inc. Minimizing self-modifying code checks for uncacheable memory types
US6662280B1 (en) 1999-11-10 2003-12-09 Advanced Micro Devices, Inc. Store buffer which forwards data based on index and optional way match
US7321964B2 (en) * 2003-07-08 2008-01-22 Advanced Micro Devices, Inc. Store-to-load forwarding buffer using indexed lookup
JP4327669B2 (ja) * 2004-06-29 2009-09-09 徳元 王 キャッシュ装置及び方法
US7376817B2 (en) * 2005-08-10 2008-05-20 P.A. Semi, Inc. Partial load/store forward prediction
US7805589B2 (en) * 2006-08-31 2010-09-28 Qualcomm Incorporated Relative address generation
US8195916B2 (en) * 2009-03-04 2012-06-05 Qualcomm Incorporated Apparatus and method to translate virtual addresses to physical addresses in a base plus offset addressing mode
US9128725B2 (en) 2012-05-04 2015-09-08 Apple Inc. Load-store dependency predictor content management
US9600289B2 (en) 2012-05-30 2017-03-21 Apple Inc. Load-store dependency predictor PC hashing
US9710268B2 (en) 2014-04-29 2017-07-18 Apple Inc. Reducing latency for pointer chasing loads
US10514925B1 (en) 2016-01-28 2019-12-24 Apple Inc. Load speculation recovery
US10437595B1 (en) 2016-03-15 2019-10-08 Apple Inc. Load/store dependency predictor optimization for replayed loads

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5148538A (en) * 1989-10-20 1992-09-15 International Business Machines Corporation Translation look ahead based cache access

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
社団法人電子情報通信学会,"マイクロプロセッサとRISC",第1版,株式会社オーム社,平成3年5月25日,p.113−114,120−123

Also Published As

Publication number Publication date
US5490259A (en) 1996-02-06
JPH0644135A (ja) 1994-02-18

Similar Documents

Publication Publication Date Title
JP3199465B2 (ja) 情報処理装置
JP3513038B2 (ja) 命令フェッチ制御装置
EP0173981A2 (en) Cache memory control circuit
JPS6255736A (ja) デジタルプロセッサ制御装置
US5226132A (en) Multiple virtual addressing using/comparing translation pairs of addresses comprising a space address and an origin address (sto) while using space registers as storage devices for a data processing system
JPH11316679A (ja) 多数のバンクアドレス値供給源を有するプロセッサアーキテクチャスキームおよびその方法
JPH04213135A (ja) 外部メモリアクセスシステム
EP0239359B1 (en) Address translation circuit
EP0471888A2 (en) Microprocessor for enhancing initiation of data processing after execution of conditional branch instruction
JP2000020311A (ja) 情報処理装置
JPH05181674A (ja) プロセッサのページ越処理方式
JP2621763B2 (ja) 情報処理装置
JPH01177145A (ja) 情報処理装置
JP2656765B2 (ja) データ処理装置
JPH1031618A (ja) データ変換方式
JP3494116B2 (ja) 処理装置
JP2685713B2 (ja) データ処理装置
JP2560520B2 (ja) 先行制御装置
JPH0991139A (ja) 情報処理装置
US5524221A (en) Next instruction pointer calculation system for a microcomputer
JPH07200406A (ja) キャッシュシステム
JP2928566B2 (ja) オペランド読み出し装置
JP3977961B2 (ja) プロセッサ装置
JPH0553915A (ja) アドレス変換装置
JPH08137756A (ja) アドレス変換バッファ機構

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010529

LAPS Cancellation because of no payment of annual fees