LEC learning2: formality verify strategy choose

formality check rtl2netlist 时候可能会出现stuck at verify 阶段,这种形况是rtl 中的一些code 很复杂, formality 不能解读。这时有两种解决方法:

1.在timing 满足的形况下,重新进行综合,在综合的过程中设置如下params

set_verification_priority [get_cells {$cell_name}] 或者set_verification_priority [get_references $ref_name -hierarchical] -high

其中的cell_name 和ref_name 可以在formality 中找到

2.更改verification strategy,需要使用到之前fail 的formality session

>module load formality/version

>source parallel.tcl

其中parallel.tcl 中的内容如下:

set verification_timeout_limit 24:0:0

set_run_alternate_strategies_options -max_cores 4 -protocol LSF -submit_command "bsub -q $q_name"

run_alternate_strategies -session rtl2netlist_fail_session.fss

exit

当执行上面的parallel run 之后会得到一个可以pass 的strategy ,这时我们在正常的flow 中设置上这个strategy 就可以了,默认的strategy 是none

set_app_var verification_alternate_strategy s10

printvar verification_alternate_strategy_names  可以查看有哪些策略

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: verification_set_undriven_signals是一种用于验证电路设计是否存在未驱动信号的方法。在电路设计过程中,每个信号都需要被准确地驱动,以保证电路的正确运行。若存在未驱动信号,可能会导致电路出错,影响整个系统的性能。 verification_set_undriven_signals的操作流程如下: 1. 首先,需要收集设计中所有的信号列表。可以通过阅读电路设计文档,查看电路原理图或者底层代码,来获取信号的名称和使用情况。 2. 将收集到的信号列表与已知的驱动信号进行比较,筛选出未被正确驱动的信号。 3. 对筛选出的未驱动信号进行标记,以便后续的验证过程中能够准确地定位未驱动信号所在的位置。 4. 运行仿真工具,将未驱动信号注入到电路设计中,以模拟实际运行环境下的情况。在仿真过程中,观察电路的响应和性能指标,检查是否存在异常情况。 5. 对异常的信号进行分析,找出未驱动信号的根本原因。可能是由于设计错误、信号线断开、驱动信号弱等。根据具体情况,修复相应的问题。 6. 再次运行验证测试,确保所有未驱动信号已经被正确地驱动。通过仿真结果和测试数据的对比,验证修复后的电路设计是否正常工作。 通过实施verification_set_undriven_signals操作,可以帮助发现并解决电路设计中的未驱动信号问题,从而提高电路的可靠性和性能。 ### 回答2: verification_set_undriven_signals是一种用于验证测试电路中未驱动信号的方法。在设计和验证电路时,我们通常希望所有的信号都被正确地驱动,以确保电路的正确性和稳定性。然而,在实际情况下,由于设计漏洞或其他原因,有时会出现未被正确驱动的信号。 verification_set_undriven_signals的目的是为了检测这些未驱动信号,并通过设计或验证的手段来解决这些问题。它通常是在仿真环境中实施的。在verification_set_undriven_signals中,我们首先对待验证电路进行仿真,然后通过分析仿真结果来检查未被驱动的信号。 一旦发现了未驱动信号,我们可以采取以下几种方法来解决这个问题。首先,我们可以修改设计,以确保所有的信号都能够被正确地驱动。其次,我们可以在仿真环境中创建一个驱动器来模拟对这些信号的驱动。这可以通过添加适当的仿真源代码来实现。第三,我们可以在仿真测试中添加一组特殊的测试用例,以检查在特定条件下是否发生未驱动信号的情况。 通过verification_set_undriven_signals,我们可以更全面地验证待验证电路的正确性,并避免潜在的设计问题。这种方法不仅可以在设计和验证电路中使用,也可以在其他领域中使用,如通信协议的验证、软件程序的验证等。它是一种非常有效和必要的验证方法。 ### 回答3: verification_set_undriven_signals是一种常见的验证技术,在数字集成电路设计过程中起到了非常重要的作用。它用于确保所有设计中的信号都被适当地驱动,避免未驱动信号产生的潜在问题。 在数字电路设计中,有时会出现信号未被正确地驱动或者被无意中漏掉的情况。这些未驱动信号在实际应用中可能引起电路功能错误、干扰和浪费能量等问题。为了解决这些问题,verification_set_undriven_signals被引入。 verification_set_undriven_signals的主要目的是检查设计中是否有未驱动信号,并确保它们被适当地驱动。通过验证工具的使用,可以在设计过程中自动检测潜在的未驱动信号,并提供相应的解决方案。这些解决方案通常包括添加驱动电路、修改信号路径或进行其他必要的改进,以确保所有信号都得到适当的驱动。 通过使用verification_set_undriven_signals技术,设计者可以提前发现并解决未驱动信号问题,从而提高电路的可靠性和性能。此外,这种技术还有助于降低信号完整性问题的风险,提升系统的稳定性。 总之,verification_set_undriven_signals是一种有效的验证技术,用于检测和解决设计中的未驱动信号问题。它可以帮助设计者提高设计的完整性和性能,从而确保电路在实际应用中的可靠性和稳定性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值