CN112100974A - 一种基于allegro软件的测试点检查方法 - Google Patents

一种基于allegro软件的测试点检查方法 Download PDF

Info

Publication number
CN112100974A
CN112100974A CN202010979000.6A CN202010979000A CN112100974A CN 112100974 A CN112100974 A CN 112100974A CN 202010979000 A CN202010979000 A CN 202010979000A CN 112100974 A CN112100974 A CN 112100974A
Authority
CN
China
Prior art keywords
test point
list
test
inspection
checking
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010979000.6A
Other languages
English (en)
Inventor
朱忠刚
李庆海
吴均
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Edadoc Co ltd
Original Assignee
Edadoc Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Edadoc Co ltd filed Critical Edadoc Co ltd
Priority to CN202010979000.6A priority Critical patent/CN112100974A/zh
Publication of CN112100974A publication Critical patent/CN112100974A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/12Printed circuit boards [PCB] or multi-chip modules [MCM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种基于ALLEGRO软件的测试点检查方法,在ALLEGRO软件中创建辅助检查工具,辅助检查工具根据测试点种类选项卡反馈的需求获取选定测试点封装类型,并根据选定测试点封装类型自PCB文件中获取对应的选定测试点信息,接受功能选项卡的动作命令并对选定测试点执行对应的检查操作。本发明通过在ALLEGRO软件创建辅助检查工具协助设计人员对测试点进行检查,有利于矫正设计文件中测试点的设计错误,避免发生关于测试点的质量事故,保证PCB板的设计与研发工作的正常进行,并减少人工检查工作量,减轻设计人员的工作负担,提高设计文件的正确率。

Description

一种基于ALLEGRO软件的测试点检查方法
技术领域
本发明涉及PCB设计技术领域,更具体地说,是涉及一种基于ALLEGRO软件的测试点检查方法。
背景技术
一般情况下,通讯高速板或服务器板会制造样品并对其功能进行测试,需要通过测试点检查确定信号状态,如信号是否有衰减,或信号眼图是否合格,电源噪声是否过大等,测试点检查需要使用专用仪器测具,该测具使用要求测试点属性满足测试条件,如测试点属性、测试点的封装类型、测试点之间的距离等,若测试点不符合测具要求,会导致测具不能检测或检测失败的情况。
随着第五代移动通讯技术的发展,所有运营商都在对通讯设备与服务器进行更新换代,因此需要大量的通讯板卡与服务器板卡的研发与生产,在研发过程中,绝大多数PCB设计的研发单位都会添加ICT测试点,以方便后期调试,进而缩短研发周期。这类测试点的数量庞大,而PCB设计软件ALLEGRO软件并没有相关于测试点的检查工具,需要人工检查,工作量繁重,因此,在使用ALLEGRO软件进行PCB板设计过程中,极易发生关于测试点的质量事故,影响PCB板的设计与研发工作的正常进行。
以上不足,有待改进。
发明内容
为了克服现有的技术的不足,本发明提供一种基于ALLEGRO软件的测试点检查方法。
本发明技术方案如下所述:
一种基于ALLEGRO软件的测试点检查方法,在ALLEGRO软件中创建辅助检查工具,辅助检查工具根据测试点种类选项卡反馈的需求获取选定测试点封装类型,并根据选定测试点封装类型自PCB文件中获取对应的选定测试点信息,接受功能选项卡的动作命令并对选定测试点执行对应的检查操作。
上述的一种基于ALLEGRO软件的测试点检查方法,选项卡包括测试点种类选项卡,测试点种类选项卡设置焊盘封装种类列表与测试点封装种类列表,辅助检查工具获取PCB文件所有焊盘的封装种类并记录在焊盘封装种类列表中,焊盘封装种类列表中的封装种类经添加按钮与删除按钮记录至测试点封装种类列表中,辅助检查工具根据测试点封装种类列表检查对应的测试点信息。
进一步的,辅助检查工具循环读取PCB文件中所有过孔,并将所有过孔名称复制到焊盘封装种类列表中。
进一步的,辅助检查工具获取PCB文件中DESIGN父辈下单板所有焊盘的封装种类,并将其映射到焊盘封装种类列表中。
上述的一种基于ALLEGRO软件的测试点检查方法,检查操作包括高亮显示选定测试点封装类型的过孔与引脚,辅助检查工具获取PCB文件中所有的过孔与引脚信息,循环匹配后筛选出封装类型与选定测试点封装类型相同的过孔与引脚,记录并高亮显示筛选结果对应的过孔与引脚。
进一步的,高亮显示选定测试点封装类型的过孔与引脚的具体步骤为:
步骤A1.接收高亮命令;
步骤A2.辅助检查工具获取并记录PCB文件中所有的过孔与引脚的数据;
步骤A3.辅助检查工具根据测试点种类选项卡获取选定测试点封装类型;
步骤A4.循环匹配获取的过孔与引脚的封装类型是否为选定测试点封装类型,若是,记录对应的过孔与引脚信息;
步骤A5.高亮显示封装类型与选择的测试点封装类型相同的过孔与引脚。
上述的一种基于ALLEGRO软件的测试点检查方法,检查操作包括检查并显示含有多个测试点的网络,检查并显示含有多个测试点的网络的工作步骤包括:
步骤B1.接收检查命令;
步骤B2.辅助检查工具获取PCB文件中所有网络并建立网络清单列表;
步骤B3.辅助检查工具获取所有含测试点属性的测试点并建立测试点清单;
步骤B4.循环读取网络清单,每读取一个网络名称时嵌套一个循环读取测试点清单,循环匹配测试点清单中的测试点对应的网络名称与当前读取的网络名称是否一致,并记录当前读取网络匹配结果相同的次数;
步骤B3.当匹配结果相同的次数大于等于二,记录对应的网络名称并在第一显示列表中显示。
上述的一种基于ALLEGRO软件的测试点检查方法,检查操作包括高亮无测试点的网络,辅助检查工具循环读取所有网络元素库内的元素属性,获取未含有测试点属性元素的网络名称清单,根据功能选项卡中的需求对获取的网络名称清单进行筛选,得出无测试点的网络名称清单并高亮对应的网络。
进一步的,高亮无测试点的网络的工作步骤包括:
步骤C1.接收高亮命令;
步骤C2.循环读取所有网络元素库内的元素属性,获取未含有测试点属性元素网络名称;
步骤C3.判断未含有测试点属性元素的网络是否具有无测试属性;
步骤C4.高亮无测试点属性元素的网络模块并在第一显示列表中显示网络名称。
上述的一种基于ALLEGRO软件的测试点检查方法,检查操作包括检查并显示已丢失测试点属性的测试点,辅助检查工具根据选定测试点封装类型获取对应的选定测试点信息,循环读取其测试点属性值是否为空值,若测试点属性值为空值,该测试点丢失测试点属性。
检查并显示已丢失测试点属性的测试点的工作步骤包括:
步骤D1.接收检查命令;
步骤D2.获取选定的测试点封装类型;
步骤D3.根据选定的测试点封装类型获取对应的测试点;
步骤D4.循环读取测试点的测试点属性,记录测试点属性值为空值的测试点。
上述的一种基于ALLEGRO软件的测试点检查方法,检查操作包括检查并显示不在设计要求里的含测试属性的测试点,分别获取含有测试点属性的测试点清单为第一集合以及与选定测试点封装类型一致的测试点清单为第二集合,记录并显示第一集合中与选定测试点封装类型不同的测试点,且,记录并显示第二集合中丢失测试点属性的测试点。
进一步的,检查并显示不在设计要求里的含测试属性的测试点的工作步骤包括:
步骤E1.接收检查命令并获取选定的测试点封装类型;
步骤E2.获取PCB文件中含有测试点属性的测试点清单形成第一集合;
步骤E3.获取与选定测试点封装类型一致的测试点清单形成第二集合;
步骤E4.循环匹配第一集合中的测试点封装类型与选定的测试点封装类型,若匹配结果不相同,在第一显示列表中记录并显示对应的测试点;
步骤E5.循环检查第二集合的测试点是否包括测试点属性,若是,记录并显示在第一显示列表中。
上述的一种用于ALLEGRO软件的测试点辅助检查工具,检查操作包括筛选并显示不满足设定中心距的测试点,从拓展选项卡中的测试点列表中获取第一检查测试点的坐标信息与第二检查测试点的坐标信息,判断第一检查测试点与第二检查测试点之间的间距是否小于设定测试点间距,若是,记录并在第二显示列表中显示相对应的第一检查测试点与第二检查测试点。
进一步的,检查操作还包括筛选并显示预留层相交的测试点,根据获取的第一检查测试点的坐标信息与第二检查测试点的坐标信息,得出第一测试点预留的圆形与第二测试点预留的圆形的空气间距,当二者预留的圆形的空气间距为零值且第一测试点预留圆与第二测试点预留圆相交时,记录对应的第一检查测试点与第二检查测试点。
再进一步的,筛选并显示不满足设定中心距的测试点与筛选并显示预留层相交的测试点的工作步骤包括:
步骤F1.获取PCB文件中的所有过孔、所有引脚、所有网络的数据列表;
步骤F2.检查并获取没有测试点的网络名称列表;
步骤F3.检查并获取无测试点属性网络的数据,并从获取的所有网络的数据列表中排除;
步骤F4.获取设定测试点间距;
步骤F5.判断选取的测试点位置为顶层还是底层。根据拓展功能选项卡的TOP单选框与BOTTOM单选框进行获取,该位置设置了顶层与底层两个选择按钮;
步骤F6.判断是否需要检查预留层相交问题;
步骤F7.根据第一测试点列表与第二测试点列表中的封装类型,获取符合封装类型的测试点信息,若需要检查预留层相交问题,执行步骤F9,若不需要检查预留层相交问题,执行步骤F8;
辅助检查工具自第一测试点列表中获取第一检查测试点的封装类型,自第二测试点列表中获取第二检查测试点的封装类型;
步骤F8.根据获取的第一检查测试点的坐标信息与第二检查测试点的坐标信息得出二者的中心坐标间距,将二者的中心坐标间距与设定测试点间距对比,记录中心坐标间距小于设定测试点间距对应的第一检查测试点与第二检查测试点;
步骤F9.根据获取的第一检查测试点的坐标信息与第二检查测试点的坐标信息,得出第一测试点预留的圆形与第二测试点预留的圆形的空气间距,当二者预留的圆形的空气间距为零值且第一测试点预留圆与第二测试点预留圆相交时,记录对应的第一检查测试点与第二检查测试点;
步骤F10.在第二显示列表中显示记录步骤F8与步骤F9的检查结果清单。
上述的一种基于ALLEGRO软件的测试点检查方法,检查操作的结果显示在列表窗口中,选中列表窗口内的元素,辅助检查工具提取检查结果中的坐标信息,获得坐标数值,视窗以该坐标数值为中心进行缩放。
上述的一种基于ALLEGRO软件的测试点检查方法,在检查操作的初始,设置计数值,计数值初始为零值,每记录一个检查结果,计数值加一,待检查操作完成后,在第一计数栏显示最终的计数值。
上述的一种基于ALLEGRO软件的测试点检查方法,辅助检查工具设置有输出按钮,通过输出按钮将第一显示列表中的清单信息输出成单独文件。
根据上述方案的本发明,其有益效果在于,本发明通过在ALLEGRO软件创建辅助检查工具协助设计人员对测试点进行检查,有利于矫正设计文件中测试点的设计错误,避免发生关于测试点的质量事故,保证PCB板的设计与研发工作的正常进行,并减少人工检查工作量,减轻设计人员的工作负担,提高设计文件的正确率。
1.本发明通过对PCB设计文件中测试点封装元素库的分析,分类找出丢失测试属性的测试点元素,并生成相对应的测试点坐标,方便设计人员快速准确找到已丢失测试属性的错误的测试点。
2.本发明通过对PCB设计文件中所有过孔含测试点元素库的分析,对含测试属性的元素与设定测试封装库的对比,快速检索出测试点使用的错误封装。
3.本发明通过对PCB设计文件中所有网络元素库的分析,快速生成含多个测试点网络的报表文件。
4.本发明通过对PCB设计文件中所有网络元素库的分析,高亮所有没有测试点的网络,方便设计人员添加测试属性。
5.本发明通过对PCB设计文件中所有网络元素库的分析,针对部分网络添加无需测试点的属性,进行筛选后高亮,方便设计人员快速准确添加测试点到正确的网络上。
6.本发明通过对PCB设计文件中所有测试点的分析,筛选出测试点距离不符合设定间距或者预留层相交的情况。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为测试点辅助检查工具的界面结构示意图。
图2为拓展功能选项卡的界面结构示意图。
具体实施方式
为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
需要说明的是,当部件被称为“设置”另一个部件,它可以直接或者间接位于该另一个部件上。术语“上”、“下”等指示的方位或位置为基于附图所示的方位或位置,仅是为了便于描述,不能理解为对本技术方案的限制。术语“第一”、“第二”等仅用于便于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明技术特征的数量。“多个”的含义是两个或两个以上,除非另有明确具体的限定。
一种基于ALLEGRO软件的测试点检查方法,在ALLEGRO软件中创建辅助检查工具,辅助检查工具根据测试点种类选项卡反馈的需求获取选定测试点封装类型,并根据选定测试点封装类型自PCB文件中获取对应的选定测试点信息,接受功能选项卡的动作命令并对选定测试点执行对应的检查操作。
在ALLEGRO软件使用defun函数定义辅助检查工具的指令信息,以及使用fprintf函数赋予各指令框的执行命令。
辅助检查工具的界面如图1所示,包括多个功能选项,自上而下分别为功能选项卡、测试点种类选项卡、第一计数栏、第一显示列表及功能按钮。
功能选项卡包括Options(选择功能区)与Others(其他功能区)。选择功能区内设置Lost Property单选框(测试点丢失单选框)和Test Via Error单选框(测试点封装错误单选框),前者用于检查缺失测试点属性的测试点,即在设计文件中显示缺失三角符号的测试点,后者用于检查测试点封装是否属于限定的封装。在选择功能区的下方的是其他功能区,其他功能区包括检查多个ICT网络选择框与高亮无ICT网络选择框,前者用于扩展测试点的检查范围,后者用于提示高亮检查结果,其中在选择了这两个选择框的基础上,还设置了一个包含No_Test属性网络选择框(包含无测试点属性网络选择框),进一步细分检查网络属性,是否包括已设置无测试点属性的网络。
如图1所示,功能选项卡下方为测试点种类选项卡,测试点种类选项卡包括PadLib(焊盘封装种类列表)与Test Type(测试点封装种类列表),前者显示自PCB文件中获取的所有焊盘封装种类名称,后者显示设计人员根据需求设定的测试点封装种类名称。设计人员通过两个列表中间的添加按钮与删除按钮,对测试点封装类型进行挑选。
测试点种类选项卡下方为第一计数栏与第一显示列表,前者显示检查结果的数量,后者显示检查结果的清单。在测试点丢失检查功能中,第一显示列表的显示格式为序号-测试点对应的网络名称-测试点中心坐标,在测试点封装错误检查功能中,第一显示列表的显示格式为序号-测试点对应的网络名称-测试点中心坐标。
辅助检查工具的最下方为Check按钮(检查按钮)、Execute按钮(执行按钮)及Hlight按钮(高亮按钮),检查按钮对功能选项卡功能生效,执行按钮对测试点种类选项卡功能生效,高亮按钮用于单独高亮单板中所有符合测试点封装类型的过孔。
在功能选项卡的右侧设置了拓展功能选项卡按钮,该按钮用于弹出拓展功能选项卡界面,该拓展功能选项卡为筛选并显示不满足设定中心距的测试点,或显示预留层相交的测试点功能所用。
拓展功能选项卡如图2所示,根据语句提示在上方Option功能区(选择功能区)中填写设定中心距,设定中心距的右侧设置TOP单选框与BOTTOM单选框,前者用于检查测试点的顶层间距,后者用于检查测试点的底层间距。选择功能区下方为第一测试点列表与第二测试点列表,其内部分别显示测量间距的两个测试点的封装类型。再下方是显示不满足测试点设定中心距或预留层相交的测试点数量的第二计数栏,以及显示检查后的测试点清单的第二显示列表。在第二计数栏的右侧设置Check filmmask(预留层检查选框),以对含有圆形预留层安全间距的测试点进行检查。
选项卡包括测试点种类选项卡,测试点种类选项卡设置焊盘封装种类列表与测试点封装种类列表,辅助检查工具获取PCB文件所有焊盘的封装种类并记录在焊盘封装种类列表中,焊盘封装种类列表中的封装种类经添加按钮与删除按钮记录至测试点封装种类列表中,辅助检查工具根据测试点封装种类列表检查对应的测试点信息。
辅助检查工具共有两种方式获取焊盘封装种类列表中的封装名称清单。一种是循环读取PCB文件中所有过孔并将所有过孔名称复制到焊盘封装种类列表中,该方法提取PCB文件中所有过孔,提取内容仅为过孔,内容精简不冗杂,但由于提取的数据库较大,提取速度较慢,对软件会造成卡顿,影响软件运行速度。另一种是通过获取PCB文件中DESIGN父辈下单板所有PAD(焊盘)的封装种类,并其映射到焊盘封装种类列表对应的集合(Padlib)中,主要工作代码为“l_pad = axlDBGetDesign()->padstacks”,获取的焊盘封装种类会显示在焊盘封装种类列表中。该方法提取PCB文件中焊盘库中的焊盘,其包括焊盘与过孔,提取的数据库范围小,提取速度快,但是其夹带的其他内容也会纳入提取数据库范畴,列出的数据较为冗杂,不够精简。
设计人员根据需求选择对应的封装种类,辅助检查工具经axlFormListGetSelItems函数获取焊盘封装种类列表中处于选中状态的封装种类,点击添加按钮,添加按钮使用append函数将选中状态的封装类型添加至测试点封装种类列表对应的集合末端并显示在测试点封装种类列表中。设计人员选择测试点封装种类列表中的封装类型,点击删除按钮,删除按钮使用remove函数将该测试点封装种类列表中的封装类型自测试点封装种类列表对应的集合中删除,并不在测试点封装种类列表中显示。设计人员通过添加按钮与删除按钮完成对测试点封装类型列表的筛选,其内容为选定的测试点封装类型。
检查操作包括高亮显示选定测试点封装类型的过孔与引脚,辅助检查工具获取PCB文件中所有的过孔与引脚信息,循环匹配后筛选出封装类型与选定测试点封装类型相同的过孔与引脚,记录并高亮显示筛选结果对应的过孔与引脚。
高亮显示选定测试点封装类型的过孔与引脚的具体步骤为:
步骤A1.接收高亮命令。设计人员根据需求确定好测试点封装类型列表的内容后,点击高亮按钮,随即给予辅助检查工具高亮命令,辅助检查工具执行高亮显示选定测试点封装类型的过孔与引脚的命令。
步骤A2.辅助检查工具获取并记录PCB文件中所有的过孔与引脚的数据。辅助检查工具直接读取PCB文件中的Via_Pin内容,获取所有的过孔与引脚数据信息。
步骤A3.辅助检查工具根据测试点种类选项卡获取选定测试点封装类型。
步骤A4.循环匹配获取的过孔与引脚的封装类型是否为选定测试点封装类型,若是,记录对应的过孔与引脚信息。
步骤A5.高亮显示封装类型与选择的测试点封装类型相同的过孔与引脚。经判断后确定与选定测试点封装类型相同的过孔与引脚,将其筛选、记录后,通过axlHighlightObject函数高亮显示。若检查结果不存在与选定测试点封装类型相同的过孔与引脚,辅助检查工具弹出确认对话框提醒使用者。
在检查操作接收后,使用axlFormListDeleteAll函数清除第一列表窗口原有内容,并通过axlFormListAddItem函数更新为所有记录的过孔与引脚对应的网络名称与中心坐标。
检查操作包括检查并显示含有多个测试点的网络,检查并显示含有多个测试点的网络的工作步骤包括:
步骤B1.接收检查命令。设计人员选择功能选项卡中的检查多个ICT网络选择框,点击执行按钮向辅助检查工具发送检查并显示含有多个测试点的网络的操作命令。
步骤B2.辅助检查工具获取PCB文件中所有网络并建立网络清单列表。在本步骤中,辅助检查工具利用自定义函数“_Get_Net_lst()”获取单板所有网络并建立网络清单。
步骤B3.辅助检查工具获取所有含测试点属性的测试点并建立测试点清单。由于网络模块中的元素若含有测试点属性,即testPoint不为空值,故通过 item->testPoint != nil即可获取该元素是否含有测试点属性,循环该函数读取PCB文件中的所有元素,获取含有测试点属性的测试点。
步骤B4.循环读取网络清单,每读取一个网络名称时嵌套一个循环读取测试点清单,循环匹配测试点清单中的测试点对应的网络名称与当前读取的网络名称是否一致,并记录当前读取网络匹配结果相同的次数。
步骤B3.当匹配结果相同的次数大于等于二,记录对应的网络名称并在第一显示列表中显示。当某一元素匹配结果相同的次数大于等于二,意味着该网络名称下含有测试点属性的元素大于两个,根据该判断逻辑,记录这类含测试点属性的测试点与其对应的网络名称。
在上述记录的含多个测试点的网络结果清单中,除了记录网络名称外,一并记录该网络对应的测试点的名称与坐标,并与第一显示列表相关联,以便检查人员能够迅速定位至该问题点。
检查操作包括高亮无测试点的网络,辅助检查工具循环读取所有网络元素库内的元素属性,获取未含有测试点属性元素的网络名称清单,根据功能选项卡中的需求对获取的网络名称清单进行筛选,得出无测试点的网络名称清单并高亮对应的网络。
高亮无测试点的网络的工作步骤包括:
步骤C1.接收高亮命令。设计人员在功能选项卡中选择高亮无ICT网络选择框,点击执行按钮,向辅助检查工具发送高亮无测试点网络命令。
步骤C2.循环读取所有网络元素库内的元素属性,获取未含有测试点属性元素网络名称。辅助检查工具每获取一个网络后,逐一检查该网络内元素是否含有测试点属性,当完成该网络内所有元素的检查后未发现含测试点属性的元素,记录该网络名称。
在读取所有网络元素库之前,辅助检查工具需要先检查PCB文件是否存在网络数据库,辅助检查工具提取PCB文件的数据库,判断网络数据库是否为无值,若是,辅助检查工具弹出对话框提示无网络模块存在,若否,则读取所有网络元素库内的元素。
步骤C3.判断未含有测试点属性元素的网络是否具有无测试属性。本步骤根据功能选项卡的选择对步骤C2获得的未含有测试点属性元素网络名称清单进行筛选。根据功能选项卡中是否有勾选包含No_Test属性网络选择框进行筛选,勾选了包含No_Test属性网络选择框,则不对获取的网络名称清单做修改,若未勾选,则从获取的网络名称清单中剔除具有无测试属性的网络名称。
经过上述两个步骤,若获取的网络名称清单为无值,则弹出对话框提示无网络模块需要高光显示。若网络名称清单为有值,执行下一步骤。
步骤C4.高亮无测试点属性元素的网络模块并在第一显示列表中显示网络名称。通过axlHighlightObjCct函数高亮显示该网络模块。
在上述记录的含测试点属性的网络结果清单,除了记录网络模块名称外,一并记录该网络模块的坐标,并与第一列表窗口相关联,以便检查人员能够迅速定位至该问题点。
检查操作包括检查并显示已丢失测试点属性的测试点,辅助检查工具根据选定测试点封装类型获取对应的选定测试点信息,循环读取其测试点属性值是否为空值,若测试点属性值为空值,该测试点丢失测试点属性。
在本功能中,测试点丢失测试属性即为该测试点丢失测试点三角符号。
检查并显示已丢失测试点属性的测试点的工作步骤包括:
步骤D1.接收检查命令。设计人员根据需求确定好测试点封装类型列表的内容后,在功能选项卡中选择测试点丢失单选框,点击检查按钮,给予辅助检查工具检查命令。
步骤D2.获取选定的测试点封装类型。设计人员根据需求在测试点选项卡中选择需要检查的测试点封装类型,通过添加按钮与删除按钮将待检查的测试点封装类型移动至测试点封装种类列表中。
步骤D3.根据选定的测试点封装类型获取对应的测试点。
步骤D4.循环读取测试点的测试点属性,记录测试点属性值为空值的测试点。如上述所示,由于网络模块中的元素若含有测试点属性,即testPoint不为空值,故通过 item->testPoint != nil即可获取该元素是否含有测试点属性,循环该函数读取PCB文件中的所有元素,获取含有测试点属性的测试点。
在上述记录的已丢失测试点属性的测试点结果清单的同时,除了记录测试点名称与对应的网络名称外,一并记录该测试点的坐标,并与第一列表窗口相关联,以便检查人员能够迅速定位至该问题点。
检查操作包括检查并显示不在设计要求里的含测试属性的测试点,分别获取含有测试点属性的测试点清单为第一集合以及与选定测试点封装类型一致的测试点清单为第二集合,记录并显示第一集合中与选定测试点封装类型不同的测试点,且,记录并显示第二集合中丢失测试点属性的测试点。
由于普通焊盘与测试点用的焊盘有所区别,ICT测试点用的焊盘一般是需要在一侧阻焊开窗,可以用弹针直接对电路板进行测试的,普通的焊盘,如过孔焊盘都是用绿油堵塞,无法用于测试焊盘,因此需要对测试点的封装类型进行判断,确定其是否符合测试需求。
检查并显示不在设计要求里的含测试属性的测试点的工作步骤包括:
步骤E1.接收检查命令并获取选定的测试点封装类型。设计人员根据需求在测试点选项卡中确定测试点封装类型列表内的内容,选定一个或多个测试点封装种类,选择测试点封装错误单选框,点击检查按钮,给予辅助检查工具检查命令,辅助检查工具获取测试点封装类型列表中的封装类型,并执行检查命令。
步骤E2.获取PCB文件中含有测试点属性的测试点清单形成第一集合。同检查并显示含有多个测试点的网络功能一致,含测试点属性的测试点其testPoint不为空值,故通过item->testPoint != nil即可获取该元素是否含有测试点属性,循环该函数读取PCB文件中的所有元素,获取并含有测试点属性的测试点。
步骤E3.获取与选定测试点封装类型一致的测试点清单形成第二集合。辅助检查工具循环获取PCB文件中与选定测试点封装类型一致的测试点,将其记录并形成第二集合。
步骤E4.循环匹配第一集合中的测试点封装类型与选定的测试点封装类型,若匹配结果不相同,在第一显示列表中记录并显示对应的测试点。辅助检查工具通过foreach循环函数逐一判断含有测试点属性的测试点封装类型与选定封装类型是否相同,若判断结果为否,记录并显示对应的测试点。
步骤E5.循环检查第二集合的测试点是否包括测试点属性,若是,记录并显示在第一显示列表中。根据测试点的testPoint,判断与选定测试点封装类型相同的测试点是否丢失测试点属性,若已丢失测试点属性,则其不满足测试要求,不符合设计要求,需要进行修订,因此同样需要将这类测试点筛选出。
在获得检查结果后,此时第一显示列表中显示内容包括1.封装类型与选定测试点封装类型不一致的测试点;2.封装类型与选定测试点封装类型相同但丢失测试点属性的测试点。此时,辅助检查工具通过axlHighlightObject函数高亮在第一显示列表中显示的测试点。
在上述记录的不在设计要求里的含测试属性的测试点结果清单,除了记录测试点名称与对应的网络名称外,一并记录该测试点的坐标,并与第一显示列表相关联,以便检查人员能够迅速定位至该问题点。
上述的一种用于ALLEGRO软件的测试点辅助检查工具,检查操作包括筛选并显示不满足设定中心距的测试点,从拓展选项卡中的测试点列表中获取第一检查测试点的坐标信息与第二检查测试点的坐标信息,判断第一检查测试点与第二检查测试点之间的间距是否小于设定测试点间距,若是,记录并在第二显示列表中显示相对应的第一检查测试点与第二检查测试点。
检查操作还包括筛选并显示预留层相交的测试点,根据获取的第一检查测试点的坐标信息与第二检查测试点的坐标信息,得出第一测试点预留的圆形与第二测试点预留的圆形的空气间距,当二者预留的圆形的空气间距为零值且第一测试点预留圆与第二测试点预留圆相交时,记录对应的第一检查测试点与第二检查测试点。
筛选并显示不满足设定中心距的测试点与筛选并显示预留层相交的测试点的工作步骤包括:
步骤F1.获取PCB文件中的所有过孔、所有引脚、所有网络的数据列表。
步骤F2.检查并获取没有测试点的网络名称列表。
步骤F3.检查并获取无测试点属性网络的数据,并从获取的所有网络的数据列表中排除。
步骤F4.获取设定测试点间距。通过axlFormGetField函数获取在拓展功能选项卡的Options功能区中输入的设定测试点间距。
步骤F5.判断选取的测试点位置为顶层还是底层。根据拓展功能选项卡的TOP单选框与BOTTOM单选框进行获取,该位置设置了顶层与底层两个选择按钮。
步骤F6.判断是否需要检查预留层相交问题。该步骤通过预留层检查选框(Checkfilmmask)中的勾选给予判断基准,即从该选框中获取操作命令。
步骤F7.根据第一测试点列表与第二测试点列表中的封装类型,获取符合封装类型的测试点信息,若需要检查预留层相交问题,执行步骤F9,若不需要检查预留层相交问题,执行步骤F8。
辅助检查工具自第一测试点列表中获取第一检查测试点的封装类型,自第二测试点列表中获取第二检查测试点的封装类型。设计人员在测试点种类选项卡中确定选定测试点封装类型,进入扩展功能选项卡后,该选定测试点封装类型分别显示在第一测试点列表与第二测试点列表中,设计人员根据需求,使用Delete按钮(删除按钮)与reset按钮(添加按钮)分别对第一测试点列表与第二测试点列表进行调整。
步骤F8.根据获取的第一检查测试点的坐标信息与第二检查测试点的坐标信息得出二者的中心坐标间距,将二者的中心坐标间距与设定测试点间距对比,记录中心坐标间距小于设定测试点间距对应的第一检查测试点与第二检查测试点。辅助检查工具通过axlDistance函数对获得的两个测试点坐标信息获取二者之间的中心坐标间距。
步骤F9.根据获取的第一检查测试点的坐标信息与第二检查测试点的坐标信息,得出第一测试点预留的圆形与第二测试点预留的圆形的空气间距,当二者预留的圆形的空气间距为零值且第一测试点预留圆与第二测试点预留圆相交时,记录对应的第一检查测试点与第二检查测试点。
辅助检查工具使用axlAirGap函数获取第一检查测试点预留的filmmask圆形(预留圆形)与第二检查测试点预留的filmmask圆形(预留圆形)的空气间距。当两个预留圆形的空气间距为零且相交时,axlAirGap函数输出两个预留圆形的相交弦长的值,记录此时对应的第一检查测试点与第二检查测试点。
步骤F10.在第二显示列表中显示记录步骤F8与步骤F9的检查结果清单。
该功能需要通过拓展功能选项卡实现,在辅助检查工具界面中,拓展功能选项卡按钮通过自定义函数“Other_Tools_Control()”-》axlFormDisplay(Other_Tools_Control_form))函数进入拓展功能选项卡,同时通过axlFormClose函数关闭辅助检查工具界面。同理,根据两个函数反向使用,在拓展功能选项卡中设置返回(Cancel)按钮,进入辅助检查工具界面,关闭拓展功能选项卡界面。
检查操作的结果显示在列表窗口中,选中列表窗口内的元素,设计者操作区即刻定位到该选中元素所在位置,其实现步骤包括:
步骤G1.检查操作完成后,记录检查结果的坐标信息。
步骤G2.提取检查结果的坐标信息,获得坐标数值。在本步骤中,通过axlSingleSelectPoint函数提取检查操作完成后记录的检查结果中的坐标信息,接着通过axlGetSelSet函数获得对应坐标元素的DBID(编码)。
步骤G3.根据获取的元素DBID值将视窗缩放至指定的坐标。将上一步骤获得的坐标通过axlZoomToDbid函数对视窗进行缩放,该坐标指定的位置即为视窗的缩放中心,从而使得视窗定位至该检查结果处。
需要注意的是,在每次进行选择之后,后台需要清除上一次的选择结果,以防止系统计算发生紊乱。
在本发明中,在第一显示列表或第二显示列表中显示的检查结果均可通过axlZoomToDbid函数进行定位,即检查出来的有问题的测试点,检查人员通过鼠标点击该列表中的元素,ALLEGRO软件设计者操作区会快速放大显示该问题位置,方便设计人员进行复核与修改,提高设计效率,减少查缺补漏的时间。
在检查操作的初始,设置计数值,计数值初始为零值,每记录一个检查结果,计数值加一,待检查操作完成后,在第一计数栏显示最终的计数值。
辅助检查工具设置有输出按钮,通过输出按钮将第一显示列表中的清单信息输出成单独文件。
辅助检查工具设置有输出按钮,通过输出按钮将列表窗口中的清单信息输出成单独文件。该输出按钮提取列表窗口中的信息,通过axlMsgPut函数与axlUIWPrint函数输出第一显示列表内的信息,再通过fprintf函数将信息显示在窗体内,并使用outfile函数允许将其作为单独文件另存。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种基于ALLEGRO软件的测试点检查方法,其特征在于,在ALLEGRO软件中创建辅助检查工具,辅助检查工具根据测试点种类选项卡反馈的需求获取选定测试点封装类型,并根据选定测试点封装类型自PCB文件中获取对应的选定测试点信息,接受功能选项卡的动作命令并对选定测试点执行对应的检查操作。
2.根据权利要求1中所述的一种基于ALLEGRO软件的测试点检查方法,其特征在于,选项卡包括测试点种类选项卡,测试点种类选项卡设置焊盘封装种类列表与测试点封装种类列表,辅助检查工具获取PCB文件所有焊盘的封装种类并记录在焊盘封装种类列表中,焊盘封装种类列表中的封装种类经添加按钮与删除按钮记录至测试点封装种类列表中,辅助检查工具根据测试点封装种类列表检查对应的测试点信息。
3.根据权利要求1中所述的一种基于ALLEGRO软件的测试点检查方法,其特征在于,检查操作包括高亮显示选定测试点封装类型的过孔与引脚,辅助检查工具获取PCB文件中所有的过孔与引脚信息,循环匹配后筛选出封装类型与选定测试点封装类型相同的过孔与引脚,记录并高亮显示筛选结果对应的过孔与引脚。
4.根据权利要求1中所述的一种基于ALLEGRO软件的测试点检查方法,其特征在于,检查操作包括高亮无测试点的网络,辅助检查工具循环读取所有网络元素库内的元素属性,获取未含有测试点属性元素的网络名称清单,根据功能选项卡中的需求对获取的网络名称清单进行筛选,得出无测试点的网络名称清单并高亮对应的网络。
5.根据权利要求1中所述的一种基于ALLEGRO软件的测试点检查方法,其特征在于,检查操作包括检查并显示已丢失测试点属性的测试点,辅助检查工具根据选定测试点封装类型获取对应的选定测试点信息,循环读取其测试点属性值是否为空值,若测试点属性值为空值,该测试点丢失测试点属性。
6.根据权利要求1中所述的一种基于ALLEGRO软件的测试点检查方法,其特征在于,检查操作包括检查并显示不在设计要求里的含测试属性的测试点,分别获取含有测试点属性的测试点清单为第一集合以及与选定测试点封装类型一致的测试点清单为第二集合,记录并显示第一集合中与选定测试点封装类型不同的测试点,且,记录并显示第二集合中丢失测试点属性的测试点。
7.根据权利要求1中所述的一种基于ALLEGRO软件的测试点检查方法,其特征在于,检查操作包括筛选并显示不满足设定中心距的测试点,从拓展选项卡中的测试点列表中获取第一检查测试点的坐标信息与第二检查测试点的坐标信息,判断第一检查测试点与第二检查测试点之间的间距是否小于设定测试点间距,若是,记录并在第二显示列表中显示相对应的第一检查测试点与第二检查测试点。
8.根据权利要求1中所述的一种基于ALLEGRO软件的测试点检查方法,其特征在于,检查操作的结果显示在列表窗口中,选中列表窗口内的元素,辅助检查工具提取检查结果中的坐标信息,获得坐标数值,视窗以该坐标数值为中心进行缩放。
9.根据权利要求1中所述的一种基于ALLEGRO软件的测试点检查方法,其特征在于,在检查操作的初始,设置计数值,计数值初始为零值,每记录一个检查结果,计数值加一,待检查操作完成后,在第一计数栏显示最终的计数值。
10.根据权利要求1中所述的一种基于ALLEGRO软件的测试点检查方法,其特征在于,辅助检查工具设置有输出按钮,通过输出按钮将第一显示列表中的清单信息输出成单独文件。
CN202010979000.6A 2020-09-17 2020-09-17 一种基于allegro软件的测试点检查方法 Pending CN112100974A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010979000.6A CN112100974A (zh) 2020-09-17 2020-09-17 一种基于allegro软件的测试点检查方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010979000.6A CN112100974A (zh) 2020-09-17 2020-09-17 一种基于allegro软件的测试点检查方法

