Analizator logiczny

Wprowadz PIN aby uzyskac dostep

Analizator logiczny — asystent serwisowy

v1.0 · PulseView / sigrok
Przewodnik dla technika serwisowego. Uzywa taniego analizatora USB 24 MHz (typ Saleae / sigrok) i darmowego oprogramowania PulseView. Wszystkie recepty dotycza napraw laptopow i kart graficznych.
Cel edukacyjny i serwisowy. Analizator logiczny czyta wylacznie stany cyfrowe (0/1) — nie mierzy napiecia analogowego ani szumu jak oscyloskop. To narzedzie pomocnicze, nie zamiennik multimetru czy oscyloskopu.

Co to potrafi i czego NIE

Zanim zaczniesz — zrozum mozliwosci i ograniczenia taniego analizatora USB 24 MHz

Co POTRAFI (do ~kilku MHz)
  • SPI BIOS — podsluch komunikacji procesor/EC z kostka Flash (CLK, MOSI, MISO, CS#)
  • I2C / SMBus — odczyt SPD pamieci, komunikacja z bateria, czujnikami temperatury
  • UART / EC debug — logi diagnostyczne z Embedded Controllera
  • Sygnaly reset — PLT_RST#, RSMRST# (0/1, czy przechodzi z LOW w HIGH)
  • Power-Good / Enable — sekwencja wlaczania przetwornic
  • Sygnaly sterujace MOSFET — czy sterownik wysterowuje bramke
Czego NIE potrafi
  • DDR / RAM — zbyt szybkie (800 MHz+), potrzebny oscyloskop >1 GHz
  • PCIe — 2.5/5/8 GHz, daleko poza zasiegiem
  • eSPI — do 66 MHz, za szybkie dla 24 MHz analizatora
  • Pomiar napiecia — widzi tylko 0 lub 1, nie zmierzy 3.3V vs 3.1V
  • Szum / ripple — do tego potrzebny oscyloskop
  • Prady — nie mierzy pradu (do tego shunt + skop/miernik)
Regula kciuka: analizator 24 MHz pewnie lapie sygnaly do ~3-4 MHz (Nyquist — potrzebujesz probkowania co najmniej 2x szybszego niz sygnal). SPI BIOS w laptopach taktuje zwykle 16-33 MHz, ale w praktyce 24 MHz analizator wystarczy, bo PulseView toleruje drobne bledy dekodowania — zobaczysz czy komunikacja w ogole jest. Dla dokladnego dekodowania kazdego bajtu idealny bylby analizator 100+ MHz.
Praktyczna wskazowka: W serwisie laptopow analizator logiczny najczesciej uzywa sie do pytania „czy w ogole jest ruch na tej magistrali?” — a nie do precyzyjnego dekodowania kazdego bajtu. Brak ruchu na CLK po wlaczeniu = kostka BIOS nie jest czytana. To juz duzo informacji za male pieniadze.

Pierwsze podlaczenie

Krok po kroku — od rozpakowania do pierwszego przechwycenia

  1. Zainstaluj PulseView

    Pobierz PulseView (darmowy, open-source) ze strony sigrok.org/wiki/Downloads. Instalator dla Windows zawiera sterowniki (Zadig). Na Linuxie: sudo apt install pulseview. Podlacz analizator USB — powinien sie wykryc automatycznie.

  2. Podlacz mase (GND) NAJPIERW

    Zawsze podlacz przewod GND analizatora do masy badanego urzadzenia przed podlaczeniem kanalow sygnalowych. Wspolna masa = wspolny punkt odniesienia dla stanow 0/1. Bez tego analizator moze pokazywac smieci.

  3. Podlacz kanaly do testpointow

    Uzyj cienkich sond z haczykami (grabberami) lub mikro-chwytakow. Podlacz kanaly CH0, CH1... do odpowiednich testpointow na plycie. Schemat plyty lub boardview pomaga znalezc testpointy.

  4. Ustaw prog logiczny i probkowanie

    W PulseView:
    • Probkowanie: ustaw odpowiednio do magistrali (np. 8 MHz dla SPI, 2 MHz dla I2C, 1 MHz dla power sequence).
    • Prog logiczny: wieksznosc tanich analizatorow ma staly prog ~1.2V (TTL). Sygnaly 3.3V i 5V beda czytane poprawnie. Sygnaly 1.8V moga byc na granicy — sprawdz dokumentacje swojego modelu.
    • Liczba probek: ustaw na kilka milionow (np. 2M-10M samples). Wiecej = dluzszy zapis, ale wiecej pamieci.

  5. Ustaw trigger (opcjonalnie)

    Trigger = warunek startu przechwytywania. Przykady:
    • CS# falling edge — zacznij nagrywac gdy CS# opadnie (SPI)
    • SDA falling edge — zacznij od START condition (I2C)
    • Brak triggera — nagrywaj od razu (OK dla power sequence)
    W PulseView: kliknij nazwe kanalu → Trigger → wybierz warunek.

  6. Przechwyc i dodaj dekoder

    Kliknij Run (przycisk z trojkatem), a nastepnie wykonaj akcje na urzadzeniu (wlacz zasilanie, nacisnij power button itp.).
    Po przechwyceniu:
    • Menu Decode → dodaj dekoder protokolu (SPI, I2C, UART)
    • Przypisz kanaly (CLK, MOSI, MISO, CS# itp.) do odpowiednich wejsc dekodera
    • PulseView pokaze zdekodowane dane nad przebiegami

  7. Interpretuj wyniki

    Porownaj to co widzisz z receptami ponizej — kazda pokazuje jak wyglada prawidlowy i nieprawidlowy przebieg. Najwazniejsze pytanie: „czy jest ruch na magistrali, czy cisza?”

Podsłuch SPI BIOS

Recepta serwisowa — krok po kroku

Odczyt SPD pamieci (SMBus/I2C)

Recepta serwisowa — krok po kroku

Sekwencja zasilania / Power-Good

Recepta serwisowa — krok po kroku

Sygnaly reset (PLT_RST#, RSMRST#)

Recepta serwisowa — krok po kroku

Komunikacja EC (UART debug)

Recepta serwisowa — krok po kroku

Sygnal wlaczajacy MOSFET mocy

Recepta serwisowa — krok po kroku

Podglad na zywo

Przechwytuj dane z analizatora i ogladaj przebiegi w przegladarce

Wymaga uruchomienia SiemaszkoLab Bridge na komputerze z podlaczonym analizatorem. Bridge przechwytuje dane przez sigrok-cli i wysyla je tutaj. Pobierz bridge z zakladki Pobierz oprogramowanie.
Polaczenie z bridge
Wpisz token wyswietlony przez bridge i kliknij Polacz

Przebiegi pojawia sie po polaczeniu z bridge

Szybki start:
1. Pobierz i zainstaluj sigrok + Zadig (sterownik USB)
2. Pobierz slab_bridge.py z zakladki Pobierz oprogramowanie
3. Uruchom: python slab_bridge.py --demo (test bez analizatora)
4. Skopiuj token z terminala i wklej powyzej

Slowniczek

Kluczowe pojecia prostym jezykiem

  • Ile razy na sekunde analizator „patrzy” na sygnal. Analizator 24 MHz sprawdza stan 24 miliony razy na sekunde. Im wyzsze probkowanie, tym szybsze sygnaly moze uchwycic. Regula: probkowanie powinno byc co najmniej 2x szybsze niz czestotliwosc mierzonego sygnalu (twierdzenie Nyquista). Dla SPI taktowanego 8 MHz potrzebujesz minimum 16 MHz probkowania.
  • Warunek, ktory mowi analizatorowi „teraz zacznij nagrywac”. Na przyklad: „zacznij gdy CS# spadnie z 1 do 0” (falling edge). Bez triggera analizator nagrywa od razu po nacisnieciu Run. Trigger pomaga uchwycic dokladnie ten moment, ktory Cie interesuje, zamiast nagrywac minuty ciszy.
  • Plugin w PulseView, ktory zamienia surowe przebiegi 0/1 na czytelne dane. Na przyklad dekoder SPI pokaze Ci bajty wysylane i odbierane (np. komenda 03h = Read Data). Dekoder I2C pokaze adresy urzadzen i ACK/NACK. Bez dekodera widzisz tylko przebiegi — z dekoderem widzisz co jest przesylane.
  • Poziom napiecia, powyzej ktorego analizator interpretuje sygnal jako „1” (HIGH), a ponizej jako „0” (LOW). Tanie analizatory maja zwykle staly prog ~1.2V. To znaczy, ze sygnal 3.3V lub 5V bedzie prawidlowo czytany jako „1”. Ale sygnal 1.0V moze byc niestabilnie interpretowany.
  • Zestaw linii (przewodow), ktorymi urzadzenia wymieniaja dane wedlug ustalonego protokolu. SPI uzywa 4 linii (CLK, MOSI, MISO, CS#). I2C uzywa 2 linii (SCL, SDA). UART uzywa 1-2 linii (TX, RX). „Podsluchiwanie magistrali” = podlaczenie analizatora do tych linii i nagrywanie co sie na nich dzieje.
  • W protokole I2C po kazdym przeslanym bajcie odbiorca odpowiada jednym bitem: ACK (SDA = LOW na 9. takcie zegara) = „dostalem, kontynuuj”. NACK (SDA = HIGH na 9. takcie) = „nie odbieram” lub „nie ma mnie pod tym adresem”. W kontekscie SPD: NACK po adresie 0x50 oznacza, ze modul RAM nie odpowiada — BIOS go nie widzi.
  • Falling edge = moment, gdy sygnal przechodzi z HIGH (1) do LOW (0) — „opadajace zbocze”. Rising edge = z LOW do HIGH — „narastajace zbocze”. Triggery i dekodery czesto uzywaja zboczy jako punktow odniesienia (np. dane SPI sa probkowane na rising edge CLK).
  • Sygnal wyjsciowy z przetwornicy napiecia, ktory mowi: „moje napiecie wyjsciowe jest stabilne i w normie”. Zwykle open-drain: HIGH = OK, LOW = nie gotowe / blad. Sekwencer zasilania czeka na PG jednej przetwornicy zanim wlaczy nastepna — stad „sekwencja zasilania”.
  • Maly mikrokontroler na plycie laptopa, ktory zarzadza: klawiatura, touchpadem, wentylatorami, ladowaniem baterii, sekwencja wlaczania/wylaczania, trybami uśpienia. EC dziala nawet gdy glowny procesor jest wylaczony (zasilany z linii standby). Jesli EC nie dziala — laptop nawet nie zareaguje na przycisk power.
  • Pamieci NOR Flash (np. Winbond 25Q64, 25Q128) polaczona z chipsetem (PCH) przez magistrale SPI. Przechowuje firmware BIOS/UEFI, Intel ME, konfiguracje. Komunikacja 4-przewodowa: CLK (zegar), MOSI (dane do kostki), MISO (dane z kostki), CS# (chip select, aktywny niski). Programator SPI (CH341a, RT809H) laczy sie do tych samych pinow.