PatentDe  


Dokumentenidentifikation DE10019698A1 28.12.2000
Titel Verfahren und Vorrichtung zum Durchführen einer Summier-und-Vergleichs-Operation
Anmelder Hewlett-Packard Company, Palo Alto, Calif., US
Erfinder Winters, Kel D., Fort Collins, Col., US
Vertreter Schoppe, Zimmermann & Stöckeler, 81479 München
DE-Anmeldedatum 20.04.2000
DE-Aktenzeichen 10019698
Offenlegungstag 28.12.2000
Veröffentlichungstag im Patentblatt 28.12.2000
IPC-Hauptklasse G06F 7/48
IPC-Nebenklasse H03K 19/20   
Zusammenfassung Es sind ein Verfahren und eine Vorrichtung zum Durchführen einer schnellen Summier-und-Vergleichs-Operation offenbart. Die Vorrichtung verwendet einen einzelnen Übertrag-Speicherungs-Addierer in Verbindung mit einer Null-Erfassungsschaltung zum Durchführen von logischen Operationen, um zu bestimmen, ob die Summe einer Mehrzahl von Operanden gleich oder nicht gleich einer oder mehrerer Konstanten ist. Der Übertrag-Speicherungs-Addierer erzeugt eine Summe M und einen Übertrag L, die von dem Übertrag-Speicherungs-Addierer zu der Null-Erfassungsschaltung ausgegeben werden. Die Null-Erfassungsschaltung erzeugt innere Übertrag-Signale, die zwischen benachbarten Bitzellen der Null-Erfassungsschaltung weitergeleitet werden. Die Null-Erfassungsschaltung erzeugt Ausgangssignale Zk1 bis Zkn, die wahr sind, wenn die Bedingung A + B + C = (k1, k2, k3, ..., kn) für alle Konstanten k1 bis kn wahr ist. Die Übertrag-Signale bewegen sich durch lediglich ein Bit der Null-Erfassungsschaltung, wodurch die Summier-und-Vergleichs-Schaltung der vorliegenden Erfindung mit einer sehr hohen Geschwindigkeit versehen wird. Die Konstanten werden in die Metallmaske der Null-Erfassungsschaltung programmiert.

Beschreibung[de]

Die vorliegende Erfindung bezieht sich allgemein auf ein Verfahren und eine Vorrichtung zum Durchführen einer Summier-und-Vergleichs-Operation und insbesondere auf eine Hochgeschwindigkeits-Summier-und-Vergleichs-Schaltung, die die Verzögerung reduziert, die durch die Bewegung des Übertrags bewirkt wird, und die in einer relativ kleinen Chipbereichsmenge implementiert werden kann.

Eine sehr schnelle Erfassung und Voraussage der Ausnahmen des arithmetischen Überlaufs und des arithmetischen Unterlaufs sind für die Leistung von fortschrittlichen Mikroprozessoren entscheidend. Diese Operationen erfordern typischerweise einen Vergleich eines einzigen Operanden A mit einer Konstante k, wie z. B. durch eine Vergleichsoperation A = k. Diese Operationen betreffen häufiger das Vergleichen der Summe von mehr als einem Operanden (z. B. A + B + C) mit einer oder mehreren Konstanten (z. B. k1, k2), wie z. B. durch die Summier-und-Vergleichs-Operation A + B + C = {k1, k2, k3, . . ., kn}. Die Geschwindigkeit dieser Summier-und- Vergleichs-Operation hängt von der Geschwindigkeit der Übertrag-Bit-Bewegung durch eine n-Bit-Addition ab, wobei n die Anzahl der Bits jedes Operanden ist.

Der übliche Lösungsansatz verwendet zwei Summier-und-Vergleichs-Logikblöcke mit vier Eingängen, um die Bedingung A + B + C = {k1, k2, k3, . . ., kn} zu erfassen. Die zwei Blöcke sind mit einer Logik konfiguriert, um die Funktionen A + B + C < kn bzw. A + B + C > k1 durchzuführen, wobei {k1, k2, k3, . . ., kn} benachbarte ansteigende Ganzzahlen sind. Jeder Summier-und-Vergleichs-Block ist mit einem Addierer mit vier Eingängen implementiert. Die Operation A + B + C > k1 wird beispielsweise als eine Überlaufoperation (A + B + C - (k1 + 1)) durchgeführt.

Um die Leistung zu verbessern, ist es bekannt, den Addierer, der vier Eingänge aufweist, mit zwei Übertrag-Speicherungs- Addierern (CSA; CSA = Carry Save Adder) mit drei Eingängen und einem einzelnen Übertrag-Bewegungs-Addierer (CPA; CPA = Carry Propagate Adder) zu implementieren. Jeder CSA ist eine m-Bit-Volladdiererschaltung mit drei eingegebenen Summanden (d. h. A, B und C) und zwei Ausgangssignalen, nämlich einer Summe und einem Übertrag. Die CSA sind derart kaskadiert, daß das Ausgangssignal (d. h. die Summe und der Übertrag) des ersten CSA in den zweiten CSA eingespeist wird. Der zweite CSA empfängt ferner als Eingangssignal desselben -(k1 + 1). Der CPA ist eine m-Bit-Volladdiererschaltung, die die Übertrag-Bits derselben innen bewegt. Der CPA empfängt als Eingangssignal die Ausgangssignale des Übertrags und der Summe von dem zweiten CSA. Lediglich das Ausgangssignal des CPA mit dem höchstwertigen Übertrag, das das Überlaufbit des CPA darstellt, muß ausgewertet werden, um das Resultat der Summier-und-Vergleichs-Operation zu bestimmen.

Dieser letztere Lösungsansatz weist hinsichtlich der Chipflächenmenge, die zur Implementation der Schaltung benötigt wird, und hinsichtlich der Leistung einige Nachteile auf. Lediglich der erste CSA-Block kann durch beide Vergleichsfunktionen A + B + C < kn und A + B + C > k1 gemeinsam verwendet werden. Folglich wird eine Gesamtzahl von drei CSA- Blöcken und zwei CPA-Blöcken benötigt, um die Funktion A + B + C = {k1, k2, k3, . . ., kn} zu realisieren, was die benötigte Chipbereichsmenge erhöht, um die Logik zu implementieren. Die Leistung dieser Schaltung ist durch die Geschwindigkeit der n-Bit-Übertrag-Bewegungsoperationen in dem CPA-Block begrenzt.

Ein Artikel mit dem Titel "Evaluating 'A + B = K' Conditions in Constant Time", in PROCEEDINGS, IEEEE INTERNATIONAL SYM-POSIUM ON CIRCUITS AND SYSTEMS, Bd. 1, 1988, Seiten 243-6, von Cortadella und Llaberia, schlägt ein Schema zum Auswerten einer Summier-und-Vergleichs-Operation A + B = K mit zwei Eingangssignalen ohne eine Übertrag-Bewegung vor. Es wurde in einem Artikel mit dem Titel "Early Zero Detection", in PROCEEDINGS, 1996 INTERNATIONAL CONFERENCE ON COMPUTER DESIGN, 1996, vorgeschlagen, dieses Schema zu vereinfachen. Beide Artikel von Lutz und Jayasimha legen dar, daß das Übertrag-Ausgangssignal eines Einzel-Bit-Addierers unabhängig von dem Übertrag-Eingangssignal ausgedrückt werden kann, wenn das Summenausgangssignal wie folgt bekannt ist:



Wenn S = K, dann Cout = NICHT(K)P ODER G. (Gleichung 1)



S ist die Summe von A + B, Cout ist der Übertrag von A + B,

P ist (A EXKLUSIV-ODER B), G ist AB und K ist das bekannte konstante Bit. Ein einfacher Beweis dieser Beobachtung folgt aus:



Wenn S = K, dann K = P EXKLUSIV-ODER Cin, (Gleichung 2)



Cin = P EXKLUSIV-ODER K, (Gleichung 3)



Cout = Pcin ODER G, (Gleichung 4)



Cout = P(P EXKLUSIV-ODER K) ODER G, (Gleichung 5)



Cout = P(NICHT(K)P ODER-NICHT(p)k) ODER G, (Gleichung 6)



Cout = NICHT(K)P ODER G, (Gleichung 7)

Die übliche Summengleichung



S = A EXKLUSIV-ODER B EXKLUSIV-ODER Cin, (Gleichung 8)



wird verwendet, um Gleichheit zu erfassen. Dieselbe wird gleich Null sein, wenn A + B = K.

Die Aufgabe der vorliegenden Erfindung besteht darin, eine einfache und schnelle Vorrichtung zum Durchführen einer Summier-und-Vergleichs-Operation zu schaffen, die den gleichzeitigen Vergleich einer Summe von Operanden mit mehreren Konstanten auf geringem Raum ermöglicht.

Diese Aufgabe wird durch eine Vorrichtung zum Durchführen einer Summier-und-Vergleichs-Operation gemäß Anspruch 1 gelöst.

Ein Vorteil der vorliegenden Erfindung besteht darin, daß dieselbe ein gleichzeitiges Vergleichen einer Summe von Operanden mit mehreren Konstanten ermöglicht.

Ein weiterer Vorteil der vorliegenden Erfindung besteht darin, daß dieselbe das Programmieren der Konstante k in eine Metallmaske ermöglicht, was es ermöglicht, daß ein einziger Schaltungsentwurf für mehrere Werte von k verwendet werden kann.

Ein weiterer Vorteil der vorliegenden Erfindung besteht darin, daß die Summier-und-Vergleichs-Schaltung der vorliegenden Erfindung die Beobachtung nutzt, daß das Übertrag-Ausgangssignal unabhängig von dem Übertrag-Eingangssignal ausgedrückt werden kann, und daß dieselbe mit einer relativ kleinen Chipbereichsmenge oder Chipflächenmenge implementiert werden kann.

Ein weiterer Vorteil der vorliegenden Erfindung besteht darin, daß die Summier-und-Vergleichs-Schaltung gleichzeitig eine Summe mit mehreren Konstanten vergleichen kann, was es ermöglicht, daß die Konstanten in einer Metallmaske programmiert werden können, und daß die Schaltung wesentliche Leistungsverbesserungen gegenüber existierenden Summier- und-Vergleichs-Schaltungen zeigt.

Es sind ein Verfahren und eine Vorrichtung zum Durchführen einer schnellen Summier-und-Vergleichs-Operation vorgesehen. Die Vorrichtung der vorliegenden Erfindung verwendet einen einzigen Übertrag-Speicherungs-Addierer in Verbindung mit einer Null-Erfassungsschaltung zum Durchführen von logischen Operationen, um zu bestimmen, ob die Summe eine Mehrzahl von Operanden gleich einer oder mehrerer Konstanten ist oder nicht. Der Übertrag-Speicherungs-Addierer erzeugt eine Summe M und einen Übertrag L, die von dem Übertrag-Speicherungs- Addierer zu der Null-Erfassungsschaltung ausgegeben werden. Die Null-Erfassungsschaltung erzeugt innere Übertrag-Signale, die zwischen benachbarten Bitzellen der Null-Erfassungsschaltung weitergeleitet werden. Die Null-Erfassungsschaltung erzeugt Ausgangssignale Zk1 bis Zkn, die wahr sind, wenn die Bedingung A + B + C = {k1, k2, k3, . . ., kn} für alle Konstanten k1 bis kn gilt.

Die Übertrag-Signale werden durch lediglich ein Bit der Null-Detektorschaltung bewegt, wodurch die Summier-und-Vergleichs-Schaltung der vorliegenden Erfindung mit einer extrem hohen Geschwindigkeit versehen wird. Die Null-Erfassungsschaltung führt die logischen Operationen durch, die durch Zk = (L EXKLUSIV-ODER M EXKLUSIV-ODER CIN) EXKLUSIV- NICHT-ODER k dargestellt sind, wobei Zk eines der Ausgangssignale Zk1 bis Zkn ist, k eine der Konstanten k1 bis kn und CIN das Übertrag-Eingangssignal in die Null-Detektorbitzelle ist. Das Ausgangssignal Zk wird gleich Null sein, wenn A + B + C = K ist. Daher wird, wenn eine der Null-Detektorbitzellen eine Fehlübereinstimmung zwischen der Summe und der Konstanten antrifft, das Ausgangssignal Zk für diese spezielle Bitzelle anzeigen, daß eine Fehlübereinstimmung aufgetreten ist.

Vorzugsweise ist die Logik des Übertrag-Summen-Addierers und des Null-Detektors in einer dynamischen Dominologik implementiert, die weiter die Geschwindigkeit der Summier-und- Vergleichs-Schaltung erhöht. Durch Verwenden eines einzigen Übertrag-Speicherungs-Addierers in Verbindung mit der Null- Detektorschaltung der vorliegenden Erfindung ist die Chipbereichsmenge, die zur Implementation der Summier-und-Vergleichs-Schaltung erforderlich ist, wesentlich kleiner als bei bekannten Summier-und-Vergleichs-Schaltungen, die mehrere Übertrag-Speicherungs-Addierer verwenden.

Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend unter Bezugnahme auf die beigefügten Zeichnungen näher erläutert. Es zeigen:

Fig. 1 ein Blockdiagramm der Summier-und-Vergleichs- Schaltung der vorliegenden Erfindung;

Fig. 2 ein Blockdiagramm einer ZD-Bitzelle, die den ZD- Block von Fig. 1 aufweist;

Fig. 3A und 3B schematische Diagramme einer Bitzelle, die der CSA-Block von Fig. 1 aufweist; und

Fig. 4A und 4B schematische Diagramme der ZD-Bitzelle, die in Fig. 2 gezeigt ist.

Die Summier-und-Vergleichs-Schaltung 10 der vorliegenden Erfindung zum Auswerten von A + B + C = {k1, k2, k3, . . ., kn} weist vorzugsweise einen einzelnen Übertrag-Speicherungs- Addiererblock mit (CSA) 12 drei Eingängen auf, dem ein Null-Erfassungs- (ZD-; ZD = Zero Detection) Block 14 folgt, wie es in Fig. 1 gezeigt ist. Der ZD-Block 14 weist n Ausgangssignale Zk1 bis Zkn auf, die wahr sind, d. h. aktiviert sind, wenn die Bedingung A + B + C = {k1, k2, k3, . . ., kn} für jeweils jede der Konstanten k1 bis kn erfüllt ist.

Wie Übertrag-Bewegungsaddierer (CPAs) weist der ZD-Block 14 innere Übertrag-Signale auf, die zwischen benachbarten Bitzellen weitergeleitet werden. Eine der Bitzellen 17 des ZD- Blocks 14 ist in Blockdiagrammform in Fig. 2 gezeigt. Im Gegensatz zu den CPAs ist jedes der Übertrag-Ausgangssignale Zk1 bis Zkn jeder Bitzelle 17 unabhängig von dem Übertrag- Eingangssignal Cin1 bis CinN derselben. Daher bewegen sich die Übertrag-Signale lediglich durch ein Bit des ZD-Blocks 14, was die Summier-und-Vergleichs-Schaltung 10 mit einer sehr hohen Geschwindigkeit versieht. Die Vergleichskonstanten k1 bis kn sind in die Metallmaskenverbindungen (nicht gezeigt) dieser Übertrag-Signale programmiert, wie es im folgenden detaillierter erörtert ist. Jede ZD-Bitzelle weist zwei Übertrag-Ausgangssignale Cout0H und Cout0L und die Komplemente derselben Cout1H bzw. Cout1L auf.

Jeder Übertrag-Eingang Cin1 bis CinN einer ZD-Bitzelle i ist mit einem der vier Übertrag-Ausgänge Cout0H, Cout0L, Cout1H, Cout1L der vorhergehenden Bitzelle, Bitzelle i-1 (nicht gezeigt), verbunden. Der Übertrag-Ausgang einer vorhergehenden Bitzelle, Bitzelle i-1, mit dem ein Übertrag-Eingang einer Bitzelle verbunden ist, wird gemäß der folgenden Tabelle ausgewählt: TABELLE 1



Wenn k = 0 ist, ist jeder der Übertrag-Eingänge (Cin1 bis CinN) einer Bitzelle i mit einem nicht-komplementierten Übertrag-Ausgang (Cout0H oder Cout1H) des vorhergehenden Bits, Bitzelle i-1, verbunden. Wenn k = 1 ist, ist ein Übertrag-Eingang (Cin1 bis CinN) einer Bitzelle i mit dem komplementierten Übertrag-Ausgang (Cout0L oder Cout1L) der vorhergehenden Bitzelle, Bitzelle i-1, verbunden. Die Art und Weise, auf die dies erreicht wird, ist im folgenden unter Bezugnahme auf Fig. 4B erörtert.

Die logischen Gleichungen für die Null-Erfassungsbitzelle 17 werden wie folgt abgeleitet:



Cout = NICHT(k)P ODER G, (Gleichung 9)



wobei das Bewegungs-Signal P von dem CSA-Block 12 als P = L EXKLUSIV-ODER M ausgedrückt werden kann, und das Erzeugungssignal G von dem CSA-Block 12 als G = LM ausgedrückt werden kann. Gleichung 9 kann dann wie folgt ausgedrückt werden:



Cout = NICHT(k)(L EXKLUSIV-ODER M) ODER LM (Gleichung 10)

Gleichung 10 kann für die Fälle vereinfacht werden, bei denen k = 0 und k = 1 ist, um die folgenden vier Übertrag-Ausgangsgleichungen zu erhalten:



Cout0H = L ODER M, (Gleichung 11)



Cout0L = NICHT(L ODER M), (Gleichung 12)



Cout1H = LM (Gleichung 13)



Cout1L = NICHT(LM), (Gleichung 14)

Der Abschnitt der ZD-Bitzellenschaltung 17, der die logische Funktion durchführt, die durch die Gleichungen 9-14 dargestellt ist, ist in dem schematischen Diagramm von Fig. 4A gezeigt, das im folgenden detaillierter erörtert ist. Die Ausgänge Zk1 bis Zkn der ZD-Bitzelle 17 sind für alle Bits drahtmäßig "ODER-verknüpft". Diese Ausgangssignale zeigen an, ob die Summe von L, M und CIN mit der Konstante k übereinstimmen, indem die folgende Gleichung verwendet wird:



Zk = (L EXKLUSIV-ODER M EXKLUSIV-NICHT-ODER CIN) EXKLUSIV-ODER k, (Gleichung 15)

Zk ist einer der Ausgänge Zk1 bis Zkn, k ist eine der Konstanten k1 bis kn und CIN ist einer der Übertrag-Eingänge Cin1 bis CinN. Die Gleichung 15 kann für Fälle vereinfacht werden, bei denen k = 0 und k = 1 ist, um folgende Gleichung zu erhalten:



Zk NICHT(L EXKLUSIV-ODER M EXKLUSIV-ODER CIN) (Gleichung 16)

CIN ist mit dem nicht-komplementierten Übertrag-Ausgang des vorherigen Bits (COUT0H oder COUT1H) verbunden, wenn k = 0 ist, und mit dem komplementierten Übertrag-Ausgang des vorhergehenden Bits (COUT0L oder COUT1L) verbunden, wenn k = 1 ist.

Der Abschnitt der ZD-Bitzellen-Schaltung 17, der die logische Funktion durchführt, die durch die Gleichungen 15 und 16 dargestellt ist, ist in dem schematischen Diagramm von Fig. 4B gezeigt, das detailliert im folgenden erörtert ist.

Ein schematisches Diagramm von einer der Bitzellen des CSA- Blocks 12 ist in Fig. 3A und 3B gezeigt. Wie es für Fachleute offensichtlich ist, wird die Anzahl der Bitzellen, die der CSA-Block 12 und der ZD-Block 14 aufweisen, durch die Anzahl der Bits bestimmt, die die Operanden A, B und C aufweisen. Fachleuten wird es offensichtlich sein, daß die Summier-und-Vergleichs-Schaltung 10 nicht auf eine spezielle Länge begrenzt ist, d. h. dieselbe ist nicht bezüglich der Anzahl der Bits des Operanden begrenzt. Ferner ist die Summier-und-Vergleichs-Schaltung 10 nicht bezüglich der Anzahl der Konstanten begrenzt, mit denen die Summe verglichen wird, wie es für Fachleute offensichtlich ist.

Die Summier-und-Vergleichs-Schaltung 10 verwendet vorzugsweise eine dynamische Dominologik, die gemäß einem Komplementär-Metalloxid-Halbleiter-(CMOS-)Verfahren gefertigt ist. Da die dynamische Dominologik in der Technik gut bekannt ist, ist im Interesse der Kürze hierin keine detaillierte Erörterung der dynamischen Dominologik vorgesehen. Da ferner CMOS-Fertigungsverfahren Fachleuten gut bekannt sind, wird eine detaillierte Erörterung der Art und Weise, auf die die Suminier-und-Vergleichs-Schaltung der vorliegenden Erfindung unter Verwendung eines CMOS-Fertigungsverfahrens gefertigt wird, hierin nicht geliefert. Fachleuten wird es offensichtlich sein, daß eine Mehrzahl von CMOS-Fertigungsverfahren derzeit in der Industrie verwendet wird, und daß jedes dieser Verfahren zur Verwendung mit der vorliegenden Erfindung geeignet ist.

Jede CSA-Bitzelle des CSA-Blocks 12 weist vorzugsweise doppelschienige, d. h. wahre und komplementierte, Eingänge und Ausgänge für die Übertrag- und Summen-Funktionen auf. Die wahren und komplementierten Eingänge und Ausgänge weisen in den Fig. 3A bis 4B einen Suffix H bzw. L auf. Alle Ausgangssignale werden während der Vorladephase, wenn sich das Takteingangssignal in einem niedrigen Zustand befindet, in einen niedrigen Zustand getrieben, und, wenn sich das Taktsignal während der Auswertungsphase in einem hohen Zustand befindet, in einen gültigen Zustand ausgewertet.

Der Abschnitt 20 der CSA-Bitzelle, der die Übertrag-Ausgangssignale erzeugt, ist in Fig. 3A gezeigt. Der Abschnitt 30 der CSA-Bitzelle, der die Summen-Ausgangssignale erzeugt, ist in Fig. 3B gezeigt. Die Art und Weise, auf die die Übertrag-Ausgangssignale durch den Abschnitt 20 der CSA-Bitzelle erzeugt werden, ist nun unter Bezugnahme auf Fig. 3A erörtert. Wie im vorhergehenden erwähnt, verwendet die Summier- und-Vergleichs-Schaltung 10 der vorliegenden Erfindung vorzugsweise eine dynamische Dominologik, die in der Technik gut bekannt ist. Die dynamische Dominologik ist unter Verwendung einer dynamischen Vorladelogikstufe und einer statischen Ausgangsstufe implementiert. Die Übertrag-Ausgangssignale 21 und 22 der CSA-Bitzelle entsprechen dem Übertrag-Ausgangssignal L des CSA-Blocks 12, der in Fig. 1 gezeigt ist. Die statische Ausgangsstufe der Schaltung 20 weist die statischen Invertierer 23 und 24 auf, die das Ausgangssignal der Schaltung 20 puffern. Das Ausgangsignal 21 entspricht dem wahren Übertrag-Ausgangssignal, und das Ausgangssignal 22 entspricht dem komplementierten Übertrag-Ausgangssignal.

Die Vorladestufe weist einen Vorlade-PFET 27 und eine Mehrzahl von NFETs 25 auf, die die logischen Funktionen durchführen, die durch die gewöhnliche Summengleichung, Gleichung 8, dargestellt sind, um das wahre Übertrag-Ausgangssignal 21 zu erzeugen. Ähnlich weist die Schaltung 20 eine zweite Vorladestufe auf, die einen Vorlade-PFET 28 und eine Mehrzahl von NFETs 26 aufweist, die die logischen Funktionen durchführen, die durch die Gleichung 8 dargestellt sind, um das komplementierte Übertrag-Ausgangssignal 22 zu erzeugen.

Die Vorlade-PFETs 27 und 28 laden Knoten 29 und 31 während einer Vorladephase vor, wenn sich der Takt 32 in einem niedrigen Zustand befindet. Wenn sich der Takt 32 in einem niedrigen Zustand befindet, werden die Vorlade-FETs 27 und 28 eingeschaltet und die Vorladeknoten 29 und 31 werden in einen hohen Zustand geladen. Während der Vorladephase wird ein Auswertungs-FET 33, der die Vorladestufen mit Masse (GND) verbindet, deaktiviert. Wenn der Takt 32 während der Auswertungsphase in einen hohen Zustand geht, wird der Auswertungs-FET 33 eingeschaltet, wodurch ein Weg von einem der Vorladeknoten 29 oder 31 zu Masse vorgesehen wird. Während der Auswertungsphase werden entweder die Vorladestufe, die die NFETs 25 aufweist, oder die Vorladestufe, die die NFETs 26 aufweist, auf Masse gezogen. Dies wird bewirken, daß sich das Übertrag-Ausgangssignal 21 in einem hohen Zustand befindet, wenn sich das Übertrag-Ausgangssignal 22 in einem niedrigen Zustand befindet, und umgekehrt.

Der Abschnitt 30 der anderen CSA-Bitzelle, die die Summen- Ausgangssignale erzeugt, ist in Fig. 3B gezeigt. Diese Schaltung ist ferner vorzugsweise in einer dynamischen Dominologik implementiert und arbeitet auf eine ähnliche Art und Weise, auf die die Schaltung 20 von Fig. 3A arbeitet. Die Schaltung 40 weist einen statischen Invertierer 41 und einen statischen Invertierer 42 auf, die die Ausgangssignale 43 bzw. 44 der Schaltung 40 puffern. Die Schaltung 40 weist eine erste dynamische Vorladestufe, die einen PFET 48 und NFETs 45 und 46 aufweist, und eine zweite dynamische Vorladestufe, die einen PFET 49 und NFETs 46 und 47 aufweist, auf.

Der Vorlade-FET 48 arbeitet in Verbindung mit den NFETs 45 und 46. Der Vorlade-FET 49 arbeitet in Verbindung mit der Vorladestufe, die die NFETs 46 und 47 aufweist. Halter-FETs 51 und 52 halten die Ladung aufrecht, die auf den Vorladeknoten 53 bzw. 54 während der Vorladephase aufgebracht wurde. Während der Auswertungsphase wird der Auswertungs-NFET 55 aktiviert, wodurch ein Weg von den Vorladeknoten 53 und 54 zu Masse (GND) vorgesehen wird. Wenn sich das Taktsignal 32 in einem niedrigen Zustand befindet, werden die Vorlade- FETs 48 und 49 aktiviert, wodurch es ermöglicht wird, daß eine Ladung auf den Vorladeknoten 53 und 54 aufgebracht wird.

Der NFET 55 ist während der Vorladephase inaktiv. Wenn sich der Takt 32 in einem hohen Zustand befindet, wird während der Auswertungsphase der NFET 55 aktiviert, wodurch ein Weg von einem der Vorladeknoten 53 oder 54 zu Masse abhängig von den Werten der Bits, die an die Tore der NFETs 45, 46 und 47 angelegt sind, vorgesehen wird. Dies bewirkt, daß sich die Ausgangssignale 43 und 44 entweder in einem hohen oder niedrigen Zustand befinden. Wenn sich das Ausgangssignal 43 in einem hohen Zustand befindet, befindet sich das Ausgangssignal 44 in einem niedrigen Zustand und umgekehrt. Die Ausgangssignale 43 und 44 entsprechen dem Summen-Ausgangssignal M des CSA-Blocks 12. Natürlich weist das Summen-Ausgangssignal M eine Mehrzahl von Bits auf, die den Ausgangssignalen von allen CSA-Bitzellen entsprechen.

Das Übertrag-Ausgangssignal L und das Summen-Ausgangssignal M werden zu dem ZD-Block 14 geliefert, wie es in Fig. 1 gezeigt ist. Das Übertrag- und das Summen-Ausgangssignal werden durch die ZD-Bitzellen 17 verwendet. Fig. 4A und 4B stellen eine der ZD-Bitzellen 17 des ZD-Blocks 14 dar. Die Art und Weise, auf die die ZD-Bitzellen arbeiten, wird nun unter Bezugnahme auf Fig. 4A und 4B beschrieben.

Die Übertrag-Ausgangssignal-Erzeugungsschaltung 60 der ZD- Zelle weist doppelschienige Übertrag-Eingänge und Übertrag- Ausgänge auf, die einen Suffix H bzw. L aufweisen. Die Übertrag-Ausgangssignal-Erzeugungsschaltung 60 weist vier statische Ausgangsinvertierer 61, 62, 63 und 64 auf, die die Ausgangssignale 65, 66, 67 bzw. 68 puffern. Die Schaltung 60 weist vier Vorlade-PFETs 71, 72, 73 und 74 auf, die die Vorladeknoten 75, 76, 77 bzw. 78 vorladen. Die Schaltung 60 weist vier dynamische Vorladestufen auf, die die Vorlade- PFETs 71, 72, 73 und 74 und eine Mehrzahl von NFETs 81, 82, 83 und 84 aufweisen.

