商用现场可编程器件用于辐照环境下三模冗余抗辐照方法

文档序号:6482956阅读:164来源:国知局
专利名称:商用现场可编程器件用于辐照环境下三模冗余抗辐照方法
技术领域
本发明属于现场可编程门阵列(FPGA)的电子设计自动化EDA (Electronic Design Automation)技术领域,具体涉及一种基于查找 表结构的商用FPGA在辐照环境中,通过采用三模冗余抗辐照的方法 及其通用算法,从而缓解辐照所造成的单粒子翻转的软错误问题。
背景技术
基于査找表结构的商用FPGA由大量的可编程逻辑资源组成。太 空中存在的能量粒子对此类FPGA芯片会产生单粒子效应Single Event Effects (SEE)。当单个能量粒子打在SRAM可编程点上,形成 足够的能量时,就会产生单粒子翻转效应Single Event Upset (SEU)。 单粒子翻转可能造成查找表、寄存单元、RAM等器件的逻辑状态改变, 从而逻辑功能与预期不一致。基于査找表结构的商用FPGA非常容易 受此效应的干扰。为了能使基于查找表结构的商用FPGA在辐照环境 中得到应用,可以采用三模冗余抗辐照的方法,从而缓解辐照所造成 的单粒子翻转的软错误问题。
传统的三模冗余方法涉及三模冗余所有寄存器和使用大数表决 器(Majority Voter)。原则上,当任何一个设计工作域失败,另两 个工作域继续正确操作,通过使用大数表决器从而保证设计正确性。 图1描述了这个传统的三模冗余方法,图2描述了大数表决器和逻辑 功能真值表信息,图4描述了小数表决器和逻辑功能真值表信息。
然而,传统三模冗余方法实现FPGAs重构时,传统的方法有两个缺陷-
1. 传统三模冗余设计在大数表决器上没有保护设置。图3描述 了传统三模冗余设计不能解决SET的问题。
2. 尽管传统三模冗余方法可以缓和单一故障,但它缺少一种纠 正错误能力。另一个在相同的部分设计的,但是在不同的设 计工作域会导致错误的大数表决器的输出。

发明内容
本发明所要解决的技术问题是要寻求一种基于査找表结构的商 用现场可编程器件FPGA用于辐照环境下,缓解此类商用FPGA芯片 因辐照环境而造成单粒子翻转问题,并在此基础上研究一种具有通用 性的逻辑三模冗余抗辐照软错误的算法。
为了解决以上的技术问题,本发明提供了一种商用现场可编程器 件FPGA用于辐照环境下三模冗余抗辐照方法,用户设计电路映射到 商用FPGA芯片上分类成四种逻辑,分别为输入逻辑、非反馈逻辑、 反馈逻辑和输出逻辑。针对该四种不同逻辑分类,分别进行不同的三 模冗余抗辐照处理。
A、所述的输入或非反馈逻辑类型的三模冗余抗辐照处理方法如

