一种差分信号极性连接的自动检测方法及系统与流程

文档序号:26753473发布日期:2021-09-25 03:13阅读:49来源:国知局
一种差分信号极性连接的自动检测方法及系统与流程

1.本发明涉及集成芯片领域,尤其涉及一种差分信号极性连接的自动检测方法及系统。


背景技术:

2.随着电子系统及集成芯片向高速度和高密度的趋势发展,大部分芯片内部、芯片与芯片之间、设备与设备之间的通信方式已经由传统并行总线转变为串行总线。当前,除了高速串行总线(如sgmii、qsgmii、xaui、srio、pcie、sata等)以外,一些低速的串行信号(如rs422、rs485、can)为了提高数据传输的可靠性以及传输距离,都采用差分信号的形式进行数据传输。
3.在高速、高密度的数字化产品(如交换机、路由器以及一些嵌入式数据处理设备)中,由于存在大量的高速数据交互,因此原理中可能具有数百及上千对差分信号,一旦原理图设计中出现差分信号极性连接错误的情况,则可能导致改板,不但使得研发成本增加、产品研发周期增长,甚至有可能错过产品市场窗口期。因此,如何保证芯片与芯片之间、设备与设备之间串行总线差分信号的连接正确性至关重要。由于现有主流原理图设计软件(如altium designer、cadence、pads等)均不能直接检测差分信号的极性连接关系,因此硬件工程师为了保证差分信号连接正确性,在原理图设计完成后必须手动对每一组差分信号进行极性检查,然后再由同组内其他项目成员也按手动检查的方式进行确认。
4.随着数据交换容量不断增大,各个产品原理图中差分信号也越来越多,如果仍然采用现有手动检查的方法,不但需要更大的工作量及更多的人力资源,且存在效率低、人工漏检或检错等缺点。


技术实现要素:

