> 技术文档 > NLP验证自动化脚本优化

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/vcssource $VCS_HOME/bin/envar.sh# 文件列表(RTL 和测试bench)cat > filelist.f << EOFmy_design.vtb.vEOF# 从环境变量 UPF_LIST 获取 UPF 文件列表(逗号分隔,如 \"base,isolation,retention\")# 如果未设置,默认加载所有if [ -z \"$UPF_LIST\" ];