第 1 章 绪论
1.1 论文的研究背景及意义
人们对电子产品的需求愈来愈大,产品性能千差万别,种类日益繁多。随着电子计算机技术的日益发展,电子产品逐步呈现并渗透到生活的方方面面,社会众多领域随处可见,而且产品性能不断提高,功能日益完备。电子计算机技术取得的辉煌成就应归功于生产制造技术制作工艺的逐步精湛以及系统设计自动化技术的发展。电子设计自动化(Electronic Design Automation,EDA)技术在推动了信息化时代发展的同时,局限了电子计算机技术的发展,它在计算机的支持下,设计可编程逻辑器件和演化硬件,构成专用集成电路(Application Specific Intgrated Circuits,ASIC),实现电子产品自动化。EDA 的单调重复工作对于微型化来说,在满足低功耗的同时也增加了系统设计的复杂度、降低了可靠性;从智能化方面,EDA 具有模块化设计方法的特点,它的内部结构和功能不会根据外部环境的变化而改变,不存在自组织、自适应和自修复能力,从而对于设计智能化系统存在困难。
自然界生物种群具有强大的自学习、自演化、自适应和自修复能力,根据生物在生存繁衍的过程,将演化的思想引入电子系统的设计中,使其具有和生物体一样的特性,从而开辟一个新领域——演化硬件(Evolvable Hardware,EHW)[2]。EHW的研究主要从进化型设计和容错两方面展开。前者是按照设计需求,进行算法设计,找寻最优方案,得到满足设计要求的电子电路结构;容错是对设计出的系统进行自容错,使其可以在航空航天、地质勘测、军用设备等恶劣条件下,能够通过自适应与容错技术实现对故障的自修复。现今的电子设备一方面面临着 ASIC 只能够解决某一种特定的需求,随着市场需求的改变,产品更新换代的速度加快,造成资源的严重浪费;另一方面,在极端恶劣环境下工作,系统部件会受温度、辐射、压力等外部因素干扰,出现故障。EHW 与 EDA 技术相反,它不受固有思维的影响和限制,可以更广阔的搜索符合要求的结构。演化硬件就是将进化算法和可编程逻辑器件相结合,具有了类似生物体生存繁衍的能力,能够根据外界条件(如强电磁、高空、深海等)的变化依据自身的结构来适应,具有自组织、自修复、强容错的能力[3,4]。当外界环境(如温度、辐射、压力)等发生变化时,系统可能发生故障,EHW 能够自动检测系统故障并调整,恢复系统的正常运行。
..........................
1.2 国内外研究现状及发展趋势
从 20 世纪 90 年代演化硬件被提出至今,研究工作者对电路系统设计的研究从未间断,随着科学的日益进步,对电路的复杂性、可行性、稳定性的要求越来越高。在二三十年的发展历程中,取得了许多重要成果并获得实际应用,实现了理论与实践的结合[5,6]。通过学习,发现演化硬件的发展推动着社会的进步,在载人宇宙飞船、探月工程、未来火星探测计划等发展有着至关重要作用。进化算法在设计过程中有着举足轻重的作用,容错性能分析是电路设计中必不可少的环节。因此,通过对从国外到国内的发展轨迹,对演化硬件、进化算法、容错技术进行介绍。
1.2.1 演化硬件技术
3.1 进化算法概述····························191.2 国内外研究现状及发展趋势
从 20 世纪 90 年代演化硬件被提出至今,研究工作者对电路系统设计的研究从未间断,随着科学的日益进步,对电路的复杂性、可行性、稳定性的要求越来越高。在二三十年的发展历程中,取得了许多重要成果并获得实际应用,实现了理论与实践的结合[5,6]。通过学习,发现演化硬件的发展推动着社会的进步,在载人宇宙飞船、探月工程、未来火星探测计划等发展有着至关重要作用。进化算法在设计过程中有着举足轻重的作用,容错性能分析是电路设计中必不可少的环节。因此,通过对从国外到国内的发展轨迹,对演化硬件、进化算法、容错技术进行介绍。
1.2.1 演化硬件技术
二十世纪九十年代演化硬件被提出,至今历经二十多年,电路系统设计一直是研究的重点和难点,面对着经济生活水平的提高和社会需求的增加,传统电子设备逐渐不能满足需求,故障一旦发生无法完成修复,因此需要设计出具有高稳定、强修复力的电子电路系统。演化硬件的研究能够扩大设计要求的控件搜索能力,如果仅仅通过人工进行设计,在设计过程中会受到设计者自身已有经验和知识的影响,
造成设计思路被局限,利用演化硬件能够避免上述限制,从多角度多方面进行寻找,通过不断进化达到目标性能的要求。并且在设计过程中不要设计者具备一定的专业知识,从而减少了工作人员的限制,从侧面来看减少了经费的消耗。从早期的欧洲、日本、英国等国家逐步对 EHW 进行扩展性研究,到现在加拿大、墨西哥、中国等众多国家在 EHW 科研上所取得的丰厚研究成果,彰显出来科学研究工作者对演化硬件所作出的贡献。在探索过程当中,对算法的优化和提升、软件的仿真、演化电路的设计、自修复自容错技术等展开研究,并且我国研究相较于西方国家研究开始时间较迟且主要集中于理论研究和仿真技术。
从演化设计方法出发,英国萨塞克斯大学的 Thompson 成功的演化出音频分类器,并指出进化设计不需要关于目标电路的先验知识,而且可以探索比人工设计方法更广泛的设计领域[7]。Koza 基于遗传编程设计了一系列外部进化的模拟电路,Miller 和 Cheang 等对数字电路展开研究,实验证明了演化电路在逻辑门数、逻辑延迟等方面优于人工设计电路。国内武汉大学康立山教授从 GAL 门级、函数级方面展开对数字电路进化的研究[12]。西安电子科技大学的赵曙光等研究编码方案、模拟电路和数字电路的演化设计方法[13~15]。中国科学技术大学何劲松从编码方式、电路设计、异构冗余容错方面等进行研究,从而提高系统的鲁棒性。南京航空航天大学王友仁不仅通过模拟常用信号对电路进行研究,还对数字电路的编码、进化算法、适应度计算等进行探索。
..........................
第 2 章 演化硬件及电路进化模型
2.1 演化硬件概述
演化硬件的发展就是以进化算法所拥有的寻优能力作为理论依据,利用可编程器件实现电路的评估,进而将两者融合完成电路结构的优化[56]。利用演化硬件实现基本性能并具备自组织、自修复特性的电路结构是演化电路的主要目的,电路进化技术是实现演化电路的基础和核心内容。演化硬件是通过模拟生物适应外界条件的过程,对自身的结构进行改变,传递到下一代完成进化的过程。EHW 最大的研究价值在于能够通过外部环境的改变而动态的调整结构,从而加快程序的执行速度。它在众多研究领域(计算机科学、生物科学、电子工程科学等)获得广泛应用。
演化硬件具备利用自身进化过程完成组织、通过环境改变更改系统结构、采用硬件进化实施系统可靠性与稳定性维护及设备修复的能力。EHW 还可以通过控制遗传算子(选择、交叉、变异)掌握进化的搜索方向和速度,从而寻找到最佳的系统结构,说明了演化硬件的智能性。EHW 在进化过程中具有并行性,主要体现在种群中的染色体在多个区域同时进行演化,寻找最优解;另外,利用计算机并行设计方法,能够加快计算速度,减短进化周期。
模拟电路主要是由电容、电阻、电感等元件组成,数字电路是由基本的逻辑门控件(与门、非门等)构成,这是根据设计目标不同构建的两种不同演化电路的方式。根据级别不同可以分为元件级演化、电路级演化和系统级演化,元件级演化是指演化出一个最佳的元件满足设计要求;电路级和系统级演化是指利用演化得到一个符合设计要求的电路结构和系统。
图 2-1 是演化硬件根据进化方式不同而呈现的两种进化方法。外部进化在整个电路进化的过程中,不是通过真实的电路进行测试而是将其通过染色体的形式对内部基因进行解析,是在软件平台上进行仿真测试,并进行适应度评估。它具有运算量大、耗时多、反映灵活的特点。内部进化是在进化进行过程中逐步将其适合的个体染色体进行配置到实际硬件系统,也就是说在利用电路真实的进行性能评估。它解码的是每个个体的代码串,然后转换为对应电路结构并重构真实的电路,从而进行测试分析,适应度评估。内部进化方法反复使用重构,这个过程会对硬件结构产生一定程度的资源浪费和损伤,但它评估速度较快,可以用于数字电路进化设计。外部进化相较内部进化来说,不需要使用硬件资源,减少了对硬件结构的损坏程度,降低了成本,操作简单方便。

...........................
..........................
第 2 章 演化硬件及电路进化模型
2.1 演化硬件概述
演化硬件的发展就是以进化算法所拥有的寻优能力作为理论依据,利用可编程器件实现电路的评估,进而将两者融合完成电路结构的优化[56]。利用演化硬件实现基本性能并具备自组织、自修复特性的电路结构是演化电路的主要目的,电路进化技术是实现演化电路的基础和核心内容。演化硬件是通过模拟生物适应外界条件的过程,对自身的结构进行改变,传递到下一代完成进化的过程。EHW 最大的研究价值在于能够通过外部环境的改变而动态的调整结构,从而加快程序的执行速度。它在众多研究领域(计算机科学、生物科学、电子工程科学等)获得广泛应用。
演化硬件具备利用自身进化过程完成组织、通过环境改变更改系统结构、采用硬件进化实施系统可靠性与稳定性维护及设备修复的能力。EHW 还可以通过控制遗传算子(选择、交叉、变异)掌握进化的搜索方向和速度,从而寻找到最佳的系统结构,说明了演化硬件的智能性。EHW 在进化过程中具有并行性,主要体现在种群中的染色体在多个区域同时进行演化,寻找最优解;另外,利用计算机并行设计方法,能够加快计算速度,减短进化周期。
模拟电路主要是由电容、电阻、电感等元件组成,数字电路是由基本的逻辑门控件(与门、非门等)构成,这是根据设计目标不同构建的两种不同演化电路的方式。根据级别不同可以分为元件级演化、电路级演化和系统级演化,元件级演化是指演化出一个最佳的元件满足设计要求;电路级和系统级演化是指利用演化得到一个符合设计要求的电路结构和系统。
图 2-1 是演化硬件根据进化方式不同而呈现的两种进化方法。外部进化在整个电路进化的过程中,不是通过真实的电路进行测试而是将其通过染色体的形式对内部基因进行解析,是在软件平台上进行仿真测试,并进行适应度评估。它具有运算量大、耗时多、反映灵活的特点。内部进化是在进化进行过程中逐步将其适合的个体染色体进行配置到实际硬件系统,也就是说在利用电路真实的进行性能评估。它解码的是每个个体的代码串,然后转换为对应电路结构并重构真实的电路,从而进行测试分析,适应度评估。内部进化方法反复使用重构,这个过程会对硬件结构产生一定程度的资源浪费和损伤,但它评估速度较快,可以用于数字电路进化设计。外部进化相较内部进化来说,不需要使用硬件资源,减少了对硬件结构的损坏程度,降低了成本,操作简单方便。

...........................
2.2 电路进化工作原理
电路进化设计主要是把遗传算法的优化、全局搜索特性,加之可编程器件,在外部条件干扰的情况下,采取进化方式构建电路系统结构。以演化硬件为理论基础的进化算法,将基因作为演化硬件的最基本信息元素,染色体是带有问题特征的电路结构,个体适应度相当于问题的目标函数,通过模拟生物进化规律、搜索全局优化方法,寻找满足要求的电路编码,构建电路结构。编码是将电路结构问题以染色体编码的形式表达,不用的编码方式对于问题解决的方法、算法的复杂性等可能产生一定程度的影响。适应度评估是驱动演化过程的动力,是衡量优化程度的标准,是引导进化算法的操作。遗传算法中主要包含三种遗传算子,即选择(Selection)、交叉(Crossover)、变异(Mutation),电路进化执行过程重要通过对参数(种群规模、最大迭代次数、交叉概率、变异概率等)的控制,实现对硬件电路的演化。其主要流程如图 2-2 所示。
电路进化设计主要是把遗传算法的优化、全局搜索特性,加之可编程器件,在外部条件干扰的情况下,采取进化方式构建电路系统结构。以演化硬件为理论基础的进化算法,将基因作为演化硬件的最基本信息元素,染色体是带有问题特征的电路结构,个体适应度相当于问题的目标函数,通过模拟生物进化规律、搜索全局优化方法,寻找满足要求的电路编码,构建电路结构。编码是将电路结构问题以染色体编码的形式表达,不用的编码方式对于问题解决的方法、算法的复杂性等可能产生一定程度的影响。适应度评估是驱动演化过程的动力,是衡量优化程度的标准,是引导进化算法的操作。遗传算法中主要包含三种遗传算子,即选择(Selection)、交叉(Crossover)、变异(Mutation),电路进化执行过程重要通过对参数(种群规模、最大迭代次数、交叉概率、变异概率等)的控制,实现对硬件电路的演化。其主要流程如图 2-2 所示。
与人工设计相比,电路进化设计只需要通过编码设计、适应度评估,就可以将电路结构利用进化算法进行探索,通过自动化设计与较低的经济成本达到较好的设计结果。如图 2-2 所示,电路进化设计是将电路的结构及其相关参数按照设计的编码方案,以基因映射的关系组成染色体,生成种群,作为硬件配置表达方式;将电路的行为(输入——输出特性)与目标电路的相似度看作种群适应度,以适应度评估结果为指导,基于软件仿真或实际测试结果获得电路输出结果,判断产生的新个体所组成的新种群是否逐渐接近预期结果,具备目标性能;最后,判断是否达到最大迭代次数或者满足终止准则,从而判定是不是为最终目标电路结构。

........................
第 3 章 容错电路进化算法设计·····················19

........................
第 3 章 容错电路进化算法设计·····················19
3.2 遗传算法实现方法················20
3.3 引入演化效率因子的适应度评估方案················22
第 4 章 基于关联选择策略的异构冗余电路设计·····························31
4.1 关联方法概述··························31
4.2 异构电路评估方案设计························32
第 5 章 引入故障模型的演化电路容错仿真实验······················43
5.1 故障模型的建立···························43
5.1.1 分析故障原因·························43
5.1.2 建立故障模型··························44
第 5 章 引入故障模型的演化电路容错仿真实验
5.1 故障模型的建立
利用容错系统的自适应、自修复特点对系统故障进行处理,一般处理故障的方法分为故障检测、故障定位以及故障修复。故障检测就是通过分析判断系统是否包含输出错误;故障定位是指在故障已经发生的情况下,快速寻找故障发生的位置以及故障类型,将子系统或者系统中发生故障的部分控件进行隔离的一种措施;故障修复是指对发生故障的控件、程序、系统等进行纠错或者限制,从而预防故障的进一步扩充甚至达到回归稳定。
5.1.1 分析故障原因
故障的发生产生原因可能是:1) 元件的损坏致使电路发生短路或断路,这种故障发生是可重复的、稳定的以及是可持续的;2) 极端环境的影响,此时系统的工作状态是不稳定的,并且它具备某些环境下能够正常运行,在其他环境下出错的特点;3) 偶然情况的发生,通常不需要修复就可以恢复正常。前两种情况发生时,故障自己不会同第三种一样自己消失,它需要进行人工干预。另外,致使故障发生的原因也许是设定系统之前可预知的错误,但也可能是未知的。对于可预知故障,它是指在进行设计的时候的知道未来可能发生的情况,这种错误是不确定的,它可能发生也可能不发生,但因为设计者对于特定错误具备可预知性的特点,可以采用将错误注入系统中进行判断和观察,这种特定故障对于系统的影响。未知错误是指在系统设计时不可预知或者无法测试的错误,这种错误的发生是由随机故障所引发的。
电子系统的发展,不仅仅增加了规模,而且提高了复杂度,导致对故障诊断的困扰增加,技术上和经济上很难实现系统的全面检测。容错技术的出现为更好的提高系统鲁棒性提供了解决途径。
.............................
结论
电子技术的逐步发展,促使其电路系统的设计愈加繁琐,但应用于不同的复杂环境中的容错能力却呈现下降状态。本文在演化硬件和进化算法的基础上,首先通过对进化电路的分析,构建演化电路模型;然后结合演化算法的理论知识,对适应度评估方法进行改进并针对遗传算法中的选择策略进行设计,进而得到电路系统;最后设计基于关联选择策略的异构评估方案,并组建三模冗余电路系统,通过引入故障模式进行系统容错测试,验证所得冗余容错系统的有效性和可行性。本文主要做了以下具体工作:
1) 借鉴生物体自身在自然界生存的方式,研究电路系统的进化方法,从而构建电路网络结构、设置电路的编码方案以及冗余容错模型。
2) 了解并分析遗传算法的理论知识,研究传统遗传算法的不足之处,然后从电路的适应度评估方案出发,引入演化效率因子对适应度评估方法进行改进;再对遗传算法中的选择策略进行研究,增加选择压力,从而达到对种群多样性进行调控,在全局中寻找最优解。实验验证了引入演化效率因子和增加压力的选择策略后,电路的收敛代数较自适应遗传算法与传统遗传算法提前了 150 代与 300 代左右。
2) 了解并分析遗传算法的理论知识,研究传统遗传算法的不足之处,然后从电路的适应度评估方案出发,引入演化效率因子对适应度评估方法进行改进;再对遗传算法中的选择策略进行研究,增加选择压力,从而达到对种群多样性进行调控,在全局中寻找最优解。实验验证了引入演化效率因子和增加压力的选择策略后,电路的收敛代数较自适应遗传算法与传统遗传算法提前了 150 代与 300 代左右。
3) 对关联方法进行分析,设计电路结构进化执行过程,针对灰色关联选择方法的特点,对电路异构度评估和故障概率的影响因素进行设计,并计算电路子结构之间的异构度。通过实验证明,基于“拓扑结构”的异构度评估方法所得到的异构度要远大于基于“活动节点”评价方法所得的异构度,基于关联选择方法的异构度略高于“拓扑结构”方法所得异构组合的异构度。
4) 对故障模式进行分析,然后对设计好的冗余容错电路系统注入 SA 故障、桥接故障、参数漂移故障,进行故障仿真测试,实验数据表明桥接故障的基于关联方法所得的冗余容错电路较随机异构冗余容错系统提高了 8.9%,较同构冗余容错系统提高了 21.7%。参数漂移故障基于关联方法所得的冗余容错电路较随机异构冗余容错系统提高了 9.1%,较同构冗余容错系统提高了 23.9%。
参考文献(略)
4) 对故障模式进行分析,然后对设计好的冗余容错电路系统注入 SA 故障、桥接故障、参数漂移故障,进行故障仿真测试,实验数据表明桥接故障的基于关联方法所得的冗余容错电路较随机异构冗余容错系统提高了 8.9%,较同构冗余容错系统提高了 21.7%。参数漂移故障基于关联方法所得的冗余容错电路较随机异构冗余容错系统提高了 9.1%,较同构冗余容错系统提高了 23.9%。
参考文献(略)