DE3785222T2 - Programmsteuerung. - Google Patents

Programmsteuerung.

Info

Publication number
DE3785222T2
DE3785222T2 DE87100808T DE3785222T DE3785222T2 DE 3785222 T2 DE3785222 T2 DE 3785222T2 DE 87100808 T DE87100808 T DE 87100808T DE 3785222 T DE3785222 T DE 3785222T DE 3785222 T2 DE3785222 T2 DE 3785222T2
Authority
DE
Germany
Prior art keywords
data
bit
word
processing
bits
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE87100808T
Other languages
English (en)
Other versions
DE3785222D1 (de
Inventor
Akihisa Ueda
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Publication of DE3785222D1 publication Critical patent/DE3785222D1/de
Application granted granted Critical
Publication of DE3785222T2 publication Critical patent/DE3785222T2/de
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)
  • Memory System (AREA)

Description

  • Wenn sowohl Bitdaten als auch Wortdaten in einem konventionellen programmierbaren Steuerungssystem (im folgenden PCS genannt) verarbeitet werden, wurden sie nach bisheriger Praxis getrennt voneinander bearbeitet oder Wortdaten wurden als zusammengesetzt aus Bitdaten verarbeitet, und zwar unabhängig davon, ob es sich um ein kleines oder ein großes PCS handelt. Folglich wurden bisher Programmierung und Vereinfachung der Schaltungskonfiguration nicht weiter beachtet.
  • Beim konventionellen Programmieren ist es allgemein üblich, Felder für auszugebende Bitdaten und auszugebende Wortdaten getrennt voneinander zu definieren. Bei den konventionellen Methoden ergibt sich jedoch folgendes Problem. Da die oben beschriebenen Felder im voraus bestimmt werden, ist eine Änderung der Größenverhältnisse von Bitdaten und Wortdaten unmöglich, welche sich in Nutzerprogrammen ergeben kann. Mit anderen Worten, es ist unmöglich, mit den oben beschriebenen konventionellen Methoden die unterschiedlichen Ansprüche der Nutzer zu befriedigen. Außerdem ist zu berücksichtigen, daß bei Änderung des Programmes nach Auslieferung des PCS und bei außerordentlich großer Menge der Bitdaten oder Wortdaten, so daß die Daten nicht im vorbestimmten Bereich abgespeichert werden können, sich große Nachteile ergeben.
  • Beispiele des Standes der Technik bezüglich der oben beschriebenen Art umfassen solche, die in JP-A-57111/1981 und JP-A-23110/1982 offengelegt worden sind.
  • Als Stand der Technik wird in EP-A-0 156 316 ein Speicher für ein Bildwiedergabegerät offenbart. Bei diesem können entweder ganze Worte oder einzelne Bits adressiert werden. Abhängig von dieser Unterscheidung werden verschiedene Teile einer 16-Bit-Adresse für die Adressierung verwendet. Bei der Wortadressierung können Schreiben und Lesen gesteuert werden, während bei der Bitadressierung nur das Schreiben gesteuert werden kann.
  • US-A 4 099 253 offenbart einen RAM-Speicher mit der Möglichkeit der Bit- oder Byteadressierung. Bytes werden in Speicherblöcken abgespeichert. Ein Speicherblock besteht aus acht integrierten Schaltungen, die jeweils die gleiche Speichertiefe haben. Wenn ein Byte gespeichert werden soll, werden die- Bits über die acht integrierten Schaltungen verteilt. Für die Bitadressierung kann eine dieser integrierten Schaltungen entsprechend dem Signal der drei vorhergehenden Adreßleitungen ausgewählt werden.
  • Es ist Aufgabe der vorliegenden Erfindung, ein PCS zu schaffen, das die Verarbeitung von Bitdaten und Wortdaten bei vereinfachter Schaltungskonfiguration und auch die Möglichkeit der Programmierung zuläßt.
  • Diese Aufgabe wird erfindungsgemäß mit den Eigenschaften der unabhängigen Ansprüche gelöst, abhängige Ansprüche beziehen sich auf die bevorzugten Ausführungsformen der vorliegenden Erfindung.
  • Im folgenden werden einzelne Ausführungsformen der vorliegenden Erfindung anhand der Figuren beschrieben, wobei
  • Fig. 1 und 2 jeweils Bitdaten und Wortdaten zeigen, welche in jeweiligen Speicherbereichen entsprechend einer Ausführungsform der vorliegenden Erfindung abgespeichert werden;
  • Fig. 3 Bitdaten und Wortdaten zeigt, welche gemischt in einem Speicherbereich entsprechend einer Ausführungsform der vorliegenden Erfindung abgespeichert werden;
  • Fig. 4 zeigt, in welcher Art Daten zwischen Speicher und Eingabe/Ausgabe-Schaltung entsprechend der Ausführungsform der vorliegenden Erfindung ausgetauscht werden;
  • Fig. 5 ein Zeitdiagramm für die Signale ist, die auf dem Daten- und Adreßbus einer Ausführungsform der vorliegenden Erfindung anliegen;
  • Fig. 6 die interne Ausgabe in der Ausführungsform der vorliegenden Erfindung zeigt
  • Fig. 7 und 8 jeweils Bitdaten und Wortdaten zeigen, welche in den jeweiligen Speicherbereichen eines großen oder mittelgroßen PCS' abgespeichert werden;
  • Fig. 9 Bitdaten und Wortdaten zeigt, welche miteinander vermischt in einem Speicherbereich eines großen oder mittelgroßen PCS' gespeichert sind;
  • Fig. 10 die Art zeigt, in welcher Daten zwischen Speicher und Eingabe/Ausgabe-Schaltung eines großen oder mittelgroßen PCS' ausgetauscht werden;
  • Fig. 11 ein Zeitdiagramm für Daten- und Adreßbusse eines großen oder mittelgroßen PCS' zeigt
  • Fig. 12 und 13 jeweils Bitdaten und Wortdaten zeigen, welche in entsprechenden Speicherbereichen eines kleinen PCS' abgespeichert werden;
  • Fig. 14 Bit- und Wortdaten zeigt, welche miteinander vermischt in einem Speicherbereich eines kleinen PCS' abgespeichert werden;
  • Fig. 15 die Art zeigt, in welcher Daten zwischen Speicher und Eingabe/Ausgabe-Schaltung eines kleinen PCS' ausgetauscht werden;
  • Fig. 16 ein Zeitdiagramm für Daten- und Adreßbusse in einem kleinen PCS ist;
  • Fig. 17 die interne Ausgabe in einem großen oder mittelgroßen PCS zeigt; und
  • Fig. 18 die interne Ausgabe in einem kleinen PCS zeigt.
  • Von einem PCS verarbeitete Daten umfassen Bitdaten für beispielsweise den EIN/AUS-Zustand eines Schalters und für das Anlassen und Abstellen eines Motors, sowie Wortdaten für beispielsweise einen Temperaturwert, den Öffnungswinkel für ein Ventil und für den Vergleichswert von Zählraten. Viele kleine PCS verarbeiten nur Bitdaten. Es ist jedoch inzwischen von Bedeutung, daß auch kleine PCS Wortdaten verarbeiten, um ihren Einsatzbereich zu erweitern.
  • In bezug auf die Bit- und Wortdatenverarbeitung in einem PCS ist die Speicherzuweisung von Daten und der Austausch von Daten zwischen Speicher und Eingabe/Ausgabe-Schaltungen kritisch, wobei die Speicherzuweisung direkt von der Programmierung durch den Nutzer abhängt.
  • Zunächst soll die Speicherzuweisung für die Daten erläutert werden.
  • Es gibt zwei Methoden Bitdaten einem Speicherplatz zuzuordnen, wie in Fig. 7 und 12 gezeigt ist. In dem Verfahren nach Fig. 12 wird das siebte Bit jeder Adresse einem der fünf Bitdaten B1 bis B5 zugeordnet. Dementsprechend wird ein Speicherbereich für fünf Adressen von AAA0 bis AAA4 für fünf Bitgrößen benötigt, beispielsweise B1 bis B5. In diesem Fall werden die Bits 0 bis 6 nicht verwendet. In dem Verfahren nach Fig. 7 wird andererseits ein Speicherbereich einer Adresse AAA0 den Bitwerten von B1 bis B8 zugeordnet und ein Speicherbereich einer anderen Adresse AAA1 ist den nächsten Bitdaten von B9 bis B16 zugeordnet. Auf diese Art werden Speicherbereiche sukzessive aufeinanderfolgenden Bitdaten zugeordnet. In diesem Fall werden acht Bitdaten in einem Speicherbereich für nur eine Adresse abgespeichert und der ganze Speicherbereich wird genutzt. Der Vergleich zwischen den Verfahren nach Fig. 12 und Fig. 7 zeigt, daß das Verfahren nach Fig. 7 bezüglich der Speicherausnutzung effizienter ist und es ermöglicht, daß Daten in einem Speicherbereich abgespeichert werden, der nur ein Achtel so groß ist wie der nach dem Verfahren nach Fig. 12. Wenn jedoch die Bitdaten verarbeitet werden, so muß nach dem Verfahren nach Fig. 7 notwendigerweise ein Bit aus einer 8-Bit-Adresse ausgelesen werden, was bedeutet, daß das Verfahren nach Fig. 12 leichter zu handhaben ist als das Verfahren nach Fig. 7 und eine höhere Verarbeitungsgeschwindigkeit ermöglicht. Ferner gibt es zwei Verfahren, Wortdaten einem Speicher zuzuordnen, wie in Fig. 8 und 13 gezeigt ist. In dem Verfahren nach Fig. 13 wird nur das Bit 7 in jedem Speicherbereich benutzt und es werden acht Adressen, beispielsweise von AAA0 bis AAA7, für ein Wort verwendet. In diesem Verfahren werden ähnlich wie dem nach Fig. 12 die Bits 0 bis 6 nicht verwendet. In dem Verfahren nach Fig. 8 wird eine Adresse einem Wort zugeordnet und somit der gesamte Speicher effizient genutzt. Im allgemeinen ist das Verfahren nach Fig. 8 dem nach Fig. 13 überlegen, letzteres hat jedoch den Vorteil, daß dieselbe Hardware wie für das Verfahren nach Fig. 12 verwendet werden kann.
  • Bei den Entwicklungsarbeiten, die zu dieser Erfindung führten, wurde ein Verfahren untersucht, das sich aus den beiden Verfahren nach Fig. 7 und 8 zusammensetzt und ein Verfahren, das sich aus den beiden Verfahren nach Fig. 12 und 13 zusammensetzt. Die Verbindung der Verfahren nach Fig. 7 und 8 wurde hauptsächlich vom Standpunkt der Abspeicherungseffizienz her untersucht. Im allgemeinen wird ein Speicherbereich ausschließlich für Wortdaten genutzt, während ein anderer Speicherbereich ausschließlich für Bitdaten genutzt wird. Ein vorgegebener Speicherbereich ist für Bitdaten und Wortdaten zugelassen, um die Flexibilität des Systems zu verbessern. Wenn ein Nutzer bei der Programmierung ein Wort verwendet, ist es dementsprechend nicht möglich, den Speicherplatz für acht Bitdaten zu verwenden, womit eine einfache Programmierung unmöglich wird.
  • Im einzelnen bedeutet dies, wenn Wortdaten und Bitdaten im Programm gemischt auftreten, d. h. wenn beispielsweise ein Wort, fünf Bitdatengrößen und ein Wort nacheinander ab der Adresse AAA0 im Speicher abgespeichert werden, so belegt ein Wort den Speicherbereich für acht Bitdatengrößen, wie in Fig. 9 gezeigt ist. Da ferner ein Wort nicht derart abgespeichert werden kann, daß es zwei aufeinanderfolgende Adressen belegt, und wenn wie in Fig. 9 Bitdaten zwischen zwei Wortdaten kommen und die Zahl der Bitdaten kleiner als acht ist, dann werden leere Bits bei der Adresse auftauchen, wo die Bitdaten gespeichert werden, was zu einer weniger effizienten Speicherausnutzung führt. Da ferner Wort- und Bitdaten miteinander vermischt sind, stimmen die Zahlen, welche konsekutiv Wort- und Bitdaten mit den entsprechenden Speicheradressen verknüpfen, nicht notwendigerweise überein mit den entsprechenden Adreßzahlen, wodurch viel Zeitaufwand und Vorbereitung für ein Programm nötig wird.
  • Auf der anderen Seite ermöglicht die Kombination der Verfahren nach Fig. 12 und 13, daß konventionelle Hardware genutzt wird, allerdings mit relativ großem Speicher zur Abspeicherung von Wortdaten, weswegen die Speichereffizienz wiederum gering ist. Entsprechend versagt das Verfahren auch insoweit, als der Nutzer das System nicht mehr so einfach wie bei einer Kombination der Verfahren nach Fig. 7 und 8 anwenden kann.
  • Dies bedeutet im einzelnen, wenn Wort- und Bitdaten in einem Programm vermischt werden, wie das im Fall der Kombination der Verfahren nach Fig. 7 und 8 der Fall ist, und wenn beispielsweise Wortdaten fünf Bitdaten und ein Wort nacheinander beginnend mit der Adresse AAA0 abgespeichert wird, werden die Adressen in Blöcke unterteilt, wobei jeder Block eine Anzahl Adressen hat, die gleich der Zahl der Bits ist, die ein Wort bilden, und es werden entweder Wort- oder Bitdaten in jedem Block abgespeichert, wie in Fig. 14 gezeigt ist. Im Beispiel nach Fig. 14 wird ein Wort W1 von der Adresse AAA0 bis zur Adresse AAA7 abgespeichert und Bitdaten B1 bis B5 werden entsprechend zwischen den Adressen AAA8 bis AAAC abgespeichert. Die Adressen AAAD, AAAE und AAAF sind leere Adressen und das folgende Wort W3 wird von der Adresse AAB0 bis zur Adresse AAB7 abgespeichert. Wenn in diesem Falle Bitdaten bei allen Adressen AAA0 bis AAA7 gespeichert werden, werden die Zahlen B1 bis B8 entsprechend mit diesen Bitdaten verknüpft. Dementsprechend wird die Zahl B9 mit den Bitdaten verknüpft, welche bei der neunten Adresse AAA8 abgespeichert sind, und die Zahlen B10 bis B13 werden verknüpft mit den folgenden Bitdaten. Ähnlich ist es, wenn Wortdaten in allen Adressen AAA0 bis AAAF abgespeichert werden und das Wort, welches zwischen der Adresse AAB0 und der Adresse AAB7 abgespeichert ist, das dritte Wort ist und die Zahl W3 daher mit diesem verknüpft wird. Da ein Wort nicht in der Art abgespeichert werden kann, daß es über zwei aufeinanderfolgende Adreßblöcke verteilt wird, von denen jeder acht Adressen enthält, ergeben sich leere Adressen, wenn die Zahl der Bits kleiner als acht ist, so daß die Effizienz der Speicherausnutzung weiter verschlechtert wird bei einer Verminderung von Wort- und Bitdaten miteinander in einem Programm. Da in diesem Beispiel auch Wort- und Bitdaten miteinander vermischt sind, fallen die Zahlen, welche nacheinander mit den Wort- und Bitdaten an den entsprechenden Adressen verknüpft sind, nicht notwendigerweise mit den entsprechenden Adressen zusammen und müssen auch nicht unbedingt aufeinanderfolgen, was wiederum großen Zeitaufwand und Vorbereitung eines Programmes bedeutet.
  • Als nächstes wird der Austausch von Daten zwischen Speicher und Eingabe/Ausgabe-Schaltung erläutert. Es gibt zwei Verfahren, welche in den Fig. 10 und 15 gezeigt werden, die jeweils der Kombination von Verfahren nach Fig. 7 und 8 und der Kombination der Verfahren nach Fig. 12 und 13 entsprechen.
  • Bei dem Verfahren nach Fig. 10 gibt es acht Datenbusse und daher können Wortdaten mit nur einem Adreßsignal aufgerufen werden. Für Bitdaten jedoch gilt, daß es nötig ist, ein Bit von den acht Bitdaten herauszunehmen, da eine Adresse acht Datenbits enthält, und das bedeutet, daß die Schaltungskonfiguration zwar komplizierter wird, aber der Adreßraum effizienter genutzt werden kann.
  • Fig. 11 zeigt als Beispiel Signaldaten auf Daten- und Adreßbussen aus Fig. 10. Wenn Bitdaten bei einer bestimmten Adresse abgespeichert wurden, werden die bei der Adresse gespeicherten Bitdaten auf die acht Datenbusse in Form von digitalen Signalen "1" oder "0" ausgegeben, wenn diese Adresse auf dem Adreßbus anliegt. Da bei diesem Verfahren acht Bitdaten simultan ausgegeben werden wenn ein Adreßsignal anliegt, ist es notwendig, das benötigte Bit aus der Ausgabe mittels Torschaltungen od. dgl. auszuwählen. Um die Bitdaten sukzessive einzulesen, ist es ferner notwendig, das Adreßsignal achtmal auszugeben und bei jeder Ausgabe des Adreßsignals die Bitdaten sukzessive zu lesen, was bedeutet, daß es sehr lange dauert, die Bitsignale auszulesen. Wenn Daten, die an einer bestimmten Adresse abgespeichert wurden, Wortdaten sind, werden sie als Antwort auf ein Adressensignal ausgelesen und dann an die Eingabe/Ausgabe-Schaltung weitergeleitet.
  • In dem Verfahren nach Fig. 15 kann jedes Bit entsprechend einem Adreßsignal ein- und ausgegeben werden, da nur ein Datenbus vorhanden ist, aber Wortdaten müssen seriell ein- oder ausgegeben werden, wobei die Adreßsignale sukzessive geändert werden. Da dieses Verfahren nur einen Datenbus kennt, ist die Schaltungskonfiguration einfach.
  • Fig. 16 zeigt als Beispiel Signale auf dem Daten- und Adreßbus in Fig. 15. Wenn die Daten in einem bestimmten Speicherbereich Bitdaten sind, kann jedes Bit unmittelbar auf ein Adreßsignal ausgelesen werden, da nur ein Bit bei einer Adresse abgespeichert ist. Wenn die Daten bei einem bestimmten Speicherbereich Wortdaten sind, und als solche über acht aufeinanderfolgende Adressen verteilt abgespeichert sind, ist es notwendig, nacheinander acht Adreßsignale auszugeben, um die Daten bei entsprechenden Adressen seriell ausgeben zu können. Entsprechend lange dauert es, Wortdaten auszugeben und es ist für die Empfängerseite notwendig, eine Schaltung für die Verknüpfung der seriellen Daten zu einem Wort vorzusehen.
  • Im folgenden wird die interne Ausgabe in einem Programm beschrieben. Die interne Ausgabe ist das Ergebnis einer sequentiellen Verarbeitung, wobei die Ausgabe nicht nach außen gelangt, sondern temporär innerhalb des PCS' abgespeichert wird, und für andere sequentielle Verarbeitung zur Verfügung steht.
  • Fig. 17 zeigt eine Tabelle für die Zuordnung von internen Ausgaben entsprechend der Verbindung der Verfahren nach Fig. 7 und 8.
  • Da nicht Bitausgabe und Wortausgabe gleichzeitig für dieselbe Adresse beim Programmieren verwendet werden können, muß Überlappung von Bit- und Wortausgabe vermieden werden, so daß die Erstellung eines Programms mehr Zeit kostet. Wenn beispielsweise Wortdaten W2 verwendet werden, ist es unmöglich, die Ausgabe von acht Bitdaten B9 bis B16 zu verwenden und man muß das Programm anpassen, wobei die Zahl der nicht nutzbaren Bits berechnet werden muß und dadurch viel Zeit und Arbeit aufgewendet werden muß, sowie große Sorgfalt beim Erstellen des Programms. Da ferner ein Wort (hier) aus acht Bits besteht, entspricht die Zahl der verfügbaren internen Worte einem Achtel der Zahl der verfügbaren internen Bits.
  • Fig. 18 zeigt eine Tabelle der Zuordnung der internen Ausgaben entsprechend der Kombination der Verfahren nach Fig. 12 und 13. Hier treten ähnliche Probleme wie oben auf, wenn das Programm geschrieben wird, und die Zahl der verfügbaren internen Wortausgaben wird reduziert, da jedes Wort über acht aufeinanderfolgende Adressen verstreut ist.
  • Wie oben beschrieben, kann weder die Kombination der Verfahren nach Fig. 7 und 8 noch die Kombination der Verfahren nach Fig. 12 und 13 sowohl eine höhere Effizienz bei der Speicherausnutzung als auch eine Festlegung der Adressen beim Programmieren gewährleisten und damit wird auch das Ziel nicht erreicht, daß sowohl Bitdaten als auch Wortdaten einfach handhabbar sind.
  • Eine Ausführungsform der vorliegenden Erfindung wird im folgenden mit Bezug auf die Fig. 1 bis 6 beschrieben.
  • Bei dieser Ausführungsform werden die Verfahren zur Nutzung des Speichers nach Fig. 8 und 12 miteinander verbunden und der Speicherbereich, der der Zahl von Bits entspricht, die ein Wort bilden (acht Bits in dieser Ausführungsform), wird im voraus für alle Adressen sichergestellt. Dementsprechend ist es unnötig, Programmadressen voneinander zu unterscheiden und wenn es um Wortverarbeitung geht, gibt es keine Reduzierung der Zahl der verbliebenen nutzbaren Adressen. Wenn es um die Verarbeitung von Wortdaten geht, werden alle Bits behandelt, wie in Fig. 2 gezeigt, wogegen bei der Verarbeitung von Bitdaten ein spezielles Bit verarbeitet wird (im allgemeinen entweder das niedrigste oder das höchste Bit).
  • Wortverarbeitung oder Bitverarbeitung wird entsprechend der Vorgabe durch das Programm gewählt. Im Falle der Bitverarbeitung wird im voraus das niedrigste oder höchste Bit gesetzt. Nachdem alle Bitdaten im Mikrocomputer innerhalb des PCS' eingelesen wurden, kann daher der Inhalt der Bitdaten einfach durch ein Schieberegister durch Schieben nach links oder rechts ausgegeben werden, so daß das niedrigste oder höchste Bit anliegt. Dadurch kann die Ausgabegeschwindigkeit erhöht werden.
  • Fig. 3 zeigt ein Beispiel von Wort- und Bitdaten, welche gemischt abgespeichert worden sind. Wenn Wort- und Bitdaten miteinander vermischt werden, beispielsweise ein Wort, fünf Bits und ein Wort nacheinander abgespeichert werden mit der Startadresse AAA0, wird bei dieser Ausführungsform das Wort W1 bei der Adresse AAA0 abgespeichert, während die Bitdaten B2 bis B6 jeweils an den Adressen AAA1 bis AAA5 und das Wort W7 bei der Adresse AAA6 abgespeichert wird.
  • In dieser Ausführungsform werden also Bitdaten und Wortdaten in derselben Art abgespeichert, d. h. Daten werden bei einer Adresse abgespeichert, unabhängig davon, ob es sich um ein Bit oder ein Wort handelt. Daher können die Zahlen, welche mit den Daten an den entsprechenden Adressen verknüpft sind, aufeinanderfolgende Zahlen sein, welche zusammenfallen mit den Ordnungszahlen der entsprechenden Adressen, unabhängig von der Art der Daten, d. h. unabhängig davon, ob spezielle Daten ein Wort bilden oder Bitdaten sind. Dementsprechend werden Zahlen, welche mit den Daten an entsprechenden Adressen verknüpft sind, bei der Erstellung eines Programms nur benötigt, um entsprechend der Ordnungszahlen der korrespondierenden Adressen angeordnet zu werden, so daß es möglich ist, die für das Schreiben eines Programms erforderliche Zeit stark zu reduzieren. Da ferner der von einem Bit belegte Speicherbereich und der von einem Wort belegte Speicherbereich einander gleich sind, ist es ohne weiteres möglich, abgespeicherte Daten bei einer Adresse von Bitdaten auf Wortdaten und umgekehrt umzuschreiben. Selbst wenn Bitdaten und Wortdaten miteinander vermischt werden, gibt es keine leere Adresse und daher ist die Effizienz der Speicherausnutzung nicht vermindert.
  • Der Austausch von Daten zwischen Speicher und Eingabe/ Ausgabe-Schaltung entsprechend dieser Ausführungsform wird in Fig. 4 gezeigt. In dieser Ausführungsform gibt es acht Datenbusse und daher kann ein Wort mit nur einer Adresse aufgerufen werden. Bitdaten betreffend, kann ein Bit auf ähnliche Weise wie bei dem Verfahren nach Fig. 15 aufgerufen werden, da nur das siebte Bit alleine berücksichtigt wird.
  • Dementsprechend braucht nur ein bestimmtes Signal der acht Datenbusse beachtet zu werden, wenn Bitdaten verarbeitet werden sollen. Es ist daher möglich, Bitdaten auszulesen und nur ein Adreßsignal zu erzeugen, so daß die Datenübertragung beschleunigt werden kann.
  • Im folgenden wird ein Verfahren für die Verwendung der internen Ausgabe in einem Programm entsprechend dieser Ausführungsform beschrieben. Fig. 6 zeigt eine Tabelle für die Zuordnung der internen Ausgabe entsprechend der vorliegenden Erfindung.
  • In dieser Ausführungsform können sowohl Bitdaten als auch Wortdaten in gleicher Weise verarbeitet werden und es ist daher lediglich nötig, einfache aufeinanderfolgende Zahlen mit im Speicher gespeicherten Daten zu verknüpfen. Entsprechend wird die Erstellung eines Programms ermöglicht und die Zeit für die Erstellung wird deutlich reduziert. Zusätzlich ist es möglich, die Zahl der Wortausgaben zu bestimmen, welche gleich der Zahl der Bitausgaben ist und ohne weiteres Bitdaten und Wortdaten miteinander zu tauschen. Somit ist es möglich, ein programmierbares Steuerungssystem zu schaffen, das sehr gut handhabbar ist und sehr flexibel ist.

