Nios® V プロセッサー・ソフトウェア開発者ハンドブック

ID 743810
日付 7/08/2024
Public
ドキュメント目次

4.3.4.5.2. 推奨されるアーキテクチャー手法

アプリケーション・ソフトウェアの作成中に発生するハードウェアとソフトウェアのコヒーレンシ問題の多くは、ペリフェラル・アドレスの配置ミスの問題です。プラットフォーム・デザイナーが提供する柔軟性により、システム内のほぼすべてのペリフェラルに任意のアドレスを割り当てたり、システムの作成中にそのアドレスを変更したりできます。

ソフトウェア・アプリケーションの作成時のこのタイプのコヒーレンシ問題を回避するためには、以下の手法を実装します。

  • ペリフェラルとメモリーのアドレッシング Nios® Vプロセッサー・ツールは、システム内のすべてのペリフェラルの #define シンボルのセットを定義するシステム・ヘッダー・ファイルの system.h を自動的に生成します。これらの定義は、ペリフェラル名、ベースアドレス・ロケーション、およびアドレススパンを指定します。

コヒーレンシ問題から保護するには、system.h 名とアドレス・スパン・シンボルを使用して、すべてのシステム・ペリフェラルおよびメモリー・コンポーネントにアクセスします。この方法により、ペリフェラルのアドレス可能な位置が変更された後でも、ペリフェラル・レジスターへのアクセスが成功することが保証されます。

例えば、システムに UART1 (アドレス 0x1000 に位置) と名づけられた UART ペリフェラルが含まれる場合、アドレス (IOWR_32 (0x1000, 0x0,0x10101010)) ではなく system.h のアドレス・シンボル (IOWR_32 (UART1_BASE, 0x0,0x10101010)) を使用して UART 1 レジスターにアクセスします。