DE3603975A1 - SOFTWARE PROGRAMMABLE LOGIC ARRANGEMENT - Google Patents

SOFTWARE PROGRAMMABLE LOGIC ARRANGEMENT

Info

Publication number
DE3603975A1
DE3603975A1 DE19863603975 DE3603975A DE3603975A1 DE 3603975 A1 DE3603975 A1 DE 3603975A1 DE 19863603975 DE19863603975 DE 19863603975 DE 3603975 A DE3603975 A DE 3603975A DE 3603975 A1 DE3603975 A1 DE 3603975A1
Authority
DE
Germany
Prior art keywords
programmable
output
input
bits
gate
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
DE19863603975
Other languages
German (de)
Inventor
Mark Phoenix Ariz. Poret
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of DE3603975A1 publication Critical patent/DE3603975A1/en
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/177Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form
    • H03K19/17704Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns
    • H03K19/17708Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns using an AND matrix followed by an OR matrix, i.e. programmable logic arrays
    • H03K19/17712Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components arranged in matrix form the logic functions being realised by the interconnection of rows and columns using an AND matrix followed by an OR matrix, i.e. programmable logic arrays one of the matrices at least being reprogrammable

Landscapes

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

Description

PATENTANWÄLTE ZENZ & HELBER · D 43OO ESSEim 1 · AW\ RUHRSTEIN 1 · TEL.: (02 01) 4126PATENTANWÄLTE ZENZ & HELBER D 43OO ESSEim 1 AW \ RUHRSTEIN 1 TEL .: (02 01) 4126

Seite - fc- : 262 Page - fc- : 262

INTEL CORPORATION 3065 Bowers Avenue, Santa Clara, Kalifornien 95051, V.St.AINTEL CORPORATION 3065 Bowers Avenue, Santa Clara, California 95051, V.St.A.

Software-programmierbare LogikanordnungSoftware programmable logic arrangement

