みなさんお持ち(?)の格安ロジックアナライザ。
今回は、その成り立ちや種類を追っていきたいと思います。
そもそも格安ロジックアナライザって? ¶
ロジックアナライザと言われると
- 高価であり (500~700万円とか)
- 独立して存在した大きな箱で
- チャンネル数が多く (34~130chとか)
- 高速な波形に対して (5GHzとか)
- 複雑なトリガパターンを設定し
- (内蔵の限られたメモリに)ほしいところだけガツッと取る
といったものを想像する方が多いかと思います。
しかし、今回取り扱うCypress FX2LPを使った格安ロジックアナライザは真逆の性質を持っています。
- 安価であり (約560円~15,000円)
- PCにUSBでつながり
- チャンネル数が少なく (8ch)
- オシロスコープでも余裕で見られる波形に (24MS/s)
- トリガーパターンも設定できず
- (ホストPCの広大なメモリに)リアルタイムストリーミングし続ける
ものです。対照的ですね。
比べてしまうと何桁も性能が低いですが、簡単なUARTやI2C、SPI、MIDI、PS/2などのデバッグには十分すぎるでしょう。
軽い組み込み開発にはもってこいですね。
注釈1: ストリーミングされるロジックアナライザで、8ch 24MS/sと言わず、より高性能なものが欲しければ、Saleae Logic 16や、ALIENTEK DL16などを買うと良いでしょう。
有名どころの Saleae Logic ¶
ハードウェア ¶
主な部品・構成は以下のとおりです。
種別 | 型番 |
---|---|
コントローラ | Cypress CY7C68013A-56PVXC 56-pin SSOP |
オシレータ | 24MHz XTAL L4 / SMD |
EEPROM | Microchip 24LC00 |
入力保護 | 抵抗 (不明) + ST DVIULC6-4SC6 (ESD保護) |
レギュレータ | ST LD33C SOT-223 |
VID/PID | 0925:3881 (Lakeview Research / Saelae Logic) |
価格 | 約15,000円 |
Cypress の FX2LP に全てを託し、GPIO入力を全速力でホストPCに投げることだけを目的に設計されている様な構造です。
シンプルかつキレイといえます。
FX2LPに対してESD保護がついているのは丁寧ですね。
その他の部品についても真っ当な構成といえますね。
全体を通して「安く済ませよう」という感じはあまりしません。
STのレギュレータとか、MicorchipのEEPROMとか。安くありませんからね。
ソフトウェア+ファームウェア ¶
Cypress FX2LPは起動時にファームウェアをPCから流さなければいけません。(プログラムメモリを持ちません。)
ので、基本的には、PC側ソフトウェアがファームウェアも一緒につれてくる感じになります。
Saleae製品ですので、Saleae製の現行ソフトウェアのLogic 2が使えます。 Logic 2、リッチで、GPUを使ってかなりヌルヌル動きます。いい感じです。
ところで、OSS の PulseView (波形表示ソフトウェア) + Sigrok (ロジックアナライザ抽象化レイヤ) + fx2lafw (FX2LP用汎用ファームウェア) でも、バッチリ問題なく動作します。
それを使って最大限安くしようとすれば?安くできそうですね。
格安ブランド品 WeAct-LogicAnalyzer ¶
(商品ページ: WeAct USB Logic Analyzer DLA Mini 24Mhz 8ch Channels Hardware Debug Tool 5V MCU ARM FPGA Debugger - AliExpress 7 , ストア: WeAct Studio Official Store )
できの良いマイコンボードをたくさん作っているWeAct社。
AliExpressの中では値段はやや高めですが、その分ビルドクオリティが良いと感じます。
そんなWeActの作る「似た」製品ということになります。
商品ページには「PulseView を使え」とかいてありますね。
GitHubに回路図も掲載されていて、中ではかなり素性の知れたもの、ということになりますね。
外観 ¶
仕様 ¶
種別 | 型番 |
---|---|
コントローラ | Corebai CBM9002A QFN-56 |
オシレータ | YXC XTAL 3225 24MHz |
EEPROM | ON SEMICONDUCTOR CAT24C256YU-GT3 8pin TSSOP |
入力保護 | 100Ω + 100KΩ Pull-up + SN74LVC541APWRG4 (ESD保護+バッファ) |
レギュレータ | MICRONE ME6216A33XG? 刻印UBWL SOT-23 |
VID/PID | 1D50:608C (OpenMoko, Inc. / Fx2lafw) |
価格 | 約800円 |
Corebai CBM9002A (QFN-56) とは? ¶
Cypress CY7C68013A-56LTXCT (QFN-56) とピン互換の同等品の様です。
FX2LPと同様に、拡張8051が乗ったUSBコントローラーで、FX2LPと互換があるかのように使えるようです。
一部のfx2用ユーティリティは使えなかった為、完全互換ではないのかも知れません。
SN74LVC541APWRG4? ¶
Texas Instrument製のESD保護付き3-state bufferの様です。
ここだけ取ればSaleaeの製品よりクオリティが高いですね。
そういった意味で、おすすめしたい所です。
1D50:608C (OpenMoko, Inc. / Fx2lafw)? ¶
詳細は謎ですが、オープンソースファームウェア用に確保されているVID/PIDで間違いないでしょう。
当然のことながら、SaleaeのLogic 2からは認識されませんでした。
ノーブランド Logic Analyzer 24MHz 8CH ¶
(商品ページ: Logic Analyzer 24MHz Logic Analyzer Device USB Logic Analyzer Device Set Mini Digital Pocket Size 8 Channel Input Memory 24MHz - AliExpress 1420
, ストア: Toolmaker 100 Store Store
)
もはやブランドすらありません。ノーブランドです。
外観 ¶
届いた本体には商品画像にない刻印「Logic Analyzer」がありますね。
だから何だとは言いませんが…。
仕様 ¶
種別 | 型番 |
---|---|
コントローラ | Corebai CBM9002A QFN-56 |
オシレータ | 24MHz XTAL L4 / SMD |
EEPROM | 謎 AT24C02 (ATMELでは無さそう) SOIP8 |
入力保護 | 100Ω + 100KΩ Pull-up |
レギュレータ | Torex Semiconductor Ltd XC6206P332MR SOT-23 |
VID/PID | 0925:3881 (Lakeview Research / Saelae Logic) |
価格 | 約560円 |
Corebai CBM9002A ¶
これもCBM9002Aの様ですね。
入力保護が… ¶
ESD保護すらありません。ケチりやがって。
0925:3881 (Lakeview Research / Saelae Logic)!? ¶
さすがノーブランド。守るものがない。誰が作っているかわからなければ訴訟されるリスクもないってワケだ。
予想通り、Saleae Logic 2でも認識されてしまいました。
こけっち’s ノーブランド Analyzer 24MHz 8CH ¶
知人もほぼ同機種を持っていた為、中を開けてもらいました。
(商品ページ: USB Logic Analyzer 24MHz 8 Channel 24M/seconds Logic Analyzer Debugger For ARM FPGA Logic Analyzer Logic 24M 8CH - AliExpress 502 , ストア: WAVGAT Choice Store )
外観 ¶
仕様 ¶
種別 | 型番 |
---|---|
コントローラ | Cypress CY7C68013A9-128AXC 128-pin TQFP |
オシレータ | 24MHz 楕円缶型表面実装 (KYX24) |
EEPROM | XBLW 24C02BN |
入力保護 | 100kΩ pull-up + 100Ω |
VID/PID | 0925:3881 (Lakeview Research / Saelae Logic) |
レギュレータ | Torex Semiconductor Ltd XC6206P332MR SOT-23 |
価格 | 約600円 |
なぜ私のノーブランド品とこんなに違う…? ¶
謎です。コントローラーICもCypress社の恐らくホンモノですね。
まさかホンモノがのっているとは……。
一方で、入力保護はケチられたままですし、レギュレータも私のノーブランド品と変わらないです。
オシレータのフットプリントはあまり見ない形ですね…。
謎は深まるばかり…。
まとめ ¶
ここまで様々な格安ロジックアナライザを見てきましたが、一番ハードウェア的に出来が良さそうなのはWeActのLogic Analyzerです。
価格はやや高い(800円ほど)ですが、入力バッファもついていますし、基板のビルドクオリティも随一です。
ところで、唯一 Saelae Logic 2 から認識されない製品でもあります。
なぜWeAct製だけがLogic 2から認識されない? ¶
私のノーブランド品と、WeAct社製品は同じICなのに、なぜ認識されたりされなかったりするのでしょうか。
逆に言えば、ファームウェアはPC側ソフトウェアからダウンロードしているハズなのに、なぜ本体にEEPROMが必要なのでしょうか。
恐らく、そこにVendor IDとProduct IDが記録されているからですね。
そこで、はんだごてを取り出し、WeAct社製のEEPROMを読み出してみました。
+2番地~+1番地に1D50 (Vendor ID)、+4番地~+3番地に608C (Product ID)が記録されていることがわかります。
これを、0925:3881に書き換えてみると…。Sigrokだけでなく、Saleae Logic 2からも認識されるようになりました。
とはいえ、OSSのSigrokも十分に使いやすいですし、Saelae Logic 2をあえて使う理由もないので、あまり意味はないですね…。