DE2801543A1 - Datenverarbeitungsanlage - Google Patents

Datenverarbeitungsanlage

Info

Publication number
DE2801543A1
DE2801543A1 DE19782801543 DE2801543A DE2801543A1 DE 2801543 A1 DE2801543 A1 DE 2801543A1 DE 19782801543 DE19782801543 DE 19782801543 DE 2801543 A DE2801543 A DE 2801543A DE 2801543 A1 DE2801543 A1 DE 2801543A1
Authority
DE
Germany
Prior art keywords
input
output
coupled
signal
nand gate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
DE19782801543
Other languages
English (en)
Inventor
Charles Robert Erickson
Hemraj Kundanmal Hingarh
Robert Henry Moeckel
Dan Wilnai
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fairchild Semiconductor Corp
Original Assignee
Fairchild Camera and Instrument Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fairchild Camera and Instrument Corp filed Critical Fairchild Camera and Instrument Corp
Publication of DE2801543A1 publication Critical patent/DE2801543A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7839Architectures of general purpose stored program computers comprising a single central processing unit with memory
    • G06F15/7864Architectures of general purpose stored program computers comprising a single central processing unit with memory on more than one IC chip

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microcomputers (AREA)
  • Advance Control (AREA)
  • Logic Circuits (AREA)

Description

dining. FRIEDRICH B. FISCHER 5000 KÖLN 50 _ . Q
PATENTANWALT r SAARSTRASg&U I 0 H J
j NACHGEREICHT
Fairchild Camera and Instrument
Corporation
464 Ellis Street
Mountain View, California 94040, VStA F 7728
Datenverarbextunqsanlaqe
Die Erfindunq bezieht sich auf digitale Datenverarbeitungsanlagen (Computer), und sie bezieht sich insbesondere auf eine integrierte Schaltung, welche eine Zentraleinheit (Control Processing Unit -CPU) für digitale Datenverarbeitungssysteme bildet.
In den letzten Jahren hat mit der Entwicklung sogenannter "Minicomputer" oder "Microcomputer" die Verwendung digitaler Datenverarbeitungsanlagen in starkem Umfang zugenommen. Gegenwärtig v/erden Minicomputer im Zentrum vieler Systeme benutzt, da sie flexibler sind, ohne besondere Schv/ierigkeiten für eine bestimmte Anwendung programmierbar sind und leichter geändert oder auf den aktuellen Stand gebracht werden können, als dies bei Systemen mit fester Logik der Fall ist; von besonderer Bedeutung ist auch, daß die Kosten solcher Computer erheblich niedriger sind als die Kosten großer digitaler Datenverarbeitungsanlagen für allgemeine Anwendunqszwecke.
Die Entwicklunq von großintegrierten Schaltungen (Large-Scale Integrated circuits - LSI) hat den Entwurf und den Bau von Minicompi'tv^rsystemen möglich gemacht, welche spezialisierte DatenverarbeiL^nqsfunktionen ausführen können. Ein Minicomputer kann den Steuerverarbeitungsteil (control processing portion) eines kleinen Computers umfassen, oder er kann einen kleinen Computer unabhängig in sich und von sich aufweisen. Minicomputer können, wie alle Computerprozessoren, sowohl arithmetische als auch logische Funktionen in bit-paralleler Arbeitsweise unter der Steuerung durch ein gespeichertes Programm ausführen. Minicomputer sind von Natur
" 809829/09 2. 8
Z 8 O 1 5 A 3
aus programmierbar. Wenn man sie in ein System mit peripheren Speicherschaltungen zur Darstellung des Steuerprograrnms einsetzt und Eingabe- und Ausgabeschaltungen vorsieht, erhalt man ein Minicomputersystem, dessen Fähigkeit zur Datenverarbeitung geringer ist als die großer Datenverarbeitungssysteme. Da jedoch die Technik der Großintegration im Fortschreiten ist, nähert sich die Datenverarbei^ungsfähigkeit von Minicomputersystemen bereits der der großen Datenverarbeitungssysteme.
Die Unterbrinqunq von einer Zentraleinheit, von Speicherschaltungen, von Eingangs- und Ausgangsschaltungen und verschiedenen Versorgungsschaltungen auf einer sehr kleinen Zahl von IC-Chips führt zur Verwendung einer kleinen Anzahl von Bausteinen (packages), welche eine große Zahl äußerer Anschlußstellen (pins) aufweisen.
Die zur Zeit zur Verfugung stehenden bekannten Minicomputer bzw. Mikroprozessoren sind in ihrer Arbeitsweise auf 8-Bit-Bytes (oder Nummern) begrenzt, und viele der gegenwärtig zur Verfügung stehenden Einrichtungen dieser Art sind in MOS-Technik (Fetal Oxide-Semiconductor technology) hergestellt. In erster Linie besteht ein Bedürfnis, die Zahl der Bits zu erhöhen, um dadurch die Verwendbarkeit und Einsatzfähigkeit solcher Miniaturcomputer zu verbessern; auch ist die Aufgabe gestellt, die Arbeitsgeschwindigkeit von Einrichtungen dieser Art zu erhöhen.
Gegenstand der Erfindung ist eine Zentraleinheit (CPU) für eine allgemein verwendbare digitale Datenverarbeitungsanlage; sie wird gebildet durch eine einzelne auf einem Chip angeordnete, monolithische integrierte Schaltung. Zur Ausbildung der Zentraleinheit gemäß der vorliegenden Erfindunq auf einem einzelnen Halbleiterchip wird die Technik der integrierten Injektionslogik benutzt, und man erhält hierdurch eine größere Dichte der Komponenten auf einem einzelnen Chip; dadurch ist die Darstellung einer 16-Bit-Zentraleinheit für ein Minicomputersystern auf einem einzelnen Halbleiterchip möglich. Zusätzlich erlaubt die Anwendung der Technik der integrierten Injektionslogik die Herstellung von Halbleiteranordnungen mit höherer Arbeitsgeschwindigkeit. Insgesamt er-
809829/0958
möglicht die Erfindung die Herstellung einer Datenverarbeitungsanlage mit höherer Arbeitsgeschv/indigkeit, als sie mit solchen
Anlagen erreichbar war, welche unter Anwendung der MOS-Technologie (Metal-Oxide-Semiconductor) ausgebildet sind.
Ausführungsbeispieie der Erfindung werden nachfolgend anhand der Zeichnung beschrieben.
Fig. 1 ist ein Blockschaltbild eines Minicomputersystems mit einer Zentraleinheit gemäß der Erfindung.
Fig. 2 ist ein Blockschaltbild eines Speichers, welcher vorzugsweise im Zusammenhang mit der Zentraleinheit gemäß der Erfindung Verwendung finden kann.
Fig. 3 ist ein Blockschaltbild eines Bausteingehäuses der auf
einem einzelnen Halbleiterchip untergebrachten Minicomputer-Zentraleinheit gemäß der Erfindung, wobei die Anordnung der Verbindungsansätze erkennbar ist.
Fig. 4A ist ein Blockschaltbild der Datenpfadlogik der Zentraleinheit.
Fig. 4B ist ein Blockschaltbild der Steuer- und Taktschaltunn
für die Zentraleinheit.
Fig. 5 ist ein Ausführungsbeispiel für ein Zeitsteuerungsdiagramm, und es zeigt die wesentlichen Zeitsteuerungs- und Steuersignale für die Zentraleinheit gemäß der Erfindung.
Fig. 6 ist ein Blockschaltbild der Reihenfolqezustandslogik
(sequence state logic), der Mikroprogramm-PLA (Programmable
Logic Array), der Bestimmungsmultiplex (destination multiplexer) und der Sammelspeicheradressenlogik einschließlich einer Steuer-PLA.
Fig. 7 zeigt Einzelheiten der Schaltung der Reihenfolgezustandslogix.
Fig. 8 zeigt Einzelheiten einer Schaltung einer Steuer-PLA und
eines Gatternetzwerks für die Bestimmungsmultiplex sowie eine
Sammelspeicher-Adressenlogik.
809829/0928
Fig. 9 ist ein Blockschaltbild der Skiplogik, der Unterbrecherund Datenkanalloqik sowie der Quellenmultiplexwahl und der ALU-Funktionslogik.
Fig. 10 ist ein Schaltbild mit Einzelheiten der Skiplogik.
Fig. 11 ist ein Schaltbild mit Einzelheiten der Unterbrecher- und Datenkanallogik.
Fig. 12 ist ein Schaltbild mit Einzelheiten der Quellenmultiplexsteuerung und der ALU-Funktionssteuerlogik.
Fig. 13 ist ein Blockschaltbild der Träger- und Verschiebungslogik.
Fig. 14 ist ein Schaltbild mit Einzelheiten der Trägerlogik.
Fig. 15 ist ein Schaltbild mit Einzelheiten der Verschiebungslogik,
Fig. 16 ist eine Übersichtszeichnung zur Veranschaulichung der Lage der Fig. 16A, 16B und 16C.
Fig. 16A, 16B und 16C sind Schaltbilder mit Einzelheiten der Taktlogik.
Fig. 17 ist ein Flußschaltbild zur Darstellung der Arbeitsweise der Taktlogik.
Fig. 18 und 19 sind Diagramme der Zeitsteuerung zur weiteren Erläuterung der Arbeitsweise der Taktlogik.
Fig. 20 ist ein Schaltbild mit Einzelheiten einer einzelnen Bitposition der Informationssammelleitung.
Fig. 21 ist ein Schaltbild mit Einzelheiten eines Teiles des Sammelleitungsregisters .
Fig. 22 ist ein Schaltbild mit Einzelheiten eines Teiles des Befehlsregisters.
Fig. 23 ist ein Schaltbild einer der Multiplex- und Sammelspeicherschaltungen.
Fig. 24 ist ein Schaltbild mit Einzelheiten eines Teils der Bestimmungs- und Quellenmultiplex.
Fig. 25 ist ein Schaltbild mit Einzelheiten der ALU.
Fig. 26 ist ein Schaltbild mit Einzelheiten des Programmregisters.
809829/0921
Fig. 27 ist ein Schaltbild mit Einzelheiten der Inkrement- und Sammelleitungsmultiplex.
Fig. 28 ist ein Schaltbild mit Einzelheiten des Kratzregisters (sratch register).
Fig. 29 ist ein Übersichtsschaltbild für die Lage der Fig. 29A bis 29D.
Fig.. 29A bis 29D zeigen Einzelheiten der Ausbildung und Anordnung der programmierbaren Logikanordnung.
Fig. 30 ist eine Wiedergabe einer Mikrofotografie der Zentraleinheit gemäß der vorliegenden Erfindung in der Form einer integrierten Schaltung.
Fig. 1 ist ein Blockschaltbild eines Minicomputersystems 50 mit der Zentraleinheit (CPU) 52 gemäß der vorliegenden Erfindung. Ein Speicher 54, welcher im Regelfall eine der marktüblichen Speicheranordnungen umfassen kann, ist mit der Zentraleinheit durch eine Informationssammelleitung 56, eine Eingabe/Ausgabe-Sammelleitung 58 (I/O) und eine Speichersteuersammelleitung 60 gekoppelt.
Ein Bedienungspult 62 ist mit der Zentraleinheit 52 durch eine Steuersammelleitung 64 und eine Zustandssammelleitung 66 verbunden. Das Bedienungspult 62 ist auch mit der Speichersteuersammelleitung 60, der Informationssammelleitung 56 und der Eingabe/ Ausgabe-Steuersammelleitung 58 gekoppelt. Im allgemeinen enthält das Bedienungspult 62 eine größere Zahl von Schaltern und Lichtanzeigen, welche dem Benutzer die Arbeit mit dem Mikrocomputersystem 50 ermöglichen und erleichtern. Mit dem Minicomputersystem 50 können eingabe- und/oder Ausgabeeinrichtungen gekoppelt sein, und diese sind allgemein durch die Blöcke 68 und 70 der Eingabe/Ausgabe-Einrichtungen angedeutet.
Jede Eingabe/Ausgabe-Einrichtung, beispielsweise 68, 70 usw., können die Arbeit der Zentraleinheit 52 durch ein Unterbrechungsanforderungssignal (INT. REQ.), welches auf eine Leitung 72 geliefert wird, unterbrechen. Unmittelbarer Speicherzugriff ist
809829/0928
möglich zwischen einer Eingabe/Ausgabe-Einrichtung und dem Speicher 54 durch ein Datenkanal-Anforderungssignal (D.CH.REQ.) auf einer Leitung 73. Es gibt auch andere Möglichkeiten der Unterbrechung der Arbeit der Zentraleinheit. Beispielsweise kann ein HALT-Signal der Zentraleinheit 52 von dem Bedienungspult 62 zugeführt werden. Im Betrieb.tastet die Zentraleinheit periodisch die HALT-Signallcitung aus dem Bedienungspult, die Datenkanalanforderungs-SicnaIleitung 73 und die Unterbrechungsanforderungs-Signalleitunq 72 ab, bevor jeder neue Befehl ausgeführt wird. Wenn beispielsv/eise ein Unterbrechunqsanforderungssiqnal festgestellt worden ist, legt die Zentraleinheit mehrere Mkrozyklen zurück, um die Unterbrechung vorzubereiten. Insbesondere wird der Inhalt des Programrnzählers, welcher die nächste Speicheradresse für das Heranführen des anschließend auszuführenden Befehlscodes enthält, in Adresse Null des Speichers gespeichert. Dann adressiert die Zentraleinheit den Speicher, um die Unterbrechnungsbedienungsroutine heranzuholen.
Die Eingabe/Ausgabe-Einrichtungen 68, 70 usw. können derart in einer Prioritätskette gekoppelt sein, daß die erste Einrichtung (im vorliegenden Fall Einrichtung 6S) die erste Eingabe/Ausgabe-Einrichtung ist, v/elche den Betrieb der Zentraleinheit unterbrechen kann. Alle nachfolgenden Eingabe/Ausgabe-Einrichtungen (im vorliegenden Fall Einrichtung 70) werden von der Zentraleinheit 52 im Anschluß an die Bedienung der Prioritäts-Eingabe/Ausgabe-Einrichtung (im vorliegenden Fall Einrichtung 68) bedient. Die Prioritätskette der Eingabe/Ausgabe-Einrichtungen wird dadurch erhalten, daß eine I.P.IM (Interrupt Priority IN) -Eingangsklemme der ersten (mit der höchsten Priorität ausgestatteten) Eingang/ Ausgang-Einrichtung mit einem festen Potential gekoppelt wird und ein I.P.OUT (Interrupt Priority OUT) -Ausgangssiqnal dieser gleichen Einrichtung mit der I.P.IN-Eingangsklemme der in der Prioritätskette nächsten Einqabe/Ausgabe-Einrichtunq koppelt. In Fig. ist die I.P.IN-Einqangsklemme der Eingabe/Ausqabe-Einrichtung 68 mit einem festen Potential durch eine Leitung 74 gekoppelt. Die I.P.OUT-Klemme der Einrichtung 68 ist mit der I.P.IN-Klemne der
' 809829/0928
Einrichtung 70 gekoppelt. Die Datenkanalanforderungs-Signalleitungen sind in entsprechender Weise gekoppelt. Eine D.CH.P.IN-(Data Channel Priority IN) -Eingangsklemme der Einrichtung 68 ist mit einem festen Potential durch eine Leitung 75 gekoppelt. Eine D.CH.P.OUT (Data Channel Priority OUT) -Klemme der Einrichtung 68 ist mit der D.CH.P.IN-Klemme der Einrichtung 70 verbunden.
Das Programm, welches eine Folge von Befehlscodes für die Zentraleinheit 52 zur Durchführung verschiedener Operationen enthält, ist in dem Speicher 54 gespeichert. Diese Befehle werden zu der Zentraleinheit 52 durch die Informationssammelleitung 56 weitergegeben, wenn Signale auf de Speichersteuersammelleitung 60 von der Zentraleinheit 52 geliefert werden. In gleicher Weise können auch von der Zentraleinheit 52 erzeugte Daten, beispielsweise das Ergebnis eines Rechenvorgangs, in dem Speicher 54 durch Weitergabe der Ergebnisdaten entlang der Informationssammelleitung 56 zum Speicher aufgrund eines zusätzlichen Steuersignals, welches auf Speichersteuersammelleitung 60 geliefert wird, gespeichert werden. Die Eingabe/Ausgabe-Einrichtungen 68, 70 usw. werden durch die Zentraleinheit 52 durch Signale gesteuert, welche auf Eingabe/Ausgabe-Steuersammelleitung 58 geliefert werden.
Fig. 2 ist ein Übersichts-Blockschaltbild einer bevorzugten Ausführungsform des Speichers 54. Die Speichersteuersammelleitung 60, welche bei der dargestellten Ausführungsform drei Signalleitungen M , PL und Hp enthält, ist mit dem Eingang einer Speichersteuerschaltung 76 gekoppelt. Ausgänge der Speichersteuerschaltung 76 werden auf Leitungen 78 gegeben, welche mit den einzelnen Speicherschaltungen gekoppelt sind und zur Vereinfachung der zeichnerischen Darstellung nicht im einzelnen wiedergegeben sind. Ein Steuersignal SYN wird der Speichersteuerschaltung 76 über eine Leitung 61 zugeführt. Das SYN-Signal ist ein Synchronisationssignal, und es steuert die Arbeitsweise des Speichers 54 im Einklang mit der Arbeitsweise der Zentraleinheit 52. Die Arbeitsweise der Zentraleinheit 52 ist entsprechend der Arbeitsweise des Speichers 54 synchronisiert, und zwar durch ein Signal, welches auf
809829/0928
Leitung 77 zugeführt wird und als Mem.Bsy. (Memory Busy) bezeichnet ist. Die Zentraleinheit erzeugt periodisch das SYN-SIgnal, und das Mem.Bsy..-Signal wird in dem Speicher bei Eingang des SYN-Signals erzeugt. Außerdem kann das Mem.Bsy.-Signal auch von dem Speicher erzeugt werden, wenn der Speicher besetzt (busy) ist, und nicht nur bei Eingang des SYN-Signals.
Die Informationssanmelleitung 56 ist mit dem Eingang eines Speicheradressenreqisters (memory address register - MAR) 80 gekoppelt, welches die Speicheradresse zeitweilig speichert. Ausgänge des Speicheradressenreqisters 80 sind mit dem Adresseneingang einer Speicheranordnung 82 gekoppelt. Die Informationssammelleitung 56 ist auch mit Ausgangsklemmen eines Ausqangspuffers 84 verbunden. Eingangsklemmen der Pufferschaltung 84 sind gekoppelt mit "Lesen"-Ausgangsklemmen der Speicheranordnung 82. Die Informationssammelleitung 56 ist auch mit Eingangsklemmen eines Daten-Ein-Registers 86 gekoppelt. Ausgangsklemmen des Daten-Ein-Registers 86 sind mit den "Schreiben"-Eingangsklemmen der Speicheranordnung 82 gekoppelt.
Fig. 3 ist eine Draufsicht auf einen Baustein 90, welcher das Gehäuse für einen einzelnen, die Zentraleinheit 52 bildenden Halbleiterchip darstellt. In Fig. 3 ist insbesondere die Anordnung von Stiftanschlüssen für den Baustein 90 erkennbar, welche die Verbindung äußerer Komponenten des Minicomputersystems 50 mit der Zentraleinheit 52 bilden. Die Informationssammelleitung 56 ist in 16 Anschlußstifte aufgeteilt dargestellt, welche die 16 Bits entweder zu der Zentraleinheit oder von der Zentraleinheit weitergeben. Die einzelnen Anschlüsse sind mit IBQ bis IB15 bezeichnet, und diese Bezeichnungen werden nachfolgend auch für die einzelnen Datenbits auf der Informationssammelleitung 56 des Minicomputersystems benutzt. Die Eingabe/Ausgabe (I/0)-S teuer Sammelleitung 58 enthält zwei Signalleitungen 0. und On. Die Speichersteuersammelleitung 60 enthält drei Leitungen MQ bis M„. Ein Ausgangssignal mit niedrigem Pegel auf der MQ-Signalleitung bewirkt das Lesen von Daten aus der Speicheranordnung; ein Signal mit niedrigem Pegel auf der Signal leitung M^. bwirkt das Einschreiben von Daten
809829/0928
in die Speicheranordnung; und ein Siqnal mit niedriqem Pegel auf der Leitunq M„ zeigt an, daß eine Speicheradresse zur Speicheranordnung 82 geliefert wird. Leitung 77 (MEM BUSY) ist ein Einganq zu der Zentraleinheit 52, und ein Siqnal mit niedrigem Pegel, welches auf dieser Leitung zugeführt wird, zeigt an, daß der Speicher gerade einen Arbeitsgang ausführt. -
Zusätzlich zu den Signalen, welche über die beschriebenen Signalleitungen und Sammelleitungen zugeführt werden, wird ein äußeres Taktsignal (CP) auf einer Leitung 92 zugeführt, und es ist eine Leitung 94 vorhanden, welche eine Verbindung zu einem Kristall (XTL) bei einer bevorzugten Form eines Taktoszillators herstellt. Beispielsweise kann zwischen der CP-Sigrialleitung 92 und der XTL-Leitunq 94 ein Kristall eingeschaltet sein, welcher im Zusammenwirken mit Verstärkern in der Zentraleinheit selbst einen Oszillator bildet, um das Taktsignal für die Zentraleinheit zu erzeugen. Außerdem wird das innerhalb der Zentraleinheit 52 erzeugte Taktsignal auf eine Leitung 96 (CLK.OUT) weitergegeben, so daß weitere Arbeitsgänge des Minicomputersystems 50 synchronisiert werden können. Auf Leitung 98 wird ein Rückstellsignal (Reset) geliefert; welches im Betrieb einige der Register innerhalb der Zentraleinheit 52 rückstellt und die Zentraleinheit in einen "Warten"-Zustand versetzt. Über Leitung 100 wird Spannung (Vrr) zugeführt und eine Stromquelle Ix.., ist mit einer Leitung 102 gekoppelt. Bei der dargestellten bevorzugten Ausführungsform wird eine besondere Art einer integrierten Transistorschaltung verwendet, welche als "integrierte Injektionsloqikls (integrated injection logic) bezeichnet wird. Diese Logik erfordert eine stabilisierte Stromquelle, um einwandfrei arbeiten zu können. Dementsprechend ist die Leitung 102 mit einer Stromquelle einer außerhalb der Zentraleinheit 52 befindlichen Stromversorgung verbunden, welche diesen Strom liefert. Erdpotential v/ird der Zentraleinheit 52 über eine Klemme 104 zugeführt, welche bei der vorliegenden Ausführungsform mit zwei verschiedenen Anschlußstiften der Zentraleinheit in der dargestellten Weise verbunden ist.
809829/0928
28Ü1543
In ihrem Gesamfcaufbau ist die Zentraleinheit 52 qemäß der vorliegenden Erfindung in eine Datenpfadschaltung (data path circuitry), welche in Fiq. 4A dargestellt ist, und in Steuer- und Taktlogikschaltunqen, welche in dem Blockschaltbild der Fig. 4B dargestellt sind, aufgeteilt. Die Zentraleinheit 52 arbeitet jeweils nur mit vier Bit (nachfolgend auch als "Nibble" bezeichnet) der 16-Bit-Wörter, welche in dem Minicomputersystem verwendet worden. Die Zentraleinheit erscheint jedoch gegenüber externen Systemkornponenten so, als v.-ürde sie mit dem vollständigen 16-Bit-Wort arbeiten. Die üutorr.'fad-Locikschaltung ist demgemäß in vier Abschnitte unterteilt, von denen jeder vier Bit verarbeiten kann.
Fig. 4A zeigt im Zusammenhang mit der Datenpfadlcgik, daß die Informationssnmmelleitung 56 mit den Eingangsklernmen eines Befehlsregisters 106 und eines SammellGitungsregisters 108 verbunden ist. Der Ausgang des Befehlsregisters 106 (IRO - IR15) wird auf eine Sammelleitung 110 gegeben. In entsprechender V/eise wird der Ausgang des Sammelleitungsregisters 108 (BRO - BR15) auf eine Sammelleitung ll2 geliefert. Da die Sammelleitungen 110 und 112 mit zahlreichen Schaltungen innerhalb der Zentraleinheit 52 gekoppelt sind, sind die einzelnen Verbindungen dieser Sammelleitungen zu den verschiedenen Blocks, welche die Blockdiagramme in den Fig. 4A und 4B bilden, zur Vereinfachung der Darstellung nicht gezeichnet. Die Arbeitsweise des Befehlsregisters 106 wird durch zwei Taktsignale gesteuert, welche auf Leitungen 105a und 105b geliefert werden; diese Signale werden bezeichnet als IRPCL (Instruction Register Parallel Clock) bzw. IRSCL (Instruction Register Serial Clock). Die Arbeitsweise des Sammelleitungsregisters 108 wird gesteuert durch drei Taktsignale, welche auf Leitungen 107a, 107b und 107c zugeführt werden; diese Signale werden bezeichnet als BRPCL (Bus Register Parallel Clock), BRSCL (Bus Register Serial Clock) bzv/. BROE (Bus Register Output Enahlo). Die vier (4) ara wenigsten bedeutenden Bitpositionen des Befehlsregisters 106 (also das "Nibble" mit der geringsten Bedeutuni) werden zu Eingängen einer Quellenmultiplexschaltunq 114 gefühlt, uio. Arbeitsweise der Quel lenrnultiplexschaltung 114 wird gesteuert durch drei Queilenmultiplexwuhlsicnale (Source Multiplexer Select signals), welche als LiISO, Sl und S2 bezeichnet sind una auf
809829/0928
280 Ί 543
Leitungen 115 zugeführt werden. In ähnlicher V/eise wird das Nibble geringster Bedeutung des Sanrunelleitungsregisters 108 au Eingängen einer Bestimmungsmultiplexschaltung 116 geführt. Die Arbeitsweise der Bestimmungsmultiplexschaltung 116 wird gesteuert durch drei Bestimmungsmultiplexwahlsignale (Destination Multiplexer Select Signals), welche nachfolgend als DMSO, Sl und S2 bezeichnet sind und auf Leitungen 113 zugeführt werden. Die Multiplexschaltungen 114 und 116 haben die Aufgabe, einen gewählten Satz von vier Eingängen an vier Ausgänge abzugeben.
Der Ausgang der Quellenmultiplexschaltung 114 wird als erster Operandeneingang an eine arithmetische Vier-Eit-Logikeinheit (ALU) 118 weitergegeben, und der Ausgang der Bestimmungsmultiplexschaltung 116 wird als zweiter Operandeneingang an die arithmetische Logikeinheit ALU geliefert. Die Arbeitsweise der arithmetischen Logikeinheit 118 wird durch drei Signale gesteuert. Diese Signale sind ALUSO und Sl (ALU Select Signals), welche auf Leitungen 121 zugeführt werden, und das C/ALU-Signal (Carry ALU), welches auf Leitung 117 geliefert wird. Der Ausgang der arithmetischen Logikeinheit 118 wird einer Programmzähler-Multiplexschaltung 120, einer Sammelleitungsregister-Multiplexschaltung 122, einer Verschiebungslogik 124 und einer Seite einer Wechsel (Swap)-MuItiplexschaltung 126 zugeführt. Der Ausgang der Verschiebungslogik 124 ist gekoppelt mit den dem Nibble mit der größten Bedeutung zugeordneten Eingangsklemmen eines Kratzregisters (Scratchregister) 128, und der Ausgang des nächstbedeutenden Nibble des Registers 128 ist gekoppelt mit dem zweiten Satz von Eingängen der Multiplexschaltung 126. Ein Ausgang der Verschiebunqslogik 124 wird der Multiplexschaltung 126 zugeführt, um anzuzeigen, ob das 16-Bit-Wort parallel in Nibbleform und in Serie in Wortform zu verschieben oder zu wechseln (swapped) ist. Dieses Signal wird daher bezeichnet als SH SWP "Shift or Swap".
Der Ausgang der Multiplexschaltung 126 ist gekoppelt mit dem Nibble der zweitniedriqsten Ordnung des Registers 128. Das Nibble mit der niedrigsten Bedeutung des Registers 128 ist gekoppelt mit den Einaänqen von vier 4-Bit-fiultiplexschaltunqen 130 bis 133.
809829/0928
28Ü1543
Der Ausganq der FIuItiplexschaltung 130 ist gekoppelt mit einem Kinqanq der Quellenmultiplexschaltunq 114 und dem Eingang der Bestimmungsmultip]exschaltunq 116. Auch sind die Ausgänge der Multiplexschaltunq 130 rückgekoppelt zu den Eingängen eines 16-bit-Sammlers 134. Die Ausgang der Multiplexschaltungen 131 bis 133 sind in entsprechender V/eise mit den Eingängen der Quellenmultiplexschaltunq 114 und der Bestimmungsmultiplexschaltung 116 bzw. den Eina.'Incen von Sammlern 135 bis 137 gekoppelt. Die Arbeitsweise der Hultiplexschaltunqen 130 bis 133 ist gesteuert durch vier Sammler-Schreib-Siqnale (Accumulator Write signals), welche nachfolgend als ACC/WO, Wl, W2 und W3 bezeichnet a.nd und welche auf Leitungen 138a bis 138d geliefert werden.
Die Programmzählermultiplexschaltung 120 wird gesteuert durch ein Programmzähler-Multiplex-Wahlsignal PC MUX (P.C.Multiplexer Select signal), welches auf einer Leitung 140 geliefert wird. Der Ausgang der Multiplexschaltung 120 wird als Eingang in einen Programmzähler 141 der Zentraleinheit 52 eingeführt. Der ProqrammzMhler 141 enthält bei der vorliegenden bevorzugten Ausführungsform ein Programmregister 142 (P.R.) und eine Inkrementschaltunq 144. Die Arbeitsweise des Programmrsgisters 142 wird gesteuert durch ein Programmzählertaktsignal PCCL (Program Counter Clock signal), welches auf Leitung 146 zugeführt wird. Der Ausgang das Programmreqisters 142 wird als Eingang der Inkrementschaltung 144 zugeführt, und die Arbeitsweise dieser Schaltung wird gesteuert durch ein Programmzählerinkrementsignal PC INC (Program Counter Increment Signal), welches auf Leitung 147 geliefert wird.
Der Ausgang der Inkrementschaltung 144 wird an einen zweiten Eingang der Sammelleitunqcregister-Multiplexschaltung 122, an einen zweiten Eingang der I'rogrammrühler-Multiplexschaltung 120 und an einen zwei ten Eingang der Verschiebungslogik 12.4 angelegt. Die Arbeitsweise der Samrißlleitungsregister-Multiplexschaltung (B.R. Mlix) 122 wird durch oin Sammel lei tunqsnultiplexv/ahl signal BHS (Bus HuHipioxnr Select niqnal) gesteuert, und dieses Signal wird auf einer Leitunq 140 zugeführt. Der Ausqana der Sanvnelleitungsreyisi.t?r--i:ultiplcxnchaH:unq 122 ist mit demjenigen Nibble
809829/0928
2 8 Ü 1543
des Sammelleitungsregisters 108 gekoppelt, welches die größte Bedeutung hat. Die von dem Programmzähler 141 gelieferte Adresse wird daher der Informationssammelleitung 56 zur Weitergabe zum Speicher zugeführt. In diesem Zusammenhang ist zu beachten, daß durch die Multiplexschaltung 122 eine Speicheradresse oder ein Datenwert auch von der arithmetischen Logikeinheit (ALU) 118 geliefert v/erden kann.
Fig. 4B ist ein Übersichts-Blockschaltbild einer Steuerloqik und einer Taktiogik 152. Der Ausgang des Befehlsregisters 110 (also IRO bis IR15) wird als Eingang der Steuerloqik 150 zugeführt. Außerdem wird ein Teil des Ausgangs aus der Informationssammelleitung 56 (also IBO, 1, 5, und 10-15) als Eingang der Steuerlogikschaltung 150 zugeführt. Da jedoch nur ein Teil der Informationssammelleitung 56 als Eingang zu der Steuerlogik gelangt, ist diese Sammelleitung in Fig. 4B mit dem Bezugszeichen 56' versehen. Ausgangsklemmen der Steuerlogik 150 sind mit Eingangsklemmen der Taktlogik 152 durch eine Sammelleitung 154 verbunden .
Der Takteingang (CP) und der Kristalleingang (XTL), welche auf den Leitungen 92 bzw. 94 zugeführt werden, sind Eingänge der Taktlogik 152. Außerdem wird das Signal MEM BUSY auf Leitung 77 zugeführt; es ist ein weiterer Eingang der Taktlogik 152. Auch ist das Rück-Signal auf Leitung 98 ein v/eiterer Eingang der Taktlogik 152. Die Ausgänge aus der Steuerlogik 150 und der Taktlogik 152 sind bereits oben kurz erwähnt worden; sie werden anschließend im Zusammenhang mit einer eingehenderen Beschreibung der nachfolgenden Figuren noch näher behandelt werden.
Die Zentraleinheit 52 verarbeitet Daten intern durch die arithmetische Logikeinheit in vier aufeinander folqenden 4-Bit-Nibbles. Fig. 5 zeigt als Übersichtsdarstellung ein Diagramm der zeitlichen Steuerung eines Teils der bisher beschriebenen Signale. Schwingungsform 156 zeigt das von dem Oszillator erzeuqte Grund-Taktsignal, welches die Zentraleinheit 52 steuert. Schwingungsform 158 zeigt das Taktsignal NCCL, welches von der Taktlogik 152 innerhalb der Zentraleinheit 52 erzeugt wird.
809829/0975
2301543
Schwingungsform 160 zeigt die Beziehung der Zeitsteuerung für jedes Nibble des 16-Bit-Wortes. Jeder positive Teil der Schwingunqsform 160 umfaßt vier Nibbles. Während jedes dieser positiven Teile dieser r>chwinqungsform wird eine Operation von der Zentraleinheit ausgeführt, beispielsweise eine arithmetische Operation. Schwingungsform 162 zeigt die Arbeitsweise der Programmlogik PLA, und diese Schwingungsform zeigt lediglich diejenigen kleinen Zeitintervalle, in denen die PLA Ausgangssignale weitergibt. 3chv:innungsform 164 zeigt das Signal GTPLA, welches entstanden ist als Abkürzung aus "Go To PLA". Dieses Taktsignal wird unmittelbar vor den PLA-Zeitintervallen aktiviert, und dis PLA-Zeitintsrvalle erscheinen unmittelbar vor den positiven Teilen des Nibble-Signals. Durch diese seitliche Beziehung steht genügend Zeit für die Vorbereitung einer Operation zur Verfügung, bevor die Operation ausgeführt wird. Schwingungsform 166 stellt das SYN-Signal dar, welches von der Steuerlogik 152 zur Verfugung gestellt wird, um die Arbeitsweise des Speichers und der Einganq/Ausgang-Einrichtungen, welche mit der Zentraleinheit gemäß der vorliegenden Erfindung zusammenwirken, zu synchronisieren. Schwingungsform 168 zeigt das MEM.BUSY-Signal, welches von der Speichersteuerschaltung 76 (Fig. ?) geliefert wird und anzeigt, daß sich der Speicher in der beschriebenen Weise im Datenzugriff befindet.
In diesem Zusammenhang ist zu beachten, daß während derjenigen Zeit, in der das SYN-Signal (Schwingungsform 166) sich auf einem niedrigen Pegel befindet und die PLA-Zeitperiode (Schwingungsform 162) sich ebenfalls auf einem niedrigen Pegel befindet, das Taktsignal NCCL in die höhere Frequenz des Oszillatorsignals (Schwingungsform 156) geändert wird. Diese Änderung der Taktfrequenz erfolgt, um eine unangebrachte Verzögerung bei der Feststellung eines Eingangs au der Zentraleinheit su vermeiden.
Schwinqungsform 170 zeigt das Signal IRPE (Instruction Register Parallel Enable signal),, welches als Eingang dem Befehlsregister 106 zugeführt wird, um die Arbeitsweise dieses Registers zu steuern. Schwingunrisforrn 172 zeigt das Signal IRPCL (Instruction
809829/0928
Reqist.er Parallel Clock signal), welches ebenfalls riio Arbeitsweise des Befehlsregisters 106 steuert. Schwingungsform 174 zeigt das Sianal BROE (Bus Register Output Enable signal), welches dem Sammelleitungsregister 108 zuqeführt wird, damit dessen Ausgänge die Inf ormationssamrnelleitung 56 steuern können. Schwingunqsform 176 zeigt das Signal BRPE, welches als Steuereinqang an das Sammelleitungsregister 108 angelegt wird, um eine parallele Beschickung der Sarr.melleitungsregisters zu wählen. Schwingungsform 173 zeigt das Signal BRPCL (Bus Register Parallel Clock signal), welches ebenfalls einem Steuereingang des Sammelleitungsregisters 108 geliefert wird.
Schwingungsformen 180 bis 182 zeigen die Speichersteuersignaie Mn bis M„; diese Signale wählen die Operationen Lesen, Schreiben und Speichern (load) des Speicheradressenregisters des Speichers 54.
Die Zeitperiedenabschnitte in Fig. 5 zwischen tQ und t., t, und tp und t~ und t~ repräsentieren Arbeits-Mikrozyklen eines Mu?ter-Befehls für die Zentraleinheit 52. Die Schwingungsformen 184, 185 und 186 zeigen drei besondere Arbeitssustände der Zentraleinheit während der drei dargestellten Muster-Mikrozyklen. Diese Zustände werden als S„p, XEQ1 (execute 1) und XEQ„ (Execute 2) bezeichnet. Dabei ist zu beachten, daß diese drei Arbeitszustände nur als Illustration einer "Speichern Sammler" (Store Accumulator)-Operation anzusehen sind, jedoch nicht einschränkend sind, da von der Zentraleinheit v/eitere Operationen ausgeführt werden.
Zur näheren Erläuterung dieses Punktes ist davon auszugehen, daß alle Befehle für die Zentraleinheit mit dem Zustand S^o beginnen. Nun wird für einiqe Befehle, beispielsweise solche, welche in Fig. 5 dargestellt sind, die Zentraleinheit in den Zustand XEQ versetzt. Für noch weitere Befehle wird die Zentraleinheit anschließend in den Zustand XLQ2 versetzt. Insbesondere wurde in das Befehl srpqister vor der Zeit tQ eingespeichert, und zwischen In und t«. boqinnt die Aur-: ührunq dieses Befehls wahrend des Zustandes
So?· Während der PLA-Zeit des Zustands S~p bestimmt die Programmlogikanordnung (Program Logic Array - PLA) den anschließend auszuführenden Mikrozyklus aufgrund des jeweils in dem Befehlsregister gespeicherten besonderen Befehlscodes, und zwar im Zusammenwirken mit zusätzlichen Eingängen, welche in die Programmlogik-Anordnung (FLA) in noch zu beschreibender Weise eingeführt werden.
Zwischen den Zeiten t. und t» befindet sich das Zustandssignal XEQ. auf einem hohen Pegel, um die Realisierung dieses Zustands oder Arbeitsmikrozyklus zu ermöglichen. Während der Nibble-Zeit (Schwingungsform 160 auf hohem Pegel) wird eine Datenpfadoperation (data path operation) ausgeführt. Anschließend wird eine Sammelleitungs-Operation (Bus operation) ausgeführt, wobei sich das Signal BROE (Schwingungsform 174) auf einem hohen Pegel befindet. Dann erfolgt die Einstellung für den nächsten Mikrozyklus, wobei das Signal GTPLA einen hohen Pegel einnimmt, gefolgt von der kleinen Zeitspanne PLA. Die gleiche Folge wird wiederholt während des Mikrozyklus XEQ2.
Nachfolgend wird die Arbeitsweise der Zentraleinheit 52 gemäß der vorliegenden Erfindung unter Bezugnahme auf die Fig. 4A und 5 beschrieben. Zuerst adressiert das Programmregister 142 den Speicher, um einen Befehlscode zu erhalten. Dieser Befehlscode gelangt auf der Informationssammelleitung 56 zu dem Eingang des Befehlsregisters 106 und wird hier gespeichert. Es sei als Beispiel angenommen, daß der Befehlscode, welcher in das Befehlsregister 106 eingespeichert wird, ein "Speichern Sammler" (Load accumulator)-Befehl ist. Ein Teil dieses Befehlscodes ist ein Index für eine Speicheradresse, welche in einen Sammler einzuführende Daten feststellt. Der Speicherindexteil des in das Befehlsregister 106 eingespeicherten Befehlscodes wird als Eingang der Quellenultlplexschaltung 114 und anschließend einem Eingang der arithmetischen Logikeinheit (ALU) 118 zugeführt. Als Beispiel sei angenommen, daß ein zweiter Operand der arithmetischen Logikeinheit 118 von einem Basisregister, beispielsweise Multiplexschaltung 133, zugeführt wird. Diese Operanden werden von der
809829/0920
arithmetischen Logikeinheit 118 addiert und stehen an ihrem Ausgang zur Verfugung. Dieser Ausgang aus der arithmetischen Logikeinheit 118 bildet die Speicheradresse, von welcher Daten zu erhalten sind, und diese Adresse wird der Sammelleitungsregister-Multiplexschaltung 122 und dann dem Sammelleitungsregister 108 zugeführt. In diesem Punkt gelangt die Speicheradresse auf die Inf ormationssarnr.el leitung 56, und sie wird dem Speicher zugeführt« Aus dem Speicher erhaltene Daten stehen auf der Informationssammelleitung 56 zur Verfügung, und sie werden in das Sammelleitungsregister 108 einqeführt. Während des nächsten Arbeitszyklus werden in das Sammelleitungsregister 108 eingeführte Daten als Eingang der Bestimmungsmultiplexschaltung 116 und einem Operandeneingang der arithmetischen Logikeinheit 118 zugeführt. Bei dem vorliegenden Ausführungsbeispiel werden die Daten mit einer Null aus der Quellenmultiplexschaltung 114 kombiniert. Die Summe oder das Ergebnis dieser Operation steht am Ausgang der arithmetischen Logikeinheit 118 zur Verfügung, und sie wird einem Eingang der Verschiebungsloqik 124 zugeführt. Anschließend wird dies Ergebnis in das Register 128 eingeführt.
Während dieses gleichen Operationszyklus wird der Inhalt des grammreqisters 142 durch die Inkrementschaltung 144 inkrementiert und einem Eingang der Sammelleitungsregister-Multiplexschaltung 122 zugeführt. Außerdem v/ird diese inkrementierte Programmadresse zurück zu einem Eingang der Programmzähler-Multiplexschaltung 120 zur Vorbereitung der Einführung dieser Adresse zurück in das Programmregister 142 zugeleitet. Der Ausgang der Sammelleitungsregister-Multiplexschaltung 122 wird dem Sammelleitungsregister 108 und dkm Speicher durch die Inforrnationssammelleitung 56 zur Vorbereitung der Entnahme des nächstfolgenden Befehls aus dem Speicher zugeführt. Auch wird während dieses Zyklus der neue Befehl in das Befehlsregister 106 eingespeichert. Es findet demgemäß während eines gegebenen Mikrozyklus eine Überlappung von Operationen statt, so daß unerwünschte Zeitverzögerungen der Arbeit der Zentraleinheit vermieden werden.
809829/0928
Während des nächsten Hikrozyklus des Arbeitsablaufs wird der Inhalt, welcher in das Register 128 eingespeichert war, nun an eine gewählte Multiplexschaltung (130 bis 133) v/eitergegeben. Während dieses gleichen Mikrozyklus werden die in die gewählte Multiplexschaltung eingeführten Daten auch in den entsprechenden Sammler (134 bis 137) fortqeschrieben. Dabei ist zu beachten, daß während dieses Mikrosvklus der Einführung in die Multiplexschaltung und den Sammler der erste Hikrozyklus des Arbeitsvorgangs des nächsten Befehlscodes, v/elcher in dem Befehlsregister 106 gespeichert ist, auch ausgeführt wird.
Fig. 6 zeigt ein Blockschaltbild mit einer mikroprogrammierbaren Logikanordnung (PLA) 190, einer Folgesustandslogik 192 und eine Schaltung 194 mit Bestimmungsmuitiplexschaltunq, Sammleradressenlogik und Steuer-PLA. Ein Teil der Ausganqssammelleitung 110 aus dem Befehlsregister 106, welcher hier als 110' bezeichnet ist, stellt einen Eingang in die Programmlogik 190 dar, und ein Teil stellt auch einen Eingang in die Steuerprcqrammloqxkanordnunq dar. Vier Ausaänqe fQ bis f3 aus der Programnlogikanordnung 190 sind als Eingänge zurück zu der Folgezustandsloqikanordnung 192 geschaltet. Auch sind vier Ausgänge FQ bis F3 aus der Folgezustandsloqikanordnung 129 als Eingänge mit der mikroprogrammierbaren Logikanordnung 190 gekoppelt.
Die Kombination der PLA 190 mit der Folgezustandslogik 192 umfaßt eine Mikroprogrammsteuerung, welche in dem Befehlsregister gespeicherte Programmbefehlscodes dekodiert und für das Fortschreiten aller der Systemtaktsignale und der Datenweitergaben für die Proqrammausführunq sorqt. Insbesondere enthält die Folqezustandsloqikschaltung 192 ein Zustandsregister, und die PLA 190 enthält im wesentlichen eine speicherähnliche Struktur zur Ausführung logischer Funktionen.
Als Adressenbits zu der PLA 190 werden Variable verwendet, und die aufgrund der Adressenbits erhaltenen Ausqangsbits umfassen mehrere Signale, welche die Arbeitsweise der Zentraleinheit steuern. Das Zustandsregister innerhalb der Folgezustandcloqik 192
809829/0928
;8QJ543
speichert einen Teil der Adressenbits, welche der PLA 190 von einem Teil der Ausgangsbits zugeführt werden, welche zuvor von der PLA erhalten worden sind; dieser Teil wird als "nächster" Zustand bezeichnet.
Jede einzelne Kombination dem Eingang der PLA zugeführter Adressenbits mit dem Ausgang der Folgezustandslogik 192 (FQ bis F-.) bewirkt, daß von der PLA 190 eine bestimmte Kombination von Ausgangssignalen erhalten wird, welche an den Eingängen der tnikroprogrammierbaren Logikanordnung 190 zur Verfügung stehen. Die Ausgangssignale, welche an den Ausgängen f. bis f3 zur Verfugung stehen, modifizieren das Zustandsregister innerhalb der Folgezustandslogikschaltung 192, so daß der nächste Zustand der Folgesteuerschaltung wiedergegeben wird. Bei einem gegebenen Eingangssignal auf Sammelleitung 110' aus dem Befehlsregister 106 ändern sich daher die Ausgangssignale auf den Leitungen FQ bis F_ abhängig von dem nächsten Zustand, welcher von dem Zustandsregister innerhalb der Folgezustandsloqikschaltung 192 angegeben wird. Dementsprechend reagiert die aus der Folgezustandslogik 192 und der mikroprogrammierbaren Logikanordnung 190 gebildete Folgesteuerschal tunq auf Eingänge in einer W^ise, welche durch den vorangegangenen Zustand der Ausgänge aus der Folgesteuerschaltung entsprechend dem jeweiligen Zustand in dem Zustandsregister innerhalb der Zustandslogik 192 bestimmt ist. Der Entwurf und die Ausbildung von Folgesteuerschaltungen (Sequential Control Circuits) ist in technischen Veröffentlichungen, die dem Fachmann zur Verfügung stehen, hinreichend beschrieben. Als Beispiel wird genannt "Logic Design of Digital Computers" von Montgomery Phister, erschienen bei John Wiley, 1958.
Die Ausbildung und Anordnung der mikroprogrammierbaren Logikschaltung 190, welche qcmäß der Erfindung eine bevorzugte Ausführunqsform einer Mikroprogrammanordnung umfaßt, ist in den Figuren 29A bis 29D darqestellt, wobei deren gegenseitige Verbindung und Anordnung in Fig. 29 erkennbar ist. Die Signale sind durch Namen identifiziert, und sie sind verbunden durch UND (X) und ODER (O)-Funktionen.
80982Ώ/0928
Die Logik 194 bewirkt bei Eingang von Eingangssignal4n aus der Folgezustandslogik 192, der PLA 190 und dem Befehlsregister 106 die Abgabe von Steuersignalen DMS„ bis DMSp sowie von Steuersignalen Acc/Wq bis Acc/W_. Diese Signale steuern die Arbeit der Multiplexschaltung 116 bzw. der Sammler 130 bis 133 (Fig. 4A)
Die Ausqangssignale aus der Steuerlogik 150, welche auf der Sammelleitung 154 (Fig. 4B) zur Verfüjung stehen, sind Ausgänge aus der mikroprogrammierbaren Logikanordnung 190. Insbesondere handelt es sich um folgende Signale:
BRO (Bus Register Output),
BRS (Bus Register Serial)
BRP (Bus Register Parallel),
IRS (Instruction Register Serial),
IRP (Instruction Register Parallel).
Außerdem stellt ein als C bezeichnetes Signal das PLA-Trägersignal dar. Weiterhin wird das BMS-Signal auf eine Leitung 148 gegeben, und dieses Signal ist das Wahlsignal, welches der Sammellei tungsregistermul tiplexschaltung 122 (Fig. 4A) zugeführt wird. Das Programmzählerinkrementsteuersiynal und das Programmzählermultiplexsignal (PC MUX) stehen auf den Leitungen 147 und 140 zur Verfugung. Diese Signale werden weitergeleitet zu der Inkrementschaltung 144 bzw. der Programmzähler-Multiplexschaltung 120, wie in Fig. 4A dargestellt ist. Die Ausgangssteuersignale 0. und Op, welche auf den Leitungen 58 auftreten, sind Ausgänge der PLA 190, und außerdem werden die Speichersteuersignale MQ bis M_ erzeugt, welche auf Leitungen 60 zur Steuerung des Speichers 54 gegeben werden.
Weiterhin v/erden Ausgangssignale von der programmierbaren Logikanordnung 190 zur Verfugung gestellt, welche als ACW und AQ bis Ag bezeichnet sind und Eingänge der Steuerprogrammlogikanordnung 194 darstellen.
Weitere Eingänge zu der programmierbaren Logikanordnung 190 sird das Signal L77, welches ein Eingabe/Ausgabe-Befehl ist, das
809829/0928
-25- 28U1543
Signal L/INT, welches anzeigt, daß eine Unterbrechung gewünscht wird, und das Signal L/DCH, welches angibt, daß ein Datenkanal oder ein Speicherzugriff von einer Eingabe/Ausgabe Einrichtung gewünscht wird.
Vier Signale LCQ bis LC3 stellen weitere Eingänge der programmierbaren Logik 190 dar. Diese Signale umfassen den verriegelten Zustand der Bedienungspult-Steuersignale. Die Signale LCn und LC. stellen außerdem Eingänqe zu der Steuerproqrammlogikanordnung 194 dar.
Die Steuersignale CQ uis C3 von dem Bedienungspult 62 sind Eingänge der Folgezustandslogik. Außerdem sind die Signale IB,, und IBc der Informationssammelleitung 56 Eingänqe der Folgezustandslogikschaltung 192. Ein als "Skip" bezeichnetes Signal stellt einen weiteren Eingang zu der Folgesustandslogikschaltung 192 dar. Wenn die Zentraleinheit sich in dem Zustand "Skip" befindet, springt das Programmregister zur nächstfolgenden Speicheradresse. Die Folgezustandslogikschaltung 192 hat schließlich noch drei weitere dekodierte Ausgänge, nämlich die Zustandssignale S32> XECL und DEFER. Diese Signale repräsentieren verschiedene Zustände der Arbeitsweise der Zentraleinheit.
Fig. 7 zeigt Einzelheiten der Folgezustandslogik 192. Flipflops 201 bis 204 bilden das bereits erwähnte Folgezustandsregister. Das vom Ausgang der programmierbaren Logikanordnung 190 (Fig. 6) gelieferte Signal fQ ist mit dem Eingang eines Inverters 205 und dem Eingang eines UND-Gatters 206 gekoppelt. Das Eingangssignal f. ist mit einem von.fünf Eingängen eines MAND-Gatters 208, mit einem von zwei Eingängen eines UND-Gatters 210 und dem Eingang eines Inverters 212 gekoppelt. Das Signal f0 aus der programmierbaren Loqikanordnung 190 ist mit dem Einqanq eines Inverters 214, dem Dateneinganq (D) des Flipflop 203 des Folgezustandsregisters und mit einem von drei Eingängen eines NAND-Gatters 216 gekoppelt. Das Eingangssignal f7 ist mit einem zweiten*Eingang des NAND-Gatters 208, dem Dateneingang (D) des Flipflops 204 des Folgezustandsregisters und mit einem von vier Eingängen eines NAND-Gatters 218
809829/0928
-26- Z8Ü 15 43
gekoppelt. Das Signal "Skip" ist mit dem Eingang eines Inverters 220 gekoppelt, und der Ausgang dieses Inverters ist gekoppelt mit dem Eingang eines weiteren Inverters 222 und mit einem dritten Eingang des NAND-Gatters 203. Der Ausgang des Inverters 222 ist mit einem zweiten Eingang des MAND-Gatters 218 gekoppelt. Der Ausgang des NAND-Gatters 218 ist mit dem zweiten Eingang des UND-Gatters 210, und der Ausgang dieses UND-Gatters ist mit dem Dateneingang (D) des Fiipfiops 202 des Folgesustandsregisters gekoppelt.
Der Ausgang des Inverters 212 ist mit einem zweiten Eingang des NAND-Gatters 216 gekoppelt, und der Ausgang des NAND-Gatters ist gekoppelt mit dem zweiten Eingang des UND-Gatters 206. Der Ausgang des UND-Gatters 206 ist gekoppelt mit dem Dateneingang (D) des Flipflops 201 des Folgezustandsregisters.
Der Ausgang des Inverters 214 ist gekoppelt mit einem Eingang des NAND-Gatters 218 und mit einem weiteren Eingang des NAND-Gatters 208. Der Ausgang des Inverters 205 ist gekoppelt mit noch einem weiteren Eingang des NAND-Gatters 208 und mit einem weiterer. Eingang des NAND-Gatters 218. Der Ausgang des NAND-Gatters 208 ist gekoppelt mit dem ersten von zwei Eingängen eines NAND-Gatters 224. Das Signal IRP (Instruction Register Parallel signal) ist gekoppelt mit dem Eingang eines Inverters 226, und dessen Ausgang ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 224. Der Ausgang des NAND-Gatters 224 ist gekoppelt mit dem Eingang eines Inverters 228 und mit einem von drei Eingängen eines UND-Gatters 230. Die Signalleitung des Signals LBRP (verriegelte Version des Bus Register Parallel signal) ist gekoppelt mit dem Eingang eines Inverters 232 und dem Eingang eines UMD-Gatters 234. Die Informationssammelleitung-Signalleitung IB- ist gekoppelt mit dem zweiten Einqana des UND-Gatters 234. Der Ausgang des Inverters 228 ist gekoppelt mit einem von zwei Eingängen eines UND-Gatters 236, und die Bitpositionsleitung der Informationssarnmelleitung-Signalleitung (IB5) ist gekoppelt mit dem zv/eiten Eingang des UND-Gatters 23S. Die Ausgänge der UND-Gatter 230, 234 und
80982S/09?8
-27- £801543
sind gekoppelt mit je einem von drei Eingängen eines NOR-Gatters 238. Der Ausgang des NOR-Gatters 238 ist gekoppelt mit dem Dateneingang (D) eines Flipflop 240.
Der "wahre" Ausgang (Q) des Flipflop 240 ist gekoppelt mit dem dritten Eingang des NAND-Gatters 216. Der "nicht wahre" Ausgang (Q) des Flipflop 240 ist rückgekoppelt zu dem dritten Eingang des UND-Gatters 230. Flipflop 240 und die mit ihm zusammenarbeitenden Gatter, welche mit seinem Dateneingang gekoppelt sind, wird bei der indirekten Adressierung des Speichers benutzt.
Flipflops 241 bis 244 dienen zur Verriegelung der Steuerpult-Steuersignale C0 bis C3. Das Taktsignal GTPLA wird den Takteingängen der Flipflops 201 bis 204 und der Flipflops 240 bis 244 zugeführt. Das Rückstell-Signal RESET, welches der Folgezustandslogik zugeführt wird, ist gekoppelt mit den PD (Preset Direct)-Eingängen der Flipflops 201 bis 204 und 241 bis 244. Außerdem wird das Rückstell-Eingangssignal RESET dem CD (Clear-Direct)-Eingang eines Flipflop 246 zugeführt. Der Takteingang des Flipflop 246 ist gekoppelt mit dem Taktsignal CL, welches von der Taktlogik 152 geliefert wird.
Die Steuersignale CQ bis C3 von dem Bedienungspult 62 sind gekoppelt mit den ersten Dateneingängen (DQ) der Flipflops 241 bis 244. Außerdem sind die Steuersignale Cq bis Cp gekoppelt mit drei Eingängen eines NAND-Gatters 248. Der Ausgang des NAND-Gatters 248 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 250. Der Ausgang des NAND-Gatters 250 ist gekoppelt mit dem Eingang eines Inverters 252, dessen Ausgang mit dem Wähleingang (Select-S) de- Flipflops 241 bis 244 gekoppelt ist. Die "wahren" Ausgänge (Q) der Flipflops 241 bis 244 sind jeweils rückgekoppelt zu dem zweiten Dateneingang (D-) der Flipflops 241 bis 244. Die "nicht wahren" Ausgänge (Q) der Flipflops 241 bis 244 liefern die Ausgangssignale LC,-. bis LC_ der Folgezustandslogik, welche die verriegelten (latched) Versionen der Steuerpult-Steuersignale CQ bis C3 darstellen.
809829/0979
Die "wahren" Ausgänge (Q) der Flipflops 201 bis 204 stellen die Ausgangssignale Fq bis F3 aus der Folgezustandslogik dar, und sie werden weitergegeben an die Programmlogikanordnung 190. Außerdem sind die "wahren" Ausgänge (Q) dieser Flipflops auch mit den Eingängen von Invertern 251 bis 254 gekoppelt. Die "nicht wahren" Ausgänge (Q) der Flipflops 201 bis 204 sind mit den Eingängen von Invertern 256 bis 260 gekoppelt. Auch ist der "nicht wahre" Ausgang (Q) des Flipflop 201 gekoppelt mit einem von vier Eingängen eines NAfJD-Gatters 261 und mit einem von vier Eingängen eines NAND-Gatter5 262.
Der Ausgang des Inverters 251 ist gekoppelt mit einem von vier Eingängen eines NAND-Gatters 264 und mit einem von vier Eingängen eines NAND-Gatters 266. Der Aisgang des Inverters 256 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 268 und mit einem von vier Eingängen eines NAND-Gatters 270. Der Ausgang des Inverters 252 ist gekoppelt mit dem Eingang eines Inverters 272, einem zweiten Eingang des NAND-Gatters 264, dem zweiten Eingang des NAND-Gatters 268 und mit einem zweiten Eingang des NAND-Gatters 262. Der Ausgang des Inverters 257 ist gekoppelt mit einem von drei Eingängen eines NAND-Gatters 274, einem dritten Eingang des NAND-Gatters 264, einem dritten Eingang des NAND-Gatters 261 und einem dritten Eingang des NAND-Gatters 266. Der Ausgang des Inverters 253 ist gekoppelt mit dem Eingang eines Inverters 275, dem dritten Eingang des NAND-Gatters 274 und dem dritten Eingang des NAND-Gatters 263. Der Ausgang des Inverters 275 ist gekoppelt mit einem dritten Eingang des NAND-Gatters 261. Der Ausgang des Inverters 258 ist gekoppelt mit einem dritten Eingang des NAND-Gatters 262, einem vierten Eingang des NAND-Gatters 266 und einem dritten Ei:.gang des NAND-Gatters 270. Der Ausgang des Inverters 254 ist gekoppelt mit dem vierten Eingang des NAND-Gatters 264 und dem vierten Eingang des NAND-Gatters 261. Der Ausgang des Inverters 260 ist gekoppelt mit dem vierten Eingang de3 NAND-Gatters 262, dem vierten Eingang des NAND-Gatters 266 und dem vierten Eingang des NAND-Gatters 270.
809829/0928
Der Ausgang des NAND-Gatters 274 ist gekoppelt mit dem Eingang eines Inverters 276, und der Ausgang dieses Inverters stellt das S__-Signal dar. Das NAND-Gatter 274 dekodiert daher den Zustand Spp des Arbeitsablaufs. Der Ausgang des NAND-Gatters 264 ist gekoppelt mit einem von drei Eingängen eines NAND-Gatters 278. Der Ausgang des NAND-Gatters 261 stellt das INT. FETCH-Signal (Interrupt Fetch signal) dar, welches als Eingang der noch zu beschreibenden Unterbrecher- und Datenkanal logik zugeführt wird. Der Ausgang des NAND-Gatters 268 ist das Signal DEFER. Das Signal DEFER wird bei der indirekten Adressierung des Speichers verwendet, um die Ausführung eines Befehls in dem Befehlsregister zurückzustellen, so daß die Zentraleinheit einen weiteren Zyklus zurücklegt, um den gewünschten Operanden heranzuholen. Der Ausgang des NAND-Gatters 262 ist gekoppelt mit dem Eingang eines Inverters 280, und der Ausgang dieses Inverters stellt das XEQ-1 Signal dar. Das NAND-Gatter 262 dekodiert daher den Operationszustand XEQ.. Der Ausgang des NAND-Gatters 266 ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 278 und mit dem vierten Eingang des NAND-Gatters 248. Der Ausgang des NAND-Gatters 272 ist gekoppelt mit dem dritten Eingang des NAND-Gatters 278, mit dem Dateneingang (D) des Flipflop 246 Und dem zweiten Eingang des NAND-Gatters 250. Der Ausgang des NAND-Gatters 278 stellt ein Ausgangssignal dar, welches eine Operation des Bedienungspults anzeigt; dieses Signal wird bezeichnet als CON. OP.
Der "wahre" Ausgang (Q) des Flipflop 246 liefert das Signal RUN, welches als Zustandssginal der Zentraleinheit zum Bedienungspult 62 geliefert wird.
Fig. 8 ist ein Schaltbild mit Einzelheiten der logischen Schaltung 194, welche die Bestimmungsmultiplexschaltung, die Sammleradressenlogik und die Steuerprogrammlogikanordnung enthält. Die Steuerprogrammlogikanordnung 300 wird auch als "Mini-PLA" bezeichnet. Die Steuer-PLA 300 hat die Aufgabe, zahlreiche Ausgangssignale bei Eingang von Adresseneingangssignalen zu liefern. Eine PLA-Regulatorschaltung bzw. Klemmschaltung (clamp) 302 liefert eine Vorspannung, welche Leitungen 1 bis 18 der Steuer-PLA 300
809829/0928
abtastet. Die Signale LCQ und LC1 sind gekoppelt mit Eingängen der Steuer-PLA 300, und Bit-Positionen 3, 4, 6 und 7 des Befehlsregisters, (also IR3, IR4> IRg und IR7) werden auch als Eingangssignale der Steuer-PLA zugeführt.
Zur Interpretation des in Fig. 8 dargestellten Schaltbildes sei angenommen, daß ein an einem Eingang, beispielweise bei dem Eingang LCq, zugeführtes Signal eine horizontale Leitung aktiviert und auch diejenige sie schneidende vertikale Leitung aktiviert, bei der ein kleiner Kreis den Schnittpunkt zwischen der horizontalen und der vertikalen Leitung umgibt. Beispielsweise schneidet die dem Eingangssignal LCQ zugeordnete horizontale Leitung die vertikalen Leitungen 10 und 18. Wenn bei dem vorliegenden Ausführungsbeispiel das Eingangssignal LC„ dieser horizontalen Leitung zugeführt wird und auch wenn Signale auf den anderen horizontalen Leitungen zugeführt werden, v/eiche Schnittpunkte mit einem Kreis aufweisen, wird die entsprechende vertikale Leitung im Potential herabgesetzt, beispielsweise auf Erdpotential.
Die Ausgänge aus der Steuerprogrammlogikanordnung 300 erscheinen auf horizontalen Leitern, welche Kreuz*aufweisen. Insbesondere werden Ausgänge aus der PLA 300 zu Eingängen von Invertern 304 und 305 geliefert. Der Ausgang des Inverters 304 ist gekoppelt mit dem Eingang eines Inverters 306, und der Ausgang des Inverters 305 ist gekoppelt mit dem Dateneingang (D) eines Flipflop 308.
Die Steuersignale AQ bis A- aus der Mikroprogramm-Logikanordnung 190 (Fig. 6) liegen über Treiber 310 bis 312 als Eingänge an der Steuer-PLA 300. Die Ausgänge der Treiber 310 bis 312 sind gekoppelt mit Eingängen von Invertern 314 bis 316. Die Steuersiqnale An bis Ap und ihre logischen Umkehrungen warden als Eingänge zu der Steuer-FLA 300 geliefert. Irr. Anschluß an den Ausgang des Inverters 315 und den Ausgang des Treibers 312 zu dem ersten Schnittpunkt mit der vertikalen Linie 1 wird ein Signal an den Eingang eines Inverters 318 gelegt. Die Vertikallinie 4, welche die Ausgänge der Inverter 314 und 315 schneidet, führt zu dem Eingang
809829/0928
r*2 η**'·· τ ri ■* r λ» »^-ϊ-r^ *"·^· *^ ^ O · ^'^·' ^ο^λ Schnitte dor Hor ison t*ti 1 ^! C1I ί"ν*η^ΌΠ bei den Ausgängen des Treibers 310 und des Inverters 315 mit der vertikalen Lei tune; 12 führen zu dem Eingang eines Inverters 322.
Die Ausgänge des Treibers 31C und des Inverters 315 bilden Schnitte mit der vertikalen Linie 13, und diese führt au dem Eingang eines Inverters 324.
Der Ausgang des Inverters 320 wird als ,Eingang an einen Inverter 326 gelegt, und der Ausgang dieses Inverters bildet das Signal
DMS 1 (Destination Multiplexer Select 1). Der Ausgang des Inverters 318 M: gekoppelt mit dem Eingang eines Inverters 328,
und der Ausgang dieses Inverters bildet das Signal DHS 2 (Destination Multiplexer Select 2). Der Ausgang des Inverters 322 ist gekoppelt mit dem Dateneingang (D) eines Flipflop 330. Der Ausgang
des Inverters 324 wird auf eine Leitung 332 gegeben, welche das zur Verschiebungslogik 124 gelieferte Signal A246 weiterleitet.
Befehlsregister-Bit 12 (also IR12) ist gekoppelt mit dem ersten von zwei Eingängen eines NAND-Gatters 334. Ein Steuersignal A/L ist mit dem zweiten Eingang des NAND-Gatters 334 gekoppelt; dieses Signal wird nachfolgend noch näher beschrieben werden. Der Ausgang des NAND-Gstters 334 ist mit dem ersten von zwei Eingängen eines NAND-Gatters 336 gekoppelt. Das Signal ACCVJ (Accumulator
Write) aus der PLA 190 ist mit dem Eingang eines Inverters 338 gekoppelt, und der Ausgang dieses Inverters ist mit dem zweiten Eingang des NAND-Gatters 336 gekoppelt. Der Ausgang des NAND-Gatters 336 ist gekoppelt mit dsm Dateneingang (D) eines Plipflop 340. Die Takteingänge (CP) der Flipflops 330, '308 und 340 sind in der bereits beschriebenen Weise mit den Taktsignalen GTPLA gekoppelt.
Der "wahre" Ausgang (Q) des Flipflop 330 ist gekoppelt mit dem
ersten von drei Eingängen von NAND-Gattern 342 und 344. Der "nicht wahre" Ausgang (Q) des Flipflop 330 ist mit einem von drei EingHη:-{■::π von NAND-Gattern 346 und 348 gekoppelt. Der "wahre" Ausgang (Q) des Flipflop 308 ist mit dem zweiten Eingang der NAND-Gatter 348 und 34'] gekoppelt. Der "nicht wahre" Ausgang (Q) des
80 9 829/0978
FJ51'/ ] c" 20;^ " ;7 {" '.' C'lcc^1"-"^ ü riit eic!) zveitsr· Einzelne dsr N^iI!"? -C-^t*- ter 342 und 34S. Der "v.ariro" Ausgang (Q) des Flipflop 340 ist gekoppelt mit dem eingang eines inverters 350, und der Ausgang diese.'' Inverters ist jeweils gekoppelt rait dem dritten Eingang dor NAND-Gatter 342, 344, 346 und 348.
Die Funktion des Torsteuerungs-Netzwerks mit den NAND-Gattern und 336 und dom Inverter 338 ist, das Einschreiben in die Sammler zu ermöglichen. Die Einstellung des Flipflop 340 von dem Ausgang des NAND-Gatters 336 führt zur Erzeugung eines Ausgangssignals, welches die »".'AND-Gatter 342, 344, 346 und 348 in den Betriebszustand versetzt. Die Ausgänge dieser NAND-Gatter bilden die Signale Acc/W» - W- (Accumulator Write signals), welche auf Leitungen 138 geliefert werden. Die Ausgänge der Inverter 306, 326 und 328 liefern die Signale DHSQ, DMS. und DMSp (Destination Multiplexer Select signals).
Fig. 9 zeigt Blockschaltbilder der Skiplogik 352, der Unterbrechungs- und Datenkanallogik 354 und der Quellenmultiplexwahl- und ALU-Funktionslogik 356. Bitpositionen 0, 1, 2, 8, 9 und 13 bis 15 des Befehlsregisters v/erden als Eingänge der Skiplogik 352 zugeführt. Bitpositionen 0-9 des Befehlsregisters werden als Eingänge der Unterbrechungs- und Datenkanallogik 354 zugeführt. Bitpositionen 0-7 des Befehlsregisters v/erden als Eingänge der logischen Schaltung 356 zugeführt. Bitpositionen 0 und 1 der Informationssammel leitung werden als Eingänge der Skiplogik 352 und Bitpositionen 10-15 dergleichen Informationssammelleitung werden als Eingänge der Logik 354 zugeführt. Das Signal ZR (Zero Result signal) und das Signal TCRY (Tentative Carry signal) v/erden als Eingänge der Skiplogik 352 zugeführt. Der Ausgang der Skiplogik 352 wird auf eine Leitung 358 gegeben, und diese ist als SKIP bezeichnet. Die Funktion des Signals SKIP ist, den Programmzähler 141 (Fig. 4A) zu veranlassen, eine Inkrementierung um eins vorzunehmen, und dieser Vorgang wird auch als "skipping" einer Adresse im Speicher bezeichnet.
809829/092$
33 280I543
Dar; Signal L RESET (verrxeoelte Version des Sionnls RESET)- ήππ .Signal INT KFJQ (Interrupt Request) und das Signal D CH REQ (Data Channel Reou-"ct) werden als Eincu'nqe der logischen Schaltuno zugeführt. Aus der Icqischen Schaltung 354 sind zwei Ausgange herausqeführi;. Das erste dieser Auscianqssicjnale ist als ICI' bezeichnet, und e,?> erscheint auf einer Leitung 360 als ein Zustand s-signal der Zentraleinheit zum Bedienungspult 62. Das zweite Signal ist als L77 bezeichnet, und es zeigt eine Eingabe/Ausgabe-Funktion an, vjalche die Zentraleinheit und das Bedienungspult als Eingabe/Ausgabe-Einrichtungen betrifft; dieses Signal erscheint auf einer Leitung 362. Außerdem sind zwei weitere Ausgangssiqnale aus der Logik 354 zu Eingängen der Logik 356 geführt, und diese Signale sind bezeichnet als L.INT. und L.D.CH.
Die Ausgangssignale aus der Folgesustandslogik 192 (Fig. 6), welche als Zustandssiqnale S„2> XEQ1 und DEFER bezeichnet sind, werden als Eingänge in die Logik 356 eingeführt. Das Ausgangssignal A- aus der Programmlogikanordnung 190 wird ebenfalls als Eingang in die Logik 356 eingeführt. Schließlich wird auch das PLA-Trägarsignal C aus der Programmlogikanordnung 190 als Eingang in die Logik 356 eingeführt. Die Ausgangssignale aus der Logik 356 steuern die Arbeitsweise der Quellenmultiplexschaltung 114 (Fig. 4A) dadurch, daß die Wahleignale SMSO, SMSl und SF1S2 auf die Leitungen 115 gegeben werden. Außerdem steuern die Ausgangssignale aus der Logik 356 die Arbeitsweise der arithmetischen Logikeinheit 118 dadurch, daß das Signal C/ALU auf die Leitung 117 und die Signale ALU/SO und Sl auf die Leitungen 121 gegben werden. Auch das Steuersignal A/L wird als Ausgang aus der Logik 356 erzeugt.
Fig. 10 zeigt ein Schaltbild mit Einzelheiten der Skiplogik 352. Das Signal BRP (Bus Register Parallel Control signal) liegt an dem Eingang eines Inverters 370, und der Ausgang dieses Inverters int mit einem von vier Eingängen von UND-Gattern 371 und gekoppelt. Die Null-Bitposition der Informationssammelleitung (IBn) liegt als einer von zwei Eingängen an einem UND-Gatter
809829/0928
an. Die nchi c Disposition de? Hofehl !".registers (IR..) liegt als zweiter Kiii-i.'ng <.;n dera UiJD-Ga Lter 374, als einer von zwei Eingängen in U..'D-CD.tf:or 375 und als ein Eingang an Inverter 378. Der AiJ3-;v'-v. dos i'nv'.--fcc?rs 3?^ ist mit einem von ;:-vei Ei ■■·<■■; an gen eines liFJF?--G-:;ttcrr: 380 und mit einem von zwei Eingäncon eines weiteren i'. :i;--Cat U.::;r; 332 verbunden- Die erste L'itp-jy.ition der l'nfor.riotiorir.sarnrnel leitung (IiJ1) licqt als zweiter Eingang an dem UND-Gatter 230 und als zweiter Eingang an dom UND-Gatter 382. Die AuiHv>;~e der UüD-Gattor 374 und 3l'O sind mit den beiden Eingängen eines IIOR-Gatters 334 gehoppelt. Das Signal ION (Interrupt ON signal) v/ird als zweiter Eingang dem UND-Gatter 376 zugeführt. Die·Ausgänge aus den UND-Gattern 376 und 382 liegen als die beiden Eingänge an einc-rn NOR-Gatter 38G. Die Ausgänge der NOR-Gatter 384 und 386 liegen als VJahleingänqe an Vervielfachern 388 und 390, velche sich innerhalb gestrichelter Linien 388' bzw. 390' befinden.
Die erste Eitposition des Befehlsregisters (IR1) liegt als Eingang an einem Inverter 392. Die sv/eite Eitposition des Befehlsregisters (IRp) liegt als Eingang an einem Inverter 394. Der Ausgang de? Inverters 392 liegt als einer von drei Eingängen an einem NAND-Gatter 396 und am Eingang eines Inverters 398. Der Ausgang des Inverti'.-rs 394 ist mit aera zweiten Eingang des NAND-Gatters 396 und mit dem Eingang eines Inverters 399 gekoppelt. Die Ausgänge der Inverter 383 und 399 sind cjekoppelt mit zwei von vier Eingänqen eines UND-Gatters 400. Der Ausgang aus dem NAND-Gatter 396 ist gekoppelt mit dem Eingang eines Inverters 401, und der Ausgang dieses Inverters ist gekoppelt mit Eingängen der NAND-Gatter 371 und 372. Außerdem wird das Signal am Ausgang des Inverters einer Leitung 403 zugeführt, und dieses Signal stellt einen Eingabe/Ausgabe-Befehl dar.
Die Ausgänge der UN'D-Gatter 371, 372 und 400 sind mit je einem von drei Eingängen eines NOR-Gatters 402 gekoppelt. Der Ausgang des MOR-Gatt^rs 402 iyt gekoppelt nut dem ersten nnteneingang (D_) eines FIi;-ClOjT 40-4,Cor "wahre" Ausgang (Q) des Flipflop 404 ist gekoppelt hiit einem von ::-v;e:I Eingäncjcn eines NAND—Gatters 406 und
809829/0928
einem zweiten Dateneingang (D11) des Flipflop 404. Der Wahleingang (S) der.; Flipflop 404 ist mit dem Signal "PLÄ" gekoppelt, welches von der Taktloqik 152 geliefert wird, und dieses Sinnal ist die logische Umkehrung des durch die Schwingunqsform 162 in Fig. 5 wiederqegcbenen kleinen ",eitintervalls der Programmlogikanordnung. Der Takteinganc; CP zum Flipflop 404 ist mit dem Taktsignal der Zentraleinheit gekoppelt.
Das Signal L77- ist gekoppelt mit dem Eingang eines Inverters und mit dem Eingang des UND-Gatters 372. Der Ausgang des Inverters 408 ist gekoppelt mit einem anderen Eingang des UND-Gatters 371. Die Ausgänge der Multiplexschaltungen 388 und 390 sind gekoppelt mit den dritten Eingängen von UND-Gattern 371 bzw. 372..
Die 14. Bitposition des Befehlsregsiters (IR..) ist als ein Eingang an ein UND-Gatter 410 angelegt. Das Signal TCRY (Tentative Carry signal) stellt den zweiten Eingang zum UND-Gatter 410 dar. Die 13. Bitposition des Befehlsregisters (IR.O ist als einer von zwei Eingängen an ein UND-Gatter 412 angelegt. Das Signal ZR (Zero Result signal) liegt als ein Eingang an einem Inverter 414, und der Ausgang dieses Inverters ist gekoppelt mit dem zweiten Eingang des UND-Gatters 412 und einem dritten Eingang des UND-Gatters 400. Die Ausgänge der UND-Gatter 410 und 412 sind jeweils mit einem von zwei Eingängen eines NOR-Gatters 416 verbunden. Der Ausgang des NOR-Gatters 416 ist gekoppelt mit einem von zwei Eingängen eines AUSGESCHLOSSEN ODER-Gatternetsv/erks 418 innerhalb einer gestrichelten Linie 418'.
Die 15. Bitposition des Befehlsregisters (IR^1-) bildet den Eingang eines Inverters 420, und der Ausgang dieses Inverters ist mit dem zweiten Eingang des AUSGESCHLOSSEN ODER-Gatternetzwerks 413 gekoppelt. Die Null-Bitposition des Befehlsregisters (Irq) bildet einen Eingang eines Inverters 422, und der Ausgang dieses Inverters ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 424. Der Ausgang des AUSGESCHLOSSEN ODER-NeLswerks 418 ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 424. Der Ausgang des Inverters 422 ist auch mit dem Eingang eines Inverters
809829/0928
4?9 (if-kopooH". Dor Au^qana des Inverters 4 29 ist Gekoppelt mit dem vierten B.ingong dec UND-Gatters 400 und mit don dritten Einoa;i'! c''?::; Ui'D-rvitters 3 9 G. Der Ansnann dos NAHD-Gatters 4 24 ist gekoppelt mit dom zwell:en Eingang des UND-Gatters 406, und der Au.v'jonq dieses UiJD-Gattcrs bildet das Signal SKIP am Ausgang der Skinlogik 352.
Die neunte Bitposition des Befehlsregisters (IRg) ist als Einqanq an Inverter 4-26 gelegt, und der Ausgang dieses Inverters ist gekoppelt mit dem Eingang eines Inverters 429 und Eingängen der Multiplexücholtungen 383 und 390. Der Ausgang des Inverters 428 bildet einen dritten Eingang bei jeder der Multiplexschaltunqen 388 und 390.
Wie bereits beschrieben, ist der Zweck des Signals SKIP, den Proqrarcmzähler 141 zu veranlassen, eine Inkrementierunq um eins (1) vorzunehmen, so daß eine Adresse im Speicher übersprungen wird. Zustand 5 in der Folgezustandslogik 192 oder der Programmlogikanordnung 190 (auf uen Leitungen f„ bis f^) ist der Skip-Zustand. Wenn das Signal SKIP von der Skiplogik geliefert wird und die Zustandsleitungen f„ bis f3 sich im Zustand 5 befinden, nimmt die Folgezustandsloqik den Zustand 5 ein. Wenn andererseits das Skipsignal nicht eingeht, nimmt die Folgezustandslogik den Zustand oder Syj an.
Ein Signal SKIP tritt unter drei allgemeinen Voraussetzungen auf. Erstens kann ein Skipsignal auftreten bei einer arithmetischen Funktion, und diese Bedingung wird durch die Schaltung in Fig. 10 festgestellt,"wobei das UND-Gatter 424 zurück durch die Schaltung bis zu diesem UND-Gatter leitet.
Als nächstes kann SKIP auftreten bei einem Eingang/Ausgang-Befehl. Diese Bedingung wird von allen denjenigen Schaltungen in Fig. festgestellt, welche bis zu den UND-Gattern 371 und 372 führen. Die dritte Art des SKIP tritt entweder bei dem Befehl "incrementskip-ze.ro" oder "decrcment-skip-zero" auf. Diese Art von Skipbedingung wird festgestellt von demjenigen Teil der Schaltung in
809829/0928
Fig. 10, welche bis au dom UND-Gatter 400 führt und dieses einschließt.
Fig. 11 "eiqv ein ochrü. tbild m:i ι; Einzelheiten der Unterbrechung^— und Datonkanallcgikschultunq 354. Die neunte Bitposition des Befehlsregintero (IiU) bilde einen Eingang zu einem UND-Gatter 440 und zu dem Einqang eines Inverters 442. Die Leitung 403, welche das einen Eingabe/Ausgabo-Befehl anzeigende Signal weitergibt, ist gekoppelt mit. einem zweiten Einqanq dos UND-Gatters 440. Der Ausgang des Inverters 442 ist gekoppelt mit einem von sechs Eingängen eines NAND-Gattors 444. Die fünften, sechsten und siebenten Bitpositionen des Befehlsregisters (IRr, IRß und IR„) sind jeweils mit einem von drei Eingängen eines NAND-Gatters 446 gekoppelt. Der Ausgang des NAK1D-Gatters 446 ist gekopipelt mit je einem zweiten Eingang des UND-Gatters 440 und des NAND-Gatters 444. Die achte Bitposition des Befehlsregisters dRo) ^s^ als Eingang sowohl an UND-Gatter 440 als auch an das NAND-Gatter 444 gelegt. Das Signal COKOP (Console Operation signal) liegt als Eingang an Inverter 448, und der Ausgang dieses Inverters ist gekoppelt mit dem Eingang des UND-Gatters 440 und einem Eingang des NAND-Gatter s 444.
Die Signale Xnt FETCH (Interrupt Fetch) und RESET liegen als Eingänge an einem UND-Gatter 450. Der Ausgancj des NAND-Gatters 444 liegt auch als Eingang an dein UND-Gatter 450. Der Ausgang des UND-Gatters 45C ist gekoppelt mit einem von zwei Eingängen eines NOR-Gatters 452, und der zweite Eingang des NOR-Gatters 452 ist gekoppelt mit dem Ausqanq des UND-Gatters 440. Der Ausgang des NOR-Gatters 452 ist gekoppelt mit dem Dateneinqang (D) eines Flipflop 454. Der "wahre" Ausgang (Q) den Flipflop 454 ist gekoppelt mit dem Eingang eines Inverters 456, und der "nicht wahre" Ausgang (Q) dieses Flipflop ist gekoppelt mit einem v/eiteren Eingang des NANÜ-Gatters 450 und mit v/eiteren Eingängen des UND-Gatters 440 und des NAND-Gatters 444. Der Zustand des Flipflop zeigt an5 ob eine Unterbrechung vorgenommen werden kann (enable of an jnterxuot).
809829/0928
Der Ausqano eier. Inverters 45G stellt das lON-Siqnal (Interrupt ON
sicjnal) oar, weich;;:; auch uis c-In Eingang an ein UND-Gatter Ί58
'angelegt Jsir.. [K--s ;:-ir;iial IwT. REQ. (Interrupt Request signal) ist
air- Klngö.iij an einen ^nvi.rui: -IGO gele-; L, ur.u der /iUst-ar:;. dieses
Inverter*: golangt e'lz zweiter eingang rna dem UND-Gatter 458.
Das Taktsignal IKP liegt als Eingang &n dem UND-Gatter 440, an einem dril·. Iren Νχηα^κο dos U>;i>-Gatters '5 5S und an dem Wähleingang (S) einer; Flipflop o,". Der Au.^qang acc UND-Gatters 458 ist gekoppelt mit ckm Dateno.ir.qang (D) eines Flipflop 464. Der "wahre" Ausgang (Q) dc\s Flipflop 464 stellt das Signal LINT (verriegelte Version des Interrupt sicjnal) dar. Es ist daher die Aufgabe des Flipflop 464, das Unterbrechur:gssignal (Interrupt signal) zu speichern. Das Signal ΤΓ-ΪΪ. IiEQ. gelangt durch Inverter 460 und UND-Gatter 458 zu dem Datcneinqanq (D) des Flipflop 464. Wenn der Flipflop 454 sich im "EIN"-Zustand befindet (lON-Redingung), so wird das Signal INT. REQ. den Flipflop 464 im Zusammenwirken mit einem Taktsignal IFiP in den "CIN"-Zustand versetzen. Dementsprechend wird ein Untc-rbrcchvnr.rr.r.-.ignal (Interrupt Request) zu der Zentraleinheit (CPU) nicht beachtet v/orden, bis die entsprechenden Bedingungen gegeben sind. Das Signal D.CH.REQ. (Data Channel Request signal) wird als eingang an den Dateneincjang (D) eines Flipflop 466 gelegt, Und der "wahre" Ausgang (Q) dieses Flipflop bildet das Signal LDCH (verriegelte Version des Data Channel Request sigmil). Der Flipflop 466 hat daher die Funktion, das Signal D.CM.REQ. -J.u speichern. Der Takteingang (CP) der Flipflops 454, 462, 464 und 466 sind mit den Taktsignal GTPLA gekoppelt.
Die zehnten bis 15. Bits der Informationssammelleitung (IP^q IP15) sind mit sechs Eingängen eines UND-Gatters 468 gekoppelt. Der Ausgang des UND-Gatters 468 ist gekoppelt mit dem zweiten Dateneinqanq (D.) des Flipflop 462. Der "wahre" Ausgang (Q) des Flipflop 462 bildet das Ausqangssiqnal L77 aus der Logik 354, und es zeigt an, daß die Zentraleinheit (CPU) auf einen Eingang/AusgangiJefehl anzusprechen hat. Dieser "wahre" Ausgang (Q) des Flipflop 462 .Ist rüc-.k.v^kopp.clt r.u dem ernten Dateneingang (D_) des Flipflon 4G?, und er liegt jeweils auch als Eingang an dem UND-Catter 440 und de::: NAND-Gotter 444.
809829/0928
Fic1^ "32 r:eiat ein Schnltbild mit Einzelheiten der Quellenmulti— plexw&hl- und ALU-runktionslogik 356. Die zweite Bitposition des "ofclilnroqi.strrr. (IR^) liegt als einer von drei Einqüngen an einem NAND-Gatter 470. Das Steuersignal A„ ist an einen Eingang eines Inverters 472 cjeleqt, und der Aunqang dieses Inverters ist gekoppelt mit einem zweiten Eingang des NAND-Gatters 470, einem von zwei Eingängen eines NAND-Gatters 474, einem von drei Eingängen eines NAND-Gatters 476 und einem von zwei Eingängen eines NAND-Gatters 478. Der Ausgang des NAND-Gatters 470 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 480. Der Ausgang des NAND-Gatters 474 ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 480 und mit einem von zwei Eingängen eines NAND-Gatters 482. Der Ausgang des NAND-Gatters 476 ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 482. Die Ausgänge der NAND-Gatter 480, 482 und 478 bilden die Quellenmultiplexwahlsignale SMSO, 1 und 2 (Source Multiplexer Select signals).
Das Signal LINT (verriegelte Version des Interrupt signal) liegt als einer von vier Eingängen an einem NAND-Gatter 484. Das Signal L.D.CH. (verriegelte Version des Data Channel Request signal) wird als zweiter Eingang in das NAND-Gatter 484 eingeführt. Das Folgezustandssignal S „ liegt als dritter Eingang am NAND-Gatter 484. Der Ausgang des NAND-Gatters 484 liegt als Eingang an Invertern 486 und 488. Außerdem bildet der Ausgang des NAND-Gatters 484 das von der Logik 356 gelieferte Steuersignal A/L. Der Ausgang des Inverters 486 ist gekoppelt mit dem dritten Eingang des NAND-Gatters 470 und des NAND-Gatters 476, und er liegt auch als zweiter Eingang an dem NAND-Gatter 478.
Der Ausgang des Inverters 488 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 492, einem von drei Eingängen eines NAND-Gatters 494 und einem von zwei Eingängen eines NAND-Gatters 496. Das Folgezustandssignal XECK liegt an einem von sechs Eingängen eines NAND-Gatters 498. Die Nullposition des Befehlsregisters
(IRq) bildet den zweiten Eingang des NAND-Gatters 498, den vierten Einqanq des NAND-Gatters 484 und den zweiten Eingang des
MAND-Gattors 474. Die erste Bitposition des Befehlsregisters
809829/0923
(ΙΠ..) ist gekoppelt miL einem dritten Eingang des ΝΛΝϋ-Gattors 498 und mit dem dritten Eingang des NAND-Gatters 476. Die zweite, dritte und vierte Disposition des Befehlsregisters (IR,,, TtI0 und IR^) stellen die vierten, fünften und sechsten Eingänge des NAND-Gatters 498 dar.
Das Signal DEFER ist gekoppelt mit dem Eingang eines Inverters 500, und der Ausgang dieses Inverters ist gekoppelt mit dem Eingang eines NAND-Gatters 502 und einem von zwei Eingängen eines NAND-Gatters 504. Die Ausgänge der NAND-Gatter 498, 502 und 492 sind zusammengekoppelt, und ihre Verbindung liegt als einer von zwei Eingängen an einem NAND-Gatter 506. Der Ausgang des NAND-Gatters 494 ist mit dem zweiten Eingang des NAND-Gatters 506 gekoppelt. Die gemeinsame Verbindung der NAND-Gatter 498, 502 und 492 ist auch mit dem Eingang eines Inverters 508 gekoppelt, und der Ausgang dieses Inverters stellt das Ausgangssignal ALU/S_ (ALU Select 0) aus der Logik 356 dar. Der Ausgang des NAND-Gatters 506 ist gekoppelt mit dem Eingang eines Inverters 510, und der Ausganq dieses Inverters stellt das Ausgangssignal ALU/Sl (ALU Select 1) aus der Logik 356 dar.
Die sechste Bitposition des Befehlsregisters (IRg) ist gekoppelt mit dem zweiten Eingang eines NAND-Gatters 492. Die fünfte Bitposition des Befehlsregisters (IR1-) ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 494. Die siebente Bitposition des Befehlsregisters (IR7) ist gekoppelt mit dem Eingang eines Inverters 512, und der Ausgang dieses Inverters ist gekoppelt mit dem dritten Eingang des NAND-Gatters 494 und dem zweiten Eingang des NAND-Gatters 496. Das in der Programmlogikanordnung 190 erzeugte Trägersignal (C) ist mit einem von drei Eingängen eines NAND-Gatters 514 gekoppelt. Die Ausgänge der NAND-Gatter 496 und 504 sind gekoppelt mit dem zweiten und dem dritten Eingang des NAND-Gatters 514. Der Ausgang des NAND-Gatters 514 stellt das Signal C/ALU (Arithmetic Logic Unit Carry Input signal) dar.
809829/0928
-41- 2501543
Die ersten bis eilten Bitpositionen des Sammeileitungsregisters (BR-1 bis ER-11) liegen als Eingänge an einem NAND-Gatter 516. Der Ausgang des i-IAro~Gc.ittors 51G ist gekoppelt mit dem Eingang eines Iivertors 51B5 und der Ausgang dieses Inverters ist gekoppelt mit einem vor: :;wei eingängen von NAND-Gattern 520 und 522. Die zwölfte Bitposition des Sammelleitungsregisters (BR.„) ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 522 und mit dem Eingang eines Inverters 524'. Der Ausgang des Inverters 524' ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 520. Der Ausgang des NAND-Gatters 520 ist-gekoppelt mit dem ersten Dateneingang (D„) eines Flipflop 524. Der Ausgang des NAND-Gatters 522 ist in entsprechender Weise gekoppelt mit dem ersten Dateneingang (DA) eines Flipflop 526.
Die Takteingangsklernmen (CP) der Flipflops 524 und 526 sind gekoppelt mit dem Taktsignal GTPLA (Go To PLA). Die Wahleinginge (S) der Flipflops 524 und 526 sind gekoppelt mit dem Speichersteuers iqna 1 An. Der "wahre" Ausgang (Q) des Flipflop 524 ist gekoppelt mit dem zweiten Dateneingang (D.) des Flipflop 524, und der "nicht wahre" Ausgang (Q) dieses Flipflop ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 504. Der "wahre" Ausgang (Q) des Flipflop 526 ist gekoppelt mit dem zweiten Dateneingang (D.) des gleichen Flipflop. Der "nicht wahre" Ausgang (Q) des Flipflop 526 ist gekoppelt mit dem zweiten Eingang des NAND-Ga 11ers 502.
Die Funktion der Flipflops 524 und 526 ist die Ausführung einer selbsttätigen Inkrementierung oder Dekrernentierung der Speicheradresse. Insbesondere wenn die Zentraleinheit (CPU) den Speicher indirekt adressiert und die Speicheradresse innerhalb eines vorgegebenen Bereichs von Adressen liegt, wird eine selbsttätige Inkrementierung vorgenommen. In entsprechender Weise erfolgt eine selbsttätige Dekrernentierung, wenn sich die Speicheradresse innerhalb eines anderen Adrossenbereichs befindet.
809829/0928
- ,2 _ 28Ü1543
Fig« 13 xci'b ein Blockschaltbild einer Trägerlonik 530 und der Vor^chif.bun-'? I.o;.ik 124 der Zentraleinheit (CPU) 52. Die zehnten,
eJrti?r» ijfid ;'."lf..:eri I- itp
IR,. ^ und i:;,..-,) ]. ::.f?c".:n ?.ls PJi rr:;"r:^ci an c ■-';]." Lo^ik Ji30. Außerdorn liegt dar-; ll'.qnal CO (C-.rry OUT signal) εα-s der arithmetischen Logikeinheit 118 als Eingang an der Trägerlogik 530 auf Leitung 119. Die Signale Carry und TCY (Tentative Carry signal) .sind AuscjancjKsiqriale dor Trügerlogik 530. Außerdem wird ein Signal SCRY (Stored Carry signal) als Ausgang aus der Tr'igerlogik 530 auf einer Leituno 535 erhalten und air» Eingang in die Versohiebunqslogik 124 eingegeben.
Die achte und neunte Bitposition des Befehlsregisters (IRR und TRg) liegen als Eingänge an der Verschiebungslogik 124. Das Signal A/L aus der Logik 356 (Fig» 9) liegt als Eingang an der Trägerlogik 530 und c^n der Verschiebungslogik 124. Die Ausgänge aus der arithmetischen Loqikeinheit 118 (ALU-A bis ALU-D) sind Eingänge su der Verr.ch.ii.-bungslogik 124. Auch liegen die Ausgänge aer Inkrement&chaltung 114 (PCI-A bis PCI-D) als Eingänge an der Verschiebungslogik 124.
Ein Ver.schieburigsspeichersiqnal und ein Steuersignal SHL/R (Shift Left or Right signal) aus der Logik 124 liegen als Eingänge über Leitungen 534 bzw. 53G an der Trägerlogik 530. Das Signal ZR (Zero result) wird auch als Ausgang aus der Verschiebungslogik 124 erhalten. Der Datenausgang aus der Verschiebungslogik 124 v/ird zu dem Register 128 (Fig. 4A) auf vier Ausgangsleitungen SIIM-A bis SHH-D v/eitergegeben. Außerdem wird ein Signal SHSVJP (Shift or Swap) von der Logik 124 geliefert, um anzuzeigen, ob eine Verschiebung oder ein Austausch von Daten aus der arithmetischer. Locjikc-inheit 118 vorzunehmen ist. Schließlich wird ein Signal MA air, Eingang in die Logik 124 eingegeben; es zeigt den Zustand dos Nibble, welches von der in Fig. 4A dargestellten Datcnpfadlogik vorarbeitet wird.
809829/0928
Fig. 14 zeigt ein Schaltbild mit Einzelheiten der Trägerlogik 530. Das Verschiebungssiqnal STORE], -welches auf Leitung 534 von flor Verschiebungyloqik 12<i geliefert v.'ird, ist einer von zwei Eingängen eines NAND-Gatters 540. Das Signal SHL/R (Shift Left or Right signal), welches auf Leitung 536 von der Logik 124 geliefert wird, ist mit dem zweiten Eingang des NAND-Gatters 540 und mit dem Eingang eines Inverters 542 gekoppelt. Der Ausgang des Inverters 542 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 544. Die Ausgänge aus den NAND-Gattern 540 und 544 sind zusammengekoppelt, und die Verbindung liefert das Signal TCRY (Tentative Carry signal) aus der Trägerlogik 530. Außerdem ist diese Verbindung mit dem ersten Dateneingang (Dn) eines Flipflop 546 gekoppelt.
Die zwölfte Bitposition des Befehlsregisters (IR^2) ist einer von drei Eingängen eines NAND-Gatters 548. Das Steuersignal NlXl aus der Taktlogik 152 ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 548. Das Steuersignal A/L aus der Logik 356 (Fig. 9) ist gekoppelt mit dem Eingang eines Inverters 550, und der Ausgang dieses Inverters ist gekoppelt mit dem Eingang des NAND-Gatters 548. Der Ausgang des NAND-Gatters 548 ist gekoppelt mit dem Wahleingang (S) des Flipflop 546. Der Takteingang (CP) des Flipflop 546 ist gekoppelt mit dem Signal CLOCK aus der Taktlogik 152 (Fig. 4B). Der "wahre" Ausgang (Q) aus dem Flipflop 546 ist gekoppelt mit dem zv/ei ten Dateneingang (D-.) des gleichen Flipflop. Auch ist der "wahre" Ausgang (Q) des Fliflop 546 mit einem der drei Eingänge eines NAND-Gatters 552 gekoppelt der "nicht wahre" Ausgang (Q) des Flipflop 546 ist gekoppelt mit dem Eingang eines Inverters 554 und mit einem von drei Eingängen eines NAND-Gatters 556. Der Ausgang des Inverters 554 stellt das Signal CARRY aus der Trägerlogik 530 dar, und dieses Signal ist das Zentraleinheit-Zustandssignal zum Bedienungspult 62.
Die sehnte Bitposition des Befehlsregisters (IR1n) liegt als Eingang an einem Inverter 558 und als zweiter Eingang an dem NAND-Gatter 552. Der Ausgang des Inverters 558 ist gekoppelt mit
809829/0928
rl ο πι ?.\·!οί*·οη Ei nnnnn r]r;s NAiJD-Ga tters Γ>?6 und rn.it einem von zwei Eingängen eines NAIJD'-Gatters 5SO. Die elfte Eitposition des Bef '>h].ri-''-*■'■. :■·]~^>~c (IT'...^) 15c<"'t ?.ls dritter Einaan^ yn dem NAiJD-Gatter 556 und als Singeng an einem Inverter 562. Der Ausgang des Inverter:, 5G2 ist gekoppelt mit denn dritten Eingang des NAK1D-Gattors 552 und Ci'.::-. r,v;eiten Eingang des NAND-Gatters 560.
Die Ausgange der NAND-Gatter 556, 552 und 560 sind zusammengekoppelt, und die Verbindung ist mit dem Eingang eines NAND-Gatters 564 und mit einem von zwei Eingängen eines HAND-Gatters 566 gekoppelt. Der Ausgang des NAIiD-Gatters 564 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 568. Das Signal CO (Carry OUT signal) aus der arithmetischen Logikeinheit 118, welches auf der Leitung 119 zugeführt wird, liegt als zweiter Eingang am NAND-Gatter 568, als Eingang an einem Inverter 570 und als zweiter Dateneingang (D ) an einem Flipflop 572. Der Ausgang des Inverters 570 ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 566. Die Ausqänge der NAND-Gatter 566 und 568 sind zussmmengekoppelt, und ihre Verbindung ist mit dem Eingang eines Inverters 574 und mit der Leitung 535, welche das Signal SCRY (Stored Carry signal) weiterleitet, verbunden. Der Ausgang aus dem Inverter 574 ist gekoppelt mit dem ersten Dateneingang (D~) des Flipflop 572. Der Takteingang CP des Flipflop 572 ist gekoppelt mit dem Taktsiqnal (CLOCK) aus der Taktlogik. Der Einqang S (Select) des Flipflop 572 ist gekoppelt mit dem Signal NB (Nibble Status signal). Der "nicht wahre" Ausgang (Q) des Flipflop 572 stellt das Signal LSCRY (verriegelte Version des Signals SCRY) dar. Außerdem ist der "nicht wahre" Ausgang (Q) des Flipflop 572 rückgekoppelt zu dem zweiten Eingang des NAND-Gatters 544.
Fig. 15 zeigt ein Schaltbild mit Einzelheiten der Verschiebungslogik 124. Das Steuersignal A/L aus der Logik 536 (Fig. 9) und von dem Ausgang des NAND-Gatters 484 (Fig. 12) ist als Eingang an einen Inverter 580 qeleqt. Der Ausqanq aus dem Inverter 580 ist gekoppelt mit ;]e einem von drei Einqänqen von fJAND-Gattern 582, 583 und 584. Die neunte Bitposition des Befehlsregisters
809829/0928
(IFi0.) liegt·, als eingang an einem Inverter 58G und an den zweiten Eingängen der NAND-Gatter 582 und 584. Der Ausgang des Inverters 586 liegt als swoiter Eingang am NAND-Gatter 503. Das Signal A245 aus der Steucr-PLA 300 (Fig. 8) liegt als Eingang an einem Inverter 583, i'nd der Ausgang dieser. Inverters ist gekoppelt mit je ei η OiP. von zwei Eingängen von HAND—Gattern- 590 und 591. Das Nibble-Zeitsteuerungssignal IJA wird an die dritten Eingänge der NAND-Gatter 583 und 534 weitergegeben. Die achte Bitposition (IRp) des Befehlsregisters liegt als Eingang cn einem Inverter 592 und an einem vierten Eingang des NAND-Gatters 584. Der Ausgang des NAMD-Gatters 582 ist gekoppelt mit einem von zwei Eingängen der. NAND-Gatters 590, mit einem Eingang eines Inverters 594 und mit einem von zwei Eingängen eines NAND-Gatters 596. Der Ausgang des NAND-Gatters 583 ist gekoppelt mit dem zweiten Eingang des NAiN1D-Gatters 591, /nit einem von zwei Eingängen eines NAND-Gatters 593, mit dem εν/ei ten Eingang des NAND-Gatters 596 und mit dem Eingang eines Inverters 600. Der Ausgang des NAND-Gatters 584 stellt das Signal SH-SWP (Shift or Swap signal) aus der V'ernchiebungslogik 124 dar.
Die A-Bitposition am Ausgang der arithmetischen Logikeinheit 118 (ALU-A) liegt als Eingang an einem Inverter 602, einem NAND-Gatter 604, einem NAND-Gatter 606 und einem Eingang eines Blocks 608. Der Block 600 gibt Wiederholungen eines Teils der in Fig. 15 dargestellten Schaltung wieder; nachfolgend werden noch weitere Einzelheiten beschrieben werden.
Die A-Bitposition an dem Ausgang PCI A der Inkrementschaitung 114 liegt als einer von drei Eingängen an einem NAND-Gatter 610. Der Auscjang des NAND-Gatters 590 ist gekoppelt mit einem Eingang eines Inverters 612 und mit einem Eingang des Blocks 608. Her Ausgang des iJAriO-Gatters 591 ist gekoppelt mit dem Eingang eines Inverters 6 34 und auch mit einem v/eiteren Eingang des Blocks 608. Der Ausgang des Inverters 614 ist gekoppelt mit dem Eingang einer. Inverters 616, mit einem von drei Eingängen eines NAND-Gatter?. 618 und mit einem aweiten Eingang des NAND-Gatters 606.
809829/0928
dcv .vüoqünq ac:; .Inverters G12 ist qekonp-lt niii dem Eingang eines Inverters 620, mit einem von drei Einqilnnen eines NAND-Gattern 622 υπΰ i.iit o--.'.i urifcten cAnocinn eines ": . ;^--Gai;terr. 606. Der Ausgang des Inverters 616 ist gekoppelt mit dem dritten E.inqi;nq eines i\:A.\O-C alters 610 und n;it dem dritten Eingang den IvAKD-Gnfcters 622. Der Ausgang des Inverters 620 ist gekoppelt mit dem dritten Eingang des HAMD-Gatters 610 und mit dem dritten Einoanq der; NAND-Gattors 618. Die Ausgänge der LYu !D-Ga ti· er 606, 618, 622 und 610 sind miteinander gekoppelt, und diese Verbindung ist der A~Bitposition-Ausganq der Verschiebur.gslogik 124, v/elcher dem Register 128 (rig. 4A) zuaeführt wird; dieser Ausgang ist als SHH A bezeichnet. Der Block GOO enthält drei zusätzliche Schaltungen für die B-, C- und D-Positionen des Nibbles, welche entweder von der Prograrn/nsählerinkrernentschaltung 114 oder der arithmetischen Logikeinheit 118 geliefert v/erden. Insbesondere enthält jede der drei Duplikatschaltungen in dem Block 608 mehrere Gatter, welche in der gleichen Weise gekoppelt sind wie die NAND-Gatter 606, 613, 622 und 610 einschließlich äcii- Inverter 612, 614, 616 und 620. Die drei Ausgänge aus dem Block 608 enthalten die drei zusätzlichen Eitpositionen (B, C und D) des Nibble, welche an dem Ausgang der Verschiebungslogik 124 zu dem Eingang des Registers 128 geliefert v/erden.
Der Ausgang des Inverters 594 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 624. Der Ausgang des Inverters 600 ist gekoppelt mit einem zweiten Eingang des NAND-Gatters 604, einem von drei Eingängen eines NAL'D-Gatters 626, einem von zwei Eingängen eines NAND-Gatters 628, einem von swei Eingängen eines NAND--Gatters 630 und mit einem von zwei Eingängen eines NAND-Gatters 632. Das Nibble-Zeitsteuerungssignal NC liegt als Eingang an einem Inverter 634, an einem dritten Eingang des NAMD-Gattcrs 604 und an dem zweiten Eingang des NAND-Gatters 6?2. Der Ausgang des Inverters 634 ist gekoppelt rnit einem swe5 ten Eingang des NAND-Gatters 626. mit einem x.v^iten Eingang des·- HAND-gntters 628 und nit einem zweiten Eingang des NAND-Gatters 630. Die Aufgänge der NAND-Gatter 598, 604 und 626 nind zun?irr>enqekoppelt, und diese Verbindung ist gekoppelt r.it dt-m Pateneinqanq (D)
809829/0928
-47- 28Q1543
eines ΐ:ΊΐρΓ1ορ 636. ύο.ν ''nicht wahre" Ausgang (Q) des Flipflop 636 ist: gekoppelt mit dem dritten Eingang des NAKD-Gatters 618, CjCiI dri'cLi..!: üln-junq ei ο s HAI.'D-Gatters G2'4 und &l wird als Ver— schiebungsnusganq (STORE) der Verschiebungslogik 124 geliefert.
Der Avisgang des Inverters 602 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 638. Der zweite Eingang des NAND-Gcitters 633 ist gekoppelt mit dem Ausgang des NAHD-Gatters 632. Der Ausgang des NAHD-Gatters 624 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 640, und er wird auf eine Leitung LN3 gegeben, und dies stellt eine Linksverschiebung bei Nibble 3 dar. Der Ausgang des NAND-Gatters 628 wird auf eine Leitung R KO geliefert, und dies stellt eine Rechtsverschiebung außer bei Nibble Null dar. Die D-Bitposition des Nibble, welche am Ausgang der arithmetischen Logikeinheit (ALU-D) erscheint, wird als Eingang geliefert su einem Inverter 642, zu dem zweiten Eingang des NAND-Gatters 598 und zu einem Eingang des Blocks 608. Der Ausganq des Inverters 64?. ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 640. Der Ausgang des NAND-Gatters 596 ist gekoppelt mit einem von drei Eingängen eines NAND-Gatters 644, und er bildet das Signal SHL/R (Shift Left or Right signal), welches am Ausgang der Verschiebungslogik 124 zur Verfügung steht. Die C-Bitposition des Nibble am Ausgang der arithmetischen Logikeinheit 118 (ALU-C) ist ein Eingang zu dem Block 608. Das Signal SCRY, welches auf der Leitung 535 von der Trägerlogik 530 su der Verschiebungslogik 124 (Fig. 13) geliefert wird, ist mit dem Eingang eines Inverters 646 gekoppelt. Der Ausgang des Inverters 646 ist gekoppelt mit dem dritten Eingang des NAND-Gatters 644.
Die Ausgänge der NAND-Gatter 640, 638, 644 und 630 sind zusatnmengckoppelt, und diese Verbindung ist gekoppelt mit dem Dateneingang (D) eines Flipflop 648. Außerdem ist diese gemeinsame Verbindung am Dateneinganq (D) des Flipflop 648 gekoppelt mit den B-E3its und don C-Bits des Nibble am Ausganq der arithmetischen LcMjikeiriheit 118 (ALU B und ALU C). Die Takteingänge CP
809829/0928
CKT i'j ΐρ· loj :;
welches «."Λϊ'Γι Ausgang der Taktloqik 152 vorhanden ist. Der "nicht ■;.. -Ii;:::.'' , ν.·;· =.,οκ. j ("'.] ·..!>.:": il^ 'Ί;·Ρ 6·-3 .„'Lcllü ein/: Inversion dos .Signals ZR (Zero Ic^sult signal) dar. Auch ist das Signal ZR am Au^ciüpo d> ./> FJipfi op 6Ί5 rückgekoppelt eu dem :;:v:eiten Eingang dos
rig. 16 xri: ein Übc^rJ chtr.dieigramiTi, welches die gegenseitige Lage der Zeichnungr.blätter mit den Fig. 16Λ, 16B und 16C zeigt.
Fig. 16Λ zeigt ein Schaltbild eines Teils der Taktlogik 152. Das Signal BRP (Run Register Parallel signal), welches auf Leitung 154a um Ausgang der Prcgrammlocjikanordnung 190 (Fig. 6) geliefert wird, gelangt su dem Dateneingang (D) eines Flipflop 650. Die Ausgangn^teuersignalleitungen 0„ und 0, aus der Programmlogikanordnung 190 sind gekoppelt mit den Dateneincängen (D) von Flipflops 652 baw 653. Die Speichersteuersignalleitungen IL. bis f1o aus der rirogrc-rrinlogikanordnunq 190 sind gekoppelt' mit den Dateneingängcn (D) von Flipflops 654 bis 656.
Der "wahre" Ausgang (Q) des Flipflop 650 bildet ein Signal LBRP (verriegelte Version des Bus Register Parallel signal), welches der Taktlogik 152 geliefert wird. Die "wahren" Ausgänge (Q) der Flipflops 652 und 653 bilden die Ausgangssteuersignale O^ und 0-, welche auf die Leitungen 58 von der Zentraleinheit geliefert werden. Die "wahren" Ausgänge (Q) der Flipflops 654 bis 656 stellen die Speichersteuersignale Kn, M. und M„ dar, welche auf die Leitungen 60 von der Zentraleinheit 52' geliefert werden. Außerdem sind die "wahren" Ausgänge der Flipflops 654 bis 656 gekoppelt mit drei Eingängen eines NAND-Gatters 658. Das Signal M ', welches an dem "wahren" Ausgang des Flipflop 654 geliefert wird, liegt auch als Eingang an einem Inverter 660.
Das Signal M3SY (I-.e^ory Busy signal), welches auf Leitung 77 von dem Speicher geliefert wird, liegt als Eingang an einem Inverter 662 und an einen von drei Eingängen eines NAND-Gatters
809829/092 8 bad original
Gb-'i· iJ."-C /Ι U: jcii.'. Γ ILj 'ιί::- i;/ii .'ι.'"·".-.! i I'.f'jTii ICo iilt CiC iC ΟΓ pol L i.lj. 1_ GZnGiYi von xv/ei eingängen ex η ns NAHD-Gatters 666 und. mit ein era zweiten r:irK;ü,r.-; c\ .; ;; -■'■.' '.L' -■·.'■■::.'■: er ·':; CM, Der Aiu-r;:\nn d...·;·. Il Al T'-C-:\ t te:.-.". GCo ist gekoppelt mit einem von zwei Eingängen eines MAND-Cintters und mit ί.·.\ηο;;ι van r;woi nir.-j^nqon eines weiten.>. !.1AnD-GiU: tors 670.. Die Ausgänge der iJAWD-Go.tter 664 und G68 sind cjekoppolt mit sv;ei von drei Cinnäncien eines NAKD-Gatters 672. Der Ausqanq den NAMD-Gattors 672 ist qokoppelfc mit dem Einqanq eines Inverters 674, mit einem von zwei Eingängen eine» NAüD-Gatterc 676, mit dem zweiten Einganq der= MAIJD-Ga11ers 670 und mit einem von drei Eingüncjen eines NANrj--Gatte.cs 673. Der Ausgang des HAND-Gatters 676 ist qekoi.'polt mit dem Eingang eines Inverters GfJO, dem dritten Eingang des NAND-Gatters 672 und mit der Leitunq 61, welches das Signal SYiJ zum Speicher 54 liefert.
Der Ausgang dec Inverters 674 ist gekoppelt mit einem Eingang eines Inverters 632, und der Ausgang dieses Inverters ist gekoppelt mit t-i ne';i von r;.v;ei Einoänqen eines MAI'D-CUxtters 684. Der Ausgang des Inverters 662 ist gekoppelt mit dem zweiten Eingang des NAND-Gatter.*; 684 und mit einem von zwei Eingängen eines NAND-Gatters; 685. Der Ausgang des MAND-Gatters 684 ist gekoppelt mit einem von drei eingängen eines NAiJD-Gatters 688. Der Ausgang des NAND-Gatters 688 ist gekoppelt mit einem dritten Eingang des NAND-Gatters 678 und mit einem von zwei Eingängen eines NAND-Gatter ε 690. Der Ausgang des MAND-Gatters 690 ist rückgekoppelt su dem dritten Eingang des NAHD-Gatters 688 und zu einem Eingang eines Inverters 692. Außerdem ist der Ausgang des HAND-Gatters 690 gekoppelt mit dem zweiten Eingang des NAND-Gatters 668 und mit dein NAND-Gatter 664. Der Ausgang des MAND-Gatters 678 ist gekoppelt mit dem Dateneingang (D) eines Flipflop 694.
Das Signal BRS (Bus Register Serial signal) aus der Prograrnmlogikp.nordnunq 190 ist gekoppelt mit einem von drei Eingängen eines NANU-Gatters 696. Der "nicht wahre" Ausgang (Q) des Flipflop 650 j st gekoppelt mit einem von vier Eingängen eines NAMD-Gatters 697. Die Ausgänge der NAND-Gatter 696 und 697 sind gekoppelt mit
809829/0928
BAD ORIGINAL
zwei VJ \\v'.\n-jCzii einer- ΝΛ\:ί>·-Gatters GK*8, und der Ausgang dieses NAND-Cn tiers bi l.dot das Taktsignal HBCL, welches :;u den Sarmnolloiti:rK.':-iv:q.i.r·L.";.r IC'L* (Tie:;.. cA) gcli-riort wird.
Fiq. ICi: "oLgt f:i;r-;i zv/eiLc.n Teil der Takt.l. ο;.;!'.: 152, '.!nc! die nachfolgende-Beschreibung h;:ngt eng mit der obigen Beschreibung dor Schaltung in rig. 1£Λ zuHcUi.ien und nimmt auf diese Βογλκτ. Das
Ii-IP (InncrucLicri licc'isfcor Parallel Control siqnul) au:i der raii:-:; i.oqikanordnung 190 liegt als Eingang an einein Inverter 700. Dor Aur.gann dos Inverters 700 ist qekoppo.lt mit einem von fünf EiiKj'mqcn eines NAHD- Gatters 702 und mit einem von zwei &incjünqon <·ines NAfJiJ-C-üLtern 70-':. Das Signal IRS (Instruction Roqistr--r Serial iiignal) auf; der Prograrrünlogikanordnunn 190 liegt als Eingang an einen Inverter 7OG, und der Ausgang dienes Inverters v;.i rd geliefert zu einem der drei Eingänge, eines FJAND-Gatters 708. Die Ausgänge der MAND-Gatter 702 und 703 sind gekoppelt mit zwei E'ingüngen eines MAf'D-Gatters 710. Der Ausgang des MAKD-Gatterr. 702 ir.h much acliü^c-olt mit el cm eingang eines Inverters 712. Der Ausgang des Inverters 712 stellt das Signal IRPCL (Instructicr Register Parallel Clock signal) dar, welches auf Leitung 105a sur Verfugung steht. Per Ausgang des MAMD-Gatters 710 stellt das Signal IRSCL {Instruction Register Serial Clock signal) dar, welches auf Leitung 105b zur Verfugung steht.
Der Ausgang des Inverters 680 (Fig. 16A) ist gekoppelt mit einerri von drei Eingängen eines NAMD-Gatters 714 (Pig. ISB), mit dem zweiten Kingang des MAND-Gatters 704 und mit einem von drei Bingänqen eines ?JAMD-Gatters 71G. Der "nicht wahre" Ausgang (Ci) dor; Flipflop 650 (Fig. 16A) gelangt auch als zweiter Eingang zu dem NAND-Gatter 714, (Fig. IGB). Der Ausgang des Inverters 692 (Fig. 16.A) liogt p.In dritter eingang an dem NAND-Gatter 714 (Fig. 16Λ) und an einem zv/eit'.-n Binqang des NAND-Gatters 716» Die Ausgänge der NAND-Gatter 714 und 704 sind gekoppelt mit Eingängen von Invertern 718 b"v, 719. Der Ausgang des Inverters 718 stellt das Signal DRPE (Bus register Parallel Enable signal) dar, und dor Au^nang dos Inverters 71;) bildet das Signal IRPF. (Instruction Heair-tor el Fnable signal)*
809829/092 8
281)1543
-si-
Ut.iK Siqruii i'Cij C y">. < :·~\'·:όλλ Counter ,Select siqnul) ai;s ü.ür Pro·, ι ramm— 3ogikünordnunq 190 i;elan«t als Eingang :su einem Inverter 720, und der ΛOj-·;:-.-.!sg di'*-:.^ο Inverters .ii;c roicoppolt mit cinc.i von drei Eingängen eines NAIJD-Gatters 722. Das Signal BRO (Bus Register Output fjiir-nal) our, dor Proqrari"är:;log:'.k anordnung 190 ist gekoppalt mit dem Dateneingang (D) eines FlipfJop 724. Der "wahre" Ausgang (Q) des Flipflop 724 ist gekoppelt mit einem von drei Eingängen eines NAl'D-Gatters 726, und der Ausgang dieses NAND-Gatters ist gekoppelt mit dem Eingang eines Inverters 728. Der Ausganq des Inverters 728 ist gekoppelt mit der Leitung 107c, welche das Signal BROIJ (Bus Register Output Enable signal) v/eitergibt. Der Ausgang dos NAND-Gatters 716 ist gekoppelt mit dem zweiton Eingang des NAND-Gatters 726. Dar Ausgang des NAND-Gatters 722 ist gekoppelt mit dem Eingang eines Inverters 730, und der Ausgang dieser» Inverters ist gekoppelt mit der Leitung 144, welche das PCCL-Signal (Program Counter Clock signal) v/eitergibt.
Der "vabro" Ausganq (Q) des Flipflop 694 (Fig. IvGA) ist gekoppelt mit einem von drei Eingängen eines NAND-Gatters 732 (Fig. 16B). Der Ausgang des Inverters 682 (Fig. 16A) ist gekoppelt mit einem zweiten Eingang des in Fig. 16B dargestellten NAND-Gatters 732. Der Ausgang -des NAND-Gatters 732 ist gekoppelt mit einenn von drei Eingängen eines in Fig. 16C dargestellten NAND-Gatters 734. Der Ausgang dos NAND-Gatters 666 (Fig. 16A) ist gekoppelt mit einem von swei Eingängen eines NAND-Gatters 736, welches in Fig. 16C dargestellt ist. Der Ausgang des NAND-Gatters 736 ist gekoppelt mit einem zweiten Eingang des NAND-Gatters 734. Der Ausgang des NAND-Gö.tters 734 ist gekoppelt mit einem Eingang eines Inverters 738, und der Ausgang dieses Inverters ist gekoppelt mit dem Dateneinganq (D) eines Flipflop 740. Der "wahre" Ausgang (Q) des Flipflop 740 ist gekoppelt mit dem Dateneingang (D) eines Flipflop 742. Der "v/f.hre" Ausgang (Q) des Flipflop 742 ist gekoppelt mit dem "weiten Eingang des NAND-Gatters 746, einem zweiten Eingang don HAHD-Gatters 744, einem zweiten Eingang des NAND-Gatters 736, dem PnteneinnBnq (D) des Flipflop 748 und einem weiteren Eingang dc-r; NAND-Gatter« 762 in Fig. 16B. Der "wahre" Ausgang (Q)
809829/0928
des Flipflop 743 ist gekoppelt ir.If; einem von drei Eingängen eines NAND-Catters 750, einem von zwei Eincjänqen eines NAND-Gafcters 752 und einen; von ξ v/ei Eingängen eines NAND-Gatters 754, v;ie in Fig. 36E5 dargestellt ist. Der "nicht wahre" Ausgang (Q) des Flipflop 742 ist gekoppelt: mit einer.i von zwei Eingängen eines NAND-Gatters 756 in Fig. 1613, dem Eingang eines Inverters 758, wie auch In Fig. 16B dargestellt ist, und er stellt ein Ausgangssignal, welches hier als NB bezeichnet ist, aus der Taktlogik dar. Der "nicht wahre" Ausgang (Q) des Flipflop 748 ist gekoppelt mit dein Eingang eines Inverters 760, und der Ausgang dieses Inverters ist gekoppelt mit einem von vier Eingängen eines NAND-Gatters 762 (Fig- 16B), dem zweiten Eingang des NAND-Gatters 756 und dem dritten Eingang des NAND-Gatters 726, ebenfalls entsprechend der Darstellung in Fig. 16B.
Der Ausgang des Inverters 749 liefert das Zeitsteuerungssiqnal NA (Nibble A timing signal). Außerdem istcfer Ausgang des Inverters 749 gekoppelt mit einem aweiten Eingang des NAND-Gatters 750. Der Ausgang des NAND-Gatters 750 (FIq. 16C) ist gekoppelt mit einem zweiten Eingang des NAND-Gatters 752 und mit dem Eingang eines Inverters 764. Der Ausgang des Inverters 764 ist gekoppelt mit einem von vier Eingängen eines UND-Gatters 766' und mit einem dritten Eingang des NAND-Gatters 732 (Fig. 16B). Außerdem stellt der Ausgang des Inverters 764 das Signal NlXl dar, welches zu der Trägerlogik 530 geliefert wird. Der Ausgang des NAND-Gatters 752 ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 734. Der Ausgang des NAND-Gatters 746 ist eine Umkehrung des Zustandes des Signals PLA aus der Taktlogik 152 (eine Inversion der Schwingungsform 162 in Fig. 5). Der Ausgang des NAND-Gatters 744 ist gekoppelt mit dem Eingang eines Inverters 766, und der Ausgang dieses Inverters stellt das Ausgangssignal GTPLA (Go To PLA) aus der Taktlogik 152 dar.
Wie aus Fig. 16B erkennbar ist, ist der Ausgang des NAND-Gatters 754 gekoppelt mit dem zweiten Eingang des NAND-Gatters 722, einem von zwei Eingängen eines NAND-Gatters 768, einem zweiten Eingang des NAND-Gatters 708 und einem weiteren Eingang des NAND-
809829/0928
Gatters 696 entsprechend der Darstellung in Fig. 16A. Der Ausgang des NAND-Gatter?* 763 (Fig. IGB) ist gekoppelt mit dem Eingancj eine;' Inverters 770, und der Ausgang dieses Inverters stellt das Taktsignal CLOCK der Zentraleinheit 52 dar. Dieses Taktsignal ist gekoppelt mit den Takteingängen (CP) der Flipflops 654, 655,656, 653, 652 und 650 (Fig. 16B). Außerdem ist das Taktsignal am Ausgang des Inverters 770 gekoppelt mit dem Takteingang CP des Flipflop 724 (Fig. 16B).
In Fig. 16C ist erkennbar, daß der Oszillatoreingang OSC zu der Zentraleinheit 52, welcher auf Leitung 92 geliefert wird, als Eingang an Inverter 792 liegt. Das Signal XTL zu der Zentraleinheit 52, welches auf Leitung 94 geliefert wird, ist gekoppelt mit dem Ausgang des Inverters 792, dem Eingang eines Inverters 794, einem der vier Eingänge des UND-Gatters 766' und dem Takteingang CP eines Flipflop 796. Der Ausgang des Inverters 794 ist das Ausgangssignal CLK OUT, welches auf Leitung 96 von der Zentraleinheit 52 geliefert wird. Der Ausgang des UND-Gatters 766' ist gekoppelt mit dem Eingang PD (Preset Direct) des Flipflop 796. Der "nicht wahre" Ausgang (Q) des Flipflop 796 ist rückgekoppelt zu dem Dateneingang (D) dieses Flipflop und zu einem weiteren Eingang des NAND-Gatters 766'. Außerdem ist der "nicht wahre" Ausgang des Flipflop 796 gekoppelt mit dem Eingang eines Inverters 798, und der Ausgang dieses Inverters ist gekoppelt mit einem weiteren Eingang des NAHD-Gatters 744, einem weiteren Eingang des NAiJD-Gatters 762 (Fig. 16B), dem dritten Eingang des NAND-Gatters 722 und dem zweiten Eingang des NAND-Gatters 768 (Fig. 16B).
Der "v/ahre^' Ausgang (Q) des Flipflop 796 ist gekoppelt mit dem Eingang eines Inverters 800 und den Takteingänqen (CP) der Flipflops 740, 742 und 748. Außerdem ist der "wahre" Ausgang des Flipflop 796 gekoppelt mit dem Takteingang (CP) des in Fig. 16A dargestellten Flipflop 694. Der Ausgang des Inverters 800 ist gekoppelt mit dem Eingang eines weiteren Inverters 801, und der Ausgang dieses Inverters ist gekoppelt mit dem dritten Eingang
809829/0928
filrieL. riAi'jn-uatl ;.rö 7Go (Fig. IGB), einem weiteren Elncang dec NAND-Gattors 702 (FIq. IGB) und den dritten Eingängen der NAND-Gatter vjG uuu 6Jl ("ig· IGA).
Das Signal RCoKT, welches <iuf dor Leitung 93 dor Zentraleinheit; 52 geliefert wird, liegt als Eingang an einem Inverter 802, und der Ausgang dieses Inverters ist gekoppelt mit den Eingängen D (Data) und PD (Preset Direct) eines Flipflop S04. Der "wahre" Ausgang (Q) des Flipflop 804 stellt das Signal L RESET aus der Taktlogik 152 dar. Dieses Signal L RESET ist auch gekoppelt mit den Eingängen PD (Preset Direct) der Flipflops 652, 653 und 655 und den CD-Eingängen (Clear Direct) der Flipflops 656 und 654 (Fig. IGA). Der "nicht wahre" Ausgang (Q) des Flipflop 804 ist gekoppelt mit dem dritten Eingang des NAND-Gatters 750 und mit dem zweiten Eingang des NAND-Gatters 666 (Fig. 16A). Wie Fig. 16A zeigt, ist der Aligang des Inverters 674 auch gekoppelt mit einem dritten Eingang des NAND-Gatters 762 (Fig. 16B) und dem Takteingang (CP) des Flipflop 804 (Fig. 16C).
Die Flipflops 740, 742 und 748 bilden ein Nibblezeitsteuerungsregister. Dabei erzeugt Flipflop 740 das Hibblezeitsteuerungssignal NA, Flipflop 742 das NIbblezeitsteuerungssignal NB und Flipflop 748 das Nibblezeitsteuerungssignal NC. Die nachfolgende Tabelle enthält eine Übersicht über die Funktion der Flipflops 740, 742 und 748:
(740) (742) (748) Zustand Null (
NA NB NC PLA 1 (N1)
0 1 1 Nibble 2 (Np)
0 0 1 Nibble 3 (M3)
0 0 0 Nibble
1 0 0 Nibble
1 1 0 SYN
1 1 1
Wenn das Nibbleseitsteuerungsregister den Zustand Nibble 3 (110) erreicht, werden die Speicherleitungen (MQ, M- und M^) durch die Gatter 658, 664 und 668 (Fig. 16Λ) geprüft, um zu bestimmen, ob
809829/09??
ciot* nl-chnte :>c:iritt eine i.peichcroperation 1st oder nicht. Wenn in diasern Arbeitszyklus keine Speicheroperation festgestellt wird, wird υ-.'.^ r'Ai-bloioitsteueruncureqiGber zurück in den Γ LA-Zustand (011) versetzt. Anschließend wird das Signal GTPLA durch die NAND-Gatter 734 und 744 erzeugt.
Wenn dagegen die Speicherleitungen feststellen, daß eine SpeicherOjieration .stattzufinden hat, so nimmt das Nibblezeitsteuerungsregister den Zustand SYM (111) an. Der nächste Schritt ist die Prüfung der Signalleitung MEM. BUSY durch das NAND-Gatter 664. Wenn festgestellt wird, daß der Speicher belegt (busy) ist, wartc-?t die Zentraleinheit. Wenn dann durch einen Viechsei im Zustand der MEM. BUSY-Signalleitung 77 angezeigt wird, daß der Speicher nicht langer belegt ist, wird das Signal SYN erzeugt.
Um die Arbeitsweise der beschriebenen Taktlogxkschaltunq besser zu erklären und darzustellen, wird Bezug genommen auf das Flußdiaqrarun in Fig. 17 und die Zeitsteuerunqsdiagramme in den Fig. 18, 19 und 20. Block 721 zeigt an, daß sich das Nibblezeitsteuerungsregister in dem letzten Nibblezustand (N3 oder 110) befindet. Bei der nächsten Taktkante v/ird eine Prüfung vorgenommen, ob der nächste Schritt eine Speicheroperation ist oder nicht. Diese Prüfung ist in Fig. 17 wiedergegeben durch einen Rhombus 723. Wenn sich das NAND-Gatter 666 (Fig. 16A) im aktiven Zustand befindet, so v/ird hierdurch eine Speicheroperation angezeigt; wenn sich aber das NAND-Gatter 658 im aktiven Zustand befindet, so wird hierdurch angezeigt, daß keine Speicheroperation folgt.
Es sei zunächst angenommen, daß der nächste Schritt eine Speicheroperation ist. Dann v/ird eine Mindestverzögerung gleich einem Oszillatorzyklus oder einer Hälfte eines internen Takteyklus durch das NAND-Gatter 762 (Fig. 16B) bewirkt, und dies ist in Fig. 17 durch einen Rhombus 725 dargestellt. Diese Verzögerung ist erforderlich, um sicherzustellen, daß alle Gatter definierte Zustände einnehmen im Anschluß an irgendwelche Übergangsvorgange, welche durch Änderung von Zuständen verursacht sein können. Im
809829/0928 BAD original
u ein dj cüu ΠίπΙϋΐα.Ί verisücjortfiiy wJ.rd ti.uie Prüfung vorgenommen, u:n festzustellen, ob der Speicher belegt (busy) ist oder nicht, und dies ist durch einen Rhombus 727 in Fiq. 17 v/iodergegeben. Die Prüfung, ob der Speicher belegt ist, erfolgt durch das HAJJD-Gatter 664 in Pin. 16Λ.
Wenn der Speicher nicht belegt ist, und dies wird durch ein hohes Niveau auf der MEM.BSY.-Leitung 77 angezeigt, so stellt sich der SYN-Zustand (111) in dem Nibblezeitsteuerungsregister (Flipflops 740, 742 und 748, Fig. 16C) ein, und dies ist in Fig. 17 v/iedergegeben durch einen Block 729. Das Signal SYN wird durch das NAND-Gatter 672 (Fig. 16Λ) auf Leitung 61 bereitgestellt, und es wird dem Speicher zugeführt.
Dann wird der Speicher erneut daraufhin geprüft, ob er belegt ist, wie durch einen Rhombus 731 angedeutet ist, und diese Prüfung wird diesen Mal durch das NAND-Gatter 684 (Fig. 16A) vorgenommen. Der Speicher sei nun belegt nach Eingang des Signals SYN. Anschließend wird eine Prüfung vorgenommen, ob die Speicheroperation eine Lesen-Operation (READ) ist oder nicht, und dies wird durch einer, Rhombus 733 angedeutet. Wenn man annimmt, daß der Speicherzyklus eine LESEN-Operation (READ) ist, so wird der Sammelleitungsregisterausgang durch Gatter 716 inaktiviert (disabled). Zusätzlich wird das Signal BRPE (Bus Register Parallel Enable signal) durch das NAND-Gatter 714 (Fig. 16B) aktiviert. Diese Operation ist in Fig. 17 durch einen Block 735 dargestellt.
Der Speicher v/ird dann wiederum entsprechend der Darstellung in Rhombus 737 geprüft, ob er belegt ist. Dieses Mal wird der Speicher geprüft, um festzustellen, ob die LESEJN-Operation (READ) abgeschlossen ist. Dann wird bei der nächsten Taktkante der PLA-Zustand eingeleitet, wie durch Block 739 wiedergegeben ist. Diese Operation wird bev/irkt durch das UND-Gatter 678 (Fig. 16A), den Flipflop 694 und das NAND-Gatter 732 (Fig. 16B). Es tritt bis zur nächsten Taktkante entsprechend der Darstellung der Blocks 741 und 743 (Fig. 17) eine Zeitverzögerung ein. Im Anschluß an
809829/0928
die Taktkeinto v.'ird dar. Hibb? c^i:standGrr:qii3ter zurückversetzt auin ersten Nibble (001), und zwar durch das NAND-Gatter 756 (Pin. IG-O, wie durch Block 7·'-5 in Fig. 17 dargestellt ist.
Das in Fig. 18 dargestellte Zeitsteuerungsdiagrarnm zeigt weitere Gesichtspunkte und nerkmale der beschriebenen Arbeitsweise der Taktlogik. Die Schwingunqsforni 755 zeigt das Oszillatorsignal, welches auf der Einqangsleitung 92 geliefert wird. Schwingungsforrn 757 zeigt das interne Taktsignal, welches von dem Oszillator abgeleitet wird.
Vor der Zeit tQ befindet sich das Nibblezextsteuerungsregxster in dem vierten Zustand, und dies ist der letzte Nibblezustand (N3 oder 110). Zwischen den Zeiten t~ und t. befindet sich das Zeitsteuerungsregister in dem Zustand SYN oder 111. Dabei ist zu beachten, daß im Anschluß an eine "Verzögerung" während des Zustandes SYK die interne Taktfrequenz den doppelten Wert annimmt, und diese doppelte Frequenz ist gleich der Frequenz des Oszillators. Die interne Taktfrequenz ist wieder auf die Hälfte der Oszillatorfrequenz herabgesetzt während des PLA-Zustands zwischen den Zeiten t. und t„.
Schwingungsform 759 zeigt den Ausgang des NAND-Gatters 690 (Fig. 16A) v/ährend des Zustandes SYN, und Schwingungsform 761 zeigt den "wahren" Ausgang (Q) des Flipflop 694 v/ährend der Zustände SYM und PLA und während des ersten Nibblezustands (NO oder (001) zwischen den Zeiten t~ und t~.
Schwingunnsform 763 zeigt den Ausgang des NAND-Gatters 672 (Fig. 16A). Schwingungsform 765 zeigt das Signal "Speicher belegt" (Memory Busy signal), welches auf Leitung 77 zugeführt wird, und Schwingungsfarm 767 zeigt das Signal BROE (Bus Register Output Enable signal), welches auf Leitung 107c zugeführt wird.
Schwinqungsforrn 763 ändert sich von einem niedrigen Pegel zu einem hohen Pegel im Punkt 763a. wenn die Schwingungsformen 759 und 765,
809829/0928
welche roch auf einem hohen Niveau befinden, mit einem positiven Übergang des internen Taktsignnlr. (Schwinquagsform 757) gekoppelt sind. Auiirrdi.T.1 nir.ünt das interne Taktsignal eine höhere Frequenz an, v/C'iin sich ochv.ingurKjsf orm 763 nur einem hohen Niveau befindet. Dc-3 hohe Niveau der Schv/ingunasfor:n 763 bei Punkt 763a veranlaßt d?iii Signal ESkOF, (Schwinaunqsform 767), auf ein niedriges Niveau abzufallen. Anschließend nimmt das Siqnal IRPCL (Schwingungsform 769) einen hohen Pegel ein, wenn sich Schwingunqsforrnen 757, 761, 763 und IRP aus der Proqrurnnilogikanordnunq 190 auf einem hohen Pegel befinden. Bei Zeit t. bzv/. dem Beginn des Zustands PLA sinkt das Signal IRPCL zurück auf ein niedriges Niveau .ils Folge den negativen Übergangs, wenn das interne Taktsignal (Schwingungsforrn 757) auf ein niedriges Niveau absinkt.
Das Signal BRPCL wird während des Zustandes PLA angehoben auf einen hohen Pegel als Folge des positiven Zyklus des internen Taktsignals in Kombination mit den sich auf einem hohen Pegel befindenden Schwinqungsforrnen 761 und 763 und dem "nicht -wahren" Ausgang (Q) dos Flipflop 650, welcher das Signal BRP (154a) der Prograriimlooikanordnung 190 speichert. Das Signal BRPCL fällt auf einen niedrigen Pegel bei dem nachfolgenden Miedrigpegel-Übargang des internen Taktsignals. Auf der Informationssamrnelleitung befindliche Daten werden daher vor dem Zustand PLA In das Befehlsregister eingeführt, und während des Zustandes PLA werden Daten in das Sammelleitungsregister eingeführt. Die 5ig nale BRPCL bzv/. IRPCL werden benutzt, um Daten zum Sammelleitunnsregister 103 bzw. Befehle zu dem Befehlsregister 106 heranzuholen.
Im Zusammenhang mit dem Rhombus 723 in Fig. 17 sei nun angenommen, daß die nächste Operation kein Speicherzyklus ist. Dann v/ird der Zustand PLA in dem Nibblezeitsteuerungsregister durch das NAI-JD-CJatter 658 (Fig. 16Λ) hergestellt. Diese Operation ist in Fig. 17 durch einen Block 773 dargestellt. Anschließend erfolgt eine zeitliche Verzögerung durch das NAND-Gatter 762, wie In Fig. 17 durch Rhombus 775 dargestellt ist. Anschließend v/ird der Zustand SYN hergestellt durch die NAND-Gatter 668 und 672
809829/0928
\L -->·,- j.\'."\· , UiV< O1v;;j XSi- Ciui*' V-''3 CC 1 i. C ti 5Jl" C Ti CImCm BxCCiC 7 / / j.Yi
' Ficj. 17. Bis zur nächsten Taktkante tritt eine weitere Zeitverzörj.crvu:;.; ein, \/ic r.-^ch Llec'c 779 ;ιη·.ί Plock 7-"3 df>rgostol] t int, bevor das erste Nibble (001) v.deder erreicht wird.
Dai? Zeitsceuerungi-.diagramm in Fig. 19 r.eigt einen als "I'j MAR" (Load Memory Address Register) oder "Schreiben" (V/rite S) bezeichneten Operationssyklus. SchwinqunqsformGn 755' und 757' zeigen die Ossillatortaktfrequens bzw. die interne Taktfrequenz. Schv/ingungsform 759' zeigt den Ausgang des NAND-Gatters 690 (Figc 16Λ), und Schv/ingungsform 761' zeigt den "wahren" Ausgang (C2) des Flipflop 694. Schwinguncjsform 763' zeigt den Ausgang des NAND-Gatterß 672 (Fig. 16A), während Schwingungsform 765· das Signal HKM BSY, welches auf Leitung 77 geliefert wird, zeigt, Schwingungsform 767' zeigt das Signal DROE, und Schwingungsform 781 zeigt das Signal GTPLA, welches von Gattern 744 und 766 (Fig. IGC) geliefert wird.
Die Schwinqungsform 763' nimmt einen hohen Pegel ein, wenn Schwingungsform 765' (Memory Busy) und 759' auf einem hohen Pegel liegen. Wenn das Signal MEM BSY auf einen niedrigen Pegel fällt, fällt die Schwinqungsform 759' ebenfalls auf einen niedrigen Pegel. In diesem Zusammenhang ist zu beachten, daß das Signal GTPLA auf einen hohen Pegel gehoben wird nahe dem Ende des Zustands SYN (Zeiten tf, bis t^.), und dies ist davon abhängig, ob das interne Taktsignal (Schwingungsform 757») und die Schwingungsform 761' beide auf einem hohen Pegel liegen. Das Signal GTPLA wird wieder auf einen niedrigen Pegel gesenkt im Zeitpunkt t., also dem Zeitpunkt des Beginns des Zustandes PLA, beim nächsten negativen Übergang des internen Taktsignals. In diesem Zusammenhang ist von Bedeutung, daß sich das Signal BROE auf einem hohen Pegel während der Zustände SYN und PLA befindet, und hierdurch ist es dem Sammelleitungsregister möglich, Daten auf der Informationssammelleitung zu dem Speicher zu liefern.
809829/0928
In Fig- 20 ist eine einzelne Bitposition der Informationflsamtp.elleitung 56 dargestellt. Jede der Datensammelleitungsverhxndungen zur Zon irrt lein ho i':. 52 ist ankoppelt mit eingängen von Verntörkern, Jn; vorlicqenden Fall Verstärker 810, und der Ausgang dieser Verstärker bildfü": die Si ^ na 1.1 ei tun gen (IR ) der Informationssamnip.1 le.i tun<i innerhalb der Zentraleinheit 52. Die Sammelleitungsregistersignale, welche auf den Leitungen 112 (BR ) geliefert werden, liegen al;.; Eingänge an anderen Verstärkern, im vorliegenden Fall Verstärker 812, und die Ausgänge dieser Verstärker sind rückgekoppelt zu Eingängen des ersten Verstärkers, also Verstärker 810, und ;-,u einzelnen Bitpositionen des' Sammelleitungsregisters 56. 'Die Verstärker 812 u. folg. sind !Bauelemente mit drei Zuständen, derart, daß ihre Ausgänge abhängig von dem Zustand eines Stcuercingangssignals einen hohen Pegel oder einen niedrigen Pegel einnehmen, oder eine hohe .Impedanz vorhanden ist. Das Steuereingangssignal, v/elches zu den Verstärkern 812 u. folg. geliefert v/ird, ist das Signal BROE (Bus Register Output Enable signal), v/elches auf Leitung 107c geliefert wird.
In Fig. 21 ist ein logisches Diagramm des Sammelleitungsregisters 108 dargestellt. Zur Vereinfachung der Darstellung ist nur eine Hälfte (8) der Flipflops, welche das Sammelleitungsiregister 108 enthält, dargestellt. Alle Bitpositionen der Informationssammelleitung, also IBn bis IB.r, liegen als Eingänge an Invertern, und die Ausgänge dieser Inverter sind gekoppelt mit den zweiten Dateneingängen (D,.) der Flipflops, welche das Sarnmelleitungsregister bilden. Die "nicht wahren" Ausgänge (Q) der Flipflops des Sammelleitungsregisters bilden die Sammelleitungsregisterausgangssignale (BRq bis BR^1-), welche auf den Leitungen 112 geliefert werden. Die Takteingänge (CP) der das Sammelleitungsregister bildenden Flipflops sind gekoppelt mit dem Taktsignal BRCL aus der Taktlogik 152. Die Wahleingänge (S) dieser .Flipflops sind mit dem Signal BRPE (Bus Register Parallel Enable signal) gekoppelt.
Fig. 4A zeigt, daß das Sarnmelleitungsregister 108 Daten aus der Inforniationssani.Tielleitung 56 oder von der Sammelleitungsregister-
809829/0928
Πι111ini cjxFch:Λ 1 tune Ί.2Γ? tV-ifninn1. t* Darnit diono Ai'.'"v.'Cihl yen Dsten erfolgt, die in das iiammelleitunqsreqister 108 einzubringen sind, werden die Flipflops dos Sammelleitungnreqisters Daten entweder in den ersten Dateneinganq (D~) oder in den zweiten Dateneingang (EK) einführen, und siwar abhängig von dem Zustand des Signals BRPE, welches an den Uahleingüngen dieser Flipflops geliefert wird. Wenn z.B. Daten von der Sammelleitungsreqistermultiplexschaltunq 122 eingeführt werden, werden diese Daten ein Vierbit-Nibble bilden. Dementsprechend wird dieses Vierbit-Nibble in die ersten vier Flipflops des Sammelleitungsregisters eingebracht. Im vorliegenden Fall sind diese ersten vier Flipflops die Flipflops 820 bis 823. Die Ausgänge der Sammelleitungsregistermultiplexschaltung 122 v/erden bezeichnet als PC ALU A bis ALU D, und diese nehmen die Eingangssignale auf, welche mit den ersten Dateneingängen (D0) der Flipflop's 820 bis 823 gekoppelt sind. Die "wahren" Ausgänge (Q) der Flipflops 820 bis 823 sind gekoppelt mit ersten Dateneingängen (DQ) der nächsten Flipflopbank (nicht dargestellt), welche einen weiteren Teil des Sammelleitungsregisters 108 bildet. Die "wahren" Ausgänge der nächsten zur letzten Flipflopbank (nicht dargestellt), welche das Sammelleitungsregister enthält, sind gekoppelt mit den ersten Dateneingängen (Dq) von Flipflops 824 bis 827. Auf diese Weise wird das Vierbit-Nibble, welches am Ausgang der Sammelleitungsregistermultiplexschaltung 122 geliefert wird, in das Sammelleitungsregister 108 bit-parallel und nibble-seriell eingeführt.
Fig. 22 zeigt ein logisches Schaltbild des Befehlsregisters 106. In dieser Figur ist zur Vereinfachung der Darstellung nur eine Hälfte der Flipflops eingezeichnet, welche das Befehlsregister bilden.' D>.e zweite Hälfte des Befehlsregisters ist als Block 830 dargestellt. Das Signal IRPCL (Instruction Register Parallel Clock signal) ist gekoppelt mit den Takteingängen (CP) von Flipflops 832, 833, 834 und 835, welche die zweiten, dritten, sechsten und siebenten Bitpositionen des Befehlsregisters (IR^' ^3' IRß und IRy) bilden. Außerdem wird das Taktsignal IRPCL entsprechenden Flipflops (nicht dargestellt) innerhalb des Blocks 830
809829/0928
zurjtfüiirt. Die ζ\-:ζχίο ßitposicion tier InrorrnarionGGarrimoiioJ tung CEFi,,) int gekoppelt mit dem ersten Dafcencingancj (D0) des Flipflop CS-I. I.; v: i ~'br.[- -rtcl liinci er i'uJ :u; v/erden -.lic dritten, ycchsLen und siebenten E55.tposit5.onen dor Informationssamrnol leitung (IB_, IB, und IL„) d-:n ersten Datencinq'Jnqen (D.,) der Flipflops 83?., 835 und 838 zugeführt. Die "wahren" Ausgänge (U) dor Flipflops 832 bis 835 bilden die dritten, siebenten, zweiten und sechsten Positionen des Befehlsregisters ClR3, IR7, IR2 und IR6^*
Der "nicht wahre" Ausgang (Q) des Flipflop 833 ist gekoppelt mit einem von zwei Eingängen eines UND-Gatters 836. Der "nicht wahre" Ausgang (Q) des Flipflop 835 ist gekoppelt mit dem zweiten Eingang des UND-Gatters 836. Der Ausgang des UND-Gatters 836 ist gekoppelt mit einem von zwei Eiingäncjen eines NOR-Gatters 838. Der Ausgang des HOR-Gatters 838 ist gekoppelt mit den ersten Dateneingängen (D0) von Flipflops 840 und 841. Es ist die Aufgabe des UND-Gatters 836 und des NOR-Gatters 838, mitzuwirken bei der Err ech.nung einer effektiven Speicheradresse aus Speicher— bezugsbef ehlen..
Die zehnte und die elfte Bitposition der Informationssammelleitung (IB^Q- und IB.*,,) sind gekoppelt mit den zweiten Dateneingänqen (D.) der Flipflops 840 und 841. Die "wahren" Ausgänge (Q) der Flipflops 840 und 841 stellen den zehnten bzw. elften Ausgang des Befehlsregisters dar, und sie sind auch gekoppelt mit den ersten Dateneingängen (DQ) von Flipflops 842 und 843. Die ersten Dateneingänge (D„) der Flipflops 842 und 843 sind gekoppelt mit der und 15. Bitposition der Informationssarnmelleitung ClB^4 und IB15). Die "wahren" Ausgänge (Q) der Flipflops 842 und 843 stellen die 14. und 15. Bitposition des Befehlsregisters (IR^ und IR.3,5) dar.
Das Signal IRPfD (Instruction Register Parallel Enable signal) ist gekoppelt mit den. Wahleingängen (S) der Flipflops 840 bis 843. Außerdem ist das Taktsignal gekoppelt mit entsprechenden Flipflops innerhalb des Blocks 830. Das Signal IRSCL (Instruction
809829/0928
Reqxr-'tcr Serial Clock signal) ist gekoppelt mit den Takteimjängen (CP) der Flipflops 8'<0 bis 843 und mit entsprechenden Flipflops in dorn !'lock 830. Innerhalb des Clocks 630 ist ein Flipfiop 846 dargestellt, und dieser stellt die achte Bitposition des Befehlsregister;; dar. Der "nicht wahre" Ausgang (Q) di eses Flipflop ist gekoppelt mit dem zweiten Eingang des NOR-Gatters 838.
Fig. 23 aeicjt je ein Viertel der Sammelspeicher 134 bis 137 und der Multiplexschaltungen 130 bis 133 im logischen Diagramm. Die erste Scheibe des Sammelspeichers 134 (ACC0) enthält vier Flipflops 850 bis 853. Die hier verwendete Bezeichnung "Scheibe" bezieht sich auf einzelne Bitpositionen eines Nibble. Der "nicht wahre" Ausgang (Q) des Flipflop 853 ist qekoppelt mit einem von zwei Eingängen eines NAND-Gatters 856,.welches ein Teil der Multiplexschaltung 130 (HUX 0) ist. Die Bitposition mit der höchsten Ordnung am Ausgang des Registers 138 (Fig. 4A), und diese Bitposition trägt die Bezeichnung SH12, ist gekoppelt mit einem von zv/ei Eingängen des UAND-Gatters 853 in der Multiplexschaltung 130, einem von zwei Eingängen eines NAND-Gatters 860 in der Multiplexschaltung 131, einem von zwei Eingängen dnes NAND-Gatters 862 in der Multiplexschaltung 132 und einem von zwei Eingängen eines NAND-Gatters 864 in der Multiplexschaltung 133. Das Signal ACC/Wq (Accumulator Write Zero signal), welches auf Leitung 138a zugeführt v/ird, stellt den zweiten Eingang des NAND-Gattss 856 in der Multiplexschaltunq 130 und auch den Eingang eines Inverters 866 dar. Der Ausgang des Inverters 866 ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 858. Die Ausgänge der NAND-Gatter 856 und 858 sind zusamtnengekoppelt, und diese Verbindung ist rückgekoppelt zu dem Dateneingang (D) des Flipflop 850, und sie stellt auch einen Eingang zu den Quellen- und Bestimmungsmultiplexschaltungen 114 bzw. 116 (Fig. 4A) dar. Der "wahre" Ausgang (Q) des Flipflop S50 ist gekoppelt mit dem Dateneingang (D) des Flipflop 851, und die Ausgänge der Flipflops 851 und 852 sind in entsprechender Weise gekoppelt.
809829/0928
Die Saniinel:speicher 135 bis 137 und die Hultiplexschaltungen bis 133 sind in gleicher Weise geschaltet wie oben im Zusammenhang mit dem Sammelspeicher 134 und der Mulfciplexschaltung 130 beschrieben wurde»
Dementsprechend werden Daten in eine Multiplexschaltunq, beispielsweise Multiplexschaltung 130, entweder von dem Register 128 durch Leitung SH12 oder von dem Ausqang des Flipflop 853 eingeführt, und zwar je nach dem Zustand des Signals ACC/WQ (Accumulator Write signal), welches auf Leitung 138a geliefert wird. Auch werden Daten, welche am Ausgang jeder der Multiplexschaltungen vorhanden sind, beispielsweise Multiplexschaltunq 130, als Eingang rückgekoppelt zu dem entsprechenden Sammelspeicher, beispielsweise Sammelspeicher 134, um diesen Datenwert wieder in den Sammelspeicher rückzuspeichern.
Fig. 24 zeigt Einzelheiten eines logischen Diagramms eines Teils der Bestimmungs- und Quellenrnultiplexschaltungen 116 und 114. Die zwölfte Bitposition des Sammelleitungsregisters (BR _) liegt als einer von vier Eingängen an einem NAND-Gatter 880. Die vier Ausgänge aus den Multiplexschaltungen 130, 131, 132 und 133 sind gekoppelt mit je einem von vier Eingängen von HAND-Gattern 881 bis 884, und diese Ausgänge sind auch mit je einem von vier Eingängen von NAND-Gattern 886 bis 889 gekoppelt. Die zwölfte Bitposition des Befehlsregisters (IR-,-,) ist gekoppelt mit einem von vier Eingängen eines NAND-Gatters 890. Die NAND-Gatter 880 bis 884 stellten eine Scheibe eines Nibble der Bestimmungsmultiplex— schaltung 116 dar. Die NAND-Gatter 886 bis 890 bilden eine Scheibe eines Nibble der Quellenmultiplexschaltung 114.
Wie bereits beschrieben, wird die Arbeitsweise der Eestimmungsmultiplexschaltunq gesteuert durch Mahl signale DMSO bis DI1S2. Das Wahlsignal DMSO liegt als Eingang an einem Inverter 892, und der Ausganq dieses Inverters ist gekoppelt mit dem Eingang eines Inverters 893 und mit zweiten Eingängen der NAND-Gatter 881 und 883. Das Signal DMSl (Destination Multiplexer Select signal 1)
809829/0928
— 6b —
liegt als Eingang an einem Inverter 894, und der Ausgang dieses Inverters ist gekoppelt mit dem Eingang eines weiteren Inverters 895 und mit den zweiten Eingängen der NAND-Gatter 881 und 802. Das V/ahlsiqnal DMS2 liegt als Eingang an einem Inverter 896, und der Ausgang dieses Inverters ist gekoppelt mit dem Eingang von Inverter 897 und mit einem zweiten Eingang des NAND-Gatters 880. Der Ausgang des Inverters 893 ist gekoppelt mit dem zweiten Eingang der NAND-Gatter 884 und 882 sowie mit einem dritten Eingang des NAND-Gatters 880. Der Ausgang des Inverters 895 ist gekoppelt mit dem dritten Eingang des NAND-Gatters 884, dem dritten Eingang des NAND-Gatters 883 und dem dritten Eingang des NAND-Gatters 880. Der Ausgang des Inverters 897 ist gekoppelt mit dem vierten Eingang der NAND-Gatter 884, 883, 882 und 881.
Fig. 25 zeigt ein logisches Diagramm mit Einzelheiten der arithmetischen Logikeinheit (ALU) 118. Der erste Operand, welcher am Eingang der arithmetischen Logikeinheit 118 zur Verfugung steht, wird geliefert von der Quellenmultiplexschaltung 114 (Fig. "4A). Dieser erste Operand ist ein Vierbitnibble, und die einzelnen Bits sind !^zeichnet als SMA, SMB, SMC und SMD. Der zweite der arithmetischen Logikeinheit 118 zugeführte Operand stammt von der Bestimrnungsmultiplexschaltung 115, und er umfaßt ebenfalls ein Vierbitnibble. Die Bits dieses Vierbitnibble sind bezeichnet als DMA, DMB, DMC und DMD. Die Bitposition D aus der Bestimmungsrnultiplexschaltung 116 (DMD) liegt als einziger Eingang an einem NAND-Gatter 900. Die Bitposition D der Quellenmultiplexschaltung 114 (SMD) liegt als einziger Eingang an einem NAND-Gatter 902, an einem von zwei Eingängen eines NAND-Gatters 904 und an einem von drei Eingängen eines NAND-Gatters 906. Der Ausgang des NAND-Gatters 900 liegt als einziger Eingang an einem NAND-Gatter 908, an einem von drei Eingängen eines NAND-Gatters 910 und an dem zweiten Eingang des NAND-Gatters 906. Der Ausgang des NAND-Gatters liegt als einer von zwei Eingängen an einem NAND-Gatter 912 und an einem zweiten Eingang des NAND-Gatters 910. Das Signal ALU/SO (ALU Select Signal Zero) liegt als Eingang an einem Inverter 914,
809829/0928
— bo —
als Eingang an einem weiteren Inverter 916, an einem von zwei Eingängen eines NAND-Gatters 918 und an einem von zwei Eingängen eines HAND-Gafctt-rε 920. Das Signal ALU/51, welches das zweite Wahlsiqnal für die arithmetische Logikeinheit ALU ist, lieqt als Eingang an Invertern 921 und 922, an einem von zwei Eingängen eines NAND-Gatters 924, an einem von drei Eingängen eines NAND-Gatters 925, an einem von zwei Eingängen eines NAND-Gatters 926 und an einem von drei^Eingängen eines NAND-Gatters 928.
Der Ausgang des Inverters 914 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 930 und mit einem einzelnen Eingang eines NAND-Gatters 932. Der Ausgang des Inverters 921 ist gekoppelt mit einem einzelnen Eingang des NAND-Gatters 934, dem dritten Eingang des NAND-Gatters 906 und einem von drei Eingängen eines NAND-Gatters 936.
Die Ausgänge der NAND-Gatter 904, 908 und 912 sind zusammengekoppelt, und die Verbindung ist gekoppelt mit dem einzigen Eingang :eines NAND-Gatters 940. Der Ausgang des NAND-Gatters 940 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 942, mit einem von drei Eingängen eines NAND-Gatters 944, mit einem von drei Eingängen eines NAND-Gatters 946 und mit einem von drei Eingängen eines NAND-Gatters 948. Die Ausgänge der NAND-Gatter
906 und 910 sind zusammengekoppelt, und die Verbindung ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 942, mit dem einzigen Einqanq des NAND-Gatters 951 und mit einem zweiten Eingang des NAND-Gatters 948. Der Ausgang des NAND-Gatters 942 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 952. Der Ausgang des NAND-Gatters 951 ist .gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 956. Der Ausgang des NAND-Gatters 930 ist gekoppelt mit einem zweiten Eingang des NAND-Gatters 956, einem zweiten Eingang des NAND-Gatters 946 und mit einem von zwei Eingängen eines NAND-Gatters 958. Die Ausgänge der NAND-Gatter 944, 956 und 946 sind zusaminengekoppelt, und die Verbindung stellt den Ausgang CO (Carry Out) der arithmetischen Logikeinheit 118 dar.
809829/0928
Die Ausgänge der NAND-Gatter 943 und 952 sind verbunden, und die Verbindung ste3It die Bitposition D an dem Ergebnisausganq der arithnetischen Lociikeinhoit (ALU D) dar.
Die in Fig. 25 dargestellte arithmetische Logikeinheit ist im wesentlichen dio gleiche wie eine arithmetische Logik konventioneller Art. Die Gruppe von NAND-Gattern 908, 904, 912, 910 und 906, welche sich innerhalb einer gestrichtelten Linie 909 befindet, führt die arithmetischen Funktionen aus. Dabei nehmen die NAND-Gatter 908, 904 und 912 die Summierungsoperation für Bit D und die Gatter 910 und 906 die Produktoperation vor.
Die übrigen drei Bitpositionen der arithmetischen Logikeinheit 118 sind in der gleichen V/eise verbunden, wie oben im Zusammenhang mit der Bitposition D beschrieben ist; es erübrigt sich daher eine eingehendere Erläuterung.
Das Nibbletaktsteuerungssignal NB ist gekoppelt mit den Dateneingängen (D) eines Flipflop 960. Das Taktsignal (CLCCK) aus der Taktschaltung ist gekoppelt mit dem Takteingang (CP) des Flipflop 960. Der "wahre" Ausgang (Q) des Flipflop 960 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 962. Der zweite Eingang des NAND-Gatters 962 ist gekoppelt mit dem Steuersignal CARRY/ALU auf Leitung 117. Der "nicht wahre" Ausgang (Q) des Flipflop 960 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 964. Der zweite Eingang des NAND-Gatters 964 ist gekoppelt mit dem Signal LSCARRY (verriegelte Version des Stored Carry signal). Die Ausgänge der NAND-Gatter 962" und 964 sind miteinander verbunden, und die Verbindung ist gekoppelt mit einem einzigen Eingang eines NAND-Gatters 966. Es ist die Aufgabe der Flipflopschaltung 960 im Zusammenwirken mit den NAND-Gattern 962, 964 und 966 irgendwelche Überträge (carries) zwischen aufeinander folgenden, durch die arithmetische Logik gelangenden Nibbles zu verarbeiten.
809829/0928
Arithmetische Locjikeinheiten sind bekannt. Ein Ausführungsbeispiel einer arithmetischen Logikeinheit, welche im wesentlichen identisch ist mit der arithmetischen Logikeinheit 118 und welche im wesentlichen in gleicher VJoise arbeitet, ist beschrieben in einer Veröffentlichung dor Firma Fairchild Semiconductor "The TTL Applications Handbook" Ausg. 1973, S. 522 ff. Eine weitere arithmetische Logikeinheit, welche im wesentlichen identisch rcLt der arithmetischen.Logikeinheit 118 ist und v/elche die Eigenschaft des Wellenübertrags hat (ripple carry feature), ist in US-PS 3 984 670 "Expandable Digital Arithmetic Logic Register Stack" der Anmelderin beschrieben.
Fig. 26 zeigt ein logisches Schaltbild des Proqrammregisters 142. Unter Bezugnahme auf Fig. 4A ist zu berücksichtigen, daß der Ausgang der arithmetischen Logikeinheit 118 und der Ausgang der Inkrementschaltung 144 mit einer Programmzählermultiplexschaltung 120 gekoppelt sind, und der Ausgang der Multiplexschaltung 120 ist gekoppelt mit dem Eingang des Programmregisters 142. Bei dieser Ausführungsform enthält die Proqrammzählermultiplexschaltung 120 vier Flipflops 1000 bis 1003, deren Wahleingänge (S) die Wahl zwischen einem der zv/ei Dateneingänge (D„ und D.) zu diesen Flipflops treffen. Außerdem bilden die Flipflops 1000 bis 1003 den ersten Nibblespeicher des Programmregisters 142.
Die Wahleingänge (S) der Flipflops 1000 bis 1003 sind gekoppelt mit dem Programmzählermultiplexsteuersignal, welches auf Leitung 140 geliefert wird. Die ersten Dateneingänge (DQ) dieser Flipflops sind gekoppelt mit den vier Bitausgangsklemmen der arithmetischen Logikeinheit 118 (ALU A bis ALU D). Die zweiten Dateneingänge (D.) der Flipflops sind gekoppelt mit den Ausgängen der Inkrementschaltung 144, welche die Bezeichnungen PCI-A bis PCI-D haben.
Die "nicht wahren" Ausgänge (Q) der Flipflops 1000 bis 1003 sind gekoppelt mit den ersten Dateneingängen (DQ) von Flipflops 1004 bis 1007. In entsprechender Weise sind die "wahren" Ausgänge (Q)
809829/0928
.69- 2B01543
dar Flipflnp- 1001 bis 1007 gekoppelt mit den ersten Dateneino"mqen (Dq) von vier Flipflops 1008 bis 1011. Ebenso sind die Ausgänge dor Pi-t.p.nnr.3 lOOC ]-.'i.'5 1011 r-jkoppelc lait den Datcneinqi-ncjen von Flipflops 1012 bis 1015. Die "wahren" Ausgänge (Q) der Flipflops 1012 bis 1015 foil! den das PrograrnrnregisterauEgangssignal, welches der Inkrerncntschaituncj 144 zugeführt wird, und sie sind bezeichnet als PRA bis PFlD. Öe "nicht wahren" Ausgänge (Q) dieser Flipflops liegen auch als Eingänge an der Inkrementschaltung 144, und diese Signale werden mit dem gleichen Signalnamen bezeichnet, wobei über dieser Bezeichnung ein Strich angeordnet ist.
Die Takteingänge (CP) der Flipflops 1000 bis 1015 sind gekoppelt mit dem Signal PCCL (Program Counter Clock signal) aus der Taktlogik 152.
Fig. 27 zeigt ein logisches Diagramm der Inkrementschaltung 144 und der Sammelleitungsregistermultiplexschaltung 122. Das Signal PC INC (Program Counter Increment signal), welches auf der Leitung 147 von der Programmlogikanordnung 190 geliefert wird, ist mit einem von zwei Eingängen eines NAND-Gatters 1020 gekoppelt. Der zweite Eingang des NAND-Gatters 1020 ist gekoppelt mit dem zweiten Uibblesteuersignal NC 2, und das Signal NiC *2 ist gekoppelt mit einem von zwei Eingängen eines NAND-Gatters 1022. Die Ausgänge der NAND-Gatter 1020 und 1022 sind miteinander verbunden, und die Verbindung ist gekoppelt mit dem Eingang eines Inverters 1024, einem von zwei Eingängen eines NAND-Gatters 1026, einem von fünf Eingängen eines NAND-Gatters 1028, einem von drei Eingängen eines NAND-Gatters 1030, einem von drei Eingängen eines NAND-Gatters 1032 und einem von vier Eingängen eines NAND-Gatters 1034. Der Ausgang des Inverters 1024 ist gekoppelt mit einem von zwei Eingängen eines NAMD-Gatters 1036. Die Bitposition A an dem Ausgang des Programmrecjisters 142 (PRA) ist gekoppelt mit einem zweiten Eingang des NAND-Gatters 1028, einem zweiten Eingang des NAND-Gatters 1036, einem zweiten Eingang des NAND-Gatters 1030, einem zweiten Eingang des NAND-Gatters 1032 und mit einem zweiten Eingang des NAND-Gatters 1034. Die Inversion des Bits A des Programm-
809829/092 8
' Gatters 1026. Die Ausgange d.?r NAND-Gatter 1036 und 1026 sind mit-
von zwei riinqännen eines NAND-Gatters 1038 und bildet auch den A-PitnosiLlonoaUGoanc PCI A der Progranmr.öh.lerinkr-smentschaltung 144.
Das Signal Β"·Ί3 (Bus Register Multiplexer Select signal), welches auf Leitung 148 geliefert wird, ist gekoppelt mit den Eingängen von Invertern 1040 bis 1042. Außerdem liegt das Wahlsignal BHS als .zweiter Eingang an dein NAND-Gatter 1038, dem ersten von zwei Eingängen eines NA'ii'--Gatters 1044, dem ersten von zwei Eingängen eines NAND-Gatters 104S und den ersten von zwei Eingängen eines NAND-Gatters 1048. Der Ausgang des Inverters 1040 ist gekoppelt mit dem ersten von zwei Eingängen eines NAND-Gatters 1050 und mit dem ersten von zwei Eingängen eines NAND-Gatters 1052. Die Bitposition A an dem Ausgang der arithmetischen Logikeinheit 118 (ALU A) ii't gekoppelt mit com zweiten Eingang des NAND-Gatters 1050. In entsprechender Weise ist die Bitposition B des Ausgangs der arithmetischen Logikeinheit (ALU B) gekoppelt mit dem zweiten Eingang des NAND-Gatters 1042.
Im Betrieb v/ird der Zustand des Signals BKS (Bus Multiplexer Select signal), welches auf Leitung 143 geliefert v/ird, entscheiden, ob das Signal ALU A weitergegeben v/ird durch das NAND-Gatter 1050, oder ob die Ausgänge der NAND-Gatter 1026 und 1036 weitergegeben werden durch das NAND-Gatter 1038. Die Ausgänge der NAND-Gatter 1038 und 1050 sind miteinander verbunden, und die Verbindung bildet das Ausgangssignal aus der Sammelleitunosregistermultiplexschaltung 122, welches dem Sammelleitungsregister 108 geliefert wird. Der übrige Teil der in der betreffenden Figur dargestellten Schaltung ist in der gleichen V/eise aufgebaut, wie bereits boschrieben wurde, und er arbeitet auch in gleicher l/eise.
Fig. 28 S'.-iqt ein Ionisches Diagramm des Recjisters (Scratch Register) 128. Der Ausgang der Verschiebunqsloqik 124, welcher die
809829/0928
Bc-oichnunqan S ί ΪΓ Ί Λ bis SHi" D hat, liegt on don ersten Da toneingängen (Dn) von Flipflops 1060 bis 1063. Der "wahre" Ausgang (Q) d .!■:.-scr Flipf loprj ist rückgekoppelt zu den ?.\/eiten Datcneingangen (D..) der gleichen Flipflops. Außerdem sind die "wahren" Ausgänge der FlipfJons 1061 bis 1063 gekoppelt mit ersten Daten— eingängen (D„) von Flipflops 1066 bis 1068.
Das Siqnal R "NO (Right Shift Except Nibble Zero Control signal) aus der Verschiebungslogik 124 ist gekoppelt mit dem Eingang eines Inverters 1070 und mit einem von swei Eingängen eines NAND-Gat~ ters 1072. Die Bitposition A am Ausgang der arithmetischen Logikeinheit 118 (ALU A) liegt als einer von zwei Eingängen an einem NAND-Gatter 1074. Der Ausgang des Inverters 1070 ist gekoppelt mit· dem zweiten Eingang des NAND-Gatters 1074. Die Ausgänge der NAND-Gatter 1072 und 1074 sind miteinander verbunden, und die Verbindung ist gekoppelt mit dem ersten Dateneingang (D„) eines Flipflop 1076. Der "nicht wahre" Ausgang (Q) des Flipflop 1060 ist gekoppelt mit dem zweiten Eingang des NAND-Gatters 1072.
Die "nicht wahren" Ausgänge (Q) der Flipflops 1076 und 1066 bis 1068 sind gekoppelt mit zweiten Dateneingängen (D.) von Flipflops 1078 bis 1081. Der Ergebnisausgang der arithmetischen Logikeinheit (ALU A bis ALU D) ist gekoppelt mit den ersten Dateneingängen (D„) der Flipflops 1078 bis 1081. Die "nicht wahren" Ausgänge (Q) der Flipflops 1078 bis 1081 sind gekoppelt mit den ersten Dateneingängen (Dq) von Flipflops 1083 bis 1085. Der "nicht wahre" Ausgang (Q) des Flipflop 1081 ist gekoppelt mit dem zweiten Dateneingang (D^) eines Flipflop 1086. Eäe "wahren" Ausgänge (Q) der Flipflops 1083 bis 1086 sind gekoppelt mit Eingängen von Invertern 1088 bis 1091, und die Ausgänge dieser Inverter bilden den Ausgang des Registers 128, welcher den Multiplexschaltungen 130 bis 133 (Fig. 4A) geliefert wird, und diese Signale werden bezeichnet als SH12 bis SH15. Das Ausgangssignal SCARRY aus der Übertragungslogik ist gekoppelt mit dem ersten Dateneingang (Dn) des Flipflop 1086, und das Steuersignal LN3 (Shift Left on Nibble 3) aus der Verschiebungslogik liegt als Wahlsignal (S) an diesem Flipflop.
809829/0928
28Q1543
Das Register 128 ist in zwei Hälften geteilt, von denen die erste Hälfte die Flipflops 1060 bis 1063, 1076 und 1066 bis 1068 enthält; die zweite Hälfte enthält die Flipflops 1073 bis 10Sl und 1083 bis 1086. Die in Fig. 4A dargestellte Multiplexschaltung 126 enthält Wahleingänge (S) zu diesen Flipflops.
Das Signal SH SWP (Shift-or-Swap signal) liegt als Eingang an einem Inverter .1092, und der Ausgang dieses Inverters ist gekoppelt mit dem Eingang eines Inverters 1094 und den Wahleingängen (S) der Flipflops 1060 bis 1063, 1076 und 1066 bis 1068. Der Ausgang des Inverters 1094 ist gekoppelt mit dem Wahleingang (S) der Flipflops 1078 bis 1081. Abhängig von dem Zustand des Signals SH SWP wird die erste Gruppe der das Register 128 bildenden Flipflops Daten von dem ersten Dateneingang (DQ) oder dem zweiten Dateneingang (D.) einführen. Auch sind die Flipflops 1078 bis 1081 in gleicher Weise gesteuert durch das Signal SH SWP, um Daten entweder von den ersten Dateneingängen (Dn) oder von den zweiten Dateneingängen (D^) einzuführen.
Fig. 29 zeigt ein Übersichtsdiagramm zur Darstellung der Orientierung und gegenseitigen Lage der Fig. 29A, 29B, 29C und 29D.
Die Fig. 29A bis 29D zeigen Einzelheiten der Programmlogikanordnung 190, und das Diagramm ist in gleicher Weise zu lesen wie das in Fig. 8 dargestellte und oben beschriebene Diagramm der Steuerprogrammlogikanordnung 300.
Die Eingangs- und Ausgangssignale sind oben erläutert und näher beschrieben. Die vertikalen Leitungen der Programmlogikanordnung 190 in den zusammengelegten Zeichnungen sind fortlaufend numeriert und haben die Ziffern 1 bis 72 für den 72er-Befehlssatz der Zentraleinheit 52. In der nachfolgenden Tabelle sind diese Befehle, geordnet nach den Ziffern 1 bis 72 unter Bezugnahme auf die senkrechten Linien aufgeführt.
009829/0929
Befohl Polqszuctand Nr.
Befehl.oder Operation
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24
22 522 322
22
22
'22
522 J22
DEFERx DEFER, DEFERx DEFER,
e.
DEFER.
DEFER,
XEQ XEQ, XEQ, XEQ,
XEQ,
S22 S22 S22 S22
1.
'22
22 Fetch, Load Accumulator, Pane Fetch, Store Accumulator, Page Fetch, Increment and Skip if Zero, or Decrement and Skip if 0, Page Fetch, Load Accumulator, Base Register Fetch, Store Accumulator, Base Register
Fetch, Inc. & Skip if 0, or Dec.
& Skip if 0, Base Register Fetch, Load Acc., Relative Fetch, Store Acc, Relative Fetch, Inc. & Skip if 0, or Dec. & Skip if 0, Relative Load Accumulator Store Accumulator Inc. & Skip if 0, or Dec. & Skip if Load Accumulator Store Accumulator Inc. & Skip if 0, or Dec. & Skip if Load Accumulator Store Accumulator Inc. & Skip if 0 Dec. & Skip if 0 Inc. & Skip if 0, or dec. & Skip if Fetch & XEQ, Jump, Page Fetch & XEQ, Jump, Base Reg.
Fetch & XEQ, Jump, Relative Fetch & XEQ, Jump to Subroutine, Page 0
Fetch & XEQ, Jump to Subroutine, Base Reg.
Fetch & XEQ, Jump to Subroutine, Relative
809829/0928
Befehl Folcrezuntand Nr.
27 S00
- 74 -
Befehl oder Operation
28
29
22
'22
30 DEFER2"
31 DEFER1
32 XEQ1
33 XEQ1
34 S22
35 S22
36 S22
37 S22
38 S22
39 S22
40 S22
41 S22
42 XEQ1
43 XEQ2
44 ■ XEQ2
45 XEQ2
46 XEQ2
47 XEQ2
48 SKIP
49 S22
50 XEQ2
51 S22
52 Interrupt2
53 Interrupts
Fetch, Jump or Jump to Subroutine Indirect, Page Fetch, Jump or Jump to Subroutine Indirect, Base Reg.
Fetch, Jump or Jump to Subroutine Indirect, Relative Jump, or Jump to Subroutine, Indirect Jump, or Jump to Subroutine, Indirect Jump, Indirect Jump to Subroutine, Indirect A/L (Arithmetic) I/O Data In I/O Data In I/O Data Out I/O Data Out N I/O or Interrupt Enable, or Interrupt Disable Clear I/O Devices Unused I/O Code I/O Data In I/O Data Out I/O Data Out N I/O or Int. En. or Int. Disable Clear I/O Devices, or unused I/O Code
Store Acc.
Skip on Flags Skip on Flags Interrupt Interrupt Interrupt
809829/0928
Befehl
Nr.
FolyeüUsLcmd DEFKR1
54 TNT.DEFER0 XEQ1
55 INT.
56 INT.
57
58
59
60
S22
S22
S22
WAIT
61 WAIT
62 WAIT
63 WAIT
64. WAIT OP1
65 WAIT OP2
66 CON. OP2
67 CON. OP2
68 CON. OP,
69 CON. OP2
70 CON.
71 CON.
72 »J λ ο
Befehl-oder Operation
Interrupt Interrupt Interrupt Data Channel Halt
Console Halt Wait
Load P.C.
Examine Acc. or Deposit Data into Acc.
Examine Memory Continue Deposit Data Into Memory Deposit Data Into Memory Deposit Data Into Memory Load P.C.
Examine Acc.
Deposit Data Into Acc.
Examine Memory A/L (Logic)
Fig. 30 ist eine Reproduktion einer Mikrofotografie der Zentraleinheit gemäß der vorliegenden Erfindung in der Form einer integrierten Schaltung. In dieser Fig. 30 sind gleiche Komponenten (Gebiete des Halbleiterchip), v/elche die Zentraleinheit gemäß der vorliegenden Erfindung bilden, mit gleichen Bezugszeichen versehen.
In der obigen Beschreibung wurde eine bevorzugte Ausführungsform einer monolithisch aufgebaute Zentraleinheit eines Mikrocomputers näher erläutert. Die Beschreibung des obigen Ausführungsbeispiels ist jedoch nicht einschränkend, und es können im Rahmen des Erfindungsgedankena unter Anwendung fachmännischen Handelns geeignete Verbesserungen und weitere Ausführungen vorgenommen werden.
€09829/0928
Zusammenfassung: Eine Zentraleinheit (Central Processing Unit - CPU) bildet zusammen mit äußeren Speichern und Eingabe/Ausgabe-Einrichtungen ein Mikrocomputersystem. Die Zentraleinheit ist ein Prozessor mit einer festen Wort länge von 16 Bit, v/elcher auf einem einzelnen Halbleiterchip monolithisch integriert ist, und es wird für Berechnungen Zweier-Komplement-Arithmetik (Two's (2's) complement arithmetic) benutzt. Die Zentraleinheit enthält eine arithmetische Logikeinheit (arithmetic logic unit - ALU), Sammelspeicher, Datenpfadmultiplex, Programmzähler und programmierbare logische Anordnungen zur Steuerung der Arbeitsweise des Prozessors.
Der Prozessor gemäß der Erfindung kann einen homogenen Speicher verwenden, in dem sowohl Befehle als auch Daten in dem gleichen Speicher gespeichert sind. Bei dem beschriebenen Ausführungsbeispiel der Erfindung werden 15 der 16 Bits zur Adressierung des Speichers verwendet. Der Prozessor kann daher 32 768 16-Bit-Wörter in dem Speicher direkt adressieren.
Zur Verbindung des äußeren Speichers und der Eingabe/Ausgabe-Einrichtungen mit der Zentraleinheit wird eine externe 16-Bit-Sammelleitung"verwendet. Dabei wird Zweirichtung-Dreizustand-Logik benutzt, um zu ermöglichen, daß sowohl Eingangs- und Ausgangsdaten als auch Speicheradressen über die gleiche Sammelleitung weitergegeben werden, so daß der Aufbau erheblich vereinfacht wird. Zusätzlich ist vorgesehen, daß ein Bedienungspult in ein System eingekoppelt wird, welches um den Prozessor gemäß der Erfindung ausgebildet ist, so daß ein Benutzer engen Kontakt mit dem System hat.
809829/0928

Claims (11)

  1. PATENTANWALT SAARSTRASSE 71
    Mountain View, California 94040, VStA F 7728
    "——ι
    NACHGEREICHT
    Ansprüche
    /lJ Datenverarbeitungsanlage mit einer Zentraleinheit, wenigstens einem Speicher außerhalb der Zentraleinheit, und den Zugang su der Datenverarbeitungsanlage ermöglichender perlpherer Ausrüstung, wobei eine Zentraleinheit monolithisch auf einem einzelnen Halbleitersubstrat integriert Ist, gekennzeichnet durch
    a) eine Datensammelleitung, welche die Verbindung zwischen dem Prozessor, wenigstens einem Speicher und der peripheren Ausrüstung herstellt,
    b) einen ersten Speicher zur Speicherung von Befehlscodes, welche von dem Prozessor auszuführen sind, wobei die Eingangsklemmen des ersten Speichers mit der Datensammelleitung und Ausgangsklemmen gekoppelt sind,
    c) eine erste Multiplexschaltung mit mehreren Sätzen von Eingangs-klemmen, und einem Satz Ausgangsklemmen, wobei ein Satz der Eingangsklennmen mit den Ausgangsklemmen des ersten Speichers gekoppelt ist.
    d) eine arithmetische Logikeinheit mit zwei Sätzen Operandeneingangsklemmen und einem Satz Erqebnisausgangsklemmen, wobei ein erster. Satz der Operandeneingangsklemmen mit den Ausgangsklemmen "Q.&Z* erster. Multiplexschaltung gekoppelt ist,
    e) einen -zweiten Speicher zur Speicherung von Daten, mit ersten Eingangskiemrnen, weiche mit der Datensamnelleitung gekoppelt sind, mit zweiten Eingangsklernmen, welche mit dem Ergebnisausgang der arithmetischen Logikeinheit gekoppelt sind, und mit Ausgangsklemmen,
    809829/09?«
    543
    f) eine zweite Multiplexschaltung mit mehreren Sätzen von Eingangsklernmen und einem Satz Ausgangsklemmen, welche mit einem zweiten Satz Operandeneingangsklemmen der arithmetischen Logikeinheit gekoppelt sind, und einem Satz Eingangsklemmen, welche mit den Ausgangskleimen des zweiten Speichers gekoppelt sind,
    g) Programmzähler zur Lieferung von Adressendaten zu wenigstens dem einen Speicher, ',;cbei Singangsklemmen des Programmzählers mit dem Ergebnisausqar.q der arithmetischen Logikeinheit und Ausgangsklemmen des Progra:.irr,sö niers mit den zweiten Eingangsklemmen des zweiten Speichers verbunden sind, und
    h) eine Steuereinrichtung nit einer programmierten logischen Anordnung, welche die Arbeitsweise des Prozessors aufgrund von Taktsignalen und den in dem ersten Speicher gespeicherten Befehlscodes steuert.
  2. 2. Zentraleinheit nach Anspruch 1, dadurch gekennzeichnet, daß die Steuereinrichtung mehrere Steuerieitungen enthält, welche betriebsmäßig mit dem ersten und dem zweiten Speicher derart verbunden sind, daß Daten auf der Datensammelleitung selektiv festgestellt werden.
  3. 3. Zentraleinheit nach Anspruch 1, dadurch gekennzeichnet, daß die Steuereinrichtung den Zustand des Speichers derart abtastet, daß die Arbeitsweise des Speichers mit der Arbeitsweise des Prozessors synchronisiert wird.
  4. 4. Zentraleinheit nach Anspruch 1, dadurch gekennzeichnet, daß die Datensammelleitung eine Zweirichtungskommunikation zwischen dem Prozessor, dem Speicher urü der paripheren Ausrüstung ermöglicht, so daß eine Wechselwirkung (Kommunikation) zwischen Eingangsdaten, Ausgangsdaten und Speicheradressen auf einer einzigen Sammelleitung möglich ist.
    809829/0928
  5. 5. Zentraleinheit nach Anspruch 1, dadurch gekennzeichnet, daß der Programmzähler Register zum Speichern einer Speicheradresse zum Wiederfinden eines auszuführenden Befehlscodes enthält und Programmzählcrinkrementeinrichtungen zur Inkrementierung der Speicheradresse bei Abschluß der Ausführung eines Befehlscodes vorhanden sind.
  6. 6. Zentraleinheit nach Anspruch 1, gekennzeichnet durch Kratzregister (Scratch Pad register) zur Speicherung von Zwischenrechenergebnissen der arithmetischen Logikeinheit.
  7. 7. Zentraleinheit nach Anspruch 6, gekennzeichnet durch mehrere Sammelspeicher, deren Einganqsklemme und Ausgangsklemmen mit Eingangsklemmen der ersten und zweiten Multiplexschaltungen verbunden und zur Datenspeicherung eingerichtet sind, mehrere Multiplexeinheiten, von denen jeweils eine Eingangsklemme mit einer Ausgangsklemme entsprechender Sammelspeicher verbunden ist und eine Eingangsklemme mit dem Kratzregister verbunden ist, wobei Verbindungseinrichtungen vorhanden sind, vrelche jede der Mul— tiplexeinheiten mit den ersten und zweiten Multiplexschaltungen verbinden.
  8. 8. Zentraleinheit nach Anspruch 7, gekennzeichnet durch Einheiten zu der ersten und zweiten Multiplexschaltung.
  9. 9. Zentraleinheit nach Anspruch 1, gekennzeichnet durch Einrichtungen zur Änderung des Datenaufbaus durch den Prozessor.
  10. 10. Zentraleinheit nach Anspruch 9, dadurch gekennzeichnet, daß die Einrichtung zur Änderung des Datenaufbaus Verschiebeeinrichtungen zur Umstellung von Daten in dem Prozessor aufweist.
  11. 11. Zentraleinheit nach Anspruch 9, gekennzeichnet durch mehrere Sammelspeicher, von denen jeweils eine Eingangsklemme und Ausgangsklemmen mit Einqangsklemmen der ersten und zweiten Multiplexschaltung verbunden sind und welche zur Speicherung von Daten
    ^801543
    eingerichtet sind, mehrere Multiplexeinheiten, von denen jeweils eine Eingangsklemme mit einer Ausgangsklemme entsprechender Sammelspeicher verbunden ist, wobei eine Eingangsklemme mit dem Kratzregister verbunden ist, und Verbindungsexnrichtungen zur Verbindung der Multiplexeinrichtungen mit der ersten und zv/eiten MuI-tiplexschaltung vorhanden sind.
    • 809829/0928
DE19782801543 1977-01-17 1978-01-14 Datenverarbeitungsanlage Ceased DE2801543A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US05/760,063 US4106090A (en) 1977-01-17 1977-01-17 Monolithic microcomputer central processor

Publications (1)

Publication Number Publication Date
DE2801543A1 true DE2801543A1 (de) 1978-07-20

Family

ID=25057983

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19782801543 Ceased DE2801543A1 (de) 1977-01-17 1978-01-14 Datenverarbeitungsanlage

Country Status (4)

Country Link
US (1) US4106090A (de)
JP (1) JPS53114327A (de)
DE (1) DE2801543A1 (de)
GB (1) GB1571259A (de)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4276594A (en) * 1978-01-27 1981-06-30 Gould Inc. Modicon Division Digital computer with multi-processor capability utilizing intelligent composite memory and input/output modules and method for performing the same
US4314353A (en) * 1978-03-09 1982-02-02 Motorola Inc. On chip ram interconnect to MPU bus
US4396979A (en) * 1980-05-30 1983-08-02 Fairchild Camera & Instrument Corporation Microprocessor with improved arithmetic logic unit data path
US4482953A (en) * 1980-05-30 1984-11-13 Fairchild Camera & Instrument Corporation Computer with console addressable PLA storing control microcode and microinstructions for self-test of internal registers and ALU
US4412283A (en) * 1980-05-30 1983-10-25 Fairchild Camera & Instrument Corp. High performance microprocessor system
US4396980A (en) * 1980-07-11 1983-08-02 Fairchild Camera & Instrument Corp. Combined integrated injection logic and transistor-transistor logic microprocessor integrated circuit design
US4385350A (en) * 1980-07-16 1983-05-24 Ford Aerospace & Communications Corporation Multiprocessor system having distributed priority resolution circuitry
US4402043A (en) * 1980-11-24 1983-08-30 Texas Instruments Incorporated Microprocessor with compressed control ROM
EP0072373B1 (de) * 1981-08-19 1986-03-19 International Business Machines Corporation Mikroprozessor
US4577282A (en) * 1982-02-22 1986-03-18 Texas Instruments Incorporated Microcomputer system for digital signal processing
US4533992A (en) * 1982-02-22 1985-08-06 Texas Instruments Incorporated Microcomputer having shifter in ALU input
US4509114A (en) * 1982-02-22 1985-04-02 International Business Machines Corporation Microword control mechanism utilizing a programmable logic array and a sequence counter
JPS58190036A (ja) * 1982-04-23 1983-11-05 Fujitsu Ltd ゲ−ト・アレイ大規模集積回路装置
US5167027A (en) * 1982-11-09 1992-11-24 Siemens Aktiengesellschaft Apparatus and method for forming a sequencer link for a sequencer controlled by a micro-program
US4713750A (en) * 1983-03-31 1987-12-15 Fairchild Camera & Instrument Corporation Microprocessor with compact mapped programmable logic array
JPS619734A (ja) * 1984-06-26 1986-01-17 Nec Corp プロセツサ制御方式
US5233699A (en) * 1989-03-17 1993-08-03 Vitelic Corporation Expanded cache memory system
US5619720A (en) * 1994-10-04 1997-04-08 Analog Devices, Inc. Digital signal processor having link ports for point-to-point communication
JPH09311812A (ja) * 1996-05-24 1997-12-02 Oki Electric Ind Co Ltd マイクロコンピュータ
US20150317158A1 (en) 2014-04-03 2015-11-05 Applied Micro Circuits Corporation Implementation of load acquire/store release instructions using load/store operation with dmb operation

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3757306A (en) * 1971-08-31 1973-09-04 Texas Instruments Inc Computing systems cpu
US3962684A (en) * 1971-08-31 1976-06-08 Texas Instruments Incorporated Computing system interface using common parallel bus and segmented addressing
US3832694A (en) * 1972-08-31 1974-08-27 Ex Cell O Corp Processor unit for data retrieval and processing
US3825905A (en) * 1972-09-13 1974-07-23 Action Communication Syst Inc Binary synchronous communications processor system and method
US3996566A (en) 1974-12-16 1976-12-07 Bell Telephone Laboratories, Incorporated Shift and rotate circuit for a data processor
US3969724A (en) * 1975-04-04 1976-07-13 The Warner & Swasey Company Central processing unit for use in a microprocessor

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
DE-B.: Müller, Peter: Lexikon der Daten- verarbeitung, Verlag Moderne Industrie, 1969, S. 436 *
DE-Z.: Elektronik, H. 4, 1975, S. 93-97 *
DE-Z.: Funktechnik, 31. Jg. Nr. 22, 1976, S. 726-730 *

Also Published As

Publication number Publication date
US4106090A (en) 1978-08-08
GB1571259A (en) 1980-07-09
JPS53114327A (en) 1978-10-05

Similar Documents

Publication Publication Date Title
DE2801543A1 (de) Datenverarbeitungsanlage
DE2735814C2 (de) Nach dem Pipelineprinzip arbeitende Datenverarbeitungseinrichtung
DE4035405C2 (de)
DE69528084T2 (de) Verfahren zum Entwurf einer integrierten Halbleiter-Schaltung
DE2704842C2 (de) Im Pipeline-Betrieb arbeitende Datenverarbeitungseinrichtung
DE19882486B4 (de) Synchroner, nicht-flüchtiger Seitenmodus-Speicher
DE3752017T2 (de) Mikrorechner mit Zugriffsfähigkeit auf einen internen Speicher mit gewünschter variabler Zugriffszeit
DE2023354C2 (de) Datenverarbeitungsanlage mit einem Mikrobefehlsspeicher
DE2714805A1 (de) Datenverarbeitungssystem
DE19914210A1 (de) Verfahren und Vorrichtung für eine gestaffelte Ausführung einer Anweisung
DE2746505C2 (de)
DE2747146A1 (de) Datenverarbeitungsanlage
DE2533737C2 (de) Mikroprozessor mit aufteilbarer Adressenschiene
DE1499194A1 (de) Speichersystem
DE1197650B (de) Parallel-Addierer
DE1774870A1 (de) Verfahren und Anordnung zur Adressierung von Informationen in einer Datenverarbeitungsanlage
DE2401364A1 (de) Datenverarbeitungssystem
DE1499206B2 (de) Rechenanlage
DE2458286A1 (de) Datenverarbeitungssystem zum verschieben von datenfeldern mit verschiedenen strukturen
DE69131954T2 (de) Zeichenfolgensuchgerät und -system
DE4429764C2 (de) Zeitgebereinrichtung für einen Mikrocomputer
DE69031361T2 (de) Taktsignalgeneratorsystem
DE69034165T2 (de) Mikroprozessor mit einer Vielzahl von Buskonfigurationen
DE3882425T2 (de) Datenübertragungssteuerungsvorrichtung für Direktspeicherzugriff.
DE2539929A1 (de) Rechnersystem mit busstruktur

Legal Events

Date Code Title Description
8110 Request for examination paragraph 44
8131 Rejection