Was ist serielles Bus-Decoding?

Serielles Bus-Decoding, Darstellung grafisch

Was ist serielles Bus-Decoding?

Parallele vs. serielle Datenübertragung

Bei der parallelen Übertragung werden digitale Daten über mehrere Leitungen gleichzeitig übertragen. Diese bilden zusammen einen parallelen Bus wie zum Beispiel GPIB oder Centronics. Bei n parallelen Leitungen können in einem Schritt n Bits (zum Beispiel 1 Byte) übertragen werden. Da alle einzelnen Leitungen der parallelen Übertragung abhängig von einander streng mit einem gemeinsamen Takt arbeiten müssen, sind sie relativ empfindlich für Laufzeitunterschiede. Um eine parallele Datenübertragung darzustellen und zu untersuchen, ist ein Logik-Analysator oder ein ▸MSO/Mixed-Signal-Oszilloskop erforderlich. Dieses Instrument muss im optimalen Fall so viele digitale Eingangskanäle bieten, wie die parallele Datenübertragung Leitungen verwendet.

Bei der bit-seriellen Datenübertragung werden die Daten auf einer unabhängigen Leitung (bzw. einem Leitungspaar) übertragen. Beispiele sind USB, Ethernet, PCI-Express, RS232. Laufzeitunterschiede zu anderen Leitungen spielen keine Rolle, wodurch wesentlich höhere Taktfrequenzen möglich sind. Zudem kommen oft Modulationstechniken zum Einsatz. Zur Darstellung und Untersuchung einer seriellen Übertragung ist ein einzelner Kanal eines Logik-Analysator oder MSOs erforderlich, oder aber ein Eingang eines Digital-Oszilloskops. Das Oszilloskop stellt jedoch zunächst einfach nur "neutral" das Signal auf der seriellen Leitung dar. Um das Signal zu dekodieren oder sogar das Protokoll zu analysieren, sind zusätzliche Funktionen im Oszilloskop (Firmware oder Software) erforderlich.

Serielles Bus-Decoding und Protokoll-Analyse

Bei vielen Oszilloskopen ist serielles Bus-Decoding eine optionale Funktion, die zum Beispiel per Freischaltcode in der Firmware aktiviert werden kann. Die ▸PicoScopes hingegen können standardmäßig eine Vielzahl von seriellen Bussen dekodieren, darunter 1-Draht, ARINC 429, CAN, DCC, DMX512, Ethernet 10Base-T und 100Base-TX, FlexRay, I²C, I²S, LIN, PS/2, SENT, SPI, UART (RS232/RS422/RS-485) und USB (die PicoScope Software wird in diesem Bereich ständig erweitert).

Serielle Daten werden in Paketen oder Frames übertragen, die abhängig vom Übertragungsstandard decodiert werden müssen, um sie verstehen zu können. Die Darstellung der decodierten Daten erfolgt in der PicoScope-Software wahlweise grafisch, tabellarisch oder beides gleichzeitig. Im grafischen Format (Bild oben) werden die decodierten Daten auf einer gemeinsamen Zeitachse dargestellt, zum einen in einem Bus-Format und als analoges Signal. Error-Frames sind rot markiert. Das Tabellen-Format (Bild unten) zeigt eine Liste der decodierten Frames inklusive der Daten und aller Flags und Identifiers.

Serielles Bus-Decoding, Darstellung tabellarisch

Analyse

Dank des großen Speichers der PicoScope Oszilloskope können hunderte oder sogar tausende serielle Datenpakete erfasst werden. Daher ist es wichtig, die Datenpakete, die von Interesse sind, für eine Analyse schnell und einfach aufzufinden. Hierzu bietet die PicoScope-Software eine komfortable Such- und Filter-Möglichkeit. Statistische Funktionen zeigen detaillierte Timing- und Spannungsinformationen zu jedem Paket. Über Link-Dateien können hexadezimale Werte entsprechend dem untersuchten Protokoll-Standard in "lesbare" Form übersetzt werden. So wird zum Beispiel aus "Address: 7E" in der Tabellen-Ansicht der korrespondierende Text "Set Motor Speed". Die Daten aus der Tabellen-Ansicht können für die weitere Analyse exportiert und gespeichert werden.