DE19506957C2 - Method for updating and loading user programs in a program memory of a microprocessor system - Google Patents
Method for updating and loading user programs in a program memory of a microprocessor systemInfo
- Publication number
- DE19506957C2 DE19506957C2 DE19506957A DE19506957A DE19506957C2 DE 19506957 C2 DE19506957 C2 DE 19506957C2 DE 19506957 A DE19506957 A DE 19506957A DE 19506957 A DE19506957 A DE 19506957A DE 19506957 C2 DE19506957 C2 DE 19506957C2
- Authority
- DE
- Germany
- Prior art keywords
- memory
- user program
- routine
- awpx
- program
- 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
- 230000015654 memory Effects 0.000 title claims description 74
- 238000000034 method Methods 0.000 title claims description 22
- 230000003068 static effect Effects 0.000 claims description 24
- 230000004044 response Effects 0.000 claims description 6
- 229940036310 program Drugs 0.000 claims description 3
- 230000003213 activating effect Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 230000006854 communication Effects 0.000 description 4
- 238000012217 deletion Methods 0.000 description 3
- 230000037430 deletion Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000005502 phase rule Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
- G11C16/105—Circuits or methods for updating contents of nonvolatile memory, especially with 'security' features to ensure reliable replacement, i.e. preventing that old data is lost before new data is reliably written
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/102—External programming circuits, e.g. EPROM programmers; In-circuit programming or reprogramming; EPROM emulators
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/88—Masking faults in memories by using spares or by reconfiguring with partially good memories
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Description
Mikroprozessorsysteme sind bekannterweise durch einen Mikropro zessor gebildet, an dessen Mikroprozessorbus zumindest ein An wendermodul und ein Speicher angeschlossen ist, in dem zumin dest ein Anwendungsprogramm - insbesondere für die Steuerung des Anwendermoduls - gespeichert ist. Der Speicher ist durch einen programmierbaren Lesespeicher (PROM), einen elektrisch programmierbaren Lesespeicher (EPROM) oder durch einen elek trisch lösch- und programmierbaren Lesespeicher (EEPROM) reali siert. Diese Speicher beziehungsweise Speicherbausteine werden auf einem hierfür geeigneten Programmiergerät programmiert, d. h. mit zumindest einem Anwenderprogramm geladen und auf eine Halterung des Mikroprozessorsystems gesteckt.Microprocessor systems are known to be by a micropro processor formed, on the microprocessor bus at least one type turner module and a memory is connected in which at least least an application program - especially for control of the user module - is saved. The memory is through a programmable read-only memory (PROM), an electrical one programmable read-only memory (EPROM) or by an elec Really erasable and programmable read-only memory (EEPROM) siert. These memories or memory modules are programmed on a suitable programming device, d. H. loaded with at least one user program and onto a Bracket of the microprocessor system inserted.
Sollen die Anwenderprogramme in derartig realisierten Speichern beziehungsweise Speicherbausteinen geändert, d. h. aktualisiert oder soll ein neues Anwenderprogramm geladen werden, so sind die Speicher beziehungsweise Speicherbausteine auszutauschen. Um ein derartiges Austauschen zu vermeiden, d. h. die Speicher beziehungsweise die Speicherbausteine sind eingelötet, muß die Aktualisierung beziehungsweise das Ändern von Anwenderprogram men durch Laden der Anwenderprogramme über eine zusätzliche Schnittstelle in einen elektrisch lösch- und programmierbaren Speicher (EEPROM) vorgenommen werden. Für das Laden von Pro grammen während der Initialisierung des Mikroprozessorsystems ist im Initialisierungsprogramm eine Initialisierungsroutine vorgesehen. Should the user programs be saved in this way? or memory modules changed, d. H. updated or if a new user program is to be loaded replace the memory or memory modules. To avoid such an exchange, i. H. the stores or the memory modules are soldered in, the Update or change of user program by loading the user programs via an additional one Interface in an electrically erasable and programmable Memory (EEPROM). For loading Pro gram during the initialization of the microprocessor system is an initialization routine in the initialization program intended.
Aus der Patentschrift US 4 720 812 ist ein Mikroprozessorsystem bekannt, welches einen flüchtigen Speicher (z. B. RAM) und nicht flüchtige Speicher (z. B. PROM, EPROM) aufweist, wobei in einem nicht flüchtigen Speicher eine beliebige Anzahl von mit Hilfe eines Mikroprozessors ausführbaren Anwenderprogrammen sowie eine Initialisierungs- bzw. Nachladeroutine gespeichert sind. Die Nachladeroutine enthält Befehlszeilen, durch welche bei ei ner Systeminitialisierung - beispielsweise bei einem Neustart des Systems - ein Anwenderprogramm von einem nicht flüchtigen Speicher mit langen Speicher-Zugriffszeiten in einen flüchtigen Speicher mit schnellen Speicher-Zugriffszeiten kopiert wird, und somit eine hohe Mikroprozessor-Ausführungsgeschwindigkeit erreicht wird.From the patent US 4 720 812 is a microprocessor system known, which is volatile memory (e.g. RAM) and not volatile memory (z. B. PROM, EPROM), wherein in one non volatile memory using any number of using a microprocessor executable user programs as well an initialization or reloading routine is stored. The reload routine contains command lines through which at ei System initialization - for example when restarting of the system - a user program from a non-volatile Memory with long memory access times in a volatile Memory is copied with fast memory access times, and thus a high microprocessor execution speed is achieved.
In der deutschen Patentschrift DE 39 38 517 C2 ist ebenfalls ein Mikroprozessorsystem beschrieben, bei dem ein Steuerpro gramm von einer externen Einrichtung - beispielsweise über das öffentliche Netz und über eine MODEM-Verbindungseinrichtung - an eine numerische Steuervorrichtung übermittelt und anschlie ßend in einem flüchtigen Speicher (z. B. RAM) oder nicht flüch tigen Speicher (z. B. einem Plattenspeicher) gespeichert wird. Zur Realisierung einer schnellen Datenübertragung weist das Steuerprogramm zumindest ein Lademodul auf, das jeweils mit ei nem Beurteilungscode versehen ist. Mit Hilfe des Beurtei lungscodes wird überprüft, ob das zu übertragende Lademodul be reits in der numerischen Steuervorrichtung gespeichert ist; ein durch die externe Einrichtung bereitgestelltes Lademodul wird nur dann an die Steuervorrichtung übermittelt, wenn dieses ei nen unterschiedlichen Beurteilungscode als das in der Steuer vorrichtung gespeicherte Lademodul aufweist.In the German patent DE 39 38 517 C2 is also described a microprocessor system in which a Steuerpro gram from an external institution - for example via the public network and via a MODEM connection facility - transmitted to a numerical control device and then eats in volatile memory (e.g. RAM) or non-volatile storage (e.g. a disk storage) is saved. In order to realize a fast data transmission, this shows Control program at least one charging module, each with egg is provided with an assessment code. With the help of the appraisal It is checked whether the loading module to be transferred is checked is already stored in the numerical control device; on charging module provided by the external device transmitted to the control device only when this egg a different assessment code than that in the tax device has stored charging module.
Mit derartigen Mikroprozessorkonzeptionen können jedoch keine Anwenderprogramme während des Betriebes des Mikroprozessor systems geladen oder bereits gespeicherte Anwenderprogramme aktualisiert werden, d. h. aktuell ablaufende Anwenderprogramme werden unterbrochen. Des weiteren werden durch Anwenderpro gramme in einem Schreib-Lesespeicher zwischengespeicherte Da ten durch das Laden der Anwenderprogramme während der Inbe triebnahme bei der Initialisierung des Mikroprozessorsystems gelöscht. Dies bedeutet, daß beispielsweise langfristig gesam melte, bearbeitete und anschließend abgespeicherte Informatio nen verloren gehen. Derartige Informationen stellen beispiels weise summierte Phasenablagewerte für ein einen Phasenregel kreis regelndes Anwenderprogramm in einer Kommunikationsein richtung dar, wobei der Phasenregelkreis für die Synchronisie rung zweier interner oder extern zugeführter Taktsignale vorge sehen ist.With such microprocessor designs, however, none can User programs during the operation of the microprocessor systems loaded or user programs already saved be updated, d. H. User programs currently running are interrupted. Furthermore, user pro gram data cached in a read-write memory by loading the user programs during installation drive during the initialization of the microprocessor system deleted. This means that in the long term, for example, total melded, edited and then saved information lost. Such information provides, for example wise summed phase offset values for a phase rule circle-regulating user program in a communication direction, the phase-locked loop for synchronization tion of two internal or externally supplied clock signals see is.
Der Erfindung liegt die Aufgabe zugrunde, die Aktualisierung von gespeicherten Anwenderprogrammen und das Nachladen von An wenderprogrammen während des Betriebs des Mikroprozessorsystems ohne Verlust der durch die Anwenderprogramme zwischengespei cherten Informationen beziehungsweise Daten zu ermöglichen. Die Aufgabe wird ausgehend von einem Mikroprozessorsystem gemäß den Merkmalen des Oberbegriffs des Patentanspruchs 1 durch dessen kennzeichnende Merkmale gelöst.The invention is based on the task of updating of stored user programs and reloading from programs during the operation of the microprocessor system without loss of the cached by the user programs secure information or data. The Task is based on a microprocessor system according to the Features of the preamble of claim 1 by the characteristic features solved.
Der wesentliche Aspekt des erfindungsgemäßen Verfahrens ist darin zu sehen, daß der Programmspeicher durch einen nicht flüchtigen, elektrisch lösch- und programmierbaren Speicher - in der Fachwelt als FLASH-EPROM-Speicher bekannt - und durch einen flüchtigen, statischen Schreib-Lesespeicher - in der Fachwelt als SRAM-Speicher bekannt - realisiert ist, wobei im lösch- und programmierbaren Speicher das zumindest eine Anwen derprogramm, in das eine Nachladeroutine eingebunden ist, ge speichert ist. Bei einer Initialisierung des Mikroprozessorsy stems wird mit Hilfe eines Initialisierungsprogramms das zumin dest eine im lösch- und programmierbaren Speicher gespeicherte Anwenderprogramm und die Nachladeroutine in den statischen Schreib-Lesespeicher kopiert. Mit Hilfe der Nachladeroutine, die über die Systemschnittstelle aktiviert werden kann, kann ein weiteres Anwenderprogramm in den statischen Schreib-Lese speicher geladen werden. Anschließend wird mit Hilfe der Nach laderoutine das zwischengespeicherte Anwenderprogramm im Sinne eines Neuladens oder Aktualisierens eines bereits gespeicherten Anwenderprogramms in den elektrisch lösch- und programmierbaren Schreib-Lesespeicher programmiert.The essential aspect of the method according to the invention is in the fact that the program memory is not through one volatile, electrically erasable and programmable memory - known in the trade as FLASH-EPROM memory - and by a volatile, static read-write memory - in the Known in the art as SRAM memory - is realized, in which erasable and programmable memory that at least one application the program in which a reloading routine is integrated, ge stores. When the microprocessor is initialized stems becomes the at least with the help of an initialization program least one stored in erasable and programmable memory User program and the reload routine in the static Read / write memory copied. With the help of the reload routine, which can be activated via the system interface another user program in the static read / write memory can be loaded. Then with the help of load routine the cached user program in the sense reloading or updating an already saved one User program in the electrically erasable and programmable Read / write memory programmed.
Gemäß einer Weiterbildung des erfindungsgemäßen Verfahren ist die Nachladeroutine auch in die Initialisierungsroutine einge bunden. Wird bei der Initialisierung des Mikroprozessorsystems festgestellt, daß kein Anwenderprogramm im elektrisch lösch- und programmierbaren Speicher gespeichert ist, so wird mit Hilfe der in der Initialisierungsroutine eingebundenen Nachla deroutine zumindest ein Anwenderprogramm in den statischen Schreib-Lesespeicher geladen und anschließend in den elek trisch lösch- und programmierbaren Speicher programmiert. Die in das jeweilige Anwenderprogramm eingebundene und in die Ini tialisierungsroutine eingebundene Nachladeroutine ist gleich artig realisiert, wobei die in der Intialisierungsroutine ein gebundene Nachladeroutine bei der Initialisierung des Mikro prozessorsystems und die in das jeweilige Anwenderprogramm ein gebundene Nachladeroutine während des Ablaufs des jeweiligen Anwenderprogramms jeweils zum Nachladen von Anwenderprogrammen im Sinne eines Neuladens von Anwenderprogrammen oder Aktuali sieren von gespeicherten Anwenderprogrammen benutzt wird.According to a development of the method according to the invention the reload routine is also included in the initialization routine bound. Will be at the initialization of the microprocessor system found that no user program in the electrically and programmable memory is stored, so with Help from the add-on included in the initialization routine deroutine at least one user program in the static Read / write memory loaded and then in the elec Programmable, erasable and programmable memory. The integrated in the respective user program and in the Ini reload routine is the same well implemented, the one in the initialization routine bound reload routine during the initialization of the micro processor system and into the respective user program bound reload routine during the course of each User program for reloading user programs in the sense of reloading user programs or updates stored user programs is used.
Gemäß einer weiteren vorteilhaften Weiterbildung des erfin dungsgemäßen Verfahrens wird die Nachladeroutine über die Sy stemschnittstelle durch Anforderungs- und Antwortmeldungen ge steuert bzw. aktiviert, wobei eine Meldung durch einen Mel dungskopf, ein Informationsfeld und ein Sicherungsfeld gebildet ist. Dieses auf eine paketweise Übermittlung abgestimmte Protokoll ist in Mikroprozessorsystemen besonders wirtschaft lich zu realisieren. According to a further advantageous development of the inventor According to the inventive method, the reloading routine is performed via the Sy stem interface through request and response messages controls or activates, whereby a message by a Mel form header, an information field and a security field is. This is coordinated with a packet-wise transmission Protocol is particularly economical in microprocessor systems to realize.
Für die Überprüfung der im statischen Schreib-Lesespeicher zwischengespeicherten Anwenderprogramme ist ein zyklisches Blocksicherungsverfahren vorgesehen. Dieses zyklische Blocksi cherungsverfahren ist ebenfalls auf eine Realisierung in einem Mikroprozessorsystem abgestimmt.For checking the static read-write memory cached user programs is cyclical Block protection procedures provided. This cyclical blocksi backup procedure is also based on a realization in one Microprocessor system tuned.
Vor einer Programmierung eines Anwenderprogramms in den elek trisch lösch- und programmierbaren Schreib-Lesespeicher werden vorhandene Anwenderprogramme, insbesondere ein zu aktualisie rendes Anwenderprogramm, gelöscht. Die in den elektrisch lösch- und programmierbaren Speicher programmierten Anwenderprogramme werden besonders vorteilhaft mit dem bereits implementierten zyklischen Blocksicherungsverfahren hinsichtlich ihrer korrekten Programmierung überprüft. Nach der Programmierung eines Anwenderprogramms in den lösch- und programmierbaren Speicher wird das programmierte Anwenderprogramm mit Hilfe der Nachladeroutine in den statischen Schreib-Lesespeicher geladen und derart reinitialisiert, daß die in einem Speicherbereich hinterlegten Daten des vorhergehend programmierten Anwenderpro gramms nicht verlorengehen, sondern in das neu programmierte Anwenderprogramm einbezogen, d. h. dem Anwenderprogramm die je weiligen Speicherbereiche bekannt gemacht werden.Before programming a user program in the elec be erasable and programmable read-write memory existing user programs, especially one to be updated current user program, deleted. The in the electrically extinguishing and programmable memory programmed user programs are particularly advantageous with the already implemented cyclical block protection procedures with regard to their correct programming checked. After programming a user program in the erasable and programmable The programmed user program is saved using the Reload routine loaded into the static read-write memory and reinitialized so that the in a memory area stored data of the previously programmed user pro grammes are not lost, but in the newly programmed User program included, d. H. the user program memory areas are made known.
Desweiteren ist im statischen Schreib-Lesespeicher ein Nachla despeicherbereich vorgesehen. Dieser Nachladespeicherbereich ist ausschließlich für die Zwischenspeicherung von in den elektrisch lösch- und programmierbaren Speicher zu programmie rende Anwenderprogramme vorgesehen. In diesen Nachladespeicher bereich zwischengespeicherte Anwenderprogramme sind nicht ab lauffähig.Furthermore, there is a Nachla in the static random access memory memory area provided. This reload storage area is only for the temporary storage of in the electrically erasable and programmable memory for programming User programs provided. In this reload memory area cached user programs are not off executable.
Die wesentlichen Vorteile des erfindungsgemäßen Verfahrens sind darin zu sehen, daß während des Betriebs des Mikroprozessorsy stems Anwenderprogramme nachgeladen werden können. Die nachge ladenen Anwenderprogramme sind für eine Aktualisierung eines bereits programmierten Anwenderprogramms oder eine neue Reali sierung einer Funktion im Mikroprozessorsystem vorgesehen. Ein derartiges Anwenderprogramm kann beispielsweise ein Programm zur Steuerung eines in einer Kommunikationseinrichtung durch ein Mikroprozessorsystem realisierten Phasenregelkreises dar stellen.The main advantages of the method according to the invention are to be seen in the fact that during the operation of the microprocessor user programs can be loaded. The following loaded user programs are for an update of a User program already programmed or a new Reali a function in the microprocessor system is provided. A Such a user program can be a program, for example to control a in a communication device a microprocessor system implemented phase locked loop put.
Weitere vorteilhafte Ausgestaltungen des erfindungsgemäßen Ver fahrens sind den weiteren Ansprüchen zu ent nehmen.Further advantageous embodiments of the Ver driving are to be found in the further claims to take.
Im folgenden wird das erfindungsgemäße Verfahren anhand eines Blockschaltbildes näher erläutert.The method according to the invention is described below using a Block diagram explained in more detail.
Das Blockschaltbild zeigt ein Mikroprozessorsystem MPS mit ei nem Mikroprozessor MP, an dessen Mikroprozessorbus MPB ein flüchtiger, statischer Schreib-Lesespeicher SRAM, ein elek trisch lösch- und programmierbarer Schreib-Lesespeicher FLASH, ein Schnittstellenmodul SSM sowie mindestens ein Anwendermodul MCC - im Blockschaltbild ist ein Anwendermodul MCC repräsenta tiv für weitere dargestellt - angeschlossen. Der Mikroprozessor MP ist beispielsweise durch einen Mikroprozessor 80386 der Firma INTEL realisiert. Mit Hilfe des Schnittstellenmoduls SSM werden von einer externen Einrichtung - nicht dargestellt - seriell übermittelte Anforderungsmeldungen afm sowie nachzula dende Anwenderprogramme AWP mikroprozessortaktgerecht an den Mikroprozessorbus MPB gesteuert. Durch das Schnittstellenmodul SSM ist eine serielle Systemschnittstelle SYS gebildet, über die eine externe Einrichtung - z. B. eine programmgesteuerte Be dieneinrichtung - mit dem Mikroprozessorsystem MPS kommuni ziert. Ein derartiges Schnittstellenmodul SSM ist beispiels weise durch den integrierten Schaltkreis 8251A der Fa. INTEL realisiert. The block diagram shows an MPS microprocessor system with an egg a microprocessor MP, at its microprocessor bus MPB volatile, static random access memory SRAM, an elec trisch erasable and programmable read-write memory FLASH, an interface module SSM and at least one user module MCC - in the block diagram is a user module MCC representa shown for others - connected. The microprocessor MP is, for example, by an 80386 microprocessor INTEL company realized. With the help of the SSM interface module are from an external facility - not shown - serially transmitted request messages afm and nachzula end user programs AWP to the microprocessor clock Microprocessor bus controlled by MPB. Through the interface module SSM is a serial system interface formed over SYS which is an external facility - e.g. B. a program-controlled loading dieneinrichtung - with the microprocessor system MPS commun graces. Such an interface module SSM is an example by the integrated circuit 8251A from INTEL realized.
Im elektrisch lösch- und programmierbaren Schreib-Lesespeicher FLASH ist für die Anwendermodule MCC zumindest ein Anwenderpro gramm AWP gespeichert - durch einen mit AWP bezeichneten Block repräsentativ dargestellt.In the electrically erasable and programmable read / write memory For the MCC user modules, FLASH is at least one user pro grams of AWP stored - by a block labeled AWP represented representatively.
Des weiteren ist im elektrisch lösch- und programmierbaren Schreib-Lesespeicher FLASH eine Initialisierungsroutine BOOT hinterlegt, wobei in die Initialisierungsroutine BOOT eine Nachladeroutine NLRB eingebunden ist. Mit Hilfe dieser Initia lisierungsroutine BOOT werden die Anwenderprogramme AWP bei der Inbetriebnahme des Mikroprozessorsystems MPS in den statischen Schreib-Lesespeicher SRAM geladen und gestartet. Bei diesem erstmaligen Laden wird zusammen mit dem zumindest einen An wenderprogramm AWP eine in eines der Anwenderprogramme AWP eingebundene Nachladeroutine NLR in den statischen Schreib-Le sespeicher SRAM geladen. Die Nachladeroutinen NLR, NLRB in der Initialisierungsroutine BOOT und in dem jeweiligen Anwenderpro gramm AWP weisen gleichartige Funktionen auf und sind gleichar tig realisiert.Furthermore, it is electrically erasable and programmable Read-write memory FLASH an initialization routine BOOT deposited, whereby in the initialization routine BOOT a Reloading routine NLRB is integrated. With the help of this initia user program AWP at the Commissioning of the MPS microprocessor system in the static Read / write memory SRAM loaded and started. With this initial loading is together with the at least one type User program AWP in one of the user programs AWP integrated reloading routine NLR in the static write le memory SRAM loaded. The reload routines NLR, NLRB in the Initialization routine BOOT and in the respective user pro grams of AWP have similar functions and are the same realized.
Für das Ausführungsbeispiel sei weiterhin angenommen, daß ein Anwenderprogramm AWPX aktualisiert werden soll, d. h. durch eine überarbeitete Version AWPX' ausgetauscht werden soll.For the exemplary embodiment it is further assumed that a User program AWPX should be updated, d. H. by a revised version AWPX 'is to be replaced.
Hierzu wird über das Schnittstellenmodul SSM eine Anforderungs meldung afm über den Mikroprozessorbus MPB an die im statischen Schreib-Lesespeicher SRAM gespeicherte Nachladeroutine NLR übermittelt. Hierzu ist festzustellen, daß während des Abarbei tens der Anwenderprogramme AWP durch den Mikroprozessor MP die Nachladeroutine NLRB im Initialisierungsprogramm über die Sy stemschnittstelle SYS nicht ansprechbar ist, da die Initiali sierungsroutine lediglich während einer Initialisierung des Mikroprozessors - beispielsweise nach einem Spannungsausfall - wirksam ist. Die Anforderungs- und anschließend erläuterte Antwortmeldung afm, atm ist in einen Meldungskopf MK, ein In formationsfeld IF und ein Sicherungsfeld SF unterteilt. Bei ei ner Anforderungsmeldung afm ist im Meldungskopf MK eine Infor mation eingefügt, durch die die Nachladeroutine NLR veranlaßt wird, das im Informationsfeld IF enthaltene Anwenderprogramm AWPX' in einen Nachladespeicherbereich NLSP des statischen Schreib-Lesespeicher SRAM zu laden - durch gestrichelte Linien angedeutet. Hierbei wird im Sicherungsfeld SF eine Siche rungsinformation si übermittelt, mit deren Hilfe die Übermitt lung der Informationen i der Anforderungsmeldung afm überprüft wird. Die Nachladeroutine NLR bestätigt durch eine Übermittlung einer Antwortmeldung atm die Speicherung des Anwenderprogramms AWPX' oder gibt eine Fehlermeldung über eine fehlerhafte Speicherung ab. Durch Übermitteln einer weiteren An forderungsmeldung afm mit einer entsprechenden Information i im Informationsfeld IF kann eine Überprüfung des gespeicherten An wenderprogramms APX' mit Hilfe einer Überprüfungsroutine - nicht dargestellt -, beispielsweise durch ein zyklisches Blocksicherungsverfahren, überprüft werden. Das Ergebnis - feh lerfrei oder fehlerhaft - der Prüfung wird über eine Antwort meldung atm ausgegeben.For this purpose, a request is made via the SSM interface module message afm via the microprocessor bus MPB to the static Read-write memory SRAM stored reload routine NLR transmitted. It should be noted that during processing least of the user programs AWP by the microprocessor MP Reloading routine NLRB in the initialization program via the Sy system interface SYS cannot be addressed because the initiali only during an initialization of the Microprocessor - for example after a power failure - is effective. The requirement and then explained Reply message afm, atm is in a message header MK, an In formation field IF and a fuse field SF divided. With egg A request message afm is an information in the message header MK mation inserted by which the reloading routine causes NLR the user program contained in the information field IF AWPX 'in a reload memory area NLSP of the static Load SRAM read-write memory - with dashed lines indicated. In this case, a fuse is made in the SF fuse field tion information si transmitted, with the help of which the transmission the information in the request message afm checked becomes. The NLR reload routine is confirmed by a transmission a response message will save the user program AWPX 'or gives an error message about a faulty Storage from. By submitting another To claim notification afm with corresponding information i im Information field IF can check the stored To APX 'program using a check routine - not shown -, for example by a cyclic Block securing procedures are checked. The result - feh Learner-free or faulty - the exam is about an answer message atm issued.
Nach einem die fehlerfreie Speicherung anzeigenden Überprü fungsergebnis wird durch Übermitteln einer Anforderungsmeldung afm, in die eine entsprechende Löschanweisung eingefügt ist, das Löschen des auszutauschenden Anwenderprogrammes AWPX einge leitet bzw. durchgeführt - durch strich-punktierte Linien ange deutet. Das Löschen wird wiederum durch eine Antwortmeldung atm bestätigt. Anschließend wird durch eine weitere Anforderungs meldung afm, in der ein Programmieranweisung enthalten ist, das Programmieren des Anwenderprogrammes AWPX' in den lösch- und programmierbaren Schreib-Lesespeicher FLASH eingeleitet und sukzessive durchgeführt - durch punktierte Linien angedeutet. Die negative oder positive Quittierung dieses Programmiervor gangs wird wiederum durch eine Antwortmeldung atm über das Schnittstellenmodul SSM ausgegeben. Durch Übermitteln einer weiteren Anforderungsmeldung afm kann eine Überprüfung mit Hilfe eines zyklischen Blocksicherungsverfahrens des program mierten Anwenderprogramms AWPX' durchgeführt werden.After a check indicating the correct storage The result of the test is transmitted by a request message afm, in which a corresponding deletion instruction is inserted, deletion of the user program AWPX to be replaced leads or performed - indicated by dash-dotted lines points. The deletion is in turn triggered by a response message approved. Then through another request message afm, which contains a programming instruction, the Programming the user program AWPX 'in the delete and programmable read-write memory FLASH initiated and carried out successively - indicated by dotted lines. The negative or positive acknowledgment of this programming gangs is again through a response message atm over the Interface module SSM output. By submitting one Another request message afm can be checked with A cyclical block backup procedure of the program mated user program AWPX '.
Anschließend kann eine Initialisierung des Mikroprozessorsy stems MPS eingeleitet werden, wodurch das ausgetauschte Anwen derprogramm AWPX' in den statischen Schreib-Lesespeicher SRAM kopiert und anschließend gestartet wird. Alternativ hierzu kann bis zu einer Initialisierung des Mikroprozessorsystem MPS gewartet werden - z. B. nach einem Spannungsausfall -, bei der das nun vorhandene aktualisierte Anwenderprogramm AWPX' in den statischen Schreib-Lesespeicher SRAM kopiert und gestartet wird. Wurde das zu aktualisierende Anwenderprogramm AWPX vor der Programmierung nicht gelöscht, so wird bei einer Initiali sierung des Mikroprozessorsystems MPS stets das aktualisiert, d. h. vorher geladene Anwenderprogramm AWPX' in den statischen Schreib-Lesespeicher kopiert und gestartet. Bei einem Neuladen von Anwenderprogrammen AWP wird die Initialisierung sofort ein geleitet, d. h. das neue Anwenderprogramm AWP in den statischen Schreib-Lesespeicher SRAM geladen und gestartet. Hierbei wird das während der Inbetriebnahme des Mikroprozessorsystems MPS kopierte ursprüngliche Anwenderprogramm AWPX überschrieben, wobei der Bereich, in dem das ursprüngliche Anwenderprogramm AWPX Daten zwischengespeichert hat, erhalten bleibt und durch das ausgetauschte Anwenderprogramm AWPX' genutzt werden kann. Hierzu werden mit Hilfe der Nachladeroutine NLRB in das ausge tauschte Anwenderprogramm AWPX' eine entsprechende Einstellung, d. h. entsprechende Hinweise auf die Speicherbereiche, d. h. Speicheradressen aufgenommen. Des weiteren kann mit Hilfe der Nachladeroutine NLRB beispielsweise mit Hilfe zyklischer Block sicherungsverfahren das korrekte Kopieren des jeweiligen Anwen derprogramms AWP in den statischen Schreib-Lesespeicher SRAM überprüft werden. Hierzu wird eine entsprechende Anforderungs meldung afm übermittelt und das Ergebnis der Überprüfung durch eine Antwortmeldung atm über die Systemschnittstelle SYS über mittelt.The microprocessor can then be initialized stems MPS can be initiated, whereby the exchanged user the program AWPX 'in the static read / write memory SRAM copied and then started. Alternatively, you can up to an initialization of the MPS microprocessor system be serviced - e.g. B. after a power failure - at the now updated user program AWPX 'in the static random access memory SRAM copied and started becomes. Has the AWPX user program to be updated programming is not deleted, an initiali of the MPS microprocessor system is always updated, d. H. previously loaded user program AWPX 'in the static Read / write memory copied and started. When reloading the initialization of user programs AWP is started immediately directed, d. H. the new user program AWP in the static Read / write memory SRAM loaded and started. Here will that during the commissioning of the MPS microprocessor system copied overwritten original user program AWPX, being the area where the original user program AWPX has cached data, is retained and through the exchanged user program AWPX 'can be used. To do this, the NLRB reload routine is used to load the exchanged user program AWPX 'a corresponding setting, d. H. corresponding references to the memory areas, d. H. Memory addresses added. Furthermore, with the help of Reloading routine NLRB, for example with the help of a cyclic block the correct copying of the respective application the program AWP in the static random access memory SRAM be checked. This is a corresponding requirement afm message transmitted and the result of the review by a response message atm via the system interface SYS via averages.
Das Anwenderprogramm AWPX' bzw. die weiteren Anwenderprogramme AWP stellen beispielsweise Anwenderprogramme AWP für Anwender module MCC dar, durch die ein Phasenregelkreis in einem Kommu nikationssystem - nicht dargestellt - gesteuert wird. Der Pha senregelkreis ist Teil einer hochpräzisen Takteinrichtung zur Steuerung der kommunikationssysteminternen Takte. Für die Steuerung dieser Anwendermodule MCC bzw. Anwenderprogramme AWP können über das Schnittstellenmodul SSM direkt Anforderungsmel dungen afm mit entsprechenden Anweisungen, z. B. Referenztaktan gaben, Taktgeschwindigkeiten, Synchronisierungsabhängigkeiten usw. übermittelt werden. Im Gegenzug werden Antwortmeldungen atm für eine Quittierung von Anforderungen und Fehlermeldungen übermittelt.The user program AWPX 'or the other user programs AWP, for example, provide user programs AWP for users module MCC through which a phase locked loop in a commu nication system - not shown - is controlled. The Pha The control loop is part of a high-precision clock facility for Control of internal communication system clocks. For the Control of these MCC user modules or AWP user programs can directly report requirements via the SSM interface module dungen afm with appropriate instructions, e.g. B. Reference clock gave, clock speeds, synchronization dependencies etc. are transmitted. In return there will be reply messages atm for acknowledgment of requests and error messages transmitted.
Claims (9)
- 1. daß der Programmspeicher in einen elektrisch lösch- und pro grammierbaren Speicher (FLASH) und in einen flüchtigen, statischen Schreib-Lesespeicher (SRAM) unterteilt ist, wobei im elektrisch lösch- und programmierbaren Speicher (FLASH) eine Initialisierungsroutine (BOOT) und das zumindest eine Anwenderprogramm (AWP), in das eine Nachladeroutine (NLR) eingebunden ist, gespeichert ist,
- 2. daß bei einer Initialisierung des Mikroprozessorsystems (MPS) mit Hilfe der Initialisierungsroutine (BOOT) das zu mindest eine im lösch- und programmierbaren Speicher (FLASH) gespeicherte Anwenderprogramm (AWP) einschließlich der Nach laderoutine (NLR) in den flüchtigen, statischen Schreib- Lesespeicher (SRAM) kopiert wird,
- 3. daß durch eine Aktivierung der Nachladeroutine (NLR) über die Systemschnittstelle (SYS) über diese zumindest ein weiteres Anwenderprogramm (AWPX') in den flüchtigen, statischen Schreib-Lesespeicher (SRAM) geladen wird,
- 4. daß anschließend mit Hilfe der Nachladeroutine (NLR) das zu mindest eine, zwischengespeicherte Anwenderprogramm (AWPX') in den elektrisch lösch- und programmierbaren Schreib- Lesespeicher (FLASH) programmiert wird.
- 1. that the program memory is divided into an electrically erasable and programmable memory (FLASH) and in a volatile, static random access memory (SRAM), with an initialization routine (BOOT) and that in the electrically erasable and programmable memory (FLASH) at least one user program (AWP), in which a reload routine (NLR) is integrated, is stored,
- 2. that when the microprocessor system (MPS) is initialized using the initialization routine (BOOT), the at least one user program (AWP) stored in the erasable and programmable memory (FLASH), including the reloading routine (NLR) in the volatile, static write Read memory (SRAM) is copied,
- 3. that by activating the reload routine (NLR) via the system interface (SYS), at least one further user program (AWPX ') is loaded into the volatile, static random access memory (SRAM),
- 4. that the at least one cached user program (AWPX ') is then programmed into the electrically erasable and programmable read / write memory (FLASH) with the aid of the reload routine (NLR).
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19506957A DE19506957C2 (en) | 1995-02-28 | 1995-02-28 | Method for updating and loading user programs in a program memory of a microprocessor system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19506957A DE19506957C2 (en) | 1995-02-28 | 1995-02-28 | Method for updating and loading user programs in a program memory of a microprocessor system |
Publications (2)
Publication Number | Publication Date |
---|---|
DE19506957A1 DE19506957A1 (en) | 1996-08-29 |
DE19506957C2 true DE19506957C2 (en) | 1999-01-07 |
Family
ID=7755244
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19506957A Expired - Fee Related DE19506957C2 (en) | 1995-02-28 | 1995-02-28 | Method for updating and loading user programs in a program memory of a microprocessor system |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE19506957C2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10012579A1 (en) * | 2000-03-15 | 2001-09-27 | Teamtechnik Maschinen Und Anla | Process module for mounting and testing system, co-ordinates transfer of assigned program from memory to program sequencing unit |
DE10127466C1 (en) * | 2001-06-07 | 2002-11-28 | Ahrens & Birner Company Gmbh | Data remanence safeguarding method for microprocessor system uses control device detecting high and low levels for coupling random-access memories with high and low access rates |
DE10244975B4 (en) * | 2002-09-26 | 2005-08-04 | Siemens Ag | Method for updating the operating software of a device |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE19652629A1 (en) * | 1996-12-18 | 1998-06-25 | Philips Patentverwaltung | Software exchange system |
DE19704531C1 (en) * | 1997-02-06 | 1998-04-09 | Siemens Ag | Application software loading method for computer data processing system |
DE19750365A1 (en) * | 1997-11-14 | 1999-05-20 | Bosch Gmbh Robert | Loading of programs and data in a network system in motor vehicle |
DE19813508A1 (en) * | 1998-03-26 | 1999-09-30 | Agta Record Ag | Control method for operating automatically driven panels, such as doors, gates, windows, etc. |
FR2803080A1 (en) | 1999-12-22 | 2001-06-29 | St Microelectronics Sa | PAGE-BY-PAGE PROGRAMMABLE FLASH MEMORY |
DE10316951A1 (en) * | 2003-04-12 | 2004-10-21 | Daimlerchrysler Ag | Method for checking the data integrity of software in ECUs |
GB2412193A (en) * | 2004-03-19 | 2005-09-21 | Matsushita Electric Ind Co Ltd | Reprogramming a non-volatile memory system. |
DE102007026693A1 (en) | 2007-06-08 | 2008-12-11 | Robert Bosch Gmbh | Method and device for reorganizing data in a storage system, in particular for control devices in motor vehicles |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4720812A (en) * | 1984-05-30 | 1988-01-19 | Racal-Milgo, Inc. | High speed program store with bootstrap |
DE3938517C2 (en) * | 1988-11-22 | 1992-01-23 | Mitsubishi Denki K.K., Tokio/Tokyo, Jp |
-
1995
- 1995-02-28 DE DE19506957A patent/DE19506957C2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4720812A (en) * | 1984-05-30 | 1988-01-19 | Racal-Milgo, Inc. | High speed program store with bootstrap |
DE3938517C2 (en) * | 1988-11-22 | 1992-01-23 | Mitsubishi Denki K.K., Tokio/Tokyo, Jp |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE10012579A1 (en) * | 2000-03-15 | 2001-09-27 | Teamtechnik Maschinen Und Anla | Process module for mounting and testing system, co-ordinates transfer of assigned program from memory to program sequencing unit |
DE10012579B4 (en) * | 2000-03-15 | 2006-04-20 | Teamtechnik Maschinen Und Anlagen Gmbh | Processing station and method for commissioning a processing station |
DE10127466C1 (en) * | 2001-06-07 | 2002-11-28 | Ahrens & Birner Company Gmbh | Data remanence safeguarding method for microprocessor system uses control device detecting high and low levels for coupling random-access memories with high and low access rates |
DE10244975B4 (en) * | 2002-09-26 | 2005-08-04 | Siemens Ag | Method for updating the operating software of a device |
Also Published As
Publication number | Publication date |
---|---|
DE19506957A1 (en) | 1996-08-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE60018209T2 (en) | UMPROGRAMMABLE FIELD DEVICE IN A DISTRIBUTED PROCESS CONTROL SYSTEM | |
DE19506957C2 (en) | Method for updating and loading user programs in a program memory of a microprocessor system | |
DE10308545A1 (en) | Method and device for updating a distributed program | |
EP0915435B1 (en) | Method for securely storing variable data | |
EP1190324B1 (en) | Process for the secure writing of a pointer for a circular memory | |
DE60205162T2 (en) | Method for managing a network device, management system and network device | |
WO2009049656A1 (en) | Method for configuring an arrangement for protecting controlling or monitoring an electrical switch or power supply gear | |
DE10002203B4 (en) | Method for protecting a microcomputer system against manipulation of data stored in a memory arrangement of the microcomputer system | |
WO2000019283A1 (en) | Method for operating an automation system | |
EP0978039A1 (en) | Data loading process | |
DE19536490C2 (en) | Method for writing data into a memory of a control device | |
DE112018000092T5 (en) | PLC, network unit, CPU and data transfer method | |
DE102015207900B4 (en) | Procedure for performing an operating system update | |
DE102009047974B4 (en) | Procedure for programming a control unit | |
EP0919930B1 (en) | Method and apparatus for reading, modifying and writing data stored in a memory device | |
DE19519104C1 (en) | Program error removal in program-controlled communication devices | |
EP1235123A2 (en) | Add-om mechanism for a control system based on a type data-field | |
EP1423788A2 (en) | Method for operating a circuit arrangement containing a microcontroller and an eeprom | |
DE69600363T2 (en) | Method for starting up a semiconductor circuit | |
DE102019134353A1 (en) | Method for data migration of a pointer element in the course of a data migration of a program state of a control program of an automation system | |
DE19843048C2 (en) | Method for a software access change in a network node of a telecommunications network and a network node suitable for performing such a method | |
DE2803202C2 (en) | Circuit arrangement for data backup of information stored in read / write memories (RAM) designed as volatile memories | |
EP0472813B1 (en) | Method to change a computer program stored in the computer arrangement of an appliance, and arrangement for the carrying out of this method | |
EP0588006B2 (en) | Remote-control method and associated receiver | |
EP1276116B1 (en) | Method for storing related data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
D2 | Grant after examination | ||
8363 | Opposition against the patent | ||
8325 | Change of the main classification |
Ipc: G06F 9/44 |
|
8365 | Fully valid after opposition proceedings | ||
8339 | Ceased/non-payment of the annual fee |