DE10196152B3 - Programmierbare Steuervorrichtung - Google Patents
Programmierbare Steuervorrichtung Download PDFInfo
- Publication number
- DE10196152B3 DE10196152B3 DE10196152.9T DE10196152T DE10196152B3 DE 10196152 B3 DE10196152 B3 DE 10196152B3 DE 10196152 T DE10196152 T DE 10196152T DE 10196152 B3 DE10196152 B3 DE 10196152B3
- Authority
- DE
- Germany
- Prior art keywords
- command
- device information
- execution
- pipeline
- ram
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- General Engineering & Computer Science (AREA)
- Programmable Controllers (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Programmierbare Steuervorrichtung, die eine Pipelineverarbeitung von Sequenzprogrammen ausführt, mit
einer ersten Speichereinheit (11), in der Sequenzprogramme, Vorrichtungsinformationen, die gemäß den Sequenzprogrammen verarbeitet werden, und Aufgabeninformationen eines Mikroprozessors (31) gespeichert sind;
einer zweiten Speichereinheit (12), in der Sequenzprogramme, Vorrichtungsinformationen, die gemäß den Sequenzprogrammen verarbeitet werden, und Aufgabeninformationen eines Mikroprozessors (31) gespeichert sind;
einer dritten Speichereinheit (13), die ein Bit, das eine Ausführung/Nicht-Ausführung eines Befehls in einer letzten Abtastung anzeigt, zusammen mit den Sequenzprogrammen speichert;
einem Pipelineregister (21), das Daten eines Sequenzprogramms gemeinsam speichert, wenn alle diese Daten aus der ersten Speichereinheit gelesen wurden;
einem Speichersteuerabschnitt (14), der Datenbusse zwischen dem Pipelineregister (21) und der ersten Speichereinheit (11) verbindet;
einer Auswahleinheit (22a, 22b, 22c), die die erste Speichereinheit (11) oder die zweite Speichereinheit (12), in die die Vorrichtungsinformationen zu schreiben, oder aus der die Vorrichtungsinformationen zu lesen sind, basierend auf dem sequentiell gelesenen Sequenzprogramm auswählt; und
eine Steuereinheit (25), die eine Anforderung zum Lesen oder Schreiben der Vorrichtungsinformationen, eine Anforderung zum Stoppen einer Pipeline und eine Anforderung zum Schreiben des Ausführungs-/Nicht-Ausführungzustands eines Befehls in der letzten Abtastung steuert, wobei
wenn die Sequenzprogramme in die erste Speichereinheit (11) eingegeben wurden, die Steuereinheit (25) so angeordnet ist, dass sie die Verarbeitung, die in dem Pipelineregister (21) während des Lesens oder des Schreibens von Vorrichtungsinformationen durchgeführt wird, unterbricht und das Lesen der Sequenzprogramme bis zum Abschluss des Lesens oder des Schreibens der Vorrichtungsinformationen unterdrückt, wobei
wenn die Sequenzprogramme in die zweite Speichereinheit (12) eingegeben wurden, die Steuereinheit (25) konfiguriert ist zum gleichzeitigen Ausführen von:
Lesen und Schreiben der Vorrichtungsinformationen; und
Lesen der Sequenzprogramme.
einer ersten Speichereinheit (11), in der Sequenzprogramme, Vorrichtungsinformationen, die gemäß den Sequenzprogrammen verarbeitet werden, und Aufgabeninformationen eines Mikroprozessors (31) gespeichert sind;
einer zweiten Speichereinheit (12), in der Sequenzprogramme, Vorrichtungsinformationen, die gemäß den Sequenzprogrammen verarbeitet werden, und Aufgabeninformationen eines Mikroprozessors (31) gespeichert sind;
einer dritten Speichereinheit (13), die ein Bit, das eine Ausführung/Nicht-Ausführung eines Befehls in einer letzten Abtastung anzeigt, zusammen mit den Sequenzprogrammen speichert;
einem Pipelineregister (21), das Daten eines Sequenzprogramms gemeinsam speichert, wenn alle diese Daten aus der ersten Speichereinheit gelesen wurden;
einem Speichersteuerabschnitt (14), der Datenbusse zwischen dem Pipelineregister (21) und der ersten Speichereinheit (11) verbindet;
einer Auswahleinheit (22a, 22b, 22c), die die erste Speichereinheit (11) oder die zweite Speichereinheit (12), in die die Vorrichtungsinformationen zu schreiben, oder aus der die Vorrichtungsinformationen zu lesen sind, basierend auf dem sequentiell gelesenen Sequenzprogramm auswählt; und
eine Steuereinheit (25), die eine Anforderung zum Lesen oder Schreiben der Vorrichtungsinformationen, eine Anforderung zum Stoppen einer Pipeline und eine Anforderung zum Schreiben des Ausführungs-/Nicht-Ausführungzustands eines Befehls in der letzten Abtastung steuert, wobei
wenn die Sequenzprogramme in die erste Speichereinheit (11) eingegeben wurden, die Steuereinheit (25) so angeordnet ist, dass sie die Verarbeitung, die in dem Pipelineregister (21) während des Lesens oder des Schreibens von Vorrichtungsinformationen durchgeführt wird, unterbricht und das Lesen der Sequenzprogramme bis zum Abschluss des Lesens oder des Schreibens der Vorrichtungsinformationen unterdrückt, wobei
wenn die Sequenzprogramme in die zweite Speichereinheit (12) eingegeben wurden, die Steuereinheit (25) konfiguriert ist zum gleichzeitigen Ausführen von:
Lesen und Schreiben der Vorrichtungsinformationen; und
Lesen der Sequenzprogramme.
Description
- TECHNISCHES GEBIET
- Die vorliegende Erfindung bezieht sich auf eine programmierbare Steuervorrichtung umfassend mindestens eine erste Speichereinheit und eine zweite Speichereinheit, die Sequenzprogramme, Vorrichtungsinformation, die für eine Sequenzverarbeitung verwendet wird, und Aufgabeninformation eines Mikroprozessors speichern, und ein Pipelineregister, das Sequenzprogramme aus der ersten Speichereinheit sequenziell liest und verriegelt, um dadurch eine Pipelineverarbeitung der Sequenzprogramme auszuführen. Genauer noch bezieht sich diese Erfindung auf eine programmierbare Steuervorrichtung, die eine Struktur realisieren kann, in der eine Ausführung einer Hochgeschwindigkeitsverarbeitung und eine kompakte/kostengünstige Struktur in der gleichen Hardware möglich ist.
- STAND DER TECHNIK
- Eine programmierbare Steuervorrichtung liest sequenziell Sequenzprogramme, die in einem Sequenzprogrammspeicherabschnitt wie einem RAM gespeichert sind und führt eine Verarbeitung gemäß den gelesenen Sequenzprogrammen aus. Abhängig von Sequenzprogrammen führt die programmierbare Steuervorrichtung Lesen/Schreiben der Vorrichtungsinformation zur Zeit eines Ausführens der Verarbeitung durch.
-
16 ist ein Blockdiagramm, das eine Struktur einer konventionellen allgemeinen programmierbaren Steuervorrichtung zeigt. Das Bezugszeichen47 bezeichnet eine CPU, die eine Sequenzverarbeitung gemäß Sequenzprogrammen ausführt,49 bezeichnet einen RAM, der Sequenzprogramme und Vorrichtungsinformation, die in der Sequenzverarbeitung verwendet wird, speichert und48 bezeichnet einen ROM, in dem Systeminformation der CPU gespeichert ist. - Da die Sequenzprogramme und die Vorrichtungsinformation in dem gleichen RAM gespeichert sind, ist es in der in dieser Zeichnung gezeigten programmierbaren Steuervorrichtung nicht möglich, gleichzeitig das Lesen eines Sequenzprogramms und das Lesen/Schreiben der Vorrichtungsinformation auszuführen. Um deshalb das Lesen/Schreiben der Vorrichtungsinformation auszuführen, ist es notwendig, das Lesen eines Sequenzprogramms zu unterbrechen. Somit gibt es ein Problem dabei, dass die Verarbeitungszeit verlängert wird. Andererseits hat diese programmierbare Steuervorrichtung eine einfache Struktur und hat eine geringe Anzahl von Teilen. Deshalb gibt es einen Vorteil, dass es möglich ist, eine kompakte Hardware bei geringen Kosten zu realisieren.
- Als nächstes wird eine programmierbare Steuervorrichtung erläutert, die in der offengelegten japanischen Patentanmeldung
offen gelegt wird. Gemäß diesem Stand der Technik sind ein RAM, der Sequenzprogramme speichert, und ein RAM, der Vorrichtungsinformation speichert, getrennt, um eine Struktur zu haben, die es möglich macht, auf beide RAMs zur gleichen Zeit zuzugreifen. Basierend darauf wird eine Hochgeschwindigkeitsverarbeitung realisiert.JP 10-198 409 A -
17 ist ein Blockdiagramm, das eine Struktur der obigen programmierbaren Steuervorrichtung des Stands der Technik zeigt. Das Bezugszeichen50 bezeichnet eine CPU, die eine Sequenzverarbeitung gemäß Sequenzprogrammen ausführt,52 bezeichnet einen Sequenzprogramm-RAM, der Sequenzprogramme speichert,53 bezeichnet einen Vorrichtungs-RAM, der Eingabeinformation und Ausgabeinformation speichert, die in der Sequenzverarbeitung verwendet werden, und51 bezeichnet einen ROM, der Systeminformation der CPU speichert. - Gemäß dieser Struktur sind der RAM, der Sequenzprogramme speichert, und der RAM, der Vorrichtungsinformation speichert, getrennt. Wenn deshalb die CPU Sequenzprogramme sequenziell liest, ist es möglich, gleichzeitig das Lesen/Schreiben der Vorrichtungsinformation auszuführen. Folglich ist es beim Ausführen der Verarbeitung durch Lesen/Schreiben von Vorrichtungsinformation basierend auf den Sequenzprogrammen möglich, die parallele Verarbeitung des Lesens eines Sequenzprogramms und des Lesens/Schreibens der Vorrichtungsinformation auszuführen. Da es möglich ist, das Lesen/Schreiben der Vorrichtungsinformation ohne Unterbrechen des Lesens eines Sequenzprogramms auszuführen, ist es möglich, eine Hochgeschwindigkeitsverarbeitung auszuführen. Andererseits wird die Anzahl von RAMs größer als die der obigen konventionellen programmierbaren Steuervorrichtung, und die Anzahl von Datenbussen wird auch größer. Als ein Ergebnis gibt es ein Problem einer Erhöhung der Kosten und einer Vergrößerung der Ausmaße der Hardware.
-
beschreibt ein Datenverarbeitungsgerät, das entsprechend der „von Neumann”-Architektur aufgebaut ist und das demzufolge einen einzelnen Cache-Speicher aufweist, der für Befehle und Daten geeignet ist.GB 2 329 049 A beschreibt darüber hinaus die „Harvard”-Architektur, welche die „von Neumann”-Architektur ersetzt.GB 2 329 049 A - Auch die
stellt die „von Neumann”-Architektur alternativ neben die „Harvard”-Architektur. Eine programmierbare Steuervorrichtung nach „von Neumann”-Architektur ist ebenfalls ausWO 00/25 205 A1 bekannt. Eine programmierbare Steuervorrichtung nach „Harvard”-Architektur ist ebenfalls ausJP 09-022 307 A undJP 07-092 902 A bekannt. Darüber hinaus zeigtJP 10-198 409 A DE 40 03 507 A1 eine Umschaltlogik mit Abfrage, ob ein Speicher vorhanden ist und ob Daten daraus verwendet werden sollen. -
beschreibt ferner eine Programmierbare Steuereinrichtung mit einem Sequenzprogrammspeicher, einem Datenspeicher und einem Pipeline-Register.WO 00/73 863 A1 - In
DE 94 08 298 U1 werden in einem Gesamtsystem sowohl Speicherstrukturen nach der „von Neumann”-Architektur als auch nach der „Harvard”-Architektur realisiert. Diese beiden Systeme sind jedoch alternativ nebeneinander gestellt, ohne dass sie gleichzeitig zum Einsatz kommen oder kommen sollen.DE 198 31 405 A1 beschreibt ferner ein Steuerungssystem mit einer Überwachungseinheit, die die zyklische Datenübertragung an einem Feldbus überwacht und bei Erfüllen einer vorgegebenen Bedingung, zum Beispiel eine Abweichung eingegangener Daten von dem im Speicher abgelegten Daten, die Weiterverarbeitung der am Feldbus eingegangenen Daten veranlaßt. -
DE 195 00 453 A1 beschreibt ferner ein Verfahren zum Optimieren von Daten und/oder Programmteilen für programmierte Steuergeräte, bei dem das Steuergerät einen Flash-EPROM für ein Steuerprogramm sowie einen RAM zur Speicherung variabler Größen aufweist, die während des Programmablaufs berechnet werden.DE 44 43 326 A1 beschreibt ferner eine Speicheranordnung einer Steuereinrichtung mit einem Mikroprozessor, wobei die Speicheranordnung einen Flash-EPROM und einen Datenspeicher als RAM aufweist. - Wie oben erläutert, gibt es zwei Typen von konventionellen programmierbaren Steuervorrichtungen, d. h. (1) eine, die Sequenzprogramme und Vorrichtungsinformation in dem gleichen RAM speichert, und (2) die andere, die Sequenzprogramme und Vorrichtungsinformation jeweils in getrennten RAMs speichert. Beide Typen haben Vorteile und Nachteile. Kein Typ kann jedoch eine preiswerte und kompakte Struktur und eine Struktur zur Hochgeschwindigkeitsverarbeitung in der gleichen Hardware realisieren. Wenn sowohl eine preiswerte und kompakte Struktur als auch eine programmierbare Steuervorrichtung für Hochgeschwindigkeitsverarbeitung notwendig sind, werden zwei Arten von Hardware notwendig.
- Es ist ein Ziel vorliegenden Erfindung, eine programmierbare Steuervorrichtung vorzusehen, die zwei Typen von Strukturen in der gleichen Hardware realisieren kann, das heißt, eine Struktur, die niedrige Kosten und Kompaktheit mit einer reduzierten Anzahl von RAMs durch Teilen eines RAM, der Sequenzprogramme speichert, mit einem RAM, der Vorrichtungsinformation speichert, realisiert, und eine Struktur, die eine Hochgeschwindigkeitsverarbeitung durch die Ausführung von paralleler Verarbeitung des Lesens eines Sequenzprogramms und des Lesens/Schreibens der Vorrichtungsinformation durch Verwendung zweier RAMs realisiert, einem RAM, der Sequenzprogramme speichert, und dem anderen RAM, der Vorrichtungsinformation speichert.
- OFFENLEGUNG DER ERFINDUNG
- Die obige Aufgabe wird durch eine programmierbare Steuervorrichtung gemäß Anspruch 1 gelöst. Vorteilhafte Ausführungsformen ergeben sich aus den Unteransprüchen.
- KURZE BESCHREIBUNG DER ZEICHNUNGEN
-
1 ist ein Blockdiagramm, das eine Struktur einer programmierbaren Steuervorrichtung gemäß dieser Ausführungsform zeigt,2 ist ein erläuterndes Diagramm, das eine Struktur eines Befehlscodes erläutert,3 ist ein erläuterndes Diagramm, das eine Zugriffssteuerung eines Speichersteuerabschnitts auf einen RAM erläutert,4 ist ein Diagramm, das einen Zustand, dass Befehlscodes in einem RAM11 gespeichert sind, und einen Zustand, dass ein Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung für jeden Befehl in einem RAM13 gespeichert ist, zeigt,5 ist ein erläuterndes Diagramm, das Punkte erläutert, in denen Befehlscodes nach Starten einer programmierbaren Steuervorrichtung und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in ein Pipelineregister21c übertragen werden,6 ist ein Diagramm, das ein Beispiel einer Vorrichtungszuweisung zeigt, die in einem Befehl zu verwenden ist,7 ist ein Diagramm, das Befehlscodes zeigt, die in dem RAM11 gespeichert sind,8 ist ein Zeiteinstellungsdiagramm, das die Ausführung von in7 gezeigten Befehlen zeigt, wenn eine Vorrichtung, die einem Bereich eines RAMs12 zugewiesen ist, verwendet wird,9 ist ein Zeiteinstellungsdiagramm, das die Ausführung von in7 gezeigten Befehlen zeigt, wenn eine Vorrichtung, die einem Bereich eines RAMs11 zugewiesen ist, verwendet wird,10 ist ein Zeiteinstellungsdiagramm, das die Ausführung von in7 gezeigten Befehlen zeigt, wenn eine Vorrichtung, die einem Bereich eines RAMs11 zugewiesen ist, verwendet wird, wobei Vorrichtungsinformation, die in einem H/W-Befehl (1) gelesen wird, AUS oder 0 ist,11 ist ein Diagramm, das Befehlscodes zeigt, die in dem RAM11 gespeichert sind,12 ist ein Zeiteinstellungsdiagramm, das die Ausführung von in11 gezeigten Befehlen zeigt, wenn die Vorrichtung, die dem Bereich vom RAM12 zugewiesen ist, verwendet wird, in einer Abtastung, dass ein Kontaktzustand, der in einem Kontaktzustandsspeicherabschnitt24 gespeichert wird, von AUS in EIN geändert wurde,13 ist ein Zeiteinstellungsdiagramm, wenn in einer CPU31 z. B. während einer Pipelineverarbeitung eine Unterbrechung aufgetreten ist und die CPU31 Aufgabeninformation in den RAM11 geschrieben hat,14 ist ein Diagramm, das eine Pipelineverarbeitung zeigt, wenn eine Bedingung zum Ausführen eines S/W-Befehls festgesetzt wurde,15 ist ein erläuterndes Diagramm, das eine Pipelineverarbeitung erläutert, wenn eine Bedingung zum Ausführen eines S/W-Befehls nicht festgesetzt wurde,16 ist ein Blockdiagramm, das eine Struktur einer konventionellen allgemeinen programmierbaren Steuervorrichtung zeigt, und17 ist ein Blockdiagramm, das eine Struktur einer programmierbaren Steuervorrichtung des Stands der Technik zeigt. - BESTER MODUS ZUM AUSFÜHREN DER ERFINDUNG
- Es werden Ausführungsformen der programmierbaren Steuervorrichtung gemäß der vorliegenden Erfindung nachstehend detailliert in Bezug auf die begleitenden Zeichnungen erläutert.
-
1 ist ein Blockdiagramm, das eine Struktur einer programmierbaren Steuervorrichtung gemäß dieser Erfindung zeigt. Diese programmierbare Steuervorrichtung besteht aus einem Speicherschnittstellenabschnitt10 (hierin nachstehend als ein ”Speicher-I/F-Abschnitt” bezeichnet), einem H/W-Befehlsoperationsverarbeitungsabschnitt20 , der einen Befehl in einer Hardware (H/W) verarbeitet, und einem S/W-Befehlsoperationsverarbeitungsabschnitt30 , der einen Befehl in einer Software (S/W) verarbeitet. - Zuerst wird eine Struktur des Speicher-I/F-Abschnitts
10 erläutert. Das Bezugszeichen11 bezeichnet einen RAM, der Sequenzprogramme und Vorrichtungsinformation, die in der Sequenzverarbeitung verwendet werden, speichert, und in dem eine CPU Aufgabeninformation speichert,12 bezeichnet einen RAM, der nur Vorrichtungsinformation speichert, die in der Sequenzverarbeitung verwendet wird, und13 bezeichnet einen RAM, der einen Ausführungs-/Nicht-Ausführungszustand in der letzten Abtastung speichert. - Das Bezugszeichen
14 bezeichnet einen Speichersteuerabschnitt, der den H/W-Befehlsoperationsverarbeitungsabschnitt20 steuert, aus den/in die RAM11 , RAM12 und RAM13 zu lesen/schreiben, und den S/W-Befehlsoperationsverarbeitungsabschnitt30 steuert, aus den/in die RAM11 , RAM12 und RAM13 zu lesen/schreiben, und15 bezeichnet einen Programmzähler, der bei jedem Referenztakt (nicht gezeigt) der Operation des H/W-Befehlsoperationsverarbeitungsabschnitts20 sequenziell erhöht wird. - Als nächstes wird eine Struktur des H/W-Befehlsoperationsverarbeitungsabschnitts
20 erläutert. Das Bezugszeichen21a bezeichnet ein Startregister, das eine Pipelineverarbeitung startet (1)/stoppt (0), und21b bezeichnet ein Pipelineregister (Pipelineregister (0)), das sequenziell Daten niedriger Ordnung von Befehlscodes liest, die in dem RAM gespeichert sind, und die Daten niedriger Ordnung zeitweilig hält. - Das Bezugszeichen
21c bezeichnet ein Pipelineregister (Pipelineregister (1)), das sequenziell Daten niedriger Ordnung eines Befehlscodes, der in dem Pipelineregister21b gehalten wird, Daten hoher Ordnung eines Befehlscodes, der in dem RAM11 gespeichert ist, und einen Ausführungs-/Nicht-Ausführungszustand (1 Bit) in der letzten Abtastung des RAMs13 liest, und das den Befehlscode + 1 Bit Daten hält,21d bezeichnet ein Pipelineregister (Pipelineregister (2)), das den Inhalt des Pipelineregisters21c überträgt, und21e bezeichnet ein Pipelineregister (Pipelineregister (3)), das den Inhalt des Pipelineregisters21d überträgt. - Das Bezugszeichen
21f bezeichnet ein Zustandsregister, das einen Zustand einer Pipelineverarbeitung zeigt (z. B. 0: während des Stoppens einer Pipelineverarbeitung, 1: während der Ausführung einer Pipelineverarbeitung, 2: während des Stoppens einer Pipelineverarbeitung wegen der Ausführung eines S/W-Befehls) und22a bezeichnet eine Dekodierungsschaltung, die Daten decodiert, die in dem Pipelineregister21d gespeichert sind. - Das Bezugszeichen
22b bezeichnet ein Dekodierungsinformationshalteregister (ein Dekodierungsinformationshalteregister (1)), das den Inhalt hält, der durch die Dekodierungsschaltung22a decodiert wird, und22c bezeichnet ein Dekodierungsinformationshalteregister (ein Dekodierungsinformationshalteregister (2)), das den Inhalt des Dekodierungsinformationshalteregisters22b hält. - Das Bezugszeichen
23 bezeichnet ein Eingaberegister, das zeitweilig Vorrichtungsinformation speichert, die aus dem RAM11 oder dem RAM12 gelesen wird,24 bezeichnet einen Kontaktzustandsspeicherabschnitt, der einen Zustand eines Kontaktes hält, und25 bezeichnet einen H/W-Befehlsverarbeitungssteuerabschnitt, der eine Anforderung zum Lesen/Schreiben von Vorrichtungsinformation, eine Anforderung zum Stoppen einer Pipeline und eine Anforderung zum Schreiben des Befehlsausführungs-/Nicht-Ausführungszustands in der letzten Abtastung steuert, die in der Verarbeitung von H/W-Befehlen des RAMs11 und des RAMs12 verwendet werden. - Das Bezugszeichen
26 bezeichnet einen H/W-Befehlsverarbeitungsabschnitt, der eine Bitverarbeitung und eine Wortverarbeitung (eine arithmetische Verarbeitung, eine logische Verarbeitung, eine Übertragung) gemäß der Decodierungsinformation des Dekodierungsinformationshalteregisters22b und des Dekodierungsinformationshalteregisters22c ausführt, und26 bezeichnet einen H/W-Verarbeitungsdatenspeicherabschnitt, der Wortverarbeitungsdaten speichert, die aus dem RAM11 und dem RAM12 gelesen werden. - Es wird nun eine Struktur des S/W-Befehlsoperationsverarbeitungsabschnitts
30 erläutert. Das Bezugszeichen31 bezeichnet eine CPU, die einen Sequenzbefehl verarbeitet, der in dem RAM11 geschrieben wird, wenn dieser Befehl der Befehl ist, der in S/W auszuführen ist, und32 bezeichnet einen System-ROM, in dem der Verarbeitungsinhalt der CPU31 beschrieben ist. - Es wird eine Struktur eines Befehlscodes erläutert.
2 ist ein erläuterndes Diagramm, das eine Struktur eines Befehlscodes erläutert. Wie in der Zeichnung gezeigt, stellen niedere J Bits eine Adresse dar, in der Vorrichtungsinformation gespeichert wird (hierin nachstehend als eine ”Vorrichtungsadresse” bezeichnet), und ein RAM, der zum Lesen/Schreiben von Vorrichtungsinformation zu verwenden ist, wird durch diese Vorrichtungsadresse zugewiesen. - Außerdem stellen höhere K Bits einen Typ eines Befehls dar. Wenn ein Wert eines Bits, das zwischen einem S/W-Befehl und einem H/W-Befehl in dem Befehlscode unterscheidet, 0 ist, handelt es sich um einen H/W-Befehl, und wenn der Wert 1 ist, handelt es sich um einen S/W-Befehl.
- Wenn die Vorrichtungsadresse den RAM
11 zugewiesen hat, wird das Lesen eines Befehlscodes aus dem RAM11 unterbrochen, und es wird Vorrichtungsinformation aus diesem RAM11 gelesen. Diese Funktion wird unter Verwendung von3 erläutert. -
3 ist ein erläuterndes Diagramm, das eine Zugriffssteuerung des Speichersteuerabschnitts14 auf den RAM11 erläutert. Während das Startregister21a 0 ist, verbindet der Speichersteuerabschnitt14 zwischen einem Datenbus des RAMs11 und einem Datenbus der CPU31 . Während das Startregister auf 1 ist, verbindet der Speichersteuerabschnitt14 zwischen dem Pipelineregisterabschnitt21 und dem Datenbus des RAMs11 und liest sequenziell Befehlscodes des RAMs11 . - Während das Pipelinestoppsignal, das von dem Pipelineregisterabschnitt
21 ausgegeben wird, auf 1 ist, maskiert jedoch der Speichersteuerabschnitt14 das Lesesignal eines Befehlscodes. Deshalb wird das Lesen des Befehlscodes aus dem RAM11 unterbrochen. - Wenn eine Anforderung zum Lesen aus dem RAM
11 von dem H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben wurde, werden die Datenbusse des Eingaberegisters23 und des RAMs11 miteinander verbunden und Vorrichtungsinformation wird aus dem RAM11 gelesen und in das Eingaberegister23 gespeichert. Wenn eine Anforderung zum Schreiben in den RAM11 von dem H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben wurde, werden die Datenbusse des H/W-Befehlsverarbeitungsabschnitts26 und des RAMs11 miteinander verbunden und ein Verarbeitungsergebnis wird in den RAM11 geschrieben. - Wenn das Lesen/Schreiben der Vorrichtungsinformation aus dem/in den RAM
11 gemäß dem H/W-Befehl aufgetreten ist, während ein Befehlscode gelesen wird, nachdem die programmierbare Steuervorrichtung gestartet wurde, hat das Lesen/Schreiben der Vorrichtungsinformation eine Priorität und das Lesen/Schreiben der Vorrichtungsinformation wird ausgeführt. -
4 ist ein Diagramm, das einen Zustand, dass Befehlscodes in dem RAM11 gespeichert sind, und einen Zustand, dass ein Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung für jeden Befehl in dem RAM13 gespeichert ist, zeigt. Wie in der Zeichnung gezeigt, ist ein Befehlscode in Daten niedriger Ordnung und Daten hoher Ordnung unterteilt und sie werden in dem RAM11 gespeichert. Der Befehlscode eines H/W-Befehls (1) wird in Adresse 2n und Adresse 2n + 1 des RAMs11 gespeichert. Ferner wird ein Befehlsausführungs-/Nicht-Ausführungszustand des H/W-Befehls (1 ) in der letzten Abtastung in Adresse n des RAMs13 gespeichert. - Wenn eine Operation der programmierbaren Steuervorrichtung gestartet wird (”die programmierbare Steuervorrichtung wurde gestartet”), setzt die CPU
31 verschiedene Arten von Registern und startet oder setzt danach das Startregister21a auf 1, dem Inhalt (nicht gezeigt) folgend, der in dem in1 gezeigten System-ROM32 geschrieben ist. Wenn das Startregister21a auf 1 gesetzt wurde, wird das Pipelinestoppsignal, das von dem Pipelineregisterabschnitt21 ausgegeben wird, 0 und der Programmzähler15 startet das Zählen. - Der Speichersteuerabschnitt
14 verbindet die Datenbusse zwischen dem Pipelineregisterabschnitt21 und dem RAM11 und liest sequenziell Befehlscodes von Adressen, die durch den Programmzähler15 gezeigt werden. Die Adresse, in der der Befehlsausführungs-/Nicht-Ausführungszustand der letzten Abtastung gespeichert ist, wird durch Verschieben des Wertes des Programmzählers15 um ein Bit nach rechts erzeugt. -
5 ist ein erläuterndes Diagramm, das Punkte erläutert, in denen Befehlscodes nach Start der programmierbaren Steuervorrichtung und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c übertragen werden. Der Speichersteuerabschnitt14 liest die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (1) in der Adresse 2n des RAMs11 (der Wert des Programmzählers15 ), gezeigt in4 , und speichert diese Daten in das Pipelineregister21b . Nachdem die Adresse 2n des RAMs11 gelesen wurde, wird der Wert des Programmzählers15 erhöht, um 2n + 1 zu werden. - Als nächstes liest der Speichersteuerabschnitt
14 die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (1) in der Adressen 2n + 1 des RAMs11 und den Ausführungs-/Nicht-Ausführungszustand des H/W-Befehls (1) in der letzten Abtastung in der Adresse n des RAMs13 (der Wert des Programmzählers15 , der um ein Bit nach rechts verschoben wurde) und speichert sie in das Pipelineregister21c zusammen mit den Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (1), der in dem Pipelineregister21b gespeichert ist. Zu dieser Zeit wird der Wert des Programmzählers15 erhöht, um 2n + 2 zu werden. Danach werden in einer ähnlichen Prozedur Befehlscodes und die Ausführungs-/Nicht-Ausführungszustände von Befehlen in der letzten Abtastung in das Pipelineregister21c in der Reihenfolge des H/W-Befehls (2) und des S/W-Befehls (1) gespeichert. - Als nächstes werden die Pipelineverarbeitung eines Befehlscodes, der in das Pipelineregister
21c übertragen wird, und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung unter Verwendung von1 erläutert. Der Speichersteuerabschnitt14 erzeugt ein Signal, das 1 wird, wenn ein Bitwert niedrigster Ordnung des Programmzählers15 0 ist, und das 0 wird, wenn der Bitwert niedrigster Ordnung1 ist (hierin nachstehend als ein ”Ungerade-/Gerade-Entscheidungssignal” zu bezeichnen), und gibt das erzeugte Signal an den Pipelineregisterabschnitt21 aus. Mit anderen Worten, das Ungerade-/Gerade-Entscheidungssignal ist auf 1, wenn die Daten niedriger Ordnung des Befehlscodes gelesen werden, und wird 0, wenn die Daten hoher Ordnung des Befehlscodes gelesen werden. - Wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 ändert, werden der Befehlscode des Pipelineregisters
21c und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21d übertragen. Wenn sich ferner das Ungerade-/Gerade-Entscheidungssignal von 0 auf 1 ändert, werden der Befehlscode des Pipelineregisters21d und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21e übertragen. Wenn von dem Pipelineregisterabschnitt21 an den Speichersteuerabschnitt14 ein Pipelinestoppsignal ausgegeben wurde, ändert sich das Ungerade-/Gerade-Entscheidungssignal nicht, da der Programmzähler15 derart konfiguriert ist, dass er die Erhöhung nicht ausführt. - Wenn sich das Ungerade-/Gerade-Entscheidungssignal nicht ändert, wird der Inhalt des Pipelineregisters
21c , des Pipelineregisters21d und des Pipelineregisters21e nicht aktualisiert. Deshalb wird die Pipelineverarbeitung unterbrochen. Wenn der Befehlscode und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21d gespeichert sind, wird eine Entscheidung getroffen, ob der Befehl ein H/W-Befehl oder ein S/W-Befehl ist, basierend auf dem Bit, das zwischen einem S/W-Befehl und einem H/W-Befehl in dem Befehlscodes unterscheidet. - Wenn das Bit, das zwischen einem S/W-Befehl und einem H/W-Befehl in dem Befehlscode unterscheidet, 1 ist (der S/W-Befehl), wird eine Bedingung zum Ausführen des S/W-Befehls basierend auf dem Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung und dem Kontaktzustand in dem Kontaktzustandsspeicherabschnitt
24 innerhalb des Pipelineregisterabschnitts21 bestimmt. Wenn die Ausführungsbedingung festgesetzt wurde, wird das Startregister21a gestoppt oder auf 0 gesetzt. Während das Startregister21a auf 0 ist, verbleibt das Pipelinestoppsignal auf 1 und deshalb stoppt die Pipelineverarbeitung. - Nachdem die Pipelineverarbeitung gestoppt ist, ändert der Pipelineregisterabschnitt
21 das Zustandsregister21f von 1 auf 2. Die CPU31 überwacht das Zustandsregister21f und bei Betätigung, dass das Zustandsregister21f bei 2 ist, führt die CPU31 die Verarbeitung des S/W-Befehls aus. Nach Ausführen des S/W-Befehls startet oder setzt die CPU31 das Startregister21a auf 1, um dadurch die Pipelineverarbeitung zu starten, die bislang gestoppt war. Wenn sich das Startregister21a auf 1 geändert hat, ändert sich auch das Zustandsregister21f von 2 auf 1. - Die Dekodierungsschaltung
22a decodiert den Befehlscode des Pipelineregisters21d . Basierend auf der Dekodierung der Vorrichtungsadresse durch die Dekodierungsschaltung22a wird entschieden, ob der RAM, der die Vorrichtungsinformation speichert, die in dem Sequenzbefehl zu verwenden ist, der RAM11 oder der RAM12 ist. -
6 ist ein Diagramm, das ein Beispiel einer Vorrichtungszuweisung zeigt, die in einem Befehl zu verwenden ist. Adresse A bis Adresse B der Vorrichtungsadresse bilden einen Bereich für den RAM11 , und Adresse C bis Adresse D bilden einen Bereich für den RAM12 . Angenommen zum Beispiel, es ist eine Vorrichtung W0 dem Bereich des RAMs11 zugewiesen, und es ist eine Vorrichtung D0 dem Bereich des RAMs12 zugewiesen, wie in6 gezeigt. Wenn ein Benutzer die Vorrichtung W0 zur Zeit des Vorbereitens eines Sequenzprogramms verwendet hat, wird dann eine Adresse E in den RAM11 als die Vorrichtungsadresse geschrieben. - Wenn die Vorrichtung D0 verwendet wird, wird ähnlich Adresse F als die Vorrichtungsadresse in den RAM
11 geschrieben. Zur Zeit des Vorbereitens eines Programms, wenn eine Hochgeschwindigkeitsverarbeitung erforderlich ist, kann deshalb der Benutzer die Vorrichtung D0 verwenden, und wenn eine Hochgeschwindigkeitsverarbeitung nicht erforderlich ist, kann der Benutzer die Vorrichtung W0 verwenden. - Wenn die Vorrichtungsadresse den RAM
11 zugewiesen hat (die Adresse A bis zur Adresse B in dem obigen Beispiel), speichert die Dekodierungsschaltung22a eine Stoppzahl einer Pipelineverarbeitung, die notwendig ist, um die Verarbeitung auszuführen, wenn die Vorrichtungsinformation des RAMs11 verwendet wird, Vorhandensein oder Fehlen von Lesen/Schreiben von Vorrichtungsinformation aus dem/in den RAM11 und einen Befehlstyp in das Dekodierungsinformationshalteregister22b als Decodierungsinformation. Da es nicht möglich ist, den Befehlscode zu lesen, wenn Vorrichtungsinformation gelesen/geschrieben wird, wie oben beschrieben, ist es in diesem Beispiel notwendig, das Lesen des Befehlscodes und die Pipelineverarbeitung zu unterbrechen. - Wenn Vorrichtungsinformation aus dem/in den RAM
11 gelesen/geschrieben wird, wird deshalb die Stoppzahl einer Pipeline mindestens 1. Wenn andererseits der Vorrichtungsadresse den RAM12 zugewiesen hat (die Adresse C bis zur Adresse D in dem obigen Beispiel), werden eine Stoppzahl einer Pipelineverarbeitung, die notwendig ist, um die Verarbeitung auszuführen, wenn die Vorrichtungsinformation des RAMs12 verwendet wird, Vorhandensein oder Fehlen von Lesen/Schreiben von Vorrichtungsinformation aus dem/in den RAM12 und ein Befehlstyp in das Dekodierungsinformationshalteregister22b als Decodierungsinformation gespeichert. - Wenn die Decodierungsinformation in das Dekodierungsinformationshalteregister
22b gespeichert wurde, wird die Decodierungsinformation von dem Dekodierungsinformationshalteregister22b an den H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben. Wenn die Vorrichtungsadresse den RAM11 zugewiesen hat, gibt der H/W-Befehlsverarbeitungssteuerabschnitt25 eine Anforderung zum Lesen/Schreiben von Vorrichtungsinformation aus dem/in den RAM11 an den Speichersteuerabschnitt14 aus und gibt eine Anforderung zum Stoppen der Pipeline an den Pipelineregisterabschnitt21 aus. - Bei Empfang der Anforderung zum Stoppen der Pipeline von dem H/W-Befehlsverarbeitungssteuerabschnitt
25 setzt der Pipelineregisterabschnitt21 das Pipelinestoppsignal auf 1, um dadurch die Pipelineverarbeitung zu stoppen. Wenn das Pipelinestoppsignal 1 geworden ist, maskiert der Speichersteuerabschnitt14 das Lesesignal des Befehlscodes und führt die Erhöhung des Programmzählers15 nicht aus. - Wenn der Speichersteuerabschnitt
14 eine Anforderung zum Lesen/Schreiben von Vorrichtungsinformation aus dem/in den RAM11 von dem H/W-Befehlsverarbeitungssteuerabschnitt25 empfangen hat, verbindet der Speichersteuerabschnitt14 die Datenbusse zwischen dem Eingaberegister23 oder dem H/W-Befehlsverarbeitungsabschnitt26 und dem RAM11 und führt das Lesen/Schreiben der Vorrichtungsinformation aus dem/in den RAM11 gemäß dem Sequenzbefehl aus. - Wenn andererseits die Vorrichtungsadresse den RAM
12 zugewiesen hat, gibt der H/W-Befehlsverarbeitungssteuerabschnitt25 eine Anforderung zum Lesen/Schreiben von Vorrichtungsinformation aus dem/in den RAM12 an den Speichersteuerabschnitt14 aus. Wenn der Speichersteuerabschnitt14 die Anforderung zum Lesen/Schreiben aus dem/in den RAM12 von dem H/W-Befehlsverarbeitungssteuerabschnitt25 empfangen hat, führt der Speichersteuerabschnitt14 das Lesen/Schreiben der Vorrichtungsinformation aus dem/in den RAM12 gemäß dem Sequenzbefehl aus, während das Lesen des Befehlscodes aus dem RAM11 ausgeführt wird. - Wenn die Decodierungsinformation in das Dekodierungsinformationshalteregister
22c gespeichert wurde, wird das Befehlstypsignal in dem Dekodierungsinformationshalteregister22c an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, die gelesene Vorrichtungsinformation wird verarbeitet und ein Ergebnis der Verarbeitung wird in den Kontaktzustandsspeicherabschnitt24 , den RAM11 und den RAM12 gespeichert. -
7 ist ein Diagramm, das Befehlscodes zeigt, die in dem RAM11 gespeichert sind. Ein H/W-Befehl (1) ist ein Kontaktbefehl, um Vorrichtungsinformation zu lesen, die in dem RAM11 oder dem RAM12 gespeichert ist, und ein Verarbeitungsergebnis in den Kontaktzustandsspeicherabschnitt24 zu speichern. Ein H/W-Befehl (2) ist ein Datenladebefehl, um Vorrichtungsinformation zu lesen, die in dem RAM11 oder dem RAM12 gespeichert ist, und die gelesene Vorrichtungsinformation in den H/W-Verarbeitungsdatenspeicherabschnitt27 ungeachtet von Kontaktinformation, die in dem Kontaktzustandsspeicherabschnitt24 gespeichert ist, zu speichern. - Ein H/W-Befehl (3) ist ein Befehl für den H/W-Befehlsverarbeitungsabschnitt
26 , die Verarbeitungsdaten, die in dem H/W-Verarbeitungsdatenspeicherabschnitt27 gespeichert sind, zu verarbeiten und ein Verarbeitungsergebnis in die Vorrichtung des RAMs11 oder des RAMs12 zurückzuschreiben, wenn die Kontaktinformation, die in dem Kontaktzustandsspeicherabschnitt24 gespeichert ist, EIN oder 1 ist. -
8 ist ein Zeiteinstellungsdiagramm, das die Ausführung von in7 gezeigten Befehlen zeigt, wenn die Vorrichtung verwendet wird, die dem Bereich des RAMs12 zugewiesen ist (wenn die Vorrichtungsadresse den RAM12 zugewiesen hat). Die Operation, wenn die Vorrichtungsadresse den Bereich des RAMs12 zugewiesen hat, wird unter Verwendung von1 ,7 und8 erläutert. - Der Abschnitt der Periode T1 und T2 zeigt von dem Start der Pipelineverarbeitung bis zur Speicherung eines Befehlscodes und eines Befehlsausführungs-/Nicht-Ausführungszustands in der letzten Abtastung in das Pipelineregister
21c , wie oben beschrieben. Während der Periode T1 werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (1) von der Adresse 2n des RAMs11 gelesen, und während der Periode T2 werden die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (1) von der Adresse 2n + 1 des RAMs11 gelesen. - Der Abschnitt der Periode T3 zeigt, dass der Wert des Programmzählers
15 2n + 2 wird und dass der Befehlscode des H/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c gespeichert wurden. Während dieser Periode werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (2) in der Adresse 2n + 2 des RAMs11 gelesen. - Der Abschnitt der Periode T4 zeigt, dass der Wert des Programmzählers
15 2n + 3 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode des H/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung, die in dem Pipelineregister21c gespeichert sind, in das Pipelineregister21d gespeichert werden. Während dieser Periode wird der Befehlscode des H/W-Befehls (1) durch die Dekodierungsschaltung22a decodiert. Basierend auf der Dekodierung durch die Dekodierungsschaltung22a wird das Befehlstypsignal erzeugt, das den H/W-Befehl (1) anzeigt. - Da die Vorrichtungsadresse den RAM
12 zugewiesen hat, werden ferner die Anforderung des H/W-Befehls (1) zum Lesen von Vorrichtungsinformation aus dem RAM12 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 0 ist, erzeugt. Ferner werden während dieser Periode die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (2) in der Adresse 2n + 3 des RAMs11 gelesen. - Der Abschnitt der Periode T5 zeigt, dass der Wert des Programmzählers
15 2n + 4 wird und dass der Befehlscode des H/W-Befehls (2) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c übertragen werden. Wenn sich das Ungerade-/Gerade-Entscheidungssignal von 0 auf 1 geändert hat, werden der Befehlscode des H/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung, die in dem Pipelineregister21d gespeichert sind, in das Pipelineregister21e gespeichert, und die Decodierungsinformation des H/W-Befehls (1) in der Dekodierungsschaltung22a wird in das Dekodierungsinformationshalteregister22b übertragen. - Wenn die Decodierungsinformation des H/W-Befehls (1) in das Dekodierungsinformationshalteregister
22b übertragen wurde, werden die Anforderung des H/W-Befehls (1) zum Lesen von Vorrichtungsinformation aus dem RAM12 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 0 ist, an den H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben. Da das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 0 ist, von dem Dekodierungsinformationshalteregister22b an den H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben wurde, ist die Pipelinestoppanforderung nicht auf 1 gesetzt und die Pipelineverarbeitung wird nicht unterbrochen. - Der H/W-Befehlsverarbeitungssteuerabschnitt
25 gibt die Anforderung zum Lesen von Vorrichtungsinformation aus dem RAM12 an den Speichersteuerabschnitt14 aus, und der Speichersteuerabschnitt14 liest die Vorrichtungsinformation aus dem RAM12 und speichert sie in das Eingaberegister23 . Während dieser Periode werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (3) in der Adresse 2n + 4 des RAMs11 gelesen. - Der Abschnitt der Periode T6 zeigt, dass der Wert des Programmzählers
15 2n + 5 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode des H/W-Befehls (2) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung, die in dem Pipelineregister21c gespeichert sind, in das Pipelineregister21d gespeichert werden, und die Decodierungsinformation des H/W-Befehls (1) in dem Dekodierungsinformationshalteregister22b in das Dekodierungsinformationshalteregister22c übertragen wird. - Wenn die Decodierungsinformation des H/W-Befehls (1) in das Dekodierungsinformationshalteregister
22c übertragen wurde, wird das Befehlstypsignal, das den H/W-Befehl (1) anzeigt, an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, die Vorrichtungsinformation, die in dem Eingaberegister23 während der Periode T5 gespeichert ist, wird verarbeitet und ein Verarbeitungsergebnis wird in den Kontaktzustandsspeicherabschnitt24 gespeichert. -
8 zeigt ein Beispiel, wo die gelesene Vorrichtungsinformation EIN oder 1 ist, und in diesem Beispiel wird EIN oder 1 in den Kontaktzustandsspeicherabschnitt24 gespeichert. Während dieser Periode wird der Befehlscode des H/W-Befehls (2) durch die Dekodierungsschaltung22a decodiert. Basierend auf der Dekodierung durch die Dekodierungsschaltung22a wird das Befehlstypsignal erzeugt, das den H/W-Befehl (2) anzeigt. - Da die Vorrichtungsadresse den RAM
12 zugewiesen hat, werden die Anforderung des H/W-Befehls (2) zum Lesen von Vorrichtungsinformation aus dem RAM12 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 0 ist, erzeugt. Ferner werden während dieser Periode die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (3) in der Adresse 2n + 5 des RAMs11 gelesen. - Der Abschnitt der Periode T7 zeigt, dass der Wert des Programmzählers
15 2n + 6 wird und dass der Befehlscode des H/W-Befehls (3) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c übertragen werden. Wenn sich das Ungerade-/Gerade-Entscheidungssignal von 0 auf 1 geändert hat, werden der Befehlscode des H/W-Befehls (2) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregister21d in das Pipelineregister21e gespeichert, und die Decodierungsinformation des H/W-Befehls (2) der Dekodierungsschaltung22a in der Dekodierungsschaltung22a wird in das Dekodierungsinformationshalteregister22b übertragen. - Wenn die Decodierungsinformation des H/W-Befehls (2) in das Dekodierungsinformationshalteregister
22b übertragen wurde, werden die Anforderung des H/W-Befehls (2) zum Lesen von Vorrichtungsinformation aus dem RAM12 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 0 ist, an den H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben. Da das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 0 ist, von dem Dekodierungsinformationshalteregister22b an den H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben wurde, ist die Pipelinestoppanforderung nicht auf 1 gesetzt und die Pipelineverarbeitung wird nicht unterbrochen. - Der H/W-Befehlsverarbeitungssteuerabschnitt
25 gibt die Anforderung zum Lesen von Vorrichtungsinformation aus dem RAM12 an den Speichersteuerabschnitt14 aus, und der Speichersteuerabschnitt14 liest die Vorrichtungsinformation aus dem RAM12 und speichert sie in das Eingaberegister23 . Während dieser Periode werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (4) in der Adresse 2n + 6 des RAMs11 gelesen. - Der Abschnitt der Periode T8 zeigt, dass der Wert des Programmzählers
15 2n + 7 wird und dass der Befehlscode des H/W-Befehls (3) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung, die in dem Pipelineregister21c gespeichert sind, in das Pipelineregister21d gespeichert wurden, und die Decodierungsinformation des H/W-Befehls (2) in dem Dekodierungsinformationshalteregister22b in das Dekodierungsinformationshalteregister22c übertragen wurde. - Wenn die Decodierungsinformation des H/W-Befehls (2) in das Dekodierungsinformationshalteregister
22c übertragen wurde, wird das Befehlstypsignal, das den H/W-Befehl (2) anzeigt, an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, die Vorrichtungsinformation, die in dem Eingaberegister23 während der Periode T7 gespeichert wird, wird in den H/W-Verarbeitungsdatenspeicherabschnitt27 gespeichert. Während dieser Periode wird der Befehlscode des H/W-Befehls (3) durch die Dekodierungsschaltung22a decodiert. Basierend auf der Dekodierung durch die Dekodierungsschaltung22a wird das Befehlstypsignal, das den H/W-Befehl (3) anzeigt, erzeugt. - Da die Vorrichtungsadresse den RAM
12 zugewiesen hat, und da auch der Kontaktzustand, der in den Kontaktzustandsspeicherabschnitt24 gespeichert ist, EIN oder 1 ist, ist die Bedingung zum Ausführen des H/W-Befehls (3) festgesetzt. Die Anforderung des H/W-Befehls (3) zum Schreiben von Vorrichtungsinformation in den RAM12 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 0 ist, werden erzeugt. Während dieser Periode werden die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (4) in der Adresse 2n + 7 des RAMs11 gelesen. - Der Abschnitt der Periode T9 zeigt, dass der Wert des Programmzählers
15 2n + 8 wird und dass der Befehlscode des H/W-Befehls (4) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c übertragen werden. Wenn sich das Ungerade-/Gerade-Entscheidungssignal von 0 auf 1 geändert hat, werden der Befehlscode des H/W-Befehls (3) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21d in das Pipelineregister21e gespeichert, und die Decodierungsinformation des H/W-Befehls (3) in der Dekodierungsschaltung22a wird in das Dekodierungsinformationshalteregister22b übertragen. - Wenn die Decodierungsinformation des H/W-Befehls (3) in das Dekodierungsinformationshalteregister
22b übertragen wurde, wird das Befehlstypsignal, das den H/W-Befehl (3) anzeigt, an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, und die Vorrichtungsinformation, die in dem H/W-Verarbeitungsdatenspeicherabschnitt27 während der Periode T8 gespeichert ist, wird durch den H/W-Befehlsverarbeitungsabschnitt26 verarbeitet. Während dieser Periode werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (5) in der Adresse 2n + 8 des RAMs11 gelesen. - Der Abschnitt der Periode T10 zeigt, dass der Wert des Programmzählers
15 2n + 9 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode des H/W-Befehls (4) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21c in das Pipelineregister21d gespeichert werden, und die Decodierungsinformation des H/W-Befehls (3) in dem Dekodierungsinformationshalteregister22b in das Dekodierungsinformationshalteregister22c übertragen wird. - Wenn die Decodierungsinformation des H/W-Befehls (3) in das Dekodierungsinformationshalteregister
22c übertragen wurde, wird das Befehlstypsignal, das den H/W-Befehl (3) anzeigt, an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben. Der H/W-Befehlsverarbeitungsabschnitt26 gibt die Daten, die während der Periode T9 verarbeitet werden, an den Speichersteuerabschnitt14 aus. Der H/W-Befehlsverarbeitungssteuerabschnitt25 gibt eine Anforderung zum Schreiben in den RAM12 während dieser Periode an den Speichersteuerabschnitt14 aus, und der Speichersteuerabschnitt14 schreibt ein Ergebnis einer Verarbeitung des H/W-Befehls (3) in den RAM12 . Während dieser Periode decodiert die Dekodierungsschaltung22a den Befehlscode des H/W-Befehls (4). Während dieser Periode werden die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (5) in der Adresse 2n + 9 des RAMs11 gelesen. -
9 ist ein Zeiteinstellungsdiagramm, das die Ausführung von in7 gezeigten Befehlen zeigt, wenn die Vorrichtung verwendet wird, die dem Bereich des RAMs11 zugewiesen ist (wenn die Vorrichtungsadresse den RAM11 zugewiesen hat). Die Operation, wenn die Vorrichtungsadresse den Bereich des RAMs11 zugewiesen hat, wird unter Verwendung von1 ,7 9 erläutert. - Der Abschnitt der Periode T1 und T2 zeigt von dem Start der Pipelineverarbeitung bis zur Speicherung eines Befehlscodes und eines Befehlsausführungs-/Nicht-Ausführungszustands in der letzten Abtastung in das Pipelineregister
21c , wie oben beschrieben. Während der Periode T1 werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (1) von der Adresse 2n des RAMs11 gelesen, und während der Periode T2 werden die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (1) von der Adresse 2n + 1 des RAMs11 gelesen. - Der Abschnitt der Periode T3 zeigt, dass der Wert des Programmzählers
15 2n + 2 wird und dass der Befehlscode des H/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c gespeichert wurden. Während dieser Periode werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (2) in der Adresse 2n + 2 des RAMs11 gelesen. - Der Abschnitt der Periode T4 zeigt, dass der Wert des Programmzählers
15 2n + 3 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode des H/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21c in das Pipelineregister21d gespeichert werden. Während dieser Periode wird der Befehlscode des H/W-Befehls (1) durch die Dekodierungsschaltung22a decodiert. Basierend auf der Dekodierung durch die Dekodierungsschaltung22a wird das Befehlstypsignal erzeugt, das den H/W-Befehl (1) anzeigt. - Da die Vorrichtungsadresse den RAM
11 zugewiesen hat, werden ferner die Anforderung des H/W-Befehls (1) zum Lesen von Vorrichtungsinformation aus dem RAM11 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 1 ist, erzeugt. Ferner werden während dieser Periode die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (2 ) in der Adresse 2n + 3 des RAMs.11 gelesen. - Der Abschnitt der Periode T5 zeigt, dass der Wert des Programmzählers
15 2n + 4 wird und dass der Befehlscode des H/W-Befehls (2) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c übertragen werden. Wenn sich das Ungerade-/Gerade-Entscheidungssignal von 0 auf 1 geändert hat, werden der Befehlscode des H/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21d in das Pipelineregister21e gespeichert, und die Decodierungsinformation des H/W-Befehls (1) in der Dekodierungsschaltung22a wird in das Dekodierungsinformationshalteregister22b übertragen. - Wenn die Decodierungsinformation des H/W-Befehls (1) in das Dekodierungsinformationshalteregister
22b übertragen wurde, werden die Anforderung des H/W-Befehls (1) zum Lesen von Vorrichtungsinformation aus dem RAM11 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 1 ist, an den H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben. Der H/W-Befehlsverarbeitungssteuerabschnitt25 gibt die Anforderung zum Lesen von Vorrichtungsinformation aus dem RAM11 an den Speichersteuerabschnitt14 aus und setzt die Pipelinestoppanforderung auf 1. - Da die Pipelinestoppanforderung auf 1 ist, setzt der Pipelineregisterabschnitt
21 das Pipelinestoppsignal auf 1. Da das Pipelinestoppsignal auf 1 ist, maskiert der Speichersteuerabschnitt14 das Lesesignal des Befehlscodes und führt die Erhöhung des Programmzählers15 nicht aus. Das Ungerade-/Gerade-Entscheidungssignal ändert sich auch nicht von 1. - Wenn der Speichersteuerabschnitt
14 eine Anforderung zum Lesen/Schreiben aus dem/in den RAM11 von dem H/W-Befehlsverarbeitungssteuerabschnitt15 empfangen hat, verbindet der Speichersteuerabschnitt14 die Datenbusse zwischen dem Eingaberegister23 und dem RAM11 , liest die Vorrichtungsinformation aus dem RAM11 und speichert sie in das Eingaberegister23 . Da sich das Ungerade-/Gerade-Entscheidungssignal nicht von 1 ändert, werden in dem Pipelineregisterabschnitt21 das Pipelineregister21c , das Pipelineregister21d und das Pipelineregister21e nicht aktualisiert. - Die Pipelinestoppanforderung wird zu der Zeiteinstellung auf 1 gesetzt, wenn der Befehlscode und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister
21e übertragen wurden. Der Befehlscode und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung werden in das Pipelineregister21e übertragen, nachdem sich das Ungerade-/Gerade-Entscheidungssignal von 0 auf 1 geändert hat. Mit anderen Worten wird ohne Ausnahme die Pipelinestoppanforderung auf 1 gesetzt und die Pipelineverarbeitung stoppt, nachdem die Daten hoher Ordnung des Befehlscodes gelesen wurden. Die Datenverarbeitung wird nicht unterbrochen, bis ein Befehlscode ein Lesen beendet hat. - Während der Periode T6 ist der Wert des Programmzählers
15 2n + 4 und der Inhalt des Pipelineregisters21c , des Pipelineregisters21d und des Pipelineregisters21e ist seit der Periode T5 nicht geändert. Die Decodierungsinformation des H/W-Befehls (1) in dem Dekodierungsinformationshalteregister22b wurde jedoch in das Dekodierungsinformationshalteregister22c übertragen. - Wenn die Decodierungsinformation des H/W-Befehls (1) in das Dekodierungsinformationshalteregister
22c übertragen wurde, wird das Befehlstypsignal, das den H/W-Befehl (1) anzeigt, an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, die Vorrichtungsinformation, die in dem Eingaberegister23 während der Periode T5 gespeichert ist, wird verarbeitet und ein Verarbeitungsergebnis wird in den Kontaktzustandsspeicherabschnitt24 gespeichert. -
9 zeigt ein Beispiel, wo die gelesene Vorrichtungsinformation EIN oder 1 ist, und in diesem Beispiel wird EIN oder 1 in den Kontaktzustandsspeicherabschnitt24 gespeichert. Während dieser Periode werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (3) in der Adresse 2n + 4 des RAMs11 gelesen. - Der Abschnitt der Periode T7 zeigt, dass der Wert des Programmzählers
15 2n + 5 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode das H/W-Befehls (2) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21c in das Pipelineregister21d gespeichert werden. Während dieser Periode wird der Befehlscode des H/W-Befehls (2) durch die Decodierungsschaltung22a decodiert und das Befehlstypsignal, das den H/W-Befehl (2) anzeigt, wird erzeugt. Da die Vorrichtungsadresse den RAM11 zugewiesen hat, werden ferner die Anforderung des H/W-Befehls (2) zum Lesen von Vorrichtungsinformation aus dem RAM11 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 1 ist, erzeugt. Während dieser Periode werden die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (3) in der Adresse 2n + 5 des RAMs11 gelesen. - Der Abschnitt der Periode T8 zeigt, dass der Wert des Programmzählers
15 2n + 6 wird und dass der Befehlscode des H/W-Befehls (3) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c übertragen werden. Wenn sich das Ungerade-/Gerade-Entscheidungssignal von 0 auf 1 geändert hat, werden der Befehlscode des H/W-Befehls (2) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21d in das Pipelineregister21e gespeichert, und die Decodierungsinformation des H/W-Befehls (2) in der Decodierungsschaltung22a wird in das Dekodierungsinformationshalteregister22b übertragen. - Wenn die Decodierungsinformation des H/W-Befehls (2) in das Dekodierungsinformationshalteregister
22b übertragen wurde, werden die Anforderung des H/W-Befehls (2) zum Lesen von Vorrichtungsinformation aus dem RAM11 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 1 ist, an den H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben. Der H/W-Befehlsverarbeitungssteuerabschnitt25 gibt die Anforderung zum Lesen von Vorrichtungsinformation aus dem RAM11 an den Speichersteuerabschnitt14 aus und setzt die Pipelinestoppanforderung auf 1. - Da die Pipelinestoppanforderung auf 1 ist, setzt der Pipelineregisterabschnitt
21 das Pipelinestoppsignal auf 1. Da das Pipelinestoppsignal auf 1 ist, maskiert der Speichersteuerabschnitt14 das Lesesignal des Befehlscodes und führt die Erhöhung des Programmzählers15 nicht aus. Da sich das Ungerade-/Gerade-Entscheidungssignal nicht von 1 ändert, werden in dem Pipelineregisterabschnitt21 das Pipelineregister21c , das Pipelineregister21d und das Pipelineregister21e nicht aktualisiert. - Wenn der Speichersteuerabschnitt
14 eine Anforderung zum Lesen von Vorrichtungsinformation aus dem RAM11 von dem H/W-Befehlsverarbeitungssteuerabschnitt25 empfangen hat, verbindet der Speichersteuerabschnitt14 die Datenbusse zwischen dem Eingaberegister und dem RAM11 , liest die Vorrichtungsinformation aus dem RAM11 und speichert sie in das Eingaberegister23 . - Während der Periode T9 ist der Wert des Programmzählers
15 2n + 6, und der Inhalt des Pipelineregisters21c , des Pipelineregisters21d und des Pipelineregisters21e hat sich seit der Periode T8 nicht geändert. Die Decodierungsinformation des H/W-Befehls (2) in dem Dekodierungsinformationshalteregister22b wurde jedoch in das Dekodierungsinformationshalteregister22c übertragen. - Wenn die Decodierungsinformation des H/W-Befehls (2) in das Dekodierungsinformationshalteregister
22c übertragen wurde, wird das Befehlstypsignal des H/W-Befehls (2) an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, und die Vorrichtungsinformation, die in dem Eingaberegister während der Periode T8 gespeichert ist, wird in den H/W-Verarbeitungsdatenspeicherabschnitt27 gespeichert. Während dieser Periode werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (4) in der Adresse 2n + 6 des RAMs11 gelesen. - Der Abschnitt der Periode T10 zeigt, dass der Wert des Programmzählers
15 2n + 7 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode des H/W-Befehls (3) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21c in das Pipelineregister21d gespeichert werden. Während dieser Periode wird der Befehlscode des H/W-Befehls (3) durch die Decodierungsschaltung22a decodiert. Basierend auf der Dekodierung durch die Decodierungsschaltung22a wird das Befehlstypsignal des H/W-Befehls (3) erzeugt. - Da die Vorrichtungsadresse den RAM
11 zugewiesen hat, und da auch der Kontaktzustand, der in dem Kontaktzustandsspeicherabschnitt24 gespeichert ist, EIN oder 1 ist, ist die Bedingung zum Ausführen des H/W-Befehls (3) festgesetzt. Die Anforderung zum Schreiben von Vorrichtungsinformation in den RAM11 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 2 ist, werden erzeugt. Während dieser Periode werden die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (4) in der Adresse 2n + 7 des RAMs11 gelesen. - Der Abschnitt der Periode T11 zeigt, dass der Wert des Programmzählers
15 2n + 8 wird und dass der Befehlscode des H/W-Befehls (4) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c übertragen werden. Wenn sich das Ungerade-/Gerade-Entscheidungssignal von 0 auf 1 geändert hat, werden der Befehlscode des H/W-Befehls (3) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21d in das Pipelineregister21e gespeichert, und die Decodierungsinformation des H/W-Befehls (3) in der Decodierungsschaltung22a wird in das Dekodierungsinformationshalteregister22b übertragen. - Wenn die Decodierungsinformation des H/W-Befehls (3) in das Dekodierungsinformationshalteregister
22b übertragen wurde, wird das Befehlstypsignal, das den H/W-Befehl (3) anzeigt, an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, und die Vorrichtungsinformation, die in dem H/W-Verarbeitungsdatenspeicherabschnitt27 während der Periode T10 gespeichert ist, wird durch den H/W-Befehlsverarbeitungsabschnitt26 verarbeitet. Die Anforderung zum Schreiben von Vorrichtungsinformation in den RAM11 und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 2 ist, werden von dem Dekodierungsinformationshalteregister22b an den H/W-Befehlsverarbeitungssteuerabschnitt25 ausgegeben. - Da der H/W-Befehlsverarbeitungssteuerabschnitt
25 das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 2 ist, von dem Dekodierungsinformationshalteregister22b empfangen hat, wird die Pipelinestoppanforderung auf 1 gesetzt. Da die Pipelinestoppanforderung auf 1 ist, setzt der Pipelineregisterabschnitt21 das Pipelinestoppsignal auf 1. Da das Pipelinestoppsignal auf 1 ist, maskiert der Speichersteuerabschnitt14 das Lesesignal des Befehlscodes und führt die Erhöhung des Programmzählers15 nicht aus. - Da sich das Ungerade-/Gerade-Entscheidungssignal nicht von 1 ändert, werden in dem Pipelineregisterabschnitt
21 das Pipelineregister21c , das Pipelineregister21d und das Pipelineregister21e nicht aktualisiert. Da das Pipelinestoppsignal auf 1 ist und auch das Lesesignal des Befehlscodes maskiert wurde, wird während dieser Periode das Lesen des Befehlscodes nicht ausgeführt. Da die Anforderung zum Lesen/Schreiben aus dem/in den RAM11 von dem H/W-Befehlsverarbeitungssteuerabschnitt25 nicht ausgegeben wurde, gibt es keinen Zugriff auf den RAM11 . - Während der Periode T12 ist der Wert des Programmzählers 2n + 8, und der Inhalt des Pipelineregisters
21c , des Pipelineregisters21d und des Pipelineregisters21e hat sich seit der Periode T11 nicht geändert. Die Decodierungsinformation des H/W-Befehls (3) in dem Dekodierungsinformationshalteregister22b wurde jedoch in das Dekodierungsinformationshalteregister22c übertragen. Wenn die Decodierungsinformation des H/W-Befehls (3) in das Dekodierungsinformationshalteregister22c übertragen wurde, wird das Befehlstypsignal des H/W-Befehls (3) an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, und die Daten, die während der Periode T11 verarbeitet werden, werden an den Speichersteuerabschnitt14 ausgegeben. Da das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 2 ist, während der Periode T11 von dem Dekodierungsinformationshalteregister22b ausgegeben wurde, verbleibt die Pipelinestoppanforderung während der Periode T12 ebenfalls auf 1. - Deshalb hält auch der Pipelineregisterabschnitt
21 das Pipelinestoppsignal während der Periode T12 auf 1. Da das Pipelinestoppsignal auf 1 ist, maskiert der Speichersteuerabschnitt14 das Lesesignal des Befehlscodes und der Programmzähler15 führt die Erhöhung nicht aus. - Da sich das Ungerade-/Gerade-Entscheidungssignal nicht von 1 ändert, werden in dem Pipelineregisterabschnitt
21 das Pipelineregister21c , das Pipelineregister21d und das Pipelineregister21e nicht aktualisiert. Da die Anforderung zum Schreiben in den RAM11 während der Periode T11 von dem Dekodierungsinformationshalteregister22b empfangen wurde, gibt der H/W-Befehlsverarbeitungssteuerabschnitt25 die Anforderung zum Schreiben in den RAM11 während dieser Periode an den Speichersteuerabschnitt14 aus. Der Speichersteuerabschnitt14 verbindet die Datenbusse zwischen dem H/W-Befehlsverarbeitungsabschnitt26 und dem RAM11 und schreibt ein Verarbeitungsergebnis des H/W-Befehls (3) in den RAM11 . - Wenn die Decodierungsschaltung
22a den Befehlscode decodiert, der in dem Pipelineregister21d gespeichert ist, wird wie oben beschrieben die Vorrichtungsadresse decodiert. Basierend darauf wird entschieden, welche der Vorrichtungsinformation, die in dem RAM11 und dem RAM12 gespeichert wird, zu verwenden ist. Wenn die Vorrichtungsadresse den Bereich des RAMs12 zugewiesen hat, gibt die Decodierungsschaltung22a das Signal aus, das zeigt, dass die Stoppzahl einer Pipelineverarbeitung 0 ist, im Gegensatz zur Zuweisung des RAMs11 . Deshalb setzt der Pipelineregisterabschnitt21 das Pipelinestoppsignal nicht auf 1. Da das Pipelinestoppsignal nicht auf 1 gesetzt ist, werden das Lesen des Befehlscodes aus dem RAM11 und die Pipelineverarbeitung nicht unterbrochen. Deshalb ist es möglich, das Lesen des Befehlscodes aus dem RAM11 und das Lesen/Schreiben der Vorrichtungsinformation aus dem/in den RAM12 gleichzeitig auszuführen. Als ein Ergebnis ist es möglich, die Verarbeitung bei hoher Geschwindigkeit auszuführen. - Wenn andererseits die Vorrichtungsadresse den Bereich des RAMs
11 zugewiesen hat, werden sowohl das Lesen des Befehlscodes als auch das Lesen/Schreiben der Vorrichtungsinformation aus dem/in den RAM11 ausgeführt. Deshalb ist es während des Lesens/Schreibens der Vorrichtungsinformation notwendig, das Pipelinestoppsignal auf 1 zu setzen und das Lesen des Befehlscodes und die Pipelineverarbeitung zu unterbrechen. Da jedoch der RAM12 nicht verwendet wird, ist es möglich, Kompaktheit und niedrige Kosten durch Vermeiden der Installation des RAMs12 zu realisieren. Ferner ist es in der vorliegenden Ausführungsform möglich, die Verwendung der beiden Typen von Strukturen in der gleichen Hardware durch Ändern der Vorrichtungsadresse zu differenzieren. - Während die Adresse der Schnittstelle zwischen dem RAM
11 und dem RAM12 in der vorliegenden Ausführungsform fixiert ist, ist es ferner auch möglich, die Adresse der Schnittstelle zwischen dem RAM11 und dem RAM12 durch Verwendung eines Registers auszutauschen, um dadurch die Kapazitäten des RAMs11 und des RAMs12 variabel zu machen. Obwohl ein Befehlscode durch Lesen zu zwei Zeiten gelesen wird, ist es ferner auch möglich, die obige Funktion in der Struktur des Lesens des Befehlscodes zu einer Zeit zu realisieren, wodurch der Lesezyklus von Befehlscodes reduziert wird und eine Hochgeschwindigkeitsverarbeitung ausgeführt wird. -
10 ist ein Zeiteinstellungsdiagramm, das die Ausführung von in7 gezeigten Befehlen zeigt, wenn eine Vorrichtung verwendet wird, die einem Bereich eines RAMs11 zugewiesen ist, wobei Vorrichtungsinformation, die in einem H/W-Befehl (1) gelesen wird, AUS oder 0 ist. Die Operation zum Ausführen der in7 gezeigten Befehle, wenn die Vorrichtungsinformation des RAMs11 verwendet wird, wo Vorrichtungsinformation AUS ist, die in dem H/W-Befehl (1) gelesen wird, wird in Bezug auf1 ,7 und10 erläutert. - Die Operation während der Periode T1 bis T9 ist die gleiche wie die, die Bezug auf
9 beschrieben wird. Wenn jedoch der H/W-Befehl (3) durch die Decodierungsschaltung22a während der Periode T10 decodiert wird, ist der Kontaktzustand in dem Kontaktzustandsspeicherabschnitt24 AUS oder 0. Deshalb ist die Bedingung zum Ausführen des H/W-Befehls (3) nicht festgesetzt. Folglich wird der H/W-Befehl (3) nicht ausgeführt, und das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung ist 0, wird von der Decodierungsschaltung22a als die Decodierungsinformation ausgegeben. Die Anforderung zum Schreiben in den RAM11 wird nicht ausgegeben. - Da das Verarbeitungsergebnis nicht in den RAM
11 geschrieben wird, ist das Ergebnis das gleiche wie dass das H/W-Befehl (3) nicht ausgeführt wird. Da das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 0 ist, von dem Dekodierungsinformationshalteregister22b ausgegeben wird, setzt ferner der H/W-Verarbeitungssteuerabschnitt25 die Pipelinestoppanforderung nicht auf 1. Folglich ist das Pipelinestoppsignal nicht auf 1 gesetzt, und der Speichersteuerabschnitt14 maskiert das Lesesignal des Befehlscodes nicht. Als ein Ergebnis wird das Lesen des Befehlscodes nicht unterbrochen, und die Verarbeitungsgeschwindigkeit wird schneller als die während der Ausführung des Befehls. - Wie oben beschrieben, entscheidet die Decodierungsschaltung
22a die Ausführung/Nicht-Ausführung des Befehls basierend auf dem Kontaktzustand, der in dem Kontaktzustandsspeicherabschnitt24 gespeichert wird, und gibt die Anforderung zum Lesen/Schreiben von Vorrichtungsinformation an den Speichersteuerabschnitt als Decodierungsinformation nicht aus. Wenn deshalb die Ausführungsbedingung festgesetzt wurde, wird Vorrichtungsinformation gelesen/geschrieben, und wenn die Ausführungsbedingung nicht festgesetzt wurde, wird Vorrichtungsinformation nicht gelesen/geschrieben. Durch Vermeiden des Lesens/Schreibens der Vorrichtungsinformation des Befehls, das nicht ausgeführt werden muss, gibt es einen Effekt, dass es möglich ist, die Verarbeitungsgeschwindigkeit zu erhöhen, wenn der Befehl nicht ausgeführt wird. -
11 ist ein Diagramm, das Befehlscodes zeigt, die in dem RAM11 gespeichert sind. Ein H/W-Befehl (1) ist ein Kontaktbefehl, um Vorrichtungsinformation zu lesen, die in dem RAM11 oder dem RAM12 gespeichert ist, und ein Verarbeitungsergebnis in den Kontaktzustandsspeicherabschnitt24 zu speichern. Ein H/W-Befehl (2) ist ein Datenladebefehl, um Vorrichtungsinformation zu lesen, die in dem RAM11 oder dem RAM12 gespeichert ist, und die gelesene Vorrichtungsinformation in einen H/W-Verarbeitungsdatenspeicherabschnitt27 ungeachtet von Kontaktinformation, die in dem Kontaktzustandsspeicherabschnitt24 gespeichert ist, zu speichern. - Ein H/W-Befehl (6) ist ein Befehl, um Ausführung/Nicht-Ausführung basierend auf dem Kontaktzustand in dem Kontaktzustandsspeicherabschnitt
15 und dem Ausführungs-/Nicht-Ausführungszustand eines Befehls in der letzten Abtastung des RAMs13 zu bestimmen (die Ausführungsbedingung ist festgesetzt, wenn der Ausführungs-/Nicht-Ausführungszustand eines Befehls in der letzten Abtastung AUS (0) und der Kontaktzustand EIN (1) ist), und den H/W-Befehlsverarbeitungsabschnitt26 anzuweisen, die Verarbeitungsdaten zu verarbeiten, die in dem H/W-Verarbeitungsdatenspeicherabschnitt27 gespeichert sind, und ein Verarbeitungsergebnis in die Vorrichtung des RAMs11 oder des RAMs12 zurückzuschreiben, wenn die Ausführungsbedingung festgesetzt wurde. -
12 ist ein Zeiteinstellungsdiagramm, das die Ausführung von in11 gezeigten Befehlen zeigt, wenn die Vorrichtung verwendet wird, die dem Bereich des RAMs12 zugewiesen ist, in einer Abtastung, dass ein Kontaktzustand, der in dem Kontaktzustandsspeicherabschnitt24 gespeichert ist, sich von AUS (0) auf EIN (1) geändert hat (wenn die Vorrichtungsadresse den RAM12 zugewiesen hat). Die Operation basierend auf dem H/W-Befehl (6) wird unter Verwendung von1 ,11 und12 erläutert. - Der Abschnitt der Periode T8 zeigt, dass der Wert des Programmzählers
15 2n + 7 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode des H/W-Befehls (6) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21c in das Pipelineregister21d gespeichert werden, und die Decodierungsinformation des H/W-Befehls (2) in dem Dekodierungsinformationshalteregister22b in das Dekodierungsinformationshalteregister22c übertragen wird. Während dieser Periode wird der Befehlscode des H/W-Befehls (6) durch die Decodierungsschaltung22a decodiert. - Da der Kontaktzustand, der in dem Kontaktzustandsspeicherabschnitt
24 gespeichert ist, EIN oder 1 ist, und da auch der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung, der von der Adresse n + 2 des RAMs13 zur Zeit der Übertragung des Befehlscodes an das Pipelineregister21c gelesen wird, Nicht-Ausführung oder 0 ist, ist die Bedingung zum Ausführen des H/W-Befehls (6) festgesetzt. Da ferner die Vorrichtungsadresse den RAM12 zugewiesen hat, werden die Anforderung zum Schreiben in den RAM12 , das Signal, das anzeigt, dass die Stoppzahl einer Pipelineverarbeitung 1 ist, und die Anforderung zum Schreiben des Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung ausgegeben. Während dieser Periode werden die Daten hoher Ordnung des Befehlscodes des H/W-Befehls (4) in der Adresse 2n + 7 des RAMs11 gelesen. - Der Abschnitt der Periode T9 zeigt, dass der Wert des Programmzählers
15 2n + 8 wird und dass der Befehlscode des H/W-Befehls (4) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister21c übertragen werden. Wenn sich das Ungerade-/Gerade-Entscheidungssignal von 0 auf 1 geändert hat, werden der Befehlscode des H/W-Befehls (6) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21d in das Pipelineregister21e gespeichert, und die Decodierungsinformation des H/W-Befehls (6) in der Dekodierungsschaltung22a wird in das Dekodierungsinformationshalteregister22b übertragen. - Wenn die Decodierungsinformation des H/W-Befehls (6) in das Dekodierungsinformationshalteregister
22b übertragen wurde, wird das Befehlstypsignal des H/W-Befehls (6) an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, und die Vorrichtungsinformation, die in dem H/W-Verarbeitungsdatenspeicherabschnitt27 während der Periode T8 gespeichert ist, wird durch den H/W-Befehlsverarbeitungsabschnitt26 verarbeitet. - Da das Signal, das zeigt, dass die Stoppzahl einer Pipelineverarbeitung 1 ist, von dem Dekodierungsinformationshalteregister
22b ausgegeben wurde, setzt der H/W-Befehlsverarbeitungssteuerabschnitt25 die Pipelinestoppanforderung auf 1. Da die Pipelinestoppanforderung auf 1 ist, setzt der Pipelineregisterabschnitt21 das Pipelinestoppsignal auf 1. Da das Pipelinestoppsignal auf 1 ist, maskiert der Speichersteuerabschnitt14 das Lesesignal des Befehlscodes und führt die Erhöhung des Programmzählers15 nicht aus. - Da sich das Ungerade-/Gerade-Entscheidungssignal nicht von 1 ändert, werden in dem Pipelineregisterabschnitt
21 das Pipelineregister21c , das Pipelineregister21d und das Pipelineregister21e nicht aktualisiert. - Während der Periode T10 ist der Wert des Programmzählers
15 2n + 8, und der Inhalt des Pipelineregisters21c , des Pipelineregisters21d und des Pipelineregisters21e hat sich seit der Periode T9 nicht geändert. Die Decodierungsinformation des H/W-Befehls (6) in dem Dekodierungsinformationshalteregister22b wurde jedoch in das Dekodierungsinformationshalteregister22c übertragen. Wenn die Decodierungsinformation des H/W-Befehls (6) in das Dekodierungsinformationshalteregister22c übertragen wurde, wird das Befehlstypsignal des H/W-Befehls (6) an den H/W-Befehlsverarbeitungsabschnitt26 ausgegeben, und die Daten, die während der Periode T9 verarbeitet werden, werden an den Speichersteuerabschnitt14 ausgegeben. - Der H/W-Befehlsverarbeitungssteuerabschnitt
25 gibt die Anforderung zum Schreiben in den RAM12 während dieser Periode an den Speichersteuerabschnitt14 aus. Der Speichersteuerabschnitt14 schreibt ein Verarbeitungsergebnis des H/W-Befehls (6) in den RAM12 . Zur gleichen Zeit gibt der H/W-Befehlsverarbeitungssteuerabschnitt25 die Anforderung zum Schreiben des Ausführungs-/Nicht-Ausführungszustands in der letzten Abtastung und an den Speichersteuerabschnitt14 aus. - Wenn es die Anforderung zum Schreiben des Ausführungs-/Nicht-Ausführungszustands in der letzten Abtastung nicht gegeben hat, wird die Adresse in dem RAM
13 durch Verschieben des Werts des Programmzählers15 nach rechts erzeugt. Wenn es jedoch die Anforderung zum Schreiben des Ausführungs-/Nicht-Ausführungszustands in der letzten Abtastung gegeben hat, wird der Kontaktzustand, der in dem Kontaktzustandsspeicherabschnitt24 gespeichert ist, in die Adresse (erzeugt durch Subtrahieren von 2 von dem Wert, der durch Verschieben des Werts des Programmzählers15 nach rechts erhalten wird) des H/W-Befehls (6) in dem RAM13 geschrieben. Während dieser Periode werden die Daten niedriger Ordnung des Befehlscodes des H/W-Befehls (5) aus dem RAM11 gelesen. - Der Abschnitt der Periode T11 zeigt, dass der Wert des Programmzählers
15 2n + 9 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode des H/W-Befehls (4) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21c in das Pipelineregister21d gespeichert werden. Während dieser Periode wird der Befehlscode des H/W-Befehls (5) von der Adresse 2n + 9 in dem RAM11 gelesen. - Da es die Anforderung zum Schreiben des Ausführungs-/Nicht-Ausführungszustands in der letzten Abtastung von dem H/W-Befehlsverarbeitungssteuerabschnitt
25 nicht gegeben hat, erzeugt der Speichersteuerabschnitt14 die Adresse in dem RAM13 durch Verschieben des Werts des Programmzählers15 nach rechts und liest den Ausführungs-/Nicht-Ausführungszustand in der letzten Abtastung von der Adresse n + 4 in dem RAM13 . - Wenn die Bedingung zum Ausführen des H/W-Befehls (6) nicht festgesetzt wurde, wird die Vorrichtungsinformation nicht in den RAM
11 oder den RAM12 geschrieben. Das Pipelinestoppsignal ist jedoch auf 1 gesetzt, um die Pipelineverarbeitung zu unterbrechen, und die Operation zum Speichern des Kontaktzustands in den RAM13 wird ausgeführt. - Wie oben erläutert, wird die Adresse in dem RAM
13 durch Subtrahieren von 2 und durch Verschieben des Werts des Programmzählers15 nach rechts zur Verarbeitungszeit des Befehls erzeugt, der Kontaktzustand in dem Kontaktzustandsspeicherabschnitt24 wird gespeichert und sie werden gemeinsam mit dem Kontaktzustand in der nächsten Abtastung zum Entscheiden der Ausführung/Nicht-Ausführung des Befehls verwendet. Basierend darauf ist es möglich, den Befehl zu verarbeiten, um nur die Abtastung des geänderten Kontaktzustands effizient und bei hoher Geschwindigkeit in H/W auszuführen. - Ferner bestimmt die Decodierungsschaltung
22a die Ausführung/Nicht-Ausführung des Befehls basierend auf dem Kontaktzustand in dem Kontaktzustandsspeicherabschnitt15 und dem Ausführungs-/Nicht-Ausführungszustand eines Befehls in der letzten Abtastung des RAMs13 und gibt die Anforderung zum Lesen/Schreiben von Vorrichtungsinformation an den Speichersteuerabschnitt als Decodierungsinformation nicht aus. Deshalb wird Vorrichtungsinformation während einer Ausführung gelesen/geschrieben, und Vorrichtungsinformation wird während einer Nicht-Ausführung nicht gelesen/geschrieben. Als ein Ergebnis gibt es einen Effekt, dass die Verarbeitungsgeschwindigkeit während Nicht-Ausführung erhöht wird. -
13 ist ein Zeiteinstellungsdiagramm, das ein Beispiel zeigt, wenn eine Unterbrechung in der CPU31 z. B. während einer Pipelineverarbeitung aufgetreten ist, und die CPU31 Aufgabeninformation in den RAM11 geschrieben hat. Wenn die CPU31 versucht, Aufgabeninformation in den RAM11 zu schreiben, gibt die CPU31 das Schreibsignal an den Speichersteuerabschnitt14 aus. - Da das Startregister auf 1 ist (während des Starts der Pipelineverarbeitung), verbindet der Speichersteuerabschnitt
14 die Datenbusse zwischen dem RAM11 und dem Pipelineregisterabschnitt21 . Da die CPU31 nicht in den RAM11 schreiben kann, gibt der Speichersteuerabschnitt14 deshalb ein CPU-Wartesignal an die CPU31 aus. - Wenn andererseits der Pipelineregisterabschnitt
21 das Schreibsignal von der CPU31 empfangen hat, wird die Pipelineverarbeitung gestoppt, nachdem die Daten hoher Ordnung des Befehlscodes gelesen wurden. Wenn die Pipelineverarbeitung gestoppt ist, wird die Verarbeitung bis zu dem Befehl (H/W-Befehl (2)) ausgeführt, der in dem Pipelineregister21d gespeichert ist. - Nach Abschluss des H/W-Befehls (2) verbindet der Speichersteuerabschnitt
14 die Datenbusse zwischen dem RAM11 und der CPU31 , und die Aufgabeninformation der CPU31 wird in den RAM11 geschrieben. Um die Pipelineverarbeitung nach Abschluss der Verarbeitung der CPU31 erneut zu starten, schreibt die CPU31 1 in das Startregister21a . Dadurch stoppt die Pipelineverarbeitung basierend nur auf der Ausgabe der Schreibanforderung, wenn die CPU31 Lesen/Schreiben aus dem/in den RAM11 ausführt. Deshalb kann die Aufgabeninformation eingespart werden, womit die Verarbeitungsgeschwindigkeit erhöht wird. -
14 ist ein Diagramm, das eine Pipelineverarbeitung zeigt, wenn eine Bedingung zum Ausführen eines S/W-Befehls festgesetzt wurde. Die Pipelineverarbeitung, wenn die Ausführungsbedingung nach der Eingabe des Befehlscodes des S/W-Befehls festgesetzt wurde, wird unter Verwendung von1 und14 erläutert. - Der Abschnitt der Periode T6 zeigt, dass der Wert des Programmzählers
15 2n + 5 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode des S/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21c in das Pipelineregister21d gespeichert werden. - Wenn der Befehlscode des S/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister
21d gespeichert wurden, wird die Bedingung zum Ausführen des S/W-Befehls innerhalb des Pipelineregisterabschnitts21 basierend auf dem Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung und dem Kontaktzustand in dem Kontaktzustandsspeicherabschnitt24 bestimmt, da das Bit zum Unterscheiden zwischen dem S/W-Befehl und dem H/W-Befehl in dem Befehlscode1 ist (S/W-Befehl). - Während der Periode T7, wenn die Bedingung zum Ausführen des S/W-Befehls (1) festgesetzt wurde, setzt der Pipelineregisterabschnitt
21 das Startregister21a auf 0 und stoppt die Pipelineverarbeitung. Wenn das Startregister21a auf 0 gesetzt wurde, stellt der Pipelineregisterabschnitt21 2 (während des Stopps einer Pipelineverarbeitung wegen der Ausführung des S/W-Befehls) in das Speicherregister ein. Ferner wird die Anforderung zum Schreiben des Befehlsausführungs-/Nicht-Ausführungszustands in der letzten Abtastung an den Speichersteuerabschnitt14 ausgegeben. - Basierend auf der Anforderung zum Schreiben des Befehlsausführungs-/Nicht-Ausführungszustands in der letzten Abtastung schreibt der Speichersteuerabschnitt
14 den Kontaktzustand, der in dem Kontaktzustandsspeicherabschnitt24 gespeichert ist, in die Adresse (die Adresse, die durch Subtrahieren von 2 von dem Wert erhalten wird, der durch Verschieben des Werts des Programmzählers15 nach rechts erhalten wird), in der der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des S/W-Befehls (1) in dem RAM13 gespeichert ist. - Die CPU
31 überwacht das Zustandsregister21f und startet die Verarbeitung des S/W-Befehls, nachdem bestätigt ist, dass 2 in das Zustandsregister21f eingestellt wurde. Wenn die Verarbeitung des S/W-Befehls beendet wurde, schreibt die CPU31 1 in das Startregister21a und startet die Pipelineverarbeitung erneut. -
15 ist ein erläuterndes Diagramm, das eine Pipelineverarbeitung erläutert, wenn eine Bedingung zum Ausführen eines S/W-Befehls nicht festgesetzt wurde. Die Pipelineverarbeitung, wenn die Ausführungsbedingung nach der Eingabe des Befehlscodes des S/W-Befehls nicht festgesetzt wurde, wird unter Verwendung von1 und15 erläutert. - Der Abschnitt der Periode T6 zeigt, dass der Wert des Programmzählers
15 2n + 5 wird und dass wenn sich das Ungerade-/Gerade-Entscheidungssignal von 1 auf 0 geändert hat, der Befehlscode des S/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung des Pipelineregisters21c in das Pipelineregister21d gespeichert werden. - Wenn der Befehlscode des S/W-Befehls (1) und der Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung in das Pipelineregister
21d gespeichert wurden, wird die Bedingung zum Ausführen des S/W-Befehls innerhalb des Pipelineregisterabschnitts21 basierend auf dem Befehlsausführungs-/Nicht-Ausführungszustand in der letzten Abtastung und dem Kontaktzustand in dem Kontaktzustandsspeicherabschnitt24 bestimmt, da das Bit zum Unterscheiden zwischen dem S/W-Befehl und dem H/W-Befehl indem Befehlscode 1 ist (S/W-Befehl). - Während der Periode T7, wenn die Bedingung zum Ausführen des S/W-Befehls (1) nicht festgesetzt wurde, wird der Kontaktzustand in dem Kontaktzustandsspeicherabschnitt
24 in den RAM13 auf eine ähnliche Weise zu dem geschrieben, wenn die Ausführungsbedingung erfüllt wurde. Während der nächsten Periode T8 wird das Pipelinestoppsignal aufgehoben. Ferner wird das Startregister21a auf 1 gehalten. - Wenn die Bedingung zum Ausführen des S/W-Befehls festgesetzt wurde, wie oben beschrieben, wird die Pipelineverarbeitung gestoppt und die CPU führt die Verarbeitung des S/W-Befehls aus. Nach der Ausführung wird 1 in das Startregister geschrieben und die Pipelineverarbeitung wird erneut gestartet. Wenn andererseits die Ausführungsbedingung nicht festgesetzt wurde, wird nur der Kontaktzustand in den RAM
13 geschrieben und die CPU31 setzt die Pipelineverarbeitung ohne Ausführen der Verarbeitung des S/W-Befehls fort. - Deshalb bestimmt H/W den S/W-Befehl, der nicht ausgeführt werden muss, und die CPU
31 kann eine unnötige Verarbeitung vermeiden. Folglich ist es möglich, eine Hochgeschwindigkeitsverarbeitung des S/W-Befehls auszuführen. Obwohl ein Befehlscode durch Lesen zu zwei Zeiten ausgeführt wird, ist es in der vorliegenden Ausführungsform auch möglich, die obige Funktion in der Struktur des Lesens des Befehlscodes zu einer Zeit zu realisieren, wodurch der Lesezyklus von Befehlscodes reduziert und eine Hochgeschwindigkeitsverarbeitung ausgeführt wird. - Gemäß einem erfindungsgemäßen Aspekt der vorliegenden Erfindung, wie oben beschrieben, wird basierend auf den Sequenzprogrammen ausgewählt, ob die Vorrichtungsinformation aus der/in die erste Speichereinheit oder die zweite Speichereinheit zu lesen/schreiben ist. Es ist derart konfiguriert, dass wenn ein Sequenzprogramm eingegeben wurde, das aus der/in die erste Speichereinheit zu lesen/schreiben ist, eine Steuerung derart ausgeführt wird, dass die Pipelineverarbeitung während des Lesens/Schreibens der Vorrichtungsinformation unterbrochen wird, und das Lesen des Sequenzprogramms bis zum Abschluss des Lesens/Schreibens der Vorrichtungsinformation verboten ist. Wenn ein Sequenzprogramm eingegeben wurde, das aus der/in die zweite Speichereinheit zu lesen/schreiben ist, werden das Lesen/Schreiben der Vorrichtungsinformation und das Lesen eines Sequenzprogramms zur gleichen Zeit ausgeführt. Deshalb ist es nur durch Ändern einer Vorrichtungsadresse möglich, die Verwendung von zwei Typen von Strukturen in der gleichen Hardware zu differenzieren, das heißt, eine Struktur, in der es möglich ist, das Lesen eines Befehlscodes und das Lesen/Schreiben der Vorrichtungsinformation gleichzeitig bei hoher Geschwindigkeit auszuführen, und eine Struktur, die sich durch Kompaktheit und niedrige Kosten auszeichnet, in der die Anzahl von verwendeten Speichern basierend auf einer geteilten Verwendung eines Speichers, der Befehlscodes und Vorrichtungsinformation speichert, reduziert ist.
- Gemäß einem anderen erfindungsgemäßen Aspekt der vorliegenden Erfindung ist das Pipelineregister ein Register, das Daten eines Sequenzprogramms gemeinsam speichert, wenn alle dieser Daten aus der ersten Speichereinheit gelesen wurden. Es ist derart konfiguriert, dass eine Steuerung derart ausgeführt wird, dass das Lesen/Schreiben der Vorrichtungsinformation aus der/in die erste Speichereinheit nicht ausgeführt wird, bis das Lesen der Daten des einen Sequenzprogramms abgeschlossen wurde. Deshalb ist es möglich, das Pipelineregister anzuwenden, um die Daten eines Sequenzprogramms zu einer Vielzahl von Zeiten zu lesen.
- Außerdem ist die programmierbare Steuervorrichtung derart konfiguriert, dass eine dritte Speichereinheit vorgesehen ist, die ein Bit, das Ausführung/Nicht-Ausführung eines Befehls in der letzten Abtastung anzeigt, zusammen mit Sequenzprogrammen speichert. Deshalb ist es möglich, Ausführung/Nicht-Ausführung eines Befehls in einem Befehlsdekodierungsabschnitt durch Verwendung von Ausführung/Nicht-Ausführung eines Befehls in der letzten Abtastung zu bestimmen.
- Darüber hinaus ist die programmierbare Steuervorrichtung derart konfiguriert, dass bei Eingabe eines Befehls, das Lesen/Schreiben der Vorrichtungsinformation auszuführen, das Lesen/Schreiben der Vorrichtungsinformation aus der/in die erste Speichereinheit oder die zweite Speichereinheit ausgeführt wird, wenn eine Ausführungsbedingung basierend auf EIN/AUS eines Kontaktzustands eines Sequenzprogramms unmittelbar zuvor festgesetzt wurde. Das Lesen/Schreiben der Vorrichtungsinformation aus der/in die erste Speichereinheit oder die zweite Speichereinheit wird nicht ausgeführt, wenn eine Ausführungsbedingung nicht festgesetzt wurde. Deshalb ist es möglich, Ausführung/Nicht-Ausführung eines Befehls in einem Befehlsdekodierungsabschnitt gemäß dem EIN/AUS eines Kontakts zu bestimmen. Während einer Nicht-Ausführungszeit wird ein Verarbeitungsergebnis aus einem/in einen Speicher nicht gelesen/geschrieben, wodurch es möglich ist, die Nicht-Ausführungsverarbeitungszeit zu verkürzen.
- Außerdem ist die programmierbare Steuervorrichtung derart konfiguriert, dass bei Eingabe eines Befehls, das Lesen/Schreiben der Vorrichtungsinformation in einer Abtastung, dass ein Kontaktzustand eines Sequenzprogramms sich unmittelbar zuvor geändert hat, auszuführen, eine Steuerung derart ausgeführt wird, dass das Lesen/Schreiben der Vorrichtungsinformation aus der/in die erste Speichereinheit oder die zweite Speichereinheit ausgeführt wird, wenn eine Ausführungsbedingung basierend auf dem Kontaktzustand des Sequenzprogramms unmittelbar zuvor und EIN/AUS eines Bits, das Ausführung/Nicht-Ausführung eines Befehls in der letzten Abtastung anzeigt, festgesetzt wurde. Das Lesen/Schreiben der Vorrichtungsinformation aus der/in die erste Speichereinheit oder die zweite Speichereinheit wird nicht ausgeführt, wenn eine Ausführungsbedingung nicht festgesetzt wurde. Deshalb ist es möglich, Ausführung/Nicht-Ausführung eines Befehls in einem Befehlsdekodierungsabschnitt gemäß dem EIN/AUS eines Kontakts und der Ausführungs-/Nicht-Ausführungsinformation eines Befehls in der letzten Abtastung zu bestimmen. Während einer Nicht-Ausführungszeit wird ein Verarbeitungsergebnis aus einem/in einen Speicher nicht gelesen/geschrieben, wodurch es möglich gemacht wird, die Nicht-Ausführungsverarbeitungszeit zu verkürzen.
- Darüber hinaus ist die programmierbare Steuervorrichtung derart konfiguriert, dass bei Eingabe eines Befehls, der in einer Abtastung, dass ein Kontaktzustand eines Sequenzprogramms sich unmittelbar zuvor geändert hat, auszuführen ist, der Kontaktzustand in die dritte Speichereinheit gespeichert wird. Deshalb kann der Befehl, der in der Abtastung, dass ein Kontaktzustand eines Sequenzprogramms sich unmittelbar zuvor geändert hat, auszuführen ist, bei einer hohen Geschwindigkeit in H/W verarbeitet werden.
- Außerdem ist die programmierbare Steuervorrichtung derart konfiguriert, dass wenn der Mikroprozessor das Lesen/Schreiben aus der/in die erste Speichereinheit oder die zweite Speichereinheit während der Ausführung einer Pipelineverarbeitung basierend auf den Sequenzprogrammen ausführen muss, die Pipelineverarbeitung gestoppt wird und der Mikroprozessor veranlasst wird, das Lesen/Schreiben aus der/in die erste Speichereinheit oder die zweite Speichereinheit zu starten. Wenn die CPU das Lesen/Schreiben aus einem/in einen RAM ausführt, ist es deshalb möglich, nur durch Ausgeben einer Lese-/Schreibanforderung die Pipelineverarbeitung zu stoppen und das Lesen/Schreiben auszuführen. Folglich wird eine Hochgeschwindigkeitsverarbeitung ausgeführt. Wenn ferner eine Unterbrechung in der CPU aufgetreten ist, ist ein exklusiver RAM, um Aufgabeninformation zu speichern, nicht notwendig. Deshalb ist es möglich, niedrige Kosten und Kompaktheit zu realisieren.
- Darüber hinaus ist die programmierbare Steuervorrichtung derart konfiguriert, das zur Zeit vom Ausführen einer S/W-Befehlsverarbeitung die Pipelineverarbeitung gestoppt ist und der Mikroprozessor veranlasst wird, den S/W-Befehl auszuführen, wenn eine Ausführungsbedingung basierend auf einem Kontaktzustand eines Sequenzprogramms unmittelbar zuvor und EIN/AUS eines Bits, das Ausführung/Nicht-Ausführung eines Befehls in der letzten Abtastung anzeigt, festgesetzt wurde, und der Mikroprozessor gesteuert wird, den S/W-Befehl nicht auszuführen, wenn eine Ausführungsbedingung nicht festgesetzt wurde. Deshalb bestimmt H/W einen S/W-Befehl, der nicht ausgeführt werden muss, und unnötige Verarbeitung kann vermieden werden. Folglich ist es möglich, eine Hochgeschwindigkeitsverarbeitung des S/W-Befehls auszuführen.
- Industrielle Anwendbarkeit
- Wie oben erläutert, ist die programmierbare Steuervorrichtung gemäß der vorliegenden Erfindung zum Ausführen der Pipelineverarbeitung von Sequenzprogrammen geeignet, und ist beim Realisieren von niedrigen Kosten, Kompaktheit und Hochgeschwindigkeitsverarbeitung in der gleichen Hardware anwendbar.
Claims (7)
- Programmierbare Steuervorrichtung, die eine Pipelineverarbeitung von Sequenzprogrammen ausführt, mit einer ersten Speichereinheit (
11 ), in der Sequenzprogramme, Vorrichtungsinformationen, die gemäß den Sequenzprogrammen verarbeitet werden, und Aufgabeninformationen eines Mikroprozessors (31 ) gespeichert sind; einer zweiten Speichereinheit (12 ), in der Sequenzprogramme, Vorrichtungsinformationen, die gemäß den Sequenzprogrammen verarbeitet werden, und Aufgabeninformationen eines Mikroprozessors (31 ) gespeichert sind; einer dritten Speichereinheit (13 ), die ein Bit, das eine Ausführung/Nicht-Ausführung eines Befehls in einer letzten Abtastung anzeigt, zusammen mit den Sequenzprogrammen speichert; einem Pipelineregister (21 ), das Daten eines Sequenzprogramms gemeinsam speichert, wenn alle diese Daten aus der ersten Speichereinheit gelesen wurden; einem Speichersteuerabschnitt (14 ), der Datenbusse zwischen dem Pipelineregister (21 ) und der ersten Speichereinheit (11 ) verbindet; einer Auswahleinheit (22a ,22b ,22c ), die die erste Speichereinheit (11 ) oder die zweite Speichereinheit (12 ), in die die Vorrichtungsinformationen zu schreiben, oder aus der die Vorrichtungsinformationen zu lesen sind, basierend auf dem sequentiell gelesenen Sequenzprogramm auswählt; und eine Steuereinheit (25 ), die eine Anforderung zum Lesen oder Schreiben der Vorrichtungsinformationen, eine Anforderung zum Stoppen einer Pipeline und eine Anforderung zum Schreiben des Ausführungs-/Nicht-Ausführungzustands eines Befehls in der letzten Abtastung steuert, wobei wenn die Sequenzprogramme in die erste Speichereinheit (11 ) eingegeben wurden, die Steuereinheit (25 ) so angeordnet ist, dass sie die Verarbeitung, die in dem Pipelineregister (21 ) während des Lesens oder des Schreibens von Vorrichtungsinformationen durchgeführt wird, unterbricht und das Lesen der Sequenzprogramme bis zum Abschluss des Lesens oder des Schreibens der Vorrichtungsinformationen unterdrückt, wobei wenn die Sequenzprogramme in die zweite Speichereinheit (12 ) eingegeben wurden, die Steuereinheit (25 ) konfiguriert ist zum gleichzeitigen Ausführen von: Lesen und Schreiben der Vorrichtungsinformationen; und Lesen der Sequenzprogramme. - Programmierbare Steuervorrichtung nach Anspruch 1, wobei die Steuereinheit (
25 ) ausgebildet ist, das Lesen der Vorrichtungsinformationen aus der ersten Speichereinheit (11 ) oder das Schreiben der Vorrichtungsinformationen in die erste Speichereinheit (11 ) nicht auszuführen, bis das Lesen der Daten des einen Sequenzprogramms abgeschlossen wurde. - Programmierbare Steuervorrichtung nach Anspruch 1, wobei bei Eingabe eines Befehls, das Lesen oder das Schreiben der Vorrichtungsinformationen auszuführen, die Steuereinheit (
25 ) ausgebildet ist: – das Lesen der Vorrichtungsinformationen aus der ersten Speichereinheit (11 ) oder aus der zweiten Speichereinheit (12 ) oder das Schreiben der Vorrichtungsinformationen in die erste Speichereinheit (11 ) oder in die zweite Speichereinheit (12 ) auszuführen, wenn eine Ausführungsbedingung basierend auf einem EIN/AUS-Kontaktzustand eines Sequenzprogramms, gespeichert in einem Kontaktzustandsspeicherabschnitt (24 ), festgesetzt wurde, und – das Lesen der Vorrichtungsinformationen aus der ersten Speichereinheit (11 ) oder der zweiten Speichereinheit (12 ) oder das Schreiben der Vorrichtungsinformationen in die erste Speichereinheit (11 ) oder in die zweite Speichereinheit (12 ) nicht auszuführen, wenn die Ausführungsbedingung nicht festgesetzt wurde. - Programmierbare Steuervorrichtung nach Anspruch 1, wobei bei Eingabe eines Befehls, das Lesen oder das Schreiben der Vorrichtungsinformationen in einer Abtastung auszuführen, bei der sich ein Kontaktzustand eines Sequenzprogramms, gespeichert in einem Kontaktzustandsspeicherabschnitt (
24 ), geändert hat, die Steuereinheit (25 ) ausgebildet ist: – das Lesen der Vorrichtungsinformationen aus der ersten Speichereinheit (11 ) oder aus der zweiten Speichereinheit (12 ) oder das Schreiben der Vorrichtungsinformationen in die erste Speichereinheit (11 ) oder in die zweite Speichereinheit (12 ) auszuführen, wenn eine Ausführungsbedingung basierend auf dem Kontaktzustand des Sequenzprogramms und einem EIN/AUS-Zustand des Bits, das die Ausführung/Nicht-Ausführung eines Befehls in der letzten Abtastung anzeigt, festgesetzt wurde, und – das Lesen der Vorrichtungsinformationen aus der ersten Speichereinheit (11 ) oder aus der zweiten Speichereinheit (12 ) oder das Schreiben der Vorrichtungsinformationen in die erste Speichereinheit (11 ) oder in die zweite Speichereinheit (12 ) nicht auszuführen, wenn die Ausführungsbedingung nicht festgesetzt wurde. - Programmierbare Steuervorrichtung nach Anspruch 1, wobei bei Eingabe eines Befehls, der in einer Abtastung, bei der sich ein Kontaktzustand eines Sequenzprogramms, gespeichert in einem Kontakt zustandsspeicherabschnitt (
24 ), geändert hat, auszuführen ist, die Steuereinheit (25 ) den Kontaktzustand in die dritte Speichereinheit (13 ) speichert. - Programmierbare Steuervorrichtung nach Anspruch 1, wobei die Steuereinheit (
25 ) ausgebildet ist, wenn der Mikroprozessor (31 ) das Lesen aus der ersten Speichereinheit (11 ) oder aus der zweiten Speichereinheit (12 ) oder das Schreiben in die erste Speichereinheit (11 ) oder in die zweite Speichereinheit (12 ) während der Ausführung der Pipelineverarbeitung basierend auf den Sequenzprogrammen auszuführen hat, die Pipelineverarbeitung zu stoppen und den Mikroprozessor (31 ) zu veranlassen, das Lesen aus der ersten Speichereinheit (11 ) oder aus der zweiten Speichereinheit (12 ) oder das Schreiben in die erste Speichereinheit (11 ) oder in die zweite Speichereinheit (12 ) zu starten. - Programmierbare Steuervorrichtung nach Anspruch 1, wobei zur Zeit der Ausführung einer Befehlsverarbeitung die Steuereinheit (
25 ) ausgebildet ist, die Pipelineverarbeitung zu stoppen und den Mikroprozessor (31 ) zu veranlassen: – den Befehl auszuführen, wenn eine Ausführungsbedingung basierend auf einem Kontaktzustand eines Sequenzprogramms, gespeichert in einem Kontaktzustandsspeicherabschnitt (24 ), und einem EIN/AUS-Zustand des Bits, das die Ausführung/Nicht-Ausführung eines Befehls in der letzten Abtastung anzeigt, festgesetzt wurde, und – den Befehl nicht auszuführen, wenn die Ausführungsbedingung nicht festgesetzt wurde.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001-110063 | 2001-04-09 | ||
| JP2001110063A JP4451010B2 (ja) | 2001-04-09 | 2001-04-09 | プログラマブルコントローラ |
| PCT/JP2001/010179 WO2002084421A1 (fr) | 2001-04-09 | 2001-11-21 | Controleur programmable |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| DE10196152T1 DE10196152T1 (de) | 2003-03-13 |
| DE10196152B3 true DE10196152B3 (de) | 2014-11-20 |
Family
ID=18961906
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| DE10196152.9T Expired - Fee Related DE10196152B3 (de) | 2001-04-09 | 2001-11-21 | Programmierbare Steuervorrichtung |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US7076641B2 (de) |
| JP (1) | JP4451010B2 (de) |
| KR (1) | KR100502455B1 (de) |
| DE (1) | DE10196152B3 (de) |
| WO (1) | WO2002084421A1 (de) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7402168B2 (en) * | 2005-04-11 | 2008-07-22 | Xtent, Inc. | Custom-length stent delivery system with independently operable expansion elements |
| JP4640989B2 (ja) * | 2006-01-12 | 2011-03-02 | 株式会社リコー | 画像処理装置及び画像処理制御方法 |
| JP4507125B2 (ja) * | 2007-09-10 | 2010-07-21 | 三菱電機株式会社 | プログラマブルコントローラ |
| KR102250856B1 (ko) * | 2014-04-30 | 2021-05-11 | 삼성전자주식회사 | 터치 입력 검출 방법, 터치 입력 감지 장치, 및 좌표 표시 장치 |
| WO2017099984A1 (en) | 2015-12-11 | 2017-06-15 | Cummins Filtration Ip, Inc. | Filter with variable cross-section axial seal |
Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE4003507A1 (de) * | 1990-02-06 | 1991-08-08 | Bosch Gmbh Robert | Digitales steuergeraet, insbesondere zuend- und/oder einspritzsteuergeraet fuer kraftfahrzeuge |
| DE9408298U1 (de) * | 1994-05-20 | 1994-07-21 | Pietzsch, Rüdiger, 52223 Stolberg | Controller-Board |
| JPH0792902A (ja) * | 1993-09-20 | 1995-04-07 | Hitachi Ltd | プログラマブルコントローラ |
| DE19500453A1 (de) * | 1994-06-16 | 1995-12-21 | Bosch Gmbh Robert | Verfahren zur Optimierung von Daten und/oder Programmteilen für programmierte Steuergeräte und Steuergerät |
| DE4443326A1 (de) * | 1994-12-06 | 1996-06-13 | Merk Gmbh Telefonbau Fried | Speicheranordnung einer Steuereinrichtung mit einem Mikroprozessor |
| JPH0922307A (ja) * | 1995-07-07 | 1997-01-21 | Meidensha Corp | シーケンサ |
| JPH10198409A (ja) * | 1997-01-13 | 1998-07-31 | Meidensha Corp | プログラマブルコントローラ |
| GB2329049A (en) * | 1997-09-09 | 1999-03-10 | Advanced Risc Mach Ltd | A debugger interface unit for identifying selected exceptions |
| DE19831405A1 (de) * | 1998-07-13 | 2000-01-20 | Siemens Ag | Steuerungssystem mit einem Personalcomputer |
| WO2000025205A1 (en) * | 1998-10-28 | 2000-05-04 | Imsys Ab | Controlling access to a primary memory |
| WO2000073863A1 (fr) * | 1999-05-28 | 2000-12-07 | Mitsubishi Denki Kabushiki Kaisha | Module de commande programmable |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2752076B2 (ja) * | 1988-02-23 | 1998-05-18 | 株式会社東芝 | プログラマブル・コントローラ |
| US5724566A (en) * | 1994-01-11 | 1998-03-03 | Texas Instruments Incorporated | Pipelined data processing including interrupts |
| JP3225757B2 (ja) * | 1994-10-24 | 2001-11-05 | 三菱電機株式会社 | プログラマブルコントローラ |
| JPH0923307A (ja) | 1995-07-04 | 1997-01-21 | Fuji Xerox Co Ltd | 画像記録装置 |
| US6021459A (en) * | 1997-04-23 | 2000-02-01 | Micron Technology, Inc. | Memory system having flexible bus structure and method |
-
2001
- 2001-04-09 JP JP2001110063A patent/JP4451010B2/ja not_active Expired - Fee Related
- 2001-11-21 US US10/203,407 patent/US7076641B2/en not_active Expired - Fee Related
- 2001-11-21 KR KR10-2002-7016489A patent/KR100502455B1/ko not_active Expired - Fee Related
- 2001-11-21 DE DE10196152.9T patent/DE10196152B3/de not_active Expired - Fee Related
- 2001-11-21 WO PCT/JP2001/010179 patent/WO2002084421A1/ja not_active Ceased
Patent Citations (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE4003507A1 (de) * | 1990-02-06 | 1991-08-08 | Bosch Gmbh Robert | Digitales steuergeraet, insbesondere zuend- und/oder einspritzsteuergeraet fuer kraftfahrzeuge |
| JPH0792902A (ja) * | 1993-09-20 | 1995-04-07 | Hitachi Ltd | プログラマブルコントローラ |
| DE9408298U1 (de) * | 1994-05-20 | 1994-07-21 | Pietzsch, Rüdiger, 52223 Stolberg | Controller-Board |
| DE19500453A1 (de) * | 1994-06-16 | 1995-12-21 | Bosch Gmbh Robert | Verfahren zur Optimierung von Daten und/oder Programmteilen für programmierte Steuergeräte und Steuergerät |
| DE4443326A1 (de) * | 1994-12-06 | 1996-06-13 | Merk Gmbh Telefonbau Fried | Speicheranordnung einer Steuereinrichtung mit einem Mikroprozessor |
| JPH0922307A (ja) * | 1995-07-07 | 1997-01-21 | Meidensha Corp | シーケンサ |
| JPH10198409A (ja) * | 1997-01-13 | 1998-07-31 | Meidensha Corp | プログラマブルコントローラ |
| GB2329049A (en) * | 1997-09-09 | 1999-03-10 | Advanced Risc Mach Ltd | A debugger interface unit for identifying selected exceptions |
| DE19831405A1 (de) * | 1998-07-13 | 2000-01-20 | Siemens Ag | Steuerungssystem mit einem Personalcomputer |
| WO2000025205A1 (en) * | 1998-10-28 | 2000-05-04 | Imsys Ab | Controlling access to a primary memory |
| WO2000073863A1 (fr) * | 1999-05-28 | 2000-12-07 | Mitsubishi Denki Kabushiki Kaisha | Module de commande programmable |
| DE19983210T1 (de) * | 1999-05-28 | 2001-08-30 | Mitsubishi Electric Corp | Programmierbare Steuereinrichtung |
Also Published As
| Publication number | Publication date |
|---|---|
| US20040024935A1 (en) | 2004-02-05 |
| JP4451010B2 (ja) | 2010-04-14 |
| KR100502455B1 (ko) | 2005-07-20 |
| KR20030007851A (ko) | 2003-01-23 |
| JP2002312005A (ja) | 2002-10-25 |
| WO2002084421A1 (fr) | 2002-10-24 |
| US7076641B2 (en) | 2006-07-11 |
| DE10196152T1 (de) | 2003-03-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE68918754T2 (de) | Datenverarbeitungsgerät mit selektivem Befehlsvorausholen. | |
| DE3750935T2 (de) | Verfahren und System zum Erleichtern der Befehlsausführung in einem digitalen Rechner. | |
| DE69114333T2 (de) | Rechner mit der Fähigkeit mehrere Befehle gleichzeitig auszuführen. | |
| DE3882772T2 (de) | Vektorprozessor angepasst zum Sortieren von Vektordaten. | |
| DE3751164T2 (de) | Datenprozessor mit verschiedenen Unterbrechungsverarbeitungsarten. | |
| DE2714805C2 (de) | ||
| DE68928340T2 (de) | Fliessband-Datenprozessor | |
| DE69231011T2 (de) | Cachespeicher zur Verarbeitung von Befehlsdaten und Datenprozessor mit demselben | |
| DE69032812T2 (de) | Vorrichtung und Verfahren zur parallelen Verarbeitung | |
| DE68928113T2 (de) | Reihenfolgesteuersystem zur Behandlung von Befehlen | |
| DE69331292T2 (de) | Elektronisches Gerät und Verfahren zur festen Informationsmodifikation | |
| DE2715073C3 (de) | Mikroprogrammierte Rechner-Steuervorrichtung | |
| DE68924719T2 (de) | Vorrichtung und Verfahren zur Ausführung eines Unterprogramms in einem Datenverarbeitungssystem mit Blockumschaltung. | |
| DE3942669A1 (de) | Virtuelles maschinensystem | |
| DE19524402C2 (de) | Programmausführungssteuereinrichtung mit einer Adressierbarkeit entsprechend einer M-reihigen Pseudo-Zufallszahlenfolge | |
| DE69130414T2 (de) | Prozessor und Verfahren zur parallelen Verarbeitung | |
| DE4134392C2 (de) | Verfahren und Vorrichtung zum Ungültigmachen von Befehlen in Geräten mit Parallelverarbeitung | |
| DE4216905A1 (de) | Superskalarprozessor | |
| DE69622785T2 (de) | Prozessorunterbrechungssteuerung | |
| DE60127520T2 (de) | Prozessor mit Befehlscache mit niedrigem Stromverbrauch | |
| DE10196152B3 (de) | Programmierbare Steuervorrichtung | |
| DE112004002505T5 (de) | Entkoppeln der Anzahl der logischen Threads von der Anzahl der gleichzeitigen physischen Threads in einem Prozessor | |
| DE10000960C1 (de) | Datenverarbeitungsvorrichtung | |
| DE4328909C2 (de) | Informationsverarbeitungssystem, Informationsprozessor in einem Informationsverarbeitungssystem und Interrupt-Controller in einem Informationsverarbeitungssystem | |
| DE2759120C2 (de) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| OP8 | Request for examination as to paragraph 44 patent law |
Ref document number: 10196152 Country of ref document: DE Date of ref document: 20030313 Kind code of ref document: P |
|
| R016 | Response to examination communication | ||
| R016 | Response to examination communication | ||
| R018 | Grant decision by examination section/examining division | ||
| R084 | Declaration of willingness to licence | ||
| R020 | Patent grant now final | ||
| R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |