| 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以外で実行
【使用例】