-
Hintergrund
der Erfindung
-
Die
vorliegende Erfindung bezieht sich auf eine Mehrpegel-Digitalsignalgebung
und insbesondere auf Einrichtungen zum Testen auf Fehler, die in
einem Mehrpegel- und Mehrleitungssignalgebungssystem auftreten können.
-
Die
Verwendung von Mehrfach-Signalpegeln anstelle von binären Signalpegeln
ist eine bekannte Technik zum Verbessern der Datenrate eines digitalen
Signalgebungssystems, ohne notwendigerweise die Signalfrequenz des
Systems zu erhöhen.
Solche Mehrpegel-Signalgebung ist manchmal bekannt als Mehrfachpulsamplitudenmodulation
oder Multi-PAM, und wurde für
Radio oder andere drahtlose Signalgebungssysteme für lange
Entfernungen implementiert.
-
Andere
Verwendungen für
lange Entfernungen für
Multi-PAM-Signalgebungen beinhalten Computer- oder Telekommunikationssysteme,
die Gigabit Ethernet einsetzen über
Lichtleitfaser (IEEE 802.3z) und über Kupferleitungen (IEEE 802.3ab),
die drei- bzw. fünf
Signalebenen verwenden, die symmetrisch zu einander beabstandet
sind und Erde beinhalten.
-
Multi-PAM
ist traditionell nicht für
Kommunikation zwischen Vorrichtungen in geringer Entfernung oder welchen
die zu demselben System gehören,
wie beispielsweise solche, die mit demselben integrierten Schaltkreis
(IC) oder der gedruckten Platine (PCB) verbunden sind, verwendet
worden. Ein Grund hierfür
kann darin liegen, dass innerhalb solch eines Systems die Charakteristika
der Übertragungsleitungen
wie beispielsweise Busse oder Signalleitungen, über die die Signale kommen,
fest gesteuert sind, so dass Erhöhungen
der Datenrate einfach durch Erhöhen
der Datenfrequenz erreicht werden können. Bei höheren Frequenzen können jedoch
Empfangsvorrichtungen eine reduzierte Fähigkeit zum Unterscheiden der
binären
Signale aufweisen, so dass das Aufteilen von Signalen in kleinere
Pegel für
Multi-PAM problematisch ist. Multi-PAM kann auch bei Mehrfachabgabebussystemen
(multi-drop bus systems) (das heißt Busse, die von mehreren
Verarbeitungseinrichtungen geteilt werden) schwieriger zu implementieren
sein, weil das geringere Signal-Rausch-Verhältnis bei solchen Systemen
manchmal zu Bitfehlern führt,
selbst für
binäre
Signale.
-
Das
Testen einer Multi-PAM Vorrichtung ist auch problematisch, weil
Testapparaturen typischerweise zum Testen von Binärsignalen
entwickelt sind. Somit kann es zusätzlich zu der Komplexität der Entwicklung einer
Multi-PAM Vorrichtung an herkömmlichen
Wegen zum Testen einer Multi-PAM Vorrichtung zum Sicherstellen,
dass die Vorrichtung fehlerfrei arbeitet, mangeln.
-
Das
US-Patent 5,097,144 bezieht sich auf eine Treiberschaltung zur Verwendung
zum Testen binärer bi-direktionaler
Halbleitervorrichtungen. Die DUT (Device Under Test/zu testende
Vorrichtung) ist eine herkömmliche
binäre
Vorrichtung mit nur zwei Signalpegeln (high und low). Ein Signal
mit drei Zuständen
(high, low, middle) wird für
Testzwecke des konventionellen I/O Ports zum effizienten Testen
verwendet.
-
Das
US-Patent 6,230,221 B1 offenbart ein Leitsystem, in dem ein Zentralcomputer
mit einer Bank von Plattenlaufwerken gekoppelt ist. Die Signalschnittstellen
basieren auf üblichen
2-Pegel-Binärwiedergaben.
-
Das
UK-Patent 1 533 576 bezieht sich auf eine Vorrichtung, in der eine
Mehrzahl von Master- und Slave-Vorrichtungen effizient miteinander
gekoppelt sind. Die Signalinterface basieren auf konventionellen
2-Pegel-Binärwiedergaben.
-
Zusammenfassung
-
Fehlererfassungseinrichtungen
für Signalschnittstellen
sind offenbart, die eingebaute Selbsttesteinrichtungen (built-in
self-test/BIST) zum Testen von Mehrpegel-Signal-Schnittstellen beinhalten.
Die Fehlererfassungseinrichtungen können in einem integrierten
Schaltkreis (IC)-Chip vorgesehen sein, der wenigstens eines der
Signal-Schnittstellen beinhaltet, oder kann gekoppelt sein mit den
Schnittstellen auf einem gedruckten Schaltkreis (printed circuit
board/PCB). BIST-Einrichtungen können
beispielsweise Testsignalgeneratoren und Einrich tungen zum Erfassen
ob die generierten Testsignale korrekt übertragen und durch die Schnittstellen empfangen
wurden, beinhalten. Die BIST-Einrichtungen können eine einzelne Eingabe-/Ausgabeschnittstelle oder
eine Gruppe von Schnittstellen prüfen, oder es kann mit einer
Master-Vorrichtung arbeiten, die eine Mehrzahl von Slave-Vorrichtungs-Schnittstellen
testet. Die Fehlererfassungseinrichtungen können besonders vorteilhaft
sein zum Testen von Speicherschaltungen, die dazu entwickelt sind
entsprechend Multi-PAM Signalen über
bedruckte Platinen zu kommunizieren.
-
Kurze Beschreibung
der Figuren
-
1 ist
eine Darstellung eines Multipegelsignalsystems mit vier logischen
Zuständen
entsprechend vier Spannungsbereichen.
-
2 ist
eine Darstellung einer repräsentativen
Mehrpegel Signalgebungsvorrichtung, die benutzt werden könnte um
die Spannungspegel der 1 zu erzeugen.
-
3 ist
eine Darstellung eines differenziellen Vier-PAM Signalsgebungssystems.
-
4A ist
eine Darstellung eines Codiererpaars, das binäre Signale in gemultiplexte
Steuersignale für die
Mehrpegel-Signalgebungsvorrichtung
der 2 übersetzt.
-
4B ist
eine Darstellung eines Codierers gemäß 4A der
MSB-gerade und LSB-gerade-Signale in
Steuersignale codiert.
-
5A ist
eine Darstellung eines Empfängers
und Dekodierers, die die Multipegel-Signale, die durch die Signalgebungsvorrichtung
der 2 gesendet wurden, empfängt und die Signale in binäre MSB-gerade und
LSB-gerade-Komponenten dekodiert.
-
5B ist
eine Darstellung des Empfängers
und Dekodierers der 5A zusammen mit einem anderen
Empfänger
und Dekoder, die die Mehrpegel-Signale empfangen, die durch die
Signalgebungsvorrichtung der 2 gesendet
wurden, und die Signale in binäre
MSB und LSB gerader und ungerader Komponenten dekodieren.
-
6 ist
eine Darstellung einer Vorrichtung, die ein Mehrpegel-Signal-Interface
beinhaltet, das gekoppelt ist mit einem Speicher, Sequenzgeneratoren
und einem Fehlerdetektor.
-
7 ist
eine Darstellung eines Systems, das eine Mehrpegel-Signal-Schnittstelle beinhaltet,
die eine Mehrzahl von Schnittstelleneinheiten aufweist, die zum
Testen in Serie verbindbar sind.
-
8 ist
eine Darstellung eines Systems, das eine Signal-Schnittstelle beinhaltet, die gruppiert
ist in Mehrfach-Bytes von Multipegel-Signal-Schnittstelleneinheiten
und ein Byte von binären
Signal-Schnittstelleneinheiten, wobei jedes der Multipegel-Signal-Schnittstelleneinheiten
eines ersten Bytes zu Testzwecken verbindbar ist mit einer entsprechenden
Mehrpegel-Signal-Schnittstelleneinheit
eines zweiten Bytes.
-
9A ist
eine Darstellung eines Satzes von vier Pseudodirektzugriffsbitsequenzgeneratoren,
die Signale zum Testen des Systems der 8 erzeugen
können.
-
9B ist
eine Darstellung eines einzelnen Pseudodirektzugriffsbitsequenzgenerators,
der einen Satz von vier Signalen zum Testen des Systems der 8 erzeugen
kann.
-
10 ist
eine Funktionsblockdarstellung eines Systems, das eine Mehrzahl
von Vorrichtungen und einen Controller beinhaltet, die jeweils Signal-Schnittstelleneinheiten
aufweisen, die mit einem Bus verbunden sind, wobei der Controller
als Master dient und die Vorrichtungen als Slaves zum Testen arbeiten.
-
11 ist
eine perspektivische Ansicht eines Systems der 10,
das auf einer gedruckten Platine (PCB) befestigt ist, indem es entfernbar
in die Verbinder wie beispielsweise Schlitze eingesetzt ist.
-
12 ist
eine perspektivische Ansicht des Systems der 10, das
auf einer PCB ohne Verbinder befestigt ist.
-
Detaillierte
Beschreibung der bevorzugten Ausführungsform
-
1 zeigt
ein Multipegelsignalsystem mit vier logischen Zuständen entsprechend
vier bestimmten Spannungspegeln, VOUT0, VOUT1, VOUT2 und VOUT3.
Die Spannungspegel in diesem Beispiel sind alle in Bezug auf die
Erde positiv und nehmen als „high" den Wert VTERM an.
VOUT0 ist definiert, über
VREFH zu sein, VOUT1 ist definiert zwischen VREFM und VREFH zu sein,
VOUT2 ist definiert zwischen VREFL und VREFM zu sein, und VOUT3
ist definiert kleiner als VREFL zu sein. VOUT0 entspricht dem logischen
Zustand 00, VOUT1 entspricht dem logischen Zustand 001, VOUT2 entspricht
dem logischen Zustand 11, und VOUT3 entspricht dem logischen Zustand
10. Ein Beispiel des Vier-PAM Systems, das oben beschrieben wurde,
wurde für
eine Speichersystem-Schnittstelle implementiert mit VOUT0 = 1,80V,
VOUT1 = 1,533V, VOUT2 = 1,266V und VOUT3 = 1,00V. Obwohl vier logische
Zustände
in diesem Beispiel beschrieben werden, kann ein Mehrfachpegel-Signalsystem
mehr oder weniger logische Zustände
haben, wobei wenigstens zwei Referenzpegel als Grenzen zwischen
den Zuständen
dienen.
-
Ein
erstes Bit jedes logischen Zustandes wird als das signifikanteste
Bit (most significant bit/MSB) bezeichnet und ein zweites Bit jedes
logischen Zustandes wird als das am wenig-sten signifikante Bit
(least significant bit/LSB) bezeichnet. Jeder logische Zustand kann
durch ein Symbol bezeichnet werden, weil er Informationen zu mehr
als einem Bit bereitstellt. Daten können übertragen und gelesen werden
an sowohl der ansteigenden als auch der abfallenden Flanke eines
Taktzyklus, so dass jedes Bitsignal und jedes Doppelbitsignal eine
Dauer der Hälfte
des Taktzyklus aufweist. Die logischen Zustände sind in einer Reihenfolge
gemäß einem
Gray-Code angeordnet, so dass ein fehlerhaftes Lesen eines benachbarten
logischen Zustandes einen Fehler in nur einem der Bits erzeugt.
Ein weiteres Charakteristikum dieser logischen 4-PAM Anordnung besteht darin,
dass das Setzen des LSB auf Null für alle Zustände zu einem 2-PAM System führt. Alternativ
können
die logischen Zustände
in numerischer (00, 01, 10, 11) oder in anderer Reihenfolge angeordnet
werden.
-
Gemäß einer
Ausführungsform
wird das Kommunikationssystem eingesetzt für einen Speicherbus, der beispielsweise
einen Direktzugriffsspeicher (random access memory/RAM) beinhalten
kann, wie der, der in dem US-Patent Nr. 5,243,703 von Farmwald et
al. offenbart ist. Die Multi-PAM Kommunikations- und Testtechniken,
die hierin offenbart sind, können
auch für
andere enthaltene Systeme verwendet werden, wie beispielsweise für die Kommunikation
zwischen Prozessoren einer Multiprozessorvorrichtung, oder zwischen
einem Prozessor und einer peripheren Vorrichtung, wie beispielsweise
einem Festplattenlaufwerk-Controller oder
einer Netzwerkschnittstellenkarte über einen Eingabe-Ausgabebus.
-
2 zeigt
eine Darstellung eines Kommunikationssystems, das verwendet werden
kann zum Erzeugen der Spannungspegel der 1. Ein Ausgabetreiber 20 gibt
Signale an den Ausgabeblock 18 aus und zwar über einen
Signalpfad wie beispielsweise die Übertragungsleitung 16,
die beispielsweise ein Speicherbus oder eine andere Verbindung zwischen
Vorrichtungen sein kann, die mit der Platine verbunden sind, um
an dem Block 25 empfangen zu werden. Die Übertragungsleitung 16 weist
eine charakteristische Impedanz Z0 27 auf, die
im Wesentlichen auf den Abschlusswiederstand 29 abgestimmt
ist, um Reflektionen zu minimieren.
-
Der
Ausgabetreiber 20 beinhaltet eine erste 21, zweite 22 und
dritte 23 Transistorstromquelle, die zusammen einen Strom
I erzeugen, wenn alle aktiv sind, der die Spannung an dem Block 25 von
VTERM herunterzieht um I·Z0, was den logischen Zustand 10 unter
dem Gray-Code System signalisiert. Der Steuersignaleingang über die
Leitungen C1, C2 und C3 schaltet die entsprechenden Stromquellen 21, 22 und 23 ein
und aus. Um die Spannung VOUT0 = VTERM zu erzeugen, was den logischen
Zustand 00 signalisiert, sind die Stromquellen 21, 22 und 23 sämtlich ausgeschaltet.
Um die Spannung VOUT1 = VTERM – (1/3)I·Z0 zu erzeugen, was den logischen Zustand
01 signalisiert, ist eine der Stromquellen eingeschaltet, und zum
Erzeugen der Spannung VOUT2 = VTERM – (2/3)I·Z0,
sind zwei Stromquellen eingeschaltet. Der logische Pegel 00 wird gewählt um keinen
Stromfluss zu haben, um die Leistungsaufnahme für die Situation zu reduzieren
in der viele der übertragenen
Daten ein MSB und LSB von Null aufweisen. Die Referenzpegel werden
auf einen Wert auf halbem Wege zwischen den Signalpegeln gesetzt,
so dass VREFH = VTERM – (1/6)I·Z0, VREFM = VTERM – (1/2)I·Z0 und
VREFL = VTERM(5/6)I·Z0.
-
3 zeigt
ein Beispiel eines differenziellen 4-PAM Signalgebungssystems, bei
dem Daten auf zwei Leitungen oder anderen Übertragungsmedien kodiert sind
und ein Symbolwert festgelegt ist durch die Spannungsdifferenz,
wie sie durch den Empfänger
gemessen wird. Die Verwendung differenzieller Signalgebung kann
eine erhöhte
Unempfindlichkeit gegen Rauschen und Übersprechen schaffen. Eine
Spannung V1 auf einer der Leitungen verändert sich über die Zeit zwischen vier
Spannungspegeln, wie durch die durchgezogenen Linien 50 gezeigt
ist, während
eine Spannung V2 auf der anderen Leitung sich auch zwischen den
vier Spannungspegeln verändert
jedoch in entgegengesetzter Weise wie durch die gestrichelte Linie 55 gezeigt
ist. Die Spannungsdifferenzen VDIFF zwischen den Spannungen V1 und
V2 zu den Zeiten T1, T2, T3 und T4 sind oberhalb der Signale in
beliebigen Einheiten wie +3, +1, –1 bzw. –3 aufgelistet. Die MSB- und
LSB-Symbole entsprechend den jeweiligen Spannungsdifferenzen sind
oberhalb der Signale in einer nach dem Gray Code kodierten Sequenz
aufgelistet.
-
Ein
anderes Beispiel einer Mehrpegel-Signalvorrichtung und eines entsprechenden
Verfahrens ist in dem US-Patent Nr. 6,005,895 von Perino et. al.
offenbart. Diese und andere Arten von Mehrpegel-.Signalschnittstellen
können
auch entsprechend dieser Erfindung getestet werden. Die US-Patentanmeldung
mit der Veröffentlichungsnummer
200 300 937 13 offenbart andere Mittel zum Testen von Mehrpegel-Signalschnittstellen
und trägt
den Titel „Multilevel
Signal Interface Testing with Binary Test Apparatus by Emulation
of Multilevel Signals",
sie wurde an demselben Datum wie die vorliegende Anmeldung durch
die Erfinder Werner, Zerbe, Stonecypher, Liaw und Chang angemeldet.
-
4A zeigt
eine Ausführungsform,
bei der Daten sowohl an der steigenden als auch der fallenden Taktflanke übertragen
und gelesen werden und zwar unter Verwendung eines Paares von im
Wesentlichen identischen Kodierern 100 und 120,
die ungerade und gerade MSB- und LSB-Signale in die Steuersignale
auf den Leitungen C1, C2 und C3 für den Ausgabetreiber 20 umsetzen.
Gerade MSB- und gerade LSB-Signale auf den Leitungen MSBE und LSBE
werden in den Kodierer 100 eingegeben, der Thermometer-Code-Signale (thermometer
code signals) an die Leitungen C1E, C2E und C3E ausgibt. In gleicher
Weise werden ungerade MSB- und ungerade LSB-Signale auf den Leitungen
MSBO und LSBO in den Kodierer 120 eingegeben, der Thermometer-Code-Signale
an die Leitungen C1O, C2O und C3O ausgibt. Die Leitungen C1E und
C1O gehen in den Multiplex 106 ein, Leitungen C2E und C2O
gehen in den Multiplex 102 ein und Leitungen C3E und C3O gehen
in den Multiplex 112 ein. Die Multiplexer 102, 106 und 112 wählen die
ungeraden oder geraden Signale entsprechend eines Taktauswahlsignals
auf der Auswahl-Leitung 118 und geben die Thermometer-Code-Steuersignale
auf die Leitungen C1, C2 und C3 aus.
-
Der
Kodierer 100 ist mit größerem Detail
in 4B gezeigt. Die MSBE ist mit der Leitung C2E verbunden.
Die MSBE geht auch in ein OR-Gatter 104 ein, das LSBE als
seinen weiteren Eingang hat, wobei der Ausgang des OR-Gatters 104 mit
der Leitung C1E verbunden ist. Signale auf der Leitung LSBE gehen
durch den Invertierer 108 wobei die invertierten Signale
auf der Leitung LSBE_B in das AND-Gatter 110 eingegeben werden.
Das AND-Gatter 110 erhält
als seine weitere Eingangsleitung MSBE, wobei sein Ausgang mit der
Leitung C3E verbunden ist, die ein drittes Steuersignal bereitstellt.
-
Tabelle
1 beschreibt die Beziehung zwischen den MSB- und LSB-Signalen und
den Steuersignalen auf den Leitungen C1, C2 und C3, die binäre Signale
in 4-PAM Signale
umsetzen. Tabelle
1
-
Wenn
beispielsweise MSB = 0 und LSB = 0 sind, sind alle Steuersignale
aus. Wenn MSB = 0 und LSB = 1 sind, gibt das OR-Gatter 104 „on" aus, so dass das
Steuersignal auf der Leitung C1 an ist, wobei aber die Steuersignale
auf den Leitungen C2 und C3 noch aus sind. Wenn beide MSB = 1 und
LSB = 1 sind, sind die Steuersignale auf den Leitungen C1 und C2
an, jedoch ist bedingt durch die invertierten LSB-Signale, die in die
AND-Gatter wie beispielsweise das AND-Gatter 110 eingegeben
werden, das Steuersignal auf Leitung C3 aus. Wenn MSB = 1 und LSB
= 0 ist, sind die Steuersignale auf allen Leitungen, C1, C2 und
C3 eingeschaltet. In dieser Art können die MSB und LSB als Gray
Code kombiniert und in Thermometer-Code-Steuersignale auf den Leitungen
C1, C2 und C3 übersetzt
werden, die die Stromquellen steuern, um die 4-PAM Signale zu steuern.
-
5A zeigt
eine mögliche
Ausführungsform
eines Empfängers 200,
der verwendet werden kann, um die Mehrpegel-Signale zu empfangen,
die durch die Treiber gesendet wurden, wie beispielsweise solche
die oben beschrieben wurden, und der die Signale in MSBE- und LSBE-Komponenten
dekodiert. Wie oben erwähnt
wurde, können
die Daten mit doppelter Taktfrequenz übertragen werden und ein im
Wesentlichen identischer Empfänger 240 ist
in 5B gezeigt, wobei die Empfänger 200 und 240 gerade
bzw. ungerade Daten lesen.
-
Ein
MSBE-Empfänger 202 des
4-PAM Empfängers 200 gemäß diesem
Beispiel empfängt
und dekodiert ein 4-PAM Eingangssignal VIN durch Festlegen, ob das
Signal VIN größer oder
kleiner als VREFM ist. In dem MSBE-Empfänger 202 vergleicht
ein Haltevergleicher 204 den Wert der Spannung des empfangenen
Eingangssignals VIN mit der Referenzspannung VREFM und hält den Wert
des Ergebnisses des Vergleichs B als Reaktion auf Empfangs-Taktsignal
RCLOCK. Obwohl diese Ausführungsform
das Datenabtasten sowohl an der steigenden als auch an der fallenden
Taktflanke offenbart, können
Daten alternativ nur an der steigenden Taktflanke oder nur an der
abfallenden Taktflanke abgetastet werden.
-
In
einem LSBE-Empfänger 208 vergleichen
zwei Haltevergleicher 210 und 214 den Wert der
Spannung des empfangenen Eingangssignals VIN mit den Referenzspannungen
VREFH und VREFL und halten den Wert des Ergebnisses des Vergleichs
A bzw. C als Reaktion auf das Empfangs Taktsignal. Um das LSBE zu
dekodieren werden die Signale von den Vergleicherausgängen B,
A und C dann durch die Kombinationslogik 220 geschoben.
Die Haltevergleicher 204, 210 und 214 können als
integrierende Empfänger
implementiert sein, um die Empfindlichkeit der Ausgangssignale auf
Rauschen zu reduzieren. Dies kann ausgeführt werden durch Integrieren
der Differenz zwischen dem empfangenen Signal, Vin und den drei
entsprechenden Referenzspannungen über die meisten oder alle des
Bitzyklus und dann durch Halten der integrierten Ergebnisse als
die Ausgänge
A, B und C. Eine ähnliche
Offenbarung eines Multi-PAM-Signalgebungssystems
kann gefunden werden in der US-Patentanmeldung mit der Seriennummer
09/478,916 mit der Veröffentlichungsnummer 200
40 23 551 0, die den Namen trägt „Low Latency
Multi-Level Communication Interface" und die am 6. Januar 2000 eingereicht
wurde.
-
6 zeigt
ein Funktionsblockdiagramm eines Typs einer Vorrichtung 300,
die eine Mehrpegel-Signalschnittstelle 330 beinhaltet,
die mit einem optionalen Speicher 350 gekoppelt ist, wobei
beide entsprechend der vorliegenden Erfindung getestet werden können. Der
Speicher 350 kann Daten in binärer oder anderer Form speichern
unter der Verwendung von Halbleitern, magnetischen, optischen, ferroelektrischen
oder anderen bekannten Mitteln zum Speichern. Die Datensignale 301 von
dem Speicher 350 werden mit Übertragungstaktsignalen 303 getaktet
und an einem Kodierer 305 kodiert, der Steuersignale bereitstellt,
die einen Ausgabetreiber oder Übertrager 310 ansteuern.
Mehrpegel-Signale werden durch den Übertrager 310 zu dem
Eingabe-/Ausgabepin 313 übertragen, was eine Kommunikation
zwischen der Vorrichtung 300 und anderen Vorrichtungen
bietet, die in dieser Figur nicht gezeigt sind.
-
Der
Kodierer 305 und Übertrager 310,
die zusammen als ein Übertragungseinrichtung
funktionieren, können ähnlich dem
Kodierer 100 und dem Ausgabetrei ber 20 sein, die
zuvor beschrieben wurden, und der Eingabe-/Ausgabepin 313 kann ähnlich den
Kontaktstellen (pads) 18 oder 25 sein, die oben
beschrieben wurden, um dies als Beispiel zu geben. Außerdem ist
mit dem Eingabe-/Ausgabepin 313 der
Empfänger 315 gekoppelt,
der dazu ausgebildet ist, Mehrpegel-Signale von dem Pin 313 zu
erfassen. Der Ausgang des Empfängers 315 wird
mit empfangenen Taktsignalen 317 abgetastet und in binäre Signale
an dem Dekodierer 320 dekodiert um als Daten 322 zum
Speichern im Speicher 350 übertragen zu werden. Der Empfänger 315 und
Dekodierer 320 können ähnlich sein,
um die oben beschriebene Einrichtung 200 aufzunehmen.
-
Um
die Vorrichtung 300 zum Datenspeichern zu verwenden, können Mehrpegel-Signale an dem I/O Pin 313 von
einer Vorrichtung empfangen werden, die außerhalb dieser Figur ist, wie
beispielsweise ein Übertrager
und Prozessor, der mit dem Pin 313 durch einen Signalpfad
wie beispielsweise eine leitende Verbindung verbunden ist. Diese
Mehrpegel-Signale können
durch den Empfänger 315 erfasst,
in die binären
Signale durch den Dekoder 320 übersetzt und als Daten 320 zum
Speichern in dem Speicher 350 gesendet werden. Um Informationen
von dem Speicher 350 zu lesen, werden Daten 301 an
den Kodierer 305 gesendet, die den Übertrager 310 dazu
bringen, Mehrpegel-Signale an den I/O Pin 313 zur Übertragung
an die externe Vorrichtung zu senden.
-
Zusätzlich zu
der Datenspeichereinrichtung, die oben beschrieben wurde, beinhaltet
die Vorrichtung 300 einen Signalgenerator 355,
der Testsignale 358 zum Testen der Signalschnittstelle 330 erzeugt.
Der Signalgenerator 355 kann beispielsweise einen linearen
Rückführschieberegister
(linear feedback shift register/LFSR) beinhalten, der eine vorbestimmbare
Reihe von Testsignalen 358 erzeugt oder er kann einen anderen
bekannten pseudowahlfreien Bitsequenzgenerator (pseudo-random bit
sequence generator/PRBS) beinhalten. Als ein alternatives Beispiel
kann der Signalgenerator 355 dazu programmiert sein, eine
bekannte Sequenz von Signalen auszugeben, die dazu ausgelegt sind, Übertragungen
der Schnittstelle 330 oder des Speichers 350 für den schlimmsten
Fall zu testen.
-
In
einem Testmodus können
Testsignale 358 von dem Signalgenerator 355 dem
Kodierer 305 zugeführt
werden was dazu führt,
dass Mehrpegel-Signale durch den Transmitter 310 gesendet
werden. Im Gegensatz zur konventionellen Betriebsweise ist der Empfänger 315 dazu
in der Lage, die Mehrpegel-Signale zu erfassen und sie dem Dekodierer 320 bereitzustellen.
Der Dekodierer 320 übersetzt
die Mehrpegel-Signale in binäre
Testsignale 364, die an einen Fehlerdetektor 360 ausgegeben
werden, der bestimmt, ob Testsignale 358 korrekt durch
die Signalschnittstelle 330 übertragen wurden. Der Fehlerdetektor 360 kann
eine Vergleichseinrichtung beinhalten, wie beispielsweise einen
oder mehrere Vergleicher (comparitors) oder andere Logikelemente.
-
Zum
Durchführen
dieser Bestimmung kann die Vorrichtung 300 einen zweiten
Signalgenerator 362 beinhalten, der eine Reihe von Referenzsignalen 366 zum
Vergleich mit den Testsignalen 364 erzeugt. Der Signalgenerator 362 kann
im Wesentlichen identisch mit dem Signalgenerator 355 sein.
Beispielsweise können beide
ein LFSR mit einer identischen Anzahl von Bits sein. Zum Synchronisieren
des Signalgenerators 362 mit dem Signalgenerator 355 kann
in diesem Fall ein Anfangssatz von Testsignalen 364 in
das Schieberegister des Signalgenerators 362 geladen sein.
Alternativ kann der Signalgenerator 355 mit einem variablen
Verzögerungselement 370 verbunden
sein, das Testsignale 358 um einen Wert verzögert, der
im Wesentlichen gleich der Verzögerung
der Signalschnittstelle 330 ist, um Referenzsignale 377 dem
Fehlerdetektor 360 zum Vergleich mit Testsignalen 364 bereitzustellen.
Das variable Verzögerungselement 370 kann
eine Mehrzahl von im Wesentlichen statischen Verzögerungselementen
beinhalten, wie beispielsweise Flipflops, als auch ein einstellbares
Verzögerungselement,
um eine Art phasengekoppelten Regelkreis (phase-locked loop/PLL)
oder verzögerungsgekoppelten
Regelkreis (delay-locked loop/DLL) zu bilden.
-
Das
Verzögerungselement 370 kann
auch gegenüber
seinem idealen Takt versetzt sein, so dass die Taktreserve (timing
margin) entweder zum Übertragen
oder zum Empfangen von Daten bestimmt sein kann. Ebenso kann jede
der Referenzspannungen in 4A auf
bestimmte Spannungsreserven (voltage margins) für Mehrfach-PAM Daten verändert werden.
-
7 beschreibt
ein System 400, das eine Mehrpegel-Signalschnittstelle 404 beinhaltet,
das eine Mehrzahl von Signalschnittstelleneinheiten (410, 420, 430) aufweist,
die zum Testen in Reihe verbunden sind, obwohl während des Betriebs die Signalschnittstelleneinheiten
so angeordnet sind, dass sie getrennt oder parallel übertragen.
Das heißt,
während
dem Testen der Signalschnittstelleneinheiten 410, 420 und 430 sind
diese aktiviert zum Selbsttesten, wie oben unter Bezugnahme auf 6 beschrieben
wurde, und benachbarte Signalschnittstelleneinheiten sind auch verbunden,
um die Testsignale von einer Signalschnittstelleneinheit zur nächsten weiterzuleiten.
Während
des Betriebs kommunizieren jedoch die Signalschnittstelleneinheiten 410, 420 und 430,
getrennt oder parallel, mit äußeren Einheiten über entsprechende
I/O Pins 418, 428 und 438.
-
Eine
erste Signalschnittstelleneinheit 410 beinhaltet eine erste Übertragungseinrichtung 414,
eine erste Empfangseinrichtung 416 und einen ersten I/O
Pin 418. Eine zweite Signalschnittstelleneinheit 420,
die eine zweite Übertragungseinrichtung 424 beinhaltet,
eine zweite Empfangseinrichtung 426 und einen zweiten I/O Pin 428 ist
mit der ersten Signalschnittstelleneinheit 410 über einen
optionalen ersten Multiplexer- Demultiplexer 412 gekoppelt.
Ein erster Multiplexer/Demultiplexer 412 kann auswählen, die
zweite Signal-Schnittstelleneinheit 420 zu umgehen, indem
stattdessen ein optionaler zweiter Multiplexer/Demultiplexer 422 verbunden wird.
Der zweite Multiplexer/Demultiplexer 412 wählt aus,
ob die zweite Signalschnittstelleneinheit 420 mit einer
dritten Signalschnittstelleneinheit, die nicht dargestellt ist,
kommuniziert oder diese umgeht.
-
In
dieser Art können
N Signalschnittstelleneinheiten zum Testen verkettet sein, mit einer
Nten Signalschnittstelleneinheit 430, die eine Nte Übertragungseinrichtung 434,
eine Nte Empfangseinrichtung 436 und einen Nten I/O Pin 438 beinhaltet,
wobei die Nte Signalschnittstelleneinheit 430 mit den anderen
Signalschnittstelleneinheiten mit einem weiteren Multiplexer/Demultiplexer
dekoppelt ist, der nicht gezeigt ist. Jede Übertragungseinrichtung und
jede Empfangseinrichtung legt die Signale mit den Taktsignalen zeitlich
fest, die von einem Mastertaktgenerator gesendet sein können, was
in dieser Figur nicht gezeigt ist. Ein erster Signalgenerator 440 ist
mit der ersten Signalschnittstelleneinheit 410 über einen
optionalen Demultiplexer 408 gekoppelt, der geschaltet
werden kann, stattdessen die erste Signalschnittstelleneinheit 410 zu überbrücken. Ein
Fehlerdetektor 444 ist mit der Nten Schnittstelleneinheit 430 gekoppelt
und ein zweiter Signalgenerator 448 ist mit dem Fehlerdetektor 444 gekoppelt.
-
Um
das Signalinterface 404 zu testen, sendet der Signalgenerator 440 ein
Testsignal oder eine Reihe von Testsignalen an die erste Übertragungseinrichtung 414,
die wiederum Testsignale an die erste Empfangseinrichtung 416 sendet,
und zwar in einer Art, die ähnlich
zu der ist, die oben unter Berücksichtung
der 6 beschrieben wurde. Der Multiplexer/Demultiplexer 412 kann
dazu eingestellt sein, diese Signale von der ersten Empfangseinrichtung 416 an
die zweite Übertragungseinrichtung 424 zu
senden, die wiederum Signale steuert, die durch die zweite Empfangseinrichtung 426 erfasst
wurden. Die Signale werden somit an den Nten Empfänger 436 weitergeleitet,
der Signale ausgibt, die durch den Fehlerdetektor 444 erfasst
wurden. Ein optionaler Multiplexer 432 kann stattdessen
auswählen,
Signale dem Fehlerdetektor 444 bereitzustellen, die die
Nte Schnittstelleneinheit 430 umgehen.
-
Der
Fehlerdetektor 444 empfängt
auch Signale von einem zweiten Signalgenerator 448, die
mit den Signalen vom Nten Empfänger 436 verglichen
werden, die durch den Fehlerdetektor 444 erfasst werden.
Die Signale von dem zweiten Signalgenerator 448 sind so
ausgebildet, dass sie im Wesentlichen identisch sind mit den Testsignalen,
die durch den ersten Signalgenerator 440 ausgegeben werden,
aber um eine Zeitperiode verzögert
sind, die im Wesentlichen gleich der Verzögerung ist, die sich beim Gehen
durch die Reihe der Schnittstelleneinheiten der Signalschnittstelle 404 ergeben.
Wenn das Signal oder Reihen von Signalen, die durch den Fehlerdetektor 444 vom
Nten Empfänger 436 empfangen
wurden, nicht mit dem Signal oder der Reihe von Signalen übereinstimmt,
dass bzw. die durch den Fehlerdetektor 444 von dem zweiten
Signalgenerator 448 empfangen wurden, dann gibt der Fehlerdetektor 444 ein
Fehlersignal aus.
-
Ein
System wie das in 7 gezeigte weist den Vorteil
auf, in der Lage zu sein, Mehrfachschnittstelleneinheiten mit nur
einem oder zwei Signalgeneratoren zu testen. Solches Testen von
mehrfachen Schnittstelleneinheiten kann bei der Situation Zeit einsparen,
wenn Fehler unüblich
sind. In einer exemplarischen Ausführungsform kann das System 400 acht
oder neun Schnittstelleneinheiten beinhalten, so dass ein Byte von
Informationen parallel über
die I/O-Pins 418, 428 und 438 zu jeder
beliebigen Zeit kommuniziert werden kann. Für ein IC, das Testmittel zusammen
mit einer Signalschnittstelle, wie beispielsweise die in 7 gezeigte
beinhaltet, verringert das Reduzieren der Anzahl von Signalgenerato ren
pro Schnittstelleneinheit den Chipplatz (chip real estate) der zum
Testen verwendet wird.
-
Wenn
ein Fehler in der Signalschnittstelle 400 gefunden wird,
können
die Multiplexer und Demultiplexer, oder ähnliche logische Schaltungen,
die zwischen zwei Eingaben und zwei Ausgaben auswählen, eingestellt
werden, die individuellen Schnittstelleneinheiten zu testen, bis
die defekte Einheit oder die defekten Einheiten identifiziert sind.
Alternativ können
die individuellen Schnittstelleneinheiten anfangs auf Fehler getestet werden
oder Untersätze
der Schnittstelleneinheiten können
getestet werden durch geeignetes Einstellen der Multiplexer und
Demultiplexer. In dieser Art ermöglichen
die Multiplexer und Demultiplexer, dass jeder Untersatz der N Signalschnittstelleneinheiten
getestet wird.
-
8 zeigt
ein System 500, das eine Mehrpegel-Signalschnittstelle 502 beinhaltet,
das mehrfache Schnittstelleneinheiten aufweist, die dazu angeordnet
sind, das Kommunizieren von Informationsbytes zu erleichtern. Die
Schnittstelleneinheiten sind gruppiert in zwei Datenkommunikationsbytes,
A-BYTE 505 und B-BYTE 511,
die jeweils neun Mehrpegel-Signalschnittstelleneinheiten gemäß einer
Ausführungsform
beinhalten, und ein Steuer- oder Anfragebyte R-BYTE 515,
das acht binäre
Signalschnittstelleneinheiten in dieser Ausführungsform beinhaltet. Die
Schnittstelleneinheiten in dem A-BYTE 505 und B-BYTE 511 können den Mehrpegel-Schnittstelleneinheiten ähnlich sein,
die oben beschrieben wurden, wobei jede Schnittstelleneinheit eine
Einrichtung zum Übertragen
und Empfangen von Mehrpegel-Signalen aufweist, wobei eine der Schnittstelleneinheiten
sowohl in dem A-BYTE 505 als auch in dem B-BYTE 511 zur
Paritätssignalisierung
verwendet werden. Beispielsweise kann ein Speicherchip oder eine
Speichersteuerung eine oder mehrere Schnittstellen aufweisen, wie
beispielsweise die Schnittstelle 502. Davon ausgehend,
dass Abschluss- und Gleichstromladeerfordernisse erfüllt sind,
kann dann das A-BYTE 505 mit einer Mehrzahl von Bytes verbunden
sein, wie beispielsweise das B-BYTE 511, und jegliche zweier
solcher Bytes können
sich gegenseitig testen.
-
Jede
Schnittstelleneinheit eines A-BYTES 505 beinhaltet einen
I/O Pin in einer Gruppe von I/O Pins, die mit 520 bezeichnet
sind. Jede Schnittstelleneinheit eines B-BYTES 511 und
jede Schnittstelleneinheit in R-BYTES 515 beinhaltet auch
einen I/O Pin, der in einer Gruppe von I/O Pins angeordnet ist,
die mit 522 bzw. 525 bezeichnet sind. Jede Schnittstelleneinheit
in einem A-BYTE 505 ist auch durch einen Signalpfad mit
einer entsprechenden Schnittstelleneinheit in dem B-BYTE 511 gekoppelt,
was dem A-BYTE 505 ermöglicht,
das B-BYTE 511 zu testen und umgekehrt.
-
Ein
erster PRBS-Generator oder eine Mehrzahl von PRBS-Generatoren 530 können mit
verschiedenen Schnittstelleneinheiten eines A-BYTES 505 gekoppelt
sein, und ein zweiter PRBS-Generator oder eine Mehrzahl von PRBS-Generatoren 533 können mit
den verschiedenen Schnittstelleneinheiten des B-BYTES 511 gekoppelt sein. Für den Fall,
in dem erster bzw. erste PRBS-Generator(en)
eine Mehrzahl von unterschiedlichen PRBS-Generatoren beinhaltet
kann jeder dieser PRBS-Generatoren verbindbar sein mit einer oder mehreren
der Schnittstelleneinheiten eines A-BYTES 505. Genauso
können
für den
Fall, in dem der zweite PRBS-Generator 533 eine Mehrzahl
unterschiedlicher PRBS-Generatoren beinhaltet, jeder dieser PRBS-Generatoren
mit einem oder mehreren der Schnittstelleneinheiten des B-BYTES 511 verbindbar
sein. Ein Fehlerdetektor 535 ist mit erstem/ersten und
zweitem/zweiten PRBS-Generator(en) 530 und 533 gekoppelt.
-
Um
die Schnittstelleneinheiten in A-BYTE 505 und B-BYTE 511 zu
testen, können
der erste bzw. die ersten Generator(en) 530 Testsignale
an eine oder mehrere der Schnittstelleneinheiten des A-BYTES 505 ausgeben,
wie durch den Pfeil 540 gezeigt ist. Jeder dieser Schnittstelleneinheiten
des A-BYTES 505, das Testsignale von dem ersten bzw. den
ersten PRBS-Generator(en) 530 empfängt, sendet Mehrpegel-Signale
an ihre entsprechende Schnittstelleneinheit in dem B-BYTE 511.
Die Mehrpegel-Signale werden durch die entsprechende Schnittstelleneinheit
in dem B-BYTE 511 erfasst und in binäre Signale dekodiert, die dem
Fehlerdetektor 535 zur Verfügung gestellt werden, wie durch
den Pfeil 544 gezeigt ist. Referenzsignale werden von dem
zweiten bzw. den zweiten PRBS-Generator(en) 533 an
den Fehlerdetektor 535 gesendet, wie durch den Pfeil 548 gezeigt
ist, wobei die Referenzsignale mit den dekodierten Signalen synchronisiert
sind. Die dekodierten Signale von dem B-BYTE 511 werden
an dem Fehlerdetektor 535 mit den synchronisierten Referenzsignalen
von dem zweiten bzw. den zweiten PRBS-Generator(en) 533 verglichen.
Der Fehlerdetektor 535 gibt ein Fehlersignal aus, falls
die dekodierten und Referenzsignale, die verglichen werden, nicht übereinstimmen, das
anzeigt, dass die Übertragungseinrichtung
des A-BYTES 505 und/oder die Empfangseinrichtung des B-BYTES 511 nicht
korrekt arbeitet.
-
Genauso
kann der zweite bzw. können
die zweiten PRBS-Generator(en) binäre Testsignale an eine oder
mehrere der Schnittstelleneinheiten des B-BYTES 511 ausgeben,
wie durch den Pfeil 550 gezeigt ist. Jede dieser Schnittstelleneinheiten
des B-BYTES 511, das Testsignale von dem zweiten bzw. den
zweiten PRBS-Generator(en) 533 empfängt, sendet Mehrpegel-Signale
an seine entsprechende Schnittstelleneinheit in dem A-BYTE 505.
Die Mehrpegel-Signale werden erfasst durch die entsprechende Schnittstelleneinheit
in dem A-BYTE 505 und dekodiert in binäre Signale, die dem Fehlerdetektor 535 zur
Verfügung
gestellt werden, wie durch den Pfeil 552 gezeigt ist. Referenzsignale
werden von dem ersten bzw. den ersten PRBS-Generator(en) 530 an
den Fehlerdetektor 535 gesendet, wie durch den Pfeil 555 gezeigt
ist, wobei die Referenzsignale mit den dekodierten Signalen synchronisiert
sind. Die dekodierten Signale von dem A-BYTE 505 werden an dem Fehlerdetektor 535 mit
den synchronisierten Referenzsignalen von dem ersten bzw. den ersten PRBS-Generator(en) 530 verglichen.
Der Fehlerdetektor 535 gibt ein Fehlersignal aus, wenn
die dekodierten und Referenzsignale, die miteinander verglichen
werden, nicht überstimmen,
was anzeigt, dass die Übertragungseinrichtung
des B-BYTES 511 und/oder die Empfangseinrichtung des A-BYTES 505 nicht
korrekt arbeiten.
-
Wenn
das System 500 weniger PRBS-Generatoren als Schnittstelleneinheiten
aufweist, kann der Testvorgang wiederholt werden, bis alle der Schnittstelleneinheiten
getestet wurden. Der erste bzw. die ersten PRBS-Generator(en) 530 oder
ein anderer bzw. andere PRBS-Generator(en) können mit dem R-BYTE 515 verbunden
werden und jede der Schnittstelleneinheiten des R-BYTES 515 können mit
anderen der Schnittstelleneinheiten des R-BYTES 515 gekoppelt
sein, um diesen Schnittstelleneinheiten zu ermöglichen, sich gegenseitig durch
Vergleichen übertragener
und an dem Fehlerdetektor 535 empfangener Signale zu testen.
Somit kann Testen der Mehrpegel-Signalschnittstelle durch die oben
beschriebenen Mittel ausgeführt
werden, ohne die Notwendigkeit für
zusätzliche
Testeinrichtungen zum Erzeugen oder Erfassung von Mehrpegel-Signalen.
-
9A zeigt
einen Satz von vier PRBS-Generatoren 560–563,
die Signale zum Testen des Systems der 8 erzeugen
können.
Die vier PRBS-Generatoren 560–563 sind identisch
aber initialisiert oder ausgestattet mit unterschiedlichen Bit-Einstellungen
und können
beispielsweise als PRBS-Generator(en) 530 der 8 verwendet
werden. Ein Multiplexer, der in dieser Figur nicht gezeigt ist,
ist für
jedes der Bits vorgesehen, um die Wahl zwischen Initialisieren des
Bits oder Betreiben des PRBS zu ermöglichen. In diesem Beispiel
wird ein erster PRBS-Generator 560 als
ein MSBE-Signal an einen Kodierer wie beispielsweise den Kodierer 305 eingegeben,
während
ein zweiter PRBS-Generator 561 als LSBE-Signal an den Kodierer 305 eingegeben wird,
ein dritter PRBS-Generator 562 als ein MSBO-Signal an den
Kodierer 305 eingegeben wird und ein vierter PRBS-Generator 563 als
ein LSBO-Signal an den Kodierer 305 eingegeben wird.
-
9B zeigt
einen einzelnen PRBS-Generator 570, der einen Satz von
vier Signalen (MSBE, LSBO, LSBE und MMSBO) erzeugen kann, die in
einen Kodierer, der in dieser Figur nicht gezeigt ist, zum Testen
des Systems der 8 eingegeben werden können. Der
PRBS-Generator 570 kann beispielsweise als PRBS-Generator(en) 530 der 8 verwendet
werden. Der PRBS-Generator 570 hat ein erstes Flip-flop 571,
gefolgt von vier Sätzen
von vier Flip-flops 572–575, die mit exklusiv-OR
Gattern 582–585 ausgestattet
sind, wie gezeigt ist. Andere aus dem Stand der Technik bekannte
PRBS-Generatoren können
anstelle derer in 9A und 9B gezeigten
eingesetzt werden.
-
10 zeigt
ein System 600, das eine Anzahl von Signalschnittstellen
mit eingebauten Selbsttesteinrichtungen beinhaltet. Das System 600 beinhaltet
eine Steuerungsvorrichtung CTRL 606, die als Master für eine Anzahl
anderer Vorrichtungen dienen kann, die als A-CELL 611,
B-CELL 612 und C-CELL 613 bezeichnet sind. Die
Steuerungsvorrichtung CTRL 606 weist erste und zweite Mehrpegel-Signalschnittstellen 616 und 617 auf,
als auch eine binäre
oder 2-PAM Signalschnittstelle 618.
Jede dieser Signalschnittstellen kann ein Byte breit sein, ähnlich denen
oben in Bezug auf die 8 beschriebenen. In gleicher
Weise hat das A-CELL 611 erste und zweite Mehrpegel-Signalschnittstellen 622 und 623 als
auch eine binäre
oder 2-PAM Signalschnittstelle 624, die jeweils ein Byte
breit sein können.
Genauso hat das B-CELL 612 erste und zweite Mehrpegel-Signalschnittstellen 632 und 633,
als auch eine binäre
Signalschnittstelle 634, und C-CELL 613 hat erste
und zweite Mehrpegel-Signalschnittstellen 642 und 643,
als auch eine binäre
Signalschnittstelle 644, die jeweils ein Byte breit sein
können.
-
Die
Mehrpegel-Signalschnittstellen 616, 622, 632 und 642 sind
mit einem ersten Signalpfad gekoppelt, wie beispielsweise mit dem
Bus 650, der ein Byte breit sein kann. In gleicher Weise
sind die Mehrpegel-Signalschnittstellen 617, 623, 633 und 643 mit
einem zweiten Signalpfad gekoppelt wie beispielsweise mit dem Bus 655,
der auch ein Byte breit sein kann. Genauso sind die binären Signalschnittstellen 618, 624, 634 und 644 mit
einem dritten Signalpfad gekoppelt, wie beispielsweise mit dem Bus 660,
der auch ein Byte breit sein kann. Busse 650, 655 und 660 sind
bei VTERM mit einer angepassten Impedanz abgeschlossen, um Reflektionen
zu reduzieren.
-
Jede
der Vorrichtungen 606 und 611–613 kann einen Testsignalgenerator
wie beispielsweise einen PRBS-Generator und einen Fehlerdetektor
aufweisen. In diesem Fall können
Empfangseinrichtungen der Vorrichtungen 611–613 durch
Senden eines Signals von der Steuervorrichtung CTRL 606 getestet
werden und Übertragungseinrichtungen
der Vorrichtungen 611–613 können durch
Senden von Signalen, die an die Steuervorrichtung CTRL 606 gesendet
wurden, getestet werden. Alternativ kann alleine die Steuervorrichtung CTRL 606 einen
PRBS-Generator und
einen Fehlerdetektor aufweisen, wobei Vorrichtungen 611–613 getestet werden,
indem Signale an die Empfangseinrichtungen der Vorrichtungen 611–613 gesendet
werden, wobei entsprechende Übertragungseinrichtungen
dieser Vorrichtungen 611–613 Signale zurück an die
Steuervorrichtung CTRL 606 zur Fehlererfassung senden.
Optional kann jedes der Signalschnittstellen 616–618, 622–624, 632–634 und 642–644 mit
wenigstens einem Testsignalgenerator und einem Fehlerdetektor gekoppelt
sein, und jede Schnittstelleneinheit jedes der Signalschnittstellen 616–618, 622–624, 632–634 und 642–644 kann
mit einem Testsignalgenerator verbunden sein. Die Wahl, wie viele
Testeinrichtungen zusammen mit jeder Vorrichtung einzusetzen sind,
kann Abstimmungen zwischen den Kosten der Testeinrichtungen wie
beispielsweise Raumanforderungen durch die Testeinrichtungen und
die Leichtigkeit und Präzision
des Testens einbeziehen.
-
Als
ein Beispiel zum Testen der Empfangseinrichtungen der Mehrpegel-Signalschnittstelle 622 kann die
Mehrpegel-Signalschnittstelle 616 durch einen PRBS-Generator
veranlasst werden eine Reihe von Testsignalen über den Bus 650 an
die Schnittstelle 622 zu senden, wie durch den Pfeil 666 gezeigt
ist. Unter der Annahme, dass die Schnittstelle 622 wenigstens
einen PRBS-Detektor aufweist, der eine Kombination von einem PRBS-Generator
und einem Fehlerdetektor beinhalten kann, kann der PRBS-Detektor
prüfen,
ob der Bus 650 und die Empfangseinrichtung der Signalschnittstelle 622 die
Signale korrekt empfangen haben. Für den Fall, in dem ein PRBS-Generator
für jede
Schnittstelleneinheit der Signalschnittstelle 616 vorgesehen
ist, und ein PRBS-Detektor für
jede Schnittstelleneinheit der Signalschnittstelle 622 vorgesehen
ist, können
die Empfangseinrichtungen der Signalschnittstelle 622 und
des Busses 650 auch auf Fehler getestet werden, die durch Übersprechen
hervorgerufen werden, wie beispielsweise entlang des Busses 650.
-
Um
die Übertragungseinrichtung
der Mehrpegel-Signalschnittstelle 642 zu testen, kann die
Schnittstelle durch einen PRBS-Generator veranlasst werden, eine
Reihe von Testsignalen über
den Bus 650 an die Mehrpegel-Signalschnittstelle 616 zu
senden, wie durch den Pfeil 670 gezeigt ist. Ein PRBS-Detektor,
der mit der Schnittstelle 616 verbunden ist, kann prüfen, ob
der Bus 650 und die Übertragungseinrichtung
der Signalschnittstelle 642 die Signale korrekt gesendet
haben. In dem Fall, in dem ein PRBS-Generator für jede Schnittstelleneinheit
der Signalschnittstelle 642 vorgesehen ist, und ein PRBS-Detektor
für jede
Schnittstelleneinheit der Signalschnittstelle 616 vorgesehen
ist, können
die Übertragungseinrichtung
der Signalschnittstelle 642 und des Busses 650 auf
Zustände
des Übersprechens
ebenso getestet werden.
-
Um
die Mehrpegel-Signalschnittstelle 633 zu testen, werden
eine Reihe von Testsignalen durch die Mehrpegel-Schnittstelle 617 über den
Bus 655 an eine Empfangseinrichtung der Schnittstelle 634 gesendet, wie
durch den Pfeil 672 gezeigt ist. Unter der Annahme, dass
die Empfangseinrichtung der Schnittstelle 633 nicht mit
einem PRBS-Detektor sondern stattdessen mit einem Speicher und einer Übertragungseinrichtung der
Schnittstelle 633 gekoppelt ist, kann die Übertragungseinrichtung
später
eine Reihe von Signalen über
den Bus 655 an eine Empfangseinrichtung der Schnittstelle 617 zurücksenden,
wie durch den Pfeil 677 gezeigt ist. Ein mit der Schnittstelle 617 verbundener
PRBS-Detektor kann prüfen,
ob der Bus 655 und die Empfangs- und Übertragungseinrichtungen der
Signalschnittstelle 634 die Signale über den Bus 655 korrekt
weitergeleitet haben. Für
den Fall, in dem ein PRBS-Generator für jede Schnittstelleneinheit
der Signalschnittstelle 617 vorgesehen ist, können die
Empfangs- und Übertragungseinrichtungen
der Signalschnittstelle 633 und der Bus 655 auch
auf Zustände
des Übersprechens
getestet werden.
-
Beispielsweise
kann die Steuervorrichtung CTRL 606 PRBS-Sequenzen über die
Schnittstelle 616 an die Schnittstelle 632 übertragen,
wobei einige oder alle der Adressen eines Speichers in der B-CELL 612 ausgefüllt werden.
Die B-CELL 612 wird dann angewiesen, alle der PRBS-Daten
aus seinem Speicher zu übertragen,
wobei die PRBS-Daten von der Schnittstelle 616 empfangen
werden. Die Steuervorrichtung CTRL 606 kann dann die Daten
mit einem PRBS-Fehlerdetektor
prüfen.
-
Die
Busse 650, 655 und 660 können Speicherbusse
oder andere interne Busse einer Vorrichtung wie beispielsweise eines
Computers sein und sie können
beispielsweise fixiert sein an einer Basis wie beispielsweise eine
PCB oder sie können
Teil eines ICs sein, das an einer Basis fixiert ist wie beispielsweise
an einem Wafersubstrat. Alternativ können die Busse 650, 655 und 660 periphere
Vorrichtungen mit einem Computer verbinden, so dass die Steuervorrichtung
CTRL 606 für
den Computer stehen kann und die A-CELL 611, B-CELL 612 und
C-CELL 613 für
periphere Vorrichtungen wie beispielsweise Festplattenlaufwerke
stehen können.
Als weiteres Beispiel können
Busse 650, 655 und 660 für ein Netzwerk
stehen, das die Steuervorrichtung CTRL 606, A-CELL 611,
B-CELL 612 und C-CELL 613 verbindet.
Außerdem
kann, obwohl sie als Mastervorrichtung arbeiten kann, die Steuervorrichtung
CTRL 606 im Wesentlichen identisch mit einer A-CELL 611,
B-CELL 612 und/oder C-CELL 613 sein. Die Steuervorrichtung 606 kann
auch Mastertaktsignale über
die Busse 650, 655 und 660 übertragen,
um verschiedene Elemente einer A-CELL 611, B-CELL 612 und
C-CELL 613 zu synchronisieren.
-
11 zeigt
eine Implementierung, in der das System 600 ein Hochgeschwindigkeitsspeichersystem umfasst
mit einer Steuervorrichtung CTRL 606, die für eine Steuerung
(Controller) steht und einem A-CELL 611, B-CELL 612 und
C-CELL 613,
die für
Speicherzellen stehen. Das System 600 beinhaltet eine Basis,
wie ein PCB 601 (das manchmal auch als motherboard bezeichnet
wird) an dem eine Speichersteuerung 606, Signalpfade 650, 655 und 660 und
Verbinder 680, 684 und 688 fest angeordnet
sind. Speichermodule 690, 694 und 698,
die jeweils eine oder mehrere Speichervorrichtungen 611, 612 und 613 beinhalten,
sind auf der gedruckten Platine 601 fixiert, indem sie
entfernbar in die Verbinder 680, 684 und 688 eingesetzt
sind. Obwohl dies in der 11 nicht
gezeigt ist, beinhalten die Speichermodule 690, 694 und 698 Spuren
(traces) um die Speichervorrichtungen 611, 612 und 613 mit
den Signalpfaden 650, 655 und 660 und
schließlich
mit der Speichersteuerung 606 zu verbinden.
-
Gemäß den Ausführungsformen
der 11 bilden die Signalpfade 650, 655 und 660 Mehrfachanschlussbusse
(multi-drop buses) die mit jedem Speichermodul 690, 694 und 698 gekoppelt
sind. Die individuellen Speichervorrichtungen eines gegebenen Moduls
können
mit demselben Satz der Signalleitungen innerhalb der Signalpfade 650, 655 und 660 gekoppelt
sein, oder jede Speichervorrichtung der Module kann mit einem entsprechenden
Untersatz der Signalleitungen gekoppelt sein. Im letzteren Fall
kann auf zwei oder mehr Speichervorrichtungen in einem Modul gleichzeitig
zugegriffen werden, um einen Wert zu lesen oder zu schreiben, der
breiter ist (das heißt
mehr Bits beinhaltet) als die Datenschnittstelle einer einzelnen
Speichervorrichtung. In einer alternativen Ausführungsform (nicht gezeigt)
kann jedes der Speichermodule mit der Speichersteuerung über einen
zugewiesenen Signalpfad gekoppelt werden (das heißt über eine
Punkt-zu-Punkt Verbindung und weniger über einen Mehrfachanschlussbus).
In einer solchen Ausführungsform
kann jede der Speichervorrichtungen auf dem Speichermodul mit einem
gemeinsamen Satz von Signalleitungen des zugeordneten Pfades gekoppelt
sein oder jede Speichervorrichtung kann mit den entsprechenden Untersätzen der Signalleitungen
gekoppelt sein.
-
Die
Signalpfade 650, 655 und 660 können gemultiplexte
Sätze von
Signalleitungen enthalten, um sowohl Daten als auch Steuerinformationen
zwischen der Speichersteuerung 606 und den Speichervorrichtungen 611, 612 und 613 zu übertragen.
Alternativ können,
wie unter Bezugnahme auf die 10 beschrieben ist,
die Signalpfade 650 und 660 zum Transferieren
von Daten zwischen den Speichervorrichtungen 611, 612 und 613 und
der Speichersteuerung 606 eingesetzt werden und die Signalpfade 655 können zum Übertragen von
Timing- und Steuerinformationen zwischen den Speichervorrichtungen 611, 612 und 613 und
der Speichersteuerung 606 eingesetzt werden (beispielsweise
Taktsignale, Lese/Schreib-Befehle und Adressinformationen). Außerdem können die
Timinginformationen innerhalb der Speichersteuerung 606 oder
durch externe Schaltungen (nicht gezeigt) erzeugt werden.
-
Während ein
Speichersystem, das Verbinder zum entfernbaren Einsetzen der Speichermodule
beinhaltet, in 11 dargestellt ist, können andere
Systemtopologien verwendet werden. Wie in 12 gezeigt ist,
brauchen die Speichervorrichtungen 611, 612 und 613 nicht
auf den Speichermodulen angeordnet zu sein, sondern können vielmehr
individuell mit der gedruckten Platine 601 gekoppelt sein.
Eine verbinderlose Schnittstelle, wie die in 12 dargestellte,
kann für
Mehrpegel-Signalgebung bevorzugt sein, weil Verbinder den Kanälen Reflektionsrauschen
und Dämpfung
zufügen.
-
Alternativ
können
die Speichervorrichtungen, die Speichersteuerung und der Signalpfad
sämtlichst
in einer einzigen integrierten Schaltung zusammen mit anderen Schaltkreisen
beinhaltet sein (beispielsweise Grafiksteuerschaltkreise, digitale
Signalprozessorschaltkreise, Prozessschaltkreise für allgemeine
Zwecke etc.). Ein solches System, oder das in den 11 oder 12 gezeigte
kann in verschiedenen elektronischen oder optischen Vorrichtungen
verwendet werden, einschließlich
Computersystemen, Telefonen, Netzwerkvorrichtungen (z. B. Schalter,
Router, Schnittstellenkarten, etc.), mit der Hand zu haltende elektronische
Vorrichtungen und intelligente Vorrichtungen.
-
Obwohl
wir uns auf das Lehren der bevorzugten Ausführungsformen des Testens – mit eingebauten Testeinrichtungen – von Vorrichtungen
konzentriert haben, die Mehrpegel-Signalschnittstellen beinhalten,
werden andere Ausführungsformen
und Modifizierungen dieser Erfindung dem Fachmann im Blick auf diese
Lehre klar werden. Diese Erfindung ist somit nur durch die folgenden
Ansprüche
beschränkt.