您好,欢迎来到华拓科技网。
搜索
您的当前位置:首页第四章genesis内定变量

第四章genesis内定变量

来源:华拓科技网
第四章 GENESIS2000 内定变量 在genesis2000编程中,我们需要很多genesis自身已经定义的变量,并且在变量后面跟上不同的参数,会得到genesis里面很多的内定值(比如层的属性),使用这些内定值会使我们的程序编写简单,且让程序更刘才林数字签名人 刘才林DN:cn=刘才林,c=CN-中国,o=上海桌凯,ou=工程,

email=hillohowareyougo@126.com原因:我是该文档的作者日期:2008.07.03 10:11:17 +08'00'

有价值,下面我们将详细讲述这部分内容。

作者:刘才林 完成于第1页共28页

2008/3月 第四章 GENESIS2000 内定变量

4.1:info简介:

在genesis2000中,我们可以通过info指令得到genesis database里面的各种信息,我们可以把这些信息写到程序里面,实现genesis自动化,info指令格式如下: COM info,args = -t -e \\

-d -p , [-s serial_number]\\ [-o options] –help\\

out_file=~/out_file, write_mode = source ~/out_file

在我们把info写进程序时,为书写方便,我们把它简写为DO_INFO,这个简写别名在$GENESIS_DIR/sys/hooks/script_start.csh中已自动定义,其定义的内容如下:

alias DO_INFO 'set IFILE = /tmp/info.$$; \\\\

COM info,out_file=$IFILE,write_mode=replace,args= \\!:* ; \\\\ source $IFILE; rm $IFILE'

如果你发现DO_INFO不能使用,则可按照上面内容进行定义: 4.2:info参数定义:

在上面我们讲述info的格式,它的参数有4个,如下:

(1):out_file 定义将信息输出文件的路径及文件名,如/tmp/info

(2):units 设置输出资料的单位,是inch还是mm。

(3):write_mode,设置输出到文件是追加到原来的文件,还是替换原来的文件。 (4):args 设置抽取datebase那一部分的信息:由以下8个选项组合定义:

● ● ● ● ● ● ● ●

–t 设置获取信息实体项目名称:如matrix –e 设置获取信息实体项目路径:如JOB/matrix

–d 设置获取信息实体项目中的数据类别:如matrix中的ROW –m 设置获取信息的方式是以程序的方式输出还是以显示的方式输出 –p 设置获取信息实体项目中的数据参数,如step中的x,y –o 设置获取信息实体项目中的选项,多用于checklist –s 设置仅获取信息数组中的那一组,用序号表示 –help 输出帮助文件。

下面我们详细讲述各参数的意义: 4.2.1:out_fie

out_file参数是设置输出文件的路径及路径名,它以纯文本的方式存储,例如: 我们写一个名为info的脚本,程序内容如下:

COM info,out_file=/tmp/info,args= -t layer -e $JOB/pcs/drill \\

-m script,write_mode=replace

则我们会在/tmp目录下找到名为info的文本文件,打开后可看见如下内容:

set gCONTEXT = 'board'

set gTYPE = 'drill' set gPOLARITY = 'positive' set gSIDE = 'none' set gDRL_START = 'silkc' set gDRL_END = 'silks' set gFOIL_SIDE = 'none' set gSHEET_SIDE = 'none' set gROW = '9'

作者:刘才林 完成于2008/3月 第2页共28页

第四章 GENESIS2000 内定变量

……

set gIS_CHANGED = 'yes'

我们可以看出里面包含很多关于datebase的信息。 4.2.2:write_mode:

write_mode是我们输出文件模式,是将内容追加到以前的文件,还是替换以前的文件,append为追加,

replace为替换,根据我们的需要写为不同的模式:

例如我们要输出layer的参数,以替换的方式输出,则程序内容如下: COM info,out_file=/tmp/info,args= -t layer -e $JOB/pcs/drill \\

-m script,write_mode=replace

当我们打开/tmp/info文件就可以看到所有$JOB/pcs/drill中所有关于层的信息,以前/tmp/info所有的内容都将被清除。

如果我们要输出layer的参数,以追加方式输出,其程序内容如下: COM info,out_file=/tmp/info,args= -t layer -e $JOB/pcs/drill \\

-m script,write_mode=append

我们再次打开/tmp/info文件就可以看到两次关于$JOB/pcs/drill层的信息。 4.2.3:args中-t选项:

我们在前面讲述-t为设置获取信息实体项目名称,除我们要取得帮助内容外,其它的程序都应有-t这个选项,这个选项后面可跟以下参数。

● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●

范例:

(1):取得料号信息:

COM info,out_file=/tmp/info,args= -t job –e $JOB 我们会得到当前料号的信息,其内容如下:

set gSTEPS_LIST = ('pcs' 'panel') set gSYMBOLS_LIST = () attributes 属性信息 job 料号信息 ncset 钻孔输出信息 step 实体信息 check 分析报告信息 layer 层信息 notes 注记信息 symbol 符号信息 comp 元件层信息 matrix 矩阵信息 panel_classes 拼版精灵信息 wheel wheel文件信息 eda 设计信息 netlist 网络对比信息 root root信息 etset etset信息 ncrset 铣输出信息 stackup 叠板信息

camtek-aoiset camtek-aoiset信息 mania_aoiset mania_aoiset 信息

作者:刘才林 完成于2008/3月 第3页共28页

第四章 GENESIS2000 内定变量

set gWHEELS_LIST = () set gMATRIX_LIST = ('matrix') set gSTACKUPS_LIST = ('ttt') set gTEMPLATES_LIST = ()

set gATTRname = ('.comment' '.customer' '.global_camtek_aoiset' '.technology'

'.primary_side' '.design_origin_x' '.design_origin_y' '.board_thickness')

set gATTRval = ('' '' '' ''

'top' '0' '0' '0.000000' )

set gFORMS_LIST = ('autocool' 'autogh' 'ex' 'ff') set gFLOWS_LIST = ('fgg' 'genesis' 'gggfgg') set gIS_CHANGED = 'no'

4.2.4:args的-e选项:

-e选项为设置获取信息实体项目路径,也就是我们获取信息的路径,如果我们不写路径,程序就无法搞清楚你要获取那部分的信息,你也许会说这样会输出所有database的信息,但实际上是不可能,我想你也不需要这样做。所以我们要指定路径:如$JOB/$STEP/drill等。其中因root为最高目录,而不需要定义路径,其余实体皆需要定义正确路径。 下面我们给出每种实体路径的范例: (1):root(不需要路径)

COM info,out_file=/tmp/info,args= -t root

(2):job:

COM info,out_file=/tmp/info,args= -t job –e $JOB (3):attributes:

COM info,out_file=/tmp/info,args= -t attributes –e $JOB

(4):ncset:

COM info,out_file=/tmp/info,args= -t ncset –e $JOB/pcs/drill/dd

(5):setp:

COM info,out_file=/tmp/info,args= -t step –e $JOB/step

(6):check:

COM info,out_file=/tmp/info,args= -t check –e $JOB/step/check1 (7):layer:

COM info,out_file=/tmp/info,args= -t layer –e $JOB/pcs/drill

(8):notes:

COM info,out_file=/tmp/info,args= -t notes –e $JOB/pcs/drill/notes

(9):symbol:

COM info,out_file=/tmp/info,args= -t symbol –e $JOB/shiyan (10):comp:

COM info,out_file=/tmp/info,args= -t comp –e $JOB/pcs/top/1 (11):matrix:

COM info,out_file=/tmp/info,args= -t matrix –e $JOB/matrix (12):panel_classes:

COM info, out_file=/tmp/info,args= -t panel_classes –e $JOB (13):wheel:

作者:刘才林 完成于2008/3月 第4页共28页

第四章 GENESIS2000 内定变量

COM info,out_file=/tmp/info,args= -t wheel –e $JOB/xxx (14):eda:

COM info,out_file=/tmp/info,args= -t eda –e $JOB/step (15):netlist:

COM info,out_file=/tmp/info,args= -t netlist –e $JOB/step/netlistname (16):etset:

COM info,out_file=/tmp/info,args= -t etset –e $JOB/step/etsetname

(17):ncrset:

COM info,out_file=/tmp/info,args= -t ncrset –e $JOB/$STEP/rout/ncrset

(18):stackup:

COM info,out_file=/tmp/info,args= -t stackup –e $JOB/stackup

4.2.5:args的-d选项:

-d选项是设置获取信息实体项目中的数据类别,几乎每一个实体中都有很多类别,如step中就有17个类别,因为我们会经常用到这些类别,下面我们给出常用的实体数据类别: (1):root ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●

JOB_LIST(array) 读取料号列表信息 STEPS_LIST (Array) 读取steps列表信息 SYMBOLS_LIST (Array) 读取symbols列表信息 WHEELS_LIST (Array) 读取wheels列表信息 MATRIX_LIST (Array) 读取matrix列表信息 STACKUPS_LIST (Array) 读取stackups列表信息 TEMPLATES_LIST (Array) 读取templates列表信息 ATTR (Array) 读取属性相关信息 FORMS_LIST (Array) 读取forms列表信息 FLOWS_LIST (Array) 读取flows列表信息 CHANGES (Free text output) 读取改变而未保存的内容 IS_CHANGED 读取料号是否已经改变而未保存 DATUM 读取基准点信息 LIMITS 读取图形的最大坐标 NUM_SR 读取拼版里面有几种排版 SR (Array) 读取排版信息 SR_LIMITS 读取排版坐标信息 NUM_REPEATS 读取有多少个拼版 REPEAT (Array) 读取每个pcs的排版信息 PROF_LIMITS 读取profile的坐标信息 PROF (Free text output) 读取profile的每个点信息 ACTIVE_AREA 读取激活图形区域信息 LAYERS_LIST (Array) 读取层列表信息 CHECKS_LIST (Array) 读取分析列表信息 NETS_LIST (Array) 读取网络列表信息 ATTR (Array) 读取属性列表信息 ETSETS_LIST (Array) 读取etset列表信息

(2):job

(3):step

作者:刘才林 完成于2008/3月 第5页共28页

第四章 GENESIS2000 内定变量

● ● ● ● ● ● ● ●

IS_CHANGED 读取料号是否已经改变而未保存 PROF_LENGTH 读取profile的总长度 LIMITS symbol的最小和最大坐标 FILL 填充的距离 SYMS_HIST (Array) 存在部件列表 FEAT_HIST 读取部件列表信息 ATTR (Array) 属性信息 FEATURES 部件详细信息

(4):symbol

(5):layer

● CONTEXT ● TYPE ● POLARITY ● SIDE ● DRL_START ● DRL_END ● FOIL_SIDE ● SHEET_SIDE ● ROW ● LIMITS ● SYMS_HIST (Array) symbol● FEAT_HIST ● SLOT_HIST ● NUM_TOOL ● TOOL (Array) ● TOOL_SLOTS ● TOOL_THICK ● TOOL_USER ● ATTR (Array) ● FEATURES ● NCSETS_LIST ● AOISETS_LIST AOI● NCRSETS_LIST ● LPD ● LPM ●

IS_CHANGED (6): wheel

● DCODE (7):matrix

● NUM_ROWS ● NUM_COLS ●

NUM_LAYERS 作者:刘才林 完成于层属性是board还是 misc 层的属性(drill) 层的极性(polarity)

层为板的top还是bottom面或者为inner 钻孔的起始层 钻孔的结束层

计算层在芯板的top面还是bottom面(此时不算comp和sold

层,L2将被算为top面,L3将被算为bottom面)

和FOIL_SIDE功能相似,不过加上comp和sold层(此时L2

将被算为bottom面)

层排在第几行

层里面内容最小和最大坐标 列表 部件列表信息 槽孔列表信息 刀具总数 刀具信息

钻孔管理器对槽孔设计信息 钻孔管理器的板厚信息 钻孔管理应用参数 属性信息 部件详细信息 钻孔输出列表 列表 铣输出列表

读取输出gerber的参数 读取输出光绘的参数

读取料号是否已经改变而未保存 各D码详细参数 有多少个rows 有多少个cols 有多少个非空的层

第6页共28页

2008/3月 第四章 GENESIS2000 内定变量

● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ● ●

NUM_STEPS 有多少个非空的step ROW (Array) 层的详细信息 COL (Array) 组的详细信息 ATTR (Array) matrix属性参数

CHK_ATTR 运行详细属性列表,分为name、val、exists三个栏位。 LAST_TIME 最后运行时间 DURATION 运行所用时间 NUM_ACT 分析中项目的总个数 TITLE check标题 STATUS 是否已经运行 ERF ERF参数内容 MEAS 详细报告分析结果

REPORT 将问题按类别和范围进行分类统计并报告 MEAS_DISP_ID 报告问题点相对应的层 NUM_ATR 属性总数 ATR (Array) 属性详细信息 FORCE_LIB 获取用户属性

(8):check:

(9): attributes

4.2.6:args的-m选项:

-m选项是设置输出的格式是以显示内容的方式还是以程序的方式: (1):以程序的方式输出如下:

COM info,out_file=/tmp/info,args=-t matrix –e $JOB/matrix –m scripts 得到的结果如下: set gNUM_ROWS = '13'

set gNUM_COLS = '4' set gNUM_LAYERS = '13' set gNUM_STEPS = '3'

set gCOLcol = ('1' '2' '3' '4' ) set gCOLtype = ('step' 'step' 'step' 'empty') set gCOLstep_name = ('pcs' 'panel' 'dd' '' ) set gATTRname = () set gATTRval = ()

(2):以显示的方式输出,如下:

COM info,out_file=/tmp/info,args=-t matrix –e $JOB/matrix –m scripts 得到的结果如下: NUM_ROWS=13

NUM_COLS=4 NUM_LAYERS=13 NUM_STEPS=3

COL[1]:col=1,type=step,step_name=pcs COL[2]:col=2,type=step,step_name=panel COL[3]:col=3,type=step,step_name=dd COL[4]:col=4,type=empty,step_name=\"\"

作者:刘才林 完成于2008/3月 第7页共28页

第四章 GENESIS2000 内定变量

4.2.7:args的-p选项:

-p选项是设置我们要获取那些参数信息,这个选项将我们获得的信息更详细,或者说利用参数让程序仅仅输出我们想要的信息,我们可以使用“+”号同时获取几个参数的信息,不过只有一部分数据类别有参数,举例说明:

COM info,out_file=/tmp/info,args= -t step –e $JOB/pcs –m display –d DATUM –p x 得到内容: DATUM :X = 0 如果我们不用-p参数:

COM info,out_file=/tmp/info,args= -t step –e $JOB/pcs –m display –d DATUM 得到内容: DATUM:x=0,y=0

4.2.8:args的-o选项

-o是info指令中的选项,常用于check,且在check中必须指定我们要得到chicklist中的那一个项目的

信息(checklist中的项目按排列顺序来定): (1):check中-o的参数有以下几个内容:

● ● ● ● ● ● ● ●

action 读取checklist中的第几个项目信息(用1,2,3……数字表示) category ERF参数中的那个项目,如P2P severity 读取报告等级,如R layer 读取报告为那一层 index 信息报告是否跟序号 break_sr 拼版里所有的信息 select 选择的部件 break_feat 所有部件的详细信息

(2):针对其它部分的-o参数:

4.2.9:args的-s选项:

-s是设置在获取信息时,仅获取那一组信息,我们通过上面的学习知道,很多的信息输出都是一个数组,有的时候我们只需要获取那一组信息,则用-s的选项。如-s 2就为获取第2组的信息,下面我们以范例来详细说明:

读取钻孔的信息,不加-s选项:

COM info,out_file=/tmp/info,args= -t layer –e $JOB/pcs/drill –d tool 得到的结果:

set gTOOLnum = ('1' '2' '3' ) set gTOOLcount = ('5' '10' '10' ) set gTOOLshape = ('hole' 'hole' 'hole' ) set gTOOLtype = ('plated' 'plated' 'plated' ) set gTOOLtype2 = ('standard' 'standard' 'standard') set gTOOLmin_tol = ('0' '0' '0' ) set gTOOLmax_tol = ('0' '0' '0' ) set gTOOLfinish_size = ('40' '-0' '-0' ) set gTOOLdrill_size = ('43.3' '10' '25' ) set gTOOLbit = ('1.10' '' '' ) set gTOOLslot_len = ('0' '0' '0' )

下面我们只要第2组的信息,则程序如下:

