CN116246690A - EEPROM data reliability verification method - Google Patents

EEPROM data reliability verification method Download PDF

Info

Publication number
CN116246690A
CN116246690A CN202310319689.3A CN202310319689A CN116246690A CN 116246690 A CN116246690 A CN 116246690A CN 202310319689 A CN202310319689 A CN 202310319689A CN 116246690 A CN116246690 A CN 116246690A
Authority
CN
China
Prior art keywords
data
eeprom
ecc
checking
self
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.)
Pending
Application number
CN202310319689.3A
Other languages
Chinese (zh)
Inventor
林媛
王单
黄振龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN202310319689.3A priority Critical patent/CN116246690A/en
Publication of CN116246690A publication Critical patent/CN116246690A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Abstract

The invention belongs to the technical field of data storage, and particularly provides an EEPROM data reliability verification method which is used for judging whether data stored in an EEPROM have unexpected changes or not. The invention comprises the following steps: ECC checking and self-checking functions, and writing the highest address of the EEPROM into a result of CRC calculation on all data; the ECC check includes: ECC encoding and ECC decoding, wherein the ECC encoding encodes and writes data to be written; the ECC decoding performs decoding check on the read data and feeds error information back to the host; the host sends a self-checking request and sequentially reads data from all addresses of the EEPROM, the read data is decoded and checked and then is input into the self-checking module for CRC calculation, if the ECC check result is not wrong and the CRC calculation result is 0, the data is judged to be reliable, otherwise, the data is judged to be unreliable. The invention realizes the verification of EEPROM data reliability by combining ECC verification and self-checking functions, thereby achieving the purpose of improving the system reliability.

Description

EEPROM data reliability verification method
Technical Field
The invention belongs to the technical field of data storage, and particularly provides an EEPROM data reliability verification method.
Background
EEPROM refers to an electrified erasable programmable read-only memory, which is a memory device with no data loss after power failure; in electronic system design, it is common to use EEPROM to hold important information such as ID, adjustable parameters, and function switches. However, when abnormal power failure, electromagnetic interference, etc. occur in the process of performing read, write, and erase operations on the EEPROM, errors may occur in the data that is ultimately used.
For the above situation, the existing solutions mainly include: redundant storage, which is to use three or more groups of memories for storage, and to determine correct data according to a few methods subject to majority when the data is taken out, so that a large amount of resources are consumed; the same CRC algorithm (cyclic redundancy check) or ECC algorithm (error checking correction) is used for checking the data read during writing and use, and if the checking result passes, the data is judged to be valid, and the coverage rate of a single algorithm is limited, namely different data can obtain the same checking result.
It is therefore of great importance to implement an EEPROM data reliability verification method to address one or more of the problems described above.
Disclosure of Invention
The invention aims to provide an EEPROM data reliability checking method which is used for judging whether the data stored in an EEPROM has unexpected change or not; according to the method, the verification result is fed back to the host, and the host judges whether the EEPROM storage data is effective or not according to the feedback result, so that the reliability of the system can be improved.
In order to achieve the above purpose, the invention adopts the following technical scheme:
an EEPROM data reliability verification method, comprising: ECC checking and self-checking functions;
the highest address of the EEPROM is used as a self-checking check bit, other addresses are used as data storage bits, and the self-checking check bit is written into the result of CRC calculation on the data in all the data storage bits;
the ECC check includes: ECC encoding and ECC decoding, wherein the ECC encoding encodes the data to be written into the EEPROM, and the ECC encoding result is written into the EEPROM; ECC decoding is carried out on the data read out by the EEPROM, and error information is fed back to the host;
the self-checking function includes: the self-checking module is powered on or any other moment, the host sends a self-checking request and simultaneously sequentially reads data from all addresses of the EEPROM, the read data is input to the self-checking module for CRC calculation after ECC decoding and checking, and whether the data is reliable or not is judged according to a CRC calculation result and an ECC checking result: if the ECC check result is not wrong and the CRC calculation result is 0, the data is judged to be reliable, otherwise, the data is judged to be unreliable.
Further, the ECC encoded input data bit width is equal to the data width of the data to be stored.
Further, the bit width of the self-checking module is equal to the data width of the data to be stored, and the number of the data input by the self-checking module is equal to the address number of the EEPROM.
Further, the sequential data reading operation specifically includes: starting from a low address to a high address of the EEPROM.
Based on the technical scheme, the invention has the beneficial effects that:
the invention provides a EEPROM data reliability checking method, which is characterized in that the written and read EERPOM numbers are respectively encoded and decoded by an ECC algorithm to realize the functions of 2bit error detection and 1bit error correction, and the data stored in the EEPROM is subjected to CRC checking by a self-checking request sent by a host, so that the limitation of insufficient coverage rate of a single algorithm is overcome; finally, the EEPROM data reliability checking method provided by the invention realizes the reliability check of EEPROM storage data and has the advantage of high coverage rate.
In summary, the invention can carry out reliability check on the data stored in the EEPROM, namely, the errors of the data stored in the EEPROM can be found and corrected to a certain extent, and the invention has obvious help to improve the reliability of the system.
Drawings
Fig. 1 is a flow chart of an EEPROM data reliability checking method according to the present invention.
FIG. 2 is a diagram illustrating ECC (8, 5) encoding and decoding according to an embodiment of the present invention.
Fig. 3 is a schematic diagram of a calculation flow of a self-check bit (crc_check_sum) according to an embodiment of the present invention.
Fig. 4 is a schematic flow chart of a self-checking function in an embodiment of the invention.
Detailed Description
The present invention will be described in further detail with reference to the embodiments and the accompanying drawings, for the purpose of making the objects, technical solutions and advantages of the present invention more apparent.
The invention provides a method for checking the reliability of EEPROM data, which comprises the following steps: ECC checking and self-checking functions;
the highest address of the EEPROM is used as a self-checking check bit, other addresses are used as data storage bits, and the self-checking check bit is written into the result of CRC calculation on the data in all the data storage bits;
the ECC check includes: the method comprises the steps of ECC encoding and ECC decoding, wherein the ECC encoding encodes data to be written into the EEPROM, and the ECC encoding result is written into the EEPROM; ECC decoding is carried out on the data read out by the EEPROM (2 bit errors can be checked and 1bit data errors can be corrected), and if 1bit or 2bit errors occur, error information is fed back to the host;
the self-checking function includes: the self-checking module comprises the following specific processes: after the system is powered on or at any other moment, the host sends a self-checking request, and simultaneously sequentially reads data from all addresses of the EEPROM, the read data is firstly subjected to ECC decoding check, and then sequentially input into the self-checking module to carry out CRC calculation, and whether the check passes or not is judged according to a CRC calculation result and an ECC check result: if the ECC check result is not wrong and the CRC calculation result is 0, the data is judged to be reliable (self-checking passing), otherwise, the data is judged to be unreliable (self-checking not passing).
Examples
The method for verifying the reliability of the EEPROM data in the embodiment is realized based on the structure shown in fig. 1, and comprises the following steps: a host, an ECC encoding, EEPROM, EEPROM controller, an ECC decoding and self-checking module; the EEPROM controller receives an EEPROM read-write request from a host and realizes corresponding operation on the EEPROM; in the self-checking process, a host sends a self-checking request to a self-checking module, and simultaneously sends continuous read data requests to an EEPROM controller, the read EEPROM data is firstly decoded by ECC and sent to the self-checking module for CRC calculation, and after the self-checking is finished, the self-checking module feeds back a self-checking result to the host; the ECC encoding module finishes the encoding process of the written data, and the ECC decoding module finishes the decoding detection error correction function of the EEPROM output data and feeds back information to the host.
In one embodiment, the data width to be stored is 8 bits, and the number of addresses of the EEPROM is 16, which corresponds to 0 to F; addresses 0 to E store user data, and address F stores CRC calculation results CRC_CHECKSUM based on the user data; encoding and decoding the stored data by ECC (8, 5), the ECC (8, 5) encoding and decoding process is shown in FIG. 2; the host sends out self-checking request and continuous EEPROM reading request, the self-checking module inputs the data of addresses 0 to F decoded by ECC (8, 5) in EPROM in sequence, and the total number is 16.
In one embodiment, the ECC (8, 5) encoding process is to input 8bit data, encode and output 13bit data, and the decoding process is to input 13bit data, decode and output 8bit data; if a 1bit or 2bit error occurs, the error information is fed back to the host.
In one embodiment, the calculation and writing of the crc_check sum are completed by a user, the data from 0 to E address of the crc_check sum are sequentially input into the CRC8 in order from small to large for calculation, and the calculation process is shown in fig. 3.
In one embodiment, the self-checking module CRC8 calculates that the output is 0 and the ECC decoding module is not in error, so that the probability of data change after power failure is small, the data reliability is high, and the self-checking is passed; otherwise, after power failure, the data is changed, the data is unreliable, and the self-test is failed; the flow of the self-test is shown in fig. 4.
While the invention has been described in terms of specific embodiments, any feature disclosed in this specification may be replaced by alternative features serving the equivalent or similar purpose, unless expressly stated otherwise; all of the features disclosed, or all of the steps in a method or process, except for mutually exclusive features and/or steps, may be combined in any manner.

Claims (4)

1. An EEPROM data reliability verification method, comprising: ECC checking and self-checking functions;
the highest address of the EEPROM is used as a self-checking check bit, other addresses are used as data storage bits, and the self-checking check bit is written into the result of CRC calculation on the data in all the data storage bits;
the ECC check includes: the method comprises the steps of ECC encoding and ECC decoding, wherein the ECC encoding encodes data to be written into the EEPROM, and the ECC encoding result is written into the EEPROM; ECC decoding is carried out on the data read out by the EEPROM, and error information is fed back to the host;
the self-checking function includes: the self-checking module is powered on or any other moment, the host sends a self-checking request and simultaneously sequentially reads data from all addresses of the EEPROM, the read data is input to the self-checking module for CRC calculation after ECC decoding and checking, and whether the data is reliable or not is judged according to a CRC calculation result and an ECC checking result: if the ECC check result is not wrong and the CRC calculation result is 0, the data is judged to be reliable, otherwise, the data is judged to be unreliable.
2. The EEPROM data reliability verification method of claim 1, characterized in that the ECC encoded input data bit width is equal to the data width of the data to be stored.
3. The method for verifying the reliability of EEPROM data according to claim 1, wherein the bit width of the self-checking module is equal to the data width of the data to be stored, and the number of the data inputted by the self-checking module is equal to the address number of the EEPROM.
4. The EEPROM data reliability verification method of claim 1, characterized in that the sequential data reading operations are specifically: starting from a low address to a high address of the EEPROM.
CN202310319689.3A 2023-03-28 2023-03-28 EEPROM data reliability verification method Pending CN116246690A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310319689.3A CN116246690A (en) 2023-03-28 2023-03-28 EEPROM data reliability verification method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310319689.3A CN116246690A (en) 2023-03-28 2023-03-28 EEPROM data reliability verification method

Publications (1)

Publication Number Publication Date
CN116246690A true CN116246690A (en) 2023-06-09

Family

ID=86626183

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310319689.3A Pending CN116246690A (en) 2023-03-28 2023-03-28 EEPROM data reliability verification method

Country Status (1)

Country Link
CN (1) CN116246690A (en)

Similar Documents

Publication Publication Date Title
US10180875B2 (en) Pool-level solid state drive error correction
US8707135B2 (en) Method and system of dynamic data storage for error correction in a memory device
US8065583B2 (en) Data storage with an outer block code and a stream-based inner code
US8719677B2 (en) Using ECC encoding to verify an ECC decode operation
US9778861B2 (en) Systems and methods to improve the reliability and lifespan of flash memory
WO2014164134A2 (en) Detecting effect of corrupting event on preloaded data in non-volatile memory
CN101502001A (en) Method of arranging data in a multi-level cell memory device
US20110029841A1 (en) Semiconductor memory system having ecc circuit and controlling method thereof
US11550663B2 (en) Changing of error correction codes based on the wear of a memory sub-system
CN108958963A (en) A kind of NAND FLASH error control method based on LDPC and cyclic redundancy check code
US11664826B2 (en) Error correction code engine performing ECC decoding, operation method thereof, and storage device including ECC engine
CN109949854B (en) Storage system and operation method thereof
US11709733B2 (en) Metadata-assisted encoding and decoding for a memory sub-system
US20200356441A1 (en) Hybrid iterative error correcting and redundancy decoding operations for memory sub-systems
US11010245B2 (en) Memory storage apparatus with dynamic data repair mechanism and method of dynamic data repair thereof
CN116246690A (en) EEPROM data reliability verification method
CN115729746A (en) Data storage protection method based on CRC and ECC
JP2020042326A (en) Memory controller apparatus, memory apparatus having memory controller apparatus, and control method
US11709734B2 (en) Error correction with syndrome computation in a memory device
CN112306733B (en) Memory device, memory controller and data access method thereof
CN113138947B (en) Data writing method, memory control circuit unit and memory storage device
US20240062839A1 (en) Performing block-level media management operations for block stripes in a memory device
CN112151104A (en) Storage device and dynamic data repairing method thereof
CN111949433A (en) Processing method of working parameters of nonvolatile memory, control device and memory

Legal Events

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