DE2551852C2 - - Google Patents
Info
- Publication number
- DE2551852C2 DE2551852C2 DE19752551852 DE2551852A DE2551852C2 DE 2551852 C2 DE2551852 C2 DE 2551852C2 DE 19752551852 DE19752551852 DE 19752551852 DE 2551852 A DE2551852 A DE 2551852A DE 2551852 C2 DE2551852 C2 DE 2551852C2
- Authority
- DE
- Germany
- Prior art keywords
- lines
- register
- output
- line
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/21—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
- G11C11/34—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
- G11C11/40—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
- G11C11/401—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
- G11C11/402—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells with charge regeneration individual to each memory cell, i.e. internal refresh
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/06—Clock generators producing several clock signals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/02—Digital computers in general; Data processing equipment in general manually operated with input through keyboard and computation using a built-in program, e.g. pocket calculators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C17/00—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
- G11C17/08—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards using semiconductor devices, e.g. bipolar elements
- G11C17/10—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards using semiconductor devices, e.g. bipolar elements in which contents are determined during manufacturing by a predetermined arrangement of coupling elements, e.g. mask-programmable ROM
- G11C17/12—Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards using semiconductor devices, e.g. bipolar elements in which contents are determined during manufacturing by a predetermined arrangement of coupling elements, e.g. mask-programmable ROM using field-effect devices
Description
Die Erfindung bezieht sich auf eine in einem Halbleiter-Chip
integrierte elektronische Datenverarbeitungsanordnung
nach dem Oberbegriff des Patentanspruchs 1.
Eine Anordnung dieser Art ist aus der DE-OS 22 35 430 bekannt.
Diese Anordnung weist zwei Gruppen von Ausgängen 1
bis D11 und SA bis SJ sowie eine Gruppe von Eingängen, nämlich
Tastenfeldeingänge mit vier Leitungen KN, KO, KP und KQ
auf. Die zwei Gruppen von Ausgängen stehen dabei miteinander
in Beziehung, so daß es nicht möglich ist, über eine Gruppe
von Ausgängen unabhängig von der anderen Gruppe Signale abzugeben.
Eine solche Gruppe einander zugeordneter Ausgänge
kann zwar in einer Datenverarbeitungsanordnung nützlich sein,
jedoch ist die Anwendung eines Halbleiter-Chips, der diese
Art von Ausgängen aufweist, für andere Zwecke eingeschränkt.
Die Eingänge KN, KO, KP und KQ der bekannten Anordnung werden
einer Abtastprozedur unterzogen, damit jeweils festgestellt
wird, ob eine Taste des Tastenfeldes gedrückt ist,
und es wird dann außerdem festgestellt, welche Taste gedrückt
ist. Diese Gruppe von Eingängen erlaubt keine direkte Dateneingabe
in ein Rechenwerk oder in einen Speicher, so daß die
Anordnung hinsichtlich ihrer Eingänge Beschränkungen unterworfen
ist.
Der Erfindung liegt die Aufgabe zugrunde, eine in einem einzigen
Halbleiter-Chip untergebrachte Datenverarbeitungsanordnung
zu schaffen, die sich durch eine große Vielseitigkeit
hinsichtlich von Eingabe- und Ausgabebedingungen auszeichnet
und damit für verschiedene Arten von Rechnern eingesetzt
werden kann.
Diese Aufgabe wird gemäß der Erfindung mit den im Kennzeichen
des Patentanspruchs 1 angegebenen Merkmalen gelöst.
Bei Anwendung der erfindungsgemäßen Datenverarbeitungsanordnung
ist es möglich, die Eingangs- und Ausgangsanschlüsse so
zu konfigurieren, daß sie völlig unabhängig voneinander für
Datenübertragungszwecke aus der Anordnung heraus und in die
Anordnung hinein zur Verfügung stehen. Beispielsweise ist es
möglich, in die Datenverarbeitungsanordnung Daten einzugeben,
die von einem weiteren Prozessor und nicht von einem Tastenfeld
kommen.
Vorteilhafte Weiterbildungen der Erfindung sind in den Unteransprüchen
gekennzeichnet.
Die Erfindung wird nun an Hand der Zeichnung beispielshalber
erläutert. Es zeigt
Fig. 1 eine perspektivische Ansicht eines kleinen, in der
Hand zu haltenden Rechners, in dem die erfindungsgemäße
Anordnung angewendet werden kann,
Fig. 2 ein Blockschaltbild der Anordnung des Rechners von
Fig. 1,
Fig. 3 ein genaues Blockschaltbild der elektronischen
Anordnung nach der Erfindung und insbesondere
des digitalen Prozessor-Chips 15 von Fig. 2,
Fig. 4 ein Zeitdiagramm, in dem die in der Anordnung von
Fig. 3 angewendeten Taktspannungen über der Zeit
aufgetragen sind,
Fig. 5 ein genaues elektrisches Schaltbild des Direktzugriffspeichers
25, des Seitendecodierers 29 des Direktzugriffspeichers
und des Schreibsteuerwerks 70 des
Direktzugriffspeichers von Fig. 3,
Fig. 6 ein genaues Logikdiagramm des Addierers 50, des
Addierereingabewählers 51, des Akkumulators 52 und
des Y-Registers 40 des Direktzugriffspeichers von
Fig. 3,
Fig. 7 ein genaues Logikdiagramm, des von einem steuerbaren
Logikfeld gebildeten Steuerwerks 60 von Fig. 3,
Fig. 8 ein genaues Logikdiagramm der Zustandslogik 66 von
Fig. 3,
Fig. 8a ein genaues elektrisches Schaltbild einer zusammengesetzten
Verknüpfungsschaltung 66-1 von Fig. 8,
Fig. 9 ein genaues Logikdiagramm des Programmzählers 36
und des Unterprogrammregisters 43 der Anordnung von
Fig. 3,
Fig. 10 ein genaues Logikdiagramm des Seitenadreßregisters
46 und des Adreßpuffers 47 von Fig. 3,
Fig. 11 ein genaues Logikdiagramm des Adreßsteuerwerks 48
und der Tastenfeldeingabe 75 der Anordnung von Fig. 3,
Fig. 12 ein genaues Logikdiagramm der CKB-Logik 56 von Fig. 3,
Fig. 12a ein genaues elektrisches Schaltbild einer der
zusammengesetzten Verknüpfungsschaltungen 56-8
von Fig. 12,
Fig. 13 ein genaues Logikdiagramm des Seitenadreßregisters
73 für den Direktzugriffspeicher in der Anordnung
von Fig. 3,
Fig. 14 ein genaues elektrisches Schaltbild des Festspeichers
24 und des Seitendecodierers für den
Festspeicher in der Anordnung von Fig. 3,
Fig. 15 ein genaues elektrisches Schaltbild des für den Festspeicher
und den Direktzugriffspeicher vorgesehenen
Wortadressendecodierers 27 und des Datenwählers 39
der Anordnung von Fig. 3,
Fig. 16 ein genaues elektrisches Schaltbild des Ausgaberegisters
84 und des Ausgabepuffers 86 der Anordnung
von Fig. 3,
Fig. 17 ein genaues elektrisches Schaltbild des Ausgaberegisters
62 und des Ausgabepuffers 65 der Anordnung
von Fig. 3,
Fig. 18 ein genaues Logikdiagramm der Einschaltlöschschaltung
82 von Fig. 3,
Fig. 19 ein genaues Logikdiagramm der Rückübertragungsschaltung
für den Programmzähler 36 der Anordnung
von Fig. 3,
Fig. 20 ein Blockschaltbild des Taktgenerators 80 von Fig. 3,
Fig. 21a bis 21j genaue elektrische Schaltbilder der in den
Fig. 5 bis 20 verwendeten Verknüpfungsschaltungen,
Fig. 22 eine Darstellung des in der erfindungsgemäßen
Anordnung angewendeten Befehlsworts,
Fig. 23 eine Karnaugh-Tafel der typischerweise in der
erfindungsgemäßen Anordnung verwendeten Befehlswörter,
Fig. 24 ein Zeitdiagramm zur Veranschaulichung mehrerer
Befehlszyklen beim Betrieb der Anordnung nach den
Fig. 1 bis 21,
Fig. 25 eine schematische Darstellung der Zeitsteuerung
verschiedener Ereignisse in der Anordnung nach
den Fig. 1 bis 21 und
Fig. 26 eine stark vergrößerte Draufsicht auf einen MOS/
LSI-Halbleiter-Chip, der die gesamte Schaltung der
Anordnung der Fig. 3 und 5 bis 21 enthält.
Der in Fig. 1 dargestellte kleine elektronische Rechner,
bei dem der zu beschreibende digitale Prozessor verwendet
werden kann, enthält ein Gehäuse 10 aus gepreßtem Kunststoff
oder dergleichen mit einem Tastenfeld 11 und einer
Anzeigeeinheit 12. Das Tastenfeld enthält Zifferntasten 0
bis 9, eine Dezimalpunkttaste, mehrere Standardoperationstasten
wie +, -, =, ×, ÷, C (Löschen), usw. In einer bevorzugten
Ausführungsform ist die Rechenanordnung so ausgelegt,
daß sie wissenschaftliche Funktionen ausführt,
so daß im Tastenfeld 11 auch Tasten wie EE (Exponenteingabe)
, x₂, , yx, sin, cos, tan, log, usw. enthalten
sein können. Abhängig von der Programmierung können
auch weitere Funktionen enthalten sein. Die Anzeigeeinheit
12 kann beispielsweise 6 bis 12 Ziffernstellen mit 7-Segment-
Darstellung aufweisen, und es können der Dezimalpunkt
und möglicherweise Kommas sowie auch zwei Stellen auf
der rechten Seite für Exponenten oder die wissenschaftliche
Zahlendarstellung vorgesehen sein. Die Anzeigeeinheit kann
beispielsweise aus Leuchtdioden, einer Gasentladungsplatte
oder aus Flüssigkeitsvorrichtungen bestehen. Der Rechner
ist eine in sich abgeschlossene Einheit mit einer Stromversorgung
in Form einer oder mehrerer Batterien im Gehäuse 10,
obgleich auch ein Netzanschlußgerät oder auch ein Batterieladegerät
angeschlossen werden kann.
Im wesentlichen alle elektronischen Schaltungen der Rechenanordnung
sind in einem in großem Maßstab integrierten Halbleiter-
Chip enthalten, der typischerweise in einem Kunststoffgehäuse
mit 28 Anschlußstiften eingebaut und im
Gehäuse 10 auf einer gedruckten Schaltungsplatte befestigt
ist. Die allgemeine Organisation der Rechenanordnung ist
im Blockschaltbild von Fig. 2 zu erkennen, in dem das Tastenfeld
11 und die Anzeigeeinheit 12 in ihrer Verbindung mit
dem Halbleiter-Chip 15 dargestellt sind. Die Eingabe in
den Chip erfolgt über vier K-Leitungen 16, die mit K1, K2,
K4 und K8 bezeichnet sind, sowie über eine Löschtaste KC.
Die Ausgänge aus dem Chip enthalten 8 Segmentausgänge 17,
die an gemeinsame Segmente der Anzeigeeinheit 12 angeschlossen
sind. Alle gleichen Segmente in jeder der
Ziffernstellen der Anzeigeeinheit sind miteinander
verbunden, so daß nur acht Segmentausgänge benötigt
werden. Die Ziffernstellen der Anzeigeeinheit 12
werden über Ausgangsleitungen 18 angesteuert, die mit
D0 bis D11 bezeichnet sind, wobei zur Erzielung geeigneter
Spannungs- und Stromwerte für die bestimmte Anzeigeeinheit
Stellentreiber 19 verwendet werden. Abhängig von
der Zahl der Stellen der Anzeigeeinheit kann die Anzahl
der Ausgangsleitungen 18 irgendeine Anzahl bis zu 13 sein.
Wie zu erkennen ist, werden die Anzahl der Ziffernstellen
der Anzeigeeinheit 12, die Anzahl der K-Leitungen 16, die
für das Tastenfeld benötigt wird, mit oder ohne die
Hardware-Löschtaste KC sowie die gewünschte Anzahl von
Anschlußstiften des Gehäuses für eine spezielle Ausführung
optimiert. Die Ausgangsleitungen 18 sind auch an die Matrix
der Tastenschalter angeschlossen, die das Tastenfeld 11
bilden. Unter der Annahme, daß dreizehn Ausgangsleitungen
18 vorhanden sind, enthält die Matrix maximal 13×4 oder
52 Kreuzungspunkte, so daß 52 mögliche Tastenpositionen
(einschließlich der Taste KC) vorhanden sind, von denen
für eine gegebene Ausführung nicht alle benutzt werden.
Bei einem Rechner, der nur die minimale Anzahl von Funktionen
ausführen kann, würden bei einem Tastenfeld mit
den Tasten "x", ÷", "+", "-", "=", "C", ".", "0-9"
nur siebzehn Tasten benötigt. Weitere Eingabe/Ausgabe-
Stifte des Chips 15 sind ein Löschtasteneingang KC,
der für die Löschfunktion (C) verwendet werden kann,
eine Versorgungsspannungsleitung 20 (Vdd), ein Massestift
21 (Vss) sowie zwei Oszillatoreingangs- und -Ausgangsstifte
22 bzw. 23, die die verschiedenen Möglichkeiten
des auf dem Chip untergebrachten Oszillators steuern.
Üblicherweise sind die Stifte 22 und 23 miteinander
verbunden und ein Widerstand ist zwischen die Stifte
und die die Spannung Vdd führende Versorgungsspannungsleitung
eingeschaltet, damit die Frequenz eines internen
Taktgenerators eingestellt wird. Eine größere Genauigkeit
ergibt sich durch Anschließen eines Kondensators an
Masse. Damit einer der Chips 15 von einem anderen synchronisiert
werden kann, sind die Stifte 22 und 23 nicht verbunden,
sondern das externe Synchronisierungssignal vom
Ausgangsstift 23 des anderen Chips wird an den Eingangsstift
22 des angesteuerten Chips angelegt. Eine typische
Taktfrequenz beträgt 500 kHz.
Für eine elfstellige Anzeige kann daher ein Standard-IC-
Gehäuse mit 28 Anschlußstiften verwendet werden. Es ist
offensichtlich, daß die 44 Tastenschalter, die 11 Stellen
und die 8 Segmente pro Stelle eine größere Anzahl von
Anschlußstiften erfordern würden, wenn alle Eingabe/Ausgabe-
Verbindungen direkt ausgeführt würden, so daß ein Zeitmultiplexbetrieb
der Tastenfeld- und Anzeige-Ein/Ausgabe
in der in der Patentanmeldung P 22 35 430.9 angegebenen
Weise erforderlich ist. Vierundzwanzig Leitungen in den
Gruppen 16, 17 und 18 ergeben das Äquivalent von 44+11×8
oder 132 Verbindungen.
Der Chip 15 kann wie ein digitaler Mehrzweckprozessor eine
Vielzahl von Funktionen ausführen. Wenn er als Rechner
gemäß den Fig. 1 und 2 eingesetzt wird, empfängt er über
das Tastenfeld eingegebene Signale an den Leitungen 16,
führt Funktionen wie Addition, Subtraktion, Multiplikation,
Division, Quadratwurzelbildung usw. mit den eingegebenen
Daten entsprechend der Auswahl durch Funktionstasten
aus und gibt die Ergebnisse an die Anzeigeeinheit 12 ab.
Das zur Durchführung dieser Funktionen notwendige elektronische
System ist in einem MOS/LSI-Halbleiter-Chip verwirklicht,
der über 8800 MOS-Transistoren auf einem
Siliziumplättchen von weniger als 5×5 mm (0,2×0,2 inch)
enthält. Der Chip kann in großen Stückzahlen bei Stückkosten
von wenigen Dollars hergestellt werden, was einen
Rechner mit sehr anspruchsvollen Funktionen ermöglicht,
der zu einem Preis im Bereich von 20 bis 30 Dollars verkauft
werden kann.
Ein Blockschaltbild der auf dem Chip 15 hergestellten Anordnung
ist in Fig. 3 dargestellt. Die Anordnung ist um einen Festspeicher
24 (anschließend abgekürzt auch ROM genannt) und
einen Direktzugriffspeicher 25 (nachfolgend abgekürzt auch
RAM genannt) gruppiert. Der Festspeicher 24 enthält 1024
Befehlswörter zu je 8 Bits. Er wird zum Speichern des
Programms verwendet, das die Anordnung betätigt. Der
Direktzugriffspeicher 25 enthält 256 Speicherzellen,
die softwaremäßig als vier 16-stellige Gruppen mit vier
Bits pro Stelle organisiert sind. Im Direktzugriffspeicher 25
werden über das Tastenfeld eingegebene numerische Daten
zusammen mit Zwischen- und Endergebnissen von Berechnungen
sowie Zustandsinformationen oder Kennzeichen, die Dezimalpunktposition
und andere Arbeitsdaten gespeichert. Der
Direktzugriffspeicher arbeitet als Arbeitsregister der
Rechenanordnung, obgleich er vom Standpunkt der Hardware
aus nicht als getrennte Register organisiert ist, wie es
der Fall wäre, wenn Schieberegister oder dergleichen für
diesen Zweck verwendet würden. Der Direktzugriffspeicher
wird von einer Wortadresse an den Leitungen 26 mittels
einer kombinierten ROM- und RAM-Wortadressencodierschaltung
27 adressiert, d. h., es wird eine aus 16 Wortleitungen
im Direktzugriffspeicher ausgewählt. Eine von vier "Seiten"
des Direktzugriffspeichers wird von einem Adressensignal
an zwei Leitungen 28 ausgewählt, das an einen RAM-Seitenadressencodierer
29 im Direktzugriffspeicher angelegt
wird. Mit einer gegebenen Wortadresse an den Leitungen 26
und einer Seitenadresse an den Leitungen 28 erfolgt ein
Zugriff auf vier bestimmte Bits, die an RAM-Eingabe/Ausgabe-
Leitungen 30 über die Eingabe/Ausgabe-Schaltung 31 zu den
RAM-Leseleitungen 32 ausgegeben werden. Andererseits werden
Daten über die Eingabe/Ausgabe-Schaltung 31 und die
Leitungen 30 in den Direktzugriffspeicher 25 geschrieben.
Die gleichen sechzehn Leitungen 26, die als RAM-Wortadressenleitungen
verwendet werden, werden auch zur
Erzeugung der Anzeige- und Tastenfeldabtastung über die
Leitungen 18 verwendet; zu diesem Zweck durchlaufen die
Leitungen 26 den Direktzugriffspeicher 25, und sie sind an
Ausgaberegister und an Puffer angeschlossen, wie noch
erläutert wird.
Der Festspeicher 24 erzeugt während jedes Befehlszyklus
an den ROM-Ausgangsleitungen 33 ein aus acht Bits bestehendes
Befehlswort (wobei die Bits des Befehlsworts mit R0 bis R7
bezeichnet sind). Der Befehl wird aus den 8192 Bitspeicherplätzen
im Festspeicher ausgewählt, die in 1024 Wörtern
zu je acht Bits organisiert sind. Die Wörter sind in sechzehn
Gruppen oder Seiten zu je 64 Wörtern unterteilt. Zum
Adressieren des Befehls im Festspeicher werden eine 1-aus-
64-RAM-Wortadresse an den Leitungen 34 und eine 1-aus-
16-RAM-Seitenadresse an den Leitungen 35 benötigt. Die
ROM-Wortadresse an den Leitungen 34 wird vom gleichen
Decodierer 27 erzeugt, der auch zur Erzeugung der RAM-
Wortadresse an den Leitungen 26 verwendet wird. Die ROM-
Wortadresse ist eine 6-Bit-Adresse und wird in einem Programmzähler
36 erzeugt, der aus einem sechsstufigen Schieberegister
besteht, das nach jedem Befehlszyklus aktualisiert
werden kann und in das über die Leitungen 37 von den ROM-
Ausgangsleitungen 33 zur Durchführung einer Aufruf-
oder Verzweigungsoperation eine 6-Bit-Adresse geladen
werden kann. Der RAM- und ROM-Wortadressendecodierer 27
empfängt eine codierte 6-Bit-Adresse an den Leitungen 38
aus dem Decodierdatenwähler 39, der zwei Eingänge aufweist.
Der Decodierdatenwähler 39 kann eine 4-Bit-Adresse aus
dem RAM-Y-Register 40 über die Leitungen 41 oder eine
6-Bit-Adresse aus dem Programmzähler 36 über die Leitungen
42 empfangen. Dem Programmzähler 36 ist ein 6-Bit-Unterprogrammregister
43 so zugeordnet, daß es als Zwischenspeicher
für das Rückkehradressenwort im Verlauf von
Unterprogrammoperationen dient. Im Register 43 wird über
die Leitungen 44 eine 6-Bit-Adresse abgespeichert, wenn
ein Aufrufbefehl ausgelöst wird, so daß diese gleiche
Adresse über die Leitungen 45 wieder in den Programmzähler
46 zurückgeladen werden kann, wenn das Unterprogramm,
das an der Aufrufspeicherstelle beginnt, beendet
worden ist; dies bewirkt die Erhaltung der Befehlswörter
und macht das Programmieren flexibler. Die ROM-Seitenadresse
an den Leitungen 35 wird in einem Seitenadreßregister 46
erzeugt, dem für Unterprogrammzwecke ein Pufferregister 47
zugeordnet ist. Das Register 46 enthält stets die laufende
Seitenadresse für den Festspeicher, und es übt einen direkten
Zugriff auf den ROM-Seitendecodierer aus. Das Pufferregister
47 ist ein Mehrfunktions-Puffer- und Zwischenspeicherregister,
dessen Inhalt die derzeitige ROM-Seitenadresse, eine andere
ROM-Seitenadresse oder die Rückkehrseitenadresse während
Unterprogrammoperationen sein kann. Der Programmzähler, das
Unterprogrammregister und die ROM-Seitenadressierung erfolgen
unter der Steuerun durch die Steuerschaltung 48, die über
die Leitungen 49 Eingangssignale von den ROM-Ausgangsleitungen
33 empfängt. Die Steuerschaltung 48 bestimmt, ob Verzweigungen
und Aufrufe an "Zustands"-Operationen oder Unterprogrammoperationen
durchgeführt werden, sie verursacht das Laden
eines Befehlsworts in den Programmzähler und oder das
Seitenadreßregister, sie steuert die Übertragung von Bits
in die Unterprogramm- oder Pufferregister und wieder zurück,
sie steuert das Aktualisieren des Programmzählers, usw.
Numerische Daten und andere Informationen werden in der
Anordnung von einem Binäraddierer 50 verarbeitet, der ein
mit einer vorgeladenen Übertragschaltung ausgestatteter bit-
paralleler Addierer ist, der binär arbeitet und eine mit
Mitteln der Software erzielte BCD-Korrektur aufweist. Die
Eingabe in den Addierer 50 wird von einem Eingabewähler 51
bestimmt, der von mehreren Quellen 4-Bit-Paralleleingaben
empfängt und aus diesen auswählt, welche Eingaben an den
Addierer angelegt werden. Eine der Alternativen sind die
Speicherlese- oder Speicheraufrufleitungen 32 aus dem
Direktzugriffspeicher 25. Zwei Register empfangen die Ausgangssignale
des Addierers; diese Register sind das RAM-Y-Register 40
und ein Akkumulator 52, wobei jedes dieser Register Ausgangsleitungen
aufweist, die getrennt als Eingangsleitungen 53 und 54
an den Eingabewähler 51 angeschlossen sind. Ein vierter Eingang
55 empfängt ein Ausgangssignal von der "Konstanten-Tastenfeld-
Bit"-Logik (nachfolgend abgekürzt CKB-Logik genannt) wie noch
erläutert wird. Die Addiereingabe wird also aus den folgenden
Quellen ausgewählt: Dem Direktzugriffspeicher 25
über Leitungen 32, dem Akkumulator 52 über Leitungen 53,
dem RAM-Y-Register 40 über Leitungen 54 und der Konstanten-
Tastenfeld-oder Bit-Information aus der CKB-Logik 56 über
Leitungen 55. Positive und negative Eingangssignale für
den Addierer 50 an den Leitungen 57 und 58 werden vom
Eingabewähler 51 erzeugt.
Die Ausgangsdaten des Addierers 50 werden über die Leitungen 59
entweder dem RAM-Y-Register 40 oder dem Akkumulator 52 zugeführt,
oder sie werden diesen beiden Einheiten gemeinsam zugeführt.
Alle Operationen des Addierers 50 und seines Eingabewählers
51 usw., werden von einem von einem steuerbaren Logikfeld
(PLA) gebildeten Datenwegsteuerwerk 60 gesteuert,
das abhängig von dem Befehlswort an den Leitungen 33 aus dem
Festspeicher arbeitet. Die Steuerausgänge 61 des Steuerwerks 60
sind mit gestrichelten Linien angegeben. Die 4-Bit-Ausgangsdaten
des Akkumulators können über Leitungen 53 an einen
Akkumulatorausgabepuffer 62 und somit an einen Segmentdecodierer
63 zur Ausgabe aus der Anordnung angelegt werden. Der Segmentdecodierer
63 ist ein programmierbares Logikfeld, wie es in
der DE-OS 22 35 430 beschrieben ist; er erzeugt
an den Leitungen 64 bis zu 8 Segmentausgangssignale, die an
eine Gruppe von 8 Ausgangspuffern 65 angelegt. werden. Die
Ausgabeeinheit enthält im Ausgabepuffer 62 einen Speicher,
so daß eine Ausgabestelle für mehr als die Dauer eines
Maschinenzyklus festgehalten werden kann. Die Ausgabe erfolgt
unter der Steuerung durch das Datenwegsteuerwerk 60, das abhängig
vom Befehlswort an den Leitungen 33 aus dem Festspeicher
arbeitet.
Eine Zustandslogik 66 übt die Funktion der Prüfung auf
Übertrag oder Gleichheit am Addierer 50 aus, und sie
bestimmt, ob eine Verzweigung oder ein Aufruf stattzufinden
hat. Zu diesem Zweck erfolgen Eingaben aus dem Addierer 50
über die Leitungen 67 und aus dem Datenwegsteuerwerk 60
über die Leitungen 61. Die Zustandslogik 66 enthält eine
Halteschaltung, die Ausgangssignale an Leitungen 69
zum Akkumulatorausgabepuffer 62 erzeugt. Diese Ausgangssignale
können über den Segmentdecodierer 63 in vielfältiger
Weise decodiert werden. Sie können zur Anzeige des Dezimalpunkts
DPT und zur Auswahl zweistelliger Codegruppen
wie 7-Segment- oder BCD-Codegruppen aus dem gleichen
programmierbaren Logikfeld verwendet werden. Für den
Dezimalpunkt DPT würde an einem Speicherplatz im Direktzugriffspeicher
25 eine BCD-Codegruppe der gewünschten
Dezimalpunktstelle gespeichert und im Addierer 50 mit der
gerade betätigten D-Leitung 18 verglichen, die im RAM-
Y-Register 40 definiert ist; bei Übereinstimmung wird
die Zustandshalteschaltung gesetzt und der Dezimalpunkt DPT
wird an der Anzeigeeinheit für diese Ziffernstelle angezeigt.
Außerdem kann die Zustandshalteschaltung dazu verwendet
werden, BDC-Datenausgangssignale an bestimmten Leitungen 17
und Steuerausgangssignale an anderen Leitungen 17 gegeneinander
abzugrenzen.
Ein RAM-Schreibsteuerwerk 70 bestimmt, welche Daten wann
im Direktzugriffspeicher 25 über das Eingabe/Ausgabe-
Steuerwerk 31 und die Leitungen 30 geschrieben oder
gespeichert werden. Dieses RAM-Schreibsteuerwerk 70
empfängt Eingangsdaten entweder über die Leitungen 53 vom
Akkumulator 52 oder über die Leitungen 55 aus der CKB-
Logik 56; es erzeugt Ausgangsdaten an Leitungen 71, die
zum RAM-Eingabe/Ausgabe-Steuerwerk 31 führen. Die Auswahl
dessen, was in den Direktzugriffspeicher geschrieben wird,
erfolgt mittels des Befehlsworts an den Leitungen 33 über
das Datenwegsteuerwerk 60 und die Befehlsleitungen 61. Ein
wichtiges Merkmal der Anordnung besteht darin, daß
Konstante oder Tastenfeldinformationen aus der CKB-Logik 56
ebenso wie Ausgangsdaten des Addierers über den Akkumulator
in den Direktzugriffspeicher über das Schreibsteuerwerk 70
geschrieben werden können, und daß ferner die CKB-Logik 56
dazu verwendet werden kann, das Setzen und Rücksetzen
von Bits im Direktzugriffspeicher über das Schreibsteuerwerk 70
zu steuern.
Die RAM-Seitenadresse, in die die Daten geschrieben werden,
wird von zwei Bits des Befehlsworts an den Leitungen 33
bestimmt, die über die Leitungen 72 einem RAM-Seitenadreßregister
73 und somit den die RAM-Seite auswählenden
Leitungen 28 zugeführt werden. Das RAM-Wort oder die
Y-Adresse werden natürlich von den Inhalten des RAM-Y-
Registers 40, des Datenwählers 39 und des Decodierers 27
ausgewählt.
Die vier Tastenfeldeingangsdaten 16 erscheinen an den
Leitungen 75, von denen aus eine Eingabe in die CKB-Logik 56
vorgesehen ist. Im Normalbetrieb gelangt ein Tastenfeldeingangssignal
über die CKB-Logik 56 zum Akkumulator 52 oder
zum RAM-Y-Register 40, von wo aus es mittels der Software
oder der Festspeicherprogrammierung geprüft wird. Bei der
Herstellung der Halbleiter-Chips ist ein Prüfbetrieb möglich,
bei dem Tastenfeldeingangssignale an den Leitungen 75 direkt
in das ROM-Seitenadreßregister 46 eingegeben werden können,
wie noch erläutert wird. Ebenso können während der Hardware-
Löschung unter Verwendung des KC-Eingangs die Signale an den
K-Leitungen in des Seitenadreßregister eingegeben werden;
in Fällen, in denen die Anordnung nicht als Rechner eingesetzt
wird, kann ein Signal an einer K-Leitung als ein
Unterbrechungssignal verwendet werden.
Im Halbleiter-Chip 15 ist auch ein Taktgenerator 80
enthalten, der intern eine Grundtaktfrequenz von etwa
600 kHz oder weniger und aus dieser 5 Taktsignale ϕ1 bis
ϕ5 erzeugt, die in der gesamten Anordnung angewendet
werden. Eine Einschaltlöschschaltung 82 erzeugt Steuersignale,
die den Rechner löschen, wenn die Versorgungsenergie
eingeschaltet wird. Dies kann auch über den
KC-Eingang mit einem externen Kondensator ergänzt
werden.
Die zum Abtasten des Tastenfeldes und der Anzeigeeinheit
verwendeten Signale an den Ausgangsleitungen 18 des Chips
15 werden von der RAM-Wortadresse an den Leitungen 26
mittels des Ausgaberegisters 84 erzeugt, das unter der
Steuerung durch Signale an den Leitungen 61 geladen wird,
wie es von den RAM-Wortleitungen 26 adressiert wird. Die
Ausgangsdaten aus dem Ausgaberegister 84 werden über die
Leitungen 85 einer Gruppe von Ausgabepuffern 86 zugeführt.
Es sind zwar 16 Ausgänge möglich, doch werden in einer
typischen Ausführung eines Rechners möglicherweise nur
9 bis 13 als Ausgänge vorgesehen, beispielsweise 8 Ziffernstellen
für Mantissen, zwei für Exponenten und zwei für
Zeichen wie das Minuszeichen für Mantisse und Exponent.
Es ist wichtig, daß das Ausgaberegister 84 ein Register
mit wahlfreiem Zugriff ist, bei dem alle Bits einzeln,
unabhängig und gegenseitig ausschließlich adressiert
werden können. In der vorliegenden Ausführungsform sind
nur 13 Stufen im Register 84 vorgesehen, so daß nur
die ersten 13 der 16 Adressenleitungen 26 verwendet
werden. Wenn eines der 12 Bits im Register 84 vom Decodierer
27 adressiert wird, kann dieses Bit entsprechend den Steuersignalen
an den Leitungen 61 aus dem Datenwegsteuerwerk,
d. h. aus dem laufenden Befehlswort, entweder gesetzt oder
rückgesetzt werden. Das Bit bleibt gesetzt oder rückgesetzt,
bis es wieder speziell adressiert und geändert wird; zwischenzeitlich
können ein oder alle anderen Bits in jeder Reihenfolge
adressiert und gesetzt oder rückgesetzt werden. Es
ist daher möglich, jede Kombination von D-Register-Bits
zu setzen oder rückzusetzen, was an den Ausgangsleitungen 18 2¹³
oder 8192 Codekombinationen ergibt. Während des Einschaltens
oder einer Hardware-Löschung werden alle Bits
im Register 84 unbedingt rückgesetzt.
Wie das Ausgaberegister 84 ist auch das andere Ausgaberegister
62 insofern statisch, als sein Inhalt nach der
Eingabe bis zu einer absichtlichen Änderung unverändert
bleibt. Das Akku-Pufferregister 62 arbeitet als Ausgangsdatenpuffer,
während der Akkumulator 52 und die Zustandslogik
66 zur Bildung der nächsten Ausgangsdaten betätigt
werden. Das Ausgaberegister 84 ist ein ebensolcher Puffer
zum Ausgeben des Inhalts des Y-Registers 40, doch hat
es das zusätzliche Merkmal der vollständig freien
Zugänglichkeit. Dem Y-Regiser 40 stehen die folgenden
Datenquellen zur Verfügung: Eine im Festspeicher 24 als
Teil eines Befehlsworts gespeicherte 4-Bit-Kontante,
der Inhalt des Akkumulators 52, der über den Eingabewähler
51 und den Binäraddierer 50 zum Y-Register 40 übertragen
wird, und direkt aus dem Direktzugriffspeicher 25
stammende Daten. Wenn einmal Daten im Y-Register 40 abgespeichert
sind, können sie durch zusätzliche Befehle
wie "Erhöhen" oder "Erniedrigen" bearbeitet werden.
In Fig. 4 ist ein Zeitdiagramm des Verlaufs der im Halbleiter-
Chip 15 von Fig. 3 verwendeten Taktspannungen dargestellt.
Der grundlegende Maschinenzyklus, der auch als
Befehlszyklus bezeichnet wird, ist ein Intervall 90, das
aus sechs Teilintervallen 91 bis 96 besteht, von denen
jedes die Nenndauer von zwei oder mehr Mikrosekunden
hat, so daß der Befehlszyklus 90 die Dauer von 12 Mikrosekunden
oder mehr hat. Wie aus dem Diagramm zu erkennen
ist, sind die Taktphase ϕ1 für die Dauer der Teilintervalle 92
und 93, die Taktphase ϕ2 für die Dauer der Teilintervalle 95
und 96, die Taktphase ϕ3 für die Dauer der Teilintervalle 93,
94 und 95 und die Taktphase ϕ5 für die Dauer des Teilintervalls
94 vorhanden. Der Grundtakt ϕ, aus dem die Taktphasen
ϕ1 bis ϕ5 im Taktgenerator 80 abgeleitet werden, ist als
Bezugsgröße dargestellt.
In Fig. 5 ist der Direktzugriffspeicher 25 mit seinem
Eingabe/Ausgabe-Steuerwerk dargestellt. Der Direktzugriffspeicher
25 besteht aus einem Feld aus 256 Zellen 100,
von denen jede eine Speicherzelle mit Selbstauffrischung
ist. Das Feld ist in einer 16×4×4-
Anordnung organisiert, in der 16 Adressenleitungen 26 die
RAM-Y-Adressierungsfunktion übernehmen; das bedeutet, daß
die 4-Bit-Kennzeichnung, die üblicherweise im RAM-Y-
Register 40 enthalten ist, vom Decodierer 27 zur Auswahl
einer der 16 Leitungen 26 decodiert wird. Diese Leitungen
sind mit 26-0 bis 26-15 bezeichnet, und sie repräsentieren
die Signale D0 bis D15. Das Feld des Direktzugriffspeichers
25 enthält auch 16 Daten-Eingabe/Ausgabe-Leitungen 101,
die mit 101-1 bis 101-16 bezeichnet sind; diese Leitungen
sind in vier Gruppen zu je vier angeordnet, wobei die
Leitungen 101-1 bis 101-4 eine Gruppe bilden, usw. Die
von zwei Bits gebildete RAM-X-Adresse an den Leitungen 28
wählt aus den vier Leitungen der Leitungsgruppen 101-1
bis 101-4, usw., in jeder Gruppe eine Leitung aus, und
sie bewirkt das Verbinden der vier einzeln jeweils aus
einer Gruppe ausgewählten Leitungen mit vier Eingabe/
Ausgabe-Leitungen 30-1, 30-2, 30-4 und 30-8, die den
1-, 2-, 4- und 8-Leitungen für eine von vier Bits
gebildete BCD-Codegruppe entsprechen. Es sei bemerkt,
daß der Einfachheit halber in Fig. 5 nur einige der
Speicherzellen 100 und nur einige stellvertretende
Adressierungs- und Eingabe/Ausgabe-Leitungen dargestellt
sind; die Leitungen für die Taktsignale ϕ1 und ϕ5, die
für jede Zelle des Feldes benötigt werden, sind in dieser
Figur auch nicht dargestellt.
Der RAM-Seitendecodierer 29 besteht aus vier gleichen
Gruppen von Transistoren 102, die die nicht invertierten und
die invertierten RAM-X-Adressensignale von den Leitungen 28
empfangen und Übertragungswege so freigeben, daß nur
eine der Leitungen 101 in jeder Vierergruppe mit der entsprechenden
der Leitungen 30 verbunden wird. Wenn an
den Leitungen 28 die Codegruppe "01" anliegt, dann würden
die Leitungen 101-1, 101-5, 101-9 und 101-13 mit den
Leitungen 30-1, 30-2, 30-4 bzw. 30-8 verbunden. Die
Codegruppe "11" würde die Leitungen 101-2, 101-14 usw.
auswählen.
Die RAM-Eingabe/Ausgabe-Schaltung 31 ist aus vier
Gruppen 31-1 . . . 31-8 zusammengesetzt, von denen jede
das Lesen oder Schreiben eines Bits steuert. Jede der
Leitungen 30 ist an eine der Schreibleitungen 71 über
einen von vier Serientransistoren 103 angeschlossen,
die mit dem Taktsignal ϕ3 getaktet werden, so daß Daten
die Leitungen 30 zum Schreiben während des bedeutsamen
Teilintervalls des Taktsignals ϕ5 erreichen, wenn es
an der ausgewählten Leitung 101 vorhanden sein muß. Wie
aus Fig. 4 zu erkennen ist, hat das Taktsignal ϕ3 eine
längere Dauer als sie für diesen Zweck benötigt wird.
Von Transistoren 104, die mit dem Taktsignal ϕ2 getaktet
werden, werden die Leitungen 30 an Masse Vss gelegt,
so daß zu Beginn jedes Zyklus alle Eingabe/Ausgabe-
Leitungen 101 an Masse Vss oder auf den Signalwert "1"
liegen. Für die Dauer des Taktsignals ϕ1 werden Daten
aus 16 ausgewählten Zellen 100 zu den Leitungen 101 ausgelesen,
und die Signale an vier ausgewählten Leitungen 101
werden dann für die Dauer dieses Taktsignals ϕ1 zu den
vier Leitungen 30-1 . . . 30-8 gelesen. Zum Lesen gelangen
die Daten über Transistoren 105, die vom Taktsignal ϕ4
während der Dauer des Taktsignals ϕ1 getaktet werden,
zu den Gate-Elektroden der Transistoren 106. Transistoren
107 bewirken eine Vorladung der Ausgangsleitungen 32-1
bis 32-8 während der Dauer des Taktsignals ϕ2, und
die Ausgangsleitungen werden während der nächsten ϕ4
(ϕ1)-Dauer bedingt über die Transistoren 106 entladen.
Auf diese Weise erscheinen die ausgewählten Daten in
gültiger Form während des ϕ4 (ϕ1)-Teilintervalls 92
an den Lese- oder Aufrufleitungen 32-1 . . . 32-8. Während
des Teilintervalls 95 des Taktsignals ϕ4 werden die
Gate-Elektroden der Transistoren 106 über die Transistoren
104 und 105 an Masse Vss gelegt, wenn das Taktsignal ϕ2
ebenfalls den Einschaltzustand aufweist.
Die Leitungen 101 werden während der Dauer des Taktsignals
ϕ2 in den Teilintervallen 95 und 96 von
Transistoren 108 an Masse Vss gelegt, da diese Leitungen
vor dem Lesevorgang, der während des Teilintervalls 92
des nächsten Zyklus erfolgt, an Masse Vss liegen müssen.
Während des Takgsignals ϕ2 liegen alle Adressenleitungen
26 an Masse Vss; dies wird im Adressendecodierer 27 derart
bewirkt, daß eine Adresse oder die Spannung -Vdd nur während
des negierten Taktsignals an nur einer der Leitungen 27
vorhanden ist, während die Leitungen 26 zu allen anderen
Zeiten an Vss liegen. Zu einem Zeitpunkt kann jeweils nur
das Signal an einer Adressenleitung eingeschaltet sein.
Das RAM-Schreibsteuerwerk 70 enthält vier gleiche Schaltungen
70-1 . . . 70-8, von denen in Fig. 5 nur zwei dargestellt
sind; sie empfangen Eingangsdaten von Leitungen 53-1, 53-2,
53-4 und 53-8 aus dem Akkumulator 52 sowie vier Daten-
oder Steuereingangssignale von Leitungen 55-1, 55-2, 55-4 und 55-8
aus der CKB-Logik 56. Die Transistoren 109 werden von
der Spannung an einer Steuerleitung 110 gesteuert, wenn
an einer Ausgangsleitung 61-12 des Datenwegsteuerwerks 60
der Befehl "STO" erscheint. Dies kann nur dann gültig
sein, wenn das Taktsignal ϕ2 nicht auf dem Spannungswert -Vdd
liegt, wie durch eine Verknüpfungsschaltung 111 erreicht
wird. Die Transistoren 112 werden von der Spannung an
einer Steuerleitung 113 gesteuert, wenn ein CKM-Befehl
(ein Befehl zur Übertragung des Inhalts der CKB-Logik
zum Speicher) an einer weiteren Ausgangsleitung 61-11
des Steuerwerks 60 erscheint, was ebenfalls nur dann
gültig ist, wenn das Taktsignal ϕ2 über die Verknüpfungsschaltung
114 nicht den Spannungswert -Vdd hat. Mit Hilfe
der Transistoren 109 und 112 können die Daten an den
Akkumulatorausgangsleitungen 53 oder an den Ausgangsleitungen
55 der CKB-Logik in den Speicher eingegeben
werden. Die weitere CKB-Funktion ist ebenfalls im
Schreibsteuerwerk 70 verwirklicht. Die an den Steuerleitungen
61-17 und 61-18 als Ausgangssignale des Datenwegsteuerwerks
60 erscheindenen Signale und werden
an die Gate-Elektroden der Transistoren 115 und 116 angelegt,
damit Spannungen mit den Signalwerten "1" bzw.
"0" (Vss bzw. Vdd) erzeugt werden. Die in Serie zu den
Transistoren 115 und 116 geschalteten Transistoren 117,
die von Signalen an den Ausgangsleitungen 55 der CKB-
Logik gesteuert werden, ermöglichen das Setzen und das
Rücksetzen von Bits. Der Transistor 115 erzeugt an der
Eingangsleitung 71 des Direktzugriffsspeichers für das
von den CKB-Ausgangsleitungen 55 ausgewählte eine von
vier Bits ein Massesignal, also den Signalwert "1", wenn
das Signal des Spannungswert -Vdd hat. In gleicher
Weise erzeugt der Transistor 116 für das ausgewählte Bit
an der Eingangsleitung 71 den Signalwert "0", wenn das
Signal den Spannungswert -Vdd hat. Wenn die CKB-
Logik im Bit-Modus arbeitet, kann nur an einer der CKB-
Ausgangsleitungen 55 der Spannungswert -Vdd liegen,
während die anderen Ausgangsleitungen an Masse liegen,
so daß die Transistoren 117 für nicht ausgewählte Bits
gesperrt werden. Dies ermöglicht das Setzen oder Rücksetzen
eines bestimmten Bits im Direktzugriffspeicher 25.
Diese Funktion wird im Rechenbetrieb typischerweise zum
Setzen und Rücksetzen von Kennzeichen verwendet; eine
Ziffernstelle kann für Kennzeichen vorgesehen sein mit
jeweils einem Bit als Additionskennzeichen, Subtraktionskennzeichen,
Multiplikationskennzeichen und Divisionskennzeichen
zur Buchhaltung. Später erfolgt ein Zugriff
auf ein bestimmtes Kennzeichenbit durch Maskieren der
Addierereingänge mittels der CKB-Logik. Das Prüfen von
Kennzeichen erfolgt mit Hilfe der Vergleichsfunktion
im Addierer. Dieser Mechanismus vereinfacht den Aufbau
insofern, als die gleichen Steuer- und Wählsignale, die
in arithmetischen Funktionen verwendet werden, auch bei
den Bitprüffunktionen verwendet werden.
Der Binäraddierer 50 besteht aus einer Gruppe von vier parallelen
Addiererstufen 50-1, 50-2, 50-4 und 50-8 mit
herkömmlichem Aufbau. Alle vier Stufen sind grundsätzlich
gleich. Zwei dieser Stufen sind in Fig. 6 dargestellt. Bei
Betrachtung der Stufe 50-1 ist zu erkennen, daß jede
Addiererstufe eine erste zusammengesetzte Verknüpfungsschaltung
120, eine zweite zusammengesetzte Verknüpfungsschaltung
121, einen Übertrageingang 122 und einen Übertragausgang
123 enthält. Zur zusammengesetzten Verknüpfungsschaltung
120 führen zwei Eingänge 57-1 und 58-1, die manchmal
als negative und positive Eingänge bezeichnet werden;
die Verknüpfungsschaltung erzeugt an der Leitung 124
ein Ausgangssignal, das die negierte Antivalenzfunktion,
also die Äquivalenzfunktion der Signale an den Eingängen
57-1 und 58-1 darstellt. Ein Übertragausgangssignal
wird an der Leitung 123 dadurch erzeugt, daß
diese Leitung zuerst vom Taktsignal ϕ1 auf den Signalwert
"0" (Spannungswert Vdd) aufgeladen und dann abhängig
vom Ausgangssignal einer Verknüpfungsschaltung 125
bedingt entladen wird, wenn das Taktsignal ϕ1 auf
Masse Vss geht. Wenn die Signale an beiden Eingängen 57-1
und 58-1 den Signalwert "1" haben, dann ist eine Bedingung
für die Erzeugung eines Übertrags erfüllt, so
daß das Ausgangssignal der Verknüpfungsschaltung 125
einen Transistor 126 veranlaßt, nach Beendigung des
Taktsignals ϕ1 in den leitenden Zustand überzugehen,
so daß die Leitung 123 nach Masse Vss oder auf den Signalwert
"1" entladen wird. Ein Übertragsignal wird an der
zur nächsten Stufe führenden Leitung 123 erzeugt, wenn an
beiden Eingängen 57-1 und 58-1 der Signalwert "1" anliegt,
wenn eines dieser Eingangssignale den Wert "1" hat und
der Eingangsübertrag an der Leitung 122 den Wert "1" hat
oder wenn beide Eingangssignale an den Eingängen 57-1 und
58-1 und auch der Eingangsübertrag an der Leitung 122 den
Wert "1" haben; in allen anderen Fällen behält das Signal
an der Leitung 123 den Wert "0" (Spannungswert -Vdd) nach
Beendigung des Taktsignals ϕ1 bei, da weder der Weg über
den Transistor 126 oder einen Transistor 127 noch über
die nächste Stufe eine Entladung gestattet. Der Eingangsübertrag
für das erste Bit kommt von einem Befehl
aus dem Steuerwerk 60 über einen Leitung 61-0; die Leitung
122 wird auch mit dem Taktsignal ϕ1 vorgeladen. Das
Übertragausgangssignal aus der Stufe 50-8 erscheint an
der Leitung 128, und es wird mit dem Taktsignal ϕ3
durchgeschaltet und negiert, so daß es an der zur
Zustandslogik 66 führenden Leitung 67-1 ein Signal
erzeugt.
Der Addierer 50 ermöglicht eine Vergleichsfunktion,
bei der an einer ebenfalls zur Zustandslogik 66 führenden
Leitung 67-2 ein Ausgangssignal COMP erzeugt wird. Dieses
Signal wird an einer Leitung 239 erzeugt, die vom Taktsignal
ϕ1 vorgeladen und dann bei Vorliegen des Taktsignals
bedingt entladen wird, wenn irgendwelche der
Transistoren 130 von den Signalen an den Ausgangsleitungen . . . 124 der Verknüpfungsschaltungen 120 eingeschaltet
werden. Das bedingte Entladen erfolgt, wenn das Signal
an der Leitung 124 den Spannungswert -Vdd annimmt, was
dann geschieht, wenn die Signale an den Eingangsleitungen
57-1 und 58-1 der zusammengesetzten Verknüpfungsschaltung
120 ungleich sind. Wenn alle Signale an den Eingängen 57
gleich den Signalen an den Eingängen 58 sind, hat das Signal
COMP den Wert "1", während es sonst den Wert "0" hat.
Die Ausgangssignale der Addiererstufen 50-1, 50-2 usw.
werden an Leitungen 59-1, 59-2, 59-4 und 59-8 erzeugt,
die die Ausgangsleitungen der zusammengesetzten Verknüpfungsschaltungen
121 sind. Die Verknüpfungsschaltungen 121
empfangen Eingangssignale von den Ausgängen 124 und Übertrageingangssignale
für das Bit an den Leitungen 122 usw.
Die Verknüpfungsschaltungen 121 erzeugen eine Äquivalenzfunktion
der Signale an den Ausgängen 124 und des Übertrageingangssignals.
Während des Taktsignals ϕ1 sind die
Signale an den Ausgangsleitungen 59 nicht gültig, da
die Übertragschaltung vorgeladen ist. Das Übertragsignal
ist nicht gültig, so daß auch die Signale an den Ausgangsleitungen
59 bis nach Beendigung des Taktsignals ϕ1
nicht gültig sind. Das Addiererausgangssignal an der
Leitung 59-1 ist abhängig von Steuersignalen AUTA und
AUTY an den Leitungen 61-9 und 61-10 aus dem Datenwegsteuerwerk
60 ein Eingangssignal für die Akkumulatorregisterstufe
52-1 oder für die RAM-Y-Registerstufe 40-1.
Diese Steuersignale werden durch negierende Verknüpfungsschaltungen
132 übertragen, die auch das Taktsignal ϕ1
empfangen und Signale an Steuerleitungen 133 erzeugen,
die nur während des negierten Taktsignals den Spannungswert
-Vdd haben können.
Wie Fig. 6 zeigt, enthält der Addierereingabewähler 51 vier
gleichartige Gruppen zusammengesetzter Verknüpfungsschaltungen
51-1, 51-2, 51-4 und 51-8, die jeweils aus
zusammengesetzten NAND/NOR-Schaltungen 135 und 136 bestehen.
Die Verknüpfungsschaltung 135 empfängt Steuersignale ,
, und über Eingangsleitungen 61-4, 61-5, 61-7
und 61-8 aus dem Datenwegsteuerwerk 60, die bestimmen, ob
das Signal an der Eingangsleitung 57-1 ein unbedingtes
"1"-Signal, das Signal MEM1, Signal ACC1 oder das Signal
ACC1 ist. Die Daten aus dem Direktzugriffspeicher 25
erscheinen an den Leitungen 32-1, 32-2 usw. von Fig. 5;
diese Daten werden mit MEM1, MEM2 usw. bezeichnet. Die
mit ACC1 und bezeichneten Ausgangsdaten des Akkumulators
52 erscheinen an den Leitungen 53-1 und 53-1′ in
nicht negierter und in negierter Form, so daß entweder
die Akkumulatordaten oder deren Komplement die Addierereingangsdaten
bilden können.
Die Eingabedaten von der CKB-Logik 56 werden an den CKB1-
Leitungen 55-1, den -Leitungen 55-1′ usw. geliefert,
die die Verknüpfungsschaltungen 135 und 136 umgehen.
Die von der CKB-Logik kommenden Eingangssignale werden
von den Signalen und über die Transistoren 137
und 138 gesteuert. Die Steuersignale und an den
Leitungen 61-1 bzw. 61-2 wählen über die Verknüpfungsschaltung
136 entweder das Signal an der Leitung 139 oder
das Signal MEM1 an der Leitung 32-1 als das Eingangssignal
zur Leitung 58-1 aus.
Fig. 6 zeigt auch das vier gleiche Stufen 52-1, 52-2, 52-4 und
52-8 enthaltende Akkumulatorenregister 52 sowie das vier gleiche
Stufen 40-1 bis 40-8 enthaltende RAM-Y-Register 40. Jede Stufe
dieser Register ist ein herkömmliches einstufiges Schieberegister,
dessen Inhalt über die Datenwege 40 zu sich selbst
zurückgeführt wird, so daß in das Akkumulatorregister oder
in das RAM-Y-Register eingegebene Bits vorhanden bleiben,
bis neue Daten eingegeben werden. Jede Stufe besteht aus
zwei Negatoren und aus zwei getakteten herkömmlichen Übertragungstransistoren,
die mit dem Taktsignal ϕ2 und dann
mit dem Taktsignal ϕ1 getaktet werden. Die Auswahl, ob die
Addiererausgangsdaten an den Leitungen 59 zum Akkumulatorregister
oder zum RAM-Y-Register geleitet werden, erfolgt
mittels der Befehle AUTA und AUTY an den Leitungen 61-9
bzw. 61-0, die an den Leitungen 133 Steuersignale für
die Transistoren 141 erzeugen. An den Ausgangsleitungen 59
des Addierers 50 sind Datensignale gültig, nachdem das
Taktsignal ϕ1 nach Masse Vss übergeht, so daß die Signale
an den Leitungen 133 nicht auf den Spannungswert -Vdd
übergehen, bis das Taktsignal ϕ1 beendet ist; dies ist die
Funktion der Verknüpfungsschaltungen 132.
Die Signale an den Ausgangsleitungen 41-1, 41-2 usw.
und 139 des RAM-Y-Registers sind nach Beendigung des Taktsignals
ϕ1 gültig. Die nicht negierten Ausgangssignale an
den Leitungen 53-1, 53-2 usw. und die negierten Ausgangssignale
an den Leitungen 53-1′ usw. aus dem Akkumulator
sind, beginnend mit dem Taktsignal ϕ2 gültig.
Das Datenwegsteuerwerk 60 ist im einzelnen in Fig. 7 dargestellt.
Dieses Steuerwerk besteht grundsätzlich aus einem
programmierbaren Logikfeld.
Das laufende Befehlswort aus dem Festspeicher 24 wird an
den ersten Abschnitt 60-1 des Steuerwerks in nicht negierter
und in negierter Form angelegt. Dies sind die Daten an den
Ausgangsleitungen 33 des Festspeichers entsprechend RO, ,
R1, usw. Die Ausgangsleitungen 33 usw. sind Metallstreifen.
Die mit dem Taktsignal ϕ2 vorgeladenen Negatoren 145
erzeugen die negierten Signale usw. Dreißig Leitungen
146 im ersten Abschnitt 60-1 sind längliche P-Diffusionszonen,
die jeweils über ein eigenes Lastelement an die
Spannung Vdd angeschlossen sind. Alle Leitungen werden mit
dem Taktsignal ϕ1 getaktet. Zwischen benachbarten Leitungen
146 verläuft eine Vss-Leitung, die ebenfalls aus
einer P-Diffusionszone besteht. Die Kreise repräsentieren
dünne Oxyd-Gate-Bereiche, so daß dort, wo ein Kreis angegeben
ist, eine Leitung 146 an Masse Vss liegt, wenn
die darüberliegende Metalleitung 33 an der Spannung -Vdd
liegt, während sie sonst auf dem Wert der Spannung -Vdd
bleibt. Die Codierung des Abschnitts 60-1 des programmierbaren
Logikfeldes des Steuerwerks mit Hilfe von Gate-
Bereichen ist derart ausgeführt, daß für eine gegebene
Befehlscodegruppe an den Leitungen 33 jeweils nur eine
Leitung 146 betätigt ist, d. h. an der Spannung -Vdd
liegt. Im zweiten Abschnitt 60-2 des programmierbaren
Logikfeldes werden die Leitungen 146 zu Metallstreifen 147.
Eine weitere Gruppe von 16, aus P-Diffusionszonen bestehenden
Leitungen 148 liegt zusammen mit (nicht dargestellten)
Vss-Leitungen unter den Metallstreifen 147. Auch hier
repräsentieren die Kreise wieder dünne Oxyd-Gate-
Bereiche unter den Metallstreifen. Die Codierung ist
derart vorgenommen, daß für die eine der dreißig
Leitungen 147, die betätigt ist, eine ausgewählte
Gruppe von Leitungen 148 mit dem richtigen "1"- oder
"0"-Wert betätigt wird. Die dargestellte Codierung
gilt für ein Beispiel eines Betriebs als Rechner.
Die beiden Abschnitte 60-1 und 60-2 können bei der Herstellung
mit Hilfe einer entsprechenden Maskierung programmiert
werden, so daß viele verschiedene Befehlsvorräte möglich
sind. Die Leitungen 148 enthalten die gleichen Befehle wie
die Leitungen 61-0 bis 61-15.
Es ist zu beachten, daß für jedes Befehlswort, bei dem
die Bedingung R0=1 gilt, eine Verzweigung oder ein Aufruf
vorgesehen wird, so daß keine der Leitungen 147 betätigt
wird, da keines der Elemente in der gesamten von den
Leitungen 61 gesteuerten Anordnung betätigt werden soll.
Die -Leitung 33 im ersten Abschnitt 60-1 enthält bei
jeder Leitung einen Gate-Bereich. Alle Ausgangsleitungen 148
oder 61-0 bis 61-15 des zweiten Abschnitts 60-2 werden mit
Hilfe von Transistoren 149, die mit dem Taktsignal ϕ2 getaktet
werden, auf den Spannungswert -Vdd vorgeladen. Diese
Leitungen 61-0 bis 61-15 sind innerhalb des Abschnitts
60-2 Diffusionszonen, und sie werden dann zum Anschluß
an den Addierereingabewähler usw. an anderen Teilen des
Chips zu Metallstreifen. Ein dritter Abschnitt 60-3
des Datenwegsteuerwerks 60 ist ein einfacher Decodierer
und nicht ein programmierbares Logikfeld. Dieser Decodierer
erzeugt Befehle zum Setzen und Rücksetzen von Registerinhalten
und von Bits, zum Laden oder Löschen von Segmenten
und zum Laden oder Komplementieren von RAM-X-Adressen
an den Leitungen 61-16 bis 61-22, die von P-Diffusionszonen
gebildet sind. An diese Leitungen sind nicht
dargestellte Lastelemente angeschlossen. Entsprechend der
Gate-Codierung und dem laufenden Befehlswort werden
bestimmte dieser Leitungen ausgewählt.
In Fig. 8 ist die Zustandslogik 66 dargestellt, die sich aus einer
Verknüpfungsschaltung 66-1 zum Rücksetzen
der Zustandsleitung 79 sowie eine Zustandshalteschaltung 66-2
zusammensetzt. Der Zustand wird normalerweise durch einen Signalwert
"1" ausgedrückt, so daß die Anordnung normalerweise eine
Verzweigung ausführt, wenn die Zustandsleitung 79 nicht auf
den Signalwert "0", also auf den Spannungswert -Vdd rückgesetzt
ist. Die Halteschaltung ist eine herkömmliche Schaltung
mit zwei getakteten Negatoren und einem Rückkopplungsweg.
Der Ausgang 69 der Zustandshalteschaltung 66-2 ist an
das Ausgaberegister 62 angeschlossen. Die Halteschaltung
kann gesetzt oder rückgesetzt sein, das bedeutet, daß das
Signal an der Leitung 79 über den Transistor 157 unter
der Steuerung durch einen STSL-Befehl an der Leitung 61-15
aus dem Steuerwerk 60 und durch das Taktsignal ϕ1 an den
Eingang der Halteschaltung angelegt werden kann. Das Ausgangssignal
der zusammengesetzten Verknüpfungsschaltung 66-1, das
beginnend mit der ersten Hälfte des Taktsignals ϕ2 gültig
ist, wird an den Transistor 157 über die Leitung 79 angelegt,
die auch an verschiedene Verknüpfungsschaltungen von Fig. 11
angeschlossen ist. Die zusammengesetzte Verknüpfungsschaltung
66-1 der Zustandslogik ist eine dynamische ODER-Schaltung,
die mit dem Taktsignal ϕ3 getaktet wird und in drei Fällen
ein Ausgangssignal erzeugt. Einer dieser Fälle ist "Löschen";
wenn die Löschtaste gedrückt wird, erscheint an der Leitung
199 das Signal , und an der Leitung 79 wird ein Zustandssignal
erzeugt, das bedeutet, daß diese Leitung für die
Dauer eines Befehlszyklus auf dem Spannungwert -Vdd bleibt.
Ein weiterer Fall ist das Auftreten des Signals an
der Leitung 67-1 aus dem Addierer 50 von Fig. 6; dies bewirkt
in Verbindung mit einem C8-Befehl an der Leitung 61-14
aus dem Datenwegsteuerwerk 60 die Erzeugung des Zustandssignals
an der Leitung 79. In jedem Fall kann die Zustandshalteschaltung
gesetzt werden, wenn das Befehlssignal STSL
im gleichen Befehlszyklus erscheint. Somit kann ein Übertragausgangssignal
aus dem "8"-Bit des Addierers zur
Erzeugung des Zustandssignals an der Leitung 79 und/oder
zum Setzen der Zustandshalteschaltung verwendet werden.
In gleicher Weise kann ein Ausgangssignal COMP aus dem
Addierer 51 an der Leitung 67-2 zur Erzeugung des Zustandssignals
verwendet werden, wenn das Befehlssignal NE ebenfalls
auf der Leitung 61-13 aus dem Datenfeldsteuerwerk 60
erscheint, so daß dann, wenn der Addierer für den Vergleich
von zwei Dateneingangssignalen verwendet wird, das Ergebnis
zur Erzeugung des Zustandssignals an der Leitung 79 und/oder
zum Setzen der Zustandshalteschaltung verwendet werden kann.
Fig. 8a zeigt die zusammengesetzte Verknüpfungsschaltung 66-1
in Form eines schematischen Schaltbilds und nicht in Form
eines Logikdiagramms. Es ist zu erkennen, daß der Ausgang 79
während des Dauer des Taktsignals ϕ3 auf die Spannung -Vdd
vorgeladen und abhängig von den Eingangssignalwerten bedingt
wieder entladen wird, nachdem das Taktsignal ϕ3 auf den
Spannungswert Vss übergeht, während sich das Taktsignal ϕ2
auf dem Spannungswert Vdd befindet.
Die ROM-Wort- und ROM-Seitenadressen werden auf mehreren
alternativen Wegen erzeugt, wobei der Programmzähler 36, das
Unterprogrammregister 43, das ROM-Seitenadreßregister 46 und
der Puffer 47 sowie die Steuerschaltung 48 und die ROM-
Ausgangsdaten selbst an den Leitungen 33 verwendet werden.
Diese Baueinheiten werden nun beschrieben.
Nach Fig. 9 enthält jeder Programmzähler 36 acht Stufen 36-0
bis 36-7, von denen jede ein Register mit zwei Negatoren
160 und 161 enthält, deren Takten mit den Taktsignalen ϕ1
und ϕ2 bei einer Vorladung mit dem Taktsignal ϕ3 aus Gründen
der Energieeinsparung erfolgt. Im Normalbetrieb der Einheit
werden nur sechs Programmzählerstufen, nämlich die
Stufen 36-2 bis 36-7 verwendet, die die ROM-Ausgangssignale
bis von den Leitungen 33 über die Leitungen 37-2 bis
37-7 empfangen. Die 6-Bit-Adresse an bis wird mit
Hilfe von Transistoren 162 in die Stufen 36-2 bis 36-7
durchgeschaltet, wenn das Signal (Verzweigen oder
Abrufen) an der von der Steuerschaltung 48 kommenden Leitung
163 erscheint. Dies bedeutet, daß eine erfolgreiche Verzweigungs-
oder Aufrufoperation ausgeführt wird, so daß
der Teil der Befehlscodegruppe, der die Verzweigungsadresse
definiert, über den soeben beschriebenen Weg in
den Programmzähler geladen wird.
Die zwei beim regulären Betrieb nicht verwendeten zusätzlichen
Stufen 36-0 bis 36-1 des Programmzählers werden zu Testzwecken
angewendet. Alle 8 Bits der ROM-Ausgangsdaten an
den Leitungen 33, die negiert und als Signale bis
erscheinen, können unter der Steuerung des Signals
an der Leitung 163 mittels der Transistoren 162 über
die Leitungen 37-0 bis 37-7 in alle acht Stufen des Programmzählers
geladen werden, damit sie an den Verbindungspunkten
164 erscheinen, von wo aus das 8-Bit-Wort während der
nächsten acht Befehlszyklen in serieller Form über einen
Anschluß 165 ausgelesen wird.
Alle Stufen 36-2 bis 36-7 können mit Hilfe von Transistoren
166 zur Einschaltlösung auf Null gesetzt werden, die
eingeschaltet werden, wenn an der Leitung 167 ein Befehl
erscheint, so daß ein Verbindungspunkt 168 in jeder
Stufe an die Spannung Vdd gelegt wird. Auf diese Weise wird
an den Leitungen 42 eine ROM-Wortadresse mit dem Wert "000000"
erzeugt.
Über sechs Leitungen 42-0 bis 42-5 werden die sechs Ausgangssignale
der Programmzählerstufen 367-2 bis 36-7, die
die Signale PC0 bis PC5 repräsentieren, zum ROM-Adressendecodierer
übertragen. Diese Signale werden an den Verbindungspunkten
169 in jeder Stufe erhalten. Es sei bemerkt,
daß eine Adresse bis an den Leitungen 33 beim Durchschalten
über die Transistoren 162 unmittelbar über die
Verbindungspunkte 164, die Negatoren 161 und die Verbindungspunkte
169 ohne Taktverzögerung zu den Leitungen 42-0
bis 42-5 gelangt.
Das Unterprogrammregister 43 von Fig. 9 enthält sechs
gleiche Stufen 43-2 bis 43-7 entsprechend den Programmzählerstufen
36-2 bis 36-7. Jede Unterprogrammregisterstufe
enthält zwei Negatoren 170 und 171 sowie eine
Rückkopplungsschleife 172 mit den von den Taktsignalen ϕ2
und ϕ1 getakteten Schaltungselementen. Ein Bit läuft
kontinuierlich um, nachdem es einmal eingegeben worden
ist. Wenn an der Leitung 173 aus der Steuerschaltung 48
ein Befehl "CLATCH" erzeugt wird, wird der an den Verbindungspunkten
174 erscheinende Inhalt des Programmzählers
36 in die jeweiligen Stufen des Unterprogrammregisters
43 über Transistoren 145 geladen; dies muß
mit dem Taktsignal ϕ2 erfolgen. Normalerweise ist die
Steuerleitung 173 stets eingeschaltet, so daß der Inhalt
des Programmzählers normalerweise bei jedem Befehlszyklus
über die Transistoren 175 in das Unterprogrammregister
eingegeben wird. Wenn ein Aufruf CALL ausgeführt wird, lautet
der Befehl "nicht laden", so daß die letzte Adresse festgehalten
wird. Die auf diese Weise in das Unterprogrammregister
geladenen sechs Bits laufen dann auch kontinuierlich
einzeln in den Stufen 43-2 bis 43-7 um, bis an der Leitung
176 aus der Steuerschaltung 48 ein Befehl "" erscheint.
Dies würde die Transistoren 177 veranlassen, die sechs Bits
wieder zu den Verbindungspunkten 164 der Programmzählerstufen
36-2 bis 36-7 zurückzuübertragen und von dort aus unmittelbar
über die Negatoren 161 an die Verbindungspunkte 169 und die
Ausgangsleitungen 42 anzulegen. Gleichzeitig wird das
Befehlssignal CLATCH negativ, so daß die Transistoren 175
danach die Adressenbits in das Unterprogrammregister laden,
bis ein weitere Aufrufbetrieb erreicht wird.
Nach Fig. 10 enthält das ROM-Seitenadreßregister 46 vier
Stufen 46-1, 46-2, 46-4 und 46-8, von denen jede eine
zusammengesetzte Verknüpfungsschaltung 46′ und einen
Negator 178 mit einem Rückübertragungsweg 179 sowie
mit den Taktsignalen ϕ1 und ϕ2 getakteten Schaltungselementen
enthält. Das während des Taktsignals ϕ2
gültige Ausgangssignal des Registers 46 wird über vier
Leitungen 35-1, 35-2, 35-4 und 35-8 von den Verbindungspunkten
180 abgegeben, die zum ROM-Seitendecodierer
im Festspeicher 24 führen. Bei der Einschaltlöschung
können alle Verbindungspunkte 181 mit Hilfe von Transistoren
182, die von dem Befehl an der Leitung 167
gemäß den obigen Ausführungen gesteuert werden, an Masse
Vss angelegt werden. Dies erzeugt schließlich an den
Leitungen 35 die Seitenadresse "1111". Die Eingabe in die
zusammengesetzten Verknüpfungsschaltungen 46′ erfolgt
über vier Ausgangsleitungen 183 des Pufferregisters 47,
wenn an der Leitung 184 aus der Steuerschaltung 48 ein
Befehl C4RX erscheint. Normalerweise befindet sich die
Seitenadresse jedoch in einem Umlauf. Das normalerweise
auf Masse Vss liegende Befehlssignal hindert das Taktsignal
ϕ2 daran, das Signal an der Leitung 185 auf den
Spannungswert -Vdd zu schalten.
Das Pufferregister 47 enthält vier Registerstufen 47-1
bis 47-8, die jeweils eine vom Taktsignal ϕ3 vorgeladende
zusammengesetzte Verknüpfungsschaltung 47′ und
einen Negator 187 mit von den Taktsignalen ϕ1 und
ϕ2 getakteten Übertragungsschaltungen und einem Rückübertragungsweg
188 enthält. Wie oben verbindet ein
Einschaltlöschbefehl an der Leitung 167 alle Verbindungspunkte
189 über Transistoren 190 mit Masse Vss, damit
das Pufferregister gelöscht wird.
Eingangsdaten für die Pufferregisterstufen 47-1 bis 47-8
über die zusammengesetzten Verknüpfungsschaltungen 47′
können von verschiedenen Quellen stammen. Erstens können
die ROM-Ausgangssignale , , und an den
Leitungen 33 über die Leitungen 78-1 bis 78-8 in das
Pufferregister geladen werden, wenn an der Leitung 191
von der Steuerschaltung 48 ein Befehl (ein Befehlswort
0001XXX)
erzeugt wird, wobei diese beiden Eingangssignale
der Verknüpfungsschaltungen 47′ mit dem Taktsignal
ϕ1 durchgeschaltet werden. Zweitens werden die
Ausgangsdaten aus dem ROM-Seitenadreßregister 46 an den
Leitungen 192 in der Verknüpfungsschaltungen 47′
eingegeben, wenn an den Leitungen 193 ein mit dem Taktsignal
ϕ1 durchgeschalteter Befehl aus der Steuerschaltung
48 erscheint; dies geschieht bei einem Aufruf CALL,
wenn das Zustandssignal den Wert "1" hat. Drittens kann
veranlaßt werden, daß die Inhalte der Pufferregisterstufen
über die Schleifen 188 umlaufen, wenn ein
Befehl an der Leitung 194 aus der Steuerschaltung 48
erscheint; dies geschieht immer dann, wenn die Befehlssignale
und beide den Wert Vss haben, was bedeutet,
daß der Inhalt des Pufferregisters 47 normalerweise umläuft,
außer wenn eine Adresse von den Leitungen R4 bis R7 geladen wird,
oder wenn ein erfolgreicher Aufruf CALL ausgeführt wird. Im
Prüfbetrieb kann ein Signal an der Leitung 199 bewirken,
daß die Signale an den Tastenfeldeingabeleitungen K1 bis K8
über die Übertragungstransistoren 196 und die Leitungen 192
in die zusammengesetzten Verknüpfungsschaltungen 46′
eingegeben werden; dies wird zu Prüfzwecken oder bei
anderen Funktionen als Rechenfunktionen angewendet. Auch
der Spannungswert -Vdd an der Löschtastenleitung erzeugt
ein Eingangssignal für die Verknüpfungsschaltungen 197, die
Teile der zusammengesetzten Verknüpfungsschaltungen 47′
sind, damit jede Steuerung mittels des -Befehls an
der Leitung 193 im wesentlichen unwirksam gemacht wird
und der Weg, der die Signale an den Ausgangsleitungen 35
über die Leitungen 92 in das Pufferregister lädt, unterbrochen
wird; dies ermöglicht eine Hardware-Löschfunktion
und andere Möglichkeiten.
Gewöhnlich enthalten die Register 46 und 47 die gleichen
Daten, was bedeutet, daß Adressen verwendet werden, die
auf der gleichen "Seite" im Festspeicher liegen. Alle
Verzweigungen erfolgen zur gleichen Seite. Um jedoch zu
einer anderen Seite zu gelangen, d. h. eine lange Verzweigung
auszuführen, wird eine neue Seitenadresse von den
Leitungen R4 bis R7 in das Pufferregister 47 geladen.
Dies hat zur Folge, daß die laufende Adresse im Adreßregister
46 und an den Leitungen 35 vorhanden ist, während
die neue Seitenadresse zu der verzweigt werden soll, im
Pufferregister 47 enthalten ist. Wenn die Verzweigung wahr
ist, oder die Zustandsbedingung erfüllt, wird der
Inhalt des Pufferregisters 47 in das Adreßregister 46
und somit zu den Leitungen 35 geladen. Jetzt befinden sich
wieder die gleichen Daten in den Registern 46 und 47, so
daß die Rechenanordnung wieder darauf eingestellt ist,
kurze Verzweigungen auf der neuen Seite auszuführen. Wenn
ein Aufruf CALL ausgeführt wird, wird der Inhalt des Pufferregisters
47 in das Adreßregister 46 übertragen und umgekehrt.
Wenn der Aufruf auf der gleichen Seite erfolgt, sind die
Daten in jedem Register sowieso gleich. Wenn jedoch ein
langer Aufruf zu einer anderen Seite erfolgt, dann bewirkt
das Pufferregister 47 die Speicherung der Adresse derjenigen
Seite, die zur Zeit der Auslösung des Aufrufs vorhanden ist.
Wenn eine Rückkehr ausgeführt wird, wird der Inhalt des
Pufferregisters 47 in das Adreßregister 46 übertragen,
so daß die zwei Register wieder die gleichen Daten enthalten,
wobei sich die Rechenanordnung wieder an der Ausgangsadresse
befindet und für die Durchführung kurzer Verzweigungen
eingestellt ist.
Nach Fig. 11 enthält die Steuerschaltung 48 für die ROM-
Adressierungsschaltung mehrere getrennte zusammengesetzte
Verknüpfungsschaltungen 48-1, 48-2 usw. zur Erzeugung der
verschiedenen Befehle. Die Verknüpfungsschaltung 48-1
erzeugt abhängig von der Anwesenheit der Signale , ,
und R3 an den Leitungen 33 und von den auf dem Wert Vss
befindlichen Signal an der Leitung 199 den Befehl
an der Leitung 191. Dies bewirkt das Laden einer neuen Seite
aus den Signalen R4 bis R7 an den Leitungen 33 für eine
lange Verzweigung oder einen langen Aufruf. Die Verknüpfungsschaltung
48-2 erzeugt abhängig von der Anwesenheit
der Signale R0, R1 an den Leitungen 33, vom Signal
an der Leitung 199 und von einem Zustandssignal an der
Leitung 79 aus der Zustandslogik 66 den Befehl an der
Leitung 193; alle diese Signale müssen den Wert Vss haben,
damit das Befehlssignal den Spannungswert -Vdd hat.
Dies bedeutet, daß an den Leitungen 33 das Befehlswort 11XXXXXX
anliegt, und daß das Zustandssignal den Wert "1" hat. Dies
ist ein Aufruf CALL. Das Eingangssignal an den Verknüpfungsschaltungen
48-1, 48-2 und 48-3 bewirkt die Sperrung dieser
Verknüpfungsschaltungen, wenn die Löschtaste gedrückt wird.
Die Verknüpfungsschaltung 48-3 erzeugt abhängig vom Signal
an der Leitung 199 den Befehl , und die Befehle
und an den Ausgängen der Verknüpfungsschaltungen 48-1
bzw. 48-2 haben den Massewert Vss. Dies besagt den Umlauf
des Inhalt des Pufferregisters 47 über die Leitungen 188,
was bedeutet, daß die Adresse im Pufferregister erhalten
bleibt. Eine Verknüpfungsschaltung 48-4 erzeugt an der
Leitung 184 den Befehl C4RX abhängig vom Zustandssignal an
der Leitung 79, vom Signal R0 aus den Leitungen 33, vom
Signal an der Leitung 176 und einem vom Signal
abgeleiteten Signal an einer Leitung 200. Jedesmal wenn
ein Rückkehrvorgang ausgeführt wird, sollte der Befehl C4RX
des Wert Vss annehmen, damit der Inhalt des Registers 47
über die Leitungen 183 in das Register 46 geladen werden
kann. Der Befehl an der Leitung 176 wird von einer
Verknüpfungsschaltung 48-5 abhängig von den Signalen ,
, , , R4, R5, R6, R7 an den Leitungen 33 erzeugt;
das bedeutet, daß eine Befehlscodegruppe 00001111 einen
Befehl ergibt, der die Adresse im Unterprogrammregister
43 wieder in den Programmzähler 36 und somit
zu den zum Decodierwähler 39 führenden Leitungen 42
zurückruft, ebenso wie er das Laden des Registers 47
in das Register 46 bewirkt. Der Befehl CLATCH wird von
einer zusammengesetzten Verknüpfungsschaltung 48-6
erzeugt, die abhängig ist von dem Zustandssignal
an der Leitung 79, den Signalen R0 und R1 der Leitungen 33,
dem Befehl an der Leitung 176, dem Signal an der
Leitung 199 und dem Einschaltlöschsignal an der
Leitung 167. Eine Funktion des Befehls CLATCH besteht
darin, den Datenweg 183 vom Register 47 zum Register 46
zu sperren, wenn ein Aufruf ausgeführt wird. Dies geschieht
mit Hilfe der Leitung 200, die zur Verknüpfungsschaltung 48-4
führt, die auch abhängig vom Signal R0 und vom den Massewert
Vss aufweisenden Zustandssignal abhängt. Über die
Leitung 184 und die Leitung 185 wird der Datenumlaufweg
179 für das Register 46 in den Verknüpfungsschaltungen 46′
freigegeben, während der Datenweg 183 gesperrt wird. Wenn
die Signale R0 und das Zustandssignal den Wert "1" haben,
bedeutet dies eine erfolgreiche Verzweigung oder einen
Aufruf, und diese Signale würden die Übertragungen des Inhalts
des Registers 47 zum Register 46 bewirken, jedoch wird
dies mittel des Befehls CLATCH verboten. Der Befehl CLATCH
liegt normalerweise im Nichtaufrufbetrieb vor, was besagt,
daß die Anordnung keinen Aufruf, sondern eine Verzweigung
ausgeführt. Wenn die in die Verknüpfungsschaltung 48-6 gelangenden
Signale R0, R1 und das Zustandssignal den
Wert "1" haben, bedeutet dies einen gültigen Aufruf, so daß
die Halteschaltung in den Aufrufbetrieb gesetzt wird. Der
Befehl veranlaßt das Verlassen des Aufrufbetriebs
und die Rücksetzung der Halteschaltung. Die Signale oder
bewirken ebenfalls die Rücksetzung der Halteschaltung.
Der Negator und das Schaltungselement zwischen dem Schaltungspunkt
201 und der Leitung 200 bilden zusammen mit der Verknüpfungsschaltung
48-6 eine Rückkopplungsschleife und
somit eine Haltefunktion, so daß bei der Erzeugung des
Befehls CLATCH dieser Befehl solange vorliegt, bis der
Befehl , das Hardware-Löschsignal oder das Einschaltlöschsignal
auftreten. Der Befehl an der Leitung
163 wird in der Verknüpfungsschaltung 48-7 erzeugt, die
abhängig vom Signal R0 und vom Zustandssignal arbeitet. Die
Verknüpfungsschaltung 48-7 hält Ausschau nach einer erfolgreichen
Verzweigung oder einem erfolgreichen Aufruf.
Die Wortadressenübertragung wird immer ausgeführt, wenn
das Signal R0 und das Zustandssignal den Wert "1" haben.
Im Prüfbetrieb haben die Eingangssignale und K2 der
Verknüpfungsschaltung 48-7 funktionelle Bedeutung. Normalerweise
ist das Signal KC negativ, so daß Signal K2
ausgeschlossen ist. Wenn das Signal KC den Massewert Vss
hat, dann kann das Signal K2 den Befehl steuern.
Im Prüfbetrieb wird nach dem seriellen Laden einer Adresse
an der K1-Leitung ein Befehl erzeugt, wenn das Signal K2
den Massewert hat. Dies bewirkt die zwangsweise Eingabe aller
acht ROM-Bits von den Leitungen 33 in den Programmzähler 36
über die Transistoren 162 von Fig. 9, von wo aus die Bits
über die Leitung 165 zu Prüfzwecken entnommen werden. Der
Befehl wird vom Taktsignal ϕ2 in der Verknüpfungsschaltung
48-7 auf den Massewert gelegt, so daß er nur
während des Taktsignals ϕ2 gültig ist.
In Fig. 11 sind auch die Tastenfeldeingabeleitungen 75 dargestellt,
die von den Eingangsleitungen 16 kommen. Zur
Erzielung einer Schwellwert- und Hysteresewirkung sind
zwischen die Leitungen 16 und die Leitungen 75 Schmitt-
Trigger-Schaltungen 205 eingefügt. Obwohl hier die
Bezeichnung "Tastenfeldeingabe" verwendet wird, die
als solche für Rechner eingesetzt wird, ist zu erkennen,
daß an die Leitungen 16 von irgendeiner beliebigen Quelle
BCD oder Binärdaten angelegt werden können, wenn der hier
beschriebene Digitalprozessor-Chip für andere Zwecke verwendet
wird. Es ist zu beachten, daß "wahre" Daten durch
den Wert "1" oder den Massewert Vss ausgedrückt werden,
und daß die Signale an den Leitungen 16 und somit an
den Leitungen 75 zu anderen Zeiten auf dem Wert "0"
oder dem Spannungswert Vdd mit Hilfe von Ableitungslastbauelementen
L gehalten werden. Die KC-Leitung 206,
die bei der Anwendung als Rechner zur Hardware-Löschung
oder für die Löschtaste verwendet wird, ist über einen
Negator mit der -Leitung 199 verbunden; wenn die Löschtaste
ihre obere Lage einnimmt, hat das Signal den
Massewert Vss, also den Wert "1", während bei gedrückter
Löschtaste das Signal an der Leitung 206 den Massewert
hat und das Signal an der Leitung 199 den Spannungswert -Vdd
annimmt. Zur Erzielung einer Verzögerung und zum Glätten
oder Entprellen des KC-Eingangssignals kann mit dem Halbleiter-
Chip ein externer Kondensator 207 verwendet werden.
Bei Verwendung des Prozessor-Chips als Rechner werden
numerische Daten über die Tastenfeldeingänge normalerweise
nicht in Form numerischer Daten eingegeben. Das bedeutet,
daß bei Drücken der Taste "7" an den K-Leitungen nicht die
BCD-Codegruppe für "7", also die Codegruppe 0111 erzeugt
wird, sondern daß dafür typischerweise eine Folge von
Programmschritten für die Feststellung einer gedrückten
Taste angewendet wird, worauf die über die K-Leitung
eingegeben Information im Akkumulator 52 gespeichert wird,
während die Identität der Leitung 48, die betätigt ist,
im Y-Register 40 abgespeichert wird. Diese Daten können
dann zur Identifizierung der Taste mittels Software
benutzt werden, und es kann eine BCD-Zahl in den Direktzugriffspeicher
25 eingegeben werden, oder es kann eine
Operation ausgeführt werden.
Ein Vorteil dieses Eingabesystems besteht darin, daß
Zahlen und Operationen auf den K-Leitungen untereinander
gemischt werden können und daß die Zahlen nicht in der
numerischen Reihenfolge vorliegen müssen. Es könnten auch
zwei Tasten gleichzeitig gedrückt werden, und eine kann
von der Software ausgeschlossen werden. Außerdem können
beispielsweise für die Dezimalpunktstellung feste Schalter
mit Tastenschaltern gemischt werden. Bei bisher bekannten
Rechenanordnungen besteht keine dieser Möglichkeiten.
Außer im Prüfbetrieb gelangen die Tastenfeldeingaben
ausschließlich in die CKB-Logik 56. Von dieser aus können
die Tastenfeldeingaben in die Akkumulator- oder RAM-Y-
Register geladen werden.
Die in Fig. 12 dargestellte CKB-Logik 56 besteht aus vier
gleichen zusammengesetzten Verknüpfungsschaltungen 56-1,
56-2, 56-4 und 56-8, die an den Leitungen 55-1 bis 55-8
die Ausgangssignale bis erzeugen. Die CKB-
Ausgangssignale werden dem Addierereingabewähler 51
und dem RAM-Schreibsteuerwerk 70 zugeführt, wie oben
erläutert wurde. Jede der vier zusammengesetzten Verknüpfungsschaltungen
56-1 bis 56-8 enthält drei einzelne
Verknüpfungsschaltungsgruppen 210, 211 und 212, von denen
jede unter bestimmten Bedingungen abhängig vom laufenden
Befehlswort an den Leitungen 33 ein CKB-Ausgangssignal
erzeugt. Die Verknüpfungsschaltungsgruppe 211 empfängt
in jedem Fall an der UND-Schaltung 213 die Signale , , und R4 von den Leitungen 33, und an der
UND-Schaltung 214 eines der Signale K1, K2, K4 oder K8
von den Leitungen 75-1 bis 75-8; dies dient dazu, die
vom Tastenfeld oder von außen kommenden Daten an die
CKB-Leitungen 55 anzulegen, wenn das Befehlswort 00001XXX
vorliegt. Die Verknüpfungsschaltungsgruppe 210 bewirkt
das Setzen und Rücksetzen von Bits im Direktzugriffspeicher
25; sie empfängt an der UND-Schaltung 216 die Signale ,
, R2 und R3 von den Leitungen 33, so daß dieser Teil
abhängig von einem Befehlswort 0011XXXX arbeitet, während
die übrigen Teile der Verknüpfungsschaltungsgruppe 210
abhängig von zwei der Signalen an den Leitungen R6, ,
R7 oder mittels der ODER-Schaltung 217 arbeiten,
so daß nur eine der vier Verknüpfungsschaltungen 56-1
bis 56-8 ein CKB-Ausgangssignal erzeugt. Dies dient der
Auswahl eines der vier Bits für eine Bit-Operation. Die
Verknüpfungsschaltungsgruppe 212 enthält eine UND-
Schaltung 218, die in jedem Fall abhängig von den Signalen
, , an den Leitungen 33 arbeitet. Das Ausgangssignal
der UND-Schaltung 218 wird mit dem Signal R1 in der Verknüpfungsschaltung
219 in einer ODER-Verknüpfung kombiniert,
deren Ausgangssignal zusammen mit dem Signal und einem
der Signale R4, R5, R6 oder R7 an die UND-Schaltung 220
angelegt wird. Die Verknüpfungsschaltungsgruppen 212
dienen daher dazu, alle vier Bits, R4, R5, R6 und R7
an die CKB-Ausgänge 55 anzulegen, wenn das Befehlswort
01XXXXXX vorliegt und eines oder mehrere der Signale R2,
R3 und R4 den Wert "0" haben. Bei einigen Konstantenoperationen
hat das Bit R4, also das erste Bit im Konstantenfeld
stets den Wert "1"; dies ist eine notwendige
Einschränkung der Konstangen, die in diesem Fall angewendet
werden kann. Das Bit R1 ist tatsächlich ein unbeachtetes
Bit, wenn die Bits R2 bis R4 den Wert "0" haben, da das
Befehlswort 00000XXX ebenfalls das Konstangenfeld R4
bis R7 an die CKB-Ausgangsleitungen 55 anlegt.
In Fig. 12a ist eine der zusammengesetzten Verknüpfungsschaltungen 56, und zwar die Verknüpfungsschaltung 56-8
dargestellt. Die anderen Verknüpfungsschaltungen 56-1,
56-2 und 56-4 sind mit Ausnahme von Änderungen an den
R6-, R7- und K-Eingängen nach Fig. 12 ebenso aufgebaut.
Mit dem Taktsignal ϕ2 wird die Ausgangsleitung 55-8
über den Transistor 222 auf die Spannung -Vdd aufgeladen,
und während des Taktsignals ϕ1 des nächsten Zyklus wird
die Ausgangsleitung 55-8 über die Verknüpfungsschaltungsgruppen
210, 211 und 212 und den Transistor 223 bedingt
entladen. Es ist zu erkennen, daß bei Vorliegen eines
Befehlsworts 0011XXXX an den Leitungen 33 die Verknüpfungsschaltungsgruppe
210 die Steuerfunktion hat, da die Verknüpfungsschaltungsgruppe
212 von den Signalen R1 und ,
gesperrt wird, während die Verknüpfungsschaltungsgruppe
211 von den Signalen und gesperrt wird. Auf diese
Weise wird für das Befehlswort 0011XXXX eine der vier
zusammengesetzten CKB-Verknüpfungsschaltungen 56 von den
ODER-Schaltungen 217 ausgewählt, die Kombination der
Signale R6, , R7 und empfangen. Wenn an den Leitungen
33 das Befehlswort 00001XXX vorhanden ist, dann übt die
Verknüpfungsschaltungsgruppe 211 die Steuerfunktion aus,
weil die Verknüpfungsschaltungsgruppe 210 von den Signalen
R2 und R3 gesperrt wird, während die Verknüpfungsschaltungsgruppe
212 von den Signalen R1 und gesperrt wird, so daß
das Signal K8 bestimmt, ob die Leitung 55-8 an Masse gelegt
wird. Wenn an den Leitungen 33 das Befehlswort 01XXXXXX
anliegt, übt die Verknüpfungsschaltung 212 die Steuerfunktion
aus, weil die Verknüpfungsschaltungsgruppen 210
und 211 vom Signal gesperrt werden, so das Signal R7
(oder in den anderen Verknüpfungsschaltungen 56 die
Signale R4, R5 oder R6) die Entladung der Leitung 55-8
bestimmt. Die Verknüpfungsschaltungsgruppe 212 übt die
Steuerfunktion auch dann aus, wenn das Befehlswort 00000XXX
lautet, da die Verknüpfungsschaltungsgruppe 210 von den
Signalen R2 und R3 und die Verknüpfungsschaltungsgruppe 211
vom Signal R4 gesperrt werden, während die Verknüpfungsschaltung
219 nicht leitet, weil die Signale , und
den Signalwert "1" haben.
Die CKB-Logik 56 hat somit eine dreifache Gesamtfunktion.
Erstens kann eine in einem Feld des Befehlswort erscheinende
Konstante an die Leitungen 55 angelegt werden. Zweitens können
die vom Tastenfeld oder von außen eingegebenen Eingangssignale
an den Leitungen 75 an die Leitungen 55 angelegt
werden. Drittens kann eine der vier Leitungen 55 beispielsweise
zum Adressieren eines der vier Bits einer Stelle im
Direktzugriffspeicher 25 ausgewählt werden. Alle diese
Funktionen werden vom laufenden Befehlswort gesteuert.
In Fig. 13 ist das RAM-Seitenadreßregister 73 dargestellt.
Die RAM-Seitenadresse besteht aus den zwei Bits RAX0 und
RAX1, die an den Leitungen 28 erscheinen. Das Register besteht
aus zwei gleichen Stufen 73-0 und 73-1, von denen jede
einen Eingang 225, zwei Negatoren 226 und zwei getrennte
Rückführungswege 227 und 228 enthält. Jede Stufe ist somit
ein mit den Taktsignalen ϕ1 und ϕ2 getaktetes Umlaufregister.
Eine aus zwei Bits gebildete RAM-Seitenadresse kann in
die Eingänge 225 geladen werden, wenn die Transistoren 230
von einem Befehl "Lade RAM-X" an der Leitung 61-23
aus dem Steuerwerk 60 eingeschaltet werden.
Nachdem sie einmal geladen ist, läuft die Adresse unbegrenzt
über den Rückführungsweg 28. Die RAM-X-Adresse im Register
wird komplementiert, wenn die Transistoren 231 vom Befehl
an der Leitung 61-22 aus dem Steuerwerk 60 durchgeschaltet
werden, wenn dieser Befehl den Wert "0" oder
-Vdd hat. Dies bewirkt den Datenumlauf über die Rückführungswege
227, und die Adresse wird komplementiert.
Wenn der Befehl den Wert "1" hat, dann laufen die
Bits über die Rückführungswege 228 um, und die Adresse
bleibt gleich.
Die RAM-Seitenadresse ist in dem 2-Bit-X-Register 73
enthalten, das zur direkten Adressierung des RAM-
Seitendecodierers 29 über die Leitungen 28 verwendet
wird. Der Inhalt des Registers 73 kann auf zwei Wegen
modifiziert werden. Erstens können die Signale und
aus dem Festspeicher 24 als Teil des Befehlsworts
geladen werden, wie angegeben worden ist. Zweitens kann
die im Register 73 gespeicherte Adresse Bit für Bit
komplementiert werden. Kein anderer Vorgang einschließlich
der Einschaltlöschung und der Hardware-Löschung hat
irgendeinen Einfluß auf den Inhalt des X-Registers 73.
Änderungen des Inhalts, die im Register 73 stattfinden,
sind bis zum nächsten Befehlszyklus nicht gültig.
In Fig. 14 sind der Festspeicher 24 und der ROM-Seitenadressendecodierer
dargestellt. Der Festspeicher besteht aus einem
Feld aus X-Leitungen 240, die von länglichen P-Diffusionszonen
im Halbleitersubstrat gebildet sind und aus Y-Leitungen
241, die aus Metallstreifen über einer Oxidschicht
auf dem Substrat in herkömmlicher Weise gebildet sind. In
dem Feld sind 64 Y-Leitungen und 128 X-Leitungen vorgesehen,
wobei in Fig. 14 jedoch nur einige dieser Leitungen dargestellt
sind. Der Festspeicher ist ein Speicher mit virtueller
Masse, so daß daher nur eine Masseleitung 242 für jeweils acht
X-Leitungen 240 benötigt wird; innere Masseleitungen
werden von benachbarten Gruppen gemeinsam benutzt, so daß
tatsächlich nur neun Masseleitungen benötigt werden und
nicht 16.
Ein Datenbit wird zwischen benachbarten Leitungen 240 oder
zwischen einer Leitung 240 und einer Masseleitung 242
mit Hilfe dünnder Oxidbereich 243 erzeugt, wie in der
US-PS 35 41 543 beschrieben ist. Ein Muster der dünnen
Oxidbereiche 243 bestimmt die Werte "1" oder "0", die
für jedes Datenbit gespeichert sind, ebenso wie diese
Bereiche jeweils die Anwesenheit oder die Abwesenheit
eines MOS-Transistors festlegen. Der Festspeicher enthält
8192 Datenbit-Speicherplätze oder mögliche Orte für
die dünnen Oxidbereiche 243. Die Speicherplätze sind
in 1024 Wörtern organisiert, die jeweils acht Bits
enthalten. Die acht Bits gelangen an den acht Leitungen 33,
von denen in Fig. 14 nur eine dargestellt ist und die den
Bits R0 bis R7 des Befehlsworts entsprechen, vom Festspeicher
nach außen. Die 1024 Wörter sind in 16 Gruppen
oder Seiten zu je 64 Wörtern unterteilt.
Der Seitendecodierer besteht aus 16 von Transistoren 245
gebildeten Feldern 244. Jedes Feld enthält nur 14 Transistoren
245 und einen Transistor 246, was eine große
Verbesserung gegenüber Decodieren für bisher bekannte
Festspeicher mit virtueller Masse darstellt. Der Decodierer
empfängt die von vier Bits gebildete ROM-Seitenadresse
an den vier Leitungen 35-1 bis 35-8 aus dem ROM-Seitenadreßregister
46 von Fig. 10. Vier gleiche Eingabe/Vorlade-
Schaltungen 247 empfangen die ROM-Seitenadresenbits,
die vom Taktsignal ϕ2 über Transistoren 248 eingegeben
werden. Negatoren 249 ermöglichen, daß die Bits in nicht
negierter Form und in negierter Form vorhanden sind, so
daß acht Adressierungsleitungen 250 die gesamte Breite
des Festspeichers durch alle 16 Felder 244 durchlaufen.
Diese Leitungen 250 erzeugen an den Gate-Elektroden der
Transistoren 245 Eingangssignale X1, , X2, , X4 und
sowie an den Gate-Elektroden der Transistoren 246 Eingangssignale
X8 und . Die ausgewählten Leitungen 250 werden
mit dem Taktsignal ϕ2 über Transistoren 251 vorgeladen,
wobei eine mitgehende Ladespannung durch geschaltete
Kondensatoren 252 vorgesehen ist. Eine Ausgabeschaltung 253
verbindet jedes der Paare der Felder 244 mit einer der
Leitungen 33, so daß insgesamt 8 dieser gleich aufgebauten
Ausgabeschaltungen 253 vorhanden sind. Benachbarte Felder
sind jeweils mit Ausgangsleitungen 254 und 255 versehen,
die auch die X-Leitungen 240 im ROM-Feld sind. Das Adressenbit
X8, wählt über die Transistoren 246 nur eine
dieser Ausgangsleitungen aus. Die ausgewählte Ausgangsleitung
wird mit dem Eingang eines Negators 256 verbunden,
damit die Ausgangsleitung 33 über den Transistor 257
an Masse gelegt wird, wenn beim Auftreten des Taktsignals
ϕ2 die aus den Leitungen 254, 255, ausgewählte
Leitung an Masse Vss liegt, oder damit die Ausgangsleitung
33 mit Hilfe des Taktsignals ϕ2 über den
Transistor 258 an die Spannung -Vdd gelegt wird, wenn
die aus den Leitungen 254, 255 ausgewählte Leitung beim
Auftreten des Taktsignals ϕ2 an der Spannung -V liegt.
Ein geschalteter Kondensator 259 dient dazu, den Ausgang
auf einen hohen Wert mitzuführen. Die Seitenadresse
wählt mit Hilfe der Transistoren 245 in jedem Feld
244 eine der acht Leitungen 240 in jeder Achtergruppe
aus; die 1-, 2- und 4-Bits, d. h. die Leitungen X1, ,
X2, , X4 und werden in einem Muster betätigt,
bei dem eine X-Leitung 240 mit der Masseleitung 242 und
die nächste benachbarte X-Leitung 240 mit der Leitung 254
oder der Leitung 255 verbunden werden. Beispielsweise
verbindet eine ROM-Seitenadresse 1010 (an X1, X2, X4, X8)
die Leitung 240a über die Transistoren 245a und 245b mit
Masse und die Leitung 250b über den Transistor 245c mit
der Ausgangsleitung 254, während der Transistor 246
an der Leitung X8 die Leitung 254 mit dem Verbindungspunkt
260 und somit mit dem Ausgang verbindet. Jede
dünne Oxidzone 243a zwischen den Leitungen 240a und
240b ist somit für die bestimmte Y-Leitung 241 bestimmend,
die vom später noch zu beschreibenden Y-Decodierer 27 ausgewählt
ist.
Ein wichtiges Merkmal des Festspeichers ist die Art der
Vorladung der Leitungen 240. Alle diese Leitungen 240
werden mit Hilfe von Transistoren 263, die mit dem Taktsignal
ϕ1 getaktet werden, an eine gemeinsame Verbindungsleitung
262 angeschlossen. Die gemeinsame Verbindungsleitung
262 ist an die die Versorgungsspannung -Vdd
liefernde Klemme 264 über zwei MOS-Transistoren 265
vom Verarmungstyp angeschlossen, so daß sich die Leitung
262 auf die Spannung -(Vdd-2Vt) auflädt, wobei Vt die
Schwellenspannung der Transistoren 265 ist. Typischerweise
hat die Versorgungsspannung Vdd den Wert 15,0 V, und
die Schwellenspannung Vt hat den Wert 2,0 V. Somit laden
sich die Leitungen 240 auf eine niedrigere Spannung auf,
was bedeutet, daß sie im Vergleich zu ihrem Verhalten
bei einer Aufladung auf den Spannungswert Vdd schnell
vorgeladen und schnell entladen werden.
In Fig. 15 ist der Wortdecodierer 27 für den Festspeicher 24
und für den Direktzugriffspeicher 25 zusammen mit dem Datenwähler
39 dargestellt. Der Wortdecodierer 27 empfängt eine
zwölfzeilige Adresse (aus 6 Bits und ihren Komplementen)
an den Leitungen 38, und er wählt eine aus 64 Ausgangsleitungen
34 für den Festspeicher oder eine aus 16 Leitungen
26 für den Direktzugriffspeicher aus. Die Leitungen
34 sind die Metallstreifen oder Y-Leitungen 241
im Festspeicher. Der Datenwähler empfängt an vier
Leitungen 41-1 bis 41-8 aus dem RAM-Y-Register 40 eine
aus vier Bits bestehende RAM-Y-Adresse, die von den
Transistoren 270 mit dem Taktsignal ϕ2 durchgeschaltet
wird. Der Datenwähler empfängt auch die aus sechs Bits
bestehenden Daten vom Ausgang 42 des Programmzählers an
den Leitungen 42-0 bis 42-5, die mit dem Taktsignal ϕ1
von Transistoren 271 durchgeschaltet werden. Während
jedes Befehlszyklus werden mit dem Taktsignal ϕ1 eine
ROM-Adresse und mit dem Taktsignal ϕ2 eine RAM-
Adresse geliefert. Da die RAM-Y-Adresse nur aus vier
Bits (2⁴=16) besteht, während die ROM-Adresse aus
sechs Bits (2⁶=64) besteht, sind die zusätzlichen Bits
für die RAM-Adresse an den Punkten 272 und 273 an
Masse Vss bzw. an die Versorgungsspannung Vdd angelegt.
Über Negatoren 274 werden die Daten in nicht negierter
und in negierter Form an 12 Leitungen 280, die mit
Y0, , Y1, . . . Y6, bezeichnet sind und die
die gleichen Leitungen wie die Leitungen 38 sind, an
den Decodierer angelegt. Die Leitungen 280 sind Metallstreifen,
die zur Bildung eines, einem Festspeicher
ähnlichen Feldes über von P-Diffusionszonen gebildeten
Leitungen 281 liegen. An ausgewählten Bitpositionen
sind unter den Leitungen 280 dünne Oxidbereiche vorgesehen,
damit zwischen benachbarten Leitungen 281
MOS-Transistoren entstehen. Eine gegebene 6-Bit-Codegruppe
wählt eine der Leitungen 281 aus. Über Transistoren
283 werden mit dem Taktsignal ϕ1 alle Leitungen
281 mit den Gate-Elektroden der Transistoren 282 verbunden.
Geschaltete Kondensatoren 284 dienen der Anhebung der
Gate-Spannung der Transistoren 282 auf einen höheren
Wert. Die Leitungen 241 liegen an Masse, bis eine dieser
Leitungen während des Taktsignals ϕ2 an der Leitung 285
negativ gemacht wird, weil die Gate-Elektrode eines
der Transistoren 282 während des Taktsignals ϕ1 negativ
gemacht worden ist. Während jedes Befehlszyklus werden
die Leitungen 281 vom Taktsignal ϕ4 zweimal aufgeladen.
Das Taktsignal ϕ4 wird über Transistoren 287 und 288
von der Leitung 286 an die Leitung 281 angelegt. Während
des ersten Abschnitts des Taktsignals ϕ1 werden die
Leitungen 281 und die Gate-Elektroden der Transistoren 282
vom Taktsignal ϕ4 negativ aufgeladen, worauf dann während
der letzten Hälfte des Taktsignals ϕ1 das Taktsignal ϕ4
den Massewert annimmt, und bis auf eine alle Leitungen 281
und Gate-Elektroden der Transistoren 282 wieder auf Masse
entladen werden, was vom Muster der dünnen Oxidbereiche,
die die Leitungen 281 miteinander verbinden, sowie davon
abhängt, welche der Leitungen 280 negativ ist. Die Transistoren
289 und 290 dienen dazu, Alternativwege zum Entladen
der Leitungen 281 auszuwählen. Diese Transistoren 289 und
290 werden von den Signalen an den Leitungen Y6 und
geschaltet, so daß während der Taktsignale ϕ1 und ϕ2 einer
von ihnen stets eingeschaltet und einer stets abgeschaltet
ist. Die Leitungen 281 werden aus dem Taktsignal ϕ4 während
des Teilabschnitts 85, also der ersten Hälfte des Taktsignals
ϕ2, negativ aufgeladen, worauf dann während der
letzten Hälfte des Taktsignals ϕ2 bis auf eine Leitung
281 alle in die Quelle des Taktsignals ϕ4 nach Masse
entladen werden.
Die Datenausgabe aus dem Decodierer 27 zu den Leitungen 26
erfolgt beim Taktsignal ϕ2 über die Transistoren 292, über
die 16 der 64 Leitungen 281 mit den Gate-Elektroden der
Transistoren 295 in den Adressenausgabeschaltungen
verbunden sind, von denen 16 gleich aufgebaute Ausführungen
vorhanden sind, während nur eine dargestellt ist. Die
ausgewählte RAM-Adressenleitung 26 wird während des negierten
Taktsignals an der Leitung 301 von den Transistoren
295 auf den Spannungswert -V gebracht. Geschaltete Kondensatoren
302 zur Ladespannungsmitführung gewährleisten
einen hohen negativen Spannungswert an der ausgewählten
Leitung 26. Die nicht ausgewählten Leitungen 26 werden
von der Nullhalteschaltung einschließlich der Transistoren
302, 303 und 304 auf Masse gehalten. Für die
Dauer des Taktsignals ϕ2 leitet der Transistor 304,
und er macht die Gate-Elektrode 305 negativ, während
die Gate-Elektrode 294 für den einen ausgewählten Ausgang
aufgeladen ist, so daß der Transistor 302 eingeschaltet
wird und alle Leitungen 26 mit der Vss-Leitung 306 verbunden
werden. Wenn das Taktsignal ϕ2 nach Masse geht
und das negierte Taktsignal negativ wird, wird auch
der Verbindungspunkt 307 der ausgewählten Adressenleitung
26 negativ, wodurch der Transitor 303 eingeschaltet und
die Gate-Elektrode 305 entladen wird, so daß die ausgewählte
Adressenleitung von Masse abgetrennt wird. Die nicht ausgewählten
Adressenleitungen bleiben an Masse, da die
Gate-Elektrode 305 negativ bleibt und den Transistor 302
eingeschaltet hält. Die Wirkung dieser Ausgabeschaltung 300
besteht darin, daß die Leitungen 26 während des Taktsignals
ϕ2 an Masse bleiben, während im Verlauf des
negierten Taktsignals alle diese Leitungen mit Ausnahme
der ausgewählten Leitung an Masse bleiben, an der die
Spannung -Vdd anliegt.
In Fig. 16 sind das Ausgaberegister 84 und die Ausgabepuffer
86 genau dargestellt. Dieses Register besteht aus
13 gleichen Stufen 310, von denen nur drei dargestelllt sind.
Jede Stufe 310 ist eine RAM-Zelle mit Selbstauffrischung,
die allgemein der im Direktzugriffspeicher 25 verwendeten
Zelle gleicht, jedoch sind zusätzliche Steuervorrichtungen
vorgesehen. Die Zelle enthält 5 Transistoren 311, 312, 313,
314 und 315. Die Kapazität des Verbindungspunkts 316 und
die Kapazität der Gate-Elektrode 317 des Transistors 311
sind von Bedeutung. Wenn am Verbindungspunkt 316 eine
negative Spannung gespeichert ist, dann lädt er die Gate-
Elektrode 317 während des Taktsignals ϕ5 über den Transistor
314 auf. Während des Taktsignals ϕ1 schaltet dann die
negative Spannung an der Gate-Elektrode 317 den Transistor
311 ein, und auch der Transistor 312 ist eingeschaltet,
so daß sich der Verbindungspunkt 316 noch negativer auflädt
und die gespeicherte Ladung auffrischt. Wenn der
Verbindungspunkt 316 an Masse Vss liegt, wird die Gate-
Elektrode 317 während des Taktsignals ϕ5 nicht aufgeladen,
und der Transistor 311 wird während des Taktsignals ϕ1
nicht eingeschaltet, so daß der Verbindungspunkt 316 auf
Masse Vss bleibt. Die Eingabe in den Verbindungspunkt 316
erfolgt über den Transistor 313, der über eine der Adressenleitungen
26 ein- oder ausgeschaltet wird. Alle Transistoren
313 der 13 Zellen 310 sind an eine Leitung 320 angeschlossen,
die während des Taktsignals ϕ2 vom Transistor 321 an Masse
gelegt wird. Die Leitungen 61-16 und 61-17 empfangen aus
dem Datenwegsteuerwerk 60 die Befehle und , die
die Leitung 320 über die Transistoren 322 und 323 an Masse
bzw. an Vdd legen. Die Verbindungspunkte 316 werden bei
der Einschaltlöschung oder bei Betätigung der Löschtaste
über die Befehlsleitung 342, an die das Signal
aus der Löschschaltung 82 angelegt wird, auf die Spannung -Vdd
gesetzt. Eine negative Spannung an der Leitung 324 schaltet
den Transistor 325 durch, so daß an den Verbindungspunkt 316
der Signalwert "0", also die Spannung -Vdd, angelegt wird.
Alle Zellen 310 bleiben in diesem "0"-Zustand, bis ein
Befehl und das Signal an einer der Leitungen 26 den
Spannungswert -V annimmt, was während des Taktsignals
auftritt. Während eines Befehlszyklus kann nur eine der
Zellen 310 gesetzt werden, da nur eine der RAM-Y-Adressenleitungen
26 negativ wird. Eine einmal auf den Wert "1",
also auf den Massewert (Vss) gesetzte Zeile bleibt in diesem
Zustand, bis sie durch Adressieren der Zelle über eine
Leitung 26 und Betätigen des Befehls adressiert und
rückgesetzt wird. Die Stufen 84-0 bis 84-12 können in
jeder beliebigen Reihenfolge gesetzt und rückgesetzt
werden, und mehrere oder alle können sich gleichzeitig
im gesetzten Zustand befinden. Wenn beispielsweise geprüft
werden soll, ob eine Taste gedrückt ist, können alle Ausgänge
18 durch Setzen aller Stufe 84 betätigt werden, was
einen Befehlszyklus für jede Stufe erfordert, worauf dann
die Signale an den K-Leitungen gelesen und geprüft würden.
Auch das Unterdrücken vorangehender Nullen kann durch
verschiedene Unterprogramme ausgeführt werden, da nicht
alle D-Ausgänge betätigt werden müssen; sie können
von der höchstwertigen Ziffernstelle zur niedrigstwertigen
Ziffernstelle oder umgekehrt von der niedrigstwertigen
Ziffernstelle zur höchstwertigen Ziffernstelle betätigt
werden.
Die Ausgabepuffer 86 bewirken, daß an die Ausgänge 18 entweder
die Spannung Vdd oder Massepotential entsprechend den
in den verschiedenen Stufen des Registers 84 gespeicherten
Bits angelegt wird. Die dargestellte Schaltung ist geeignet,
den vollen Spannungshub zu gewährleisten.
In Fig. 17 sind das Akkumulator- und Zustandsausgaberegister 62
sowie der Segmentdecodierer 63 und der Ausgabepuffer 65
dargestellt. Das Register 62 besteht aus fünf gleichen
Umlaufregisterstufen 62-1 usw., von denen jede eine
NAND-Schaltung 330, einen Negator 331 und einen Rückführungsweg
332 enthält. Die Stufen werden von den Taktsignalen
ϕ3 und ϕ2 über die Leitungen 333 und 334 getaktet.
Den Stufen 62-1 bis 62-8 werden Eingangsdaten von den
Akkumulatorausgangsleitungen ACC1 bis ACC8 (53-1 bis 53-8)
von Fig. 6 zugeführt. Der Zustandspuffer 62-5 erhält Eingangsdaten
aus der Ausgangsleitung 69 der Zustandshalteschaltung
von Fig. 8. Diese Eingangsdaten werden über Transistoren 335
nach Auftreten eines Befehls an der Leitung 61-20
aus dem Datenwegsteuerwerk 60 geladen. Alle Stufen des
Registers 62 können durch einen Befehl an der
Leitung 61-21 aus dem Steuerwerk 60 gelöscht werden, der
ein Eingangssignal für alle Verknüpfungsschaltungen 330
darstellt. Die Stufen des Registers 62 werden auch von
einem Befehl an der Leitung 324 gelöscht, was
gleichbedeutend mit dem Laden von Signalen mit dem
Wert "0" ist. Nicht negierte und negierte Ausgangssignale
aus den Stufen 62-1 bis 62-5 werden über A1-,
, A2-, , . . . S-, -Leitungen 336 an zehn Eingänge
des ersten Abschnitts 63-1 des von einem programmierbaren
Logikfeld gebildeten Segmentdecodierers 63 angelegt, der
die Betätigung einer von 20 Leitungen 63-2 in der Art
bewirkt, wie sie für programmierbar Logikfelder üblich
ist, die zum Codieren eingesetzt werden. Der zweite
Abschnitt 63-3 des Segmentdecodierers ist so codiert,
daß er eine oder mehrere der Leitungen 64 für eine Eingabe
zu den Leitungen 63-2 betätigt. Der Segmentdecodierer 63
kann so codiert sein, daß er die BCD-Information am Akkumulatorausgang
in die üblichen 7-Segment-Anzeigeansteuersignale
für einen typischen Betrieb in einem Rechner umsetzt;
es kann auch die BCD-Information an einer der vier Leitungen
64 oder auch jeder andere gewünschte Code ausgesendet werden.
Das Setzen des Dezimalpunkts kann mit Hilfe des Zustandshalteschaltungsausgangs
an der Leitung S8 erfolgen.
Die acht Ausgabepuffer 65-1 bis 65-8 sind gleich aufgebaut;
in Fig. 17 sind nur zwei dargestellt. Diese Puffer
bewirken das Anlegen von Masse Vss oder der Spannung -Vdd
an die Ausgangsklemmen 17 zur Ansteuerung der Segmente
in der Anzeigeeinheit oder einer anderen Anzeigeeinheit
wie Datenleitungen oder ein Drucker.
In Fig. 18 ist eine Schaltung zur Erzeugung des Einschaltlöschbefehls
an der Leitung 167 der Fig. 9 und 10
und zur Erzeugung des Befehls (Hardware-Löschung
oder Einschaltlöschung) an der Leitung 324 von Fig. 17
dargestellt. Eine ODER-Schaltung 338 empfängt das Löschtastensignal
über die Leitung 199 und einen Negator.
Der Befehl wird von eine Halteschaltung 340 und einem
Kondensator 341 erzeugt. Wenn die Versorgungsenergie erstmalig
eingeschaltet wird, ist der Kondensator 341 noch
nicht aufgeladen, und der Eingang 342 liegt im wesentlichen
auf Masse, so daß sich die Halteschaltung 340 im Zustand
"1" befindet und an der Leitung 343 ein Ausgangssignal
erzeugt, das zur Erzeugung des Befehls an der Leitung
167 und des Befehls an der Leitung 324 führt. Nachdem
sich der Kondensator aufgeladen hat, kippt die Halteschaltung
340, und der Befehl schaltet auf Masse, so daß der
Rechner in seiner üblichen Betriebsweise arbeiten kann.
Die Rückkopplungsschleife 344 gewährleistet, daß sich
der Kondensator entlädt oder daß sich die Halteschaltung
340 im richtigen Zustand befindet, wenn die Versorgungsenergie
eingeschaltet wird. Wenn ein externer Kondensator
benutzt wird, dient das negierte Signal an der Leitung
345 dazu, den Befehl zu verlängern. Der Rest der
Schaltung ist zum Prüfen des Halbleiter-Chips vorgesehen.
Der Ausgang 165 der letzten Stufe 36-0 des Programmzählers
36 ist an den Transistor 346 angeschlossen, der vom
Signal an der Leitung 199 eingeschaltet wird. Der
Ausgang des Transistors 346 ist über die Leitung 347 an den
Eingang des S8-Ausgabepuffers 65-8 angeschlossen. Somit
kann der Inhalt des Programmzählers 36, dann, wenn das
Signal negativ ist, über den Puffer 65-8 seriell
an einer Klemme 17-8 gelesen werden. Wenn das Signal
den Massewert hat, dann ist der Transistor 348 eingeschaltet,
und die Leitung 64-8 ist an den S8-Ausgabepuffer für die
übliche Betriebsweise angeschlossen.
In Fig. 19 ist eine Rückkopplungsschaltung für den Programmzähler
von Fig. 9 dargestellt. Diese Schaltungsanordnung
prüft die sechs einzelnen Ausgänge 42-0 bis 42-5 des
Programmzählers 36 und bestimmt, ob ein Signalwert "1"
oder "0" in die erste Stufe des Programmzählers über
die Leitung 350 eingegeben werden soll. Eine Antivalenz-
Schaltung 351 prüft die die Ausgangsleitungen der letzten
zwei Stufen des Programmzählers 36 bildenden Leitungen 42-4
und 42-5, und sie erzeugt ein Äquivalenzsignal; wenn die
Signale an beiden Leitungen den Wert "0" oder den Wert "1"
haben, dann wird zum Eingang 350 ein Signal mit dem Wert "1"
zurückgeführt, während dann, wenn unterschiedliche Signalwerte
vorliegen, ein Signal mit dem Wert "0" zurückgeführt
wird. Dies ermöglicht eine Zählung bis zu 63 in beliebiger
Weise, doch muß ein Ausweg aus der Situation vorgesehen
werden, in der das den Programmzähler 36 bildende Schieberegister
nur Signale mit dem Wert "1" enthält. Wenn nur
die Werte "1" enthalten sind, dann würde der zurückübertragene
Signalwert ebenfalls der Wert "1" sein, und der Programmzähler
würde in dem ausschließlich von den Werten "1" gebildeten
Stand bleiben. Um dies zu vermeiden, reagiert
die Verknüpfungsschaltung 352 auf 1234 und erzwingt
einen Zählerstand 1111, in dem der Zähler verbleiben würde,
jedoch reagieren die UND-Schaltungen 353 und 354 zusammen
auf 012345, so daß sie ein Signal mit dem Wert "0" als
nächstes Rückkopplungssignal erzwingen. Diese Anordnung
hat zur Folge, daß das sechsstufige Schieberegister in einer
pseudo-beliebigen Weise bis 64 zählt, d. h. in einer eingestellten
wiederholenden Reihenfolge, und nicht in der
regulären Reihenfolge. Die Verknüpfungsschaltung 355 wird
zu Prüfzwecken verwendet; wenn an der Leitung 199 von
Fig. 11 das Signal erscheint, ist der übliche Übertragungsweg
aus der Verknüpfungsschaltung 351 unterbrochen,
und das Eingangssignal K1 an der Leitung 75-1
wird seriell in den Programmzählereingang 350 eingegeben.
In Fig. 20 ist ein Blockschaltbild des Taktgenerators 80
dargestellt. Der Taktgenerator besteht aus drei herkömmlichen
Zählerstufen 360, von denen jede mit den
Taktsignalen ϕ und getaktet wird, die aus einem
Taktoszillator 361 erhalten werden. Das Taktsignal ϕ,
das eine Frequenz von etwa 500 kHz aufweist, kann direkt
über einen externen Anschlußstift 22 synchronisiert
werden; die externen Anschlußstifte 22 und 23 können auch
miteinander verbunden und über einen die Frequenz
einstellenden Widerstand 362 an die Spannung -Vdd
gelegt sein. Die Frequenz kann durch Verwendung
eines kleineren Widerstandes und eines an Masse Vss
angeschlossenen Kondensators 363 genauer eingestellt
werden. Der Oszillator 361 kann verschiedene Ausführungsformen
haben. Zur Erzeugung der sechs Teilintervalle 91
bis 96 von Fig. 1 aus dem Taktsignal ϕ sind die Zählerstufen
unter Verwendung einer Rückkopplungsschaltung 364
so geschaltet, daß sie in der üblichen Weise bis sechs
zählen. Ein Decodierer 365 bewirkt eine Auswahl aus
den drei Ausgängen 366 der Zähler, an denen die sechs
bestimmten Zählerstände der Zähler anliegen, damit an
den Ausgangsleitungen 367 die Taktsignale , , und
erzeugt werden; diese Taktsignale werden dann zur
Erzeugung der Taktsignale ϕ1, ϕ2, ϕ3 und ϕ5 an den Ausgängen
368 für die Verwendung im gesamten System negiert. Zur
Erzeugung des Taktsignals ϕ4 sind die Ausgänge 367 der Taktsignale
und an eine ODER-Schaltung 369 angeschlossen,
deren Ausgang zur Erzeugung des Taktsignals mit Hilfe
einer Zählerstufe 370 um ein Intervall verzögert wird.
Das negierte Taktsignal ergibt an der Leitung 371
das Taktsignal ϕ4.
In den Fig. 21a bis 21j sind die in der Anordnung gemäß
den Fig. 3 und 5 bis 20 dargestellten Verknüpfungsschaltungen,
Negatoren usw. im einzelnen dargestellt. Es sei
bemerkt, daß alle Negatoren mit Hilfe von Ionenimplantation
hergestellte Negatoren mit Verarmungslast (ion implanted
depletion load type) sind, die den Energieverbrauch auf
ein Minimum verringern. Die Verknüpfungsschaltungen machen
entweder von Verarmungslasten oder von geschalteten Lasten
Gebrauch, oder sie sind Verknüpfungsschaltungen mit Vorladung,
damit auch hier Energie gespart wird.
Die aus acht Bits bestehenden Befehlswörter im Festspeicher
24, die an den Leitungen 33 ausgelesen werden,
haben das in Fig. 22 dargestellte Format; der Block 380
stellt dabei ein acht Bits R0 bis R7 enthaltendes Wort
dar. Dieses Wort kann so betrachtet werden, als habe
es bestimmte Felder und Teilfelder, die für verschiedene
Funktionen unterschiedlich sind. Das Bit R0 bewirkt
stets die Unterscheidung zwischen Verzweigung oder Aufruf
(Wert "1") und Operation (Wert "0"); dies ist das Feld OP1.
Der Befehlsvorrat weist vier Grundformate I, II, III und IV
auf; das Feld OP1 erscheint in allen diesen Grundformaten.
Das Formal I ist für Verzweigungen oder Aufrufe vorgesehen,
und es enthält beim Bit R1 ein Feld CB, das der Unterscheidung
zwischen Verzweigungen und Aufrufen dient, sowie
in den Bits R2 bis R7 ein Feld W, das eine von sechs Bits
gebildete Adresse für den Speicherplatz der Verzweigung
oder des Aufrufs ist. Das Format II ist das von Befehlen
mit Konstanten aus vier Bits, die im Feld C an den Bit-
Stellen R4 bis R7 enthalten sind; das von drei Bits
gebildete Feld OP2 an den Bitstellen R1 bis R3 definiert
hier die mit der Konstante durchzuführende Operation.
Das Format III wird für Bit- und RAM-Seitenoperationen
angewendet, wobei das Feld B das Bit oder die Adresse
darstellt, während das Feld F die Operation definiert,
und das Feld OP3 die Codegruppe 0111 für Bit- oder
RAM-Seitenoperationen kennzeichnet. Das Format IV
dient arithmetisch oder speziellen Befehlen, die von
den Feldern OP3 und A definiert werden.
In Fig. 23 ist eine Karnaugh-Tafel der allgemeinen Klassen
der Befehle dargestellt. Ein aus acht Bit bestehendes
Befehlswort ermöglicht 2⁸ oder 256 mögliche Kombinationen
oder eindeutige Befehle. Ein Viertel dieser Befehle, nämlich
die 64 im oberen linken "11"-Quadranten enthaltenen Befehle,
repräsentieren 64 mögliche Aufrufoperationen. Ein weiteres
Viertel, nämlich die Befehle im "10"-Quadranten, repräsentieren
64 mögliche Verzweigungsoperationen, d. h. daß jeder
dieser Befehle eine Verzweigung zu einem von 64 möglichen
ROM-Speicherplätzen darstellt. Der untere linke "01"-
Quadrant enthält 64 Möglichkeiten für Konstantenoperationen,
wobei jeder Unterquadrant dieses Quadranten 16 mögliche
Konstante im 4-Bit-Konstantfeld C enthält. Der unten
rechts liegende "00"-Quadrant enthält 16 mögliche Seitenadressen
für lange Aufrufe oder lange Verzweigungen im
Feld C des "0001"-Abschnitts, und er enthält 16 Bit-
und RAM-Seitenoperationen im "0011"-Abschnitt. Alle
arithmetischen und speziellen Befehle sind in den 32 möglichen
Befehlen der "0010"- und "0000"-Abschnitte enthalten.
Eine genaue Beschreibung eines Befehlsvorrats befindet
sich in der am Ende angefügten Tabelle. Durch Umprogrammieren
des Steuerwerks und des Festspeichers sind weitere Befehlsvorräte
möglich. Der in der Tabelle beschriebene Befehlsvorrat
eignet sich für Rechenfunktionen.
Es sei bemerkt, daß die mnemonischen Bezeichnungen für die
verschiedenen Befehle im Befehlsvorrat mit den meisten Bezeichnungen
der Leitungen 147 und 61-16 bis 61-23 des
Steuerwerks von Fig. 7 übereinstimmen.
Wie zu erkennen ist, hängen die Arbeitsweise des Programmzählers
36 und des Unterprogrammregisters 43 von der Betriebsart
(dem Maschinenstatus) der Anordnung ab. Es sind zwei
Zustände möglich, nämlich der Normalzustand und der Aufrufzustand,
der einen Eintritt in ein Unterprogramm
kennzeichnet. Der Maschinenstatus wird vom Zustand der
Aufrufhalteschaltung 201 bestimmt, die von erfolgreichen
Befehlen CALL oder RETURN (Aufruf oder Rückkehr) gesteuert
wird.
Zu Beginn jedes Befehlszyklus, in dessen Verlauf sich die
Anordnung im Normalbetrieb befindet, wird die im Programmzähler
36 vorhandene Wortadresse über die in Fig. 19 dargestellte
Schaltung aktualisiert, damit die nächste ROM-
Wortadresse erzeugt wird, die dann unbedingt im Unterprogrammregister
43 abgespeichert wird. Nach Ausführung
eines erfolgreichen Befehls CALL geht die Anordnung in
den Aufrufzustand über, in dem eine weitere Datenübertragung
in das Unterprogrammregister 43 verhindert wird. Der Inhalt
des Unterprogrammregisters 43 wird nicht an der Wortadresse
des Befehls CALL, sondern an der Wortadresse des nächsten
folgenden Befehls festgehalten.
Die Ausführung des Befehls "RETURN" führt die Anordnung
wieder in ihren normalen Zustand zurück, und der Inhalt
des Unterprogrammregisters 43 wird in den Programmzähler 36
zurückübertragen, wodurch eine Rückkehr zur richtigen Wortadresse
erfolgt.
Der Programmzähler 36 wird vom Zustand der Anordnung,
der durch das Signal CLATCH ausgedrückt wird, beeinflußt.
Der Programmzähler erzeugt bei jedem Befehlszyklus die
nächste Wortadresse, wenn sein Inhalt nicht durch die
Ausführung eines erfolgreichen Befehls CALL oder eines
erfolgreichen Befehls BRANCH (Verzweigung) oder RETURN
geändert wird.
Der Zustand der Anordnung ändert die Funktion des
ROM-Seitenpufferregisters 47. Während des Normalbetriebs
dient das Register 47 als Quelle für eine neue Seiteninformation
bei der Ausführung eines erfolgreichen Befehls
CALL oder BRANCH. Ein erfolgreicher Befehel BRANCH bewirkt
bei der Ausführung im Normalbetrieb stets ein Übertragen
des Inhalts des Registers 47 in das ROM-Seitenadreßregister
46. Wenn der Inhalt des Registers 47 nicht geändert wird,
erfolgen somit alle anschließenden erfolgreichen Verzweigungen
innerhalb der gleichen Seite. Verzweigungen dieser
Art werden Kurzverzweigungen genannt. Für eine Verzweigung
zu einer anderen Seite, also für die Durchführung einer
langen Verzweigung, muß der Inhalt des Registers 47
auf die gewünschte Seitenadresse geändert werden, indem
ein Befehl zum Laden des ROM-Seitenregisters ausgeführt
wird. Die Ausführung einer erfolgreichen Verzweigung
bewirkt nicht das Übertragen der neuen Seitenadresse in das
Adreßregister 46; sie stellt die Hardware so ein, daß
kurze Verzweigungen innerhalb der neuen Seite ausgeführt
werden.
Die Datenübertragung vom Pufferregister 47 in das Adreßregister
46 erfolgt in der gleichen Weise wie bei der
Ausführung des erfolgreichen Befehls CALL. Lange Aufrufe
können durch Ausführen eines Befehls zum Laden des
ROM-Seitenregisters vor der Ausführung eines Befehls CALL
durchgeführt werden. Das Auslassen des Befehls zum Laden
des Seitenregisters würde zu einem kurzen Aufruf führen.
Nach der Ausführung entweder eines langen oder eines
kurzen Aufrufs wird der Inhalt des Adreßregisters 46,
der die vorherige Aufrufseitenadresse darstellt, in das
Pufferregister 47 übertragen. Die Datenübertragung
zwischen dem Pufferregister 47 und dem Adreßregister 46
ist gesperrt. Somit wird das Pufferregister dazu verwendet,
die gewünschte Seitenadresse nach der Rückkehr aus einem
Unterprogramm zu speichern. Wegen dieses Merkmals ist es
nicht möglich, lange Verzweigungen auszuführen, während
sich die Anordnung im Aufrufbetrieb befindet. Ebenso
kann ein Unterprogramm mehr als 64 Befehle (eine volle
Seite) enthalten. Es ist jedoch zulässig, die Konstanten
im Pufferregister 47 zu ändern, wenn der Abrufbetrieb
vorliegt, in dem ein Befehl zum Laden des ROM-Registers
ausgeführt wird. Dies würde die Änderung der Rückkehrseitenadresse
ermöglichen, wenn ein Unterprogramm verlassen
wird. Die Ausführung eines Rückkehrbefehls RETURN bewirkt
die Übertragung des Inhalts des Pufferregisters 47 in
das Adreßregister 46, das Einstellen der Hardware in
einen Zustand zur Durchführung kurzer Verzweigungen und
die Rückkehr der Anordnung in den normalen Zustand.
Ein erfolgloser Aufrufbefehl CALL oder Verzweigungsbefehl
BRANCH hat weder auf den Zustand der Anordnung
noch auf den Inhalt der Register 46 und 47 Einfluß.
Die in den zwei Seitenadreßregistern enthaltenen
Daten bleiben unverändert. Das bedeutet, daß die Hardware
zur Durchführung kurzer Operationen eingestellt wird, wenn
ein kurzer Aufrufbefehl CALL oder Verzweigungsbefehl BRANCH
durchgeführt werden sollte; wenn ein langer Aufrufbefehl
CALL oder Verzweigungsbefehl BRANCH eingeleitet wurde,
wird die Hardware zur Durchführung der langen Operation
eingestellt. Außerdem ist die Ausführung eines Rückkehrbefehls
RETURN in den Normalbetrieb eine "Nicht-Operation"
(no-op).
Zur Ergänzung der Befehlssteuerung der ROM-Adressierungslogik
ist zusätzlich zur Einschaltlöschschaltung ein externer
Eingang zur Schaltungsinitialisierung enthalten. Die
Schaltungsinitialisierung setzt den Zustand der Anordnung
auf den Normalzustand, setzt die Seitenadressen auf
Adressen zur Durchführung kurzer Verzweigungen, setzt
die Seitenadresseninhalte auf das Komplement der an die
vier K-Leitungen angelegten Daten und überträgt die an
der K-Leitung anliegenden Daten in serieller Weise in
den Programmzähler 36.
Ohne von außen angelegte Eingangssignale werden der
Programmzähler 36 auf das Hexadezimalwert 00 (0) und
das Seitenadreßregister 46 auf die Hexadezimaladresse
F (15) eingestellt.
Hinsichtlich des Befehlsvorrat ist zu erkennen, daß
der Addierer 50 zwei getrennte, gleichzeitig ablaufende
Funktionen durchführen kann und drei Ausgangssignale
liefert.Die zwei 4-Bit-Signale an den Eingängen 57 und 58
können addiert und miteinander verglichen werden, was
ein wahres binäres Summenausgangssignal, ein Übertragausgangssignal
der höchstwertigen Ziffernstelle und
ein Vergleichssignal liefert, wobei dieses Vergleichssignal
anzeigt, ob die zwei Binärzahlen die gleiche
Größe haben, d. h. in jedem Bit übereinstimmen. Die die
Gleichheit und den Übertrag kennzeichnenden Informationen
können zum Einstellen von Abruf- oder Verzweigungsbedingungen
verwendet werden. Die gelieferte Summe kann
im Akkumulator und/oder im RAM-Y-Register gespeichert
werden, oder sie braucht überhaupt nicht verwendet werden.
Die Zeitsteuerfolge der Ausführung von Befehlswörtern
läßt sich aus der Bezugnahme auf Fig. 24 und 25 erkennen.
In Fig. 24 ist eine Reihe von Befehlszyklen A, B, C . . . usw.
zusammen mit den Taktsignalen ϕ1, ϕ2, ϕ3, ϕ4 und ϕ5 dargestellt.
Es sei angenommen, daß im Befehlszyklus C der
Inhalt einer Stelle im Direktzugriffspeicher 25 zum
Addierer 50 übertragen und zum Akkumulator 52 abgegeben
werden soll. Eine schematische Darstellung dieser
Operation ist in Fig. 25 zu erkennen. Die Eingabe in den
Addierer 50 wird während des Taktsignals ϕ1 des Befehlszyklus
C, der als ϕ1C dargestellt ist, gültig. Das Bit
aus dem Direktzugriffspeicher 25 wird bei ϕ4, ϕ1C am
Transistor 106 gültig, wobei die Ausgangsleitung 32 mit
dem Taktsignal ϕ2B über den Transistor 107 vorgeladen
worden ist. Der Befehl an der Leitung 61-5 wird
mit dem Taktsignal ϕ2B gültig, wenn die Verknüpfungsschaltung
149 im Datenwegsteuerwerk 60 freigegeben wird.
Die Signale an der Leitung 146 des Steuerwerks sind nach
Beendigung des Taktsignals ϕ1B gültig. Das Befehlswort
an den Leitungen 33 wird während des Taktsignals ϕ2B
gültig und erscheint an der Leitung R0 an der Ausgabeschaltung
253. Die Ausgabedecodierung für den Festspeicher
an den Transistoren 245 und 246 wird ebenfalls beim Taktsignal
ϕ2B über die Transistoren 251, 248 und die Leitung
35-1 wirksam. Im Festspeicher werden die Leitungen 240
beim Taktsignal ϕ1B vorgeladen, und sie enthalten beim
Taktsignal ϕ2B gültige Daten. Die Signale an den Y-Leitungen
241 sind zur Zeit des Taktsignals ϕ2B gültig, wobei der
Transistor 282 mit dem Taktsignal ϕ1B eingeschaltet worden
ist. Die Leitung 281 im Y-Decodierer 27 wurde bei ϕ4
(ϕ1B) vorgeladen, und das an ihr befindliche Signal wurde
während des letzten Abschnitts des Taktsignals ϕ1B gültig.
Die ROM-Y-Adresse aus dem Programmzähler wurde zur Zeit
des Taktsignals ϕ1B über den Transistor 271 eingegeben.
Unter der Annahme, daß der Befehl das Ergebnis einer
Verzweigung war, wurde der Befehl an der
Leitung 163 nach Beendigung des Taktsignals ϕ2A in der
Verknüpfungsschaltung 48-7 gültig. Der ROM-Verzweigungsbefehl
von den Leitungen 33 wurde mit dem Taktsignal ϕ2A
eingegeben, und das Zustandssignal an der Leitung 79 wurde
während der letzten Hälfte des Taktsignals ϕ2A gültig,
nachdem die Vorladung der Verknüpfungsschaltung 66-1
mit dem Taktsignal ϕ3A endete. Unterdessen gelangt die
Verzweigungsadresse von den Leitungen 33 in den Programmzähler,
der die beim Taktsignal ϕ2A gültige Verzweigungsadresse
vom Ausgang 253 des Festspeichers enthielt.
Bei einem Befehl, wie er oben definiert wurde und im
Befehlszyklus C ausgeführt werden soll, sind die Daten
somit am Punkt 381 von Fig. 24 gültig, die RAM-Y-Adresse
der Daten ist am Punkt 382 gültig, und der ROM-Befehl
an den Leitungen 33 ist am Punkt 383 gültig. Die ROM-
Y-Adresse dieses Worts gelangt am Punkt 384 in den Decodierer
27. Diese Adresse wird am Punkt 385 gültig.
Das Zustandssignal wird für eine Verzweigung zu dieser
Adresse am Punkt 386 gültig, und die Verzweigungsadresse
war auch an diesem Punkt 386 am Ausgang des Festspeichers
gültig.
Die gesamte oben beschriebene Anordnung wird in einem
einzigen MOS/LSI-Chip hergestellt, der in Fig. 26 stark
vergrößert dargestellt ist; in dieser Darstellung sind
alle Hauptbestandteile mit den gleichen Bezugszeichen
versehen, die im Blockschaltbild von Fig. 3 verwendet
sind. Beim Herstellungsverfahren werden P-Kanäle
mit Metall-Gate-Elektroden verwendet, und es wird
für Verarmungslasten das Ionenimplantationsverfahren
angewendet. Der Chip enthält mehr als 28 Anschlußflächen, so
daß es möglich ist, ihn in einem Gehäuse mit mehr als 29
Anschlußstiften zu verwenden, wenn mehr Ziffernstellen oder
Anzeigestellen genutzt werden sollen. Es ist zu erkennen,
daß der Festspeicher, der Direktzugriffspeicher und das
Steuerwerk den Hauptteil der Fläche des Chips besetzen.
Der Chip hat eine Seitenlänge von etwa 5 mm (200 mils).
Auf die Möglichkeit, den Chip in einer Prüfbetriebsart
zu betreiben, ist bereits hingewiesen worden. Die Betriebsart
wird bei der Herstellung gewöhnlich entweder vor oder nach
dem Einschließen der Chips im typischen Kunststoffgehäuse
mit 28 Anschlußstiften angewendet. Die Chips werden
gleichzeitig in Serien von vielleicht 100 Stück gleichzeitig
auf einer Siliziumscheibe mit einem Durchmesser
von 7,5 cm (3 inches) hergestellt; viele Scheiben werden
gleichzeitig bearbeitet. Nachdem alle Herstellungsschritte
beendet sind, werden die Scheiben geritzt und in einzelne
Chips nach Fig. 26 gebrochen. Die Ausbeute an einwandfreien
Elementen bei diesem Vorgang liegt manchmal beträchtlich
unter 100%. Es müssen Tests ausgeführt werden, um herauszufinden,
welche Scheiben einwandfrei sind, welche Chips
auf den Scheiben einwandfrei sind und schließlich welche
fertig verpackten Elemente einwandfrei sind, da bei jedem
Herstellungsschritt eine Beeinträchtigung auftreten kann.
Dieses Testen kann sehr zeitraubend und teuer sein, da, um
sicherzugehen, daß jeder einzelne der 8800 Transistoren
einschließlich der zugehörigen Verbindungen einwandfrei
ist, alle Programme des Rechners ausgeführt werden müssen.
Aus diesem Grund ist die Prüfbetriebsart eingefügt worden.
Der Vorgang würde darin bestehen, jedes der 1024 Befehlswörter
im Festspeicher zu prüfen und dann verschiedene
Befehle auszuführen, die für die Prüfung des Rests der
Schaltung ausreichend sind.
Die im Prüfbetrieb verfügbaren Operationen sind folgendermaßen
gestaltet:
Erstens kann eine ROM-Wortadresse seriell in den Programmzähler
36 über den K1-Anschlußstift 75-1 eingegeben werden,
der zur Verknüpfungsschaltung 355 von Fig. 19 und dann
über die Leitung 350 zum Programmzähler von Fig. 9 führt.
Dies erfolgt unter der Steuerung durch das Signal KC am
Eingang 206; wenn das Signal KC den Massewert Vss hat,
dann macht das Signal an der Leitung 199 die Rückführungsschaltung
über die Verknüpfungsschaltung 351 unwirksam,
während es die K1-Eingabe in den Programmzähler freigibt.
Somit ist in acht Befehlszyklen, also in 8×2 oder
16 Mikrosekunden eine Wortadresse vorhanden. Jedes Bit
wird zur Zeit des Taktsignals ϕ1 geladen, wie es der
Fall ist, wenn der Programmzähler neue Daten am Verbindungspunkt
168 annehmen kann.
Zweitens kann eine ROM-Seitenadresse parallel in das ROM-
Seitenadreßregister 46 über die K1- bis K8-
Leitungen 75, die Transistoren 196, die Leitungen 192
und die Verknüpfungsschaltungen 46′ von Fig. 10 geladen
werden. Dieser Weg wird ebenfalls vom Signal freigegeben,
das den Spannungswert -Vdd hat, und die Bits
werden mit dem Taktsignal ϕ2 geladen. Da die Wortadresse
mit dem Taktsignal ϕ1 seriell ankommt, während die Seitenadresse
parallel mit dem Taktsignal ϕ2 ankommt, können
diese Adressen zeitlich multipliziert werden, so daß
zum Laden der beiden Adressen keine zusätzliche Zeit
benötigt wird. Unter Beachtung der Tatsache, daß zur
Erzeugung einer neuen ROM-Adresse keine vollständig neue
8-Bit-Wortadresse benötigt wird, sondern die Adresse um
1 Bit erhöht werden kann, ist zu erkennen, daß alle 1024
Speicherplätze in einer wesentlich geringeren Zeit als
der Zeit von 1024×16 oder 16 000 Mikrosekunden adressiert
werden können.
Drittens kann ein 8-Bit-Befehlswort aus dem Festspeicher
an der definierten Adresse durch externe Steuerung von
den Leitungen 33 in den Programmzähler 36 übertragen werden.
Dies wird durch Freigabe der Transistoren 162 zum Laden
der Signale bis zu den Verbindungspunkten 164 der
Stufen 36-0 bis 36-7 ausgeführt, wie in Fig. 9 zu erkennen
ist. Die Transistoren 162 werden vom Befehl an
der Leitung 163 gesteuert, der von den Signalen KC und
K2 in der Verknüpfungsschaltung 48-7 nach Fig. 11 erzeugt
werden kann. Dies geschieht innerhalb eines Befehlszyklus.
Viertens kann der Inhalt des Programmzählers 36 über die
Leitung 165 von Fig. 9 und Fig. 18, die Leitung 347 und
den Segmentausgabepuffer 65-8 erneut unter der Steuerung
durch das Signal an der Leitung 199 seriell ausgeschoben
werden. Dies kann einen Schritt, trotzdem aber
zur gleichen Zeit, vor dem Laden einer neuen ROM-Wortadresse
über die Leitung K1 und die Leitung 350 von Fig. 19
geschehen.
Zum Prüfen einiger oder aller ROM-Speicherplätze werden
die eben beschriebenen Schritte 1, 2, 3 und 4 in dieser
Reihenfolge ausgeführt. Alle Bits in allen 1024 Speicherplätzen
können durch eine in geeigneter Weise ausgelegte
Prüfmaschine in weniger als etwa 20 Millisekunden überprüft
werden, was wesentliche kürzer als die für einige komplizierte
Berechnungen im Normalbetrieb erforderliche Zeit ist. Somit
sind umfangreiche Einsparungen in der Prüfzeit möglich.
Eine weitere Prüfprozedur besteht darin, eine Wort-
und Seitenadresse entsprechend den ersten und zweiten oben
beschriebenen Schritten zu laden und der Anordnung dann
zu ermöglichen, eine Folge von Befehlen beginnend an
diesem Speicherplatz auszuführen und die Ergebnisse an
den Ausgangsanschlüssen 17 oder 18 zu beobachten und/oder
die letzte ROM-Ausgabe oder -Adresse aus dem Programmzähler
nach einer gewissen Anzahl von Befehlszyklen zu lesen. Dies
erlaubt das Prüfen ausgewählter Erhöhungen, die ausreichend
sind, den einwandfreien Zustand der Gesamtanordnung zu
prüfen. In einer typischen komplizierten Operation gibt es
Organisationsprogramme, die möglicherweise in Hunderten
von Wiederholugen immer wieder ausgeführt werden, beispielsweise
das Normalisieren. Diese Programme müssen nur
einmal geprüft werden. Diese Prozedur erlaubt das Überspringen
von sich wiederholenden Programmen.
Es ist zu erkennen, daß das Schreiben und das Lesen von
ROM-Adressen und von ROM-Inhalten natürlich durch Lesen
simulierter Tastenfeldeingaben ausgeführt werden können.
Dieser Befehl hängt vom Zustandssignal ab; wenn das
Zustandssignal an der Leitung 79 den Wert "0" hat, dann
wird der Befehl CALL nicht ausgeführt. Wenn das Zustandssignal
den Wert "1" hat, geht die Anordnung in den Aufrufbetrieb
über, was durch Setzen der Aufrufhalteschaltung 200
in den Zustand "1" angezeigt wird. Der Inhalt des Programmzählers
36 wird im Unterprogrammregister 43 abgespeichert.
Die Seitenadresse wird im Pufferregister 47 gespeichert.
Der Inhalt des Pufferregisters 47 wird als Seitenadresse
verwendet. Das W-Feld R2 bis R7 des Befehlsworts wird
über die Transistoren 162 in den Programmzähler 36 geladen.
Alle im Verlauf des Aufrufbetriebs ausgeführten Befehle
üben ihre normale Funktion aus, mit Ausnahme der Befehle
CALL und BRNC (Verzweigung); die Ausführung eines Befehls
CALL innerhalb des Aufrufbetriebs ist nicht gültig;
innerhalb eines Aufrufbetriebs ausgeführte Verzweigungen
müssen innerhalb einer Seite erfolgen.
Dieser Befehl hängt vom Zustandssignal ab. Wenn das Zustandssignal
den Wert "0" hat, dann wird der Verzweigungsbefehl
nicht ausgeführt. Wenn das Zustandssignal den Wert "1" hat,
dann wird das W-Feld in den Programmzähler 36 geladen und
der Inhalt des Pufferregisters 47 wird die neue Seitenadresse
im Register 46, außer wenn der Aufrufbetrieb
vorliegt. Der Verzweigungsbefehl kann (wie auch der Aufrufbefehl)
auf Grund der Wirkung der Zustandslogik 66 unbedingt
sein. Das Zustandssignal hat normalerweise den Wert "1",
was die richtige Bedingung für eine erfolgreiche Ausführung
einer Verzweigung oder eines Aufrufs ist. Wenn der der
Verzweigung oder dem Aufruf unmittelbar vorangehende
Befehl das Zustandssignal nicht beeinflußt, dann ist
die Operation erfolgreich. Das Zustandssignal ist nur
für einen Befehlszyklus gültig. Es ist daher zur Durchführung
mehrfacher Prüfungen vor einer Verzweigungsoperation
ungültig. Nur der dem Verzweigungsbefehl unmittelbar
vorangehende Befehl bestimmt, ob die Verzweigung erfolgreich
ist. Das Zustandssignal kehrt nach einem Verzweigungsbefehl
immer wieder auf den Wert "1 zurück.
Das aus den Bits R4 bis R7 bestehende C-Feld des Befehlsworts
wird in das Y-Register 40 übertragen. Dies erfolgt
unbedingt, und weder ein Übertragungssignal noch ein Gleichheitssignal
gelangen zur Zustandslogik 66.
Der Inhalt des Y-Registers 40 wird mit dem C-Feld des
Befehlsworts verglichen. Die Gleichheitsinformation
an der Leitung 67 wird in die Zustandslogik 66 eingegeben.
Bei Ungleichheit wird die Zustandslogik auf den Wert "1"
eingestellt. Dieser Befehl steht nicht unter der Bedingung
des Zustandssignals.
Der Inhalt des C-Feldes wird direkt an den von den X-
und Y-Registern 73 und 40 adressierten Speicherplatz abgespeichert.
Der Inhalt des Y-Registers 40 wird dann um 1
erhöht. Der Befehl steht nicht unter der Bedingung des
Zustandssignals, und das Übertragsignal und das Gleichheitssignal
werden nicht zur Statuslogik übertragen.
Der Inhalt des Akkumulators 52 wird unter Anwendung der
Addition im Zweierkomplement vom C-Feld des Befehlsworts
subtrahiert. Die sich ergebende Übertraginformation
an der Leitung 67 wird in die Zustandslogik 66 eingegeben.
Wenn der Inhalt des Akkumulators kleiner oder gleich der
Konstante ist, wird die Zustandslogik auf den Wert "1"
gesetzt. Der Befehl ist unbedingt.
In das Seitenpufferregister 47 wird die Konstante aus
dem C-Feld des Befehlsworts geladen. Dies erfolgt unbedingt,
und weder das Übertragssignal noch das Gleichheitssignal
werden zur Zustandslogik übertragen.
Der Inhalt des von den X- und Y-Registern 73 und 74
adressierten Speicherplatzes wird ausgewählt. Eines
der vier Bits, das vom B-Feld des Befehlsworts ausgewählt
wird, wird auf den Wert "1" gesetzt.
Der Inhalt des von den X- und Y-Registern 73 und 40
adressierten Speicherplatzes des Direktzugriffspeichers 25
wird ausgewählt. Eines der vier Bits, das vom B-Feld des
Befehlsworts über die CKB-Logik 56 ausgewählt wird, wird
auf den Wert "0" rückgesetzt.
Der Inhalt des von den X- und Y-Registern 73 und 40 adressierten
Speicherplatzes wird ausgewählt. Eines der vier
Bits, das vom B-Feld des Befehlsworts über die CKB-
Logik 56 ausgewählt wird, wird im Addierer 50 geprüft.
Der Wert "1" des ausgewählten Bits setzt über den
Gleichheitsausgang zur Zustandslogik an der Leitung 67
die Zustandslogik auf den Wert "1".
Das X- oder RAM-Seitenadreßregister 73 wird vom B-Feld
des Befehlsworts geladen. Dies erfolgt unbedingt, und weder
das Übertragssignal noch das Gleichheitssignal gelangen zur
Zustandslogik 66.
Der Inhalt des Akkumulators 52 wird an dem von den
X- und Y-Registern 73 und 40 adressierten RAM-Speicherplatz
abgespeichert. Nach Beendigung des Speichervorgangs
wird der Inhalt des Y-Registers 40 um 1 erhöht. Dies
erfolgt unbedingt, und die Zustandslogik wird nicht
beeinflußt.
Der Inhalt des von den X- und Y-Registern 73 und 40
adressierten RAM-Speicherplatzes wird unbedingt zum
Akkumulator 52 übertragen. Die Speicherdaten im Direktzugriffspeicher
werden nicht verändert. Dies erfolgt
unbedingt, und die Übertrag- und Gleichheitssignale
gelangen nicht zur Zustandslogik.
Der Inhalt des von den X- und Y-Registern 73 und 40 adressierten
RAM-Speicherplatzes wird unbedingt zum Y-Register 40
übertragen. Die Speicherdaten im Direktzugriffspeicher
bleiben unverändert.
Der Inhalt des Y-Registers 40 wird unbedingt zum Akkumulator
52 übertragen. Der Inhalt des Y-Registers 40 bleibt unverändert.
Der Inhalt des Akkumulators 52 wird unbedingt zum Y-
Register 40 übertragen. Der Akkumulatorinhalt bleibt
unverändert.
Der Inhalt des Akkumulators 52 und der Inhalt des von
den X- und Y-Registern 73 und 40 adressierten RAM-Speicherplatzes
werden addiert, und die resultierende Summ wird
im Akkumulator 52 gespeichert. Die resultierende Übertraginformation
an der Leitung 67 wird in die Zustandslogik
66 eingegeben. Ein Summenwert, der größer als 15 ist,
setzt die Zustandslogik auf den Wert "1". Der Inhalt des
Speicherplatzes im Direktzugriffspeicher 25 bleibt unverändert.
Der Inhalt des von den X- und Y-Registern 73 und 40 adressierten
RAM-Speicherplatzes wird mit 0 verglichen. Die Gleichheitsinformation
an der Leitung 67 wird in die Zustandslogik
übertragen. Bei Ungleichheit zwischen dem Speicherinhalt
und Null wird die Zustandslogik 66 auf den Wert
"1" gesetzt.
Der Inhalt des Akkumulators 52 wird vom Inhalt des
von den X- und Y-Registern 73 und 40 adressierten RAM-
Speicherplatzes unter Anwendung der Addition im Zweierkomplement
subtrahiert, wobei die Differenz im Akkumulator
52 gespeichert wird. Die resultierende Übertraginformation
wird in die Zustandslogik 66 eingegeben. Die Zustandslogik
wird auf den Wert "1" gesetzt, wenn der Akkumulatorinhalt
kleiner oder gleich dem Speicherinhalt ist.
Der Inhalt des von den X- und Y-Registern 73 und 40
adressierten RAM-Speicherplatzes wird um 1 erhöht und
im Akkumulator 52 gespeichert. Der ursprüngliche Inhalt
des Direktzugriffspeichers bleibt unverändert. Die
resultierende Übertraginformation wird über die Leitung 67
in die Zustandslogik 66 eingegeben. Die Zustandslogik
wird auf den Wert "1" gesetzt, wenn der Summenwert größer
als 15 ist.
Der Inhalt des Akkumulators 52 wird vom Inhalt des von
den X- und Y-Registern 73 und 40 adressierten RAM-Speicherplatzes
unter Anwendung der Addition im Zweierkomplement
subtrahiert. Die resultierende Übertragungsinformation wird über
die Leitung 67 in die Zustandslogik 66 eingegeben. Wenn die
Zustandslogik den Wert "1" hat, wird angezeigt, daß
der Inhalt des Akkumulators kleiner oder gleich dem
Speicherinhalt ist. Die Inhalte des Speichers und des
Akkumulators bleiben unverändert.
Der Inhalt des von den X- und Y-Registern 73 und 40 adressierten
RAM-Speicherplatzes wird um 1 erniedrigt und in
den Akkumulator 52 geladen. Der Speicherinhalt bleibt
unverändert. Die resultierende Übertraginformation wird
in die Zustandslogik eingegeben. Wenn der Speicherinhalt
größer oder gleich dem Wert 1 ist, wird die Zustandslogik
auf den Wert "0" gesetzt.
Der Inhalt des Y-Registers 40 wird um 1 erhöht. Die resultierende
Übertraginformation wird in die Zustandslogik 66
eingegeben. Ein Summenwert von mehr als 15 setzt die Zustandslogik
auf den Wert "1".
Der Inhalt des Y-Registers 40 wird um 1 erniedrigt. Die
resultierende Übertraginformation wird in die Zustandslogik
66 eingegeben. Wenn Y größer oder gleich 1 ist, wird
die Zustandslogik auf den Wert "1" gesetzt.
Der Inhalt des Akkumulators wird unter Anwendung der Addition
im Zweierkomplement von 0 subtrahiert. Das Ergebnis
wird im Akkumulator 52 gespeichert. Die resultierende Übertraginformation
wird in die Zustandslogik 66 eingegeben.
Diese Operation ist der Komplementierung und der Erhöhung
des Akkumulatorinhalts äquivalent. Wenn der Akkumulatorinhalt
0 ist, wird die Zustandslogik auf den Wert "1" gesetzt.
Der Inhalt des von den X- und Y-Registern 73 und 40 adressierten
RAM-Speicherplatzes wird mit dem Inhalt des Akkumulators 52
ausgetauscht. Das bedeutet, daß der Akkumulatorinhalt im
Speicher abgespeichert wird, während der Speicherinhalt zum
Akkumulator übertragen wird.
Der Inhalt des Akkumulators 52 wird unbedingt auf 0 gesetzt.
Die Konstante 8, die von den Bits R7 bis R4 des Befehlsworts
bestimmt wird, wird zum Inhalt des Akkumulators 52 addiert.
Die resultierende Übertraginformation wird in die Zustandslogik
66 eingegeben. Ein Summenwert von mehr als 15 setzt
die Zustandslogik auf den Wert "1".
Der Inhalt des Y-Registers 40 wird mit dem Inhalt des Akkumulators
52 verglichen. Die Gleichheitsinformation wird in
die Zustandslogik 66 eingegeben. Bei Ungleichheit zwischen dem
Inhalt des Y-Registers und dem Inhalt des Akkumulators wird
die Zustandslogik auf den Wert "1" gesetzt. Der Wert der
Zustandslogik 66-1 wird auch in die Zustandshalteschaltung
66-62 übertragen.
Der Inhalt des Akkumulators 52 wird an dem von den X- und
Y-Registern 73 und 40 adressierten RAM-Speicherplatz abgespeichert.
Der Akkumulatorinhalt 52 bleibt unverändert.
Der Inhalt des Akkumulators 52 wird an dem von den X- und
Y-Registern 73 und 40 adressierten RAM-Speicherplatz abgespeichert.
Der Akkumulator 52 wird dann auf 0 rückgesetzt.
Die Konstante 10, die von den Bits R7 und R4 des Befehlsworts
bestimmt wird, wird zum Inhalt des Akkumulators 52
addiert.
Die Konstante 6, die von den Bits R7 und R4 des Befehlsworts
bestimmt wird, wird zum Inhalt des Akkumulators 52
addiert. Die resultierende Übertraginformation wird in
die Zustandslogik 66 eingegeben. Ein Ergebniswert von mehr
als 15 setzt die Zustandslogik auf den Wert "1".
Der Inhalt des Akkumulators 52 wird um 1 erniedrigt. Die
resultierende Übertraginformation wird in die Zustandslogik 66
eingegeben. Wenn der Akkumulatorinhalt größer oder gleich
1 ist, wird die Zustandslogik auf den Wert "1" gesetzt.
Der Inhalt des Akkumulators 52 wird um 1 erhöht.
Der Inhalt des X- oder RAM-Seitenadreßregisters 73 wird
komplementiert.
Daten an den vier externen K-Eingangsleitungen 75 werden
in den Akkumulator 52 übertragen.
Daten an den externen K-Eingangsleitungen 75 werden mit 0
verglichen. Die Gleichheitsinformation wird in die Zustandslogik
66 eingegeben. Externe Daten, die nicht den Wert 0
haben, setzen die Zustandslogik auf den Wert "1".
Der Inhalt des Akkumulators 52 und der Inhalt der Zustandshalteschaltung
66-2 werden zum Ausgaberegister 62 übertragen.
Der Inhalt des Ausgaberegisters 62 wird in ihm selbst decodiert,
damit Daten an bis zu 8 Ausgabeleitungen 17 angelegt
werden; dieses Register ist ein primäres Register, das
zum Ausgeben von Daten aus dem Chip verwendet wird.
Der Inhalt des Y-Registers 40 wird auch um 1 erhöht.
Der Inhalt des Ausgaberegisters 62 wird auf 0 gesetzt.
Wenn der Inhalt des Y-Registers 40 einen Wert zwischen 0
und einschließlich 12 hat, dann wird einer der D-Ausgänge
auf den Wert "0" rückgesetzt. Die Auswahl des D-Ausgangs
wird vom decodierten Inhalt des Y-Registers 40 bestimmt.
Wenn das Y-Register Werte über 12 enthält, ist der Befehl
eine Nicht-Operation für den Benutzer.
Wenn der Inhalt des Y-Registers 40 einen Wert zwischen 0
und einschließlich 12 hat, dann wird einer der D-Ausgänge
auf den Wert "1" gesetzt. Die Auswahl des D-Ausgangs wird
vom decodierten Inhalt des Y-Registers 40 bestimmt. Für
Werte über 12 im Y-Register ist der Befehl eine Nicht-
Operation für den Benutzer.
Nach einem Arbeiten im Aufrufbereich wird der Inhalt
des Unterprogrammregisters 43 in den Programmzähler 36
übertragen. Gleichzeitig wird der Inhalt des Pufferregisters
47 in das ROM-Seitenadreßregister 46 übertragen.
Diese Operation führt die Gesamtanordnung an die richtige
Stelle nach der Ausführung eines Unterprogramms zurück.
Wenn ein Rückkehrbefehl nicht im Aufrufbetrieb ausgeführt
wird, d. h. wenn ein Unterprogramm ausgeführt wird, ist
dies eine Nicht-Operation.
Claims (6)
1. In einem Halbleiter-Chip integrierte elektronische digitale
Datenverarbeitungsanordnung mit einem Festspeicher
(24) zum Speichern von Befehlswörtern, einer Adressiervorrichtung
(27, 36, 46) zum Auswählen von Befehlswörtern im
Festspeicher (24), einem Schreib/Lese-Speicher (25) zum Speichern
von Daten, einer weiteren Adressiervorrichtung (27,
73, 29, 40) zum Auswählen von Speicherplätzen in dem Schreib/
Lese-Speicher (25) und zum Eingeben oder Ausgeben von Daten,
einem Binäraddierer (50) mit Eingängen (57, 58) und einem Ausgang
(59), einer Busvorrichtung (41, 42, 53, 34, 35, 26, 28,
54, 55, 33), die mit den Adressiervorrichtungen (27, 36, 46,
73, 29, 40), mit dem Ausgang (59) des Binäraddierers (50) über
den Akkumulator (52) und das RAM-Y-Register (40) in Verbindung
steht, und einem Datenwegs-Steuerwerk (60), das mit einem mit der
Busvorrichtung (33) in Verbindung stehenden Eingang für den
Empfang von Befehlswörtern aus dem Festspeicher (24) verbunden
ist und Ausgangssteuersignale (61) zur Systemsteuerung
an den Binäraddierer (50) und den Schreib/Lese-Speicher (25)
abgibt, dadurch gekennzeichnet, daß mehrere getrennte Gruppen
von Eingangs- und Ausgangsanschlüssen (16, 17, 18) vorgesehen
sind, die zum Eingeben oder zum Ausgeben von Daten
jeweils getrennt über zwischengeschaltete Vorrichtungen mit
der Busvorrichtung (41, 42, 53, 54, 55, 30, 32, 33, 75) in
Verbindung stehen, daß jeder von wenigstens zwei Gruppen ein
eigenes Mehr-Bit-Register (65, 86) zugeordnet ist, so daß
Daten in dieses eigene Register über die Busvorrichtung unter
der Steuerung durch die Ausgangssteuersignale geschrieben
werden können, daß die zwei Register (65, 86) an ihren
zugehörigen Gruppen von Ausgangsanschlüssen
(17, 18) jeweils unabhängig von der anderen Gruppe Ausgangssignale
abgeben, und daß wenigstens eine der Gruppen (16)
zur Dateneingabe über die Busvorrichtung (41, 42, 53, 30,
71, 75, 54, 55, 33) an den Schreib/Lese-Speicher (25) oder
an den Binäraddierer (50) angeschlossen ist.
2. In einem Halbleiter-Chip integrierte elektronische digitale
Datenverarbeitungsanordnung nach Anspruch 1, dadurch
gekennzeichnet, daß an die Busvorrichtung (53)
ein Akku-Pufferregister (62) für den Empfang
von Daten aus dem Binäraddierer (50) und zur Abgabe an die
Ausgangsanschlüsse (17)
angeschlossen ist.
3. In einem Halbleiter-Chip integrierte elektronische digitale
Datenverarbeitungsanordnung nach Anspruch 2, dadurch
gekennzeichnet, daß an das Akku-Pufferregister (62) und an die
Busvorrichtung (53) ein
Akkumulator (52) zum Empfang von Ausgangsdaten aus dem
Binäraddierer (50) und zur Abgabe an das Akku-Pufferregister (62)
angeschlossen ist.
4. In einem Halbleiter-Chip integrierte elektronische digitale
Datenverarbeitungsanordnung nach Anspruch 3, dadurch
gekennzeichnet, daß das Akku-Pufferregister (62) mit Hilfe der
Busvorrichtung (53) an die
Adressiervorrichtungen (29, 40) angeschlossen
ist.
5. In einem Halbleiter-Chip integrierte elektronische digitale
Datenverarbeitungsanordnung nach Anspruch 4, dadurch
gekennzeichnet, daß ein Datenwegsteuerwerk (60) vorgesehen
ist, das den Transport der Ausgangsdaten zumindest des Schreib/Lese-Speichers
(25) zu dem Akkumulator (52) steuert.
6. In einem Halbleiter-Chip integrierte elektronische digitale
Datenverarbeitungsanordnung nach Anspruch 5, dadurch
gekennzeichnet, daß der Festspeicher (24), der Schreib/Lese-
Speicher (25), der Binäraddierer (50), das Akku-Pufferregister (62)
und der Akkumulator (52) im 4-Bit-Parallelformat ausgebildet
sind, und daß die Ausgangsanschlüsse
(17, 18) in einem größeren Format ausgebildet
sind.
Applications Claiming Priority (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US52524674A | 1974-11-19 | 1974-11-19 | |
US05/525,236 US3991305A (en) | 1974-11-19 | 1974-11-19 | Electronic calculator or digital processor chip with multiple code combinations of display and keyboard scan outputs |
US05/525,237 US3989939A (en) | 1974-11-19 | 1974-11-19 | Electronic calculator or digital processor chip with combined functions for constant, keyboard and control bit |
US05/525,247 US4021656A (en) | 1974-11-19 | 1974-11-19 | Data input for electronic calculator or digital processor chip |
US05/525,250 US3988604A (en) | 1974-11-19 | 1974-11-19 | Electronic calculator or digital processor chip having multiple function arithmetic unit output |
US05/525,238 US4021781A (en) | 1974-11-19 | 1974-11-19 | Virtual ground read-only-memory for electronic calculator or digital processor |
US05/525,245 US3955181A (en) | 1974-11-19 | 1974-11-19 | Self-refreshing random access memory cell |
Publications (2)
Publication Number | Publication Date |
---|---|
DE2551852A1 DE2551852A1 (de) | 1976-05-20 |
DE2551852C2 true DE2551852C2 (de) | 1991-06-20 |
Family
ID=27569826
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19752551852 Granted DE2551852A1 (de) | 1974-11-19 | 1975-11-19 | Elektronische digitale datenverarbeitungsanordnung |
Country Status (4)
Country | Link |
---|---|
JP (1) | JPS5173856A (de) |
DE (1) | DE2551852A1 (de) |
FR (1) | FR2292286A1 (de) |
NL (1) | NL7513516A (de) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FR2401459A1 (fr) * | 1977-08-26 | 1979-03-23 | Cii Honeywell Bull | Support d'information portatif muni d'un microprocesseur et d'une memoire morte programmable |
JPS54106128A (en) * | 1978-02-08 | 1979-08-20 | Nec Corp | Time-division display unit |
JPS58115372A (ja) * | 1981-12-29 | 1983-07-09 | Fujitsu Ltd | 半導体装置試験回路 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
UST843614I4 (de) * | 1969-07-22 | |||
GB1401265A (en) * | 1971-07-19 | 1975-07-16 | Texas Instruments Inc | Variable function programmed calculator |
US3781852A (en) * | 1972-11-21 | 1973-12-25 | Bowmar Instrument Corp | Calculator display circuit |
DK664473A (de) * | 1973-09-24 | 1975-05-12 | Texas Instruments Inc |
-
1975
- 1975-11-18 JP JP50137851A patent/JPS5173856A/ja active Pending
- 1975-11-19 FR FR7535355A patent/FR2292286A1/fr active Granted
- 1975-11-19 NL NL7513516A patent/NL7513516A/xx not_active Application Discontinuation
- 1975-11-19 DE DE19752551852 patent/DE2551852A1/de active Granted
Also Published As
Publication number | Publication date |
---|---|
FR2292286A1 (fr) | 1976-06-18 |
NL7513516A (nl) | 1976-05-21 |
DE2551852A1 (de) | 1976-05-20 |
FR2292286B1 (de) | 1983-01-21 |
JPS5173856A (en) | 1976-06-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4021781A (en) | Virtual ground read-only-memory for electronic calculator or digital processor | |
DE3645221C2 (de) | ||
DE19530100C2 (de) | Integrierte Dram-Schaltung mit Reihenkopierschaltung und Verfahren | |
US4021656A (en) | Data input for electronic calculator or digital processor chip | |
US4037090A (en) | Multiphase clocking for MOS | |
DE2101431B2 (de) | Matrixspeicher | |
DE2905676A1 (de) | Integrierte schaltung mit einem einzigen chip | |
DE1499202A1 (de) | Einrichtung zum Adressieren von Speicherbereichen | |
US3988604A (en) | Electronic calculator or digital processor chip having multiple function arithmetic unit output | |
DE3737958A1 (de) | Anordnung zum emulieren eines mikrokontrollers unter verwendung eines muttermikrokontrollers und eines tochtermikrokontrollers, mutter-mikrokontroller bzw. tochtermikrokontroller zur verwendung in einer derartigen anordnung, integrierte schaltung zur verwendung in einem derartigen tochtermikrokontroller und mikrokontroller mit einer derartigen integrierten schaltung | |
DE2551852C2 (de) | ||
DE3313335C2 (de) | ||
DE10026782A1 (de) | Zählerschaltung, Auffrischsteuerungsschaltung und Verfahren zum Auffrischen von Daten | |
DE1934860A1 (de) | Wortorganisierter Assoziativspeicher | |
DE1799012C3 (de) | Registereinrichtung zur Erleichterung des Wechsels von Teilprogrammen und Teilprogrammschritten in einem elektronischen Rechner | |
DE2304681C2 (de) | Elektronischer Rechner | |
DE1774675C3 (de) | Elektronisches Rechengerat mit einer Speichermatrix | |
DE2362238A1 (de) | Elektronische datenverarbeitungsanordnung | |
US4258429A (en) | Multiphase clocking for MOS electronic calculator or digital processor chip | |
US3989939A (en) | Electronic calculator or digital processor chip with combined functions for constant, keyboard and control bit | |
DE1774606B1 (de) | Speicheranordnung zur durchfuehrung logischer und arithmetischer grundoperationen | |
DE2110458B2 (de) | Speicheranordnung in einem datenverarbeitenden System | |
US3991306A (en) | Electronic calculator or digital processor chip with separately controllable digit and segment outputs | |
DE2362237A1 (de) | Elektronischer rechner | |
DE2265696C2 (de) | Rechenanordnung |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8110 | Request for examination paragraph 44 | ||
D2 | Grant after examination | ||
8364 | No opposition during term of opposition |