COM info,out_file=/tmp/info,args= -t layer –e $JOB/pcs/drill –d tool –s 2

作者:刘才林 完成于2008/3月 第8页共28页

第四章 GENESIS2000 内定变量

set gTOOLnum = ('2' ) set gTOOLcount = ('10' ) set gTOOLshape = ('hole' ) set gTOOLtype = ('plated' ) set gTOOLtype2 = ('standard') set gTOOLmin_tol = ('0' ) set gTOOLmax_tol = ('0' ) set gTOOLfinish_size = ('-0' ) set gTOOLdrill_size = ('10' ) set gTOOLbit = ('' ) set gTOOLslot_len = ('0' )

4.3:获取信息详解:

在前面我们讲述了info的参数,各种选项如何使用,也提到获取信息的数据类别,下面我们将以范例的方式描述从datebase获取一些常用的信息。 4.3.1:root的范例

(1):获取的为datebase中所有的料号名称。 COM info,out_file=/tmp/info,args= -t root

set gJOBS_LIST = ('dd' 'fdf' 'ff' 'gg' 'hh' 'sdff' 'sdffff' 'shiyan') 4.3.2:job的范例:

(1):获取flows的列表信息:

COM info,out_file=/tmp/info,args –t job –e $JOB –d FLOWS_LIST set gFLOWS_LIST = ('fgg' 'genesis' 'gggfgg') (2): 获取froms的列表信息:

COM info,out_file=/tmp/info,args –t job –e $JOB –d FROMS_LIST

set gFORMS_LIST = ('autocool' 'autogh' 'ex' 'ff') (3):获取step的列表信息:

COM info,out_file=/tmp/info,args –t job –e $JOB –d STEPS_LIST set gSTEPS_LIST = ('pcs' 'panel') (4):获取symbol的列表信息:

COM info,out_file=/tmp/info,args –t job –e $JOB –d SYMBOLS_LIST set gSYMBOLS_LIST = ('fff' 'panel_sym-inn_even_vent' 'ttt' 'tttd') (5):获取料号是否改变内容:

COM info,out_file=/tmp/info,args –t job –e $JOB –d IS_CHANGED set gIS_CHANGED = 'no' 4.3.3:matrix的范例:

(1):获取组的信息,获取的信息有组号、组属性、组名称。

COM info,out_file=/tmp/info,args –t matrix –e $JOB/matrix –d COL set gCOLcol = ('1' '2' '3' )

set gCOLtype = ('step' 'step' 'empty') set gCOLstep_name = ('pcs' 'panel' '' )

(2):获取我们当前的料号总共有多少个step:

COM info,out_file=/tmp/info,args –t matrix –e $JOB/matrix –d NUM_COLS set gNUM_COLS = '3'

(3):获取当前料号matrix的ROW的信息:其中获取的信息有,层所在行数、层是否为空、层的名称、层是

作者:刘才林 完成于2008/3月 第9页共28页

第四章 GENESIS2000 内定变量

board还是misc、层的属性、层的正负极性、层排列在板那边、钻孔的开始层、钻孔的最结束层、层按芯板分在那面(以内层为芯板),层加上外层排列在top还是bottom面。 COM info,out_file=/tmp/info,args –t matrix –e $JOB/matrix –d ROW

set gROWrow = ('1' '2' '3' '4' '5'

'6' '7' )

set gROWtype = ('layer' 'layer' 'layer' 'layer' 'layer'

'layer' 'layer' )

set gROWname = ('smc' 'comp' 'l2' 'sold' 'sms'

'silks' 'drill' )

set gROWcontext = ('board' 'board' 'board' 'board' 'board'

'board' 'board' )

set gROWlayer_type = ('solder_mask' 'signal' 'power_ground' 'signal'

'solder_mask' 'silk_screen' 'drill' )

set gROWpolarity = ('positive' 'positive' 'negative' 'positive' 'negative'

'negative' 'positive')

set gROWside = ('top' 'top' 'inner' 'bottom' 'bottom'

'bottom' 'none' )

set gROWdrl_start = ('' '' '' '' ''

'' 'smc' )

set gROWdrl_end = ('' '' '' '' ''

'' 'silks' )

set gROWfoil_side = ('none' 'top' 'top' 'bottom' 'none'

'none' 'none' )

set gROWsheet_side = ('none' 'top' 'bottom' 'bottom' 'none'

'none' 'none' )

(4):获取matrix中有几个有用的层:

COM info,out_file=/tmp/info,args –t matrix –e $JOB/matrix –d NUM_LAYERS set gNUM_LAYERS = '7'

4.3.4:step的范例:

(1):获取层的列表:

COM info,out_file=/tmp/info,args= -t step –e $JOB/pcs –d LAYER_LIST set gLAYERS_LIST = ('smc' 'comp' 'l2' 'sold' 'sms' 'silks' 'drill') (2):读取profile的最小和最大的坐标:

COM info,out_file=/tmp/info,args= -t step –e $JOB/pcs –d PROF_LIMITS set gPROF_LIMITSxmin = '0'

set gPROF_LIMITSymin = '0' set gPROF_LIMITSxmax = '5' set gPROF_LIMITSymax = '5'

(3):获取拼版信息:获取的信息有:拼版内step名称、step的基准点的位置、step的拼版间距、step的拼版

个数、拼版的旋转角度、拼版是否镜像、拼版最小和最大位置。 COM info,out_file=/tmp/info,args= -t step –e $JOB/pcs –d SR set gSRstep = ('pcs' )

set gSRxa = ('1.6346219' )

作者:刘才林 完成于2008/3月 第10页共28页

第四章 GENESIS2000 内定变量

set gSRya = ('8.0510925' ) set gSRdx = ('5.12' ) set gSRdy = ('5.12' ) set gSRnx = ('3' ) set gSRny = ('2' ) set gSRangle = ('90' ) set gSRmirror = ('no' ) set gSRxmin = ('1.6346219' ) set gSRymin = ('3.0510925' ) set gSRxmax = ('16.8746219') set gSRymax = ('13.1710925')

(4):获取基准点的位置:

COM info,out_file=/tmp/info,args= -t step –e $JOB/pcs –d DATUM

set gDATUMx = '0'

set gDATUMy = '0'

(5):获取cheklist的列表:

COM info,out_file=/tmp/info,args= -t step –e $JOB/pcs –d CHICKS_LIST

set gCHECKS_LIST = ('cdr_signal_lyr_chk' 'fls_basic_analysis' 'fls_basic_cleanup')

4.3.5:layer的范例: (1):部件的详细信息:

COM info,out_file=/tmp/info,args= -t layer –e $JOB/pcs/comp –d FEATURES ### Layer - comp features data ### #P 2.7680673 1.982353 r40 P 0 0 N #P 2.8090673 1.982353 r40 P 0 0 N #P 2.8500673 1.982353 r40 P 0 0 N #P 2.10673 1.982353 r40 P 0 0 N #P 2.9320673 1.982353 r40 P 0 0 N #P 2.9730673 1.982353 r40 P 0 0 N #P 3.0140673 1.982353 r40 P 0 0 N #P 3.0550673 1.982353 r40 P 0 0 N #P 3.0960673 1.982353 r40 P 0 0 N #P 3.1370673 1.982353 r40 P 0 0 N #S P 0

#OB 1.538655511811 2.842016830709 I #OS 1.538655511811 3.942016830709 #OS 2.832773228346 3.942016830709 #OS 2.832773228346 2.842016830709 ………………………………………………

#L 4.88344 3.245333 6.3774058 3.1713835 r2 P 0

#L 4.88344 3.243033 6.3774058 3.1690835 r2 P 0 #L 4.88344 3.240733 6.3774058 3.1667835 r2 P 0 #L 4.88344 3.238433 6.3774058 3.14835 r2 P 0

(2):读取钻孔的信息:读取的信息有刀具、个数、形状、属性(plated等)、属性2(standard 等)、孔

径正负公差、钻孔尺寸、成品尺寸、钻孔bit、槽孔长度。

作者:刘才林 完成于2008/3月 第11页共28页

第四章 GENESIS2000 内定变量

COM info,out_file=/tmp/info,args= -t layer –e $JOB/pcs/comp –d TOOL set gTOOLnum = ('1' '2' '3' )

set gTOOLcount = ('5' '10' '10' ) set gTOOLshape = ('hole' 'hole' 'hole' ) set gTOOLtype = ('plated' 'plated' 'plated' ) set gTOOLtype2 = ('standard' 'standard' 'standard') set gTOOLmin_tol = ('0' '0' '0' ) set gTOOLmax_tol = ('0' '0' '0' ) set gTOOLfinish_size = ('40' '-0' '-0' ) set gTOOLdrill_size = ('43.3' '10' '25' ) set gTOOLbit = ('1.10' '' '' ) set gTOOLslot_len = ('0' '0' '0' )

(3):读取部件的列表信息:得到线部件多少个、焊盘部件多少个、铜面部件多少个、文字部件多少个、圆

弧部件多少个、总共多少个部件。

COM info,out_file=/tmp/info,args= -t layer –e $JOB/pcs/comp –d FEAT_HIST set gFEAT_HISTline = '0'

set gFEAT_HISTpad = '25' set gFEAT_HISTsurf = '0' set gFEAT_HISTarc = '0' set gFEAT_HISTtext = '0' set gFEAT_HISTtotal = '25'

(4): 读取symbol的信息:得到symbol的大小、各symbol的线的个数、各symbol的焊盘的个数、各symbol的圆

弧的个数

COM info,out_file=/tmp/info,args= -t layer –e $JOB/pcs/comp –d FEAT_HIST set gSYMS_HISTsymbol = ('r2' 'r40')

set gSYMS_HISTline = ('11000' '0' ) set gSYMS_HISTpad = ('0' '110') set gSYMS_HISTarc = ('0' '0' )

(5):读取层的极性:

COM info,out_file=/tmp/info,args= -t layer –e $JOB/pcs/comp –d POLARITY set gPOLARITY = 'positive'

4.3.6:check范例:

(1):读取ERF参数:会得到各ERF的信息:

COM info,out_file=/tmp/info,args= -t check –e $JOB/pcs/fls_basic_analysis

–d ERF –o action=2

p2p 5 7 10

p2c 5 7 10 c2c 5 7 10 text2text 4 7 10 npth2p 8 10 12 npth2c 8 10 12 r2c 15 20 25 pth2c 10 12 14 via2c 9 11 14

作者:刘才林 完成于2008/3月 第12页共28页

第四章 GENESIS2000 内定变量

ar 5 7 9 pth_ar 5 7 9

…………………………………… it2h 5 7 10

net_too_large 10000 10001 10002 ignored_net 10000 10001 10002 p2p_con 10000 10001 10002 p2c_con 10000 10001 10002 p2l_con 10000 10001 10002 problem_con 10000 10001 10002

(2):读取分析结果的详细报告:

COM info,out_file=/tmp/info,args= -t check –e $JOB/pcs/fls_basic_analysis

