DE3342354A1 - Weich programmierbare logikanordnung - Google Patents

Weich programmierbare logikanordnung

Info

Publication number
DE3342354A1
DE3342354A1 DE19833342354 DE3342354A DE3342354A1 DE 3342354 A1 DE3342354 A1 DE 3342354A1 DE 19833342354 DE19833342354 DE 19833342354 DE 3342354 A DE3342354 A DE 3342354A DE 3342354 A1 DE3342354 A1 DE 3342354A1
Authority
DE
Germany
Prior art keywords
inputs
stage
logic
logical
elements
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.)
Withdrawn
Application number
DE19833342354
Other languages
English (en)
Inventor
David Rchard Shoreview Minn. Resnick
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.)
Control Data Corp
Original Assignee
Control Data Corp
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 Control Data Corp filed Critical Control Data Corp
Publication of DE3342354A1 publication Critical patent/DE3342354A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K19/00Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
    • H03K19/02Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
    • H03K19/173Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
    • H03K19/1733Controllable logic circuits
    • H03K19/1737Controllable logic circuits using multiplexers

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Logic Circuits (AREA)

Description

Henkel, Pfenning, Feiler, Hänzel & Meinig
Control Data Corporation Minneapolis, Minn., V.St.A.
Patentanwälte
European Patent Attorneys Zugelassene Vertrete' vor der E Patentamt
D' phii G Henke!
D:pi-!ng J pfenning Be''1" D' rer. nat. L- Fei-.er Mjic'-e' Dip,-Ing W Hanzei M-uici".=' Dip^ -Phys K H. M&nig. Be"" Dr Ing A Butenscnon. Ben.n
Möhlstraße 37
D-8000 München 30
Tel. 069/982085-87 Telex 0529802 hnkid Teiegramme eilipsoic
CDC 758-WG
23. November .1983/wa
Weich programmierbare Logikanordnung
BAD ORIGINAL
-X-
Die Erfindung betrifft eine als (weich)programmierbare Logikanordnung oder -feld (logic array) bekannte Schaltungsart.
Programmierbare Logikanordnungen werden typischerweise in die Chips von großintegrierten Schaltkreisen (LSI) oder sehr großintegrierten Schaltkreisen (VLSI) eingearbeitet. Derartige Chips sind dabei von einer Art, bei der nach der Fertigung die spezielle logische Funktion der Schaltung nicht bestimmt ist. Ein programmierbarer Logikanordnungs-Chips wird so ausgelegt, daß seine logische Funktion später bestimmt werden kann. Die meisten solchen, bisherigen Chips sind insofern fest programmierbar, als sie Schmelzelemente oder andere Elemente enthalten, die zur Bestimmung der logischen Funktion der Vorrichtung dauerhaft durchgebrannt oder -geschmolzen werden. Die Erfindung betrifft nun "weich" (soft) programmierbare Vorrichtungen, die jeweils wiederholt mit denselben oder unterschiedlichen logischen Funktionen mittels eines Prozesses der Eingabe von logischen Funktionsdaten, auch als Kennzeichnungsdaten bezeichnet, programmiert werden können. Obgleich eine weich programmierbare Logikanordnung das Laden von Kennzeichnungsdaten benötigt, um arbeiten zu können, stellt die erfindungsgemäße Logikanordnung nicht einfach eine Speichervorrichtung dar. Die Kennzeichnungsdaten werden benutzt, um die speziellen logischen Funktionen zu steuern, die auf bestimmten logischen Ebenen oder Stufen in der Anordnung ausgeführt werden sollen. Zudem sind erfindungsgemäße Chips in vier Quadranten oder Sektoren angeordnet und mit Steuerschaltungen auf jedem Chip versehen, so daß sich auf einem
-
Chip mehrere, unabhängige Anordnungen mit gemeinsamer Funktionssteuerung befinden.
Bekannt ist eine Anordnung nach der US-PS 3 818 252 mit einer Anzahl von Wort- und Ziffernleitungen als Eingänge zu einer Anordnung, die Schmelzelemente für die programmierbaren Elemente aufweist. Diese US-PS zeigt effektiv eine Variation einer programmierbaren Standard-Logikan-Ordnung mit zwei Ebenen für die Erzeugung einer produktsummenartigen Funktion, doch nimmt sie die erfindungsgemäße weich programmierbare Mehrebenen-Logikanordnung in keiner Weise vorweg. Die US-PS 4 233 667 beschreibt ebenfalls eine programmierbare Logikanordnung, die jedoch bezüglich Aufbau und Leistungsfähigkeit von derjenigen nach der Erfindung verschieden ist.
Die US-PS 3 912 914 beschreibt ein programmierbares Schaltmodul, das für jede anzuwendende spezielle große Schaltfunktion äußerst komplex ausgelegt werden kann, weil die Programmierungssteuerung für jede Schaltfunktion zu deren Steuerung durch einzelne Drähte vom betreffenden Chip weggeführt werden muß. Die erfindungsgemäße Logikanordnung wird dagegen durch Einführen eines Stroms von Kennzeichnungsdaten programmiert, welche die verschiedenen logischen Elemente als Ergebnis eines Kennzeichnungsprozesses steuern. Andere Veröffentlichungen, z.B. die US-PSen 3 855 536, 3 976 983 und 4 293 783, beschreiben sämtlich Logikanordnungen, die jedoch entweder eine Programmiersteuerung über externe logische Stifte erfordern oder die Einschränkungen bezüglich der speziellen, durchführbaren logischen Funktionen unterworfen sind.
Die Erfindung betrifft somit eine weich programmierbare Logikanordnung, die zur Ausführung spezieller logischer
BAD ORIGINAL
Funktionen steuerbar ist, indem ein Strom von Kennzeichnungsdaten geliefert wird, der in der Logikanordnung verriegelt (latched) wird, um die Ausführung der programmierten Logikfunktion zu veranlassen. Logikanordnungen gemäß der Erfindung können auf einem Chip in Sektoren mit gemeinsamer Programmierlogik für verschiedene Sektoren zu Gruppen zusammengefaßt werden. Bei der beschriebenen Ausführungsform sind vier Quadranten oder Sektoren dargestellt.
Die erfindungsgemäße Logikanordnung ist aus einer Anzahl von Logik-Ebenen oder -Stufen aufgebaut, wobei jede Logik-Ebene eine Anzahl bestimmter Logikelemente enthält. Bei der beschriebenen Ausführungsform sind zwei primäre Arten von Logikelementen vorgesehen. Die erste Art besteht aus einem logischen Funktionselement oder einfach einem Funktionselement. Ein solches weist eine Anzahl von Eingängen auf und vermag an diesen Eingängen alle möglichen logischen Operationen auszuführen. Eine spezielle Ausführungsform der Erfindung verwendet Funktionselemente mit drei Eingängen und einem Ausgang als Baublock. Dieses Funktionselement enthält Dateneingänge, die als Steuerbits für einen 8:1-Multiplexer benutzt werden, dessen acht Eingänge verriegelt (latched) sind und die programmierbaren logischen Eingänge zur Steuerung der Ausgangsfunktionen am Datenausgang des Multiplexers darstellen.
Die zweite Art eines erfindungsgemäß verwendeten Logikelementes ist eine Durchlaß/Haltevorrichtung, die gesetzt werden kann, um entweder ein bestimmtes Eingangssignal zu verriegeln, bis sie getaktet wird, oder um unabhängig vom Dateneingang dieses als Ausgang(ssignal) durchzulassen. Bei der dargestellten Ausführungsform bewirkt die Durchlaßfunktion auch eine Invertierung.
Durch Verwendung von vier Ebenen von Funktionselementen, kombiniert mit vier Ebenen von Durchlaß/Halte-Funktionselementen mit verschiedenen Logik-Verbindungen zwischen den Pegeln, kann im wesentlichen für eine Anzahl von Eingängen jeder funktionelle logische Ausgang erreicht werden. Eine neunte logische Ebene für Ausgangsfreigabe sowie Dreizustands-Pufferelemente gewährleisten eine volle Steuerung aller logischen Ausgangspegel. Die Verbindüngen oder Verknüpfungen der logischen Elemente an den verschiedenen Ebenen bei der erfindungsgemäßen Logikanordnung ermöglichen das Auftreten einer logischen Funktion an allen acht Ebenen der Logik oder ihr Durchschalten als Ausgangssignale an früheren (vorgeschalteten) Logikebenen. Die Ausgänge (Signale) der zweiten, dritten und vierten Ebene der funktioneilen Ausgänge können somit unmittelbar als Ausgänge oder Ausgangssignale der Logikanordnung durchgetastet (gated) werden.
Im folgenden ist eine bevorzugte Ausführungsform der Erfindung anhand der Zeichnung näher erläutert. Es zeigen:
Fig. 1A bis 1C von links nach rechts nebeneinander liegend gesehen, ein detailliertes Logikschaltbild einer Anordnung gemäß der Erfindung,
Fig. 2 ein detailliertes logisches Schaltbild eines
der erfindungsgemäßen Funktionselemente bei der Anordnung nach Fig. 1A bis 1C, 30
Fig. 3 ein detailliertes logisches Schaltbild einer bei der Anordnung nach Fig. 1A bis 1C verwendeten Durchlaß/Haltevorrichtung,
Fig. 4 ein detailliertes logisches Schaltbild eines
in Fig. 1C dargestellten Ausgangsfreigabe-Logikelements ,
BAD
Fig. 5 ein logisches Schaltbild für eine Steuerschaltung bei der Anordnung nach Fig. 1A bis 1C,
Fig. 6 ein logisches Schaltbild der Steuerschaltung
für die zur Ansteuerung der Anordnung nach Fig. 1 verwendete Kennzeichnungslogik und
Fig. 7 ein vereinfachtes logisches Schaltbild der An-Ordnung nach Fig. 1A bis 1C, in welchem nur
die wesentlichen logischen Verbindungen oder Verknüpfungen dargestellt sind.
Die Fig. 1A bis 1C zeigen in der angegebenen Zusammenstellung eine "weich" programmierbare Logikanordnung 10 gemäß der Erfindung. Die logischen Daten werden an der linken Seite der Darstellung eingegeben und durchlaufen die verschiedenen logischen Ebenen, so daß Ausgangssignale entsprechend den vorbestimmten programmierten logischen Funktionen an der rechten Seite der Darstellung auftreten.
Mehrere Funktionselemente 12, 14, 16, 18, 20, 22, 24 und 26 bilden die erste logische Ebene der Logikanordnung 10 gemäß der Erfindung. Die Funktionselemente 12-26 sind jeweils identisch aufgebaut; der Aufbau des Funktionselements 12 ist in Fig. 2 im einzelnen veranschaulicht. Jedes Funktionselement weist drei Dateneingänge auf, wobei die Dateneingänge des Funktionselements 12 mit A, B und C mit für das betreffende Funktionselement stehenden Zusatzziffern bezeichnet sind. Eine ähnliche Bezeichnungsweise wird für die Dateneingänge aller acht Funktionselemente der ersten logischen Ebene benutzt. Jedes der Funktionselemente 12-26 weist einen einzigen Ausgang auf, der mit dem Rest der Logikanordnung 10 ver-
bunden ist. Eine zweite Ebene der Logik besteht aus sechs Funktionselementen 28 - 38, die an sechs Durchlaß/Haltevorrichtungen 40 - 50 angeschlossen sind, die ihrerseits jeweils gleich aufgebaut sind; die Vorrichtung 40 ist in Fig. 3 im einzelnen dargestellt. Diese sechs Durchlaß/-Haltevorrichtungen 40 - 50 bilden die dritte Ebene der dargestellten Ausführungsform, und die Ausgänge dieser Vorrichtungen sind auf die dargestellte Weise geschaltet.
Die vierte Ebene der Logik bei dieser Ausführungsform besteht aus vier Funktionselementen 52 - 58, die auf dargestellte Weise ihre Eingangssignale abnehmen und deren Ausgänge als Eingänge zu vier Durchlaß/Haltevorrichtungen 60-66 geschaltet sind, welche die fünfte logische Ebene bilden. Die sechste logische Ebene besteht aus zwei Funktionselementen 68 und 70f deren Ausgänge Eingangssignale zu Funktions/Durchlaßelementen 72 und 74 liefern, welche eine achte logische Ebene darstellen. In Fig. 1A bis 1C ist jedes Funktionselement mit einer Ziffer mit vorangestellten Buchstaben FE vor einer speziellen Elementziffer bezeichnet. Auf ähnliche Weise sind alle Durchlaß/Haltevorrichtungen mit einer speziellen Ziffer mit vorangestellten Buchstaben FP bezeichnet.
Die erfindungsgemäße Ausgangslogik besteht aus einem zweistufigen Element, das als eine einzige Funktion besitzend angesehen werden kann. Die erste Stufe jedes dieser Elemente ist ein Ausgangfreigabe-Tor (gate) 80, das in Fig. 4 im einzelnen gezeigt ist. Jedes dieser Tore 80 ist mit einem Dreizustand-Puffer 82 verbunden, der mögliche Ausgänge "Hoch", "Niedrig" und "Gleitend" besitzt. Der Floating-Ausgang gleitet mit dem Signalpegel auf der Ausgangsleitung, wenn vorausgesetzt wird, daß an dieselbe logische Leitung auch andere aktive Logik-
BAD ORiGINAL
vorrichtungen angeschlossen sind. Die Ausgangsfunktion der dargestellten Ausfuhrungsform wird somit durch 12 Paare von Ausgangsvorrichtungen mit zwölf Ausgangsfreigabe-Toren 80, 84, 88, 92, 96, 100, 104, 108, 112, 116, 12C und 124 bestimmt. Jedes dieser Tore ist einem Dreizustand-Puffer 82, 86, 90, 94, 98, 102, 106, 110, 114, 118, 122 bzw. 126 zugeordnet.
Die Logikanordnung gemäß Fig„ 1A bis 1C kann vorzugsweise als ein Quadrant oder Sektor von vier identischen Quadranten oder Sektoren ausgelegt werden, die auf einem einzigen VLSI-Chip angeordnet werden sollen. In anderer Ausführungsform kann eine andere Zahl von Sektoren mit einem gemeinsamen Steuersystem angewandt werden. Ein einziger VLSI-Chip enthält somit vier in Quadranten angeordnete Schaltungen nach Fig. 1A bis 1C zusammen mit einer einzigen Steuerschaltung der Art nach Fig. 5 und 6. Die Schaltung nach Fig. 6 ist so ausgelegt, daß sie vier getrennte Schaltungen der Art gemäß Fig. 1A bis 1C zu steuern vermag. Die verschiedenen Eingangs-Steuerleitungen gemäß Fig. 1A stammen von der Steuerschaltung nach Fig. 6, die später noch näher erläutert werden wird.
Die Ausgänge der Steuerschaltung zu den einzelnen Quadranten der Anordnung sind jeweils mit einem 3 Eingänge auf Ausgänge umsetzenden Dekodierer 140 (Fig. 1A) verbunden. Die Eingangsleitungen C5, C4 und C3 kommen von der Steuerschaltung nach Fig. 6, während die Steuerleitung C9 zum Ein- oder Ausschalten des Dekodierers in Abhängigkeit davon, welcher der vier Quadranten adressiert ist, dient. Auf ähnliche Weise erhält ein 2 Eingang/4 Ausgang-Dekodierer 142 die Eingangssignale von der Schaltung nach Fig. 6, wobei die Leitung C8 zum Ein- und Ausschalten des De-
kodierers nach Maßgabe der Eingangssignale gemäß Fig. 6 dient. UND-Glieder 144, 146 und 148 steuern den Ausgang bzw. die Ausgabe (fanout) der erforderlichen Steuersignale, um das Laden des Programms für die programmierbare Logikfunktion durchzuführen.
Fig. 2 veranschaulicht ein bei der dargestellten Ausführungsform verwendetes logisches Funktionselement. Jedes FunktionseTament weist einen 8:1-Bit-Multiplexer 200 auf, wobei der Ausgang FD den Datenausgang darstellt. Der Dateneingang ist durch Eingangssignalleitungen A, B und C dargestellt, welche die Wählsteuerleitungen des Multiplexers sind, aber Dateneingänge zum Funktionselement bilden. Für jede der acht Eingangsleitungen des Multiplexers ist eine UND-Glied/Setz-Verriegelungsschaltung 202 - 216 vorgesehen. Die funktionellen oder kennzeichnenden Dateneingaben zur Steuerung des funktionellen Ausgangs des Multiplexers 200 erfolgen auf Programmeingängen SO - S7.
Die Freisignal- und die Einschreibfreigabesignalfunktionen werden in Verbindung mit der Steuerlogik gemäß Fig. 6 noch näher erläutert werden. Wenn sie mit einer funktionellen Eingabe programmiert wird, hält jede der Setz-Verriegelungsschaltungen 202 - 216 diese funktionelle Eingabe für alle Operationen der Schaltung. Das Freisignal setzt als Teil des Initialisierungsprozesses alle Tore auf Null. Das Einschreibfreigabesignal muß zum Einschreiben oder Programmieren etwaiger Funktionen freigegeben werden.
Es ist bekannt, daß ein 8:1-Bit-Multiplexer mit drei Steuereingängen mittels eines 3-Bit-Steuersignals jeden einzelnen der möglichen Eingänge als Ausgang wählen kann. Andererseits ist bekannt, daß eine beliebige logische Funktion von drei Datenbits entweder ein hohes oder ein
BAD ORIGiMAL
niedriges Datenbit sein muß. Durch entsprechende Programmierung der acht Eingangsbits zum Multiplexer 200 mit hohen und niedrigen Bits kann dafür gesorgt werden, daß der Ausgang des Multiplexers 200 eine beliebige logische Funktion der drei Datenbiteingänge auf den Steuerleitungen A-C sein kann. Dies stellt die logische Struktur des Funktionselements 12 dar, das als Baublock der vorliegenden Anordnung gemäß der Erfindung operiert.
In Fig. 3 ist die Durchlaß/Haltevorrichtung 40, die den anderen derartigen Vorrichtungen bei der dargestellten Ausführungsform entspricht, mit ihrem detaillierten logischen Schema veranschaulicht. Die Vorrichtung 40 besteht aus einem Setz/Rücksetz-UND-Glied-Verriegelungselement 220, einem Flipflop 222 und einem Tor(element) 224, die auf die dargestellte Weise geschaltet sind. Wenn das Element 220 als Teil der Kennzeichnungsfunktion gesetzt wird, bewirkt der Dateneingang vom vorherigen Abschnitt, daß das UND-Glied 224 und das Element als Datendurchlaßschaltung arbeiten und die Daten beim Durchgang ohne wesentliche Zeitverzögerung invertieren. Wenn das Element 220 nicht gesetzt ist, muß für das Durchlassen der Daten durch die Einheit neben dem Dateneingang ein Taktsignal das Flipflop 222 initiieren, damit das Tor 224 die Daten durchläßt.
Gemäß Fig. 4 besteht die Ausgangfreigabeschaltung 80 aus einer Setz/Rücksetz-Verriegelungsschaltung 230 in Verbindung mit einem Tor(element) 232. Wenn letzteres durchgeschaltet (on) ist, ist der Puffer in Abhängigkeit vom Dateneingang zum Puffer entsprechend hoch oder niedrig. Wenn die Ausgangfreigabeleitung des Tors 232 nicht freigegeben ist, befindet sich der zugeordnete Puffer unabhängig vom Dateneingang im Aus- oder Gleit-Zustand. Die
Eingangssteuerleitungen zum Ausgangfreigabe-Tor 232 funktionieren wie folgt: H hält das Tor im Sperrzustand oder zwingt es in diesen Zustand; F ist ein Prüfeingang und bewirkt die zwangsweise Freigabe des Ausgangs; und E ist der normale Freigabefunktionseingang.
Fig. 5 zeigt das Steuersystemregister 281, welches den FORCE-Steuerfunktioneneingang für das Tor 283 gemäß Fig. 1C sowie für die jeweiligen anderen, ähnlichen Quadranten liefert.
Fig. 6 zeigt eine Steuerschaltung gemäß der Erfindung zur Steuerung der Schaltung nach Fig. 1 als eine von vier identischen Schaltungen. Die Schaltung 300 weist einen Steuertakt(geber) 302 auf. Der Eingangs-Kennzeichnungsdatenfluß wird am Eingang 304 geliefert. Der Eingangs-Prüfdatenfluß muß in einem Standard-Rechnerbereich als eine Funktion des Prüfwartungslogiksystems außerhalb der normalen Datenpfade als Teil der Initialisierungsfunktion vorgesehen sein. Der Taktgeber 302 führt eine Setz-, Lösch- und Vergiß-Funktion aus. Dies bedeutet, er bereitet ein monostabiles Signal zur Steuerung der verschiedenen Lösch-Bits am Lösch-Ausgang 306 vor, so daß alle Schaltungen anfänglich gelöscht werden, doch da ein monostabiles Signal geformt wird, braucht das Löschsignal nicht abgeworfen zu werden, es fällt automatisch ab.
Der Dekodierer 308 arbeitet in Verbindung mit dem Zähler 310 zur Bildung eines 8 Bit-Ausgangskanals für das gemeinsame Durchtasten (gating) zu den verschiedenen Funktionselementeinheiten 12. Der Eingangsreihenfluß von Daten auf einem 1 Bit-Kanal wird dabei durch den Zähler 310 mit dem Dekodierer 308 so gesteuert, daß bei jedem Funktionsele-
BAD ORIGINAL
-,JJ--
ment, wie dem Funktionselement 12, das durch den 8 Bit-Ausgangswählkanal 310 adressiert wird, die Programmeingänge sequentiell getriggert werden. Der Zähler 312 liefert Ausgangssteuersignale auf Leitungen C (Fig. 1) zur Steuerung, welche Wähllogik an welchem Funktionselement 12 oder welche Durchlaß-Haltevorrichtung 40 für die Adressierung der Programmierfunktion getriggert wird. Der Zähler steuert auch die Adressierung des betreffenden Ausgangfreigabeelements.
Fig. 7 zeigt in vereinfachter schematischer Darstellung die erfindungsgemäße Anordnung nach Fig. 1A bis 1C. Die Logikvorrichtungen sind nur symbolisch dargestellt, und die verschiedenen Programmier- und Steuerfunktionsleitungen sind nicht eingezeichnet. Die Bezugsziffern 12, 16, 18, 20, 22, 24 und 26 dienen somit in Fig. 7, ebenso wie in Fig. 1A, zur Bezeichnung von Funktionselementen, weil die Vorrichtung und die Funktion als dieselben angesehen werden können. Fig. 7 zeigt somit dasselbe Logiksystem wie in Fig. 1A bis 1C mit acht Ebenen der Logik und einer Ausgangs-Ebene, welche die weich (soft) programmierbare Logikanordnung 10 bilden. Der einzige wesentliche Unterschied in Fig. 7 besteht darin, daß die zweistufigen Paare von Ausgangselementen, wie in Fig. 1C gezeigt, in Fig. 7 vereinfachend zu einem einzigen Ausgangselement zusammengefaßt sind. Die kombinierten Ausgangfreigabe-Tor- und Dreizustand-Puffervorrichtungen sind mithin in Fig. 7 mit den Ziffern 82A, 86A, ..., 126A bezeichnet, um die Entsprechung zu den Dreizustand-Puffern 82, 86, 90, ..., 126 gemäß Fig. 1C aufzuzeigen.
Die weich programmierbare Logikanordnung gemäß der Erfindung ist zur Lösung eines der bei Logikkonstruktionen immer wieder auftretenden Probleme ausgelegt, nämlich des "Verklebens" von Teilen eines Systems in oder bei einfa-
-ΛΤ-
chen Steuerfunktionen. Dies ist zu unterscheiden von signifikanten arithmetischen Funktionen, wie bei Addier- und Multiplizierstufen, die üblicherweise speziell ausgelegt sind. Obgleich die erfindungsgemäße Logikanordnung zur Bildung einer Additions- oder Mulitplizierfunktion ausgelegt werden könnte, wäre sie (dabei) nicht besonders wirksam. Die erfindungsgemäße Logikanordnung kann als besonders wirksam angesehen werden für die Durchführung von Streu-, Rest- oder "Verklebe"-Funktionen der Art, wie sie für die Vervollständigung der Logik eines arithmetischen oder Boole'sehen Operationssystems bei einem Rechner erforderlich sind. Wenn ein Rechnersystem z.B. vier getrennte 16-Bit-Addierer oder auch -Multiplizierstufen aufweist, die getrennt in einer 16-Bit-Betriebsart (-Modus) arbeiten, dann wäre es zweckmäßig, eine weich programmierbare Logikanordnung zur Gewährleistung der Steuer- und Logikfunktionen zu verwenden, um die vier getrennten Systeme parallel in einer 64-Bit-Betriebsart arbeiten zu lassen. Es ist nicht beabsichtigt, daß die weich programmierbare Logikanordnung zur Ergänzung oder Ausführung des gesamten Steuerteils eines Rechner-Grundgeräts benutzt wird. Zu_jgewiesener Mikrocode und zugewiesene arithmetische oder Boole'sehe Funktionen wären für derart große Konstruktionen wirtschaftlicher. Ande rerseits arbeitet die weich programmierbare Logikanordnung vorteilhaft für Funktionen, wie überlauffeststellung in einer arithmetischen Logikeinheit oder Steuerverteilung für Dreizustand-Sammelschienenzwecke.
Für die Herstellung programmierbarer Logikanordnungen werden bisher üblicherweise Schmelzelement- bzw. Durchschmelztechniken angewandt. Es besteht jedoch keine brauchbare oder wirtschaftliche Möglichkeit für die Einführung einer schmelzbaren programmierbaren Logik in sehr groß-
BAD ORIGINAL,
integrierte Schaltkreise. Die Erfindung entspricht diesem Bedarf durch Bereitstellung von entweder kombinierten oder sequentiellen Logikfunktionen, die durch den Anwender gewählt und gemischt werden können als Ergebnis von Kennzeichnungsdaten.
Das Grund-Funktionselement der Logikanordnung gemäß der Erfindung ist eine Logikeinheit oder ein Funktionselement 12, das konfiguriert werden kann, um jede logische Funktion von drei Eingängen zu realisieren. Eine Anzahl logischer Ebenen oder Stufendieser Elemente wird zusammengeschaltet, um die Logikanordnung insgesamt zu bilden. Eine erste Stufe dieser Elemente wird mit den Eingangsstifen verknüpft, und die Ausgänge dieser ersten Stufe von Funktionselementen steuern die nachgeschaltete Stufe von Funktionselementen an.
Bei der dargestellten Ausführungsform sind vier getrennte Gruppen von Funktionselementen vorgesehen. Dabei sind auf einem einzigen VLSI-Chip vier getrennte Gruppen von Logikanordnungen angeordnet; jede dieser Anordnungen wird als Sektor oder Quadrant bezeichnet, weil sie eine von vier identischen Ausführungen ist. In jedem Quadranten oder Sektor der Logikanordnung befinden sich acht Funktionselemente in einer ersten, mit 24 Eingangsstiften verbundenen Stufe. Sechs Funktionselemente sind in einer zweiten logischen Ebene oder Stufe, vier Funktionselemente in einer dritten logischen Ebene und schließlich zwei Funktionselemente in einer letzten oder vierten logischen Ebene bzw. Stufe angeordnet. Alle Funktionsebenen-Ausgänge der zweiten Stufe und der folgenden Stufen sind mit Chip-Ausgangsstifen verbunden, zusätzlich zur Lieferung des Ausgangs zu nachgeschalteten Ausgangsebe nenstufen. Dies bedeutet, daß der Anwender bis zu sechs
vergleichseise einfache logische Gleichungen oder bis zu 12 logische Mischausdruck-Gleichungen oder aber nur zwei komplexe logische Gleichungen unter Verwendung der verschiedenen Kombinationen von Funktionselementen in logischen Ebenenanordnungen realisieren kann. Die komplexeste Gleichung, die bei einer gegebenen Logikanordnung der Art gemäß Fig. 1A bis 1C programmiert werden kann, kann sieben Funktionselemente mit 21 Eingangsstiften umfassen.
Am Ausgang jedes Funktionselements in jeder Stufe, mit Ausnahme derjenigen der ersten Stufe, befindet sich ein wählbares Flipflop oder eine Durchlaß/Halteeinheit. Jedes Flipflop ist so wählbar, daß es als Einzyklus-Halteregister wirkt oder die Daten unmittelbar, ohne Datenverriegelung und mit minimaler Verzögerung, durchläßt. Jedes Flipflop weist einen Eingang auf, der zu Prüfzwecken das zwangsweise Löschen aller Flipflops unter Systemsteuerung erlaubt.
Jedem Chip-Ausgangsstift ist ein Ausgangselement zugeordnet, welches die Dreizustand-Steuerleitung jedes Ausgangsstiftpuffers steuert. Ein Anwender kann den Ausgangsstift zwangsweise auf ständige Freigabe schalten, d.h. daß der Datenausgang niemals abgeschaltet ist, und einen jedem der vier Quadranten zugeordneten Eingangsstift freigeben, um die Dreizustand-Leitung jedes Ausgangsstifts eines Quadranten anzusteuern.
Jedes Funktionselement (z.B. 12) enthält einen 8:1-Multiplexer, angesteuert durch acht Speicherverriegelungsschaltungen, und drei Wähleingänge A-C, die zum Wählen des Zustande der einen Verriegelungsschaltung zum Multiplex(er)ausgang dekodiert werden. Die acht Datenverriegelungsschaltungen werden gesetzt und gelöscht, um die ge-
SAD ORlQINAL
wünschte logische Funktion der Eingänge A - C zu realisieren. Die acht Datenverriegelungsschaltungen bilden eine volle Wahrheitstabelle für drei Eingänge, welche die Ausführung jeder logischen Funktion von drei Bits erlaubt, indem die erforderlichen Datenverriegelungsschaltungen gesetzt und gelöscht werden. Als einfaches Beispiel wird FD = A B C ausgeführt, indem alle Datenverriegelungsschaltungen (data latches) gelöscht werden, mit Ausnahme der S7 zugeordneten Verriegelungsschaltung, die gesetzt wird. Die Wahrheitstabelle für jede erforderliche logische Funktion läßt sich einfach nach verschiedenen, an sich bekannten logischen Verfahren ermitteln.
Alle Verriegelungsschaltungen werden durch eine Schaltung initialisiert, die durch die Steuereinheit gemäß Fig. 6 gesteuert wird. Alle Verriegelungsschaltungen werden gleichzeitig gelöscht und dann sequentiell durch über den Prüf-Datenausgangsstift 304 eingehende Daten bedingt gesetzt. In jedem Funktionselement wird das Verriegelungs-Bit Null (latch bit zero) zuerst durchgetastet, worauf die (anderen) Bits der Reihe nach bis zum letzten Bit 7 durchgetastet werden.
Das Durchlaß/Halte-Flipflop 40 gemäß Fig. 3 ist ein 2:1-Multiplexer, der durch ein Verriegelungsbit gesteuert wird, das den Verriegelungsbits 202 beim Funktionselement 12 entspricht. Diese Verriegelungsbits werden ebenfalls auf dieselbe Weise unter denselben Steuerfunktionen, die von der Einheit gemäß Fig. 6 geliefert werden, gesteuert. Wenn das Verriegelungsbit gelöscht ist, werden die Eingangsdaten vom ansteuernden Funktionselement unmittelbar zum Ausgang des Multiplexers und von dort zum Ausgangsstift und zu den nachfolgenden Funktionselementen, sofern vorhanden, durchgelassen. Dabei werden die Daten inver-
- >6—
tiert. Dies muß beim Einschreiben der logischen Gleichungen von nachgeschalteten Ebenen der Funktionselemente berücksichtigt werden. Wenn das Verriegelungsbit gesetzt wird oder ist, ist der Ausgang des Flipflops mit dem Multiplexerausgang verbunden. Es ist zu beachten, daß in diesem Fall die Daten vom Eingang zum Ausgang nicht invertiert werden, wie dies beim direkten Durchlassen (pass-through) der Fall ist. Diese Inversionsänderung zwischen Flipflop- und Durchlaßbetriebsart wirft keine Probleme auf, weil die Datenverriegelungsschaltung nur einmal beim Stromeinschalten einschreibt. Sie ist somit im Betrieb nicht änderbar. Die Tatsache, daß die Daten invertiert werden, kann berücksichtigt werden durch Erzeugung des logischen Komplements der erforderlichen logischen Funktion in dem den betreffenden Eingang ansteuernden Funktionselement.
Das Flipflop 222 wird kontinuierlich, ohne jede Torsteue Hing, getaktet. Dies bedeutet, daß zur Bildung einer zustandssequentiellen Schaltung das Ausgangssignal der Funktion zu einem Chip-Eingang als ein Eingangssignal zu den definierenden logischen Gleichungen zurückgeschaltet sein muß. Es ist ein Rücksetzeingang zum Daten-Flipflop vorhanden, der von der Betriebs-Steuereinheit nach Fig. 6 kommt und der zum Initialisieren der Flipflops für Betrieb oder Prüfung benutzt werden kann. Die Ausgangfreigabevorrichtung 80 nach Fig. 4 ist mit der Dreizustandsteuerleitung jedes funktionellen Ausgangsstifts verbunden. Die Ausgangsfreigabe besitzt drei verschiedene Betriebsarten.
Die erste Betriebsart der Ausgangfreigabe ist ein Speicherungs-Datenbit, das - wenn es gesetzt ist —die betreffende Dreizustand-Steuerleitung bei freigegebenem Ausgang
BAD ORIGINAL
auf hohem Pegel hält, außer daß der Ausgangsstift durch die Ausgangsabschalt-Absperr-Sammelschiene zwangsweise abgeschaltet oder stromlos gemacht werden kann. 5
Die zweite Betriebsart oder Betriebsbedingung besteht darin, daß dann, wenn das Datenbit gelöscht ist, der für jede Ausgangfreigabevorrichtung in einem Quadranten gemeinsam vorgesehene Eingang/Ausgangsstift die Dreizustand-Steuerleitung steuern kann. Ein hoher Pegel an diesem Stift gibt alle Ausgangspuffer und den entsprechen den Logikanordnungquad ranten frei, außer daß die Halteausschalt-Sammelschiene wiederum die Freigabeleitung übersteuern kann.
In der dritten Betriebsart kann jeder Ausgang in einem Quadranten zwangsweise eingeschaltet werden (Ausgang freigegeben), und zwar durch ein Funktionsbit im Steuersystemregister 281 gemäß Fig. 5. Es sind daher vier einzelne Steuerbits vorgesehen. Während zu erwarten ist, daß diese Möglichkeit normalerweise für Wartungszwecke benutzt (werden) wird, steht ihrer Anwendung im Systembetrieb nichts im Wecje. Die Steuersystem-Schnittstellenfunktion nach Fig. 6 stellt einen integralen Teil der weich programmierbaren Logikanordnung dar und ermöglicht eine Initialisierung mit Kennzeichnungsdaten. Dies beruht darauf, daß die Logikanordnung keine Funktion hat, bis das Wartungssystem die Datenverriegelungsschaltungen lädt, welche die gewählte logische Funktion bestimmen.
Die Datenverriegelungsschaltungen , welche die erforderlichen logischen Funktionen realisieren, werden geladen, indem zunächst alle Datenverriegelungsschaltungen in allen Quadranten gelösdtfiand dann jeweils einzeln erforderlichenfalls mit den vom Prüfdateneingang kommenden Daten gesetzt werden. Auf dem Chip ist ein Bitzähler vor-
BAD ORIGINAL
-as-
gesehen, der von O - 767 zählt. Von den 768 Zählschritten sind 736 Zählschritte Bitverriegelungseinheiten für 184 Verriegelungseinheiten in jedem Quadranten, plus 8 zusätzliche Zählschritte. Jede Funktionsverriegelungseinheit wird gesetzt, wenn das Prüfdateneingangsbit eine "1" ist, worauf der Zähler inkrementiert wird bzw. hochzählt. Dieser Zähler wird einfach durch "1" angestoßen (bumped), wenn das Eingangsbit eine "0" ist. Die Funktionsbitbeschreibungan für die Steuerfunktionen sind wie folgt: Die WRITEF-Funktion ist aktiv, sofern Bit "1" des Steuerregisters gesetzt wird oder ist, wenn ein Prüfdurchtast-Eingangsstift aktiv ist. Die WRITEF-Funktion muß aktiv sein, um das Einschreiben der Funktionsbeschreibungs-Verriegelungseinheiten zu ermöglichen. Die WRITEF-Funktion kann im selben Steuerwort wie die Funktionen INITF und CLEARF enthalten sein. Wenn die WRITEF-Funktion aktiv ist und der Prüftaktfreigabe-Eingangsstift den hohen Pegel besitzt, wird der Zustand des Prüfdaten-Eingabestifts in die augenblicklich adressierte Verriegelungseinheit eingeschrieben.
Die Funktion INITF ist oder wird aktiviert, sofern Bit 2 des Steuerregisters gesetzt wird oder ist, wenn der Prüfdurchtast-Eingangsstift aktiv ist. INITF führt zwei Funktionen aus: 1) Sie löscht die Adressenzähler, welche die einzelnen Funktionsverriegelungsbits wählen, bis auf Null; und 2) sie löscht auch alle Zwischenstufen-Flipflops in allen vier logischen Quadrant anordnungen.
INITF ist eine monostabile Funktion insofern, als sie nur für einen Takt an der Vorderflanke bei aktiv werdender Prüfdurchschaltung aktiv ist. Dies bedeutet, daß diese Funktion im selben Funktionssteuerwort wie (die Funktion) WRITEF vorhanden sein kann, um die für das Einschreiben der Funktionsbeschreibungsverriegelungsein-
BAD ORIGINAL
heiten benötigten Steuersequenzen zu vereinfachen. Dies geschieht, indem die Prüftaktfreigabe-Steuerleitung auf dem niedrigen Pegel oder inaktiv gehalten wird, wenn das Prüfdurchschaltsignal auf den hohen Pegel geführt wird. Nach einer Verzögerung von mindestens zwei Taktzyklen kann das Prüftaktfreigabesignal auf den hohen Pegel geführt werden, und die Beschreibungs-Verriegelungseinheiten werden eingeschrieben.
Die Funktion CLEARF wird oder ist aktiviert, sofern Bit 3 des Steuerregisters gesetzt ist, wenn der Prüfdurchtast-Eingangsstift aktiv ist. Diese Funktion löscht alle Funktionsbeschreibungsverriegelungseinheiten in allen Quadranten auf Null. Dies muß bei Stromeinschaltung, wenn erstmals ein Einschreiben in die Logikanordnung erfolgt, durchgeführt werden und kann zu anderen Zeitpunkten zur Änderung der Chip-Funktion vorgenommen werden. Die Funktion CLEARF ist nicht nötig, wenn die eine Null haltende Beschreibungsverriegelungseinheit auf "1" geändert werden soll. Eine Funktion WRITEF/INITF wird bei einem Datenfluß benutzt, der vollständig aus Nullen, mit Ausnahme von Einsen an den erforderlichen Änderungsstellen, besteht. CLEARF ist insofern eine monostabile Funktion, als sie nur für einen Taktzyklus an der Vorderflanke eines wirksam werdenden Prüfdurchschaltsignals aktiv ist. Dies bedeutet, daß diese Funktion im selben Funktionssteuerwort wie WRITEF zur Lieferung der Steuersequenzen enthalten sein kann, um (in) die Funktionsbeschreibungsverriegelungseinheiten einzuschreiben. Dies geschieht, indem die Prüftaktfreigabe(leitung) auf dem niedrigen Pegel gehalten wird, während das Prüfdurchschaltsignal auf den hohen Pegel geführt wird. Nach einer Verzögerung von mindestens zwei Taktzyklen können die Prüftaktfreigabe(leitung) auf den hohen Pegel gebracht und die Beschreibungsverriegelungseinheiten beschrieben werden.
Die vier Funktionen FORCEFO bis F0RCEF3, die Bits 4, 5, 6 bzw. 7 des Steuerregisters 281 darstellen, bringen alle Ausgangsstifte in den betreffenden Quadranten zwangsweise in den aktiven Zustand. Die Funktion übersteuert den Zustand des Ausgangfreigabestifts, der Sperr-Sammelschiene sowie den Zustand einer etwaigen Funktionsbeschreibungsverriegelungseinheit in den Ausgangfreigabe-Toren. Während anzunehmen ist, daß diese Funktionsbits hauptsächlich von Diagnosegeräten benutzt werden, können sie auch im normalen Systembetrieb benutzt werden. Die vier Bits werden an der Vorderflanke eines Prüftakt-Freigabesignals in ein statisches Halteregister geladen.
Die Funktion BLOCKF ist aktiv oder wirksam, sofern Bit des Steuerregisters aktiv ist, wenn der Prüfdurchtasteingang aktiv ist. Diese Funktion deaktiviert alle Ausgangsstifte in allen Quadranten, und sie übersteuert die Ausgangfreigabestifte und den Zustand einer etwaigen Funktionsbeschreibungsverriegelungseinheit in einer der Ausgangfreigabevorrichtungen. Die Funktion BLOCKF zwingt die Sperr-Sammelschiene in die Abschaltbetriebsart, während sie eine etwaige aktive Funktion FORCEF nicht übersteuert.
Die erfindungsgemäße Logikanordnung bietet verschiedene Vorteile. Zum einen ist sie für die jeweils auszuführende Funktion ausgelegt. Wenn der Teil oder die Anordnung im System von einer Stelle zu einer anderen verschoben wird, führt sie die logischen Gleichungen für die neue Stelle ohne physikalische Änderung des Teils aus. Die Verzögerung eines logischen Signals durch den Teil ist der Komplexität der zu realisierenden logischen Gleichung proportional. Mehrere einfache Gleichungen oder weniger, komplexere Gleichungen können verarbeitet werden, wodurch
BAD ORIGINAL
der Konstrukteur logischer Schaltungen einen größeren EntwurfsSpielraum erhält. Die Logikanordnung realisiert variable Funktionen an einem festen Satz von Eingängen im Gegensatz zu den vorher festgelegten festen Gleichungen an variablen Eingängen beim Stand der Technik. Die einen Teil der Logikstrecke bildenden Flipflops können zur Realsisierung von Zustandsgieichungen benutzt oder zur Ausführung kombinierter Logik deaktiviert werden.
Die Funktionselemente der ersten Ebene speisen diejenigen der zweiten Ebene. Die einzelnen Funktionselemente der zweiten Ebene können dann ihren eigenen Ausgangsstift ansteuern oder Ausgangsstifte ansteuernde Funktionselemente einer dritten Ebene speisen. Letztere können ihrerseits Ausgänge einer vierten Ebene ansteuern. Aufgrund dieser Verbindung oder Verknüpfung können alle Ausgänge der zweiten Ebene der Anordnung aktiv sein, so daß bis zu sechs vergleichsweise einfache Gleichungen in der Anordnung aufgelöst werden können. Mit zunehmender Komplexität größerer Gleichungen können die Elemente der dritten und der vierten Ebene benutzt werden, um immer weitere Elemente der ersten und zweiten Ebene Teil der logischen Gleichung werden zu lassen und damit zunehmend komplexere logische Gleichungen aufzulösen.
Die beiden logischen Lösungsarten können gleichzeitig genutzt werden. Mit anderen Worten: einige einfache logische Gleichungen sollten Signale liefern, die auch in komplexere logische Gleichungen eingehen können. Die Ausgänge der zweiten und dritten Ebene können gleichzeitig mit denen der dritten und der vierten Ebene aktiv sein, so daß einfache und komplizierte logische Funktionen gleichzeitig erzeugt oder ausgeführt werden. Durch Wahl des Zustands der Durchlaß/Haltevorrichtungen, nämlich ob sie
Daten halten oder durchlassen, können einige der logischen Gleichungen Zustandsgieichungen und andere reine kombinierte Verknüpfungs-Gleichungen sein.
BAD ORIGINAL
_ 3 V
- Leerseite -

Claims (15)

Patentansprüche
1. Weich programmierbare Logikanordnung, gekennzeichnet durch mehrere aus Funktionselementen gebildete logische Stufen mit jeweils logischen Eingängen und Ausgängen, die eine vorbestimmte Funktion des Eingangs sind, wobei jedes Funktionselement mit (seinen) Eingängen zur Abnahme von Dateneingängen und Datenausgängen, die logische Gleichungen der Dateneingänge darstellen, angeschlossen ist und jedes Funktionselement mehrere mit mindestens einem Ausgang verbundene Eingänge aufweist, so daß der Ausgang eine beliebige logische Funktion der Eingänge sein kann, und jedes Funktionselement eine der Zahl der möglichen Ausgangszustände äquivalente Zahl von Verriegelungseinheiten zum Halten einer vorbestimmten logischen Anzeige des zugeordneten Ausgangszustands entsprechend der ausgeführten logischen Funktion aufweist, durch eine Anzahl von Stufen von Flipflop-Durchlaßeinheiten mit zur Abnahme der Ausgänge von einer der logischen Stufen angeschlossenen Eingängen sowie an die Eingänge einer anderen der logischen Stufen und an den Ausgang der Logikanordnung angeschlossenen Ausgängen, wobei diese Einheiten jeweils einen logischen Zustand zu invertieren und diesen ohne Verzögerung durchzulassen oder eine logische Funktion bis zur Freigabe zu verriegeln vermögen, abhängig von einer vorbestimmten, auszuführenden logischen Funktion, und durch eine Steuereinheit, um alle Funktionselemente und Flipflop-Durchlaßeinheiten für die Ausführung einer vorbestimmten logischen Funktion zu setzen.
2. Anordnung nach Anspruch 1, gekennzeichnet durch eine erste logische Stufe aus acht zur Abnahme von Systemdateneingängen geschalteten Funktionselementen, eine zweite logische Stufe aus sechs mit den Ausgängen der ersten logischen Stufe verbundenen Funktionselementen,
eine dritte Stufe aus sechs mit den Ausgängen der zweiten logischen Stufe verbundenen Flipflop-Durchlaßeinheiten, eine vierte logische Stufe aus vier mit den Ausgängen der dritten Stufe verbundenen Funktionselementen, eine fünfte Stufe aus vier an die Ausgänge der vierten Stufe angeschlossenen Flipflop-Durchlaßeinheiten, eine sechste logische Stufe aus zwei mit den Ausgängen der fünften Stufe verbundenen Funktionselementen, eine siebte Stufe aus zwei an die Ausgänge der sechsten logischen Stufe angeschlossenen Flipflop-Durchlaßeinheiten und
eine achte Stufe aus zwölf mit den Ausgängen von dritter, fünfter und siebter Stufe verbundenen Ausgangfreigabe-Toren.
3. Vorrichtung nach Anspruch 2, dadurch gekennzeichnet, daß der Ausgang jedes Ausgangfreigabe-Tors in der einen Betriebsart zwangsweise auf einen hohen, niedrigen oder gleitenden Pegel bringbar ist oder in einer anderen Betriebsart die Eingangsfunktion als Ausgang verbinden kann.
4. Anordnung nach Anspruch 2, dadurch gekennzeichnet, daß jedes Funktionselement drei Dateneingänge, acht logische Steuereingänge und einen Ausgang aufweist.
BAD ORIGINAL
5. Anordnung nach Anspruch 4, dadurch gekennzeichnet, daß jedes Funktionselement aus einem 8:1-Multiplexer und acht UND-Glied/Setz-Verriegelungsschaltungen, die als Eingänge zum Multiplexer geschaltet sind, besteht.
6. Weich programmierbare Logikanordnung, gekennzeichnet durch
eine erste logische Stufe (Ebene) aus Funktionselementen, die jeweils logischeFunktionsausgänge als vorbestimmte logische Funktionen der Eingänge liefern, eine zweite Stufe aus mit der ersten Stufe verbundenen Funktionselementen zur Lieferung von jeweils logischen Funktionsausgängen, die vorbestimmte logische Funktionen der Eingänge sind,
eine dritte Stufe aus mit der zweiten Stufe verbundenen Flipflop-Durchlaßeinheiten zurDurchführung einer invertierenden, unverzögerten Durchlaß- oder einer Verriegelungsfunktion entsprechend einer vorbestimmten Funktion, eine vierte Stufe aus Funktionselementen, die zur Abnahme von Eingängen von der dritten Stufe der Flipflop-Durchlaßeinheiten geschaltet sind und jeweils logische Funktionsausgänge erzeugen, die vorbestimmte logische Funktionen der Eingänge sind,
eine fünfte Stufe aus mit der vierten Stufe verbundenen Flipflop-Durchlaßeinheiten zur Durchführung einer invertierenden, unverzögerten Durchlaß- oder einer Verriegelungsfunktion entsprechend einer vorbestimmten Funktion, eine sechste Stufe aus zur Abnahme von Eingängen von der vierten Stufe der Flipflop-Durchlaßeinheiten geschalteten Funktionselementen, die jeweils logische Funktionsausgänge als vorbestimmte logische Funktionen der Eingänge erzeugen,
eine siebte Stufe aus zur Abnahme von Dateneingängen von den sechsten Stufe geschalteten Flipflop-Durchlaßeinheiten
zur Durchführung einer invertierenden, unverzögerten Durchlaß- oder einer Verriegelungsfunktion entsprechend einer vorbestimmten Funktion,
eine zur Abnahme von Eingängen von dritter, fünfter und siebter Stufe der Flipflop-Durchlaßelemente geschaltete Ausgangfreigabestufe zur Lieferung eines Datenausgangs für die Logikanordnung und
eine mit allen Funktionselementen und Flipflop-Durchlaßeinheiten verbundene Steuereinheit zur Steuerung und Prüfung der Logikanordnung und zur Lieferung von Verriegelungseingängen zum Setzen aller Funktionselemente und Flipflop-Durchlaßeinheiten zwecks Durch- oder Ausführung einer vorbestimmten logischen Funktion.
7. Anordnung nach Anspruch 6, dadurch gekennzeichnet, daß jedes Funktionselement drei Dateneingänge, acht logische Steuereingänge und einen Datenausgang aufweist und aus einem 8:1-Multiplexer sowie acht UND-Glied/-Setz-Verriegelungsschaltungen als Eingängen zum Multiplexer besteht.
8. Weich programmierbare Logikanordnung, gekennzeichnet durch mehrere Logiksektoren, die jeweils unabhängige logische Eingänge und Ausgänge aufweisen, durch mehrere, jeweils einen Sektor bildende logische Stufen (Ebenen) aus Funktionselementen, wobei jede logische Stufe mit ihren Eingängen zur Abnahme von Dateneingangssignalen geschaltet ist und Datenausgangssignale liefert, die logische Gleichungen der Dateneingangssignale darstellen, wobei jedes Funktionselement mehrere Eingänge aufweist, die mit mindestens einem Ausgang verknüpft sind, so daß der Ausgang eine logische Funktion der Eingänge sein kann, und wobei die Funktionselemente eine der Zahl der möglichen Ausgangszustände äquivalente Zahl von Verriegelungseinheiten zum Halten einer logischen
BAD ORIGINAL
-δ-1
Anzeige des zugeordneten Ausgangszustands entsprechend der ausgeführten logischen Funktion aufweisen, durch eine Anzahl von Stufen von Flipflop-Durchlaßeinheiten mit zur Abnahme der Ausgänge von einer der logischen Stufen angeschlossenen Eingängen sowie an die Eingänge einer anderen der logischen Stufen und an den Ausgang des Sektors angeschlossenen Ausgängen, wobei diese Einheiten jeweils einen logischen Zustand zu invertieren
IQ und diesen ohne Verzögerung durchzulassen oder eine logische Funktion bis zur Freigabe zu verriegeln vermögen, abhängig von einer vorbestimmten, auszuführenden logischen Funktion, und
durch eine Steuereinheit für alle Sektoren, um alle Funktionselemente und Flipflop-Durchlaßeinheiten zur Ausführung vorbestimmter logischer Funktionen in jedem Sektor zu setzen.
9. Anordnung nach Anspruch 8, dadurch gekennzeichnet, daß jeder Sektor
eine erste Stufe (Ebene) von zur Abnahme von Dateneingangssignalen geschalteten logischen Elementen mit Eingängen zur Abnahme eines ersten Satzes logischer Signale zum Setzen der Verriegelungseinheiten der ersten Stufe logischer Elemente,
eine zweite Stufe von mit der ersten Stufe von logischen Elementen verbundenen logischen Elementen in Form von Funktionselementen mit Eingängen zur Abnahme eines zweiten Satzes logischer Signale zum Setzen der Verriegelungseinheiten der zweiten Stufe logischer Elemente, eine dritte Stufe aus Flipflop-Durchlaßeinheiten mit Eingängen zum Abnehmen eines dritten Satzes logischer Signale zum Setzen der Verriegelungseinheiten der Flipflop-Durchlaßeinheiten der dritten Stufe, eine vierte Stufe aus zur Abnahme von Eingängen von den Flipflop-Durchlaßeinheiten der dritten Stufe geschalteten
logischen Elementen mit Eingängen zur Abnahme eines vierten Satzes logischer Signale zum Setzen ihrer Verriegelungseinheiten,
eine fünfte Stufe von zur Abnahme von Eingängen von der vierten Stufe der logischen Elemente geschalteten Flipflop-Durchlaßeinheiten mit Eingängen zur Abnahme eines fünften Satzes logischer Signale zum Setzen ihrer Verriegelungseinheiten,
eine sechste Stufe aus zur Abnahme von Dateneingängen von den Flipflop-Durchlaßeinheiten der fünften Stufe geschalteten logischen Elementen mit Eingängen zur Abnahme eines sechsten Satzes logischer Signale zum Setzen ihrer Verriegelungseinheiten,
eine siebte Stufe von zur Abnahme von Dateneingängen von den logischen Elementen der sechsten Stufe geschalteten Flipflop-Durchlaßeinheiten mit Eingängen zur Abnahme eines siebten Satzes logischer Signale zum Setzen ihrer Verriegelungseinheiten
und eine achte Stufe von zur Abnahme von Eingängen von dritter, fünfter und siebter Stufe von Flipflop-Durchlaßelementen geschalteten Toren zur Lieferung von Datenausgangssignalen für die Logikanordnung und mit Eingängen zur Abnahme eines achten Satzes logischer Signale zum Setzen der Verriegelungseinheiten der Ausgangfreigabe-Tore umfaßt.
10. Anordnung nach Anspruch 9, dadurch gekennzeichnet, daß jedes Funktionselement drei Dateneingänge, acht logische Steuereingänge und einen Datenausgang aufweist und aus einem 8:1-Multiplexer sowie acht UND-Glied/Setz-Verriegelungsschaltungen als Eingängen zum Multiplexer besteht.
BAD ORIGINAL
11. Weich programmierbare Logikanordnung zur Durchführung einer vorbestimmten logischen Funktion an einer Dateneingangsfunktion, gekennzeichnet durch eine erste Stufe (Ebene) aus logischen Elementen jeweils in Form eines Funktionselements mit mehreren Dateneingang-Empfangsleitungen, mindestens einer Datenausgangsleitung und Mitteln zum Abnehmen und Verriegeln von für die auszuführende Funktion repräsentativen Steuersignalen und jeweils geschaltet zur Abnahme von Dateneingängen zum System und eines ersten Satzes logischer Signale zum Setzen der Verriegelungseinheiten (latches) dieser logischen Elemente,
durch eine zweite Stufe von mit den logischen Elementen der ersten Stufe verbundenen logischen Elementen in Form von Funktionselementen mit jeweils mehreren mit der ersten Stufe verbundenen Dateneingang-Empfangsleitungen, mindestens einer Datenausgangsleitung und Mitteln zum Abnehmen und Verriegeln von für die auszuführende Funktion repräsentativen Steuersignalen und jeweils geschaltet zur Abnahme von Dateneingängen zur zweiten Stufe und eines zweiten Satzes logischer Signale zum Setzen der Verriegelungselemente dieser logischen Elemente,
durch eine dritte Stufe von mit der zweiten Stufe verbundenen logischen Elementen aus Flipflop-Durchlaßeinheiten mit Mitteln zum Abnehmen und Verriegeln eines dritten Satzes logischer Signale zur Steuerung der von den Flipflop-Durchlaßeinheiten ausgeführten Funktion, durch eine vierte Stufe logischer Elemente jeweils in Form von Funktionselementen mit jeweils mehreren Dateneingang-Empfangsleitungen, mindestens einer Datenausgangsleitung und Mitteln zum Abnehmen und Verriegeln von für die auszuführende Funktion repräsentativen Steuer-Signalen und jeweils geschaltet zur Abnahme von Eingängen
von den Flipflop-Durchlaßeinheiten der dritten Stufe, sowie mit Mitteln zum Abnehmen und Verriegeln eines vierten Satzes logischer Signale zum Setzen der Verriegelungselemente dieser Funktionselemente zwecks Ausführung der vorbestimmten logischen Funktion,
durch eine fünfte Stufe von mit der vierten Stufe verbundenen logischen Elementen aus Flipflop-Durchlaßeinheiten mit Mitteln zum Abnehmen und Verriegeln eines fünften Satzes logischer Signale zur Steuerung der von diesen Einheiten ausgeführten Funktion, durch eine sechste Stufe logischer Elemente aus mit der fünften Stufe verbundenen Funktionselementen mit jeweils mehreren Dateneingangs-Empfangsleitungen, mindestens einer Datenausgangsleitung und Mitteln zum Abnehmen und Verriegeln von für die auszuführende Funktion repräsentativen Steuersignalen-, zur Abnahme von Dateneingängen von den Flipflop-Durchlaßeinheiten der fünften Stufe, und mit Mitteln zum Abnehmen eines sechsten Satzes von logisehen Signalen zum Setzen der Verriegelungselemente dieser Funktionselemente für die Ausführung der vorbestimmten logischen Funktionen,
durchweine siebte Stufe von mit der sechsten Stufe verbundenen logischen Elementen aus Flipflop-Durchlaßeinheiten mit jeweils einer Anzahl von Dateneingang-Empfangsleitungen, mindestens einer Datenausgangsleitung und Mitteln zum Abnehmen und Verriegeln von für die auszuführende vorbestimmte Funktion repräsentativen Steuersignalen und
durch eine Ausgangfreigab^tufe die zur Abnahme von Eingängen von dritter, fünfter und siebter Stufe der Flipflop-Durchlaßeinheiten geschaltet ist, um einen Datenausgang für die Logikanordnung zu liefern.
BAD ORIGINAL
12. Anordnung nach Anspruch 11, dadurch gekennzeichnet, daß jedes Funktionselement drei Dateneingänge, acht logische Steuereingänge und einen Datenausgang aufweist und aus einem 8:1-Multiplexer sowie acht UND-Glied/Setz-Verriegelungsschaltungen als Eingängen zum Multiplexer besteht.
13. Anordnung nach Anspruch 11, dadurch gekennzeichnet, daß eine Steuereinheit zur Lieferung eines Reihenflusses von Steuersignalen zur Eingabe in alle Verriegelungselemente der Funktionselemente sowie eines Flusses von Verriegelungs-Setzsteuersignalen, um das Setzen des betreffenden Verriegelung-Steuersignals im entsprechenden Verriegelungselement zu bewirken, vorgesehen ist.
14. Anordnung nach Anspruch 11, dadurch gekennzeichnet, daß eine Taktsteuereinheit zur Steuerung des Durchtastens der betreffenden Steuersignale zu den entsprechenden Funktionselementen in der Reihenfolge der logischen Stufen im Betrieb der Logikanordnung vorgesehen ist.
15. Anordnung nach Anspruch 11, dadurch gekennzeichnet, daß ein Zähler bei Eingang der einzelnen Steuersignale im Eingangs-Reihendatenfluß inkrementierbar ist und der Ausgangszählstand des Zählers die Adressierung der Funktionselemente steuert.
DE19833342354 1983-04-14 1983-11-23 Weich programmierbare logikanordnung Withdrawn DE3342354A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US48508083A 1983-04-14 1983-04-14

Publications (1)

Publication Number Publication Date
DE3342354A1 true DE3342354A1 (de) 1984-10-18

Family

ID=23926845

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19833342354 Withdrawn DE3342354A1 (de) 1983-04-14 1983-11-23 Weich programmierbare logikanordnung

Country Status (6)

Country Link
JP (1) JPS59200526A (de)
AU (1) AU567538B2 (de)
CA (1) CA1206534A (de)
DE (1) DE3342354A1 (de)
FR (1) FR2544523B1 (de)
GB (2) GB2138188B (de)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4551814A (en) * 1983-12-12 1985-11-05 Aerojet-General Corporation Functionally redundant logic network architectures
US4551815A (en) * 1983-12-12 1985-11-05 Aerojet-General Corporation Functionally redundant logic network architectures with logic selection means
US4870302A (en) * 1984-03-12 1989-09-26 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
US5023775A (en) * 1985-02-14 1991-06-11 Intel Corporation Software programmable logic array utilizing "and" and "or" gates
GB2171231B (en) * 1985-02-14 1989-11-01 Intel Corp Software programmable logic array
US4706216A (en) 1985-02-27 1987-11-10 Xilinx, Inc. Configurable logic element
GB2202355B (en) * 1985-02-27 1989-10-11 Xilinx Inc Configurable storage circuit
CA1326303C (en) * 1988-08-31 1994-01-18 Hideki Shutou Extended logical scale structure of a programmable logic array
GB8828828D0 (en) * 1988-12-09 1989-01-18 Pilkington Micro Electronics Semiconductor integrated circuit
IT1225638B (it) * 1988-12-28 1990-11-22 Sgs Thomson Microelectronics Dispositivo logico integrato come una rete di maglie di memorie distribuite
US5198705A (en) 1990-05-11 1993-03-30 Actel Corporation Logic module with configurable combinational and sequential blocks
US5936426A (en) 1997-02-03 1999-08-10 Actel Corporation Logic function module for field programmable array

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3912914A (en) * 1972-12-26 1975-10-14 Bell Telephone Labor Inc Programmable switching array
US4157589A (en) * 1977-09-09 1979-06-05 Gte Laboratories Incorporated Arithmetic logic apparatus
US4357678A (en) * 1979-12-26 1982-11-02 International Business Machines Corporation Programmable sequential logic array mechanism