Claims (4)

1. Verfahren zum Speichern von Daten in einem programmierbaren Steuerungssystem für die Verarbeitung von Wort- und Bitdaten mit einer Eingabe/Ausgabe-Schaltung (2), Auswahleinrichtung, Prozessor und Speicher (1), der in mehrere Speicherbereiche gleicher Länge aufgeteilt ist, wobei jeder Bereich eine Bitlänge entsprechend der Zahl der Bits eines Datenwortes bestimmter Länge hat und die besagten Bereiche jeweils spezielle Adressen zugeordnet haben, gekennzeichnet dadurch, daß folgende Schritte enthalten sind:
Definieren eines speziellen Daten-Unterbereichs für einzelne Bits für entweder das höchste Bit oder das niedrigste Bit in jedem der Bereiche, wobei der spezielle Daten-Unterbereich für einzelne Bits bei allen Bereichen an derselben Stelle liegt;
Wahl der Wortverarbeitung oder Bitverarbeitung entsprechend der Anweisung des Programms;
Verarbeitung besagter Wortdaten der Bitlänge des Bereiches, wenn Wortverarbeitung gewählt ist, und Abspeichern der verarbeiteten Wortdaten in allen Bits eines Bereichs bei Wortverarbeitung an einer beliebigen der vorgegebenen Adressen;
Verarbeitung von Bitdaten, wenn Bitverarbeitung gewählt ist, und Abspeichern der verarbeiteten Bits der Länge eines einzelnen Bits einzig in dem speziellen Unterbereich für einzelne Datenbits eines Bereichs, wenn Bitverarbeitung gewählt ist an einer beliebigen Adresse der vorgegebenen Adressen, ohne andere Bits dieses Bereichs zu beeinflussen.
2. Programmierbares Steuerungssystem für die Verarbeitung von sowohl Wortdaten als auch Bitdaten, umfassend
eine Ein/Ausgabe-Schaltung (2),
einen Speicher (1), der verbunden ist mit besagter Ein/Ausgabe-Schaltung (2) durch mehrere Datenbusse (4) und unterteilt ist in mehrere Speicherbereiche mit verschiedenen Adressen (AAA. . .), die dem zugeordnet sind, wobei jeder der besagten Speicherbereiche mehrere Bits umfaßt, die ein Datenwort bestimmter Länge bilden,
Wahleinrichtung für die Wahl der Wortverarbeitung oder Bitverarbeitung entsprechend der Vorgabe durch ein Programm,
Prozessor für die Verarbeitung entweder von Wortdaten oder Bitdaten entsprechend der Auswahl durch besagte Wahlvorrichtung, gekennzeichnet dadurch , daß
jeder der besagten Speicherbereiche einen bestimmten Subbereich für einzelne Bitdaten umfaßt, der entweder beim höchsten oder beim niedrigsten Bit in jedem der Bereiche liegt, wobei der bestimmte Unterbereich für einzelne Bitdaten in allen besagten Speicherbereichen an derselben Stelle liegt,
ein bearbeitetes Wort in allen Bits eines Bereichs abgespeichert wird, wenn Wortverarbeitung gewählt ist und ein bearbeitetes Bit der Länge eines einzelnen Bits nur in dem bestimmten Unterbereich für einzelne Datenbits eines Speicherbereichs abgespeichert wird, wobei die anderen Bits des Bereichs unberührt bleiben, wenn Bitverarbeitung an beliebiger Adresse besagter vorgegebener Adressen ausgewählt ist.
3. Programmierbares Steuerungssystem nach Anspruch 2, worin jeder Speicherbereich mit einer Adresse versehen ist, so daß ein Datenbit oder ein Datenwort selektiv darin abgespeichert werden kann.
4. Programmierbares Steuerungssystem nach Anspruch 2, worin besagte Datenbusse (4) in der Art vorgesehen sind, daß die Zahl der Datenbusse (4) der Zahl der Bits entspricht, die ein Wort bilden, so daß die Datenbits zwischen besagtem Speicher (2) und besagter Ein/Ausgabe-Schaltung über einen der besagten Datenbusse (4) läuft, welcher der Bitadresse entspricht, bei welcher besagte Bitdaten gespeichert sind, wogegen Wortdaten auf allen- Datenbussen (4) anliegen.
DE87100808T 1986-01-22 1987-01-21 Programmsteuerung. Expired - Fee Related DE3785222T2 (de)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61010026A JPS62169205A (ja) 1986-01-22 1986-01-22 プログラマブルコントロ−ラ

