论文部分内容阅读
推动电子计算机技术产生和发展的因素无外乎是特定时期的某种需求,当今世界,人类探索未知世界的活动日趋频繁,人们对于电子系统产生了微型化和智能化的新需求,形成了未来电子系统发展的趋势。微型化与可靠性、智能化与模块化之间的矛盾是传统EDA设计方法难以逾越的鸿沟,演化硬件是迄今为止解决这一矛盾最为理想的技术。演化硬件是通过融入演化机制实现电子系统的实时自重构,它包括各种能够适应环境变化,并且在运行期间不断改善自身性能的电子系统。演化机制的引入使演化硬件具备了自组织、自适应、自修复的特性,演化硬件的自修复特性来自于其对环境的自适应能力,利用演化硬件调整内部结构是实现自修复系统的重要途径。然而,目前很多自适应系统都是基于参数调整的,如自适应滤波器、模糊控制器以及自适应天线等,鲜有研究基于结构演化的自适应系统。因此,本文致力于研究基于结构调整的自适应演化硬件,最终目的是利用演化硬件的各种自适应行为构建不同的自修复系统。自适应和自修复的关键在于实时性,实时性取决于演化硬件的设计效率。本文从编码方案、算法选择、演化粒度、演化硬件的复杂性等多个方面分析了影响演化效率的各种因素。电路的编码表示是演化硬件技术的核心问题,好的编码方案有利于提高演化效率。本文针对笛卡尔遗传程序编码(Cartesian Genetic Programming, CGP)的缺点提出了一种改进的ECGP编码方案(Extend Cartesian Genetic Programming),它在阵列节点之后设置了专用的输出节点,使阵列中的所有节点都是潜在有效的,从而提高了遗传操作的执行效率。同时,将连接编码和函数编码作为染色体的两个不同基因段,不仅可以有效抑制非法个体,而且可以对这两部分分别实施不同的遗传操作。实验表明,采用ECGP编码的演化效率明显高于CGP编码,同时由于ECGP编码的冗余特性,采用创新性较好的均匀交叉算子有利于提高演化设计的效率。本文定义搜索空间来量化演化硬件的复杂度,它与目标电路的规模之间呈指数关系,这是导致演化设计效率低下的根本原因。搜索空间很好地解释了演化硬件的扩展问题,它具体表现为演化过程中出现的适应值停滞效应。分而治之是解决演化硬件扩展问题颇为有效的手段,本文提出了一种并行递归分解算法,它将香农分解前后的电路视为“等效电路”,同时,在输出分解中引入特长个体的保留机制和基因改良等措施,使复杂电路的演化过程转化成它或其等效电路的子电路的并行演化过程。实验表明,采用该分解算法演化出有效电路所需的迭代次数随电路规模仅呈线性增加,能够满足自适应演化硬件的实时性要求,同时该算法能及时跳出适应值停滞效应,从而解决了演化硬件扩展问题。当前基于演化硬件设计的容错系统多采用异构冗余容错模式,这类系统本身不具备调整结构的能力,它们仅仅是演化设计出一些具有错误容忍、瑕疵容忍或者噪声鲁棒性的电路结构,然后结合传统的冗余容错技术实现系统级容错。异构冗余容错系统中没有演化机制,其结构不能根据环境进行自适应调整,未能跳出传统容错技术的拘囿,因而无法实现系统在运行时的自修复。本文尝试演化硬件的结构调整引入到系统级容错中,以组合逻辑电路的结构调整为基础构建自适应演化硬件系统,从执行不确定的任务、改进内部结构以及显现可塑性三个方面模拟实现演化硬件的自适应行为,并根据这些自适应行为实现不同的容错模式。利用演化硬件改进内部结构的自适应行为可设计出自重构容错模式,它将演化硬件同时做为被检系统和重构对象,当系统出错时,演化硬件对自身进行重构搜索新的电路结构以“绕开”故障元件,从而实现系统自修复。该容错模式的优点是只需极少的冗余资源即可实现系统自修复,但同时也有两个弊端:一是修复时间长,难以满足系统自修复的实时性要求;二是演化硬件在重构过程中使系统一直处于混乱状态,可能会破坏系统结构。为了克服自重构容错模式的不足,本文提出了一种补偿容错模式,它将演化硬件作为被检系统的辅助修复模块,使被检系统和重构对象分离,避免演化硬件在自重构过程中可能对系统原有结构造成的破坏。实验表明,该容错模式不仅能有效地节省修复时间,而且仅需少量冗余便可大大提高系统的可靠度。在此基础上设计了一种可演化自修复系统,通过故障建模和效应测试建立预置配置库,用以修复已知错误,从而避免不必要的演化,减少修复所需的时间。同时,利用演化硬件自适应性修复未知错误,提高系统在各种环境下的容错能力,实验表明,可演化自修复系统在苛刻的错误假设下仍具有较高的可靠性。