CN105760250A - 一种具有码流纠检错功能的单粒子加固fpga配置电路 - Google Patents

一种具有码流纠检错功能的单粒子加固fpga配置电路 Download PDF

Info

Publication number
CN105760250A
CN105760250A CN201610079915.5A CN201610079915A CN105760250A CN 105760250 A CN105760250 A CN 105760250A CN 201610079915 A CN201610079915 A CN 201610079915A CN 105760250 A CN105760250 A CN 105760250A
Authority
CN
China
Prior art keywords
configuration
memory array
circuit
code
configurable memory
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
Application number
CN201610079915.5A
Other languages
English (en)
Other versions
CN105760250B (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 Microelectronic Technology Institute
Mxtronics Corp
Original Assignee
Beijing Microelectronic Technology Institute
Mxtronics Corp
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 Microelectronic Technology Institute, Mxtronics Corp filed Critical Beijing Microelectronic Technology Institute
Priority to CN201610079915.5A priority Critical patent/CN105760250B/zh
Publication of CN105760250A publication Critical patent/CN105760250A/zh
Application granted granted Critical
Publication of CN105760250B publication Critical patent/CN105760250B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding 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/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/19Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Quality & Reliability (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Logic Circuits (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

一种具有码流纠检错功能的单粒子加固FPGA配置电路,包括总线接口电路、配置总线、配置寄存器、编码纠错电路、配置存储器阵列;总线接口电路解析配置比特码流得到配置寄存器地址、内部数据并通过配置总线送至对应配置寄存器,配置寄存器根据内部指令字进行读写、配置、纠错操作,编码纠错电路接收配置数据字后产生校验码,并送至配置存储器阵列,读取配置数据字、校验码并进行纠错,配置存储器阵列加载配置数据字及对应的校验码。本发明通过增加编码纠错电路,能够在配置完成后读取配置存储器阵列中配置数据字进行检错纠错,解决了SRAM型FPGA芯片在空间辐射环境中由于单粒子翻转容易引入逻辑错误的问题,具有较好的应用价值。

Description

一种具有码流纠检错功能的单粒子加固FPGA配置电路
技术领域
本发明涉及一种FPGA的配置电路,特别是一种具有码流纠检错功能的单粒子加固FPGA配置电路。
背景技术
如图1所示为现场可编程门阵列FPGA的结构,输入输出端口(IOB)位于芯片的四周,可配置逻辑模块(CLB)在内部按阵列排布,块存储器(BRAM)穿插在可配置逻辑模块(CLB)中,FPGA还包括配置逻辑、配置接口及其它组成部分,比如遍布整个FPGA芯片、连接各个模块的可编程互联结构和配置存储器阵列(CSRAM)。
SRAM型FPGA芯片在配置前不具备任何逻辑功能,是通过加载用户应用指定的配置数据进入内部的配置存储器阵列(CSRAM)来完成功能配置的,即配置存储器阵列(CSRAM)中的SRAM配置位来决定FPGA的具体功能。如图2(a)所示为FPGA芯片中配置存储器阵列CSRAM整体结构,芯片中心部分为一个“十字”的结构,作为配置存储器阵列的主体电路,横向部分是SRAM的阵列地址控制电路,纵向部分是数据控制电路,使得遍布整个FPGA芯片的每个SRAM单元都能收到配置电路的控制而正常工作。阵列中间横排位置的是地址移位寄存器(ASR),中间竖排位置的是数据移位寄存器(DSR),配置比特码流以“帧”为单位串行输入到数据移位寄存器(DSR)中,当一帧数据传满后,地址移位寄存器(ASR)就开启相应的帧地址,将配置比特码流写入配置SRAM中,之后再开始下一帧数据的传输,直至配置完成。如图2(b)所示为SRAM单元电路图,如图2(c)所示为SRAM单元符号图。
FPGA芯片在空间辐射环境应用时,空间高能粒子穿过FPGA内部会引起电路节点上的瞬间电流,使配置存储器阵列中的配置存储单元SRAM发生单粒子翻转,某些区域的电路会产生局部功能错误、互联线短路或断路,使该区域的电路无法正常工作,因此需要一种能够对配置存储器阵列进行检查并纠错的配置电路。
发明内容
本发明解决的技术问题是:克服现有技术的不足,提供了一种具有码流纠检错功能的单粒子加固FPGA配置电路,能够检测出空间辐射环境下配置存储器阵列中的SRAM存储单元由于单粒子翻转引入的逻辑错误并进行纠正。
本发明的技术解决方案是:一种具有码流纠检错功能的单粒子加固FPGA配置电路,包括总线接口电路、配置总线、多个结构完全相同的配置寄存器、编码纠错电路、配置存储器阵列,其中,
总线接口电路,获取配置比特码流后进行解析,得到配置寄存器地址、内部数据,根据配置寄存器地址将内部数据送至配置总线
配置总线,根据接收到的配置寄存器地址将内部数据送至对应配置寄存器;
配置寄存器,接收内部数据并判断,如果内部数据为配置存储器阵列写操作指令、配置存储器阵列的地址信息,则将接收到的下一配置存储字加载到配置存储器阵列的地址信息对应的配置存储器阵列配置帧中,如果内部数据包括配置存储器阵列读操作指令、配置存储器阵列的地址信息,则从配置存储器阵列的地址信息对应的配置存储器阵列配置帧中读取配置数据字,并写入到当前配置寄存器中,如果内部数据包括编码纠错指令、配置存储器阵列的地址信息,则将接收到的下一配置数据字配置存储字加载到编码纠错电路、配置存储器阵列的地址信息对应的配置存储器阵列配置帧中,如果内部数据为配置数据字,则将配置寄存字加载到配置存储器阵列的地址信息对应的配置存储器阵列配置帧中,或者加载到编码纠错电路、配置存储器阵列的地址信息对应的配置存储器阵列配置帧中;所述的内部数据包括配置存储器阵列写操作指令及配置存储器阵列的地址信息、配置存储器阵列读操作指令及配置存储器阵列的地址信息、编码纠错指令及配置存储器阵列的地址信息或配置数据字;
编码纠错电路,接收配置数据字后根据校验算法产生校验码,将校验码送至配置存储器阵列存储;从配置存储器阵列读取配置数据字、校验码,根据配置数据字、校验算法产生新的校验码,将新的校验码、校验码进行异或运算生成校正因子并判断,若为1位配置数据字发生翻转,输出单位错标志并根据校验因子对当前翻转位进行纠正,若为2位以上配置数据字发生翻转,产生并输出中断标志,重新加载配置寄存器中存储的配置数据字;
配置存储器阵列,加载配置数据字,接收并存储当前配置数据字的校验码。
所述的校验算法为海明编码运算。
所述的编码纠错电路包括第一寄存器、第二寄存器、第一校验码产生电路、校验码寄存器、第二新校验码产生电路;第一寄存器接收配置数据字后送至第一校验码产生电路,第一校验码产生电路接收配置校验字后根据校验算法产生校验码,将校验码送至配置存储器阵列存储,第二寄存器从配置存储器阵列读取配置数据字、校验码,将校验码送至校验码寄存器、配置数据字送至第二新校验码产生电路,第二新校验码产生电路接收配置校验字后根据校验算法产生新的校验码,将新的校验码送至校验码寄存器,校验码寄存器将存储的校验码、新校验码进行异或运算生成校正因子并判断,若为1位配置数据字发生翻转,输出单位错标志并对当前翻转位进行纠正,若为2位以上配置数据字发生翻转,产生并输出中断标志,重新加载配置寄存器中存储的配置数据字。
还包括通用接口电路、JTAG接口电路,其中,JTAG接口模块接收外部数据后进行转换得到总线接口电路能够识别的配置比特码流,并送至总线接口电路,通用接口电路接收外部数据后进行转换得到总线接口电路能够识别的配置比特码流,并送至总线接口电路。
所述的总线接口电路包括二选一多路器、转换器、包处理器、地址操作码译码器、字数计数器、三态缓冲器;二选一多路器,根据外部指令选择接收通用接口电路发送的配置比特码流或者JTAG接口电路发送的配置比特码流后送至转换器;转换器,对配置比特码流进行位宽转换后送至包处理器;包处理器,对位宽转换后的配置比特码流中的包头译码,解析得到内部数据、寄存器地址信息,将寄存器地址信息送至地址操作码译码器,将内部数据送至三态缓冲器;地址操作码译码器,进行译码得到寄存器地址后送至三态缓冲器,三态缓冲器根据配置寄存器地址将内部数据送至对应配置寄存器,字数计数器对送至配置寄存器的内部数据进行计数。
所述的配置比特码流为64位,内部数据位32位,配置数据字为32位,二选一多路器为64位,转换器为将64位数据转换为32位。
本发明与现有技术相比的优点在于:
(1)本发明配置电路与现有技术相比,通过增加编码纠错电路,能够在配置完成后读取配置存储器阵列中配置数据字进行检错,可以检测出32位配置数据字的1位错误和2位错误,同时能够纠错1位错误,较好的解决了FPGA芯片在空间辐射环境应用中容易发生翻转引入逻辑错误的问题;
(2)本发明配置电路通过将海明编码运算校验码引入到配置校验字中,克服了传统的配置电路中包含的CRC校验电路只能检测出比特码流是否有误而不能进行定位的缺陷,在定位错误比特位的同时,还能纠正错误比特位,具有较好的应用价值;
(3)本发明配置电路与现有技术相比,在不需要进行码流检错时,可以复位编码纠错电路,配置数据字直接通过配置寄存器写入配置存储器阵列,不需要经过编码纠错电路进行编码后再写入配置存储器阵列,具有很强的灵活性。
附图说明
图1为现场可编程门阵列FPGA的结构框图;
图2为FPGA芯片中配置存储器阵列CSRAM整体结构图、SRAM单元电路图、SRAM单元符号图;
图3为本发明一种具有码流纠检错功能的单粒子加固FPGA配置电路原理结构图;
图4为本发明配置电路中的编码纠错电路原理结构图。
具体实施方式
本发明针对现有技术的不足,克服了传统的FPGA配置电路中只能检测出码流传输时产生的错误、不能定位错误,也无法对错误进行纠正的缺陷,提出了一种具有码流纠检错功能的单粒子加固FPGA配置电路,下面结合附图对本发明配置电路进行详细说明。
如图3所示,本发明配置电路包括通用接口电路、JTAG接口电路、总线接口电路、配置总线、配置寄存器、编码纠错电路、配置状态机、配置存储器阵列,其中,总线接口电路连接配置总线、一个或多个外部通信接口电路(包括JTAG接口电路、通用接口电路),多个配置寄存器连接在配置总线和配置存储器阵列间,当进行配置时,总线接口电路对配置比特码流的包头译码,解析出地址信息选择相应的配置寄存器,并将随后的数据写入到对应配置寄存器,其中,写入到配置寄存器的字可能是命令字、配置存储器阵列的地址或者配置数据。
FPGA芯片中有两种外部通信接口电路,一个是JTAG接口电路,另外一个是通用接口电路,JTAG接口电路兼容IEEE1149.1标准定义,JTAG接口模块接收JTAG引脚TCK、TDI、TDO、TMS上的时钟、数据、命令信号转变为总线接口电路可处理的信号形式。JTAG引脚接收到JTAG信号后,为了完成JTAG指令和数据的提取,JTAG接口电路中包含一个TAP控制器,TAP控制器是一个有16个状态的有限状态机,在时钟信号TCK的上升沿通过命令信号TMS的变化可以控制TAP控制器状态的转移,在特定的状态即可将TDI引脚输入的JTAG指令及数据分别存入指令寄存器和数据寄存器中,指令寄存器接收TDI引脚输入的的串行命令数据,命令种类包含有:EXTEST命令(000000)用于芯片外部互连测试、CFG_OUT命令(000100)回读配置总线命令、CFG_IN命令(000101)写配置总线命令、INTEST命令(000111)用于芯片内部连接测试、HIGHZ(001010)使芯片所有输出引脚处于高阻状态、IDCODE(001001)将芯片ID码写入数据寄存器,并将接收到串行指令数据送到TDO引脚;数据寄存器包含64位的JTAG配置移位寄存器,JTAG配置移位寄存器可以通过总线接口电路访问配置总线完成FPGA的配置或回读操作。
通用接口电路接收配置时钟引脚信号CCLK,配置复位引脚信号/PROGRAM,模式选择引脚信号M0、M1、M2,数据引脚信号DATA,片选引脚信号/CS,写使能引脚信号/WRITE,码流校验状态引脚信号/INIT和配置状态引脚信号DONE,通用接口电路中包括64位的移位寄存器和控制电路,用于协调外部引脚信号和总线接口电路之间的数据传输。
总线接口电路包括64位的二选一多路器、64-32转换器、包处理器、地址操作码译码器、字数计数器和三态缓冲器,其中,64位的二选一多路器选择接收来自通用接口电路中的64位宽的配置比特码流还是JTAG接口电路中的64位宽的配置比特码流。当JTAG接口电路中边界扫描命令CFG_IN(写配置总线命令)有效时,该64位的二选一多路器选通来自JTAG接口电路的64位宽的配置比特码流,否则会选通来自通用接口电路的64位宽的配置比特码流,并输出到64-32转换器中。64-32转换器将来自外部通信接口电路的64位数据转换为32位的内部数据,并将32位的内部数据输出到包处理器、字数计数器和三态缓冲器中。包处理器对配置比特码流中的包头译码,解析出其中的地址信息和操作码信息送入地址操作码译码器中,根据地址操作码译码器的译码结果选择相应的配置寄存器,并将随后的32位内部数据经过三态缓冲器写入到该配置寄存器,字数计数器接收32位内部数据中的字数信息,控制写入配置寄存器中的字数。
写入到配置寄存器的字可能是命令字、配置存储器阵列的地址信息或者配置数据字。写入到配置寄存器的命令字产生全局信号控制对配置存储器阵列的读写操作及其他的配置操作如配置时钟选择、配置时钟频率更新、高阻可编程互连结构、启动或关闭用户逻辑、配置完成后的控制编码/纠错电路的使能、对编码/纠错电路复位、复位用户寄存器、发起捕获用户寄存器状态的动作等。写入到配置寄存器的地址信息负责寻址具体配置存储器阵列中配置帧,并将配置数据字加载到配置存储器阵列相应的帧中,或者是从配置存储器阵列相应的帧中读取数据写入到配置寄存器。
当进行纠检错时,编码/纠错电路接收来自配置寄存器的以32位为单位的配置数据字,经过内部的编码电路产生校验码,并将32位字及相应的校验码写入到配置存储器阵列中,这里校验码只作为用于检查及纠正错误用的冗余码,不会实际控制CLB、IOB或可编程互联资源。配置完成后编码/纠错电路根据配置寄存器中的配置控制命令可发起对配置存储器阵列的自动检查及纠错操作。由于宇航应用中的FPGA及容易受到高能粒子攻击,引起配置存储器阵列中的SRAM存储单元发生单粒子翻转(singleeventupset,SEU),即由逻辑“0”翻转为逻辑“1”或逻辑“1”翻转为逻辑“0”。本发明将编码/纠错电路加入到FPGA的配置电路中可避免或缓解这种错误的累积,提高系统的可靠性。
配置状态机主要是用来控制整个配置电路的工作时序。
编码/纠错电路可以采用不同的编码方式来实现抗SEU检错纠错。本发明采用的是扩展的海明码编码方式,这种编码方式是由R.Hamming在1950年提出来的,满足可以完成自动纠正一位错误,检测任意两位错的功能要求。它的实现原理是在原始的配置数据字中加入一些冗余的校验位,生成新的编码字,由于原始的配置数据字与冗余的校验位之间根据海明码编码原则建立特定的算法关联,检错电路之后会定期对存储的新编码字进行解码计算,如果被检查的数据发生了单粒子翻转错误,新解出的校验码与原本的校验码不同,经过异或电路对比会产生不同形态的校正因子,根据不同的校正因子形态来可显示错误的比特位,任何单比特错误的位置都可通过校正因子给以纠正。
本发明的编码/纠错电路如图4所示,包含两个32位寄存器,一个校验码产生电路,一个校验码寄存器、一个新校验码产生电路和纠错电路。第一个32位寄存器接收来自配置寄存器的32位配置数据字,并且输出到校验码产生电路的输入端,校验码产生电路经过海明编码运算产生这32位配置数据字的7位的校验位,并将32位的配置数据字和7位的校验位都存储到配置存储器阵列中;配置完成后,根据配置寄存器的命令信息可选择使能纠检错功能,从配置存储器阵列中读出配置数据字和校验位,校验码寄存器用于寄存读出的校验码,第二个32位寄存器用于寄存读出的配置数据字,根据中读出的配置数据字新校验码产生电路会生成新的7位校验位,新的7位校验位与校验码寄存器中寄存的校验位进行异或运算。如果读出的32位配置数据字没有任何一位发生单粒子翻转,新校验位将与原校验位一致,表明这32位存储数据是正确的。但是如果读出的32位配置数据字中有某些位发生了逻辑翻转,则产生的新校验位与原校验不同,这两种校验位进行异或运算生成校正因子,然后纠错电路根据校正因子的不同组合状态判断数据是否出错,如果发现1位错,输出单位错标志,并自动对错位取反纠正错误;如果发现2位错,产生中断标志,将码流校验状态引脚信号/INIT,用户可根据这个外部引脚的状态发起对FPGA的部分动态重配;如果没有错误,编码/纠错电路将顺序读出下一个32位配置数据字及其对应的7位校验码。
在配置寄存器中的命令信息控制下,可自动对整个配置存储器阵列进行顺序校验,检测出错误数据并纠正。配置寄存器可设置为自纠错状态,当配置寄存器阵列中某一SRAM存储单元被检测出单比特错误后,自动将正确配置数据字和校验码重新写入配置寄存器阵列中。通过本发明中的该功能,基本上可保证及时修复配置存储器阵列中的单粒子翻转。配置寄存器在这里起到的作用是启动编码/纠错电路的自检,并将错误中断信息传输给用户。
编码/纠错电路位于配置寄存器与配置存储器阵列之间,对配置存储器阵列中的数据进行保护。当配置寄存器中的命令信息要求进行对配置存储器阵列自检时,会使能编码/纠错电路对数据进行处理。配置寄存器中的命令信息可对编码/纠错电路进行使能控制,在系统复位时对编码/纠错电路中的32位寄存器写入1或0即可,不需要对配置存储器阵列进行码流检查和纠错时,配置寄存器中的配置数据字可直接写入配置存储器阵列,或者从配置存储器阵列读出配置数据字。
本发明说明书中未作详细描述的内容属本领域技术人员的公知技术。

Claims (6)

1.一种具有码流纠检错功能的单粒子加固FPGA配置电路,其特征在于包括总线接口电路、配置总线、多个结构完全相同的配置寄存器、编码纠错电路、配置存储器阵列,其中,
总线接口电路,获取配置比特码流后进行解析,得到配置寄存器地址、内部数据,根据配置寄存器地址将内部数据送至配置总线
配置总线,根据接收到的配置寄存器地址将内部数据送至对应配置寄存器;
配置寄存器,接收内部数据并判断,如果内部数据为配置存储器阵列写操作指令、配置存储器阵列的地址信息,则将接收到的下一配置存储字加载到配置存储器阵列的地址信息对应的配置存储器阵列配置帧中,如果内部数据包括配置存储器阵列读操作指令、配置存储器阵列的地址信息,则从配置存储器阵列的地址信息对应的配置存储器阵列配置帧中读取配置数据字,并写入到当前配置寄存器中,如果内部数据包括编码纠错指令、配置存储器阵列的地址信息,则将接收到的下一配置数据字配置存储字加载到编码纠错电路、配置存储器阵列的地址信息对应的配置存储器阵列配置帧中,如果内部数据为配置数据字,则将配置寄存字加载到配置存储器阵列的地址信息对应的配置存储器阵列配置帧中,或者加载到编码纠错电路、配置存储器阵列的地址信息对应的配置存储器阵列配置帧中;所述的内部数据包括配置存储器阵列写操作指令及配置存储器阵列的地址信息、配置存储器阵列读操作指令及配置存储器阵列的地址信息、编码纠错指令及配置存储器阵列的地址信息或配置数据字;
编码纠错电路,接收配置数据字后根据校验算法产生校验码,将校验码送至配置存储器阵列存储;从配置存储器阵列读取配置数据字、校验码,根据配置数据字、校验算法产生新的校验码,将新的校验码、校验码进行异或运算生成校正因子并判断,若为1位配置数据字发生翻转,输出单位错标志并根据校验因子对当前翻转位进行纠正,若为2位以上配置数据字发生翻转,产生并输出中断标志,重新加载配置寄存器中存储的配置数据字;
配置存储器阵列,加载配置数据字,接收并存储当前配置数据字的校验码。
2.根据权利要求1所述的一种具有码流纠检错功能的单粒子加固FPGA配置电路,其特征在于:所述的校验算法为海明编码运算。
3.根据权利要求1或2所述的一种具有码流纠检错功能的单粒子加固FPGA配置电路,其特征在于:所述的编码纠错电路包括第一寄存器、第二寄存器、第一校验码产生电路、校验码寄存器、第二新校验码产生电路;第一寄存器接收配置数据字后送至第一校验码产生电路,第一校验码产生电路接收配置校验字后根据校验算法产生校验码,将校验码送至配置存储器阵列存储,第二寄存器从配置存储器阵列读取配置数据字、校验码,将校验码送至校验码寄存器、配置数据字送至第二新校验码产生电路,第二新校验码产生电路接收配置校验字后根据校验算法产生新的校验码,将新的校验码送至校验码寄存器,校验码寄存器将存储的校验码、新校验码进行异或运算生成校正因子并判断,若为1位配置数据字发生翻转,输出单位错标志并对当前翻转位进行纠正,若为2位以上配置数据字发生翻转,产生并输出中断标志,重新加载配置寄存器中存储的配置数据字。
4.根据权利要求1或2所述的一种具有码流纠检错功能的单粒子加固FPGA配置电路,其特征在于:还包括通用接口电路、JTAG接口电路,其中,JTAG接口模块接收外部数据后进行转换得到总线接口电路能够识别的配置比特码流,并送至总线接口电路,通用接口电路接收外部数据后进行转换得到总线接口电路能够识别的配置比特码流,并送至总线接口电路。
5.根据权利要求4所述的一种具有码流纠检错功能的单粒子加固FPGA配置电路,其特征在于:所述的总线接口电路包括二选一多路器、转换器、包处理器、地址操作码译码器、字数计数器、三态缓冲器;二选一多路器,根据外部指令选择接收通用接口电路发送的配置比特码流或者JTAG接口电路发送的配置比特码流后送至转换器;转换器,对配置比特码流进行位宽转换后送至包处理器;包处理器,对位宽转换后的配置比特码流中的包头译码,解析得到内部数据、寄存器地址信息,将寄存器地址信息送至地址操作码译码器,将内部数据送至三态缓冲器;地址操作码译码器,进行译码得到寄存器地址后送至三态缓冲器,三态缓冲器根据配置寄存器地址将内部数据送至对应配置寄存器,字数计数器对送至配置寄存器的内部数据进行计数。
6.根据权利要求1或5所述的一种具有码流纠检错功能的单粒子加固FPGA配置电路,其特征在于:所述的配置比特码流为64位,内部数据位32位,配置数据字为32位,二选一多路器为64位,转换器为将64位数据转换为32位。
CN201610079915.5A 2016-02-04 2016-02-04 一种具有码流纠检错功能的单粒子加固fpga配置电路 Active CN105760250B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610079915.5A CN105760250B (zh) 2016-02-04 2016-02-04 一种具有码流纠检错功能的单粒子加固fpga配置电路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610079915.5A CN105760250B (zh) 2016-02-04 2016-02-04 一种具有码流纠检错功能的单粒子加固fpga配置电路

Publications (2)

Publication Number Publication Date
CN105760250A true CN105760250A (zh) 2016-07-13
CN105760250B CN105760250B (zh) 2018-11-06

Family

ID=56330649

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610079915.5A Active CN105760250B (zh) 2016-02-04 2016-02-04 一种具有码流纠检错功能的单粒子加固fpga配置电路

Country Status (1)

Country Link
CN (1) CN105760250B (zh)

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106301334A (zh) * 2016-08-25 2017-01-04 广东高云半导体科技股份有限公司 一种sram型fpga器件单粒子反转探测及纠错的电路
CN106844281A (zh) * 2016-11-22 2017-06-13 北京控制工程研究所 一种适用于PowerPC处理器的高可靠指令Cache
CN107515737A (zh) * 2016-06-15 2017-12-26 深圳市博巨兴实业发展有限公司 一种加载mcu芯片的配置信息字的方法
CN107741559A (zh) * 2017-10-12 2018-02-27 电子科技大学 一种面向空间辐射环境下的单粒子翻转测试系统及方法
CN107799151A (zh) * 2016-09-02 2018-03-13 阿里巴巴集团控股有限公司 固态盘SSD及高可用性PCIe SSD的方法和系统
CN108763148A (zh) * 2018-05-31 2018-11-06 西安微电子技术研究所 一种支持上注的容错存储器控制器
CN109213626A (zh) * 2018-08-20 2019-01-15 上海集成电路研发中心有限公司 一种状态机及其状态机的控制方法
CN110187919A (zh) * 2019-05-27 2019-08-30 眸芯科技(上海)有限公司 配置寄存器的装置、方法及系统
CN110931074A (zh) * 2019-11-25 2020-03-27 北京时代民芯科技有限公司 一种用于抗单粒子翻转存储器的可选位宽纠检错电路
CN111124741A (zh) * 2019-12-12 2020-05-08 上海高性能集成电路设计中心 一种面向存储器特征的增强型校验纠错装置
CN111143107A (zh) * 2019-11-13 2020-05-12 广东高云半导体科技股份有限公司 一种fpga单粒子反转校验电路和方法
CN111352025A (zh) * 2020-03-13 2020-06-30 京微齐力(深圳)科技有限公司 一种fpga中配置控制器验证方法、系统及设备
CN111459707A (zh) * 2020-03-10 2020-07-28 华中科技大学 一种串口通讯检错纠错方法和装置
CN112666443A (zh) * 2019-10-16 2021-04-16 杭州可靠性仪器厂 一种基于fpga的测试单元及其测试系统和测试方法
CN112949235A (zh) * 2021-04-16 2021-06-11 山东高云半导体科技有限公司 电子设备的配置方法、装置、处理器及存储介质
CN113608918A (zh) * 2021-08-19 2021-11-05 无锡中微亿芯有限公司 具有对可编程逻辑模块自动检纠错功能的fpga
CN113655745A (zh) * 2021-08-19 2021-11-16 无锡中微亿芯有限公司 一种实现配置码流自动检纠错的fpga
US11604692B2 (en) 2021-08-19 2023-03-14 Wuxi Esiontech Co., Ltd. Field programmable gate array (FPGA) with automatic error detection and correction function for programmable logic modules
CN116092567A (zh) * 2023-01-09 2023-05-09 海光信息技术股份有限公司 数据的处理方法、处理装置以及存储系统

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1411431A2 (en) * 2002-09-20 2004-04-21 STMicroelectronics Pvt. Ltd Method and apparatus of reloading erroneous configuration data frames during configuration of PLDs
US7380197B1 (en) * 2005-07-12 2008-05-27 Xilinx, Inc. Circuit and method for error detection
CN101354666A (zh) * 2008-05-22 2009-01-28 清华大学 微小卫星星载计算机数据存储用的差错检测和纠错系统
CN101419563A (zh) * 2008-11-13 2009-04-29 上海华为技术有限公司 一种单板及提高其可靠性的方法
CN101826038A (zh) * 2010-04-28 2010-09-08 复旦大学 一种抗sram fpga器件seu的电路及方法
CN102566982A (zh) * 2012-01-10 2012-07-11 复旦大学 一种fpga两级流水线配置电路
CN102779079A (zh) * 2011-05-12 2012-11-14 中国科学院空间科学与应用研究中心 一种用于长期在轨工作的星载sram型fpga的配置方法及系统
CN104484238A (zh) * 2014-12-16 2015-04-01 北京控制工程研究所 一种用于sram型fpga配置刷新的crc校验方法
CN104932954A (zh) * 2015-07-01 2015-09-23 西北工业大学 微小卫星fpga关键数据保护方法
CN105045672A (zh) * 2015-07-24 2015-11-11 哈尔滨工业大学 一种基于sram fpga的多级容错加固卫星信息处理系统

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1411431A2 (en) * 2002-09-20 2004-04-21 STMicroelectronics Pvt. Ltd Method and apparatus of reloading erroneous configuration data frames during configuration of PLDs
US7380197B1 (en) * 2005-07-12 2008-05-27 Xilinx, Inc. Circuit and method for error detection
CN101354666A (zh) * 2008-05-22 2009-01-28 清华大学 微小卫星星载计算机数据存储用的差错检测和纠错系统
CN101419563A (zh) * 2008-11-13 2009-04-29 上海华为技术有限公司 一种单板及提高其可靠性的方法
CN101826038A (zh) * 2010-04-28 2010-09-08 复旦大学 一种抗sram fpga器件seu的电路及方法
CN102779079A (zh) * 2011-05-12 2012-11-14 中国科学院空间科学与应用研究中心 一种用于长期在轨工作的星载sram型fpga的配置方法及系统
CN102566982A (zh) * 2012-01-10 2012-07-11 复旦大学 一种fpga两级流水线配置电路
CN104484238A (zh) * 2014-12-16 2015-04-01 北京控制工程研究所 一种用于sram型fpga配置刷新的crc校验方法
CN104932954A (zh) * 2015-07-01 2015-09-23 西北工业大学 微小卫星fpga关键数据保护方法
CN105045672A (zh) * 2015-07-24 2015-11-11 哈尔滨工业大学 一种基于sram fpga的多级容错加固卫星信息处理系统

Cited By (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107515737A (zh) * 2016-06-15 2017-12-26 深圳市博巨兴实业发展有限公司 一种加载mcu芯片的配置信息字的方法
CN106301334A (zh) * 2016-08-25 2017-01-04 广东高云半导体科技股份有限公司 一种sram型fpga器件单粒子反转探测及纠错的电路
CN106301334B (zh) * 2016-08-25 2023-05-30 广东高云半导体科技股份有限公司 一种sram型fpga器件单粒子反转探测及纠错的电路
CN107799151B (zh) * 2016-09-02 2021-08-03 阿里巴巴集团控股有限公司 固态盘SSD及高可用性PCIe SSD的方法和系统
CN107799151A (zh) * 2016-09-02 2018-03-13 阿里巴巴集团控股有限公司 固态盘SSD及高可用性PCIe SSD的方法和系统
CN106844281A (zh) * 2016-11-22 2017-06-13 北京控制工程研究所 一种适用于PowerPC处理器的高可靠指令Cache
CN107741559A (zh) * 2017-10-12 2018-02-27 电子科技大学 一种面向空间辐射环境下的单粒子翻转测试系统及方法
CN108763148A (zh) * 2018-05-31 2018-11-06 西安微电子技术研究所 一种支持上注的容错存储器控制器
CN108763148B (zh) * 2018-05-31 2021-11-30 西安微电子技术研究所 一种支持上注的容错存储器控制器
CN109213626A (zh) * 2018-08-20 2019-01-15 上海集成电路研发中心有限公司 一种状态机及其状态机的控制方法
CN110187919A (zh) * 2019-05-27 2019-08-30 眸芯科技(上海)有限公司 配置寄存器的装置、方法及系统
CN112666443A (zh) * 2019-10-16 2021-04-16 杭州可靠性仪器厂 一种基于fpga的测试单元及其测试系统和测试方法
CN111143107A (zh) * 2019-11-13 2020-05-12 广东高云半导体科技股份有限公司 一种fpga单粒子反转校验电路和方法
CN110931074A (zh) * 2019-11-25 2020-03-27 北京时代民芯科技有限公司 一种用于抗单粒子翻转存储器的可选位宽纠检错电路
CN111124741A (zh) * 2019-12-12 2020-05-08 上海高性能集成电路设计中心 一种面向存储器特征的增强型校验纠错装置
CN111459707A (zh) * 2020-03-10 2020-07-28 华中科技大学 一种串口通讯检错纠错方法和装置
CN111459707B (zh) * 2020-03-10 2021-12-03 华中科技大学 一种串口通讯检错纠错方法和装置
CN111352025A (zh) * 2020-03-13 2020-06-30 京微齐力(深圳)科技有限公司 一种fpga中配置控制器验证方法、系统及设备
CN112949235A (zh) * 2021-04-16 2021-06-11 山东高云半导体科技有限公司 电子设备的配置方法、装置、处理器及存储介质
CN113655745A (zh) * 2021-08-19 2021-11-16 无锡中微亿芯有限公司 一种实现配置码流自动检纠错的fpga
WO2023019742A1 (zh) * 2021-08-19 2023-02-23 无锡中微亿芯有限公司 具有对可编程逻辑模块自动检纠错功能的fpga
US11604692B2 (en) 2021-08-19 2023-03-14 Wuxi Esiontech Co., Ltd. Field programmable gate array (FPGA) with automatic error detection and correction function for programmable logic modules
CN113608918B (zh) * 2021-08-19 2023-04-28 无锡中微亿芯有限公司 具有对可编程逻辑模块自动检纠错功能的fpga
CN113608918A (zh) * 2021-08-19 2021-11-05 无锡中微亿芯有限公司 具有对可编程逻辑模块自动检纠错功能的fpga
CN116092567A (zh) * 2023-01-09 2023-05-09 海光信息技术股份有限公司 数据的处理方法、处理装置以及存储系统
CN116092567B (zh) * 2023-01-09 2024-03-22 海光信息技术股份有限公司 数据的处理方法、处理装置以及存储系统

Also Published As

Publication number Publication date
CN105760250B (zh) 2018-11-06

Similar Documents

Publication Publication Date Title
CN105760250A (zh) 一种具有码流纠检错功能的单粒子加固fpga配置电路
CN104484214B (zh) 一种sram型fpga的配置、刷新与程序上注一体化系统
CN108899061B (zh) 一种电源常开芯片中的存储器内建自测试方法和系统
US11119857B2 (en) Substitute redundant memory
US8099625B1 (en) Self-checking and self-correcting internal configuration port circuitry
US8065574B1 (en) Soft error detection logic testing systems and methods
US9342402B1 (en) Memory interface with hybrid error detection circuitry for modular designs
CN111833957B (zh) 用于存储器装置的可配置相关联修复地址以及电路
CN107894898A (zh) Sram型fpga片上刷新和纠错的装置、实现方法及fpga芯片
US7167404B2 (en) Method and device for testing configuration memory cells in programmable logic devices (PLDS)
US9396079B2 (en) Semiconductor memory device and semiconductor system including the same
US10706952B1 (en) Testing for memories during mission mode self-test
KR102276007B1 (ko) 집적 회로의 리페어 정보 제공 장치
CN104572326B (zh) 一种基于回读自重构的SoPC芯片容错方法
CN105304144A (zh) 存储器错误检测方法及装置
CN109491821A (zh) 抗单粒子翻转的加固系统及方法
CN104866390B (zh) 异步随机静态存储器三模冗余控制器
CN107807902A (zh) 一种抗单粒子效应的fpga动态重构控制器
US7430703B1 (en) Error correction for multiple word read
CN104733048A (zh) 一种提高大容量反熔丝存储器成品率的方法
CN108763148B (zh) 一种支持上注的容错存储器控制器
US12038812B2 (en) Memory safety interface configuration
CN110612518B (zh) 高频域的数据输出
US9672094B1 (en) Interconnect circuitry fault detection
JP3139738B2 (ja) 論理回路

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant