20171006FiCSWレクチャー †
2017/10/06にASAP部屋で三精システム藤代さんからレクチャーを受けました。
レクチャーを受けた内容は以下の通りです。
・通信ケーブルの付け方
・ボード間の転送プログラム
・ボードとDIMMのデータ送受信プログラム
・ラズパイでのコンフィグレーション
動作環境 †
- vivado2016.3(hydrusからvelaにSSH)
- FiCSWボード3号機、4号機
- クロックジェネレータ
- 電源
となっています。
武者さんの席に藤代さんがセッティングしてくれたままとなっています。
プロジェクトファイル †
藤代さんから頂いたサンプルプログラムと回路図はそれぞれ以下のディレクトリにあります。
- 回路図: /home/asap/kiizuka/ficsw/work/SCH/031-161101A-198-011.pdf
- ボード間の転送: /home/asap/kiizuka/ficsw/work/RTL/TRTST_AURORA64B66B/
- ボードとDIMMのデータ受信: /home/asap/kiizuka/ficsw/work/RTL/RTL_DDR4_UDIMM_100M_1500/
通信ケーブルの取り付け方 †
通信ケーブルは金具を外してから差込口に差し込んで再度金具を被せます。
クロックジェネレータ †
レクチャーを受ける際には外部のクロックジェネレータを使いました。
ボードのクロック入力部の近くにJP16というジャンパーがあります。
ここに付属のピン(ボードにテープで貼られている袋に入っている)を指すことでオンボードのクロックを利用することもできます。
ボード間の転送プログラム †
- プロジェクトファイル: /home/asap/kiizuka/ficsw/work/RTL/TRTST_AURORA64B66B/TRTST_AURORA64B66B.xpr
- Vivadoを起動、プロジェクトファイルを開く
- Program Managerをクリック
- Auto Connectを選択
- xcku095_0を右クリック→Program Deviceを選択してコンフィグレーションを行う。
- コンフィグレーションが終了するとボードのDONEランプが点灯します。
- 終わったら、Flow NavigatorのHardWare Managerを右クリックしてcloseする
もう一枚のボードでも同様にコンフィグレーションを行う
Waveformで信号の波形を確認
- r_chnl_up[7:0]: 繋いでいるチャンネル(0−7)で1が立っている
→通信OK
- r_ln_up: レーンアップ 3f→3はどうでもいい(ch2を使っていないから)
各レーンで送受信がOKだと1が立つ→すべてOKだと1111になってfとな
これがeだったらレーン0がアップできていない
ボードとDIMMのデータ送受信プログラム †
- プロジェクトファイル
- 北側のメモリ: /home/asap2/kiizuka/ficsw/work/RTL/RTL_DDR4_UDIMM_100M_1500/UIFN_ex/UIFN_ex.xpr
- 南側のメモリ: /home/asap2/kiizuka/ficsw/work/RTL/RTL_DDR4_UDIMM_100M_1500/UIFS_ex/UIFS_ex.xpr
起動からコンフィグレーションまでは5.ボード間の転送と同様です。
MIG_1タブからDIMMが接続されているか、データの読み書きを行って整合性の確認をします。
CAL PASSとなっていればOKです。
DIMMが刺さっていないときはCAL FAILが表示されます。
ラズパイでのコンフィグレーション †
ラズパイの中にコンフィグレーション用のデータがすでに入っています
ラズパイの電源をON
→40秒ほどでラズパイのOSが起動
→CUIでコマンドを実行してコンフィグレーションができる(5秒ほどでコンフィグレーション終了)
今回はラズパイにモニターとキーボードを接続して試しました。
ラズパイ上のターミナルで以下のコマンドを実行するとコンフィグレーションできました。
$ cd /home/pi/Work
$ sudo ./fic_config1 ecample_top.bin
懸念事項 †
- 3号機のDIMMについて
今回、藤代さんが郵送してくださったのは4号機のDIMMのみで3号機のDIMMについては東大での打ち合わせで工藤先生のところに送ったとのこと。
研究室にはないので東大にあるのでしょうか?
- ボード間の転送のプログラム
AURORAの仕様上、途中で送受信のボード同士でのズレが起こってしまう。
データ確認などで周期がずれてしまうことがある?(聞いたけどよくわかりませんでした)