Bit-flip based memory health monitoring apparatus for preventing misoperation

CN115686928BActive Publication Date: 2026-10-23CHINA SOUTHERN POWER GRID COMPANY
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202211382787.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-11-07
Publication Date
2026-10-23
Estimated Expiration
2042-11-07

AI Technical Summary

Technical Problem

在实际使用中单粒子翻转会使得“0”变成“1”或者“1”变成“0”,即单粒子翻转会使得数据翻转,亦有可能是原本关闭的纠检错电路在数据无异常的情况下被触发,导致性能被占用

Benefits of technology

1.该基于位翻转的预防误动的存储器健康监视装置,纠错模块可以对产生位翻转的数据进行修正,而纠错模块由开关模块被触发而启动,而利用流程记录模块记录数据所经过的流程,只有流程记录模块所记录的流程与数据组中的数据所经历的流程一致且一次对照单元或二次对照单元比对出不一致而触发开关模块时纠错模块才进行工作,由此可防止纠错模块被异常触发,以避免占用性能。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115686928B_ABST
    Figure CN115686928B_ABST
Patent Text Reader

Abstract

The application discloses a memory health monitoring device for preventing misoperation based on bit flip, relates to the technical field of storage management, and comprises a data writing module and a data reading module. The input end of the data writing module is provided with a data group. The data reading module is connected to the output end of a storage module. The data writing module comprises a cache unit and a primary comparison unit. The output end of a secondary comparison unit is connected with an output unit. The primary comparison unit and the secondary comparison unit are both connected with a switch module. The memory health monitoring device for preventing misoperation based on bit flip records the process of data by using a process recording module. The error correction module only works when the process recorded by the process recording module is consistent with the process of data in the data group and the primary comparison unit or the secondary comparison unit compares and finds inconsistency to trigger the switch module. Thus, the error correction module can be prevented from being abnormally triggered to avoid performance occupation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of storage management technology, specifically to a memory health monitoring device based on bit flipping to prevent erroneous operation. Background Technology

[0002] The cause of single-event upsets is the presence of a large number of high-energy charged particles in the space environment. Electronic components in memory are affected by these high-energy charged particles, causing a jump in their potential state, i.e., "0" becomes "1" or "1" becomes "0". In the field of electronics, data is stored in binary. If a bit in a piece of data is flipped, it will cause incalculable errors to the calculation results.

[0003] As disclosed in application number CN201911167032.X, this invention discloses a selectable bit-width error correction and detection circuit for a single-event upset (SOME) resistant memory, comprising: an error correction and detection encoding module and an error correction and detection decoding module. The error correction and detection encoding module performs checksum encoding on 11-64 bit wide input data to generate an 8-bit checksum for error correction and detection, which is output to the error correction and detection decoding module along with the input data. The error correction and detection decoding module decodes and verifies the data signal. When a single bit error exists in the data signal, it outputs a single-bit error message and the error location, and corrects the error. When two bits error exist in the data signal, it outputs a two-bit error message. This invention can achieve verification and error correction of 11-64 bits of data with less circuit area and without occupying too much data bit width. Combined with a multi-bit SOME resistant memory structure, it improves the SOME resistant performance of the memory. Furthermore, users can choose to enable error correction and detection functions or only one of them according to their needs, achieving better flexibility.

[0004] Error correction and detection circuits similar to those in the above application still have the following shortcomings: In practical use, a single event fault can cause "0" to become "1" or "1" to become "0". In other words, a single event fault can cause data to be flipped. It is also possible that the error correction circuit, which was originally turned off, is triggered when there is no abnormality in the data, resulting in the use of its performance.

[0005] Therefore, in view of this, we have studied and improved the existing structure and its shortcomings, and proposed a memory health monitoring device based on bit flipping to prevent malfunctions, in order to achieve a more practical purpose. Summary of the Invention

