Buskommunikation Mit dem Oszilloskop auf Fehlersuche in seriellen Bussen
Serielle Busse erfordern ein genaues Verständnis des Busses und seiner Protokolle. Die Signalqualität des Busses sollte immer am Anfang der Analyse stehen, bevor die Protokollebene überprüft wird.
Anbieter zum Thema

In den vergangenen Jahren haben sich langsame serielle Busse in der Entwicklung von neuen Produkten kontinuierlich ausgebreitet und sind heute auch in vielen Produkten für Endverbraucher integriert. Einige der Busse sind sehr anwendungsbezogen, wie beispielsweise FlexRay in der Automobilbranche, während andere sich über viele Märkte und Industriezweige verbreiten und schon sehr lange zum Einsatz kommen wie RS-232 und UART. Regelmäßig kommen neue Protokolle auf den Markt, die Produktentwicklern und Endverbrauchern immer neue Funktionen, höherer Leistungsfähigkeit und Robustheit bieten. Allerdings bedeutet das auch, vermehrt Fehler aufzuspüren und zu beseitigen, damit die Leistungsfähigkeit und Funktionalität gewährleistet bleibt. Bild 1 zeigt ein Menü eines Oszilloskops mit einer Liste von seriellen Datensignalen, die mit dem Messgerät erfasst, decodiert und auf Fehler analysiert werden können.
Einige langsame serielle Busse setzen eine differentielle Architektur ein, um sie gegen Interferenzen und Rauschen im Gleichtakt zu schützen. Diese Vorgehensweise ist verbreitet bei schnellen seriellen Bussen wie USB oder PCI-Express, der Spannung weniger variiert und daher empfindlicher für Rauschen sind. CAN ist ein gutes Beispiel für einen langsamen differetiellen Bus. Er setzt differentielle Datenspuren ein für Sender und Empfänger mit der gleichen Bitrate.
Ein differentiell codiertes Signal kann auf zwei unterschiedliche Arten extrahiert werden. Entweder durch die internen mathematischen Funktionen eines Oszilloskopes (in dem die beiden Seiten des differentiellen Signals auf zwei Kanälen erfasst und dann subtrahiert werden) oder durch den Einsatz von differentiellen Tastköpfen, welches die bevorzugte Methode ist.
Die hohe Stabiliät des Gesamtsystems
Differentielle Tastköpfe sind daraufhin optimiert, differentielle Signale zu erfassen, in dem sie zwei Signalwege umfassen, die möglichst identisch in der Dämpfung, Frequenzansprechverhalten und Zeitverzögerung sind. Die beiden Wege führen in einen differentiellen Verstärker innerhalb des Tastkopfes, was das Gleichtaktunterdrückungsverhältinis optimiert und als Ergebnis ein einendiges Signal für die weitere Analyse an das Oszilloskop ausgibt.
Ein gutes Beispiel für einen langsamen seriellen Bus, der keine differentiellen Signale verwendet, ist I²C. Dieser Bus nutzt eine zweiadrige Struktur bestehend aus einer Datenleitung, SDA, und einer Taktleitung, SCL. Die Erfassung und Fehlerbehebung an seriellen Bussen beginnt normalerweise damit, dass die Signalintegrität oder der Qualität der physikalischen Signale überprüft wird. Erst danach kommt die Protokoll-Fehlersuche. Eine stabile und funktionierende physikalische Ebene steht an oberster Stelle für die hohe Stabilität des Gesamtsystems.
Taktfehler von seriellen Datensignalen triggern
Nützliche Funktionen, die Taktfehler von seriellen Datensignalen triggern oder erfassen sind die Glitch-, Runt-, Dropout- und Interval-Trigger. Weitere Funktionen wie WaveScan zum Triggern auf nicht-monotonen Flanken, Flanken mit Anstiegs-/Abfallzeiten außerhalb der Spezifikationen eines Protokolls oder weitere Signaleigenschaften, die den vorgebenen Spezifikationen eines seriellen Datemstandards widersprechen. Solche Funktionen sind auch ideal, um Probleme in bereits erfassten Signalen zu lokalisieren.
Die meisten Anbieter von Oszilloskopen bieten schnelle Triggermethoden an und setzen Displays ein, die nachleuchten. Damit lassen sich Unregelmässigkeiten im Signal entdecken. SMART-Trigger sind eine wesentlich elegantere Lösung im Vergleich zu Persistence (nachleuchten) oder schnellen Erfassungsmodi. Schnelle Erfassungsmodi weisen beträchtliche Totzeiten auf und dadurch lassen sich besonders selten auftretende Fehler schlechter aufspüren. Mit einer SMART-Trigger-Funktion bleibt das Oszilloskop kontinuierlich aktiv ohne Totzeiten, bis die gesuchten Daten auftreten und das Gerät diese erfasst hat.
Wenn die genaue Triggerbedingung nicht bekannt ist
Nicht zu vergessen ist auch die Tatsache, dass viele schnelle Erfassungsmodi es nicht erlauben, ihre Funktionalität mit leitungsfähigen Triggern zu kombinieren und erlauben nur einfache Flankentrigger unterstützen, was bei der Fehlersuche nach Burts in serielle Daten wenig nützlich ist. Die SMART-Trigger prüfen jeden Status und haben keinerlei Totzeit, da das Oszilloskop erst dann triggert, wenn die gesuchte Fehlerkonstellation auftritt. In vielen Fällen erlaubt der normale Erfassungsmodus durch den Einsatz von SMART-Triggern mehr Triggermöglichkeiten, eine wesentlich größeren Erfassungsspeicher und tiefere Analysemöglichkeiten nach der Signalerfassung. Viele Oszilloskope speichern die erfasste Signalform im Gerät, um den Trigger sofort wieder scharf zu schalten und weiter den Bus nach Fehlern zu untersuchen. Diese Art der Aufzeichnung von Signalformen ist zeitlich nicht begrenzt und kann solange durchgeführt werden, wie dies gewünscht ist.
Manche Oszilloskope verfügen über SMART-Erfassungsmodi die dann verwendet werden, wenn die genaue Triggerbedinung noch unbekannt ist. Bild 4 zeigt eine Runt-Bedingung, auf die in einem langen CAN-Bus-Signal gesucht wird. Jedes mal, wenn die Runt-Bedinung auftritt, wird das Oszilloskop gestoppt und der Fehler kann untersucht werden. Die Tabelle links in Bild 4 zeigt neun Runt-Ereignisse. Das vierte Ereignis ist hervorgehoben in der Tabelle und wird im Zoom Fenster im unteren Gitter dargestellt.
Die SMART-Trigger sind dann hilfreich, wenn es nicht nur um Runt- oder nicht-monotone Bedingungen geht, sondern Duty-Cycle-Variationen, extrem schnelle oder langsame Anstiegs- und Abfallzeiten, Frequenz- und Periodenabweichungen, positive und negative Abweichungen in der Breite oder zeitliche Verzerrungen. Das Oszilloskop kann sogar auf ausgeprägte Über- oder Unterschwingen suchen. Jeder dieser Triggertypen kann mit Suchfiltern kombiniert werden wie in Bild 5 gezeigt, um detailliertere Fehlersuchanalysen durchzuführen.
Artikelfiles und Artikellinks
(ID:32943640)