共计 2135 个字符,预计需要花费 6 分钟才能阅读完成。
背景介绍
Skill 脚本是一种在 EDA(电子设计自动化)工具中广泛使用的脚本语言,主要用于 Cadence 系列工具(如 Virtuoso、Allegro 等)的自动化操作。通过 Skill 脚本,工程师可以快速完成版图设计、参数调整、批量导出等重复性工作,显著提升工作效率。

典型应用场景包括:
- 自动化版图布局布线
- 设计规则检查(DRC)批量处理
- 设计数据导出与报表生成
- 定制化工具开发
环境准备
在开始配置前,请确保准备好以下工具和环境:
- 操作系统:Windows/Linux(本文以 Windows 为例)
- Python 环境:Python 3.6+(推荐 3.8)
- Cadence 工具链:已安装 Virtuoso 或 Allegro
- 文本编辑器:VS Code 或其他支持 Skill 语法高亮的编辑器
分步配置指南
1. 系统环境变量设置
首先需要确保 Cadence 工具的可执行文件路径已加入系统环境变量:
- 右击 ” 此电脑 ” → “ 属性 ” → “ 高级系统设置 ” → “ 环境变量 ”
- 在 ” 系统变量 ” 中找到
Path,点击 ” 编辑 ” - 添加 Cadence 安装路径(例如):
C:\Cadence\SPB_17.4\tools\bin C:\Cadence\SPB_17.4\tools\pcb\bin - 验证设置:打开 CMD,输入
virtuoso -V应能看到版本信息
2. 虚拟环境创建与激活
为避免不同项目的依赖冲突,推荐使用 Python 虚拟环境:
- 安装 virtualenv(如未安装):
pip install virtualenv - 创建专用虚拟环境:
virtualenv skill_env - 激活环境:
- Windows:
.\skill_env\Scripts\activate - Linux/Mac:
source skill_env/bin/activate
3. 依赖库安装与版本管理
Skill 开发常用的 Python 库:
pip install pySkill pyserial numpy pandas
建议使用 requirements.txt 管理依赖:
- 生成依赖文件:
pip freeze > requirements.txt - 安装时使用:
pip install -r requirements.txt
常见问题排查
依赖冲突解决方案
当出现 ImportError 或版本冲突时:
- 检查当前激活的 Python 环境:
which python # Linux/Mac where python # Windows - 使用
pipdeptree查看依赖关系:pip install pipdeptree pipdeptree - 解决冲突:
pip uninstall 冲突包名 pip install 指定版本号
路径设置错误处理
常见错误提示:”Error: Cannot open input file“
解决方法:
- 检查 skill 脚本中的文件路径:
; 错误示例(使用绝对路径)port = outfile("C:/Users/name/file.il") ; 正确做法(使用相对路径)port = outfile("./output/file.il") - 确保工作目录正确:
; 获取当前目录 getWorkingDir()
验证配置
创建一个简单的 skill 脚本示例hello.il:
/*
* 第一个 Skill 脚本
* 功能:在 CIW 窗口打印欢迎信息
*/
procedure(helloWorld()
printf("Hello Skill Developer!\n")
printf("Current time: %s\n" getCurrentTime())
)
; 调用函数
helloWorld()
运行方式:
- 在 Virtuoso CIW 窗口输入:
load("hello.il") - 或在命令行直接运行:
virtuoso -nograph -replay hello.il
最佳实践
多项目环境隔离
推荐的项目结构:
skill_projects/
├── project_a/
│ ├── env/ # 独立虚拟环境
│ ├── src/ # 源代码
│ └── requirements.txt
└── project_b/
├── env/
├── src/
└── requirements.txt
自动化配置脚本
创建setup.sh(Linux/Mac)或setup.bat(Windows):
#!/bin/bash
# Linux/Mac 自动化配置脚本
# 创建虚拟环境
python -m venv env
source env/bin/activate
# 安装依赖
pip install -r requirements.txt
# 设置环境变量
export SKILL_HOME=$(pwd)
echo "export SKILL_HOME=$SKILL_HOME" >> ~/.bashrc
@echo off
:: Windows 自动化配置脚本
:: 创建虚拟环境
python -m venv env
call env\Scripts\activate.bat
:: 安装依赖
pip install -r requirements.txt
:: 设置环境变量
setx SKILL_HOME "%cd%"
延伸学习
推荐资源
- 《Cadence Skill 语言官方手册》
- 《Python 与 EDA 自动化》在线课程
- GitHub 上的开源 Skill 项目
练习题目
- 尝试修改 hello.il 脚本,使其能打印当前设计名称
- 创建一个批量导出 GDSII 的脚本
- 实现环境自动检测功能(检查 Cadence 安装路径)
正文完