Publications (1)

Publication Number Publication Date
CN112100974A true CN112100974A (zh) 2020-12-18

Family

ID=73759816

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010979000.6A Pending CN112100974A (zh) 2020-09-17 2020-09-17 一种基于allegro软件的测试点检查方法

Country Status (1)

Country Link
CN (1) CN112100974A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115186622A (zh) * 2022-07-15 2022-10-14 苏州浪潮智能科技有限公司 Pcb设计中快速查找测试点的方法、装置、终端及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799853A (zh) * 2011-05-27 2012-11-28 鸿富锦精密工业(深圳)有限公司 电路板的测试点图形化辨识系统及方法
JP2017062222A (ja) * 2015-09-24 2017-03-30 ルネサスエレクトロニクス株式会社 テストポイント回路、シーケンシャルテスト用スキャンフリップフロップ、半導体装置及び設計装置
CN108133103A (zh) * 2017-12-21 2018-06-08 大连芯巧电子科技有限公司 一种电子设计dfm检测系统、方法和介质
CN109583029A (zh) * 2018-11-01 2019-04-05 郑州云海信息技术有限公司 一种消除受Ledge影响信号边沿斜率值的方法及装置
CN110187262A (zh) * 2019-06-28 2019-08-30 广东正业科技股份有限公司 一种检测测试点的选取方法
US20200033397A1 (en) * 2018-07-26 2020-01-30 Texas Instruments Incorporated Integrated circuit spike check test point identification apparatus and method
US10643011B1 (en) * 2018-06-29 2020-05-05 Cadence Design Systems, Inc. Automatic design and verification of safety critical electronic systems
US20200151288A1 (en) * 2018-11-09 2020-05-14 Nvidia Corp. Deep Learning Testability Analysis with Graph Convolutional Networks

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799853A (zh) * 2011-05-27 2012-11-28 鸿富锦精密工业(深圳)有限公司 电路板的测试点图形化辨识系统及方法
JP2017062222A (ja) * 2015-09-24 2017-03-30 ルネサスエレクトロニクス株式会社 テストポイント回路、シーケンシャルテスト用スキャンフリップフロップ、半導体装置及び設計装置
CN108133103A (zh) * 2017-12-21 2018-06-08 大连芯巧电子科技有限公司 一种电子设计dfm检测系统、方法和介质
US10643011B1 (en) * 2018-06-29 2020-05-05 Cadence Design Systems, Inc. Automatic design and verification of safety critical electronic systems
US20200033397A1 (en) * 2018-07-26 2020-01-30 Texas Instruments Incorporated Integrated circuit spike check test point identification apparatus and method
CN109583029A (zh) * 2018-11-01 2019-04-05 郑州云海信息技术有限公司 一种消除受Ledge影响信号边沿斜率值的方法及装置
US20200151288A1 (en) * 2018-11-09 2020-05-14 Nvidia Corp. Deep Learning Testability Analysis with Graph Convolutional Networks
CN110187262A (zh) * 2019-06-28 2019-08-30 广东正业科技股份有限公司 一种检测测试点的选取方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王战义;: "Allegro平台下高速高密度设计方法", CAD/CAM与制造业信息化, pages 44 - 49 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115186622A (zh) * 2022-07-15 2022-10-14 苏州浪潮智能科技有限公司 Pcb设计中快速查找测试点的方法、装置、终端及存储介质
CN115186622B (zh) * 2022-07-15 2023-11-03 苏州浪潮智能科技有限公司 Pcb设计中快速查找测试点的方法、装置、终端及存储介质

Similar Documents

Publication Publication Date Title
US5787006A (en) Apparatus and method for management of integrated circuit layout verification processes
US6708144B1 (en) Spreadsheet driven I/O buffer synthesis process
US6829754B1 (en) Method and system for checking for power errors in ASIC designs
EP1149385B1 (en) Ic test software system for mapping logical functional test data of logic integrated circuits to physical representation
US7337414B2 (en) Logical equivalence verifying device, method, and computer-readable medium thereof
US20040015795A1 (en) Verifying proximity of ground metal to signal traces in an integrated circuit
JP2003100826A (ja) 検査データ解析プログラムと検査装置と検査システム
US6922822B2 (en) Verifying proximity of ground vias to signal vias in an integrated circuit
CN112066934B (zh) 一种检查pcb板同层过孔盘相交或重孔问题的方法
CN108694265A (zh) 设计布局的失效风险的智能型预诊断系统及方法
KR100873885B1 (ko) 설계 검증 장치, 설계 검증 방법 및 cad 시스템
JP3459481B2 (ja) 論理回路設計用パス解析表示装置
CN112100974A (zh) 一种基于allegro软件的测试点检查方法
CN112597737A (zh) 用于创建pcb测试点标识的方法、系统及可读存储介质
US7076410B1 (en) Method and apparatus for efficiently viewing a number of selected components using a database editor tool
JP2005202928A (ja) レイアウト処理装置、レイアウト処理方法、及びプログラム
CN111624475A (zh) 大规模集成电路的测试方法及系统
US6807657B2 (en) Inter-signal proximity verification in an integrated circuit
US20220382943A1 (en) Identifying association of safety related ports to their safety mechanisms through structural analysis
US10585997B1 (en) Automatic grouping of signals of a model
CN112100973B (zh) 一种基于allegro软件的镜像过孔检查替换方法
TWI795985B (zh) 自動化示意圖檢查系統、實施方法以及程式產品
CN116738912B (zh) Eda软件可重构功能自动化方法及电子设备
JPH0391846A (ja) 障害検出回路の相互関係図生成方式
TW202409884A (zh) 項目管理追踪可視化方法及積體電路設計驗證系統

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information
CB02 Change of applicant information

Address after: 11F, Metro financial technology building, 9819 Shennan Avenue, Shenda community, Yuehai street, Nanshan District, Shenzhen, Guangdong 518000

Applicant after: EDADOC Co.,Ltd.

Address before: 518000 Kangjia R&D Building, 28 Sci-tech South 12 Road, Nanshan District, Shenzhen City, Guangdong Province, 12H-12I, 12th floor

Applicant before: EDADOC Co.,Ltd.