CN113657062B - 基于奇偶校验提高fpga运行可靠性的方法 - Google Patents

基于奇偶校验提高fpga运行可靠性的方法 Download PDF

Info

Publication number
CN113657062B
CN113657062B CN202110953830.6A CN202110953830A CN113657062B CN 113657062 B CN113657062 B CN 113657062B CN 202110953830 A CN202110953830 A CN 202110953830A CN 113657062 B CN113657062 B CN 113657062B
Authority
CN
China
Prior art keywords
configuration
fpga
chain
code stream
bit
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
CN202110953830.6A
Other languages
English (en)
Other versions
CN113657062A (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.)
Wuxi Zhongwei Yixin Co Ltd
Original Assignee
Wuxi Zhongwei Yixin Co Ltd
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 Wuxi Zhongwei Yixin Co Ltd filed Critical Wuxi Zhongwei Yixin Co Ltd
Priority to CN202110953830.6A priority Critical patent/CN113657062B/zh
Publication of CN113657062A publication Critical patent/CN113657062A/zh
Application granted granted Critical
Publication of CN113657062B publication Critical patent/CN113657062B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • G06F30/343Logical level
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Quality & Reliability (AREA)
  • Detection And Correction Of Errors (AREA)
  • Logic Circuits (AREA)

Abstract

本发明公开了一种基于奇偶校验提高FPGA运行可靠性的方法,涉及FPGA技术领域,该方法在生成用户设计对应的初始配置码流后,将其处理为逻辑功能不变、但所有配置链具有全偶校验或者全奇校验的基准配置码流,继而再下载到FPGA内,FPGA正常运行用户设计的过程中,其内部控制电路通过校验器即可对存储的配置链进行校验,并在校验出错时由外部的基准配置码流覆盖更新,从而保证内部存储的基准配置码流的准确性,提高FPGA的运行可靠性。

Description

基于奇偶校验提高FPGA运行可靠性的方法
技术领域
本发明涉及FPGA技术领域,尤其是一种基于奇偶校验提高FPGA运行可靠性的方法。
背景技术
随着超大规模集成电路技术的发展,FPGA芯片(Field Programmable GateArray,现场可编程门阵列)依靠其优越的接口性能、丰富的逻辑和IP资源以及灵活方便的现场可编程能力得到了广泛的使用。
FPGA芯片内部具有可配置模块以及绕线资源,当用户设计映射到FPGA芯片时,用户设计可以通过定义配置内容(配置位的内容)来决定FPGA芯片内部可配置模块所实现的功能以及绕线资源所选择的绕线路径,从而定义FPGA芯片实现的功能。FPGA设计软件将用户设计输入经綜合、布局、布线处理,映射到FPGA芯片后,根据使用到可配置模块及绕线资源的配置内容,按预定的格式生成码流文件。码流经下载到FPGA器件,可正确的填写各配置内容,定义FPGA芯片功能,下载完成后,运行FPGA芯片即可实现用户设计功能。
FPGA芯片受供电、辐射、电磁、粒子等外在因素影响,容易出现单粒子翻转(SEU,Single Event Upset)问题,从而导致配置内容翻转出错,而使电路功能出现故障,因此在高可靠性FPGA应用领域,提高配置内容的可靠性是重要的课题。
发明内容
本发明人针对上述问题及技术需求,提出了一种基于奇偶校验提高FPGA运行可靠性的方法,本发明的技术方案如下:
一种基于奇偶校验提高FPGA运行可靠性的方法,该方法包括:
生成FPGA的用户设计对应的以配置链为单位的初始配置码流,每个配置链包括初始配置码流中连续的具有预定位数的配置位;
对初始配置码流进行数据处理得到以配置链为单位且全部具有目标奇偶校验结果的基准配置码流,且基准配置码流与初始配置码流所实现的逻辑功能相同,目标奇偶校验结果为奇校验或偶校验;
将基准配置码流以配置链为单位依次写入FPGA进行存储,FPGA内部集成有校验器和控制电路,控制电路在在FPGA正常运行用户设计的过程中每隔预定时间对FPGA内部存储的配置链进行遍历并送入校验器中校验是否具有目标奇偶校验结果,当存在配置链校验出错时,利用FPGA外部的基准配置码流对FPGA内部存储的基准配置码流进行覆盖更新。
其进一步的技术方案为,对初始配置码流进行数据处理,包括:
对初始配置码流中具有目标奇偶校验结果的配置链保持不变,对不具有目标奇偶校验结果的配置链中符合预定规则的目标配置位的数据进行修改使得调整为具有目标奇偶校验结果,符合预定规则的目标配置位是不影响配置码流所实现的逻辑功能的配置位。
其进一步的技术方案为,当配置位对应于FPGA中的闲置模块中的信号端、工作模块中的闲置信号端或工作模块中在当前模式下为随意值的工作信号端时,确定配置位符合预定规则;
其中,闲置模块是FPGA中在用户设计中未使用的可配置模块,工作模块是FPGA中在用户设计中使用的可配置模块,闲置信号端是工作模块中在用户设计中未使用的信号端,工作信号端是工作模块中在用户设计中使用的信号端。
其进一步的技术方案为,该方法还包括:
对于不具有目标奇偶校验结果的配置链,若配置链中存在对应于FPGA中的闲置模块中的信号端的配置位,则选取对应于FPGA中的闲置模块中的信号端的配置位为目标配置位;
若不存在对应于FPGA中的闲置模块中的信号端的配置位、存在对应于工作模块中的闲置信号端的配置位,则选取对应于工作模块中的闲置信号端的配置位为目标配置位;
若不存在对应于工作模块中的闲置信号端的配置位、存在对应于工作模块中在当前模式下为随意值的工作信号端的配置位,则选取对应于工作模块中在当前模式下为随意值的工作信号端为目标配置位。
其进一步的技术方案为,若配置链中存在符合预定规则且属于同一规则类别的至少两个配置位,则从中任选一个配置位作为目标配置位,规则类别包括对应于FPGA中的闲置模块中的信号端、对应于工作模块中的闲置信号端、对应于工作模块中在当前模式下为随意值的工作信号端。
其进一步的技术方案为,该方法还包括:
对于不具有目标奇偶校验结果的配置链,若配置链中不存在符合预定规则的配置位,则在新的布局布线结果下重新执行生成FPGA的用户设计对应的以配置链为单位的初始配置码流的步骤。
其进一步的技术方案为,当目标奇偶校验结果为偶校验时,对初始配置码流进行数据处理,包括:
对初始配置码流中的每个配置链分别进行奇偶校验,并将每个配置链的一位奇偶校验结果增加到配置链中,得到基准配置码流中的各个奇偶校验结果为偶校验的配置链,则基准配置码流中的各个配置链相对于初始配置码流中对应的配置链多一位。
其进一步的技术方案为,利用FPGA外部的基准配置码流对FPGA内部存储的基准配置码流进行覆盖更新,包括:
从FPGA外部重新写入基准配置码流进行全片重配置。
其进一步的技术方案为,利用FPGA外部的基准配置码流对FPGA内部存储的基准配置码流进行覆盖更新,包括:
控制电路将错误配置链位址传输到FPGA外部,错误配置链位址是校验出错的配置链的位址,从FPGA外部重新写入基准配置码流中与错误配置链位址对应的配置链对校验出错的配置链进行重配置。
其进一步的技术方案为,控制电路通过配置端口或动态可重配端口将错误配置链位址传输到FPGA外部。
其进一步的技术方案为,控制电路每次按照预定顺序遍历所有配置链或部分配置链并送入校验器中校验。
其进一步的技术方案为,遍历时的预定顺序为配置链的位址顺序。
其进一步的技术方案为,FPGA内部还包括与控制电路相连的定时器,控制电路根据定时器的延时时长对FPGA内部存储的配置链遍历并送入校验器中校验,定时器的输入时钟来自于FPGA外部或者来自于FPGA内部。
其进一步的技术方案为,定时器接收到即时使能信号时立即触发控制电路遍历配置链并送入校验器中校验,即时使能信号来自于FPGA外部或者来自于FPGA内部的用户设计。
其进一步的技术方案为,控制电路与FPGA的内建边界扫描链相连,控制电路通过内建边界扫描链获取FPGA的外部控制信号并对FPGA内部存储的配置链遍历并送入校验器中校验。
本发明的有益效果为:
本申请公开了一种基于奇偶校验提高FPGA运行可靠性的方法,该方法在得到用户设计对应的初始配置码流后,将其处理为逻辑功能不变,但具有全偶校验或者全奇校验的基准配置码流,继而再下载到FPGA内,从而在FPGA运行过程中,其内部只需使用较少的电路即可对配置链进行校验和覆盖更新,从而保证内部存储的基准配置码流的准确性,提高FPGA的运行可靠性。
附图说明
图1是本申请公开的方法的流程示意图。
图2是本申请中确定配置链中的目标配置位的流程示意图。
图3是本申请中的FPGA内部的结构示意图。
具体实施方式
下面结合附图对本发明的具体实施方式做进一步说明。
本申请公开了一种基于奇偶校验提高FPGA运行可靠性的方法,该方法包括如下步骤,请参考图1:
步骤1,生成FPGA的用户设计对应的以配置链为单位的初始配置码流。每个配置链包括初始配置码流中连续的具有预定位数的配置位,比如1024位或2048位或任意自定义的位数。FPGA写入的配置码流主要包括两种封包,第一种封包指定对应存储的配置区块、起始配置位、长度以及其他相关控制指令,第二种封包包含实际的配置位内容。
步骤2,对初始配置码流进行数据处理,得到以配置链为单位且全部具有目标奇偶校验结果的基准配置码流,目标奇偶校验结果为奇校验或偶校验。本申请提供如下两种数据处理的方法:
第一种数据处理的方法:对具有目标奇偶校验结果的配置链保持不变,对不具有目标奇偶校验结果的配置链进行处理使得调整为具有目标奇偶校验结果,该种数据处理方法可以处理得到具有奇校验或者具有偶校验的基准配置码流,且得到的基准配置码流的位数与初始配置码流的位数相等。
按照常规的码流生成规则生成的初始配置码流中,可能部分配置链为奇校验,部分配置链为偶校验,在这一步骤中,通过数据处理将所有配置链统一为奇校验,或者,统一为偶校验,由此完成数据处理后得到以配置链为单位且全部具有目标奇偶校验结果的基准配置码流。
具体的,对不具有目标奇偶校验结果的配置链中符合预定规则的目标配置位的数据进行修改使得调整为具有目标奇偶校验结果,符合预定规则的目标配置位是不影响配置码流所实现的逻辑功能的配置位,也即调整目标配置位的数据以后,配置链的校验结果变化、但整体实现的逻辑功能保持不变,因此得到的基准配置码流与初始配置码流所实现的逻辑功能相同。
在一个实施例中,当一个配置位对应于FPGA中的闲置模块中的信号端、工作模块中的闲置信号端或工作模块中在当前模式下为随意值的工作信号端时,确定该配置位符合预定规则、可以被选为目标配置位。其中,闲置模块是FPGA中在用户设计中未使用的可配置模块,闲置模块通常不接输出,因此闲置模块内的配置位的值均不影响逻辑功能,可以被选为目标配置位。工作模块是FPGA中在用户设计中使用的可配置模块,闲置信号端是工作模块中在用户设计中未使用的信号端,工作模块中可能只使用了部分信号端,对于未使用的闲置信号端,其配置位的值也不影响逻辑功能,可以被选为目标配置位。比如6输入查找表有64个配置位,若6输入查找表用于实现5输入逻辑功能、则只需使用32个配置位即可,余下32个配置位就是闲置信号端、不影响逻辑功能、可以被选择目标配置位修改其值。工作信号端是工作模块中在用户设计中使用的信号端,FPGA中会有一些可配置模块在实现特定功能时,某些配置位在当前模式下刚好不用,其值可为0可为1,在功能真值表中一般将其值表示为x(don’t care)以表示这些配置位可以为随意值,此时将该配置位的值进行修改也不会影响当前模式下的逻辑功能。
在一个不具有目标奇偶校验结果的配置链中,可能存在多个符合预定规则的配置位,此时需要在其中选择一个作为目标配置位,一种做法是,随机从符合预定规则的配置位中选择一个作为目标配置位。在另一个实施例中的做法是,按照预定顺序从不同规则类别中选择配置位,对不同规则类别的预定顺序包括从先至后依次为:对应于FPGA中的闲置模块中的信号端、对应于工作模块中的闲置信号端、对应于工作模块中在当前模式下为随意值的工作信号端,则具体的,请参考图2:
对于不具有目标奇偶校验结果的配置链,若配置链中存在对应于FPGA中的闲置模块中的信号端的配置位,则选取对应于FPGA中的闲置模块中的信号端的配置位为目标配置位。一般情况下,FPGA的设计利用率不到90%,因此会有很多闲置模块,大部分情况下在这一步即可以找到相应的配置位。
若不存在对应于FPGA中的闲置模块中的信号端的配置位、存在对应于工作模块中的闲置信号端的配置位,则选取对应于工作模块中的闲置信号端的配置位为目标配置位。
若不存在对应于工作模块中的闲置信号端的配置位、存在对应于工作模块中在当前模式下为随意值的工作信号端的配置位,则选取对应于工作模块中在当前模式下为随意值的工作信号端为目标配置位。
若配置链中不存在符合预定规则的配置位,也即在上述依次判断过程中,确定也不存在对应于工作模块中在当前模式下为随意值的工作信号端时,则在新的布局布线结果下重新执行生成FPGA的用户设计对应的以配置链为单位的初始配置码流的步骤,在新的初始配置码流下重新操作。
在上述过程中,针对每个规则类别,若配置链中存在符合预定规则且属于该规则类别的一个配置位,则将该配置位作为目标配置位。若配置链中存在符合预定规则且属于该规则类别的至少两个配置位,则从中任选一个配置位作为目标配置位。也即在确定配置链中存在对应于FPGA中的闲置模块中的信号端的多个配置位时,从中任选一个作为目标配置位;在确定配置链中不存在对应于FPGA中的闲置模块中的信号端的配置位、但存在对应于工作模块中的闲置信号端的多个配置位时,从中任选一个作为目标配置位;在确定不存在对应于工作模块中的闲置信号端的配置位、但存在对应于工作模块中在当前模式下为随意值的工作信号端的多个配置位时,从中任选一个作为目标配置位。
第二种数据处理的方法:对初始配置码流中的每个配置链分别进行奇偶校验,并将每个配置链的一位奇偶校验结果增加到配置链中,得到基准配置码流中的各个奇偶校验结果为偶校验的配置链。则这种数据处理方法得到的基准配置码流中的各个配置链相对于初始配置码流中对应的配置链多一位,而且只能处理得到具有偶校验的基准配置码流。
步骤3,将基准配置码流以配置链为单位依次写入FPGA进行存储。如图3所示,FPGA内部集成有校验器和控制电路,校验器可以采用奇偶校验器,或者当目标奇偶校验结果为偶校验时,可以直接采用偶校验器。FPGA内还包括配置内存,配置内存包括N个配置区块分别记为配置区块1~N,配置区块的数量大于等于配置链的数量,每个配置区块的宽度大于等于配置链的宽度,各个配置区块的宽度可以相同也可以不同,通常是相同的。基准配置码流以配置链为单位依次写入FPGA后,每个配置链分别存储在对应的一个配置区块内,图3以配置链的数量与配置区块的数量相等,且配置链1~N依次存入配置区块1~N内为例。可选的,FPGA内还包括配置缓存,基准配置码流中的每个配置链写入FPGA内后先写入配置缓存进行缓存,然后写入对应的一个配置区块内。可选的,FPGA内部还包括解密电路,写入FPGA内的配置码流可以是加密后的配置码流,则基准配置码流中的每个配置链写入FPGA内后,首先经解密电路进行解密,再写入配置缓存进行缓存。
在所有基准配置码流写入完成后,在FPGA正常运行用户设计的过程中,控制电路每隔预定时间对FPGA内部存储的配置链进行遍历,读出并送入校验器中校验是否具有目标奇偶校验结果。可选的,控制电路每次按照预定顺序遍历FPGA内部存储的所有配置链或部分配置链并送入校验器中校验。可选的,遍历时的预定顺序为配置链的位址顺序。
在将配置链送入校验器中校验时,若校验器校验得到配置链具有目标奇偶校验结果、则表示配置链校验成功,并继续校验下一配置链。若校验器校验确定配置链不具有目标奇偶校验结果、则表示配置链校验出错,在这种情况下,需要利用FPGA外部的基准配置码流对FPGA内部存储的基准配置码流进行覆盖更新,本申请提供两种覆盖更新的机制:
机制一、从FPGA外部重新写入基准配置码流进行全片重配置,也即当校验到存在配置链校验出错时,立即进行全片重配置,对所有FPGA内部存储的所有基准配置码流进行覆盖更新,在这种情况下,不再继续对下一配置链进行校验,而是等预定时间后进行下一次遍历校验。可选的,通过配置端口或动态可重配端口从FPGA外部重新写入基准配置码流。
机制二、控制电路将错误配置链位址传输到FPGA外部,错误配置链位址是校验出错的配置链的位址,可选的,控制电路通过配置端口或动态可重配端口将错误配置链位址传输到FPGA外部。从FPGA外部重新写入基准配置码流中与错误配置链位址对应的配置链对校验出错的配置链进行重配置,也即只对当前校验出错的配置链进行覆盖更新,在这种情况下,对校验出错的配置链进行覆盖更新后,继续对下一配置链进行校验。
可选的,FPGA内部还包括与控制电路相连的定时器,控制电路根据定时器的延时时长对FPGA内部存储的配置链遍历并送入校验器中校验,定时器的输入时钟来自于FPGA外部或者来自于FPGA内部。当定时器的输入时钟来自于FPGA内部时,在一个实施例中,定时器的输入时钟来自于FPGA内部的环振器,且输入时钟的频率可调。定时器的延时时长可以根据实际需要自定义配置,在一个实施例中,定时器的延时时长小于FPGA的设计指标参数,设计指标参数包括平均无故障工作时间MTBF和修复前平均时间MTTF中的至少一种,从而可以在预定系统故障前先自行纠错。在另一个实施例中,定时器在按照延时时长触发控制电路的过程中,当定时器接收到即时使能信号时、不再继续延时计算,而是立即触发控制电路遍历配置链并送入校验器中校验,即时使能信号来自于FPGA外部或者来自于FPGA内部的用户设计。
在另一个实施例中,控制电路与FPGA的内建边界扫描链相连,控制电路通过内建边界扫描链获取FPGA的外部控制信号,并根据外部控制信号对FPGA内部存储的配置链遍历并送入校验器中校验。

Claims (15)

1.一种基于奇偶校验提高FPGA运行可靠性的方法,其特征在于,所述方法包括:
生成FPGA的用户设计对应的以配置链为单位的初始配置码流,每个配置链包括所述初始配置码流中连续的具有预定位数的配置位;
对所述初始配置码流进行数据处理得到以配置链为单位且全部具有目标奇偶校验结果的基准配置码流,且所述基准配置码流与所述初始配置码流所实现的逻辑功能相同,所述目标奇偶校验结果为奇校验或偶校验;
将所述基准配置码流以配置链为单位依次写入所述FPGA进行存储,所述FPGA内部集成有校验器和控制电路,所述控制电路在FPGA正常运行用户设计的过程中每隔预定时间对所述FPGA内部存储的配置链进行遍历并送入校验器中校验是否具有所述目标奇偶校验结果,当存在配置链校验出错时,利用所述FPGA外部的所述基准配置码流对所述FPGA内部存储的基准配置码流进行覆盖更新。
2.根据权利要求1所述的方法,其特征在于,所述对所述初始配置码流进行数据处理,包括:
对所述初始配置码流中具有所述目标奇偶校验结果的配置链保持不变,对不具有目标奇偶校验结果的配置链中符合预定规则的目标配置位的数据进行修改使得调整为具有目标奇偶校验结果,符合预定规则的目标配置位是不影响配置码流所实现的逻辑功能的配置位。
3.根据权利要求2所述的方法,其特征在于,
当配置位对应于FPGA中的闲置模块中的信号端、工作模块中的闲置信号端或工作模块中在当前模式下为随意值的工作信号端时,确定所述配置位符合所述预定规则;
其中,闲置模块是FPGA中在所述用户设计中未使用的可配置模块,工作模块是FPGA中在所述用户设计中使用的可配置模块,闲置信号端是工作模块中在所述用户设计中未使用的信号端,工作信号端是工作模块中在所述用户设计中使用的信号端。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
对于不具有目标奇偶校验结果的配置链,若所述配置链中存在对应于FPGA中的闲置模块中的信号端的配置位,则选取对应于FPGA中的闲置模块中的信号端的配置位为所述目标配置位;
若不存在对应于FPGA中的闲置模块中的信号端的配置位、存在对应于工作模块中的闲置信号端的配置位,则选取对应于工作模块中的闲置信号端的配置位为所述目标配置位;
若不存在对应于工作模块中的闲置信号端的配置位、存在对应于工作模块中在当前模式下为随意值的工作信号端的配置位,则选取对应于工作模块中在当前模式下为随意值的工作信号端为所述目标配置位。
5.根据权利要求4所述的方法,其特征在于,若所述配置链中存在符合所述预定规则且属于同一规则类别的至少两个配置位,则从中任选一个配置位作为所述目标配置位,规则类别包括对应于FPGA中的闲置模块中的信号端、对应于工作模块中的闲置信号端、对应于工作模块中在当前模式下为随意值的工作信号端。
6.根据权利要求2所述的方法,其特征在于,所述方法还包括:
对于不具有目标奇偶校验结果的配置链,若所述配置链中不存在符合所述预定规则的配置位,则在新的布局布线结果下重新执行所述生成FPGA的用户设计对应的以配置链为单位的初始配置码流的步骤。
7.根据权利要求1所述的方法,其特征在于,当所述目标奇偶校验结果为偶校验时,所述对所述初始配置码流进行数据处理,包括:
对所述初始配置码流中的每个配置链分别进行奇偶校验,并将每个配置链的一位奇偶校验结果增加到配置链中,得到所述基准配置码流中的各个奇偶校验结果为偶校验的配置链,则所述基准配置码流中的各个配置链相对于所述初始配置码流中对应的配置链多一位。
8.根据权利要求1-7任一所述的方法,其特征在于,所述利用所述FPGA外部的所述基准配置码流对所述FPGA内部存储的基准配置码流进行覆盖更新,包括:
从所述FPGA外部重新写入所述基准配置码流进行全片重配置。
9.根据权利要求1-7任一所述的方法,其特征在于,所述利用所述FPGA外部的所述基准配置码流对所述FPGA内部存储的基准配置码流进行覆盖更新,包括:
所述控制电路将错误配置链位址传输到所述FPGA外部,所述错误配置链位址是校验出错的配置链的位址,从所述FPGA外部重新写入所述基准配置码流中与所述错误配置链位址对应的配置链对校验出错的配置链进行重配置。
10.根据权利要求9所述的方法,其特征在于,所述控制电路通过配置端口或动态可重配端口将错误配置链位址传输到所述FPGA外部。
11.根据权利要求1-7任一所述的方法,其特征在于,所述控制电路每次按照预定顺序遍历所有配置链或部分配置链并送入校验器中校验。
12.根据权利要求11所述的方法,其特征在于,遍历时的所述预定顺序为配置链的位址顺序。
13.根据权利要求1-7任一所述的方法,其特征在于,所述FPGA内部还包括与所述控制电路相连的定时器,所述控制电路根据所述定时器的延时时长对所述FPGA内部存储的配置链遍历并送入校验器中校验,所述定时器的输入时钟来自于FPGA外部或者来自于FPGA内部。
14.根据权利要求13所述的方法,其特征在于,
所述定时器接收到即时使能信号时立即触发所述控制电路遍历配置链并送入校验器中校验,所述即时使能信号来自于所述FPGA外部或者来自于FPGA内部的用户设计。
15.根据权利要求1-7任一所述的方法,其特征在于,所述控制电路与所述FPGA的内建边界扫描链相连,所述控制电路通过所述内建边界扫描链获取所述FPGA的外部控制信号并对所述FPGA内部存储的配置链遍历并送入校验器中校验。
CN202110953830.6A 2021-08-19 2021-08-19 基于奇偶校验提高fpga运行可靠性的方法 Active CN113657062B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110953830.6A CN113657062B (zh) 2021-08-19 2021-08-19 基于奇偶校验提高fpga运行可靠性的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110953830.6A CN113657062B (zh) 2021-08-19 2021-08-19 基于奇偶校验提高fpga运行可靠性的方法

Publications (2)

Publication Number Publication Date
CN113657062A CN113657062A (zh) 2021-11-16
CN113657062B true CN113657062B (zh) 2023-09-05

Family

ID=78492317

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110953830.6A Active CN113657062B (zh) 2021-08-19 2021-08-19 基于奇偶校验提高fpga运行可靠性的方法

Country Status (1)

Country Link
CN (1) CN113657062B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN202433889U (zh) * 2011-12-19 2012-09-12 中国航空工业集团公司洛阳电光设备研究所 一种串行通讯数据奇偶校验的装置
JP2013219473A (ja) * 2012-04-06 2013-10-24 Mitsubishi Electric Corp プログラマブルロジックデバイス
CN111338840A (zh) * 2020-03-07 2020-06-26 西安电子科技大学 航天数据保护方法、存储介质、计算机程序、系统、终端
CN111755436A (zh) * 2020-07-01 2020-10-09 无锡中微亿芯有限公司 具有实时监测并修正配置信息功能的多裸片fpga

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN202433889U (zh) * 2011-12-19 2012-09-12 中国航空工业集团公司洛阳电光设备研究所 一种串行通讯数据奇偶校验的装置
JP2013219473A (ja) * 2012-04-06 2013-10-24 Mitsubishi Electric Corp プログラマブルロジックデバイス
CN111338840A (zh) * 2020-03-07 2020-06-26 西安电子科技大学 航天数据保护方法、存储介质、计算机程序、系统、终端
CN111755436A (zh) * 2020-07-01 2020-10-09 无锡中微亿芯有限公司 具有实时监测并修正配置信息功能的多裸片fpga

