Altium Designer生成gerber文件时的精度问题
最近向PCB工厂送出一块电路板设计,但是却被退回告知不符合最小走线间距要求。我使用该间PCB工厂已经有一段时间,对他们的各项指标十分 清楚。另外,我确定这块板子的设计肯定符合对方最小走线6mil的要求,因为我使用的Altium Designer的DRC(Design rule check)没有任何警告或者报错。为了进一步保证我的设计能满足对方的最小走线间距要求,我将最小间距提到了6.1mil,心想如果这样我的EDA软件 不报错,那板子再送过去应该肯定没有问题了吧。当然这个一提可是又花费了我不少功夫……
可是结果……还是说我的间距小于6mil,快把我逼疯了……
对方告诉我,我的设计里至少有50处最小走线间距违规,违规出显示实际间距为5.5mil或者5.7mil。这就让我起疑了,这些实际间距怎么才精 确到小数点后面一位呢?会不会gerber工程文件在输出的时候精度有问题?仔细检查了Altium Designer里各处gerber生成相关联的设置以后,终于真相大白:
PCB设计完成以后,你可以通过选择“File” -> “Fabrication Outputs” -> “Gerber files” 来调出CAM转换步骤的对话框,在这个对话框的第一个标签里,有一个Format(格式)的选项,就如其解释所说,选择“2:3”能精确到1mil(2表 示两位整数,3表示3位小数,1mil相当于一千分之一英尺,所以3位小数就是精确到0.001英尺,即1mil);“2:4”精确到0.1mil; “2:5”精确到0.01mil。显然,如果选择“2:3”作为输出格式,而设计精度要小于1mil,那小于1mil那部分小数位都被软件切割掉了。这就 意味着你的各种走线都被“移动”过了,况且你还不知道他们是怎么被切割的。这一移动毫无疑问就让我的设计超出了最小走线间距了。
不过比较具有迷惑性的是,“Gerber Setup”并非是最终生成gerber工程文件的地方。这步只是将你的PCB设计转换成CAMtastic文件(CAM文件)。你可以把这个CAM过程 想象成一个成像过程,通过这个成像以后,你PCB设计中的各种netlist等关联信息都被移除,只剩下走线、丝印以及过孔等信息。所以你最后要做的,就 是将你的CAM逐层分解生成单独的gerber文件,这就是我们平时送到PCB工厂的文件。在生成之前,还有一个精度设置的地方,这既是我忽略并造成麻烦 的地方。
在CAMtastic窗口中,选择“Export”->“Gerber”出现下面的窗口:
要注意在“Settings”里面还有一个选择小数点位数的地方,这个才是最后要影响到你gerber精度的地方。确保你选择了和你自己PCB设计相吻合的精度。
选择高精度再次送出文件以后,没有再收到任何问题报告,电路板也顺利加工完毕。但是令人不解的是,为什么之前没有注意到这个高精度选项却也没有收到 任何PCB工厂的出错报告呢?后来才发觉,之前的PCB电路板的网格精度都没有低于1mil,而这次由于PCB密度很高,又不想提高PCB成本而选择更小 的走线/间距水平,所以将PCB的网格放到0.05mil,所以就出现了这样精度失真的问题。