DE1302494B - - Google Patents
Info
- Publication number
- DE1302494B DE1302494B DE19591302494D DE1302494DA DE1302494B DE 1302494 B DE1302494 B DE 1302494B DE 19591302494 D DE19591302494 D DE 19591302494D DE 1302494D A DE1302494D A DE 1302494DA DE 1302494 B DE1302494 B DE 1302494B
- Authority
- DE
- Germany
- Prior art keywords
- module
- register
- circuit
- modules
- accumulator
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
- G06F15/8007—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors single instruction multiple data [SIMD] multiprocessors
- G06F15/8023—Two dimensional arrays, e.g. mesh, torus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/36—Applying a local operator, i.e. means to operate on image points situated in the vicinity of a given point; Non-linear local filtering operations, e.g. median filtering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/75—Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
Description
1
Die Erfindung IietrifTt einen programmgesteuerten Rlgitalrcglmer zur Durchführung von Reelicnaper«-
Honen, die sich tiuf Iiiforinatlutiun von iimlrixurtig angeordneten Teldwerleii erstrecken mit Eliiguiiusscltiilliingen zur Aufnnlinie der Fcldwerie, Speichereinrichtungen zur Spuivhorung der Feldwerto und
einer Steueranordnung, die prngruinnijibbliiigig die Opurut)t)iien des Kcdmiirs steuert.
Progrummgesicticrle Atizweck-DiultulreiiIiiicr wurden auf vielen Oebielun mit Vorteil uiinjUKutzt und
sind — XUinIndcst Im Prinzip — In der Luge, Jedes genügend definierte Hcthonprobtcm zu Klsen.
FUr eine Gruppe von Problemen, bei denen Rechenoperationen mit Feldern von gitter- oder nmtrlxtirlig
angeordneten FeIdwertendurchgefUhrt werden müssen, sind solche Rechner jedoch IiSluIlg schlecht geeignet,
weil die erforderlichen Rechenzeiten und Spcicherkapn/ililten sowie der Programniicruufwand zu hoch
werden. Das beruht dnrauf, duß die Rechner der vorstehend genannten Art Informationen ziffern- oder
clenienlweisc verarbeiten, also nur mit einer kleinen Zolil von Informiitionen gleichzeitig fertig werden
können. Das gilt auch für ebenfalls bekannte Digitalrechner, bei denen zum Zweck der FehlerprUfung
zwei Rechenwerke parallel betrieben werden, bei denen parallel arbeitende arithmetische Einheiten
gleichzeitig alle Zilfern einer Zabl verarbeiten oder bei den?« zwei Rechenwerke parallel in verschiedenen Zahlensystemen addieren und subtrahieren, wobei die Ausgangssignalc des einen Rechenwerks zur
Steuerung der richtigen Eingaben in das andere Rechenwerk verwendet werden. Ein solcher Parallelbetrieb reicht gerade nur aus, um die Üblichen
ziffernweisen Rechenoperationen mit etwas höherer Geschwindigkeit durchzuführen.
Bei Rechenoperationen mit matrixartig angeordneten Feldwcrten wird jedoch zweckmüßig eine große
Zahl von Informationen gleichzeitig verarbeitet. Solche Feldoperationen entsprechen arithmetischen Opc·
rationen mit Einzelwerten und beinhalten beispielsweise eine Verdoppelung aller Feldwerte, eine Verschiebung aller Feldwerte in bestimmten Richtungen,
Verknüpfungen zwischen benachbarten Feldwerten, arithmetische Operationen mit zwei oder mehreren
Feldern und anderes mehr.
Feldopcrationen dieser und ähnlicher Art sind beispielsweise zweckmäßig oder erforderlich bei der
maschinellen Erkennung von Zeichen oder Mustern, bei der Darstellung, Vergrößerung, Dehnung oder
Änderung von Zeichnungen, bei der Analyse von Potential-, Druck-, Temperatur- oder anderen Wertverteilungen oder auch bei (Schach-) SpisiproMemen.
Problemen dieser Art ist gemeinsam, daß die zu verarbeitenden Informationen in einer (bei Betrachtung
des dreidimensionalen Falles) räumlichen Beziehung zueinander stehen,
Es ist bereits eine Rechenmaschine zur Durchführung von Rechenvorschriften vorgeschlagen worden, die sich auf Felder von gitterartig angeordneten
Feldwerten erstrecken. Dabei wird unter einem Feld eine Wertemenge verstanden, die in einer im allgemeinen zweidimensionalen gitterartigen Anordnung
vorliegt (deutsche Patentschrift 1122 748). Bei diesem älteren Vorschlag ist ein umlaufender Speicher
(Speichertrommel) zur Speicherung der Feldwerte mehrere Felder mit Ablese- und Einschreibelemcn-Ien für die Fcldwerte in geordneter Folge vorgesehen. Die den Spuren des Speichers fest zugeord-
noten Ablese- und EinecbrolbclwTwnto sind zu don einzelne» Feldern zugeordneten Gruppen zusammengefaßt. Auswahl- und Steuorntiltcl ermöglichen das
Ablösen und Einschreiben sämtlicher Feldwerte in S geordneter Folge wUlirend eines Spelcherumluufes
und schalten diu Ablese- und HInschreibaJemeiite auf einsprechenden Spelcberspuren verschiedener Felder
ztiguordnete mit dem Rechenwerk der Rechenmaschine vcibundene Ubertragungsleliungeii.
1» Mit einer solchen Recheninaschine lassen sich Feldoperutioneit der oben angegebenen Art mit Opcratlunsbefehlen durchführen, die die Anwendung der
gleichen Einzelopcruliun auf sämtliche Fcldwerte eines Feldes bzw. auf sämtliche Paare einander zugeordneter Feldwcrte zweier Felder darstellen. Die
eine Feldoperatloii bildenden Einzeloperationen können hlntereliianderln einem gemeinsamen Rechenwerk, parallel in mehreren Rechenwerken gleichzeitig
oder auch teils hintereinander im gleichen Rechenau werk und teils gleichzeitig in parallelen Rechenwerken
durchgeführt werden.
Die Erfindung hat sich die Aufgabe gestellt, einen Rechner zu schaffen, der FeIdoperationcn mit matrixartig angeordneten FeIdwertcn praktisch gleichzeitig,
as sozusagen auf einen Schlag ausführen kann. Es sollen also keine sequentiellen Einzeloperationen erforderlich sein, um beispielsweise die Position oder Struktur
eines Feldes zu lindern.
Die Begriffe »Feld« und »Matrix« beziehen sich dabei auf H-dimensionale Anordnungen, wobei η eine
ganze Zahl großer eins bedeutet, sind also nicht auf zweidimensionale Anordnungen beschränkt. Es liegt
auch keine Beschränkung auf kartesische Koordinatensysteme vor.
Zur Lösung der Aufgabe geht die Erfindung von einem programmgesteuerten Digitalrechner der eingangs genannten Art aus und ist dadurch gekennzeichnet, daß jedem Feldwert eine Schaltungseinheit mit
wenigstens einem unter Steuerung der Steueranord-ηung entsprechend dem Feldwert einstellbaren Re
gister zugeordnet ist, daß die Schaltungeeinhelten zu einer der Feldmatrix hinsichtlich ihrer Konfiguration
entsprechenden /t-dlmensjonalen (n = ganze Zahl größer 1) Matrix verknüpft Bind, in der jede Schölts tungseinheit mit den direkt benachbarten Schaltungseinheiten verbunden ist, daß In jeder Schaltungseinheit logische Schaltungen vorgesehen sind und daß
die Steueranordnung Einrichtungen und Verbindungen mit den Schaltungseinheiten zur etwa gleichzeitigen Übertragung von Steuerbefehlen zu den Schal
tungseinhelten aufweist, um die Operationen in den jeweiligen Schaltungseinheiten zu steuern.
Damit ist ein programmgesteuerter Digitalrechner geschaffen worden, der sich von den bekannten
Rechnern prinzipiell unterscbetdet Die zu einer der Feldmatrix entsprechenden Matrix verknüpften Schaltungseinheiten lassen sich von der Steueranordnung
praktisch gleichzeitig so ansteuern, daß Feldoperationen der erläuterten Art mit einem Schlag ausgeSa führt werden. Da jedem Feldwert eine Schaltungseinheit mit wenigstens einem Register und logischen
Schaltungen zur programmabhängig gesteuerten Durchführung von Operationen in den Schaltungseinheiten zugeordnet ist, kann auch von einem »verteilten Rechner« gesprochen werden. Die zur Durch
führung von Feldopcrationen erforderlichen EinzeI-operaiionen bezüglich der Feldwerte finden praktisch
gleichzeitig in den Schaltungseinheiten statt.
3 * 4
^!^»"iftSSftSSLi . ■ . 8cheltunS « mit den an dia Modulo Mlleferten Ein-.
^x^SJS^Vt^J^ MWbtt* f« 8Bna»«ifin«lcn durchgeführt werden, jTder Modul le
■ft ^SSLfi! 8 ?ich aulWwutm Schaltung*, mil dun ihm böiiechborten Modulen verbunden und
ehihoiten vorgeserien, die so miteinander verbunden 5 kann daher uino Information unmittelbar von den
slndlC kwl». ι Uhwlto? »"""ho" "'«er bestimm- zuguhUrigon Modulen aufnehmen, Dies wird Im eln m^fzTSSSi
uJ wLden ihr «"mittelbar be- aelnen weiter unten beschrieben. , ,
nachbarten bcnaUungseiiihelten Ubertragen werden Bevor die Schaltung des Rochcntserötes Im olwclkann.
Eine übergeordnete Hauputeuerung program- nen belrnchiet wird, soll un Hand der Tig.2 em
njwr und koordiniert die Operationen der einzelnen i« einfaches lioispiul fllr »eine Arbelieweiae behandelt
Schutungaeinheten. Die Eingangssignal Wr Jede werden, In FIg,2 stellt feder der acht UlUckol
Schaltungseinheit können von der Haupteteuerung bis H die logische Modulanordnung dar und gibt den
oder von den benachbarten Schaltungseinhelten binaren Zustand eines der in jedem Modul cnthaltcn-Ieommeri,
Weiterhin kann ein Eingangssignal auch den Registers an, Jeder Modul enthalt nilmlich ein
von außen jeder Schaltungeeinheit direkt zugeführt 15 Hauptregister, das als Akkumuletorregister bezeichwerden.
Die Hauptsteuerung gibt Im allgemeinen Be- net wird, und mehrere zusätzliche Elnzclelemcntfehle
ηΙ<Λ*ω einzelne SchaUungseinheitcn, sondern spelcherregister a, b usw. Ari alle Module werden
an alle Schaltungecinheiten gemeinsam. Jede Schal- gleichzeitig Steuersignale von der Hauptsteuerschaltungseinheit
weist bei dem Ausführungsbcispiel der tungl2 in Fig. 1 angelegt, um in den einzelnen
Erlindung einen Speicher auf, der auch als Akku- ao Modulen die gewünschten logischen, Speicher- oder
mulatorregister bezeichnet wird, sowie eine gewisse Verschieboperationen zu bewirken.
Speicherkapazität und zugehörige logische Schaltun- An Hand der Fig. 2 soll eine Gruppe aus 25 Mögen. Die Speicher sind in allen Schaltungseinheiten dulen in einer 5 ♦S-Anordnung betrachtet werden,
gleich ausgebildet, so daß Steuerbefehle gleichzeitig Der Aniangszustand der Anordnung ist im Block A
an dasselbe Speicherelement in jeder Schaltungsein- as gezeichnet. Die Erregung eines zu jedem Modul ge-JieU
gegeben werden können. hörigen Speicherregisters ist durch das Vorhandcn-
Dlö Schaltungseinheiten können sowohl unmittel- ■ sein einer »1« in dem Raum dargestellt, der dem
bar als auch Über Verbindungsschaltungen miteinan- jeweiligen Modul entspricht. Das Nicht-Vuihandender
in Verbindung treten. Die Verbindungsschaltun- sein einer »1« zeigt an, daß das fragliche Register
gen welsen eine Speichermöglichkeit zur Aufzeich- 30 nicht erregt ist, sich also im Zustand »0« befindet,
nung von Informationen auf, die sich auf den Zustand Die an Hand der Fig. 2 dargestellten Arbeitstier
jeweils verbundenen Schaltungseinheiten bezie- schritte sind dazu bestimmt, linke untere Ecken des
hen. AuQerdem lassen sich die Verbindungsschaltun- ursprünglichen in der Modulanordnung geSpeichergen durch die Hauptsteuenmg loglech beeinflussen, ten Bildmusters festzustellen. Eine linke untere Ecke
so daß eine Informationsübertragung zwischen be- 33 wird als derjenige Teil eines Musters definiert, bei
nachbarten Schaltungseinhetten entsprechend dem in dem sich oberhalb eines erregten Moduls und rechts
den Verbindungsschaltungen aufgezeichneten Zu- von ihm ebenfalls ein erregter Modul befindet, withstand
der Schaltungseinheiten togisch gesteuert wer- rend unterhalb und links vom Modul nicht erregte
den kann. Module vorhanden sind. Bei dem ursprünglichen, in
Nachfolgend wird die Erflodung an Hand der 40 Block/1 der Fig. 2 dargestellten Bildmuster erZeichnungen
noch näher beschrieben. Dabei werden scheint nur eine solche Stelle, die Schaltungseinheiten auch als Module oder — we- Der Anfangsachritt des Programms besteh, darin,
gen der in Ihnen enthaltenen logiechen Schaltun- das Eingangsbildmuster in dem zu jedem Modul gegen — als logische Module bezeichnet. Es zeigt hörigen Speichenegister (a) zu speichern. Der zweite
Fig. I das Blockschaltbild eines Rechners gemäß 45 Schritt des Programms umfaßt ein Verschieben des
der Erfindung, ursprünglichen Bildmusten nach rechts. Danach
Fig. 2 ein Schema mit den Arbeitssebritten, die folgt die Speicherung des sich ergebenden Bildmusters
von dem Rechner bei der Identifizierung eines ein- im Register (b) jedes der Module (Block B der
fachen Bildmusters durchgeführt werden, Fig· 2). Belm Schritt 4 wird das Bildmuster A aus
Fig. 3 ein mehr ins einzelne gehendes Block- 30 dem Register (β) in das Modul-Akkumulatorregister
schaltbild eines erfindungsgemäßen Rechners, eingeschrieben. Das Btldiruster C ist daher eine
Fig. 4 das Schaltbild eines Moduls, der in dem Wiedergabe dee Bildmusters A. Der fünfte Schritt ist
Rechner nach Flg. 3 verwendet wird, eine Aufwartsverschlebung dieses Bildmusters analog
Fig. 5 schematisch die Verbindung benachbarter der Rechtsverschiebung beim Schritt 1. Durch den
Module mit Hille von Vetbindungsschaltungen, S3 Schritte (BlockE) wird das BitdmusterB des ReF
i g. 6 das Schaltbild einet der in F i g. 5 darge- . gisters (ft) jedes Moduls denwn Block D dargestellten
stellten Verbindungsschaltungen, Bildmuster überlagert. Durch die Schritte 7 und 8
Fig. 7, 8, 9 und 10 Rechenprogrammstufen, bei wird das in BlockE dargestellte Bildmuster invertiert
denen Verbindungsschaltungen benutzt werden. und im Register (ft) gespeichert. Beim Invertieren
Fig. 1 zeigt schematisch die Anordnung eines er- 60 werden »Einsen« durch» Nullen« und »Nullen« durch
findungsgemäßen Rechengerätes, daß eine Haupt- »Einsen« ersetzt. Jetzt befinden sich in den Re-
steuerschaltung 12 und eine aus logischen Modulen gistern (ft) nur derjenigen Module »Einsen«, bei
zusammengesetzte Anordnung 14 enthält, die auch denen die Module unterhalb und links vom ursprüng-
mit Modul-Netzwerk bezeichnet wird. An die ein- liehen Feld nicht erregt sind. Beim Schritt 9 wird das
zelnen Module sind binäre Eingangsinformations- «5 ursprüngliche Bildmuster der Modulregister (a) in die
quellen angeschlossen. Jeder Modul weist eine ge- Akkumulatorregister eingeschrieben. Der Schritt lO
wisse Speicherkapazität und einige Schaltungen zur nimmt eine logische, »punktweise« Multiplikation
Durchführung der grundsätzlichen logischen Opera- des Bildmusters in Block G mit dem Bildmuster F1
dem. um cine Hinheit nach links verschobenen Bild- gangssignale von der Modulanordnung 14 und von
muster des Blocks G und dem um cine Hinhch nach der Schaltung 20 an die Ausgangsschaltung 28 ange-
untert verschobenen Muster des Blocks (7 vor. Ks sei legt, die Ausgangseinrichtungcn, logische Schaltun-
wiederholt, daß das Bildmuster F vorher im Register gen und PuiTerschaliungen enthält, um Signale in
(ί>) jedes Moduls gespeichert war. Ferner sind, wie S einer gewünschten Form an die Ausgaiigstciiungen
nachfolgend erklärt wird, die um cine Hinticit senk- anzulegen.
recht und waagerecht verschobenen Bildmuster un- Die in der gemeinsamen Steuerung des in Fig. 3
mittelbar von den benachbarten Modulen erhältlich. dargestellten Rechengeräts enthaltenden Schaltungen
Die Operation kann daher in einem einzigen Schritt sowie deren Funktionen sind bei digitalen Rechcn-
durchgcfülirt werden, wie dies unter dem Block // m geräten bekannt.
angegeben ist. Die einzige untere linke Iicke des ur- Fig.4 zeigt die logische Schaltung eines Moduls,
sprüngiichen Bildmusters A ist nunmehr durch die der in der Anordnung 14 der F i g. 1 und 3 enthalten
einzige »1« im BlockJi identifiziert. ist. Jeder Modul enthält mehrere binäre Speicher-
Damit ist ein einfaches Bildmustererkcnnungs- zellen, nämlich das Akkumulatorregister 32 und die
problem gelöst worden. Mit größeren Modulanord- 15 zusätzlichen Register 34, 36 und 38, die zusätzlich
nungcn und komplizierten Programmen können für die Zwecke der Programmsteucrbefehle mit (a),
andere Bildmuster, Buchstaben oder Symbole leicht (b) und (r) bezeichnet sind. I 7Crncr sind die Akku-
fcstgestellt werden. mulatorregistcr 40 und 42 der logischen Module
■ Ks sollen jetzt die Schaltungen für die Ausrüstung oberhalb und links von dem im einzelnen in Fi g. 4
der gesamten Anlage und der einzelnen Module er- »o dareestelllen Modul gezeigt.
läutert werden. Die Modulanordnung 14 in Fig. 3 Das Akkumulatorregister32 und seine zugehörinimmt
Hingangsinformationssignalc von einer ent- gen logischen Schaltungen können logische und einsprechenden
Anordnung 16 aus Hingangsriclitungen fache arithmetische Operationen durchführen. Dazu
unter dem Einfluß einer logischen Qatterschaltung 17 gehören das Addieren oder Multiplizieren nach der
auf. Programmfolgcn von einer Pragrammeingangs- as Boolschcn Algebra. Eine Multiplikation in der Bool-■schaltung
18 werden einem zentralen Speicher 26 zu- sehen Algebra gleicht der normalen Multiplikation,
geführt. Jedes Programm ist in einer getrennten d.h. das Produkt einer »0« und einer »1« ist eine »0«,
Gruppe von aufeinanderfolgenden Adressenregistern und das Produkt zweier »Einsen« ist cine »I«. Daim
Speicher 26 gespeichert. Ein Zähicr in der Schal- gegen ist bei der BooIschen algebraischen Addition
tung24 ist anfangs auf die erste Adresse einer der 30 die Summe einer »1« und einer »0« oder zweier
Gruppen von Kcgistern eingestellt, die ein Problem »Einsen« gleich vi«. Um eine Summe »0« zu ercntliaUcn.
Wenn dieses Adrcsscnsignal zusammen halten, müssen beide Summanden »0« sein,
mil einem Leseimpuls vom Taktgeber 22 zum Spei- Der Modul nach F i g. 4 enthält eine Anzahl von eher 26 übertragen wird, werden Ausgangssignalc an UND- und ODER-Gattern zur Verarbeitung von cine Bcfehlsworlrcgistcr- und Instruktionsdecodicrcr- 35 binären Signalen. In Fig. 4 sind UND-Gatter durch schaltung 20 angelegt, um den ersten Programm- einen Halbkreis dargestellt, bei dem die Eingänge schritt festzulegen. Nach Erhalt eines Ausfilhrungs- am Durchmesser des Halbkreises aufhören. ODER-impulscs von der Taktgeber- und FolgesteucrschaI- Gatter sind ebenfalls durch einen Halbkreis dargetung22 werden durch die Schaltung 20 Netzwerk- stellt. Jedoch führen die Hingangsleiter durch den Steuersignale an die Modulanordnung 14 angelegt. 40 Durchmesser Iiindurch zum Umfang des Halbkreises. Der Modul führt dann den Befehl aus. Danach wird UND- und ODER-Gatter sowie auch Register sind ein Wciterschaltimpuls an die Speicheradressen- bekannt. Typische Schaltungen zur Durchführung sclinltung24 angelegt, und deren Zähicr geht zur dieser logischen Funktionen sind in einem Aufsatz nächstfolgenden Adresse über. Das entsprechende mit dem Titel »The Design of Switching Circuits* Register im Speicher26 enthält die nächste Pro- 45 von W. Keister, A.E.Ritchie und S-H.Washgrammschrittinformation,die zur Befehlswortregister- burn, D. Van Nostrand Company Inc., New York, scliiil lung 20 geliefert wird. NachAnlegen des nächst- 1951, und ^Principles of Transistor Circuits*, herfolgcndcn AusfUhningsimpuIses werden der Modul- ausgegeben von Richard F. Shea, John WUey and anordnung 14 geeignete Signale zugeführt. Sons Inc., New York, 1953, geschildert.
mil einem Leseimpuls vom Taktgeber 22 zum Spei- Der Modul nach F i g. 4 enthält eine Anzahl von eher 26 übertragen wird, werden Ausgangssignalc an UND- und ODER-Gattern zur Verarbeitung von cine Bcfehlsworlrcgistcr- und Instruktionsdecodicrcr- 35 binären Signalen. In Fig. 4 sind UND-Gatter durch schaltung 20 angelegt, um den ersten Programm- einen Halbkreis dargestellt, bei dem die Eingänge schritt festzulegen. Nach Erhalt eines Ausfilhrungs- am Durchmesser des Halbkreises aufhören. ODER-impulscs von der Taktgeber- und FolgesteucrschaI- Gatter sind ebenfalls durch einen Halbkreis dargetung22 werden durch die Schaltung 20 Netzwerk- stellt. Jedoch führen die Hingangsleiter durch den Steuersignale an die Modulanordnung 14 angelegt. 40 Durchmesser Iiindurch zum Umfang des Halbkreises. Der Modul führt dann den Befehl aus. Danach wird UND- und ODER-Gatter sowie auch Register sind ein Wciterschaltimpuls an die Speicheradressen- bekannt. Typische Schaltungen zur Durchführung sclinltung24 angelegt, und deren Zähicr geht zur dieser logischen Funktionen sind in einem Aufsatz nächstfolgenden Adresse über. Das entsprechende mit dem Titel »The Design of Switching Circuits* Register im Speicher26 enthält die nächste Pro- 45 von W. Keister, A.E.Ritchie und S-H.Washgrammschrittinformation,die zur Befehlswortregister- burn, D. Van Nostrand Company Inc., New York, scliiil lung 20 geliefert wird. NachAnlegen des nächst- 1951, und ^Principles of Transistor Circuits*, herfolgcndcn AusfUhningsimpuIses werden der Modul- ausgegeben von Richard F. Shea, John WUey and anordnung 14 geeignete Signale zugeführt. Sons Inc., New York, 1953, geschildert.
Am Ende eines gegebenen Programms geht das go Es sollen nun verschiedene Operationen, die durch
Rechengerät normalerweise zu einer weiteren Folge den in Fi g. 4 dargestellten Modul durchgeführt wer-
von Programmscliritten über. Im Fall eines söge- den können, betrachtet werden. Es sei bemerkt, daß
nannten unbedingten Sprungs zu einer angegebenen das Akkumulatorregister 32 das zentrale Element
neuen Adresse erscheint diese als letzter Schritt im des Moduls ist und daß die meisten Operationen
vorangegangenen Programm. Wenn das Sprung- 55 notwendigerweise die Übertragung von Informa-
signal und die Sprungadresse an die Schaltung 20 an- Honen zu oder von diesem Register umfassen. Ein
gelegt werden, wird die Adresse unmittelbar von der einfacher Befehl, der bei der Erklärung der Fi g. 2
Schaltung 20 Übertragen, um den ZHhler in der benutzt wurde, ist der Befehl »Inversion«. Die In-
SchaItung 24 auf die neue Adresse einzustellen. Zu- versionselngangslcirung 44 von der SteuerschaUung
sätzlich wird der Schaltung22 ein Folgcsteuerslgnal to 20 (Fig. 3) ist mit je einem Eingang der UND-
zugeführt, um den Weiterechaltimpuls wfihrend dieses Gatter46 und 48 (Fig.4) verbunden. Die» Ueoein
der Sprungoperation durchlauft der Zähler in der Registers 32 mit dem Eingang seines anderen Teils
Schaltung24 nacheinander seine Stufen, um die In- verbindet. Somit kann das Registers! als bistabiler
stniktinnen In der neuen Registergnippe Im Speicher A9 Multivibrator mit Einsiell- und Rückstell-Eingangen
26 abzulesen, die die Stufen des neuen Programms und -ausgängen »1« und »0« betrachtet werden,
bestimmen. Wenn der Einstelleingang erregt 1st, 1st auch der
Ky l
»0« erregt, wenn der Rückslellcingang erregt wurde. Unter der Annahme, daß das Register 32 sich im
Zustund »1« befindet, wird nach Auftreten eines Inversionsbcfehls auf der Leitung 44 ein Signal über
das UND-Gatter 48 und das ODER-GatterSO zum Rückstelleingang des Registers 32 übertragen. Wenn
das Register 32 sich dagegen im Zustand »0« befindet, wird in gleicher Weise ein Signal über das
UND-Gatter 46 und das ODER-Gatler 52 übertragen, um das Register 32 in den Zustand »1« ein- m
zustellen· Somit kehrt in jedem Fall das Anlegen eines InversionsbefcIiIs den Zustand des AkkumuIatorrcgislcrs 32 um.
Es soll nun die Arbeitsweise des Moduls in F i g. 4 betrachtet werden, wenn zwei Paare von gespeicher
ten Ziffern miteinander zu multiplizieren sind.' Zum
Beispiel soll die Multiplikation der im Register 34 gespeicherten Ziffer und der im Akkumulatorregister
32 gespeicherten betrachtet werden. Dazu werden die Mulliplizierleitung 54 und die Speicherleitung 56 «o
durch Impulse vom Befchlswortiegistcr 20 (F i g. 3) erregt. Dann kann ein Signal von der »0«-Seite des
Multivibrators34 (Speicherzellen) über die Gatter 58 und 60 zum UND-GalIer 62 laufen. Das Signal
auf der Leitung 54 öffnet das UND-Gatter 62, so
daß ein Signal über das ODER-GalterSO an den
Riiekstelleingang des Akkumulatorregisters 32 gehen kann. Wenn sich also das Register 34 im Zustand
»0« befand, wird das Akkumulatorrcgisler 32 in den Zustand »0« eingestellt. Wenn sich das Akkumula
lorregisicr 32 bereits im Zustand »0« befand, kann
sclbsl versländlich eine »1« im Register 34 seinen Zuslnnd nicht ändern. Dies kann nachgeprüft werden, indem der Slromkrcis von der Seite »1« des
Registers 34 iiher das UND-Gatter 64, das ODER-Galler 66 zum UND-Giitter 68 verfolgt wird. Bei
Niclitvorhandcnsein eines Impulses auf der Addicrcingangslcilimg 70 ist dcf Impuls durch das UND-Gatter 68 gesperrt und kann das ODER-Galler 52
sowie den Einstellcingang des Akkumulatorregisters
32 nicht erreichen.
Wenn jedoch der Inhall eines Registers, z, B. des Registers 34, zum Inhalt des Akkumulatorregisters
32 addiert werden soll, wird die Addicreingangs-Ieitung 70 erregt. Man erkennt dann, daß das Akku-
miilniofregister 32 in den Zustand »1« eingestellt wird, wenn eines der Register 32 oder 34 sich anfangs im Zustand»!« befand. Hs sei bemerkt, daß
das Nichtvorhandensein eines Mullipliziersignals auf der leitung 54 die Übertragung von Signalen vom
Ausgang >()« des Registers 34 zum Rückslellcingang des Registers 32 verhindert.
Wenn der Inhalt des Rcgislers 34 zum Akkumu· Ialorrcgistcr 32 verschoben oder Ubcrlragcn werden
soll, werden sowohl die MullipliiiicveiiigangsIcitung 54 als auch die Addiereingangsleitiing 70 zusammen
mit der Spcichcrciiigaiigslcilung 56 erregt. Unter diesen Umstünden werden diu AusgangssigiiaIc»!«
und »0« vom Kcgisier 34 unmittelbar zum Einstcll- und RUckstellcingang des Akkumiilalorreglsicrs 32
gegeben, so daß dieses den Zusi and des Speicherregistos 34 annimmt.
Signale von den SpeicUcrrcgistcrn 36 oder 38 können auf die gleiche Weise wie Signale vom Register
34 beiwlzi weiden. Wenn die Register (6) bzw. (<·) gcwilhli werden sullen, wird an Stelle der SpcichcrciiigimgslciUiim 56 die Speichereingniigsleilung 72
Ivw. 74 enepl. Auricrdcm werden die Mtiltipltzier-
494
oder Addiercingangsleitung 54 bzw.' 70 oder beide erregt, um die gewünschte Multiplikation, Addition
oder Übertragung durchzuführen.
Es sind ferner Schaltungen für die Multiplikation, Addition oder Verschiebung von Zahlen in einem
Speicherregisler und im Akkumulatorregisier vorgesehen, wobei das Ergebnis im Speiclierregister verbleibt. Diese Operationen werden durch die Erregung einer der beiden Leitungen 76 »Multiplizierenzurn-Spcichcr« und 78 »Addieren-zum-Speicher«
oder Iieidcr Leitungen durchgeführt. Zusätzlich muß die Leitung 56, 72 oder 74 des gewählten Registers
gewählt werden. Die UND-GatterBO und 82 erfüllen dann die gleichen Funktionen wie die UND-Gatter
62 und 68. In anderer IjIinsicht sind die Operationen im wesentlichen die gleichen wie die oben beschriebenen, bei denen das Ergebnis im Akkumulalorregistcr bleiben soll. Zusätzlich zu den Signalen in
den Speicherregistern 34, 36 und 38 sind außerdem Signale von den benachbarten Modulen verfügbar.
So kömieri z. B. die Signale vom Akkumulatorregister 42 durch Erregen der Leitung 84 erhalten
werden. Signale vom Akkumulatorregister 40 des oberen Moduls können durch Erregen der Leitung
86 an Stelle einer der Leitungen 56, 72 oder 74 erhallen werden.
Die von einer Zelle der aus Eingnngscinrichlungcn bestehenden Anordnung 16 (Fig. 3) kommende
Eingaiigsleilung 88 ist mit dem Einslellcingang des Akkuniulatorrcgistcrs 32 verbunden. Vor der Zuführung von Signalen auf der Eingangslcitung 88 wird
jedoch jedes Akkuniulalorregisler auf eine noch zu beschreibende Weise in den Zustand »0« versetzt.
In Fig. 4 sind die Eingangsleitung 90 und die Ausgangsleitung 92 mil den Verbindungsscluillungen
verbunden. Diese Schaltungen werden in den unmittelbar folgenden Abschnitten eingehender betrachte!. Die Leitungen 94 und 96 vom Ausgang des
AkkumiiIaIorrcgisters 32 sind mil den Vcrbindungsschallungen, den benachbarten Modulen, der Null-Anzeigeschaltung 98 sowie mit der Ausgangsschaltung 28 (Fig. 3) verbunden.
Nachdem nunmehr der Aufbau des Rechengerätes und die Schalluiig eines einzelnen Moduls beschrieben wurde, soll die Bcfelilsstruklur des Rechengerätes betrachtet werden. Wie oben nngegeben, enthalt die Hauptstcucrung einen Speicher mil beliebigem Zugang, einen Taktgeber und einen Decodierer. Dieser arbeitet auf Uhnliclic Weise wie bei
einem üblichen digitalen Rechengerät, in dem er Instruktionen im Speicher 26 nacheinander abliest,
diese decodierl und entsprechende Stcucrspniinungen über eine Anzahl von mit jedem der Module in der
Anoranung 14 (F ί g. 3) verbundenen Sammelleitungen abgibt. Ein logischer Addierer in Form eines
ODER-üalters98 (Fig. 3) erhält ein Eingangssignal vom Akkumulatorregistcr jedes Moduls der Anordnung 14. Er liefert eine Anzeige an die Hnuptstcucning, wenn sich sämtliche Akkuniulniorrcgisicr im
Zustand »0« befinden und ermöglicht hierdurch einen Befehl «Sprung hei Null«. Dieser Befehl entspricht den bedingten Sprungbefehlen in gewöhnlichen digitalen Rcciicngcrlitcn und wcisi die Hauptsicuerung an. mti ilen Befehl zu springen, der von
dem Hcfclil »Sprung bei Null« iiddivssieri wird, wenn sich keine »Iiinscn« in einem der Modul-Akkumulnlorrcgister befinde«. Der hediiigie Sprungbefehl
wird in einer Weise utisgofilhrt. die dem oben ge
ld? 624/11
I 302 494
schilderten unbedingten Sprungbefehl (Spr. x) ähnlich ist. Nach Durchführung eines der Sprungbefehle
"sperrt das Anlegen eines Folgesteuersignals an den Taktgeber 22 den nächsten Schaltimpuls, wobei der
Zähler in der Schaltung 24 auf die neue Adresse eingestellt wird. Dies steht im Gegensatz zur normalen
Durchführung aufeinanderfolgender Befehle in einer
10
unter
Folge.
dem Einfluß der Schaltung 22 stehenden
Tn der nachfolgenden Tabelle T sind die Befehle aufgeführt, die bei dem vorliegenden Rechengerät
verwendet werden können und bis hierher betrachtet wurden. Zusätzlich sind Abkürzungen für jeden Befehl zur Erleichterung der Bezeichnung aufgeführt.
Befehl
Sprung 2ur
Instruktion χ
Sprung bei Null zur
Instruktion χ
Inversion
Addieren
Abkürzung Spr. χ
Spr. b. ο. χ
Inv. Add.
Mul.
Multiplizieren im
Speicher
Spuichcrn
Schreiben
Nndi links verschieben (oder nach
rechts, need oben
oder unten)
Mill. Sp.
Sp,
Sehr.
SL (SR, SO, SU)
Bedeutung
Ausführen der Instruktion x.
Ausführen der Instruktion x, wenn keine »Einsen« im Feld vorhanden sind, sonst Fortsetzen der normalen Folge.
Invertieren des Inhaltes aller Akkumulatoren.
Zu dem Inhalt des Akkumuluturs den Inhalt der bezeichneten Speicherzellen und der benachbarten
Akkumulatoren logisch addieren. Die Speicherzelleninhalte bleiben ungeändert.
Den Inhalt des Akkumulators und der bezeichneten Speicherzellen und der benachbarten Akkumulatoren
logisch multiplizieren. Das Resultat kommt in den Akkumulator und die Spcicherzclleninlialtc bleiben
allein.
Zu dem Inhalt jeder bezeichneten Speicherzelle den Inhalt des Akkumulators logisch addieren. Den
Akkumulatorinhalt nicht ändern.
Den Inhalt jeder bezeichneten Speicherzelle mit dem Inhalt des Akkumulators multiplizieren, ohne den
Akkumulator zu verändern.
Den Akkumulatorinhalt in jeder bezeichneten Speicherzelle ohne Stören des Akkumulators speichern.
Den Inhalt der angegebenen Speicherzelle in den Akkumulator schreiben, ohne den Inhalt der Speicherzelle zu ändern.
Schreiben des Inhnlls jedes Akkumulators in den links (oder rechts oder oben oder unten) befindlichen
Akkumulator.
Um die Verwendung der oben angegebenen Befehlsstrtikttir zu zeigen, sollen nunmehr die zehn, aufeinanderfolgenden Schritte, die Im Zusammenhang
mit den acht Blöcken in F i g. 2 betrachtet wurden, mit den abgekürzten Programmbezeichnungen angegeben werden.
Programm
1.
3.
Bezeichnung Sp. a
SR
Sp, b.
Signal vom Akkumulatorregister im Register (β) speichern.
Das Signal in jedem Akkumulatorregister um einen Modul nach rechts verschieben.
4.
Sehr. a.
Signal vom Register (a) In das Akkumulatorregister einschreiben.
Ii 12
Programm | Bezeichnung | Ubcrscizung |
5. | SO | Nach oben schieben. |
η. | Atiu. o. | Addieren des Signals im Register (fi) zum Stgiuil im Akkumulatorregister. |
7. | Inv. | Invertieren. |
S. | Sp. fa. | Im Register (f>) speichern. |
9. | Sehr. a. | Einschreiben des Signals von (a) in das Akkuniula- torregister. |
10. | MuLb1O1R | Multiplizieren des Akkumulatorregistersignals mit dem Signal vom Register(A) und mit den Signalen in den Akkumulntorregistern der oben und rechts befindlichen Modulen. |
Im Zusammenhang mit dei Tabelle II sei bemerkt, daß sich jeder Befehl stillschweigend auf das Akkumiilaiorregister
bezieht. Bei einer Erläuterung weiterer Selialliingen des Rechengerätes werden auch
andere Befehle betrachtet.
Diu Fig. 5 zeigt einen Modul IOO1 die unmittelbar benachbarten Module 101 bis 11)8 sowie die Verbindungsschiiltungcn
111 bis 118, die den Modul 100 mit den Mtidulen IC1I bis IOfI verbinden. Die
Verbiiutiiiigsschaliungcn verbinden jeden Modul mit ilen hjnachhartcn Modulen, um die Ausführung von
Aiisdeliinmgs-IlcfelilsfolgiMi in ermöglichen. So kanu z. P. ein AusdehmingsbcfEhl. verwendet werden, um
alle !'linkte in einem vorbestimmten Iliklmuster anzugeben, die mit einem gewählten Punkt im Bildmuster
verbunden sind. Die Verwendung von Befehlen »Verbinden und Ausdehnen« wird im Zusammenhang
mit den Fig. 7 bis Hl an Hand von IUiisoieIeii eingehender betrachtet.
i<i g. 6 zeigt die IIinzelheiIcn einer vertikalen Vcrhiiiduiigsselialttitig,
wie sie bei 112 und 117 in Fig. 5 gezeigt ist. Die Verbindungssehalmng 112
enthält einen bistabilen Multivibrator 121), vier UND-Cialler 122, 124, 126, 128 und ein ODER-Giitler
130. Die zur Ausführung einer Ausdehnung*- Bcfelilsfolge notwendigen Schritte umfassen einen
anfiinglichcu Veibindutigsbefchl, der auf der Leitung 132 angegeben wird, und einen nachfolgenden Atixdehnungsbcfehl,
der auf der Leitung 134 abgegeben wird. Us sei bemerkt, dall die Ausdelmungsbefcblc
entweder einzeln oder gemeinsam an die vertikalen, horizontalen, positiven diagonalen und negativen
diagonalen Vcrbiudungssclialtungen angelegt werden können.
Das Anlegen eines Vcrbindungsbefehls an die VcrbiiidungsschBltnngcn erregt die Register derjenigen VerbindungsBchultungen, die zwischen Module geschaltet sind, die Iieide im Zustand
»1« befindliche Akkumulatorregister aufweisen. Wie man in F i g. fi sieht, werden durch das Anlegen eines Verbindungsbefchls un die Leitung 132 die UND-Gatter
122 und 124 erregt. Wenn sich beide Akkumulatorregister 136 und 138 in den Modulen 102 bzw.
100 Im Zustand »1« befinden, werden die übrigen beiden RingUnge des UND-Qotters 122 erregt und
das Register 120 wird in den Zustand »1« eingestellt. Sonst wird das UND-Oalter 124 erregt und das Re·
glster 120 in den Zustand »0« zurückgestellt.
Im weiteren Verlauf des Programms kann das Akkumulatorrcglstcr 138 des Moduls 100 in den Zu-Btnnd
»1« gebracht werden, während sich das Akkuinulatorrcgisttr 136 des Moduls 102 im Zustand »0«
befindet. Infolge des früheren Verbindiiiigsbcfehls
ao befindet sich das Register 120 der Verbiiidimgsschaltung 112 roch im Zustand»!«. Das Anlegen eines
Ausdehiiungssignals an die Leitung 134 stellt das Akkumulatorregister 136 in den Zustand»!«. Dies
geschieht durch das UND-Gatter 126, das Signale von den Ausgiingen »1« der Register 120 und 138
zum Binstelleinguiig des Akkumulatorregisters 136 bringt. Somit sind das Ausdeluiutigssignal mit einem
Eingang des UND-Gatters 126, der Ausgang»!« des AkkiiniiiIatorregisters 138 über das ODER-Ciaiter
ao 140 mit dein zweiten Eingang des UND-CiaKers 126 und der Ausgang »1« des Registers 120 mit dem
dritten Eingang des UND-Galters 126 verbunden. Das in» Ausgang ties UND-Gatleis 126 einstellende
Signal bringt über die ODER-Gatlcr 142 und 114 das Akkuniiilatorregistcr 136 im Modul 102 in den
Zustand »Ia. Um bei der Einslelliing des Registers 136 in den neuen Zustand auflreietulc Verzögern Ilgen yij vermeiden, ist das ODER-Ciatlcr 146 vorgesehen, das die Verbiiidiingssigiiale vom ODER-
Gatter 142 um this Register heriiniführl. Somil können die Verbindiingssigiiale über das ODER-Gatter
146 und die Leitungen 148, 150 usw. zu weiteren Modulen Torlsehreilcn.
Es sei hinsichtlich der Mndiilsdriillung (Fig.-1)
AS und der Verbindiiiigsschaltuiigen (Fig. 5 und fi) jedoch bemerkt, daß in jedem Fall nicht alle Verbindungen
dargestellt sind. So sind z.U. in Fig. 4 die Verbindutigsschaltungcn der Akkumulutorrcgislev 40,
42 und in Fig.6 die direkten Verbindungen /wise sehen den Modulen 100 und 102 zur Vereinfachung
nicht dargestellt. Ferner sei bemerkt, daß benachbarte Module miteinander sowohl direkt als auch
über Verbindungsschaltungen verbunden sind. Es soll jetzt ein Beispiel für die Benutzung der Vcrbin-
*s dungs- und Ausdehnungsbefehle erläutert werden.
GemliQ F i g. 7 ist anfangs das Bildmuster A in den Alikumulatorregistcrn einer Modulanordnung 14 gespeichert. Entsprechend Schritt 1 wird ein Verbindungsbefehl an die Modulanordnung angelegt. Beim
6a Schritt 2 wird das in den Registern (c) der Module gespeicherte Bildmuster in die Akkumulatonegistcr
der Module eingeschrieben. Wie der BlockB in Fig.7 zeigt, wird nur ein einziges Akkumulatorregister in den Zustand
»I« eingestellt. Der Schritt 3
6s verlangt eine Ausdehnung in horizontaler Richtung. Dae entstehende Bildmuster im Block C besteht aus
einer vollständigen Zeilo von »Einsen«, die sich von dem erregten Akkumulatorregister im Block B hori-
Claims (1)
1. Verb.
2. Sehr, c
3. Ausd.H
4. Ausd.V
Die Fig. 8, 9 und 10 zeigen schematised Vcrbindimgs- und Ansdclinungsbefehie anderer Art. So zeigen
die drei Blöcke der Fig. 8 eine Ausdehnung gleichzeitig in der horizontalen und in der positiven
diagonalen Richtung. Ferner zeigen die Blöcke in Fig.9 eine Ausdehnung gleichzeitig in der horizontalen
und der vertikalen RiclUung, und schließlich zeigen die drei Blöcke der Fig. 10 eine Ausdehnung
in der vertikalen und der negativen diagonalen RiclUung. Ulc abgekürzten Befehle füi
die in den Fig. 8, 9 und 10 dargestellten Schritte lauten:
Fig.8
1. Verb.
2. Schr.b.
3. Ausd.HDp.
Fig.9
1. Verb.
2. Schr.b.
3. Ausd.HV.
Fig. 10
1. Verb.
2. Schr.b.
3. Ausd.VDn.
Ein einfaches Verfahren zum Freimachen der Modulanordnung umfaßt die folgenden Befehle:
1. Schreiben (a)
2. Invertieren
3. Multiplizieren (a)
Nach der Inversion ist entweder der Multiplikator oder der Multiplikanl »0*. Daher muß auch das Produkt
der Inhalte jedes Registers (<j) und des AkkuiTiulatorrcgislers »0« sein. Auf Uhnliche Weise kann
jeder Modul der Modulanordnuvig durch die folgenden Befehle: I. Schreiben von (a), 2. Inversion
und 3. Addieren von (ti) in den Zustand»!« eingcslelll werden. In Anbeiraclil der Talsache, daß einer
der Suiiimniidcii ».U sein muli, muli auch die im AUkiimiiI ulorregister registrierte Summe eine »1«
sein.
Kin anderer Befehl, der bei dem vorliegenden Reeliengeriil benutzt werden kann, ist der Befehl
»Rundherum Verschieben«. Dabei kann das Modul-Akkunuilatorregislcr in der unteren linken Ecke der
AuortliHiiig (Fig. 3 auf einem seiner beiden möglichen Zustände eingeMelll werden. Die Information
in diesem linken unteren Modul wird dann durch eine Verschiebung nach rechts auf den benachbarten
Modul llbertragoo, und es wird ishi neues Wiillrcs
s Signal an den Unken unteren Modul angelegt, Der rechte untere Modul ist mit dem linken Modul der
zweiten Zeile von unten verhundein. Wenn nun aufeinanderfolgende Verschiebungen nach rechts vor
sich gehen, wobei neue Informationen ziffernweise
id eingeführt werden, wird eine biniire Information von den äußersten rechten Modulen zu den liulicrslcn
linken Modulen in der niiclisl Iiimcrcn Zeile verschoben, An Stelle des normalem Verfahrens, bei
dem Eingangssigiialc von der EmgangszcIlcnunordnung IA gelieren werden, kiinii diese zeilenweise
Zuführung von Informationen benutzt werden, um ein Bildmuster in die Modulaiiordnung einzugeben.
Vorstehend wurden die Schaltungen und die Bcfchlsstruktur des vorliegenden Itcclicngerlils gcschil-
ao den, und an Hand dci Fig, 2 wurden die Schrine zur Identifizierung eines besonderen Teils eines Bildmuslers
betrachtet. In ähnlicher Weise können andere komplizierlere Bildmuster in Anordnungen
identifiziert werden, die viel mehr als die in Fig.2
as dargestellten 25 Mtidulc enthalten. Als Iwsonderes Beispiel sei genannt, daß die Buclislitbcn des Alphabets
leicht identifiziert werden können. Dies geschieht, indem Besonderheiten ausgewählt werden,
welche etwa cine Halfle der Buchstaben des Alpliabcis aufweisen. Dann wird jede (iruppc weiter iinlcrteilt.
Gegebenenfalls kann jeder Buchstabe einzeln identifiziert werden. Ebenso kann das vorliegende
Rechengerät leicht so eingerichtet werden, daß es andere Probleme räumlicher oder verteilter Natur
löst.
Die Modulanordnung ist als zweidimensionale Rcclitcckanordnung beschrieben worden. Das Prinzip
der vorliegenden Errindung kann auch auf Modulanordnungen mit drei Dimensionen angewendet
4a werden oder allgemeiner auf Modulaiiorduungen, die entsprechend der mathematischen Konzeption des
n-dimcnsionalcn Raums geschalte! sind. Die Module können z. B. auch in einer hcxauotialen Anordnung
oder entsprechend den Polnr-Koordiiialeii an Stelle der karlesischcn Koordinaten angeordnet werden.
Ferner wurde gesagt, daß jeder Modul Register zur Speicherung einzelner InfonriHiioiiselcmcnte aufweist.
Es ist jedoch selbstverständlich, daß jedem Modul größere Speicherregister zugeordnet werden
können. Weiteihin kann die Iki jedem Modul vorhandene, verhältnismäßig einfache Logik durch kompliziertere
logische Schaltungen oder durch arithmetische Einheiten bekannter Art ersetzt werden.
Palenlaiispriiclie:
1. Programmgesteuerter Digitalrechner zur Durchführung von Rechenoperationen, die sieh
auf Informationen von matrix art ig angeordneten Feldwerteii erstrecken, mil Iiingaiigssehalliiiigen
zur Aufnahme der Feld werte. Spcichereinrichtungcn zur Speicherung der Feldwcrtc und einer
Steueranordnung, die progrnmmabhiingig die Operaiionen des Rechners steuert, dadurch
ge ken 11 zeich 11 el, daß jedem Feldwcrt eine „Schallungseinhcil (Fig.5: ModiilclOl bis 108)
mit wenigstens einem unter Steuerung der Steuer-
IS
/0
anordnung (Fig, 1:12) entsprechend dem Feldwert einstellbarer. Register (Fig. 4: 32) zugeordnet ist, dan die SchnItungsciaheilon .;u einer der
Feldraatrix (Fig, 3ϊ 16) hinsichtlieh ihrer Konfiguration entsprechenden n-dlmensionalen [n ß
= ganze Zahl größer I) Matrix (Flg, 3:14) verknüpft sind, in der jede Sclialtungseinheit mit
den direkt benachbarten Schaltungseinheitcn verbunden ist, daß in jeder Schaltungselnlieit
logische Schaltungen (Fig. 4; 46, 48, 62, 68, 80, 82 usw.) vorgesehen sind und daß die Steueranordnung Einrichtungen und Verbindungen mit
den Schaltungseinhciten zur etwa gleichzeitigen Übertragung von Steuerbefehlen zu den Schaltungscinheilen aufweist, um die Operation in den
jeweiligen Schaltungseinheiten zu steuern.
2. Programmgesteuerter Digitalrechner noch Anspruchlj dadurch gekennzeichnet, daß jede
Scliattungseinheit wenigstens ein Speicherelement (Fig. 4: 34, 36, 38) cnthUlt, da mit dem Register »
(32) über die logischen Schaltungen (58,64; 60, 66; 62, 68; 50, SI; 80, 82) verbunden ist, derart,
daß der Inhalt des Registers an das Speicherelement und umgekehrt übertragbar ist und der
Inhalt des Registers und des Speicherelementes «5 addiert oder multipliziert werden können.
3. Programmgesteuerter Digitalrechner nach Anspruch 1 oder 2, dadurch gekennzeichnet, daß
das Register (Fi g. 4: 32) jeder ScliaIturgscinheit über die logischen Schaltungen (60,66; 62,68)
mit den Registern (40, 42) der in der Matrix direkt benachbarten Schaltungseinheiten in Verbindung steht, derart, daß wahlweise deren Inhalt direkt unter Addition oder Multiplikation
übernehmbar ist.
4. Programmgesteuerter Digitalrechner nach Anspruch 1, 2 oder 3, gekennzeichnet durch
Schaltmittel (Fig. 3; 98), über die bei einem vc-fi» bßstimmten Zustand der Register (Flg.4: 3Z)
aller Sehaltungsolnhelten der Steueranordnung (F i g. 3; 20) ein Signal zufUhrbnr ist.
5. Programmgesteuerter Digitalrechner nach einem der vorhergehenden Ansprüche, dadurch
gekennzeichnet, daß zwischen benachbarten Schaltuiigseinheiten (Fig. 5:101 bis 108) ie eine
Verbindungsschaltung (Fig. 5; IUbis 118) liegt, und daß jede Verbindungeschaltung (Fig. 6:
112) ein Speicherrcgisler (120) und Schaltmittel (122,124) enthalt, die von der Steueranordnung
derart anstcuerbar sind, daß sie das Speicherregister bei einem vorbestimmten Zustand der
Register (136,138) in den durch die jeweilige Verbindungssclialtung (112) mit einander verbundenen Schaltungseinheiten (100, 102) einstellen.
6. Programmgesteuerter Digitalrechner nach Anspruchs, dadurch gekennzeichnet, daß die
Verbindungsschaltungen (Fig. 6:112) je logische Schaltungen (126, 128) enthalten, und daß die
logischen Schaltungen derjenigen Verbindungsschaltungen, welche zwischen jeder Schaltungseinheit und den in wenigstens einer gewählten
Richtung benachbarten Schaltungseinheiten liegen, von der Steueranordnung parallel derart ansteuerbar sind, daß der vorbestimmte Zustand
des Registers in jeder Schaltungseinheit über die Verbindungsschaltungen mit eingestelltem Speicherregister (120) zu der in der gewählten Richtung benachbarten Schaltungseinheit weitergegeben wird.
Hierzu 2 Blatt Zeichnungen iü9 024/12
{BtCHNUNQBN BLATT)
1
I/
Nummer:, Int. Cl.: Deutsche Kl·: Auslegetag:
1302 O ««f. 9/18 42 m3,9/18 22. Oktober 1970
FtG I
logische Module
FtG,
gangsmuster/h(c)
VObeHagern
Muster Ah liodul-AtkiMmblomegtskr
(r)
Invertieren HuI
(B
)Efnschreiben
oben
(M)MuliipliHeren
'Muster%"äber OipeichemHbi tlusler Λ in Modul· ^^M'SJA
Husfsrp Akkrnmlatorreofskr V&SUmitä
Feslelten von unteren Unken Ecken eines Nuders
ZBICHNUNO B N BLATTl
Nunwnen 1302 494 Int. Ο,: G06f,9/W DeuUoheKl.! 42m3,9/ie Auelegetag; 22. Oktober 1970
ZEICHNUNGEN BLATT 1
Nummer: Int. Cl.:
Deutsche KU; Auslegetag:
1 3(12 G «6 f. 9/18 42 m3, 9/18
22. Oktober 1970
FIG. 4
JL·^ Akkumuiaior- Regisicr
t\t\ des oixren Moclvb
Akkumuiohr
reqt-
τ~πι
sier des ühken
flodüis
AUew
Modulen qeutetusaute
NetzwetH- <
tteuersignale
Ifer- r/forf.c-^
7Ϊ7 33
3Mf
5^ I I---M
AiKumdatorreqisier
Iferbsschitgen b^adrih^nfhiuijtn,
V-Ameiger und
Ausgangsscholtungert
009543/220
IU
ZEiCHNUNGENBLATii t ( Nummer: 1332
Inta.: G 06 f, 9/18
Deutsche Kl.: 42 m3, 9/18
Auslegetag: 22. Oktober 1970
FIG. 5
-IOl
Oberer
Modul
tlt
t/2
1 I
(04
J.
Linker
Modul
Γ--Ί ^~ I * I
I I
Modul
Z/5,
I I
Li:/
/00
Modul
-/03
/05
Rechtet
Modul
/08
f/C7
Hfieht
"»
ausdehnen
ausdehnen
ZEICHNUNGEN BLATTl Miimmpr- 1302
Int-CI.: G 06 f. 9/18
Deutsche Kl.: 42 m3. 9/18
AuslegetBg: 22. Oktober 197(1
HG. 6
1 Akkumuiatorfegister
Mgang zu 7 )
Heiteren
Yer- —L_
ι
ausdehnet^
verbinden
AiSQQnq zu 7
yei&ren IferbindL
ungsschaitunyen
Akkumulatorregister
se
ZEICHNUNGEN BLATTl ΝΐΗΠΠΚΤ: I 302 4W
Int. C!.: ti
iH>
f. 9 IH
DeuUchuKI.: 42
n\X
·> 1»
Auslcpctap: 22. Oktober I >>70
FtC
8
(Oterbndungsbefehl
(Einschreiben des (S)Aasdehnen horizontal
in (b)gesp&cherien una posi tiv diagonal
Musters
FIG. 9
(0
Verbindungsbefehl
('Hinschreiben des (*)
Ausdehnen
horizontal
hfbjoespeicherten und vertikal
Musters
FtCJO
(Olfrbthdtinos'
befehl
r
>(b)gespeicherten und negativ
Musters dagonat
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US730856A US3106698A (en) | 1958-04-25 | 1958-04-25 | Parallel data processing apparatus |
Publications (1)
Publication Number | Publication Date |
---|---|
DE1302494B true DE1302494B (de) | 1970-10-22 |
Family
ID=24937069
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19591302494D Pending DE1302494B (de) | 1958-04-25 | 1959-04-20 |
Country Status (5)
Country | Link |
---|---|
US (1) | US3106698A (de) |
DE (1) | DE1302494B (de) |
FR (1) | FR1227517A (de) |
GB (1) | GB862257A (de) |
NL (2) | NL134125C (de) |
Families Citing this family (77)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3363234A (en) * | 1962-08-24 | 1968-01-09 | Sperry Rand Corp | Data processing system |
US3209328A (en) * | 1963-02-28 | 1965-09-28 | Ibm | Adaptive recognition system for recognizing similar patterns |
US3391390A (en) * | 1964-09-09 | 1968-07-02 | Bell Telephone Labor Inc | Information storage and processing system utilizing associative memory |
US3351918A (en) * | 1965-02-15 | 1967-11-07 | Rca Corp | Computer system employing specialized instruction execution units |
US3395393A (en) * | 1965-09-14 | 1968-07-30 | Bell Telephone Labor Inc | Information storage system |
US3593283A (en) * | 1966-09-19 | 1971-07-13 | Hitachi Ltd | Feature-extracting system for pattern-recognition apparatus and the like |
US3531775A (en) * | 1966-09-30 | 1970-09-29 | Fujitsu Ltd | Memory apparatus for rapid write-in and read-out of information |
US3473160A (en) * | 1966-10-10 | 1969-10-14 | Stanford Research Inst | Electronically controlled microelectronic cellular logic array |
US3573851A (en) * | 1968-07-11 | 1971-04-06 | Texas Instruments Inc | Memory buffer for vector streaming |
US3573852A (en) * | 1968-08-30 | 1971-04-06 | Texas Instruments Inc | Variable time slot assignment of virtual processors |
US3643223A (en) * | 1970-04-30 | 1972-02-15 | Honeywell Inf Systems | Bidirectional transmission data line connecting information processing equipment |
US3671942A (en) * | 1970-06-05 | 1972-06-20 | Bell Telephone Labor Inc | A calculator for a multiprocessor system |
US3670308A (en) * | 1970-12-24 | 1972-06-13 | Bell Telephone Labor Inc | Distributed logic memory cell for parallel cellular-logic processor |
US4060713A (en) * | 1971-06-23 | 1977-11-29 | The Perkin-Elmer Corporation | Analysis of images |
US4153944A (en) * | 1973-11-12 | 1979-05-08 | Bell Telephone Laboratories, Incorporated | Method and arrangement for buffering data |
US4020469A (en) * | 1975-04-09 | 1977-04-26 | Frank Manning | Programmable arrays |
GB1540996A (en) * | 1975-05-12 | 1979-02-21 | Plessey Co Ltd | Associative processors |
FR2361718A1 (fr) * | 1976-08-11 | 1978-03-10 | Adersa | Processeur parallele associatif a hierarchie de memoire, notamment pour l'acquisition et le traitement rapides des signaux |
US4167728A (en) * | 1976-11-15 | 1979-09-11 | Environmental Research Institute Of Michigan | Automatic image processor |
US4174514A (en) * | 1976-11-15 | 1979-11-13 | Environmental Research Institute Of Michigan | Parallel partitioned serial neighborhood processors |
US4322716A (en) * | 1976-11-15 | 1982-03-30 | Environmental Research Institute Of Michigan | Method and apparatus for pattern recognition and detection |
US4128872A (en) * | 1977-06-20 | 1978-12-05 | Motorola, Inc. | High speed data shifter array |
US4215401A (en) * | 1978-09-28 | 1980-07-29 | Environmental Research Institute Of Michigan | Cellular digital array processor |
US4247892A (en) * | 1978-10-12 | 1981-01-27 | Lawrence Patrick N | Arrays of machines such as computers |
US4224600A (en) * | 1979-03-26 | 1980-09-23 | The Perkin-Elmer Corporation | Arrays for parallel pattern recognition |
US4300122A (en) * | 1979-04-02 | 1981-11-10 | Sperry Corporation | Apparatus for processing digital data representative of a two-dimensional image |
US4464788A (en) * | 1979-09-10 | 1984-08-07 | Environmental Research Institute Of Michigan | Dynamic data correction generator for an image analyzer system |
US4301443A (en) * | 1979-09-10 | 1981-11-17 | Environmental Research Institute Of Michigan | Bit enable circuitry for an image analyzer system |
US4442543A (en) * | 1979-09-10 | 1984-04-10 | Environmental Research Institute | Bit enable circuitry for an image analyzer system |
US4395699A (en) * | 1979-09-10 | 1983-07-26 | Environmental Research Institute Of Michigan | Method and apparatus for pattern recognition and detection |
US4290049A (en) * | 1979-09-10 | 1981-09-15 | Environmental Research Institute Of Michigan | Dynamic data correction generator for an image analyzer system |
US4369430A (en) * | 1980-05-19 | 1983-01-18 | Environmental Research Institute Of Michigan | Image analyzer with cyclical neighborhood processing pipeline |
US4395700A (en) * | 1980-08-15 | 1983-07-26 | Environmental Research Institute Of Michigan | Image analyzer with variable line storage |
US4398176A (en) * | 1980-08-15 | 1983-08-09 | Environmental Research Institute Of Michigan | Image analyzer with common data/instruction bus |
US4395697A (en) * | 1980-08-15 | 1983-07-26 | Environmental Research Institute Of Michigan | Off-image detection circuit for an image analyzer |
US4395698A (en) * | 1980-08-15 | 1983-07-26 | Environmental Research Institute Of Michigan | Neighborhood transformation logic circuitry for an image analyzer system |
US4468727A (en) * | 1981-05-14 | 1984-08-28 | Honeywell Inc. | Integrated cellular array parallel processor |
US4546433A (en) * | 1981-07-04 | 1985-10-08 | Gec Avionics Limited | Arrangement for processing data in a two-dimensional array |
GB2111267B (en) * | 1981-12-08 | 1985-10-16 | Burroughs Corp | Constant-distance structure polycellular very large scale integrated circuit |
US4484349A (en) * | 1982-03-11 | 1984-11-20 | Environmental Research Institute Of Michigan | Parallel pipeline image processor |
US4745546A (en) * | 1982-06-25 | 1988-05-17 | Hughes Aircraft Company | Column shorted and full array shorted functional plane for use in a modular array processor and method for using same |
FR2539529B1 (fr) * | 1983-01-17 | 1987-08-21 | Dassault Electronique | Procede pour le traitement d'informations binaires et processeur pour la mise en oeuvre de ce procede |
DE3482532D1 (de) * | 1983-07-06 | 1990-07-19 | Secr Defence Brit | Prozessor mit zwangseinstellung. |
US4591980A (en) * | 1984-02-16 | 1986-05-27 | Xerox Corporation | Adaptive self-repairing processor array |
US4835680A (en) * | 1985-03-15 | 1989-05-30 | Xerox Corporation | Adaptive processor array capable of learning variable associations useful in recognizing classes of inputs |
US4739476A (en) * | 1985-08-01 | 1988-04-19 | General Electric Company | Local interconnection scheme for parallel processing architectures |
US4724543A (en) * | 1985-09-10 | 1988-02-09 | Beckman Research Institute, City Of Hope | Method and apparatus for automatic digital image analysis |
US5038386A (en) * | 1986-08-29 | 1991-08-06 | International Business Machines Corporation | Polymorphic mesh network image processing system |
US4910665A (en) * | 1986-09-02 | 1990-03-20 | General Electric Company | Distributed processing system including reconfigurable elements |
US5367208A (en) * | 1986-09-19 | 1994-11-22 | Actel Corporation | Reconfigurable programmable interconnect architecture |
US4949390A (en) * | 1987-04-16 | 1990-08-14 | Applied Vision Systems, Inc. | Interconnect verification using serial neighborhood processors |
US5159686A (en) * | 1988-02-29 | 1992-10-27 | Convex Computer Corporation | Multi-processor computer system having process-independent communication register addressing |
US5050070A (en) * | 1988-02-29 | 1991-09-17 | Convex Computer Corporation | Multi-processor computer system having self-allocating processors |
US5452231A (en) * | 1988-10-05 | 1995-09-19 | Quickturn Design Systems, Inc. | Hierarchically connected reconfigurable logic assembly |
US5179714A (en) * | 1988-10-07 | 1993-01-12 | Martin Marietta Corporation | Parallel bit serial data processor |
US5109353A (en) | 1988-12-02 | 1992-04-28 | Quickturn Systems, Incorporated | Apparatus for emulation of electronic hardware system |
US5329470A (en) * | 1988-12-02 | 1994-07-12 | Quickturn Systems, Inc. | Reconfigurable hardware emulation system |
US4864563A (en) * | 1989-01-09 | 1989-09-05 | E-Systems, Inc. | Method for establishing and maintaining a nodal network in a communication system |
US5253308A (en) * | 1989-06-21 | 1993-10-12 | Amber Engineering, Inc. | Massively parallel digital image data processor using pixel-mapped input/output and relative indexed addressing |
US5198705A (en) * | 1990-05-11 | 1993-03-30 | Actel Corporation | Logic module with configurable combinational and sequential blocks |
US5237626A (en) * | 1991-09-12 | 1993-08-17 | International Business Machines Corporation | Universal image processing module |
JPH07117498B2 (ja) * | 1991-12-11 | 1995-12-18 | インターナショナル・ビジネス・マシーンズ・コーポレイション | 検査システム |
US5274760A (en) * | 1991-12-24 | 1993-12-28 | International Business Machines Corporation | Extendable multiple image-buffer for graphics systems |
US5680583A (en) * | 1994-02-16 | 1997-10-21 | Arkos Design, Inc. | Method and apparatus for a trace buffer in an emulation system |
US5777489A (en) * | 1995-10-13 | 1998-07-07 | Mentor Graphics Corporation | Field programmable gate array with integrated debugging facilities |
US5841967A (en) * | 1996-10-17 | 1998-11-24 | Quickturn Design Systems, Inc. | Method and apparatus for design verification using emulation and simulation |
US5936426A (en) * | 1997-02-03 | 1999-08-10 | Actel Corporation | Logic function module for field programmable array |
US6009256A (en) * | 1997-05-02 | 1999-12-28 | Axis Systems, Inc. | Simulation/emulation system and method |
US6026230A (en) * | 1997-05-02 | 2000-02-15 | Axis Systems, Inc. | Memory simulation system and method |
US6421251B1 (en) | 1997-05-02 | 2002-07-16 | Axis Systems Inc | Array board interconnect system and method |
US6134516A (en) * | 1997-05-02 | 2000-10-17 | Axis Systems, Inc. | Simulation server system and method |
US6321366B1 (en) | 1997-05-02 | 2001-11-20 | Axis Systems, Inc. | Timing-insensitive glitch-free logic system and method |
US6389379B1 (en) | 1997-05-02 | 2002-05-14 | Axis Systems, Inc. | Converification system and method |
US5960191A (en) * | 1997-05-30 | 1999-09-28 | Quickturn Design Systems, Inc. | Emulation system with time-multiplexed interconnect |
US5970240A (en) * | 1997-06-25 | 1999-10-19 | Quickturn Design Systems, Inc. | Method and apparatus for configurable memory emulation |
US6604230B1 (en) | 1999-02-09 | 2003-08-05 | The Governing Counsel Of The University Of Toronto | Multi-logic device systems having partial crossbar and direct interconnection architectures |
CN112162489A (zh) * | 2020-10-10 | 2021-01-01 | 武汉科卫通智能系统有限公司 | 一种通道闸门禁与电梯联动控制系统 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US2666575A (en) * | 1949-10-26 | 1954-01-19 | Gen Electric | Calculating device |
GB718591A (en) * | 1949-10-31 | 1954-11-17 | Nat Res Dev | Improvements in electronic devices for the multiplication of binary-digital numbers |
US2834007A (en) * | 1954-10-07 | 1958-05-06 | Sperry Rand Corp | Shifting register or array |
US2840801A (en) * | 1955-06-29 | 1958-06-24 | Philco Corp | Magnetic core information storage systems |
US2805409A (en) * | 1955-09-14 | 1957-09-03 | Sperry Rand Corp | Magnetic core devices |
US2968791A (en) * | 1956-04-17 | 1961-01-17 | Ibm | Buffer storage system |
-
0
- NL NL238555D patent/NL238555A/xx unknown
- NL NL134125D patent/NL134125C/xx active
-
1958
- 1958-04-25 US US730856A patent/US3106698A/en not_active Expired - Lifetime
-
1959
- 1959-04-20 DE DE19591302494D patent/DE1302494B/de active Pending
- 1959-04-21 FR FR792692A patent/FR1227517A/fr not_active Expired
- 1959-04-22 GB GB13661/59A patent/GB862257A/en not_active Expired
Also Published As
Publication number | Publication date |
---|---|
GB862257A (en) | 1961-03-08 |
NL238555A (de) | |
FR1227517A (fr) | 1960-08-22 |
NL134125C (de) | |
US3106698A (en) | 1963-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE1302494B (de) | ||
DE60215835T2 (de) | Reduzierung von komponenten in einer montgomery multiplikations-recheneinheit | |
DE2724125C2 (de) | ||
DE2714805C2 (de) | ||
DE1178623C2 (de) | Programmgesteuerte datenverarbeitende Maschine | |
DE1915818C3 (de) | Steuerschaltung für ein elektronisches Datenverarbeitungssystem | |
DE2322674C3 (de) | Mikroprogramm-Steuereinrichtung | |
DE19530100C2 (de) | Integrierte Dram-Schaltung mit Reihenkopierschaltung und Verfahren | |
DE1901343C3 (de) | Datenverarbeitungsanlage zur Ausführung von Mateirenrechnungen | |
DE2230103A1 (de) | Adressiereinrichtung fuer einen speicher | |
DE3632639C2 (de) | Einrichtung zum Hochgeschwindigkeitsverarbeiten von Bilddaten durch Faltung | |
DE2524229A1 (de) | Datenverarbeitungssystem mit pyramidenfoermiger hierarchie des steuerflusses | |
DE2331589A1 (de) | Datenverarbeitungsanordnung | |
DE2640157A1 (de) | Verfahren und anordnung zum redundanzvermindernden codieren von bildern | |
DE2311220A1 (de) | Digital-informations-verarbeitungsvorrichtung zur zeichenerkennung | |
DE2627788A1 (de) | Dynamischer digitalspeicher mit ununterbrochen umlaufendem datenfluss | |
DE2423265C3 (de) | Optimierende Rechenmaschine | |
DE1524111C3 (de) | Elektronische Datenverarbeitungsanlage | |
DE1935845A1 (de) | Datenverarbeitungsanlage mit mehreren Operatorfamilien-Steuereinheiten | |
DE3933172A1 (de) | Akkumulator fuer komplexe zahlen | |
DE2235883B2 (de) | Datenverarbeitungseinrichtung | |
DE1296429B (de) | Datenbearbeitungsanlage | |
DE1916377C3 (de) | ||
DE1296427B (de) | Datenbearbeitungssystem | |
DE2331874A1 (de) | Vorrichtung zum rechnerischen verarbeiten von kostenrechnungsaufzeichnungen |