DE3587944T2 - Konfigurierbare logische Matrix. - Google Patents
Konfigurierbare logische Matrix.Info
- Publication number
- DE3587944T2 DE3587944T2 DE19853587944 DE3587944T DE3587944T2 DE 3587944 T2 DE3587944 T2 DE 3587944T2 DE 19853587944 DE19853587944 DE 19853587944 DE 3587944 T DE3587944 T DE 3587944T DE 3587944 T2 DE3587944 T2 DE 3587944T2
- Authority
- DE
- Germany
- Prior art keywords
- logic array
- array chip
- configurable logic
- configuration information
- configuring
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
- 239000011159 matrix material Substances 0.000 title 1
- 230000006870 function Effects 0.000 claims description 40
- 238000000034 method Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 7
- 238000012546 transfer Methods 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000000977 initiatory effect Effects 0.000 claims 4
- 210000004027 cell Anatomy 0.000 description 12
- 238000003491 array Methods 0.000 description 9
- 230000003068 static effect Effects 0.000 description 7
- 241000030538 Thecla Species 0.000 description 5
- 238000010586 diagram Methods 0.000 description 4
- 239000004065 semiconductor Substances 0.000 description 4
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 3
- 239000000872 buffer Substances 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000002238 attenuated effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C19/00—Digital stores in which the information is moved stepwise, e.g. shift registers
- G11C19/28—Digital stores in which the information is moved stepwise, e.g. shift registers using semiconductor elements
Landscapes
- Logic Circuits (AREA)
Description
- Diese Erfindung betrifft Logikarrays und insbesondere ein Verfahren zum Ermöglichen des Programmierens auf dem Chip von jedem aus einer Mehrzahl von Logikelementen, welche auf einem Chip aus Halbleitermaterial aufgebaut sind, um jedes Logikelement so zu konfigurieren, daß es gewisse gewünschte Funktionen ausführt.
- Sogenannte Gatearrays sind im Stand der Technik allgemein bekannt. Typischerweise wird ein Gatearray dadurch hergestellt, daß eine Mehrzahl von aktiven Elementen in einer Basisanordnung auf irgendeine einer Vielzahl von Möglichkeiten untereinander verbunden wird, um eine gewünschte Logikfunktion zu erzielen. Wenn Gatearrays komplexer werden, ist die Simulation der zu erzielenden Logik aufgrund einer gegebenen Verbindung der aktiven Elemente untereinander in der Basisanordnung immer schwieriger und wird typischerweise unter Verwendung eines Computerprogramms durchgeführt. Das Layout der tatsächlichen Zwischenverbindungen unter den aktiven Elementen in der Basisanordnung zum Erhalt eines fertigen Gatearrays wird dann erhalten unter Verwendung eines computerunterstützten Auslegungsprogramms eines Typs, wie er allgemein bekannt ist. Der Prozeß des designens einer derartigen Struktur ist komplex und reichlich teuer und macht die Verwendung von Logiksimulationen und Verifikations-Programmen, sowie Halbleiterelement-Layoutprogrammen nötig. Demzufolge besteht eine Notwendigkeit für eine andere Annäherung, welche den Erhalt einer gegebenen Logikfunktion aus einer Basisanordnung erheblich vereinfacht.
- Beschrieben wird ein konfigurierbares Logikarray, welches die Änderung der Konfiguration des fertigen integrierten Schaltkreises von Zeit zu Zeit erlaubt (selbst wenn der integrierte Schaltkreis in einem System installiert ist), um irgendeine aus einer Mehrzahl von Logikfunktionen von dem gleichen integrierten Schaltkreis zu erhalten. Durch Bereitstellen einer Anzahl von konfigurierbaren Logikelementen" (nachfolgend auch als "Logikelemente" bezeichnet) in der Basisanordnung wird ein neuer Typ von integriertem Schaltkreis erhalten, der in der Lage ist, konfiguriert zu werden, um irgendeine aus einer Mehrzahl von Logikfunktionen bereit zu stellen abhängig von den Aufgaben, welche das System, von welchem er ein Teil ist, durchführen muß. Mit "konfigurierbares Logikelement" sei eine Kombination von Elementen verstanden, welche in der Lage sind, durch Schalter elektrisch untereinander verbunden zu werden, welche abhängig von Steuerbits betätigt werden, um irgendeine aus einer Mehrzahl von Logikfunktionen zu bilden.
- Ein konfigurierbares Logikarray besteht aus einer Vielzahl von konfigurierbaren Logikelementen, von denen jedes all die Schaltkreiselemente beinhalten kann, die nötig sind, eine oder mehrere der Funktionen bereitzustellen, welche durch ein UND-Gatter, ein Flip-Flop, Invertierer, NICHT-ODER-Gatter, ein exklusiv ODER-Gatter und Kombinationen dieser Funktionen bereitgestellt werden, um komplexere Funktionen zu bilden. Die spezielle Funktion, welche von einem konfigurierbaren Logikelement auszuführen ist, wird durch Steuersignale bestimmt, welche an das konfigurierbare Logikelement von einer Steuerlogik angelegt werden. Abhängig von den Steuersignalen kann das konfigurierbare Logikelement, welches in meiner Erfindung verwendet wird, als ein UND-Gatter, ein ODER-Gatter, ein NICHT-ODER-Gatter, ein NICHT-UND-Gatter oder ein exklusiv ODER-Gatter oder als irgendeines aus einer Anzahl von anderen Logikelementen arbeiten, ohne daß irgendeine Änderung der physischen Struktur erfolgt.
- In einer Ausführungsform werden die Steuersignale von einer Steuerlogik gespeichert und übertragen, welche integral mit und als Teil des integrierten Schaltkreischips ausgebildet ist, der das konfigurierbare Logikelement enthält. Wenn es jedoch gewünscht ist, kann die Steuerinformation außerhalb dieses integrierten Schaltkreises gespeichert und/oder erzeugt werden und durch Anschlüsse dem konfigurierbaren Logikelement übertragen werden.
- Allgemein wird ein gegebener Satz von Steuersignalen einem konfigurierbaren Logikelement übertragen, um die Konfiguration dieses konfigurierbaren Logikelementes zu steuern. Die Steuerlogik ist somit angeordnet, irgendeinen Satz aus einer Mehrzahl von Sätzen von Steuerbits jedem konfigurierbaren Logikelement auf dem Chip bereitzustellen. Der tatsächliche Satz von Steuerbits, welche jedem konfigurierbaren Logikelement auf dem integrierten Schaltkreischips bereitgestellt wird, hängt von der von dem integrierten Schaltkreischip oder der von jedem konfigurierbaren Logikelement auf dem Chip durchzuführenden Funktion ab. Die Konfiguration eines jeden Logikelementes auf dem Chip wird bestimmt durch die beabsichtigte Funktion des gesamten Chips und durch die beabsichtigte Formation des bestimmten konfigurierbaren Logikelements als Teil auf dem Chip. Die sich so ergebende Struktur ist bekannt als "konfigurierbares Logikarray" oder "CLA" (configurable logic array) und jedes Logikelement in dem Array ist bekannt als "konfigurierbares Logikelement" oder "CLE" (configurable logic element).
- Allgemein hat jeder integrierte Schaltkreischip zusätzlich zu und zugeordnet zu der Steuerlogik gewisse auf dem Chip vorhandene Datenführungsschaltkreise. In einer Ausführungsform wird die auf dem Chip vorhandene Datenführung erzielt unter Verwendung eines Speichers zum Speichern der speziellen Daten, die verwendet werden, die konfigurierbaren Logikelemente zu konfigurieren und durch nachfolgendes Übertragen der Daten von dem Speicher zu einer Kombination eines dynamischen Schieberegisters und eines statischen Zwischenspeicherelementes innerhalb oder zugeordnet zu jedem konfigurierbaren Logikelement auf dem Chip.
- Die spezielle Struktur, welche in dieser Erfindung verwendet wird, ist abwandlungsfähig insofern, als sie besonders einfach unter Verwendung von P-Kanal-, N-Kanal- oder CMOS-Technologien in der gezeigten Ausführungsform implementiert werden kann. Selbstverständlich kann die Struktur, welche die Prinzipien der Erfindung beinhaltet falls gewünscht unter Verwendung einer anderen geeigneten Halbleitertechnologie implementiert werden. Das dynamische Schieberegister/statische Zwischenspeicherelement, welches in dieser Erfindung verwendet wird, ist besonders anwendungsfähig insofern, als der strukturelle "Überhang" (d. h. Zugriffsschaltkreise und Führungsschaltkreise) auf ein Minimum gehalten wird gegenüber den verwendbaren Logikfunktionen auf dem Gesamtchip. Besonders wichtig ist, daß keine Addressierung, Datenauswahl oder Dekodierung in jedem konfigurierbaren Logikelement notwendig ist, wenn diese Kombination eines dynamischen Schieberegisters und eines statischen Zwischenspeicherelements verwendet wird, um das konfigurierbare Logikarray zu implementieren, welches in meiner Erfindung verwendet wird.
- Die Aufgabe der vorliegenden Erfindung wird gelöst durch die Merkmale von Anspruch 1. Bevorzugte Ausführungsformen und ein Verfahren zum Implementieren des konfigurierbaren Logikarray-chips gemäß Anspruch 1 sind durch die Merkmale der Ansprüche 8, 13, 15 und 21 angegeben.
- Diese Erfindung, wie sie in den beigefügten Ansprüchen beansprucht ist, ergibt sich besser im Zusammenhang mit der nachfolgenden detaillierten Beschreibung hiervon in Zusammenschau mit der Zeichnung.
- Fig. 1 zeigt einige der unterschiedlichen Logikfunktionen, welche in jedem Logikelement in einem konfigurierbaren Logikarray integrierbar sind;
- Fig. 2 zeigt die interne Logikstruktur eines möglichen Logikelementes, welches in der Lage ist, eine Anzahl von sinnvollen Funktionen mit zwei Variablen A und B und gewissen Konfigurations-Steuerbits C0-C5 zu implementieren;
- Fig. 3A zeigt einen 16 bit RAM-Auswahlschaltkreis, wobei jeder von 16 möglichen Eingangszuständen in der Lage ist, identifiziert zu werden und 2¹&sup6; Funktionen implementierbar sind;
- Fig. 3B zeigt eine Auswahlstruktur zum Auswählen irgendeines von 16 bits, welche in der Lage ist, 2¹&sup6; Funktionen zu implementieren, zur Übertragung an eine Ausgangsleitung;
- Fig. 3C zeigt ein mögliches Karnaugh-Diagramm für die Struktur von Fig. 3A;
- Fig. 3D zeigt die Logikgatter, welche vertreten werden durch Anordnen eines Binärwertes in dem Karnaugh- Diagramm von Fig. 3C an den Schnittstellen der ersten und zweiten Reihen und der ersten Spalte;
- Fig. 4A zeigt eine Ausführungsform, bei der eine Mehrzahl von konfigurierbaren Logikelementen (dargestellt als neun Logikelemente) auf einem integrierten Schaltkreischip zusammen mit programmierbaren Zwischenverbindungen ausgebildet ist, die zwischen ausgewählten Leitungen vorhanden sind, um gewünschte Logikfunktionen zu erhalten und mit ausgewählten Eingangs/Ausgangs-Anschlüssen und Zwischenverbindungen der Leitungen zwischen Logikelementen;
- Fig. 4B zeigt die Legende zu den Überkreuzungsverbindungen zwischen einander kreuz enden leitfähigen Leitungen in Fig. 4B;
- Fig. 5 zeigt einen Teil des Schaltkreises einer Kombination aus statischem und dynamischen Schieberegister, welche geeignet ist zur Verwendung in dem konfigurierbaren Logikarray, das in dieser Erfindung verwendet wird;
- Fig. 6A bis 6H zeigen Wellenformen zur Verwendung in der Erläuterung der Arbeitsweise der Struktur von Fig. 5;
- Fig. 7A zeigt ein schematisches Diagramm eines konfigurierbaren Logikarrays mit neun von N konfigurierbaren Logikelementen, wobei N eine ausgewählte ungeradzahlige Zahl größer als neun ist und ausgewählten Verbindungen zwischen leitfähigen Leitungen;
- Fig. 7B-1 bis 7B-7 ist die Legende für die Arten von Zwischenverbindungen gemäß der Symbole in Fig. 7A;
- Fig. 8A zeigt ein System mit einem Mikroprozessor- Steuerer und vier konfigurierbaren Logikarrays;
- Fig. 8B zeigt eine Kombination von vier konfigurierbaren Logikarrays zusammen mit einem nicht flüchtigen Speicher; und
- Fig. 9 zeigt einen Einkarten-Mikrocomputer, der das konfigurierbare Logikarray dieser Erfindung verwendet.
- EP-A-0 177 261, welche den Stand der Technik nach Art. 54(3) EPÜ für alle benannten in Betracht kommenden Mitgliedstaaten darstellt, wird nun im Detail unter Bezug auf die Fig. 1 bis 7B der Zeichnung beschrieben.
- EP-A-0 177 261 offenbart einen konfigurierbaren Logikarray-Chip mit einer Mehrzahl von konfigurierbaren Logikelementen, von denen jedes eine Kombination von Elementen aufweist, die in der Lage sind, abhängig von Konfigurationsinformationen konfiguriert zu werden, um irgendeine aus einer Mehrzahl von Logikfunktionen zu bilden, sowie eine Mehrzahl von Speicherzellen zum Erhalten von der Konfigurationsinformation, wobei die Konfigurationsinformation den konfigurierbaren Logikarray-Chip konfiguriert.
- Unter Bezug auf Fig. 1 zeigt diese Fig. 1 bestimmte Logikfunktionen, welche in ein konfigurierbares Logikelement integrierbar sind. Die 28 Funktionen, die in Fig. 1 dargestellt sind, sind rein illustrativ und andere, nicht dargestellte Elemente können, falls dies gewünscht ist, in ein konfigurierbares Logikelement eingebracht werden. Die folgenden Elemente sind dargestellt:
- 1 UND-Gatter
- 2 NICHT-UND-Gatter
- 3 UND-Gatter mit invertiertem Eingang
- 4 NICHT-UND-Gatter mit invertiertem Eingang
- 5 ODER-Gatter
- 6 NICHT-ODER-Gatter
- 7 exklusiv ODER-Gatter
- 8 exklusiv NICHT-ODER-Gatter
- 9 UND-Gatter mit drei Eingängen
- 10 NICHT-UND-Gatter mit drei Eingängen
- 11 ODER-Gatter mit drei Eingängen
- 12 NICHT-ODER-Gatter mit drei Eingängen
- 13 ODER-Gatter mit einem Eingang, der ein UND-Gatter hat
- 14 NICHT-ODER-Gatter mit einem Eingang, der ein UND-Gatter hat
- 15 UND-Gatter mit einem Eingang, der ein ODER-Gatter hat
- 16 NICHT-UND-Gatter mit einem Eingang, der ein ODER-Gatter hat
- 17 UND-Gatter mit drei Eingängen mit einem invertierten Eingang
- 18 NICHT-UND-Gatter mit drei Eingängen mit einem invertierten Eingang
- 19 ODER-Gatter mit drei Eingängen mit einem invertierten Eingang
- 20 NICHT-ODER-Gatter mit drei Eingängen mit einem invertierten Eingang
- 21 zwei-auf-eins-Multiplexer
- 22 zwei-auf-eins-Multiplexer mit invertierendem Eingang
- 23 D-Flip-Flop mit reset
- 24 Set-Reset-Zwischenspeicher
- 25 D-Flip-Flop mit Reset und invertiertem Ausgang
- 26 Set-Reset-Zwischenspeicher mit Reset und invertiertem Ausgang
- 27 D-Flip-Flop mit Setzmöglichkeit
- 28 D-Flip-Flop mit Setzmöglichkeit und invertiertem Ausgang
- Selbstverständlich können andere Logikelemente ebenfalls abhängig von dieser Erfindung implementiert werden.
- Fig. 2 zeigt die interne Logikstruktur eines möglichen Logikelementes, welches in der Lage ist, alle sinnvollen Funktionen mit den beiden Variablen A und B zu implementieren, wobei diese Funktionen durch Konfigurations- Steuersignale C0, , C1, . . . bis C5 ausgewählt werden, wie in Fig. 1 gezeigt. Beispielsweise werden, um eine UND- Gatter-Funktion unter der Verwendung der Struktur in Fig. 2 zu implementieren, werden die Eingangsleitungen A und B bezüglich Invertierern 21 und 22 durch hochpegelige Signale an den Konfigurations-Steuerleitungen C1 und C0 nebengeschlossen. Die Leitungen C1 und C0 sind mit allgemein bekannten Durchlaßtransistoren 29c und 29d verbunden. (In der gesamten Beschreibung wird ein Durchlaßtransistor durch das Symbol innerhalb der Kreise 29c und 29d dargestellt). Tiefpegelige Signale werden den Konfigurations-Steuerleitungen , und C4 zugeführt. Es sei angenommen daß C0, C1 und all die anderen Leitungen mit N-Kanal MOS-Durchlaßtransistoren verbunden sind, dann können die Steuersignale C2, , C3 und "vernachlässigt werden". Mit anderen Worten, diese Signale können hoch oder niedrig sein, ohne das Ausgangssignal zu beeinflussen. Zusätzlich wird ein hochpegeliges Signal auf C5 angelegt, um das UND-Gatter 25 durchzuschalten. Das hochpegelige Signal vom UND-Gatter 25 läuft durch ein NICHT-ODER-Gatter 26. Vom NICHT-ODER-Gatter 26 läuft dieses Signal als ein tiefpegeliges Signal zum Abschalten eines MOS-Transistors 29a (dessen Source auf Masse liegt und dessen Drain mit der Ausgangsleitung 28 verbunden ist), und zum Einschalten über NICHT-ODER-Gatter 27 eines N-Kanal-Transistors 29b (dessen Drain mit einer Energieversorgung und dessen Source mit sowohl der Ausgangsleitung 28 und der Drain des N-Kanal-Transistors 29a verbunden ist). Die wie oben beschrieben konfigurierte Anordnung gemäß Fig. 2 ist somit ein UND-Gatter. Andere Logikfunktionen können ebenfalls erzeugt werden durch geeignete Auswahl der Steuersignale, welche den Konfigurations-Steuerleitungen C0 bis C5 zugeführt werden, um die geeigneten Durchlaßtransistoren und Gatter innerhalb der Struktur zu aktivieren.
- Fig. 3A zeigt ein 16 bit RAM, welches in der Lage ist, ein Ausgangssignal in Antwort auf irgendeine von 16 möglichen Kombinationen von Eingangssignalen zu erzeugen. Somit steuern Eingangssignale A und B den X-Dekoder, um irgendeine von vier Spalten in dem 16 bit RAM auszuwählen. Eingangssignale C und D steuern den Y-Dekoder, um irgendeine der vier Reihen in dem 16 bit RAM auszuwählen. Das 16 bit RAM erzeugt ein Ausgangssignal, welches dasjenige bit anzeigt, welches sich an der Schnittstelle von ausgewählter Reihe und Spalte befindet. Es gibt 16 derartiger Schnittstellen und somit 16 derartiger bits. Es gibt 2¹&sup6; mögliche Kombinationen von Funktionen, welche durch 16 bit vertretbar sind. Wenn somit ein NICHT-ODER-Gatter durch die 16 bits in dem RAM simuliert werden muß, ist das Karnaugh-Diagramm für das RAM in Fig. 3C. In Fig. 3C sind alle bits "0" mit Ausnahme des bits an der Schnittstelle der ersten Reihe (vertretend A = 0, B = 0) und der ersten Spalte (vertretend C = 0, D = 0). Sollte eine weniger oft verwendete Funktion durch das 16 bit RAM erzeugt werden (sollte beispielsweise ein "1" Ausgangssignal für A = 1, B = 0, C = 0 und D = 0 erwünscht sein), wird eine binäre "1" an der Schnittstelle der zweiten Reihe und der ersten Spalte gespeichert. Sollte eine binäre "1" erwünscht sein, wenn sowohl A = 0, B = 0, C = 0 und D = 0 und weiterhin A = 1, B = 0, C = 0 und D = 0, wird eine binäre "1" für das Zeichen an jeder der Schnittstellen der ersten Spalte mit der ersten und der zweiten Reihe gespeichert. Der Logikschaltkreis, der durch dieses Laden des RAM vertreten wird, ist in Fig. 3D dargestellt. Somit vertritt das RAM von Fig. 3A einen elegante und einfache Implementation von jeder der 2¹&sup6; Logikfunktionen.
- Fig. 3B zeigt einen anderen Aufbau zum Erhalt eines jeden von 16 Auswahlbits. Jedes von Registern 0 bis 15 in der vertikalen Spalte auf der linken Seite mit der Bezeichnung "16 Auswahlbits" enthält ein ausgewähltes Signal, entweder eine binäre 1 oder 0. Durch Auswahl einer geeigneten Kombination von A, B, C und D wird ein bestimmtes bit in einer bestimmten der 16 Stellen in dem 16-Auswahlbit-Register zum Ausgang übertragen. Um somit beispielsweise das bit in dem Register "1" dem Ausgang zu übertragen, wird das Signal A, B, C und D den so bezeichneten Leitungen zugeführt. Um das Signal mit der Bezeichnung "15" in der sechzehnten Stelle des 16-Auswahlbit-Registers dem Ausgang zuzuführen, wird das Signal A, , und dem zugehörigen Spalten zugeführt. Wiederum kann jede von 2¹&sup6; Logikfunktionen unter Verwendung dieser Struktur implementiert werden.
- Fig. 4A zeigt eine Ausführungsform eines konfigurierbaren Logikarrays, welches neun konfigurierbare Logikelemente beinhaltet. Wie in Fig. 4 gezeigt, sind neun Logikelemente auf einem integrierten Schaltkreischip zusammen mit Zwischenverbindungen und variablen Schaltern zur Verbindung unterschiedlicher Leitungen mit anderen Leitungen angeordnet. Jedes der Logikelemente 40-1 bis 40-9 stellt eine Ansammlung von Schaltkreisen etwa wie denjenigen gemäß Fig. 2 oder eine ähnliche Struktur dar, welche konfigurierbar ist, wie oben unter Bezug auf Fig. 2 beschrieben, um irgendeine aus einer Anzahl von Logikfunktionen durchzuführen. Um den Schaltkreis zu programmieren, werden ausgewählte Signale Eingangsleitungen zugeführt, welche als Konfigurationssteuer-Eingangsleitungen bezeichnet sind, um somit eine gewünschte Logikfunktion in jedem der Logikelemente zu erzeugen. In Fig. 4A ist keine spezielle Leitung als Eingangsleitung für die Konfigurations-Steuersignale identifiziert. Es kann jedoch irgendein bestimmtes I/O-Anschlußkissen für diesen Zweck ausgewählt werden. Die Konfigurations-Steuerbits können dem konfigurierbaren Logikarray entweder seriell oder parallel abhängig von den Designüberlegungen eingegeben werden. Zusätzlich kann ein anderes I/O-Kissen verwendet werden, um Taktsignale einzugeben, mit denen die Logikelemente sowohl für das Einschieben der Konfigurations-Steuersignale zu jedem konfigurierbaren Logikelement und zum Steuern der Operation eines jeden Logikelementes während der Arbeitsweise des integrierten Schaltkreischips in seiner beabsichtigten Weise getaktet werden. Die Kombination von Logikelementen 40-1 bis 40-9 erzeugt den gewünschten Logikausgang für das konfigurierbare Logikarray. Fig. 4B zeigt die Bedeutung der Verbindungssymbole, die in Fig. 4A verwendet sind.
- Um ein Logikelement wie das Logikelement 40-1 (Fig. 4A, Fig. 4B) zu konfigurieren, muß eine Anzahl von bits den Konfigurations-Steuerleitungen, wie den Leitungen C0 bis C5 zugeführt werden, wie beispielsweise in Fig. 2 gezeigt. Um dies zu bewerkstelligen, wird ein Schieberegister in einer bevorzugten Ausführungsform als Teil eines jeden konfigurierbaren Logikelementes verwendet. Fig. 5 zeigt ein Schieberegister zur Verwendung in dieser Erfindung. Das Schieberegister von Fig. 5 ist dargestellt mit zwei Grund-Speicherzellen. Jede Speicherzelle ist in der Lage, ein bit einer Information zu speichern. Selbstverständlich wird ein tatsächliches Schieberegister so viel Speicherzellen enthalten, wie benötigt sind, das Logikelement in seine gewünschte Konfiguration zu konfigurieren, von welchem das Schieberegister ein Teil ist. Im Betrieb wird ein Eingangssignal der Eingangsleitung 58 zugeführt. Dieses Eingangssignal (in Fig. 6D gezeigt) beinhaltet die Impulse, welche in dem Schieberegister als Konfigurations-Steuerbits gespeichert werden müssen, um das konfigurierbare Logikelement zu konfigurieren, so daß dieses eine gewünschte Logikfunktion durchführt, oder um eine Verbindung zwischen Leitungen auf eine Weise zu konfigurieren, welche nachfolgend noch beschrieben wird. Die Impuls folge, welche der Eingangsleitung 58 zugeführt wird, vertritt somit diejenigen Impulse, welche, wenn sie in den Speicherzellen des Schieberegisters gespeichert sind, die Konfigurations-Steuerbits auf geeignete Weise aktivieren, um die gewünschten funktionellen und/oder Verbindungs-Ergebnisse zu erzielen. Wenn beispielsweise der Schaltkreis von Fig. 2 in Form eines UND- Gatters konfiguriert werden muß, sind die Impulse C0, C1, C2, C3, C4 und C5 vertreten durch 1, 1, X, X, 0, 1.
- Die Impulsfolge, welche der Eingangsleitung 58 zugeführt wird, wird mit Taktpulsen Φ1 und Φ2 synchronisiert, welche an Leitungen 57 bzw. 59 angelegt werden. Somit geht in der ersten Periode des Betriebs der Taktpuls Φ1 nach hoch (Fig. 6A) der Taktpuls Φ2 ist niedrig (Fig. 6B), das Haltesignal (Fig. 6C) ist während des Verschiebevorgangs niedrig, so daß der Durchlaß von Daten durch die sequentiell verbundenen Zellen 5-1, 5-2 etc. des Schieberegisters erleichtert ist. Zum Durchschieben des Datenmusters 01010 in dem Schieberegister laufen die folgenden Abläufe ab: das Eingangssignal auf der Leitung 58 ist während annähernd des ersten halben Zyklus der Taktperiode t1 tief. Das Ausgangssignal des Invertierers 51-1 nimmt in Antwort auf das tiefpegelige Eingangssignal und das hohe Φ1 hohen Pegel an, um den Durchlaßtransistor 53-1 durchzuschalten. Nach dem Durchlaufen der ersten Taktperiode t1 geht das Taktsignal Φ 1 nach tief (Fig. 6A) und das Taktsignal Φ2 geht kurz danach nach hoch (Fig. 6B), um den Durchlaßtransistor 55-1 durchzuschalten. Infolgedessen wird das hochpegelige Ausgangssignal der Eingangsleitung des Invertierers 52-1 durch den durchgeschalteten Durchlaßtransistor 55-1 übertragen, wodurch ein tiefpegeliges Ausgangssignal Q1 an der Ausgangsleitung des Invertierers 52-1 erzeugt wird. Somit ist zum Ende der Periode t1 das Ausgangssignal (Fig. 6F) vom Invertierer 52-1 tiefpegelig. Die Ausgangssignale und Q2 von den Invertierern 51-2 und 52-2 in der zweiten Zelle sind noch unbestimmt, da noch kein bekanntes Signal sich zu der zweiten Speicherzelle 5-2 fortgepflanzt hat, um die Signale dieser Invertierer in einen bekannten Zustand umzuändern.
- Zu Beginn der zweiten Periode (in Fig. 6A mit "t2" bezeichnet) wird Φ1 hoch (Fig. 6A) und Φ2 ist tief (Fig. 6B) und ist bereits nach tief gegangen, bevor die Periode t1 beendet war. Das Eingangssignal (Fig. 6D) ist nun auf hohen Pegel angestiegen und stellt eine binäre 1 dar und somit ist das Ausgangssignal vom Invertierer 51-1 nach tief gegangen. Das Ausgangssignal Q1 des Invertierers 52-1 verbleibt tief, da der Durchlaßtransistor 55-1 bei dem tiefpegeligen Signal Φ2 abgeschaltet bleibt. Irgendwann während der zweiten Periode geht Φ1 nach tief, wobei kurz danach Φ2 nach hoch geht. Zu dieser Zeit wird das Ausgangssignal durch den Durchlaßtransistor 55-1 dem Invertierer 52-1 übertragen, wodurch das Ausgangssignal Q1 vom Invertierer 52-1 hochpegelig gemacht wird. Inzwischen hat während der Periode t2 das vorhergehende tiefpegelige Signal auf Q1 das Ausgangssignal vom Invertierer 51-2 auf hohen Pegel getrieben, wenn Q1 auf hohem Pegel war, um den Durchlaßtransistor 53-2 durchzuschalten und die Änderung von Φ2 von tiefem Pegel zu hohem Pegel in der zweiten Hälfte der Periode t2, um den Durchlaßtransistor 55-2 durchzuschalten treibt das Ausgangssignal Q2 vom Invertierer 52-2 auf tiefen Pegel. Auf diese Weise ist das Eingangssignal auf der Leitung 58 (Fig. 6D) durch jede der Zellen 5-1, 5-2, 5-3 etc. in dem Schieberegister übertragen worden. Bei der Übertragung der gewünschten Information in das Schieberegister ist das Haltesignal (Fig. 6C) aktiviert (d. h. auf hohen Pegel getrieben), wodurch die Rückkoppelungsleitungen 50-1, 50-2, 50-3 etc. von den Ausgangsleitung der Invertierer 52 zu den Eingangsleitungen der Invertierer 51 geschaltet sind, so daß die Information in jeder Zelle unbestimmt gehalten ist. Im Betrieb wird das in einer gegebenen Zelle 5 gespeicherte Signal einer Konfigurationssteuerung oder einem Zwischenverbindungs-Durchlaßelement zugeschaltet.
- , Q&sub1;, , Q&sub2;, etc. des Schieberegisters sind direkt mit den (Konfigurations-)steuereingängen einer Logikeinheit oder den Durchlaßelementen der konfigurierbaren Zwischenverbindung zugeschaltet.
- Wenn Φ1 niedrig ist und Φ2 und "HOLD" hoch gemacht werden, werden die Daten unbestimmt gehalten. Das gesamte Schieberegister kann gesetzt oder gelöscht werden, indem der Eingang mit Φ1 und Φ2 auf hoch und "HOLD" auf niedrig gesetzt oder gelöscht werden. Eine ausreichende Setz- und Rücksetzzeit muß erlaubt sein, so daß das Signal die gesamte Länge des Schieberegisters durchlaufen kann, um das Schieberegister auf diese Weise zu löschen. Diese Zeit hängt natürlich von der Länge des Schieberegisters ab.
- Das Schieberegister arbeitet in seiner dynamischen Phase durch Speicherung der zu verschiebenden Information als Ladung auf den Gattern der Transistoren (in Fig. 5 nicht dargestellt, jedoch allgemein bekannt), die Invertierer 51-1, 52-1, 51-2, 52-2 etc. des Schieberegisters aufweisen. Diese Invertierer sind von allgemein bekannter Auslegung und werden nicht im Detail beschrieben. Die Verwendung eines dynamischen Schieberegisters ist ein wichtiges Merkmal der Erfindung, da ein dynamisches Schieberegister sechs Transistoren verwendet und somit sehr wenig Platz benötigt. Das dynamische Schieberegister wird in einen statischen Zwischenspeicher durch Hinzufügung nur eines Transistors umgewandelt. Somit kann die Anordnung aus dynamischem Schieberegister und statischem Zwischenspeicher leicht als Teil eines konfigurierbaren Logikelementes hergestellt werden, ohne eine wesentliche Komplexität dem Schaltkreis hinzuzufügen oder wesentlichen Halbleiterplatz zu verbrauchen. Aufgrund des "HOLD"-Signales kann das dynamische Schieberegister mit einer sehr geringen Frequenz betrieben werden, da das Setzen des Schieberegisters auf "HOLD" automatisch die Daten erneuert. Somit ist ein separater Erneuerungsschaltkreis nicht notwendig.
- Es ergibt sich aus der obigen Beschreibung, daß der Schaltkreis mit dynamischem Schieberegister und statischen Zwischenspeicher einzigartig insofern ist, als er keine Datenerneuerung benötigt, sobald er in einer Halteposition gesperrt ist. Dies wird bewerkstelligt durch die Verwendung des Rückkoppelungsschaltkreises mit der Leitung 50-1 und dem Durchlaßtransistor 54-1 in der Zelle 5-1 als Beispiel.
- Fig. 7A zeigt ein weiteres konfigurierbares Logikarray mit einer Mehrzahl von konfigurierbaren Logikelementen. Genauer, die konfigurierbaren Logikelemente 70-1, 70- 2, 70-4 und 70-5 sind vollständig dargestellt, wohingegen die konfigurierbaren Logikelemente 70-3, 70-6 und 70-7 bis 70-9 teilweise dargestellt sind. Insbesondere ist die vollständige Zwischenverbindung zwischen diesen letzten fünf Logikelementen nicht dargestellt. Die Struktur gemäß Fig. 7A ist rein illustrativ hinsichtlich der Arten von Konfigurationen und Verbindungen, welche unter Verwendung des konfigurierbaren Logikarrays dieser Erfindung implementiert werden können und zeigt nicht einen tatsächlichen Schaltkreis, der zur Durchführung einer beabsichtigten Funktion konfiguriert ist.
- Gemäß Fig. 7A können bestimmte Leitungen durch eine aus einer Mehrzahl unterschiedlicher Maßnahmen (d. h. Verbindungsstrukturen) untereinander verbunden werden. Die die Verbindungen in Fig. 7A darstellenden Symbole sind in Fig. 7B erläutert. Die schematischen Darstellungen, welche die verschiedenen Zwischenverbindungen symbolisieren sind bis zu einem gewissen Betrag selbsterläuternd.
- Fig. 7B-2 zeigt beispielsweise einen vollen Block entsprechend einem wechselseitigen Austausch von 20 Durchlaßtransistoren. Dieser spezielle wechselseitige Austausch mit 20 Transistoren ist im größeren Detail in Fig. 7B-7 dargestellt.
- Zur Erläuterung: Fig. 7B-1 zeigt drei Transistoren, welche in der Lage sind, eine T-Verbindung oder eine Kreuzverbindung, jedoch keine volle wechselseitige Verbindung herzustellen. Mit voller wechselseitiger Verbindung ist die Fähigkeit gemeint, jede der Leitungen (in Fig. 7B-1 vier Leitungen), welche in einen Knoten hineinlaufen mit einem gegebenen Knoten oder mit jeder der anderen Leitungen, welche in den Knoten in jeglicher Kombination hineinlaufen zu verbinden.
- Fig. 7B-2 zeigt eine Ein-Transistor-Verbindung zur Verbindung einer Reihe mit einer Spalte. Fig. 7B-3 zeigt eine Sechs-Transistor-Vollkreuzverbindung, bei der jede von vier Leitungen, welche in einen Knoten hineinlaufen mit jeder anderen der verbleibenden drei Leitungen verbunden werden kann. Fig. 7B-4 zeigt sechs Leitungen, welche in einen Schnittpunkt laufen, in dem zehn Durchlaßtransistoren verwendet werden, um jede der sechs Eingangsleitungen mit irgendeiner der fünf anderen Leitungen, welche in den Knoten laufen, zu verbinden. Fig. 7B-5 zeigt einen Vierleitungsknoten, wo zwei horizontale durchlaufende Leitungen mit zwei separaten vertikalen Leitungen unter Verwendung von fünf Durchlaßtransistoren verbunden werden.
- Fig. 7B-6 zeigt eine Drei-Transistor-Verbindung, bei der jede von drei Leitungen, welche in einen Knoten laufen, mit irgendeiner der anderen beiden Leitungen verbunden werden kann. Fig. 7B-7 zeigt die wechselseitige Verbindung mit 20 Transistoren zum Verbinden irgendeiner von acht Eingangsleitungen mit irgendeiner der anderen acht Eingangsleitungen mit Ausnahme der Leitung parallel und benachbart zu der Leitung, welche verbunden wird und mit Ausnahme von vier Zwischenverbindungen, welche ebenfalls mit der Struktur von Fig. 7B-7 nicht direkt gemacht werden können.
- Die Fig. 8A und 8B zeigen zwei mögliche Systeme, welche fähig sind, die konfigurierbaren Logikarrays dieser Erfindung zu verwenden. In Fig. 8A erzeugt eine Mikroprozessor-Mikrosteuerung Adressensignale, Steuersignale und Datensignale, welche einem als Master wirkenden konfigurierbaren Logikarray übertragen werden. Ebenfalls dargestellt sind N Slave-CLAs. Wie in Fig. 8A dargestellt werden die Steuerbits zur Steuerung eines jeden konfigurierbaren Logikelementes in jedem konfigurierbaren Slave-Logikarray auf den Datenleitungen von der Mikrosteuerung zu dem konfigurierbaren Master-Logikarray übertragen. Von dem konfigurierbaren Master-Logikarray werden diese Daten in Serie jedem der N konfigurierbaren Logikarrays übertragen, wobei N eine gewählte ungeradzahlige Zahl ist. Die Steuerbits zur Steuerung der Konfiguration eines jeden konfigurierbaren Logikelementes in jedem der konfigurierbaren Logikarrays werden in Serie durch das konfigurierbare Slave-Logikarray 1, das konfigurierbare Slave-Logikarray 2 bis zum Nten konfigurierbaren Array übertragen. Der Datenwert wird in seriellen Schieberegistern gespeichert, welche oben im Zusammenhang mit Fig. 5 beschrieben worden sind. Wenn die richtigen bits in den richtigen Speicherzellen in jedem Schieberegister vorhanden sind, wird das Halte-Signal gemäß Fig. 6C auf hohen Pegel angehoben, um hierdurch jedes Datenbit an der richtigen Stelle in dem entsprechenden Schieberegister zu "verriegeln", so daß jedes konfigurierbare Logikelement in jedem konfigurierbaren Logikarray konfiguriert ist. Die Datentaktsignale werden auf einer separaten Leitung jedem konfigurierbaren Array zugeführt, wie dargestellt, um die Steuerdaten zu takten.
- Der Adressenpfeil, der auf das CLA (Master) in Fig. 8A weist, zeigt lediglich an, daß der Mikroprozessor die Fähigkeit hat, ein bestimmtes konfigurierbares Master-Logikarray zum Empfang von Daten von dem Mikroprozessor auszuwählen. In Fig. 8B ist das konfigurierbare Master-Logikarray in der Lage, auf den nicht flüchtigen Speicher mit Adressen zuzugreifen, um bestimmte Daten auszuwählen, welche aus dem Speicher zu erhalten sind, und welche verwendet werden, jedes der konfigurierbaren Slave-Logikarrays zu konfigurieren. In Fig. 8A erzeugt der Mikroprozessor Adresssignale, welche zu einem außerhalb des Chip liegenden Speicher oder zu anderen Schaltkreisen (nicht dargestellt) gehen.
- In Fig. 8B ist der Aufbau ähnlich zu demjenigen gemäß Fig. 8A mit der Ausnahme, daß ein nicht flüchtiger Speicher wie ein ROM, ein EPROM oder ein E²PROM als Quelle für die Konfigurations-Steuerbits verwendet wird, welche in jedes der konfigurierbaren Logikarrays übertragen werden. Die Struktur von Fig. 8B ist einzigartig insofern, als beim Einschalten der Energieversorgung oder beim Zuführen eines Rücksetz-Signales zu dem Master-CLA dann das Master-CLA den Informationsübertrag zur Steuerung des Übertrags von Informationen zur Steuerung oder Konfiguration des konfigurierbaren Logikarrays von dem nicht flüchtigen Speicher zu den Master-CLS und zu den Slave-CLAs 1 bis N beginnt. In diesem Sinn ist die Struktur von Fig. 8B in Antwort auf Einschalten der Energieversorgung oder auf ein Rücksetzsignal selbst-konfigurierend.
- Ein Einplatinen-Mikrocomputer, der ein konfigurierbares Logikarray dieser Erfindung verwendet ist in Fig. 9 gezeigt. Das konfigurierbare Logikarray 110 führt die Chip- Dekodierfunktionen, die Zwischenspeicherfunktionen und die verschiedenen Speziallogikfunktionen durch, welche nötig sind, einen Einplatinen-Mikrocomputer zu realisieren. Das CLA hat eine Ausgangsleitung ("DONE"), welche vom Zeitpunkt des Einschaltens der Energieversorgung bis zur vollen Funktionsfähigkeit des Einplatinen-Mikrocomputers logisch niedrig ist.
- Was zuerst geschieht, wenn die Energieversorgung eingeschaltet ist, ist, daß das konfigurierbare Logikarray 110 die Z8000-CPU 111 in den Rücksetz-Zustand versetzt. Das Rücksetzen erzwingt, daß die Ausgänge der CPU einen Tristate-Zustand einnehmen (d. h. sie gehen zu einem Hochimpedanz-Pegel), was es dem konfigurierbaren Logikarray möglich macht, die Steuerleitungen von der CPU 111 während der Konfiguration zu verwenden. Das konfigurierbare Logikarray 110 adressiert die EPROMs, welche auch für den erstmaligen Ladevorgang des Mikroprozessors verwendet werden über einen Satz von Adressleitungen (LA&sub1;-LA&sub1;&sub2;). Zusätzlich haben die EPROMs Konfigurationsinformation für das CLA 110 zur Verfügung. Das CLA 110 hat Signale, welche während der Selbstladezeit auf logisch hoch oder logisch tief festgelegt sind, so daß spezielle bi-direktionale Puffer 112 in die richtige Richtung gesetzt werden können, um Daten von den EPROMs 113 zu dem konfigurierbaren Logikarray 110 zu laden. Das konfigurierbare Logikarray 110 adressiert dann sequentiell Stellen in den EPROMs 113, welche in das konfigurierbare Logikarray 110 gelesen werden, um das CLA 110 zu konfigurieren. Wenn das Array 110 vollständig konfiguriert ist, übernimmt es seine neuen Funktionen und entriegelt den DONE-Ausgang, der die Rücksetzleitung zur CPU 111 freigibt. Die CPU 111 ist dann in der Steuerung des gesamten Systems. Der hierbei verwendete Dekoder dekodiert die Adressen von der CPU, um Chipfreigaben und Chipauswahlsignale für die verschiedenen RAMs und EPROMs in dem System, sowie für die Eingabe/Ausgabe-Geräte zu erzeugen.
- In Fig. 4A werden Richtungsverstärker (dargestellt durch ein X in einem Kasten) verwendet, um die Signale zu verstärken, welche durch eine Anzahl von Durchgangstransistoren gedämpft worden sind. Dies beschleunigt die Arbeitsweise des Schaltkreises erheblich. Die Signalverzögerung wächst annähernd proportional zum Quadrat der Anzahl von Durchgangstransistoren, welche ein Signal durchlaufen muß. Der Verstärker bringt die Signalspannung wieder auf den normalen Pegel zurück.
- Aus der obigen Beschreibung ergibt es sich für den Durchschnittsfachmann, daß ein konfigurierbares Logikelement in einem konfigurierbaren Logikarray in der Lage ist, erneut konfiguriert zu werden, selbst nachdem das konfigurierbare Logikarray in einem Schaltkreis installiert worden ist. Dies wird erzielt durch die wesentlichen Vorteil des erfindungsgemäßen konfigurierbaren Logikarrays. Somit kann ein konfigurierbares Logikarray erneut konfiguriert werden, um eine neue logische Funktion als Teil seines normalen Betriebes in dem System, von welchem es ein Teil ist, bereitzustellen.
- Ein weiterer Vorteil dieser Erfindung ist, daß die Eingangs/Ausgangs-Anschlüsse entweder als Eingangs- oder Ausgangsanschlüsse verwendet werden können und mit jedem internen Signal unter Verwendung von Durchlaßtransistoren verbunden werden können.
Claims (24)
1. Konfigurierbarer Logikarray-Chip (Fig. 9, 110; Fig. 4A; Fig. 7A; Fig.
8A, 8B, Master, Slave), mit:
einer Vielzahl von konfigurierbaren Logikelementen,
von denen jedes eine Kombination von Einrichtungen enthält,
die im Ansprechen auf eine Konfigurations-Information
konfigurierbar sind, um irgendeine aus einer Vielzahl von
logischen Funktionen zu bilden;
einer Vielzahl von Speicherzellen (Fig. 5: 5-1, 5-2) zum
Halten von Konfigurations-Information, wobei die
Konfigurations-Information den konfigurierbaren Logikarray-Chip
konfiguriert; und
einer Einrichtung (Fig. 9: LA&sub1;&submin;&sub1;&sub2; oder AD&sub0;&submin;&sub1;&sub5;) zum Wählen von
Konfigurations-Information aus einer Einrichtung (Fig. 9: 113
oder 111) außerhalb des konfigurierbaren Logikarray-Chips und
zum Einleiten (DONE) der Übertragung der
Konfigurations-Information in die Speicherzellen aus der Einrichtung (Fig. 9:
113 oder 111) außerhalb des konfigurierbaren Array-Chips.
2. Konfigurierbarer Logikarray-Chip nach Anspruch 1, bei
dem die Einrichtung zum Wählen und Einleiten die
Übertragung der Konfigurations-Information im Ansprechen darauf
einleitet, wenn die Stromversorgung des konfigurierbaren
Logikarray-Chips begonnen wird.
3. Konfigurierbarer Logikarray-Chip nach Anspruch 1, bei
dem die Einrichtung zum Wählen und Einleiten die
Übertragung der Konfigurations-Information im Ansprechen auf das
Rücksetzen des konfigurierbaren Logikarray-Chips einleitet.
4. System zum Konfigurieren eines Logikarray-Chips mit:
dem konfigurierbaren Logikarray-Chip (110) nach
Anspruch 1; und
einer außerhalb des Chips befindlichen Einrichtung
(113) zum Speichern der Konfigurations-Information.
5. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 4, bei dem die Einrichtung zum Speichern der
Konfigurations-Information eine nichtflüchtige
Speichereinrichtung (113) aufweist.
6. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 5, das weiterhin eine Einrichtung zum Laden der
Konfigurations-Information als ein serieller Bitstrom (D&sub0;&submin;&sub7;, 112,
AD&sub0;&submin;&sub1;&sub5;) umfaßt.
7. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 5, das weiterhin eine Einrichtung (D&sub0;&submin;&sub7;, 112, AD&sub0;&submin;&sub1;&sub5;)zum
parallelen Laden der Konfigurations-Information umfaßt.
8. System zum Konfigurieren eines Logikarray-Chips, das
einen konfigurierbaren Logikarray-Chip (Fig. 8A oder 8B; CLA Master)
nach Anspruch 1 aufweist und das darüberhinaus eine zweite
Einrichtung zum Einleiten der Übertragung der
Konfigurations-Information in die Speicherzellen aufweist, die nicht
Teil des konfigurierbaren Logikarray-Chips (Fig. 8A:
Mikroprozessor) ist.
9. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 8, bei dem die zweite Einrichtung einen
Mikroprozessor aufweist.
10. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 9, das weiterhin eine Einrichtung zum Speichern
der Konfigurations-Information (EPROM) aufweist.
11. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 10, bei dem die Einrichtung zum Speichern der
Konfigurations-Information einen nichtflüchtigen Speicher
(EPROM) aufweist.
12. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 9, bei dem der Mikroprozessor der zu
konfigurierenden Einrichtung Steuer-, Adress- und Daten-Informationen
liefert.
13. System zum Konfigurieren eines Logikarray-Chips, das
einen ersten konfigurierbaren Logikarray-Chip nach Anspruch
1 aufweist und weiterhin aufweist:
einen zweiten konfigurierbaren Logikarray-Chip (Slave)
mit einer Einrichtung zum Halten von Information in
Speicherzellen, wobei die Information in den Speicherzellen den
zweiten konfigurierbaren Logikarray-Chip konfiguriert; und
eine Einrichtung zum Übertragen der
Konfigurations-Information vom ersten konfigurierbaren Logikarray-Chip zum
zweiten konfigurierbaren Logikarray-Chip (Fig. 8A, 8B: Data und
Data Clock; Fig. 5).
14. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 13, bei dem die Einrichtung zum Übertragen ein
Schieberegister (Fig. 5) aufweist.
15. System (Fig. 8A, 8B) zum Konfigurieren eines Logikarray-
Chips, mit:
einem ersten konfigurierbaren Logikarray-Chip nach
Anspruch 1 (Master oder Slave 1);
einer Einrichtung (Mikroprozessor, EPROM oder Master) zum
Laden von Konfigurations-Information in den ersten
konfigurierbaren Logikarray-Chip;
einem zweiten konfigurierbaren Logikarray-Chip (Slave 1
oder Slave 2);
wobei der erste konfigurierbare Logikarray-Chip eine
Einrichtung (Data) zum Laden von Konfigurations-Information
in den zweiten konfigurierbaren Logikarray-Chip (Slave 1 oder
Slave 2) aufweist.
16. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 15, bei dem die Einrichtung zum Laden von
Konfigurations-Information in den ersten konfigurierbaren
Logikarray-Chip ein Mikroprozessor (Fig. 8A) ist.
17. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 16, bei dem der Mikroprozessor (Fig. 9: 111) Zugriff
zu einer Speichereinrichtung (113) zum Halten der
Konfigurations-Information hat.
18. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 15, bei dem die Einrichtung zum Laden von
Konfigurations-Information in den ersten konfigurierbaren
Logikarray-Chip (Fig. 8a: Slave 1) ein dritter konfigurierbarer
Logikarray-Chip (Fig. 8A: Master) ist.
19. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 15, das weiterhin den zweiten konfigurierbaren
Logikarray-Chip (Slave 1) aufweist, der zum Empfang der
Konfigurations-Information aus dem ersten konfigurierbaren
Logikarray-Chip (Master) verbunden ist.
20. System zum Konfigurieren eines Logikarray-Chips nach
Anspruch 19, bei dem der erste und zweite konfigurierbare
Logikarray-Chip Einrichtungen (Fig. 2, 3A, 3B) aufweisen, die
zum Konfigurieren durch die Konfigurations-Information
vorgesehen sind.
21. Verfahren zum Konfigurieren eines konfigurierbaren
Logikarray-Chips (110) nach Anspruch 1, der eine Einrichtung
zum Laden von Konfigurations-Information in den
konfigurierbaren Logikarray-Chip (AD&sub0;&submin;&sub1;&sub5;) aufweist, die funktionell
mit einer Einrichtung (111) zum Betreiben des
konfigurierbaren Logikarray-Chips zwischenverbunden ist, wobei das
Verfahren folgende Schritte aufweist:
Verbinden des konfigurierbaren Logikarray-Chips (110)
mit einer Einrichtung (112) zum Übernehmen von Daten aus
einer Liefereinrichtung (113) von Konfigurations-Information;
Sperren (DONE) der Einrichtung zum Betreiben des
konfigurierbaren Logikarray-Chips;
sequentielles Übernehmen der Information (LA&sub1;&submin;&sub1;&sub2;) aus
der Liefereinrichtung (113) von Konfigurations-Information;
und
Freigeben (DONE) der Einrichtung zum Betreiben des
konfigurierbaren Logikarray-Chips.
22. Verfahren zum Konfigurieren nach Anspruch 21, das den
weiteren, zwischen dem Sperren und Freigeben der
Einrichtung zum Betreiben durchgeführten Schritt der Übergabe
eines Teils der Information aus dem konfigurierbaren
Logikarray-Chip (Fig. 8A: Master) zu einem weiteren konfigurierbaren
Logikarray-Chip (Slave 1) umfaßt.
23. Verfahren zum Konfigurieren nach Anspruch 21, bei dem
der Schritt des Verbindens der Einrichtung zur Übernahme
der Information aus der Liefereinrichtung von
Konfigurations-Information die weiteren Schritte des Verbindens von
Leitungen aus dem konfigurierbaren Logikarray-Chip (110) mit
einer Einrichtung (112) aufweist, um die Richtung auf einem
Bus derart zu steuern, daß die Anfangsrichtung des Busses
so eingerichtet wird, daß es den Daten ermöglicht wird, aus
der Liefereinrichtung von Information (113) zu dem
konfigurierbaren Logikarray-Chip (110) zu fließen.
24. Verfahren zum Konfigurieren nach Anspruch 21, bei dem
der Schritt der sequentiellen Übernahme der Information aus
der Liefereinrichtung (113) von Information das sequentielle
Adressieren der Liefereinrichtung von Information mit einem
Zähler (12) umfaßt, der Teil des konfigurierbaren
Logikarray-Chips (110) ist.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP85200590A EP0204034B1 (de) | 1985-04-17 | 1985-04-17 | Konfigurierbare logische Matrix |
Publications (2)
Publication Number | Publication Date |
---|---|
DE3587944D1 DE3587944D1 (de) | 1994-12-15 |
DE3587944T2 true DE3587944T2 (de) | 1995-04-20 |
Family
ID=8194010
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19853587944 Expired - Lifetime DE3587944T2 (de) | 1985-04-17 | 1985-04-17 | Konfigurierbare logische Matrix. |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP0204034B1 (de) |
DE (1) | DE3587944T2 (de) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CA1269726A (en) * | 1985-09-11 | 1990-05-29 | Pilkington Micro-Electronics Limited | Semi-conductor integrated circuits/systems |
US4845633A (en) * | 1985-12-02 | 1989-07-04 | Apple Computer Inc. | System for programming graphically a programmable, asynchronous logic cell and array |
US5155389A (en) * | 1986-11-07 | 1992-10-13 | Concurrent Logic, Inc. | Programmable logic cell and array |
US4918440A (en) * | 1986-11-07 | 1990-04-17 | Furtek Frederick C | Programmable logic cell and array |
US5089973A (en) * | 1986-11-07 | 1992-02-18 | Apple Computer Inc. | Programmable logic cell and array |
US5019736A (en) * | 1986-11-07 | 1991-05-28 | Concurrent Logic, Inc. | Programmable logic cell and array |
JP2723926B2 (ja) * | 1988-09-20 | 1998-03-09 | 川崎製鉄株式会社 | プログラマブル・ロジツク・デバイス |
US5400262A (en) * | 1989-09-20 | 1995-03-21 | Aptix Corporation | Universal interconnect matrix array |
US5377124A (en) * | 1989-09-20 | 1994-12-27 | Aptix Corporation | Field programmable printed circuit board |
DE69133311T2 (de) * | 1990-10-15 | 2004-06-24 | Aptix Corp., San Jose | Verbindungssubstrat mit integrierter Schaltung zur programmierbaren Verbindung und Probenuntersuchung |
US5144166A (en) * | 1990-11-02 | 1992-09-01 | Concurrent Logic, Inc. | Programmable logic cell and array |
US6407576B1 (en) | 1999-03-04 | 2002-06-18 | Altera Corporation | Interconnection and input/output resources for programmable logic integrated circuit devices |
DE102013003112B4 (de) | 2013-02-25 | 2017-06-14 | Umicore Ag & Co. Kg | SCR-Katalysator mit verbessertem NOx-Umsatz |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB1113111A (en) * | 1964-05-29 | 1968-05-08 | Nat Res Dev | Digital storage devices |
US3439185A (en) * | 1966-01-11 | 1969-04-15 | Rca Corp | Logic circuits employing field-effect transistors |
US3576984A (en) * | 1968-08-09 | 1971-05-04 | Bunker Ramo | Multifunction logic network |
US3564514A (en) * | 1969-05-23 | 1971-02-16 | Honeywell Inc | Programmable logic apparatus |
US3781570A (en) * | 1971-11-22 | 1973-12-25 | Rca Corp | Storage circuit using multiple condition storage elements |
US3990045A (en) * | 1974-06-24 | 1976-11-02 | International Business Machines Corporation | Array logic fabrication for use in pattern recognition equipments and the like |
US4566064A (en) * | 1982-05-10 | 1986-01-21 | American Microsystems, Inc. | Combinational logic structure using PASS transistors |
US4642487A (en) * | 1984-09-26 | 1987-02-10 | Xilinx, Inc. | Special interconnect for configurable logic array |
-
1985
- 1985-04-17 EP EP85200590A patent/EP0204034B1/de not_active Expired - Lifetime
- 1985-04-17 DE DE19853587944 patent/DE3587944T2/de not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
EP0204034B1 (de) | 1994-11-09 |
EP0204034A2 (de) | 1986-12-10 |
DE3587944D1 (de) | 1994-12-15 |
EP0204034A3 (en) | 1988-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE3645221C2 (de) | ||
DE68923541T2 (de) | Programmierbare Logikeinrichtung mit einer Vielzahl von programmierbaren Logikarrays, die sich in mosaikförmiger Anordnung zusammen mit einer Vielzahl von vermischt angeordneten Interface-Blöcken befinden. | |
DE69028386T2 (de) | Auf statischem RAM basierende Zelle für ein programmierbares logisches Feld | |
DE3686436T2 (de) | Speichersystem mit hoher leistung. | |
DE4417575C2 (de) | Verbesserte Array-Architektur für programmierbare logische Zellen | |
DE69711678T2 (de) | Lookup-tabellen mit zweitfunktion als schieberegister | |
DE2718454C3 (de) | Als Halbleiterschaltung ausgeführte Speichervorrichtung | |
DE68918413T2 (de) | Integrierte Halbleiterschaltung. | |
DE69427758T2 (de) | Feldprogrammierbare logische vorrichtung mit dynamischer verbindungsanordnung an einen dynamischen logischen kern | |
EP0513611B1 (de) | Verfahren zur Datenübertragung für einen Halbleiterspeicher und Halbleiterspeicher zur Durchführung des Verfahrens | |
DE3587944T2 (de) | Konfigurierbare logische Matrix. | |
DE69834011T2 (de) | Statische Direktzugriffspeicherschaltungen | |
DE4137515A1 (de) | Integrierte halbleiterschaltungsvorrichtung mit darin integriertem speicher und operationseinheit | |
DE4326134B4 (de) | Eingangswechseldetektorschaltung | |
DE4041426C2 (de) | ||
DE3015992A1 (de) | Programmierbare logische anordnung | |
DE2256135A1 (de) | Verfahren zum pruefen von monolithisch integrierten halbleiterschaltungen | |
DE69314732T2 (de) | Programmierbare logische Vorrichtung | |
DE69131679T2 (de) | Statisches Speicherfeld mit wahlfreiem Zugriff, welches mindestens eine arithmetisch-logische Einheit enthält | |
DE2706807C2 (de) | Einrichtung und Verfahren zum Verarbeiten von Information in Form digitaler Signale | |
DE4018296A1 (de) | Elektrische schaltung fuer einen parallelschreibtest eines breiten mehrfachbytes in einer halbleiterspeichereinrichtung | |
EP0224887B1 (de) | Gate Array Anordnung in CMOS-Technik | |
DE69227144T2 (de) | Programmierbare logische Einheit | |
DE3921660C2 (de) | ||
DE4233249A1 (de) | Dualportspeicher |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8364 | No opposition during term of opposition |