本发明涉及集成电路设计,特别是指一种寄存器传输级电路设计的资源估算方法及装置。
背景技术:
1、在电路设计中,资源估算是评估设计的硬件资源需求的重要步骤。传统的资源估算方法有的需要进行完整的综合过程,包括综合工具的使用和生成逻辑网表,这会消耗大量时间和计算资源。此外,商业综合工具的许可成本也是一个限制因素。
技术实现思路
1、本发明要解决的技术问题是提供一种寄存器传输级电路设计的资源估算方法及装置,可以直接在rtl级别进行资源估算,无需经过繁琐的综合步骤,节省时间和计算资源。
2、为解决上述技术问题,本发明的技术方案如下:
3、第一方面,一种寄存器传输级电路设计的资源估算方法,包括:
4、通过调用开源综合工具的读取指令,读取目标电路设计的寄存器传输级rtl描述文件;
5、根据所述rtl描述文件,构建抽象语法树;
6、对所述抽象语法树进行层次分析,确定所述目标电路设计的模块层次结构;
7、将所述模块层次结构转换为所述开源综合工具的内部文件,得到新语法树;
8、对所述新语法树进行目标操作,生成网表文件;
9、将所述网表文件与器件库中的器件进行映射,获得所述目标电路设计所需要的至少一种目标资源的估算结果。
10、进一步的,根据所述rtl描述文件,构建抽象语法树,包括:
11、对所述rtl描述文件进行校验,以得到校验结果;
12、在所述校验结果为所述rtl描述文件的语法及路径正确的情况下,对所述rtl描述文件进行语法以及词法解析,得到解析结果;
13、根据所述解析结果,构建抽象语法树。
14、进一步的,对所述抽象语法树进行层次分析,确定所述目标电路设计的模块层次结构,包括:
15、对所述抽象语法树进行简化处理,得到简化抽象语法树;
16、利用所述开源综合工具的等级检查指令,对所述简化抽象语法树进行层次分析,确定所述目标电路设计的模块层次结构。
17、进一步的,将所述模块层次结构转换为所述开源综合工具的内部文件,得到新语法树,包括:
18、递归地遍历所述模块层次结构中的各个子模块,并将各个子模块的输入信号和输出信号写入所述开源综合工具的内部文件,得到新语法树。
19、进一步的,对所述新语法树进行目标操作,生成网表文件,包括:
20、调用所述开源综合工具的过程操作命令,对所述新语法树进行初始化和永久化操作,生成网表文件。
21、进一步的,将所述网表文件与器件库中的器件进行映射,获得所述目标电路设计所需要的至少一种目标资源的估算结果,包括:
22、获取可编程逻辑门阵列fpga的基本器件库;
23、将所述网表文件展开至顶层,得到网表文件的逻辑结构;
24、将所述网表文件的逻辑结构与所述基本器件库中基本逻辑器件库进行映射匹配,得到匹配后的目标文件;
25、统计所述目标文件中的基本逻辑器件数量,获得所述目标电路设计所需要的至少一种目标资源的估算结果。
26、进一步的,所述的寄存器传输级电路设计的资源估算方法,还包括:
27、对所述目标文件进行查找表映射和逻辑单元映射,得到优化目标文件;
28、利用开源综合工具的统计命令,统计所述优化目标文件中的查找表和逻辑单元的数量;
29、根据所述查找表和逻辑单元的数量,获得所述目标电路设计所需要的至少一种目标资源的优化估算结果。
30、第二方面,一种寄存器传输级电路设计的资源估算装置,包括:
31、获取模块,用于通过调用开源综合工具的读取指令,读取目标电路设计的寄存器传输级rtl描述文件;根据所述rtl描述文件,构建抽象语法树;对所述抽象语法树进行层次分析,确定所述目标电路设计的模块层次结构;
32、处理模块,用于将所述模块层次结构转换为所述开源综合工具的内部文件,得到新语法树;对所述新语法树进行目标操作,生成网表文件;将所述网表文件与器件库中的器件进行映射,获得所述目标电路设计所需要的至少一种目标资源的估算结果。
33、第三方面,一种计算设备,包括:
34、一个或多个处理器;
35、存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现上述方法。
36、第四方面,一种计算机可读存储介质,所述计算机可读存储介质中存储有程序,该程序被处理器执行时实现上述方法。
37、本发明的上述方案至少包括以下有益效果:
38、本发明的上述方案,可以直接在rtl级别进行资源估算,无需经过繁琐的综合步骤,节省时间和计算资源,利用开源综合工具进行资源估算,降低了商业综合工具的许可成本,并提供了更大的灵活性和可定制性。
1.一种寄存器传输级电路设计的资源估算方法,其特征在于,所述方法包括:
2.根据权利要求1所述的寄存器传输级电路设计的资源估算方法,其特征在于,根据所述rtl描述文件,构建抽象语法树,包括:
3.根据权利要求2所述的寄存器传输级电路设计的资源估算方法,其特征在于,对所述抽象语法树进行层次分析,确定所述目标电路设计的模块层次结构,包括:
4.根据权利要求3所述的寄存器传输级电路设计的资源估算方法,其特征在于,将所述模块层次结构转换为所述开源综合工具的内部文件,得到新语法树,包括:
5.根据权利要求4所述的寄存器传输级电路设计的资源估算方法,其特征在于,对所述新语法树进行目标操作,生成网表文件,包括:
6.根据权利要求5所述的寄存器传输级电路设计的资源估算方法,其特征在于,将所述网表文件与器件库中的器件进行映射,获得所述目标电路设计所需要的至少一种目标资源的估算结果,包括:
7.根据权利要求6所述的寄存器传输级电路设计的资源估算方法,其特征在于,还包括:
8.一种寄存器传输级电路设计的资源估算装置,其特征在于,包括:
9.一种计算设备,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有程序,该程序被处理器执行时实现如权利要求1-7中任一项所述的方法。