WO2015098894A1 - データ記憶装置、車載データ記憶装置及びデータ記憶方法 - Google Patents
データ記憶装置、車載データ記憶装置及びデータ記憶方法 Download PDFInfo
- Publication number
- WO2015098894A1 WO2015098894A1 PCT/JP2014/084004 JP2014084004W WO2015098894A1 WO 2015098894 A1 WO2015098894 A1 WO 2015098894A1 JP 2014084004 W JP2014084004 W JP 2014084004W WO 2015098894 A1 WO2015098894 A1 WO 2015098894A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- block
- writing
- erasure
- storage
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7202—Allocation control and policies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7209—Validity control, e.g. using flags, time stamps or sequence numbers
Definitions
- the present invention relates to a data storage device, an in-vehicle data storage device, and a data storage method for storing data in a non-volatile memory such as a flash memory in which data is collectively erased for each block.
- flash memories are widely used for data storage in electronic devices mounted on vehicles, for example.
- the flash memory is a nonvolatile memory and has an advantage of a large data storage capacity.
- the flash memory has the disadvantages that it is necessary to erase data for each block of a predetermined size and that the number of rewritable times is smaller than that of a nonvolatile memory such as EEPROM (ElectricallyrErasable Programmable Read Only Memory). is there.
- EEPROM ElectricallyrErasable Programmable Read Only Memory
- Patent Document 1 proposes a data storage device that does not cause data loss or damage even when a power interruption occurs.
- This data storage device sequentially writes data to a plurality of storage blocks of a flash memory, and performs block update processing for copying valid data to the next block when changing the data write destination.
- the first storage block to be written first three pieces of information of an update start bit, an update end bit, and an erase end bit are stored for each storage block.
- the data storage device sets the update start bit to “0” before the start of the block update process, and sets the update end bit to “0” after the block update process ends. Further, the data storage device performs the erasure process of the storage block in which the update end bit is set to “0”, and sets the erase bit to “0” after the end of the erase process.
- Flash memory needs to be erased for each block. For this reason, when a block is filled by writing data, the data must be erased after saving necessary data from this block to another block. However, writing data to the flash memory may rarely fail, and there is a risk of data corruption due to the failure. Some of the data stored in the flash memory is such that, for example, the device identification information or setting values are not updated after they are written before factory shipment. It is necessary to save such non-updated data to another block when performing erasure processing on the block. However, if data is damaged when writing to another block, this data is restored. There was a problem that there was no art.
- the flash memory has a small number of rewritable times, when data writing, saving, and erasing are repeatedly performed and the number of rewriting reaches the upper limit or exceeds the upper limit, the possibility of data writing failure increases. For this reason, there is a problem that the reliability of data is lowered by repeatedly saving data even for data that is not updated as described above.
- the present invention has been made in view of such circumstances, and the object of the present invention is that data that is not updated (or that is updated less frequently) is damaged and trusted as data is erased for each block. It is an object of the present invention to provide a data storage device, an in-vehicle data storage device, and a data storage method capable of preventing the occurrence of deterioration in performance.
- a data storage device includes a writing unit that performs a process of writing data to the storage block in a data storage device including a non-volatile memory having a plurality of storage blocks from which data is collectively erased, Data copying means for reading one or a plurality of data from the one storage block and writing to another storage block when one storage block is filled with data by writing data by the writing means, and the data copying means And erasing means for erasing the data in the one storage block after the processing by the step, and the plurality of storage blocks of the nonvolatile memory include the writing means, the data copying means, and the erasing Data erasure prohibition block not to be processed by the means, the writing means, the data copying means, and the erasing means Characterized in that it comprises a plurality of data erase authorization block to be processed.
- the data storage device further comprises second writing means for performing a process of writing data to the data erasure prohibition block until the data erasure prohibition block is filled with data. .
- the writing means when the writing means writes one data to the data erasure permission block, the one data and the copy data of the one data are written.
- detecting means for detecting an error in data written in the non-volatile memory, and reading means for reading out the one data or the copy data in accordance with a detection result of the detecting means.
- the data storage device is characterized in that the writing means writes the one data and the copy data in different data erasure prohibition blocks.
- An in-vehicle data storage device is an in-vehicle data storage device that includes a non-volatile memory that is mounted on a vehicle and has a plurality of storage blocks from which data is collectively erased, and writes data to the storage block.
- a writing unit that performs processing, and when one storage block is filled with data by writing data by the writing unit, one or a plurality of data is read from the one storage block and written to another storage block
- a data copying unit and an erasing unit for erasing data in the one storage block after the processing by the data copying unit is completed.
- a data erasure prohibition block not to be processed by the data copying unit and the erasing unit, the writing unit Characterized in that it comprises a plurality of data erase authorization block to be processed by the over data copying means and said erasing means.
- the on-vehicle data storage device further comprises second writing means for performing a process of writing data to the data erasure prohibition block until the data erasure prohibition block is filled with data. To do.
- the data erasure prohibiting block stores information related to the specifications of the mounted vehicle
- the writing means relates to an electronic device mounted on the vehicle. Setting information that can be changed by a user of the vehicle is written, and the second writing means writes information related to security.
- the data storage method is a data storage method for storing data in a non-volatile memory having a plurality of storage blocks from which data is erased in a batch. And a data copying step of reading one or a plurality of data from the one storage block and writing to the other storage block when one storage block is filled with data by the data writing by the writing step And an erasing step of erasing data in the one storage block after the processing by the data copying step is completed.
- the plurality of storage blocks of the nonvolatile memory include the writing step, the data Data erasure prohibition block not to be processed in the copy step and the erasure step, and the previous Writing step, characterized in that it comprises a plurality of data erase authorization block to be processed of the data copying step and the removing step.
- a non-volatile memory such as a flash memory having a plurality of storage blocks from which data is collectively erased
- one or a plurality of storage blocks among the plurality of storage blocks are handled as data erasure prohibition blocks.
- Data erasure processing is not performed on the data erasure prohibited block (data writing may be permitted). Therefore, data whose value is not updated can be stored in the data erasure prohibition block.
- a plurality of other storage blocks are handled as data erasure permission blocks. Data is written to the data erasure enable block, and when the data erasure enable block is filled with data by writing, necessary data is read from this data erasure enable block and written to another data erasure enable block.
- a process of updating the data erasure permission block that is a data write target is performed.
- the erasing process is performed on the data erasing permission block filled with data.
- data can be written by sequentially using a plurality of data erasure permission blocks. Therefore, data whose value is not updated can be stored in the data erasure prohibition block, and data whose value is updated can be stored in the data erasure permission block. Since data whose values are not updated is not saved to other storage blocks, the data is not lost. Further, since the data erasure prohibition block is not erased, the number of data rewrites does not increase, and the reliability of the data stored in this block does not decrease.
- data writing to the data erasure prohibition block is permitted.
- data that is not updated is stored in the data erasure prohibition block, if there is an empty area in the data erasure prohibition block, it can be used effectively. Since the data erasure prohibition block is prohibited from data erasure, data can be written until the block is filled with data. For example, data with a low value update frequency can be written.
- the data erasure prohibition block can store, for example, information related to vehicle specifications (for example, destination) as data whose values are not updated.
- information such as vehicle identification information, data storage device identification information, or manufacturing date may be stored.
- information (password or the like) related to security can be stored in the empty area of the data erasure prohibition block as data with a low update frequency.
- the data erasure permission block can store in-vehicle device setting information that can be arbitrarily changed by the vehicle user.
- the data when data is written, the data is written to the data erasure permission block and the copy data of this data is written.
- the data is written to the data erasure permission block and the copy data of this data is written.
- the two data may be written to different data erasure permission blocks. As a result, even if a malfunction occurs in units of blocks, data corruption can be prevented.
- the present invention by providing a data erasure prohibition block in the nonvolatile memory, data that is not updated or that is updated less frequently can be stored in the nonvolatile memory. Etc. can be prevented.
- FIG. 10 is a flowchart showing a procedure of data writing processing performed by a data storage device according to Modification 1; 10 is a schematic diagram for explaining a data writing process performed by a data storage device according to Modification 2.
- FIG. 10 is a flowchart showing a procedure of data read processing performed by a data storage device according to Modification 2.
- FIG. 1 is a block diagram showing the configuration of the data storage device according to the present embodiment.
- Data storage device 1 according to the present embodiment is mounted on vehicle 100 and stores various data related to vehicle 100.
- the data storage device 1 is a device that can be provided as, for example, a CPU (Central Processing Unit), an MPU (Micro-Processing Unit), or a microcomputer (microcomputer), for example, an ECU (Electronic Control Unit) mounted on the vehicle 100.
- a CPU Central Processing Unit
- MPU Micro-Processing Unit
- microcomputer microcomputer
- ECU Electronic Control Unit
- the data storage device 1 includes a processing unit 10, a RAM (Random Access Memory) 11, a flash memory 20, and the like.
- the processing unit 10 performs various arithmetic processing and control processing by reading and executing a program stored in advance in the flash memory 20.
- the RAM 11 is configured by using a memory element such as SRAM (Static Random Access Memory) or DRAM (Dynamic Random Access Memory), and temporarily stores various data generated during processing such as arithmetic processing performed by the processing unit 10. To do.
- the flash memory 20 is a non-volatile memory element and can erase data for each storage block having a predetermined size.
- the flash memory 20 includes a memory management unit 21 and a storage unit 30.
- the memory management unit 21 operates various analog circuits such as a charge pump and a sense amplifier provided in the flash memory 20 in response to a data read request, a write request, an erase request, and the like given from the processing unit 10. As a result, data is read from, written to, and erased from the storage unit 30.
- the storage unit 30 has a storage capacity of several megabytes to several hundreds of megabytes or more, and can store data even when power supply is cut off.
- the flash memory 20 can write data to the storage unit 30 in units of 8 bits or 16 bits by address designation, but erases data in units of storage blocks of about several kilobytes to several tens of kilobytes. There is a need.
- the data storage device 1 according to the present embodiment is a program storage that stores in advance a program executed by the processing unit 10 in a predetermined plurality of storage blocks among a plurality of storage blocks included in the storage unit 30 of the flash memory 20. Used as region 31.
- the program storage area 31 is handled as a data read-only storage area, except in a special case where a program is written before the factory shipment of the data storage device 1 or an ECU or the like equipped with the data storage apparatus 1.
- the processing unit 10 performs read processing on the program storage area 31 but does not perform write and erase processing.
- the memory management unit 21 of the flash memory 20 may receive only a data read request without receiving a data write request and an erase request for the program storage area 31 from the processing unit 10. Thereby, it is possible to prevent a program stored in advance in the program storage area 31 from being destroyed.
- the data storage device 1 uses the remaining plurality of storage blocks of the storage unit 30 as a data storage area 32 for storing various data used by the processing unit 10 for arithmetic processing and the like. Furthermore, the data storage device 1 according to the present embodiment sets one or a plurality of storage blocks (one in the present embodiment) among the plurality of storage blocks included in the data storage area 32 as erasure prohibition blocks, The remaining plurality of storage blocks are set as erase permission blocks.
- the erasure prohibition block is a block that is prohibited from being an object of erasure processing, and data can be read out. Data writing to the erase prohibition block may be prohibited or may be permitted. In the present embodiment, it is assumed that data writing to the erase prohibition block is permitted.
- the processing unit 10 performs data read and write processing on the erase-inhibited block of the flash memory 20, but does not perform erase processing. Alternatively, the memory management unit 21 of the flash memory 20 may accept only the reading and writing of data without accepting an erase request for the erase-inhibited block from the processing unit 10. Thereby, it is possible to prevent the data stored in the erase prohibition block from being rewritten. Further, since data can be written until the erase prohibition block is filled with data, the erase prohibition block can be used effectively.
- the erasure permission block is a storage block that can read, write, and erase data.
- the flash memory 20 is provided with N erase permission blocks, which are referred to as a first erase permission block, a second erase permission block,..., An Nth erase permission block.
- the processing unit 10 of the data storage device 1 sequentially switches the storage blocks to which data is to be written, such as first erasure permission block ⁇ second erasure permission block ⁇ ... ⁇ Nth erasure permission block ⁇ first erasure permission block. While writing the data.
- the processing unit 10 writes data to the first erasure permission block, and when the first erasure permission block is filled with data and further writing becomes impossible, the data write destination is changed. Switch to the second erase permission block.
- the processing unit 10 performs a block update process of reading valid data out of the data stored in the first erasure-permitted block and copying it to the second erasure-permitted block. Start writing new data. Further, the processing unit 10 performs the erasure process of the first erasure permission block after the block update process is completed.
- the processing unit 10 stores information (management information) for determining which data is valid, for example, at a predetermined location such as the beginning or end of the erasure permission block. Or, it is written and managed in the header of each data.
- information for determining which data is valid, for example, at a predetermined location such as the beginning or end of the erasure permission block. Or, it is written and managed in the header of each data.
- the processing unit 10 reads the setting value from the flash memory 20 and gives the setting value to the electronic device.
- the processing unit 10 invalidates the previous set value already written in the erase-permitted block of the flash memory 20 and writes the updated set value in the empty area of the erase block.
- the processing unit 10 When there is no empty area in the erasure permission block, the processing unit 10 performs block update processing for copying valid data to the next erasure permission block based on the management information, and then writes the data in the new erasure permission block. . Note that the process of invalidating the previous data is not necessarily performed, and the processing unit 10 may determine which is the latest data based on, for example, the storage location (address) of the data.
- FIG. 2 to 4 are schematic views for explaining a method of using the data storage area 32 of the flash memory 20 by the data storage device 1.
- FIG. it is assumed that the data storage area 32 of the flash memory 20 has a configuration capable of storing 16 pieces of data in each of the erase-inhibited block and each of the erase-permitted blocks, and each block is arranged in a 4 ⁇ 4 matrix. It is shown by.
- the processing unit 10 of the data storage device 1 stores three set values a, b, and c for the electronic device mounted on the vehicle 100 in the flash memory 20.
- set values a_1, b_1, and c_1 are stored in the first erase permission block of the flash memory 20, and no data is stored in the other erase permission blocks.
- the processing unit 10 writes the new set value b_2 in the first erasure permission block and invalidates the already written set value b_1.
- the processing unit 10 writes a new set value every time the set values a, b, and c are changed.
- the processing unit 10 performs an update process of an erasure permission block for writing data.
- the processing unit 10 reads valid data from the first erasure permission block and copies it to the second erasure permission block.
- the update process the processing unit 10 reads valid data from the first erasure permission block and copies it to the second erasure permission block.
- the valid data of the first erasure permission block is the set values c_4, a_4, and b_8.
- the processing unit 10 After copying c_4 and b_8 to the second erasure permission block, a new set value a_5 is written to the second erasure permission block.
- the processing unit 10 After completing the block update process and writing the new set value a_5, as shown in FIG. 4, the processing unit 10 performs the process of erasing the data in the first erasure permission block. Thereafter, the processing unit 10 writes a new setting value to the second erasure permission block every time the setting value is changed until the second erasure permission block is filled with data. The processing unit 10 switches the erase-permitted block for writing data in the order of the second erase-permitted block, the third erase-permitted block,..., The Nth erase-permitted block, and the first erase-permitted block.
- the erasure prohibition block does not need to be updated in subsequent processing, such as the manufacturing number or date of manufacture of the data storage device 1, the specification information (destination, grade, etc.) or identification information of the vehicle 100. Information can be stored in advance in the manufacturing process of the data storage device 1 or the vehicle 100.
- the erasure prohibition block is a storage block in which erasure of data is prohibited and the stored data is not rewritten, so that no data loss or the like occurs.
- data with a high update frequency such as a setting value that can be arbitrarily changed by the user of the vehicle 100 can be stored.
- the configuration information or identification information of the vehicle 100 is stored in the erasure prohibition block, and the setting value of the electronic device is stored in the erasure permission block.
- the information stored in each block is an example. And it is not limited to this. The information stored in each block can be determined as appropriate. Information that is not updated may be stored in the erasure prohibition block, and updated information may be stored in the erasure permission block.
- FIG. 5 is a flowchart showing a procedure of data read processing performed by the data storage device 1 according to the present embodiment.
- the processing unit 10 of the data storage device 1 performs a storage block determination process for determining whether the data to be read is stored in an erasure prohibition block or an erasure permission block (step S1). For example, the data storage device 1 stores correspondence information between data types and storage destination blocks in advance, and determines which block stores data to be read based on the correspondence information. can do. From the result of the storage block determination process, the processing unit 10 determines whether or not the storage destination of the data to be read is an erasure prohibited block (step S2). When the data storage destination is the erase prohibition block (S2: YES), the processing unit 10 reads the data from the erase prohibition block of the flash memory 20 (step S3), and ends the data reading process.
- S2 erase prohibition block
- the processing unit 10 selects an erase permit block that is a target of data writing at this time (step S4). For example, when the data storage device 1 is started after the power is turned on, the processing unit 10 determines whether or not data is stored in each erasure permission block, management information of the erasure permission block in which the data is stored, and the like. With reference to this, it is determined which of the erasure permission blocks to be written is stored in the RAM 11. When the erasure permission block to be written is switched by the block update process, the processing unit 10 updates the information related to the erasure permission block to be written stored in the RAM 11. In step S ⁇ b> 4, the processing unit 10 can select an erasure permission block to be written by referring to information stored in the RAM 11.
- the processing unit 10 reads the management information stored in the selected erasure permission block (step S5).
- the processing unit 10 reads valid data from the erase permission block selected in step S4 based on the management information read in step S5 (step S6), and ends the data reading process.
- FIG. 6 is a flowchart showing the procedure of the data writing process performed by the data storage device 1 according to the present embodiment.
- the processing unit 10 of the data storage device 1 selects an erasure permission block that is a target of data writing at this time (step S11).
- the processing unit 10 determines whether or not data can be written to the erase-permitted block depending on whether or not the selected erase-permitted block is filled with data (step S12). If data writing is not possible (S12: NO), the processing unit 10 performs a block update process for updating the write target from this erase-permitted block to the next erase-permitted block (step S13). After completion of the block update process, the processing unit 10 writes data in a new erasure permission block (step S14), and ends the data write process.
- the processing unit 10 When the data can be written (S12: YES), the processing unit 10 writes the data in the empty area of the erasure permission block selected in step S11 (step S15), and ends the data writing process. To do.
- FIG. 7 is a flowchart showing the procedure of the block update process performed by the data storage device 1 according to this embodiment, and is the process performed in step S13 of the flowchart shown in FIG.
- the processing unit 10 of the data storage device 1 extracts valid data based on the management information from the erasure permission block to which data is to be written (step S21), and uses the extracted data as the next erasure permission block. Copy (step S22).
- the processing unit 10 switches the erase-permitted block to which data is to be written to the next erase-permitted block (step S23).
- the processing unit 10 performs a process of erasing the data of the previous erasure permission block (step S24), and ends the block update process.
- the data storage device 1 treats one or a plurality of storage blocks among the plurality of storage blocks as an erasure prohibition block for the flash memory 20 having a plurality of storage blocks from which data is collectively erased. .
- the processing unit 10 of the data storage device 1 does not perform data erasure processing on the erasure prohibited block.
- the data storage device 1 treats a plurality of other storage blocks as erasure permission blocks.
- the processing unit 10 writes data to the erase-permitted block, and when the erase-permitted block is filled with data by writing, the valid data is read from the erase-permitted block and copied to the next erase-permitted block, A block update process for switching the storage block to be written to the next is performed. After completing the update process, the processing unit 10 performs an erasure process on the erasure permission block filled with data. As a result, the processing unit 10 writes data by sequentially using a plurality of erase permission blocks.
- the data storage device 1 can store data whose values are not updated in the erasure prohibition block and can store data whose values are updated in the erasure permission block. Since data whose value is not updated is not saved in another storage block, data is not lost due to a write failure. Further, since the erasure prohibition block is not subjected to data erasure processing, the number of data rewrites does not increase, and the reliability of the data stored in the storage block does not decrease.
- the data storage device 1 is mounted on the vehicle 100, but is not limited thereto, and the same configuration of other various data storage devices can be applied. it can.
- the data storage device 1 is configured to store data in the flash memory 20, but is not limited thereto, and may be configured to store data in another nonvolatile memory that erases data in units such as blocks. .
- the processing unit 10 performs a process of sequentially writing a data by switching a plurality of erasure permission blocks.
- the present invention is not limited to this, and the memory management unit 21 of the flash memory 20 may perform the process.
- the processing unit 10 does not perform the erasing process on the storage block so that the erasure prohibition block is realized.
- an erase prohibition block may be implemented as a configuration for rejecting this request.
- the data storage device 1 may be configured to write data to the empty area of the erasure prohibited block of the flash memory 20.
- the security code used for the immobilizer authentication process can be written and stored in the empty area of the erasure prohibition block of the flash memory 20.
- the security code of the immobilizer may be changed when, for example, the key is exchanged, but is information that is updated less frequently than the setting value of the in-vehicle device stored in the erasure permission block. Since the data storage device 1 according to the modification 1 is configured to perform data writing to the erase prohibition block of the flash memory 20, the stored data is valid or invalid as in the erase permit block. Management information for determining whether or not is stored in the erasure prohibition block.
- the processing unit 10 of the data storage device 1 determines whether there is an empty area in the erasure prohibition block, and if there is an empty area. Write. If there is no free area, the processing unit 10 does not write a security code. When the security code cannot be written because there is no empty area in the erasure prohibition block, the processing unit 10 may notify the writing failure by, for example, displaying an error message or turning on a warning lamp. In such a case, it is possible to erase and rewrite data in the erasure prohibited block of the flash memory 20 by using a special device or performing a special operation in a dealer of the vehicle 100 or a maintenance shop, for example. It may be a configuration.
- FIG. 8 is a flowchart showing a procedure of data writing processing performed by the data storage device 1 according to the first modification.
- the processing unit 10 of the data storage device 1 according to the modification 1 determines whether or not the data to be written is a security code when writing data to the flash memory 20 (step S31). If the data to be written is not a security code (S31: NO), the processing unit 10 performs a data writing process to the erasure permission block of the flash memory 20 (step S32) and ends the process.
- the data writing process performed in step S32 is the same as the process shown in FIG.
- the processing unit 10 determines whether or not there is an empty area in the erase prohibition block of the flash memory 20 (step S33). If there is an empty area in the erasure prohibition block (S33: YES), the processing unit 10 writes a security code in the erasure prohibition block (step S34), and ends the data writing process. If there is no empty area in the erasure prohibition block (S33: NO), the processing unit 10 performs error processing such as display of an error message (step S35), and ends the processing without writing data.
- the data storage device 1 can effectively use the empty area of the erasure prohibition block by permitting the data writing to the erasure prohibition block of the flash memory 20. Since the erasure prohibition block is prohibited from performing data erasure processing, data can be written until the block is filled with data. For example, data with a low update frequency such as a security code can be written in the erasure prohibition block. Note that data to be written to the erasure prohibition block may be data other than the security code.
- FIG. 9 is a schematic diagram for explaining a data writing process performed by the data storage device 1 according to the second modification.
- the data storage device 1 according to the modification 2 uses two blocks as one set for a plurality of erasure permission blocks of the flash memory 20. For example, the first erase permission block and the second erase permission block are set as one set, the third erase permission block and the fourth erase permission block are set as one set,..., The N-1th erase permission block and the Nth erase permission block are 1 A pair (where N is an even number).
- the data storage device 1 writes the set value a_1 as positive data in the first erasure permission block and then writes the same setting value a_1 as sub data in the second erasure permission block. As a result, the same data is written in the two erase-permitted blocks made into one set.
- the data storage device 1 has an error detection function for determining whether or not there is an error in the data stored in the flash memory 20.
- the data storage device 1 When reading data from the erasure permission block, the data storage device 1 first determines whether or not there is an error in the positive data stored in one erasure permission block, and if there is no error, reads the positive data. If it is determined that there is an error in the primary data stored in one erase-permitted block, the data storage device 1 reads the sub data stored in the other erase-permitted block. Note that it may be determined whether there is an error in the sub data.
- FIG. 10 is a flowchart showing a procedure of data read processing performed by the data storage device 1 according to the second modification.
- the processing unit 10 of the data storage device 1 according to the modification 2 performs a storage block determination process that determines whether the data to be read is stored in an erasure prohibition block or an erasure permission block (step S41). Based on the result of the storage block determination process, the processing unit 10 determines whether or not the storage destination of the data to be read is an erasure prohibition block (step S42). When the data storage destination is the erasure prohibition block (S42: YES), the processing unit 10 reads the data from the erasure prohibition block of the flash memory 20 (step S43), and ends the process.
- the processing unit 10 selects two erasure permission blocks that are data write targets (step S44).
- the processing unit 10 reads the management information of the selected erase-permitted block (step S45), and reads valid data from one erase-permitted block (step S46).
- the processing unit 10 determines whether or not there is an error in the data read from one erasure permission block (step S47). If there is no error (S47: NO), the processing is ended with this data as read data. To do. If there is an error in the data read from one erasure-permitted block (S47: YES), the processing unit 10 reads valid data from the other erasure-permitted block (step S48), and ends the process using this data as read data. To do.
- the data storage device 1 writes the primary data and the secondary data to the erasure permission block when writing the data.
- the data storage device 1 performs error detection of the primary data and the secondary data stored in the erasure permission block, and reads any data according to the result. Thereby, the reliability of the data stored in the erasure permission block can be improved.
- the data storage device 1 may be configured to store the primary data and the sub data in the same erasure permission block, instead of storing the primary data and the sub data in different erasure permission blocks.
- Data Storage Device 10 Processing Unit 11 RAM DESCRIPTION OF SYMBOLS 20 Flash memory 21 Memory management part 30 Storage part 31 Program storage area 32 Data storage area 100 Vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
更新されないデータの破損及び信頼性低下等が発生することを防止し得るデータ記憶装置、車載データ記憶装置及びデータ記憶方法を提供する。 データ記憶装置1は、フラッシュメモリ20の複数の記憶ブロックのうち一又は複数の記憶ブロックを消去禁止ブロックとして扱い、消去禁止ブロックに対してデータの消去処理を行わない。データ記憶装置1は、その他の複数の記憶ブロックを消去許可ブロックとして扱う。データ記憶装置1は、消去許可ブロックに対してデータの書き込みを行い、書き込みにより消去許可ブロックがデータで満たされた場合、この消去許可ブロックから有効なデータを読み出して次の消去許可ブロックへコピーし、書き込み対象の記憶ブロックを次へ切り替えるブロック更新処理を行う。更新処理を終了した後、処理部10は、データで満たされた消去許可ブロックに対して消去処理を行う。
Description
本発明は、ブロック毎にデータが一括消去されるフラッシュメモリなどの不揮発性メモリにデータを記憶するデータ記憶装置、車載データ記憶装置及びデータ記憶方法に関する。
従来、例えば車両に搭載された電子機器などにおいて、データの記憶にフラッシュメモリが広く利用されている。フラッシュメモリは、不揮発性のメモリであり、データの記憶容量が多いという利点がある。しかしながらフラッシュメモリは、データの消去を所定サイズのブロック毎に行う必要があること、及び、EEPROM(Electrically Erasable Programmable Read Only Memory)などの不揮発性メモリと比較して書換可能回数が少ないなどの欠点がある。
特許文献1においては、電源の瞬断が発生した場合であっても、データの消失又は破損等が生じることがないデータ記憶装置が提案されている。このデータ記憶装置は、フラッシュメモリの複数の記憶ブロックに対して順次的にデータを書き込み、データの書き込み先を変更する際には有効なデータを次のブロックへコピーするブロック更新処理を行う。最初に書き込みを行う第1記憶ブロックには、記憶ブロック毎に更新開始ビット、更新終了ビット及び消去終了ビットの3つの情報を記憶しておく。データ記憶装置は、ブロック更新処理の開始前に更新開始ビットを’0’に設定し、ブロック更新処理の終了後に更新終了ビットを’0’に設定する。またデータ記憶装置は、更新終了ビットが’0’に設定された記憶ブロックの消去処理を行い、消去処理の終了後に消去ビットを’0’に設定する。
フラッシュメモリはデータの消去をブロック毎に行う必要がある。このためデータの書き込みによりブロックが満たされた場合、必要なデータをこのブロックから他のブロックに退避させた後、データの消去を行わなければならない。しかし、フラッシュメモリに対するデータの書き込みは稀に失敗することがあり、失敗によりデータの破損が発生する虞がある。フラッシュメモリに記憶されるデータには、例えば装置の識別情報又は設定値等が工場出荷前などに書き込まれた後、その値が更新されることのないものがある。このような更新されないデータについてもブロックに対する消去処理を行う際には他のブロックへ退避させる必要があるが、他のブロックへの書き込みの際にデータが破損した場合には、このデータを復旧する術がないという問題があった。
またフラッシュメモリは書換可能回数が少ないことから、データの書き込み、退避及び消去を繰り返し行って書換回数が上限に達する又は上限を超えた場合、データ書き込みが失敗する可能性が高まる。このため、上記のような更新されないデータであっても、データの退避を繰り返し行うことによって、データの信頼性が低下するという問題があった。
本発明は、斯かる事情に鑑みてなされたものであって、その目的とするところは、更新されない(又は更新の頻度が低い)データについて、ブロック毎のデータ消去に伴ってデータの破損及び信頼性低下等が発生することを防止し得るデータ記憶装置、車載データ記憶装置及びデータ記憶方法を提供することにある。
本発明に係るデータ記憶装置は、データが一括して消去される記憶ブロックを複数有する不揮発性メモリを備えるデータ記憶装置において、前記記憶ブロックに対してデータを書き込む処理を行う書込手段と、該書込手段によるデータの書き込みにより一の記憶ブロックがデータで満たされた場合に、前記一の記憶ブロックから一又は複数のデータを読み出して他の記憶ブロックへ書き込むデータ複写手段と、該データ複写手段による処理の終了後に、前記一の記憶ブロックのデータを消去する処理を行う消去手段とを備え、前記不揮発性メモリが有する複数の記憶ブロックには、前記書込手段、前記データ複写手段及び前記消去手段の処理対象とならないデータ消去禁止ブロックと、前記書込手段、前記データ複写手段及び前記消去手段の処理対象となる複数のデータ消去許可ブロックとを含むことを特徴とする。
また、本発明に係るデータ記憶装置は、前記データ消去禁止ブロックがデータで満たされるまで、前記データ消去禁止ブロックに対してデータを書き込む処理を行う第2の書込手段を備えることを特徴とする。
また、本発明に係るデータ記憶装置は、前記書込手段が、一のデータを前記データ消去許可ブロックに対して書き込む場合に、前記一のデータと該一のデータの複写データとを書き込むようにしてあり、前記不揮発性メモリに書き込まれたデータの誤りを検出する検出手段と、該検出手段の検出結果に応じて、前記一のデータ又は前記複写データを読み出す読出手段とを備えることを特徴とする。
また、本発明に係るデータ記憶装置は、前記書込手段が、前記一のデータ及び前記複写データを、それぞれ異なるデータ消去禁止ブロックに書き込むようにしてあることを特徴とする。
また、本発明に係る車載データ記憶装置は、車両に搭載され、データが一括して消去される記憶ブロックを複数有する不揮発性メモリを備える車載データ記憶装置において、前記記憶ブロックに対してデータを書き込む処理を行う書込手段と、該書込手段によるデータの書き込みにより一の記憶ブロックがデータで満たされた場合に、前記一の記憶ブロックから一又は複数のデータを読み出して他の記憶ブロックへ書き込むデータ複写手段と、該データ複写手段による処理の終了後に、前記一の記憶ブロックのデータを消去する処理を行う消去手段とを備え、前記不揮発性メモリが有する複数の記憶ブロックには、前記書込手段、前記データ複写手段及び前記消去手段の処理対象とならないデータ消去禁止ブロックと、前記書込手段、前記データ複写手段及び前記消去手段の処理対象となる複数のデータ消去許可ブロックとを含むことを特徴とする。
また、本発明に係る車載データ記憶装置は、前記データ消去禁止ブロックがデータで満たされるまで、前記データ消去禁止ブロックに対してデータを書き込む処理を行う第2の書込手段を備えることを特徴とする。
また、本発明に係る車載データ記憶装置は、前記データ消去禁止ブロックには、搭載される車両の仕様に関する情報が記憶してあり、前記書込手段は、前記車両に搭載された電子機器に関し、前記車両の使用者が変更可能な設定情報を書き込み、前記第2の書込手段は、セキュリティに関する情報を書き込むようにしてあることを特徴とする。
また、本発明に係るデータ記憶方法は、データが一括して消去される記憶ブロックを複数有する不揮発性メモリにデータを記憶するデータ記憶方法において、前記記憶ブロックに対してデータを書き込む処理を行う書込ステップと、該書込ステップによるデータの書き込みにより一の記憶ブロックがデータで満たされた場合に、前記一の記憶ブロックから一又は複数のデータを読み出して他の記憶ブロックへ書き込むデータ複写ステップと、該データ複写ステップによる処理の終了後に、前記一の記憶ブロックのデータを消去する処理を行う消去ステップとを含み、前記不揮発性メモリが有する複数の記憶ブロックには、前記書込ステップ、前記データ複写ステップ及び前記消去ステップの処理対象としないデータ消去禁止ブロックと、前記書込ステップ、前記データ複写ステップ及び前記消去ステップの処理対象とする複数のデータ消去許可ブロックとを含むことを特徴とする。
本発明においては、データが一括消去される記憶ブロックを複数有するフラッシュメモリなどの不揮発性メモリについて、複数の記憶ブロックのうち一又は複数の記憶ブロックをデータ消去禁止ブロックとして扱う。データ消去禁止ブロックに対しては、データの消去処理は行われない(データの書き込みは許可してもよい)。このため、値が更新されることのないデータをデータ消去禁止ブロックに記憶しておくことができる。
またその他の複数の記憶ブロックは、データ消去許可ブロックとして扱う。データ消去許可ブロックに対してはデータの書き込みを行い、書き込みによりデータ消去許可ブロックがデータで満たされた場合、このデータ消去許可ブロックから必要なデータを読み出して他のデータ消去許可ブロックへ書き込むことで、データ書き込み対象とするデータ消去許可ブロックを更新する処理を行う。更新処理が終了した後、データで満たされたデータ消去許可ブロックに対して消去処理を行う。これにより複数のデータ消去許可ブロックを順次的に利用したデータの書き込みを行うことができる。
よって、値が更新されることのないデータをデータ消去禁止ブロックに記憶し、値が更新されるデータをデータ消去許可ブロックに記憶しておくことができる。値が更新されることのないデータは、他の記憶ブロックへの退避などがなされないため、データが消失することがない。またデータ消去禁止ブロックは、データの消去が行われないため、データの書換回数は増加せず、このブロックに記憶されたデータの信頼性が低下することがない。
またその他の複数の記憶ブロックは、データ消去許可ブロックとして扱う。データ消去許可ブロックに対してはデータの書き込みを行い、書き込みによりデータ消去許可ブロックがデータで満たされた場合、このデータ消去許可ブロックから必要なデータを読み出して他のデータ消去許可ブロックへ書き込むことで、データ書き込み対象とするデータ消去許可ブロックを更新する処理を行う。更新処理が終了した後、データで満たされたデータ消去許可ブロックに対して消去処理を行う。これにより複数のデータ消去許可ブロックを順次的に利用したデータの書き込みを行うことができる。
よって、値が更新されることのないデータをデータ消去禁止ブロックに記憶し、値が更新されるデータをデータ消去許可ブロックに記憶しておくことができる。値が更新されることのないデータは、他の記憶ブロックへの退避などがなされないため、データが消失することがない。またデータ消去禁止ブロックは、データの消去が行われないため、データの書換回数は増加せず、このブロックに記憶されたデータの信頼性が低下することがない。
また、本発明においては、データ消去禁止ブロックに対するデータの書き込みは許可する。更新されることのないデータをデータ消去禁止ブロックに記憶した場合に、このデータ消去禁止ブロックに空き領域が存在すれば、これを有効活用することが可能となる。データ消去禁止ブロックは、データ消去が禁止されているため、このブロックがデータで満たされるまではデータの書き込みを行うことができる。例えば、値の更新頻度が低いデータを書き込むことができる。
データ記憶装置が車載のものである場合、データ消去禁止ブロックには、値が更新されないデータとして、例えば車両の仕様(仕向けなど)に関する情報を記憶することができる。その他に、例えば車両の識別情報、データ記憶装置の識別情報又は製造年月日等の情報を記憶してもよい。
またデータ消去禁止ブロックの空き領域には、更新頻度が低いデータとして、例えばセキュリティに関する情報(パスワードなど)を記憶することができる。
またデータ消去許可ブロックには、車両の使用者が任意に変更可能な車載機器の設定情報などを記憶することができる。
またデータ消去禁止ブロックの空き領域には、更新頻度が低いデータとして、例えばセキュリティに関する情報(パスワードなど)を記憶することができる。
またデータ消去許可ブロックには、車両の使用者が任意に変更可能な車載機器の設定情報などを記憶することができる。
また、本発明においては、データの書き込みを行う場合に、データ消去許可ブロックへデータを書き込むと共に、このデータの複写データを書き込む。データを読み出す場合には、書き込んだ両データの誤り検出を行って、誤りが生じていないデータを読み出せばよい。これにより、記憶したデータの信頼性を向上することができる。なお2つのデータの書き込みは、それぞれ異なるデータ消去許可ブロックに対して行う構成としてよい。これによりブロック単位での不具合が発生した場合であっても、データの破損を防止できる。
本発明による場合は、不揮発性メモリにデータ消去禁止ブロックを設けることにより、更新されない又は更新の頻度が低いデータを不揮発性メモリに記憶しておくことができ、これによりデータの破損及び信頼性低下等を防止することができる。
以下、本発明をその実施の形態を示す図面に基づき具体的に説明する。図1は、本実施の形態に係るデータ記憶装置の構成を示すブロック図である。本実施の形態に係るデータ記憶装置1は、車両100に搭載され、車両100に関する種々のデータを記憶する。データ記憶装置1は、例えばCPU(Central Processing Unit)、MPU(Micro-Processing Unit)又はマイコン(マイクロコンピュータ)等として提供され得る装置であり、例えば車両100に搭載されるECU(Electronic Control Unit)の演算処理及び記憶処理等を担う。
データ記憶装置1は、処理部10、RAM(Random Access Memory)11及びフラッシュメモリ20等を備えて構成されている。処理部10は、フラッシュメモリ20に予め記憶されたプログラムを読み出して実行することにより、種々の演算処理及び制御処理等を行う。RAM11は、SRAM(Static Random Access Memory)又はDRAM(Dynamic Random Access Memory)等のメモリ素子を用いて構成され、処理部10が行う演算処理などの処理過程で生じた種々のデータを一時的に記憶する。
フラッシュメモリ20は、不揮発性のメモリ素子であり、所定サイズの記憶ブロック毎のデータの消去を行うことができる。フラッシュメモリ20は、メモリ管理部21及び記憶部30等を備えている。メモリ管理部21は、処理部10から与えられるデータの読出要求、書込要求及び消去要求等に応じて、フラッシュメモリ20内に設けられたチャージポンプ及びセンスアンプ等の種々のアナログ回路を動作させることにより、記憶部30に対するデータの読み出し、書き込み及び消去等を行う。
記憶部30は、数Mバイト~数百Mバイト程度、又はそれ以上の記憶容量を有し、電力供給が断たれた場合であってもデータを記憶しておくことができる。フラッシュメモリ20は、記憶部30に対するデータの書き込みをアドレス指定により8ビット又は16ビット等の単位で行うことができるが、データの消去は数Kバイト~数十Kバイト程度の記憶ブロック単位で行う必要がある。本実施の形態に係るデータ記憶装置1は、フラッシュメモリ20の記憶部30が有する複数の記憶ブロックのうち、所定の複数の記憶ブロックを、処理部10が実行するプログラムを予め記憶するプログラム用記憶領域31として用いる。
プログラム用記憶領域31は、データ記憶装置1又はこれを搭載したECU等の工場出荷前などにおいてプログラムの書き込みを行う特殊な場合を除き、データの読出専用の記憶領域として扱われる。処理部10は、プログラム用記憶領域31に対する読み出しの処理を行うが、書き込み及び消去の処理は行わない。又は、フラッシュメモリ20のメモリ管理部21が、処理部10からプログラム用記憶領域31に対するデータの書込要求及び消去要求を受け付けず、データの読出要求のみを受け付ける構成としてもよい。これにより、プログラム用記憶領域31に予め記憶されたプログラムが破壊されることを防止できる。
またデータ記憶装置1は、記憶部30の残りの複数の記憶ブロックを、処理部10が演算処理などに用いる種々のデータを記憶するデータ用記憶領域32として用いる。更に本実施の形態に係るデータ記憶装置1は、データ用記憶領域32に含まれる複数の記憶ブロックのうち、一又は複数(本実施の形態では一つとする)の記憶ブロックを消去禁止ブロックとし、残りの複数の記憶ブロックを消去許可ブロックとする。
消去禁止ブロックは、消去処理の対象とすることが禁止されたブロックであり、データの読み出しを行うことができる。消去禁止ブロックに対するデータの書き込みは、禁止されていてもよく、許可されていてもよい。本実施の形態においては、消去禁止ブロックに対するデータ書き込みは許可されているものとする。処理部10は、フラッシュメモリ20の消去禁止ブロックに対するデータの読み出し及び書き込みの処理は行うが、消去処理は行わない。又は、フラッシュメモリ20のメモリ管理部21が、処理部10から消去禁止ブロックに対する消去要求を受け付けず、データの読み出し及び書き込みのみを受け付ける構成としてもよい。これにより、消去禁止ブロックに記憶されたデータが書き換えられることを防止できる。また消去禁止ブロックがデータで満たされるまでは、データの書き込みを行うことができるため、消去禁止ブロックを有効活用することができる。
消去許可ブロックは、データの読み出し、書き込み及び消去のいずれもが可能な記憶ブロックである。本実施の形態においてフラッシュメモリ20にはN個の消去許可ブロックが設けられているものとし、これらを第1消去許可ブロック、第2消去許可ブロック、…、第N消去許可ブロックと呼ぶ。データ記憶装置1の処理部10は、第1消去許可ブロック→第2消去許可ブロック→…→第N消去許可ブロック→第1消去許可ブロックのように、データ書き込みの対象とする記憶ブロックを順に切り替えながら、データの書き込みを行う。例えば処理部10は、第1消去許可ブロックに対してデータを書き込んでいき、第1消去許可ブロックがデータで満たされてそれ以上の書き込みが不可能な状態となった場合、データの書き込み先を第2消去許可ブロックへ切り替える。このときに処理部10は、第1消去許可ブロックに記憶されているデータのうち、有効なデータを読み出して第2消去許可ブロックへコピーするブロック更新処理を行った後、第2消去許可ブロックに対する新たなデータの書き込みを開始する。また処理部10は、ブロック更新処理の終了後、第1消去許可ブロックの消去処理を行う。このように複数の消去許可ブロックを巡回してデータの書き込みを行う構成とすることにより、各消去許可ブロックのデータ書換回数を平均化することができる。
このようなデータ書き込みを実現するため、処理部10は、いずれのデータが有効であるかなどを判断するための情報(管理情報)を、例えば消去許可ブロックの先頭若しくは末尾等の所定箇所に、又は、各データのヘッダなどに書き込んで管理している。例えばデータ記憶装置1が車両100に搭載された電子機器の設定値をフラッシュメモリ20に記憶しておく構成である場合、処理部10は、フラッシュメモリ20から設定値を読み出して電子機器へ与えると共に、設定が変更された場合には更新された設定値をフラッシュメモリ20に書き込む。このときに処理部10は、フラッシュメモリ20の消去許可ブロックに既に書き込まれている以前の設定値を無効化すると共に、消去ブロックの空き領域に更新された設定値を書き込む。消去許可ブロックに空き領域が存在しない場合、処理部10は、管理情報に基づいて有効なデータを次の消去許可ブロックへコピーするブロック更新処理を行った後、新たな消去許可ブロックにデータを書き込む。なお、以前のデータを無効化する処理は必ずしも行う必要はなく、処理部10は、例えばデータの記憶位置(アドレス)などに基づいて最新のデータがいずれであるかを判断してもよい。
図2~図4は、データ記憶装置1によるフラッシュメモリ20のデータ用記憶領域32の利用方法を説明するための模式図である。本図においては、フラッシュメモリ20のデータ用記憶領域32について、消去禁止ブロック及び各消去許可ブロックにそれぞれ16個のデータを記憶することができる構成であるものとし、各ブロックを4×4のマトリクスで示してある。
例えば図2に示すように、車両100又はデータ記憶装置1の工場出荷時などの初期状態において、フラッシュメモリ20の消去禁止ブロックには、データA及びBの2つのデータが記憶されており、残りの部分は空き領域としてある。消去禁止ブロックはデータの消去処理がなされないため、図2~図4に示すように、データの書き込み処理が繰り返し行われた場合であっても、消去禁止ブロックに記憶されたデータA及びBは変化することはない。
また本例においてデータ記憶装置1の処理部10は、フラッシュメモリ20に車両100に搭載された電子機器について3つの設定値a、b、cを記憶する。図2に示すように、初期状態においてフラッシュメモリ20の第1消去許可ブロックには設定値a_1、b_1、c_1が記憶されると共に、他の消去許可ブロックにはデータは記憶されていない。その後、例えば設定値bが変更された場合、処理部10は、新たな設定値b_2を第1消去許可ブロックに書き込むと共に、既に書き込まれている設定値b_1を無効とする。処理部10は、設定値a、b、cが変更される都度、新たな設定値の書き込みを行う。このようにして、例えば更に設定値a_2、b_3、c_2、c_3、b_4、a_3、b_5、b_6が第1消去許可ブロックに書き込まれた場合、設定値c_3、a_3、b_6の3つが有効な設定値(図中、ハッチングを付して示す)となり、その他の設定値は無効な設定値となる。
例えば図3に示すように、設定値c_4、b_7、a_4、b_8が更に第1消去許可ブロックに書き込まれた場合、設定値c_4、a_4、b_8が有効となると共に、第1消去許可ブロックはデータで満たされて、それ以上のデータの書き込みを行うことが不可能な状態となる。この状態で、例えば設定値aが変更されて、新たな設定値a_5の書き込みを行う場合、処理部10は、データ書き込みを行う消去許可ブロックの更新処理を行う。更新処理において、処理部10は、第1消去許可ブロックから有効なデータを読み出して第2消去許可ブロックにコピーする。なお図3に示す例では、第1消去許可ブロックの有効なデータは設定値c_4、a_4、b_8であるが、設定値aについては新たな設定値a_5を書き込むため、処理部10は、設定値c_4、b_8を第2消去許可ブロックにコピーした後、新たな設定値a_5を第2消去許可ブロックに書き込んでいる。
ブロックの更新処理を終了して新たな設定値a_5の書き込みを行った後、図4に示すように、処理部10は第1消去許可ブロックのデータを消去する処理を行う。以後、処理部10は、第2消去許可ブロックがデータで満たされるまで、設定値が変更される都度、新たな設定値を第2消去許可ブロックへ書き込む。処理部10は、第2消去許可ブロック、第3消去許可ブロック、…、第N消去許可ブロック、第1消去許可ブロックの順に、データの書き込みを行う消去許可ブロックを切り替える。
なお、消去禁止ブロックには、例えばデータ記憶装置1の製造番号若しくは製造年月日、車両100の仕様情報(仕向け、グレードなど)若しくは識別情報等のように、以降の処理において更新する必要がない情報を、データ記憶装置1又は車両100の製造工程などにおいて予め記憶しておくことができる。消去禁止ブロックは、データの消去が禁止された記憶ブロックであり、記憶されたデータが書き換えられることがないため、データの消失などが発生することがない。また消去許可ブロックには、例えば車両100に搭載された電子機器について、車両100の使用者が任意に変更可能な設定値など、更新頻度が高いデータを記憶することができる。
本実施の形態においては、消去禁止ブロックに車両100の仕様情報又は識別情報等を記憶し、消去許可ブロックに電子機器の設定値を記憶する構成としたが、各ブロックに記憶する情報は一例であって、これに限るものではない。各ブロックに記憶する情報は適宜に決定することができ、消去禁止ブロックには更新されない情報を記憶し、消去許可ブロックには更新される情報を記憶すればよい。
図5は、本実施の形態に係るデータ記憶装置1が行うデータ読出処理の手順を示すフローチャートである。データ記憶装置1の処理部10は、読み出すべきデータが消去禁止ブロック又は消去許可ブロックのいずれに記憶されているかを判定する記憶ブロック判定処理を行う(ステップS1)。例えばデータ記憶装置1は、データの種別と記憶先のブロックとの対応情報を予め記憶しておき、この対応情報に基づいて、読み出すべきデータがいずれのブロックに記憶されているかを判定する構成とすることができる。記憶ブロック判定処理の結果から、処理部10は、読み出すべきデータの記憶先が消去禁止ブロックであるか否かを判断する(ステップS2)。データの記憶先が消去禁止ブロックである場合(S2:YES)、処理部10は、フラッシュメモリ20の消去禁止ブロックからデータを読み出し(ステップS3)、データ読出処理を終了する。
データの記憶先が消去禁止ブロックではなく消去許可ブロックである場合(S2:NO)、処理部10は、この時点にてデータ書き込みの対象としている消去許可ブロックを選択する(ステップS4)。処理部10は、例えばデータ記憶装置1の電源投入後の起動時などにおいて、各消去許可ブロックにデータが記憶されているか否か、及び、データが記憶されている消去許可ブロックの管理情報等を参照して書き込み対象の消去許可ブロックがいずれであるかを判断し、RAM11に記憶しておく。ブロック更新処理により書き込み対象の消去許可ブロックを切り替えた場合、処理部10は、RAM11に記憶した書き込み対象の消去許可ブロックに関する情報を更新する。ステップS4において処理部10は、RAM11に記憶された情報を参照することによって、書き込み対象の消去許可ブロックを選択することができる。
次いで処理部10は、選択した消去許可ブロックに記憶されている管理情報を読み出す(ステップS5)。処理部10は、ステップS4にて選択した消去許可ブロックから、ステップS5にて読み出した管理情報に基づいて有効なデータを読み出し(ステップS6)、データ読出処理を終了する。
図6は、本実施の形態に係るデータ記憶装置1が行うデータ書込処理の手順を示すフローチャートである。データ記憶装置1の処理部10は、この時点にてデータ書き込みの対象としている消去許可ブロックを選択する(ステップS11)。処理部10は、選択した消去許可ブロックがデータで満たされているか否かに応じて、この消去許可ブロックに対するデータの書き込みが可能であるか否かを判定する(ステップS12)。データの書き込みが可能でない場合(S12:NO)、処理部10は、書き込み対象をこの消去許可ブロックから次の消去許可ブロックへ更新するブロック更新処理を行う(ステップS13)。ブロック更新処理の終了後、処理部10は、新たな消去許可ブロックにデータを書き込んで(ステップS14)、データ書込処理を終了する。
データの書き込みが可能である場合(S12:YES)、処理部10は、ステップS11にて選択した消去許可ブロックの空き領域に対してデータの書き込みを行い(ステップS15)、データ書込処理を終了する。
図7は、本実施の形態に係るデータ記憶装置1が行うブロック更新処理の手順を示すフローチャートであり、図6に示したフローチャートのステップS13にて行われる処理である。ブロック更新処理においてデータ記憶装置1の処理部10は、データ書き込みの対象の消去許可ブロックから、管理情報に基づいて有効なデータを抽出し(ステップS21)、抽出したデータを次の消去許可ブロックにコピーする(ステップS22)。次いで処理部10は、データの書き込み対象の消去許可ブロックを、次の消去許可ブロックへ切り替える(ステップS23)。また処理部10は、以前の消去許可ブロックのデータを消去する処理を行って(ステップS24)、ブロック更新処理を終了する。
以上の構成の本実施の形態に係るデータ記憶装置1は、データが一括消去される記憶ブロックを複数有するフラッシュメモリ20について、複数の記憶ブロックのうち一又は複数の記憶ブロックを消去禁止ブロックとして扱う。データ記憶装置1の処理部10は、消去禁止ブロックに対してデータの消去処理を行わない。またデータ記憶装置1は、その他の複数の記憶ブロックを消去許可ブロックとして扱う。処理部10は、消去許可ブロックに対してデータの書き込みを行い、書き込みにより消去許可ブロックがデータで満たされた場合、この消去許可ブロックから有効なデータを読み出して次の消去許可ブロックへコピーし、書き込み対象の記憶ブロックを次へ切り替えるブロック更新処理を行う。更新処理を終了した後、処理部10は、データで満たされた消去許可ブロックに対して消去処理を行う。これにより処理部10は、複数の消去許可ブロックを順次的に利用してデータの書き込みを行う。
よってデータ記憶装置1は、値が更新されることのないデータを消去禁止ブロックに記憶し、値が更新されるデータを消去許可ブロックに記憶しておくことができる。値が更新されることのないデータは、他の記憶ブロックへの退避などが行われないため、書き込みの失敗によってデータが消失することはない。また消去禁止ブロックは、データの消去処理が行われないため、データの書換回数は増加せず、この記憶ブロックに記憶されたデータの信頼性が低下することがない。
なお、本実施の形態に係るデータ記憶装置1は、車両100に搭載される車載のものとしたが、これに限るものではなく、その他の種々のデータ記憶装置の同様の構成を適用することができる。またデータ記憶装置1は、フラッシュメモリ20にデータを記憶する構成としたが、これに限るものではなく、ブロックなどの単位でデータ消去を行う他の不揮発性メモリにデータを記憶する構成としてもよい。
また複数の消去許可ブロックを順に切り替えてデータの書き込みを行う処理を処理部10が行う構成としたが、これに限るものではなく、フラッシュメモリ20のメモリ管理部21が処理を行ってもよい。また処理部10が記憶ブロックに対する消去処理を行わないことで消去禁止ブロックを実現する構成としたが、これに限るものではなく、例えばメモリ管理部21が処理部10から消去禁止ブロックに対する消去要求を受け付けた場合に、この要求を拒否する構成として消去禁止ブロックを実現してもよい。
(変形例1)
データ記憶装置1は、フラッシュメモリ20の消去禁止ブロックの空き領域に対して、データの書き込みを行う構成としてもよい。例えば車両100にイモビライザーが搭載されている場合、イモビライザーの認証処理に用いられるセキュリティコードを、フラッシュメモリ20の消去禁止ブロックの空き領域に書き込んで記憶することができる。イモビライザーのセキュリティコードは、例えばキーを交換した場合などに変更される可能性があるが、消去許可ブロックに記憶する車載機器の設定値などと比較して更新の頻度が低い情報である。なお変形例1に係るデータ記憶装置1は、フラッシュメモリ20の消去禁止ブロックに対するデータ書込を行う構成であるため、消去許可ブロックと同様に、記憶されているデータが有効であるか無効であるかを判断するための管理情報などを消去禁止ブロックに記憶している。
データ記憶装置1は、フラッシュメモリ20の消去禁止ブロックの空き領域に対して、データの書き込みを行う構成としてもよい。例えば車両100にイモビライザーが搭載されている場合、イモビライザーの認証処理に用いられるセキュリティコードを、フラッシュメモリ20の消去禁止ブロックの空き領域に書き込んで記憶することができる。イモビライザーのセキュリティコードは、例えばキーを交換した場合などに変更される可能性があるが、消去許可ブロックに記憶する車載機器の設定値などと比較して更新の頻度が低い情報である。なお変形例1に係るデータ記憶装置1は、フラッシュメモリ20の消去禁止ブロックに対するデータ書込を行う構成であるため、消去許可ブロックと同様に、記憶されているデータが有効であるか無効であるかを判断するための管理情報などを消去禁止ブロックに記憶している。
変形例1に係るデータ記憶装置1の処理部10は、セキュリティコードの書き込みを行う必要が生じた場合、消去禁止ブロックに空き領域が存在するか否かを判断し、空き領域が存在していれば書き込みを行う。空き領域が存在していない場合、処理部10は、セキュリティコードの書き込みは行わない。なお処理部10は、消去禁止ブロックに空き領域が存在せずにセキュリティコードの書き込みが行えない場合、例えばエラーメッセージの表示又は警告ランプの点灯等の方法で書き込み失敗の通知を行ってもよい。またこのような場合に、例えば車両100のディーラ又は整備工場等において特別な機器を用いる又は特別な操作を行うことによって、フラッシュメモリ20の消去禁止ブロックのデータ消去及びデータ書換を行うことが可能な構成であってもよい。
図8は、変形例1に係るデータ記憶装置1が行うデータ書込処理の手順を示すフローチャートである。変形例1に係るデータ記憶装置1の処理部10は、フラッシュメモリ20に対するデータの書き込みを行う際に、書き込むデータがセキュリティコードであるか否かを判定する(ステップS31)。書き込むデータがセキュリティコードでない場合(S31:NO)、処理部10は、フラッシュメモリ20の消去許可ブロックへのデータ書き込み処理を行って(ステップS32)、処理を終了する。なおステップS32にて行うデータ書き込み処理は、図6に示した処理と同様であるため、詳細な説明は省略する。
書き込むデータがセキュリティコードである場合(S31:YES)、処理部10は、フラッシュメモリ20の消去禁止ブロックに空き領域が存在するか否かを判定する(ステップS33)。消去禁止ブロックに空き領域が存在する場合(S33:YES)、処理部10は、消去禁止ブロックにセキュリティコードを書き込み(ステップS34)、データ書き込み処理を終了する。また消去禁止ブロックに空き領域が存在しない場合(S33:NO)、処理部10は、エラーメッセージの表示などのエラー処理を行って(ステップS35)、データの書き込みを行うことなく処理を終了する。
このように変形例1に係るデータ記憶装置1は、フラッシュメモリ20の消去禁止ブロックに対するデータの書き込みを許可することで、消去禁止ブロックの空き領域を有効活用することができる。消去禁止ブロックは、データの消去処理を行うことが禁止されているため、このブロックがデータで満たされるまではデータの書き込みを行うことができる。消去禁止ブロックには、例えばセキュリティコードのように更新頻度が低いデータを書き込むことができる。なお消去禁止ブロックに書き込むデータは、セキュリティコード以外のデータであってよい。
(変形例2)
変形例2に係るデータ記憶装置1は、データの書き込みを行う場合に、正データ及び副データ(正データを複写したデータ)の2つのデータ書き込みを行う。図9は、変形例2に係るデータ記憶装置1が行うデータ書込処理を説明するための模式図である。変形例2に係るデータ記憶装置1は、フラッシュメモリ20の複数の消去許可ブロックについて、2つのブロックを1組として利用する。例えば第1消去許可ブロック及び第2消去許可ブロックを1組とし、第3消去許可ブロック及び第4消去許可ブロックを1組とし、…、第N-1消去許可ブロック及び第N消去許可ブロックを1組とする(ただしNは偶数とする)。データ記憶装置1は、例えば第1消去許可ブロックに設定値a_1を正データとして書き込んだ後、第2消去許可ブロックに同一の設定値a_1を副データとして書き込む。これにより、1組とされた2つの消去許可ブロックには、同じデータが書き込まれる。
変形例2に係るデータ記憶装置1は、データの書き込みを行う場合に、正データ及び副データ(正データを複写したデータ)の2つのデータ書き込みを行う。図9は、変形例2に係るデータ記憶装置1が行うデータ書込処理を説明するための模式図である。変形例2に係るデータ記憶装置1は、フラッシュメモリ20の複数の消去許可ブロックについて、2つのブロックを1組として利用する。例えば第1消去許可ブロック及び第2消去許可ブロックを1組とし、第3消去許可ブロック及び第4消去許可ブロックを1組とし、…、第N-1消去許可ブロック及び第N消去許可ブロックを1組とする(ただしNは偶数とする)。データ記憶装置1は、例えば第1消去許可ブロックに設定値a_1を正データとして書き込んだ後、第2消去許可ブロックに同一の設定値a_1を副データとして書き込む。これにより、1組とされた2つの消去許可ブロックには、同じデータが書き込まれる。
また変形例2に係るデータ記憶装置1は、フラッシュメモリ20に記憶されたデータについて誤りの有無を判断する誤り検出機能を有している。データ記憶装置1は、消去許可ブロックからデータを読み出す場合、まず一方の消去許可ブロックに記憶されている正データの誤りの有無を判断し、誤りがなければこの正データを読み出す。一方の消去許可ブロックに記憶されている正データに誤りがあると判断した場合、データ記憶装置1は、他方の消去許可ブロックに記憶されている副データを読み出す。なお副データについても誤りの有無を判断してもよい。
図10は、変形例2に係るデータ記憶装置1が行うデータ読出処理の手順を示すフローチャートである。変形例2に係るデータ記憶装置1の処理部10は、読み出すデータが消去禁止ブロック又は消去許可ブロックのいずれに記憶されているかを判定する記憶ブロック判定処理を行う(ステップS41)。処理部10は、記憶ブロック判定処理の結果に基づき、読み出すべきデータの記憶先が消去禁止ブロックであるか否かを判断する(ステップS42)。データの記憶先が消去禁止ブロックである場合(S42:YES)、処理部10は、フラッシュメモリ20の消去禁止ブロックからデータを読み出して(ステップS43)、処理を終了する。
データの記憶先が消去禁止ブロックではなく消去許可ブロックである場合(S42:NO)、処理部10は、データ書き込みの対象としている2つの消去許可ブロックを選択する(ステップS44)。処理部10は、選択した消去許可ブロックの管理情報を読み出して(ステップS45)、一方の消去許可ブロックから有効なデータを読み出す(ステップS46)。処理部10は、一方の消去許可ブロックから読み出したデータに誤りがあるか否かを判定し(ステップS47)、誤りがない場合には(S47:NO)、このデータを読み出しデータとして処理を終了する。一方の消去許可ブロックから読み出したデータに誤りがある場合(S47:YES)、処理部10は、他方の消去許可ブロックから有効なデータを読み出し(ステップS48)、このデータを読み出しデータとして処理を終了する。
このように変形例2に係るデータ記憶装置1は、データの書き込みを行う場合に、正データ及び副データを消去許可ブロックへ書き込む。データの読み出しを行う場合にデータ記憶装置1は、消去許可ブロックに記憶された正データ及び副データの誤り検出を行い、その結果に応じていずれかのデータを読み出せばよい。これにより、消去許可ブロックに記憶するデータの信頼性を向上することができる。なおデータ記憶装置1は、正データ及び副データをそれぞれ異なる消去許可ブロックに記憶する構成ではなく、正データ及び副データを同一の消去許可ブロックに記憶する構成としてもよい。
1 データ記憶装置
10 処理部
11 RAM
20 フラッシュメモリ
21 メモリ管理部
30 記憶部
31 プログラム用記憶領域
32 データ用記憶領域
100 車両
10 処理部
11 RAM
20 フラッシュメモリ
21 メモリ管理部
30 記憶部
31 プログラム用記憶領域
32 データ用記憶領域
100 車両
Claims (8)
- データが一括して消去される記憶ブロックを複数有する不揮発性メモリを備えるデータ記憶装置において、
前記記憶ブロックに対してデータを書き込む処理を行う書込手段と、
該書込手段によるデータの書き込みにより一の記憶ブロックがデータで満たされた場合に、前記一の記憶ブロックから一又は複数のデータを読み出して他の記憶ブロックへ書き込むデータ複写手段と、
該データ複写手段による処理の終了後に、前記一の記憶ブロックのデータを消去する処理を行う消去手段と
を備え、
前記不揮発性メモリが有する複数の記憶ブロックには、
前記書込手段、前記データ複写手段及び前記消去手段の処理対象とならないデータ消去禁止ブロックと、
前記書込手段、前記データ複写手段及び前記消去手段の処理対象となる複数のデータ消去許可ブロックと
を含むこと
を特徴とするデータ記憶装置。 - 前記データ消去禁止ブロックがデータで満たされるまで、前記データ消去禁止ブロックに対してデータを書き込む処理を行う第2の書込手段を備えること
を特徴とする請求項1に記載のデータ記憶装置。 - 前記書込手段は、一のデータを前記データ消去許可ブロックに対して書き込む場合に、前記一のデータと該一のデータの複写データとを書き込むようにしてあり、
前記不揮発性メモリに書き込まれたデータの誤りを検出する検出手段と、
該検出手段の検出結果に応じて、前記一のデータ又は前記複写データを読み出す読出手段と
を備えること
を特徴とする請求項1又は請求項2に記載のデータ記憶装置。 - 前記書込手段は、前記一のデータ及び前記複写データを、それぞれ異なるデータ消去禁止ブロックに書き込むようにしてあること
を特徴とする請求項3に記載のデータ記憶装置。 - 車両に搭載され、データが一括して消去される記憶ブロックを複数有する不揮発性メモリを備える車載データ記憶装置において、
前記記憶ブロックに対してデータを書き込む処理を行う書込手段と、
該書込手段によるデータの書き込みにより一の記憶ブロックがデータで満たされた場合に、前記一の記憶ブロックから一又は複数のデータを読み出して他の記憶ブロックへ書き込むデータ複写手段と、
該データ複写手段による処理の終了後に、前記一の記憶ブロックのデータを消去する処理を行う消去手段と
を備え、
前記不揮発性メモリが有する複数の記憶ブロックには、
前記書込手段、前記データ複写手段及び前記消去手段の処理対象とならないデータ消去禁止ブロックと、
前記書込手段、前記データ複写手段及び前記消去手段の処理対象となる複数のデータ消去許可ブロックと
を含むこと
を特徴とする車載データ記憶装置。 - 前記データ消去禁止ブロックがデータで満たされるまで、前記データ消去禁止ブロックに対してデータを書き込む処理を行う第2の書込手段を備えること
を特徴とする請求項5に記載の車載データ記憶装置。 - 前記データ消去禁止ブロックには、搭載される車両の仕様に関する情報が記憶してあり、
前記書込手段は、前記車両に搭載された電子機器に関し、前記車両の使用者が変更可能な設定情報を書き込み、
前記第2の書込手段は、セキュリティに関する情報を書き込むようにしてあること
を特徴とする請求項6に記載の車載データ記憶装置。 - データが一括して消去される記憶ブロックを複数有する不揮発性メモリにデータを記憶するデータ記憶方法において、
前記記憶ブロックに対してデータを書き込む処理を行う書込ステップと、
該書込ステップによるデータの書き込みにより一の記憶ブロックがデータで満たされた場合に、前記一の記憶ブロックから一又は複数のデータを読み出して他の記憶ブロックへ書き込むデータ複写ステップと、
該データ複写ステップによる処理の終了後に、前記一の記憶ブロックのデータを消去する処理を行う消去ステップと
を含み、
前記不揮発性メモリが有する複数の記憶ブロックには、
前記書込ステップ、前記データ複写ステップ及び前記消去ステップの処理対象としないデータ消去禁止ブロックと、
前記書込ステップ、前記データ複写ステップ及び前記消去ステップの処理対象とする複数のデータ消去許可ブロックと
を含むこと
を特徴とするデータ記憶方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013-272969 | 2013-12-27 | ||
JP2013272969A JP6060892B2 (ja) | 2013-12-27 | 2013-12-27 | 車載データ記憶装置及びデータ記憶方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2015098894A1 true WO2015098894A1 (ja) | 2015-07-02 |
Family
ID=53478747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2014/084004 WO2015098894A1 (ja) | 2013-12-27 | 2014-12-23 | データ記憶装置、車載データ記憶装置及びデータ記憶方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6060892B2 (ja) |
WO (1) | WO2015098894A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113946288A (zh) * | 2021-09-15 | 2022-01-18 | 长江存储科技有限责任公司 | 数据擦除方法、装置、电子设备及计算机存储介质 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11699308B2 (en) | 2019-07-29 | 2023-07-11 | Toyota Motor North America, Inc. | Tracking of transport data |
US11217041B2 (en) | 2019-07-29 | 2022-01-04 | Toyota Motor North America, Inc. | Tracking of transport data |
US11500571B2 (en) | 2019-07-29 | 2022-11-15 | Toyota Motor North America, Inc. | Tracking of transport data |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001056787A (ja) * | 1999-08-20 | 2001-02-27 | Fujitsu General Ltd | メモリ書込装置およびその書込方法 |
JP2002091831A (ja) * | 2000-09-12 | 2002-03-29 | Hitachi Ltd | データ処理システム及びデータ処理方法 |
WO2004066157A1 (ja) * | 2003-01-22 | 2004-08-05 | Fujitsu Limited | メモリコントローラ |
JP2007265056A (ja) * | 2006-03-29 | 2007-10-11 | Juki Corp | プログラマブルロジックデバイスのコンフィギュレーション装置 |
JP2012531655A (ja) * | 2009-11-04 | 2012-12-10 | 株式会社日立製作所 | フラッシュメモリモジュール |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3268130B2 (ja) * | 1994-07-20 | 2002-03-25 | 株式会社東芝 | フラッシュeepromを用いたデータ処理装置 |
JP3884839B2 (ja) * | 1997-10-17 | 2007-02-21 | 株式会社ルネサステクノロジ | 半導体記憶装置 |
JP4327626B2 (ja) * | 2004-03-12 | 2009-09-09 | 株式会社東芝 | 不揮発性半導体記憶装置 |
JP2008073885A (ja) * | 2006-09-19 | 2008-04-03 | Toyo Tire & Rubber Co Ltd | 筒状芯体付成形品の製造方法、及び、筒状芯体付成形品 |
-
2013
- 2013-12-27 JP JP2013272969A patent/JP6060892B2/ja active Active
-
2014
- 2014-12-23 WO PCT/JP2014/084004 patent/WO2015098894A1/ja active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001056787A (ja) * | 1999-08-20 | 2001-02-27 | Fujitsu General Ltd | メモリ書込装置およびその書込方法 |
JP2002091831A (ja) * | 2000-09-12 | 2002-03-29 | Hitachi Ltd | データ処理システム及びデータ処理方法 |
WO2004066157A1 (ja) * | 2003-01-22 | 2004-08-05 | Fujitsu Limited | メモリコントローラ |
JP2007265056A (ja) * | 2006-03-29 | 2007-10-11 | Juki Corp | プログラマブルロジックデバイスのコンフィギュレーション装置 |
JP2012531655A (ja) * | 2009-11-04 | 2012-12-10 | 株式会社日立製作所 | フラッシュメモリモジュール |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113946288A (zh) * | 2021-09-15 | 2022-01-18 | 长江存储科技有限责任公司 | 数据擦除方法、装置、电子设备及计算机存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP2015127873A (ja) | 2015-07-09 |
JP6060892B2 (ja) | 2017-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2015098894A1 (ja) | データ記憶装置、車載データ記憶装置及びデータ記憶方法 | |
JP2009230407A (ja) | データの更新方法、メモリシステムおよびメモリデバイス | |
KR100813629B1 (ko) | 향상된 섹터 보호 스킴 | |
TWI436369B (zh) | 記憶裝置之使用壽命量測方法及系統內編程碼置換方法、及其資料儲存系統 | |
JP4227149B2 (ja) | 電子制御装置の情報記憶方法 | |
JP2001014871A (ja) | 不揮発性半導体記憶装置 | |
JP7020989B2 (ja) | 不揮発性記憶装置、メモリ制御装置、及びメモリ制御方法 | |
JP3875153B2 (ja) | 不揮発性半導体記憶装置およびその書き換え禁止制御方法 | |
JP6421042B2 (ja) | 情報処理装置 | |
JP5045584B2 (ja) | プログラム書き換え装置 | |
JP5695112B2 (ja) | データ記憶装置、データの記憶方法および車載用制御装置 | |
JP3981268B2 (ja) | 不揮発性メモリ及びそのデータ更新方法 | |
US10223294B2 (en) | Fast secure boot from embedded flash memory | |
US20110082995A1 (en) | Information processing apparatus | |
JP6040895B2 (ja) | マイクロコンピュータ及び不揮発性メモリのブロック管理方法 | |
US9465730B2 (en) | Flash memory device | |
CN101694636A (zh) | 非易失性数据存储器数据更新备份系统及方法 | |
JP4910402B2 (ja) | 不揮発性メモリの書き換え装置及び書き換え方法 | |
JP4031693B2 (ja) | 不揮発性メモリおよびこれを有したデータ記憶装置 | |
JP6317653B2 (ja) | 自動車用電子制御装置及びデータ記憶方法 | |
JP2006018594A (ja) | 情報処理装置 | |
JP2019074797A (ja) | 不揮発性メモリのデータ書換方法及び半導体装置 | |
JP5787095B2 (ja) | 不揮発性メモリへのデータ記憶方法 | |
CN114115755B (zh) | 用于数据写入的方法及装置、存储介质 | |
JP5643708B2 (ja) | 電子制御装置 |
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: 14873841 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: 14873841 Country of ref document: EP Kind code of ref document: A1 |