CN114706538A - 低成本高可靠的spi flash芯片实现方法及系统 - Google Patents
低成本高可靠的spi flash芯片实现方法及系统 Download PDFInfo
- Publication number
- CN114706538A CN114706538A CN202210631914.2A CN202210631914A CN114706538A CN 114706538 A CN114706538 A CN 114706538A CN 202210631914 A CN202210631914 A CN 202210631914A CN 114706538 A CN114706538 A CN 114706538A
- Authority
- CN
- China
- Prior art keywords
- data
- spi flash
- control module
- civil
- voting
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000012937 correction Methods 0.000 claims abstract description 96
- 238000001514 detection method Methods 0.000 claims abstract description 83
- 238000004891 communication Methods 0.000 claims description 16
- 230000000694 effects Effects 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 7
- 238000004519 manufacturing process Methods 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 9
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 230000007547 defect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- IJJWOSAXNHWBPR-HUBLWGQQSA-N 5-[(3as,4s,6ar)-2-oxo-1,3,3a,4,6,6a-hexahydrothieno[3,4-d]imidazol-4-yl]-n-(6-hydrazinyl-6-oxohexyl)pentanamide Chemical compound N1C(=O)N[C@@H]2[C@H](CCCCC(=O)NCCCCCC(=O)NN)SC[C@@H]21 IJJWOSAXNHWBPR-HUBLWGQQSA-N 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000005855 radiation Effects 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1068—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本发明公开了一种低成本高可靠的SPI FLASH芯片实现方法及系统,通过将写过来的数据发送给投票表决控制模块;控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据;控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性。本发明公开的低成本高可靠的SPI FLASH芯片实现方法及系统,造价成本低廉、可靠性高;可适用于特殊的工作场景,通用性强。
Description
技术领域
本发明涉及存储芯片控制技术领域,尤其公开了一种低成本高可靠的SPI FLASH芯片实现方法及系统,旨在使用多片民用级的SPI FLASH芯片达到一片军品级或宇航级SPIFLASH芯片可靠性的目的。
背景技术
SPIFLASH芯片是一种常见的非易失性存储芯片。作为一种低成本的存储解决方案,可以运用在各种SOC和FPGA设计中。普通的SPIFLASH芯片在特殊的工作场景下(如工业环境,外太空等)可靠性较低,容易被高能粒子或者极端温度、湿度损坏存储能力。军工级或航天级SPIFLASH芯片通过特殊工艺和封装加固往往造价高昂且不易获得。
因此,现有SPIFLASH芯片应用在特殊的工作场景下存在的上述缺陷,是目前亟待解决的技术问题。
发明内容
本发明提供了一种低成本高可靠的SPI FLASH芯片实现方法及系统,旨在解决现有SPIFLASH芯片应用在特殊的工作场景下存在的上述缺陷。
本发明的一方面涉及一种低成本高可靠的SPI FLASH芯片实现方法,应用于SPI控制器中,包括以下步骤:
将写过来的数据发送给投票表决控制模块;
控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据;
控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性。
进一步地,控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据的步骤包括:
发出enable信号控制投票表决控制模块的工作模式;
读操作的时候,接收投票表决控制模块回传的投票表决运算,投票表决运算由投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出。
进一步地,发出enable信号控制投票表决控制模块的工作模式的步骤包括:
向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制投票表决控制模块工作在bypass模式,控制投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信;
向投票表决控制模块发出enable信号,当enable信号拉高时,则控制投票表决控制模块工作在正常工作模式,控制投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。
进一步地,民用级SPI FLASH芯片包括第一民用级SPI FLASH芯片、第二民用级SPIFLASH芯片和第三民用级SPI FLASH芯片,控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据的步骤中,假设从第一民用级SPI FLASH芯片读到的数据为A,从第二民用级SPI FLASH芯片读到的数据为B、从第三民用级SPI FLASH芯片读到的数据为C,则将从不同民用级SPI FLASH芯片读到的数据两两之间做与运算,并将最后的结果之间做或运算,用公式表达最终输出的数据result为:
进一步地,控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性的步骤中,假设单单经过校验码纠检错模块纠检错后的错误概率为 ,则经过投票表决控制模块的投票表决和校验码纠检错模块的纠检错后,最终数据出错的概率为:
本发明的另一方面涉及一种低成本高可靠的SPI FLASH芯片实现系统,包括SPI控制器、投票表决控制模块和校验码纠检错模块,其中,SPI控制器包括:
通信传输单元,用于将写过来的数据发送给投票表决控制模块;
第一控制单元,用于控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据;
第二控制单元,用于控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPIFLASH芯片的可靠性。
进一步地,第一控制单元包括:
控制子单元,用于发出enable信号控制投票表决控制模块的工作模式;
接收子单元,用于读操作的时候,接收投票表决控制模块回传的投票表决运算,投票表决运算由投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出。
进一步地,控制子单元包括:
第一工作模式切换子单元,向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制投票表决控制模块工作在bypass模式,控制投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信;
第二工作模式切换子单元,用于向投票表决控制模块发出enable信号,当enable信号拉高时,则控制投票表决控制模块工作在正常工作模式,控制投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。
进一步地,第一控制单元中,假设从第一民用级SPI FLASH芯片读到的数据为A,从第二民用级SPI FLASH芯片读到的数据为B、从第三民用级SPI FLASH芯片读到的数据为C,则将从不同民用级SPI FLASH芯片读到的数据两两之间做与运算,并将最后的结果之间做或运算,用公式表达最终输出的数据result为:
本发明所取得的有益效果为:
本发明提供一种低成本高可靠的SPI FLASH芯片实现方法及系统,通过将写过来的数据发送给投票表决控制模块;控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据;控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性。本发明提供一种低成本高可靠的SPIFLASH芯片实现方法及系统,造价成本低廉、可靠性高;可适用于特殊的工作场景,通用性强。
附图说明
图1为本发明提供的低成本高可靠的SPI FLASH芯片实现方法一实施例的流程示意图;
图2为图1中所示的控制投票表决控制模块将写过来的数据拷贝到多片民用级SPIFLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据的步骤一实施例的细化流程示意图;
图3为图2中所示的发出enable信号控制投票表决控制模块的工作模式的步骤一实施例的细化流程示意图;
图4为本发明提供的低成本高可靠的SPI FLASH芯片实现系统一实施例的功能框图;
图5为图4中所示的SPI控制器一实施例的功能模块示意图;
图6为图5中所示的第一控制单元一实施例的功能模块示意图;
图7为图6中所示的控制子单元一实施例的功能模块示意图;
图8为本发明提供的低成本高可靠的SPI FLASH芯片实现系统一实施例的应用示意图。
附图标号说明:
10、SPI控制器;20、投票表决控制模块;30、校验码纠检错模块;11、通信传输单元;12、第一控制单元;13、第二控制单元;121、控制子单元;122、接收子单元;1211、第一工作模式切换子单元;1212、第二工作模式切换子单元。
具体实施方式
为了更好的理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案做详细的说明。
如图1所示,本发明第一实施例提出一种低成本高可靠的SPI FLASH芯片实现方法,应用于SPI控制器中,包括以下步骤:
步骤S100、将写过来的数据发送给投票表决控制模块。
SPI控制器接收SOC或FPGA产品传输的数据,并将该数据发送给投票表决控制模块,该数据用于写过来拷贝到多片民用级SPI FLASH芯片中。
步骤S200、控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据。
SPI控制器控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据。
投票表决控制模块和校验码纠检错模块为两种降低单粒子翻转事件概率的模块,假设从第一民用级SPI FLASH芯片读到的数据为A,从第二民用级SPI FLASH芯片读到的数据为B、从第三民用级SPI FLASH芯片读到的数据为C,数据A、数据B和数据C均为二进制数据,则将从不同民用级SPI FLASH芯片读到的数据两两之间做与运算,并将最后的结果之间做或运算,即对数据A、数据B和数据C的计算为先“与”后“或”,用公式表达最终输出的数据result为:
步骤S300、控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性。
SPI控制器控制校验码纠检错模块对写入多片民用级SPI FLASH芯片的数据加上校检码后进一步对投票表决后的数据进行检错纠错,并将校验码纠检错模块传送的检错纠错后的数据回传给SOC或FPGA系统。若数据发生错误,可以一定程度上进行纠错;若无法纠错数据,则告诉系统该数据已损坏。
在公式(3)中,表示经过投票表决控制模块的投票表决和校验码纠检错模块的纠检错后最终数据出错的概率,即投票表决控制模块和所述校验码纠检错模块共同生效时可达到降低单粒子翻转事件发生概率的能力 ;为单个民用级SPI FLASH芯片数据出错的概率,为单单经过校验码纠检错模块纠检错后的错误概率,即校验码纠检错模块单独生效时可达到降低单粒子翻转事件发生概率的能力。其中,航天领域一般要求抗辐照器件(例如宇航级SPI FLASH芯片)的可靠性指标之一--抗单粒子翻转(SEU,SingleEvent Upset)概率小于10-5次/天。而民用领域的抗辐照器件(例如民用级SPI FLASH芯片)的可靠性指标之一--抗单粒子翻转(SEU,Single Event Upset)概率大于10-5次/天。
本实施例提供的低成本高可靠的SPI FLASH芯片实现方法,通过将写过来的数据发送给投票表决控制模块;控制投票表决控制模块将写过来的数据拷贝到多片民用级SPIFLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据;控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性。本实施例提供的低成本高可靠的SPI FLASH芯片实现方法,造价成本低廉、可靠性高;可适用于特殊的工作场景,通用性强。
进一步地,请见图2,图2为图1中所示的步骤S200一实施例的细化流程示意图,在本实施例中,步骤S200包括:
步骤S210、发出enable信号控制投票表决控制模块的工作模式。
SPI控制器发出enable信号,通过enable信号来控制投票表决控制模块的工作模式。工作模式包括bypass模式和正常工作模式。
步骤S220、读操作的时候,接收投票表决控制模块回传的投票表决运算,投票表决运算由投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出。
SPI控制器在投票表决控制模块读操作的时候,接收投票表决控制模块回传的投票表决运算,该投票表决运算由投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出,旨在选出正确可靠的数据。
本实施例提供的低成本高可靠的SPI FLASH芯片实现方法,通过发出enable信号控制投票表决控制模块的工作模式;读操作的时候,接收投票表决控制模块回传的投票表决运算,该投票表决运算由投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出。本实施例提供的低成本高可靠的SPI FLASH芯片实现方法,造价成本低廉、可靠性高;可适用于特殊的工作场景,通用性强。
优选地,参见图3,图3为图2中所示的步骤S210一实施例的细化流程示意图,在本实施例中,步骤S210包括:
步骤S211、向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制投票表决控制模块工作在bypass模式,控制投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信。
SPI控制器向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制投票表决控制模块工作在bypass模式,在bypass模式下SPI控制器控制投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信。
步骤S212、向投票表决控制模块发出enable信号,当enable信号拉高时,则控制投票表决控制模块工作在正常工作模式,控制投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。
SPI控制器向投票表决控制模块发出enable信号,当enable信号拉高时,则控制投票表决控制模块工作在正常工作模式,在正常工作模式SPI控制器控制投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。
本实施例提供的低成本高可靠的SPI FLASH芯片实现方法,通过向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制投票表决控制模块工作在bypass模式,控制投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信;向投票表决控制模块发出enable信号,当enable信号拉高时,则控制投票表决控制模块工作在正常工作模式,控制投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。本实施例提供的低成本高可靠的SPI FLASH芯片实现方法,造价成本低廉、可靠性高;可适用于特殊的工作场景,通用性强。
请见图4和图5,图4为本发明提供的低成本高可靠的SPI FLASH芯片实现系统一实施例的功能框图,在本实施例中,该低成本高可靠的SPI FLASH芯片实现系统包括SPI控制器10、投票表决控制模块20和校验码纠检错模块30,其中,SPI控制器10包括通信传输单元11、第一控制单元12和第二控制单元13,其中,通信传输单元11,用于将写过来的数据发送给投票表决控制模块;第一控制单元12,用于控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据;第二控制单元13,用于控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性。
通信传输单元11接收SOC或FPGA产品传输的数据,并将该数据发送给投票表决控制模块,该数据用于写过来拷贝到多片民用级SPI FLASH芯片中。
第一控制单元12控制投票表决控制模块将写过来的数据拷贝到多片民用级SPIFLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据。
假设从第一民用级SPI FLASH芯片读到的数据为A,从第二民用级SPI FLASH芯片读到的数据为B、从第三民用级SPI FLASH芯片读到的数据为C,则将从不同民用级SPIFLASH芯片读到的数据两两之间做与运算,并将最后的结果之间做或运算,用公式表达最终输出的数据result为:
第二控制单元13控制校验码纠检错模块对写入多片民用级SPI FLASH芯片的数据加上校检码后进一步对投票表决后的数据进行检错纠错,并将校验码纠检错模块传送的检错纠错后的数据回传给SOC或FPGA系统。若数据发生错误,可以一定程度上进行纠错;若无法纠错数据,则告诉系统该数据已损坏。
本实施例提供的低成本高可靠的SPI FLASH芯片实现系统,通过将写过来的数据发送给投票表决控制模块;控制投票表决控制模块将写过来的数据拷贝到多片民用级SPIFLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据;控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性。本实施例提供的低成本高可靠的SPI FLASH芯片实现系统,造价成本低廉、可靠性高;可适用于特殊的工作场景,通用性强。
进一步地,请见图6,图6为图5中所示的第一控制单元一实施例的功能模块示意图,在本实施例中,第一控制单元12包括控制子单元121和接收子单元122,其中,控制子单元121,用于发出enable信号控制投票表决控制模块的工作模式;接收子单元122,用于读操作的时候,接收投票表决控制模块回传的投票表决运算,投票表决运算由投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出。
控制子单元121发出enable信号,通过enable信号来控制投票表决控制模块的工作模式。工作模式包括bypass模式和正常工作模式。
接收子单元122在投票表决控制模块读操作的时候,接收投票表决控制模块回传的投票表决运算,该投票表决运算由投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出,旨在选出正确可靠的数据。
本实施例提供的低成本高可靠的SPI FLASH芯片实现系统,通过发出enable信号控制投票表决控制模块的工作模式;读操作的时候,接收投票表决控制模块回传的投票表决运算,该投票表决运算由投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出。本实施例提供的低成本高可靠的SPI FLASH芯片实现系统,造价成本低廉、可靠性高;可适用于特殊的工作场景,通用性强。
优选地,参见图7,图7为图6中所示的控制子单元一实施例的功能模块示意图,在本实施例中,控制子单元121包括第一工作模式切换子单元1211和第二工作模式切换子单元1212,其中,第一工作模式切换子单元1211,向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制投票表决控制模块工作在bypass模式,控制投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信;第二工作模式切换子单元1212,用于向投票表决控制模块发出enable信号,当enable信号拉高时,则控制投票表决控制模块工作在正常工作模式,控制投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。
第一工作模式切换子单元1211向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制投票表决控制模块工作在bypass模式,在bypass模式下SPI控制器控制投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信。
第二工作模式切换子单元1212向投票表决控制模块发出enable信号,当enable信号拉高时,则控制投票表决控制模块工作在正常工作模式,在正常工作模式SPI控制器控制投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。
本实施例提供的低成本高可靠的SPI FLASH芯片实现系统,通过向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制投票表决控制模块工作在bypass模式,控制投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信;向投票表决控制模块发出enable信号,当enable信号拉高时,则控制投票表决控制模块工作在正常工作模式,控制投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。本实施例提供的低成本高可靠的SPI FLASH芯片实现系统,造价成本低廉、可靠性高;可适用于特殊的工作场景,通用性强。
下面以一个SoC系统为例,其组成结构如图8所示。当CPU发出指令向民用级SPIFLASH芯片写入4位二进制数据1001,编码模块中配置编码多项式为1101,根据BCH编码方式:
假设写入过程没有出错,那么经过校验码纠检错模块中的编码模块编码后输出的数据则为1001*1101,即为0110 0101。该数据将被复制为三份后分别写入三个民用级SPIFLASH芯片中。
当CPU读取这份数据时,假设其中一个民用级SPI FLASH芯片中存储的数据发生了翻转错误,从0110 0101变为1110 0101。在三份数据通过投票表决控制模块20时,根据公式7的计算过程,投票表决控制模块20将会将翻转的一位数据纠正过来,最终输出为正确的数据0110 0101。
假设数据在传输的过程中发生了翻转错误,从0110 0101变为0110 0111,那么当数据经过校验码纠检错模块30时,校验码纠检错模块30会把该结果与配置的编码多项式1101相除,得到的余项为0111 0000。根据在校验码纠检错模块30中配置好的查找表:
以上设计可以用与确保在特殊环境下写入和读取民用级SPI FLASH芯片的数据不会出错。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种低成本高可靠的SPI FLASH芯片实现方法,应用于SPI控制器中,其特征在于,包括以下步骤:
将写过来的数据发送给投票表决控制模块;
控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据;
控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性。
2.如权利要求1所述的低成本高可靠的SPI FLASH芯片实现方法,其特征在于,所述控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据的步骤包括:
发出enable信号控制所述投票表决控制模块的工作模式;
读操作的时候,接收所述投票表决控制模块回传的投票表决运算,所述投票表决运算由所述投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出。
3.如权利要求2所述的低成本高可靠的SPI FLASH芯片实现方法,其特征在于,所述工作模式包括bypass模式和正常工作模式,所述发出enable信号控制投票表决控制模块的工作模式的步骤包括:
向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制所述投票表决控制模块工作在bypass模式,即所述投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信;
向投票表决控制模块发出enable信号,当enable信号拉高时,则控制所述投票表决控制模块工作在正常工作模式,将所述投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。
4.如权利要求1所述的低成本高可靠的SPI FLASH芯片实现方法,其特征在于,所述民用级SPI FLASH芯片包括第一民用级SPI FLASH芯片、第二民用级SPI FLASH芯片和第三民用级SPI FLASH芯片,所述控制投票表决控制模块将写过来的数据拷贝到多片民用级SPIFLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据的步骤中,假设从第一民用级SPI FLASH芯片读到的数据为A,从第二民用级SPI FLASH芯片读到的数据为B、从第三民用级SPI FLASH芯片读到的数据为C,则将从不同民用级SPI FLASH芯片读到的数据两两之间做与运算,并将最后的结果之间做或运算,用公式表达最终输出的数据result为:
5.如权利要求4所述的低成本高可靠的SPI FLASH芯片实现方法,其特征在于,所述控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPI FLASH芯片的可靠性的步骤中,假设单单经过所述校验码纠检错模块纠检错后的错误概率,即所述校验码纠检错模块单独生效时可达到降低单粒子翻转事件发生概率的能力为,则经过所述投票表决控制模块的投票表决和所述校验码纠检错模块的纠检错后,最终数据出错的概率为:
6.一种低成本高可靠的SPI FLASH芯片实现系统,其特征在于,包括SPI控制器(10)、投票表决控制模块(20)和校验码纠检错模块(30),其中,所述SPI控制器(10)包括:
通信传输单元(11),用于将写过来的数据发送给投票表决控制模块;
第一控制单元(12),用于控制投票表决控制模块将写过来的数据拷贝到多片民用级SPI FLASH芯片中,并控制投票表决控制模块读出多片民用级SPI FLASH芯片写入的数据,对读出的数据进行投票表决以选出正确可靠的数据;
第二控制单元(13),用于控制校验码纠检错模块对写入的数据加上校检码后进一步对投票表决后的数据进行检错纠错,使多片民用级SPI FLASH芯片达到军品级或宇航级SPIFLASH芯片的可靠性。
7.如权利要求6所述的低成本高可靠的SPI FLASH芯片实现系统,其特征在于,所述第一控制单元(12)包括:
控制子单元(121),用于发出enable信号控制所述投票表决控制模块的工作模式;
接收子单元(122),用于读操作的时候,接收所述投票表决控制模块回传的投票表决运算,所述投票表决运算由所述投票表决控制模块从各个民用级SPI FLASH读出的数据中进行投票表决得出。
8.如权利要求7所述的低成本高可靠的SPI FLASH芯片实现系统,其特征在于,所述控制子单元(121)包括:
第一工作模式切换子单元(1211),向投票表决控制模块发出enable信号,当enable信号被拉低时,则控制所述投票表决控制模块工作在bypass模式,即所述投票表决控制模块只跟一个民用级SPI FLASH芯片发生数据通信;
第二工作模式切换子单元(1212),用于向投票表决控制模块发出enable信号,当enable信号拉高时,则控制所述投票表决控制模块工作在正常工作模式,将所述投票表决控制模块将写入的数据拷贝到所有的民用级SPI FLASH芯片中。
9.如权利要求6所述的低成本高可靠的SPI FLASH芯片实现系统,其特征在于,所述第一控制单元(12)中,假设从第一民用级SPI FLASH芯片读到的数据为A,从第二民用级SPIFLASH芯片读到的数据为B、从第三民用级SPI FLASH芯片读到的数据为C,则将从不同民用级SPI FLASH芯片读到的数据两两之间做与运算,并将最后的结果之间做或运算,用公式表达最终输出的数据result为:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210631914.2A CN114706538B (zh) | 2022-06-07 | 2022-06-07 | 低成本高可靠的spi flash芯片实现方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210631914.2A CN114706538B (zh) | 2022-06-07 | 2022-06-07 | 低成本高可靠的spi flash芯片实现方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114706538A true CN114706538A (zh) | 2022-07-05 |
CN114706538B CN114706538B (zh) | 2022-10-04 |
Family
ID=82178087
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210631914.2A Active CN114706538B (zh) | 2022-06-07 | 2022-06-07 | 低成本高可靠的spi flash芯片实现方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114706538B (zh) |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182305A (zh) * | 2014-08-28 | 2014-12-03 | 上海航天电子通讯设备研究所 | 三模冗余控制和数据管理计算机及其使用方法 |
CN106936426A (zh) * | 2016-12-29 | 2017-07-07 | 北京时代民芯科技有限公司 | 一种基于锁相环的三模冗余抗辐射加固时钟生成电路 |
CN106970857A (zh) * | 2017-02-09 | 2017-07-21 | 上海航天控制技术研究所 | 一种可重构三冗余计算机系统及其重构降级方法 |
CN107710325A (zh) * | 2015-12-31 | 2018-02-16 | 京微雅格(北京)科技有限公司 | 一种fpga电路和其配置文件处理方法 |
US20190081639A1 (en) * | 2017-09-13 | 2019-03-14 | Toshiba Memory Corporation | Optimal LDPC Bit Flip Decision |
CN211293916U (zh) * | 2020-01-03 | 2020-08-18 | 长沙湘计海盾科技有限公司 | 数据存储记录装置及航电系统数据采集与存储记录装置 |
CN111651118A (zh) * | 2020-04-27 | 2020-09-11 | 中国科学院微电子研究所 | 存储器系统、控制方法和控制装置 |
CN113051109A (zh) * | 2021-03-29 | 2021-06-29 | 上海航天测控通信研究所 | 一种高可靠、低误码率的星载存储系统 |
CN113608720A (zh) * | 2021-07-23 | 2021-11-05 | 中国电子科技集团公司第三十研究所 | 一种抗单粒子翻转的星载数据处理系统及方法 |
-
2022
- 2022-06-07 CN CN202210631914.2A patent/CN114706538B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104182305A (zh) * | 2014-08-28 | 2014-12-03 | 上海航天电子通讯设备研究所 | 三模冗余控制和数据管理计算机及其使用方法 |
CN107710325A (zh) * | 2015-12-31 | 2018-02-16 | 京微雅格(北京)科技有限公司 | 一种fpga电路和其配置文件处理方法 |
CN106936426A (zh) * | 2016-12-29 | 2017-07-07 | 北京时代民芯科技有限公司 | 一种基于锁相环的三模冗余抗辐射加固时钟生成电路 |
CN106970857A (zh) * | 2017-02-09 | 2017-07-21 | 上海航天控制技术研究所 | 一种可重构三冗余计算机系统及其重构降级方法 |
US20190081639A1 (en) * | 2017-09-13 | 2019-03-14 | Toshiba Memory Corporation | Optimal LDPC Bit Flip Decision |
CN211293916U (zh) * | 2020-01-03 | 2020-08-18 | 长沙湘计海盾科技有限公司 | 数据存储记录装置及航电系统数据采集与存储记录装置 |
CN111651118A (zh) * | 2020-04-27 | 2020-09-11 | 中国科学院微电子研究所 | 存储器系统、控制方法和控制装置 |
CN113051109A (zh) * | 2021-03-29 | 2021-06-29 | 上海航天测控通信研究所 | 一种高可靠、低误码率的星载存储系统 |
CN113608720A (zh) * | 2021-07-23 | 2021-11-05 | 中国电子科技集团公司第三十研究所 | 一种抗单粒子翻转的星载数据处理系统及方法 |
Non-Patent Citations (1)
Title |
---|
胡虎护弧呼: "【举例子详细分析】BCH码(BCH code)", 《HTTPS://ZHUANLAN.ZHIHU.COM/P/95909150》 * |
Also Published As
Publication number | Publication date |
---|---|
CN114706538B (zh) | 2022-10-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN100409193C (zh) | 非易失性存储器装置和数据处理系统 | |
CN102567134B (zh) | 存储器模块的错误检查与校正系统以及方法 | |
US10884848B2 (en) | Memory device, memory system including the same and operation method of the memory system | |
US20030208704A1 (en) | High integrity recovery from multi-bit data failures | |
US8238244B2 (en) | Packet deconstruction/reconstruction and link-control | |
KR102688423B1 (ko) | 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법 | |
US20200074287A1 (en) | Fault detectable and tolerant neural network | |
US7904796B2 (en) | Serial data communication—CAN memory error detection methods | |
US20210034457A1 (en) | Memory systems and writing methods of the memory systems | |
CN111459712A (zh) | Sram型fpga单粒子翻转纠错方法及单粒子翻转纠错电路 | |
US8234461B2 (en) | Systems and method for data survivability | |
CN112927748A (zh) | 存储系统、集成电路系统以及存储系统的操作方法 | |
CN114706538B (zh) | 低成本高可靠的spi flash芯片实现方法及系统 | |
US20200142772A1 (en) | Memory system, memory module, and operation method of memory system | |
CN114337915A (zh) | 基于串行通讯的私有协议容错处理方法、装置及存储介质 | |
CN111863107B (zh) | 闪存纠错方法及装置 | |
KR102688433B1 (ko) | 메모리 장치, 이를 포함하는 메모리 시스템 및 메모리 시스템의 동작 방법 | |
CN116543825A (zh) | 一种编码纠错的抗辐照数据补偿存储加固系统 | |
CN111625481A (zh) | 一种防止闪存比特错误放大的方法和装置以及设备 | |
EP3882774B1 (en) | Data processing device | |
CN115297071B (zh) | 一种arinc664交换机交换引擎对seu和mbu容错设计方法 | |
CN111680000A (zh) | 现场可编程逻辑门阵列的配置系统和方法 | |
CN114116324A (zh) | 数据传输电路和存储器 | |
CN110795274A (zh) | 一种抗单粒子翻转的遥测数据存取方法及系统 | |
CN113037507B (zh) | 具有错误侦测功能的智能网卡系统及错误侦测方法 |
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 |