-
Die
Erfindung betrifft elektrische bzw. elektronische Schaltungen, insbesondere
dynamische Logikschaltungen, wie dynamische PLAs, und ein Verfahren
zum Konfigurieren einer Schaltung.
-
Konfigurierbare
Logiken bzw. Logikschaltungen verwenden vielfältige Methoden zur Anpassung von
Chipstrukturen an benötigte
Logikfunktionen während
ausgewählter
Stufen bzw. Abschnitte im Lebenszyklus eines integrierten Schaltkreises.
Insbesondere haben Methoden, welche eine Logikkonfiguration nach
der Herstellung erlauben, das Potential für einen weiten Bereich von
Vorteilen, wie beispielsweise eine Anpassung an sich ändernde
Standards während
der Benutzung, als auch für
eine Anpassung an Anwendungs- und Nutzerbedingungen, für eine Aufbaufehlerkorrektur,
für eine
Hardware für
viele Zwecke und Anwendungen (flexible Schnittstellen, PAL, programmierbare
Logikarrays (PLA), feldprogrammierbaren Gatterarrays (FPGA)) oder
für eine Hochgeschwindigkeitsdatenverarbeitung,
die durch Problem- und Daten-anpassbare Ausführungs- bzw. Verarbeitungseinheiten
dennoch leistungseffizient ist. Während diese Vorteile grundsätzlich anerkannt sind,
ist eine konfigurierbare Logik bisher nur in wenigen Chipkonzepten
wirtschaftlich erfolgreich; unter diesen befinden sich die feldprogrammierbaren
Gatterarrays und mittelfristig vielleicht auch die strukturierten
ASICs.
-
Unter
den Hauptproblemen einer konfigurierbaren Hardware ist insbesondere
der sogenannte Overhead bezüglich
Fläche,
Leistung und Kosten zu nennen, welcher typischerweise benötigt wird,
um eine Konfigurierbarkeit herzustellen. Auch bestehen betriebsbezogene
Probleme, wie beispielsweise ein Wiederhochladen bzw. Hochfahren
nach einer Stromabschaltung und eine Stabilität der Konfigurationsinformation.
Der Ansatz für
eine konfigurierbare Logik, welcher heutzutage am weitesten verbreitet ist,
ist der Ansatz eines feldprogrammierbaren Gatterarrays, welcher
insbesondere im Gebiet der digitalen Signalverarbeitung in der Lage
ist, digitale Signalprozessoren (DSPs) an Leistung zu übertreffen.
Obwohl sie als Einzelprodukte sehr erfolgreich sind, konnten FPGAs
für eine
lange Zeit ihren Weg nicht in höher
integrierte Systemchips finden. Erst im zweiten Quartal 2005 tauchte
ein erstes Produkt mit einem eingebetteten FPGA-Kern auf dem Markt
auf (STM's Green-FIELD-Mehrzweck-Mikrokontroller
zur Verwendung in einer drahtlosen Infrastruktur).
-
Während FPGAs
eine hohe Flexibilität
bieten, sind heutige Implementationen von ernsten Nachteilen begleitet,
welche sie für
Produkte mit hoher Stückzahl
problematisch machen. Die – normalerweise
SRAM-basierten – FPGA-Designs
weisen einen erheblichen Overhead bezüglich Fläche (10+) und Leistung (50+)
im Vergleich zu einer festverdrahteten Logik auf. Außerdem benötigen sie
zusätzlichen
nicht-flüchtigen
Speicher ("nonvolatile
memory"; NVM), um
die Konfigurationsinformation während stromloser
Phasen als auch während
eines erneuten Nachladens der Konfiguration nach einem Hochfahren
vorzuhalten.
-
Ein
weiteres Problem ist es, dass FPGAs nicht (flächen-)-effizient bei Strukturen mit niedriger Logikkomplexität aber vielen
Eingängen
sind, so wie sie beispielsweise gebraucht werden, um sogenannte
FSMs ("finite-state
machines") zu implementieren. In
diesen Fällen
ist die Leistung von Architekturen auf der Grundlage von programmierbaren
Logikarrays weit besser. Dies ist der Grund, warum PLA-verbesserte
hybride FPGAs Kandidaten für
Produkte des Einzelprodukt- bzw. Standalone-Markts waren.
-
PLA
umfassen üblicherweise
zweistufige Logikschaltungen, die aus einer "UND-Ebene", gefolgt von einer "ODER-Ebene", aufgebaut sind, um Summenproduktfunktion
zu berechnen. Dies kann mittels einer aufeinander folgenden Anordnung
breiter Eingangslastfaktor ('fan-in')-NICHT-ODER ('NOR')-Strukturen geschehen,
wobei die Ausgänge der
ersten Stufe (UND) die Eingänge
für die
zweite Stufe (ODER) bilden. In CMOS-Anwendungen sind solche breiten
Eingangslastfaktor-NOR-Strukturen aus Geschwindigkeits- und Leistungsgründen optimal
mit dynamischen anstatt mit statischen Logiken bzw. Logikschaltungen
bzw. -strukturen realisiert. Ein PLA ist typischerweise durch die
Zahl seiner Eingänge
definiert sowie die Zahl der Produktausdrücke (nach der UND-Ebene) und
durch die Zahl der Ausgänge
(nach der ODER-Ebene). PLAs können
direkt als kundenangepasste Strukturen aufgebaut werden, als auch
als generische und programmierbare Strukturen.
-
In
Form dynamischer Implementierungen sind dynamische PLAs (dPLAs)
auch von neuem Interesse in Hochleistungs-Designs. Beispielsweise wurde
eine Höchstgeschwindigkeitsimplementierung (1
GHz) einer Power-PC-CPU auf der Grundlage einer großen Zahl
von dPLAs als Steuerlogikteilen gebaut. Diese dPLAs wurden speziell
für jede
einzelne Steueraufgabe aufgebaut, was bedeutet, dass sie feste Strukturen
aufweisen und nicht erneut programmiert werden können. Bei dynamischen Logikschaltungen
hängt die
Ausgabe von einer Bewertung der am Schaltkreisknoten hoher Impedanz
zu einem bestimmten Zeitpunkt gespeicherten Ladung ab. Das grundsätzliche
dynamische Element besteht beispielsweise aus einem Vorauflade ("precharge")-PMOS-Transistor,
einem NMOS-Herabzieh ("Pull-down")-Netzwerk – parallel angeordneten NMOS-Transistoren,
die durch Eingänge
gesteuert werden – und
einem NMOS-Fuss-Transistor. Der Vorladetransistor und der Fuss ("Footer")-Transistor sind
typischerweise mit dem gleichen Taktsignal Φ gekoppelt.
-
(Wieder-)konfigurierbare
PLAs sind bisher hauptsächlich
als Einzel- bzw. Standalone-Vorrichtungen vorgesehen worden. Bei
dieser PLA-Variante ist die Zahl der Eingänge, Ausgänge und Produktterme vordefiniert,
aber es werden typischerweise alle möglichen Verbindungen zwischen
Eingängen
und internen Produkttermen als auch zwischen Produkttermen und Ausgängen bereitgestellt
(sogenannte "voll
bevölkerte
Matrix"). Um ein
solches PLA zu programmieren bzw. zu konfigurieren, muss es möglich sein,
die nicht benötigten
Verbindungen zu entfernen oder die Pull-Down-Transistoren bzw. Pfade
so lange wie nötig
an- oder abzuschalten. Dies wird heutzutage unter Verwendung von
Sicherungen, EEPROM- ("Electrically
Eraseable Programmable Read-Only-Memory"; elektrisch löschbare programmierbare Nur-Lesespeicher)-Transistoren
oder durch Schalttransistoren erreicht, welche durch einen Konfigurationsspeicher
angetrieben werden. Sicherungen haben den Nachteil, dass sie nur
einmal programmierbar sind und typischerweise von außen programmiert werden
müssen.
EEPROMs benötigen
nachteiliger Weise eine externe Programmierung und verwenden Hochspannungspfade.
Schalttransistoren mit einem Konfigurationsspeicher benötigen einen
Transistor und zusätzlich
ein Speicherelement, weisen einen nachteiligen Flächenverbrauch
und eine nachteilige Anordnung des Konfigurationsspeichers auf und
neigen zu einer höheren
Volatilität
ihres Speichers.
-
Es
gibt auch andere Lösungen,
um eine Konfigurierung mehr oder weniger komplexer Logikstrukturen
nach einer Herstellung zu erlauben. Jedoch sind diese entweder in
der Größe beschränkt (Sperrgatter)
und/oder nur einmal konfigurierbar (E-Balken konfigurierbare Array-Strukturen).
-
Zusammenfassend
kann festgestellt werden, dass bis heute nur teilweise befriedigende
Lösungen zur
Integration von nach einer Produktion (wieder)konfigurierbaren Logikschaltungen
auf heutigen Systemchips existieren, was eine Situation darstellt, welche
wahrscheinlich eine breitere kommerzielle Anwendung einer solchen
Konfigurierbarkeit verhindert.
-
Es
ist daher eine Aufgabe der vorliegenden Erfindung, eine Möglichkeit
zur Lösung
einiger oder aller der oben genannten Probleme bereitzustellen, insbesondere
eine Verringerung des Overheads in Bezug auf Fläche, Leistung und/oder Kosten
und eine hochgradig flächeneffektive
und mehrfach programmierbare Konfigurierung nach einer Herstellung einer
Logik bzw. einer Logikschaltung zu erreichen.
-
Diese
Aufgabe wird durch eine Schaltung nach Anspruch 1, eine Logikschaltung
nach Anspruch 2 und ein Verfahren nach Anspruch 20 gelöst. Vorteilhafte
Ausgestaltungen sind insbesondere den Unteransprüchen einzeln oder in Kombination
entnehmbar.
-
Unter
einem Gesichtspunkt der Erfindung wird dies durch Kombinieren dynamischer
Logikkonzepte, insbesondere bezüglich
dynamischer PLAs, mit einem neuen Widerstands-basierten Konfigurationskonzept
erreicht, bei dem zumindest ein umschaltbarer Widerstand einen umschaltbaren
Widerstandswert aufweist. In einer bevorzugten Ausführung wird
ein Widerstand mit einem Phasenwechselmaterial bzw. -'speicher' ("phasechange memory"; PCM) verwendet.
-
Dabei
kann eine (elektrische oder elektronische, z. B. Logik-) Schaltung
mindestens einen Pull-Down-Pfad umfassen, wobei eine Größe eines durch
den Pull-Down-Pfad fließenden
Stroms durch den umschaltbaren Widerstandswert eines umschaltbaren
Widerstands bestimmt wird, welcher von der Schaltung umfasst ist.
-
Bei
einer mit einem solchen umschaltbaren Widerstand ausgerüsteten Schaltung
ist durch das Umschalten des Widerstandswerts vorteilhafterweise zwischen
einem effektiv leitenden Zustand und einem effektiv nicht-leitenden
Zustand umschaltbar. Vorteilhafterweise ist ein erster, kleinerer
Widerstandswert kleiner als 100 kΩ, und liegt insbesondere zwischen
1 kΩ und
100 kΩ,
während
ein zweiter Widerstandswert größer als
1 MΩ ist,
insbesondere zwischen 5 MΩ und
50 MΩ liegt.
-
Daher
kann der Widerstandswert auf eine gesteuerte Weise verändert werden,
z.B., um einen Pull-Down-Pfad effektiv aus der Schaltung zu entfernen
bzw. von dieser abzutrennen (d.h., dass der Widerstand als ein effektiv
nicht-leitender Zustand/Zustand mit hohem Widerstandwert konfiguriert
wird) oder zu verbinden (d.h., einen effektiv leitenden Zustand/Zustand
mit niedrigem Widerstandswert zu konfigurieren).
-
Es
ist günstig,
wenn der Widerstandswert durch Senden eines entsprechenden Stroms
durch den Widerstand umschaltbar ist, insbesondere so, dass der
Widerstand auf einen ersten Widerstandswert durch Senden eines ersten
Strompulses durch den Widerstand gesetzt wird und der Widerstand
auf einen zweiten Widerstandswert durch Senden eines zweiten Strompulses
durch durch den Widerstand gesetzt wird, wobei der zweite Strompuls
vom ersten Strompuls unterschiedlich ist.
-
Insbesondere
günstig
ist es, wenn der umschaltbare Widerstand ein Phasenwechselwiderstand
ist, also der Widerstandswert durch ein Phasenwechselmaterial des
umschaltbaren Widerstands bestimmt wird.
-
Ein
solcher umschaltbarer Widerstand ist besonders vorteilhaft einsetzbar,
wenn die Schaltung bzw. Logikschaltung weiterhin einen Vorlade ("pre-charge")-Pfad umfasst, und
wobei der Pull-Down-Pfad mindestens ein Pull-Down-Element umfasst,
das mit dem umschaltbaren Widerstand in Reihe geschaltet ist.
-
Es
ist günstig,
wenn die Schaltung mindestens ein Widerstandsschaltelement enthält, das
daran angepasst ist, den mindestens einen umschaltbaren Widerstand
umzuschalten. Dann ist es vorteilhaft, wenn das mindestens eine
Widerstandsschaltelement zwei Transistoren umfasst, die parallel
angeordnet sind, insbesondere, wenn die Transistoren unterschiedliche
Größen aufweisen.
-
Dabei
kann man das mindestens eine Widerstandsschaltelement funktional
ein Teil eines Vorlade-Pfads und/oder des Pull-Down-Pfads sein oder auch von dem Vorlade-Pfad
und dem Pull-Down-Pfad
getrennt sein. Auch der Widerstand selbst kann als Teil des Pull-Down-Pfads
angesehen werden, als Teil eines Vorladepfads oder als Verbindungselement
zwischen Vorlade- und Pull-Down-Pfad.
-
Insbesondere
vorteilhaft für
ein Konfigurierung einer Schaltung ist es, wenn der umschaltbare Widerstand
Teil eines ODER-Logikelements oder eines NICHT-ODER-Logikelements
ist.
-
Die
Schaltung kann mehr als einen Pull-Down-Pfad umfassen, wobei dann
vorteilhafterweise ein Pull-Down-Pfad daran angepasst ist, die Schaltung
zu konfigurieren, und ein anderer Pull-Down-Pfad daran angepasst
ist, die Schaltung zu betreiben.
-
Insbesondere
kann die Schaltung ein Teil eines dynamischen programmierbaren Logikarrays (DPLA)
sein.
-
Die
Phasenwechsel- oder Phasenwechselspeicher- (PCM-) Technologie erlaubt
es, nicht-flüchtige
Widerstandselemente in ihrem Widerstandswert umzuschalten bzw. sie
zu programmieren bzw. wiederzuprogrammieren. Das zugrunde liegende
Prinzip von PCM-Elementen ist ein thermisch induzierter, reversibler
Phasenwechsel zwischen einer amorphen und einer (poly)kristallinen
Phase, häufig
eines Chalcogenid-Glaselements, aber auch anderer geeigneter Verbindungen.
-
Ein
amorpher Zustand führt
zu einem hohen Widerstand, während
ein polykristalliner Zustand einen niedrigen Widerstand aufweist.
Der Phasenwechsel wird durch Hitze bewirkt, die aufgrund eines durch
das Widerstandselement fließenden
Stroms induziert wird. Die Dauer und Größe des Stroms bestimmt, ob
das Element im Folgenden eine hohe oder eine niedrige Resistivität bzw. Widerstandswert
aufweist. Ein Vorteil des PCM ist, dass eine Skalierung nicht schädlich, sondern
sogar vorteilhaft ist: je kleiner die Strukturen werden, desto geringer
können
die Ströme
sein, die benötigt
werden, um den Phasenwechsel zu induzieren. Darüber hinaus können Phasenwechsel-Elemente
mittels sub-lithographischer Techniken in den oberen Schichten eines CMOS-Verfahrensablaufs
erzeugt werden und können
daher über
den Transistoren aufgestapelt werden bzw. aufgebracht werden, z.B. über denjenigen, die
benötigt
werden, um andere Schaltungselemente, beispielsweise eine Logikschaltung,
zu implementieren. Dies führt
zu einem geringeren oder sogar keinem zusätzlichen Flächenbedarf.
-
Man
kann daher nach ihrer Herstellung mehrfach konfigurierbare Logikelemente
bauen, welche auf dynamischen Logikschaltun gen aufbauen, die beispielsweise
aus einem Vorlade-Transistor und Pull-Down-(NICHT-ODER/ODER/UND-)Elementen (d.h.,
einzelne Elemente, wie Pull-Down-Transistoren oder Pull-Down-Netzwerke) bestehen,
wobei ein Merkmal darin besteht, dass effektive Widerstands-basierte
Schalter in den Pull-Down-Pfaden vorhanden
sind, wobei diese Widerstände
in Echtzeit konfigurierbar als auch nicht-flüchtig während eines Herunterfahrens,
als auch minimal in ihrem Flächenbedarf
sind, insbesondere bei der bevorzugten Verwendung der Phasenwechselspeicher-
(PCM-) Technologie.
-
Unter
einem weiteren Gesichtspunkt umfasst die Erfindung ein Verfahren
zum Konfigurieren eines logischen Schaltkreises mit mindestens einen
wiederprogrammierbaren Widerstand mit einem auswählbaren Widerstandswert, wobei
das Verfahren wahlweise die folgenden Schritte aufweist: Senden eines
ersten Stroms durch den Widerstand, um den Widerstand auf einen
ersten Widerstandswert zu setzen, und Setzen eines zweiten Stroms,
der vom ersten Strom unterschiedlich ist, durch den Widerstand, um
den Widerstand auf einen zweiten Widerstandswert zu setzen. Insbesondere
wird durch Umschalten des Widerstandswerts in einen effektiv leitenden
Zustand ein zugeordneter Pull-Down-Pfad
logisch mit der Schaltung verbunden und durch Umschalten des Widerstandswerts
in einen effektiv nichtleitenden Zustand ein zugeordneter Pull-Down-Pfad
logisch von der Schaltung getrennt.
-
Die
Erfindung zeigt u.a. die Vorteile, dass sie den Widerstandswert
des Widerstands bzw. der Widerstände
durch hauptsächliches
Verwenden bereits verfügbarer
Schaltungselemente steuert und eine steuerbare Widerstandstechnologie
mit dreidimensionalen Packungsmöglichkeiten
und einem extrem niedrigen Flächenverbrauch
ermöglicht,
da die Widerstände
auf aktiven Logikelementen angeordnet werden können. Weitere Vorteile sind
ein minimaler Kosten-Overhead für
den Fall, dass die Widerstands-Technologie sowieso ein Teil des
Herstellungsverfahrens ist du eine Unempfindlichkeit gegen Umgebungseinflüsse, wie
beispielsweise Teilchen, z.B. α-Teilchen.
-
Die
Erfindung kann in einem weiten Bereich konfigurierbarer Logikstrukturen
verwendet werden, vorzugsweise in konfigurierbaren dynamischen und/oder
logischen Anordnungen, wie beispielsweise konfigurierbaren dynamischen
PLAs oder konfigurierbaren dynamischen Dekodierern.
-
Ausführungsformen
der Erfindung werden in der folgenden Beschreibung genauer mit Bezug
auf die beiliegenden – rein
schematischen – Zeichnungen
dargestellt. Es sollte klar sein, dass diese Ausführungsformen
nicht dazu gedacht sind, den Umfang der Erfindung auf irgendeine
Weise zu beschränken.
-
1 zeigt
ein Schaltungsdiagramm von Alternativen für eine Konfiguration eines
Herunterzieh-Pfads eines dynamischen PLAs nach dem Stand der Technik.
-
2 zeigt
eine Prinzipskizze eines Schaltungsdiagramms einer dynamischen Logik
nach dem Stand der Technik.
-
3 zeigt
ein Schaltungsdiagramm eines Widerstandselements gemäß einer
Ausführungsform der
Erfindung.
-
4 zeigt
idealisierte Programmierströme zur
Konfiguration von Phasenwechselelementen.
-
5 zeigt
ein Schaltungsdiagramm einer Ausführungsform eines dynamischen
Elements mit einem ersten, einzelnen Widerstands-konfigurierbaren
Pull-Down-Pfad.
-
6 zeigt
ein Schaltungsdiagramm einer weiteren Ausführungsform eines dynamischen
Elements mit einem zweiten, einzelnen Widerstands-konfigurierbaren
Pull-Down-Pfad.
-
7 zeigt
ein Schaltungsdiagramm einer dynamischen Logik mit Widerstands-konfigurierbaren
Pull-Down-Pfaden.
-
8 zeigt
ein Schaltungsdiagramm einer konfigurierbaren dynamischen NICHT-ODER(NOR)-Logik
mit getrennten Fuss-Transistoren für normale und invertierte Signal-gruppen.
-
9 zeigt
ein Schaltungsdiagramm einer weiteren konfigurierbaren dynamischen NICHT-ODER
(NOR)-Logik mit getrennten Fuss-Transistoren für normale und invertierte Signalgruppen.
-
In 1 ist
ein typisches programmierbares PLA nach dem Stand der Technik gezeigt,
bei dem es möglich
ist, einen Pull-Down-Transistor TPD dauerhaft an- oder auszuschalten
(zu verbinden/zu trennen). Dies wird durch Verwenden eines Konfigurationselements
erreicht, von denen hier mehrere als Alternativen gezeigt sind,
nämlich
eine Sicherung F, ein EEPROM-Transistor E und ein mittels eines
Konfigurationsspeichers angetriebenen Schalttransistor S.
-
Diese
alternativen Konfigurationselemente sind zwischen einerseits einem
PMOS-Vorlade-Transistor P auf der einen Seite und dem Pull-Down-Transistor
TPD auf der anderen Seite angeschlossen, welcher wiederum auch wie
gezeigt mit einem NMOS-Fuss-Transistor N verbunden ist. Der Vorlade-Transistor P
und der Fuss-Transistor N sind mit dem gleichen Taktsignal Φ verbunden.
-
Die
Verwendung der Sicherung F hat den Nachteil, dass sie nur einmal
programmierbar ist und typischerweise eine externe Programmierung
benötigt.
EEPROMs E benötigen
nachteiliger Weise eine externe Programmierung und verwenden Hochspannungspfade.
Der Schalttransistor S mit seinem Konfigurationsspeicher benötigt einen
Transistor und zusätzlich
ein Speicherelement, hat einen nachteiligen Flächenverbrauch und Anordnung
des Konfigurationsspeichers und neigt zu einer höheren Volatilität seines
Speichers.
-
2 zeigt
eine schematische Darstellung eines dynamischen Logikschaltkreises,
bei dem eine Ausgabe auf der Beurteilung einer Ladung beruht, die
zu einem gegebenen Zeitpunkt in Hochimpedanz-Schaltungsknoten gespeichert
ist. Das grundsätzliche
dynamische Element besteht aus einem Vorlade-PMOS-Transistor P und
einem Pull-Down-Netzwerk, welches wiederum ein NMOS-Pull-Down-Teilnetzwerk
(z.B. NMOS-Transistoren in paralleler Anordnung, die durch Eingänge I1, I2,
I3) gesteuert werden) und einen NMOS-Fuss-Transistor N umfasst.
Der Vorlade-Transistor P und der Fuss-Transistor N sind mit dem
gleichen Takt Φ verbunden.
-
Der
normale Betrieb (d.h., der Betrieb der Logik als solcher und nicht
zur Konfiguration von Elementen) umfasst allgemein die folgenden
Phasen:
Vorladephase: während Φ = 0 (Takt
unten), ist der Transistor P geöffnet,
und Transistor N ist geschlossen, was ein Auflagen eines internen
Knotens (Kapazität)
Q erlaubt.
-
Auswertephase:
wenn Φ =
1, schließt
der Transistor P, während
der Transistor N öffnet
und – abhängig von
den Signalwerten der Eingänge
I1,..., I3 – wird
Knoten Q entladen, oder nicht. Ein Gatter G (Inverter) ist üblicherweise
mit Q verbunden, um einen definierten Signalwert T (= -Q) zu erzeugen.
-
Die
Schaltung nach 2 realisiert eine NICHT-ODER-Funktion
dahingehend, dass Q beispielsweise nur dann auf "Hoch" bleibt,
wenn I1, I2 und I3 sich alle in einem Status "Niedrig" befinden.
-
In
einer wie in 3 gezeigten Ausführungsform
kann ein umschaltbarer Widerstand R, der ein aktives Phasenwechselmaterial
enthält,
mittels eines Widerstandsschaltenden Elements gesteuert/konfiguriert
werden, welches mit dem Widerstand R in Serie geschaltet ist und
das selbst wiederum zwei Transistoren N1 und N2 umfasst, die parallel
angeordnet sind und in dieser Ausführungsform unterschiedliche Größen und
Treiberspannungen Ion aufweisen. Durch Aktivieren
des größeren Transistors
N1 für
eine bestimmte Zeitdauer (siehe 4) leitet
er einen Strom, der hoch genug ist, um den Widerstand R zurückzusetzen
("reset"). Der Widerstand
R geht in seinen Zustand mit hohem Widerstandswert mit der Folge
einer Deaktivierung eines zugehörigen
Pull-Down--Pfads über
(siehe weiter unten). Falls N2 für
einen bestimmten Zeitraum aktiviert wird (siehe 4),
wird ein kleinerer Strom als vorher fließen, welcher jedoch den Widerstand
R genug aufheizen wird, um ihn in seinen Zustand mit niedrigem Widerstandswert
zu bringen. Ein niedriger Widerstandswert hat dann die Folge, dass
der zugehörige
Pull-Down-Pfad wieder aktiviert ist.
-
4 zeigt
typische Werte für
Phasenwechselelemente eines Zurücksetzstroms
('reset'; von an nach aus)
von 200 μA über eine
Zeitdauer von 20 ns und einen daraus folgenden Widerstandswert Roff im Bereich von einem Setzstrom ('set'; von aus nach an) von
ungefähr
50 μA und
einer Dauer von t = 50 ns, was zu einem folgenden Widerstandswert
Ron im Bereich von 10 kΩ führt.
-
In 5 ist
das oben beschriebene Widerstandsschaltelement mit dem konfigurierbaren Pull-Down-Pfad
aus 1 zusammengeführt.
Diese Zusammenführung
bzw. Verschmelzung ersetzt die in dem gestrichelten Bereich aus 1 gezeigten konfigurierbaren
Alternativen mit dem umschaltbaren Widerstand R. Der Transistor
N1 kann dabei im normalen Betrieb die Rolle des Pull-Down-Transistors übernehmen,
während
N2 parallel zum Fuss-Transistor N angeordnet wird.
-
Zur
Konfiguration des Pull-Down-Pfads, d.h., zum Schalten des Widerstandswerts
des Widerstands R kann der Widerstand R durch Aktivieren der Transistoren
P und N1 und N (und N2) zurückgesetzt und
durch Schalten der Transistoren P und N1 und N2 gesetzt werden.
-
Während eines
normalen Betriebs (d.h., in einem nicht-konfigurierenden Zustand) der Logikschaltung
verhindert der Takt Φ,
dass P und N zur gleichen Zeit offen sind. Daher ist der durch den
Widerstand R fließende
maximale Strom auf die Ladungsmenge beschränkt, die im Knoten Q nach der Vorladephase
gespeichert ist. Diese Ladung ist bei modernen CMOS-Logikabläufen zu
klein, als dass der sich ergebende Strom den Zustand des Widerstands
R ändern
kann.
-
In
dieser Ausführungsform
ist das Widerstandsschaltelement ein Teil des Pull-Down-Netzwerks – oder umgekehrt – dahingehend,
dass die Transistoren N, N1 als Konfigurations-/Widerstandsschalt-Transistoren für den Widerstand
R dienen (falls sich die Logikschaltung in einem Konfigurationszustand
befindet) und als Transistoren des Pull-Down-Pfads, die eine Logik-Funktion
unterstützen
(falls die Logikschaltung sich in einem normalen Betriebszustand
befindet).
-
Für den Fall
entweder einer sehr hohen Zahl von Eingängen (was zu einer hohen Kapazität Q führt) oder
aufgrund einer weiteren Schrumpfung der PCM-Zelle kann es nötig sein,
den maximalen Strom durch den Widerstand R zu begrenzen, um ein
ungewollten Zurücksetzen
zu vermeiden. Dies kann entweder über ein Begrenzen der in dem
Knoten Q gespeicherten Ladung geschehen oder durch Verlängern der
Entladezeit. 6 zeigt eine Ausführungsform
die dieses Problem löst
durch:
- a) Verwendung eines Transistors vom
p-Typ statt vom n-Typ als Fuss-Transistor (benötigt einen invertierten Takt Φ). Dies
vermindert eine Spannungsschwankung und erhöht den Widerstand im Entladepfad;
und/oder
- b) Verwendung von zumindest zwei – möglicherweise unterschiedlich
großen – Vorladetransistoren
in Kombination mit zwei entsprechenden Versorgungsspannungen. Verglichen
mit der Konfigurationsphase wird während der (normalen) Betriebsphase
eine niedrigere Spannung mit gegebenenfalls einem kleineren Vorladetransistor
verwendet.
-
In
dieser Ausführungsform
enthalten der Vorlade-Pfad und der Pull-Down-Pfad Widerstands-Schaltelemente
N, N2 (d.h., Setz-/Zurücksetz-Transistoren),
die nicht für
Logikfunktionen verwendet werden und die von den Logikelementen
L, M getrennt sind. In anderen Ausführungsformen könnten Teile
oder alle der Widerstands-Schaltelemente mit Logikelementen funktional integriert
sein oder beispielsweise nur im Vorlade-Pfad vorhanden sein.
-
Wenn
zusätzliche
Pull-Down-Pfade hinzugefügt
werden, ergibt sich ein besonders bevorzugtes dynamisches ODER/NICHT-ODER
(NOR)-Logikelement. 7 zeigt ein voll konfigurierbares
Logikelement mit zwei Pull-Down-Pfaden pro Eingangssignal A, B,
einen für
den nicht-invertierten und einen für den invertierten Wert (über Inverter
In1, In2). Jeder Pull-Down-Pfad weist entsprechende Eingangstransistoren
N1-1, N1-2, N1-3, N1-4 auf, während
alle Pfade einen gemeinsamen (integrierten) Satz von Widerstandsschalt-(Steuer-)
und von Widerstandsschalt-(Steuer-) und Auswerte-(Logik-)Transistoren N,
N2 umfasst. Zusätzlich
sind Produktterm-Ausgänge
PT, PT gezeigt, welche entsprechende Inverter In3, In4 aufweisen.
-
Eine
Konfiguration/Schaltung eines solchen Logikelements wird beispielsweise
durchgeführt
erstens mittels Zurücksetzens
aller Widerstände
R1-R4 in Folge (gesteuert beispielsweise durch aufeinander folgende
Aktivierung der zugehörigen
Eingänge A/B,...,
beispielsweise mittels eines "one-hotdecoder") und zweitens durch
folgendes wahlweises Setzen dieser Widerstände, deren Pull-Down-Pfade
zur zu implementierenden Logikfunktion benötigt werden.
-
Aufgrund
der Tatsache, dass ein Signalwert und sein inverser Wert zur gleichen
Zeit in einem Block vorhanden sind, benötigt ein geeignetes Zurücksetzen
und Setzen zusätzliche
Strukturen. In einer weiteren Ausführungsform (siehe 8)
werden getrennte Konfigurationstransistoren N2, N2' und Fuss-Transistoren N, N' für die Pull-Down-Pfade
mit nichtinvertierten Eingängen
(A, B) und für
die Pull-Down-Pfade mit (über
Inverter In1, In2) invertierten Eingängen (A', B')
verwendet.
-
Eine
weitere Variante verwendet getrennte Transistoren und Pfade für Konfiguration
und normalen Betrieb (siehe 9). Dies
deckt alternative Ausführungen
ab, bei denen a) die Auswahltransistoren N, N2 mit Eingängen a,...,d
von den Pull-Down-Transistoren
N1-1,...,N1-4 getrennt sind, und b) bei denen zusätzliche
getrennte Fuss-Transistoren N zum Entladen und zur Konfiguration
vorhanden sind.
-
Ein
dynamisches PLA kann dann aufgebaut werden durch:
- 1.
Hinzufügen
weiterer Eingänge,
wie benötigt;
- 2. Wiederholen dieser Struktur, abhängig von der Zahl der benötigten Produktterme;
- 3. Hinzufügen
von Elementen einer zweiten Stufe, wobei die Zahl der Eingänge der
Zahl der erzeugten Produktterme entspricht, deren Gesamtzahl der
Zahl der benötigten
Ausgänge
entspricht.
-
- a-d
- Steuereingänge
- A
- Eingabesignal
- A'
- Invertiertes
Eingabesignal
- B
- Eingabesignal
- B'
- Invertiertes
Eingabesignal
- E
- EEPROM-Transistor
- F
- Sicherung
- G
- Gatter
- I1
- Eingabe
- I2
- Eingabe
- I3
- Eingabe
- In1-In4
- Inverter
- Ion
- Antriebsstrom
- L
- Logikelement
- M
- Logikelement
- N
- Fusstransistor
- N'
- Fusstransistor
- N1
- Transistor
- N1'
- Transistor
- N1-1
- Transistor
- N1-2
- Transistor
- N1-3
- Transistor
- N1-4
- Transistor
- N2
- Transistor
- N2'
- Transistor
- P
- Vorlade-Transistor
- PT, ⌉PT
- Produktterm-Ausgaben
- Q
- Knoten
- R
- Umschaltbarer
Widerstand
- R1-R4
- Umschaltbare
Widerstände
- Roff
- Widerstandswert
- Ron
- Widerstandswert
- S
- Schalttransistor
- T
- Signalwert
- TPD
- Pull-Down-Transistor
- Φ
- Takt