论文部分内容阅读
演化计算是人工智能领域中的基于生物进化理论的一个分支。它模拟自然界生物演化过程,采用某种编码技术表示问题的可能解,并通过对编码表示进行遗传操作和自然选择来解决问题。演化硬件是由演化算法衍生出的一个分支,是将演化算法和计算机硬件结合的一个全新领域,演化硬件的目的是赋予硬件和生物一样的自适应、自修复、自学习特性。这个概念在1992年由Hugo de Garis和瑞士联合工学院共同提出。
硬件演化技术的用途广泛,特别适用于电子设备需要长期工作、使用环境恶劣、技术人员无法提供及时维修的情况,如自动控制,特别是航空、航天等领域。随着硬件系统(如芯片系统)的复杂性不断增加,系统设计繁琐、可靠性下降、通用性差,若系统出现故障,传统的容错方法已不适用。利用硬件演化技术,不仅可以减轻设计人员的负担,而且满足了环境对硬件所要求的适应性,实现硬件系统的通用化、芯片内自修复。硬件演化这一新兴的研究领域,将演化算法与电子学有效地结合在一起。它不仅开拓了硬件设计自动化、硬件自适应和自修复的新途径,而且为自然科学与工程技术的结合描绘了迷人的前景。一旦突破技术上的障碍,硬件演化技术将开辟演化工程这一具有重大实用价值和广阔应用前景的新兴产业。
世界各主要发达国家对演化硬件非常重视,每年要召开关于演化硬件的国际会议,如:ICES(International Conference on Evolvable Systems),AHS(Adaptive Hardware andSystems)等等。这些会议和支持推动了演化硬件的研究发展。这些年来,演化天线、机器自学习、自适应容错等领域的研究都取得了很多成果。这些成果,初步展现了演化硬件的应用前景。
容错是演化硬件的一个重要的研究内容,演化容错主要有:1)利用群体多样性产生功能同结构异的个体,使模件及其备用部件具有多样性,从而提高容错能力;2)基于胚胎繁殖原理,实现胚胎演化容错;3)利用免疫算法检测故障;等等。演化计算的任何新的理论和方法都可能应用到容错系统。演化容错的一个特点是自适应,当环境改变时,特别是在远离人类控制的、恶劣的空间环境里,故障的位置难以预先定位,这就需要演化算法进行容错,可重配置系统最早是由Califomia大学的Gerald Estrin等人提出,是指通过软件来改变硬件结构,以适应具体应用的计算平台。可重配置系统日益广泛地应用到实际工程领域里,当出现故障时,可以用动态演化算法进行重配置,以保证原有功能正确。
可重配置系统相比传统的计算系统或DSP,能够以任意位宽进行计算,并且可以并发式地并行处理多个计算,可以最大限度地提高系统性能。可重配置系统在高速数字滤波器、图像压缩、硬件演化计算、定制计算(Custom Computing)、嵌入式系统等方面,都有着广泛的应用前景。近年来,特别是空间领域里应用广泛。
布局问题是在整个版面中为每一个模块单元找到最适合的的物理位置来放置。在给定的约束条件下,使得目标函数值收敛。通过对演化硬件技术的原理和实现方法的研究,用其来实现可重配置计算各功能模块的布局设计。
本文的主要内容是以采用一种粗粒度的可重配置结构模型为布局的对象,该结构是一种适合我国月球探测和深空探测的可重配置结构,在此结构上研究如何将演化算法加入到具体功能电路布局设计领域,基于演化优化算法的理论,来实现电子电路的容错布局和布线,并尝试用硬件描述语言编写该结构。
首先我们介绍了演化硬件的产生和发展,及其主要分类和特点。还介绍了与此相关的国内外研究现状和本文研究的意义。我们对可编程器件和演化硬件技术进行了介绍,其中包括现在被大量采用的现场可编程门阵列FPGA。对演化硬件进行了深入的研究和讨论。我们介绍了传统容错和演化硬件容错的原理和特点。并比较了传统容错技术和演化硬件容错技术,还重点介绍美国宇航局(NASA)的自行研制的基于演化硬件技术的可容错产品NASA-SRAA。其中重点介绍采用的粗粒度的可重配置结构模型。
我们就简单的电子电路的演化布局布线算法设计进行了讨论,提出了可容错的布局布线算法设计,并且在布局设计完成后进行布线的设计,以完成全部功能电路在FPGA上的映射。同时采取模拟出错的情况,来证明了该模型的容错能力。采用演化算法来进行电路布局设计是一个新颖的研究领域,吸引了越来越多的学者加入演化硬件的研究行列。文中通过对演化算法的学习,结合电子电路的特性,在粗粒度的可重配置结构模型上实现了功能电路的布局设计。我们希望本文的研究能为这些研究者的算法设计提供一定的指导性。本文创新之处本文的主要工作和创新之处在于以下几个方面:
1.该布局算法所针对的结构是我国航天机构在预研的使用于深空探测的可重配置结构。具有实际的应用价值。
2.该算法是动态演化算法,具有很好的适应环境的改变,利用动态改变来进行容错。
3.该算法的容错和评估设计利用了网络路由器的路由表的设计思想,据作者所知目前还没有相关的算法。
4.将演化算法和传统的搜索算法结合起来使用,各取所长。