Logikanalysator
Ein Logikanalysator (engl. Logic Analyzer) ist ein elektronisches Messgerät, das den Zeitverlauf von digitalen Signalen aufzeichnen und bildlich darstellen kann. Es dient dem Test und der Fehlersuche in digitalen elektronischen Schaltungen, beispielsweise bei der Entwicklung von Computern und elektronischen Steuergeräten. Gegenüber Oszilloskopen bieten Logikanalysatoren wesentlich mehr Eingänge (typ. 16 bis mehrere 100), zeigen jedoch auf der Y-Achse in der Regel nur diskrete Logikwerte an. Dazu gehören grundsätzlich die Booleschen Wahrheitswerte der binären Digitaltechnik falsch („0“) und wahr („1“). Je nach Ausstattung können weitere Werte erkannt und dargestellt werden. Beispiele dafür sind undefinierte Spannungspegel oder der hochohmige Zustand einer Leitung („Z“ / „high impedance“).
Als Mischform von Logikanalysatoren und Oszilloskopen gibt es Hybrid-Geräte, die als sogenannte Mixed-Signal-Geräte kontinuierliche Analogsignale gemeinsam mit diskreten Digitalsignalen aufzeichnen und über der gleichen Zeitachse anzeigen können.
Funktion
Ein Logikanalysator kann auf eine komplexe Abfolge digitaler Ereignisse auslösen (triggern) und anschließend eine große Menge digitaler Daten vom überwachten System aufzeichnen. Darüber hinaus bieten etliche Modelle fortgeschrittene Analyse- und Darstellungsmethoden; so kann zum Beispiel der Ablauf eines Computer-Programmes wie mit einem Software-Debugger dargestellt werden, also in disassemblierter Darstellung, wenn die Eingänge an Adress- und Datenbus eines Mikroprozessors angeschlossen werden. Zusätzlich können gegebenenfalls die Aktivitäten auf den genannten Bussen in ihren Details und verschiedenen Phasen analysiert und dargestellt werden. Dies ist alles sehr abhängig von dem jeweiligen Prozessormodell, so dass es für einen Logikanalysator essentiell ist, dass er an einen bestimmten Prozessor angepasst werden kann, zum Beispiel durch Steckmodule oder -adapter.
Als die ersten Logikanalysatoren eingeführt wurden, war es üblich, bis zu mehrere hundert Klemmen an ein digitales System anzuschließen. Später wurden dafür auch spezialisierte vielpolige Steckverbinder eingesetzt, die bereits bei der Entwicklung der Schaltung vorgesehen wurden.
In modernen Computersystemen haben verschiedene andere Werkzeuge die Logikanalysatoren für viele Zwecke verdrängt. Viele Mikroprozessoren besitzen mittlerweile eingebaute Hardware-Unterstützung für Software-Debugger sowie Diagnoseschnittstellen (siehe Boundary Scan), über welche Ein-/Ausgabeanschlüsse und interne Registerstrukturen mit Werten belegt (simulierte Eingabe) und abgefragt werden können.
Die meisten digitalen Schaltungen, auch und besonders die Innenschaltungen von Integrierten Schaltkreisen, werden bei der Entwicklung simuliert, um Fehler zu entdecken, bevor die Schaltung oder der Chip hergestellt wird. In den Simulationsprogrammen stehen dazu üblicherweise Anzeigen zur Verfügung, die ähnliche Funktionen wie eigenständige Logikanalysatoren bieten.
Keine dieser Methoden kann die Hochgeschwindigkeits-Datenaufzeichnung eines Logikanalysators exakt reproduzieren, aber sie decken die meisten tatsächlichen Anforderungen ab, um digitale Schaltkreise auszutesten, und sind üblicherweise billiger zu nutzen.
Hardware-Emulator
Während der Logikanalysator rein passiv das Geschehen in einer Computerhardware verfolgt, beinhaltet ein Hardware-Emulator darüber hinaus auch den Prozessorteil selbst und wird mit diesem in die Computerhardware eingefügt (meist -gesteckt), um sie noch näher zu analysieren, siehe bei Emulator.
Geräteformen
Neben den Messtechnikherstellern von Logikanalysatoren wie unter anderem Keysight Technologies (vormals Hewlett-Packard und Agilent Technologies), LeCroy und Tektronix gibt es heute einige Low-Cost-Anbieter, die für den gewöhnlichen Laborbedarf schon genügen und weniger als hundert Euro kosten. Als Anzeigegerät dient dabei ein handelsüblicher PC. Durch die hohe Übertragungsgeschwindigkeit der USB-Schnittstelle werden abgetastete Daten direkt an den PC gestreamt und in dem dort reichlich vorhandenen Arbeitsspeicher gepuffert. Die Triggerung erfolgt meist durch asynchrone Auswertung des vorhandenen Datensatzes. Weiterhin gibt es auch kostengünstige Analyzer auf FPGA-Basis, die höhere Abtastraten als streamende Analyzer bieten (im Gegenzug ist die Speichertiefe oft empfindlich begrenzt), etwa die SUMP-Familie.