インテル® Agilex™ ハード・プロセッサー・システムのテクニカル・リファレンス・マニュアル

ID 683567
日付 1/19/2023
Public
ドキュメント目次

17.7.5. EMACの初期化とコンフィグレーション

次のEMACコンフィグレーション操作は、DMAの初期化後に行うことができます。DMAが設定される前にEMACの初期化とコンフィグレーションを行う場合は、DMAがアクティブになった後にのみMACレシーバーを有効にします (以下の最後の手順)。これに従わない場合は、受信したフレームによりRX FIFOバッファーがフルになり、オーバーフローする可能性があります。

  1. GMII Address Register (オフセット0x10) をプログラミングし、外部PHYの管理サイクルを制御します。GMII Address Registerのビット [15:11] は、読み出しまたは書き込みの前にPHYの物理層アドレスで書き込まれます。ビット0はPHYがビジーであるかを示し、PHY管理インターフェイスに読み出しまたは書き込みを行う前に設定されます。†
  2. GMII Address Registerのビット [15:11] で適切なアドレス値を指定し、リンクアップ、動作速度、および動作モードに関するGMII Data Registerの16ビット・データをPHYから読み出します。
  3. MACアドレスレジスターを提供します (MAC Address0 High RegisterからMAC Address15 High Register、およびMAC Address0 Low RegisterからMAC Address15 Low Register)。
  4. Hash Table Registersの0から7 (オフセット0x500から0x51C) をプログラミングします。
  5. MAC Frame Filter Registerの次のフィールドをプログラミングし、着信フレームに適切なフィルターを設定します。†
    • Receive All †
    • Promiscuous mode †
    • Hash or Perfect Filter †
    • ユニキャスト、マルチキャスト、ブロードキャスト、および制御フレームのフィルター設定†
  6. Flow Control Registerの次のフィールドをプログラミングし、適切なフロー制御を行います。†
    • 一時停止時間およびその他のポーズフレーム制御ビット†
    • 受信および送信フローの制御ビット†
    • Flow Control Busy/Backpressure Activate †
  7. 使用しているコンフィグレーションに該当する場合は、必要に応じてInterrupt Mask Registerのビットをプログラミングします。†
  8. MAC Configuration Registerで適切なフィールドをプログラミングし、受信および送信の動作モードをコンフィグレーションします。基本的なコンフィグレーションを書き込み後、このレジスターのビット3 (TE) およびビット2 (RE) を設定し、受信および送信のステートマシンを有効にします。†
    注: EMAC DMAがアクティブに送信または受信を行っている際は、コンフィグレーション (二重モード、速度、ポート、ループバックなど) を変更しないでください。ソフトウェアによるこれらのパラメーターの変更は、EMAC DMAのトランスミッターおよびレシーバーがアクティブではない場合にのみ行う必要があります。