Grundlagen Grundlagen und Praxis der Signalintegrität, Teil 1: Erkennen von Fehlern Es wird immer schwieriger, vollständige und unbeeinträchtigte Signale zu erzeugen und aufrechtzuerhalten. Für Systementwickler stellt die Signalintegrität ein dringliches Problem dar. Eine Herangehensweise aus Sicht der klassischen analogen Hochfrequenztechnik ist der optimale Weg zur Lösung. Dieser dreiteilige Leitfaden gibt Einblick in Ursachen, Charakteristika und Auswirkungen von Fragen der Signalintegrität. Quelle: Grundlagen der Signalintegrität, Tektronix, www.tektronix.com, gekürzt Die steigende Nachfrage nach Informationen wird durch technologische Durchbrüche auf dem Gebiet der Halbleiter, PC- Busarchitekturen, Netzwerk- Infrastrukturen und digitalen Funkkommunikation erfüllt. Bei PCs hat die Prozessorgeschwindigkeit mittlerweile den mehrfachen GHz-Bereich erreicht. Der Speicherdurchsatz und die internen Busgeschwindigkeiten sind ebenfalls gestiegen. Die Entwickler von digitalen Kommunikationsausrüstungen, insbesondere für den Mobilfunk, haben es mit Datenraten von 40 GBit/s zu tun. Die Fortschritte bei den Datenübertragungsgeschwindigkeiten werden durch zahllose Technologien untermauert. Serielle Busse überwinden Geschwindigkeitsgrenzen, die bei älteren parallelen Busarchitekturen gegeben waren. Bauteile wie Rambus-Speichereinheiten greifen (statt der geläufigeren 50 Ohm) auf eine stark kontrollierte Impedanzumgebung mit 28 Ohm zurück, um die Signalintegrität bei maximalen Taktgeschwindigkeit sicherzustellen. Und kleinere, dichter bestückte Platinen mit Ball Grid Array ICs und eingebetteten Zwischenverbindungen sind mittlerweile üblich, weil die Entwickler nach Wegen suchen, um die Bestückungsdichte zu maximieren und die Leiterbahnlängen zu minimieren. Entwickeln mit Konzepten der Signalintegrität Steigende Bandbreiten machen die „Details“ bei der digitalen Schaltungsentwicklung immer wichtiger. Bei Geschwindigkeiten im hundertfachen MHz- Bereich und darüber hinaus kommt es auf jedes Schaltungsdetail an: • Taktverteilung • Signalpfadgestaltung • Leiterbahnstücke • Rauschpegel • Impedanz und Last • Übertragungseffekte • Signalpfad-Rückströme • Terminierung • Entkopplung • Stromverteilung All diese Faktoren beeinflussen die Integrität der Signale. Mit steigenden Systemgeschwindigkeiten wird es immer schwieriger, idealen Signalcharakteristika nahezukommen. Aus diesem Grunde ist die Signalintegrität „auf einmal“ so wichtig. Eine Pulsanstiegszeit kann in einem mit 50 MHz getakteten System angemessen sein, reicht bei 500 MHz jedoch nicht mehr aus. Ein Ingenieur, der sich mit der Weiterentwicklung von Schaltungsentwürfen für Digitalsysteme befasst, wird wahrscheinlich mit Signalintegritätsproblemen in ihrer digitalen Form konfrontiert werden, d.h. die binären Signale an den Bus oder an Geräteausgängen rufen falsche Werte hervor. Die Fehler können im Timing-Diagramm eines Logikanalysators oder auf der State- oder sogar der Protokollebene erscheinen. Es gilt zu bedenken, dass schon ein einziges fehlerhaftes Bit das Ergebnis einer Anweisung oder Transaktion verfälschen kann. Digitalsignalverzerrungen lassen sich auf viele Ursachen zurückführen. Besonders häufig sind Probleme im Zusammenhang mit dem Timing: • Wenn zwei Treibergeräte versuchen, gleichzeitig auf dieselbe Busleitung zuzugreifen, treten Buskonflikte auf, die unvermeidlich zu Verzerrungen führen. 50 hf-praxis 7/2018
Grundlagen Bild 1: Der schwarze Kurvenzug an Eingang A ist die analoge Ansicht des tatsächlichen Signals. Durch den langsameren Anstieg der schwarzen Kurve wird der Schwellenwert später erreicht, was zu einem schmaleren Ausgangspuls führt. Die Signalintegrität an Eingang A ist äußerst schlecht • In digitalen Systemen können Setup-and-Hold-Verletzungen auftreten. Bei einem getakteten D-Flipflop beispielsweise müssen die Daten am Eingang eine bestimmte Zeit lang stabil sein, bevor der Takt ankommt. Dies wird als Setup-Zeit bezeichnet. Ebenso müssen die Eingangsdaten nach der vorderen Flanke des Taktes eine bestimmte Zeit lang gültig bleiben. Dies wird als Hold-Zeit bezeichnet. Die Verletzung der Setup-and- Hold-Anforderungen kann zu Glitches am Ausgang führen oder dazu, dass überhaupt kein Übergang ausgegeben wird. • Metastabilität ist ein unbestimmter oder instabiler Datenzustand, der durch eine Timing-Verletzung verursacht wird. Das daraus resultierende Ausgangssignal kann dann ein Glitch sein, der Probleme verursacht. • Undefinierte Bedingungen können auftreten, wenn die Schaltzustände an mehreren Eingängen eines Logikgeräts zeitlich nicht korrekt aufeinander abgestimmt werden. Ursache hierfür können Schwankungen oder Fehler der Verzögerung dieser Eingangssignale sein. Eine grundlegende Darstellungsart ist die Timing-Anzeige, bei der digitale Daten und deren zeitlicher Bezug zueinander angezeigt werden. Bei der State- Anzeige lassen sich Daten untersuchen, die von einem Taktsignal charakterisiert werden, das innerhalb des Prüflings erzeugt wurde. Mithilfe von Disassemblern und Prozessorunterstützungspaketen lassen sich die Ergebnisse weiter interpretieren, sodass der Logikanalysator die (mit dem Quellcode korrelierten) Echtzeit-Software-Anweisungen mit den Hardware-Aktivitäten auf der untersten Ebene korrelieren kann. Bei dieser herkömmlichen Erfassungsart per Logikanalysator können Amplitudenfehler und Glitches als gültige Logikpegel erscheinen, obwohl sie fehlerhafte Daten enthalten. Wenn keine geeigneten Messmittel vorhanden sind, um tiefer in das Signalverhalten vorzudringen, wird es äußerst schwierig, die Ursache des Logikfehlers zu finden. Aufspüren von analogen Verzerrungen Viele digitale Probleme lassen sich wesentlich einfacher bestimmen, wenn man das Signalverhalten detaillierter betrachten kann und die analoge Darstellung des fehlerhaften Digitalsignals auf dem Bildschirm sieht. Obwohl das Problem wie ein falsch platzierter Digitalpuls erscheinen mag, kann die Ursache des Problemsignals mit seinen analogen Charakteristika zusammenhängen. Analoge Charakteristika können zu digitalen Fehlern werden, wenn Signale mit niedrigerer Amplitude zu fehlerhaften logischen Zuständen führen oder wenn kurze Anstiegszeiten eine zeitliche Verschiebung der Pulse zur Folge haben. Der erste Schritt zur Analyse von Problemen dieser Art besteht darin, sich einen digitalen Signalverlauf gleichzeitig auch als analoge Ansicht anzeigen zu lassen. Immer wenn es um das Thema Signalintegrität geht, muss den Signalübergängen besondere Aufmerksamkeit gewidmet werden. Warum das so ist, wird anhand des Timing- Diagramms in Bild 1 ersichtlich. Angenommen, die beiden Eingangssignale werden an ein normales UND-Gatter angelegt. Der grau dargestellte Kurvenzug an Eingang A zeigt, wie der Puls eigentlich aussehen sollte. Bei dem darüber liegenden verzerrten schwarzen Kurvenzug handelt es sich um die analoge Darstellung des tatsächlichen Signals. Aufgrund seiner langsamen Anstiegszeit erreicht es den Schwellenwert erst sehr viel später als es eigentlich sollte. Der daraus resultierende Ausgangspuls ist schmaler als vorgesehen (die korrekte Pulsbreite ist grau dargestellt). In den nachfolgenden logischen Schritten kann dies Fehler verursachen. Die Integrität des Signals an Eingang A ist ausgesprochen schlecht. Lange Signalübergänge können zu intermittierenden Systemfehlern führen, selbst wenn sie keine wiederholbaren Fehler verursachen. Die Timing-Vorgaben in den schnellsten Systemen erlauben äußerst wenig Zeit für Signalübergänge. Setup-and- Hold-Zeiten haben sich in den letzten Jahren drastisch verkürzt. Wie in Bild 2 dargestellt, können „langsame“ Flanken zu wenig Spielraum im veranschlagten Timing übriglassen, um noch gültige Daten zu erhalten. Schaltkreisdesign, Übergangszeiten und Signalintegrität Man sollte stets bedenken, dass viele mit langsameren Taktraten konzipierte Digitalsysteme trotzdem sehr schnelle Flanken aufweisen können. Durch die Fortschritte in der Halbleitertechnik findet man kürzere Übergangszeiten praktisch in jeder Logikfamilie. Ungeachtet der Taktrate transportieren diese Flanken Hochfrequenzanteile. Schnelle Flanken bieten viele Vorzüge, machen die Arbeit des Entwicklungsingenieurs manchmal aber auch komplizierter. Sie müssen bei der Auswahl von Komponenten, Abschlüssen und Layouts besondere Vorsicht walten lassen. Unabhängig von der Takt- Bild 2: Wird Takt A zur Taktung der Daten verwendet, so verringert dessen lange Anstiegszeit die Zeit, in der gültige Daten anliegen. Bei der schnelleren Taktflanke B bleibt mehr Zeit zur Übermittlung des Datenwertes hf-praxis 7/2018 51
Laden...
Laden...