一种基于线性延时模型的高层次综合调度方法技术

技术编号:12256363 阅读:111 留言:0更新日期:2015-10-28 19:39
本发明专利技术公开一种基于线性延时模型的高层次综合调度方法,包括:获取输入的电路描述后构建对应的控制数据流图;对控制数据流图中的操作运算进行分类,为每一类操作运算建立对应的延时模型;基于延时模型对操作运算进行延时估算;计算控制数据流图中任意数据路径的延时信息;将计算出的延时信息标注至控制数据流图中,并根据带有延时信息的控制数据流图构建调度图;采用差分约束系统调度算法对调度图进行调度得到调度结果。本发明专利技术所使用的线性延时模型在保证估算的准确性同时降低算法时间复杂度为多项式时间复杂度,可以快速、准确的求解调度目标函数得到一个准确的结果,使得整体的调度结果更优,从而能够更加快速准确地生成硬件电路结构。

【技术实现步骤摘要】

本专利技术涉及硬件电路结构设计领域,具体涉及一种基于线性延时模型的高层次综 合调度方法。
技术介绍
从20世纪60年代初期开始,微电子相关制造工艺技术的发展便遵循着英特尔公 司联合创始人GordonMoore提出的预言,S卩摩尔定律--每过1. 5年,集成电路的芯片上 所集成的电路数目就将增加一倍,微处理器的效能综合表现也将提升一倍。集成电路产品 如此极速的发展给其设计工作提出了更为苛刻的要求,也给设计者的设计效益带来了严重 的问题。关于集成电路的设计工具和设计方法的进步已经成为推动集成电路产业发展的不 可或缺的部分。当下,集成电路的前期设计基本上通过硬件描述语言进行开展,而主流的硬件描 述语言有Verilog语言和VHDL语言这两种。由于集成电路的复杂度不断上升,传统EDA工 具和传统寄存器传输级的设计方法处于极大的困境,该行业涉及的抽象水平也从原来的寄 存器传输级别提升至如今的电子系统级别,而高层次综合技术则是用于完成上述转变任务 的最关键的技术。 高层次综合的目标是在目标集合中得到一个满足既定的数字系统的算法级行为 描述、各类用户约束等条件的结构。高层次综合流程包括:编译与转换、算子调度、资源分 配、寄存器分配和连线网络生成与优化。其中,算子调度即调度算法是为编译转换生成的控 制数据流图中的每一个操作运算分配到各个控制步,从而得到满足约束条件的最优或较优 算子调度方案,是高层次综合流程中最为重要的一个步骤。调度算法按照其实现方法分类, 主要可以分为变换法、整数线性规划法和构造法。所述变换法是首先选用简单易实现的调 度算法(例如ASAP)获得一个最初的调度方案,然后对该调度方案进行迭代变换,用来得到 最优的调度结果;所述整数线性规划(ILP)法是将调度问题转化为整数线性规划问题进行 求解;而构造法是每次先选择一个操作,再选择一个适当的控制步,然后将该操作调度到选 定的控制步中,直到所有的操作都被调度完成。构造法的关键是如何选择下一步的调度操 作,以及如何选择合适的控制步来放置选定的操作,而为每一个操作和运算分配到正确的 控制步中需要对所有数据路径所需延时有一个精确的估算。而目前的高层次调度方法中, 对数据路径所需延时的估算方法要么算法时间复杂度高,要么估算精确度低,从而使得整 体调度效果差,已经不能满足集成电路设计的发展需求。
技术实现思路
有鉴于此,本专利技术的目的在于克服现有技术的不足,提供一种基于线性延时模型 的高层次综合调度方法,采用的技术方案如下: ,包括: S1、获取输入的电路描述后构建对应的控制数据流图; 52、 对控制数据流图中的操作运算进行分类,为每一类操作运算建立对应的延时模 型; 53、 基于延时模型对操作运算进行延时估算; 54、 计算控制数据流图中任意数据路径的延时信息; 55、 将计算出的延时信息标注至控制数据流图中,并根据带有延时信息的控制数据流 图构建调度图; 56、 采用差分约束系统调度算法对调度图进行调度得到调度结果。 本专利技术的对输入描述中包含的操 作运算进行合理分类,并为各类操作运算建立对应的线性延时模型,根据延时模型对输入 描述中的各数据路径进行延时估算,并将延时估算结果提供给调度框架进行调度,本专利技术 所使用的线性延时模型在保证估算的准确性同时降低算法时间复杂度为多项式时间复杂 度,可以快速并准确的对调度目标函数进行求解,从而能够更加快速精确地生成硬件电路 结构。 作为优选,所述操作运算包括逻辑操作运算、数学计算操作运算和比较大小的操 作运算,所述步骤S2包括: 将逻辑操作运算划分为一类并建立位级并行延时模型:dai) =D,Vi=i,式中 d(i,j)表示操作运算从任意第i输入位至任意第j输出位的延时,D即为该操作运算的关 键路径延时,为常数; 将数学计算操作运算划分为一类并建立位级线性增量延时模型:勺模型中的每位延时增量,_为第〇输入 位至第0输出位的延时; 将比较大小的操作运算划分为一类并建立位级线性减量延时模型: 議_|:二:一一PI 最高输入位至最高输出位的延时,N为该算子的输入位宽; 将逻辑操作运算、数学计算操作运算和比较大小的操作运算之外的操作运算划分为一 类并建立黑盒模型:d(i,丨〕=.D。 与运算、或运算、非运算等逻辑运算操作的任意第j输出位的延时只依赖于第j输 入位,因此将逻辑运算操作划分为一类;加减乘除等数学操作运算的任意第j输出位的延 时依赖于所有i〈=j的第i输入位,且延时随位数的增加而趋于线性增加,因此将数学运 算操作划分为一类;大于、小于、等于等比较判断运算操作的输出位只有一位,且该输出位 的延时依赖于所有输入位并随输入位位数的增加而趋于线性减小,因此将比较判断操作运 算划分为一类;其它一些复杂的运算操作的位级延时无法用线性规律拟合,因此将它们划 分为一类。 作为优选,所述步骤S4包括:从顶至下遍历该数据路径,计算该数据路径的延时 信息,计算方法详细如下: 当延时模型为黑盒模型时,按照公另汁 算数据路径的延时信息,其中为算子V第M输出位的延时,揉为算子V的第1 输出位的延时为算子u的第N输出位的延时为算子u的第1输出位的延 时; 当延时模型为位级并行延时模型时,按照公式计算数据路径 的延时信息; 当延时模型为位级线性增量延时模型时,按照公式计算数据路径的延时信息,其中, 当延时模型为位级线性减量延时模型时,按照公式算数据路径的延时信息,其中, A = -X (M - 1) + 。 算子v和u是数据路径中链接的两个算子,其中算子u作为算子v的输入,因此算 子u的输出位即对应算子v的输入位,如此便可计算算子u的输出位到算子v的输出位的 延时,当数据路径有多个算子时,不断迭代计算即可得到该数据路径的延时结果。 作为优选,所述步骤S6包括: 561. 对调度图的节点构建相应的调度变量; 562. 根据调度变量,将所有调度约束都转化为对应的差分约束公式后,将获得的所有 差分约束公式转化成整形规划矩阵; 563. 根据高层次综合的需求结果,构建相应的目标函数; 564. 将整形规划矩阵作为目标函数的约束条件,进行线性规划求解,判断是否能求解 获得目标函数的最优值,若否,则返回执行步骤S63,反之获得该目标函数的最优值,同时获 得对应的整形规划矩阵的值,进而获得调度结果。 与现有技术相比,本专利技术具有如下有益效果:本专利技术的一种基于线性延时模型的 高层次综合调度方法对输入描述中包含的操作运算进行合理分类,并为各类操作运算建立 对应的线性延时模型,根据延时模型对输入描述中的各数据路径进行延时估算,并将延时 估算结果提供给调度框架进行调度,本专利技术所使用的线性延时模型在保证估算的准确性同 时降低算法时间复杂度为多项式时间复杂度,可以快速并准确的对调度目标函数进行求 解,从而能够更加快速精确地生成硬件电路结构,满足集成电路设计的发展需求。【附图说明】图1是本专利技术的控制数据流图示意图; 图2是本专利技术的流程图; 图3是本专利技术的调度图; 图4是本专利技术的位级并行模型示意图; 图5是本专利技术的位级线性增量模型示意图; 图6是本专利技术的位级线性减量模型示意图; 图7是应用本专利技术的方法进行测试的结果示意图。【具体实施方式】下面结合附图和实施例对本发本文档来自技高网
...
一种<a href="http://www.xjishu.com/zhuanli/55/CN105005638.html" title="一种基于线性延时模型的高层次综合调度方法原文来自X技术">基于线性延时模型的高层次综合调度方法</a>

【技术保护点】
一种基于线性延时模型的高层次综合调度方法,其特征在于,包括以下步骤:S1、获取输入的电路描述后构建对应的控制数据流图;S2、对控制数据流图中的操作运算进行分类,为每一类操作运算建立对应的延时模型;S3、基于延时模型对操作运算进行延时估算;S4、计算控制数据流图中任意数据路径的延时信息; S5、将计算出的延时信息标注至控制数据流图中,并根据带有延时信息的控制数据流图构建调度图;S6、采用差分约束系统调度算法对调度图进行调度得到调度结果。

【技术特征摘要】

【专利技术属性】
技术研发人员:郭建平王自鑫陈弟虎罗新潮黄侃涂玏
申请(专利权)人:广东顺德中山大学卡内基梅隆大学国际联合研究院中山大学
类型:发明
国别省市:广东;44

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

1