[发明专利]一种FPGA的高层次综合方法和装置有效
申请号: | 201910044651.3 | 申请日: | 2019-01-17 |
公开(公告)号: | CN109828799B | 公开(公告)日: | 2022-05-17 |
发明(设计)人: | 刘建洋;王海力;连荣椿;马明 | 申请(专利权)人: | 京微齐力(北京)科技有限公司 |
主分类号: | G06F9/448 | 分类号: | G06F9/448 |
代理公司: | 北京亿腾知识产权代理事务所(普通合伙) 11309 | 代理人: | 陈霁 |
地址: | 100080 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 fpga 高层次 综合 方法 装置 | ||
本说明书实施例提供一种现场可编程门阵列FPGA的高层次综合方法和装置,包括:获取待执行的C/C++文件;根据操作时间表中存储的不同操作的占用时间,对所述C/C++文件中包含的操作Vn进行划分,n≥1且为整数,生成一个划分方案Pmax,其中所述划分方案Pmax是所述FPGA执行完所述操作Vn所用时间最短的划分方案;根据所述划分方案Pmax,生成对应的网表。如此,可以提高整个设计的运行效率。
技术领域
本说明书一个或多个实施例涉及计算机技术领域,尤其涉及FPGA的高层次综合方法和装置。
背景技术
在高层次综合过程中,以C/C++语言编写的程序中没有描述不同的操作占用的时间长短,但在现场可编程门阵列(Field-Programmable Gate Array,FPGA)中,不同的操作需要占用的时间长短不一样。因此,如果高层次综合生成的硬件描述语言Verilog中,不同的操作不能赋予合理的时间长短,那么就会最终影响整个设计的运行效率。
因此,希望能有改进的方案,能够对不同的操作赋予合理的运行时间长短,由此提高整个设计的运行效率。
发明内容
本说明书一个或多个实施例描述了一种FPGA的高层次综合方法和装置,能够对不同的操作赋予合理的运行时间长短,由此提高整个设计的运行效率。
根据第一方面,提供了一种现场可编程门阵列FPGA的高层次综合方法,包括:
获取待执行的C/C++文件;
根据操作时间表中存储的不同操作的占用时间,对所述C/C++文件中包含的操作Vn进行划分,n≥1且为整数,生成一个划分方案Pmax,其中所述划分方案Pmax是所述FPGA执行完所述操作Vn所用时间最短的划分方案;
根据所述划分方案Pmax,生成对应的网表。
在一个可能的实施例中,所述操作时间表中存储的不同操作的占用时间通过下述方法获得:在预设的测试用例上,运行FPGA流程,计算出每一种操作的占用时间。
在一个可能的实施例中,所述根据操作时间表中存储的不同操作的占用时间,对所述C/C++文件中包含的操作Vn进行划分,n≥1且为整数,生成一个划分方案Pmax,还包括:
根据所述操作Vn之间的先后依赖关系,将所述操作Vn依序分成k个操作组G,使得每一个操作组Gj(Vm)中的操作相互独立,并且1≤k≤n,1≤j≤k,1≤m≤n;
设定j初始值为1,设定所述划分方案Pmax为空,设定所述划分子方案Pj为空;
当j≤k时,执行下述动作:
根据操作时间表中存储的不同操作的占用时间,对所述操作组Gj(Vm)进行划分,生成一个划分子方案Pj;
将所述划分子方案Pj添加进所述划分方案Pmax,j自增1,将所述划分子方案Pj设定为空。
在一个可能的实施例中,所述根据操作时间表中存储的不同操作的占用时间,对所述操作组Gj(Vm)进行划分,生成一个划分子方案Pj,还包括:
根据操作时间表中存储的不同操作的占用时间,将所述操作组Gj(Vm)中的操作按其对应的占用时间从大到小排序,生成一个操作序列Q(Vq1,…,Vqi,…,Vqm),1≤i≤m;
设定一个时钟周期T,使得所述时钟周期T等于所述操作Vq1的占用时间tq1;
设定i初始值为1,设定当前待执行操作序列Qc为空,设定划分子方案Pj为空,设定当前待执行时间tc为0;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于京微齐力(北京)科技有限公司,未经京微齐力(北京)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910044651.3/2.html,转载请声明来源钻瓜专利网。