Programmierte Logikanordnungen, die häufig als PLA's bezeichnet werden, sind bekanntlich Schaltungen zur Erzeugung eines Satzes vorgegebener Ausgangssignale, deren Werte von den Werten der Eingangssignale der PLA abhängen. Nach dem Stande der Technik können gewöhnliche logische Verknüpfungsglieder, z.B. NAND-Gatter und/oder NOR-Gatter oder andere bekannte logische Matrixanordnungen zum Aufbau einer PLA verwendet werden. In alternativer Ausführung dienen nach dem Stande der Technik auch Festwertspeicher (ROM's) zum Aufbau von PLA's. Beispielsweise kann jede Adresse innerhalb eines ROM auf einen gewünschten Wert initiiert werden. Durch Anlegen geeigneter Signale auf die Adreßleitungen eines ROM kann ein spezieller Speicherplatz im ROM adressiert und sein Inhalt auf die Ausgangsleitungen des ROM gelegt werden. Selbstverständlich bleiben die einmal in die Speicherplätze des ROM geladenen Werte fest bzw. erhalten. Obwohl programmierbare ROM's (PROM's) bekannt und verfügbar sind, können sie während der normalen Betriebszyklen ihrer Natur nach nicht geändert werden. Um einen PROM umzuprogrammieren, ist es daher nötig, den PROM einer Umgebung auszusetzen, die sich wesentlich von derjenigen im normalen betrieblichen Einsatz des PROM's unterscheidet. So können PROM's beispielsweise UV-PROM's oder EE-PROM's sein,Programmed logic arrangements, often referred to as PLAs are known to be circuits for generating a set of predetermined output signals, the values of which depend on the values the input signals of the PLA. In the prior art, common logic gates, e.g. NAND gates and / or NOR gates or other known logic matrix arrangements can be used to build a PLA. In Alternatively, read-only memories (ROMs) are also used according to the state of the art to build PLAs. For example any address within a ROM can be initiated to a desired value. By creating suitable Signals on the address lines of a ROM can be addressed to a special memory location in the ROM and its content on the output lines of the ROM. Stay of course the values once loaded into the memory locations of the ROM are fixed or retained. Although programmable ROM's (PROM's) are known and available, their nature cannot be changed during normal operating cycles. Around To reprogram a PROM, it is therefore necessary to expose the PROM to an environment that is substantially different from that differs in normal operational use of the PROM. For example, PROMs can be UV-PROMs or EE-PROMs,

die durch ultraviolette Strahlung oder elektrisch löschbar sind. Um UV-PROM's neu zu programmieren, ist es notwendig, das Bauelement aus seiner normalen Betriebsumgebung herauszunehmen und in ein Gerät einzusetzen, das zum Programmieren des PROM's besonders geeignet ist. Die Umprogrammierung eines EE-PROM's bedingt Spannungen, die wesentlich höher als die in Logikschaltungen während des Normalbetriebs verwendeten Spannungen sind.which can be erased by ultraviolet radiation or electrically. To reprogram UV-PROMs, it is necessary to do the To take the component out of its normal operating environment and insert it into a device that is used to program the PROM is particularly suitable. The reprogramming of an EE-PROM requires voltages that are significantly higher than those in logic circuits voltages used during normal operation.

Obwohl PLA's außerordentlich zweckmäßige Anordnungen zur Erzeugung vorgegebener Ausgangssignale in Abhängigkeit von eingehenden Signalen sind, können sie aus den vorgenannten Gründen nicht für Anwendungen benutzt werden, bei denen vorgegebene Ausgangssignale dynamisch geändert werden müssen, und zwar bei demselben Satz von an der PLA anstehenden Eingangssignalen. Although PLA's are extraordinarily convenient arrangements for generating given output signals are dependent on incoming signals, they can for the reasons mentioned above are not used for applications in which predetermined output signals must be changed dynamically, namely with the same set of input signals pending at the PLA.

Selbstverständlich ist es möglich, eine PLA aufzubauen, welche alle möglichen Ausgangssignale liefert. Wenn beispielsweise ein PROM als PLA benutzt wird, können alle möglichen Ausgänge in einem Feld (array) von 2 Speicherplätzen geschaffen werden. Ausgenommen in den Fällen, in denen die Nutzung aller oder praktisch aller möglichen Ausgänge notwendig ist, wäre eine solche Anordnung bzw. ein solches Datenfeld äußerst ineffizient, da die meisten Plätze niemals zugegriffen werden. Außerdem wäre selbst bei einer Logikanordnung, die alle möglichen Ausgaben zu erzeugen vermag, die einer speziellen Dateneingabe zugeordnete Datenausgabe notwendigerweise stets dieselbe. Of course, it is possible to build a PLA that delivers all possible output signals. For example, if A PROM is used as a PLA, all possible outputs can be created in an array of 2 memory locations will. Except in cases in which the use of all or practically all possible exits is necessary such an arrangement or such a data field is extremely inefficient, since most places are never accessed. Also, even with a logic arrangement capable of producing all sorts of outputs, that would be that of a dedicated data entry assigned data output necessarily always the same.

/, Der Erfindung liegt daher die Aufgabe zugrunde, eine Software- -programmierbare Logikanordnung (SPLA) zur Verfügung zu stellen, die dynamisch programmierbar ist, um eine beliebige Kombination von vorgegebenen Ausgangssignalen bzw. Ausgaben aus/, The invention is therefore based on the object of providing a software - To provide programmable logic arrangement (SPLA) that is dynamically programmable to any combination from given output signals or outputs

jeder Kombination von gewünschten Eingaben bzw. Eingangssignalen zu erzeugen.to generate any combination of desired inputs or input signals.

Zu diesem Zweck sieht die Erfindung eine erste Ebene von programmierbaren Bits zur Erzeugung einer Vielzahl von UND-Termen vor, die in eine zweite Ebene von programmierbaren Bits zur Erzeugung einer Vielzahl von ODER-Termen eingegeben werden. Die ODER-Terme werden danach in eine dritte Ebene von programmierbaren Bits eingegeben, um eine Vielzahl von Ausgangssignalen bzw. Ausgaben mit jeweils einer gewünschten Polarität zu erzeugen.To this end, the invention envisages a first level of programmability Bits for generating a variety of AND terms, which are used in a second level of programmable bits Generating a variety of OR terms can be entered. The OR terms then become a third level of programmable Bits input to a variety of output signals or to generate outputs each with a desired polarity.

Zusätzlich zu den gewünschten Eingängen bzw. Eingaben für die SPLA, welche die vorgegebenen Ausgangssignale erzeugen, wird ein zweiter Satz von Eingängen bzw. Eingangssignalen vorgesehen, die nur während der Initiierung der SPLA zum Programmieren jedes programmierbaren Bit verfügbar sind, damit die vorgegebenen Ausgangssignale in der gewünschten Weise erzeugt werden können. Der zweite Satz von Eingaben bzw. Eingangssignalen wird dadurch erzeugt, daß die gewünschten Adressen und Daten an einen Adreß/Daten-Bus angelegt werden und daß die Adressen derart dekodiert werden, daß jedes programmierbare Bit durch die Daten auf dem Bus geeignet adressiert und in einen gewünschten Zustand gesetzt werden kann, damit jedes programmierbare Bit auf der Basis einer vorgegebenen Eingabe ein gewünschtes vorgegebenes Ausgangssignal erzeugt. Insbesondere ist in der ÜND-Ebene jedes programmierbare Bit so programmiert, daß es selektiv ausgeben kann: eine "0" unabhängig von seinem Eingang; eine "1" unabhängig von seinem Eingang; einen Ausgang entsprechend seinem Eingang, d.h. ein "0" Eingang führt zu einem "0" Ausgang und ein "1" Eingang führt zu einem "1" Ausgang; oder den Inversionswert seines Eingangs. In der ODER-Ebene ist jedes programmierbare Bit so programmiert, daß es ausgibt: eine "0" unabhängig von seinem Eingang; oderIn addition to the desired inputs or inputs for the SPLA, which generate the specified output signals, a second set of inputs or input signals are provided which are only used for programming during the initiation of the SPLA each programmable bit are available to generate the predetermined output signals in the desired manner can be. The second set of inputs or input signals is generated by adding the desired addresses and Data are applied to an address / data bus and that the addresses are decoded so that each programmable Bit can be appropriately addressed by the data on the bus and set to a desired state so that each programmable bit generates a desired predetermined output signal based on a predetermined input. In particular every programmable bit on the ÜND level is programmed in such a way that it can selectively output: a "0" is independent from its entrance; a "1" regardless of its input; an output corresponding to its input, i.e. a "0" input leads to a "0" output and a "1" input leads to a "1" output; or the inversion value of its input. In At the OR level, each programmable bit is programmed to output: a "0" regardless of its input; or

einen Ausgang entsprechend seinem Eingang, d.h. ein "O" Eingang führt zu einem "O" Ausgang und ein "1" Eingang führt zu
einem "1" Ausgang. In der dritten, d.h. Ausgangsebene ist
jedes programmierbare Bit so programmiert, daß es seinen Eingang oder den Inversionswert seines Eingangs ausgibt.
an output corresponding to its input, ie an "O" input leads to an "O" output and a "1" input leads to
a "1" output. In the third, ie starting level, is
each programmable bit is programmed to output its input or the inversion value of its input.

Im folgenden wird die Erfindung anhand eines in der Zeichnung schematisch dargestellten Ausführungsbeispielen näher erläutert. In der Zeichnung zeigen:In the following, the invention is explained in more detail with reference to an exemplary embodiment shown schematically in the drawing. In the drawing show:

Fig. 1 ein Blockdiagramm mit den verschiedenen Elementen einer SPLA nach der Erfindung;Fig. 1 is a block diagram showing the various elements of an SPLA according to the invention;

Fig. 2 ein Logikschaltbild eines einzigen programmierbaren Bit in einem UND-Term;Figure 2 is a logic diagram of a single programmable bit in an AND term;

Fig. 3 ein Blockschaltbild mehrerer programmierbarer
Bits der in Fig. 2 veranschaulichten Art, die
zur Bildung eines UND-Terms verknüpft sind;
3 shows a block diagram of several programmable ones
Bits of the type illustrated in Figure 2, which
are linked to form an AND term;

Fig. 4 ein Logikschaltbild mit einem einzigen programmierbaren Bit eines ODER-Terms;Fig. 4 is a logic diagram showing a single programmable bit of an OR term;

Fig. 5 ein Blockschaltbild mit mehreren programmierbaren Bits der in Fig. 4 gezeigten Art, die zur
Erzeugung eines einzigen ODER-Terms kombiniert
sind; und
FIG. 5 is a block diagram with a plurality of programmable bits of the type shown in FIG. 4 which are used for
Creation of a single OR term combined
are; and

Fig. 6 ein Logikschaltbild eines programmierbaren Bits eines Ausgangsterms.6 is a logic diagram of a programmable bit of an output term.

Beschrieben wird eine Software-programmierbare Logikanordnung (SPLA) zur Erzeugung einer Vielzahl vorgegebener Ausgaben auf der Basis der Werte von gewünschten Eingängen bzw. EingabenA software-programmable logic arrangement is described (SPLA) for generating a variety of predetermined outputs based on the values of desired inputs

'0''0'

derart, daß der Ausgang oder die Ausgabe für einen vorgegebenen Eingang bzw. eine vorgegebene Eingabe dynamisch programmiert werden kann, ohne daß die SPLA aus der Schaltung und der Umgebung, in denen sie verwendet wird, entfernt wird.such that the output or output is dynamically programmed for a given input or input, respectively without removing the SPLA from the circuit and the environment in which it will be used.

In der folgenden Beschreibung werden zahlreiche Einzelheiten, z.B. spezielle Wort- oder Termlängen usw. angegeben, um das Verständnis für die vorliegende Erfindung zu vertiefen. Andererseits ist es für den Fachmann klar, daß die Erfindung auch ohne solche speziellen Einzelheiten realisierbar ist. In anderen Fällen sind bekannte Schaltungen nur als Blockschaltbild gezeigt, um das Wesen der Erfindung nicht mit unnötigen Einzelheiten zu belasten. Zum überwiegenden Teil sind Einzelheiten bezüglich der Zeitgabe o.dgl. fortgelassen worden, da diese Details für die Erläuterung der vorliegenden Erfindung nicht erforderlich sind und den auf dem vorliegenden Sachgebiet tätigen Fachleuten ohnehin bekannt sind.In the following description, numerous details, e.g. special word or term lengths etc., are given in order to obtain the To deepen understanding of the present invention. On the other hand, it is clear to the person skilled in the art that the invention also can be realized without such special details. In other cases, known circuits are only shown as a block diagram shown in order not to overload the essence of the invention with unnecessary details. For the most part, details are regarding timing or the like. has been omitted as these details are used to explain the present invention are not required and are already known to those skilled in the art.

Im folgenden wird auf Fig. 1 Bezug genommen. Die dort gezeigte SPLA 11 weist eine M Bit breite ÜND-Ebene 13 auf, der Eingänge 0 bis L durch Latches bzw. Verriegelungsschaltungen 15 eingeblendet (latched) werden. Die Einblendung des Eingangs 0 bis L findet natürlich auf der Basis eines vorgegebenen Taktgabesignals (nicht dargestellt) statt. Die Ausgangssignale aus der UND-Ebene werden danach in eine N-Bit breite ODER-Ebene 17 eingegeben. In diesem Zusammenhang sei darauf hingewiesen, daß M und N die Anzahl von UND-Termen bzw. ODER-Termen in der UND-Ebene 13 bzw. ODER-Ebene 17 bezeichnen. M und N können irgendeine Zahl größer oder gleich 1 sein. In der Praxis liegen M und N gewöhnlich im Bereich zwischen 8 und 32 Bits Breite. Es ist einzusehen, daß die Anzahl von programmierbaren Bits innerhalb der UND-Ebene 13 L*M und die Anzahl von programmierbaren Bits in der ODER-Ebene 17 M*N ist. Die von der ODER-Ebene 17 erzeugten ODER-Terme werden dann in die Aus-Reference is made to FIG. 1 below. The SPLA 11 shown there has an M-bit wide UND level 13, the inputs 0 to L are faded in (latched) by latches or locking circuits 15. The display of the input 0 to L naturally takes place on the basis of a predetermined timing signal (not shown). The output signals from the AND levels are then entered into an N-bit wide OR level 17. In this context it should be noted that M and N denote the number of AND terms and OR terms in AND level 13 and OR level 17, respectively. M and N can be any number greater than or equal to 1. In practice, M and N usually range between 8 and 32 bits wide. It will be appreciated that the number of programmable bits within the AND level is 13 L * M and the number of programmable Bits in the OR plane 17 is M * N. The OR terms generated by the OR level 17 are then

gangspolarität-Auswahlebene 21 eingegeben, deren Ausgang von einem Ausgangslatch und Register 23 festgehalten wird, wobei das Ausgangslatch und Register das SPLA-Ausgangssignal einfach solange speichert, wie das Ausgangssignal von der Schaltung, in der die PLA implementiert ist, benötigt wird oder akzeptiert werden kann.input polarity selection level 21, the output of which is from an output latch and register 23, the output latch and register simply the SPLA output stores as long as the output signal from the circuit in which the PLA is implemented is needed or accepted can be.

Ebenfalls in Fig. 1 gezeigt sind eine SPLA-Register-Dekodierschaltung 39, ein Bus 33, SPLA I/O Treiber 35 und Adreßspeicher 37, die jeweils in Verbindung mit der SPLA weiter unten beschrieben werden. Obwohl diese Komponenten für die Funktion der SPLA notwendig sind, bilden sie selbst keinen an sich neuen Bestandteil der Erfindung.Also shown in Figure 1 is a SPLA register decoder circuit 39, a bus 33, SPLA I / O driver 35 and address memory 37, each in connection with the SPLA below to be discribed. Although these components are necessary for the SPLA to function, they do not in themselves constitute one new component of the invention.

Unter Bezugnahme auf Fig. 2 wird im folgenden die Konstruktion eines einzigen programmierbaren Bit 31 innerhalb der UND-Ebene 13 beschrieben. Funktionell wird das programmierbare Bit 31 programmiert, um ein Ausgangssignal zu erzeugen, das: gleich dem Eingangssignal; gleich dem Inversionswert des Eingangssignals; eine "0" unabhängig vom Eingangssignal; oder eine "1" ist, unabhängig vom Eingangssignal. Diese Funktion wird durch Programmierung des Bits vor dem Anlegen eines der Eingangssignale 0-L an das programmierbare Bit erreicht. Insbesondere werden unter Bezugnahme auf Fig. 1 die programmierbaren Bits in der UND-Ebene dadurch programmiert, daß eine Adresse und Daten an den Bus 3 3 angelegt werden, wobei die Adresse auf dem Bus die Adresse eines speziellen UND-Terms ist, in welchem ein programmierbares Bit 31 angeordnet ist, und die Daten auf dem Bus eine Folge von Nullen und Einsen sind, je nachdem, ob eine "0" oder "1" an ein spezielles Eingabe-Ansteuerregister, d.h. Flipflop 43 oder 45 innerhalb des programmierbaren Bits des adressierten UND-Terms, angelegt werden soll. Eine Adresse auf dem Bus 33, bestimmt durch geeignete Taktsignale (nicht gezeigt), wird von Adreßspeichern (address latches) 37 festge-Referring to Fig. 2, the following is the construction of a single programmable bit 31 within the AND plane 13 described. Functionally, the programmable bit 31 is programmed to produce an output signal that is: equal to the input signal; equal to the inversion value of the input signal; a "0" regardless of the input signal; or a "1" is independent of the input signal. This function is activated by programming the bit before applying one of the input signals 0-L reached on the programmable bit. In particular, referring to FIG. 1, the programmable bits programmed in the AND level in that an address and data are applied to the bus 3 3, the address on the Bus is the address of a special AND term in which a programmable bit 31 is arranged, and the data on the Bus are a sequence of zeros and ones, depending on whether a "0" or "1" is sent to a special input drive register, i. Flip-flop 43 or 45 within the programmable bit of the addressed AND term is to be applied. An address on the bus 33, determined by suitable clock signals (not shown), is fixed by address latches 37

halten bzw. gespeichert. Die festgehaltene^ Adresse wird dann in die SPLA-Register-Dekodierschaltung 3 9 eingegeben, welche die Adresse dekodiert und geeignete Signale auf die Leitung gibt, um die Programmierung der entsprechenden programmierbaren Bits in der UND-Ebene 13 mit den auf dem Bus 33 anstehenden Daten zu ermöglichen. Nach der Adressierung der gewünschten programmierbaren Bits werden Daten auf den Bus 33 gegeben, um die adressierten programmierbaren Bits in eine gewünschte Konfiguration zu setzen. Die Daten auf dem Bus 33 werden dann in die adressierten programmierbaren Bits in der UND-Ebene 13 von dem SPLA I/O-Treiber 35 eingegeben, und die adressierten programmierbaren Bits werden sodann in der gewünschten Weise rekonfiguriert. In ähnlicher Weise können programmierbare Bits innerhalb der ODER-Ebene 17 oder der Ausgangspolarität-Auswahlebene 21 adressiert und rekonfiguriert wird.hold or saved. The recorded ^ address is then is input to the SPLA register decoding circuit 3 9, which the address is decoded and appropriate signals are sent to the programming of the corresponding programmable To enable bits in the AND level 13 with the data pending on the bus 33. After addressing the desired programmable bits, data are placed on bus 33 to convert the addressed programmable bits into a desired one To set configuration. The data on bus 33 is then addressed in the addressed programmable bits in AND level 13 entered by the SPLA I / O driver 35, and the addressed programmable bits are then reconfigured as desired. Similarly, programmable bits can be used within the OR level 17 or the output polarity selection level 21 is addressed and reconfigured.

Bus 33, SPLA I/O-Treiber 35, Adreßspeicher 37 und SPLA-Register-Dekodierschaltung 39 können nach bekannten Konstruktionskriterien für derartige Schaltungen implementiert werden; Einzelheiten hierüber werden im Rahmen der vorliegenden Anmeldung nicht erläutert, da sie dem Fachmann auf dem einschlägigen Sachgebiet bekannt sind und weitgehend von dem zur Erzeugung der Daten und Adreßsignale verwendeten Prozessor abhängig sind. Wenn erwünscht, können besondere programmierbare Bits innerhalb der SPLA durch Adressieren der gewünschten Bits über die SPLA-Register-Dekodierschaltung 39 und Setzen der RD/WR Steuerleitung 38 gelesen werden, wobei der Dekodierer 39 und der Treiber 35 instruiert werden, daß eine Leseoperation stattfindet. In diesem Falle werden die Ausgangssignale von den adressierten programmierbaren Bits an den Bus 33 zur nachfolgenden Verarbeitung angelegt.Bus 33, SPLA I / O driver 35, address memory 37 and SPLA register decoder circuit 39 can be implemented according to known design criteria for such circuits; Details about this are not explained in the context of the present application, since the person skilled in the art is familiar with the relevant Subject area are known and largely dependent on the processor used to generate the data and address signals are. If desired, specific programmable bits can be set within the SPLA by addressing the desired bits via the SPLA register decoding circuit 39 and setting the RD / WR control line 38 are read, the decoder 39 and the driver 35 can be instructed that a read operation is occurring. In this case the output signals from the addressed programmable bits are applied to bus 33 for subsequent processing.

Es sei beispielsweise angenommen, daß ein spezielles programmierbares Bit 31 dadurch programmiert wird, daß eine "1" anFor example, assume that a particular programmable Bit 31 is programmed by displaying a "1"

den der Leitung 41 zugeordneten Eingang zum Flipflop 43 und eine "1" an den zur Leitung 42 gehörigen Eingang des Flipflops 45 angelegt wird. Auf diese Weise sorgen die Ausgänge 47 und 49 der Flipflops 4 3 bzw. 45 dafür, daß ein Eingangssignal der UND-Gatter 53 und 57 "1" wird. Wenn jetzt eine "0" an die Eingangsleitung 51 angelegt wird, so werden die Eingänge am UND-Gatter 53 "1" und "0", so daß ein Eingang am ODER-Gatter 59 zu einer "0" wird. Da jedoch der "0" Eingang auf der Leitung 51 vom Inverter 55 invertiert wird, werden beide Eingangssignale am UND-Gatter 57 zu "1", und daher wird der andere Eingang zum ODER-Gatter 59 mit "1" beaufschlagt, und der Ausgang des programmierbaren Bit 31 wird daher eine "1". Ähnliches gilt für den Fall, daß am Eingang der Leitung 51 eine "1" ansteht. Die beiden Eingänge zum UND-Gatter 5 3 werden "1 wodurch einer der Eingänge des ODER-Gatters 5 9 "1" wird und dessen Ausgang daher "1" wird. In dieser Konfiguration gibt daher das programmierbare Bit 31 eine "1" aus, unabhängig davon, ob eine "0" oder "1" eingegeben wird.the input to the flip-flop 43 assigned to the line 41 and a "1" to the input of the flip-flop belonging to the line 42 45 is created. In this way, the outputs 47 and 49 of the flip-flops 4 3 and 45 ensure that an input signal of the AND gates 53 and 57 become "1". If a "0" is now applied to the input line 51, the inputs are on AND gate 53 "1" and "0" so that an input to OR gate 59 becomes a "0". However, since the "0" input on the line 51 is inverted by the inverter 55, both inputs to the AND gate 57 become "1" and therefore the other becomes The input to the OR gate 59 has a "1" applied to it, and the output of the programmable bit 31 therefore becomes a "1". Something like that applies in the event that a "1" is present at the input of line 51. The two inputs to the AND gate 5 3 become "1 whereby one of the inputs of the OR gate 5 9 becomes "1" and its output therefore becomes "1". In this configuration there therefore the programmable bit 31 outputs a "1", regardless of whether a "0" or "1" is entered.

Wenn auf beiden Leitungen 41 und 42 zu den Flipflops 43 und eine "0" ansteht, sind die Ausgänge der Flipflops an den Leitungen 47 und 49 "0", und daher sind die Ausgänge der UND-Gatter 53 und 5 7 unabhängig von der Eingabe auf der Leitung 51 stets "0". Die Eingänge zum ODER-Gatter 59 sind daher "0", und das Ausgangssignal des ODER-Gatters 5 9 ist dementsprechend auch "0".If there is a "0" on both lines 41 and 42 to flip-flops 43 and, the outputs of the flip-flops are on the lines 47 and 49 are "0" and therefore the outputs of AND gates 53 and 57 are independent of the input on line 51 always "0". The inputs to the OR gate 59 are therefore "0" and the output of the OR gate 59 is accordingly also "0".

Wenn das programmierbare Bit 31 derart programmiert wird, daß eine "1" auf die Leitung 41 gegeben und eine "0" auf die Leitung 42 gegeben wird, so ist das Ausgangssignal des UND-Gatters 53 stets das gleiche wie das Eingangssignal auf der Leitung 51, und das Ausgangssignal des UND-Gatters 57 ist stets eine "0". Auf diese Weise ist das Ausgangssignal des ODER-Gatters 59 stets das gleiche wie das Eingangssignal auf der Ein-When programmable bit 31 is programmed to put a "1" on line 41 and a "0" on line 42 is given, the output signal of the AND gate 53 is always the same as the input signal on the line 51, and the output signal of the AND gate 57 is always a "0". That way is the output of the OR gate 59 always the same as the input signal on the input

gabeleitung 51.fork line 51.

Wenn das programmierbare Bit 31 so programmiert wird, daß eine "0" auf die Leitung 41 und eine "1" auf die Leitung 42 gegeben wird, so wird nur der Umkehrwert des Eingangssignals auf der Leitung 51 (d.h. das Ausgangssignal des Inverters 55) dem ODER-Gatter 59 eingegeben, während der andere Eingang stets auf "0" bleibt. Auf dieser Weise ist das Ausgangssignal des programmierbaren Bits stets der Umkehrwert des Eingabesignals auf der Leitung 51. Die folgende Tabelle faßt die möglichen Konfigurationen und Ausgangssignale eines speziellen programmierbaren Bit 31 zusammen:When programmable bit 31 is programmed to put a "0" on line 41 and a "1" on line 42 only the inverse of the input signal on line 51 (i.e. the output of inverter 55) becomes dem OR gate 59 is input while the other input always remains at "0". In this way the output of the programmable bits are always the inverse value of the input signal on line 51. The following table summarizes the possible Configurations and output signals of a special programmable bit 31 together:

Leitung 51 Flipflop 43 Flipflop 45 ODER-Gatter 59Line 51 flip-flop 43 flip-flop 45 OR gate 59

Eingabe Q-Ausgang Q-Ausgang AusgangInput Q output Q output Output

0 0 0 0 0 0 11 0 1 0 0 0 1 1 1 10 0 0 10 100 0 0 0 0 0 11 0 1 0 0 0 1 1 1 10 0 0 10 10

1 Γ ο 11 Γ ο 1

11111111

Selbstverständlich wird jedes der Eingangssignale 0 bis L einem anderen programmierbaren Bit für jeden UND-Term eingegeben. Im folgenden wird auf Fig. 3 Bezug genommen. Durch UND-Verknüpfung der Gruppe von programmierbaren Bits für jedes der Eingangssignale 0 bis L wird ein einziger UND-Term am Ausgang des UND-Gatters 61 erzeugt. Durch Anlegen der Eingangssignale 0 bis L an eine zweite Gruppe von programmierbaren Bits 31, deren Ausgänge ebenfalls UND-verknüpft sind, wirdOf course, each of the input signals 0 through L is input to a different programmable bit for each AND term. Reference is made to FIG. 3 below. By ANDing the group of programmable bits for each of the input signals 0 to L, a single AND term is generated at the output of the AND gate 61. By applying the input signals 0 to L to a second group of programmable bits 31, the outputs of which are also linked by AND

1010

-/IS.- / IS.

ein zweiter UND-Term erzeugt. In ähnlicher Weise können ebenfalls dritte, vierte, fünfte usw. bis M UND-Terme vorgesehen sein. Daher werden in einer M-Bit breiten bzw. großen UND-Ebene M UND-Terme ausgegeben.a second AND term is generated. Similarly, third, fourth, fifth, etc. through M AND terms can also be provided be. Therefore, M AND terms are output in an M-bit wide or large AND plane.

In Fig. 4 ist ein einziges programmierbares Bit 65 der ODER-Ebene 17 gezeigt. Selbstverständlich gibt es für jeden Pegel der ODER-Ebene ein einziges programmierbares Bit 65 in Zuordnung zu jedem von 0 bis M Eingängen, die die 0 bis M UND-Terme aus der UND-Ebene 13 enthalten. Jedes programmierbare Bit 6 5 weist ein Flipflop 6 7 auf, dessen Q-Ausgang einen Eingang zu einem UND-Gatter 69 darstellt. Der andere Eingang zum UND-Gatter 6 9 ist einer der Eingänge 0 bis M. Durch Programmierung jedes programmierbaren Bits 65 derart, daß der Q-Ausgang des Flipflops 67 entweder eine "1" oder eine "0" ist, wird der Ausgang jedes programmierbaren Bits 65 entweder gleich dem Eingang auf der Leitung 68, wenn der "Q-Ausgang eine "1" ist, oder eine "0", wenn der "^-Ausgang eine "0" ist.A single programmable bit 65 of the OR level 17 is shown in FIG. Of course there is for everyone Level of the OR level a single programmable bit 65 assigned to each of 0 to M inputs, which are 0 to M. AND terms from AND level 13 contain. Any programmable Bit 6 5 has a flip-flop 6 7, the Q output of which represents an input to an AND gate 69. The other entrance to AND gate 6 9 is one of the inputs 0 to M. By programming each programmable bit 65 such that the Q output of flip-flop 67 is either a "1" or a "0", the output of each programmable bit 65 becomes either a "1" or a "0" equal to the input on line 68 if the "Q output is a" 1 "or a" 0 "if the" ^ output is a "0".

Im folgenden wird auf Fig. 5 Bezug genommen. Wie im Falle der UND-Terme wird durch ODER-Verknüpfung der Ausgänge der programmierbaren Bits 65 für jedes der UND-Terme 0 bis M durch ODER-Gatter 70 ein einziger ODER-Term ausgegeben. Durch Anlegen der UND-Terme 0 bis M an einen zweiten Satz von programmierbaren Bits 65, deren Ausgänge ihrerseits .ODER-verknüpft sind, wird ein zweiter ODER-Term erzeugt. In ähnlicher Weise werden dritte, vierte und fünfte usw. bis N ODER-Terme ebenfalls vorgesehen. Daher werden in einer N-Bit breiten ODER-Ebene N ODER-Terme ausgeben.Reference is made to FIG. 5 below. As in the case of the AND terms, ORing the outputs of the programmable Bits 65 for each of AND terms 0 through M through OR gate 70 output a single OR term. By investing the AND terms 0 to M to a second set of programmable bits 65, the outputs of which are in turn .OR-linked a second OR term is generated. Similarly, third, fourth, and fifth, etc. through N become OR terms as well intended. Therefore, N OR terms are output in an N-bit wide OR plane.

Jeder der ODER-Terme wird sodann in die Ausgangspolarität-Auswahlebene 21 eingegeben, welche N programmierbare Bits 71 entsprechend demjenigen gemäß Fig. 6 enthält. Jedes der programmierbaren Bits ist derart vorprogrammiert, daß sein Aus-Each of the OR terms is then entered into the output polarity selection level 21, which contains N programmable bits 71 corresponding to that of FIG. Any of the programmable Bits is preprogrammed in such a way that its

1111th

gang entweder gleich dem eingegebenen ODER-Term oder gleich dessen Inversionswert ist. Wenn die programmierbaren Bits 71 dadurch programmiert werden, daß eine" 1" auf Leitung 73, d.h. den Eingang des Flipflops 75 gegeben wird, wird der Q-Ausgang auf "1" gesetzt und in das UND-Gatter 77 eingegeben und der (2-Ausgang wird "0" und in das UND-Gatter 79 eingegeben. Wenn jetzt der eingegebene ODER-Term auf der Leitung 81 eine "1" ist, so wird das Ausgangssignal des UND-Gatters 7 7 eine "1" und das Ausgangssignal des UND-Gatters 79 eine "0". Da ein "1" Eingang und "0" Eingang am ODER-Gatter 85 anstehen, ergibt sich ein Ausgangsterm von "1" bzw. das gleiche Ausgangssignal wie der Eingabeterm. Wenn eine "0" auf die Leitung 81 gegeben wird, so ist in ähnlicher Weise ein Eingang jedes der UND-Gatter 77 und 79 eine "0", die beiden Eingänge zum ODER-Gatter werden "0", und der Ausgang ist daher eine "0" oder der gleiche wie der eingegebene ODER-Term auf der Leitung 81.gear is either the same as the entered OR term or its inversion value. If the programmable bits 71 programmed by putting a "1" on line 73, i.e. the input of flip-flop 75, becomes the Q output is set to "1" and input to AND gate 77 and the (2 output becomes "0" and input to AND gate 79. If now the input OR term on the line 81 is a "1", the output signal of the AND gate 7 7 is a "1" and the output of AND gate 79 is a "0". Since a "1" input and a "0" input are pending at the OR gate 85, the result an output term of "1" or the same output signal as the input term. If a "0" is given on line 81 is, then one input of each of AND gates 77 and 79 is a "0" in a similar manner, the two inputs to the OR gate become "0" and the output is therefore a "0" or the same as the input OR term on line 81.

Wenn das Flipflop 76 jedoch durch eine "0" auf der Leitung 73 rückgesetzt ist, so ist der Q*-Ausgang zum UND-Gatter 79 eine "1" und der Q-Ausgang zum UND-Gatter 77 wird zu einer "0". Auf diese Weise wird jedes Eingangssignal auf der Leitung 81 vom Inverter 83 invertiert, und der Ausgang vom UND-Gatter 79 ergibt in Kombination mit dem "0" Ausgang vom UND-Gatter 77 im ODER-Gatter 85 eine Ausgabe des Inversionswertes des über die Leitung 81 zugeführten Eingangssignals.However, when flip-flop 76 is reset by a "0" on line 73, the Q * output to AND gate 79 is one "1" and the Q output to AND gate 77 becomes a "0". In this way, any input signal on line 81 is from Inverter 83 inverts and the output from AND gate 79 in combination with the "0" output from AND gate 77 results in im OR gate 85 an output of the inversion value of the input signal fed via line 81.

Im folgenden wird auf Fig. 1 erneut Bezug genommen. Je nach Programmierung der Ausgangspolarität-Auswahlebene 21 wird jeder der N ODER-Terme aus der ODER-Ebene 17 wie der Eingabewert oder wie dessen Kehrwert ausgegeben. Der Ausgabespeicher und Register 23 hält in Abhängigkeit von einem Signal auf der Leitung 85, erzeugt durch den Dekodierer 39, danach jeden der N ODER-Terme, bis er von derjenigen Schaltung gebraucht wird, in der die SPLA implementiert ist, oder bis er durch einenReference is again made to FIG. 1 below. Depending on the programming of the output polarity selection level 21 each of the N OR terms from the OR level 17 is output as the input value or as its reciprocal value. The output memory and register 23 holds each of the following in response to a signal on line 85 generated by decoder 39 N OR terms until needed by the circuit in which the SPLA is implemented or until it is replaced by a

1212th

nachfolgenden Satz von Ausgängen ersetzt wird.subsequent set of outputs is replaced.

Zu beachten ist, daß die zuvor beschriebene SPLA mit nur einer Ebene, nämlich einer UND-Ebene, einer ODER-Ebene oder einer Ausgangspolarität-Auswahlebene ebenso wie mit einer beliebigen Kombination dieser drei Ebenen implementiert werden kann. In ähnlicher Weise können die UND-Terme und ODER-Terme als NAND-Terme und/oder NOR-Terme im Rahmen der Erfindung implementiert werden. Zusätzlich können die programmierbaren Bits, die in der UND-Ebene, ODER-Ebene und Ausgangspolarität-Auswahlebene verwendet werden, unter Verwendung anderer Kombinationen von Flipflops, Gattern, Invertern und anderen Komponenten als die zuvor beschriebenen implementiert werden.It should be noted that the SPLA described above with only one level, namely an AND level, an OR level or a Output polarity selection level as well as can be implemented with any combination of these three levels. In Similarly, the AND terms and OR terms can be implemented as NAND terms and / or NOR terms within the scope of the invention will. In addition, the programmable bits can be used in the AND level, OR level and output polarity selection level using other combinations of flip-flops, gates, inverters, and other components than those previously described.

- Leerseite -- blank page -

Claims (12)

PATENTANWÄLTE ZENZ & HELBER ■ D 4300 ESSEN t, · AM R1JHRSTEIN 1 · TEL.:(O2O1) 412687 ^ INTEL CORPORATION PatentansprüchePATENTANWÄLTE ZENZ & HELBER ■ D 4300 ESSEN t, · AM R1JHRSTEIN 1 · TEL.:(O2O1) 412687 ^ INTEL CORPORATION claims 1. Software-programmierbare Logikanordnung,
dadurch gekennzeichnet ,
1. software programmable logic arrangement,
characterized ,
daß eine erste Anzahl programmierbarer Bits (31) vorgesehen
ist, von denen jedes dynamisch derart programmierbar ist, daß es selektiv die folgenden Ausgangszustände erzeugt:
that a first number of programmable bits (31) are provided
each of which is dynamically programmable to selectively produce the following output states:
"0" unabhängig von einer Eingabe "0" oder "1";"0" regardless of an input "0" or "1"; "1" unabhängig von einer Eingabe "0" oder "1";"1" regardless of an entry "0" or "1"; "0" bei einer Eingabe "0" und 1M" bei einer Eingabe "1"; oder"0" for an entry "0" and 1 M "for an entry" 1 "; or "1" bei einer Eingabe "0" und "0" bei einer Eingabe "1", und daß die Ausgänge jedes der programmierbaren Bits (31) zur Erzeugung eines UND-Terms miteinander UND-verknüpft sind."1" for an input of "0" and "0" for an input of "1", and that the outputs of each of the programmable bits (31) for Generation of an AND term are AND-linked with each other.
2. Programmierbare Logikanordnung nach Anspruch 1, dadurch
gekennzeichnet, daß wenigstens eine zweite Anzahl von programmierbaren Bits mit den Eingaben beaufschlagbar ist und daß die Ausgänge jedes der zweiten Anzahl programmierbarer Bits zur
Bildung wenigstens eines zweiten UND-Terms miteinander
UND-verknüpft sind.
2. Programmable logic arrangement according to claim 1, characterized
characterized in that at least a second number of programmable bits can be applied to the inputs and that the outputs of each of the second number of programmable bits for
Formation of at least one second AND term with one another
Are AND-linked.
3. Software-programmierbare Logikanordnung, dadurch gekennzeichnet, daß eine erste Anzahl programmierbarer Bits (65)
vorgesehen ist, von denen jedes dynamisch derart programmierbar ist, daß es selektiv die folgenden Ausgangssignale erzeugt:
3. Software-programmable logic arrangement, characterized in that a first number of programmable bits (65)
each of which is dynamically programmable to selectively generate the following output signals:
"0" bei einer Eingabe "1" und "0" bei einer Eingabe "0";"0" for an entry "1" and "0" for an entry "0"; "1" bei einer Eingabe "1" und "0" bei einer Eingabe "0", und daß die Ausgänge jedes der programmierbaren Bits (65) zur Erzeugung eines ODER-Terms miteinander ODER-verknüpft sind (70)."1" when entering "1" and "0" when entering "0", and in that the outputs of each of the programmable bits (65) are ORed together to produce an OR term (70).
4. Programmierbare Logikanordnung nach Anspruch 3, dadurch gekennzeichnet, daß wenigstens eine zweite Anzahl von programmierbaren Bits (65Y mit den Eingaben beaufschlagbar ist und daß die Ausgänge jedes der zweiten Anzahl von programmierbaren Bits zur Bildung wenigstens eines zweiten ODER-Terms miteinander ODER-verknüpft sind.4. Programmable logic arrangement according to claim 3, characterized in that at least a second number of programmable bits (65Y can be acted upon with the inputs and that the outputs of each of the second number of programmable bits are ORed together to form at least one second OR term . 5. Software-programmierbare Logikanordnung, gekennzeichnet durch eine Anzahl von programmierbaren Bits (71 ^, von denen jedes dynamisch derart programmierbar ist, daß sein Ausgang selektiv5. Software programmable logic arrangement, featured by a number of programmable bits (71 ^, of which each is dynamically programmable so that its output is selective "0" bei einer Eingabe "1" und "1" bei einer Eingabe "0" ist; oder"0" is "1" when entered and "1" when "0" is entered; or "1" bei einer Eingabe "1" und "0" bei einer Eingabe "0" ist.Is "1" when entering "1" and "0" when entering "0". 6. Software-programmierbare Logikanordnung, dadurch gekennzeichnet ,6. Software-programmable logic arrangement, characterized in that daß eine UND-Ebene (13) zur Aufnahme mehrerer Eingangssignale mit wenigstens einem Satz programmierbarer Bits (3 1) versehen ist, die jeweils ein vorgegebenes und dynamisch programmierbares Ausgangssignal erzeugen, wobei die Ausgänge jedes der Sätze von programmierbaren Bits zur Ausgabe wenigstens eines UND-Terms miteinander ÜND-verknüpft sind, und daß eine ODER-Ebene (17) an die UND-Ebene (13) derart angekoppelt ist, daß wenigstens ein ÜND-Term-Ausgang der UND-Ebene in die ODER-Ebene eingegeben wird, daß die ODER-Ebene wenigstens einen Satz von programmierbaren Bits (65) aufweist, von denenthat an AND level (13) for receiving several input signals is provided with at least one set of programmable bits (3 1), each of which is a predetermined and dynamically programmable Generate output signal, the outputs of each of the sets of programmable bits for outputting at least one AND terms are linked to one another and that one OR level (17) is coupled to the AND level (13) in such a way that at least one ÜND term output of the AND level into the OR level is entered that the OR level has at least one set of programmable bits (65), of which jeder ein vorgegebenes und dynamisch programmierbares Ausgangssignal erzeugt, und daß die Ausgänge jedes programmierbaren Bits (65) dieses Satzes zur Ausgabe wenigstens eines
ODER-Terms miteinander ODER-verknüpft sind.
each generates a predetermined and dynamically programmable output signal, and that the outputs of each programmable bit (65) of this set for outputting at least one
OR terms are ORed together.
7. Programmierbare Logikanordnung nach Anspruch 6, dadurch gekennzeichnet, daß eine Ausgangspolarität-Auswahlebene (21)
der ODER-Ebene (17) derart nachgeschaltet ist, daß der wenigstens eine ODER-Term-Ausgang der ODER-Ebene in die Ausgangspolarität-Auswahlebene eingegeben wird, und daß die Ausgangspolarität-Auswahlebene wenigstens einen Satz programmierbarer
Bits (71) aufweist, von denen jedes ein vorgegebenes und dynamisch programmierbares Ausgangssignal erzeugt, das entweder
gleich dem eingegebenen Signal oder gleich dessen Inversionswert ist.
7. Programmable logic arrangement according to claim 6, characterized in that an output polarity selection level (21)
the OR level (17) is connected downstream in such a way that the at least one OR term output of the OR level is input into the output polarity selection level, and that the output polarity selection level is at least one set more programmable
Bits (71), each of which generates a predetermined and dynamically programmable output signal which either
is equal to the input signal or its inversion value.
8. Programmierbare Logikanordnung nach Anspruch 6 oder 7,
dadurch gekennzeichnet, daß jedes der programmierbaren Bits
8. Programmable logic arrangement according to claim 6 or 7,
characterized in that each of the programmable bits
(31) der ÜND-Ebene (13) dynamisch derart programmierbar ist,
daß es selektiv die folgenden Ausgangszustände erzeugt:
(31) of the ÜND level (13) is dynamically programmable in such a way that
that it selectively generates the following output states:
"0" unabhängig von einer Eingabe "0" oder "1";"0" regardless of an input "0" or "1"; "1" unabhängig von einer Eingabe "0" oder "1";"1" regardless of an entry "0" or "1"; "0" bei einer Eingabe "0" und "1" bei einer Eingabe "1"; oder"0" for an entry "0" and "1" for an entry "1"; or "1" bei einer Eingabe "0" und "0" bei einer Eingabe "1", und daß die Ausgänge jedes der programmierbaren Bits (31) zur Erzeugung eines UND-Terms UND-verknüpft sind."1" for an input of "0" and "0" for an input of "1", and that the outputs of each of the programmable bits (31) for Generation of an AND term are AND-linked.
9. Programmierbare Logikanordnung nach einem der Ansprüche bis 8, dadurch gekennzeichnet, daß jedes der programmierbaren Bits (65) der ODER-Ebene derart dynamisch programmierbar ist, daß sein Ausgang selektiv9. Programmable logic arrangement according to one of the claims to 8, characterized in that each of the programmable bits (65) of the OR level is dynamically programmable in such a way that that his output is selective "0" bei einer Eingabe "1" und "0" bei einer Eingabe "0"; oder"0" for an entry "1" and "0" for an entry "0"; or "1" bei einer Eingabe "1" und "O" bei einer Eingabe "0" ist,"1" when entering "1" and "O" when entering "0" is, und daß die Ausgänge jedes der programmierbaren Bits (65) der ODER-Ebene zur Erzeugung eines ODER-Terms miteinander ODER-verknüpft sind.and that the outputs of each of the programmable bits (65) of the OR plane for generating an OR term with one another Are OR-linked. 10. Programmierbare Logikanordnung nach Anspruch 1 oder 8, dadurch gekennzeichnet, daß jedes der programmierbaren Bits (31) mit einem ersten Flipflop (43), dessen Q-Ausgang 47 einem ersten UND-Gatter (5 3) eingegeben wird, und einem zweiten Flipflop (45) versehen ist, dessen Q-Ausgang (49) einem zweiten UND-Gatter (5 7) eingegeben wird, daß ein zweiter Eingang (51) des ersten UND-Gatters (53) ein vorgegebenes Eingangssignal (0-L) erhält, daß ein zweiter Eingang des zweiten UND-Gatters (57) mit dem invertierten vorgegebenen Eingangssignal beaufschlagt ist und daß die Ausgangssignale der beiden UND-Gatter (53, 57) einem ODER-Gatter (59) eingegeben werden, dessen Ausgangssignal der Ausgang jedes der programmierbaren Bits (31) ist.10. Programmable logic arrangement according to claim 1 or 8, characterized in that each of the programmable bits (31) with a first flip-flop (43), the Q output 47 of which is a first AND gate (5 3) is input, and a second flip-flop (45) is provided, the Q output (49) of which a second AND gate (5 7) is input that a second input (51) of the first AND gate (53) has a predetermined input signal (0-L) receives that a second input of the second AND gate (57) with the inverted predetermined input signal is applied and that the output signals of the two AND gates (53, 57) are input to an OR gate (59), the output of which is the output of each of the programmable Bits (31). 11. Programmierbare Logikanordnung nach Anspruch 3 oder 9, dadurch gekennzeichnet, daß jedes der programmierbaren Bits (65) ein Flipflop (67) aufweist, dessen Q-Ausgang einem UND-Gatter (69) eingegeben wird, daß der zweite Eingang (68) des UND-Gatters (69) mit einem vorgegebenen Eingangssignal beaufschlagt ist und daß das Ausgangssignal des UND-Gatters (69) der Ausgang jedes der programmierbaren Bits (65) ist.11. Programmable logic arrangement according to claim 3 or 9, characterized in that each of the programmable bits (65) has a flip-flop (67), the Q output of which is one AND gate (69) is input that the second input (68) of the AND gate (69) with a predetermined input signal is applied and that the output signal of the AND gate (69) is the output of each of the programmable bits (65). 12. Programmierbare Logikanordnung nach Anspruch 5 oder 7, dadurch gekennzeichnet, daß jedes der programmierbaren Bits (71) ein Flipflop (75) aufweist, dessen Q-Ausgang ein Eingang eines ersten UND-Gatters (77) und dessen ^-Ausgang ein Eingang eines zweiten UND-Gatters (79) ist, daß ein zweiter Eingang (81) des ersten UND-Gatters (77) mit einem vorgegebenen Ein-12. Programmable logic arrangement according to claim 5 or 7, characterized in that each of the programmable bits (71) has a flip-flop (75), the Q output of which has an input a first AND gate (77) and its ^ output is an input of a second AND gate (79) that a second input (81) of the first AND gate (77) with a predetermined input gangssignal beaufschlagt ist, daß ein zweiter Eingang des zweiten UND-Gatters (79) mit dem invertierten vorgegebenen Eingangssignal beaufschlagt ist und daß die Ausgänge der beiden UND-Gatter (77, 79) mit den Eingängen eines ODER-Gatters (85) verbunden sind, dessen Ausgangssignal den Ausgang jedes der programmierbaren Bits (71) darstellt.output signal is applied that a second input of the second AND gate (79) with the inverted predetermined Input signal is applied and that the outputs of the two AND gates (77, 79) with the inputs of an OR gate (85), the output of which represents the output of each of the programmable bits (71).
DE19863603975 1985-02-14 1986-02-08 SOFTWARE PROGRAMMABLE LOGIC ARRANGEMENT Withdrawn DE3603975A1 (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US70204685A 1985-02-14 1985-02-14

Publications (1)

Publication Number Publication Date
DE3603975A1 true DE3603975A1 (en) 1986-08-14

Family

ID=24819660

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19863603975 Withdrawn DE3603975A1 (en) 1985-02-14 1986-02-08 SOFTWARE PROGRAMMABLE LOGIC ARRANGEMENT

Country Status (3)

Country Link
JP (1) JPS61192125A (en)
DE (1) DE3603975A1 (en)
GB (2) GB2171231B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4870302A (en) * 1984-03-12 1989-09-26 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
USRE34363E (en) 1984-03-12 1993-08-31 Xilinx, Inc. Configurable electrical circuit having configurable logic elements and configurable interconnects
GB2202355B (en) * 1985-02-27 1989-10-11 Xilinx Inc Configurable storage circuit
GB8621357D0 (en) * 1986-09-04 1986-10-15 Mcallister R I Hinged barrier semiconductor integrated circuits
US4823295A (en) * 1986-11-10 1989-04-18 Harris Corp. High speed signal processor
US4831573A (en) * 1987-03-06 1989-05-16 Altera Corporation Programmable integrated circuit micro-sequencer device
US5144582A (en) * 1990-03-30 1992-09-01 Sgs-Thomson Microelectronics, Inc. Sram based cell for programmable logic devices
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 (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE631780A (en) * 1962-05-09
IT1063025B (en) * 1975-04-29 1985-02-11 Siemens Ag INTEGRATED AND PROGRAMMABLE LOGIC CIRCUIT ARRANGEMENT
US4009472A (en) * 1975-05-16 1977-02-22 Ibm Corporation Dynamic associative cell
US4071902A (en) * 1976-06-30 1978-01-31 International Business Machines Corporation Reduced overhead for clock testing in a level system scan design (LSSD) system
US4578771A (en) * 1980-12-29 1986-03-25 International Business Machines Corporation Dynamically reprogrammable array logic system
US4524430A (en) * 1983-01-11 1985-06-18 Burroughs Corporation Dynamic data re-programmable PLA
US4546273A (en) * 1983-01-11 1985-10-08 Burroughs Corporation Dynamic re-programmable PLA
US4508977A (en) * 1983-01-11 1985-04-02 Burroughs Corporation Re-programmable PLA
DE3342354A1 (en) * 1983-04-14 1984-10-18 Control Data Corp., Minneapolis, Minn. SOFT PROGRAMMABLE LOGIC ARRANGEMENT
JPS59207743A (en) * 1983-05-11 1984-11-24 Mitsubishi Electric Corp General purpose logical circuit

Also Published As

Publication number Publication date
GB8522863D0 (en) 1985-10-23
GB8703963D0 (en) 1987-03-25
GB2184878B (en) 1989-11-01
JPS61192125A (en) 1986-08-26
GB2184878A (en) 1987-07-01
GB2171231A (en) 1986-08-20
GB2171231B (en) 1989-11-01

Similar Documents

Publication Publication Date Title
DE2751097C2 (en) Circuit arrangement for generating an identification signal
DE2725395C3 (en) Device for real-time transformation of m words of bit length n arranged in rows into n words of bit length n arranged in columns
DE1499722C2 (en) Device for modifying information words
DE68914172T2 (en) Data processing system and video processing system with such a data processing system.
DE2540975A1 (en) MULTI-MICRO-PROCESSOR UNIT
DE2364408A1 (en) SYSTEM FOR CREATING CIRCUIT ARRANGEMENTS FROM HIGHLY INTEGRATED CHIPS
DE3243935C2 (en)
DE3789253T2 (en) Image processing device for image enlargement and / or image shrinkage.
DE2926322A1 (en) STORAGE SUBSYSTEM
DE1262641B (en) Microprogram controller
DE2951040C2 (en)
DE3603975A1 (en) SOFTWARE PROGRAMMABLE LOGIC ARRANGEMENT
DE2900586C2 (en) Arrangement for decoding code words of variable length
DE2638208C2 (en)
DE68926597T2 (en) MICROCALCULATOR
DE3543471C1 (en) Building block made in integrated technology for creating integrated circuits
DE68926158T2 (en) Single chip microcomputer with EPROM
DE2235883C3 (en) Data processing device
DE69215184T2 (en) Integrated circuit
DE2729361A1 (en) MEMORY CIRCUIT
DE2233164C3 (en) Circuit arrangement for the transmission of successive bit positions between two registers
DE3149926A1 (en) Programmable comparison circuit
AT354783B (en) PROGRAMMABLE CIRCUIT FOR DATA PROCESSING
DE1806172A1 (en) Priority switching
DE1806464A1 (en) Address generator for a digital computer

Legal Events

Date Code Title Description
8139 Disposal/non-payment of the annual fee