JPH0240744A - 仮想アドレス‐物理アドレスの変換が有効に行なわれることを予想する方法及び装置 - Google Patents

仮想アドレス‐物理アドレスの変換が有効に行なわれることを予想する方法及び装置

Info

Publication number
JPH0240744A
JPH0240744A JP1121298A JP12129889A JPH0240744A JP H0240744 A JPH0240744 A JP H0240744A JP 1121298 A JP1121298 A JP 1121298A JP 12129889 A JP12129889 A JP 12129889A JP H0240744 A JPH0240744 A JP H0240744A
Authority
JP
Japan
Prior art keywords
vector
virtual address
virtual
data element
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.)
Pending
Application number
JP1121298A
Other languages
English (en)
Inventor
Douglas D Williams
ダグラス ディヴィッド ウィリアムズ
David M Fenwick
ディヴィッド マーティン フェンウィック
Timothy J Stanley
ティモシー ジョン スタンリー
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.)
Digital Equipment Corp
Original Assignee
Digital Equipment 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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPH0240744A publication Critical patent/JPH0240744A/ja
Pending 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/655Same page detection

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)
  • Complex Calculations (AREA)

Abstract

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明はコンピュータシステムに係り、より詳細には、
同期式のマスター/スレーブ関係に互いに接続されたコ
ンピュータシステムの多数のプロセッサの性能を改善す
るための予想論理装置に係る。
従来の技術 多くの近代的なコンピュータシステムは、システム全体
の動作速度を改善するように各々設計された種々の動作
機能を実行する。例えば、コンピュータシステムは、同
期式のマスター/スレーブ関係で互いに接続された多数
のプロセッサを備えており、アプリケーションプログラ
ムによって必要とされる種々の命令の実行速度を高める
ために命令パイプラインを用いている。
更に、コンピュータシステムは、良く知られているよう
にコンピュータシステムによって処理される多数のアプ
リケーションプログラムの構造を容易にするために仮想
アドレススペース及び物理的メモリを備えている。1つ
の効果的なコンピュータシステムの構成は、スカラーの
中央処理ユニットがベクタープロセッサに対して同期式
のマスター/スレーブ関係で接続されたものである。
ベクタープロセッサは、プログラムループをベクターで
高速実行するように設計されており、ベクターは、コン
ピュータシステムのメモリに記憶されるデータエレメン
トのアレイとして定義され、ベクターの次々のデータエ
レメント間に一定の増分即ちストライドがあるようにさ
れる。ベクターのストライドは、次々のベクターエレメ
ントのスタートアドレス間にあるメモリ位置の数として
(典型的には、バイトで)定義される。例えば、長ワー
ドエレメント(4つの隣接するバイト)を有する隣接ベ
クターは4のストライドを有し、そしてクオドワードエ
レメント(8つの隣接するバイト)を有する隣接ベクタ
ーは8のストライドを有する。ベクターは、マトリクス
又はテーブルの行又は列を最も多く表わし、例えば、測
定した温度や、圧力や、化学的な問題の解決に関するそ
の他の物理的な変数のアレイを表わす。ベクタープロセ
ッサは、ベクター即ちアレイ形態で計算タスクを直接実
行するように構成されたベクター命令の実行を介して動
作する。このようなベクター命令は、スカラープロセッ
サのこれまでのループ動作よりも遥かに効率的である。
スカラーの中央処理ユニットとベクタープロセッサとの
間を同期式のマスター/スレーブ接続構成にした場合に
は、スカラーの中央処理ユニットが全ての命令をフェッ
チし、そしてベクター命令を確認したときに、そのベク
ター命令を実行のためにベクタープロセッサに送る。手
前のベクター命令の結果に基づくベクター命令が発生さ
れそして手前のベクター命令がベクタープロセッサにお
いてメモリ管理欠陥を生じた場合には、命令パイプライ
ンを復帰しそして命令を再スタートさせることが非常に
困難である。従って、スカラーのパイプラインは、典型
的に、手前のベクター命令に関するロード/復帰動作中
に欠陥が生じなかったことをベクタープロセッサが指示
するまで停止される。
良く知られているように、パイプライン動作の目的は、
命令をオーバーラツプして実行することによりコンピュ
ータシステムの動作速度を高めることである点を理解さ
れたい。パイプラインのオーバーラツプ動作の利点は、
スカラーの中央処理ユニットがベクタープロセッサから
の欠陥なし指示を待機する間にスカラーパイプラインが
停止される時間中には得られない。従って、ベクタープ
ロセッサが欠陥のないことを指示する信号を発生するに
要する時間は、マスター/スレーブのスカラー及びベク
タープロセッサの全動作速度に著しく影響を及ぼす。よ
り詳細には、欠陥が生じていないことをベクタープロセ
ッサが早く決定できるほど、スカラーの中央処理ユニッ
トが早くベクター命令の発生を再開して命令実行パイプ
ラインを再び満たすことができる。
本発明の目的としては、「欠陥」という用語は、メモリ
管理欠陥として定義する。上記したように、本発明は、
仮想アドレススペース及び物理メモリを有するコンピュ
ータシステムに係る。このようなコンピュータシステム
においては、仮想アドレスを物理アドレスに変換するた
めの変換機構が設けられていて、仮想アドレスをそれに
対応する物理アドレスに変換することにより、物理メモ
リに存在して仮想アドレスによって参照されるデータを
フェッチすることができる。コンピュータシステムによ
って処理される全てのアプリケーションプログラムは、
仮想アドレススペース内のプログラムによって要求され
る命令及びデータの位置を定める仮想アドレスを使用す
ることにより、仮想アドレススペースを参照して構成さ
れる。コンピュータシステムには、実行されているプロ
グラムによって発生される仮想アドレスを、独特の物理
アドレスによって各々定められた正しい物理メモリ位置
に動的に変換するための機構が設けられている。
プログラムの実行中に、スカラープロセッサは、仮想ア
ドレスによってデータ及び命令を参照し続け、ベクター
のデータ素子に対する仮想アドレスに関連した情報をベ
クタープロセッサに送る。
べ′フタ−プロセッサには、データエレメントの仮想ア
ドレスを、主物理メモリにおいてデータエレメントを見
出すことのできる対応する物理アドレスに連続的に変換
するために変換機構が設けられていなければならない。
典型的に、仮想メモリスペースは、ページと称するメモ
リ単位に分割される。1つのページは、所定数の基本的
なアドレス可能な単位を含んでいる。例えば、基本的な
アドレス可能な単位は、8ビツトバイトより成り、1つ
のページは512バイトを含んでいる。基本的なアドレ
ス可能な単位を独特に識別するための仮想アドレスのフ
ォーマットは、アドレス可能な単位と特定のページ内の
アドレス可能な単位のバイト数とを含む仮想ページ数で
ある。仮想アドレスを物理アドレスに対して交差参照す
るためにページテーブルが物理メモリに維持される。コ
ンピュータシステムが補助的なメモリ装置との間でデー
タを動的にやり取りするときには、仮想アドレスを参照
するのに用いるべき物理メモリの512バイトページを
定めるページフレーム番号を発生する。そのとき物理メ
モリに存在する各仮想ページに対してページテーブル入
力が与えられる。補助メモリから・主メモリへ関連デー
タを転送するときに特定の仮想ページに指定されたペー
ジフレーム番号は、その仮想ページに対するページテー
ブル入力に記憶される。
従って、概念的には、特定の仮想アドレスに対応する物
理アドレスは、その仮想アドレスを含む仮想ページに対
するページテーブル入力を物理メモリからフェッチし、
そしてデータのアドレス可能な単位のバイト数をそのペ
ージテーブル入力に含まれたページフレーム番号と合体
させることによって得ることができる。然し乍ら、実際
には、ベクタープロセッサは、最後に使用されたページ
テーブル入力の特殊目的のキャッシュである変換バッフ
ァを維持する。最も頻繁法こ生じることであるが、変換
バッファは、プログラムによって使用されている仮想ア
ドレスに対するページテーブル入力を既に含んでおり、
プロセッサは、そ9れらを得るために物理メモリをアク
セスする必要がない。
既知のコンピュータシステムでは、変換バッファが変換
機構内にあって、ベクタープロセッサと物理メモリシス
テムとの間のタイミングが重要視されるデータ路に接続
されている。変換機構は、変換バッファからの変換され
るべき物理アドレスの仮想ページ数に対するページフレ
ーム番号を確かめ、変換バッファにリストされたページ
フレーム番号に仮想アドレスのバイト数を付加し、物理
アドレスを発生する。
メモリ管理は、変換機構の動作と、変換バッファにペー
ジテーブル入力情報をロードすることとを含む。変換バ
ッファのヒツト(当たり)は、変換バッファが特定の仮
想アドレスに関連したページテーブル入力を含むときに
生じるといえる。
メモリ管理欠陥とは、例えば、変換を完了するために必
要なページテーブル入力によって指定された物理ページ
をアクセスするようにプログラムを処理することを保護
コードが許さないような変換バッファのヒツトとして定
義される。変換バッファのミス(外れ)は、変換バッフ
ァが変換されるべき仮想アドレスに対する仮想ページ数
を含まず、それ故、仮想アドレス−物理アドレスの変換
を完了するに必要な物理アドレス情報を変換機構に与え
ることができないときに生じる。変換バッファのミスが
生じると、ベクタープロセッサは、必要なページテーブ
ル入力を変換バッファにロードすることによりそのミス
に応じなければならない。
メモリ管理欠陥の場合には、ベクタプロセッサが動作を
保留し、コンピュータシステムが例外手順をとる。前記
したように、スカラープロセッサは、手前のベクター命
令に対するベクターのデータエレメントの各仮想アドレ
スごとに有効な変換を終了するまでその後のベクター命
令を発生することがない。有効な変換は、メモリ管理欠
陥のない変換バッファヒツトとして定められる。
発明の構成 本発明の主たる目的は、ベクターの全てのデータエレメ
ントの仮想アドレスの変換を完了する前に、ベクターの
データエレメントに対する全ての仮想アドレス−物理ア
ドレス変換の有効性能を予想し、そしてメモリ管理欠陥
及び/又は変換バッファミスが生じないことが分かった
ときにMM○に信号をスカラープロセッサに与えて、ス
カラープロセッサが考えられる最も早い時期に命令の発
生を再開できるようにするための予想論理装置を提供す
ることである。
ベクターのデータエレメントの仮想アドレスの変換中に
メモリ管理欠陥又は変換バッファミスが生じないように
確保する最も妥当なやり方は、ベクターの最後のデータ
エレメントの仮想アドレスが発生されて首尾良く変換さ
れたときにMMOK信号を発生することである。然し乍
ら、このような機構は、動作を再開する前に全ての仮想
アドレスが変換されてしまうまでスカラープロセッサが
待機しなければならない限り、時間的な効果を発揮しな
い。本発明によれば、予想論理装置は、現在エレメント
の仮想アドレス、即ちアドレス変換のために現在処理さ
れているデータエレメントと、ストライド及び残りのベ
クター長さ、即ちベクターにおける残りのデータエレメ
ントの数とに基づいて、ベクターの最後のエレメントの
仮想アドレスを計算するように動作される。予想論理装
置によって計算された最後のエレメントに対する仮想ア
ドレスが現在エレメントに対する仮想アドレスと同じ仮
想ページ数を有しそして現在エレメントの仮想アドレス
が首尾良く有効に変換された場合には、最後の仮想アド
レスに対する仮想ページ数及びそれに対応する物理アド
レス情報が変換バッファに存在し、メモリ管理欠陥がな
いことが分かる。従って、予想論理装置は、各現在仮想
アドレスを計算された最後の仮想アドレスと比較し、そ
して最後の仮想アドレスと現在の仮想アドレスとの仮想
ページ数が一致して現在仮想アドレスの変換が首尾良く
行なわれたときにMMOK信号をスカラープロセッサに
送る。これにより、現在エレメントの仮想アドレスが最
後のエレメントの計算された仮想アドレスと同じ仮想ペ
ージにあることが分かるや否やスカラープロセッサが動
作を続けることができる。多くの場合に、現在仮想アド
レスは全ての変換が完了するまで最後の仮想アドレスと
同じページにあり、従って、スカラープロセッサの動作
を早期に再開できることが分かっている。本発明の動作
のシミュレーションにより、本発明の予想論理装置を用
いたときにスカラー及びベクタープロセッサの動作速度
が20%まで増加することが示された。
本発明の別の特徴によれば、最後のエレメントの仮想ア
ドレスの計算は、左へシフトするハードウェアによって
実施される最後の仮想アドレスの保存近似によって行な
われ、計算速度が高められると共に、予想論理装置に必
要とされるハードウェアの簡単化がもたらされる。上記
保存近似とは、現在仮想アドレスがはゾ最後の仮想アド
レスと同じ仮想ページにある場合に、その実際に最後の
仮想アドレスと・全く同じページにあるとするものであ
る。本発明の左へシフトを実施する特徴は、予想精度を
許容できる程度に下げた状態で予想論理装置の高速且つ
効率的なハードウェア動作をもたらす。
本発明の更に別の特徴によれば、本発明の保存近似モー
ドの予想精度は、各現在エレメントの仮想アドレス、ス
トライド及び残りのエレメントカウントに基づいて各ベ
クターエレメントごとに近似的な最終仮想アドレスを計
算することにより、ベクターの最終データエレメントに
対する仮想アドレスを保存近似で計算し続けるように予
想論理装置を動作することにより増大される。予想論理
装置による連続的な近似計算動作により、近似的な最終
仮想アドレスが実際の最終仮想アドレスに向かって収斂
し、ベクタープロセッサがベクターのデータエレメント
の仮想アドレスを変換し続けるときに予想精度を改善す
ることができる。
本発明の上記及び他の特徴並びに効果を良(理解するた
めに、添付図面を参照して以下に詳細に説明する。
実施例 添付図面の特に第1図には、本発明によるコンピュータ
システムが示されている。このコンピュータシステムは
、バス12によって接続されたスカラープロセッサ10
及びベクタープロセッサ11を備えている。スカラープ
ロセッサ10は、マスタープロセッサとして働いて、全
てのベクター命令及びそれに関連したデータアドレス情
報をバス12を経てベクタープロセッサ11に送給する
ことによりスレーブであるベクタープロセッサ11の動
作を開始したり制御したりするように動作する。一般に
、スカラープロセッサ10は、中央処理ユニットとして
働き、アプリケーションプログラムの命令を実行する。
スカラープロセッサ10は、アドレスバス14を経て主
物理メモリ13へ適当なアドレス情報を送給しそしてそ
れに関連した命令及びデータを主物理メモリ13からバ
スシステム15を経て受け取ることにより、アプリケー
ションプログラムによって必要とされる命令及びデータ
を主物理メモリ13からフェッチする。
特定の命令がベクター命令であることをスカラープロセ
ッサ10が確認すると、スカラープロセッサ10は、バ
ス12を経てベクタープロセッサ11にベクター命令を
送給し、これはベクタープロセッサ11によって素早く
実行される。ベクター命令は、ベースアドレスと、ベク
ター長さと、ベクターストライドと、その発生されたベ
クター命令に基づいて処理されるべきベクターのデータ
エレメントに対する仮想アドレス情報をスカラープロセ
ッサ10が発生してベクタープロセッサ11へ送給でき
るようにするための他のベクター情報とを含んでいる。
上記したように、ベクタープロセッサ11は、データエ
レメントの仮想アドレスの各々をそれに対応する物理ア
ドレスに直列に変換するための変換機構15を備えてい
る。各々の物理アドレスは、アドレスバス16を経て主
物理メモリ13へ送られる。このように、主物理メモリ
13は、ベクターの個々のデータエレメントを探索しデ
ータバス17を経てベクタープロセッサ11へ返送し、
上記発生されたベクター命令に基づいて処理できるよう
にする。ある態様においては、良く知られたようにデー
タフェッチ速度を高めるためにベクタープロセッサ11
にキャシュメモリが設けられている。いずれの場合にも
、ベクタープロセッサ11によって発生される各仮想ア
ドレスは、それに対応する物理アドレスに変換しなけれ
ばならない。
メモリ管理の目的上、特に、仮想アドレスから物理アド
レスへの変換及びこれらアドレスの保護のために、メモ
リの単位は1ページとされる。
ページは、一定数のアドレス可能な単位、例えば、51
2バイトで構成される。ページは当然整列され、即ちペ
ージの第1バイトのアドレスが512の倍数となる。仮
想アドレスは32ビット長さであり、第2図に示すよう
なメモリ管理論理によって区分化される。
第2図を参照すれば、仮想アドレス(VA)機能のビッ
トは、次の通りである。
フィールド長さ二ビット31 : 9(VA<31 :
 9>)フィールド名:仮想ページ数(VPN)機能:
仮想ページ数フィールドは、参照すべき仮想ページを指
定する。各仮想アドレススペースには、例えば、8゜3
88.608ページがある。各ページは、512バイト
を含む。
フィールド長さ二ビット8 : 0(VA<8 : O
>)フィールド名二バイト数 機能:バイト数フィールドは、ページ内のバイトアドレ
スを指定する。上記したように、1ページは512バイ
トを含んでいる。
更に、第3図に示すように、物理アドレス機能のビット
は、次の通りである。
フィールド長さ二ビット29:9 フィールド名二ページフレーム番号(PFN)機能二ペ
ージフレーム番号フィールドは、物理メモリにおけるペ
ージ位置のベースの物理アドレスの上位21ビツトを指
定する。
フィールド長さ二ビット8:0 フィールド名:バイト数 機能:バイト数フィールドは、物理メモリのページ内の
バイト位置を指定する。この数は、アドレス変換プロセ
スにおいて不変である。
第1図を再び参照すれば、変換機構15は、バス19に
よって変換バッファ18の入力に接続される。既知の動
作によれば、変換機構15は、変換されるべき仮想アド
レスから仮想ページ数(vpN)<31: O>を取り
出し、その仮想ページ数をバス19を経て変換バッファ
18に送出する。第4図に示すように、変換バッファは
、仮想ページ数(V P N)と、それに対応するペー
ジフレーム番号(PFN)とのリストを維持する。
変換バッファ18は、変換機構15によりバス19を経
て送られた仮想ページ数をルックアップし、それに対応
するページフレーム番号をバス20を経て変換機構15
へ送出する。変換バッファヒツトは、上記したルックア
ップ動作が首尾良く完了したものとして定義される。
変換バッファヒツトがありそしてメモリ管理欠陥がない
と仮定すれば、変換機構15は、次のアルゴリズムを実
行することによって仮想アドレスの変換を実行する。
PA=<PFN>’ VA<8 : O>但し、PFN
は、仮想ページ数に対向して変換バッファにリストされ
たページフレーム番号であり、そり、てVA<8 : 
O>は、変換されるべき仮想アドレスのバイト数である
。アポストロフィー(′)記号は、(PFN)とVA<
8 : O>との間の連結を示すものである。変換動作
は、ベクターのデータエレメントの各仮想アドレスがそ
れに対応する物理アドレスに変換されて物理メモリシス
テムからデータエレメントをフェッチできるようになる
まで続けられる。
変換バッファミスは、ページフレーム番号を与えること
のできない仮想ページ数が変換バッファ18に与えられ
たときに生じるといえる。この場合、ベクタープロセッ
サ11は、その仮想ページ数に対するページテーブル入
力を上記したように主物理メモリ13からフェッチし、
そのページテーブル入力に含まれた対応するページフレ
ーム番号を変換バッファ18にロードして、変換機構1
5が変換を完了できるようにしなければならない。各変
換バッファのロード動作は、それを完了するのにある程
度の時間を要し、そしてスカラープロセッサIOは、現
在ベクター命令の全ての変換バッファミスがベクタープ
ロセッサ11によって処理されるまでその後のベクター
命令をパイプライン処理しではならない。従って、スカ
ラープロセッサ10は、現在ベクター命令の処理に関し
てメモリ管理欠陥又は変換バッファミスがないことが確
かめられるまで、次のベクター命令をその命令パイプラ
インにロードしない。
本発明によれば、予想論理装置21は、特定のベクター
の全てのデータエレメントの仮想アドレスについての有
効な、欠陥のない、全てヒツトの変換を予想し、そして
特定のベクタに対してメモリ管理欠陥も変換バッファミ
スもないことをこの予想論理装置21が予想したときに
ライン22を経てスカラープロセッサ10へMMOK信
号を送出するためにベクタープロセッサ11に設けられ
ている。MMO・K信号は、特定のベクターに関連した
全ての仮想アドレスの変換が完了するのを待機する必要
なく直ちに動作を継続するようにスカラープロセッサI
Oをイネーブルする。但し、これは、変換バッファ18
が特定ベクターの全てのデータエレメントに対して必要
な変換情報を含んでいると共に、ページテーブル入力が
処理されているプログラムによるアクセスを禁止する保
護コードを含んでいない場合である。第1図に示すよう
に、予想論理装置21は、バスシステム23によって変
換機構15に接続されており、仮想アドレス情報及び変
換動作の状態、即ち有効ヒツトかミスかを予想論理装置
21へ送信できるようになっている。又、ベクタープロ
セッサ11は、ベクターストライド及びベクター長さ情
報を予想論理装置21へ供給して、該装置21が以下に
述べるように有効変換動作を予想できるようにする。
本発明の一般的な概念によれば、最後のエレメントの仮
想アドレスは、ベクターロード/記憶動作の始めに予想
論理装置21によって次のように計算される。
La5tVirtADDR=FirstVirtADD
R+ ((VLENGTH−1) 本VSTRIDE)
ここで、Las tVi rtADDRは、特定ベクタ
ーの最後のデータエレメントの仮想アドレスであり、F
irstVirtADDRは、特定ベクターの第1デー
タエレメントの仮想アドレスであり、VLENGTHは
ベクターの長さであり、そしてVSTRIDEはベクタ
ーストライドである。更に、以下で用いるCurren
tVirtADDRは、現在アドレス変換を受けている
データエレメントの仮想アドレスである。
La5tVirtADDRの値は、ベクターロード記憶
動作の始めに一度計算される。各エレメントの仮想アド
レスは、La5tVirtADDRと比較され、その両
方が同じ仮想ページ内にあるかどうか判断される。
仮想アドレスがMMOK予想論理に用いられるのは、仮
想ページは連続的であるが物理ページは連続的でないか
らである。これにより、MMOK予想を仮想アドレス変
換と並列に行なうことができる。これについて示す擬似
コードは、次の通りである。
/* In1t the element count
、          */element  cou
nt=0 /*   Get  starting  virtu
al  address、             
     京/CurrentVirtADDR=Fi
rstVirtADDR/本For every el
ement untii the end、     
  零/whiie(element count <
 VLIINGTH) (translate Cur
rentVirtADDRto a physical
 addressif  (CurrentVirtA
DDR<31:9>=LastVirtADDR<31
:9>)assert MMOK 7本  rncrement  element  c
ount、                    
  本/element−count = eleme
nc−count+1/*   Generate  
next  virtual  address、  
               z/CurrentV
irtADDR= CurrentVirtADDR+
VSTRIDE)  /零 end  whiie、 
 零/CurrentVirtADDR<31:9>が
La5tVirtADDR<31 :9〉に等しい場合
には、アドレスが同じ仮想ページにあり、MMOKをア
サートすることができる。
アドレスが同じ仮想ページにない場合には、予想論理装
置21は、アドレスの発生を続けると共に、Curre
ntVirtADDR<31 :9>とLa5tVir
tADDR<31 :O>との比較を続ける。
上記式には、最後のエレメントの仮想アドレスを計算す
るための乗算項、即ち((VLENGTH−1)* V
STRIDE)があることに注意されたい。全乗算器は
比較的複雑な論理ハードウェア装置である。従って、本
発明の1つの好ましい実施例では、最後の仮想アドレス
の近似が左シフト演算を用いて計算される。整数被乗数
の左シフトは、2を乗算することに等しい。整数の被乗
数を左に2回シフトすることは、4を乗算することであ
り、等々となる。左シフトは、ハードウェア的に高速で
且つ効率的である。それ故、((VLENGTH−1)
 *VSTRIDE)乗算の近似は、次のように計算す
ることができる。
1、一方の被乗数(即ち、(VLENGTH−1)か又
はVSTRIDEを次に高い2の累乗に丸める。
2、その底2の対数をとる。
3、他方の被乗数を底2の対数の量だけ左へシフトし、
最後のエレメントの仮想アドレスの上限を計算する。
一方の被乗数の値が丸められるので(次に高い2の累乗
に達して左シフトを使用できるようにするために必要で
ある)、予想論理装置21は、厳密に最後のエレメント
の仮想アドレスはもはや計算しない。そうではなくて、
予想論理装置21は、最後のエレメントの仮想アドレス
についての上限を計算する。実際の最後のエレメントの
仮想アドレスは、常に、この上限に等しいか又はそれよ
り小さい。
論理設計の容易さから他の底2の対数近似が指示される
。例えば、優先順位エンコーダは、底2の対数機能をは
ゾ実行する。以下のテーブルは、底2の真の対数と、底
2の対数の丸め近似と、底2の対数の優先順位エンコー
ダ近似とをOないし16に対して示している。丸め近似
の方が優先順位エンコーダの近似よりも優れていること
に注意されたい。これらは両方とも、底2の実際の対数
に等しいか又はそれより大きい値を与え、従って、最後
の仮想アドレスの近似は、常に、実際の最後の仮想アド
レスに等しいか又はそれより大きくなる。
素上 底2の対数近似 オペランドB  底2のlog B ooooooo      − 00000111<y<2 0000102   2<y<3 0000110   2<y<3 0000111    2<y<3 0001001   3<y<4 0001010   3<y<4 0001011       3<y<4000110
0   3<y<4 0001101    3<y<4 0001110       3<y<4000111
1   3<y(4 等々    等々 上記の乗算近似は、 底2のlogB  底2のlog B O l 等々     等々 次のように、精度類にリ ストされている。
1、全数乗算は実際の最後の仮想アドレスを発生する。
2、底2の対数の丸め近似を用いた左シフト。
3、底2の対数の優先順位エンコーダ近似を用いた左シ
フト。
左シフトのハードウェア構成を実施する場合ニハ、(V
LENGTH−1) 又ハVsTRIDEノイずれカカ
左にシフトされる。はとんどの場合、(VLENGT)
l−1)の底2の対数の近似を実施する方が、VSTR
IDEの底2の対数よりも必要なロジックが少なくてす
む。
従って、本発明の好ましい実施例では、fvLENGT
H−1)底2の対数を近似して、VSTRIDEが左へ
シフトされる。
予想論理装置21の動作についての幾つかの例を以下に
示す(Oxが頭に付いている全ての数字は16進で示さ
れていることに注意されたい)。
■土 第1のデータエレメントの仮想アドレスに基づいて最後
のデータエレメントの仮想アドレスを1回計算すること
を意味するワンショット予想。
例1は次の通りである。
ワンショットMMOK予想アルゴリズムストライド =16バイト(OxlO) 近似を用いる) (次に高い2の累乗に対する近似、即ち丸めを用いる)
=OxO[OO+(16<<5) =OxOfOO+512 =OxOfOO+0x200 =OxllOO 近似ページ La5tVi rtADDR エレメ 仮想ア xOflO xOf20 xOf30 xOf40 xOf50 xOf60 xOf70 xOf80 xOf90 xOfaO =OxlOOO 仮想 仮想アドレ xOe00 xOeOO xOeOO xOeOO xOe00 xOe00 xOe00 xOeOO xOe00 xOe00 なし なし なし なし なし なし なし なし なし なし 仮想LastADDR 11   0xOfb0  0xOeOOなし+2  
 0xOfcO0xOe00   なし13   0x
Ofd0  0xOe00   なし14   0xO
feO0xOeOOなし15   0xOffO0xO
eOOなし16   0xlOO00x1000   
MMOK!17   0xlO100xlO00 180x1020  0xiOO0 190x 030  0x1000 20   0x 040  0x100021   0
x1050  0xlO00220x 060  0x
lOOO 230x1070  0xlOOO 240x1080  0xlOOO 250x1090  0x1000 26   0x Oao   0xlOOO270x 
ObO0xlO00 280x OcO0x1000 29   0xlOd0  0x1000予想されるL
a5tVirtADDRは、0xllOOであるが、実
際の最後の仮想アドレスは0xlOdOであることに注
意されたい。この例では、近似の不正確さによってMM
OKの発生が遅れることはない。MMOKは、予想され
る最後の仮想アドレスと同じ仮想ページ内にある仮想ア
ドレスが首尾良く変換された後に発生される。この例で
は、エレメント翫16が首尾良く変換された後にMMO
Kが発生され、スカラープロセッサが命令の発生を再開
できる一方、データエレメントNo、17ないし29が
アドレス変換を受けられるようにする。
これらの例は、最後のエレメントの仮想アドレスの近似
をページ全体によって行なえるような比較的大きなスト
ライドを用いて構成することができる。スタート仮想ア
ドレスが0xOf00で、ベクター長さが36で、スト
ライドが32バイトであるようなベクターロード/記憶
動作について考える。この場合も、底2の対数の優先順
位エンコーダ近似を用いると、例2は、次のようになる
例旦 。
ワンショットMMOK予想アルゴリズム32バイトスト
−イド FirstVirtADDR=OxOfOOストライド
           =32バイト(Ox20)ベク
ター長さ          =36データエレメント
底2の対数(ベクター長さ−1)=6 (近似を用いる) 予想される近似 La5LVirtADDR=OxOf00   +(3
2木64)=OxOfOO+(32<<6) =OxOfOO+2048 =OxOfOO+0x0800 =Ox1700 近似ページ La5tVirtADDR=Ox1600人里 ワンショットMMOK予想アルゴリズムを用いた例2の
結果 仮想ア ドレス xOfOO xOf20 xOf40 xOf60 xOf80 Ox9faO xOfcO xOfe0 Ox 000 Ox1020 Ox 040 Ox1060 Ox 080 Ox OaO Ox Oco Ox OeO xllOO Ox 120 Oxl140 Oxl160 Ox 180 Ox 1aO Ox 1c0 Ox leo Ox 200 Ox 220 Ox 240 Ox1260 仮想 ページ xOe00 xOe00 xOe00 xOeO0 xOeO0 xOeO0 xOeO0 xOe00 xlOOO Ox 000 Ox 000 xlQQQ Ox 000 Ox 000 xlOOO xlOOO Ox 000 xlOO0 Ox 000 xlOOO Ox 000 Ox 000 Ox 000 Ox 000 Ox1200 Ox1200 Ox1200 Ox1200 仮想アドレ スのページ なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし なし 仮想La5tADDR = のページ 28   0x1280  0x 200   なし2
9   0x12aO0x1200   なし30  
 0x12c0  0x 200   なし31   
0x12eOOx 200   なし32   0x1
300  0x 200   なし33   0x13
20  0x 200   なし34   0x134
0  0x 200   なし35   0x1360
  0x1200   なしストライドが比較的大きい
場合には、MMOKが発生されておらず、ベクター全体
が完成されていることに注意されたい。スカラープロセ
ッサlOは、依然としてMMOKを待機しており、従っ
て、命令の発生を再開することができる。従って、最後
のエレメントの仮想アドレスの予想は、MMOKが決し
て発生されないということに基づく(予想=Ox160
0 ;実際=Ox1200) 。
本発明の更に別の特徴によれば、例2に示すように、近
似計算のやり方に本来ある予想の不正確さは、最後のデ
ータエレメントに対する仮想アドレスを連続的に計算す
るように予想論理装置21を実施することによって最小
にすることができる。
連続的なMMOK予想アルゴリズムを用いると、現在エ
レメントの仮想アドレス、残りのエレメントのカウント
及びストライドに基づいて各ベクターエレメントごとに
種々の最終ベクターアドレスが次のように計算される。
La5tVirtADDR= (:urrentVirtADDR+ (残りのエレメ
ント*VSTRIDE)各エレメントの仮想アドレスは
、そのエレメントの仮想アドレスについて計算された最
後のエレメントの仮想アドレスと比較される。その両方
が同じページにありそして現在の仮想アドレスが首尾良
く変換された場合には、MMOKが発生される。
これについて示す擬似コードは、次の通りである。
7京  1nit  the  element  c
ount、                  本/
element count=0 7本  In1t  the  remaining 
element  count、          
    */remaining elemer+ts
 = VLENGTH−1/本  Get  star
ting  virtual  address、  
                木/Current
VirtADDR= FirstVirtADDR/本
  For  every  element  un
tii  the  end、           
     零/La5tVirtADDR= CurrentVirtADDR+ (remaini
ng elements * VSTRIDE)tra
nslate CurrentVirtADDR/零 
 Are  the  current  and  
1ast  virtual  addr  onth
e  same virtual  page?   
            零lif  (Curren
tVirtADDR<31:9>  =  La5t 
 VirtADDR<31:9>assert MMO
K /木  Prepare  for  next  e
lemenL                 本/
element count = element c
ount + 1CurrentVirtADDR= 
CurrentVirtADDR+ VSTRIDE以
下の表は、第1のワンショットアルゴリズム例の場合と
同様のベクター特性の連続的なアルゴリズムを用いて全
ベクター演算に対し各エレメントごとに行なわれるアド
レスの発生及び最後のアドレスの計算を示している。
且立 第1のVirtADDR=OxOfOOストライド  
   =16バイト(OxlO)ベクター長さ    
=30データエレメント去■ 連続的なMMOK予想アルゴリズムを 用いた例3の結果 エレメ 残りの I、Og  ストラ 現在  最終 
 現在  最終 MKント エレメ 厖2 イド AD
DRADDR頁   頁x200 Ox200 Ox200 Ox200 Ox200 Ox200 xOf10 xOf20 xOf30 xOf40 xOf50 xOf60 xll10 xl120 xl130 xl140 xl150 xl160 xOeO0 xOeOO xOe00 xOe00 xOe00 xOeOO xlOO0 X100O xlO00 xlOOO xlO00 Ox1000 なし なし なし なし なし なし 22  50x200 0xOf70 0xl170 
0xOeOO0x1000  なし21  5 0x2
00 0xOf80 0xl180 0xOe00 0
xlOOOなし20  5 0x2(100xOf90
 0xi’190 0xOeOO0xlOOOなし19
  5 0x200 0xOfa0 0xlla0 0
xOeOO0xlO00なし18  5 0x200 
0xOfbO0xllbO0xOe00 0xlOOO
なし17  5 0x200’0xOfcO0xllc
0 0xOeOO0x1000  なし16  5 0
x200 0xOfdO0xlld0 0xOeOO0
xlOOOなし15  4’  0xlOO0xOfe
0 0xlOe0 0xOe00 0xlO00なし1
4  4 0xlOO0xOff0 0xlOf0 0
xOeOO0xlOOOなし13  4 0x100 
0xlO000xl100 0xlOOO0x1000
  陣υK”12  4 0xlOO0x1010 0
xlllO0xlOOO0xlOOO1140xlOO
0x1020 0xl120 0x1000 0xlO
OO1040xlO00x1030 0xl130 0
x1000 0x10009  4 0xlOO0x1
040 0xl140 0x1000 0x10008
  4 0x100 0x1050 0xl150 0
x1000 0xlOOO730x080 0x106
0 0xlOeO0xlOOO0x10006  3 
0x080 0x1070 0xlOfO0xlOO0
0xlOOO530x080 0x1080 0xll
OO0xlO000xlOO0430x080 0x1
090 0xll10 0xlOOO0x10003 
  2 0x040 0xlOaO0xlOeO0xl
OOO0x10002  2 0x040 0xlOb
O0xlOf’0 0xlO000x10001   
1 0x020 0xlOcO0xlOeO0xlOO
O0x10000  0 0x010 0xlOdO0
xlOe0 0xlO000xlOOx100Oは、連
続的な予想アルゴリズムに対し、この例のワンショット
アルゴリズムの場合と同じエレメントにおいて発生され
る。La5tVirtADDRの予想は、各(:urr
entVirtADDRごとに変化し、La5tVir
tADDRの予想は、残りのエレメントカウントの底2
の対数が増加するにつれて著しく良くなる。
肛 例4は、連続的な予想アルゴリズムを用いた第2のワン
ショットMMOK予想例のベクター特性を模擬するもの
である。ワンショットベースでの最後のエレメントの仮
想アドレス予想(例2を参照)は、MMOKが発生され
ないことに基づくものであったことを想起されたい。
FirstVirtADDR=OxOf00ストライド
    =32バイト(Ox020)ベクター長さ  
 =36データエレメント用いた例4の結果 b   b  0x400 0x1040 0x144
0 0x1000 0x1400  なし24  5 
0x400 0x1060 0x1460 0xlO0
00x1400  なし23  5 0x400 0x
1080 0x1480 0x1000 0x1400
  なし22  5 0x400 0xlOaO0x1
4aO0xlOO00x1400  なし21  5 
0x400 0xlOcO0x14cO0x1000 
0x1400  なし20  5 0x400 0xl
OeO0x14e0 0xlO000x1400  な
し19  5 0x400 0xllOO0x1500
 0x1000 0x1400  なし18  5 0
x400 0xl120 0x1520 0xlO00
0x1400  なし17  5 0x400 0xl
140 0x1540 0xlOO00x1400  
なし16  5 0x400 0xl160 0x15
60 0xlO000x1400  なし15  4 
0x200 0xl180 0x+380 0xlO0
00x1200  なし14  4 0x200 0x
llaO0x13a0 0x1000 0x1200 
 なし13  4 0x0200 0xllc0 0x
13cO0x1000 0x1200  なし12  
4 0x0200 0xlleO0x13e0 0xl
OOO0x1200  なし11  4 0x0200
 0x1200 0x1400 0x1200 0x1
400  なし10  4 0x0200 0x122
0 0x1420 0x1200 0x1400  な
し9  4 0x0200 0x1240 0x144
0 0x1200 0x1400  なし8  4 0
x0200 0x1260 0x1460 0x120
0 0x1400  なし7  3 0x0100 0
x1280 0x1380 0x1200 0x120
0  t/FDK6  3 0xO1000x12aO
0x13aO0x1200 0x12005  3 0
x0100 0x12cO0x13c0 0x1200
 0x12004  3 0x0100 0x12eO
0x13eO0x1200 0x12003  2 0
xO0800x1300 0x1380 0x1200
 0x12002  2 0x0060 0x1320
.0x13aO0x1200 0x12001   1
 0xO0400x1340 0x1380 0x12
00 0x12000   0 0x0020 0x1
360 0x1380 0x1200 0x1200連
続的なアルゴリズムを用いると、MMOKはベクターエ
レメントに返送される。この場合に、連続的なアルゴリ
ズムはワンショットアルゴリズムよりも遥かに優れた予
想を行ない、スカラー/ベクターの通信量及び命令発生
の遅れの著しく少ないシステムが提供される。
第5図を参照すると、各ページテーブル入力は32ビッ
ト長さであり、ビットの働きは次の通りである。
フィールドの長さ:ビット20:0 フィールド名二ページフレーム番号(PFN)機能:特
定の仮想アドレスの仮想ページ数に対応するページフレ
ーム番号を変換する フィールドの長さ二ビット31:21 フィールド名:アクセスコード 機能:ビット31:21は、メモリ管理コード、例えば
、どのアプリケーションプログラムがページテーブル入
力にアクセスしたかを定める保護コードを含む。
変換バッファのヒツトの後に、実行されているアプリケ
ーションプログラムがページテーブル入力にアクセスし
たことを確認するために変換機構がアクセスコードをチ
ェックする。プログラムがアクセスした場合には、変換
が完了となる。さもなければ、メモリ管理欠陥が発生さ
れ、ベクタープロセッサが停止し、コンピュータシステ
ムは、上記した例外手順をとることができる。
本発明の好ましい実施例の特徴によれば、ページテーブ
ル入力は4つの連続するページテーブル入力セグメント
において変換バッファ18にロードされ、各セグメント
は、2にバイト(512バイト/頁X連続する4頁)の
仮想アドレスに対して4ページテーブル入力を含んでい
る。特定の仮想アドレスが首尾良く且つ有効に変換され
たときには、変換機構は、2にバイトセグメントの関連
ページテーブル入力を識別し、そのセグメントの他の3
つのページテーブル入力のアクセスコードを、首尾良く
変換された仮想アドレスの仮想ページ数に対しページテ
ーブル入力のアクセスコードと比較する。この比較が首
尾良く行なわれることは、変換機構15がそのセグメン
トの4ページテーブル入力に関連した2にバイトに対し
ていずれの仮想アドレスも変換できることを意味する。
この情報を用いて、MMOK信号を発生できることが明
らかであろう。アクセスコードを比較することは、全て
の4ページテーブル入力へのアクセスを決定するための
最も簡単な手段である。然し乍ら、セグメントの各ペー
ジテーブルごとに完全なアクセスチェックを行なってセ
グメントへのアクセスを決定することができる。完全な
アクセスチェックは、アクセスコードが互いに異なるが
、実行されているアプリケーションプログラムによって
全てをアクセスできる場合でも、アクセスを決定する。
VA<31 : 11>は、2にバイトのセグメントを
定め、VA<10 : 9>は、4ページテーブル入力
のどの1つが仮想アドレスとして特定の512にページ
に対応するかを指示する。
第6a図及び第6b図には、連続的なアルゴリズム及び
CurrentVirtADDRとLa5tVirtA
DDRとの比較を処理するために実施された予想論理装
置21がブロック図で示されている。現在エレメントの
数及びベクター長さ(VLENGTH)は、各々、ライ
ン101,102を経て装置100へ入力され、残りの
エレメントカウント及び残りのエレメントカウントの底
2の対数を決定する。装置lOOは、例えば、現在エレ
メントの数をVLENGTHから差し引いて残りのエレ
メントカウントを形成するための加算器と、計算された
残りのエレメントカウントの次に高い底2の対数を近似
するための優先順位エンコーダとを備えている。ライン
103は、装置100をストライド左シフト装置104
へ接続し、残りのエレメントカウントの底2の対数がこ
のストライド左シフト装置104へ入力される。
入力ライン105は、ベクターストライド情報をストラ
イド左シフト装置104へ入力し、ストライド左シフト
装置104が、残りのエレメントカウントの底2の対数
入力だけストライド数を左へシフトするようにする。左
シフト演算の結果は、ライン106に出力され、このラ
インは、加算器桁上げ7桁下げ論理装置107及び積の
チェック装置200の各々の入力に接続される。第2人
カライン108も、加算器桁上げ7桁下げ論理装置10
7に接続されていて、現在データエレメントの仮想アド
レスCurrentVirtADDRを入力する。
上記したように、La5tVirtADDR=Curr
entVirtADDR+(残すノエレメント* VS
TRIDE) テある。ベクターストライド(VSTR
IDE)を残りのエレメントカウントの底2の対数だけ
左へシフトする動作をストライド左シフト装置104に
よって実行することにより、乗算積(残りのエレメント
* VSTRIDE)の近似が与えられる。従って、加
算器の桁上げ7桁下げ論理装置107は、ライン106
上の左シフトされたVSTRTDEをライン108上の
CurrentVirtADDRに加算し、最後のデー
タエレメントの仮想アドレスLa5tVirtADDR
の保存近似を計算する。
各仮想アドレスは32ビツトより成り、VA<31=9
〉は仮想ページ数であり、そしてVA(8:O〉はペー
ジ内のバイトである。従って、加算器の桁上げ7桁下げ
論理装置107の加算演算中に、VA(9)への桁上げ
もそこからの桁下げもない場合には(VSTRIDEは
負のストライドであることに注意されたい)、ストライ
ド左シフト装置l。
4によって計算された積が9ビツト又はそれ以下で表わ
されて(即ち、ストライドの左シフトは512バイト未
溝である)これらがVA<8 : O>に加算されると
きに、La5tVirtADDRの仮想ページ数VA<
31 : 9>がCurrentVirtADDRの仮
想ページ数VA(31: 9>と同じでなければならな
いことが確かめられる。従って、本発明のここに述べる
実施例によれば、VA<9>への桁上げ又はここからの
桁下げの信号は、加算演算によってビット9への桁上げ
又は該ビットからの桁下げが生じたときに出力ライン1
09上に発生される。
ライン109は、インバータ110の入力に接続されて
おり、加算演算によってVA(9)への桁上げ又はそこ
からの桁下げが生じないときに、該インバータの出力ラ
イン111がビット9への桁上げ又は該ビットからの桁
下げがないことを示す信号を発生する。
第6b図に示されたように、ライン!11は5120に
アンドゲート11.3の入力に接続される。アンドゲー
ト113の他方の入力は、「成功裡な変換及び1仮想ペ
ージのみへのアクセス」ライン123と、[ストライド
左シフト積く512バイト」ライン201とに接続され
ている。[成功裡な変換及びl仮想ページのみへのアク
セス」ライン123は、第1図の変換機構15及び変換
バッファ18を備えたTB及びアクセスチェック装置1
19の1つの出力に接続されている。現在仮想アドレス
は、ライン120を経てTB及びアクセスチェック装置
119へ入力され、該装置は、現在仮想アドレスが成功
裡に変換されそしてMMOK信号を発生する目的で、コ
ンピュータシステムにより実行されているアプリケーシ
ョンプログラムにより現在仮想アドレスのためのページ
テーブル入力のみが物理ページへアクセスできることが
保護又はアクセスコード比較によって指示されるときに
、ライン115に信号を発生する。積のチェック装置2
00は、ストライドの左シフト値をチェックするように
働き、このストライド左シフト値が512バイトより小
さくなったときにライン201に信号を発生し、VA<
9>への桁上げもそこからの桁下げもないことを示すラ
イン111上の信号がCurrentVirtADDR
とLa5tVirtADDRとの間の仮想ページ識別に
関するある信号を発生することを指示する。ライン11
1,123及び201の各々にこれらの信号が発生され
たときには、アンドゲート113の出力ライン124に
5120に信号が発生される。
一方、変換が首尾良く行なわれ、そして2にバイトセグ
メントの4つの連続する全てのページテーブル入力への
アクセスが許されたことがアクセスコード比較によって
指示されたということがTB及びアクセスチェック装置
119により判断されると、[成功裡な変換及び4つの
連続する仮想ページへのアクセス」ライン115に信号
が発生される。ライン115は、2KOKアンドゲート
114の入力に接続される。
又、加算器の桁上げ7桁下げ論理装置107は、左にシ
フトされたVSTRIDEとCurrentVi rt
ADDRとの加算演算に、よってVA(11)への桁上
げ又はそこからの桁下げが生じたときに、VA<11〉
への桁上げ又はそこからの桁下げを表わす信号を出力ラ
イン151に発生するように働く。VA(10: 9)
は、仮想アドレスに関する2にバイトセグメントの特定
のページテーブル入力を定めるので、La5tVirt
ADDRについての加算演算中にビット11への桁上げ
もそこからの桁下げもないときには、ストライド左シフ
ト装置104によって計算された積が12ビツト又はそ
れ以下で表わされて(即ち、ストライドの左シフトが2
にバイト未満)これらがVA(10: O)に加算され
るときに、近似されたLa5tVi rtADDRに対
するページテーブル入力が2にバイトセグメント内にあ
ることが確かめられる。従って、ライン151はインバ
ータ152に接続され、その出力154は、2KOKア
ンドゲート114に接続される。出力154は、加算演
算によってビット11への桁上げもそこからの桁下げも
生じなかったときに、ビット11への桁上げもそこから
の桁下げも生じないことを示す信号を2KOKアンドゲ
ート114へ発生する。更に、積のチェック装置200
は、ライン106に現われるストライド左シフト値入力
が2にバイトより小さいときにライン202に信号を発
生する。ライン202は、2KOKアンドゲート114
の入力に接続されている。アンドゲート113と同様に
、ライン115.154及び202の各々に信号が発生
されたときには、アンドゲート114の出力ライン12
2に2KOK信号が発生される。
出力ライン122.124の各々は、オアゲート210
の各入力に接続され、その出力は、MMOKライン22
を構成する(第1図も参照)。
もちろん、TB及びアクセスチェック装置119は、2
KOK又は5120に信号のいずれかが任意の時間にオ
アゲート210に送られるように一度にライン115及
び123の1つのみに信号を発生する。2KOK信号は
、La5tVi rtADDRがCurrentVir
tADDRと同じページにないが2にバイトセグメント
内にはあってそのセグメントへの完全なアクセスが許さ
れるときに、MMOK信号を早期に発生できるようにす
る。
第6a図及び第6b図に示された本発明の実施例によれ
ば、ベクタープロセッサ11は、データエレメントに対
する全ての仮想アドレスの変換。
を完了したときに、ベクターの最後のエレメントである
という信号をライン250に発生する。TB及びアクセ
スチェック装置119からのライン250及びライン1
23は、各々、アンドゲート251の入力に接続され、
その出力252はオアゲート21Oの入力に接続される
。このように、スカラープロセッサ10は、例えば、メ
モリ管理欠陥又は変換バッファミスが生じたときのよう
にMMOK信号がアンドゲート113及び114を経て
予め発生されない場合には、全てのデータエレメントに
対する仮想アドレスの変換が成功裡に終った際に変換プ
ロセスの完了が知らされる。
【図面の簡単な説明】
第1図は、第1のプロセッサが第2のプロセッサに接続
されて、これらのプロセッサが同期式のマスター/スレ
ーブ関係で接続されたところを示すブロック図、 第2図は、仮想アドレスを示すグラフ、第3図は、物理
アドレスを示すグラフ、第4図は、第1図の第2プロセ
ツサの変換バッファを簡単に示す図、 第5図は、ページテーブル入力を示すグラフ、そして 第6a図及び第6b図は、第1図の第2のプロセッサの
予想論理装置を示すブロック図である。 lO・・・スカラープロセッサ 11・・・ベクタープロセッサ 12・・・バス 13・・・物理メモリ 14・・・アドレスバス 15・・・変換機構 17・・・データバス FIG、 4 アクセスコード ページフレーム番号 FIG、 5 仮想ページ数 ページ内のバイト FIG、3

Claims (11)

    【特許請求の範囲】
  1. (1)特定ベクターのベクター長さ及びベクターストラ
    イドに関する情報を受け取り、上記特定ベクターの順序
    付けされた1組のデータエレメントに対応する各組の仮
    想アドレスの少なくとも一部分を直列に受け取りそして
    更に上記1組の仮想アドレスに対応する変換バッファヒ
    ット及びミス情報を直列に受け取るための入力装置を具
    備し、更に、上記入力装置に接続された計算装置であっ
    て、上記順序付けされた1組のデータエレメントの最後
    のデータエレメントに関連した仮想アドレス情報を、ベ
    クター長さ、ベクターストライド、及び上記1組の仮想
    アドレスのうちの少なくとも1つの仮想アドレスに関連
    した情報に基づいて計算するように動作する計算装置を
    具備し、更に、上記計算装置に接続された比較器であっ
    て、上記1組の仮想アドレスのうちの各仮想アドレスの
    少なくとも一部分を、上記最後のデータエレメントに関
    連した仮想アドレス情報と直列に比較するように動作す
    る比較器を具備し、そして更に、上記比較器に接続され
    たMMOK信号出力装置であつて、 i)上記比較器が、上記1組の仮想アドレスのうちのい
    ずれか1つの仮想アドレスの少なくとも一部分と、上記
    最後のデータエレメントに関連した仮想アドレス情報と
    の最初の一致を指示するとき、及び ii)変換バッファのヒット及びミス情報が、上記1組
    の仮想アドレスのうちのいずれか1つの仮想アドレスに
    ついて有効変換バッファヒットを指示するときに、 MMOK信号を発生するように動作するMMOK信号出
    力装置を具備することを特徴とする予想論理装置。
  2. (2)上記計算装置は、上記最後のデータエレメントに
    関連した仮想アドレス情報の上限近似を決定する装置を
    備えている請求項1に記載の予想論理装置。
  3. (3)上記装置は、ベクター長さ及びベクターストライ
    ドの一方についての底2の対数上限を決定し、ベクター
    長さ及びベクターストライドの他方を上記底2の対数上
    限だけ左へシフトし、そして上記順序付けされた1組の
    データエレメントの第1エレメントの第1仮想アドレス
    をベクター長さ及びベクターストライドの上記左へシフ
    トされた他方に加算して、上記最後のデータエレメント
    に関連した仮想アドレス情報の上限近似を計算するよう
    に動作する請求項2に記載の予想論理装置。
  4. (4)上記計算装置は、上記順序付けされた1組のデー
    タエレメントのうちの各データエレメントに対し、残り
    のエレメントカウント及びベクターストライドの一方に
    ついての底2の対数上限を順次に決定する第1装置と、
    上記順序付けされた1組のデータエレメントのうちの各
    データエレメントに対し、上記第1装置によって決定さ
    れた上記底2の対数上限だけ、上記残りのカウント及び
    ベクターストライドの他方を上記第1装置に対して順次
    に左へシフトするための第2装置とを備えている請求項
    1に記載の予想論理装置。
  5. (5)上記計算装置は、上記1組の仮想アドレスのうち
    の各仮想アドレスを上記第2装置に対して順次に直列に
    上記第2装置の出力に加算して、上記順序付けされた1
    組のデータエレメントのうちの各データエレメントに対
    し上記最後のデータエレメントに関連した仮想アドレス
    情報を計算するための加算器を備えている請求項4に記
    載の予想論理装置。
  6. (6)特定ベクターのベクター長さ及びベクターストラ
    イドに関する情報を受け取り、上記特定ベクターの順序
    付けされた1組のデータエレメントに対応する各組の仮
    想アドレスの少なくとも一部分を直列に受け取りそして
    更に上記1組の仮想アドレスに対応する変換バッファヒ
    ット及びミス情報を直列に受け取るための入力装置を具
    備し、更に、上記入力装置に接続された計算装置であっ
    て、上記順序付けされた1組のデータエレメントの最後
    のデータエレメントに関連した仮想アドレス情報を、ベ
    クター長さ、ベクターストライド、及び上記1組の仮想
    アドレスのうちの少なくとも1つの仮想アドレスに関連
    した情報に基づいて計算するように動作する計算装置を
    具備し、上記計算装置は、上記順序付けされた1組のデ
    ータエレメントの各々に対し残りのデータエレメントの
    カウントを直列に連続的に決定するための第1装置と、
    上記順序付けされた1組のデータエレメントの各々に対
    し残りのエレメントカウントについての底2の対数上限
    を決定する第2装置と、上記順序付けされた1組のデー
    タエレメントの各々に対し残りのエレメントカウントに
    ついての底2の対数上限だけベクターストライドを左に
    シフトするための第3装置とを備えており、更に、上記
    計算装置は、上記1組の仮想アドレスのうちの各1つの
    仮想アドレスを、上記順序付けされた1組のデータエレ
    メントのうちの1つのデータエレメント(この1つのデ
    ータエレメントは1つの仮想アドレスに対応する)に対
    し、上記残りのエレメントカウントについての底2の対
    数上限だけ上記第3装置によって左へシフトされたベク
    ターストライドに順次に加算し、上記順序付けされた1
    組のデータエレメントの各々に対し、その最後のデータ
    エレメントに関連した仮想アドレス情報を直列に連続的
    に計算するための加算器を備えており、 更に、上記計算装置に接続された比較器であって、上記
    1組の仮想アドレスのうちの各1つの仮想アドレスの少
    なくとも一部分を、1つの仮想アドレスに対応する1つ
    のデータエレメントごとに、上記最後のデータエレメン
    トに関連した仮想アドレス情報と直列に比較するように
    動作する比較器を具備し、そして 更に、上記比較器に接続されたMMOK信号出力装置で
    あって、 i)上記比較器が、いずれか1つの仮想アドレスに対応
    する1つのデータエレメントごとに、上記1組の仮想ア
    ドレスのうちのいずれか1つの仮想アドレスの少なくと
    も一部分と、上記最後のデータエレメントに関連した仮
    想アドレス情報との最初の一致を指示するとき、及び ii)変換バッファのヒット及びミス情報が、上記1組
    の仮想アドレスのうちのいずれか1つの仮想アドレスに
    対して有効変換バッファヒットを指示するときに、 MMOK信号を発生するように動作するMMOK信号出
    力装置を具備することを特徴とする予想論理装置。
  7. (7)上記比較器は、上記仮想アドレスが上記左にシフ
    トされたベクターストライドに加えられたときに仮想ア
    ドレスの少なくとも1つの予め選択されたビットへの桁
    上げ及びそのビットからの桁下げがないかどうを決定し
    て、いずれか1つの仮想アドレスと最後のデータエレメ
    ントに関する仮想アドレス情報との第1の一致を決定し
    そして少なくとも1つの各々の予め選択されたビットへ
    の桁上げもそこからの桁下げもないたびに桁下げ/桁上
    げなし信号を発生するように動作する桁下げ/桁上げ論
    理装置を備えており、 積のチェック装置が上記第3装置に接続されており、こ
    の積のチェック装置は、各仮想アドレスに対して上記第
    3装置によって左へシフトされたベクターストライドが
    少なくとも1つの予め選択された値より小さいかどうか
    を判断し、そして各仮想アドレスに対して上記第3装置
    によって左へシフトされたベクターストライドが少なく
    とも1つの予め選択された値よりも小さいときに各々の
    少なくとも1つの予め選択された値に対し出力信号を発
    生するように動作し、 更に、変換バッファ機構が設けられており、これは、上
    記1組の仮想アドレスのうちの各1つの仮想アドレスを
    直列に変換すると共に、上記1組の仮想アドレスに対す
    る少なくとも1つの所定のアクセスコードチェックの各
    々に基づいて各有効変換ごとにアクセスチェック信号を
    直列に発生するものであり、 上記MMOK出力信号装置は少なくとも1つのアンドゲ
    ートを備え、少なくとも1つの予め選択されたビットの
    各々は、少なくとも1つの予め選択された値及び少なく
    とも1つの所定のアクセスコードチェックの各1つに対
    応しており、少なくとも1つの予め選択されたビット及
    びそれに対応する少なくとも1つの予め選択された値と
    、少なくとも1つの所定のアクセスコードチェックとに
    対する上記発生された信号は、全て、少なくとも1つの
    アンドゲートのうちの1つの各入力に接続され、そして 上記少なくとも1つのアンドゲートの各出力は、全ての
    入力信号が同時に発生したときにMMOK信号を発生す
    るように働く請求項6に記載の予想論理装置。
  8. (8)スカラープロセッサと、 上記スカラープロセッサに対してマスター/スレーブ関
    係で接続されたベクタープロセッサとを具備し、 上記スカラープロセッサは、上記ベクタープロセッサに
    ベクター命令を発生するように動作し、これらベクター
    命令の各々は、ベクターの長さ、ベクターストランド、
    及びベクターの順序付けされた1組のデータエレメント
    に対応する1組の仮想アドレスを含むベクター情報を含
    んでおり、更に、上記1組の仮想アドレスの各々をそれ
    に対応する物理アドレスに順次に変換するための変換機
    構と、 上記スカラープロセッサ、ベクタープロセッサ及び変換
    機構の各々に接続された予想論理装置とを具備し、 この予想論理装置は、 a)特定ベクターのベクター長さ及びベクターストライ
    ドに関連した情報のような情報を上記スカラー及びベク
    タープロセッサから受け取り、上記特定ベクターの順序
    付けされた1組のデータエレメントに対応する各組の仮
    想アドレスの少なくとも一部分を上記スカラープロセッ
    サ及びベクタープロセッサの一方から直列に受け取り、
    そして更に、上記1組の仮想アドレスに対応する変換バ
    ッファヒット及びミス情報を上記変換機構から直列に受
    け取るための入力装置を具備し、 b)更に、上記入力装置に接続された計算装置であって
    、上記順序付けされた1組のデータエレメントのうちの
    最後のデータエレメントに関連した仮想アドレス情報を
    、ベクター長さ、ベクターストライド、及び上記1組の
    仮想アドレスのうちの少なくとも1つの仮想アドレスに
    関連した情報に基づいて計算するように動作する計算装
    置を具備し、 c)更に、上記計算装置に接続された比較器であって、
    上記1組の仮想アドレスのうちの各仮想アドレスの少な
    くとも一部分を、上記最後のデータエレメントに関連し
    た仮想アドレス情報と直列に比較するように動作する比
    較器を具備し、d)更に、上記比較器及びスカラープロ
    セッサの各々に接続されたMMOK信号出力装置であっ
    て、 i)上記比較器が、上記1組の仮想アドレ スのうちのいずれか1つの仮想アドレスの少なくとも一
    部分と、上記最後のデータエレメントに関連した仮想ア
    ドレス情報との最初の一致を指示するとき、及び ii)上記変換機構からの変換バッファのヒット及びミ
    ス情報が、上記1組の仮想アドレスのうちのいずれか1
    つの仮想アドレスについて有効変換バッファヒットを指
    示するときに、 MMOK信号をスカラープロセッサに発生するように動
    作するMMOK信号出力装置を具備することを特徴とす
    るコンピュータシステム。
  9. (9)スカラープロセッサに対してマスター/スレーブ
    関係でベクタープロセッサを動作させる方法において、 特定のベクターに関連した第1ベクター命令をベクター
    プロセッサへ発生するようにスカラープロセッサを動作
    し、 上記特定のベクターの順序付けされた1組のデータエレ
    メントのうちの最後のデータエレメントに関連した仮想
    アドレス情報を計算し、 上記順序付けされた1組のデータエレメントのうちのデ
    ータエレメントに対応する仮想アドレスを順次に変換し
    、 各々の仮想アドレスの少なくとも一部分を、上記最後の
    データエレメントに関連した仮想アドレス情報と直列に
    比較し、 上記仮想アドレスの各々に対し変換バッファヒット及び
    ミス情報を発生し、 以下のときに、即ち、 i)上記比較段階が、いずれか1つの仮想アドレスの少
    なくとも一部分と、上記最後のデータエレメントに関連
    した仮想アドレス情報との最初の一致を指示するとき、
    及び ii)上記発生段階が、いずれか1つの仮想アドレスに
    ついて有効変換バッファヒットを指示する変換バッファ
    ヒット及びミス情報を発生するときに、 上記スカラープロセッサへMMOK信号を発生し、そし
    て 上記MMOK信号が発生されたときに命令の発生を続け
    るように上記スカラープロセッサを動作することを特徴
    とする方法
  10. (10)上記計算段階は、 上記順序付けされた1組のデータエレメントの各データ
    エレメントに対し、残りのエレメントカウント及びベク
    ターストランドのうちの一方についての底2の対数上限
    を最初に順次に計算し、その後、各データエレメントに
    対し、データエレメントの上記底2の対数上限だけ上記
    残りのエレメントカウント及びベクターストライドの他
    方を左へシフトし、そして その後、上記データエレメントに対応する仮想アドレス
    を、データエレメントに対してその手前に段階で決定さ
    れた値に加算して、上記順序付けされた1組のデータエ
    レメントのうちの各データエレメントに対し、最後のデ
    ータエレメントに関連した仮想アドレス情報を計算する
    ことにより実行される請求項9に記載の方法。
  11. (11)上記比較段階は、上記加算段階中に仮想アドレ
    スの少なくとも1つの予め選択されたビットを監視して
    、その少なくとも1つの予め選択されたビットへの桁上
    げがないかそしてそのビットからの桁下げがないかどう
    かを判断する段階を備えた請求項10に記載の方法。
JP1121298A 1988-07-25 1989-05-15 仮想アドレス‐物理アドレスの変換が有効に行なわれることを予想する方法及び装置 Pending JPH0240744A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/224,443 US5179674A (en) 1988-07-25 1988-07-25 Method and apparatus for predicting valid performance of virtual-address to physical-address translations
US224443 1988-07-25

Publications (1)

Publication Number Publication Date
JPH0240744A true JPH0240744A (ja) 1990-02-09

Family

ID=22840705

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1121298A Pending JPH0240744A (ja) 1988-07-25 1989-05-15 仮想アドレス‐物理アドレスの変換が有効に行なわれることを予想する方法及び装置

Country Status (6)

Country Link
US (2) US5179674A (ja)
EP (1) EP0352632B1 (ja)
JP (1) JPH0240744A (ja)
KR (1) KR930002328B1 (ja)
CA (1) CA1313269C (ja)
DE (1) DE68928519T2 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2503702B2 (ja) * 1989-12-19 1996-06-05 日本電気株式会社 アドレス変換装置
CA2045789A1 (en) * 1990-06-29 1991-12-30 Richard Lee Sites Granularity hint for translation buffer in high performance processor
US5530881A (en) * 1991-06-06 1996-06-25 Hitachi, Ltd. Vector processing apparatus for processing different instruction set architectures corresponding to mingled-type programs and separate-type programs
US5333291A (en) * 1991-06-14 1994-07-26 International Business Machines Corporation Stride enhancer for high speed memory accesses with line fetching mode and normal mode employing boundary crossing determination
US5437043A (en) * 1991-11-20 1995-07-25 Hitachi, Ltd. Information processing apparatus having a register file used interchangeably both as scalar registers of register windows and as vector registers
US5392410A (en) * 1992-04-30 1995-02-21 International Business Machines Corporation History table for prediction of virtual address translation for cache access
JP2725546B2 (ja) * 1992-12-07 1998-03-11 株式会社日立製作所 デ−タ処理装置
US5729723A (en) * 1992-11-16 1998-03-17 Hitachi, Ltd. Data processing unit
JP3304444B2 (ja) * 1992-11-30 2002-07-22 富士通株式会社 ベクトル処理装置
US5606683A (en) * 1994-01-28 1997-02-25 Quantum Effect Design, Inc. Structure and method for virtual-to-physical address translation in a translation lookaside buffer
US5680338A (en) * 1995-01-04 1997-10-21 International Business Machines Corporation Method and system for vector processing utilizing selected vector elements
US5890222A (en) * 1995-01-04 1999-03-30 International Business Machines Corporation Method and system for addressing registers in a data processing unit in an indirect addressing mode
US5832533A (en) * 1995-01-04 1998-11-03 International Business Machines Corporation Method and system for addressing registers in a data processing unit in an indexed addressing mode
US5887183A (en) * 1995-01-04 1999-03-23 International Business Machines Corporation Method and system in a data processing system for loading and storing vectors in a plurality of modes
US5752275A (en) * 1995-03-31 1998-05-12 Intel Corporation Translation look-aside buffer including a single page size translation unit
US5918250A (en) * 1995-05-05 1999-06-29 Intel Corporation Method and apparatus for preloading default address translation attributes
US5893930A (en) * 1996-07-12 1999-04-13 International Business Machines Corporation Predictive translation of a data address utilizing sets of associative entries stored consecutively in a translation lookaside buffer
US5918251A (en) * 1996-12-23 1999-06-29 Intel Corporation Method and apparatus for preloading different default address translation attributes
US6138225A (en) * 1997-12-24 2000-10-24 Intel Corporation Address translation system having first and second translation look aside buffers
US6175908B1 (en) 1998-04-30 2001-01-16 Advanced Micro Devices, Inc. Variable byte-length instructions using state of function bit of second byte of plurality of instructions bytes as indicative of whether first byte is a prefix byte
US6141745A (en) * 1998-04-30 2000-10-31 Advanced Micro Devices, Inc. Functional bit identifying a prefix byte via a particular state regardless of type of instruction
US6189094B1 (en) * 1998-05-27 2001-02-13 Arm Limited Recirculating register file
GB2339037B (en) 1998-07-03 2002-11-20 Advanced Risc Mach Ltd Memory address translation in a data processing system
US6266759B1 (en) * 1998-12-14 2001-07-24 Cray, Inc. Register scoreboarding to support overlapped execution of vector memory reference instructions in a vector processor
US6513107B1 (en) * 1999-08-17 2003-01-28 Nec Electronics, Inc. Vector transfer system generating address error exception when vector to be transferred does not start and end on same memory page
US6813701B1 (en) * 1999-08-17 2004-11-02 Nec Electronics America, Inc. Method and apparatus for transferring vector data between memory and a register file
US6665749B1 (en) * 1999-08-17 2003-12-16 Nec Electronics, Inc. Bus protocol for efficiently transferring vector data
US6625720B1 (en) * 1999-08-17 2003-09-23 Nec Electronics, Inc. System for posting vector synchronization instructions to vector instruction queue to separate vector instructions from different application programs
US9311094B2 (en) * 2011-01-21 2016-04-12 Apple Inc. Predicting a pattern in addresses for a memory-accessing instruction when processing vector instructions
EP2757468A1 (en) * 2013-01-22 2014-07-23 Siemens Aktiengesellschaft Apparatus and method for managing a software development and maintenance system
CN108334291B (zh) * 2018-03-07 2021-05-18 成都创信特电子技术有限公司 建立移动终端可信环境的方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61141055A (ja) * 1984-12-14 1986-06-28 Hitachi Ltd 情報処理装置のアドレス変換方式
JPS63180171A (ja) * 1987-01-21 1988-07-25 Fujitsu Ltd 情報処理装置

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1059639A (en) * 1975-03-26 1979-07-31 Garvin W. Patterson Instruction look ahead having prefetch concurrency and pipe line features
US4541046A (en) * 1981-03-25 1985-09-10 Hitachi, Ltd. Data processing system including scalar data processor and vector data processor
US4462074A (en) * 1981-11-19 1984-07-24 Codex Corporation Do loop circuit
US4463422A (en) * 1982-07-12 1984-07-31 Csp, Inc. Method of processing an iterative program loop
JPS60156151A (ja) * 1983-12-23 1985-08-16 Nec Corp メモリアクセス制御装置
FR2561429B1 (fr) * 1984-03-13 1986-09-19 Trt Telecom Radio Electr Dispositif d'adressage pour fournir a une memoire des codes d'adresse
US4620275A (en) * 1984-06-20 1986-10-28 Wallach Steven J Computer system
US4727483A (en) * 1984-08-15 1988-02-23 Tektronix, Inc. Loop control system for digital processing apparatus
JPH0656594B2 (ja) * 1985-05-07 1994-07-27 株式会社日立製作所 ベクトルプロセツサ
JPH0622035B2 (ja) * 1985-11-13 1994-03-23 株式会社日立製作所 ベクトル処理装置
US4811215A (en) * 1986-12-12 1989-03-07 Intergraph Corporation Instruction execution accelerator for a pipelined digital machine with virtual memory
US4926317A (en) * 1987-07-24 1990-05-15 Convex Computer Corporation Hierarchical memory system with logical cache, physical cache, and address translation unit for generating a sequence of physical addresses
US5179709A (en) * 1989-01-13 1993-01-12 International Business Machines Corporation Look ahead bus transfer request

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61141055A (ja) * 1984-12-14 1986-06-28 Hitachi Ltd 情報処理装置のアドレス変換方式
JPS63180171A (ja) * 1987-01-21 1988-07-25 Fujitsu Ltd 情報処理装置

Also Published As

Publication number Publication date
US5319791A (en) 1994-06-07
EP0352632A3 (en) 1990-10-24
KR900002187A (ko) 1990-02-28
US5179674A (en) 1993-01-12
CA1313269C (en) 1993-01-26
EP0352632A2 (en) 1990-01-31
DE68928519D1 (de) 1998-02-12
KR930002328B1 (ko) 1993-03-29
DE68928519T2 (de) 1998-08-27
EP0352632B1 (en) 1998-01-07

Similar Documents

Publication Publication Date Title
JPH0240744A (ja) 仮想アドレス‐物理アドレスの変換が有効に行なわれることを予想する方法及び装置
US5123095A (en) Integrated scalar and vector processors with vector addressing by the scalar processor
US4811215A (en) Instruction execution accelerator for a pipelined digital machine with virtual memory
EP0381470B1 (en) Processing of memory access exceptions along with prefetched instructions within the instruction pipeline of a virtual memory system-based digital computer
US5860107A (en) Processor and method for store gathering through merged store operations
US6230260B1 (en) Circuit arrangement and method of speculative instruction execution utilizing instruction history caching
CN100541423C (zh) 在推测性处理器中减少执行涉及不可靠数据的指令的系统与方法
US4794524A (en) Pipelined single chip microprocessor having on-chip cache and on-chip memory management unit
JP2769097B2 (ja) アドレス変換方法及びデータ処理装置
US7581084B2 (en) Method and apparatus for efficient loading and storing of vectors
US9141131B2 (en) Methods and systems for performing exponentiation in a parallel processing environment
JPS6323586B2 (ja)
US5349651A (en) System for translation of virtual to physical addresses by operating memory management processor for calculating location of physical address in memory concurrently with cache comparing virtual addresses for translation
US5805475A (en) Load-store unit and method of loading and storing single-precision floating-point registers in a double-precision architecture
JP2678527B2 (ja) キャッシュメモリ装置
JPH02208729A (ja) マイクロコード式実行装置での並列動作による複数機能装置の制御
JPS5991546A (ja) 中央処理装置
CN1044177A (zh) 紧配合的多处理器指令同步
JP2000222206A (ja) データ処理装置
US5822788A (en) Mechanism for prefetching targets of memory de-reference operations in a high-performance processor
CN107111550A (zh) 通过选择性页遗漏转换预取隐藏程序存储器控制器中转换遗漏时延
JP2006520964A (ja) 分岐ターゲットに基づいて分岐予測をするための方法および装置
JPH05134927A (ja) アドレス変換装置および方法
JP2006520964A5 (ja)
US20030182537A1 (en) Mechanism to assign more logical load/store tags than available physical registers in a microprocessor system