基于动态重构技术的FPGA电路容错性能评估系统

基于动态重构技术的FPGA电路容错性能评估系统,第1张

1.背景介绍

空间辐射环境中的高能带电粒子入射到半导体器件的特定区域有可能会引起单粒子效应,从宏观角度看,FPGA的配置存储器中该单元存储的信息由“1”变成了“0”,即出现了存储状态的翻转。美国Los Alamos国家实验室、Brigham Young大学和Xilinx公司对FPGA的单粒子效应进行了多次实验,得出了:单粒子效应引起的FPGA故障多数是由配置存储器发生单粒子翻转引起的。

针对FPGA内部的单粒子效应故障,研究者们提出了相应的检测与加固设计方法,如三模冗余(TMR)设计、两模块冗余(DMR)设计、时间三模冗余(TTMR)设计、状态机状态编码加固设计、运算单元的结果校验等多种方法。这些方法从逻辑设计方面提高了FPGA抗单粒子效应的能力。

基于动态重构技术的FPGA电路容错性能评估系统,基于动态重构技术的FPGA电路容错性能评估系统,第2张

 

本文作者在项目实践中对于系统可靠性设计方面采用过三模冗余、纠错编码等加固措施。这些加固方法带来了系统资源占用率的上升和运算速度的降低,但是其对于抗单粒子翻转性能的提升程度却难以通过简单方法获得,因此需要一种验证方法对其加固效果做出客观评估,需要一个测试系统来完成具有充足覆盖率的自动化大规模测试。本文所描述的基于动态重构技术的FPGA电路容错性能评估系统即在此需求下设计完成的。

2.动态重配置技术简介

FPGA的“动态可重配置” ,是指在系统运行期间,随时可以通过对FPGA的重新配置来改变其逻辑功能,而且并不影响系统的正常运行, FPGA逻辑功能的改变在时间上保持动态连续。由此可见, FPGA的动态可重配置不仅可以改变而且能够动态地改变数字逻辑系统的功能,与静态可重配置相比, FPGA的动态可重配置有着更广阔的应用前景。

如图2.1所示,有两种途径可以实现动态重配置:(1) 依靠JTAG、SlectMAP等外部配置端口进行配置,这种方式的重配置依靠FPGA外部芯片或者上位机系统;(2) 依靠内部端口(ICAP)完成对配置寄存器,由FPGA内部产生配置指令,完成对FPGA动态区域的重新配置。

2.1内部配置访问端口
内部配置访问端口(Internal ConfiguraTIon Access Port, ICAP)是FPGA内部配置寄存器的访问端口,为动态重构技术在片上可编程系统的应用提供了基本条件。在嵌入式的微处理器或其他用户逻辑控制下,从PC或者片上存储器中读取配置数据写入该ICAP接口即可完成芯片的动态重构。ICAP用于动态局部自重构,它是FPGA内部单元的入口,用户可通过ICAP访问配置寄存器。ICAP与SelectMAP工作方式相同,但不同于SelectMAP的双向数据总线,ICAP提供专门的读/写总线,总线宽度可以通过设置参数ICAP_WIDTH来确定,有三种可选的数据宽度:8位、16位和32位。

基于动态重构技术的FPGA电路容错性能评估系统,基于动态重构技术的FPGA电路容错性能评估系统,第3张

 

基于动态重构技术的FPGA电路容错性能评估系统,基于动态重构技术的FPGA电路容错性能评估系统,第4张

 

2.2配置信息写入与回读
配置信息写入的过程即是按照配置命令将数据写入配置寄存器,写入配置信息就是完成FPGA的完整配置或重配置。写入过程是通过发送包数据到帧输入寄存器(Frame Data Register Input, FDRI)来实现的,写入过程包括写命令字、写数据。

配置信息回读是通过配置端口将FPGA内部配置存储器中的数据读出的过程。回读过程可以读出CLB、IOB的寄存器、FPGA内部存储器的当前状态以及布线资源的配置情况等,而且可以通过对回读数据的校验来检验当前配置数据的正确性。本文设计的系统通过回读将待测系统的配置信息读入存储器,在此配置信息基础上注入错误后写回到配置存储器以实现故障模拟。

回读过程是通过发送命令从帧输出寄存器(Frame Data Register Output, FDRO)中读取数据包来实现的。回读过程分为写 *** 作命令、读取数据和恢复现场三部分。每一帧的回读数据内容都决定着与其相应的物理排列的FPGA功能模块的功能逻辑.

3.基于动态重构技术的FPGA电路容错性能评估系统的实现

本系统结构如图3.1所示,分为上位机控制模块、Micro Blaze模块、配置信息读写模块、激励产生与测试数据收集模块。其中上位机模块提供用户交互界面,可对模拟粒子量、测试循环等参数进行配置,与测试平台之间依靠TCP/IP协议通信。在动态重构技术支持下,测试平台只需在一片FPGA内即可实现。为了与上位机实现TCP/IP通信,测试平台内嵌了Micro Blaze处理器。Micro Blaze处理器模块获取上位机指令并翻译成逻辑时序通过GPIO发送至平台的逻辑部分。逻辑部分包含了配置信息读写、待测模块激励生成和数据收集等功能。下面将分别详细介绍上位机控制程序、Micro Blaze模块和逻辑部分的实现。

基于动态重构技术的FPGA电路容错性能评估系统,基于动态重构技术的FPGA电路容错性能评估系统,第5张

 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/dianzi/2608958.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-10
下一篇 2022-08-10

发表评论

登录后才能评论

评论列表(0条)

保存