NLP验证自动化脚本优化
NLP验证自动化脚本优化
摘要:本文基于 Synopsys VCS 的 native low power verification 支持,提供一些NLP验证自动化脚本相关的问题。
1. 如何修改脚本,以便根据环境变量选择加载的 UPF 文件?
您可以使用 bash 环境变量来动态选择要加载的 UPF 文件。这允许在运行脚本前设置变量(如通过 export
命令),从而灵活控制哪些 UPF 文件被包含,而无需修改脚本本身。典型方法:
- 定义一个环境变量(如
UPF_LIST
),其值为 UPF 文件名的逗号分隔列表(e.g., "base,isolation,retention")。 - 在脚本中读取该变量,拆分成数组,并循环添加
-upf
选项。 - 添加默认值或检查机制,以防变量未设置。
- 这支持条件加载:例如,根据测试场景设置不同变量(e.g.,
export UPF_LIST="base,retention"
只加载基础和保持 UPF)。
1.1 修改后的 bash 脚本示例(run_vcs_env_upf.sh
)
#!/bin/bash# 设置环境(替换为实际 VCS 路径)
export VCS_HOME=/path/to/vcs
source $VCS_HOME/bin/envar.sh# 文件列表(RTL 和测试bench)
cat > filelist.f << EOF
my_design.v
tb.v
EOF# 从环境变量 UPF_LIST 获取 UPF 文件列表(逗号分隔,如 "base,isolation,retention")
# 如果未设置,默认加载所有
if [ -z "$UPF_LIST" ];