混合蛙跳算法的FPGA实现技术研究

来源 :河北工业大学 | 被引量 : 0次 | 上传用户:hwwacm
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
混合蛙跳算法(SFLA)是一种启发式群体进化算法,具有高效的计算性能和优良的全局搜索能力,已成为解决大规模优化问题很好的方法。通常算法用软件实现,但根据便携式、移动式的设备的需求,如果将智能算法移植到嵌入式系统中,可以有效地提升设备的处理能力。因此本文研究了在FPGA上实现SFLA算法的技术,将设计电路用于图像处理,取得了较好的效果。本文分析了SFLA的计算过程,将算法分为蛙的适应值存储、划分蛙子群、子群内部比较、更新替换、种群比较五个步骤。根据算法步骤设计了SFLA的FPGA实现方案,确定蛙数据的表示方法,将蛙地址、蛙数据、蛙适应值合并存储,通过改变存储地址输入顺序实现子群划分,使用比较器依据更新规则替换掉最差的蛙变量,设计了状态机作为控制模块完成了迭代计算,最终得到全局最优解。本文使用VHDL语言在VIVADO平台上实现SFLA的设计,并利用MODESIM进行联合仿真,以sphere测试函数作为优化目标,验证SFLA的FPGA设计方案的功能正确性。然后将SFLA的FPGA实现方案应用到图像分割中,选用大津算法作为阈值评估函数,依据大津算法的流程,设计了灰度直方图统计、OTSU参数计算、适应值计算三个模块并完成了系统电路设计,以大津算法作为评判标准,SFLA作为寻优过程,通过20个初始值采用4*5的分组方式,在迭代8次过程中找到最佳的灰度阈值,仿真结果与MATLAB的计算结果一致,验证了应用方案的正确性。在xc7x010clh400-1芯片上,SFLA模块占用743个slices,时钟处理速度可达62.5MHz。阈值寻优整体占用6499个slices,从输入数据到灰度统计结束需要16384个时钟周期,从灰度统计结束到找到最佳阈值需要12513个时钟周期。
其他文献
对毕节市七星关区居民来说,2019年1月24日是个值得记住的日子。这一天,遵义至赫章天然气管道项目遵义至七星关段正式投产,毕节城区正式进入管道天然气时代。遵义至赫章天然气
耕地是人类赖以生存的宝贵资源,永久基本农田是优质高产的耕地,被称为“吃饭田”、“保命田”。然而在城市化进程不断推进、耕地资源短缺、生态系统持退化的困境中,就如何协调三者之间的矛盾及利用冲突,实现生态安全、粮食安全、经济发展成为中国土地管理中探讨的重要问题。现阶段对土地利用冲突研究多体现在冲突特点分析及冲突防治上,对潜在土地利用冲突的识别研究较少。永久基本农田划定虽强调数量质量,但缺少对地块空间布局
2012年12月12日,江苏省自行车电动车协会理事长和省内各市行业协会理事长联席会议在江苏泰州碧桂园温泉饭店召开。出席此次会议的领导嘉宾有江苏省自行车电动车协会理事长陆
每年一届的天津北方展会已经与上海、南京展会一起逐步成长为业内3大品牌展会,其规模和影响力越来越大,成为推动天津和国内自行车、电动车产业创新发展的强大助推器。天津地区
该文从施工材料,混凝土配合比,施工方法、养护等方面介绍了大体积混凝土施工技术,以达到降低混凝土温度应力和提高混凝土本身抗拉性能的目的。