DE2612621A1 - Programmgesteuerte einrichtung - Google Patents
Programmgesteuerte einrichtungInfo
- Publication number
- DE2612621A1 DE2612621A1 DE19762612621 DE2612621A DE2612621A1 DE 2612621 A1 DE2612621 A1 DE 2612621A1 DE 19762612621 DE19762612621 DE 19762612621 DE 2612621 A DE2612621 A DE 2612621A DE 2612621 A1 DE2612621 A1 DE 2612621A1
- Authority
- DE
- Germany
- Prior art keywords
- output
- program
- input
- address
- commands
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/045—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using logic state machines, consisting only of a memory or a programmable logic device containing the logic for the controlled machine and in which the state of its outputs is dependent on the state of its inputs or part of its own output states, e.g. binary decision controllers, finite state controllers
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Description
Patentanwalt | NAOHeEREiCHT
Dipl.-Phys. Leo Thul
Stuttgart
R.Boute - 1
INTERNATIONAL STANDARD ELECTRIC CORPORATION, NEW YORK
Die Erfindung betrifft eine programmgesteuerte Einrichtung mit einem Speicher, in dem ein aus Befehlen bestehendes
Programm gespeichert ist, mit einer Steuereinheit, die eine Eingangsschaltung mit mehreren Eingängen aufweist,
die mehrere Eingangsvariable empfangen, die ferner eine
Steuerschaltung aufweist, die in der Lage ist, einen Befehl bezüglich der anstehenden Eingangsvariablen auszuführen
und einen entsprechenden Wert für mehrere Ausgangsvariable zu ermitteln, und die eine Ausgangsschaltung mit
mehreren Ausgängen aufweist, an denen die Ausgangsvariablen abgegriffen werden können.
Eine solche programmgesteuerte Einrichtung, deren Steuereinheit in der Lage ist, mit Hilfe der Programmbefehle aufgrund
der anstehenden binären Eingangsvariablen eine Anzahl logischer Operationen auszuführen und daraus zu der Gruppe
19.3.1976
Vl/Mr
Vl/Mr
609850/0614
NACHGEREiQHTf
anstehender Eingangsvariabler zugeordnete binäre Ausgangsvariable
zu ermitteln, ist allgemein als programmierbare Steuerung bekannt, bei der eine Folge von Gruppen von Eingangsvariablen
zu einer entsprechenden Folge von Gruppen von Ausgangsvariablen führt. Die binären Zustände der Eingangsvariablen
entsprechen z.B. dem Schaltzustand von Kontakten und die binären Werte der Ausgangsvariablen entsprechen
z.B. dem Erregungszustand von Magnetspulen3 Motoranlassern,
usw.
Bei einer solchen programmierbaren Steuerung umfaßt das Befehlsprogramm üblicherweise eine Anzahl Befehle, die aufeinanderfolgend
die Ausführung von UND-, ODER- und NICHT-Funktionen steuert, die für die Berechnung eines Boolfsehen
Ausdrucks notwendig sind, wobei das Programm unmittelbar vom Bool'schen Ausdruck abgeleitet wird. Da jede Ausgangsvariable
eine Funktion aller Ein- und Ausgangsvariablen sein kann, hängt die Anzahl der auszuführenden Programmbefehle
zur Ermittlung des endgültigen Wertes einer Ausgangsvariablen
von der Anzahl der primären Implikanten der Ein- und Ausgangsvariablen
ab und von der einfachsten Form des Bool'schen Ausdrucks unter Berücksichtigung dieser primären Implikanten.
Zum Beispiel möge ein Ausdruck mit fünf\ Variablen (einschließlich
beteiligter Ausgangsvariabler) auf sechs primäre Implikanten mit je drei bis vier Verknüpfungsgroßen zurückzuführen
sein und insgesamt die Durchführung von 27 Programmbefehlen oder Schritten erfordern. In einem solchen Fall ist
gewöhnlich mehr als ein Befehl pro Eingangsvariable nötig,
wenn diese Variable mehr als einmal in obigem Bool'schen Ausdruck auftaitt. Darüberhinaus werden die Programmbefehle
unabhängig von den binären Werten der Variablen ausgeführt und in vielen Fällen steht der endgültige Wert einer Ausgangsvariablen
bereits nach der Ausführung einer Anzahl Be-
609850/06U
- 3 - [naohqereiohtI
fehle fest3 die kleiner ist als die Gesamtzahl der pro Ausgangsvariable
auszuführenden Programmbefehle.
Nähere Einzelheiten über die vorstehend benutzten Bool'sehen
Begriffe kann man auf den Seiten 61 bis 109 des Buches "Logical Design of Digital Computers" von Montgomery
Phister, Jr. veröffentlicht von John Wiley & Sons, Inc.,
New York, 1959, finden.
Die programmgesteuerte Einrichtung nach der Erfindung ist dadurch gekennzeichnet, daß das Programm eine Gruppe Befehle
einfacher Art enthält, die jeder eine Adresse einer einzelnen, zu lesenden Eingangsvariablen kennzeichnen, und daß die
Steuerschaltung so ausgebildet ist, daß sie bei diesen einfachen Befehlen vom Wert der gelesenen einzelnen Eingangsvariablen
die Adresse des als nächstes auszuführenden Befehls unter zumindest zwei Befehlen ableitet, der beim
einen Wert der Eingangsvariablen unmittelbar aus dem Ausgabebefehl
für die entsprechende Ausgangsvariable besteht.
Die programmgesteuerte Einrichtung nach der Erfindung gestattet
es, einzelne Ausgangsvariable unter Beachtung der Werte einzelner Eingangsvariabler mit weniger Programmschritten
zu ermitteln und verkürzt damit die Gesamtzahl der auszuführenden Befehle und die Laufdauer eines Programms.
Eine ergänzende Ausgestaltung der programmgesteuerten Einrichtung nach der Erfindung ist dadurch gekennzeichnet, daß
das Programm eine zweite Gruppe einfacher Befehle enthält, die jeder die Adresse einer auszugebenden Ausgangsvariablen,
deren Wert und eine Adresse des nächstfolgenden Befehls umfassen. Mit dieser Ausgestaltung lassen sich weitere Programmschritte
einsparen. Wenn im ungünstigsten Fall zur Ermittlung einer Ausgangsvariablen alle Eingangsvariablen geprüft werden
müssen, dann ist die Anzahl der Programmschritte gleich n+1,
609850/06U -/-
also gleich der Anzahl der Eingangsvariablen plus einem
Schritt für die Ausgabe der Ausgangsvariablen. Wenn auch
'%, noch m r-ückgekoppelte Ausgangsvariable zu berücksichtigen
sind, dann ist also die Anzahl der Programmsehritte gleich
m+n+1. In vielen Fällen ist die Anzahl der Schritte pro Ausgangsvariable ohne Rückkopplung kleiner als n+1. In
Abhängigkeit vom binären Wert der geprüften Eingangsvariablen und von der die Ausgangsvariable mit den η Eingangsvariablen
verbundenden Verknüpfungsfunktion kann man eine Ausgangsvariable
am Ausgang der Steuerung mit wesentlich weniger als η Programmschritten erhalten.
Die Bestimmung eines nachfolgenden Programmbefehls in Abhängigkeit
vom binären Wert einer Eingangsvariablen ist für sich als "BinärentScheidungsprogramm" aus "The Bell
System Technical Journal", Juli 1959, S.985 bis 999, bekannt.
Sie wird dort aber zur Verwirklichung von verdrahteten Schaltkreisen beschrieben, wobei keine Zeitprobleme auftreten.
Deshalb ist es dort unbeachtlich, wenn grundsätzlich alle möglichen Werte der Eingangsvariablen eine gleichartige
Berücksichtigung im nachfolgenden Programm finden und die Änderung einer einzigen Eingangsvariablen einen kompletten
Programmdurchlauf erfordert, weil es keine mit einem einfachen Befehl steuerbare Einrichtung gibt, die ausschließlich
die Berücksichtigung einer Eingangsvariablen zur Bestimmung einer einzelnen Ausgangsvariablen festlegt. Nach
der Erfindung lassen sich dagegen derartige programmierbare Steuereinrichtung auch dann noch einsetzen, wenn die Ablaufdauer
der Programme aus zeitlich einander folgenden Befehlen eine kritische Grenze setzt.
V/eitere Ausgestaltungen der programmgesteuerten Einrichtung nach der Erfindung sind in den übrigen Unteransprüchen gekenn-
BO98BO-/D6 U
- 5 -R.Boute - 1
zeichnet und werden nachfolgend im Zusammenhang mit der Erläuterung
eines Ausführungsbeispiels anhand der Zeichnungen beschrieben.
Pig.l zeigt ein Blockschaltbild einer programmgesteuerten
Einrichtung nach der Erfindung.
Pig.2 zeigt ein Flußdiagramm zur Erläuterung der Punktion
der Einrichtung nach Pig.l.
Die programmierbare. Steuerung einer programmgesteuerten Einrichtung nach Pig.l umfaßt einen Speicher PR und eine
Steuereinheit CU. Der Speicher PR, ist ein programmierbarer Nurlese-Speicher mit einem Adresseneingang I3 Adressenausgängen
3 j 1J und 5 und einem Datenausgang 2.
Die Steuereinheit CU umfaßt eine Steuerschaltung mit logischen Schaltkreisen, eine Eingangsschaltung (oder "Datenwähler")
DS mit einem Adresseneingang al, mit Eingärigen Il bis 111 und mit einem Ausgang DSO, und eine Ausgangsschaltung mit
einem Decoder DC und Ausgangsregistern OLl und 0L2, deren letzteres Ausgänge 01 bis O1J hat. Die Eingangsschaltung DS
verbindet einen Eingang Ii (i=l bis 11) mit ihrem Ausgang DSO, wenn die Adresse Ii ihrem Adresseneingang al zugeführt
wird. Auf diese Art und Weise erscheint am Ausgang DSO der binäre Wert einer Eingangsvariablen Xi (i=l bis 9), die dem
entsprechenden Eingang Ii (i=l bis 9) zugeführt wird, oder der binäre Wert einer Ausgangsvariablen Ui(i=3j Ό, die über
eine Rückkopplungsleitung Pl oder F3 vom Ausgang Oi (i=l,3) zum Eingang 110 bzw. Ill zurückgekoppelt wird.
Der Decoder DC hat einen Einschalteingang E3, einen Adresseneingang
a2 und mit den Schreibeingängen des Ausgangsregisters
09850/06 U j -/-
- 6 R.Boute - 1
OLl verbundene Ausgänge Wl bis W5. Die Decoderausgänge und die Ausgansregistereingänge haben hier nur ein gemeinsames
Bezugszeichen. Der Decoder DC erregt einen Ausgang Wi (i=l bis 5)j wenn die entsprechende Adresse seinem Adresseneingang
a2 zugeführt wird und wenn der Einschalteingang E3 erregt ist.
Das Ausgangsregister OLl hat einen mit einem Anschluß t des Adressenausgangs 5 des Speichers PR verbundenen Dateneingang
a3, einen Taktimpulseingang cpl und Ausgänge Vl bis V5. Der
Decoder DC und die Ausgangsregister OLl und 0L2 sind in der aus der-Zeichnung ersichtlichen Weise hintereinandergeschaltet.
Beim Erscheinen eines Taktimpulses am Taktimpulseingang cpl speist das Ausgangsregister OLl den am Dateneingang a3 anstehenden
binären Wert dem Ausgang Vi ein, wenn ein entsprechender Schreibeingang Wi erregt ist. Das Ausgangsregister 0L2
verbindet die Ausgänge Vi(i=l bis 4) des Ausgangsregisters OLl mit den entsprechenden Ausgängen 0i(i=l bis 4), wenn der
Ausgang V5 eingeschaltet ist. Selbstverständlxch ist die Anzahl der Eingänge und Ausgänge nicht auf die. Werte 11 bzw. 4
beschränkt. Im allgemeinen wird es sich hier um höhere Vielfache von 2 handeln.
Wie oben erwähnt wird der binäre Wert der Eingangsvariablen Xl
bis X9 auf die Eingänge Il bis 19 gegeben. Diese binären Werte entsprechen z.B. dem Schaltzustand von Kontakten. Die
binären Werte der Ausgangsvariablen Ul bis U4 werden an den
Ausgängen 01 bis 04 abgegriffen. Diese Werte entsprechen
beispielsweise dem Erregungszustand der Magnetspulen einiger Relais, Motoranlasser, usw.
Die logischen Schaltungen umfassen Pufferspeicher Bl, B2 und B3j die beiden letzten haben Einschalteingänge E2 bzw. El,
609850/06U
COPY
ein Adressenregister AL, das einen Adresseneingang 6 und einen Taktimpulseingang cp2 hat, einen Taktimpulsgenerator
CP, eine ODER-Schaltung OR und einen Inverter IN. Die Pufferspeicher Bl, B2 und B3 werden als Anpassung zwischen dem
Speicher PR und den Ein- und Ausgangsschaltungen und.den logischen Schaltkreisen der Steuereinheit CU benutzt. Der
Pufferspeicher Bl umfaßt Speicherstufen B/0 und Bzi, die die aus dem Speicher aufgelesenen binären Werte B/0=0 oder-1 bzw.
die Adresse eines Eingangs Ii oder eines Ausgangs Oi übertragen können. Die. Pufferspeicher B2 und.B? können die Adressen
von Programmbefehlen auf die die Ausgänge der Pufferspeicher
B2 und B3 mit dem Eingang 6 des Adressenregisters AL verbindenden Adressensammelleitungen übertragen, was noch erläutert
wird.
Der Ausgang der Speicherstufe B/0 ist einerseits mit dem Einschalteingang E3 des Decoders DC und andererseits mit
einem der Eingänge der ODER-Schaltung 0R0 verbunden, deren
anderer Eingang mit dem Ausgang DSO der Eingangsschaltung
DS verbunden ist. Der Ausgang der ODER-Schaltung OR ist einerseits mit dem Einschalteingang El des Pufferspeichers B3 und
andererseits über den Inverter IN mit dem Einschalteingang E2 des Pufferspeichers B2 verbunden. Der Ausgang der Speicherstufe
Bzi ist über Adressensammelleitungen mit den Adresseneingängen al und a2 der Eingangsschaltung DS bzw. des Decoders
DC verbunden.
Das Befehlsprogramm zur Berechnung der Werte der Ausgangsvariablen
01 bis 04 aus einer Gruppe von Werten der Eingangsvariablen
Xi (die eine Anzahl rückgekoppelter Ausgangsvariable einschließen), ist ein BinärentScheidungsprogramm, dessen Aufbau
in dem oben angegebene Artikel des BSTJ im Einzelnen erläutert ist. Ein solchee BinärentScheidungsprogramm besteht
60B8B0/06U ~'~
R.Boute - 1
aus einer Folge von Befehlen einheitlichen Typs, bei denen die Adresse jedes folgenden Befehls vom binären Wert einer
gelesenen Variablen abhängt. Als Ergebnis obiger aufeinanderfolgender Prüfung jeder Eingangsvariablen erhält man den
binären Wert jeder Ausgangsvariablen. Das vorstehend erläuterte Prinzip wird noch verständlicher anhand des nachstehenden
Beispiels, bei dem neun Eingangsvariable Xl bis
X9 den Eingängen Il bis 19 zugeführt werden, und bei dem
zwei Ausgänge 01 und 03 (aus einer Gesamtheit von vier Ausgängen
01 bis 0*1) auf die Eingänge 110 bzw. Ill zurückgekoppelt
sind.
Es wird vorausgesetzt, daß die Eingangsvariablen Xl bis X9,
die Ausgänge Vl bis V*i und die Ausgangsvariablen 01 bis Ok
durch folgende Bool'sche Ausdrücke verknüpft sind:
Vl = 01 = X1X3 + XlOl
V2 = 02 =,X2X4
V3 = 03 = X6(X4X5 + X7X8 + X8X9)
Vi = 04 = X4O3,
wobei man die Rückkopplung der Ausgangsvariablen 01 und 03 an ihrem Auftreten in den Ausdrücken für Vl bzw. V4 erkennt.
Die Punktion der Einrichtung wird anhand des Flußdiagramms
nach Fig.2 erläutert, das einen Entscheidungsbaum beinhaltet.
Darin wird der Binärwert jeder Eingangsvariablen geprüft und
der nächste Befehl hängt jeweils vom Binärwert der geprüften Variablen ab. Zunächst wird der Binärwert der Eingangsvariablen
Xl geprüft (dies wird nachfolgend kurz als Wert von Xl bezeichnet).
Wenn Xl = 0, dann wird Vl = 0. Wenn Xl = 1, dann muß X3 geprüft werden. Wenn X3 = 0, dann muß Öl = Vl geprüft
Werden. Wenn X3 = 1, dann Vl = 1, usw. Nachdem der Wert der
609860/0614-
R.Boute - 1
Ausgangsvariablen Vl feststeht, wird X4 in der vorstehend
erläuterten Weise geprüft. Am Ende des Programmdurchlaufs
sind auf diese Art die Werte aller Ausgangsvariablen Vl bis V5 ermittelt. Die,Variable V5 ist eine fiktive Variable,
deren Bedeutung später noch erläutert wird.
Das entsprechende Befehlsprogramm, das zur Ermittlung der Ausgangsvariablen Vl bis V5 dient, ist in der Tabelle 1
aufgelistet. Dieses Programm umfaßt eine logische Folge von Verzweigungs- (B) und Ausgabebefehlen (0). Ein Verzweigungsbefehl
wird solange benutzt, wie es erforderlich ist, eine Eingangsvariable zu prüfen, um den Wert einer
Ausgangsvariablen zu erhalten. Ein Ausgabebefehl wird benutzt,
wenn der Binärwert einer Ausgangsvariablen eine logische Folge der bereits ermittelten Werte ist.
Jeder Verzweigungsbefehl B umfaßt einen Operationsteil B/0=0,
die Adresse eines Eingangs und die Adressen zweier Befehle, von denen einer als nächster Befehl gewählt wird. Die vierte
und fünfte Spalte der Tabelle 1 enthalten die Adressen der nächsten Befehle für den Fall, daß die geprüfte Variable den
Wert 0 bzw. 1 hat.
Es ist nicht unbedingt erforderlich, in jedem Verzweigungsbefehl zwei Adressen für nachfolgende Befehle anzugeben. Man
könnte nämlich in jedem Verzweigungsbefehl nur eine Adresse für einen Folgebefehl angeben, der ausgeführt wird, wenn die
geprüfte Variable einen bestimmten Wert, z.B. den Wert 1, hat. Die andere Adresse könnte man z.B. durch einen 1-Addierer
bilden, der die Adresse des vorausgegangenen Befehls um 1 er hält, wenn die geprüfte Variable den anderen Wert, z.B. den
Wert 0, hat. Solche Verzweigungsbefehle mit nur einer Ziel-
609850/0614
R.Boute - 1
Adresse des Befehls |
Verzweigungs oder Ausgangs befehl B/0 |
geprüfte
Variable |
Adresse des Folgebefehls beim Wert 0 |
Adresse des FoI gebefehl s beim Wert 1 |
Wert der
Ausgangs variablen |
Al | B | X1 | A2 | A3 | |
A2 | 0 | V1 | - | A6 | 0 |
A3 | B | X3 | AA | A5 | |
AA | B | V1 | A2 | A5 | |
A5 | 0 | VI | - | A6 | 1 |
A6 | B | XA | A7 | A8 | |
A7 | 0 | V2 | - | A9 | 0 |
A8 | B | X2 | AIO | ||
A9 | 0 | VA | ■ - | AIA | 0 |
AIO | 0 | V2 | - | A12 | 0 |
All | 0 | V2 | - | Al 2 , | 1 |
Al 2 | B | V3 | A9 | A13 | |
Al 3 | 0 | VA | - | AiA | 1 |
AiA | B | X6 | Al 5 | A16 | |
A15 | 0 | V3 | - | A22 | 0 |
A16 | B | XA | A17 | A18 | |
A17 | B | X8 | A15 | A19 | |
A18 | B | X5 | A17 | A20 | |
A19 | B | X7 | A21 | A20 | |
A20 | 0 | V3 | - | A22 | 1 |
A21 | B | X9 | A15 | A20 | |
A22 | 0 | V5 | - | Al | 1 |
609860/0614
adresse haben den Vorteil geringeren Speicherbedarfs pro Befehl,
andererseits wird das Befehlaprogramm weniger flexibel bei Programmänderungen, die beim Hinzufügen neuer Eingangs- ^
und Ausgangsvariabler erforderlich sind.
Jeder Ausgabebefehl umfaßt einen Operationsteil B/O=l, die
Adresse eines Ausgangs, den Binärwert der an diesem Ausgang abzugebenden Ausgangsvariablen und die Adresse eines nachfolgenden
Befehls.
Der Befehl mit der· Adresse 1 ist ein Verzweigungsbefehl B
und die Variable Xl wird geprüft. Wenn Xl=O, dann ist als
nächstes der Befehl mit der Adresse A2 auszuführen. Dieser Befehl ist ein Ausgabebefehl. Der Wert dieser Ausgangsvariablen
ist gemäß der fünften Spalte 0 und die nächste Befehlsadresse ist a6.. Wenn Xl=I, dann ist als nächstes der Befehl mit Adresse
A3 auszuführen. Dies ist ein Verzweigungsbefehl. Wenn X3=0 oder 1, dann ist die nächste Befehlsadresse A4 bzw. A5. Der
Befehl mit der Adresse A5 ist ein Ausgabebefehl, da jetzt der
Wert 1 der Ausgangsvariablen Vl feststeht, und A6 ist die Adresse des nächsten Befehls. Dies wird fortgesetzt, bis alle
Werte der Ausgangsvariablen ermittelt wurden, dann wird der Programmdurchlauf wiederholt.
Aus vorstehendem folgt, daß die minimale Anzahl der Programmschritte
gleich der Anzahl der Eingangs- und Ausgangsvariablen
ist. Ein ergänzender Befehl mit der Adresse A22 ist erforderlich, wenn ein zweites Ausgangsregister 0L2 benutzt wird,
was später noch erläutert wird.
Der Punktiorisablauf in der programmierbaren Steuerung nach
Pig.l läßt sich entsprechend folgendermaßen beschreiben: es wird vorausgesetzt, daß der Speicher PR zunächst mit der
609850/06U
- 12 R.Boute - 1
Adresse Al aufgerufen wird. Der entsprechende Befehl ist ein Verzweigungsbefehl mit B/0=0, der die Eingangsvariable Xl
am Eingang Il prüft. Später wird noch erläutert, wie es dazu kommt, daß zunächst die Speicheradresse Al aufgerufen wird.
Die Speicherstufen B/0 und Bzi übertragen den Wert B/0=0 und die Adresse des Eingangs II.
Wenn Xl=O, dann ist der Ausgang DSO der Eingangsschaltung
DS auf dem Wert 0, weil der Wert von Xl, wie oben erläutert, vom Eingang Il unmittelbar auf den Ausgang DSO gegeben wird. Da
auch B/0=0, ist der Ausgang des Pufferspeichers B2 eingeschaltet, während der Ausgang des Pufferspeichers B3 gesperrt
ist. Der Pufferspeicher B2 überträgt die Befehlsadressen der vierten Spalte der Tabelle 1 (Wert der geprüften Variablen
ist 0), also jetzt die Adresse A2S die am Adressenregistereingang
6 erscheint. Bei der Anstiegsflanke eines auftretenden Taktimpulses speist das Adressenregister AL die Adresse A2
in den Speichereingang 1 ein. Als Folge davon wird der Befehl mit der Adresse A2 gelesen. Dieser Befehl ist ein Ausgabebefehl
mit B/0=l und liefert die'Ausgangsvariable Vl an den Ausgang 01. Die Speicherstufen B/0 und Bzi übertragen dabei den
Binärwert B/0=l und die Adresse der Ausgangsvariablen Vl. Der Wert 1 dieser Ausgangsvariablen Vl erscheint am Ausgang t
des Adressenausgangs 5 des Speichers und wird zum Dateneingang a3 des Ausgangsregisters OLl gegeben. Da jetzt B/0=ls
werden der Pufferspeicher B3 und der Decoder DC eingeschaltet. Daraufhin erregt der Decoder DC seinen Ausgang Wl und am Eingang
6 des Adressenregisters AL erscheint die Adresse A6, da der Pufferspeicher B3 die Adressen der fünften Spalte der Tabelle
1 überträgt (wenn der Wert der geprüften Variablen 1 ist). Beim nächsten Taktimpuls liefert das Ausgangsregister OLl an
seinem Ausgang Vl den Wert 0, und der Speicher PR wird mit der Adresse A6 des nächsten Befehls aufgerufen,der ein die
Eingangsvariable X4 prüfender Verzweigungsbefehl ist.
60 9850/06 U -/-
R.Boute - 1
Danach wird der Befehl mit der Adresse A7 oderA8 ausgeführt,
je nach dem, ob X 4 den Wert 0 oder 1 hat.
Wenn anfangs Xl=I, dann erscheint am Ausgang DSO eine 1 und
nur der Pufferspeieher B3 wird eingeschaltet, dadurch erscheint
die Adresse A3 am Eingang 6 des Adressenregisters AL. Beim Erscheinen des oben schon erwähnten ersten Taktimpulses
würde dann der Speicher mit dieser Adresse A3 aufgerufen. Kurze Zeit dananch überträgt der Pufferspeicher
folgende Information:
Pufferspeicher | Information | Bedeutung |
B./0 | 0 | Verzweigungsbefehl |
Bzi | Adresse 13 | Prüfung von X3 |
B2 | A4 | )(hängt vom Wert |
B3 | A5 | J [von X3 ab |
Der Wert der Eingangsvariablen X3 erscheint also am Ausgang DSO der Eingangsschaltung DS und darm wird in Abhängigkeit vom
Wert 0 oder 1 der Variablen X3 der Befehl mit der Adresse A4 bzw. A5 ausgeführt. Alle Befehle des Programms werden in der
vorstehend erläuterten Weise nacheinander ausgeführt, bis die Werte aller Ausgangsvariablen am Ausgang des Ausgangsregisters
OLl anstehen. Mit dem letzten Ausgabebefehl A22 wird der'Ausgang
V5 des Ausgangsregisters OLl eingeschaltet. Beim nächsten Taktimpuls wird es dem Adressenregister AL ermöglicht, die
Adresse Al in den Speicher PR einzugeben und die Werte der Ausgangsvariablen
Vl bis V4 werden auf die entsprechenden Ausgänge 01 bis 04 des Ausgangsregisters 0L2 übertragen, das seinerseits
durch die Ausgangsvariable V5 des Ausgangsregisters OLl eingeschaltet wurde.
609850/0614
R.Boute - 1
Die Verwendung eines zweiten Ausgangsregisters 0L2 ist nur dann erforderlich, wenn Zeitprobleme auftreten, wenn nämlich
frühere Werte von Ausgangsvariablen zur Berechnung anderer Variablen benötigt werden und wenn diese Ausgangsvariablen
innerhalb des gleichen Programmdurchlaufs bereits ihren Wert geändert haben. Dies wäre z.B. der Fall, wenn man bei obigen
Verknüpfungen ergänzt X9=V1.
Man benötigt auch noch eine Anzahl Hilfsbefehle, die es z,B.
ermöglichen, selbständig auf einen Befehl mit der Adresse Al
zurückzuführen. Sonst kann es nämlich vorkommen, daß die Pufferspeicher B2 und B3 beim Start der Steuereinrichtung
Adressen speichern, die in dem vorgesehenen Programm nicht auftreten, so daß die Steuereinrichtung ohne die Hilfsbefehle
nicht zu einer der 22 Adressen Al bis A22 finden würde.
Das vorstehend erläuterte Prinzip läßt sich auch bei mehrwertigen Variablen, z.B. bei Variablen mit drei möglichen
Werten, anwenden. In einem solchen Fall würden die Befehle drei mögliche Folgeadressen kennzeichnen, und die Auswahl
hinge von dem ternären Wert der geprüften Variablen ab.
7 Patentansprüche
2 Blatt Zeichnungen, 2 Figuren
609850/0614
Claims (7)
- Pat entansprücheIJ Programmgesteuerte Einrichtung mit einem Speicher, in dem ein aus Befehlen bestehendes Programm gespeichert ist, mit einer Steuereinheit, die eine Eingangsschaltung mit-mehreren Eingängen aufweist, die mehrere Eingangsvariable empfangen, die ferner eine SteuerschaTfcung aufweist, die in der Lage ist, einen Befehl bezüglich der anstehenden Eingangsvariablen auszuführen und einen entsprechenden Wert für mehrere Ausgangsvariable zu ermitteln, und die eine Ausgangsschaltung mit mehreren Ausgängen aufweist, an denen die Ausgangsvariablen abgegriffen werden können, dadurqh gekennzeichnet,daß das Programm eine Gruppe Befehle einfacher Art enthält, die jeder eine Adresse (II) einer einzelnen, zu lesenden Eingangsvariablen (Xl) kennzeichnen, und daß die Steuerschaltung (B/0, OR, IN, B2, B3) so ausgebildet ist, daß sie bei diesen einfachen Befehlen vom Wert (0 bzw. 1) der gelesenen einzelnen Eingangsvariablen (Xl) die Adresse des als nachtes auszuführenden Befehls unter zumindest zwei Befehlen ableitet, der beim einen Wert (z.B.l) der Eingangsvariablen unmittelbar aus dem Ausgabebefehl für die entsprechende Ausgangsvariable besteht.
- 2. Programmgesteuerte Einrichtung nach Anspruch 1, dadurch gekennzeichnet,daß das Programm eine zweite Gruppe einfacher Befehle enthält, die jeder die Adresse einer auszugebenden Ausgangs-, variablen, deren Wert und eine Adresse des nächstfolgenden Befehls umfassen.
- 3. Programmgesteuerte Einrichtung nach Anspruch 1, dadurch gekennzeichnet, daß die Auswahl des nächstfolgenden Befehls unter den beiden möglichen folgenden Befehlen vom binären Wert der Eingangsvariablen abhängt, und daß jeder Befehl dieser Gruppe, die Adresse mindestens einen der beiden möglichen folgenden Befehle enthält.809850/06U ■ ./. "ORIGINAL ^SPECTED- 16 R.Boute - 1 ·
- 4. Programmgesteuerte Einrichtung nach Anspruch 3, dadurch gekennzeichnet, daß die Befehle dieser Gruppe die Adressen beider möglichen, folgenden Befehle enthalten.
- 5. Programmgesteuerte Einrichtung nach Anspruch 2, dadurch gekennzeichnet, daß die Befehle der ersten und zweiten Gruppe von Befehlen einen Operationsteil enthalten, der bei der ersten und zweiten Gruppe komplementäre Werte hat.
- 6. Programmgesteuerte Einrichtung nach Anspruch 3, dadurch gekennzeichnet, daß alle Befehle ausschließlich aus Verzweigungsbefehleri und Ausgabebefehlen bestehen, daß ein Taktgenerator vorgesehen ist, durch den jeweils nach Ausführung eines Befehls mit dem nächsten Taktimpuls die ausgewählte bzw. angezeigte nächste Adresse einem Leseeingang des Speichers (PR) zugeführt wird, und daß für die Befehlsausgabe zwei Pufferspeicher (B2, B3) für die möglichen Polgeadressen vorgesehen sind, von denen der eine direkt, der andere über einen Inverter (IN) durch das Ergebnis der Prüfung der einzelnen Eingangsvariablen gesteuert wird.
- 7. Programmgesteuerte Einrichtung nach Anspruch I3 dadurch gekennzeichnet, daß die Ausgangsschaltung ein erstes (OLl) und ein nachfolgendes zweites Ausgangsregister (0L2) enthält, daß das erste Ausgangsregister den binären Wert der bereits ermittelten Ausgangsvariablen während eines Programmzyklusses an seinen Ausgängen anzeigt und das zweite Ausgangsregister am Ende jedes Programmzyklusses einschaltet, wobei dann das zweite Ausgangsregister an seinen Ausgängen alle Ausgangs variablen anzeigt.609860/06U
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
NL7503820A NL7503820A (nl) | 1975-04-01 | 1975-04-01 | Programma-bestuurde inrichting. |
Publications (1)
Publication Number | Publication Date |
---|---|
DE2612621A1 true DE2612621A1 (de) | 1976-12-09 |
Family
ID=19823473
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19762612621 Withdrawn DE2612621A1 (de) | 1975-04-01 | 1976-03-25 | Programmgesteuerte einrichtung |
Country Status (10)
Country | Link |
---|---|
US (1) | US4393469A (de) |
JP (1) | JPS51135438A (de) |
AU (1) | AU1246676A (de) |
BE (1) | BE840275A (de) |
BR (1) | BR7601969A (de) |
DE (1) | DE2612621A1 (de) |
ES (1) | ES446547A1 (de) |
GB (1) | GB1500465A (de) |
IT (1) | IT1059251B (de) |
NL (1) | NL7503820A (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0006472A1 (de) * | 1978-06-30 | 1980-01-09 | International Business Machines Corporation | Mikrosteuereinrichtung zur Steuerung der bidirektionalen Datenübertragung zwischen einer zentralen Steuereinheit und mehreren externen Einheiten |
EP0006488A1 (de) * | 1978-06-24 | 1980-01-09 | Frankl & Kirchner GmbH. & Co. KG Fabrik für Elektromotoren und elektrische Apparate | Verfahren zum Ausführen eines Adressen-Sprungbefehles bei einer speicherprogrammierten Folgesteuerung für Arbeitsmaschinen, insbesondere für Industrienähmaschinen, und Folgesteuerungs-Schaltanordnung zum Ausüben des Verfahrens |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02140804A (ja) * | 1988-11-21 | 1990-05-30 | Maikomu Kk | プログラマブルロジック回路 |
US5274775A (en) * | 1991-01-22 | 1993-12-28 | The United States Of America As Represented By The Secretary Of The Navy | Process control apparatus for executing program instructions |
US7140003B2 (en) * | 2003-02-14 | 2006-11-21 | International Business Machines Corporation | Method and system for specifying sets of instructions for selection by an instruction generator |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3651484A (en) * | 1969-08-12 | 1972-03-21 | Bailey Meter Co | Multiple process control system |
JPS5338392B2 (de) * | 1971-11-30 | 1978-10-14 | ||
US3761882A (en) * | 1971-12-01 | 1973-09-25 | Struthers Dunn | Process control computer |
US3753243A (en) * | 1972-04-20 | 1973-08-14 | Digital Equipment Corp | Programmable machine controller |
GB1426748A (en) * | 1973-06-05 | 1976-03-03 | Burroughs Corp | Small micro-programme data processing system employing multi- syllable micro instructions |
US3900835A (en) * | 1973-09-24 | 1975-08-19 | Digital Equipment Corp | Branching circuit for microprogram controlled central processor unit |
US4101967A (en) * | 1976-05-19 | 1978-07-18 | Tendy Electronics Co. | Single bit logic microprocessor |
-
1975
- 1975-04-01 NL NL7503820A patent/NL7503820A/xx not_active Application Discontinuation
-
1976
- 1976-03-25 DE DE19762612621 patent/DE2612621A1/de not_active Withdrawn
- 1976-03-30 GB GB12718/76A patent/GB1500465A/en not_active Expired
- 1976-03-30 AU AU12466/76A patent/AU1246676A/en not_active Expired
- 1976-03-30 IT IT21701/76A patent/IT1059251B/it active
- 1976-03-31 ES ES446547A patent/ES446547A1/es not_active Expired
- 1976-03-31 BR BR7601969A patent/BR7601969A/pt unknown
- 1976-04-01 JP JP51035223A patent/JPS51135438A/ja active Pending
- 1976-04-01 BE BE2054922A patent/BE840275A/xx not_active IP Right Cessation
-
1978
- 1978-10-02 US US05/947,386 patent/US4393469A/en not_active Expired - Lifetime
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0006488A1 (de) * | 1978-06-24 | 1980-01-09 | Frankl & Kirchner GmbH. & Co. KG Fabrik für Elektromotoren und elektrische Apparate | Verfahren zum Ausführen eines Adressen-Sprungbefehles bei einer speicherprogrammierten Folgesteuerung für Arbeitsmaschinen, insbesondere für Industrienähmaschinen, und Folgesteuerungs-Schaltanordnung zum Ausüben des Verfahrens |
EP0006472A1 (de) * | 1978-06-30 | 1980-01-09 | International Business Machines Corporation | Mikrosteuereinrichtung zur Steuerung der bidirektionalen Datenübertragung zwischen einer zentralen Steuereinheit und mehreren externen Einheiten |
Also Published As
Publication number | Publication date |
---|---|
NL7503820A (nl) | 1976-10-05 |
JPS51135438A (en) | 1976-11-24 |
GB1500465A (en) | 1978-02-08 |
AU1246676A (en) | 1977-10-06 |
IT1059251B (it) | 1982-05-31 |
BE840275A (nl) | 1976-10-01 |
US4393469A (en) | 1983-07-12 |
ES446547A1 (es) | 1977-06-16 |
BR7601969A (pt) | 1976-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2219918A1 (de) | Programmierbares Steuergerät | |
DE1524239A1 (de) | Verfahren zur Lokalisierung eines Fehlers in einer Anlage mit mindestens zwei parallel arbeitenden Rechengeraeten | |
DE2652706A1 (de) | Numerisch gesteuerte produktionsmaschinen | |
DE2036729A1 (de) | Digital Datenverarbeiter | |
DE2741886A1 (de) | Datenuebertragungseinrichtung | |
DE1249926B (de) | Einrichtung zum Umadressieren fehlerhafter Speicherstellen eines beliebig zuganglichen Hauptspeichers in einer Datenverarbeitungsanlage | |
DE1474062A1 (de) | Datenverarbeitungsanlage | |
DE1269394B (de) | Schaltungsanordnung zur Bestimmung des Vorrangsverhaeltnisses zwischen mehreren Eingangsgroessen fuer programmgesteuerte Datenverarbeitungssysteme | |
DE4426001A1 (de) | Verfahren zur Überlastvermeidung bei einem Systemanlauf eines Mehrrechnersystems und Mehrrechnersystem dafür | |
DE1524111B2 (de) | Elektronische Datenverarbeitungsanlage | |
DE2739525C2 (de) | Rechner | |
DE2612621A1 (de) | Programmgesteuerte einrichtung | |
DE4026581C2 (de) | ||
DE2759120A1 (de) | Prozessor fuer datenverarbeitungssysteme | |
DE2517525B2 (de) | Verfahren und Signalisierungsidentifizierer zum Erkennen von Fernmelde-Signalisierungskriterien | |
DE1234054B (de) | Byte-Umsetzer | |
DE1499286B2 (de) | Datenbearbeitungsanlage | |
DE1806172A1 (de) | Prioritaetsschaltung | |
DE2234982A1 (de) | Expanderschaltung fuer ein programmierbares steuergeraet | |
DE19645057C2 (de) | Vorrichtung zur Selektion von Adressenwörtern mittels Demultiplex-Decodierung | |
DE1296427B (de) | Datenbearbeitungssystem | |
DE2639057A1 (de) | Programmierbare folgesteuereinrichtung | |
DE3123379C2 (de) | ||
DE2037506C3 (de) | Programmierbare Datenverarbeitungsanlage mit einer steuerbaren Hauptsteuerung | |
DE1549582B1 (de) | Anordnung zur bestimmung der niedrigstwertigen bit position |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8139 | Disposal/non-payment of the annual fee |