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 -d -p out_file=~/out_file, write_mode = 在我们把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
本站由北京市万商天勤律师事务所王兴未律师提供法律服务