DE3788974T2 - Programmierbare Array-Logik-Zelle. - Google Patents

Programmierbare Array-Logik-Zelle.

Info

Publication number
DE3788974T2
DE3788974T2 DE3788974T DE3788974T DE3788974T2 DE 3788974 T2 DE3788974 T2 DE 3788974T2 DE 3788974 T DE3788974 T DE 3788974T DE 3788974 T DE3788974 T DE 3788974T DE 3788974 T2 DE3788974 T2 DE 3788974T2
Authority
DE
Germany
Prior art keywords
gate
cell
signal
input
output
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 - Fee Related
Application number
DE3788974T
Other languages
English (en)
Other versions
DE3788974D1 (de
Inventor
John M Birkner
Andrew K Chan
Danesh M Tavana
Sing Y Wong
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of DE3788974D1 publication Critical patent/DE3788974D1/de
Application granted granted Critical
Publication of DE3788974T2 publication Critical patent/DE3788974T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/027Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
    • H03K3/037Bistable circuits

Landscapes

  • Logic Circuits (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Description

    Hintergrund der Erfindung
  • Diese Erfindung bezieht sich auf elektronische Schaltungen und insbesondere auf eine programmierbare Logikarray-Makrozelle, die auf bestimmte Klassen von Funktionen spezialisiert ist.
  • Ein programmierbares Logikarray (PLA) ist eine universelle integrierte Schaltungsanordnung (IC), die auf irgendeiner Fertigungsstufe den Kundenwünschen angepaßt oder gemäß diesen programmiert wird, um eine benutzerdefinierte logische Funktion auszuführen. Wie in Fig. 1 veranschaulicht, besitzt eine herkömmliche PLA- Zelle Eingangsleitungen I1 bis IM, die auf programmierbare Weise mit den Eingangsleitungen von UND-Gattern AG1 bis AGR verbindbar sind, welche in einer Reihe oder einem ersten Logik-"Niveau", das UND-Ebene genannt wird, angeordnet sind und Terme des logischen Produkts P1 bis PR bilden. Die UND-Ebene- Produktterm-Ausgangsleitungen sind auf programmierbare Weise mit ODER-Gattern OG1 bis OGN verbindbar, die in einer Spalte oder einem zweiten Niveau, das ODER- Ebene genannt wird, angeordnet sind und auf ODER-Ebene-Ausgangsleitungen S1 bis SN logische Summen von Produktsignalen bereitstellen. Einige der ODER-Ebene- Ausgangsleitungen S1-SN können über getaktete Register 25, 26 gekoppelt sein, um Signale auf Rückkopplungsleitungen 27, 28 in UND-Ebene-Eingangsleitungen für die Array-Zelle 10 zurückzuführen, um sequentielle Logikoperationen auszuführen.
  • Zur Programmierung der Array-Zelle 10 definiert der Benutzer Gattereingangsleitung- Verbindungen mittels eines Musters für eine Maske, die in einem Fertigungsschritt für ein maskenprogrammiertes PLA verwendet wird, oder mittels eines "Sicherungsplanes", der von einer Programmiermaschine verwendet wird, um Sicherungen in einem feldprogrammierbaren Logikarray (MPLA) nach der Fertigung durchzuschmelzen.
  • PLAs sind mit verschiedenen Verhältnissen der jeweiligen Anzahl von UND-Gattern, ODER-Gattern und programmierbaren Verbindungen in den Eingangsleitungen der Logikebenen entworfen. Ein Typ eines PLA, eine programmierbare Array- Logikeinrichtung, beispielsweise eine "PAL"-Einrichtung (eingetragenes Warenzeichen von Monolithic Memories, Inc.) besitzt Array-Eingangsleitungen, die auf programmierbare Weise mit UND-Ebene-Eingangsleitungen verbunden werden können, sowie UND-Ebene-Produkt-Ausgangsleitungen, die mit ODER-Ebene- Eingangsleitungen über D-Flipflop-Ausgangsregister fest verbunden sind. Obwohl D- Flipflops leistungsstark sind, erfordern Anwendungen in Großzustand-Maschinen oftmals die vielseitigere JK-Flipflop-Funktion, die mit einem momentanen Zustandswert Qo beginnt, woraufhin zwei Eingangssignalwerte J und K wirken, um gemäß der folgenden Tabelle 1 einen nächsten Zustandswert Qo zu erzeugen: TABELLE 1
  • Die J-K-Funktion wird üblicherweise in einer ersten Form durch Qo' =J + Qo ausgedrückt. Sie kann mit einer Schaltung 30, Fig. 2, implementiert werden, in der das Eingangssignal K durch einen Inverter 34 in ein Signal invertiert wird und mit dem vorhergehenden Zustands-Rückkopplungssignal Qo in ein UND-Gatter 36 eingegeben wird, während das Signal Qo durch einen Inverter 33 invertiert und mit einem Eingangssignal J in ein UND-Gatter 35 eingegeben wird. Die UND-Gatter 35 und 36 geben Produktsignale J bzw. Qo in die Eingangsleitungen eines ODER-Gatters 37 ein, welches das nächste Zustandssignal Qo =J + Qo bildet.
  • Die J- und/oder K-Signale, die von den Eingangsleitungen 31 und 32 der Schaltung 30 empfangen werden, können ihrerseits Produkte J1 und K1 von Gruppen von Eingangssignalen J1a bis J1z bzw. K1a bis K1z sein, die von UND-Gattern 11 und 14, Fig. 2, bereitgestellt werden. Ferner können die Signale J und K logische Summen von Produktsignalen J1 bis Jj und K1 bis Kk sein, die von jeweiligen Untergruppen von Eingangssignalen (a, b, . . . ,z) durch UND-Gatter 11 bis 16 und ODER-Gatter 17 und 18 in einer PLA-Einrichtung 10, Fig. 2, ohne Ausgangsregister 25 und 26 von Fig. 1 gebildet werden.
  • Ein IC 20, Fig. 2, der so beschaffen ist, daß er die JK-Flipflop-Funktion unter Verwendung eines Logik-Arrays 10 mit mit einer zugewiesenen JK-Flipflop-Schaltung 30 verbundenen ODER-Ebene-Ausgangsleitungen ausführt, kann jedoch keine Ausgangssignale für Funktionen bereitstellen, die von der JK-Flipflop-Funktion verschieden sind, was mit dem IC-Designziel des maximalen Gebrauchs von minimalen Schaltungselementen in Konflikt steht.
  • Die Kapazität, die zu Beginn zu programmieren ist, um andere Funktionen auszuführen, wird durch eine PLA-Einrichtung erhalten, in der ein Array für Summen von Produkten, die JK-Funktionen ausführt und das nächste Zustandssignal Qo' in einem D-Flipflop für die Ausgabe und/oder die Rückkopplung speichert. Eine UND- ODER-INVERTER-Array-Implementierung der JK-Funktion Qo' =J + Qo erfordert jedoch den Durchgang des Signals K (oder seiner Faktoren Ka . . . Kz) durch das Array in einem ersten Zyklus, um K zu erhalten, die Invertierung des Signals K und dann den erneuten Durchgang des invertierten Signals durch das Array in einem zweiten Zyklus oder durch ein zweites äquivalentes Array mit Signalen J (oder dessen Faktoren Ja . . Jz), Qo und , um das nächste Zustandssignal Qo' zu erhalten. Ein derartiger Gebrauch von mehreren Zyklen durch ein Array oder von Mehrfacharrays ist ineffizient.
  • Wenn K ein Produkt von z Faktoren Ka bis Kz ist, K=(Ka*Kb* . . . *Kz, dann folgt aus den DeMorgan-Gesetzen =( + + . . . + ) und Qo=( *Qo+ *Qo+ . . . + *Qo). Auf der Grundlage dieser Identitäten kann die JK-Flipflop-Gleichung durch eine äquivalente zweite Form Qo' = (J + Qo + + Qo* . . . Kz Qo) ausgedrückt werden. Eine Schaltung mit weniger als z Produkttermen kann jedoch diese zweite Form der JK-Funktion nicht implementieren.
  • Die JK-Flipflop-Funktion kann auch in einer äquivalenten dritten Form ausgedrückt werden: Qo' = Qo ( + KQo). Diese Form vermeidet die Schwierigkeit der Gewinnung von , indem ein Ekklusiv-ODER-Gatter (Exklusiv-ODER-Gatter) verwendet wird.
  • Programmierbare Array-Logikschaltungen, wie sie in dem US-Patent 4,124,899 beschrieben sind, werden in Zellen unterteilt, die ein UND-ODER-Array mit einem D-Flipflop-Ausgangsregister enthalten. In einigen Ausführungsformen dieses Patents enthalten die Zellen zwischen ODER-Gatter-Ausgangsanschlüssen und dem D- Flipflop-Eingangsanschluß ein Exklusiv-ODER-Gatter. Diese Ekklusiv-ODER-Zellen des Standes der Technik sind in Verbindung mit mehrfachen UND-Gattern, die jedes von zwei ODER-Gattern versorgen, dazu geeignet, Übertragsbits für Arithmetikoperationen zu implementieren. Die dritte äquivalente Form der JK- Funktion kann dadurch implementiert werden, daß das Ekklusiv-ODER-Gatter mit dem vorher eingegebenen Zustandausgangssignal Qo ohne jegliche logische Operation mittels eines der ODER-Gatter oder eines zugehörigen UND-Gatters getrieben wird, die Nutzung der halben Exklusiv-ODER-Zelle ist jedoch ineffizient.
  • Es bleibt daher ein Bedarf an einem Design einer programmierbaren Array-Logikzelle, das für Anwendungen wie etwa ein Flipflop, einen Zähler, eine Zustandsmaschine oder einen Paritätsdetektor optimiert ist.
  • ZUSAMMENFASSUNG
  • Die Erfindung, wie sie durch den Anspruch 1 definiert ist, schafft eine programmierbare Array-Logikmakrozelle, die für die Implementierung der JK- Flipflop-Funktion in der Form Qo'=Qo ( +KQo) optimiert ist. Vorzugsweise kann die Zelle so programmiert sein, daß j+k= zwei bis acht Untergruppen von Zelleneingangs- und/oder Rückkopplungssignalen I1 bis I22 oder deren Komplemente verwendet werden, die einer UND-Verknüpfung unterworfen werden, um Produktsignale zu bilden, die ihrerseits einer ODER-Verknüpfung unterworfen werden, um ein Summensignal zu bilden. Für die JK-Funktion werden das Summensignal und das vorhergehende Zustandsausgangssignal Qo in zwei Eingangsanschlüsse eines Exklusiv-ODER-Gatters eingegeben, welches das momentane Zustandssignal Qo' erzeugt.
  • Alternativ kann die Zelle so programmiert sein, daß ein Einbit-Zähler, eine Mealy- oder Moore-Zustandsmaschine oder ein Paritätsdetektor implementiert werden, oder sie kann so programmiert sein, daß andere Funktionen implementiert werden, die kombinatorische oder D-Register-Ausgangssignale erzeugen.
  • KURZBESCHREIBUNG DER ZEICHNUNGEN
  • Fig. 1 ist ein Diagramm einer verallgemeinerten programmierbaren Logikarray- Schaltung des Standes der Technik.
  • Fig. 2 ist ein Diagramm einer JK-Flipflop-Schaltung des Standes der Technik, die durch J- und K-Signale getrieben wird, welche Summen von Produkten sind, die von einer PLA-Schaltung des Standes der Technik bereitgestellt werden, welche ein D- Flipflop-Ausgangsregister enthält;
  • Fig. 3 ist ein Logikbaustein-Diagramm einer Ausführungsform einer programmierbaren Array-Logikzelle gemäß dieser Erfindung;
  • Fig. 4 ist ein Schema, das die Zelle von Fig. 3 zeigt, die als programmierbare Array- Logikeinrichtung mit insgesamt acht Zellen ausgeführt ist.
  • GENAUE BESCHREIBUNG
  • Die programmierbare Array-Logikschaltung dieser Erfindung ist in Fig. 3 in einer bevorzugten Ausführungsform einer integrierten Schaltung als Zelle 60 gezeigt. Einzelheiten der Herstellung und des Aufbaus herkömmlicher Aspekte von programmierbaren Array-Logikschaltungen sind im Stand der Technik bekannt. In einer Ausführungsform wird die Zelle 60 während der Fertigung maskenprogrammiert. In einer weiteren Ausführungsform wird die Zelle 60 nach der Fertigung dadurch programmiert, daß Sicherungsverbindungen durchgeschmolzen werden, welche vorzugsweise Titan-Wolfram-Glieder sind, obwohl andere zufriedenstellende Sicherungen bekannt sind.
  • Die Zelle 60 ist vorzugsweise als IC-Array-Einrichtung 110, Fig. 4, ausgeführt, welche insgesamt acht identische Zellen 60 enthält. Das Array 110 besitzt 14 Array- Eingangsleitungen I1 bis I14 oder 61, die über Phasenteiler 62 verbunden sind, um für jede Zelle 60 28 Zelleneingangsleitungen 63 zu schaffen. In einem Array 110 ist für jede der acht Zellen 60 deren Ausgangssignal über eine Rückkopplungsleitung und einen Phasenteiler angeschlossen, um weitere 16 Zelleneingangsleitungen 63 und somit insgesamt 44 Zelleneingangsleitungen 63 für jede Zelle zu schaffen. Um der Deutlichkeit willen zeigt Fig. 3 nur Zellenrückkopplungs-Eingangsleitungen 76 und 77 von der Rückkopplungsleitung 74 der dargestellten Zelle 60. UND-Ebene- Eingangsleitungen 63 sind auf programmierbare Weise über Sicherungen 64 mit den Eingangsleitungen 65 der UND-Gatter 66, 78 und 97 verbunden. Die Gruppen von 44 Eingangsleitungen an jedes UND-Gatter sind um der Deutlichkeit willen in Fig. 3 als Einzelleitungen 65 gezeigt.
  • UND-Gatter 66 erzeugen auf den jeweiligen Produktleitungen 68 an die Eingangsanschlüsse des ODER-Gatters 70 Logikprodukt-Terme P1 bis P8, wobei ein Summensignal vom ODER-Gatter 70 eine an ein Exklusiv-ODER-Gatter 80 führende Eingangsleitung 71 treibt. Der zweite Eingang des Exklusiv-ODER-Gatters 80 ist mit der Ausgangsleitung 79 vom UND-Gatter 78 verbunden, dessen Eingangsleitungen 65 auf programmierbare Weise verbindbar sind, um ein Signal von jeder beliebigen Kombination von Zelleneingangsleitungen 63 zu empfangen, welche beispielsweise das Ausgangssignal Qo oder des vorhergehenden Zustandes enthält, wie weiter unten erläutert wird.
  • Das Ausgangssignal Qo' des Exklusiv-ODER-Gatters 80 auf der Leitung 81 wird in den Dateneingangsanschluß D des D-Flipflops 82 eingegeben. Die Zelleneingangsleitung 83 erzeugt ein Taktsignal für den Freigabeanschluß des Flipflops 82. Bei der Anstiegsflanke des Freigabesignals tastet das Flipflop 82 das Datensignal Qo' an seinem D-Eingangsanschluß ab und überträgt den Datensignalwert an die Flipflop-Ausgangsleitung 84 als Signal Qo. Der optionale Multiplexierer (MUX) 90, der durch die Spannung auf der Leitung 92 von der programmierbaren Sicherung 93 gesteuert wird, wählt entweder, wenn die Sicherung 93 durchgeschmolzen ist, die Leitung 81 für das Qo'-Signal, das momentan von dem Exklusiv-ODER-Gatter 80 für die Ausgabeoperation ohne Eintragung der Zelle 60 (als Zustandsmaschine vom Mealy-Typ) bereitgestellt wird, oder wählt, wenn die Sicherung 93 intakt ist, die Flipflop-Ausgangsleitung 84 für das Qo-Signal, das von dem Exklusiv-ODER-Gatter 80 während der vorhergehenden Periode des Taktsignals (für die Operation als Zustandsmaschine vom Moore-Typ) bereitgestellt wird. Das Signal (Q = Qo' oder Qo), das vom MUX 90 gewählt ist, wird über die Leitung 91 in den Ausgangspuffer 99 eingegeben. Ein UND-Gatter 97 stellt auf der Leitung 98 ein Steuersignal bereit, das den Ausgangspuffer 99 in die Lage versetzt, das Signal von der Leitung 91 an die Zellenausgangsleitung 100 zu übertragen. Wenn das Signal auf der Leitung 98 den Puffer 99 sperrt, schwebt die Ausgangsleitung 100 auf hoher Impedanz, während die Leitung 100 dann, wenn sie mit der Rückkopplungsleitung 74 verbunden ist, als Eingangsleitung 61 an die Zelle 60 verwendet werden kann.
  • Für Funktionen, die kein Rückkopplungssignal des vorhergehenden Zustands auf der Leitung 79 erfordern, kann das UND-Gatter 78 dazu verwendet werden, die Leitung 79 auf hohen oder niedrigen Pegel zu zwingen und damit die Signalpolarität der Leitung 81 zu steuern. Ein hohes Ausgangssignal kann vom UND-Gatter 78 erzwungen werden, indem sämtliche Eingangsleitungen 65 des Gatters 78 die Verbindungen 64 schmelzen, wodurch den abgekoppelten Leitungen 65 ein Schweben auf der hohen Versorgungsspannung der Zelle 60 ermöglicht wird, welche mit einem logisch "wahren" Eingangssignal äquivalent ist. Ein niedriges Ausgangssignal kann vom UND-Gatter 78 dadurch erzwungen werden, daß die Sicherungen 64 zwischen der Leitung 78 und jeder der komplementären Leitungen 63 von einem beliebigen Phasenteiler 62 des Paars von komplentären Leitungen 63 intakt gelassen werden. Ein erzwungenes Null-Signal auf der Leitung 79 deaktiviert das Exklusiv-ODER-Gatter 80, so daß das Exklusiv-ODER- Gatter 80 anders als eine Eins-Logikpegel-Verzögerung auf das Vermögen der Schaltung 60 zur Ausführung von ein Exklusiv-ODER-Gatter nicht erfordernden Funktionen keinen Einfluß hat. Für die JK-Funktion können die J- und K- Eingangssignale für die Signalpolarität der Steuerleitung 81 vertauscht werden.
  • Der optionale MUX 73, der von der Spannung auf der Leitung 92 von der programmierbaren Sicherung 93 gesteuert wird, wählt entweder, wenn die Sicherung 93 intakt ist, die invertierende Ausgangsleitung 85 vom Flipflop 82, die das inverse Ausgangssigual von der vorhergehenden Taktperiode wählt, oder wählt die Zellenausgangsleitung 100, wenn die Sicherung 93 durchgeschmolzen ist. Wenn der Inverter 99 vom MUX 90 mit dem Signal Qo von der Ausgangsleitung 84 vom Flipflop 82 versorgt wird, liefert der MUX 73 das Signal der vorhergehenden Taktperiode. Wenn statt dessen der MUX 90 die Exklusiv-ODER-Ausgangsleitung 81 wählt, liefert der MUX 73 das momentane Signal .
  • Von der Rückkopplungsleitung 74 des Ausgangs des MUX 73 wird das gewählte Signal Q = Qo oder Qo' in einen Phasenteiler 75 eingegeben, der auf den Zelleneingangsleitungen 76 und 77 das Signal der Leitung 74 bzw. das invertierte Signal hiervon bereitstellt.
  • N beliebige Leitungen der Array-Eingangsleitungen 61 können als N-Bit- Betriebsartsignale verwendet werden, um geeignete UND-Gatter (66, 78, 97) zu aktivieren. Es werden Verbindungen 64 von Zelleneingangsleitungen 63 an UND- Gatter-Eingangsleitungen 65 programmiert, um jede Kombination von Betriebsartsignalen M und deren Komplemente zu decodieren, um überall Einsen einzugeben, damit geeignete UND-Gatter aktiviert werden, um auf anderen Zelleneingangsleitungen 63 Produkte P von Signalen zu bilden. Irgendwelche Zelleneingangsleitungen 63, die nicht in irgendeiner Betriebsart verwendet werden, um an einem gegebenen UND-Gatter ein Signal bereitzustellen, werden von jenem UND- Gatter abgekoppelt.
  • Die Zelle 60 kann als ein JK-Flipflop programmiert oder konfiguriert sein, indem bis zu N = acht UND-Gatter 66 verwendet werden, um Produkte P1, . . . ,PN von Untergruppen von bis zu 22 gewählten UND-Ebene-Eingangssignale und deren Komplemente für Signale J1 bis Jj und K1 bis Kk zu bilden. Für ein JK-Flipflop ist die Rückkopplungsleitung 76' die das Signal Qo bereitstellt, auf programmierbare Weise mit einer Eingangsleitung 65 des Rückkopplungsgatters 78 sowie eines jeden UND- Gatters 66 verbunden, welches für die Bildung eines der Produkte K1 bis Kk verwendet wird. Die Rückkopplungsleitung 77, die das Signal Qo bereitstellt, ist auf programmierbare Weise mit einer Eingangsleitung 65 eines jeden der UND-Gatter 66 verbunden, welche dazu verwendet werden, eines der Produkte J1 bis Jj zu finden. Die Produktterme und KQo werden durch das ODER-Gatter 70 gemeinsam einer ODER-Verknüpfung unterworfen, um die Summe +KQo zu bilden, welche in die zum ersten Eingangsanschluß des Exklusiv-ODER-Gatters führende Leitung 71 eingegeben wird. Das vorhergehende Ausgangssignal Qo wird über das UND-Gatter 78 rückgekoppelt und in die zweite Eingangsleitung 79 an das Exklusiv-ODER-Gatter 80 eingegeben, welches das Signal Qo' des nächsten Zustandes bildet:
  • Qo' = Qo [(P&sub1;+P&sub2;+ . . . +Pj) + (P&sub1;&sbplus;&sub1;+ . . . +P&sub8;)Qo].
  • Die Zelle 60, die als JK-Flipflop konfiguriert ist, wird mit einem Datenwert D konfiguriert, indem Betriebsartsignale M verwendet werden, die beispielsweise in einem der Abschnitte von Tabelle 3 gezeigt und dazu geeignet sind, sämtliche UND- Gatter 66 mit Ausnahme eines J-Produkt-Gatters 66 sowie eines K-Produkt-Gatters 66, in die D bzw. eingegeben werden, zu deaktivieren. Dadurch wird die Flipflop- Funktion auf Qo'=Qo ( *D + *D) = D reduziert.
  • Von der Zelle 60 werden weitere JK-Operationen unter Verwendung anderer Betriebsartsignale M und anderer Datensignale D, die in Tabelle 3 aufgelistet sind, ausgeführt. Eine logische 1, die in die Eingangsleitung(en) eines aktivierten J-Gatters eingegeben wird, setzt die Zelle 60 so, daß sie das Signal Qo' = 1 ausgibt, während eine logische 1, die in eine oder mehrere Eingangsleitungen eines aktivierten K-Gatters eingegeben werden, die Zelle 60 zurücksetzt, um das Signal Qo' = 0 auszugeben. Alternativ setzen Signale mit logischer 1, die in die optionalen Steuerleitungen 86 oder 87 eingegeben werden, das Flipflop 82 bzw. setzen es zurück.
  • Ein Produktterm mit logischer 1, der in die Eingangsleitung 71 des Exklusiv-ODER- Gatters 80 eingegeben wird, hält das Signal Qo' der Ausgangsleitung 81 fest. Ein Produkt mit logischer 1 auf der Leitung 71 kann dadurch gewährleistet werden, daß in samtliche Eingangsleitungen wenigstens eines J-Produkt-Gatters 66 und wenigstens eines K-Produkt-Gatters 66 oder in ein zugewiesenes UND-Gatter 67, das durch ein Festhaltebetriebsartsignal gewählt ist, logische Einsen eingegeben werden.
  • Wenn in wenigstens einen Eingang 65 eines jeden der UND-Gatter 66 ein Deaktivierungssignal mit logischer 0 eingegeben wird, besitzen sämtliche Produktterme der Leitungen 68 den logischen Wert 0, stellt das ODER-Gatter 70 auf der Leitung 71 ein Summensignal mit logischer 0 bereit und wird der Qo'-Signalwert auf der Leitung 81 konstant gehalten.
  • Als alternatives Beispiel kann die Zelle 60 für den Gebrauch als Zähler in einer Bank von ähnlichen Zählerzellen 60 (nicht gezeigt) verwendet werden, die so verbunden sind, daß sie jedes Ausgangssignal Qo' einer niederwertigeren Zelle 60 an eine Eingangsleitung 61 der nächsten, höherwertigeren Bitzählerzelle 60 tragen. Die Eingangsleitungen M1, M2 und M3 werden als Dreibit-Betriebsartsignale verwendete die beliebig zugeordnet sind, um acht Operation zu bezeichnen, die an anderen Eingangssignalen Q, D und an deren inversen Signalen ausgeführt werden sollen, wie in Tabelle 2 gezeigt ist. Tabelle 2
  • Operation
  • Daten D3-D1 laden
  • Inkrementieren
  • Dekrementieren
  • Löschen auf Null
  • Setzen auf Eins
  • Springen auf 101
  • Springen auf 010
  • Halten
  • Die Betriebsartsignale M1, M2, M3 werden, wie in der folgenden Tabelle 3 aufgelistet, von drei Zellen 60 decodiert. Tabelle 3
  • D1 laden
  • Inkrementieren
  • Dekrementieren
  • Löschen
  • Setzen
  • Springen zu 1
  • Springen zu 0
  • D2 laden
  • Inkrementieren
  • Dekrementieren
  • Löschen
  • Setzen
  • Springen zu 0
  • Springen zu 1
  • D3 laden
  • Inkrementieren
  • Dekrementieren
  • Löschen
  • Setzen
  • Springen zu 1
  • Springen zu 0
  • Ein solcher Mehrzellenzähler kann beispielsweise einen Wert von Q laden, inkrementieren, dekrementieren, löschen, setzen, halten oder zu ihm springen. Damit der Dreibit-Zähler zu dem im voraus gewählten Wert 101 springt, springt der Zähler 60 für das niederwertigste Bit zu 1, der Zähler 60 für das Bit mit mittlerer Wertigkeit zu 0 und der Zähler 60 für das höchstwertige Bit zu 1. Für den Ladebetriebsart-Code 000 werden zwei Produktterme verwendet. Der achte Code 111 für "Halten" kann nicht decodiert werden. Wenn jedoch ein Betriebsartsignal, das gleich 111 ist, in die Betriebsarteingangsleitung 61 an jede Zelle 60 eingegeben wird, wird keine weitere Operation decodiert, wobei der Wert des Signals Qo von jeder Zelle gehalten wird.

Claims (5)

1. Programmierbare Logikzelle, mit:
mehreren logischen UND-Gattern (66, 67, 78), wobei jedes Gatter mehrere Eingangsanschlüsse und eine Ausgangsleitung (68, 79) besitzt; mehreren Zelleneingangsleitungen (63), die auf programmierbare Weise mit den Eingangsanschlüssen von ausgewählten UND-Gattern (66, 67, 78) verbunden werden können;
einer Speichereinrichtung (82) zum Speichern eines Zellenzustandssignals;
einer Zellenzustandssignal-Ausgangsleitung (100) zur Bereitstellung eines Zellenzustands-Ausgangssignals;
einer Rückkopplungseinrichtung (73, 74, 75), die auf programmierbare Weise verbunden werden kann, um in ausgewählte UND-Gatter-Eingangsleitungen ein Zellenzustandssignal einzugeben;
einem logischen ODER-Gatter (70), das Eingangsanschlüsse, die mit ausgewählten UND-Gatter-Ausgangsleitungen verbunden sind, sowie eine ODER-Gatter-Ausgangsleitung (71) aufweist; und
einem logischen Exklusiv-ODER-Gatter (80), das versehen ist mit einem ersten Eingangsanschluß, der mit der ODER-Gatter-Ausgangsleitung (71) verbunden ist, einem zweiten Eingangsanschluß und einer Exklusiv-ODER-Ausgangsleitung (81), auf der das Exklusiv-ODER-Gatter (80) ein Zellenzustandssignal bereitstellt, dadurch gekennzeichnet, daß die programmierbare Logikzelle nur ein einziges logisches ODER-Gatter (70) enthält und
der zweite Eingangsanschluß des logischen Exklusiv-ODER-Gatters (80) direkt mit einer UND-Gatter-Ausgangsleitung (79) verbunden ist,
wodurch die programmierbare Logikzelle optimiert ist, um die JK-Flipflop- Funktion zu implementieren.
2. Zelle gemäß Anspruch 1, ferner dadurch gekennzeichnet, daß:
die Speichereinrichtung (82) eine D-Flipflop-Schaltung ist, die versehen ist mit einem Datensignal-Eingangsanschluß (D), der mit der Exklusiv-ODER-Gatter-Ausgangsleitung (81) verbunden ist, und einem Freigabesignal-Eingangsanschluß (83) und die auf ein Freigabesignal anspricht, um einen Qo'-Zustandssignalwert von ihrem Dateneingangsanschluß abzutasten und um den abgetasteten Signalwert als Signal Qo an einem Speicherausgangsanschluß bereitzustellen.
3. Zeile gemäß Anspruch 2, ferner dadurch gekennzeichnet, daß:
die Rückkopplungseinrichtung einen inversen Ausgangsanschluß im Flipflop, der das inverse Zustandssignal bereitstellt, sowie Phasenteilereinrichtungen (75) enthält, die an entsprechenden Eingangsleitungen (63) der Zelle die Signale Qo und bereitstellen.
4. Zelle gemäß Anspruch 3, ferner dadurch gekennzeichnet, daß:
die Rückkopplungseinrichtung weiterhin einen Multiplexierer (73) enthält, der versehen ist mit einem ersten wählbaren Eingangsanschluß, der mit dem -Ausgangsschluß des Flipflops (82) verbunden ist, einem zweiten wählbaren Eingangsanschluß, der mit der Zellenausgangsleitung (100) verbunden ist, einem Steueranschluß, der über eine programmierbare Sicherung (93) mit einem Referenzpotential verbunden ist, und einem Ausgangsanschluß, der so verbunden ist, daß er das unter dem Schutz der Sicherung gewählte Signal für die Phasenteilereinrichtung (75) bereitstellt.
5. Zelle gemäß Anspruch 3, ferner gekennzeichnet durch einen Multiplexierer (90) mit einem ersten wählbaren Eingangsanschluß, der mit dem Qo-Ausgangsanschluß des Flipflops verbunden ist, einem zweiten wählbaren Eingangsanschluß, der mit der Exklusiv-ODER-Gatter-Ausgangsleitung (81) verbunden ist, einem Steueranschluß, der über eine programmierbare Sicherung (93) mit einem Referenzpotential verbunden ist, und einem Ausgangsanschluß, der mit der Zellenausgangsleitung (100) gekoppelt ist.
DE3788974T 1986-05-16 1987-03-06 Programmierbare Array-Logik-Zelle. Expired - Fee Related DE3788974T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US06/864,185 US4789951A (en) 1986-05-16 1986-05-16 Programmable array logic cell

Publications (2)

Publication Number Publication Date
DE3788974D1 DE3788974D1 (de) 1994-03-17
DE3788974T2 true DE3788974T2 (de) 1994-05-19

Family

ID=25342707

Family Applications (1)

Application Number Title Priority Date Filing Date
DE3788974T Expired - Fee Related DE3788974T2 (de) 1986-05-16 1987-03-06 Programmierbare Array-Logik-Zelle.

Country Status (4)

Country Link
US (1) US4789951A (de)
EP (1) EP0245884B1 (de)
JP (1) JP2628996B2 (de)
DE (1) DE3788974T2 (de)

Families Citing this family (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4896296A (en) * 1985-03-04 1990-01-23 Lattice Semiconductor Corporation Programmable logic device configurable input/output cell
US4963768A (en) * 1985-03-29 1990-10-16 Advanced Micro Devices, Inc. Flexible, programmable cell array interconnected by a programmable switch matrix
US5225719A (en) * 1985-03-29 1993-07-06 Advanced Micro Devices, Inc. Family of multiple segmented programmable logic blocks interconnected by a high speed centralized switch matrix
US5168177A (en) * 1985-12-06 1992-12-01 Advanced Micro Devices, Inc. Programmable logic device with observability and preloadability for buried state registers
US5477165A (en) * 1986-09-19 1995-12-19 Actel Corporation Programmable logic module and architecture for field programmable gate array device
US5451887A (en) * 1986-09-19 1995-09-19 Actel Corporation Programmable logic module and architecture for field programmable gate array device
US5367208A (en) 1986-09-19 1994-11-22 Actel Corporation Reconfigurable programmable interconnect architecture
JPH01259274A (ja) * 1988-04-08 1989-10-16 Fujitsu Ltd 集積回路の試験方式
US4903223A (en) * 1988-05-05 1990-02-20 Altera Corporation Programmable logic device with programmable word line connections
US5023484A (en) * 1988-09-02 1991-06-11 Cypress Semiconductor Corporation Architecture of high speed synchronous state machine
US4879481A (en) * 1988-09-02 1989-11-07 Cypress Semiconductor Corporation Dual I/O macrocell for high speed synchronous state machine
US4987319A (en) * 1988-09-08 1991-01-22 Kawasaki Steel Corporation Programmable input/output circuit and programmable logic device
US4914322A (en) * 1988-12-16 1990-04-03 Advanced Micro Devices, Inc. Polarity option control logic for use with a register of a programmable logic array macrocell
JP2566005B2 (ja) * 1989-03-03 1996-12-25 株式会社東芝 入力切換装置
US5489857A (en) * 1992-08-03 1996-02-06 Advanced Micro Devices, Inc. Flexible synchronous/asynchronous cell structure for a high density programmable logic device
US5457409A (en) * 1992-08-03 1995-10-10 Advanced Micro Devices, Inc. Architecture of a multiple array high density programmable logic device with a plurality of programmable switch matrices
US5027011A (en) * 1989-10-31 1991-06-25 Sgs-Thomson Microelectronics, Inc. Input row drivers for programmable logic devices
US5144582A (en) * 1990-03-30 1992-09-01 Sgs-Thomson Microelectronics, Inc. Sram based cell for programmable logic devices
US5055718A (en) * 1990-05-11 1991-10-08 Actel Corporation Logic module with configurable combinational and sequential blocks
US5198705A (en) * 1990-05-11 1993-03-30 Actel Corporation Logic module with configurable combinational and sequential blocks
WO1994029784A1 (en) * 1990-11-15 1994-12-22 Edward Hyman Method and apparatus for compiling and implementing state-machine states and outputs for a cellular array
JP2563679B2 (ja) * 1991-01-24 1996-12-11 シャープ株式会社 双方向入出力信号分離回路
US5117132A (en) * 1991-02-08 1992-05-26 Unisys Corporation Flexible utilization of general flip-flops in programmable array logic
US5122685A (en) * 1991-03-06 1992-06-16 Quicklogic Corporation Programmable application specific integrated circuit and logic cell therefor
US5416367A (en) * 1991-03-06 1995-05-16 Quicklogic Corporation Programmable application specific integrated circuit and logic cell therefor
US5861760A (en) 1991-04-25 1999-01-19 Altera Corporation Programmable logic device macrocell with improved capability
US5191243A (en) * 1991-05-06 1993-03-02 Lattice Semiconductor Corporation Output logic macrocell with enhanced functional capabilities
EP0512536B1 (de) * 1991-05-10 1998-09-30 Kabushiki Kaisha Toshiba Programmierbare logische Einheit
US5231312A (en) * 1992-03-12 1993-07-27 Atmel Corporation Integrated logic circuit with functionally flexible input/output macrocells
US5384500A (en) * 1992-05-15 1995-01-24 Micron Semiconductor, Inc. Programmable logic device macrocell with an exclusive feedback and an exclusive external input line for a combinatorial mode and accommodating two separate programmable or planes
US5300830A (en) * 1992-05-15 1994-04-05 Micron Semiconductor, Inc. Programmable logic device macrocell with an exclusive feedback and exclusive external input lines for registered and combinatorial modes using a dedicated product term for control
US5331227A (en) * 1992-05-15 1994-07-19 Micron Semiconductor, Inc. Programmable logic device macrocell with an exclusive feedback line and an exclusive external input line
US5287017A (en) * 1992-05-15 1994-02-15 Micron Technology, Inc. Programmable logic device macrocell with two OR array inputs
US5298803A (en) * 1992-07-15 1994-03-29 Micron Semiconductor, Inc. Programmable logic device having low power microcells with selectable registered and combinatorial output signals
EP0584910B1 (de) * 1992-08-03 1996-09-04 Advanced Micro Devices, Inc. Programmierbare logische Vorrichtung
US5386155A (en) * 1993-03-30 1995-01-31 Intel Corporation Apparatus and method for selecting polarity and output type in a programmable logic device
US5440247A (en) * 1993-05-26 1995-08-08 Kaplinsky; Cecil H. Fast CMOS logic with programmable logic control
US5742179A (en) * 1994-01-27 1998-04-21 Dyna Logic Corporation High speed programmable logic architecture
US5646546A (en) * 1995-06-02 1997-07-08 International Business Machines Corporation Programmable logic cell having configurable gates and multiplexers
US5521529A (en) * 1995-06-02 1996-05-28 Advanced Micro Devices, Inc. Very high-density complex programmable logic devices with a multi-tiered hierarchical switch matrix and optimized flexible logic allocation
US5617041A (en) * 1995-06-02 1997-04-01 Xilinx, Inc. Method and apparatus for reducing coupling switching noise in interconnect array matrix
US5818254A (en) * 1995-06-02 1998-10-06 Advanced Micro Devices, Inc. Multi-tiered hierarchical high speed switch matrix structure for very high-density complex programmable logic devices
US6028446A (en) * 1995-06-06 2000-02-22 Advanced Micro Devices, Inc. Flexible synchronous and asynchronous circuits for a very high density programmable logic device
US5773994A (en) * 1995-12-15 1998-06-30 Cypress Semiconductor Corp. Method and apparatus for implementing an internal tri-state bus within a programmable logic circuit
JPH09232946A (ja) * 1996-02-26 1997-09-05 Mitsubishi Electric Corp カウンタ
US5744980A (en) * 1996-02-16 1998-04-28 Actel Corporation Flexible, high-performance static RAM architecture for field-programmable gate arrays
US5986465A (en) 1996-04-09 1999-11-16 Altera Corporation Programmable logic integrated circuit architecture incorporating a global shareable expander
US5781032A (en) * 1996-09-09 1998-07-14 International Business Machines Corporation Programmable inverter circuit used in a programmable logic cell
US5936426A (en) * 1997-02-03 1999-08-10 Actel Corporation Logic function module for field programmable array
US6467009B1 (en) 1998-10-14 2002-10-15 Triscend Corporation Configurable processor system unit
US6259273B1 (en) 1999-06-15 2001-07-10 Ict Acquisition Corp. Programmable logic device with mixed mode programmable logic array
US6721840B1 (en) 2000-08-18 2004-04-13 Triscend Corporation Method and system for interfacing an integrated circuit to synchronous dynamic memory and static memory
US6725364B1 (en) 2001-03-08 2004-04-20 Xilinx, Inc. Configurable processor system
CN100401086C (zh) * 2002-07-08 2008-07-09 Nxp股份有限公司 具有测试单元的电子电路
US6747480B1 (en) 2002-07-12 2004-06-08 Altera Corporation Programmable logic devices with bidirect ional cascades
US6809550B2 (en) * 2002-09-20 2004-10-26 Atmel Corporation High speed zero DC power programmable logic device (PLD) architecture
US20100106959A1 (en) * 2005-12-16 2010-04-29 Pmc Sierra Ltd. Triple and quadruple churning security for 1G and 10G PON
US7893772B1 (en) 2007-12-03 2011-02-22 Cypress Semiconductor Corporation System and method of loading a programmable counter
US9231594B2 (en) 2011-12-21 2016-01-05 Ecole Polytechnique Federale De Lausanne (Epfl) Non-LUT field-programmable gate arrays
FR3022410B1 (fr) * 2014-06-12 2016-05-27 Delphi Int Operations Luxembourg Sarl Connecteur electrique blinde et son procede de fabrication

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB1545493A (en) 1975-06-04 1979-05-10 Redpath Dorman Long Ltd Supports for maritime structures
US4124489A (en) * 1977-02-16 1978-11-07 Exxon Research & Engineering Co. Production of transformer oil feed stocks from waxy crudes
US4124899A (en) * 1977-05-23 1978-11-07 Monolithic Memories, Inc. Programmable array logic circuit
JPS6186855A (ja) * 1984-09-28 1986-05-02 アドバンスト・マイクロ・デイバイシズ・インコーポレーテツド 出力ロジツク回路
US4684830A (en) * 1985-03-22 1987-08-04 Monolithic Memories, Inc. Output circuit for a programmable logic array
US4677318A (en) * 1985-04-12 1987-06-30 Altera Corporation Programmable logic storage element for programmable logic devices
US4644192A (en) * 1985-09-19 1987-02-17 Harris Corporation Programmable array logic with shared product terms and J-K registered outputs

Also Published As

Publication number Publication date
US4789951A (en) 1988-12-06
JPS62281517A (ja) 1987-12-07
EP0245884A3 (en) 1987-12-23
DE3788974D1 (de) 1994-03-17
JP2628996B2 (ja) 1997-07-09
EP0245884B1 (de) 1994-02-02
EP0245884A2 (de) 1987-11-19

Similar Documents

Publication Publication Date Title
DE3788974T2 (de) Programmierbare Array-Logik-Zelle.
DE3689834T2 (de) Feldprogrammierbare logische Vorrichtung mit programmierbarer Rückführung zur Bestimmung der Anzahl logischer Pegel.
DE3645221C2 (de)
DE69028395T2 (de) Konfigurierbare zellenanordnung
DE3884037T2 (de) Programmierungsschaltung für Eingabe-/Ausgabezelle eines programmierbaren Logikarrays.
DE3687383T2 (de) Programmierbare logische anordnung mit zusaetzlicher gatteranordnung und zusaetzlicher flexibilitaet der ausgangsumsteuerung.
DE69031525T2 (de) Konfigurierbare Logikanordnung und zugehöriges Verfahren
DE69025633T2 (de) Zufallszahlengenerator
DE69326467T2 (de) Unterbrechungsfreies, wahlfreies zugriffspeichersystem.
DE69329909T2 (de) Programmierbare logische netzwerke
DE69031861T2 (de) Programmierbare logische Schaltung mit Multifunktionseingangspin
DE69221611T2 (de) Vorrichtung und verfahren zum multiplexen von pins zur in-system programmierung
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.
EP0093947B1 (de) Programmierbare Logikanordnung
DE69031832T2 (de) Programmierbare logische gatter
DE69314732T2 (de) Programmierbare logische Vorrichtung
DE68920908T2 (de) Programmierbare Logik-Vorrichtung.
DE3871889T2 (de) Programmierbare eingangs-/ausgangsschaltung.
DE3719181A1 (de) Finite zustandsmaschine
DE1275315B (de) Anpassungsfaehige elektrische Schaltung
DE68919447T2 (de) Bei schwacher Betriebsspannung betreibbare logische Schaltung.
DE3784838T2 (de) Vorwaerts-/rueckwaerts-n-bit-zaehlregister.
DE2038123B2 (de) Schaltungsanordnung zur logischen verknuepfung
DE102004006769B3 (de) Auslesevorrichtung
DE69307398T2 (de) Programmierbare logische Zelle

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee