|
この画面(→拡大イメージ)は、USB2.0 Hi-Speedに対応したFlashROMメモリデバイスのログです。
1フレーム内に有効なデータパケットは1つ程度しかなく、USB帯域のほとんどが大量のNAKトランザクションで費やされているのが確認できます。これはFlashROMに対するアクセスタイムが遅いためで、Hi-Speedデバイスの高速性が十分に生かせていない様子がうかがえます。 |
|
この画面(→拡大イメージ)は、USB2.0 Hi-Speedに対応したハードディスクのログです。
こちらは、1フレーム内に5〜6トランザクションが発生しており、そのすべてに有効なデータパケットが詰め込まれているのが確認できます。各データパケットが512バイト長であることを考えると、わずか125usの間に2.5〜3Kバイトのデータが転送されていることが分かります。
より性能の高いUSB2.0ホストコントローラでは、更に多くのトランザクションが1フレーム内に詰め込まれている様子を見ることができます。 |
上の2画面のように、US-H200のログを見ればデータパケットの詰まり具合に違いがあることがすぐに判別できます。
USBデバイスの実効転送能力を少しでも高めたい時、一般にソフトウェア開発者ができることはこの「NAKトランザクションの発生をいかに少なくできるか」というところにあります。USBストリームスコープを使って「NAKトランザクション」の発生する箇所や条件を特定したうえで、ソフトウェアやドライバの非効率的な部分を改善します。
|