蚂蚁寻优软硬件划分中的初始信息素生成方法技术

技术编号:2864376 阅读:335 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种蚂蚁寻优软硬件划分中的初始信息素生成方法,目的是解决SoC芯片设计中蚂蚁寻优软硬件划分过程缺乏初始信息素的问题。技术方案是利用基于平台的SoC芯片设计方法强调并支持系统级重用的特点,在进行蚂蚁寻优软硬件划分之前重用已有同领域SoC芯片设计的软硬件划分结果,作为初始的软硬件划分解,并转换为蚂蚁寻优所需的初始信息素分布。具体方法是首先确定“当前设计”的初始划分解,然后将初始划分解转换为初始信息素。采用本发明专利技术提出的初始信息素生成方法,可消除蚂蚁寻优软硬件划分搜索中用于积累初始信息素所需的时间,提高SoC芯片设计效率和设计质量。

【技术实现步骤摘要】

本专利技术涉及蚂蚁寻优软硬件划分的初始信息素生成方法,尤其是基于平台的系统芯片(System-on-a-Chip,SoC;又称为片上系统)设计中蚂蚁寻优软硬件划分的初始信息素生成方法。
技术介绍
随着超大规模集成电路(Very Large Scale Integration,VLSI)制造技术的迅速发展,半导体加工工艺进入深亚微米时代,器件特征尺寸越来越小,芯片规模越来越大,已经可以在单个芯片上集成上千万甚至成亿个晶体管。集成电路与深亚微米制造技术的高速发展,使SoC应用成为可能。SoC将电子系统的几乎全部功能集成到一块芯片上,从而在单个硅芯片上实现信号采集、转换、存储、处理和输入/输出等功能,或者说在单一硅芯片上集成数字电路、模拟电路、信号采集与转换电路、存储器等,实现一个系统的功能。SoC具有速度快、集成度高、功耗低等优点,这些优点顺应了通讯、信息家电、消费电子等产品向高性能、低功耗和低成本方向发展的趋势,使SoC得到越来越广泛的应用。但是,SoC在功能、集成度、设计难度等方面都比专用集成电路芯片更加复杂,需要采用设计重用技术来提高SoC设计效率并确保设计质量。基于平台的SoC设计重用技术是近年提出的系统级SoC设计与重用方法,该方法将平台看成满足一系列限制条件的软硬件集成结构,在此结构下实现软件和硬件模块的重用。具体地说,平台是软、硬知识产权(Intellectual Property,IP)模块以及片上通讯协议的结合体,在其中通常包括嵌入式微处理器、实时操作系统、外围接口模块、中间件等。基于平台的SoC方法具有产品开发周期短,重用效率高以及设计质量好等优点,已成为主要的SoC系统设计方法。SoC芯片的功能非常复杂,其中部分功能由硬件实现,另一部分功能由软件实现。硬件实现通常具有较快的速度和较低的功耗,但导致芯片面积较大且成本高;相反,软件实现则芯片面积较小且成本较低,但运行速度慢而且功耗较高。如何决定哪些SoC系统功能由硬件实现,哪些功能由软件实现,使最终SoC芯片在速度、功耗、面积、成本等性能指标达到最优,是SoC芯片设计时需要解决的重要决策问题,这种决策过程就是长期困扰人们的软硬件划分问题。软硬件划分是SoC芯片设计中的关键步骤,它决定了最终SoC系统的实现方式和性能,其基本任务是在满足某些约束的条件下,将系统芯片的功能行为“最优地”分配到一定的软硬件系统结构上。软硬件划分本质上是一种NP完全问题,G.Wang和Kastner等在2003年加利福尼亚举办的并行与分布国际会议上提出了基于蚂蚁寻优搜索的软硬件划分方法,他们把软硬件划分问题描述为有向无环图的双着色模型,用两种不同颜色分别代表SoC芯片的某个功能被划分到软件或硬件实现;图的节点代表SoC芯片的功能,有向边代表SoC芯片各功能之间的通讯和依赖关系,节点的颜色取决于当前时刻该节点所有入边(以该节点为目标节点的有向边)上的信息素值。G.Wang和Kastner等提出的方法在SoC芯片设计的软硬件划分时间和质量上都取得了很好的效果,但是,该方法没有为有向无环图双着色模型中的每条有向边设置初始信息素,导致这种单纯的蚂蚁寻优软硬件划分方法在运行初期缺乏初始信息素,从而大大限制了软硬件划分最优解搜索效率的进一步提高。蚂蚁寻优搜索方法是由意大利学者M.Dorigo在1996年第1期的“IEEE Transactionson Systems,Man and Cybernetics,Part-B”上提出的。为了避免蚂蚁寻优搜索方法过早收敛到非全局最优解,T.Stutzle和H.H.Hoos在2000年第8期的“Journal of Future GenerationComputer System”上进一步提出了“最大-最小蚂蚁系统(MAX-MIN Ant System即MMAS)”,将蚂蚁寻优搜索中各路径上的信息素强度值限制在之间,超出这个范围的值被强制设为τmin或τmax。蚂蚁寻优搜索方法具有正反馈、高效收敛、随机全局优化等优点,在许多组合优化问题的求解中取得了较好的效果,如二次分配问题,TSP问题和车间作业调度问题等。这种方法的主要缺点是在寻优搜索初期缺乏初始信息素,导致搜索初期积累信息素占用的时间过长。实验表明,蚂蚁搜索方法中形成最优解上信息素强度的时间约占整个运算过程的65%。
技术实现思路
本专利技术要解决的技术问题是解决SoC芯片设计中蚂蚁寻优软硬件划分过程缺乏初始信息素的问题,消除蚂蚁寻优过程用于积累初始信息素占用的时间,从而提高SoC设计中软硬件划分的效率。技术方案是充分利用基于平台的SoC芯片设计中强调并支持系统级重用的特点,在进行蚂蚁寻优软硬件划分之前重用已有同领域SoC芯片设计的软硬件划分结果,作为初始的软硬件划分解,并转换为蚂蚁寻优所需的初始信息素分布,从而克服蚂蚁寻优软硬件划分方法缺乏初始信息素的不足。在基于平台的SoC芯片设计中,将领域中已有、可重用的SoC芯片设计称为“参考设计”,将目前正在进行的SoC芯片设计称为“当前设计”。“当前设计”通常是“参考设计”在功能上的完善与扩展,以满足应用领域中新的应用需求。因此,“当前设计”与“参考设计”在功能、软硬件系统结构上的绝大部分是相同的,这是“当前设计”对“参考设计”进行系统级设计重用的基础。本专利技术生成初始信息素的方法是首先确定“当前设计”的初始划分解,然后将初始划分解转换为初始信息素。第一步,确定初始划分解。在SoC芯片设计中,软硬件划分的任务是将SoC芯片的系统功能映射到SoC的目标系统结构上。进行软硬件划分时,通常用有向无环图描述SoC系统功能,其中节点表示功能,边表示功能节点之间的通讯和依赖关系。在本专利技术中,将SoC芯片中系统功能节点构成的集合称为该SoC芯片的系统功能集合。SoC芯片的目标系统软硬件结构中包括软件单元和硬件单元,其中软件单元对应于划分到软件上运行的SoC功能,硬件单元对应于划分到硬件上运行的SoC功能。在本专利技术中,将SoC芯片目标系统软硬件结构中的软件单元和硬件单元统称为该SoC芯片目标系统的软硬件结构单元,并将SoC芯片目标系统的软硬件结构单元构成的集合称为该SoC芯片的目标系统软硬件结构单元集合。本专利技术通过重用“参考设计”中已有的软硬件划分结果来确定“当前设计”的初始划分解,在此之前,本专利技术先进行以下预处理操作或定义a).对“参考设计”的系统功能集合与“当前设计”的系统功能集合执行交集操作,分别计算出在“参考设计”与“当前设计”中同时存在的公共系统功能部分、在“参考设计”中存在而在“当前设计”中不存在的系统功能部分(即“当前设计”中被删除的系统功能)、在“参考设计”中不存在而在“当前设计”中存在的系统功能部分(即“当前设计”中被添加的系统功能,或“当前设计”中被修改的系统功能)。本专利技术将这三个系统功能部分依次称为公共系统功能子集、删除的系统功能子集和添加的系统功能子集。b).对“参考设计”的目标系统软硬件结构单元集合与“当前设计”的目标系统软硬件结构单元集合执行交集操作,得到在“参考设计”与“当前设计”中同时存在的公共目标系统软硬件结构单元部分、在“参考设计”中存在而在“当前设计”中不存在的目标系统软硬件结构单元部分(即“当前设计”中被删除本文档来自技高网
...

【技术保护点】
一种蚂蚁寻优软硬件划分中的初始信息素生成方法,采用“最大-最小蚂蚁系统(MMAS)”的策略,将蚂蚁搜索中的信息素强度限制在[τ↓[min],τ↓[max]]之间,其特征在于充分利用基于平台的SoC芯片设计方法强调并支持系统级重用的特点,在进行蚂蚁寻优软硬件划分之前重用已有同领域SoC芯片设计的软硬件划分结果,作为初始的软硬件划分解,并转换为蚂蚁寻优所需的初始信息素分布,从而克服蚂蚁寻优软硬件划分方法缺乏初始信息素的不足,具体方法是首先确定“当前设计”的初始划分解,然后将初始划分解转换为初始信息素:1.1.第一步,确定初始划分解,具体方法是:1.1.1.将SoC芯片中系统功能节点构成的集合称为该SoC芯片的系统功能集合,SoC芯片的目标系统软硬件结构中包括软件单元和硬件单元,其中软件单元对应于划分 到软件上运行的SoC功能,硬件单元对应于划分到硬件上运行的SoC功能,本专利技术将SoC芯片目标系统软硬件结构中的软件单元和硬件单元统称为该SoC芯片目标系统的软硬件结构单元,并将SoC芯片目标系统的软硬件结构单元构成的集合称为该SoC芯片的目标系统软硬件结构单元集合;1.1.2.在通过重用“参考设计”中已有的软硬件划分结果来确定“当前设计”的初始划分解之前,先进行以下预处理操作或定义:1.1.2.1.对“参考设计”的系统功能集合与“当前设计”的系统功能集合执行交 集操作,分别计算出在“参考设计”与“当前设计”中同时存在的公共系统功能部分、在“参考设计”中存在而在“当前设计”中不存在的系统功能部分即“当前设计”中被删除的系统功能、在“参考设计”中不存在而在“当前设计”中存在的系统功能部分即“当前设计”中被添加的系统功能,或“当前设计”中被修改的系统功能;本专利技术将这三个系统功能部分依次称为公共系统功能子集、删除的系统功能子集和添加的系统功能子集;1.1.2.2.对“参考设计”的目标系统软硬件结构单元集合与“当前设计”的目标系统软硬 件结构单元集合执行交集操作,得到在“参考设计”与“当前设计”中同时存在的公共目标系统软硬件结构单元部分、在“参考设计”中存在而在“当前设计”中不存在的目标系统软硬件结构单元部分即“当前设计”中被删除的目标系统软硬件结构单元,或“当前设计”中被修改的目标系统软硬件结构单元、在“参考设计”中不存在而在“当前设计”中存在的目标系统软硬件结构单元部分即“当前设计”中被添加...

【技术特征摘要】

【专利技术属性】
技术研发人员:李思昆熊志辉
申请(专利权)人:中国人民解放军国防科学技术大学
类型:发明
国别省市:43[中国|湖南]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1