提高FPGA原型验证效率的方法及装置制造方法及图纸

技术编号:33455594 阅读:19 留言:0更新日期:2022-05-19 00:38
本发明专利技术公开了一种提高FPGA原型验证效率的方法及装置,方法包括:运行设计综合命令以得出设计综合完成后的网表文件;运行report_qor_assessment命令获取当前的报告;检测报告分数并判断其分值与预设阈值的大小关系;若分值小于预设阈值,则检测设计并重复上述步骤;以及若分值大于等于预设阈值,则继续进行时钟关系判断、时序结果判断、组合逻辑链级数阈值判断、扇出阈值判断以生成新的综合策略和实现策略。该方法在FPGA原型验证实现流程中,设计综合后就可以分别对扇出、逻辑级数、时钟关系和时序结果等进行自动化分析报告与设定参数比较并生成有效的实现策略,可以提高FPGA原型验证实现的正确性,提高原型验证的效率。提高原型验证的效率。提高原型验证的效率。

【技术实现步骤摘要】
提高FPGA原型验证效率的方法及装置


[0001]本专利技术涉及计算机
,尤其涉及一种提高FPGA原型验证效率的方法及装置。

技术介绍

[0002]FPGA(现场可编程门阵列,field

programmable gate array)原型设计是一种用于通过将RTL(电阻晶体管逻辑,Resistor Transistor Logic)移植到现场可编程门阵列(FPGA)来验证专门应用的集成电路(ASIC,Application Specific Integrated Circuit),专用标准产品(ASSP,Application Specific Standard Product)和片上系统(SoC,System on a Chip)的功能和性能的技术。原型验证是芯片流片前检验芯片与预期效果是否一致的必要的验证流程,由于直接流片的成本很高,通常采用的方式是将设计进行移植,综合,布局布线,在FPGA原型验证平台进行验证,FPGA具有可编程的特点,可以反复的修改和实现,直到达到预期结果,避免了多次流片的高成本和高风险,进行原型验证前需要搭建原型验证平台。FPGA原型验证过程中主要存在以下几个方面的难点:
[0003]首先,FPGA原型验证无法与ASIC的设计保持完全的一致,需要将时钟,存储器,特定IP等部分,修改为FPGA可综合的文件,这些模块数量很多,替换过程工作量繁琐易出错。
[0004]其次,FPGA的原型验证为ASIC设计的验证环节,会根据设计的需要反复的迭代,整个过程重复多次。
[0005]再次,FPGA原型验证受限于FPGA的逻辑资源,设计很大,实现的时间很长,芯片的频率在一般1GHz以上,在FPGA原型验证中的时钟频率在几十MHz左右,设计实现的时间很长,时序收敛是判断实现结果是否可用的一个重要标准。因此时序收敛并且正确实现在设计越来越大的情况下是一个很大的挑战。

技术实现思路

[0006]有鉴于此,本专利技术实施例的目的在于提出一种提高FPGA原型验证效率的方法。该方法在FPGA原型验证实现流程中,设计综合后就可以分别对扇出、逻辑级数、时钟关系和时序结果等进行自动化分析报告与设定参数比较并生成有效的实现策略,可以提高FPGA原型验证实现的正确性,提高原型验证的效率。
[0007]基于上述目的,本专利技术实施例的一方面提供了一种提高FPGA原型验证效率的方法。该提高FPGA原型验证效率的方法包括:运行设计综合命令以得出设计综合完成后的网表文件;运行report_qor_assessment命令获取当前的报告;检测报告分数并判断其分值与预设阈值的大小关系;若分值小于预设阈值,则检测设计并重复上述步骤;以及若分值大于等于预设阈值,则继续进行时钟关系判断、时序结果判断、组合逻辑链级数阈值判断、扇出阈值判断以生成新的综合策略和实现策略。
[0008]在一些实施方式中,时钟关系判断包括:运行report_clock_interaction命令得到时钟关系;判断是否存在不期望的同步时钟路径;若存在,则添加异步时序约束文件解
决;以及若不存在,则继续进行时序结果判断。
[0009]在一些实施方式中,添加异步时序约束文件解决包括:存在不期望的同步时钟路径,则使用
[0010]set_false_path

from[get_clocks clk1]‑
to[get_clocks clk2][0011]set_false_path

from[get_clocks clk2]‑
to[get_clocks clk1][0012]消除不期望的同步时钟关系。
[0013]在一些实施方式中,时序结果判断包括:运行report_timing_summary命令得到时序报告;判断时序结果是否收敛;若不收敛,则建立保持时间违例处理;若收敛,则进行组合逻辑链级数阈值判断。
[0014]在一些实施方式中,建立保持时间违例处理包括如果时序不收敛,挑选时序最差路径并进行优化,直至收敛。
[0015]在一些实施方式中,组合逻辑链级数阈值判断包括:运行report_design_analysis命令得到组合逻辑链级数;判断组合逻辑链级数的阈值范围;若超出阈值范围,则重新进行时序约束;若未超出阈值范围,则修改时序约束或者将综合策略修改为retiming 00c综合。
[0016]在一些实施方式中,运行report_design_analysis

logic_level_distribution

logic_level_dist_paths 1000获取当前的1000条path的组合逻辑级数;
[0017]在50MHZ的频率下,一个组合逻辑的延迟在0.5ns,相应的组合逻辑级数阈值为40级;
[0018]若组合逻辑级数大于40,则重新进行时序约束;
[0019]若组合逻辑级数小余等于40,则将综合策略修改为retiming 00c综合。
[0020]在一些实施方式中,扇出阈值判断包括:运行report_high_fanout_nets获得扇出;判断扇出阈值;若超出扇出阈值,则在实现阶段选择相应的优化策略;若未超出扇出阈值,则生成新的综合策略和实现策略。
[0021]在一些实施方式中,在实现阶段选择相应的优化策略包括:在实现阶段采取以下两种方式处理opt_design merge_equivalent_drivers hier_fanout_limit 512;或phys_opt_design

force_replication_on_nets[get_nets net_name]。
[0022]本专利技术实施例的另一方面,还提供了一种提高FPGA原型验证效率的装置。该装置包括设计单元,用于设计综合策略和实现策略;运行分析单元,用于通过report_qor_assessment命令获取报告并检测报告;时钟关系判断单元,用于通过report_clock_interaction命令获取时钟关系并随后检测时钟关系;时序结果判断单元,用于通过report_timing_summary命令获取时序报告并检测时序结果;组合逻辑链级数阈值判断单元,用于通过report_design_analysis命令获取组合逻辑链级数并检测组合逻辑链级数阈值;扇出阈值判断单元,用于通过report_high_fanout_nets命令获取扇出的信号报告并检测扇出阈值。
[0023]在一些实施例中,设计单元采用默认的综合策略完成设计的综合,打开综合的设计,运行设计综合命令得到设计综合完成后的网表文件。
[0024]在一些实施例中,运行分析单元运行report_qor_assessment可以得到一个1~5之间的一个分数,根据分数与预设阈值的大小判断收敛性。
[0025]在一些实施例中,时钟关系判断单元,运行repo本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种提高FPGA原型验证效率的方法,其特征在于,包括:运行设计综合命令以得出设计综合完成后的网表文件;运行report_qor_assessment命令获取当前的报告;检测报告分数并判断其分值与预设阈值的大小关系;若分值小于预设阈值,则检测设计并重复上述步骤;以及若分值大于等于预设阈值,则继续进行时钟关系判断、时序结果判断、组合逻辑链级数阈值判断、扇出阈值判断以生成新的综合策略和实现策略。2.根据权利要求1所述的提高FPGA原型验证效率的方法,其特征在于,时钟关系判断包括:运行report_clock_interaction命令得到时钟关系;判断是否存在不期望的同步时钟路径;若存在,则添加异步时序约束文件解决;以及若不存在,则继续进行时序结果判断。3.根据权利要求2所述的提高FPGA原型验证效率的方法,其特征在于,添加异步时序约束文件解决包括:存在不期望的同步时钟路径,则使用set_false_path

from[get_clocks clk1]

to[get_clocks clk2]set_false_path

from[get_clocks clk2]

to[get_clocks clk1]消除不期望的同步时钟关系。4.根据权利要求1所述的提高FPGA原型验证效率的方法,其特征在于,时序结果判断包括:运行report_timing_summary命令得到时序报告;判断时序结果是否收敛;若不收敛,则建立保持时间违例处理;若收敛,则进行组合逻辑链级数阈值判断。5.根据权利要求4所述的提高FPGA原型验证效率的方法,其特征在于,建立保持时间违例处理包括如果时序不收敛,挑选时序最差路径并进行优化,直至收敛。6.根据权利要求1所述的提高FPGA原型验证效率的方法,其特征在于,组合逻辑链级数阈值判断包括:运行report_design_analysis命令得到组合逻辑链级数;判断组合逻辑链级数的阈值范围;若超出阈值范围,则重新进行时序约束;若未超出阈值范围,则修改时序约束或者将综合策略修改为retiming 00c综合...

【专利技术属性】
技术研发人员:王奕曲超曹蓓
申请(专利权)人:山东云海国创云计算装备产业创新中心有限公司
类型:发明
国别省市:

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

1