logicore ip 製品ガイド...axi ethernet lite mac v3.0 logicore ip 製品ガイド vivado design...

53
AXI Ethernet Lite MAC v3.0 LogiCORE IP 製品ガ イ ド Vivado Design Suite PG135 2015 11 18 本資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。 資 料によっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情 報につきましては、必ず最新英語版をご参照ください。

Upload: others

Post on 10-Jun-2020

7 views

Category:

Documents


0 download

TRANSCRIPT

AXI Ethernet Lite MAC v3.0

LogiCORE IP 製品ガイド

Vivado Design Suite

PG135 2015 年 11 月 18 日

本資料は表記のバージョンの英語版を翻訳したもので、内容に相違が生じる場合には原文を優先します。 資料によっては英語版の更新に対応していないものがあります。日本語版は参考用としてご使用の上、最新情報につきましては、必ず最新英語版をご参照ください。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 2PG135 2015 年 11 月 18 日

目次

IP の概要

第 1 章 : 概要ブロ ッ クの説明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

機能一覧 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

サポート されていない機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

ラ イセンスおよび注文情報 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

第 2 章 : 製品仕様パフォーマンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

リ ソース使用状況 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8

ポートの説明 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

レジスタ空間 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

第 3 章 : コアを使用するデザインク ロ ッ ク . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22

リセッ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

プログラム シーケンス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

MDIO (Management Data Input/Output) マスター インターフェイス . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

イーサネッ ト プロ ト コル . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

第 4 章 : デザイン フローの手順コアのカスタマイズおよび生成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

コアへの制約 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

シ ミ ュレーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

合成およびインプリ メンテーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39

第 5 章 : サンプル デザインディ レク ト リ と ファ イルの内容 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

サンプル デザイン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

第 6 章 : テストベンチサンプル デザインのシ ミ ュレーシ ョ ン . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48

付録 A : 移行およびアップグレードVivado Design Suite への移行 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

Vivado Design Suite でのアップグレード . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

付録 B : デバッグザイ リ ンクス ウェブサイ ト . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

Vivado Design Suite のデバッグ機能 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

ハードウェア デバッグ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 3PG135 2015 年 11 月 18 日

付録 C : その他のリソースおよび法的通知ザイ リ ンクス リ ソース . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

参考資料 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

改訂履歴 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

法的通知 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 4PG135 2015 年 11 月 18 日 Production 製品仕様

はじめにザイ リ ン ク ス LogiCORE™ IP AXI Ethernet Lite Media AccessController (MAC) コアは、 IEEE Std.802.3 Media Independent Interface (MII) 規格で定義された機能を実装する こ と を目的に設計されています。このコアは AXI4 または AXI4-Lite インターフェイスを使用してプロセッサと通信します。

このデザインは 10Mb/s および 100Mb/s (ファス ト イーサネット ) インターフェイスに対応しています。

機能

• AXI4 または AXI4-Lite 仕様に基づきパラ メーター指定可能な AXI4 スレーブ インターフェイスによる送信および受信データ デュアル ポート メモ リへのアクセス

• 外部 10/100Mb/s PHY ト ランシーバーに接続するための MII (Media Independent Interface)

• 1 パケッ ト分のデータを格納する独立した内部 2KB TX および RX デュアル ポート メモ リ

• 合計 4KB の TX および RX Ping-Pong 型デュアル バッファー メモ リ (オプシ ョ ン)

• 受信および送信割り込みをサポート

• PHY アクセス用の MDIO (Management Data Input/Output) インターフェイス (オプシ ョ ン)

• 内部ループバッ クをサポート

IP の概要

この LogiCORE IP について

コアの概要

サポート される

デバイス (1)

UltraScale+™ ファ ミ リ、

UltraScale™ アーキテクチャ、

Zynq®-7000 All Programmable SoC、7 シ リーズ

サポート される

ユーザー インターフェイス

AXI4/AXI4-Lite

リ ソース 表 2-2、 表 2-3、 および表 2-4 を参照

コアに含まれるもの

デザイン ファイル 暗号化済み RTL

サンプル デザイン VHDL

テス トベンチ VHDL

制約ファイル XDC

シ ミ ュレーシ ョ ン モデル

なし

サポート される ソフ ト ウェア ド ラ イバー (2)

スタンドアロンおよび Linux

テスト済みデザイン フロー (3)

デザイン入力Vivado® Design Suite

Vivado

シ ミ ュレーシ ョ ン

サポート されるシ ミ ュレータについては、

『Vivado Design Suite ユーザー ガイ ド :リ リース ノート ガイ ド、 インス トール

およびライセンス』 を参照

合成 Vivado 合成

サポート

ザイ リ ンクス サポート ウェブ ページで提供

注記 :1. サポート されているデバイスの一覧は、 Vivado IP カタログを参

照して ください。

2. スタンドアロン ド ライバーの詳細は、 SDK ディ レク ト リ (<install_directory>/doc/usenglish/xilinx_drivers.htm) を参照して く

ださい。 Linux OS およびド ラ イバー サポートの情報は、 ザイ リ

ンクス Wiki ページを参照してください。

3. サポート されているツールのバージ ョ ンは、『Vivado Design Suiteユーザー ガイ ド : リ リース ノート ガイ ド、 インス トールおよび

ライセンス』 を参照してください。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 5PG135 2015 年 11 月 18 日

第 1 章

概要図 1-1 に、 AXI Ethernet Lite MAC の 上位ブロ ッ ク図を示します。

X-Ref Target - Figure 1-1

図 1-1 : AXI Ethernet Lite MAC のブロック図

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 6PG135 2015 年 11 月 18 日

第 1 章 : 概要

ブロックの説明

AXI4 インターフェイス

このブロ ッ クは、 レジスタ アクセスおよびデータ転送用の AXI4 スレーブ インターフェイスを提供します。

TX バッファー

TX バッファー ブロ ッ クは、完全な 1 フレーム分の送信データ と送信インターフェイス制御レジスタを格納する 2KBデュアル ポート メモ リで構成されます。 [Number of Transmit Buffers] パラ メーターの設定によっては、 オプシ ョ ンのPong バッファー用 2KB デュアル ポート メモ リ も含まれます。

RX バッファー

RX バッファー ブロ ッ クは、完全な 1 フレーム分の受信データ と受信インターフェイス制御レジスタを格納する 2KBデュアル ポート メモ リで構成されます。 [Number of Receive Buffers] パラ メーターの設定によっては、 オプシ ョ ンのPong バッファー用 2KB デュアル ポート メモ リ も含まれます。

ト ランスミ ッ ター このブロ ッ クは、送信ロジッ ク、 CRC (巡回冗長検査) ジェネレーター モジュール、送信データ MUX、 TX FIFO (FirstIn First Out)、 および送信インターフェイス モジュールで構成されます。 CRC ジェネレーター モジュールは、 送信フレームの CRC を計算します。 送信制御 MUX はこのフレームを配列し、 プ リ アンブル、 SFD (Start Frame Delimiter)、フレーム データ、パディング、および CRC を所定の順番で送信 FIFO へ送り ます。フレームが PHY に送信される と、このモジュールは送信割り込みを生成し、 送信制御レジスタを更新します。

レシーバー

このブロ ッ クは、 RX インターフェイス、 ループバッ ク制御 MUX、 RX FIFO、 CRC チェッカー、 および受信制御モジュールで構成されます。 PHY からの受信データ信号はループバッ ク制御 MUX を経由して RX FIFO に格納されます。 ループバッ クを有効にした場合、 TX ラ インのデータが RX FIFO に渡されます。 CRC チェッカー モジュールはCRC 受信フレームの CRC を計算し、 CRC 値が正しければ受信制御ロジッ クがフレーム受信割り込みを生成します。

MDIO マスター インターフェイス

MDIO マスター インターフェイス ブロ ッ クは、 Vivado® 統合設計環境 (IDE) で [Enable MII Management Module] をオンにする とデザインに追加されます。 このモジュールを使用して、 PHY 管理用の PHY レジスタにアクセスします。MDIO インターフェイスの詳細は、 第 2 章の 「PHY インターフェス信号」 を参照してください。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 7PG135 2015 年 11 月 18 日

第 1 章 : 概要

機能一覧• AXI4 または AXI4-Lite 仕様に基づきパラ メーター指定可能な AXI4 スレーブ インターフェイスによる送信およ

び受信データ デュアル ポート メモ リへのアクセス

• 外部 10/100Mb/s PHY ト ランシーバーに接続するための MII (Media Independent Interface)

• 1 パケッ ト分のデータを格納する独立した内部 2KB TX および RX デュアル ポート メモ リ

• 合計 4KB の TX および RX Ping-Pong 型デュアル バッファー メモ リ (オプシ ョ ン)

• 受信および送信割り込み

• PHY アクセス用の MDIO (Management Data Input/Output) インターフェイス (オプシ ョ ン)

• 内部ループバッ クをサポート

• ユニキャス ト アドレスおよびブロードキャス ト アドレスのメ ッセージ受信をサポート

サポート されていない機能• 32 ビッ ト を超える AXI データ バス幅

• 32 ビッ ト以外の AXI アドレス バス幅

• AXI 排他アクセス

• AXI TrustZone

• AXI 低消費電力インターフェイス

• AXI ナロー転送

• AXI FIXED、 WRAP ト ランザクシ ョ ン

• AXI バリ ア ト ランザクシ ョ ン

• AXI デバッグ ト ランザクシ ョ ン

• AXI ユーザー信号

ライセンスおよび注文情報このザイ リ ンクス LogiCORE™ IP モジュールは、 ザイ リ ンクス エンドユーザー ライセンス規約のも とザイ リ ンクスVivado Design Suite を使用して追加コス ト なしで提供されています。 この IP およびその他のザイ リ ンクス LogiCOREIP モジュールに関する情報は、 IP コアのページから入手できます。 その他のザイ リ ンクス LogiCORE IP モジュールおよびツールの価格および提供状況については、 お近くのザイ リ ンクス販売代理店にお問い合わせください。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 8PG135 2015 年 11 月 18 日

第 2 章

製品仕様

パフォーマンスAXI Ethernet Lite コアの特性は、『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1] に記載のベンチマーク メ ソ ド ロジに基づいて評価しています。 表 2-1 に、 特性評価の結果を示します。

リソース使用状況

AXI Ethernet Lite MAC コアの各種パラ メーター設定における リ ソース使用量を、 Virtex®-7 FPGA (表 2-2)、 Kintex®-7FPGA (表 2-3)、 および Artix®-7 FPGA (表 2-4) の各ターゲッ ト デバイスごとに示します。

注記 : Zynq®-7000 All Programmable SoC および UltraScale™ デバイスのリ ソース使用量は、 7 シ リーズ デバイス と同等と考えられます。

表 2-1 : 最大周波数

ファ ミ リ スピード グレードFMax (MHz)

AXI4 AXI4-Lite

Virtex-7

-1

200 180

Kintex-7 200 180

Artix-7 150 120

Virtex-7

-2

240 200

Kintex-7 240 200

Artix-7 180 140

Virtex-7

-3

280 220

Kintex-7 280 220

Artix-7 200 160

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 9PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

表 2-2 : Virtex-7 FPGA のリソース使用量 (推定値)

[Com

mun

icat

ion

Mod

e]

[Ena

ble

Inte

rnal

Loo

pbac

k]

[Num

ber o

f Rec

eive

Buf

fers

]

[Num

ber o

f Tra

nsm

it Bu

ffers

]

[Ena

ble

MII

Man

agem

ent m

odul

e]

[Ena

ble

Glob

al B

uffe

rs fo

r PHY

Clo

cks]

スライス数

フリ

ップ

フロ

ップ数

LUT 数

0 0 0 0 0 0 239 489 513

1 0 1 1 0 0 244 456 494

1 0 1 1 0 0 271 466 532

1 0 0 0 0 0 259 441 473

1 0 1 1 1 0 289 540 572

1 0 1 1 1 0 306 550 662

1 0 0 0 1 1 278 515 519

1 0 0 0 1 1 280 525 561

1 1 0 0 1 0 273 520 525

表 2-3 : Kintex-7 FPGA のリソース使用量 (推定値)

[Com

mun

icat

ion

Mod

e]

[Ena

ble

Inte

rnal

Loo

pbac

k]

[Num

ber o

f Rec

eive

Buf

fers

]

[Num

ber o

f Tra

nsm

it Bu

ffers

]

[Ena

ble

MII

Man

agem

ent m

odul

e]

[Ena

ble

Glob

al B

uffe

rs fo

r PHY

Clo

cks]

スライス数

フリ

ップ

フロ

ップ数

LUT 数

0 0 0 0 0 0 256 489 500

1 0 1 1 0 0 231 456 494

1 0 1 1 0 0 270 466 534

1 0 0 0 0 0 253 441 472

1 0 1 1 1 0 297 540 572

1 0 1 1 1 0 301 550 608

1 0 0 0 1 0 268 515 517

1 0 0 0 1 1 273 525 562

1 1 0 0 1 0 269 520 532

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 10PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

表 2-4 : Artix-7 FPGA のリソース使用量 (推定値)

[Com

mun

icat

ion

Mod

e]

[Ena

ble

Inte

rnal

Loo

pbac

k]

[Num

ber o

f Rec

eive

Buf

fers

]

[Num

ber o

f Tra

nsm

it Bu

ffers

]

[Ena

ble

MII

Man

agem

ent m

odul

e]

[Ena

ble

Glob

al B

uffe

rs fo

r PHY

Clo

cks]

スライス数

フリ

ップ

フロ

ップ数

LUT 数

0 0 0 0 0 0 264 489 518

1 0 1 1 0 0 261 456 516

1 0 1 1 0 0 250 467 500

1 0 0 0 0 0 245 441 492

1 0 1 1 1 0 301 540 607

1 0 1 1 1 0 321 550 636

1 0 0 0 1 0 281 515 542

1 0 0 0 1 1 287 525 580

1 1 0 0 1 0 292 520 547

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 11PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

ポートの説明

I/O 信号

表 2-5 に、 AXI Ethernet Lite MAC コアの I/O 信号とその説明を示します。

表 2-5 : I/O 信号の説明

信号名インターフェイス

I/O 初期状態

説明

システム信号

s_axi_aclk システム I - AXI4 ク ロ ッ ク (プロセッサ ク ロ ッ ク ド メ イン)

s_axi_aresetn システム I - AXI4 リセッ ト 、 アクティブ Low

ip2intc_irpt システム O 0 立ち上がりエッジ割り込み

AXI4 書き込みアドレス チャネル信号

s_axi* S_AXI - - AXI4 信号の詳細は、 『Vivado AXI リ ファレンス ガイ ド』 (UG1037) [参照 2] の付録 A を参照してください。

AXI Ethernet Lite MAC コア インターフェス信号

phy_tx_clk PHY I - PHY からのイーサネッ ト送信クロ ッ ク入力

phy_rx_clk PHY I - PHY からのイーサネッ ト受信クロ ッ ク入力

phy_rx_data[3:0] PHY I - イーサネッ ト受信データ。 イーサネッ ト PHY からの入力

phy_tx_data[3:0] PHY O 0 イーサネッ ト送信データ。 イーサネッ ト PHY への出力

phy_dv PHY I - イーサネッ ト受信データ Valid。 イーサネッ ト PHY からの入力

phy_rx_er PHY I - イーサネッ ト受信エラー。 イーサネッ ト PHY からの入力

phy_tx_en PHY O 0 イーサネッ ト送信イネーブル。 イーサネッ ト PHY への出力

phy_crs PHY I - イーサネッ ト PHY からのイーサネッ ト キャ リ ア センス入力

phy_col PHY I - イーサネッ ト PHY からのイーサネッ ト衝突入力

phy_rst_n PHY O - PHY リセッ ト 、 アクティブ Low

phy_mdc (1) PHY O 0 イーサネッ トから PHY への MII マネージメン ト ク ロ ッ ク

phy_mdio_i (1) PHY I - ト ラ イステート バッファーからの PHY MDIO データ入力

phy_mdio_o (1) PHY O 0 ト ラ イステート バッファーへの PHY MDIO データ出力

phy_mdio_t (1) PHY O 0 ト ラ イステート バッファーへの PHY MDIO データ出力イネーブル

注記 :

1. Vivado IDE で [Enable MII Management module] をオフにした場合、 このポートは使用しません。 出力にはデフォルト値が割り当

てられます。

2. phy_mdio 信号は双方向ポートです。 ト ラ イステート バッファーは Vivado IP インテグレーターによって自動的に挿入されま

す。 IP インテグレーターで IP を使用する場合、 phy_mdio_i、 phy_mdio_o、 および phy_mdio_t 信号を手動で接続す

る必要はあ り ません。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 12PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

PHY インターフェス信号

phy_rst_n

多くの PHY デバイスは、 電源投入シーケンス後しばら くの間リセッ ト状態に保持しておく必要があ り ます。phy_rst_n 信号は、 AXI リセッ ト信号 (s_axi_aresetn) に直接接続されるアクティブ Low リセッ トです。 この出力信号を PHY デバイスのアクティブ Low リセッ ト入力に接続できます。

phy_tx_en

送信イネーブル信号 (phy_tx_en) は、 AXI Ethernet Lite MAC コアが送信用のニブルを MII インターフェイスに送出するこ とを PHY に通知するために使用します。 この信号は phy_tx_clk に同期してプリ アンブルの 初のニブルでアサー ト され、 すべてのニブルが送信される までアサー ト されたま まです。 図 2-1 に、 衝突のない送信中のphy_tx_en のタイ ミ ングを示します。

phy_tx_data[3:0]

AXI Ethernet Lite MAC は、 phy_tx_clk に同期して送信データ バス phy_tx_data[3:0] を駆動します。phy_tx_data[0] 信号が 下位ビッ トです。 PHY は、 phy_tx_en がアサート されている間、 すべてのクロ ッ ク サイクルで phy_tx_data の値を送信します。 図 2-2 に、 ビッ ト 、 ニブル、 およびバイ トの送受信順を示します。

X-Ref Target - Figure 2-1

図 2-1 : 送信 (衝突なし )

0ns 50ns 100ns 150ns

phy_tx_clk

phy_tx_en

phy_tx_data[3:0]

phy_crs

phy_col

0 0 Preamble SFD D0 D1 CRC 0

DS787_19

X-Ref Target - Figure 2-2

図 2-2 : バイ ト /ニブルの送受信順

Serial Bit Stream First bit

D4 D5 D6 D7 LSB MSB

LSB

MSB

D0

D1

D2

D3

D0 D1 D2 D3

Second nibble First nibble

DS787_20

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 13PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

phy_dv

PHY がリ カバリ /デコード済みニブルを phy_rx_data[3:0] バスに駆動し、 phy_rx_data[3:0] のデータが phy_rx_clk に同期している場合、 PHY は受信データ Valid (phy_dv) 信号を駆動して通知します。 phy_dv 信号はphy_rx_clk に同期して駆動されます。 phy_dv 信号は、 フレームの 初にリ カバリ されたニブルから 後にリ カバリ されるニブルまでアサート されたままです。

AXI Ethernet Lite MAC コアが受信フレームを正し く受信するには、 SFD を含むフレーム期間全体 (フレーム終了区切り文字を除く ) にわたって phy_dv をアサート しておく必要があ り ます。 図 2-3 に、 フレーム受信中の phy_dv の動作を示します。

phy_rx_data[3:0]

PHY は、 phy_rx_clk に同期して受信データ バス phy_rx_data[3:0] を駆動します。 信号 phy_rx_data[3:0]には、 phy_dv がアサート されている期間の phy_rx_clk の 1 サイ クル分のリ カバリデータが含まれます。phy_rx_data[0] 信号が 下位ビッ トです。 phy_dv がディアサート されている間、 AXI Ethernet Lite MAC コアはphy_rx_data[3:0] の影響を受けないよ うにする必要があ り ます。

phy_dv がディアサート されている間、 PHY が phy_rx_er 信号をアサート して phy_rx_data[3:0] に値 「1110」を駆動するこ とがあ り ます。 これは偽キャ リ アと呼ばれる特殊条件で、 AXI Ethernet Lite MAC コアはこれを無視する必要があ り ます。

phy_rx_er

PHY は phy_rx_clk に同期して受信エラー信号 (phy_rx_er) を駆動します。 現在 PHY から AXI Ethernet Lite MACコアへ転送中のフレームの途中でエラー (符号化エラーなど、 PHY が検出可能なエラー ) が検出される と、 PHY は 1 phy_rx_clk ク ロ ッ ク以上の間 phy_rx_er を駆動して通知します。

phy_dv がディアサート されている間、 AXI Ethernet Lite MAC コアは phy_rx_er 信号の影響を受けないよ うにする必要があ り ます。 図 2-4 に、 フレーム受信中にエラーが発生した場合の phy_rx_er の動作を示します。

X-Ref Target - Figure 2-3

図 2-3 : 受信 (エラーなし )

phy_rx_clk

phy_dv

phy_rx_er

phy_rx_data[3:0] preambl e SFD D0 D1 D2 D3 CRC

DS787_21

X-Ref Target - Figure 2-4

図 2-4 : 受信 (エラーあり )

phy_rx_clk

phy_dv

phy_rx_er

phy_rx_data[3:0] preambl e SFD D0 D1 xx D3 CRC

DS787_22

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 14PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

表 2-6 に、 受信信号のすべての組み合わせを示します。

phy_crs

半二重モードで送信または受信がアイ ドル状態でない場合、 PHY はキャ リ ア センス信号 (phy_crs) をアクティブに駆動して通知します。 送信と受信の両方がアイ ドル状態の場合、 phy_crs 信号がディアサート されます。 衝突条件が解消されるまで、 PHY は phy_crs をアサート します。 phy_crs 信号は phy_tx_clk にも phy_rx_clk にも同期しません。全二重モードでは phy_crs 信号は使用しません。 この信号は AXI Ethernet Lite MAC コアの送信回路と受信回路の両方で使用され、 AXI Ethernet Lite MAC コアに入力される とプロセッサ ク ロ ッ クに二重に同期します。

phy_col

バスで衝突が検出される と、 PHY は衝突検出信号 (phy_col) をアサート して通知します。 衝突条件が解消されるまで、PHY は phy_crs をアサート します。10Mb/s 動作の場合、PHY は signal_quality_error (SQE) テス トでも phy_colをアサート します。

phy_col 信号は phy_tx_clk にも phy_rx_clk にも同期しません。全二重モードでは phy_col 信号は使用しません。 この信号は AXI Ethernet Lite MAC コアの送信回路と受信回路の両方で使用され、 AXI Ethernet Lite MAC コアに入力される とプロセッサ ク ロ ッ クに二重に同期します。図 2-5 に、フレーム送信中に衝突が発生した場合の phy_colの動作を示します。

表 2-6 : phy_dv、 phy_rx_er、 phy_rx_data[3:0] の可能な値

phy_dv phy_rx_er phy_rx_data[3:0] 意味

0 0 0000 ~ 1111 通常のフレーム間

0 1 0000 通常のフレーム間

0 1 0001 ~ 1101 予約

0 1 1110 偽キャ リ ア

0 1 1111 予約

1 0 0000 ~ 1111 通常のデータ受信

1 1 0000 ~ 1111 データ受信 (エラーあ り )

X-Ref Target - Figure 2-5

図 2-5 : 送信 (衝突あり )

phy_tx_clk

phy_tx_en

phy_tx_data[3:0]

phy_crs

phy_col

0 Preamble JAM 0

DS787_23

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 15PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

レジスタ空間表 2-7 に、 AXI Ethernet Lite MAC コアのすべてのレジスタ とそのアドレスを示します。表 2-8 ~ 2-17 に、各レジスタのビッ ト割り当てと リセッ ト値を示します。

表 2-7 : AXI Ethernet Lite レジスタ マップ

アドレス オフセッ ト レジスタ名 説明

07E4h MDIOADDR (1) MDIO アドレス レジスタ

07E8h MDIOWR (1) MDIO 書き込みデータ レジスタ

07ECh MDIORD (1) MDIO 読み出しデータ レジスタ

07F0h MDIOCTRL (1) MDIO 制御レジスタ

07F4h TX Ping Length Ping バッファーの送信長レジスタ

07F8h GIE グローバル割り込みイネーブル レジスタ

07FCh TX Ping Control Ping バッファーの送信制御レジスタ

0FF4h TX Pong Length (2) Pong バッファーの送信長レジスタ

0FFCh TX Pong Control (2) Pong バッファーの送信制御レジスタ

17FCh RX Ping Control Ping バッファーの受信制御レジスタ

1FFCh RX Pong Control (3) Pong バッファーの受信制御レジスタ

注記 :

1. これらのレジスタは、 Vivado IDE で [Enable MII Management module] をオンにした場合のみ存在します。

2. これらのレジスタは、 Vivado IDE で [Enable Transmit Buffers] をオンにした場合のみ存在します。

3. これらのレジスタは、 Vivado IDE で [Enable Receive Buffers] をオンにした場合のみ存在します。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 16PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

送信長レジスタ

送信長レジスタは、 32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-6)。 このレジスタには、デュアル ポートメモ リに格納される送信データの長さ (単位 : バイ ト ) を格納します。 長さの値の上位 8 ビッ ト をデータ ビッ ト 15 ~8 に格納し、 下位 8 ビッ ト をデータ ビッ ト 7 ~ 0 に格納します。 表 2-8 に、 Ping-Pong 型バッファー インターフェイスのこのレジスタのビッ ト定義を示します。

グローバル割り込みイネーブル (GIE) レジスタ

グローバル割り込みイネーブル レジスタは、32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-7)。このレジスタは、 プロセッサへの割り込み出力 (IP2Intc_Irpt 信号) のマスター イネーブル/ディ スエーブルと して機能します。表 2-9 に、 このレジスタのビッ ト定義を示します。

X-Ref Target - Figure 2-6

図 2-6 : 送信長レジスタ

表 2-8 : 送信長レジスタ (0x07F4)、 (0x0FF4)

ビッ ト 名前 アクセス リセッ ト値 説明

31:16 予約 N/A N/A 予約

15:8 MSB 読み出し /書き込み 0 フレーム長の上位 8 ビッ ト

7:0 LSB 読み出し /書き込み 0 フレーム長の下位 8 ビッ ト

31 16 15 0

ReservedFrame Length LSB

Frame Length MSB

8 7

DS787_05

X-Ref Target - Figure 2-7

図 2-7 : グローバル割り込みイネーブル レジスタ

表 2-9 : グローバル割り込みイネーブル レジスタ (0x07F8)

ビッ ト 名前 アクセス リセッ ト値 説明

31 GIE 読み出し /書き込み 0 グローバル割り込みイネーブル ビッ ト

30:0 予約 N/A N/A 予約

31 30 0

Global Interrupt Enable (GIE) Reserved

DS787_06

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 17PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

送信制御レジスタ (Ping)

Ping バッファーの送信制御レジスタは、 32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-8)。 このレジスタは、 グローバル割り込み/内部ループバッ クの有効化、および送信ト ランザクシ ョ ンの開始に使用します。表 2-10 に、このレジスタのビッ ト定義を示します。

X-Ref Target - Figure 2-8

図 2-8 : 送信制御レジスタ (Ping)

表 2-10 : 送信制御レジスタ (0x07FC)

ビッ ト 名前 アクセス リセッ ト値 説明

31:5 予約 N/A N/A 予約

4 Loopback (1) 読み出し /書き込み

0内部ループバッ ク イネーブル ビッ ト

0 – 内部ループバッ クが無効1 – 内部ループバッ クが有効

3 Interrupt Enable 読み出し /書き込み

0送信割り込みイネーブル ビッ ト

0 – 送信割り込みが無効1 – 送信割り込みが有効

2 予約 N/A N/A 予約

1 Program 読み出し /書き込み

0

AXI Ethernet Lite MAC アドレス プログラム ビッ ト このビッ ト と ステータス ビッ トの両方を 1 にセッ トする と、コアの新しいイーサネッ ト MAC アドレスが設定されます (第 3 章の「イーサネッ ト MAC アドレス」 参照)。

0 Status 読み出し /書き込み

0

送信 Ping バッファー ステータス インジケーター 0 – 送信 Ping バッファーに新しいフレームを格納可能1 – フレーム転送が進行中。 このビッ ト をセッ トする と、 送信トランザクシ ョ ンが開始します。 送信が完了する と、 このビッ トはAXI Ethernet Lite MAC コアによってク リ アされます。

1. 内部ループバッ クは全二重モードの場合のみサポート されます。 このビッ トへの書き込みは、 Vivado IDE で [Enable Internal Loopback] をオンにした場合のみ有効です。

05

Reserved Status(S)

Program(P)

134 2

Interrupt Enable (I)

Loopback (L)

31

DS787_07

Reserved

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 18PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

送信制御レジスタ (Pong)

Pong バッファーの送信制御レジスタは 32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-9)。このレジスタは、イーサネッ ト MAC アドレスのプログラ ミ ングおよび Pong バッファーからの送信ト ランザクシ ョ ン開始に使用します。 表 2-11 に、 このレジスタのビッ ト定義を示します。

X-Ref Target - Figure 2-9

図 2-9 : 送信制御レジスタ (Pong)

表 2-11 : 送信制御レジスタ (0x0FFC)

ビッ ト 名前 アクセス リセッ ト値 説明

31:2 予約 N/A N/A 予約

1 Program 読み出し /書き込み

0

AXI Ethernet Lite MAC アドレス プログラム ビッ ト このビッ ト と ステータス ビッ トの両方を 1 にセッ トする と、 コアの新しいイーサネッ ト MAC ア ド レスが設定されます (第 3 章の 「イーサネッ ト MAC アドレス」 参照)。

0 Status 読み出し /書き込み

0

送信 Pong バッファー ステータス インジケーター 0 – 送信 Pong バッファーに新しいフレームを格納可能

1 – フレーム転送が進行中。 このビッ ト をセッ トする と、 送信ト ランザクシ ョ ンが開始します。 送信が完了する と、 このビッ トは Ethernet LiteEthernet MAC コアによってク リ アされます。

0

Reserved Status(S)

Program(P)

1231

DS787_08

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 19PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

受信制御レジスタ (Ping)

Ping バッファーの受信制御レジスタは、 32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-10)。 このレジスタは、Ping バッファーに新しいパケッ トがあるかど うかを示します。表 2-12 に、このレジスタのビッ ト定義を示します。

受信制御レジスタ (Pong)

Pong バッファーの受信制御レジスタは、 32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-11)。 このレジスタは、Pong バッファーに新しいパケッ トがあるかど うかを示します。表 2-13 に、このレジスタのビッ ト定義を示します。

X-Ref Target - Figure 2-10

図 2-10 : 受信制御レジスタ (Ping)

0

Reserved Status(S)

134 2

Interrupt Enable (I)

31

DS787Reserved

Reserved

表 2-12 : 受信制御レジスタ (0x17FC)

ビッ ト 名前 アクセス リセッ ト値 説明

31:4 予約 N/A N/A 予約

3 Interrupt Enable 読み出し /書き込み

0受信割り込みイネーブル ビッ ト

0 – 受信割り込みが無効

1 – 受信割り込みが有効

2:1 予約 N/A N/A 予約

0 Status 読み出し /書き込み

0

受信ステータス インジケーター 0 – 受信 Ping バッファーが空 AXI Ethernet Lite MAC コアは新しい有効パケッ ト を受信可能です。

1 – ソフ ト ウェアによる処理が可能な受信パケッ トが存在する。 ソフ ト ウェアは、受信 Ping バッファーからパケッ ト を読み出すと、このビッ ト をク リ アする必要があ り ます。

X-Ref Target - Figure 2-11

図 2-11 : 受信制御レジスタ (Pong)

0

Reserved Status(S)

131

DS787_10

表 2-13 : 受信制御レジスタ (0x1FFC)

ビッ ト 名前 アクセス リセッ ト値 説明

31:1 予約 N/A N/A 予約

0 Status 読み出し /書き込み

0

受信ステータス インジケーター 0 – 受信 Pong バッファーが空 AXI Ethernet Lite MAC コアは新しい有効パケッ ト を受信可能です。

1 – ソフ ト ウェアによる処理が可能な受信パケッ トが存在する。ソフ ト ウェアは、受信 Pong バッファーからパケッ ト を読み出すと、 このビッ ト をク リ アする必要があ り ます。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 20PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

MDIO アドレス レジスタ (MDIOADDR)

MDIOADDR は 32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-12)。 このレジスタは、 PHY デバイス アドレス、 PHY レジスタ アドレス、および MDIO ト ランザクシ ョ ン タイプの設定に使用します。表 2-14 に、 このレジスタのビッ ト定義を示します。

MDIO 書き込みデータ レジスタ (MDIOWR)

MDIOWR は 32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-13)。 このレジスタには、 PHY レジスタに書き込む 16 ビッ トのデータを格納します。 表 2-15 に、 このレジスタのビッ ト定義を示します。

X-Ref Target - Figure 2-12

図 2-12 : MDIO アドレス レジスタ

910 4 051131

OPReserved PHY Address Register Address

DS787_11

表 2-14 : MDIO アドレス レジスタ (0x07E4)

ビッ ト 名前 アクセス リセッ ト値 説明

31:11 予約 N/A N/A 予約

10 OP 読み出し /書き込み 0アクセス タイプ

0 – 書き込みアクセス1 – 読み出しアクセス

9:5 PHYADDR 読み出し /書き込み 0 PHY デバイス アドレス

4:0 REGADDR 読み出し /書き込み 0 PHY レジスタ アドレス

X-Ref Target - Figure 2-13

図 2-13 : MDIO 書き込みデータ レジスタ

表 2-15 : MDIO 書き込みデータ レジスタ (0x07E8)

ビッ ト 名前 アクセス リセッ ト値 説明

31:16 予約 N/A N/A 予約

15:0 Write Data 読み出し /書き込み 0 PHY レジスタに書き込む MDIO 書き込みデータ

31 1516 0

Reserved MDIO Write Data

DS787_12

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 21PG135 2015 年 11 月 18 日

第 2 章 : 製品仕様

MDIO 読み出しデータ レジスタ (MDIORD)

MDIORD は、 32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-14)。 このレジスタには、 PHY レジスタからの16 ビッ ト読み出しデータを格納します。 表 2-16 に、 このレジスタのビッ ト定義を示します。

MDIO 制御レジスタ (MDIOCTRL)

MDIOCTRL は 32 ビッ トの読み出し /書き込み可能なレジスタです (図 2-15)。 このレジスタには、MDIO インターフェイスのステータスおよび制御情報を格納します。このレジスタの MDIO イネーブル (ビッ ト 3) を使用して MDIO インターフェイスを有効にします。 表 2-17 に、 このレジスタのビッ ト定義を示します。

X-Ref Target - Figure 2-14

図 2-14 : MDIO 読み出しデータ レジスタ

31 1516 0

Reserved MDIO Read Data

DS787_13

表 2-16 : MDIO 読み出しデータ レジスタ (0x07EC)

ビッ ト 名前 アクセス リセッ ト値 説明

31:16 予約 N/A N/A 予約

15:0 Read Data 読み出し 0 PHY レジスタからの MDIO 読み出しデータ

X-Ref Target - Figure 2-15

図 2-15 : MDIO 制御レジスタ

31 01

Reserved Status(S)

234

MDIOEnable(E)

DS787_14

Reserved

表 2-17 : MDIO 制御レジスタ (0x07F0)

ビッ ト 名前 アクセス リセッ ト値 説明

31:4 予約 N/A N/A 予約

3 MDIO Enable 読み出し /書き込み

0MDIO イネーブル ビッ ト

0 – MDIO インターフェイスが無効1 – MDIO インターフェイスが有効

2:1 予約 N/A N/A 予約

0 Status 読み出し /書き込み

0

MDIO ステータス ビッ ト

0 – MDIO 転送が完了しており、コアは新しい MDIO 要求を受信可能1 – MDIO 転送が進行中。 このビッ ト をセッ トする と、 MDIO ト ランザクシ ョ ンが開始します。MDIO ト ランザクシ ョ ンが完了する と、このビッ トは AXI Ethernet Lite MAC コアによってク リ アされます。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 22PG135 2015 年 11 月 18 日

第 3 章

コアを使用するデザインこの章では、 コアを使用した設計をよ り容易にするためのガイ ド ラインおよび追加情報を紹介します。

クロックAXI Ethernet Lite MAC コアのデザインには、 互いに非同期な 3 つのク ロ ッ ク ド メ インがあ り ます。 図 3-1 に、 AXIEthernet Lite MAC コアのクロ ッ ク ド メ イン図を示します。 以降のセクシ ョ ンでは、 これらのク ロ ッ ク ド メ インとそれぞれの要件について説明します。 ク ロ ッ ク ド メ インをまたがる制御信号は、 接続先のクロ ッ ク ド メ インに同期します。

X-Ref Target - Figure 3-1

図 3-1 : AXI Ethernet Lite MAC コアのクロック ド メ イン

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 23PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

送信クロック

送信クロ ッ ク (phy_tx_clk) は外部 PHY によって生成されます。 AXI Ethernet Lite MAC コアはこのクロ ッ クを使用して送信データ (phy_tx_data [3:0]) および制御信号 (phy_tx_en) を PHY へ転送する必要があ り ます。

PHY は 1 ク ロ ッ ク サイ クルで 1 ニブルのデータを転送します。 このため、 10BASE-T 動作では 2.5MHz、 100BASE-T動作では 25MHz (デューティ サイクル 35 ~ 65% で ±100ppm の誤差を含む) とな り ます。PHY は外部オシレーターまたは水晶発振器からこのクロ ッ クを得ます。

受信クロック

受信ク ロ ッ ク (phy_rx_clk) も外部 PHY によって生成されますが、 このク ロ ッ クは受信したイーサネッ ト ト ラフ ィ ッ クから得ます。 送信クロ ッ ク同様、 PHY は 1 ク ロ ッ ク サイクルで 1 ニブルのデータを転送します。 このため、受信データが有効な間 (phy_dv = 1)、 10BASE-T 動作では 2.5MHz、 100BASE-T では 25MHz (デューティ サイクル 35~ 65%) とな り ます。

受信クロ ッ クの High および Low 時間の 小値は、すべての条件において公称周期の 35% 以上です。AXI Ethernet LiteMAC コアは、この受信クロ ッ クを使用して PHY からの受信データ (phy_rx_data[3:0]) と制御信号 (phy_dv および phy_rx_er) をサンプリ ングします。