Publications (2)

Publication Number Publication Date
DE3785222D1 DE3785222D1 (de) 1993-05-13
DE3785222T2 true DE3785222T2 (de) 1993-09-30

Family

ID=11738884

Family Applications (1)

Application Number Title Priority Date Filing Date
DE87100808T Expired - Fee Related DE3785222T2 (de) 1986-01-22 1987-01-21 Programmsteuerung.

Country Status (4)

Country Link
US (1) US5121490A (de)
EP (1) EP0230316B1 (de)
JP (1) JPS62169205A (de)
DE (1) DE3785222T2 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5586275A (en) * 1989-05-04 1996-12-17 Texas Instruments Incorporated Devices and systems with parallel logic unit operable on data memory locations, and methods
JP2848060B2 (ja) * 1991-10-24 1999-01-20 株式会社日立製作所 プログラマブルコントローラおよびシーケンス制御方法
JP3369204B2 (ja) * 1991-10-25 2003-01-20 株式会社東芝 プログラマブルコントローラ
WO2012019111A2 (en) 2010-08-06 2012-02-09 Frederick Furtek A method and apparatus for a compiler and related components for stream-based computations for a general-purpose, multiple-core system

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3631405A (en) * 1969-11-12 1971-12-28 Honeywell Inc Sharing of microprograms between processors
US4028679A (en) * 1975-10-16 1977-06-07 Bell Telephone Laboratories, Incorporated Memory patching circuit with increased capability
US4079451A (en) * 1976-04-07 1978-03-14 Honeywell Information Systems Inc. Word, byte and bit indexed addressing in a data processing system
US4099253A (en) * 1976-09-13 1978-07-04 Dynage, Incorporated Random access memory with bit or byte addressing capability
US4282584A (en) * 1979-05-30 1981-08-04 Allen-Bradley Company Mini-programmable controller
JPS5657111A (en) * 1979-10-15 1981-05-19 Toshiba Corp Sequence controller
JPS5723110A (en) * 1980-07-18 1982-02-06 Hitachi Ltd Sequence controller
US4667305A (en) * 1982-06-30 1987-05-19 International Business Machines Corporation Circuits for accessing a variable width data bus with a variable width data field
DE3302929A1 (de) * 1983-01-28 1984-08-02 Siemens AG, 1000 Berlin und 8000 München Speicherprogrammierbare steuerung
US4688191A (en) * 1983-11-03 1987-08-18 Amca International Corporation Single bit storage and retrieval with transition intelligence
US4663735A (en) * 1983-12-30 1987-05-05 Texas Instruments Incorporated Random/serial access mode selection circuit for a video memory system
JPS60200287A (ja) * 1984-03-24 1985-10-09 株式会社東芝 記憶装置
US5034900A (en) * 1984-10-05 1991-07-23 Hitachi, Ltd. Method and apparatus for bit operational process

Also Published As

Publication number Publication date
DE3785222D1 (de) 1993-05-13
US5121490A (en) 1992-06-09
EP0230316A3 (en) 1989-04-05
JPS62169205A (ja) 1987-07-25
EP0230316B1 (de) 1993-04-07
EP0230316A2 (de) 1987-07-29

Similar Documents

Publication Publication Date Title
DE68914172T2 (de) Datenverarbeitungssystem und Videoverarbeitungssystem mit einem derartigen Datenverarbeitungssystem.
DE2445617A1 (de) Hierarchische speicheranordnung
DE68927795T2 (de) Übertragungssystem mit einem gemeinsamen Speicher
DE3689006T2 (de) Mikroprogrammsteuersystem.
DE2230103A1 (de) Adressiereinrichtung fuer einen speicher
DE3043100C2 (de)
DE2926322C2 (de) Speicher-Subsystem
DE2547488A1 (de) Mikroprogrammierte datenverarbeitungsanlage
DE1774052B1 (de) Rechner
DE69119149T2 (de) Struktur zur direkten Speicher-zu-Speicher-Übertragung
DE2758829A1 (de) Multiprozessor-datenverarbeitungssystem
DE1190706B (de) In zwei abwechselnden Zyklen arbeitende programmgesteuerte elektronische digitale Rechenmaschine
DE2952500A1 (de) Steuereinheit in einer vorrichtung zur steuerung und/oder regelung von maschinen
DE2900586C2 (de) Anordnung zum Decodieren von Codewörtern variabler Länge
DE2951040C2 (de)
DE3811145C2 (de)
DE2433436A1 (de) Verfahren und anordnung zum mehrfachverzweigen des programms in einem digitalen computer
DE602004008712T2 (de) Speicherbandbreiten-Steuereinrichtung
DE68925376T2 (de) In Direktabbildung und in Bankabbildung wirksamer Informationsprozessor und Verfahren zum Schalten der Abbildungsschemas
DE68926807T2 (de) Erweiterte Eingabe-/Ausgabe-Schaltungsplatten-Adressierungsanordnung
DE3785222T2 (de) Programmsteuerung.
DE2558417A1 (de) Datenverarbeitungssystem
DE3586789T2 (de) Mikrocomputer mit wenigstens einer ein-/ausgabeeinheit.
DE2235883C3 (de) Datenverarbeitungseinrichtung
DE3000012A1 (de) Schaltungsanordnung zur ausfuehrung eines uebertragungsbefehls in einer datenverarbeitungsanlage

Legal Events

Date Code Title Description
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee