[发明专利]集成电路下层硬件映射方法、数据控制流生成方法及装置有效
申请号: | 201010622446.X | 申请日: | 2010-12-31 |
公开(公告)号: | CN102054109A | 公开(公告)日: | 2011-05-11 |
发明(设计)人: | 王新安;胡子一;安辉耀;王腾;谢峥;张兴;周生明;赵秋奇;马芝;孙亚春 | 申请(专利权)人: | 北京大学深圳研究生院 |
主分类号: | G06F17/50 | 分类号: | G06F17/50 |
代理公司: | 深圳鼎合诚知识产权代理有限公司 44281 | 代理人: | 郭燕 |
地址: | 518055 广东省*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 集成电路 下层 硬件 映射 方法 数据 控制 生成 装置 | ||
技术领域
本发明涉及集成电路设计领域,尤其是一种集成电路下层硬件映射方法、数据控制流生成方法及装置。
背景技术
在集成电路领域,通常集成电路的设计速度滞后于集成电路制造工艺的发展速度。尤其是集成电路的制造工艺进入纳米级以后,集成电路的设计速度已远远落后于集成电路制造工艺的发展速度。因此,对于集成电路设计领域来说,提高设计速度是当前最为迫切的问题之一。如图1所示,现有技术中,集成电路的设计通常包括两部分:第一部分是从基于C语言或MATLAB语言的算法描述到RTL级的描述;第二部分是从RTL级描述到标准单元ASIC结构或门阵列现(或其它S-ASIC结构)或FPGA结构的实现过程。其中第二部分的实现目前已有比较成熟的工具支持,其实现过程基本满足高效、快捷等要求。因此,提高设计速度的关键点落在了第一部分的实现上,也就是从C语言或MATLAB语言等的算法描述到RTL级的描述上,可以将这称之为集成电路下层硬件的映射方法或者高层次综合或者结构级综合。
但由于第一部分的实现主要是由技术人员根据自身对C语言或MATLAB语言的理解,人为地将其转换为RTL级的描述。也就是说,第一部分的实现受到技术人员自身的经验和知识水平的影响,对于不同的技术人员来说,实现的时间存在较大的差异。对于第一部分的实现方式,国外的一些公司已经展开了相应的研究并推了一些实现工具,比如Mentor的Catapult C、AutoESL的AutoPilot、Fore Design System的Cynthesizer、UC San Diego的SPARK等。
发明内容
本发明要解决的主要技术问题是,提供一种集成电路下层硬件映射方法和装置,能够提高集成电路的设计速度。
本发明还提供了一种数据控制流生成方法及装置,包含数据相关性、数据可并行性和相应控制信息的分析,能够辅助硬件电路设计人员进行电路设计。
为解决上述技术问题,本发明采用的技术方案如下:
一种集成电路下层硬件映射方法,包括步骤:
程序分析步骤,用于读取描述集成电路算法的计算机语言程序,并从中识别出被映射的执行对象和参数对象;
数据控制流图生成步骤,用于将识别出的执行对象和参数对象映射成描述集成电路算法的数据控制流图中的相应节点;
算子时空图生成步骤,用于根据数据控制流图中的各节点所进行的功能处理从预先建立的算子单元库中获取对应功能的至少一个算子单元,将数据控制流图转换成由算子单元组成的算子时空图;
时序约束步骤,用于根据用户规格要求和目标集成电路工艺的要求确定出总时序约束,对算子时空图中的每个算子单元标注时间,对算子时空图的每个层级进行时序约束;
时空图压缩步骤,用于根据时间标注对算子时空图进行空间上的聚类压缩,使得总体算法执行时间最接近于总时序约束;
下层硬件映射步骤,用于根据聚类压缩后的算子时空图生成集成电路下层硬件逻辑描述。
基于上述的方法,本发明还提供一种集成电路下层硬件映射装置,包括:
程序分析模块,用于读取描述集成电路算法的计算机语言,并从中识别出被映射的执行对象和参数对象;
数据控制流图生成模块,用于将识别出的执行对象和参数对象映射成描述集成电路算法的数据控制流图中的相应节点;
算子时空图生成模块,用于根据数据控制流图中的各节点所进行的功能处理从预先建立的算子单元库中取出对应功能的至少一个算子单元,将数据控制流图转换成由算子单元组成的算子时空图;
时序约束模块,用于根据用户规格需求和目标集成电路工艺的要求确定出总时序约束,对算子时空图中的每个算子单元标注时间,对算子时空图的每个层级进行时序约束;
时空图压缩模块,用于根据时间标注对时空图进行空间上的聚类压缩,并使之总体算法执行时间最接近于总时序约束;
下层硬件映射模块,根据聚类压缩后的时空图生成集成电路下层硬件逻辑描述。
本发明还提供一种数据控制流生成方法,包括步骤:
程序分析步骤,用于读取描述集成电路算法的计算机语言程序,根据该种计算机语言的规则从所述计算机语言程序中识别出被映射的执行对象和参数对象,所述执行对象包括运算指令和/或控制指令,所述参数对象包括输入数据、输出数据、中间数据中的至少一种;
数据控制流图生成步骤,用于将识别出的执行对象和参数对象映射成描述集成电路算法的数据控制流图中的相应节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学深圳研究生院,未经北京大学深圳研究生院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010622446.X/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种以太网拓扑发现的实现方法及系统
- 下一篇:一种劣质重油原料加氢处理方法