Vivado使用技巧(15):DRC设计规则检查 |
您所在的位置:网站首页 › Vivado中RTL分析 › Vivado使用技巧(15):DRC设计规则检查 |
在I/O和时钟规划之后,需要验证设计以确保其满足设计需求。Vivado提供了两种验证途径:DRCs用来检查设计违反规则情况;SSN分析用来估计转换噪声等级。本文将介绍DRCs,本系列第16篇介绍了SSN分析。 运行DRCsDRCs可以说是管脚规划中最严苛的一个步骤,DRCs会使用一套设计检查项(通常称作rule deck),来检查当前设计是否违反这套规则。本文将以运行DRCs检查I/O端口和时钟逻辑为例。 打开某一阶段的设计,点击Tools->Report->Report DRC,或在Flow Navigator中直接点击Report DRC,弹出如下窗口: 根据运行DRCs所处设计阶段的不同(RTL设计、综合后设计、实现后设计),可以选择的Vivado提供的rule deck如下: default:Xilinx推荐的默认规则检查;opt_checks:与逻辑优化相关的规则检查;placer_checks:与布局相关的规则检查;router_checks:与布线相关的规则检查;bitstream_checks:与bit流生成相关的规则检查;timing_checks:与时序约束相关的规则检查;incr_eco_checks:与增量ECO设计修改的有效性相关的规则检查;eco_checks:完成一个修改网表的ECO之后,与连通性和布局相关的规则检查。选择了rule deck之后,可以根据需要修改在Rules中使用的设计规则。运行DRCs的Tcl示例如下: report_drc -ruledecks default -file C:/Data/DRC_rpt1.txt如果不想使用Vivado提供的rule deck,可以创建一个用户自定义的rule deck并添加到Rule Decks窗口中。该操作需要使用Tcl代码来完成,示例如下: create_drc_ruledeck ruledeck_1 add_drc_checks -ruledeck ruledeck_1 [get_drc_checks {SYNTH-10 SYNTH-9 SYNTH-8 SYNTH-7 SYNTH-6 SYNTH-5 SYNTH-4}] 交互式DRCs在I/O布局过程中,Vivado IDE会运行一个基本的检查以确保合理的引脚分配,但是只有在实现后设计中的检查才能确保最终引脚分配完全合法。管脚布局时,交互式的I/O布局例行检查会报告常见的错误,这项功能可以在Package窗口或Device窗口的设置中通过Auto check I/O Placement复选框选择是否开启: Vivado默认开启交互式DRCs功能(交互式指的是用户每执行操作后都运行相关检查),Xilinx也推荐始终开启这个功能。 查看DRC违规信息如果找到了违规信息,会打开DRC窗口,如下所示: 违规信息所包含的内容一般比较长,可以单击选中,在Violation Properties窗口中更方便地查看信息(如果属性窗口没有打开,选中信息右键菜单中打开): 在Vivado 2016.1之后的版本中,将部分DRC检查组合为一个新功能Report Methodology中,该功能运行一些简化的规则检查来验证设计(比如逻辑映射),遵从UltraFast设计方法。打开某一阶段设计后,在Flow Navigator中点击此功能: |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |