遗传算法是基于自然选择的一种鲁棒性很强的解决问题方法。遗传算法已经成功地应用于许多难优化问题,现已成为寻求满意解的最佳工具之一。然而,较慢的运行速度也制约了其在一些实时性要求较高场合的应用。利用硬件实现遗传算法能够充分发挥硬件的并行性和流水线的特点,从而在很大程度上提高算法的运行速度。 本文对遗传算法进行了理论介绍和分析,结合硬件自身的特点,选用了适合硬件化的遗传算子,设计了标准遗传算法硬件框架;为了进一步利用硬件自身的并行特性,同时提高算法的综合性能,本文还对现有的一些遗传算法的并行模型进行了研究,讨论了其各自的优缺点及研究现状,并在此基础上提出一种适合硬件实现的粗粒度并行遗传算法。 我们构建的基于FPGA构架的标准遗传算法硬件框架,包括初始化群体、适应度计算、选择、交叉、变异、群体存储和控制等功能模块。文中详细分析了各模块的功能和端口连接,并利用硬件描述语言编写源代码实现各模块功能。经过功能仿真、综合、布局布线、时序仿真和下载等一系列步骤,实现在Altera的Cyclone系列FPGA上。并且用它尝试解决一些函数的优化问题,给出了实验结果。这些硬件模块可以被进一步综合映射到ASIC或做成IP核方便其他研究者调用。 最后,本文对硬件遗传算法及其在函数优化中的一些尚待解决的问题进行了讨论,并对本课题未来的研究进行了展望。
上传时间: 2013-07-22
上传用户:谁偷了我的麦兜
近年来,计算机图形学应用越来越广泛,尤其是三维(3D)绘图。3D绘图使用3D模型和各种影像处理产生具有三维空间真实感的影像,应用于虚拟真实情况以及多媒体的产品上,且多半是使用低成本的实时3D计算机绘图技术为基础。在初期3D图形学刚起步时,由于图形简单,因此可以利用CPU来运算,但随着图形学技术的发展,所要绘制的图形越来越复杂,这时如果单纯依赖CPU来处理,不能达到实时的要求,因此需要专门的硬件来加速图形处理,GPU(图形处理单元)因此出现了。不过由于3D图形加速硬件的复杂性和短寿命,这极大地提高了对硬件开发环境的需要。为了更好的对设计进行更改和测试,不能仅仅用专门定制的方法来设计,需要其他的方:硬件描述语言(HDL)和FPGA。 随着计算机绘图规模的需要,借助辅助硬件资源,来提高图形处理单元(GPU)处理速度的需求越来越普遍。自从15年前现场可编程门阵列(FPGA)开始出现以来,其在可编程硬件领域所起的作用越来越大。它们在速度、体积和速度方面都有了很大的提高。这意味着FPGA在以前只能使用专用硬件的场合越来越重要。其中一个应用领域就是3D图形渲染,在这个研究领域里人们正在利用具有可编程性能的FPGA来帮助改进图形处理单元(GPU)的性能。 能够在廉价、可动态重新配置的FPGA上实现复杂算法来辅助硬件设计。本文的设计就是通过在FPGA上实现3维图形几何处理管线部分功能来提高图形处理速度。具体实现中使用硬件描述语言(Verilog HDL)进行逻辑设计,并发现问题解决问题。 本文主要特色如下: 1.针对几何变换换子系统,提出一种硬件实现方案,该方案能对基本的几何变换如:平移、缩放、旋转和投影进行操作。首先构造出总体变换矩阵,随后进行矩阵乘法运算,再进行投影变换,最后输出变换座标。提出一种脉动阵列结构,用于两个矩阵的乘法运算。找到一种快捷的方法来实现矩阵相乘,将能大大提高系统的效率。 2.对于3D图形裁剪,文中描述了一种裁剪引擎,它能够处理3D图形中的裁剪、透视除法以及视口映射的功能。硬件实现的难度取决于裁剪算法的复杂程度。我们在Sutherland-Hodgman裁剪算法的基础上提出一种新的裁剪算法,该算法通过去除冗余顶点以提高处理速度,同时利用编码来判断线段可见性的方法使得硬件实现变得很容易。 3.最后,我们在FPGA上实现了几何变换以及三维裁剪,并与C语言的模拟结果对比发现结果正确,且三维裁剪能够以3M个三角形/s的速度运行,满足了图形流水中的实时性要求。
上传时间: 2013-04-24
上传用户:yerik
采用现场可编程门阵列(FPGA)可以快速实现数字电路,但是用于生成FPGA编程的比特流文件的CAD工具在编制大规模电路时常常需要数小时的时间,以至于许多设计者甚至通过在给定FPGA上采用更多的资源,或者以牺牲电路速度为代价来提高编制速度。电路编制过程中大部分时间花费在布线阶段,因此有效的布线算法能极大地减少布线时间。 许多布线算法已经被开发并获得应用,其中布尔可满足性(SAT)布线算法及几何查找布线算法是当前最为流行的两种。然而它们各有缺点:基于SAT的布线算法在可扩展性上有很大缺陷;几何查找布线算法虽然具有广泛的拆线重布线能力,但当实际问题具有严格的布线约束条件时,它在布线方案的收敛方面存在很大困难。基于此,本文致力于探索一种能有效解决以上问题的新型算法,具体研究工作和结果可归纳如下。 1、在全面调查FPGA结构的最新研究动态的基础上,确定了一种FPGA布线结构模型,即一个基于SRAM的对称阵列(岛状)FPGA结构作为研究对象,该模型仅需3个适合的参数即能表示布线结构。为使所有布线算法可在相同平台上运行,选择了美国北卡罗来纳州微电子中心的20个大规模电路作为基准,并在布线前采用VPR399对每个电路都生成30个布局,从而使所有的布线算法都能够直接在这些预制电路上运行。 2、详细研究了四种几何查找布线算法,即一种基本迷宫布线算法Lee,一种基于协商的性能驱动的布线算法PathFinder,一种快速的时延驱动的布线算法VPR430和一种协商A
上传时间: 2013-05-18
上传用户:ukuk
在超深亚微米技术工艺下,布局成为超大规模集成电路物理设计中至关重要的一步。由于现场可编程门阵列(Field Programable Gate Array,FPGA)布线资源的预先确定性,使得FPGA的布局更为重要。本文以建立高性能、低拥挤的布局为目标,从FPGA芯片结构和布局算法两方面进行了深入研究。论文提出了一种通用的层次式FPGA(HFPGA)结构模型及布局模型,并且给出了该模型的数学计算公式;提出将元件之间的层次距离转化为线长的方法,实现了基于线网模型的高精度布局算法:提出利用矩形的对角线元件之间层次来代替线长,从而达到优化线长的同时提高布通率的快速布局算法。实验结果表明,两种算法均在北卡罗来纳微电子中心(MCNC)学术芯片测试案例上取得了较理想的布局实验效果,为下一步的布线工作建立了良好的基础接口,并且完成了初始布线的工作。本FPGA结构模型的提出和布局算法的实现也都为工业界提供了借鉴价值。
上传时间: 2013-04-24
上传用户:nbdedu
遗传算法是一种基于自然选择原理的优化算法,在很多领域有着广泛的应用。但是,遗传算法使用计算机软件实现时,会随着问题复杂度和求解精度要求的提高,产生很大的计算延时,这种计算的延时限制了遗传算法在很多实时性要求较高场合的应用。为了提升运行速度,可以使用FPGA作为硬件平台,设计数字系统完成遗传算法。和软件实现相比,硬件实现尽管在实时性和并行性方面具有很大优势,但同时会导致系统的灵活性不足、通用性不强。本文针对上述矛盾,使用基于功能的模块化思想,将基于FPGA的遗传算法硬件平台划分成两类模块:系统功能模块和算子功能模块。针对不同问题,可以在保持系统功能模块不变的前提下,选择不同的遗传算子功能模块完成所需要的优化运算。本文基于Xilinx公司的Virtex5系列FPGA平台,使用VerilogHDL语言实现了伪随机数发生模块、随机数接口模块、存储器接口/控制模块和系统控制模块等系统功能模块,以及基本位交叉算子模块、PMX交叉算子模块、基本位变异算子模块、交换变异算子模块和逆转变异算子模块等遗传算法功能模块,构建了系统功能构架和遗传算子库。该设计方法不仅使遗传算法平台在解决问题时具有更高的灵活性和通用性,而且维持了系统架构的稳定。本文设计了多峰值、不连续、不可导函数的极值问题和16座城市的旅行商问题 (TSP)对遗传算法硬件平台进行了测试。根据测试结果,该硬件平台表现良好,所求取的最优解误差均在1%以内。相对于软件实现,该系统在求解一些复杂问题时,速度可以提高2个数量级。最后,本文使用FPGA实现了粗粒度并行遗传算法模型,并用于 TSP问题的求解。将硬件平台的运行速度在上述基础上提高了近1倍,取得了显著的效果。关键词:遗传算法,硬件实现,并行设计,FPGA,TSP
上传时间: 2013-06-15
上传用户:hakim
神经网络控制算法作为一种比较成熟的智能控制算法,在空空导弹的理论研究中也得到了很多应用,但它的实际应用通常是通过软件实现的,而软件实现是串行执行指令,运行速度慢,可靠性低,很难满足实际导弹制导系统实时性的要求。控制算法硬件实现的最大特点就是可提高控制算法的实时运算速度和可靠性。本课题针对导弹制导系统,以FPGA为硬件平台研究神经网络控制算法的硬件实现。本文首先对BP神经网络算法思想进行了深入分析,并对BP网络的各个阶段进行了理论推导,最后对BP神经网络PID飞行控制算法进行了研究和总结,为硬件实现提供了理论基础。基于对上述理论的深入研究和分析,本文提出了一种适合FPGA实现该神经网络控制算法的硬件实现模型。在该模型中,神经网络各层之间采用串行执行数据方式,层间则采用并行运行方式,可有效提高系统的运算速度。由于模块化、层次化的自顶向下的模块化设计方法可有效减少错误的产生,是设计复杂大规模系统的理想设计方法。本文采用了此设计方法,通过把系统模块化,对各个子模块分别用VHDL硬件描述语言进行描述,并基于QUARTUS II软件开发平台进行综合和仿真,直到达到研究设计要求。最后将仿真程序源代码下载配置到具体的Cyclone II系列EP2C70 FPGA芯片中,应用于某实际导弹控制系统的研究。理论分析和实验结果表明该神经网络飞行控制算法的FPGA硬件实现是有效可行的,可满足系统实时性的要求,为制导系统的实际工程实现提供了基础。
上传时间: 2013-04-24
上传用户:冇尾飞铊
·详细说明:语音识别配套的VQ及DHMM模型训练程序,C语言,已经定点化,可直接移植到8位MCU或16位DSP中。与目前市面的语音识别玩具的算法基本一致,非常实用,仅供大家参考,别去抢人家饭碗才好.
上传时间: 2013-07-31
上传用户:84425894
·摘要: 陀螺仪漂移数据经过处理后将是一组高度相关的平稳随机时间序列.在对陀螺仪漂移数据建立时间序列AR模型的基础上,考虑到精度与实时性的要求,采用卡尔曼滤波算法对捷联陀螺模拟漂移数据进行了处理,并运用基于TI公司的TMS320C32型DSP对算法进行了实验.通过实时考察实验系统算法程序的运行情况可以看出,卡尔曼滤波算法能有效地提高陀螺精度,并且对于实时性要求高而计算量大的卡尔曼滤波算法
上传时间: 2013-06-22
上传用户:koulian
与数学建模有关的所有算法,且有各种模型举例,很实用哦
上传时间: 2013-06-24
上传用户:shiny3333
文中建立不同类型目标的模型匹配数据库;采用最小周长多边形构造目标主体轮廓的近似多边形,以简化目标主体轮廓减少算法处理的数据量;提取具有仿射不变性的多边形顶点个数、最长线段两侧顶点个数、同底三角形面积比向量特征不变量对待识别目标进行描述,应用3个特征量在模型匹配数据库中逐一进行分层遍历搜索匹配。实验表明,基于模型匹配的目标识别算法能够快速的识别目标,提高了目标识别的实时性,同时能够判定目标所处的姿态状况。
上传时间: 2013-10-20
上传用户:q3290766