印刷电路板的布线距离验证系统及方法转让专利

申请号 : CN200410027259.1

文献号 : CN1696939B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 董华

申请人 : 鸿富锦精密工业(深圳)有限公司鸿海精密工业股份有限公司

摘要 :

一种印刷电路板的布线距离验证系统及方法。该系统包括一计算机、一数据库。计算机包括:一接收单元,用于接收一线上所有线段,并将其放置于一集合中;一选取单元,用于从集合中选取一线段;一设定单元,用于设定搜索距离;一区域确定单元,用于确定矩形区域;一搜索单元,用于搜索矩形区域内其它线上的线段;一计算单元,用于计算线段之间的距离;一比较单元,用于比较距离得到一最短距离,并将其与给定距离比较:及一判断单元,用于判断线上所有线段是否都经过验证。本系统可实现验证印刷电路板线间距离,保证布线设计符合标准。

权利要求 :

1.一种印刷电路板的布线距离验证系统,可以计算并验证印刷电路板的线间距离,其特征在于,该系统包括:一数据库,用于存储印刷电路板的布线相关信息,包括每一线上所有线段、各个线段的基本矩形、线段类型信息;及一计算机,其通过一数据库连接与上述数据库相连,用于进行印刷电路板布线过程中线间最短距离的计算及验证,其包括:一接收单元,用于接收上述数据库中一线上的所有线段,并将接收到的所有线段放置于一待验证线段集合中;

一选取单元,用于从待验证线段集合中选取一待验证的线段;

一设定单元,用于根据预先设定的搜索优化参数和搜索次数设定搜索距离;

一区域确定单元,用于根据被选取的待验证的线段的基本矩形以及设定的搜索距离确定可包含被选取的待验证的线段的矩形区域;

一搜索单元,用于根据被选取的待验证线段的线段类型,在确定的矩形区域范围内搜索该线以外的其它线的线段;

一计算单元,用于计算在确定的矩形区域内搜索到的该线以外的其它线上的每一个线段与被选取的待验证线段之间的距离;

一比较单元,用于将上述距离进行比较,得到最短距离,并将最短距离与预定的距离进行比较;及一判断单元,用于判断线上的所有线段是否都经过验证。

2.如权利要求1所述的印刷电路板的布线距离验证系统,其特征在于,其中一个线段的基本矩形包括一左上角坐标、一右下角坐标,两坐标用于构成一最小基本矩形,即最小的、可包含该线段的矩形区域。

3.如权利要求1所述的印刷电路板的布线距离验证系统,其特征在于,其中当上述最短距离小于等于预定的距离时,比较单元显示一不符合设计规则检查标记。

4.一种印刷电路板的布线距离验证方法,其可以计算并验证印刷电路板的线间距离,其特征在于,该方法包括如下步骤:接收来自数据库中一线上的所有线段,并将接收到的所有线段放置于一待验证线段集合中;

从上述待验证线段集合中选取一待验证的线段;

根据预先设定的搜索优化参数和搜索次数设定搜索距离;

根据上述搜索距离,确定新的矩形区域;

在新的矩形区域内,搜索该线以外的其它线上的线段;

确定是否在新的矩形区域内搜索到该线以外的其它线上的线段;

计算搜索到的该线以外的其它线上的每一个线段与待验证线段之间的距离;

比较上述距离,得到最短距离;

比较最短距离与预定距离;及

如果最短距离小于等于预定距离,显示一不符合设计规则检查标记。

5.如权利要求4所述的印刷电路板的布线距离验证方法,其特征在于,其中不符合设计规则检查标记包含预定距离。

6.如权利要求4所述的印刷电路板的布线距离验证方法,其特征在于,其中不符合设计规则检查标记包含上述最短距离。

7.如权利要求4所述的印刷电路板的布线距离验证方法,其特征在于,还包括步骤:如果最短距离大于预定距离,判断线上所有线段是否都经过验证。

8.如权利要求7所述的印刷电路板的布线距离验证方法,其特征在于,还包括步骤:如果线上还有线段没有经过验证,则返回步骤执行从线段集合中选取一待验证的线段。

9.如权利要求4所述的印刷电路板的布线距离验证方法,其特征在于,其中根据搜索距离,确定新的矩形区域还包括步骤:根据待验证线段的基本矩形确定一最小的、可包含待验证线段的矩形区域。

10.如权利要求4所述的印刷电路板的布线距离验证方法,其特征在于,其中确定是否在新的矩形区域内搜索到该线以外的其它线上的线段还包括步骤:如果在新的矩形区域内没有搜索到该线以外的其它线上的线段,则返回执行根据预先设定的搜索优化参数和搜索次数设定搜索距离。

说明书 :

印刷电路板的布线距离验证系统及方法

【技术领域】

[0001] 本发明关于一种距离验证系统及方法,尤指一种印刷电路板的布线间距离验证系统及方法。【背景技术】
[0002] 随着消费者对电子产品的要求越来越高,安装在印刷电路板(Printed Circuit Board)上的电子组件集成度也越来越高。电子组件在工作的时候,会产生电磁波干扰附近其它电子组件的操作,称为电磁干扰现象。由于电子组件的集成度越来越高,功能日益加强,因此电子组件的操作速度也跟着越来越快,操作频率也越来越高,使得电磁波的强度变强,造成电子组件之间的电磁干扰现象更加严重。同时随着电子组件的操作频率提高,印刷电路板上的线路操作频率也跟着提高,因此印刷电路板的线路也会有电磁干扰现象增强的问题产生。
[0003] 由于电磁干扰现象会对周围的电子设备产生影响,严重者甚至会造成安全上的危害,因此许多国家对于电子设备的抗电磁干扰能力均有相当严格的规定。美国联邦通讯委员会在1990年和欧盟在1992年提出了对商业数码产品的有关规章,要求各个公司确保它们的产品符合严格的磁化系数和发射准则。符合这些规章的产品被认为具有电磁兼容性(Electromagnetic Compatibility,EMC)。欧盟规定自1996年起,凡是未通过EMC认证和检测的任何电子产品均不能在欧盟市场上流通。美国联邦通讯委员会规定,任何人不得出售、出租未经EMC检测认证的电子、电子产品,否则企业法人将被监禁并不得赎出。所以降低电子产品的电磁干扰对制造者而言是一项重要的课题。
[0004] 再者印刷电路板设计的时间越来越短,越来越小的电路板空间,越来越高的器件密度,极其复杂的布局规则和大尺寸的组件使得设计师的工作更加困难。而布线正是整个印刷电路板设计的关键,其设计过程限定高、技巧细、工作量大,而在布线过程中由于合理的线间距离是减少电磁干扰的重要因素(电磁干扰强度与距离平方成反比),因此线间距离的计算及验证又是布线工作的重要一环,是布线是否合理的重要保证。线间距离的计算过程复杂、计算量大,其计算结果不仅影响到线间的电磁干扰,还会影响到印刷电路板上其它电子组件的电磁干扰,进而影响到整个印刷电路板成品的质量。
[0005] 所以,针对各国对电子产品越来越严格的抗电磁干扰要求,以及印刷电路板上严格的布线要求,需要提供一种印刷电路板上线路间最短距离的验证系统及方法,准确计算出合理的、最短的线路间距离,并实现线间距离的验证,避免人为验证的不准确和人为的疏忽,保证合理的布线,从而既满足减少电磁干扰,又满足越来越小的印刷电路板空间。【发明内容】
[0006] 本发明的主要目的在于提供一种印刷电路板的线间最短距离验证系统及方法,准确计算出合理的、最短的线间距离,并实现线间距离的自动测试。
[0007] 本发明提供一种印刷电路板的线间最短距离验证系统,其可准确计算出合理的、最短的线间距离,并自动将最短的线间距离与预定距离值进行比较,测试该最短的线间距离是否符合设计规则检查。该系统包括:一计算机,其包含有多个软件功能单元,用于进行印刷电路板布线过程中线(net)间最短距离的计算及验证;一数据库,用于存储net相关信息;一数据库连接,用于连接计算机与数据库。
[0008] 其中计算机包括:一接收单元,用于接收来自数据库的一条net上的所有线段(segment),并将接收到的segment放置于一待验证segment集合中,其中net包含属性:线id(net id)、线上所有线段(netsegment),net id用于标识该net,net segment用于表明该net上所包含的segment,其中segment包含属性:线段id(segment id)、线段的基本矩形(segment selectbox)、线段类型(segment类型),segment id用于标识该segment,segment selectbox用于确定一最小的、可包含待验证的segment的矩形区域,其包括一左上角坐标与一右下角坐标,构成一最小基本矩形,segment类型用于表明该segment的线段类型,包括直线线段、弧线线段;一选取单元,用于通过一选取函数从待验证segment集合中不重复的选取一待验证的segment;一设定单元,用于根据预先设定的参数A和搜索次数n设定搜索距离为A+10*n,其中预先设定的参数A为系统设定的距离默认参数;一区域确定单元,用于根据被选取的待验证的segment的segment selectbox属性以及搜索距离确定可包含该segment的矩形区域;搜索单元,用于根据被选取的待验证的segment的segment类型,通过一搜索函数在矩形区域范围内搜索其它net的segment;计算单元,用于将在矩形区域内搜索到的其它net上的segment通过距离计算函数分别计算其与被选取的待验证的segment之间的距离;比较单元,用于将计算出的距离进行比较,得到最短距离,并将最短距离与预定距离B进行比较,确定两者之间的大小;一判断单元,用于判断net上的所有segment是否都经过验证。
[0009] 本发明还提供一种印刷电路板线间最短距离验证方法,该方法包括以下步骤:(a)接收来自数据库的一条net上的所有segment,并将接收到的segment放置于一待验证segment集合中;(b)根据一选取函数从待验证segment集合中选取一待验证的segment;(c)根据预先设定的参数A以及搜索次数n设定搜索距离为A+10*n,进行其它net上的segment的搜索,其中n初始次数为1,表明第一次搜索;(d)根据被选取的待验证的segment的segment selectbox属性(包括左上角坐标、右下角坐标)确定一个最小的、可包含该segment的基本矩形区域;(e)按搜索距离A+10*n值分别增加基本矩形区域的长、宽边,形成一个新的矩形区域,其中n随着搜索次数增加而增加一;(f)通过一搜索函数在新的矩形区域内进行其它net上的segment的搜索;(g)如果没有搜索到其它net上的segment,则返回步骤(e),增加搜索距离,扩大搜索范围;(h)如果搜索到其它net上的segment,则根据距离计算函数分别计算其与被选取的待验证的segment之间的距离;(i)比较计算得到的距离,得到最短距离,并将最短距离与预定距离B进行比较;(j)如果最短距离小于等于预定距离B,则提示一不符合设计规则检查标记(DRC symbol),该DRC symbol包含用户设定距离B、实际计算得到的segment之间的最短距离,并执行步骤(k);(k)如果最短距离大于预定距离B,则判断net上的所有segment是否都经过验证,如果还存在segment没经过验证,则返回步骤(b),如果net上的所有segment都经过验证,则结束。
[0010] 利用本发明实现准确计算并验证印刷电路板上net间最短距离,避免人为验证的不准确和人为的疏忽,保证合理的布线,从而既满足减少电磁干扰,又满足越来越小的印刷电路板空间。【附图说明】
[0011] 图1是本发明印刷电路板的布线距离验证系统的硬件架构图。
[0012] 图2是本发明印刷电路板的布线距离验证系统计算机的软件功能单元图。
[0013] 图3是本发明印刷电路板的布线距离验证系统的主要作业流程图。【具体实施方式】
[0014] 如图1所示,是本发明印刷电路板的布线距离验证系统的硬件架构图。该系统包括一计算机10,一数据库11,一连接12。其中计算机10,其包含有多个软件功能单元,用于进行印刷电路板布线过程中线(net)间最短距离的计算及验证;数据库11,用于存储印刷电路板中所有net相关信息,包括每一条线id(net id)、每一条线上所有线段(net segment)、每一条线段id(segment id)、每一条线段的基本矩形(segment selectbox)、每一条线段类型(segment类型)等信息。其中net id用于标识该net;net segment用于表明该net上所包含的segment;segment id用于标识该segment;segment selectbox用于确定一最小的、可包含该segment的矩形区域,其包括一左上角坐标、一右下角坐标,两坐标用于构成一最小基本矩形;segment类型用于表明该segment的线段类型,包括直线线段、弧线线段。连接12为一数据库连接,如开放式数据库连接(Open Database Connectivity,ODBC),或Java数据库连接(Java Database Connectivity,JDBC)等,用于连接计算机10与数据库11。
[0015] 如图2所示,是本发明印刷电路板的布线距离验证系统计算机的软件功能单元图。该计算机10包括一接收单元100,一选取单元101、一设定单元102、一区域确定单元103、一搜索单元104、一计算单元105、一比较单元106、及一判断单元107。其中接收单元
100用于接收来自数据库11的一条net上的所有segment,并将接收到的所有segment放置于一待验证segment集合中。选取单元101用于从待验证segment集合中选取一待验证的segment。设定单元102用于根据预先设定的参数A和搜索次数n设定搜索距离为A+10*n,其中参数A为系统设定的距离默认参数,n初始次数为1,表明第一次搜索。区域确定单元
103用于根据segment的segment selectbox属性以及搜索距离确定可包含该segment的矩形区域。搜索单元104用于根据被选取的待验证segment的segment类型,在矩形区域范围内搜索其它net的segment。计算单元105用于将在矩形区域内搜索到的其它net上的segment分别计算其与被选取的待验证segment之间的距离。比较单元106用于将上述计算出的距离进行比较,得到最短距离,并将最短距离与预定距离B进行比较,确定两者之间的大小。一判断单元107用于判断net上的所有segment是否都经过验证,即判断待验证segment集合中的segment是否都被选取过。
[0016] 如图3所示,是本发明印刷电路板的布线距离验证系统的主要作业流程图。首先,接收单元100接收来自数据库11的一条net上的所有segment,并将接收到的所有segment放置于一待验证segment集合中,其中net用net id标识,segment用segment id标识,net至少包含一segment(步骤S300)。选取单元101根据一选取函数从待验证segment集合中选取一待验证的segment。其中选取函数可为Allegro一内部选取函数(Allegro为Cadence推出的PCB设计布线工具,其自带有强大的内部函数库),函数可从待验证segment集合中随机选取一待验证segment,且该segment不重复被选取(步骤S301)。设定单元102根据预先设定的参数A以及搜索次数n设定搜索距离为A+10*n,进行其它net上的segment搜索。其中参数A为一搜索优化参数,用于在最少的搜索次数、最小的搜索距离范围内搜索到其它net上的segment。其中n初始次数为1,表明第一次搜索,搜索过程中每搜索一次完后,n累加一,搜索完毕n重新设置为1(步骤S302)。区域确定单元103根据segment的segment selectbox属性(包括左上角坐标、右下角坐标)确定一个最小的、可包含选取的待验证的segment的基本矩形区域(步骤S303)。区域确定单元103按搜索距离A+10*n值分别增加基本矩形区域的长、宽边,形成一个新的矩形区域(步骤S304)。搜索单元104通过一搜索函数在区域确定单元103确定的矩形区域内进行其它net上的segment的搜索,确定是否存在其它net上的segment落在矩形区域内。其中搜索函数可为Allegro内部搜索函数axlAddSelectBox()。搜索函数根据segment的segment类型以及区域确定单元103确定的矩形区域,进行其它net上segment的搜索,确定是否存在其它net上的segment落在矩形区域内(步骤S305)。如果没有搜索到其它net上的segment,则返回步骤(e),增加搜索距离,扩大搜索范围;如果搜索到其它net上的segment,则执行步骤S307(步骤S306)。计算单元105根据选取的待验证的segment以及搜索到的其它net上的segment的segment类型,通过距离计算函数分别计算搜索到的其它net上的各segment与待验证segment之间的距离。其中针对不同的segment类型有不同的距离计算函数,例如,当选取的待验证的segment为直线线段,搜索到的其它net上的segment为直线线段,则距离计算函数为grs_lib_clineTouch();当选取的待验证的segment为直线线段,搜索到的其它net上的segment为圆弧线段,则距离计算函数为grs_lib_clineToarc();当选取的待验证的segment为圆弧线段,搜索到的其它net上的segment为直线线段,则距离计算函数为grs_lib_arcTocline();当选取的待验证的segment为圆弧线段,搜索到的其它net上的segment为圆弧线段,则距离计算函数为grs_lib_arcToarc()(步骤S307)。比较单元
106将计算单元105计算得到的每一segment(为搜索到的其它net上的segment)与待验证segment之间的距离进行比较得到最短距离(步骤S308)。比较单元106将得到的最短距离与预定距离B进行比较。如果最短距离小于等于预定距离B,执行步骤S310;如果最短距离大于预定距离B,则执行步骤S311(步骤S309)。比较单元106提示一不符合设计规则检查标记(DesignRule Check symbol,DRC symbol),该DRC symbol包含用户设定距离B、实际计算得到的segment之间的最短距离,并执行步骤S311(步骤S310)。判断单元107判断net上的所有segment是否都经过验证,即待验证的segment集合中的segment是否都被选取过。如果还存在segment没经过验证,则返回步骤S301;如果net上的所有segment都经过验证,则结束(步骤S311)。