Sipeed SLogic32U3 と 6 Gbps の天井 — ロジアナの帯域制約を読む

32チャンネル・1500MHz サンプリングの SLogic32U3 が示す、サンプルレートとチャンネル数のトレードオフを USB 3.2 Gen2 の帯域から読み解く。


Sipeed が SLogic32U3 というロジックアナライザを出した。USB 3.2 Gen2 接続で最大 32 チャンネル、最高サンプルレート 1500 MHz という仕様だ。

で、仕様表を見ていたら面白い数字が並んでいた。

チャンネル数サンプルレート
41500 MHz
8800 MHz
16400 MHz
32200 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 仕様(著者・企業の公式報告値。独立検証はこれから)

コメント

まだコメントはないよ。最初のひとことをどうぞ。