Die Schaltung 60 weist einen Auswertungs-FET 86 auf, der einen Weg von den Vorladeknoten 75, 76, 77 und 78 zu Masse (GND) während der Auswertungsphase aufweist. Die Schaltung 60 weist vier Halter-FETs 91, 92, 93 und 94 auf, die die Ladungen aufrechterhalten, die auf den Vorladeknoten 75, 76, 77 bzw. 78 während der Vorladephase aufgebracht wurden.

Wenn sich das Taktsignal 32 während der Vorladephase in einem niedrigen Zustand befindet, werden die Vorladeknoten 75, 76, 77 und 78 auf VDD als ein Resultat der Aktivierung der Vorlade-FETs 71, 72, 73 und 74 vorgeladen. Wenn sich das Taktsignal in einem hohen Zustand befindet, wird während der Auswertungsphase der Auswertungs-FET 86 aktiviert, wodurch ein Weg von den Vorladeknoten zu Masse (GND) vorgesehen wird. Die logische Stufe, die die NFETs 81 und PFET 71 aufweist, führt die logischen Operationen durch, die durch die Gleichung 12 dargestellt sind, und erzeugt ein Ausgangssignal 65, das Cout0L entspricht. Die logische Stufe, die die NFETs 82 und den PFET 72 aufweist, führt die logischen Operationen durch, die durch die Gleichung 11 dargestellt sind, um das Ausgangssignal 66 zu erzeugen, das Cout0H entspricht.

Die Vorladestufe, die die NFETs 83 und den PFET 73 aufweist, führt die logischen Operationen durch, die durch die Gleichung 13 dargestellt sind, um das Ausgangssignal 67 zu erzeugen, das Cout1H entspricht. Die Vorladestufe, die die NFETs 84 und den PFET 74 aufweist, führt die logischen Operationen durch, die durch die Gleichung 14 dargestellt sind, um das Ausgangssignal 68 zu erzeugen, das Cout1L entspricht.

Wie im vorhergehenden unter Bezugnahme auf Tabelle 1 erwähnt, sind die Übertrag-Ausgänge der Schaltung 60 der ZD- Bitzelle mit bestimmten Übertrag-Eingängen einer benachbarten ZD-Bitzelle des ZD-Blocks 14 verbunden. Daher sind die Übertrag-Ausgänge Cout0H, Cout0L, Cout1H und Cout1L mit bestimmten Übertrag-Eingängen Cin0H einer benachbarten ZD-Bitzelle (nicht gezeigt) verbunden. Wie in Tabelle 1 gezeigt, werden die Werte der Konstanten bestimmen, welche Übertrag- Ausgänge von einer ZD-Bitzelle durch programmierbare Metallmasken mit den Übertrag-Eingängen der benachbarten Bitzelle, wie im vorhergehenden detailliert erörtert, verbunden sind.

Fig. 4B ist ein schematisches Diagramm der Schaltung 100 der ZD-Bitzelle 17, die die Ausgangssignale Zk1 bis ZkN der Summier-und-Vergleichs-Schaltung 10 erzeugt. Die Schaltung 100 weist eine Ausgangsstufe für jedes der Zk-Ausgangssignale auf. Gemäß diesem Beispiel, bei dem die Operanden A, B und C jeweils vier Bits aufweisen, weist die Schaltung 100 vier Ausgangsstufen 101, 102, 103 und 104 auf. Für Fachleute ist es natürlich offensichtlich, daß die Summier-und-Vergleichs-Schaltung 10 auf keine spezielle Größe oder auf Verarbeitungsoperanden einer speziellen Länge begrenzt ist. Jede Ausgangsstufe weist einen statischen Ausgangsinvertierer 105 auf, der das Ausgangssignal Zk in den Leitungen 106 puffert. Jede Ausgangsstufe weist einen Vorlade-FET 108 auf, der die Vorladeknoten 107 während der Vorladephase vorlädt, wenn sich der Takt 32 in einem niedrigen Zustand befindet.

Jede der Ausgangsstufen der Schaltung 100 ist an den Knoten N2 und N3 mit der Vorladestufe der Schaltung 100 verbunden, die die NFETs 109, 110 und 111 und die Vorlade-PFETs 108 aufweist. Wenn sich das Taktsignal während der Auswertungsphase in einem hohen Zustand befindet, ist der Auswertungs- FET 113 aktiviert. Abhängig von den Werten des Summen-Signals M und des Übertrag-Signals L, die aus dem CSA-Block 12 ausgegeben werden, werden die Vorladeknoten 107 entweder nach unten auf Masse gezogen oder werden ihre Vorladezustände beibehalten. Die NFETs 109, 110 und 111 arbeiten zusammen, um die logischen Funktionen durchzuführen, die durch Gleichung 15 dargestellt sind.

Die Zk-Ausgangssignale in den Leitungen 106 werden sich in einem hohen Zustand befinden, wenn sich die Vorladeknoten in einem niedrigen Zustand befinden, was folglich bewirkt, daß die NFETs 114 aktiviert werden. Jede Ausgangsstufe weist ferner einen zweiten Vorlade-FET 115 auf, der einen Knoten 116 während der Vorladephase vorlädt, wenn sich der Takt 32 in einem niedrigen Zustand befindet.

Wenn das Taktsignal während der Auswertungsphase in einen hohen Zustand geht, werden die NFETs 114 aktiviert, was folglich bewirkt, daß die Zk-Ausgangssignale nach unten auf Masse gezogen werden. Daher befinden sich die Ausgangssignale Zk1 bis Zk4 in einem niedrigen Zustand, wenn sich die Ausgangssignale der statischen Invertierer 105 in den Leitungen 106 in einem hohen Zustand befinden. Zu allen anderen Zeitpunkten befinden sich die Zk-Ausgangssignale Zk1 bis Zk4 in einem hohen Zustand. Dies liegt daran, daß sich die Zk- Ausgangssignale während der Vorladephase und immer dann, wenn sich die Ausgangssignale der statischen Invertierer 105 in einem niedrigen Zustand befinden, in einem hohen Zustand befinden. Wenn sich daher eines der Zk-Ausgangssignale in einem hohen Zustand befindet, zeigt dies an, daß eine Fehlübereinstimmung zwischen einer speziellen Konstante und der Summe aufgetreten ist, mit der dieselbe verglichen wird. Fachleuten wird es offensichtlich sein, daß die Logik ferner derart konfiguriert sein kann, daß, wenn sich eines der Zk- Ausgangssignale in einem niedrigen Zustand befindet, eine Fehlübereinstimmung aufgetreten ist.

Die Zk-Ausgänge sind mit jeweiligen Zk-Ausgängen von anderen ZD-Bitzellen (nicht gezeigt) drahtmäßig ODER-verknüpft. Beispielsweise wird der Ausgang Zk4 mit den Zk4-Ausgängen von allen anderen ZD-Bitzellen drahtmäßig ODER-verknüpft sein. Immer dann, wenn eine Fehlübereinstimmung zwischen einem der Zk4-Ausgänge und einem Bit einer Konstante k auftritt, befindet sich das Zk4-Ausgangssignal des ZD-Blocks 14 in einem hohen Zustand, was folglich anzeigt, daß eine Fehlübereinstimmung aufgetreten ist. Dies ist für alle der Zk-Ausgänge wahr.

Daher kann die Summier-und-Vergleichs-Schaltung der vorliegenden Erfindung konfiguriert werden, um eine oder mehrere Konstanten mit einer Summe zu vergleichen. Da außerdem die Summier-und-Vergleichs-Schaltung 10 keine Übertrag-Bewegung erfordert, ist dieselbe sehr schnell. Die Geschwindigkeit der Summier-und-Vergleichs-Schaltung wird weiter unter Verwendung der dynamischen Dominologik erhöht, die die Stufen von NFETs verwendet, um die Hinunterziehgeschwindigkeit der Schaltung zu maximieren. Die Summier-und-Vergleichs-Schaltung erfordert ferner nicht die Verwendung von zwei Übertrag-Speicherungs-Addierern, wie es die vorher erwähnte bekannte Summier-und-Vergleichs-Schaltung erfordert, sondern verwendet vielmehr den einzelnen Übertrag-Speicherungs- Addierer 12 in Verbindung mit dem Null-Erfassungsblock 14. Dies ermöglicht es, daß die Chipflächenmenge, die zur Implementation der Summier-und-Vergleichs-Schaltung 10 benötigt wird, minimiert wird.

Fachleuten wird es offensichtlich sein, daß die vorliegende Erfindung nicht auf einen speziellen Logiktyp zum Durchführen der Funktionen derselben begrenzt ist. Fachleuten wird es weiterhin offensichtlich sein, daß es viele unterschiedliche Arten zum Implementieren einer Logik gibt, die die notwendigen Funktionen durchführen kann.


Anspruch[de]
  1. 1. Vorrichtung (10) zum Durchführen einer Summier-und- Vergleichs-Operation, wobei die Vorrichtung eine Summe einer Mehrzahl von Operanden erzeugt und die Summe mit mindestens einer Konstante k vergleicht, wobei die Vorrichtung folgende Merkmale aufweist:

    einen Übertrag-Speicherungs-Addierer (12), wobei der Übertrag-Speicherungs-Addierer eine Mehrzahl von Operanden empfängt, die addiert werden sollen, und wobei der Übertrag-Speicherungs-Addierer eine Logik aufweist, die konfiguriert ist, um die Operanden zu addieren, um dadurch die Summe und einen Übertrag zu erzeugen, wobei die Summe und der Übertrag von dem Übertrag-Speicherungs-Addierer ausgegeben werden; und

    eine Null-Detektorschaltung (14), wobei die Null-Detektorschaltung das Summen-Ausgangssignal und das Übertrag-Ausgangssignal von dem Übertrag-Speicherungs-Addierer empfängt, und wobei die Null-Detektorschaltung eine Logik aufweist, die konfiguriert ist, um die Summe und den Übertrag zu verarbeiten, und um dieselben mit mindestens einer Konstante zu vergleichen, um dadurch zu bestimmen, ob die Summe gleich oder nicht gleich der mindestens einen Konstante ist.
  2. 2. Vorrichtung gemäß Anspruch 1, bei der die Null-Detektorschaltung den Übertrag (L) und die Summe (M) verarbeitet und bestimmt, ob die Summe gleich oder nicht gleich einer Mehrzahl von Konstanten ist.
  3. 3. Vorrichtung gemäß Anspruch 1 oder 2, bei der der Übertrag-Speicherungs-Addierer und die Null-Detektorschaltung in einer dynamischen Dominologik implementiert sind.
  4. 4. Vorrichtung gemäß Anspruch 1, 2 oder 3, bei der der Übertrag-Speicherungs-Addierer (12) ferner eine Mehrzahl von Bitzellen aufweist, wobei jede Bitzelle folgende Merkmale aufweist: eine Übertrag-Erzeugungsschaltung (20), die den Übertrag erzeugt, und eine Summen-Erzeugungsschaltung (40), die die Summe erzeugt, wobei die Übertrag-Erzeugungsschaltung und die Summen-Erzeugungsschaltung eine Logik zum Durchführen von logischen Operationen aufweisen, die durch eine Gleichung A EXKLUSIV-ODER B EXKLUSIV-ODER C dargestellt sind, um die Summe M und den Übertrag L zu erzeugen, wobei A, B und C die Operanden sind, die addiert werden, wobei jeder Operand eine Mehrzahl von Bits aufweist, und wobei die Summe M und der Übertrag L jeweils eine Mehrzahl von Bits aufweisen.
  5. 5. Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der die Null-Detektorschaltung (14) eine Mehrzahl von Bitzellen (17) aufweist, wobei jede Bitzelle eine Logik aufweist, die konfiguriert ist, um logische Operationen durchzuführen, die durch eine Gleichung Zk = (L EXKLUSIV-ODER M EXKLUSIV-ODER CIN) EXKLUSIV-NICHT- ODER K dargestellt sind, wobei Zk das Ausgangssignal der Null-Detektorschaltung ist, CIN ein Übertrag-Eingangssignal von einer benachbarten Bitzelle der Null- Detektorschaltung ist, und k die Konstante ist, mit der eine Zahl, die durch die Summe M und den Übertrag L dargestellt ist, verglichen wird, und wobei Zk Null ist, wenn A + B + C = k ist.
  6. 6. Vorrichtung gemäß Anspruch 4 oder 5, bei der jede Übertrag-Erzeugungsschaltung (20) eine erste Vorladestufe aufweist, die einen ersten Vorlade-P-Feldeffekttransistor (PFET) (27) und eine Mehrzahl von N-Feldeffekttransistoren (NFETs) (25) aufweist, wobei der erste Vorlade-PFET einen Gate-Anschluß, der mit einem Takt (32) verbunden ist, und einen Source-Anschluß aufweist, der mit einer Versorgungsspannung VDD verbunden ist, wobei der Drain-Anschluß des PFET mit einer ersten Gruppe von NFETs (25) der erste Vorladestufe kanalverbunden ist, eine zweite Gruppe von NFETs (25) der ersten Vorladestufe mit einem Auswertungs- NFET (33) kanalverbunden ist, wobei der Auswertungs- NFET (33) einen Gate-Anschluß aufweist, der mit dem Takt (32) verbunden ist, wobei jeder NFET der ersten Gruppe von NFETs (25) der ersten Vorladestufe mit einem jeweiligen NFET der zweiten Gruppe von NFETs (25) der ersten Vorladestufe verbunden ist, wobei jeder NFET (25) einen Gate-Anschluß aufweist, der ein Bit der Operanden A, B oder C empfängt, das in den Übertrag-Speicherungs-Addierer eingegeben wird, und wobei während einer Auswertungsphase des Taktes ein Übertrag (21), der eine erste Polarität aufweist, von der Übertrags-Erzeugungsschaltung ausgegeben wird.
  7. 7. Vorrichtung gemäß Anspruch 6, bei der jede Übertrag- Erzeugungsschaltung (20) eine zweite Vorladestufe aufweist, die einen zweiten Vorlade-PFET (28) und eine Mehrzahl von NFETs (26) aufweist, wobei der zweite Vorlade-PFET (28) einen Gate-Anschluß, der mit dem Takt (32) verbunden ist, und einen Source-Anschluß aufweist, der mit der Versorgungsspannung VDD verbunden ist, wobei der Drain-Anschluß des PFET (28) mit der dritten Gruppe von NFETs (26) der zweiten Vorladestufe kanalverbunden ist, eine vierte Gruppe von NFETs (26) der ersten Vorladestufe mit dem Auswertungs-NFET (33) kanalverbunden ist, und jeder NFET (26) der dritten Gruppe von NFETs (26) mit einem jeweiligen NFET (26) der vierten Gruppe von NFETs (26) kanalverbunden ist, wobei jeder NFET (26) der zweiten Vorladestufe einen Gate-Anschluß aufweist, der ein Bit der Operanden A, B oder C empfängt, das in den Übertrag-Speicherungs-Addierer eingegeben wird, und wobei während der Auswertungsphase des Taktes ein Übertrag (22), der eine zweite Polarität aufweist, von der Übertrag-Erzeugungsschaltung ausgegeben wird.
  8. 8. Vorrichtung gemäß einem der Ansprüche 4 bis 7, bei der jede Summen-Erzeugungsschaltung (40) eine erste Vorladestufe aufweist, die einen ersten Vorlade-PFET (48) und eine Mehrzahl von N-Feldeffekttransistoren (NFETs) (45, 46) aufweist, wobei der erste Vorlade-PFET (48) der Summen-Erzeugungsschaltung einen Gate-Anschluß, der mit dem Takt (32) verbunden ist, und einen Source-Anschluß aufweist, der mit der Versorgungsspannung VDD verbunden ist, wobei der Drain-Anschluß des ersten Vorlade-PFET (48) der ersten Vorladestufe der Summen-Erzeugungsschaltung mit einer ersten Gruppe von NFETs (45, 46) der Summen-Erzeugungsschaltung kanalverbunden ist, eine zweite Gruppe von NFETs (45, 46) der Summen-Erzeugungsschaltung mit einem Auswertungs- NFET (55) kanalverbunden ist, der Auswertungs-NFET (55) der Summen-Erzeugungsschaltung einen Gate-Anschluß aufweist, der mit dem Takt (32) verbunden ist, und jeder NFET (45, 46) der ersten Gruppe von NFETs (45, 46) der Summen-Erzeugungsschaltung mit einem jeweiligen NFET der zweiten Gruppe von NFETs (45, 46) der Summen-Erzeugungsschaltung kanalverbunden ist, wobei jeder NFET (45, 46) der Summen-Erzeugungsschaltung einen Gate-Anschluß aufweist, der ein Bit der Operanden A, B oder C empfängt, das in den Übertrag- Speicherungs-Addierer eingegeben wird, und wobei während der Auswertungsphase des Taktes (32) eine Summe (43), die die erste Polarität aufweist, von der Summen-Erzeugungsschaltung ausgegeben wird.
  9. 9. Vorrichtung gemäß Anspruch 8, bei der jede Summen- Erzeugungsschaltung (40) eine zweite Vorladestufe aufweist, die einen zweiten Vorlade-PFET (49) und eine Mehrzahl von NFETs (46, 47) aufweist, wobei der zweite Vorlade-PFET (49) der Summen-Erzeugungsschaltung einen Gate-Anschluß, der mit dem Takt (32) verbunden ist, und einen Source-Anschluß aufweist, der mit der Versorgungsspannung VDD verbunden ist, wobei der Drain- Anschluß des zweiten PFET (49) der zweiten Vorladestufe der Summen-Erzeugungsschaltung mit einer dritten Gruppe von NFETs (46, 47) der Summen-Erzeugungsschaltung kanalverbunden ist, eine vierte Gruppe von NFETs (46, 47) der zweiten Stufe der Summen-Erzeugungsschaltung mit dem Auswertungs-NFET (55) kanalverbunden ist, und jeder NFET (46, 47) der dritten Gruppe von NFETs (46, 47) der Summen-Erzeugungsschaltung mit einem jeweiligen NFET der vierten Gruppe von NFETs (46, 47) der Summen-Erzeugungsschaltung kanalverbunden ist, wobei jeder NFET (46, 47) der Summen-Erzeugungsschaltung einen Gate-Anschluß aufweist, der ein Bit der Operanden A, B oder C empfängt, das in den Übertrag-Speicherungs-Addierer eingegeben wird, und wobei während der Auswertungsphase des Taktes (32) eine Summe (44), die die zweite Polarität aufweist, von der Summen-Erzeugungsschaltung (40) ausgegeben wird.
  10. 10. Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der die Null-Detektorschaltung (14) eine Mehrzahl von Bitzellen (17) aufweist, wobei jede Bitzelle eine Übertrag-Ausgabe-Schaltung (60) und eine Z-Ausgabe- Schaltung (100) aufweist, wobei jede Übertrag-Ausgabe-Schaltung (60) folgende Merkmale aufweist:

    eine COUT0L-Stufe, wobei die COUT0L-Stufe einen ersten Vorlade-PFET (71), der einen Gate-Anschluß aufweist, der mit dem Takt (32) verbunden ist, und einen ersten und einen zweiten NFET (81) aufweist, wobei der erste und der zweite NFET (81) miteinander kanalverbunden sind, wobei der erste NFET mit dem ersten Vorlade-PFET der COUT0L-Stufe kanalverbunden ist, der zweite NFET mit einem Auswertungs-NFET (86) kanalverbunden ist, die COUT0L-Stufe einen Ausgangsanschluß (25) aufweist, der mit dem Knoten dort verbunden ist, wo der erste NFET (81) mit dem ersten Vorlade-PFET (71) kanalverbunden ist, wobei jeder der NFETs (81) der COUT0L-Stufe einen Gate-Anschluß aufweist, der entweder ein Bit des Summen-Signals (43, 44), das von der ersten Stufe der Summen-Erzeugungsschaltung ausgegeben wird, oder ein Bit des Übertrag-Signals (21, 22) empfängt, das von der zweiten Stufe der Übertrag-Erzeugungsschaltung ausgegeben wird;

    eine COUT1H-Stufe, wobei die COUT1H-Stufe einen zweiten Vorlade-PFET (73), der einen Gate-Anschluß aufweist, der mit dem Takt (32) verbunden ist, und einen dritten und vierten NFET (83) aufweist, wobei der dritte und der vierte NFET (83) miteinander kanalverbunden sind, wobei der dritte NFET mit dem zweiten Vorlade-PFET (73) der COUT1H-Stufe kanalverbunden ist, der vierte NFET mit dem Auswertungs-NFET (86) kanalverbunden ist, die COUT1H-Stufe einen Ausgangsanschluß (77) aufweist, der mit einem Knoten dort verbunden ist, wo der dritte NFET mit dem zweiten Vorlade-PFET kanalverbunden ist, wobei jeder der NFETs (83) der COUT1H-Stufe einen Gate-Anschluß aufweist, der entweder ein Bit von dem Summen-Signal (44), das von der zweiten Stufe der Summen-Erzeugungsschaltung ausgegeben wird, oder ein Bit des Übertrag-Signals (21), das von der ersten Stufe der Übertrag-Erzeugungsschaltung (20) ausgegeben wird, empfängt, wobei während der Auswertungsphase des Taktes das COUT0L- und das COUT1H- Übertrag-Ausgabe-Signal (65, 67) von dem COUT0L-Ausgangsanschluß (75) und dem COUT1H-Ausgangsanschluß (77) ausgegeben werden, wobei das COUT0L-Übertrag-Ausgabe-Signal (65) die zweite Polarität aufweist, und das COUT1H-Übertrag-Ausgabe-Signal (67) die erste Polarität aufweist, und wobei diese Übertrag-Ausgabe- Signale (65, 67) durch eine benachbarte Bitzelle der Null-Erfassungsschaltung als Übertrag-Eingangssignale zu der benachbarten Bitzelle verwendet werden.
  11. 11. Vorrichtung gemäß Anspruch 10, bei der jede Übertrag- Ausgabe-Schaltung (60) ferner folgende Merkmale aufweist:

    eine COUT0H-Stufe, wobei die COUT0H-Stufe einen dritten Vorlade-PFET (72), der einen Gate-Anschluß aufweist, der mit dem Takt (32) verbunden ist, und einen fünften und einen sechsten NFET (82) aufweist, wobei der fünfte und der sechste NFET (82) miteinander kanalverbunden sind, der fünfte und der sechste NFET (82) zueinander parallel geschaltet sind und mit dem dritten Vorlade-PFET (72) der COUT0H-Stufe kanalverbunden sind, der fünfte und der sechste NFET (82) mit dem Auswertungs-NFET (86) kanalverbunden sind, und die COUT0H-Stufe einen Ausgangsanschluß aufweist, der mit einem Knoten dort verbunden ist, wo der fünfte und der sechste NFET mit dem dritten Vorlade-PFET (72) kanalverbunden sind, wobei jeder der NFETs (82) der COUT0H-Stufe einen Gate-Anschluß aufweist, der entweder ein Bit des Summen-Signals (44), das von der zweiten Stufe der Summen-Erzeugungsschaltung (40) ausgegeben wird, oder ein Bit des Übertrag-Signals (21), das von der ersten Stufe der Übertrag-Erzeugungsschaltung ausgegeben wird, empfängt; und

    eine COUT1L-Stufe, wobei die COUT1L-Stufe einen vierten Vorlade-PFET (74), der einen Gate-Anschluß aufweist, der mit dem Takt (32) verbunden ist, und einen siebten und achten NFET (84) aufweist, wobei der siebte und der achte NFET (84) miteinander kanalverbunden sind, der siebte und der achte NFET (84) zueinander parallel geschaltet sind und mit dem vierten Vorlade- PFET (74) der COUT1L-Stufe kanalverbunden sind, der siebte und der achte NFET (84) mit dem Auswertungs- NFET (86) kanalverbunden sind, und die COUT1L-Stufe einen Ausgangsanschluß (78) aufweist, der mit einem Knoten dort verbunden ist, wo der siebte und der achte NFET (84) mit dem vierten Vorlade-PFET (74) kanalverbunden sind, wobei jeder der NFETs (84) der COUT1L- Stufe einen Gate-Anschluß aufweist, der entweder ein Bit des Summen-Signals (43), das von der ersten Stufe der Summen-Erzeugungsschaltung ausgegeben wird, oder ein Bit des Übertrag-Signals (22), das von der zweiten Stufe der Übertrag-Erzeugungsschaltung ausgegeben wird, empfängt, wobei während der Auswertungsphase des Taktes das COUT0H- und das COUT1L-Übertrag-Ausgabe-Signal (66, 68) von dem COUT0H- bzw. dem COUT1L-Ausgangsanschluß ausgegeben werden, wobei das COUT0H-Signal die erste Polarität und das COUT1L-Signal die zweite Polarität aufweist, und wobei diese Übertrag- Ausgabe-Signale in Verbindung mit dem COUT1H- und dem COUT0L-Signal durch eine benachbarte Bitzelle der Null-Erfassungsschaltung (60) als Übertrag-Eingangssignale zu der benachbarten Bitzelle verwendet werden.
  12. 12. Vorrichtung gemäß Anspruch 11, bei der jede Z-Ausgabe-Schaltung folgende Merkmale aufweist:

    eine Mehrzahl von Vorladestufen, wobei jede Vorladestufe mindestens einen Eingangsanschluß (CIN1L, CIN2L, CIN3L, CIN4L) aufweist, der eines der Übertrag-Ausgabe-Signale COUT1H, COUT1L, COUT0H oder COUT0L von einer benachbarten Übertrag-Ausgabe-Schaltung einer benachbarten Bitzelle der Null-Erfassungsschaltung empfängt, wobei der Eingangsanschluß einem Gate-Anschluß eines NFET (109) entspricht, jede Vorladestufe der Z- Ausgabe-Schaltung einen Vorlade-PFET (108) mit einem Gate-Anschluß, der mit dem Takt (32) verbunden ist, aufweist, wobei die Vorladestufen der Z-Ausgabe-Schaltung eine Mehrzahl von NFETs (109, 110, 111) gemeinsam verwenden, wobei jeder der gemeinsam verwendeten NFETs einen Gate-Anschluß aufweist, der ein Bit von entweder dem Summen-Signal (43), das von der ersten Stufe der Summen-Erzeugungsschaltung (40) ausgegeben wird, oder dem Summen-Signal (44), das von der zweiten Stufe der Summen-Erzeugungsschaltung (40) ausgegeben wird, oder dem Übertrag-Signal (21), das von der ersten Stufe der Übertrag-Erzeugungsschaltung ausgegeben wird, oder dem Übertrag-Signal (22), das von der zweiten Stufe der Übertrag-Erzeugungsschaltung ausgegeben wird, empfängt; und

    eine Z-Ausgabe-Stufe, die mit jeder Vorladestufe der Z-Ausgabe-Stufe elektrisch gekoppelt ist, wobei jede Z-Ausgabe-Stufe einen Ausgangsanschluß (116) aufweist, wobei während der Auswertungsphase ein Z-Ausgabe-Signal von jedem der Ausgangsanschlüsse (116) der Z-Ausgabe-Stufen ausgegeben wird, und wobei eine Aktivierung von einem der Z-Ausgabe-Signale anzeigt, daß A + B + C nicht gleich einer Konstante k ist.
  13. 13. Vorrichtung gemäß einem der vorhergehenden Ansprüche, bei der die Sumier-und-Vergleichs-Operation die Summe der Operanden A, B und C mit einer Mehrzahl von Konstanten k1 bis kN vergleicht, und wobei die Konstanten in die Metallmaske der Bitzellen der Null- Erfassungsschaltung programmiert sind, und wobei die Werte der Konstanten spezielle Übertrag-Ausgabe-Signale von der Übertrag-Ausgabe-Schaltung einer benachbarten Bitzelle der Null-Erfassungsschaltung bewirken, um an spezielle Eingangsanschlüsse der Z-Ausgabe- Schaltung angelegt zu werden.






IPC
A Täglicher Lebensbedarf
B Arbeitsverfahren; Transportieren
C Chemie; Hüttenwesen
D Textilien; Papier
E Bauwesen; Erdbohren; Bergbau
F Maschinenbau; Beleuchtung; Heizung; Waffen; Sprengen
G Physik
H Elektrotechnik

Anmelder
Datum

Patentrecherche

Patent Zeichnungen (PDF)

Copyright © 2008 Patent-De Alle Rechte vorbehalten. eMail: info@patent-de.com