WO2009074499A1 - Method for operating a control appliance, and control appliance - Google Patents

Method for operating a control appliance, and control appliance Download PDF

Info

Publication number
WO2009074499A1
WO2009074499A1 PCT/EP2008/066714 EP2008066714W WO2009074499A1 WO 2009074499 A1 WO2009074499 A1 WO 2009074499A1 EP 2008066714 W EP2008066714 W EP 2008066714W WO 2009074499 A1 WO2009074499 A1 WO 2009074499A1
Authority
WO
WIPO (PCT)
Prior art keywords
program
mem
volatile memory
compressed
memory
Prior art date
Application number
PCT/EP2008/066714
Other languages
German (de)
French (fr)
Inventor
Udo Zanrosso
Original Assignee
Continental Automotive Gmbh
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 Continental Automotive Gmbh filed Critical Continental Automotive Gmbh
Publication of WO2009074499A1 publication Critical patent/WO2009074499A1/en

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0426Programming the control sequence
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23232Execute program from added, expansion rom, memory
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23307Initial program loader, ipl, bootstrap loader
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/23Pc programming
    • G05B2219/23338Transfer modified program from ram to eprom, flash
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25265Flash memory
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2637Vehicle, car, auto, wheelchair

Definitions

  • the invention relates to a method for operating a
  • Control unit and a control unit with at least one non-volatile memory are independently controlled and a control unit with at least one non-volatile memory.
  • control units In modern motor vehicles, there are a large number of electronic control devices for controlling and regulating individual vehicle components.
  • the control units are typically coupled to a common communication network in the motor vehicle for exchanging data with one another.
  • a programming device is connected to the communication network of the motor vehicle or directly to the control unit to be programmed. By means of the programming device, the new version of the control unit software is sent to the respective control unit for reprogramming.
  • the object on which the invention is based is to provide a method for operating a control device and a control device, which enables efficient memory usage.
  • the invention is characterized by a method for operating a control device and a control device having at least one nonvolatile memory in which a first program is stored, wherein the nonvolatile memory is managed by means of an execution of the first program, wherein in the method or the device the first program at least partially compressed stored in the non-volatile memory and decompressed before its execution.
  • the memory requirement associated with the first program is particularly low.
  • the memory space of the nonvolatile memory not occupied by the first program can be made available to other programs and / or data, whereby the entire memory space provided by the nonvolatile memory can be used particularly efficiently.
  • the decompressed first program can comprise a plurality of program functions that can be used to manage the non-volatile memory. In each case, a given functionality is assigned to the respective execution of the program function.
  • a compressed program portion of the first program is decompressed and copied into a volatile memory and executed from this.
  • the compressed program portion of the first program comprises all program portions of the first program that are compressed in non-volatile memory. If the entire first program is stored in the compressed state in the non-volatile memory, the compressed program portion comprises the entire first program.
  • the volatile memory is preferably designed as a random access memory so that the compressed program portion of the first program can be copied into the volatile memory particularly suitably after it has been decompressed. This is particularly advantageous when the volatile feed rather at least partially unused and not occupied by other programs and / or data.
  • the entire functionality of the compressed program portion of the first program is particularly advantageous in the volatile memory. Only in the non-compressed state can the previously compressed stored program portion of the first program be executed.
  • the compressed program portion of the first program is at least partially decompressed and copied into the volatile memory and executed therefrom.
  • the at least partially decompressed first program can be executed. Particularly advantageous only the program portions of the first program are decompressed, which are also needed at a given time. This results in a particularly fast and at the same time efficient execution of the decompressed program components of the first program.
  • the compressed program portion of the first program is decompressed by means of a non-compressed program portion of the first program.
  • the first program comprises not only the compressed program portion but also uncompressed program portions which can be executed without prior decompression, it is particularly advantageous if the compressed program portions of the first program are decompressed by means of execution of the non-compressed program portions. This has the advantage that the actual decompression functionality is stored decompressed in the first program and thus can be executed very quickly.
  • the non-compressed program portion of the first program is executed from the nonvolatile memory.
  • Execution of the non-compressed program portion of the first program from the non-volatile memory can be carried out particularly quickly, since it is already stored in the non-volatile memory.
  • a particularly rapid decompression can be achieved if the compressed program portion is decompressed by means of the execution of the uncompressed program portion.
  • Figure 2 is another schematic representation of a control device.
  • FIG. 1 shows a control unit CU which, for example, is used in a motor vehicle.
  • the control unit may be designed as an ESP control unit or as a control unit for controlling the displays of a dashboard of the motor vehicle.
  • the control unit CU comprises a nonvolatile memory NV MEM and a volatile memory V_MEM. Both memories can be integrated, for example, in a microcontroller uC, which is part of the control unit CU.
  • the non-volatile memory NV MEM and / or the volatile memory V MEM can in principle but also be designed as external memory devices outside the microcontroller uC in the control unit CU.
  • the non-volatile memory NV MEM is designed, for example, as a flash memory and stores data and / or programs resistant and permanently, even without a permanent power supply.
  • the nonvolatile memory NV MEM designed as a flash memory is designed in a reprogrammable manner.
  • a data record or a program previously stored in the non-volatile memory NV_MEM can first be deleted and subsequently be replaced by another data record and / or by a more recent version of the program and / or by another program.
  • the nonvolatile memory NV MEM is typically designed to be erasable or programmable sector by sector, wherein a plurality of memory cells are assigned to one sector.
  • the volatile memory V MEM is designed, for example, as a random access memory (RAM memory). Thus, typically each memory cell of the volatile memory V_MEM can be addressed either read or write via its assigned address.
  • the volatile memory V MEM typically does not have to be read sequentially or in sectors, but allows random access. In this case, the volatile memory V MEM is typically designed to store data and / or software programs only as long as a sufficient voltage supply of the volatile memory V_MEM is ensured. The volatile memory V MEM is therefore not suitable for permanently storing data and / or software programs.
  • control unit comprises a communication interface IF, which couples the control unit, for example, with a communication network of the motor vehicle.
  • the communication interface IF is typically part of the microcontroller uC, but in principle can also be arranged outside the microcontroller uC in the control unit CU be. Data can be transmitted by the microcontroller uC via the communication interface IF, as can also be received by the latter.
  • the communication interface IF is a controller area network interface (CAN interface) or a serial communication interface (SCI).
  • the non-volatile memory NV_MEM comprises in FIG. 1 two programs that are executed by means of a central processing unit CPU in the microcontroller uC.
  • the first program FL is designed as a so-called flash loader and the second program APPL is designed as an application program.
  • the second program APPL the main functionality of the control unit CU is implemented.
  • the speed monitoring and speed control of the wheels of the motor vehicle is implemented by means of the execution of the second program APPL, so that an uncontrolled breaking of the motor vehicle from the predetermined direction of travel is prevented.
  • the first program FL embodied as a flash loader typically comprises a plurality of program functions that can be used for managing the nonvolatile memory NV MEM, such as, for example, For example, to delete, to program or to verify.
  • the nonvolatile memory NV MEM can be at least partially verified and / or deleted and / or a newer version of the second program APPL supplied by the communication interface IF can be at least partially reprogrammed.
  • further functions known to the person skilled in the art for managing the non-volatile memory NV_MEM are conceivable.
  • the program function of the first program FL to be executed is typically specified by means of a programming device connected to the communication network of the motor vehicle is coupled.
  • the first program FL is designed to be controlled by the programming device and to exchange data with it.
  • the first program FL driver functions for controlling the communication interface IF, such. B. Driver functions of the CAN interface.
  • the first program FL typically includes initialization functions as program functions which enable the connection to the programming device by means of the driver functions. The initialization functions are furthermore designed to interpret the commands transmitted by the programming device and to execute program functions depending on the received command.
  • non-volatile memory NV MEM is designed to allow either a read or a write access at a given time, before the execution of the respective program function of the first program FL, the write access, such.
  • the write access such.
  • a runtime environment is typically required to execute the respective program functions, which comprises, for example, the address assignment and reservation for program variables in the volatile memory V MEM.
  • the original first program FL should be stored in the non-volatile memory NV MEM by execution of the respective spective program function of the first program FL can not be deleted and / or changed.
  • FIG. 2 shows a first exemplary embodiment of the control unit CU.
  • the control unit CU comprises the nonvolatile memory NV_MEM with the first program FL and second program APPL stored in it.
  • the first program FL is subdivided into a non-compressed program part and a compressed program part (shown hatched).
  • the program functions for managing the non-volatile memory NV MEM are associated with the compressed program portion of the first program FL, wherein by means of the compression, such. B. by ZIP compression, the storage requirements compared to Figure 1 is significantly smaller, such. B. halved compared to the original memory size of the first program FL.
  • the non-compressed program portion of the first program FL is typically associated with the initialization functions of the first program FL.
  • the erase command is first interpreted by means of the initialization functions of the first program FL.
  • the initialization functions are typically associated with the non-compressed program portion of the first program FL (non-hatched area in Figure 2) and thus typically do not need to be decompressed prior to their execution. If the initialization functions do not include program functions with write access to the nonvolatile memory NV MEM, they can be executed directly from the non-volatile memory NV MEM. From the programmer The deletion command transmitted is typically assigned a corresponding deletion function in the first program FL, which is typically present in the compressed program portion of the first program FL (hatched area of the first program FL in FIG. 2). Thus, before the execution of the
  • the decompression of the respective program function or the decompression of the entire compressed program portion of the first program FL takes place by means of a decompression function, which is typically present in the non-compressed program portion of the first program FL. Since the decompression function typically does not perform write access to the nonvolatile memory NV MEM, it can also be executed directly from the nonvolatile memory NV_MEM. In principle, however, the decompression function can initially also be copied into the volatile memory V MEM and then executed therefrom.
  • the respective initialization function thus first calls the respective decompression function for decompression of the deletion function before executing the deletion function.
  • the decompression function By means of the decompression function, the already decompressed portions of the erasure function can preferably be copied into the volatile memory V_MEM, so that at the end of the decompression the entire erase function is decompressed in the volatile memory V MEM (represented by the arrow in FIG. 2). Only now is the deletion function using the
  • Central processing unit executable and can be called by the respective initialization function to execute.
  • program functions that are present in the compressed program portion of the first program FL are first decompressed before decompression and volatile Memory V MEM copied.
  • program functions may also be present in the compressed program portion of the first program FL, which do not comprise writing access to the non-volatile memory NV MEM, such as, for example, B. Verification functions and functions for reading version numbers.
  • the decompression can be carried out in such a way that only the program functions predetermined by means of the programming device are decompressed prior to their execution and copied into the volatile memory V_MEM.
  • the entire compressed program portion of the first program FL can first be decompressed and copied into the volatile memory V_MEM before predetermined program functions are executed from the now decompressed compressed program portion of the first program FL from the volatile memory V_MEM.
  • FIG. 3 shows a further exemplary embodiment in which the first program FL designed as a flash loader is stored in a non-volatile memory ROM, which is designed as a read-only memory.
  • the second program APPL is furthermore stored in the nonvolatile memory NV_MEM in the form of a flash memory.
  • This has the advantage that the entire memory area of the nonvolatile memory NV MEM designed as a flash memory is available for the second program APPL and / or further data records.
  • the at least partially compressed storage of the first program FL in the non-volatile memory ROM embodied as a read-only memory it can be used efficiently and even designed with a smaller storage space.

