新闻中心

EEPW首页 > 嵌入式系统 > 设计应用 > 基于FPGA动态可重构技术的二模冗余MIPS处理器

基于FPGA动态可重构技术的二模冗余MIPS处理器

作者:何凯成 施慧彬时间:2014-02-14来源:摘自《电子发烧友》收藏

  ERR_VERIF 模块的故障分析方法为比较法。它将执行同样指令且同步运行的两个子系统的执行结果进行比较,当发现结果不一致时,就表示其中一个子系统出现了故障,这时需要使用模块去主动定位故障位置。而进行故障分析的方法与ERR_VERIF模块使用的方法本质上是相同的,但是实现方式不同。模块将被测试模块产生的输出与BIST内部存储好的预期的输出进行比较,来测试被测模块是否出现故障。

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

  检测出的故障情况有3 种:主子系统故障、备份子系统工作正常;主子系统正常、备份子系统故障;主系统子系统和备份子系统均出错。BIST模块检测出故障情况后,会将故障情况显示于故障灯(也就是A、B、C)上。当3个故障灯中有灯亮时,则表示系统出现故障。灯A、B亮,表示主子系统出现故障;灯A、C亮,表示备份子系统出现故障;灯A、B、C亮,表示两子系统均出现了故障。在出现故障后,系统会根据具体情况,对系统输出进行调整。当主子系统出现故障而备份子系统未出现故障时,系统输出则来自备份子系统;当备份子系统出现故障而主子系统未出现故障,系统输出则来自主子系统。当两子系统都出现了问题时,则需要停机维护。当其中一个子系统出现故障时,需要将无故障的子系统比特流重新下载入系统中。在下载时,系统的工作无需停止。

  3 内建自测试技术与BIST结构分析

  内建自测试技术(Build?in Self Test,BIST)是指在设计电路时,为了及时监测系统的状态,而设计一部分自测试电路来测试电路运行是否正常。BIST系统主要组成部分有测试向量生成、测试输入隔离、输出结果反馈分析和测试控制等,如图2(a)所示。

  测试向量生成部分用于产生要输入到被测模块的测试向量,测试向量的生成含有两部分:测试输入的生成和测试结果的生成。测试输入用于作为被测电路的数据输入,而测试结果则用于对反馈结果的分析。测试输入隔离部分用于将BIST模块的测试向量输入和正常输入相分离。输出结果反馈分析部分用于分析被测电路中输出结果的正确性,并向外输出电路故障信息。

  只用一组测试向量对电路故障进行测试将不具有可信度,所以在BIST技术中,通常需要使用多组测试向量对被测电路进行测试,因此在测试时需要一定的时序控制机制,测试控制部分用于完成测试的时序逻辑的控制。

  图 2(b)为系统中的BIST模块的详细结构图。其中“自测试向量Memory”和“自测试结果Memory”的功能相当于图2(a)中测试向量生成器的功能,“自测试向量Memory”用于存放测试输入向量,“自测试结果Memory”用于存放测试对比结果。而“时序控制FSM”用于对测试时序的控制,包括测试向量地址生成、测试结果地址生成和测试输入隔离控制等。“结果比对器”用于将实时输出结果与“自测试结果Memory”单元的输出结果进行比较。“结果分析输出”单元是一个状态机,将根据“结果比对器”的输入来进行状态转换。图3为具体的时序控制状态机。

  4 系统测试与分析

  二模冗余系统的内建自测试中一共测试了6条指令。由于在实验中无法模拟出系统出现随机错误的情况,故测试时在电路中设置了一个人为出错的控制电路来产生系统故障。实验结果证明当二模系统出现故障时,BIST会自动启动去检测系统故障位置。当系统出现故障时,通过对出错部分的重新配置,可以使得系统恢复正常。

  结语

  本文根据动态部分重构技术、二模冗余技术,设计了一个基于二模冗余的处理器系统,系统可以对系统错误进行自行检测和错误自行定位,经测试系统可以正常运行。本系统下一步的工作是进一步完善故障自检测系统和设计故障的自修复系统。

存储器相关文章:存储器原理



上一页 1 2 下一页

关键词: FPGA SRAM MIPS 存储器 BIST

评论


相关推荐

技术专区

关闭