Nios II Gen2 プロセッサー・リファレンス・ガイド

ID 683836
日付 10/28/2016
Public
ドキュメント目次

3.4.2.11. badaddr レジスター

Nios II/f プロセッサーは、例外が発生したときに exception および badaddr レジスターの例外処理のシステム・ソフトウェアに役立つ情報を提供します。

注: 例外レジスターは Nios II/e では有効ではありません。

Nios II/f プロセッサーで例外が発生すると、badaddrレジスターには、例外が発生した際に特定の例外に関連するバイト命令またはデータアドレスが格納されます。Nios II の例外の表には、badaddrレジスターに書き込まれた値とともに書き込まれる例外がリストされています。

表 28.  badaddr コントロール・レジスター・フィールド
ビットフィールド
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
BADDR
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
BADDR
表 29.  badaddr コントロール・レジスター・フィールドの説明
フィールド 説明 アクセス リセット 使用可能
BADDR BADDRは、特定の例外が発生した際に例外に関連するバイト命令アドレスまたはデータアドレスが含んでいます。例外をBADDRフィールドを書き込む例外は、Nios II の例外の表のアドレス列にリストされています。 読み出し 0 Nios II/f あり

BADDRフィールドは、最大 32 ビットの命令アドレスまたはデータアドレスを許可します。MMU または MPU が存在する場合、MMU および MPU の命令およびデータアドレスは常に完全な 32 ビット値のため、BADDRフィールドは 32 ビットです。MMU が存在する場合、BADDRフィールドには仮想アドレスがあります。

MMU または MPU がなく、Nios II のアドレス空間が 32 ビット未満の場合、未使用の上位ビットが書き込まれ、ゼロとして読み出されます。MMU が存在しない場合、データアドレスのビット 31 ( データキャッシュのバイパスに使用される ) は、BADDRフィールドでは常にゼロです。