(1) 对所有输入端A、 B和CLK进行三模冗余复制,分别工作在三 个不同工作域TRO, TR1和TR2;工作域TRO对应输入端口则为A—TRO、 B—TRO和CLK—TRO;工作域TR1对应输入端口则为A—TR1、 B—TR1和 CLK—TR1;工作域TR2对应输入端口则为A—TR2、 B—TR2和CLK—TR2;
(2) 对所有非反馈的逻辑单元进行三模冗余复制,分别工作在三个 不同工作域TRO,' TR1和TR2;工作域TRO对应非反馈的逻辑则为101—TRO;工作域TRl对应非反馈的逻辑则为101—TR1;工作域TR2 对应非反馈的逻辑则为101_TR2;
(3)对所有相关线网进行三模冗余复制但并不插入大数表决器,致 使每个三模冗余的设计工作域独立运作。
B、所述的反馈逻辑类型的三模冗余抗辐照处理方法如下
1) 对所有反馈逻辑的组合逻辑102和时序单元103进行三模冗 余复制,分别工作在三个不同工作域TRO, TRl和TR2;工作域TRO 对应组合逻辑和时序单元则为102—TRO和103—TRO;工作域TRl对应 组合逻辑和时序单元则为102—TRl和103_TR1;工作域TR2对应组合 逻辑和时序单元则为102一TR2和103—TR2;
2) 对所有相关线网进行三模冗余复制,致使每个三模冗余的设 计工作域独立运作;除了对所有反馈的逻辑单元和线网进行三模冗余 复制,还需在每个工作域一致的位置创建大数表决器并插入;大数表 决器插入点在原设计反馈逻辑的时序单元103输出端Q对应的位置之 后。
3) 工作域TRO的大数表决器104—TRO插在103—TRO输出端Q之 后,大数表决器104—TRO输入端TRO与103_TR0输出端Q相连接,大 数表决器104—TRO输出端V反馈到同一工作域TRO,并与102—TRO的 输入端10相连;大数表决器104—TRO的另外两个输入端TRl和TR2 分别与其他两个作用域TRl和TR2的103—TRl的输出端Q和103_TR2
的输出端Q相连;
4) 工作域TRl的大数表决器104—TRl插在103JTR1输出端Q之 后,大数表决器104—TRl输入端TRl与103—TRl输出端Q相连接,大 数表决器104—TRl输出端V反馈到同一工作域TR1,并与102—TRl的 输入端10相连;'大数表决器104—TRl的另外两个输入端TRO和TR2分别与其他两个作用域TRO和TR2的103一TR0的输出端Q和103—TR2 的输出端Q相连;
5)工作域TR2的大数表决器104—TR2插在103JTR2输出端Q之 后,大数表决器104JTR2输入端TR2与103—TR2输出端Q相连接,大 数表决器104一TR2输出端V反馈到同一工作域TR2,并与102_TR2的 输入端10相连;大数表决器104—TR2的另外两个输入端TRO和TR1 分别与其他两个作用域TRO和TR1的103—TRO的输出端Q和103—TR1 的输出端Q相连。
C、所述的输出逻辑的三模冗余抗辐照处理方法如下
① 对所有输出端X进行三模冗余复制,分别工作在三个不同工作 域TRO, TR1和TR2;工作域TRO对应输出端口则为X—TRO;工作域 TR1对应输出端口则为X一TR1;工作域TR2对应输出端口则为X—TR2;
② 工作域TRO输出端X—TRO不直接与104_TR0输出端V相连,而 是与三态缓冲器106—TRO的输出端0相连;三态缓冲器106—TRO由小 数表决器105—TRO控制;前一级的大数表决器104—TR0输出端V与三 态缓冲器106一TR0的输入端I相连,同时也和小数表决器105_TR0的 输入端I—TRO相连;小数表决器105—TRO的输出端0作为三态缓冲器 106—TRO的控制端T的输入信号,控制104—TRO的输出;小数表决器 105—TRO的另外两个输入端I—TRl和I—TR2分别与其他两个作用域 TRl和TR2的104—TRl的输出端V和104_TR2的输出端V相连;
③ 工作域TRl输出端X_TR1不直接与104—TRl输出端V相连,而 是与三态缓冲器106—TRl的输出端0相连;三态缓冲器106_TR1由小 数表决器105—TRl控制;前一级的大数表决器104—TRl输出端V与三 态缓冲器106—TRl的输入端I相连,同时也和小数表决器105JTR1的 输入端I—TR2相连;小数表决器105—TRl的输出端0作为三态缓冲器106一TR1的控制端T的输入信号,控制104—TR1的输出;小数表决器
105— TR1的另外两个输入端I一TR0和IJTR1分别与其他两个作用域 TR0和TR2的104—TRO的输出端V和104—TR2的输出端V相连;
工作域TR2输出端X—TR2不直接与104—TR2输出端V相连,而 是与三态缓冲器106—TR2的输出端0相连;三态缓冲器106—TR2由小 数表决器105一TR2控制;前一级的大数表决器104—TR2输出端V与三 态缓冲器106—TR2的输入端I相连,同时也和小数表决器105—TR2的 输入端I—TR2相连;小数表决器105—TR2的输出端0作为三态缓冲器
106— TR2的控制端T的输入信号,控制104—TR2的输出;小数表决器 105JTR2的另外两个输入端I—TRO和I_TR1分别与其他两个作用域 TRO和TR1的104—TRO的输出端V和104—TR1的输出端V相连。
所述的四种不同逻辑分类,其中所述非反馈逻辑IOI的两个输 入端IO、 Il分别与输入A、 B相连,非反馈逻辑101输出端0作为下 一级的驱动,连接到组合逻辑102的输入端II;所述反馈逻辑包括 组合逻辑102和时序单元103,时序单元103的输出端Q反馈到组合 逻辑102的输入端10,组合逻辑102的输出端0则连接到时序单元 103的输入端D构成反馈,时钟输入端CLK连接到时序单元103的时 钟输入端C;所述输出逻辑为X与时序单元103的输出端Q相连接。
基于上述三模冗余抗辐照方法,本发明提出了具有通用性的三模 冗余抗辐照软错误的算法,该算法对移位寄存器进行替换、寄存器进 行替换(包括触发器和锁存器)、高低电平的处理、名字一致性处理、 三模冗余电路、插入大数表决器和插入小数表决器,它的具体步骤如 下
① 读入用户设计电路网表;
② 移位寄存器替换;③ 寄存器替换;
④ 高低电平的处理;
⑤ 名字一致性处理;
⑥ 三模冗余电路;
⑦ 输出文件。
本发明的优越功效在于本发明针对四种类型逻辑分别提出不同 的三模冗余抗辐照处理方法,该处理方法是处理各种用户电路到商用 FPGA的一种普适性方法,既有广泛代表性,又有通用性,同时兼备 实用性。


