BeginErrorRules
DoSummary Yes
|Errorfile pcb.err
|Exclude Error Warning Note
|ExcludeNums 1234 5678
EndErrorRules
LayoutId PADSPCB
|LayoutId PADS2000
|Levels STD
|Grounds GND
|Powers VDD VCC
|ParamAttFile pads.var
|OutLen 79
|DeviceFileName parttype.lib
|PlaceFileName lines.asc
|NetlistFileName net.asc
|PartFileName part.asc
|BackFileName back.asc
|DeviceFormat $DEVICE$
|NormalTraceWidth 12
|SignalTraceWidth 50
| The default Netlist File header is !PADS-POWERPCB-V2 for Layout ID PADSPCB
| and *PADS2000-MILS* for Layout ID PADS2000. This can be changed
| by the NetFileHeader key word.
| Note: This is applicable only for netlist (.asc) file generated while
| going forward.
|
NetFileHeader !PADS-POWERPCB-V2
|NetFileHeader !PADS-POWERPCB-V1
|NetFileHeader *PADS-PCB*
|PlacementScale 1.0
Precision 2
|SignalStyle Pkgpin
|SignalStyle Strip
FwdExt asc
PkgFileExt asc
DeviceFileExt p
|DeviceFileExt lib
BackExt eco
BackNetFileExt asc
PlaceFileExt asc
SuppressIdBackAnno yes | [no] | Controls the back annotation of IDs.
| DumpDict should be set to yes if back annotation of IDs are not
| required.
DumpDict yes | [no] | Controls whether dictionary files are read or
|written to the project directory.
WriteBaf Yes
WriteVbf No
|DoOats yes
LoadPlacementData No
WriteDeviceInfo Yes
|PassBoardOutline No
|CADLibrarySignals No
|CreateSpareGates No
|SpareInputTypes L
|SpareInputSignal GND
|DoPacking Yes
|PreservePrevPack Yes
|EvalParamAtts Yes
BeginAttPassList
Specific
|BeginOatAtts
COM REFDES
COM $OBJNAME
COM PADS_ID
COM SYMTAG
NET PADS_ID
PIN #
NET $OBJNAME
|EndOatAtts
General
PIN PINTYPE
COM PINSWAP
COM NC
COM SIGNAL
COM HETERO
COM DEVICE
COM GATESWAP
COM GLUE
COM ROTATION
PKG PKG_TYPE
PKG CLASS
PKG VALUE
PKG TOLERANCE
PKG GLUE
PKG ROTATION
PKG PKGORDER
| PowerPCB Design Rules
PKG CLUSTER
|NET TRACEWIDTH
| Default rules
BOARD UNIT
BOARD CLEARANCE
BOARD WIDTH
BOARD LENGTH_MIN_TYPE
BOARD COPPER_SHARE
BOARD PRIORITY
BOARD AUTO_ROUTE
BOARD RIPUP
BOARD SHOVE
BOARD BIAS_LAYER
BOARD USE_VIA
BOARD LENGTH
BOARD DELAY
BOARD CAPACITANCE
BOARD IMPEDANCE
BOARD PARALLEL
BOARD TANDEM
BOARD SHIELD
BOARD MATCH_LENGTH
BOARD MAX_STUB
BOARD AGGRESSOR
| CLASS rules
NET CLASS
NET CLS_CLEARANCE
NET CLS_WIDTH
NET CLS_LENGTH_MIN_TYPE
NET CLS_COPPER_SHARE
NET CLS_PRIORITY
NET CLS_AUTO_ROUTE
NET CLS_RIPUP
NET CLS_SHOVE
NET CLS_BIAS_LAYER
NET CLS_USE_VIA
NET CLS_LENGTH
NET CLS_DELAY
NET CLS_CAPACITANCE
NET CLS_IMPEDANCE
NET CLS_PARALLEL
NET CLS_TANDEM
NET CLS_SHIELD
NET CLS_MATCH_LENGTH
NET CLS_MAX_STUB
NET CLS_AGGRESSOR
| NET rules
NET CLEARANCE
NET WIDTH
NET LENGTH_MIN_TYPE
NET COPPER_SHARE
NET PRIORITY
NET AUTO_ROUTE
NET RIPUP
NET SHOVE
NET BIAS_LAYER
NET USE_VIA
NET LENGTH
NET DELAY
NET CAPACITANCE
NET IMPEDANCE
NET PARALLEL
NET TANDEM
NET SHIELD
NET MATCH_LENGTH
NET MAX_STUB
NET AGGRESSOR
NET NC | A single pin net which has the attribute NC on it will
| not generate the "pcb: Warning 6083: Single pin net"
| GROUP rules
NET GROUP
NET GRP_CLEARANCE
NET GRP_WIDTH
NET GRP_LENGTH_MIN_TYPE
NET GRP_COPPER_SHARE
NET GRP_PRIORITY
NET GRP_AUTO_ROUTE
NET GRP_RIPUP
NET GRP_SHOVE
NET GRP_BIAS_LAYER
NET GRP_USE_VIA
NET GRP_LENGTH
NET GRP_DELAY
NET GRP_CAPACITANCE
NET GRP_IMPEDANCE
NET GRP_PARALLEL
NET GRP_TANDEM
NET GRP_SHIELD
NET GRP_MATCH_LENGTH
NET GRP_MAX_STUB
NET GRP_AGGRESSOR
| PIN-PAIR rules
NET PINPAIR
NET PPR_CLEARANCE
NET PPR_WIDTH
NET PPR_LENGTH_MIN_TYPE
NET PPR_COPPER_SHARE
NET PPR_PRIORITY
NET PPR_AUTO_ROUTE
NET PPR_RIPUP
NET PPR_SHOVE
NET PPR_BIAS_LAYER
NET PPR_USE_VIA
NET PPR_LENGTH
NET PPR_DELAY
NET PPR_CAPACITANCE
NET PPR_IMPEDANCE
NET PPR_PARALLEL
NET PPR_TANDEM
NET PPR_SHIELD
NET PPR_MATCH_LENGTH
NET PPR_MAX_STUB
NET PPR_AGGRESSOR
EndAttPassList
BeginAlsRules
PIN PINTYPE=IN PINTYPE=L
PIN PINTYPE=OUT PINTYPE=S
PIN PINTYPE=OEM PINTYPE=O
PIN PINTYPE=OCL PINTYPE=C
PIN PINTYPE=BI PINTYPE=B
PIN PINTYPE=TRI PINTYPE=T
PIN PINTYPE=ANALOG PINTYPE=U
PIN PINTYPE=TERM PINTYPE=Z
PIN PINTYPE=POWER PINTYPE=P
PIN PINTYPE=GROUND PINTYPE=G
PKG CLASS=R CLASS=RES
PKG CLASS=RP CLASS=RES
PKG CLASS=VR CLASS=RES
PKG CLASS=IC CLASS=TTL
|PKG CLASS=SMD CLASS=TTL
|PKG CLASS=MOS CLASS=TTL
|PKG CLASS=CMOS CLASS=CMO
|PKG CLASS=ECL CLASS=ECL
|PKG CLASS=ANALOG CLASS=ANA
|PKG CLASS=DISCRETE CLASS=ANA
|PKG CLASS=ADC CLASS=ANA
|PKG CLASS=DAC CLASS=ANA
|PKG CLASS=POT CLASS=ANA
|PKG CLASS=FILT CLASS=ANA
PKG CLASS=C CLASS=CAP
PKG CLASS=P-C CLASS=CAP
|PKG CLASS=DIODE CLASS=DIO
|PKG CLASS=SDIODE CLASS=DIO
|PKG CLASS=ZENER CLASS=ZEN
|PKG CLASS=FET CLASS=TRX
|PKG CLASS=NPN CLASS=TRX
|PKG CLASS=PNP CLASS=TRX
|PKG CLASS=TRANSFOR CLASS=XFR
|PKG CLASS=L CLASS=CHO
PKG CLASS=IO CLASS=CON
|PKG CLASS=SCR CLASS=SCR
|PKG CLASS=SWITCH CLASS=SWI
|PKG CLASS=CRYSTAL CLASS=UND
PKG PKG_TYPE=8PDIP PKG_TYPE=DIP8
PKG PKG_TYPE=14PDIP PKG_TYPE=DIP14
PKG PKG_TYPE=16PDIP PKG_TYPE=DIP16
PKG PKG_TYPE=18PDIP PKG_TYPE=DIP18
PKG PKG_TYPE=20PDIP PKG_TYPE=DIP20
PKG PKG_TYPE=CAP PKG_TYPE=CAP\MA20
PKG PKG_TYPE=RES PKG_TYPE=R1/4W
PKG PKG_TYPE=4PSIP PKG_TYPE=SIP\4P
PKG PKG_TYPE=5PSIP PKG_TYPE=SIP\5P
PKG PKG_TYPE=6PSIP PKG_TYPE=SIP\6P
PKG PKG_TYPE=7PSIP PKG_TYPE=SIP\7P
PKG PKG_TYPE=8PSIP PKG_TYPE=SIP\8P
PKG PKG_TYPE=9PSIP PKG_TYPE=SIP\9P
PKG PKG_TYPE=10PSIP PKG_TYPE=SIP\10P
PKG PKG_TYPE=11PSIP PKG_TYPE=SIP\11P
PKG PKG_TYPE=12PSIP PKG_TYPE=SIP\12P
PKG PKG_TYPE=TO-220AB PKG_TYPE=TO-220
PKG PKG_TYPE=DO-7 PKG_TYPE=DO7
PKG PKG_TYPE=DO-35 PKG_TYPE=DO35
PKG PKG_TYPE=DO-41 PKG_TYPE=DO41
PKG PKG_TYPE=HC PKG_TYPE=XTAL1
PKG PKG_TYPE=28JLCC PKG_TYPE=CC28
PKG PKG_TYPE=44JLCC PKG_TYPE=CC44
PKG PKG_TYPE=68JLCC PKG_TYPE=CC68
PKG PKG_TYPE=18PLCC PKG_TYPE=CCR18
PKG PKG_TYPE=68PGA PKG_TYPE=PGA\68P
PKG PKG_TYPE=68PLP PKG_TYPE=PGA\68P
PKG PKG_TYPE=68LPP PKG_TYPE=PGA\68P
EndAlsRules
BeginChkRules
| obj_type = { PIN, SPN, COM, SYM, NET, PKG, PPN, ANY, SYMCOM, etc. }
| severity = { ERR, WRN, NOT }
|******************************************************************
| CHKVAL syntax: CHKVAL routine_name obj_type attr_name severity
| fixcode [arguments]
| routine_nam = _NAME_CHK _LIST_CHK _ENUM_CHK _FND_CHAR _SIG_CHK
| _DUMMY_CHK _REG_EXP
| attr_name = anything $OBJNAME $ATTNAME $ANY $DEFAULT
| NAME_CHK: checks for illegal character and length violations
| Arguments: string replacement_char min_len max_len
| string = legal_chars or ~illegal_chars (\t\n\r allowed)
| max_len = * for none
| fixcodes: 0=nothing, 1=replace_chars, 2=truncate, 3=replace_chars
| and truncate
| !@#$%^&()_+|\-=[]:"~;'`?/ are legal characters in PADS
CHKVAL _NAME_CHK PPN $OBJNAME ERR 0 "~{}*,. \t\n\r" "" 1 4
CHKVAL _NAME_CHK SYMCOM REFDES ERR 0 "~{}*,.` \t\n\r" "" 1 6
CHKVAL _NAME_CHK SYMCOM DEVICE ERR 0 "~{}*,.` \t\n\r@" "" 1 16
CHKVAL _NAME_CHK SYMCOM PKG_TYPE ERR 0 "~{}*,.` \t\n\r" "" 1 12
CHKVAL _NAME_CHK SYMCOM CLASS ERR 0 "~{}*,.` \t\n\r" "" 1 *
CHKVAL _NAME_CHK SYM VALUE ERR 0 "~{}*,` \t\n\r@" "" 0 *
CHKVAL _NAME_CHK COM VALUE ERR 0 "~{}*,` \t\n\r@" "" 1 *
CHKVAL _NAME_CHK SYM TOLERANCE ERR 0 "~{}*,` \t\n\r@" "" 0 *
CHKVAL _NAME_CHK COM TOLERANCE ERR 0 "~{}*,` \t\n\r@" "" 1 *
CHKVAL _NAME_CHK SYMCOM ROTATION ERR 0 "0-9." "" 1 5
CHKVAL _NAME_CHK NET TRACEWIDTH ERR 0 "0-9" "" 1 3
CHKVAL _NAME_CHK NET $OBJNAME ERR 0 "~{}*,. \t\n\r" "" 1 47
| LIST_CHK: same as NAME_CHK, but does bus (list) expansion for
| a list of values
| fixcode: 0=nothing
CHKVAL _LIST_CHK SPN # ERR 0 "~{}*,. \t\n\r" "" 1 4
CHKVAL _LIST_CHK SYMCOM NC ERR 0 "~{}*,.` \t\n\r" "" 1 4
CHKVAL _LIST_CHK SYMCOM PKGORDER ERR 0 "~{}*,.` \t\n\r" "" 1 4
CHKVAL _LIST_CHK SYMCOM HETERO ERR 0 "~." "" 1 *
| ENUM_CHK: check for an enumerated set of values
| fixcode: 0=nothing
CHKVAL _ENUM_CHK SPNPIN PINTYPE ERR 0 L S O C B T U L Z P G
CHKVAL _ENUM_CHK SYMCOM GLUE ERR 0 TRUE FALSE
CHKVAL _ENUM_CHK SYMCOM GATESWAP ERR 0 TRUE FALSE
| FND_CHAR: require a certain character (anywhere in string)
| fixcodes: 0=nothing, 1=add character
CHKVAL _FND_CHAR SYM REFDES ERR 1 ?
| SIG_CHK: applies NET $OBJNAME checking to the string before ';'
| and PPN $OBJNAME checking to the string after ';'. The severity
| specified here is not actually used
| fixcode: 0=nothing
CHKVAL _SIG_CHK SYMCOM SIGNAL ERR 0
|******************************************************************
| GENVAL syntax: GENVAL routine_name obj_type attr_name [arguments]
| DFLT_VAL: just uses the specified default value
GENVAL _DFLT_VAL SYM REFDES U?
| UNIQ_NUM: appends a unique number to an optional prefix
| Arguments: [prefix] [start_number]
GENVAL _UNIQ_NUM NET $OBJNAME N
|******************************************************************
| ALLOW_DUPL syntax: ALLOW_DUPL obj_type attr_name
ALLOW_DUPL SYMCOM SIGNAL
|******************************************************************
| REQUIRE syntax: REQUIRE obj_type attr_name severity fixcode
REQUIRE SPN # ERR 0
REQUIRE SYMCOM REFDES ERR 1
|******************************************************************
| CHKBRD syntax: CHKBRD routine_name severity fixcode [arguments]
CHKBRD _DUPL_ATTR ERR 0 | Duplicate attribute
CHKBRD _BAD_SLOTCNT ERR 0 | Conflicting number of slots
CHKBRD _DUPL_PINS ERR 0 | SIGNAL, NC, # conflicts
CHKBRD _BAD_PINSWAP ERR 0 | Bad PINSWAP attribute
CHKBRD _BAD_PIN_NUM ERR 1 | Component pin # not on symbol, 1=repack
CHKBRD _BAD_SIG_NUM ERR 0 | Component signal pin # not on symbol, 1=add it
CHKBRD _ILL_PINSWAP WRN 0 | Illegal pin swap
CHKBRD _MIXED_SLOT ERR 1 | Pins from different slots on component, 1=repack
CHKBRD _SGL_PIN_NET WRN 1 | Single pin net, 1=omit
|CHKBRD _PIN_SHORTED NOT 0 | Pins shorted
CHKBRD _DUPL_FNAME1 ERR 0 | Duplicate component name
|CHKBRD _DUPL_FNAME2 ERR 0 | Component name duplicates a refdes
CHKBRD _DUPL_RNAME WRN 0 | Duplicate Viewplace refdes
CHKBRD _DUPL_NNAME WRN 0 | Duplicate net name
CHKBRD _REF_CONFL ERR 1 | Refdes has conflicting attributes, 1=repack
CHKBRD _DEV_CONFL ERR 1 | Refdes has conflicting devices, 1=repack
CHKBRD _DUPL_SLOT ERR 1 | Duplicate slots, 1=repack
CHKBRD _COMM_PIN1 NOT 1 | Common pins, same nets, some unconnected, 1=repack
CHKBRD _COMM_PIN2 ERR 0 | Common pins, different nets, 1=repack
CHKBRD _COMM_PIN3 ERR 1 | Common pins, different attributes, 1=repack
CHKBRD _COMM_PIN4 ERR 1 | Common pins, net overrides SIGNAL, 1=repack
CHKBRD _UNUSED_SLOT NOT 0 | Unused slot
CHKBRD _UNCON_PIN WRN 0 | Unconnected pin
CHKBRD _VDVP_PKG NOT 1 | Viewdraw or Viewplace added or deleted package,
| 1=update from Viewdraw
CHKBRD _VDVP_SHP NOT 1 | Viewdraw or Viewplace shape changed,
| 1=update from Viewdraw
CHKBRD _VDVP_NET NOT 1 | Viewdraw or Viewplace net on pin changed,
| 1=update from Viewdraw
CHKBRD _VDVP_ATT NOT 1 | Viewdraw or Viewplace attribute changed,
| 1=update from Viewdraw
CHKBRD _MISSING_PIN NOT 0 | Viewdraw pin not found in Viewplace/Viewdraw
CHKBRD _EXTRA_PIN NOT 0 | Viewplace/Viewdraw pin not found in Viewdraw
| Don't ever change the following line!!!
CHKBRD _BAD_HETERO ERR 0 | Bad heterogeneous package
CHKBRD _HETERO_ATT ERR 0 | Heterogeneous device attribute conflicts
FIX_SEVERITY NOT
FIRST_REFDES 1
EndChkRules