AXI4 クロック (プロセッサ バス クロック )AXI Ethernet Lite MAC コアの機能の大半は、 プロセッサ バス ク ロ ッ ク ド メ インで動作します。 このク ロ ッ クは、100Mb/s でイーサネッ ト データを送受信する場合は ≥ 100MHz、 10Mb/s でイーサネッ ト データを送受信する場合は ≥ 10MHz とする必要があ り ます。

リセッ トAXI Ethernet Lite MAC コアは、 アクティブ Low の s_axi_aresetn を使用します。 リセッ ト をアサートするタイ ミングは、 も低速な AXI Ethernet Lite ク ロ ッ クに依存します。 一般的な目安と して、 も低速な AXI Ethernet Lite クロ ッ クが 30 ク ロ ッ ク サイ クル経過するのを待ってからコアにアクセスして ください。 この条件を満たさない場合、予測不能な動作となり ます。

phy_rst_n 出力信号はアクティブ Low リセッ トで、 AXI リセッ ト信号 (s_axi_aresetn) に直接接続されます。 この信号は、 PHY デバイスのアクティブ Low リセッ ト入力に接続できます。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 24PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

プログラム シーケンスこのセクシ ョ ンは、 次のサブセクシ ョ ンで構成されます。

• 送信インターフェイス

• 受信インターフェイス

送信インターフェイス

送信データは、デュアル ポート メモ リのアドレス 0x0 から順に格納します。アドレス指定はワード境界で行うため、2 番目の 4 バイ トは 0x4 に格納されます。 この 32 ビッ ト インターフェイスでは、 4 バイ トすべてを同時に書き込む必要があ り ます。32 ビッ トの 1 ワード内には個別のバイ ト イネーブルはあ り ません。送信データには、デスティネーシ ョ ン アドレス (6 バイ ト )、 ソース アドレス (6 バイ ト )、 タイプ/長さフ ィールド (2 バイ ト )、 データ フ ィールド (0 ~ 1,500 バイ ト ) を含める必要があ り ます。プ リアンブル、SFD (Start Frame Delimiter)、および CRC はデュアル ポート メモ リには含めません。デスティネーシ ョ ン アドレス、 ソース アドレス、 タイプ/長さ、データ フ ィールドは連続する メモ リ アドレスに格納する必要があ り ます。

デュアル ポート メモ リのアドレス 0x07F4 には、 デュアル ポート メモ リに格納する送信データの長さ (単位 : バイト ) を格納します。 長さの値の上位 8 ビッ ト をデータ ビッ ト 15 ~ 8、 下位 8 ビッ ト をデータ ビッ ト 7 ~ 0 に格納します。

デュアル ポート メモ リのアドレス 0x07F8 は、 グローバル割り込みイネーブル (GIE) ビッ ト をセッ トするために使用します。 GIE = 0 とする と、割り込みイベン トが発生しても IP2INTC_Irpt はアクティブになり ません。 GIE = 1 とする と、 割り込みイベン ト発生時に ip2intc_irpt がアクティブになり ます。

デュアル ポート メモ リ アドレス 0x07FC の下位 2 ビッ トは制御ビッ ト (P : プログラム、 S : ステータス) です。 第 4ビッ ト (データ バスのビッ ト [3]) は、 送信完了割り込みイベン ト を有効にする送信割り込みイネーブル ビッ ト (I) です。 このイベン トはパルスで、 メモ リに新しいデータを格納可能になる と発生します。 送信完了割り込みは、 GIE とこのビッ トの両方が 1 にセッ ト されている場合のみ発生します。

X-Ref Target - Figure 3-2

図 3-2 : 送信デュアル ポート メモリ

addr offset0x0

type/length

sourceaddress

datanot

useddestination

address GIE

cont

rol

leng

th

6 6 2 variablevariable (0 - 1500)

addr offset 0x07F4addr offset 0x07F8

addr offset 0x07FC

MD

IOaddr offset 0x07E4 - 0x07F0

16 4 44

1

Note :- 1. MDIO registers are included in the design if the parameter Enable MII Management Module is checked. DS787_15

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 25PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

Ping バッファーを使用した送信のソフ トウェア シーケンス

AXI Ethernet Lite MAC コアでは、ソフ ト ウェアで送信データの長さをアドレス 0x07F4 に書き込んだ後でオフセッ ト0x07FC のステータス ビッ ト をセッ トする必要があ り ます。 送信を開始するためのソフ ト ウェア シーケンスは次のとおりです。

• ソフ ト ウェアで、 送信データをデュアル ポート メモ リのアドレス 0x0 から順に格納します。

• ソフ ト ウェアで、 送信データ長をデュアル ポート メモ リのアドレス 0x07F4 に書き込みます。

• ソフ ト ウェアで、 アドレス 0x07FC のステータス ビッ ト (データ バスのビッ ト [0]) に 1 を書き込みます。

• ソフ ト ウェアでステータス ビッ ト を監視し、 このビッ トが AXI Ethernet Lite MAC コアによって 0 にセッ ト されたら次の送信を開始します。

• 送信割り込みとグローバル割り込みの両方が有効な場合、 AXI Ethernet Lite MAC コアがステータス ビッ ト をクリ アする と割り込みが発生します。

• 送信割り込みが有効な場合、 イーサネッ ト MAC アドレス書き込み完了時にも割り込みが発生します。

ステータス ビッ ト を 1 にセッ トする と、 AXI Ethernet Lite MAC コアの ト ランス ミ ッ ターは次を実行します。

• プリアンブルと SDF フ ィールドを生成します。

• 長さを読み出し、 その値で示された長さのデータをデュアル ポート メモ リから読み出し、 必要に応じてパディングを追加します。

• 衝突が発生した場合は検出し、 必要に応じてジャ ミ ング、 バッ クオフ、 再送を実行します。

• CRC を計算してデータの末尾に付加します。

• 送信が完了したらステータス ビッ ト をク リ アします。

• 送信完了割り込みが有効な場合、 ステータス ビッ ト をク リ アする と割り込みが発生します。

Ping-Pong バッファーを使用した送信のソフ トウェア シーケンス

[Number of Transmit Buffers] を 1 に設定した場合、 送信データ用のメモ リ バッファーが 2 つ用意されます。 元の Ping送信バッファーは同じ メモ リ アドレスのままで、グローバル割り込みイネーブルを制御します。も う 1 つの Pong バッファーはアドレス 0x0800 ~ 0x0FFC にマップされます。 送信長とステータス ビッ トの使用法は Ping バッファーとPong バッファーでです。Pong バッファーの I ビッ トおよびグローバル割り込みイネーブル (GIE) ビッ トは使用しません。これらのビッ トは Ping バッファーの設定で両バッファーを制御します。イーサネッ ト MAC アドレスは Pong バッファーから も設定できます。 リセッ ト後、 ト ランス ミ ッ ターは常に Ping バッファーの内容から先に送信します。 次に、Pong バッファーに送信データが格納されていれば Pong バッファーからの送信が実行されます。Pong バッファーに送信データが格納されていない場合、 AXI Ethernet Lite MAC コアは Ping バッファーと Pong バッファーの両方を監視し、 先に送信データが格納された方から送信を実行します。

Ping バッファーと Pong バッファーを使用した送信を開始するためのソフ ト ウェア シーケンスは次のとおりです。

• ソフ ト ウェアで、 送信データをデュアル ポート メモ リのアドレス 0x0 から順に格納します。

• ソフ ト ウェアで、 送信データ長さをデュアル ポート メモ リのアドレス 0x07F4 に書き込みます。

• ソフ ト ウェアで、 アドレス 0x07FC のステータス ビッ ト (データ バスのビッ ト [0]) に 1 を書き込みます。

• Pong バッファー (0x0800 ~ 0x0FFC) には、 ソフ ト ウェアでいつでも書き込みを実行できます。

• ソフ ト ウェアで Ping バッファーのステータス ビッ ト を監視して 0 にセッ ト されるのを待つか、 送信完了割り込みが発生するのを待ってから Ping バッファーに再びデータを書き込みます。

• 送信割り込みとグローバル割り込みの両方が有効な場合、 AXI Ethernet Lite MAC コアがステータス ビッ ト をクリ アする と割り込みが発生します。

• 送信割り込みが有効な場合、 イーサネッ ト MAC アドレス書き込み完了時にも割り込みが発生します。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 26PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

ステータス ビッ ト を 1 にセッ トする と、 AXI Ethernet Lite MAC コアの ト ランス ミ ッ ターは次を実行します。

• プリアンブルと SDF フ ィールドを生成します。

• 長さを読み出し、 その値で示された長さのデータをデュアル ポート メモ リから読み出し、 必要に応じてパディングを追加します。

• 衝突が発生した場合は検出し、 必要に応じてジャ ミ ング、 バッ クオフ、 再送を実行します。

• CRC を計算してデータの末尾に付加します。

• 送信が完了したらステータス ビッ ト をク リ アします。

• 送信完了割り込みが有効な場合、 ステータス ビッ ト をク リ アする と割り込みが発生します。

• Pong バッファーに送信データが格納されていればハードウェアによって送信されます。それ以外は、ハード ウェアは Ping および Pong バッファーを監視してデータが格納されるまで待機します。

イーサネッ ト MAC アドレス

48 ビッ ト イーサネッ ト MAC アドレスのリセッ ト時のデフォルト値は 00-00-5E-00-FA-CE です。この値を変更するには、 送信デュアル ポート メモ リ を使用してアドレス プログラムを実行します。

新しいイーサネッ ト MAC アドレスをプログラムするソフ ト ウェア シーケンスは次のとおりです。

• ソフ ト ウェアで、 新しいイーサネッ ト MAC アドレスを送信デュアル ポート メモ リのアドレス 0x0 を先頭に書き込みます。上位の 4 バイ ト をアドレス 0x0 に格納し、下位 2 バイ ト をアドレス 0x4 に格納します。イーサネット MAC アドレスは Pong バッファーからも、 アドレス 0x0800 を先頭にプログラムできます。

• ソフ ト ウェアで、アドレス 0x07FC のプログラム ビッ ト (データ バスのビッ ト [1]) と ステータス ビッ ト (データバスのビッ ト [0]) の両方に 1 を書き込みます。 Pong バッファーの場合、 アドレスは 0x0FFC です。

• ソフ ト ウェアでステータスおよびプログラム ビッ ト を監視し、0 にセッ ト されたら次のイーサネッ ト動作を実行します。

送信完了割り込みが有効な場合、 ステータスおよびプログラム ビッ トがク リ アされる と割り込みが発生します。

受信インターフェイス

受信フレーム データ全体 (デスティネーシ ョ ン アドレスから CRC の 後まで) が、 受信デュアル ポート メモ リのアドレス 0x1000 から順に格納されます。プリ アンブルおよび SFD フ ィールドはデュアル ポート メモ リには格納されません。デュアル ポート メモ リのアドレス 0x17FC (データ バスのビッ ト [0]) は、 ソフ ト ウェアによって処理可能な受信パケッ トが存在するかど うかを示すステータス と して使用します。

デュアル ポート メモ リのアドレス 0x17FC (データ バスのビッ ト [3]) は受信割り込みイネーブルです。このイベン トはパルスで、 メモ リ内に受信データが格納される と発生します。 受信完了割り込みは、 このビッ ト と GIE の両方が 1にセッ ト されている場合のみ発生します。

ステータス ビッ トが 0 の場合、 AXI Ethernet Lite MAC コアはイーサネッ ト バスを監視し、自身のイーサネッ ト MACアドレスまたはブロードキャス ト アドレスをデスティネーシ ョ ン アドレスに持つパケッ ト を待ちます。 パケッ トのデステ ィ ネーシ ョ ン ア ド レスがこれらいずれかに該当する場合は受信して、 デュアル ポー ト メモ リ のア ド レス0x1000 から順に格納します。パケッ トの受信が完了する と、AXI Ethernet Lite MAC コアは CRC を検査します。CRC値が正しい場合、 ステータス ビッ トがセッ ト されます。 CRC ビッ トが不正な場合、 ステータス ビッ トはセッ ト されず AXI Ethernet Lite MAC コアはイーサネッ ト バスの監視を継続します。

また、 AXI Ethernet Lite MAC コアが CRC 値の正しいラン ト フレーム (長さ 60 バイ ト未満のフレーム) を受信した場合、 ステータス ビッ トはセッ ト されず、割り込みも発生しません。 ステータス ビッ トがセッ ト されている場合、 AXIEthernet Lite MAC コアは受信動作を実行しません。 デュアル ポート メモ リからすべての受信データが読み出されると、 ステータス ビッ トはソフ ト ウェアによって 0 にク リ アされます。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 27PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

Ping バッファーを使用した受信のソフ トウェア シーケンス

受信パケッ ト を処理するためのソフ ト ウェア シーケンスは次のとおりです。

1. ソフ ト ウェアで受信ステータス ビッ ト を監視して AXI Ethernet Lite MAC コアによって 1 にセッ ト されるのを待つか、 受信完了割り込みが有効な場合は割り込みの発生を待ちます。

