一种检测信号线长度的方法及装置与流程

文档序号:11864928阅读:478来源:国知局
一种检测信号线长度的方法及装置与流程

本发明涉及计算机技术领域,特别涉及一种检测信号线长度的方法及装置。



背景技术:

PCB(Printed Circuit Board,印制电路板)是重要的电子部件,是电子元器件的支撑体,是电子元器件电气连接的载体。PCB的设计是以电路原理图为根据,实现电路设计者所需要的功能。PCB的设计主要指版图设计,需要考虑外部连接的布局、内部电子元件的优化布局、金属连线和通孔的优化布局、电磁保护、热耗散等各种因素。根据设计完成的PCB版图生成PCB。PCB版图的设计过程中,为了减少信号相对延时,尽量保持在信号线上传输的信号的传输速度一直,需要对信号线的长度进行严格控制,需要保持信号线的长度的差值在允许的范围内。

现有技术中,为了保持信号线的长度的差值在允许的范围内,在进行PCB版图设计过程中,一般通过人工对PCB版图上的信号线进行测量。

通过上述描述可见,现有技术中对信号线长度的检测主要是通过人工来完成,检测过程速度较慢。



技术实现要素:

本发明实施例提供了一种检测信号线长度的方法及装置,能够提高检测信号线长度的速度。

一方面,本发明实施例提供了一种检测信号线长度的方法,包括:

S0:预先建立坐标系;

S1:将PCB版图加载到所述坐标系中;

S2:确定所述PCB版图上的至少一条信号线;

S3:确定每条所述信号线上的点在所述坐标系中的坐标;

S4:根据每条所述信号线上的点在所述坐标系中的坐标,确定每条所述信号线的长度。

进一步地,还包括:预先设置允许范围;

所述S2,包括:

确定所述PCB版图上的两条待比较的信号线;

在所述S4之后,还包括:

根据每条所述待比较的信号线的长度,判断所述两条待比较的信号线的长度之差是否在所述允许范围之内,如果不是,则将所述两条待比较的信号线的长度之差调整到所述允许范围之内。

进一步地,还包括:

在判断出所述两条待比较的信号线的长度之差在所述允许范围之内后,锁定所述两条待比较的信号线。

进一步地,在将所述两条待比较的信号线的长度之差调整到所述允许范围之内后,还包括:锁定所述两条待比较的信号线。

进一步地,当所述信号线在所述PCB版图的不同层中时,

所述S3,包括:

确定所述信号线在每层中的片段信号线上的点在所述坐标系中的坐标;

所述S4,包括:

根据所述信号线在每层中的片段信号线上的点在所述坐标系中的坐标,确定出所述信号线在每层中的片段信号线的长度,根据所述信号线在每层中的片段信号线的长度,确定出所述信号线的长度。

进一步地,所述允许范围,包括:大于等于1mil,小于等于5mil。

另一方面,本发明实施例提供了一种检测信号线长度的装置,包括:

建立单元,用于建立坐标系;

加载单元,用于将PCB版图加载到所述坐标系中;

第一确定单元,用于确定所述PCB版图上的至少一条信号线;

第二确定单元,用于确定每条所述信号线上的点在所述坐标系中的坐标;

第三确定单元,用于根据每条所述信号线上的点在所述坐标系中的坐标,确定每条所述信号线的长度。

进一步地,还包括:设置单元,用于设置允许范围;

所述第一确定单元,用于确定所述PCB版图上的两条待比较的信号线;

还包括:

判断单元,用于根据每条所述待比较的信号线的长度,判断所述两条待比较的信号线的长度之差是否在所述允许范围之内,如果不是,则将所述两条待比较的信号线的长度之差调整到所述允许范围之内。

进一步地,所述判断单元,还用于在判断出所述两条待比较的信号线的长度之差在所述允许范围之内后,锁定所述两条待比较的信号线。

进一步地,所述判断单元,还用于在将所述两条待比较的信号线的长度之差调整到所述允许范围之内后,锁定所述两条待比较的信号线。

