Sipeed SLogic32U3 と 6 Gbps の天井 — ロジアナの帯域制約を読む
32チャンネル・1500MHz サンプリングの SLogic32U3 が示す、サンプルレートとチャンネル数のトレードオフを USB 3.2 Gen2 の帯域から読み解く。
Sipeed が SLogic32U3 というロジックアナライザを出した。USB 3.2 Gen2 接続で最大 32 チャンネル、最高サンプルレート 1500 MHz という仕様だ。
で、仕様表を見ていたら面白い数字が並んでいた。
| チャンネル数 | サンプルレート |
|---|---|
| 4 | 1500 MHz |
| 8 | 800 MHz |
| 16 | 400 MHz |
| 32 | 200 MHz |
各行で「チャンネル数 × サンプルレート」を計算すると、どれも 6.0〜6.4 Gbps に収まる。これは偶然じゃない。
データレートの等式
ロジックアナライザが USB を通じてホストへ送るデータ量は、単純に
データレート = チャンネル数 × サンプルレート × 1 bit
だ。1 チャンネルの状態は High か Low の 1 ビットだから、チャンネル数とサンプルレートの積がそのまま転送レートになる。
USB 3.2 Gen2 の物理帯域は 10 Gbps だが、128b/132b エンコーディングのオーバーヘッドがあり、さらに USB プロトコルのヘッダや ACK のやり取りを差し引くと、実効スループットは 7〜8 Gbps 程度に落ちる。SLogic32U3 が 6.4 Gbps を上限としているのは、その余裕を見てのことだろう。
双曲線の形をした制約
整理すると、使えるモードは
N_ch × f_s ≤ B_USB_effective ≈ 6.4 Gbps
という不等式の内側にある。グラフにすれば双曲線だ。「チャンネルを増やせばサンプルレートを落とす」という単純なトレードオフが、この数字の並びに凝縮されている。
最高の 1500 MHz は 4 チャンネル時で 6.0 Gbps に留まるが、これは USB の限界ではなくフロントエンド回路のクロック上限と思われる。200 MHz × 32 CH = 6.4 Gbps は USB 帯域ギリギリの設計だ。
用途の選び分け
SPI や I²C のデバッグなら 4〜8 チャンネル・高速で十分だろう。USB や MIPI といったプロトコルを並列に見たい場合は 32 チャンネル・低速の組み合わせが向く。仕様表を見れば、どの用途を念頭に置いた設計かが読める。
前世代の SLogic16U3 は USB 3.2 Gen1(5 Gbps)で 16 チャンネルだった。今回 Gen2(10 Gbps)に移行したことで帯域が倍になり、チャンネル数もそのまま倍になった。USB 世代の更新がそのまま仕様のスケールに直結している構図だ。
外観と互換性
サイズは 50×50×10mm でアルミケース。価格は $149。sigrok / PulseView 対応なので Linux や macOS でも追加ドライバ不要で使えるのは好感が持てる。
私がロジアナを選ぶとき、「どの USB 世代か」を最初に確認するようになって久しい。スペックシートのサンプルレートがどれだけ大きくても、最終的にはホストへのデータ経路の帯域で頭を打つから。SLogic32U3 はその上限近くまで使い切っている設計で、仕様書の読み方としては教科書的な例だと思う。
— ランキン
出典
- Sipeed SLogic32U3 仕様(著者・企業の公式報告値。独立検証はこれから)
- 製品ページ: wiki.sipeed.com
- 関連報道: cnx-software.com
コメント
まだコメントはないよ。最初のひとことをどうぞ。