トリプル・スピード・イーサネット megacore · 101 innovation drive san jose, ca...
TRANSCRIPT
101 Innovation DriveSan Jose, CA 95134www.altera.com
トリプル・スピード・イーサネット MegaCore
この資料は英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。こちらの日本語版は参考用としてご利用ください。設計の際には、最新の英語版で内容をご確認ください。
ソフトウェア・ バージョン: 11.0
ドキュメント・デート: 2011 年 6 月
ファンクション・ユーザーガイド
Copyright © 2011 Altera Corporation. All rights reserved. Altera, The Programmable Solutions Company, the stylized Altera logo, specific device designations, and all otherwords and logos that are identified as trademarks and/or service marks are, unless noted otherwise, the trademarks and service marks of Altera Corporation in the U.S. and othercountries. All other product or service names are the property of their respective holders. Altera products are protected under numerous U.S. and foreign patents and pending ap-plications, maskwork rights, and copyrights. Altera warrants performance of its semiconductor products to current specifications in accordance with Altera's standard warranty,but reserves the right to make changes to any products and services at any time without notice. Altera assumes no responsibility or liability arising out of the application or use ofany information, product, or service described herein except as expressly agreed to in writing by Altera Corporation. Altera customers are advised to obtain the latest version ofdevice specifications before relying on any published information and before placing orders for products or services.
UG-01008-2.1
© June 2011 Altera Corporation
内容
第 1章 . この MegaCoreファンクションについてサポートされるデバイス・ファミリ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–1特長 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–210/100/1000 イーサネット MAC と Small MACの比較 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–3上位レベルのブロック図 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–5応用例 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–6MegaCore検証 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–8オプティカル・プラットフォーム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–8銅線プラットフォーム . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–9
パフォーマンスおよびリソース使用率 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–9リリース情報 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–14
第 2章 . アルテラ IPコアの使用法インストールおよびライセンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–1デザイン・フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–1MegaWizard Plug-In Managerフロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–3パラメータの指定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–3IPコアをシミュレート . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–5
SOPC Builderによるデザイン・フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–5パラメータの指定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–6SOPC Builder システムの完了 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–6
Qsysシステム統合ツールによるデザイン・フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–7パラメータの指定 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–8Qsys システムの完了 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–8システムのシミュレーション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–9
生成されるファイル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–9タイミング制約 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–10
第 3章 . パラメータの設定コア・コンフィギュレーション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–1MAC オプション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–3FIFOオプション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–5PCS/Transceiverのオプション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–5
第 4章 . 機能の説明10/100/1000 イーサネット MAC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–1アーキテクチャ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–1インタフェース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–3送信データ・パス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–4受信データ・パス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–7送受信レイテンシ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–12FIFOバッファのスレッショルド . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–14輻輳状態およびフロー・コントロール . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–18マジック・パケット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–19ローカル・ループバック . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–20リセット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–21PHYマネージメント(MDIO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–22外部 PHYへの MACの接続 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–24
トリプル・スピード・イーサネット MegaCorePreliminary
iv 内容
オプションの PMAが組み込まれた 1000BASE-X/SGMII PCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–27アーキテクチャ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–28送信動作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–29受信動作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–30送受信レイテンシ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–31SGMIIコンバータ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–32オート・ネゴシエーション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–3310ビット・インタフェース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–35PHYループバック . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–35PHYパワーダウン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–36リセット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–37
第 5章 . コンフィギュレーション・レジスタ空間MAC コンフィギュレーション・レジスタ空間 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–1ベース・コンフィギュレーション・レジスタ (Dwordオフセット 0x00 – 0x17) . . . . . . . . . . . . . 5–2統計情報カウンタ (Dword オフセット 0x18 – 0x38) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–10送受信コマンド・レジスタ (Dwordオフセット 0x3A – 0x3B) . . . . . . . . . . . . . . . . . . . . . . . . . . 5–13セカンダリ・アドレス (Dwordオフセット 0xC0 – 0xC7) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–14
PCSコンフィギュレーションのレジスタ・スペース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–14コントロール・レジスタ (ワード・オフセット 0x00) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–17ステータス・レジスタ (ワード・オフセット 0x01) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–18Dev_Ability および Partner_Abilityレジスタ (ワード・オフセット 0x04 – 0x05) . . . . . . . . . . . 5–19An_Expansion レジスタ (ワード・オフセット 0x06) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–20If_Modeレジスタ (ワード・オフセット 0x14) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–21
第 6章 . インタフェース信号10/100/1000イーサネット MAC信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–110/100/1000 マルチ・ポート・イーサネット MAC信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–121000BASE-X/SGMII PCSを備えた 10/100/1000イーサネットMACの信号 . . . . . . . . . . . . . . . 6–171000BASE-X/SGMII PCSを備えた 10/100/1000マルチ・ポート・イーサネットMACの信号 6–201000BASE-X/SGMII PCSおよび PMAを備えた 10/100/1000イーサネット MACの信号 . . . . 6–221000BASE-X/SGMII PCSとエンベデッド PMAを備えた 10/100/1000マルチ・ポート・イーサネット MACの信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–271000BASE-X/SGMII PCS信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–291000BASE-X/SGMII PCSと PMAの信号 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–34
タイミング . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–35Avalon-ST受信インタフェース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–35Avalon-ST送信インタフェース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–37GMII送信 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–38GMII受信 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–38RGMII 送信 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–38RGMII受信 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–39MII送信 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–40MII受信 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–40
第 7章 . デザインの検討事項PCSおよびエンベデッド PMAを備えたマルチポート MACのクロック・リソースの最適化 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–1
MACおよび PCS/GXトランシーバ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–2LVDS Soft-CDR I/Oを備えた MACおよび PCS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–5
LVDS Soft-CDR I/Oを備えたデバイスにおける PLL共有 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–7トランシーバ・クワッドの共有 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–7
トリプル・スピード・イーサネット MegaCore © June 2011 Altera CorporationPreliminary
内容 v
第 8章 . テストベンチ アーキテクチャ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–1コンポーネント . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–1検証 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–2コンフィギュレーション . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–3テスト・フロー . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–4
第 9章 . ソフトウェア・プログラミング・インタフェースドライバのアーキテクチャ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–1ディレクトリ構造 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–2PHY定義 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–2複数の SG-DMAディスクリプタの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–4ジャンボ・フレームの使用 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–5API関数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–6
alt_tse_mac_get_common_speed() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–6alt_tse_mac_set_common_speed() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–6alt_tse_phy_add_profile() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–7alt_tse_system_add_sys() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–7triple_speed_ethernet_init() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–8tse_mac_close() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–8tse_mac_raw_send() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–9tse_mac_setGMII mode() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–9tse_mac_setMIImode() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–9tse_mac_SwReset() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–10
定数 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–10
付録 A. MegaCoreファンクションの評価OpenCore Plus評価機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–1
OpenCore Plusタイム・アウト動作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–1
付録 B. イーサネット・フレーム・のフォーマット基本フレーム・フォーマット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–1VLAN およびスタック VLANフレームのフォーマット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–1ポーズ・フレームのフォーマット . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–2
付録 C. シミュレーション・パラメータ機能コンフィギュレーション・パラメータ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–1テスト・コンフィギュレーション・パラメータ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–2
追加情報改訂履歴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Info–1アルテラへの問い合わせ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Info–3表記規則 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Info–3
© June 2011 Altera Corporation トリプル・スピード・イーサネット MegaCorePreliminary
vi 内容
トリプル・スピード・イーサネット MegaCore © June 2011 Altera CorporationPreliminary
2011 年 6 月 トリプルAltera Corporation
1. この MegaCoreファンクションについて
アルテラのトリプル・スピード・イーサネット MegaCore® ファンクションは、 IEEE 802.3 規格に準拠しているコンフィギュレーション可能な IP コアです。この IP コア
は、大学(UNH)インターオペラビリティ・ラボラトリでテストおよび検証済みで
す。トリプル・スピード・イーサネット MegaCore ファンクションは、10/100/1000 Mbps イーサネットのメディア・アクセス・コントローラ(MAC)および
1000BASE-X/SGMII フィジカル・コーディング・サブレイヤ(PCS)、オプション
のフィジカル・メディア・アタッチメント(PMA)の特長を組み合わせたものです。
サポートされるデバイス・ファミリMegaCore ファンクションは、ターゲットのアルテラ・デバイス・ファミリに対し、
下記のサポートを提供しています。
■ FPGA デバイス・ファミリ
■ 暫定サポート — アルテラは、このデバイス・ファミリの暫定タイミング・モ
デルに対してこの IP コアを検証済みです。このコアはすべての機能要件を満
たすが、メガファンクションに対し、デバイス・ファミリについてのタイミ
ング解析がまだ行われています。製造デザインでの使用は注意が必要です。
■ 終サポート — アルテラは、このデバイス・ファミリの 終タイミング・モ
デルに対してこの IP コアを検証済みです。MegaCore ファンクションがデバ
イス・ファミリの機能要件およびタイミング要求値をすべて満たしており、
生産デザインで使用可能です。
■ HardCopy デバイス・ファミリ
■ コンパニオン — Altera は、HardCopy コンパニオン・デバイスの暫定タイミ
ング・モデルに対してこの IP コアを検証済みです。 IP コアが機能要件をすべ
て満たしているが、タイミング要件については評価中です。生産デザインで
の使用は注意が必要です。
■ コンパイル — アルテラは、HardCopy デバイス・ファミリの 終タイミング・
モデルに対してこの IP コアを検証済みです。MegaCore ファンクションがデ
バイス・ファミリの機能要件およびタイミング要求値をすべて満たしており、
生産デザインで使用可能です。
表 1–1 に、トリプル・スピード・イーサネット MegaCore ファンクションによる各
アルテラ・デバイス・ファミリへのサポートのレベルを示します。
表 1–1. サポートされるデバイス・ファミリ (1 / 2 )
デバイス・ファミリ サポートArria® GX 終サポート
Arria II GX 終サポート
Arria II GZ 終サポート
Cyclone® II 終サポート
Cyclone III LS 終サポート
Cyclone IV GX 終サポート
・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
1–2 1このMegaCoreファンクションについて特長
特長■ 10/100/1000-Mbps イーサネット MAC、 1000BASE-X/SGMII PCS、および エンベ
デッド PMA を備えた完全な トリプル・スピード・ イーサネット IP です。
■ 米ニューハンプシャー大学(UNH)インターオペラビリティ・ラボラトリで検証
済みです。
■ 10/100/1000-Mbps イーサネット MAC は以下の機能を提供しています。
■ 複数のバリエーション:全二重 10/100/1000 Mbps イーサネット MAC、半二重
10/100 Mbps イーサネット MAC、 10/100 Mbps または 1000 Mbps の small MAC (リソース効率の高いバリエーション)、および 大 24 ポートをサポー
トするマルチポート MAC。
■ 基本、 VLAN、スタック VLAN、および ジャンボのイーサネット・フレームを
サポートします。また、ポーズ・フレームなどのコントロール・フレームを
サポートします。
■ オプションの内部 FIFO バッファをサポートします。深さは 64 バイト~ 256 キ
ロバイトです。
■ オプションの統計情報カウンタ
■ 1000BASE-X/SGMII PCS は以下の機能を提供しています。
■ IEEE 802.3 規格の 36 項に準拠しています。
■ オプションのエンベデッド PMA
■ 37 項に定義されているオート・ネゴシエーションをサポートします。
■ 1000BASE-X PHY への接続をサポートします。また、 PHY が SGMII をサポー
トする場合、10BASE-T、 100BASE-T、 および 1000BASE-T PHY をサポート
しています。
Stratix® II 終サポート
Stratix® II GX 終サポート
Stratix III 終サポート
Stratix IV E/GX 終サポート
Stratix IV GT 終サポート
Stratix V 暫定サポート
HardCopy® II コンパイル
HardCopy III コンパイル
HardCopy IV E/GX コンパイル
Other device families サポートなし
表 1–1. サポートされるデバイス・ファミリ (2 / 2 )
デバイス・ファミリ サポート
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
1この MegaCoreファンクションについて 1–310/100/1000 イーサネットMAC と Small MAC の比較
■ MAC インタフェース:
■ クライアント側 —8 または 32 ビットの Avalon® Streaming (Avalon-ST)
■ ネットワーク側 — ネットワーク側では、MII(medium independent interface)、GMII (gigabit medium independent interface)、または RGMII
(reduced gigabit medium independent interface)をサポートします 。これら
のインタフェースでは、ループバックのオプションが提供されています。
■ PHY デバイス管理用の MDIO(Management Data I/O)マスタ・インタフェー
スのオプション
■ PCS インタフェース:
■ クライアント側 —MII または GMII
■ ネットワーク側 —PMA なしの PCS 用 10 ビット・インタフェース(TBI)。PMA を備えた PCS 用 1.25 Gbps シリアル・インタフェース
■ 32 ビットのコンフィギュレーション・レジスタを介してプログラム可能な機能は
以下のとおりです。
■ FIFO バッファのスレッショルド
■ フロー・コントロールのためのポーズ・クアンタ
■ MAC アドレスの送信元および送信先
■ 受信側でのアドレス・フィルタリング、 大 5 つのユニキャスト MAC アドレス
および 64 のマルチキャスト MAC アドレスをサポート
■ プロミスキャス・モード — このモードでは、受信フレームのフィルタリング
がディセーブルされます。
■ フレーム長 — 「MAC のみ」バリエーションでは、 大 64 キロバイトのフ
レーム(ジャンボ・フレームを含む)をプログラム可能です。1000BASE-X/SGMII PCS を含むすべてのバリエーションでは、 大 10 キロバイトのフ
レーム長をプログラム可能です。
■ 1000BASE-X/SGMII PCS オート・ネゴシエーション・オプション
10/100/1000 イーサネット MAC と Small MACの比較表 1–2 は、10/100/1000 イーサネット MAC と Small MAC の機能を比較したもので
す。
表 1–2. 10/100/1000イーサネット MAC および Small MACの機能の比較 (1 / 2 )
機能 10/100/1000 イーサネット MAC Small MAC
速度トリプル・スピード (10/100/1000 Mbps) 10/100 Mbps または 1000 Mbps
外部インタフェース MII/GMII または RGMII10/100 Mbps Small MAC の場合は、MII のみです。 1000 Mbps Small MAC の場合は、GMII または RGMII です。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
1–4 1このMegaCoreファンクションについて10/100/1000 イーサネットMAC と Small MAC の比較
コントロール・インタフェースのレジスタ
完全にプログラム可能
プログラム可能なオプションが限定されています。次のオプションは固定されます。
■ 大フレーム長は 1518 に固定されています。ジャンボ・フレームはサポートされていません。
■ FIFO バッファのスレッショルドは固定値に設定されています。
■ ストア・アンド・フォワードのオプションは使用できません。
■ パケット間ギャップは 12 に設定されています。
■ フロー・コントロールはサポートされていません。ポーズ・クアンタは使用されていません。
■ ペイロード長のチェックはディセーブルされています。
■ セカンダリ MAC アドレスはディセーブルされています。
■ パディング削除はディセーブルされています。
■ スリープ・モードおよびマジック・パケット検出はサポートされていません。
合成オプション 完全にコンフィギュレーション可能
コンフィギュレーション可能なオプションが限定されています。次のオプションは使用できません。
■ フロー・コントロール
■ VLAN
■ 統計情報カウンタ
■ マルチキャスト・ハッシュ・テーブル
■ ループバック
■ TBI および 1.25 Gbps シリアル・インタフェース
■ 8 ビット幅の FIFO バッファ
表 1–2. 10/100/1000イーサネット MAC および Small MACの機能の比較 (2 / 2 )
機能 10/100/1000 イーサネット MAC Small MAC
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
1この MegaCoreファンクションについて 1–5上位レベルのブロック図
上位レベルのブロック図表 1–1 ~ 5 ページの表 1–4 に、トリプル・スピード・イーサネット MegaCore ファ
ンクションの様々なバリエーションの上位ブロック図を示します。
図 1–1. 10/100/1000-Mbps イーサネット MAC
10/100/1000-MbpsEthernet MAC
MII/GMII/RGMII
Clie
nt S
ide
Net
wor
k S
ide
Avalon-ST(Transmit and Receive)
Avalon-MM(Management and Control)
図 1–2. マルチポート MAC
10/100/1000-MbpsEthernet MAC MII/GMII/RGMII
Clie
nt S
ide
Net
wor
k S
ide
Avalon-ST(Transmit and Receive)
Avalon-MM(Management and Control)
10/100/1000-MbpsEthernet MAC MII/GMII/RGMII
Avalon-ST(Transmit and Receive)
Multi-port MAC
図 1–3. オプションの PMAを備えた 10/100/1000イーサネット MAC および 1000BASE-X/SGMII PCS
10/100/1000-MbpsEthernet MAC
MII/GMII
Clie
nt S
ide
Net
wor
k S
ide
Avalon-ST(Transmit and
Receive)
Avalon-MM(Management
and Control)1.25-GbpsSerial
MAC and PCS with Optional Embedded PMA
1000BASE-X/SGMIIPCS
PMA(Optional)
TBI
図 1–4. オプションの PMAを備えた 1000BASE-X/SGMII PCS
MII/GMII
Clie
nt S
ide
Net
wor
k S
ide
1.25-GbpsSerial
PCS with Optional Embedded PMA
1000BASE-X/SGMIIPCS
PMA(Optional)
TBI
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
1–6 1このMegaCoreファンクションについてアプリケーションの例
アプリケーションの例このセクションでは、トリプル・スピード・イーサネット MegaCore ファンクショ
ンの様々なバリエーションの応用例を示します。
10/100/1000-Gbps イーサネット MAC のみバリエーションは、ユーザー・アプリ
ケーションとイーサネット PHY デバイス(標準ファストまたはギガビット)間のブ
リッジの役目を果たしています。 表 1–5 に、銅線ネットワークでこのバリエーション
を使用した応用例を示します。
1000BASE-X/SGMII PCS ファンクションを組み込むようにコンフィギュレーション
すると、MegaCore ファンクションは、10 ビット・インタフェース(TBI)により、
どの業界標準ギガビット・イーサネット PHY デバイスにもシームレスに接続できる
ようになります。 一方、エンベデッド PMA を組み込むように 1000BASE-X/SGMII PCS ファンクションをコンフィギュレーションすると、MegaCore ファンクション
は、ギガビット・インタフェース・コンバータ(GBIC)、スモール・フォーム・
ファクタ・プラグ(SFP)モジュール、または SGMII PHY に直接接続できるように
なります。
表 1–6 に、1000BASE-X と PMA が組み込まれたトリプル・スピード・イーサネッ
ト MegaCore ファンクションの使用例を示します。PMA ブロックは、既製の GBICまたは SFP モジュールに接続しており、オプティカル・リンクを通して直接通信し
ます。
図 1–5. スタンドアロン 10/100/1000 Mbpsイーサネット MAC
Gigabit or Fast Ethernet PHY
Device
10/100/1000 MbpsEthernet MAC
UserApplication
Host Interface MDIO Master
Altera DeviceTriple Speed Ethernet MegaCore Function
Management Application
MII/
GM
II/R
GM
II
Ava
lon-
ST
Ava
lon-
MM
MD
IO
Copper
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
1この MegaCoreファンクションについて 1–7アプリケーションの例
表 1–7 に、PCS ファンクションが SGMII モードで動作するようにコンフィギュレー
ションされ、GMII から SGMII へのブリッジとして機能するコンフィギュレーション
を示します。この場合、トランシーバ I/O は、SGMII(10BASE-T、100BASE-T ま
たは 1000BASE-T イーサネット PHY)をサポートする既製のイーサネット PHY に
接続します。
図 1–6. エンベデッド PMAを備えた 10/100/1000 Mbpsイーサネット MACおよび 1000BASE-X PCS
GMII 1000BASE-X PCS
PMA10/100/1000
Mbps EthernetMAC
FiberGBIC/SFPModule
1.25 Gbps Serial
Altera Device
Triple Speed Ethernet MegaCore Function
TBI
図 1–7. 10/100/1000 Mbpsイーサネット MACおよび SGMII PCSとエンベデッド PMA—GMII/MIIから 1.25 Gbpsシリアル・ブリッジ・モード
CopperMII/GMIISGMII PCS PMA
10/100/1000 Mbps Ethernet
MAC
10/100/1000BASE-T PHY
1.25 Gbps SGMII
Altera Device
Triple Speed Ethernet MegaCore Function
TBI
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
1–8 1このMegaCoreファンクションについてMegaCore 検証
MegaCore検証アルテラは、さまざまなアルテラ・デバイス・ファミリで広範なシミュレーション
と内部ハードウェア検証を行うことによって、リリースごとにトリプル・スピード・
イーサネット MegaCore ファンクションを検証しています。米ニューハンプシャー
大学(UNH)インターオペラビリティ・ラボラトリもリリース前に MegaCore ファ
ンクションを検証しました。
アルテラは、さまざまなパラメータで条件を表すことができるトランザクション・
ベースのテスト・ベンチを使用して、MegaCore ファンクションの以下の項目をテ
ストしました。
■ レジスタ・アクセス
■ MDIO アクセス
■ フレーム送信およびエラー処理
■ フレーム受信およびエラー処理
■ イーサネット・フレーム MAC アドレス・フィルタリング
■ フロー制御
■ 半二重再送信
また、アルテラは以下の開発キットを使用して、オプティカル・プラットフォーム
と銅線プラットフォームの両方でトリプル・スピード・イーサネット MegaCoreファンクションを検証しました。
■ アルテラ Nios II 開発キット、Cyclone II Edition(2C35)
■ アルテラ Stratix III FPGA 開発キット
■ アルテラ Stratix IV FPGA 開発キット
■ クワッド 10/100/1000 Marvell PHY
■ MorethanIP 10/100 および 10/100/1000 イーサネット PHY ドーターカード
オプティカル・プラットフォームオプティカル・プラットフォームでは、10/100/1000 Mbps イーサネット MAC、
1000BASE-X/SGMII PCS、および PMA のファンクションがインスタンス化されま
す。
FPGA アプリケーションは、イーサネット MAC、1000BASE-X PCS、およびイーサ
ネット接続を使用する内部システムを実装します。この内部システムは、MAC ファ
ンクションが受信したすべてのフレームを取得し、MAC アドレス・フィールドを操
作することによって、それらのフレームを送信側に返して、ループバックできます。
オプティカル・モジュールへの直接接続は、外部 SFP オプティカル・モジュールに
よって可能になります。認証済み 1.25 GBaud オプティカル SFP トランシーバは、
Finisar 1000BASE-SX FTLF8519P2BNL、Finisar 1000BASE-LX FTRJ-1319-3、およ
び Avago テクノロジ AFBR-5710Z です。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
1この MegaCoreファンクションについて 1–9パフォーマンスおよびリソース使用率
/
銅線プラットフォーム銅線プラットフォームの場合、アルテラは、外部の 1000BASE-T PHY デバイスを使
用して、トリプル・スピード・イーサネット MegaCore ファンクションをテストし
ました。 MegaCore ファンクションは、1000BASE-X/SGMII PCS および PMA ファ
ンクションとともに、MII、GMII、RGMII、および SGMII を使用して、外部 PHY デ
バイスに接続されました。
10/100/1000 Mbps イーサネット MAC および内部システムは FPGA に実装されてい
ます。 この内部システムは、MAC ファンクションが受信したすべてのフレームを取
得し、MAC アドレス・フィールドを操作することによって、それらのフレームを送
信側に返して、ループバックできます。 イーサネット・リンクへの直接接続は、MIIを外部 PHY モジュールに接続することによって可能になります。 認証済み 1.25 GBaud 銅線 SFP トランシーバは、Finisar FCMJ-8521-3、Methode DM7041、およ
び Avago テクノロジ ABCU-5700RZ です。
パフォーマンスおよびリソース使用率下表に記載されるコンフィギュレーションの fMAX は 125MHz 以上です。
表 1–3 に、Arria II GX デバイス・ファミリのトリプル・スピード・イーサネット
MegaCore ファンクションのリソース使用率とパフォーマンスの評価を示します。
この評価は、スピード・グレード -3 を備えた Arria II GX(EP2AGX260EF29I3)デ
バイスをターゲットとする Quartus II ソフトウェアを使用して、トリプル・スピー
ド・イーサネット MegaCore ファンクションをコンパイルすることにより得られた
ものです。
表 1–3. Arria II GXパフォーマンスおよびリソース使用率
MegaCore ファンクション 設定
FIFO バッファのサイズ(ビット )
組み合わせALUTの数
ロジック・レジスタ数
メモリ(M9Kブロック /
M144K ブロックMLABビット )
10/100/1000 Mbps イーサネット MAC
RGMII
全 MAC オプションがイネーブル
全二重モードおよび半二重モードをサポート
2048x32 3357 3947 26/0/1828
8 ポートの10/100/1000 Mbps イーサネット MAC
MII/GMII全 MAC オプションがイネーブル
全二重モードおよび半二重モードをサポート
20201 22292 32/0/14624
1000BASE-X/SGMII PCS
1000BASE-X 624 661 0/0/01000BASE-X SGMII ブリッジがイネーブルPMA ブロック (GXB)
1191 1214 1/0/160
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
1–10 1このMegaCoreファンクションについてパフォーマンスおよびリソース使用率
/ /
表 1–4 に、Stratix IV デバイス・ファミリのトリプル・スピード・イーサネット
MegaCore ファンクションのリソース使用率とパフォーマンスの評価を示します。
この評価は、スピード・グレード -4 を備えた Stratix IV GX(EP4SGX530NF45C4)デバイスをターゲットとする Quartus II ソフトウェアを使用して、トリプル・ス
ピード・イーサネット MegaCore ファンクションをコンパイルすることによって得
られたものです。
表 1–4. Stratix IVパフォーマンスおよびリソース使用率 (1 / 2 )
MegaCoreファンクション 設定
FIFO バッファのサイズ(ビット )
組み合わせALUTの数
ロジック・レジスタ数
メモリ(M9Kブロック
M144K ブロックMLABビット )
10/100 Mbps Small MAC
MII
全二重モードおよび半二重モードをサポート
2048x32 1410 2127 12/1/1408
MIIすべての MAC オプションがイネーブル
2048x32 1157 1894 12/1/128
1000 Mbps Small MAC
GMIIすべての MAC オプションがイネーブル
2048x32 1160 1827 12/1/176
RGMIIすべての MAC オプションがイネーブル
2048x32 1170 1861 12/1/176
10/100/1000 Mbps イーサネット MAC
MII/GMII全二重モードおよび半二重モードをサポート
2721 3395 0/0/33642048x8 3201 3977 8/0/36202048x32 3345 4425 12/1/3364
MII/GMIIすべての MAC オプションがイネーブル
2048x32 3125 3994 12/1/2084
RGMIIすべての MAC オプションがイネーブル
2048x32 3133 4021 12/1/2084
12 ポート10/100/1000 Mbps イーサネット MAC MII/GMII
すべての MAC オプションがイネーブル
27215 34372 0/0/25008
24 ポート 10/100/1000 Mbps イーサネット MAC
54123 68404 0/0/50016
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
1この MegaCoreファンクションについて 1–11パフォーマンスおよびリソース使用率
/ /
/
表 1–5 に、Cyclone IV デバイス・ファミリのトリプル・スピード・イーサネット
MegaCore ファンクションのリソース使用率とパフォーマンスの評価を示します。
この評価は、スピード・グレード -7 を備えた Cyclone IV GX(EP4CGX150DF27C7)デバイスをターゲットとする Quartus II ソフトウェアを使
用して、トリプル・スピード・イーサネット MegaCore ファンクションをコンパイ
ルすることによって得られたものです。
1000BASE-X/SGMII PCS
1000BASE-X 624 661 0/0/01000BASE-XSGMII ブリッジがイネーブル
808 986 2/0/0
1000BASE-XSGMII ブリッジがイネーブル PMA ブロック (LVDS_IO)
819 1057 2/0/0
1000BASE-XSGMII ブリッジがイネーブルPMA ブロック (GXB)
1189 1212 1/0/160
10/100/1000 Mbps イーサネット MAC および 1000BASE-X/SGMII PCS
すべての MAC オプションがイネーブルSGMII ブリッジがイネーブル
2048×32 3971 4950 14/1/2084
表 1–4. Stratix IVパフォーマンスおよびリソース使用率 (2 / 2 )
MegaCoreファンクション 設定
FIFO バッファのサイズ(ビット )
組み合わせALUTの数
ロジック・レジスタ数
メモリ(M9Kブロック
M144K ブロックMLABビット )
表 1–5. Cyclone IV GX パフォーマンスおよびリソース使用率 (1 / 2 )
MegaCoreファンクション 設定
FIFO バッファのサイズ(ビット )
組み合わせALUTの数
ロジック・レジスタ数
メモリ(M9Kブロック /
M144K ブロックMLABビット )
1000Mbps Small MAC
RGMII全二重モードのみをサポート
2048x32 2161 1699 24/0/0
10/100/1000 Mbps イーサネット MAC
MII/GMII全二重モードおよび半二重モードをサポート
2048x32 5614 3666 31/0/0
4 ポート 10/100/1000-Mbps イーサネット MAC
MII/GMIIすべての MAC オプションがイネーブル
全二重モードおよび半二重モードをサポート
17017 10612 36/0/0
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
1–12 1このMegaCoreファンクションについてパフォーマンスおよびリソース使用率
/
表 1–6 に、Stratix V デバイス・ファミリのトリプル・スピード・イーサネット
MegaCore ファンクションのリソース使用率とパフォーマンスの評価を示します。
この評価は、スピード・グレード -3 を備えた Stratix V GX(5SGXMA7N3F45C3)デバイスをターゲットとする Quartus II ソフトウェアを使用して、トリプル・ス
ピード・イーサネット MegaCore ファンクションをコンパイルすることによって得
られたものです。
1000BASE-X/SGMII PCS
1000BASE-X 1149 661 0/0/01000BASE-XSGMII ブリッジがイネーブルPMA ブロック (GXB)
2001 1127 2/0/0
表 1–5. Cyclone IV GX パフォーマンスおよびリソース使用率 (2 / 2 )
MegaCoreファンクション 設定
FIFO バッファのサイズ(ビット )
組み合わせALUTの数
ロジック・レジスタ数
メモリ(M9Kブロック /
M144K ブロックMLABビット )
表 1–6. Stratix Vパフォーマンスおよびリソース使用率 (1 / 2 )
MegaCore ファンクション 設定
FIFO バッファのサイズ(ビット )
組み合わせALUTの数
ロジック・レジスタ数
メモリ(M20Kブロック /MLABビット )
10/100 Mbps Small MAC
MII
全二重モードおよび半二重モードをサポート
2048x32 1425 1967 11/1208
MIIすべての MAC オプションがイネーブル
2048x32 1155 1767 11/0
1000Mbps Small MAC
GMIIすべての MAC オプションがイネーブル
2048x32 1174 1670 10/176
RGMIIすべての MAC オプションがイネーブル
2048x32 1184 1704 10/176
10/100/1000 Mbps イーサネット MAC
MII/GMIIすべての MAC オプ
ションがイネーブル
2754 2938 6/16642048x8 3228 3525 10/19202048x32 3358 3694 16/1664
MII/GMIIすべての MAC オプションがイネーブル
2048x32 3142 3495 16/384
RGMIIすべての MAC オプションがイネーブル
2048x32 3155 3522 16/384
12 ポート10/100/1000 Mbps イーサネット MAC MII/GMII
すべての MAC オプションがイネーブル
27360 29272 72/4608
24 ポート 10/100/1000 Mbpsイーサネット MAC
54415 58204 144/9216
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
1この MegaCoreファンクションについて 1–13パフォーマンスおよびリソース使用率
1000BASE-X/SGMII PCS
1000BASE-X 621 661 0/01000BASE-XSGMII ブリッジがイネーブル
804 986 2/0
1000BASE-XSGMII ブリッジがイネーブルPMA ブロック(LVDS_IO)
820 1056 2/0
1000BASE-XSGMII ブリッジがイネーブルPMA ブロック (GXB)
1845 1550 2/160
10/100/1000 Mbps イーサネット MAC および 1000BASE-X/SGMII PCS
すべての MAC オプションがイネーブルSGMII ブリッジがイネーブル
2048×32 3971 4451 18/384
表 1–6. Stratix Vパフォーマンスおよびリソース使用率 (2 / 2 )
MegaCore ファンクション 設定
FIFO バッファのサイズ(ビット )
組み合わせALUTの数
ロジック・レジスタ数
メモリ(M20Kブロック /MLABビット )
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
1–14 1このMegaCoreファンクションについてリリース情報
リリース情報表 1–7 に、アルテラの トリプル・スピード・イーサネット MegaCore ファンクショ
ンのリリースに関する情報を示します。
f このリリース情報について詳しくは、 「MegaCore IP Library Release Notes and Errata」を参照してください。
アルテラは、Quartus®II ソフトウェアの現行バージョンが、各 MegaCore ファンク
ションの前のバージョンをコンパイルできることを検証しています。「MegaCore IP Library Release Notes and Errata」では、この検証に例外がある場合に報告します。
アルテラは、1 リリースより前の MegaCore ファンクション・バージョンのコンパ
イルは検証していません。
表 1–7. トリプル・スピード・イーサネット MegaCoreファンクションのリリース情報
項目 説明
バージョン 11.0リリース月 2011 年 6 月注文コード IP-TRIETHERNETプロダクト ID 00BDベンダ ID 6AF7
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
2. アルテラ IPコアの使用法
この章では、アルテラの IP コアを使い始める際に役立つ、アルテラ IP コアのデザ
イン・フローの概要について説明します。アルテラの IP ライブラリは、Quartus IIのインストール・プロセスの一部としてインストールされます。ライブラリからの
すべてのアルテラ IP コアの使用およびパラメータ化が可能です。アルテラでは、多
種多様なアプリケーションをサポートして、IP コアをカスタマイズできる統合パラ
メータ・エディタを提供します。パラメータ・エディタは、パラメータ値の設定お
よびオプション・ポートの選択をガイドします。以下のセクションでは、一般的な
デザイン・フローおよびアルテラの IP コアの使用について説明します。
インストールおよびライセンスアルテラの IP ライブラリは、Quartus II ソフトウェアとともに配布され、アルテラ
のウェブサイト( www.altera.co.jp)からダウンロードできます。
図 2–1 に、 アルテラの IP コアをインストールした後のディレクトリ構造を示します。
ここで、<path>がインストール・ディレクトリです。Windows でのデフォルトのイ
ンストール・ディレクトリは、C:\altera\<version number> です。Linux では、
/opt/altera<version number> です。
機能および性能に満足するまで、シミュレーションとハードウェアにおいて IP コア
を評価できます。一部の IP コアは、デザインを生産に投入する場合に、IP コアのラ
イセンスを購入する必要があります。アルテラ IP コアのライセンス購入後、アルテ
ラ・ウェブサイトのアルテラ・ライセンスのページでライセンス・ファイルを要求
して、お使いのコンピュータにインストールできます。詳細については、 「Altera Software Installation and Licensing」を参照してください。
デザイン・フロー下記のフローを使用して、アルテラ IP コアをパラメータ化することができます。
■ MegaWizard Plug-In Manager フロー
■ SOPC Builder フロー
■ Qsys フロー
図 2–1. IPコアのディレクトリ構造
<path>Installation directory
ipContains the Altera IP Library and third-party IP cores
alteraContains the Altera IP Library
alt_mem_ifContains the UniPHY IP core files
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
2–2 2アルテラ IPコアの使用法デザイン・フロー
MegaWizard Plug-in Manager フローは、以下の利点を提供します。
■ IP コア・バリアントをパラメータ化して、既存のデザインにインスタンス化可能
■ 一部の IP コアでは、このフローは完全なデザイン例とテストベンチを生成しま
す。
SOPC Builder フローは、以下の利点を提供します。
■ シミュレーション環境を生成
■ アルテラ提供のカスタム・コンポーネントを組み込むことが可能
■ Avalon® Memory-Mapped(Avalon-MM)インタフェースを使用することが可能
Qsys フローは、SOPC Builder フローを使用する利点に加えて、さらに以下の利点
を提供します。
■ 階層デザインの視覚化を提供
■ インタコネクト・エレメントおよびパイプラインにより、性能を向上
■ Quartus II ソフトウェアとの緊密なインテグレーションを提供
図 2–2. デザイン・フロー ( 注 1)
図 2–2の注:(1) アルテラ IP コアは、Qsys および SOPC Builder デザイン・フローをサポートする場合と、そうでな
い場合があります。
Select Design Flow
Specify Parameters
Qsys orSOPC Builder
FlowMegaWizardFlow
Complete Qsys or SOPC Builder System
Specify Parameters
IP Complete
Perform Functional Simulation
Debug Design
Does Simulation Give
Expected Results?
Yes
Optional
Add Constraintsand Compile Design
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2アルテラ IPコアの使用法 2–3MegaWizard Plug-In Manager フロー
MegaWizard Plug-In ManagerフローMegaWizard Plug-In Manager フローでは、IP コア をカスタマイズし、ファンク
ションを手動でデザインに組み込むことができます。
パラメータの指定MegaWizard Plug-in Manager で IP コアのパラメータを指定するには、以下の
ステップを実行します。
1. File メニューから New Project Wizard を選択して、Quartus II プロジェクトを作
成します。
2. Quartus II ソフトウェアでの Tools メニューから MegaWizard Plug-in Managerを起動し、MegaWizard Plug-In Manager インタフェースのプロンプトに従って
カスタムの IP コア・バリエーションを作成または編集します。
3. 特定のアルテラ IP コアを選択するには、MegaWizard Plug-In Manager の Installed Plug-Ins リストで IP コアをクリックします。
4. Parameter Settings ページでパラメータを指定します。 パラメータについて詳し
くは、本資料の「Parameter Settings」の章、または MegaWizard パラメータ・
エディタの「Documentation」ボタンを参照してください。
1 一部の IP コアは、特定のアプリケーション用のプリセットのパラメータを
提供しています。プリセットのパラメータを使用する場合、矢印をクリッ
クして Presets のリストを展開します。そして、希望のプリセットを選択
し、Apply をクリックします。プリセット設定を変更するには、テキス
ト・エディタで <installation directory>/ip/altera/alt_mem_if_interfaces/alt_mem_if_<memory_protocol>_emif/
alt_mem_if_<memory_protocol>_mem_model.qprs ファイルを変更しま
す。
5. IP コアがシミュレーション・モデルを提供している場合、ウィザードで適切なオ
プションを指定し、シミュレーション・モデルを生成します。
1 アルテラ IP は、シミュレーション固有の IP 機能シミュレーション・モデ
ル、暗号化された RTL モデル、およびプレーン・テキスト RTL モデルな
ど、様々なシミュレーション・モデルをサポートしています。これらはす
べてサイクル精度のモデルです。このモデルにより、業界標準の VHDL ま
たは Verilog HDL シミュレータを使用した IP コアのインスタンスの高速機
能シミュレーションが可能になります。一部のコアでは、プレーン・テキ
ストの RTL モデルのみが生成され、そのモデルをシミュレートすること
ができます。
f アルテラ IP コアの機能シミュレーション・モデルについて詳しくは、
「Quartus II ハンドブック Volume 3」の 「Simulating Altera Designs」を参
照してください。
c これらのシミュレーション・モデルは、シミュレーションの目的にのみ使
用し、合成やその他の目的には使用しないでください。これらのモデルを
合成に使用すると、機能しないデザインが作成されます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
2–4 2アルテラ IPコアの使用法MegaWizard Plug-In Manager フロー
6. パラメータ・エディタに EDA と Summary タブが含まれている場合は、次の手
順に従ってください。
a. 一部のサードパーティ合成ツールでは、詳細なロジックを含まず IP コアの構
造のみを含むネットリストを使用して、IP コアを含むデザインの性能を 適
化することができます。合成ツールおよび IP コアがこの機能をサポートする
場合、この機能を使用するには Generate netlist をオンにします。
b. Summary タブ(使用可能な場合)で、生成するファイルを選択します。グ
レイのチェックマークは、自動的に生成されるファイルを示します。その他
のファイルはすべてオプションです。
1 IP コアがファイルの選択をサポートしている場合、コアを生成した後に、
生成レポート (<variation name>.html) がプロジェクト・ディレクトリに表
示されます。このファイルには、生成されたファイルに関する情報が含ま
れています。
7. Finish ボタンをクリックすると、パラメータ・エディタでは、IP コアのトップ・
レベル HDL コード、およびシミュレーション用ファイルを含むシミュレーショ
ン・ディレクトリが生成されます。
1 メッセージ・ウィンドウに表示されているすべてのパラメータ・エラーが
修正されるまで、Finish ボタンが使用できない場合があります。
8. 現在の Quartus II プロジェクトに Quartus II IP File (.qip) ファイルを追加するよ
うに促される場合、Yes をクリックしてください。また、Automatically add Quartus II IP Files to all projects をオンにすることもできます。
これで、カスタム IP コアのインスタンスをデザインに統合し、シミュレーション、
およびコンパイルを実行することができます。IP コアのインスタンスをデザインに
統合する際、適切なピン・アサインメントを行う必要があります。シミュレーショ
ン中に、ハードウェアにデザインをマップする準備ができていない場合は、トップ
レベルの信号に特定のピン割り当てを避けるために、仮想ピンを作成することがで
きます。
一部の IP コでは、生成プロセスは完全なデザイン例を作成します。ハードウェア・
テストのためのデザイン例は、
<variation_name>_example_design/example_project/ ディレクトリに格納されて
います。RTL シミュレーションのためのデザイン例は、
<variation_name>_example_design/simulation/ ディレクトリに格納されます。
1 仮想ピンおよびMegaWizard Plug-In Managerを含むQuartus IIソフトウェアの詳細に
ついては、 Quartus II Help を参照してください。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2アルテラ IPコアの使用法 2–5SOPC Builder によるデザイン・フロー
IPコアをシミュレートIP コアのバリエーションは、機能シミュレーション・モデルおよびテストベンチを
使用するか、または IP コアによって生成されたデザイン例を使用してシミュレート
できます。機能シミュレーション・モデルおよびテストベンチ・ファイルは、プロ
ジェクトのサブディレクトリに生成されます。このディレクトリには、テストベン
チをコンパイルおよび実行するスクリプトを含むことがあります。
IP コアのシミュレーションに必要なモデルまたはライブラリの全リストについては、
テストベンチで提供されるスクリプトを参照してください。
アルテラ IP コアのシミュレーションについて詳しくは、「Quartus II ハンドブック Volume 3」の「Simulating Altera Designs」の章を参照してください。
SOPC Builderによるデザイン・フローSOPC Builder を使用して、カスタマイズされた IP コアを含むシステムを構築する
ことができます。他のコンポーネントを簡単に追加して、SOPC Builder システムを
迅速に作成することができます。SOPC Builder は、すべての指定されたコンポーネ
ントおよび相互接続を含む HDL ファイルを自動的に生成します。SOPC Builder は、
デフォルトの接続を定義しています。この接続は変更可能です。HDL ファイルは、
アルテラのデバイスをプログラムするための出力ファイルを生成するために、
Quartus II ソフトウェアでコンパイルされる準備が整いました。図 2–3 に、SOPC Builder システムの例のブロック図を示します。
f システム・インタコネクト・ファブリックについて詳しくは、 「SOPC Builder User Guide」の「System Interconnect Fabric for Memory-Mapped Interfaces」 と「System Interconnect Fabric for Streaming Interfaces」 の章、および 「Avalon Interface Specifications」を参照してください。
f SOPC Builder および Quartus II ソフトウェアについて詳しくは、 「SOPC Builder User Guide」の「SOPC Builder Features and Building Systems with SOPC Builder」の章、および Quartus II ヘルプを参照してください。
図 2–3. SOPC Builder System
System Interconnect Fabric
Peripheral 1
SOPC Builder System
Altera IP CoreInstance
Peripheral 2 Peripheral 3
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
2–6 2アルテラ IPコアの使用法SOPC Builder によるデザイン・フロー
パラメータの指定SOPC Builder フローで IP コア・パラメータを指定するには、以下のステップに従
います。
1. File メニューの New Project Wizard を使用して、新規の Quartus II プロジェク
トを作成します。
2. Tools メニューの SOPC Builder をクリックします。
3. 新しいシステムの場合、システム名と言語を指定します。
4. System Contents タブで、IP コアの名前をダブル・クリックして、システムに
追加します。関連するパラメータ・エディタが表示されます。
5. パラメータ・エディタで必要なパラメータを指定します。これらのパラメータの
詳細な説明については、本資料の「パラメータ設定」の章を参照してください。
1 一部の IP コアは、特定のアプリケーション用のプリセットのパラメータを
提供しています。プリセットのパラメータを使用する場合は、矢印をク
リックして Presets リストを展開し、望ましいプリセットを選択し、
Apply をクリックします。プリセットの設定を変更するには、テキスト・
エディタで <installation directory>/ip/altera/alt_mem_if_interfaces/alt_mem_if_<memory_protocol>_emif/alt_mem_if_<memory_protocol>_mem_model.qprs ファイルを変更しま
す。
1 デザインに外部メモリ・インタフェース IP コアが含まれている場合は、そ
れらのコアをパラメータ化するときに PHY Settings タブの Generate power of two bus widths をオンにする必要があります。
1 また、それらのコアをパラメータ化するときに、Controller Settings タブ
の Generate SOPC Builder compatible resets をオンにする必要がありま
す。
6. Finish をクリックして IP コア・インスタンスを完了し、それをシステムに追加
します。
1 メッセージ・ウィンドウに表示されているすべてのパラメータ・エラーが
修正されるまで、Finish ボタンが使用できない場合があります。
SOPC Builder システムの完了SOPC Builder システムを完了するには、これらのステップに従います。
1. 必要な追加コンポーネントを追加して、パラメータを設定します。一部の IP コ
アには、完全な SOPC Builder システムのデザイン例が含まれています。
2. System Contents タブでの Connection パネルを使用してコンポーネントを接続
します。
3. デフォルトでは、クロック名は表示されません。System Contents タブの
Module Name カラムでのクロック名、および Clock カラムでのクロックを表示
するには、Filters をクリックして Filters ダイアログ・ボックスを表示させます。
Filters リストで、 All をクリックします。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2アルテラ IPコアの使用法 2–7Qsys システム統合ツールによるデザイン・フロー
4. Generate をクリックしてシステムを生成します。 SOPC Builder は、 システムお
よび <system name>.qip ファイルを生成します。<system name>.qip ファイル
には、Quartus II Compiler で IP コアおよびシステムを処理するのに必要なアサ
インメントおよび情報が含まれています。
5. Quartus II ソフトウェアで、 Add/Remove Files in Project をクリックして、 .qipファイルをプロジェクトに追加します。
6. Quartus II ソフトウェアでデザインをコンパイルします。
Qsysシステム統合ツールによるデザイン・フローQsys システム統合ツールを使用して、カスタマイズされた IP コアを含むシステム
を構築することができます。他のコンポーネントを簡単に追加して、Qsys システム
を迅速に作成することができます。Qsys は、すべての指定されたコンポーネントお
よび相互接続を含む HDL ファイルを自動的に生成します。Qsys では、ユーザーが
望ましい接続を指定します。HDL ファイルは、アルテラのデバイスをプログラムす
る用の出力ファイルを生成するために、Quartus II ソフトウェアでコンパイルされる
準備が整いました。図 2–4 に、Qsys システムの例の上位ブロック図を示します。
f Qsys システムのインタコネクトについて詳しくは、「QuartusII ハンドブック Volume 1」の 「Qsys Interconnect」 の章および「Avalon Interface Specifications」を参照し
てください。
f Qsys ツールおよび Quartus II ソフトウェアについて詳しくは、「QuartusII ハンドブック Volume 1」の 「System Design with Qsys」 のセクションおよび Quartus II ヘルプ
を参照してください。
図 2–4. Qsys システムの例
DDR3SDRAM
Ethernet Subsystem
Ethernet
Embedded Cntl
PCI ExpressSubsystem
Qsys SystemPCIe to Ethernet Bridge
PCIe
CSRMemMstr
MemSlave
PHYCntl
MemMstr
CSR
DDR3 SDRAM
Controller
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
2–8 2アルテラ IPコアの使用法Qsys システム統合ツールによるデザイン・フロー
パラメータの指定Qsys フローで IP コア・パラメータを指定するには、以下のステップに従います。
1. File メニューの New Project Wizard を使用して、新規の Quartus II プロジェク
トを作成します。
2. Tools メニューで、 Qsys をクリックします。
3. System Contents タブで、IP コアの名前をダブル・クリックして、システムに
追加します。関連するパラメータ・エディタが表示されます。
4. パラメータ・エディタで必要なパラメータを指定します。これらのパラメータの
詳細な説明については、本資料の「パラメータ設定」の章を参照してください。
1 デザインに外部メモリ・インタフェース IP コアが含まれている場合は、そ
れらのコアをパラメータ化するときに PHY Settings タブの Generate
power of two bus widths をオンにする必要があります。
1 一部の IP コアは、特定のアプリケーション用のプリセットのパラメータを
提供しています。プリセットのパラメータを使用する場合は、矢印をク
リックして Presets リストを展開し、望ましいプリセットを選択し、
Apply をクリックします。プリセットの設定を変更するには、テキスト・
エディタで <installation directory>/ip/altera/alt_mem_if_interfaces/alt_mem_if_<memory_protocol>_emif/
alt_mem_if_<memory_protocol>_mem_model.qprs ファイルを変更しま
す。
5. Finish をクリックして IP コア・インスタンスを完了し、それをシステムに追加
します。
1 メッセージ・ウィンドウに表示されているすべてのパラメータ・エラーが
修正されるまで、Finish ボタンが使用できない場合があります。
Qsys システムの完了Qsys システムを完了するには、これらのステップに従います。
1. 必要な追加コンポーネントを追加して、パラメータを設定します。
2. System Contents タブでの Connection パネルを使用してコンポーネントを接続
します。
3. Export As カラムで、トップレベルの Qsys システム・ポートに指定すべき接続
の名前を入力します。
4. Qsys システムをシミュレートする場合、望ましいシミュレーション・ファイル
を生成するために Generation タブの Simulation の下で、1 つ以上のオプション
をオンにします。
5. システムが Quartus II プロジェクトの一部ではない場合、合成 RTL ファイルを生
成するには、Create synthesis RTL files をオンにします。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2アルテラ IPコアの使用法 2–9生成されるファイル
6. Generate をクリックしてシステムを生成します。 Qsys は、 システムおよび
<system name>.qip ファイルを生成します。<system name>.qip ファイルには、
Quartus II Compiler で IP コアおよびシステムを処理するのに必要なアサインメ
ントおよび情報が含まれています。
7. Quartus II ソフトウェアで、 Add/Remove Files in Project をクリックして、 .qipファイルをプロジェクトに追加します。
8. Quartus II ソフトウェアでデザインをコンパイルします。
1 memoryおよびoctインタフェースがトップレベルRTLにエクスポートされるように、
誤って System Contents タブの Export カラムでこれらのインタフェースのいずれ
かの名前を変更したり削除したりしないように注意してください。
システムのシミュレーションQsys は、システムの生成時に機能シミュレーション・モデル(またはテストベンチ
を含むデザイン例)を生成します。これらを使用して、アルテラがサポートしてい
るシミュレーション・ツールでシステムをシミュレーションすることができます。
f アルテラがサポートしているシミュレーション・ツールの 新情報については、 「Quartus II Software Release Notes」を参照してください。
f アルテラ IP コアのシミュレーションの一般的な情報については、「QuartusII ハンドブック Volume 3」の 「Simulating Altera Designs」を参照してください。
f Qsys システムのシミュレーションについて詳しくは、「QuartusII ハンドブックVolume 1」の 「System Design with Qsys」セクションを参照してください。
生成されるファイル表 2–1 に、プロジェクト・ディレクトリに生成されるファイルを示します。生成さ
れたファイルのタイプおよび名前は、作成した MegaCore ファンクションのカスタ
ム・バリエーションによって異なります。
表 2–1. 生成されるファイル (1 / 2 )
ファイル名 説明
<variation_name>.v または
<variation_name>.vhd
カスタム MegaCore ファンクションの VHDL または Verilog HDL トップレベルの記述を定義する MegaCore ファンクション・バリエーション・ファイルです。デザイン内部のこのファイルによって定義されたエンティティをインスタンス化します。QuartusII ソフトウェアでのデザインのコンパイル時にこのファイルがインクルードされます。
<variation name>_bb.v
MegaCore ファンクション・バリエーションの Verilog HDL ブラックボックス・ファイルです。 サードパーティ製 EDA ツールを使用してデザインを合成するときにこのファイルを使用します。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
2–10 2アルテラ IPコアの使用法タイミング制約
タイミング制約アルテラは、トリプル・スピード・イーサネット MegaCore ファンクションが、
IEEE 802.3 規格およびアルテラ・デバイスのデザイン・タイミング要件を満たすよ
うに、制約ファイルを提供しています。MegaCore ファンクションに外部のタイミ
ング制約を追加する必要がある場合もあります。
生成された制約ファイルを使用するには、以下のステップに従います。
<variation name>.bsfMegaCore ファンクションのバリエーション用 Quartus II シンボル・ファイル。 Quartus II ブロック図エディタでこのファイルを使用できます。
<variation name>.qip MegaCore ファンクション・バリエーション用の Quartus II プロジェクト情報が含まれています。
<variation name>_gb.v
一部のサードパーティ合成ツールで使用できるタイミングおよびリソース見積りネットリストです。このファイルは、EDA ページの Generate netlist オプションをオンにすると生成されます。
<variation name>.cmp
MegaCore ファンクション・バリエーション用の VHDL コンポーネント宣言ファイルです。このファイルの内容を、MegaCore をインスタンス化する VHDL アーキテクチャに追加してください。
<variation name>.html MegaCore ファンクション・レポート・ファイルです。
<variation name>.vho または
<variation name>.voVHDL または Verilog HDL の IP 機能シミュレーション・モデルです。
<variation_name>_contraints.tclMegaCore ファンクション・バリエーションを QuartusII でコンパイルするために必要な制約事項を作成する Tcl スクリプトです。
<variation_name>_contraints.sdc TimeQuest タイミング・アナライザとともに使用するQuartusII SDC 制約ファイルです。
<variation_name>_nativelink.tcl NativeLink シミュレーション・テストベンチ設定を Quartus IIプロジェクトに割り当てる Tcl スクリプトです。
/testbench/<variation_name>/<variation_name>_tb.vhd または
/testbench/<variation_name>/<variation_name>_tb.v
サードパーティ・シミュレータにおいて MegaCore ファンクション・バリエーションを実行する VHDL または Verilog HDLテストベンチです。
/testbench/<variation_name>/run_<variation_name>_tb.tcl
ModelSim シミュレーション・ソフトウェアを使用するためのTcl スクリプトです。
/testbench/<variation_name>/<variation_name>_wave.do
テストベンチ信号を表示するために、ModelSim シミュレーション・ソフトウェアとともに使用される信号トレースのマクロ・スクリプトです。
/testbench/model生成されたテストベンチによって使用される、イーサネット・ジェネレータおよびモニタの VHDL と Verilog HDL モデルを含むディレクトリです。
表 2–1. 生成されるファイル (2 / 2 )
ファイル名 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2アルテラ IPコアの使用法 2–11タイミング制約
1. カスタム・デザインに従って <variation_name>_constraints.tclおよび
<variation_name>_constraints.sdcを編集します。例えば、トップレベル・デ
ザインで以下に示すクロック名を変更する場合、
<variation_name>_constraints.sdc ファイル内の変更可能な制約を編集します。
# Name the clocks that will be coming into the tse core named changed from top level
set TX_CLK "tx_clk"
set RX_CLK "rx_clk"
set CLK "clk"
set FF_TX_CLK "ff_tx_clk"
set FF_RX_CLK "ff_rx_clk"
set TBI_TX_CLK "tbi_tx_clk"
set TBI_RX_CLK "tbi_rx_clk"
set REF_CLK "ref_clk"
2. Quartus II ソフトウェアで Quartus II プロジェクトを開きます。
3. 使用するタイミング・アナライザが選択されていることを確認します
(Assignments メニューの Timing Analysis Settings)。
4. Tcl コンソール(View > Utility Windows > Tcl Console)のコマンド・プロンプ
トに以下のコマンドを入力して、生成された制約ファイルをスクリプトとして読
み込みます。
source <variation_name>_constraints.tcl rこのコマンドは、必要なロジック制約を Quartus II プロジェクトに追加します。
また、Quartus II クラシック・タイミング・アナライザで使用するのに必要なタ
イミング制約も作成します。ただし、マルチポート MAC バリエーションを含む
コンフィギュレーションまたは LVDS Soft-CDR I/O を使用したエンベデッド
PMA を含むコンフィギュレーションの場合は、タイミング制約を作成しません。
5. デフォルトのタイミング解析ツールとして TimeQuest タイミング・アナライザ
を選択した場合は、Tcl コンソールで以下のコマンドを入力します。
set_global_assignment -name SDC_FILE <variation_name>_constraints.sdc
f タイミング解析について詳しくは、「QuartusII ハンドブック Volume 3」の 「Timing Analysis」セクションおよび Quartus II ヘルプを参照してください。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
2–12 2アルテラ IPコアの使用法タイミング制約
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
3. パラメータの設定
トリプル・スピード・イーサネット MegaCore ファンクションをカスタマイズする
には、トリプル・スピード・イーサネット MegaWizard インタフェースを使用して
パラメータを指定します。トリプル・スピード・イーサネット MegaWizard インタ
フェースは、Quartus II ソフトウェアの MegaWizard Plug-in Manager、SOPC Builder または Qsys から起動します。カスタマイズ機能により、合成時および生成
時に特定のコア機能をイネーブルできます。
この章では、パラメータおよび各パラメータが MegaCore ファンクションの動作に
どのように影響するかについて説明します。 各セクションは、トリプル・スピード・
イーサネット MegaWizard インタフェースの Parameter Settings タブのページに対
応しています。
コア・コンフィギュレーション表 3–1 に、 コア・コンフィギュレーションのパラメータを示します。
表 3–1. コア・コンフィギュレーションのパラメータ (1 / 2 )
名前 値 説明
コア・バリエーション
■ 10/100/1000 Mbps Ethernet MAC only
■ 10/100/1000 Mbps Ethernet MAC with 1000BASE-X/SGMII PCS
■ 1000BASE-X/SGMII PCS only
■ 1000 Mbps Small MAC
■ 10/100 Mbps Small MAC
バリエーションに組み込む主なブロックを決定します。
1000BASE-X PCS/SGMII only オプションは、SOPC Builder フローおよび Qsys フローでは使用できません。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
3–2 3パラメータの設定コア・コンフィギュレーション
Interface
■ MII
■ GMII
■ RGMII
■ MII/GMII
MAC ブロックのイーサネット側のインタフェースを決定します。
■ MII—10/100 Mbps small-MAC コア・バリエーションにのみ使用可能なオプション。
■ GMII—1000 Mbps small-MAC コア・バリエーションにのみ使用可能です。
■ RGMII—10/100/1000 Mbps イーサネット MACおよび 1000 Mbps small-MAC コア・バリエーションに使用可能です。
■ MII/GMII—10/100/1000 Mbps イーサネットMAC コア・バリエーションにのみ使用可能です。 このオプションが選択されている場合、MII(Media Independent Interface)は 10/100のインタフェースに使用され、GMII(Gigabit Media Independent Interface)はギガビット・インタフェースに使用されます。
Use Internal FIFO On/Off
このパラメータをオンにすると、内部 FIFO バッファがコアに組み込まれます。内部 FIFO バッファは、シングル・ポート MAC にのみ組み込むことができます。
Number of Ports1、 4、 8、 12、 16、 20、 および 24
コアがサポートするイーサネット・ポートの総数を指定します。パラメータ Use internal FIFOをオフにすると、このパラメータはイネーブルされます。 マルチ・ポート MAC は内部 FIFOバッファをサポートしていません。
Use Transceiver Block On/Off
このオプションは、PCS ブロックを備えたバリエーションでのみ使用できます。
■ オフにすると、PCS ブロックは統合トランシーバ・モジュールを組み込みません。PCSブロックには外部 SERDES チップとの 10ビット・インタフェース(TBI)が組み込まれます。
■ オンにすると、MegaCore ファンクションは、1.25 Gbps トランシーバを実装するために統合トランシーバ・モジュールを組み込みます。それぞれの GXB モジュールは、GX トランシーバを備えたターゲット・デバイスに組み込まれます。Stratix III のようなソフト CDR が組み込まれた LVDS I/O を持つターゲット・デバイスには、ALTLVDS モジュールが組み込まれます。
表 3–1. コア・コンフィギュレーションのパラメータ (2 / 2 )
名前 値 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
3パラメータの設定 3–3MAC オプション
MAC オプション表 3–2 に、MAC オプションを説明します。これらのオプションは、バリエーション
が MAC ファンクションを含む場合にのみイネーブルされます。 Small MAC では、以
下のオプションのみが利用可能です。
■ Enable MAC 10/100 half duplex support (10/100 Small MAC のバリエーション )
■ Align packet headers to 32-bit boundaries (applicable to 32-bit FIFO only) (10/100 および 1000 Small MAC のバリエーション )
表 3–2. Mac オプションのパラメータ (1 / 2 )
名前 値 説明
Ethernet MAC のオプション
Enable MAC 10/100 half duplex support
On/Off10/100 Mbps 接続における半二重動作のサポートを追加する場合、このオプションをオンにします。
Enable MII/GMII/RGMII loopback logic
On/Off
MAC の MII、GMII または RGMII インタフェース上でローカル・ループバックをイネーブルする場合、このオプションをオンにします。このオプションをオンにすると、システム動作中に MACコンフィギュレーション・レジスタを介して、ループバック機能を動的にイネーブルまたはディセーブルすることができます。
Enable supplementary MAC unicast addresses
On/Off
高速のハードウェア・ベースの受信フレーム・フィルタ用にセカンダリ送信先 MAC ユニキャスト・アドレスのサポートを追加する場合、このオプションをオンにします。
Include statistics counters On/Off
送受信イーサネット・パケット用に、SNMP(simple network monitoring protocol)MIB(management information base)および RMON(remote monitoring)統計情報カウンタ・レジスタを追加する場合、このオプションをオンにします。
デフォルトでは、すべての統計情報カウンタの幅は 32 ビットです。Enable 64-bit statistics byte counters のオプションを使用すると、選択された aOctetsTransmittedOK、aOctetsReceivedOK、およびetherStatsOctetsの統計情報カウンタ幅を 64ビットに拡張できます。
Include multicast hashtable On/Off
受信したイーサネット・パケットのマルチキャスト送信先 MAC アドレスを検出してフィルタリングするために、高速のハードウェア・ベースのメカニズムであるハッシュ・テーブルを実装する場合に、このオプションをオンにします。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
3–4 3パラメータの設定MAC オプション
Align packet headers to 32-bit boundaries (applicable to 32-bit FIFO only)
On/Off
すべてのパケット・ヘッダを 32 ビット・バウンダリに揃えるロジックを追加する場合に、このオプションをオンにします。これにより、データ・バッファのリアラインメント時にソフトウェア・オーバーヘッド処理を軽減できます。
このオプションは、32 ビット幅の内部 FIFO バッファを備えた MAC バリエーションで使用できます。
InterNiche 社の TCP/IP プロトコル・スタックを備えたトリプル・スピード・イーサネットMegaCore ファンクションを使用する場合に、このオプションをオンにする必要があります。
Enable full-duplex flow control
On/Offポーズ・フレームの生成および終了を含む全二重フロー制御用のロジックを追加する場合に、このオプションをオンにします。
Enable VLAN detection On/Off
VLAN およびスタック VLAN フレーム検出用のロジックを追加する場合に、このオプションをオンにします。オフにすると、MAC は VLAN およびスタック VLAN フレームを検出しません。MACはこれらのフレームを処理せずにユーザー・アプリケーションに転送します。
Enable magic packet detection
On/Offマジック・パケット検出用のロジック(ウェイクオン LAN)を追加する場合に、このオプションをオンにします。
MDIO モジュール
Include MDIO module (MDC/MDIO)
On/Off
MAC ファンクションに接続される外部 PHY デバイスにアクセスする場合、このオプションをオンにします。オフにすると、MDIO インタフェースに関連するロジックおよび信号はコアに追加されません。
Host Clock Divisor On/Off
MDIO インタフェース上の MDC クロック出力を生成するために MAC コントロール・インタフェース・クロックを分周する除数です。
例えば、MAC コントロール・インタフェース・クロック周波数が 100 MHz で、目的の MDC クロック周波数が 2.5 MHz である場合、ホスト・クロック除数を 40 に指定する必要があります。
アルテラは、MDC 周波数が 2.5 MHz を超えないように分周係数を定義することを推奨しています。
表 3–2. Mac オプションのパラメータ (2 / 2 )
名前 値 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
3パラメータの設定 3–5FIFO オプション
FIFOオプション表 3–3 に FIFO のオプションを説明します。FIFO オプションは、内部 FIFO バッ
ファを備えた MAC でのみ使用できます。
PCS/Transceiverのオプション表 3–4 に、PCS/Transceiver のオプションを説明します。このオプションは、バリ
エーションが PCS ファンクションを備えた場合にのみ使用できます。
表 3–3. FIFOオプションのパラメータ
名前 値 パラメータ
データ幅およびメモリ・タイプ
Memory block M4K、 M9K、 M144K、 MRAM、 および AUTO
QuartusII ソフトウェアを使用して FIFO メモリを実装するために使用するメモリ・ブロックのタイプを設定します。設定可能なオプションは、ターゲットとなるアルテラのデバイス・ファミリによって異なります。
Width 8 Bits および 32 Bits 送受信 FIFO のデータ幅を設定します。
Depth
Transmit64 ~ 64K 内部 FIFO バッファの深さを決定します。
Receive
表 3–4. PCS/Transceiver オプション (1 / 3 )
名前 値 パラメータ
PCS オプション
PHY ID (32 bit) PCS ブロックの PHY ID をコンフィギュレーションします。
Enable SGMII bridge logic On/Off
PCS ブロックに SGMII クロックおよびレート適応ロジックを追加する場合に、このオプションをオンにします。 アプリケーションに 1000BASE-X PCS 機能のみが必要な場合は、このオプションをオフにしてリソース使用量を削減します。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
3–6 3パラメータの設定PCS/Transceiver のオプション
Transceiver Options—GBX トランシーバ・ブロックを備えたバリエーションにのみ適用
Export transceiver powerdown signal
On/Off
このオプションは Stratix V デバイスでは使用できません。
デザインのトップレベルに GX トランシーバのパワーダウン信号をエクスポートする場合に、このオプションをオンにします。パワーダウンは、クワッド内のトランシーバ間で共有されます。したがって、マルチポートのイーサネット・コンフィギュレーションでこのオプションをオンにすると、クワッド内トランシーバの効率的な利用を大限に発揮できます。
パワーダウン信号を内部で PCS コントロール・レジスタ・インタフェースに接続する場合は、このオプションをオフにします。この接続によって、ホスト・プロセッサは、システム内のトランシーバ・パワーダウンを制御することができます。
UNH-IOL(米ニューハンプシャー大学インターオペラビリティ・ラボラトリ)での検証目的で、エンベデッド GX トランシーバ・メガファンクションは、/K28.1/、/K28.5/、および /K28.7/ にあるカンマのキャラクタを認識するために、7 ビットのワード・アラインメント・パターン長を使用するように設定する必要があります。メガファンクションを編集し、デフォルトのワード・アラインメント設定を 7 ビットに変更するには、MegaWizard Plug-in Manager を使用します。
表 3–4. PCS/Transceiver オプション (2 / 3 )
名前 値 パラメータ
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
3パラメータの設定 3–7PCS/Transceiver のオプション
1 アルテラ・デバイスのダイナミック・リコンフィギュレーションについて詳しくは、
それぞれのデバイス・ハンドブックを参照してください。S
Enable transceiver dynamic reconfiguration
On/Off
このオプションは、Arria GX および Stratix II GX以外のデバイスで常にオンになっています。このオプションをオンにすると、MegaCore ファンクションにはダイナミック・リコンフィギュレーション信号を含まれています。
Stratix V および Arria V 以外のデバイスをターゲットとしたデザインの場合、アルテラはオフセット・キャンセレーションを有効にするために、ALTGX_RECONFIG メガファンクションをインスタンス化し、ダイナミック・リコンフィギュレーション信号にメガファンクションを接続することを推奨しています。
Stratix V デザインの場合、オフセット・キャンセレーションを有効にするには、アルテラはTransceiver Reconfiguration Controller メガファンクションをインスタンス化し、ダイナミック・リコンフィギュレーション信号にメガファンクションを接続することを推奨しています。
クワッドの共有について詳しくは、 7 ページの「トランシーバ・クワッドの共有」を参照してください。
Starting channel number 0 – 284
GXB トランシーバ・ブロックのチャネル番号を指定します。マルチポート MAC では、このパラメータは 初のポートのチャネル番号を指定します。その後のチャネル番号は、4 刻みになります。
複数の GBX トランシーバ・ブロックのインスタンスを使用したデザイン(GBX トランシーバ・ブロックを持つ複数のトリプル・スピード・イーサネット IP コア、またはトリプル・スピード・イーサネット IP コアと他の IP コアの組み合せ)では、GBX トランシーバ・ブロックがトランシーバ・クワッドを共有するときの競合を排除するために、各インスタンスに独自の開始チャネル番号を設定することが推奨されています。
このオプションは Stratix V デバイスではサポートされていません。Stratix V デバイスの場合、チャネル番号はダイナミック・リコンフィギュレーション・コントローラに依存します。
表 3–4. PCS/Transceiver オプション (3 / 3 )
名前 値 パラメータ
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
3–8 3パラメータの設定PCS/Transceiver のオプション
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
4. 機能の説明
この章では、アーキテクチャ、インタフェース、およびデータパスを含めて詳細に
MAC と PCS の機能について説明します。
10/100/1000 イーサネット MACアルテラの 10/100/1000 イーサネット MAC ファンクションは、内部または外部イー
サネット PHY を介してユーザーのアプリケーションとイーサネット・ネットワーク
間のデータのフローを処理します。アルテラは、次の MAC のバリエーションを提供
しています。
■ 内部 FIFO バッファを備えたバリエーション — シングル・ポートのみをサポート
■ 内部 FIFO を備えていないバリエーション — 大 24 ポートをサポートし、それら
のポートが異なる速度で動作することができます。
■ Small MAC— 小限のリソースでMACファンクションの基本的な機能を提供して
います。10/100/1000 イーサネット MAC と small MAC の機能の比較について
は、3 ページの表 1–2 を参照してください。
MAC ファンクションは、基本、VLAN、スタック VLAN、ジャンボ、およびコント
ロール・フレームのイーサネット・フレームをサポートします。これらのフレーム・
フォーマットについて詳しくは、1 ページの「イーサネット・フレーム・のフォー
マット」を参照してください。
アーキテクチャ図 4–1 に、内部 FIFO バッファを備えた MAC バリエーションを示します。
図 4–1. 内部 FIFOバッファを備えた 10/100/1000 イーサネット MAC
ReceiveFIFO Buffer
TransmitFIFO Buffer
Configuration and Statistics
MDIO Master
CRC CheckPause Frame
Termination
MII/GMII/RGMIIReceive
10/100/1000 Ethernet MAC with Internal FIFO Buffers
LocalLoopBackReceiver Control
MII/GMII/RGMIITransmit
PHYManagementInterface
MAC ReceiveInterface
(Avalon-ST)
MAC TransmitInterface
(Avalon-ST)
Control Interface(Avalon-MM)
Magic Packet Detection
Ethernet SideSystem Side
CRC Generation
Pause Frame
Generation
Transmitter Control
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
4–2 4機能の説明10/100/1000 イーサネットMAC
8 ビットまたは 32 ビット幅にコンフィギュレーション可能な FIFO バッファは、送
信データおよび受信データを格納します。バッファ幅は、Avalon-ST の受信インタ
フェースおよび送信インタフェース上のデータ幅を決定します。
rx_section_full およびtx_section_full レジスタを使用してFIFOバッファを
カットスルー・モードまたはストア・アンド・フォワード・モードにコンフィギュ
レーションすることができます。これらのレジスタについて詳しくは、1 ページの
「MAC コンフィギュレーション・レジスタ・スペース」を参照してください。
図 4–2 に、内部 FIFA バッファを備えていないマルチポート MAC バリエーションの
ブロック図を示します。
マルチポート MAC では、インスタンスは、MDIO マスタと一部のコンフィギュレー
ション・レジスタを共有します。 送信データおよび受信データを格納するには、
SOPC Builder および Qsys 内の Avalon ST マルチ・チャネル共有メモリ FIFO コア
を使用できます。
図 4–2. 内部 FIFOバッファを備えていないマルチポート MAC
Configuration and Statistics
CRC CheckPause Frame Termination
Port 0Loop Back
Receiver Control
Transmitter Control
Magic Packet Detection
Ethernet Side(MII/GMII/RGMII)
System Side(Avalon-ST)
CRC GenerationPause Frame Generation
Port n
Multi-port MAC (Without Internal FIFO Buffers)
. . .
MDIO Master
Configuration and Statistics
CRC CheckPause Frame Termination
Loop BackReceiver Control
Transmitter Control
Magic Packet Detection
CRC GenerationPause Frame Generation
Shared Configuration
To/From External
PHY
To/From External
PHY
Transmit / Receive Interfaces
Transmit / Receive Interfaces
Avalon-MM Interface
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–310/100/1000 イーサネットMAC
インタフェースMAC ファンクションは次のインタフェースを実装します。
■ システム側の Avalon-ST
■ Avalon-ST シンク・ポートは次のプロパティで送信を行います。
■ 内部 FIFO バッファを備えていない MAC バリエーションの場合、データ幅
が 8 ビットに固定されます。内部 FIFO バッファを備えた MAC バリエー
ションの場合、データ幅は 8 または 32 ビットにコンフィギュレーション
可能です。
■ パケット開始 (SOP)信号およびパケット終了 t (EOP)信号、および一部の
終パケット信号を使用するパケットをサポートします。
■ エラー・レポート
■ 可変長レディ・レイテンシは tx_almost_full レジスタによって指定さ
れます。このレジスタについて詳しくは、表 4–7 を参照してください。
■ Avalon-ST ソース・ポートは次のプロパティで受信を行います。
■ 内部 FIFO バッファを備えていない MAC バリエーションの場合、データ幅
が 8 ビットに固定されます。内部 FIFO バッファを備えた MAC バリエー
ションの場合、データ幅は 8 または 32 ビットにコンフィギュレーション
可能です。
■ バック・プレッシャーは、内部 FIFO バッファを備えた MAC バリエーショ
ンでのみサポートされます。FIFO レベルがそれぞれプログラマブル・ス
レッショルドに達すると送信が停止します。
■ パケット開始信号およびパケット終了信号、および一部の 終パケット信
号を使用するパケットをサポートします。
■ エラー・レポート
■ 内部 FIFO バッファを備えていない MAC バリエーションの場合、リード・
レイテンシはゼロです。内部 FIFO バッファを備えた MAC バリエーショ
ンの場合、リード・レイテンシは 2 です。ただし、システムが自動的にタ
イミング・アダプタを挿入するため、SOPC Builder および Qsys システム
ではリード・レイテンシはゼロに低減されます。
■ ネットワーク側の MII(media independent interface)— Core Configuration ページの Interface オプションまたは command_config レジスタでの
TH_SPEED ビットを設定することで、 MII、 GMII、 または RGMII を選択します(1
ページの「MAC コンフィギュレーション・レジスタ・スペース」を参照)。
■ コントロール・インタフェース — 256 の 32 ビット・コンフィギュレーションおよ
びステータス・レジスタ、および統情報カウンタへのアクセスを提供する
Avalon-MM スレーブ・ポートです。このインタフェースは waitrequest の使
用をサポートし、インタコネクト・ファブリックを必要なサイクルだけ格納しま
す。
■ PHY 管理インタフェース — PHY デバイス管理レジスタにアクセスするために、
標準 MDIO 仕様(IEEE 規格 803.2 の 22 項)を実装します。このインタフェース
は 大 32 の PHY デバイスをサポートします。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–4 4機能の説明10/100/1000 イーサネットMAC
内部 FIFO バッファを備えていない MAC バリエーションは、次の追加のインタ
フェースを実装します。
■ FIFO ステータス・インタフェース — 外部 FIFO バッファのフィル・レベルを受信
する Avalon-ST シンク・ポートです。内部バッファなしの MAC バリエーション
のみがこのインタフェースを実装します。
■ パケット分類インタフェース — 受信パケット分類情報を送信するAvalon-STソー
ス・ポートです。内部バッファなしの MAC バリエーションのみがこのインタ
フェースを実装します。
f Avalon インタフェースについて詳しくは、 「Avalon Interface Specifications」を参照
してください。
また、MAC ファンクションはいくつかのコンポーネント固有の信号を実装していま
す。これらのコンポーネント固有の信号は Avalon インタフェースと関連がなく、
SOPC Builder および Qsys システムではアクセスできません。ピン配置図および信
号の説明については、1 ページの「インタフェース信号」のセクションを参照してく
ださい。
送信データ・パス送信パスでは、MAC ファンクションは、ユーザー・アプリケーションからフレーム
を受け取り、PHY に転送する前にイーサネット・フレームを構築します。MAC のコ
ンフィギュレーションに応じて、MAC ファンクションは、ペイロードの再アライン
メント、ソース・アドレスの変更、CRC-32 フィールドの計算と拡張、およびパ
ケット間ギャップ(IPG)バイトの挿入を実行できます。半二重モードでは、MACファンクションは衝突を検出し、衝突が発生したときにフレームを再送信するよう
にします。 次の条件が送信をトリガします。
■ 内部 FIFO バッファを備えた MAC バリエーションの場合:
■ カットスルー・モード — FIFO レベルのレベルが送信セクションのフルのス
レッショルドをヒットした場合、伝送が開始されます。
■ ストア・アンド・フォワード・モード — フル・パケットが受信された場合、
伝送が開始されます。
■ 内部 FIFOバッファを備えていない MAC バリエーションの場合、データが Avalon-ST 送信インタフェースで伝送可能になると、すぐに開始されます。
イーサネットのフレーム・フォーマットについて詳しくは、付録 B を参照してくだ
さい。
IPペイロード・リアラインメントAlign packet headers to 32-bit boundaries オプションをオンにすると、MAC ファ
ンクションは、イーサネット・フレームの先頭から追加分の 2 バイトを削除します。
IP ペイロード・アラインメントについて詳しくは、 12 ページの「IP ペイロード・ア
ラインメント」を参照してください。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–510/100/1000 イーサネットMAC
アドレスの挿入デフォルトでは、MAC ファンクションはユーザー・アプリケーションから受信され
たソース・アドレスを保持します。 command_config レジスタの TX_ADDR_INS ビットを 1 に設定することで、ソース・アドレスを任意のセカンダリ・アドレスの
プライマリ MAC アドレスに置き換えるよう MAC ファンクションをコンフィギュ
レーションできます。command_config レジスタの TX_ADDR_SEL ビットはアドレ
スの選択を決定します。このビットについて詳しくは、7 ページの表 5–3 を参照して
ください。
フレーム・ペイロード・パディングペイロード長が必要な 小長を満たしていない場合、MAC ファンクションはパディ
ング・バイト(0x00 )を挿入します。
■ 基本フレームの場合、46 バイト
■ VLAN タグ・フレームの場合、42 バイト
■ スタック VLAN タグ・フレームの場合、38 バイト
CRC-32の生成CRC-32 の生成を有効にするには、tx_cmd_stat レジスタの OMIT_CRCビットを
0 に設定し、ff_tx_crc_fwd信号がディアサートされた状態でフレームを MACファンクションに送信します。
CRC-32 の生成を有効にするには、tx_cmd_stat レジスタの OMIT_CRC ビットを 0に設定し、ff_tx_crc_fwd 信号がディアサートされた状態でフレームを MAC ファン
クションに送信する必要があります。
IEEE 802.3 規格で規定されている CRC 多項式は、次の式で示されます。
FCS(X) = X 32 +X 26 +X 23 +X 22 +X 16 +X 12 +X 11 +X 10 +X 8 +X 7 +X 5 +X 4 +X 2 +X 1 +1
32 ビット CRC 値は、FCS フィールド内の 初のバイトの 下位ビットが X31 とな
ります。したがって、CRC ビットは、X31、 X30、...、 X1、 X0 の順序で送信されます。
パケット間ギャップの挿入全二重モードでは、MAC ファンクションは、送信の間に tx_ipg_length レジスタに
設定されている IPG の 小数を維持します。 小の IPG は、64 ~ 216 ビット時間
の任意の値にコンフィギュレーションできます。64 ビット時間は、メディア上で 64ビットのロー・データを送信するのに要する時間です。
半二重モードでは、MAC ファンクションは継続的に回線を監視します。回線が 96ビット時間アイドル状態であり、いずれかのバックオフ時間要求が満たされた場合
にのみ、データ送信が行われます。MAC ファンクションは、規格に従って、
m_rx_crs信号がディアサートされると IPG の測定を開始します。
半二重モードの衝突検出衝突は半二重ネットワークでのみ発生します。衝突は、2 つ以上のノードが同時に
送信された場合に生じます。PHY デバイスは、衝突を示すために m_rx_col 信号を
アサートします。
送信中に衝突が検出されると、MAC ファンクションは送信を停止し、代わりに 32ビット・ジャム・パターンを送信します。ジャム・パターンは固定パターン
0x648532A6 で、フレームの CRC にほとんど一致しません。ジャム・パターンが
CRC と一致する可能性は非常に低く、0.532% です。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–6 4機能の説明10/100/1000 イーサネットMAC
プリアンブルまたは SFD バイトの送信中に衝突が検出された場合、MAC ファンク
ションは、SFD バイトの送信後にのみ、ジャム・パターンを送信します。これによ
り、 小 96 ビット・フラグメントが生じます。
プリアンブルと SFD を含む 初の 64 バイトの送信前に衝突が発生した場合、MACファンクションは、バックオフ期間と等しい間隔だけ待機してから、フレーム・
データを再送信します。フレームは 64 バイト再送信バッファに格納されています。
バックオフ期間は、擬似ランダム・プロセス、切り捨てられたバイナリ指数バック
オフ(truncated binary exponential backoff)から生成されます。
図 4–3 に、フレームの再送信を示します。
バックオフ時間はスロット時間の倍数になります。 1 スロットは 512 ビット時間に相
当します。N 回目の再送信試行の前に、遅延スロット時間が、以下の範囲で一様に
分散したランダムな整数として選択されます。
0 r < 2k
k = min(n, N)。この場合、n は再送信回数を示し、N = 10 です。
例えば、 初の衝突の後のバックオフ時間は、スロット時間で 0 または 1 です。
初の再送信中に衝突が生じた場合、バックオフ時間は、スロット時間で 0、1、2、または 3 です。
大バックオフ時間は、512 ビット時間のスロットですが、IEEE 802.3 規格に規定
されるように、10 に設定された N によって制限されます。
16 回の連続再送信の後に衝突が生じた場合、MAC ファンクションは、
command_configレジスタの EXCESS_COLビットを 1 に設定することにより、過度
の衝突状況を報告し、送信 FIFO バッファからの現行フレームを破棄します。
図 4–3. フレームの再送信
MAC TransmitControl
MAC TransmitDatapath PHY Interface
Retransmission Block
PHY Control
LFSR
Col
Avalon-STInterface
Rd_en
FrameDiscard
MAC Transmit
Backoff Period
RA
ddr
WA
ddr
RetransmitBufferControl
64x8Retransmit
Buffer
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–710/100/1000 イーサネットMAC
規格の要件に違反するネットワークでは、 初の 64 バイトの送信後に衝突が生じる
場合があります。その場合 MAC ファンクションは現在送出中のフレーム送信を停止
し、Tx FIFO からそのフレームの残りのデータを破棄し、そして次の有効フレーム
の送信を再開します。
受信データ・パスMAC の機能は、チェック、無効なフレームのフィルタリング、およびプリアンブル
と SFD の除去を実行した後に、PHY を介してネットワークからイーサネット・フ
レームを受信し、関連するフレーム・フィールドと共にペイロードをユーザー・ア
プリケーションに伝送します。
イーサネット・フレーム・フォーマットについて詳しくは、付録 B を参照してくだ
さい。
プリアンブル処理MAC ファンクションは、プリアンブルの 後のバイトを識別するために SFD
(0xD5)を使用します。第 7 バイトの後に SFD が見つからない場合は、MAC ファ
ンクションはフレームを拒否して破棄します。
IEEE 規格では、少なくとも 96 ビット時間のパケット間ギャップ(IPG)でフレー
ムを分離する必要があることを規定しています。ただし、MAC ファンクションは、
96 ビット時間未満の IPG のフレームでも受信できます。RGMII/GMII(1000 Mbps動作)および RGMII/MII(10/100 Mbps 動作)では、それぞれ 48 および 64 ビット
時間以上の IPG のフレームを受信できます。
MAC ファンクションは、有効なフレームからプリアンブルと SFD のフィールドを
削除します。
半二重モードの衝突検出半二重モードでは、MAC ファンクションはフレーム受信時に衝突があるかどうか確
認します。 初の 64 バイトの受信時に衝突が検出されると、RX_ERR_DISC ビット
が 1 に設定されている場合、MAC ファンクションはフレームを破棄します。1 に設
定されていない場合は、MAC ファンクションはフレームをエラーとともにユー
ザー・アプリケーションに送信します。
アドレス・チェックMAC ファンクションは、下記のアドレス・タイプを持つフレームを受け入れること
ができます。
■ ユニキャスト・アドレス — 送信先アドレスのビット 0 が 0 となる
■ マルチキャスト・アドレス — 送信先アドレスのビット 0 が 1 となる
■ ブロードキャスト・アドレス — 送信先アドレスの 48 ビットがすべて 1 となる
MAC ファンクションは常にブロードキャスト・フレームを受け入れます。プロミス
キャス・モードがイネーブルされる(command_config レジスタ内の PROMIS_ENビット = 1)と、MAC ファンクションは、フィルタリング・アドレスを省略し、す
べてのユニキャスト・フレームを受け入れます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–8 4機能の説明10/100/1000 イーサネットMAC
ユニキャスト・アドレス・チェックプロミスキャス・モードがディセーブルされると、MAC ファンクションは、ユニ
キャスト送信先アドレスが以下のアドレスのいずれかと一致する場合にのみ、ユニ
キャスト・フレームを受け入れます。
■ レジスタ mac_0および mac_1でコンフィギュレーションされたプライマリ・アド
レス The primary address, configured in the registers mac_0 and mac_1
■ レジスタsmac_0_0/smac_0_1、 smac_1_0/smac_1_1、 smac_2_0/smac_2_1 および smac_3_0/smac_3_1 でコンフィギュレーションされたセカンダリ・ア
ドレス
上記以外の場合、MAC ファンクションはフレームを破棄します。
マルチキャスト・アドレス解決ホスト・プロセッサ上で動作するソフトウェア・プログラム、またはハードウェア・
マルチキャスト・アドレス解決エンジンのいずれかを使用して、マルチキャスト・
アドレスを解決できます。ソフトウェア・プログラムを使用したアドレス解決は、
特にギガビット・モードではシステム・パフォーマンス全体に影響がある場合があ
ります。
MAC ファンクションは、レジスタ・スペースにある 64 ビットのハッシュ・テーブ
ル(マルチキャスト・ハッシュ・テーブル)を使用して、図 4–4 に示すようなハー
ドウェア・マルチキャスト・アドレス解決エンジンを実装します。ホスト・プロ
セッサは、特定のアルゴリズムに従ってハッシュ・テーブルを構築する必要があり
ます。表 4–1 および表 4–2 に示すように、アドレス・ビットを XOR することにより、
各マルチキャスト・アドレスから 6 ビット・コードが生成されます。このコードは、
ハッシュ・テーブル・エントリのアドレスを表します。テーブル・エントリの 上
位ビットに 1 を書き込みます。アドレスに刻むすべてのマルチキャスト・アドレス
は有効であり、受け入れられます。マルチキャスト・ハッシュ・テーブルについて
詳しくは、1 ページの「MAC コンフィギュレーション・レジスタ・スペース」を参照
してください。
command_configレジスタの MHASH_SELビットを 0 に設定することにより、送信先
アドレスの 48 ビットすべてから 6 ビット・コードを生成するか、あるいは、
MHASH_SELビットを 1に設定することにより、下位 24ビットから 6 ビット・コードを
生成するかを選択できます。後者のオプションでは、6 ビット・コードを生成する
際に、通常、送信先アドレスの上位 24 ビットで示されるメーカーのコードを省略で
きます。
図 4–4. ハードウェア・マルチキャスト・アドレス解決エンジン
HashGenerate
multicast_matchframe destination
address(47:0)
write_port
din
Look-Up Table(64x1 DPRAM)
read_addr(5:0)
hash_addr(5:0)
dout
wclk
hash_w
ren
hash_da
ta
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–910/100/1000 イーサネットMAC
表 4–1 に、送信先アドレスの全ビットから 6 ビット・コードを生成するためのアル
ゴリズムを示します。
表 4–2 に、送信先アドレスの下位 24 ビットから 6 ビット・コードを生成するための
アルゴリズムを示します。
MAC ファンクションは、受信した各マルチキャスト・アドレスと高速マッチング・
エンジンとして機能するハッシュ・テーブルを照合し、照合結果が 1 クロック・サ
イクル内に返されます。一致しない場合、MAC ファンクションはフレームを破棄し
ます。
ハッシュ・テーブルのエントリがすべて 1 である場合、すべてのマルチキャスト・
フレームが受け入れられます。
フレーム・タイプ検証MAC ファンクションは、フレーム・タイプを決定するために長さ/タイプのフィー
ルドをチェックします。
■ 長さ / タイプ < 0x600 — このフィールドは、基本イーサネット・フレームのペイ
ロード長を表します。MAC ファンクションは、フレームとペイロードの長さを
チェックし続けます。
表 4–1. ハッシュ・コード生成—送信先アドレスの全ビット
ハッシュ・コード・ビット 値
0 xor マルチキャスト MAC アドレス・ビット 7:0
1 xor マルチキャスト MAC アドレス・ビット 15:8
2 xor マルチキャスト MAC アドレス・ビット 23:16
3 xor マルチキャスト MAC アドレス・ビット 31:24
4 xor マルチキャスト MAC アドレス・ビット 39:32
5 xor マルチキャスト MAC アドレス・ビット 47:40
表 4–2. ハッシュ・コード生成—送信先アドレスの下位 24ビット
ハッシュ・コード・ビット 値
0 xorマルチキャスト MAC アドレス・ビット 3:0
1 xor マルチキャスト MAC アドレス・ビット 7:4
2 xor マルチキャスト MAC アドレス・ビット 11:8
3 xorマルチキャスト MAC アドレス・ビット 15:12
4 xor マルチキャスト MAC アドレス・ビット 19:16
5 xorマルチキャスト MAC アドレス・ビット 23:20
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–10 4機能の説明10/100/1000 イーサネットMAC
■ 長さ / タイプ >= 0x600— このフィールドはフレーム・タイプを示します。
■ 長さ / タイプ = 0x8100—VLAN または スタック VLAN タグ・フレームです。
MAC ファンクションは、フレームとペイロードの長さをチェックし続け、そ
して次の信号をアサートします。
■ VLANフレームの場合、内部FIFOバッファを備えたMACバリエーションの
rx_err_stat[16]、または内部 FIFO バッファを備えていない MAC バリ
エーションの pkt_class_data[1]
■ スタックVLANの場合、内部FIFOバッファを備えたMACバリエーションの rx_err_stat[17] 、または内部 FIFO バッファを備えていない MAC バリ
エーションの pkt_class_data[0]
■ 長さ / タイプ = 0x8088— コントロール・フレーム。次の 2 バイト(オペコード
のフィールド)は、コントロール・フレームのタイプを示します。
■ ポーズ・フレーム(オペコード = 0x0001)の場合、MAC ファンクション
は、フレームとペイロード長をチェックし続けます。有効なポーズ・フ
レームを検出したら、MAC ファンクションはポーズ・フレームの処理に
移行します(18 ページの「リモート・デバイス輻輳」を参照)。MAC ファ
ンクションは、command_configレジスタの PAUSE_FWDビットが 1 に
設定されている場合にのみ、ポーズ・フレームをユーザー・アプリケー
ションに伝送します。
■ それ以外のコントロール・フレームの場合、MAC ファンクションは
command_config の CNTL_FRM_ENAビットが 1 に設定されている場合に
のみ、フレームを受け入れてユーザー・アプリケーションに伝送します。
■ ほかのフィールド値の場合、MAC ファンクションは受信されたフレームをユー
ザー・アプリケーションに伝送します。
ペイロード・パッドの削除command_configレジスタのPAD_ENビットを 1設定することにより、パディングの
除去をオンにすることができます。様々なフレーム・タイプのペイロード長が以下
の値未満である場合、MAC ファンクションは、ユーザー・アプリケーションにフ
レームを伝送する前に、パディングを削除します。
■ 基本 MAC フレームの場合、46 バイト
■ VLAN タグ・フレームの場合、42 バイト
■ スタック VLAN タグ・フレームの場合、38 バイト
パディング削除がオフに設定される場合、パディングを含む全フレームが Avalon-ST 受信インタフェースに転送されます。
CRC チェックIEEE 802.3 規格で規定されている CRC 多項式は、次の式で示されます。
FCS(X) = X 32 +X 26 +X 23 +X 22 +X 16 +X 12 +X 11 +X 10 +X 8 +X 7 +X 5 +X 4 +X 2 +X 1 +1
32 ビット CRC 値は、FCS フィールド内の 初のバイトの 下位ビットが X31 とな
ります。したがって、CRC ビットは、X31、 X30、...、 X1、 X0 の順序で受信されます。
CRC-32 エラーが検出されると、MAC ファンクションは、次の信号をアサートする
ことにより、フレームを無効としてマークを付けます。
■ 内部 FIFO バッファを備えた MAC バリエーションの rx_err[2]
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–1110/100/1000 イーサネットMAC
■ 内部 FIFO バッファを備えていない MAC バリエーションの data_rx_error[1]
command_configレジスタのRX_ERR_DISCビットが1に設定されている場合、MACファンクションは CRC-32 エラーのあるフレームを破棄します。
command_configレジスタのCRC_FWDビットおよびPAD_ENビットが、それぞれ1と0 である場合、MAC ファンクションは CRC-32 フィールドをユーザー・アプリケー
ションに転送します。それ以外の場合、CRC-32 フィールドはフレームから削除さ
れます。
フレーム長およびペイロード長のチェックMAC ファンクションは、基本フレーム、VLAN タグ・フレーム、およびスタック
VLAN タグ・フレームのフレーム長およびペイロード長をチェックします。
フレーム長は 64 (0x40) バイト以上でなければなりません。フレーム・タイプによっ
て、次の 大値を超えないようにしてください。
■ 基本フレーム —frm_length レジスタで指定された値
■ VLAN タグ・フレーム — frm_length レジスタで指定された値+ 4
■ スタック VLAN タグ・フレーム —frm_length レジスタで指定された値+ 8
MAC の長さが許容 大長よりも 11 バイトより長い場合、FIFO オーバーフローを防
ぐために MAC はフレームを切り捨てます。有効な長さのフレームの場合、MACファンクションは、command_configレジスタの NO_LGTH_CHECKビットが 0 に
設定されている場合にペイロード長をチェックし続けます。MAC ファンクション
は、フレームを受信するとペイロード長を追跡し、基本 MAC フレームでの長さ/タ
イプ・フィールド、または VLAN タグ・フレームでのクライアントの長さ/タイ
プ・フィールドと照合します。次の条件を満たす場合、ペイロード長は有効です。
■ 実際のペイロード長は、長さ / タイプ・フィールドまたはクライアントの長さ / タイプ・フィールドの値と一致する。
■ 基本フレーム — ペイロード長は 46 (0x2E) ~ 1536 (0x0600) バイトです(1536 は
除外)。
■ VLAN タグ・フレーム — ペイロード長は 42 (0x2A) および 1536 (0x0600) です
(1536 は除外)。
■ スタック VLAN タグ・フレーム — ペイロード長は 38 (0x26) ~ 1536 (0x0600) です
(1536 は除外)。
フレーム長またはペイロード長が有効でない場合は、MAC ファンクションは長さの
エラーを示すために、次の信号のいずれかをアサートします。
■ 内部 FIFO バッファを備えた MAC の場合、rx_err[1]
■ 内部 FIFO バッファを備えていない MAC の場合、data_rx_error[0]
フレームの書き込みMegaCore ファンクションは、フレームからプリアンブルと SFD フィールドを削除
します。CRC フィールドおよびパディング・バイトは、コンフィギュレーションに
応じて削除される可能性があります。
内部 FIFO バッファを備えた MAC バリエーションの場合、MAC ファンクションは
フレームを内部受信 FIFO バッファに書き込みます。内部 FIFO バッファを備えてい
ない MAC バリエーションの場合、MAC ファンクションはフレームを Avalon-ST 受
信インタフェースに伝送します。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–12 4機能の説明10/100/1000 イーサネットMAC
内部 FIFO バッファなしの MAC バリエーションは Avalon-ST 受信インタフェースの
バックプレッシャをサポートしていません。このバリエーションでは、受信コン
ポーネントが MAC ファンクションからのデータを受信可能でない場合は、フレーム
がエラーにより切り捨てられ、以降のフレームもエラーにより破棄されます。
IPペイロード・アラインメントネットワーク・スタックは、イーサネット・フレームに保存されている IP アドレス
を頻繁に使用します。 Align packet headers to 32-bit boundaries オプションをオン
にすると、MAC ファンクションは、イーサネット・フレームの先頭に 2 バイトを追
加することにより、IP ペイロードを 4 バイト・バウンダリに揃えます。イーサネッ
ト・フレームのパディングは、送受信時にそれぞれ tx_cmd_stat および
rx_cmd_stat レジスタによって決定されます。
表 4–3 に、IP アラインメントしないイーサネット・フレームの構造を示します。
表 4–4 に、IP アラインメント・イーサネット・フレームの構造を示します。
送受信レイテンシアルテラは、送受信レイテンシに関する以下の定義を使用します。
■ 送信レイテンシは、 初のビットが Avalon-ST インタフェース上で初めて使用可
能になった後、MAC ファンクションがネットワーク側インタフェース
(MII/GMII/RGMII)上にその 初のビットを送信するのに要するクロック・サイ
クル数です。
■ 受信レイテンシは、 初のビットがネットワーク側のインタフェース
(MII/GMII/RGMII)に受信された後、MAC ファンクションが Avalon-ST インタ
フェース上にその 初のビットを伝達するのに要するクロック・サイクル数で
す。
表 4–5 に、各種モードでの送受信公称レイテンシを示します。FIFO バッファのス
レッショルドは、レイテンシの発生時に、このユーザーガイドで指定された標準値
に設定されます。スレッショルド値については、3 ページの「レジスタ・マップ」を
参照してください。
表 4–3. 32ビット・インタフェース・データ構造—IPアラインメントしない場合
31...24 23...16 15...8 7...0
バイト 0 バイト 1 バイト 2 バイト 3
バイト 4 バイト 5 バイト 6 バイト 7
表 4–4. 32ビット・インタフェース・データ構造—IPアラインメント
31...24 23...16 15...8 7...0
0 でパディング バイト 0 バイト 1
バイト 2 バイト 3 バイト 4 バイト 5
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–1310/100/1000 イーサネットMAC
表 4–5. 送受信公称レイテンシ
MACコンフィギュレーション
レイテンシ(クロック・サイクル ) (1)
送信 受信
内部 FIFO バッファが組み込まれた MAC (2)
カットスルー・モードの GMII 32 110カットスルー・モードの MII 41 218ギガビットおよびカットスルー・モードの RGMII 33 11310/100 Mbps およびカットスルー・モードの RGMII 42 221内部 FIFO バッファが組み込まれていない MAC (3)
GMII 11 37MII 22 77ギガビット・モードの RGMII 12 4010/100 Mbps の RGMII 23 80表 4–5の注:(1) すべてのドメイン内のクロックは同一周波数です。
(2) データ幅は 32 ビットに設定されます。
(3) データ幅は 8 ビットに設定されます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–14 4機能の説明10/100/1000 イーサネットMAC
FIFOバッファのスレッショルド内部 FIFO バッファが組み込まれた MAC バリエーションの場合、FIFO バッファの
動作を変更し、以下のスレッショルドをコンフィギュレーションすることにより、
潜在的な FIFO バッファのオーバーフローまたはアンダーフローを管理できます。
■ Almost empty
■ Almost full
■ Section empty
■ Section full
これらのスレッショルドは、8 ビットの FIFO バッファではバイト単位、32 ビット
幅の FIFO バッファではワード単位で定義されます。FIFO バッファのスレッショル
ドは、レジスタによってコンフィギュレーションされます。
受信スレッショルド図 4–5 に、受信 FIFO バッファのスレッショルドを示します。
図 4–5. 受信 FIFOスレッショルド
Network
Switch Fabric
Frame Buffer n
Frame Buffer n - 1
Frame Buffer k
Frame Buffer 2
Frame Buffer 1
The remainingunwritten entries in
the FIFO bufferbefore it is full. Almost full
The remainingunread entries in
the FIFO bufferbefore it is empty.
Almost empty
An early indicationthat the FIFObuffer is gettingfull.
Section Empty
Sufficient unreadentries in the FIFObuffer for the userapplication to startreading from it.
Section full
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–1510/100/1000 イーサネットMAC
表 4–6 に、受信スレッショルドについて説明します。
表 4–6. 受信スレッショルド (1 / 2 )
スレッショルド レジスタ名 説明
Almost empty
rx_almost_empty
FIFO バッファがエンプティになる前の、FIFO バッファ内のまだ読み出されていないエントリ数です。FIFO バッファのレベルがこのスレッショルドに達すると、MAC ファンクションは ff_rx_a_empty信号をアサートします。MAC ファンクションは FIFO アンダーフローを回避するために、FIFO からの読み出しを停止し、ユーザー・アプリケーションへのデータ転送を停止します。
EOP が検出されると、まだ読み出されていないエントリ数がこのスレッショルドを下回っても、MAC ファンクションはユーザー・アプリケーションにデータをすべて転送します。
Almost full rx_almost_full
FIFO バッファがフルになる前のまだ書き込まれていないエントリ数です。 FIFO バッファのレベルがこのスレッショルドに達すると、MAC ファンクションは ff_rx_a_full信号をアサートします。ユーザー・アプリケーションがデータを受信することができない場合(ff_rx_rdyが 0 の場合)、MAC ファンクションは以下の動作を行います。
■ FIFO バッファへのデータ書き込みを停止する。
■ FIFO バッファ・オーバーフローを回避するために受信フレームを切り捨てる。
■ ff_rx_eop 信号がアサートされると、rx_err[0] 信号をアサートします。
■ rx_err[3]信号を 1 に設定することにより、切り捨てられたフレームを無効としてマークを付ける。
command_configレジスタのRX_ERR_DISCビットが 1に設定され、section full(rx_section_full)スレッショルドが 0 に設定されている場合、FIFO インタフェース上で受信されたエラー・フレームが破棄されます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–16 4機能の説明10/100/1000 イーサネットMAC
送信スレッショルド図 4–6 に、送信 FIFO バッファのスレッショルドを示します。
Section empty
rx_section_empty
FIFO バッファがフル状態に近いことを早期に示します。FIFO のレベルがこのスレッショルドに達すると、MAC ファンクションはXOFF ポーズ・フレームを生成し、リモート・イーサネット・デバイスに FIFO の輻輳状態を知らせます。FIFO レベルがこのスレッショルドを下回ると、MAC ファンクションは XON ポーズ・フレームを生成して、新規フレームを受信することが可能であることを示します。
データの損失を回避するために、このスレッショルドを使用して、FIFO レベルが almost full スレッショルドに達する前に、潜在的なFIFO 輻輳状態についてリモート・イーサネット・デバイスに早期に警告することができます。FIFO レベルが almost full スレッショルドに達すると、受信フレームは切り捨てられます。
Section full rx_section_full
section full スレッショルドは、ユーザー・アプリケーションが読み出しを開始するのに十分なエントリが FIFO バッファ内にあることを示します。バッファのレベルがこのスレッショルドに達すると、MAC ファンクションは ff_rx_dsav信号をアサートします。
このスレッショルドを 0 に設定して、受信データ・パス上でのストア・アンド・フォワードをイネーブルします。ストア・アンド・フォワード・モードでは、ff_rx_dsav信号はアサートされないままです。MAC ファンクションは、完全なフレームが FIFO バッファに書き込まれると直ちに ff_rx_dval信号をアサートします。
表 4–6. 受信スレッショルド (2 / 2 )
スレッショルド レジスタ名 説明
図 4–6. 送信 FIFOスレッショルド
Network
Switch Fabric
Frame Buffer n
Frame Buffer n - 1
Frame Buffer k
Frame Buffer 1
The remainingunwritten entries in
the FIFO bufferbefore it is full. Almost full
The remainingunread entries in
the FIFO bufferbefore it is empty.
Almost empty
An early indicationthat the FIFObuffer is gettingfull.
Section Empty
Sufficient unreadentries in the FIFObuffer for the transmitter to starttransmission.
Section full
Frame Buffer 2
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–1710/100/1000 イーサネットMAC
表 4–7 、に送信スレッショルドを説明します。
送信 FIFOバッファのアンダーフローフレーム送信中に、フレームの終了が FIFO バッファに保存されていない状態で、送
信 FIFO が almost empty スレッショルドに達すると、MAC ファンクションは FIFOからのデータ読み出しを停止し、以下のアクションを開始します。
1. MAC ファンクションは、RGMII/GMII/MII エラー信号
(tx_control/gm_tx_err/m_tx_err)をアサートし、転送されたフラグメント
が有効でないことを示します。
2. MAC ファンクションは、RGMII/GMII/MII 送信イネーブル信号
(tx_control/gm_tx_en/m_tx_en)をディアサートし、フレーム送信を終了し
ます。
3. アンダーフロー後、ユーザー・アプリケーションはフレーム送信を完了します。
4. 送信コントロールは、フレームの 後まで、FIFO バッファ内の新しいデータを
すべて破棄します。
5. ユーザー・アプリケーションが SOP のある新規フレームを送信すると、MACファンクションは RGMII/GMII/MII でデータ転送を開始します。
図 4–7 にギガビット・イーサネット・システムのための FIFO バッファのアンダーフ
ロー保護アルゴリズムを示します。
表 4–7. 送信スレッショルド
スレッショルド レジスタ名 説明
Almost empty tx_almost_empty
FIFO バッファがエンプティになる前の、FIFO バッファ内のまだ読み出されていないエントリ数です。FIFO バッファのレベルがこのスレッショルドに達すると、MAC ファンクションはff_tx_a_empty 信号をアサートします。MAC ファンクションはFIFO アンダーフローを回避するために、FIFO バッファからの読み出しを停止し、GMII / MII/ RGMII エラーのあるイーサネット・フレームを送信します。
Almost full tx_almost_full
FIFO バッファがフルになる前のまだ書き込まれていないエントリ数です。FIFO バッファのレベルがこのスレッショルドに達すると、MAC ファンクションは、 ff_tx_a_full信号をアサートします。MAC ファンクションは ff_tx_rdy 信号をディアサートし、Avalon-ST 送信インタフェースにバックプレッシャをかけます。
Section empty tx_section_empty
FIFO バッファがフル状態に近いことを早期に示します。FIFOバッファのレベルがこのスレッショルドに達すると、MAC ファンクションは ff_tx_septy 信号をディアサートします。このスレッショルドは、潜在的な FIFO バッファ輻輳状態について警告することができます。
Section full tx_section_full
このスレッショルドは、フレーム送信を開始するのに十分なエントリが FIFO バッファ内にあることを示します。
このスレッショルドを 0 に設定して、送信パス上でのストア・アンド・フォワードをイネーブルします。 ストア・アンド・フォワードがイネーブルされている場合、各フレームが送信 FIFO に完全に書き込まれると直ちに、MAC ファンクションはそのフレームを転送します。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–18 4機能の説明10/100/1000 イーサネットMAC
輻輳状態およびフロー・コントロール全二重モードでは、MAC ファンクションは下記の輻輳状態を管理するために、フ
ロー・コントロールを実装します。
■ リモート・デバイス輻輳 — 受信デバイスに輻輳が発生し、MAC ファンクションに
データ送信を停止するように要求します。
■ 受信FIFOバッファ輻輳—受信FIFOバッファがalmost fullに近づくと、MACファン
クションはポーズ・フレームをリモート・デバイスに送信して、データ送信を停
止するように要求します。
■ ローカル・デバイス輻輳 —MAC ファンクションに接続されているデバイス(例え
ばプロセッサ)は、リモート・デバイスにデータ送信の停止を要求できます。
ポーズ・フレームのフォーマットについて詳しくは、2 ページの「ポーズ・フレーム
のフォーマット」を参照してください。
リモート・デバイス輻輳MAC ファンクションが XOFF ポーズ・フレームを受信し、command_configレジ
スタの PAUSE_IGNORE ビットが 0 に設定されると、MAC ファンクションは、現行
フレームの転送を完了し、ポーズ・クアンタに指定されている時間、512 ビット時
間の増分でデータ送信を停止します。タイマーが切れるか、または MAC ファンク
ションが XON フレームを受信する場合、フレーム送信が再開されます。
command_configレジスタの PAUSE_IGNOREビットを 1 に設定することで、MACファンクションがポーズ・プレームを無視するようにコンフィギュレーションでき
ます。
図 4–7. 送信 FIFOバッファ・アンダーフロー
[1] [2] [5]
[3] [4]
ff_tx_data
ff_tx_sop
ff_tx_eop
ff_tx_rdy
ff_tx_wren
ff_tx_crc_fwd
ff_tx_err
ff_tx_septy
ff_tx_uflow
ff_tx_a_full
ff_tx_a_empty
gm_tx_err
gm_tx_en
gm_tx_d
GMII Transmit
Transmit FIFO
valid valid
valid valid
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–1910/100/1000 イーサネットMAC
受信 FIFOバッファおよびローカル・デバイス輻輳生成されたポーズ・フレームは、IEEE 802.3 規格の付録 31A および B に準拠してい
ます。 受信 FIFO バッファ・レベルがオーバーフローを引き起こす可能性のあるレベ
ルに達した場合、またはユーザー・アプリケーションの要求がある場合、MAC ファ
ンクションはポーズ・フレームを生成します。ユーザー・アプリケーションは、
command_configレジスタのXOFF_GENビットを1に設定するか、xoff_gen信号を
アサートすることにより、XOFF ポーズ・フレームの生成をトリガーすることがで
きます。
MAC バリエーションを備えた FIFO バッファの場合、FIFO バッファが section empty スレッショルド(rx_section_empty)に達すると、MAC ファンクション
は OFF ポーズ・フレームを生成します。送信が進行中の場合、MAC ファンクショ
ンはポーズ・フレームを生成する前に送信の完了を待ちます。外部 FIFO のフィル・
レベルは、Avalon-ST 受信 FIFO バッファのステータス・インタフェースによって取
得されます。
ポーズ・フレームが生成されると、ポーズ・クアンタ・バイト P1 および P2 に、
pause_quantレジスタでコンフィギュレーションされた値が入力されます。送信元
アドレスは、mac_0および mac_1レジスタでコンフィギュレーションされたプライ
マリ MAC アドレスに設定されます。また、送信先アドレスは、固定マルチキャス
ト・アドレス、01-80-C2-00-00-01(0x010000c28001)に設定されます。
FIFO バッファの section empty フラグがデアサートされ、現行フレーム送信が完了
すると、MAC ファンクションは XON ポーズ・フレームを自動的に生成します。
ユーザー・アプリケーションは、XOFF_GENビットおよび信号をクリアすることに
より、XON ポーズ・フレームの生成をトリガーすることができ、その後、XON_GENビットを 1 に設定するか、XON_GEN 信号をアサートします。
XON ポーズ・フレームが生成されると、ポーズ・クアンタ(ペイロード・バイト
P1 および P2)に 0x0000(ゼロ・クアンタ)が設定されます。送信元アドレスは、
mac_0 および mac_1 レジスタでコンフィギュレーションされたプライマリ MAC ア
ドレスに設定されます。また、送信先アドレスは、固定マルチキャスト・アドレス、
01-80-C2-00-00-01 (0x010000c28001) に設定されます。
1 フロー・コントロール・メカニズムに加えて、MAC ファンクションは過剰なフレー
ムを切り捨てることにより、オーバーフローを防止します。このようなエラーを示
すために、ステータス・ビット(rx_err[3])は 1 に設定されます。ユーザー・ア
プリケーションはその後、command_configレジスタの RX_ERR_DISCビットを 1に設定することにより、そのフレームを破棄します。
マジック・パケットマジック・パケットには、ユニキャスト、マルチキャスト、またはブロードキャス
ト・パケットがあり、ペイロード・セクションに定義済みのシーケンスを運びます。
マジック・パケットは、特定の条件下(通常パワーダウン・モード)でのみ受信さ
れ、動作します。
定義済みのシーケンスは、6 つの連続 0xFF バイトの同期ストリームに、16 の連続
ユニキャスト MAC アドレスのシーケンスが続く形式です。ユニキャスト・アドレス
はウェイクアップされるノードのアドレスです。
このシーケンスは、マジック・パケット・ペイロードのどの場所にでも配置できま
す。また、マジック・パケットは、標準イーサネット・ヘッダ、オプションのパ
ディング、および CRC で構成されます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–20 4機能の説明10/100/1000 イーサネットMAC
スリープ・モードマジック・パケット検出がイネーブルされる(command_configレジスタの
MAGIC_ENAビット =1)場合にのみ、ノードをスリープ・モードにできます
(command_config レジスタの SLEEPビットを 1 に設定)。
1 アルテラは、マジック・パケットがディセーブルされる場合にノードをスリープ・
モードに設定することを推奨していません。
ノードがスリープになると、ネットワーク伝送はイネーブルされたままですが、回
線からのトラフィックはマジック・フレーム以外すべて無視します。レシーバはイ
ネーブルされたままですが、回線からのトラフィックはマジック・フレーム以外す
べて無視します。これによって、リモート・エージェントはノードをウェイクアッ
プできます。スリープ・モードでは、etherStatsPkts および etherStatsOctets のみがトラフィック統計情報を収集します。
マジック・パケット検出マジック・パケット検出は、スリープ・モードのノードをウェイクアップします。
MAC ファンクションは、以下の送信先アドレスを含むマジック・パケットを検出し
ます。
■ マルチキャスト・アドレス
■ ブロードキャスト・アドレス
■ mac_0およびmac_1レジスタでコンフィギュレーションされたプライマリMACア
ドレス
■ 以下のレジスタがイネーブルされている場合、smac_0_0、smac_0_1、smac_1_0、smac_1_1、smac_2_0、smac_2_1、smac_3_0、および
smac_3_1 レジスタでコンフィギュレーションされたセカンダリ MAC アドレス
MAC ファンクションがマジック・フレームを検出すると、command_configレジ
スタの WAKEUP ビットが 1 に設定され、etherStatsPkts および
etherStatsOctets統計情報レジスタもインクリメントされます。
command_configレジスタの SLEEPビットが 0 に設定されると、マジック・パケッ
ト検出はディセーブルされます。SLEEPビットを 0 に設定すると、WAKEUPビット
も 0 にリセットされ、送受信動作が再開されます。
ローカル・ループバック送受信パスをテストするために MAC ファンクションの MII/GMII/RGMII 上のローカ
ル・ループバックをイネーブルできます。ローカル・ループバックをイネーブルす
る場合は、送信クロックと受信クロックの両方に同じクロック・ソースを使用して
ください。 異なるクロック・ソースを使用する場合は、送信クロックと受信クロック
間の差異が ±100 ppm 未満であることを確認してください。
ローカル・ループバックをイネーブルするには、以下のステップを実行します。
1. command_config レジスタの SW_RESET ビットを 1 に設定して、ソフトウェ
ア・リセットを開始します。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–2110/100/1000 イーサネットMAC
ソフトウェア・リセットにより、送受信動作がディセーブルされ、内部 FIFO が
消去され、統計情報カウンタがクリアされます。 完了すると、SW_RESETビット
が自動的にクリアされます。
2. ソフトウェア・リセットが完了すると、command_configレジスタの
LOOP_ENA ビットを 1 に設定して、MAC の MII/GMII/RGMII 上のローカル・ループ
バックをイネーブルします。
3. command_config レジスタの TX_ENA ビットおよび RX_ENA ビットを 1 に設定
して、送受信動作をイネーブルします。
4. フレーム送信を開始します。
5. 統計情報カウンタ aFramesTransmittedOKと aFramesReceivedOK を比較し
て、送受信のフレーム・カウントが等しいことを検証します。
6. 統計情報カウンタ ifInErrors および ifOutErrorsをチェックして、エラー
の発生した送受信パケット数を確認します。
7. ループバックをディセーブルするには、ソフトウェア・リセットを行い、
command_config レジスタの LOOP_ENA ビットを 0 に設定します。
リセットハードウェア・リセットは、すべてのロジックをリセットします。ソフトウェア・
リセットは、送受信パスをディセーブルし、すべての統計情報レジスタをクリアし、
受信 FIFO バッファを消去します。ソフトウェア・リセット時に、MAC アドレスお
よび FIFO バッファのスレッショルドなどのコンフィギュレーション・レジスタの値
は保持されます。
ソフトウェア・リセットをトリガするとき、MAC ファンクションは
command_config レジスタのTX_ENA およびRX_ENAビットを0に設定し、送受信パ
スをディセーブルします。ただし、送受信パスは、現在のフレームの送受信が完了
するときにのみディセーブルされます。
リセットをトリガするには、次のステップを実行します。:
■ ハードウェアをトリガするには、reset 信号をアサートします。
■ ソフトウェア・リセットをトリガするには、command_config レジスタの SW_RESET ビットを 1 に設定します。 SW_RESET ビットは、ソフトウェア・リ
セットの完了時に自動的にクリアされます。
1 アルテラは、MAC の動作速度およびモード(全二重 / 半二重)を変更する前に、ソフ
トウェア・リセットを実行し、ソフトウェア・リセット・シーケンスが完了するま
で待機することを推奨しています。ほかのコンフィギュレーションの変更なしに動
作モードまたはモードを変更する場合、ソフトウェア・リセットを実行する前に
command_config レジスタを維持し、MAC の動作速度またはモードの変更後にレ
ジスタを復元します。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–22 4機能の説明10/100/1000 イーサネットMAC
図 4–8 に、ソフトウェア・リセットのシーケンスを示します。
1 (ケーブルが切断されているなどの理由で)ライン・クロックが使用できないとき
に、SW_RESET ビットが 1 に設定されている場合、統計情報レジスタがクリアされ
ないことがあります。その後、reg_status レジスタの READ_TIMEOUT ビットが 1に設定され、統計情報レジスタがクリアされなかったことが示されます。
PHYマネージメント(MDIO)このモジュールは PHY デバイス管理レジスタにアクセスするために、標準 MDIO 仕
様(IEEE 規格 803.2 の 22 項)を実装し、 大 32 の PHY デバイスをサポートしま
す。
各 PHY デバイスにアクセスするには、トランザクション・データの前の MDIO レジ
スタ(mdio_addr0/1)に PHY アドレスを書き込む必要があります。アクセスを速
くするために、MAC ファンクションでは一度に 大 2 つの PHY デバイスをレジス
タ空間にマップできます。同じ PHY の後に続くトランザクションでは、レジスタ空
間に PHY アドレスを書き込む必要がないため、トランザクション・オーバーヘッド
を削減できます。MDIO レジスタは、Avalon-MM インタフェースを介して接続でき
ます。MDIO レジスタについて詳しくは、1 ページの「MAC コンフィギュレーショ
ン・レジスタ・スペース」を参照してください。
f PHY デバイスのレジスタについて詳しくは、デバイス仕様を参照してください。
図 4–8. ソフトウェア・リセットのシーケンス
FrameReception
Completed?
FrameTransmission Completed?
Receive Frames Transmit Frames
Flush FIFO
END (SW_RESET = 0)
Clear Statistics Counters
START(SW_RESET = 1)
Yes Yes
Yes
No
No No Yes
No Statistics Counters Enabled?
Yes
No
RX_ENA = 0TX_ENA = 0
MAC with internal FIFO?
Receive FIFO empty?
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–2310/100/1000 イーサネットMAC
MDIO接続図 4–9 に、MDIO 接続を示します。
MDIOフレームのフォーマットMDIO マスタは、MDIO フレームを使用してスレーブ PHY デバイスと通信します。
フレームは 64 ビット長で、32 ビットのプリアンブル、14 ビットのコマンド、2ビットのバス方向変更、および 16 ビットのデータで構成されます。各ビットは、
MDIO クロック(mdc)信号の立ち上がりエッジで転送されます。
表 4–8 に、MDIO トランザクションのフィールド設定を示します。
表 4–9 では、MDIO フレームのフィールドについて説明します。
図 4–9. MDIO インタフェース
PHY Addr
MDIO Frame Generation and
Decoding
Avalon-MM Control Interface
10/100/1000 Ethernet MAC
MD
IO In
terf
acemdc
mdio_in
mdio_out
mdio_oen
PHY Addr
PHY Management
Registers
MDIO FrameGeneration &
Decoding
mdio
mdc
addr
PHY Management
Registers
MDIO FrameGeneration &
Decoding
mdio
mdc
addr
表 4–8. MDIOフレームのフォーマット(読み出し/書き込み)
タイプ PRE
コマンド
STMSB LSB
OPMSB LSB
Addr1MSB LSB
Addr2MSB LSB TA
DataMSB
LSB Idle
読み出し 1 ... 1 01 10 xxxxx xxxxx Z0 xxxxxxxxxxxxxxxx Z
書き込み 1 ... 1 01 01 xxxxx xxxxx 10 xxxxxxxxxxxxxxxx Z
表 4–9. MDIOフレーム・フィールドの説明 (1 / 2 )
名称 説明PRE プリアンブル。すべてのトランザクションの前に送信される論理 1 の 32 個のビット。
ST 開始を示します。標準 MDIO(22 項):0b01。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–24 4機能の説明10/100/1000 イーサネットMAC
外部 PHYへの MACの接続MAC ファンクションは、複数のアプリケーションで使用できる、柔軟なネットワー
ク・インタフェース(10/100 Mbps インタフェース用の MII、1000Mbps インタ
フェース用の RGMII または GMII)を実装します。このセクションでは、以下の
ネットワーク・アプリケーションを実装するためのガイドラインを提供します。
■ ギガビット・イーサネット動作
■ プログラマブル 10/100 イーサネット動作
■ プログラマブル 10/100/100 イーサネット動作
ギガビット・イーサネットギガビット・イーサネット PHY は、GMII または RGMII を介して MAC ファンク
ションに接続できます。受信パスでは、PHY デバイスによって提供された 125MHzのクロックを MAC クロック rx_clk に接続します。送信の場合は、125 MHz ク
ロックを PHY GMII または RGMII に供給します。125MHz のクロック・ソースを
MAC 送信クロック(tx_clk)に接続します。
MAC からの GMII または RGMII データとともに中心となるクロックを生成するに
は、テクノロジ特有のクロック・ドライバが必要です。クロック・ドライバは、
PLL、ディレイ・ライン、または DDR フリップ・フロップで構成されます。
OP オペコード。 トランザクション・タイプを定義します。
Addr1
PHY デバイス・アドレス(PHYAD)。 大 32 のデバイスにアドレスを指定できます。 PHY デバイス 0 の場合、Addr1 フィールドは mdio_addr0レジスタでコンフィギュレーションされた値に設定されます。 PHY デバイス 1 の場合、Addr1 フィールドは mdio_addr1レジスタでコンフィギュレーションされた値に設定されます。
Addr2 レジスタ・アドレス。各 PHY には 大 32 のレジスタがあります。
TA
ターンアラウンド・タイム。データ・バスを書き込みから読み出しに切り替えて読み出し動作を行うために、読み出し動作用に 2 ビット時間が予約されています。PHY デバイスは、データ・フェーズにそのレジスタの内容を表示し、ターンアラウンド・フェーズの 2 番目のビットからバスをドライブします。
Data PHY デバイスに対して書き込みまたは読み出しが行われた 16 ビット・データ
Idle フレーム間で、MDIO データ信号はトライ・ステートになります。
表 4–9. MDIOフレーム・フィールドの説明 (2 / 2 )
名称 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–2510/100/1000 イーサネットMAC
図 4–10 に、ギガビット・イーサネット PHY を GMII 経由で MAC に接続する方法を
示します。
プログラマブル 10/100イーサネット10/100 イーサネット PHY は、MII を介して MAC ファンクションに接続されます。
受信パスでは、PHY デバイスによって提供される 25MHz(100Mbps)または
2.5MHz(10Mbps)のクロックを MAC クロック(rx_clk)に接続します。送信パ
スでは、PHY デバイスによって提供される 25MHz(100Mbps)または 2.5MHz(10Mbps)のクロックを MAC クロック(tx_clk)に接続します。図 4–11 に、プ
ログラマブル 10/100 イーサネット動作に必要とされる接続を示します。
図 4–10. GMIIによる MACへのギガビット PHYの接続
Unu
sed
Altera FPGA
ena_10eth_mode
set_10
set_1000
tx_clk
m_tx_d(3:0)m_tx_en
m_tx_err
gm_tx_d(7:0)gm_tx_engm_tx_err
rx_clk
m_rx_d(3:0) m_rx_en
gm_rx_d(7:0)gm_rx_dvgm_rx_err
m_rx_err
Reference Clock125 MHz
10/100/1000 Ethernet
MACGigabitPHY
Vcc
clk_in/xtaligtx_clk
txd(7:0)
tx_entx_err
rx_clk
rx_dvrxd(7:0)
rx_err
図 4–11. 10/100 PHYインタフェース
10/100 PHY
10/100/1000 Ethernet
MAC
Unu
sed
Altera FPGA
Optional tie to 0 if not used
Reference Clock25Mhz
ena_10eth_mode
set_10set_1000
tx_clkm_tx_d(3:0)m_tx_enm_tx_err
gm_tx_d(7:0)gm_tx_engm_tx_err
rx_clk
m_rx_d(3:0)m_rx_en
gm_rx_d(7:0)gm_rx_dvgm_rx_err
m_rx_err
tx_clk
txd(3:0)
tx_entx_err
clk_in/xtali
rx_clk
rxd(3:0)rx_dvrx_err
m_rx_colm_rx_crs
m_rx_col
m_rx_crs
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–26 4機能の説明10/100/1000 イーサネットMAC
プログラマブル 10/100/100イーサネット動作通常、10/100/1000 イーサネット PHY デバイスは、共有インタフェースを実装しま
す。このインタフェースは、MII/RGMII を介して 10/100 Mbps の MAC に、または
GMII/RGMII を介してギガビット MAC に接続できます。
受信パスでは、PHY デバイスによって提供されたクロック(2.5 MHz、25 MHz、ま
たは 125 MHz)を MAC クロック rx_clkに接続します。PHY インタフェースは、
MAC ファンクションの MII(アクティブな PHY 信号)および GMII 両方に接続され
ます。
送信パスでは、10/100 モードで動作する標準プログラマブル PHY デバイスは、2.5 MHz(10 Mbps)クロックまたは 25 MHz(100 Mbps)クロックを生成します。ギ
ガビット・モードでは、PHY デバイスは MAC ファンクションから 125 MHz クロッ
クを要求します。MAC ファンクションはクロック出力を生成しないので、外部ク
ロック・モジュールを使用して、MAC ファンクションと PHY デバイスに 125 MHzクロックを供給します。10/100 モードでは、PHY に対して MAC が生成したクロッ
クはトライ・ステートにすることができます。
送信中に、MAC コントロール信号 eth_modeは、MII または GMII のいずれかを選
択します。MAC がギガビット・モードで動作するとき、MAC ファンクションは
eth_mode信号をアサートします。これによって、MAC GMII を PHY インタフェース
に接続できます。MAC ファンクションが 10/100 モードで動作するとき、
eth_mode信号はディアサートされます。このモードでは、MAC MII が PHY インタ
フェースに接続されます。
図 4–12 に、MII/GMII によるプログラマブル 10/100/1000 イーサネット動作に必要と
される接続を示します。
図 4–12. MII/GMIIによる 10/100/1000 PHYインタフェース
Altera FPGA
x5
Unused
10/100/1000 Ethernet
MAC
eth_mode
set_1000set_10
tx_clk
m_tx_d(3:0)m_tx_enm_tx_errgm_tx_d(7:0)gm_tx_engm_tx_err
rx_clkm_rx_d(3:0)m_rx_en
gm_rx_d(7:0)
gm_rx_dvgm_rx_err
m_rx_err
en_10
25MHz
10/100/1000 PHY
Osc
125/25/2.5 MHz
25MHz
Optional tie to 0 if not used
clk_in/xtali
25/2.5 MHz
gtx_clk
txd(7:0)tx_entx_err
tx_clk
rx_clk
rxd(7:0)
rx_dvrx_err
ClockDriver
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–27オプションの PMA が組み込まれた 1000BASE-X/SGMII PCS
図 4–13 に、 RGMII によるプログラム可能な 10/100/1000 イーサネット動作に必要な
接続を示します。
オプションの PMAが組み込まれた 1000BASE-X/SGMII PCSアルテラの 1000BASE-X/SGMII PCS ファンクションは、IEEE 802.3 の 36 項で指定
された機能を実装します。1000BASE-X/SGMII PCS ファンクションは、GMII(1000BASEX/SGMII)または MII(SGMII)を介してアクセス可能です。PCS ファ
ンクションは、業界標準の 10 ビット・インタフェース(TBI)を介してオンチップ
またはオフチップ SERDES コンポーネントに接続します。
PCS ファンクションは、エンベデッド PMA(フィジカル・メディア・アタッチメン
ト)を含めるようにコンフィギュレーションできます。PMA は、外部 PMD(フィ
ジカル・ミディアム・ディペンデント)デバイスとともに動作します。PMD は外部
の銅線ネットワークまたはファイバ・ネットワークと接続します。アルテラ・デバ
イスと PMD デバイス間の相互接続は、TBI または 1.25 Gbps のシリアル接続です。
PCS ファンクションは、次の外部 PHY をサポートします。
■ 1000 BASE-X PHY
■ PHY が SGMII をサポートする場合、10BASE-T、100BASE-T および 1000BASE-T PHY
図 4–13. RGMIIによる 10/100/1000 PHYインタフェース
Altera FPGA
ena_10eth_mode
set_10
set_1000
tx_clk
tx_controlrgmii_out[3:0]
rx_clkrx_control
rgmii_in[3:0]
10/100/1000 PHY
Reference Clock125 MHz
10/100/1000 Ethernet
MAC
gtx_clk
tx_en
txd[3:0]
rx_clkrx_dv
rxd[3:0]
clk_in/xtaliClock
Divider
Optional tie to 0 if not used
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–28 4機能の説明オプションの PMAが組み込まれた 1000BASE-X/SGMII PCS
アーキテクチャ図 4–14 に、PCS ファンクションのブロック図を示します。
図 4–14. 1000BASE-X/SGMII PCS
SGMII Receive
Converter
SGMII Transmit Converter
Configuration
Encapsulation8b/10b
Encoder
De-encapsulation &
Synchronization
8b/10b Decoder
Auto-Negotiation
1000BASE-X/SGMII PCS
1000 Base-X PCS Transmit Control
1000 Base-X PCS Receive Control
TBIReceive
TBITransmit
StatusLEDs
Avalon-MM Interface
MII/GMIIReceive
MII/GMIITransmit
Ethernet SideMAC Side
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–29オプションの PMA が組み込まれた 1000BASE-X/SGMII PCS
図 4–15 に、エンベデッド PMA が組み込まれた PCS ファンクションのブロック図を
示します。
送信動作このセクションでは、送信動作について説明します。この動作には、フレーム・カ
プセル化およびエンコーディングが含まれます。
フレーム・カプセル化MAC フレーム内の 初のプリアンブル・バイトは、フレーム開始 /S/ シンボルに置
き換えられます。そして、MAC フレーム内の残りのバイトは、標準 8B/10B でエン
コードされたキャラクタにエンコードされます。 後の FCS バイトの後に、送信さ
れたキャラクタに応じて、終了フレームの /T/ /R/ /R/ または /T/ /R/ シーケンスが挿
入されます。フレームとフレームの間には、PCS ファンクションは /I/ シンボルを送
信します。
PCS ファンクションが MAC ファンクションからエラー付きのフレーム(フレーム
伝送中に gm_tx_err信号がアサートされた)を受信すると、PCS ファンクション
はエラーをエンコードするために /V/ キャラクタを挿入します。
図 4–15. PMAが組み込まれた 1000BASE-X/SGMII PCS
SGMII Receive
Converter
SGMII Transmit Converter
Configuration
Encapsulation8b/10b
Encoder
De-encapsulation &
Synchronization
8b/10b Decoder
Auto-Negotiation
1000BASE-X/SGMII PCS with PMA
1000 Base-X PCS Transmit Control
1000 Base-X PCS Receive Control
1.25 GbpsSerial Receive
StatusLEDs
Avalon-MM Interface
MII/GMIIReceive
MII/GMIITransmit
1.25 GbpsSerial Transmit
CDR & De-
serializer
Serializer
PMA
PHY
Loopback
Ethernet SideMAC Side
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–30 4機能の説明オプションの PMAが組み込まれた 1000BASE-X/SGMII PCS
8B/10Bエンコーディング8B/10B エンコーダは、8 ビット・ワードを 10 ビット・シンボルにマップして、DCバランストを生成し、 大ラン・レングス 5 のストリームのディスパリティを確保
します。
受信動作このセクションでは、受信動作について説明します。この受信動作には、カンマ検
出、デコーディング、非カプセル化、同期およびキャリア検知が含まれます。
1 PCS およびエンベデッド PMA が組み込まれたコンフィギュレーションは、入力基準
クロックとリカバリ・クロックの間の差異がゼロ ppm である場合にのみ、16K バイ
トより長いフレーム長をサポートできます。
カンマ検出カンマ検出機能は、PMA デバイスから受信した連続サンプル内で、10 ビットのエン
コードされたカンマ・キャラクタ(K28.1/K28.5/K28.7)を検索します。 K28.1/K28.5/K28.7 カンマ・コード・グループが検出されると、PCS ファンクショ
ンはデータ・ストリームを有効な 10 ビット・キャラクタ境界にリアラインメントし
ます。アラインメントされたストリームは、その後、標準 8b/10b デコーダでデコー
ドされます。
カンマ検出機能は、受信同期ステート・マシンがリンク同期を失うと、有効なカン
マ・キャラクタの検索を再開します。
8b/10bデコーディング8b/10b デコーダは、DC バランシングを確保し、デコードされた 8 ビット・スト
リームのデータをフレームの非カプセル化機能用に作成するために、ディスパリ
ティ・チェックを実行します。
フレームの非カプセル化/I/ /S/ シーケンスが受信されると、フレームの非カプセル化ステート・マシンはフ
レームの開始部を検出し、/S/ をプリアンブル・バイト(0x55)に置き換えます。フ
レーム・バイトはデコードされて MAC ファンクションに送信されます。/T/ /R/ /R/または /T/ /R/ シーケンスは、MAC ファンクション用にフレームの終了としてデコー
ドされます。
/V/ キャラクタはデコードされて、フレーム・エラーとして MAC ファンクションに
伝送されます。ステート・マシンは、/I/ /I/ ( アイドル ) または /I/ /S/ (フレーム開
始)以外のシーケンスを誤ったキャリアとしてデコードします。
フレーム受信中に、非カプセル化ステート・マシンは無効なキャラクタを検索しま
す。ステート・マシンが無効なキャラクタを検出した場合、非カプセル化ステート・
マシンは MAC ファンクションにエラーを通知します。
同期化リンク同期は常にデコードされたデータ・ストリームを監視し、基本の受信チャネ
ルが動作可能かどうかを判別します。 カンマのある 3 つのコード・グループがエ
ラー無しで連続的に受信された場合、リンク同期ステート・マシンはリンク同期を
確立します。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–31オプションの PMA が組み込まれた 1000BASE-X/SGMII PCS
リンク同期が確立されると、リンク同期ステート・マシンは受信した無効なキャラ
クタ数をカウントします。ステート・マシンは、受信した無効なキャラクタ、およ
び誤って配置されたカンマ・キャラクタごとに、内部エラー・カウンタをインクリ
メントします。T 有効なキャラクタを 4 つ連続で受信すると、内部エラー・カウン
タはデクリメントされます。 カウンタが 4 に達すると、リンク同期が失われます。
リンク同期が確立されると、PCS ファンクションは led_link 信号を 1 にします。
この信号は、ボード上の LED による共通のビジュアル・アクティビティ・チェック
として使用することができます。
キャリア検知リンク同期が確立され、送受信のカプセル化または非カプセル化ステート・マシン
が、アイドル状態でもエラー状態でもない場合、キャリア検知ステート・マシンは
アクティビティを検出します。
キャリア検知ステート・マシンは、アクティビティを検出すると、mii_rx_crs 信号および led_crs信号を 1 にします。led_crs 信号は、ボード上の LED による共
通のビジュアル・アクティビティ・チェックとして使用することができます。
衝突検出アイドルでないフレームが PHY から受信され、同時に PHY に送信されると、衝突
が発生します。衝突が検出できるのは、SGMII モードかつ半二重モードの場合のみ
です。
衝突が発生すると、衝突検出ステート・マシンは mii_rx_col信号および
led_col信号を 1 にします。led_col 信号は、ボード上の LED による共通のビジュ
アル・アクティビティ・チェックとして使用することができます。
送受信レイテンシアルテラは、エンベデッド PMA が組み込まれた PCS ファンクションの送受信レイ
テンシに関する以下の定義を使用します。
■ 送信レイテンシは、 初のビットが MAC 側のインタフェース上で初めて使用可能
になった後、MAC ファンクションが PMA-PCS インタフェース(MII/GMII)上
にその 初のビットを送信するのに要する時間です。
■ 受信レイテンシは、 初のビットが PM-PCS インタフェース(MII/GMII)に受信
された後、MAC ファンクションが MAC 側のインタフェース上にその 初のビッ
トを伝達するのに要する時間です。
表 4–10 に、エンベデッド PMA が組み込まれた PCS ファンクションの送受信レイテ
ンシを示します。
1 これらのレイテンシはシミュレーションから得られます。トランシーバ・レイテン
シについては、該当するデバイス・ファミリのトランシーバ・ハンドブックを参照
してください。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–32 4機能の説明オプションの PMAが組み込まれた 1000BASE-X/SGMII PCS
SGMIIコンバータif_modeレジスタの SGMII_ENAビットを 1 に設定することで、SGMII コンバータを
イネーブルすることができます。SGMII コンバータがイネーブルされ、 if_modeレ
ジスタの USE_SGMII_ANビットが 1 に設定された場合、SGMII コンバータは、
PHY によって通知された機能で自動的にコンフィギュレーションされます。それ以
外の場合は、アルテラは、if_modeレジスタの SGMII_SPEEDビットで SGMII コンバータをコンフィギュレーションすることを推奨します。
1000BASE-X モードでは、PCS ファンクションは常にギガビット・モードで動作
し、データ重複はディセーブルされます。
送信ギガビット・モードでは、PCS と MAC ファンクションはどちらも同じレートで動
作しなければなりません。 送信コンバータは、MAC ファンクションからの各バイト
を一度に PCS ファンクションに送信します。
100 Mbps モードでは、送信コンバータは、PCS ファンクションが受信した各バイ
トを 10 回複製します。10 Mbps モードでは、送信コンバータは、MAC ファンク
ションから PCS ファンクションに送信された各バイトを 100 回複製します。
受信ガビット・モードでは、PCS と MAC ファンクションはどちらも同じレートで動作
しなければなりません。 送信コンバータは、PCS ファンクションからの各バイトを
一度に MAC ファンクションに送信します。
100 Mbps モードでは、受信コンバータは、PCS ファンクションから受信した 10 バ
イトのうちの 1 バイトを MAC に送信します。10 Mbps モードでは、受信コンバー
タは、PCS ファンクションから受信した 100 バイトのうちの 1 バイトを MAC ファ
ンクションに送信します。
表 4–10. PCSの送受信レイテンシ
PCS コンフィギュレーション
レイテンシ (ns)
送信 受信
GX トランシーバを備えた PCS
10 Mbps SGMII 3368 2489100 Mbps SGMII 488 3351000 Mbps SGMII 184 1351000BASE-X 24 40LVDS Soft-CDR I/O を備えた PCS
10 Mbps SGMII 3600 2344100 Mbps SGMII 440 3441000 Mbps SGMII 192 1841000BASE-X 40 104
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–33オプションの PMA が組み込まれた 1000BASE-X/SGMII PCS
オート・ネゴシエーションオート・ネゴシエーションは、リンク同期がシステム起動時に確立されると開始で
きるオプションの機能です。オート・ネゴシエーションを自動的に開始するには、
PCS controlレジスタの AUTO_NEGOTIATION_ENABLEビットを 1 に設定しま
す。オート・ネゴシエーション中に、PCS ファンクションはそのデバイス機能を通
知し、リンク・パートナ・デバイスと交換します。
if_modeレジスタの SGMII_ENAビットが 0 に設定されている場合、PCS ファンク
ションは 1000BASE-X で動作します。それ以外の場合、動作モードは SGMII です。
以下のセクションでは、各動作モードでのオート・ネゴシエーション・プロセスに
ついて説明します。
PCS レジスタについて詳しくは、14 ページの「PCS コンフィギュレーションのレジ
スタ・スペース」を参照してください。
1 デザインのシミュレーション中に、シミュレーション時間を短縮するために、オー
ト・ネゴシエーションをディセーブルすることができます。デザインでオート・ネ
ゴシエーションをイネーブルする場合、オート・ネゴシエーション・リンク・タイ
マを短縮するために、link_timer 時間をより小さい値に設定します。
1000BASE-Xオート・ネゴシエーションリンク同期が確立されると、通知レジスタは 0x00 に設定された状態で、PCS ファ
ンクションは、リンク・パートナ・デバイスへの /C/ シーケンス(コンフィギュレー
ション・シーケンス)の送信を開始します。シーケンスは、PCS レジスタ空間に
マップされた link_timer レジスタに指定されている時間、送信されます。
link_timerの時間が切れると、リンク・パートナに対して ACK ビットが 0 に設定さ
れた状態で、PCS dev_abilityレジスタが通知されます。オート・ネゴシエー
ション・ステート・マシンは、リンク・パートナから /C/ シーケンスが 3 つ連続し
て受信していないかどうかチェックします。
その後、オート・ネゴシエーション・ステート・マシンは、通知 dev_ability レ
ジスタの ACKビットを 1 に設定し、ACK ビットが 1 に設定された状態でリンク・
パートナから /C/ シーケンスが 3 つ連続して受信されているかどうかチェックしま
す。
オート・ネゴシエーションは、リンク・パートナから連続した /C/ シーケンスを更に
受信しないことを確認するために、link_timerレジスタでコンフィギュレーショ
ンされた値の時間だけ待ちます。リンク・タイマの時間が切れた後にアイドル・
シーケンスが 3 つ連続して受信されると、オート・ネゴシエーションは正常に完了
します。34 ページの図 4–16 に、この動作のシーケンスを示します。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–34 4機能の説明オプションの PMAが組み込まれた 1000BASE-X/SGMII PCS
オート・ネゴシエーションが正常に完了すると、リンク・パートナ・デバイスに
よって通知された機能が partner_ability レジスタに含まれ、statusレジスタ
の AUTO_NEGOTIATION_COMPLETEビットは 1 に設定されます。
リンク同期が失われて再度確立された場合、または PCS controlレジスタの
RESTART_AUTO_NEGOTIATION ビットが 1 に設定された場合は、PCS ファンクショ
ンはオート・ネゴシエーションを再開します。
SGMIIIオート・ネゴシエーションSGMII モードでは、PHY デバイスの機能がリンク・パートナに通知され、リンク・
パートナ PHY デバイスと交換されます。
if_modeレジスタの SGMII_ENAビットおよび USE_SGMII_AN ビットが 1 の場合、
オート・ネゴシエーションが完了すると、PCS ファンクションは、PHY デバイスに
よって通知された機能で自動的にコンフィギュレーションされます。
SGMII_ENAビットが 1 で、USE_SGMII_AN ビットが 0 の場合、PCS ファンクション
は、if_mode レジスタの SGMII_SPEED ビットおよび SGMII_DUPLEXビットでコ
ンフィギュレーションされます。
図 4–16. 単純化したオート・ネゴシエーション
/C/ with 0x00 ability
Link T
imer
/C/ with dev_ability register and ACK bit set to 0
3 Consecutive
/C/
3 Consecu
tive /C/
with A
cknow
ledge
Send /I/ (Idle) sequence
Data
Link T
imer
Link Partner PCS
Link Synchronization
Acquired
/C/ with dev_ability register and ACK bit set to 1
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–35オプションの PMA が組み込まれた 1000BASE-X/SGMII PCS
f 詳細については、 「CISCO Serial-GMII Specifications」を参照してください。
10ビット・インタフェースエンベデッド PMA を備えた PCS バリエーションでは、PCS ファンクションは TBIを外部 SERDES に実装します。
送信時には、リモート・ノードがデータを正しく受信するように、SERDES は、図
4–17 に示すように、TBI 出力バスの 下位ビットである tbi_tx_d[0] が 初に、
TBI 出力バスの 上位ビットである tbi_tx_d[9]が 後になるようにシリアル化
する必要があります。
受信時には、図 4–18 に示すように、SERDES は、TBI の 下位ビットが 初に、
TBI の 上位ビットが 後になるように非シリアル化する必要があります。
PHYループバックGX トランシーバをターゲットとする PMA を備えた PCS バリエーションでは、
PMD とは分離して、PCS およびエンベデッド PMA ファンクションをテストするた
めに、シリアル・インタフェース上のループバックをイネーブルすることができま
す。ループバックをイネーブルするには、PCS control レジスタの sd_loopbackビットを 1 に設定します。
シリアル・ループバックのオプションは、Stratix V および GX トランシーバを備え
た Cyclone IV デバイスではサポートされていません。
図 4–17. SERDESシリアル化の概要
図 4–18. SERDES非シリアル化の概要
serialization
tbi_tx_d(9:0)
1.25GbpsSerial Stream
9 0
de-serialization
tbi_rx_d(9:0)
1.25GbpsSerial Stream
9 0
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–36 4機能の説明オプションの PMAが組み込まれた 1000BASE-X/SGMII PCS
PHYパワーダウン パワーダウンは、PCS controlレジスタの POWERDOWN ビットによって制御され
ます。システム管理エージェントがパワーダウンをイネーブルすると、PCS ファン
クションは powerdown 信号を発生します。この信号を使用して、PCS ファンク
ション・クロックをオフに切り替えるためのテクノロジ特有の回路を制御して、ア
プリケーション・アクティビティを抑制することができます。
PHY がパワーダウン状態になると、PCS ファンクションはリセット・モードにな
り、GMII 送信および TBI 受信インタフェースのアクティビティはすべて無視されま
す。マネージメント・インタフェースはアクティブなままで、MAC 層デバイスから
の管理トランザクションに応答します。
エンベデッド PMAを備えた PCSバリエーションによるパワーダウンGX トランシーバのあるデバイスをターゲットとするエンベデッド PMA を備えた
PCS バリエーションの場合、パワーダウン信号は GX トランシーバのパワーダウン
に内部接続されます。これらのデバイスでは、パワーダウン機能はクワッド・ポー
ト・トランシーバ・ブロック間で共有されます。イーサネット・デザインは、同じ
クワッド・ポート・トランシーバ・ブロックを使用するために、共通の
gbx_pwrdn_in信号を共有する必要があります。
図 4–19. シリアル・ループバック
SERDES
Transmit
SERDES
Receive
Ten-bit
Interface
SERDES
Serial Receive
Serial TransmitPCS Transmit
PCS Receive
sd_loopback
1000BASE-X PCS
Control
MDIO
Slave
図 4–20. パワーダウン
MDIOSlave
powerdown
1000BASE-X PCS
Control
Powerdown Control(Technology Specific)
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
4機能の説明 4–37オプションの PMA が組み込まれた 1000BASE-X/SGMII PCS
Stratix V 以外のデバイスをターゲットとするデザインの場合、特定のクワッド・
ポート・ブロック内のトランシーバを効率的に使用するために、パワーダウン信号
をエクスポートして、ユーザー独自のパワーダウン・ロジックを実装できます。信
号をエクスポートするために、 Export transceiver powerdown signal パラメータを
オンにします。パラメータについて詳しくは、5 ページの「PCS/Transceiver のオプ
ション」を参照してください。
図 4–21 に、エクスポートされたパワーダウン信号によるパワーダウン・コントロー
ルを示します。
リセットハードウェア・リセットは各クロック・ドメインに同期されたすべてのロジックを
リセットします。一方、ソフトウェア・リセットは PCS ステート・マシン、カンマ
検出機能、および 8B10B エンコーダ/デコーダのみをリセットします。PCS で
ハードウェア・リセットをトリガするには、reset_reg_clk、 reset_tx_clk、 または reset_rx_clk リセット信号をアサートします。ソフトウェア・リセットを
トリガするには、control レジスタの RESETビットを 1 に設定します。
エンベデッド PMA を備えた PCS バリエーションでは、ハードウェア・リセットを
トリガするために、該当するリセット信号またはパワーダウン信号をアサートしま
す。reset_rx_clk、 reset_tx_clk、または gbx_pwrdn_in信号をアサートし
た直後に、リセット信号をアサートする必要があります。また、アクティブ Low の
rx_freqlockedが Low になると、リセット・シーケンスが開始されます。
図 4–22 に、エンベデッド PMA を備えた PCS のリセット分配を示します。
図 4–21. エクスポート・トランシーバ・パワーダウン信号によるパワーダウン
1000BASE-X PCS
PMA
POWERDOWNCONTROL
pcs_pwrdn_out
gxb_pwrdn_in
図 4–22. エンベデッド PMAを備えた PCSのリセット分配
PMA
ResetSequencer
ResetSynchronizer
ResetSynchronizer
PSC
reset
reset_tx_clk
reset_rx_clk
gbx_pwrdn_in
rx_freqlocked
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
4–38 4機能の説明オプションの PMAが組み込まれた 1000BASE-X/SGMII PCS
1 rx_freqlocked 信号およびトランシーバ・リセットについて詳しくは、該当する
デバイス・ファミリのトランシーバ・ハンドブックを参照してください。
PCS およびエンベデッド PMA バリエーションを備えた MAC でハードウェア・リ
セットを実行するには、reset または gxb_pwrdn_in信号をアサートします。
1 reset 信号は、 低 3 クロック・サイクルアサートする必要があります。
図 4–23 に、PCS およびエンベデッド PMA を備えた MAC のリセット分配を示しま
す。
図 4–23. PCSおよびエンベデッド PMAを備えた MACのリセット分配
PMA
ResetSequencer
ResetSynchronizer
ResetSynchronizer
MAC
reset gbx_pwrdwn
PSC
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
5. コンフィギュレーション・レジスタ・スペース
MAC コンフィギュレーション・レジスタ・スペース表 5–1 に、MAC レジスタ空間の概要を示します。レジスタは、MAC ファンクショ
ンのさまざまな面をコンフィギュレーションし、ステータスおよび統計情報カウン
タを取得するのに使用されます。
1 マルチ・ポート MAC では、連続するレジスタ空間がすべてのポートに割り当てられ、
Avalon-MM コントロール・インタフェースによってアクセスされます。例えば、
初のポートのレジスタ空間ベース・アドレスが 0x00 である場合、次のポートのベー
ス・アドレスは 0x100 などになります。インスタンス間で共有されるレジスタは、
初のポートのレジスタ空間を占有します。他のポートのレジスタ空間内にあるこ
れらのレジスタを更新しても、コンフィギュレーションに影響はありません。
表 5–1. MACレジスタ空間の概要 (1 / 2 )
Dwordオフセット セクション 説明
0x00 – 0x17 ベース・コンフィギュレーション
MAC ファンクションをコンフィギュレーションするためのベース・レジスタ。少なくとも、次のファンクションをコンフィギュレーションする必要があります。
■ プライマリ MAC アドレス (mac_0/mac_1)
■ 送受信パスをイネーブルします(command_configレジスタの TX_ENAビットおよび RX_ENAビットを 1 に設定)。
次のレジスタは、マルチ・ポート MAC のすべてのインスタンス間で共有されます。
■ rev
■ scratch
■ frm_length
■ pause_quant
■ mdio_addr0 and mdio_addr1
■ tx_ipg_length
ベース・コンフィギュレーション・レジスタについて詳しくは、2 ページの「ベース・コンフィギュレーション・レジスタ (Dword
オフセット 0x00 – 0x17)」を参照してください。
0x18 – 0x38 統計情報カウンタトラフィック統計情報を収集するカウンタ。統計情報カウンタについて詳しくは、 10 ページの「統計情報カウンタ (Dword オフセット 0x18 – 0x38)」を参照してください。
0x3A 送信コマンド データパス・コントロール・レジスタを送受信します。これらのレジスタについて詳しくは、 13 ページの「送受信コマンド・レジスタ (Dword オフセット 0x3A – 0x3B)」を参照してください。
0x3B 受信コマンド
0x3C – 0x3E 拡張統計情報カウンタ
選択している統計情報カウンタの上位 32 ビット。これらのレジスタは、拡張統計情報カウンタを使用するオプションをオンにする場合に使用されます。これらのカウンタについて詳しくは、10ページの「統計情報カウンタ (Dword オフセット 0x18 – 0x38)」
を参照してください。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
5–2 5コンフィギュレーション・ レジスタ・スペースMAC コンフィギュレーション・レジスタ・スペース
ベース・コンフィギュレーション・レジスタ (Dwordオフセット 0x00 – 0x17)
表 5–2 に、MAC ファンクションのコンフィギュレーションに使用できるベース・レ
ジスタを示します。ソフトウェア・リセットは、command_config レジスタの 初
の 2 ビット(TX_ENA および RX_ENA = 0) 以外に、これらのレジスタをリセットし
ません。
0x3F 予約 未使用
0x40 – 0x7F マルチキャスト・ハッシュ・テーブル
マルチキャスト・アドレスを解決するための 64 エントリのライト・オンリ・ハッシュ・テーブル。各エントリのビット 0 のみが重要です。ハッシュ・テーブルのアドレス・オフセットに 1 が書き込まれる場合、MAC はアドレス(ビット 5:0)の値にハッシュするすべてのマルチキャスト MAC アドレスを受け入れます。それ以外の場合、MAC はマルチキャスト・アドレスを拒否します。このテーブルはリセット時にクリアされます。
ハッシングは、10/100 および 1000 Mbps の small-MAC コア・バリエーションではサポートされません。
0x80 – 0x9F
MDIO スペース 0
または PCS ファンクション・コンフィギュレーション
PHY デバイスのレジスタ 0 ~レジスタ 31 にマップするためのMDIO スペース 0 および MDIO スペース 1 です。これらの MDIOスペースのアドレスはそれぞれ mdio_addr0およびmdio_addr1レジスタでコンフィギュレーションされています。例えば、PHY デバイス 0 のレジスタ 0 は Dword オフセット 0x80にマップされ、レジスタ 1 は Dword オフセット 0x81 にマップされます。以降同様に続きます。
MDIO スペース 0 または MDIO スペース 1 にリード / ライトを行うと、直ちに対応する MDIO トランザクションによる PHY レジスタのリード / ライトをトリガします。各レジスタのビット[15:0] のみが重要です。ビット [31:16] に 0 を書き込み、読み取り時にそれらを無視します。
PCS ファンクションを備えていないバリエーションでは、2 つのPHY デバイスにマップするために MDIO スペース 0 およびMDIO スペース 1 を使用することができます。
PCS ファンクションを備えた MAC バリエーションでは、PCSファンクションは常にデバイス 0 であり、そのコンフィギュレーション・レジスタ (14 ページの「PCS コンフィギュレーションのレジスタ・スペース」) は MDIO スペース 0 を占有します。MDIO スペース 1 は、PHY デバイスにマップするのに使用できます。
0xA0 – 0xBF MDIO スペース 1
0xC0 – 0xC7 セカンダリ・アドレスセカンダリ・ユニキャスト・アドレス です。これらのアドレスについて詳しくは、 14 ページの「セカンダリ・アドレス (Dword オフセット 0xC0 – 0xC7)」を参照してください。
0xC8 – 0xFF 予約 (1) 未使用
表 5–1の注:(1) アルテラは、予約済みレジスタ内のビットをすべて 0 に設定し、読み出し時にはそれらのレジスタを無視することを推奨し
ます。
表 5–1. MACレジスタ空間の概要 (2 / 2 )
Dwordオフセット セクション 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–3MAC コンフィギュレーション・レジスタ・スペース
表 5–2. レジスタ・マップ (1 / 4 )
Dwordオフセット 名称 R/W 説明
HW リセット
0x00 rev
RO ■ ビット [15:0]—MegaCore ファンクションの現行バージョンに設定されます。
■ ビット [31:16]— 顧客固有のリビジョン。MegaCoreファンクションのインスタンスに対して生成されたトップレベル・ファイルで定義されているCUST_VERSION パラメータによって指定されます。これらのビットは、MegaCore ファンクションのコンフィギュレーション時に 0 に設定されます。
<IP Version Number>
0x01 scratch (1) RW スクラッチ・レジスタ。 デバイス・メモリ動作をテストするためのメモリ・ロケーションを提供します。
0
0x02 command_config
RW MAC コンフィギュレーション・レジスタ。 MAC ファンクションを制御およびコンフィギュレーションするには、このレジスタを使用します。MAC ファンクションは、このレジスタの TX_ENA および RX_ENAビットがオンになるとすぐに、動作を開始します。したがって、アルテラはこのレジスタを 後にコンフィギュレーションすることを推奨しています。
ビットの説明については、 6 ページの「Command_Configレジスタ (Dword オフセット 0x02)」 を参照してください。
0
0x03 mac_0 RW 6 バイトの MAC プライマリ・アドレス。MAC アドレスの 初の 上位 4 バイトが、逆順で mac_0を占有します。 MAC アドレスの 後の 2 バイトが、逆順でmac_1の 下位 2 バイトを占有します。
例えば、MAC アドレスが 00-1C-23-17-4A-CB の場合、以下のアサインメントが行われます。
mac_0 = 0x17231c00
mac_1 = 0x0000CB4a
プロミスキャス・モードがディセーブルされる(command_configレジスタ内のPROMIS_ENビット = 0)場合、有効な MAC アドレスでこれらのレジスタをコンフィギュレーションすることを確認してください。
0
0x04 mac_1
RW 0
0x05 frm_length
RW ■ ビット [15:0]—16 ビットの 大フレーム長(バイト単位)。 MegaCore ファンクションは、受信フレームの長さをこの値と照合します。標準値は 1518 です。
この 大フレーム長は、10/100 および 1000 のsmall-MAC コア・バリエーションでは 1518 に固定されます。
■ ビット [31:16]— 未使用
1518
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–4 5コンフィギュレーション・ レジスタ・スペースMAC コンフィギュレーション・レジスタ・スペース
0x06 pause_quant
RW ■ ビット [15:0]—16 ビットのポーズ・クアンタ。このレジスタは、ローカル・デバイスの輻輳時にリモート・デバイスに送信されるポーズ・クアンタを指定するのに使用されます。MegaCore ファンクションは、ポーズ・フレーム内のポーズ・クアンタ(P1、P2)フィールドをこのレジスタの値に設定します。
10/100 および 1000 の small-MAC コア・バリエーションは、フロー制御をサポートしません。
■ ビット [31:16]— 未使用
0
0x07 rx_section_empty
RW 受信 FIFO バッファの可変長の section empty スレッショルド。このスレッショルドは、FIFO バッファの深さに基づいて決定されます。このスレッショルドは通常、(FIFO 深さ – 16)に設定されます。内部パイプライン・レイテンシのために、スレッショルドを 3 より大きい値に設定することが推奨されています。
このレジスタは、10/100 および 1000 の small-MAC コア・バリエーションでは固定値(FIFO 深さ –16)に設定されます。
0
0x08 rx_section_full
RW 受信 FIFO バッファの可変長の section full スレッショルド。このスレッショルドは、FIFO バッファの深さに基づいて決定されます。このスレッショルドは通常 16 に設定されます。内部パイプライン・レイテンシのために、スレッショルドを 3 より大きい値に設定することが推奨されています。
このレジスタは、10/100 および 1000 の small-MAC コア・バリエーションでは固定値 16 に設定されます。
0
0x09 tx_section_empty
RW 送信 FIFO バッファの可変長の section empty スレッショルド。このスレッショルドは、FIFO バッファの深さに基づいて決定されます。このスレッショルドは通常、(FIFO 深さ – 16)に設定されます。内部パイプライン・レイテンシのために、スレッショルドを 3 より大きい値に設定することが推奨されています。
このレジスタは、10/100 および 1000 の small-MAC コア・バリエーションでは固定値(FIFO 深さ –16)に設定されます。
0
0x0A tx_section_full
RW 送信 FIFO バッファの可変長の section full スレッショルド。このスレッショルドは、FIFO バッファの深さに基づいて決定されます。このスレッショルドは通常 16 に設定されます。内部パイプライン・レイテンシのために、スレッショルドを 3 より大きい値に設定することが推奨されています。
このレジスタは、10/100 および 1000 の small-MAC コア・バリエーションでは固定値 16 に設定されます。
0
表 5–2. レジスタ・マップ (2 / 4 )
Dwordオフセット 名称 R/W 説明
HW リセット
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–5MAC コンフィギュレーション・レジスタ・スペース
0x0B rx_almost_empty
RW 受信 FIFO バッファの可変長の almost empty スレッショルド。このスレッショルドは、FIFO バッファの深さに基づいて決定されます。
このレジスタが 0 に設定されている場合、MAC ファンクションは ff_rx_a_empty 信号をアサートしません。内部パイプライン・レイテンシのために、スレッショルドを 3 より大きい値に設定します。このスレッショルドは通常 8 に設定されます。
このレジスタは、10/100 および 1000 の small-MAC コア・バリエーションでは固定値 8 に設定されます。
0
0x0C rx_almost_full
RW 受信 FIFO バッファの可変長の almost full スレッショルド。このスレッショルドは、FIFO バッファの深さに基づいて決定されます。
このレジスタが 0 に設定されている場合、MAC ファンクションは ff_rx_a_full 信号をアサートしません。内部パイプライン・レイテンシのために、スレッショルドを 3 より大きい値に設定します。このスレッショルドは通常 8 に設定されます。
このレジスタは、10/100 および 1000 の small-MAC コア・バリエーションでは固定値 8 に設定されます。
0
0x0D tx_almost_empty
RW 送信 FIFO バッファの可変長の almost empty スレッショルド。このスレッショルドは、FIFO バッファの深さに基づいて決定されます。
このレジスタが 0 に設定されている場合、MAC ファンクションは ff_tx_a_empty信号をアサートしません。内部パイプライン・レイテンシのために、スレッショルドを 3 より大きい値に設定します。このスレッショルドは通常 8 に設定されます。
このレジスタは、10/100 および 1000 の small-MAC コア・バリエーションでは固定値 8 に設定されます。
0
0x0E tx_almost_full
RW 受信 FIFO バッファの可変長の almost full スレッショルド。このスレッショルドは、FIFO バッファの深さに基づいて決定されます。
このレジスタが 0 に設定されている場合、MAC ファンクションは ff_tx_a_full 信号をアサートしません。このレジスタは 3 以上の値に設定することができます。値が 3 の場合は、0 のレディ・レイテンシ、4 の場合は、1 のレディ・レイテンシを示します。以降同様に続きます。Avalon-ST インタフェースの 大レディ・レイテンシが 8 であるため、このレジスタは 大 11 まで設定できます。このスレッショルドは通常 3 に設定されます。
このレジスタは、10/100 および 1000 の small-MAC コア・バリエーションでは固定値 3 に設定されます。
0
表 5–2. レジスタ・マップ (3 / 4 )
Dwordオフセット 名称 R/W 説明
HW リセット
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–6 5コンフィギュレーション・ レジスタ・スペースMAC コンフィギュレーション・レジスタ・スペース
Command_Configレジスタ (Dword オフセット 0x02)
図 5–1 に、 command_config レジスタのフィールドを示します。
表 5–3 では、command_config レジスタの各フィールドについて説明します。
1 動作を開始するには、少なくとも TX_ENA および RX_ENA ビットを 1 にコンフィギュ
レーションする必要があります。 command_config レジスタをコンフィギュレー
ションする場合、アルテラは、 TX_ENA および RX_ENA レジスタを 後にコンフィ
ギュレーションすることを推奨しています。これは、TX_ENA および RX_ENA レジ
スタが 1 に設定されると MAC 動作がすぐに開始するためです。
0x0F mdio_addr0 RW ■ ビット [4:0]—5ビットの PHY アドレス。このレジスタを、アクセスしようとする任意の接続された PHY デバイスのアドレスに設定します。 mdio_addr0 および mdio_addr1 レジスタにはそれぞれ、レジスタがMDIO スペース 0 または MDIO スペース 1 にマップされる PHY のアドレスが含まれています。
■ ビット [31:5]— 未使用。読み出し専用値 0 に設定されます。
0
0x10 mdio_addr1
RW 1
0x11 – 0x15 予約
0
0x17 tx_ipg_length
RW ■ ビット[4:0]— 小 IPG。 有効な値は8~27バイト時間です。このレジスタが無効値に設定されている場合、デフォルトでは 小 IPG の標準値である 12 バイト時間になります。
このレジスタは、10/100 および 1000 の small-MACコア・バリエーションでは固定値 12 に設定されます。
■ ビット[31:5]—未使用。 読み出し専用値0に設定されます。
0
表 5–2の注:(1) レジスタは、10/100 および 1000 の small-MAC バリエーションでは使用できません。
表 5–2. レジスタ・マップ (4 / 4 )
Dwordオフセット 名称 R/W 説明
HW リセット
図 5–1. Command_Config レジスタ
TX
_EN
A
RX
_EN
A
XO
N_G
EN
ET
H_S
PE
ED
PR
OM
IS_E
N
PA
D_
EN
CR
C_
FW
D
PA
US
E_F
WD
PA
US
E_
IGN
OR
E
TX
_AD
DR
_IN
S
HD
_EN
A
EX
CE
SS
_CO
L
LAT
E_
CO
L
SW
_R
ES
ET
MH
AS
H_S
EL
LOO
P_
EN
A
TX
_AD
DR
_SE
L
MA
GIC
_EN
A
SLE
EP
WA
KE
UP
XO
FF
_G
EN
CT
RL
_FR
M_
EN
A
NO
_LG
TH
_CH
EC
K
EN
A_1
0
RX
_ER
R_
DIS
C
RE
SE
RV
ED
CN
T_
RE
SE
T
31 30 … 28 26 25 24 23 22 21 20 19 18 … 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
DIS
AB
LE_
RD
_TIM
EO
UT
27
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–7MAC コンフィギュレーション・レジスタ・スペース
表 5–3. Command_Configレジスタのフィールドの説明 (1 / 4 )
ビット 名称 R/W 説明
0 TX_ENA RW 送信イネーブル。このビットを 1 に設定すると、送信データ・パスをイネーブルします。
1 RX_ENA RW 受信イネーブル。 このビットを 1 に設定すると、受信データ・パスをイネーブルします。
2XON_GEN
RW ポーズ・フレームの生成。このビットを 1 に設定すると、MACファンクションは、受信 FIFO バッファのステータスに関係なく、ポーズ・クアンタが 0 のポーズ・フレームを生成します。
3
ETH_SPEED
RW イーサネット・スピード・コントロール
■ このビットを 1 に設定すると、ギガビット・イーサネット動作をイネーブルします。 set_1000 信号はマスクされ、動作に影響しません。
■ このビットを 0 に設定すると、set_1000信号がアサートされた場合にのみ、ギガビット・イーサネット動作がイネーブルされます。それ以外の場合、MAC ファンクションは 10/100 Mbps イーサネット・モードで動作します。
MAC ファンクションがギガビット・モードで動作するときは、eth_mode信号がアサートされます。このオプションは small MAC バリエーションでは使用できません。
4
PROMIS_EN
RW プロミスキャス・イネーブル。このビットを 1 に設定すると、プロミスキャス・モードをイネーブルします。このモードでは、MAC ファンクションはアドレス・フィルタリング無しですべてのフレームを受信します。
5
PAD_EN
RW 受信時のパディング削除。このビットを 1 に設定すると、MACファンクションはフレームをユーザー・アプリケーションに転送する前に、そのフレームからパディングを削除します。このビットは送信フレームに影響しません。
このビットは small MAC バリエーションでは使用できません。
6
CRC_FWD
RW 受信時の CRC 転送。
■ このビットを 1 に設定すると、CRC フィールドをユーザー・アプリケーションに転送します。
■ このビットを 0 に設定すると、MAC ファンクションはフレームをユーザー・アプリケーションに転送する前に、そのフレームから CRC フィールドを削除します。
■ PAD_ENビットが 1 で、パディング・フレームが受信されると、MAC ファンクションはこのビットを無視します。この場合、MAC ファンクションは、フレームをユーザー・アプリケーションに転送する前に CRC フィールドをチェックして、そのフレームからチェックサムとパディングを削除します。
7
PAUSE_FWD
RW 受信時のポーズ・フレーム伝送。
■ このビットを 1 に設定すると、受信されたポーズ・フレームをユーザー・アプリケーションに転送します。
■ このビットを 0 に設定すると、受信されたポーズ・フレームを終了し、破棄します。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–8 5コンフィギュレーション・ レジスタ・スペースMAC コンフィギュレーション・レジスタ・スペース
8
PAUSE_IGNORE
RW 受信時のポーズ・フレーム処理。
■ このビットを 1 に設定すると、受信されたポーズ・フレームは無視されます。
■ このビットを 0 に設定すると、受信されたポーズ・フレームは処理されます。MAC ファンクションは、ポーズ・クアンタに指定されている時間の間に送信を中断します。
9
TX_ADDR_INS
RW 送信時の MAC アドレス
■ このビットを 1 に設定すると、レジスタでコンフィギュレーションされた MAC プライマリ・アドレスまたはセカンダリ・アドレスは、ユーザー・アプリケーションから受信された送信フレームの送信元 MAC アドレスを上書きします。TX_ADDR_SELのビットは、アドレスの選択を決定します。
■ このビットを 0 に設定すると、ユーザー・アプリケーションから受信された送信フレームの送信元 MAC アドレスは保持されます。
10
HD_ENA
RW 半二重モードをイネーブル。
■ このビットを 1 に設定すると、半二重モードがイネーブルされます。
■ このビットを 0 に設定すると、全二重モードがイネーブルされます。
■ ETH_SPEED ビットを 1 に設定する場合、MAC ファンクションはこのビットを無視します。 f
11
EXCESS_COL
RO 過度の衝突状況。
■ MAC ファンクションが連続 16 回のフレーム再送信中に衝突を検出した後にフレームを破棄すると、このビットは 1 に設定されます。
■ このビットは、ハードウェア・リセットまたはソフトウェア・リセット後にクリアされます。SW_RESETビットの説明を参照してください。
12
LATE_COL
RO 遅延衝突状況。
■ 64 バイトの送信後に MAC ファンクションが衝突を検出し、フレームを破棄すると、このビットは 1 に設定されます。
■ このビットは、ハードウェア・リセットまたはソフトウェア・リセット後にクリアされます。
13
SW_RESET
RW フトウェア・リセット。 このビットを 1 に設定すると、ソフトウェア・リセットがクリアされます。ソフトウェア・リセット・シーケンスが完了すると、MAC ファンクションはこのビットをクリアします。
リセットがトリガされる場合、MAC ファンクションは現在の送信または受信を完了し、そして送受信ロジックをディセーブルし、受信 FIFO を消去して、統計情報カウンタをリセットします。
表 5–3. Command_Configレジスタのフィールドの説明 (2 / 4 )
ビット 名称 R/W 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–9MAC コンフィギュレーション・レジスタ・スペース
14
MHASH_SEL
RW マルチキャスト・アドレス解決のハッシュ・コード・モードを選択します。
■ このビットを 0 に設定すると、ハッシュ・コードは、48 ビット送信先アドレス全体から生成されます。
■ このビットを 1 に設定すると、ハッシュ・コードは、送信先MAC アドレスの下位 24 ビットから生成されます。
15
LOOP_ENA
RW ローカル・ループバックのイネーブル。 このビットを 1 に設定すると、MAC の RGMII/GMII/MII 上のローカル・ループバックをイネーブルします。MAC ファンクションは送信フレームを受信パスに返します。
このビットは small MAC バリエーションでは使用できません。
18 ‒ 16
TX_ADDR_SEL[2:0]
RW 送信時に送信元 MAC アドレスを選択します。 command_configレジスタのビット TX_ADDR_INSが 1 に設定される場合、これらのビットの値は、MAC ファンクションがユーザー・アプリケーションから受信されるフレームの送信元 MAC アドレスを上書きするために、どの MAC アドレスを選択するかを決定します。
■ 000 = mac_0および mac_1レジスタでコンフィギュレーションされたプライマリ・アドレス。
■ 100 = smac_0_0および smac_0_1 レジスタでコンフィギュレーションされたセカンダリ・アドレス
■ 101 = smac_1_0および smac_1_1レジスタでコンフィギュレーションされたセカンダリ・アドレス
■ 110 = smac_2_0および smac_2_1レジスタでコンフィギュレーションされたセカンダリ・アドレス
■ 111 = smac_3_0および smac_3_1レジスタでコンフィギュレーションされたセカンダリ・アドレス
19MAGIC_ENA
RW マジック・パケットの検出。このビットを 1 に設定すると、マジック・パケット検出をイネーブルします。
このビットは small MAC バリエーションでは使用できません。
20
SLEEP
RW スリープ・モードのイネーブル。MAGIC_ENAビットが 1 の場合、このビットを 1 に設定すると、MAC ファンクションはスリープ・モードになり、マジック・パケット検出をイネーブルします。
このビットは small MAC バリエーションでは使用できません。
21
WAKEUP
RO ノード・ウェイクアップ要求。MAGIC_ENAが 1 の場合にのみ有効です。
■ このビットは、マジック・パケットが検出されると、1 に設定されます。
■ このビットは、SLEEP ビットが 0 に設定されると、クリアされます。
22
XOFF_GEN
RW ポーズ・フレームの生成。このビットを 1 に設定すると、受信FIFO バッファのステータスに関係なく、ポーズ・フレームが生成されます。MAC ファンクションは、ポーズ・フレームのポーズ・クアンタ・フィールドを設定 pause_quantレジスタでコンフィギュレーションされた値に設定します。
表 5–3. Command_Configレジスタのフィールドの説明 (3 / 4 )
ビット 名称 R/W 説明
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–10 5コンフィギュレーション・ レジスタ・スペースMAC コンフィギュレーション・レジスタ・スペース
統計情報カウンタ (Dword オフセット 0x18 – 0x38)表 5–4 では、送受信データ・パスで統計情報を収集するための読み出し専用レジスタについて説明します。 ハードウェア・リセットはこれらのレジスタをクリアします。ソフトウェア・レジスタは aMacID以外のレジスタをクリアします。
レジスタの説明は、以下の定義を使用します。
■ 正常フレーム — 有効なフレーム長を持ちエラーのないフレーム
■ エラー・フレーム — エラーが含まれるか、長さが無効なフレーム
■ 無効フレーム —MAC ファンクションに割り当てないフレーム。MAC ファンクションはこのフレームを破棄します。
23
CNTL_FRM_ENA
RW 受信時の MAC コントロール・フレーム・イネーブル。
■ このビットを 1 に設定すると、ポーズ・フレーム(オペコード= 0x0001)以外のコントロール・フレームが受け入れられ、Avalon-ST インタフェースに転送されます。
■ このビットを 0 に設定すると、ポーズ・フレーム以外のコントロール・フレームが破棄されます。
24
NO_LGTH_CHECK
RW 受信時のペイロード長のチェック
■ このビットを 0 に設定すると、受信フレームの実際のペイロード長は、受信フレームの長さ/タイプ・フィールドと照合されます。
■ このビットを 1 に設定すると、ペイロード長のチェックが省略されます。
このビットは small MAC バリエーションでは使用できません。
25
ENA_10
RW 10 Mbps インタフェースをイネーブルします。このビットを 1 に設定すると、10 Mbps インタフェースがイネーブルされます。10 Mbps インタフェースがイネーブルされると、MAC ファンクションは ena_10信号をアサートします。また、 set_10信号をアサートすることで、10 Mbps インタフェースをイネーブルすることができます。
26
RX_ERR_DISC
RW 受信時のエラー・フレーム処理
■ このビットを 1 に設定すると、受信されたエラー・フレームは破棄されます。これは、rx_section_fullレジスタを 0 に設定することにより受信 FIFO でストア・アンド・フォワード動作がイネーブルされた場合にのみ適用されます。
■ このビットを 0 に設定すると、rx_err[0]がアサートされ、エラー・フレームがユーザー・アプリケーションに転送されます。
27 DISABLE_RD_TIMEOUT RW このビットを 1 に設定すると、読み出しタイムアウトをディセーブルします。
28 ‒ 30 予約 31
CNT_RESET
RW 統計情報カウンタのリセット。このビットを 1 に設定すると、統計情報カウンタをクリアします。ソフトウェア・リセット・シーケンスが完了すると、MAC ファンクションはこのビットをクリアします。
表 5–3. Command_Configレジスタのフィールドの説明 (4 / 4 )
ビット 名称 R/W 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–11MAC コンフィギュレーション・レジスタ・スペース
表 5–4. 統計情報カウンタ (1 / 2 )
Dwordオフセット 名称 R/W 説明0x18 – 0x19
aMacID RO MAC アドレス。 このレジスタは、mac_0 および mac_1レジスタ のプライマリ・アドレスに接続されます。
0x1AaFramesTransmittedOK
ROポーズ・フレームを含む正常に送信されたフレーム数
0x1B aFramesReceivedOK RO ポーズ・フレームを含む正常に受信されたフレーム数
0x1CaFrameCheckSequenceErrors
ROCRC エラーありで受信されたフレーム数
0x1D aAlignmentErrors RO アラインメント・エラーありで受信されたフレーム数
0x1EaOctetsTransmittedOK
RO 正常に送信されたデータおよびパディングのオクテット数。
このレジスタには、aOctetsTransmittedOK カウンタの下位32 ビットが含まれています。この統計情報カウンタの上位 32ビットは、Dword オフセット 0x0F にあります。
0x1F aOctetsReceivedOK
RO 正常に受信されたデータおよびパディングのオクテット数。
このレジスタには、aOctetsReceivedOK カウンタの下位 32ビットです。この統計情報カウンタの上位 32 ビットは、Dwordオフセット 0x3D にあります。
0x20aTxPAUSEMACCtrlFrames
RO送信されたポーズ・フレーム数。
0x21aRxPAUSEMACCtrlFrames
RO受信されたポーズ・フレーム数。
0x22 ifInErrors RO 受信されたエラー・フレーム数。
0x23 ifOutErrors
RO 以下のエラーのいずれかを伴う送信フレームの数。
■ FIFO オーバーフロー・エラー
■ FIFO アンダーフロー・エラー
■ ユーザー・アプリケーションによって定義されるエラー
0x24 ifInUcastPkts RO 有効な受信済みユニキャスト・フレーム数
0x25 ifInMulticastPkts RO 有効な受信済みマルチキャスト・フレーム数。この数にはポーズ・フレームは含まれていません。
0x26 ifInBroadcastPkts RO 有効な受信済みブロードキャスト・フレーム数。
0x27 ifOutDiscards この統計情報カウンタは使用されていません。
MAC はユーザー・アプリケーションによって FIFO バッファに書き込まれたフレームを破棄しません。
0x28 ifOutUcastPkts RO 有効な送信済みユニキャスト・フレーム数
0x29 ifOutMulticastPkts RO ポーズ・フレームを除く、有効な送信済みマルチキャスト・フレーム数
0x2A ifOutBroadcastPkts RO 有効な送信済みブロードキャスト・フレーム数
0x2BetherStatsDropEvents
RO FIFO バッファ・オーバーフローが持続する場合、MAC クライアントの内部エラーにより破棄されたフレーム数
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–12 5コンフィギュレーション・ レジスタ・スペースMAC コンフィギュレーション・レジスタ・スペース
0x2C etherStatsOctets
RO 受信された合計オクテット数。この数には正常フレームおよびエラー・フレームの両方が含まれています。
このレジスタは、etherStatsOctetsの下位 32 ビットです。この統計情報の上位 32 ビットは Dword オフセット 0x3E にあります。
0x2D etherStatsPkts RO 受信された正常フレームおよびエラー・フレームの総数
0x2EetherStatsUndersizePkts
RO受信された 64 バイト未満のフレーム数
0x2FetherStatsOversizePkts
RO frm_length レジスタでコンフィギュレーションされている値より長い受信フレーム数
0x30etherStatsPkts64Octets
RO 受信された 64 ビットのフレーム数。この数には、正常フレームおよびエラー・フレームが含まれています。
0x31etherStatsPkts65to127Octets
RO 65 バイト~ 127 バイトの長さを持つ、受信された正常フレームおよびエラー・フレームの数。
0x32etherStatsPkts128to255Octets
RO 128 バイト~ 255 バイトの長さを持つ、受信された正常フレームおよびエラー・フレームの数。
0x33etherStatsPkts256to511Octets
RO 256 バイト~ 511 バイトの長さを持つ、受信された正常フレームおよびエラー・フレームの数。
0x34etherStatsPkts512to1023Octets
RO 512 バイト~ 1023 バイトの長さを持つ、受信された正常フレームおよびエラー・フレームの数。
0x35etherStatsPkts1024to1518Octets
RO 1024 バイト~ 1518 バイトの長さを持つ、受信された正常フレームおよびエラー・フレームの数。
0x36etherStatsPkts1519toXOctets
RO 1519 バイトと frm_length でコンフィギュレーションされている 大フレーム長を持つ、受信された正常フレームおよびエラー・フレームの数。
0x37 etherStatsJabbers RO CRC エラーを伴う長すぎるフレーム。
0x38 etherStatsFragments RO CRC エラーを伴う短すぎるフレーム。
0x39 予約 未使用
拡張された統計情報カウンタ (0x3C – 0x3E)
0x3Cmsb_aOctetsTransmittedOK
ROそれぞれの統計情報カウンタの上位 32 ビット。デフォルトでは、すべての統計情報カウンタは 32 ビット幅です。これらの統計情報カウンタは、 Enable 64-bit byte counters パラメータをオンにすることで、64 ビットに拡張できます。
0x3Dmsb_aOctetsReceivedOK
RO
0x3Emsb_etherStatsOctets
RO
表 5–4. 統計情報カウンタ (2 / 2 )
Dwordオフセット 名称 R/W 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–13MAC コンフィギュレーション・レジスタ・スペース
送受信コマンド・レジスタ (Dwordオフセット 0x3A – 0x3B)表 5–5 では、MAC ファンクションがどのように送受信フレームを処理するかを決定
するレジスタについて説明します。ソフトウェア・リセットはこれらのレジスタの
値を変更しません。
表 5–5. 送受信コマンド・レジスタ
Dwordオフセット 名称 R/W 説明
0x3A tx_cmd_stat
RW MAC ファンクションがどのように送信フレームを処理するかを指定します。 Align packet headers to 32-bit boundaries オプションをオンにすると、このレジスタはハードウェア・リセットで 0x00040000 にリセットされます。それ以外の場合、このレジスタは 0x00 にリセットされます。
■ ビット 0 ~ビット 16— 未使用
■ ビット 17 (OMIT_CRC)— このビットを 1 に設定すると、CRC の計算および挿入は省略されます。 この場合、ユーザー・アプリケーションは正しいデータおよび CRC を提供する必要があります。このビットが1 に設定されている場合は、常に ff_tx_crc_fwd信号より優先されます。
■ ビット 18 (TX_SHIFT16)— ユーザー・アプリケーションからのフレームが 32 ビット境界でアラインメントされる場合、このビットを 1 に設定します。詳細については、4 ページの「IP ペイロード・リアラインメント」を参照してください。
この設定は、Align packet headers to 32-bit boundary パラメータがオンの場合に、32 ビット内部 FIFO バッファが組み込まれた MAC バリエーションにのみ適用されます。 それ以外の場合は、このビットを読み出すと常に 0 が返されます。
内部 FIFO バッファが組み込まれていない MAC のバリエーションでは、このビットは読み出し専用ビットで、Align packet headers to 32-bit boundary オプションの値を取ります。
■ ビット 19 ~ビット 31— 未使用
0x3B rx_cmd_stat
RW MAC ファンクションがどのように受信フレームを処理するかを指定します。Align packet headers to 32-bit boundaries オプションをオンにすると、このレジスタはハードウェア・リセットで 0x02000000 にリセットされます。それ以外の場合、このレジスタは 0x00 にリセットされます。
■ ビット 0 ~ビット 24— 未使用
■ ビット 25 (RX_SHIFT16)—MAC ファンクションは受信フレームを 32ビット境界でアラインメントするようにするには、このビットを 1 に設定します。フレームのアラインメントについて詳しくは、12ページの「IP ペイロード・アラインメント」を参照してください。
この設定は、Align packet headers to 32-bit boundary パラメータがオンの場合に、32 ビット内部 FIFO バッファが組み込まれた MAC バリエーションにのみ適用されます。 それ以外の場合は、このビットを読み出すと常に 0 が返されます。
内部 FIFO バッファが組み込まれていない MAC のバリエーションでは、このビットは読み出し専用ビットで、Align packet headers to 32-bit boundary オプションの値を取ります。
■ ビット 26 ~ビット 31— 未使用
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–14 5コンフィギュレーション・ レジスタ・スペースPCS コンフィギュレーションのレジスタ・スペース
セカンダリ・アドレス (Dwordオフセット 0xC0 – 0xC7)表 5–6 に、MAC セカンダリ・アドレスについて説明します。ソフトウェア・リセッ
トはこれらのレジスタに影響を与えません。MAC セカンダリ・アドレスは、10/100 および 1000 の Small MAC バリエーションでは使用できません。
PCSコンフィギュレーションのレジスタ・スペースこの項では、PCS レジスタについて説明します。このレジスタは、PCS ファンク
ションのコンフィギュレーション、または PCS ファンクションのステータスの取得
に使用されます。
1 MAC と PCS のバリエーションでは、PCS レジスタは、MAC レジスタ・スペースを占
有します。これらのレジスタは、MAC 32 ビット Avalon - MM コントロール・イン
タフェースを介してアクセスされます。PCS レジスタは 16 ビット幅であるため、
下位の 16 ビットのみを占有します。上位の 16 ビットは 0 に設定されます。このバ
リエーションの 初の PCS レジスタのオフセットは、Dword オフセット 0x80 に
マップされます。
表 5–6. セカンダリ・アドレス・レジスタ
Dwordオフセット 名称 R/W 説明
HW リセット
0xC0 smac_0_0 RW 大 4 つの 6 バイトのセカンダリ・アドレスを指定できます。
■ smac_0_0/1
■ smac_1_0/1
■ smac_2_0/1
■ smac_3_0/1
MAC アドレスと同じ方法で、セカンダリ・アドレスを対応するレジスタにマップします。mac_0 および mac_1の説明を参照してください。
MAC ファンクションは、セカンダリ・アドレスを次の操作に使用します。
■ プロミスキャス・モードがディセーブルされる場合にユニキャスト・フレームをフィルタリングします。
(PROMIS_EN ビットの説明については、6 ページの「Command_Config レジスタ (Dword オフセット 0x02)」
を参照してください。)
■ アドレスの挿入がイネーブルされる場合にユーザー・アプリケーションから受信された送信フレームの送信元アドレスを置き換えます。(TX_ADDR_INS および TX_ADDR_SEL ビットについて詳しくは、6 ページの
「Command_Config レジスタ (Dword オフセット 0x02)」
を参照してください。)
セカンダリ・アドレスを使用しない場合、これらのアドレスをプライマリ・アドレスにコンフィギュレーションします。
00xC1 smac_0_1
0xC2 smac_1_0
0xC3 smac_1_1
0xC4 smac_2_0
0xC5 smac_2_1
0xC6 smac_3_0
0xC7 smac_3_1
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–15PCS コンフィギュレーションのレジスタ・スペース
MegaWizard Plug-in Manager フローで IP コアをインスタンス化する場合、ワード・
アドレスを使用してレジスタ空間をアクセスします。 MAC および PCS バリエーショ
ンをインスタンス化する場合、PCS ワード・オフセットを 初の PCS のオフセッ
トに追加することによって、PCS レジスタを MAC レジスタ空間内の対応する
Dword オフセットにマップします。例えば:
■ PCS のみのバリエーションの場合、ワード・オフセットの 0x14 で if_modeレジス
タにアクセスできます。
■ MACおよび PCSのバリエーションの場合、 if_mode レジスタをMACレジスタ空
間にマップします。
■ 初の PCS レジスタのオフセット = 0x80
■ if_mode ワード・オフセット = 0x14
■ if_mode Dword オフセット = 0x80 + 0x14 = 0x94
SOPC Builder および Qsys システムで MAC および PCS バリエーションをインスタ
ンス化する場合、バイト・アドレスを使用してレジスタ空間にアクセスします。
Dword オフセットは、4 で乗算することでバイト・オフセットに変換します。例え
ば:
■ MAC レジスタの場合:
■ comand_config Dword オフセット = 0x02
■ comand_config バイト・オフセット = 0x02 × 4 = 0x08
■ PCS レジスタの場合、Dword オフセットをバイト・オフセットに変換する前に、
レジスタを MAC レジスタ空間内の Dword オフセットにマップしてください。
■ if_mode ワード・オフセット = 0x14
■ if_mode Dword オフセット = 0x80 + 0x14 = 0x94
■ if_mode バイト・オフセット = 0x94 × 4 = 0x250
表 5–7 では、PCS コンフィギュレーション・レジスタについて説明します。
表 5–7. PCSコンフィギュレーション・レジスタ (1 / 2 )
ワード・オフセット レジスタ名 R/W 説明
0x00 controlRW PCS ファンクションを制御およびコンフィギュレーションす
るには、このレジスタを使用します。ビットの説明については、17 ページの表 5–8. を参照してください。
0x01 status RO ステータス・レジスタ。PCS ファンクションの動作に関する情報を提供します。
0x02
phy_identifier
RO 32 ビット PHY 識別レジスタ。このレジスタは PHY ID パラメータの値に設定されます。ビット 31:16 はワード・オフセット 0x02 に書き込まれます。ビット 15:0 はワード・オフセット 0x03 に書き込まれます。
0x03
0x04 dev_ability
RW このレジスタは、オート・ネゴシエーション中に、リンク・パートナにデバイス機能を通知するために使用します。SGMII モードでは、PHY はオート・ネゴシエーション中にこのレジスタを使用しません。レジスタ・ビットの説明については、19ページの表 5–10 を参照してください。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–16 5コンフィギュレーション・ レジスタ・スペースPCS コンフィギュレーションのレジスタ・スペース
0x05 partner_ability
RO オート・ネゴシエーション中にリンク・パートナによって通知されたデバイス機能が含まれます。1000BASE-X およびSGMII モードのレジスタ・ビットの説明については、それぞれ 19ページの表 5–10 および 20 ページの表 5–11 を参照してください。
0x06 an_expansionRO オート・ネゴシエーション拡張レジスタ。 PCS ファンクショ
ンの機能およびオート・ネゴシエーション・ステータスが含まれます。
0x07 device_next_page ROPCS ファンクションはこれらの機能をサポートしません。 これらのレジスタは、常に 0x0000 に設定されます。また、レジスタへの書き込みアクセスはすべて無視されます。
0x08 partner_next_page
0x09 master_slave_cntl
0x0A master_slave_stat
0x0B – 0x0E 予約
0x0F extended_status RO PCS ファンクションは拡張ステータス・レジスタを実装しません。
特定の拡張レジスタ
0x10 scratch RW スクラッチ・レジスタ。 レジスタの読み出しと書き込み動作をテストするためのメモリ位置を提供します。
0x11 rev RO PCS ファンクションのリビジョン。常に MegaCore ファンクションの現行バージョンに設定されます。
0x12
link_timer
RW 21 ビット・オート・ネゴシエーション・リンク・タイマ。8 ns のステップ(125 MHz クロック)で、0 ms から 16 msのリンク・タイマ値を設定します。 リセット値は、リンク・タイマを 10 ms に設定します。
ビット 15:0 はワード・オフセット 0x12 に書き込まれます。ワード・オフセット 0x12 のビット 0 は常に 0 に設定されます。したがって、そのオフセットに書き込まれた値はすべて無視されます。
ビット 20:16 はワード・オフセット 0x13 に書き込まれます。 残りのビットは予約されており、常に 0 に設定されます。
0x13
0x14 if_modeRW インタフェース・モード。このレジスタは、PCS ファンク
ションの動作モード(1000BASE-X または SGMII)を指定するために使用します。
0x15 – 0x1F 予約
表 5–7. PCSコンフィギュレーション・レジスタ (2 / 2 )
ワード・オフセット レジスタ名 R/W 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–17PCS コンフィギュレーションのレジスタ・スペース
コントロール・レジスタ (ワード・オフセット 0x00)表 5–8 では、PCS control レジスタの各フィールドについて説明します。
表 5–8. PCSコントロール・レジスタ・ビットの説明
ビット 名称 R/W 説明
0:5 予約 6, 13
SPEED_SELECTIONRO PCS ファンクションの動作モードを示します。 ビット 6 およ
び 13 は、それぞれ 1 と 0 に設定されています。 この値の組み合わせはギガビット・モードを表します。
7 COLLISION_TEST RO PCS ファンクションは、半二重モードをサポートしません。 このビットは常に 0 に設定されます。
8 DUPLEX_MODE RO PCS ファンクションは、全二重モードのみをサポートします。 このビットは常に 1 に設定されます。
9 RESTART_AUTO_NEGOTIATION
RW このビットを 1 に設定すると、オート・ネゴシエーション・シーケンスが再開します。通常の動作時には、このビットを0(リセット値)に設定します。
10ISOLATE
RW このビットを 1 に設定すると、PCS ファンクションが MAC層デバイスから分離されます。 通常の動作時には、このビットを 0(リセット値)に設定します。
11POWERDOWN
RW このビットを 1 に設定すると、トランシーバのクワッドがパワーダウンされます。その後、PCS ファンクションはスタートを示すために、 powerdown 信号をアサートします。
12 AUTO_NEGOTIATION_ENABLE
RW このビットを 1(リセット値)に設定すると、オート・ネゴシエーションがイネーブルされます。
14
LOOPBACK
RW PHY ループバック。このビットを 1 に設定すると、GX トランシーバにループバックが実装されます。通常の動作時には、このビットを 0(リセット値)に設定します。RTBI
(Reduced Ten Bit Interface)が実装されると、このビットは無視されます。
この機能は、Cyclone IV GX および Stratix V デバイス・ファミリを除く、すべてのデバイス・ファミリにサポートされています。
15
RESET
RW セルフ・クリアリングのリセット・ビット。このビットを 1に設定すると、同期されたリセット・パルスが生成されます。これにより、すべての PCS ファンクション・ステート・マシン、カンマ検出機能、および 8b/10b エンコーダ/デコーダがすべてリセットされます。通常の動作時には、このビットを 0(非同期リセット値)に設定します。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–18 5コンフィギュレーション・ レジスタ・スペースPCS コンフィギュレーションのレジスタ・スペース
ステータス・レジスタ (ワード・オフセット 0x01)表 5–9 では、status レジスタの各フィールドについて説明します。これらのビッ
トは読み出し専用です。
表 5–9. ステータス・レジスタ・ビットの説明
ビット 名前 R/W 説明
0 EXTENDED_CAPABILITY RO 値が 0 の場合は、PCS ファンクションが拡張レジスタをサポートしていることを示します。
1 JABBER_DETECT 未使用。常に 0 に設定されます。
2
LINK_STATUS RO
値が 1 の場合は、有効なリンクが確立されていることを示します。値が 0 の場合は、無効なリンクを示します。
リンクの同期が失われると、0 に設定されます。
3 AUTO_NEGOTIATION_ABILITY
RO 値が 1 の場合は、PCS ファンクションが自動ネゴシエーションをサポートしていることを示します。
4 REMOTE_FAULT 未使用。常に 0 に設定されます。
5
AUTO_NEGOTIATION_COMPLETE
RO
値が 1 の場合は、以下のステータスを示します。
■ オート・ネゴシエーション・プロセスが完了しました。
■ オート・ネゴシエーション・コントロール・レジスタは有効です。
6 MF_PREAMBLE_SUPPRESSION
未使用。常に 0 に設定されます。
7 UNIDIRECTIONAL_ABILITY
RO常に 0 に設定し、有効なリンクが確立された場合にのみ、PHY が MII(media independent interface)から送信できることを示します。
8 EXTENDED_STATUS 未使用。常に 0 に設定されます。
9 100BASET2_HALF_DUPLEX
ROPCS ファンクションは、100Base-T2、 10-Mbps、 100BASE-X, および 100Base-T4 の動作をサポートしません。常に 0 に設定されます。
10 100BASET2_FULL_DUPLEX
11 10MBPS_HALF_DUPLEX
12 10MBPS_FULL_DUPLEX
13 100BASE-X_HALF_DUPLEX
14 100BASE-X_FULL_DUPLEX
15 100BASE-T4
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–19PCS コンフィギュレーションのレジスタ・スペース
Dev_Ability および Partner_Abilityレジスタ (ワード・オフセット 0x04 – 0x05)
partner_ability レジスタの各フィールドは、PCS ファンクションが動作する
モードに応じて定義が異なります。
dev_abilityレジスタは、1000BASE-X モードで使用されます。このモードでは、
dev_abilityレジスタのフィールドの定義は、partner_abilityレジスタの
フィールドと同じです。これらのレジスタの内容は、オート・ネゴシエーションが
完了した(status レジスタの AUTO_NEGOTIATION_COMPLETE ビット = 1)とき
にのみ有効です。
1000BASE-X
表 5–10 では、1000BASE-X モードでの dev_ability および partner_ability の各フィールドについて説明します。
表 5–10. 1000BASE-Xモードでの Dev_Abilityおよび Partner_Abilityレジスタ・ビットの説明
ビット 名称 R/W 説明
0:4 予約 これらのビットは常に 0 に設定されます。
5 FD RW/RO(1)(2) 全二重モードのイネーブル。値が 1 の場合は、全二重をサポートしていることを示します。
6 HD 半二重モードのイネーブル。値が 1 の場合は、半二重をサポートしていることを示します。
7 PS1 ポーズのサポート。
■ PS1=0 / PS2=0: ポーズはサポートされません。
■ PS1=0 / PS2=1:リンク・パートナへの Asymmetric Pause をサポートします。
■ PS1=1 / PS2=0:Symmetric Pause をサポートします。
■ PS1=1/ PS2=1:ポーズは送受信でサポートされます。
8
PS2
9:11 予約 これらのビットは常に 0 に設定されます。
12 RF1 RW/RO(1)(2) リモート故障状態。
■ RF1=0 / RF2=0:エラー無し、リンクは有効(リセット状態)
■ RF1=0 / RF2=1:オフライン
■ RF1=1 / RF2=0:故障状態
■ RF1=1 / RF2=1:オート・ネゴシエーション・エラー
13
RF2
14ACK
確認応答。値が 1 の場合は、デバイスがそのリンク・パートナからマッチング機能値を 3 つ連続して受信したことを示します。
15 NP ネクスト・ページ。 dev_abilityレジスタでは、このビットは常に 0 に設定されます。
表 5–10の注:(1) dev_ability レジスタのすべてのビットに読み出し/書き込みアクセスが可能です。
(2) partner_abilityレジスタのすべてのビットは読み出し専用です。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–20 5コンフィギュレーション・ レジスタ・スペースPCS コンフィギュレーションのレジスタ・スペース
SGMII
表 5–11 では、SGMII モードでの partner_abilityレジスタの各フィールドを説
明します。
An_Expansion レジスタ (ワード・オフセット 0x06)表 5–12 では、 an_expansionレジスタの各フィールドについて説明します。
表 5–11. SGMIIでの Partner_Abilityレジスタ・ビットの説明
ビット 名称 R/W 説明
0:9 予約 10:11
COPPER_SPEED(1:0) RO
リンク・パートナ・インタフェースの速度:
■ 00: 銅線インタフェース速度は 10 Mbps です。
■ 01: 銅線インタフェース速度は 100 Mbps です。
■ 10:銅線インタフェース速度はギガビットです。
■ 11:予約
12
COPPER_DUPLEX_STATUS
RO
リンク・パートナ二重機能:
■ 1: 銅線インタフェースは全二重モードで動作できます。
■ 0: 銅線インタフェースは半二重モードで動作できます。
13 予約 14
ACK RO確認応答。 値が 1 の場合は、リンク・パートナがそのデバイスからマッチング機能値を 3 つ連続して受信したことを示します。
15
COPPER_LINK_STATUS RO
銅線リンク・パートナ・ステータス:
■ 1:銅線インタフェース・リンクがアップしています。
■ 0:銅線インタフェース・リンクがダウンしています。
表 5–12. An_Expansionレジスタの説明
ビット 名称 R/W 説明
0 LINK_PARTNER_AUTO_NEGOTIATION_ABLE
RO値が 1 の場合は、リンク・パートナがオート・ネゴシエーションをサポートしていることを示します。 リセット値はゼロです。
1
PAGE_RECEIVE RO
値が 1 の場合は、新規ページが受信され、partner_abilityレジスタに新しいパートナ機能が含まれていることを示します。 システム管理エージェントが読み出しアクセスを実行すると、ビットは 0(リセット値)に設定されます。
2 NEXT_PAGE_ABLE 未使用。常に 0 に設定されます。
3:15 予約
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
5コンフィギュレーション・ レジスタ・スペース 5–21PCS コンフィギュレーションのレジスタ・スペース
If_Modeレジスタ (ワード・オフセット 0x14)表 5–13 では、if_modeレジスタの各フィールドについて説明します。
表 5–13. IF_Mode レジスタの説明
ビット 名称 R/W 説明
0SGMII_ENA
RW PCS ファンクションの動作モードを決定します。このビットを 1 に設定すると、SGMII モードがイネーブルされます。 このビットを 0 に設定すると、1000BASE-Xギガビット・モードがイネーブルされます。
1
USE_SGMII_AN
RW このビットは SGMII モードにのみ適用されます。このビットを 1 に設定すると、PCS ファンクションは、オート・ネゴシエーション中に通知されたリンク・パートナ機能でコンフィギュレーションされます。 このビットが 0 に設定されている場合、PCS ファンクションをSGMII_SPEEDおよびSGMII_DUPLEXビットでコンフィギュレーションすることを推奨します。
2:3
SGMII_SPEED[1:0]
RW SGMII の速度。PCS ファンクションが SGMII モード(SGMII_ENA = 1)で動作し、自動的にコンフィギュレーションされないようにプログラムされている
(USE_SGMII_AN = 0)場合は、速度を以下のように設定します。
■ 00: 10 Mbps
■ 01: 100 Mbps
■ 10: Gigabit
■ 11: 予約
SGMII_ENAが 0、または USE_SGMII_ANが 1 である場合、これらのビットは無視されます。
4SGMII_DUPLEX
RW SGMII 半二重モード。 このビットを 1 に設定すると、10/100 Mbps の速度に対して半二重モードがイネーブルされます。 SGMII_ENAが 0、または USE_SGMII_ANが1 である場合、このビットは無視されます。
5:15 予約
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
5–22 5コンフィギュレーション・ レジスタ・スペースPCS コンフィギュレーションのレジスタ・スペース
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
6. インタフェース信号
10/100/1000イーサネット MAC信号図 6–1 に、内部 FIFO バッファが組み込まれた 10/100/1000 イーサネット MAC ファ
ンクションの入出力信号をすべて示します。
図 6–1. 10/100/1000イーサネット MAC信号
10/100/1000 Ethernet MAC
PHY Management Signals
mdio_in
mdc
mdio_oen
mdio_out
Pause and Magic Packet Signals
xon_gen
xoff_gen
magic_wakeup
magic_sleep_n
ff_rx_clk
MACStatus Signals
set_10
set_1000
ena_10
eth_mode
ClockSignals
rx_clk
tx_clk
Reset Signal
reset
n
2
MAC Transmit Interface Signals
ff_tx_crc_fwd
ff_tx_data[DATAWIDTH-1:0]
ff_tx_eop
ff_tx_err
ff_tx_sop
ff_tx_wren
tx_ff_uflow
ff_tx_clk
ff_tx_rdy
ff_tx_septy
ff_tx_mod[1:0]
ff_tx_a_full
ff_tx_a_empty
2
n
6
18
4
MAC Receive Interface Signals
ff_rx_data[DATAWIDTH-1:0]
ff_rx_mod[1:0]
ff_rx_eop
ff_rx_sop
rx_err[5:0]
rx_err_stat[17:0]
rx_frm_type[3:0]
ff_rx_dsav
ff_rx_rdy
ff_rx_dval
ff_rx_a_full
ff_rx_a_empty
32
32
MAC Control Interface
Signals
clk
address[7:0]
read
write
readdata[31:0]
writedata[31:0]
waitrequest
8
4
4
MII Signals
m_rx_d[3:0]
m_rx_en
m_rx_err
m_rx_col
m_rx_crs
m_tx_d[3:0]
m_tx_en
m_tx_err
8
GMII Signals
gm_rx_d[7:0]
gm_rx_dv
gm_rx_err
gm_tx_d[7:0]
gm_tx_en
gm_tx_err
8
4
4
RGMII Signalsrgmii_out[3:0]
tx_control
rgmii_in[3:0]
rx_control
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
6–2 6インタフェース信号
クロックおよびリセット信号MAC のイーサネット側のインタフェース上のデータ転送は送受信クロックに同期し
ます。表 6–1 では、これらのクロック信号について説明します。
表 6–2 では、リセット信号について説明します。
MACコントロール・インタフェース信号MAC コントロール・インタフェースは、レジスタ空間へのアクセスを提供する
Avalon-MM スレーブ・ポートです。 表 6–3 に、MAC コントロール・インタフェース
を構成する信号について説明します。
表 6–1. GMII/RGMII/MIIクロック信号
名称 I/O 説明
tx_clk
I GMII/RGMII/MII 送信クロック。 すべての GMII/MII 送信信号に対してタイミング・リファレンスを提供します。gm_tx_d[7:0]、gm_tx_en、gm_tx_errの値と、m_tx_d[3:0]、m_tx_en、m_tx_errの値は、tx_clkの立ち上がりエッジで有効です。
rx_clk
I GMII/RGMII/MII 受信クロック。 すべての rx に関連する信号に対してタイミング・リファレンスを提供します。 gm_rx_d[7:0]、gm_rx_dv、gm_rx_errの値と、m_rx_d[3:0]、m_rx_en、m_rx_errの値は、rx_clk の立ち上がりエッジで有効です。
表 6–2. リセット信号
名称 I/O 説明
resetI この信号をアサートすると、MAC および PCS コントロール・インタ
フェースのすべてのロジックがリセットされます。この信号は、 低3 サイクル アサートされる必要がある。
表 6–3. MACコントロール・インタフェース信号
名称Avalon-MM信号
の種類 I/O 説明
clk clk I レジスタ・アクセス基準クロック この信号を125MHz 以下の値に設定してください。
write write I レジスタ・ライト・イネーブル
read read I レジスタ・リード・イネーブル
address[7:0] address I 32 ビットにワード・アラインメントされたレジスタ・アドレス
writedata[31:0] writedata I レジスタ・ライト・データ。ビット 0 は 下位ビットです。
readdata[31:0] readdata O レジスタ・リード・データ。ビット 0 は 下位ビットです。
waitrequest waitrequest
O ビット 0 は 下位ビットです。 レジスタ読み出しまたはレジスタ書き込みアクセス時にアサートされます。現在のレジスタ・アクセスが完了する時にディアサートされます。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–3
MACステータス信号表 6–4 では、すべての MAC ステータスについて説明します。MAC ステータス信号
を使用して、イーサネット側のインタフェースの転送モードを設定できます。
MAC受信インタフェース信号表 6–5 では、MAC 受信インタフェースに関連するすべての信号について説明します。
表 6–4. MACステータス信号
名称 I/O 説明
eth_mode
O イーサネット・モード。 信号を 1 に設定すると、MAC ファンクションが 1000 Mbps で動作するようにコンフィギュレーションされます。0に設定すると、MAC ファンクションが 10/100 モードで動作するようにコンフィギュレーションされます。
ena_10O 10 Mbps イネーブル。 PHY インタフェースが 10 Mbps モードで動作す
ることを示す場合は、この信号が 1 に設定されます。eth_mode 信号が0 に設定される場合のみ有効です。
set_1000
I ギガビット・モード選択。MAC ファンクションがギガビットで動作するように、PHY デバイスなどの外部デバイスによって 1 に設定されます。0 に設定されている場合、MAC は 10/100 Mbps で動作します。command_config レジスタの ETH_SPEEDビットが1に設定されている場合、この信号は無視されます。
set_10
I 10 Mbps モードを選択。MAC ファンクションが 10 Mbps PHY デバイスに接続されていることを示すために、PHY デバイスなどの外部デバイスによって 1 に設定されます。0 に設定されている場合、MAC ファンクションは 100 Mbps またはギガビット・モードで動作します。command_configレジスタのETH_SPEED または ENA_10ビットが1に設定されている場合、この信号は無視されます。
表 6–5. MAC受信インタフェース信号 (1 / 3 )
名称Avalon-ST信号
の種類 I/O 説明
Avalon-ST 信号
ff_rx_clk clk
I 受信クロック。Avalon-ST 受信インタフェース上のすべての信号は、このクロックの立ち上がりエッジで同期します。このクロックは、このインタフェースで望ましい帯域幅を取得するのに必要な周波数に設定されます。このクロックは、 rx_clkから完全に独立しています。
ff_rx_dval valid
O 受信データ有効。この信号がアサートされると、ff_rx_data[(DATAWIDTH -1):0]、 ff_rx_sop、 ff_rx_eop、 rx_err[5:0]、 rx_frm_type[3:0]、および rx_err_stat[17:0]が有効であることを示します。
ff_rx_data[(DATAWIDTH-1):0]
dataO 受信データ。DATAWIDTHが 32 である場合、受信
した 初のバイトは ff_rx_data[31:24]で、その後に ff_rx_data[23:16]が続きます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–4 6インタフェース信号
ff_rx_mod[1:0] empty
O 受信データ・モジュロ。 終フレーム・ワードの有効でないバイトを示します。
■ 11: ff_rx_data[23:0] が有効ではない。
■ 10: ff_rx_data[15:0] が有効ではない。
■ 01: ff_rx_data[7:0] が有効ではない。
■ 00: ff_rx_data[31:0] は有効である。
この信号は、DATAWIDTH信号が 32 に設定されている場合にのみ有効です。
ff_rx_sop startofpacketO パケットの開始を受信します。 フレームの 初のバ
イトまたはワードが ff_rx_data[(DATAWIDTH-1):0]上で受信されたときにアサートされます。
ff_rx_eop endofpacket
O パケットの終端を受信します。フレーム・データの 後のバイトまたはワードがff_rx_data[(DATAWIDTH-1):0上で受信されたときはにアサートされます。
ff_rx_rdy ready
I 受信アプリケーション・レディ。ユーザー・アプリケーションが MAC ファンクションからデータを受信可能な場合、この信号は ff_rx_clk の立ち上がりエッジでアサートされます。
rx_err[5:0] error
O 受信エラー。 フレームの受信時にエラーが検出されたことを示すために、フレームの 終バイトとともにアサートされます。 このビットの説明については、6 ページの表 6–7 を参照してください。
コンポーネント固有の信号 (1)
ff_rx_dsav
O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
この信号がアサートされると、内部受信 FIFO バッファに、読み出し対象のデータ(必ずしも完全なフレームではない)が含まれることを示します。ユーザー・アプリケーションは、FIFO から読み出しを開始する場合があります。
この信号は、ストア・アンド・フォワード・モードではデアサートされたままです。
rx_frm_type[3:0]
O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
フレームの種類です。このビットの説明について詳しくは、 5 ページの表 6–6 を参照してください。
ff_rx_a_full
O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
FIFO バッファが almost full スレッショルドに達するとアサートされます。
ff_rx_a_empty
O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
FIFO バッファが almost empty スレッショルド未満になるとアサートされます。
表 6–5. MAC受信インタフェース信号 (2 / 3 )
名称Avalon-ST信号
の種類 I/O 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–5
表 6–6 では、rx_frm_type信号の各ビットについて説明します。
rx_err_stat[17:0]
O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
rx_err_stat[17]: 受信フレームがスタックVLAN フレームであることを示します。
rx_err_stat[16]: 受信フレームが VLAN フレームまたはスタック VLAN フレームのいずれかであることを示します。
rx_err_stat[15:0]: 受信フレームの長さ / タイプ・フィールドの値を示します。
表 6–5の注:(1) これらのコンポーネント固有の信号は、Avalon インタフェースと関連がなく、SOPC Builder システムおよび Qsys システム
ではアクセスできません。
表 6–5. MAC受信インタフェース信号 (3 / 3 )
名称Avalon-ST信号
の種類 I/O 説明
表 6–6. Rx_frm_typeビットの説明
ビット 説明3 VLAN フレームを示す。ff_rx_sopとともにアサートされ、フレームの 後までアサート
され続けます。
2 ブロードキャスト・フレームを示す。 ff_rx_sopとともにアサートされ、フレームの 後までアサートされ続けます。
1 マルチキャスト・フレームを示す。 ff_rx_sopとともにアサートされ、フレームの 後までアサートされ続けます。
0 ユニキャスト・フレームを示す。ff_rx_sopとともにアサートされ、フレームの 後までアサートされ続けます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–6 6インタフェース信号
表 6–7 に、rx_err 信号の各ビットについて説明します。
MAC送信インタフェース信号表 6–8 では、MAC 送信インタフェースに関連するすべての信号について説明します。
表 6–7. Rx_errビットの説明
ビット 説明5 衝突エラー。 フレームを衝突と共に受信した場合にアサートされます。
4 PHY エラーによって破壊された受信フレーム PHY が受信 GMII 上でエラーをアサートしました。
3 切り捨てられた受信フレーム。受信 FIFO バッファのオーバーフローにより、受信したフレームが切り捨てられた場合にアサートされます。
2 CRC エラー。 フレームが CRC-32 エラーと共に受信された場合にアサートされます。 このエラー・ビットは、有効な長さを持つフレームにのみ適用されます。 4-11 ページの「フレーム長およびペイロード長のチェック」を参照してください。
1 無効な長さエラー。受信したフレームに、IEEE 規格 802.3 に規定されている無効な長さがある場合にアサートされます。
0 受信フレーム・エラー。この信号はエラーが発生したことを示します。 この信号はrx_err[5:1] の論理和です。
表 6–8. MAC 送信インタフェース信号 (1 / 3 )
名称Avalon-ST 信号の
種類 I/O 説明
Avalon-ST 信号
ff_tx_clk clk
I 送信クロック。 すべての送信信号がこのクロックの立ち上がりエッジで同期します。
このクロックは、Avalon-ST 送信インタフェースで望ましい帯域幅を取得するのに必要な周波数に設定されます。このクロックは、 tx_clkから完全に独立しています。
ff_tx_wren valid
I 送信データ・ライト・イネーブル。この信号がアサートされると、ff_tx_data[(DATAWIDTH-1):0]、 ff_tx_sop、 および ff_tx_eopが有効であることを示します。
カットスルー・モードでは、この信号はフレーム送信が完了するまでアサートされたままにしておく必要があります。そうしないと、フレームは切り捨てられ、エラーとともにイーサネット側のインタフェースに転送されます。
ff_tx_data[(DATAWIDTH-1):0]
data
I 送信データ 。DATAWIDTHは、コンフィギュレーションされた FIFO データ幅に応じて 8 または 32のいずれかになります。DATAWIDTHが 32 である場合、送信された 初のバイトはff_tx_data[31:24]で、その後にff_tx_data[23:16]が続きます。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–7
ff_tx_mod[1:0] empty
I 送信データ・モジュロ。 終フレーム・ワードの有効でないバイトを示します。
■ 11: ff_tx_data[23:0]が有効でない
■ 10: ff_tx_data[15:0] が有効でない
■ 01:ff_tx_data[7:0] が有効でない
■ 00:ff_tx_data[31:0] は有効である
この信号は、DATAWIDTH信号が 32 に設定されている場合にのみ有効です。
ff_tx_sop startofpacket
I パケットの開始を送信します。 フレームの 初のバイト(送信先アドレスの 初のバイト)がff_tx_data上に送信されるときにアサートされます。
ff_tx_eop endofpacket
I パケットの終端を送信します。フレームの 後のバイト(FCS フィールドの 後のバイト)がff_tx_data上に送信されるときにアサートされます。
ff_tx_err error
I 送信フレーム・エラー。 送信済みフレームが無効であることを示すために、フレームの 後のバイトとともにアサートされます。MAC ファンクションは、エラーとともにこの無効なフレームを GMIIに送信します。
ff_tx_rdy readyO MAC レディ。アサートされると、MAC ファンク
ションがユーザー・アプリケーションからのデータを受け入れ可能であることを示します。
コンポーネント固有の信号 (1)
ff_tx_crc_fwd
I この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
送信 CRC 挿入。ff_tx_eop が 1 に設定されるときにこの信号を 0 に設定すると、MAC ファンクションは CRC を計算してフレームに挿入します。この信号が 1 に設定されると、ユーザー・アプリケーションは CRC を提供することが要求されます。
tx_ff_uflow
O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
送信 FIFO バッファでアンダーフローが発生するとアサートされます。
ff_tx_septy
O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
FIFO バッファが tx_section_empty レジスタで定義された section-empty スレッショルド以上になると、デアサートされます。ユーザー・アプリケーションは、この信号を使用して、FIFO への書き込みを停止し、バックプレッシャ方式を開始できます。
表 6–8. MAC 送信インタフェース信号 (2 / 3 )
名称Avalon-ST 信号の
種類 I/O 説明
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–8 6インタフェース信号
ポーズおよびマジック・パケット信号ポーズとマジック・パケットの信号はコンポーネント固有の信号です。 表 6–9 では、
これらの信号について説明します。
ff_tx_a_full
O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
送信 FIFO バッファが almost full スレッショルドに達するとアサートされます。
ff_tx_a_empty
O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
送信 FIFO バッファが almost empty スレッショルド未満になるとアサートされます。
表 6–8の注:(1) これらのコンポーネント固有の信号は、Avalon インタフェースと関連がなく、SOPC Builder システムおよび Qsys システム
ではアクセスできません。
表 6–8. MAC 送信インタフェース信号 (3 / 3 )
名称Avalon-ST 信号の
種類 I/O 説明
表 6–9. ポーズおよびマジック・パケット信号 (1 / 2 )
名称 I/O 説明
xon_gen
I この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
この信号を少なくとも 1 tx_clkクロック・サイクル アサートすると、ポーズ・クアンタが 0 のポーズ・フレームの生成がトリガされます。 MAC ファンクションは、受信 FIFO バッファのステータスに関係なく、ポーズ・フレームを生成します。
この信号は以下の状況では使用されません。
■ command_configレジスタのxon_genビットが1に設定されている場合、この信号は無視されます。
■ Enable full duplex flow control オプションがオフになる場合、この信号は使用できません。
xoff_gen
I この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
この信号を少なくとも 1 tx_clkクロック・サイクル アサートすると、ポーズ・クアンタが pause_quantでコンフィギュレーションされたポーズ・フレームの生成がトリガされます。 MAC ファンクションは、受信 FIFO バッファのステータスに関係なく、ポーズ・フレームを生成します。
この信号は以下の状況では使用されません。
■ command_configレジスタのxoff_genビットが1に設定されている場合、この信号は無視されます。
■ Enable full duplex flow control オプションがオフになる場合、この信号は使用できません。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–9
MII/GMII/RGMII信号 表 6–10 では、MII/GMII/RGMII 信号について説明します。
magic_sleep_n
I この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
このアクティブ Low 信号をアサートすると、ノードはパワーダウン状態になります。
マジック・パケット・サポートがイネーブルされる(command_config レジスタの MAGIC_ENAビットが 1 に設定)と、受信ロジックは MAC 受信 FIFO バッファへのデータ書き込みを停止して、マジック・パケット検出ロジックがイネーブルされます。この信号を 1 に設定すると、MAC は正常なフレーム受信モードに戻ります。
Enable magic packet detection オプションがオンになっている場合にのみ、この信号が使用されます。
magic_wakeup
0 この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
MAC ファンクションがパワーダウン状態になっている場合、この信号をアサートすると、マジック・パケットが検出され、ノードが正常なフレーム受信モードに戻るように要求されることを示します。
Enable magic packet detection オプションがオンになっている場合にのみ、この信号が使用されます。
表 6–9の注:(1) これらのコンポーネント固有の信号は、Avalon インタフェースと関連がなく、SOPC Builder システムおよび Qsys システム
ではアクセスできません。
表 6–9. ポーズおよびマジック・パケット信号 (2 / 2 )
名称 I/O 説明
表 6–10. GMII/RGMII/MII信号 (1 / 2 )
名称 I/O 説明
GMII 送信
gm_tx_d[7:0] I GMII 送信データ・バス
gm_tx_en O GMII 送信データ・バス上のデータが有効であることを示すためにアサートされます。
gm_tx_err O 送信された現行フレームが無効であることを PHY に示すためにアサートされます。
GMII 受信
gm_rx_d[7:0] I GMII 受信データ・バス
gm_rx_dv
I この信号は、GMII 受信データ・バス上のデータが有効であることを示すためにアサートされます。CRC フィールドの 初のプリアンブル・バイトから 後のバイトが受信されるまで、フレーム受信の間アサートされ続けます。
gm_rx_err I この信号は、受信フレームにエラーがあることを示すために、PHY によってアサートされます。
RGMII 送信
rgmii_out[3:0]O RGMII 送信データ・バス。tx_clkの立ち上がりエッジで
gm_tx_d[3:0]を、tx_clkの立ち下がりエッジで gm_tx_d[7:4]を出力します。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–10 6インタフェース信号
PHY管理信号表 6–11 では、PHY 管理信号について説明します。
tx_controlO コントロール出力信号。 tx_clkの立ち上がりエッジでは gm_tx_en
を、tx_clkの立ち下がりエッジでは(gm_tx_en XOR gm_tx_err)の排他的論理和の結果値を出力します。
RGMII 受信
rgmii_in[3:0]I RGMII 受信データ・バス。rx_clkの立ち上がりエッジで
gm_rx_d[3:0]を、rx_clkの立ち下がりエッジで gm_rx_d[7:4]を入力します。
rx_controlI RGMII コントロール入力信号。 rx_clkの立ち上がりエッジでは
gm_rx_dvを、rx_clkの立ち下がりエッジでは(gm_rx_dv XOR gm_rx_err)の排他的論理和の結果値を入力します。
MII 送信
m_tx_d[3:0] O MII 送信データ・バス
m_tx_en O MII 送信データ・バス上のデータが有効であることを示すためにアサートされます。
m_tx_err O 送信されたフレームが無効であることを PHY デバイスに示すためにアサートされます。
MII 受信
m_rx_d[3:0] I MII 受信データ・バス
m_rx_en
I この信号は、MII 受信データ・バス上のデータが有効であることを示すためにアサートされます。CRC フィールドの 初のプリアンブル・バイトから 後のバイトが受信されるまで、フレーム受信中にアサートされ続けます。
m_rx_err I この信号は、受信フレームにエラーがあることを示すために、PHY によってアサートされます。
MII PHY ステータス
m_rx_colI 衝突検出。 フレーム送信中に衝突が発生したことを示すために PHY に
よってアサートされます。 この信号は、全二重モードまたはギガビット・モードでは使用されません。
m_rx_crsI キャリア検知。 送受信アクティビティがイーサネット回線上で検出され
たことを示すために PHY デバイスによってアサートされます。 この信号は、全二重モードまたはギガビット・モードでは使用されません。
表 6–10. GMII/RGMII/MII信号 (2 / 2 )
名称 I/O 説明
表 6–11. PHY 管理インタフェース信号 (1 / 2 )
名称 I/O 説明mdio_in I 管理データ入力
mdio_out O 管理データ出力
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–11
mdio_oen O mdio_in または mdio_outをイネーブルするためのアクティブ Low 信号。 4-23 ページの「MDIO インタフェース」 に、MDIO 接続を示します。
mdc
O 管理データ・クロック。 Avalon-MM インタフェース・クロック信号 clkから生成されます。Host clock divisor パラメータで、分周係数をこのクロックの周波数が 2.5 MHz を超えないように定義する必要があります。これらのパラメータについて詳しくは、3-3 ページの「MAC オプション」を参照してください。
データ・ビットは、このクロックの各立ち上がりエッジでシフト・イン/アウトされます。 すべてのフィールドは、 上位ビットが 初にシフト・イン/アウトされます。
表 6–11. PHY 管理インタフェース信号 (2 / 2 )
名称 I/O 説明
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–12 6インタフェース信号
10/100/1000 マルチ・ポート・イーサネット MAC信号図 6–2 に、内部 FIFO バッファが組み込まれていない MAC のバリエーションであ
る、10/100/1000 マルチ・ポート・イーサネット MAC ファンクションの入出力信号
をすべて示します。
図 6–2. マルチ・ポート・イーサネット MAC信号
Multi-Port MAC
PHY Management Signals
mdio_in
mdc
mdio_oen
mdio_out
Pause and Magic Packet Signals
mac_tx_clk_n
mac_rx_clk_n
ClockSignals
xon_gen_n
xoff_gen_n
magic_wakeup_n
magic_sleep_n_n
MAC Status Signals
set_10_n
set_1000_n
ena_10_n
eth_mode_n
Reset Signal
reset
ClockSignals
rx_clk_n
tx_clk_n8
data_tx_data_n[7:0]
data_tx_eop_n
data_tx_error_n
data_tx_sop_n
data_tx_valid_n
data_tx_ready_n
MAC Transmit Interface Signals
tx_crc_fwd_n
tx_ff_uflow_n
MAC Receive Interface Signals
5
MAC Packet Classification
Signals
pkt_class_valid_n
pkt_class_data_n[4:0]
nrx_afull_channel[CHANNEL_WIDTH-1:0]
rx_afull_data[1:0]
rx_afull_valid
MAC FIFO Status Signals
rx_afull_clk
32
32
n
MAC ControlInterface Signals
clk
address[(log2 MAX_CHANNELS+7):0]
read
write
readdata[31:0])
writedata[31:0]
waitrequest
4
4
MII Signals
m_rx_d_n[3:0]m_rx_dv_n
m_rx_err_n
m_col_n
m_crs_n
m_tx_d_n[3:0]
m_tx_en_n
m_tx_err_n
4
4
RGMII Signalsrgmii_out_n[3:0]
tx_control_n
rgmii_in_n[3:0]
rx_control_n
8
8
GMII Signals
gm_rx_d_n[7:0]
gm_rx_dv_n
gm_rx_err_n
gm_tx_d_n[7:0]
gm_tx_en_n
gm_tx_err_n
5
8data_rx_data_n[7:0]
data_rx_eop_n
data_rx_sop_n
data_rx_error_n[4:0]
data_rx_ready_n
data_rx_valid_n
2
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–13
クロックおよびリセット信号表 6–12 では、クロック信号について説明します。
残りのクロックおよびリセット信号について詳しくは、6-2 ページの「クロックおよ
びリセット信号」を参照してください。
MAC受信インタフェース信号表 6–13 では、MAC 受信インタフェースに関連するすべての信号について説明しま
す。
表 6–12. クロック信号
名称Avalon-ST信号
の種類 I/O 説明
mac_rx_clk clkO Avalon-ST 受信データおよび受信パケット分類イン
タフェース用の受信 MAC クロック(2.5/25/125 MHz)。
mac_tx_clk clk O Avalon-ST 送信データ・インタフェース用の送信MAC クロック(2.5/25/125 MHz)。
表 6–13. MAC受信インタフェース信号
名称Avalon-ST信号
の種類 I/O 説明
data_rx_valid_n valid
O 受信データ有効。 アサートされると、この信号はdata_rx_data_n、 data_rx_sop_n、 data_rx_eop_n、 および data_rx_error_n 信号上のデータが有効であることを示します。
data_rx_data_n[7:0] data O 受信データ
data_rx_sop_n startofpacketO パケットの開始を受信します。フレームの 初のバ
イトまたはワードが data_rx_data_n 上で受信されると、この信号がアサートされます。
data_rx_eop_n endofpacketO パケットの終端を受信します。フレームの 後のバ
イトまたはワードが data_rx_data_n 上で受信されると、この信号がアサートされます。
data_rx_ready_n ready
I 受信アプリケーション・レディ。 ユーザー・アプリケーションが MAC ファンクションからデータを受信可能な場合、data_rx_clk_n の立ち上がりエッジでこの信号をアサートします。
ユーザー・アプリケーションがデータを受信可能でない場合、パケットはエラーにより破棄されるか、切り捨てられます。
data_rx_error_n[4:0] error
O 受信エラー。 フレームの受信時にエラーが検出されたことを示すために、フレームの 終バイトとともにアサートされます。各ビットについて詳しくは、6 ページの表 6–7 でビット 5 から 1 までの説明を参照してください。この信号のビット 4 は、表のビット 5 にマップし、次も同様に続きます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–14 6インタフェース信号
MAC送信インタフェース信号表 6–14 では、MAC 送信インタフェースに関連するすべての信号について説明しま
す。
表 6–14. MAC 送信インタフェース信号
名称Avalon-ST信号
の種類 I/O 説明
Avalon-ST 信号
data_tx_valid_n
valid I 送信データ有効。 アサートされると、この信号はdata_tx_data_n、 data_tx_sop_n、 data_tx_eop_n、 および data_tx_error_n 信号上のデータが有効であることを示します。
data_tx_data_n[7:0] data I 送信データ
data_tx_sop_n startofpacketI パケットの開始を送信します。 フレームの 初のバ
イトが data_tx_data_n 上に送信されると、この信号がアサートされます。
data_tx_eop_n endofpacket
I パケットの終端を送信します。フレームの 後のバイト(FCS フィールドの 後のバイト)がdata_tx_data_n 上に送信されると、この信号がアサートされます。
data_tx_error_n error
I 送信フレーム・エラー。この信号は、送信済みフレームが無効であることを示すために、フレームの後のバイトとともにアサートされます。 MAC ファ
ンクションは、エラーとともにこのフレームをGMII に伝送します。
data_tx_ready_n readyO MAC レディ。この信号がアサートされると、MAC
ファンクションがユーザー・アプリケーションからのデータを受け入れ可能であることを示します。
コンポーネント固有の信号 (1)
tx_crc_fwd_n
— I この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
アサートされます。data_tx_eop_n がアサートされるときにこのアクティブ Low 信号をアサートすると、MAC ファンクションは CRC を計算してフレームに挿入します。そうでない場合、ユーザー・アプリケーションは CRC を提供することが要求されます。
tx_ff_uflow_n
— O この信号は SOPC Builder システムまたは Qsys システムではアクセスできません。
送信 FIFO バッファでアンダーフローが発生するとアサートされます。
表 6–14の注:(1) これらのコンポーネント固有の信号は、Avalon インタフェースと関連がなく、SOPC Builder システムおよび Qsys システム
ではアクセスできません。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–15
MACパケット分類信号MAC パケット分類インタフェースは、受信パケット分類を提供する Avalon-ST ソー
ス・ポートです。表 6–15 では、パケット分類信号について説明します。
MAC FIFOステータス信号
MAC FIFO ステータス・インタフェースは、外部 FIFO バッファのフィル・レベルを
MAC ファンクションに提供する Avalon-ST シンク・ポートです。表 6–16 では、
FIFO ステータス信号について説明します。
表 6–15. MACパケット分類信号
名称Avalon-ST信号
の種類 I/O 説明
pkt_class_valid_n valid O この信号がアサートされると、この信号は分類データが有効であることを示します。
pkt_class_data_n[4:0] data
O 各パケットの先頭に示される分類データで、以下の情報が含まれます。
■ ビット 4— ユニキャスト・フレームの場合、1 に設定します。
■ ビット 3— ブロードキャスト・フレームの場合、1に設定します。
■ ビット 2— マルチキャスト・フレームの場合、1 に設定します。
■ ビット 1—VLAN フレームの場合、1 に設定します。
■ ビット 0— スタック VLAN フレームの場合、1 に設定します。
表 6–16. MAC FIFOステータス信号
信号名Avalon-ST信号
の種類 I/O 説明
rx_afull_valid_nvalid I この信号は、外部 FIFO バッファのフィル・レベル、
rx_afull_data_n[1:0]、が有効であることを示すためにアサートされます。
rx_afull_data_n[1:0] data
I 外部 FIFO バッファのフル・レベルを転送します。
■ rx_afull_data_n[1]— 外部受信 FIFO バッファが、almost full であることを示す警告レベルに初めて達すると、1 に設定されます。これが検出されると、MAC ファンクションはポーズ・フレームを生成します。
■ rx_afull_data_n[0]— 外部受信 FIFO バッファがオーバーフローする前にクリティカル・レベルに達すると、1 に設定されます。このビットがパケット転送の途中で 1 に設定されると、FIFO バッファはオーバーフローとみなされます。
rx_afull_channel[(CHANNEL_WIDTH-1):0]
channel Iステータスが適用されるポート番号。
rx_afull_clk clk I MAC FIFO ステータス・インタフェースをドライブするクロックです。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–16 6インタフェース信号
MACステータス信号MAC ステータス信号について詳しくは、6-3 ページの「MAC ステータス信号」を参
照してください。
ポーズおよびマジック・パケット信号ポーズおよびマジック・パケット信号について詳しくは、6-8 ページの「ポーズおよ
びマジック・パケット信号」を参照してください。
MII/GMII/RGMII信号MII/GMII/RGMII 信号について詳しくは、6-9 ページの「MII/GMII/RGMII 信号」を参
照してください。
PHY管理信号PHY 管理信号について詳しくは、6-10 ページの「PHY 管理信号」を参照してくださ
い。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–17
1000BASE-X/SGMII PCSを備えた 10/100/1000イーサネット MACの信号
図 6–3 に、内部 FIFO バッファが組み込まれた MAC のバリエーションである、
1000BASE-X/SGMII PCS を備えた 10/100/1000 イーサネット MAC の入出力信号を
すべて示します。
図 6–3. 1000BASE-X/SGMII PCSを備えた 10/100/1000イーサネット MACの信号
10/100/1000 Ethernet MAC with 1000Base-X PCS/SGMII
Reset Signal
reset
Ten Bit Interface Signals
tbi_rx_clk
tbi_rx_d[9:0]
tbi_tx_clk
tbi_tx_d[9:0]
Status LED Signals
led_an
led_crs
led_col
led_char_err
led_link
led_disp_err
PHY Management Signals
mdio_in
mdc
mdio_oen
mdio_out
SERDESControlSignals
sd_loopback
powerdown
10
10
Pause and Magic Packet Signals
xon_gen
xoff_gen
magic_wakeup
magic_sleep_n
n
2
MAC Transmit Interface Signals
ff_tx_crc_fwd
ff_tx_data[DATAWIDTH-1:0]
ff_tx_eop
ff_tx_err
ff_tx_sop
ff_tx_wren
tx_ff_uflow
ff_tx_clk
ff_tx_rdy
ff_tx_septy
ff_tx_mod[1:0]
ff_tx_a_full
ff_tx_a_empty
n
2
6
18
4
MAC Receive Interface Signals
ff_rx_data[DATAWIDTH-1:0]
ff_rx_mod[1:0]
ff_rx_eop
ff_rx_sop
rx_err[5:0]
rx_err_stat[17:0]
rx_frm_type[3:0]
ff_rx_dsav
ff_rx_rdy
ff_rx_clk
ff_rx_dval
ff_rx_a_full
ff_rx_a_empty
8
32
32
MAC ControlInterface
Signals
clk
address[7:0]
read
write
readdata[31:0]
writedata[31:0]
waitrequest
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–18 6インタフェース信号
リセット信号MAC のシステム側の信号について詳しくは、6-2 ページの「クロックおよびリセッ
ト信号」を参照してください。
MACコントロール・インタフェース信号MAC のシステム側の信号について詳しくは、6-2 ページの「MAC コントロール・イ
ンタフェース信号」を参照してください。
MAC受信インタフェース信号MAC のシステム側の信号について詳しくは、 6-3 ページの「MAC 受信インタフェース
信号」を参照してください。
MAC送信インタフェース信号MAC のシステム側の信号について詳しくは、6-6 ページの「MAC 送信インタフェー
ス信号」を参照してください。
TBIインタフェース信号コア・バリエーションにエンベデッド PMA が含まれない場合、PCS ブロックは外
部 SERDES チップに 125 MHz の 10 ビット・インタフェース(TBI)を提供します。
表 6–17 では、外部 SERDES チップに提供される PCS 信号について説明します。
ステータス LEDコントロール信号表 6–18 に、ステータス LED コントロール信号を示します。
表 6–17. 外部 SERDESチップに提供される TBIインタフェース信号
名称 I/O 説明
tbi_tx_d(9:0) O TBI 送信データ。PCS ファンクションは、tbi_tx_clkと同期してこのバス上のデータを送信します。
tbi_tx_clk I 外部 SERDES からの 125 MHz の TBI 送信クロックです。この信号は通常、ローカル基準クロック・オシレータによって供給されます。
tbi_rx_clkI 外部 SERDES からの 125 MHz の TBI 受信クロックです。この信号は
通常は、エンコードされたライン・ストリームから復元されたライン・クロックによって供給されます。
tbi_rx_d[9:0]I TBI 受信データ。このバスは外部 SERDES からのデータを転送しま
す。このバスを tbi_rx_clkに同期させます。データは自由にアラインメントできます。
表 6–18. ステータス LEDインタフェース信号 (1 / 2 )
名称 I/O 説明
led_link O この信号は、リンク同期が確立したことを示すためにアサートされます。
led_crsO この信号は、送受信パス上にアクティビティがあることを示すために
アサートされます。ディアサートされると、バス上にトラフィックがないことを示します。
led_col
O この信号は、フレーム送信中に衝突が検出されたことを示すためにアサートされます。SGMII がイネーブルされて、PCS ファンクションが標準 1000BASE-X のモード、または全二重モードで動作する場合は、この信号が常にディアサートされます。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–19
SERDESコントロール信号表 6–19 では、SERDES コントロール信号の機能について説明します。
ポーズおよびマジック・パケット信号ポーズおよびマジック・パケット信号について詳しくは、6-8 ページの「ポーズおよ
びマジック・パケット信号」を参照してください。
PHY管理信号PHY 管理信号について詳しくは、6-10 ページの「PHY 管理インタフェース信号」を
参照してください。
led_anO オート・ネゴシエーション・ステータス。この信号は、オート・ネゴ
シエーションが完了すると PCS ファンクションによってアサートされます。
led_char_err O 10 ビット・キャラクタ・エラー。誤った 10 ビット・キャラクタが検出されたときに、1 tbi_rx_clkサイクルの間、アサートされます。
led_disp_err
O 10 ビット・ランニング・ディスパリティ・エラー。 ディスパリティ・エラーが検出されたときに、1 tbi_rx_clkサイクルの間、アサートされます。ランニング・ディスパリティ・エラーは、過去に受信したグループ(および現在受信したグループも含まれる場合がある)にエラーがあることを示します。
表 6–18. ステータス LEDインタフェース信号 (2 / 2 )
名称 I/O 説明
表 6–19. SERDES コントロール信号
名称 I/O 説明
powerdown
O パワーダウン・イネーブル。 PCS ファンクションがパワーダウン・モードで動作する場合にアサートされます。PCS ファンクションが通常モードで動作する場合にディアサートされます。この信号は外部SERDES が使用されているときにのみ実装されます。
sd_loopback
O SERDES ループバック・コントロール。 PCS ファンクションがループバック・モードで動作する場合にアサートされます。この信号を使用して、外部 SERDES デバイスをループバック・モードで動作するようにコンフィギュレーションできます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–20 6インタフェース信号
1000BASE-X/SGMII PCSを備えた 10/100/1000マルチ・ポート・イーサネット MACの信号
図 6–4 に、内部 FIFO バッファが組み込まれていない MAC のバリエーションであ
る、1000BASE-X/SGMII PCS を備えた 10/100/1000 マルチ・ポート・イーサネット
MAC の入出力信号をすべて示します。
図 6–4. 1000BASE-X/SGMII PCSを備えたマルチ・ポート・イーサネット MACの信号
Multi-Port MAC with 1000BASE-X/SGMII PCS
PHY Management Signals
mdio_in
mdc
mdio_oen
mdio_out
Reset Signal
reset
Status LED Signals
led_an_n
led_crs_n
led_col_n
led_char_err_n
led_link_n
led_disp_err_n
SERDESControlSignals
sd_loopback_n
powerdown_n
Pause and Magic Packet Signals
xon_gen_n
xoff_gen_n
magic_wakeup_n
magic_sleep_n_n
8
5
mac_tx_clk_n
mac_rx_clk_n
ClockSignals
data_rx_data_n[7:0]
data_rx_eop_n
data_rx_sop_n
data_rx_error_n[4:0]
data_rx_ready_n
data_rx_valid_n
MAC Receive Interface Signals
MAC Transmit Interface Signals
data_tx_data_n[7:0]
data_tx_eop_n
data_tx_error_n
data_tx_sop_n
data_tx_valid_n
data_tx_ready_n
tx_crc_fwd_n
tx_ff_uflow_n
8
MAC Packet Classification
Signals
pkt_class_valid_n
pkt_class_data_n[4:0]5
n
rx_afull_channel[CHANNEL_WIDTH-1:0]
rx_afull_data[1:0]
rx_afull_valid
MAC FIFO Status Signals
rx_afull_clk
n
32
32
MAC ControlInterface Signals
clk
address[(log2 MAX_CHANNELS+7):0]
read
write
readdata[31:0]
writedata[31:0]
waitrequest
Ten Bit Interface Signals
tbi_rx_clk_n
tbi_rx_d_n[9:0]
tbi_tx_clk_n
tbi_tx_d_n[9:0]
10
10
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–21
信号について詳しくは、表 6–20 に記載されているそれぞれのセクションを参照して
ください。
表 6–20. 参照資料
内部信号 セクション
クロックおよびリセット信号 6-13 ページの「クロックおよびリセット信号」
MAC コントロール・インタフェース
6-2 ページの「MAC コントロール・インタフェース信号」
MAC 送信インタフェース 6-13 ページの「MAC 受信インタフェース信号」
MAC 受信インタフェース 6-14 ページの「MAC 送信インタフェース信号」
MAC パケット分類信号 6-15 ページの「MAC パケット分類信号」
MAC FIFO ステータス信号 6-15 ページの「MAC FIFO ステータス信号」
ポーズおよびマジック・パケット信号
6-8 ページの「ポーズおよびマジック・パケット信号」
PHY 管理信号 6-10 ページの「PHY 管理信号」
10 ビット・インタフェース 6-18 ページの「TBI インタフェース信号」
ステータス LED 信号 6-18 ページの「ステータス LED コントロール信号」
SERDES コントロール信号 6-19 ページの「SERDES コントロール信号」
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–22 6インタフェース信号
1000BASE-X/SGMII PCSおよび PMAを備えた 10/100/1000イーサネット MACの信号図 6–5 に、内部 FIFO バッファが組み込まれた MAC のバリエーションである
10/100/1000 イーサネット MAC、およびエンベデッド PMA を備えた
1000BASE–X/SGMII PCS のすべての出入力信号を示します。
図 6–5. 10/100/1000 イーサネット MAC およびエンベデッド PMA信号を備えた 1000BASE–X/SGMII PCS
Status
LED
Signals
led_an
led_crs
led_col
led_char_err
led_link
led_disp_err
PHY
Management
Signals
mdio_in
mdc
mdio_oen
mdio_out
1.25 Gbps
Serial Signals
ref_clk
rx_p
tx_p
10/100/1000 Ethernet MAC and 1000BASE-X/SGMII PCS
with Embedded PMA
Reset
Signalreset
Pause and Magic
Packet Signals
xon_gen
xoff_gen
magic_wakeup
magic_sleep_n
n
2
MAC Transmit
Interface Signalsff_tx_crc_fwd
ff_tx_data[DATAWIDTH-1:0]
ff_tx_eop
ff_tx_err
ff_tx_sop
ff_tx_wren
tx_ff_uflow
ff_tx_rdy
ff_tx_septy
ff_tx_mod[1:0]
ff_tx_a_full
ff_tx_a_empty
ff_tx_clk
ff_rx_clk
MAC Receive
Interface Signals
ff_rx_data[DATAWIDTH-1:0]
ff_rx_mod[1:0]
ff_rx_eop
ff_rx_sop
rx_err[5:0]
rx_err_stat[17:0]
rx_frm_type[3:0]
ff_rx_dsav
ff_rx_rdy
ff_rx_dval
ff_tx_a_full
ff_tx_a_empty
n
2
6
18
4
8
32
32
MAC Control
Interface
Signals
clk
address[7:0]
read
write
readdata[31:0]
writedata[31:0]
waitrequest
SERDES
Control
Signals
pcs_pwrdn_out
gxb_pwrdn_in
gxb_cal_blk_clk
reconfig_clk
reconfig_togxb
reconfig_fromgxb
rx_recovclkout
reconfig_busy
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–23
リセット信号リセット信号について詳しくは、 6-2 ページの「クロックおよびリセット信号」を参
照してください。
MACコントロール・インタフェース信号MAC のシステム側の信号について詳しくは、6-2 ページの「MAC コントロール・イ
ンタフェース信号」を参照してください。
MAC受信インタフェース信号MAC のシステム側の信号について詳しくは、6-3 ページの「MAC 受信インタフェー
ス信号」を参照してください。
MAC送信インタフェース信号MAC のシステム側の信号について詳しくは、6-6 ページの「MAC 送信インタフェー
ス信号」を参照してください。
1.25 Gbpsシリアル・インタフェースバリアントにエンベデッド PMA が含まれる場合、PMA は 1.25 GHz のシリアル・イ
ンタフェースを提供します。表 6–21 に MDI 信号を示します。
ポーズおよびマジック・パケット信号ポーズおよびマジック・パケット信号について詳しくは、6-8 ページの「ポーズおよ
びマジック・パケット信号」を参照してください。
PHY管理信号PHY 管理信号について詳しくは、6-10 ページの「表 6–11 では、PHY 管理信号につ
いて説明します。」を参照してください。
ステータス LEDコントロール信号ステータス LED コントロール信号について詳しくは、6-18 ページの「ステータス
LED コントロール信号」を参照してください。
図 6–5の注:(1) SERDES コントロール信号は、GX トランシーバ付きのデバイスをターゲットとすバリエーションでのみ使用できます。
Stratix II GX および Arria GX デバイスの場合、リコンフィギュレーション信号(reconfig_clk、 reconfig_togxb、 および reconfig_fromgxb)は Enable transceiver dynamic reconfiguration オプションがオンになるときにのみ使用できます。リコンフィギュレーション信号(gxb_cal_blk_clk、 pcs_pwrdwn_out、 gxb_pwrdn_in、 reconfig_clk、および reconfig_busy)は、GX トランシーバ付きの Stratix V デバイスをターゲットとするバリエーションでは使用できません。
図 6–5. 10/100/1000 イーサネット MAC およびエンベデッド PMA信号を備えた 1000BASE–X/SGMII PCS
表 6–21. 1.25 Gbps MDIインタフェース信号
名称 I/O 説明ref_clk I 125 MHz ローカル基準クロック・オシレータ
rx_p I シリアル差動受信インタフェース
tx_p O シリアル差動受信インタフェース
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–24 6インタフェース信号
SERDESコントロール信号表 6–22 では、SERDES コントロール信号の機能について説明します。これらの信
号は、GX トランシーバを備えたデバイスに実装された PMA ブロックのみに適用さ
れます。
表 6–22. SERDESコントロール信号 (1 / 2 )
名称 I/O 説明rx_recovclkout O PMA ブロックからのリカバリ・クロック。
pcs_pwrdn_out
O パワーダウンのステータス。PCS ファンクションがパワーモードで動作する場合にアサートされ、PCS ファンクションが通常モードで動作する場合にディアサートされます。この信号は、内部 SERDESがパワーダウン信号をエクスポートするためのオプションとともに使用される場合にのみ実装されます。
この信号は、GX トランシーバを備えた Stratix V デバイスに実装された PMA ブロックでは使用できません。
gxb_pwrdn_in
I パワーダウン・イネーブル。 この信号をアサートすると、トランシーバ・クワッド・ブロックがパワーダウンします。この信号は、内部SERDES がパワーダウン信号をエクスポートするためのオプションとともに使用される場合にのみ実装されます。
この信号は、GX トランシーバを備えた Stratix V デバイスに実装された PMA ブロックでは使用できません。
gxb_cal_blk_clk
I ALT2GXB モジュール(SERDES)のためのキャリブレーション・ブロック・クロック。 このクロックは通常、125 MHz ref_clkに接続されます。内部 SERDES が使用されているときにのみ実装されます。
この信号は、GX トランシーバを備えた Stratix V デバイスに実装された PMA ブロックでは使用できません。
reconfig_clk
I ダイナミック・リコンフィギュレーション・コントローラ用の基準クロック。 トランシーバを動的に制御するために、デザインでダイナミック・リコンフィギュレーション・コントローラを使用する場合は、リコンフィギュレーション・コントローラおよび MegaCoreファンクションの両方でこのクロックが必要となります。このクロックは 37.5 ~ 50MHz で動作しなければなりません。外部リコンフィギュレーション・コントローラが使用されない場合は、このクロックを Low に接続します。
この信号は、GX トランシーバを備えた Stratix V デバイスに実装された PMA ブロックでは使用できません。
reconfig_togxb[n:0]
I 外部ダイナミック・リコンフィギュレーション・コントローラから入力されます。 ダイナミック・リコンフィギュレーション用に複数のトランシーバ・チャネルの選択をサポートします。 外部リコンフィギュレーション・コントローラが使用されない場合は、このバスを3’b010に接続します。
GX トランシーバを備えた Stratix V デバイスに実装された PMA ブロックの場合、バス幅は [139:0] となります。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–25
reconfig_fromgxb[n:0]
O 外部ダイナミック・リコンフィギュレーション・コントローラに接続されます。 バスは、リコンフィギュレーション・コントローラに送信されている設定のトランシーバ・チャネルを特定します。 外部リコンフィギュレーション・コントローラが使用されない場合は、このバスを切断しておきます。
GX トランシーバを備えた Stratix V デバイスに実装された PMA ブロックの場合、バス幅は [91:0] となります。
reconfig_busy
I 外部ダイナミック・リコンフィギュレーション・コントローラから入力されます。 この信号は、オフセット・キャンセレーション時にダイナミック・リコンフィギュレーション・コントローラがビジー状態であることを示すために使用されます。 外部リコンフィギュレーション・コントローラが使用されない場合は、このバスを 1'b0 に接続します。
この信号は、GX トランシーバを備えた Stratix V デバイスに実装された PMA ブロックでは使用できません。
表 6–22. SERDESコントロール信号 (2 / 2 )
名称 I/O 説明
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–26 6インタフェース信号
1000BASE-X/SGMII PCSとエンベデッドPMAを備えた10/100/1000マルチ・ポート・イーサネット MACの信号
図 6–6 に、内部 FIFO が組み込まれていない MAC のバリエーションである、
1000BASE-X/SGMII PCS とエンベデッド PMA ファンクションを備えた
10/100/1000 マルチ・ポート・イーサネット MAC の入出力信号をすべて示します。
図 6–6. 1000BASE-X/SGMII PCSとエンベデッド PMAを備えたマルチ・ポート・イーサネット MACの信号
図 6–6の注:(1) SERDES コントロール信号は、GX トランシーバ付きのデバイスをターゲットとすバリエーションで使用できます。Stratix II
GX および Arria GX デバイスの場合、リコンフィギュレーション信号(reconfig_clk、 reconfig_togxb、 および reconfig_fromgxb)は Enable transceiver dynamic reconfiguration オプションがオンになるときにのみ使用できます。リコンフィギュレーション信号(gxb_cal_blk_clk、 pcs_pwrdwn_out、 gxb_pwrdn_in、 reconfig_clk、および reconfig_busy)は、GX トランシーバ付きの Stratix V デバイスをターゲットとするバリエーションでは使用できません。
Multi-Port MAC with PCS and PMA
PHY
Management
Signals
mdio_in
mdc
mdio_oen
mdio_out
Reset
Signalreset
1.25 Gbps
Serial Signals
ref_clk_n
rx_p_n
tx_p_n
Status
LED
Signals
led_an_n
led_crs_n
led_col_n
led_char_err_n
led_link_n
led_disp_err_n
mac_tx_clk_nmac_rx_clk_n
Clock
Signals
xon_gen_n
xoff_gen_n
magic_wakeup_n
magic_sleep_n_nPause and Magic
Packet Signals
SERDES
Control
Signals
pcs_pwrdn_out
gxb_pwrdn_in_n
gxb_cal_blk_clk
reconfig_clk_n
reconfig_togxb_n
reconfig_fromgxb
8
data_tx_data_n[7:0]
data_tx_eop_ndata_tx_error_n
data_tx_sop_n
data_tx_valid_ndata_tx_ready_n
MAC Transmit
Interface
Signals
tx_crc_fwd_ntx_ff_uflow_n
8
5
data_rx_data_n[7:0]
data_rx_eop_ndata_rx_sop_n
data_rx_error_n[4:0]
data_rx_ready_ndata_rx_valid_n
MAC Receive
Interface
Signals
MAC Packet
Classification
Signals
pkt_class_valid_npkt_class_data_n[4:0]
5
nrx_afull_channel(CHANNEL_WIDTH-1:0)
rx_afull_data[1:0]
rx_afull_valid
MAC FIFO
Status Signals
rx_afull_clk
32
n
clk
read
write
readdata[31:0]
writedata[31:0]
waitrequest
address[(log2 MAX_CHANNELS+7):0]
32
MAC Control
Interface Signals
rx_recovclkout_nreconfig_busy_n
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–27
信号について詳しくは、表 6–23 に記載されているそれぞれのセクションを参照して
ください。
表 6–23. 参考資料
インタフェース信号 セクション
クロックおよびリセット信号 6-13 ページの「クロックおよびリセット信号」
MAC コントロール・インタフェース
6-2 ページの「MAC コントロール・インタフェース信号」
MAC 送信インタフェース 6-13 ページの「MAC 受信インタフェース信号」
MAC 受信インタフェース 6-14 ページの「MAC 送信インタフェース信号」
MAC パケット分類信号 6-15 ページの「MAC パケット分類信号」
MAC FIFO ステータス信号 6-15 ページの「MAC FIFO ステータス信号」
ポーズおよびマジック・パケット信号
6-8 ページの「ポーズおよびマジック・パケット信号」
PHY 管理信号 6-10 ページの「PHY 管理信号」
1.25 Gbps シリアル信号6-24 ページの「1.25 Gbps シリアル・インタフェース」
ステータス LED 信号 6-18 ページの「ステータス LED コントロール信号」
SERDES コントロール信号 6-25 ページの「SERDES コントロール信号」
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–28 6インタフェース信号
1000BASE-X/SGMII PCS信号図 6–7 に、1000BASE-X/SGMII PCS ファンクションの入出力信号をすべて示しま
す。
図 6–7. 1000BASE-X/SGMII PCSファンクション信号
図 6–7の注:(1) クロック・イネーブラ信号は SGMII モードの場合にのみ使用されます。
1000 BASE-X/SGMII PCS Function
Reset Signals
reset_rx_clk
reset_tx_clk
reset_reg_clk
set_10
set_100
set_1000
hd_ena
SGMII Status
Signals
Status LED Signals
led_an
led_crs
led_col
led_char_err
led_link
led_disp_err
SERDES ControlSignals
sd_loopback
powerdown
rx_clk
tx_clk
MII/GMII Clock
Signals
rx_clkena
tx_clkena
Clock Enabler Signals
GMII Signals gmii_rx_d[7:0]
gmii_rx_dv
gmii_rx_err
gmii_tx_d[7:0]
gmii_tx_en
gmii_tx_err
8
8
mii_rx_d[3:0]
mii_rx_dv
mii_rx_err
mii_col
mii_crs
mii_tx_d[3:0]
mii_tx_en
mii_tx_err
MII Signals 4
4
PCS Control InterfaceSignals
reg_clk
reg_addr[4:0]
reg_rd
reg_wr
reg_data_out[15:0]
reg_data_in[15:0]
reg_busy
5
16
16
Ten Bit Interface Signals
tbi_rx_clk
tbi_rx_d[9:0]
tbi_tx_clk
tbi_tx_d[9:0]
10
10
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–29
PCSコントロール・インタフェース信号表 6–24 に、PCS コントロール・インタフェースを構成する信号について説明しま
す。
リセット信号表 6–2 では、リセット信号について説明します。
MII/GMIIクロックおよびクロック・イネーブラMII/GMII インタフェース上のデータ転送は送受信クロックに同期します。表 6–26 で
は、これらのクロック信号について説明します。
表 6–24. レジスタ・インタフェース信号
名称Avalon-MM 信号
の種類 I/O 説明reg_clk clk I レジスタ・アクセス基準クロック
reset_reg_clk reset I reg_clkクロック・ドメイン用のアクティブ High リセット信号
reg_wr write I レジスタ・ライト・イネーブル
reg_rd read I レジスタ・リード・イネーブル
reg_addr[4:0] address I 16 ビットにワード・アラインメントされたレジスタ・アドレス
reg_data_in[15:0] writedata I レジスタ・ライト・データ。 ビット 0 は 下位ビットです。
reg_data_out[15:0] readdata O レジスタ・リード・データ。 ビット 0 は 下位ビットです。
reg_busy waitrequestO レジスタ・インタフェース・ビジー。 レジスタ読み出しま
たは書き込み時にアサートされます。値 0 は、読み出しまたは書き込みが正常に終了したことを示します。
表 6–25. リセット信号
名称 I/O 説明
reset_rx_clkI PCS rx_clkクロック・ドメイン用のアクティブ High リセット信号。
この信号をアサートすると、rx_clkによって同期化されたロジックがリセットされます。
reset_tx_clkI PCS tx_clkクロック・ドメイン用のアクティブ High リセット信号。
この信号をアサートすると、tx_clkによって同期化されたロジックがリセットされます。
表 6–26. MACクロック信号
名称 I/O 説明
rx_clk O 受信クロック。 このクロックは、TBI クロック tbi_rx_clk から生成され、125 MHz に設定されます。
tx_clk O 送信クロック。 このクロックは、TBI クロック tbi_tx_clkから生成され、125 MHz に設定されます。
rx_clkena O 受信クロック・イネーブラ。 SGMII モードでは、この信号は rx_clkをイネーブルします。
tx_clkena O 送信クロック・イネーブラ。 SGMII モードでは、この信号は tx_clkをイネーブルします。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–30 6インタフェース信号
図 6–8 に、クロック・イネーブラ信号の動作を示します。
GMIIインタフェース表 6–27 では、GMII 送信信号および受信信号について説明します。
MIIインタフェース表 6–28 では、MII 送信信号および受信信号について説明します。
図 6–8. クロック・イネーブラ信号
125 MHz Clock
25MHz Clock Enable
Input Data
Output Data
0xAA
0xAA
0xBB
0xBB
0xCC
0xCC
0xDD
0xDD
0xEE
表 6–27. GMIIインタフェース信号
名称 I/O 説明
GMII 送信信号
gmii_tx_d[7:0] I GMII 送信データ・バス
gmii_tx_en I この信号は、gmii_tx_d[7:0]上のデータが有効であることを示すためにアサートされます。
gmii_tx_err I この信号は、送信された現行フレームが無効であることを PHY デバイスに示すためにアサートされます。
GMII 受信信号
gmii_rx_d[7:0] O GMII 受信データ・バス
gmii_rx_dv
O この信号は、gmii_rx_d[7:0]上のデータが有効であることを示すためにアサートされます。CRC フィールドの 初のプリアンブル・バイトから 後のバイトが受信されるまで、フレーム受信中アサートされ続けます。
gmii_rx_err O 現行フレームにエラーが含まれていることを示すために PHY によってアサートされます。
表 6–28. MIIインタフェース信号 (1 / 2 )
名称 I/O 説明MII Transmit Interface
mii_tx_d[3:0] I MII 送信データ・バス
mii_tx_en I この信号は、mii_tx_d[3:0]上のデータが有効であることを示すためにアサートされます。
mii_tx_err I この信号は、送信された現行フレームが無効であることを PHY デバイスに示すためにアサートされます。
MII Receive Interface
mii_rx_d[3:0] O MII 受信データ・バス
mii_rx_dv
O この信号は、mii_rx_d[3:0]上のデータが有効であることを示すためにアサートされます。CRC フィールドの 初のプリアンブル・バイトから 後のバイトが受信されるまで、フレーム受信中アサートされ続けます。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–31
SGMIIステータス信号SGMII ステータス信号は PCS ブロックにステータス情報を提供します。 PCS がスタ
ンドアロンでインスタンス化されると、これらの信号は MAC への入力信号で、その
ブロックのためのインタフェース・コントロール信号の役割を果たします。表 6–29
に、SGMII ステータス信号を記載します。
mii_rx_err O 現行フレームにエラーが含まれていることを示すために PHY によってアサートされます。
mii_col Out 衝突検出。フレーム送信中に衝突が検出されたことを示すために PCSファンクションによってアサートされます。
mii_crs Out キャリア検知。 送受信アクティビティがイーサネット回線上で検出されたことを示すために PCS ファンクションによってアサートされます。
表 6–28. MIIインタフェース信号 (2 / 2 )
名称 I/O 説明
表 6–29. SGMIIステータス信号
名称 I/O 説明set_1000 O ギガビット・モードがイネーブルされます。1000BASE-X では、この
ビットは常に 1 に設定されます。SGMII の場合、この信号は、以下のいずれかの条件が満たされる場合に、1 に設定されます。
■ partner_abilityレジスタからデコードされる際に、USE_SGMII_ANビットが 1 に設定され、リンク・パートナとのギガビット・リンクが確立される。
■ USE_SGMII_ANビットが0に設定され、SGMII_SPEEDビットが10に設定される。
set_100 O 100 Mbps モードがイネーブルされます。1000BASE-X では、このビットは常に 0 に設定されます。SGMII の場合、この信号は、以下のいずれかの条件が満たされる場合に、1 に設定されます。
■ partner_abilityレジスタからデコードされる際に、 USE_SGMII_ANビットが 1 に設定され、リンク・パートナとの 100 Mbps リンクが確立される。
■ USE_SGMII_ANビットが0に設定され、SGMII_SPEEDビットが01に設定される。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–32 6インタフェース信号
外部 SERDESチップに提供される TBIインタフェース信号TBI インタフェース信号について詳しくは、6-18 ページの「TBI インタフェース信
号」を参照してください。
ステータス LEDコントロール信号ステータス LED 信号について詳しくは、6-18 ページの「ステータス LED コントロー
ル信号」を参照してください。
SERDESコントロール信号SERDES コントロール信号について詳しくは、6-19 ページの「SERDES コントロー
ル信号」を参照してください。
set_10 O 10 Mbps モードがイネーブルされます。 1000BASE-X では、このビットは常に 0 に設定されます。SGMII の場合、この信号は、以下のいずれかの条件が満たされる場合に、1 に設定されます。
■ partner_ability レジスタからデコードされる際に、USE_SGMII_ANビットが 1 に設定され、リンク・パートナとの 10 Mbps リンクが確立される。
■ USE_SGMII_ANビットが0に設定され、SGMII_SPEEDビットが00に設定される。
hd_ena O 半二重モードがイネーブルされます。 1000BASE-X では、このビットは常に 0 に設定されます。SGMII の場合、この信号は、以下のいずれかの条件が満たされる場合に、1 に設定されます。
■ partner_ability レジスタからデコードされる際に、USE_SGMII_ANビットが 1 に設定され、リンク・パートナとの半二重リンクが確立される。
■ USE_SGMII_AN ビットが 0 に設定され、SGMII_DUPLEXビットが 1に設定される。
表 6–29. SGMIIステータス信号
名称 I/O 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–33
1000BASE-X/SGMII PCSと PMAの信号図 6–9 に、1000BASE-X/SGMII PCS ファンクションとエンベデッド PMA の入出力
信号をすべて示します。
図 6–9. 1000BASE-X/SGMII PCSファンクションと PMAの信号
図 6–9の注:(1) クロック・イネーブラ信号は SGMII モードの場合にのみ使用されます。
(2) SERDES コントロール信号は、GX トランシーバ付きのデバイスをターゲットとすバリエーションで使用できます。Stratix II GX および Arria GX デバイスの場合、リコンフィギュレーション信号(reconfig_clk、 reconfig_togxb、 および reconfig_fromgxb)は Enable transceiver dynamic reconfiguration オプションがオンになるときにのみ使用できます。リコンフィギュレーション信号(gxb_cal_blk_clk、 pcs_pwrdwn_out、 gxb_pwrdn_in、 reconfig_clk、および reconfig_busy)は、GX トランシーバ付きの Stratix V デバイスをターゲットとするバリエーションでは使用できません。
1000BASE-X/SGMII PCS Function With Embedded PMA
Reset
Signals
reset_rx_clk
reset_tx_clk
reset
set_10
set_100
set_1000
hd_ena
SGMII
Status
Signals
Status
LED
Signals
led_an
led_crs
led_col
led_char_err
led_link
led_disp_err
led_an
rx_clk
tx_clk
MII/GMII
Clock
Signals
rx_clkena
tx_clkena
Clock
Enabler
Signals
GMII
Signals gmii_rx_d[7:0]
gmii_rx_dv
gmii_rx_err
gmii_tx_d[7:0]
gmii_tx_en
gmii_tx_err
8
8
mii_rx_d[3:0]
mii_rx_dv
mii_rx_err
mii_col
mii_crs
mii_tx_d[3:0]
mii_tx_en
mii_tx_err
MII
Signals
4
4
PCS
Control
Interface
Signals
clk
address[4:0]
read
write
readdata[15:0]
writedata[15:0]
waitrequest16
16
5
SERDES
Control
Signals
pcs_pwrdn_out
gxb_pwrdn_in
gxb_cal_blk_clk
reconfig_clk
reconfig_togxb
reconfig_fromgxb
rx_recovclkout
1.25 Gbps
Serial Signals
ref_clk
rx_p
tx_p
reconfig_busy
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–34 6インタフェース信号タイミング
信号について詳しくは、表 6–23 に記載されているそれぞれのセクションを参照して
ください。
タイミングこのセクションでは、トリプル・スピード・イーサネットの送受信インタフェース
について説明します。
f Avalon-MM コントロール・インタフェースのタイミングについて詳しくは、 「Avalon Interface Specifications」の図 3-3 を参照してください。
Avalon-ST受信インタフェース図 6–10 に内部 FIFO バッファが組み込まれた MAC コア・バリエーションの受信動
作を示します。
表 6–30. 参考資料
インタフェース信号 セクション
リセット信号 6-30 ページの「リセット信号」
MII/GMII クロックおよびクロック・イネーブラ
6-30 ページの「MII/GMII クロックおよびクロック・イネーブラ」
PCS コントロール・インタフェース
6-30 ページの「PCS コントロール・インタフェース信号」
GMII 信号 6-31 ページの「GMII インタフェース」
MII 信号 6-31 ページの「MII インタフェース」
SGMII ステータス信号 6-32 ページの「SGMII ステータス信号」
1.25 Gbps シリアル信号6-24 ページの「1.25 Gbps シリアル・インタフェース」
ステータス LED 信号 6-18 ページの「ステータス LED コントロール信号」
SERDES コントロール信号 6-25 ページの「SERDES コントロール信号」
図 6–10. 受信動作—内部 FIFOバッファが組み込まれた MAC
ff_rx_clk
ff_rx_data[31:0]
ff_rx_sop
ff_rx_eop
ff_rx_rdy
ff_rx_dval
ff_rx_dsav
rx_frm_type[3:0]
rx_err_stat[17:0]
rx_err[5:0]
ff_rx_mod[1:0]
0000000000000000 00000000 00000001 00000002 00000003 00000004 00000005 00000000
00 1 0
0000000000 00064 00000
00
0
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–35タイミング
図 6–11 に内部 FIFO バッファが組み込まれていない MAC コア・バリエーションの
受信動作を示します。
図 6–12 に内部 FIFO バッファが組み込まれた MAC コア・バリエーションの受信動
作中に発生した無効な長さエラーを示します。
図 6–11. 受信動作—内部 FIFOバッファが組み込まれていない MAC
図 6–12. 無効な長さエラー—内部 FIFOバッファが組み込まれた MAC
mac_rx_clk_0
data_rx_data_0[7:0]
data_rx_sop_0
data_rx_eop_0
data_rx_ready_0
data_rx_error_0[5:0]
data_rx_valid_0
pkt_class_data_0[3:0]
pkt_class_valid_0
0000 03 04 05 06 07 08 09 10 10 10 10 00
00
00 10 0
ff_rx_clk
ff_rx_data[31:0]
ff_rx_sop
ff_rx_eop
ff_rx_rdy
ff_rx_dval
ff_rx_dsav
rx_frm_type[3:0]
rx_err_stat[17:0]
rx_err[5:0]
ff_rx_mod[1:0]
0000000000000000 00000001 00000002 00000003 00000004 00000005 00000006 00000007
00 1 0
0000000000 005DD 00000
0000 03 00
00 3 0
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–36 6インタフェース信号タイミング
図 6–13 に内部 FIFO バッファが組み込まれていない MAC コア・バリエーションの
受信動作中に発生した無効な長さエラーを示します。
Avalon-ST送信インタフェース図 6–14 に内部 FIFO バッファが組み込まれた MAC コア・バリエーションの送信動
作を示します。
図 6–13. 無効な長さエラー—内部 FIFOバッファが組み込まれていない MAC
mac_rx_clk_0
data_rx_data_0[7:0]
data_rx_sop_0
data_rx_eop_0
data_rx_ready_0
data_rx_error_0[5:0]
data_rx_valid_0
pkt_class_data_0[3:0]
pkt_class_valid_0
0000 03 04 05 06 06 07 08 09 09 09 09 09 00
0000 01
00 10 0
図 6–14. 送信動作—内部 FIFOバッファが組み込まれた MAC
ff_tx_clk
ff_tx_data[31:0]
ff_tx_sop
ff_tx_eop
ff_tx_rdy
ff_tx_wren
ff_tx_crc_fwd
ff_tx_err
ff_tx_mod[1:0]
ff_tx_septy
tx_ff_uflow
00000001 00000002 00000003 00000004 00000005 00000006
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–37タイミング
図 6–15 に内部 FIFO バッファが組み込まれていない MAC コア・バリエーションの
送信動作を示します。
GMII送信送信時には、データ転送はすべて tx_clk の立ち上がりエッジに同期します。 GMIIデータ・イネーブル信号 gm_tx_en は、新しいフレームの開始を示すためにアサー
トされ、フレームの 後のバイトが gm_tx_d[7:0]バス上に現れるまでアサートさ
れ続けます。フレームとフレームの間では、gm_tx_en はデアサートされます。
フレームがエラー(ff_tx_eopに伴ってアサートされた)とともに Avalon-ST イン
タフェースで受信されると、そのフレームは、その後フレーム転送中の任意のタイ
ミングで、GMII gm_tx_errエラー信号とともに送信されます。
GMII受信受信時には、すべての信号が rx_clkの立ち上がりエッジでサンプリングされます。 GMII データ・イネーブル信号 gm_rx_dv は、新しいフレームの開始を示すために
PHY によってアサートされ、フレームの 後のバイトが gm_rx_d[7:0] バス上に
現れるまでアサートされ続けます。フレームとフレームの間では、gm_rx_dvはデ
アサートされます。
回線から受信したフレームのエラーを PHY が検出すると、PHY は、フレーム転送
中の任意のタイミングで少なくとも 1 クロック・サイクルの間、GMII エラー信号
(gm_rx_err)をアサートします。
PHY のエラー信号とともに GMII インタフェースで受信したフレームは、その後、
エラー信号 rx_err[0] がアサートされ、Avalon-ST インタフェースに転送されま
す。
RGMII 送信RGMII コントロール信号 tx_control は、新しいフレームの開始を示すためにア
サートされ、フレームの 後の上位ニブルが rgmii_out[3:0] バス上に現れるま
でアサートされ続けます。フレームとフレームの間では、tx_control はデアサー
トされます。図 6–16 および図 6–17 に、それぞれ 10/100 Mbps モードおよびギガ
ビット・モードでの RGMII 送信のタイミング図を示します。
図 6–15. 送信動作—内部 FIFOバッファが組み込まれていない MAC
mac_tx_clk_0
data_tx_data_0[7:0]
data_tx_sop_0
data_tx_eop_0
data_tx_ready_0
data_tx_err_0
data_tx_valid_0
0000 01 01 01 02 03 04 05 06 07 08 09
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–38 6インタフェース信号タイミング
フレームがエラー(ff_tx_err が ff_tx_eopに伴ってアサートされた)ととも
に Avalon-ST インタフェースで受信されると、そのフレームは、その後フレーム転
送中の任意のタイミングで、RGMII tx_controlエラー信号とともに(tx_clkの
立ち下りエッジで)送信されます。図 6–18 にエラー発生時の RGMII 送信のタイミ
ング図を示します。
RGMII受信RGMII コントロール信号 rx_control は、新しいフレームの開始を示すために
PHY によってアサートされ、フレームの 後の上位ニブルが rgmii_in[3:0]バス
上に現れるまでアサートされ続けます。フレームとフレームの間では、
rx_controlはデアサートされます。図6–19および図6–20に、それぞれ 10/100 Mbpsおよび 1000 Mbps での RGMII 受信のタイミング図を示します。
図 6–16. 10/100 Mbpsでの RGMII送信
図 6–17. ギガビット・モードでの RGMII送信
図 6–18. 1000 Mbpsでのエラーのある RGMII送信
tx_clk
tx_control
rgmii_out[3:0] 00 5 D 0 5 1 6 1 9 1
tx_clk
tx_control
rgmii_out[3:0] 00 5 D 0 5 4 5 E 5 F 5 0 6 0
tx_clk
tx_control
rgmii_out[3:0] 00 5 0 4 6 0 1 0 0 8 0 9 0
図 6–19. 10/100 Mbpsでの RGMII受信
rx_clk
rx_control
rgmii_in[3:0] 00 5 D 0 5 1 6 1 9 0
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
6インタフェース信号 6–39タイミング
PHY のエラー信号とともに RGMII インタフェースで受信したフレームは、その後、
エラー信号 rx_err[0] がアサートされ、Avalon-ST インタフェースに転送されま
す。図 6–21 に、エラー発生時の RGMII 受信のタイミング図を示します。
RGMII 受信インタフェースの 新の実装では、受信データ(クロックはデータの後)
と比較して正の遅延 rx_clk が生じます。
MII送信送信時には、データ転送はすべて tx_clk の立ち上がりエッジに同期します。 MIIデータ・イネーブル信号 m_tx_en は、新しいフレームの開始を示すためにアサート
され、フレームの 後のバイトが m_tx_d[3:0] バス上に現れるまでアサートされ
続けます。フレームとフレームの間では、m_tx_enはデアサートされます。
フレームが(ff_tx_errがアサートされた)エラーとともに FIFO インタフェース
で受信されると、そのフレームは、その後フレーム転送中の任意のタイミングで 1クロック・サイクルの間、MII エラー信号 m_tx_errとともに送信されます。
MII受信受信時には、すべての信号が rx_clkの立ち上がりエッジでサンプリングされます。 MII データ・イネーブル信号 m_rx_enは、新しいフレームの開始を示すために PHYによってアサートされ、フレームの 後のバイトが m_rx_d[3:0] バス上に現れる
までアサートされ続けます。フレームとフレームの間では、m_rx_enはデアサート
されます。
回線から受信したフレームのエラーを PHY が検出すると、PHY は、フレーム転送
中の任意のタイミングで少なくとも 1 クロック・サイクルの間、MII エラー信号
(m_rx_err)をアサートします。
PHY のエラー信号とともに MII インタフェースで受信したフレームは、その後、エ
ラー信号 rx_err[0]がアサートされると、FIFO インタフェースに転送されます。
図 6–20. 1000 Mbpsでの RGMII受信
図 6–21. ギガビット・モードでのエラーのある RGMII受信
rx_clk
rx_control
rgmii_in[3:0] 00 5 D 0 5 4 5 E 5 F 5 0 6 0
rx_clk
rx_control
rgmii_in[3:0] 00 5 0 4 6 0 1 0 0 8 0 9 0
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
6–40 6インタフェース信号タイミング
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
7. デザインの検討事項
PCSおよびエンベデッド PMAを備えたマルチポート MACのクロック・リソースの最適化
システムによって要求されるグローバル・クロックおよびリージョナル・クロック
のリソースの総数は、下記の要因によって決定されます。トリプル・スピード・
イーサネット MegaCore ファンクションのコンフィギュレーションおよびそれに含
まれるブロック数。
■ トリプル・スピード・イーサネット MegaCore ファンクションのコンフィギュ
レーションおよびそれに含まれるブロック数
■ PCS 動作モード(SGMII または 1000BASE-X)
■ ターゲット・デバイスに実装された PMA テクノロジ
■ 単一ソースを共有できるクロック数
■ デザインに必要とされる PMA 数
■ ALTGX メガファンクション動作モード
トップレベル・デザインに表示される複数のクロックに同じクロック・ソースを使
用できるので、デザイン全体で必要とされるクロック・ソースの総数を削減できま
す。表 7–1 には、可能なコンフィギュレーションごとに、トップレベル・デザイン
に表示されるクロックおよびリセット信号を示します。
表 7–1. トップレベル・デザインに表示されるクロック信号
クロック
コンフィギュレーション (1)
MACのみ MAC および PCS MACおよび PCS/PMA
rx_recovclkout はいref_clk はいclk はい はい はいff_tx_clk はい はい はいff_rx_clk はい はい はいtx_clk はい いいえ いいえrx_clk はい いいえ いいえtbi_rx_clk はい いいえtbi_tx_clk はい いいえgxb_cal_blk_clk (2) はいNotes to 表 7–1:(1) 「はい」は、クロックがトップ・レベル・デザインに表示されることを示します。
「いいえ」は、クロックがトップ・レベル・デザインに表示されないことを示します。「—」は、クロックが指定のコンフィギュレーションには適用されないことを示します。
(2) GX トランシーバに適用されます。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
7–2 7デザインの検討事項PCS およびエンベデッド PMA を備えたマルチポートMACの ク
MACおよび PCS/GXトランシーバMAC、PCS および GX トランシーバが含まれるコンフィギュレーションでは、ク
ロック・リソースを 適化する際に以下のオプションを使用できます。
■ 各インスタンスを別個にリセットする必要がない場合は、すべての MAC インスタ
ンスに同じリセット信号を使用します。
■ すべての PMA クワッドに対して同じ基準クロックを使用します。
■ 基準クロック、FIFO 送受信クロック、およびシステム・クロックが同じ周波数で
動作する場合は、同じクロック・ソースを使用します。
Quartus II ソフトウェアは、自動的に TBI 送信クロックを 適化します。単一のク
ロック・ソースで、各 PMA クワッドからの TBI 送信クロックを駆動します。
キャリブレーション・クロック(gxb_cal_blk_clk)は、デバイスのすべてのト
ランシーバ・チャネルの終端抵抗をキャリブレーションします。各デバイスには 1つのキャリブレーション回路しかないため、1 つのクロック・ソースで十分です。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
7デザインの検討事項 7–3PCS およびエンベデッド PMAを備えたマルチポートMACの クロック・リソースの最適化
図 7–1 は、10/100/1000 イーサネット MAC、SGMII PCS および GX トランシーバが
含まれるコンフィギュレーションで達成できる 適なクロック分配方式を示します。
図 7–1. GXBコンフィギュレーションを備えた MACと SGMII PCSのクロック分配—最適のケース
図 7–1の注:(1) GX トランシーバを備えたデバイスの PMA 層は、ALTGX メガファンクションを使用します。
tbi_tx_clk1
tbi_rx_clk1
tbi_rx_clk2
tbi_rx_clk3
tbi_rx_clk4
Port 4
clk1
clk2
clk3
clk4
PCS1
rx_clk1
tx_clk1
PCS2
rx_clk2
tx_clk2
PCS3
rx_clk3
tx_clk3
PCS4rx_clk4
tx_clk4
4-port MAC
Port 2
Port 3
ref_clk
rx_clk1
tx_clk1
rx_clk2
tx_clk2
rx_clk3
tx_clk3
rx_clk4
tx_clk4
ALTGX
(GIGE Mode)
ALTGX
(GIGE Mode)
ALTGX
(GIGE Mode)
Quad
Transceivers
ALTGX
(GIGE Mode)
cal_
blk
_clk
ref_clk
To
sub
se
qu
ent Q
ua
ds, if a
ny
tbi_tx_clk2
tbi_tx_clk3
tbi_tx_clk4
Port 1
tx_clk_en1
rx_clk_en1
tx_clk_en2
rx_clk_en2
tx_clk_en3
rx_clk_en3
tx_clk_en1
rx_clk_en1
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
7–4 7デザインの検討事項PCS およびエンベデッド PMA を備えたマルチポートMACの ク
図 7–2 は、10/100/1000 イーサネット MAC、1000Base?X PCS および GX トラン
シーバが含まれるコンフィギュレーションで達成できる 適なクロック分配方式を
示します。
前述の 適化オプションに加えて、TBI 送信クロックおよび受信クロックは、それ
ぞれ MAC 送信クロックおよび受信クロック用に使用できます。
図 7–2. GXBコンフィギュレーションを備えた MACと 1000BASE-X PCSのクロック分配—最適のケース
図 7–2の注:(1) GX トランシーバを備えたデバイスの PMA 層は、ALTGX メガファンクションを使用します。
ALTGX
(GIGE Mode)
ALTGX
(GIGE Mode)
ALTGX
(GIGE Mode)
Quad
Transceivers
ALTGX
(GIGE Mode)
Port 2
4-port MAC
cal_
blk
_clk
ref_clk
tbi_rx_clk1
tbi_rx_clk2
tbi_rx_clk3
tbi_rx_clk4
rx_clk1
tx_clk1
rx_clk2
tx_clk2
rx_clk3
tx_clk3
To
su
bse
qu
en
t Qu
ad
s, if a
ny
Port 4
Port 3
rx_clk4
tx_clk4
clk1
clk2
clk3
clk4
PCS1
PCS2
PCS3
PCS4
tbi_tx_clk
Port 1
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
7デザインの検討事項 7–5PCS およびエンベデッド PMAを備えたマルチポートMACの クロック・リソースの最適化
LVDS Soft-CDR I/Oを備えた MACおよび PCSMAC、PCS および LVDS Soft-CDR I/O が含まれるコンフィギュレーションでは、ク
ロック・リソースを 適化する際に以下のオプションを使用できます。
■ 各インスタンスを別個にリセットする必要がない場合は、すべての MAC インスタ
ンスに同じリセット信号を使用します。
■ 基準クロック、FIFO 送受信クロック、およびシステム・クロックが同じ周波数で
動作する場合は、同じクロック・ソースを使用します。
図 7–3 は、MAC、SGMII PCS および LVDS Soft-CDR I/O が含まれるコンフィギュ
レーションで達成できる 適なクロック分配方式を示します。
図 7–3. LVDSコンフィギュレーションを備えたMACと SGMII PCSのクロック分配—最適のケース
tbi_tx_clk
tbi_rx_clk1
tbi_rx_clk2
tbi_rx_clk3
tbi_rx_clk4
clk1
clk2
clk3
clk4
PCS1
rx_clk1
tx_clk1
PCS2
rx_clk2
tx_clk2
PCS3
rx_clk3
tx_clk3
PCS4
rx_clk4
tx_clk4
4-port
MAC
Port 1
ref_clk
ALTLVDS_RX_
COMPONENT
ALTLVDS_TX_
COMPONENT
PLL
ALTLVDS_RX_
COMPONENT
ALTLVDS_TX_
COMPONENT
ALTLVDS_RX_
COMPONENT
ALTLVDS_TX_
COMPONENT
ALTLVDS_RX_
COMPONENT
ALTLVDS_TX_
COMPONENT
pll
pll~clk1rx_clk1
tx_clk1
rx_clk2
tx_clk2
rx_clk3
tx_clk3
rx_clk4
tx_clk4
Port 2
Port 3
Port 4
tx_clk_en1
rx_clk_en1
tx_clk_en2
rx_clk_en2
tx_clk_en3
rx_clk_en3
tx_clk_en4
rx_clk_en4
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
7–6 7デザインの検討事項PCS およびエンベデッド PMA を備えたマルチポートMACの ク
図 7–4 は、MAC、1000BASE-X PCS および LVDS Soft-CDR I/O が含まれるコンフィ
ギュレーションで達成できる 適なクロック分配方式を示します。
図 7–4. LVDSコンフィギュレーションを備えたMACと 1000BASE-X PCSのクロック分配—最適のケース
Port 1
4-port MAC
tbi_tx_clk
tbi_rx_clk1
tbi_rx_clk2
tbi_rx_clk3
tbi_rx_clk4
rx_clk1
tx_clk1
rx_clk2
tx_clk2
rx_clk3
tx_clk3
Port 4
Port 3
rx_clk4
tx_clk4
clk1
clk2
clk3
clk4
PCS1
PCS2
PCS3
PCS4
ref_clk
ALTLVDS_RX_
COMPONENT
ALTLVDS_TX_
COMPONENT
PLL
ALTLVDS_RX_
COMPONENT
ALTLVDS_TX_
COMPONENT
ALTLVDS_RX_
COMPONENT
ALTLVDS_TX_
COMPONENT
ALTLVDS_RX_
COMPONENT
ALTLVDS_TX_
COMPONENT
pll
pll~clk1
Port 2
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
7デザインの検討事項 7–7LVDS Soft-CDR I/O を備えたデバイスにおける PLL共有
LVDS Soft-CDR I/Oを備えたデバイスにおける PLL共有MAC および PCS/PMA、または LVDS soft-CDR I/O をターゲットとする PCS/PMAバリエーションの複数のインスタンスが含まれるデザインの場合、PLL の共有でリ
ソース使用率を 適化することができます。
デザインで以下の項目を実装する場合、Quartus II ソフトウェアは、これらのインス
タンスの PLL をマージします。
■ 各インスタンスのリファレンス・クロックを同じソースに接続
■ LVDS I/O ピンを FPGA の同じ側に配置
トランシーバ・クワッドの共有GX トランシーバを備えたアルテラ・デバイス・ファミリをターゲットとする複数の
PMA ブロックを含むデザインについては、同じクワッドにトランシーバ・チャネル
を付け加えることができます。 同じトランシーバ・クワッドを共有するには、トラン
シーバ・チャネルに同じダイナミック・リコンフィギュレーション設定が必要です。
つまり、これらの機能が一部のチャネルにのみ使用される場合でも、クワッド内の
すべてのチャネルのダイナミック・リコンフィギュレーション機能をオンにする必
要があります。
Arria GX および Stratix II GX 以外のデバイスでは、ダイナミック・コンフィギュ
レーションは常にオンになります。Stratix V 以外のデバイスをターゲットとするデ
ザインにダイナミック・リコンフィギュレーションがオンになる場合、アルテラは、
ダイナミック・リコンフィギュレーション信号を ALTGX_RECONFIG メガファンク
ションに接続することを推奨しています。Arria GX および Stratix GX デバイスでは、
ダイナミック・リコンフィギュレーション機能を使用していないチャネルの場合、
信号の reconfig_clk を 50 MHz 以下の値に設定し、reconfig_togxb を 3'b010 に設定することができます。
Stratix V デバイスの場合、アルテラはダイナミック・リコンフィギュレーション信
号を Transceiver Reconfiguration Controller メガファンクションに接続することを推
奨しています。トリプル・スピード・イーサネット IP コアおよび Stratix V デバイス
をターゲットとするほかの IP コア間で共有されるトランシーバ・クワッドの場合、
すべてのコアのリセット信号は、同じソースから供給される必要があります。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
7–8 7デザインの検討事項トランシーバ・クワッドの共有
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
8. テストベンチ
トリプル・スピード・イーサネット MegaCore ファンクションに付属のテストベン
チを使用して、カスタム MegaCore ファンクションのバリエーションをテストでき
ます。テストベンチには、以下の特長があります。
■ 標準 HDL シミュレータ用の使いやすいシミュレーション環境
■ 基本的なすべてのイーサネット・パケット・トランザクションのシミュレーショ
ン
■ オープン・ソースの Verilog HDL および VHDL テストベンチ・ファイル
付属のテストベンチは、MegaWizard プラグイン・マネージャ・フローを使用して
作成されたカスタム MegaCore ファンクション・バリエーションにのみ適用されま
す。
生成したテストベンチ・ファイルの詳細、および ModelSim シミュレータまたは他
のシミュレータを使用してデザインをシミュレーションする際のステップごとの操
作方法について詳しくは、生成されるファイルを参照してください。
アーキテクチャ図 8–1 に、トリプル・スピード・イーサネット MegaCore ファンクションのテスト
ベンチのアーキテクチャを示します。
コンポーネントテストベンチは以下のモジュールから構成されます。
■ テスト対象のデバイス(DUT)— ユーザーのカスタム MegaCore ファンクショ
ン・バリエーション
図 8–1. トリプル・スピード・イーサネット・テストベンチのアーキテクチャ
Device Under TestFrame
Generator
SystemSide
EthernetSide
Port 0
Port 2
Port n
. . .
Port 1
FrameMonitor MDIO
Slave 0
MDIO Slave 1
Testbench Control
Simulation Configuration Parameters
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
8–2 8テストベンチ検証
■ Avalon-ST イーサネット・フレーム・ジェネレータ —MAC システム側のインタ
フェースに接続されたユーザー・アプリケーションをシミュレーションします。
■ Avalon-ST 送信インタフェース上にフレームを生成します。
■ Avalon-ST イーサネット・フレーム・モニタ —MAC システム側のインタフェース
からフレームを受信するユーザー・アプリケーションをシミュレーションしま
す。
■ Avalon-ST 受信インタフェースを監視し、受信されたすべてのデータをデコード
します。
■ MII/RGMII/GMII イーサネット・フレーム・ジェネレータ —PCS ファンクションに
フレームを送信する MAC ファンクションをシミュレーションします。
■ MII/RGMII/GMII イーサネット・フレーム・モニタ —PCS ファンクションからフ
レームを受信してデコードする MAC ファンクションをシミュレーションします。
■ MDIO スレーブ —PHY 管理インタフェースをシミュレーションします。
■ MDIO マスタ・トランザクタに応答します。
■ クロックおよびリセット・ジェネレータ。
表 8–1 に、各コンフィギュレーションのインタフェース、フレーム・ジェネレータ
およびフレーム・モニタを示します。
検証テストベンチはセルフチェックであり、受信したフレームを検証することによりシ
ミュレーションが成功したかどうかを決定します。 また、フレーム・モニタによって
検出されたエラーがあるかどうかもチェックします。 テストベンチは、MAC 層に
よって生成された IEEE 統計情報を検証しません。 テストベンチが意図的に挿入され
たエラーの検知ができない場合にはシミュレーションが失敗します。 テストベンチ
は、シミュレーションの終了時に、シミュレータ・コンソールにシミュレーション
の結果を示すメッセージを表示します。
テストベンチは、以下の機能を検証します。
■ 送受信データ・パスが機能的に正しいかどうか
表 8–1. テストベンチのコンポーネント
コンフィギュレーション
システム側のインタフェース
イーサネット側のインタフェー
ス フレーム・ジェネレータ フレーム・モニタ
MAC のみ Avalon-ST GMII/MII/RGMII Avalon-ST フレーム・ジェネレータ
Avalon-ST フレーム・モニタ
PCS を備えた MAC Avalon-ST TBI Avalon-ST フレーム・ジェネレータ
Avalon-ST フレーム・モニタ
PCS とエンベデッドPMA を備えた MAC
Avalon-ST 1.25 Gbps Avalon-ST フレーム・ジェネレータ
Avalon-ST フレーム・モニタ
PCS のみ GMII/MII TBI GMII/MII フレーム・ジェネレータ
GMII/MII フレーム・モニタ
エンベデッド PMA を備えた PCS
GMII/MII 1.25 Gbps GMII/MII フレーム・ジェネレータ
GMII/MII フレーム・モニタ
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
8テストベンチ 8–3コンフィギュレーション
■ フレーム・ジェネレータによって生成されたイーサネット・フレームが、フレー
ム・モニタによって受信されるかどうか
■ MAC ファンクションを含むコンフィギュレーションに対する追加のチェック:
■ 正しい CRC-32 が挿入されているかどうか
■ 短いフレームの場合は、少なくとも 64 バイト長までパディングされるかどう
か
■ 大フレーム長より大きいサイズのタグ無し受信フレームは、 大 12 バイト
が追加された 大フレーム長に切り捨てられるかどうか
■ フレームがトラフィック・モニタによって受信される前に、CRC-32 がオプ
ションで破棄されるかどうか
■ オプションのエンベデッドPMAを備えたPCSファンクションを含むコンフィギュ
レーションに対する追加のチェック:
■ フレーム・ジェネレータによって生成された送信フレームが正しくカプセル
化されているかどうか
■ フレーム・モニタに転送される前に、受信されたフレームが非カプセル化さ
れるかどうか
コンフィギュレーションテストベンチは、デフォルトで、ループバック・モードで動作するようにコンフィ
ギュレーションされています。送信パスによって送信されたフレームは、受信パス
にループバックされます。
内部 FIFO バッファが組み込まれたシングル・チャネル MAC 用に別個のデータ・パ
スをコンフィギュレーションできます。 このコンフィギュレーションでは、MII/GMIIイーサネット・フレーム・ジェネレータがイネーブルされ、テストベンチ・コント
ロール・ブロックは、それぞれ独立した送信データ・パスと受信データ・パスを完
全にシミュレーションします。
また、テストベンチ・シミュレーション・パラメータを使用して、テストベンチの
他の側面もカスタマイズできます。 テストベンチ・シミュレーション・パラメータに
ついて詳しくは、Appendix C, シミュレーション・パラメータを参照してください。
テスト対象のデバイスは、以下のデフォルト設定でコンフィギュレーションされま
す。
■ リンク速度は、small-MAC を含むコンフィギュレーションを除いてギガビットに
設定されます。 small-MAC の場合、デフォルトの速度は 100 Mbps です。
■ ペイロード長がそれぞれ 100、101、102、103 および 104 バイトの 5 つのイーサ
ネット・フレームが、システム側のインタフェースに送信され、イーサネット側
のインタフェース上にループバックされます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
8–4 8テストベンチテスト・フロー
■ MAC ファンクションのデフォルト設定:
■ command_configレジスタは 0x0408003B に設定されます。
■ プロミスキャス・モードがイネーブルされます。
■ 大フレーム長frm_lengthレジスタは1518にコンフィギュレーションされ
ます。
■ 内部 FIFO バッファが組み込まれたシングル・チャネル MAC の場合、FIFO バッ
ファのレベルが tx_section_fullに達するとすぐに、送信 FIFO バッファ
がデータ送信を開始するように設定されます。
■ FIFOバッファのレベルがrx_section_fullに達すると、受信FIFOバッファ
がイーサネット・フレームを Avalon-ST 受信インタフェースに転送し始める
ように設定されます。
■ PCS ファンクションのデフォルト設定:
■ if_modeレジスタは 0x0000 に設定されます。
■ ローカル PHY とリモート・リンク PHY の間のオート・ネゴシエーションはバ
イパスされます。
テスト・フローテストベンチは、シミュレーションされたパワー・オン・リセットに対して以下の
処理を実行します。
■ DUT レジスタを初期化します。
■ 送信を開始します。 内部FIFOバッファが組み込まれたシングル・チャネルMACの
コンフィギュレーションに対して、FIFO をクリアします。
■ 送信を終了し、シミュレーションが成功したかどうかを確認するために、以下の
エレメントをチェックします。
■ イーサネット・プロトコル・エラーが検出されていないかどうか
■ 生成され送信されたイーサネット・フレームがフレーム・モニタによって受
信されているかどうか
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
9. ソフトウェア・プログラミング・インタフェース
ドライバのアーキテクチャ図 9–1 に、トリプル・スピード・イーサネット・ソフトウェア・ドライバのアーキ
テクチャを示します。
図 9–1. トリプル・スピード・イーサネット・ソフトウェア・ドライバ・アーキテクチャ
図 9–1の注:(1) 初の n バイトは、SGDMA ディスクリプタ用に予約されています(n = (ディスクリプタの総数 + 3)× 32)。アプリケーショ
ンは、このメモリ領域を使用することはできません。
(2) 内部 FIFO バッファの組み込まれていない MAC バリエーションの場合、送受信 FIFO は MAC ファンクションの外部 FIFO です。
TX SGDMA
RX SGDMA
Memory
Client Apps
Interniche Stack
TSE Driver
Control Interface
TX FIFO (2)
RX FIFO (2)
TX Descriptor
RX Descriptor
TSE MAC
Descriptor Memory (1)
Nios II CPU
TX Path
RX Path
Avalon-MM Interface
SetupDescriptors
Pro
cess
& W
rite
B
ack
Sta
tus
Pro
cess
& W
rite
B
ack
Sta
tus
MII/GMII
MII/GMII
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
9–2 9ソフトウェア・プログラミング・インタフェースディレクトリ構造
ディレクトリ構造図 9–2 に、altera_triple_speed_ethernet ディレクトリのディレクトリ構造、およ
びそれに含まれる関連ヘッダ・ファイルとソース・ファイルを示します。
PHY定義 ソフトウェア・ドライバはデフォルトで以下の PHY のみをサポートします。
■ National DP83848C (10/100 Mbps)
■ National DP83865 (10/100/1000 Mbps)
■ Marvell 88E1111 (10/100/1000 Mbps)
■ Marvell 88E1145 (Quad PHY、 10/100/1000 Mbps)
alt_tse_phy_profile構造体を使用して PHY プロファイルを定義し、
alt_tse_phy_add_profile() 関数を使用してそのプロファイルをシステムに追
加することにより、他の PHY をサポートするようにソフトウェア・ドライバを拡張
できます。 各 PHY インスタンスは、alt_tse_system_phy_struct構造体を使用
して定義し、alt_tse_system_add_sys() 関数を使用してシステムにそのインス
タンスを追加します。
PHY が以下の仕様に準拠している場合、ソフトウェア・ドライバは自動的に PHYの動作モードと速度を検出します。
■ 同じ拡張 PHY 固有レジスタで、1 ビットが二重を指定し、連続した 2 ビット(上位
側が 上位ビット)が速度を指定します。
■ 速度のビットは表 9–1 に示す規則に従って設定されます。
図 9–2. ディレクトリ構造
HAL
altera_triple_speed_ethernet
inctriple_speed_ethernet.haltera_avalon_tse.haltera_avalon_tse_system_info.h
inctriple_speed_ethernet_regs.h
srcaltera_avalon_tse.caltera_avalon_tse_system_info.c
inicheins_tse_mac.htriple_speed_ethernet_iniche.h
iniche
UCOSII
inc
src
ins_tse_mac.c
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
9ソフトウェア・プログラミング・インタフェース 9–3PHY 定義
前述の仕様に準拠しない PHY については、PHY の動作モードおよび速度を取得す
るための関数を作成して、PHY データ構造体の *link_status_readフィールド
をユーザーの関数のアドレスに設定することができます。
また、それぞれの構造体の関数ポインタ(*phy_cfgおよび *tse_phy_cfg)を関
数のアドレスに設定することにより、関数を実行して PHY プロファイルまたは
PHY インスタンスを初期化できます。
例 1 および 例 2 に、PHY プロファイルとインスタンスのデータ構造体を示します。
表 9–1. PHY速度ビット値 s
速度 (Mbps)
PHY速度ビット
MSB LSB
1000 1 0100 0 110 0 0
例 1. PHY プロファイル構造体typedef struct alt_tse_phy_profile_struct{ /* PHY profile */
/*The name of the PHY*/char name[80];
/*Organizationally Unique Identififier*/alt_u32 oui;
/*PHY model number*/alt_u8 model_number;
/*PHY revision number*/alt_u8 revision_number;
/*The location of the PHY Specific Status Register*/alt_u8 status_reg_location;
/*The location of the Speed Status bit in the PHY Specific StatusRegister*/alt_u8 speed_lsb_location;
/*The location of the Duplex Status bit in the PHY Status Specific
Register*/alt_u8 duplex_bit_location;
/*The location of the Link Status bit in PHY Status SpecificRegister*/alt_u8 link_bit_location;
/*PHY initialization function pointer—profile specific*/alt_32 (*phy_cfg)(np_tse_mac *pmac);
/*Pointer to the function that reads and returns 32-bit link status.Possible status:full duplex (bit 0 = 1), half duplex (bit 0 = 0),gigabit (bit 1 = 1), 100Mbps (bit 2 = 1), 10Mbps (bit 3 = 1),invalid speed (bit 16 = 1).*/alt_u32 (*link_status_read)(np_tse_mac *pmac);
} alt_tse_phy_profile;
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
9–4 9ソフトウェア・プログラミング・インタフェース複数の SG-DMAディスクリプタの使用
複数の SG-DMAディスクリプタの使用アプリケーションで複数の SG-DMA ディスクリプタを使用するには、以下の変更を
行います。
■ altera_avalon_tse.h内のALTERA_TSE_SGDMA_RX_DESC_CHAIN_SIZE定数の値
を、アプリケーションに 適なディスクリプタ数に設定します。デフォルト値は
1 で、 大値は NUMBIGBUFFS 定数によって決定されます。 TCP アプリケーショ
ンの場合、アルテラではデフォルト値を使用することを推奨しています。
■ InterNiche スタック用に割り当てられたメモリの量を増やします。
InterNiche スタック用のメモリ領域は、InterNiche 関数 pk_alloc() を使用して割
り当てられます。 ユーザー・アプリケーションと LAN91C111 などの他のネット
ワーク・インタフェースは、メモリ領域を共有できますが、アルテラは、このメ
モリ領域をただ 1 つの目的(すなわち、トリプル・スピード・イーサネット
MegaCore ファンクション用の未処理パケットを保存する目的)に使用すること
例 2. PHY インスタンスの構造体typedef struct alt_tse_system_phy_struct { /* PHY instance */
/* PHY's MDIO address */
alt_32tse_phy_mdio_address;
/* PHY initialization function pointer—instance specific */
alt_32 (*tse_phy_cfg)(np_tse_mac *pmac);
} alt_tse_system_phy;
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
9ソフトウェア・プログラミング・インタフェース 9–5ジャンボ・フレームの使用
をお奨めします。 デバイス・ドライバによって使用される各 SG-DMA ディスクリ
プタは、メモリ領域のうち 1536 バイトのバッファ・サイズ(BIGBUFSIZE定数
によって定義される)を消費します。 妥当なパフォーマンスを実現し、メモリ不
足を回避するためには、NUMBIGBUFSという名前の新しい定数をアプリケーショ
ンに追加し、以下のガイドラインを使用して、その値を設定します。
NUMBIGBUFS = 現在の値 + SG-DMA ディスクリプタ数
NUMBIGBUFS 定数は、デフォルトで ipport.h 内で 30 に設定されています。 パフォーマンスとリソース使用率を 適化するために、前のリリースの MegaCoreファンクションのデフォルト値を変更した場合は、その変更した値を使用して、
NUMBIGBUFS の新しい値を計算します。
ジャンボ・フレームの使用ジャンボ・フレームを使用するには、frm_length レジスタを 9600 に設定し、表
9–2 に記載されているファイルおよび定義を変更します。
表 9–2. ジャンボ・フレームの定義
ファイル 定義
ip\altera\triple_speed_ethernet\lib\sopc_builder\altera_triple_speed_ethernet\UCOSII\inc\iniche\triple_speed_ethernet_iniche.h
#define ALTERA_TSE_PKT_INIT_LEN 8206
#define ALTERA_TSE_MAX_MTU_SIZE 8192
#define ALTERA_TSE_MIN_MTU_SIZE 14
\altera\triple_speed_ethernet\lib\sopc_builder\altera_triple_speed_ethernet\HAL\inc\altera_avalon_tse.h
#define ALTERA_TSE_MAC_MAX_FRAME_LENGTH 8196(1)
<BSP project directory>\iniche\src\h\nios2\ipport.h
#ifndef BIGBUFSIZE
#define BIGBUFSIZE 1536
#endif
表 9–2の注:(1) ALTERA_TSE_MAC_MAX_FRAME_LENGTH の 大値は、frm_length レジスタによって定義されます。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
9–6 9ソフトウェア・プログラミング・インタフェースAPI 関数
API関数このセクションでは、提供されている各 API 関数についてアルファベット順に説明
します。
alt_tse_mac_get_common_speed()
alt_tse_mac_set_common_speed()
プロトタイプ宣言 : alt_tse_mac_get_common_speed(np_tse_mac *pmac)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード : <altera_avalon_tse.h>
説明:alt_tse_mac_get_common_speed()は、マルチ・ポート MAC およびリモート・リンク・パートナに接続された PHY によってサポートされている共通の速度を取得します。
パラメータ: pmac—MAC コントロール・インタフェースのベースを指すポインタ
戻り値:
PHY の共通速度が 1000 Mbps の場合、TSE_PHY_SPEED_1000PHY の共通速度が 100 Mbps の場合、TSE_PHY_SPEED_100 PHY の共通速度が 10 Mbps の場合、TSE_PHY_SPEED_10PHY 間で共通の速度がない場合、 TSE_PHY_SPEED_NO_COMMON
関連項目: alt_32 alt_tse_mac_set_common_speed()
プロトタイプ宣言 :alt_tse_mac_set_common_speed(np_tse_mac *pmac, alt_32 common_speed)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード : <altera_avalon_tse.h>
説明:alt_tse_mac_set_common_speed()は、マルチ・ポート MAC の速度およびマルチ・ポート MAC に接続された PHY の速度を設定します。
パラメータ:pmac—MAC コントロール・インタフェースのベースを指すポインタ
common_speed— 設定する速度
戻り値:
PHY の共通速度が 1000 Mbps の場合、TSE_PHY_SPEED_1000PHY の共通速度が 100 Mbps の場合、TSE_PHY_SPEED_100PHY の共通速度が 10 Mbps の場合、TSE_PHY_SPEED_10PHY 間で共通の速度がない場合、TSE_PHY_SPEED_NO_COMMON。MAC およびPHY の現在の速度は変更されません。
関連項目: alt_32 alt_tse_mac_get_common_speed()
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
9ソフトウェア・プログラミング・インタフェース 9–7API 関数
alt_tse_phy_add_profile()
alt_tse_system_add_sys()
プロトタイプ宣言 : alt_tse_phy_add_profile(alt_tse_phy_profile *phy)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード : <altera_avalon_tse.h>
説明:alt_tse_phy_add_profile()関数は、新規 PHY を PHY プロファイルに追加します。 Marvell 88E1111、Marvell Quad PHY 88E1145、National DP83865、およびNational DP83848C 以外の PHY を使用する場合は、この関数を使用します。
パラメータ: phy—PHY 構造体を指すポインタ
戻り値:動作が失敗した場合は、ALTERA_TSE_MALLOC_FAILED。成功した場合は、新しく追加された PHY のインデックスが返されます。
プロトタイプ宣言 :
alt_tse_system_add_sys(alt_tse_system_mac *psys_mac, alt_tse_system_sgdma *psys_sgdma, alt_tse_system_desc_mem *psys_mem, alt_tse_system_shared_fifo *psys_shared_fifo, alt_tse_system_phy *psys_phy)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード :<system.h><altera_avalon_tse.h><altera_avalon_tse_system_info.h>
説明:alt_tse_system_add_sys()関数は、TSE システムのコンポーネント(MAC、Scatter-Gather DMA、メモリ、FIFO および PHY)を定義します。この定義は、システムの各ポートに行う必要があります。
パラメータ:
psys_mac— MAC 構造体を指すポインタpsys_sgdma— Scatter-Gather DMA 構造体を指すポインタpsys_mem— メモリ構造体を指すポインタpsys_shared_fifo— FIFO 構造体を指すポインタpsys_phy— PHY 構造体を指すポインタ
戻り値:
動作が成功した場合は、SUCCESS動作が失敗した場合は、ALTERA_TSE_MALLOC_FAIL1 つ以上の定義が正しくない、またはエンプティの場合、ALTERA_TSE_SYSTEM_DEF_ERROR
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
9–8 9ソフトウェア・プログラミング・インタフェースAPI 関数
triple_speed_ethernet_init()
tse_mac_close()
プロトタイプ宣言 : error_t triple_speed_ethernet_init(alt_niche_dev *p_dev)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード : <triple_speed_ethernet_iniche.h>
説明:
triple_speed ethernet_init()関数は、トリプル・スピード・イーサネット・ドライバをオープンし、初期化します。初期化には、以下の処理が含まれます。
■ MAC デバイス・インスタンスの NET 構造体を設定します。
■ MAC PHY アドレスをコンフィギュレーションします。
■ MACデバイス・インスタンスのSGDMA RXおよびTXモジュールを登録してオープンします。
■ SGDMA RX 割り込みをイネーブルして、オペレーティング・システムに登録します。
■ SGDMA RX コールバック関数を登録します。
■ MAC の PHY 速度を取得します。
■ トリプル・スピード・イーサネット・ドライバ動作用のイーサネット MAC レジスタを設定します。
■ SGDMA RX 動作を開始するために初期ディスクリプタ・チェインを設定します。
パラメータ:p_dev— トリプル・スピード・イーサネット・デバイス・インスタンスを指すポインタ
戻り値:トリプル・スピード・イーサネット・ドライバが正常に初期化された場合、SUCCESS
関連項目: tse_mac_close()
プロトタイプ宣言 : int tse_mac_close(int iface)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード : <triple_speed_ethernet_iniche.h>
説明:
tse_mac_close()は、以下の処理を実行することにより、トリプル・スピード・イーサネット・ドライバをクローズします。
■ トリプル・スピード・イーサネット・ドライバ・インスタンスの NET 構造体の管理および動作ステータスを ALTERA_TSE_ADMIN_STATUS_DOWNにコンフィギュレーションします。
■ オペレーティング・システムからの SGDMA RX 割り込みを登録解除します。
■ command_configレジスタの RX_ENAビットをクリアして、RX データ・パスをディセーブルします。
パラメータ:iface—MAC インタフェースのインデックス。この引数は、複数の MAC インスタンスを含むコンフィギュレーション用に予約されています。
戻り値:クローズ動作が成功した場合は、SUCCESS 。オペレーティング・システムからのSGDMA RX の登録解除が失敗した場合は、エラー・コード
関連項目: triple_speed_ethernet_init()
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
9ソフトウェア・プログラミング・インタフェース 9–9API 関数
tse_mac_raw_send()
tse_mac_setGMII mode()
tse_mac_setMIImode()
プロトタイプ宣言 : int tse_mac_raw_send(NET net, char *data, unsigned data_bytes)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード : <triple_speed_ethernet_iniche.h>
説明:
tse_mac_raw_send()関数は、MAC ファンクションにイーサネット・フレーム・データを送信します。 この関数は、データ長が ALTERA_TSE_MIN_MTU_SIZEによって指定されたイーサネット・ヘッダ・サイズより長くなるように引数を検証します。 この関数は、また、現在の送信動作用のディスクリプタを構築する前に SGDMA TXエンジンがビジーではないようにします。
検証が成功すると、この関数は内部 API tse_mac_sTxWriteを呼び出し、現在のデータ・バッファ上で SGDMA 同期送信動作を開始します。
パラメータ:
net— トリプル・スピード・イーサネット MAC インスタンスの NET 構造体data— MAC に送信される、ヘッダを含むイーサネット・フレーム・データのベースを指すデータ・ポインタ。 データ・ポインタはワード・アラインメントされていると想定されています。data_bytes— ETHHDR_BIASによって指定されているような追加のパディング・バイトを含むイーサネット・フレームのバイト総数
戻り値:現在のデータ・バッファが正常に送信された場合、SUCCESSデータ・バイト数がイーサネット・ヘッダ・サイズ未満である場合、SEND_DROPPED SGDMA TX エンジンがビジーの場合、ENP_RESOURCE
プロトタイプ宣言 : int tse_mac_setGMIImode(np_tse_mac *pmac)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード : <triple_speed_ethernet_iniche.h>
説明:tse_mac_setGMIImode()関数は、MAC ファンクション動作モードをギガビット
(GMII)に設定します。 command_configレジスタの設定は、関数の 後に復元されます。
パラメータ: pmac—MAC コントロール・インタフェースのベース・アドレスを指すポインタ
戻り値: SUCCESS
関連項目: tse_mac_setMIImode()
プロトタイプ宣言 : int tse_mac_setMIImode(np_tse_mac *pmac)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード : <triple_speed_ethernet_iniche.h>
説明:tse_mac_setMIImode()関数は、MAC ファンクション動作モードを MII
(10/100)に設定します。 command_configレジスタの設定は、関数の 後に復元されます。
パラメータ: pmac—MAC コントロール・インタフェースのベース・アドレスを指すポインタ
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
9–10 9ソフトウェア・プログラミング・インタフェース定数
tse_mac_SwReset()
定数表 9–3 に、MAC レジスタの操作用に定義された定数をすべて示し、そのレジスタの
参照先を記載します。MAC 動作モードおよびタイムアウト値を定義する定数も記載
します。
戻り値: SUCCESS
関連項目: tse_mac_setGMIImode()
プロトタイプ宣言 : int tse_mac_SwReset(np_tse_mac *pmac)
スレッド・セーフ : 無し
ISR からの利用 : 不可
インクルード : <triple_speed_ethernet_iniche.h>
説明:
tse_mac_SwReset()は、MAC ファンクションでソフトウェア・リセットを行います。 ソフトウェア・リセットは、ALTERA_TSE_SW_RESET_TIME_OUT_CNTによって指定されているレイテンシで実行されます。 command_configレジスタの設定は、関数の 後に復元されます。
パラメータ: pmac— MAC コントロール・インタフェースのベース・アドレスを指すポインタ
戻り値: SUCCESS
表 9–3. 定数マッピング (1 / 3 )
定数 値 説明
ALTERA_TSE_DUPLEX_MODE_DEFAULT 1 0: 半二重1: 全二重
ALTERA_TSE_MAC_SPEED_DEFAULT0 0: 10 Mbps
1: 100 Mbps2:1000 Mbps
ALTERA_TSE_SGDMA_RX_DESC_CHAIN_SIZE 1 現在の動作モードに必要な SG-DMA ディスクリプタ数
ALTERA_CHECKLINK_TIMEOUT_THRESHOLD 1000000 MAC が PHY とのリンクを確立しようとするときのタイムアウト値
ALTERA_AUTONEG_TIMEOUT_THRESHOLD 250000 オート・ネゴシエーションのタイムアウト値
Command_Config Register (5-6 ページの「Command_Config レジスタ (Dword オフセット 0x02)」)
ALTERA_TSEMAC_CMD_TX_ENA_OFST 0 TX_ENA ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_TX_ENA_MSK 0x1
ALTERA_TSEMAC_CMD_RX_ENA_OFST 1 RX_ENA ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_RX_ENA_MSK 0x2
ALTERA_TSEMAC_CMD_XON_GEN_OFST 2 XON_GEN ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_XON_GEN_MSK 0x4
ALTERA_TSEMAC_CMD_ETH_SPEED_OFST 3 ETH_SPEEDビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_ETH_SPEED_MSK 0x8
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
9ソフトウェア・プログラミング・インタフェース 9–11定数
ALTERA_TSEMAC_CMD_PROMIS_EN_OFST 4 PROMIS_EN ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_PROMIS_EN_MSK 0x10
ALTERA_TSEMAC_CMD_PAD_EN_OFST 5 PAD_EN ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_PAD_EN_MSK 0x20
ALTERA_TSEMAC_CMD_CRC_FWD_OFST 6 CRC_FWD ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_CRC_FWD_MSK 0x40
ALTERA_TSEMAC_CMD_PAUSE_FWD_OFST 7 PAUSE_FWD ビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_PAUSE_FWD_MSK 0x80
ALTERA_TSEMAC_CMD_PAUSE_IGNORE_OFST 8 PAUSE_IGNORE ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_PAUSE_IGNORE_MSK 0x100
ALTERA_TSEMAC_CMD_TX_ADDR_INS_OFST 9 TX_ADDR_INS ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_TX_ADDR_INS_MSK 0x200
ALTERA_TSEMAC_CMD_HD_ENA_OFST 10 HD_ENA ビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_HD_ENA_MSK 0x400
ALTERA_TSEMAC_CMD_EXCESS_COL_OFST 11 EXCESS_COL ビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_EXCESS_COL_MSK 0x800
ALTERA_TSEMAC_CMD_LATE_COL_OFST 12 LATE_COL ビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_LATE_COL_MSK 0x1000
ALTERA_TSEMAC_CMD_SW_RESET_OFST 13 SW_RESET ビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_SW_RESET_MSK 0x2000
ALTERA_TSEMAC_CMD_MHASH_SEL_OFST 14 MHASH_SEL ビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_MHASH_SEL_MSK 0x4000
ALTERA_TSEMAC_CMD_LOOPBACK_OFST 15 LOOP_ENA ビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_LOOPBACK_MSK 0x8000
ALTERA_TSEMAC_CMD_TX_ADDR_SEL_OFST 16 TX_ADDR_SEL ビット(ビット 16 ~ 18)をコンフィギュレーションします。
ALTERA_TSEMAC_CMD_TX_ADDR_SEL_MSK 0x70000
ALTERA_TSEMAC_CMD_MAGIC_ENA_OFST 19 MAGIC_ENAビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_MAGIC_ENA_MSK 0x80000
ALTERA_TSEMAC_CMD_SLEEP_OFST 20 SLEEPビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_SLEEP_MSK 0x100000
表 9–3. 定数マッピング (2 / 3 )
定数 値 説明
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
9–12 9ソフトウェア・プログラミング・インタフェース定数
ALTERA_TSEMAC_CMD_WAKEUP_OFST 21 WAKEUPビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_WAKEUP_MSK 0x200000
ALTERA_TSEMAC_CMD_XOFF_GEN_OFST 22 XOFF_GEN ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_XOFF_GEN_MSK 0x400000
ALTERA_TSEMAC_CMD_CNTL_FRM_ENA_OFST 23 CNTL_FRM_ENAビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_CNTL_FRM_ENA_MSK 0x800000
ALTERA_TSEMAC_CMD_NO_LENGTH_CHECK_OFST 24 NO_LENGTH_CHECK ビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_NO_LENGTH_CHECK_MSK 0x1000000
ALTERA_TSEMAC_CMD_ENA_10_OFST 25 ENA_10 ビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_ENA_10_MSK 0x2000000
ALTERA_TSEMAC_CMD_RX_ERR_DISC_OFST 26 RX_ERR_DISC ビットをコンフィギュレーションします。
ALTERA_TSEMAC_CMD_RX_ERR_DISC_MSK 0x4000000
ALTERA_TSEMAC_CMD_CNT_RESET_OFST 31CNT_RESETビットをコンフィギュレーションします。ALTERA_TSEMAC_CMD_CNT_RESET_MSK 0x8000000
0Tx_Cmd_Stat Register (5-13 ページの「送受信コマンド・レジスタ (Dword オフセット 0x3A – 0x3B)」)
ALTERA_TSEMAC_TX_CMD_STAT_OMITCRC_OFST 17 OMIT_CRCビットをコンフィギュレーションします。ALTERA_TSEMAC_TX_CMD_STAT_OMITCRC_MSK 0x20000
ALTERA_TSEMAC_TX_CMD_STAT_TXSHIFT16_OFST 18 TX_SHIFT16ビットをコンフィギュレーションします。ALTERA_TSEMAC_TX_CMD_STAT_TXSHIFT16_MSK 0x40000
Rx_Cmd_Stat Register (5-13 ページの「送受信コマンド・レジスタ (Dword オフセット 0x3A – 0x3B)」)
ALTERA_TSEMAC_RX_CMD_STAT_RXSHIFT16_OFST 25 RX_SHIFT16ビットをコンフィギュレーションします。ALTERA_TSEMAC_RX_CMD_STAT_RXSHIFT16_MSK 0x2000000
表 9–3. 定数マッピング (3 / 3 )
定数 値 説明
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
A. MegaCoreファンクションの評価
OpenCore Plus評価機能アルテラの無償 OpenCore Plus 評価機能により、以下の処理を実行することができ
ます。
■ 作成したシステム内のメガファンクション(アルテラ MegaCore ファンクション
または AMPPSM メガファンクション)の動作をシミュレーションする。
■ デザインの機能を検証したり、サイズやスピードを迅速かつ簡単に評価したりす
る。
■ メガファンクションを含むデザインに対し、時間制限つきのデバイス・プログラ
ミング・ファイルを生成する。
■ デバイスをプログラムし、デザインを実機上で検証する。
メガファンクションのライセンスは、お客様が機能と性能に満足し、かつデザイン
を製品化する場合にのみ、ご購入いただく必要があります。
MegaCore ファンクションのライセンス購入後、アルテラ・ウェブサイトのアルテ
ラ・ライセンスページでライセンス・ファイルを要求して、お使いのコンピュータ
にインストールできます。ライセンス・ファイルを要求すると、アルテラから電子
メールで license.dat ファイルが送信されます。 インターネットをご利用いただけな
いお客様は、アルテラの販売代理店にお問い合わせください。
f OpenCore Plus ハードウェア評価について詳しくは、 「AN 320: OpenCore Plus Evaluation of Megafunctions」を参照してください。
OpenCore Plusタイム・アウト動作OpenCore Plus ハードウェア評価機能は、以下の 2 種類の動作モードでメガファン
クションの実機評価をサポートします。
■ Untethered(アンテザード)— デザインは限定時間のみ実行されます。
■ Tethered(テザード)— ボードとホスト・コンピュータ間に接続が必要です。デ
ザイン内のすべてのメガファンクションが Tethered モードをサポートしている
場合、デバイスはより長時間または無制限に動作できます。
も限定的な評価時間に達すると、デバイス内のすべてのメガファンクションが同
時にタイムアウトします。 デザイン内に複数のメガファンクションがある場合、特定
のメガファンクションのタイムアウト動作は、他のメガファンクションのタイムア
ウト動作によってマスクされることがあります。
1 MegaCore ファンクションの場合、アンテザード・タイムアウトは 1 時間、テザー
ド・タイムアウト値は無制限です。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
A–2OpenCore Plus 評価機能
ハードウェア評価期限が経過後にデザインは動作を停止し、一部の信号が Low にな
ります。 10/100/1000 イーサネット MAC ファンクションを含むコンフィギュレー
ションでは、以下の信号が Low になります。
ff_rx_data、 ff_rx_mod、 ff_rx_eop、 ff_rx_sop、 ff_rx_dval、 rx_err、 gm_tx_d、 gm_tx_en、 gm_tx_err、 m_tx_d、 m_tx_en、 および m_tx_err。
1000BASE-X/SGMII PCS ファンクションを含むコンフィギュレーションでは、以下
の信号が Low になります。
gmii_rx_d、 gmii_rx_dv、 gmii_rx_err、 mii_rx_d、 mii_rx_dv、 mii_rx_err、 mii_rx_col、 mii_rx_crs、 および tbi_tx_d。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
B. イーサネット・フレーム・のフォーマット
基本的なフレーム・フォーマット図 B–1 に、基本的なイーサネット・フレームのフォーマットを示します。
基本イーサネット・フレームは以下のフィールドから構成されています。
■ プリアンブル — 大 0x55 の 7 オクテットの固定値。
■ フレーム開始部(SFD)— フレームの先頭にマークを付ける 0xD5 の 1 オクテット
の固定値。
■ 送信先および送信元のアドレス — それぞれ 6 オクテットです。 下位バイトが
初に送信されます。
■ 長さまたはタイプ —1536(0x600)以上の 2 オクテットの値はタイプ・フィール
ドを示します。1536(0x600)未満の場合は、このフィールドにペイロード・
データの長さが格納されます。このフィールドの 上位バイトが 初に送信され
ます。
■ ペイロード・データおよびパッド — 可変長データとパディング
■ フレーム・チェック・シーケンス (FCS)— 送信時のフレーム・エラーを検出す
るための 4 オクテットの回冗長検査(CRC)値
■ 拡張フィールド — 半二重モードで動作するギガビット・イーサネットのみに必要
です。MAC ファンクションは、この実装をサポートしません。
VLAN およびスタック VLANフレームのフォーマット基本 MAC フレームの拡張は、仮想ローカル・エリア・ネットワーク(VLAN)のタ
グ・フレームです。このフレームには、送信元アドレス・フィールドと長さ/タイ
プ・フィールドの間に VLAN タグと情報用の追加 4 バイトが含まれています。VLANタグは、IEEE 802.1Q 規格によって定義されています。VLAN タグは、企業ネット
ワークおよびメトロ・ネットワークで複数グループのネットワーク・トラフィック
を特定して分割することができます。各 VLAN グループは、ネットワークの異なる
位置で様々な MAC アドレスを持つ多くのユーザーで構成することができます。
VLAN タグにより、ネットワーク性能の向上および調整が実現でき、さまざまなグ
ループやお客様のネットワーク・トラフィックにおけるプライバシーと安全性を向
上させます。
図 B–1. MACフレームのフォーマット
7 octets PREAMBLE 1 octet SFD 6 octets DESTINATION ADDRESS 6 octets
SOURCE ADDRESS
2 octets
LENGTH/TYPE
0..1500/9600 octets
PAYLOAD DATA
0..46 octets PAD
4 octets FRAME CHECK SEQUENCE
EXTENSION (half duplex only)
Frame length
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
B–2ポーズ・フレームのフォーマット
VLAN タグ・フレームは、 大 1522 バイトのフレーム長を持っています(プリアン
ブルおよび SFD フィールドを除く)。図 B–2 に、VLAN タグ・フレームのフォー
マットを示します。
メトロ・イーサネット・アプリケーションでは、多くのサービス・プロバイダが
イーサネット・リンクを共有しているので、より高いスケーラビリティとセキュリ
ティが求められます。そのため、MAC フレームに 2 つの VLAN タグを連続して付け
ることができます(スタック VLAN)。 図 B–3 に示すように、スタック VLAN フレー
ムには、送信元アドレス・フィールドとクライアント長さ/タイプ・フィールドの
間に付加的な 8 バイトのフィールドが含まれます。
ポーズ・フレームのフォーマットポーズ・フレームは、送信デバイスに輻輳状態を示すために、受信デバイスによっ
て生成されます。送信デバイスは、フロー制御をサポートしている場合、ポーズ・
フレームを受信するとデータ送信を停止します。
図 B–4 にポーズ・フレームのフォーマットを示します。長さ/タイプ・フィールド
に 0x8808 の固定値が格納され、その後に 0x0001 の 2 オクテットのオペコード・
フィールドが続きます。 2 オクテットのポーズ・クアンタは、フレーム・ペイロード
のバイト 2 およびバイト 3 で表されます。ポーズ・クアンタ P1 は、 上位です。 ポーズ・フレームには、ペイロード長さフィールドがなく、常に 42 バイトの 0x00でパディングされます。
図 B–2. VLANタグ MACフレームのフォーマット
図 B–3. スタック VLANタグ MACフレームのフォーマット
7 octets
PREAMBLE
1 octet
SFD
6 octets
DESTINATION ADDRESS
6 octets
SOURCE ADDRESS
2 octets
CLIENT LENGTH/TYPE
0..1500/9600 octets
PAYLOAD DATA
0..42 octets PAD
4 octets FRAME CHECK SEQUENCE
EXTENSION (half duplex only)
Frame length
2 octets
2 octets
LENGTH/TYPE (VLAN Tag 0x8100)
VLAN info
7 octets
PREAMBLE
1 octet
SFD
6 octets
DESTINATION ADDRESS
6 octets
SOURCE ADDRESS
2 octets
CLIENT LENGTH/TYPE
0..1500/9600 octets
PAYLOAD DATA
0..38 octets PAD
4 octets FRAME CHECK SEQUENCE
EXTENSION (half duplex only)
Frame length
2 octets
2 octets VLAN info
Stacked VLANs2 octets
2 octets LENGTH/TYPE (VLAN Tag 0x8100)
VLAN info
LENGTH/TYPE (VLAN Tag 0x8100)
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
B–3ポーズ・フレームのフォーマット
図 B–4. ポーズ・フレームのフォーマット
7octets PREAMBLE
1 octet SFD 6 octets DESTINATION ADDRESS 6 octets
SOURCE ADDRESS
2 octets
TYPE (0x8808)
OPCODE (0X0001)
PAUSE QUANTA (P1, P2)
42 octets PAD
CRC
2 octets
2 octets
4 octets
Payload
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
B–4ポーズ・フレームのフォーマット
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
C. シミュレーション・パラメータ
機能コンフィギュレーション・パラメータ表 C–1 のパラメータを使用して、MAC と PCS の特定の機能をイネーブルまたは
ディセーブルできます。
表 C–1. MegaCore機能コンフィギュレーション・パラメータ (1 / 2 )
パラメータ 説明 デフォルト
10/100/1000 イーサネット MAC を含むコンフィギュレーションでサポートされているパラメータ
ETH_MODE
10:MII をイネーブルします。
100:MII をイネーブルします。
1000:GMII をイネーブルします。
1000
HD_ENA command_configレジスタのHD_ENAビットを設定します。 7 ページの表 5–3 を参照してください。
0
TB_MACPAUSEQ pause_quant レジスタを設定します。 3 ページの表5–2 を参照してください。
15
TB_MACIGNORE_PAUSE command_config レジスタのPAUSE_IGNORE ビットを設定します。 7 ページの表 5–3 を参照してください。
0
TB_MACFWD_PAUSE command_configレジスタのPAUSE_FWDビットを設定します。 7 ページの表 5–3 を参照してください。
0
TB_MACFWD_CRC command_configレジスタの CRC_FWDビットを設定します。 7 ページの表 5–3 を参照してください。
0
TB_MACINSERT_ADDR command_configレジスタのADDR_INSビットを設定します。 7 ページの表 5–3 を参照してください。
0
TB_PROMIS_ENA command_configレジスタのPROMIS_ENビットを設定します。 7 ページの表 5–3 を参照してください。
1
TB_MACPADEN command_configレジスタのPAD_ENビットを設定します。 7 ページの表 5–3 を参照してください。
1
TB_MACLENMAX 大フレーム長。 1518
TB_IPG_LENGTH tx_ipg_length レジスタを設定します。 3 ページの表 5–2 を参照してください。
12
TB_MDIO_ADDR0 mdio_addr0 レジスタを設定します。 3ページの表5–2を参照してください。
0
TB_MDIO_ADDR1 mdio_addr1 レジスタを設定します。 3ページの表5–2を参照してください。
1
TX_FIFO_AE tx_almost_empty レジスタを設定します。3 ページの表 5–2 を参照してください。
8
TX_FIFO_AF tx_almost_fullレジスタを設定します。 3 ページの表 5–2 を参照してください。
10
RX_FIFO_AE rx_almost_emptyレジスタを設定します。 3ページの表 5–2 を参照してください。
8
RX_FIFO_AF rx_almost_full レジスタを設定します。 3 ページの表 5–2 を参照してください。
8
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
C–2テスト・コンフィギュレーション・パラメータ
テスト・コンフィギュレーション・パラメータ表 C–2 のパラメータを使用して、カスタム・テスト・シナリオを作成できます。
TX_FIFO_SECTION_EMPTY tx_section_empty レジスタを設定します。3 ページの表 5–2 を参照してください。
16
TX_FIFO_SECTION_FULL tx_section_full レジスタを設定します。 3 ページの表 5–2 を参照してください。
16
RX_FIFO_SECTION_EMPTY rx_section_emptyレジスタを設定します。 3ページの表 5–2 を参照してください。
0
RX_FIFO_SECTION_FULL rx_section_full レジスタを設定します。3 ページの表 5–2 を参照してください。
16
MCAST_TABLENマルチキャスト・アドレスの選択元であるMCAST_ADDRESSLISTから、 初の n 個のアドレスを指定します。
9
MCAST_ADDRESSLIST マルチキャスト・アドレスのリスト。
0x887654332211 0x886644352611 0xABCDEF012313 0x92456545AB15 0x432680010217 0xADB589215439 0xFFEACFE3434B 0xFFCCDDAA3123 0xADB358415439
1000BASE-X/SGMII PCS を含むコンフィギュレーションでサポートされているパラメータ
TB_SGMII_ENA if_modeレジスタのSGMII_ENAビットを設定します。 21 ページの表 5–13 を参照してください。
0
TB_SGMII_AUTO_CONF if_modeレジスタのUSE_GMII_ANビットを設定します。 21 ページの表 5–13 を参照してください。
0
表 C–1. MegaCore機能コンフィギュレーション・パラメータ (2 / 2 )
パラメータ 説明 デフォルト
表 C–2. テスト・コンフィギュレーション・パラメータ (1 / 3 )
パラメータ 説明 デフォルト
10/100/1000 イーサネット MAC を含むコンフィギュレーションでサポートされているパラメータ
TB_RXFRAMES イーサネット側(GMII/MII/RGMII)のローカル・ループバックをイネーブルします。値は常に 0 に設定されます。
0
TB_TXFRAMES AvalonST イーサネット・フレーム・ジェネレータによって生成されるフレーム数を指定します。
5
TB_RXIPG 受信パス上の IPG。 12
TB_ENA_VAR_IPG0:定数 IPG、TB_RXIPGは、GMII/RGMII/MII イーサネット・フレーム・ジェネレータで使用されます。1:受信パス上の変数 IPG をイネーブルします。
0
TB_LENSTARTフレーム・ジェネレータによって生成される 初のフレームのペイロード長を指定します。 後続フレームのペイロード長は、それぞれTB_LENSTEPの値だけインクリメントされます。
100
TB_LENSTEP ペイロード長のインクリメントを指定します。 1
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
C–3テスト・コンフィギュレーション・パラメータ
TB_LENMAX
フレーム・ジェネレータによって生成される 大ペイロード長を指定します。 ペイロード長は、この値を超えると、TB_LENSTARTにラップ・アラウンドされます。 このパラメータは、TB_MACLENMAXの値よりも大きい値に設定して、フレーム長エラーをテストするために使用できます。
1500
TB_ENA_PADDING
0:パディングをディセーブルします。1:GMII/RGMII/MII イーサネット・フレーム・ジェネレータによって生成されるフレーム長が、 小フレーム長(64 バイト)未満である場合は、ジェネレータはフレームにパディング・バイトを挿入して、 小長にします。
1
TB_ENA_VLAN
0:基本フレームのみが生成されます。1:VLAN フレーム生成をイネーブルします。 この値は、VLAN フレームが生成され、その後にスタック VLAN フレームが生成されるまでに生成される基本フレーム数を指定します。
0
TB_STOPREAD読み出しが中断されるまでの受信 FIFO から読み出されるパケット数を指定します。 このパラメータを使用して、FIFO オーバーフローおよびフロー制御をテストできます。
0
TB_HOLDREAD Avalon-ST モニタが受信 FIFO からの読み出しを停止するまでのクロック・サイクル数を指定します。
1000
TB_TX_FF_ERR0:通常の動作1:Avalon-ST エラー信号を High にして、エラーのあるフレーム送信をシミュレーションします。
0
TB_TRIGGERXOFF シミュレーションが開始されてから xoff_gen信号が出力されるまでのクロック・サイクル数を指定します。
0
TB_TRIGGERXON シミュレーションが開始されてから xon_gen信号が High になるまでのクロック・サイクル数を指定します。
0
RX_COL_FRM 衝突が発生した受信フレームを指定します。 ファスト・イーサネットおよび半二重モードのみで有効です。
0
RX_COL_GEN フレームの衝突が発生した、フレーム内のニブルを指定します。 0
TX_COL_FRM 衝突が発生した送信フレームを指定します。ファスト・イーサネットおよび半二重モードのみで有効です。
0
TX_COL_GEN 送信パス上でフレームの衝突が発生した、フレーム内のニブルを指定します。
0
TX_COL_NUM 再送信中の連続衝突数を指定します。 0TX_COL_DELAY 衝突から再送信までの遅延をニブル単位で指定します。 0
TB_PAUSECONTROL
0:GMII フレーム・ジェネレータはポーズ・フレームに応答しません。1:GMII フレーム・ジェネレータにおけるフロー制御をイネーブルします。
1
TB_MDIO_SIMULATION MDIO シミュレーションをイネーブル/ディセーブルします。 01000BASE-X/SGMII PCS を含むコンフィギュレーションでサポートされているパラメータ
TB_SGMII_HD 0:半二重モードをディセーブルします。1:半二重モードをイネーブルします。
0
TB_SGMII_1000 0:ギガビット動作をディセーブルします。1:ギガビット動作をイネーブルします。
1
表 C–2. テスト・コンフィギュレーション・パラメータ (2 / 3 )
パラメータ 説明 デフォルト
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
C–4テスト・コンフィギュレーション・パラメータ
TB_SGMII_100 0:100 Mbps 動作をディセーブルします。1:100 Mbps 動作をイネーブルします。
0
TB_SGMII_10 0:10 Mbps 動作をディセーブルします。1:10 Mbps 動作をイネーブルします。
0
TB_TX_ERR 0:エラー生成をディセーブルします。1:エラー生成をイネーブルします。
0
表 C–2. テスト・コンフィギュレーション・パラメータ (3 / 3 )
パラメータ 説明 デフォルト
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
2011 年 6 月Altera Corporation
追加情報
改訂履歴以下の表に、このユーザーガイドの改訂履歴を示します。
日付 バージョン 変更内容
2011 年 6 月 11.0
■ Cyclone IV GX、 Cyclone III LS、 Aria II GZ、 HardCopy IV GX/E および HardCopy III E デバイスのサポートを更新
■ 第 1 章: パフォーマンスおよびリソース使用率セクションを改訂
■ 第 3 章:Qsys システム統合ツールのデザイン・フローを追加して更新
■ 第 4 章: 送受信レイテンシ セクションを追加
■ すべての MAC アドレスをバイト・アドレスに更新
2010 年 12 月 10.1
■ Arria II GZ デバイスのサポートを追加
■ 新しいパラメータ(開始チャネル番号)を追加
■ 内容およびドキュメントの編成を合理化
2010 年 8 月 10.0
■ Stratix V デバイスのサポートを追加
■ デバイス・サポートの種類の命名を改訂
■ 第 5 章:デザイン検討事項を追加します。「クロック分配」セクションをこの章に移動し、タイトルを「PCS およびエンベデッド PMA を備えたマルチポート MAC のクロック・リソースの 適化」に変更します。PLL の共有およびトランシーバ・クワッドの共有のセクションを追加します。
■「トランシーバ・ダイナミック・リコンフィギュレーション」の説明を更新
2009 年 11 月 9.1
■ Cyclone IV、 Hardcopy III、および Hardcopy IV のサポートを追加。Hardcopy II のサポートをフルに更新
■ 第1章:10/100/1000 イーサネットMACおよびsmall MAC間の機能比較を追加して更新
■ 第 4 章:10/100/1000 イーサネットの MAC 説明、長さのチェック、リセット、およびコントロール・インタフェースのセクションを改訂して更新
2009 年 3 月 9.0
■ Arria II GX デバイスのサポートを追加。
■ 第 3 章:拡張された統計情報カウンタをイネーブルする新規パラメータを提供するために更新。
■ 第 4 章:マルチ・ポート MAC 内の異なる速度のサポートとゲート付きクロック除去のサポートを反映するために更新。
■ 第 6 章:デバイス・ドライバに対して行われた機能強化を反映するために更新。
2008 年 11 月 8.1
■ 第 3 章および第 4 章:ダイナミック・リコンフィギュレーションに関する説明を追加するために更新。
■ 第6章:サポートされていないPHYを追加するためのプロシージャを提供するために更新。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド
Info–2アルテラへの問い合わせ
アルテラへの問い合わせAltera 製品に関する 新の情報については、次の表を参照してください。
2008 年 5 月 8.0
■ パフォーマンス・テーブルおよびデバイスのサポートを改訂。
■ 第 3章および第 4章:マルチ・ポートを持ち、内部 FIFO を持たない MAC に関する情報を提供するために更新。
■ 第 4 章:クロック分配のセクションを改訂。
■ 第 5 章:冗長情報を除去し、新規テストベンチ・アーキテクチャを追加するために再編成。
■ 第 6 章:新規の公開 API を提供するために更新。
2007 年 10 月 7.2■ 第 1 章:新規デバイスのサポートを反映するために更新。
■ 第 3 章と第 4 章:small-MAC に関する情報を提供するために更新。
2007 年 5 月 7.1■ 第 2 章、第 3 章、第 5 章および第 6 章を追加。
■ 現行バージョンの変更および機能強化を反映するために内容を更新。
2007 年 3 月 7.0 信号名および説明を更新
2006 年 12 月 6.1
■ 全体にわたる用語変更:「1000BASE-X PCS/SGMII」を「1000BASE-X/SGMII PCS」に、「ホスト側」または「クライアント側」を「内部システム側」に、「HD」を「半二重」に変更。
■ Web での資料の初回リリース。
2006 年 12 月 6.1 DVD での資料の初回リリース。
日付 バージョン 変更内容
お問い合わせ先 ( 注 1) お問い合わせ方法 アドレス
技術的なご質問 ウェブサイト www.altera.com/support
技術トレーニング gウェブサイト www.altera.com/training
電子メール [email protected]
アルテラの資料に関するお問い合わせ 電子メール [email protected]
一般的なお問い合わせ 電子メール [email protected]
ソフトウェア・ライセンスに関するお問い合わせ 電子メール [email protected]
注:(1) 詳しくは、日本アルテラまたは販売代理店にお問い合わせください。
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation
Info–3表記規則
表記規則本書では、以下の表に示す表記規則を使用しています。
書体 意味
太字かつ文頭が大文字 コマンド名、ダイアログ・ボックス・タイトル、ダイアログ・ボックス・オプション、およびその他の GUI ラベルを表します。例:Save As ダイアログ・ボックス
太字 ディレクトリ名、プロジェクト名、ディスク・ドライブ名、ファイル名、ファイルの拡張子、およびソフトウェア・ユーティリティ名を表します。例:\qdesigns ディレクトリ、d: ドライブ、および chiptrip.gdf ファイル
斜体かつ文頭が大文字資料のタイトルを表します。例えば、 「AN 519: Stratix IV Design Guidelines」
斜体
変数を表します。 例:n + 1
変数名は、山括弧( )で囲んでいます。 例:<file name> および <project name>.pof ファイル
文頭が大文字キーボード・キーおよびメニュー名を表します。例:Delete キー、Options メニュー
「小見出しタイトル」かぎ括弧は、資料内の小見出しおよび Quartus II Help トピックのタイトルを表します。 例:「表記規則」
Courierフォント
信号、ポート、レジスタ、ビット、ブロック、およびプリミティブ名を表します。 例:data1、tdi、および input アクティブ Low 信号は、サフィックス nで表示されています ( 例:resetn)。
コマンドライン・コマンド、および表示されているとおりに入力する必要があるものを表します。例:c:\qdesigns\tutorial\chiptrip.gdf
また、Report ファイルのような実際のファイル、ファイルの構成要素(例:AHDL キーワードの SUBDESIGN)、ロジック・ファンクション名(例:TRI)も表します。
1.、2.、3.、およびa.、b.、c. など
手順など項目の順序が重要なものは、番号が付けられリスト形式で表記されています。
■ ■ 箇条書きの黒点などは、項目の順序が重要ではないものに付いています。
1 指差しマークは、要注意箇所を表しています。
c 注意は、製品または作業中のデータに損傷を与えたり、破壊したりするおそれのある条件や状況に対して注意を促します。
w 警告は、ユーザーに危害を与えるおそれのある条件や状況に対して注意を促します。
r 矢印は、Enter キーを押すよう指示しています。
f 足跡マークは、詳細情報の参照先を示しています。
2011 年 6 月 トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイドAltera Corporation
Info–4表記規則
トリプル・スピード・イーサネットMegaCore ファンクション・ユーザーガイド 2011 年 6月Altera Corporation