インテルのみ表示可能 — GUID: vcu1629431789036
Ixiasoft
2.3.5. 例外コントローラー
Nios® V/mプロセッサーのアーキテクチャーによって提供される単純な例外コントローラーでは、すべての例外タイプを処理できます。内部ハードウェア割り込みなどの各例外の発生により、プロセッサーはから例外アドレスに実行が転送されます。このアドレスの例外ハンドラーにより、例外の原因を判断し、適切な例外ルーチンを実行します。
例外アドレスの設定は、 Nios® V Processor Board Support Package Editor > BSP Linker Scriptで行います。 Nios® V/mプロセッサーにより、そのアドレスをマシン・トラップ・ハンドラー・ベース・アドレス (mtvec) CSRレジスターに格納します。
すべての例外は正確です。プロセッサーは、障害命令に先行するすべての命令を完了し、障害命令の後に続く命令の実行は開始しません。
例外 | 説明 |
---|---|
命令アドレス・ミスアラインメント | Fステージのコア・パイプライン・ロジックにより例外を検出します。この例外のフラグ付けは、コアが32ビットワード境界にアライメントされていないプログラムカウンターをフェッチした場合に行われます。 |
命令アクセス障害 | 命令読み出し応答信号によりこの例外を検出します。 |
不正な命令 | Dステージの命令デコーダーによるこの例外のフラグ付けは、命令ワードに未実装または未定義の命令のエンコードが含まれている場合に行われます。 CSR読み出しおよび書き込みのコントロール・ロジックによるこの例外のフラグ付けは、CSR命令が未実装または未定義のCSRにアクセスする場合に行われます。 |
ブレークポイント | 命令デコーダーによるソフトウェア・ブレークポイント例外 EBREAK のフラグ付けは、Dステージで行われます。 |
ロード・アドレス・ミスアラインメント | Mステージのロード/ストアユニットのコアによりミスアラインメントを検出します。この例外のフラグ付けは、データアドレスがデータアクセスのサイズに合わせてアラインメントされていない場合に行われます。 |
ストア・アドレス・ミスアラインメント | |
ロードアクセス障害 | データ読み出しおよび書き込み応答信号のコアにより例外を検出します。 |
ストアアクセス障害 | |
MモードからのEnv呼び出し | Dステージの命令デコーダーにより命令を検出します。 |