Also Published As

Publication number Publication date
CN113657062A (zh) 2021-11-16

Similar Documents

Publication Publication Date Title
JP4856848B2 (ja) プログラマブルロジックリソース上のエラー検出
US8797061B2 (en) Partial reconfiguration circuitry
CN110535762B (zh) 用于集成电路的互连网络
CN112702065B (zh) Fpga码流数据校验方法及装置
US20190361770A1 (en) Interconnection network for integrated circuit
JP2009534895A (ja) Crcエラー検出装置およびcrcエラー検出コード計算方法
KR20200133823A (ko) 점진적 길이 에러 제어 코드
CN109286471B (zh) 面向srio控制器的crc校验方法及装置
US20220180034A1 (en) System and method for using interface protection parameters
CN113657062B (zh) 基于奇偶校验提高fpga运行可靠性的方法
CN114675994A (zh) 模块化纠错码电路
US11604696B2 (en) Field programmable gate array (FPGA) for improving reliability of key configuration bitstream by reusing buffer memory
US11631454B2 (en) Methods and apparatus for reduced area control register circuit
US7827462B2 (en) Combined command and data code
CN113655745B (zh) 一种实现配置码流自动检纠错的fpga
Suvorova An Approach to Dynamic Reconfigurable Transport Protocol Controller Unit Development
US9312883B1 (en) Hierarchical cyclic redundancy check circuitry
Göhringer et al. Reliable and adaptive network-on-chip architectures for cyber physical systems
US8183883B1 (en) Integrated circuit reconfiguration techniques
El-Medany Reconfigurable CRC IP core design on xilinx spartan 3AN FPGA
Jayan et al. FPGA implementation of an efficient router architecture based on DMC
WO2023019745A1 (zh) 通过复用缓冲内存提高关键配置码流可靠性的fpga
US9658920B1 (en) Method for reconfiguring an erroneous memory frame in an integrated circuit
CN114944889B (zh) 一种基于可参数化配置的多功能通信数据校验系统和方法
US11658684B2 (en) Multi-port—multi mode Reed Solomon decoder

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