0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于演化硬件技术的内进化容错模型设计与可靠性研究分析

电子设计 来源:郭婷 作者:电子设计 2018-12-04 09:15 次阅读

引言

进化硬件(Evolution Hardware,EHW)指的是仿照自然界中以碳为基的生物进化过程,在现有的FPGA芯片基础上实现可控的“硅基进化”.进化硬件实际上是一种特殊硬件,它可以像生物一样具有自适应、自组织、自修复特性,从而可以根据使用环境的变化而改变自身的结构以适应其生存环境。进化硬件除了能够生成具有新功能的电路以外,还可用于减少故障的发生,获得容错的功能,从而提高电路可靠性。

1 内进化容错模型

通过在FPGA内部构建运算进化算法的MicroblazeCPU,把决定电路结构和功能的二进制配置位串作为染色体,通过对实际硬件的配置和测试来加速适应度评估过程。将其进化结果直接用于可重配置电路,以便获得具备预期功能的实际硬件。内进化设计的方式更充分地利用了可编程器件的芯片资源和可重构特性。由于将进化硬件特有的快速进化和硬件可重配置结构与FPGA内部算法运行和下载的内进化模式相结合,即可获得具有实时、自适应、容错能力的理想硬件特性。如图1所示。

基于演化硬件技术的内进化容错模型设计与可靠性研究分析

从图1可以发现在FPGA 内部主要分为两个区域:

Microblaze CPU和可重配置阵列。图中的MicroblazeCPU 是基于XILINX 公司FPGA 的微处理器IP 核,和其他外设IP 核一起,可以完成可编程系统芯片(SoPC)的设计。Microblaze是一个高度灵活可以配置的软核,可以根据设计的需要,对Microblaze 进行裁减,用最少的资源完成设计的需要。可重配置阵列由可编程单元组成,其规模根据电路的复杂程度和功能需求设定。其中最基本单元是可编程单元(Programmable Element,PE),由配置寄存器、多路选择器和基本逻辑运算单元组成。

在系统工作时,Microblaze CPU通过数据控制通道配置可重配置阵列,配置完成后可重配置阵列单独工作。

如果嵌入该模型的FPGA 工作环境或功能要求发生了变化,只需重新启动上述进化过程,针对新的设计目标和内、外部条件重新进行搜索,便可获得新的配置位串和预期电路功能,即实现硬件自适应。同样,如果硬件电路本身出现了局部故障但存在预留的资源冗余,重新执行上述进化过程后也有望避开故障区域,重新获得预期的电路功能。

2 具体实现

2.1 算法流程

由于遗传算法模拟了自然选择和自然遗传过程中发生的繁殖、杂交和突变现象。因此将遗传算法作为演化算法。在求解问题时,问题的每个可能的解都被编码成一个“染色体”,即个体,若干个个体构成了群体。在遗传算法开始时,随机地产生初始个体群,根据预定的目标函数对每个个体进行评价,给出了一个适应度值。

基于此适应度值,选择个体用来复制下一代。选择操作体现了“适者生存”原理,“好”的个体被选择用来复制,而“坏”的个体则被淘汰。然后选择出来的个体经过交叉和变异算子进行再组合生成新的一代。这一群新个体由于继承了上一代的一些优良性状,因而在性能上要优于上一代,这样逐步朝着更优解的方向进化。演化算法的基本流程如图2所示。

基于演化硬件技术的内进化容错模型设计与可靠性研究分析

2.2 遗传算子设计

(1)转盘赌选择,即个体的选择概率pi 等于其适应度值在所有个体的适应度值之和中占的比例。首先先计算个体的相对适应值记为pi,然后根据选择概率{pi ,i=1,2,…,N}把一个圆盘分成N 份,其中第i 扇形的中心角为2πpi.在进行选择时,先生成一个[0,1]内的随机数r,若p0+p1+…+pi-1

(2)交叉运算,是指对两个相互配对的染色体按某种方式相互交换其部分基因,从而形成两个新的个体。

交叉运算是遗传算法区别于其他进化算法的重要特征,它在遗传算法中起着关键作用,是产生新个体的主要方法。本设计采取单点式交叉方法,即随机的在两个父串上选择一个杂交点,然后交换这两个串的对应的子串。

(3)变异运算,是指将个体染色体编码串中的某些基因座上的基因值用该基因座的其他等位基因来替换,从而形成一个新的个体。

2.3 适应度评估

内部演化将遗传算法每一代产生的每一条染色体都实际下载到器件中,并对每一种电路结构的输出直接进行评判。内部演化评估速度快,并可利用器件的实际特性实现系统动态重构。适应度的计算方式为给一个输入矩阵,读取输出矩阵,如果和希望的标准矩阵一致则“适应度”加1.其数学表达式为:

基于演化硬件技术的内进化容错模型设计与可靠性研究分析

式中:X为该个体对应的输出矩阵;M为标准输出矩阵。

3 故障容错实验与冗余可靠性分析

3.1 实验条件

采用Schwefel 的(1+λ)-ES 演化策略[7].程序参数为:最大适应度值12,种群规模10,变异率0.02,交叉率0.3,最大演化代数100 000.根据第一列PE 单元的损伤数目设计7种不同的故障模式,每种故障采用100个不同的随机数种子。应用数理统计的方法,每种故障模式采用100个样本。在规模为8×4个PE单元的可重配置阵列中,进行了第一列PE单元逻辑门损坏和容错实验。模拟文献[6]中提到数字电路中常见的SA故障,SA故障指的是无论对于何种输入,节点的输出固定为某一逻辑值。

3.2 实验结论

记PEi为第一列PE损伤数为i(i<7)的故障模式,试验结果如表1所示。

基于演化硬件技术的内进化容错模型设计与可靠性研究分析

针对SA-0错误,通过Microblaze CPU对可重配置阵列进行演化在十万代内均能找到正确的解(PEi(i<6)),成功证明了该算法良好的容错特性,在电路设计方面有效改善了传统电路设计中一次设计终身定型的弊端,使电路在遇到故障时可以避开故障单元,实现功能自修复。

3.3 冗余可靠性分析

图3 所示为演化电机的3 输入2 输出换向电路,分别计算两种不同电路的可靠性。

基于演化硬件技术的内进化容错模型设计与可靠性研究分析

由于设计只使用了基本的逻辑单元如与门、或门、与非门和或非门,得到演化方法设计电路可靠性概率pe为:

基于演化硬件技术的内进化容错模型设计与可靠性研究分析

pe 和pn 概率如图4所示,虚线表示传统电路设计方法生成的电路的故障率,实线表示冗余电路利用演化算法生成电路的故障率。可以看出,当p∈(0,0.5)时pe>pn,即动态可重构冗余电路具有更高的可靠性。

基于演化硬件技术的内进化容错模型设计与可靠性研究分析

4 结语

本文通过在FPGA内部集成Microblaze CPU和可重配置阵列的方式,实现了基于内进化方式容错模型。针对SA 故障进行了容错实验,证明该模型具有良好的故障容错能力,为获得具有实时、自适应、容错能力的理想硬件特性提供了新的技术途径。建立了电路可靠性的概率分析模型,并且针对本试验中的具体电路分析了冗余方法结合演化算法设计电路和传统方法设计电路的出错概率,证明了前者具有更高的可靠性。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • FPGA
    +关注

    关注

    1625

    文章

    21664

    浏览量

    601679
  • 芯片
    +关注

    关注

    453

    文章

    50366

    浏览量

    421656
  • cpu
    cpu
    +关注

    关注

    68

    文章

    10824

    浏览量

    211100
  • 微处理器
    +关注

    关注

    11

    文章

    2247

    浏览量

    82307
