当前位置: 首页 > 专利查询>中山大学专利>正文

一种高层次综合工具中的指引文件自动生成方法及系统技术方案

技术编号:15238782 阅读:42 留言:0更新日期:2017-04-29 04:09
本发明专利技术公开了一种高层次综合工具中的指引文件自动生成方法及系统,该方法包括有以下步骤:A、获取代码中的循环信息,若存在人工定义的循环展开因子,则直接执行步骤C,否则执行步骤B;B、根据循环信息对循环进行展开处理,通过设计空间探索计算得到循环展开因子;C、根据步骤A或步骤B中得到的循环展开因子生成高层次综合工具的指引文件。本发明专利技术利用循环展开因子自动生成高层次综合工具的循环指引文件,进而供高层次综合工具使用,无需人工编写循环的处理代码,大大减少设计人员的工作量和压力,显著提高了高层次综合工具生成硬件的效果。本发明专利技术作为一种高层次综合工具中的指引文件自动生成方法及系统可广泛应用于计算机与电路设计领域。

【技术实现步骤摘要】

本专利技术涉及计算机与电路设计领域,尤其涉及一种高层次综合工具中的指引文件自动生成方法及系统
技术介绍
在现代的数字集成电路设计中,存在着许多数据密集型应用,例如数字媒体处理、加密算法处理等。这些数据密集型应用在高层次设计中会存在许多循环语句。关于循环的优化在编译器等计算机科学领域都存在着大量的研究。对于高层次综合来说,循环能在高层次综合中得到更加灵活的配置以及优化。随着集成电路单位面积上的门电路的集成度越来越高,我们可以牺牲一些面积来获取更快的上市周期和更优的硬件性能。在高层次综合过程中将程序中的循环部分进行展开从而可以暴露更多硬件优化的机会,例如全局调度优化。这样能使得综合出来的硬件使用更少的运行周期,使得高层次综合生成的硬件性能得以极大的提升。在现今的高层次综合工具中常用人工定义的方式对循环展开进行指引从而提升高层次综合的效果,但要求设计人员有相当丰富的循环处理经验,而且给设计人员带来额外的工作量,大大降低了设计的效率。
技术实现思路
为了解决上述技术问题,本专利技术的目的是:提供一种简单、易于实现和操作的高层次综合工具中针对循环展开的指引文件自动生成方法。为了解决上述技术问题,本专利技术的另一目的是:提供一种简单、易于实现和操作的高层次综合工具中针对循环展开的指引文件自动生成系统。本专利技术所采用的技术方案是:一种高层次综合工具中的指引文件自动生成方法,包括有以下步骤:A、获取代码中的循环信息,若存在人工定义的循环展开因子,则直接执行步骤C,否则执行步骤B;B、根据循环信息对循环进行展开处理,通过设计空间探索计算得到循环展开因子;C、根据步骤A或步骤B中得到的循环展开因子生成高层次综合工具的指引文件。进一步,所述步骤A中的循环信息包括有循环名称、循环迭代距离和人工定义的循环展开因子。进一步,所述步骤B具体包括以下子步骤:B1、根据循环信息建立循环依赖关系图;B2、计算最大迭代并行距离;B3、计算内存总线最大访问量;B4、通过设计空间探索计算得到循环展开因子。进一步,所述步骤B2中的最大迭代并行距离为指令间没有数据依赖的距离。进一步,所述步骤B3中的内存总线最大访问量根据最大迭代并行距离与访存指令能占满内存总线数的最大值计算得到。本专利技术所采用的另一技术方案是:一种高层次综合工具中的指引文件自动生成系统,该系统包括:收集判断单元,用于获取代码中的循环信息,并判断是否存在人工定义的循环展开因子,如存在,则直接运行文件生成单元;否则运行循环处理单元;循环处理单元,用于根据循环信息对循环进行展开处理,通过设计空间探索计算得到循环展开因子;文件生成单元,用于根据收集判断单元或循环处理单元中得到的循环展开因子生成高层次综合工具的指引文件。进一步,所述循环信息包括有循环名称、循环迭代距离和人工定义的循环展开因子。进一步,所述循环处理单元包括有:循环依赖图建立子单元,用于根据循环信息建立循环依赖图。迭代并行距离计算子单元,用于计算最大迭代并行距离。内存总线访问量计算子单元,用于计算内存总线的最大访问量。设计空间探索子单元,用于通过设计空间探索计算得到所需的循环展开因子。进一步,所述迭代并行距离计算子单元中的最大迭代并行距离为指令间没有数据依赖的距离进一步,所述内存总线访问量计算子单元中的内存总线最大访问量根据最大迭代并行距离与访存指令能占满内存总线数的最大值计算得到。本专利技术的有益效果是:通过本专利技术方法,利用循环展开因子自动生成高层次综合工具的循环指引文件,进而供高层次综合工具使用,无需人工编写循环的处理代码,大大减少设计人员的工作量和压力,而且也显著提高了高层次综合工具生成硬件的效果。本专利技术的另一有益效果是:通过本专利技术的系统,利用循环展开因子自动生成高层次综合工具的循环指引文件,进而供高层次综合工具使用,这样则无需人工编写循环的处理代码,大大减少设计人员的工作量和压力,而且也显著提高了高层次综合工具生成硬件的效果。附图说明下面结合附图对本专利技术的具体实施方式作进一步说明:图1是本专利技术高层次综合工具中针对循环展开的指引文件自动生成方法的步骤图;图2是本专利技术高层次综合工具中针对循环展开的指引文件自动生成方法的具体实施例的步骤图;图3是循环依赖图的生成示意图;图4是本专利技术具体实施例中进行高层次综合的代码;图5为图4代码循环展开前的中间表达式代码;图6为图4代码循环展开75次后的中间表达式代码简图;图7是本专利技术高层次综合工具中针对循环展开的指引文件自动生成系统的结构框图;图8是本专利技术高层次综合工具中针对循环展开的指引文件自动生成系统的具体实施例的结构框图。具体实施方式下面结合附图对本专利技术的具体实施方式作进一步说明:参照图1,一种高层次综合工具中的指引文件自动生成方法,包括有以下步骤:A、获取代码中的循环信息,若存在人工定义的循环展开因子,则直接执行步骤C,否则执行步骤B;B、根据循环信息对循环进行展开处理,通过设计空间探索计算得到循环展开因子;C、根据步骤A或步骤B中得到的循环展开因子生成高层次综合工具的指引文件。进一步作为优选的实施方式,所述步骤A中的循环信息包括有循环名称、循环迭代距离和人工定义的循环展开因子。其中循环的迭代距离是指循环的迭代因子的取值范围,以附图3为例,该for循环的迭代距离即为迭代因子i的取值范围,即5。参照图2,进一步作为优选的实施方式,所述步骤B具体包括以下子步骤:B1、根据循环信息建立循环依赖关系图;参照图3,根据图左的代码创建图右的循环依赖关系图,具体步骤为:遍历程序中的所有指令,根据数据依赖关系,即读操作、写操作以及带有回边的PHI指令,创建循环依赖关系图。当程序中包含调用函数时,由于包含了循环体外的数据依赖关系,将中止循环展开的操作。B2、计算最大迭代并行距离;进一步作为优选的实施方式,所述步骤B2中的最大迭代并行距离为指令间没有数据依赖的距离,其计算公式为:InstParallelNum=Σn∈recurrencepathDepDistn其中DepDistn是迭代路径中无依赖关系的第n对指令间的距离,recurrencepath是迭代路径,InstParallelNum是最大迭代并行距离,即在建立循环依赖关系图时得到的无数据依赖的指令的最大距离。如图3所示,其最大并行迭代距离为1,即I3与I4间无依赖关系的指令距离为1。以图4所述代码为例,及计算得到的InstParallelNum为4294967295。B3、计算内存总线最大访问量;进一步作为优选的实施方式,所述步骤B3中的内存总线最大访问量根据最大迭代并行距离与访存指令能占满内存总线数的最大值计算得到,其计算公式为:IncreaseCost=ΔMux.AddressFanInCost+ΔMux.DataFanInCost+ΔDataPathCost计算出循环展开消耗的资源,其中AddressFanInCost为多路器的对内存访问的资源开销,DataFanInCost为数据扇入的多路器资源的消耗量。ΔMux.AddressFanInCost=getMuxCost(NumAddrFanIn,AddrWidth)ΔMux.DataFanInCost=getMuxCost(NumDataFanIn,DataWidth)其中的Unrollfa本文档来自技高网...

【技术保护点】
一种高层次综合工具中的指引文件自动生成方法,其特征在于:包括有以下步骤:A、获取代码中的循环信息,若存在人工定义的循环展开因子,则直接执行步骤C,否则执行步骤B;B、根据循环信息对循环进行展开处理,通过设计空间探索计算得到循环展开因子;C、根据步骤A或步骤B中得到的循环展开因子生成高层次综合工具的指引文件。

【技术特征摘要】
1.一种高层次综合工具中的指引文件自动生成方法,其特征在于:包括有以下步骤:A、获取代码中的循环信息,若存在人工定义的循环展开因子,则直接执行步骤C,否则执行步骤B;B、根据循环信息对循环进行展开处理,通过设计空间探索计算得到循环展开因子;C、根据步骤A或步骤B中得到的循环展开因子生成高层次综合工具的指引文件。2.根据权利要求1所述的一种高层次综合工具中的指引文件自动生成方法,其特征在于:所述步骤A中的循环信息包括有循环名称、循环迭代距离和人工定义的循环展开因子。3.根据权利要求1所述的一种高层次综合工具中的指引文件自动生成方法,其特征在于:所述步骤B具体包括以下子步骤:B1、根据循环信息建立循环依赖关系图;B2、计算最大迭代并行距离;B3、计算内存总线最大访问量;B4、通过设计空间探索计算得到循环展开因子。4.根据权利要求3所述的一种高层次综合工具中的指引文件自动生成方法,其特征在于:所述步骤B2中的最大迭代并行距离为指令间没有数据依赖的距离。5.根据权利要求3所述的一种高层次综合工具中的指引文件自动生成方法,其特征在于:所述步骤B3中的内存总线最大访问量根据最大迭代并行距离与访存指令能占满内存总线数的最大值计算得到。6.一种高层次综合工具中的指引文件自动生成系统,其特征在于:该系统包括:收集判断单元,用于...

【专利技术属性】
技术研发人员:王自鑫陈弟虎衣杨黄侃
申请(专利权)人:中山大学
类型:发明
国别省市:广东;44

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

1