CN106991114B - Method and apparatus for managing non-volatile memory of control device - Google Patents

Method and apparatus for managing non-volatile memory of control device Download PDF

Info

Publication number
CN106991114B
CN106991114B CN201611165940.1A CN201611165940A CN106991114B CN 106991114 B CN106991114 B CN 106991114B CN 201611165940 A CN201611165940 A CN 201611165940A CN 106991114 B CN106991114 B CN 106991114B
Authority
CN
China
Prior art keywords
variable
information
volatile memory
stored
variables
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.)
Active
Application number
CN201611165940.1A
Other languages
Chinese (zh)
Other versions
CN106991114A (en
Inventor
F.米尔德
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch 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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Publication of CN106991114A publication Critical patent/CN106991114A/en
Application granted granted Critical
Publication of CN106991114B publication Critical patent/CN106991114B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24553Query execution of query operations
    • G06F16/24562Pointer or reference processing operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/252Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Combined Controls Of Internal Combustion Engines (AREA)
  • Stored Programmes (AREA)

Abstract

The invention relates to a method and an apparatus for managing a non-volatile memory of a control device. Method for managing a non-volatile memory of a control device, characterized in that-first information (PM 1, PM2, PM1', PM 2') about a regulating variable (M1, M2, M1', M2') is read from a static area (101) of the non-volatile memory, -the storage location of the regulating variable is determined, -information about the dimension of the regulating variable is read from a variable area (102) of the non-volatile memory depending on the storage location, -the type of the regulating variable is determined, -depending on the type of the regulating variable, determining at least one grid point and/or at least one storage location for at least one value of the manipulated variable, based on the information of the dimensions and the storage location, reading at least one grid point and/or at least one value of the manipulated variable depending on the grid point or the corresponding storage location for the value.

Description

Method and apparatus for managing non-volatile memory of control device
Technical Field
The invention relates to a method and an apparatus for managing a non-volatile memory of a control device.
Background
The functions are implemented in functional software on a control unit, in particular a control unit used in a motor vehicle. The motor vehicle is equipped with different components depending on the embodiment. For example, different motorization or transmission types are available as vehicle variables (fahrzeugvariate). In order to adapt the function software to different vehicle variables, a plurality of control variables (e.g., parameters, characteristic curves, combined characteristic curves (Kennfeld)) are provided, which form a so-called data set.
The manipulated variable is parameterized for different vehicle variables. In this case, the existing parameters, characteristic curves or characteristic combinations are implemented with different values for the individual vehicle variables.
The non-volatile memory of the control device, for example a FLASH memory, is usually divided into different regions, for example into a region for the function software and another region for the control variable (data set region).
The structure of the data record area is defined statically in order to enable the functional software to find the correct storage location of the manipulated variable in the non-volatile memory by directly entering the corresponding initial address. Similarly, the static data set structure enables parameterization of the manipulated variables for the different variables. The properties of the manipulated variables and their initial addresses are stored in a description file, so that the application tool can read the properties of the manipulated variables and their initial addresses from the data set and present them in a readable manner to the user (Applikateur). The user can then change the values as required and rewrite them into the data record by means of the application tool.
For different variables, a different number of grid points (Stuetzstellenzahl) of the characteristic/combination characteristic is often necessary or sufficient. For example, a characteristic curve may require 10 grid points or only 2 grid points depending on whether a part is built or not.
The characteristic/combined characteristic is stored in the data set, for example, as a structure of the number of grid points, in particular including axes. Since the structure is known, the software and the application tool can also determine the number of one or more grid points first from the initial address and thereby find and access the axes and values.
Since the structure of the data record area is statically defined during software production, the maximum size (Groesse) required for different vehicle variables must be set for each characteristic curve/combined characteristic curve. Thus, often much more non-volatile memory for the data set is required than would be necessary for each individual data set variable. Although, based on the described structure of the characteristic curve/combined characteristic curve, it must be possible to vary the characteristic curve/combined characteristic curve with the application tool in terms of its size (number of grid points), it is only possible to vary the characteristic curve/combined characteristic curve within the range of the portion (Abschnitt) in the data set region that is set statically for the respective manipulated variable. If the maximum size of the manipulated variable is not used, then unusable blank regions are left in the data records. Thus, in the case of data set variables for different vehicle variables, the available non-volatile memory is not optimally used.
Disclosure of Invention
The task of the invention is therefore to: a method and a device of the type mentioned at the outset are improved as follows: the non-volatile memory can be managed optimally adapted to the requirements of the individual vehicle variables.
According to the invention, this object is achieved by a method and a device according to the invention.
By technical means, management of the non-volatile memory of the control device is achieved by:
reading first information about the adjustment variable from a static area of the non-volatile memory,
-determining a storage location of the manipulated variable,
reading information about the Dimension (Dimension) of the manipulated variable from a variable (flex) area of the non-volatile memory depending on the memory location,
-determining the type of the regulating variable,
determining at least one grid point and/or at least one storage location for at least one value of the manipulated variable on the basis of the information about the type, the dimensions and the storage location of the manipulated variable,
-reading at least one grid point and/or at least one value of a regulating variable depending on the grid point or the respective storage location of the value.
Additionally, it is particularly advantageous:
identifying a change in the dimension of the manipulated variable relative to the dimension of the corresponding read manipulated variable,
determining second information about a variable region of the non-volatile memory as a function of the identified change and the information about the at least one further manipulated variable,
-storing at least one adjustment variable with the identified change in a variable area of the non-volatile memory on the basis of the second information,
-storing the second information in the static area instead of the first information.
It is particularly advantageous to read the storage location of the first information from the file.
It is particularly advantageous if information about the variable manipulated variable is read from a file.
Also, a control device with a corresponding non-volatile memory, a control device for performing the method and a computer program are provided.
Further advantageous embodiments are the subject matter of the dependent claims.
Drawings
Subsequently, exemplary embodiments of the present invention are explained with reference to the drawings. In the drawings:
figure 1 schematically shows a region of a non-volatile memory,
figure 2 schematically shows a memory configuration for a characteristic curve,
fig. 3 schematically shows steps of a method for managing a non-volatile memory.
Detailed Description
Fig. 1 schematically shows two different partitions (Einteilung) of the non-volatile memory of the control device for 2 vehicle variables V, V'.
The memory is partitioned according to the respective vehicle variables. In this case, the characteristic curves (which are used synonymously below for characteristic curves, characteristic curves and similar control variables) can have different dimensions (for example the number of grid points) for different vehicle variables. Different combination profiles for different variables then require different amounts of memory.
The nonvolatile memory is, for example, a flash memory. The non-volatile memory is preferably divided into different regions.
Functional software C is stored in an area. In a further region, parameters P1, …, P5 or P1', …, P5' are stored. Characteristic curves or combined characteristic curves or other types of control variables can also be stored there.
The data set area, which is referred to below as static data set area, has a static structure. That is to say that each manipulated variable has a fixedly assigned memory location. The software C can specifically access the manipulated variable by recognizing a static memory location of the manipulated variable.
In a further static area 101 of the non-volatile memory, first information PM1, PM2, PM1', PM2' about the combined characteristic curves M1, M2, M1', M2' is stored. Alternatively, the checksums CS, CS ' may be stored in the static area 101 through the first information PM1, PM2, or PM1', PM2 '.
The combined characteristic curves M1, M2, M1', M2' are stored in the region 102 of the non-volatile memory. The data set area, which is referred to below as variable area, has no static structure. Depending on the vehicle variables or the size of the combination characteristic, the combination characteristic contained therein is stored in different positions. In the following, the combination characteristic curves M1, M2, M1', M2' are referred to as variable manipulated variables.
From the first information PM1, PM2, PM1', PM2' the storage position of the respective combination characteristic M1, M2, M1', M2' in the variable region 102 of the non-volatile memory can be determined.
In this example, the first information PM1, PM2, PM1', PM2' are pointers (pointers) at static addresses stored in the static area 101. Preferably, the pointer contains the initial address of the associated combination characteristic M1, M2, M1', M2' in the variable data set region 102. The pointers PM1, PM2, PM1', PM2' are preferably bundled (bundleln) as a list of pointers in the static area 101.
In the non-volatile memory, the data of the combination characteristic curves M1, M2, M1', M2', in particular the grid points and the associated values, are stored in the variable region 102. In addition, information about the dimensions of the combination characteristic curves M1, M2, M1', M2' is also stored. For example, the combined characteristic M1 has the dimension 5x10, the combined characteristic M2 has the dimension 11x10, the combined characteristic M1 'has the dimension 11x10 and the combined characteristic M2' has the dimension 2x 10.
Fig. 2 schematically shows a memory configuration for combining characteristic curves M1, M2, M1', M2'. In one area of the variable memory 102, grid points X _1, X _2, X _3, …, X _ Nx are stored, while in another area of the variable memory 102, values W _1, W _2, W _3, …, W _ Nx are stored. The number Nx of grid points is stored in another area of the variable memory 102 as information about the size of the combined characteristic curve, i.e., the dimension thereof. The characteristic curves with the number of grid points Nx have the same number of values Nw = Nx. In a combined characteristic having a number Nx of grid points on one axis and a number Ny of grid points on the other axis, the number of values Nw = Nx Ny. The number Nw of values or the number Ny of grid points on the other axis may be calculated or additionally stored for other dimensions, respectively. For a multi-dimensional combination characteristic, a different number of grid points may be set for each axis. The memory requirements for each grid point and/or value may be the same or different. Preferably, the storage space requirement is specified. The storage space requirement is, for example, 1 byte or 2 bytes. For example, a type of the combination characteristic curve is specified, by means of which the storage space requirement is defined. The type of the combination characteristic may be stored directly in the variable memory 102, for example, next to the number of grid points. It is also possible that the type is specified by the implementation of SW and therefore does not have to be stored in the data. In this case, however, the type must be contained in the description file for the application tool. The dimensions of the combined characteristic together with the type determine the required storage space requirement for the combined characteristic. This information can also be used to find and read the variable manipulated variables M1, M2, M1', M2'.
Instead of storing the dimensional information in the manipulated variable itself as described, the dimensional information can also be stored, for example, together with the pointers PM1, PM2, PM1', PM2' in a static area of the non-volatile memory.
The function software C indirectly accesses the variable manipulated variable via the corresponding pointers PM1, PM2, PM1', PM 2'. In this case, the functional software C first accesses the memory locations of the respective pointers PM1, PM2, PM1', PM2' in the static area 101 and reads the initial addresses of the respective variable manipulated variables therefrom. Starting from the initial address of the manipulated variable, the functional software C first reads the size information and then determines the storage position of the grid point and the value of the variable manipulated variable, and thus can access the storage position of the grid point and the value of the variable manipulated variable.
Information about the contents of the static area 101 of the non-volatile memory is preferably stored in a file readable to a calibration tool or a human. An example of an alternate format (AustauschFormat) is ASAM MCD-2 MC.
In order to process the grid points and/or values of the characteristic curves M1, M2, M1', M2' from the variable region 102, provision is made in this example for: information about the respective combination characteristic M1, M2, M1', M2' is stored in the file together with the belonging static address of the pointer PM1, PM2 or PM1', PM 2'.
This file can be used in addition to map (abbolden) the definition of the variable region 102 and to map the assignment of variable control variables, for example, the combination characteristic curves M1, M2, M1', M2' to the variable region 102.
Using the information from the description file, the application tool accesses the variable manipulated variable indirectly, similarly to the functional software, via the corresponding pointers PM1, PM2, PM1', PM 2':
1) the storage locations of the corresponding pointers PM1, PM2, PM1', PM2' are read from the file,
2) reading the values of the pointers PM1, PM2, PM1', PM2' from the static area 101 and determining the initial addresses of the corresponding variable manipulated variables M1, M2, M1', M2',
3) reading the size information of the variable manipulated variables M1, M2, M1', M2' according to the determined initial address from the variable region 102,
4) reading information about the variable manipulated variables M1, M2, M1', M2' from the document,
5) determining the storage location of the grid points/values of the variable manipulated variables M1, M2, M1', M2' as a function of the information and the determined size information and the initial address,
6) the grid points/values of the variable manipulated variables M1, M2, M1', M2' are read from the determined storage locations and the data are processed in accordance with the information read from the file.
Therefore, even in the case of different divisions of variable data group regions, the storage location of each combination characteristic M1, M2, M1', M2' is reliably determined and the data is correctly processed.
The variable area 102 of the memory is preferably filled with variable manipulated variables starting from its initial address without gaps. The method illustrated in fig. 3 is used to vary the dimensions of the combination characteristic. The method starts, for example, when the corresponding application tool is started.
After the start, step 301 is performed.
In step 301, first information PM1, PM2, PM1', PM2' (e.g. respective pointers) is read from the static area 101. Step 302 is performed immediately.
In step 302, the data of the combination characteristic curves M1, M2, M1', M2' are read from the variable memory 102 of the non-volatile memory as a function of the first information PM1, PM2, PM1', PM 2'. For example, the respective combination characteristic curves M1, M2, M1', M2' are accessed indirectly via the pointers. Furthermore, in this example, the number of grid points and/or information about the type of the combined characteristic curve is used in order to find and read the corresponding grid points and/or values.
Step 303 is performed immediately.
In step 303, information on the data of the combination characteristic curves M1, M2, M1', M2' is optionally output. Preferably, the information stored in the file, in particular the information about the grid points and/or the significant digits of the values (Bedeutung), is also displayed in order to describe the displayed data. Step 304 is performed immediately.
In step 304, it is checked whether the dimension (e.g. the number Nx of grid points) of at least one of the combination characteristic curves M1, M2, M1', M2' should be changed, preferably by user input. If the dimension should be changed, step 306 is implemented. Otherwise, step 305 is performed.
In step 305, data of the combined characteristic curve is stored according to the first information PM1, PM2, PM1', PM 2'. The storage may also be omitted if there is no change. The method is then terminated.
In step 306, the second information PNT1, PNT2, PNT1', PNT2' (e.g. new pointers) is determined from the new dimensions with respect to the combination characteristic curves M1, M2, M1', M2', so that the variable region 102 of the memory is filled with all variable manipulated variables starting from its initial address without gaps. Here, it is preferably checked that: the variable region 102 is dimensioned to accommodate all variable control variables. When the storage space is not sufficient, a failure message may be set and a jump back to step 304 (not shown in fig. 3) may be made.
Step 307 is performed immediately.
In step 307, the data of the combination characteristic curves M1, M2, M1', M2' are stored in the variable region 102 of the nonvolatile memory according to the second information PNT1, PNT2, PNT1', PNT 2'. It can be provided that this is limited to a combination characteristic whose dimensions and/or storage locations and/or data have been changed. Step 308 is performed immediately.
In step 308, the second information PNT1, PNT2, PNT1', PNT2' is stored in the static area 101 instead of the first information PM1, PM2, PM1', PM 2'. The method is then terminated.
Fig. 1 shows for each vehicle variable V, V ', a list of pointers PM1, PM2 or PM1', PM2', which are stored in the static area 101 together with an (optional) check sum CS or CS', respectively. For example, using MD5 or CRC16 checksums. If the checksum exists, it is preferably also calculated in the manner described above and stored in the static area, for example in steps 306 and/or 308.
It can be provided that: the checksum CS or CS' in the static area 101 is preferably compared with the checksum stored in the file. The data of the combination characteristic curves M1, M2, M1', M2' are then preferably assigned to grid points or values only if the checksums match. In case the checksums do not coincide, a failure message may be set. The checksum in the file is then preferably also restored in the above manner, for example in step 308.
The change (parameterization) of the grid points and/or values of the characteristic curve can likewise be integrated in a known manner into the above-described method for changing the dimensions of the variable manipulated variable or can be carried out subsequently thereto.
In a vehicle, usually only data sets of variables are stored. Fig. 1 illustrates two memory divisions with two variables V and V' of different data sets in opposite positions.
In the example of fig. 1, the combination characteristic M2 has a larger dimension than the combination characteristic M2'. As a result, the combination characteristic M2 requires a larger area in the variable memory 102 than the combination characteristic M2'.
In the variable region 102, the combined characteristic curves M1 and M2 of the variable V require a larger region in total than the combined characteristic curves M1' and M2' of the variable V '. The pointers and storage locations have been adapted according to the method described above. Thus, a blank region 104 is formed in the variable V, and a blank region composed of regions of the variable region 102 designated by 103 and 104 is formed in the variable V'. By contrast (Im Vergleich), in the conventional static memory partitioning, the entire (komplett) region 102 is already necessary in order to increase the sufficient space for the maximum sizes of M1 and M1 'and M2 and M2'.
The storage area for the variable manipulated variable can be adapted according to the requirements of the respective variable over the entire variable area 102 provided for this purpose. This is achieved, for example, by changing the number of grid points and the associated values. The corresponding shifting (Verschieben) of the manipulated variable following in the variable range 102 and the corresponding adaptation of the pointers PNT1, PNT2, PNT1', PNT2' to the shifted manipulated variable rearrange the variable range 102. In this way, existing non-volatile memories can be used optimally without changing the software, since only the space actually required for the respective variable is occupied in each case. In the case of conventional static memory partitioning, however, the maximum required memory space must be provided for each manipulated variable by all variables. Thus, memory savings (Speichersparnis) are created over the use of only static regions.
The execution of memory management is preferably implemented in a tool-supported manner. In this regard, the memory management is preferably integrated into the application tool. Particularly preferred are: the application tool and the memory management are used in conjunction with an analysis/optimization tool that optimizes the tuning parameters. This makes it possible, for example, to identify a characteristic curve/combined characteristic curve which is supplied with data constantly or linearly, in which the number of grid points can be reduced without information loss. This can be used to further optimize memory utilization (speicutzung).
Alternatively or additionally, in order that existing application tools and description file definitions can continue to be used without change, it can be provided that: the definition of the variable data record region, the assignment of the variable manipulated variable to the variable data record region and the pointer to the variable manipulated variable are stored in a separate, new description file or output.
Subsequently, a separate tool, for example, adapts the size of the variable manipulated variable and generates a conventional profile adapted to the different data set variables.
In order to ensure the compatibility of the description file with the data set, a checksum is calculated by means of pointers in the list and stored in the data set and the associated description file. The checksum is then checked by the application tool.
The present invention has been described taking a control apparatus for a motor vehicle as an example. The invention is not limited to this, however, and can be used for all types of control devices in which software runs, the performance of which software (Verhalten) is adapted to different applications using control variables.

Claims (15)

1. Method for managing a non-volatile memory of a control device, characterized in that:
-reading first information (PM 1, PM2, PM1', PM 2') about adjustment variables (M1, M2, M1', M2') from a static area (101) of the non-volatile memory,
-determining a storage location of the manipulated variable (M1, M2, M1', M2'),
-reading information about the dimension of the regulating variable (M1, M2, M1', M2') from a variable region (102) of the non-volatile memory depending on the storage location,
determining the type of the manipulated variable (M1, M2, M1', M2'),
-determining at least one grid point and/or at least one storage location of at least one value of the manipulated variable (M1, M2, M1', M2') from the information about the type, dimensions and storage location of the manipulated variable,
-reading at least one grid point and/or at least one value of the regulating variable (M1, M2, M1', M2') depending on the grid point or the respective storage location of the value.
2. The method of claim 1,
identifying a change in the dimension of the manipulated variable (M1, M2, M1', M2') relative to the dimension of the respective read manipulated variable (M1, M2, M1', M2'),
-determining second information (PNT 1, PNT2, PNT1', PNT 2') about a variable region (102) of the non-volatile memory on the basis of the identified change and the information about at least one further manipulated variable (M1, M2, M1', M2'),
-storing at least one adjustment quantity (M1, M2, M1', M2') with the identified change in a variable region (102) of the non-volatile memory as a function of the second information (PNT 1, PNT2, PNT1', PNT 2'),
-storing the second information (PNT 1, PNT2, PNT1', PNT 2') in the static area (101) instead of the first information (PM 1, PM2, PM1', PM 2').
3. Method according to claim 1 or 2, characterized in that the storage location of the first information (PM 1, PM2, PM1', PM 2') is read from a file.
4. A method according to claim 3, characterized in that a first checksum of the first information (PM 1, PM2, PM1', PM 2') is stored in a static area (101) of the non-volatile memory, a second checksum is stored in the file, and the information from the file is assigned to the adjusting variables (M1, M2, M1', M2') only in the case of a matching checksum.
5. Method according to claim 1 or 2, characterized in that the information about the variable manipulated variable (M1, M2, M1', M2') is read from a file.
6. Method according to claim 5, characterized in that a first checksum of the first information (PM 1, PM2, PM1', PM 2') is stored in a static area (101) of the non-volatile memory, a second checksum is stored in the file, and the information from the file is assigned to the regulating variables (M1, M2, M1', M2') only in the case of a matching checksum.
7. Method according to claim 1 or 2, characterized in that the manipulated variable (M1, M2, M1', M2') characterized as variable manipulated variables is stored in a variable region (102) of the non-volatile memory, while manipulated variables or parameters not characterized as variable manipulated variables are stored in a static region (101) of the non-volatile memory.
8. The method according to claim 7, characterized in that the variable manipulated variable (M1, M2, M1', M2') comprises dimension information, which is either stored in the variable manipulated variable itself in the variable region (102) or separately in the static region (101).
9. Method according to claim 1 or 2, characterized in that in the variable region (102) of the non-volatile memory the regulating variables (M1, M2, M1', M2') are stored in gapless, connected parts.
10. Method according to claim 1 or 2, characterized in that the regulating variables (M1, M2, M1', M2 ') for different variables (V, V ') in the variable region (102) of the non-volatile memory can be stored in different locations and can be processed by the same functional software.
11. The method according to claim 2, characterized in that the first information (PM 1, PM2, PM1', PM 2') and the second information (PNT 1, PNT2, PNT1', PNT 2') are pointers.
12. Control device comprising a non-volatile memory, characterized in that the non-volatile memory is configured at least with a statically addressable part and a variably addressable part, wherein in the statically addressed part functional software is stored in a first region (C) and first information (PM 1, PM2, PM1', PM 2') on manipulated variables (M1, M2, M1', M2') is stored in a static region (101), which first information (PM 1, PM2, PM1', PM 2') can be used by the functional software for read access to the manipulated variables (M1, M2, M1', M2'), wherein in a variable region (102) of the variably addressable part data of the manipulated variables (M1, M2, M1', M2') are stored in a predeterminable storage location, which storage location can be determined as a function of the first information (PM 1, M1', M2') PM2, PM1', PM2 ') are determined, wherein the storage locations can be configured differently in the variable region (102) for different variables (V, V ') of the manipulated variables (M1, M2, M1', M2 '), which require different storage space requirements (M1, M2, M1', M2 ').
13. The control device according to claim 12, characterized in that the data of all manipulated variables (M1, M2, M1', M2') are stored in the variable region (102) next to one another without gaps.
14. Control device, which is set up to carry out the steps of the method according to one of claims 1 to 11.
15. Computer-readable storage medium, on which a computer program is stored, which is set up to carry out the steps of the method according to one of claims 1 to 11.
CN201611165940.1A 2015-12-17 2016-12-16 Method and apparatus for managing non-volatile memory of control device Active CN106991114B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE102015225553.0A DE102015225553A1 (en) 2015-12-17 2015-12-17 Method and device for managing a non-volatile memory for a control device
DE102015225553.0 2015-12-17

Publications (2)

Publication Number Publication Date
CN106991114A CN106991114A (en) 2017-07-28
CN106991114B true CN106991114B (en) 2022-04-29

Family

ID=58993713

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611165940.1A Active CN106991114B (en) 2015-12-17 2016-12-16 Method and apparatus for managing non-volatile memory of control device

Country Status (2)

Country Link
CN (1) CN106991114B (en)
DE (1) DE102015225553A1 (en)

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100578533C (en) * 2006-06-14 2010-01-06 普天信息技术研究院 Method for dynamic aggregating multiple intelligent card function module based on memory card
KR100791325B1 (en) * 2006-10-27 2008-01-03 삼성전자주식회사 Apparatus and method for managing nonvolatile memory
CN101556555B (en) * 2008-04-08 2011-09-14 群联电子股份有限公司 Block managing method for flash memory as well as controller and storage system thereof
US9548108B2 (en) * 2008-06-18 2017-01-17 Super Talent Technology, Corp. Virtual memory device (VMD) application/driver for enhanced flash endurance
US9330736B2 (en) * 2012-11-09 2016-05-03 Qualcomm Incorporated Processor memory optimization via page access counting
KR101453313B1 (en) * 2013-03-25 2014-10-22 아주대학교산학협력단 Method for Page-level address mapping using flash memory and System thereof
CN104133779A (en) * 2013-05-02 2014-11-05 擎泰科技股份有限公司 Non-volatile memory and method of dynamically adjusting mapping manner of same

Also Published As

Publication number Publication date
DE102015225553A1 (en) 2017-06-22
CN106991114A (en) 2017-07-28

Similar Documents

Publication Publication Date Title
CN109426619B (en) Method for accessing flash memory module, related flash memory controller and electronic device
US8010770B2 (en) Caching device for NAND flash translation layer
CN101739352B (en) Method for managing storage device and related storage device thereof
US20080270427A1 (en) Method and Apparatus for Configuring a Control Device, and Corresponding Control Device
CN109144886B (en) Data storage device
US20150113210A1 (en) Data storage flash memory management method and program
CN106020837A (en) Method and system for loading set top box drive
US11327939B2 (en) Method and device for indexing dirty data in storage system page
US9996296B2 (en) Electronic control unit and method for rewriting data
CN111241008B (en) Method, device and controller for correcting EEPROM variable and address
CN106991114B (en) Method and apparatus for managing non-volatile memory of control device
EP2709073A2 (en) Electronic control unit of vehicle
US11941273B2 (en) Variable capacity Zone Namespace (ZNS) flash storage data path
AU2015371556A1 (en) Method for accessing a number of slave devices with registers by a master device over a network
KR101470158B1 (en) Calibration apparatus and method thereof
US11397535B2 (en) One-time programmable memory device and fault tolerance method thereof
CN116547652A (en) Data processing method and data processing device for flash memory
CN111198651B (en) Method for managing storage space, data storage device and controller thereof
Karacali et al. Full efficient NVM usage for MCU
CN118426708B (en) Data calibration method, device, equipment, storage medium and vehicle
CN110471791A (en) The storage method and device and equipment of the bad block message of a kind of pair of flash memory
CN114489516B (en) Data storage device and method
CN110895512A (en) Memory management method
CN113050877B (en) Mapping table storage method and device, electronic equipment and storage medium
CN113918095B (en) Hybrid cross storage method and device for data and electronic equipment

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant