在安装或启动 Cadence 工具时,有时会遇到如下报错:

1
2
3
4
5
6
7
8
ERROR: $OA_HOME is not set and the Cadence installation does not seem to
have a valid default OA installation under /usr1/edatool/cdns/PVS1524/share/oa
Check your OA installation (you may need to re-run the post-install configure
step for your Cadence tools), or set the OA_HOME variable to point to a valid
OA installation.
See the "OpenAccess Installation and Configuration Guide" for more information.

ipvs: ERROR: No proper OA2.2 installation found. Fix the errors reported by cdsGetOABinPath.

本文解释 OA_HOME 变量的含义、OA binaries 的用途,以及该报错的根本原因和修复方法。


什么是 OpenAccess(OA)

OpenAccess 是 EDA 行业的标准设计数据库格式。Cadence 几乎所有现代工具都已迁移到 OpenAccess 格式,包括:

  • IC(Virtuoso)
  • SOC/EDI
  • ICC
  • ANLS(Analog/Mixed-Signal)
  • EXT(寄生参数提取)
  • Pegasus / PVS(物理验证)

OA binaries 是 OpenAccess 的运行时库文件。工具需要通过它来读取和写入库(Library)、单元(Cell)和视图(View)等设计数据。没有 OA binaries,工具根本无法操作设计数据库。


OA_HOME 变量的作用

OA_HOME 用于指定 OA binaries 的安装路径。

工具启动时的查找逻辑如下:

  1. OA_HOME 已设置 → 使用该路径下的 OA binaries
  2. OA_HOME 未设置 → 使用工具安装目录下的默认路径:
1
<tool_install>/share/oa   ←  一个指向实际 OA binaries 的软链接(soft link)

设置 OA_HOME覆盖上述软链接,强制所有工具使用同一份集中的 OA binaries。


OA_HOME 不应在用户环境中常规设置

Cadence 官方明确指出(引自支持文章):

“Setting the OA_HOME variable would force all tools to use a set of centralized oa binaries. This would certainly cause an oa version conflict if all the tools are not updated on a regular basis such that they all use the latest oa version. The OA_HOME variable should only be used for debugging purposes and should not be used by the typical user.

原因在于:各工具对 OA 版本有各自的要求,如果强制共用一个版本而版本不匹配,会导致 symbol lookup error,例如:

1
2
3
/cad/cds/IC618/tools/dfII/bin/64bit/virtuoso: symbol lookup error:
/cad/cds/IC618/tools/lib/64bit/libddbase_sh.so:
undefined symbol: _ZN8oaCommon11FactoryBase11getRefCountEv

因此,不应.cshrc 或其他环境初始化脚本中设置 OA_HOME。如果已设置,可用以下命令取消:

1
unsetenv OA_HOME

报错的根本原因

报错信息说明两件事同时成立:

  1. OA_HOME 未设置(这本身是正常状态
  2. 工具安装目录下的默认 OA 路径(<tool>/share/oa)中找不到有效的 OA binaries

这通常发生在通过 InstallScape 安装 Cadence 工具后只完成了第一步(Download & Install),没有运行第二步(Configure)

InstallScape 安装分为两个阶段:

阶段 作用
Download & Install 安装工具主体文件
Configure 安装 OA binaries、配置 Stream Manager、License 等

跳过 Configure 步骤后,<tool>/share/oa 目录为空或缺失,工具启动时找不到 OA binaries,从而触发上述报错。


修复方法

方法一:重新运行 InstallScape 的 Configure(推荐)

打开 InstallScape,选择对应的工具条目,执行 Configure 操作。Configure 会依次完成:

  1. Stream Manager 的安装与配置
  2. OpenAccess 安装向导(安装 OA binaries 到 share/oa

详细步骤参见 InstallScape User GuideOpenAccess Configuration Guide

方法二:直接运行工具自带的 OA 安装脚本

如果不需要配置 Stream Manager 等其他组件,可以只运行 OA 安装脚本:

1
/<path-to-tool-installation>/share/oaInstallers/oaConfig

运行后会在 share/oa 下生成所需的 OA binaries,软链接生效,报错即可消除。


总结

问题 答案
OA binaries 是什么 OpenAccess 数据库的运行时库,Cadence 所有现代工具(IC、PVS、Pegasus 等)依赖它读写设计数据
默认从哪里加载 <tool_install>/share/oa(工具安装目录下的软链接)
OA_HOME 的作用 覆盖默认路径,强制指定 OA binaries 位置
是否应设置 OA_HOME 不应在普通环境中设置,仅用于调试
报错的原因 安装后未运行 Configure,share/oa 下缺少 OA binaries
修复方法 重跑 InstallScape Configure,或直接执行 share/oaInstallers/oaConfig

参考资料

  • Cadence Support Article (a1Od0000000na0zEAA): Is the OA_HOME variable really necessary?
  • Cadence Support Article (a1O0V000006AhLfUAK): ERROR: $OA_HOME is not set and the Cadence installation does not seem to have a valid default OA installation
  • Cadence InstallScape User Guide(随 InstallScape 发布)
  • Cadence OpenAccess Installation and Configuration Guide(随各工具发布)