微波EDA网,见证研发工程师的成长!
首页 > 测试测量 > 测试测量技术文库 > 编写属于自己的PCB设计规则检查器

编写属于自己的PCB设计规则检查器

时间:11-06 来源:EETCHINA 点击:

编写属于自己的PCB设计规则检查器具有很多优点,尽管设计检查器并不那么简单,但也并非高不可攀,因为任何熟悉现有编程或脚本语言的设计人员完全能够设计检查器,这项工作的好处是不可估量的,本文介绍编写PCB设计规则检查器的技巧。

本文阐述了一种编写PCB设计规则检查器(DRC)的系统方法。利用电路图生成工具得到PCB设计后,即可运行DRC以找到任何违反设计规则的故障。这些操作必须在后续处理开始之前完成,而且开发电路图生成工具的开发商必须提供大多数设计人员都能轻松掌握的DRC工具。

然而,市场销售的通用工具通常不具备足够的灵活性以满足特定的设计需要。因此,客户必须将新特性需求反映给DRC工具开发 商,而这通常需要耗费一定的资金和时间,尤其当需求不断更新时。幸运的是,大多数工具开发商均可为客户提供编写属于自己的DRC以满足特定需求的便捷方 法。但是,这种具有强大功能的工具尚未得到广泛认同或使用。本文提供了利用DRC工具获取最大收益的实用指南。

由于DRC必须遍历 PCB设计的整个电路图,包括每个符号、每个引脚、每个网路、每种属性,如有必要还能创建数目不限的"附属"文件。如4.0节所述,DRC可以标示出任何 违反设计规则的细微偏差。例如其中一个附属文件就可能包含设计用到的全部去耦电容。如果电容数低于或高于期望值,就将在可能出现电源线dv/dt问题的地 方标注红色记号[1]。这些附属文件或许必不可少,但并非任何商用DRC工具都一定能创建这些文件。

DRC的另一优势是便于更新,以适应新设计特性(如那些可能影响设计规则的新特性)的需要。而且,一旦在该领域获得充分经验,那么还能实现许多其它功能。

例如,如果能编写属于自己的DRC,那么就能编写属于自己的物料清单(BOM)创建工具,这样就能更好地处理特定用户需求, 如如何获取本身不属于电路图数据库一部分的器件"额外硬件"(如插座、散热装置或螺丝刀)。或者设计人员可以编写属于自己的Verilog网表分析器,该 分析器在设计环境下具有充分的灵活度,如怎样获取适用于特定器件的Verilog模型或时间文件。实际上,由于DRC遍历了整个设计电路图,因此可以收集 全部有效信息以输出PCB设计Verilog网表分析所需的仿真和/或BOM。

在不提供任何程序代码的前提下讨论这些话题实在有些牵强,为此,我们将以一种电路图获取工具为例进行说明。本文采用了 Mentor Graphics公司开发的附属于PADS-Designer产品线的ViewDraw工具。此外,我们还采用了ViewBase工具,这是一个可被调用 并对ViewDraw数据库进行存取操作的简化C例行程序库。利用ViewBase工具,设计人员可以轻松地采用C/C++语言为ViewDraw编写完 整且高效的DRC工具[2] [3]。需要注意的是,这里讨论的基本原则同样适用于任何其它的PCB电路图工具。

输入文件

除了电路图数据库,DRC还需要一些可以描述特定情况处理的输入文件,如自动连接到电源平面的合法电源网路名称。例如,如果 电源网路名为POWER,那么电源平面将采用后端封装设备(如适用于ViewDraw的pcbfwd)自动连接到电源平面。下面给出了输入文件列表,这些 文件必须放在固定的全局位置,这样DRC就能自动找到并读取,然后在运行时将这些信息保存在DRC内部。

* 文件legal_pwr_net_name可选,该文件包含POWER信号全部合法网路名称,如VCC、V3_3P和VDD。在PCB布局/路由工具中, 需要对名称的大小写进行区分,一般VCC并不等同于Vcc或vcc。VCC可以是5.0V的电源,而V3_3P则可以是3.3V的电源。

* 文件legal_pwr_net_name可选,因为后端封装设备的配置文件通常必须包含一组合法电源线网路名称。如果采用Cadence设计系统公司的Allegro布线工具,那么pcbfwd的文件名则为allegro.cfg并且具有如下入口参数:

接地:VSS CGND GND GROUND

电源:VCC VDD VEE V3_3P V2_5P +5V +12V

如果DRC可以直接读取allegro.cfg文件,而非legal_pwr_net_name,那么将能得到更好的结果(即引入误差的几率较小)。

电源线引脚通常并不外接到器件符号上,相反,该符号的一个属性(这里称为SIGNAL)描述了哪个引脚是电源引脚或接地引脚并描述引脚应当连接的网络名称。

SIGNAL = VCC:10

SIGNAL = GROUND:20

DRC可读取该属性并确保网路名称保存在legal_pwr_net_name文件中,如果legal_pwr_net_name中不包含网路名称,那么电源引脚将不会连接到电源平面,而这个问题确实非常严重。

一些符号必须具有外接电源线引脚,因为这些符号并不连接到常规

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top