基于应用特征启发式可重构SoC任务分配.docVIP

基于应用特征启发式可重构SoC任务分配.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于应用特征启发式可重构SoC任务分配

基于应用特征启发式可重构SoC任务分配   摘 要:本文提出了一种基于应用特征的启发式任务分配方法,适用于对可重构SoC进行系统级任务划分。实验以可重构密码处理SoC为目标,对密码处理任务进行任务划分,实验结果验证了任务分配方法的有效性和实用性。   关键词:启发式 任务分配 SoC 设计与实现   中图分类号:TP391 文献标识码:A 文章编号:1672-3791(2011)08(a)-0033-03      任务分配是SoC设计与实现中的重要过程。它负责在满足系统约束的条件下,将SoC应用功能的各个任务分配到SoC的各个处理器核上,以使应用任务在SoC上高效运行。SoC任务分配方法决定了应用功能在SoC体系结构上的实现方式、系统性能与效率。因此,SoC任务分配度方法成为亟需研究的关键问题之一。   任务分配方法有双路分配和多路分配两种方式。双路分配主要研究由单个处理器和若干专用硬件模块所构成系统的任务分配方法,多路分配主要研究由多个(两个或更多)处理器和若干专用硬件模块所构成系统的任务分配问题。   本项目针对传统任务分配方法的不足,提出一种基于应用特征的启发式任务分配方法。该方法使用程序特征分析技术提取应用中的任务,之后采用启发式任务分配规则,实现任务在SoC上的分配。      1 相关研究   鉴于在SoC设计中的重要性,任务分配工作得到了研究人员的广泛关注与研究。已有的SoC任务分配方法可以分为人工分配与自动分配两种。   人工分配方法依靠SoC设计人员进行任务分配。这种做法在传统的多处理器SoC设计中非常常见。该方法借助SoC设计人员的设计经验可以获得较好的效果。然而,对于复杂的应用而言,SoC设计人员在进行人工任务分配时,难以准确掌握并利用任务的特征信息,无法实现处理任务的高效分配。   自动任务分配方法依靠自动化的算法或工具进行任务分配。典型的自动分配方法有:(1)郭晓东等人[1]提出的使用遗传算法进行带约束的SoC任务分配方法;(2)Gang Wang和Wenrui Gong等人[2]提出的应用基本蚁群算法求解SoC任务分配问题的一般方法,该方法综合运用局部和全局启发式信息,通过蚂蚁间的协作,进行有效的随机搜索,以获取最优划分解;(3)Theerayod Wiangtong[3]面向细粒度可重构SoC实现了自动化的编译时划分与调度算法,并进行了遗传算法、模拟退火和禁忌搜索的实验比较与分析。   然而,上述自动分配方法却没有利用SoC设计人员的专家经验。某些任务分配经验,例如:处理任务的核心函数应该分配到可重构处理器上,这对于SoC设计人员是显而易见的,却不容易通过自动化算法获得。因此,如果能够充分利用SoC设计人员的设计经验,可以提高处理任务的分配效率。另外,可重构处理器具有强大的处理功能,可以快速处理函数粒度的任务。在以函数粒度进行任务分配过程中,问题规模与复杂性较小,而采用复杂的自动化启发式寻优算法有些“大材小用”,反而不利于提高任务分配效率。   针对上述不足,本文提出一种基于程序特征的启发式任务分配方法。使用该方法时,首先使用程序特征分析技术,提取程序中的任务以及任务的运行时间,之后使用基于SoC设计人员经验的启发式任务分配规则,交互式的将处理任务分配到可重构SoC的各个处理器核上。      2 问题定义   可重构SoC任务分配问题在求解过程中,SoC系统的功能行为采用函数调用图描述。之所以采用函数调用图来描述SoC系统行为,是因为在任务分配中的任务采用函数粒度。函数调用图的定义如下。   定义,函数调用图:函数调用图G=(T, E)由节点T、边E构成。其中,T是函数任务集,E(T×T)是有向边集,表示函数任务之间的调用关系。   使用函数调用图的双着色模型来描述可重构SoC任务分配问题,如图1所示。t0和tn是虚拟任务,用于确保函数调用图中只有一个开始节点和一个结尾节点。分配到主控处理器上的任务用颜色c1表示,分配到可重构处理器上的任务用颜色c2表示。      3 基于应用特征的启发式任务分配方法   3.1 任务分配粒度   任务分配的粒度采用函数粒度。之所以采用函数粒度,是因为可重构处理器的处理能力足够大,可以处理函数粒度的处理功能。相反,如果粒度过小,比如采用循环粒度或者基本块粒度,会导致频繁的主控处理器与可重构处理器之间通信,从而抵消一部分可重构处理器的处理性能。   3.2 任务分配过程   在任务分配过程中以程序特征分析结果为依据,使用交互的启发式任务分配方法。任务分配分为以下四个过程。   第一步:生成处理程序的SUIF中间表示。基于SUIF编译框架,对处理程序进行词法分析、语法分析和语义检查,将C语言表示的处理程序转化

文档评论(0)

130****9768 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档