XCM-107におけるRocketIO動作プロジェクトの作成方法

2010/04/08-

XCM-107シリーズで使用可能な、RocketIOをとりあえず動作させるためのプロジェクトの作成方法の一例を、簡単にご紹介いたします。
特別なプロトコルは使用せず、単一デバイスでデータの送受信を行います。
ISE、CoreGeneratorのバージョンは10.1.03のものを使用しています。

まずソースを追加します。

「New Source」からIPソースを追加し、GTP RocketIO Wizardを起動します。




ウィザードの設定を行います。
いくつかのオプションポートを選択していますが、必ずしも動作に必要なものではありません。
各オプションポートの詳細はデータシートをご覧になってください
◆使用するタイルの選択

GTP_DUAL_X0Y1(GMT114)にチェックを入れます。


◆転送レートとプロトコルの選択

プロトコルを使用しませんので「Start from scratch」を選択します。
GTP1は「Use GTP0 setting」としてGTP0と同じ設定を反映させます。

レートは3.125Gbpsとしました
必要となるリファレンスクロックがレートとバス幅から計算されます。
XCM-107には150MHzと125MHzが搭載されていますので、この場合は125MHzが選択できます。


◆8B/10B関係のオプションポートの選択

・TXKERR:Kキャラクタに無効なコードが指定されたことを示します
・RXCHARISCOMMA:カンマを受信したらアサートされます
・RXCHARISK:受信データがKキャラクタであった場合アサートされます

これらのポートはKキャラクタを使った送受信の確認の際に使えるので追加しています。
他ポートにつきましてはデータシートをご確認ください。


◆バッファとクロックドメインの設定

RXUSERCLKにリカバリクロックを使用するのでRXRECCLKを選択します


◆ターミネーションの設定

終端電圧に2/3 VTTRXを選択します
プリエンファシスのポートはデフォルトのまま出しておきました
RXでのイコライゼーションは使用しません



◆OOB、PRBS、Loss of Syncの設定

プロトコルを使用しないのでデフォルトのままにします。
Loss of Syncは使用しないのでチェックを外しました。


◆カンマアライメントの設定

カンマアライメント出来ているのを確認するためにRXBYTEISALIGNEDを使用します
カンマ値のデフォルトはプラス、マイナス共にK28.5になっていますので、そのまま使用します。




◆チャネルボンディング、クロックコレクションの設定
◆チャネルボンディングシーケンス
◆クロックコレクションシーケンス
◆PCIExpress、SATA設定

デフォルトのままですので画像は省略します。

◆Summary



FinishとするとXCOファイルが追加されます。



インスタンス用のテンプレートファイルが作成されています。
\\(IP名)\example\instantiation_template.vho

今回は下図のコンポーネントで一階層ラップしました。




インスタンシエート後、シグナルで配線します。

CLKINには125MHzの差動クロックを入力します
IBUFGDSをインスタンシエートし、出力をCLKINに接続します。



(Xilinx RocketIO User sheet, UG196より引用)





今回は、2バイトモードで通信しますのでTXUSRCLK、 TXUSERCLK2は下図の接続としました。
RXUSERCLK、RXUSERCLK2もRXRECCLKをソースとして同様の配線をします。


(Xilinx RocketIO User sheet, UG196より引用)


その他のシグナルの設定は以下のようにしました

・LOOPBACKx[2:0] ← 000 :通常動作
・TXDIFFCTRLx[2:0] = TXBUFDIFFCTRLx[2:0] ←110 :トランスミッタ差動出力幅400mV
・TXPREEMPHASISx[2:0] ← 000

送信データ(TXDATA:16bits)はBRAMからTXUSERCLK2でのタイミングで供給しています。
受信データは、送信データと同じ内容のBRAMを用意し、比較により正常転送を確かめます。





FPGAをコンフィギュレーションして、実際の出力波形(差動)が出力されていることが確認できました。
設定したレートで出力され、8B/10Bエンコードされていることが確認できます。


どうぞ皆さんのご参考になさってください。間違いなどございましたら是非ご指摘くださいませ。
e-mailメールでのご質問はこちらへどうぞ
go to homeXILINXシリーズトップへ