一种PCB整板丝印字字体的设置方法、装置及电子设计系统与流程

文档序号:17473563发布日期:2019-04-20 05:58阅读:935来源:国知局
一种PCB整板丝印字字体的设置方法、装置及电子设计系统与流程

本发明涉及无电子电路技术领域,具体涉及一种pcb整板丝印字号的设置方法、装置及电子设计系统。



背景技术:

在layout(部图)业界有多种pcb(printedcircuitboard印制电路板)设计软件,cadence的allegro软件是其中应用最广泛的一种,其具有非常丰富而强大的功能,并且该软件还支持软件的二次开发。此款软件中使用独有的数据形式存储设计文件,并且每份设计文件都有相应的独立数据库支撑。数据库中主要包含两大类信息:物理信息和逻辑信息。allegro软件中的各种功能操作,都是对数据库中存储的信息的编辑和操作。skill语言就是cadence公司allegro软件内置的一种扩展语言,可以实现对cadence软件的二次开发,使用软件提供的扩展skill接口,可以对此数据库进行编辑操作,从而实现一些软件本身没有提供的一些功能,提高layout的工作效率。

随着电子信息技术的不断发展,pcblayout设计的工作量以及复杂程度不断增加,丝印字主要包括封装丝印、器件位号以及起指示作用的标号,其中起指示作用的标号包括版本号、编码、电源标识号,现有技术中,通常的做法是:pcb工程师对pcb整板上的丝印字号逐一进行人工匹配。

申请人在实施本发明的技术方案的过程中,发现现有技术中至少存在如下技术问题:

现有方法来看,需要pcb工程师人工手动去对pcb整板上的丝印字进行匹配,匹配工作量大,且容易出错。由此可知,现有技术中的方式存在效率低和准确率不高的问题。



技术实现要素:

有鉴于此,本发明实施例提供了一种pcb整板丝印字字体的设置方法、装置及电子设计系统,用以解决或者至少部分解决现有技术中的方式存在效率低和准确率不高的问题。

为了解决上述技术问题,本发明第一方面提供了一种pcb整板丝印字字体的设置方法,包括:

步骤s1:预先设置备选丝印字字体,所有备选丝印字字体构成集合;

步骤s2:获取待设置的层面和丝印字类型;

步骤s3:根据待设置的层面和丝印字类型,从备选丝印字字体集合选取出目标字体,作为待设置丝印字的字体;

步骤s4:根据所述目标字体,对所述待设置丝印字进行匹配设置。

进一步地,步骤s1具体包括:

通过skill函数axlsetparam()预先设置丝印字字体,其中,字体的具体参数包括宽度、高度、线距、配置线宽、字符间距。

进一步地,步骤s2具体包括:

通过skill函数axlvisiblelayer显示丝印字所处的层面,将其作为待设置的层面;

获取待设置丝印字的类型。

进一步地,丝印字所处的层面包括pcb板层和封装层,丝印字类型包括器件字号、封装丝印和指示标号,且器件字号设置于pcb板层,封装丝印设置于封装层,指示标号设置在pcb板层和/或封装层。

进一步地,步骤s3具体包括:

判断所述待设置层面是否为pcb板层,如果是pcb板层,则判断丝印字类型是否为器件字号,如果不是pcb板层,则判断印字类型是否为封装丝印;

其中,当待设置层面为pcb板层,且丝印字类型为器件字号时,则从备选丝印字字体集合中选取出第一字体作为所述目标字体,否则,从备选丝印字字体集合中选取出第二字体作为所述目标字体;

当待设置层面不为pcb板层,且丝印字类型为封装丝印时,则从备选丝印字字体集合中选取出第三字体作为所述目标字体,否则,从备选丝印字字体集合中选取出第二字体作为所述目标字体。

进一步地,步骤s4具体包括:

获取待设置层上所有丝印字;

将获取的所有丝印字的字体设置为所述目标字体。

基于同样的发明构思,本发明第二方面提供了一种pcb整板丝印字字体的设置装置,包括:

丝印字字体设置模块,用于预先设置备选丝印字字体,所有备选丝印字字体构成集合;

层面和类型获取模块,用于获取待设置的层面和丝印字类型;

目标字体确定模块,用于根据待设置的层面和丝印字类型,从备选丝印字字体集合选取出目标字体,作为待设置丝印字的字体;

匹配设置模块,用于根据所述目标字体,对所述待设置丝印字进行匹配设置。

进一步地,丝印字字体设置模块具体用于:

通过skill函数axlsetparam()预先设置丝印字字体,其中,字体的具体参数包括宽度、高度、线距、配置线宽、字符间距。

进一步地,设置层面获取模块具体用于:

通过skill函数axlvisiblelayer显示丝印字所处的层面,将其作为待设置的层面;

获取待设置丝印字的类型。

基于同样的发明构思,本发明第三方面提供了一种pcb设计系统,包括:eda软件以及skill程序,其中,eda软件在执行时调用所述skill程序,并实现第一方面所述的方法。

本申请实施例中的上述一个或多个技术方案,至少具有如下一种或多种技术效果:

本发明公开的pcb整板丝印字字体的设置方法,通过预先设置备选丝印字字体,并获取待设置的层面和丝印字类型,然后根据待设置的层面和丝印字类型,从备选丝印字字体集合选取出目标字体,作为待设置丝印字的字体;再根据目标字体,对所述待设置丝印字进行匹配设置。通过预先设置备选丝印字字体,可以提供多种规格的字号备选,然后根据丝印字的层面和类型,可以实现丝印字字体的自动匹配,即可以对整个pcb板上的所有丝印字的字体记性快速统一设置,可以避免人工匹配导致的效率低和准确性不高的问题,从而达到提高效率准确性的技术效果。

附图说明

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

图1为本发明实施例中一种pcb整板丝印字字体的设置方法的流程图;

图2为一种实施方式中添加预设代码的示意图;

图3为一种实施方式中设置丝印字字体的示意图;

图4为一种实施方式中器件位号的匹配示意图;

图5为一种实施方式中封装丝印的匹配示意图;

图6为一种pcb整板丝印字字体的设置装置的结构图;

图7为一种pcb设计系统的结构图。

具体实施方式

本发明实施例提供了一种pcb整板丝印字字体的设置方法、装置及电子设计系统,用以改善现有技术中的方式存在效率低和准确率不高的问题,并达到提高效率和准确性的技术效果。

为了达到上述技术效果,本发明的总体思路如下:

本发明提供的方法,提供多种规格的字号备选待用,可以直接将整个pcb板上的所有丝印的字号快速统一设置,并进行自动匹配,避免了layout后期设置丝印时的调试工作浪费,提高了工作效率和正确率。

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

实施例一

本实施例提供了一种pcb整板丝印字字体的设置方法,请参见图1,该方法包括:

首先执行步骤s1:预先设置备选丝印字字体,所有备选丝印字字体构成集合。

具体来说,可以利用skill程序来设置备选丝印字字体,并根据预设规则和经验进行丝印字字体的设置,使得备选丝印字字体可以涵盖95%以上的丝印字。

具体地,可以通过skill函数axlsetparam()预先设置丝印字字体,其中,字体的具体参数包括宽度、高度、线距、配置线宽、字符间距。

在具体的实施过程中,可以通过skill函数axlsetparam()设置1-16组不同大小的丝印字字体,例如1号字体:宽15mil、高25mil、线距40mil、配置线宽4.5mil、字符间距5.5mil,2号字体:宽20mil、高30mil、线距40mil、配置线宽5mil、字符间距6mil。

举例来说,每一组丝印字字体或者字号,具体有5类具体参数:宽width、高height、线距linespace、配置线宽photowidth和字符间距charspace。可以先利用函数axlgetparam获得一个参数p,并获取指定参数p的dbid,其中,p=axlgetparam(strcat("paramtextblock:"text_block)),然后用axlsetparam(p)来设置,其中,strcat函数的作用是将输入参数的字符串连接起来,然后返回一个新的字符串,接着通过block_pl=atoi(text_block)语句将将设置的字体转换成数值,代入预设运算程式进行运算。

其中,预设运算程式可以设置成如下形式:

width=(10+5*block_pl)*(1.0/du);

height=(20+5*block_pl)*(1.0/du);

linespace=40*(1.0/du);

photowidth=(4+0.5*block_pl)*(1.0/du);

charspace=(5+0.5*block_pl)*(1.0/du);

其中,1.0/du为单位字符,通过运算可以将1号丝印字的具体参数分别设置为15、25、40、4.5、5.5。请参见图3,为设置丝印字字体的示意图,其中示出了12种字号的具体参数。

然后执行步骤s2:获取待设置的层面和丝印字类型。

具体来说,pcb上的丝印字在layout中存在的层面包括如下四个:

packagegeometry/silkscreen_top,封装丝印层top面;

packagegeometry/silkscreen_bottom,封装丝印层bottom面;

boardgeometry/silkscreen_top,pcb板丝印层top面;

boardgeometry/silkscreen_bottom,pcb板丝印层bottom面。

具体地,步骤s2具体包括:

通过skill函数axlvisiblelayer显示丝印字所处的层面,将其作为待设置的层面;

获取待设置丝印字的类型。

具体地,丝印字所处的层面包括pcb板层和封装层,丝印字类型包括器件字号、封装丝印和指示标号,且器件字号设置于pcb板层,封装丝印设置于封装层,指示标号设置在pcb板层和/封装层。

具体来说,丝印字所处的层面(待设置的层面)可以分为boardgeometry(pcb板层)和packagegeometry(封装层)。可以通过skill函数axlvisiblelayer来显示丝印字所在的层面。举例来说,可以通过下述方式来实现:

axlvisiblelayer("refdes/silkscreen_top"t);显示ref的top层;

axlvisiblelayer("refdes/silkscreen_bottom"t);显示ref的bottom层。

接下来执行步骤s3:根据待设置的层面和丝印字类型,从备选丝印字字体集合选取出目标字体,作为待设置丝印字的字体。

具体地,步骤s3具体包括:

判断所述待设置层面是否为pcb板层,如果是pcb板层,则判断丝印字类型是否为器件字号,如果不是pcb板层,则判断印字类型是否为封装丝印;

其中,当待设置层面为pcb板层,且丝印字类型为器件字号时,则从备选丝印字字体集合中选取出第一字体作为所述目标字体,否则,从备选丝印字字体集合中选取出第二字体作为所述目标字体;

当待设置层面不为pcb板层,且丝印字类型为封装丝印时,则从备选丝印字字体集合中选取出第三字体作为所述目标字体,否则,从备选丝印字字体集合中选取出第二字体作为所述目标字体。

具体来说,即boardgeometry层下的丝印字为器件位号,packagegeometry的丝印字为封装丝印,而指示标号可以设置在pcb板层或者封装层,或者两者都有。指示标号包括版本号、编码、电源标识号中的一种或多种。在具体的实施过程中,在进行指示标号的字体匹配时,可以选取字体较大的。即第二字体大于第一字体、第三字体。

为了进一步提高匹配效率,可以将第一字体设置为2号字体,第三字体设置为1号字体,第三字体则可以从3~16号中进行选取。通过步骤s1中设置的16组不同大小的字号基本可以满足pcblayout日常中的需求。

再执行步骤s4:根据所述目标字体,对所述待设置丝印字进行匹配设置。

具体来说,当选择出目标字体后,则可以根据目标字体对各个丝印字进行自动匹配设置。

具体地,步骤s4具体包括:

获取待设置层上所有丝印字;

将获取的所有丝印字的字体设置为所述目标字体。

在具体的实施过程中,可以通过axlgetselset(axladdselectall()),来获取待设置层上的元素,即所有丝印字,allrefs为自定义函数,通过赋值操作来选取待设置层上的所有元素,,然后通过axldbchangetext改变丝印字体的具体参数的形式,进行字体的设置,从而实现自动匹配。具体如下:

allrefs=axlgetselset(axladdselectall());赋值,选取该层中所有元素

foreach(iallrefsaxldbchangetext(inil2);将text值修改为2

)

package_text=axlgetselset(axladdselectall());选取该层中所有元素

foreach(ialloth_text;

axldbchangetext(inil1);将text值修改为1

其中,axlgetselset、axldbchangetext、axladdselectall均为skill函数,其具体作用分别为:获得选择的对象、改变丝印字体的具体参数和选择全部对象。

通过上述方法,当丝印字为器件位号时,则将text值修改为2,当丝印字为封装丝印时,将text值修改为1。本发明采用skill程序的方式,可以直接将整个pcb板上的所有丝印的字号快速统一设置,同时提供多种规格的字号备选待用,避免了layout后期做丝印时的调试工作浪费,提高工作效率和正确率,其中,图4和图5分别为丝印字为器件位号和封装丝印时的示意图。其中,器件位号选用的为2号字体,封装丝印选用的为1号字体。

本发明整体是通过skill程序来实现丝印字字体的设置的,在具体实施时,需要修改软件的部分配置文件,达到需要的运行环境,从而对layout设计的后台数据进行修改与配置。软件环境如下:操作系统为win7软件为cadenceallegro16.6。cadenceallegro为一个大型eda软件,利用它几可以完成电子设计,具体包括asic设计、fpga设计和pcb板设计。

配置的具体步骤如下:

(1)首先修改cadenceallegro软件的菜单栏文件:将jcdz-skill一栏添加到菜单栏中,配置文件allegro.men的路径为:

x:\cadence\spb_16.6\share\pcb\text\cuimenus(其中,x是该软件的安装盘),通过上述路径可以找到配置文件,为了方便调用,需要在配置文件中添加相应的代码,具体如下:

在配置文件最后的popup"&help"前添加如下代码:

在具体的实施过程中,可以采用专业的编辑软件ultraedit或者记事本进行编辑。

(2)修改x:\cadence\spb_16.6\share\local\pcb\skill下的allegro.ilinit文件,在其中添加一行代码,如图2中方框中所示的代码。

load("quick_textset.il")

(3)将quick_textset.il文件置于x:\cadence\spb_16.6\share\local\pcb\skill下;

(4)重新启动allegro软件,在菜单倒数第二栏会出现一个jcdz-skill的菜单,其下拉菜单中具有一个autotextset的命令,点击执行该命令,即可实现此skill程序的功能,即可以实现本发明中的pcb整板丝印字字体的设置方法。

基于同一发明构思,本申请还提供了与实施例一中的pcb整板丝印字字体的设置方法对应的装置,详见实施例二。

实施例二

本实施例提供一种pcb整板丝印字字体的设置装置,请参见图6,包括:

丝印字字体设置模601,用于预先设置备选丝印字字体,所有备选丝印字字体构成集合;

层面和类型获取模块602,用于获取待设置的层面和丝印字类型;

目标字体确定模块603,用于根据待设置的层面和丝印字类型,从备选丝印字字体集合选取出目标字体,作为待设置丝印字的字体;

匹配设置模块604,用于根据所述目标字体,对所述待设置丝印字进行匹配设置。

在一种实施方式中,丝印字字体设置模块具体用于:

通过skill函数axlsetparam()预先设置丝印字字体,其中,字体的具体参数包括宽度、高度、线距、配置线宽、字符间距。

在一种实施方式中,设置层面获取模块具体用于:

通过skill函数axlvisiblelayer显示丝印字所处的层面,将其作为待设置的层面;

获取待设置丝印字的类型。

在一种实施方式中,丝印字所处的层面包括pcb板层和封装层,丝印字类型包括器件字号、封装丝印和指示标号,且器件字号设置于pcb板层,封装丝印设置于封装层,指示标号设置在pcb板层和/或封装层。

在一种实施方式中,目标字体确定模块具体用于:

判断所述待设置层面是否为pcb板层,如果是pcb板层,则判断丝印字类型是否为器件字号,如果不是pcb板层,则判断印字类型是否为封装丝印;

其中,当待设置层面为pcb板层,且丝印字类型为器件字号时,则从备选丝印字字体集合中选取出第一字体作为所述目标字体,否则,从备选丝印字字体集合中选取出第二字体作为所述目标字体;

当待设置层面不为pcb板层,且丝印字类型为封装丝印时,则从备选丝印字字体集合中选取出第三字体作为所述目标字体,否则,从备选丝印字字体集合中选取出第二字体作为所述目标字体。

在一种实施方式中,匹配设置模块具体用于:

获取待设置层上所有丝印字;

将获取的所有丝印字的字体设置为所述目标字体。

基于同一发明构思,本申请还提供了与实施例一中的pcb整板丝印字字体的设置方法对应的电子设计系统,详见实施例三。

实施例三

本实施例提供一种pcb设计系统,请参见图7,该系统包括:eda软件以及skill程序,其中,eda软件在执行时调用所述skill程序,并实现实施例一所述的方法。

具体地,eda软件可以为cadenceallegro软件,配置方法在实施例一中已经做出详细的说明,故在此不在赘述。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。

显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

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