一种调度时可重构硬件资源的描述方法

文档序号:6601811阅读:156来源:国知局
专利名称:一种调度时可重构硬件资源的描述方法
技术领域
本发明属于计算机技术领域,具体涉及一种调度时可重构硬件资源的描述方法。
背景技术
目前,针对调度时可重构硬件资源描述方法主要包括空闲区描述方法和状态矩阵 的描述方法,空闲区描述方法主要是记录空闲区域来对资源进行描述,其中最重要的是MER 最大空闲矩形法(MaximalEmpty Rectangle), MER方法记录一个互不交叠的空闲资源矩形 列表,通过查找匹配的空闲资源矩形获得硬件任务的放置位置,该方法需要对资源矩形列 表进行维护,查找匹配的空闲资源时复杂度高;状态矩阵描述方式通过维护一个记录可重 构计算单元(ReconfigurableComputing Unit)状态的矩阵来管理资源,并通过扫描状态矩 阵查找硬件任务的可放置位置,此方法需扫描和查找状态矩阵,花费时间长,而且这两种方 法都适合在基于二维器件构建的可重构计算模型中运行,因为二维器件模型中,计算资源 以二维阵列的方式划分和组织,重构的最小单位为二维阵列中的一个单元,一个硬件任务 占用阵列中的一个矩形区域,任务放置具有二维自由度,在对硬件任务进行调度时若要考 虑任务时间属性,二维器件模型运行时间会更长,维护代价会更高,不利于系统的实时性任 务调度。在基于一维器件构建的可重构计算模型中,计算资源以列为单位,一个硬件任务可 占用连续的若干列资源,任务的放置只具有一维自由度,考虑任务时间属性可将问题转化 到资源数和时间构成的二维坐标下进行研究,可以减少信息记录,简化维护程序,缩短调度 时间,降低调度复杂度,提高调度效率。

发明内容
为了克服上述现有技术中存在的问题,本发明的目的是提供一种调度时可重构硬 件资源的描述方法,在基于一维器件构建的可重构计算模型基础上,对可重构硬件资源进 行描述,具有信息记录少,维护程序简单,调度时查找时间短的优点。为了达到上述目的,本发明所采用的技术方案是一种调度时可重构硬件资源的描述方法,包括以下步骤第一步,在基于一维器件构建的可重构计算模型基础上,以资源轴为横轴R,以时 间轴为纵轴T建立R-T坐标系,基于R-T坐标系的可重构硬件任务可描述为= (a,, e,, wp cQ,其中i为正整数,a,是任务凡到达时刻,e,是任务凡执行时间,是任务凡占用资 源的宽度,单位为RCU数,屯是任务凡截止时刻&将占据R-T坐标系中一个长为ei,宽为
的矩形区域,称为时空区域,R-T坐标系中被任务占据的时空区域形成任务区域,不被任 务占据的时空区域形成空闲区域,第二步,识别R-T坐标系中正在执行任务的边界,R-T坐标系中有四种边界类型, 包括底边界B」、顶边界T0Pk、左边界Lm和右边界Rn,其中j,k,m, n均为正整数,但不一一对 应,底边界Bj由任务区域的顶边构成,顶边界T0Pk由任务区域的底边构成,左边界Lm由任 务区域的右边或时间轴构成,右边界Rn由任务区域的左边或垂直于横坐标轴的r = W垂直线构成,r为资源坐标轴上最大值即RCU最大数目,W为整数,R-T坐标系中正在执行的任务 边界将坐标空间划分为任务区域和空闲区域,初始时,R-T坐标系中存在三个边界,分别是 作为左边界Lm的时间轴,以(0,0)和(W,0)为端点的底边界Bj,以及作为右边界Rn的r = W垂直线,任务必须放置在这些边界之间,一个任务获取资源之后,就会在R-T坐标系中占 用一个矩形区域,进而引入新的边界,这些边界成为其它待调度任务放置的约束,任务放置 时必须至少使其底边以及左边或右边之一紧靠已经存在的边界,然后由任务边界图映射生 成对应的边界节点图,映射过程如下任务边界图中的各边界映射为边界节点图的边界节 点,边界节点图中用四种连接边表示任务边界图中各边界之间的关系,分别记为top,left, right和next,其中,next表示同类边界按照一定顺序排序后在位置上的相邻关系,任务边 界图中的同类边按值由小到大排序后,相邻的两条同类边构成next关系,由值小的边指向 值大的边,相应地,从任务边界图向边界节点图映射时,边界节点图中next边由值小的边 界节点指向值大的边界节点;left和right连接边表示空闲区域中与某一底边界相接的左 边界和右边界,top连接边表示空闲区域中与某一左边界相接的顶边界,相应地,从任务边 界图向边界节点图映射时,若四中类型的边界在任务边界图中构成矩形空闲区域,在边界 节点图中以底边界映射来的边界节点为出发节点通过left连接指向与其紧邻的左边界映 射来的边界节点,在边界节点图中以底边界映射来的边界节点为出发点通过right连接指 向与其紧邻的右边界映射来的边界节点,同样,在边界节点图中以左边界映射来的边界节 点为出发点通过top连接指向与其紧邻的顶边界映射来的边界节点,第三步,用边界表数据结构图对边界节点图进行描述,单个边界节点数据结构由 六个部分组成,分别是边界标识,左边界指针1,右边界指针2,顶边界指针3,链表指针4, 和边界位置信息数据5,边界标识标记不同的边界;由边界节点图映射生成边界表数据结 构图时,边界节点图中的每个边界节点都映射产生单个边界节点数据结构,相应地,边界节 点图中的left由单个边界节点数据结构的左边界指针1指向另一个单个边界节点数据结 构的边界的边界标识;right由单个边界节点数据结构的右边界指针2指向另一个单个边 界节点数据结构的边界的边界标识;top由单个边界节点数据结构的顶边界指针3指向另 一个单个边界节点数据结构的边界的边界标识;next由单个边界节点数据结构的链表指 针4指向另一个单个边界节点数据结构的边界的边界标识,第四步,调度时以边界节点数据结构图中边界节点类型为底边界且值最小的节点 作为源节点6遍历整个图实现任务调度。本发明的有益效果是由于本发明在坐标系引入时间轴,将一维空间问题转化到二维坐标下,实现空间 布局和时间调度的结合,避免了在二维空间布局的同时再考虑调度在时间上的约束,所以 降低运行复杂度,由于本发明在任务实时调度时只对当前坐标下的边界信息进行记录,所 以记录信息少,维护程序简单,可缩短调度时间。


图1是本发明的R-T坐标系示意图,横坐标R是RCU资源数目,纵坐标T是时间。图2是本发明的R-T坐标系下任务边界示意图。图3是图2所对应的边界节点图。
图4是单个节点数据结构示意图。图5是图3的边界表数据结构示意图,箭头指向表示指针指向。
具体实施例方式下面结合附图对本发明作详细描述。一种调度时可重构硬件资源的描述方法,包括以下步骤第一步,参照图1,在基于一维器件构建的可重构计算模型基础上,以资源轴为横 轴R,以时间轴为纵轴T建立R-T坐标系,将一维模型上的可重构硬件任务调度问题转化到 二维坐标系中,基于R-T坐标系的可重构硬件任务可描述为= (ai,ei,Wi,cQ,其中i为 正整数,a,是任务凡到达时刻,ei是任务凡执行时间,w,是任务凡占用资源的宽度,单位 为RCU数,屯是任务凡截止时刻&将占据R-T坐标系中一个长为ei,宽为Wi的矩形区域, 称为时空区域,R-T坐标系中被任务占据的时空区域形成任务区域,不被任务占据的时空区 域形成空闲区域,第二步,识别R-T坐标系中正在执行任务和T2的边界,R-T坐标系中有四种边 界类型,包括底边界B」、顶边界T0Pk、左边界Lm和右边界&,其中j,k,m,n均为正整数,但不 一一对应,底边界Bj由任务区域的顶边构成,顶边界T0Pk由任务区域的底边构成,左边界Lm 由任务区域的右边或时间轴构成,右边界Rn由任务区域的左边或垂直于横坐标轴的r = W 垂直线(r为资源坐标轴上最大值即RCU最大数目,W为整数)构成,R-T坐标系中正在执行 的任务边界将坐标空间划分为任务区域和空闲区域,初始时,R-T坐标系中存在三个边界, 分别是作为左边界Lm的时间轴,以(0,0)和(W,0)为端点的底边界Bp以及作为右边界&的 r = ff垂直线,任务必须放置在这些边界之间,一个任务获取资源之后,就会在R-T坐标系中 占用一个矩形区域,进而引入新的边界,这些边界成为其它待调度任务放置的约束,任务放 置时必须至少使其底边以及左边或右边之一紧靠已经存在的边界,然后由任务边界图映射 生成对应的边界节点图,参照图2,分别用B2, L” L2,L3,TOP!表示,映射过程如下参 照图3,任务边界图中的各边界映射为边界节点图的边界节点,边界节点图中用四种连接边 表示任务边界图中各边界之间的关系,分别记为top,left, right和next,其中,next边表 示同类边界按照一定顺序排序后在位置上的相邻关系,任务边界图中的同类边按值由小到 大排序后,相邻的两条同类边构成next关系,由值小的边指向值大的边,相应地,从任务边 界图向边界节点图映射时,边界节点图中next边由值小的边界节点指向值大的边界节点; 图2中Li,L2,L3按值由小到大排序后,与k构成next关系的是L2,相应地,图3中next边 由k指向L2 ;与L2构成next关系的是L3,相应地,图3中next边由L2指向L3,和B2也 存在这样的关系,left和right连接边表示空闲区域中与某一底边界相接的左边界和右边 界,top连接边表示空闲区域中与某一左边界相接的顶边界,相应地,从任务边界图向边界 节点图映射时,若四中类型的边界在任务边界图中构成矩形空闲区域,在边界节点图中以 底边界映射来的边界节点为出发节点通过left连接指向与其紧邻的左边界映射来的边界 节点,在边界节点图中以底边界映射来的边界节点为出发点通过right连接指向与其紧邻 的右边界映射来的边界节点,同样,在边界节点图中以左边界映射来的边界节点为出发点 通过top连接指向与其紧邻的顶边界映射来的边界节点,在图2中,U、B2和礼构成空矩形 闲区域,B2紧邻的左边界是映射后图3中left边由B2指向k ;在图2中B2右边界是礼,映射后图3中right边由B2指向队;同样在图2中LyBpRpTi也构成空闲区域,紧邻的 左边界是L2,映射后图3中left边由&指向L2 ;图2中&右边界是礼,的顶边界是1\, 映射后图3中right边由Bi指向礼,top边由k指向空闲区域的划法会影响到边界节 点图的最终形式,但是从任务边界图到边界节点图的映射方法是不变的,第三步,用边界表数据结构图对边界节点图进行描述,参照图4,单个边界节点数 据结构由六个部分组成,分别是边界标识,左边界指针1,右边界指针2,顶边界指针3,链 表指针4,和边界位置信息数据5,由边界节点图映射生成边界表数据结构图时,参照图5, 边界节点图中的每个边界节点都映射产生单个边界节点数据结构,相应地,边界节点图中 的left由单个边界节点数据结构的左边界指针1指向另一个单个边界节点数据结构的边 界的边界标识;right由单个边界节点数据结构的右边界指针2指向另一个单个边界节点 数据结构的边界的边界标识;top由单个边界节点数据结构的顶边界指针3指向另一个单 个边界节点数据结构的边界的边界标识;next由单个边界节点数据结构的链表指针4指向 另一个单个边界节点数据结构的边界的边界标识,与边界节点图不对应,在边界节点数据 结构图中添加了一个位置在无穷大处的顶边界T0P2,可以标识时间轴无穷大处的空闲区域 边界情况,简化调度时计算,第四步,参照图5,在调度时以边界节点数据结构图中边界节点类型为底边界且值 最小的节点作为源节点6遍历整个图实现任务调度。附图中R为RCU资源数目;T为时间为可重构硬件任务, 为任务凡到达时 刻,e,为任务T,执行时间,Wi为任务T,占用资源的宽度,屯是任务T,截止时刻和T2为 可重构硬件任务办和B2为底边界,LpL2和L3为左边界,为右边界,TOPi为顶边界;1为 左边界指针,2为右边界指针,3为顶边界指针,4为链表指针,5为边界位置信息数据;6为 源节点。
权利要求
一种调度时可重构硬件资源的描述方法,其特征在于包括以下步骤第一步,在基于一维器件构建的可重构计算模型基础上,以资源轴为横轴R,以时间轴为纵轴T建立R-T坐标系,基于R-T坐标系的可重构硬件任务可描述为Ti=(ai,ei,wi,di),其中i为正整数,ai是任务Ti到达时刻,ei是任务Ti执行时间,wi是任务Ti占用资源的宽度,单位为RCU数,di是任务Ti截止时刻;Ti将占据R-T坐标系中一个长为ei,宽为wi的矩形区域,称为时空区域,R-T坐标系中被任务占据的时空区域形成任务区域,不被任务占据的时空区域形成空闲区域,第二步,识别R-T坐标系中正在执行任务的边界,R-T坐标系中有四种边界类型,包括底边界Bj、顶边界TOPk、左边界Lm和右边界Rn,其中j,k,m,n均为正整数,但不一一对应,底边界Bj由任务区域的顶边构成,顶边界TOPk由任务区域的底边构成,左边界Lm由任务区域的右边或时间轴构成,右边界Rn由任务区域的左边或垂直于横坐标轴的r=W垂直线构成,r为资源坐标轴上最大值即RCU最大数目,W为整数,R-T坐标系中正在执行的任务边界将坐标空间划分为任务区域和空闲区域,初始时,R-T坐标系中存在三个边界,分别是作为左边界Lm的时间轴,以(0,0)和(W,0)为端点的底边界Bj,以及作为右边界Rn的r=W垂直线,任务必须放置在这些边界之间,一个任务获取资源之后,就会在R-T坐标系中占用一个矩形区域,进而引入新的边界,这些边界成为其它待调度任务放置的约束,任务放置时必须至少使其底边以及左边或右边之一紧靠已经存在的边界,然后由任务边界图映射生成对应的边界节点图,映射过程如下任务边界图中的各边界映射为边界节点图的边界节点,边界节点图中用四种连接边表示任务边界图中各边界之间的关系,分别记为top,left,right和next,其中,next表示同类边界按照一定顺序排序后在位置上的相邻关系,任务边界图中的同类边按值由小到大排序后,相邻的两条同类边构成next关系,由值小的边指向值大的边,相应地,从任务边界图向边界节点图映射时,边界节点图中next边由值小的边界节点指向值大的边界节点;left和right连接边表示空闲区域中与某一底边界相接的左边界和右边界,top连接边表示空闲区域中与某一左边界相接的顶边界,相应地,从任务边界图向边界节点图映射时,若四中类型的边界在任务边界图中构成矩形空闲区域,在边界节点图中以底边界映射来的边界节点为出发节点通过left连接指向与其紧邻的左边界映射来的边界节点,在边界节点图中以底边界映射来的边界节点为出发点通过right连接指向与其紧邻的右边界映射来的边界节点,同样,在边界节点图中以左边界映射来的边界节点为出发点通过top连接指向与其紧邻的顶边界映射来的边界节点,第三步,用边界表数据结构图对边界节点图进行描述,单个边界节点数据结构由六个部分组成,分别是边界标识,左边界指针(1),右边界指针(2),顶边界指针(3),链表指针(4),边界位置信息数据(5),边界标识标记不同的边界;由边界节点图映射生成边界表数据结构图时,边界节点图中的每个边界节点都映射产生单个边界节点数据结构,相应地,边界节点图中的left由单个边界节点数据结构的左边界指针(1)指向另一个单个边界节点数据结构的边界的边界标识;right由单个边界节点数据结构的右边界指针(2)指向另一个单个边界节点数据结构的边界的边界标识;top由单个边界节点数据结构的顶边界指针(3)指向另一个单个边界节点数据结构的边界的边界标识;next由单个边界节点数据结构的链表指针(4)指向另一个单个边界节点数据结构的边界的边界标识,第四步,调度时以边界节点数据结构图中边界节点类型为底边界且值最小的节点作为源节点(6)遍历整个图实现任务调度。
全文摘要
一种调度时可重构硬件资源的描述方法,先在基于一维器件构建的可重构计算模型基础上,以资源轴为横轴,以时间轴为纵轴建立R-T坐标系,可重构硬件任务描述为Ti形成任务区域,再识别R-T坐标系中正在执行任务的边界,初始时,R-T坐标系中存在三个边界,一个任务获取资源之后,就会在R-T坐标系中占用一个矩形区域,进而引入新的边界,这些边界成为其它待调度任务放置的约束,任务放置时必须至少使其底边以及左边或右边之一紧靠已经存在的边界,然后由任务边界图映射生成对应的边界节点图,再用边界表数据结构图对边界节点图进行描述,最后实现任务调度,本发明具有信息记录少,维护程序简单,调度时查找时间短的优点。
文档编号G06F9/46GK101853178SQ20101016348
公开日2010年10月6日 申请日期2010年4月30日 优先权日2010年4月30日
发明者伍卫国, 余国良, 杨志华, 钱德沛 申请人:西安交通大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1