进一步地,所述第二确定单元,用于当所述信号线在所述PCB版图的不同层中时,确定所述信号线在每层中的片段信号线上的点在所述坐标系中的坐标;

所述第三确定单元,用于当所述信号线在所述PCB版图的不同层中时,根据所述信号线在每层中的片段信号线上的点在所述坐标系中的坐标,确定出所述信号线在每层中的片段信号线的长度,根据所述信号线在每层中的片段信号线的长度,确定出所述信号线的长度。

进一步地,所述允许范围,包括:大于等于1mil,小于等于5mil。

在本发明实施例中,将PCB版图加载到预先建立的坐标系中,根据信号线上的点在坐标系中的坐标,确定出信号线的长度,信号线的长度无需人工计算,提高了检测信号线长度的速度。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一实施例提供的一种检测信号线长度的方法的流程图;

图2是本发明一实施例提供的另一种检测信号线长度的方法的流程图;

图3是本发明一实施例提供的一种检测信号线长度的装置的示意图;

图4是本发明一实施例提供的另一种检测信号线长度的装置的示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

如图1所示,本发明实施例提供了一种检测信号线长度的方法,该方法可以包括以下步骤:

S0:预先建立坐标系;

S1:将PCB版图加载到所述坐标系中;

S2:确定所述PCB版图上的至少一条信号线;

S3:确定每条所述信号线上的点在所述坐标系中的坐标;

S4:根据每条所述信号线上的点在所述坐标系中的坐标,确定每条所述信号线的长度。

在本发明实施例中,将PCB版图加载到预先建立的坐标系中,根据信号线上的点在坐标系中的坐标,确定出信号线的长度,信号线的长度无需人工计算,提高了检测信号线长度的速度。

为了减少信号线上的信号的相对延迟,在本发明一实施例中,还包括:预先设置允许范围;

所述S2,包括:确定所述PCB版图上的两条待比较的信号线;

在所述S4之后,还包括:根据每条所述待比较的信号线的长度,判断所述两条待比较的信号线的长度之差是否在所述允许范围之内,如果不是,则将所述两条待比较的信号线的长度之差调整到所述允许范围之内。

在本发明实施例中,这里的两条待比较的信号线可以是传输相同信号的信号线。为了避免信号线上的信号在传输过程中延迟过大,通过该实施例将两条待比较的信号线的长度之差调整到允许范围之内。在进行调整是,调整PCB版图上两条待比较的信号线的长度,例如:增加较短的信号线的长度,或者减少较长的信号线的长度。其中,所述允许范围,包括:大于等于1mil,小于等于5mil。

举例来说,允许范围为[1,5],PCB版图上的信号线A和信号线B都是高速信号线,为了避免从信号源发出的信号这两条信号线上传输时,达到目标器件的时间相差太大,通过本发明实施例提供的方法,计算出信号线A的长度为10mil,信号线B的长度为3mil,信号线A和信号线B的长度之差为7mil,不在[1,5]之内,将信号线B调整到6mil,使得二者的长度之差为4,在[1,5]之内。

为了避免符合要求的信号线被错误修改,在本发明一实施例中,还包括:在判断出所述两条待比较的信号线的长度之差在所述允许范围之内后,锁定所述两条待比较的信号线。

在该实施例中,锁定该两条待比较的信号线后,不能对这两条信号线进行修改。举例来说,计算出信号线A的长度为10mil,信号线B的长度为8mil,允许范围为[1,5],信号线A和信号线B的长度之差为2mil,在[1,5]之内,则锁定信号线A和信号线B,使得这对信号线不被修改,避免在后续的调整中对这对信号线误操作。

为了避免符合要求的信号线被错误修改,在本发明一实施例中,在将所述两条待比较的信号线的长度之差调整到所述允许范围之内后,还包括:锁定所述两条待比较的信号线。

在本发明实施例中,在信号线被调整到符合允许范围之后,将这对信号线锁定,避免后续被误操作。举例来说,允许范围为[1,5],计算出信号线A的长度为10mil,信号线B的长度为3mil,信号线A和信号线B的长度之差为7mil,不在[1,5]之内,将信号线B调整到6mil,使得二者的长度之差为4,在[1,5]之内,信号线A和信号线B满足允许范围之后,锁定信号线A和信号线B。

PCB可以是多层的,而一根信号线可能同时在不同层中,为了计算出在不同层中的信号线的长度时,在本发明一实施例中,当所述信号线在所述PCB版图的不同层中时,所述S3,包括:确定所述信号线在每层中的片段信号线上的点在所述坐标系中的坐标;

所述S4,包括:根据所述信号线在每层中的片段信号线上的点在所述坐标系中的坐标,确定出所述信号线在每层中的片段信号线的长度,根据所述信号线在每层中的片段信号线的长度,确定出所述信号线的长度。

在本实施例中,将信号线按照所在的层分割成片段信号线,通过每个片段信号线的长度确定出该信号线的长度。举例来说,对应信号线C来说,信号线分别在PCB版图的第一层和第二层中,在第一层中的是片段信号线A,长度为5mil,在第二层中的是片段信号线B,长度为6mil,则信号线C的长度为片段信号线A与片段信号线B的长度之和,为11mil。

如图2所示,本发明实施例提供了一种检测信号线长度的方法,在该实施例中,信号线A和信号线B均为高速信号线,需要确保信号线A和信号线B的长度之差在允许范围内,该方法可以包括以下步骤:

步骤201:预先建立坐标系。

该坐标系可以是二维直角坐标系,也可以是三维直角坐标系。当PCB版图多于一层时,可以建立三维直角坐标系。不同的层在竖直方向上的坐标不同。

步骤202:预先设置允许范围。

具体地,该允许范围可以是[1mil,5mil]。当两个信号线的长度之差在该允许范围之内时,这两个信号线上传输的信号之间的相对延时是可以接受的。

步骤203:将PCB版图加载到所述坐标系中。

具体地,当坐标系为二维直角坐标系时,可以将PCB版图的左下角的顶点作为原点,PCB版图上的其他部分自动与相应的坐标对应。当坐标系为三维直角坐标系时,可以将PCB版图的最底层的左下角的顶点作为原点,PCB版图上的其他部分自动与相应的坐标对应。

步骤204:确定PCB版图上的信号线A和信号线B。

具体地,信号线A和信号线B可以根据外部的选择来确定,例如:用户通过选择界面选中信号线A。也可以自动选择,例如:在PCB版图上设置有信号线A和信号线B的标记,根据标记找到信号线A和信号线B。

步骤205:确定信号线A和信号线B上的点在坐标系中的坐标。

具体地,对于二维直角坐标系XOY来说,在确定出坐标系的原点对应的PCB版图上的标准点后,PCB版图上的其他点的坐标可以根据在X方向和Y方向上到标准点的距离来确定其坐标。对于三维直角坐标系OXYZ来说,在确定出坐标系的原点对应的PCB版图上的标准点后,PCB版图上的其他点的坐标可以根据在X方向、Y方向和Z方向上到标准点的距离来确定其坐标。

步骤206:分别根据信号线A和信号线B上的点在坐标系中的坐标,确定信号线A的长度和信号线B的长度。

具体地,以信号线A为例,当信号线A为直线时,只需确定出信号线A的两个端点的坐标即可确定出信号线A的长度。当信号线A为折线是,可以确定出信号线A的每段折线的端点来确定出信号线A的长度。当信号线A为曲线时,可以将信号线A分割成多个分段,分别计算出每个分段的长度,进而确定出信号线A的长度,也可以,对信号线A的曲线部分进行采样,确定出多个采样点,根据采样点确定出曲线部分的弧度,根据曲线部分的弧度以及采样点的坐标,计算出曲线部分的长度。

另外,当信号线在PCB版图的不同层中时,以信号线A为例,确定信号线A在每层中的片段信号线上的点在坐标系中的坐标,根据信号线A在每层中的片段信号线上的点在坐标系中的坐标,确定出信号线A在每层中的片段信号线的长度,根据信号线A在每层中的片段信号线的长度,确定出信号线A的长度。

步骤207:根据信号线A的长度和信号线B的长度,判断信号线A的长度和信号线B的长度之差是否在允许范围之内,如果是,则执行步骤209,否则,执行步骤208。

另外,在确定出信号线A的长度和信号线B的长度后,当二者长度之差不在允许范围之内时,可以分别用鲜艳的颜色将二者分别标记,以区分二者。当二者长度之差在允许范围之内时,可以将二者统一标记。

步骤208:将信号线A的长度和信号线B的长度之差调整到允许范围之内,执行步骤209。

具体地,可以根据PCB版图的布局情况来进行调节,可以缩短较长的信号线,也可以增长较长的信号线,或者对两个信号线都进行调整,以满足允许范围。

步骤209:锁定信号线A和信号线B。

本发明实施例提供的方案可以在cadence软件来实现,在cadence软件的菜单中添加实现本方案的选项,用户可以利用该选项实现对信号线长度的检测。

在设计PCB走线时,常常因为检测高速信号线是否等长而耽误时间,采用本发明实施例提供的方案,可以在修改布线时候大大提高速度,为后期的设计提高效率。

本发明实施例提供的方案可以通过Skill语言来实现。

本发明实施例提供的方案可以通过以下代码来实现:

如图3、图4所示,本发明实施例提供了一种检测信号线长度的装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图3所示,为本发明实施例提供的一种检测信号线长度的装置所在设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图4所示,作为一个逻辑意义上的装置,是通过其所在设备的CPU将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。本实施例提供的一种检测信号线长度的装置,包括:

建立单元401,用于建立坐标系;

加载单元402,用于将PCB版图加载到所述坐标系中;

第一确定单元403,用于确定所述PCB版图上的至少一条信号线;

第二确定单元404,用于确定每条所述信号线上的点在所述坐标系中的坐标;

第三确定单元405,用于根据每条所述信号线上的点在所述坐标系中的坐标,确定每条所述信号线的长度。

在本发明一实施例中,还包括:设置单元,用于设置允许范围;

所述第一确定单元,用于确定所述PCB版图上的两条待比较的信号线;

还包括:判断单元,用于根据每条所述待比较的信号线的长度,判断所述两条待比较的信号线的长度之差是否在所述允许范围之内,如果不是,则将所述两条待比较的信号线的长度之差调整到所述允许范围之内。

在本发明一实施例中,还包括:所述判断单元,还用于在判断出所述两条待比较的信号线的长度之差在所述允许范围之内后,锁定所述两条待比较的信号线。

在本发明一实施例中,所述判断单元,还用于在将所述两条待比较的信号线的长度之差调整到所述允许范围之内后,锁定所述两条待比较的信号线。

在本发明一实施例中,所述第二确定单元,用于当所述信号线在所述PCB版图的不同层中时,确定所述信号线在每层中的片段信号线上的点在所述坐标系中的坐标;

所述第三确定单元,用于当所述信号线在所述PCB版图的不同层中时,根据所述信号线在每层中的片段信号线上的点在所述坐标系中的坐标,确定出所述信号线在每层中的片段信号线的长度,根据所述信号线在每层中的片段信号线的长度,确定出所述信号线的长度。

在本发明一实施例中,所述允许范围,包括:大于等于1mil,小于等于5mil。

本发明实施例提供的一种检测信号线长度的装置可以通过SKILL语言实现。

本发明实施例提供的一种检测信号线长度的装置可以添加到cadence软件中,作为cadence软件的一个模块,方便用户使用。具体地,在cadence软件的菜单中添加该装置,将该装置作为一个选项,实现对信号线长度的检测。

上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。

本发明各个实施例至少具有如下有益效果:

1、在本发明实施例中,将PCB版图加载到预先建立的坐标系中,根据信号线上的点在坐标系中的坐标,确定出信号线的长度,信号线的长度无需人工计算,提高了检测信号线长度的速度。

2、在本发明实施例中,通过每条信号线上的点在坐标系中的坐标,能够快速确定出每条信号线的长度,能够提高对PCB版图的设计效率。本发明实施例能够锁定长度之差在允许范围之内的信号线,可以更加方便用户对PCB版图的设计。

需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个〃·····”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。

最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1