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 PDF

Info

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
Application number
CN201811407648.5A
Other languages
Chinese (zh)
Other versions
CN109741781A (en
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.)
Shandong Institute of Space Electronic Technology
Original Assignee
Shandong Institute of Space Electronic Technology
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 Shandong Institute of Space Electronic Technology filed Critical Shandong Institute of Space Electronic Technology
Priority to CN201811407648.5A priority Critical patent/CN109741781B/en
Publication of CN109741781A publication Critical patent/CN109741781A/en
Application granted granted Critical
Publication of CN109741781B publication Critical patent/CN109741781B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

Data writing and reading method of multi-substrate memory based on triple modular redundancy
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.
Figure BDA0001877757080000011
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.
CN201811407648.5A 2018-11-23 2018-11-23 Data writing and reading method of multi-substrate memory based on triple modular redundancy Active CN109741781B (en)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Patent Citations (6)

* Cited by examiner, † Cited by third party
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