CADENCE SKILL · BEGINNER GUIDE
Cadence SKILL 入门:从零输出 Hello, World!
用一个最小案例认识 CIW、printf、SKILL 文件与 load。完成后,你会拥有第一个可重复运行的 Cadence 自动化脚本。
1. 先认识运行入口:CIW
启动 Cadence Virtuoso 后,找到 CIW(Command Interpreter Window)。CIW 是交互式命令窗口:你输入 SKILL 表达式,Cadence 立即求值并显示结果。对初学者而言,它非常适合验证一行代码是否正确。
2. 在 CIW 输出 Hello, World!
在 CIW 底部的输入区键入下面的表达式,然后按 Enter:
printf("Hello, World!\n")随后会看到一行输出:
Hello, World!- printf 是格式化输出函数
- 双引号内是要输出的字符串
- \n 表示换行
- 最外层圆括号包住函数参数
3. 把代码保存为 hello.il
交互式命令适合试验;真正可复用的代码应保存到文件。新建文本文件 hello.il,写入:
procedure(helloWorld()
printf("Hello, World!\n")
)这里定义了名为 helloWorld 的过程。第一对空括号表示它不接收参数;过程体调用 printf 输出文字。
4. 加载文件并调用过程
假设 CIW 当前工作目录中有 hello.il,执行:
load("hello.il")文件加载成功后,再执行:
helloWorld()CIW 会输出 Hello, World!。若文件不在当前目录,请给 load 传入完整路径,例如:
load("/home/user/skill/hello.il")5. 常见错误排查
load 提示找不到文件
先确认文件名是 hello.il,而不是 hello.il.txt;再使用绝对路径加载。Linux 路径区分大小写。
输入后没有换行
检查字符串末尾是否包含 \n。printf 不会自动替你添加换行。
出现语法错误
重点检查双引号与圆括号是否成对。建议先把一行 printf 放进 CIW 单独验证,再加载整个文件。
修改文件后结果没变化
保存文件后重新执行 load,再调用 helloWorld。SKILL 不会自动重新读取你刚刚编辑的文件。
6. 下一步练习
给过程增加一个参数,让它输出不同名字:
procedure(helloName(name)
printf("Hello, %s!\n" name)
)加载后执行 helloName("Cadence"),输出应为 Hello, Cadence!。这一步引入了参数和 %s 字符串格式符,是从最小示例迈向实用 SKILL 脚本的第一步。
完成检查
你已经跑通第一个 SKILL 脚本
查看更多技术教程参考:Cadence Community 的 Custom IC SKILL 讨论与 Cadence SKILL 初学者公开教程。具体菜单位置与界面样式随 Virtuoso 版本变化,本文的核心代码与 CIW 工作流保持一致。

