インテルのみ表示可能 — GUID: ona1481130353407
Ixiasoft
1. インテル® Agilex™ ハード・プロセッサー・システムのテクニカル・リファレンス・マニュアル改訂履歴
2. ハード・プロセッサー・システムの概要
3. Cortex-A53 MPCoreプロセッサー
4. キャッシュ・コヒーレンシー・ユニット
5. システムメモリー管理ユニット
6. システム・インターコネクト
7. ブリッジ
8. DMAコントローラー
9. オンチップRAM
10. ECC (エラー検出訂正) コントローラー
11. クロック・マネージャー
12. システム・マネージャー
13. リセット・マネージャー
14. ハード・プロセッサー・システムのI/Oピンの多重化
15. NANDフラッシュ・コントローラー
16. SD/MMCコントローラー
17. イーサネット・メディア・アクセス・コントローラー
18. USB 2.0 OTGコントローラー
19. SPIコントローラー
20. I2Cコントローラー
21. UARTコントローラー
22. 汎用I/Oインターフェイス
23. タイマー
24. ウォッチドッグ・タイマー
25. CoreSightのデバッグとトレース
A. ブートとコンフィグレーション
B. HPSを介したセキュア・デバイス・マネージャーQuad SPIフラッシュ・コントローラーへのアクセス
3.5.1. 例外レベル
3.5.2. 仮想化
3.5.3. メモリー管理ユニット
3.5.4. レベル1キャッシュ
3.5.5. レベル2メモリーシステム
3.5.6. スヌープ制御ユニット
3.5.7. 暗号化による拡張
3.5.8. NEONマルチメディア・プロセッシング・エンジン
3.5.9. 浮動小数点演算装置
3.5.10. ACEバス・インターフェイス
3.5.11. アボート処理
3.5.12. キャッシュ保護
3.5.13. 汎用割り込みコントローラー
3.5.14. 汎用タイマー
3.5.15. デバッグモジュール
3.5.16. キャッシュ・コヒーレンシー・ユニット
3.5.17. クロックソース
25.4.1. デバッグ・アクセス・ポート
25.4.2. CoreSight SoC-400タイムスタンプ・ジェネレーター
25.4.3. システム・トレース・マクロセル
25.4.4. トレースファネル
25.4.5. CoreSightのトレース・メモリー・コントローラー
25.4.6. AMBAトレース・バス・レプリケーター
25.4.7. トレース・ポート・インターフェイス・ユニット
25.4.8. NoCトレースポート
25.4.9. エンベデッド・クロス・トリガー・システム
25.4.10. エンベデッド・トレース・マクロセル
25.4.11. HPSのデバッグAPBインターフェイス
25.4.12. FPGAインターフェイス
25.4.13. デバッグクロック
25.4.14. デバッグのリセット
インテルのみ表示可能 — GUID: ona1481130353407
Ixiasoft
17.7.3. EMAC HPSインターフェイスの初期化
イーサネット・コントローラーを初期化してHPSインターフェイスを使用するには、特定のソフトウェア手順に従う必要があります。これには、システム・マネージャーを介して正しいPHYインターフェイスを選択することなどが含まれます。
一般的に、イーサネット・コントローラーは静的コンフィグレーション時にリセット状態になっている必要があります。また、イーサネット・コントローラーのリセットが終了する前に、クロックがアクティブで有効になっている必要があります。
- HPSがコールドリセットまたはウォームリセットから解放されたら、リセット・マネージャーのper0modrstレジスターで適切なemac*ビットを設定し、イーサネット・コントローラー・モジュールをリセットします。
- クロック・マネージャーの適切なレジスターをプログラミングし、EMACコントローラーのクロックを250MHzにコンフィグレーションします。
- イーサネットPHYのリセットを解除し、PHYでRXクロックを生成できるようにします。
検証するレジスターはありませんが、次のカスタム・ロジック・ブロックを作成してクロスチェックを行うことができます。
- RXクロックをFPGA IOを介してルーティングしている場合 - Signal Tapを使用して確認する、もしくはRXクロックをクロックソースとして単純なカウンターブロックを作成し、実行されているかを確認することができます。
- RXクロックをHPS IOとしてルーティングしている場合 - カーネルのアプリケーション・コードがRXクロックを介して供給できるかを調べ、そのステータスを確認する必要があります。
- すべてのクロックが有効になったら、次のクロック設定をプログラミングします。
- システム・マネージャーのemac*レジスターのphy_intf_selフィールドを0x1または0x2にプログラミングし、RGMIIまたはRMII PHYインターフェイスを選択します。
- システム・マネージャーのfpgaintf_en_3レジスターでemac_*ビットをクリアし、イーサネット・コントローラーFPGAインターフェイスを無効にします。
- ユーザーがデフォルト値とは異なる設定を必要とする場合は、EMACの静的設定をすべてコンフィグレーションします。この設定には、AxPROT[1:0] 信号およびAxCACHE信号の値が含まれます。これらの値は、システム・マネージャーのemac*レジスターでプログラミングされます。
- レジスターのリードバックを実行し、クロックと静的コンフィグレーションの設定が有効であることを確認します。
- 設定が有効であることを確認後、ソフトウェアでリセット・マネージャーのper0modrstレジスターのemac*ビットをクリアして、EMACのリセットを解除することができます。
これらの手順が完了すると、一般的なイーサネット・コントローラーとDMAソフトウェアの初期化およびコンフィグレーションを続行することが可能です。