DE2716369C2 - - Google Patents
Info
- Publication number
- DE2716369C2 DE2716369C2 DE2716369A DE2716369A DE2716369C2 DE 2716369 C2 DE2716369 C2 DE 2716369C2 DE 2716369 A DE2716369 A DE 2716369A DE 2716369 A DE2716369 A DE 2716369A DE 2716369 C2 DE2716369 C2 DE 2716369C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- control
- bit
- register
- registers
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/78—Architectures of general purpose stored program computers comprising a single central processing unit
- G06F15/7839—Architectures of general purpose stored program computers comprising a single central processing unit with memory
- G06F15/7864—Architectures of general purpose stored program computers comprising a single central processing unit with memory on more than one IC chip
Description
Die Erfindung betrifft einen Einchip-Mikroprozessor
gemäß dem Oberbegriff des Anspruchs 1.
Bei verschiedenen Datenverarbeitungsanlagen ist eine Mikro
prozessorsteuerung erwünscht. In vielen Anwendungsge
bieten sind die Art und die Anzahl von Anforderungen, die
an eine Steuereinheit oder einen Prozessor gestellt werden,
derart, daß es von Vorteil wäre, eine Anzahl von Prozessoren
gleichzeitig einzusetzen, die gleichzeitig parallel zueinander
Daten verarbeiten, wenn dies in wirtschaftlich vertretbarer
Weise erzielbar wäre. Dies läßt sich beispielsweise
unter Verwendung eines Mikroprozessors erreichen, der als
vollständige, selbständige Einheit auf einem einzigen, eine
hochintegrierte Halbleiterschaltung enthaltenden Halbleiter
plättchen angebracht ist, auf dem auch die Taktgabe, ein
örtlicher Zwischenspeicher, logische Funktionen, die Spei
chersteuerung und eine Steuerspeicheranordnung enthalten
sind. Dieser Mikroprozessor kann außerdem zusätzliche Steuer
speicher ausnützen und zusammen mit anderen gleichartigen
Prozessoren nach Art einer Parallelverarbeitung zu einem
gemeinsamen äußeren Massenspeicher Zugriff erhalten.
Der Stand der Technik auf diesem Gebiet ist bereits umfang
reich. So ist beispielsweise in der US-Patentschrift
37 87 817 eine als hochintegrierte Schaltung ausgeführte
adressierbare Speicheranordnung offenbart, bei der bestimmte
logische Funktionen einen Teil der Anordnung bilden können.
Die US-Patentschrift 35 08 037 ist auf eine funktionale logische
Schaltung gerichtet, während die US-Patentschriften
37 51 650 und 35 64 226 beide sowohl arithmetische als auch
logische Funktionen in einer Schaltung darstellen können,
dabei jedoch immer noch relativ kompliziert aufgebaut sind.
Die US-Patentschrift 33 60 779 offenbart die Kombination von
Instruktionen mit Masken. Die US-Patentschrift 33 40 513
offenbart die Kombination von zwei Befehlen in einem Befehlswort
und die US-Patentschrift 38 51 312 zeigt den Parallelzugriff
von Steuerworten für die gleichzeitige Daten
verarbeitung durch modulare logische Schaltungen.
Die US-Patentschrift 36 76 860 ist auf eine Multiprozessoran
ordnung gerichtet und auf ein Verfahren zum Auftrennen der
Verbindungen zwischen den Multiprozessoren für den Fall, daß
mehrere Prozessoren gleichzeitig Zugriff zu einer Datenquelle,
wie z. B. einem Speicher, benötigen. Die Anordnung gemäß der
US-Patentschrift 35 66 357 benutzt eine Steuereinheit und eine
Anzahl von Registern für die Zuteilung eines Zugriffs zu einem
Speicher, der von mehreren Prozessoren gleichzeitig angesteuert
wird. Die US-Patentschrift 33 17 898 offenbart ein
Mehrfach-Prozessorsystem, in dem zur Überwachung ein Zähler
eingesetzt ist, der den im Speicher zur Verfügung stehenden
Speicherplatz überwacht. Ferner sind zum Stand der Technik
noch die US-Patentschriften 37 78 784 und 38 21 715 zu erwähnen,
die beide auf Halbleiterplättchen in hochintegrierter
Schaltungstechnik aufgebaute Halbleiterspeicher offenbaren,
wobei im Falle der US-Patentschrift 37 78 784 auf dem Halb
leiterplättchen auch noch ein Taktgenerator zur Ansteuerung
der Speicheranordnung vorgesehen ist. Aus der US-Patentschrift
38 21 715 ist es bekannt, eine digitale Datenverarbeitungsanlage
aus einer Anzahl getrennter MOS-Halbleiterplättchen
zusammenzusetzen, die durch eine Anzahl von Leitungen
miteinander verbunden sind. Eines dieser Halbleiter
plättchen enthält dabei die Zentraleinheit, die über eine
Anzahl von in beiden Richtungen betreibbaren Leitungen mit
einer Anzahl von hochintegrierten Speicherschaltungen ein
schließlich eines Speichers mit wahlfreiem Zugriff und eines
Festwertspeichers verbunden ist. Die Speicherkapazität
kann durch Anschalten weiterer Speicher mit wahlfreiem Zugriff
bzw. weiterer Festwertspeicher erweitert werden. Die
die Speicheranordnungen enthaltenden Halbleiterplättchen
enthalten auch die Decodierschaltungen, so daß die Zentral
einheit aus einer großen Anzahl von auf Halbleiterplättchen
untergebrachten, hochintegrierten Halbleiterspeicheranordnungen
eine einzige Speicheranordnung unmittelbar ansteuern
kann.
In der US-PS 38 39 705 sowie in dem Aufsatz "Auf dem Weg zur Mikroprozessor-
Praxis", erschienen in der Zeitschrift "Electronic", 1976, Heft 3, S. 74 bis 85,
sind Ein-Chip-Mikroprozessoren beschrieben, an die externe Schreib-/Lese
speicher anschließbar sind. Diese Speicher verfügen aber im allgemeinen
über eine eigene Speichersteuerung, die nicht in der Lage ist, mehrere
Mikroprozessoren für Multiprocessing-Aufgaben zu bedienen. Auch die externen
Steuerspeicher sind nicht direkt an die Befehlsadressenregister der Mikro
prozessoren anschließbar.
Es ist daher die Aufgabe der vorliegenden Erfindung, einen Ein-Chip-Mikro
prozessor anzugeben, dessen externe Steuerspeicher direkt an die vorhandenen
Befehlsadressenregister anschließbar sind und der außerdem über eine Speicher
steuerung verfügt, die in der Lage ist, mit mehreren parallelen Mikro
prozessoren in der Weise zusammenzuarbeiten, daß diese sich einen gemeinsamen
externen Schreib-/Lesespeicher teilen können, so daß ein paralleler
Zusammenschluß mehrerer Mikroprozessoren zur Parallelverarbeitung in wirtschaftlicher
Weise ermöglicht wird.
Gelöst wird diese Aufgabe der Erfindung durch die im Hauptanspruch angegebenen
Merkmale.
Weitere vorteilhafte Ausgestaltungen des Gegenstandes der Erfindung sind
den Unteransprüchen zu entnehmen.
Die Vorteile der Erfindung ergeben sich aus folgenden Überlegungen:
Die vorliegende Erfindung ist auf einen Mikroprozessor gerichtet,
der vollständig auf einem einzigen, mit einer hoch
integrierten Schaltung versehenen Halbleiterplättchen ent
halten ist. Dieser Prozessor enthält auf einem einzigen
Halbleiterplättchen nicht nur die Freigabeschaltungen für
den Prozessor, sondern auch eine als Festwertspeicher aufgebaute
Steuerspeicheranordnung, so daß für dieses Halbleiter
plättchen nur noch eine Quelle für Oszillatorimpulse, ein
Anschluß an eine Stromversorgung und eine Rückstellung
erforderlich sind, damit die Schaltung völlig unabhängig für
sich arbeiten kann. Der Prozessor ist dabei so aufgebaut,
daß er mit einem äußeren Massenspeicher zusammen arbeiten
kann, so daß er für eine echte Parallelverarbeitung einsetzbar
ist. Der Prozessor kann ferner einen zusätzlichen,
außerhalb des Halbleiterplättchens angeordneten Steuerspeicher
neben der auf dem Halbleiterplättchen angeordneten
Speicheranordnung ansteuern, und die Gesamtschaltung enthält
die verschiedensten Schaltungsvarianten, durch die der Ein
satz der einzelnen Schaltkreise wirtschaftlich wird, wobei
der Prozessor für kurze Befehlsworte mit den Eigenschaften
eines Prozessors für lange Befehlsworte ausgestattet
wird.
Der hier dargestellte Prozessor ist grundsätzlich insoweit
ein 12 Bit-Prozessor, als er einen 12 Bitbefehl benutzt,
der einen Teil mit 4 Bit enthält, der die Art und Länge
definiert sowie einen aus 8 Bit bestehenden Abschnitt,
der bestimmte Modifizierinstruktionen, unmittelbare Daten
oder Adressen enthalten kann. Die Datensammelleitung kann
8 Bit gleichzeitig übertragen und dient dem Datenaustausch
mit einem äußeren Massenspeicher mit 8 Bit Bytes. Bei der
Adressierung zusätzlicher, außerhalb des Halbleiterplättchens
liegender Steuerspeicher werden Datenleitungen benutzt,
die unabhängig von denjenigen Leitungen sind, die den
Prozessor mit dem äußeren Massenspeicher verbinden. Wenn
man zwei parallele 8-Bit-Datenleitungen nach der außerhalb
gelegenen Steuerspeicheranordnung einsetzt, dann kann man
ein aus 2 Byte bestehendes Datenwort übertragen und damit
den Wirkungsgrad des Informationsaustauschs mit dem Steuer
speicher erhöhen.
Wenn man sowohl den auf dem Halbleiterplättchen als auch
den außerhalb des Halbleiterplättchens befindlichen Steuerspeicher
benutzt, dann läßt sich voraussehen, daß der Zugriff
zu dem außerhalb des Halbleiterplättchens liegenden
Steuerspeicher langsamer abläuft, und es ist ferner möglich,
daß man noch andere Differenzen beim Speicherzugriff
antrifft. Will man diese Schwierigkeit in einer Weise umgehen,
ohne daß dabei das gesamte System dadurch beeinträchtigt
wird, daß man immer die Zeitverzögerung des schlimmsten
Falls mit einbezieht, wird der Systemtakt bei Erzeugung
einer Zugriffsanforderung angehalten und bei Beendigung
des Zugriffzyklus wieder in Betrieb gesetzt, so daß
das System von der Zugriffsgeschwindigkeit des jeweils benutzten
externen Speichers unabhängig wird. Ferner ist
eine Schaltung vorgesehen, mit deren Hilfe der auf dem
Chip befindliche Steuerspeicher wirkungsvoll dadurch ver
ändert werden kann, daß man selektiv für einzelne Befehle
oder Blöcke von Befehlen den äußeren zusätzlichen Steuerspeicher
substituiert und damit vermeidet, daß der gesamte
Prozessorchip erneut entworfen und ersetzt werden muß, wenn
in der Steuerspeicheranordnung eine Änderung durchgeführt
werden muß.
Diejenige Schaltung, die für den Prozessor die arithmetischen
und logischen Funktionen durchführt, wird dadurch
vereinfacht und mengenmäßig verringert, daß die fundamentalen
Bitpositionsaddierschaltungen für die Durchführung
zahlreicher anderer Funktionen auf Befehl aufgetastet werden.
Dabei wird ein Operationscode decodiert, um damit verschiedene
einer Reihe von sechs Durchschaltleitungen anzusteuern,
mit deren Hilfe selektiv die Addierschaltungen
zur Erzeugung anderer Funktionen modifiziert werden können.
Ferner stehen bei mit kurzen Datenworten arbeitenden Mikro
prozessoren Steuerbits der arithmetischen und logischen
Einheit weniger und weniger zur Verfügung. Bei dem erfindungsgemäß
aufgebauten Prozessor ist ein Register dazu bestimmt,
solche Information vorübergehend abzuspeichern, so
daß der Prozessor mit seiner Verarbeitung fortfahren kann,
wobei dann die Funktion der arithmetischen und logischen
Einheit, entsprechend dem Speicherinhalt eines solchen
Registers nur dann geändert wird, wenn dies erforderlich
ist. Zu anderen Zeiten ist es dann nur erforderlich, die
Eingabedaten zu ändern. Der Prozessor weist ferner eine
Minimaske oder eine Speicheranordnung auf, die in Abhängigkeit
von einer 5-Bit-Adresse eine aus 32 Speicherplätzen auswählt
und gleichzeitig das ALU-Eingangsregister und das ALU-
Operationsregister lädt sowie 2-Bit-Steuerinformation an
die Takt- und Steuerschaltung abgibt. Dadurch werden mehr
als 2 normale Befehle wirksam zu einem einzigen Befehl
zusammengefaßt, wodurch sich sowohl Mikrocode als
auch Ausführungszeit einsparen läßt. Dieses Verfahren gibt
in ausgewählten Fällen einem mit einem Kurzwort arbeitenden
Prozessor die Möglichkeit, mit einem langen Befehlswort zu
arbeiten.
Der Prozessor enthält ferner eine Speichersteuerschaltung,
die den Zugriff zu dem äußeren Massenspeicher steuert und
die als ein Teil eine Schaltung enthält, die als eine Position
oder Stufe eines kontinuierlich umlaufenden Schiebe
registers arbeitet. Ferner ist eine Mehrfachleitung vorgesehen,
mit der die Speichersteuerschaltung selektiv gesperrt
werden kann. Die erwähnte Schieberegisterbitposition
kann entweder mit einer Reihe von gleichartigen Schaltungen
anderer Prozessoren oder anderer Anlagen, die den Speicher
ansteuern, zur Bildung eines freilaufenden Ringzählers zu
sammengeschaltet werden. Wenn der Prozessor zu dem äußeren
Massenspeicher Zugriff erhalten will, dann wird ein derartiger
Zugriff durch die Aufnahme eines einzigen Bit in dem
Ringzähler und dessen Speicherung in der zugehörigen Bit
positionsschaltung freigegeben. Durch dieses Verfahren können
mehrere Prozessoren auf dynamischer Basis über eine einzige
Datensammelleitung zu einem einzigen äußeren Massen
speicher Zugriff erhalten. Obgleich bei diesem Verfahren
jede beliebige Anzahl von Prozessoren oder anderen Anlagen
auf dynamischer Basis einen Speicher ansteuern kann, so
wird dadurch jedoch noch nicht die Tatsache berücksichtigt,
daß bei den meisten Parallelverarbeitungssystemen mit
Parallelprozessoren eine oder mehrere Anlagen oder Geräte
gibt, die entweder häufiger oder mit Priorität Zugriff zum
Speicher haben. Diese Funktion wird dadurch sichergestellt,
daß man auf mehreren Ebenen verlaufende Leitungen benutzt
und selektiv den Zugriff zum Speicher sperrt. Die Prozessor-
Schieberegisterbitpositionen sind dabei zu einer Anzahl von
Ringen zusammengeschaltet, und die auf mehreren Ebenen lie
genden Leitungen eines jeden Ringes sind miteinander verbunden
und an einer Bitposition eines freilaufenden Ringzählers
einer zweiten Ebene angeschlossen. Dabei kann jedem Ring
von Prozesssor-Bitpositionen dadurch häufiger Zugriff zum
Speicher gegeben werden, daß ein Anschluß an mehr als einer
Ringzählerbitposition der zweiten Ebene hergestellt wird.
Die Erfindung wird nunmehr anhand eines Ausführungsbeispieles
in Verbindung mit den beigefügten Zeichnungen im einzelnen
beschrieben. Die unter Schutz zu stellenden Merkmale der
Erfindung sind den ebenfalls beigefügten Patentansprüchen
zu entnehmen.
In den Zeichnungen zeigt
Fig. 1 schematisch ein Blockschaltbild des Daten
verarbeitungssystems gemäß der vorliegenden
Erfindung mit einem externen Steuerspeicher
und einem externen Massenspeicher,
Fig. 2A, 2B, 2C und 2D in Kombination schematisch den Datenfluß
und den Aufbau eines auf einem einzigen
Chip untergebrachten Prozessors gemäß der
Erfindung,
Fig. 3 einen Teil einer logischen Schaltung für
das Befehlsadreßregister in Fig. 2A, welches
die Benutzung von Befehlen unterschiedlicher
Länge ermöglicht,
Fig. 4 einen Teil einer logischen Schaltung der
Takt- und Steuerschaltung in Fig. 2C, die
bei Zyklusanforderung die Taktgabe sperrt
und nach Beendigung eines Abrufzyklus die
Taktgabe wieder aufnimmt,
Fig. 5 eine außerhalb des Chip gelegene Schaltung,
mit deren Hilfe der interne Steuerspeicher
dadurch verändert werden kann, daß man an
seiner Stelle den externen Steuerspeicher
substituiert,
Fig. 6 eine Wahrheitstabelle zur Darstellung der
Arbeitsweise der Freigabeleitungen bei der
Decodierung des Operationscode für die ver
schiedenen angegebenen Funktionen,
Fig. 7 die Schaltung einer Bitposition der arithmetischen
und logischen Einheit (ALU),
Fig. 8 und 9 die Logik des Festwertspeichers, der in aus
gewählten Fällen aus einem einzigen Befehl
Mehrfach-Instruktionen liefert,
Fig. 10 ein Blockschaltbild zur Darstellung der Arbeitsweise
der Speichersteuerung in Fig. 2D,
Fig. 11 und 12 schematisch die Arbeitsweise der Speicher
steuerung für einen dynamischen,
prioritätsgerechten Zugriff durch mehrere
Prozessoren nach einem einzigen äußeren
Speicher und
Fig. 13 die tatsächlich durch das Anlegen der Torimpulse
in Fig. 6 an die Schaltung von Fig. 7
gebildeten Schaltkreise.
In Fig. 1 bestimmt die gestrichelte Linie 16 die Grenzen des
auf einem einzigen mit einer hochintegrierten Schaltung versehenden
Halbleiterplättchen befindlichen Prozessors. Es
handelt sich hierbei tatsächlich um einen echten, nur auf
einem einzigen Chip untergebrachten Mikroprozessor, der
seine eigene Steuerspeicheranordnung besitzt. Obgleich die
Schaltung auf dem einzelnen Chip als eine Einheit arbeiten
kann, kann der Prozessor doch außerdem einen weiteren außer
halb des Chip angeordneten Steuerspeicher 17 zusätzlich zu
dem im Block 24 enthaltenen auf dem Chip befindlichen
Steuerspeicher ansteuern.
Der Prozessor ist dabei ein 8-Bit Byte Ein-Adreßmikropro
zessor, der auf einem einzigen, mit einer hochintegrierten
Schaltung versehenen Halbleiterchip enthalten ist. Die
Prozessorarchitektur enthält einen im Block 24 enthaltenen
Festwertsteuerspeicher, einen Arbeitsspeicher 20,
eine 8-Bit arithmetische und logische Einheit (ALU) 22
im mit Datenfluß bezeichneten Block 23, eine
Speichersteuerung 25 für eine Mehrfach-Byteübertragung
und vierundzwanzig Leitungen für äußere Lese/Schreib-
Speicheradressierungen und dies alles auf einem einzigen
dabei im wesentlichen mit einem äußeren Lese/Schreibspeicher
26 zusammen, obgleich der Chip auch als funktionelle Einheit
arbeiten kann. Die Mikrobefehle des Prozessors sind
im Steuerspeicher abgespeichert. Der Steuerspeicher kann
dabei auf dem Chip selbst, wie gezeigt, außerhalb des
Chips oder als Kombination von außerhalb und auf dem Chip
befindlichen Speichern aufgebaut sein, und dieser Steuerspeicher
kann entweder als Festwertspeicher oder als Lese/Schreib
speicher aufgebaut sein. Benutzt man einen Steuerspeicher
außerhalb des Chips, so verschlechtert sich dadurch das
Betriebsverhalten des Prozessors etwas. Ein Lese/Schreib-
Steuerspeicher kann durch den Prozessor von einem äußeren
Lese/Schreibspeicher geladen werden.
Die Mikrobefehle werden durch ein Paar fortschreibbarer oder
fortschaltbarer Befehlsadreßregister (IAR) 28 und 29 in Fig. 2a adres
siert. Die IARs 28 und 29 können dabei durch das Ausgangs
signal des Steuerspeichers oder aus dem Arbeitsspeicher
register 30 für Programmverzweigungen oder Programm
rücksprung geladen werden. Die Rücksprungadresse wird dabei
an einer bestimmten Adresse Arbeitsspeicherregister 30 eingespeichert.
Die Verzweigungsadresse kann entweder aus einem
laufenden Mikrobefehl oder von einer besonderen Adresse im
Arbeitsspeicherregister 30 stammen.
Der kurze Mikrobefehl ergibt Flexibilität, gute Bitausnutzung
und eine Gesamtanordnung, bei der ein großer Teil der
sequentiellen Taktgabe beseitigt ist. Da die meisten Befehle
einfache Datenbewegungen betreffen, läßt sich die Durch
schaltung durch den Befehl selbst ausführen.
Das Arbeitsspeicherregister 30 ist ein auf dem Chip angeordneter
Zwischenspeicher und ist zu geradzahligen-ungeradzahligen
Registerpaaren zusammengefaßt, so daß eine 2-Byteadresse
eine Durchschaltung nach dem äußeren Lese/Schreibspeicher 26
oder dem Speicheradreßregister (MAR) zuläßt. Das Arbeitsspeicher
register 30 arbeitet für die innere Steuerschaltung wie
ein 1-Bytespeicher. Das Adreßregister 51 ist ein weiterschaltbares
Register, in dem die Adressen der Arbeitsspeicherregister-
Bytes eingespeichert liegen, die nach innen oder außen durchge
schaltet werden sollen. Bei einem Verzweigungs- oder Ver
kettungsbefehl wird das Befehlsadreßregister (IAR)Arbeits
speicherregister 30 an der Adresse im Adreßregister 51
als 2-Byteadresse festgehalten.
Die arithmetische und logische Einheit 22 (ALU) führt Addition,
logische Grundfunktionen, Registerübertragungen, Kom
plementwertbildung, Rotation, Übertrag und deren Kombinationen
durch. Die ALU 22 kann dabei Arithmetik im Einer- oder
Zweier-Komplement durchführen. Maskenopertionen für bedingte
Verzweigung werden am Ausgang der ALU erzeugt, so daß auf
Nullen, Einsen, gemischten Übertrag oder kein Übertrag geprüft
werden kann. Die Verzweigung kann außerdem drei äußere Lei
tungsbedingungen überprüfen. Die ALU kann außerdem dazu benutzt
werden, zuvor erzeugte Überträge und von der Übertrag
halteschaltung 27 einlaufende Überträge durchzuschalten.
Die gewünschte ALU-Operation wird dabei im ALU-Operationsregister
(AOP) 32 gespeichert gehalten. Dieses 8-Bitregister
beseitigt die sonst erforderliche Notwendigkeit, in allen
Befehlen die ALU-Operation genau anzugeben. Die ALU 22 führt
die im AOP-Register 32 verriegelt eingespeicherte Operation
statisch durch, bis das Register erneut geladen wird.
In Verbindung mit der ALU-Operation kann eine Minimaske 34
benutzt werden. Diese Minimaske 34 besteht aus 32 Worten von
je 18 Bit Länge. Wenn eine Lademinimaskenoperation erforderlich
ist, dann ersetzen 8 der Bits den derzeitigen Speicher
inhalt im AOP-Register, 8 der Bits ersetzen das was derzeit
auf der B-Seite der ALU eingespeichert ist, und zwei Bits
werden für Sprungbefehlsteuerung benutzt. Die neue in der
Minimaske 34 festgehaltene AOP-Operation kann nicht eine
erneute Ladeoperation für die Minimaske sein.
Die beiden Extrabits ermöglichen eine weitere Fortschaltung
nach dem IAR, wenn das Ergebnis der ALU-Operation Eins, Nullen
oder nicht Nullen war. Dies wird programmgesteuert getestet
und läuft automatisch ab, wenn diese Bits benutzt
werden und ein Befehl zur Speichermodifizierung abläuft. Diese
Möglichkeit könnte in einem Unterprogramm mit doppelter
Schleife benutzt werden, bei der ein Arbeitsspeicherregisterplatz solange
um 1 vermindert wird, bis er auf Null angekommen ist,
wodurch das Unterprogramm beendet und eine Vorwärtsverzwei
gung nach einem neuen Teil der Mikrobefehle eingeleitet wird.
Diese beiden Bits bewirken nur ein zusätzliches Fortschalten
des Befehlsadreßregisters, d. h., wenn diese Bedingung erfüllt
ist, wird ein Befehl übersprungen. Der Prozessor weist außer
dem ein äußeres Speicheroperationsregister 36 auf. Dieses
Register steuert die Art der Aktivität des externen Speichers.
Für die Speichersteuerung steht eine Mehrfach-Speicherübertragung
einschließlich vom örtlichen Speicherregister nach
externem Speicher, vom externen Speicher nach örtlichem Speicherregister,
vom externen Speicher nach Steuerspeicher, Ein
gabe/Ausgabe an externen Speicher und externer Speicher an
Eingabe/Ausgabe zur Verfügung. In dieser Steuerung ist
außerdem noch ein Speicherprioritätsbit enthalten. Durch
dieses Bit wird der Prozessor freigegeben und gewinnt damit
Zugriff nach einem externen Speicher. Das Prioritätsbit ge
langt über die Auswahleingangsleitung 37 an den Prozessor
und wird von diesem über die Auswahlausgangsleitung 38 abgegeben.
Derjenige Prozessor, der das Speicherprioritätsbit
hat, kann es solange halten, bis der derzeitige Speicherzugriff
beendet ist.
Bei einer Übertragung von einem oder mehreren Bytes zwischen
dem örtlichen Speicherregister (LSM) und dem externen Speicher
wird die Anzahl der zu übertragenden Bytes in den Zähl
registern 41 und 42 festgehalten. Wird deren Zählerstand
bei 0 belassen, dann überträgt die Speichersteuerung ein
Byte. In einer Speicherübertragung wird das Prioritätsbit
freigegeben und wählt entweder nach jedem Byte oder dann,
wenn der Zählerstand 0 ist, die Ausgangsleitung aus. In einer
Speicherübertragung und Halteoperation werden die Bytes
immer noch, wie soeben beschrieben, übertragen, jedoch wird
das Speicherprioritätsbit solange nicht freigegeben, bis
eine weitere Speichersteuerung für die Freigabe dieses Bits
geladen ist. Während dieser beiden Übertragungen kann der
Prozessor keine anderen Befehle ausführen, bis die Speicher
übertragung beendet ist.
Bei jeder Eingabe/Ausgabespeicherübertragung überträgt die
E/A-Vorrichtung die Daten mit der Geschwindigkeit der E/A-
Vorrichtung an den Massenspeicher und das Speicherprioritäts
bit wird so lange festgehalten, bis der bestimmte Zählerstand
übertragen ist. Wiederum kann das Übertragungs- und Wartebit
vorhanden sein, so daß weitere Speicherübertragungen möglich
sind. Während einer E/A-Speicherübertragung kann der Prozessor
andere Befehel ausführen, kann jedoch keine indirekten
oder externen Speicheroperationen einleiten.
Alle Speicherübertragungen laufen über das Speicherdatenregister
(MDR) 44. Dies ist das einzige Register, das zwischen
Prozessor und äußerem Lese/Schreibspeicher 26 eingeschaltet ist.
Eine Speicheradreßregistererweiterung, nämlich das externe Register 95, Fig. 2b steht ebenso für eine
Erweiterung der Adressierbarkeit des Speichers zur Verfügung.
Mit diesem Register kann der Prozessor bis zu 8 Megabyte
Speicherkapazität eines externen Lese/Schreibspeichers direkt
adressieren.
Die letzte Speichersteuerung betrifft das Laden des Steuer
speichers. Wird ein externer Lese/Schreibspeicher benutzt,
dann müssen Steuerspeicherbefehle geladen werden. Die in
diesem Steuerspeicher eingespeicherten Befehle werden von
einem äußeren Lese/Schreibspeicher aus eingespeichert.
Beim Laden eines Steuerspeichers ist die externe Speicher
adresse eingestellt, die Rücklaufadresse ist fetgehalten,
und der Speicherplatz im Steuerspeicher, an dem die Information
geladen werden soll, steht zur Verfügung. Angenommen,
die Anzahl der zu übertragenden (zu ladenden) Bytes ist ein
gestellt, dann überträgt der Prozessor die Anzahl der ange
gebenen Bytes und gibt dann die Steuerung an die festge
haltene Adresse ab.
Der Prozessor benötigt einen Oszillator (Leitung 46) und
eine Leitung für "Stromversorgung Ein- und Rückstellen" (Leitung 47).
Nach der Rückstellung beim Einschalten steht die
Funktion der externen E/A-Leitungen vollständig unter der
Steuerung von Mikrobefehlen. Die Mikrobefehle werden von
dem internen Steuerspeicher ausgeführt, bis das Bit 0 oder
das höherwertige Bit des Paares des Befehlsadreßregister
28 und 29 auftritt. Das Auftreten dieser Bedingung zeigt
an, daß die Mikrobefehle von einer externen Quelle kommen
müssen.
Der Prozessor kann selbständig arbeiten, oder er kann an
einem äußeren Lese/Schreibspeicher angeschlossen sein. Alle
diese Datenübertragungen mit dem äußeren Speicher laufen
über das 8 Bitspeicherdatenregister MDR 44 über die Ein
gangs/Ausgangsleitungen 49. Diese Leitungen 49 können in
beiden Richtungen betrieben werden.
Der äußere Speicher wird unmittelbar durch 23 Speicheradreßleitungen
angesteuert. Acht dieser Adreßleitungen sind
Seiten- oder Speichergruppenadressen. Diese acht Leitungen
können nur geladen werden. Die anderen 15 Adreßleitungen
können durch das örtliche Speicherregister 30 geladen werden
und werden nach jedem Speicherzugriff automatisch fortgeschaltet.
Sobald das derzeit adressierte Byte übertragen
wird, wird die Adresse automatisch um 1 erhöht oder erniedrigt.
Bei einer Übertragung zwischen dem Speicherregister
30 und dem externen Speicher 26 oder dem Speicherregister
30 und E/A werden außerdem das Adreßregister 51 und das
Zählregister 41, 42 automatisch weitergeschaltet.
Zwei externe 8-Bitregister 93 und 94, Fig. 2b können geladen werden, wodurch
direkte Umwandlungen von intern auf extern möglich sind. Die dorthin
führenden Leitungen können als Eingabe/Ausgabeanschlüsse für eine
Verbindung mit dem steuernden Mikrobefehlsprogramm benutzt
werden. Diese Leitungen können ebenfalls in beiden Richtungen
betrieben werden. Drei externe Leitungen stehen zur Verfügung,
die für eine bedingte Verzeigung benutzt werden
können. Diese drei Leitungen können für eine Unterbrechung
der Steuereinheit oder als Prioritätssteuerleitungen eingesetzt
werden.
Der interne Steuerspeicher und die Befehlsadressierung von
Block 24 in Fig. 1 sind in Fig. 2A zu sehen. Der Prozessor
ist im wesentlichen ein 12-Bitprozessor, d. h., die Grund
operationen der Schaltung erfordern einen 12-Bitbefehl mit
4 Bit höherer Ordnung, die Art und Länge angeben, und 8 Bit
niedriger Ordnung, die Modifizierbits, unmittelbare Daten
oder Adressen enthalten.
Der Steuerspeicher, unabhängig davon ob es der interne, auf
dem Chip befindliche Steuerspeicher 18 oder der externe
Steuerspeicher 17 ist, wird unter Verwendung
eines Paars von 8-Bit-Adreßregistern, Befehlsadreßregister
(IAR hoch) 29 und Befehlsadreßregister (IAR niedrig) 28
adressiert, die zusammenarbeitende, schrittweise fortschaltbare,
miteinander verbundene Register sind, und die miteinander
kombiniert werden können, so daß sie als einziger 11- oder
15-Bit-synchron laufender Zähler arbeiten können. Das
höchstwertige Bit oder Bit 0 von (IAR hoch) 29 bestimmt dabei,
ob der auf dem Chip befindliche Steuerspeicher 18 oder der
externe Steuerspeicher 17 adressiert werden soll. Wenn
diese Bitposition eine logische 1 enthält, dann wird der
externe Steuerspeicher durch Freigabe der Tore 53 und 54 benutzt,
während dann, wenn in dieser Bitposition eine logische
0 enthalten ist, der innere Steuerspeicher 18 adressiert
wird. Bei Verwendung des internen Steuerspeichers 18 werden
11 Bits der Adresse für eine Freigabe der Adressierung von
2048 Wortadressen auf der Chipspeicheranordnung benutzt.
Wenn dagegen der zusätzliche Steuerspeicher 17 adressiert wird,
dann werden alle verbleibenden 15 Bits der beiden Register
dazu benutzt, die Adressierung von zusätzlichen 32k oder
32 768 Wortspeicherplätzen über die Datenleitungen 56, 57
freizugeben.
Die variable Adressenlänge des Steuerspeichers auf dem
Chip und außerhalb des Chips wird dadurch ermöglicht, daß
die Übertragsschaltung zwischen den Bits 4 und 5 des Be
fehlsadreßregisters (IAR hoch) 29 modifiziert wird, wie dies Fig. 3
zeigt. Wenn das Bit 0 eine logische 1 enthält, die anzeigt,
daß der externe Steuerspeicher benutzt werden soll, dann
wird das UND-Glied 59 freigegeben, wenn das Ausgangssignal
des Übertrags vom Bit 5 auf Leitung 60 gleichzeitig auftritt,
und einen normalen Übertrag nach der Bitposition 4 bewirkt.
Wenn das Bit 0 eine logische 0 enthält, dann bewirkt ein
von der Bitposition 5 über Leitung 60 ankommender Übertrag
(der anzeigt, daß die letzte Speicherposition des auuf dem
Chip befindlichen Steuerspeichers 18 abgefragt wurde), daß
das UND-Glied 61 entsperrt und damit das Bit 0 mit einer
logischen 1 lädt und die Bits 1 bis 15 mit einer logischen
0 versieht für einen Zugriff zur ersten Adresse in dem (außer
halb des Chips gelegenen) externen Steuerspeichers 17. Die Bits 1 bis 15
werden dadurch zu 0, daß die Bits 1 bis 4 bereits eine logische
0 enthalten und daß beim Auftreten eines vom Bit 5
kommenden Übertrages alle Bitpositionen 5 bis 15 ebenfalls
eine logische 0 annehmen.
Die Steuerung erfährt noch dadurch eine zusätzliche Flexibilität,
daß für den Steuerspeicher eine Taktschaltung und
außerhalb des Chips eine Decodierschaltung vorgesehen ist,
die parallel mit der auf dem Chip befindlichen Steuerspeicher
anordnung adressiert wird.
Die Steuerspeicher-Taktschaltung der Fig. 4 bildet einen Teil
der Takt- und Steuerschaltung, die die Taktimpulse für den
Prozessor liefert und außerdem bewirkt, daß der Taktgenerator
des Prozessors bei Erzeugung einer Zyklusanforderung
gesperrt wird. Diese Sperrung des Taktgenerators wird
bei Aufnahme eines die Beendigung eines Zyklus anzeigenden
Signals aufgehoben. Dadurch wird der Prozessor von den Zyklus
zeiten des Steuerspeichers unabhängig, was besonders dann
wichtig ist, wenn der auf dem Chip und der außerhalb des
Chips befindliche Steuerspeicher beide benutzt werden, da
der außerhalb des Chips befindliche Steuerspeicher 17 normalerweise
langsamer arbeitet als der auf dem Chip befindliche
Steuerspeicher 18. Dadurch wird eine dynamische Steuerung erzielt,
die unabhängig von Geschwindigkeitsunterschieden ist,
die sich bei verschiedenen Speicheranordnungen ergeben können.
Die außerhalb des Chips angeordnete Änderungsschaltung der
Fig. 5 wird zusammen mit dem als Festwertspeicher ausgelegten
auf dem Chip angeordneten Steuerspeicher 18 benutzt, der nicht
geändert werden kann, es sei denn, durch die Verwendung
eines vollkommen neuen Chips oder die Benutzung des außerhalb
des Chips gelegenen Steuerspeichers 17 ohne die Benutzung
des auf dem Chip liegenden Steuerspeichers 18. Der logische
Zustand der Bitpositionen 5 bis 15 der Befehlsadreßregister
28 und 29 wird unter Verwendung der wahren und komplementären
Leitungen, die als Bit 5 bis 15 dargestellt sind, miteinander
verbunden, wobei das Komplement eines jeden Bit durch eine
Inverterstufe 66 erzeugt wird. Während jedes Zugriffs zum
Steuerspeicher erfolgt der Zugriff zum externen Steuerspeicher,
wenn das Bit 0 eine logische 1 enthält. Wenn das Bit 0
eine logische 0 enthält, dann wird der auf dem Chip befindliche
Steuerspeicher 18 adressiert, es sei denn, daß die UND-
Bedingungen einer aus UND-Gliedern bestehenden Änderungsschaltung,
wie z. B. die UND-Glieder 67, 68 und 69 befriedigt
werden. Wird eines der UND-Glieder der Änderungsschaltung
befriedigt, dann wird durch den Ausgang dieses UND-Gliedes
das auf der Leitung liegende Bit 0 zwangsläufig zu einer
logischen 1 gemacht, so daß diese Adresse nach der entsprechend
gekennzeichneten Adresse des außerhalb des Chips liegenden
Steuerspeichers 17 gerichtet wird. Wie gezeigt, ist das
UND-Glied 67 nur mit den drei höherwertigen Bits 5, 6 und
7 verbunden, so daß eine Gruppe von 256 bis 2048 Befehlen
von dem externen Steuerspeicher 17, statt von dem auf dem
Chip befindlichen Steuerspeicher 18 erhalten wird, während
das UND-Glied 68 nur mit den höherwertigen Bits 5 und 6 verbunden
ist und damit die 512 aufeinanderfolgenden Befehle
der normalerweise durch die Bits 5 bis 15 adressierten
2048 Befehle substituiert. Falls nur ein einziger Befehl
substituiert werden soll, wird ein UND-Glied mit 11 Eingangsleitungen,
wie z. B. das UND-Glied 69, verwendet, das
eine einzige aus 11 Bit bestehende Adreßkombination zu erkennen
vermag. Durch Zufügen weiterer UND-Glieder zum Erkennen
gewünschter Adreßkombinationen ist es möglich, selektiv
den externen Steuerspeicher 17 anstelle des auf dem
Chip befindlichen Steuerspeichers 18 einzusetzen. Jeder sequentielle
Befehl wird in ein Paar Befehhlsregister (IR) nämlich
(IR niedrig) 71 und (IR hoch) 72 geladen. Diese Befehle können
entweder von dem auf dem Chip befindlichen Steuerspeicher 18
oder von dem außerhalb des Chips gelegenen Steuerspeichers
17 abgeleitet werden. Diese Auswahl wird durch die
Torschaltung 76 für (IR hoch) 72 und die Torschaltung 75 für
(IR niedrig) 71 bewirkt. Der Speicherinhalt von (IR niedrig) 71
kann selektiv nach dem Befehlsadreßregister (IAR niedrig) 28,
nach der Datensammelleitung 74, nach der Takt- und Steuer
schaltung 63 oder den externen Steuerspeicherbits 0 bis 7
auf der Datenleitung 56 durchgeschaltet werden. Der Speicher
inhalt des Befehlsregisters (IAR hoch) 72 läßt sich selektiv nach
der Takt- und Steuerschaltung 63, nach dem Befehlsadreßre
gister (IAR hoch) 29 oder über die Datenleitung 57 nach den Bit
positionen 8 bis 15 des externen Steuerspeichers 17 durch
schalten.
Da die Schnittstelle der nach dem externen Steuerspeicher 17
führenden Datenleitungen 56 und 57 insgesamt 16 Bit umfaßt,
nehmen die Befehlsregister 71 und 72 des Prozessors ein
16-Bit-Eingangssignal für die Adressierung auf, welches
so modifiziert wird, daß es die beiden Adressen aufnehmen
kann. Wenn eine 15-Bit-Adresse benutzt werden soll, werden
die Registerinhalte von (IR hoch) 72 bzw. (IR niedrig) 71 nach
(IAR hoch) 29 bzw. (IAR niedrig) 28 durchgeschaltet. Wenn jedoch
eine 12 Bitadresse von den Befehlsregistern nach dem
Befehlsadreßregister durchgeschaltet werden soll, dann
werden jeweils der Speicherinhalt der (IR hoch) 72 Bit 1 bis
3 nach den Bitpositionen 5 bis 7 von (IAR hoch) 29 übertragen,
während das Bit 0 mit einer logischen 0 bewirkt, daß die
Bits 5 bis 15 für die Adressierung des auf dem Chip befindlichen
Steuerspeichers 18 verwendet werden, während die
Bits 1 bis 4 nicht benutzt werden. Auf diese Weise wird ein
verketteter Adreßabschnitt in den Fällen erzeugt, wo nur
12 Bits für die Adressierung eingesetzt werden.
Die an den Steuerspeicher gerichtete Zyklusanforderung, die
die Taktgabe des Prozessors sperrt, sowie die Wiederauf
nahme der Prozessortaktgabe am Ende eines Zyklus, werden
durch die Prozessortaktschaltung in Fig. 4 bewirkt, die ein
Teil der logischen Schaltung in der Takt- und Steuerschaltung
63 ist. Während eines jeden Befehlszyklus wird ein
Zugriff zum Steuerspeicher eingeleitet. Der Befehlszyklus
wird durch die Taktzyklen oder Taktzeitpunkte 1, 2, . . . n in
Fig. 4 dargestellt, wo zum Taktzeitpunkt n eine Zyklusan
forderung auf der Leitung 77 erzeugt wird. Der Taktzyklus
wird auf ein bei Anschalten der Stromquelle auf Leitung 47
erzeugtes Rückstellsignal eingeleitet, das die bistabile
Kippschalter 79 einstellt, die auf ihrer Ausgangsleitung
78 eine den Taktimpuls 1 darstellende logische 1 abgibt.
Da beim Auftreten des nächsten über Leitung 46 ankommenden
Oszillatorzyklus auf der Leitung 85 eine logische 0 liegt,
nimmt die Leitung 86 zur Darstellung des Taktsignals 2 bei
Einstellung der bistabilen Kippschaltung 80 durch die über
Leitung 84 zur Darstellung des Taktimpulses 1 ankommende
logische 1 die logische 1 an, und der Taktimpuls auf Leitung
84 geht damit auf den logischen Wert 0. Jeder nachfolgende
Oszillatorimpuls stellt die nächstfolgende Taktleitung ein
und stellt die davorliegende bistabile Kippschaltung und
Taktleitung zurück, bis die Taktleitung n durch Einstellung
der bistabilen Kippschaltung 81 eine logische 1 annimmt.
Das Ausgangssignal der Taktleitung n der Kippschaltung 81
wird einem ODER-Glied 88 zugeführt, das damit durchschaltet
und somit bewirkt, daß die Ausgangsleitung 77 der bistabilen
Kippschaltung 82 beim nächsten Oszillatorimpuls auf eine
logische 1 eingestellt wird. Diese Leitung 77 erzeugt damit
eine Zyklusanforderung und befriedigt die Bedingungen des
UND-Gliedes 89 (die das Ende eines Zyklus anzeigende Leitung
90 liegt dabei auf logisch 0), so daß das ODER-Glied 88
trotz der Beendigung des Taktsignals n betätigt bleibt.
Daher bleibt die Kippschaltung 82 eingeschaltet und hält
dieses Bit bis das auf der Leitung 90 liegende, das Ende
eines Zyklus anzeigende Signal ebenfalls invertiert wird und
damit das UND-Glied 89 sperrt, so daß die Leitung 91 auf
eine logische 0 geht, worauf der nächste Oszillatorimpuls
die Kippschaltung 82 betätigt, die Zyklusanforderung
beendet und außerdem die bistabile Kippschaltung 83 ein
schaltet, die über die Leitung 85 ein Ausgangssignal liefert,
das die Folge wieder aufnimmt, wodurch die Kippschaltung 79
zur Erzeugung eines weiteren ersten Taktsignals eingeschaltet
wird. Man sieht, daß die Zahl n für den letzten Taktzeitpunkt
eine beliebige Zahl sein kann, daß die Zyklusanforderung an
jeder Zwischenposition in der Taktfolge auftreten kann und
daß eine Anzahl von Unterbrechungen der Zyklusanforderung in
einem Taktzyklus vorgesehen sein können.
Der Arbeitsspeicher 20 in Fig. 1 enthält die Arbeits
speicherregister 30 und das Adreßregister 51 in Fig. 2.
Der Arbeitsspeicher 20 enthält 68 je 8 Bit fassende
Register. Diese Register können einerseits als 8-Bitregister
arbeiten, wenn sie in Verbindung mit der ALU 22,
den externen Registern 93, 94 und 95 oder der Speicher
steuerung im Block 24 eingesetzt werden, oder sie können
paarweise in Verbindung mit dem externen Lese-/Schreib
speicher 26 als 16-Bitregister benutzt werden.
Block 23 des Datenfluß-Blockdiagramms in Fig. 1 enthält, wie
in Fig. 2 gezeigt, die Takt- und Steuerschaltung 63, die
arithmetische und logische Einheit (ALU) 22 und zahlreiche
Hilfsvorrichtungen und Schaltungen, die mit der ALU zusammenwirken.
Die ALU weist dabei Eingaberegister 97 und 98 auf,
wobei das Register 98 entweder die wahren oder die komplementären
Werte des Registerinhaltes abzugeben vermag.
In Kurzwort-Mikroprozessoren stehen ALU-Steuerbits immer weniger
zur Verfügung. Um diesen Nachteil auszugleichen, wird ein
8-Bit ALU-Operationsregister (AOP) 32 zum Abspeichern dieser
Information vorgesehen. Dadurch ergibt sich eine Einsparung
von Mikrocodebits, da der Mikrocode nur dann die Funktion der
ALU verändern muß, wenn dies erforderlich ist. Wiederholte
Operationen können dadurch ausgeführt werden, daß man die
Eingangsdaten mit den nach der Datenleitung 74 durchgelassenen
Daten nur dann ändert, wenn ein Speicherbefehl vorhanden
ist. Die im AOP 32 angezeigte Operation wird in einer
Decodierschaltung 99 decodiert, die auf einer Reihe von 6
Torleitungen 100 ein Ausgangssignal liefert, das an die ALU
zur Steuerung von deren Arbeitsweise übertragen wird. Die 6
Torleitungen 100 werden entsprechend der Wahrheitstabelle in
Fig. 6 betätigt und liefern ein Ausgangssignal, das entweder
für die A- oder B-Register 97, 98 das gleiche ist oder aber
eine UND-Verknüpfung, ODER-Verknüpfung, Exklusiv-ODER-Ver
knüpfung und Addition des Inhalts der beiden Eingangsregister
97, 98. In der Wahrheitstabelle sind 1 und 0 die üblichen
logischen Werte, während die Leerstellen als unentschieden
gelten.
Fig. 7 zeigt ein Schaltbild einer Bitposition, der von der
entsprechenden Bitposition einer jeden der beiden ALU-Eingangs
register A und B, ein Eingangssignal zugeführt wird. Diese
Eingangssignale sind An bzw. Bn. Die Bitposition enthält
eine Addierschaltung, die zwei in Reihe geschaltete Exklusiv-
ODER-Glieder mit einem Ausgang Rn und einer Übertragsschaltung
mit einem Ausgangssignal Cn aufweist. Das erste
Exklusiv-ODER-Glied ist den als Last wirkenden Transistoren
101 und 102 zugeordnet, und das zweite Exklusiv-ODER-Glied
ist den als Last arbeitenden Transistoren 103 und 104 zugeordnet.
Die der Last 101 zugeordnete Schaltung enthält die
Feldeffekttransitoren 105, 106, 107 und 108. Die Eingänge
An und Bn sind jeweils an den Gate-Elektroden der Transistoren
105 und 106 angeschlossen, und die Gate-Leitungen G1 und
G2 sind an den Gate-Elektroden der Feldeffekttransistoren
107 bzw. 108 angeschlossen. Der Ausgang der mit der Last
101 verbundenen Schaltung ist an der Gate-Elektrode des Feld
effekttransistors 109 angeschlossen, die ebenfalls der Last
102 zugeordnet ist. Dieser Last sind ferner die Feldeffekt
transistoren 110, 111, 112 und 113 zugeordnet. Der Eingang
An ist an der Gate-Elektrode des Feldeffekttransistors 111,
und der Eingang Bn ist an der Gate-Elektrode des Feldeffekt
transistors 112 angeschlossen, während die Gate-Leitungen
G3 und G4 an den Gate-Elektroden der FETs 110 bzw. 113 angeschlossen
sind. Der Ausgang der der Last 102 zugeordneten
Schaltung, welcher gleichzeitig der Ausgang der ersten beiden
in Reihe geschalteten Exklusiv-ODER-Glieder ist, ist an
den Gate-Elektroden der FETs 114 und 115 angeschlossen, die
den Lasten 103 und 104 der zweiten Exklusiv-ODER-Schaltung
zugeordnet sind. Die Gate-Leitung G3 ist außerdem am Gate
des FET 116 und die Gate-Leitung G5 am Gate des FET 117 angeschlossen.
Das Übertragssignal der nächst vorhergehenden
Bitposition liegt an den Gate-Elektroden der FETs 117 und
119 an und wird als Cn-1 bezeichnet. Der Ausgang des zweiten
Exklusiv-ODER-Gliedes wird als Rn bezeichnet und stellt
außerdem die Ausgangsleitung für diese Bitposition der ALU
dar.
Die entsprechende Übertragsschaltung für die Bitposition
verwendet die Lasten 120 und 121, wobei das Eingangssignal
An den Gate-Elektroden der FET 122 und 124 und das Eingangs
signal Bn den Gate-Elektroden der FETs 123 und 125 zugeleitet
wird und das Übertragssignal von der vorhergehenden Bitposition
als ein Eingangssignal der Gate-Elektrode des FET
126 zugeführt und mit Cn-1 bezeichnet wird. Man erkennt,
daß die der Last 120 zugeordnete Schaltung drei UND-Glieder
aufweist, die auf Leitung 129 eine logische 0 darstellen,
wenn auf einem der Eingänge An, Bn und Cn-1 eine logische
1 auftritt. Das Ausgangssignal der der Last 120 zugeordneten
Schaltung wird der Gate-Elektrode des FET 127 zugeleitet,
der der Last 121 zugeordnet ist. Der Last 121 ist ebenfalls
ein Feldeffekttransistor 128 zugeordnet, an dessen Gate-Elektrode
die Gate-Leitung G6 angeschlossen ist. Wenn die Gate-
Leitung G6 aktiv ist, dann liegt am Ausgang Cn eine logische
0, und die Übertragsfunktion der Schaltung wird dadurch
praktisch beseitigt.
Wie in der Wahrheitstabelle der Fig. 6 angedeutet, können
die ALU-Schaltungen verschiedene Funktionen dadurch darstellen,
daß man die Gate-Leitungen G1 bis G6 entsprechend ansteuert.
Sind beispielsweise die Gate-Leitungen G1 bis G4
aktiv und die Gate-Leitungen G5 und G6 passiv oder inaktiv,
dann arbeitet die ALU-Bitpositionsschaltung als Addierstufe,
wobei das erste den Lasten 101 und 102 zugeordnete Exklusiv-ODER-
Glied die der jeweiligen Bitposition entsprechenden
Eingangssignale An und Bn aus den Registern A und B aufnimmt.
Das Ausgangssignal dieses Exklusiv-ODER-Glieds wird als
eines der Eingangssignale dem mit den Lasten 103 und 104 verbundenen
Exklusiv-ODER-Glied zugeführt, während dessen anderes
Eingangssignal das von der vorhergehenden Bitposition kommende
Übertragssignal ist. Durch selektive Erregung der
Gate-Leitungen G1 bis G6 können die Übertragsschaltungen und
verschiedene Abschnitte des Exklusiv-ODER-Gliedes zur Durchführung
verschiedener anderer Funktionen einschließlich des
Ausspeicherns des Inhalts der A- oder B-Register durch die
ALU oder die Durchführung einer ODER- und/oder Exklusiv-ODER-
Verknüpfung mit dem Inhalt der A- und B-Register
nach der ALU durchführen. Wenn der Speicherinhalt des A-Registers
oder des B-Registers durch die ALU hindurchgeleitet wird,
dann sind dabei die jeweilige Gate-Leitung G1 oder G2 sowie
die Gate-Leitungen G3 und G6 aktiv, während die Gate-Leitungen
G4 und G5 nicht betätigt sind, so daß die mit den Lasten
101, 102, 103 und 104 verbundenenn Schaltungen
als eine Reihe von vier Inverterstufen arbeiten. In gleichartiger
Weise wird die ODER-Verknüpfung durch die Betätigung
ausgewählter Gate-Leitungen dargestellt, wodurch die mit
der Last 101 verbundene Schaltung als ODER-Inverterstufe
arbeitet, auf die drei mit den Lasten
102, 103 und 104 verbundene Inversionsstufen folgen. Zur
Durchführung der UND-Verknüpfung wird durch Sperrung der
Gate-Leitungen G3 und Betätigung der Gate-Leitung G6 die mit
den Lasten 101 und 103 verbundene Schaltung wirksam
abgeschaltet, während die mit der Last 102
verbundene Schaltung sich als UND-Inverterstufe, gefolgt
von einer mit der Last 104 verbundenen Inversions
schaltung darstellt. Zur Darstellung der Exklusiv-ODER-Ver
knüpfung arbeitet die mit den Lasten 101 und 102
verbundene Exklusiv-ODER-Schaltung wie bei der Addierfunktion,
wobei jedoch die Betätigung der Gate-Leitung 6 bewirkt,
daß die zugehörigen Lasten 103 und 104 als doppelte
Inversion für das Ausgangssignal des Exklusiv-ODER-
Gliedes wirken, so daß das Ausgangssignal Rn mit dem Aus
gangssignal des Exklusiv-ODER-Gliedes identisch ist.
Das tatsächliche Ergebnis der Betätigung der einzelnen
Gate-Leitungen in Fig. 6 in ihrer Anwendung auf die in Fig. 7 dargestellte
repräsentative Bitposition ist in Fig. 13 gezeigt.
Fig. 13a zeigt die Addierschaltung mit den beiden Exklusiv-ODER-
Gliedern und den beiden Eingangssignalen An und Bn sowie
das Ausgangssignal der vorhergehenden Bitposition als
Übertrag Cn-1, die die Eingangssignale zur Abgabe des Aus
gangssignals der Addierstufe darstellen. Fig. 13b zeigt die
gleiche Schaltung, bei der das Sperren des Übertrages von
der vorhergehenden Bitposition bewirkt, daß die Schaltung
auf die An- und Bn-Eingangssignale das Ausgangssignal des
ersten Exklusiv-ODER-Gliedes abgibt, während der Rest der
Schaltung lediglich als doppelte Inversion arbeitet. In Fig. 13c
wird die UND-Verknüpfung dadurch dargestellt, daß die den
Lasten 101 und 103 zugeordnete Schaltung unwirksam
gemacht wird. Die Last 104 und die zugehörige
Schaltung arbeiten im Anschluß an die UND-Verknüpfung als
Inverterstufe. Zur Darstellung der ODER-Verknüpfung (Fig. 13d)
der Eingangssignale An und Bn bewirkt die selektive Betätigung
der Gate-Leitungen, daß die mit den Lasten
102, 103 und 104 verbundenen Schaltungen sich als eine Reihe
von drei Inverterstufen darstellen, die der der Last
101 zugeordneten ODER-Verknüpfung folgen. Wie aus Fig. 13e
und 13f zu erkennen, läßt sich das Eingangssignal An
oder Bn dadurch durchschalten, daß die Gate-Leitungen G1 bzw.
G2 betätigt werden, während die Gate-Leitungen G3 und G6
aktiv sind, so daß das ausgewählte Eingangssignal am Ausgang
auftritt, während die vier Lasten und die zugehörigen
Schaltungen in jedem Fall als eine Reihe von vier
Inverterstufen wirken.
Die Verwendung einer Minimaske 13a in Form
eines Festwertspeichers (ROS) als eine wahlweise verwendbare
Einrichtung zum Laden von Daten in einer Anzahl von
Registern und Funktionssteuerschaltungen bewirkt, daß in
ausgewählten Fällen der Prozessor die Eigenschaft eines Lang
wortmikroprozessors besitzt. Dieser Festwertspeicher wird
durch fünf über die Datenleitung 132 ankommende Bits (das
sind die Datenbits 3 bis 7 der Datenleitung 74) adressiert,
wodurch 32 Speicherplätze gekennzeichnet werden, die je
18 Bit breit sind. Jeder Speicherplatz im Festwertspeicher
der Minimaske 34 liefert 8 Bits nach dem AOP-Register 32
auf der Datenleitung 135, 8 Bitss an das Eingangsregister 98
auf der Datenleitung 134 und 2 Bits Funktionssteuerinformation
an die Takt- und Steuerschaltung 63 über Leitungen 133.
Demgemäß bewirkt die Minimaske im ROS 34 eine Komprimierung von
zwei Befehlen plus Funktionssteuerung zu einem einzigen Befehl,
wodurch sowohl ein Mikrocode als auch Exekutionszeit
in einem Kurzwortprozessor eingespart wird.
Gemäß Fig. 8 und 9 besteht die Minimaske 34 aus einer fünf
Einzelleitungen enthaltenden Datenleitung 132, wobei jede der
Datenleitungen an einer Inverterstufe 136 angeschlossen ist,
die auf einer Leitung 137 ein wahres Ausgangssignal und auf
einer Leitung 138 ein komplementäres Ausgangssignal liefert.
Eine Serie von 32 negativen UND-Gliedern 140 dient der Decodierung
der verschiedenen Kombinationen der 5 Bit Eingangs
signale über die entsprechenden unterschiedlichen Anschlüsse
mit den 10 wahren und komplementären, eingangsseitig ange
schlossenen Leitungen. Eine Serie von 18 NOR-Gliedern 141
bildet die 18×32-Bit-Anordnung des Festwertspeichers ROS.
Das Ausgangssignal jedes negativen UND-Gliedes 140 ist mit
den entsprechenden Gate-Positionen eines jeden der 18 NOR-Glieder
141 verbunden. Ist ein Gate-Anschluß vorhanden, dann
wird das Ausgangssignal auf der entsprechenden Leitung 142
auf niedrigem Potential oder auf logisch 1 liegen. Ist keine
Gate-Elektrode vorhanden, dann wird das Ausgangssignal auf
der Leitung 142 ein positives Potential oder eine logische
0 sein. Die 18 Ausgangsleitungen der NOR-Glieder 141 bilden
die Datenleitungen 133, 134 und 135.
Innerhalb der Speichersteuerung, Fig. 10, des Prozessors bilden die
jenigen logischen Schaltungen, die zwischen der mit Schiebe
biteingang 144 und Schiebebitausgang 145 bezeichneten Leitungen
liegen, eine Bitposition eines freilaufenden Ringzählers.
Ein über Leitung 144 ankommendes Bit wird als negativer
Impuls aufgenommen, in der Inverterstufe 146 invertiert
und als positives Signal an die Leitung 147 abgegeben. Da
die Leitung 148 ebenfalls positiv ist, mit Ausnahme der
Fälle, wenn ein Bit bereits in der Bitposition ist, wird
das UND-Glied 149 befriedigt und ein auf der Leitung 150 auftretendes
positives Ausgangssignal bewirkt, daß die bistabile
Kippschaltung 151 eingestellt wird, und auf Leitung 152 ein
positives und auf Leitung 153 ein negatives Ausgangssignal
liefert. Solange die Kippschaltung 151 eingestellt ist,
hat der dieser Bitposition des Ringzählers zugeordnete Prozessor
das Bit zur Verfügung und hat Zugriff zu dem zuge
ordneten Speicher. Ist keine Speicheranforderung vorhanden,
dann wird die Kippschaltung 155 nicht eingestellt und die
Leitung 156 ist positiv, so daß, da die Leitung 157 ebenfalls
gewöhnlich positiv ist, das NAND-Glied 158 befriedigt
wird, und damit auf der Leitung 159 ein negatives Ausgangs
signal abgibt, wodurch das negative UND-Glied 160 befriedigt
wird und ein positives Ausgangssignal erzeugt, das die
bistabile Kippschaltung 161 einstellt. Wenn die Kippschaltung
161 eingestellt ist, dann liegt auf der Leitung 162 ein
positives Signal, so daß das Ausgangssignal der Inverterstufe
164 auf Leitung 145 als negativ gerichteter Teil eines
Minusimpulses negativ wird. Das positive auf Leitung
162 liegende Signal gelangt ebenfalls an das NOR-Glied 165,
das dadurch befriedigt wird, und ein negatives Ausgangssignal
auf Leitung 166 erzeugt, das wiederum die Kippschaltung
151 zurückstellt, so daß das Ausgangssignal auf Leitung 152
ebenfalls negativ wird, wodurch wiederum die Kippschaltung
161 zurückgestellt wird, mit der Wirkung, daß auf Leitung 162
ein negatives Ausgangssignal auftritt, das in der Inverter
stufe 164 invertiert und als positives Ausgangssignal oder
der Hinterkante eines negativ gerichteten Impulses auf der
Leitung 145 erscheint, wodurch tatsächlich dieses Bit nach
der nächsten Bitposition des Ringzählers, welche einem weiteren
Prozessor zugeordnet ist, der Zugriff zum Speicher hat,
fortschaltet.
Wird eine Speicheroperation angefordert, dann kann eine solche
Anforderung durch jede der drei Leitungen 168 eingeleitet
werden, wodurch auf der Leitung 169 ein positives Ausgangs
signal auftritt, das die bistabile Kippschaltung 155 einstellt.
Diese bistabile Kippschaltung 155 dient als Ver
riegelungsschaltung, die, wenn sie eingestellt ist, anzeigt,
daß eine Speicheranforderung vorliegt. Ist die Kippschaltung
155 eingestellt, dann sperrt das positive, auf der Leitung
170 liegende Ausgangssignal über das negative UND-Glied
171 den Taktgenerator des Prozessors, bis der Speicherzugriff
beendet und die Kippschaltung 155 zurückgestellt ist. Das
Minusausgangssignal auf Leitung 156 verhindert, daß NAND-Glied
158 befriedigt wird, wodurch die Einstellung der bistabilen
Kippschaltung 161 verhindert und damit das Schieberegister
bit in der Kippschaltung 151 zu dem Zeitpunkt gespeichert
gehalten wird, zu dem es diese Position im Ringzähler das
nächste Mal durchläuft, bis der durch diesen Prozessor ange
forderte Speicherzugriff beendet ist. Zu dem Zeitpunkt, zu
dem die Verriegelungsschaltung 155 für Speicheranforderung
eingestellt wird, lädt das gleiche Signal ein Zählsignal
in die Zählregister 41 und 42, das die Anzahl der erforderlichen
Speicherzugriffszyklen anzeigt. Wenn der Zählerstand
voll auf 0 zurückgegangen ist, dann sind beide negativen
UND-Glieder 175 und 176 befriedigt und liefern auf den Aus
gangsleitungen 177 und 178, die an das NAND-Glied 179 gehen,
positive Ausgangssignale. Ein dritter Eingang des NAND-Glieds
179 kommt über Leitung 180, die nur dann positiv sein kann,
wenn eine Speicherzugriffsanforderung ansteht und die Kippschaltung
155 eingestellt ist, was anzeigt, daß in dieser
Bitposition ein Auswahlbit eingespeichert ist.
Wenn das nächste Auswahlbit in diese Ringzähler-Bitposition
einläuft, wird der negative Impuls durch die Inverterstufe
146 invertiert, wodurch das UND-Glied 149 voll entsperrt
wird, so daß die Kippschaltung 151 eingestellt wird. Dadurch
bewirkt der auf Leitung 153 auftretende negative Ausgangs
impuls, daß das negative UND-Glied 181 auf Leitung 180 einen
positiven Ausgangsimpuls abgibt, der durch Inverterstufe
182 invertiert wird und damit ein negatives Ausgangs
signal auf die Leitung 148 "Anforderung abgehend" legt. Die
Leitung 182 bleibt auf einem hohen Potential, wenn sie nicht
in einer noch zu beschreibenden Betriebsart benutzt wird.
Das auf der Leitung 148 auftretenden negative, eine ab
gehende Anforderung anzeigende Signal sperrt außerdem das
UND-Glied 149, wodurch wirksam verhindert wird, daß ein Stör
impuls mehr als ein Bit in dem Ring umlaufen läßt. Das auf
der Leitung 180 liegende positive Signal wird außerdem als
positives Eingangssignal dem NAND-Glied 179 zugeführt, wo
durch das NAND-Glied 179 entsperrt wird und dann ein negatives
Ausgangssignal abgibt, wenn beide Leitungen 177 und 178
ein positives Signal führen, das den Zählerstand 0 im Zähl-Register
41 oder 42 anzeigt, wenn die Anzahl der
angeforderten Speicherzyklen abgearbeitet ist. Wenn der
Speicherzugriffszyklus beendet ist, dann wird das NAND-Glied
179 befriedigt und liefert ein negatives Ausgangssignal,
das durch die Inverterstufe 186 invertiert und als positives
Ausgangssignal der vollständigen Entsperrung des NAND-Gliedes
185 dient, das auf der Leitung 187 ein negatives Ausgangssignal
liefert, das seinerseits das Speicheroperationsregister
36 löscht und die Verriegelungsschaltung 155 zurückstellt.
Damit nimmt das auf Leitung 156 liegende Ausgangssignal
ein positives Potential an, so daß das negative UND-Glied
181 nicht befriedigt wird, womit das eine abgehende
Anforderung kennzeichnende Signal beendet wird. Wenn auf der
Leitung 156 ein positives Potential liegt, dann wird NAND-Glied
158 nicht länger gesperrt und ein auf der Leitung 159 liegendes
negatives Ausgangssignal befriedigt das negative UND-Glied
160, so daß dessen positives Ausgangssignal die Kippschaltung
161 einstellt. Dadurch wird aber die Kippschaltung
151 zurückgestellt und auf der Schiebebit-Ausgangsleitung
145 wird, wie zuvor, ein negativ gerichteter Impuls dadurch
erzeugt, daß das positive auf Leitung 162 liegende Signal invertiert
wird, wodurch sich auf der Schiebebit-Ausgangsleitung
145 eine negativ gerichtete Impulskante ergibt, worauf
die Befriedigung des NOR-Gliedes 165 einen negativen Impuls
auf der Leitung 166 zur Folge hat, der wiederum die Kippschaltung
151 zurückstellt, so daß das auf der Leitung 152
auftretende Ausgangssignal auch die Kippschaltung 161 zurückstellt,
womit das auf Leitung 162 auftretende negative Ausgangssignal,
das durch die Inverterstufe 164 invertiert wird,
bewirkt, daß die Schiebebit-Ausgangsleitung 145 wieder
positiv wird, wodurch die Hinterkante des negativ gerichteten
Ausgangsimpulses erzeugt wird.
In Fig. 11 sind mehrere Prozessoren, 1, 2 und 3 dargestellt,
die Zugriff zu einem gemeinsamen äußeren Speicher 196 haben.
Jeder Prozessor hat eine Speichersteuerschaltung, die eine
Schaltung gemäß Fig. 10 und eine Anzahl von Leitungen 197
enthält, die die Schiebebiteingangs- und Schiebebitausgangs
leitungen der einzelnen Prozessoren in der Weise miteinander
verbinden, daß die Speichersteuerschaltungen den zuvor erwähnten
freilaufenden Ringzähler bilden. Bei dieser Betriebsart
sind die Mehrfach-Leitungen 183 (Fig. 10) jeder der
drei zusammenarbeitenden Prozessoren an einer gemeinsamen
positiven Spannung angeschlossen, wodurch eine solche
Leitung von jeder Steuerfunktion wirksam ausgenommen ist.
Bei dieser Betriebsart ist der Ausgang des NOR-Gliedes 181
effektiv die Leitung 180, so daß jeder der Prozessoren den
externen Speicher 196 dann ansteuern kann, wenn die dazu gehörige
Speichersteuerschaltung das entsprechende einzelne
Bit innerhalb des Ringzählers hält.
Mehrere Ebenen des Speicherzugriffs sind in Fig. 12 gezeigt.
Die sieben hier dargestellten Prozessoren sind über die
Leitungen 199 zu drei voneinander getrennten Ringzählern
zusammengefaßt. Alle sieben Prozessoren können unter den
gleichen Bedingungen wie in Fig. 11 unter Verwendung eines
einzigen Ringzählers, der alle Speicheradreß-Schieberegister
bitpositionen enthält, nacheinander Speicherzugriff erhalten,
doch wird öfters gefordert, daß eine oder mehrere Gruppen
von Prozessoren eine höhere Priorität erhalten sollen als andere.
Fig. 12 enthält einen zweiten Ringzähler einer zweiten Ebene
200, der ebenfalls ein freilaufender Ringzähler ist, in dem
ein einziges Bit durch die Bitpositionen 1 bis 4, die durch
die Leitungen 210 miteinander verbunden sind, umläuft. Dieses
einzelne Bit wird solange kontinuierlich von einer Position
nach der nächsten verschoben, bis es in einer Bitposition
in Abhängigkeit von einer Anforderung für einen Speicher
zyklus festgehalten wird, wie dies im Zusammenhang mit Fig. 10
beschrieben wurde, wobei das Bit, während es in einer
der vier Bitpositionen eingespeichert liegt, die entsprechende
Leitung 202 entsperrt. Das im Ringzähler 200 liegende
Bit entsperrt diejenige Leitung 202, die an der Bitschaltung
angeschlossen ist, in der das einzige Bit des Ringzählers
gerade liegt. Jede Leitung 202 ist an den Mehrfach-Leitungen
183 der einzelnen Prozessorspeichersteuerschaltungen in der
Weise angeschlossen, daß dieser eine auf Prozessorebene
wirksame Speichersteuerring durch jede Bitposition dadurch
entsperrt wird, daß die Mehrfach-Leitungen 183 für diesen
Ring betätigt werden. Man sieht, daß die Ausgangsleitungen
der Bitpositionen 1 und 3 des Ringzählers 200 miteinander
verbunden sind, so daß der aus Prozessoren 1 bis 3 bestehende
Ring in bezug auf Zugriff zu dem externen Speicher 198
eine erhöhte Priorität besitzt. Demgemäß verbessert die
Verwendung eines einzelnen Ringes wie in Fig. 11 die Ausnutzung
des äußeren Speichers dadurch, daß der Zugriff
dynamisch erfolgt, statt mit fest zugeteilten Perioden oder
Zeitabschnitten. Fügt man eine zweite Ebene der Zugriffs
steuerung, wie z. B. in Fig. 12, hinzu, so kann man einem
bestimmten Prozessor oder einer Gruppe von Prozessoren oder
in veränderlicher Prioritätsabstufung in bezug auf ausge
wählte Prozessoren oder Gruppen von Prozessoren Zugriffs
prioritäten zum externen Speicher 198 zuordnen. Andere Verfahren
zum Ansteuern der Mehrfach-Leitungen 183 reichen von einfachen
Zählern bis zu einer intelligenten Steuerung unter
Verwendung eines Prozessors, um damit unterschiedliche
Prozessorprioritäten einsetzen zu können.
Eine über Leitung 148 abgehende Anforderung für Speicher
steuerung entsperrt die Torschaltungen 189 und 190 und überträgt
damit den Speicherinhalt des Speicheradreßregisters
191 bzw. 192 über die Datenleitungen 193 und 194 nach dem
externen Speicher. In Abhängigkeit davon werden Adreßdaten
zwischen externen Speichern und Speicherdatenregister (MDR)
44, das als Datenschnittstelle zwischen Prozessor und externen
Speicher wirkt, übertragen. Weitere Übertragungsmöglichkeiten
zwischen Prozessor und anderen angeschlossenen Geräten
werden über das externe Register 93, das externe Register 94
und das externe Register 95 hergestellt.
Claims (18)
1. Einchip-Mikroprozessor (16) mit einer Datenflußsteuereinrichtung (23) enthaltend eine
arithmetische und logische Einheit (ALU) (22), einem internen
Steuerspeicher (24), einer Anzahl Eingabe/Ausgaberegister
(44, 93, 94, 95) und einem
Arbeitsspeicher (20), Speicheradreßregistern
(189, 190, 191, 192) mit Befehlsadreßregistern
(28, 29) und Datensammelleitungen (74, 84) für
eine Verbindung der Datenflußsteuerungeinheit (23)
mit den Befehlsadressenregistern, dem
Arbeitsspeicher (20) und den E/A-Registern (44,
93, 94, 95) sowie einem extern anschließbaren
Schreib-/Lesespeicher (26),
dadurch gekennzeichnet, daß
zur Adressierung der Mikrobefehle ein Befehls adreßregister (28, 29) vorgesehen ist, dessen höchste Stelle den internen Steuerspeicher (18) bzw. einen außerhalb des Mikroprozessors (16) angeordneten, über einen Adreß-/Datenkanal (56, 57) mit dem Befehlsadreßregister (28, 29) und dem Befehlsregister (71, 72) verbundenen, externen Steuerspeicher (17) adressiert;
zur Ansteuerung eines externen Lese-/Schreibspeichers (26) eine Speichersteuerung (25) und damit verbundene Register (36, 41, 42) vorgesehen sind, von denen das Speicheroperationsregister (36) die Adresse und die durchzuführende Operation des Lese-/Schreibspeichers (26) enthält, und die Register (41, 42) einen Zähler für die zu übertragenden Bytes bilden; ein parallel mit dem internen Steuerspeicher (19) adressierbarer Arbeitsspeicher (20) vorgesehen ist, der paarweise angeordnete Arbeitsspeicherregister (30) umfaßt, die einzeln mit der ALU (22), mit Registern (93, 94, 95) für externe Geräte und mit der Befehlsadressierung (24) zusammenarbeiten, während jeweils ein Registerpaar eine Sprungadresse aus dem Befehlsadreßregister (28, 29) aufnimmt oder zur Ansteuerung des Lese-/Schreibspeichers (26) dient;
eine die ALU (22) steuernde Einrichtung (in 23) eine als Festwertspeicher ausgebildete Minimaske (34) enthält, die von einem Adressenregister (51) für das Arbeitsspeicherregister (30) im Arbeitsspeicher (20) adressiert wird, und die in Abhängigkeit vom Operationsteil des Befehls aus der Minimaske (34) gelesene Daten einem Eingangsregister (98) der ALU (22), einen gelesenen Befehlscode einem Operations coderegister (32) und gelesene Steuersignale einer internen Takt- und Steuerschaltung zuführt.
zur Adressierung der Mikrobefehle ein Befehls adreßregister (28, 29) vorgesehen ist, dessen höchste Stelle den internen Steuerspeicher (18) bzw. einen außerhalb des Mikroprozessors (16) angeordneten, über einen Adreß-/Datenkanal (56, 57) mit dem Befehlsadreßregister (28, 29) und dem Befehlsregister (71, 72) verbundenen, externen Steuerspeicher (17) adressiert;
zur Ansteuerung eines externen Lese-/Schreibspeichers (26) eine Speichersteuerung (25) und damit verbundene Register (36, 41, 42) vorgesehen sind, von denen das Speicheroperationsregister (36) die Adresse und die durchzuführende Operation des Lese-/Schreibspeichers (26) enthält, und die Register (41, 42) einen Zähler für die zu übertragenden Bytes bilden; ein parallel mit dem internen Steuerspeicher (19) adressierbarer Arbeitsspeicher (20) vorgesehen ist, der paarweise angeordnete Arbeitsspeicherregister (30) umfaßt, die einzeln mit der ALU (22), mit Registern (93, 94, 95) für externe Geräte und mit der Befehlsadressierung (24) zusammenarbeiten, während jeweils ein Registerpaar eine Sprungadresse aus dem Befehlsadreßregister (28, 29) aufnimmt oder zur Ansteuerung des Lese-/Schreibspeichers (26) dient;
eine die ALU (22) steuernde Einrichtung (in 23) eine als Festwertspeicher ausgebildete Minimaske (34) enthält, die von einem Adressenregister (51) für das Arbeitsspeicherregister (30) im Arbeitsspeicher (20) adressiert wird, und die in Abhängigkeit vom Operationsteil des Befehls aus der Minimaske (34) gelesene Daten einem Eingangsregister (98) der ALU (22), einen gelesenen Befehlscode einem Operations coderegister (32) und gelesene Steuersignale einer internen Takt- und Steuerschaltung zuführt.
2. Einchip-Mikroprozessor nach Anspruch 1,
dadurch gekennzeichnet, daß das
Befehls-Adreßregister (28, 29) ein erstes Feld für die
Auswahl des zu adressierenden Steuerspeichers (17 bzw.
18) und ein zweites Feld aufweist, das die Adresse des
innerhalb des ausgewählten Steuerspeichers liegenden,
zu adressierenden Speicherplatzes enthält.
3. Einchip-Mikroprozessor nach Anspruch 2, dadurch ge
kennzeichnet, daß das erste Feld eine einzige Bitpo
sition enthält, deren logischer Zustand (0, 1) bewirkt,
daß entweder der interne oder der externe Steuerspeicher
(18 bzw. 17) adressiert wird und daß bei Adressierung des
internen Steuerspeichers weniger Bitpositionen des
zweiten Feldes Verwendung finden als bei der Adressierung
des externen Speichers.
4. Einchip-Mikroprozessor nach Anspruch 3, dadurch ge
kennzeichnet, daß ein erster in zwei Richtungen betreibbarer
Datenkanal den Prozessor mit dem Arbeits
speicherregister (30) und ein zweiter, in zwei Richtungen
wirksamer Datenkanal (44, 49) den Prozessor mit
dem externen Steuerspeicher (17) verbinden, und daß
der zweite Datenkanal eine größere Kapazität aufweist
als der erste.
5. Einchip-Mikroprozessor nach Anspruch 3, dadurch gekennzeichnet,
daß für die Auswahl der Adressierung ein
logisches Schaltglied (59) vorgesehen ist, das eingangsseitig
an der Bitposition (0) des ersten Feldes
und am Übertragausgang der höchsten bei der Adressierung
des internen Steuerspeichers (18) benutzten Bitposition
angeschlossen ist und dann ein Ausgangssignal an die
nächste höhere Bitposition abgibt, wenn ein Übertrag
(Leitung 60) auftritt, während die Bitposition des ersten
Feldes den zweiten logischen Zustand (Bit 0) anzeigt,
und dann, wenn der Übertrag auftritt, während die
Bitposition des ersten Feldes (Bit 0) den ersten logischen
Zustand aufweist, die Bitposition des ersten
Feldes in den zweiten logischen Zustand ändert und
gleichzeitig das zweite Feld mit der ersten Adresse
des externen Steuerspeichers (17) lädt.
6. Einchip-Mikroprozessor nach Anspruch 5, dadurch gekennzeichnet,
daß der interne Steuerspeicher (18)
einen Festwertspeicher (34) enthält, während der
externe Steuerspeicher (17) einen mit dem Prozessor
verbundenen und parallel mit dem örtlichen Steuerspeicher
adressierbaren ladbaren Steuerspeicher (26) enthält,
wobei der Ausgang dieses ladbaren Steuerspeichers
an die Bitposition des ersten Feldes anschaltbar ist
und daß damit dieser Steuerspeicher die Bitposition des
ersten Feldes auf dem zweiten logischen Wert hält,
wenn durch den ladbaren Steuerspeicher eine Adresse
des örtlichen Steuerspeichers (18) erkannt ist, so
daß die feste örtliche Steuerung durch selektive Verlagerung
auf den externen Steuerspeicher (17) modifizierbar
ist.
7. Einchip-Mikroprozessor nach Anspruch 1, dadurch gekennzeichnet,
daß bei Anforderung eines Steuerspeicherzyklus
ein entsprechendes Signal erzeugt wird,
das einmal in dem adressierten Steuerspeicher den
Steuerspeicherzyklus einleitet und den Prozessor sperrt und
daß bei Zyklusende ein entsprechendes Signal (90) erzeugt
wird, das anzeigt, daß das Ausgangssignal des
Steuerspeichers gültig ist, worauf dieses Ausgangssignal
dem Prozessor zum Beginn der Verarbeitung des
darin enthaltenen Befehls zugeleitet wird, wodurch der
Prozessor von der Zykluszeit des Steuerspeichers unabhängig
ist (Fig. 4).
8. Einchip-Mikroprozessor nach einem der Ansprüche 1 bis 7,
mit einem Steuerspeicher mit zugeordnetem Adreßregister
für die Adressierung ausgewählter, in dem Steuerspeicher
liegender Befehle mit einem ersten Register für die
Aufnahme des adressierten Befehls,
sowie mit
einer Anzahl der ALU (22) vorgeschalteter Register (A-Register,
B-Register; ALU-OP-Register 97, 98, 32), die
der ALU Daten zuführen und die Operationen der ALU
steuern, dadurch gekennzeichnet, daß ein als Festwert
speicher aufgebauter Maskenspeicher (34) vorgesehen ist,
daß ferner über Datenleitungen das Speicheradreßregister (51)
mit dem Maskenspeicher (34) und den der ALU vorgeschalteten
Registern (97, 98, 32) und der Maskenspeicher
mit den vorgeschalteten Registern verbunden sind,
daß dabei der Operationsteil des adressierten Befehls
mit seinen Bits bewirkt, daß der Adreßteil eine ausgewählte
Speicherposition in dem Maskenspeicher (34)
ansteuert und damit eine Reihe von Operationen einschließlich
des Ladens von mindestens einem der vorgeschalteten
Register mit dem Speicherinhalt des im
Maskenspeicher adressierten Speicherplatzes bewirkt.
9. Einchip-Mikroprozessor nach Anspruch 8, dadurch gekennzeichnet,
daß der Maskenspeicher ausgangsseitig
über Datenkanäle (134, 135) mit Adreßregistern verbunden
ist, denen entsprechend der im Maskenspeicher
angesteuerten Speicherposition Steuersignale zuführbar
sind.
10. Einchip-Mikroprozessor nach einem der Ansprüche 1 bis 9,
dadurch gekennzeichnet,
daß die Befehlsregister (71, 72) mit dem Maskenspeicher
(34) und dieser mit dem ALU-Operationsregister (32) verbunden
sind.
11. Einchip-Mikroprozessor nach Anspruch 10, dadurch gekennzeichnet,
daß der Befehlsregister-Adreßteil weni
ger Bits enthält, als der Datenkanal Leitungen auf
weist, und daß das ALU-Operationsregister (32) und
eine weitere durch das Ausgangssignal des Maskenspeichers
(34) gesteuerte Funktion jeweils mit einer Anzahl
von Bits angesteuert werden, die der Anzahl der
Leitungen in dem Datenkanal entspricht.
12. Einchip-Mikroprozessor nach Anspruch 11, dadurch gekennzeichnet,
daß durch eine Takt/Steuerschaltung (63)
für die Steuerung der Funktionen des Prozessors auch
die Einleitung von Datenübertragungen, arithmetischer
Operationen und eine Änderung in der Folge von Mikrobefehlen
steuerbar ist, und daß der Maskenspeicher (34)
an der Takt/Steuerschaltung (63) angeschlossen ist,
wobei über eine Datenleitung (133) eine Anzahl von
Steuerbits an die Takt/Steuerschaltung (63) übertragen
werden.
13. Einchip-Mikroprozessor nach Anspruch 12, dadurch gekennzeichnet,
daß die Schieberegister-Bitpositionen
derart miteinander verbunden sind, daß das aktive Bit
den einzelnen Schieberegister-Bitpositionen gemäß
einer vorbestimmten Rangfolge zuordenbar ist.
14. Einchip-Mikroprozessor nach Anspruch 13, dadurch gekennzeichnet,
daß die Schieberegister-Bitposition
(Fig. 10) eine erste bistabile Kippschaltung (151)
enthält, die durch einen über die Eingangsleitung (144)
ankommenden Bitimpuls einstellbar ist, und während einer
fortdauernden Speicherzugriffsanforderung durch die
zugeordnete Speicherzugriffsschaltung eingestellt
bleibt.
15. Einchip-Mikroprozessor nach Anspruch 14, dadurch gekennzeichnet,
daß die Schieberegister-Bitposition eine
zweite bistabile Kippschaltung (155) enthält, die bei
Abwesenheit einer Speicherzugriffsanforderung bei eingestellter
erster Kippschaltung (151) eingestellt wird,
und die Vorderkante eines Schiebebit-Ausgangsimpulses
erzeugt und die erste Kippschaltung sperrt, die daraufhin
die zweite Kippschaltung zurückstellt, die damit
die Hinterkante des Schiebebit-Ausgangsimpulses erzeugt.
16. Einchip-Mikroprozessor nach Anspruch 15, dadurch gekennzeichnet,
daß zwischen Schiebebit-Eingang (144)
und Schiebebit-Ausgang (146) und der ersten Kippschaltung
(151) logische Schaltglieder (146, 149, 181, 182)
angeordnet sind, die während einer Zugriffsanforderung
den Schiebebit-Eingang (144) von der Kippschaltung abtrennen,
so daß ein an dem Schiebebit-Eingang auftretender
Störimpuls nicht erkennbar die Anwesenheit von
mehr als einem einzigen Bit in dem durch die Zusammenschaltung
der Schieberegister-Bitposition gebildeten
Ring sperrt.
17. Einchip-Mikroprozessor nach Anspruch 15, dadurch gekennzeichnet,
daß die Speicherzugriffsschaltung zu
einer Anzahl von Gruppen zusammengefaßt sind, bei
denen die Schieberegister-Bitpositionen einer jeden
Gruppe einen Ring (199) bilden (Fig. 12) und daß durch
eine zusätzliche Steuerschaltung (200, 201, 202) jede
Gruppe ihren Speicherzugriff gemäß einer vorgegebenen
Rangfolge erhält.
18. Einchip-Mikroprozessor nach Anspruch 17, dadurch gekennzeichnet,
daß als zusätzliche Steuerschaltung ein
weiteres aus mehreren Bitpositionen (1, 2, 3, 4) zu
sammengeschaltetes Steuerschieberegister (200) dient,
bei dem die Anzahl der Bitpositionen der Anzahl von
Gruppen von Schieberegister-Bitpositionen entspricht,
daß in dem ebenfalls als Ringzähler geschalteten Steuer
schieberegister ein einzelnes Bit die Bitpositionen
durchläuft, und daß Mehrfach-Steuerleitungen (183)
der Schieberegister-Bitpositionen in jeder Gruppe der
ersten ersten Ebene untereinander (199) und über
Leitungen (202) mit den entsprechenden Bitpositionen des
Steuerschieberegisters (200) verbunden sind.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US05/682,803 US4093982A (en) | 1976-05-03 | 1976-05-03 | Microprocessor system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2716369A1 DE2716369A1 (de) | 1977-11-17 |
DE2716369C2 true DE2716369C2 (de) | 1991-02-07 |
Family
ID=24741195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE2716369A Granted DE2716369A1 (de) | 1976-05-03 | 1977-04-13 | Mikroprozessorsystem |
Country Status (13)
Country | Link |
---|---|
US (2) | US4093982A (de) |
JP (3) | JPS6051134B2 (de) |
AT (1) | AT376309B (de) |
AU (1) | AU511624B2 (de) |
BR (1) | BR7702850A (de) |
CA (1) | CA1091355A (de) |
CH (1) | CH620779A5 (de) |
DD (1) | DD130183A5 (de) |
DE (1) | DE2716369A1 (de) |
FR (1) | FR2350645A1 (de) |
GB (3) | GB1527318A (de) |
IT (1) | IT1113581B (de) |
NL (1) | NL7704824A (de) |
Families Citing this family (50)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5526506A (en) * | 1970-12-28 | 1996-06-11 | Hyatt; Gilbert P. | Computer system having an improved memory architecture |
US4954951A (en) * | 1970-12-28 | 1990-09-04 | Hyatt Gilbert P | System and method for increasing memory performance |
US5459846A (en) * | 1988-12-02 | 1995-10-17 | Hyatt; Gilbert P. | Computer architecture system having an imporved memory |
US4314353A (en) * | 1978-03-09 | 1982-02-02 | Motorola Inc. | On chip ram interconnect to MPU bus |
US4244028A (en) * | 1979-03-08 | 1981-01-06 | National Semiconductor Corporation | Digital microprocessor having a time-shared adder |
US4460972A (en) * | 1979-06-22 | 1984-07-17 | International Business Machines Corporation | Single chip microcomputer selectively operable in response to instructions stored on the computer chip or in response to instructions stored external to the chip |
US4313161A (en) * | 1979-11-13 | 1982-01-26 | International Business Machines Corporation | Shared storage for multiple processor systems |
US4314335A (en) * | 1980-02-06 | 1982-02-02 | The Perkin-Elmer Corporation | Multilevel priority arbiter |
US4434461A (en) | 1980-09-15 | 1984-02-28 | Motorola, Inc. | Microprocessor with duplicate registers for processing interrupts |
US4390963A (en) * | 1980-09-15 | 1983-06-28 | Motorola, Inc. | Interface adapter architecture |
US4486624A (en) * | 1980-09-15 | 1984-12-04 | Motorola, Inc. | Microprocessor controlled radiotelephone transceiver |
US4459662A (en) * | 1980-09-29 | 1984-07-10 | Texas Instruments Incorporated | Microcomputer having ROM mass memory for downloading main RAM memory with microcomputer instructions |
US4422143A (en) * | 1980-11-24 | 1983-12-20 | Texas Instruments Incorporated | Microprocessor ALU with absolute value function |
US4580216A (en) * | 1981-06-22 | 1986-04-01 | Texas Instruments Incorporated | Microcomputer with internal selection of on-chip or off-chip access |
US4450521A (en) * | 1981-04-13 | 1984-05-22 | Texas Instruments Incorporated | Digital processor or microcomputer using peripheral control circuitry to provide multiple memory configurations and offset addressing capability |
US4428047A (en) | 1981-04-13 | 1984-01-24 | Texas Instruments Incorporated | Addressing a control ROM in a microcoded single-chip microcomputer using the output signals of the control ROM |
US4435763A (en) | 1981-04-13 | 1984-03-06 | Texas Instruments Incorporated | Multiprogrammable input/output circuitry |
EP0063458B1 (de) * | 1981-04-13 | 1989-08-23 | Texas Instruments Incorporated | Mikrocomputersystem |
US4473877A (en) * | 1981-04-16 | 1984-09-25 | Tulk Ronald K | Parasitic memory expansion for computers |
US4740895A (en) * | 1981-08-24 | 1988-04-26 | Genrad, Inc. | Method of and apparatus for external control of computer program flow |
US4532587A (en) * | 1981-08-26 | 1985-07-30 | Texas Instruments Incorporated | Single chip processor connected to an external memory chip |
DE3138972A1 (de) * | 1981-09-30 | 1983-04-14 | Siemens AG, 1000 Berlin und 8000 München | Onchip mikroprozessorchachespeichersystem und verfahren zu seinem betrieb |
DE3151120C2 (de) * | 1981-12-23 | 1983-12-01 | Siemens AG, 1000 Berlin und 8000 München | Datenverarbeitungsanlage mit Arbeitsspeicher und mehreren in Serie geschalteten Prozessoren |
US4542453A (en) * | 1982-02-19 | 1985-09-17 | Texas Instruments Incorporated | Program patching in microcomputer |
US4928223A (en) * | 1982-10-06 | 1990-05-22 | Fairchild Semiconductor Corporation | Floating point microprocessor with directable two level microinstructions |
US5243698A (en) * | 1982-11-26 | 1993-09-07 | Inmos Limited | Microcomputer |
US4680698A (en) * | 1982-11-26 | 1987-07-14 | Inmos Limited | High density ROM in separate isolation well on single with chip |
US6414368B1 (en) | 1982-11-26 | 2002-07-02 | Stmicroelectronics Limited | Microcomputer with high density RAM on single chip |
US4607332A (en) * | 1983-01-14 | 1986-08-19 | At&T Bell Laboratories | Dynamic alteration of firmware programs in Read-Only Memory based systems |
US4649471A (en) * | 1983-03-01 | 1987-03-10 | Thomson Components-Mostek Corporation | Address-controlled automatic bus arbitration and address modification |
EP0117837B1 (de) * | 1983-03-01 | 1990-03-21 | STMicroelectronics, Inc. | Benutzerprogrammierbare Buskonfiguration für Mikrocomputer |
DE3501569C2 (de) * | 1984-01-20 | 1996-07-18 | Canon Kk | Datenverarbeitungseinrichtung |
US4761755A (en) * | 1984-07-11 | 1988-08-02 | Prime Computer, Inc. | Data processing system and method having an improved arithmetic unit |
US5255384A (en) * | 1985-02-22 | 1993-10-19 | Intergraph Corporation | Memory address translation system having modifiable and non-modifiable translation mechanisms |
US4860192A (en) * | 1985-02-22 | 1989-08-22 | Intergraph Corporation | Quadword boundary cache system |
US4899275A (en) * | 1985-02-22 | 1990-02-06 | Intergraph Corporation | Cache-MMU system |
US4933835A (en) * | 1985-02-22 | 1990-06-12 | Intergraph Corporation | Apparatus for maintaining consistency of a cache memory with a primary memory |
DE3752017T2 (de) * | 1986-03-20 | 1997-08-28 | Nec Corp | Mikrorechner mit Zugriffsfähigkeit auf einen internen Speicher mit gewünschter variabler Zugriffszeit |
JPS62266262A (ja) * | 1986-05-13 | 1987-11-19 | Daikin Mfg Co Ltd | トルクコンバ−タのスラスト力軽減装置 |
US5091846A (en) * | 1986-10-03 | 1992-02-25 | Intergraph Corporation | Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency |
JPS6438828A (en) * | 1987-08-05 | 1989-02-09 | Fuji Facom Corp | Lsi circuit with multiswitching mode |
US4878174A (en) * | 1987-11-03 | 1989-10-31 | Lsi Logic Corporation | Flexible ASIC microcomputer permitting the modular modification of dedicated functions and macroinstructions |
US5155819A (en) * | 1987-11-03 | 1992-10-13 | Lsi Logic Corporation | Flexible ASIC microcomputer permitting the modular modification of dedicated functions and macroinstructions |
JPH0776913B2 (ja) * | 1988-02-08 | 1995-08-16 | 株式会社東芝 | 算術論理演算回路 |
US5243700A (en) * | 1988-12-30 | 1993-09-07 | Larsen Robert E | Port expander architecture for mapping a first set of addresses to external memory and mapping a second set of addresses to an I/O port |
JPH04305735A (ja) * | 1991-04-02 | 1992-10-28 | Mitsubishi Electric Corp | マイクロプログラム制御回路 |
JP3190945B2 (ja) * | 1991-04-08 | 2001-07-23 | 三菱電機株式会社 | マイクロプログラム制御回路 |
US5796972A (en) * | 1997-01-14 | 1998-08-18 | Unisys Corporation | Method and apparatus for performing microcode paging during instruction execution in an instruction processor |
US7762047B2 (en) * | 2006-02-21 | 2010-07-27 | Curwood, Inc. | Food article packaging apparatus and method |
US20080209076A1 (en) * | 2007-02-22 | 2008-08-28 | Wei Wang | Method and system for fast ethernet controller operation using a virtual cpu |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE1218761B (de) * | 1963-07-19 | 1966-06-08 | International Business Machines Corporation, Armonk, N. Y. (V. St. A.) | Datenspeidbereinrichtung |
US3340513A (en) * | 1964-08-28 | 1967-09-05 | Gen Precision Inc | Instruction and operand processing |
NL136896C (de) * | 1964-10-07 | |||
US3566357A (en) * | 1966-07-05 | 1971-02-23 | Rca Corp | Multi-processor multi-programed computer system |
US3564226A (en) * | 1966-12-27 | 1971-02-16 | Digital Equipment | Parallel binary processing system having minimal operational delay |
US3508037A (en) * | 1967-01-30 | 1970-04-21 | Sperry Rand Corp | Decimal add/subtract circuitry |
US3676860A (en) * | 1970-12-28 | 1972-07-11 | Ibm | Interactive tie-breaking system |
US3859635A (en) * | 1971-06-15 | 1975-01-07 | Robert E Watson | Programmable calculator |
US3751650A (en) * | 1971-06-28 | 1973-08-07 | Burroughs Corp | Variable length arithmetic unit |
GB1404664A (en) * | 1971-10-26 | 1975-09-03 | Texas Instruments Inc | Stored programme data processing system having a memory extension |
US3778784A (en) * | 1972-02-14 | 1973-12-11 | Intel Corp | Memory system incorporating a memory cell and timing means on a single semiconductor substrate |
US3787817A (en) * | 1972-06-21 | 1974-01-22 | Us Navy | Memory and logic module |
US3839705A (en) * | 1972-12-14 | 1974-10-01 | Gen Electric | Data processor including microprogram control means |
US3821715A (en) * | 1973-01-22 | 1974-06-28 | Intel Corp | Memory system for a multi chip digital computer |
US3859636A (en) * | 1973-03-22 | 1975-01-07 | Bell Telephone Labor Inc | Microprogram controlled data processor for executing microprogram instructions from microprogram memory or main memory |
US3984813A (en) * | 1974-10-07 | 1976-10-05 | Fairchild Camera And Instrument Corporation | Microprocessor system |
JPS5158853A (de) * | 1974-11-19 | 1976-05-22 | Sharp Kk | |
US3980992A (en) * | 1974-11-26 | 1976-09-14 | Burroughs Corporation | Multi-microprocessing unit on a single semiconductor chip |
US4021655A (en) * | 1976-03-30 | 1977-05-03 | International Business Machines Corporation | Oversized data detection hardware for data processors which store data at variable length destinations |
US4079451A (en) * | 1976-04-07 | 1978-03-14 | Honeywell Information Systems Inc. | Word, byte and bit indexed addressing in a data processing system |
-
1976
- 1976-05-03 US US05/682,803 patent/US4093982A/en not_active Expired - Lifetime
-
1977
- 1977-03-25 FR FR7709624A patent/FR2350645A1/fr active Granted
- 1977-04-13 DE DE2716369A patent/DE2716369A1/de active Granted
- 1977-04-14 AT AT0262077A patent/AT376309B/de not_active IP Right Cessation
- 1977-04-26 JP JP52047511A patent/JPS6051134B2/ja not_active Expired
- 1977-04-27 GB GB6610/78A patent/GB1527318A/en not_active Expired
- 1977-04-27 GB GB17490/77A patent/GB1527316A/en not_active Expired
- 1977-04-27 GB GB6609/78A patent/GB1527317A/en not_active Expired
- 1977-04-29 DD DD7700198673A patent/DD130183A5/de unknown
- 1977-04-29 IT IT22965/77A patent/IT1113581B/it active
- 1977-05-02 AU AU24789/77A patent/AU511624B2/en not_active Ceased
- 1977-05-02 CH CH544977A patent/CH620779A5/de not_active IP Right Cessation
- 1977-05-03 CA CA277,472A patent/CA1091355A/en not_active Expired
- 1977-05-03 NL NL7704824A patent/NL7704824A/xx not_active Application Discontinuation
- 1977-05-03 BR BR7702850A patent/BR7702850A/pt unknown
- 1977-11-21 US US05/853,784 patent/US4144563A/en not_active Expired - Lifetime
-
1981
- 1981-11-06 JP JP56177304A patent/JPS5924462B2/ja not_active Expired
- 1981-11-06 JP JP56177303A patent/JPS57197649A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
GB1527318A (en) | 1978-10-04 |
JPS57197649A (en) | 1982-12-03 |
CA1091355A (en) | 1980-12-09 |
JPS52152135A (en) | 1977-12-17 |
AT376309B (de) | 1984-11-12 |
DE2716369A1 (de) | 1977-11-17 |
ATA262077A (de) | 1984-03-15 |
IT1113581B (it) | 1986-01-20 |
JPS57164353A (en) | 1982-10-08 |
JPS6110851B2 (de) | 1986-03-31 |
AU511624B2 (en) | 1980-08-28 |
AU2478977A (en) | 1978-11-09 |
US4093982A (en) | 1978-06-06 |
FR2350645A1 (fr) | 1977-12-02 |
JPS6051134B2 (ja) | 1985-11-12 |
FR2350645B1 (de) | 1980-02-01 |
DD130183A5 (de) | 1978-03-08 |
CH620779A5 (de) | 1980-12-15 |
GB1527317A (en) | 1978-10-04 |
NL7704824A (nl) | 1977-11-07 |
GB1527316A (en) | 1978-10-04 |
US4144563A (en) | 1979-03-13 |
JPS5924462B2 (ja) | 1984-06-09 |
BR7702850A (pt) | 1978-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2716369C2 (de) | ||
DE4416881C2 (de) | Verfahren zum Betrieb einer Datenverarbeitungseinrichtung | |
DE2755273C2 (de) | ||
DE2540975C2 (de) | Datenverarbeitungseinrichtung zur Ausführung mehrerer gleichzeitig ablaufender Prozesse | |
DE2907181C2 (de) | Prozessor mit einem Befehlssatz-Modifizierregister | |
EP1329816B1 (de) | Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.) | |
DE1499722C2 (de) | Einrichtung zur Modifizierung von Informationswörtern | |
DE2953861C2 (de) | ||
DE2117936A1 (de) | Mikroprogrammgesteuerte Zentraleinheit eines elektronischen Datenverarbeitungssystems | |
DE1549523B2 (de) | Datenverarbeitungsanlage | |
DE2230102A1 (de) | Rechenwerk fuer variable wortlaengen | |
DE1499193B2 (de) | Speicher-adressierschaltung | |
CH623947A5 (de) | ||
DE3638572A1 (de) | Vektorprozessor | |
DE2717658A1 (de) | Anordnung zur ansteuerung eines mikroprogrammspeichers | |
EP1599794B1 (de) | Prozessor mit verschiedenartigen steuerwerken für gemeinsam genutzte ressourcen | |
DE2533737A1 (de) | Datenprozessor | |
DE1499730A1 (de) | Einrichtung zur Speicherauswahl | |
DE2245284A1 (de) | Datenverarbeitungsanlage | |
DE2136210A1 (de) | Zentraleinheit fur eine EDV-Anlage | |
DE2747304A1 (de) | Einrichtung zur mikrobefehlssteuerung | |
DE2110458C3 (de) | Speicheranordnung in einem datenverarbeitenden System | |
AT354783B (de) | Programmierbare schaltung zur datenverarbeitung | |
DE2459476A1 (de) | Schaltungsanordnung fuer nichtzyklische datenpermutationen | |
DE602004005806T2 (de) | Serieller Speicher mit Mitteln zur Integration eines erweiterten Speicherfeldes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OD | Request for examination | ||
8128 | New person/name/address of the agent |
Representative=s name: JOST, O., DIPL.-ING., PAT.-ASS., 7030 BOEBLINGEN |
|
8125 | Change of the main classification |
Ipc: G06F 13/16 |
|
8125 | Change of the main classification |
Ipc: G06F 9/24 |
|
D2 | Grant after examination | ||
8364 | No opposition during term of opposition | ||
8339 | Ceased/non-payment of the annual fee |