GB2243466A - Memory error detection - Google Patents
Memory error detection Download PDFInfo
- Publication number
- GB2243466A GB2243466A GB9007332A GB9007332A GB2243466A GB 2243466 A GB2243466 A GB 2243466A GB 9007332 A GB9007332 A GB 9007332A GB 9007332 A GB9007332 A GB 9007332A GB 2243466 A GB2243466 A GB 2243466A
- Authority
- GB
- United Kingdom
- Prior art keywords
- data
- memory
- byte
- logical state
- bits
- 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.)
- Withdrawn
Links
- 230000015654 memory Effects 0.000 title claims abstract description 65
- 238000001514 detection method Methods 0.000 title description 6
- 238000000034 method Methods 0.000 claims description 7
- 238000012544 monitoring process Methods 0.000 claims description 2
- 238000004146 energy storage Methods 0.000 abstract description 3
- 230000007246 mechanism Effects 0.000 abstract description 3
- 230000006386 memory function Effects 0.000 abstract 1
- 210000000352 storage cell Anatomy 0.000 abstract 1
- 230000007774 longterm Effects 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 5
- 230000009466 transformation Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 238000007667 floating Methods 0.000 description 3
- 230000007257 malfunction Effects 0.000 description 3
- 230000009471 action Effects 0.000 description 2
- 238000007599 discharging Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 101001005269 Arabidopsis thaliana Ceramide synthase 1 LOH3 Proteins 0.000 description 1
- 101001005312 Arabidopsis thaliana Ceramide synthase LOH1 Proteins 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000002485 combustion reaction Methods 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000005684 electric field Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005669 field effect Effects 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 230000005389 magnetism Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 230000000246 remedial effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 239000000725 suspension Substances 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/085—Error detection or correction by redundancy in data representation, e.g. by using checking codes using codes with inherent redundancy, e.g. n-out-of-m codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/47—Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37
- H03M13/51—Constant weight codes; n-out-of-m codes; Berger codes
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
Abstract
In memory system 103 for use with a microprocessor 10 via a data bus 16, an address bus 15 and read and write lines 100 and 101, the data to be stored is monitored (by a discriminator 102 or software) to ensure that in each data byte written to the memory 14 a predetermined fixed number of bits is set. Memory 14 comprises storage cells which provide the memory function having a high energy storage state (SET) and a low energy storage state (CLEAR). Data corruption occurs by a mechanism of reversion from the clear state to the SET state, so discriminator 102 serves to indicate data corruption in read data if the number of bits set in retrieved data exceeds the predetermined value. <IMAGE>
Description
IMPROVEMENTS IN OR RELATING TO MEMORY SYSTEMS
The present invention relates to memory systems and in particular to memory systems intended for data critical applications, that is applications in which a corruption of the data during storage and subsequent retrieval can have a potentially catastrophic effect on the overall system, a control system, for example, of which the memory system forms a part. Clearly in such circumstances it is important that stored data is protected from corruption or that if a corruption occurs it does not go undetected.
There are many examples of data critical applications in the automotive area, for example the storage of control parameters by the control system of an anti-lock braking system, or engine parameter storage by an ignition control system, all of which systems may be realised by a microcomputer controller comprising a microprocessor and associated memory. Factors which can cause a corruption of stored data include subjecting the semi-conductor devices of the system to extreme temperatures and electrical noise causing erratic or unpredictable behaviour.
Data storage in control systems may be permanent (control programs, for example), temporary (e.g. intermediate process parameters), or long-term (parameters to be carried forward to be retrieved at a later date, such as for example engine diagnostic parameters and performance parameters). For the permanent and temporary storage memory of respectively the Read-Only and
Random-Access types may be used, and many semi-conductor devices of these types are readily available. Long-term storage devices include magnetic media such as disk and tape drives and are characterised by their re-programmability. Unfortunately such magnetism based storage devices are unsuitable or too costly in many applications. In the automotive arena, for example, inclusion of a disk drive in an engine controller would be prohibitively expense and unreliable in the very hostile physical and electrical environment.Use of long term storage is only possible in such an application if a low cost device, for example a semi-conductor device, can be used.
Long term semi-conductor storage devices are known and commonly referred to as Electrically Erasable/Programmable Read
Only Memory and include a plurality of individually programmable memory cells, each typically comprising a field effect memory transistor having a floating (that is an electrically isolated) gate, storage being possible by virtue of switching the transistor between a first stable state (the natural state) in which the gate of the memory transistor is charged, and a second stable state in which the gate is discharged and relies upon being able to apply a reversible electric field to the thin oxide layer which typically isolates the floating gate from its substrate.A clear advantage of this stability is that non-volatile memory is provided which can survive a power supply disconnection enabling for example, the storage of information relating to average performance or total distance travelled in an automotive trip computer that is unpowered during parking or battery disconnection.
The erase operation of an EEPROM cell is performed by charging the floating gate so that the cell is in its natural or erased state (conventionally designated as a logical "1"). The program operation is performed by discharging the gate to the so-called programmed state (conventionally designated as a logical "0"). To achieve the program/erase operations, the memory cell typically includes an additional select transistor arrange in series with the memory transistor. For a fuller description of EEPROM memory cell structure and operation reference may be made to "Semi-conductor
Memories" by Betty Prince and Gunnar Gundersen (Wiley, 1983), particularly pages 135 to 141. When data corruption occurs in such a device, the mechanism is that of reversion to the erased state ("1") of cells which have been programmed (to "0").
The structure of a typical EEPROM cell is compatible with that of microprocessor technology and EEPROM has been successfully integrated with a microprocessor to form a single device. An example of such a device is that manufactured by Motorola Inc. of
Schaumburg, Illinois, USA under the designation MC68HCll, details of which are available in a data sheet published by the aforesaid manufacturer. In connection with such devices, it should be noted that the amount of EEPROM available in such an integrated microcomputer arrangement can be significantly less than that typically employed in larger systems based on separate processor and
EEPROM devices.
Clearly, the corruption of the data stored in any of the memory associated with the processor of a control system is likely to cause a malfunction, but corruption of long-term storage data can be particularly problematic since, unlike corruption of program or register data, it is unlikely to lead to a manifest failure of the system as a whole. For example, suppose a diagnostic variable stored in
EEPROM by the processor at the instant of an engine malfunction to be indicative of the failure becomes corrupted, then when the false information is subsequently read, much expenditure could be wasted in trying to solve a non-existent problem, whilst the real failure does untreated.Equally, if an engine running parameter, such as one used to make small variations in ignition timing to preserve performance as engine wear is encountered, is corrupted then not only will the engine run inefficiently, but the performance may actually be degraded. In this sense, such applications are datacritical.
In an extreme case, engine damage could be caused if a stored control parameter were corrupted to a value that produced a severe ignition timing error. Firing with the inlet value open could give combustion right through the manifold to the carburetter.
Unfortunately, not only is such corruption of EEPROM data unlikely to be readily detectable, but the EEPROM itself is additionally vulnerable to corruption by virtue of the finite time taken to program and erase a memory cell. If there is a power supply voltage spike or other noise or disruption during a program or erase operation, then the state of the cell after the operation will be indeterminate with consequent corruption of the data stored.
Such corruption can occur even in normal operation. In automotive applications, for example it is common practice to hold the processor in a reset mode during power down so that potentially damaging spurious outputs cannot be generated as the power supply falls. The reset can be generated either by shutting down the engine or preferably by detection of a low supply voltage so that unexpected power supply disconnections and failures may be similarly dealt with. Reset can occur at any time. A reset which occurs before all memory cells have been erased on after memory cells have been erased but before the required cells have been programmed will cause data corruption.
In order to overcome the problem of data corruption, corruption prevention and detection algorithms are known. A characteristic of these algorithms is that redundant data is added to that to be stored to enable corruption detection. An example is the common "checksum" algorithm where extra data representing for example the total number of logical "1" bits in a block of data (be it a byte for a high resolution system, or an entire memory page for a low) is added to the total data to be stored. When the data is subsequently recovered, if the "checksum" data does not tally data corruption is indicated.Clearly the reliability of the arrangement increases with the degree of redundancy employed, up to the point where with some algorithms full error correction is possible if the significant amount of extra memory required for the redundancy and the storage of a program for executing the correction algorithm is available and the execution time overhead if the program is acceptable.
Unfortunately, in many situations such overheads cannot be tolerated in a limited resource integrated microcomputer system, for example, and the reliability of the system is compromised if the corruption detection is removed. This can rule out the use of these otherwise desirable systems in critical applications such as automotive engine control, anti-locking braking systems and active suspension systems.
In accordance with the present invention in a first aspect thereof a memory system includes
means for storing a data byte,
the byte comprising a plurality of data bits,
each bit taking either a first logical state or a
second logical state,
and the number of bits taking the fist logical state
in the byte being a predetermined number;
the means having a plurality of cells arranged for bit storage,
each cell having an erased state representative of the
first logical state,
and a programmed state representative of the second
logical state;
means for programming cells in accordance with the data to be
stored;
means for monitoring stored data bytes;
and means for providing an output indicative of data corruption if the number of bits taking the fist logical state in the stored byte is not equal to the predetermined number.
Advantageously the predetermined number is selected to be half the byte size. In one form of the present invention the memory may be adapted for byte storage by erasure of all cells in which the byte is to be stored and subsequent programming of those cells which correspond to bits taking the second logical level.This form of the invention is particularly suitable for memory of the
Electrically Erasable/Programmable Read Only Memory and derivative types, such as Flash Electrically Erasable/Programmable
Read Only Memory
In accordance with the present invention in a second aspect thereof a method of storing data in memory having a plurality
of cells arranged for bit storage,
each cell having an erased state representative of the
first logical state, and a programmed state representative of the second
logical state; includes the steps of
writing a byte of data to the memory,
the byte comprising a plurality of data bits,
each bit taking either a first logical state or a second
logical state,
such that the number of bits taking the fist logical state
in the byte being a predetermined number; and subsequently
reading the byte;
and providing an output indicative of data corruption if the number of bits taking the fist logical state in the read byte is not equal to the predetermined number.
In order that features and advantages of the present invention may be further appreciated embodiments will now be described with reference to the accompanying diagrammatic drawings of which
Figure 1 represents a microcomputer system including a memory system in accordance with the present invention.
Fig 2 represents a flow chart of a read cycle incorporating the present invention, and
Fig 3 represents a flow chart of a write cycle incorporating the present invention.
A microcomputer system 105 (Figure 1) includes a microprocessor 10 and an associated memory means 11, 12 and 14.
The arrangement comprises three types of memory, namely readonly memory 11 for the storage of the program and other fixed data, random access volatile memory 12 for the storage of temporary information and Electrically Erasable Programmable Read-Only
Memory 14 for the storage of long-term data. Connecting the devices is an address bus 15 and data bus 16. The operation of the computer system is as follows.
When it is required to load data to the microprocessor 10 the relevant address is first output by the microprocessor on the address bus 15 and the relevant memory device (11, 12 or 14) selected by enabling the relevant chip select output (on CS1 CSII or
CSIII) to drive the chip select input of the relevant device via respectively lines 17, 18 or 19. Depending on the nature of the transfer, a read or a write, either read line 100 or the write line 101 is selected. In this way data transfer for both storage and retrieval of data in the memory devices is possible.
The address bus 15 and the data bus 16 together with the read and write lines 100 and 101 are additionally connected to a discriminator means 102. An additional input to the discriminator 102 is provided by the chip select line 17 of the EEPROM 14. The arrangement is thus such that the discriminator 102 may monitor activity on the address and data busses whenever memory device 14 is selected.
The operation of the memory arrangement will now be considered in more detail with particular reference EEPROM device 14.
When it is desired to read data from the memory device 14 the desired address from which the data is to be read its first loaded by the microprocessor 10 on to the address bus 15. The appropriate chip select output (cos1, line 17,) is next enabled to enable the chip select input of the memory device 14. The read line 100 is then enabled and the memory device 14 responds by outputting the relevant data on to the data bus 16 which then may be loaded into the processor 10. A read operation of the memory device 14 has thereby performed. It will be appreciated that the various operations which make up the read cycle are controlled by a system clock (not shown) connected to all the devices of the system. It will further be appreciated that as hereinbefore described the read cycle requires a plurality of system clock cycles for its complete operation.
The write operation is similar except that it requires more system clock cycles because a longer procedure has to be implemented within the memory device 14. When chip select input of the memory device 14 is enabled together with the write input firstly all the memory cells making up the desired address are charged as hereinbefore described to erase the data contained, that is all memory cells at the desired address are written with a 1. On the next system clock cycle the data on the data bus is written to the address of memory device 14 by discharging those memory cells at that address which are to be programmed with a zero. When this has happened the write operation to the memory device 14 is complete.It will be apparent that during this write operation the data to be stored is open to corruption if the write operation should fail to be completed due for example to a power down reset, in that having written at least some of the memory cells to a "1" not all of the cells that will have been written to a "0". Hence the state of each cell is indeterminate, and the data must be considered corrupted.
Solutions such as battery back up are not practical in highly cost sensitive applications such as automotive, and in any case leakage corruptions may still occur.
In accordance with the present invention the data which may be loaded to the memory device 14 is restricted to that data wherein the number of bits to be written with a "1" is a predetermined value. To ensure that no data which violates this condition is written to the memory device 14 the descriminator 102 is activated by the write line 100 whenever the memory device 14 is selected. The discriminator 102 then monitors the data bus 16 to check that the data does not violate the aforesaid condition. If it does an error output is given at 104. The address at which the violation occurred may also be loaded to the discriminator 102 or alternatively output 104 may be used to drive an interrupt routine in the microprocessor 10 so that action may be taken to avoid the violation.
Since no data which violates the condition can be stored in the memory device 14, the check performed by discriminator 102 is equally valid when the data is read. To this end, the discriminator 102 receives read line input 100 and an output is produced at 104 if the condition is violated to indicate that the data retrieved is corrupted data. As before this enables the processor 10 to take appropriate action, for example using a default value in place of the data value retrieved.
The data corruption detection provided by the embodiment described above will now be considered in more detail.
It will be recalled that in order to write to a EEPROM cell, the cell is firstly erased to a 1 and then programmed to a "0" if that is the data to be stored. This cycle is followed even if the cell was initially in the programmed state. Data corruption can occur if the write operation is interrupted. This will leave bits in the erased (1) state which should have been programmed to a "0". Thus data can be corrupted by a cell which should be programmed being erased, but not vice versa. Because of the energy storage nature of the memory cells this is equally true of other corruption mechanisms.
such as leakage due to temperature wherein a programmed cell can become erased. Hence, provided the data written to the memory is restricted to bytes having a fixed number of erased bits, discriminator 102 will serve to indicate data corruption simply by counting the number of set bit in the retrieved data and comprising the counted value with the predetermined value. If the count exceeds the fixed number, corruption has occurred.
Clearly, the largest number of allowable byte values occurs when the fixed number is half the number of the available bits.
Thus for a byte of 8 bits the number of allowable combinations (n) is given by:
N= 8! = 8 x 7 x 6 x 5 = 70
(8-4)!x4! 4 x 3 x 2
Although the number of allowable byte values has been restricted compaired with the 256 normally available, this is not a limitation in many applications. In automotive diagnostics, for example, 70 different failures could be individually coded into a single byte. Typically, perhaps 15 codes are used at present, so that the invention provides the important advantage that low cost
EEPROM base controllers may now be utilised without reliability compromise since data corruption may be detected. Even if a different code is assigned to all failures likely to be coded, not all of which would be possible in a given application, then it is likely that the total provided by a single byte would still prove adequate.If the codes available are not the codes required, then a translation may easily be performed, for example in a look-up table.
It will be appreciated that EEPROM 14 and discriminator 102 constitute a memory system 103 in which corrupt data on the data bus 16 appearing during a read cycle may be detected to be disregarded. In the example of engine diagnostics, straightforward remedial action which may be fallen in the event of a corruption indication is to immediately overwrite the corrupted location with the code for no fault, on the basis that the previous fault, if not falsely indicated, will reoccur to be successfully stored and retrieved at a late time.
Although the embodiment of the present invention described above involves a hardware discriminator 102 the present invention may be implemented by means of software embodied in the program of the microprocessor 10 for example. In this arrangement, the discriminator is not required but instead the read and write operations to memory device 14 are performed by special subroutines which implement the invention. A read of data from memory cell 14 is done by means of the sub-routine 27 (figure 2).
When a read request 20 is received the data bus is first loaded with the relevant address and read 21 in the normal way. The number of set bits, that is the number of erased bits, in the downloaded value is counted 22 and if it is greater than the fixed value data corruption is indicated at 24. If the condition at 23 is satisfied the downloaded value is returned as a valid value for the data read from the memory cell 14 at the required address.
For write operation 30 (Fig 3), a validity check must be performed on the data to be written to ensure that the condition of the predetermined number of bits in the data to be stored is met.
This may be achieved by a simple counting of the set bits in a way similar to that described above for the read operation. Generally, the data to be written is unlikely to meet the condition and one way of accommodating such data is to apply a transformation, after checking the data is within the range that can be validly transformed. In engine diagnostics, for example, the data to be stored as a diagnostic variable when an engine malfunction is detected is selected from a predefined set of values stored in read only memory. When a write operation 31 is required this value to be stored is first loaded (32) and the validity of the data assessed 33 by checking that its within a predefined range of values that can be applied for example to a 4 out of 8 transformation algorithm for an eight bit byte. If the data is invalid an error flag is set 34, otherwise the transformation proceeds 35, for example by means of a look up table stored in ROM. Following transformation the data may be written 36 by means of a normal EEPROM write cycle as previously described. Following the write, a read request 37 (that is the subroutine of Fig 2) is performed immediately to confirm a successful write before continuing 38.
It will be appreciated that the present invention provides a memory system wherein data corruption is indicated, meaning that corrupted data does not go on to disrupt data critical applications.
This is achieved without the memory and large execution time overheads of error correction algorithms. This increased level of confidence permits the use of for example integrated microprocessor EEPROM in data critical applications.
Claims (7)
- The matter for which the applicant seeks protection is:1. A memory system including means for storing a data byte, the byte comprising a plurality of data bits, each bit taking either a first logical state or a second logical state, and the number of bits taking the fist logical state in the byte being a predetermined number; the means having a plurality of cells arranged for bit storage, each cell having an erased state representative of the first logical state, and a programmed state representative of the second logical state; means for programming cells in accordance with the data to be stored; means for monitoring stored data bytes; and means for providing an output indicative of data corruption if the number of bits taking the fist logical state in the stored byte is not equal to the predetermined number.
- 2. A memory system as claimed in claim 1 and wherein the predetermined number is selected to be half the byte size.
- 3. A memory system as claimed in claim 1 or claim 2 and wherein the memory is adapted for byte storage by erasure of all cells in which the byte is to be stored and subsequent programming of those cells which correspond to bits taking the second logical level.
- 4. A method of storing data in memory having a plurality of cells arranged for bit storage, each cell having an erased state representative of the first logical state, and a programmed state representative of the second logical state; including the steps of writing a byte of data to the memory, the byte comprising a plurality of data bits, each bit taking either a first logical state or a second logical state, such that the number of bits taking the fist logical state in the byte being a predetermined number; and subsequently reading the byte; and providing an output indicative of data corruption if the number of bits taking the fist logical state in the read byte is not equal to the predetermined number.
- 5. A method of storing data in memory as claimed in claim 4 and wherein the step of writing a byte to memory includes the steps of erasing of all cells in which the byte is to be stored and the subsequent step of programming of those cells which correspond to bits taking the second logical level.
- 6. A memory system or method of storing data in memory as claimed in claims 1, 2 or 3 or claims 4 or 5 and wherein the memory is Electrically Erasable/Programmable Read Only Memory.
- 7. A memory system or method of storing data in memory substantially as herein described with reference to the drawings.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9007332A GB2243466A (en) | 1990-03-31 | 1990-03-31 | Memory error detection |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB9007332A GB2243466A (en) | 1990-03-31 | 1990-03-31 | Memory error detection |
Publications (2)
Publication Number | Publication Date |
---|---|
GB9007332D0 GB9007332D0 (en) | 1990-05-30 |
GB2243466A true GB2243466A (en) | 1991-10-30 |
Family
ID=10673688
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
GB9007332A Withdrawn GB2243466A (en) | 1990-03-31 | 1990-03-31 | Memory error detection |
Country Status (1)
Country | Link |
---|---|
GB (1) | GB2243466A (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0055129A2 (en) * | 1980-12-23 | 1982-06-30 | Fujitsu Limited | Semiconductor memory device |
WO1983002164A1 (en) * | 1981-12-17 | 1983-06-23 | Ryan, Philip, Meade | Apparatus for high speed fault mapping of large memories |
EP0110354A2 (en) * | 1982-11-26 | 1984-06-13 | Tektronix, Inc. | Detecting improper operation of a digital data processing apparatus |
-
1990
- 1990-03-31 GB GB9007332A patent/GB2243466A/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0055129A2 (en) * | 1980-12-23 | 1982-06-30 | Fujitsu Limited | Semiconductor memory device |
WO1983002164A1 (en) * | 1981-12-17 | 1983-06-23 | Ryan, Philip, Meade | Apparatus for high speed fault mapping of large memories |
EP0110354A2 (en) * | 1982-11-26 | 1984-06-13 | Tektronix, Inc. | Detecting improper operation of a digital data processing apparatus |
Also Published As
Publication number | Publication date |
---|---|
GB9007332D0 (en) | 1990-05-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6336174B1 (en) | Hardware assisted memory backup system and method | |
US5715431A (en) | Tamper proof security measure in data writing to non-volatile memory | |
CN108062259B (en) | MCU internal data storage ECC processing system and processing method thereof | |
US20020199054A1 (en) | Method of overwriting data in nonvolatile memory and a control apparatus used for the method | |
US8275927B2 (en) | Storage sub-system for a computer comprising write-once memory devices and write-many memory devices and related method | |
US6480933B1 (en) | Disk cache device and method for secure writing of hard disks in mass memory subsystems | |
JP2014120179A (en) | Salvaging event trace information in power loss interruption scenarios | |
US10338831B2 (en) | System and method for preserving data in volatile memory | |
US12038808B2 (en) | Memory integrity check | |
US9619330B2 (en) | Protecting volatile data of a storage device in response to a state reset | |
EP0886211B1 (en) | Initial program load | |
US20070237007A1 (en) | Memory controller | |
EP3428921A1 (en) | Memory sector retirement in a non-volatile memory | |
US12333171B2 (en) | Monotonic counters and counting methods by monotonic counter | |
GB2243466A (en) | Memory error detection | |
EP0070184B1 (en) | A method of testing memory | |
US20090158089A1 (en) | Method for recognizing a power failure in a data memory and recovering the data memory | |
JPH0822422A (en) | Memory device | |
WO1992019046A1 (en) | EEPROM MEMORY SYSTEMS FOR 'n OUT OF m' CODES | |
CN114356653A (en) | Power-down protection method and device for industrial control firewall | |
JP2000132461A (en) | Information control device | |
US6295589B1 (en) | Apparatus and method prohibiting RAM diagnosis when other units may access RAM | |
JPH0944416A (en) | Data protection method in case of power failure of data processing system by computer and data processing system with data protection function in case of power failure | |
CN119993236A (en) | Storage control method, circuit and microprocessor chip | |
TW202437119A (en) | Data loss protection for memory systems and devices |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WAP | Application withdrawn, taken to be withdrawn or refused ** after publication under section 16(1) |