CN109741781B - Data writing and reading method of multi-substrate memory based on triple modular redundancy - Google Patents
Data writing and reading method of multi-substrate memory based on triple modular redundancy Download PDFInfo
- Publication number
- CN109741781B CN109741781B CN201811407648.5A CN201811407648A CN109741781B CN 109741781 B CN109741781 B CN 109741781B CN 201811407648 A CN201811407648 A CN 201811407648A CN 109741781 B CN109741781 B CN 109741781B
- Authority
- CN
- China
- Prior art keywords
- data
- substrate
- shifting
- modular redundancy
- triple modular
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Abstract
The invention discloses a data writing and reading method of a multi-substrate memory based on triple modular redundancy, which combines the triple modular redundancy with the multi-substrate memory, and adds a shift operation in the write operation of the triple modular redundancy by utilizing the characteristics of the multi-substrate memory so as to store different segments of spliced data in a single substrate; then adding a shift operation in the triple modular redundancy read operation, wherein the shift direction is opposite to the write operation, so as to recover splicing data; when some substrates have errors, because different fragments of the spliced data are stored in a single substrate, the same data fragment cannot be mistaken, so that the problem of failure of the whole memory caused by the failure of a certain substrate in a multi-substrate memory can be solved through the triple modular redundancy technology, and the safety and the reliability of target data are effectively improved.
Description
Technical Field
The invention belongs to the technical field of memories, and particularly relates to a data writing and reading method of a multi-substrate memory based on triple modular redundancy.
Background
Triple Modular Redundancy (TMR) is the mainstream anti-SEU hardening design method at present, and the basic principle is to design three repeated circuit modules or units, compare their outputs to decide and select the correct output value, so that even if one module fails, the whole circuit can still work normally.
In order to meet different task requirements, a design method for splicing a plurality of memories (called substrates) with small bit widths (called data fragments, such as 8-bit data lines) into memories with large bit widths (called spliced data, such as 32-bit data lines) is commonly adopted in a computer; or a plurality of small bit wide industrial grade memories are used as substrates and packaged into 1 large bit wide memory, so as to achieve the purpose of saving the PCB space; in the aerospace field, after data line bit width splicing is carried out on a plurality of low-grade substrates, radiation-resistant packaging is carried out in a targeted manner.
Taking an integrated memory with 32-bit data line width formed by splicing 4 pieces of 8-bit data line width substrates as an example, in the current application, a processor or an FPGA adopting a triple modular redundancy technology writes target data into three different addresses in a multi-substrate memory respectively.
It can be seen that a single chip stores the same data segment (e.g. chip 1 stores the lower 7-bit data segment of three addresses), and if 1 chip fails, which results in the data segments of three addresses being all wrong, then the three pieces of concatenated data read from the three addresses are all wrong, and the result of the two-out-of-three decision is also wrong. Other multi-substrate memory and triple modular redundancy techniques may be used in combination similar to the example described above.
Disclosure of Invention
In view of the above, an object of the present invention is to provide a data writing and reading method for a multi-substrate memory based on triple modular redundancy, which can solve the problem of access error caused by an abnormal substrate in the multi-substrate memory.
A data writing and reading method of a multi-substrate memory based on triple modular redundancy is disclosed, wherein a plurality of substrates are spliced into an integrated memory according to a set sequence, and each substrate is provided with 3 addresses; setting the bit width m of the target data to be K times of the bit width n of the substrate data, wherein the writing and reading method comprises the following steps:
firstly, shifting target data for the first time, wherein the shifted bit number is integral multiple L of the bit width of the substrate data, namely n ×L, wherein L < K;
secondly, shifting the target data for the second time, wherein the number of shifted bits is integral multiple M of the bit width of the substrate data, namely n × M, wherein M is not equal to L and M is less than K;
the third step, shifting the target data for the third time, wherein the number of the shifted bits is integral multiple N of the bit width of the substrate data, namely N × N, wherein N is not equal to M is not equal to L, and N is less than K;
fourthly, reading out the data stored in the first address in the integrated memory, and shifting the read data, wherein the number of the shifted bits is n ×L, and the shifting direction is opposite to that of the first step;
fifthly, reading out the data stored in the second address in the integrated memory, and shifting the read data, wherein the number of the shifted bits is n × M, and the shifting direction is opposite to that of the second step;
sixthly, reading out data stored in a third address in the integrated memory, and shifting the read data, wherein the number of shifted bits is N × N, and the shifting direction is opposite to that in the third step;
and seventhly, performing two-out-of-three judgment on the data obtained in the fourth step, the fifth step and the sixth step to obtain final target data.
Preferably, in the first step, the data shifting direction is left shift or right shift.
The invention has the following beneficial effects:
the invention combines the triple modular redundancy with the multi-substrate memory, and adds the shift operation in the write operation of the triple modular redundancy by utilizing the characteristics of the multi-substrate memory, so that different segments of the spliced data are stored in a single substrate; then adding a shift operation in the triple modular redundancy read operation, wherein the shift direction is opposite to the write operation, so as to recover splicing data; when some substrates have errors, because different fragments of the spliced data are stored in a single substrate, the same data fragment cannot be mistaken, so that the problem of failure of the whole memory caused by the failure of a certain substrate in a multi-substrate memory can be solved through the triple modular redundancy technology, and the safety and the reliability of target data are effectively improved.
Drawings
Fig. 1 is a flowchart of a data writing and reading method of a multi-chip memory based on triple modular redundancy according to the present invention.
Detailed Description
The invention is described in detail below by way of example with reference to the accompanying drawings.
As shown in fig. 1, in the data writing and reading method for a multi-substrate memory based on triple modular redundancy of the present invention, a plurality of substrates are spliced into an integrated memory according to a set sequence, and each substrate is provided with 3 addresses. And accessing the multi-substrate memory by adopting a triple modular redundancy technology, and respectively writing and reading target data (namely splicing data) into three addresses. The bit width m of the appointed target data is K times of the bit width n of the substrate data.
In the first step, the target data is shifted for the first time, the number of shifted bits is an integral multiple L (L < K), namely n ×L, of the bit width of the data fragment, the target data can be shifted to the left or right, and the shifted target data is written into the first address from the first substrate of the integrated memory according to the splicing sequence of the substrates.
And secondly, shifting the target data for the second time, wherein the number of shifted bits is integral multiple M (M is not equal to L and M < K) of the bit width of the data fragment, namely n × M.
And thirdly, shifting the target data for the third time, wherein the number of shifted bits is integral multiple N (N is not equal to M is not equal to L, and N is less than K) of the bit width of the data fragment, namely N × N.
And fourthly, reading out the data stored in the first address in the integrated memory, and shifting the read-out data by the number of n ×L, wherein the shifting direction is opposite to that of the first step.
And fifthly, reading the data stored in the second address in the integrated memory, and shifting the read data by n × M, wherein the shifting direction is opposite to that of the second step.
And sixthly, reading the data stored in the third address in the integrated memory, and shifting the read data, wherein the number of the shifted bits is N × N, and the shifting direction is opposite to that in the third step.
And seventhly, performing two-out-of-three judgment on the data obtained in the fourth step, the fifth step and the sixth step to obtain final target data.
The invention fully utilizes the triple modular redundancy technology, solves the problem of failure of the whole memory caused by the fault of a certain substrate in the multi-substrate memory, and effectively improves the safety and reliability of target data.
Example (b):
the target data is illustrated as 0x44332211, where M is 32, N is 8, K is 4, L is 0, M is 1, and N is 2.
In a first step, target data is written to a first address. The target data 0x44332211 is distributed as follows: 0x44 into the substrate 4, 0x33 into the substrate 3, 0x22 into the substrate 2, 0x11 into the substrate 1.
And secondly, circularly right-shifting the target data by 8 bits, and writing the shifted target data into a second address. The target data is shifted to 0x11443322, and is distributed as follows: 0x44 into the substrate 3, 0x33 into the substrate 2, 0x22 into the substrate 1, 0x11 into the substrate 4.
And thirdly, circularly right shifting the target data by 16 bits, and writing the shifted target data into a third address. The target data is shifted to 0x22114433, and the distribution is as follows: 0x44 into the substrate 2, 0x33 into the substrate 1, 0x22 into the substrate 4, 0x11 into the substrate 3.
Assuming here that the substrate 1 is faulty, the data is constantly 0x 00. Then the data in the first address is 0x44332200, the data in the second address is 0x11443300, and the data in the third address is 0x 22114400.
And fourthly, directly reading out the data stored in the first address, wherein the data is 0x 44332200.
In the fifth step, the data stored in the second address is read out and shifted to the left by 8 bits, which is 0x11443300, and is cyclically shifted to the left by 0x 44330011.
In the sixth step, the data stored in the third address is read out and shifted to the left by 16 bits, which is 0x22114400, and is 0x 44002211.
And seventhly, performing third-second judgment on the data obtained in the fourth step, the fifth step and the sixth step, and correcting the error of the substrate 1 to obtain correct target data 0x 44332211.
The technology of combining triple modular redundancy and a multi-substrate memory is verified by reading and writing for more than 300 times, and the work is stable.
In summary, the above description is only a preferred embodiment of the present invention, and is not intended to limit the scope of the present invention. Any modification, equivalent replacement, or improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.
Claims (2)
1. A data writing and reading method of a multi-substrate memory based on triple modular redundancy is disclosed, wherein a plurality of substrates are spliced into an integrated memory according to a set sequence, and each substrate is provided with 3 addresses; setting the bit width m of original target data to be K times of the bit width n of the substrate data, wherein the writing and reading method comprises the following steps:
firstly, shifting original target data for the first time, wherein the shifted bit number is integral multiple L of the bit width of the substrate data, namely n ×L, wherein L < K;
secondly, shifting the original target data for the second time, wherein the number of the shifted bits is integral multiple M of the bit width of the substrate data, namely n × M, wherein M is not equal to L and M is less than K;
the third step, shifting the original target data for the third time, wherein the number of the shifted bits is integral multiple N of the bit width of the substrate data, namely N × N, wherein N is not equal to M is not equal to L, and N is less than K;
fourthly, reading out the data stored in the first address in the integrated memory, and shifting the read data, wherein the number of the shifted bits is n ×L, and the shifting direction is opposite to that of the first step;
fifthly, reading out the data stored in the second address in the integrated memory, and shifting the read data, wherein the number of the shifted bits is n × M, and the shifting direction is opposite to that of the second step;
sixthly, reading out data stored in a third address in the integrated memory, and shifting the read data, wherein the number of shifted bits is N × N, and the shifting direction is opposite to that in the third step;
and seventhly, performing two-out-of-three judgment on the data obtained in the fourth step, the fifth step and the sixth step to obtain final target data.
2. The method as claimed in claim 1, wherein the data shifting direction in the first step is left-shift or right-shift.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811407648.5A CN109741781B (en) | 2018-11-23 | 2018-11-23 | Data writing and reading method of multi-substrate memory based on triple modular redundancy |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811407648.5A CN109741781B (en) | 2018-11-23 | 2018-11-23 | Data writing and reading method of multi-substrate memory based on triple modular redundancy |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109741781A CN109741781A (en) | 2019-05-10 |
CN109741781B true CN109741781B (en) | 2020-07-28 |
Family
ID=66358121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811407648.5A Active CN109741781B (en) | 2018-11-23 | 2018-11-23 | Data writing and reading method of multi-substrate memory based on triple modular redundancy |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109741781B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111651119B (en) * | 2020-04-27 | 2023-08-08 | 中国科学院微电子研究所 | Method, device and circuit for acquiring target data in memory |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7266020B1 (en) * | 2005-07-19 | 2007-09-04 | Xilinx, Inc. | Method and apparatus for address and data line usage in a multiple context programmable logic device |
US7512871B1 (en) * | 2001-02-14 | 2009-03-31 | Xilinx, Inc. | Techniques for mitigating, detecting, and correcting single event upset effects in systems using SRAM-based field programmable gate arrays |
CN101615211A (en) * | 2009-08-04 | 2009-12-30 | 复旦大学 | Commercial on-spot programmable device is used for the anti-irradiance method of triplication redundancy under the radiation environment |
CN102915768A (en) * | 2012-10-01 | 2013-02-06 | 中国科学院近代物理研究所 | Device and method for tolerating faults of storage based on triple modular redundancy of EDAC module |
WO2018051357A1 (en) * | 2016-09-19 | 2018-03-22 | Bar-Ilan University | Complementary dual-modular redundancy memory cell |
CN207149259U (en) * | 2017-09-13 | 2018-03-27 | 湖南斯北图科技有限公司 | A kind of satellite data radioresistance storage device of reinforcing |
-
2018
- 2018-11-23 CN CN201811407648.5A patent/CN109741781B/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7512871B1 (en) * | 2001-02-14 | 2009-03-31 | Xilinx, Inc. | Techniques for mitigating, detecting, and correcting single event upset effects in systems using SRAM-based field programmable gate arrays |
US7266020B1 (en) * | 2005-07-19 | 2007-09-04 | Xilinx, Inc. | Method and apparatus for address and data line usage in a multiple context programmable logic device |
CN101615211A (en) * | 2009-08-04 | 2009-12-30 | 复旦大学 | Commercial on-spot programmable device is used for the anti-irradiance method of triplication redundancy under the radiation environment |
CN102915768A (en) * | 2012-10-01 | 2013-02-06 | 中国科学院近代物理研究所 | Device and method for tolerating faults of storage based on triple modular redundancy of EDAC module |
WO2018051357A1 (en) * | 2016-09-19 | 2018-03-22 | Bar-Ilan University | Complementary dual-modular redundancy memory cell |
CN207149259U (en) * | 2017-09-13 | 2018-03-27 | 湖南斯北图科技有限公司 | A kind of satellite data radioresistance storage device of reinforcing |
Also Published As
Publication number | Publication date |
---|---|
CN109741781A (en) | 2019-05-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20240111625A1 (en) | Memory repair method and apparatus based on error code tracking | |
US7437600B2 (en) | Method of data writing to and data reading from storage device and data storage system | |
US4945512A (en) | High-speed partitioned set associative cache memory | |
US9811429B2 (en) | Microcontroller utilizing redundant address decoders and electronic control device using the same | |
US20180330798A1 (en) | Repair circuit for repair operation, and memory device including the same | |
US9535785B2 (en) | ECC method for flash memory | |
JP2005202957A (en) | Data partitioning for error correction | |
CN108376554A (en) | Memory module including its storage system and its error correcting method | |
JP7343709B2 (en) | error correction system | |
CN102067240A (en) | Semiconductor memory device | |
JPS6042560B2 (en) | semiconductor storage device | |
KR20140099689A (en) | Semiconductor memory device having non-volatile memory cell array | |
CN109741781B (en) | Data writing and reading method of multi-substrate memory based on triple modular redundancy | |
US11249844B2 (en) | Memory system and memory module | |
JPS6237422B2 (en) | ||
US6907554B2 (en) | Built-in self test system and method for two-dimensional memory redundancy allocation | |
US10043588B2 (en) | Memory device | |
US20230103255A1 (en) | Error correction of memory | |
US20170249210A1 (en) | Memory device and memory system | |
CN105027084A (en) | Apparatus and method for controlling memory in mobile communication system | |
CN111831486A (en) | Semiconductor device and semiconductor system including the same | |
WO2022151724A1 (en) | Error correction system | |
CN109614275B (en) | Redundancy correction circuit and redundancy correction method using same | |
CN111243652B (en) | Parallel redundancy correction circuit | |
KR19990063083A (en) | Programmable ROM with Error Recovery Circuit |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |