在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 3125|回复: 34

[求助] LVS仿真电容电阻始终过不了

[复制链接]
发表于 2024-5-31 13:23:50 | 显示全部楼层 |阅读模式
100资产
跑LVS仿真,开始是电阻rndif在原理图中调用到版图中变为了rndif_ckt、 通过在规则文件中添加#DEFINE RES_PROPERTY R  将WL变为R 已经解决,但电容电阻错误的问题还是存在,也导入了empty_subckt.sp文件的问题还是没有解决,

现在就是电容和电阻中间的那根线存在问题,有哪位大佬可以指导一下或者分享一下各位的经验,鄙人感激不尽!!!!


11111111111111111111.png


最佳答案

查看完整内容

rpposab_ckt电阻学习一下
 楼主| 发表于 2024-5-31 22:25:02 | 显示全部楼层
问题解决了,是顶层金属的问题,规则中设置的金属层数目不得大于版图中所用到的金属层数目,在此感谢fe****ve这位前辈远程为我看出的问题!!,也谢谢大家评论区里面的解疑!!!
发表于 2024-5-31 13:23:51 | 显示全部楼层
rpposab_ckt电阻学习一下
发表于 2024-5-31 13:39:43 | 显示全部楼层
这个问题就是电阻电容识别不到
 楼主| 发表于 2024-5-31 13:40:48 | 显示全部楼层


Cheney聪 发表于 2024-5-31 13:39
这个问题就是电阻电容识别不到


是的,请问下您有什么好的解决方法吗

发表于 2024-5-31 13:47:53 | 显示全部楼层


MISU 发表于 2024-5-31 13:40
是的,请问下您有什么好的解决方法吗


先用i在pdk里面调一个你电路的电容电阻放在版图的边缘,run一下看看不能识别到
发表于 2024-5-31 13:54:29 | 显示全部楼层
你目前属于LVS从版图里面提取不到器件,你可以测试一下,新建一个layout,将版图这两个器件单独放入里面跑LVS,看提取出来的网表有没有这两个器件,如果网表没有这两个器件再继续排查什么原因造成的,是rule swtich设置不对,还是版图输出有问题
 楼主| 发表于 2024-5-31 13:55:07 | 显示全部楼层


Cheney聪 发表于 2024-5-31 13:47
先用i在pdk里面调一个你电路的电容电阻放在版图的边缘,run一下看看不能识别到 ...



识别不到,跑了LVS也没有任何多余的错误
11111111111111122222222.png
发表于 2024-5-31 14:00:02 | 显示全部楼层


MISU 发表于 2024-5-31 13:55
识别不到,跑了LVS也没有任何多余的错误


那你这lvs的rule可能有问题,看看你的rule吧
 楼主| 发表于 2024-5-31 14:03:39 | 显示全部楼层


Cheney聪 发表于 2024-5-31 14:00
那你这lvs的rule可能有问题,看看你的rule吧



#DEFINE MIM_PROPERTY C
#DEFINE RES_PROPERTY R  (这两句是后面加的)
///////////////////////////////////////////////////////////////////////////////////
// $RCSfile: SmicSP12R_cal018_epm_sali_p2mtx_18335155.lvs,v $                     //
// Calibre LVS Deck for SMIC 0.18um EEPROM 2P6M Salicide 1.8/3.3/5/15.5V Process.//
//                                                                               //
// Revision: 2.9                                                                 //
// $Date: 2010/08/18 03:16:19 $                                                  //
///////////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////////
// Revision History:                                                             //
// Rev.  Date       Who      What                                                //
// ----- ---------- -------- --------------------------------------------------- //
// V1.1  2004/11/15 Paul  Initial version.                                       //
// V1.2  2004/11/19 Paul  Add N18D(1.8V NMOS with TIM) for Mask Rom(Vt=-1V).     //
//                        Update RTIM resistance, PIP capacitance.               //
// V1.3  2004/12/06 Paul  1) Add GT CG resistors.                                //
//                        2) Update W L definition of NZVT155.                   //
//                        3) Update Sheet risistance base on PCM Draft.          //
//                        4) Update PIP Unit Capacitance.                        //
//                        5) Update terminal definition of resistors:            //
//                           RNDIF RPDIF RNDIFSAB RPDIFSAB                       //
// V1.4 2005/03/16  Yang  Add N18H,ZDIO50E2R,PDIO33E2R devices.                  //
// V1.5 2005/04/25  Yang  1) Modify Model name basing on SP                      //
//                        2) Update Sheet resistance basing on SP                //
//                        3) Add M2TEXT                                          //
// V1.6 2006/07/17  Cherry 1)Modify Model name basing on SP                      //
//                         2)Devide the PNP->PNP18A100E2R,PNP18A25E2R,PNP18A4E2R,//
//                           PNP33A100E2R,PNP33A25E2R,PNP33A4E2R.                //
//                         3)Add the RHRPO resistor basing on SP and update the  //
//                           sheet resistence basing on SP                       //
//                         4)Add diode PDIO33E2R,PDIO50E2R,PDIO155E2R,NDIO33E2R, //
//                           NDIO50E2R,NDIO155E2R,ZDIO50E2R,NZDIO155E2R,DNWDIOE2R//
//                         5)Change the following dummy layer names:             //
//                                    Res_NW --> RESNW;                          //
//                                    Res_AA --> RESAA;                          //
//                                    Res_P1 --> RESP1;                          //
// V1.7 2006/11/15 Cherry 1) Add 3T poly resistor based on SPICE Model.          //
//                        2) Add MIM capacitor based on SPICE Model.             //
//                        3) Add OPTION RES_PROPERTY.                            //
//                        4) Update sheet resistance based on SPICE Model.       //
// V1.8 2007/05/16 Cherry Based on the following Process Documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:6T        //
//                                                (Tech Dev. Rev.:0.7)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:4R        //
//                                                (Tech Dev. Rev.:1.3)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's modified:                                       //
//                        1)Turn off floating polygon check.                     //
//                        2)Modify res**_ckt terminal names from (n1,n2) to (PLUS,MINUS).//
//                        3)Modify the following property tolerance:             //
//                                                                               //
//                          Device Type     Property  from  to                   //
//                                                                               //
//                          Resistor        R         10%-->5%;                  //
//                          PNP             Area      0%--->5%;                  //
//                          resistor_ckt    W&L       0%--->5%;                  //
//                          MIM             C         10%-->5%;                  //
// V1.9 2008/03/11 Ashley Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:7T        //
//                                                (Tech Dev. Rev.:0.8)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:6R        //
//                                                (Tech Dev. Rev.:1.4)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Add 1.8V Native NMOS;                               //
//                                                                               //
//                        2) Add 1.8V N+Poly/NW MOS Varactor;                    //
//                                                                               //
//                        3) Comment definition of C1;                           //
//                                                                               //
// V2.0 2009/01/16 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:8T        //
//                                                (Tech Dev. Rev.:0.8)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:7R        //
//                                                (Tech Dev. Rev.:1.4)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) HVMOS NOT TOW in definition                         //
//                        2) Change device nanme : ZDIO50E2R to NZDIO50E2R       //
//                                                                               //
// V2.1 2009/03/26 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:8T        //
//                                                (Tech Dev. Rev.:0.8)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:7R        //
//                                                (Tech Dev. Rev.:1.4)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Revise gppopy -> gppoly                                 //
//                                    ptdpsub                                         //
//                                                                               //
// V2.2 2009/08/05 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:8T        //
//                                                (Tech Dev. Rev.:0.8)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:7R        //
//                                                (Tech Dev. Rev.:1.4)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Add LVS REDUCE SERIES/PARALLEL in ckt resistor      //
//                                                                               //
// V2.3 2009/11/27 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:9T        //
//                                                (Tech Dev. Rev.:0.8)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:9R        //
//                                                (Tech Dev. Rev.:1.5)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Update DR : 8T -> 9T                                 //
//                                    SP : 7R -> 9R                                 //
//                        2) Add MIM_PROPERTY , PIP_PROPERTY                     //
//                        3) Update Device name : MIM --> MIME2R                 //
//                                                        PIP --> PIPE2R                 //
//                                                        RTIMSAB --> RTIMSABE2R         //
//                                                        mim_ckt --> mime2r_ckt         //
//                                                        pip_ckt --> pipe2r_ckt         //
//                                                        rtimsab_ckt --> rtimsabe2r_ckt //
//                                                        pvar18_ckt  --> pvar18e2r_ckt  //
//                                                                               //
// V2.4 2009/12/03 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:9T        //
//                                                (Tech Dev. Rev.:0.8)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:9R        //
//                                                (Tech Dev. Rev.:1.5)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Optimize LVS REDUCE SERIES/PARALLEL in ckt resistor //
//                                ( Add : TOLERANCE W 0 L 0 )                         //
//                                                                               //
// V2.5 2009/12/04 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:9T        //
//                                                (Tech Dev. Rev.:0.8)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:9R        //
//                                                (Tech Dev. Rev.:1.5)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Update RTIMSABE2R Rsh : 685.14 -> 830                 //
//                                                                               //
// V2.6 2009/12/20 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:9T        //
//                                                (Tech Dev. Rev.:0.8)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:10R       //
//                                                (Tech Dev. Rev.:1.6)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Update SP : 9R -> 10R                               //
//                        2) Update definition of "gates" , "dnwtap"                 //
//                                                                               //
// V2.7 2010/02/02 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:10T       //
//                                                (Tech Dev. Rev.:0.9)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:11R       //
//                                                (Tech Dev. Rev.:1.7)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Update SP : 10R -> 11R                              //
//                                    DR :  9T -> 10T                                 //
//                        2) Update RS of RTIMSABE2R : 830 -> 592                 //
//                                                                               //
// V2.8 2010/03/24 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:10T       //
//                                                (Tech Dev. Rev.:0.9)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:11R       //
//                                                (Tech Dev. Rev.:1.7)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Update ndio33, ndio50, ndio155, nzdio50, nzdio155         //
//                                    pdio33, pdio50, pdio155 definition                 //
//                                                                               //
//                        2) Re-define gppoly & pvar_core_aux                    //
//                                                                               //
// V2.9 2010/08/16 Drincy Based on the following process documents:              //
//                                                                               //
//                        DESIGN RULE:            TD-EE18-DR-2002 Rev.:10T       //
//                                                (Tech Dev. Rev.:0.9)           //
//                        SPICE MODEL:            TD-EE18-SP-2001 Rev.:12R       //
//                                                (Tech Dev. Rev.:1.8)           //
//                        PCM SPEC:               TD-EE18-PC-2001 Rev.:2T        //
//                                                (Tech Dev. Rev.:0.2)           //
//                        MEMORY CELL DESIGN RULE:TD-EE18-CL-2001 Rev.:5T        //
//                                                (Tech Dev. Rev.:0.6)           //
//                        MEMORY CELL LAYOUT:     TD-EE18-CL-2003 Rev.:3T        //
//                                                (Tech Dev. Rev.:0.3)           //
//                                                                               //
//                        What's updated:                                        //
//                                                                               //
//                        1) Update RTIMSABE2R RS : 592 -> 695                         //
//                                               DW : 8.55E-08 -> 4.821E-08         //
//                                                                               //
//                        2) Redefine pipe2r_ckt : LR,WR,C                         //
//                                   compare C of pipe2r_ckt in TRACE PROPERTY         //
//                                                                               //
//                        3) Redefine mime2r_ckt : LR,WR                         //
//                                                                               //
// ----- ---------- ----- ------------------------------------------------------ //
///////////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////////
//                                                                               //
// DISCLAIMER                                                                    //
//                                                                               //
//   SMIC hereby provides the quality information to you but makes no claims,    //
// promises or guarantees about the accuracy, completeness, or adequacy of the   //
// information herein. The information contained herein is provided on an "AS IS"//
// basis without any warranty, and SMIC assumes no obligation to provide support //
// of any kind or otherwise maintain the information.                            //
//                                                                               //
//   SMIC disclaims any representation that the information does not infringe any//
// intellectual property rights or proprietary rights of any third parties.SMIC  //
// makes no other warranty, whether express, implied or statutory as to any      //
// matter whatsoever,including but not limited to the accuracy or sufficiency of //
// any information or the merchantability and fitness for a particular purpose.  //
// Neither SMIC nor any of its representatives shall be liable for any cause of  //
// action incurred to connect to this service.                                   //
//                                                                               //
//                                                                               //
// STATEMENT OF USE AND CONFIDENTIALITY                                          //
//                                                                               //
//   The following/attached material contains confidential and proprietary       //
// information of SMIC. This material is based upon information which SMIC       //
// considers reliable, but SMIC neither represents nor warrants that such        //
// information is accurate or complete, and it must not be relied upon as such.  //
// This information was prepared for informational purposes and is for the use   //
// by SMIC's customer only. SMIC reserves the right to make changes in the       //
// information at any time without notice.                                       //
//   No part of this information may be reproduced, transmitted, transcribed,    //
// stored in a retrieval system, or translated into any human or computer        //
// language, in any form or by any means, electronic, mechanical, magnetic,      //
// optical, chemical, manual, or otherwise, without the prior written consent of //
// SMIC. Any unauthorized use or disclosure of this material is strictly         //
// prohibited and may be unlawful. By accepting this material, the receiving     //
// party shall be deemed to have acknowledged, accepted, and agreed to be bound  //
// by the foregoing limitations and restrictions. Thank you.                     //
//                                                                               //
///////////////////////////////////////////////////////////////////////////////////