收藏 人收藏

    评论

    相关推荐

    可靠性技术可靠性检验职业资格取证

    模型;6.3 器件对系统失效率的影响要素;6.4 电子产品可靠性与器件的关系;6.5 工作环境条件的确定;6.6 系统设计与微观设计的区别;6.7 过程审查与测试;6.8 设计规范与技术标准;6.9
    发表于 08-27 08:25

    可靠性工程技术简介

    分析系指产品失效后,通过对产品及其结构、使用和技术文件的系统研究,从而鉴别失效模式,确定失效原因、机理和失效演变的过程。 失效分析和失效物理研究
    发表于 11-24 16:28

    基于Multisim 10的电子电路可靠性研究

    基于Multisim 10的电子电路可靠性研究利用Multisim 10平台进行电子电路设计的可靠性研究,可以有效地解决传统分析方法难以对电
    发表于 07-20 09:39

    可靠性是什么?

    设计(使用冗余技术),使用故障诊断技术等。可靠性主要包括电路可靠性及元器件的选型有必要时用一定仪器检测。可靠性试验是对产品进行
    发表于 08-04 11:04

    硬件电路的可靠性

    我想问一下高速电路设计,是不是只要做好电源完整分析和信号完整分析,就可以保证系统的稳定了。要想达到高的可靠性,要做好哪些工作啊?在网上找
    发表于 10-23 14:47

    可靠性分析第一步】构造可靠性模型

    对系统的影响,可以通过几种可靠性模型获得。   构造系统的可靠性模型时,首先应该明确的是系统的可靠性框图与系统的功能
    发表于 09-03 15:47

    可靠性设计分析系统

    (故障树分析)、容差分析(含最坏情况仿真分析,SPICE模型)、降额设计分析(兼容ECSS标准和GJB35)、
    发表于 12-08 10:47

    可靠性与失效分析

    和电子辅料等可靠性应用场景方面具有专业的检测、分析和试验能力,可为各研究院所、高校、企业提供产品的可靠性检测、失效分析、老化测试等一体化服务
    发表于 06-04 16:13

    缺陷成团对FPGA片冗余容错电路可靠性的影响是什么?

    缺陷成团对FPGA片冗余容错电路可靠性的影响是什么?缺陷成团对冗余容错电路可靠性的影响是什么?
    发表于 04-08 06:50

    软件无线电(N+M)容错系统可靠性研究The Availab

    软件无线电是目前通信领域研究的热点问题之一,本文对软件无线电的特点进行分析,提出了考虑主备切换的软件无线电(N+M)容错系统可靠性模型,给出
    发表于 05-25 16:53 19次下载

    基于灰色神经网络对软件可靠性模型研究

    软件可靠性是软件工程的一个重要的研究课题。软件可靠性模型可以预测软件产品的缺陷累计率,通过理论分析和预测实验表明,该方法是可行的
    发表于 05-25 17:14 32次下载
    基于灰色神经网络对软件<b class='flag-5'>可靠性</b><b class='flag-5'>模型</b>的<b class='flag-5'>研究</b>

    基于演化硬件的多目标进化算法的研究

    基于演化硬件的多目标进化算法的研究
    发表于 01-08 14:47 0次下载

    基于软件可靠性增长模型研究

    软件可靠性增长模型SRGM(software reliability and growth model)是目前建模可靠性及其过程提高的重要数学工具,对可靠性的评测、保证以及测试资源管控
    发表于 12-26 17:15 0次下载

    嵌入式系统硬件可靠性分析

    嵌入式系统硬件可靠性是十分重要的,它直接关系到嵌入式系统的质量和寿命。为了对嵌入式系统的硬件可靠性进行分析,利用Copula方法从
    发表于 01-17 13:46 1次下载
    嵌入式系统<b class='flag-5'>硬件</b><b class='flag-5'>可靠性分析</b>

    主动容错技术如何提高存储系统的可靠性详细算法模型资料说明

    除了传统的冗余机制,主动容错技术也被用来提高存储系统的可靠性。然而,当前对主动容错云存储系统可靠性研究
    发表于 01-03 14:16 9次下载
    主动<b class='flag-5'>容错</b><b class='flag-5'>技术</b>如何提高存储系统的<b class='flag-5'>可靠性</b>详细算法<b class='flag-5'>模型</b>资料说明