Abstract

The invention relates to a method for operating a control appliance (CU), and to a control appliance comprising at least one non-volatile memory (NV_MEM) containing a first program (FL) which is executed in order to manage the non-volatile memory (NV_MEM). The first program (FL) is stored in the non-volatile memory (NV_MEM) in an at least partially compressed manner, and decompressed before the execution thereof.

Description

Beschreibungdescription
Verfahren zum Betreiben eines Steuergerätes und SteuergerätMethod for operating a control unit and control unit
Die Erfindung betrifft ein Verfahren zum Betreiben einesThe invention relates to a method for operating a
Steuergerätes und ein Steuergerät mit zumindest einem nichtflüchtigen Speicher.Control unit and a control unit with at least one non-volatile memory.
In modernen Kraftfahrzeugen gibt es eine Vielzahl von elekt- ronischen Steuergeräten zur Steuerung und Regelung einzelner Fahrzeugkomponenten. Die Steuergeräte sind typischerweise an ein gemeinsames Kommunikationsnetzwerk im Kraftfahrzeug gekoppelt zum Austausch von Daten untereinander. Dabei gibt es Steuergeräte, die neu programmierbar ausgebildet sind und die dadurch auf eine neuere Version der jeweiligen Steuergerätesoftware aktualisiert werden können. Dabei wird ein Programmiergerät mit dem Kommunikationsnetzwerk des Kraftfahrzeugs oder direkt mit dem zu programmierenden Steuergerät verbunden. Mittels des Programmiergerätes wird dem jeweiligen Steu- ergerät die neue Version der Steuergerätesoftware zur Neuprogrammierung zugeführt.In modern motor vehicles, there are a large number of electronic control devices for controlling and regulating individual vehicle components. The control units are typically coupled to a common communication network in the motor vehicle for exchanging data with one another. There are control units that are newly programmable and which can be updated to a newer version of the respective controller software. In this case, a programming device is connected to the communication network of the motor vehicle or directly to the control unit to be programmed. By means of the programming device, the new version of the control unit software is sent to the respective control unit for reprogramming.
Die Aufgabe, die der Erfindung zugrunde liegt, ist es, ein Verfahren zum Betreiben eines Steuergerätes und ein Steuerge- rät zu schaffen, das eine effiziente Speichernutzung ermöglicht.The object on which the invention is based is to provide a method for operating a control device and a control device, which enables efficient memory usage.
Die Aufgabe wird gelöst durch die Merkmale der unabhängigen Patentansprüche. Vorteilhafte Ausgestaltungen der Erfindung sind in den Unteransprüchen gekennzeichnet.The object is solved by the features of the independent claims. Advantageous embodiments of the invention are characterized in the subclaims.
Die Erfindung zeichnet sich aus durch ein Verfahren zum Betreiben eines Steuergerätes und ein Steuergerät mit zumindest einem nichtflüchtigen Speicher, in dem ein erstes Programm gespeichert ist, wobei der nichtflüchtige Speicher mittels einer Ausführung des ersten Programms verwaltet wird, wobei bei dem Verfahren bzw. der Vorrichtung das erste Programm zu- mindest teilweise komprimiert im nichtflüchtigen Speicher abgespeichert wird und vor dessen Ausführung dekomprimiert wird .The invention is characterized by a method for operating a control device and a control device having at least one nonvolatile memory in which a first program is stored, wherein the nonvolatile memory is managed by means of an execution of the first program, wherein in the method or the device the first program at least partially compressed stored in the non-volatile memory and decompressed before its execution.
Mittels der komprimierten Abspeicherung des ersten Programms im nichtflüchtigen Speicher, ist der dem ersten Programm zugeordnete benötigte Speicherbedarf besonders gering. Dadurch kann der nicht vom ersten Programm belegte Speicherplatz des nichtflüchtigen Speichers für andere Programme und/oder Daten zur Verfügung gestellt werden, wodurch der gesamte vom nichtflüchtigen Speicher zur Verfügung gestellte Speicherplatz besonders effizient genutzt werden kann. Mittels der Dekompri- mierung kann die ursprüngliche Kodierung des ersten Programms verlustfrei wiederhergestellt werden, so dass die dem ersten Programm gesamte zugeordnete Funktionalität zur Verfügung steht. Dabei kann das dekomprimiert vorliegende erste Programm mehrere Programmfunktionen umfassen, die zur Verwaltung des nichtflüchtigen Speichers verwendet werden können. Dabei ist der jeweiligen Ausführung der Programmfunktion jeweils eine vorgegebenen Funktionalität zugeordnet.By means of the compressed storage of the first program in the non-volatile memory, the memory requirement associated with the first program is particularly low. As a result, the memory space of the nonvolatile memory not occupied by the first program can be made available to other programs and / or data, whereby the entire memory space provided by the nonvolatile memory can be used particularly efficiently. By means of the decompression the original coding of the first program can be restored without loss so that the functionality assigned to the first program is available. In this case, the decompressed first program can comprise a plurality of program functions that can be used to manage the non-volatile memory. In each case, a given functionality is assigned to the respective execution of the program function.
Gemäß einer vorteilhaften Ausgestaltung wird ein komprimierter Programmanteil des ersten Programms dekomprimiert und in einen flüchtigen Speicher kopiert und aus diesem ausgeführt.According to an advantageous embodiment, a compressed program portion of the first program is decompressed and copied into a volatile memory and executed from this.
Der komprimierte Programmanteil des ersten Programms umfasst, alle Programmteile des ersten Programms, die komprimiert im nichtflüchtigen Speicher abgespeichert sind. Ist das gesamte erste Programm im komprimierten Zustand im nichtflüchtigen Speicher abgespeichert, umfasst der komprimierte Programmanteil das ganze erste Programm.The compressed program portion of the first program comprises all program portions of the first program that are compressed in non-volatile memory. If the entire first program is stored in the compressed state in the non-volatile memory, the compressed program portion comprises the entire first program.
Der flüchtige Speicher ist bevorzugt als Speicher wahlfreien Zugriffs ausgebildet, so dass besonders geeignet der kompri- mierte Programmanteil des ersten Programms nach dessen De- komprimierung in den flüchtigen Speicher kopiert werden kann. Dies ist besonders dann vorteilhaft, wenn der flüchtige Spei- eher zumindest teilweise unbenutzt ist und nicht durch andere Programme und/oder Daten belegt ist.The volatile memory is preferably designed as a random access memory so that the compressed program portion of the first program can be copied into the volatile memory particularly suitably after it has been decompressed. This is particularly advantageous when the volatile feed rather at least partially unused and not occupied by other programs and / or data.
Wird der komprimierte Programmanteil des ersten Programms de- komprimiert und in den flüchtigen Speicher kopiert, liegt besonders vorteilhaft die gesamte Funktionalität des komprimierten Programmanteils des ersten Programms im flüchtigen Speicher vor. Erst im nichtkomprimierten Zustand kann der zuvor komprimiert abgespeicherte Programmanteil des ersten Pro- gramms ausgeführt werden.If the compressed program portion of the first program is decompressed and copied into the volatile memory, the entire functionality of the compressed program portion of the first program is particularly advantageous in the volatile memory. Only in the non-compressed state can the previously compressed stored program portion of the first program be executed.
Gemäß einer weiteren vorteilhaften Ausgestaltung wird der komprimierte Programmanteil des ersten Programms zumindest teilweise dekomprimiert und in den flüchtigen Speicher ko- piert und aus diesem ausgeführt.According to a further advantageous embodiment, the compressed program portion of the first program is at least partially decompressed and copied into the volatile memory and executed therefrom.
Nach der zumindest teilweisen Dekomprimierung des komprimierten Programmanteils des ersten Programms und dessen Abspeicherung in dem flüchtigen Speicher, ist das zumindest teil- weise dekomprimierte erste Programm ausführbar. Besonders vorteilhaft werden nur die Programmanteile des ersten Programms dekomprimiert, die auch zu einem vorgegebenen Zeitpunkt benötigt werden. Dadurch ergibt sich eine besonders schnelle und zugleich effiziente Ausführung der dekomprimier- ten Programmanteile des ersten Programms.After the at least partial decompression of the compressed program portion of the first program and its storage in the volatile memory, the at least partially decompressed first program can be executed. Particularly advantageous only the program portions of the first program are decompressed, which are also needed at a given time. This results in a particularly fast and at the same time efficient execution of the decompressed program components of the first program.
Gemäß einer weiteren vorteilhaften Ausgestaltung wird der komprimierte Programmanteil des ersten Programms mittels eines nichtkomprimierten Programmanteils des ersten Programms dekomprimiert.According to a further advantageous embodiment, the compressed program portion of the first program is decompressed by means of a non-compressed program portion of the first program.
Umfasst das erste Programm neben dem komprimierten Programmanteil auch nichtkomprimierte Programmanteile, die ohne vorherige Dekomprimierung ausgeführt werden können, so ist es besonders vorteilhaft, wenn mittels einer Ausführung der nichtkomprimierten Programmanteile die komprimierten Programmanteile des ersten Programms dekomprimiert werden. Dies hat den Vorteil, dass die eigentliche Dekomprimierungsfunkti- onalität dekomprimiert im ersten Programm gespeichert ist und somit besonders schnell ausgeführt werden kann.If the first program comprises not only the compressed program portion but also uncompressed program portions which can be executed without prior decompression, it is particularly advantageous if the compressed program portions of the first program are decompressed by means of execution of the non-compressed program portions. This has the advantage that the actual decompression functionality is stored decompressed in the first program and thus can be executed very quickly.
Gemäß einer weiteren vorteilhaften Ausgestaltung wird der nichtkomprimierte Programmanteil des ersten Programms aus dem nichtflüchtigen Speicher ausgeführt.According to a further advantageous embodiment, the non-compressed program portion of the first program is executed from the nonvolatile memory.
Eine Ausführung des nichtkomprimierten Programmanteils des ersten Programms aus dem nichtflüchtigen Speicher kann besonders schnell durchgeführt werden, da es bereits im nichtflüchtigen Speicher gespeichert ist. Eine besonders schnelle Dekomprimierung kann erreicht werden, wenn mittels der Ausführung des nichtkomprimierten Programmanteils der kompri- mierte Programmanteil dekomprimiert wird.Execution of the non-compressed program portion of the first program from the non-volatile memory can be carried out particularly quickly, since it is already stored in the non-volatile memory. A particularly rapid decompression can be achieved if the compressed program portion is decompressed by means of the execution of the uncompressed program portion.
Ausführungsbeispiele der Erfindung sind im Folgenden anhand der schematischen Zeichnungen näher erläutert. Es zeigen:Embodiments of the invention are explained in more detail below with reference to the schematic drawings. Show it:
Figur 1 eine schematische Darstellung eines Steuergerätes,1 shows a schematic representation of a control unit,
Figur 2 eine weitere schematische Darstellung eines Steuergerätes .Figure 2 is another schematic representation of a control device.
Elemente gleicher Konstruktion oder Funktion sind figurenübergreifend mit den gleichen Bezugszeichen gekennzeichnet.Elements of the same construction or function are identified across the figures with the same reference numerals.
In Figur 1 ist ein Steuergerät CU dargestellt, das beispielsweise Verwendung in einem Kraftfahrzeug findet. Beispielswei- se kann das Steuergerät als ESP-Steuergerät oder als Steuergerät zur Steuerung der Anzeigen eines Armaturenbrettes des Kraftfahrzeugs ausgebildet sein. Das Steuergerät CU umfasst einen nichtflüchtigen Speicher NV MEM und einen flüchtigen Speicher V_MEM. Beide Speicher können beispielsweise in einem MikroController uC integriert sein, der Bestandteil des Steuergerätes CU ist. Der nichtflüchtige Speicher NV MEM und/oder der flüchtige Speicher V MEM können grundsätzlich aber auch als externe Speicherbauelemente außerhalb des Mikrocontrol- lers uC im Steuergerät CU ausgebildet sein.FIG. 1 shows a control unit CU which, for example, is used in a motor vehicle. For example, the control unit may be designed as an ESP control unit or as a control unit for controlling the displays of a dashboard of the motor vehicle. The control unit CU comprises a nonvolatile memory NV MEM and a volatile memory V_MEM. Both memories can be integrated, for example, in a microcontroller uC, which is part of the control unit CU. The non-volatile memory NV MEM and / or the volatile memory V MEM can in principle but also be designed as external memory devices outside the microcontroller uC in the control unit CU.
Der nichtflüchtige Speicher NV MEM ist beispielsweise als Flash-Speicher ausgebildet und speichert Daten und/oder Programme resistent und dauerhaft, auch ohne permanente Spannungsversorgung. Der als Flash-Speicher ausgebildete nichtflüchtige Speicher NV MEM ist neuprogrammierbar ausgebildet. Ein zuvor in dem nichtflüchtigen Speicher NV_MEM abgespei- cherter Datensatz oder ein Programm kann zunächst gelöscht werden und nachfolgend durch einen anderen Datensatz und/oder durch eine aktuellere Version des Programms und/oder durch ein anderes Programm ersetzt werden. Dabei ist der nichtflüchtige Speicher NV MEM typischerweise sektorweise löschbar oder programmierbar ausgebildet, wobei einem Sektor mehrere Speicherzellen zugeordnet sind.The non-volatile memory NV MEM is designed, for example, as a flash memory and stores data and / or programs resistant and permanently, even without a permanent power supply. The nonvolatile memory NV MEM designed as a flash memory is designed in a reprogrammable manner. A data record or a program previously stored in the non-volatile memory NV_MEM can first be deleted and subsequently be replaced by another data record and / or by a more recent version of the program and / or by another program. In this case, the nonvolatile memory NV MEM is typically designed to be erasable or programmable sector by sector, wherein a plurality of memory cells are assigned to one sector.
Der flüchtige Speicher V MEM ist beispielsweise als Random- Access-Memory (RAM-Speicher) ausgebildet. Somit kann typi- scherweise jede Speicherzelle des flüchtigen Speichers V_MEM über Ihre zugeordnete Adresse entweder lesend oder schreibend angesprochen werden. Der flüchtige Speicher V MEM muss dabei typischerweise nicht sequentiell oder in Sektoren ausgelesen werden, sondern erlaubt einen wahlfreien Zugriff. Dabei ist der flüchtige Speicher V MEM typischerweise ausgebildet, Daten und/oder Software-Programme nur so lange abzuspeichern, so lange eine ausreichende Spannungsversorgung des flüchtigen Speichers V_MEM gewährleistet ist. Der flüchtige Speicher V MEM ist somit nicht dazu geeignet, Daten und/oder Software- Programme dauerhaft abzuspeichern.The volatile memory V MEM is designed, for example, as a random access memory (RAM memory). Thus, typically each memory cell of the volatile memory V_MEM can be addressed either read or write via its assigned address. The volatile memory V MEM typically does not have to be read sequentially or in sectors, but allows random access. In this case, the volatile memory V MEM is typically designed to store data and / or software programs only as long as a sufficient voltage supply of the volatile memory V_MEM is ensured. The volatile memory V MEM is therefore not suitable for permanently storing data and / or software programs.
Zusätzlich umfasst das Steuergerät eine Kommunikationsschnittstelle IF, die das Steuergerät beispielsweise mit einem Kommunikationsnetzwerk des Kraftfahrzeugs koppelt. Die Kommunikationsschnittstelle IF ist typischerweise Bestandteil des MikroControllers uC, kann grundsätzlich aber auch außerhalb des MikroControllers uC im Steuergerät CU angeordnet sein. Über die Kommunikationsschnittstelle IF können Daten vom MikroController uC übermittelt, wie auch von diesem empfangen werden. Beispielsweise ist die Kommunikationsschnittstelle IF als Controller-Area-Network-Schnittstelle (CAN- Schnittstelle) oder Serial-Communication-Interface (SCI-In addition, the control unit comprises a communication interface IF, which couples the control unit, for example, with a communication network of the motor vehicle. The communication interface IF is typically part of the microcontroller uC, but in principle can also be arranged outside the microcontroller uC in the control unit CU be. Data can be transmitted by the microcontroller uC via the communication interface IF, as can also be received by the latter. For example, the communication interface IF is a controller area network interface (CAN interface) or a serial communication interface (SCI).
Schnittstelle) ausgebildet. Grundsätzlich sind aber auch andere dem Fachmann bekannte Kommunikationsschnittstellen denkbar.Interface) formed. In principle, however, other communication interfaces known to the person skilled in the art are also conceivable.
Der nichtflüchtige Speicher NV_MEM umfasst in Figur 1 zwei Programme, die mittels einer Central-Processing-Unit CPU in dem MikroController uC abgearbeitet werden. Das erste Programm FL ist als sogenannter Flash-Loader ausgebildet und das zweite Programm APPL ist als Anwendungsprogramm ausgebildet. Mittels des zweiten Programms APPL wird die Hauptfunktionalität des Steuergerätes CU umgesetzt. Am Beispiel eines ESP- Steuergerätes wird beispielsweise die Drehzahl-Überwachung und Drehzahl-Regelung der Räder des Kraftfahrzeugs mittels der Abarbeitung des zweiten Programms APPL umgesetzt, so dass ein unkontrolliertes Ausbrechen des Kraftfahrzeugs aus der vorgegebenen Fahrrichtung verhindert wird.The non-volatile memory NV_MEM comprises in FIG. 1 two programs that are executed by means of a central processing unit CPU in the microcontroller uC. The first program FL is designed as a so-called flash loader and the second program APPL is designed as an application program. By means of the second program APPL, the main functionality of the control unit CU is implemented. Using the example of an ESP control unit, for example, the speed monitoring and speed control of the wheels of the motor vehicle is implemented by means of the execution of the second program APPL, so that an uncontrolled breaking of the motor vehicle from the predetermined direction of travel is prevented.
Das als Flash-Loader ausgebildete erste Programm FL umfasst typischerweise mehrere Programmfunktionen, die zum Verwalten des nichtflüchtigen Speichers NV MEM verwendet werden können, so z. B. zum Löschen, zum Programmieren oder zum Verifizieren. Mittels einer Abarbeitung der jeweiligen Programmfunktion des ersten Programms FL kann der nichtflüchtige Speicher NV MEM beispielsweise zumindest teilweise verifiziert und/oder gelöscht werden und/oder eine mittels der Kommunikationsschnittstelle IF zugeführte neuere Version des zweiten Programms APPL zumindest teilweise neuprogrammiert werden. Grundsätzlich sind weitere dem Fachmann bekannte Funktionen zum Verwalten des nichtflüchtigen Speichers NV_MEM denkbar. Die Programmfunktion des ersten Programms FL, die abgearbeitet werden soll, wird typischerweise mittels eines Programmiergerätes vorgegeben, das mit dem Kommunikationsnetzwerk des Kraftfahrzeugs gekoppelt ist. Dabei ist das erste Programm FL dazu ausgebildet, mittels des Programmiergerätes angesteuert zu werden und mit diesem Daten auszutauschen. Beispielsweise umfasst das erste Programm FL Treiberfunktionen zur Ansteuerung der Kommunikations-Schnittstelle IF, so z. B. Treiberfunktionen der CAN-Schnittstelle . Ferner umfasst das erste Programm FL typischerweise Initialisierungsfunktionen als Programmfunktionen, die mittels der Treiberfunktionen die Verbindung zum Programmiergerät ermöglicht. Die Initialisie- rungsfunktionen sind des Weiteren dazu ausgebildet, die von dem Programmiergerät übermittelten Befehle zu interpretieren und abhängig von dem empfangenen Befehl Programmfunktionen auszuführen .The first program FL embodied as a flash loader typically comprises a plurality of program functions that can be used for managing the nonvolatile memory NV MEM, such as, for example, For example, to delete, to program or to verify. By means of a processing of the respective program function of the first program FL, the nonvolatile memory NV MEM can be at least partially verified and / or deleted and / or a newer version of the second program APPL supplied by the communication interface IF can be at least partially reprogrammed. In principle, further functions known to the person skilled in the art for managing the non-volatile memory NV_MEM are conceivable. The program function of the first program FL to be executed is typically specified by means of a programming device connected to the communication network of the motor vehicle is coupled. In this case, the first program FL is designed to be controlled by the programming device and to exchange data with it. For example, the first program FL driver functions for controlling the communication interface IF, such. B. Driver functions of the CAN interface. Furthermore, the first program FL typically includes initialization functions as program functions which enable the connection to the programming device by means of the driver functions. The initialization functions are furthermore designed to interpret the commands transmitted by the programming device and to execute program functions depending on the received command.
Ist der nichtflüchtige Speicher NV MEM dazu ausgebildet, entweder einen lesenden oder einen schreibenden Zugriff zu einem vorgegebenen Zeitpunkt zu zulassen, wird vor der Ausführung der jeweiligen Programmfunktion des ersten Programms FL, die einen schreibenden Zugriff, so z. B. einen löschenden oder programmierenden Zugriff, auf den nichtflüchtigen SpeicherIf the non-volatile memory NV MEM is designed to allow either a read or a write access at a given time, before the execution of the respective program function of the first program FL, the write access, such. As a deleting or programming access to the non-volatile memory
NV MEM umfasst, die jeweilige Programmfunktion vor deren Ausführung in den flüchtigen Speicher V MEM kopiert und aus diesem zur Ausführung gelesen. Programmfunktionen des ersten Programms FL, die keinen schreibenden Zugriff auf den nicht- flüchtigen Speicher NV MEM umfassen, können weiterhin aus dem nichtflüchtigen Speicher NV MEM ausgeführt werden.NV MEM, the respective program function is copied before execution in the volatile memory V MEM and read from this for execution. Program functions of the first program FL, which do not include write access to the nonvolatile memory NV MEM, can continue to be executed from the nonvolatile memory NV MEM.
Neben den Programmfunktionen des ersten Programms FL, die in den flüchtigen Speicher V MEM kopiert werden, wird zur Aus- führung der jeweiligen Programmfunktionen typischerweise eine Laufzeitumgebung benötigt, die beispielsweise die Adresszuordnung und Reservierung für Programmvariablen im flüchtigen Speicher V MEM umfasst.In addition to the program functions of the first program FL, which are copied into the volatile memory V MEM, a runtime environment is typically required to execute the respective program functions, which comprises, for example, the address assignment and reservation for program variables in the volatile memory V MEM.
Typischerweise sollte das ursprüngliche erste Programm FL im nichtflüchtigen Speicher NV MEM durch eine Ausführung der je- weiligen Programmfunktion des ersten Programms FL nicht gelöscht und/oder verändert werden.Typically, the original first program FL should be stored in the non-volatile memory NV MEM by execution of the respective spective program function of the first program FL can not be deleted and / or changed.
In Figur 2 ist ein erstes Ausführungsbeispiels des Steuerge- rätes CU dargestellt. Das Steuergerät CU umfasst den nichtflüchtigen Speicher NV_MEM mit dem in ihm abgespeicherten ersten Programm FL und zweiten Programm APPL. Das erste Programm FL ist in einen nichtkomprimierten Programmanteil und in einen komprimierten Programmanteil (schraffiert darge- stellt) unterteilt. Dem komprimierten Programmanteil des ersten Programms FL sind beispielsweise die Programmfunktionen zum Verwalten des nichtflüchtigen Speichers NV MEM zugeordnet, wobei mittels der Komprimierung, so z. B. mittels ZIP- Komprimierung, der Speicherbedarf im Vergleich zur Figur 1 deutlich kleiner ist, so z . B. halbiert im Vergleich zur ursprünglichen Speichergröße des ersten Programms FL. Dem nichtkomprimierten Programmanteil des ersten Programms FL sind typischerweise die Initialisierungsfunktionen des ersten Programms FL zugeordnet.FIG. 2 shows a first exemplary embodiment of the control unit CU. The control unit CU comprises the nonvolatile memory NV_MEM with the first program FL and second program APPL stored in it. The first program FL is subdivided into a non-compressed program part and a compressed program part (shown hatched). For example, the program functions for managing the non-volatile memory NV MEM are associated with the compressed program portion of the first program FL, wherein by means of the compression, such. B. by ZIP compression, the storage requirements compared to Figure 1 is significantly smaller, such. B. halved compared to the original memory size of the first program FL. The non-compressed program portion of the first program FL is typically associated with the initialization functions of the first program FL.
Am Beispiel einer Löschfunktion, soll im Folgenden das Verfahren zum Betreiben des Steuergerätes näher erläutert werden .Using the example of a deletion function, the method for operating the control unit will be explained in more detail below.
Wird mittels des mit dem Kommunikationsnetzwerk des Kraftfahrzeugs verbundenen Programmiergerätes ein Löschbefehl zum Löschen des Speicherbereiches des zweiten Programms APPL vorgegeben, wird der Löschbefehl zunächst mittels der Initialisierungsfunktionen des ersten Programms FL interpretiert. Die Initialisierungsfunktionen sind typischerweise dem nichtkomprimierten Programmanteil des ersten Programms FL zugeordnet (nichtschraffierter Bereich in Figur 2) und müssen somit vor deren Ausführung typischerweise nicht dekomprimiert werden. Umfassen die Initialisierungsfunktionen keine Programmfunkti- onen mit schreibenden Zugriff auf den nichtflüchtigen Speicher NV MEM, können diese direkt aus dem nichtflüchtigen Speicher NV MEM ausgeführt werden. Dem vom Programmiergerät übermittelten Löschbefehl ist typischerweise eine korrespondierende Löschfunktion im ersten Programm FL zugeordnet, welche typischerweise im komprimierten Programmanteil des ersten Programms FL vorliegt (schraffierter Bereich des ersten Pro- gramms FL in Figur 2) . Somit wird vor der Ausführung derIf an erase command for deleting the memory area of the second program APPL is specified by means of the programming device connected to the communication network of the motor vehicle, the erase command is first interpreted by means of the initialization functions of the first program FL. The initialization functions are typically associated with the non-compressed program portion of the first program FL (non-hatched area in Figure 2) and thus typically do not need to be decompressed prior to their execution. If the initialization functions do not include program functions with write access to the nonvolatile memory NV MEM, they can be executed directly from the non-volatile memory NV MEM. From the programmer The deletion command transmitted is typically assigned a corresponding deletion function in the first program FL, which is typically present in the compressed program portion of the first program FL (hatched area of the first program FL in FIG. 2). Thus, before the execution of the
Löschfunktion, diese zunächst dekomprimiert (durch Pfeil in Figur 2 dargestellt) .Deletion function, this initially decompressed (shown by arrow in Figure 2).
Typischerweise erfolgt die Dekomprimierung der jeweiligen Programmfunktion oder die Dekomprimierung des gesamten komprimierten Programmsanteils des ersten Programms FL mittels einer Dekomprimierungsfunktion, die typischerweise im nichtkomprimierten Programmanteil des ersten Programms FL vorliegt. Da die Dekomprimierungsfunktion typischerweise keinen schreibenden Zugriff auf den nichtflüchtigen Speicher NV MEM ausführt, kann auch diese direkt aus dem nichtflüchtigen Speicher NV_MEM ausgeführt werden. Grundsätzlich kann die Dekomprimierungsfunktion zunächst aber auch in den flüchtigen Speicher V MEM kopiert werden und danach aus diesem ausge- führt werden.Typically, the decompression of the respective program function or the decompression of the entire compressed program portion of the first program FL takes place by means of a decompression function, which is typically present in the non-compressed program portion of the first program FL. Since the decompression function typically does not perform write access to the nonvolatile memory NV MEM, it can also be executed directly from the nonvolatile memory NV_MEM. In principle, however, the decompression function can initially also be copied into the volatile memory V MEM and then executed therefrom.
Die jeweilige Initialisierungsfunktion ruft somit vor der Ausführung der Löschfunktion zunächst die jeweilige Dekomprimierungsfunktion auf zur Dekomprimierung der Löschfunktion. Mittels der Dekomprimierungsfunktion kann bevorzugt die bereits dekomprimierten Anteile der Löschfunktion in den flüchtigen Speicher V_MEM kopiert werden, so dass am Ende der Dekomprimierung die gesamte Löschfunktion dekomprimiert im flüchtigen Speicher V MEM vorliegt (durch Pfeil in Figur 2 dargestellt) . Erst jetzt ist die Löschfunktion mittels derThe respective initialization function thus first calls the respective decompression function for decompression of the deletion function before executing the deletion function. By means of the decompression function, the already decompressed portions of the erasure function can preferably be copied into the volatile memory V_MEM, so that at the end of the decompression the entire erase function is decompressed in the volatile memory V MEM (represented by the arrow in FIG. 2). Only now is the deletion function using the
Central-Processing-Unit ausführbar und kann von der jeweiligen Initialisierungsfunktion zur Ausführung aufgerufen werden .Central processing unit executable and can be called by the respective initialization function to execute.
Typischerweise werden alle Programmfunktionen, die im komprimierten Programmanteil des ersten Programms FL vorliegen, vor deren Ausführung zunächst dekomprimiert und in den flüchtigen Speicher V MEM kopiert. Dabei können im komprimierten Programmanteil des ersten Programms FL auch Programmfunktionen vorliegen, die keinen schreibenden Zugriff auf den nichtflüchtigen Speicher NV MEM umfassen, so z. B. Verifikations- funktionen und Funktionen zum Auslesen von Versionsnummern.Typically, all program functions that are present in the compressed program portion of the first program FL are first decompressed before decompression and volatile Memory V MEM copied. In this case, program functions may also be present in the compressed program portion of the first program FL, which do not comprise writing access to the non-volatile memory NV MEM, such as, for example, B. Verification functions and functions for reading version numbers.
Die Dekomprimierung kann derart erfolgen, dass nur die mittels des Programmiergerätes vorgegebenen Programmfunktionen vor deren Ausführung dekomprimiert werden und in den flüchti- gen Speicher V_MEM kopiert werden. Grundsätzlich kann aber auch der gesamte komprimierte Programmanteil des ersten Programms FL zunächst dekomprimiert werden und in den flüchtigen Speicher V_MEM kopiert werden, bevor vorgegebene Programmfunktionen aus dem nun dekomprimiert vorliegenden komprimier- ten Programmanteil des ersten Programms FL aus dem flüchtigen Speicher V_MEM ausgeführt werden.The decompression can be carried out in such a way that only the program functions predetermined by means of the programming device are decompressed prior to their execution and copied into the volatile memory V_MEM. In principle, however, the entire compressed program portion of the first program FL can first be decompressed and copied into the volatile memory V_MEM before predetermined program functions are executed from the now decompressed compressed program portion of the first program FL from the volatile memory V_MEM.
In Figur 3 ist ein weiteres Ausführungsbeispiel dargestellt, in dem das als Flash-Loader ausgebildete erste Programm FL in einem nichtflüchtigen Speicher ROM abgespeichert, der als Read-Only-Memory ausgebildet ist. Das zweite Programm APPL ist weiterhin in dem als Flash-Speicher ausgebildeten nichtflüchtigen Speicher NV_MEM abgespeichert. Das hat den Vorteil, dass der gesamte Speicherbereich des als Flash-Speicher ausgebildeten nichtflüchtigen Speichers NV MEM für das zweite Programm APPL und/oder weiterer Datensätze zur Verfügung steht. Durch die zumindest teilweise komprimierte Abspeicherung des ersten Programms FL in dem als Read-Only-Memory ausgebildeten nichtflüchtigen Speicher ROM, kann dieser effi- zient genutzt werden und sogar mit geringerem Speicherplatz ausgebildet sein.FIG. 3 shows a further exemplary embodiment in which the first program FL designed as a flash loader is stored in a non-volatile memory ROM, which is designed as a read-only memory. The second program APPL is furthermore stored in the nonvolatile memory NV_MEM in the form of a flash memory. This has the advantage that the entire memory area of the nonvolatile memory NV MEM designed as a flash memory is available for the second program APPL and / or further data records. As a result of the at least partially compressed storage of the first program FL in the non-volatile memory ROM embodied as a read-only memory, it can be used efficiently and even designed with a smaller storage space.
Die Dekomprimierung der komprimierten Programmanteile des ersten Programms FL im Read-Only-Memory erfolgt analog zur Darstellung in Figur 2. The decompression of the compressed program portions of the first program FL in read-only memory is analogous to the representation in FIG. 2.

