本申请涉及pcb(printedcircuitboard,印制电路板)设计技术领域,特别是涉及一种pcb设计中差分布线的方法及系统。
背景技术:
在pcb设计及前期评估阶段,设计人员需要对所有差分线bus进行预评,从而不断优化pcb设计。随着高密度板卡的发展,pcb板越来越精细化,小型化,且差分线的速度越来越高,对差分布线质量要求也越来越高。因此,如何在pcb设计中进行差分布线,从而对pcb设计进行评估,是个重要问题。
目前,在pcb设计中进行差分布线的方法,通常是进行简单评估,首先拉一个粗线作为评估通道,再根据该粗线对每对差分信号进行逐个布线,最后,根据空间人工进行差分线的移动和修改。以主板的pcb设计为例,主板中包括16层pcb布线层,其中有7层信号走线,每层信号走线中至少有6种bus信号,因此,每组进行重新布局移动次数至少为6次。第一次布局好之后,后面再发生位置变动,需要再次移动相关差分线对。
然而,目前在pcb设计中进行差分布线的方法中,由于需要人工进行差分线的移动和修改,且一个板卡设计中需要多次移动相关差分线,布线的效率较低;而且,由于需要多次移动相关差分线,导致每次移动后差分线间距不一致,从而导致布线的准确性较低。
技术实现要素:
本申请提供了一种pcb设计中差分布线的方法及系统,以解决现有技术中pcb布线的效率和布线间距准确性较低的问题。
为了解决上述技术问题,本申请实施例公开了如下技术方案:
一种pcb设计中差分布线的方法,所述方法包括:
在当前pcb板内,利用一对差分信号线生成n对待处理差分线对;
利用n对所述待处理差分线对生成第二粗线;
将所述第二粗线移动至目标位置;
在所述目标位置处,以所述第二粗线的中心线为基准,再次生成n对差分线对。
可选地,所述在当前pcb板内,利用一对差分信号线生成n对待处理差分线对的方法,包括:
获取当前pcb板内待处理差分线对的一对差分值;
根据所述差分值,生成一对差分信号线;
根据所述差分信号线的net名称,获取所述差分信号线的dp线宽、dn线宽以及dp/dn间距;
根据所述dp线宽、dn线宽以及dp/dn间距,利用公式a=(2w d)计算得出所述差分信号线的空间值,其中,a为所述差分信号线的空间值,w为dp和dn的线宽,d为dp/dn间距;
根据差分线对数量、差分线间距以及空间值,利用公式m=n*s*a计算得出待处理差分线对的总宽度,其中,m为待处理差分线对的总宽度,n为一个bus内包含的待处理差分线对的数量,s为差分线间距,a为一对所述差分信号线的空间值;
根据n、s和a确定第一粗线及其中心线坐标,所述第一粗线为根据n、s和a之间的逻辑关系建立的属性线;
以所述第一粗线的中心线为基准,向所述第一粗线的中心线两侧分别外扩n/2对差分线对,且所述第一粗线的中心线到两侧差分线对边缘的距离均为m/2。
可选地,利用n对所述待处理差分线对生成第二粗线的方法,包括:
选中待移动的n对差分线对;
抓取当前bus中所有待移动的差分线对的中心线到边缘的距离;
根据所述距离生成第二粗线,所述第二粗线为当前bus中所有待移动差分线对构成的符合逻辑关系的属性线。
可选地,在所述目标位置处,以所述第二粗线的中心线为基准,再次生成n对差分线对的方法,具体为:
在所述目标位置处,以所述第二粗线的中心线为基准,向所述第二粗线的中心线两侧分别外扩n/2对差分线对,且所述第二粗线的中心线到两侧差分线对边缘的距离均为m/2。
一种pcb设计中差分布线的系统,所述系统包括:
第一布线模块,用于在当前pcb板内,利用一对差分信号线生成n对待处理差分线对;
粗线生成模块,用于利用n对所述待处理差分线对生成第二粗线;
移动模块,用于将所述第二粗线移动至目标位置;
第二布线模块,用于在所述目标位置处,以所述第二粗线的中心线为基准,再次生成n对差分线对。
可选地,所述第一布线模块包括:
差分值获取单元,用于获取当前pcb板内待处理差分线对的一对差分值;
差分信号线生成单元,用于根据所述差分值,生成一对差分信号线;
参数获取单元,用于根据所述差分信号线的net名称,获取所述差分信号线的dp线宽、dn线宽以及dp/dn间距;
空间值计算单元,用于根据所述dp线宽、dn线宽以及dp/dn间距,利用公式a=(2w d)计算得出所述差分信号线的空间值,其中,a为所述差分信号线的空间值,w为dp和dn的线宽,d为dp/dn间距;
待处理差分线对总宽度计算单元,用于根据差分线对数量、差分线间距以及空间值,利用公式m=n*s*a计算得出待处理差分线对的总宽度,其中,m为待处理差分线对的总宽度,n为一个bus内包含的待处理差分线对的数量,s为差分线间距,a为一对所述差分信号线的空间值;
第一粗线确定单元,用于根据n、s和a确定第一粗线及其中心线坐标,所述第一粗线为根据n、s和a之间的逻辑关系建立的属性线;
扩展单元,用于以所述第一粗线的中心线为基准,向所述第一粗线的中心线两侧分别外扩n/2对差分线对,且所述第一粗线的中心线到两侧差分线对边缘的距离均为m/2。
可选地,粗线生成模块包括:
选择单元,用于选中待移动的n对差分线对;
抓取单元,用于抓取当前bus中所有待移动的差分线对的中心线到边缘的距离;
第二粗线生成单元,用于根据所述距离生成第二粗线,所述第二粗线为当前bus中所有待移动的差分线对构成的符合逻辑关系的属性线。
本申请的实施例提供的技术方案可以包括以下有益效果:
本申请提供一种pcb设计中差分布线的方法,该方法首先在当前pcb板内利用一对差分信号线生成n对待处理差分线对,然后利用n对待处理差分线对生成一条第二粗线,将第二粗线移动至目标位置,最后在目标位置处以第二出线为基准再次生成n对差分线对。整个过程为:本实施例通过一对差分信号线变n对差分线对,n对差分线对变一第二粗线,移动第二粗线后再进行一变n对差分线对的方式。通过生成第二粗线,对第二粗线进行移动,能够实现批量移动,且由于是针对粗线移动,移动过程不会造成差分线间距不一致,因此,能够大大提高布线的准确性。移动完成后,利用第二粗线能够再次生成n对差分线对,因此,本实施例能够实现批量移动,有利于提高pcb布线的效率。
本申请还提供一种pcb设计中差分布线的系统,该系统中主要包括:第一布线模块、粗线生成模块、移动模块和第二布线模块。通过设置第一布线模块将一对差分信号线变成n对待处理差分线对,然后利用粗线生成模块将n对差分线对变成一条第二粗线,便于后续对差分线进行批量移动,有利于提高批量处理效率和布线的准确性,最后再通过第二布线模块,将第二粗线变成n对差分线对,最终实现批量布线,有利于提高pcb设计效率。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种pcb设计中差分布线的方法的流程示意图;
图2为本申请实施例中第一粗线的结构示意图;
图3为本申请实施例中以第一粗线为中心线外扩n/2对差分线对的原理示意图;
图4为本申请实施例所提供的一种pcb设计中差分布线的系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
为了更好地理解本申请,下面结合附图来详细解释本申请的实施方式。
实施例一
参见图1,图1为本申请实施例所提供的一种pcb设计中差分布线的方法的流程示意图。由图1可知本实施例pcb设计中差分布线的方法,主要包括如下过程:
s1:在当前pcb板内,利用一对差分信号线生成n对待处理差分线对。
具体地,步骤s1包括如下过程:
s11:获取当前pcb板内待处理差分线对的一对差分值。
s12:根据差分值,生成一对差分信号线。
本实施例中的方法可以采用cadence软件来实现,cadence软件中内置skill语言,可以利用skill语言利用本实施例中的方法进行编程,从而提高差分布线的自动化程度。
根据以上步骤s11和s12,在进行pcb布线前,先获取pcb板内待处理差分线对的单对差分值,根据单对差分值,在cadence软件中即可走出一对差分信号线。
s13:根据差分信号线的net名称,获取差分信号线的dp线宽、dn线宽以及dp/dn间距。
一个差分线对包括dp线和dn线,两者通常线宽相等,dp/dn间距指的是dp线和dn线之间的间距,也就是是同一个差分线对中正极线与负极线之间的间距。
s14:根据dp线宽、dn线宽以及dp/dn间距,利用公式a=(2w d)计算得出差分信号线的空间值。
其中,a为差分信号线的空间值,w为dp和dn的线宽,d为dp/dn间距。由于一个差分线对中dp线和dn线中宽度相等,均为w,因此,空间值a中为2w。
s15:根据差分线对数量、差分线间距以及空间值,利用公式m=n*s*a计算得出待处理差分线对的总宽度。
其中,m为待处理差分线对的总宽度,n为一个bus内包含的待处理差分线对的数量,s为差分线间距,a为一对差分信号线的空间值。
s16:根据n、s和a确定第一粗线及其中心线坐标,第一粗线为根据n、s和a之间的逻辑关系建立的属性线。
在cadence软件中,任意点击一粗线的起始端和末尾端,输入n、s和a值,即可确定第一粗线。
确定第一粗线后,执行步骤s17:以第一粗线的中心线为基准,向第一粗线的中心线两侧分别外扩n/2对差分线对,且第一粗线的中心线到两侧差分线对边缘的距离均为m/2。
也就是,根据n、s和a值点击第一粗线的中线坐标,从第一粗线向两侧分别外扩差分线对,实现一个差分先线变n个差分线对。两侧各自扩展n/2对差分线对,且由于总宽度为m,两侧到第一粗线中心线的距离均为m/2。本实施例中第一粗线的结构示意图可以参见图2,以第一粗线为中心线外扩n/2对差分线对的原理示意图,可以参见图3。
继续参见图1可知,利用一对差分信号线生成n对待处理差分线对之后,执行步骤s2:利用n对待处理差分线对生成第二粗线。
具体地,步骤s2包括:
s21:选中待移动的n对差分线对。
s22:抓取当前bus中所有待移动的差分线对的中心线到边缘的距离。
s23:根据该距离生成第二粗线。
其中,第二粗线为当前bus中所有待移动差分线对构成的符合逻辑关系的属性线。
通过以上步骤s21-s23,实现将n对差分线对变为一个第二粗线的n变一的过程。
继续参见图1可知,生成第二粗线之后,执行步骤s3:将第二粗线移动至目标位置。
本实施例中对第二粗线进行移动,能够有效降低移动过程中对差分线间距的影响,从而大大提高差分布线的准确性。而且,针对n对差分线对生成的一个第二粗线进行移动,能够实现批量移动,提高布线过程中的移动效率。
s4:在目标位置处,以第二粗线的中心线为基准,再次生成n对差分线对。
具体地,步骤s4的执行过程如下:
在目标位置处,以第二粗线的中心线为基准,向第二粗线的中心线两侧分别外扩n/2对差分线对,且第二粗线的中心线到两侧差分线对边缘的距离均为m/2。
也就是实现移动之后,再次进行一变n的过程,一个第二粗线变成n对差分线对。
实施例二
在图1-图3所示实施例的基础之上参见图4,图4为本申请实施例所提供的一种pcb设计中差分布线的系统的结构示意图。由图4可知,本实施例pcb设计中差分布线的系统主要包括:第一布线模块、粗线生成模块、移动模块和第二布线模块。
其中,第一布线模块,用于在当前pcb板内,利用一对差分信号线生成n对待处理差分线对。粗线生成模块,用于利用n对待处理差分线对生成第二粗线。移动模块,用于将第二粗线移动至目标位置。第二布线模块,用于在目标位置处,以第二粗线的中心线为基准,再次生成n对差分线对。
进一步地,第一布线模块包括:差分值获取单元、差分信号线生成单元、参数获取单元、空间值计算单元、待处理差分线对总宽度计算单元、第一粗线确定单元、扩展单元
差分值获取单元,用于获取当前pcb板内待处理差分线对的一对差分值。差分信号线生成单元,用于根据所述差分值,生成一对差分信号线。参数获取单元,用于根据所述差分信号线的net名称,获取所述差分信号线的dp线宽、dn线宽以及dp/dn间距。空间值计算单元,用于根据所述dp线宽、dn线宽以及dp/dn间距,利用公式a=(2w d)计算得出所述差分信号线的空间值,其中,a为所述差分信号线的空间值,w为dp和dn的线宽,d为dp/dn间距。待处理差分线对总宽度计算单元,用于根据差分线对数量、差分线间距以及空间值,利用公式m=n*s*a计算得出待处理差分线对的总宽度,其中,m为待处理差分线对的总宽度,n为一个bus内包含的待处理差分线对的数量,s为差分线间距,a为一对所述差分信号线的空间值。第一粗线确定单元,用于根据n、s和a确定第一粗线及其中心线坐标,所述第一粗线为根据n、s和a之间的逻辑关系建立的属性线。扩展单元,用于以所述第一粗线的中心线为基准,向所述第一粗线的中心线两侧分别外扩n/2对差分线对,且所述第一粗线的中心线到两侧差分线对边缘的距离均为m/2。
粗线生成模块包括:选择单元、抓取单元和第二粗线生成单元。其中,选择单元,用于选中待移动的n对差分线对;抓取单元,用于抓取当前bus中所有待移动的差分线对的中心线到边缘的距离;第二粗线生成单元,用于根据距离生成第二粗线,第二粗线为当前bus中所有待移动的差分线对构成的符合逻辑关系的属性线。
该实施例pcb设计中差分布线的系统的工作原理和工作方法,在图1-图3所示的实施例中已经详细阐述,在此不再赘述。
以上所述仅是本申请的具体实施方式,使本领域技术人员能够理解或实现本申请。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本申请的精神或范围的情况下,在其它实施例中实现。因此,本申请将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
1.一种pcb设计中差分布线的方法,其特征在于,所述方法包括:
在当前pcb板内,利用一对差分信号线生成n对待处理差分线对;
利用n对所述待处理差分线对生成第二粗线;
将所述第二粗线移动至目标位置;
在所述目标位置处,以所述第二粗线的中心线为基准,再次生成n对差分线对。
2.根据权利要求1所述的一种pcb设计中差分布线的方法,其特征在于,所述在当前pcb板内,利用一对差分信号线生成n对待处理差分线对的方法,包括:
获取当前pcb板内待处理差分线对的一对差分值;
根据所述差分值,生成一对差分信号线;
根据所述差分信号线的net名称,获取所述差分信号线的dp线宽、dn线宽以及dp/dn间距;
根据所述dp线宽、dn线宽以及dp/dn间距,利用公式a=(2w d)计算得出所述差分信号线的空间值,其中,a为所述差分信号线的空间值,w为dp和dn的线宽,d为dp/dn间距;
根据差分线对数量、差分线间距以及空间值,利用公式m=n*s*a计算得出待处理差分线对的总宽度,其中,m为待处理差分线对的总宽度,n为一个bus内包含的待处理差分线对的数量,s为差分线间距,a为一对所述差分信号线的空间值;
根据n、s和a确定第一粗线及其中心线坐标,所述第一粗线为根据n、s和a之间的逻辑关系建立的属性线;
以所述第一粗线的中心线为基准,向所述第一粗线的中心线两侧分别外扩n/2对差分线对,且所述第一粗线的中心线到两侧差分线对边缘的距离均为m/2。
3.根据权利要求1所述的一种pcb设计中差分布线的方法,其特征在于,利用n对所述待处理差分线对生成第二粗线的方法,包括:
选中待移动的n对差分线对;
抓取当前bus中所有待移动的差分线对的中心线到边缘的距离;
根据所述距离生成第二粗线,所述第二粗线为当前bus中所有待移动差分线对构成的符合逻辑关系的属性线。
4.根据权利要求1所述的一种pcb设计中差分布线的方法,其特征在于,在所述目标位置处,以所述第二粗线的中心线为基准,再次生成n对差分线对的方法,具体为:
在所述目标位置处,以所述第二粗线的中心线为基准,向所述第二粗线的中心线两侧分别外扩n/2对差分线对,且所述第二粗线的中心线到两侧差分线对边缘的距离均为m/2。
5.一种pcb设计中差分布线的系统,其特征在于,所述系统包括:
第一布线模块,用于在当前pcb板内,利用一对差分信号线生成n对待处理差分线对;
粗线生成模块,用于利用n对所述待处理差分线对生成第二粗线;
移动模块,用于将所述第二粗线移动至目标位置;
第二布线模块,用于在所述目标位置处,以所述第二粗线的中心线为基准,再次生成n对差分线对。
6.根据权利要求5所述的一种pcb设计中差分布线的系统,其特征在于,所述第一布线模块包括:
差分值获取单元,用于获取当前pcb板内待处理差分线对的一对差分值;
差分信号线生成单元,用于根据所述差分值,生成一对差分信号线;
参数获取单元,用于根据所述差分信号线的net名称,获取所述差分信号线的dp线宽、dn线宽以及dp/dn间距;
空间值计算单元,用于根据所述dp线宽、dn线宽以及dp/dn间距,利用公式a=(2w d)计算得出所述差分信号线的空间值,其中,a为所述差分信号线的空间值,w为dp和dn的线宽,d为dp/dn间距;
待处理差分线对总宽度计算单元,用于根据差分线对数量、差分线间距以及空间值,利用公式m=n*s*a计算得出待处理差分线对的总宽度,其中,m为待处理差分线对的总宽度,n为一个bus内包含的待处理差分线对的数量,s为差分线间距,a为一对所述差分信号线的空间值;
第一粗线确定单元,用于根据n、s和a确定第一粗线及其中心线坐标,所述第一粗线为根据n、s和a之间的逻辑关系建立的属性线;
扩展单元,用于以所述第一粗线的中心线为基准,向所述第一粗线的中心线两侧分别外扩n/2对差分线对,且所述第一粗线的中心线到两侧差分线对边缘的距离均为m/2。
7.根据权利要求5所述的一种pcb设计中差分布线的系统,其特征在于,粗线生成模块包括:
选择单元,用于选中待移动的n对差分线对;
抓取单元,用于抓取当前bus中所有待移动的差分线对的中心线到边缘的距离;
第二粗线生成单元,用于根据所述距离生成第二粗线,所述第二粗线为当前bus中所有待移动的差分线对构成的符合逻辑关系的属性线。
技术总结