-
Elektrische
Systeme können
eine Mehrzahl einzelner Vorrichtungen, wie z. B. Chips oder Integrierte-Schaltung-Chips,
aufweisen. Die Funktionalität
eines elektronischen Systems basiert auf einem Einrichten und Erhalten
einer Kommunikation unter den Vorrichtungen und mit externen Komponenten. Derartige
Kommunikationen können
einzelne Adressen für
die Vorrichtungen verwenden.
-
Es
ist die Aufgabe der vorliegenden Erfindung, ein Verfahren zur Aufzählung, eine
Vorrichtung zur Aufzählung,
eine Einrichtung zum Aufzählen
oder ein System mit verbesserten Charakteristika zu schaffen.
-
Diese
Aufgabe wird durch ein Verfahren gemäß Anspruch 1, 15 oder 16, eine
Vorrichtung gemäß Anspruch
17, eine Einrichtung gemäß Anspruch 29
oder ein System gemäß Anspruch
30 gelöst.
-
Bevorzugte
Ausführungsbeispiele
der vorliegenden Erfindung werden nachfolgend Bezug nehmend auf
die beiliegenden Zeichnungen näher
erläutert.
Es zeigen:
-
1 ein
Flussdiagramm eines Verfahrens zum Aufzählen von Vorrichtungen bzw.
zur Zahlvergabe gemäß einem
Ausführungsbeispiel
der Erfindung;
-
2a ein
schematisches Blockdiagramm einer Vorrichtung gemäß einem
Ausführungsbeispiel der
Erfindung;
-
2b ein
schematisches Blockdiagramm eines Systems gemäß einem Ausführungsbeispiel der
Erfindung;
-
3 ein
schematisches Blockdiagramm einer Schaltungsanordnung zum Implementieren
einer Verdrahtetes-UND-Operation;
-
4 ein
schematisches Blockdiagramm einer Schaltungsanordnung zum Implementieren
einer Verdrahtetes-UND-Operation;
-
5 ein
schematisches Blockdiagramm einer Vorrichtung gemäß einem
Ausführungsbeispiel der
Erfindung;
-
6 eine
graphische Darstellung von Signalen, die in einem Ausführungsbeispiel
der Erfindung vorhanden sein können;
-
7 ein
Flussdiagramm eines Verfahrens zum Zuweisen einer zweiten Zahl zu
einer Vorrichtung auf der Basis einer eindeutigen ersten Zahl;
-
8 eine
graphische Darstellung exemplarischer Schritte und entsprechender
Signale und Zwischenergebnisse, die während der Parallelausführung des
Verfahrens 700 in vier Vorrichtungen auftreten können;
-
9 ein
schematisches Blockdiagramm eines Systems, das eine Mehrzahl von
Vorrichtungen aufweist, gemäß einem
weiteren Ausführungsbeispiel
der Erfindung; und
-
10 ein
schematisches Blockdiagramm eines Systems, das eine Mehrzahl von
Vorrichtungen aufweist, gemäß einem
weiteren Ausführungsbeispiel
der Erfindung.
-
In
der folgenden Beschreibung sind zu Erklärungszwecken und nicht als
Einschränkung
spezifische Details, wie z. B. bestimmte Strukturen, Implementierungen,
Komponenten, Tech niken usw., dargelegt, um ein gründliches
Verständnis
der verschiedenen Aspekte von Ausführungsbeispielen gemäß der Erfindung
zu schaffen. Es ist jedoch für
Fachleute auf dem Gebiet, die in den Vorzug der Beschreibung gekommen
sind, zu erkennen, dass verschiedene Aspekte von Ausführungsbeispielen
der Erfindung in anderen Beispielen praktiziert werden können, die von
diesen spezifischen Details abweichen. In bestimmten Fällen sind
Beschreibungen bekannter Vorrichtungen, Schaltungen und Verfahren
weggelassen, um so die Beschreibung von Ausführungsbeispielen der Erfindung
nicht mit unnötigen
Details zu verschleiern.
-
In
elektronischen Systemen können
einzelne Vorrichtungen miteinander gekoppelt sein, um eine Kommunikation
zwischen den Vorrichtungen und zwischen den Vorrichtungen und externen
Komponenten zu ermöglichen.
Zur Einrichtung und Erhaltung einer Kommunikation in derartigen
Systemen kann es nötig
sein, die Vorrichtungen einzeln zu adressieren, um eine erwünschte Funktionalität zu erzielen.
-
Aufgrund
der wachsenden Komplexität
derartiger Systeme wird es unter Umständen immer schwieriger, eine
Kommunikation zu realisieren, die auf separaten Signalleitungen
basiert, um die einzelnen Vorrichtungen zu steuern. Als eine Folge
können die
Vorrichtungen basierend auf Adresswerten und Befehlen adressiert
werden, was es jedoch erforderlich macht, dass die Vorrichtungen
verwechslungsfrei adressierbar sind.
-
Ein
derartiger Ansatz kann in einem Speicherteilsystem implementiert
werden, wie z. B. einem Speichermodul oder einem Mehrchipgehäuse (MCP; MOP
= multi-chip package), auch bezeichnet als Mehrchipvorrichtung.
Ein derartiges Speicherteilsystem kann eine Mehrzahl von Vorrichtungen
aufweisen, die allgemein als Chips, Halbleiterstücke bzw. -dice oder integrierten
Schaltungen (ICs; IC = integrated circuit) bezeichnet werden.
-
In
Mehrchip-Flash-Vorrichtungen kann es schwierig sein, für jeden
Chip eine separate Leitung für
ein elektrisches Signal bereitzustellen, die ein jeweiliges Chipfreigabesignal
tragen kann. So ist es unter Umständen nicht möglich, einen
einzelnen Chip unter Verwendung eines einzelnen elektrischen Signals,
wie z. B. eines separaten Chipfreigabesignals, auszuwählen. Chips
können
parallel zu einer Steuersignalleitung geschaltet sein und können durch
ein Verwenden von Befehlen und/oder Adressierungssignalen, die durch
die Chips erkannt werden, auswählbar
sein. In dem Fall eines NAND-Flash-Speichers kann ein einzelner
Chip eines Mehrchipgehäuses
durch das letzte Bit oder die letzten Bits des letzten Adresszyklus
ausgewählt werden.
-
So
besteht unter Umständen
ein Bedarf, dass jede Vorrichtung einzeln adressierbar ist. Eine eindeutige
Adresse, die sich von allen anderen Vorrichtungen in dem gleichen
Mehrchipgehäuse
oder -system unterscheidet, kann jeder Vorrichtung zugeordnet sein.
Deshalb besteht unter Umständen
ein Bedarf, ein effizientes Verfahren zum Zuweisen eindeutiger ID-Zahlen
zu den einzelnen Vorrichtungen, um die Vorrichtungen einzeln zu
adressieren, einzurichten.
-
1 zeigt
ein Flussdiagramm eines Verfahrens 10 zur Aufzählung bzw.
Zahlvergabe durch Zuweisen einer zweiten Zahl zu einer Vorrichtung
einer Mehrzahl von Vorrichtungen, wobei jede Vorrichtung der Mehrzahl
von Vorrichtungen eine unterschiedliche eindeutige erste Zahl aufweist.
Das Verfahren 10 weist einen ersten Schritt 20 eines
Vergleichens von zumindest Abschnitten eindeutiger erster Zahlen
der zumindest zwei Vorrichtungen auf. Ferner weist das Verfahren 10 einen
zweiten Schritt 30 eines Zuweisens einer zweiten Zahl zu
einer der zumindest zwei Vorrichtungen abhängig von einem Ergebnis des Vergleichs
auf.
-
Anders
ausgedrückt
weist gemäß einem Ausführungsbeispiel
der Erfindung ein Verfahren zur Aufzählung durch Zuweisen einer
zweiten Zahl zu einer Vorrichtung einer Mehrzahl von Vorrichtungen, wobei
jede Vorrichtung der Mehrzahl von Vorrichtungen eine unterschiedliche
eindeutige erste Zahl aufweist, ein Vergleichen von zumindest Abschnitten
der ersten Zahl und ein Zuweisen einer zweiten Zahl zu einer der
Mehrzahl von Vorrichtungen abhängig
von dem Ergebnis des Vergleichs auf.
-
Die
zweite Zahl könnte
als eine Adresse oder ein Adresswert eingesetzt werden, die/der
z. B. zumindest einen Abschnitt des Adressraums (z. B. die höchstwertigen
Bits, falls zutreffend) einer entsprechenden Vorrichtung in dem
System anzeigt.
-
Ausführungsbeispiele
der Erfindung können ein
Zuweisen zweiter Zahlen zu Vorrichtungen in einer effizienten, flexiblen
und verwechslungsfreien Weise ermöglichen.
-
Bei
Ausführungsbeispielen
der Erfindung enthüllt
der Vergleich von zumindest Abschnitten der ersten Zahlen eine Reihenfolge
der ersten Zahlen und die zweiten Zahlen werden den zweiten Vorrichtungen
gemäß der enthüllten Reihenfolge
zugewiesen. Bei Ausführungsbeispielen
der Erfindung werden die zweiten Zahlen in einer aufsteigenden oder absteigenden
Reihenfolge der ersten Zahlen zugewiesen.
-
Bei
Ausführungsbeispielen
der Erfindung wird der Vergleich durch ein Vergleichen von Abschnitten
der ersten Zahlen erzielt, wobei eine Vorrichtung einen Vergleich
besteht, wenn der verglichene Abschnitt eine vorbestimmte Bedingung
erfüllt. Vorrichtungen,
die den Vergleich bestehen, können an
einem nachfolgenden Vergleich teilnehmen, bei dem ein unterschiedlicher
Abschnitt der ersten Zahlen verglichen wird. Vorrichtungen, die
den Vergleich nicht bestehen, nehmen an diesem nachfolgenden Vergleich
nicht teil. Nachfolgende Vergleiche können wiederholt werden, bis
aufgrund der eindeutigen ersten Zahlen eine einzelne Vorrichtung
zurückbleibt. Die
zweite Zahl könnte
der verbleibenden Vorrichtung zugewiesen werden.
-
Dieses
Vorgehen kann wiederholt werden, bis allen Vorrichtungen eine zweite
Zahl zugewiesen wurde, wobei Vorrichtungen, denen eine zweite Zahl zugewiesen
wurde, nicht weiter teilnehmen.
-
Bei
Ausführungsbeispielen
der Erfindung könnte
die vorbestimmte Bedingung die sein, dass der verglichene Abschnitt
einen vorbestimmten Wert aufweist. Bei Ausführungsbeispielen der Erfindung kann
die Bedingung die sein, dass der Abschnitt einen Wert aufweist,
der einem Zustand einer rezessiven/dominanten Signalleitung entspricht.
-
Bei
Ausführungsbeispielen
der Erfindung weist der Vergleich einen bitweisen Vergleich der
ersten Zahlen, beginnend bei dem niedrigstwertigen Bit oder dem
höchstwertigen
Bit derselben, auf.
-
Bei
Ausführungsbeispielen
der Erfindung können
die ersten Zahlen unterschiedlicher Vorrichtungen zu einer bestimmten
Zeit vor dem Beginn des Vergleichs einer geeigneten Speicherposition
der Vorrichtungen zugeordnet, zugewiesen sein oder dort gespeichert
werden. Die ersten Zahlen können zumindest
ein Element einer vorrichtungsspezifischen Zahl, einer seriellen
Zahl, eines Identifizierers, der den Typ der Vorrichtung anzeigt,
eines Identifizierers, der den Hersteller der Vorrichtung anzeigt,
einer Waferzahl, auf der die spezifische Vorrichtung umfasst war,
einer Position der Vorrichtung auf dem Wafer, einer Zufallszahl,
einer Pseudozufallszahl, einer vorbestimmten oder einer festen Zahl
aufweisen. Erste Zahlen, die den Vorrichtungen in einem System zugeordnet
sind, können
als eindeutige Zahlen betrachtet werden, wenn sich zwei Zahlen,
die zwei unterschiedlichen Vorrichtungen zugeordnet sind, mit ausreichend
hoher Wahrscheinlichkeit voneinander unterscheiden. Anders ausgedrückt werden
zwei Zahlen oder Abschnitte von zwei Zahlen als eindeutig erachtet,
wenn die Möglichkeit,
dass zwei Zahlen gleich sind, ausreichend niedrig ist, z. B. unter
einem vorbestimmten festen Schwellenwert, wie z. B. 10–s, wobei
s eine positive Ganzzahl ist (z. B. s = 4, 6, 8, 12, 16, 20, 50
oder 100).
-
Bei
Ausführungsbeispielen
der Erfindung können
eindeutige ID-Zahlen, die auf einer Wafersortierungsebene gespeichert
sind, als die ersten Zahlen verwendet werden, derart, dass jedes
Mal, wenn das Verfahren angewendet wird, die identische Zuordnung
zwischen zweiten Zahlen und Vorrichtungen erhalten wird. Bei Ausführungsbeispielen
der Erfindung kann ein Zufallszahlgenerator oder Pseudozufallszahlgenerator
verwendet werden, um die ersten Zahlen jedes Mal zu erzeugen, wenn
das Verfahren angewendet wird, so dass die Zuordnung zwischen zweiten
Zahlen und Vorrichtungen abhängig
von den erzeugten Zufalls- oder Pseudozufallszahlen variiert.
-
Bei
Ausführungsbeispielen
der Erfindung können
die zweiten Zahlen, die den Vorrichtungen zugewiesen sind, kürzer sein
als die ersten Zahlen, die unterschiedlichen Vorrichtungen zugeordnet
sind. Bei Ausführungsbeispielen
der Erfindung können
die zweiten Zahlen verwendet werden, um die Vorrichtungen zu adressieren,
so dass die zweite Zahl eine minimale Länge aufweisen könnte, die
erforderlich ist, um es zu ermöglichen,
dass unterschiedliche zweite Zahlen jeder der Vorrichtungen der
Mehrzahl von Vorrichtungen zugewiesen werden. Dies bedeutet, dass
bei Ausführungsbeispielen
der Erfindung genau die minimale Zahl binärer Ziffern, auch Bits genannt,
für die
zweite Zahl der Vorrichtungen verwendet werden kann. In dem Fall
eines Mehrchipgehäuses
z. B., das 16 Vorrichtungen aufweist, wie z. B. einen Halbleiterstückstapel
mit 16 Halbleiterstücken, sind
im Prinzip nur vier Bits erforderlich, um jedem der 16 Halbleiterstücke eine
einzelne, in Bezug auf den Halbleiterstapel eindeutige ID-Zahl als
die zweite Zahl zuzuweisen.
-
Ausführungsbeispiele
der Erfindung können unter
Verwendung von Hardwarestrukturen, die es bereits gibt, wie z. B.
Anschlussflächen
oder Anschlüssen
zum Datenaustausch oder anderer Komponenten, wie z. B. Register,
Komparatoren, implementiert werden.
-
Bei
Ausführungsbeispielen
der Erfindung kann eine Aufzählung
unter Verwendung einer Signalleitung erhalten werden, die in dem
System sowieso vorhanden ist. Die Signalleitung kann für die Kommunikation
verwendet werden, die beim Ausführen der
Aufzählung
erforderlich ist. Nach Abschluss der Aufzählung kann die Signalleitung
während
eines normalen Betriebsmodus für
Standardaktivitäten
verwendet werden. In derartigen Ausführungsbeispielen ist keine
Implementierung einer zusätzlichen
Anschlussfläche
oder eines zusätzlichen
Anschlusses erforderlich.
-
Bei
Ausführungsbeispielen
der Erfindung kann die Signalleitung unterschiedliche Zustände annehmen,
die zumindest einen ersten Zustand und einen zweiten Zustand aufweisen.
Die Signalleitung kann den ersten Zustand aufweisen, wenn zumindest ein
Signal, das an die Signalleitung geliefert wird, diesem ersten Zustand
entspricht. Die Signalleitung kann den zweiten Zustand nur dann
aufweisen, wenn alle Signale, die an die Signalleitung geliefert
werden, dem zweiten Zustand entsprechen. Eine derartige Signalleitungsarchitektur
wird auch als eine dominante/rezessive Signalleitungsarchitektur
bezeichnet, wobei der zweite Zustand rezessiver Zustand genannt
wird, während
der erste Zustand als der dominante Zustand bezeichnet wird. In
Ausführungsbeispielen
der Erfindung kann ein Vergleichen von zumindest den Abschnitten
der ersten Zahlen ein Bereitstellen von Signalen, die die zumindest
Abschnitte der ersten Zahlen anzeigen, an die Signalleitung und ein
Erfassen des Zustands der Signalleitung umfassen. Wenn der erfasste
Zustand und das bereitgestellte Signal nicht übereinstimmen, wird der Vergleich
nicht bestanden. Andernfalls wird der Vergleich bestanden.
-
Ausführungsbeispiele
der Erfindung können NAND-Flash-Speichervorrichtungen
aufweisen, bei denen die so genannte Ready/Busy- bzw. Bereit/Besetzt-Signalleitung
(R/B-Signalleitung) als die Signalleitung zur Durchführung des
Vergleichs verwendet werden kann, ohne zusätzliche Anschlussflächen oder
Anschlüsse
hinzuzufügen
und ohne das Verhalten während
eines normalen Betriebsmodus zu beeinflussen.
-
Bei
Ausführungsbeispielen
der Erfindung können
die Vorrichtungen eines Systems, wie z. B. eines Mehrchipgehäuses, angepasst
sein, um das Verfahren im Wesentlichen unabhängig durchzuführen, so
dass mögliche
externe Unterstützung
durch einen externen Host, wie z. B. eine Speichersteuerung, falls überhaupt
vorhanden, minimal sein kann. Bei Ausführungsbeispielen kann der Host
unter Umständen
die Selbstaufzählung
nur starten und/oder stoppen, was zu einer hervorragenden Rückwärtskompatibilität führt. Ausführungsbeispiele
der Erfindung können
ohne Veränderung
eines externen Steuersystems implementiert sein.
-
2a zeigt
ein schematisches Blockdiagramm einer Vorrichtung gemäß einem
Ausführungsbeispiel
der Erfindung. Die Vorrichtung aus 2a ist in
ihrer Gesamtheit mit 200 bezeichnet. Die Vorrichtung 200 weist
eine erste Speicherposition 210 auf, die in der Lage ist,
eine erste Zahl 212 zu speichern. Die Vorrichtung 200 weist
eine zweite Speicherposition 220 auf, die in der Lage ist,
eine zweite Zahl zu speichern. Ferner weist die Vorrichtung 200 einen Schaltungsaufbau 230 auf,
der mit der ersten Speicherposition 210 gekoppelt ist,
um von der ersten Speicherposition 210 zumindest einen
Abschnitt 232 der ersten Zahl 212 der Vorrichtung 200 zu
empfangen. Der Schaltungsaufbau 230 ist außerdem angepasst,
um zumindest einen Abschnitt 234 der ersten Zahl, die einer
weiteren Vorrichtung zugeordnet ist (hier nicht gezeigt), zu empfangen.
-
Der
Schaltungsaufbau 230 ist mit der zweiten Speicherposition 220 gekoppelt
und ist angepasst, um zumindest einen Abschnitt der ersten Zahl 212,
die an der ersten Speicherposition 210 gespeichert ist,
mit zumindest einem Abschnitt der unterschiedlichen ersten Zahl,
die der anderen Vorrichtung zugeordnet ist, zu vergleichen. Außerdem ist
der Schaltungsaufbau 230 angepasst, um die zweite Zahl 222 der
Vorrichtung basierend auf dem Ergebnis des Vergleichs zuzuweisen.
-
Bei
einem Ausführungsbeispiel
kann der Schaltungsaufbau 230 z. B. angepasst sein, um
von der ersten Speicherposition 210 zumindest einen Abschnitt
der ersten Zahl 212 zu empfangen. Bei einem weiteren Ausführungsbeispiel
kann der Schaltungsaufbau 230 die vollständige erste
Zahl 212 empfangen. Außerdem
kann der Schaltungsaufbau 230 z. B. angepasst sein, um
z. B. von einer anderen Vorrichtung einen Abschnitt einer ersten
Zahl, die der anderen Vorrichtung zugeordnet ist, oder die vollständige erste
Zahl, die der anderen Vorrichtung zugeordnet ist, zu empfangen.
Der Schaltungsaufbau 230 kann ferner abhängig von
der tatsächlichen
Implementierung die Abschnitte der ersten Zahlen der ersten Vorrichtung
und der anderen Vorrichtung vergleichen, oder die vollständigen ersten
Zahlen der Vorrichtungen. Abhängig
von dem Ergebnis des Vergleichs kann der Schaltungsaufbau 230 eine
Information an die zweite Speicherposition 220 liefern,
um die zweite Zahl 222 an der zweiten Speicherposition 220 zu speichern.
-
Die
Vorrichtung 200 ermöglicht
eine effiziente Zuweisung der zweiten Zahl 222 zu der Vorrichtung 200.
Gemäß einem
Ausführungsbeispiel
kann eine quantitative Beziehung zwischen der ersten Zahl, die der
Vorrichtung 200 zugeordnet ist, und einer anderen ersten
Zahl, die einer anderen Vorrichtung zugeordnet ist, ausgewertet
werden, um die zweite Zahl 222 der Vorrichtung 200 zu
bestimmen. So wird, wenn die Vorrichtung 200 in Kombination
mit der anderen Vorrichtung betrieben wird, die zweite Zahl 222,
die der Vorrichtung 200 zugewiesen ist, nicht willkürlich oder
unabhängig
von anderen Vorrichtungen ausgewählt,
sondern in Abhängigkeit
von der ersten Zahl (oder einem Abschnitt derselben), die der anderen
Vorrichtung zugeordnet ist.
-
Folglich
kann die zweite Zahl 222 eine Beziehung zwischen der Vorrichtung 200 und
der anderen Vorrichtung definieren und kann ferner zum Adressieren
verwendet werden. Außerdem
können,
wenn die andere Vorrichtung (nicht gezeigt) die gleichen Einrichtungen
aufweist wie die Vorrichtung 200 (z. B. eine erste Speicherposition,
die mit der ersten Speicherposition 210 der Vorrichtung 200 vergleichbar
ist, einen Schaltungsaufbau, der mit dem Schaltungsaufbau 230 der
Vorrichtung 200 vergleichbar ist, und eine zweite Speicherposition,
die mit der zweiten Speicherposition 220 der Vorrichtung 200 vergleichbar
ist), unterschiedliche zweite Zahlen der Vorrichtung 200 und
der anderen Vorrichtung zugewiesen werden. In einem derartigen Fall
können
die zweiten Zahlen, die der Vorrichtung 200 und der anderen
Vorrichtung zugeordnet sind, zum Identifizieren oder Adressieren
der Vorrichtungen verwendet werden.
-
Es
soll jedoch angemerkt werden, dass die vorliegende Erfindung kein
Vorliegen zweier strukturmäßig identischer
Vorrichtungen (mit unterschiedlichen ersten Zahlen) erforderlich
macht. Vielmehr ist es ausreichend, eine einzelne Vorrichtung 200 zu
haben, wenn z. B. die Vorrichtung 200 in der Lage ist, die
erste Zahl 234 (oder einen Abschnitt derselben) von einer
anderen Vorrichtung zu erhalten.
-
Unterschiedliche
Speichertypen können
zum Speichern der ersten Zahl 212 und der zweiten Zahl 222 verwendet
werden. Bei einem Ausführungsbeispiel
kann die erste Speicherposition 210 einen Nur-Lese-Speicher
aufweisen. Bei anderen Ausführungsbeispielen
kann die erste Speicherposition 210 als ein einmal beschreibbarer,
mehrfach lesbarer Speicher (WORM-Speicher; WORM = write-once-read-multiple)
oder als ein überschreibbarer
Speicher implementiert sein. Die erste Speicherposition 210 kann
abhängig
von bestimmten Implementierungsanforderungen als ein flüchtiger
oder nichtflüchtiger
Speicher implementiert sein.
-
Die
zweite Speicherposition 220 kann z. B. als ein einmal beschreibbarer,
mehrfach lesbarer Speicher oder als ein überschreibbarer Speicher implementiert
sein. Bei einigen Ausführungsbeispielen kann
eine Direktzugriffsspeicherstruktur verwendet werden, um die zweite
Speicherposition 220 zu implementieren. Allgemein ausgedrückt können sowohl flüchtige als
auch nichtflüchtige
Speicherstrukturen zur Implementierung der zweiten Speicherposition 220 verwendet
werden.
-
2b zeigt
ein Blockdiagramm eines Ausführungsbeispiels
der Erfindung in der Form eines Systems 280, das zwei oder
mehr Vorrichtungen 200 aufweist. Gleichen Einrichtungen
oder Signalen sind in den 2a und 2b die
gleichen Bezugszeichen zugewiesen. Jede der Vorrichtungen 200 weist eine
erste Speicherposition 210, eine zweite Speicherposition 220 und
einen Schaltungsaufbau 230 auf. Die erste Speicherposition 210 ist
in der Lage, eine erste Zahl der Vorrichtung zu speichern, und die zweite
Speicherposition 220 ist in der Lage, eine zweite Zahl
der jeweiligen Vorrichtung 200 zu speichern. Diese Speicherpositionen
können
in unterschiedlichen Speichern oder in dem gleichen Speicher implementiert
sein. Die Speicherpositionen können
unter Verwendung unterschiedlicher Speichertechnologien implementiert
sein. Die erste Speicherposition 210 kann als ein Nur-Lese-Speicher
(ROM), ein einmal beschreibbarer, mehrfach lesbarer Speicher (WORM),
ein nichtflüchtiger
Speicher oder ein flüchtiger
Speicher, wie z. B. ein Direktzugriffsspeicher (RAM), implementiert
sein. Die zweite Speicherposition kann unter Verwendung der gleichen
Speichertechnologien, mit Ausnahme der ROM-Technologie, implementiert
sein. Eine WORM-Speicherposition kann z. B. eine Speicherposition
auf Sicherungsbasis sein, während
eine nichtflüchtige
Speicherposition z. B. auf einer Flash-Speichertechnik basieren kann.
-
Die
unterschiedlichen Vorrichtungen 200 sind elektrisch miteinander über zumindest
eine Signalleitung 290 gekoppelt.
-
Die
Vorrichtungen 200 können
in der Lage sein, die ersten Zahlen oder Abschnitte der ersten Zahlen,
die an der ersten Speicherposition 210 gespeichert sind, über die
Signalleitung 290 zu übertragen.
Die Vorrichtungen 200 können
in der Lage sein, die empfangenen ersten Zahlen (oder die Abschnitte derselben)
zu empfangen und optional zu speichern. Der Schaltungsaufbau 230 kann
in der Lage sein, einen Vergleich der ersten Zahlen durchzuführen. Ferner
kann jeder der Schaltungsaufbauten 230 angepasst sein,
um der zugeordneten Vorrichtung eine jeweilige zweite Zahl zuzuweisen.
Die zweite Zahl kann an der jeweiligen zweiten Speicherposition 220 gespeichert
sein.
-
Der
Vergleich könnte
auf einem Vergleichen einzelner Bits, Halbbytes (4 Bits), Bytes
(8 Bits), Wörter
(typischerweise 16, 32, 48 oder 64 Bits) oder einer anderen Zahl
von Bits oder binärer
Ziffern basieren.
-
Bei
einem Ausführungsbeispiel
der Erfindung könnten
die Schaltungsaufbauten 230 der Vorrichtungen 200 einfach
die ersten Zahlen miteinander vergleichen und die zweiten Zahlen
entsprechend zuweisen. Insbesondere könnten die Schaltungsaufbauten 230 eine
Reihenfolge der Vorrichtungen 200 basierend auf den ersten
Zahlen bestimmen und die zweiten Zahlen entsprechend zuweisen.
-
Bei
einem Ausführungsbeispiel
der Erfindung ist jeder Schaltungsaufbau 230 angepasst,
um einen Abschnitt der ersten Zahl der zugeordneten Vorrichtung 200 mit
entsprechenden Abschnitten der ersten Zahlen der anderen Vorrichtungen
zu vergleichen, indem bestimmt wird, ob der Abschnitt der ersten
Zahl eine Bedingung erfüllt.
Wenn der Abschnitt der ersten Zahl die Bedingung erfüllt, besteht
die zugeordnete Vorrichtung den Vergleich und nimmt an einem nachfolgenden
Vergleich eines nächsten
unterschiedlichen Abschnitts der ersten Zahlen teil. Diese Prozedur
kann mit jeweiligen unterschiedlichen Abschnitten der ersten Zahlen
wiederholt werden, bis eine einzelne Vorrichtung zurückbleibt.
Die zweite Zahl kann der verbleibenden Vorrichtung zugewiesen werden.
Dann kann die gesamte Prozedur eines Zuweisens einer zweiten Zahl
zu einer der Vorrichtungen (eine Runde) wiederholt werden (ohne
diejenigen Vorrichtungen, denen bereits eine zweite Zahl zugewiesen
wurde), bis allen Vorrichtungen eine zweite Zahl zugewiesen wurde.
-
Bei
Ausführungsbeispielen
der Erfindung kann die zweite Zahl der Anzahl von Runden entsprechen,
an denen die zugeordnete Vorrichtung teilgenommen hat. Bei Ausführungsbeispielen
der Erfindung kann die Vorrichtung 200 einen Zähler 292 zum Zählen der
Anzahl von Runden aufweisen. Die zweite Zahl kann dann einfach auf
dem Zählwert
des Zählers 292 basieren.
-
Bei
Ausführungsbeispielen
der Erfindung kann der Schaltungsaufbau 230 der Vorrichtung 200, die
die letzte Runde gewonnen hat, d. h. der bei der letzten Runde eine
zweite Zahl zugewiesen wurde, ein Neustartsignal an diejenigen Vorrichtungen 200 liefern,
denen noch keine zweite Zahl zugewiesen wurde, um die nächste Runde
neu zu starten. Bei Ausführungsbeispielen
der Erfindung könnte
die Bedingung, mit der der jeweilige Abschnitt der ersten Zahl verglichen
wird, der Zustand einer dominanten/rezessiven Signalleitung sein.
So kann die Signalleitung 290 die Vorrichtungen 200 in
einer Architektur einer dominanten/rezessiven Signalleitung verbinden.
Wenn das dominante Signalbit gleich 0 ist (niedrig, L), wird die
Signalleitungsarchitektur auch als eine „Verdrahtetes-UND-Architektur" bezeichnet, da ein
einzelnes Signal 0 die Signalleitung 290 auf 0 treibt.
Wenn das dominante Bit eine 1 ist, wird die Signalleitungsarchitektur
auch als „Verdrahtetes-ODER-Architektur" bezeichnet.
-
Im
Folgenden werden Ausführungsbeispiele der
Erfindung in Verbindung mit einer Selbstaufzählung von Chips in einem Mehrchipgehäuse unter
Verwendung einer Architektur einer dominanten und rezessiven Signalleitung
beschrieben. Ausführungsbeispiele
der Erfindung sind unter Bezugnahme auf die NAND-Flash-Technologie
beschrieben, wobei die R/B-Signalleitung
(Bereit/Besetzt-Signalleitung), die in dieser Technologie sowieso
vorliegt, als eine dominante/rezessive Signalleitung betrieben wird.
-
Im
Folgenden ist ein möglicher
Mechanismus zum Vergleichen zweier Zahlen (oder Abschnitte derselben)
beschrieben, der bei einigen Ausführungsbeispielen der Erfindung
verwendet werden kann, um zwei oder mehr Zahlen (oder Abschnitte derselben)
zu vergleichen.
-
Dieses
Konzept basiert auf der Durchführung
einer oder mehrerer Verdrahtetes-UND-Operationen oder Verdrahtetes-ODER-Operationen
unter Verwendung einer „gemeinsamen" Signalleitung, die mit
einer Mehrzahl von Treibern verbunden ist. Um das Verständnis des
Konzepts zu erleichtern, werden zuerst mehrere Hardwarestrukturen
unter Bezugnahme auf die 3–6 beschrieben,
die zur Implementierung einer Verdrahtetes-UND-Operation oder einer
Verdrahtetes-ODER-Operation
verwendet werden können.
-
3 zeigt
ein schematisches Blockdiagramm einer Vorrichtungsanordnung zum
Implementieren einer Verdrahtetes-UND-Operation oder einer Verdrahtetes-ODER-Operation.
Die Vorrichtungsanordnung aus 3 ist in
ihrer Gesamtheit mit 300 bezeichnet. Die Vorrichtungsanordnung 300 weist
eine gemeinsame Signalleitung 310 und z. B. drei Vorrichtungen 320, 330, 340 auf,
die mit der gemeinsamen Signalleitung 310 gekoppelt sind.
Jede der Vorrichtung 320, 330, 340 weist
einen entsprechenden Steuerschaltungsaufbau 322, 332, 342,
einen entsprechenden Treiber 324, 334, 344 und
einen entsprechenden Empfänger
oder Eingangspuffer 326, 336, 346 auf.
-
Im
Folgenden ist die erste Vorrichtung 320 detaillierter beschrieben,
die Beschreibung trifft jedoch ebenso auf die zweite Vorrichtung 330 und
die dritte Vorrichtung 340 zu. Der Treiber 324 ist
zwischen einen Ausgang des Steuerschaltungsaufbaus 322 und
die gemeinsame Signalleitung 310 geschaltet. Der Treiber 324 ist
z. B. konfiguriert, um die Signalleitung 310 auf einen
dominanten Wert (z. B. auf einen dominanten elektrischen Pegel)
oder einen rezessiven Wert (z. B. auf einen rezessiven elektrischen
Pegel) zu treiben, und zwar in Abhängigkeit von Daten, die von
dem Steuerschaltungsaufbau 320 an die gemeinsame Signalleitung 310 ausgegeben werden
sollen. Der Treiber 324 könnte z. B. konfiguriert sein,
um eine große
Treiberstärke
anzuwenden, wenn die gemeinsame Signalleitung 310 auf den
dominanten Wert getrieben wird. Er könnte ferner konfiguriert sein,
um eine kleine Treiberstärke
anzuwenden, wenn die gemeinsame Signalleitung auf einen rezessiven
Wert getrieben wird. Der Treiber könnte z. B. eine erste Stromtreiberfähigkeit,
um die gemeinsame Signalleitung auf den dominanten Wert zu treiben,
und eine zweite Stromtreiberfähigkeit,
um die gemeinsame Signalleitung 310 auf den rezessiven Wert
zu treiben, aufweisen, wobei die zweite Stromtreiberfähigkeit
größer ist
als die erste Stromtreiberfähigkeit.
-
Alternativ
könnte
der Treiber 324 konfiguriert sein, um die gemeinsame Signalleitung 310 auf
den dominanten Wert zu treiben und die Signalleitung offen zu lassen,
wenn erwünscht
ist, den rezessiven Wert an die gemeinsame Signalleitung 310 auszugeben.
-
Der
Empfänger 326 könnte z.
B. konfiguriert sein, um einen tatsächlichen Wert zu empfangen,
der auf der gemeinsamen Signalleitung 310 vorliegt, und um
eine Information über
den tatsächlichen
Wert, der auf der gemeinsamen Signalleitung 310 vorliegt,
an den Steuerschaltungsaufbau 322 zu liefern.
-
Es
soll angemerkt werden, dass der tatsächliche Wert, der auf der gemeinsamen
Signalleitung 310 vorhanden ist, sich von dem Wert unterscheiden kann,
der durch den Treiber 324 an die gemeinsame Signalleitung 310 ausgegeben
oder bereitgestellt wird. Wenn z. B. der Treiber 324 der
ersten Vorrichtung den rezessiven Wert an die gemeinsame Signalleitung 310 ausgibt,
könnte
ein Treiber 334, 344 einer anderen Vorrichtung 330, 340 den
dominanten Wert an die gemeinsame Signalleitung 310 ausgeben.
In diesem Fall könnte
dennoch die gemeinsame Signalleitung 310 den dominanten
Wert annehmen und der Empfänger 326 könnte deshalb
einen Wert empfangen, der sich von dem Wert unterscheidet, der durch den
Treiber 324 an die gemeinsame Signalleitung ausgegeben
wird.
-
Um
Obiges zusammenzufassen, kann angegeben werden, dass die gemeinsame
Signalleitung 310 den dominanten Wert jedes Mal annehmen kann,
wenn zumindest eine der Vorrichtungen 320, 330, 340,
die mit der gemeinsamen Leitung 310 verbunden sind, den
dominanten Wert an die gemeinsame Signalleitung 310 ausgibt.
Bei einem Ausführungsbeispiel
nimmt die gemeinsame Signalleitung 310 nur den rezessiven
Wert an, wenn alle Vorrichtungen 320, 330, 340,
die mit der gemeinsamen Signalleitung 310 verbunden sind,
den rezessiven Wert an die gemeinsame Signalleitung 310 ausgeben
oder ihr jeweiligen Treiber 324, 334, 344 deaktiviert
haben.
-
Bei
einem Ausführungsbeispiel
kann die gemeinsame Signalleitung 310 konfiguriert sein,
um den rezessiven Wert zu tragen, wenn keine der Vorrichtungen,
die mit der gemeinsamen Signalleitung 310 verbunden sind,
den dominanten Wert ausgibt, und zwar durch ein Vorspannelement 350.
Das Vorspannelement 350 kann z. B. einen Widerstand aufweisen.
-
4 zeigt
ein schematisches Blockdiagramm einer Schaltungsanordnung, die eine
Verdrahtetes-UND-Operation implementiert, die eine gemeinsame Signalleitung
nutzt. Die Schaltungsanordnung aus 4 ist in
ihrer Gesamtheit mit 400 bezeichnet. Die Schaltungsanordnung 400 weist
eine gemeinsame Signalleitung 410 auf, die mit drei Schaltungsblöcken oder
Vorrichtungen 420, 430, 440 gekoppelt
ist. Ferner ist die gemeinsame Signalleitung 410 z. B. über einen
Widerstand 450 mit einem Versorgungspotential V gekoppelt.
Das Versorgungspotential V könnte
z. B. in Bezug auf ein Referenzpotential GND positiv sein. Die Vorrichtungen 420, 430, 440,
die mit der gemeinsamen Signalleitung 410 gekoppelt sind,
weisen jeweilige Steuerschaltungsaufbauten 422, 432, 442 auf.
Ferner weisen die Vorrichtungen 420, 430, 440 als
Treiber entsprechende NMOS-Feldeffekttransistoren 424, 434, 444 auf,
die in einer Open-Drain-Konfiguration
betrieben werden. Zuerst die erste Vorrichtung 420 betrachtend
ist ein Sourceanschluss des NMOS-Transistors 424 mit dem
Referenzpotential GND gekoppelt. Ein Drain-Gate-Anschluss des NMOS-Transistors 424 ist mit
einem Ausgang der Steuerlogik 424 gekoppelt und ein Drainanschluss
des NMOS-Transistors 424 ist mit der gemeinsamen Signalleitung 410 gekoppelt. Ähnliche
Konfigurationen treffen auf die anderen Vorrichtungen 430, 440 zu,
wie aus 4 zu sehen ist. Ferner wird
der Signalpegel, der an der gemeinsamen Signalleitung 410 vorliegt,
durch die jeweiligen Steuerschaltungen 422, 432, 442 erfasst
(z. B. unter Verwendung eines Signalempfängers oder Eingangspuffers).
-
Bezüglich der
Funktionalität
wird angenommen, dass der Widerstand 450 ausreichend groß ist, so
dass die gemeinsame Signalleitung 410 durch die Aktivierung
eines einzelnen der NMOS-Transistoren 424, 434, 444 auf
ein Potential nahe dem Referenzpotential GND getrieben werden kann.
So wird, wenn zumindest einer der NMOS-Transistoren 424, 434, 444 aktiviert
oder angeschaltet wird, das Potential der gemeinsamen Signalleitung 410 auf
einen Pegel gezogen, der nahe dem Referenzpotential GND ist. Nur
wenn alle NMOS-Transistoren 424, 434, 444 deaktiviert
oder abgeschaltet werden, wird der Pegel auf der gemeinsamen Signalleitung 410 durch
den Widerstand 450 auf einen Wert gezogen, der nahe an dem
Versorgungspotential VCC ist.
-
5 zeigt
ein schematisches Blockdiagramm einer Vorrichtung gemäß einem
Ausführungsbeispiel
der Erfindung. Die Vorrichtung aus 5 ist in
ihrer Gesamtheit mit 500 bezeichnet. Die Vorrichtung 500 weist
eine Steuerschaltung 522, eine Treiberschaltung 524 und
eine Empfängerschaltung
oder einen Eingangspuffer 526 auf. Der Treiber 524 ist konfiguriert,
um einen Kopplungsknoten 550, der mit einer gemeinsamen
Signalleitung (z. B. einer Bereit/Besetzt-Leitung) 560 gekoppelt sein
kann, in Richtung eines Referenzpotentials GND oder in Richtung
eines Versorgungspotentials VCC zu ziehen.
-
Zu
Erläuterungszwecken
wird ein Potential, das nahe an dem Referenzpotential GND ist (oder näher an dem
Referenzpotential GND als an dem Versorgungspotential VCC), im Folgenden
als Darstellung eines dominanten Werts betrachtet. Ein Potential,
das nahe an dem Versorgungspotential VCC ist (oder näher an dem
Versorgungspotential VCC als an dem Referenzpotential GND), wird
im Folgenden als Darstellung eines rezessiven Werts betrachtet. Andere
Definitionen des dominanten und des rezessiven Potentials sind jedoch
möglich
und klar innerhalb des Schutzbereichs der Erfindung.
-
Die
Treiberschaltung 524 weist einen Rezessiver-Wert-Treiber 570 und
einen Dominanter-Wert-Treiber 572 auf. Der Rezessiver-Wert-Treiber 570 könnte z.
B. einen Transistor (z. B. einen PMOS-Feldeffekttransistor) aufweisen,
der zwischen das Versorgungspotential VCC und den Kopplungsknoten 550 geschaltet
ist.
-
Ein
Eingangsanschluss oder Steueranschluss des Rezessiver-Wert-Treibers 570 kann
z. B. mit der Steuerschaltung 522 gekoppelt sein.
-
Der
Dominanter-Wert-Treiber 572 kann z. B. einen Transistor
(z. B. einen NMOS-Feldeffekttransistor) aufweisen, der zwischen
das Referenzpotential GND und den Kopplungsknoten 550 geschaltet
ist. Ein Eingangsanschluss oder Steueranschluss des Rezessiver-Wert-Treibers 572 kann
z. B. mit der Steuerschaltung 522 gekoppelt sein.
-
Ferner
kann bei einem Ausführungsbeispiel der
Dominanter-Wert-Treiber 572 konfiguriert
sein, um in einem eingeschalteten Zustand einen größeren Strom
bereitzustellen als der Rezessiver-Wert-Treiber 570. Bei
einem Ausführungsbeispiel könnte der
Dominanter-Wert-Treiber 572 sogar konfiguriert sein, um
in einem Aus-Zustand einen Strom bereitzustellen, der zweimal größer ist
als ein Strom, der durch den Rezessiver-Wert-Treiber 570 in
dem An-Zustand bereitgestellt wird.
-
Bei
einem Ausführungsbeispiel
kann der Transistor des Rezessiver-Wert-Treibers 570, der zwischen
den Kopplungsknoten 550 und das Versorgungspotential VCC
geschaltet ist, ein kleiner Transistor sein, z. B. „kleiner" als der Transistor
des Dominanter-Wert-Treibers 572, der zwischen das Referenzpotential
GND und den Kopplungsknoten 550 geschaltet ist. In dem
Fall von Feldeffekttransistoren z. B. kann eine effektive Kanalbreite
des Transistors des Rezessiver-Wert-Treibers 570 kleiner
sein als eine effektive Kanalbreite des Transistors des Dominanter-Wert-Treibers.
-
Natürlich können der
Rezessiver-Wert-Treiber 570 und der Dominanter-Wert-Treiber 572 auch Bipolartransistoren
aufweisen, die zwischen den Kopplungsknoten 550 und das
Referenzpotential oder das Versorgungspotential geschaltet sind.
-
Die
Steuerschaltung 522 könnte
z. B. konfiguriert sein, um inverse Steuersignale an die Eingangsanschlüsse oder
Steueranschlüsse
des Rezessiver-Wert-Treibers 570 und des Dominanter-Wert-Treibers 572 zu
liefern. Die Steuerschal tung 522 könnte z. B. konfiguriert sein,
um den Rezessiver-Wert-Treiber 570 zu
aktivieren (d. h. anzuschalten), wenn der Dominanter-Wert-Treiber 572 deaktiviert
(d. h. abgeschaltet) ist. Die Steuerschaltung 522 kann
ferner konfiguriert sein, um den Rezessiver-Wert-Treiber 570 zu
deaktivieren, wenn der Dominanter-Wert-Treiber 572 aktiviert
ist. In diesem Betriebsmodus wird entweder der Rezessiver-Wert-Treiber 570 oder
der Dominanter-Wert-Treiber 572 aktiviert. So wird der
Kopplungsknoten 550 entweder über den Rezessiver-Wert-Treiber 570 in Richtung
des Versorgungspotentials VCC gezogen oder über den Dominanter-Wert-Treiber 572 in
Richtung des Referenzwerts GND gezogen. Es könnte jedoch wahlweise einen
Betriebszustand geben, in dem sowohl der Rezessiver-Wert-Treiber 570 als auch
der Dominanter-Wert-Treiber 572 deaktiviert sind.
In diesem Fall „gibt" die Treiberschaltung 524 den
Kopplungsknoten 550 „frei" (d. h. zieht weder den
Kopplungsknoten in Richtung des Versorgungspotentials VCC noch in
Richtung des Referenzpotentials GND). Anders ausgedrückt lässt die
Treiberschaltung 524 den Kopplungsknoten floaten, unter der
Voraussetzung, dass parasitäre
Effekte vernachlässigt
werden. Natürlich
kann das Potential des Kopplungsknotens in diesem Zustand durch
andere Vorrichtungen beeinflusst werden, die mit dem Kopplungsknoten
gekoppelt sind, z. B. durch Schaltungen außerhalb der Vorrichtung 500.
-
Der
Empfänger 526 ist
konfiguriert, um ein Potential von dem Kopplungsknoten 550 zu
empfangen und einen Ausgangswert auf der Basis des Potentials des
Kopplungsknotens 550 an die Steuerschaltung 522 zu
liefern. Das durch den Empfänger 526 bereitgestellte
Signal könnte
als ein R/B-Auslesesignal betrachtet werden.
-
Es
wird hier darauf verwiesen, dass es auch andere Betriebsmodi geben
könnte.
Es könnte
z. B. einen Betriebsmodus geben, in dem der Rezessiver-Wert-Treiber 570 deaktiviert
ist, während
der Eingangsanschluss oder Steueranschluss des Dominanter-Wert-Treibers 572 mit
einem Be reit/Besetzt-Signal verbunden ist. Auf diese Weise kann
der Dominanter-Wert-Treiber 572 wieder verwendet werden,
um ein Bereit/Besetzt-Signal an die gemeinsame Signalleitung 560 zu
liefern. Auf diese Weise kann die gemeinsame Signalleitung 560 sowohl
für eine
Vorrichtungsaufzählung
als auch für
eine Übertragung
eines Bereit/Besetzt-Zustands wieder verwendet werden. Während bei
einem Ausführungsbeispiel
nur der Dominanter-Wert-Treiber 572 zum Treiben des Bereit/Besetzt-Zustands
auf die gemeinsame Signalleitung 560 verwendet werden kann,
könnten
jedoch sowohl der Rezessiver-Wert-Treiber 570 als auch
der Dominanter-Wert-Treiber 572 zur Vorrichtungsaufzählung verwendet
werden, wie im Folgenden detaillierter beschrieben ist.
-
Es
soll hier angemerkt werden, dass ein Transistor, der zwischen das
Versorgungspotential VCC und den Kopplungsknoten 550 in
dem Rezessiver-Wert-Treiber geschaltet ist, als ein „Bit-1-Transistor" zum Treiben eines
rezessiven Bits (Bit 1) betrachtet werden könnte. Ferner kann ein Transistor, der
zwischen das Referenzpotential GND und den Kopplungsknoten 550 geschaltet
ist, als ein „Bit-0-Transistor" zum Treiben des
dominanten Bits des Bereit/Besetzt-Signals (R/B-Signals) betrachtet werden.
Ferner wird darauf verwiesen, dass die Vorrichtung 500 z.
B. auf einem Flash-Halbleiterstück implementiert
sein kann. Die Vorrichtung 500 kann jedoch natürlich auf
anderen integrierten Schaltungen oder in Kombination mit anderen
Schaltungen oder Speichertechnologien implementiert sein.
-
Im
Folgenden wird angenommen, dass eine Mehrzahl von Vorrichtungen 500 (d.
h. zumindest zwei Vorrichtungen 500) mit einer gemeinsamen
Signalleitung gekoppelt ist. Zum Beispiel können drei Vorrichtungen 320, 330 und 340 oder
zumindest zwei der Vorrichtungen 320, 330, 340 durch
eine entsprechende Vorrichtung 500 ersetzt werden. Im Folgenden
ist ein mögliches
Signal, das auf der gemeinsamen Signalleitung 310 (auch
als „Entscheidungsleitung" bezeichnet) bei
einem Ausführungsbeispiel
der Erfindung vorliegen kann, unter Bezugnahme auf 6 beschrieben.
-
6 zeigt
eine graphische Darstellung von Signalen. Eine erste graphische
Darstellung 610 zeigt ein Signal, das durch die erste Vorrichtung 320 auf
die gemeinsame Leitung 310 getrieben werden soll. Eine
Abszisse 612 beschreibt die Zeit und eine Ordinate 614 beschreibt
den Signalwert, der durch den Treiber 324 an die gemeinsame
Signalleitung ausgegeben oder getrieben werden soll (kann durch einen
Treiber 524 implementiert sein, wie in 5 gezeigt
ist). Das in der ersten graphischen Darstellung 610 gezeigte
Signal kann durch die Steuerschaltung 322 bereitgestellt
werden (die durch die Steuerschaltung 522, die in 5 gezeigt
ist, implementiert sein kann). Eine zweite graphische Darstellung 620 zeigt
ein Signal, das durch den Treiber 334 der zweiten Vorrichtung 330 an
die gemeinsame Signalleitung ausgegeben oder getrieben werden soll.
Eine Abszisse 622 beschreibt die Zeit und eine Ordinate 624 beschreibt
den Signalwert, der durch den Treiber 334 der zweiten Vorrichtung 330 bereitgestellt
werden soll. Eine dritte graphische Darstellung 630 beschreibt
einen tatsächlichen
Signalwert der gemeinsamen Signalleitung 310. Eine Abszisse 632 beschreibt
die Zeit und eine Ordinate 634 beschreibt den Signalwert.
-
Wie
aus 6 zu sehen ist, werden vor einer Zeit t1 sowohl der Treiber 324 der ersten
Vorrichtung 320 als auch der Treiber 334 der zweiten
Vorrichtung 330 gesteuert, um die gleichen Signalmuster
auf die gemeinsame Signalleitung 310 zu treiben. Zwischen Zeiten
t1 und t2 jedoch
wird der Treiber 324 der ersten Vorrichtung 320 gesteuert,
um einen dominanten Wert (z. B. einen logischen Wert „0") auf die gemeinsame
Signalleitung 310 zu treiben, während der Treiber 334 der
zweiten Vorrichtung 330 gesteuert wird, um einen rezessiven
Wert (z. B. einen logischen Wert „1") auf die gemeinsame Signalleitung 310 zu
treiben. Während
der Wert der Signalleitung 310, der in der dritten graphischen Darstellung 630 gezeigt
ist, die Werte darstellt, die durch beide Treiber 324, 334 der
ersten Vorrichtung 320 und der zweiten Vorrichtung 330 vor
der Zeit t1 auf die gemeinsame Signalleitung 310 getrieben
werden sollen, nimmt die Signalleitung 310 zwischen den
Zeiten t1 und t2 den
dominanten Wert (z. B. den logischen Wert „0") an. Anders ausgedrückt nimmt die gemeinsame Signalleitung 310 zwischen
t1 und t2 den dominanten
Wert an, obwohl der Treiber 334 der zweiten Vorrichtung 330 gesteuert
wird, um den rezessiven Wert auf die gemeinsame Signalleitung 310 zu
treiben. Nach t2 wird der Treiber 334 der
zweiten Vorrichtung 330 gesteuert, um deaktiviert zu werden.
Sowohl der Rezessiver-Wert-Treiber 570 als auch der Dominanter-Wert-Treiber 572 des
Treibers 330 z. B. könnten deaktiviert
sein. Folglich nimmt die gemeinsame Signalleitung 310 nach
der Zeit t2 den Wert an, der durch den Treiber 324 der
ersten Vorrichtung 320 getrieben wird.
-
Anders
ausgedrückt
könnte
man sagen, dass die zweite Vorrichtung 330 die gemeinsame
Signalleitung 310 „freigibt", indem sie in einen
Hochimpedanz-(High-Z-)Zustand eintritt.
-
Obiges
zusammenfassend können
die Vorrichtungen 320, 330, 340, 420, 430, 440, 500 z.
B. die folgenden Fähigkeiten
aufweisen:
- • Treiben
eines dominanten Werts auf die gemeinsame Signalleitung 310, 410, 560,
z. B. durch Aktivieren des Dominanter-Wert-Treibers 424, 434, 444, 572;
- • Treiben
eines rezessiven Werts auf die gemeinsame Signalleitung 310, 410, 560,
z. B. durch Deaktivieren des Dominanter-Wert-Treibers 424, 434, 444, 572 und
durch (optionales) Aktivieren des Rezessiver-Wert-Treibers 570;
und
- • Freigeben
der gemeinsamen Signalleitung 310, 410, 560,
- z. B. durch Deaktivieren sowohl des Dominanter-Wert-Treibers 424, 434, 444, 572 als
auch des Rezessiver-Wert-Treibers 570;
und
- • Lesen
des Status der gemeinsamen Signalleitung 310, 410, 560,
z. B. unter Verwendung der Empfänger 326, 336, 346, 526.
-
Es
soll angemerkt werden, dass die oben beschriebenen Funktionalitäten in einer
unterschiedlichen Weise implementiert werden können, und dass zusätzliche
Funktionalitäten
bei einigen Ausführungsbeispielen
implementiert werden können.
Zum Beispiel könnte
ein Treiben eines dominanten Werts auf die gemeinsame Signalleitung 310, 410, 560 mit oder
ohne Deaktivieren des Rezessiver-Wert-Treibers 570 durchgeführt werden.
Außerdem
könnte
ein Freigeben der gemeinsamen Signalleitung 310, 410, 560 ein
bloßes
Deaktivieren des Dominanter-Wert-Treibers 424, 434, 444, 572 aufweisen. Selbst
wenn die gemeinsame Signalleitung 310, 410, 560 durch
eine Vorrichtung freigegeben wird, könnte der Rezessiver-Wert-Treiber
der Vorrichtung optional dennoch aktiv sein, obwohl ein Stromverbrauch
in diesem Fall höher
als erforderlich sein könnte.
Außerdem
könnte
die gemeinsame Signalleitung 310, 410, 560 bei
bestimmten Betriebsbedingungen zu anderen Zwecken wieder verwendet
werden.
-
Im
Folgenden wird eine Funktionalität
beschrieben, die in den Vorrichtungen 320, 330, 340, 420, 430, 440, 500 implementiert
sein kann, die in Bezug auf die 3, 4 und 5 beschrieben wurden.
Die im Folgenden beschriebene Funktionalität kann z. B. in dem Steuerschaltungsaufbau 230, 322, 332, 342, 422, 432, 442, 522 implementiert
sein.
-
7 zeigt
ein Flussdiagramm eines Verfahrens zum Zuweisen einer zweiten Zahl
zu einer Vorrichtung auf der Basis einer eindeutigen ersten Zahl. Das
Verfahren aus 7 ist in seiner Gesamtheit mit 700 bezeichnet.
Bei einem Ausführungsbeispiel
kann das Verfahren 700 parallel in zumindest zwei Vorrichtungen 320, 330, 340, 410, 420, 430, 500 durchgeführt werden,
die mit einer gemeinsamen Signalleitung verbunden sind. Bei einem
sehr einfachen Ausführungsbeispiel
jedoch ist es ausreichend, wenn das Verfahren 700 in einer
einzelnen Vorrichtung durchgeführt
wird, die über
eine gemeinsame Signalleitung mit einer anderen Vorrichtung verbunden
ist.
-
Zu
Erläuterungszwecken
wird nachfolgend angenommen, dass das Verfahren 700 parallel,
in einer zeitlich synchronisierten Weise, in vier Vorrichtungen
durchgeführt
wird, die mit einer gemeinsamen Signalleitung verbunden sind. 8 zeigt
eine graphische Darstellung exemplarischer Schritte, entsprechender
Signale und Zwischenergebnisse, die während der Parallelausführung des
Verfahrens 700 in vier Vorrichtungen auftreten können. Unter
Bezugnahme auf 8 beschreibt eine erste Spalte 810 den
Verlauf der Ausführung
des Verfahrens 700 für eine
erste Vorrichtung. Eine zweite Spalte 820 beschreibt den
Verlauf der Ausführung
des Verfahrens 700 für
eine zweite Vorrichtung. Eine dritte Spalte 830 und eine
vierte Spalte 840 beschreiben den Verlauf der Ausführung des
Verfahrens 700 für
eine dritte bzw. eine vierte Vorrichtung.
-
Zu
Erläuterungszwecken
wird angenommen, dass eine erste Binärzahl „1001" (dezimal: 9) der ersten Vorrichtung
zugewiesen ist. Ferner wird angenommen, dass eine erste Binärzahl „0111" (dezimal: 7) der
zweiten Vorrichtung zugewiesen ist. Eine erste Binärzahl „1101" (dezimal: 13) ist
der dritten Vorrichtung zugewiesen und eine erste Binärzahl „0011" (dezimal: 3) ist
der vierten Vorrichtung zugewiesen. Das Verfahren 700 beginnt
mit einem ersten Schritt 710 eines Initialisierens eines
Zählers.
Die Initialisierung des Zählers
auf einen anfänglichen
Wert von z. B. 0 ist in 8 mit 850 bezeichnet.
Bei einem zweiten Schritt 720 des Verfahrens 700 wird
ein erster Abschnitt der ersten Zahl als ein ausgewählter Abschnitt ausgewählt. Die
erste Vorrichtung wählt
z. B. das höchstwertige
Bit „1" ihres zugewiesenen
Werts „1001" aus, die zweite
Vorrichtung wählt
das höchstwertige
Bit „0" ihres zugewiesenen
Werts „0111" aus, die dritte
Vorrichtung wählt
das höchstwertige
Bit „1" ihres zugewiesenen
Werts „1101" aus und die vierte Vorrichtung
wählt das
höchstwertige
Bit „0" ihres zugewiesenen
ersten Werts „0011" aus. Bei einem nachfolgenden
Schritt 730 treiben die Vorrichtungen den ausgewählten Abschnitt
der ersten Zahl auf die gemeinsame Signalleitung. So treibt die
erste Vorrichtung den Wert „1" auf die gemeinsame
Signalleitung, die zweite Vorrichtung treibt den Wert „0" auf die gemeinsame
Signalleitung, die dritte Vorrichtung treibt den Wert „1" auf die gemeinsame
Signalleitung und die vierte Vorrichtung treibt den Wert „0" auf die gemeinsame
Signalleitung. Wie oben beschrieben wurde, wird zu Beispielszwecken
angenommen, dass der Wert „0" der dominante Wert
ist. So nimmt die Signalleitung den dominanten Wert „0" an, wie in einer
Zeile 852 aus 8 gezeigt ist. Bei einem vierten
Schritt 740 prüfen
die Vorrichtungen, ob der Status der Signalleitung den ausgewählten Abschnitt
der ersten Zahl darstellt. Wie oben beschrieben wurde, hat die erste
Vorrichtung den Wert „1" auf die gemeinsame
Signalleitung getrieben, stellt jedoch fest, dass die gemeinsame
Signalleitung den „dominanten" Wert „0" annimmt. Folglich
entscheidet die erste Vorrichtung, dass der Status der Signalleitung
(„0") nicht den ausgewählten Abschnitt
der ersten Zahl „1" darstellt. Ähnlich stellt
die dritte Vorrichtung fest, dass der Status der Signalleitung nicht
den ausgewählten Abschnitt
der ersten Zahl darstellt. Im Gegensatz stellen die zweite Vorrichtung
und die vierte Vorrichtung fest, dass der Status der gemeinsamen
Signalleitung („0") den ausgewählten Abschnitt
der ersten Zahl („0") darstellt. Ansprechend
auf den Prüfschritt 740 fahren
die erste Vorrichtung und die zweite Vorrichtung mit einem fünften Schritt 750 eines
Modifizierens ihrer Zähler
fort. Die erste Vorrichtung und die dritte Vorrichtung könnten z.
B. die Zähler
um 1 erhöhen,
wie in einer Zeile 854 in
-
8 gezeigt
ist. Ferner geben die erste Vorrichtung und die zweite Vorrichtung
die gemeinsame Signalleitung gemäß Schritt 760 frei,
wie oben beschrieben wurde. Ferner warten die erste Vorrichtung und
die dritte Vorrichtung auf eine nächste Aufzählungsrunde und auf ein Ende
der Aufzählung
in Schritt 770. Im Gegensatz fahren, da die zweite Vorrichtung
und die vierte Vorrichtung bei Schritt 740 feststellen,
dass der Status der gemeinsamen Signalleitung den ausgewählten Abschnitt
der ersten Zahl darstellt, die zweite Vorrichtung 820 und
die vierte Vorrichtung 840 mit Schritt 780 fort.
Anders ausgedrückt
prüfen
die zweite Vorrichtung und die vierte Vorrichtung, ob alle Abschnitte
der ersten Zahl (die auf die Signalleitung getrieben werden sollen)
auf die Signalleitung getrieben wurden. Bei dem gegebenen Beispiel
wird angenommen, dass die erste Zahl 4 Bits aufweist, wobei jedes
Bit als ein Abschnitt der ersten Zahl betrachtet werden könnte, Da
nur ein Bit, das höchstwertige
Bit, der ersten Zahl auf die gemeinsame Signalleitung getrieben
wurde, wählen
die zweite Vorrichtung und die vierte Vorrichtung einen nächsten Abschnitt
(z. B. das nächste
Bit nach dem höchstwertigen
Bit) als den ausgewählten
Abschnitt der ersten Zahl aus. Für
die zweite Vorrichtung ist das nächste
ausgewählte
Bit „1" (mit einem Dezimalgewicht
4) und für
die vierte Vorrichtung ist das nächste ausgewählte Bit „0". Die zweite Vorrichtung 820 und die
vierte Vorrichtung 840 können mit Schritt 730 fortfahren,
um die jeweiligen ausgewählten
Abschnitte der ersten Zahl auf die gemeinsame Signalleitung zu treiben.
Wie in einer Zeile 856 in 8 zu sehen
ist, treibt die zweite Vorrichtung den rezessiven Wert „1" auf die gemeinsame
Signalleitung und die vierte Vorrichtung treibt den dominanten Wert „0" auf die gemeinsame
Signalleitung. Folglich nimmt die Signalleitung den dominanten Wert „0" an, wie in Zeile 856 in 8 zu
sehen ist. So stellt die zweite Vorrichtung 820 bei Schritt 740 fest,
dass der Status der gemeinsamen Signalleitung nicht ihren ausgewählten Abschnitt
der ersten Zahl darstellt, und die zweite Vorrichtung 820 fährt deshalb
mit Schritt 750 fort. So erhöht die zweite Vorrich tung z.
B. ihren Zähler
um 1, wie in einer Zeile 858 in 8 gezeigt
ist. Die zweite Vorrichtung fährt
mit Schritten 760 und 770 fort. Die zweite Vorrichtung
gibt die Signalleitung frei und wartet auf die nächste Runde von Aufzählungen
oder auf das Ende der Aufzählung.
Die vierte Vorrichtung stellt bei Schritt 740 fest, dass
der Status der Signalleitung (in Zeile 856 in 8 gezeigt)
ihren ausgewählten Abschnitt
der ersten Zahl darstellt, und fährt
deshalb mit Schritt 780 fort. In dem gegenwärtigen Zustand haben
die erste, zweite und dritte Vorrichtung aufgehört, an der Aufzählungsrunde
teilzunehmen. Folglich treibt nur die vierte Vorrichtung auf die
gemeinschaftlich verwendete Signalleitung. So durchläuft die
vierte Vorrichtung Schritte 782, 730, 740, 780 ein weiteres
Mal, wobei so der Wert „1" auf die gemeinsame
Signalleitung getrieben wird. Diese Schritte sind in einer Zeile 860 in 8 gezeigt.
Ferner fährt die
vierte Vorrichtung erneut fort, die Schritte 782, 730, 740 und 780 zu
durchlaufen, was den Wert „1" auf die gemeinsame
Signalleitung treibt, wie in einer Zeile 862 in 8 gezeigt
ist. Beim Erreichen von Schritt 780 stellt die vierte Vorrichtung
fest, dass alle Abschnitte (z. B. 4 Bits) der ersten Zahl auf die
Signalleitung getrieben wurden. So fährt die vierte Vorrichtung
mit Schritt 790 fort und weist ihren Zählerwert von z. B. 0 als ihren
zweiten Wert zu. Nachfolgend könnte
die vierte Vorrichtung (optional) eine nächste Aufzählungsrunde in Schritt 792 starten. Während der
nachfolgenden Aufzählungsrunde
(innerhalb des gleichen Aufzählungsvorgangs)
könnte die
vierte Vorrichtung die gemeinsame Signalleitung freigegeben halten,
wie in Schritt 794 gezeigt ist.
-
So
wird eine neue Aufzählungsrunde
gestartet, an der die vierte Vorrichtung nicht mehr teilnimmt. Die
erste, zweite und dritte Vorrichtung stellen bei der Prüfoperation 772 fest,
dass eine nächste
Aufzählungsrunde
gestartet wurde. So fahren die erste, zweite und dritte Vorrichtung
mit Schritt 720 fort, wobei jede einen ersten Abschnitt
(d. h. ein höchstwertiges
Bit) ihrer ersten Zahl als ausgewählten Abschnitt auswählt. Folglich
treibt die erste Vorrichtung ihren ausgewählten Abschnitt, einen logischen
Wert „1", bei Schritt 730 auf
die Signalleitung. Die zweite Vorrichtung treibt den logischen Wert „0" auf die gemeinsame
Signalleitung und die dritte Vorrichtung treibt den logischen Wert „1" auf die gemeinsame
Signalleitung. Folglich nimmt die gemeinsame Signalleitung den dominanten
logischen Wert „0" an, der durch die
zweite Vorrichtung getrieben wird. Die erste Vorrichtung und die
dritte Vorrichtung erkennen in Schritt 740, dass der Status
der Signalleitung nicht ihre ausgewählten Abschnitte der ersten
Zahl darstellt, und erhöhen
deshalb ihre Zähler
in Schritt 750, geben die gemeinsame Signalleitung in Schritt 740 frei
und warten auf eine nächste
Runde oder auf das Ende des Aufzählungsschritts 770,
wie in einer Zeile 866 in 8 gezeigt
ist. Die zweite Vorrichtung stellt bei Schritt 740 fest,
dass der Status der Signalleitung („0") ihren ausgewählten Abschnitt des ersten
Werts darstellt, und fährt
deshalb mit Schritt 680 fort. Die zweite Vorrichtung durchläuft dann
die Schritte 782, 730 und 740 drei weitere
Male, da der Status der gemeinsamen Signalleitung durch andere Vorrichtungen
nicht beeinflusst wird (Vorrichtungen 1, 3 und 4 haben alle die
gemeinsame Signalleitung freigegeben) (vergleiche Zeilen 868, 870, 872).
Nachdem die zweite Vorrichtung alle Abschnitte ihrer ersten Zahl auf
die gemeinsame Signalleitung getrieben hat, weist die zweite Vorrichtung
bei Schritt 740 ihren gegenwärtigen Zählerwert „1" als ihren zweiten Wert zu und beginnt
wahlweise eine nächste
Runde bei Schritt 792. In der nächsten Runde des Aufzählungsvorgangs
hält die
zweite Vorrichtung die Signalleitung freigegeben. Nachfolgend wird
eine nächste Aufzählungsrunde
gestartet, an der nur die erste Vorrichtung und die dritte Vorrichtung
teilnehmen. Wieder wählen
die erste Vorrichtung und die dritte Vorrichtung bei Schritt 720 den
ersten Abschnitte (z. B. das höchstwertige
Bit) ihrer ersten Zahlen als ausgewählte Abschnitte aus. Die erste
und die zweite Vorrichtung treiben beide den Wert „1” bei Schritt 730 auf die
gemeinsame Signalleitung (vergleiche Zeile 874 in 8)
und stellen bei Schritt 740 fest, dass der Status der Signalleitung
(„1") ihre ausgewählten Abschnitte
darstellt. So fahren sowohl die erste Vorrichtung als auch die dritte
Vorrichtung mit Schritten 780, 782 und 730 fort.
Bei Schritt 730 treibt die erste Vorrichtung den Wert „0" auf die gemeinsame
Signalleitung und die dritte Vorrichtung treibt den Wert „1” auf die
gemeinsame Signalleitung, wie in einer Zeile 876 in 8 gezeigt
ist. Die Signalleitung nimmt den dominanten Wert „0" an und die dritte
Vorrichtung stellt bei Schritt 740 fest, dass der Status
der Signalleitung nicht ihren ausgewählten Abschnitt des ersten
Werts darstellt. Die dritte Vorrichtung erhöht ihren Zähler (vergleiche Zeile 878 aus 8),
gibt die Signalleitung frei und wartet auf die nächste Runde oder auf das Ende
der Aufzählung.
Die erste Vorrichtung fährt fort,
um Schritte 780, 782, 730, 740 und
Ausgangswerte „0" und „1" zu wiederholen (vergleiche
Zeilen 880, 882 in 8). Schließlich fährt die
erste Vorrichtung mit Schritten 780, 790, 792 und 794 fort
und weist ihren Zählerwert 2 als
ihren zweiten Wert zu. Nachfolgend wird wahlweise die vierte Runde
gestartet. Da nur die dritte Vorrichtung konfiguriert ist, um an
der gemeinsamen Signalleitung zu arbeiten, treibt die dritte Vorrichtung
nachfolgend ihre ausgewählten Abschnitte
der ersten Zahl auf die gemeinsame Signalleitung (vergleiche Zeilen 884, 886, 888, 890 aus 8).
Schließlich
könnte
die dritte Vorrichtung ihren Zählerwert 3 als
ihren zugewiesenen Wert zuweisen.
-
Es
wird darauf verwiesen, dass das Verfahren 700 wesentlich
modifiziert werden kann. Zum Beispiel kann der Initialisierungswert
der Zähler
unterschiedlich ausgewählt
werden. Außerdem
könnte eine
unterschiedliche Operation als ein Erhöhen um 1 angewendet werden,
um den Zähler
in Schritt 750 zu modifizieren. Zum Beispiel könnte der
Zähler durch
eine andere Modifizierungsoperation herabgesetzt oder modifiziert
werden. Ferner könnte
der Zähler
außerdem
durch einen Wert, der sich von 1 unterscheidet, modifiziert werden.
Ferner gibt es unterschiedliche Weisen, um Ab schnitte der ersten
Zahl als die ausgewählten
Abschnitte auszuwählen.
Bei dem gegebenen Beispiel wurden einzelne Bits in einer nachfolgenden
Reihenfolge ausgewählt.
Andere Auswahlalgorithmen könnten
jedoch ausgewählt werden.
Bei einem Ausführungsbeispiel
könnte
sogar eine Mehrzahl von Bits in einem einzelnen Schritt ausgewählt werden.
Die Mehrzahl von Bits könnte
z. B. in einer parallelen Weise ausgetauscht werden, andere Optionen
sind jedoch möglich.
Ferner könnten
Schritte 750–770 in
einen einzelnen Schritt kombiniert werden. Außerdem könnte die Reihenfolge dieser
Schritte verändert
werden. Ferner könnte
ein unterschiedliches Abschlusskriterium zum Abschließen der
Aufzählung
verwendet werden. Bei einem Ausführungsbeispiel
z. B. könnte
es ausreichend sein, N – 1
Runden für
N Vorrichtungen durchzuführen.
In diesem Fall kann in Schritt 772 festgestellt werden,
dass keine weitere Runde vorliegt. Nachfolgend könnte die Vorrichtung, die auf
das Ende einer Aufzählung
bei Schritt 770 wartet, unmittelbar ihren Zählerwert
als ihren zweiten Wert zuweisen, wenn die vorletzte Vorrichtung
Schritt 790 erreicht hat. Aus Obigem ist zu erkennen, dass
es verschiedene Möglichkeiten
zum Abschließen
der Prozedur gibt, die mehr oder weniger effizient sein können. Bei
einem Ausführungsbeispiel
des Verfahrens 700 jedoch sind die Schritte 720, 730, 740, 750, 760, 780 und 782 vorhanden.
-
Es
gibt zahlreiche Weisen zum Starten einer nächsten Runde. Zum Beispiel
könnte
ein zweckgebundenes Signal oder eine Sequenz von Signalen eingesetzt
werden. Alternativ könnte
ein Kanalsynchronisierungsmechanismus oder eine vorbestimmte Zeitgebung
einen Start einer nachfolgenden Runde anzeigen.
-
Das
Verfahren 700 kann durch mögliche Synchronisationsschritte
erweitert werden, um die teilnehmenden Vorrichtungen zu synchronisieren, bevor
die Ausführung
des Kerns des Verfahrens begonnen wird.
-
Im
Folgenden sind mehrere Anwendungsbeispiele gezeigt, in denen die
oben beschriebenen Konzepte angewendet werden können. 9 zeigt ein
schematisches Blockdiagramm eines Systems, das eine Mehrzahl von
Vorrichtungen aufweist. Das System aus 9 ist in
seiner Gesamtheit mit 900 bezeichnet. Das System 900 weist
drei Vorrichtungen 910, 920, 930 auf,
die mit einer gemeinsamen Signalleitung 940 gekoppelt sind.
Die gemeinsame Signalleitung 940 könnte z. B. eine Entscheidungsleitung
für eine
Selbstaufzählung
sein. Die Vorrichtungen 910, 920, 930 könnten z.
B. jeweils eine Vorrichtung 200 aufweisen, wie unter Bezugnahme
auf die 2a und 2b beschrieben
ist. Ferner könnten die
Vorrichtungen 910, 920, 930 z. B. jeweils
eine Vorrichtung 320, 330, 340 aufweisen,
wie Bezug nehmend auf 3 beschrieben ist, oder eine
Vorrichtung 420, 430, 440, wie unter
Bezugnahme auf 4 beschrieben ist. Alternativ
könnte
jede Vorrichtung 910, 920, 930 eine Vorrichtung 500 aufweisen,
wie unter Bezugnahme auf 5 beschrieben ist. Bei einem
weiteren Ausführungsbeispiel
könnte
jede Vorrichtung 910, 920, 930 konfiguriert
sein, um das Verfahren 700 durchzuführen, wie unter Bezugnahme auf 7 beschrieben
ist. Bei einigen Ausführungsbeispielen
jedoch ist es ausreichend, wenn nur eine der Vorrichtungen 910, 920, 930 die
Funktionalität aufweist,
die unter Bezugnahme auf die 2, 3, 4, 5 und 7 beschrieben
wurde.
-
Das
System 900 kann optional einen Host 950 aufweisen,
der z. B. eine Funktionalität
eines Prozessors oder einer Speichersteuerung aufweisen kann. Bei
einem Ausführungsbeispiel
sind die Vorrichtungen 910, 920, 930 über die
gemeinsame Signalleitung oder Entscheidungsleitung 940 mit
dem Host 950 gekoppelt. Es soll hier angemerkt werden, dass
die gemeinsame Signalleitung oder Entscheidungsleitung 940 sowohl
für eine
Selbstaufzählung der
Vorrichtungen 910, 920, 930 (z. B. in
einer Initialisierungsphase) als auch für eine Kommunikation zwischen
dem Host 950 und den Vorrichtungen 910, 920, 930 dienen
kann. Die Vorrichtungen 910, 920, 930 könnten zusätzlich über zusätzliche
Leitungen mit dem Host 950 gekoppelt sein. Eine Eingangs/Ausgangs-(I/O-)Leitung 960 könnte z.
B. vorhanden sein. Die Eingangs/Ausgangs-Leitung 960 könnte z.
B. als ein bidirektionaler Bus zwischen dem Host 950 und
den Vorrichtungen 910, 920, 930 dienen.
Wenn z. B. die Vorrichtungen 910, 920, 930 NAND-Speichervorrichtungen
sind, könnten
die Eingangs/Ausgangs-Leitungen 960 als ein NAND-Datenbefehlsbus
dienen. Ferner könnten
eines oder mehrere Steuersignale 970 in dem System 900 vorhanden
sein. Die Vorrichtungen 910, 920, 930 könnten z.
B. über
die Steuersignale 970 mit dem Host 950 gekoppelt
sein. Bei einem Ausführungsbeispiel könnten die
Steuersignale 970 eine unidirektionale Kommunikation von
dem Host 950 zu den Vorrichtungen 910, 920, 930 bereitstellen.
-
Bei
einem Ausführungsbeispiel
könnten
die Vorrichtungen 910, 920, 930 Chips
sein, die über
die gemeinsame Signalleitung 940, die Eingangs/Ausgangs-Leitungen 960 und
die Steuersignale 970 mit dem Host 950 verbunden
sein können.
Ferner können
in dem Fall, dass die Vorrichtungen 910, 920, 930 separate
Chips sind, die Vorrichtungen 910, 920, 930 in
einem Mehrchipgehäuse 980 beinhaltet
sein. Anders ausgedrückt
können
die gemeinsame Signalleitung 940, die Eingangs/Ausgangs-Leitung 960 und das
Steuersignal 970 bei einem Ausführungsbeispiel innerhalb des
Mehrchipgehäuses
geleitet werden.
-
Im
Folgenden wird ein weiteres Ausführungsbeispiel
beschrieben. 10 zeigt ein schematisches Blockdiagramm
eines Systems gemäß einem weiteren
Ausführungsbeispiel
der Erfindung. Das System aus 10 ähnelt dem
in 9 gezeigten System. Deshalb sind identische Einrichtungen
und Signale mit identischen Bezugszeichen versehen. Wie aus 10 zu
sehen ist, kann das System 900 z. B. für eine Aufzählung von NAND-Flash-Chips
angewendet werden. In dem System 1000 könnten die Vorrichtung 910, 920, 930 Flash-Halbleiterstücke aufweisen.
In dem System 1000 könnte
die gemeinsame Signalleitung 940 eine Bereit/Besetzt-Leitung sein.
Anders ausgedrückt
könnte
die gemeinsame Signalleitung 940 des Systems 1000 in
einem Normalbetrieb als eine Bereit/Besetzt-Leitung verwendet werden
und könnte
zusätzlich
während
der Aufzählungsprozedur
als eine Aufzählungsleitung
verwendet werden. Ferner könnte
in dem System 1000 die Eingangs/Ausgangs-Leitung 960 eine
oder mehrere (z. B. 16) Datenleitungen DQ0 bis DQ15 aufweisen. Die
Steuersignale 970 könnten
Signalleitungen für ein
Chipfreigabesignal (Chipfreigabe #CE), ein Schreibfreigabesignal
(#WE), ein Lesefreigabesignal (#RE) und ein Schreibschutzsignal
(#WP) aufweisen.
-
Obiges
zusammenfassend kann das hier beschriebene Konzept geeignet für ein NAND-Mehrchipgehäuse oder NAND-Flash-Mehrchipgehäuse sein.
-
Die
Bereit/Besetzt-Leitung (R/B-Leitung) kann als Entscheidungsleitung
verwendet werden, wenn ein Eingangstor und ein kleiner Transistor,
der mit einer Versorgungsspannung (mit der Versorgungsspannung VCC)
verbunden ist, in der R/B-Leitung
implementiert sind (oder mit der R/B-Leitung gekoppelt). Bei einigen
Ausführungsbeispielen
weist die R/B-Leitung
entspanntere Anforderungen in Bezug auf Geschwindigkeit und Kapazität auf (z.
B. verglichen mit bestimmten anderen Leitungen des Speicherchips,
wie den Datenleitungen DQ oder den Steuersignalen).
-
Im
Folgenden werden einige weitere Aspekte des vorliegenden Konzepts
beschrieben. Gemäß einigen
Ausführungsbeispielen
der Erfindung ist es erwünscht,
eine Aufzählung
von Vorrichtungen (z. B. unterschiedlicher integrierter Schaltungen
oder Speicherchips) mit wenig oder keiner Wechselwirkung mit dem
Host durchzuführen.
Bei einem Ausführungsbeispiel
kann ein Satz von Halbleiterstücken
eine Aufzählungsprozedur
oder Selbstzuweisungsprozedur ohne ein Startsignal eines Hosts starten.
Vielmehr kann ein Satz von Halbleiterstücken die Aufzählungsprozedur
oder Selbstzuweisungsprozedur starten, wenn die Leistungsversorgung
eine Auslöser spannung
erreicht. Es gibt jedoch einige Fälle, in denen ein ausreichend
synchronisierte Beginn der Selbstaufzählung nach dem Einschalten
nicht möglich
ist. Dies könnte
z. B. der Fall sein, wenn es nicht möglich oder zu teuer ist, eine
(ausreichend genaue) Erfassungsschaltung für die Schwellenspannung zu implementieren.
Dies könnte
außerdem
der Fall sein, wenn die Zeit, die zum Beginnen der Selbstaufzählungsprozedur
erforderlich ist, von einer integrierten Schaltung zu einer anderen
integrierten Schaltung zu stark variiert. In diesen Fällen könnte es
wünschenswert
sein, eine Synchronisationsprozedur zu implementieren oder eine
ausreichend lange eindeutige IC zu verwenden.
-
Bei
einem Ausführungsbeispiel
kann die Synchronisation für
eine Mehrzahl von Chips z. B. unter Verwendung einer Auslöserspannung
implementiert sein. Alternativ oder zusätzlich kann eine ausreichend
lange IC verwendet werden, um eine korrekte Selbstaufzählung sicherzustellen.
Alternativ (oder zusätzlich)
kann eine Synchronisationssequenz verwendet werden, um den Beginn
der Selbstaufzählungsprozedur
auszulösen.
-
Bezüglich der
Verwendung einer ausreichend langen ID kann angenommen werden, dass MAX_TIME
eine maximale erwartete Differenz einer Prozeduranfangszeit unter
allen integrierten Schaltungen (ICs) ist. Bei einem Ausführungsbeispiel
ist eine Länge
einer eindeutigen ID der integrierten Schaltung ausgewählt, um
ausreichend lange zu sein, so dass eine Zahl von Bits, die nach
der Zeit MAX_TIME (z. B. vom Einschalten an gemessen) übertragen
wird, ausreichend lange ist, um zu garantieren, dass jede integrierte
Schaltung (die bei der Selbstaufzählung beinhaltet ist) eine
unterschiedliche Zahl überträgt. Auf
diese Weise ist es möglich, eine
korrekte Selbstaufzählung
sicherzustellen.
-
Im
Folgenden wird beschrieben, wie eine Synchronisationssequenz zum
Synchronisieren einer Mehrzahl von Chips verwendet werden kann,
z. B. für
eine Selbstaufzählung.
Wenn es z. B. nicht möglich
ist, eine ausreichend lange eindeutige ID bereitzustellen, könnte es
wünschenswert
sein, eine Synchronisationssequenz von Bits zu übertragen. Im Folgenden wird
eine mögliche
Implementierung einer Synchronisationsprozedur beschrieben. Hier
wird angenommen, dass eine Mehrzahl integrierter Schaltungen (ICs)
mit einer Synchronisationsleitung gekoppelt ist. Bei einem Ausführungsbeispiel
beginnen alle integrierten Schaltungen nach einem Einschalten, wenn
sie keine Aktivität
auf der Synchronisationsleitung erfassen, eine Sequenz „101010..." zu übertragen,
und zwar ausreichend lange, um sicherzustellen, dass alle integrierten
Schaltungen mit einem Senden der Sequenz begonnen haben.
-
Während der Übertragung
der Synchronisationssequenz können
alle integrierten Schaltungen die Leitung überwachen. Wenn eine der integrierten Schaltungen
einen Konflikt entdeckt, stoppt die integrierte Schaltung, die den
Konflikt entdeckt, eine Übertragung
der Sequenz, fährt
jedoch mit einer Überwachung
in Richtung der Synchronisationsleitung fort. Dies kann eine Störung der
Synchronisationsleitung vermeiden. Die erste integrierte Schaltung,
die das Senden der Synchronisationssequenz abschließt (z. B.
nach einem Senden einer vorbestimmten Anzahl von Synchronisationssequenzen oder
Treffern), beginnt, z. B. zwei oder mehr dominante Bits oder dominante
Werte zu senden. Die zwei oder mehr dominanten Bits oder dominanten Werte
könnten
z. B. eine Startsequenz bilden. In dem Fall einer NAND-Operation
(oder Verdrahtetes-UND-Operation) könnten die dominanten Bits „0" sein. Das Ende der
Startsequenz könnte
den Start der Selbstaufzählung
für alle
integrierten Schaltungen, die die Synchronisationsleitung überwachen, auslösen.
-
Im
Folgenden werden Details bezüglich
der Erzeugung eines dominanten Bits (oder eines dominanten Werts)
und eines rezessiven Bits (oder rezessiven Werts) auf einer gemeinsamen
Signalleitung beschrieben. Wenn z. B. eine Signalleitung verwendet
wird, um die Selbstaufzählung
durchzuführen, ist es
wünschenswert,
dass ein dominanter Wert (auch als dominantes Bit bezeichnet) und
ein rezessiver Wert (auch als rezessives Bit bezeichnet) sich auf
der gemeinsamen Signalleitung (z. B. auf der Entscheidungsleitung)
befinden. Der Treiber des dominanten Werts oder dominanten Bits
könnte
z. B. stärker
sein als die Summe aller Treiber rezessiver Werte (oder rezessiver
Bits), die auf dem Bus vorliegen.
-
Der
dominante Wert (oder das dominante Bit) könnte z. B. „0" sein und der rezessive Wert (oder das
rezessive Bit) könnte „1" sein. „0" und „1" bezeichnen z. B.
logische Werte, die durch entsprechende Signalwerte (z. B. Potentiale)
dargestellt sein können.
-
Eine
weitere Definition dominanter und rezessiver Werte ist jedoch in
dem obigen Fall möglich, wenn
eine Vorrichtung den Wert „0" auf der Leitung (auch
als gemeinsame Signalleitung bezeichnet) ausgibt und alle anderen
Vorrichtungen den Wert „1" treiben, wobei das
Lesen der Leitung dennoch den Wert „0" ausgeben könnte.
-
Bei
einem Ausführungsbeispiel
ist, wenn das System derart entworfen ist, dass N Vorrichtungen
an einer Aufzählung
teilnehmen sollen, ein dominanter Treiber, der mit einer gemeinsamen
Signalleitung gekoppelt ist, vorzugsweise derart entworfen, dass
die gemeinsame Signalleitung den dominanten Wert annimmt, wenn nur
ein Dominanter-Wert-Treiber
der N Vorrichtungen, die mit der Signalleitung gekoppelt sind, aktiv
ist, und wenn N – 1
Rezessiver-Wert-Treiber,
die mit der gemeinsamen Leitung gekoppelt sind, aktiv sind.
-
Im
Folgenden wird kurz ein Aufzählungsverfahren
gemäß einem
Ausführungsbeispiel
der Erfindung zusammengefasst. Bei einem Ausführungsbeispiel wird eine eindeutige
Zahl (auch als eindeutige erste Zahl oder „erste Zahl" bezeichnet) in jeder
Vorrichtung gespeichert, die entworfen ist, um an der Selbstaufzählung teilzunehmen.
Bei einem Ausführungsbeispiel
kann eine eindeutige Zahl in jeder Vorrichtung (oder zumindest in
einer Mehrzahl von Vorrichtungen) bei einem Waferebenentest gespeichert werden.
Die eindeutige Zahl kann jedoch bei einem anderen Vorrichtungsverarbeitungsschritt
gespeichert werden.
-
Die
eindeutige Zahl kann z. B. bereits in einer Lithographiemaske oder
einer anderen Einrichtung zum Erzeugen der Halbleiterstruktur der
Vorrichtung bereitgestellt werden. So kann die eindeutige Zahl z. B.
in einem Nur-Lese-Speicher
der Vorrichtung gespeichert werden. Alternativ kann die eindeutige
Zahl in einem einmal beschreibbaren, mehrfach lesbaren Speicher
der Vorrichtung gespeichert werden. Zum Beispiel kann die eindeutige
Zahl in einer PROM-Struktur der Vorrichtung, einer EPROM-Struktur
der Vorrichtung, einer EEPROM-Struktur der Vorrichtung oder einer FLASH-Speicher-Struktur
der Vorrichtung gespeichert werden. Andere nichtflüchtige oder
sogar flüchtige
Speicherstrukturen jedoch können
verwendet werden, um die eindeutige Zahl oder „erste Zahl" zu speichern.
-
Die
eindeutige Zahl könnte
z. B. für
alle Halbleiterstücke
des gleichen Typs, die durch das gleiche Unternehmen hergestellt
werden, eindeutig sein. Andere Möglichkeiten
sind jedoch möglich.
Die eindeutige Zahl könnte
z. B. für
einen Satz von Chips, die auf einem einzelnen Wafer hergestellt
werden, eindeutig sein. Gemäß einem
Ausführungsbeispiel
der Erfindung ist es ausreichend, wenn die eindeutige Zahl unter
Chips eindeutig ist, die gekoppelt sind, um eine Selbstaufzählungsgruppe
zu bilden, d. h. eine Gruppe von Chips, die zu dem Zweck der Durchführung einer
Selbstaufzählung
in Kontakt miteinander stehen.
-
Bei
einem alternativen Ausführungsbeispiel kann
die eindeutige Zahl (oder erste Zahl) durch einen Zufallszahlerzeuger,
der in die Vorrichtung integriert ist, erzeugt werden.
-
Eine
Zufallszahl kann z. B. beim Einschalten der Vorrichtung erzeugt
werden.
-
Bei
einem anderen Ausführungsbeispiel
jedoch kann außerdem
ein eindeutiger Identifizierer extern für die Vorrichtung bereitgestellt
werden, z. B. durch einen externen Anbieter einer eindeutigen Zahl.
-
In
der obigen Beschreibung wurde angenommen, dass der dominante Wert
(oder das dominante Bit) in der Entscheidungsleitung „0" ist. Das vorliegende
Konzept ist natürlich
jedoch auch anwendbar, wenn der dominante Wert oder das dominante
Bit der Entscheidungsleitung z. B. „1" ist.
-
Ferner
ist das vorliegende Konzept auch in einem Fall anwendbar, in dem
mehr als zwei Zustände
der Entscheidungsleitung definiert sind. In diesem Fall kann ein
Zustand (z. B. dargestellt durch ein Potential) als der dominante
Wert verwendet werden.
-
Bei
einigen Ausführungsbeispielen
ist es nach dem Häusen
einer Vorrichtung (oder einer integrierten Schaltung) in einer Mehrchipeinfassung
erwünscht,
eine weitere ID-Zahl (auch zweite Zahl genannt) der Vorrichtung
oder integrierten Schaltung zuzuweisen. Es soll hier angemerkt werden,
dass es im Prinzip möglich
wäre, ein
einzelnes Halbleiterstück
(oder eine Vorrichtung oder eine integrierte Schaltung) unter Verwendung
der eindeutigen ID-Zahl (ersten Zahl) zu adressieren. Eine eindeutige ID-Zahl
jedoch ist in vielen Fällen
zu lang und könnte z.
B. 8–16
Bytes lang sein. Bei einigen Anwendungen ist es wünschenswert,
ein übliches
Kommunikationsprotokoll (z. B. „Multichip-NAND-FLASH") zu verwenden, das
spezifische Befehle verwendet, um mehrere Halbleiterstücke zu adressieren
(z. B. als „Halbleiterstück 1", „Halbleiterstück 2" bezeichnet). Die
Operation „CMD
0 × F1" z. B. wird verwendet,
um das Statusregister für
ein erstes Halbleiterstück
oder einen ersten Chip (Chip 1) zu lesen. Die Operation „CMD 0 × F2" z. B. könnte verwendet
werden, um ein Statusregister eines zweiten Halbleiterstücks oder
eines zweiten Chips (Chip 2) zu lesen. Angesichts der obigen Standardbefehle,
die zum Adressieren unterschiedlicher Halbleiterstücke verwendet
werden könnten,
ist es typischerweise erwünscht,
eine kurze und progressive Zahl allen Chips (oder Halbleiterstücken) innerhalb
eines Gehäuses
oder Mehrchipgehäuses
zuzuweisen. Anders ausgedrückt
ist es manchmal erwünscht,
eine minimale Anzahl repräsentativer
Bits zu haben.
-
Nach
dem Einschalten eines Mehrchipgehäuses (MCP) kann eine geeignete
Sequenz von Signalen durch einen externen Host ausgegeben werden,
um die Selbstaufzählungssequenz
einzuleiten. Die Selbstaufzählungssequenz
jedoch könnte
z. B. alternativ ohne Wechselwirkung mit einem Host ausgelöst werden,
wie oben bereits beschrieben wurde.
-
Nachfolgend
können
alle Vorrichtungen beginnen, die eindeutige Zahl seriell an die
Entscheidungsleitungen auszugeben und gleichzeitig den Status der
Entscheidungsleitung (auch „gemeinsame Signalleitung" bezeichnet) zu überwachen.
-
Wenn
eine Vorrichtung eine Differenz zwischen dem Bit, das sie gerne
ausgeben würde,
und dem Status der Entscheidungsleitung verifiziert, kann die Vorrichtung
das Treiben des Entscheidungssignals oder der Entscheidungsleitung
stoppen. Diese Funktionalität
wurde unter Bezugnahme auf 6 beschrieben.
Zu einer Zeit t1 würde die zweite Vorrichtung
(Vorrichtung B) gerne einen Wert „1" zu der Entscheidungsleitung treiben,
die Entscheidungsleitung jedoch wird durch den Wert „0" dominiert, der durch
die erste Vorrichtung (Vorrichtung A) zu der Entscheidungsleitung
getrieben wird. So besteht ein Konflikt zwischen Werten, die durch
die erste Vorrichtung (Vorrichtung A) und die zweite Vorrichtung
(Vorrichtung B) getrieben werden. Der Wert „0" gewinnt jedoch, da der Wert „0" der dominante Wert
oder das dominante Bit ist. Folglich bringt die „Verlierervorrichtung" (d. h. die zweite
Vorrichtung, Vorrichtung B, die den rezessiven Wert „1" auf die gemeinsame
Signalleitung treibt) die gemeinsame Signalleitung (da ihr Treiber
mit der gemeinsamen Signalleitung gekoppelt ist) in einen Hochimpedanz-(High-Z-)Zustand.
-
Nur
eine Vorrichtung beendet die Ausgabe einer vollen eindeutigen Zahl
und ist z. B. diejenige mit der kleinsten eindeutigen Zahl. Diese
Vorrichtung kann z. B. „Gewinnervorrichtung" genannt werden.
-
Eine
Anzahl von Konflikten, die durch die Gewinnervorrichtung erfasst
werden, die die Sequenz abgeschlossen hat, kann gespeichert werden
und sie kann die ID-Zahl (oder zweite Zahl) dieser Vorrichtung sein.
-
Bevor
die Gewinnervorrichtung in den inaktiven Modus geht (in dem die
Vorrichtung z. B. alle Ausgangsleitungen in einem Hochimpedanz-
oder High-Z-Zustand halten kann), signalisiert dieselbe allen anderen
Vorrichtungen, die Sequenz erneut zu starten. Diese Signalisierung
könnte
in vielen unterschiedlichen Weisen geschehen: z. B. könnte eine spezielle
Sequenz auf der Entscheidungsleitung verwendet werden, um die Sequenz
oder Aufzählsequenz
wieder zu starten (z. B. eine neue Runde der Aufzählsequenz).
Alternativ (oder zusätzlich)
könnten
andere Datenleitungen oder Steuerleitungen verwendet werden, um
den anderen Vorrichtungen zu signalisieren, die Sequenz erneut zu
starten.
-
Die
Prozedur kann wiederholt werden, z. B. bis keine Aktivitäten auf
der Entscheidungsleitung erfasst werden, und so kann der externe
Host die Leistung wegnehmen oder mit anderen Aktionen fortfahren.
-
Als
ein Endergebnis zählen
sich alle Vorrichtungen (die an der Selbstaufzählung teilnehmen) selbst mit
progressiven unterschiedlichen Zahlen auf. Die Prozedur kann wiederholt
werden. Wenn die Prozedur wiederholt wird, kann immer die gleiche
ID-Zuweisung erhalten werden.
-
Bezug
nehmend auf die Schaltung 500 aus 5 soll angemerkt
werden, dass der Transistor, der zwischen den Kopplungsknoten 550 und
das Versorgungspotential VCC geschaltet ist (auch als „Bit-1-Transistor" bezeichnet), sorgfältig entworfen werden
sollte. Im Folgenden wird angenommen, dass mehrere der Vorrichtungen 500 mit
einer gemeinsamen Signalleitung gekoppelt sein können, z. B. mit einer Bereit/Besetzt-Leitung
(R/B). Wenn z. B. alle „Bit-1-Transistoren" (weniger einem)
auf dem Bereit/Besetzt-Signal (R/B-Signal) aktiv sind und nur ein „Bit-0-Transistor" (geschaltet zwischen
den Kopplungsknoten 550 und das Referenzpotential GND) aktiv
ist, muss das Signal, das auf der Bereit/Besetzt-Leitung vorhanden
ist, als „0" gelesen werden. Bei
einem Ausführungsbeispiel
muss ein Pegel, der auf der Bereit/Besetzt-Leitung vorliegt, wenn
die Rezessiver-Wert-Treiber 570 aller
Vorrichtungen, mit Ausnahme einer Vorrichtung, aktiv sind und wenn
nur ein einzelner Dominanter-Wert-Treiber 572 aktiv
ist, derart sein, dass der Empfänger 526 zuverlässig diesen
Pegel als einen Pegel erfasst, der den dominanten Wert darstellt.
-
Bezug
nehmend auf die Vorrichtung 500 aus 5 soll angemerkt
werden, dass eine einfache Vorrichtung den Dominanter-Wert-Treiber 572 aufweisen
kann. So kann es beginnend mit einer einfachen Vorrichtung mit einer
Bereit/Besetzt-Leitung ausreichend sein, den Rezessiver-Wert-Treiber 570, den
Empfänger 526 und
die Steuerschaltung 522 hinzuzufügen, um einen Selbstaufzählungsmechanismus
zu implementieren. Bei einem Ausführungsbeispiel könnte das
Schaltungsteil, das mit 590 bezeichnet ist, mit dem Bereit/Besetzt-Signal
gekoppelt sein, das in einem NAND-Speicher vorliegen kann.
-
Der
Treiber 524, der Empfänger 526 und
die Steuerschaltung 522 können z. B. alle auf dem Flash-Halbleiterstück implementiert
sein.
-
Im
Folgenden werden einige weitere Aspekte einiger Ausführungsbeispiele
der vorliegenden Erfindung beschrieben. Für einige Typen von Vorrichtungen,
wie z. B. NAND-Flash-Speicher,
können
die hierin beschriebenen Konzepte und Verfahren mit minimalem Aufwand
implementiert werden.
- • Die Entscheidungsleitung kann
unter Verwendung der Bereit/Besetzt-Signalleitung implementiert
werden, ohne zusätzliche
Anschlussflächen hinzuzufügen, sowie
ohne Leistungskompromiss.
- • In
einigen Fällen
wird eine eindeutige ID (z. B. eine erste Zahl) bereits bei der
Wafersortierung gespeichert (in einer Vorrichtung oder in einer
integrierten Schaltung).
-
Bei
einigen Ausführungsbeispielen
ist der Host-Mehraufwand minimal. Bei einigen Ausführungsbeispielen
muss ein Host nur die Sequenz starten. Bei einigen anderen Ausführungsbeispielen
wird die Selbstaufzählung
sogar ohne Host-Aktion gestartet.
-
Bei
einigen Ausführungsbeispielen,
bei denen eine eindeutige ID, die während des Testens auf dem Chip
gespeichert wird, ausgewertet wird, kann garantiert werden, dass
jedes mal, wenn die Prozedur angewendet wird, die gleiche Halbleiterstück-ID-Zahl-Zuordnung
erzeugt wird. Es ist jedoch auch möglich, eine eindeutige Zahl
(oder erste Zahl) durch einen Zufallszahlgenerator zu erzeugen.
-
Einige
Ausführungsbeispiele
der Erfindung können
für eine
Aufzählung
von Flash-Halbleiterstücken
im Inneren eines Mehrchipgehäuses
verwendet werden.
-
Einige
Ausführungsbeispiele
der Erfindung können
in Kombination mit vorliegenden und zukünftigen Mehrchipvorrichtungen
mit hoher Dichte verwendet werden. In derartigen Vorrichtungen ist
es manchmal erforderlich, dass alle elektri schen Signale mit allen
Chips verbunden sind, so dass es nicht möglich ist, ein einzelnes Halbleiterstück unter
Verwendung eines elektrischen Signals (z. B. eines separaten Chipauswahlsignals „#CE") auszuwählen. Halbleiterstücke können z.
B. durch ein Verwenden von Befehlen und/oder einer Adressierung,
die durch den Chip erkannt wird, ausgewählt werden. In einem NAND-Flash-Speicher
wird z. B. ein Chip durch ein letztes Bit eines letzten Adresszyklus
ausgewählt. Um
dies zu erzielen und einen Konflikt zu vermeiden, ist es manchmal
erwünscht,
dass jedes Halbleiterstück
in einem Gehäuse
eine eindeutige ID-Zahl aufweist, die sich von den ID-Zahlen aller
anderen Halbleiterstücke
in dem gleichen Gehäuse
unterscheidet. In einigen Fällen
ist es wünschenswert,
dass die eindeutige ID eine minimale Anzahl von Bits verwendet. Für einen
16-Halbleiterstücke-Stapel z. B. sind
nur 4 Bits erforderlich. Ferner ist es manchmal erwünscht, dass
die eindeutige ID progressiv ist. Einige Ausführungsbeispiele, die hierin
beschrieben sind, bieten die Möglichkeit,
diese ID zuzuweisen, ohne zusätzliche
Anschlussflächen
hinzuzufügen
und ohne (wesentlich) die Komplexität der Vorrichtung zu erhöhen.
-
Einige
Ausführungsbeispiele
der Erfindung können
den Bedarf beseitigen, die Vorrichtung innerhalb einer gestapelten
Vorrichtung zu entwerfen, indem Verbindungsoptionen verwendet werden
oder Anschlussflächen
hinzugefügt
werden. Einige hierin beschriebene Ausführungsbeispiele sind geeignet
für NAND-Flash-Vorrichtungen.
Einige hierin beschriebene Ausführungsbeispiele
jedoch können
auch auf andere Vorrichtungen angewendet werden.
-
Unter
bestimmten Umständen
kann es erforderlich sein, eine Anschlussfläche (oder sogar mehrere Anschlussflächen) zu
einer herkömmlichen
Vorrichtung hinzuzufügen,
wenn das hierin beschriebene Konzept implementiert wird.
-
Einige
Ausführungsbeispiele
der Erfindung können
wie folgt zusammengefasst werden:
Halbleiterstücke im Inneren
eines Mehrchipgehäuses können sich
selbst mit minimaler Anstrengung eines externen Hosts aufzählen. Einige
Ausführungsbeispiele
weisen eine Schaltung oder eine Prozedur auf, um eine Selbstaufzählung jedes
Halbleiterstücks
zu ermöglichen,
indem eine Entscheidungsleitung verwendet wird. Auf dieser Entscheidungsleitung
können
alle Chips (oder Halbleiterstücke)
kommunizieren, um sich selbst eine eindeutige (nur innerhalb des Gehäuses) progressive
Zahl zuzuweisen. Nach einer Entscheidungsphase kann das gleiche
Signal für
normale Aktivitäten
verwendet werden.
-
Für einige
Typen von Vorrichtungen, wie z. B. NAND-Flash, kann dieses Verfahren
mit minimaler Anstrengung implementiert werden. Die Entscheidungsleitung
(oder gemeinsame Signalleitung) kann in dem Bereit/Besetzt-Signal
(R/B-Signal) implementiert
werden, ohne zusätzliche
Anschlussflächen
hinzuzufügen
und ohne eine Leistung zu beeinträchtigen.
-
In
einigen Fällen
wird eine eindeutige ID (oder erste Zahl) bereits beim Wafersortieren
gespeichert.
-
Bei
einigen Ausführungsbeispielen
kann ein Host-Mehraufwand minimal sein. Bei einigen Ausführungsbeispielen
ist der Host unter Umständen
nur erforderlich, um die Sequenz zu starten. Bei weiteren Ausführungsbeispielen
besteht unter Umständen kein
Bedarf nach einer Host-Wechselwirkung zur Durchführung der Selbstaufzählung.
-
Einige
Ausführungsbeispiele,
bei denen eine eindeutige ID, die in einem nichtflüchtigen
Speicher gespeichert ist, verwendet wird, können garantieren, dass jedes
Mal, wenn die Prozedur angewendet wird, die gleiche Halbleiterstück-ID-Zahl-Zuordnung
erzeugt wird. Es gibt jedoch einige Ausführungsbeispiele, bei denen
eine eindeutige Zahl durch einen Zufallszahlengenerator erzeugt
werden kann.
-
Bei
einigen Ausführungsbeispielen
werden die folgende spezifische Methodik und verwandte Schaltung
auf die Selbstaufzählung
eines Satzes von Chips innerhalb eines Mehrchipgehäuses angewendet:
- • dominantes
und rezessives Bit;
- • Selbstaufzählungsprozess.
-
Die
oben beschriebene Erfindung kann in Kombination mit der Mehrchipvorrichtung
implementiert sein, die ein Flash-NAND-Halbleiterstück beinhaltet. Ein Verwenden
des Bereit/Besetzt-(R/B-)Signals (das in einem Flash-NAND-Speicher
vorhanden sein kann) ist besonders geeignet für diese Methodik.
-
Einige
Ausführungsbeispiele
der Erfindung können
bei dem Entwurf einer neuen Generation von NAND-Flash-Vorrichtungen
verwendet werden, um einen Mehrchipentwurf zu unterstützen.
-
Bei
einigen Ausführungsbeispielen
kann eine Zufallszahl als eine vorbestimmte Zahl oder eindeutige
Zahl (oder erste Zahl) verwendet werden. Diese Lösung kann verwendet werden,
wenn keine nichtflüchtige
eindeutige ID auf einem Halbleiterstück verfügbar ist.
-
Bei
einigen Ausführungsbeispielen
kann die Selbstaufzählungsprozedur
mit Hilfe eines Hosts oder einer Vorrichtungssteuerung gestartet
werden. Eine derartige Implementierung kann verwendet werden, wenn
die Selbstaufzählung
bei jedem Anfahren durchgeführt
werden soll, und wenn der Host nicht angepasst ist, um die Sequenz
zu starten. Es kann z. B. Systeme geben, bei denen es nicht möglich ist, den
Host zum Starten der Selbstaufzählungsprozedur
zu modifizieren. Einige Ausführungsbeispiele wurden
oben in Bezug darauf beschrieben, wie die Selbstaufzählung ohne
Hilfe des Hosts gestartet werden kann.
-
Einige
Ausführungsbeispiele
der Erfindung stellen ein Verfahren zum Adressieren von Halbleiterstücken, die
parallel geschaltet sind und das gleiche Signal gemeinschaftlich
verwenden, bereit. Bei einigen Ausführungsbeispielen kann dies
unter Verwendung einer Methodik durchgeführt werden, die derjenigen ähnelt, die
in Kommunikationssystemen eingesetzt wird. Einige Ausführungsbeispiele
der Erfindung können
für Mehrchipstapel
verwendet werden, was eine neue Grenze in Speichermodulen ist. Einige Ausführungsbeispiele
der Erfindung haben sehr wenig Einfluss auf existierende Signale
oder Systeme und können
ohne weiteres in bereits verfügbaren Entwürfen implementiert
sein.
-
Einige
Ausführungsbeispiele
der Erfindung können
in gegenwärtigen
und zukünftigen
Anwendungen verwendet werden, um Mehrchipvorrichtungen zu identifizieren.
In einigen gegenwärtigen
und zukünftigen
Anwendungen ist es erwünscht,
nur ein Chipfreigabe-(#CE-)Signal zu haben. Ein einzelnes Halbleiterstück kann
durch die Decodierung einer Adresse adressiert werden. Um dies zu
erzielen und Konflikte zu vermeiden, kann es wünschenswert sein, dass jedes
Halbleiterstück
in dem Gehäuse eine
eindeutige ID-Zahl aufweist, die sich von allen anderen Halbleiterstücken in
dem gleichen Gehäuse unterscheidet.
Einige Ausführungsbeispiele
der Erfindung stellen ein Verfahren zum Ermöglichen einer bestimmten Aufzählung aller
Halbleiterstücke
bereit, ohne zusätzliche
Anschlussflächen
hinzuzufügen, und
ohne ein existierendes Mehrchipgehäuseprojekt zu modifizieren.