4、DRC环境搭建:安装与配置DRC工具、设置工艺库与规则文件、环境变量与路径配置实战
说实话,DRC环境搭建这件事,看着简单,但坑特别多。我见过不少新手,工具装好了,规则文件也拷过来了,一跑就报错——找不到库、路径不对、规则版本不匹配。嗯,这些我都踩过。
这一章,咱们就手把手把环境搭起来。你跟着我走一遍,以后换项目、换工艺,心里就有底了。
4.1 安装DRC工具:选对版本,省一半时间
DRC工具市面上有好几种,主流的是Mentor Calibre、Synopsys ICV、Cadence Assura。我个人习惯用Calibre,因为它在代工厂支持最广,几乎所有的foundry都提供Calibre的规则文件。
安装时注意三点:
- 版本匹配:工具版本要和规则文件兼容。比如tsmc 28nm的规则文件,可能要求Calibre 2019以上。我遇到过用Calibre 2015跑新工艺,报一堆莫名其妙的错误,后来发现是版本太老。
- 操作系统:大部分DRC工具跑在Linux上。CentOS 7或RHEL 8比较稳。Ubuntu也能用,但有些库需要自己补。
- License:这个别忘。没有license,工具装好了也跑不动。建议先确认license server的地址和端口。
核心要点:安装前,先去foundry官网查一下“Recommended Tool Version”列表。照着那个来,基本不会翻车。
4.2 设置工艺库与规则文件:别把文件放错地方
工艺库和规则文件,是DRC的灵魂。没有它们,工具就是个空壳。
通常foundry会给你一个PDK(Process Design Kit)包,里面包含:
- DRC规则文件:.rul或.rule后缀,Calibre用的就是它。
- 标准单元库:.gds或.lef,用于布局。
- 技术文件:.tf或.lyp,定义层次和颜色。
我的做法是,在项目根目录下建一个pdk文件夹,把PDK解压进去。然后创建一个软链接,指向当前项目用的工艺版本。这样换工艺时,只改链接就行,不用动脚本。
# 示例:创建软链接
ln -s /home/pdk/tsmc28nm_v1.2 ./pdk_current
规则文件的位置,我建议放在./pdk_current/calibre/下。这样路径清晰,也好维护。
小技巧:规则文件里经常有INCLUDE语句,引用其他文件。确保这些被引用的文件也在同一目录下,或者路径写对了。我曾经因为少拷了一个.inc文件,排查了半天。
4.3 环境变量与路径配置:写进.bashrc,一劳永逸
环境变量配置,说白了就是告诉系统:工具装在哪、库在哪、规则在哪。每次打开终端都要设一遍,太麻烦。我都是写进.bashrc或.cshrc里。
下面是我常用的配置模板:
# Calibre 环境变量
export CALIBRE_HOME=/tools/mentor/calibre/2021.2
export PATH=$CALIBRE_HOME/bin:$PATH
export CALIBRE_LICENSE_FILE=27000@license_server_ip
# PDK 路径
export PDK_DIR=/home/project/pdk_current
export DRC_RULES=$PDK_DIR/calibre/drc.rul
# 工作目录
export DRC_WORK=/home/project/drc_work
配置完记得source ~/.bashrc,或者重新开一个终端。然后敲calibre -gui,如果能启动,说明环境变量生效了。
注意:CALIBRE_LICENSE_FILE这个变量,格式一定要写对。是port@host,不是host:port。我见过有人写反了,折腾了一下午。
4.4 实战:从零搭建一个DRC环境
光说不练假把式。咱们走一遍完整的流程。
第一步:创建项目目录
mkdir -p drc_demo/{pdk,work,scripts,results}
cd drc_demo
第二步:放置PDK和规则文件
假设你从foundry拿到了tsmc28nm_pdk.tar.gz,解压到pdk目录:
tar -xzf tsmc28nm_pdk.tar.gz -C ./pdk
ls ./pdk
# 应该看到 calibre/ gds/ lef/ tech/ etc.
第三步:配置环境变量
编辑~/.bashrc,加入上面那段配置。然后:
source ~/.bashrc
echo $DRC_RULES
# 输出应为:/home/yourname/drc_demo/pdk/calibre/drc.rul
第四步:写一个简单的DRC运行脚本
在scripts目录下创建run_drc.sh:
#!/bin/bash
# DRC运行脚本
calibre -drc -rule $DRC_RULES -layout ./work/top.gds -hyper
给执行权限:
chmod +x scripts/run_drc.sh
第五步:跑一下试试
cd work
../scripts/run_drc.sh
如果一切顺利,你会看到Calibre开始跑DRC,最后生成一个.drc.report文件。打开看看,里面就是检查结果。
避坑指南:我第一次跑DRC时,报错“Cannot open rule file”。检查了半天,发现是$DRC_RULES变量没生效。后来养成习惯,每次跑之前先echo $DRC_RULES确认一下。
4.5 知识体系:DRC环境搭建的核心逻辑
下面这张图,帮你理清整个环境搭建的脉络。从工具安装到规则文件,再到环境变量,每一步都有依赖关系。
你看,这三个模块是串联的。工具装好了,规则文件放对了,环境变量配准了,DRC才能跑起来。缺一个都不行。
好了,环境搭建就到这里。你按这个流程走一遍,应该不会出大问题。如果卡住了,回头看看环境变量有没有生效,或者规则文件路径对不对。嗯,这些细节最容易被忽略。
最后提醒一句:每次换项目、换工艺,记得重新检查一遍环境变量。我习惯写一个check_env.sh脚本,一键验证所有路径和变量。省心。
可可精品资料库