DE4035405A1 - Programmierbare logik-anordnung und datenverarbeitungseinrichtung mit einer solchen logik-anordnung - Google Patents
Programmierbare logik-anordnung und datenverarbeitungseinrichtung mit einer solchen logik-anordnungInfo
- Publication number
- DE4035405A1 DE4035405A1 DE4035405A DE4035405A DE4035405A1 DE 4035405 A1 DE4035405 A1 DE 4035405A1 DE 4035405 A DE4035405 A DE 4035405A DE 4035405 A DE4035405 A DE 4035405A DE 4035405 A1 DE4035405 A1 DE 4035405A1
- Authority
- DE
- Germany
- Prior art keywords
- information
- data
- planes
- levels
- mos transistors
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K19/00—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits
- H03K19/02—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components
- H03K19/173—Logic circuits, i.e. having at least two inputs acting on one output; Inverting circuits using specified components using elementary logic circuits as components
- H03K19/177—Logic 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/17704—Logic 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/17708—Logic 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/17716—Logic 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 with synchronous operation, i.e. using clock signals, e.g. of I/O or coupling register
- H03K19/1772—Logic 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 with synchronous operation, i.e. using clock signals, e.g. of I/O or coupling register with synchronous operation of at least one of the logical matrixes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/22—Microcontrol or microprogram arrangements
- G06F9/223—Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Executing Machine-Instructions (AREA)
Description
Die Erfindung betrifft eine programmierbare Logik-Anordnung
nach dem Oberbegriff des Anspruchs 1 und eine Datenverarbei
tungseinrichtung mit einer solchen Logik-Anordnung nach dem
Oberbegriff des Anspruchs 1, wie beispielsweise eine Zentral
einheit.
Wenn herkömmlicherweise eine gewünschte Logik mit Hilfe einer
programmierbaren Logik-Anordnung (die nachstehend der Einfach
heit halber als eine PLA bezeichnet wird) ausgeführt wird,
wird eine mehrstufige logische Schaltung als eine Einrichtung
zum Minimieren der Anzahl von Produkt-Termen verwendet. Nor
malerweise ist eine mehrstufige logische Schaltung als eine
zweistufige logische Schaltung ausgeführt, welche aus einer
UND- und einer ODER-Schaltung besteht. Ein Ausgangssignal der
ODER-Schaltung wird an die Eingangsseite der UND-Schaltung
rückgekoppelt. Andererseits wird die mehrstufige logische
Schaltung dadurch gebildet, daß eine Anzahl programmierbarer
Logik-Anordnungen (PLAs) in serieller und paralleler Form ver
knüpft werden. Insbesondere wenn eine Anweisung oder ein Be
fehl durch eine Zentraleinheit (die nachstehend der Einfach
heit halber auch als eine CPU bezeichnet wird) decodiert
wird, wird vorteilhafterweise die vorerwähnte mehrstufige lo
gische Schaltung verwendet, welche ein komplexes Befehlssy
stem verarbeitet, oder es wird eine einzige PLA mit einer
großen Anzahl von Produkt-Termen verwendet.
Wenn jedoch eine derartige PLA mit einer großen Anzahl von
Produkt-Termen verwendet wird, muß die Anzahl an Produkt-
Termen verringert werden. Hierzu wird ein logischer Faltungs
prozeß benötigt. Ein logischer Faltungsprozeß ist darauf ge
richtet, eine Eingabezeile der PLA in zwei umzugruppieren und
Produkt-Termenzeilen gegeneinander auszutauschen, so daß un
nötige Eingabezeilen entfernt werden. Mit dem logischen Fal
tungsprozeß wird es möglich, die Struktur der PLA zu minimie
ren.
Wie vorstehend beschrieben, ist der logische Faltungsprozeß
sehr wirksam, um die Größe der programmierbaren Logikanord
nung (PLA) zu verringern. Wenn jedoch eine Zentraleinheit
(CPU) mit einer programmierbaren Logik-Anordnung (PLA) kon
figuriert wird, bei welcher der vorerwähnte logische Faltungs
prozeß angewendet ist, müssen auch Befehlsregister aufgeteilt
werden, welche Befehle oder Anweisungen speichern, die not
wendig sind, um den logischen Faltungsprozeß durchzuführen
und um eine Zeitsteuerschaltung zu teilen, welche Zeitsignale
erzeugt, die dazu verwendet werden, um die Befehle, welche in
den Befehlsregistern gespeichert sind, an die PLA zu senden.
In diesem Fall müssen Verbindungsleitungen zwischen den aufge
teilten Befehlsregistern und den Zeitsteuerschaltungen vorge
sehen sein. Folglich nimmt die Gesamtgröße der Zentraleinheit
(CPU) zu, obwohl die PLA selbst minimiert ist. Ferner ist ein
Programmieren des logischen Faltungsprozesses sehr aufwendig
und beschwerlich und folglich ist hierfür eine große Menge an
Arbeit notwendig. Darüber hinaus ist es sehr schwierig, die
programmierte PLA-Logik zu modifizieren, da der logische Fal
tungsprozeß sehr kompliziert ist. Ferner haben die Signale,
welche der UND-Schaltung (Ebene) von den Befehlsregistern und
den Zeitsteuerschaltungen aus zugeführt sind, große Belastun
gen, und daher besteht die Möglichkeit, daß die Decodierge
schwindigkeiten der Befehle unterschiedlich sind. Außerdem
kommt es zu einer großen Zeitverzögerung, bis die decodierten
Signale erhalten werden, insbesondere wenn die mehrstufige
logische Schaltung verwendet wird.
Gemäß der Erfindung soll daher eine programmierbare Logik-An
ordnung (PLA) geschaffen werden, bei welcher die vorerwähnten
Nachteile beseitigt sind, welche mit hohen Geschwindigkeiten
arbeitet und wobei deren Größe verkleinert ist. Gemäß der Er
findung ist dies bei einer programmierbaren Logik-Anordnung
nach dem Oberbegriff des Anspruchs 1 durch die Merkmale in
dessen kennzeichnenden Teil erreicht. Vorteilhafte Weiterbil
dungen sind Gegenstand der auf den Anspruch unmittelbar oder
mittelbar rückbezogenen Unteransprüche 2 bis 10.
Darüber hinaus soll gemäß der Erfindung eine Datenverarbei
tungseinrichtung mit der vorerwähnten programmierbaren Logik-
Anordnung geschaffen werden. Gemäß der Erfindung ist dies bei
einer Datenverarbeitungseinrichtung mit einer PLA nach dem
Oberbegriff des Anspruchs 11 durch die Merkmale in dessen
kennzeichnenden Teil erreicht. Vorteilhafte Weiterbildungen
dieser Datenverarbeitungseinrichtung sind Gegenstand der un
mittelbar oder mittelbar auf den Anspruch 11 rückbezogenen
Unteransprüche 12 bis 21.
Nachfolgend wird die Erfindung anhand von bevorzugten Ausfüh
rungsformen unter Bezugnahme auf die anliegenden Zeichnungen
im einzelnen erläutert. Es zeigen:
Fig. 1 ein Diagramm eines Programmiermodells;
Fig. 2A bis 2C Diagramme, in welchen Formate von Befehlen dar
gestellt sind, welche in einer Zentraleinheit (CPU)
gemäß einer bevorzugten Ausführungsform der Erfin
dung verwendet sind;
Fig. 3 ein Blockdiagramm, in welchem die gesamte Struktur
der Zentraleinheit (CPU) gemäß der bevorzugten
Ausführungsform der Erfindung dargestellt ist;
Fig. 4 ein Blockdiagramm, welches einen Teil der in Fig. 3
dargestellten Gesamtstruktur wiedergibt, welche
sich auf eine PLA-Konfiguration bezieht;
Fig. 5 ein Schaltungsdiagramm, in welchem die Struktur
von zwei UND-Ebenen und einer einzigen ODER-
Ebene dargestellt ist, welche in Fig. 4 wiederge
geben sind;
Fig. 6 ein Blockdiagramm eines Teils der in Fig. 3 darge
stellten Struktur, welche sich auf einen Sprungbe
fehlprozeß beziehen;
Fig. 7 ein Diagramm eines Formats eines Sprungbefehls;
Fig. 8 ein Schaltungsdiagramm einer in Fig. 6 dargestell
ten Sprungfühlschaltung, und
Fig. 9 ein Blockdiagramm eines Systems, bei welchem die
Zentraleinheit gemäß der bevorzugten Ausführungs
form der Erfindung verwendet ist.
Nunmehr wird eine Zentraleinheit (CPU) gemäß einer bevorzug
ten Ausführungsform der Erfindung dargestellt. In Fig. 1 ist
ein Programmiermodell dargestellt. Ein Basiswort der CPU ge
mäß der Erfindung besteht aus 8 Bits. Ein Adressierungsbe
reich ist durch einen Programmzähler (PC) genau festgelegt,
welcher aus 24 Bits besteht, welche in drei Programmzählern
PBC, PCH und PCL gruppiert sind. Es können lineare Adressen
behandelt werden, welche sich auf 16 Megabytes belaufen. Der
Zähler PBC ist ein Programmbank-Zählerregister (das nachste
hend der Einfachheit halber als ein PBC-Register bezeichnet
wird); mit PCH ist ein Programmzählerregister (das nachste
hend der Einfachheit halber als ein PCH-Register bezeichnet
wird) und mit PCL ist ein Programmzählerregister bezeichnet
(das nachstehend der Einfachheit halber als ein PCL-Register
bezeichnet wird).
Andererseits wird ein Datenzugriff mit Hilfe einer sogenann
ten Bank-Methode konfiguriert. Eine Bankadresse wird grund
sätzlich in einem 8 Bit-Datenbankregister (DBR) registriert.
Lineare 64 kByte-Adressen mit 256 Banken werden verwendet, so
daß ein 16 MByte-Zugriff realisiert werden kann. Das Ausgangs
signal des Datenbankregisters DBR, welches eine Bankadresse
bildet, wird später zusammen mit Flags M1 und M0 noch be
schrieben.
Es sind eine Vielzahl Mehrzweckregister W0, W1 und W2 vorge
sehen, welche jeweils aus 16 Bits bestehen. Jedes der Regi
ster W0 und W1 ist in zwei 8 Bit-Blocks aufgeteilt, wie in
Fig. 1 dargestellt ist. Hierbei sind die vier 8 Bit-Blocks mit
R0 und R2 bezeichnet, welche sich auf das Register W0 bezie
hen, und mit R1 und R3 bezeichnet, welche sich auf das Regi
ster W1 beziehen. Mit der vorstehend beschriebenen Anordnung
ist es für die Zentraleinheit (CPU) möglich, sowohl 8 Bit-
als auch 16 Bit-Daten zu verarbeiten.
Ein Stapelzeiger-(SP-)Register, das aus 16 Bits besteht, ist
zum Festlegen eines Stapelraums vorgesehen. Mit Hilfe des
Stapelzeiger-Registers kann linear auf 64 kBytes zugegriffen
werden. Die Bankadresse ist auf "00" h festgelegt.
Ein Prozessor-Zustandsregister (PSR) zeigt den laufenden Be
triebszustand der Zentraleinheit und Flags N, V, Z und C an,
welche sich in Abhängigkeit von den Operationsergebnissen
ändern. Ferner hat das Prozessor-Zustandsregister Flags I und
D. Das Flag I zeigt an, ob eine Unterbrechungsanforderung ak
zeptierbar ist oder nicht, und das Flag D bezieht sich auf
eine Korrektur des Ergebnisses eines Addier-/Subtrahier-Be
fehls. Wenn D = 1 ist, wird das Ergebnis der durchgeführten
Addition/Subtraktion automatisch einer Dezimalkorrektur un
terzogen.
Die Flags M1 und M0 ermöglichen ein Auswählen von Daten, wel
che sich auf die Bankadresse beziehen, die abgegeben worden
ist, wenn auf den Datenraum zugegriffen wird. Durch Einstel
len der Flags M1 und M0 auf beliebige Werte (die von der CPU
erneuert worden sind) kann folglich entweder die Bankadresse
in dem Datenbankregister DBR oder eine Konstante, wie "00"h
ausgewählt werden. Diese Anordnung ermöglicht es, verschiede
ne Anwendungen aufzulegen.
Ein schnelles Seitenregister (FPR) funktioniert wie ein
Adressenzeiger zum Zeitpunkt eines Zugriffs auf Daten und
wird in einem Adressiermode verwendet, welcher als ein schnel
ler direkter Adressiermode bezeichnet wird. Hierbei bedeutet
"Adressieren" eine Prozedur zum Spezifizieren der Adressen
eines Speicherbereichs, in welchem gewünschte Daten gespei
chert sind. Bei dem schnellen direkten Adressiermode werden
nur 8 Bit-Daten abgerufen, und die abgerufenen 8 Bit-Daten
werden in einen niederwertigen Teil (Bits 7 bis 0) der effek
tiven Adresse gesetzt, und der Inhalt des schnellen Seitenre
gisters FPR wird in einem hochwertigen Teil (Bits 15 bis 8)
gesetzt. Das schnelle Seitenregister FPR wird in dem vorer
wähnten Adressiermode wirksam. Die Bankadresse, welche bei
dem schnellen direkten Adressiermode abgegeben wird, hängt
von dem Zustand der Flags M1 und M0 ab. In dem schnellen
direkten Adressiermode wird nur ein Byte der Operandendaten
abgerufen, und folglich ist ein Zugriff auf Daten in einer
identischen Seite (auf welcher Bits 15 bis 8 konstant sind)
mit einer höheren Geschwindigkeit möglich.
In Fig. 2A bis 2C sind die Formate von Befehlen der Zentralein
heit (CPU) gemäß einer Ausführungsform der Erfindung darge
stellt. Die Basiswortlänge, welche in der CPU verarbeitet wor
den ist, besteht aus 8 Bits, wie vorher bereits beschrieben
worden ist. Ein-Byte-Daten für eine Verwendung in einer Be
fehlserweiterung, welche als Vorbyte-Daten bezeichnet sind,
sind so angeordnet, daß sie dem Operationscode vorangehen.
Die CPU ruft zuerst die Vorbyte-Daten ab. Grundsätzlich ent
halten die Vorbyte-Daten Information über den Adressiermode,
und der Operationscode hat den Inhalt eines Befehls, welcher
ausgeführt werden sollte. Ein Befehl, welcher häufig verwen
det wird, hat ein spezielles, in Fig. 2A dargestelltes Format.
Der in Fig. 2A dargestellte Befehl, der ein Kurzbefehl genannt
wird, setzt sich nur aus einem Operationscode und einem Ope
randen zusammen und hat keine Vorbyte-Daten. Der Operations
code in Fig. 2 enthält Information über den Adressiermode und
den Inhalt des Befehls. Bekanntlich hat der Befehl in Fig. 2A
keine Vorbyte-Daten, um die Befehlscode-Länge und die Durch
führungszeit zu verkürzen.
Ferner sind zwei Formate für die in Fig. 2B und 2C dargestell
ten Operandendaten vorgesehen. Das in Fig. 2B dargestellte For
mat hat einen Operationscode, der auf die Vorbyte-Daten folgt,
und Operanden-Daten (#1), welche auf den Operationscode fol
gen. Das in Fig. 2C dargestellte Format hat zweite Operanden-
Daten (#2), welche zwischen den Vorbyte-Daten und dem Opera
tionscode angeordnet sind. Die zweiten Operanden-Daten, wel
che zwischen den Vorbyte-Daten und dem Operationscode ange
ordnet sind, werden in einem Adressiermode mit einer Verschie
bung (einer relativen Adresse) verwendet. In dem Adressiermode
mit einer Verschiebung wird die effektive Adresse dadurch er
zeugt, daß als eine Versetzung Daten, welche durch den Operan
den oder den Wert in einem Register abgerufen sind, die durch den Operan
den spezifiziert worden sind, zu den Daten in dem internen Regi
ster addiert worden. Wenn der Adressiermode mit einer Verschie
bung verwendet wird, dauert es, falls das Format der in Fig.
2B dargestellten Operanden-Daten verwendet wird, lange Zeit,
die effektive Adresse zu berechnen, da die Operanden-Daten
der Verschiebung abgerufen werden, und danach wird die effek
tive Adresse berechnet. Nachdem die Verschiebungsdaten des
Operanden abgerufen sind, gibt es folglich eine Anzahl von
Leerumläufen. Mit Hilfe des in Fig. 2C dargestellten Formats
und durch Anordnen der Verschiebungsdaten zwischen den Vor
byte-Daten und dem Operationscode kann die effektive Adresse
berechnet werden, während der Operationscode abgerufen wird.
Folglich kann das Auftreten von unwirtschaftlichen Leerumläu
fen verhindert werden.
In Fig. 3 ist die Struktur der Zentraleinheit (CPU) gemäß der
bevorzugten Ausführungsform der Erfindung dargestellt. Die
Struktur der CPU ist in einen Steuerteil 1 und einen Opera
tionsteil 2 aufgeteilt. Der Steuerteil 1, welcher zuerst be
schrieben wird, steuert das Ausführen von Befehlen. Während
einer Operation wird ein Befehlscode an eine Dateneingabe-
Halteschaltung (DIL) 15 über einen Datenbus, welcher Daten
bits D7 bis D0 überträgt, von einer externen Einheit aus zu
geführt. Dann wird der Befehlscode an ein Befehlsregister in
einem Befehlsregister 3, das Bezug zu den Vorbyte-Daten hat,
oder in einem Befehlsregister 4 abgegeben, das Bezug zu dem
Operationscode hat und wird darin gehalten, bis ein nächster
Befehls erzeugt wird.
Eine Vielzahl von Ausgangssignalen 5 und 6 der Befehlsregister
3 und 4 sowie von Ausgangssignalen einer Zeitsteuereinheit
(TCU) 7 werden in ein Befehldecodiersystem (PLA) eingegeben,
das sich aus ODER-Ebenen 9 und 11 und UND-Ebenen 8 und 10
zusammensetzt. Wie später noch beschrieben wird, ist die
ganze UND-Ebene der CPU in die UND-Ebenen 8 und 10 aufgeteilt,
während die ODER-Ebenen 9 und 11 im wesentlichen eine einzige
ODER-Ebene der CPU bilden.
Das Decodierergebnis wird in ein Ausführungs-Steuerinterface
(ECI) 12 eingegeben, welches eine Anzahl Steuersignale 14 aus
dem empfangenen Decodierergebnis erzeugt und welches die
Steuersignale 14 mit einer eingestellten zeitlichen Steuerung
an den Operationsteil 2 abgibt. Die UND-Ebene 8 wird für die
Vorbyte-Daten verwendet, und die UND-Ebene 10 wird für den
Operationscode verwendet. Die zwei ODER-Ebenen 9 und 11 sind
gemeinsam für die Vorbyte-Daten und den Operationscode vorge
sehen. Wie vorher bereits beschrieben worden ist, haben die
Vorbyte-Daten Information über den Adressiermode, und der
Operationscode schließt den Inhalt der Operation ein. Auf
diese Weise wird die programmierbare Logikanordnung (PLA)
funktionell in die zwei Teile gruppiert, um das Decodieren
zu erleichtern und um Redundanz zu beseitigen und um eine
minimale PLA (insbesondere UND-Ebenen) zu bilden, welche die
Vorbyte-Daten und den Operationscode separat behandeln.
Die UND-Ebenen 8 und 10 können gleichzeitig betrieben werden
oder es kann nur eine von ihnen entsprechend einem Eingangs
signal von einer Unterbrechungssteuereinheit 21 betrieben
werden. Ein Steuercode einer Unterbrechungsfolge wird der
UND-Ebene 8 zugeteilt, welche Bezug zu den Vorbyte-Daten hat.
Solange eine Unterbrechungsanforderung zu verarbeiten ist,
arbeitet die UND-Ebene 10 nicht, welche sich auf die Opera
tionscode-Seite bezieht. Der Operationsteil 2 führt eine
Operation durch und steuert einen Datentransfer zwischen der
CPU und einer externen Einrichtung entsprechend den Steuer
signalen, welche von dem Ausführungs-Steuerinterface (ECI)
12 erzeugt und abgegeben worden sind.
Die Zentraleinheit (CPU) hat interne Buse MB, DB und SB, die
jeweils aus 8 Bits bestehen. Die CPU hat eine Gruppe von Re
gistern (welche durch Bezugnahme auf das Programmiermodell
beschrieben worden sind), eine Arithmetik-Logikeinheit 19,
(die nachstehend als eine ALU-Einheit wird), eine Schiebeein
heit 20 und eine Adressensteuereinheit (ACU) 16. Die ALU-Ein
heit 19 berechnet verschiedene Operationen, wie Daten und die
effektive Adresse. Die Schiebeeinheit 20 führt eine 8 Bit-
Schiebeoperation durch, und die Adressensteuereinheit 16 hat
hauptsächlich die Aufgabe, die Adresse zu erzeugen.
Die ALU-Einheit 19 hat einen Aufwärtszähler 27, welcher an
deren Eingangsseite vorgesehen ist. Der Aufwärtszähler 27
unterstützt die von der ALU-Einheit 19 durchgeführte Opera
tion und hat die Aufgaben, ein Eingangssignal durchzulassen,
dasselbe zu invertieren und konstante Daten, wie "00"h zu
erzeugen. Die ALU-Einheit 19 enthält eine Dezimalkorrektur
schaltung, welche eine sogenannte D-Flagfunktion hat, was
später noch beschrieben wird.
Der Operationsteil 2 hat einen Nulldetektor (ZDT) 17, welcher
einen Zustand feststellt, in welchem Daten über den internen
Bus MB alle null sind, und einen Sprungbedingungsdetektor
(BRDT) 18, welcher bestimmt, ob einer Sprungbedingung, welche
durch einen Sprungbefehl angezeigt worden ist, durch Bezug
nahme auf die Zustandsinformation (C, Z, N, V) in den Pro
zessor-Zustandsregistern PSR 30 genügt ist oder nicht. Die
Funktion der Adressenberechnungseinheit 16 wird durch eine
Vielzahl aufgeteilter Funktionsteile realisiert, die jeweils
eine Einheit von 8 Bit haben. Ein Übertrag kann zwischen den
aufgeteilten Funktionsteilen mitlaufen. Mit dieser Anordnung
kann eine Adresse mit maximal 24 Bits berechnet werden. Die
Adressenberechnungseinheit 16 kann nicht nur die Adressen-,
sondern auch die Daten-Berechnung ausführen.
Die Adressenberechnungseinheit 16 hat Inkrementier-/Dekremen
tier-Schaltungen (INC/DEC : L, INC/DEC : H, INC/DEC : B), welche in
einer Einheit von 8 Bits vorgesehen sind, und 8 Bit-interne
Buse ABL, ABH und SB. Die Daten von den internen Busen ABL,
ABH und SB werden durch Daten "00"h, "01"h und "02"h erhöht
oder erniedrigt. Die Berechnungsergebnisse der Schaltungen
INC/DEC : L, INC/DEC : H und INC/DEC : B werden selektiv in Halte
schaltungen CALL, CALH bzw. CALB gespeichert, aus diesen aus
gelesen und dann an Adressenpuffer AOBL, AOBH bzw. AOBB über
tragen. Der Ausdruck "wahlweise" bedeutet, daß die Berech
nungsergebnisse nicht immer in den entsprechenden Halteschal
tungen gespeichert werden. Insbesondere werden die Berech
nungsergebnisse gehalten und gespeichert, wenn die Adressen
berechnung durchgeführt wird, und können nicht gehalten bzw.
gespeichert werden, wenn die Datenberechnung durchgeführt
wird. Ein Ergebnisregister (RLT2) 35 hält immer das Berech
nungsergebnis, wenn die Schaltung INC/DEC : B arbeitet.
Die Adressenberechnungseinheit 16 hat Vektor-Adresengenera
toren VECL, VECH und VECB, welche koerzitiv einen Unterbre
chungsvektor erzeugen, wenn eine Unterbrechung erzeugt wird.
Ferner hat die Adressenberechnungseinheit 16 eine Schaltung
BS, welche Daten über den Bus DB als eine Adresse abgibt,
ohne die Inkrementier-/Dekrementier-Schaltungen INC/DEC zu
verwenden.
In der Zentraleinheit (CPU) gemäß der bevorzugten Ausführungs
form der Erfindung wird die effektive Adresse sowohl mit
Hilfe der AL-Einheit 19 als auch der AC-Einheit 16 insbeson
dere in dem Adressiermode mit einer Verschiebung erzeugt oder
wenn ein Sprungbefehl verarbeitet wird. Ein Übertragselektor
(CSB) 25 und ein Übertragselektor (CSH) 26 werden in solchen
Fällen verwendet. Mit Hilfe der Übertragselektoren 25 und
26 wird es möglich, einen Übertrag oder ein Borgen durch die
Berechnung mittels der ALU-Einheit 19 bei der Berechnung der
Adressen-Berechnungseinheit 19 zu reflektieren. Die Ergeb
nisse der Operationen, welche durch die Inkrementier-/Dekre
mentier-Schaltungen INC/DEC gehalten worden sind, erneuern
selektiv Daten in Registern PC, DBR, TR, ADH und ADL über
Buse BR, TR, ADH und ADL.
Die Zentraleinheit (CPU) enthält ferner einen Taktgenerator
22, welcher Takte der CPU steuert, und eine Systemsteuer
einheit 23, welche verschiedene Signale erzeugt, welche peri
phere Systeme von dem Betriebszustand der CPU informieren.
Ein Befehlsvordecoder 33 decodiert einen Befehlscode vor und
beurteilt, ob er ein Kurzbefehl ist oder nicht, oder ob er Vor
byte-Daten hat oder nicht, welche eine unbestimmte Kombination
mit dem Operationscode bilden, welcher in dem Befehlscode ent
halten ist.
Nunmehr werden die Elemente des Operationsteils 2 beschrieben.
Die Mehrzweckregister geben Daten bei der Datenoperation und
dem Datentransfer ab und speichern das Ergebnis der Datenope
ration und des Datentransfers. Die Mehrzweckregister sind in
Fig. 1 und 3 dargestellt. Die Register W0 bzw. W1 haben zwei
8 Bit-Blocks (R0, R2) und (R1, R3). Folglich können die zwei
Blöcke jedes der Register W0 und W1 separat verwendet werden.
Eine Information darüber, ob jedes Register W0 und W1 als ein
einziges 16 Bit-Register oder als zwei 8 Bit-Register verwen
det werden sollte, wird durch einen Befehl gegeben. Folglich
kann die Zentraleinheit (CPU) nicht nur 8 Bit-, sondern auch
16 Bit-Daten behandeln.
Register W2 und W3 werden bestimmt und als Zeiger in dem
Adressiermode zur Zeit eines Datenzugriffs verwendet. Jedes
der Register in den Mehrzweckregistern ist als ein Halte
glied ausgebildet (welches keine Setz- und Rücksetz-Funktion
hat) und ist folgendermaßen geschaltet. Grundsätzlich halten
bzw. verriegeln die Register Daten, die von dem internen Bus
MB eingegeben worden sind, und geben die gehaltenen Daten an
den internen Bus DB oder MB ab. Nur das Register R2 bezieht
sich auf die Durchführung eines Teilungsbefehls und somit auf
eingegebene Daten von dem internen Bus DB. Insbesondere wird
die Beziehung zwischen den Eingängen und Ausgängen der jewei
ligen Register so, wie in Tabelle 1 dargestellt ist, erhalten.
Das schnelle Seitenregister FPR, welches vorher bereits in
Verbindung mit Fig. 1 und 3 beschrieben worden ist, wird in
dem vorerwähnten schnellen direkten Adressiermode verwendet.
Das schnelle Seitenregister FPR ist aus einem Halteglied ge
bildet (welches keine Setz- und Rücksetz-Funktion hat) und
ist mit den internen Busen in der Weise verbunden, daß das
schnelle Seitenregister FPR Daten hält und verriegelt, welche
von dem internen Bus MB aus eingegeben worden sind, und gibt
die gehaltenen Daten an den internen Bus DB ab.
Die in Fig. 3 dargestellte Eingabesteuereinheit 27 steuert Da
ten, welche in die AL-Einheit 19 über den internen Bus MB ein
gegeben werden. In Tabelle 2 ist die Beziehung zwischen den
Daten und den Eingängen wiedergegeben.
Daten | ||
Eingang | ||
MB-Busdaten | ||
ALU | ||
invertierte Version @ | von MD-Busdaten | ALU |
Konstante "00"h | ALU (MB-Busdaten werden vernachlässigt) | |
Konstante "01"h | ALU (MB-Busdaten werden vernachlässigt) | |
Konstante "02"h | ALU (MB-Busdaten werden vernachlässigt) | |
Konstante "03"h | ALU (MB-Busdaten werden vernachlässigt) |
Die in Fig. 3 dargestellte AL-Einheit 19 erhält 8 Bit-Daten
von dem internen Bus DB und 8 Bit-Daten von der Eingabesteu
ereinheit 27 und führt verschiedene Operationen durch. Die
von der AL-Einheit 19 durchgeführten Operationen sind logi
sche Operationen AND, OR, EXOR und SUM. Durch Setzen des D-
Flags in dem Prozessor-Zustandsregister PSR auf 1 führt die
AL-Einheit 19 eine Dezimalkorrektur für eine Addition und
Subtraktion während desselben Operationszyklus durch. Ferner hat
die AL-Einheit 19 die Funktionen, das Erzeugen eines Über
trags oder Borgens und das Auftreten eines Überlaufs festzu
stellen und den Übertrag/Borgvorgang sowie den Überlauf zu
halten. Der Übertrag wird in der AL-Einheit 19 gehalten, bis
er die nächste SUM-Operation durchführt. Mit anderen Worten,
es gibt keine Änderung in dem Übertrag, wenn die UND-, ODER-
oder EXOR-Operation durchgeführt wird.
Die in Fig. 3 dargestellte ALU-Schiebeeinheit 28 ist aus einem
Schieberegister gebildet, welches eine Ein-Bit-Verschiebung
nach rechts für 8 Bit-Daten durchführt und wird hauptsächlich
in dem Multiplikationsbefehl verwendet. Daten, die in das
Schieberegister 28 eingegeben worden sind, sind das Ergebnis
der Additions-(SUM-)Operation, welche von der AL-Einheit 19
durchgeführt worden ist. Das höchstwertige Bit der eingegebe
nen Daten ist das bei der Summieroperation erzeugte Übertrag
bit. Ein 1 Bit-Datenwert, welcher dem niedrigstwertigen Bit
entspricht, das durch die Schiebeoperation abgegeben worden
ist, wird schließlich als ein Übertrag gehalten.
Das Ergebnisregister 29 hält die Ergebnisse der von der AL-
Einheit 19 durchgeführten Operation und ist mit den internen
Busen in der Weise verbunden, daß Daten in dem Ergebnisregi
ster 29 an den internen Bus DB oder MB abgegeben werden. Die
Daten in dem Ergebnisregister 29 werden nicht erneuert, bis
die AL-Einheit 19 die nächste Operation durchführt.
Die in Fig. 3 dargestellte Schiebeeinheit 20 ist durch ein
Flip-Flop gebildet, welches selektiv eine 1 Bit-Verschiebung
nach links, eine 1 Bit-Verschiebung nach rechts und keine
Verschiebeoperation entsprechend dem entsprechenden Steuersig
nal von dem Ausführungssteuer-Interface 12 durchführt. Die
Schiebeeinheit 20 ist so geschaltet, daß Daten in die Schiebe
einheit 20 von dem internen Bus MB eingegeben und an den in
ternen Bus MB abgegeben werden.
Der in Fig. 3 dargestellte Nulldetektor 17 überwacht den Zu
stand des internen Bus MB und erzeugt ein Signal, welches an
zeigt, daß alle Bits des internen Bus MB "00"h sind, wenn er
diesen Zustand feststellt. Insbesondere steuert das von dem
Nulldetektor 17 erzeugte Signal das in dem Prozessor-Zustands
register 20 vorgesehene Flag Z, so daß, wenn das Operations
ergebnis von der AL-Einheit 19 an den internen Bus MB über
das Ergebnisregister 29 abgegeben wird, das Ergebnis "00"h
festgestellt und das Flag Z auf "1" gesetzt wird.
Das in Fig. 3 dargestellte Prozessor-Zustandsregister 30 er
hält Daten von dem internen Bus MB und gibt dieselben an den
internen Bus DB ab. Die Daten in dem Prozessor-Zustandsregi
ster 30 zeigen den augenblicklichen Betriebszustand der Zen
traleinheit (CPU) an.
Die in Fig. 3 dargestellte Sprungfeststellschaltung 18 ist mit
dem Prozessor-Zustandsregister 30 verbunden und erzeugt im
Hinblick auf den Inhalt des Registers 30, wenn ein Sprungbe
fehl erzeugt wird, ein Signal, ob eine Sprungoperation durch
geführt werden soll oder nicht.
Die in Fig. 3 dargestellten Adressenausgabepuffer AOBB, AOBH
bzw. AOBL behandeln 8 Bits und geben eine Adresse ab, welche
insgesamt aus 24 Bits besteht (BA7 bis BA0, A15 bis A0). Die
Ausgangsadresse wird in einen Zustand niedriger Impedanz ge
bracht, wenn ein in der Systemsteuereinheit 23 eingegebenes
Bus-Freigabesignal BE auf niedrigem Pegel liegt.
Die in Fig. 3 dargestellten Vektoradressengernatoren VECB,
VECH und VECL erzeugen während eines Unterbrechungsprozesses
eine aus 24 Bit bestehende Vektoradresse.
Die Adressenberechnungs-Halteschaltungen CALB, CALH und CALL,
welche in der in Fig. 3 dargestellten Adressenberechnungsein
heit 16 vorgesehen sind, halten wahlweise die Operationser
gebnisse, welche von den Inkrementier-/Dekrementier-Schal
tungen INC/DEC : B, INC/DEC : H bzw. INC/DEC : L abgegeben worden
sind, nur wenn die Adressenberechnung durchgeführt wird.
Die in Fig. 3 dargestellten Inkrementier-/Dekrementierschal
tungen INC/DEC : B, INC/DEC : H und INC/DEC : L erhöhen oder ver
ringern Daten. Jede der In-/Dekrementier-Schaltungen besteht
aus 8 Bits und ein bei der Operation durchgeführter Übertrag
wird an die obere In-/Dekrementier-Schaltung weitergegeben.
Beispielsweise wird ein Übertrag, welcher von der In-/Dekre
mentier-Schaltung INC/DEC : L erzeugt worden ist, an die In-/
Dekrementier-Schaltung INC/DEC : H weitergegeben, und ein von
der In-/Dekrementier-Schaltung INC/DEC : H erzeugter Übertrag
wird an die In-/Dekrementier-Schaltung INC/DEC : B weiterge
geben. Auf diese Weise wird die 24 Bit-Adresse erzeugt. Daten
werden in die In-/Dekrementier-Schaltung INC/DEC : B, INC/DEC : H
und INC/DEC : L über die Datenbuse SB, ABH bzw. ABL eingegeben.
Jeder der In-/Dekrementier-Schaltungen INC/DEC : B, INC/DEC : H
und INC/DEC : L führt wahlweise eine Datenhalteoperation und
eine In-/Dekrementier-Operation an "01"h bzw. "02"h durch.
Der Bus-Selektor BS hat eine Datenauswählfunktion, um un
mittelbar 8 Bit-Daten von einer externen Einrichtung außerhalb
der Zentraleinheit (CPU) über den internen Bus DB in den
Adressenausgabepuffer AOBL einzugeben, ohne die In-/Dekre
mentierschaltung INC/DEC : L zu durchlaufen. In dem vorerwähn
ten, schnellen direkten Adressiermode muß die effektive Adres
se während eines Zyklus abgegeben werden, der auf einen Zy
klus folgt, während welchem 8 Bit-Operandendaten für die
effektive Adresse abgerufen werden. Wenn in diesem Fall die
Schaltung INC/DEC : L verwendet wird, kommt es zu einer Verzö
gerung. Unter diesem Gesichtspunkt erhält daher der Daten
selektor BS von dem Dateneingaberegister (DIL) 15 über die
Operandendaten den internen Bus DB und schreibt den Inhalt
des Adressenausgabepuffers AOBL mit Hilfe der Daten mit einer
hohen Geschwindigkeit wieder ein.
Der Übertragselektor (CSH) 25 hat eine Datenauswählfunktion,
um entweder einen Übertrag von der In-/Dekrementierschaltung
INC/DEC : L auf der niederwertigeren Seite oder einen Übertrag
auszuwählen, welcher von der AL-Einheit 19 erzeugt worden ist,
wenn die Datenberechnung durchgeführt wird. In ähnlicher Weise
hat der Übertragselektor (CSB) 26 eine Datenauswählfunktion,
um entweder einen Übertrag von der In-/Dekrementierschaltung
INC/DEC : H oder einen Übertrag auszuwählen, welcher von der
AL-Einheit 19 erzeugt worden ist, wenn die Datenberechnung
durchgeführt wird. Bei dieser Anordnung arbeiten die AL-Ein
heiten 19 und die Adressenberechnungseinheit 16 zusammen, so
daß eine Additions-(SUM-) Operation über Verschiebungsda
ten in der Prozedur zur Erzeugung der effektiven Adresse
und die Adressenberechnung einer programmbezogenen Adresse
durchgeführt werden kann, wenn ein Sprungbefehl verarbeitet
wird.
Beispielsweise addiert in einem Adressiermode, bei welchem
eine effektive Adresse erzeugt wird, indem 8 Bit-Verschie
bungsdaten zu 24 Bit-Daten addiert werden, die AL-Einheit 19
Bits 7 bis 0 der 24 Bit-Daten und die 8 Bit-Verschiebungs
daten und die Adressenberechnungseinheit 16 führt eine Opera
tion bei den restlichen 16 Bit durch. Wenn das von der AL-
Einheit 19 abgegebene Additionsergebnis einen Übertrag hat,
wird er über den Übertragselektor (CSH) 25 in das Adressen
ausgabepuffer AOBH eingegeben. Folglich führt die Adressen
berechnungseinheit 16 eine Operation einschließlich des vor
erwähnten Übertrags durch.
Andererseits wird bei einer Inkrementieroperation mit Hilfe
der Programmzähler PBC, PCH und PCL die Adresse nur mit Hilfe
der Adressenberechnungseinheit 16 erzeugt. Das heißt, die AL-
Einheit 19 kann unabhängig von der Adressenberechnung eine
andere Operation durchführen. Während dieser Operation wird
der Übertrag von der AL-Einheit 19 vernachlässigt, und der
Übertrag von der Adressenberechnungseinheit 16 wird über den
Übertragselektor 25 weitergegeben.
Die Programmzähler PBC, PCH und PCL sind aus einer 24 Bit-
Programmzähler-Halteschaltung gebildet. Die Inkrementieropera
tion in dieser Halteschaltung wird mit Hilfe der In-/Dekremen
tierschaltungen INC/DEC : B, INC/DEC : H und INC/DEC : L durchge
führt. Die Programmzähler PBC, PCH und PCL sind mit den
internen Busen so, wie in Tabelle 3 dargestellt, verbunden.
Jedes der Zwischenregister TR, ADH und ADL ist durch ein
8 Bit-Register gebildet. Diese Zwischenregister können außer
halb der Zentraleinheit (CPU) als nichtfunktionsfähig angese
hen werden. Die Zwischenregister TR, ADH und ADL sind, wie
in Tabelle 4 dargestellt, mit den internen Busen verbunden.
Das in Fig. 3 dargestellte Datenbankregister DBR ist aus einer
8 Bit-Halteschaltung gebildet. Grundsätzlich ist die Bank
adresse, welche verwendet wird, wenn auf Daten Zugriff er
folgt, die Adresse in dem Datenbankregister DBR. Jedoch wird
die Adresse in dem Datenbankregister DBR entsprechend dem Zu
stand der Mode-Flags M1 und M0 in dem Prozessor-Zustandsregi
ster PSR geändert. Das Datenbankregister (DBR) gibt Daten von
dem internen Bus MB oder SB ein und gibt die Bankadresse an
den internen Bus DB oder SB ab.
Die in Fig. 3 dargestellte Dateneingabe-Halteschaltung 15 ist
aus einer 8 Bit-Halteschaltung gebildet. Daten D7 bis D0
von einer externen Einrichtung werden in die Dateneingabe-
Halteschaltung 15 eingegeben, welche einen Befehlscode an den
Steuerteil 1 abgibt und welche Daten an die internen Buse DB,
MB und SB des Operationsteils 2 abgibt.
Die Datenausgabe-Halteschaltung 34 ist aus einer 8 Bit-Halte
schaltung gebildet. Daten, welche an eine externe Einrichtung
abzugeben sind, werden in die Halteschaltung 34 eingegeben,
welche Daten von dem internen Adressenbus DB oder MB erhält,
welcher Daten D7 bis D0 abgibt.
Nunmehr werden die Funktionen des Steuerteils 1 der Zentral
einheit (CPU) beschrieben.
Der Befehlsvordecodierer 33 hat die folgenden drei Funktions
teile. Die erste Funktion ist folgende: Wenn der Decodiervor
gang eines Befehls in der PL-Anordnung hinsichtlich der
Operationszeit nicht in der Zeit liegt, decodiert der Vorde
codierer 33 den Befehl vor und erzeugt das entsprechende
Steuersignal. Insbesondere enthält die erste Funktion die
Prozeduren, Feststellen eines Einzyklus-Befehls, Steuern der
Erzeugung eines externen Steuersignals und Steuern der Zeit
steuereinheit 7. Die zweite Funktion des Vordecodierers 32
unterstützt die Decodieroperation, um die Größe der PLA zu
minimieren. Insbesondere enthält die zweite Funktion die Pro
zeduren, Feststellen des Kurzbefehls und der durch den Befehl
behandelten Datengröße. Die dritte Funktion besteht darin,
einen unbestimmten Befehl und einen Software-Unterbrechungs
befehl festzustellen.
Der in Fig. 3 dargestellte Taktgenerator 22 erzeugt interne
Takte, die in der Zentraleinheit verwendet worden sind, und
externe Takte, welche in einer externen Einrichtung verwendet
worden sind. Beispiele der Taktsignale sind ein Prozessor
stopp-Eingabesignal WAIT, ein Buszyklus-Änderungseingabesig
nal LSP, ein CPU-Takteingabesignal CLK und System-(Synchroni
sier-)Taktausgabesignale S1 und S2.
Die Systemsteuereinheit 23 erzeugt eine Anzahl Signale, welche
den Betriebszustand der Zentraleinheit (CPU) anzeigen. Ein
Signal BSVT (Vektor-Tabellenadresse) zeigt einen Zustand an,
in welchem eine Vektoradresse abzugeben ist. Ein Signal BSDA
(Datenadresse) zeigt einen Zustand an, in welchem auf Daten
zuzugreifen ist. Ein Signal BSPA (Programmadresse) zeigt ei
nen Zustand an, in welchem auf ein Programm zuzugreifen ist.
Ein Signal BSOF (Operationscode-Abrufen) zeigt einen Zustand
an, in welchem ein externer Speicher zu sperren ist. Signale
RB (Lesebalken) und WB (Schreibbalken) zeigen eine Datenbus-
Transferanforderung für ein Datenlesen bzw. für ein Daten
schreiben an. Ein Signal RWB zeigt an, ob der laufende Zyklus
der Datenlese- oder der Datenschreibzyklus ist.
Die Unterbrechungssteuereinheit 21 führt die folgenden Steu
erungen der Zentraleinheit (CPU) durch. Eine Unterbrechung
RES ist eine Rücksetz-Unterbrechungseingabe. Eine Unterbre
chung NPMI ist eine nicht-maskierbare Unterbrechungseingabe.
Eine Unterbrechung IRQ ist eine Unterbrechungseingabe. Un
terbrechungsauswähleingaben ISEO-3 sind Unterbrechungs
(IRQ-)Auswähleingaben. Eine Unterbrechung WAKE ist eine Ein
gabe zum Freikommen von einem Prozessorstopp-Befehl.
Die Zeitsteuereinheit (TCU) 7 steuert eine Betriebsfolge der
Befehlsausführung. Das Ausführungs-Steuerinterface (ECI) 11
erhält das Ergebnis des Decodierens von der PLA und erzeugt
die zeitliche-ausgerichteten Steuersignale 14. Der Operations-
Codepuffer 4 und das Vorbyte-Befehlsregister 3 werden zum
Speichern von Befehlen verwendet.
In Fig. 4 ist die Struktur der in der vorerwähnten Zentral
einheit (CPU) vorgesehenen programmierbaren Logik-Anordnung
(PLA) dargestellt. In Fig. 4 sind diejenigen Teile, welche die
selben wie die in Fig. 3 dargestellten Teile sind, mit den
selben Bezugszeichen bezeichnet. Der Ausgang der Dateneingabe
halteschaltung 15, welche mit Daten von einer externen Ein
richtung versorgt worden ist, ist mit dem Befehlsvordecodie
rer 33 und dem Operationsbefehlsregister 4 verbunden. Die
Ausgänge des Vordecodierers 33 und des Befehlsregisters 4
sind mit dem Vorbyte-Befehlsregister 3 und dem Operationscode-
Befehlspuffer 51 verbunden.
Die ganze UND-Ebene ist in die UND-Ebene 8 und die UND-Ebene
10 aufgeteilt. Das Vorbyte-Befehlsregister 3, das Bezug zu
dem Adressiermode hat, ist mit der UND-Ebene 8 und das Opera
tionscode-Befehlsregister 51 ist mit der UND-Ebene 10 ver
bunden. Der Ausgang der Zeitsteuereinheit 7 ist mit den UND-
Ebenen 8 und 10 verbunden. Die Ausgänge der UND-Ebenen 8 und
10 sind mit den als Einheit ausgebildeten ODER-Ebenen 9 und
11 verbunden. Obwohl die ODER-Ebene in Fig. 3 so dargestellt
ist, daß sie in die ODER-Ebenen 9 und 11 aufgeteilt ist, sind
die ODER-Ebenen 9 und 11 wechselweise miteinander verbunden.
Nachstehend werden daher die ODER-Ebenen 9 und 11 insgesamt
als eine ODER-Ebene 50 bezeichnet. Folglich sind die zwei
aufgeteilten UND-Ebenen 8 und 10 mit der ODER-Ebene 50 ver
bunden. Die UND-Ebenen 8 und 10 und die ODER-Ebene 50 sind
so, wie in Fig. 5 dargestellt, konfiguriert.
Die UND-Ebenen 8 und 10 haben P-Kanal-MOS-Transistoren 101
(die nachstehend als PMOS-Transistoren bezeichnet sind). Die
Sourcen der PMOS-Transistoren 101 sind mit einer Versorgungs
leitung 100 verbunden. Die Drainelektrode jedes PMOS-Tran
sistors 101 ist für ein Maximum von n(n ist eine ganze Zahl)
N-Kanal-MOS-(NMOS-)Transistoren 102 vorgesehen, welche in
Reihe geschaltet sind, so daß die Source- und Drainelektrode
der benachbarten NMOS-Transistoren 102 miteinander verbunden
sind. Der NMOS-Transistor 102 der ersten Stufe ist mit der
Drainelektrode des entsprechenden PMOS-Transistors 101 ver
bunden, und die Source des NMOS-Transistors 102n ist geerdet.
Ausgangsleitungen 103 gehen in paralleler Form von den UND-
Ebenen bzw. -Bereichen 8 und 10 aus. Eine Ausgangsleitung 103
geht von der Drainelektrode eines PMOS-Transistors 101 weg.
Die Gate-Elektrode der PMOS-Transistoren 101, welche in jeder
der UND-Ebenen 8 und 10 vorgesehen sind, sind mit einer Vor
lade-Leitung verbunden. Wenn ein niedrigpegeliges Vorladesig
nal PRC an die PMOS-Transistoren 101 angelegt wird, werden
diese (101) angeschaltet, so daß die Ausgangsleitungen 103
vorgeladen sind. Dagegen wird, nur wenn die Gates aller NMOS-
Transistoren 102 einschließlich des in Reihe geschalteten
Transistors 102n mit auf niedrigem Pegel liegenden Signalen PRC
versorgt werden, die entsprechende Ausgangsleitung 103 geer
det und auf den niedrigen Pegel gesetzt. Signale I1, I2,...
In, welche von dem Vorbyte-Befehlsregister 3 abgegeben worden
sind, werden an die Gates der entsprechenden NMOS-Transisto
ren 102 der UND-Ebene 8 angelegt. Ebenso werden Signale I1′,
I2′,... In′, welche von dem Operationscode-Befehlspuffer 31
erzeugt und abgegeben worden sind, an die Gates der entspre
chenden NMOS-Transistoren 102 der UND-Ebene 10 angelegt.
In jeder Ausgangsleitungen 103 ist eine Schaltung aus einem
PMOS-Transistor 110 und einem Inverter 104 vorgesehen. Die
Drainelektrode jedes PMOS-Transistors 110 ist mit der Drain
elektrode des entsprechenden PMOS-Transistors 101 und einem
Eingangsanschluß des Inverters 104 verbunden. Die Gate-Elek
trode jedes PMOS-Transistors 110 ist mit einem Ausgangsan
schluß des Inverters 104 verbunden, und die Source-Elektrode
jedes PMOS-Transistors 110 ist mit einer Energieversorgungs
leitung 100 verbunden. Ferner ist die Drainelektrode jedes
PMOS-Transistors 101 über den entsprechenden Inverter 104
mit dem Gate oder den Gates eines oder mehrerer NMOS-Tran
sistoren 105 verbunden.
Die ODER-Ebene 50 weist eine Anzahl NMOS-Transistoren 105
auf, welche für jede der Ausgangsleitungen 103 vorgesehen
sind. Die Drains der NMOS-Transistoren 105, die für jede der
Ausgangsleitungen 103 vorgesehen sind, sind geerdet, und
deren Sources sind mit in paralleler Form angeordneten n-
Ausgangsleitungen 106 verbunden. Die Anzahl an NMOS-Transi
storen 105, welche für die jeweiligen Ausgangsleitungen 106
vorgesehen sind, ist unterschiedlich. Ausgangssignale über
die Ausgangsleitungen 106 laufen über Inverter 107 und wer
den an eine nachfolgende Schaltung oder Vorrichtung abgege
ben. Wenn folglich in der ODER-Ebene 50 einer der NMOS-Tran
sistoren 105, welche mit den Ausgangsleitungen 106 verbunden
sind, durch das von der UND-Ebene 8 oder 10 gelieferte Sig
nal eingeschaltet wird, wird die entsprechende Ausgangslei
tung 106 auf den niedrigen Pegel geschaltet, welcher durch
Inverter 107 invertiert wird, so daß ein Signal mit hohem
Pegel abgegeben wird.
Nunmehr wird die Arbeitsweise der in Fig. 5 dargestellten
programmieren Logik-Anordnung (PLA) beschrieben. Wenn der
Befehl, welcher von der Dateneingabe-Halteschaltung 15 ab
gegeben worden ist, das Format hat, welches keine Vorbyte-
Daten aufweist, wie in Fig. 2A dargestellt ist, läuft der Be
fehl durch den Operationscode-Befehlspuffer 51 hindurch und
wird in die UND-Ebene 10 eingegeben. Ein entsprechendes Steu
ersignal wird infolge des Zusammenwirkens der UND-Ebene 10
und der ODER-Ebene 50 von dem Befehl erzeugt.
Wenn dagegen der Befehl, welcher von der Dateneingabe-Halte
schaltung 15 abgegeben worden ist, das Format hat, welches
die Vorbyte-Daten aufweist, wie in Fig. 2B oder 2C dargestellt
ist, läuft dieser Befehl über das Vorbyte-Befehlsregister 3
und wird der UND-Ebene 8 zugeführt. Dann wird ein entspre
chendes Steuersignal infolge des Zusammenwirkens der UND-
Ebene 8 und der ODER-Ebene 50 von dem Befehl aus erzeugt.
Die Anordnung, in welcher die Ausgänge der UND-Ebenen 8 und
10 gemeinsam mit der ODER-Ebene 50 verbunden sind, wird ver
wendet, um nicht nur die Adressenrecheneinheit 16, sondern
auch die AL-Einheit 19 sowie die Register zu benutzen, wenn
die Adressieroperation durchgeführt wird, und um nicht nur
die AL-Einheit 19, sondern auch Daten in den Registern zu be
nutzen. Daher wird die ODER-Ebene 50 gemeinsam für die Be
fehle, die Vorbyte-Daten haben, und für Befehle verwendet,
die keine Vorbyte-Daten haben.
Bekanntlich ist die programmierbare Logik-Anordnung (PLA)
aus der zweistufigen Logikschaltung gebildet, und folglich
arbeitet die PL-Anordnung mit einer hohen Geschwindigkeit.
Da ferner die einzige Zeitsteuereinheit 7 verwendet wird,
kann als eine einzige kontinuierliche Folge die Adressier
operation mit Hilfe der UND-Ebene 8 und die Befehlsoperation
mit Hilfe der UND-Ebene 10 gesteuert werden. Im Vergleich mit
dem eingangs erwähnten logischen Faltungsprozeß wird das Laden
der ganzen UND-Ebene nicht sehr geändert, so daß die Opera
tionsgeschwindigkeit der PLA mit einer beständigen Geschwin
digkeit arbeiten kann. Da ferner die PLA im Hinblick auf ihre
Funktionen an zwei Gruppen aufgeteilt ist, kann der logische
Faltungsprozeß leicht durchgeführt werden und die Anzahl Sig
nale, die in jede UND-Ebene eingegeben worden ist, kann ver
ringert werden. Dies bedeutet, daß jede der UND-Ebenen 8 und
10 durch eine reduzierte Anzahl von NMOS-Transistoren 102
konfiguriert ist. Folglich kann die Größe in einer in Fig. 5
angezeigten Richtung y verringert werden. Da die Funktionen
der UND-Ebene in Gruppen aufgeteilt sind, kann eine einfache
Befehlsarchitektur verwendet werden. Insbesondere kann die
Arbeitsweise und Logik leicht modifiziert werden. Da ferner
die Befehlsdecoder für das Adressieren bzw. den Operations
code vorgesehen sind, kann das Adressieren und der Operations
code beliebig kombiniert werden, so daß eine im wesentlichen
orthogonale Beziehung zwischen dem Adressieren und dem Opera
tionscode erhalten werden kann.
Der Sprungbefehl wird folgendermaßen verarbeitet. In Fig. 6
ist ein Teil der in Fig. 3 dargestellten Stuktur wiedergegeben,
welche den Sprungbefehl verarbeitet. In Fig. 6 sind diejenigen
Teile, welche denselben Teilen in Fig. 3 entsprechen, mit den
selben Bezugszeichen bezeichnet. Der aus 8 Bit bestehende
Sprungbefehl wird über die Dateneingabe-Halteschaltung 15 in
den Befehlsvordecodierer 33 eingegeben. Der Ausgang des Be
fehlsvordecodierers 33 ist mit der Sprungfeststellschaltung
(BRDT) 18 verbunden, welche ein Signal erzeugt, das anzeigt,
ob der Sprungprozeß bezüglich des Inhaltes des Prozessorzu
standsregisters 30, durchgeführt werden sollte oder nicht,
wenn der Sprungbefehl erzeugt wird. Der Ausgang der Sprung
feststellschaltung 18 ist über den Befehlspuffer 51 mit der
UND-Ebene 10 verbunden. Der Ausgangs der UND-Ebene ist mit
ODER-Ebene 11 verbunden, und die PL-Anordnung, welche Bezug
zu dem Sprungbefehl hat, ist durch die UND-Ebene 10 und die
ODER-Ebene 11 konfiguriert.
Der Sprungbefehl wird folgendermaßen verarbeitet. Der in die
Dateneingabe-Halteschaltung 15 eingegebene Sprungbefehl be
steht aus 8 Bits, wie in Fig. 7 dargestellt ist. Vier höher
wertige Bits des 8 Bit-Sprungbefehls sind alle null, und
dessen vier niederwertige Bits zeigen eine Sprungbedingung
(CCT) an. Der Sprungbefehl wird durch den Befehlsvordecodie
rer 33 decodiert und dann an die Sprungfeststellschaltung 18
angelegt.
Die Sprungbedingung, welche durch die vier niederwertigen
Bits gebildet ist, welche in Fig. 8 mit B3 bis B0 bezeichnet
sind, wird mit Hilfe der Zustandsflagdaten C, Z, N und V de
codiert, welche in dem Prozessor-Zustandsregister 30 ge
speichert sind, um zu bestimmen, ob der Sprungprozeß durch
geführt werden sollte oder nicht. Die Sprungfeststellschal
tung 18 gibt ein Signal mit hohem Pegel ab, wenn der Sprung
prozeß durchgeführt werden sollte, und gibt ein Signal mit
einem niedrigen Pegel ab, wenn der Sprungprozeß nicht er
forderlich ist.
Die Bits B3 bis B0 der Sprungbedingung CCT werden in Ein
gabeleitungen 150 bis 153 eingegeben. Die Sprungbedingungs
(CCT-) Daten (Bits B3 bis B0) legen 16 verschiedene in Ta
belle 5 dargestellte Bedingungen fest. Hierbei sind C ein
Übertragflag-Datenwert, Z ein Nullflag-Datenwert, N ein ne
gativer Flag-Datenwert und V ein Überlaufflag-Datenwert.
Wie in Fig. 8 dargestellt, setzt sich die Sprungfeststell
schaltung 18 aus Invertern 161, Transfergliedern 162, NOR-
Gliedern 163, einem UND-Glied 164 und NAND-Gliedern 165 zu
sammen. Die Daten über den Zustand C werden in das entspre
chende, durch das Bit B0 gesteuerte Transferglied 161 über
eine Leitung 154 und den Inverter 161 eingegeben. Die Daten
über den Zustand Z werden an das entsprechende, durch das Bit
B0 gesteuerte Transferglied 162 über eine Leitung 155 und den
Inverter 161 eingegeben. Die Daten über den Zustand N werden
an das entsprechende, durch das Bit B0 gesteuerte Transfer
glied 162 über eine Leitung 156 und den Inverter 161 einge
geben. Die Daten über den Zustand V werden an das entsprechen
de, durch das Bit B0 gesteuerte Transferglied 162 über eine
Leitung 157 und den Inverter 161 eingegeben. Die Daten über
C, Z, N bzw. V passieren die von dem Bit B1 gesteuerten
Transferglieder 162. Die Daten über C und Z passieren das
von dem Bit B2 gesteuerte Transferglied 162 und die Daten
über N und V passieren das durch das Bit B2 gesteuerte Trans
ferglied 162. Die Ausgangssignale dieser zwei Transferglie
der 162 passieren den Inverter und werden in zwei Wege ver
zweigt, welche jeweils durch die von dem Bit B3 gesteuerten
Transferglieder 162 gesteuert werden. Die Ausgangssignale
dieser zwei Transferglieder 162 passieren den Inverter 162
und werden dann als das Sprungsignal BRF abgegeben. Das von
der Schaltung 18 abgegebene Sprungsignal BRF wird über das
Befehlsregister 51 in die UND-Ebene 10 eingegeben. Die PL-
Anordnung steuert den Sprungbefehl durch das Sprungsignal
BRF und andere Eingangsdaten, wie den Operationscode.
Wie vorstehend beschrieben, wird durch Eingeben der Sprungbe
dingungsdaten in die UND-Ebene 10 die Sprungoperation ent
sprechend dem Sprungbefehl durchgeführt. Beispielsweise hat
der Sprungbefehl die folgenden drei Adressierprozeduren, um
die Adresse anzuzeigen, an welcher die Prozedur verzweigt
werden sollte.
In dem ersten Adressiermode bezüglich des Sprung- bzw. Ver
zweigungsbefehls werden 8 Bit-Daten zu der Adresse eines Be
fehls addiert, welcher dem Sprung- oder Verzweigungsbefehl
am nächsten ist. Das heißt, eine Adresse wird in eine der
Adressen in dem Bereich von -128 bis +127 verzweigt. Der
vorerwähnte erste Adressiermode wird insbesondere ein rela
tiver Adressiermode genannt.
Bei dem zweiten Adressiermode bezüglich des Sprung- oder
Verzweigungsbefehls werden 16 Bit-Daten zu der Adresse eines
Befehls addiert, welcher dem Sprung- oder Verzweigungsbefehl
am nächsten ist. Der zweite Adressiermode wird insbesondere
ein relativ langer Adressiermode genannt. Bei dem dritten
Adressiermode bezüglich des Sprung- oder Verzweigungsbefehls
sind die in den Registern W0 bis W3 gespeicherten Daten die
Adresse, an welcher die Prozedur verzweigt werden soll. Der
dritte Adressiermode wird insbesondere als ein indirekter
Register-Adressiermode bezeichnet.
Beispielsweise ist die Arbeitsweise bei dem relativen Adres
siermode folgende: Die Arbeitsweise, welche einen Sprung
bzw. eine Verzweigung hervorruft, ist folgende. Zuerst wird
der Operationscode durch eine Adresse A abgerufen, zweitens
werden 8 Bit-Verschiebungsdaten (DISPL), welche der Adresse
der Sprung- oder Verzweigungsbestimmung entsprechen, durch
eine Adresse (A + 1) abgerufen. Drittens werden die abgeru
fenen Daten zu einer Adresse (A + 2) addiert, und die Durch
führung des Befehls ist beendet. Viertens wird der Opera
tionscode in der Sprung- oder Verzweigungsbestimmung durch
eine Adresse (A + 2 + DISPL) abgerufen. Andererseits ist die
Operation, bei welcher kein Sprung erzeugt wird, folgende:
Zuerst wird der Operationscode durch eine Adresse A abgerufen.
Zweitens endet die Durchführung des Befehls bei einer Adresse
(A + 1). Ein nächster Operationscode wird bei einer
Adresse (A + 2) abgerufen.
Nunmehr wird die Operation bei dem verhältnismäßig langen
Adressiermode beschrieben. Die Operation, welche einen Sprung
oder Verzweigung erzeugt, ist folgende. Zuerst werden die Vor
byte-Daten an einer Adresse A abgerufen. Zweitens wird der
Operationscode an einer Adresse (A + 1) abgerufen. Drittens
die 8 niedrigerwertigen Bits (DISPL) der 16 Bit-Verschie
bungsdaten (welche der Adresse der Sprung- bzw. Verzweigungs
bestimmung entsprechen) werden an einer Adresse (A + 2) ab
gerufen. Viertens die 8 höherwertigen Bit (DISPH) der 16
Bit-Verschiebungsdaten (welche der Adresse der Sprung- bzw.
Verzweigungsbestimmung entsprechen) werden an einer Adresse
(A + 3) abgerufen. Fünftens werden die abgerufenen Daten zu
der Adresse (A + 4) addiert, und die Durchführung des Be
fehls ist beendet. Sechstens wird der Operationscode, welcher
an der Sprung- bzw. Verzweigungsbestimmung erhalten worden
ist, an einer Adresse (A + 4 + DISP) abgerufen.
Dagegen ist die Arbeitsweise, welche zu keinem Sprung bzw.
keiner Verzweigung führt, folgende: Zuerst werden die Vorbyte-
Daten an einer Adresse A abgerufen. Zweitens wird der Opera
tionscode an einer Adresse (A + 1) abgerufen. Drittens wer
den die abgerufenen Daten an einer Adresse (A + 2) addiert,
und der Befehl endet. Viertens wird die nächste Operation
an einer Adresse (A + 4) abgerufen.
Die Arbeitsweise bei dem indirekten Register-Adressiermode
wird nunmehr beschrieben. Die Arbeitsweise, welche einen
Sprung bzw. eine Abzweigung erzeugt, ist folgende. Zuerst
werden die Vorbyte-Daten an einer Adresse A abgerufen. Zwei
tens wird der Operationscode an einer Adresse (A + 1) abge
rufen. In dem Register gespeicherte Daten werden als die
Adresse des Programmzählers geladen, und die Durchführung des
Befehls ist beendet. Der Operationscode, welcher bei der
Sprung- bzw. Verzweigungsbestimmung erhalten worden ist, wird
an der Adresse (Registerwert) abgerufen. Andererseits ist die
Arbeitsweise, welche zu keinem Sprung bzw. keiner Verzweigung
führt, folgende. Erstens wird das Vorbyte an einer Adresse
A abgerufen. Zweitens wird der Operationscode an einer Adres
se (A + 1) abgerufen. Der Befehl endet bei einer Adresse
(A + 2). Die Adresse wird nicht inkrementiert. An einer
Adresse (A + 2) wird der nächste Operationscode abgerufen.
Wie oben bereits beschrieben ist, unterscheiden sich die
Operationen in den verschiedenen Adressiermodes voneinander.
Bekanntlich haben die herkömmlichen Zentraleinheiten nur
einen der vorerwähnten drei Adressiermodes. Gemäß der be
vorzugten Ausführungsform der Erfindung wird dagegen das
Signal, welches anzeigt, ob der Sprung bzw. die Verzweigung
gemacht werden sollte, in die UND-Ebene 10 eingegeben. Folg
lich kann eine gewünschte Operation durchgeführt werden
während einer der drei Adressiermodes gewählt wird.
Die Ausgangsleitung von der Sprungfeststellschaltung 18 in
die UND-Ebene 10 der PL-Anordnung ist als eine Ein-Bit-Lei
tung ausgebildet, da das Signal, welches über die Ausgangs
leitung übertragen worden ist, anzeigt, ob der Sprung bzw.
die Verzweigung gemacht werden sollte oder nicht, und ist
folglich aus einem Ein-Bit-Datenwert gebildet. Außerdem wird
das Ausgangssignal der Sprungfeststellschaltung 18 der UND-
Ebene 10 über den Befehlspuffer 51 in derselben Weise wie
andere Daten zugeführt. Folglich kann die PLA-Konfiguration
getrennt von anderen Schaltungsteilen durch ein einfaches
Steuerprogramm gebildet werden.
In Fig. 9 ist ein System mit einer Zentraleinheit gemäß der
vorerwähnten Ausführungsform der Erfindung dargestellt. Das
in Fig. 9 dargestellte System setzt sich zusammen aus einer
Zentraleinheit (CPU) 100, einem Festwertspeicher (ROM) 200
und einem Random-Speicher (RAM) 300. Diese Einrichtungen sind
wechselweise über einen Adressenbus 400, einen Datenbus 410
und einen Steuerbus 420 miteinander verbunden. Ein Taktsignal
CLK und ein Rücksetzsignal RES werden von einer (nicht dar
gestellten) externen Einrichtung an die Zentraleinheit 100
abgegeben. Die in Fig. 13 dargestellten Halteschaltungen 15
und 34 sind mit dem Datenbus 410 verbunden.
Claims (21)
1. Programmierbare Logik-Anordnung, welche eine Anzahl UND-
Ebenen (8, 10) aufweist, die jeweils eine logische UND-Opera
tion ausführen und Eingangs- sowie Ausgangsanschlüsse haben,
gekennzeichnet durch eine einzige ODER-Ebene
(9, 11, 50), welche für die Anzahl UND-Ebenen (8, 10) gemeinsam
vorgesehen ist und eine logische ODER-Operation ausführt,
wobei die einzige ODER-Ebene Eingangsanschlüsse, welche mit
den Ausgangsanschlüssen der Anzahl UND-Ebenen verbunden sind,
und Ausgangsanschlüsse aufweist.
2. Programmierbare Logik-Anordnung nach Anspruch 1, ge
kennzeichnet durch eine Informations-Verteilungs
einrichtung (33, 4), welche mit der Anzahl UND-Ebenen (8, 10)
verbunden ist, um Information aufzunehmen, welche von einer
externen Einrichtung geliefert wird, und um die Information
an die Anzahl UND-Ebenen (8, 10) über deren Eingangsanschlüsse
auf der Basis einer vorherbestimmten Bedingung über die Infor
mation zu verteilen.
3. Programmierbare Logik-Anordnung nach Anspruch 1, ge
kennzeichnet durch eine Zeitsteuereinrichtung
(7), welche mit der Anzahl UND-Ebenen (8, 10) verbunden ist,
um ein Zeitsteuersignal zu erzeugen und um zu bewirken, daß
die Anzahl UND-Ebenen die Information synchron mit dem Zeit
steuersignal erhalten.
4. Programmierbare Logik-Anordnung nach Anspruch 1, dadurch
gekennzeichnet, daß die Information eine erste
Information (Fig. 2A) und eine zweite Information (Fig. 2B und
2C) aufweist;
die Anzahl UND-Ebenen eine erste UND-Ebene (8) und eine zweite UND-Ebene (10) hat, und
die Informationsverteilungseinrichtung Einrichtungen (33, 4) aufweist, um zu bestimmen, ob die Information die erste oder die zweite Information hat, und um die Information auf eine der ersten und zweiten UND-Ebenen auf der Basis eines Be stimmungsergebnisses zu verteilen, welches anzeigt, ob die erste oder die zweite Information in der Information enthal ten ist.
die Anzahl UND-Ebenen eine erste UND-Ebene (8) und eine zweite UND-Ebene (10) hat, und
die Informationsverteilungseinrichtung Einrichtungen (33, 4) aufweist, um zu bestimmen, ob die Information die erste oder die zweite Information hat, und um die Information auf eine der ersten und zweiten UND-Ebenen auf der Basis eines Be stimmungsergebnisses zu verteilen, welches anzeigt, ob die erste oder die zweite Information in der Information enthal ten ist.
5. Programmierbare Logik-Anordnung nach Anspruch 1, ge
kennzeichnet durch einen Vordecodierer (33),
welcher zumindest mit einer der Anzahl UND-Ebenen verbunden
ist, um die Information zu decodieren und um decodierte In
formation an zumindest eine der Anzahl UND-Ebenen abzuge
ben.
6. Programmierbare Logik-Anordnung nach Anspruch 5,
dadurch gekennzeichnet, daß
die Information Vorbyte-Daten enthält, welche decodiert wer den sollten, bevor die Information auf die Anzahl UND-Ebenen verteilt wird, und
der Vordecodierer (33) Einrichtungen zum Vordecodieren der Vorbyte-Daten und zum Abgeben vordecodierter Vorbyte-Daten an zumindest eine der Anzahl UND-Ebenen aufweist.
die Information Vorbyte-Daten enthält, welche decodiert wer den sollten, bevor die Information auf die Anzahl UND-Ebenen verteilt wird, und
der Vordecodierer (33) Einrichtungen zum Vordecodieren der Vorbyte-Daten und zum Abgeben vordecodierter Vorbyte-Daten an zumindest eine der Anzahl UND-Ebenen aufweist.
7. Programmierbare Logik-Anordnung nach Anspruch 6, ge
kennzeichnet durch ein Register (3), um vor
übergehend die vordecodierten Vorbyte-Daten zu speichern,
welche von der Einrichtung des Vordecodierers geliefert wor
den sind, und um die vordecodierten Vorbyte-Daten an zumin
dest eine der Anzahl UND-Ebenen abzugeben.
8. Programmierbare Logik-Anordnung nach Anspruch 1, ge
kennzeichnet durch eine Decodiereinrichtung (33),
um die Information zu decodieren und um decodierte Informa
tion abzugeben, welche an die Anzahl UND-Ebenen zu liefern
ist,
wobei jede der Anzahl UND-Ebenen aufweist:
eine Anzahl P-Kanal-MOS- (Metalloxid-Halbleiter) Transistoren (101), die jeweils eine Gate-Elektrode, die ein Steuersignal von einer externen Einrichtung erhält, einen ersten An schluß, welcher mit einer ersten Energiequelle verbunden ist, und einen zweiten Anschluß haben;
eine Anzahl in Reihe geschalteter Schaltungen (102, 102n) , die jeweils eine Anzahl N-Kanal-MOS-Transistoren haben, wel che in Reihe zwischen den zweiten Anschluß eines entspre chenden P-Kanal-MOS-Transistors und eine zweite Energie quelle geschaltet sind, und
UND-Ausgangsleitungen (103), die jeweils mit der Gate-Elek trode eines entsprechenden der P-Kanal-MOS-Transistoren ver bunden sind, wobei die Anzahl UND-Ebenen über die UND-Aus gangsleitungen mit der einzigen ODER-Ebene verbunden ist.
eine Anzahl P-Kanal-MOS- (Metalloxid-Halbleiter) Transistoren (101), die jeweils eine Gate-Elektrode, die ein Steuersignal von einer externen Einrichtung erhält, einen ersten An schluß, welcher mit einer ersten Energiequelle verbunden ist, und einen zweiten Anschluß haben;
eine Anzahl in Reihe geschalteter Schaltungen (102, 102n) , die jeweils eine Anzahl N-Kanal-MOS-Transistoren haben, wel che in Reihe zwischen den zweiten Anschluß eines entspre chenden P-Kanal-MOS-Transistors und eine zweite Energie quelle geschaltet sind, und
UND-Ausgangsleitungen (103), die jeweils mit der Gate-Elek trode eines entsprechenden der P-Kanal-MOS-Transistoren ver bunden sind, wobei die Anzahl UND-Ebenen über die UND-Aus gangsleitungen mit der einzigen ODER-Ebene verbunden ist.
9. Programmierbare Logik-Anordnung nach Anspruch 8, dadurch
gekennzeichnet, daß die einzige ODER-Ebene (50)
aufweist:
eine Anzahl ODER-Ausgangsleitungen (106) und
eine Anzahl Gruppen von N-Kanal-MOS-Transistoren (105), wobei jede der Gruppen eine Anzahl N-MOS-Transistoren hat, jeder der N-MOS-Tranistoren eine mit einer entsprechenden Ausgangs leitung verbundene Gate-Elektrode, einen ersten Anschluß, wel cher mit einer entsprechenden ODER-Ausgangsleitung verbunden ist, und einen zweiten Anschluß hat, welcher mit der zweiten Energiequelle verbunden ist.
eine Anzahl ODER-Ausgangsleitungen (106) und
eine Anzahl Gruppen von N-Kanal-MOS-Transistoren (105), wobei jede der Gruppen eine Anzahl N-MOS-Transistoren hat, jeder der N-MOS-Tranistoren eine mit einer entsprechenden Ausgangs leitung verbundene Gate-Elektrode, einen ersten Anschluß, wel cher mit einer entsprechenden ODER-Ausgangsleitung verbunden ist, und einen zweiten Anschluß hat, welcher mit der zweiten Energiequelle verbunden ist.
10. Programmierbare Logik-Anordnung nach Anspruch 9, dadurch
gekennzeichnet, daß die UND-Ausgangsleitungen
(103) eine UND-Ausgangsleitung aufweisen, welche zumindest
mit zwei N-Kanal-MOS-Transistoren unter den N-Kanal-MOS-
Transistoren der ODER-Ebene verbunden ist.
11. Datenverarbeitungseinrichtung mit
einer PLA-(programmierbaren Logik-Anordnungs-)Schaltung (1) welche Information erhält, welche von einer externen Einrich tung geliefert wird und welche ein decodiertes Signal abgibt;
einer Interface-Einrichtung (14), welche mit der PLA-Schal tung verbunden ist, um ein Steuersignal von dem decodierten Signal zu erzeugen, und
einer Operationseinrichtung (2), welche mit der Interface-Ein richtung verbunden und eine arithmetische Logik-Einheit hat, um eine Operation an Daten auf der Basis des Steuersignals durchzuführen,
dadurch gekennzeichnet, daß die PLA-Schaltung aufweist:
eine Anzahl UND-Ebenen, die jeweils eine logische UND-Opera tion an der Information durchführen und Eingangs- und Aus gangsanschlüsse haben und
eine einzige ODER-Ebene, welche für die Anzahl UND-Ebenen gemeinsam vorgesehen ist und eine logische ODER-Operation an Signalen ausführt, welche von den UND-Ebenen aus abge geben worden sind, wobei die einzige ODER-Ebene Eingangsan schlüsse, welche mit den Ausgangsanschlüssen der Anzahl UND-Ebenen verbunden sind, und Ausgangsanschlüsse hat, über welche decodierte Signale abgegeben werden.
einer PLA-(programmierbaren Logik-Anordnungs-)Schaltung (1) welche Information erhält, welche von einer externen Einrich tung geliefert wird und welche ein decodiertes Signal abgibt;
einer Interface-Einrichtung (14), welche mit der PLA-Schal tung verbunden ist, um ein Steuersignal von dem decodierten Signal zu erzeugen, und
einer Operationseinrichtung (2), welche mit der Interface-Ein richtung verbunden und eine arithmetische Logik-Einheit hat, um eine Operation an Daten auf der Basis des Steuersignals durchzuführen,
dadurch gekennzeichnet, daß die PLA-Schaltung aufweist:
eine Anzahl UND-Ebenen, die jeweils eine logische UND-Opera tion an der Information durchführen und Eingangs- und Aus gangsanschlüsse haben und
eine einzige ODER-Ebene, welche für die Anzahl UND-Ebenen gemeinsam vorgesehen ist und eine logische ODER-Operation an Signalen ausführt, welche von den UND-Ebenen aus abge geben worden sind, wobei die einzige ODER-Ebene Eingangsan schlüsse, welche mit den Ausgangsanschlüssen der Anzahl UND-Ebenen verbunden sind, und Ausgangsanschlüsse hat, über welche decodierte Signale abgegeben werden.
12. Datenverarbeitungseinrichtung nach Anspruch 11, gekenn
zeichnet durch eine Informations-Verteilungseinrich
tung, welche mit der Anzahl UND-Ebenen verbunden ist, um
die Information aufzunehmen, welche von der externen Ein
richtung geliefert worden ist, und um die Information an
die Anzahl UND-Ebenen über deren Eingangsanschlüsse auf der
Basis einer vorherbestimmten Bedingung über diese Informa
tion zu verteilen.
13. Datenverarbeitungseinrichtung nach Anspruch 11, dadurch
gekennzeichnet, daß
die Information eine erste Information, welche sich auf eine Adresse eines Speicherbereichs einer Speichereinrichtung be zieht, welche mit der Datenverarbeitungseinheit verbunden ist, und eine zweite Information aufweist, welche sich auf eine Operation an Daten bezieht, und
die Informations-Verteilungseinrichtung eine Einrichtung auf weist, um zu bestimmen, ob die Information die erste oder die zweite Information hat, und um die Information auf eine der ersten und zweiten UND-Ebenen auf der Basis eines Bestimmungs ergebnisses zu verteilen, welches anzeigt, ob die erste oder die zweite Information in der Information enthalten ist.
die Information eine erste Information, welche sich auf eine Adresse eines Speicherbereichs einer Speichereinrichtung be zieht, welche mit der Datenverarbeitungseinheit verbunden ist, und eine zweite Information aufweist, welche sich auf eine Operation an Daten bezieht, und
die Informations-Verteilungseinrichtung eine Einrichtung auf weist, um zu bestimmen, ob die Information die erste oder die zweite Information hat, und um die Information auf eine der ersten und zweiten UND-Ebenen auf der Basis eines Bestimmungs ergebnisses zu verteilen, welches anzeigt, ob die erste oder die zweite Information in der Information enthalten ist.
14. Datenverarbeitungseinrichtung nach Anspruch 11, dadurch
gekennzeichnet durch eine Zeitsteuereinrichtung,
welche mit der Anzahl UND-Ebenen verbunden ist, um ein Zeit
steuersignal zu erzeugen und um zu bewirken, daß die Anzahl
UND-Ebenen die Information synchron mit dem Zeitsteuersignal
empfangen.
15. Datenverarbeitungseinrichtung nach Anspruch 11, ge
kennzeichnet durch einen Vordecodierer, welcher
zumindest mit einer der Anzahl UND-Ebenen verbunden ist, um
die Information zu decodieren und decodierte Information an
zumindest eine der Anzahl UND-Ebenen abzugeben.
16. Datenverarbeitungseinrichtung nach Anspruch 15, dadurch
gekennzeichnet, daß
die Information Vorbyte-Daten enthält, welche decodiert sein sollten, bevor die Information an die Anzahl UND-Ebenen verteilt wird, und
der Vordecodierer eine Einrichtung aufweist, um die Vorbyte- Daten vorzudecodieren und um vordecodierte Vorbyte-Daten an zumindest eine der Anzahl UND-Ebenen abzugeben.
die Information Vorbyte-Daten enthält, welche decodiert sein sollten, bevor die Information an die Anzahl UND-Ebenen verteilt wird, und
der Vordecodierer eine Einrichtung aufweist, um die Vorbyte- Daten vorzudecodieren und um vordecodierte Vorbyte-Daten an zumindest eine der Anzahl UND-Ebenen abzugeben.
17. Datenverarbeitungseinrichtung nach Anspruch 16, gekenn
zeichnet durch eine Registeranordnung, um vorüberge
hend die vordecodierten Vorbyte-Daten zu speichern, welche
von der Einrichtung des Vordecodierers geliefert worden sind,
und um die vordecodierten Vorbyte-Daten an zumindest eine
der Anzahl UND-Ebenen abzugeben.
18. Datenverarbeitungseinrichtung nach Anspruch 11, gekenn
zeichnet durch eine Decodiereinrichtung zum Decodie
ren der Information und zum Abgeben von decodierter Informa
tion, welche an eine der Anzahl UND-Ebenen zu liefern ist,
wobei jede der Anzahl UND-Ebenen aufweist:
eine Anzahl P-Kanal-MOS-(Metalloxid-Halbleiter-)Transistoren,
die jeweils eine Gate-Elektrode, welche ein Steuersignal von der externen Einrichtung erhält, einen ersten Anschluß, wel cher mit einer ersten Energiequelle verbunden ist, und einen zweiten Anschluß hat;
eine Anzahl in Reihe geschalteter Schaltungen, die jeweils eine Anzahl N-Kanal-MOS-Transistoren haben, die in Reihe zwi schen den zweiten Anschluß eines entsprechenden der P-Kanal- MOS-Transistoren und eine zweite Energiequelle geschaltet sind, und
UND-Ausgangsleitungen, welche jeweils mit der Gate-Elektrode eines entsprechenden der P-Kanal-MOS-Transistoren verbunden sind, wobei die Anzahl UND-Ebenen mit der einzigen ODER- Ebene über die UND-Ausgangsleitungen verbunden ist.
eine Anzahl P-Kanal-MOS-(Metalloxid-Halbleiter-)Transistoren,
die jeweils eine Gate-Elektrode, welche ein Steuersignal von der externen Einrichtung erhält, einen ersten Anschluß, wel cher mit einer ersten Energiequelle verbunden ist, und einen zweiten Anschluß hat;
eine Anzahl in Reihe geschalteter Schaltungen, die jeweils eine Anzahl N-Kanal-MOS-Transistoren haben, die in Reihe zwi schen den zweiten Anschluß eines entsprechenden der P-Kanal- MOS-Transistoren und eine zweite Energiequelle geschaltet sind, und
UND-Ausgangsleitungen, welche jeweils mit der Gate-Elektrode eines entsprechenden der P-Kanal-MOS-Transistoren verbunden sind, wobei die Anzahl UND-Ebenen mit der einzigen ODER- Ebene über die UND-Ausgangsleitungen verbunden ist.
19. Datenverarbeitungseinrichtung nach Anspruch 18, dadurch
gekennzeichnet, daß die einzige ODER-Ebene auf
weist:
eine Anzahl ODER-Ausgangsleitungen und
eine Anzahl Gruppen von N-Kanal-MOS-Transistoren, wobei jede der Gruppen eine Anzahl N-MOS-Transistoren hat, jeder der N- MOS-Transistoren eine Gate-Elektrode, welche mit einer ent sprechenden der Ausgangsleitungen verbunden ist, einen ersten Anschluß, welcher mit einer entsprechenden der ODER-Ausgangs leitungen verbunden ist, und einen zweiten Anschluß hat, wel cher mit der zweiten Energiequelle verbunden ist.
eine Anzahl ODER-Ausgangsleitungen und
eine Anzahl Gruppen von N-Kanal-MOS-Transistoren, wobei jede der Gruppen eine Anzahl N-MOS-Transistoren hat, jeder der N- MOS-Transistoren eine Gate-Elektrode, welche mit einer ent sprechenden der Ausgangsleitungen verbunden ist, einen ersten Anschluß, welcher mit einer entsprechenden der ODER-Ausgangs leitungen verbunden ist, und einen zweiten Anschluß hat, wel cher mit der zweiten Energiequelle verbunden ist.
20. Datenverarbeitungseinrichtung nach Anspruch 19, dadurch
gekennzeichnet, daß die UND-Ausgangsleitungen
eine UND-Ausgangsleitung aufweisen, welche mit zumindest zwei
N-Kanal-MOS-Transistoren unter den N-Kanal-MOS-Transistoren
der ODER-Ebene verbunden ist.
21. Datenverarbeitungseinrichtung nach Anspruch 11, dadurch ge
kennzeichnet, daß die Information eine Sprung-
oder Verzweigungsinformation aufweist, welche eine Änderung
einer Prozedur der von der Operationseinrichtung durchge
führten Operation anzeigt, und daß die Datenverarbeitungs
einheit aufweist:
einen Vordecodierer zum Vordecodieren der Information, bevor die Information in die Anzahl UND-Ebenen eingegeben wird, und zum Abgeben vordecodierter Information;
eine Zustandsinformations-Speichereinrichtung zum Speichern von Zustandsinformation, welche einen Betriebszustand der Operationseinrichtung anzeigt, und
eine Sprung- bzw. Verzweigungs-Feststelleinrichtung, welche mit dem Vordecodierer und der Zustandsinformations-Spei chereinrichtung verbunden ist, um zu bestimmen, ob einer vorherbestimmten Sprung- oder Verzweigungsbedingung auf der Basis der vordecodierten Information genügt ist, welche die Sprung- oder Verzweigungsinformation und den Betriebszustand der Operationseinrichtung enthält, welche durch die Zustands information angezeigt worden ist, welche in der Zustandsin formations-Speichereinrichtung gespeichert worden ist, und um ein Feststellergebnis an zumindest einer der Anzahl UND-Ebenen abzugeben.
einen Vordecodierer zum Vordecodieren der Information, bevor die Information in die Anzahl UND-Ebenen eingegeben wird, und zum Abgeben vordecodierter Information;
eine Zustandsinformations-Speichereinrichtung zum Speichern von Zustandsinformation, welche einen Betriebszustand der Operationseinrichtung anzeigt, und
eine Sprung- bzw. Verzweigungs-Feststelleinrichtung, welche mit dem Vordecodierer und der Zustandsinformations-Spei chereinrichtung verbunden ist, um zu bestimmen, ob einer vorherbestimmten Sprung- oder Verzweigungsbedingung auf der Basis der vordecodierten Information genügt ist, welche die Sprung- oder Verzweigungsinformation und den Betriebszustand der Operationseinrichtung enthält, welche durch die Zustands information angezeigt worden ist, welche in der Zustandsin formations-Speichereinrichtung gespeichert worden ist, und um ein Feststellergebnis an zumindest einer der Anzahl UND-Ebenen abzugeben.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1290667A JP2968289B2 (ja) | 1989-11-08 | 1989-11-08 | 中央演算処理装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
DE4035405A1 true DE4035405A1 (de) | 1991-05-16 |
DE4035405C2 DE4035405C2 (de) | 1993-01-14 |
Family
ID=17758937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE4035405A Granted DE4035405A1 (de) | 1989-11-08 | 1990-11-07 | Programmierbare logik-anordnung und datenverarbeitungseinrichtung mit einer solchen logik-anordnung |
Country Status (3)
Country | Link |
---|---|
US (1) | US5511173A (de) |
JP (1) | JP2968289B2 (de) |
DE (1) | DE4035405A1 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4327660A1 (de) * | 1992-08-20 | 1994-02-24 | Mitsubishi Electric Corp | Vorrichtung zum Herstellen einer und Herstellungsverfahren für eine integrierte Halbleiterschaltungsvorrichtung und elektronische Schaltungsvorrichtung |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5574930A (en) * | 1994-08-12 | 1996-11-12 | University Of Hawaii | Computer system and method using functional memory |
US5737631A (en) * | 1995-04-05 | 1998-04-07 | Xilinx Inc | Reprogrammable instruction set accelerator |
US5748979A (en) * | 1995-04-05 | 1998-05-05 | Xilinx Inc | Reprogrammable instruction set accelerator using a plurality of programmable execution units and an instruction page table |
US5805871A (en) * | 1995-07-21 | 1998-09-08 | Ricoh Company Ltd. | System and method for phase-synchronous, flexible-frequency clocking and messaging |
US5794062A (en) * | 1995-04-17 | 1998-08-11 | Ricoh Company Ltd. | System and method for dynamically reconfigurable computing using a processing unit having changeable internal hardware organization |
US6266756B1 (en) * | 1995-07-17 | 2001-07-24 | Ricoh Company, Ltd. | Central processing unit compatible with bank register CPU |
US5943242A (en) | 1995-11-17 | 1999-08-24 | Pact Gmbh | Dynamically reconfigurable data processing system |
US7266725B2 (en) * | 2001-09-03 | 2007-09-04 | Pact Xpp Technologies Ag | Method for debugging reconfigurable architectures |
US5854918A (en) * | 1996-01-24 | 1998-12-29 | Ricoh Company Ltd. | Apparatus and method for self-timed algorithmic execution |
DE19651075A1 (de) | 1996-12-09 | 1998-06-10 | Pact Inf Tech Gmbh | Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen |
DE19654595A1 (de) | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen |
US6338106B1 (en) | 1996-12-20 | 2002-01-08 | Pact Gmbh | I/O and memory bus system for DFPS and units with two or multi-dimensional programmable cell architectures |
DE19654593A1 (de) * | 1996-12-20 | 1998-07-02 | Pact Inf Tech Gmbh | Umkonfigurierungs-Verfahren für programmierbare Bausteine zur Laufzeit |
DE59710317D1 (de) | 1996-12-27 | 2003-07-24 | Pact Inf Tech Gmbh | VERFAHREN ZUM SELBSTÄNDIGEN DYNAMISCHEN UMLADEN VON DATENFLUSSPROZESSOREN (DFPs) SOWIE BAUSTEINEN MIT ZWEI- ODER MEHRDIMENSIONALEN PROGRAMMIERBAREN ZELLSTRUKTUREN (FPGAs, DPGAs, o.dgl.) |
DE19654846A1 (de) | 1996-12-27 | 1998-07-09 | Pact Inf Tech Gmbh | Verfahren zum selbständigen dynamischen Umladen von Datenflußprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o. dgl.) |
DE19704044A1 (de) * | 1997-02-04 | 1998-08-13 | Pact Inf Tech Gmbh | Verfahren zur automatischen Adressgenerierung von Bausteinen innerhalb Clustern aus einer Vielzahl dieser Bausteine |
DE19704728A1 (de) * | 1997-02-08 | 1998-08-13 | Pact Inf Tech Gmbh | Verfahren zur Selbstsynchronisation von konfigurierbaren Elementen eines programmierbaren Bausteines |
US6542998B1 (en) | 1997-02-08 | 2003-04-01 | Pact Gmbh | Method of self-synchronization of configurable elements of a programmable module |
DE19704742A1 (de) | 1997-02-11 | 1998-09-24 | Pact Inf Tech Gmbh | Internes Bussystem für DFPs, sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen, zur Bewältigung großer Datenmengen mit hohem Vernetzungsaufwand |
US8686549B2 (en) | 2001-09-03 | 2014-04-01 | Martin Vorbach | Reconfigurable elements |
DE19861088A1 (de) | 1997-12-22 | 2000-02-10 | Pact Inf Tech Gmbh | Verfahren zur Reparatur von integrierten Schaltkreisen |
US5987559A (en) * | 1998-02-02 | 1999-11-16 | Texas Instruments Incorporated | Data processor with protected non-maskable interrupt |
DE19807872A1 (de) | 1998-02-25 | 1999-08-26 | Pact Inf Tech Gmbh | Verfahren zur Verwaltung von Konfigurationsdaten in Datenflußprozessoren sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstruktur (FPGAs, DPGAs, o. dgl. |
US7782844B1 (en) * | 1999-01-05 | 2010-08-24 | GlobalFoundries, Inc. | Method and apparatus for pattern matching on single and multiple pattern structures |
JP2003505753A (ja) | 1999-06-10 | 2003-02-12 | ペーアーツェーテー インフォルマツィオーンステヒノロギー ゲゼルシャフト ミット ベシュレンクテル ハフツング | セル構造におけるシーケンス分割方法 |
DE50115584D1 (de) | 2000-06-13 | 2010-09-16 | Krass Maren | Pipeline ct-protokolle und -kommunikation |
US20040015899A1 (en) * | 2000-10-06 | 2004-01-22 | Frank May | Method for processing data |
ATE437476T1 (de) | 2000-10-06 | 2009-08-15 | Pact Xpp Technologies Ag | Zellenanordnung mit segmentierter zwischenzellstruktur |
US8058899B2 (en) | 2000-10-06 | 2011-11-15 | Martin Vorbach | Logic cell array and bus system |
US6990555B2 (en) * | 2001-01-09 | 2006-01-24 | Pact Xpp Technologies Ag | Method of hierarchical caching of configuration data having dataflow processors and modules having two- or multidimensional programmable cell structure (FPGAs, DPGAs, etc.) |
US7844796B2 (en) | 2001-03-05 | 2010-11-30 | Martin Vorbach | Data processing device and method |
US7444531B2 (en) | 2001-03-05 | 2008-10-28 | Pact Xpp Technologies Ag | Methods and devices for treating and processing data |
US9037807B2 (en) | 2001-03-05 | 2015-05-19 | Pact Xpp Technologies Ag | Processor arrangement on a chip including data processing, memory, and interface elements |
US7581076B2 (en) | 2001-03-05 | 2009-08-25 | Pact Xpp Technologies Ag | Methods and devices for treating and/or processing data |
US7210129B2 (en) | 2001-08-16 | 2007-04-24 | Pact Xpp Technologies Ag | Method for translating programs for reconfigurable architectures |
US7657877B2 (en) | 2001-06-20 | 2010-02-02 | Pact Xpp Technologies Ag | Method for processing data |
US7996827B2 (en) | 2001-08-16 | 2011-08-09 | Martin Vorbach | Method for the translation of programs for reconfigurable architectures |
US7434191B2 (en) * | 2001-09-03 | 2008-10-07 | Pact Xpp Technologies Ag | Router |
US8686475B2 (en) | 2001-09-19 | 2014-04-01 | Pact Xpp Technologies Ag | Reconfigurable elements |
JP4044756B2 (ja) * | 2001-12-11 | 2008-02-06 | 松下電器産業株式会社 | プログラム変換装置、プログラム変換方法、及び当該プログラム変換装置を実現するプログラム |
US7577822B2 (en) | 2001-12-14 | 2009-08-18 | Pact Xpp Technologies Ag | Parallel task operation in processor and reconfigurable coprocessor configured based on information in link list including termination information for synchronization |
JP2003190367A (ja) * | 2001-12-21 | 2003-07-08 | Konami Co Ltd | 虚像、実映像重畳表示装置及び映像表示制御方法、ならびに映像表示制御用プログラム |
AU2003208266A1 (en) | 2002-01-19 | 2003-07-30 | Pact Xpp Technologies Ag | Reconfigurable processor |
DE10390689D2 (de) | 2002-02-18 | 2005-02-10 | Pact Xpp Technologies Ag | Bussysteme und Rekonfigurationsverfahren |
JP4146654B2 (ja) * | 2002-02-28 | 2008-09-10 | 株式会社リコー | 画像処理回路、複合画像処理回路、および、画像形成装置 |
US8914590B2 (en) | 2002-08-07 | 2014-12-16 | Pact Xpp Technologies Ag | Data processing method and device |
US7657861B2 (en) | 2002-08-07 | 2010-02-02 | Pact Xpp Technologies Ag | Method and device for processing data |
WO2004021176A2 (de) | 2002-08-07 | 2004-03-11 | Pact Xpp Technologies Ag | Verfahren und vorrichtung zur datenverarbeitung |
JP3976089B2 (ja) * | 2002-08-09 | 2007-09-12 | 株式会社リコー | 半導体集積回路装置及びその製造方法 |
US7394284B2 (en) | 2002-09-06 | 2008-07-01 | Pact Xpp Technologies Ag | Reconfigurable sequencer structure |
US7464310B2 (en) * | 2002-09-30 | 2008-12-09 | Broadcom Corporation | Programmable state machine of an integrated circuit |
JP4296051B2 (ja) * | 2003-07-23 | 2009-07-15 | 株式会社リコー | 半導体集積回路装置 |
JP4700611B2 (ja) | 2003-08-28 | 2011-06-15 | ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト | データ処理装置およびデータ処理方法 |
US8595688B1 (en) | 2003-09-08 | 2013-11-26 | Synopsys, Inc. | Generation of instruction set from architecture description |
KR100632943B1 (ko) * | 2004-05-29 | 2006-10-12 | 삼성전자주식회사 | 저전력 및 고속 프로그램 가능한 로직 어레이 |
KR100578142B1 (ko) | 2004-12-09 | 2006-05-10 | 삼성전자주식회사 | 프로그래머블 로직 어레이 |
US7281942B2 (en) * | 2005-11-18 | 2007-10-16 | Ideal Industries, Inc. | Releasable wire connector |
WO2007082730A1 (de) | 2006-01-18 | 2007-07-26 | Pact Xpp Technologies Ag | Hardwaredefinitionsverfahren |
US7541832B1 (en) * | 2007-04-30 | 2009-06-02 | Arizona Board Of Regents For And On Behalf Of Arizona State University | Low power, race free programmable logic arrays |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4947369A (en) * | 1982-12-23 | 1990-08-07 | International Business Machines Corporation | Microword generation mechanism utilizing a separate branch decision programmable logic array |
US4713750A (en) * | 1983-03-31 | 1987-12-15 | Fairchild Camera & Instrument Corporation | Microprocessor with compact mapped programmable logic array |
JPS60145488A (ja) * | 1984-01-06 | 1985-07-31 | Hitachi Ltd | 給液システム制御装置 |
US4839890A (en) * | 1986-10-31 | 1989-06-13 | Ncr Corporation | Data bit synchronizer |
US5123096A (en) * | 1987-08-03 | 1992-06-16 | Masahito Matuo | Data processor with addressing mode decoding function |
-
1989
- 1989-11-08 JP JP1290667A patent/JP2968289B2/ja not_active Expired - Fee Related
-
1990
- 1990-11-07 DE DE4035405A patent/DE4035405A1/de active Granted
-
1994
- 1994-01-05 US US08/177,794 patent/US5511173A/en not_active Expired - Lifetime
Non-Patent Citations (1)
Title |
---|
TIETZE, SCHENK: Halbleiterschaltungstechnik, 6.Aufl., Springer, 1983, S.273-278 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE4327660A1 (de) * | 1992-08-20 | 1994-02-24 | Mitsubishi Electric Corp | Vorrichtung zum Herstellen einer und Herstellungsverfahren für eine integrierte Halbleiterschaltungsvorrichtung und elektronische Schaltungsvorrichtung |
US5384275A (en) * | 1992-08-20 | 1995-01-24 | Mitsubishi Denki Kabushiki Kaisha | Method of manufacturing a semiconductor integrated circuit device, and an electronic circuit device |
Also Published As
Publication number | Publication date |
---|---|
JP2968289B2 (ja) | 1999-10-25 |
JPH03150634A (ja) | 1991-06-27 |
US5511173A (en) | 1996-04-23 |
DE4035405C2 (de) | 1993-01-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4035405C2 (de) | ||
DE2357003C2 (de) | Prozessor für eine Mehrprogramm-Datenverarbeitungsanlage | |
DE2724125C2 (de) | ||
DE68927907T2 (de) | Einchipmikrorechner | |
DE69017178T2 (de) | Datenverarbeitungssystem mit Vorrichtung zur Befehlskennzeichnung. | |
DE68928213T2 (de) | Inhaltadressierte Speicherzellenanordnung | |
DE68907518T2 (de) | Inhaltsadressierte Speicheranordnung. | |
DE3851746T2 (de) | Sprungvorhersage. | |
DE2524046C2 (de) | Elektronische Datenverarbeitungsanlage | |
DE69027932T2 (de) | Cpu-pipeline mit registerfile-bypass durch adressvergleich bei aktualisierungen/zugriffen | |
DE68924719T2 (de) | Vorrichtung und Verfahren zur Ausführung eines Unterprogramms in einem Datenverarbeitungssystem mit Blockumschaltung. | |
DE2117936A1 (de) | Mikroprogrammgesteuerte Zentraleinheit eines elektronischen Datenverarbeitungssystems | |
DE2234867A1 (de) | Anordnung in datenverarbeitungsanlagen zum steuern der verarbeitung zweier voneinander unabhaengiger programme | |
DE2248296A1 (de) | Programmsteuereinrichtung | |
DE3751108T2 (de) | Mikroprozessor mit der Fähigkeit, an einen Koprozessor geschaltet zu werden. | |
DE60009496T2 (de) | Mikroprozessor mit reduziertem kontextumschaltungsaufwand und verfahren | |
DE2801543A1 (de) | Datenverarbeitungsanlage | |
DE3043653A1 (de) | Datenverarbeitungsanlage | |
DE2926322A1 (de) | Speicher-subsystem | |
DE2951040C2 (de) | ||
DE69230898T2 (de) | Speicherauswahl enthaltendes Verarbeitungs-System und Verfahren | |
DE4222275A1 (de) | Parallelprozessor und betriebsverfahren eines solchen | |
DE69528824T2 (de) | Apparat und verfahren zum erneuern von informationen in einem beschreibbaren mikrokode-kontrollspeicher | |
DE2349253C3 (de) | Rechnersystem | |
DE69020430T2 (de) | Steueranordnung zur Aenderung eines Microbefehls. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition |