新闻中心

EEPW首页 > EDA/PCB > 设计应用 > 基于动态可重构FPGA的容错技术研究

基于动态可重构FPGA的容错技术研究

作者:时间:2011-04-11来源:网络收藏

基于STARs的方法主要是针对永久性错误,包括配置存储器中的错误。STARs提供了一个相对于持续运行的工作区的离线区域。通过的边界检测接口可以使STAR中测试文件的配置动态进行而不影响系统工作。由于STARs的存在,工作区或者是连续的,或者是被STARs分割成不相连的区域,系统可以分别使用水平布线和垂直布线穿过V-STAR和H-STAR以实现通信。
这种方法采用了可编程逻辑块(PLB)重用技术。PLB重用是指以一种没有出错的模式来使用出错的PLB,即对在出故障的PLB中实现的功能来说这个PLB是没有出故障的。这有两种情况,一是故障PLB中的损坏部分并没有参与实现这个PLB内的功能单元,此时无需进行重新配置。第二种情况的一个简单例子是,当一个LUT的某个存储单元由于出错而固定置为0,且这个LUT用来实现一个组合逻辑,而此组合逻辑的这个存储单元恰要求被设置为0,那么这个错误就不需要进行冗余。由于PLBs的重用,冗余资源的利用率得到提高,量增大,系统寿命得到延长。另外这还使得损坏的PLB利用较远距离的冗余资源来重构而避开故障区的情况减少,所以,随着故障区增多,系统的时钟频率不会明显降低。
当STAR位置改变时,系统时钟必须停止以使STAR完成移动。系统时钟停止时,系统的工作状态必须被存储,并在系统时钟重新启动前被复制到新的工作区域。从STAR离开当前这个区域到下一次再检测这个区域的时间内,工作区电路可能出错,这个时间称为最坏的错误驻留时间。虽然基于STARs的方法,检测、诊断以及重构过程在理论上可以不影响系统工作,然而这也是它的缺点,不能对随时出现的错误进行。因此,必须考虑最坏的错误驻留时间,应该提高检测速度,而检测速度的提高会使STARs的移动速度提高。这导致检测区和工作区的交换频率增加,进而影响系统工作的连续性。
1.3 基于遗传算法及设计空间搜索的方法与分析
在重构容错的过程中,由于技术的多样性,同时会有多种可行的方案,而这很难通过人工来分析比较得到最优的解决方法。同时设计好的系统中必须有足够的存储量来存储针对不同故障的重构文件。因此文献提出了基于遗传算法的空间搜索技术。
首先用硬件设计语言描述系统功能,当设计完成后,对其实现功能进行分析并产生一个向量图,节点表示功能单元,有向线段代表他们之间的链接。同时,对源文件进行综合来识别其资源使用量(包括Slice数量,块RAN数量等)和各个功能单元的特征,最终形成一个功能单元库。这个库里面也包含一些标准器件和一些基本单元。另外在设计过程中还需要生成以下3个库:
器件特征库:存储对特征的描述,包括可用资源容量,基本重构单元大小,重构区域形状约束。
技术库:包含了部分重构技术的模型。
参数库:包含一些指导重构过程并衡量重构效果的参数。
系统工作时,先将原功能模块分成不同的组。然后根据参数要求在每一组内使用在技术库里选择的方法。遗传算法用来产生不同的可行的染色体,而染色体代表不同的处理方法。这种算法与TMR结合的例子如图4所示。

本文引用地址:http://www.eepw.com.cn/article/191243.htm

e.JPG

f.JPG


基于遗传算法的设计空间搜索方法需要设计者在前期作出大量工作,例如,遗传算法的设计,约束条件以及各库的形成。其中遗传算法的设计和参数设定是关键,同时系统需要较强的计算能力,系统开销较大。不过其所需配置文件存储量较小,解决方法多样,能产生出最优的解决方案。而且基于硬件遗传算法具有广阔的应用前景。

2 基于算法和资源多级分块的容错结构
2.1 方法的提出
动态容错粒度的选取是一个关键问题,如果粒度过小,则对错误的检测定位能力要求较高,而且配置文件复杂,如果在线生成配置文件,则需要较强的系统计算能力,这显然会增大系统的开销,破坏系统的连续性,而且布线复杂。如果粒度过大,那么冗余资源的利用率降低,配置文件增大,这削弱了系统的容错能力,且需要较大的存储资源。另外,对冗余资源比例的选择必须要考虑到系统布线难度,而布线所造成的延迟是不可预知的,所以系统工作频率也难以保证。上面这几种方法粒度水平不易改变,布线难度大,系统时钟性能不高,而且后两种实现难度较大。
现在采取算法和资源多级分块的方法进行系统的容错。可以在不更改方法的情况下,通过对算法和资源不同次数、不同大小的划分达到不同的粒度水平,进而满足容错需要。因为以算法模块为单位进行重构,且保证重构前后模块之间接口不变,那么模块外部无需重新布线,这样就削减了容错时系统开销,不会降低时钟频率。



评论


相关推荐

技术专区

关闭