CN110111826B - 一种航天器使用sram型fpga双口ram抗单粒子翻转加固装置 - Google Patents

一种航天器使用sram型fpga双口ram抗单粒子翻转加固装置 Download PDF

Info

Publication number
CN110111826B
CN110111826B CN201910305781.8A CN201910305781A CN110111826B CN 110111826 B CN110111826 B CN 110111826B CN 201910305781 A CN201910305781 A CN 201910305781A CN 110111826 B CN110111826 B CN 110111826B
Authority
CN
China
Prior art keywords
port
dual
port ram
address
ram module
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
CN201910305781.8A
Other languages
English (en)
Other versions
CN110111826A (zh
Inventor
冯国平
徐勇
周东
曾连连
庞波
韩庆龙
陶涛
张溢
牛跃华
李柯
汪路元
禹霁阳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Spacecraft System Engineering
Original Assignee
Beijing Institute of Spacecraft System Engineering
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 Beijing Institute of Spacecraft System Engineering filed Critical Beijing Institute of Spacecraft System Engineering
Priority to CN201910305781.8A priority Critical patent/CN110111826B/zh
Publication of CN110111826A publication Critical patent/CN110111826A/zh
Application granted granted Critical
Publication of CN110111826B publication Critical patent/CN110111826B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/41Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming static cells with positive feedback, i.e. cells not needing refreshing or charge regeneration, e.g. bistable multivibrator or Schmitt trigger
    • G11C11/413Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing, timing or power reduction

Abstract

本发明涉及一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置,属于航天电子技术领域。该抗单粒子翻转加固装置包括双口RAM模块和仲裁刷新器,所述双口RAM模块包括两套完全独立的端口,分别为第一端口和第二端口,每个端口包括数据线、地址线、读使能控制线和写使能控制线;其中,用户数据通过第一端口写入和读出双口RAM模块;仲裁刷新器在不影响用户访问数据的情况下,通过第二端口将双口RAM模块中存储的用户数据读取出来后再次写入双口RAM,从而刷新双口RAM。本发明解决了在航天器SRAM型FPGA内部BlockRAM抗单粒子翻转加固的难题。

Description

一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置
技术领域
本发明属于航天电子技术领域,涉及一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置。
背景技术
SRAM型FPGA在航天器电子系统设计中广泛使用。目前,传统SRAM型FPGA的抗辐照加固采用三模冗余加刷新(Scrubbing)的机制进行可靠性提升,。例如:
“航天用SRAM型FPGA抗单粒子翻转设计”(航天器环境工程第28卷第6期2011年12月)一文中提出了对该类芯片的配置逻辑部分采用回读比较后刷新,对其SRAM部分采用通用自纠错宏的抗单粒子翻转设计方案。这种方案是通过内部BlockRAM三模冗余实现。
专利CN201610939803.2名称为一种基于SRAM型FPGA的RAM数据可靠性加固装置及方法,描述了用Hsiao码作为纠错码实现EDAC电路的编解码操作,采用缓存方式实现错误数据纠正后的回写,将处理器或外设访问双口RAM的写地址和写数据暂存于地址缓存和数据缓存中,然后对缓存中的数据进行三区二表决处理。
但是,三模冗余方法存在如下缺点:
首先,对FPGA内部BlockRAM做三模冗余开销巨大,占用比较多的额外存储资源且实时处理性不强;而且,长期的翻转累积也增加了三模中两模翻转导致数据错误的可能性;
其次,刷新机制仅对FPGA内部除了BlockRAM及RAM互联之外的资源刷新,无法覆盖BlockRAM。因此,当在轨长期不变RAM区数据发生单粒子翻转时,刷新机制无法修正。
因此,对于长期重要数据存储的BlockRAM还缺乏有效的抗单粒子翻转手段。
发明内容
本发明的技术解决问题是:克服现有技术的不足,设计了一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置,解决在航天器SRAM型FPGA内部BlockRAM抗单粒子翻转加固的难题。
本发明的技术解决方案是:一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置,该装置包括双口RAM模块和仲裁刷新器,所述双口RAM模块包括两套完全独立的端口,分别为第一端口和第二端口,每个端口包括数据线、地址线、读使能控制线和写使能控制线;其中,用户数据通过第一端口写入和读出双口RAM模块;仲裁刷新器在不影响用户访问数据的情况下,通过第二端口将双口RAM模块中存储的用户数据读取出来后再次写入双口RAM,从而刷新双口RAM。
所述数据为经过EDAC编码的数据。
所述抗单粒子翻转加固装置还包括第一EDAC编码器和第一EDAC解码器;
第一EDAC编码器,将外部输入的原始数据进行编码,通过双口RAM模块的第一端口将编码后的数据输入至双口存储器;
第一EDAC解码器,将双口RAM模块第一端口输出的编码后数据进行解码和纠错处理,得到原始数据输出。
所述仲裁刷新器在不影响用户访问数据的情况下,通过第二端口将双口RAM模块中存储的用户数据进行相应的EDAC解码和编码后,再次写入双口RAM,从而刷新双口RAM。
所述仲裁刷新器包括写入仲裁器、刷新地址发生器、第二EDAC编码器、第二EDAC解码器;其中:
刷新地址发生器,在每个控制周期,根据写入仲裁器输出的刷新控制信号的状态,生成双口RAM模块第二端口地址线上的刷新地址,当刷新控制信号为“不刷新”时,保持双口RAM模块第二端口地址线上的刷新地址不变;当刷新控制信号为“刷新”时,更新双口RAM模块第二端口地址线上的刷新地址;
写入仲裁器,在每个控制周期,首先,控制双口RAM模块第二端口的写使能无效,待第二EDAC编码器完成编码后,判断当前时刻双口RAM模块第一端口地址线上的地址与第二端口地址线上的刷新地址是否相同,如果相同,则认为当前第一端口和第二端口地址冲突,将刷新控制信号置为“不刷新”状态;否则,将刷新控制信号置为“刷新”状态,控制双口RAM模块第二端口的写使能有效,将第二EDAC编码输出的数据写入双口RAM中;
第二EDAC解码器,通过双口RAM模块的第二端口读出刷新地址对应的数据,进行解码,将解码后的数据发送给EDAC编码器;
第二EDAC编码器,将收到的数据进行编码,将编码后的数据通过双口RAM的第二端口数据线输出至双口存储器。
所述双口RAM模块采用FPGA内部BlockRAM存储器实现。
刷新地址控制器通过将地址0到地址L-1无限循环累加的方式刷新地址,所述L为双口RAM存储深度。
所述双口RAM的数据宽度为n+k,其中n为原始数据宽度,k为EDAC编码校验位位宽。
所述EDAC编码采用汉明码、BCH码对数据进行编码。
所述第二EDAC编码器的编码方式与双口RAM模块中存储的EDAC编码数据编码方式相同。
本发明与现有技术相比的优点在于:
(1)、本发明利用FPGA双口RAM的两个独立端口中的一个作为刷新端口,配合写入仲裁模块,做到另外一个端口完全无影响的情况下完成刷新处理,解决了在航天器SRAM型FPGA内部BlockRAM抗单粒子翻转加固的难题;
(2)、本发明相对于BlockRAM做三模冗余的方案,减少了存储器开销一半以上;
(3)、本发明采取EDAC编解码方法实现SRAM型FPGA对双口RAM的实时不间断刷新处理,即节约了内部资源,又有效提高抗单粒子能力。
(4)、本发明双口RAM中的数据选取EDAC编码方法进行编码和译码,所述仲裁刷新器对双口RAM内部数据在线进行不间断地EDAC纠错刷新,避免了传统三模冗余方案中单粒子翻转随时间累积导致数据两模出错的风险。
附图说明
图1为本发明实施例的整体框图。
具体实施方式
以下结合附图和具体实施例对本发明进行详细说明。
如图1所示,本发明提供的一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置包括双口RAM模块、第一EDAC编码器、第一EDAC解码器和仲裁刷新器。
1、双口RAM模块作为物理数据存储器
双口RAM模块包括两套完全独立的端口,分别为第一端口和第二端口,每个端口包括数据线、地址线、读使能控制线和写使能控制线;其中,用户数据通过第一端口写入和读出双口RAM模块中;仲裁刷新器在不影响用户写入数据的情况下,通过第二端口将双口RAM模块中存储的用户数据读取出来后再次写入双口RAM,从而刷新双口RAM。
双口存储器采用FPGA内部BlockRAM存储器实现,BlockRAM存储器具有两个读写端口,用于存储EDAC编码后的数据,假设对外位宽为n,编码校验位位宽为k,那么该存储器位宽即为n+k,存储深度根据用户需求而定,即为L(地址范围为0~(L-1))。
2、第一EDAC编码器
第一EDAC编码器将外部输入的原始数据进行编码,通过双口RAM模块的第一端口将编码后的数据输入至双口存储器。
EDAC编码器定义了RAM内存储数据的编码方式,一般推荐采用汉明码进行编码,信息位为n位,校验位为k位,用以纠错特定位的误码;它将输入的n位用户数据进行编码,得到n+k位的编码后数据。
所述EDAC编码可以采用汉明码、BCH码对数据进行编码。
3、第一EDAC解码器
第一EDAC解码器,将双口RAM模块第一端口输出的编码后数据进行解码和纠错处理,得到原始数据输出。
EDAC解码器定义了RAM内存储数据的EDAC解码方式。解码方式与相应的EDAC编码所采用的编码方式对应。信息位为n位,校验位为k位;它将输入的n+k位的编码后数据进行解码,如有误码则修正误码,得到n位用户数据。EDAC解码器用于内部刷新纠错口的数据读出纠错;也用于外部用户口的数据读出后的纠错。
4、仲裁刷新器
所述仲裁刷新器在不影响用户写入数据的情况下,通过第二端口将双口RAM模块中存储的用户数据进行相应的EDAC解码和编码后,再次写入双口RAM,从而刷新双口RAM。
所述仲裁刷新器包括写入仲裁器、刷新地址发生器、第二EDAC编码器、第二EDAC解码器。
(1)刷新地址发生器
刷新地址发生器在每个控制周期,根据写入仲裁器输出的刷新控制信号的状态,生成双口RAM模块第二端口地址线上的刷新地址,当刷新控制信号为“不刷新”时,保持双口RAM模块第二端口地址线上的刷新地址不变,防止改变用户数据内容;当刷新控制信号为“刷新”时,更新双口RAM模块第二端口地址线上的刷新地址。
刷新地址发生器产生从地址0到地址L-1的读、解码、编码、写入控制时序,上电后通过将地址0到地址L-1无限循环累加的方式产生刷新地址,对每一地址的数据读出,解码、编码并写回同一地址。所述L为双口RAM存储深度。
(2)写入仲裁器
写入仲裁器在每个控制周期,首先,控制双口RAM模块第二端口的写使能无效,待第二EDAC编码器完成编码后,判断当前时刻双口RAM模块第一端口地址线上的地址与第二端口地址线上的刷新地址是否相同,如果相同,则认为当前第一端口和第二端口地址冲突,将刷新控制信号置为“不刷新”状态;否则,将刷新控制信号置为“刷新”状态,控制双口RAM模块第二端口的写使能有效,将第二EDAC编码输出的数据写入双口RAM中。
(3)第二EDAC解码器
第二EDAC解码器通过双口RAM模块的第二端口读出刷新地址对应的数据,进行解码,将解码后的数据发送给EDAC编码器;
(4)第二EDAC编码器
第二EDAC编码器将收到的数据进行编码,将编码后的数据通过双口RAM的第二端口数据线输出至双口存储器。所述第二EDAC编码器的编码方式与双口RAM模块中存储的EDAC编码数据编码方式相同。
写入仲裁器和刷新地址发生器定义了以用户端为有限的写入数据完整性保障;当用户要写入或者读出某地址数据时,如果内部刷新操作正好在对该地址进行刷新,则撤销本次刷新写入,下个控制周期再次读取该地址数据进行EDAC解码、编码并写入。
本发明利用双口RAM的一个端口作为内部刷新纠错接口。另外一个端口作为外部用户访问接口。在外部用户完全无影响的情况下就完成了RAM内的数据纠错刷新。而且刷新频率非常快,当发生单粒子翻转时,能够在1秒内纠错,不会发生单粒子翻转累积。同时作为Scrubbing技术无法覆盖BlockRAM区的缺陷的完善手段。
本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。

Claims (6)

1.一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置,其特征在于包括双口RAM模块、仲裁刷新器、第一EDAC编码器和第一EDAC解码器;所述双口RAM模块包括两套完全独立的端口,分别为第一端口和第二端口,每个端口包括数据线、地址线、读使能控制线和写使能控制线;其中,用户数据通过第一端口写入和读出双口RAM模块;仲裁刷新器在不影响用户访问数据的情况下,通过第二端口将双口RAM模块中存储的用户数据读取出来后再次写入双口RAM模块,从而刷新双口RAM模块;
所述数据为经过EDAC编码的数据;
第一EDAC编码器,将外部输入的原始数据进行编码,通过双口RAM模块的第一端口将编码后的数据输入至双口RAM模块;
第一EDAC解码器,将双口RAM模块第一端口输出的编码后数据进行解码和纠错处理,得到原始数据输出;
所述仲裁刷新器在不影响用户访问数据的情况下,通过第二端口将双口RAM模块中存储的用户数据进行相应的EDAC解码和编码后,再次写入双口RAM模块,从而刷新双口RAM模块;
所述仲裁刷新器包括写入仲裁器、刷新地址发生器、第二EDAC编码器、第二EDAC解码器;其中:
刷新地址发生器,在每个控制周期,根据写入仲裁器输出的刷新控制信号的状态,生成双口RAM模块第二端口地址线上的刷新地址,当刷新控制信号为“不刷新”时,保持双口RAM模块第二端口地址线上的刷新地址不变;当刷新控制信号为“刷新”时,更新双口RAM模块第二端口地址线上的刷新地址;
写入仲裁器,在每个控制周期,首先,控制双口RAM模块第二端口的写使能无效,待第二EDAC编码器完成编码后,判断当前时刻双口RAM模块第一端口地址线上的地址与第二端口地址线上的刷新地址是否相同,如果相同,则认为当前第一端口和第二端口地址冲突,将刷新控制信号置为“不刷新”状态;否则,将刷新控制信号置为“刷新”状态,控制双口RAM模块第二端口的写使能有效,将第二EDAC编码输出的数据写入双口RAM模块中;
第二EDAC解码器,通过双口RAM模块的第二端口读出刷新地址对应的数据,进行解码,将解码后的数据发送给EDAC编码器;
第二EDAC编码器,将收到的数据进行编码,将编码后的数据通过双口RAM模块的第二端口数据线输入至双口RAM模块。
2.根据权利要求1所述的一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置,其特征在于所述双口RAM模块采用FPGA内部BlockRAM存储器实现。
3.根据权利要求1所述的一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置,其特征在于刷新地址控制器通过将地址0到地址L-1无限循环累加的方式刷新地址,所述L为双口RAM模块的存储深度。
4.根据权利要求1所述的一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置,其特征在于所述双口RAM模块的数据宽度为n+k,其中n为原始数据宽度,k为EDAC编码校验位位宽。
5.根据权利要求1所述的一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置,其特征在于所述EDAC编码采用汉明码、BCH码对数据进行编码。
6.根据权利要求1所述的一种航天器使用SRAM型FPGA双口RAM抗单粒子翻转加固装置,其特征在于所述第二EDAC编码器的编码方式与双口RAM模块中存储的EDAC编码数据编码方式相同。
CN201910305781.8A 2019-04-16 2019-04-16 一种航天器使用sram型fpga双口ram抗单粒子翻转加固装置 Active CN110111826B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910305781.8A CN110111826B (zh) 2019-04-16 2019-04-16 一种航天器使用sram型fpga双口ram抗单粒子翻转加固装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910305781.8A CN110111826B (zh) 2019-04-16 2019-04-16 一种航天器使用sram型fpga双口ram抗单粒子翻转加固装置

Publications (2)

Publication Number Publication Date
CN110111826A CN110111826A (zh) 2019-08-09
CN110111826B true CN110111826B (zh) 2021-04-13

Family

ID=67485545

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910305781.8A Active CN110111826B (zh) 2019-04-16 2019-04-16 一种航天器使用sram型fpga双口ram抗单粒子翻转加固装置

Country Status (1)

Country Link
CN (1) CN110111826B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111694691B (zh) * 2020-06-10 2023-03-14 西安微电子技术研究所 一种纠检错后具有自动回写功能的sram电路及回写方法
CN111653306B (zh) * 2020-07-07 2022-08-26 中国人民解放军国防科技大学 用于单端口sram的微体系结构级通用加固装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7002867B2 (en) * 2002-09-25 2006-02-21 Infineon Technologies Aktiengesellschaft Refresh control circuit for ICs with a memory array
CN102298973B (zh) * 2011-06-02 2014-02-26 哈尔滨工业大学 抗辐射故障保护型存储装置及其抗辐射故障保护方法
CN103280242B (zh) * 2013-05-08 2016-02-17 中国人民解放军国防科学技术大学 适用于片上存储edac的可配置后台刷新方法
CN107291570B (zh) * 2017-06-23 2020-01-07 哈尔滨工业大学 基于Zynq-7000的片上存储器抗单粒子翻转防护方法

Also Published As

Publication number Publication date
CN110111826A (zh) 2019-08-09

Similar Documents

Publication Publication Date Title
US7458004B2 (en) Semiconductor storage device
JP4205396B2 (ja) 半導体集積回路装置
JP3892832B2 (ja) 半導体記憶装置
US7206891B2 (en) Multi-port memory controller having independent ECC encoders
KR101860809B1 (ko) 메모리 시스템 및 메모리 에러 정정 방법
US20060056258A1 (en) Semiconductor memory and method for operating the same
CN105340022A (zh) 用于校正数据错误的电路、设备及方法
TWI786707B (zh) 用於半導體記憶體的錯誤更正寫碼與資料匯流反轉的裝置與方法
CN110111826B (zh) 一种航天器使用sram型fpga双口ram抗单粒子翻转加固装置
CN103886916B (zh) 输入位宽可伸缩的编码/编解码存储系统
KR20170112630A (ko) 반도체장치 및 반도체시스템
CN115762597A (zh) 面向连续多位纠错码存储器的读写机制设计方法
CN110309014B (zh) 一种全行编解码sram编码器数据读写结构及数据读写方法
US11881277B2 (en) Memory device and operating method thereof
CN106531224B (zh) 一种基于sram型fpga的ram数据可靠性加固装置及方法
CN111694691B (zh) 一种纠检错后具有自动回写功能的sram电路及回写方法
JP4050091B2 (ja) 半導体メモリ装置
CN112068985B (zh) 带编程指令识别的norflash存储器ecc检纠错方法及系统
WO2020199492A1 (zh) 一种支持部分写的ecc内存及数据部分写入的方法
US11791846B2 (en) Decoder performing iterative decoding, and storage device using the same
JP2008192309A (ja) 半導体集積回路装置
WO2020199490A1 (zh) 一种双模式检错内存及双模式检错方法
CN211124024U (zh) 一种抗辐射加固存储器
US7817485B2 (en) Memory testing system and memory module thereof
US11921578B2 (en) Error correction methods and semiconductor devices and semiconductor systems using the error correction methods and the semiconductor devices

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