« EZ-USB FX3とFPGAをつなげて動作テスト | トップページ | RXマイコンからAndroidを操作するプログラムを公開 »

2012.04.23

EZ-USB FX3のSlaveFIFOが遅い理由

EZ-USB FX3をSlaveFIFOで使うと、思ったほど速度が出ません。
ファームウェアかデバイスドライバのどちらかに原因があるのだと思っていましたが、おそらくファームウェアにありそうです。

次の図は、EZ-USB FX2をUSB2.0 HighSpeedモードで動かして、BulkOutしたときの動作をUSBアナライザで見たものです。
Fx3_packet

サンプルプログラムにデフォルトで付いているSlaveFIFOを使っているのですが、10 PING-NAKのような箇所が随所に見られます。
PNKGとは、送信先のターゲットデバイスのバッファに受け入れる余裕があるかどうかを尋ねるプロトコルで、NAKが10回も返ってきているということは、ターゲットデバイス(FX3)のバッファがなかなか空かないことを示しています。

つまり、FX3の反応がとても鈍くて、SOFの間隔(125μ秒)の間に2パケットしか送れていません。ダブルバッファが有効になっていないのかもしれません。

|

« EZ-USB FX3とFPGAをつなげて動作テスト | トップページ | RXマイコンからAndroidを操作するプログラムを公開 »

コメント

コメントを書く



(ウェブ上には掲載しません)




« EZ-USB FX3とFPGAをつなげて動作テスト | トップページ | RXマイコンからAndroidを操作するプログラムを公開 »