DE102004004795B4 - Multiprocessor system and method for operating a multiprocessor system - Google Patents

Multiprocessor system and method for operating a multiprocessor system Download PDF

Info

Publication number
DE102004004795B4
DE102004004795B4 DE200410004795 DE102004004795A DE102004004795B4 DE 102004004795 B4 DE102004004795 B4 DE 102004004795B4 DE 200410004795 DE200410004795 DE 200410004795 DE 102004004795 A DE102004004795 A DE 102004004795A DE 102004004795 B4 DE102004004795 B4 DE 102004004795B4
Authority
DE
Germany
Prior art keywords
memory
processors
code
processor
area
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE200410004795
Other languages
German (de)
Other versions
DE102004004795A1 (en
Inventor
René Dr. Graf
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Siemens AG
Original Assignee
Siemens AG
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Siemens AG filed Critical Siemens AG
Priority to DE200410004795 priority Critical patent/DE102004004795B4/en
Publication of DE102004004795A1 publication Critical patent/DE102004004795A1/en
Application granted granted Critical
Publication of DE102004004795B4 publication Critical patent/DE102004004795B4/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs

Abstract

Verfahren zum Betrieb eines Mehrprozessorsystems mit einer Mehrzahl von Prozessoren (11 bis 14) und mit einem Systemspeicher (25), in dem Code gespeichert ist, der zur Ausführung durch einen der Prozessoren (11 bis 14) vorgesehen ist,
wobei der Systemspeicher (25) in mehrere Speicherbereiche (26 bis 29) unterteilt ist und wobei in jedem Speicherbereich (26 bis 29) ein genau für einen der Prozessoren (11 bis 14) vorgesehener Code enthalten ist,
dadurch gekennzeichnet,
dass der Code Information zur Position der Speicherbereiche (26 bis 29) im Systemspeicher (25) umfasst.
A method of operating a multiprocessor system having a plurality of processors (11 to 14) and a system memory (25) storing code for execution by one of the processors (11 to 14),
wherein the system memory (25) is subdivided into a plurality of memory areas (26 to 29) and wherein in each memory area (26 to 29) a code intended precisely for one of the processors (11 to 14) is contained,
characterized,
in that the code comprises information about the position of the memory areas (26 to 29) in the system memory (25).

Figure 00000001
Figure 00000001

Description

Die Erfindung betrifft ein Verfahren zum Betrieb eines Mehr- oder Multiprozessorsystems. Die Erfindung betrifft ebenfalls das nach dem Verfahren arbeitende Mehr- oder Multiprozessor- system. Die Erfindung bezieht sich vorzugsweise auf ein Mehrprozessorsystem oder ein Verfahren zum Betrieb eines solchen Mehrprozessorsystems, das zur Anwendung im Bereich der Automatisierung technischer Prozesse vorgesehen ist.The The invention relates to a method for operating a multiprocessor or multiprocessor system. The invention also relates to working by the method Multiprocessor or multiprocessor system. The invention preferably relates to a multiprocessor system or a method of operating a Such a multiprocessor system for use in the field of automation technical processes is provided.

Ein Mehr- oder Multiprozessorsystem zeichnet sich im Gegensatz zu einem Einzelprozessorsystem durch eine Mehrzahl von Verarbeitungseinheiten, also Prozessoren, ASICs oder dergleichen, im Folgenden zusammenfassend als Prozessoren bezeichnet, aus. Die einzelnen Prozessoren verarbeiten gleichzeitig einzelne unabhängige Steuerungsprogramme oder unabhängige Teile eines einzelnen Steuerungsprogramms, im Folgenden zusammenfassend ebenfalls als Steuerungsprogramm bezeichnet. Bei der Anwendung des Mehrprozessorsystems zur Automatisierung technischer Prozesse handelt es sich bei dem oder jedem solchen Steuerungsprogramm um ein Programm, das zur Be- und Verarbeitung von Daten aus dem technischen Prozess und zur Ausgabe von Steuerungsbefehlen an den technischen Prozess, etwa zum Ein- oder Ausschalten einzelner Geräte, vorgesehen ist.One Multiprocessor or multiprocessor system stands out in contrast to one Single-processor system by a plurality of processing units, So processors, ASICs or the like, summarizing below referred to as processors. The individual processors process at the same time single independent Control programs or independent Parts of a single control program, summarized below also referred to as a control program. In the application of the It is a multiprocessor system for the automation of technical processes the program or any such control program is a program that for processing and processing data from the technical process and for issuing control commands to the technical process, about to turn on or off of individual devices, is provided.

Das oder jedes Steuerungsprogramm ist in einem dem jeweiligen Prozessor zugeordneten Arbeitsspeicher abgelegt. Des Weiteren ist ein Systemspeicher vorgesehen, in dem einzelne oder mehrere, für die einzelnen Prozessoren vorgesehene Steuerungsprogramme gespeichert sind. Bei dem oder jedem Steuerungsprogramm handelt es sich entweder um ein direkt ausführbares oder um ein noch nicht direkt ausführbares und daher z. B. transformierungsbedürftiges Steuerungsprogramm. Das oder jedes Steuerungsprogramm ist in dem Systemspeicher in einer dauerhaften (remanenten), insbesondere gegen Spannungsverlust geschützten Form gespeichert. Der Systemspeicher ist ein Datenträger in Form eines magnetischen, optischen oder magnetooptischen Speichers (Diskette, CD-ROM oder dergleichen) oder eines Halbleiterspeichers (ROM, PROM, EPROM, EEPROM oder dergleichen). Bevorzugt ist der Systemspeicher als Halbleiterspeicher in Form eines so genannten Flash-Speichers ausgeführt.The or each control program is in a respective processor allocated memory allocated. There is also a system memory provided in the single or multiple, for each processor provided control programs are stored. In the or each Control program is either a directly executable or a not yet directly executable and therefore z. B. transformation-requiring Control program. The or each control program is in the System memory in a permanent (remanent), especially against Voltage loss protected Form saved. The system memory is a disk in the form a magnetic, optical or magneto-optical memory (disk, CD-ROM or the like) or a semiconductor memory (ROM, PROM, EPROM, EEPROM or the like). The system memory is preferred designed as a semiconductor memory in the form of a so-called flash memory.

Zum Ändern oder Aktualisieren (Update) des Steuerungsprogramms ist neben dem Systemspeicher ein Updatemedium erforderlich. Das Updatemedium ist wie der Systemspeicher ein Datenträger in Form eines magnetischen, optischen oder magnetooptischen Speichers (Diskette, CD-ROM oder dergleichen) oder eines Halbleiterspeichers (ROM, PROM, EPROM, EEPROM oder dergleichen). Das Updatemedium enthält das geänderte oder aktualisierte Steuerungsprogramm in codierter Form. Im Folgenden wird daher, auch soweit der Systemspeicher betroffen ist, allgemein von Programmcode oder Code gesprochen. Vom Updatemedium wird der geänderte oder aktualisierte Code in den Systemspeicher und von dort in den Arbeitsspeicher der einzelnen Prozessoren übertragen. Der Transfer des Codes in den Arbeitsspeicher eines einzelnen Prozessors erfolgt dabei derart, dass eine direkte Ausführung des Steuerungsprogramms oder des jeweiligen Abschnitts des Steuerungsprogramms durch den einzelnen Prozessor bei dessen Neustart möglich ist. D. h., bei einem transformierungsbedürftigen Code erfolgt die Transformation, also z. B. die Umwandlung noch nicht direkt ausführbaren Codes in direkt ausführbaren Code, beim Transfer in den Arbeitsspeicher des jeweiligen Prozessors.To change or Updating (updating) the control program is next to system memory an update medium required. The update medium is like the system memory a disk in the form of a magnetic, optical or magneto-optical memory (Floppy disk, CD-ROM or the like) or a semiconductor memory (ROM, PROM, EPROM, EEPROM or the like). The update medium contains the changed or updated control program in coded form. Hereinafter Therefore, even as far as the system memory is concerned, general spoken by program code or code. From the update medium is the modified or updated code in the system store and from there into the Transfer memory of each processor. The transfer of Codes into the memory of a single processor takes place such that a direct execution of the control program or the particular section of the control program by the individual Processor at its restart possible is. In other words, in the case of a code requiring transformation, the transformation takes place. So z. As the conversion is not directly executable code in directly executable Code, when transferring to the memory of the respective processor.

Bekannt sind bisher im Bereich des Anwendungsgebietes der Industrieautomation die folgenden beiden Konzepte für Mehrprozessorsysteme.Known are so far in the field of application of industrial automation the following two concepts for Multiprocessor systems.

Eines der Konzepte ist unter dem Fachbegriff „Tico-Board-Architektur" bekannt. Dabei ist jedem Prozessor ein eigener Systemspeicher in Form eines Flash-Speichers zugeordnet, der zur insbesondere dauerhaften Zwischenspeicherung des Steuerungsprogramms sowie ggf. weiterer Systemsoftware, z. B. der so genannten Firmware, vorgesehen ist. Jeder Prozessor kann nach dem Einschalten direkt aus dem ihm zugeordneten Systemspeicher booten. Er beginnt unmittelbar mit der Abarbeitung des ihm durch Ablegen in dem jeweiligen Systemspeicher zugeordneten Codes. Eine Synchronisation mit den anderen Prozessoren (Nachbarprozessoren) erfolgt zu einem späteren Zeitpunkt.One The concepts are known by the technical term "tico board architecture" Each processor has its own system memory in the form of a flash memory assigned to the particular permanent caching the control program and possibly other system software, eg. B. the so-called firmware, is provided. Each processor can after booting directly from its associated system memory. He begins immediately with the processing of him by dropping in the respective system memory associated codes. A synchronization with the other processors (neighbor processors) takes place to one later Time.

Der Vorteil dieses Konzeptes besteht darin, dass die Generierung der einzelnen Steuerungsprogramme für die jeweiligen Prozessoren unabhängig voneinander erfolgen kann, weil jedem Prozessor ein eigener Systemspeicher zugeordnet ist.Of the The advantage of this concept is that the generation of the individual control programs for the respective processors independently can be done because each processor assigned its own system memory is.

Nachteilig bei diesem Konzept ist neben dem erhöhten Hardwarebedarf jedoch, dass die Größe der einzelnen Systemspeicher festliegt, so dass eine Übertragung geänderten Codes, der die Kapazität des jeweiligen Systemspeichers überschreitet, nicht möglich ist. Des Weiteren muss jeder Prozessor seine Systemsoftware selbst aktualisieren.adversely with this concept, however, in addition to the increased hardware requirements, that the size of each System memory is fixed so that a transmission changed Codes, the capacity of the exceeds the respective system memory, not possible is. Furthermore, each processor must own its system software To update.

Das andere Konzept ist unter der Bezeichnung „Asic-Kern-Architektur" bekannt. Es basiert darauf, dass einer der beteiligten Prozessoren als Hauptprozessor fungiert, der den Code an die verbleibenden Prozessoren verteilt. Die anderen Prozessoren warten darauf, dass die Systemsoftware, also z. B. die Firmware, in deren Arbeitsspeicher kopiert wird, und laufen auf Kommando los, d. h., sie beginnen mit der Abarbeitung der Programmanweisungen in ihrem Arbeitsspeicher.The other concept is known as "Asic Core Architecture." It is based on one of the participating processors acting as the main processor, distributing the code to the remaining processors, while the other processors are waiting for the system software, such B. the firmware, in their memory ko piert, and run on command, that is, they begin to process the program statements in their memory.

Der Vorteil dieses Konzepts besteht darin, dass nur ein remanenter Speicher im System erforderlich ist. Dieser ist für die einzelnen Codeteile aufteilbar. Des Weiteren ist das Update einfach, da nur ein Systemspeicher vom Hauptprozessor neu beschrieben werden muss.Of the Advantage of this concept is that only a retentive memory is required in the system. This can be split up for the individual code parts. Furthermore, the update is easy, since only one system memory from the Main processor must be rewritten.

Der Nachteil dieses Konzeptes besteht darin, dass die Aufteilung des Systemspeichers starr ist, weil der Beginn der einzelnen Speicherbereiche im Systemspeicher bekannt sein muss, damit der Hauptprozessor für jeden Prozessor auf den diesem zugeordneten Code zugreifen kann.Of the Disadvantage of this concept is that the division of the System memory is rigid because of the beginning of each memory area must be known in the system memory so that the main processor for each Processor can access the associated code.

Aus der EP 1 126 369 A2 ist ein Mehrprozessorsystem mit einer Vielzahl von Prozessoren bekannt. Dort sind Maßnahmen vorgesehen, welche den gleichzeitigen Betrieb mehrerer Betriebssysteme ermöglichen.From the EP 1 126 369 A2 is a multiprocessor system with a variety of processors known. There measures are provided, which allow the simultaneous operation of multiple operating systems.

US 6,058,458 beschreibt ein Mehrprozessorsystem mit einer Vielzahl von mit einem Speicher versehenen Prozessoren, wobei ein gemeinsamer Speicher vorgesehen ist, auf den jeder der Prozessoren zugreifen kann. US 6,058,458 describes a multiprocessor system having a plurality of memory-provided processors, wherein a common memory is provided, which can be accessed by each of the processors.

Der Erfindung liegt daher die Aufgabe zugrunde, ein Mehrprozessorsystem sowie ein Verfahren zu dessen Betrieb anzugeben, bei dem die oben genannten Nachteile vermieden werden oder deren Auswirkung verringert wird, so dass sich insgesamt ein effizientes und leicht handhabbares System bzw. Verfahren ergibt.Of the The invention is therefore based on the object, a multiprocessor system and to provide a method of operation in which the above-mentioned Disadvantages are avoided or their effect is reduced, so that overall an efficient and easy to handle system or method results.

Diese Aufgabe wird erfindungsgemäß mit den Merkmalen des Anspruchs 1 gelöst. Dazu ist vorgesehen bei einem Verfahren zum Betrieb eines Mehrprozessorsystems mit einer Mehrzahl von Prozessoren und mit einem Systemspeicher, in dem Code gespeichert ist, der zur Ausführung durch die Prozessoren bestimmt ist, wobei der Systemspeicher in mehrere Speicherbereiche unterteilt ist und wobei in jedem Speicherbereich ein genau für einen der Prozessoren bestimmter Code enthalten ist, dass der Code Information zur Position der Speicherbereiche im Systemspeicher umfasst.These Task is according to the invention with the Characteristics of claim 1 solved. This is provided in a method for operating a multiprocessor system with a plurality of processors and with a system memory, stored in the code that is to be executed by the processors is determined, the system memory in several memory areas is subdivided and whereby in each storage area an exactly for one The processors of certain code included is that of the code information to the location of the memory areas in the system memory.

Auf diese Weise können die einzelnen Speicherbereiche im Systemspeicher direkt aneinander anschließen. Es besteht also anders als bei starren, vorgegebenen Startadressen der einzelnen Speicherbereiche die Möglichkeit, jede Speicherstelle des Systemspeichers auszunutzen. Wenn in einem der Speicherbereiche nur eine geringe Codemenge enthalten ist, steht der bisher aufgrund der starren Struktur der Speicherbereiche verlorene, frei bleibende Platz im betreffenden Speicherbereich für den Code der anderen Speicherbereiche zur Verfügung.On this way you can the individual memory areas in the system memory directly to each other connect. So it is different than with rigid, predetermined start addresses the individual storage areas the possibility of each storage location of the system memory. If in one of the memory areas only a small amount of code is included, is the previously due the rigid structure of the storage areas lost, vacant Space in the memory area concerned for the code of the other memory areas to disposal.

Die Vorteile der Erfindung sind vielfältig. Sie bestehen unter anderem darin, dass nur ein remanenter Speicher benötigt wird, der Systemspeicher, und dass beim Update lediglich das Kopieren des auf dem Updatemedium enthaltenen Codes in einen Speicher, nämlich den Systemspeicher, erforderlich ist. Bei der Generierung des Codes für das Update des Mehrprozessorsystems können die Startadressen oder sonst geeignete Informationen zur Position der einzelnen Codeeinheiten, die später unterschiedlichen Prozessoren zugeordnet werden, ermittelt werden.The Advantages of the invention are many. They consist among other things in that only a retentive memory is needed, the system memory, and that with the update only the copying of the on the update medium contained codes in a memory, namely the system memory, is required. When generating the code for the update of the multiprocessor system can be the start addresses or otherwise suitable information about the position of the individual code units, The later be assigned to different processors are determined.

Vorteilhafte Ausgestaltungen der Erfindung sind Gegenstand der Unteransprüche.advantageous Embodiments of the invention are the subject of the dependent claims.

Wenn die Anzahl der Speicherbereiche im Systemspeicher der Anzahl der Prozessoren entspricht, ergibt sich eine besonders einfache Zuordnung der Speicherbereiche und der jeweiligen Inhalte zu den einzelnen Prozessoren. Im Einzelfall kann ein Speicherbereich für einen nicht vorhandenen Prozessor oder einen Prozessor, für den kein Update verfügbar oder nicht erforderlich ist, die Länge „Null" haben. D. h., der jeweilige Speicherbereich und der nächstfolgende Speicherbereich beginnen im Systemspeicher an der gleichen Adresse. Auch ein solcher Speicherbereich der Länge „Null" wird noch als Speicherbereich aufgefasst, so dass die direkte Zuordnung der im Systemspeicher aufeinander folgenden Speicherbereiche zu den einzelnen Prozessoren des Mehrprozessorsystems erhalten bleibt.If the number of memory areas in the system memory of the number of Corresponds to processors, results in a particularly simple assignment the memory areas and the respective content to the individual Processors. In a particular case, a storage area for a non-existent processor or a processor for which no Update available or is not required to have the length "zero." That is, the respective memory area and the next Memory area begin in system memory at the same address. Even such a storage area of length "zero" is still regarded as storage area, allowing the direct allocation of system memory in one another following memory areas to the individual processors of the multiprocessor system preserved.

Eine besonders einfache Möglichkeit zur Ermittlung der Startadressen der einzelnen Speicherbereiche im Systemspeicher ergibt sich, wenn die Information zur Position der Speicherbereiche Daten zur Größe der Speicherbereiche umfasst. Dann kann durch Addieren der Größeninformation, ggf. unter Berücksichtigung einer bekannten Startadresse des Systemspeichers, die jeweilige Startadresse der einzelnen Speicherbereiche im Systemspeicher ermittelt werden.A particularly easy way for determining the start addresses of the individual memory areas in the system memory results when the information about the position the memory areas comprises data on the size of the memory areas. Then, by adding the size information, if necessary under consideration a known start address of the system memory, the respective Start address of the individual memory areas in the system memory determined become.

Zum automatischen Update des Mehrprozessorsystems ist bevorzugt vorgesehen, dass ein erster Speicherbereich im Systemspeicher als Hauptprozessorspeicherbereich einem als Hauptprozessor fungierenden Prozessor zugeordnet ist, dass der Hauptprozessorspeicherbereich einen Konfigurationsbereich und der Konfigurationsbereich die Information zur Position der Speicherbereiche umfasst. Dann kann der Hauptprozessor im Sinne eines definierten Startvorgangs des Mehrprozessorsystems als erster Prozessor gestartet werden, dem durch Zugriff auf den Hauptprozessorspeicherbereich und den zugehörigen Konfigurationsbereich unmittelbar alle benötigten Informationen zum Layout des Inhalts des Systemspeichers, also zur Position und/oder zur Größe der einzelnen Speicherbereiche, zur Verfügung stehen.For the automatic update of the multiprocessor system, it is preferably provided that a first memory area in the system memory is assigned to a processor acting as a main processor memory area, that the main processor memory area comprises a configuration area and the configuration area contains the information about the position of the memory areas. Then, the main processor can be started in terms of a defined startup of the multiprocessor system as the first processor, which by accessing the main processor memory area and the associated configuration area immediately all the information required for the layout of the contents of the system memory, so the position and / or the size of the individual memory areas are available.

Weiter bevorzugt ist vorgesehen, dass beim Neustart des Mehrprozessorsystems der Hauptprozessor direkt aus dem Hauptprozessorspeicherbereich des Systemspeichers bootet und dass der Hauptprozessor anhand der Positionsinformation im Konfigurationsbereich die Startadresse der dem Hauptprozessorspeicherbereich nachfolgenden Speicherbereiche ermittelt und den darin enthaltenen Code jeweils in einem dem zugehörigen Prozessor zugeordneten Arbeitsspeicher kopiert. Auf diese Weise werden die einzelnen Prozessoren des Mehrprozessorsystems unmittelbar beim Neustart mit dem für sie jeweils vorgesehenen Code versorgt. Dies erleichtert die Koordination des Neustarts und eine zu einem späteren Zeitpunkt erforderliche Synchronisation der einzelnen Prozessoren, weil nach dem Abschluss eines solchen Kopiervorgangs zumindest hinsichtlich der Verfügbarkeit der aktuellen Steuerungsprogramme für jeden Prozessor definierte Verhältnisse vorliegen.Further it is preferably provided that when restarting the multiprocessor system the main processor directly from the main processor memory area the system memory boots and that the main processor based on the Position information in the configuration area the start address of the the main processor memory area subsequent memory areas determined and the code contained therein in each case assigned to the associated processor Memory is copied. That way, the individual processors of the multiprocessor system immediately upon reboot with the one for each of them supplied code. This facilitates the coordination of the Restarts and one at a later time Timing required synchronization of each processor, because after completing such a copying process at least in terms of the availability defined the current control programs for each processor conditions available.

Gemäß einer vorteilhaften Ausgestaltung ist vorgesehen, dass der Hauptprozessor nach dem Kopieren des im jeweiligen Speicherbereich enthaltenen Codes in den jeweiligen Arbeitsspeicher des zugehörigen Prozessors diesen startet.According to one advantageous embodiment, it is provided that the main processor after copying the one contained in the respective memory area Codes in the respective memory of the associated processor this starts.

Der Start der einzelnen Prozessoren kann mit einer ersten Synchronisation der Prozessoren verknüpft werden, wenn deren Start durch den Hauptprozessor erfolgt, nachdem oder sobald das Kopieren auch für den letzten Prozessor abgeschlossen ist.Of the Start of each processor can with a first synchronization linked to the processors when it is started by the main processor after or once copying too for the last processor is completed.

Der Vorteil der Erfindung und ihrer Ausgestaltungen besteht damit insbesondere darin, dass aufgrund der beschriebenen dynamischen Ermittlung der Position der einzelnen Speicherbereiche die Codegenerierung und der Startprozess stets unverändert ablaufen können. Dies ist insbesondere für frühe Entwicklungsphasen des Steuerungsprogramms wichtig, während derer sich die einzelnen Codemengen für die jeweiligen Prozessoren häufig ändern. Des Weiteren ist bereits bei der Codegenerierung eine Kontrolle dahin gehend möglich, ob der generierte Code noch in den Systemspeicher passt und somit das Update noch möglich ist.Of the Advantage of the invention and its embodiments is thus in particular in that due to the described dynamic determination of the Position of each memory area the code generation and the starting process always unchanged can expire. This is especially for early stages of development of the control program, during which the individual Code quantities for the respective processors change frequently. Of Furthermore, there is already a control during the code generation going on possible whether the generated code still fits in the system memory and thus the update still possible is.

Schließlich wird im Systemspeicher stets nur so viel Speicherplatz belegt, wie für den generierten Code benötigt wird. Ein früher ggf. erforderlich werdendes Umschichten aufgrund einzelner zu klein oder zu groß angelegter Speicherbereiche im Systemspeicher kann nicht mehr vorkommen.Finally will always occupies only as much memory in the system memory as for the generated code needed becomes. An early one If necessary, redeployment due to individual is too small or too large Memory areas in the system memory can no longer occur.

Schließlich ergibt sich ein Vorteil dadurch, dass das beschriebene Verfahren nicht beeinträchtigt wird, wenn es unter der Kontrolle von Fehlerermittlungsprogrammen (Debugger) und dergleichen ausgeführt wird, da auch bei der Ausführung des Verfahrens unter der Kontrolle eines solchen Debuggers alle Prozessoren stets mit dem aktuellen Code versorgt werden.Finally results an advantage in that the method described is not is impaired, if it is under the control of fault-finding programs (debuggers) and the like will, as in the execution of the process under the control of such a debugger all Processors are always supplied with the current code.

Der Code in den dem Hauptprozessorspeicherbereich nachfolgenden Speicherbereichen kann zur noch besseren Ausnutzung des im Systemspeicher zur Verfügung stehenden Speicherplatzes auch komprimiert werden, so dass beim Umkopieren in den Arbeitsspeicher des jeweiligen Prozessors eine Dekomprimierung des komprimierten Codes erfolgt. Diese Dekomprimierung über nimmt dann insbesondere der Hauptprozessor, und zwar bevorzugt unmittelbar während des Kopierens.Of the Code in the main processor memory area subsequent memory areas for even better utilization of the available in the system memory Memory also be compressed, so when copying in the memory of the respective processor decompression of the compressed code. This decompression takes over then in particular the main processor, preferably directly while of copying.

Nachfolgend wird ein Ausführungsbeispiel der Erfindung anhand der Zeichnung näher erläutert. Einander entsprechende Gegenstände oder Elemente sind in allen Figuren mit den gleichen Bezugszeichen versehen.following is an embodiment of Invention with reference to the drawing explained. each other corresponding items or elements are in all figures with the same reference numerals Mistake.

Darin zeigen:In this demonstrate:

1 eine schematische Darstellung eines Mehrprozessorsystems mit einem zur Aktualisierung (Update) einzelner oder sämtlicher durch einzelne oder alle Prozessoren des Mehrprozessorsystems ausgeführter Steuerungsprogramme vorgesehenen Systemspeicher, der in einzelne Speicherbereiche unterteilt ist, und 1 a schematic representation of a multiprocessor system with an intended for updating (update) of all or all executed by individual or all processors of the multiprocessor system control programs system memory, which is divided into individual memory areas, and

2 in schematisierter Form den Inhalt des Systemspeichers. 2 schematized the contents of the system memory.

1 zeigt ein Mehr- oder Multiprozessorsystem 10 mit einer Anzahl unabhängiger Prozessoren 11, 12, 13, 14. Ein erster Prozessor 11 fungiert als Hauptprozessor 11. Der oder jeder weitere Prozessor 12, 13, 14 fungiert als erster Prozessor 12, zweiter Prozessor 13, dritter Prozessor 14, usw. Jedem Prozessor 11 bis 14 ist ein eigener Arbeitsspeicher 15, 16, 17, 18 zugeordnet. Im Arbeitsspeicher 15 bis 18 ist in an sich bekannter Weise ein zur Ausführung durch den jeweiligen Prozessor 11 bis 14 vorgesehenes Steuerungsprogramm 19, 20, 21, 22 in einer durch den jeweiligen Prozessor 11 bis 14 ausführbaren Form gespeichert. 1 shows a multiprocessor or multiprocessor system 10 with a number of independent processors 11 . 12 . 13 . 14 , A first processor 11 acts as the main processor 11 , The or each additional processor 12 . 13 . 14 acts as the first processor 12 , second processor 13 , third processor 14 , etc., each processor 11 to 14 is a separate memory 15 . 16 . 17 . 18 assigned. In memory 15 to 18 is in a conventional manner for execution by the respective processor 11 to 14 provided control program 19 . 20 . 21 . 22 in one by the respective processor 11 to 14 stored executable form.

Ein solches Mehrprozessorsystem 10 wird bevorzugt in einem Automatisierungsgerät, also einem zur Automatisierung, Steuerung und/oder Überwachung technischer Anlagen oder Prozesse vorgesehenen Gerät, z. B. einer speicherprogrammierbaren Steuerung (SPS), insbesondere einer Zentraleinheit einer solchen speicherprogrammierbaren Steuerung, verwendet. Dies ermöglicht eine schnellere Ausführung der zur Steuerung und/oder Überwachung der jeweils zu automatisierenden technischen Anlagen oder Prozesse vorgesehenen Steuerungsprogramme 19 bis 22. Die erhöhte Geschwindigkeit ergibt sich z. B. dadurch, dass der Hauptprozessor 11 das eigentliche Steuerungsprogramm 19 ausführt, während die weiteren Prozessoren 12 bis 14 mit eigenen Steuerungsprogrammen 20 bis 22 einzelne Spezialaufgaben, wie z. B. komplexe mathematische Berechnungen, Kommunikationsaufgaben, usw., übernehmen. Die Ergebnisse solcher Berechnungen können ermittelt werden bzw. die Kommunikation kann abgewickelt werden, während der Hauptprozessor 11 mit der Abarbeitung seines Steuerungsprogramms 19 fortfährt. Zudem können als weitere Prozessoren 12 bis 14 Spezialprozessoren zur Anwendung kommen, die in Bezug auf bestimmte Verarbeitungsfunktionen, z. B. Fouriertransformationen, Kommunikation mit weiteren Automatisierungsgeräten oder ähnliches, optimiert sind.Such a multiprocessor system 10 is preferred in an automation device, that is provided for automation, control and / or monitoring of technical equipment or processes device, eg. B. a programmable logic controller (PLC), in particular a central unit of such a programmable logic controller tion, used. This allows a faster execution of the control programs provided for controlling and / or monitoring the respective technical systems or processes to be automated 19 to 22 , The increased speed results z. B. in that the main processor 11 the actual control program 19 while the other processors 12 to 14 with own control programs 20 to 22 individual special tasks, such as As complex mathematical calculations, communication tasks, etc., take over. The results of such calculations can be determined or the communication can be handled while the main processor 11 with the execution of its control program 19 continues. In addition, as additional processors 12 to 14 Special processors are used, which in relation to certain processing functions, eg. As Fourier transformations, communication with other automation devices or the like, are optimized.

Zum Aktualisieren der Steuerungsprogramme 19 bis 22 ist ein Systemspeicher 25 vorgesehen, der in einer insbesondere auf die Anzahl der Prozessoren 11 bis 14 abgestimmten Anzahl von Speicherbereichen 26, 27, 28, 29 Code, also insbesondere Programmcode, für die Prozessoren 11 bis 14 enthält. Der Systemspeicher 25 ist bevorzugt als remanenter Speicher ausgeführt, d. h., bei dem Systemspeicher 25 handelt es sich um einen Halbleiterspeicher, insbesondere einen Flash-Speicher, dessen Speicherinhalte auch ohne externe Spannungsversorgung zumindest über einen gewissen Zeitraum erhalten bleiben.To update the control programs 19 to 22 is a system memory 25 provided in particular on the number of processors 11 to 14 coordinated number of storage areas 26 . 27 . 28 . 29 Code, in particular program code, for the processors 11 to 14 contains. The system memory 25 is preferably implemented as retentive memory, ie, at the system memory 25 it is a semiconductor memory, in particular a flash memory whose memory contents are maintained even without external power supply at least over a certain period of time.

Wie durch die Pfeile angedeutet, ist der in den jeweiligen Speicherbereichen 26 bis 29 enthaltene Code für jeweils genau einen der Prozessoren 11 bis 14 vorgesehen. Der in den Speicherbereichen 26 bis 29 enthaltene Code bildet also die Basis für die von den Prozessoren 11 bis 14 auszuführenden Steuerungsprogramme 19 bis 22. Zur Unterscheidung wird ein erster, dem Hauptprozessor 11 zugeordneter Speicherbereich 26 als Hauptprozessorspeicherbereich 26 bezeichnet.As indicated by the arrows, that is in the respective memory areas 26 to 29 contained code for exactly one of the processors 11 to 14 intended. The one in the storage areas 26 to 29 contained code thus forms the basis for those of the processors 11 to 14 to be executed control programs 19 to 22 , For distinction, a first, the main processor 11 allocated memory area 26 as the main processor storage area 26 designated.

2 zeigt in schematisierter Form den Inhalt des Systemspeichers 25. Danach ist im Systemspeicher 25 für jeden Prozessor 11 bis 14 der jeweilige Code in einem eigenen Speicherbereich 26 bis 29 gespeichert. Jeder Speicherbereich 26 bis 29 ist eindeutig einem der Prozessoren 11 bis 14 zugeordnet. Der erste Speicherbereich 26 ist als Hauptprozessorspeicherbereich 26 dem Hauptprozessor 11 zugeordnet. 2 shows in schematized form the contents of the system memory 25 , After that is in system memory 25 for every processor 11 to 14 the respective code in its own memory area 26 to 29 saved. Each storage area 26 to 29 is clearly one of the processors 11 to 14 assigned. The first storage area 26 is as the main processor storage area 26 the main processor 11 assigned.

Der Hauptprozessorspeicherbereich 26 umfasst, wie rechts neben der Darstellung des Systemspeichers 25 schematisch dargestellt ist, einen Konfigurationsbereich 30 und einen Codebereich 31. Der Codebereich 31 enthält den für den Hauptprozessor 11 vorgesehenen Code, also z. B. die Systemsoftware, insbesondere Firmware, und/oder das Steuerungsprogramm 19. Die weiteren Speicherbereiche 27 bis 29 umfassen ebenfalls einen nicht dargestellten Codebereich mit dem für den jeweiligen Prozessor 12 bis 14 vorgesehenen Code, also Systemsoftware und/oder Steuerungsprogramm 20 bis 22.The main processor memory area 26 as shown to the right of the system memory 25 is shown schematically, a configuration area 30 and a code area 31 , The code area 31 contains the one for the main processor 11 provided code, ie z. B. the system software, in particular firmware, and / or the control program 19 , The other memory areas 27 to 29 also comprise a not shown code area with that for the respective processor 12 to 14 provided code, ie system software and / or control program 20 to 22 ,

Der Konfigurationsbereich 30, der nur als Bestandteil des Hauptprozessorspeicherbereichs 26 vorkommt, umfasst, wie rechts neben der Darstellung des Hauptprozessorspeicherbereichs 26 schematisch dargestellt ist, Informationen zur Lage und/oder Größe der einzelnen Speicherbereiche 26 bis 29 im Systemspeicher 25. Im einfachsten Fall umfassen diese Informationen nur Informationen zur Größe der einzelnen Speicherbereiche 26 bis 29. Anhand dieser Größeninformation kann durch Addieren der Größeninformationen, ggf. unter Berücksichtigung einer bekannten Startadresse des Systemspeichers 25, der Startpunkt jedes Speicherbereichs 26 bis 29 ermittelt werden, so dass das Kopieren des Codes aus dem jeweiligen Speicherbereich 26 bis 29 in den Arbeitsspeicher 15 bis 18 des zugehörigen Prozessors 11 bis 14 stets ausgehend von der richtigen Position im Systemspeicher 25 erfolgt. Die Größeninformation ergibt auch ein Abbruchkriterium für einen solchen Kopiervorgang. Damit ist sichergestellt, dass nur der für den jeweiligen Prozessor 11 bis 14 bestimmte Code in dessen Arbeitsspeicher 15 bis 18 transferiert wird.The configuration area 30 which is only part of the main processor memory area 26 includes, as to the right of the representation of the main processor memory area 26 is shown schematically, information on the location and / or size of the individual memory areas 26 to 29 in the system memory 25 , In the simplest case, this information only includes information about the size of the individual memory areas 26 to 29 , Based on this size information can be obtained by adding the size information, possibly taking into account a known start address of the system memory 25 , the starting point of each memory area 26 to 29 be determined so that copying the code from the respective memory area 26 to 29 in the main memory 15 to 18 the associated processor 11 to 14 always based on the correct position in the system memory 25 he follows. The size information also gives an abort criterion for such a copy operation. This ensures that only the one for the respective processor 11 to 14 certain code in its memory 15 to 18 is transferred.

Alternativ oder zusätzlich zur Größeninformation können auch direkt die jeweiligen Adressen im Systemspeicher 25, an dem die einzelnen Speicherbereiche 26 bis 29 beginnen, abgelegt sein. Die Ablage der Größeninformation im Konfigurationsbereich 30 entspricht am ehesten einer relativen Adressierung, während die Ablage der einzelnen Startadressen am ehesten einer absoluten Adressierung entspricht.Alternatively or in addition to the size information can also directly the respective addresses in the system memory 25 at which the individual storage areas 26 to 29 begin to be filed. The storage of the size information in the configuration area 30 most likely corresponds to a relative addressing, while the filing of the individual start addresses most closely corresponds to an absolute addressing.

Der Konfigurationsbereich 30 ist zu diesem Zweck als Komponentenliste 32 organisiert, wobei die Komponentenliste 32 in einzelnen Listenelementen 33, 34, 35 besagte Informationen zur Größe und/oder Position der einzelnen Speicherbereiche 26 bis 29 enthält. Die Komponentenliste 32 kann als statische Liste, z. B. in Form eines Feldes mit einer festen Anzahl von Listenelementen 33 bis 35, oder als dynamische Liste mit einer variablen Anzahl von Listenelementen 33 bis 35 organisiert sein. Beim Updaten des Mehrprozessorsystems 10 werden alle Listenelemente 33 bis 35 abgearbeitet, wobei die Möglichkeit besteht, in einzelnen Listenelementen einen vorgebbaren oder vorgegebenen Wert, z. B. Null, zu hinterlegen, der entweder implizit, also aufgrund des Update-Algorithmus, oder durch explizite vorherige Abfrage dazu führt, dass einzelne Speicherbereiche 26 bis 29 oder einzelne Listenelemente 33 bis 35 unberücksichtigt bleiben.The configuration area 30 is for this purpose as a component list 32 organized, with the component list 32 in individual list elements 33 . 34 . 35 said information about the size and / or position of the individual storage areas 26 to 29 contains. The component list 32 can be used as a static list, eg. In the form of a field with a fixed number of list elements 33 to 35 , or as a dynamic list with a variable number of list items 33 to 35 be organized. When updating the multiprocessor system 10 become all list items 33 to 35 processed, with the possibility exists in individual list elements a predetermined or predetermined value, eg. B. zero, either implicitly, that is, due to the update algorithm, or by explicit previous Query causes individual storage areas 26 to 29 or individual list items 33 to 35 disregarded.

Damit lässt sich die Erfindung kurz wie folgt darstellen:
Das erfindungsgemäße Verfahren zum Betrieb eines Mehrprozessorsystems sowie das nach dem Verfahren arbeitende Mehrprozessorsystem mit einer Mehrzahl von Prozessoren 11 bis 14 und mit einem Systemspeicher 25, in dem Code gespeichert ist, der zur Ausführung durch einen der Prozessoren 11 bis 14 vorgesehen ist, wobei der Systemspeicher 25 in mehrere Speicherbereiche 26 bis 29 unterteilt ist und wobei in jedem Speicherbereich 26 bis 29 ein genau für einen der Prozessoren 11 bis 14 vorgesehener Code enthalten ist, zeichnet sich dadurch aus, dass der Code im Systemspeicher 25 Information zur Position der Speicherbereiche 26 bis 29 im Systemspeicher 25 umfasst.
Thus, the invention can be briefly represented as follows:
The method according to the invention for operating a multiprocessor system and the multiprocessor system operating according to the method with a plurality of processors 11 to 14 and with a system memory 25 in which code is stored, which is to be executed by one of the processors 11 to 14 is provided, the system memory 25 in several memory areas 26 to 29 is divided and where in each memory area 26 to 29 one for one of the processors 11 to 14 Contained code is characterized by the fact that the code is in system memory 25 Information about the position of the storage areas 26 to 29 in the system memory 25 includes.

Claims (10)

Verfahren zum Betrieb eines Mehrprozessorsystems mit einer Mehrzahl von Prozessoren (11 bis 14) und mit einem Systemspeicher (25), in dem Code gespeichert ist, der zur Ausführung durch einen der Prozessoren (11 bis 14) vorgesehen ist, wobei der Systemspeicher (25) in mehrere Speicherbereiche (26 bis 29) unterteilt ist und wobei in jedem Speicherbereich (26 bis 29) ein genau für einen der Prozessoren (11 bis 14) vorgesehener Code enthalten ist, dadurch gekennzeichnet, dass der Code Information zur Position der Speicherbereiche (26 bis 29) im Systemspeicher (25) umfasst.Method for operating a multiprocessor system having a plurality of processors ( 11 to 14 ) and with a system memory ( 25 ) stored in the code for execution by one of the processors ( 11 to 14 ), the system memory ( 25 ) into several memory areas ( 26 to 29 ) and wherein in each memory area ( 26 to 29 ) exactly for one of the processors ( 11 to 14 ) is provided, characterized in that the code information on the position of the memory areas ( 26 to 29 ) in system memory ( 25 ). Verfahren nach Anspruch 1, wobei die Anzahl der Speicherbereiche (26 bis 29) im Systemspeicher (25) der Anzahl der Prozessoren (11 bis 14) entspricht.Method according to claim 1, wherein the number of memory areas ( 26 to 29 ) in system memory ( 25 ) the number of processors ( 11 to 14 ) corresponds. Verfahren nach Anspruch 1 oder 2, wobei die Information zur Position der Speicherbereiche (26 bis 29) Daten zur Größe der Speicherbereiche (26 bis 29) umfasst.Method according to Claim 1 or 2, the information relating to the position of the memory areas ( 26 to 29 ) Data on the size of the memory areas ( 26 to 29 ). Verfahren nach einem der vorangehenden Ansprüche, wobei ein erster Speicherbereich (26) im Systemspeicher (25) als Hauptprozessorspeicherbereich (26) einem als Hauptprozessor (11) fungierenden Prozessor (11 bis 14) zugeordnet ist, wobei der Hauptprozessorspeicherbereich (26) einen Konfigurationsbereich (30) umfasst und wobei der Konfigurationsbereich (30) die Information zur Position der Speicherbereiche (26 bis 29) umfasst.Method according to one of the preceding claims, wherein a first memory area ( 26 ) in system memory ( 25 ) as the main processor memory area ( 26 ) one as the main processor ( 11 ) acting processor ( 11 to 14 ), the main processor memory area ( 26 ) a configuration area ( 30 ) and wherein the configuration area ( 30 ) the information about the position of the memory areas ( 26 to 29 ). Verfahren nach Anspruch 4, wobei der Konfigurationsbereich (30) als Positionsinformation Daten zur Größe jedes Speicherbereichs (26 bis 29) umfasst.Method according to claim 4, wherein the configuration area ( 30 ) as position information data on the size of each memory area ( 26 to 29 ). Verfahren nach Anspruch 4 oder 5, wobei beim Neustart des Mehrprozessorsystems (10) der Hauptprozessor (11) aus dem Hauptprozessorspeicherbereich (26) des Systemspeichers (25) bootet, wobei der Hauptprozessor (11) anhand der Positionsinformation die Startadresse der dem Hauptprozessorspeicherbereich (26) nachfolgenden Speicherbereiche (27 bis 29) ermittelt und den darin enthaltenen Code jeweils in einem dem zugehörigen Prozessor (12 bis 14) zugeordneten Arbeitsspeicher (15 bis 18) kopiert.Method according to claim 4 or 5, wherein when restarting the multiprocessor system ( 10 ) the main processor ( 11 ) from the main processor memory area ( 26 ) of the system memory ( 25 ), the main processor ( 11 ) based on the position information, the start address of the main processor memory area ( 26 ) subsequent memory areas ( 27 to 29 ) and the code contained therein in each case in an associated processor ( 12 to 14 ) associated memory ( 15 to 18 ) copied. Verfahren nach Anspruch 6, wobei der Hauptprozessor (11) nach dem Kopieren des im jeweiligen Speicherbereich (26 bis 29) enthaltenen Codes in den jeweiligen Arbeitsspeicher (15 bis 18) des zugehörigen Prozessors (12 bis 14) diesen startet.Method according to claim 6, wherein the main processor ( 11 ) after copying in the respective memory area ( 26 to 29 ) contained in the respective memory ( 15 to 18 ) of the associated processor ( 12 to 14 ) starts this. Verfahren nach Anspruch 7, wobei der Start der Prozessoren (12 bis 14) erfolgt, wenn das Kopieren auch für den letzten Prozessor (14) abgeschlossen ist.Method according to claim 7, wherein the start of the processors ( 12 to 14 ), if copying is also possible for the last processor ( 14 ) is completed. Mehrprozessorsystem mit einer Mehrzahl von Prozessoren (11 bis 14) und mit einem Systemspeicher (25), in dem Code abspeicherbar ist, der zum Transfer zum Mehrprozessorsystem und zur Ausführung durch einen der Prozessoren (11 bis 14) vorgesehen ist, wobei der Systemspeicher (25) in mehrere Speicherbereiche (26 bis 29) unterteilbar ist und wobei jeder Speicherbereich (26 bis 29) genau einem der Prozessoren (11 bis 14) zugeordnet ist, dadurch gekennzeichnet, dass der Code Information zur Position der Speicherbereiche (26 bis 29) im Systemspeicher (25) umfasst, die beim Transfer des Codes zum Mehrprozessorsystem auswertbar ist.Multiprocessor system with a plurality of processors ( 11 to 14 ) and with a system memory ( 25 ) in which code is stored, which is for transfer to the multiprocessor system and for execution by one of the processors ( 11 to 14 ), the system memory ( 25 ) into several memory areas ( 26 to 29 ) is subdividable and wherein each memory area ( 26 to 29 ) exactly one of the processors ( 11 to 14 ), characterized in that the code contains information about the position of the memory areas ( 26 to 29 ) in system memory ( 25 ), which can be evaluated during the transfer of the code to the multiprocessor system. Mehrprozessorsystem nach Anspruch 9, wobei einer der Prozessoren (11 bis 14) als Hauptprozessor (11) fungiert und wobei der Hauptprozessor zur Ausführung der Verfahrensschritte nach einem der Ansprüche 1 bis 8 vorgesehen ist.A multiprocessor system according to claim 9, wherein one of the processors ( 11 to 14 ) as the main processor ( 11 ) and wherein the main processor is provided for carrying out the method steps according to one of claims 1 to 8.
DE200410004795 2004-01-30 2004-01-30 Multiprocessor system and method for operating a multiprocessor system Expired - Fee Related DE102004004795B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE200410004795 DE102004004795B4 (en) 2004-01-30 2004-01-30 Multiprocessor system and method for operating a multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE200410004795 DE102004004795B4 (en) 2004-01-30 2004-01-30 Multiprocessor system and method for operating a multiprocessor system

Publications (2)

Publication Number Publication Date
DE102004004795A1 DE102004004795A1 (en) 2005-08-25
DE102004004795B4 true DE102004004795B4 (en) 2008-06-05

Family

ID=34801319

Family Applications (1)

Application Number Title Priority Date Filing Date
DE200410004795 Expired - Fee Related DE102004004795B4 (en) 2004-01-30 2004-01-30 Multiprocessor system and method for operating a multiprocessor system

Country Status (1)

Country Link
DE (1) DE102004004795B4 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6058458A (en) * 1996-12-05 2000-05-02 Samsung Electronics Co., Ltd. Multi-processor system having a shared program memory and related method
EP1126369A2 (en) * 2000-02-17 2001-08-22 International Business Machines Corporation Method and system for supporting multiple operating systems on the same disk running on different computers at the same time

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6058458A (en) * 1996-12-05 2000-05-02 Samsung Electronics Co., Ltd. Multi-processor system having a shared program memory and related method
EP1126369A2 (en) * 2000-02-17 2001-08-22 International Business Machines Corporation Method and system for supporting multiple operating systems on the same disk running on different computers at the same time

Also Published As

Publication number Publication date
DE102004004795A1 (en) 2005-08-25

Similar Documents

Publication Publication Date Title
DE2423194C2 (en) Device for calculating an absolute main memory address in a data processing system
DE2355993C3 (en) Programmable data processing system
DE2354521C2 (en) Method and device for simultaneous access to different memory modules
DE2847575A1 (en) TEMPLATE MICRO MEMORY
DE2839726A1 (en) DATA PROCESSING SYSTEM WITH DISTRIBUTED CONTROL ARCHITECTURE IN A MULTIPROCESSOR SYSTEM
DE1966633B2 (en) Data processing system with an overlapped work cycle when using a main memory and a buffer memory
DE19500957A1 (en) Procedures for the control of technical processes or processes
DE1803767A1 (en) Electronic data processing system
DE2101949A1 (en) Method for protecting data groups in a multiprocessing data processing system
DE10312756A1 (en) Method for operating a controller on a communication medium
DE102004004795B4 (en) Multiprocessor system and method for operating a multiprocessor system
DE102017130552B3 (en) Method of data processing and programmable logic controller
DE1774421B1 (en) MORE PROGRAM DATA PROCESSING SYSTEM
DE102004060301A1 (en) Method for initializing an electronic system comprising a plurality of plug-ins
DE102018125090A1 (en) Data processing method and programmable logic controller
DE10061001A1 (en) Automobile technical process control method, involves using microprocessor for execution of control program tasks corresponding to technical processes
DE102004055051B3 (en) Procedure for the acceleration of a startup procedure for an application employs non-volatile memory
EP2365438A1 (en) Method for operating an automation system
DE10065498A1 (en) Reconstructing control program process flow, involves generating table from contents of tables generated during process containing identity of last process carried out before each new task
DE102008020782B4 (en) Method for processing programs in parallel and processor suitable for carrying out the method
DE2544071C3 (en) Multi-level memory system
EP3948449B1 (en) Method and engineering system for changing a program of an industrial automation component
EP1998240A1 (en) Control system with cyclical operation and method for incorporating software building blocks in the functional process of a control system
DE3013618C2 (en) Circuit arrangement for forming two related real addresses from a two-part virtual address
EP1467269A1 (en) Identification of local devices in a data processing system

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8364 No opposition during term of opposition
R119 Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee

Effective date: 20130801