Claims

Patentansprüche claims
1. Verfahren zum Betreiben eines Steuergerätes (CU) mit zumindest einem nichtflüchtigen Speicher (NV MEM) , in dem ein erstes Programm (FL) gespeichert ist, wobei der nichtflüchtige Speicher (NV_MEM) mittels einer Ausführung des ersten Programms (FL) verwaltet wird, wobei bei dem Verfahren das erste Programm (FL) zumindest teilweise komprimiert im nichtflüchtigen Speicher (NV_MEM) abgespeichert wird und vor dessen Ausführung dekomprimiert wird.Method for operating a control unit (CU) with at least one nonvolatile memory (NV MEM) in which a first program (FL) is stored, the nonvolatile memory (NV_MEM) being managed by means of execution of the first program (FL), wherein in the method, the first program (FL) is at least partially compressed in the non-volatile memory (NV_MEM) is stored and decompressed before its execution.
2. Verfahren nach Anspruch 1, bei dem ein komprimierter Programmanteil des ersten Programms (FL) dekomprimiert wird und in einen flüchtigen Speicher (V MEM) kopiert wird und aus diesem ausgeführt wird.2. The method of claim 1, wherein a compressed program portion of the first program (FL) is decompressed and copied to a volatile memory (V MEM) and is executed from this.
3. Verfahren nach Anspruch 1 oder 2, bei dem der komprimierte Programmanteil des ersten Programms (FL) zumindest teilweise dekomprimiert wird und in einen flüchtigen Speicher (V_MEM) kopiert wird und aus diesem ausgeführt wird.3. The method of claim 1 or 2, wherein the compressed program portion of the first program (FL) is at least partially decompressed and copied to a volatile memory (V_MEM) and is executed from this.
4. Verfahren nach einem der vorstehenden Ansprüche, bei dem der komprimierte Programmanteil des ersten Programms (FL) mittels eines nichtkomprimierten Programmanteils des ers- ten Programms (FL) dekomprimiert wird.4. Method according to one of the preceding claims, in which the compressed program portion of the first program (FL) is decompressed by means of a non-compressed program portion of the first program (FL).
5. Verfahren nach Anspruch 4, bei dem der nichtkomprimierte Programmanteil des ersten Programms (FL) aus dem nichtflüchtigen Speicher (NV MEM) ausgeführt wird.5. The method of claim 4, wherein the non-compressed program portion of the first program (FL) from the non-volatile memory (NV MEM) is executed.
6. Steuergerät (CU) mit zumindest einem nichtflüchtigen Speicher (NV MEM) , in dem ein erstes Programm (FL) gespeichert ist, wobei der nichtflüchtige Speicher (NV MEM) mittels einer Ausführung des ersten Programms (FL) verwaltet wird, wobei das Steuergerät (CU) dazu ausgebildet ist, das erste Programm (FL) zumindest teilweise komprimiert im nicht- flüchtigen Speicher (NV MEM) abzuspeichern und vor dessen Ausführung zu dekomprimieren. 6. Control unit (CU) with at least one nonvolatile memory (NV MEM) in which a first program (FL) is stored, wherein the nonvolatile memory (NV MEM) is managed by means of an execution of the first program (FL), wherein the control unit (CU) is designed to at least partially compress the first program (FL) in the non- volatile memory (NV MEM) and decompress before it is executed.
PCT/EP2008/066714 2007-12-10 2008-12-03 Method for operating a control appliance, and control appliance WO2009074499A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE200710059355 DE102007059355A1 (en) 2007-12-10 2007-12-10 Method for operating a control unit and control unit
DE102007059355.6 2007-12-10

Publications (1)

Publication Number Publication Date
WO2009074499A1 true WO2009074499A1 (en) 2009-06-18

Family

ID=40513745

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2008/066714 WO2009074499A1 (en) 2007-12-10 2008-12-03 Method for operating a control appliance, and control appliance

Country Status (2)

Country Link
DE (1) DE102007059355A1 (en)
WO (1) WO2009074499A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2971349A1 (en) * 2011-02-09 2012-08-10 Continental Automotive France METHOD FOR REPROGRAMMING A CALCULATOR, DATA STORAGE MEDIUM AND AUTOMOTIVE VEHICLE CALCULATOR
WO2016074837A1 (en) * 2014-11-12 2016-05-19 Robert Bosch Gmbh Method and storage management device for transmitting data within a computer system, storage system and computer system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102011079397A1 (en) * 2011-07-19 2013-01-24 Bayerische Motoren Werke Aktiengesellschaft Motor vehicle control device connected to programming system used for assembly and repair of vehicle, has memory management unit to store program data in determined storage area for execution by CPU

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4425388A1 (en) * 1994-07-19 1996-01-25 Bosch Gmbh Robert Control device for ensuring programmability of Flash-EPROM
US6009372A (en) * 1997-10-01 1999-12-28 Cummins Engine Company, Inc. Management of programming and memory space for an internal combustion engine control system
US6138059A (en) * 1998-03-10 2000-10-24 Denso Corporation Vehicle control system and unit for preventing power supply cutoff during re-programming mode
DE10027006A1 (en) * 2000-05-31 2001-12-06 Bosch Gmbh Robert System for controlling and regulating running processes in a motor vehicle and method for starting it up uses indirect memory access points for control devices to load required programs into their operating memory.

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4425388A1 (en) * 1994-07-19 1996-01-25 Bosch Gmbh Robert Control device for ensuring programmability of Flash-EPROM
US6009372A (en) * 1997-10-01 1999-12-28 Cummins Engine Company, Inc. Management of programming and memory space for an internal combustion engine control system
US6138059A (en) * 1998-03-10 2000-10-24 Denso Corporation Vehicle control system and unit for preventing power supply cutoff during re-programming mode
DE10027006A1 (en) * 2000-05-31 2001-12-06 Bosch Gmbh Robert System for controlling and regulating running processes in a motor vehicle and method for starting it up uses indirect memory access points for control devices to load required programs into their operating memory.

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2971349A1 (en) * 2011-02-09 2012-08-10 Continental Automotive France METHOD FOR REPROGRAMMING A CALCULATOR, DATA STORAGE MEDIUM AND AUTOMOTIVE VEHICLE CALCULATOR
WO2012107189A3 (en) * 2011-02-09 2012-10-26 Continental Automotive France Computer reprogramming method, data storage medium and motor vehicle computer
CN103339603A (en) * 2011-02-09 2013-10-02 法国大陆汽车公司 Computer reprogramming method, data storage medium and motor vehicle computer
US9223697B2 (en) 2011-02-09 2015-12-29 Continental Automotive France Computer reprogramming method, data storage medium and motor vehicle computer
WO2016074837A1 (en) * 2014-11-12 2016-05-19 Robert Bosch Gmbh Method and storage management device for transmitting data within a computer system, storage system and computer system

Also Published As

Publication number Publication date
DE102007059355A1 (en) 2009-06-18

Similar Documents

Publication Publication Date Title
DE102005013285B4 (en) Method of configuring a controller and controller
DE102009019271A1 (en) Transfer Sequence Numbers for Power Failure Recovery in a Nonvolatile Memory
WO2000010060A2 (en) Method for applying the control data of an electronic vehicle control apparatus
EP3128383A1 (en) Field device
WO2017125181A1 (en) Method for updating control device software, preferably for a motor vehicle
WO2009074499A1 (en) Method for operating a control appliance, and control appliance
EP2608037B1 (en) Method for managing data in a flash memory, driver assistance device and motor vehicle
EP0664387B1 (en) Process to change the working mode of a control device in vehicles
DE10234063B4 (en) Method for variant-specific programming of a program and data memory of a control device, in particular a control device of a motor vehicle, and device for carrying out the method
DE102016200711A1 (en) Method for updating software of a control unit, preferably for a motor vehicle
DE102005032514B3 (en) Memory and method for operating the memory
DE10252059B3 (en) Data memory operating method e.g. for portable data carrier or mobile data processor, using back-up memory for retaining memory cell contents upon current interruption during programming
DE10322723B3 (en) Memory incomplete write-in or erasure condition handling device using write-in of data read from further page in memory page identified with inconsistency
DE102013003593A1 (en) Method for performing deletion process in non-volatile memory element for controlling motor car components, involves deleting memory areas including status flags, in which status state is adjusted, during performing entire deleting process
DE102008040366A1 (en) System e.g. antilock brake system, for controlling functional components of e.g. sports vehicle, has RAM connected with electrically EPROM utilized for storing control parameters, which parameterize system for different vehicle variants
DE102005017298B4 (en) Method and device for writing a sequence program in a memory device of a program-controlled control device
EP2000914B1 (en) Method and device for reorganising data in a storage system, in particular for control devices in motor vehicles
DE102020212139A1 (en) Procedure for updating software
WO2001009902A1 (en) Method and circuit for the correction of memory errors
DE102019118577A1 (en) Actuator system with reprogrammable memory
DE112021002282T5 (en) ELECTRONIC CONTROL DEVICE AND UPDATE METHOD FOR CONTROL SOFTWARE
EP2653973A1 (en) Method for extending the life cycle of a physical flash storage device
EP2002342A2 (en) Method and arithmetic unit for operating a memory device
WO2018177698A1 (en) Method and device for updating a program
DE102006021745A1 (en) Non-volatile memory chip

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08859080

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08859080

Country of ref document: EP

Kind code of ref document: A1