[0006] To address the shortcomings of existing technologies, this invention provides a memory health monitoring device based on bit flipping to prevent malfunctions, thus solving the problems mentioned in the background section.

[0007] To achieve the above objectives, the present invention provides the following technical solution: a memory health monitoring device for preventing malfunctions based on bit flipping, comprising a data writing module and a data reading module. The input terminal of the data writing module receives a data group, which is data to be input. The output terminal of the data writing module is connected to a storage module. The data reading module is connected to the output terminal of the storage module. The data writing module includes a cache unit and a primary comparison unit. The output terminal of the cache unit is connected to the primary comparison unit. The data reading module includes a secondary comparison unit and an output unit. The output terminal of the secondary comparison unit is connected to the output unit. Both the primary and secondary comparison units are connected to a switch module, and the switch module is connected to an error correction module. The switch module is also connected to a process recording module.

[0008] Furthermore, the cache unit is used to temporarily store data to be input.

[0009] Furthermore, the primary comparison unit is used to compare the data inside the cache unit with the data in the data group.

[0010] Furthermore, the secondary control unit is connected to the primary control unit, and the secondary control unit also retains data from the data set.

[0011] Furthermore, the data in the data group of the secondary comparison unit is saved in the form of compressed images.

[0012] Furthermore, the secondary comparison unit is used to compare the data to be output in the storage module with the data in the data group.

[0013] Furthermore, the error correction module is used to correct and reset the data that has generated bit flips.

[0014] Furthermore, the process recording module is used to record the process performed by the data in the data group.

[0015] Furthermore, the output ends of the data writing module and the data reading module are connected to a manual operation recording module, and the output end of the manual operation recording module is connected to an analysis module. The analysis module is also connected to a database, and one output end of the analysis module is connected to a result output module, while the other output end of the analysis module is connected to a prompt module.

[0016] Furthermore, the specific usage process of the bit-flip-based memory health monitoring device for preventing erroneous operation is as follows: Step 1: The data in the data group is manually uploaded to the data writing module of the storage. At this time, the cache unit receives the data. While the first comparison unit scans the data in the data group, it reads the data received in the cache unit. The two data are compared by the first comparison unit. If the comparison is correct, the data in the cache unit is stored in the storage module. Step 2: If the two types of data are inconsistent after being compared by the comparison unit, the switch module is triggered, so that the error correction module corrects the data in the cache unit based on the data in the data group. The corrected data is then sent from the cache unit to the storage module. Step 3: The process recording module records the process of data from the data group entering the storage module. If no data inconsistency occurs in the process recorded by the process recording module and the switch module is triggered, it means that the switch module is affected by a single particle flip. At this time, the switch module is triggered and the error correction module does not work. That is, the error correction module only works when the process recorded by the process recording module is consistent with the process experienced by the data in the data group and a single comparison unit finds an inconsistency and triggers the switch module. Step 4: While scanning the data in the data group, the primary comparison unit compresses the data into an image and sends it to the secondary comparison unit. When reading data from the storage module, the secondary comparison unit compares the data image with the data read from the storage module. If the comparison matches, the data in the storage module is output through the output unit. Step 5: If the secondary comparison unit finds that the data image is inconsistent with the data read from the storage module, the switch module is triggered, which causes the error correction module to correct the data in the storage module based on the data image. The corrected data is then output through the output unit. Step Six: The process recording module also records the process of the data in the storage module entering the secondary comparison unit. If no data inconsistency occurs in the process recorded by the process recording module and the switch module is triggered, it means that the switch module is subjected to single particle flip. At this time, the switch module is triggered and the error correction module does not work. That is, the error correction module will only work when the process recorded by the process recording module is consistent with the process experienced by the data in the storage module and the secondary comparison unit finds an inconsistency and triggers the switch module. Step 7: The primary and secondary comparison units compare and correct the data during the reading or writing process. If the data has been written or read before the comparison is completed, the primary and secondary comparison units will still perform the comparison operation. After the comparison is completed, the error correction module can still correct the data that has been read or written and mark the correction area. Step 8: All manual operations involved in steps 1 to 7 are recorded by the manual operation recording module. Manual operations include connecting and disconnecting the memory and electronic device, as well as manually inputting data from the data group into the module or reading data from the storage module. The manual operation process is recorded and input into the analysis module. The analysis module searches the database based on the operation process to determine whether the manual operation is reasonable. The database records reasonable manual operation processes and stores the average damage caused by unreasonable operations. If an unreasonable operation is likely to damage the electronic device or memory, such as directly disconnecting the memory and electronic device without safely disconnecting them, the damage result is output to the electronic device through the result output module for personnel to know, and the prompt module also points out the unreasonable operation location.

[0017] This invention provides a memory health monitoring device for preventing erroneous operation based on bit flips, which has the following beneficial effects: 1. This memory health monitoring device based on bit flip prevention can correct data that has bit flipped. The error correction module is activated by the switch module. The process recording module records the process that the data has gone through. The error correction module only works when the process recorded by the process recording module is consistent with the process that the data in the data group has gone through, and the first comparison unit or the second comparison unit finds that they are inconsistent and triggers the switch module. This can prevent the error correction module from being abnormally triggered, so as to avoid performance loss.

[0018] 2. This memory health monitoring device based on bit flipping to prevent malfunctions has a primary comparison unit and a secondary comparison unit working together with an error correction module to compare and correct data when it is written and read, preventing data that has been flipped by a single particle from being written to or output from the storage module, thereby ensuring the correctness of the data for a long time.

[0019] 3. This memory health monitoring device based on bit flipping to prevent erroneous operation records the manual operation process by the manual operation recording module and inputs it into the analysis module. The analysis module searches the database based on the operation process to determine whether the manual operation is reasonable. If the operation is unreasonable and may cause damage to the electronic device or memory, the damage result is output to the electronic device through the result output module so that the personnel are aware of it. The device also points out the unreasonable operation location through the prompt module so that the personnel can correct it in time and extend the service life of the memory.

[0020] 4. This memory health monitoring device based on bit flipping to prevent erroneous operation has a primary comparison unit and a secondary comparison unit that compare and correct data during the reading or writing process. If the data has been written or read before the comparison is complete, the primary and secondary comparison units will still perform the comparison operation. After the comparison is completed, the error correction module can still correct the data that has been read or written and mark the correction points. This setting does not affect the data reading and writing speed, so that the data can be quickly viewed by personnel, and the marking points can prevent personnel from remembering the errors. Attached Figure Description

[0021] Figure 1 This is a schematic diagram of the overall process of the memory health monitoring device for preventing malfunctions based on bit flipping according to the present invention. Figure 2 This is a schematic diagram of the internal process of the data writing module of the memory health monitoring device for preventing malfunctions based on bit flipping according to the present invention. Figure 3 This is a schematic diagram of the internal flow of the data reading module of the memory health monitoring device for preventing malfunctions based on bit flipping, as described in this invention. Figure 4 This is a schematic diagram of the workflow of the first process recording module of the memory health monitoring device for preventing malfunctions based on bit flipping according to the present invention. Figure 5 This is a schematic diagram of the workflow of the second process recording module of the memory health monitoring device for preventing malfunctions based on bit flipping according to the present invention. Figure 6 This is a schematic diagram of the workflow of the analysis module of the memory health monitoring device for preventing malfunctions based on bit flipping, as described in this invention.

[0022] In the diagram: 1. Data writing module; 101. Cache unit; 102. Primary comparison unit; 2. Data group; 3. Storage module; 4. Data reading module; 401. Secondary comparison unit; 402. Output unit; 5. Switch module; 6. Error correction module; 7. Process recording module; 8. Manual operation recording module; 9. Analysis module; 10. Database; 11. Result output module; 12. Prompt module. Detailed Implementation

[0023] like Figure 1-5As shown, the present invention provides a technical solution: a memory health monitoring device for preventing malfunctions based on bit flipping, comprising a data writing module 1 and a data reading module 4. The input terminal of the data writing module 1 receives a data group 2, and the data group 2 is the data to be input. The output terminal of the data writing module 1 is connected to a storage module 3. The data reading module 4 is connected to the output terminal of the storage module 3. The data writing module 1 includes a cache unit 101 and a primary comparison unit 102. The output terminal of the cache unit 101 is connected to the primary comparison unit 102. The data reading module 4 includes a secondary comparison unit 401 and an output unit 402. The output terminal of the secondary comparison unit 401 is connected to the output unit 402. Both the primary comparison unit 102 and the secondary comparison unit 401 are connected to a switch module. 5. The switch module 5 is connected to the error correction module 6 and the process recording module 7. The cache unit 101 is used to temporarily store the data to be input. The primary comparison unit 102 is used to compare the data inside the cache unit 101 with the data in the data group 2. The secondary comparison unit 401 is connected to the primary comparison unit 102 and also stores the data in the data group 2. The data in the data group 2 in the secondary comparison unit 401 is saved in the form of compressed images. The secondary comparison unit 401 is used to compare the data to be output in the storage module 3 with the data in the data group 2. The error correction module 6 is used to correct and reset the data that has generated bit flips. The process recording module 7 is used to record the process performed by the data in the data group 2. The specific operation is as follows: Data from data group 2 is manually uploaded to the data writing module 1 of the storage unit. At this time, the cache unit 101 receives the data. Simultaneously, the primary comparison unit 102 scans the data in data group 2 and reads the data received in the cache unit 101. The two sets of data are compared by the primary comparison unit 102. If the comparison is correct, the data in the cache unit 101 is stored in the storage module 3. If the two sets of data show inconsistencies after comparison by the primary comparison unit 102, the switch module 5 is triggered, causing the error correction module 6 to correct the data in the cache unit 101 based on the data in data group 2. The corrected data is then sent from the cache unit 101 to the storage module 3. The process recording module 7 records the data from data group 2 entering the storage module. In the process of block 3, if no data inconsistency occurs in the process recorded by process recording module 7 but switch module 5 is triggered, it indicates that switch module 5 has been subjected to a single-particle flip. At this time, switch module 5 is triggered but error correction module 6 does not work. That is, error correction module 6 only works when the process recorded by process recording module 7 is consistent with the process experienced by the data in data group 2, and the primary comparison unit 102 finds an inconsistency and triggers switch module 5. While scanning the data in data group 2, primary comparison unit 102 compresses the data into an image and sends it to secondary comparison unit 401. When reading data from storage module 3, secondary comparison unit 401 compares the data image with the data read from storage module 3. If the comparison is consistent, the data is stored. Data from module 3 is output through output unit 402. If the secondary comparison unit 401's data image is inconsistent with the data read from storage module 3, it triggers switch module 5, causing error correction module 6 to correct the data in storage module 3 based on the data image. The corrected data is then output through output unit 402. The primary comparison unit 102 and secondary comparison unit 401, in conjunction with error correction module 6, can compare and correct data during writing and reading, preventing data that has been flipped by a single particle from being written to or output from storage module 3. This ensures data accuracy over a long period. Process recording module 7 also records the flow of data from storage module 3 into secondary comparison unit 401. If the data recorded by process recording module 7... If the switch module 5 is triggered even though there is no data inconsistency in the recorded process, it indicates that the switch module 5 has been subjected to a single-particle flip. In this case, the switch module 5 is triggered, but the error correction module 6 does not work. That is, the error correction module 6 only works when the process recorded by the process recording module 7 is consistent with the process experienced by the data in the storage module 3, and the secondary comparison unit 401 finds an inconsistency, thus triggering the switch module 5. The process recording module 7 records the process experienced by the data. The error correction module 6 only works when the process recorded by the process recording module 7 is consistent with the process experienced by the data in the data group 2, and the primary comparison unit 102 or the secondary comparison unit 401 finds an inconsistency, thus triggering the switch module 5. This prevents the error correction module 6 from being abnormally triggered.To avoid performance overhead, the primary comparison unit 102 and the secondary comparison unit 401 compare and correct data during the reading or writing process. If the data writing or reading is completed before the comparison is finished, but the primary comparison unit 102 and the secondary comparison unit 401 continue the comparison operation, the error correction module 6 can still correct the data that has been read or written after the comparison is completed, and mark the corrected parts. This setting does not affect the data reading and writing speed, allowing the data to be quickly viewed by personnel, and the markings prevent personnel from misremembering.

[0024] like Figure 6 As shown, the output ends of the data writing module 1 and the data reading module 4 are connected to the manual operation recording module 8, and the output end of the manual operation recording module 8 is connected to the analysis module 9. The analysis module 9 is also connected to the database 10, and one output end of the analysis module 9 is connected to the result output module 11, and the other output end of the analysis module 9 is connected to the prompt module 12. The specific operation is as follows: manual operation includes connecting and disconnecting the memory and electronic device, as well as manually inputting data from data group 2 into module 1 or reading data from storage module 3. The manual operation process is recorded and input into analysis module 9. Analysis module 9 searches database 10 for the rationality of the manual operation based on the operation process. Database 10 records rational manual operation processes and stores the average wear caused by unreasonable operations. If an unreasonable operation is likely to damage the electronic device or memory, such as directly disconnecting the memory from the electronic device without safely disconnecting it, the wear result is output to the electronic device through result output module 11 for personnel to know, and the unreasonable operation location is also indicated by prompt module 12. The wear result is output to the electronic device through result output module 11 for personnel to know, and the unreasonable operation location is also indicated by prompt module 12 so that personnel can correct it in time to extend the service life of the memory.

[0025] In summary, as Figure 1-6 As shown, the specific usage process of this bit-flip-based memory health monitoring device for preventing malfunctions is as follows: Step 1: The data in data group 2 is manually uploaded to the data writing module 1 of the memory. At this time, the cache unit 101 receives the data. The first comparison unit 102 scans the data in data group 2 and reads the data received in the cache unit 101. The two data are compared by the first comparison unit 102. If the comparison is correct, the data in the cache unit 101 is stored in the storage module 3. Step 2: If the two types of data are inconsistent after being compared by the comparison unit 102, the switch module 5 is triggered, so that the error correction module 6 corrects the data in the cache unit 101 based on the data in the data group 2. The corrected data is then sent from the cache unit 101 to the storage module 3. Step 3: The process recording module 7 records the process of the data in data group 2 entering the storage module 3. If the process recorded by the process recording module 7 does not have a data inconsistency process and the switch module 5 is triggered, it means that the switch module 5 is subjected to single particle flip. At this time, the switch module 5 is triggered and the error correction module 6 does not work. That is, the error correction module 6 only works when the process recorded by the process recording module 7 is consistent with the process experienced by the data in data group 2 and the first comparison unit 102 finds an inconsistency and triggers the switch module 5. Step 4: While scanning the data in data group 2, the primary comparison unit 102 compresses the data into an image and sends it to the secondary comparison unit 401. When reading data from storage module 3, the secondary comparison unit 401 compares the data image with the data read from storage module 3. If the comparison is consistent, the data in storage module 3 is output through output unit 402. Step 5: If the secondary comparison unit 401 is inconsistent with the data in the storage module 3 based on the data image, the switch module 5 is triggered, so that the error correction module 6 corrects the data in the storage module 3 based on the data image, and the corrected data is output through the output unit 402. Step 6: The process recording module 7 also records the process of the data in the storage module 3 entering the secondary comparison unit 401. If the process recorded by the process recording module 7 does not show any data inconsistency and the switch module 5 is triggered, it means that the switch module 5 is subjected to single particle flip. At this time, the switch module 5 is triggered and the error correction module 6 does not work. That is, the error correction module 6 only works when the process recorded by the process recording module 7 is consistent with the process experienced by the data in the storage module 3 and the secondary comparison unit 401 finds an inconsistency and triggers the switch module 5. Step 7: The primary comparison unit 102 and the secondary comparison unit 401 compare and correct the data during the reading or writing process. If the data has been written or read before the comparison is completed, the primary comparison unit 102 and the secondary comparison unit 401 will still perform the comparison operation. After the comparison is completed, the error correction module 6 can still correct the data that has been read or written and mark the correction part. Step 8: All manual operations involved in steps 1 to 7 are recorded by the manual operation recording module 8. Manual operations include connecting and disconnecting the memory and electronic device, as well as manually inputting data from data group 2 into module 1 or reading data from storage module 3. The manual operation process is recorded and input into the analysis module 9. The analysis module 9 searches the database 10 for the rationality of the manual operation based on the operation process. The database 10 records rational manual operation processes and stores the average damage caused by unreasonable operations. If there are unreasonable operations that are likely to damage the electronic device or memory, such as directly disconnecting the memory and electronic device without safely disconnecting the memory, the damage result is output to the electronic device through the result output module 11 for personnel to know, and the unreasonable operation position is also pointed out by the prompt module 12.

Claims

1. A memory health monitoring device based on bit flipping to prevent malfunctions, comprising a data writing module (1) and a data reading module (4), characterized in that: The input terminal of the data writing module (1) receives a data group (2), and the data group (2) is the data to be input. The output terminal of the data writing module (1) is connected to a storage module (3). The data reading module (4) is connected to the output terminal of the storage module (3). The data writing module (1) includes a cache unit (101) and a primary comparison unit (102). The output terminal of the cache unit (101) is connected to the primary comparison unit (102). The data reading module (4) includes a secondary comparison unit (401) and an output unit (402). The output terminal of the secondary comparison unit (401) is connected to the output unit (402). The primary comparison unit (102)... Both the secondary comparison unit (401) and the secondary comparison unit (401) are connected to a switch module (5), and the switch module (5) is connected to an error correction module (6). The switch module (5) is also connected to a process recording module (7). The cache unit (101) is used to temporarily store the data to be input. The primary comparison unit (102) is used to compare the data inside the cache unit (101) with the data in the data group (2). The secondary comparison unit (401) is connected to the primary comparison unit (102), and the secondary comparison unit (401) also stores the data in the data group (2). The secondary comparison unit (401) is used to compare the data to be output in the storage module (3) with the data in the data group (2).

2. The memory health monitoring device for preventing malfunctions based on bit flipping according to claim 1, characterized in that: The data in the data group (2) of the secondary comparison unit (401) is saved in the form of compressed images.

3. The memory health monitoring device for preventing malfunctions based on bit flipping according to claim 1, characterized in that: The error correction module (6) is used to correct and reset the data that has generated bit flips.

4. The memory health monitoring device for preventing malfunctions based on bit flipping according to claim 1, characterized in that: The process recording module (7) is used to record the process of the data in the data group (2).

5. The memory health monitoring device for preventing malfunctions based on bit flipping according to claim 1, characterized in that: The output ends of the data writing module (1) and the data reading module (4) are connected to the manual operation recording module (8), and the output end of the manual operation recording module (8) is connected to the analysis module (9). The analysis module (9) is also connected to the database (10), and one output end of the analysis module (9) is connected to the result output module (11), and the other output end of the analysis module (9) is connected to the prompt module (12).

Citation Information

Patent Citations

  • Selectable bit width error correction and detection circuit for single event upset resistant memory

    CN110931074A

  • Anti-radiation data processing system and method based on FPGA

    CN103500125A