///////////////////////////////////////////////////////////////////////////////////
// Device Formula                                                                //
// ------------- ----------------------------- --------------------------------- //
// Name          Description                   Device Layer Operation            //
// ------------- ----------------------------- --------------------------------- //
// MOSFET Type:                                                                  //
//                                                                               //
// N18E2R          1.8V NMOS                     (GP*AA*SN*PW-PWI)               //
// NZ18E2R         1.8V Native NMOS              (GP*AA*SN*PW*PWI)               //
// P18E2R          1.8V PMOS                     (GP*AA*SP*NW)                   //
// N33E2R          3.3V NMOS                     (GT*AA*SN*TOW*ONO*DDD*TPW)      //
// P33E2R          3.3V PMOS                     (GT*AA*SP*TOW*ONO-DDD*DNW)      //
// N50E2R          5V HVNMOS         (GT*AA*SN*VTNH*HVPF*ONO*DDD*PSUB*5VHVNZ-TOW)//
// P50E2R          5V HVPMOS         (GT*AA*SP*ONO*DNW-TOW-RLHVP)                //
// NZ50E2R         5V HVZMOS         (GT*AA*SN-VTNH*HVPF*ONO*DDD*PSUB*5VHVNZ-TOW)//
// N155E2R         15.5V HVNMOS      (GT*AA*SN*VTNH*HVPF*ONO*DDD*PSUB-5VHVNZ-TOW)//
// NZ155E2R        15.5V HVZMOS      (GT*AA*SN-VTNH*HVPF*ONO*DDD*PSUB-5VHVNZ-TOW)//
// P155E2R         15.5V HVPMOS      (GT*AA*SP*ONO*DNW*RLHVP*SAB-TOW)            //
//                                                                               //
//------------------------------------------------------------------------------ //
//                                                                               //
// Resistor Type:                                                                //
//                                                                               //
// RNDIF           N+diff resistor w/i salicide  (RESAA*SN*AA-SAB)               //
// RPDIF           P+diff resistor w/i salicide  (RESAA*SP*AA-SAB)               //
// RNPO            N+ GP resistor w/i salicide   (RESP1*GP*SN-SAB)               //
// RPPO            P+ GP resistor w/i salicide   (RESP1*GP*SP-SAB)               //
// RNWAA           Nwell Resistor under AA       (RESNW*NW*AA*SAB)               //
// RNWSTI          Nwell Resistor under STI      (RESNW*NW-AA-SAB)               //
// RNDIFSAB        N+diff resistor w/o salicide  (RESAA*SN*AA*SAB)               //
// RPDIFSAB        P+diff resistor w/o salicide  (RESAA*SP*AA*SAB)               //
// RNPOSAB         N+ GP resistor w/o salicide   (RESP1*GP*SN*SAB)               //
// RPPOSAB         P+ GP resistor w/o salicide   (RESP1*GP*SP*SAB)               //
// RHRPO           High Resistance Poly          (HRPDMY*GP*HRP*SAB-RESP3T)      //
// RTIMSABE2R      TIM resistor                  (AA*TIM*HVPF*GT*ONO*PSUB*RESDMY)//
// RM1             Metal1 Resistor               (M1*M1R)                        //
// RM2             Metal2 Resistor               (M2*M2R)                        //
// RM3             Metal3 Resistor               (M3*M3R)                        //
// RM4             Metal4 Resistor               (M4*M4R)                        //
// RM5             Metal5 Resistor               (M5*M5R)                        //
// RM6             Metal6 Resistor               (M6*M6R)                        //
//                                                                               //
// RNPO_3T         N+ GP resistor w/i salicide(3 terminal) (RESP3T*GP*SN-SAB)    //
// RPPO_3T         P+ GP resistor w/i salicide(3 terminal) (RESP3T*GP*SP-SAB)    //
// RNPOSAB_3T      N+ GP resistor w/o salicide(3 terminal) (RESP3T*GP*SN*SAB)    //
// RPPOSAB_3T      P+ GP resistor w/o salicide(3 terminal) (RESP3T*GP*SP*SAB)    //
// RHRPO_3T        High Resistance Poly(3 terminal)        (RESP3T*GP*HRP*SAB*HRPDMY)//
//                                                                               //
//------------------------------------------------------------------------------ //
//                                                                               //
// DIODE Type:                                                                   //
//                                                                               //
// PDIO18E2R       P+/NW Diode                   (DSTR*SP*AA*NW-TPW-DDD-TOW)     //
// PDIO33E2R       P+/DNW Diode                  (DSTR*SP*AA*DNW*TOW*ONO)        //
// PDIO50E2R       P+/DNW Diode                  (DSTR*SP*AA*DNW-TOW-SAB)        //
// PDIO155E2R      P+/DNW Diode                  (DSTR*SP*AA*DNW-TOW*SAB*RLHVP)  //
// NDIO18E2R       N+/PW Diode                   (DSTR*SN*AA*PW-TPW-DDD-TOW)     //
// NDIO33E2R       N+/TPW Diode                  (DSTR*SN*AA*TPW*DDD*ONO-TOW)    //
// NDIO50E2R       N+/PSUB DIode                 (DSTR*SN*AA*PSUB*DDD*ONO*HVPF*VTNH*5VHVNZ-TOW)//
// NDIO155E2R      N+/PSUB DIode                 (DSTR*SN*AA*PSUB*DDD*ONO*HVPF*VTNH-5VHVNZ-TOW)//
// NZDIO50E2R      NZ+/PSUB Diode                (DSTR*SN*AA*PSUB*DDD*ONO*HVPF-VTNH*5VHVNZ-TOW)//
// NZDIO155E2R     NZ+/PSUB Diode                (DSTR*SN*AA*PSUB*DDD*ONO*HVPF-VTNH-5VHVNZ-TOW)//
// NWDIOE2R        NW/PW Diode                   (DSTR*NW*PW)                    //
// DNWDIOE2R       DNW/PSUB Diode                (DSTR*DNW)                      //
//                                                                               //
//------------------------------------------------------------------------------ //
//                                                                               //
// BJT Type:                                                                     //
//                                                                               //
// PNP18A100E2R    1.8V PNP BJT                  (DMPNP*SP*AA*NW)                //
// PNP18A25E2R     1.8V PNP BJT                  (DMPNP*SP*AA*NW)                //
// PNP18A4E2R      1.8V PNP BJT                  (DMPNP*SP*AA*NW)                //
// PNP33A100E2R    3.3V PNP BJT                  (DMPNP*SP*AA*DNW)               //
// PNP33A25E2R     3.3V PNP BJT                  (DMPNP*SP*AA*DNW)               //
// PNP33A4E2R      3.3V PNP BJT                  (DMPNP*SP*AA*DNW)               //
//                                                                               //
//------------------------------------------------------------------------------ //
//                                                                               //
// Capacitor Type:                                                               //
//                                                                               //
// PIPE2R          PIP Capacitor                 (GT*ONO*CG*SN)                  //
// MIME2R          MIM Capacitor                 (MIM*M5[M4,M3,M2]*V5[V4,V3,V2]) //
//                                                                               //
//-------------------------------------------------------------------------------//
//                                                                               //
// MOS Varactor:                                                                 //
//                                                                               //                           
// pvar18e2r_ckt   1.8V N+Poly/NW MOS Varactor   (CNGATE = AA*GT*SN*NW)          //
//                                                                               //
//------------------------------------------------------------------------------ //
//                                                                               //
// Memory Cell:                                                                  //
//                                                                               //
// NSG       N SELECT GATE            (GT*AA*VTNH*ONO*SAB*DDD*BITCEL*PSUB)       //
// NCG       N ERASE/PROGRAM GATE     (GT*AA*VTNH*ONO*SAB*CG*TIM*TOW*BITCEL*PSUB)//
//                                                                               //
//------------------------------------------------------------------------------ //
//                                                                               //
// *** The following devices are not included in SPICE Model:                    //
//                                                                               //
// N18D            1.8V NMOS(Vt=-1V)             (GP*AA*SN*TIM*PW)               //
// N18H            1.8V NMOS                     (GP*AA*SN-TIM*PW*CODE)          //
// C1              1.8V NMOS in nwell            (GP*AA*SN*NW)                   //
// CGTTOW          Buried N+ GT/TOW Capacitor    (GT*ONO*AA*SN*NW*TIM*TOW)       //
// RPGT            P+ GT resistor w/i salicide   (RESP1*GT*SN-SAB)               //
// RNGTSAB         N+ GT resistor w/o salicide   (RESP1*GT*SN*SAB)               //
// RPGTSAB         P+ GT resistor w/o salicide   (RESP1*GT*SP*SAB)               //
// RNCGSAB         N+ CG resistor w/o salicide   (RESP1*CG*SP*SAB)               //
//                                                                               //
///////////////////////////////////////////////////////////////////////////////////
//                                                                               //
// PW = BULK-NW-PSUB-DNW-TPW                                                     //
//                                                                               //
///////////////////////////////////////////////////////////////////////////////////


///////////////////////////////////////////////////////////////////////////////////
//                             Environment Setting                               //
///////////////////////////////////////////////////////////////////////////////////


//---------------------------------------------------------------------------------

//*OPTION 1: Define TOP Metal. The value can be 6, 5, 4, 3

#DEFINE TOPMETAL 6

//----------------------------------------------------------------------------------

//*OPTION 2: Define ERC Check or Not. The value can be TRUE or FALSE(Upper Case).

#DEFINE ERCCHECK TRUE