2. ステータス ビッ トが 1 にセッ ト されるか受信完了割り込みが発生する と、 ソフ ト ウェアでデュアル ポート メモリから受信データ全体を読み出します。

3. ソフ ト ウェアで受信ステータス ビッ トに 0 を書き込みます。 これで、 AXI Ethernet Lite MAC コアは受信処理を再開します。

Ping-Pong バッファーを使用した受信のソフ トウェア シーケンス

[Number of Receive Buffers] を 1 に設定した場合、 受信データ用のメモ リ バッファーが 2 つ用意されます。 元の Ping受信バッファーは同じ メモ リ アドレスのままです。 も う 1 つの Pong 受信バッファーはアドレス 0x1800 ~ 0x1FFCにマップされます。 データの格納方法は Ping バッファーと Pong バッファーで同じです。

[Number of Receive Buffers] = 1 の場合、 受信パケッ ト を処理するためのソフ ト ウェア シーケンスは次のとおりです。

1. ソフ ト ウェアで Ping バッファーの受信ステータス ビッ ト を監視して AXI Ethernet Lite MAC コアによって 1 にセッ ト されるのを待つか、 受信完了割り込みが有効な場合は割り込みの発生を待ちます。

2. Ping 受信ステータス ビッ トが 1 にセッ ト されるか受信完了割り込みが発生する と、 ソフ ト ウェアで Ping デュアル ポート メモ リから受信データ全体を読み出します。

3. AXI Ethernet Lite MAC コアが次のパケッ ト を受信し、 Pong 受信バッファーに格納します。

4. ソフ ト ウェアで Ping 受信ステータス ビッ トに 0 を書き込みます。 これで、 AXI Ethernet Lite MAC コアは次のパケッ ト を Ping 受信バッファーに格納できます。

5. ソフ ト ウェアで Pong 受信ステータス ビッ ト を監視して AXI Ethernet Lite MAC コアによって 1 にセッ ト されるのを待つか、 受信完了割り込みが有効な場合は割り込みの発生を待ちます。

6. Pong 受信ステータス ビッ トが 1 にセッ ト されるか受信完了割り込みが発生する と、 ソフ ト ウェアで Ping デュアル ポート メモ リから受信データ全体を読み出します。

7. ハードウェアは、 リセッ ト後 初に受信したパケッ ト を常に Ping バッファーに書き込み、 次に受信したパケット を Pong バッファーに書き込み、 その次に受信したパケッ ト を Ping バッファーに書き込むという順番で交互に書き込みます。

重要 : Ping および Pong バッファーのステータス ビッ ト をク リ アしないと、 パケッ トが失われます。たとえば、 1 番目と 2 番目のパケッ ト を正し く受信する と、 Ping バッファーと Pong バッファーのステータス ビッ トが AXI Ethernet Lite MAC コアによって 1 にセッ ト されます。 こ こでソフ ト ウェアが Pong バッファーのステータスビッ トのみをク リ アした場合、 3 番目に受信したパケッ トは Ping バッファーのステータス ビッ トがク リ アされていないため受信できず失われます。 4 番目に受信したパケッ トは正し く受信されます。

X-Ref Target - Figure 3-3

図 3-3 : 受信デュアル ポート メモリ

addr offset 0x0

addr offset0x17FC

type/ length

source address

data not

used destination

address

cont

rol

6 6 2 variablevariable (0 - 1500) 4

CRC

4

DS787_16

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 28PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

MDIO (Management Data Input/Output) マスター インターフェイスMDIO マスター インターフェイス ブロ ッ クは、Vivado® 統合設計環境 (IDE) のパラ メーターで [Enable MII ManagementModule] をオンにする とデザインに追加されます。 このロジッ クを追加する と、 AXI Ethernet Lite MAC コアから PHYコンフ ィギュレーシ ョ ン レジスタへのアクセスが可能になり ます。MDIO マスター インターフェイス モジュールは、IEEE 802.3 Media Independent Interface (MII) 規格で定義された機能を実装するこ とを目的に設計されています。

MDIO モジュールは、 PHY へのマネージメン ト データ ク ロ ッ ク (phy_mdc) を生成します。 このクロ ッ クの 小周期は 400ns です。phy_mdc 信号は phy_mdio データ信号の情報を転送する際のタイ ミ ング基準と して PHY へ供給されます。

phy_mdio 信号は、 PHY と MDIO モジュール間の双方向の信号です。 この信号を使用して PHY と MDIO モジュール間で制御およびステータス情報をやり と り します。 制御情報は MDIO モジュールによって駆動され、 PHY によってサンプリ ングされます (どちら も phy_mdc に同期)。 ステータス情報は PHY によって駆動され、 MDIO モジュールによってサンプリ ングされます (どちら も phy_mdc に同期)。 phy_mdio 信号は、 MDIO モジュールと PHY のいずれかで駆動可能な ト ライステート回路によって駆動されます。

MDIO インターフェイスは、標準の方法を使用して PHY マネージメン ト レジスタへアクセスします。 MDIO モジュールは 大 32 個の PHY デバイ スをサポー ト しています。 各 PHY デバイ スにア クセスするには、 MDIO ア ド レス(MDIOADDR) レジスタに PHY デバイス アドレス と PHY レジスタ アドレスを順に書き込む必要があり ます (図 2-12)。このモジュールは 大 32 個の PHY マネージメン ト レジスタへのアクセスをサポート しています。 PHY への書き込みト ランザクシ ョ ン データは MDIO 書き込みデータ (MDIOWR) レジスタに書き込み、 PHY レジスタからのステータスデータは MDIO 読み出しデータ (MDIORD) レジスタから読み出します。 MDIO 制御 (MDIOCTRL) レジスタは、 MDIOラインでマネージメン ト ト ランザクシ ョ ンを開始するために使用します。

AXI Ethernet Lite MAC コアでは、MDIO 制御レジスタ (アドレス 0x07F0) のステータス ビッ ト をソフ ト ウェアでセットする前に PHY デバイス アドレス と PHY レジスタ アドレスを MDIO アドレス レジスタ (アドレス 0x07E4) に格納しておく必要があ り ます。

PHY レジスタの書き込みト ランザクシ ョ ンを開始するためのソフ ト ウェア シーケンスは次のとおりです。

1. ソフ ト ウェアで MDIOCTRL レジスタを読み出し、 MDIO マスターが直前の要求の実行を完了したかど うかをチェッ ク します。 ステータス ビッ トが 0 なら、 MDIO マスターは新しい要求を受け取るこ とができます。

2. ソフ ト ウェアで MDIOADDR レジスタ (アドレス 0x07E4) に PHY デバイス アドレス と PHY レジスタ アドレスを書き込み、 同じレジスタのビッ ト [10] に 0 を書き込みます。

3. ソフ ト ウェアで、 MDIOWR レジスタ (アドレス 0x07E8) に PHY レジスタへの書き込みデータを格納します。

4. ソフ ト ウェアで、 MDIOCTRL レジスタ (アドレス 0x07F0) の MDIO イネーブル ビッ トに 1 を書き込みます。

5. ソフ ト ウェアで、 アドレス 0x07F0 のステータス ビッ ト (データ バスのビッ ト [0]) に 1 を書き込んで MDIO トランザクシ ョ ンを開始します。

6. MDIO 書き込みト ランザクシ ョ ンが完了したら、 ステータス ビッ トが AXI Ethernet Lite MAC コアによってク リアされます。

7. ソフ ト ウェアでステータス ビッ ト を監視し、 AXI Ethernet Lite MAC コアによって 0 にセッ ト されたら MDIO ラインで新しい ト ランザクシ ョ ンを開始します。

PHY レジスタの読み出し ト ランザクシ ョ ンを開始するためのソフ ト ウェア シーケンスは次のとおりです。

1. ソフ ト ウェアで MDIOCTRL レジスタを読み出し、 MDIO マスターが直前の要求の実行を完了したかど うかをチェッ ク します。 ステータス ビッ トが 0 なら、 MDIO マスターは新しい要求を受け取るこ とができます。

2. ソフ ト ウェアで MDIOADDR レジスタ (アドレス 1x07E4) に PHY デバイス アドレス と PHY レジスタ アドレスを書き込み、 同じレジスタのビッ ト [10] に 0 を書き込みます。

3. ソフ ト ウェアで、 MDIOCTRL レジスタ (アドレス 0x07F0) の MDIO イネーブル ビッ トに 1 を書き込みます。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 29PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

4. ソフ ト ウェアで、 アドレス 0x07F0 のステータス ビッ ト (データ バスのビッ ト [0]) に 1 を書き込んで MDIO トランザクシ ョ ンを開始します。

5. MDIO 読み出し ト ランザクシ ョ ンが完了したら、 ステータス ビッ トが AXI Ethernet Lite MAC コアによってク リアされます。

ソフ ト ウェアでステータス ビッ ト を監視し、 AXI Ethernet Lite MAC コアによって 0 にセッ ト されたら MDIO ラインで新しい ト ランザクシ ョ ンを開始します。

イーサネッ ト プロ ト コルイーサネッ ト データはフレームにカプセル化されます (図 3-4)。 特に指定のない限り、 フレームのフ ィールド とビットは左から右へ ( 下位ビッ トから 上位ビッ トへ) 順に送信されます。

プリアンブル

プリアンブル フ ィールドは 「10101010」 のパターンの 7 バイ ト を含み、同期化に使用されます。プリ アンブルまたはSFD (Start Frame Delimiter) フ ィールドの送信中に衝突が検出された場合、 これらフ ィールドだけは 後まで送信されます。

送信時、 このフ ィールドは常に AXI Ethernet Lite MAC コアによって自動的に挿入されるため、 AXI Ethernet Lite MACコアへのパケッ ト データには含めないでください。 受信時には、 このフ ィールドはパケッ ト データから除去されます。 AXI Ethernet Lite MAC コアはイーサネッ トの 8 バイ ト プリ アンブル フレーム タイプをサポート していません。

SFD (Start Frame Delimiter)SFD フ ィールドは 「10101011」 のパターンで、 フレームの開始を意味します。 プ リ アンブルまたは SFD (Start FrameDelimiter) フ ィールドの送信中に衝突が検出された場合、 これらフ ィールドだけは 後まで送信されます。

PHY からの受信データ Valid 信号 (phy_dv) は、 SFD フ ィールドの前のプリアンブル中にアクティブに遷移できます。送信時、 このフ ィールドは常に AXI Ethernet Lite MAC コアによって自動的に挿入されるため、 AXI Ethernet Lite MACコアへのパケッ ト データには含めないでください。受信時には、このフ ィールドはパケッ ト データから除去されます。

デスティネーシ ョ ン アドレス

デスティネーシ ョ ン アドレス フ ィールドの長さは 6 バイ ト です。 デスティネーシ ョ ン アドレスの 下位ビッ トで、そのアドレスが個別/ユニキャス ト (0) アドレスかグループ/マルチキャス ト (1) アドレスかを判定します。 マルチキャス ト アドレスは、 論理的に関連のあるステーシ ョ ンをグループ化するために使用します。

ブロードキャス ト アドレス (デスティネーシ ョ ン アドレス フ ィールドがすべて 1) は、LAN 上のすべてのステーシ ョンを宛先とするマルチキャス ト アドレスです。 AXI Ethernet Lite MAC コアは、 ユニキャス トおよびブロードキャスト パケッ トの送受信をサポート しています。 AXI Ethernet Lite MAC コアはマルチキャス ト パケッ トはサポート していません。 送信パケッ ト データには、 必ずこのフ ィールドを含めて ください。 受信パケッ ト データには常にこのフ ィールドが含まれます。

注記 : AXI Ethernet Lite MAC コアは、 IEEE 802 規格で定義された 16 ビッ ト デスティネーシ ョ ン アドレスをサポートしていません。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 30PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

ソース アドレス

ソース アドレス フ ィールドの長さは 6 バイ トです。 送信パケッ ト データには、 必ずこのフ ィールドを含めてください。 受信パケッ ト データには常にこのフ ィールドが含まれます。

注記 : AXI Ethernet Lite MAC コアは、IEEE 802 規格で定義された 16 ビッ ト ソース アドレスをサポート していません。

タイプ/長さ

タイプ/長さフ ィールドの長さは 2 バイ トです。 長さフ ィールド と して使用する場合、 このフ ィールドの値は後続のデータ フ ィールドの長さ (単位 : バイ ト ) を表します。 この値には、 データ フ ィールドの後に挿入されるパディングフ ィールドの長さは含まれません。 このフ ィールドを IEEE 802.3 規格で定義された長さフ ィールド と して解釈するか、 イーサネッ ト プロ ト コルで定義されたタイプ フ ィールド と して解釈するかは、 フ ィールドの値によって決ま ります。

データ フ ィールドの長さは 大で 1,500 バイ トです。したがって、このフ ィールドの値が 1,500 (0x05DC) を超えている場合は、長さではなく フレーム タイプを示しています。IEEE 802.3 規格では、タイプ フ ィールドには 1536 (0x0600)以上の値を使用するこ とが定義されています。 AXI Ethernet Lite MAC コアは、 タイプ/長さフ ィールドに対して何も処理を実行しません。 このフ ィールドは、上位バイ トの 下位ビッ トから順に送信されます。送信パケッ ト データには、 必ずこのフ ィールドを含めてください。 受信パケッ ト データには常にこのフ ィールドが含まれます。

データ

データ フ ィールドの長さは 0 ~ 1,500 バイ トの可変長です。送信パケッ ト データには、必ずこのフ ィールドを含めてください。 受信パケッ ト データには常にこのフ ィールドが含まれます。

パッ ド

パッ ド フ ィールドの長さは 0 ~ 46 バイ トの可変長です。 このフ ィールドは、 フレーム長 (プリ アンブルおよび SFDフ ィールドの長さを除く ) を CSMA/CD の動作に必要な 64 バイ ト以上とするために使用します。このフ ィールドの値はフレーム チェッ ク シーケンスの計算に使用しますが、長さフ ィールドの値には含めません。このフ ィールド とデータ フ ィールドの長さの合計を 46 バイ ト以上とする必要があ り ます。データ フ ィールドの長さが 0 バイ トの場合、パッド フ ィールドは 46 バイ トです。 データ フ ィールドの長さが 46 バイ ト以上の場合、 パッ ド フ ィールドの長さは 0 バイ ト です。 送信時、 小長の条件を満たしていないと このフ ィールドが AXI Ethernet Lite MAC コアによって自動的に挿入されます。 受信パケッ トにパッ ド フ ィールドが存在する場合、 受信パケッ ト データには常にこのフ ィールドが含まれます。

FCSFCS (フレーム チェッ ク シーケンス) フ ィールドの長さは 4 バイ トです。 FCS フ ィールドの値は、 [参照 3] の 3.2.8 項で定義された 32 ビッ ト CRC (下記参照) を使用してソース アドレス、 デスティネーシ ョ ン アドレス、 長さ /タイプ、データ、 パッ ド フ ィールドから求めます。

G(x) = x32 + x26 + x23 + x22 + x16 + x12 + x11 + x10 + x8 + x7 + x5 + x4 + x2 + x1 + x0

CRC ビッ ト を FCS フ ィールドに格納する際は、x31 の項が 初のバイ トの 上位ビッ ト とな り、x0 の項が 後のバイトの 下位ビッ ト と します (すなわち、 CRC のビッ トは x31、 x30、 ...、 x1、 x0 の順に送信される )。

AXI Ethernet Lite MAC コアは CRC アルゴ リ ズムを実装し、 送信および受信クロ ッ クの各周期で外部 PHY インターフェイス との間で交換されるデータ サイズと一致するよ うに CRC 値をニブル単位で計算します。 送信時このフ ィールドは常に AXI Ethernet Lite MAC コアによって自動的に挿入され、 受信パケッ ト データには常にこのフ ィールドが含まれます。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 31PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

フレーム間ギャップと待機

注記 : フレーム間ギャップはフレーム間隔と も呼び、 どちらも同じ意味です。

フレームはシ リアル インターフェイスで送信され、フレームとフレームの間には IEEE Std.802.3 で定義された 96 ビット時 (10MHz の場合 9.6μs、 100MHz の場合 0.96μs) のフレーム間ギャップが必要です。 待機の手順は、 次に示すよ うに半二重システムと全二重システムの場合で異なり ます。

半二重

1. AXI Ethernet Lite MAC コアは送信するフレームがないと きも外部 PHY からのキャ リ ア センス信号 (phy_crs) でバス ト ラフ ィ ッ クを監視します。バスがビジー状態 (phy_crs = 1) の場合、AXI Ethernet Lite MAC コアは送信を保留し、 バス上のフレーム転送を優先させます。

2. バス上のフレームの 後のビッ トが転送されたら (キャ リ ア センス信号が TRUE から FALSE に変化したら )、AXIEthernet Lite MAC コアはフレーム間ギャップの時間調整を開始します。

3. キャ リ ア センス信号が TRUE になる と、 AXI Ethernet Lite MAC コアはフレーム間ギャップ タイマーを リセッ トします。

全二重

全二重モードではバスを共有しておらず自身の送信のみを監視すればよいため、 AXI Ethernet Lite MAC コアは外部PHY からのキャ リ ア センス信号を使用しません。 AXI Ethernet Lite MAC コアは 後のビッ ト を送信したら、 フレーム間ギャップの時間調整を開始します。

CSMA/CD 方式

定義上、全二重イーサネッ ト バスは 2 つのイーサネッ ト デバイスをポイン ト ツー ポイン トで専用接続しており、送信と受信を同時に実行しても衝突は発生しません。

半二重イーサネッ ト バスの場合は、 2 つ以上のステーシ ョ ンが同じバスを共有して媒体にアクセスする方法をCSMA/CD と して定義しています。 ステーシ ョ ンが送信を行う場合、 バスがアイ ドル状態 (ほかのステーシ ョ ンが送信していない、 すなわち phy_crs = 0) になるまで待機し、 フレーム間ギャ ップの時間が経過した後、 メ ッセージの送信を開始します。

送信を開始後、別のステーシ ョ ンのメ ッセージと衝突して衝突が発生する と (phy_col - 1)、送信中のすべてのステーシ ョ ンが事前に定義された期間 (10/100Mb/s の場合 32 ビッ ト ) にわたってジャム信号の送信を継続し、 衝突の発生がシステム全体に確実に伝わるよ うにします。 この後、各ステーシ ョ ンはランダムな期間だけ待機 (バッ クオフ) してから再び送信を試みます。 ステーシ ョ ンが送信を開始しても、 そのメ ッセージがバス上のすべてのステーシ ョ ンに到達するまでの時間 (衝突ウ ィンド ウ) 内に衝突が発生するこ とがあ り ます。衝突ウ ィンド ウの期間が経過する と、送信中のステーシ ョ ンがバスを占有したこ とになり ます。

それ以降は、ほかのすべてのステーシ ョ ンが正常に動作していれば送信を検出し、それを優先させるはずであるため、衝突 (遅れ衝突) は発生しません。バス占有までにかかる時間は、バスの往復伝搬時間によって決ま り ます (10/100Mb/sの場合 64 バイ ト時間)。

X-Ref Target - Figure 3-4

図 3-4 : イーサネッ ト データ フレーム

Preamble Start of FrameDelimiter (SFD)

Destination Address

Source Address

64 - 1518 bytes

Type/Length Data Frame Check

Sequence Pad

7 6 4 2 0 - 1500 0 - 46 6 1

DS787_02

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 32PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

送信フロー

図 3-5 に、 パケッ ト送信の概略フロー チャート を示します。

X-Ref Target - Figure 3-5

図 3-5 : 送信フロー

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 33PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

受信フロー

図 3-6 に、 パケッ ト受信の概略フロー チャート を示します。

X-Ref Target - Figure 3-6

図 3-6 : 受信フロー

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 34PG135 2015 年 11 月 18 日

第 3 章 : コアを使用するデザイン

内部ループバック モード

Vivado IDE のパラ メーターで [Enable Internal Loopback] をオンにして、 送信制御レジスタ (Ping) のビッ ト 4 をセッ トする と、 AXI Ethernet Lite MAC コアを内部ループバッ ク モードに設定できます。 ループバッ ク モードでは、 ロジッ クは PHY クロ ッ クの切り替えに BUFG を使用します。 このモードでは、 AXI Ethernet Lite MAC コアは TX ラインのデータを RX ラインに戻します。 ループバッ ク モードは全二重モードの場合のみテス トできます。 このモードでは、 コアは PHY からのデータを受信せず、phy_tx_clk と phy_tx_en を内部で phy_rx_clk と phy_dv と して使用します(図 3-7)。

.X-Ref Target - Figure 3-7

図 3-7 : 内部ループバック モード

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 35PG135 2015 年 11 月 18 日

第 4 章

デザイン フローの手順この章では、 コアのカスタマイズと生成、 制約、 およびシ ミ ュレーシ ョ ン/合成/インプ リ メ ンテーシ ョ ンの手順について説明します。一般的な Vivado® デザイン フローおよび Vivado IP インテグレーターの詳細は、次の Vivado DesignSuite ユーザー ガイ ドを参照してください。

• 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1]

• 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994) [参照 4]

• 『Vivado Design Suite ユーザー ガイ ド : 入門』 (UG910) [参照 5]

• 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 6]

コアのカスタマイズおよび生成こ こでは、 ザイ リ ンクス ツールを使用し、 Vivado Design Suite でコアをカスタマイズおよび生成する方法について説明します。

IP インテグレーターを使用したコアのカスタマイズおよび生成については、『Vivado Design Suite ユーザー ガイ ド : IPインテグレーターを使用した IP サブシステムの設計』 (UG994) [参照 4] を参照してください。IP インテグレーターは、デザインの検証または生成時に一部のコンフ ィギュレーシ ョ ン値を自動的に計算する場合があ り ます。値が変わるかど うかを確認するには、 この章のパラ メーターの説明を参照して ください。 パラ メーター値を確認するには、 Tcl コンソールから validate_bd_design コマンドを実行して ください。

AXI Ethernet Lite MAC コアを利用するには、 次の手順を実行します。

1. [File] → [Open Project] をク リ ッ ク してプロジェク ト を開くか、[File] → [New Project] をク リ ッ ク して新規プロジェク ト を作成します。

2. Vivado IP カタログを開き、 [Embedded Processing/High Speed Peripheral] をク リ ッ ク します。

3. [AXI Ethernet Lite] をダブルク リ ッ クする と、 AXI Ethernet Lite MAC コアの Vivado IDE が表示されます。

詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1] および 『Vivado Design Suite ユーザー ガイ ド : 入門』 (UG910) [参照 5] を参照してください。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 36PG135 2015 年 11 月 18 日

第 4 章 : デザイン フローの手順

注記 : この章の図には Vivado IDE のスク リーンシ ョ ッ トが使用されていますが、現在のバージ ョ ンとはレイアウ トが異なる場合があ り ます。

フ ィールドの説明

[ID Width] を除くすべてのパラ メーターが IP インテグレーターで使用できます。[ID Width] は自動で計算されるため、ユーザーは変更できません。

[AXI Interface Parameters]

• [AXI Protocol]

° [AXI4] – AXI4 インターフェイスを有効にします。

° [AXI4LITE] – AXI4-Lite インターフェイスを有効にします。

• [AXI Clock Frequency (in MHz)] – AXI Ethernet Lite MAC コアの周波数。サポート される 大周波数は、表 2-1 を参照してください。

[Ethernet Lite MAC Parameters]

• [Communication Mode]

° [Full Duplex] – 全二重モードを有効にします。

° [Half Duplex] – 半二重モードを有効にします。

X-Ref Target - Figure 4-1

図 4-1 : Vivado IDE

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 37PG135 2015 年 11 月 18 日

第 4 章 : デザイン フローの手順

• [Number of Transmit Buffers]

° 0 – TX バッファーを 1 つだけ有効にします。

° 1 – TX バッファーを 2 つ有効にします。

• [Number of Receive Buffers]

° 0 – RX バッファーを 1 つだけ有効にします。

° 1 – RX バッファーを 2 つ有効にします。

• [Enable Internal Loopback] – オンにする と、 AXI Ethernet Lite MAC コアが内部ループバッ ク モードに設定されます。

• [Enable Global Buffers for PHY Clocks]

注記 : 内部ループバッ クは全二重モードの場合のみサポート されます。

° 0 – PHY ク ロ ッ クに通常の内部バッファーを使用

° 1 – PHY ク ロ ッ クにグローバル バッファーを使用

• [ID Width] – AXI インターフェイスの ID 幅。 有効な値は、 0 ~ 16 です。

注記 : [ID Width] は自動で計算されるため、 ユーザーは変更できません。

• [Enable MII Management module] – オンにする と、 PHY レジスタにアクセスするための MDIO モジュールが追加されます。

ユーザー パラメーター

表 4-1 に、 Vivado IDE の GUI フ ィールド とユーザー パラ メーターの対応関係を示します。 ユーザー パラ メーターはTcl コンソールで表示できます。

表 4-1 : GUI パラメーターとユーザー パラメーターの対応

GUI パラメーター /値(1) ユーザー パラメーター /値(1) デフォルト値(1)

[AXI Protocol] C_S_AXI_PROTOCOL AXI4LITE

[AXI Clock Frequency](2) AXI_ACLK_FREQ_MHZ 100

[Communication Mode](3) C_DUPLEX 1

[Number of Transmit Buffers] C_TX_PING_PONG 1

[Number of Receive Buffers] C_RX_PING_PONG 1

[Enable Internal Loopback](4) C_INCLUDE_INTERNAL_LOOPBACK 0

[Enable Global Buffers for PHY Clocks] C_INCLUDE_GLOBAL_BUFFERS 1

