一种混合处理器架构及其任务调度方法技术

技术编号:15616078 阅读:49 留言:0更新日期:2017-06-14 03:22
本发明专利技术公开了一种混合处理器架构及其任务调度方法。本发明专利技术首先提出了通用处理器和可重构器件混合的处理器架构,然后通过调度器将通用任务和可重构任务区分开来;使用通用处理器来处理通用任务,使用可重构器件来处理可重构任务。本方法实现了可重构器件与通用处理器的协同处理,不同类型的任务可以分别在通用处理器核可重构器件上执行,兼具了高效性和灵活性。

【技术实现步骤摘要】
一种混合处理器架构及其任务调度方法
本专利技术涉及处理器架构
,特别是涉及一种混合处理器架构及其任务调度方法。
技术介绍
可重构计算被视为能够将传统处理器的高度灵活性与ASIC(ApplicationSpecificIntegratedCircuit)所具有的高处理效率进行结合的有效解决方案。由于可重构体系结构具有较好的适应性,针对不同应用能够通过不同粒度的并行来加快处理速度。在可重构设备中,FPGA(Field-ProgrammableGateArray)是最广泛使用的可重构器件。动态可充配置的FPGA是实现硬件级别多任务的重要基础。此类FPGA的处理区域通常划分成不同的子块。这些子块分属于不同的硬件任务。当新的硬件任务达到时,需要为该硬件任务分配一个空闲的子块,同时其他的既存硬件任务不能受到影响。如果一个硬件任务执行完成,那么该任务所占据的子块应当被释放,并作为候选子块以备其他硬件任务的使用。在重分配期间,没有任何的其他硬件任务会受到影响,多个硬件任务可以共享整个处理区域。可见,通过对子块的重新利用,动态重配置能够提高FPGA的利用率。并行任务的数据仅仅受到FPGA容量的限制。然而子块的动态分配和替换操作会带来额外时间损耗。硬件任务的复杂化和重定位的频繁发生,导致了重配置代价的增加。因此,通过对重配置的资源映射进行高效管理以改善重构的性能就变得非常重要。在线的FPGA分配是减少重配置代价的重要方向。FPGA的高度碎片化会导致相当差的配置结果:在有足够空闲面积的情况下,却由于碎片化问题造成硬件任务不能在片上进行配置。在线的FPGA分配用于确定怎样将硬件任务分配到可重构平台的恰当区域,从而能够更好的利用可重构FPGA。Bazargan等人提出了针对2DPRTRFPGA的bin-packing在线分配方法。该方法以可重配置计算系统的模型建立为基础,通过对经典算法的扩展来进行在线的实际分配;其中最大空闲方块(MaximumEmptyRectangles,MER)的大小是Ω(n2)。Walder等人提出了使用哈希-矩阵数据结构来对空闲区域进行管理,并设计了在线分配算法。该方法是既有方法的一种改进,其改进之处在于可用处理区域的实际分裂时间被推迟,从而能够提高分配的质量。Ahmadinia等人所提出的方法与Bazargan等人提出的方法相似。这两种方法的主要差别在于所管理的处理区域(processing-area):Ahmadinia方法用于管理已占用的区域,而Bazargan方法则用于管理空闲区域。这两种方法具有相同的复杂度,在进行数据结构管理时也非常耗时,所需要的时间复杂度函数是非线性的。Cui等人提出了用来寻找和构建完成MER集合的算法,能够较为高效的进行处理区域的管理。Lu等人提出了运行时MER的管理算法。Lu等人的算法对MER完整集合的构建基于已配置任务边的动态信息。新的优化方法提出了三种用于改善在线分配算法的技术,分别是仅在合需要时合并(MergingOnlyifNeeded,MON),部分合并(PartialMerging,PM)和直接合并(DirectCombination,DC)。这三种技术分别应用于不同的具体操作环境当中。Handa等人提出了在PRTRFPGA上快速找到空闲空间的方法。该算法的基础是使用阶梯型数据结构以反映基于MER的空闲区域状态。Tabero等人提出了硬件多任务的新方法,使用基于顶点列表集合的空间管理器来实现处理区域管理。顶点列表用来描述PRTR(PartialRun-TimeReconfigurable)平台上未被占用区域的片段。当新任务到达的时候,区域管理器将会搜索顶点列表并使用不同的位置启发式算法来找到合适的位置。这种方法能够以更高的效率来管理处理区域,但是由于任务的插入和删除,导致对顶点列表的管理非常复杂。此外,不是所有顶点列表中的顶点都是可用的任务分配候选区域。事实上只有一部分顶点列表中的顶点能够作为任务分配的候选位置使用。该算法的复杂度是Ο(n2),其中n是FPGA平台上运行时的任务数量。目前的研究和实现主要关注于如何进行可重构器件本身的管理和优化,但是由于可重构器件对于一般性任务的处理速度并不够高效,因此可重构器件往往需要与通用处理器进行协同,共同完成任务的处理。
技术实现思路
本专利技术的目的在于提供一种基于可重构器件的混合处理器架构及其任务调度方法,以高效的处理不同类型的任务。本专利技术解决其技术问题采用的技术方案如下:一种混合处理器架构,包括:通用处理器和可重构器件,以及调度器、定位器和加载器,所述通用处理器和可重构器件通过总线二连接;其中,所述通用处理器包括:通用处理器核,用于一般任务的处理和调度器的执行;等待任务队列,用于保存到达系统中的任务;执行任务队列,用于保存调度到通用处理器核处理的任务;总线一,用于连接通用处理器核、等待任务队列、执行任务队列和总线二;所述可重构器件包括:嵌入式处理器核,用于定位器和加载器的执行;可重构任务队列,用于保存可重构任务;可重构区域,包括可重构的具体硬件单元;总线三,用于连接嵌入式处理器核、可重构任务队列、可重构区域和总线二;所述调度器用于对系统中到达的任务进行调度,所述定位器用于对可重构器件的空闲空间进行管理,所述加载器用于将可重构任务加载到可重构器件上。进一步的,所述调度器对系统中到达的任务进行调度具体包括:调度器从等待任务队列中取出一个任务,如果取出的任务不是可重构任务,则该任务被放入执行任务队列;如果取出的任务是可重构任务,则该任务被放入可重构任务队列。进一步的,所述定位器对可重构器件的空闲空间进行管理具体包括:当新的可重构任务到达可重构器件时,定位器对可重构器件的空闲空间进行搜索,找出合适的位置给新任务使用;如果任务执行完成后释放了所占用的空间,由定位器将释放出的空间加入到空闲空间记录当中,并进行空闲空间记录的更新,为下一次的分配做好准备。进一步的,所述加载器将可重构任务加载到可重构器件上具体包括:加载器根据可重构任务的需要,对可重构器件上的逻辑资源进行功能分配,然后再以配置好的资源来完成可重构任务;当可重构任务执行完成后,加载器释放由可重构任务占用的资源。本专利技术还提供了一种所述的混合处理器架构的任务调度方法,包括如下步骤:S1,唤醒调度器,搜索并识别等待任务队列中的混合任务种类;S2、分配混合任务,交由通用处理器和可重构器件分别执行;S3、搜索可重构器件的空闲空间,并将任务执行完成后释放出的空间加入到空闲空间记录当中;S4、加载新的可重构任务到可重构器件中执行。进一步的,步骤S1具体包括:当有新任务到达或者有任务执行结束时,唤醒调度器搜索等待任务队列中的任务并识别搜索到的任务是通用任务还是可重构任务,其中,所述通用任务为适合于通用处理器处理而不适合于可重构器件处理的任务,所述可重构任务为适合于可重构器件处理的任务。进一步的,步骤S2具体包括:如果调度器搜索到的任务是通用任务,则将该任务分配到执行任务队列中,如果调度器搜索到的任务是可重构任务,则将该任务分配到可重构任务队列当中,同时调度器通知定位器为可重构任务寻找可用的可重构器件上的空闲空间;不断重复上述过程,直到等待任务队列当中所有的任务都被分配。进本文档来自技高网
...
一种混合处理器架构及其任务调度方法

【技术保护点】
一种混合处理器架构,其特征在于,包括:通用处理器和可重构器件,以及调度器、定位器和加载器,所述通用处理器和可重构器件通过总线二连接;其中,所述通用处理器包括:通用处理器核,用于一般任务的处理和调度器的执行;等待任务队列,用于保存到达系统中的任务;执行任务队列,用于保存调度到通用处理器核处理的任务;总线一,用于连接通用处理器核、等待任务队列、执行任务队列和总线二;所述可重构器件包括:嵌入式处理器核,用于定位器和加载器的执行;可重构任务队列,用于保存可重构任务;可重构区域,包括可重构的具体硬件单元;总线三,用于连接嵌入式处理器核、可重构任务队列、可重构区域和总线二;所述调度器用于对系统中到达的任务进行调度,所述定位器用于对可重构器件的空闲空间进行管理,所述加载器用于将可重构任务加载到可重构器件上。

【技术特征摘要】
1.一种混合处理器架构,其特征在于,包括:通用处理器和可重构器件,以及调度器、定位器和加载器,所述通用处理器和可重构器件通过总线二连接;其中,所述通用处理器包括:通用处理器核,用于一般任务的处理和调度器的执行;等待任务队列,用于保存到达系统中的任务;执行任务队列,用于保存调度到通用处理器核处理的任务;总线一,用于连接通用处理器核、等待任务队列、执行任务队列和总线二;所述可重构器件包括:嵌入式处理器核,用于定位器和加载器的执行;可重构任务队列,用于保存可重构任务;可重构区域,包括可重构的具体硬件单元;总线三,用于连接嵌入式处理器核、可重构任务队列、可重构区域和总线二;所述调度器用于对系统中到达的任务进行调度,所述定位器用于对可重构器件的空闲空间进行管理,所述加载器用于将可重构任务加载到可重构器件上。2.如权利要求1所述的混合处理器架构,其特征在于,所述调度器对系统中到达的任务进行调度具体包括:调度器从等待任务队列中取出一个任务,如果取出的任务不是可重构任务,则该任务被放入执行任务队列;如果取出的任务是可重构任务,则该任务被放入可重构任务队列。3.如权利要求1或2所述的混合处理器架构,其特征在于,所述定位器对可重构器件的空闲空间进行管理具体包括:当新的可重构任务到达可重构器件时,定位器对可重构器件的空闲空间进行搜索,找出合适的位置给新任务使用;如果任务执行完成后释放了所占用的空间,由定位器将释放出的空间加入到空闲空间记录当中,并进行空闲空间记录的更新,为下一次的分配做好准备。4.如权利要求3所述的混合处理器架构,其特征在于,所述加载器将可重构任务加载到可重构器件上具体包括:加载器根据可重构任务的需要,对可重构器件上的逻辑资源进行功能分配,然后再以配置好的资源来完成可重构任务;当可重构任务执行完成后,加载器释放由可重构任务占用的资源。5.一种如权利要求1所述的混合处理器架构的任...

【专利技术属性】
技术研发人员:王普章胡威郭宏蒋旻刘静戴文丽唐玉馨刘丹沈欢张瑜
申请(专利权)人:武汉科技大学
类型:发明
国别省市:湖北,42

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

1