//----------------------------------------------------------------------------------

//*OPTION 3: Define Property of resistor. The value can be WL or R.
//* WL(Upper Case): Using W & L as the property of Resistor.
//* R(Upper Case) : Using R as the property of Resistor.

#DEFINE RES_PROPERTY

//----------------------------------------------------------------------------------

//*OPTION 4: Define Property of MIM. The value can be WL or C.
//* WL(Upper Case): Using WR & LR as the property of MIM.
//* C(Upper Case) : Using C as the property of MIM.

#DEFINE MIM_PROPERTY

//----------------------------------------------------------------------------------

//*OPTION 5: Define Property of PIP. The value can be WL or C.
//* WL(Upper Case): Using WR & LR as the property of PIP.
//* C(Upper Case) : Using C as the property of PIP.

#DEFINE PIP_PROPERTY WL

//----------------------------------------------------------------------------------

//*OPTION 6: Define interface resistance or not. The value can be TRUE or FALSE.
//*TRUE(Upper Case)  : Total resistance R = Rsh*L/(W-2*DW)+2*Rint
//*FALSE(Upper Case) : Total resistance R = Rsh*L/(W-2*DW)

#DEFINE ADD_RINT TRUE

//----------------------------------------------------------------------------------

SOURCE PATH "test_res_ckt.cdl"
SOURCE PRIMARY "test_res_ckt"
SOURCE SYSTEM SPICE

LAYOUT PATH "test_res_ckt.gds"
LAYOUT PRIMARY "test_res_ckt
LAYOUT SYSTEM GDSII

LVS REPORT "lvs.rep"
LVS REPORT OPTION A B C D S

UNIT CAPACITANCE FF
UNIT RESISTANCE OHM
UNIT LENGTH U

ERC MAXIMUM RESULTS 100
ERC RESULTS DATABASE erc.db
ERC SUMMARY REPORT   erc.sum
MASK SVDB DIRECTORY "svdb" QUERY
FLAG SKEW YES
FLAG OFFGRID YES
LVS SPICE PREFER PINS          YES
LVS ISOLATE SHORTS             YES
LVS RECOGNIZE GATES            NONE
LVS ABORT ON SUPPLY ERROR      NO
LVS ALL CAPACITOR PINS SWAPPABLE YES
LVS IGNORE PORTS               NO
LVS CHECK PORT NAMES           YES
LVS REDUCE PARALLEL BIPOLAR    YES
LVS REDUCE PARALLEL MOS        YES
LVS REDUCE PARALLEL DIODES     YES
LVS REDUCE PARALLEL CAPACITORS YES
LVS REDUCE PARALLEL RESISTORS  YES
LVS REDUCE SERIES RESISTORS    YES
LVS REDUCE SERIES CAPACITORS   YES
LVS REDUCE SPLIT GATES         YES
LVS FILTER UNUSED OPTION AB RC RE RG
LVS PROPERTY RESOLUTION MAXIMUM 65536
LAYOUT TOP LAYER M1 V1 M2 V2 M3 V3 M4 V4 M5 V5 M6
VIRTUAL CONNECT COLON YES

LVS GROUND NAME "VSS" "SAVSS?" "?GND?" "?VSS?" "?vss?" "?gnd?"
LVS POWER NAME  "VDD" "SAVDD?" "?VDD?" "?VCC?" "?vcc?" "?vdd?"

//////////////////////////////////////////////
// Layer Mapping                            //  
//////////////////////////////////////////////
LAYER AA       10 12 13 // Define Active Area
LAYER NW       14 // Define NW tube for 1.8v PMOS.
LAYER TPW      16 // Define 3.3V MVPW tube for special 3.3v NMOS.
LAYER DNW      19 // Define 16vHVNW tube for Quasi-HVPMOS & Real-HVPMOS, and 3.3v MVNW for sppecial 3.3v NMOS.
LAYER CODE     25 // Define N18H device
LAYER TIM      27 // Define EEPROM FG transistor channel length and NCODE implant.
LAYER GTi      30 // Define HV Poly1/Cell Select Floating Gate
LAYER HRP      39 // High resistant Poly Imp.
LAYER SN       40 // N+ S/D implant region
LAYER SP       43 // P+ S/D implant region
LAYER SAB      48 // Resist Protect Oxide/Salicide Block
LAYER VTNH     49 // NCH HV VT adjust Implant
LAYER CT       50 // Contact Hole
LAYER TOW      55 // Tunnel Oxide Window
LAYER ONO      56 // ONO Layer Etch
LAYER CG       57 // Control Gate (poly2)
LAYER MIM      58 // Top plate of MIM Capacitor
LAYER M1       61 // Metal1
LAYER M2       62 // Metal2
LAYER IGNORE   363
LAYER MAP 63 TEXTTYPE 63 363
LAYER M3       63 // Metal3
LAYER M4       64 // Metal4
LAYER M5       65 // Metal5
LAYER M6       66 // Metal6
LAYER V1       70 // Via1
LAYER V2       71 // Via2
LAYER V3       72 // Via3
LAYER V4       73 // Via4
LAYER V5       74 // Via5
LAYER PWI      81 // Define 1.8V LV Native device
LAYER GP       83 // Gate Poly(poly2)
LAYER DDD      84 // DDD Implant
LAYER PSUB     85 // Psub area

LAYER RESDMY   90 // Define resistors other than covered by RESNW RESAA RESP1.
LAYER RLHVP    91 // Define Real-HVPMOS
LAYER 5VHVNZ   92 // Define 5V HVN/ZMOS
LAYER BITCEL   93 // Define EEArray BitCell
LAYER RESNW    95 // Dummy for NW resistor
LAYER MAP      96 DATATYPE 0 960
LAYER RESP1    960 // Dummy for Poly resistor
LAYER MAP      96 DATATYPE 1 961
LAYER RESP3T   961 // Dummy for Poly resistor
LAYER RESAA    97 // Dummy for AA resistor
LAYER HVPF     98 // Define HV-PField Implant Block Region.
LAYER SUBD     300
LAYER MAP 131 DATATYPE 1 300 // Dummy for psub
LAYER DMPNP    134  // Dummy for BJT
LAYER CAPBP    137  // Dummy for Cap
LAYER DSTR     138  // Dummy for Diode
LAYER M1R      171  // Dummy for Metal1 Resistor
LAYER M2R      172  // Dummy for Metal2 Resistor
LAYER M3R      173  // Dummy for Metal3 Resistor
LAYER M4R      174  // Dummy for Metal4 Resistor
LAYER M5R      175  // Dummy for Metal5 Resistor
LAYER M6R      176  // Dummy for Metal6 Resistor
LAYER VARMOS   191  // Dummy for Mos Varactor
LAYER HRPDMY   210  // Dummy patten for HRP Resistor
LAYER MIMDMY   211  // Dummy for MIM capacitor

TEXT LAYER 141 ATTACH 141 metal1
PORT LAYER TEXT 141
TEXT LAYER 61 ATTACH 61 metal1
PORT LAYER TEXT 61

#IFDEF TOPMETAL 6
TEXT LAYER 142 ATTACH 142 metal2
PORT LAYER TEXT 142
TEXT LAYER 143 ATTACH 143 metal3
PORT LAYER TEXT 143
TEXT LAYER 144 ATTACH 144 metal4
PORT LAYER TEXT 144
TEXT LAYER 145 ATTACH 145 metal5a
PORT LAYER TEXT 145
TEXT LAYER 146 ATTACH 146 metal6
PORT LAYER TEXT 146
TEXT LAYER 62 ATTACH 62 metal2
PORT LAYER TEXT 62
TEXT LAYER 63 ATTACH 63 metal3
PORT LAYER TEXT 63
TEXT LAYER 64 ATTACH 64 metal4
PORT LAYER TEXT 64
TEXT LAYER 65 ATTACH 65 metal5a
PORT LAYER TEXT 65
TEXT LAYER 66 ATTACH 66 metal6
PORT LAYER TEXT 66
#ENDIF

#IFDEF TOPMETAL 5
TEXT LAYER 142 ATTACH 142 metal2
PORT LAYER TEXT 142
TEXT LAYER 143 ATTACH 143 metal3
PORT LAYER TEXT 143
TEXT LAYER 144 ATTACH 144 metal4a
PORT LAYER TEXT 144
TEXT LAYER 145 ATTACH 145 metal5
PORT LAYER TEXT 145
TEXT LAYER 62 ATTACH 62 metal2
PORT LAYER TEXT 62
TEXT LAYER 63 ATTACH 63 metal3
PORT LAYER TEXT 63
TEXT LAYER 64 ATTACH 64 metal4a
PORT LAYER TEXT 64
TEXT LAYER 65 ATTACH 65 metal5
PORT LAYER TEXT 65
#ENDIF

#IFDEF TOPMETAL 4
TEXT LAYER 142 ATTACH 142 metal2
PORT LAYER TEXT 142
TEXT LAYER 143 ATTACH 143 metal3a
PORT LAYER TEXT 143
TEXT LAYER 144 ATTACH 144 metal4
PORT LAYER TEXT 144
TEXT LAYER 62 ATTACH 62 metal2
PORT LAYER TEXT 62
TEXT LAYER 63 ATTACH 63 metal3a
PORT LAYER TEXT 63
TEXT LAYER 64 ATTACH 64 metal4
PORT LAYER TEXT 64
#ENDIF

#IFDEF TOPMETAL 3
TEXT LAYER 143 ATTACH 143 metal3
PORT LAYER TEXT 143
TEXT LAYER 63 ATTACH 63 metal3
PORT LAYER TEXT 63
TEXT LAYER 142 ATTACH 142 metal2a
PORT LAYER TEXT 142
TEXT LAYER 62 ATTACH 62 metal2a
PORT LAYER TEXT 62
#ENDIF

//////////////////////////////////////////////
// Loigc Operation                          //
//////////////////////////////////////////////

//*Form Bulk layer
DRC:1   = EXTENT
BULK    = SIZE DRC:1 BY 1.0

//*Define Pwell layer
pwell   = BULK NOT ((((((SIZE SUBD BY 0.005) NOT SUBD) OR NW) OR DNW) OR PSUB) OR TPW)

//*Define original P/N diffusion Area
pdifi   = AA AND SP
ndifi   = AA AND SN

//*Divide resistor Dummy to with/without SAB
hresd   = RESAA AND SAB
hresdd  = RESAA INTERACT SAB
lresd   = RESAA NOT hresdd

hresp   = (RESP1 NOT RESP3T) AND SAB
hrespd  = (RESP1 NOT RESP3T) INTERACT SAB
lresp   = (RESP1 NOT RESP3T) NOT hrespd

hresp_3t   = RESP3T AND SAB
hrespd_3t  = RESP3T INTERACT SAB
lresp_3t   = RESP3T NOT hrespd_3t

//*Define AA resistor
rdsab   = AA AND hresd
rdnosab = AA AND lresd

AA2   = AA NOT (rdsab OR rdnosab)

pdrsab  = rdsab AND SP
ndrsab  = rdsab AND SN
pdrnosab= rdnosab AND SP
ndrnosab= rdnosab AND SN

//*Define P+ Poly resistor
ppoly   = GP AND SP
pprsab  = ppoly AND hresp
pprnosab = ppoly AND lresp

pprsab_3t  = ppoly AND hresp_3t
pprnosab_3t = ppoly AND lresp_3t
pprsab_3t_nw = pprsab_3t AND nwell
pprsab_3t_pw = pprsab_3t NOT nwell
pprnosab_3t_nw = pprnosab_3t AND nwell
pprnosab_3t_pw = pprnosab_3t NOT nwell

//*Define N+ Poly resistor
npoly   = GP AND SN
nprsab  = npoly AND hresp
nprnosab = npoly AND lresp

nprsab_3t  = npoly AND hresp_3t
nprnosab_3t = npoly AND lresp_3t
nprsab_3t_nw = nprsab_3t AND nwell
nprsab_3t_pw = nprsab_3t NOT nwell
nprnosab_3t_nw = nprnosab_3t AND nwell
nprnosab_3t_pw = nprnosab_3t NOT nwell

//*Define HRP poly resisitor
hrppoly = GP AND HRP
hrpdums = HRPDMY AND SAB
hrppo   = (hrppoly AND hrpdums) NOT RESP3T

hrppo_3t = (hrppoly AND hrpdums) AND RESP3T
hrppo_3t_nw = hrppo_3t AND nwell
hrppo_3t_pw = hrppo_3t NOT nwell

//*subtract Poly used as resistor
gppoly_3t = ((nprsab_3t OR nprnosab_3t) OR (pprsab_3t OR pprnosab_3t)) OR hrppo_3t
gppoly1   = GP  NOT ((((pprsab OR pprnosab) OR (nprsab OR nprnosab)) OR hrppo) OR gppoly_3t)

//*Define GT resistor
rpgtnosab = (GTi AND lresp) AND SP
rgtsab   = GTi AND hresp
rngtsab  = rgtsab AND SN
rpgtsab  = rgtsab AND SP
GT = GTi NOT ((rngtsab OR rpgtsab) OR rpgtnosab)

//*Define CG resistor
rncgsab = (CG AND hresp) AND SN
cgpoly = CG NOT rncgsab

//*Define NW Resistor
rnw    = NW AND RESNW
rnwaa  = rnw AND (AA AND SAB)
rnwsti = rnw NOT (AA AND SAB)
nwell  = NW NOT rnw

//*Define Metal Resistors
rm1     = M1 AND M1R
metal1  = M1 NOT M1R

rm2     = M2 AND M2R
metal2  = M2 NOT M2R

#IFDEF TOPMETAL 6
rm3     = M3 AND M3R
metal3  = M3 NOT M3R
rm4     = M4 AND M4R
metal4  = M4 NOT M4R
rm5     = M5 AND M5R
metal5  = M5 NOT M5R
rm6     = M6 AND M6R
metal6  = M6 NOT M6R
#ENDIF

#IFDEF TOPMETAL 5
rm3     = M3 AND M3R
metal3  = M3 NOT M3R
rm4     = M4 AND M4R
metal4  = M4 NOT M4R
rm5     = M5 AND M5R
metal5  = M5 NOT M5R
#ENDIF

#IFDEF TOPMETAL 4
rm3     = M3 AND M3R
metal3  = M3 NOT M3R
rm4     = M4 AND M4R
metal4  = M4 NOT M4R
#ENDIF

#IFDEF TOPMETAL 3
rm3     = M3 AND M3R
metal3  = M3 NOT M3R
#ENDIF

//*Define MIM Capacitor and Inductor
#IFDEF TOPMETAL 6
mimcap = metal5 AND (MIM ENCLOSE V5)
metal5a = metal5 NOT mimcap

via5a   = V5 AND MIM
via5b   = V5 NOT via5a
#ENDIF

#IFDEF TOPMETAL 5
mimcap  = metal4 AND (MIM ENCLOSE V4)
metal4a = metal4 NOT mimcap

via4a   = V4 AND MIM
via4b   = V4 NOT via4a
#ENDIF
#IFDEF TOPMETAL 4
mimcap  = metal3 AND (MIM ENCLOSE V3)
metal3a = metal3 NOT mimcap

via3a   = V3 AND MIM
via3b   = V3 NOT via3a
#ENDIF

#IFDEF TOPMETAL 3
mimcap  = metal2 AND (MIM ENCLOSE V2)
metal2a = metal2 NOT mimcap

via2a   = V2 AND MIM
via2b   = V2 NOT via2a
#ENDIF


//*Define GT/CG Capacitor
cgt1 = ((GT AND (cgpoly ENCLOSE CT)) NOT INTERACT AA ) AND ONO
cgt  = cgt1 AND SN

//gt1    = GT  NOT cgt

//*Divide AA to each WELL
ndif = AA2 AND SN
pdif = AA2 AND SP
ntdnw1    = ndif AND NW
ntddnw    = ndif AND DNW
ptddnw    = pdif AND DNW

pdiffnw   = ((AA2 NOT ntdnw1) INTERACT SP) AND NW
pdiffdnw  = ((AA2 NOT ntddnw) INTERACT SP) AND DNW
ndiffdnw  = ((AA2 NOT ptddnw) INTERACT SN) AND DNW

ndiffpsub1 = ndif AND PSUB
ndiffpw   = ndif AND pwell
ndifftpw  = ndif AND TPW

//ptdpsub   = (pdif AND PSUB) AND HVPF
ptdpsub   = pdif AND PSUB
ptdpw     = pdif AND pwell
ptdtpw    = pdif AND TPW

//*Define RIM Resistor.
rtim1 = ((((ndiffpsub1 AND ONO) AND TIM) AND GT) AND HVPF) NOT BITCEL
rtim  = rtim1 AND RESDMY

//*Define Buried N+ POLY1/TOW Capacitor.
ctowaa = (((ntdnw1 AND TIM) AND TOW) AND ONO) AND GT
ntdnw2 = ntdnw1 NOT ctowaa

gtpoly = GT NOT (GT INTERACT rtim)
ndiffpsub = ndiffpsub1 NOT rtim

//*Define 1.8V Device Gate
ngate18a = (gppoly1 AND ndiffpw) NOT TIM
ngate18h = ngate18a AND CODE

ngate18_all = ngate18a NOT CODE
ngate18     = ngate18_all NOT PWI
nzgate18    = ngate18_all AND PWI

ngate18d= (gppoly1 AND ndiffpw) AND TIM
pgate18 = gppoly1 AND pdiffnw

//cngate18_all = (gppoly1 AND ntdnw2) NOT VARMOS

pvar_core_aux  = (gppoly1 AND ntdnw2) AND VARMOS
pvar_core      = GP ENCLOSE pvar_core_aux

gppoly = gppoly1 NOT ((ngate18 OR pgate18) OR pvar_core_aux)

nsdpw1 = ndiffpw NOT ((ngate18_all OR ngate18d) OR ngate18h)
psdnw1 = pdiffnw NOT pgate18
//ntdnw  = ntdnw2 NOT cngate18_all
ntdnw  = ntdnw2 NOT pvar_core_aux

//*Define 3.3V Device Gate
ngate33 = (((gtpoly AND ndifftpw) AND ONO) AND TOW) AND DDD
pgate33 = ((gtpoly AND pdiffdnw) AND ONO) AND TOW

nsdtpw = ndifftpw NOT ngate33

//*Define 5v/15.5V Devices gate
//hngt1 = (gtpoly AND ndiffpsub) AND ONO
//hngt3 = hngt1 AND HVPF
//hngt4 = hngt1 NOT HVPF
hngt1 = ((gtpoly AND ndiffpsub) AND HVPF) AND ONO
hngt3 = ((gtpoly AND ndiffpsub) NOT HVPF) AND ONO
hngt2 = hngt1 AND VTNH
hzngate = ((hngt1 NOT hngt2) AND DDD) NOT TOW
hngate = ((hngt2 NOT BITCEL) AND DDD) NOT TOW
cellgt = (hngt3 AND BITCEL ) AND SAB
ncgate1 = ((cgpoly AND cellgt) INTERACT TIM) INTERACT TOW
ncgate  = ncgate1 NOT TIM
nsgate  = (cellgt NOT ncgate1) INTERACT DDD

hngate50 = hngate AND 5VHVNZ
hngate155 = hngate NOT 5VHVNZ
hzngate50 = hzngate AND 5VHVNZ
hzngate155 = hzngate NOT 5VHVNZ

hpgate = ((gtpoly AND pdiffdnw) AND ONO) NOT TOW
hpgate50  = hpgate NOT RLHVP
hpgate155 = ((hpgate NOT hpgate50) AND SAB) NOT TOW

hngtall = (((ngate33 OR hngate) OR hzngate) OR nsgate) OR ncgate
//gtpoly = gtpoly NOT ((pgate33 OR hpgate) OR hngtall)

//cgpoly = CG NOT ncgate
nsdpsub = ndiffpsub NOT hngtall
psddnw1 = pdiffdnw NOT (pgate33 OR hpgate)


//*Define P+/NW Diode
pdio18 = psdnw1 AND DSTR
pdio2 = psddnw1 AND DSTR
pdio33 = pdio2 AND TOW
pdio3 = (pdio2 NOT TOW) AND ONO
pdio155 = pdio3 INTERACT SAB
pdio50 = pdio3 NOT pdio155
psdnw2 = psdnw1 NOT pdio18
psddnw2= psddnw1 NOT pdio2

//*Define NW/PW Diode
nwdio  = (nwell AND DSTR) NOT INTERACT pdio18
dnwdio = (DNW AND DSTR) NOT INTERACT pdio2

//*Define N+/PW Diode
ndio18 = (((nsdpw1 AND DSTR) NOT TOW) NOT DDD) NOT ONO
ndio33 = (((nsdtpw AND DSTR) AND TOW) AND DDD) AND ONO
nsdpw  = nsdpw1 NOT ndio18

//*Define N+/PSUB Diode
ndiffpsub2 = ndiffpsub1 NOT ((((hngate50 OR hzngate50) OR hngate155 ) OR  hzngate155 ) OR dnwdio )
zdio    = ndiffpsub2 AND DSTR
zdio2   = zdio NOT VTNH
nzdio50  = ((((zdio2 AND 5VHVNZ) NOT TOW) AND DDD) AND ONO) AND HVPF
nzdio155 = ((((zdio2 NOT 5VHVNZ) NOT TOW) AND DDD) AND ONO) AND HVPF
ndio50   = (((((zdio AND VTNH) AND 5VHVNZ) NOT TOW) AND DDD) AND ONO) AND HVPF
ndio155  = (((((zdio AND VTNH) NOT 5VHVNZ) NOT TOW) AND DDD) AND ONO) AND HVPF

//*Define PSUB for DIO
PSUBDSTR = PSUB OR DSTR

//*Define v-BJT PNP
pnpemit18 = psdnw2 AND DMPNP
pnpemit33 = psddnw2 AND DMPNP
pnpbase = nwell INTERACT pnpemit18
pnpbase2 = DNW INTERACT pnpemit33
collsur = pwell TOUCH pnpbase
collsur2 =TPW TOUCH pnpbase2
coll = collsur OR pnpbase
coll2 = collsur2 OR pnpbase2
pnpcoll = STAMP coll BY pwell
pnpcoll2 = STAMP coll2 BY TPW
pnpemit18a4   = AREA pnpemit18 >3.9 <4.1
pnpemit18a25  = AREA pnpemit18 >24.9 <25.1
pnpemit18a100 = AREA pnpemit18 >99.9 <100.1
pnpemit33a4   = AREA pnpemit33 >3.9 <4.1
pnpemit33a25  = AREA pnpemit33 >24.9 <25.1
pnpemit33a100 = AREA pnpemit33 >99.9 <101.1

psdnw = psdnw2 NOT pnpemit18
psddnw = psddnw2 NOT pnpemit33

//*Define DIF resistor terminal.
rnsd = (nsdpw OR nsdpsub) OR nsdtpw
rpsd = psdnw OR psddnw

//*Divide CT to GPcont,GTcont,CGcont and dfCont
CGcont = CT AND cgpoly
ct_1   = CT NOT CGcont
GTcont = ct_1 AND gtpoly
ct_2   = ct_1 NOT GTcont
GPcont = ct_2 AND gppoly
dfcont = ct_2 NOT GPcont

//*Define layer for MIM_RF to get WR/LR
#IFDEF TOPMETAL 6
mim_wr=size metal6 by 0.41
#ENDIF
#IFDEF TOPMETAL 5
mim_wr=size metal5 by 0.41
#ENDIF
#IFDEF TOPMETAL 4
mim_wr=size metal4 by 0.41
#ENDIF
#IFDEF TOPMETAL 3
mim_wr=size metal3 by 0.41
#ENDIF

//*Define layers for ERC check
ernwell   = nwell TOUCH rnw
bnwell    = nwell INTERACT DMPNP
nwtap     = ntdnw NOT (ernwell OR bnwell)
//dnwtap    = COPY ntddnw
dnwtap          = COPY (ntddnw NOT pnpcoll2)
pwtap     = COPY ptdpw
tpwtap    = COPY ptdtpw
psubtap   = COPY ptdpsub

//*Define well contact
nwplug    = ntdnw  AND nwell
dnwplug   = ntddnw AND DNW
pwplug    = ptdpw  AND pwell
tpwplug   = ptdtpw AND TPW
psubplug  = ptdpsub AND PSUB
psubplugdstr = ptdpsub AND PSUBDSTR

gates = (((((((((((((ngate18 OR nzgate18) OR pgate18) OR ngate33) OR pgate33) OR hngate50) OR hpgate50) OR hzngate50) OR hngate155) OR hzngate155) OR hpgate155) OR ngate18h) OR ngate18d) OR nsgate) OR ncgate
nsdall = (nsdpw OR nsdpsub) OR nsdtpw
psdall = psdnw OR psddnw

////////////////////////////////////////////
//*Connect Section                        //
////////////////////////////////////////////

#IFDEF TOPMETAL 6
CONNECT metal6 metal5a BY via5b
CONNECT metal6 MIM    BY via5a
CONNECT metal5a mimcap
CONNECT metal5a metal4 BY V4
CONNECT metal4 metal3 BY V3
CONNECT metal3 metal2 BY V2
CONNECT metal2 metal1 BY V1
#ENDIF

#IFDEF TOPMETAL 5
CONNECT metal5 metal4a BY via4b
CONNECT metal5 MIM    BY via4a
CONNECT metal4a mimcap
CONNECT metal4a metal3 BY V3
CONNECT metal3 metal2 BY V2
CONNECT metal2 metal1 BY V1
#ENDIF

#IFDEF TOPMETAL 4
CONNECT metal4 metal3a BY via3b
CONNECT metal4 MIM    BY via3a
CONNECT metal3a mimcap
CONNECT metal3a metal2 BY V2
CONNECT metal2 metal1 BY V1
#ENDIF

#IFDEF TOPMETAL 3
CONNECT metal3 metal2a BY via2b
CONNECT metal3 MIM    BY via2a
CONNECT metal2a mimcap
CONNECT metal2a metal1 BY V1
#ENDIF

CONNECT gppoly pvar_core
CONNECT gppoly ngate18 pgate18
CONNECT gtpoly ngate33 pgate33
CONNECT gtpoly hngate50 hzngate50 hpgate50 nsgate
CONNECT gtpoly hngate155 hzngate155 hpgate155
CONNECT gtpoly nsgate
CONNECT gtpoly cgt
CONNECT metal1 pnpemit18 pnpemit33 pdio18 pdio33 pdio50 pdio155 ndio18 ndio33 ndio50 ndio155 nzdio50 nzdio155 nwdio dnwdio BY dfcont
CONNECT metal1 nsdpw nsdpsub nsdtpw BY dfcont
CONNECT metal1 psdnw psddnw BY dfcont
CONNECT metal1 nsdall psdall BY dfcont
CONNECT nsdpw rnsd
CONNECT nsdpsub rnsd
CONNECT nsdtpw rnsd
CONNECT psdnw rpsd
CONNECT psddnw rpsd
CONNECT metal1 ntdnw ntddnw ptdpw ptdpsub ptdtpw BY dfcont
//CONNECT CG ncgate
CONNECT metal1 gppoly BY GPcont
CONNECT metal1 gtpoly BY GTcont
CONNECT metal1 cgpoly BY CGcont
SCONNECT ntdnw nwell  BY nwplug
SCONNECT ntddnw DNW  BY dnwplug
SCONNECT ptdpw pwell BY pwplug
SCONNECT ptdpsub PSUB BY psubplug
SCONNECT ptdpsub PSUBDSTR BY psubplugdstr
SCONNECT ptdtpw TPW  BY tpwplug

////////////////////////////////////////////////////////////////////////
//*Define Devices                                                     //
////////////////////////////////////////////////////////////////////////

//*--------------------------------------------------------------------
DEVICE MN(N18E2R) ngate18 gppoly(G) nsdpw(S) nsdpw(D) pwell(B)
        [ PROPERTY W, L
        W = PERIM_CO(ngate18,nsdpw)/2
        L = AREA(ngate18)/W  ]

DEVICE MN(NZ18E2R) nzgate18 gppoly(G) nsdpw(S) nsdpw(D) pwell(B)
        [ PROPERTY W, L
        W = PERIM_CO(nzgate18,nsdpw)/2
        L = AREA(nzgate18)/W  ]


DEVICE MP(P18E2R) pgate18 gppoly(G) psdnw(S) psdnw(D) nwell(B)
        [ PROPERTY W, L
        W = PERIM_CO(pgate18,psdnw)/2
        L = AREA(pgate18)/W  ]

DEVICE MN(N33E2R) ngate33 gtpoly(G) nsdtpw(S) nsdtpw(D) TPW(B)
        [ PROPERTY W, L
        W = PERIM_CO(ngate33,nsdtpw)/2
        L = AREA(ngate33)/W  ]

DEVICE MP(P33E2R) pgate33 gtpoly(G) psddnw(S) psddnw(D) DNW(B)
        [ PROPERTY W, L
        W = PERIM_CO(pgate33,psddnw)/2
        L = AREA(pgate33)/W  ]

DEVICE MN(N50E2R) hngate50 gtpoly(G) nsdpsub(S) nsdpsub(D) PSUB(B)
        [ PROPERTY W, L
        W = PERIM_CO(hngate50,nsdpsub)/2
        L = AREA(hngate50)/W  ]

DEVICE MP(P50E2R) hpgate50 gtpoly(G) psddnw(S) psddnw(D) DNW(B)
        [ PROPERTY W, L
        W = PERIM_CO(hpgate50,psddnw)/2
        L = AREA(hpgate50)/W  ]

DEVICE MN(NZ50E2R) hzngate50 gtpoly(G) nsdpsub(S) nsdpsub(D) PSUB(B)
        [ PROPERTY W, L
        W = PERIM_CO(hzngate50,nsdpsub)/2
        L = AREA(hzngate50)/W  ]

DEVICE MN(N155E2R) hngate155 gtpoly(G) nsdpsub(S) nsdpsub(D) PSUB(B)
        [ PROPERTY W, L
        W = PERIM_CO(hngate155,nsdpsub)/2
        L = AREA(hngate155)/W  ]

DEVICE MN(NZ155E2R) hzngate155 gtpoly(G) nsdpsub(S) nsdpsub(D) PSUB(B)
        [ PROPERTY W, L
        W = PERIM_CO(hzngate155,nsdpsub)/2
        L = AREA(hzngate155)/W  ]

DEVICE MP(P155E2R) hpgate155 gtpoly(G) psddnw(S) psddnw(D) DNW(B)
        [ PROPERTY W, L
        W = PERIM_CO(hpgate155,psddnw)/2
        L = AREA(hpgate155)/W  ]

DEVICE MN(N18H) ngate18h gppoly(G) nsdpw(S) nsdpw(D) pwell(B)
        [ PROPERTY W, L
        W = PERIM_CO(ngate18h,nsdpw)/2
        L = AREA(ngate18h)/W  ]

DEVICE MN(N18D) ngate18d gppoly(G) nsdpw(S) nsdpw(D) pwell(B)
        [ PROPERTY W, L
        W = PERIM_CO(ngate18d,nsdpw)/2
        L = AREA(ngate18d)/W  ]

DEVICE MN(NSG) nsgate gtpoly(G) nsdpsub(S) nsdpsub(D) PSUB(B)
        [ PROPERTY W, L
        W = PERIM_CO(nsgate,nsdpsub)/2
        L = AREA(nsgate)/W  ]

DEVICE MN(NCG) ncgate cgpoly(G) nsdpsub(S) nsdpsub(D) PSUB(B)
        [ PROPERTY W, L
        W = PERIM_CO(ncgate,nsdpsub)/2
        L = AREA(ncgate)/W  ]

/*
DEVICE M(C1) cngate18 gppoly(G) ntdnw(S) ntdnw(D) nwell(B)
        [ PROPERTY W, L
        W = PERIM_CO(cngate18,ntdnw)/2
        L = AREA(cngate18)/W ]

*/
DEVICE pvar18e2r_ckt pvar_core pvar_core(PLUS) nwell(MINUS) <pvar_core_aux> <ntdnw>
       [ PROPERTY LR,WR,NF
         NF = COUNT(pvar_core_aux)
         WR = PERIM_CO(pvar_core_aux,ntdnw)/(2*NF)
         LR = AREA(pvar_core_aux)/(WR*NF)
       ]

//*-----------------------------------------------------------------
DEVICE Q(PNP18A4E2R) pnpemit18a4 pnpcoll nwell pnpemit18a4
        [ PROPERTY A
        A = AREA(pnpemit18a4) ]

DEVICE Q(PNP18A25E2R) pnpemit18a25 pnpcoll nwell pnpemit18a25
        [ PROPERTY A
        A = AREA(pnpemit18a25) ]

DEVICE Q(PNP18A100E2R) pnpemit18a100 pnpcoll nwell pnpemit18a100
        [ PROPERTY A
        A = AREA(pnpemit18a100) ]

DEVICE Q(PNP33A4E2R) pnpemit33a4 pnpcoll2 DNW pnpemit33a4
        [ PROPERTY A
        A = AREA(pnpemit33a4) ]

DEVICE Q(PNP33A25E2R) pnpemit33a25 pnpcoll2 DNW pnpemit33a25
        [ PROPERTY A
        A = AREA(pnpemit33a25) ]

DEVICE Q(PNP33A100E2R) pnpemit33a100 pnpcoll2 DNW pnpemit33a100
        [ PROPERTY A
        A = AREA(pnpemit33a100) ]

//*---------------------------------------------------------
DEVICE D(PDIO18E2R)     pdio18 pdio18 nwell
DEVICE D(PDIO33E2R)     pdio33 pdio33 DNW
DEVICE D(PDIO50E2R)     pdio50 pdio50 DNW
DEVICE D(PDIO155E2R)    pdio155 pdio155 DNW
DEVICE D(NDIO18E2R)     ndio18 pwell ndio18
DEVICE D(NDIO33E2R)     ndio33 TPW ndio33
DEVICE D(NDIO50E2R)     ndio50 PSUB ndio50
DEVICE D(NDIO155E2R)    ndio155 PSUB ndio155
DEVICE D(NZDIO50E2R)    nzdio50 PSUB nzdio50
DEVICE D(NZDIO155E2R)   nzdio155 PSUB nzdio155
DEVICE D(NWDIOE2R)    nwdio pwell nwdio
DEVICE D(DNWDIOE2R)     dnwdio PSUBDSTR dnwdio

DEVICE C(CGTTOW)     ctowaa gtpoly nwell [0 0]

#IFDEF PIP_PROPERTY C
DEVICE C(PIPE2R)     cgt cgpoly gtpoly       [2.055 0]
#ENDIF

#IFDEF PIP_PROPERTY WL
DEVICE pipe2r_ckt  cgt cgpoly(n2) gtpoly(n1)
       [ PROPERTY WR,LR,C,A
//       WR = PERIMETER(cgt)/4
//       LR = AREA(cgt)/WR]
        P = PERIM(cgt)
        A = AREA(cgt)
        C = A*2.055*1E-3
        LR = (P+SQRT(P*P-16*A))/4
        WR = (P-SQRT(P*P-16*A))/4
        ]
#ENDIF

#IFDEF MIM_PROPERTY C
DEVICE C(MIME2R)     mimcap MIM mimcap  [0.971 0]
#ENDIF

#IFDEF MIM_PROPERTY WL
DEVICE mime2r_ckt mimcap MIM(n2) mimcap(n1) <mim_wr>
        [ PROPERTY LR,WR
        P = PERIM(mimcap)
        A = AREA(mimcap)
//        LR = (P+SQRT(P*P-16*A))/4
//        WR = (P-SQRT(P*P-16*A))/4
        WR = PERIM_CO(mimcap,mim_wr)
        LR = A/WR
        ]
#ENDIF

DEVICE R(RPGT)     rpgtnosab gtpoly gtpoly [8]
DEVICE R(RNGTSAB)  rngtsab  gtpoly gtpoly [38]
DEVICE R(RPGTSAB)  rpgtsab  gtpoly gtpoly [70]
DEVICE R(RNCGSAB)  rncgsab  cgpoly cgpoly [320]

//*--------------------------------------------------------

#IFDEF RES_PROPERTY EL

DEVICE rndif ndrnosab rnsd(PLUS) rnsd(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(ndrnosab,rnsd)/2
        L = AREA(ndrnosab)/W
        ]

        LVS REDUCE rndif SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rndif PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rndif_ckt ndrnosab rnsd(PLUS) rnsd(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(ndrnosab,rnsd)/2
        L = AREA(ndrnosab)/W
        ]

        LVS REDUCE rndif_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rndif_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rpdif_ckt pdrnosab rpsd(PLUS) rpsd(MINUS) nwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(pdrnosab,rpsd)/2
        L = AREA(pdrnosab)/W
        ]

        LVS REDUCE rpdif_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rpdif_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rnpo_ckt nprnosab gppoly(PLUS) gppoly(MINUS)
        [ PROPERTY W,L
        W = PERIM_CO(nprnosab,gppoly)/2
        L = AREA(nprnosab)/W
        ]

        LVS REDUCE rnpo_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rnpo_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rnpo_3t_ckt nprnosab_3t_pw gppoly(PLUS) gppoly(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(nprnosab_3t_pw,gppoly)/2
        L = AREA(nprnosab_3t_pw)/W
        ]

        LVS REDUCE rnpo_3t_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rnpo_3t_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rnpo_3t_ckt nprnosab_3t_nw gppoly(PLUS) gppoly(MINUS) nwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(nprnosab_3t_nw,gppoly)/2
        L = AREA(nprnosab_3t_nw)/W
        ]

DEVICE rppo_ckt pprnosab gppoly(PLUS) gppoly(MINUS)
        [ PROPERTY W,L
        W = PERIM_CO(pprnosab,gppoly)/2
        L = AREA(pprnosab)/W
        ]

        LVS REDUCE rppo_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rppo_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rppo_3t_ckt pprnosab_3t_nw gppoly(PLUS) gppoly(MINUS) nwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(pprnosab_3t_nw,gppoly)/2
        L = AREA(pprnosab_3t_nw)/W
        ]

        LVS REDUCE rppo_3t_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rppo_3t_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rppo_3t_ckt pprnosab_3t_pw gppoly(PLUS) gppoly(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(pprnosab_3t_pw,gppoly)/2
        L = AREA(pprnosab_3t_pw)/W
        ]

DEVICE rnwaa_ckt rnwaa nwell(PLUS) nwell(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(rnwaa,nwell)/2
        L = AREA(rnwaa)/W
        ]

        LVS REDUCE rnwaa_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rnwaa_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rnwsti_ckt rnwsti nwell(PLUS) nwell(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(rnwsti,nwell)/2
        L = AREA(rnwsti)/W
        ]

        LVS REDUCE rnwsti_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rnwsti_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rndifsab_ckt ndrsab rnsd(PLUS) rnsd(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(ndrsab,rnsd)/2
        L = AREA(ndrsab)/W
        ]

        LVS REDUCE rndifsab_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rndifsab_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rpdifsab_ckt pdrsab rpsd(PLUS) rpsd(MINUS) nwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(pdrsab,rpsd)/2
        L = AREA(pdrsab)/W
        ]

        LVS REDUCE rpdifsab_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rpdifsab_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rnposab_ckt nprsab gppoly(PLUS) gppoly(MINUS)
        [ PROPERTY W,L
        W = PERIM_CO(nprsab,gppoly)/2
        L = AREA(nprsab)/W
        ]

        LVS REDUCE rnposab_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rnposab_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rnposab_3t_ckt  nprsab_3t_pw gppoly(PLUS) gppoly(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(nprsab_3t_pw,gppoly)/2
        L = AREA(nprsab_3t_pw)/W
        ]

        LVS REDUCE rnposab_3t_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rnposab_3t_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rnposab_3t_ckt  nprsab_3t_nw gppoly(PLUS) gppoly(MINUS) nwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(nprsab_3t_nw,gppoly)/2
        L = AREA(nprsab_3t_nw)/W
        ]

DEVICE rpposab_ckt pprsab gppoly(PLUS) gppoly(MINUS)
        [ PROPERTY W,L
        W = PERIM_CO(pprsab,gppoly)/2
        L = AREA(pprsab)/W
        ]

        LVS REDUCE rpposab_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rpposab_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rpposab_3t_ckt pprsab_3t_nw gppoly(PLUS) gppoly(MINUS) nwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(pprsab_3t_nw,gppoly)/2
        L = AREA(pprsab_3t_nw)/W
        ]

        LVS REDUCE rpposab_3t_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rpposab_3t_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rpposab_3t_ckt pprsab_3t_pw gppoly(PLUS) gppoly(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(pprsab_3t_pw,gppoly)/2
        L = AREA(pprsab_3t_pw)/W
        ]

DEVICE rhrpo_ckt hrppo gppoly(PLUS) gppoly(MINUS)
        [ PROPERTY W,L
        W = PERIM_CO(hrppo,gppoly)/2
        L = AREA(hrppo)/W
        ]

        LVS REDUCE rhrpo_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rhrpo_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rhrpo_3t_ckt  hrppo_3t_nw gppoly(PLUS) gppoly(MINUS) nwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(hrppo_3t_nw,gppoly)/2
        L = AREA(hrppo_3t_nw)/W
        ]

        LVS REDUCE rhrpo_3t_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rhrpo_3t_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

DEVICE rhrpo_3t_ckt  hrppo_3t_pw gppoly(PLUS) gppoly(MINUS) pwell(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(hrppo_3t_pw,gppoly)/2
        L = AREA(hrppo_3t_pw)/W
        ]

DEVICE rtimsabe2r_ckt rtim nsdpsub(PLUS) nsdpsub(MINUS) PSUB(SUB)
        [ PROPERTY W,L
        W = PERIM_CO(rtim,nsdpsub)/2
        L = AREA(rtim)/W
        ]

        LVS REDUCE rtimsabe2r_ckt SERIES PLUS MINUS yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )
        W = sum ( W )/count()
        ]

        LVS REDUCE rtimsabe2r_ckt PARALLEL yes
        [ TOLERANCE W 0 L 0
        effective L,W
        L = sum ( L )/count()
        W = sum ( W )
        ]

#ENDIF

#IFDEF RES_PROPERTY R

DEVICE R(RNDIF)    ndrnosab rnsd rnsd
                [
                PROPERTY R
                RS    = 7.57
                DW    = -4.14E-08
                W     = PERIM_CO(ndrnosab,rnsd)/2
                L     = AREA(ndrnosab)/W
                R0    = (L*RS)/(W-2*DW)
                R     = R0
                ]

DEVICE R(RPDIF)    pdrnosab rpsd rpsd
                [
                PROPERTY R
                RS    = 6.75
                DW    = -2.80E-08
                W     = PERIM_CO(pdrnosab,rpsd)/2
                L     = AREA(pdrnosab)/W
                R0    = (L*RS)/(W-2*DW)
                R     = R0
                ]

DEVICE R(RNPO)     nprnosab gppoly gppoly
                [
                PROPERTY R
                RS    = 7.87
                DW    = -1.89E-08
                W     = PERIM_CO(nprnosab,gppoly)/2
                L     = AREA(nprnosab)/W
                R0    = (L*RS)/(W-2*DW)
                R     = R0
                ]

DEVICE R(RNPO_3T) nprnosab_3t gppoly gppoly
                [
                PROPERTY R
                RS    = 7.87
                DW    = -1.89E-08
                W     = PERIM_CO(nprnosab_3t,gppoly)/2
                L     = AREA(nprnosab_3t)/W
                R0    = (L*RS)/(W-2*DW)
                R     = R0
                ]
//DEVICE R(RNPO_3T) nprnosab_3t_nw gppoly gppoly
//                [
//                PROPERTY R
//                RS    = 7.87
//                DW    = -1.89E-08
//                W     = PERIM_CO(nprnosab_3t_nw,gppoly)/2
//                L     = AREA(nprnosab_3t_nw)/W
//                R0    = (L*RS)/(W-2*DW)
//                R     = R0
//                ]

DEVICE R(RPPO)     pprnosab gppoly gppoly
                [
                PROPERTY R
                RS    = 9.78
                DW    = -1.35E-08
                W     = PERIM_CO(pprnosab,gppoly)/2
                L     = AREA(pprnosab)/W
                R0    = (L*RS)/(W-2*DW)
                R     = R0
                ]

DEVICE R(RPPO_3T) pprnosab_3t gppoly gppoly
                [
                PROPERTY R
                RS    = 9.78
                DW    = -1.35E-08
                W     = PERIM_CO(pprnosab_3t,gppoly)/2
                L     = AREA(pprnosab_3t)/W
                R0    = (L*RS)/(W-2*DW)
                R     = R0
                ]
//DEVICE R(RPPO_3T) pprnosab_3t_pw gppoly gppoly
//                [
//                PROPERTY R
//                RS    = 9.78
//                DW    = -1.35E-08
//                W     = PERIM_CO(pprnosab_3t_pw,gppoly)/2
//                L     = AREA(pprnosab_3t_pw)/W
//                R0    = (L*RS)/(W-2*DW)
//                R     = R0
//                ]

