论文部分内容阅读
电子设计自动化(Electronics Design Automation,EDA)是随着集成电路和计算机技术的飞速发展应运而生的一种高级、快速、有效的电子设计自动化技术。EDA是电子设计技术的发展趋势,利用EDA工具可以代替设计者完成电子系统设计中的大部分工作。EDA技术的发展和普及给电子系统的设计带来了革命性的变化,同时人们对电路行为的要求也日趋复杂,电路设计的瓶颈随之出现。演化硬件(Evolvable Hardware,EHW)是一种可重构的硬件,它建立在可编程逻辑器件之上,每当环境发生变化,演化硬件就自动地改变自身的硬件结构以适应所处的环境。进行演化硬件的设计不需要硬件功能的规范说明,它通过演化计算技术进行自组织、自学习、自适应,不断地重构自身的硬件结构,从而最终达到设计的要求。 演化硬件研究的一个重点是硬件电路的表示,即电路的编码方式。遗传程序设计(Genetic Programming,GP)在表示硬件电路,特别是数字电路的表示上面有着天生的优势。GP是在遗传算法(Genetic Algorithm)基础上发展起来的新型搜索算法,通常采用树结构为个体的表示方法。在使用GP之前,首先必须指定它建立个体的终止符集和函数集,这使它与遗传算法中二进制或实数编码有了很大的不同,同时也使得每一个GP的个体都是一个可执行的解。但是在演化的过程中,GP也对遗传算子的设计提出了更高的要求,需要遗传算子保持树状结构染色体的语义,还要使用相应机制保证树状节点组合而成的染色体包含一定问题域中的信息。 本文在详细介绍电子设计自动化的基础上,系统的研究了演化硬件的原理,实现及应用。通过分析遗传程序设计的算法思想及实现方式,本文将它运用到数字电路的自动设计当中来,用遗传程序设计作为演化硬件的主要演化设计途径。演化硬件的主要瓶颈在于演化计算的速度。为了实现算法的快速收敛,本文在电路的演化设计中引入了分而治之的思想,采取两层编码并行演化的方案。演化设计的起点是基于一个初始的胚胎电路,它包含了电路的基本信息。在初始胚胎电路的构造上,使用了手工编写与随机生成相结合的方法,从而保证了电路的确定性与多样性。首先把整个胚胎电路划分为很多个小的功能单一的模块,然后通过有向图的连接把这些小模块组合成一个完整的电路。演化设计也随之分成了模块内部基于遗传程序设计的演化和模块间连接有向图的演化,两个层次并行进行。基于这种演化硬件思想,我们搭建了一个软硬件协同设计平台WU-EHW,本文对其中遗传算子设计,演化规则,种群策略,适应值评估与分配等进行了深入的研究。最后通过一个伪随机数发生器电路的例子表明,分层并行的演化策略表现良好,不仅提高了演化设计的速度,而且电路设计的结果也较为理想。