5.本发明的目的在于克服现有技术的不足,解决在高速、高密度的涉及到芯片与芯片之间、设备与设备之间大量使用差分信号进行数据传输的数字化产品中,采用原理图脚本的方式自动实现差分信号极性连接正确性的检查,提供一种差分信号极性连接的自动检测方法及系统。
6.本发明的目的是通过以下技术方案来实现的:一种差分信号极性连接的自动检测方法,包括以下步骤:步骤1:通过脚本程序自动编译整个原理图工程设计文件;步骤2:获取原理图工程基础数据,并采用链表存储结构缓存各数据;步骤3:采用集合求余集的方法计算出待检测原理图纸名称集合s和待检测器件位号集合z;步骤4:开始遍历集合s中的原理图图纸;步骤5:遍历当前原理图纸中的器件位号;步骤6:获取与当前器件每个管脚相连接的网络名;
步骤7:根据原理图网络标号命名规范要求,判断获取的网络名是否为差分信号,若是,则进入步骤8,若不是,则进入步骤1;步骤8:根据原理图器件位号命名规则,判断当前器件是否为电阻、电容或电感,若不是,则获取当前器件管脚的名称,然后进入步骤9;若是,则获取与电阻或电容另外一端管脚相连接的网络名;步骤9:按照原理图集成电路器件管脚命名规范要求,将器件管脚名称与获取的网络名进行对比,判断管脚名称的差分极性与网络名的差分极性是否一致,若不一致,则采用链表存储结构,将当前器件位号以及与管脚连接的网络名加入到告警链表结构中,若一致,则进入步骤l0;步骤10:判断当前器件的管脚是否已经全部遍历,若是,则进入步骤11,若还没有遍历完成,则进入步骤6;步骤11:判断当前原理图纸中是否已经遍历完所有器件,若是,则进入步骤12,若还没有遍历完成,则进入步骤5;步骤12:判断原理图工程中是否已经遍历完所有原理图纸,若是,则生成整个原理图工程关于差分网络极性连接正确性的告警报告,若还没有遍历完成,则进入步骤4。
7.进一步的,所述步骤2中的原理图工程基础数据包括原理图工程名称、原理图工程路径、原理图纸名称、器件位号、原理图中网络名以及器件管脚名称。
8.进一步的,所述步骤8还包括将步骤8和步骤6获取的两个网络名进行对比,判断电阻或电容两端的差分极性是否一致,若不一致,则将当前器件位号以及与管脚连接的网络名加入到告警链表结构中,然后进入步骤11;否则直接进入步骤11。
9.进一步的,所述步骤3包括以下子步骤:步骤301:假设原理图参数已提取部分的所有原理图纸名称和器件位号分别为集合a和集合x;步骤302:选择不需要检测的原理图纸名称集合b和不需要检测的器件位号集合y;步骤303:通过集合求余集的方法进行计算,公式如下:s=c
a
b,b可以为
ø
z=c
x
y,y可以为
ø
其中,
ø
表示空集,s表示待检测原理图纸名称集合,z表示待检测器件位号集合。
10.一种差分信号极性连接的自动检测系统,包括原理图参数提取模块、可视化窗口数据选择模块、数据集合运算与信号对比模块、告警报告生成模块,所述数据集合运算与信号对比模块分别连接原理图参数提取模块、可视化窗口数据选择模块和告警报告生成模块;原理图参数提取模块自动编译原理图工程文件设计,数据集合运算与信号对比模块根据原理图工程文件数据以及可视化窗口数据选择模块配置数据,解析并判断器件差分管脚与所连接的网络名的差分极性,从而判断原理图差分信号连接是否有误,最后在告警报告生成模块生成告警报告。
11.进一步的,所述原理图参数提取模块用于获取原理图工程名称、原理图工程路径、原理图纸名称、器件位号、原理图中网络名以及器件管脚名称。
12.进一步的,所述可视化窗口数据选择模块用于选择不需要加入到检测范围内的器件以及原理图纸。
13.进一步的,所述数据集合运算与信号对比模块采用集合求余集的技术实现对需要检测的原理图纸和器件位号进行筛选,解析并判断器件差分管脚与所连接的网络名的差分极性,从而判断原理图差分信号连接是否有误。
14.进一步的,所述告警报告生成模块用于生成整个原理图工程中所有原理图纸差分信号极性连接错误的文档。
15.本发明的有益效果:本发明主要是解决在高速、高密度的涉及到芯片与芯片之间、设备与设备之间大量使用差分信号进行数据传输的数字化产品中,采用原理图脚本的方式自动实现差分信号极性连接正确性的检查,以避免现有手动检测方法工作量巨大、人力资源浪费、效率低、人工漏检或检错等缺点。
附图说明
16.图1是本发明的方法流程图。
17.图2是本发明的系统架构图。
具体实施方式
18.为了对本发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式。
19.本实施例中,如图1所示,一种差分信号极性连接的自动检测方法,包括以下步骤:步骤1:通过脚本程序自动编译整个原理图工程设计文件;步骤2:获取原理图工程基础数据,并采用链表存储结构缓存各数据;步骤3:采用集合求余集的方法计算出待检测原理图纸名称集合s和待检测器件位号集合z;步骤4:开始遍历集合s中的原理图图纸;步骤5:遍历当前原理图纸中的器件位号;步骤6:获取与当前器件每个管脚相连接的网络名;步骤7:根据原理图网络标号命名规范要求,判断获取的网络名是否为差分信号,若是,则进入步骤8,若不是,则进入步骤1;步骤8:根据原理图器件位号命名规则,判断当前器件是否为电阻、电容或电感,若不是,则获取当前器件管脚的名称,然后进入步骤9;若是,则获取与电阻或电容另外一端管脚相连接的网络名;步骤9:按照原理图集成电路器件管脚命名规范要求,将器件管脚名称与获取的网络名进行对比,判断管脚名称的差分极性与网络名的差分极性是否一致,若不一致,则采用链表存储结构,将当前器件位号以及与管脚连接的网络名加入到告警链表结构中,若一致,则进入步骤l0;步骤10:判断当前器件的管脚是否已经全部遍历,若是,则进入步骤11,若还没有遍历完成,则进入步骤6;步骤11:判断当前原理图纸中是否已经遍历完所有器件,若是,则进入步骤12,若还没有遍历完成,则进入步骤5;步骤12:判断原理图工程中是否已经遍历完所有原理图纸,若是,则生成整个原理
图工程关于差分网络极性连接正确性的告警报告,若还没有遍历完成,则进入步骤4。
20.进一步的,所述步骤2中的原理图工程基础数据包括原理图工程名称、原理图工程路径、原理图纸名称、器件位号、原理图中网络名以及器件管脚名称。
21.进一步的,所述步骤8还包括将步骤8和步骤6获取的两个网络名进行对比,判断电阻或电容两端的差分极性是否一致,若不一致,则将当前器件位号以及与管脚连接的网络名加入到告警链表结构中,然后进入步骤11;否则直接进入步骤11。
22.进一步的,所述步骤3包括以下子步骤:步骤301:假设原理图参数已提取部分的所有原理图纸名称和器件位号分别为集合a和集合x;步骤302:选择不需要检测的原理图纸名称集合b和不需要检测的器件位号集合y;步骤303:通过集合求余集的方法进行计算,公式如下:s=c
a
b,b可以为
ø
z=c
x
y,y可以为
ø
其中,
ø
表示空集,s表示待检测原理图纸名称集合,z表示待检测器件位号集合。
23.如图2所示,一种差分信号极性连接的自动检测系统,包括原理图参数提取模块、可视化窗口数据选择模块、数据集合运算与信号对比模块、告警报告生成模块,所述数据集合运算与信号对比模块分别连接原理图参数提取模块、可视化窗口数据选择模块和告警报告生成模块;原理图参数提取模块自动编译原理图工程文件设计,数据集合运算与信号对比模块根据原理图工程文件数据以及可视化窗口数据选择模块配置数据,解析并判断器件差分管脚与所连接的网络名的差分极性,从而判断原理图差分信号连接是否有误,最后在告警报告生成模块生成告警报告。
24.进一步的,所述原理图参数提取模块用于获取原理图工程名称、原理图工程路径、原理图纸名称、器件位号、原理图中网络名以及器件管脚名称。
25.进一步的,所述可视化窗口数据选择模块用于选择不需要加入到检测范围内的器件以及原理图纸。
26.进一步的,所述数据集合运算与信号对比模块采用集合求余集的技术实现对需要检测的原理图纸和器件位号进行筛选。
27.进一步的,所述告警报告生成模块用于生成整个原理图工程中所有原理图纸差分信号极性连接错误的文档。
28.实施例1:差分信号极性连接正确性的自动检测方法实施案例如下:以altiumdesigner原理图设计平台为例,基于delphiscript脚本语言检查某交换设备中业务数据交换卡的差分信号极性连接正确性的过程如下:1.调用getworkspace.dm_focusedproject定位到当前原理图工程工作空间,并调用project.dm_compile函数自动编译原理图工程;2.在可视化窗口中,填入无需检查的器件位号:xs1(若有多个位号,则各位号之间用逗号隔开,此处xs1为板卡与背板相连的连接器,由于该连接器的管脚名称未按差分信号命名,因此无需检测,否则会有大量告警信息),填入无需检查的原理图纸:(若有多个原理图纸,各图纸间用逗号隔开,此处06_misc图纸内部无任何差分信号,因此无需检测,以提高检测方法的运行效率);
3.获取到整个原理图信息,包括:原理图工程名称:lpu_switch.prjpcb原理图工程路径:f:\tb2005\altiumdesigner_prj\00_lpu_switch所有原理图纸名称集合:a所有器件位号集合:x4.获取待检测原理图纸名称集合s,即集合b(元素:06_misc)在集合a中的余集;5.获取待检测器件位号集合z,即集合y(元素:xs1)在集合x中的余集;6.遍历到集合s中的原理图纸01_switch;7.获取到01_switch原理图纸中的第一个器件位号:d1;8.判断d1是集合z的一个元素,因此该器件需要进行检查;9.获取到d1的第一个管脚:d1.a1;10.获取到与d1.a1连接的网络名为:sgmii_tx_p0,根据原理图网络标号命名规则(网络名最后为“_p”或“_p+数字”,则为差分信号的正极,网络名最后为“_n”或“_n+数字”,则为差分信号的负极),判断该网络名为差分信号,且极性为正;11.根据器件位号命名规则,判断当前器件“d1”为集成电路元器件,不是电阻、电容或电感;12.获取到d1.a1管脚名称:sgmii_tx_n0,根据原理图器件管脚命名规范(管脚名最后为“_p”或“_p+数字”,则为差分信号的正极,管脚名最后为“_n”或“_n+数字”,则为差分信号的负极),判断该管脚差分极性为负,与步骤10中获取的差分信号极性为“正”矛盾,因此,将器件位号d1以及网络名sgmii_tx_p0加入到告警链表结构warning.list中;13.重复步骤9~12,遍历完d1剩余的所有管脚;14.重复步骤7~13,遍历完01_switch原理图纸下剩余的所有器件位号;15.重复步骤6~14,遍历完集合s中所有原理图纸;在f:\tb2005\altiumdesigner_prj\00_lpu_switch路径下,根据选择的文件类型创建警报告lpu_switch.schpck,并将告警链表结构warning.list中的数据写入报告中,待数据写入完成后,在altiumdesigner软件中自动打开该报告。
29.本发明通过生成原理图工程的方式,对原理图工程数据自动进行差分信号极性连接正确性的检查,并生成报告以便硬件工程师确认,从而大大降低了检查工作量,不但规避了人工漏检或检错的缺陷,还可缩短产品研发时间,提高研发效率。
30.以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护的范围由所附的权利要求书及其等效物界定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1