Also Published As

Publication number Publication date
GB8605831D0 (en) 1986-04-16
GB2138188A (en) 1984-10-17
AU567538B2 (en) 1987-11-26
CA1206534A (en) 1986-06-24
GB8401927D0 (en) 1984-02-29
JPS59200526A (ja) 1984-11-13
GB2171826A (en) 1986-09-03
AU2420384A (en) 1984-10-18
FR2544523A1 (fr) 1984-10-19
GB2138188B (en) 1987-07-22
GB2171826B (en) 1987-07-22
FR2544523B1 (fr) 1990-02-09

Similar Documents

Publication Publication Date Title
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.
DE4417575C2 (de) Verbesserte Array-Architektur für programmierbare logische Zellen
EP0046499B1 (de) Schieberegister für Prüf- und Test-Zwecke
DE3787946T2 (de) Schaltung zum Kombinieren von Funktionen der Generatoren eines zyklischen redundanten Prüfungskodes und von Pseudo-Zufallszahlengeneratoren.
DE3854474T2 (de) Vorrichtung und verfahren zur übertragung von nachrichtenpaketen.
DE68914172T2 (de) Datenverarbeitungssystem und Videoverarbeitungssystem mit einem derartigen Datenverarbeitungssystem.
DE2755273C2 (de)
DE2019444A1 (de) Datenverarbeitungsanlage
DE69432200T2 (de) Als Zellenmatrix-Netzwerk organisiertes elektronisches System
DE3508640A1 (de) Computersystem zur implementierung eines ereignisgesteuerten simulationsalgorithmus
DE3342354A1 (de) Weich programmierbare logikanordnung
DE2825190C3 (de) Programmierbare logische Anordnung
EP0046500B1 (de) Schieberegister für Prüf- und Test-Zwecke
DE4010311C2 (de) Datenprozessor
DE1549478B1 (de) Gleitkomma-Rechenwerk zur schnellen Addition oder Subtraktion binaerer Operanden
DE3587446T2 (de) Signalverarbeitungsprozessor und hierarchische Multiverarbeitungstruktur mit mindestens einem solchen Prozessor.
DE3739993A1 (de) Peripherieschaltung fuer mikroprozessor
DE69026899T2 (de) Integriertes Halbleiterschaltungsgerät mit Prüfschaltung
DE3743586C2 (de)
DE3722907A1 (de) Maximallaengen-schieberegister-folgegenerator
DE3543471C1 (de) In integrierter Technik hergestellter Baustein zur Erstellung integrierter Schaltungen
DE60221515T2 (de) Speichersystem für schleifenbeschleunigung nach wunsch
DE2412634A1 (de) Kleinstrechenanlage
DE69513278T2 (de) Kombinierte pla- und pal-schaltung
DE2747304A1 (de) Einrichtung zur mikrobefehlssteuerung

Legal Events

Date Code Title Description
8128 New person/name/address of the agent

Representative=s name: HENKEL, G., DR.PHIL. FEILER, L., DR.RER.NAT. HAENZ

8141 Disposal/no request for examination