JP2003058421A - プロセッサ及びコンピュータシステム - Google Patents
プロセッサ及びコンピュータシステムInfo
- Publication number
- JP2003058421A JP2003058421A JP2001245531A JP2001245531A JP2003058421A JP 2003058421 A JP2003058421 A JP 2003058421A JP 2001245531 A JP2001245531 A JP 2001245531A JP 2001245531 A JP2001245531 A JP 2001245531A JP 2003058421 A JP2003058421 A JP 2003058421A
- Authority
- JP
- Japan
- Prior art keywords
- address
- instruction
- load instruction
- exception
- processor
- 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.)
- Granted
Links
Landscapes
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
の頻度を減らし、アプリケーションプログラムを高速に
実行する。 【解決手段】 non faultingロードがアドレス変換に失
敗したときに、例外を起こすか、起こさないかを制御す
るビットをプロセッサの制御レジスタに設ける。そし
て、non faultingロード命令がアドレス変換例外を起こ
す必要がないとソフトウェアが判断したとき、例外を起
こさないモードに設定することにより、アドレス変換例
外の処理のオーバヘッドを減らすことができる。
Description
ンピュータシステムに係り、特に、普通のロード命令の
他にnon faultingロード命令を処理するプロセッサ及び
このプロセッサを備えたコンピュータシステムに関す
る。
ード命令の実行サイクル数は、演算命令の実行サイクル
数より長い傾向がある。このため、プロセッサの性能を
十分に引き出すためには、プログラムの中において、ロ
ード命令とそのロードデータを使用する演算命令とをな
るべく離して配置するすことが必要である。
ゲートのスピード向上ペースより遅いため、プロセッサ
の動作周波数が向上するにつれ、キャッシュヒットの場
合でもロード命令の実行サイクル数は増加する傾向にあ
る。さらに、スーパースカラ方式が採用され、複数の命
令を1サイクル内で同時に実行するようになると、ロー
ド命令とそのロードデータを使う演算命令とを十分離す
には、さらに多くの命令をロード命令と演算命令との間
に入れる必要がある。ところが、プログラムには、分岐
命令が含まれており、この分岐命令が妨げとなって、ロ
ード命令と演算命令とを十分に離すことができないこと
がある。一例として、次のようなC言語による if(ptr ≠NULL) x=*ptr + y; (1) というプログラムを考える。
変数ptr が0でなければ、そのアドレスptr を読み出し
てその読み出し内容*ptrにyを加えてxを求めるという
命令プログラムである。この命令プログラムにおいて、
*ptrをロードする命令と*ptr+yを計算する命令とを十分
離すには、ptr ≠NULLの判定をする前に*ptrをロードす
ればよい。すなわち、 temp_reg=*ptr; (ロードした*ptrをレジスタに一時格納する命令) 関係ない命令; if(ptr ≠NULL) x=temp + y; (2) の順となるように順に命令列を作成すればよい。
ド命令のアドレスがNULLの場合、例外が発生してプログ
ラムの実行が中止されてしまうので、このような最適化
を行うことができない。
命令の後ろにあるロード命令が実行されないとき、その
ロードアドレスはどのような値になるかは判らない。従
って、分岐命令の前にロード命令を移動すると例外が発
生する可能性がある。
て、例えば、「David.L.Weaver and Tom Germond,The SP
ARC Architecture Manual,Version9,Prentice-Hall,In
c.,1994」に記載された、non faultingロード命令を導
入するという技術がが知られている。このnon faulting
ロード命令の基本的な動作は、普通のロード命令と同一
であるが次の2点が異なる。すなわち、アドレス変換が
可能で、そのメモリ領域に対してnon faultingロード実
行可能属性が設定されていれば、例外を発生させない。
また、address out of rangeなどが原因でアドレス変換
ができない場合、システムソフトウェアとの協力によっ
てターゲットレジスタに0が書き込まれて例外が無視さ
れ、プログラムの実行が継続される。
普通のロード命令の代わりに使用する従来技術は、前述
したような例の場合にも例外発生によってプログラム実
行が中止されることがなくなる。このため、前述した従
来技術は、ロード命令とその結果を使用する演算命令と
の距離を大きくし、プログラムの実行性能を向上させる
ことができる。なお、分岐命令の前に移動したロード命
令が例外を発生する場合、そもそもそのロード命令を実
行する必要がない(そのようなアドレスのときは実行さ
れないように分岐命令によって制御されていたはず)の
で、このような方法としても問題はない。
れば、ロード命令を演算命令から離すために、ロード命
令を分岐命令より前に移動し、プログラムの実行性能の
向上を図ることが可能になる。しかし、前述の従来技術
は、アドレス変換例外が発生する可能性が残る。この理
由は、変換テーブルが大きくなりすぎるため、全てのア
ドレスについて変換エントリを用意することができない
ためである。従って、non faultingロード命令を使用す
る前述した従来技術は、アドレス変換例外発生の確率と
その処理オーバヘッドがあってもプログラム実行が高速
化できるか否かとを考慮する必要がある。
にハッシュテーブルを使うアーキテクチャの場合、ハッ
シュの計算結果が同じ場所に登録できるアドレス変換の
数に限りがあり、このため、全てのアドレス変換をハッ
シュテーブルに入れることができず、address out of r
angeでないにもかかわらずアドレス変換例外が発生する
ことがある。従って、non faultingロードでアドレス変
換例外が起きたとき、まず、そのアドレスを調べ、addr
ess out of rangeであればアドレス変換例外を無視し、
そうでなければハッシュテーブルを入れ替える必要があ
る。この処理は、オーバヘッドが大きく、また、ソフト
ウェアでTLB を入れ替えるアーキテクチャの場合にも、
一度に扱えるアドレス変換の数に制約があるので同様の
問題が生じる。
点を解決し、non faultingロードのアドレス変換例外の
頻度を減らし、アプリケーションプログラムを高速に実
行することを可能にしたnon faultingロード命令を処理
するプロセッサ及びこのプロセッサを備えたコンピュー
タシステムを提供することにある。
は、第1のロード命令(通常のロード命令)と、前記第
1のロード命令とは命令コードが異なる第2のロード命
令(non faultingロード命令)とを実行可能に構成され
たプロセッサにおいて、論理アドレスを物理アドレスに
変換するアドレス変換回路と、制御ビットと、前記第2
のロード命令で前記アドレス変換回路がアドレス変換に
失敗したとき、前記制御ビットの値によってアドレス変
換例外を発生させるか否かを制御する制御機能とを備え
たことにより達成される。
レス変換例外を起こす必要がないとソフトウェアが判断
したとき、例外を起こさないようにすることができ、こ
れにより、アドレス変換例外の処理オーバヘッドを減ら
すことができる。
ロード命令を処理するプロセッサ及びコンピュータシス
テムの実施形態を図面により詳細に説明する。
ータシステムの構成を示すブロック図である。図1にお
いて、601は命令キャッシュ、602は命令TLB、
611は浮動小数点レジスタ、612は浮動小数点演算
器、621は汎用レジスタ、622はALU、623は
データキャッシュ、624はデータTLB、626はバ
スインタフェース、631はテーブル検索エンジン、6
41はプロセッサ、642はプロセッサバス、643は
メインメモリ、644はI/O装置である。
たは複数のプロセッサ641(図1には1台のみを示し
ている)と、メインメモリ643及びI/O装置644
とがプロセッサバス642により接続されて構成され
る。プロセッサ641は、分岐命令、整数演算命令、浮
動小数点演算命令、ロード・ストア命令、システム制御
命令等を実行することができ、また、通常のロード命令
が例外を発生するようなケースでも例外を発生しないノ
ンフォルトロード命令も実行可能である。
1とデータキャッシュ623とを備えており、キャッシ
ュミスの場合、命令キャッシュまたはデータキャッシュ
に必要なラインをメインメモリから転送してから処理を
行う。また、プロセッサ641は、命令TLB602、
データTLB624、浮動小数点レジスタ611、浮動
小数点演算器612、汎用レジスタ621、ALU62
2、テーブル検索エンジン631を備え、これらが協力
して命令を実行する。
2本の64ビット汎用レジスタにより構成され、浮動小
数点レジスタ611は、32本の64ビット浮動小数点
レジスタにより構成されている。汎用レジスタ621
は、整数演算の対象となるデータやロード・ストア命令
のアドレスを保持するために使用され、浮動小数点レジ
スタ611は、浮動小数点演算の対象となるデータを保
持するために使用される。また、プロセッサ641は、
プロセッサ641の動作を制御する制御レジスタを幾つ
か備えている。制御レジスタとしては、non faultingロ
ード許可レジスタNLDR625、ページテーブルアド
レスレジスタPAR632、ブロックテーブルアドレス
レジスタBAR633等が備えられている。これらの制
御レジスタの値は、mtcr/mfcr命令によって汎用レジス
タとの間で読み書きすることが可能である。
うと共に、ロード・ストア命令のアドレスの計算をも行
う。命令TLB602とデータTLB624とは、最近
使ったアドレス変換の幾つかを保持しており、これらの
TLBにヒットすればテーブルを検索する必要がないた
め、高速にアドレスを変換することができる。TLBミ
スの場合、テーブル検索エンジン631に対して、テー
ブル検索要求を発行して内容を入れ替える。
テーブル/ブロックテーブルのPPビットも保持されて
おり、メモリアクセスが許可されているか否かのチェッ
クも行うことができる。アクセスが禁止されている場
合、命令フェッチアクセスと普通のロード命令ならば、
メモリ保護例外が発生するが、non faultingロード命令
の場合、ターゲットレジスタに0を書き込んで命令の実
行が完了する。これに加えて、データTLBには、ペー
ジテーブル/ブロックテーブルのCビットのコピーも保
持されている。ストア命令でこのビットが0ならば、デ
ータTLB624は、このビットを1にセットすると同
時に、テーブル検索エンジン631を起動してページテ
ーブル/ブロックテーブル本体のCビットもセットす
る。
B602またはデータTLB624からの要求を受け
て、図5と図6とにより後述するように、アドレス変換
テーブルを検索してアドレス変換の処理を行う。このた
め、テーブル検索エンジン631は、内部にテーブル検
索に必要なページテーブルアドレスレジスタPAR63
2、ブロックテーブルアドレスレジスタBAR633を
備えている。検索に成功した場合、その変換エントリの
Rビットがセットされ、変換結果が命令TLB602ま
たはデータTLB624に送られて登録される。また、
データTLB624からのCビットセット要求の場合、
発見した変換エントリのCビットをセットする。
に失敗した場合、テーブル検索エンジン631は、その
ことを検索要求元のTLBに通知する。命令TLB60
2は、検索失敗が通知されると命令アドレス変換例外を
発生させる。また、データTLB624は、命令の種類
とNLDR625の値によってデータアドレス変換例外
を起こすかどうかを決定する。すなわち、普通のロード
命令の場合、必ずアドレス変換例外を発生させ、non fa
ultingロード命令の場合、NLDR=0であれば、アド
レス変換例外を生起させ、NLDR=1であれば、ター
ゲットレジスタに0を書き込み命令を完了させる。
セッサ641は、ロード・ストアアーキテクチャを採用
しており、メモリ上のデータについて直接演算を行うこ
とはできない。すなわち、プロセッサ641は、メモリ
上のデータについて演算を行う場合、メモリのデータを
ロード命令または、non faultingロード命令により一旦
レジスタに入れてから演算を行い、演算結果をストア命
令によってレジスタからメモリに書き戻す。
ア命令として、1,2,4,8バイトのデータを扱うこ
とができ、アドレスがデータサイズの整数倍でない場
合、アライメント違反の例外が発生する。アドレス空間
の大きさは、仮想アドレス空間も物理アドレス空間も2
64バイトである。
命令の処理動作を説明するフローチャートであり、次
に、これについて説明する。
タから読み出したデータを使用して、ロードデータの論
理アドレスが計算される。次に、その論理アドレスを物
理アドレスに変換するために変換テーブルが検索され
る。詳細は後で説明するが、本発明の実施形態によるプ
ロセッサは、アドレス変換テーブルとしてハッシュテー
ブルを使用している(ステップ101〜103)。
か否かをチェックし、アドレス変換エントリが見つかっ
ていた場合、そのページに対するアクセス権がるか否か
をチェックする(ステップ104、107)。
セスが許可されていた場合、メモリから読み出したデー
タをレジスタに書き込む。これにより、ロード命令の実
行は正常に終了する(ステップ109、111)。
レス変換エントリが見つからなかった場合、アドレス変
換例外が発生し、また、ステップ107のチェックで、
アドレス変換エントリが見つかったがそのアドレスに対
するアクセスが禁止されてた場合、メモリ保護例外が発
生し、割り込みを発生させる(ステップ113)。
レジスタの値は変わらない。そして、前述のメモリ保護
例外、アドレス変換例外が発生した場合の例外処理ルー
チンの動作は次の3種類となる。すなわち、メモリ保護
例外の場合、そのプログラムの実行を中止する。アドレ
ス変換例外であるが、address out of rangeではない場
合(ハッシュテーブルからアドレス変換エントリがあふ
れたケース)、ハッシュテーブルをオペレーティングシ
ステムが入れ替えてプログラムの実行を続ける。また、
アドレス変換例外でであってaddress out of rangeの場
合、プログラムのバグとみなしてプログラムの実行を中
止する。
ロード命令の処理動作を説明するフローチャートであ
り、次に、これについて説明する。この命令の動作は、
アドレス変換テーブルが見つかり、かつ、そのページに
対するアクセスが許されていれば、普通のロード命令と
同一である。すなわち、ステップ101から開始され、
ステップ102〜104、107、109を経てステッ
プ111で終了する処理は、図2により説明した場合と
同一の処理となる。従って、以下では、図2の場合と異
なる処理についてのみ説明する。
変換テーブルのエントリがが見つかったが、ステップ1
07の処理でアクセスが禁止されていた場合、メモリ保
護例外を発生させず、レジスタに0を書き込んで、この
non faultingロード命令の処理を正常終了する(ステッ
プ110、111)。
変換テーブルのエントリが見つからなかった場合、non
faultingロード許可レジスタの値が1であるか否かを調
べ、non faultingロード許可レジスタが1であればアド
レス変換外を発生させず、ターゲットレジスタに0が書
き込んで、このnon faultingロード命令の処理を正常終
了する(ステップ106、110、111)。
faultingロード許可レジスタが0であった場合、アドレ
ス変換例外を発生させる。この場合、オペレーティング
システムは、address out of rangeのとき例外を無視
し、そうでなければ、ハッシュテーブルを入れ替えてプ
ログラムの実行を続ける(ステップ113)。
LDRのレイアウトを説明する図である。non faulting
ロード許可レジスタNLDR625は、図4に示すよう
な構成の64ビットのレジスタである。そして、ビット
0〜62は予約ビットであり、この部分にデータが書き
込まれても無視され、この部分が読み出された場合、0
が読み出される。ビット63は、non faultingロードア
ドレス例外抑止ビットであり、このビットが1のとき、
non faultingロード命令でアドレス変換が失敗しても例
外を発生させない。オペレーティングシステムは、必要
なアドレス変換が全てハッシュテーブルに入っているこ
とを保証できるとき、このビットをセットする。その条
件は、アドレス変換テーブルの構造と関係がある。
理アドレスを物理アドレスに変換するハードウェアを備
えており、そのために2つのテーブルが使用される。こ
れらは、ページ単位の変換を行うページテーブルPTA
Bと、ブロック単位でアドレスの変換を行うブロックテ
ーブルBTABとであり、以下、これらについて説明す
る。
ージ単位のアドレス変換を行うアドレス変換機構の構成
を示すブロック図である。図5において、406はペー
ジテーブル、407はページテーブルエントリグルー
プ、408はページテーブルエントリである。なお、こ
のアドレス変換機構は、図1に示すテーブル検索エンジ
ン631に含まれるものであり、また、ページテーブル
406そのものは、メインメモリまたはキャッシュ内に
格納されている。
ページテーブルPTAB406は、システム内の全プロ
セッサにより共有されており、複数のページテーブルエ
ントリグループPTEG407から構成され、それぞれ
のPTEG407には、1エントリ16バイトのページ
テーブルエントリPTE408が8個備えられている。
このページテーブルPTAB406の大きさは可変であ
り、ページテーブルアドレスレジスタPAR401/4
02(図1に示すPAR632)により指定される。ま
た、PARには、PTAB406の先頭アドレスも保持
されている。
する論理ページのアドレスLPN(論理ページ番号)4
09、エントリの有効(V=1)/無効(V=0)を示
すV(バリッド)410、変換結果の物理ページ番号P
PN(物理ページ番号)411、このエントリが変換す
るアドレスに対してアクセスがあったことを示し、アク
セスがあったときにハードウェアからセットされるR
(リファレンスビット)412、このエントリが変換す
るアドレスに対して書き込みアクセスがあったことを示
し、アクセスがあったときにハードウェアからセットさ
れるC(チェンジビット)413、アクセスの可否を制
御するための4ビットからなる情報PP(プロテクショ
ン)414の各情報が保持されている。
413とは、オペレーティングシステムがページを入れ
替える際に参照される。また、アクセスの可否を制御す
るための情報PP(プロテクション)の各ビットは、ス
ーパバイザ書込み可を示すSWE、ユーザ書込み可を示
すUWE、スーパバイザ読み出し可を示すSRE、ユー
ザ読み出し可を示すUREのビットである。
も説明したように制御レジスタの1つであり、ビット0
〜45は PTABORG401と呼ばれ、PTAB406の先
頭の物理アドレスを示している。また、PTABSIZE402
と呼ばれるビット59〜63はPTAB406の大きさ
を示している。PTABSIZEの値としては、0〜28が許さ
れており、PTABの大きさは256キロバイト×2
PTABSIZEになる。
物理アドレスに変換する手順について説明する。
ブルエントリグループPTEG407の物理アドレス4
05を求める。PTEG407の物理アドレス405
は、PTABORG のビット0〜17と、PTABORG のビット1
8〜45と論理アドレスのビット13〜40とをPTABSI
ZEに応じて選択したものと、論理アドレスのビット41
〜51と、7ビットの0とを連結して得ることができ
る。
Eを調べる。論理アドレスに対応するPTEが見つかっ
たら、変換成功であり、見つからなければ、変換失敗で
ある。そのPTEが与えられた論理アドレスに対応する
ものであるか否かは、PTE内のV(バリッド)410
=1であるか否か、PTE内のLPN(論理ページ番
号)=論理アドレス(0〜40)であるか否かにより判
別し、両者が一致したとき、そのPTEが与えられた論
理アドレスに対応するものであると判別できる。変換結
果の物理アドレスは、PTEの物理ページ番号411と
論理アドレスのビット52〜63とにより与えられる。
PTEGの中に同じ論理アドレスに対応するPTEが2
つ以上含まれて場合、アドレス変換の結果は不定であ
る。
ブロック単位でアドレス変換を行うアドレス変換機構の
構成を示すブロック図である。図6において、506は
ブロックテーブル、507はブロックエントリグルー
プ、508はブロックエントリである。なお、このアド
レス変換機構は、図1に示すテーブル検索エンジン63
1に含まれるものであり、また、ブロックテーブル50
6そのものは、メインメモリまたはキャッシュ内に格納
されている。
ック単位でアドレスを変換するブロックテーブルBTA
B506は、PTABと同様の構成を有している。1ブ
ロックの大きさは16メガバイトである。BTAB50
6は、複数のブロックエントリグループBTEG507
からなり、それぞれのBTEGには1エントリ16バイ
トのブロックエントリBTE508が8個備えられてい
る。このテーブルの大きさは可変であり、ブロックテー
ブルアドレスレジスタBAR501/502(図1に示
すBAR633)により指定される。また、BARに
は、BTAB506の先頭アドレスも保持されている。
リが変換する論理ブロック番号LBN(論理ブロック番
号)509、エントリの有効(V=1)/無効(V=
0)を示すV(バリッド)510、変換結果の物理ブロ
ック番号PBN(物理ブロックページ番号)511、P
TEのR,C,PPと同一の意味を持つR、C、PP5
12〜514の各情報が保持されている。
も、図1で説明したように、制御レジスタの1つであ
り、ビット0〜45は BTABORG501と呼ばれ、BTA
B506の先頭の物理アドレスを示すフィールドであ
る。また、BTAB506の大きさは、BTABSIZE502
と呼ばれるビット60〜63に設定される。BTABSIZEの
値としては、0〜15が許されており、BTABの大き
さは256キロバイト×2 BTABSIZEになる。
ドレスに変換する手順はPTABの場合と同様である。
まず、論理アドレスに対応するブロックテーブルエント
リグループBTEGの物理アドレス505を求める。B
TEGの物理アドレス505は、BTABORG のビット0〜
42と、BTABORG のビット42〜45と論理アドレスの
ビット25〜28とをBTABSIZEに応じて選択したもの
と、論理アドレスのビット29〜39と、7ビットの0
とを連結して得ることができる。
Eを調べる。論理アドレスに対応するBTEが見つかっ
たら、変換成功であり、見つからなければ、変換失敗で
ある。そのBTEが与えられた論理アドレスに対応する
ものであるか否かは、BTE内のV(バリッド)510
=1であるか否か、BTE内のLBN(論理ページ番
号)=論理アドレス(0〜28)であるか否かにより判
別し、両者が一致したとき、そのBTEが与えられた論
理アドレスに対応するものであると判別できる。変換結
果の物理アドレス515は、BTEの物理ブロック番号
511と、論理アドレスのビット46〜63とを連結し
たものとして与えられる。BTEGの中に同じ論理アド
レスに対応するBTEが2つ以上含まれて場合、アドレ
ス変換の結果は不定である。
変換が可能な場合、ページテーブルによる変換が優先さ
れる。
なアドレス変換の全てがテーブルに入っているための条
件は次のようになる。まず、変換テーブルの大きさは、
1つのスレッドが使えるアドレス空間の大きさが1テラ
(240)バイトの場合、ページテーブルの大きさ :2
40÷212×16バイト=4ギガバイトブロックテーブル
の大きさ:240÷224×16バイト=1メガバイトとな
る。すなわち、、ページ変換を使用した場合、1スレッ
ド分のアドレス変換の全てをテーブルに入れておくこと
はできないので、できるだけ多くのアドレス変換にブロ
ック変換を使用して1スレッド分のアドレス変換の全て
がテーブルに入れらるようにしなければならない。
ブロックテーブルグループの指定に論理アドレスのビッ
ト25〜39を使用しているので、スレッドの数が8を
越えると、スラッシングによってブロックテーブルから
アドレス変換があふれてしまう可能性がある。従って、
本発明の実施形態は、スレッドの数が8以下でアドレス
変換のほとんど、または、全てに対してブロック変換が
適用されているときにnon faultingロードのアドレス変
換例外を抑止することができる。
faultingロードでアドレス変換テーブルが見つからない
ときに例外を起こすか、起こさないかをソフトウェアで
制御することができるようにし、必要のないときにはア
ドレス変換例外を抑止することとしているので、アプリ
ケーションプログラムの実行を高速化することができ
る。
n faultingロード処理のアドレス変換例外の頻度を減ら
し、アプリケーションプログラムを高速に実行すること
ができる。
ムの構成を示すブロック図である。
動作を説明するフローチャートである。
の処理動作を説明するフローチャートである。
イアウトを説明する図である。
アドレス変換を行うアドレス変換機構の構成を示すブロ
ック図である。
位でアドレス変換を行うアドレス変換機構の構成を示す
ブロック図である。
Claims (5)
- 【請求項1】 第1のロード命令と、前記第1のロード
命令とは命令コードが異なる第2のロード命令とを実行
可能に構成されたプロセッサにおいて、論理アドレスを
物理アドレスに変換するアドレス変換回路と、前記第2
のロード命令で前記アドレス変換回路がアドレス変換に
失敗したとき、アドレス変換例外を発生させないように
する制御機能とを備えたことを特徴とするプロセッサ。 - 【請求項2】 第1のロード命令と、前記第1のロード
命令とは命令コードが異なる第2のロード命令とを実行
可能に構成されたプロセッサにおいて、論理アドレスを
物理アドレスに変換するアドレス変換回路と、制御ビッ
トと、前記第2のロード命令で前記アドレス変換回路が
アドレス変換に失敗したとき、前記制御ビットの値によ
ってアドレス変換例外を発生させるか否かを制御する制
御機能とを備えたことを特徴とするプロセッサ。 - 【請求項3】 最近に行われた前記アドレス変換を保持
するアドレス変換バッファを備えたことを特徴とする請
求項1または2記載のプロセッサ。 - 【請求項4】 前記第2のロード命令が、non faulting
ロード命令であることを特徴とする請求項1、2または
3記載のプロセッサ。 - 【請求項5】 請求項1ないし4のうちいずれか1記載
のプロセッサを備えたことを特徴とするコンピュータシ
ステム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001245531A JP4011871B2 (ja) | 2001-08-13 | 2001-08-13 | プロセッサ及びコンピュータシステム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001245531A JP4011871B2 (ja) | 2001-08-13 | 2001-08-13 | プロセッサ及びコンピュータシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003058421A true JP2003058421A (ja) | 2003-02-28 |
JP4011871B2 JP4011871B2 (ja) | 2007-11-21 |
Family
ID=19075262
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001245531A Expired - Fee Related JP4011871B2 (ja) | 2001-08-13 | 2001-08-13 | プロセッサ及びコンピュータシステム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4011871B2 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011227880A (ja) * | 2010-04-22 | 2011-11-10 | Arm Ltd | プレロード命令制御 |
JP7485489B2 (ja) | 2019-09-30 | 2024-05-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 変換ロード命令 |
-
2001
- 2001-08-13 JP JP2001245531A patent/JP4011871B2/ja not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011227880A (ja) * | 2010-04-22 | 2011-11-10 | Arm Ltd | プレロード命令制御 |
US9632776B2 (en) | 2010-04-22 | 2017-04-25 | Arm Limited | Preload instruction control |
JP7485489B2 (ja) | 2019-09-30 | 2024-05-16 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 変換ロード命令 |
Also Published As
Publication number | Publication date |
---|---|
JP4011871B2 (ja) | 2007-11-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6430657B1 (en) | Computer system that provides atomicity by using a tlb to indicate whether an exportable instruction should be executed using cache coherency or by exporting the exportable instruction, and emulates instructions specifying a bus lock | |
EP0851357B1 (en) | Method and apparatus for preloading different default address translation attributes | |
US6430668B2 (en) | Speculative address translation for processor using segmentation and optical paging | |
US4774653A (en) | Hybrid hardware/software method and apparatus for virtual memory address translation using primary and secondary translation buffers | |
JP4520790B2 (ja) | 情報処理装置およびソフトウェアプリフェッチ制御方法 | |
US5555395A (en) | System for memory table cache reloads in a reduced number of cycles using a memory controller to set status bits in the main memory table | |
EP0175091A2 (en) | Fast two-level dynamic address translation method and means | |
JP3666689B2 (ja) | 仮想アドレス変換方法 | |
US11474956B2 (en) | Memory protection unit using memory protection table stored in memory system | |
JPH04232551A (ja) | 多重仮想アドレス変換方法及び装置 | |
JPS61141055A (ja) | 情報処理装置のアドレス変換方式 | |
JPS6248258B2 (ja) | ||
EP3830719B1 (en) | Binary search procedure for control table stored in memory system | |
JP3045952B2 (ja) | フルアソシアティブ・アドレス変換器 | |
US7231506B2 (en) | Microprocessor | |
US5341485A (en) | Multiple virtual address translation per computer cycle | |
JPH02292648A (ja) | 多重仮想記憶システムおよびアドレス制御装置 | |
JP4011871B2 (ja) | プロセッサ及びコンピュータシステム | |
JPH05165663A (ja) | データ処理装置 | |
EP1262876B1 (en) | Multiprocessing system with shared translation lookaside buffer | |
JPH06187244A (ja) | アドレス変換バッファ機構 | |
JPH041373B2 (ja) | ||
JPH02101552A (ja) | アドレス変換バッファ処理方式 | |
JPH04205535A (ja) | コピーオンライト方式 | |
JPS63245731A (ja) | 仮想計算機システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050107 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070612 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070807 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070821 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070906 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100914 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100914 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110914 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120914 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120914 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130914 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |