第二部 トロン仕様チップ命令詳細第十七章 MMU関連命令
MOVPA(特権命令)
MMU関連命令 <<L1>>,<<L2>>

【ニモニックとオペランド】

MOVPA srcadr, dest

【機能】

Move physical address
物理アドレスの転送

【オプション】

なし

【命令フォーマットと表記法】

レジスタ上のパラメータ

R1:UATBと等価の情報

【解説】

 この命令はsrcadrオペランドの実効アドレス(論理アドレス)を計算し、それを物理アドレスに変換して、その結果をdestオペランドに格納します。
 srcadrで示される論理アドレスが正の場合、アドレス変換はUATBの代わりに汎用レジスタR1を使用します。したがって、UATBの中で常に0のビットはR1でも0でなければなりません(チェックは行いません)。しかし、論理アドレスが負の場合は、通常の命令のようにSATBを使用します。
 アドレス変換中に検出されたリング保護違反以外の例外は、以下のようにV_flagまたはF_flagをセットして示します(例外処理は行わず、デスティネーションオペランドは変わりません)。例外が検出されなかった場合には、これらのフラグは共にクリアされます。
(1) 正常終了
(V_flag = 0, F_flag = 0)
(2) 未使用域参照または不正ATEによるアドレス変換例外を検出。アドレス転送は行わない。
(V_flag = 1, F_flag = 0))
(3) アドレス変換中にページ不在例外を検出。アドレス転送は行わない。
(V_flag = 1, F_flag = 1)

 MOVPA命令はTLBを参照せず、 変換されたアドレスのTLBへの登録も行いません。
 MOVPA命令は、PSWのATビットの設定に関係なく、srcadrオペランドのアドレス変換を行います。destオペランドは、通常のアドレス変換を行います。
 MOVPAは特権命令です。

【フラグ変化】

【発生EIT】

RIE  srcadr [Gen/a],dest [Gen-S/w]のアドレッシングモード違反
RIE s = 1
PIVE リング0以外で実行

【使用例】



 汎用レジスタR2の内容を論理アドレスとして物理アドレスに変換し、R12に格納します。