–d MEAS –o action=2

p2p comp 1 mil r40 r40 SG 2.9520673 1.982353 2.9530673 1.982353 1 R p2p comp 1 mil r40 r40 SG 2.8290673 1.982353 2.8300673 1.982353 1 R p2p comp 1 mil r40 r40 SG 2.8700673 1.982353 2.8710673 1.982353 1 R p2p comp 1 mil r40 r40 SG 2.9110673 1.982353 2.9120673 1.982353 1 R p2p comp 1 mil r40 r40 SG 3.1160673 1.982353 3.1170673 1.982353 1 R p2p comp 1 mil r40 r40 SG 2.9930673 1.982353 2.9940673 1.982353 1 R p2p comp 1 mil r40 r40 SG 3.0340673 1.982353 3.0350673 1.982353 1 R p2p comp 1 mil r40 r40 SG 3.0750673 1.982353 3.0760673 1.982353 1 R p2p comp 1 mil r40 r40 SG 2.7880673 1.982353 2.70673 1.982353 1 R c2c comp 0.3 mil r2 r2 SG 2.3243272 4.0060018 2.3243144 4.0057042 1 R c2c comp 0.3 mil r2 r2 SG 2.3243272 4.5465018 2.3243144 4.5462042 1 R ………………………………………………………………………………………… ………………………………………………………………………………………… self_spacing comp 0.3 mil SG 0.5958538 3.884447 0.5958411 3.8841495 1 R self_spacing comp 0.3 mil SG 0.5958538 3.882147 0.5958411 3.8818495 1 R self_spacing comp 0.3 mil SG 0.5958538 4.473247 0.5958411 4.4729495 1 R miss_pth sold 43.3 x 43.3 mil S CR 2.7310925 1.4092437 0.02165 2 R miss_pth sold 43.3 x 43.3 mil S CR 0.947059 1.9731093 0.02165 2 R miss_pth sold 43.3 x 43.3 mil S CR 1.067227 1.159 0.02165 2 R

(3):读取分析的影响层:

COM info,out_file=/tmp/info,args= -t check –e $JOB/pcs/fls_basic_analysis

–d MEAS_DISP_ID –o action=2 comp 1 comp comp 2 comp drill comp 3 comp rout sold 1 sold sold 2 sold drill sold 3 sold rout

(4):读取check运行的时间:

COM info,out_file=/tmp/info,args= -t check –e $JOB/pcs/fls_basic_analysis

–d DURATION –o action=2

作者:刘才林 完成于2008/3月 第13页共28页

第四章 GENESIS2000 内定变量

set gDURATION = '8'

4.3.7:symbol信息:

(1):读取symbol的部件信息,得到的有各部件的个数:

COM info,out_file=/tmp/info,args= -t symbol –e $JOB/pcs/kk –d FEAT_LIST set gFEAT_HISTline = '0'

set gFEAT_HISTpad = '2' set gFEAT_HISTsurf = '0' set gFEAT_HISTarc = '0' set gFEAT_HISTtext = '0' set gFEAT_HISTtotal = '2'

(2):读取symbol的信息,得到symbol的大小、各symbol包含线部件个数、各symbol包含焊盘部件个数、各

symbol包含圆弧部件个数:

COM info,out_file=/tmp/info,args= -t symbol –e $JOB/pcs/kk –d SYMS_HIST

set gSYMS_HISTsymbol = ('r125') set gSYMS_HISTline = ('0' ) set gSYMS_HISTpad = ('2' ) set gSYMS_HISTarc = ('0' )

(3):读取填充的设置:

COM info,out_file=/tmp/info,args= -t symbol –e $JOB/pcs/kk –d FILL set gFILLdx = '0.1'

set gFILLdy = '0.1'

4.3.8:note的信息

(1):读取标记的详细信息:包括标记的日期、标记的时间、标记的用户、标记的位置、标记的文字内容。

COM info,out_file=/tmp/info,args= -t notes –e $JOB/pcs/drill/notes –d NOTE set gNOTEdate = ('11/09/2007' '11/09/2007' '11/09/2007') set gNOTEtime = ('10:47:35' '10:47:37' '10:47:37' ) set gNOTEuser = ('genesis' 'genesis' 'genesis' ) set gNOTEx = ('2.1791728' '2.1755248' '2.086512' ) set gNOTEy = ('2.3723228' '2.3540826' '2.35137' ) set gNOTEtext = ('' '' '' )

4.3.9:ncset的信息:

(1):读取ncset的输出格式的信息:

COM info,out_file=/tmp/info,args= -t ncset –e $JOB/pcs/drill/dd –d FORMAT set gFORMATname = 'Excellon2'

set gFORMATzeroes = 'trailing' set gFORMATunits = 'inch' set gFORMATtool_unit = 'inch' set gFORMATnf1 = '2' set gFORMATnf2 = '4' set gFORMATdecimal = 'no' set gFORMATincr = 'no' set gFORMATrep = 'sr'

(2):读取ncset的设置:包括涨缩、偏移等。

COM info,out_file=/tmp/info,args= -t ncset –e $JOB/pcs/drill/dd –d REG

作者:刘才林 完成于2008/3月 第14页共28页

第四章 GENESIS2000 内定变量

set gREGxoff = '1'

set gREGyoff = '1' set gREGmirror = 'no' set gREGangle = '0' set gREGxscale = '1.000000' set gREGyscale = '1.000000' set gREGscale_x_orig = '0' set gREGscale_y_orig = '0' set gREGxorigin = '1' set gREGyorigin = '1' set gREGversion = '0'

4.3.10:attributes的信息:

(1):读取属性的详细信息,且只读取第一组信息,信息包括,属性名等。

COM info,out_file=/tmp/info,args= -t attributes –e $JOB –d ATR –s 1 set gATRname = ('.area' )

set gATRchanged = ('no' ) set gATRcontext = ('system' ) set gATRtype = ('boolean') set gATRentity = ('feature') set gATRdef = ('no' ) set gATRmin_txt_len = ('' ) set gATRmax_txt_len = ('' ) set gATRoptions = ('' ) set gATRoptions_del = ('' ) set gATRmin_int_val = ('' ) set gATRmax_int_val = ('' ) set gATRmin_flt_val = ('' ) set gATRmax_flt_val = ('' )

4.4:内定参数的程序范例:

(1):一个计算当前料号为多少层的程序,程序内容如下: set layernum = 0

DO_INFO -t matrix -e $JOB/matrix set matrix_counter = 0 set L_NUM = 0 set INN_LAYERS = ( )

while ( $matrix_counter <= $#gROWcontext )

switch ($gROWcontext[$matrix_counter]) case empty: case misc:

@ matrix_counter++ continue default:

switch ($gROWlayer_type[$matrix_counter]) case signal:

作者:刘才林 完成于第15页共28页

2008/3月 第四章 GENESIS2000 内定变量

case power_ground: case mixed:

if ($gROWside[$matrix_counter] != \" \" && $gROWside[$matrix_counter] != \" \") then @ layernum++ endif

@ L_NUM++ endsw endsw @ matrix_counter++

end

echo $layernum

我们可以看到上面程序利用info指令读取了matrix的信息,我们使用上面的程序就可以根据层 的属性设置自动计算板层,而不需要在程序中再去输入。

(2):一个用程序找寻top面字符并将其设为工作层的程序:程序内容如下: #!/bin/csh

DO_INFO -t matrix -e $JOB/matrix set matrix_counter = 0 set L_NUM = 0 set SS_LAYER1 = ( )

while ( $matrix_counter <= $#gROWcontext ) switch ($gROWcontext[$matrix_counter]) case empty: case misc:

@ matrix_counter++ continue default:

switch ($gROWlayer_type[$matrix_counter]) case silk_screen:

if ($gROWside[$matrix_counter] == \"top\") then set SS_LAYER1 = ( $gROWname[$matrix_counter] )

echo $SS_LAYER1

COM display_layer,name=$SS_LAYER1,display=yes,number=1 COM work_layer,name=$SS_LAYER1 endif

endsw endsw @ matrix_counter++

end

由上面的程序我们可以自动找寻字符top层,如果有我们将其设为工作层,然后进行其它动作,如添加

pad等等。

(3):一个判断matrix中是否有wpnl这个step的小程序: DO_INFO -t matrix -e $JOB/matrix

echo $gCOLstep_name

作者:刘才林 完成于2008/3月 第16页共28页

第四章 GENESIS2000 内定变量

set martix_x = 1

while ($martix_x <= $gNUM_COLS)

if ($gCOLstep_name[$martix_x] == wpnl) then set namestep = 0 endif

echo $namestep @ martix_x++ end

4.5:各数据类别及数据参数的列表:

下面我们给出各数据类别及数据参数的列表以供大家参考,以知道我们从datebase中到底可以得到那些方面的信息:

表4-1:info指令获取详细数据类别及数据参数和选项 实体名(-t) root

数据类别(-d) JOBS_LIST EXISTS ATTR CHANGES EXISTS

job

FORMS_LIST FLOWS_LIST IS_CHANGED MATRIX_LIST STACKUPS_LIST STEPS_LIST SYMBOLS_LIST TEMPLATES_LIST WHEELS_LIST DATUM

数据参数(-p) name val x y xmin

LIMITS

step

NUM_SR

ymin xmax ymax xmin

SR_LIMITS

ymin xmax ymax

数据选项(-o) with_dep

作者:刘才林 完成于2008/3月 第17页共28页

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) step

NUM_REPEATS REPEAT 数据类别(-d) SR

数据参数(-p) step xa ya dx dy nx ny angle mirror flip xmin ymin xmax ymax step xa ya angle mirror flip xmin ymin xmax ymax

PROF_LIMITS

xmin ymin xmax ymax

PROF

ACTIVE_AREA

xmin ymin xmax ymax

LAYERS_LIST CHECKS_LIST NETS_LIST ATTR

name val

ETSETS_LIST IS_CHANGED

数据选项(-o)

作者:刘才林 完成于2008/3月 第18页共28页

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) step symbol

SYMS_HIST FILL

数据类别(-d) PROF_LENGTH LIMITS

数据参数(-p) xmin ymin xmax ymax dx dy symbol line pad arc

FEAT_HIST

line pad surf arc text total

ATTR

name val

FEATURES

break_sr select break_feat

eda

COMP

part refdes package centroidx centroidy npins pin0x pin0y side rotation mirror color serial limitminx

作者:刘才林 完成于2008/3月 第19页共28页

TH

NCOMPS

top bottom select top bottom select top bottom

数据选项(-o) select

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) eda

数据类别(-d) COMP

数据参数(-p) limitmaxx limitminy limitmaxy

comp

PART REFDES PACKAGE X Y NPINS SIDE ROTATION MIRROR COLOR SERIAL PIN0X PIN0Y LIMITMINX LIMITMAXX LIMITMINY LIMITMAXY PIN

num x y

ATTRIBUTE

name val

PROPERTIES

name val

layer

CONTEXT TYPE POLARITY SIDE DRL_START DRL_END FOIL_SIDE SHEET_SIDE ROW LIMITS

xmin ymin xmax ymax

SLOT_HIST

数据选项(-o) select top bottom

作者:刘才林 完成于2008/3月 第20页共28页

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) layer

NUM_TOOL TOOL

FEAT_HIST 数据类别(-d)

SYMS_HIST

数据参数(-p) symbol line pad arc line pad arc text surf total num count shape type type2 min_tol max_tol finish_size drill_size bit slot_len

TOOL_SLOTS TOOL_THICK TOOL_USER ATTR

name val

FEATURES

NCSETS_LIST AOISETS_LIST NCRSETS_LIST IS_CHANGED LPD

was_input is_defined polarity speed xstretch ystretch xshift

break_sr break_feat select select break_sr 数据选项(-o) break_sr

作者:刘才林 完成于2008/3月 第21页共28页

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) layer

数据类别(-d) LPD

数据参数(-p) yshift xmirror ymirror copper_area xcenter ycenter xcenter_inch ycenter_inch plot_kind1 plot_kind2 minvec advec minflash adflash conductors1 conductors2 conductors3 conductors4 conductors5 media resolution smoothing swap_axes def_ext_lpd res_value res_units enl_pol enl_other enl_panel overlap enl_img_sym enl_0_vecs enl_sym enl_sym_by sym_name1 enl_by1 sym_name2 enl_by2 sym_name3 enl_by3 sym_name4

数据选项(-o)

作者:刘才林 完成于2008/3月 第22页共28页

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) layer

数据类别(-d) LPD

数据参数(-p) enl_by4 sym_name5 enl_by5 sym_name6 enl_by6 sym_name7 enl_by7 sym_name8 enl_by8 sym_name9 enl_by9 sym_name10 enl_by10 enl_ctr_by device_type quality

LPM

参数与LPD的相同

数据选项(-o)

stackup

WIDTH HEIGHT TARGET_THICK TARGET_POS_TOL TARGET_NEG_TOL VENDOR COST THICK LAM_THICK MASK_LAM_THICK PLATED_THICK MASKPLATE_THICK IS_MIRROR CONSTRUCT PLATE_THICK MASK_THICK THICK_TYPE PILE

cost material weave thick pos_tol neg_tol

作者:刘才林 完成于2008/3月 第23页共28页

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) stackup

VALID IMP LAYER PRESSED 数据类别(-d) PILE

数据参数(-p) name cat_num vendor upsidedown material thick known side serial name oz model ref1 ref2 lyr dual_lyr imp imp_pos_tol imp_neg_tol target target_tol orig_width curr_width orig_space curr_space width_plus width_minus

ALLOW_CHANGE WIDTH_VAR ETCH_FACTOR MASK_ER FREQ RESIN_ER COPPER_LOSS VIA_PLATE_THICK SEQ_LAM (Array)

wheel

DCODE

layer num symbol angle mirror

数据选项(-o)

作者:刘才林 完成于2008/3月 第24页共28页

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) matrix

数据类别(-d) NUM_COLS NUM_ROWS NUM_LAYERS NUM_STEPS

ROW (Array)

数据参数(-p) row type name context layer_type polarity side drl_start drl_end foil_side sheet_side

COL

col type step_name

ATTR

name val

check

LAST_TIME DURATION NUM_ACT TITLE STATUS ERF CHK_ATTR

name val exists

MEAS

REPORT

MEAS_DISP_ID

attributes

FORCE_LIB NUM_ATR ATR

name

action action action action action action category index action category severity action action category layer deleted deleted 数据选项(-o) action

作者:刘才林 完成于2008/3月 第25页共28页

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t)

attributes

数据类别(-d) ATR

数据参数(-p) changed context type entity def min_txt_len max_txt_len options options_del min_int_val max_int_val min_flt_val max_flt_val

panel_classes

NUM_CLS CLS

name width height t_active b_active l_active r_active sr_margin sr_orient

netlist

NUM_NETS END_PT_TOP END_PT_BOT END_PT_TH NET_PT_TOP NET_PT_BOT NET_PT_TH

ncset

MACHINE NUM_SPLITS NUM_STAGES REG

xoff yoff mirror angle xscale yscale scale_x_orig scale_y_orig

数据选项(-o) deleted

作者:刘才林 完成于2008/3月 第26页共28页

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) ncset

FORMAT 数据类别(-d) REG

数据参数(-p) xorigin yorigin version name zeroes units tool_unit nf1 nf2 decimal incr rep

ncrset

FORMAT MACHINE REG

xoff yoff mirror angle xscale yscale scale_x_orig scale_y_orig xorigin yorigin version name zeroes units tool_unit nf1 nf2 decimal

etset

GRID_LIM SPLITS_LIST ADAPTER_NAME

ADAPTER_LIM

xmin ymin xmax ymax xmin ymin xmax ymax

作者:刘才林 完成于2008/3月 第27页共28页

split side

数据选项(-o) split split side

第四章 GENESIS2000 内定变量

表4-1续 实体名(-t) etset notes

数据类别(-d) TESTER_TYPE NOTE

数据参数(-p) date time user x y text

camtek-aoiset

NUM_X_FRAMES NUM_Y_FRAMES SCAN_AREA

xmin ymin xmax ymax

mania_aoiset

ANGLE MIRROR X_OFFSET Y_OFFSET RESOLUTION

数据选项(-o) split

作者:刘才林 完成于2008/3月 第28页共28页

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo6.cn 版权所有 赣ICP备2024042791号-9

违法及侵权请联系:TEL:199 18 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务