DE2163435A1 - Datenverarbeitungsanlage mit einem Speicher mit verteilter Logik - Google Patents

Datenverarbeitungsanlage mit einem Speicher mit verteilter Logik

Info

Publication number
DE2163435A1
DE2163435A1 DE19712163435 DE2163435A DE2163435A1 DE 2163435 A1 DE2163435 A1 DE 2163435A1 DE 19712163435 DE19712163435 DE 19712163435 DE 2163435 A DE2163435 A DE 2163435A DE 2163435 A1 DE2163435 A1 DE 2163435A1
Authority
DE
Germany
Prior art keywords
cell
flip
signals
memory
cells
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.)
Pending
Application number
DE19712163435
Other languages
English (en)
Inventor
David Morris Eatontown N.J. Tutelman (V.StA.)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
AT&T Corp
Original Assignee
Western Electric Co Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Western Electric Co Inc filed Critical Western Electric Co Inc
Publication of DE2163435A1 publication Critical patent/DE2163435A1/de
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/505Adding; Subtracting in bit-parallel fashion, i.e. having a different digit-handling circuit for each denomination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7896Modular architectures, e.g. assembled from a number of identical packages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/262Arrangements for next microinstruction selection
    • G06F9/264Microinstruction selection based on results of processing
    • G06F9/265Microinstruction selection based on results of processing by address selection on input of storage
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04QSELECTING
    • H04Q3/00Selecting arrangements
    • H04Q3/42Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker
    • H04Q3/54Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised
    • H04Q3/545Circuit arrangements for indirect selecting controlled by common circuits, e.g. register controller, marker in which the logic circuitry controlling the exchange is centralised using a stored programme

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Logic Circuits (AREA)
  • Semiconductor Memories (AREA)
  • Heterocyclic Carbon Compounds Containing A Hetero Ring Having Oxygen Or Sulfur (AREA)

Description

Western Electric Company incorporated Tutelman, D.M. 3
New York, N. Y., 10007, V. St. A.
Datenverarbeitungsanlage mit einem Speicher mit verteilter Logik
Die Erfindung betrifft eine Datenverarbeitungsanlage mit einem Speicher mit verteilter Logik und folgenden Bauteilen: wenigstens eine Logikzelle mit einer Vielzahl stabiler Schalt einrichtungen, die je Eingangs schaltungen besitzen, eine Vielzahl von Signalquellen und eine Sammelleitung, die Operationssteuersignale an die Zelle liefert, wobei erste Steuersignale an die Schalt einrichtungen angelegt sind, um wenigstens eine Schalteinrichtung für eine Betätigung vorzubereiten.
Speichersysteme mit verteilter Logik, d. h., Verarbeiter mit paralleler, in Zellen unterteilter Logik, sind seit vielen Jahren bekannt und haben den Vorteil, daß sie komplizierte Rechnungsvorgänge außerordentlich schnell durchführen können, da sie viele Gruppen gleicher Operationen gleichzeitig für Gruppen mit mehreren Bits durchführen können, deren Größe durch das Programm angegeben wird. Ein Beispiel eines solchen Systems ist Gegenstand der US-Patentschrift 3 391 390. Diese Systeme
209831/0916
unterscheiden sich von Anlagen mit einem einzigen Verarbeiter, bei denen eine gegebene Operation durch gleichzeitiges Ve rarbeiten aller Bits nur jeweils eines einzigen Wortes gegebener Größe durchgeführt wird. Dabei sind jedoch die Operationen in Anlagen mit einem einzigen Verarbeiter darauf beschränkt,-daß jeweils gleichzeitig nur ein einzelnes Wort nur einer einzigen Operation unterworfen werden kann. Wenn eine Gruppe von Wörtern der gleichen Folge von Operationen unterworfen werden soll, müssen sie in einer Anlage mit einem einzigen Verarbeiter nacheinander einzeln verarbeitet werden, statt einer gleichzeitigen Verarbeitung in einem Verarbeiter mit paralleler, in Zellen aufgeteilter Logik unter Verwendung von Speicherzellen mit verteilter Logik.
Verarbeitungssysteme mit paralleler, in Zellen unterteilter Logik unterscheiden sich außerdem von Anlagen mit mehreren Verarbeitern, bei denen eine Vielzahl von Verarbeiter entweder zusammen mit einem gemeinsamen Speicher oder mit verschiedenen Speichern koordiniert betrieben wird, um gleichzeitig unterschiedliche Operationen des gleichen oder unterschiedlichen Typs für völlig verschiedene Verarbeitungswörter durchzuführen. Jeder Verarbeiter in einem solchen System hat eine feste Maximalwortgröße, während in Ve rarbeitungssystemen
209831/0916
mit paralleler, in Zellen unterteilter Logik die Größe von Gruppen mit mehreren Bits, die gleichzeitig, aber getrennt auf die gleiche Weise zu verarbeiten sind, programmgesteuert auf unterschiedliche Anordnungen für unterschiedliche Funtionen gebracht wird.
Es haben sich gewisse Schwierigkeiten bei der Anpassung von Verarbeitungssystemen mit paralleler, in Zellen unterteilter Logik an Herstellungsverfahren unter Verwendung einer Integration in großem Maßstab (large scale integration) = (LSt), die in den letzten Jahren entwickelt worden sind, um eine wirtschaftliche Herstellung komplizierter Schaltungen zu erleichtern. Die Schwierigkeiten entstehen in einer Hinsicht deswegen, weil Speicherzellen mit verteilter Logik bisher generell kompliziert unter Verwendung einer vergleichsweise hohen Zahl von logischen Verknüpfungsgliedern aufgebaut waren. Demzufolge benötigt eine solche Zelle eine verhältnismäßig große Halbleiterflache in einer LSI-Schaltung. Außerdem tritt notwendigerweise eine entsprechende Vielzahl von Leitungsüberkreuzungen auf, bei denen die Verbindungen sich ohne gegenseitigen elektrischen Kontakt schneiden müssen. Eine Integration in großem Maßstab ist darüber hinaus in einer anderen Hinsicht schwierig gewesen, ■ da Speicherzellen mit verteilter Logik generell in Ve rbindung
209831/0918
mit einer Computer-Steuereinheit großer Rechenkapazität und großen Aufwandes betrieben werden mußte. Eine schon ins Auge gefaßte Alternative sah vor, in die Zellen eine Möglichkeit zur Programmerzeugung einzubauen. Dadurch werden jedoch die zellen so kompliziert, daß sie für eine Integration in großem Maßstab kaum mehr brauchbar sind. Beide oben beschriebenen Faktoren stehen einer Verwendung von Ve rarbeitungs systemen mit paralleler, in Zellen unterteilter Logik unter Anwendung einer Integration in großem Maßstab für Sonderzweck-Rechenmaschinen auf Gebieten im We ge, in denen der Raumbedarf der Maschinen verhältnismäßig klein sein soll, und zwar im Hinblick auf häufig erforderliche Änderungen zur Verbesserung der Eigenschaften im Hinblick auf den Konkurrenzdruck.
Die Erfindung hat sich die Aufgabe gestellt, die oben erläuterten Schwierigkeiten zu beseitigen. Sie geht dazu aus von einer Datenverarbeitungsanlage der eingangs genannten Art und ist dadurch gekennzeichnet, daß jede Logikzelle einegemeinsame Verbindung aufweist, die Datensignale im Vielfach an Eingangsschaltungen der bistabilen Schalt einrichtungen liefert, ferner Koppeleinrichtungen, die wahlweise wenigstens immer nur eine der Signalquellen gleichzeitig an die gemeinsame Ve rbindung ankoppeln, und einen Digitalinformationsspeicher mit individuell
209831/0918
adressierbaren Speicherstellen, der an die gemeinsame Verbindung zur Aufnahme von Informationen angeschaltet ist, sowie zweite Steuersignale, die je einer anderen der Schalteinrichtungen entsprechen, und Zellauswahlschaltungen, die bei Koinzidenz eines zweiten Steuersignals und eines vorbestimmten Zustandes der entsprechenden Schalteinrichtung das Anlegen von Datensignalen aus den Quellen an die Schalteinrichtungen sperrt.
Dadurch werden Verarbeitungssysteme mit paralleler, in Zellen unterteilter Logik verbessert.
Ein weiterer Vorteil der Erfindung besteht darin, daß eine anpassungsfähigere Datenverarbeitung der Speicherzellen mit verteilter Logik ermöglicht ist, so daß sie wirtschaftlich sinnvoll für verschiedene Anwendungsbereiche benutzt werden können, um ein für eine Integration in großem Maßstab wirtschaftliches Produktionsvolumen zu erreichen.
Zusätzlich wird erfindungsgemäß die Zahl der erforderlichen Verknüpfungsglieder verringert, so daß sich eine Verkleinerung der für Speicherzellen mit verteilter Logik erforderlichen Siliziumfläche ergibt.
209831/0918
Bei einem Ausführungsbeispiel der Erfindung enthält jede Zelle eines Verarbeitungssystems mit paralleler, in Zellen unterteilter Logik eine Vielzahl von bistabilen S ehalt einrichtungen, die aufgrund einer coinzidenten Erregung durch ein Steuersignal aus einer Steuereinheit des Systems und ein Datensignal von einer Zwischenzellen-Datensammelleitung für diese Zelle betätigbar sind. Die Sammelleitung ist den Eingangs schaltungen aller Schalteinrichtungen gemeinsam. Dateneingangs signale für die Zelle werden kanal weise auf die Sammelleitung über eine gemeinsame Koppellogik gegeben, die in Abhängigkeit von vorbestimmten Zustandskombinationen der Programmsteuersignale aus der Steuereinheit und von Zustandskombinationen der Ausgangssignale der bistabilen Schaltexnrichtungen oder von externen Eingangs Signalen betätigt oder gesperrt wird.
Nachfolgend wird die Er findung anhand der Zeichnungen näher beschrieben. Es zeigen:
Fig. 1 ein vereinfachtes Blockschaltbild eines Ver
arbeitungssystems mit paralleler, in Zellen aufgeteilter Logik;
Fig. 2 ein Blockschaltbild mit Einzelheiten für Schal
tungen, die zur Verwirklichung der Erfindung zweckmäßig in der Steuereinheit nach Fig. 1 vorgesehen werden;
203831/0018
Fig. 3 die schematische Darstellung eines in dem
Speicher der Steuereinheit nach Fig. 2 gespeicherten Befehlswortes;
Fig. 4 das Schaltbild einer Speicherzelle mit verteilter
Logik nach der Erfindung, die für Systeme entsprechend Fig. 1 brauchbar ist;
Fig. 5 das Blockschaltbild eines für die Erfindung be
nutzten Teilnehmerleitungsabtasters;
Fig. 6 das Ablaufdiagramm für das Abtaster-Unterpro
gramm in Verbindung mit Fig. 5
Das in Fig. 1 dargestellte System enthält eine Steuereinheit 10 zur Koordinierung der Operationen einer Vielzahl von Speicherzellen mit verteilter Logik durch Zuführung von Steuersignalen. In der Fig. sind nur vier Zellen 11, 12, 13, 14 dargestellt, die Steuersignale von der Einheit 10 über eine vieladrige gemeinsame Steuersammelleitung 16 erhalten. Zwischenzellen verbindungen 17 und 18 erleichtern den Nachrichtenaustausch zwischen den Zellen. Eine Erdverbindung 15 der Zelle 11 zeigt im Betrieb die ara weite stens links liegende Zelle an und soll in Verbindung mit Fig. 4 besprochen werden. Jede Zelle enthält einen Datenspeicher und zugeordnete logische Schaltungen zur Verarbeitung von Daten aus dem Speicher oder aus anderen Quellen in Ab-
209831/0916
hängigkeit von durch die Steuereinheit 10 gelieferten Signale. In dem System nach Fig. 1 werden Rechenvorgänge parallel durchgeführt und zwar unter Verwendung von Speicher-, Lese- und Vergleichs-Grundoperationen. Solche Operationen ermöglichen in bekannter Weise die Durchführung eines großen Bereichs von logischen und arithmetischen Funktionen. Gemäß einem Merkmal der Erfindung wird eine Vielzahl von Verarbeitungswörtern betrachtet, wobei jedes Wort jedes seiner Bits in einer entsprechenden Stelle der Datenspeicher der jeweiligen Zellen gespeichert hat.
Jede der Zellen besitzt eine Speicherkapazität für eine Vielzahl von Bits aus einer entsprechenden Vielzahl von unterschiedlichen Wörtern. Zur Erläuterung wird die Erfindung anhand eines Ausführungsbeispiels beschrieben, bei dem 16 Verarbeitungswörter verwendet werden, so daß jede Zelle einen 16-Bit-Datenspeicher enthält. Die Anzahl von Bits je Wort kann jeden beliebigen Wert haben, beispielsweise mehrere Bits, mehrere Dutzend Bits oder viele Hundert Bits, wobei alle Zellen der entsprechenden Anzahl von Zellen unter Steuerung der einzigen Steuereinheit 10 betrieben werden. Es ist zwar nur eine Sammelleitung 16 gezeigt, aber eine Abzweigleitung 16' deutet schematisch an, daß weitere Ketten von Zellen auffächernden Betrieb von der Steuereinheit
209831/0916
10 über entsprechende Sammelleitungstreiber (nicht gezeigt) für alle Vielfachsammelleitungen betrieben werden können. Bei einer aufgefächerten Anordnung führen zweckmäßig Zwischenzellenverbindujngen auch zu Zellen anderer Sammelleitungen zwecks Bildung einer einzigen großen Zwischenzellenkette aus allen, von der Steuereinheit 10 betriebenen Zellen. Diese Möglichkeit stellt jedoch keine Einschränkung dar.
Fig. 2 zeigt genauer die in der Steuereinheit 10 enthaltenen Bauteile zur Verwirklichung eines Speicherzellenbetriebs mit verteilter Logik entsprechend der Erfindung. Im allgemeinen führt diese Steuereinheit nur Programmfunktionen aus und die Datenfunktionen werden ausschließlich in den verschiedenen, von der Einheit 10 gesteuerten Speicherzellen mit verteilter Logik durchgeführt. Ein Taktgeber 19 liefert regelmäßig wiederkehrende Signale zur Betätigung eines Programmadressen zählers 20. Vom Zähler 20 gebildete Adressensignale identifizieren Befehlswort st eilen in einem Nurlesespeicher 21 und werden an den Speicher mit Hilfe von Zugriffsadern 22 angelegt. Der Zähler 20 kann beispielsweise ein Ringzähler sein, dem ein Ausgangs signal von jeder Stufe durch die jeweils eine der Adern 22 entnommen wird, um die Speinhereinrichturigen in den entsprechenden Speicherwortstellen zur Lieferung von
BAD 509831/0916
Lesesignalen zu veranlassen. Alternativ kann der Zähler 20 ein Binärzähler sein, bei dem die Ausgangs signale seiner verschiedenen Stufen über Adern 22 an einen Adressenumsetzer im Speicher 21 gekoppelt werden, um Lesesignale an die jeweiligen Speicherwortstellen nacheinander zu liefern.
Der Speicher 21 ist zweckmäßig ein unter Verwendung von Halbleitern aufgebauter Speicher, der nur Lesevorgänge ermöglicht. Beispielsweise wird für solche Speicher häufig eine Diodenmatrix benutzt, bei der Informationen durch das Vorhandensein oder Nichtvorhandensein von Kreuzpunktverbindungen zwischen Zeilen- und Spaltenstromkreisen der Matrix dargestellt sind. Ein Eingangssignal auf einem gewählten Zeilenstromkreis führt also zur Erzeugung eines Ausgangssignals auf jedem Spaltenstromkreis, der durch eine Diode mit dem Zeilenstromkreis ver- »bunden ist. Diese Ausgangs signale werden über Ziffernleitungen 23 einem Befehlspufferregister 26 zugeführt. Auf diese Weise werden Wortstellen des Speichers 21 in einer wiederkehrenden Folge durch den Zähler 20 abgefragt, um das Ve rarbeitungssystem zyklisch durch ein vorbestimmtes Programm zu führen. Üblicherweise stellt man unterschiedliche Speicherinformationsmuster für die verschiedenen Anwendungstypen des Systems her, für die der Verax'beiter benutzt werden soll.
209831/0916
Ziffernlese signale aus dem Speicher 21 für das Befehlspufferregister stellen zweckmäßigerweise aufeinanderfolgende Mikrobefehle eines Programms in einer durch die Maschine verwendbaren Form dar. Sblche Programminformationen werden üblicherweise zu Anfang in einer höheren Programmsprache durch einen Programmierer erstellt, der dann eine Umwandlung des Programms in die Maschinensprache durch einen Compiler veranlaßt, der für die zu verwendende Programmsprache geeignet ist. Die Ausgangssignale des Compilers werden zur Steuerung des im Speicher 21 gebildeten Informationsmusters benutzt. Die prinzipielle Erläuterung der hier vorliegenden Anwendung wird nachfolgend anhand von Bezeichnungen gegeben, die durch die Maschine verwendbar und im Speicher 21 gespeichert sind, da die Herstellung von Nurlese speichern bekannt ist und nicht Teil der Erfindung darstellt.
Ausgangs signale des Registers 26 erscheinen auf individuellen Adern 27 der gemeinsamen Steuer Sammelleitung 16, die diese Signale parallel an die Speicherzellen mit verteilter Logik anlegt. Eine Programmverzweigung läßt sich in Abhängigkeit von Datenergebnissen realisieren, die in den Speicherzellen mit verteilter Logik erzeugt werden, in dem Datenausgangssignale der Zellen an eine Leseleitung 28 auf noch zu beschrei-
an-f
bende Weise -gelegt werden. Signale auf der Leitung 28 werden
209831/0916
durch ein Paar von Coinzidenzgliedern 29 in ein zweigleisiges logisches Format umgewandelt und zur Steuerung des Zustandes einer bistabilen Schalteinrichtung, nämlich eines Flipflops 31 benutzt. Ein programmgesteuertes Lesebit am Ausgang des Registers 26 wird durch eine Leeeleitung 24 zur Betätigung der Glieder 29 zum richtigen Zeitpunkt zugeführt. Ein programmgesteuertes Abzweigbit am Ausgang des Registers . 26 liegt an einer Leitung 30, um zusammen mit dem binären
1-Ausgangssignal des Flipflops 31 im eingestellten Zustand eine Vielzahl von Coinzidenzgliedern zu betätigen, die schematisch durch ein einzelnes Glied 32 dargestellt sind. Das Qlied 32 koppelt Adressensignale vom Ausgang des Registers 26 an den Programmadressenzähler, um dessen Inhalt zu überschreiben.
Wenn also das Abzweigbit in Coinzidenz mit einem vorbe stimm -
ten Zustand des Flipflops 31 einen Abzweigbefehl anzeigt, werden bestimmte, vom Register 26 gelieferte Befehlssignale als Signale gedeutet, die eine Adresse im Nurlesespeicher 21 definieren, so daß das Programm auf die neue Adressenstelle springt. Die Anzahl der für den Speicher 21 erforderlichen Adressenbits kann größer oder kleiner als die Anzahl der für die Speicherzellen mit verteilter Logik benötigten Bits sein.
209831/0916
Wenn die Anzahl größer ist, werden Bitstellen im Register 26, die normalerweise für Zellensteuersignale verwendet werden, für die Speicheradresse benutzt. Die Zellen werden inaktiv gehalten während eine Adressenänderung für eine Abzweigung stattfindet, und zwar dadurch, daß bestimmte Zellensteuersignale Bits eines Befehls im Zustand 0 gehalten werden, d. h., im Zustand niedriger Spannung. Diese Bits enthalten die noch zu beschreibenden Steuer- (gating) und Globalbitstellen. Außerdem wird die Lese-Bitstelle im Nullzustand gehalten, um eine unbeabsichtigte Rückstellung des Flipflops 31 während einer Verzweigung zu verhindern.
Fig. 3 zeigt schematisch die verschiedenen Felder eines Befehlswortes,-das im Speicher 21 entsprechend einem Ausführungsbeispiel der Erfindung gespeichert ist. Wie bereits bei der Erläuterung von Fig. 2 angedeutet worden ist, sind binäre Signaldarstellungen in den verschiedenen Bitstellen der Felder im Wort gemäß Fig. 3 enthalten. Eine binäre 1 wird durch eine vorbestimmte Signalspannung dargestellt,· die höher ist als die Signal spannung zur Darstellung einer binären 0. Eine Hohe Spannung liefert ein Betätigungssignal für ein logisches Verknüpfungsglied, beispielsweise UND-, ODER-, NOR- oder Exklusiv-ODER-Glieder und Betätigungssignale für bistabile Einrichtungen, d. h„,
2 0 9 8 3 1 / 0 9 1 S
Flipflops. Eine niedrige Signal spannung bewirkt auf entsprechende Weise, daß die Betätigung verhindert wird.
Gemäß Fig. 3 enthält das Adressenfeld vier Informationsbits, die eines der 16 interessierenden Verarbeitungswörter defibieren, d. h. , eine der sechszehn Bitpositionen im Datenspeicher jeder der Speicherzellen mit verteilter Logik. Das Be dingungsfeld mit drei Bits liefert Signale, die allen Zellen ermöglichen, den Ausgangssignalzustand eines oder mehrerer von drei Steuerflipflops in jeder Zelle zu benutzen. Wenn der Zustand eines dieser Flipflops von Interesse ist,, sind alle drei Bits im Bedingungsfeld 0. Steuersignale im Quellenfeld mit vier Bits ermöglichen die Auswahl irgendeines oder keines von vier Eingangssignalen jeder Zelle.
| Das Wort gemäß Fig. 3 enthält ein Bestimmungsfeld mit sechs
Bits, wobei die sechs Steuersignale die Auswahl eines oder mehrerer oder keines von sechs möglichen Ausgangs Signalen einer Zwischenzellensammelleitung für verschiedene Zellenleitungen ermöglichen, Dies soll später in Verbindung mjit Fig. beschrieben werden. Das Globalfeld mit 2 Bits gibt die Art der Nachrichtenübertragung zwischen den Zellen über die Zwischenzellenverbindungen an. Da die Zellen parallel durch Signale
20983 1/0918
auf der gemeinsamen Steuersammelleitung 16 gesteuert werden, können sie zur Erläuterung als in eine Leitung eingeschaltet angesehen werden, die von links nach rechts entlang der Sammelleitung verläuft. Demgemäß zeigen die Signale im Globalfeld des Wortes an, ob die gewählten Zellen von oder nach links oder von oder nach rechts in Ve rbindung treten sollen.
Zwei Steuerbits in dem Wort gemäß Fig. 3 können je in einen der beiden Binärzustände gebracht werden, um die Betätigung einer Zwischenzellensammelleitung auf noch zu beschreibende,· verschiedenenartigen Weisen zu steuern. Das einzelne Abzweigbit in dem Wort nach Fig. 3 gibt an, ob das entsprechende Befehlswort einen Abzweigbefehl darstellt oder nicht und bestimmt demgemäß, ob die Signale in gewählten Bitpositionen des Wortes über das Verknüpfungsglied 32 zum Programmadressenzähler 20 übertragen werden. Ein einzelnes Lesebit in dem Wort nach Fig. 3 gibt die Möglichkeit, das Flipflop 31 vor Ausführung eines Abzweigbefehls in einen entsprechenden zellengerichteten Zustand zu bringen.
Fig. 4 zeigt Einzelheiten der Speicherzelle 12 mit verteilter Logik. Da jedoch alle Zellen identisch aufgebaut sind, gilt die gleiche Schaltung auch für jede andere Zelle. Der einzige Unter-
209831/0916
schied zwischen den Zellen besteht darin, daß in einer die Zellen verbindenden Kette die am weitesten links liegende Zelle die Zwischenzellen verbindung 17 nicht hat, während die am weitestens rechts liegende, von der Steuereinheit 10 bediente Zelle die Zwischenzellenverbindung 18 nicht hat. Nachfolgend wird gezeigt, daß zur Betriebseinleitung eines Systems die am weitesten,links.in einer Kette liegende Zelle zweckmäßig eine Abschaltverbindung für die logischen Schaltungen bdnutzt, beispielsweise die Erdverbindung 15 in Fig. 1, wobei Erdpotential als Abschaltsignal eines der beiden binären Signalzustände anstelle der oberen Leitung 17 in Fig. 4 benutzt wird.
Jede Zelle wird durch die vieladrige gemeinsame Steuersammelleitung 16 bedient, die 21 Adern entsprechend allen Bitstellen außer zwei des in Fig.. 3 gezeigten Befehlswortes enthält. Die ^ zwei ausgenommenen Bitstellen sind diejenigen im Abzweig- und
Lesefeld des Wortes. Die meisten der 21 Steueradern der Sammelleitung 16 sind in Fig. 4 entsprechend dem Feldnamen in Fig. 3 bezeichnet. Die sechs Bestimmungsleitungen und die beiden Globalleitungen lassen sich jedoch ohne unnötige Komplizierung der Zeichnung auf einfache Weise nicht so gruppieren. Die beiden Global-Stedueradern sind die in der Mitte der Ze lie 12 in Fig. 4 mit "links" und "rechts" bezeichneten Leitungen.
209831/0916
Auf entsprechende Weise sind die sechs Bestimmungs-Steueradern nahe der Mitte der Fig. 4 mit einer der Bezeichnungen ·* A, - * B, - * STOP, * Ausg., -&Ό und« versehen. Alle Be Stimmungssteuersignale werden zur Betätigung von Einstell- und Rückstell-Eingangcoinzidenzgliedern von bistabilen Schalt einrichtungen verwendet,-beispielsweise den beiden Allzweck-Steuerflipflops 33 und 36, einem Stop-Steuerflipflop 37, einem Ausgangsflipflop 38 und einem Datenflipflop 39, sowie zur Betätigung von Eingangsgliedern zur Aktivierung von Ziffernr, Schreib-, Treib-, Eingangsadern 40 und 41 eines Datenspeichers 42 mit 16 Bits. Das Datenflipflop 39 wird gelegentlich als Vergleichsflipflop bezeichnet, da es häufig für diese Funktion benutzt wird.
Eine zweiadrige Zwischenzellen-Sammelleitung 43 enthält Adern 46 bzw. 47 zur Nachrichtenübertragung zwischen den verschiedenen Stromkreisen der Zelle 12. Drei Arten von Zellenausgangssignalen lassen sich aus der Sammelleitung 43 gewinnen. Ein Zwischenzellen-Ausgangs signal wird von der Ader 46 nach rechts über eine Leitung 18 und ein noch zu beschreibendes Zwischenzellen-Eingangsglied einer benachbarten Zelle übertragen. Auf entsprechende Weise findet eine Nachrichtenübertragung nach links von der Ader 47 über eine der Leitungen 17 und ein weiteres, ebenfalls noch zu beschreibendes Zwischenzellenglied einer be-
209821/0916
-IG-
nachbarten Zelle statt. Ausgangs signale der Zelle 12 für externe Bauteile, die im übrigen aber unabhängig von dem Ve rarbeitungssystem mit einem Speicher mit verteilter Logik sind, werden über das an die Ader 46 und 47 angekoppelte Ausgangsflipflop 38 gewonnen. Eine solche Ausgangskopplung findet statt,-wenn das ·»> Ausgangs Steuer signal die Einstell- und Rückstellglieder dieses Flipflops betätigt. Ein drittes Ausgangssignal der Zelle 12 steht kontinuierlich auf einer Leseleitnng 48 zur Verfügung, · die von der Ader 46 der Sammelleitung 43 in jeder Zelle zur Lesesammelleitung 28 führt, welche entsprechend der obigen Erläuterung zur Steuereinheit 10 zurückführt. Die Sammelleitung 28 kann natürlich auch Signale für Bauteile außerhalb des Verarbeiters liefern. Obwohl in Fig. 4 nicht besonders dargestellt, · erfolgen die Eingangsverbindungen zur Sammelleitujng 28 von den Zellenleitungen 48 und zu den Adern 46 und 47 von anderen Schaltungen aus zweckmäßig über ODER-Glieder, um Kopplungen zwischen solchen Eingangs Signalen zu verringern.
Es stehen zwei Arten von Dateneingangs Signalen für die Zelle 12 zur Verfügung. Eine davon sind die diejenigen Signale, die über die Zwischenzellenverbindungen 17 und 18 geliefert werden. Demgemäß erhält die Ader 46 der Zwischenzellensammelleitung
209831/0916
43 Signale von Zellen auf der linken Seite über eine Verbindung 17 und ein Coinzidenzglied 49, das teilweise durch das Rechts-Steuersignal betätigt wird. Auf entsprechende Weise kommen Zwischenzellen-Nachrichtensignale von Zellen auf der rechten Seite über eine Verbindung 18 und ein Coinzidenzglied 50 an, das teilweise durch das Links-Steuersignal betätigt wird. Die beiden Glieder 49 und 50 werden beide gleichzeitig durch das binäre /-Ausgangssignal des Stop-Flipflops 37 betätigt oder abgeschaltet. Eine zweite Art von Eingangs Signalen wird über eine Koppellogik 51 geliefert, die programmgesteuert ist, um zu einem Zeitpunkt jeweils nicht mehr als eine Dateneingangs signalquelle zu wählen. Die Steuersignale zur Durchführung dieser Auswahl sind die drei Quellenfeld-Signale IN* , S-* und D-* . Ein viertes Quellenfeld-Steuersignal ist das POL-Signal, das der Koppellogik 51 zu einem noch zu erläuternden Zweck zugeführt wird. Auf ähnliche Weise werden die beiden Steuerfeldsignale über die Koppellogik 51 geliefert.
Die Koppellogik 51 kann mehrere Funktionen zusätzlich zu der Auswahl einer bestimmten Datensignalquelle ausführen. So kann sie eine programmgesteuerte Betätigung oder Abschaltung der gesamten Koppellogik 51 bewirken. Sie kann Signale einer gewählten Quelle auf die Zwischenzellensammelleitung 43 in
209831/0916
. zweigleisigem logischen Format auf beide Adern der Sammelleitung oder in eingleisiger logischer Form auf eine gewählte Ader der beiden Sammelleitungsadern geben. Die Logik 51 ist außerdem in der Lage auf diese Weise Quellen signale auf die Sammelleitung entweder in Form des ursprünglichen Signals oder in komplementierter Form zu koppelm. Darüber hinaus kann die Koppellogik 51 steuerbar durch Programmsteuersignale veranlaßt werden, mit dem Datenspeicher 42 zur Durchführung von Datensignalvergleichen zusammenzuarbeiten, um die oben erwähnten Vergleichsberechnungen zu ermöglichen.
In der Koppellogik 51 ist ein einziges Exklusiv-ODER-Glied 52 52 enthalten. Ein Eingangssignal für das Glied 52 wird von der Steuerader POL des Quellenfeldes geliefert. Ein PQL-Signal im binären 1-Zustand hoher Spannung veranlaßt das Glied 52, an dessen anderen Eingang angelegten Datensignale zu komplementieren, während ein binäres O-Signal niedriger Spannung auf der Steuerader POL bewirkt, daß das Glied 52 Signale an seinem anderen Eingang in der ursprünglichen Form weitergibt. Der vorerwähnte andere Eingang des Gliedes 52 erhält Datensignale vom Ausgang eines ODER-Gliedes 53, das Ausgangs signale von drei prpgrammgesteuerten Coinzidenz-Auswahlgliedern 56, 57 und 58 kombiniert. Die letztgenannten Glieder werden durch die
209831/0916
Steuersignale IN-? , S-> , und D*> betätigt, wenn eines dieser Signale ein Signal hoher Spannung ist.
Das Steuersignal INr» ermöglicht die Einkopplung eingleisiger logischer Daten über eine Leitung 55 von irgendeiner Quelle außerhalb des Ve rarbeiters. Auf entsprechende Weise betätigt das Steuersignal S-^ das Glied 57, um das binäre 1-Ziffernausgangssignal des Datenspeichers 42 zur Verwendung in der Logik 51 einzukoppeln. Ein Steuersignal D·^ läßt das binäre 1-Ausgangssignal des Datenflipflops 39 zur Koppellogik 51 laufen, um das Ergebnis einer früheren Vergleichsoperation oder einen anderen Datenzustand anzugeben. Dies soll noch beschrieben werden.
Der Speicher 42 ist ein Speicher mit beliebigem Zugriff, dessen Bitstellen zum Einschreiben oder Lesen von Daten in bzw. aus dem Speicher adressierbar sind. Es wird zweckmäßig ein Halbleiterspeicher mit 16 Bitstellen und entsprechenden Adressenumsetzschaltungen benutzt, die schematisch auf die gleiche Weise dargestellt sind. Ein Adressensignal mit vier Bits auf Steueradern ADDR vom Adressenfeld eines Befehlswortes identifiziert eine bestimmte Datenspeicher-Bitstelle und koppelt die Eingangs-Ausgangsanschlüsse dieser Speicherstelle an Speicherziffern-
209831/0016
leitungen, die allen 16 Speicher st eilen gemeinsam sind. Der Informationszustand der adressierten Speicherstelle wird aufgrund der ADDR-Signale auf die Ziffernieseleitung ausgelesen und benutzt, wenn ein Steuersignal S-* in Koinzidenz mit ADDR-Signalen geliefert wird. Andererseits werden Daten in die adressierte Speicherstelle geschrieben, wenn das Steuersignal -> S einen Datensignaleingang in Coinzidenz mit den ADDR-Adressensignalen ermöglicht. Dieses Steuersignal veranlaßt die Glieder 59 und 60, Signalzustände von der Zwischenzellensammelleitung 43 an die Ziffernschreib-Treibleitungen 40 und 41 des Datenspeichers 42 anzulegen.
Das Ausgangssignal des Exklusiv-ODER-Gliedes 52 wird in unveränderter Form einem Coinzidenzglied 61 und in ivertierter Form einem weiteren Coinzidenzglied 62 zugeführt. Dies ist durch den kleinen Kreis für den Sperreingang des Gliedes 62 schematisch angedeutet, dem das Ausgangs signal des Gliedes 52 zugeführt wird. Die Ausgänge der Glieder 61 und 62 sind mit den Adern 46 bzw. 47 der Zwischenzellensammelleitung 43 verbunden. Beide Glieder 61 und 62 müssen durch ein Hoch-Signal (Signal hoher Spannung) auf einer von der später zu beschreibenden Betätigungslogik 66 kommenden Betätigungsader 63 aktiviert werden.
209831/0916
Eines der oder beide Glieder 61 und 62 können weiterhin durch eine Programmsteuerung mit Hilfe von Steuersignalen im Steuerfeld eines Be fehlswortes betätigt werden. Dabei handelt es sich um diejenigen Steuersignale, welche an eine 1-Leitung 67 und eine O-Leitung 68 der gemeinsamen Steuersammelleitung 16 angelegt sind. Wenn die Steuersignale auf beiden Leitungen 67 und 68 hoch sind, werden die Glieder 61 und 62 betätigt und koppeln das eingleisige Ausgangs signal des Gliedes 52 in zweigleisiger Form auf die Zwischenzellen Sammelleitung 43. Wenn eine der Steuerleitungen 67 und 68 hoch und die andere tief liegt, wird das Ausgangssignal des Exklusiv-ODER-Gliedes 52 an die Sammelleitung 43 in eingleisiger Form gegeben, und zwar in unveränderter oder komplementierter Form in Abhängigkeit davon, welches der Glieder 61 und 62 betätigt ist. Das Signal in unveränderter Form läuft vom Glied 61 zur Sammelleitungsader 46 und das komplementierte Signal geht vom Glied 62 zur Sammelleitungsader 47. Man erkennt also, daß durch entsprechende Verwendung des Steuersignals POL für das Glied 52 und der Steuersignale für die Glieder 61 und 62 verschiedene Qperationsarten vorgenommen werden können, bei denen der Inhalt des Datenflipflops 39 oder des Datenspeichers 42 mit Daten verglichen wird, die durch das Programm angegeben werden.
209831/0916
Es besteht nicht die Möglichkeit, mit der Eingangskoppel logik 51 direkt Signale zu vergleichen, die von beliebigen zwei der Eingangskoppelglieder 56, 57 oder 58 geliefert werden. ·, Ein solcher Vergleich kann jedoch indirekt durchgeführt werden, in dem ein Eingangssignal zur Vorbereitung des Datenflipflops 39 benutzt und dann das andere Eingangssignal an das Flipflop 39 angelegt wird. Eine nachfolgende Steueroperation bezüglich des Ausgangs signals des Flipflops stellt fest, ob sich der Zustand des Flipflops nach der Vorbereitung geändert hat und bestimmt folglich, ob eine Nichtübereinstimmung von Datensignalen aus den verschiedenen Eingangs quellen vorhanden war oder nicht. Ausführungsbeispiele für den Vergleichsvorgang und andere Operationen sollen nachfolgend erläutert werden.
Die Glieder 69 und 70 leiten die Signale der Sammelleitung 43 aufgrund des -^ D-Steuersignals zur Verwendung durch das D-Flipflop 39 weiter. Das Glied 70 koppelt die Sammelleitungsader 47 direkt mit dem Rückstelleingang des Vergleichsflipflops 39. Der Einstelleingang des Flipflops ist dagegen über das Coinzidenzglied 69 und ein ODER-Glied 71 mit der Sammelleitungsader 46 verbunden. Das ODER-Glied 71 erhält außerdem an zwei zusätzlichen Eingängen Signale von dem Zwischenzellenleitungen 17 und 18 über ein Coinzidenzglied 72
209831/0916
für die Sammelleitungsader 46 für die Zelle links von der Zelle 12 und von der Sammelleidungsader 47 über ein Coinzidenzglied 73 für eine Zelle rechts von der Zelle 12. Die Global-Steuersignale Rechts und Links betätigen die Glieder 72 und 73 immer dann, wenn eines dieser Signale hoch ist, um außerdem eines der Zwischenzeil en-Koppelglieder 49 bzw. 50 für eine Zwischenzellen-Nachrichtenübertragung von links nach rechts bzw. von rechts nach links zu betätigen. Die Global-Steuersignale ermöglichen also die Ausbreitung irgendeines Signalzustandes auf der Zwischenzellen-Sammelleitung einer sendenden ZeIlE nach links oder nach rechts. Die Ausbreitung erstreckt sich in der durch das jeweils betätigte Glied 49 oder 50 angegebenen Richtung bis eine Zelle erreicht ist, in der das Stop-Flipflop 37 eingestellt ist, so daß dessen binäres Ausgangs signal 0 zu einer niedrigen Spannung führt, die eine Betätigung der Zwischenzellen-Ausbreitungsglieder 49 und 50 dieser Zelle verhindert.
Die Signaloperationen, die eine Zelle, beispielsweise die Zelle 12 in Fig. 4, durchführen kann, hängt von der Operation der gemeinsamen Koppellogik 51 für alle Zellen-Daten eingangssignal ab, die keine Zwischenzellen-Eingangssignale sind. Im einzelnen hängen die Eingangs signale für die Sammelleitung 43 aus der Logik 51 von der Benutzung der beiden Coinzidenz-
209831/0916
Koppelglieder 61 und 62 ab, über die alle Eingangsdaten, die keine^ Zwischenzellen-Daten sind, laufen müssen, um die Sammelleitung 43 zu erreichen. Die Glieder 61 und 62 werden durch die Betätigungslogik 66 gesteuert. Diese enthält UND-Glieder 76, 77 und 78, die die programmgesteuerten Bedingungsfeldsignale ACON, BCON bzw. SCON aufnehmen undaußerdem die binären O-Ausgangssignale der drei Steuerflipflops A, B und Stop erhalten, die außerdem mit 33, 36 und 37 bezeichnet sind. Ausgangs signale der drei Glieder 76 bis 78 werden über ein NOR-Glied 79 der Be tätigujngsleitung 63 zugeführt, die ein einziges Betätigungssteuersignal an die Koppelglieder 61 und 62 liefert.
In Abwesenheit eines Bedingungsfeld-Steuersignals erhalten alle drei Glieder 76 bis 78 Signale niedriger Spannung von der gemeinsamen Steuer Sammelleitung 16 und sind abgeschaltet, so daß sie ebenfalls Signale niedriger Spannung an das NOR-Glied 79 abgeben. Folglich liefert das Glied 79 ein Signal hoher Spannung an die Betätigungsleitung 63, um die Glieder 61 und 62 zu betätigen. Es zeigt sich also, daß diese beiden Koppelglieder im Normalfall durch das Betätigungs signal hoher Spannung auf der Leitung 63 in allen Zellen in Abwesenheit von Bedingungsfeld-Steuersignalen teilweise erregt sind. Wenn irgendeines oder
209831/0916
mehrere der Bedingungsfeld-Steuersignale hoch ist, so ist sein UND-Glied in der Betätigujngslogik 66 in jeder Zelle teilweise betätigt. In irgendeiner Zelle, in der das entsprechende Steuerflipflop zurückgestellt ist, wird das UND-Glied dann voll betätigt und liefert ein Ausgangs signal hoher Spannung an das NOR-Glied 79, das dann die Spannung auf der Betätigungsleitung 63 herabsetzt und dadurch die Koppelglieder 61 und 62 abschaltet. Wenn jedoch das einer betätigten Bedingungsfeld-Steuerader entsprechende Steuerflipflop in irgendeiner Zelle eingestellt ist, so schaltet die niedrige Rückstell-Ausgangsspannung dieses Flipflops sein entsprechendes Coinzidenzglied in der Betätigungslogik 66 ab, so daß das Betätigungssignal hoher Spannung auf der Leitung 63 in dieser Zelle ungestört bleibt.
Wenn also ein Bedingungsfeld-Steuersignal hoch ist, schaltet es die Koppellogik 51 in jeder Zelle mit Ausnahme derjenigen Zellen ab, in welchen das entsprechende Flipflop der drei Steuerflipflops 33, 36 oder 37 eingestellt ist. Anders gesagt, wenn irgendeines Der Bedingungsfeld-Steuersignale hoch ist, so kann keine Zelle aktiv sein, bevor nicht das entsprechende Flipflop seiner Steuerflipflops sich ebenfalls im eingestellten Zustand befindet. Es kann demgemäß irgendein gewünschtes Muster von Zellen in
209831/0916
der vollen Kette von Zellen, die an die gemeinsame Steuersammelleitung 16 angeschaltet sind, zur Durchführung einer bestimmten Funktion dadurch gewählt werden, daß der Zustand eines oder mehrerer der Steuerflipflops in jeder Zelle des Musters voreingestellt und dann ein Steuersignal hoher Spannung auf den entsprechenden Bedingungsfeld-Steueradern geliefert wird. Da mit Vorteil mehrere Steuerflipflops in den Zellen vorgesehen sind, können sich unterschiedliche Muster von Zellen für unterschiedliche Funktionen überlappen.
Es wurden verschiedene Art?»en von logischen Verknüpfungsgliedern genannt, beispielsweise UND-, ODER-, NOR-, Exclusiv-ODER~ Glieder und Flipflops erwähnt. Es stehen viele Arten solcher Schaltungen zur Erzielung der angegebenen Funktionen zur Ve rfügung. Wenn jedoch die Erfindung bei einem System mit intek grierten Schaltungen angewendet wird, ist es üblicherweise
zweckmäßig, logische Schaltungen ohne konzentrierte Kapazitäten und ohne konzentrierte Induktivitäten, also Kapazitäten und Induktivitäten im Gegensatz zu verteilten Kapazitäten oder Induktivitäten, zu verwenden, um die Herstellung der Bauteile zu vereinfachen. Die schematische Darstellung der verschiedenen logischen Verknüpfungsglieder soll so verstanden werden, daß zusätzlich nicht gezeigte Stromversorgungsleitungen
209831/0916
vorhanden sind.
Die verschiedenen Vorteile einer Speicherzelle mit verteilter Logik der oben beschriebenen Art lassen sich besser bei einer Betrachtung der verschiedenen Unterprogramme verstehen. Dazu zählen die fundamenteilen Unterprogramme für die Maschinenoperation, beispielsweise Speicher-, Lese- und Vergleichsoperationen sowie Unterprogramme für arithmetische Operationen, beispielsweise Addier-, Subtrahier- und Verschiebungsoperationen. Durch Verwendung solcher Grundprogramme lassen sich viele logische und arithmetische Operationen bekannter Art ausführen. Beispielhafte Programmabläufe werden nachfolgend beschrieben und in einer Darstellung angegeben, die die Art der Signalzustände in Feldern am Ausgang des Registers 26 (Fig. 2) angeben, dessen Steuerleitungen an die Speicherzellen mit verteilter Logik über die Sammelleitung 16 angelegt sind. Dieses Bezeichnungsverfahren stellt die Befehlsinformation dar, die im Nurlesespeicher 21 in einer für die Maschine brauchbaren Form gespeichert und schematisch durch unterschiedliche Kombinationen von Binärsignalen 0 und 1 dargestellt ist.
Die Zeichen, beispielsweise SQ, S1, ... S geben verschiedene
209831/0916
Bitstellen-Adressen im Datenspeicher 42 (Fig. 4) an, wobei η für das hier beschriebene Ausführungsbeispiel 16 ist. Das Auftreten irgendeines dieser Adressenzeichen soll nachfolgend als Darstellung für eine bestimmte Kombination von binären 1- und O-Werten im Adressenfeld verstanden werden, die eine der Bit-Adressen definieren. Die Definition einer solchen Adresse für ein Bit ist notwendigerweise gleich für alle Zellen, die an die gemeindame Steuersammelleitung 16 angeschaltet sind, da diese Sammelleitung alle Zellen parallel bedient.
Es wird angenommen, daß weitere Steuer ädern der gemeinsamen Steuer Sammelleitung 16 alle auf niedriger Spannung liegen, also binär 0 darstellen, falls nicht ein Bezugszeichen vorgesehen ist und angibt, daß eine bestimmte Ader auf der hohen Spannung liegt. So stellt ein Zeichen, beispielsweise CON, eine Bedingungsfeldader dar, die hoch liegt, uad die
spezielle Ader dieser Adern wird durch einen entsprechenden Buchstaben in der Leerstelle angegeben. Entsprechend bezeichnet ·* eine Quellenfeldader, die hoch liegt, ·*■ eine Bestimmungsfeldader die hoch liegt, L oder R eine entsprechende, hochliegende Globalfeldader und 1 oder 0 eine Steuerfeldader > die auf hoher Spannung liegt. Da die Bezugszeichen für jedes Feld unterschiedlich sind und da die Signale eines Befehls
209831/0916
gleichzeitig angelegt werden, ist die Folge von Zeichen bei der vorliegenden Darstellung ohne Bedeutung.
Bevor sinnvolle Datenverarbeitungsoperationen beginnen können, muß in den Speicherzellen mit verteilter Logik ein bestimmtes Muster von Signalbedingungen für diejenigen Fälle hergestellt werden, in welchen gewisse Operationen mit weniger als allen Zellen einer Kette durchgeführt werden. Eine solche Betriebseinleitung wird durch Eingabe von Signalmustern in Datenspeicher oder in Steuer- oder andere bistabile Einrichtungen in den Zellen erreicht. Die Muster werden auf eine von zwei Arten durch äußere Register oder durch ein Programm zugeführt. Beide Arten werden erläutert, aber in vielen Systemen wird allgemein das letztgenannte Verfahren verwendet, da es die Anfangsinformation genauer der durchzuführenden Arbeit zuordnet und daher die Fehlerwahrscheinlichkeit verringert.
Es sei zunächst angenommen, daß geeignete Steuerflipflops der gewählten Zellen zur Betriebseinleitung des Verarbeitungssystems einzustellen sind. Zweckmäßig kann ein externes Register (nicht gezeigt) benutzt werden, um binäre 1-We rte an die externen Eingangsleitungen 55 aller Zellen anzulegen, die gewählt werden sollen. Dann wird eine Bdehlsangabe, bei-
209831/0916
spielsweise ΙΝ·?> , 1, ->Α benutzt, um anzugeben, daß die bestimmten Steueradern im Quellen-, Steuer- bzw. Bestimmungsfeld auf hoher Spannung liegen, während alle anderen Steueradern auf niedriger Spannung sind. Ein solcher Befehl stellt das A-Flipflop 33 aller Zellen ein, bei denen ein binäres Eingangssignal 1 an der zum Glied 56 führenden Ader 55 ansteht. Das NichtVorhandensein des Signals POL bedeutet, daß der Binär zustand 1 in unveränderter Form bezüglich des Ausgangssignals des Exklusiv-ODER-Gliedes 52 eingekoppelt wird. Dieses Signal läuft dann nur über das Glied 61 zur Ader 46 der Zwischenzellen-Sammelleitung, da nur das "1"-Steuerfeldsignal hoch ist. Da das -^Α-Steuersignal hoch liegt, bewirkt das Signal hoher Spannung auf der Ader 46, daß nur das A-Flipflop 33 eingestellt wird.
Zusätzliche Be Stimmungssteuersignale können im gleichen Befehl vorgesehen sein, um, falls gewünscht, andere Schaltungen in den gleichen Zellen gleichzeitig einzustellen. Wenn jedoch andere Steuerflipflops individuell in einem unterschiedlichen Muster von Zellen eingestellt werden sollen, dann muß ein weiterer, dem eben angegebenen ähnlicher Befehl für jedes Muster mit den entsprechenden Bestimmungssteuersignalen ausgeführt werden. Man erkennt jetzt, daß ein ähnlicher Befehl auch zur
209831/0916
Übertragung von Daten aus einem äußeren Register zum Datenspeicher 42 unter Verwendung des -i>S-Be stimmungsfeldsignals benutzt werden kann.
Die Betriebseinleitung durch das Programmjmacht es erforderlich, daß die Programmfolge im Speicher 21 (Fig. 1) eine Einleitungs-Mikrobefehlsfolge enthält. Diese Folge wird für alle Programmzyklen außer dem ersten unter Verwendung des Abzweigfeld-Bit ausgelassen. Eine Folge von programmierten Einleitungsschritten soll hier erläutert werden, wobei allerdings einige Schritte erst später genauer beschrieben werden.
Zuerst werden alle A-Flipflops 33 und alle STOP-Flipflops 37 eingestellt, beispielsweise durch einen Befehl POL, -^STOP, 1 , Dann werden alle D-Flipflops 39 durch ->D, O zurückgestellt. Anschließend wird eine binäre 1 aus dem Steuerfeld von allen Zellen aus nach rechts ausgebreitet, wodurch alle D-Flipflops 39 eingestellt werden außer demjenigen in der am weitestens links liegenden Zelle 11, die als die am weitesten links liegende Zelle der Kette einen Erdanschluß 15 an den Eingängen seiner Glieder 49 und 72 anstelle der Eingangsverbindung 17 besitzt. Der Inhalt aller D-Flipflops 39 wird jetzt durch einen Be fehl D->, ->A, 1, O, POL invertiert und in entsprechenden A-Elip-
209831/0916
flops gespeichert, so daß das am weitestens links liegende A-Flipflop eingestellt ist und alle anderen zurückgestellt sind. Durch eine Anzahl von Speicheroperationen unter Verwendung des Quellenfeldsignals POL und der beiden Steuerfeldsignale sind, während ACON im 1-Zustand gehalten wird, um die Glieder 61 und 62 in allen Zellen außer der am weitestens links liegenden zu sperren, die im voraus programmierten Anfangsdaten jetzt in den Bitstellen der ersten Zelle 11 gespeichert. Beispielsweise wären Speicherbefehle für die i-te Bitstelle POL, 1, O, -^S, ADDR=S., um eine 1 einzuschreiben. Das Weglassen des POL-Zeichens führt zum Einschreiben einer 0.
Der aktive Α-Zustand wird dann bei der programmierten Einleitung nach rechts zur Zelle 12 weitergeführt, in dem alle D-Flipflops (0, -^D) zurückgestellt werden, der Inhalt des A-Flipflops der Zelle 11 nach rechts zum D-Flipflop der Zelle 12 weitergeführt wird, (die Weiterleitung hält bei der Zelle 12 an, da alle STOP-Flipflops zu Anfang eingestellt waren), der Inhalt aller D-Flipflops im zweigleisigen Be trieb zum A-Steuerflipflop übertragen wirdJ nur die Zelle 12 ist jetzt Α-aktiv, da sie die einzige mit eingestellten D-Flipflop war), und in dem weitere Folgen von Speicheroperationen für die Zelle 12 durchgeführt werden. Durch eine Wiederholung der letzten Folge von Opera-
2Q9Ö31/0Ö19
tionen, beginnend mit der Weiterführung des aktiven A-Zustandes nach rechts, und zwar einmal jede Zelle, werden im voraus programmierte Einleitungsdaten in allen Datenspeichern in der Folge von Zellen entlang der Kette gespeichert.
Man erkennt jetzt,-daß eines oder mehrere der gespeicherten Wörter mit einem Bit beispielsweise in der Stelle S in jeder Zelle ein Bitmuster darstellen kann, das dem Muster von Zellen entspricht, bei dem ein bestimmtes Steuerflipflop eingestellt ist. In diesem Fall wird das Muster aus den Datenspeichern ausgelesen. Der Lesebefehl, der zur Einstellung der Steuerflipflops, beispielsweise der B-Flipflops unter Verwendung dieses Bitmusters anstelle eines äußeren Registers benutzt wird, hätte die Form ADDR = S-, S-> , 1, 0, -o-B.
Es besteht außerdem die Möglichkeit, Daten aus anderen Quellen zu speichern, beispielsweise aus dem Datenflipflop 39 oder aus dem Programm. Beispielsweise kann einer der folgenden Befehle benutzt werden, um Daten in die Bitstelle S_ jeder Zelle einzuschreiben, deren A-Flipflop eingestellt ist: 0, ACON, -i-S, ADDR = SL (eine 0 aus dem Programm) D-> , 1, 0, ACON, -^S, ADDR = S- (Dateninhalt aus D).
209831/0916
Das Komplement des Ausgangsignalzustandes des Datenflipflops würde gespeichert, in dem zum letztgenannten Befehl das Zeichen POL hinzugefügt wird, so daß die POL-Ader hoch liegt und das Ausgangs signal des Exelusiv-ODER-Gliedes 52 das Komplement des Eingangsignals für dieses Glied aus dem ODER-Glied 53 ist.
Es wurde bereits erwähnt, daß Signalzustände zwischen den Zellen nach links oder rechts weitergeführt werden können. Dies wird gelegentlich als Links- oder Rechts-Markieroperation ausgedrückt, wenn ein Flipflop in einer Empfangszelle eingestellt werden soll. Alternativ wird dies als Schiebeoperation bezeichnet, wenn Daten bei einer arithmetischen Verschiebung von Zelle zu Zelle bewegt werden sollen. Die Signalweiterführung wird Ankoppeln einer geeigneten Datensignal quelle, beispielsweise des Speichers 42, über die Koppellogik 51 an die Zwischenzellensammelleitung 43 in der sendenden Zelle oder Zellen erreicht, die vorher durch Einstellen eines der Steuerflipflops 33 oder 36 markiert worden sind. Auf entsprechende Weise wird die Weiterführung an der ersten Zelle beendet, bei der ein vorher eingestelltes STOP-Flipflop 37 angetroffen wird. Zur Angabe der Weiterführungsrichtung ist ein Global-Feld-Steuersignal. in dem Befehl vorgesehen. Nimmt
209831/0916
'ftf"
man also an, daß entsprechende Befehle zur Einstellung des A-Flipflops einer sendenden Zelle und des STOP-Flipflops der Endzelle für jede Weiterführungsfolge ausgeführt worden sind, so bewirken beispielsweise die folgenden Befehle, daß die Weiterführung in den angegebenen Richtungen stattfindet: 0, ACON, LEFT (Weiterführen eines Hoch-Signals nach
links von allen Α-aktiven Zellen)
ACON, ■ S·*, RIGHT, ADDR = i, 1 (Weiterführen eines Hochsignals nach rechts von allen Α-aktiven Zellen, in denen das Bit i des Speichers eine 1 ist).
Der Inhalt einer bestimmten Bitstelle eines Datenspeichers wird auf ähnliche Weise weitergeführt, indem zuerst alle D-Flipflops zurückgestellt werden, jede sendende Zelle aktiv gemacht wird, beispielsweise Α-aktiv, und das STOP-Flipflop jeder Endzelle eingestellt wird. Dann leitet ADDR = S., ACON, S·*-, RIGHT, I die Weiterführung ein und in allen Zwischenzellen sowie der Emdzelle sind die D-Flipflops in den Binärzustand der Bitstelle S. in den Datenspeichern der jeweils sendenden Zellen eingestellt. Wenn alle empfangenden Zellen B-aktiv sindj wird der Inhalt ihrer D-Flipflops durch ADDR = S., BCON, D-», ->S, 1, O nach
209831/0918
2163Λ35
S. übertragen. Wenn die weitergeführten Daten nur in der Endzelle jeder Ausbreitungsfolge gespeichert werden sollen, lautet das Bedingungsfeldzeichen SCON anstelle von BCON.
Viele Operationen machen die Durchführung einer Vergleichsfunktion bezüglich einer oder mehrerer Bitstellen in wenigstens einem Datenspeicher erforderlich. Diese Operationen werden bei der erfindungsgemäßen Anordnung durchgeführt, in dem das Datenflipflop 39 (das jetzt als Vergleichsflipflop benutzt wird) in einen vorbestimmten Bezugszustand eingestellt wird, der Inhalt der entsprechenden Stelle des Speichers 42 in das Datenflipflop 39 gelesen und die Ausgangs signale dieses Flipflops zur Anzeige einer Übereinstimmung für einen Zustand und einer Nichtübereinstimmung für den anderen Zustand benutzt werden, wobei es dem Programmierer freigestellt ist, welcher Zustand zur Anzeige einer Übereinstimmung oder Nichtübereinstimmung benutzt wird. Nachfolgend wird als Beispiel eine Befehlsliste angegeben, mit deren Hilfe der Inhalt der Bitstellen S- S des Speichers 42 in B-aktiven Zellen verglichen ο ο
wird, um festzustellen, ob sie die Bits 1,1, O enthalten oder nicht:
209831/0916
1. Das Datenflipflop wird BCON, POL, 1, -5|D mit Hilfe des Programms
auf einen Bezugs zustand
voreingestellt, d.h., auf
den Binär zustand 1.
2. Aufeinanderfolgendes ADDR = S , BCON, S-*, O, Lesen in das Datenflipflop ADDR = S , BCON, S-*, O, ->D 39 aus Datenspeicherstel- ADDR = S BCON, POL, S->, O, -*D len, die verglichen werden sollen.
Wenn das Datenflipflop einer bestimmten B-aktiven Zelle nach der oben angegebenen Befehlsfolge im 1-Zustand bleibt, weiß man, daß deren Bits S-S mit den angegebenen Daten übereinstimmen. Wenn das Datenflipflop während der Befehlsfolge zurückgestellt worden ist, ergibt, daß für diese Zelle eine Nichtübereinstimmung vorhanden ist. Eine Vielzahl von Programmaufgaben läßt sich jetzt unter Verwendung der Datenfliflop-Ausgangssignale in anderen Schaltungen der Zelle verwirklichen, beispielsweise um den Zustand eines Steuerflipflops, wie des Flipflops 33, zu beeinflussen.
209831/0916
In Datenverarbeitungsanlagen mit verteilter Speicherlogik ist es gelegentlich zweckmäßig, eine Vielzahl von Speicherstellen in wenigstens einer Zelle als Zähler dienen zu lassen. Da diese Speicherstellen nicht miteinander verbunden äid, außer in dem Sinn, daß sie alle eine gemeinsame Ziffernleitung zum Lesen und Schreiben benutzen, muß ein solcher Zähler durch das Programm weit erge schalt et werden. Dies wird erreicht, in dem das Zählerbit in die Speicherstellen mit dem niedrigsten binären
Stellenwert eingegeben, dann invertiert und in invertierter Form in seine ursprüngliche Speicherstelle zurückgebracht wird. Wenn sich dabei zeigt, daß das Bit in der aus dem Datenspeicher gelesenen Form eine binäre 1 war, so wird die Folge mit der Zählerbitstelle des nächsthöheren Stellenwertes wiederholt. Wenn sich dagegen zeigt, daß das Bit in der ursprünglichen Form eine binäre 0 war, so wird die Weiterschaltgolge für jede Zelle angehalten, für die diese Bedingung gilt. Die folgende Befehlsfolge zeigt die Weit er schaltoper ation unter der Annahme, daß alle Zellen, die Zähler enthalten, in einen gemeinsamen Aktivitätszustand gebracht worden sind, beispielsweise S-aktiv sind, und unter der weiteren Annahme, daß die S-Stelle in jeder Zelle die Zählerstufe mit dem niedrigsten Stellenwert ist: 1. Einstellen der STOP- SCON, ->Stop, 1
Flipflops.
209831/0916
2. Eingeben des Zählerbits niedriger Ordnung in das D-Flipflop.
ADDR =
SCON, S->, O, ->D
3. Rückgabe des Inhalts' des D-Flipflops in invertierter Form in die ursprüngliche Stelle im Datenspeicher.
ADDR = S0, SCON, POL, D* , 1, O, -»S
4. Rückstellen des STOP- SCON, D·^, 0,^STOP Flipflops unter Ve rwendung des Inhalts des D-Flipflops, wenn das vorhergehende Bit aus dem Speicher eine 0 war.
5. Eingeben der Zählerbit- ADDR = S , SCON, S->, 1, 0, »D stelle des nächsthöheren Stellenwertes in das Dr Flipflop. (Dieser Befehl beeinflußt eine Zählerzelle nicht, in welcher das STOP-Flipflop vorher zurückgestellt worden ist, wodurch angezeigt
9831/0913
wird, daß die Weiterschaltung beendet ist.)
Das vorstehende Weiterschaltprogramm läuft für alle Zähler-Datenspeicherbitstellen weiter, da jeder der Zähler eine andere Binärzahl enthalten kann und fbiglich den weitergeschalteten Zustand während einer unterschiedlichen Stufe des Programms fc erreichen kann. Demgemäß läuft das vom Nurlesespeicher 21
(Fig. 2) gelieferte Programm durch alle Bitstellen und hängt von dem STOP-Flipflop in jeder Zelle bezüglich des Anhaltens eines Zählers für diese Zelle zum richtigen Zeitpunkt ab.
Es wird jetzt ein Addierverfahren zusammen mit Befehlen zur Durchführung des Verfahrens in einem Verarbeitungssystem unter Verwendung von Schaltungen gemäß Fig. 2 und 4 entfc sprechend der in Fig. 1 dargestellten Kombination beschrieben.
Bei dem Verfahren wird ein erstes Steuerflipflop in Zellen markiert, die einen Übertrag erzeugende Bits enthalten, ein zweites Steuerflipflop wird in Zellen markiert, die einen Übertrag aufnehmende Bits enthalt en, die Überträge werden von einem Übertrag erzeugenden Bits nach links bis zur Erreichung einer einen Übertrag aufnehmenden Bitstelle weitergeleitet, es wird eine binäre Addition unter Nichtbeachtung von Überträgen
209831/0918
durchgeführt und dann werden die Überträge ohne Erzeugung neuer Überträge addiert. Nachfolgend wird ein Ausführungsbeispiel beschrieben, wobei angenommen wird, daß sich das Addend-Register in den S0-Stellen, das Augend-Register in den Stellen S1 und das Summenregister in den Stellen S befindet. Jedes der Register erstreckt sich über volle Kette von Zellen.
I1 Markieren aller POL, 1, ->A, ->B
Zellen dur ch Einstellen sowohl der A- als auch der B-Steuerflipflops.
2. Es werden nur Übertrag- g_v ^ ^ ADDR = Q generatoren in S und S1 S->, ·*>Α, 0, ADDR =
Α-aktiv gelassen, in dem A in denjenigen Zellen gelöscht wird, in denen für einen der Summanden eine binäre 1 fehlt (eine Zelle, bei der eine binäre 1 sowohl Sn als auch S1 fehlt, kann kein Übertrag innerhalb der Zellenbitposition erzeugen).
209831/0916
3. Es werden nur Über- S->, ->B, O, POL, ADDR =
trag-Absorbierer in S und S-*>, -*B, 0, POL, ADDR = S1 B-aktiv gelassen, indem B in denjenigen Zellen gelöscht tyird, die einen Übertrag weiterleiten, weil entweder der eine oder der andere ψ Summand im Binärzustand 1
ist. (Jetzt ist jede Zelle, die nicht mehr A- oder B-markiert ist, ein Übertragweiterleiter, da sie eine einzige binäre 1 besitzt).
4. Markieren links von A- 0, -*STOP, -^D aktiven Zellen (Übertrag- BCON, 1, ->STOP. POL
generator), Anhalten an ACON, 0, LEFT
B-aktiven Zellen (Übertragabsorbierer). (Dadurch wird das D-Flipflop 39 injeder mittleren Zelle, die einen Übertrag weiterleitet, und in der letzten B-Zelle ein-
209831/0916
gestellt. Demgemäß sind alle Zellen, die Überträge erhalten, jetzt durch die Einstellung D-Flipflops markiert.)
5. Durchführung einer M- POL, 1. -^S, ADDR = nären Addition unter Nichtbe-ACON, O, -^S, ADDR = achtung von Überträgen durch BCON, O, ->S, ADDR = Speichern einer binären 0 im Summenwort S0 für alle
Ct
Zellen, die entweder A- oder B-aktiv sind, d. h., Zellen, die entweder Generatoren oder Absorbierer sind, und einer binären 1 in S aller anderen
Ct
Zellen.
6. Addieren der vorher D"^» "^A, 0, markierten Überträge S-^, -OD, 0, 1,ADDR=
ohne Erzeugung neuer ACON, D->, -?S, POL, 0,1, ADDR =
Überträge, d. h., invertieren jedes Binärzustandes im Summenwort S0 fftr Zellen
209831/0916
die zur Aufnahme von Übertragen D-markiert sind. (Dies geschieht, in dem der Zustand des D. Flipflops im A-Steuerflipflop festgehalten wird, das S -Bit in das D-Flipflop verbracht wird und dann eine "bedingte Einspeicherung1' vorfc genommen wird, d. h. der
Inhalt des D-Flipflops 39 für Α-aktive Zellen in der Speicherstelle S eingespeichert
dt
wird, wobei das Quellenfeld signal POL hoch isfe^ um die Daten vor der Einspeicherung zu invertieren. Jetzt enthält das fc Sq-Register die richtige Binärsumme von Sn und S1).
Für die vorstehende Liste einer Addier-Operation war angenommen worden, daß die Register die drei interssierenden Zahlen erstreckt über eine volle Kette von Speicherzellenn mit verteilter Logik enthalten. Es lassen sich aber auch getrennte Addieroperationen parallel in zwei oder mehreren Gruppen von Registern innerhalb einer einzigen Kette vpn Zellen J ^*"1-'— 209ö3i/O9iö
Eine Möglichkeit hierzu besteht darin, das STOP-Flipflop und das SCQN-Steuersignal immer dann zu benutzen, wenn in der vorstehenden Liste das B-Flipflop und das B-Steuersignal verwendet werden. Dann werden die Zellen, die bei parallelen Addieroperationen zu verwendende Megistergrüppen enthalten, B-aktiv gemacht, und zu jedem der Befehle in der vorstehenden Addierliste wird das BCON-Steuersignalzeichen hinzuaddiert. Zellen, die nicht B-aktiv sind, werden also nicht durch die * erbefehl pfoTge beeinflußt.
Die oben beschriebene Addierfolge ist auch zur Durchführung von Subtraktionen brauchbar. Zuerst ist das Zweier-Komplement des Registers in den S -Bitstellen, <L h. , dem Subtrahenden-Register zu bilden. Dieses Zweier-Komplement wird dann in das S- Register eingegeben: und die Addieroperation entsprechend der obigen Erläuterung durchgeführt. Das Ergebnis dieser Addition ist gleich der Differenz, die man bei einer gewöhnlichen Subtrahier-Operation erhält. Ein zweckmäßiges Verfahren zum Gewinnen des Zweier "«Komplements mit der Zelle gemäß Fig. 4 beinhaltet ein Invertieren, aller Bits höherer Stellenzahl als diejenige niedrigste Stellenzahl, die eine binäre 1 enthält, in dem interessierenden Register. Eine beispielhafte Befehlsliste lautet wie folgt:
209831/0916
Markieren von Zellen links der ersten EINS
1. Alle Zellen, bei denen ADDR =1, S-*, -*A, 0, 1 S binär 1 ist, werden A-aktiv gemacht.
2. Rückstellen der D- und STOP-Flipflops.
0, -*D, ->STOP
3. Einstellen des D-Flipflops in allen Zellen links von einer A-aktiven Zelle.
ACON, 0, LEFT
Invertieren von S1 in markierten Zellen
4. Übertragen des Inhalts des D-Flipflops in ein Steuerflipflop, wodurch Zellen, bei denen S1 zu invertieren ist, steuermarkiert werden.
209831/0913
5. Eingeben des Inhalts ADDR = 1, S-*, -PO, O, 1
von S in die D-Flipflops.
6. Rückgabe des Inhalts ADDR = 1, ACON, D->, *3, POL, 0,1
der D-Flipflops in A-aktiven Zellen in invertierter Form
an die ursprüngliche Speicherstelle S1.
Wenn getrennte Gruppen von Registern an parallelen Subtrahier-Operationen beteiligt werden sollen, werden Grenzzellen zwischen benachbarten Registern durch Einstellen ihrer Flipfflops auf den Binärzustand 1 gebildet und zwar nach dem zweiten Schritt in der oben angegebenen Liste, bei dem alle STOP-Flipflops zurückgestellt wurden. Grenzzellen werden werden für die Subtraktion benötigt, da das Markieren links innerhalb jeder Registergruppe begrenzt werden muß.
Bisher wurden Addier-, Subtra&ier- und Verschiebeoperationen beschrieben. In einem Verarbeitungssystem nach der Erfindung können jedoch viele weitere arithmetische Operationen vom Fachmann durchgeführt werden. Um zu zeigen, daß sich die Erfindung auch im nichtarithmetischen Bereich anwenden
209831/0918
läßt, soll jedoch jetzt die Verwendung bei einem nichtarithmetischen Nachrichtensystem beschrieben. Dabei handelt es sich um einen unabhängigen Abtaster im Hauptamt einer elektronischen Nachrichtenvermittlungsanlage. Ein solcher Abtaster beobachtet die Signalzustände auf Überwachungsleitungen, die von der Vermittlungsanlage ausgehen, beispielsweise Teilnehmerleitungen und/oder Zwischenamtsleitungen. Bei dem Ausführungsbeispiel wird für die Abtastung von Leitungen angenommen, daß der Einhängezustand als binäre 0 und der Aushän gezustand als binäre 1 dargestellt werden. Der Abtaster-Verarbeiter überwacht die Leitungszustände und benachrichtigt den zentralen Amt sver arbeit er ( nicht gezeigt) wenn eine Änderung auf einer der Leitungen aufgetreten ist und gibt außerdem die Nummer dieser Leitung an. Fig. 5 zeigt in Form eines vereinfachten Blockschaltbildes den Abtastverarbeiterabschnitt einer elektronischen Vermittlungsanlage.
Fig. 6 enthält ein Flußdiagramm für die Abtast verarbeitungs-Befehlsfolge. Es wird angenommen, daß alle Zellen in einer durch die Steuereinheit 10 bedienten Kette für die Abtastfunktion verwendet werden. Die Bitstelle SQ enthält die letzte Eingangsinformation von den Überwachungsleitungen 80. Die Bitstelle S1 enthält Angaben bezüglich der Überwachungszustände, die bei
209831/0316
der vorhergehenden Abtastung bestanden haben. Die Bitstellen S„ bis S enthalten Leitungsnummern mit zehn Bits (unte.T Annahme eines Abtasters für 1024 Leitungen) für die jeweils den Zellen zugeordneten Leitujngen. Das bei der Verarbeitungsbefehlsfolge benutzte Verfahren enthält die in Fig. 6 angegebenen Haupt schritte, wobei Überwachungsleitungszustände von den Überwachungsleitungen 80 in die Bitstelle S jeder Zelle eingegeben werden. Danach werden die Zustände dieser Leitungen mit dem Inhalt der Bitstellen S1 in den entsprechenden Zellen verglichen, um festzustellen, ob eine Änderung stattg efunden hat. Wenn keine Änderung in einer bestimmten Zelle vorgekommen ist, so endet die Abtastbefehlsfolge in dieser Zelle für diesen Zyklus. Wenn jedoch eine Änderung festgestellt wird, wird eine der veränderten Zellen isoliert. Dann wird für die isolierte Zelle ein Betätigungssignal zum zentralen Amtsverarbeiter übertragen (auf einer an die binäre 1-Ader eines Ausgangsflipflops angeschalteten Leitung 81), das angibt, daß eine Änderung stattgefunden hat. Dann folgt auf einer Leitung 82 eine Nachricht, die die Nummer der Leitung angibt, für die die Änderung festgestellt worden ist, und den neuen Leitungszustand. Der Inhalt der Bitstelle S wird auf den neuesten Stand gebracht, die Abtastbefehlsfolge ist für dieeen Zyklus beendet und der Abtaster kann einen neuen Ab-
209831/0916
tastzyklus beginnen. Eine beispielhafte Liste für die Abt ast befehlsfolge lautet wie folgt:
Eingabe für SQ
1. Der letzte Signalzu- ADDR = 0, IN·*, -3>S, 0, stand der Überwachungsleitungen 80 wird in Sn gespeichert.
Markieren von Zellen für Leitungen mit geändertem Zustand durch Einstellen von A, wenn S / S , im anderen Fall löschen
2. Übertragen des Inhalts ADDR = 0, S-*, -»B, 0, von Sn an B-Steuerflipflops.
3. Übertragung des Inhalts ADDR = 1, S-?, ->A, 0, von S1 an A-Steuerflipflops
4. Invertieren des Inhalts ADDR = 1, BCON, POL, S->, ->A, 0,1 von S1 und Übertragen zu A-Steuerflipflops nur in
209831/0916
Si
denjenigen Zellen, in welchen B-Steuerflipflops vorher eingestellt worden sind. (Dadurch wird A eingestellt oder eingestellt gelassen, wenn der neue und der invertierte alte Zustand beide 1 bzw. beide 0 sind - wodurch eine Änderung angezeigt wird - und im anderen Fall A zurückgestellt oder zurückgestellt gelassen).
Alles Löschen außer der am weitesten links liegenden, A-aktiven Zelle
5. Rückstellen der D- 0, ->Ό, -*STOP und STOP-Flipflops in allen Zellen.
6. Einstellen der D-Flip- POL, ACON, 1, RIGHT flops in allen Zellen außer der am weitesten
209831/091«
links liegenden Zelle im A-aktiven Zustand durch Markieren nach rechts von Α-aktiven Zellen aus.
7. Löschen der Α-Flip- POL, D·^, ~>A,
flops in den markierten Zellen, d. h., in allen Zellen wird der Inhalt der D-Flipflops doppelt invertiert auf die Rückstellseite der A-Steuerflipflops gegeben. (Dadurch werden alle A-Flipflops mit Ausnahme des am weitestens links liegenden gelöscht, wenn D-Flipflop nicht eingestellt worden ist.)
Übertragen der Nachricht von der einzigen, übrigbleibenden A-
aktiven Zelle
8. Erhöhen der Spannung POL, 1, ·*·ΟϋΤ
auf der Betätigungsleitung
209831/0916
-3fr-
81. (Diese Leitung 81 kann mit jeder der Abt ast erz eilen verbunden werden. Wenn sie im Zustand hoher Spannung ist, meldet sie dem zentralen Amts verarbeiter, daß eine Abtasternachricht jetzt von der Lesesammelleitung 28 ankommen kann.)
9. Aussenden einer Zustandsnachricht zum zentralen Amt s verarbeiter. (Zuerst wird eine lO-Bit*- ADDR = 2, ACON, S-i>, 1 (Entsprechende Befehle werden für den Rest der Adressenstellen S bis
1 j nacheinander wiederholt.)
Leitungsnummer S-S1
et XX
und dann ein 1-Bit-Signal ADDR = O, ACON,
Sn ausgesendet, das den neuen Überwachungs zustand angibt.)
10. Erniedrigen der Span- O, -£OUT nung auf der Betätigungsleitung 81.
209831/0916
In Α-aktiver Zelle wird S durch S auf den neuesten Stand gebracht
11. Eingeben des Inhalts
ADDR = O, S-*>, ->D, 0, 1
von Sn in das D-Flipflop. (Diese Operation kann auf die
A-aktive Zelle durch Addieren des
Zeichens ACON begrenzt werden, wobei aber das Endergebnis nicht anders lautet.)
12. Eingeben des Inhalts ADDR = 1, ACON, D->, ->S , O,
des D-Flipflops in die Bitstelle S1, wenn das Steuerflipflop A-aktiv ist.
Unter der Annahme, daß die gesamte Zellenkette für die Abtastfunktion benutzt wird und daß keine weiteren Funktionen durch das System gemäß Fig. 1 auszuführen sind, würde das Programm schließlich durch den Programmadressenzähler auf den Anfangsabtastbefehl zurückgeführt werden.
209831/0916

Claims (6)

PATENTANSPRÜCHE
1.) Datenverarbeitungsanlage mit einem Speicher mit verteilter Logik und folgenden Bauteilen:
wenigstens eine Logikzelle (12) mit einer Vielzahl bistabiler Schalt einrichtungen (33, 36, 37), die je Eingangs schaltungen besitzen,
eine Vielzahl von Signalquellen (39, POL, 55), eine Sammelleitung (16) die Operationssteuersignale an die Zelle liefert, wobei erste Steuersignale ( ->A, ->B, -^ STOP) an die Schalt einrichtungen angelegt sind, um wenigstens eine Schalteinrichtung für eine Betätigung vorzubereiten, dadurch gekennzeichnet,
daß jede Logikzelle folgendes aufweist:
eine gemeinsame Ve rbindung (43) die Datensignale im Vielfach an Eingangs schaltungen der bistabilen Schalt einrichtungen liefert;
Koppeleinrichtungen (51), die wahlweise wenigstens immer nur eine der Signalquellen gleichzeitig an die gemeinsame Verdingung (43) ankoppekn;
einen Digitalinformationsspeicher (42) mit individuell adressierbaren Speicherstellen, der an die gemeinsame Ve rbindung zur Aufnahme von Informationen angeschaltet ist;
209831/0916
zweite Steuersignale (ACON, BCON, SCON), die je einer anderen der Schalteinrichtungen (33, 36, 37) entsprechen, und Zellauswahlschaltungen (66), die bei Coinzidenz eines zweiten Steuersignals und eines vorbestimmten Zustandes der entsprechenden Schalteinrichtung das Anlegen von Datensignalen aus den Quellen an die Schalteinrichtungen sperren.
2. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß die gemeinsame Verbindung (43) eine erste und eine zweite Ader (46, 47) aufweist, die an ein erstes bzw. zweites Verknüpfungsglied (49, 50) angeschaltet sind, um die Richtung der Datensignal-Weiterleitung auszuwählen.
3. Datenverarbeitungsanlage nach Anspruch 2, dadurch gekennzeichnet, daß ein Ausgangs signal einer der Schalteinrichtungen (37) gleichzeitig das erste und das zweite Verknüpfungsglied (49, 50) betätigen.
4. Datenverarbeitungsanlage nach Anspruch 1, dadurch gekennzeichnet, daß die Koppeleinrichtungen (51) eine UND/ ODER-Logik (56, 57, 58/53) enthalten, die Eingangs signale von den Quellen erhält, sowie ein Exclusiv-ODER-Glied
209831/0916
(52) und logische Verknüpfungsglieder (62, 61), die die
Ausgangs signale des Exclusiv-ODER-Gliedes (52) und der
Zellauswahlschaltungen (66) an die gemeinsame Verbindung (43) ankoppeln.
5. Datenverarbeitungsanlage nach Anspruch 2, dadurch gekennzeichnet, daß Verknüpfungsglieder (59, 60) die gemeinsame Verbindung (43) mit dem Digitalinformationsspeicher (42) verbinden, um Informationen in eine adressierte Speicherstelle einzuschreiben.
6. Datenverarbeitungsanlage nach Anspruch 5, dadurch gekennzeichnet, daß Verbindungen den Digitalinformationsspeicher (42) an die Koppeleinrichtungen (51) anschalten, um Informationen aus einer adressierten Spei eher stelle auszulesen.
209831/0916
Leerseite
DE19712163435 1970-12-24 1971-12-21 Datenverarbeitungsanlage mit einem Speicher mit verteilter Logik Pending DE2163435A1 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10131170A 1970-12-24 1970-12-24

Publications (1)

Publication Number Publication Date
DE2163435A1 true DE2163435A1 (de) 1972-07-27

Family

ID=22283984

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19712163435 Pending DE2163435A1 (de) 1970-12-24 1971-12-21 Datenverarbeitungsanlage mit einem Speicher mit verteilter Logik

Country Status (9)

Country Link
US (1) US3670308A (de)
BE (1) BE776987A (de)
CA (1) CA934876A (de)
DE (1) DE2163435A1 (de)
FR (1) FR2119684A5 (de)
GB (1) GB1373414A (de)
IT (1) IT943353B (de)
NL (1) NL7117752A (de)
SE (1) SE367077B (de)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3787817A (en) * 1972-06-21 1974-01-22 Us Navy Memory and logic module
US3936806A (en) * 1972-07-12 1976-02-03 Goodyear Aerospace Corporation Solid state associative processor organization
CH547590A (de) * 1973-03-21 1974-03-29 Ibm Fernmelde-vermittlungsanlage.
US3958223A (en) * 1973-06-11 1976-05-18 Texas Instruments Incorporated Expandable data storage in a calculator system
JPS5332651A (en) * 1976-09-07 1978-03-28 Yokogawa Hokushin Electric Corp Analog operation unit
US4287559A (en) * 1977-02-09 1981-09-01 Texas Instruments Incorporated Electronic microprocessor system having two cycle branch logic
US4373189A (en) * 1980-08-28 1983-02-08 Weant Charles M Signal conversion device
US4707800A (en) * 1985-03-04 1987-11-17 Raytheon Company Adder/substractor for variable length numbers

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL134125C (de) * 1958-04-25
US3287703A (en) * 1962-12-04 1966-11-22 Westinghouse Electric Corp Computer
US3312943A (en) * 1963-02-28 1967-04-04 Westinghouse Electric Corp Computer organization
US3320594A (en) * 1964-03-10 1967-05-16 Trw Inc Associative computer
US3391390A (en) * 1964-09-09 1968-07-02 Bell Telephone Labor Inc Information storage and processing system utilizing associative memory
US3395393A (en) * 1965-09-14 1968-07-30 Bell Telephone Labor Inc Information storage system
US3473160A (en) * 1966-10-10 1969-10-14 Stanford Research Inst Electronically controlled microelectronic cellular logic array
US3537074A (en) * 1967-12-20 1970-10-27 Burroughs Corp Parallel operating array computer
US3579201A (en) * 1969-09-29 1971-05-18 Raytheon Co Method of performing digital computations using multipurpose integrated circuits and apparatus therefor

Also Published As

Publication number Publication date
NL7117752A (de) 1972-06-27
FR2119684A5 (de) 1972-08-04
IT943353B (it) 1973-04-02
CA934876A (en) 1973-10-02
SE367077B (de) 1974-05-13
GB1373414A (en) 1974-11-13
US3670308A (en) 1972-06-13
BE776987A (fr) 1972-04-17

Similar Documents

Publication Publication Date Title
DE2322674C3 (de) Mikroprogramm-Steuereinrichtung
DE1901343C3 (de) Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen
DE2130299B2 (de) Eingabe-/Ausgabekanal für eine Datenverarb eitungsanlage
DE2318069C2 (de) Mikroprogrammierte Rechenanlage mit Erweiterung von Steuerfunktionen mittels festverdrahteter logischer Matrix
DE1549522B1 (de) Datenverarbeitungsanlage mit simultanverarbeitung mehrerer programme mittels mehrerer rechner
DE1238695B (de) Elektronenrechner mit einer Mehrzahl von Rechenwerken
DE1524209B2 (de) Programmgesteuerte datenverarbeitungsanlage
DE3232600A1 (de) Zeitmultiplexschaltmatrix
DE2230188C2 (de) Arithmetisch-logische Einheit für einen Digitalprozessor für variable Wortlängen
DE1197650B (de) Parallel-Addierer
DE1189294B (de) Datenverarbeitungsanlage
DE2744434A1 (de) Prozessteuersystem und verfahren zur prozessteuerung
DE2556617A1 (de) Datenverarbeiter zum rotierbaren verschieben von bits eines datenwortes
DE1499206B2 (de) Rechenanlage
DE2163435A1 (de) Datenverarbeitungsanlage mit einem Speicher mit verteilter Logik
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE2739525C2 (de) Rechner
DE1935845B2 (de) Datenverarbeitungsanlage mit mehreren befehlsfamilien-steuereinheiten
DE2136210A1 (de) Zentraleinheit fur eine EDV-Anlage
DE2459476C3 (de)
DE1293188B (de) Schaltungsanordnung zur UEbertragung von Pruefinformationen mit vorbestimmter Paritaet in Datenverarbeitungsanlagen
DE1193279B (de) Elektronen-Ziffernrechner mit eingespeichertem Programm
DE2459476A1 (de) Schaltungsanordnung fuer nichtzyklische datenpermutationen
DE2309029A1 (de) Elektronische digital-datenverarbeitungs-anlage der gattung mit parallelverarbeitung mehrerer binaerer signale
DE1223177B (de) Elektronischer Digitalrechner mit Schaltung fuer die Errechnung der Quadratwurzel aus einer Binaerzahl

Legal Events

Date Code Title Description
OHN Withdrawal