[发明专利]OPENCL编译有效
申请号: | 201310335854.0 | 申请日: | 2013-06-21 |
公开(公告)号: | CN103593220B | 公开(公告)日: | 2017-05-10 |
发明(设计)人: | D·T·L·陈;D·辛格 | 申请(专利权)人: | 阿尔特拉公司 |
主分类号: | G06F9/45 | 分类号: | G06F9/45 |
代理公司: | 北京纪凯知识产权代理有限公司11245 | 代理人: | 赵蓉民 |
地址: | 美国加*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | opencl 编译 | ||
1.一种计算机系统,包括:
具有编译器的计算机,所述编译器被配置为:
解释高级程序;
基于所述高级程序生成低级代码,其中所述低级代码表示集成电路即IC的可编程逻辑;其中所述低级代码包括硬件组件逻辑以及控制单元,其中所述硬件组件逻辑用于实现所述高级程序,并且其中所述控制单元被配置为基于主机程序来控制所述硬件组件逻辑;以及
基于所述高级程序来生成包括用于所述控制单元的机器可读实现指令的所述主机程序;以及
可编程逻辑设计软件,其被配置为使用所述低级代码来在不重新生成低级代码的情况下实现对所述高级程序的改变。
2.如权利要求1所述的计算机系统,其中所述高级程序包括Open CL、C++或它们的组合。
3.如权利要求1所述的计算机系统,其中所述低级代码包括用硬件描述语言即HDL编写的代码。
4.如权利要求3所述的计算机系统,其中所述HDL包括Verilog。
5.如权利要求1所述的计算机系统,其中所述编译器实现时序收敛循环,并且可编程逻辑设计软件被配置为在不实现所述时序收敛循环的情况下实现对所述高级程序的改变。
6.如权利要求5所述的计算机系统,其中所述可编程逻辑设计软件被配置为通过基于所述改变来修改所述主机程序,从而实现所述改变。
7.如权利要求1所述的计算机系统,其中所述编译器被配置为当所述可编程逻辑设计软件确定不能用所述低级程序实现所述改变时生成第二低级程序。
8.如权利要求1所述的计算机系统,其中所述可编程逻辑设计软件被配置为在不重新生成所述低级代码的情况下确定实现所述改变的效率。
9.如权利要求8所述的计算机系统,其中所述可编程逻辑设计软件被配置为当所述效率处于一组效率边界之外时生成或请求生成第二低级代码。
10.如权利要求1所述的计算机系统,其中所述可编程逻辑设计软件被配置为:
将当在不重新生成所述低级代码的情况下实现所述改变时的第一效率与当通过生成第二低级代码来实现所述改变时的第二效率进行比较;以及
当所述第二效率高于效率比较阈值时,基于该效率时的改变来生成或请求生成第二低级代码。
11.如权利要求1所述的计算机系统,其中所述编译器被配置为在所述可编程逻辑设计软件确定不能用所述低级程序实现所述改变时,生成第二低级程序。
12.一种用于集成电路上的可编程逻辑的编译的方法,包括:
接收高级程序,包括用于在集成电路即IC的可编程逻辑上实现的计算机可读指令;
将所述高级程序转换为表示执行所述高级程序的功能的功能组件的低级代码;
基于所述高级程序来生成主机程序,所述主机程序包括用于实现所述低级代码的计算机可读指令;
接收对所述高级程序的修改;
确定所述修改是否能够由使用所述低级代码的新主机程序实现;以及
当由使用所述低级代码的新主机程序能够实现所述修改时,生成所述新主机程序以实现所述修改。
13.如权利要求12所述的用于集成电路上的可编程逻辑的编译的方法,还包括确定所述新主机程序的效率,并且仅当所述效率处于一组效率边界内时生成所述新主机程序。
14.如权利要求13所述的用于集成电路上的可编程逻辑的编译的方法,还包括当所述效率不在该组效率边界内时生成第二低级代码。
15.如权利要求12所述的用于集成电路上的可编程逻辑的编译的方法,还包括当所述修改不能由使用所述低级代码的新主机程序实现时,生成第二低级代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿尔特拉公司,未经阿尔特拉公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310335854.0/1.html,转载请声明来源钻瓜专利网。
- 上一篇:在客户端运行桌面虚拟系统的方法及客户端
- 下一篇:导管