ZYNQ搭載 ADCボード「Cosmo-Z」>開発日記>2014年10月

2014年10月

「Cosmo-Z」のLinuxでネットワークが使えるようになった

2014.10.29

特電のスタッフが、ZYNQ搭載ADCボード「Cosmo-Z」のLinuxで、TCP/IPが動作するようにしてくれました。

先日の対策によってCosmo-Zのギガビット・イーサは動き出しましたが、Linuxでネットワークを起動させるにはデバイスツリーの変更が必要だったようです。

起動時のようす

Cosmoz_boot_ether

ちゃんと認識されてlinkupしたようです。

init.shに、

#!/bin/sh
ifconfig eth0 inet 192.168.2.39
route add default gw 192.168.2.1

みたいに書いておけば、外にも出られます。

Cosmozlinuxping

FTPやWGET等もできるようです。

これで、Cosmo-Zの全機能がそろいました。

そろそろ量産体制に入ろうかと思います。

Cosmo-Zでギガビットイーサがはじめて動いた

2014.10.24

ZYNQ搭載のADCボード、「Cosmo-Z」でギガビットイーサが初めて動きました。

1か月ほど前から動かそうと頑張ってきたのですが、なかなか動いてくれなかったこのギガビットイーサPHY。ついに原因がわかりました。

要するに、ZYNQとの相性が悪かったのです。

※「相性」の詳細は、月刊特電Vol6に書きます。ここでは相性とだけ書いておきます。

まず、このPHYチップを取り換えなければなりません。

Cosmozgbe_1

QFNだし、裏目にパッドがあるので、半田ごてでは外せません。

そこで、ヒートガンを使います・・・が、周りの部品まで外れてしまうこと困るので、アルミホイルで隠すように包みます。

Cosmozgbe_2

熱風が入り込まないようにカプトンテープで固定したりします。

そして、いざ、ヒートガン。

Cosmozgbe_3

ぶおおおおーん ぶおおおおーん

・・

ICが外れてパッドが出てきました。

Cosmozgbe_4

フラックスクリーナーで綺麗に拭いたら軽く半田メッキして、そこに新しいチップを載せて、再びヒートガンであぶります。

そして、新しいICに取り換えができました。

Cosmozgbe_5

なお、このように簡単に書きましたが、5回くらい挑戦してようやくできました。楽じゃないです。

 

それから、XILINXのSDKが作り出すPeriphtestのサンプルプログラムを動かそうとしましたが、どうもイーサネットPHYからフレームが送られてこないようです。

その原因は、SDKが作り出すサンプルプログラムは、ZedBoardで使われているギガビットイーサPHY(Marvel 88E1518)用のコードだからです。そのため、今回使った入手性の良いPHYではそのままでは動きませんでした。

なお、Marvel 88E1518は情報が公開されていない上に、入手も困難です。Digikeyとかでは買えません。つまり、ZedBoardと同じPHYは使えなかったのです。

だから、Digikeyでも買えて情報が公開されているPHYを使おうとしたのですが、サンプルのPeriphtestがそのままでは動かなかったのです。

 

地道にデバッグして問題点を見つけて、サンプルのコードを修正したところ、ちゃんと反応が返ってくるようになりました。

次の図は、イーサPHYのループバックテストで、任意の文字列を送ってみた結果です。C言語のソースコードをそのままイーサフレームに乗せて送り出しています。

Cosmozgbe_6

これで、RGMIIのTXDやRXD、TXENやRXDVなどの配線に問題がないことが確かめられました。

では、実際のLANにつないでみましょう。

Cosmozgbe_7

おっ!何か受信しています。IPのパケットのようです。

ということで、PHYからコネクタ間の配線も問題ないようでした。

ZYNQのギガビットイーサを動かすのになぜこんなに苦労したか、どこを修正したらすんなり動いたかというのは、次回の月刊特電Vol6に詳しく書こうと思います。

ご期待ください。

Cosmo-ZのADC波形が取れた

2014.10.17

Cosmo-ZのADCで取った波形をUSB経由でパソコンに転送することができました。

100kHzくらいで0.1Vppの正弦波をDDSで作って、それをキャプチャしています。

 

Cosmozadc1

途中で髭のようなノイズが乗っているのは、DDSにもとからあるノイズです。オシロで見るよりもくっきりと見えています。

次は8chのサンプリング、最終的には32chのサンプリングを目指します。

 

あと、光電子増倍管とプラスチックシンチレータを2セット発注しました。来週から、これらの機材を使って、二次宇宙線を検出し、ディスクリ(閾値以下の信号を無視する)や、コインシデンス(同時発生)の処理などをVivado HLSでできるかどうか試してみたいと思います。

 

 

 


© 2015 TokushuDenshiKairo Inc. All rights reserved