[Enable MII Management module] C_INCLUDE_MDIO 1

[ID Width](5) C_S_AXI_ID_WIDTH 0

注記 :

1. パラ メーター値については、 GUI パラ メーター値とユーザー パラ メーター値の異なるものを示しています。 これらの値は、 パラ メーター

名の下に字下げして表記しています。

2. ク ロ ッ ク周波数は TX/RX ク ロ ッ クの 4 倍以上とする必要があ り ます。

3. 値が 「0」 の場合は半二重、 「1」 の場合は全二重モードです。

4. [Communication Mode] が 「0」 (半二重) の場合は該当せず、 値は 「0」 のままです。

5. AXI プロ ト コルが AXI4 (Full) の場合のみ該当します。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 38PG135 2015 年 11 月 18 日

第 4 章 : デザイン フローの手順

出力の生成

詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1] を参照してください。

コアへの制約Vivado Design Suite でコアを生成する と、 適切なデザイン制約も生成されます。

必須の制約

このセクシ ョ ンは、 この IP コアには適用されません。

デバイス、 パッケージ、 スピード グレードの選択

このセクシ ョ ンは、 この IP コアには適用されません。

クロック周波数

このセクシ ョ ンは、 この IP コアには適用されません。

クロック管理

このセクシ ョ ンは、 この IP コアには適用されません。

クロック配置

このセクシ ョ ンは、 この IP コアには適用されません。

バンク設定

このセクシ ョ ンは、 この IP コアには適用されません。

ト ランシーバーの配置

このセクシ ョ ンは、 この IP コアには適用されません。

I/O 規格と配置

このセクシ ョ ンは、 この IP コアには適用されません。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 39PG135 2015 年 11 月 18 日

第 4 章 : デザイン フローの手順

シ ミ ュレーシ ョ ンこのセクシ ョ ンでは、Vivado Design Suite での IP シ ミ ュレーシ ョ ンについて説明します。Vivado シ ミ ュレーシ ョ ン コンポーネン トについて、 またサポート されているサードパーティ ツールについては、 『Vivado Design Suite ユーザーガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 6] を参照してください。

合成およびインプリ メンテーシ ョ ンこのセクシ ョ ンでは、 Vivado Design Suite での合成およびインプ リ メ ンテーシ ョ ンについて説明します。 合成およびインプリ メンテーシ ョ ンの詳細は、 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896) [参照 1] を参照してください。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 40PG135 2015 年 11 月 18 日

第 5 章

サンプル デザインこの章では、 ザイ リ ンクス Vivado® Design Suite で提供されているサンプル デザインについて説明します。

Vivado IDE の [IP Sources] ウ ィンド ウで [Open IP Example Design] をク リ ッ クするか、 Tcl コンソールで open_example_project コマンド (get_ips <component_name>) を入力する とサンプル デザイン プロジェク トが開きます。 この新規プロジェク トでは <component_name>_exdes> が合成用の 上位モジュールで、<component_name>_exdes_tb> がシ ミ ュレーシ ョ ン用の 上位モジュールです。サンプル デザインのインプ リ メンテーシ ョ ンまたはシ ミ ュレーシ ョ ンは、 このサンプル デザインから実行できます。

ディレク ト リ とファイルの内容

最上位ディレク ト リ

<project_name>/<project_name>.srcs/sources_1/ip/

VHDL サンプル デザイン、 テス トベンチ、 および係数 (COE) ファ イル。 これらのファイルは ATG を駆動して必要なAXI ト ランザクシ ョ ンを生成します。

こ こからは、 AXI Ethernet Lite MAC コアのディ レク ト リ と関連ファイルについて説明します。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 41PG135 2015 年 11 月 18 日

第 5 章 : サンプル デザイン

<project_name>/<project_name>.srcs/sources_1/ip/

<project directory> には Vivado デザイン ツールのすべてのプロジェク ト ファ イルが含まれます。

<project_name>/<project_name>.srcs/sources_1/ip/<component name>

<component name> ディレク ト リには、 コアをインプリ メン トする HDL ファ イルが含まれます。

example design

example design ディレク ト リには、 コアに付属するサンプル デザイン ファ イルが含まれます。

表 5-1 : <project_name>/<project_name>.srcs/sources_1/ip/

名前 説明

Synth/<component name>.v|vhd Vivado デザイン ツールで生成される合成ラ ッパー

Sim/<component name>.v|vhd Vivado デザイン ツールで生成されるシ ミ ュレーシ ョ ンラ ッパー

<component name>.xci Vivado ツールのプロジェク ト固有オプシ ョ ン ファ イル。Vivado デザイン ツールへの入力と して使用可能

<component name>.vho|veo VHDL または Verilog インス タンシエーシ ョ ン テンプレート

<component name>_ooc.xdc IP の独立 (OOC) 制約

COE ファ イル

これらのファイルは、サンプル デザインで使用するためのものです。 Vivado デザイン ツールで生成した IP を右ク リ ッ ク して [Open Example Design] をク リ ッ クする と、サンプル デザインのプロジェク トが作成されます。

表 5-2 : example design ディレク ト リ

名前 説明

<component name>_exdes.vhd サンプル デザインの合成用 上位ファイル

<component name>_exdes_tb.vhd サンプル デザインのシ ミ ュレーシ ョ ン用 上位ファイル

Exdes.xdc サンプル デザインの制約

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 42PG135 2015 年 11 月 18 日

第 5 章 : サンプル デザイン

サンプル デザインこ こからは、 AXI Ethernet Lite MAC コアの 上位サンプル デザインについて説明します。

この完全なサンプル デザインはイーサネッ ト パケッ トの送信および受信デモが可能で、 AXI Ethernet Lite MAC コアの簡単な評価用システムと して利用できます。

クロック ジェネレーター

AXI Ethernet Lite MAC コアのサンプル デザインは、 Clocking Wizard を使用してデザイン内のほかのすべてのブロ ックにクロ ッ ク と リセッ ト を供給します。

Clocking Wizard は 2 種類のクロ ッ クを供給するよ うに設定しています。

• 1 つは Vivado IDE で設定した周波数の出力で、 サンプル デザインのすべてのブロ ッ クへプライマ リ ク ロ ッ ク として供給されます。

• も う 1 つは周波数 25MHz の出力で、 AXI Ethernet Lite MAC IP コアの phy_tx_clk および phy_rx_clk に入力されます。 Clocking Wizard からのロ ッ ク した信号は、 リセッ ト と して適切に使用されます。

AXI ト ラフ ィ ッ ク ジェネレーター (ATG) このサンプル デザインは、Vivado IDE で選択した AXI プロ ト コルに基づく AXI ト ラフ ィ ッ ク ジェネレーターを 1 つまたは 2 つ使用します。

• このサンプル デザインでは、 ATG を使用してパケッ トの生データを AXI Ethernet Lite MAC IP コアに書き込み、コアの制御/ステータス レジスタの読み出し /書き込みを実行します。 ATG は、 コアから読み出したステータスに基づいてテス トにパスしたか否かを判定します。

• 1 つの ATG はシステム テス ト モードで使用し、すべてのコンフ ィギュレーシ ョ ンで ト ランザクシ ョ ン シーケンスを制御します。

• も う 1 つの ATG は AXI4 モードで使用し、 AXI Ethernet Lite MAC コアで選択した AXI プロ ト コルが AXI4 の場合のみインスタンシエート されます。

ATG には 4 つの COE ファ イルを入力し、 Done および Status 出力ピンでテス ト結果を判定します。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 43PG135 2015 年 11 月 18 日

第 5 章 : サンプル デザイン

サンプル デザインの動作

AXI4-Lite プロ ト コル、 内部ループバックなし

AXI4-Lite プロ ト コルを選択し、 内部ループバッ クなしの場合の動作は次のとおりです。

• 2 つの AXI チャネルを有効にしたシステム テス ト モードの ATG を使用して、 デスティネーシ ョ ン アドレス、ソース アドレス、 およびテス ト データをコア内の 2KB メモ リに書き込みます。

• パケッ トに含まれるバイ ト数とパケッ ト データが送信であるこ とを示すよ う AXI Ethernet Lite MAC コアのレジスタをプログラムします。

• AXI Ethernet Lite MAC IP コアがイーサネッ ト パケッ ト を生成し、 MII インターフェイス経由で送信します。

• サンプル デザインで使用するも う 1 つの AXI Ethernet Lite MAC IP コア インスタンスがイーサネッ ト パケッ トを受信します。

• デフォルトで IP 内で実行される CRC チェッ クによ りパケッ ト を正し く受信できたこ とを確認したら、 ステータス レジスタを更新してそのこ とを通知します。

• ATG のも う 1 つのチャネルはパートナー AXI Ethernet Lite MAC IP コアに接続され、 このパートナー IP がステータス レジスタを読み出し、 ATG の Status および Done ピンからテス トの合否を判定します。

X-Ref Target - Figure 5-1

図 5-1 : AXI4-Lite サンプル デザイン - 内部ループバックなし

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 44PG135 2015 年 11 月 18 日

第 5 章 : サンプル デザイン

AXI4 プロ ト コル、 内部ループバックなし

AXI4 プロ ト コルを選択し、 内部ループバッ クなしの場合の動作は次のとおりです。

• 使用する ATG は 2 つです。AXI4 モードの ATG を AXI Ethernet Lite MAC IP コアに接続し、システム テス ト モードの ATG を使用して ATG Full モードを設定します。

• システム テス ト モードの ATG がも う 1 つの ATG を設定し、 AXI Ethernet Lite MAC IP コアの TX バッファーにデータを転送するバース ト ト ランザクシ ョ ンを生成します。 AXI バース ト ト ランザクシ ョ ンで転送される内容は、 システム テス ト モードを使用して ATG Full にもロード されます。

• 次に、 ATG は AXI Ethernet Lite MAC コアのレジスタを更新し、 イーサネッ ト パケッ トの送信を開始します。

• サンプル デザインで使用するも う 1 つの AXI Ethernet Lite MAC コア インスタンスがイーサネッ ト パケッ ト を受信し、 CRC チェッ クの結果に基づいてステータス レジスタを更新します。

• パートナー IP に接続されたも う 1 つの ATG FULL インスタンスがステータスを読み出し、 これをシステム テスト モードの ATG に転送してテス トの合否を判定します。

X-Ref Target - Figure 5-2

図 5-2 : AXI4 サンプル デザイン - 内部ループバックなし

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 45PG135 2015 年 11 月 18 日

第 5 章 : サンプル デザイン

AXI4-Lite または AXI4 プロ ト コル、 ループバックあり

内部ループバッ クあ りの場合の動作は次のとおりです。

• AXI4-Lite または AXI4 モードで内部ループバッ ク オプシ ョ ンを有効にした場合、 1 つの AXI Ethernet Lite MACコア インスタンスが送信と受信の両方を実行するため、 サンプル デザインはパートナー IP を生成しません。

• ATG は生データで IP メモ リ をコンフ ィギュレーシ ョ ンし、 TX レジスタを更新してパケッ ト送信を開始します。送信されたパケッ トは内部でループバッ ク してレシーバー回路に戻り ます。 MII インターフェイスはテス トベンチまで接続し、 その階層で開放されます。

• レシーバーはパケッ ト を受け取り、 CRC チェッ ク結果に基づいてステータス レジスタを更新します。

• ATG はレシーバーのステータス レジスタを読み出してテス トの合否を判定します。X-Ref Target - Figure 5-3

図 5-3 : AXI4-Lite サンプル デザイン - 内部ループバックあり

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 46PG135 2015 年 11 月 18 日

第 5 章 : サンプル デザイン

X-Ref Target - Figure 5-4

図 5-4 : AXI4 サンプル デザイン - 内部ループバックあり

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 47PG135 2015 年 11 月 18 日

第 6 章

テス トベンチAXI Ethernet Lite MAC コアのデモ用テス トベンチは、 次のファイルで提供されています。

<project_name>/<project_name>.srcs/sources_1/ip/<component_name>/<component_name>example_design/<component_name>_exdes.vhd

このテス トベンチは、 サンプル デザインと コアを動作させるこ とを目的と したシンプルな VHDL プログラムです。

このデモ用テス トベンチは、 次のタスクを実行します。

• サンプル デザインの 上位をインスタンシエートする

• ループバッ クを使用しない場合、DUT の MII インターフェイス と AXI Ethernet Lite MAC パートナー IP コアを接続する

• Clocking Wizard 用のクロ ッ ク と リセッ ト を生成する

• ATG からの Done および Status 出力ピンに基づいてシ ミ ュレーシ ョ ン ステータスを判定する

X-Ref Target - Figure 6-1

図 6-1 : テストベンチ

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 48PG135 2015 年 11 月 18 日

第 6 章 : テストベンチ

サンプル デザインのシミ ュレーシ ョ ンAXI Ethernet Lite MAC コアに付属するサンプル デザインを使用する と、 AXI Ethernet Lite MAC コアを簡単にシ ミ ュレーシ ョ ンして動作を観察できます。

シミ ュレーシ ョ ンの設定

ザイ リ ンクス シ ミ ュレーシ ョ ン ラ イブラ リ をシ ミ ュレータにマップする必要があ り ます。 ライブラ リ を環境に合わせて設定していない場合は、 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900) [参照 6] を参照してザイ リ ンクス シ ミ ュレーシ ョ ン モデルをコンパイルし、シ ミ ュレータ環境をセッ ト アップしてください。シミ ュレータを変更するには、画面左側の Flow Navigator で [Simulation Settings] をク リ ッ ク します。 [Simulation] ページで [Target Simulator] の設定を変更します。

シミ ュレーシ ョ ン結果

シ ミ ュレーシ ョ ン スク リプ トは、 AXI Ethernet Lite MAC コアのサンプル デザインおよび関連するシ ミ ュレーシ ョ ンファ イルをコンパイルします。 次にシ ミ ュレーシ ョ ンを実行し、 テス トにパスするど うかを確認します。

テス トにパスする と、 次のメ ッセージが表示されます。

Test Completed Successfully

テス トに失敗した場合、 またはテス トが完了しなかった場合は次のメ ッセージが表示されます。

Test Hanged

このメ ッセージは、 サンプル デザインのシ ミ ュレーシ ョ ンに失敗する と表示されます。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 49PG135 2015 年 11 月 18 日

付録 A

移行およびアップグレードこの付録には、 ISE® から Vivado® Design Suite へデザインを移行する際の情報、 および 新版 IP コアへのアップグレードに関する情報が記載されています。 Vivado Design Suite でアップグレードする場合のポー ト変更およびユーザー ロジッ クへの影響といった重要な情報もこ こに記載されています。

Vivado Design Suite への移行このセクシ ョ ンは、 この IP コアには適用されません。

Vivado Design Suite でのアップグレードこのセクシ ョ ンは、 この IP コアには適用されません。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 50PG135 2015 年 11 月 18 日

付録 B

デバッグこの付録では、 ザイ リ ンクス サポート ウェブサイ ト よ り入手可能な リ ソースおよびデバッグ ツールについて説明します。

ザイリンクス ウェブサイ トAXI Ethernet Lite MAC コアを使用した設計およびデバッグでヘルプが必要な場合は、 ザイ リ ンクス サポート ウェブページから製品の資料、 リ リース ノート、 アンサーなどを参照するか、 テクニカル サポートでケースを開いてください。

資料

この製品ガイ ドは AXI Ethernet Lite MAC コアに関する主要資料です。 このガイ ド並びに全製品の設計プロセスをサポートする資料はすべて、 ザイ リ ンクス サポート ウェブ ページ (http://japan.xilinx.com/support) またはザイ リ ンクスの Documentation Navigator から入手できます。

Documentation Navigator は、 ダウンロード ページからダウンロードできます。 このツールの詳細および機能は、 インス トール後にオンライン ヘルプを参照してください。

ソリューシ ョ ン センター

AXI Ethernet Lite MAC コア関連のサポート情報は、ザイ リ ンクス イーサネッ ト IP ソ リ ューシ ョ ン センターを参照してください。

アンサー

アンサーには、 よ く発生する問題についてその解決方法、およびザイ リ ンクス製品に関する既知の問題などの情報が記載されています。アンサーは、ユーザーが該当製品の 新情報にアクセスできるよ う作成および管理されています。

このコアに関するアンサーの検索には、 ザイ リ ンクス サポート ウェブ ページにある検索ボッ クスを使用します。 より的確な検索結果を得るには、 次のよ うなキーワードを使用してください。

• 製品名

• ツールで表示される メ ッセージ

• 問題の概要

検索結果は、 フ ィルター機能を使用してさ らに絞り込むこ とができます。

AXI Ethernet Lite MAC コアに関するマスター アンサー

AR : 54389

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 51PG135 2015 年 11 月 18 日

付録 B : デバッグ

テクニカル サポート

ザイ リ ンクスは、製品資料の説明に従って使用されている LogiCORE™ IP 製品に対するテクニカル サポート をザイ リンクス サポート ウェブ ページで提供しています。 次のいずれかに該当する場合、 ザイ リ ンクスはタイ ミ ング、機能、サポート を保証できません。

• 資料で定義されていないデバイスにソ リ ューシ ョ ンをインプリ メン ト した場合。

• 資料で許容されている範囲を超えてカスタマイズした場合。

• 「DO NOT MODIFY」 と されているデザイン セクシ ョ ンに変更を加えた場合。

ザイ リ ンクス テクニカル サポートへのお問い合わせに関しては、ザイ リ ンクス サポート ウェブ ページを参照してください。

Vivado Design Suite のデバッグ機能

Vivado® Design Suite のデバッグ機能は、 Logic Analyzer および Virtual I/O コアをユーザーのデザインに直接挿入します。 デバッグ機能を使用する と、 ト リ ガー条件を設定して、 ハード ウェアでアプリ ケーシ ョ ンおよび統合ブロ ッ クのポート信号をハード ウェアに取り込むこ とができます。 取り込まれた信号は、 その後解析できます。 Vivado IDE のこの機能は、 ザイ リ ンクス デバイスで実行されるデザインの論理デバッグおよびバリデーシ ョ ンに使用されます。

Vivado ロジッ ク解析は次の IP ロジッ ク デバッグ コアと共に使用されます。

• ILA 2.0 (およびそれ以降のバージ ョ ン)

• VIO 2.0 (およびそれ以降のバージ ョ ン)

詳細は、 『Vivado Design Suite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908) [参照 7] を参照してください。

ハードウェア デバッグハードウェアの問題は、 リ ンク立ち上げ時の問題から、 何時間ものテス トの後に発生する問題までさまざまです。 ここでは、 一般的な問題のデバッグ手順を説明します。 Vivado ラボ ツールは、 ハード ウェア デバッグに有益な リ ソースです。 次の各セクシ ョ ンに示す信号を Vivado ラボ ツールでプローブするこ とで、 個々の問題をデバッグできます。

コアに対するタイ ミ ング制約がサンプル デザインからすべて適切に取り込まれているこ と、さ らにインプリ メンテーシ ョ ン時にこれらの制約がすべて満たされているこ とを確認します。

• 配置配線後タイ ミ ング シ ミ ュレーシ ョ ンで正し く動作するか。タイ ミ ング シ ミ ュレーシ ョ ンでは発生しない問題がハードウェアで発生する場合、PCB の問題である可能性が考えられます。すべてのクロ ッ ク ソースがアクティブでク リーンであるこ とを確認して ください。

• デザインで MMCM を使用している場合、 locked ポート をモニターして、 すべての MMCM がロ ッ ク しているこ とを確認します。

• 出力が 0 になった場合は、 ライセンスを確認してください。

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 52PG135 2015 年 11 月 18 日

付録 C

その他のリソースおよび法的通知

ザイリンクス リソースアンサー、 資料、 ダウンロード、 フォーラムなどのサポート リ ソースは、 ザイ リ ンクス サポート サイ ト を参照してください。

参考資料次の資料は、 この製品ガイ ドの補足資料と して役立ちます。

1. 『Vivado Design Suite ユーザー ガイ ド : IP を使用した設計』 (UG896 : 英語版、 日本語版)

2. 『Vivado AXI リ ファレンス ガイ ド』 (UG1037)

3. 『IEEE Std.802.3 Media Independent Interface Specification』

4. 『Vivado Design Suite ユーザー ガイ ド : IP インテグレーターを使用した IP サブシステムの設計』 (UG994 : 英語版、日本語版)

5. 『Vivado Design Suite ユーザー ガイ ド : 入門』 (UG910 : 英語版、 日本語版)

6. 『Vivado Design Suite ユーザー ガイ ド : ロジッ ク シ ミ ュレーシ ョ ン』 (UG900 : 英語版、 日本語版)

7. 『Vivado Design Suite ユーザー ガイ ド : プログラムおよびデバッグ』 (UG908 : 英語版、 日本語版)

8. 『AMBA® AXI4-Stream Protocol Specification』 (ARM IHI 0051A)

9. 7 シ リーズ資料

10. 『AXI4 AMBA AXI Protocol Version : 2.0 Specification』 (ARM IHI 0022D)

11. 『LogiCORE™ IP AXI Interconnect 製品ガイ ド』 (PG059)

®

AXI Ethernet Lite MAC v3.0 japan.xilinx.com 53PG135 2015 年 11 月 18 日

付録 C : その他のリソースおよび法的通知

改訂履歴次の表に、 この文書の改訂履歴を示します。

法的通知本通知に基づいて貴殿または貴社 (本通知の被通知者が個人の場合には 「貴殿」 、 法人その他の団体の場合には 「貴社」 。 以下同じ )に開示される情報 (以下 「本情報」 といいます) は、 ザイ リ ンクスの製品を選択および使用するこ とのためにのみ提供されます。 適

用される法律が許容する 大限の範囲で、 (1) 本情報は 「現状有姿」、 およびすべて受領者の責任で (with all faults) とい う状態で提供

され、 ザイ リ ンクスは、 本通知をもって、 明示、 黙示、 法定を問わず (商品性、 非侵害、 特定目的適合性の保証を含みますがこれら

に限られません)、 すべての保証および条件を負わない (否認する ) ものと します。 また、 (2) ザイ リ ンクスは、 本情報 (貴殿または貴

社による本情報の使用を含む) に関係し、 起因し、 関連する、 いかなる種類 ・ 性質の損失または損害についても、 責任を負わない (契約上、 不法行為上 (過失の場合を含む)、 その他のいかなる責任の法理によるかを問わない) ものと し、 当該損失または損害には、

直接、 間接、 特別、 付随的、 結果的な損失または損害 (第三者が起こした行為の結果被った、 データ、 利益、 業務上の信用の損失、

その他あらゆる種類の損失や損害を含みます) が含まれる ものと し、 それは、 たとえ当該損害や損失が合理的に予見可能であった

り、ザイ リ ンクスがそれらの可能性について助言を受けていた場合であったと しても同様です。ザイ リ ンクスは、本情報に含まれる

いかなる誤り も訂正する義務を負わず、本情報または製品仕様のアップデート を貴殿または貴社に知らせる義務も負いません。事前

の書面による同意のない限り、 貴殿または貴社は本情報を再生産、 変更、 頒布、 または公に展示してはなり ません。 一定の製品は、

ザイ リ ンクスの限定的保証の諸条件に従う こ と となるので、 http://japan.xilinx.com/legal.htm#tos で見られるザイ リ ンクスの販売条件

を参照して ください。 IP コアは、 ザイ リ ンクスが貴殿または貴社に付与したラ イセンスに含まれる保証と補助的条件に従う こ とに

な り ます。ザイ リ ンクスの製品は、 フェイルセーフと して、 または、 フェイルセーフの動作を要求するアプリ ケーシ ョ ンに使用する

ために、設計されたり意図されたり していません。そのよ うな重大なアプリ ケーシ ョ ンにザイ リ ンクスの製品を使用する場合のリ ス

ク と責任は、 貴殿または貴社が単独で負う ものです。 http://japan.xilinx.com/legal.htm#tos で見られるザイ リ ンクスの販売条件を参照

してください。

© Copyright 2013-2015 Xilinx, Inc. Xilinx、 Xilinx のロゴ、 Artix、 ISE、 Kintex、 Spartan、 Virtex、 Vivado、 Zynq、 およびこの文書に含ま

れるその他の指定されたブランドは、 米国およびその他各国のザイ リ ンクス社の商標です。 ARM は、 ARM の欧州連合その他の国

における登録商標です。 AMBA® は、 ARM 社の登録商標です。 すべてのその他の商標は、 それぞれの保有者に帰属します。

この資料に関するフ ィードバッ クおよびリ ンクなどの問題につきましては、 [email protected] まで、 または各ページの

右下にある [フ ィードバッ ク送信] ボタンをク リ ッ クする と表示されるフォームからお知らせください。 フ ィードバッ クは日本語で

入力可能です。 いただきましたご意見を参考に早急に対応させていただきます。 なお、 このメール アドレスへのお問い合わせは受

け付けており ません。 あらかじめご了承ください。

日付 バージョ ン 内容

2015 年 11 月 18 日 3.0 UltraScale+ ファ ミ リのサポート を追加。

2014 年 10 月 1 日 3.0 • リ ビジ ョ ン変更に伴う文書更新のみ

• 表 2-5 「I/O 信号の説明」 の注記 3 を更新

• 「Ping-Pong バッファーを使用した受信のソフ ト ウェア シーケンス」 に 「重要」 の注記を追加。

• 「デザイン フローの手順」 の章にユーザー パラ メーターの表を追加

2014 年 4 月 2 日 3.0 • サンプル デザインを追加

• MTBF を変更

2013 年 12 月 18 日 2.0 • UltraScale™ アーキテクチャのサポート を追加

• すべての信号名とポート名を小文字に変更

2013 年 3 月 20 日 2.0 製品ガイ ド と しての初版。 以前の DS787 を置き換え