VSystems Electronic: PCI-Express-Analyzer für AMC und XMC

Die Analyse der Datenübertragungen über PCI-Express vereinfacht sich jetzt auch für die Formfaktoren AdvancedMC (AMC) und XMC. Die jüngsten Mitglieder der »Vanguard Express«-Familie finden ihre Verwendung beim Debuggen, Testen und Validieren von AMC.1-Modulen des Typs 1, 2, 4 und 8 bzw. x1-, x2-, x4- und x8-PCI-Express-XMC-Systemen.

Während der erste Teil des ADC-Reports [1] die verschiedenen Umsetzungsverfahren beleuchtet und den Trend von Parallel-Umsetzern hin zu Semiparallel-Umsetzern dargestellt hat, stehen nun im zweiten Teil A/D-Umsetzer im Mittelpunkt, die sich nicht so einfach einem festen Prinzip zuordnen lassen, jedoch in ihrem Kern die semiparallele Funktionalität zeigen.

Die Analyzer stellen eine abgeschlossene Einheit dar, die zwischen den Device-Under-Test (DUT) und dem Basissystem gesteckt und über Ethernet- oder USB-Verbindungen mit der »Bus View 5«-Software kontrolliert werden. »Bus View« hat eine einheitliche graphische Bedieneroberfläche (GUI) und bietet seit der neuesten Version zusätzlich die Möglichkeit den Analyzer über eine programmierbare Schnittstelle (API) zu bedienen. Alle Funktionen wie Statistiken, Protokoll Checker, Protokollüberprüfung und –analyse können kontinuierlich, gleichzeitig und unabhängig voneinander dargestellt werden. Von einem Arbeitsplatz aus können mehrere Analyzer unterschiedlicher Formfaktoren (z.B. PCI-Express, PCI/PCI-X, PMC, CompactPCI oder VME) bzw. Protokolle parallel verwaltet werden. Das Herzstück bildet das von VMetro entwickelte Serial Analyzer Engine Module (SAE). Dieses kann durch Verwendung unterschiedlicher Adapterplatinen für den AMC-, XMC- oder Standard-PCI-Express-Analyzer eingesetzt werden.

VSystems Electronic, Halle 1, Stand 254

Zieht man die Datenblätter zu Rate, dann gibt es meist keine eindeutige Antwort auf das verwendete Prinzip. In der „schnellen Abteilung“ werden besser nicht die genauen Details ausgeplaudert, weil hier neue technische Lösungen noch Wettbewerbsvorteile versprechen.

Das Grundprinzip semiparalleler A/D-Umsetzer ist in Bild 5 gezeigt. Es wird mindestens mit drei Umsetzungs-Phasen gearbeitet, d.h., die Methode zielt darauf, die Auflösung in einem günstigen Verhältnis zu splitten, also minimal 5 bit, aber häufig in 6-bit-Stufen. Wie viele parallel angeordnete Komparatoren tatsächlich gebraucht werden, also wieviel weniger als normalerweise 255 für eine digitale 8-bit-Auflösung ausreichen, stellt einen gewissen Balanceakt dar.

Semiparallel ist das Stichwort. Die Geschwindigkeit im Parallel-Mode nutzen, die Tiefe begrenzen und je nach Stand des Zwischenergebnisses in zwei, drei, vier oder bis zu acht Phasen bzw. Stufen in der Tiefe das Ergebnis zusammenstellen. Erst einmal 6 bit bestimmt, ein bisschen gerechnet, dann nochmal 6 bit ermittelt, je nach Ergebnis weitere sieben Mal, dann 1 bit korreliert und zuletzt das ganze über 12 oder 14 bit bezüglich des Quantisierungsfehlers – dem man leider nicht entkommt – in der ganzen Breite korrigiert, ergibt dann das Ergebnis. Es sind jedoch bestimmte Feinheiten zu beachten: Die Referenzspannung für die erste ADC-Stufe (die ersten 6 bit) ist eine feste Größe. Der erhaltene Digitalwert mit der 63er-Abstufung hat eine eindeutige, feste Zuordnung der Quantisierung, die voreingestellt ist, also z.B. auf eine Band-Lücken-Referenz von 2,5 V. Für die zweite ADC-Stufe muss eine neue Eingangsspannung erst ermittelt werden. Die niedrigste für die Weiterverarbeitung bzw. Skalierung des Gesamtwertes verwendete Stelle der ersten Stufe muss eine „1“ sein. Der erste 6-bit-Wert enthält, je nach aktueller Konversion, an der LSB-Stelle wahlweise eine „0“ oder eine „1“. Steht hier eine „0“, ist die Stelle LSB+1 (eine Stelle höher) auf die Wertigkeit „1“ zu testen. Falls diese Stelle nicht „1“ sein sollte, dann ist die Stelle LSB+2 zu testen usw. Dieser Vorgang ist ein Vergleichsvorgang, findet parallel statt und benötigt zur Ausführung rund 0,2 ns.

Die weitere Auflösung hängt also maßgeblich davon ab, an welcher Stelle die erste auftretende „1“ des aktuellen Konversionsabschnitts tatsächlich steht. Diese unterste „1“ im Digitalwert von 6 bit wird registriert und um die vorhergehenden Nullen stellenverschoben wieder in die analoge Welt zurückübertragen und vom Original-Analogsignal subtrahiert. Wird ein Digitalwert von 01100 erzielt, so gilt die Stelle 22 als erstmalig kleinste Quantisierung und wird damit zur Referenz für die nächste Digitalisierungsstufe. Wäre ein Wert von 01101 gegeben, ist 20 die kleinste Quantisierung. Es zählen rein rechnerisch alle sechs Stellen, auch wenn die letzten beiden als nullwertig ermittelt wurden. Das Ergebnis ist die neue Eingangsspannung für die zweite Phase (Stufe) zur Digitalisierung der nächsten 6 bit. Hier findet faktisch die gleiche Behandlung wie in der ersten Stufe statt. Je nach Gesamtauflösung des Pipeline-Misch-Wandlers wird die Referenzspannung von Anfang an in der Notwendigkeit geteilt, die als digitale Auflösung für den Wandler gegeben ist. In der zweiten Phase findet die Null-Erkennung genauso wie in der ers-ten statt. Steht der Wert korrigiert als analoger Restwert zu Verfügung, wird mit einer 1-bit-Digitalisierung das LSB endgültig festgelegt. Diese Prozedur in den beschriebenen Phasen nach dieser Methode erfordert fünf bis sieben Schritte. Wie Bild 5 andeutet, liegt dem typischen Aufbau semiparalleler ADCs das Prinzip zu Grunde, zunächst einen 5- oder 6-bit-Parallel-ADC als HDL-Modul festzulegen, der alle Schnittstellenbedingungen umfasst und entsprechend kaskadierfähig sein muss.

National Semiconductor stellt seine Pipeline-Technik etwas genauer dar, lässt aber die entscheidenden Fakten ebenso im Dunkeln. Nationals Lösung (Bild 7) unterscheidet sich von den Wettbewerbern Analog Devices, TI und STMicroelectronics. Die Lösungsstrategie ist ähnlich, und offensichtlich gelingt es, die Zahl von 255 Komparatoren bei 8 bit Auflösung auch hier zu vermindern. Die Methode ist zunächst wieder, die Auflösung zu splitten. Das R-Referenz-Leiternetzwerk in 256 Stufen für 8 bit ergibt den Umsetzungsbereich zwischen URT (top – oben) und URB (bottom – unten) für das Eingangssignal. An eine Zweifach-Gruppe von Komparatoren gelangt das analoge Signal. Der Spezialtrick hier ist eine über Analogschalter gesteuerte dynamische Spannungs-Pegelabfrage des Referenz-Leiternetzwerks. Das Eingangssignal liegt an jeweils zwei 15er-Gruppen von Komparatoren an (16 Spannungspegel werden jeweilig abgefragt). An diese wird dynamisch ein Ausschnitt des abgetasteten Teils des Referenz-Leiternetzwerks angelegt. Es wird wie in einer Art „Referenz-Fenster“ als Spannung an die Komparatoren-Gruppen angelegt, die jeweils einen Vergleich zum echten Eingangssignal im Nanosekundenbereich herstellen. Irgendwann trifft das dynamisch angelegte Fenster genau die Gruppe, in der der Vergleich Referenz zu Eingangsspannung einen Wechsel signalisiert und damit den Komparator selektiert, der die Schwelle trifft. Ist es die Nr. 153 jeweils in 15er-Gruppen hochgezählt, ist damit der Digitalwert in der ersten Stufe bekannt. Die angeschlossenen Encoder erzeugen dann aus einer lineraren Einser-Kette bis zum Wechsel zu Null den äquivalenten binären Digitalwert. Beide getrennt ermittelten Digitalwerte werden korrigiert, über einen Multiplexer zusammengesetzt und damit auch gemittelt. Der letzte Schritt erreicht auch den genaueren Abgleich des LSB.

Die Methode ist pfiffig. Im Gegensatz zur Methode nach Bild 6 wird das Signal nicht mehr analog zurückkonvertiert. Andererseits ist in diesem Fall ein R-Referenz-Leiternetzwerk in der vollen Länge notwendig, also 255 Stufen bei 8 bit. Die Analogschalter haben auch keine geringen Anforderungen zu erfüllen. Schwierig ist diese Methode bei höheren Auflösungen als 10 bit, weil der Aufwand für die Kalibrierung des Leiternetzwerks sich als immer komplizierter herausstellt. Die Tendenz nach einem erhöhten differenziellen Linearitätsfehler ist bei dem dynamischen Referenz-Fenster-Verfahren ebenfalls gegeben. Jedoch auch dieses Handicap wird teilweise korrigiert. Entscheidend ist auch hier eine zwar sequenzielle, aber rundum in etwa vier bis sechs Schritten zu lösende Umsetzung in einen 8-bit-Wert.

Das Pipeline-Misch-Verfahren bedeutet Umsetzung in paralleler Ausführung mit einem etwas unterschiedlichen Anteil sequenzieller Abschnitte. Die richtige Balance zwischen Hardware-Aufwand und Geschwindigkeit, gepaart mit dem Halbleiterprozess für eine nicht zu hohe Leistungsaufnahme bei noch vernünftiger Ausbeute sind die Herausforderungen, denen sich die Hersteller stellen müssen.