-
Die vorliegende Erfindung betrifft eine Steuervorrichtung, die ein weites Anwendungsgebiet bei Steuerungen in Eisen- und Stahlfirmen und Papierherstellungsfirmen sowie für industrielle Systeme, wie beispielsweise in der Automobilindustrie, und für öffentliche Systeme, die eine Wasserversorgung und Kanalisationssysteme umfassen, hat.
-
1 zeigt eine Konfiguration einer herkömmlichen Steuervorrichtung 100. In der Steuervorrichtung 100 ist eine Steuerprogramm-Ausführungsschaltung 114 dazu geeignet, Eingangsdaten von einer Vielzahl von I/O-(Eingabe/Ausgabe-)Vorrichtungen 200 zu verarbeiten, welche Daten über I/O-Schnittstellen 117 und einen Systembus 119 zu Eingangsregistern in einem Steuerdatenspeicher 116 eingegeben werden, wo die Eingangsdaten zur Implementierung eines in einem Steuerprogrammspeicher 115 gespeicherten Steuerprogramms verwendet werden, um in der Steuerprogramm-Ausführungsschaltung 114 ausgeführt zu werden, von welcher Operation Ergebnisse zu nicht gezeigten Ausgangsregistern im Steuerdatenspeicher 116 geschrieben werden.
-
2 zeigt zugehörige Datenflüsse. Dafür werden vor der Ausführung von Operationen des Steuerprogramms Eingangsdaten von Eingangsvorrichtungen 200 als Gesamtes von den Eingangsvorrichtungen 200 zu den Eingangsregistern 116a eingegeben und werden nach der Ausführung von Operationen des Steuerprogramms gesamte Daten, die in den Ausgangsregistern 116b gespeichert sind, zu den, I/O-Vorrichtungen ausgegeben. Dieser Prozess wird Stapel-I/O genannt.
-
Daher werden gesamte Eingangsdaten selbst dann zu den Eingangsregistern 116a eingegeben, wenn Eingangsdaten von den Eingangsvorrichtungen 200 keine Variationen enthalten, und werden gesamte Daten, die in den Ausgangsregistern 116b gespeichert sind, selbst dann zu den I/O-Vorrichtungen 200 ausgegeben, wenn Ausgangsdaten keine Variationen enthalten.
-
Die Steuervorrichtung 100 hat für die I/O-Vorrichtungen 200 eine gesamte Anzahl von I/O-Anschlüssen von etwa 1000 selbst für Systeme eines mittleren Ausmaßes, was somit viel Zeit für die Stapel-I/O nimmt, wodurch eine verkürzte Steuerperiode nicht erfolgreich erreicht wird.
-
Zu diesem Punkt ist eine programmierbare Steuerung (siehe z. B. die japanische Patentveröffentlichung
JP 3317601 B2 ) für einen Datentransfer entlang einer Stapel-I/O zwischen I/O-Vorrichtungen und I/O-Registern in einer Steuervorrichtung offenbart worden, die dann, wenn ein Steuerprogramm ausgeführt wird, ein Überwachen von Operanden von spezifischen Sequenzanweisungen und ein Untersuchen eines Zustands einer Ausführung einer CPU enthält, um Flags einer Anweisung für einen Datentransfer auf I/O-Register einzustellen, die einen Datentransfer benötigen, und dann, wenn ein Datentransfer zwischen diesen I/O-Registern und I/O-Modulen durchgeführt wird, ein Ausführen eines Datentransfers zu I/O-Modulen in Bezug auf einfach I/O-Register mit daran gesetzten Datentransferanweisungs-Flags, was eine minimierte Datentransferrate zulässt, wenn es nötig ist.
-
Die oben angegebene programmierbare Steuerung liest gesamte I/O-Register, um einen Zustand bzw. Status ihrer Transferanweisungs-Flags zu prüfen. Dies macht als ein Problem eine Reduzierung der Zeit unmöglich, die für Prüfungen von Transferanweisungs-Flags an I/O-Registern erforderlich ist, die keine Prüfungen nötig haben.
-
Eine entsprechende Steuerung ist auch aus der
JP 08-147013 A bekannt.
-
Weiterhin schreibt in dem Fall einer Lese/Schreib-Anweisung zum Lesen von Steuerdaten aus einem Steuerdatenspeicher und zum Zurückschreiben eines Ergebnisses eines Operationsprozesses, der daran ausgeführt ist, zu dem Steuerdatenspeicher, die programmierbare Steuerung das Ergebnis selbst dann unbedingt zu dem Steuerdatenspeicher, wenn das Ergebnis einer Operation identisch zu den gelesenen Steuerdaten ist. Diese Operation verhindert ein Erreichen eines Weglassens eines unnötigen Schreibens als ein Problem.
-
Des Weiteren ist aus der
US 2003/0100968 A1 ein Konzept zur Ausführung von Blockprogrammen bekannt. Die entsprechende Lehre setzt eine Blocktabellenauflistung ein. Schließlich ist noch aus der
DE 41 35 749 A1 eine programmierbare Steuerung mit einer sog. intelligenten Funktionsmodulschnittstelle bekannt.
-
Die vorliegende Erfindung ist erreicht worden, um die beschriebenen Probleme zu lösen, und hat als ihre Aufgabe, eine Steuervorrichtung mit einer schnellen I/O-Funktion zur Verfügung zu stellen, wobei ohne ein Prüfen von gesamten I/O-Registern einfach diejenigen Eingangsdaten, die gegenüber vorherigen Eingaben geändert sind, in Eingangsregister genommen werden, und einfach diejenigen Daten, die gegenüber vorherigen Ausgangsdaten geändert sind, als Ergebnis einer Ausführung einer Operation eines Steuerprogramms von Ausgangsregistern zu I/O-Vorrichtungen ausgegeben werden, um dadurch eine verkürzte Zeit für einen Datentransfer in einer Stapel-I/O von Eingangsdaten und Ausgangsdaten zwischen einer Steuervorrichtung und I/O-Vorrichtungen zuzulassen.
-
Es ist auch eine Aufgabe der vorliegenden Erfindung, ein Steuerverfahren für Steuerdaten einer Steuervorrichtung mit einer schnellen I/O-Funktion zur Verfügung zu stellen, wobei für jede Lese- und Schreibanweisung, die ein Ergebnis einer Operation identisch zu Steuerdaten, die aus einem
-
Steuerdatenspeicher gelesen sind, die Ausführung einer Anweisung einer Schreibphase gestoppt wird, um die Steuerdaten nicht zu schreiben, um dadurch eine verkürzte Zeit für Steueroperationen in einer Stapel-I/O zuzulassen.
-
Die beschriebene Aufgabe wird durch die Gegenstände der unabhängigen Ansprüche gelöst. Weitere vorteilhafte Ausgestaltungen sind in den abhängigen Ansprüchen angegeben.
-
Eine Steuervorrichtung kann demnach bereitgestellt sein mit einer schnellen I/O-Funktion für eine Speicherung eines Steuerprogramms geeignet, und zum Eingeben eines Zustands eines zu steuernden Ziels als Eingangsdaten von einer I/O-Vorrichtung, zum Verfolgen des Steuerprogramms zum Ausführen einer Operation der Eingangsdaten und zum Ausgeben zu der I/O-Vorrichtung eines Ergebnisses der Operation als Ausgangsdaten zum Steuern des zu steuernden Ziels, und sie weist Folgendes auf: eine Steuerprogramm-Ausführungseinheit zum Steuern des zu steuernden Ziels, eine I/O-Datenschnittstelle, um zu veranlassen, dass die Eingangsdaten und die Ausgangsdaten zu der Steuervorrichtung eingegeben und zu der I/O-Vorrichtung ausgegeben werden, und einen Systembus für eine Verbindung zwischen der Steuerprogramm-Ausführungseinheit und der I/O-Datenschnittstelle, wobei die Steuerprogramm-Ausführungseinheit einen Steuerprogrammspeicher aufweist, der zur Speicherung des Steuerprogramms geeignet ist, einen Steuerdatenspeicher, der für eine temporäre Speicherung der Eingangsdaten, der Ausgangsdaten und einer Steuervariablen geeignet ist, und eine Steuerprogramm-Ausführungsschaltung, die für eine Ausführung des Steuerprogramms durch Verwenden der in dem Steuerdatenspeicher zu speichernden Eingangsdaten geeignet ist, wobei die Steuerprogramm-Ausführungsschaltung ein Anweisungsregister zum Speichern einer aus dem Steuerprogrammspeicher gelesenen Anweisung aufweist, einen Decodierer zum Interpretieren der im Anweisungsregister gespeicherten Anweisung, ein Steuerdaten-Speicherregister zum Speichern eines Inhalts eines aus dem Steuerdatenspeicher gelesenen Operanden, eine Operationseinheit zum Bearbeiten von in dem Steuerdaten-Speicherregister gespeicherten Steuerdaten gemäß der durch den Decodierer interpretierten Anweisung, ein Register zum Speichern einer Operationsausgabe der Operationseinheit, einen Steuerdaten-Komparator zum Detektieren, ob eine Übereinstimmung zwischen den Steuerdaten vor einer Operation durch die Operationseinheit und Daten nach einer Ausführung einer Operation gefunden wird oder nicht, und eine Operationssteuerung, die für Steuerungen geeignet ist, um zu veranlassen, dass der Operand von dem Steuerdatenspeicher zu dem Steuerdaten-Speicherregister gelesen wird, und Ausgangsdaten von der Operationseinheit in den Steuerdatenspeicher gemäß einer Ausgabe des Steuerdaten-Komparators geschrieben werden, wobei eine Schreibphase einer Lese- und Schreibanweisung weggelassen wird, wenn ein Übereinstimmungssignal von dem Steuerdaten-Komparator ausgegeben wird, und sonst eine Gesamtheit der Lese- und Schreibanweisung ausgeführt wird.
-
Gemäß einer Ausführungsform der vorliegenden Erfindung weist in der Steuervorrichtung mit einer schnellen I/O-Funktion die I/O-Datenschnittstelle auf einen Stapel-I/O-Pufferspeicher mit einem I/O-Datenregister auf, das zur Speicherung von Ausgangsdaten der I/O-Vorrichtung geeignet ist, und eine Stapel-I/O-Pufferspeichersteuerung für eine Steuerung eines Schreibens zu dem Stapel-I/O-Pufferspeicher, wobei die Stapel-I/O-Pufferspeichersteuerung dazu geeignet ist, dass dann, wenn das Übereinstimmungssignal von dem Steuerdaten-Komparator der Steuerprogramm-Ausführungsschaltung ausgegeben wird, ein Schreiben von Ausgangsdaten des Steuerdatenspeichers zu dem Stapel-I/O-Pufferspeicher gestoppt wird, und sonst das Schreiben zu dem Stapel-I/O-Pufferspeicher zugelassen wird.
-
Gemäß der vorliegenden Erfindung weist in der Steuervorrichtung mit einer schnellen I/O-Funktion die I/O-Datenschnittstelle auf eine Kombination aus einem ersten Pufferspeicher und einem zweiten Pufferspeicher auf, die für ein abwechselndes Speichern von Eingangsdaten, die aus der I/O-Vorrichtung gelesen sind, in einer aktuellen Steuerperiode oder einer vorherigen Steuerperiode geeignet sind, einen Eingangsdaten-Komparator, der für einen Vergleich zwischen in dem ersten Pufferspeicher zu speichernden Eingangsdaten und in dem zweiten Pufferspeicher gespeicherten Eingangsdaten geeignet ist, und eine Eingangsdatensteuerung, die dazu geeignet ist, wenn eine Übereinstimmungsausgabe durch den Eingangsdaten-Komparator gegeben wird, dann eine Anweisung zu liefern, die Eingangsdaten nicht in der aktuellen Steuerperiode zu dem Steuerdatenspeicher zu schreiben, und sonst eine Anweisung zum Schreiben zu liefern.
-
Gemäß einer Ausführungsform der vorliegenden Erfindung weist in der Steuervorrichtung mit einer schnellen I/O-Funktion die Eingangsdatensteuerung einen Adressenwandler zum Umwandeln einer Adresse der Eingangsdaten zu einer Schreibadresse eines Eingangsregisters des Steuerdatenspeichers auf.
-
Gemäß einer Ausführungsform der vorliegenden Erfindung weist in der Steuervorrichtung mit einer schnellen I/O-Funktion die I/O-Datenschnittstelle den Steuerdatenspeicher mit einer Kombination aus einem ersten Ausgangsregister und einem zweiten Ausgangsregister auf, die für eine Speicherung von Ausgangsdaten geeignet sind, die in einer aktuellen Steuerperiode oder einer vorherigen Steuerperiode gelesen sind, um zu der I/O-Vorrichtung ausgegeben zu werden, einen Ausgangsdaten-Komparator, der für einen Vergleich zwischen in dem ersten Ausgangsregister gespeicherten Ausgangsdaten und in dem zweiten Ausgangsregister gespeicherten Ausgangsdaten geeignet ist, einen Ausgangspufferspeicher, der für eine Speicherung von zu der I/O-Vorrichtung auszugebenden Ausgangsdaten geeignet ist, und eine Ausgangsdatensteuerung, die dazu geeignet ist, wenn eine Übereinstimmungsausgabe durch den Ausgangsdaten-Komparator gegeben wird, dann eine Anweisung zu liefern, die Ausgangsdaten nicht in der aktuellen Steuerperiode zu dem Ausgangspufferspeicher zu schreiben, und sonst eine Anweisung zum Schreiben zu liefern.
-
Es folgt eine kurze Beschreibung der Zeichnungen:
-
1 ist ein Konfigurationsdiagramm einer herkömmlichen Steuervorrichtung.
-
2 ist ein erklärendes Diagramm von Flüssen von Daten in einer herkömmlichen Stapel-I/O.
-
3 ist ein Konfigurationsdiagramm einer Steuervorrichtung mit einer schnellen I/O-Funktion gemäß der vorliegenden Erfindung.
-
4 ist ein detailliertes Konfigurationsdiagramm einer Steuerprogramm-Ausführungsschaltung gemäß einem ersten Ausführungsbeispiel der vorliegenden Erfindung.
-
5 ist ein erklärendes Diagramm von Aktionen, wenn ein Übereinstimmungssignal von Steuerdaten ausgegeben werden, gemäß dem ersten Ausführungsbeispiel der vorliegenden Erfindung.
-
6 ist ein Konfigurationsdiagramm, das einen Transfer von Ausgangsdaten gemäß einem zweiten Ausführungsbeispiel der vorliegenden Erfindung beschreibt.
-
7 ist ein erklärendes Diagramm von Flüssen von Daten in einer Stapel-I/O der Steuervorrichtung gemäß der vorliegenden Erfindung.
-
8 ist ein erklärendes Diagramm von Signalen von Steueraktionen gemäß dem zweiten Ausführungsbeispiel der vorliegenden Erfindung.
-
9 ist ein erklärendes Diagramm von Steueraktionen gemäß dem zweiten Ausführungsbeispiel der vorliegenden Erfindung.
-
10 ist ein erklärendes Diagramm von Steueraktionen gemäß dem zweiten Ausführungsbeispiel der vorliegenden Erfindung.
-
11 ist ein erklärendes Diagramm von Effekten von Steueraktionen gemäß dem zweiten Ausführungsbeispiel der vorliegenden Erfindung.
-
12 ist ein Konfigurationsdiagramm, das einen Transfer von Eingangsdaten gemäß einem dritten Ausführungsbeispiel der vorliegenden Erfindung beschreibt.
-
13 ist ein erklärendes Diagramm von Transferaktionen von Eingangsdaten gemäß dem dritten Ausführungsbeispiel der vorliegenden Erfindung.
-
14 ist ein erklärendes Diagramm von Effekten von Steueraktionen gemäß dem dritten Ausführungsbeispiel der vorliegenden Erfindung.
-
15 ist ein Konfigurationsdiagramm, das einen Transfer von Ausgangsdaten gemäß einem vierten Ausführungsbeispiel der vorliegenden Erfindung beschreibt.
-
16 ist ein erklärendes Diagramm von Transferaktionen von Ausgangsdaten gemäß dem vierten Ausführungsbeispiel der vorliegenden Erfindung.
-
17 ist ein erklärendes Diagramm von Effekten von Steueraktionen gemäß dem vierten Ausführungsbeispiel der vorliegenden Erfindung.
-
Nachfolgend werden Ausführungsbeispiele der vorliegenden Erfindung unter Bezugnahme auf die beigefügten Zeichnungen beschrieben werden. Gleiche Elemente sind durch gleiche Bezugszeichen bezeichnet.
-
(Erstes Ausführungsbeispiel)
-
Nun wird ein erstes Ausführungsbeispiel der vorliegenden Erfindung unter Bezugnahme auf 3 bis 5 beschrieben. 3 ist ein Konfigurationsdiagramm einer Steuervorrichtung mit einer schnellen I/O-Funktion gemäß der vorliegenden Erfindung.
-
In 1 enthält die Steuervorrichtung 1 eine Steuerprogramm-Ausführungseinheit 1a, eine I/O-Daten-Schnittstelleneinheit 1b, die zur Schnittstellenbildung zu und von einer I/O-Vorrichtung 2 für Eingangsdaten von zu steuernden Zielen und für Ausgangssignale, wie beispielsweise zu Stellgliedern zum Betreiben der zu steuernden Ziele konfiguriert ist, und einen Systembus 19, der für eine Verbindung zwischen der Steuerprogramm-Ausführungseinheit 1a und der I/O-Daten-Schnittstelleneinheit 1b konfiguriert ist.
-
Die Steuerprogramm-Ausführungseinheit 1a ist mit einer Steuerprogramm-Ausführungsschaltung 14 konfiguriert, die für eine Ausführung von Steueroperationen der Steuervorrichtung 1 geeignet ist, einem Steuerprogrammspeicher 15, der zur Speicherung eines auszuführenden Steuerprogramms geeignet ist, einem Steuerdatenspeicher 16, der für eine temporäre Speicherung von Eingangsdaten von der I/O-Vorrichtung 2 geeignet ist, sowie von Ausgangsdaten, und zur Speicherung von Steuerdaten, die Steuervariablen bei einer Ausführung des Steuerprogramms bilden, und einem lokalen Bus 21, der zur Verbindung dazwischen geeignet ist.
-
Anders ausgedrückt bedeuten, wie sie hierin verwendet werden, die Steuerdaten gesamte Daten, um zu dem Steuerdatenspeicher 16 geschrieben oder gelesen zu werden, oder ein Bilden von Operanden von Objekten von durch die Steuerprogramm-Ausführungsschaltung 14 auszuführenden Operationen.
-
Die I/O-Daten-Schnittstelleneinheit 1b ist mit einer I/O-Schnittstelle 17 konfiguriert, die zur Umwandlung, wie beispielsweise von Signalpegeln, um über eine Schnittstelle zu und von der I/O-Vorrichtung 2 geführt zu werden, geeignet ist, und einer I/O-Steuerschaltung 20, die Versteuerungen von Eingangsdaten und Ausgangsdaten geeignet ist, die über eine Schnittstelle zu und von der Steuerprogramm-Ausführungseinheit 1a zu führen sind.
-
Es wird nun angemerkt, dass der lokale Bus 21 bei einer Konfiguration weggelassen werden kann, bei welcher die Steuerprogramm-Ausführungsschaltung 14, der Steuerprogrammspeicher 15 und der Steuerdatenspeicher 16 direkt mit dem Systembus 19 verbunden sind.
-
Nun wird die Steuerprogramm-Ausführungsschaltung 14 unter Bezugnahme auf 4 und 5 beschrieben. 4 ist ein Konfigurationsdiagramm der Steuerprogramm-Ausführungsschaltung 14.
-
Die Steuerprogramm-Ausführungsschaltung 14 ist durch ein Anweisungsregister 148 zum Speichern einer Anweisung ausgebildet, die von dem Steuerprogrammspeicher 15 gelesen ist, einen Decodierer 149 zum Interpretieren der im Anweisungsregister 148 gespeicherten Anweisung, eine Operationseinheit 141 zum Ausführen von logischen Operationen sowie numerischen Operationen gemäß der interpretierten Anweisung, einem Steuerdaten-Speicherregister 144 zur temporären Speicherung von Steuerdaten, die aus dem Steuerdatenspeicher 16 gelesen sind, einem Register 145, das durch ein Operationsergebnis-Speicherregister 145a zur temporären Speicherung eines Ergebnisses einer Operation, die durch die Operationseinheit 141 gemacht ist, die für logische Operationen sowie numerische Operationen geeignet ist, ausgebildet ist, und ein Arbeitsregister 145b zur Speicherung von einer Operation zu unterziehenden Daten, und ein Steuerdaten-Ausgangsregister 144a zur temporären Speicherung von Ausgangsdaten der Operationseinheit 141.
-
Sie enthält weiterhin einen Komparator 147, der für einen Vergleich zwischen den im Steuerdaten-Speicherregister 144 gespeicherten Steuerdaten und resultierenden Daten einer durch die Operationseinheit 141 durchgeführten Operation geeignet ist, um zu detektieren, ob ein Inhalt der Steuerdaten, die einen Operanden der Operation bilden, nach einer Ausführung der Operation von da an geändert ist oder nicht, und eine Operationssteuerung 142, die durch eine Bussteuerschaltung 142a und eine Operationssteuerschaltung 142b ausgebildet ist und für Steuerungen zum Transferieren des aus dem Steuerdatenspeicher 16 gelesenen Operanden zu dem Steuerdaten-Speicherregister 144 geeignet ist, und zum Schreiben der Ausgangsdaten der Operationseinheit 141 von dem Register 145 über das Steuerdaten-Ausgangsregister 144a zu dem Steuerdatenspeicher 16 in Abhängigkeit von einem Vorhandensein oder Nichtvorhandensein eines Übereinstimmungssignals vom Komparator 147.
-
Nun werden Aktionen der Steuerprogramm-Ausführungsschaltung 14 unter Bezugnahme auf 5 beschrieben, wobei mit IF eine Anweisungsholaktion bezeichnet ist, RD eine Datenleseaktion und WD eine Datenschreibaktion ist.
-
5(a) stellt Aktionen für einen Fall dar, in welchem ein Vergleich durch den Komparator 147 zwischen in dem Steuerdaten-Speicherregister 144 gespeicherten Steuerdaten und resultierenden Daten einer Operation, die von diesem Operanden durch die Operationseinheit 141 ausgeführt ist, ohne Detektion eines Übereinstimmungssignals durchgeführt wird.
-
In diesem Fall werden Aktionen als ein Holen (IF) einer Anweisung und ein Lesen (RD) von Steuerdaten davon und weiter bis zu einem Schreiben (WD) der gelesenen Steuerdaten zu dem Steuerdatenspeicher 16 sequentiell ausgeführt.
-
In dem Fall, in welchem ein Übereinstimmungssignal detektiert wird, wird keine Änderung zwischen den in dem Steuerdaten-Speicherregister 144 gespeicherten Steuerdaten und einer Operationsausgabe der Operationseinheit 141 gefunden, und, wie es durch 5(b) dargestellt ist, bewirkt die Operationssteuerung 142, nachdem die Steuerdaten gelesen sind, eine Steuerung zum Weglassen eines Ausführungszyklus des Schreibens (WD), um eine Schreibanweisung zu dem Steuerdatenspeicher 16 nicht auszuführen.
-
Daher sind unter denjenigen Daten, die aus dem Steuerdatenspeicher 16 gelesen und im Steuerdaten-Speicherregister 144 gespeichert sind, wenn solche Operanden von Anweisungen, um wieder zu dem Steuerdatenspeicher 16 geschrieben zu werden, in resultierenden Daten von Operationen, die durch die Operationseinheit 141 durchgeführt sind, nicht geändert sind, Abänderungen an einer Sequenz von Anweisungen zugelassen, die ihre Schreibanweisungen weglassen, wodurch solche Zeitintervalle, die sonst für unnötige Schreibanweisungen erforderlich gewesen sein könnten, weggeschnitten werden können, um dadurch eine verkürzte Zeit für Operationen in der Steuervorrichtung zuzulassen.
-
(Zweites Ausführungsbeispiel)
-
Nun wird ein zweites Ausführungsbeispiel der vorliegenden Erfindung unter Bezugnahme auf 6 bis 11 beschrieben. Beim zweiten Ausführungsbeispiel sind gleiche Teile wie diejenigen in der Steuervorrichtung 1 des ersten Ausführungsbeispiels mit gleichen Bezugszeichen bezeichnet, was eine Redundanz weglässt.
-
Beim ersten Ausführungsbeispiel wird unter Steuerdaten, die zu einer Ausführung durch die Steuerprogramm-Ausführungsschaltung 14 gehören, nur in einem Fall, in welchem für alle Operanden, die Auftritte eines Lesens und eines Schreibens zu dem Steuerdatenspeicher 16 enthalten, eine Datenübereinstimmung zwischen vor und nach einer Operation auftreten soll, das Schreiben weggelassen. Beim zweiten Ausführungsbeispiel wird weiterhin durch ein Übereinstimmungssignal zwischen Steuerdaten vor und nach einer Operation eine Steuerung eines Transfers von dem Steuerdatenspeicher 16 zu der I/O-Daten-Schnittstelleneinheit 1b und der I/O-Vorrichtung 2 durchgeführt, um einfach die Stelle zu transferieren, wo die Ausgangsdaten geändert sind, um dadurch eine verkürzte Transferzeit von Ausgangsdaten zuzulassen.
-
6 zeigt eine Konfiguration des zweiten Ausführungsbeispiels. Zuerst werden Flüsse von Eingangsdaten und Ausgangsdaten unter Bezugnahme auf 7 beschrieben. Daten, die einen Zustand eines nicht gezeigten zu steuernden Ziels anzeigen, werden, wie es durch Pfeile mit durchgezogener Linie gezeigt ist, von einer I/O-Vorrichtung 2 zu einer I/O-Schnittstelle 17 eingegeben, und dann von der I/O-Schnittstelle 17 zu einem Stapel-I/O-Pufferspeicher 201 einer I/O-Steuerschaltung 20, wo sie gespeichert werden, und von dem Stapel-I/O-Pufferspeicher 201 zu einem Eingangsregister 16a eines Steuerdatenspeichers 16, wo sie durch eine vorgeschriebene Steuerperiode gespeichert werden, die im Voraus bestimmt ist.
-
Weiterhin werden, wie es durch Pfeile mit gestrichelter Linie gezeigt ist, Ausgangsdaten in einer Steuerprogramm-Ausführungsschaltung 14 betrieben bzw. einer Operation unterzogen und werden in einem Ausgangsregister 16b des Steuerdatenspeichers 16 gespeichert, welche dann in dem Stapel-I/O-Pufferspeicher 201 der I/O-Steuerschaltung 20 durch eine vorgeschriebene Steuerperiode gespeichert werden, die im Voraus bestimmt ist, und weiterhin von dem Stapel-I/O-Pufferspeicher 201 über die I/O-Schnittstelle 17 zu der I/O-Vorrichtung 2 ausgegeben werden.
-
Beim zweiten Ausführungsbeispiel ist die I/O-Steuerschaltung 20 so konfiguriert, dass die von dem Ausgangsregister 16b des Steuerdatenspeichers 16 zu sendenden Ausgangsdaten einfach eine Stelle davon, wo diese aktuellen Sendedaten gegenüber vorherigen Sendedaten geändert sind, ausgewählt und im Stapel-I/O-Pufferspeicher 201 gespeichert haben, und diese im Stapel-I/O-Pufferspeicher 201 gespeicherten Ausgangsdaten zu der I/O-Schnittstelle 17 durch eine vorgeschriebene Ausgangsperiode ausgegeben werden, die im Voraus bestimmt ist.
-
Nun wird eine detaillierte Konfiguration der I/O-Steuerschaltung 20 unter Bezugnahme auf 6 beschrieben. Die I/O-Steuerschaltung 20 ist mit dem Stapel-I/O-Pufferspeicher 201 konfiguriert, der zur Speicherung von Ausgangsdaten geeignet ist, und einer Stapel-I/O-Pufferspeichersteuerung 203, die zum Steuern durch ein Vorhandensein oder ein Nichtvorhandensein eines Übereinstimmungssignals, das in der Steuerprogramm-Ausführungsschaltung 14 detektiert ist, geeignet ist, ob die Ausgangsdaten in den Stapel-I/O-Pufferspeicher 201 zu schreiben sind oder nicht.
-
Zusätzlich ist die Stapel-I/O-Pufferspeichersteuerung 203 durch eine Gatterschaltung 203a ausgebildet, die ein Übereinstimmungssignal von der Steuerprogramm-Ausführungsschaltung 14 empfängt und durch ihre Ausgabe eine Speicherung von Ausgangsdaten, die von der Steuerprogramm-Ausführungsschaltung 14 ausgegeben sind, steuert, einen Datenpuffer 203b, der für eine temporäre Speicherung der Ausgangsdaten geeignet ist, einen Datenpuffer 203c, der ein Änderungs-Flag puffert, das einen geänderten Zustand dieses Übereinstimmungssignals anzeigt, d. h. ob Ausgangsdaten eines bestimmten Ausgangsregisters 16b in dem Stapel-I/O-Pufferspeicher 201 gespeichert sind oder nicht, und eine Adresse im Stapel-I/O-Pufferspeicher 201 von Ausgangsdaten, wenn das Übereinstimmungssignal erzeugt wird, und eine Adressen-Steuerschaltung 203d, die die Adresse und Daten der Ausgangsdaten steuert, um in den Stapel-I/O-Pufferspeicher 201 geschrieben zu werden.
-
Die Ausgaben von dem Datenpufferspeicher 203c einer Adresse im Stapel-I/O-Pufferspeicher 201 dieses Änderungs-Flags und Ausgangsdaten beim Auftreten eines Übereinstimmungssignals werden, wie es in 6 gezeigt ist, in einem Änderungsflagregister 16b1 bzw. einem Stapel-I/O-Pufferspeicher-Adressenspeicherbereichsregister 16b2 entsprechend dem Ausgangsregister 16b des Steuerdatenspeichers 16 gespeichert.
-
Nun werden Steueraktionen der Stapel-I/O-Pufferspeichersteuerung 203 beschrieben. In der Stapel-I/O-Pufferspeichersteuerung 203 werden dann, wenn das in der Steuerprogramm-Ausführungsschaltung 14 detektierte Übereinstimmungssignal nicht übereinstimmend ist, später beschriebene Zustände von Aktionen im Änderungsflagregister 16b1 und dem Stapel-I/O-Pufferspeicher-Adressenspeicherbereichsregister 16b2 entsprechend den Ausgangsdaten gespeichert, die in dem Ausgangsregister 16b des Steuerdatenspeichers 16 gespeichert sind.
-
8 zeigt die Zustände des Übereinstimmungssignals und Schreibaktionen. In dem Fall einer Detektion eines Übereinstimmungssignals von ”1” werden keine Schreibsignale von der Stapel-I/O-Pufferspeichersteuerung 203 zu dem Anderungsflagregister 16b1 und dem Stapel-I/O-Pufferspeicher-Adressenspeicherbereichsregister 16b2 ausgegeben.
-
Gegensätzlich dazu werden in dem Fall einer Detektion eines Übereinstimmungssignals von ”0”, das heißt in dem Fall keiner Übereinstimmung, Schreibsignale zu jeweiligen Registern gesendet.
-
9 zeigt Schreibaktionen des Stapel-I/O-Pufferspeichers 201 in dieser Zeitgabe. Die Kombination von Zuständen eines Übereinstimmungssignals und eines Änderungs-Flags hat vier Zustände.
-
In einem Anfangszustand, in welchem das Übereinstimmungssignal ”0” ist und das Änderungs-Flag ”0” ist, werden voreingestellte Anfangswerte in einen Ausgangsregister-Adressenspeicherbereich und einen Ausgangsregister-Datenspeicherbereich geschrieben.
-
Als Nächstes hat in dem Fall, in welchem das Übereinstimmungssignal ”0” ist und das Änderungs-Flag ”1” ist, was anzeigt, dass eine Änderung bei den vorherigen Ausgangsdaten aufgetreten ist, der Ausgangsregister-Adressenspeicherbereich darin eine in der vorherigen Zeit in dem Stapel-I/O-Pufferspeicher-Adressenspeicherbereichsregister 16b2 gespeicherte Adresse extrahiert und wird die extrahierte Adresse von der Adressen-Steuerschaltung 202 zu dem Stapel-I/O-Pufferspeicher 201 geschrieben.
-
Daraufhin wird auf eine Änderung von Ausgangsdaten für das erste Mal, d. h. neben dem Fall eines Übereinstimmungssignals von ”0” und eines Änderungs-Flags von ”0” auch in einem Fall, in welchem Ausgangsdaten eines bestimmten Ausgangsregisters für eine Vielzahl von Malen während einer Ausführung des Programms aktualisiert sind, während Daten wieder geändert worden sind, d. h. in einem Zustand, in welchem das Übereinstimmungssignal ”0” ist und das Änderungs-Flag auf ”1” gesetzt ist, eine Adresse über eine identische Adresse des Stapel-I/O-Pufferspeichers 201 geschrieben, wo sie zu der vorherigen Zeit geschrieben ist.
-
In dem Fall, in welchem das Übereinstimmungssignal ”1” ist und das Änderungs-Flag ”0” ist, und in dem Fall, in welchem das Übereinstimmungssignal ”1” ist und das Änderungs-Flag ”1” ist, d. h. dann, wenn die Ausgangsdaten übereinstimmend sind, ohne Änderungen gegenüber Ausgangsdaten bei der vorherigen Zeit, empfängt dann der Stapel-I/O-Pufferspeicher 201 kein Schreiben von der Adressen-Steuerschaltung 202.
-
Die vorangehenden Steueraktionen werden unter Bezugnahme auf 10 beschrieben, wo mit IF eine Anweisungs-Holaktion bezeichnet ist, RD eine Datenleseaktion ist und WD eine Phase einer Datenschreibaktion ist.
-
10(a) stellt Zustände dar, in welchen die Steuerprogramm-Ausführungsschaltung 14 ein Steuerprogramm gelesen hat (s1) und ein Lesen von Steuerdaten ausgeführt hat (s2, s3, s4), was in einer Detektion eines Übereinstimmungssignals resultiert (s5). In diesem Fall geht, da das Übereinstimmungssignal detektiert ist, der Ablauf durch diese Aktion zum nächsten Programm.
-
10(b) stellt Aktionen der I/O-Steuerschaltung 20 in einem Fall dar, in welchem kein Übereinstimmungssignal detektiert ist (s5).
-
In diesem Fall werden, da das Operationsergebnis unterschiedlich gegenüber der vorherigen Zeit ist, ein Änderungs-Flag (s6) und ein Ausgangsregister-Adressenspeicherbereich (s7) aus dem Steuerdatenspeicher 16 gelesen und wird die gelesene Adresse von der Adressen-Steuerschaltung 202 zu dem Stapel-I/O-Pufferspeicher 201 ausgegeben (s8), wo Daten des Datenpuffers 203b geschrieben werden (s9).
-
11 stellt einen Verkürzungseffekt einer Transferzeit von Eingangsdaten bei dem vorliegenden Ausführungsbeispiel dar, das konfiguriert ist, wie es beschrieben ist. Für Stapel-I/O-Aktionen wird, obwohl bei herkömmlichen Aktionen, wie es in 11(a) dargestellt ist, alle Daten von Ausgangsregistern zu einem Stapel-I/O-Pufferspeicher transferiert werden, nun, wie es durch 11(b) dargestellt ist, ein Transfer auf eine Weise durchgeführt, die zum Ausgeben von Daten von Adressen beschränkt ist, die gegenüber Operationsausgaben in einer vorherigen Steuerperiode geändert sind, was eine Reduzierung ΔTo1 einer Zeit entsprechend einer reduzierten Anzahl von Daten zulässt.
-
Es ist nämlich möglich geworden, zu der I/O-Vorrichtung 2 nicht mehr als diejenigen Steuerdaten auszugeben, von welchen Inhalte durch eine Operation geändert sind, was eine Reduzierung einer erforderlichen Zeit für eine Stapel-I/O ermöglicht, was ein Bereitstellen einer Steuervorrichtung mit einer schnellen I/O-Funktion zulässt, die eine reduzierte Steuerperiode T hat.
-
Es wird angemerkt, dass nicht gezeigte Steuerperioden, um in einer Steuerprogramm-Ausführungseinheit 1a oder einer I/O-Daten-Schnittstelleneinheit 1b im Voraus eingestellt zu werden, synchronisierte identische Steuerperiode oder asynchrone unterschiedliche Steuerperioden sein können, solange sie gut so kurz sind, um eine Steuerfähigkeit zur Verfügung zu stellen, wie es für zu steuernde Ziele nötig ist.
-
(Drittes Ausführungsbeispiel)
-
Nun wird ein drittes Ausführungsbeispiel der vorliegenden Erfindung unter Bezugnahme auf 12 bis 14 beschrieben. Beim dritten Ausführungsbeispiel sind gleiche Teile zu denjenigen in der Steuervorrichtung 1 des in 3 bis 5 gezeigten ersten Ausführungsbeispiels mit gleichen Bezugszeichen bezeichnet, was eine Redundanz weglässt.
-
Beim zweiten Ausführungsbeispiel wird ein Vorhandensein oder Nichtvorhandensein einer Übereinstimmung zwischen einem Operanden vor einer Operation vor einer Anweisungssequenz und Daten nach der Operation zum Steuern des Transfers der Daten von dem Steuerdatenspeicher 16 zu der I/O-Daten-Schnittstelleneinheit 1b und der I/O-Vorrichtung 2 und zum Transferieren von nur geänderten Stellen der Ausgangsdaten dorthin detektiert, was eine reduzierte Transferzeit von Ausgangsdaten zulässt. Beim dritten Ausführungsbeispiel wird ein Vergleich zwischen Eingangsdaten einer vorherigen Zeit und Eingangsdaten einer aktuellen Zeit durchgeführt, damit ein Transfer einfach von geänderten Eingangsdaten unter gesamten Eingangsdaten, um zu dem Steuerdatenspeicher 16 von der I/O-Steuerschaltung 20, die durch durchgezogene Linien in 7 gezeigt ist, durchgeführt wird, um dadurch eine reduzierte Transferzeit zuzulassen.
-
12 zeigt eine Konfiguration des dritten Ausführungsbeispiels. Bei dem dritten Ausführungsbeispiel ist eine I/O-Steuerschaltung 20 mit einem Stapel-I/O-Pufferspeicher 201a konfiguriert, der für Eingangsdaten geeignet ist, die von einer I/O-Schnittstelle 17 gesendet sind, um Eingangsdaten bei einer Ausführung eines Programms in einer vorherigen Steuerperiode und Eingangsdaten auf einer Ausführung eines Programms in einer aktuellen Steuerperiode abwechselnd in unterschiedlichen Speichern gespeichert zu haben, einem Komparator 201, der für einen Vergleich zwischen den aktuellen Eingangsdaten und den vorherigen Eingangsdaten geeignet ist, und einer Eingangsdatensteuerung 206, die für eine temporäre Speicherung von Eingangsdaten geeignet ist, um zu dem Steuerdatenspeicher 16 gemäß einem Vorhandensein oder Nichtvorhandensein eines Übereinstimmungssignals des Komparators 205 transferiert zu werden.
-
Nun wird eine detaillierte Konfiguration der I/O-Steuerschaltung 20 beschrieben. Der Stapel-I/O-Pufferspeicher 201A ist durch ein Paar aus einem Eingangspufferspeicher A 201Aa und einem Eingangspufferspeicher B 201Ab aufgebaut, um mit einer Adresse und Daten von Eingangsdaten verbunden zu sein, die von der I/O-Schnittstelle 17 gesendet sind, wenn sie dazu geeignet sind, durch Anweisungen geschaltet zu werden, um abwechselnd Eingaben durch eine voreingestellte Steuerperiode zu empfangen.
-
Der Komparator 205 ist dazu geeignet, für einen Vergleich von Eingangsdaten, um zu einem Eingangspufferspeicher in der aktuellen Zeit geschrieben zu werden, und Eingangsdaten, die dort in der vorherigen Zeit geschrieben sind, zu lesen, und ein Übereinstimmungssignal zu einer Eingangsdatensteuerung 206 auszugeben, wenn die Eingangsdaten miteinander übereinstimmen.
-
Die Eingangsdatensteuerung 206 ist durch einen Speicher 206a aus einem FIFO-(First-In-First-Out-)System zum sequentiellen Speichern von Eingangsdaten, die von der I/O-Schnittstelle 17 gesendet sind, mit ihren Adressen und Daten in einer entsprechenden Weise und einen Adressenwandler 206b zum Umwandeln von Adressendaten, um in dem Speicher 206a gespeichert zu werden, in eine Schreibadresse des Steuerdatenspeichers 16 aufgebaut.
-
Die Eingangsdatensteuerung 206 ist dazu geeignet, Eingangsdaten in dem Speicher 206a gespeichert zu haben, wenn der Komparator 205 nicht übereinstimmend ist, und nicht mehr als nicht übereinstimmende Eingangsdaten werden durch eine vorgeschriebene Steuerperiode zu dem Steuerdatenspeicher 16 transferiert.
-
13 zeigt ein Zeitdiagramm von solchen Aktionen. In dem Fall, in welchem Schreibdaten (s2) zu dem Eingangspufferspeicher A 201Aa und Lesedaten (s3) von dem Eingangspufferspeicher B 201Ab nicht übereinstimmend sind (s4), wird ein Schreibsignal (s5) von dem Komparator 205 zu dem Speicher 206a ausgegeben, wo die Eingangsdaten geschrieben werden.
-
14 stellt einen Verkürzungseffekt einer Transferzeit von Eingangsdaten beim vorliegenden Ausführungsbeispiel dar, das konfiguriert ist, wie es beschrieben ist. In Bezug auf Transferaktionen innerhalb einer Steuerperiode T von gesamten I/O-Daten in einem in 14(a) dargestellten Stapel-I/O wird nun ein Transfer, wie es durch 14(b) dargestellt ist, einfach von geänderten Eingangsdaten über die I/O-Datensteuerung 206 zu dem Steuerdatenspeicher 16 durchgeführt, was eine Reduzierung ΔTi einer Transferzeit im Vergleich mit einem herkömmlichen Transfer von allen Eingangsdaten von einem Stapel-I/O-Pufferspeicher zulässt.
-
(Viertes Ausführungsbeispiel)
-
Nun wird ein viertes Ausführungsbeispiel der vorliegenden Erfindung unter Bezugnahme auf 15 bis 17 beschrieben. Beim vierten Ausführungsbeispiel sind gleiche Teile zu denjenigen in der Steuervorrichtung 1 des ersten Ausführungsbeispiels, das in 3 bis 5 gezeigt ist, mit gleichen Bezugszeichen bezeichnet, was eine Redundanz weglässt.
-
Beim dritten Ausführungsbeispiel wird durch ein Übereinstimmungssignal, das zwischen Steuerdaten vor einer Operation und Daten nach der Operation genommen ist, der Datentransfer von dem Steuerdatenspeicher 16 zu der I/O-Daten-Schnittstelleneinheit 1b und der I/O-Vorrichtung 2 gesteuert, um nur geänderte Stellen in den Ausgangsdaten zu transferieren, was eine reduzierte Transferzeit von Ausgangsdaten zulässt. Beim vierten Ausführungsbeispiel werden ein Ergebnis einer Steueroperation in einer vorherigen Steuerperiode und ein Ergebnis einer Steueroperation in einer aktuellen Steuerperiode einer Steuerprogramm-Ausführungsschaltung 14 in einem Paar von Ausgangsregistern gespeichert, die für eine abwechselnde Speicherung geeignet sind, und ein Vergleich wird zwischen dem vorherigen Operationsergebnis und dem aktuellen Operationsergebnis durchgeführt, um einfach nicht übereinstimmende Ausgangsdaten zu einem Ausgangspufferspeicher zu schreiben, so dass ein Transfer von einem Steuerdatenspeicher 16 zu einer I/O-Vorrichtung 2 einfach gemacht wird.
-
15 zeigt eine Konfiguration des vierten Ausführungsbeispiels. Beim vierten Ausführungsbeispiel ist der Steuerdatenspeicher 16 mit einem Paar aus einem Ausgangsregister 16e und einem Ausgangsregister 16f konfiguriert, die zum abwechselnden Speichern durch Steuerperioden einer Steueroperationsausgabe der Steuerprogramm-Ausführungsschaltung 14 über einen Systembus 19 geeignet sind.
-
Es wird nun angenommen, dass der Fall beschrieben wird, in welchem ein Bussystem, um mit dem Systembus 19 und einem lokalen Bus 21 konfiguriert zu sein, einfach durch den Systembus 19 aufgebaut ist.
-
Eine I/O-Steuerschaltung 20 ist mit einem Komparator 208 konfiguriert, der zum Lesen geeignet ist, und für einen Vergleich zwischen Eingangsdaten, die in einer aktuellen Zeit zu einem Ausgangsregister geschrieben sind, und Ausgangsdaten, die durch eine Steuerperiode in einer vorherigen Zeit zu dem anderen Ausgangsregister geschrieben sind, eine Ausgangsdatensteuerung 209, die für eine temporäre Speicherung von Ausgangsdaten geeignet ist, die durch eine Ausgabe des Komparators 208 derart beurteilt sind, dass sie gegenüber einer Ausgabe in der Steuerperiode der vorherigen Zeit geändert sind; und einem Stapel-I/O-Pufferspeicher 210, der zur Speicherung von Ausgangsdaten geeignet ist, die in der Ausgangsdatensteuerung 209 gespeichert sind.
-
Nun wird eine detaillierte Konfiguration der Ausgangsdatensteuerung 209 beschrieben. Die Ausgangsdatensteuerung 209 ist durch einen Speicher 209a eines FIFO-Systems zum Speichern von Adressen und Daten von Ausgangsdaten der aktuellen Zeit aufgebaut, die dem Fall entspricht, in welchem Ausgangsdaten, die durch voreingestellte Steuerperioden im Ausgangsregister 16e und im Ausgangsregister 16f gespeichert sind, durch eine Ausgabe des Komparators 208 so beurteilt werden, dass aktuelle Ausgangsdaten und vorherige Ausgangsdaten unterschiedlich (nicht übereinstimmend) voneinander sind, und einen Adressenwandler 209b zum Umwandeln von Adressendaten, um in dem Speicher 209a gespeichert zu werden, in Adressen des Stapel-I/O-Pufferspeichers 210.
-
Anders ausgedrückt werden in dem Fall, in welchem der Komparator 208a eine nicht übereinstimmende Ausgabe hat, Ausgangsdaten im Speicher 209a zu dem Stapel-I/O-Pufferspeicher 210 geschrieben, so dass einfach nicht übereinstimmende Ausgangsdaten von dem Steuerdatenspeicher 16 zu der I/O-Steuerschaltung durch eine vorgeschriebene Steuerperiode transferiert werden.
-
16 zeigt ein Zeitdiagramm von solchen Aktionen. In dem Fall, in welchem Schreibdaten (s2) zu dem Ausgangsregister 16e und Lesedaten (s3) von dem Ausgangsregister 16b durch den Komparator 208 verglichen werden und das Übereinstimmungssignal (s4) nicht übereinstimmend ist, wird ein Schreibsignal (s5) zu dem Speicher 209a ausgegeben, so dass die Ausgangsdaten in den Stapel-I/O-Pufferspeicher 210 geschrieben werden.
-
17 stellt einen Verkürzungseffekt einer Transferzeit von Ausgangsdaten beim vierten Ausführungsbeispiel dar, das konfiguriert ist, wie es beschrieben ist. In Bezug auf Transferaktionen innerhalb einer Steuerperiode T von gesamten I/O-Daten in einer in 17(a) dargestellten Stapel-I/O wird ein Transfer, wie es durch 17(b) dargestellt ist, nun einfach von geänderten Ausgangsdaten von den Ausgangsregistern des Steuerdatenspeichers 16 zu dem Stapel-I/O-Pufferspeicher 210 durchgeführt, was eine Reduzierung ΔTo2 einer Transferzeit zulässt.