← 数字IC开发环境

Rocky Linux 8.10 EDA 工具安装与 License 制作指南

Rocky Linux 8.10 EDA 工具安装与 License 制作指南

本文是 Rocky Linux 8.10 EDA 开发环境系列的第二篇,主要介绍 EDA 工具的安装与 License 配置。

前置条件:请先完成第一篇中的 Shell 环境变量配置,确保 synopsys.cshrcxilinx.cshrc 等文件已就绪。


一、Synopsys 工具安装

1.1 工具清单

本次安装的 Synopsys 工具及版本如下:

工具 版本 用途
SCL 2025.03 License 管理
VCS W-2024.09-SP1 仿真器
Verdi W-2024.09-SP1 波形查看/调试
DVE W-2024.09-SP1 波形查看(旧版)
Design Compiler V-2023.12-SP3 逻辑综合
Formality V-2023.12-SP3 形式验证
IC Compiler II V-2023.12-SP3 布局布线
Library Compiler V-2023.12-SP3 库编译
Milkyway V-2023.12-SP3 物理库管理
PrimeTime V-2023.12-SP2 时序分析
RTL Architect V-2023.12-SP5 RTL 架构探索
SpyGlass V-2023.12-SP1 Lint/CDC 检查
StarRC V-2023.12-SP3 寄生参数提取
TetraMAX V-2023.12-SP3 ATPG 测试
SynopsysInstaller v5.9 安装器

1.2 依赖补丁(重要!)

在安装和运行 Synopsys 工具之前,需要先安装一系列系统依赖库。建议提前全部安装,避免后续逐个排查的痛苦:

# 安装器 setup.sh 依赖
$ sudo yum install -y libXScrnSaver

# Verdi 依赖(共 4 个)
$ sudo dnf install -y xcb-util-wm
$ sudo yum install -y xcb-util-image
$ sudo yum install -y xcb-util-keysyms
$ sudo dnf install -y xcb-util-renderutil

# Design Compiler 依赖
$ sudo yum install -y libpng12

# SpyGlass 依赖
$ sudo yum install -y libnsl.x86_64

说明:以上是我在安装过程中遇到的所有缺失依赖,报错信息形如:

error while loading shared libraries: libXxx.so.X: cannot open shared object file

如果你遇到了其他缺失库,直接 Google 报错中的 .so 文件名即可找到对应的 yum 包。

1.3 安装步骤

准备安装包

首先将所有安装包拷贝到虚拟机中,放在同一个目录下。目录结构大致如下:

.
├── installer_v5.9/
│   └── SynopsysInstaller_v5.9.run
├── scl_v2025.03_Linux.Patched/
│   ├── Patch/
│   │   └── snpslmd
│   ├── scl_v2025.03_common.spf
│   └── scl_v2025.03_linux64.spf
├── vcs_vW-2024.09-SP1/
├── verdi_vW-2024.09-SP1/
├── dve_vW-2024.09-SP1/
├── syn_vV-2023.12-SP3/
├── fm_vV-2023.12-SP3/
├── icc2_vV-2023.12-SP3/
├── lib_compiler_vV-2023.12-SP3/
├── mw_vV-2023.12-SP3/
├── pt-vV-2023.12-SP2/
├── rtl_arch_vV-2023.12-SP5/
├── spyglass_vV-2023.12-SP1/
├── starrc_vV-2023.12-SP3/
└── Tetramax-vV-2023.12-SP3/

运行 SynopsysInstaller

切换到 installer_v5.9 目录,运行安装器:

$ cd installer_v5.9
$ sudo chmod +x SynopsysInstaller_v5.9.run
$ ./SynopsysInstaller_v5.9.run

安装器会提示选择解压目录,按回车使用当前目录即可:

Please specify installation directory [.]: 
Installing Synopsys Installer 5.9 into the directory '...'

  Unpacking: SynopsysInstaller.tgz ...

Installation complete.

运行 setup.sh 安装工具

运行 setup.sh 启动图形化安装界面:

Installer启动

点击 Start

Start

保持默认设置,直接 Next

Source选择

关键步骤:勾选 recursive 选项,安装器会递归搜索指定目录下的所有安装包。这比旧版 Installer 方便多了!点击 Next,等待安装包提取完成。

安装目录

设置工具的安装目标目录,Next

工具选择

勾选除 DVE 之外的所有工具(DVE 需要安装到 VCS 目录下,稍后单独处理),Next

开始安装

点击 Accept 同意许可协议,然后 Install,开始漫长的等待......

安装完成

安装结束时可能会弹出关于 SpyGlass doc 的 error,这是因为我们没有提供 SpyGlass 文档资源,忽略即可。点击 OK → Finish,安装完毕。


二、Xilinx 工具安装

2.1 依赖补丁

Vivado 安装过程中可能卡在 Generating installed device list,需要提前安装 ncurses 相关依赖:

$ sudo yum install -y ncurses-c++-libs
$ sudo yum install -y ncurses-compat-libs
$ sudo yum install -y ncurses-devel
$ sudo yum install -y ncurses-libs
$ sudo yum install -y ncurses-term

2.2 下载 Installer

前往 Vivado 下载官网,选择目标版本,下载对应的 Linux Installer 文件。

Vivado下载

需要登录 AMD 账号并填写相关信息,然后点击 Download。

AMD登录

提示:下载可能会遇到表单验证问题,建议提前搜索相关教程了解如何填写信息。

下载完成后将安装文件拷贝到虚拟机中:

# 通过共享文件夹拷贝(需要先执行 share_dir 别名挂载共享目录)
$ cp /mnt/hgfs/share/FPGAs_AdaptiveSoCs_Unified_SDI_2025.1_0530_0145_Lin64.bin ./

安装文件

2.3 安装 Vivado

给安装文件添加执行权限并运行:

$ sudo chmod +x FPGAs_AdaptiveSoCs_Unified_SDI_2025.1_0530_0145_Lin64.bin
$ ./FPGAs_AdaptiveSoCs_Unified_SDI_2025.1_0530_0145_Lin64.bin

点击 Next

安装向导

输入 AMD 账号和密码,Next

账号登录

产品选择界面勾选 VivadoNext

选择Vivado

版本选择 EnterpriseNext

Enterprise版本

根据个人需求勾选设计工具和目标开发板型号。如果磁盘空间充足,可以全选。Next

工具选择

勾选全部 I AgreeNext

许可协议

选择安装路径,Next

安装路径

确认安装信息,点击 Install

确认安装

接下来就是漫长的下载和安装过程。请确保网络稳定,中断后可能需要重新下载。

安装进度

踩坑记录:安装过程中如果卡在 Generating installed device list,就是前面提到的 ncurses 依赖缺失问题。解决方法是取消当前安装,安装依赖后重新运行 Installer。

卡住

取消安装

这个问题浪费了我三个小时 TUT

安装过程中会自动弹出 License Manager,Xilinx 的 License 是 .lic 文件格式,网上资源很多。

License Manager

安装完成后,按照弹窗提示运行依赖安装脚本(需要管理员权限)。Xilinx 这点比 Synopsys 人性化多了,提供了一键安装依赖的功能。


三、Synopsys License 制作

3.1 准备工作

制作 License 需要在虚拟机中确认以下四项信息:

# 1. 确认主机名
$ hostname
bed

# 2. 确认 Host ID(MAC 地址)
# 如果设置了虚拟 IP,可以使用固定的 MAC 地址,避免每次开机 IP 变化
$ lmhostid
lmhostid - Copyright (c) 1989-2024 Flexera. All Rights Reserved.
The FlexNet host ID of this machine is ""000c297ec9a8 00155df2bcd8""
Only use ONE from the list of hostids.

# 3. 确认 snpslmd 的绝对路径
$ find ${SCL_HOME} -name "snpslmd"
/home/bedic/EDA/Synopsys/scl/2025.03/linux64/bin/snpslmd

# 4. 确认防火墙 27000 端口已开放
$ firewall-cmd --zone=public --add-port=27000/tcp --permanent
success
$ firewall-cmd --reload
success

3.2 生成 License 文件

准备好以下工具文件:

  • scl_keygen.exe
  • Synopsys.src
  • sssverify.exe
  • fix.bat

Step 1:打开 scl_keygen.exe,填写以下信息:

字段
HOST ID Daemon 你的 MAC 地址(从 lmhostid 获取)
HOST ID Feature 同上
HOST Name 你的 hostname
Port 27000

点击 Generate,关闭窗口后可以看到目录下生成了 Synopsys.dat 文件。

生成License

Step 2:打开 Synopsys.dat,在第二行补充 snpslmd 在虚拟机中的绝对路径:

编辑License

Step 3:将修改后的 Synopsys.dat 拖到 fix.bat 上运行(等同于命令行执行 .\fix.bat Synopsys.dat),License 文件制作完成。

修复License

3.3 Crack 工具

${SNPS_TOOLS_HOME}(即 Synopsys 工具安装根目录)下,依次运行以下三个 Crack 工具:

# 进入 Synopsys 工具根目录
$ cd ${SNPS_TOOLS_HOME}

$ ./pubkey_verify -y
$ ./synopsys_checksum -y
$ ./SynopsysMonoSlayer -a

3.4 启动 License 服务

将制作好的 Synopsys.dat 文件拷贝到虚拟机的 ${SCL_HOME}/admin/license/ 目录下,然后启动 License 服务:

# 加载 Synopsys 环境变量
$ scs

# 启动 License 守护进程
$ lmgrd -c Synopsys.dat

# 等待信息打印完毕后,按回车,验证 License 状态
$ lmstat -c Synopsys.dat
lmstat - Copyright (c) 1989-2024 Flexera. All Rights Reserved.
Flexible License Manager status on Sat 8/16/2025 22:01

License server status: 27000@BED
    License file(s) on BED: /home/bedic/EDA/Synopsys/scl/2025.03/admin/license/Synopsys.dat:

       BED: license server UP (MASTER) v11.19.7

Vendor daemon status (on BED):

   snpslmd: UP v11.19.7

看到 license server UPsnpslmd: UP 就说明 License 启动成功了!

小技巧:如果 License 启动很慢,尝试断开网络后再启动,速度会快很多,几乎秒启。


四、Cadence 工具安装

Cadence 工具的安装流程待补充,敬请期待后续更新。


总结

本文完成了以下工作:

  1. Synopsys 全家桶安装 — 包括 VCS、Verdi、DC、ICC2 等 14 款工具
  2. Xilinx Vivado 安装 — Enterprise 版本的完整安装流程
  3. 依赖问题排查 — 汇总了所有缺失库的解决方案
  4. License 制作与启动 — Synopsys SCL License 的完整制作流程

下一篇将介绍 各种实用工具的安装与配置,包括 VSCode、FileZilla、Chrome 等开发辅助工具。

目录

Comments (0)

No comments yet. Be the first!