測試、除錯與量測儀器

邏輯分析儀(logic analyzer)

邏輯分析儀就像一台不再在乎波形確切形狀的示波器,改成同時盯著許多條數位線,對每一條只問一個問題:它現在是 1 還是 0?在數位系統裡,你很少在乎某個邊緣是 3.31 V——你在乎的是八條或十六條線在某個特定時刻以特定樣式變化。邏輯分析儀把那些線一起擷取,排成隨時間變化、整齊的高低列,讓你看到一整條匯流排在「說話」。

每個輸入把線與一個臨界電壓比較:高於它是邏輯 1、低於它是 0,儀器每個通道每次取樣就只記錄那一個位元。有了八、十六或更多通道,它能並排看一整條並列匯流排或好幾條串列線,全部時間對齊。真正的魔法是協定解碼:告訴它這些線是 I2C、SPI 或 UART 連結,它就把原始的高低翻譯回實際交換的位元組與位址,於是一團令人困惑的邊緣,變成像「寫入 0x3C、ack、0x01」這樣可讀的對話。

為何重要:當微控制器與感測器或記憶體溝通卻什麼都不動時,邏輯分析儀讓你看到線上是否真的有正確的位元組、以及握手在哪裡斷掉。兩個誠實的限制讓它守在本分。它對類比細節是盲的——它無法顯示振鈴、臨界電壓或雜訊,只有 1/0 的判定,所以一個邊緣模糊的訊號可能騙過它;那還是要靠示波器。而和任何取樣器一樣,它必須跑得夠快:取樣率要是匯流排速度的好幾倍,否則快速脈衝會從取樣間隙溜走,擷取就說了謊。

一顆 I2C 感測器毫無回應。你把雙通道邏輯分析儀夾在 SDA 與 SCL 上、擷取,打開 I2C 解碼。它顯示主機送出位址 0x48,但沒有應答(ack)位元回來——所以裝置從未回答。一查發現位址腳被接成 0x49 而非 0x48:幾秒就找到。

許多條線、每條只問一個問題——1 還是 0——再解碼回匯流排上的位元組。

邏輯分析儀只看邏輯準位、從不看類比的全貌,所以一個落在有效 0 與有效 1 之間模糊地帶的訊號,可能被讀成任一個——有時你得拿起示波器,看分析儀看不到的東西。

又称
LA邏輯分析儀