DEVICE R(RNWAA)    rnwaa  nwell nwell
                [
                PROPERTY R
                RS    = 441
                DW    = 7.25E-08
                W     = PERIM_CO(rnwaa,nwell)/2
                L     = AREA(rnwaa)/W
                R0    = (L*RS)/(W-2*DW)
                R     = R0
                ]

DEVICE R(RNWSTI)   rnwsti nwell nwell
                [
                PROPERTY R
                RS    = 890
                DW    = 1.83E-07
                W     = PERIM_CO(rnwsti,nwell)/2
                L     = AREA(rnwsti)/W
                R0    = (L*RS)/(W-2*DW)
                R     = R0
                ]

DEVICE R(RNDIFSAB) ndrsab   rnsd rnsd
                [
                PROPERTY R
                RS= 57.5
                Rintc = 12.25
                Rint0 = 2.18E-05
                Rint1 = 0
                DW    = -2.62E-08
                W = PERIM_CO(ndrsab,rnsd)/2
                L = AREA(ndrsab)/W
                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
                R0 = (L*RS)/(W-2*DW)
                #IFDEF  ADD_RINT TRUE
                        R = R0 + 2*Rint
                #ELSE
                        R = R0
                #ENDIF
                ]

DEVICE R(RPDIFSAB) pdrsab   rpsd rpsd
                [
                PROPERTY R
                RS= 116.2
                Rintc = 15.446
                Rint0 = 4.37E-05
                Rint1 = 0
                DW    = -1.37E-09
                W = PERIM_CO(pdrsab,rpsd)/2
                L = AREA(pdrsab)/W
                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
                R0   =  (L*RS)/(W-2*DW)
                #IFDEF ADD_RINT TRUE
                        R = R0 + 2*Rint
                #ELSE
                        R = R0
                #ENDIF
                ]

DEVICE R(RNPOSAB)  nprsab   gppoly gppoly
                [
                PROPERTY R
                RS= 271.6
                Rintc = 23.415
                Rint0 = 9.5E-05
                Rint1 = 0
                DW    = 4.71E-08
                W = PERIM_CO(nprsab,gppoly)/2
                L = AREA(nprsab)/W
                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
                R0 = (L*RS)/(W-2*DW)
                #IFDEF ADD_RINT TRUE
                        R = R0 + 2*Rint
                #ELSE
                        R = R0
                #ENDIF
                ]

DEVICE R(RNPOSAB_3T)  nprsab_3t gppoly gppoly
                [
                PROPERTY R
                RS= 271.6
                Rintc = 23.415
                Rint0 = 9.5E-05
                Rint1 = 0
                DW    = 4.71E-08
                W = PERIM_CO(nprsab_3t,gppoly)/2
                L = AREA(nprsab_3t)/W
                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
                R0 = (L*RS)/(W-2*DW)
                #IFDEF ADD_RINT TRUE
                        R = R0 + 2*Rint
                #ELSE
                        R = R0
                #ENDIF
                ]
//DEVICE R(RNPOSAB_3T)  nprsab_3t_nw gppoly gppoly
//                [
//                PROPERTY R
//                RS= 271.6
//                Rintc = 23.415
//                Rint0 = 9.5E-05
//                Rint1 = 0
//                DW    = 4.71E-08
//                W = PERIM_CO(nprsab_3t_nw,gppoly)/2
//                L = AREA(nprsab_3t_nw)/W
//                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
//                R0 = (L*RS)/(W-2*DW)
//                #IFDEF ADD_RINT TRUE
//                        R = R0 + 2*Rint
//                #ELSE
//                        R = R0
//                #ENDIF
//                ]

DEVICE R(RPPOSAB)  pprsab   gppoly gppoly
                [
                PROPERTY R
                RS= 311.3
                Rintc = 29.965
                Rint0 = 1.18E-04
                Rint1 = 0
                DW    = 2.73E-08
                W = PERIM_CO(pprsab,gppoly)/2
                L = AREA(pprsab)/W
                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
                R0 = (L*RS)/(W-2*DW)
                #IFDEF  ADD_RINT TRUE
                         R = R0 + 2*Rint
                #ELSE
                         R = R0
                #ENDIF
                ]

DEVICE R(RPPOSAB_3T)  pprsab_3t gppoly gppoly
                [
                PROPERTY R
                RS= 311.3
                Rintc = 29.965
                Rint0 = 1.18E-04
                Rint1 = 0
                DW    = 2.73E-08
                W = PERIM_CO(pprsab_3t,gppoly)/2
                L = AREA(pprsab_3t)/W
                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
                R0 = (L*RS)/(W-2*DW)
                #IFDEF  ADD_RINT TRUE
                         R = R0 + 2*Rint
                #ELSE
                         R = R0
                #ENDIF
                ]
//DEVICE R(RPPOSAB_3T)  pprsab_3t_pw gppoly gppoly
//                [
//                PROPERTY R
//                RS= 311.3
//                Rintc = 29.965
//                Rint0 = 1.18E-04
//                Rint1 = 0
//                DW    = 2.73E-08
//                W = PERIM_CO(pprsab_3t_pw,gppoly)/2
//                L = AREA(pprsab_3t_pw)/W
//                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
//                R0 = (L*RS)/(W-2*DW)
//                #IFDEF  ADD_RINT TRUE
//                         R = R0 + 2*Rint
//                #ELSE
//                         R = R0
//                #ENDIF
//                ]

DEVICE R(RHRPO)    hrppo  gppoly  gppoly
                [
                PROPERTY R
                RS=  1001
                Rintc = 7.88
                Rint0 = 3.96E-05
                Rint1 = 0
                DW    = -6.0E-09
                W = PERIM_CO(hrppo,gppoly)/2
                L = AREA(hrppo)/W
                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
                R0 = (L*RS)/(W-2*DW)
                #IFDEF  ADD_RINT TRUE
                         R = R0 + 2*Rint
                #ELSE
                         R = R0
                #ENDIF
                ]

DEVICE R(RHRPO_3T)    hrppo_3t  gppoly  gppoly
                [
                PROPERTY R
                RS=  1001
                Rintc = 7.88
                Rint0 = 3.96E-05
                Rint1 = 0
                DW    = -6.0E-09
                W = PERIM_CO(hrppo_3t,gppoly)/2
                L = AREA(hrppo_3t)/W
                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
                R0 = (L*RS)/(W-2*DW)
                #IFDEF  ADD_RINT TRUE
                         R = R0 + 2*Rint
                #ELSE
                         R = R0
                #ENDIF
                ]
//DEVICE R(RHRPO_3T)    hrppo_3t_pw  gppoly  gppoly
//                [
//                PROPERTY R
//                RS=  1001
//                Rintc = 7.88
//                Rint0 = 3.96E-05
//                Rint1 = 0
//                DW    = -6.0E-09
//                W = PERIM_CO(hrppo_3t_pw,gppoly)/2
//                L = AREA(hrppo_3t_pw)/W
//                Rint  = Rintc+(Rint0)/(W-2*DW) + (Rint1)/((W-2*DW)*(W-2*DW))
//                R0 = (L*RS)/(W-2*DW)
//                #IFDEF  ADD_RINT TRUE
//                         R = R0 + 2*Rint
//                #ELSE
//                         R = R0
//                #ENDIF
//                ]

DEVICE R(RTIMSABE2R)  rtim    nsdpsub nsdpsub
                [
                PROPERTY R
                RS= 695
                DW    = 4.821E-08
                W     = PERIM_CO(rtim,nsdpsub)/2
                L     = AREA(rtim)/W
                R0    = (L*RS)/(W-2*DW)
                R     = R0
                ]

#ENDIF

DEVICE R(RM1)    rm1 metal1 metal1
            [
            PROPERTY R
            RS= 0.078
            DW= -4.93E-09
            W = PERIM_CO(rm1,metal1)/2
            L = AREA(rm1)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

#IFDEF TOPMETAL 6
DEVICE R(RM2)    rm2 metal2 metal2
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm2,metal2)/2
            L = AREA(rm2)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM3)    rm3 metal3 metal3
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm3,metal3)/2
            L = AREA(rm3)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM4)    rm4 metal4 metal4
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm4,metal4)/2
            L = AREA(rm4)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM5)    rm5 metal5a metal5a
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm5,metal5a)/2
            L = AREA(rm5)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM6)    rm6 metal6 metal6
            [
            PROPERTY R
            RS= 0.036
            DW= -4.41E-08
            W = PERIM_CO(rm6,metal6)/2
            L = AREA(rm6)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]
#ENDIF

#IFDEF TOPMETAL 5
DEVICE R(RM2)    rm2 metal2 metal2
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm2,metal2)/2
            L = AREA(rm2)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM3)    rm3 metal3 metal3
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm3,metal3)/2
            L = AREA(rm3)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM4)    rm4 metal4a metal4a
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm4,metal4a)/2
            L = AREA(rm4)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM5)    rm5 metal5 metal5
            [
            PROPERTY R
            RS= 0.036
            DW= -4.41E-08
            W = PERIM_CO(rm5,metal5)/2
            L = AREA(rm5)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]
#ENDIF

#IFDEF TOPMETAL 4
DEVICE R(RM2)    rm2 metal2 metal2
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm2,metal2)/2
            L = AREA(rm2)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM3)    rm3 metal3a metal3a
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm3,metal3a)/2
            L = AREA(rm3)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM4)    rm4 metal4 metal4
            [
            PROPERTY R
            RS= 0.036
            DW= -4.41E-08
            W = PERIM_CO(rm4,metal4)/2
            L = AREA(rm4)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]
#ENDIF

#IFDEF TOPMETAL 3
DEVICE R(RM2)    rm2 metal2a metal2a
            [
            PROPERTY R
            RS= 0.078
            DW= 6.0E-09
            W = PERIM_CO(rm2,metal2a)/2
            L = AREA(rm2)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]

DEVICE R(RM3)    rm3 metal3 metal3
            [
            PROPERTY R
            RS= 0.036
            DW= -4.41E-08
            W = PERIM_CO(rm3,metal3)/2
            L = AREA(rm3)/W
            R0= (L*RS)/(W-2*DW)
            R = R0
            ]
#ENDIF

//////////////////////////////////////////////////////////
//*Define property check tolerance                      //
//////////////////////////////////////////////////////////
TRACE PROPERTY MN(N18E2R)    L L 5
TRACE PROPERTY MN(N18E2R)    W W 5

TRACE PROPERTY MN(NZ18E2R)   L L 5
TRACE PROPERTY MN(NZ18E2R)   W W 5

TRACE PROPERTY MP(P18E2R)    L L 5
TRACE PROPERTY MP(P18E2R)    W W 5
TRACE PROPERTY MN(N33E2R)    L L 5
TRACE PROPERTY MN(N33E2R)    W W 5
TRACE PROPERTY MP(P33E2R)    L L 5
TRACE PROPERTY MP(P33E2R)    W W 5
TRACE PROPERTY MN(N50E2R)    L L 5
TRACE PROPERTY MN(N50E2R)    W W 5
TRACE PROPERTY MP(P50E2R)    L L 5
TRACE PROPERTY MP(P50E2R)    W W 5
TRACE PROPERTY MN(NZ50E2R)   L L 5
TRACE PROPERTY MN(NZ50E2R)   W W 5
TRACE PROPERTY MN(N155E2R)   L L 5
TRACE PROPERTY MN(N155E2R)   W W 5
TRACE PROPERTY MN(NZ155E2R)  L L 5
TRACE PROPERTY MN(NZ155E2R)  W W 5
TRACE PROPERTY MP(P155E2R)   L L 5
TRACE PROPERTY MP(P155E2R)   W W 5
TRACE PROPERTY MN(N18D)      L L 5
TRACE PROPERTY MN(N18D)      W W 5
TRACE PROPERTY MN(N18H)      L L 5
TRACE PROPERTY MN(N18H)      W W 5
TRACE PROPERTY MN(NSG)       L L 5
TRACE PROPERTY MN(NSG)       W W 5
TRACE PROPERTY MN(NCG)       L L 5
TRACE PROPERTY MN(NCG)       W W 5
/*
TRACE PROPERTY M(C1)         L L 5
TRACE PROPERTY M(C1)         W W 5
*/

