SOC软硬件协同设计中多任务性能评估算法
发布时间:2008/6/5 0:00:00 访问次数:560
摘 要:在分析现有的性能评估方法之上,提出了用mtls算法对软硬件划分结果进行性能评估,验证系统软硬件划分的优劣。并且针对单任务图描述多cpu系统结构的不足,提出采用多任务图来描述的方法。首先搭建了软硬件协同设计的平台并描述了软硬件协同设计的流程,其次对目标系统进行形式化的描述,最后重点阐述了多任务图的mtls性能评估算法,并与md,hnf,hlhet三种算法进行了比较。实验结果表明,提出的mtls算法比其他三种算法优越。
关键词:调度;分配;性能评估;软硬件划分;多任务图
引 言
随着微电子技术的发展,芯片的集成度越来越高,片上系统( soc)的发展已经是必然趋势。soc系统是将原来由许多芯片完成的功能,集中到一块芯片中完成。但soc不是各个芯片功能的简单叠加,而是从整个系统的功能和性能出发,用软硬协同设计和验证方法,利用ip复用及深亚微米技术,在一个芯片上实现复杂的功能。软硬件协同设计是一个从高层抽象建模到低层硬件建模的过程。在从无时间概念的功能模型转换为总线周期精确的功能模型过程中,软硬件划分和性能评估是软硬件协同设计的难点和关键。
传统的芯片设计中工程师一般都是凭经验进行软硬件划分,随着系统结构复杂度的增加,凭经验已经难以给出适当的划分结果,而且系统的软硬件划分结果直接影响到后续的软硬件协同设计和最终的硬件实现,因此软硬件自动划分技术成为当前研究的热点。为了实现软硬件自动划分,并且评估软硬件划分的优劣,评估因子的选择以及性能评估算法的实现相当重要,调度和分配一直是贯穿在软硬件划分性能评估的始末。目前,软硬件划分技术可以分为两大类:①首先对系统初始化,然后在调度中分析系统特征并优化分配。如yuanxie 和wanywolf提出的方法是将系统模块初始化为硬件,然后根据时间约束条件改变分配方式将部分硬件由软件替换减小系统
耗费。②在固定分配方式下进行调度,采用遗传算法、模拟退火算法等进行寻优。如dick首先初始化多种分配方案构成种群,每个个体采用md算法进行调度,然后采用遗传算法对种群进行演化,直到搜索到最优解。
本文研究的软硬件划分技术是基于第二类方法,即是在固定的分配方式下进行调度。当系统结构中存在多个处理器时,系统的工作流程由多个并发的进程构成,单任务图有时无法描述多个任务的并发性,本文采用多任务图对系统抽象。针对md (mobility directed),hnf (heavy node first),hlfet(highlevelfirstwithestimated time)算法的缺陷,提出了mtls(multitask listscheduling)性能评估方法。mtls算法考虑了系统的关键路径、任务的权重大小以及系统的时间约束,从全局把握。实验证明,mtls算法比上述三种算法能够更好地评估划分性能。
soc软硬件协同设计
soc软硬件划分平台
软硬件划分是软硬件协同设计首要问题,只有在系统各个模块确定了实现方式之后才能保证软件和硬件的设计可以同时进行。系统实现的软硬件划分平台如图1所示,由六个模块组成,分别为图形用户编辑接口、系统模型、分配模块、ip特征库、性能评估模块、结果分析。
图形用户编辑接口是用户输入/输出的接口。系统模型主要是对系统进行形式化的定义,对系统进行建模。ip特征数据库中收集了很多现有ip核的性能参数,如ip核的尺寸、最大工作频率、工作时的功耗、空闲时的功耗等。它是ip核复用技术的基础。分配模块主要是分析输入的系统模型以及该系统模型与特征数据库之间的关系,从ip库中提取特征参数,完成对数据流图的分配。性能评估模块是核心,主要是对分配完成后的数据流图进行调度,评估出系统的运行时间和功耗。结果分析模块主要是分析可行的划分解,比较得出较优的划分结果。
soc软硬件划分流程
本文采用速度、功耗和价格作为衡量的标准,这几个参数也是生产者和消费者共同关注的问题。要使划分的结果最优,实际上是一个多目标优化的过程,遗传算法可以很好地进行多目标寻优。图2是软硬件划分的流程图,整个流程在外框架是一个多目标寻优的演化过程,而在每次的演化过程中采用mtls算法对分配后的模型进行调度和评估。
首先,在图形接口输入系统形式化定义后的数据流图,从ip特征库选择合适的ip进行初始化的分配。同时初始化种群,界定优化算法的搜索空间,为多目标优化模块指定相应的优化目标。其次,调度种群中的个体,给出优化目标的评估结果,并将不满足时间约束条件的解直接删除。采用小生境技术选择较优的解构成前沿,经过演化,该前沿会逐渐靠近空间的最优前沿。最后,判断逐步演化的前沿是否为最优前沿,如果是最优前沿,演化过程结束,并输出一组非劣的划分结果和相应的目标值。
性能评
摘 要:在分析现有的性能评估方法之上,提出了用mtls算法对软硬件划分结果进行性能评估,验证系统软硬件划分的优劣。并且针对单任务图描述多cpu系统结构的不足,提出采用多任务图来描述的方法。首先搭建了软硬件协同设计的平台并描述了软硬件协同设计的流程,其次对目标系统进行形式化的描述,最后重点阐述了多任务图的mtls性能评估算法,并与md,hnf,hlhet三种算法进行了比较。实验结果表明,提出的mtls算法比其他三种算法优越。
关键词:调度;分配;性能评估;软硬件划分;多任务图
引 言
随着微电子技术的发展,芯片的集成度越来越高,片上系统( soc)的发展已经是必然趋势。soc系统是将原来由许多芯片完成的功能,集中到一块芯片中完成。但soc不是各个芯片功能的简单叠加,而是从整个系统的功能和性能出发,用软硬协同设计和验证方法,利用ip复用及深亚微米技术,在一个芯片上实现复杂的功能。软硬件协同设计是一个从高层抽象建模到低层硬件建模的过程。在从无时间概念的功能模型转换为总线周期精确的功能模型过程中,软硬件划分和性能评估是软硬件协同设计的难点和关键。
传统的芯片设计中工程师一般都是凭经验进行软硬件划分,随着系统结构复杂度的增加,凭经验已经难以给出适当的划分结果,而且系统的软硬件划分结果直接影响到后续的软硬件协同设计和最终的硬件实现,因此软硬件自动划分技术成为当前研究的热点。为了实现软硬件自动划分,并且评估软硬件划分的优劣,评估因子的选择以及性能评估算法的实现相当重要,调度和分配一直是贯穿在软硬件划分性能评估的始末。目前,软硬件划分技术可以分为两大类:①首先对系统初始化,然后在调度中分析系统特征并优化分配。如yuanxie 和wanywolf提出的方法是将系统模块初始化为硬件,然后根据时间约束条件改变分配方式将部分硬件由软件替换减小系统
耗费。②在固定分配方式下进行调度,采用遗传算法、模拟退火算法等进行寻优。如dick首先初始化多种分配方案构成种群,每个个体采用md算法进行调度,然后采用遗传算法对种群进行演化,直到搜索到最优解。
本文研究的软硬件划分技术是基于第二类方法,即是在固定的分配方式下进行调度。当系统结构中存在多个处理器时,系统的工作流程由多个并发的进程构成,单任务图有时无法描述多个任务的并发性,本文采用多任务图对系统抽象。针对md (mobility directed),hnf (heavy node first),hlfet(highlevelfirstwithestimated time)算法的缺陷,提出了mtls(multitask listscheduling)性能评估方法。mtls算法考虑了系统的关键路径、任务的权重大小以及系统的时间约束,从全局把握。实验证明,mtls算法比上述三种算法能够更好地评估划分性能。
soc软硬件协同设计
soc软硬件划分平台
软硬件划分是软硬件协同设计首要问题,只有在系统各个模块确定了实现方式之后才能保证软件和硬件的设计可以同时进行。系统实现的软硬件划分平台如图1所示,由六个模块组成,分别为图形用户编辑接口、系统模型、分配模块、ip特征库、性能评估模块、结果分析。
图形用户编辑接口是用户输入/输出的接口。系统模型主要是对系统进行形式化的定义,对系统进行建模。ip特征数据库中收集了很多现有ip核的性能参数,如ip核的尺寸、最大工作频率、工作时的功耗、空闲时的功耗等。它是ip核复用技术的基础。分配模块主要是分析输入的系统模型以及该系统模型与特征数据库之间的关系,从ip库中提取特征参数,完成对数据流图的分配。性能评估模块是核心,主要是对分配完成后的数据流图进行调度,评估出系统的运行时间和功耗。结果分析模块主要是分析可行的划分解,比较得出较优的划分结果。
soc软硬件划分流程
本文采用速度、功耗和价格作为衡量的标准,这几个参数也是生产者和消费者共同关注的问题。要使划分的结果最优,实际上是一个多目标优化的过程,遗传算法可以很好地进行多目标寻优。图2是软硬件划分的流程图,整个流程在外框架是一个多目标寻优的演化过程,而在每次的演化过程中采用mtls算法对分配后的模型进行调度和评估。
首先,在图形接口输入系统形式化定义后的数据流图,从ip特征库选择合适的ip进行初始化的分配。同时初始化种群,界定优化算法的搜索空间,为多目标优化模块指定相应的优化目标。其次,调度种群中的个体,给出优化目标的评估结果,并将不满足时间约束条件的解直接删除。采用小生境技术选择较优的解构成前沿,经过演化,该前沿会逐渐靠近空间的最优前沿。最后,判断逐步演化的前沿是否为最优前沿,如果是最优前沿,演化过程结束,并输出一组非劣的划分结果和相应的目标值。
性能评
上一篇:关于PC数字电视方案
上一篇:掉电运行