Renesas Synergy™

FAQ 1010750 : RL78/G10のミラー領域他のRL78と違っているようですが,注意すべき点はありますか。

RL78/G10ではミラー領域のアクセス方式を見直してアドレスの上位5ビット(A19~A15)を変換することで,ミラー領域を使用できるようにしています。例えば,図2のプログラム例のTABLE3(000CEH番地)はミラー領域のF80CEH番地で,同じくTABLE2(00113H番地)はF8113H番地でアクセスできます。
ここで注意しないといけないのは,例えばTABLE3をアクセスするために単純にアドレスの下位の16ビットを抜き出すと,00CEHとなります。これでFxxxxHの空間をアクセスするとミラー領域ではなく,F00CEH番地の2ndFSRをアクセスしてしまいます。そこで,アセンブラがTABLE3にアクセスするためのアドレスとして,ビット15をセットした値(つまり80CEH)を生成します(図2のリスト部の(1)参照)。
ただし,ES:プリフィクスを付けることで,ミラー領域ではなく1Mバイト空間でアクセスすることを明確にすると通常のアドレス(00CEH)が生成されます(図2のリスト部(2)参照)。
ここで,注意する必要があるのが添付資料のリスト部の1行目のようにレジスタにアドレスをセットする場合です。#LOWWで下位16ビットを抽出すると,通常のアドレス(0113H)しか設定されません。レジスタ間接アドレシングでミラー領域を介してアクセスするにはレジスタのビット15を1にセットしてください。

適用製品

RL78/G10
他にご質問がございましたら、リクエストを送信してください