TRACE PROPERTY pvar18e2r_ckt   WR WR 5
TRACE PROPERTY pvar18e2r_ckt   LR LR 5
TRACE PROPERTY pvar18e2r_ckt   NF NF 0


TRACE PROPERTY Q(PNP18A4E2R)   A A 5
TRACE PROPERTY Q(PNP18A25E2R)  A A 5
TRACE PROPERTY Q(PNP18A100E2R) A A 5
TRACE PROPERTY Q(PNP33A4E2R)   A A 5
TRACE PROPERTY Q(PNP33A25E2R)  A A 5
TRACE PROPERTY Q(PNP33A100E2R) A A 5

TRACE PROPERTY D(PDIO18E2R)    A A 5
TRACE PROPERTY D(PDIO33E2R)    A A 5
TRACE PROPERTY D(PDIO50E2R)    A A 5
TRACE PROPERTY D(PDIO155E2R)   A A 5
TRACE PROPERTY D(NDIO18E2R)    A A 5
TRACE PROPERTY D(NDIO33E2R)    A A 5
TRACE PROPERTY D(NDIO50E2R)    A A 5
TRACE PROPERTY D(NDIO155E2R)   A A 5
TRACE PROPERTY D(NZDIO50E2R)   A A 5
TRACE PROPERTY D(NZDIO155E2R)  A A 5
TRACE PROPERTY D(NWDIOE2R)     A A 5
TRACE PROPERTY D(DNWDIOE2R)    A A 5

TRACE PROPERTY C(CGTTOW)    C C 5

#IFDEF PIP_PROPERTY C
TRACE PROPERTY C(PIPE2R)    C C 5
#ENDIF

#IFDEF PIP_PROPERTY WL
//TRACE PROPERTY pipe2r_ckt   LR LR 5
//TRACE PROPERTY pipe2r_ckt   WR WR 5
TRACE PROPERTY pipe2r_ckt     C  C  5
#ENDIF

#IFDEF MIM_PROPERTY C
TRACE PROPERTY C(MIME2R)    C C 5
#ENDIF

#IFDEF MIM_PROPERTY WL
TRACE PROPERTY mime2r_ckt   LR LR 5
TRACE PROPERTY mime2r_ckt   WR WR 5
#ENDIF

TRACE PROPERTY R(RPGT)      R R 5
TRACE PROPERTY R(RNGTSAB)   R R 5
TRACE PROPERTY R(RPGTSAB)   R R 5
TRACE PROPERTY R(RNCGSAB)   R R 5

#IFDEF RES_PROPERTY WL

TRACE PROPERTY rndif        W W 5
TRACE PROPERTY rndif        L L 5
TRACE PROPERTY rpdif        W W 5
TRACE PROPERTY rpdif        L L 5
TRACE PROPERTY rndif_ckt    W W 5
TRACE PROPERTY rndif_ckt    L L 5
TRACE PROPERTY rpdif_ckt    W W 5
TRACE PROPERTY rpdif_ckt    L L 5
TRACE PROPERTY rnpo_ckt     W W 5
TRACE PROPERTY rnpo_ckt     L L 5
TRACE PROPERTY rnpo_3t_ckt  W W 5
TRACE PROPERTY rnpo_3t_ckt  L L 5
TRACE PROPERTY rppo_ckt     W W 5
TRACE PROPERTY rppo_ckt     L L 5
TRACE PROPERTY rppo_3t_ckt  W W 5
TRACE PROPERTY rppo_3t_ckt  L L 5
TRACE PROPERTY rnwaa_ckt    W W 5
TRACE PROPERTY rnwaa_ckt    L L 5
TRACE PROPERTY rnwsti_ckt   W W 5
TRACE PROPERTY rnwsti_ckt   L L 5
TRACE PROPERTY rndifsab_ckt W W 5
TRACE PROPERTY rndifsab_ckt L L 5
TRACE PROPERTY rpdifsab_ckt W W 5
TRACE PROPERTY rpdifsab_ckt L L 5
TRACE PROPERTY rnposab_ckt  W W 5
TRACE PROPERTY rnposab_ckt  L L 5
TRACE PROPERTY rnposab_3t_ckt W W 5
TRACE PROPERTY rnposab_3t_ckt L L 5
TRACE PROPERTY rpposab_ckt  W W 5
TRACE PROPERTY rpposab_ckt  L L 5
TRACE PROPERTY rpposab_3t_ckt W W 5
TRACE PROPERTY rpposab_3t_ckt L L 5
TRACE PROPERTY rhrpo_ckt    W W 5
TRACE PROPERTY rhrpo_ckt    L L 5
TRACE PROPERTY rhrpo_3t_ckt W W 5
TRACE PROPERTY rhrpo_3t_ckt L L 5
TRACE PROPERTY rtimsabe2r_ckt  W W 5
TRACE PROPERTY rtimsabe2r_ckt  L L 5

#ENDIF

#IFDEF RES_PROPERTY R

TRACE PROPERTY R(RNDIF)    R R 5
TRACE PROPERTY R(RPDIF)    R R 5
TRACE PROPERTY R(RNPO)     R R 5
TRACE PROPERTY R(RNPO_3T)  R R 5
TRACE PROPERTY R(RPPO)     R R 5
TRACE PROPERTY R(RPPO_3T)  R R 5
TRACE PROPERTY R(RNWAA)    R R 5
TRACE PROPERTY R(RNWSTI)   R R 5
TRACE PROPERTY R(RNDIFSAB) R R 5
TRACE PROPERTY R(RPDIFSAB) R R 5
TRACE PROPERTY R(RNPOSAB)  R R 5
TRACE PROPERTY R(RNPOSAB_3T)  R R 5
TRACE PROPERTY R(RPPOSAB)  R R 5
TRACE PROPERTY R(RPPOSAB_3T)  R R 5
TRACE PROPERTY R(RHRPO)    R R 5
TRACE PROPERTY R(RHRPO_3T)  R R 5
TRACE PROPERTY R(RTIMSABE2R)  R R 5
#ENDIF

TRACE PROPERTY R(RM1)      R R 5
TRACE PROPERTY R(RM2)      R R 5

#IFDEF TOPMETAL 6
TRACE PROPERTY R(RM3)      R R 5
TRACE PROPERTY R(RM4)      R R 5
TRACE PROPERTY R(RM5)      R R 5
TRACE PROPERTY R(RM6)      R R 5
#ENDIF

#IFDEF TOPMETAL 5
TRACE PROPERTY R(RM3)      R R 5
TRACE PROPERTY R(RM4)      R R 5
TRACE PROPERTY R(RM5)      R R 5
#ENDIF

#IFDEF TOPMETAL 4
TRACE PROPERTY R(RM3)      R R 5
TRACE PROPERTY R(RM4)      R R 5
#ENDIF

#IFDEF TOPMETAL 3
TRACE PROPERTY R(RM3)      R R 5
#ENDIF

#IFDEF ERCCHECK TRUE
//////////////////////////////////////////////////////////
//* ERC Check                                          *//
//////////////////////////////////////////////////////////

//*Report regions on nwell or pwell that connect to more than one node.
LVS SOFTCHK nwell CONTACT
LVS SOFTCHK pwell CONTACT
LVS SOFTCHK DNW   CONTACT
LVS SOFTCHK TPW   CONTACT
LVS SOFTCHK PSUB  CONTACT

//*Report nodes with a path to power but not ground
ERC PATHCHK GROUND && !POWER NOFLOAT

//*Report nodes with a path to ground but not power
ERC PATHCHK POWER && !GROUND NOFLOAT

//*Report nodes without a path to both power and ground
ERC PATHCHK !POWER && !GROUND NOFLOAT
ERC PATHCHK !LABELED NOFLOAT

//*Report pwell pick-up layer ptdpw connect to power nets.
ptdpw_to_power { @ pwell pick-up layer ptdpw texted with power net.
        NET pwtap "?VDD?" "?VCC?" }

//*Report TPW pick-up layer ptdtpw connect to power nets.
ptdtpw_to_power { @ TPW pick-up layer ptdtpw texted with power net.
        NET tpwtap "?VDD?" "?VCC?" }

ptdpsub_to_power { @ PSUB pick-up layer ptdpsub texted with power net.
        NET psubtap "?VDD?" "?VCC?" }

//*Report nwell pick-up layer ntdnw connect to ground nets.
ntdnw_to_ground { @ Nwell pick-up layer ntdnw texted with ground net.
        NET nwtap "?VSS?" "?GND?" }

//*Report DNW pick-up layer ntddnw connect to ground nets.
ntddnw_to_ground { @ DNW pick-up layer ntddnw texted with ground net.
        NET dnwtap "?VSS?" "?GND?" }

//--------------------------------------------------------


// NMOS N18E2R S/D connect to both Power and Ground nets
nsdtoground = NET nsdpw "?VSS?" "?GND?"
T1nsd = ngate18 TOUCH nsdtoground
nsdtopower = NET nsdpw "?VDD?" "?VCC?"
T2nsd = ngate18 TOUCH nsdtopower
mntopg {@ NMOS N18E2R connect to both Power and Ground.
        T1nsd AND T2nsd }

//--------------------------------------------------------

// NMOS NZ18E2R S/D connect to both Power and Ground nets
nzsdtoground = NET nsdpw "?VSS?" "?GND?"
T1nzsd = nzgate18 TOUCH nzsdtoground
nzsdtopower = NET nsdpw "?VDD?" "?VCC?"
T2nzsd = nzgate18 TOUCH nzsdtopower
mnztopg {@ NMOS NZ18E2R connect to both Power and Ground.
        T1nzsd AND T2nzsd }

//--------------------------------------------------------


// PMOS P18E2R S/D connect to both Power and Ground Nets.
psdtoground = NET psdnw "?VSS?" "?GND?"
T1psd = pgate18 TOUCH psdtoground
psdtopower  = NET psdnw "?VDD?" "?VCC?"
T2psd = pgate18 TOUCH psdtopower
mptopg {@ PMOS P18E2R connect to both Power and Ground.
        T1psd AND T2psd}

ERC SELECT CHECK ptdpw_to_power ptdtpw_to_power ptdpsub_to_power ntdnw_to_ground ntddnw_to_ground mntopg mnztopg mptopg
#ENDIF
//*END//

 楼主| 发表于 2024-5-31 14:06:25 | 显示全部楼层


MISU 发表于 2024-5-31 14:03
#DEFINE MIM_PROPERTY C
#DEFINE RES_PROPERTY R  (这两句是后面加的)
/////////////////////////////// ...


TRACE PROPERTY rndif        W W 5
TRACE PROPERTY rndif        L L 5
TRACE PROPERTY rpdif        W W 5
TRACE PROPERTY rpdif        L L 5

这四句也是后面加的,开始是解决rndif变rndif_ckt的问题,但好像没用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-12-22 00:12 , Processed in 0.033340 second(s), 9 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表