图1是传统三模冗余方法的逻辑示意图2是大数表决器和逻辑功能真值表;
图3是传统三模冗余方法实现受SET干扰的逻辑示意图4是小数表决器和逻辑功能真值表;
图5是三模冗余前的逻辑示意图6是三模冗余后的逻辑示意图7是三模冗余输入或非反馈逻辑的逻辑示意图8是三模冗余反馈逻辑的逻辑示意图9是三模冗余输出逻辑的逻辑示意图。
具体实施例方式
请参阅附图所示,对本发明作进一步的描述。
本发明提供了一种商用现场可编程器件FPGA用于辐照环境下三 模冗余抗辐照方法,用户设计电路映射到商用FPGA芯片上分类成四种逻辑,分别为输入逻辑、非反馈逻辑、反馈逻辑和输出逻辑。针 对该四种不同逻辑分类,分别进行不同的三模冗余抗辐照处理。
图5中的用户设计电路(三模冗余前)四种逻辑分别为(1)输
入逻辑A、 B和CLK, (2)非反馈逻辑IOI, (3)反馈逻辑(包括组合 逻辑102和时序单元103)和(4)输出逻辑X。
图6为图5在三模冗余之后的逻辑示意图。
图7为三模冗余输入逻辑和非反馈逻辑部分。对所有输入端A、 B和CLK进行三模冗余复制,分别工作在三个不同工作域TRO, TR1 和TR2。工作域TRO对应输入端口则为A—TRO、 B—TRO和CLK—TRO;工 作域TR1对应输入端口则为A—TR1、 B—TR1和CLK—TR1;工作域TR2 对应输入端口则为A—TR2 、 B_TR2和CLK—TR2 。
对所有非反馈逻辑101进行三模冗余复制,分别工作在三个不同 工作域TRO, TR1和TR2。工作域TRO对应非反馈逻辑则为101_TR0; 工作域TR1对应非反馈逻辑则为101—TR1;工作域TR2对应非反馈逻 辑则为101—TR2。
图8为三模冗余反馈逻辑部分。对所有组合逻辑102和时序单元 103进行三模冗余复制,分别工作在三个不同工作域TRO, TR1和TR2。 工作域TRO对应组合逻辑102和时序单元103则为102_TR0和 103—TRO;工作域TR1对应组合逻辑102和时序单元103则为102—TR1 和103—TR1;工作域TR2对应组合逻辑102和时序单元103则为 102一TR2和既TR2。
工作域TRO的大数表决器104JTR0插在103—TRO输出端Q之后, 输入端TRO与103—TRO输出端Q相连接,大数表决器104_TR0输出端 V反馈到工作域TRO中的102—TRO的输入端10。大数表决器104_TR0 的另外两个输入端TR1和TR2分别与其他两个作用域TR1和TR2的103—TRl的输出端Q和103—TR2的输出端Q相连。
工作域TRl的大数表决器104—TRl和工作域TR2的大数表决器 104_TR2与工作域TRO的大数表决器104—TRO插入情况类似,也插入 在本工作域的103输出端Q之后,该工作域的大数表决器的输出端V 反馈到本工作域的102输入端10。
图9为三模冗余输出逻辑部分。对所有输出端X进行三模冗余复 制,分别工作在三个不同工作域TRO, TR1和TR2。工作域TRO对应 输出端口则为XJTRO;工作域TR1对应输出端口则为XJTR1;工作域 TR2对应输出端口则为X—TR2。
工作域TRO输出端X_TRO不直接与104—TRO输出端V相连,而是 与三态缓冲器106—TRO的输出端0相连。三态缓冲器106—TRO由小数 表决器105—TRO控制,图4描述了小数表决器和逻辑功能真值表信息。 前一级的大数表决器104—TRO输出端V与三态缓冲器106—TRO的输入 端I相连,同时也和小数表决器105—TRO的输入端I—TRO相连。小数 表决器105—TRO的输出端0作为三态缓冲器106_TR0的控制端T的输 入信号,控制104_TR0的输出。小数表决器105_TR0的另外两个输入 端I—TRl和I—TR2分别与其他两个作用域TRl和TR2的104—TRl的输 出端V和104—TR2的输出端V相连。
工作域TRl输出端X—TRl和工作域TR2输出端X—TR2与工作域 TRO输出端X—TRO连接情况类似,也是通过与各自的工作域的三态缓 冲器输出端相连,并在各自相对应的工作域插入小数表决器。
基于上述三模冗余抗辐照方法,本发明提出了具有通用性的三模 冗余抗辐照软错误的算法,该算法对移位寄存器进行替换、寄存器进 行替换(包括触发器和锁存器)、高低电平的处理、名字一致性处理、 三模冗余电路、插入大数表决器和插入小数表决器,它的具体步骤如② 移位寄存器替换综合工具会自动地把移位寄存器综合成采用一个LUT实现的器件,例如SRL16和SRL16E,这样的器件难以抵抗SEU效 应。根据移位寄存器的实现特点,采用LUT和触发器等器件,预先设 计好与SRL16等移位寄存器对应的移位寄存器,再把综合后的移位寄 存器的器件替换成与之对应预先设计好的移位寄存器;③ 寄存器替换考虑到SEU效应容易对综合中的形成的PULLUP器件 造成失效等原因,寄存器需进行替换。寄存器替换过程与替换移位寄 存器一致。也是预先设计好与之对应的寄存器器件,再把综合后网表 中的寄存器替换成与之对应预先设计好的寄存器;④ 高低电平的处理在FPGA芯片的结构中有很多高电平VCC和低电 平GND可以不通过外部互连线直接连接进位链的输入端,但是这些 VCC和GND也是非常容易受单粒子翻转问题干扰。另外,寄存器器件 在没有特别指定其是否有使能、置位复位信号时都采用默认的电平, 这也是非常容易受单粒子翻转问题干扰。故人为地加入了外接高低电 平,并且把这些原先采用默认的信号的端口也都连接到外接高低电平 上克服高低电平所引起的单粒子翻转问题;(D名字一致性处理由于输入网表可能是层次化的网表,在三倍冗余 电路执行前需对打平网表进行名字一致性处理,也是为三倍冗余电路 做准备;⑥三模冗余电路由于三倍冗余后电路的规模比三倍冗余之前的电路 至少大了两倍,再加上大数表决器的插入和在输出端需插入小数表决 器,整个电路的规模会非常大,因此合理地插入大数表决器,至关重 要,其不仅可以节省资源利用,还可以提高单粒子翻转的抵抗能力。把插入大数表决器的策略和插入大数表决器实施独立出来。首先遍历 网表,在需要插入大数表决器的器件进行标记,这一步完成后,在三 模冗余电路时,根据这些标记,进行大数表决器插入。这样的优点在于1)大数表决器的插入策略可以反复修正,2)同时可以有不同的 插入策略,都不影响整个三模冗余电路的复制过程。目前考虑到三模冗余后,布局布线的情况,采取以下策略只有 对有反馈回路的电路,进行插入大数表决器,而且只在该回路的第一 个寄存器输出端插入。小数表决器(Minority Voter),用LUT实现, 但不同于大数表决器,只在输出端前插入。输出管脚通过三态缓冲使 它保持在高阻状态,如果在输入和非反馈逻辑和反馈逻辑(状态器) 中,冗余的设计工作域之一可能错误,从而与其他两个设计工作域不 同,小数表决器通过对三个设计工作域的检测,该工作域的输出管脚 通过三态缓冲使它保持在高阻状态。而另外两个工作域继续操作正确 和驱动正确输出的芯片。 ⑦输出业界标准EDIF 2.0格式文件。
权利要求
1、一种商用现场可编程器件FPGA用于辐照环境下三模冗余抗辐照方法,其特征在于用户设计电路映射到商用FPGA芯片上分类成四种逻辑,分别为输入逻辑、非反馈逻辑、反馈逻辑和输出逻辑;针对该四种不同逻辑分类,分别进行不同的三模冗余抗辐照处理;A、所述的输入或非反馈逻辑类型的三模冗余抗辐照处理方法如下(1)对所有输入端A、B和CLK进行三模冗余复制,分别工作在三个不同工作域TR0,TR1和TR2;工作域TR0对应输入端口则为A_TR0、B_TR0和CLK_TR0;工作域TR1对应输入端口则为A_TR1、B_TR1和CLK_TR1;工作域TR2对应输入端口则为A_TR2、B_TR2和CLK_TR2;(2)对所有非反馈的逻辑单元进行三模冗余复制,分别工作在三个不同工作域TR0,TR1和TR2;工作域TR0对应非反馈的逻辑则为101_TR0;工作域TR1对应非反馈的逻辑则为101_TR1;工作域TR2对应非反馈的逻辑则为101_TR2;(3)对所有相关线网进行三模冗余复制但并不插入大数表决器,致使每个三模冗余的设计工作域独立运作;B、所述的反馈逻辑类型的三模冗余抗辐照处理方法如下1)对所有反馈逻辑的组合逻辑(102)和时序单元(103)进行三模冗余复制,分别工作在三个不同工作域TR0,TR1和TR2;工作域TR0对应组合逻辑和时序单元则为102_TR0和103_TR0;工作域TR1对应组合逻辑和时序单元则为102_TR1和103_TR1;工作域TR2对应组合逻辑和时序单元则为102_TR2和103_TR2;2)对所有相关线网进行三模冗余复制,致使每个三模冗余的设计工作域独立运作;除了对所有反馈的逻辑单元和线网进行三模冗余复制,还需在每个工作域一致的位置创建大数表决器并插入;大数表决器插入点在原设计反馈逻辑的时序单元(103)输出端Q对应的位置之后。3)工作域TR0的大数表决器104_TR0插在103_TR0输出端Q之后,大数表决器104_TR0输入端TR0与103_TR0输出端Q相连接,大数表决器104_TR0输出端V反馈到同一工作域TR0,并与102_TR0的输入端I0相连;大数表决器104_TR0的另外两个输入端TR1和TR2分别与其他两个作用域TR1和TR2的103_TR1的输出端Q和103_TR2的输出端Q相连;4)工作域TR1的大数表决器104_TR1插在103_TR1输出端Q之后,大数表决器104_TR1输入端TR1与103_TR1输出端Q相连接,大数表决器104_TR1输出端V反馈到同一工作域TR1,并与102_TR1的输入端I0相连;大数表决器104_TR1的另外两个输入端TR0和TR2分别与其他两个作用域TR0和TR2的103_TR0的输出端Q和103_TR2的输出端Q相连;5)工作域TR2的大数表决器104_TR2插在103_TR2输出端Q之后,大数表决器104_TR2输入端TR2与103_TR2输出端Q相连接,大数表决器104_TR2输出端V反馈到同一工作域TR2,并与102_TR2的输入端I0相连;大数表决器104_TR2的另外两个输入端TR0和TR1分别与其他两个作用域TR0和TR1的103_TR0的输出端Q和103_TR1的输出端Q相连;C、所述的输出逻辑的三模冗余抗辐照处理方法如下①对所有输出端X进行三模冗余复制,分别工作在三个不同工作域TR0,TR1和TR2;工作域TR0对应输出端口则为X_TR0;工作域TR1对应输出端口则为X_TR1;工作域TR2对应输出端口则为X_TR2;②工作域TR0输出端X_TR0不直接与104_TR0输出端V相连,而是与三态缓冲器106_TR0的输出端O相连;三态缓冲器106_TR0由小数表决器105_TR0控制;前一级的大数表决器104_TR0输出端V与三态缓冲器106_TR0的输入端I相连,同时也和小数表决器105_TR0的输入端I_TR0相连;小数表决器105_TR0的输出端O作为三态缓冲器106_TR0的控制端T的输入信号,控制104_TR0的输出;小数表决器105_TR0的另外两个输入端I_TR1和I_TR2分别与其他两个作用域TR1和TR2的104_TR1的输出端V和104_TR2的输出端V相连;③工作域TR1输出端X_TR1不直接与104_TR1输出端V相连,而是与三态缓冲器106_TR1的输出端O相连;三态缓冲器106_TR1由小数表决器105_TR1控制;前一级的大数表决器104_TR1输出端V与三态缓冲器106_TR1的输入端I相连,同时也和小数表决器105_TR1的输入端I_TR2相连;小数表决器105_TR1的输出端O作为三态缓冲器106_TR1的控制端T的输入信号,控制104_TR1的输出;小数表决器105_TR1的另外两个输入端I_TR0和I_TR1分别与其他两个作用域TR0和TR2的104_TR0的输出端V和104_TR2的输出端V相连;④工作域TR2输出端X_TR2不直接与104_TR2输出端V相连,而是与三态缓冲器106_TR2的输出端O相连;三态缓冲器106_TR2由小数表决器105_TR2控制;前一级的大数表决器104_TR2输出端V与三态缓冲器106_TR2的输入端I相连,同时也和小数表决器105_TR2的输入端I_TR2相连;小数表决器105_TR2的输出端O作为三态缓冲器106_TR2的控制端T的输入信号,控制104_TR2的输出;小数表决器105_TR2的另外两个输入端I_TR0和I_TR1分别与其他两个作用域TR0和TR1的104_TR0的输出端V和104_TR1的输出端V相连。
2、 按权利要求1所述的商用现场可编程器件FPGA用于辐照环境 下三模冗余抗辐照方法的通用算法,其特征在于该算法的步骤如下 所示① 读入用户设计电路网表;② 移位寄存器替换;③ 寄存器替换;④ 高低电平的处理;⑤ 名字一致性处理;⑥ 三模冗余电路;⑦ 输出文件。
3、 按权利要求1所述的商用现场可编程器件FPGA用于辐照环境 下三模冗余抗辐照方法,其特征在于所述的四种不同逻辑分类,其中所述非反馈逻辑(101)的两个输入端IO、 Il分别与输入A、 B 相连,非反馈逻辑(101)输出端0作为下一级的驱动,连接到组合逻辑(102)的输入端I1;所述反馈逻辑包括组合逻辑(102)和时序单元(103),时序单 元(103)的输出端Q反馈到组合逻辑(102)的输入端10,组合逻 辑(102)的输出端0则连接到时序单元(103)的输入端D构成反馈, 时钟输入端CLK连接到时序单元(103)的时钟输入端C;所述输出逻辑为X与时序单元(103)的输出端Q相连接。
全文摘要
本发明一种基于查找表结构商用现场可编程器件用于辐照环境下三模冗余抗辐照方法及其通用算法,为缓解商用FPGA芯片在辐照环境下因太空中辐照能量粒子造成编程点单粒子翻转问题。该方法根据用户电路逻辑类型进行分类,第一类为输入逻辑、第二类为非反馈逻辑、第三类为反馈逻辑、第四类为输出逻辑。本发明针对四种类型逻辑分别提出不同的三模冗余抗辐照处理方法。该方法是处理各种用户电路映射到商用FPGA的一种普适性方法。既有广泛代表性,又具有通用性,同时也兼备实用性。
文档编号G06F17/50GK101615211SQ20091005587
公开日2009年12月30日 申请日期2009年8月4日 优先权日2009年8月4日
发明者萌 杨, 童家榕, 邵海波 申请人:复旦大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1