Generic DE HDL Library Development Specification Cadence Design Systems, Inc. This document contains information that is proprietary to Cadence Design Systems, Inc. This information is not to be disclosed, duplicated, or released to any third party without prior written permission from an authorized representative of Cadence Design Systems, Inc. Any recipient of this document agrees to make every reasonable effort to prevent the unauthorized use of the information contained in this document. DE HDL Library Development Specification Revision 1.2 10/16/2008 Revision Block Rev. Date Description Changed by Draft 0.0 2-15-2007 Cadence Draft. Frank Winsor Draft 0.1 5-4-2007 Draft Update Frank Winsor, Chad Saathoff Draft 0.2 5-7-2007 Draft Update Frank Winsor, Chad Saathoff Draft 1.0 8-10-2008 Draft Update Frank Winsor Draft 1.1 10-3-2008 Draft Update Donna Pierce, Chad Saathoff Draft 1.2 10-16-2008 Draft Update Chad Saathoff Confidential Page 2 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 TABLE OF CONTENTS 1 Introduction .........................................................................................................................5 1.1 Assumptions .................................................................................................................5 1.2 Reference Documents....................................................................................................5 2 General Description..............................................................................................................6 3 When to create a new symbol ...............................................................................................6 4 Building Concept symbols....................................................................................................6 4.1 Part Developer ..............................................................................................................6 4.2 Copying existing parts...................................................................................................6 5 Symbol and Pin Naming Conventions ..................................................................................7 6 Symbol View (Body Graphics).............................................................................................7 6.1 Grid ..............................................................................................................................7 6.2 Origin ...........................................................................................................................7 6.3 Size...............................................................................................................................7 6.4 Versions........................................................................................................................7 6.5 Recommended Text Sizing............................................................................................8 6.6 Pin Organization ...........................................................................................................9 6.6.1 Pin stubs.................................................................................................................9 6.6.2 Pin text...................................................................................................................9 6.6.3 Pin names............................................................................................................. 10 6.6.4 Power supply pins ................................................................................................ 10 6.6.5 No Connect Pins................................................................................................... 12 6.6.6 Pin number visibility ............................................................................................ 12 6.7 Body properties/attributes .............................................................................................. 13 6.7.1 PACK_SHORT property ........................................................................................... 13 6.8 Property location and syntax ........................................................................................... 13 6.9 Symbol Types and Their Requirements ........................................................................... 16 6.9.1 Multiple function (Gate) symbols (symmetrical) ....................................................... 16 6.9.2 Multiple Function Asymmetrical symbols.................................................................. 16 6.9.3 Schematic symbols (additional issues & requirements).............................................. 17 6.9.4 Single body (all pins shown) ...................................................................................... 18 6.10 Property values .............................................................................................................. 18 7.1 Package types ................................................................................................................. 20 Confidential Page 3 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 7.2 Pin properties.................................................................................................................. 20 7.2.1 Pin Group property ................................................................................................... 20 7.3 Body properties............................................................................................................... 20 8 Part Table View ..................................................................................................................... 23 8.1 Key properties ................................................................................................................. 23 8.2 Injected properties............................................................................................................ 23 8.3 Identification of Key vs. Injected properties .................................................................... 24 8.4 Additional properties........................................................................................................ 24 Confidential Page 4 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 1 Introduction This document provides specifications and guidelines for the development and content of DE HDL symbols libraries.. DE HDL symbol libraries generated, in accordance with this specification, will support design verification and printed circuit board layout. 1.1 Assumptions This guideline document assumes that the audience is familiar with the Cadence Library development process, and the Cadence tools. This documentation is based upon the SPB16.01 releases of Cadence software. All guidelines have been developed to encourage use of the standard Cadence applications in the PCB flow. 1.2 Reference Documents Cadence PCB System Master Help Cadence Online Documentation Confidential Page 5 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 2 General Description DE HDL library elements consist of multiple views. Each view provides different information about a library element. The symbol view contains the graphical representation of the element. The chips view contains the logical to physical pin mapping for each package type of a component. The part table view contains the physical part table file for a component/s. 3 When to create a new symbol The librarian typically decides to create a new symbol based on the following criteria: • When a component has a different function, or a different number of logical pins from existing symbols, a new schematic symbol must be created. For example, a voltage regulator has three logical pins (in, out, ground), however, some voltage regulators require two physical pins on the output. This type part actually has four logical pins (in, out1, out2, and ground), and requires a different schematic symbol than the three-pin version. • Components with the same function, and logical pins, but with different physical package types (e.g., PLCC vs. SOIC) use one schematic symbol, and a chips file that describes more than one symbol type (i.e. ls04 DIP and ls04 SOIC) or multiple part chips file. 4 Building Concept symbols 4.1 Part Developer The Cadence Part Developer tool should be used as much as possible to avoid syntax and formatting errors during the creation of the Symbol View, Chips View, and Part Table File View. 4.2 Copying existing parts If a part, similar to the new one being built, already exists in a library, it is sometimes preferable to copy the existing part and rename it as a starting point for the new part. This will save time by eliminating the task of re-drawing graphic elements that are the same or similar. Confidential Page 6 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 5 Symbol and Pin Naming Conventions Logical symbol names and pin names must follow Cadence naming rules for logical symbols. The following rules should be used in symbol names and pin names. • Names may contain only alphanumeric characters and the underscore characters. • Names should not contain consecutive underscore characters or end with an underscore character. • The maximum number of characters in a symbol name is 30. NOTE: Use lower case letters. Concept will automatically change what is otherwise acceptable. 6 Symbol View (Body Graphics) The symbol view is the graphical image of the symbol. All symbols, in the library, have at least one symbol view. Multiple versions of a symbol may be created. . 6.1 Grid The default grid for a symbol is 0.100 inch. Pin should be on a grid in reference to origin 6.2 Origin The symbol origin cannot fall on a pin. The default origin is the center of the part plus or minus one grid. 6.3 Size The maximum size of a symbol will be determined by what will comfortably fit on the selected size schematic sheet, at the librarian’s discretion. The symbol width must be wide enough to accommodate pin labels, side by side. The symbol should be drawn to reflect what is shown in the part datasheet. When the datasheet does not provide a symbol, the librarian’s discretion will take precedence. Any unique requirements should be specified at the time the part request is made. 6.4 Versions Symbol versions for different orientations of a cell may be created; these will be multiple symbol views for certain library components. This eliminates the need to rotate the symbol when instantiated. Concept can mirror a symbol about the Y-axis, but not the X. Because of this, certain types of symbols will require more versions. For example, a resistor symbol only needs a Confidential Page 7 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 horizontal and vertical version, but a polar capacitor or diode or other discrete component, will require three orientations: horizontal, vertical (positive pin up), and vertical (positive pin down). Figure 1: Multiple symbol versions 6.5 Recommended Text Sizing Sizing for text on the symbol is related to schematic sheet size In general text should not be smaller than 0.050 inches tall. $LOCATION and LOCATION properties should be at least 0.050 inches tall. VALUE properties should be at least 0.050 inches tall. All other body properties should be at least 0.050 inches tall, minimum. PIN_NAME property should be at least 0.050 inches tall. PIN_NUMBER placeholders should be at least 0.050 inches tall. PACK_TYPE properties should be at least 0.050 inches tall. Confidential Page 8 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 6.6 Pin Organization In the absence of design direction, Cadence recommends organizing pins such that inputs are on the left, and outputs are on the right side of the symbol. Bi-directional pins may be placed on either side, but the right side is preferred. Some control pins such as ENABLE, SET, and RESET may be placed at the top or bottom. Bit pin-order is MSB to LSB, from the top to bottom, left to right. Example: Data<7..0> with 7 (highest numeric value) representing the MSB and 0 (lowest numeric value) representing the LSB. 6.6.1 Pin stubs Pin stubs are recommended to be 0.100 inches long for rectangular parts using a 0.100 inch visible grid. Pass through pins are not recommended but are allowed when required for clarity and ease of routing. Draw low asserted, and active low, pins with 0.100 inch diameter circles. Figure 2: Pin stubs Analog and odd-shaped parts should have reasonable pin stubs based on their appearance. In all cases pins must land on a grid. 6.6.2 Pin text Pin text is used for graphical identification of pins. Pin text should be a minimum of 0.050 inches tall, should be placed inside the symbol outline, and should be placed adjacent to the pin it represents. Pin text should accurately identify the pin functions, while remaining as brief as possible. The text size should be consistent within the part and throughout the library. Pin text is entered in uppercase text and can be placed 0.020 inches in from the symbol borders. Set the right side and top notes right justified and left side and bottom left justified. At the librarian’s discretion, vertical pins may be labeled with vertical text. When possible, keep the pin text horizontal, and right reading. Confidential Page 9 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 6.6.3 Pin names All pin names must begin with an alpha character (to be HDL/VHDL compliant). Where possible, use the pin function from the data sheet for pin names. Pin names are uppercase text. Pin names must be unique. Low assertion and active low pins require either an asterisk “*” or a“_N”, at the end of the pin function text. Table 1: Example of Pin Names defines an example of pin names for the symbols types listed. Table 1: Example of Pin Names 6.6.4 Symbol Type Pin Function Pin Name Battery, Polar Capacitor Positive Negative P N Diode, Zener, LED, etc. (the anode is always pin 1) Anode Cathode A K Transistor Emitter Base Collector E B C FET Gate Source Drain G S D Power supply pins Power supply pins are defined one of two ways: as implicit pins (not shown on the symbol), and explicitly shown on the symbol. 6.6.4.1 Implicit power pins Implicit power pins pins are defined in the global pins section of Part Developer. Although the preferred method is to specify power pins in the global pins section of Part Developer, an exception can be made if the part requires additional hardware, (i.e., a shield with grounded mounting holes used on some connectors). In this case the user may specify the extra ground pins by using POWER_PINS or MERGE_POWER_PINS as an “additional” property in the PTF row specifying the hardware. 6.6.4.2 Explicit power pins If a component uses non-standard power supplies (e.g., an op amp) the librarian may add an explicit power pin to the symbol, and use the POWER pin type definition in the chips.prt. Scalar pin names must be unique; append a numeral to the VCC pin name, (e.g., VCC1, VCC2, VCC3, etc). See Table 2 for the exact properties of an explicit power pin. Confidential Page 10 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 Table 2: Pin type properties Pin Type ANALOG Property and Value Function Tool Used By PIN TYPE=’ANALOG’ Analog Pin Packager XL Bi-directional Packager XL NO_LOAD_CHECK=BOTH NO_IO_CHECK=BOTH ALLOW_CONNECT=TRUE BIDIR INPUT_LOAD=(lil, lih) OUTPUT_LOAD=(lol, loh) BIDIRECTIONAL=TRUE INPUT INPUT_LOAD=(lil, lih) Input Packager XL OUTPUT OUTPUT_LOAD=(lol, loh) Output Packager XL TS INPUT_LOAD=(lil, lih) Tri-state Packager XL INPUT_LOAD=(lil, lih) Tri-State Packager XL OUTPUT_LOAD=(lol, loh) Bi-directional OUTPUT_LOAD=(lol, loh) OUTPUT_TYPE=(TS, TS) TS_BDIR OUTPUT_TYPE=(TS, TS) BIDIRECTIONAL=TRUE OC OUTPUT_LOAD=(lol, loh) Open Collector Packager XL INPUT_LOAD=(lil, lih) Open Collector Packager XL OUTPUT_LOAD=(lol, loh) Bi-directional OUTPUT_TYPE=(OC, AND) OC_BIDIR BIDIRECTIONAL=TRUE OUTPUT_TYPE=(OC, AND) OE OUTPUT_LOAD=(lol, loh) Open Emitter Packager XL INPUT_LOAD=(lil, lih) Open Emitter Packager XL OUTPUT_LOAD=(lol,loh) Bi-directional OUTPUT_TYPE=(OE, OR) OE_BIDIR BIDIRECTIONAL=TRUE OUTPUT_TYPE=(OE, OR) POWER PIN_TYPE=POWER Not listed on NO_LOAD_CHECK=BOTH POWER_PINS line of NO_IO_CHECK=BOTH chips.prt file. Packager XL ALLOW_CONNECT=TRUE NC PIN_TYPE=NC Not listed on NC_PINS NO_LOAD_CHECK=BOTH line of chips.prt file. Packager XL NO_IO_CHECK=BOTH ALLOW_CONNECT=TRUE UNSPEC NO_LOAD_CHECK = ‘BOTH’ Recommended for NO_IO_CHECK = ‘BOTH’ connectors and ALLOW_CONNECT = ‘TRUE’ discretes Confidential Packager XL Page 11 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 GROUND If the pin is in the body section Packager XL POWER_PINS = (If the pin is in the (GND:<pin number>); body section) GROUND_NETS = ‘<pin name>’; GROUND If the pin is in the pin section Packager XL ‘<pin name>’: PIN_NUMBER = ‘(<pin_number>)’ PINUSE = ‘GROUND’; 6.6.5 No Connect Pins 6.6.5.1 Implicit No-Connect pins Implicit no-connect pins are defined in the global pins section of Part Developer. If the component requires no-connect pins, based on selection of additional hardware (MECH_PART) from the part table file (PTF), then the NC_PINS or MERGE_NC_PINS property must be an “additional” property added to the PTF row corresponding to the selected component/hardware. Reference: Cadence Online Help. NOTE: Do not use the PINCOUNT property to define NC_PINS, they must be specified. 6.6.5.2 Explicit No Connect Pins Explicit no connect pins (shown on the body) that have no electrical connection must not be named NC. Scalar pin names must be unique; append a numeral to the NC pin name, (e.g., NC1, NC2, NC3, etc). The appended numeral can be the corresponding pin number of the 'no connect' pin for clarity. Use the NC pin type definition in Part Developer. 6.6.6 Pin number visibility If there is a requirement to manually place pin number in a location other the default location use the placeholder property $PN=?. Pin-number property placeholder text should be a minimum of 0.050 inches tall. Place pin-number placeholders on pin stubs. Set the position, rotation, and justification as follows: Right side pin numbers are left justified. Top pin numbers are left justified and may be rotated to read from the right side of the page if space is limited. Left side pin numbers are right justified. Top pin numbers are left justified and bottom pin numbers are right justified, and may be rotated to read from the right side of the page if space is limited. Confidential Page 12 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 In the case where component symbols that require no visible pin numbers have the property $PN=# attached to the pin. Place the property close to the pin. Typically these component symbols should have invisible pin numbers: resistors, capacitors, diodes, and transistors (including FETs). 6.7 Body properties/attributes The property placeholders, listed in Table 3: Global body properties, are common to all schematic symbols, and must be included, as defined, on each symbol. In addition to the global properties, component property placeholders may be required based on the part family. For example, a resistor may require additional properties such as VALUE, TOL, etc. In addition, in some cases a component symbol may require a DEVICE property and or a simulation property be attached to the body. See Table 3: Global body properties Verify Global properies (That are used throughout library) Property Name Visibility Default Value $LOCATION Value ‘?’ PATH None ‘?’ See Section 7.3 for additional body properties. 6.7.1 PACK_SHORT property The PACK_SHORT property can be used on the body view and/or in the schematic when multiple pins have the same logical function and the user wants to short them during packaging. Multiple groups of pins, each group having two or more pins, can be shorted. The user must use logical schematic pin names with this property. Example: PACK_SHORT = (A, B) (C, D, E) A, B and C, D, E representing the logical pin names of 5 pins. In this example pins A, B would be shorted together and pins C, D, E would be shorted together. (This does not apply to power and ground pins. Specified as POWER_PINS). 6.8 Property location and syntax Whenever practical, the $LOCATION property should be placed where it will be visible in a location common to all parts. For example, inside the symbol body, center justified. In cases where the part is too small to fit the $LOCATION property, the property should be placed at the top, outside the symbol body, center justified. Use a ‘?’ in the value field. The PATH placeholder is usually placed above, and to the right of the symbol origin. It is usually invisible. For other types of components, place $LOCATION property to the right, or top of the symbol. Keep the placeholders on at least a 0.050 inch grid. All other (visible) placeholder properties should be placed below the $LOCATION property. Set the text justification for the property: Right side left justified. Left side right justified. Top or bottom center justified. Confidential Page 13 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 Properties with no display setting (i.e., invisible) should be placed close to the origin of the symbol, above the PATH property placeholder. Figure 3, below, shows the property location and visibility for discrete components. Figure 4, on the next page, shows the property location and visibility for IC components. Figure 3: Property location for discrete components Confidential Page 14 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 Figure 4: Property location example for IC components PIN NAME FEPROM 2MX8 A<20> A<19> A<18> A<17> A<16> A<15> A<14> A<13> A<12> A<11> A<10> A<9> A<8> A<7> A<6> A<5> A<4> A<3> A<2> A<1> A<0> A20 A19 A18 A17 A16 A15 A14 A13 A12 A11 A10 A9 A8 A7 A6 A5 A4 A3 A2 A1 A0 WE* OE* CD* RP* WE OE CD RP DQ7 DQ6 DQ5 DQ4 DQ3 DQ2 DQ1 DQ0 x TEXT (VIS) DQ<7> DQ<6> DQ<5> DQ<4> DQ<3> DQ<2> DQ<1> DQ<0> PATH=? PACK_TYPE=? OTHER=? RY/BY NC GND1 GND2 INVISIBLE PROPERTIES PLACED NEAR ORIGIN RY/BY NC1 GND1 GND2 PIN_TEXT (VIS) ? $LOCATION=? (VIS) Confidential Page 15 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 6.9 Symbol Types and Their Requirements Multiple function and asymmetrical symbols have specific requirements. 6.9.1 Multiple function (Gate) symbols (symmetrical) Versions of symbols that have one logical function repeated multiple times in the package may be created such that an individual function or the entire package can be instantiated. When multiple symbols exist, representing single and multiple bit versions, the single bit version will be first, followed by the increasing bit versions. Versions that represent the entire package or multiple sections require the HAS_FIXED_SIZE property. Creation of a whole package version is not recommended unless specifically required; some components are very seldom instantiated as a whole package (e.g., a quad op amp). 6.9.2 Multiple Function Asymmetrical symbols An asymmetrical symbol is a part with multiple functions where the sections are not interchangeable. Asymmetrical symbols are created for large pin-count components, or, for components with logically dissimilar sections. Each symbol version contains a portion of the logical pins in the component. For example: a relay component contains a coil and contacts. To aid the schematic flow, the contacts, and coil should be separate symbols, but need to package into one part; the sections of the relay are logically dissimilar. An asymmetrical symbol should be created for the relay. For asymmetrical symbols where each symbol version represents only one slot, (a split part), requires the body property SPLIT_INST=TRUE be placed on every version in the symbol view. Large pin-count devices such as ASICs will have a note placed inside each body version at the bottom to identify which section it represents of the total sections (e.g., (1 / 4) would identify section 1 of a 4 section part). See Cadence Online Help. To create and use split parts, you need to add either the SPLIT_INST and $LOCATION properties or the SPLIT_INST_NAME property on the symbol/chips. This can be done through Tools > Setup In the “Split Parts” meu area, select the radio button for “Use SPLIT_INST and $LOCATION. Confidential Page 16 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 6.9.3 Schematic symbols (additional issues & requirements) The following requirements must be met when creating schematic symbols: • The reference designator for the component must be displayed. • There must be enough room on the schematic to connect wires to all pins of the symbol, while still allowing room for pin numbers, bus rippers (bit taps), and signal names Confidential Page 17 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 The minimum wire-to-wire spacing on the schematic is 0.100inch. Wires that are run perpendicular to a pin, must allow room for the pin number plus 0.050 inch. If the wire is a bus, then additional room must be made for the bus ripper (bit tap) and the bit number. The bit number and pin number must have at least 0.100inch between them • The component must be selectable from the “parts browser”, for instantiation on the schematic. This means that there must be a physical part table file (PTF) for each component. To solve the problems associated with large pin-count devices, several styles of schematic symbols will be used. Each has a purpose, and is presented in descending order of preference (i.e., if the symbol fits the criteria for the first solution, do not use the second, third, etc.). 6.9.4 Single body (all pins shown) This is the preferred symbol style. However, typically it will only accommodate components with less than 256 logical pins (the actual pins shown on the symbol). The 2nd requirement listed in section 6.8.3 will drive the actual maximum number of pins that can be put on a symbol. The single body symbol may be created with pins on only two sides of the component (left/right, or top/bottom), or with pins on all four sides. Do not create symbols with more than four sides for symbol pins. Pins of related functions should be grouped together when possible, with 0.200 inch gaps between the groups. Gaps improve readability, but consume space. Consider eliminating some of the gaps to keep the symbol a single body. If readability becomes an issue, then a single body symbol is inappropriate for the component. Review the criteria for the other solutions and choose the most applicable. 6.10 Property values Property values are strings. They must be entered consistently. The values .01UF and 0.01U may seem equivalent, but they are not equal. Add a zero (0) to the beginning of all property values less than one (e.g., 0.01UF not .01UF). Use a standard set of abbreviations such as those found in Table 3 for electrical property values: Confidential Page 18 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 Table 4: Units for Properties Confidential Page 19 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 7 Package / Chips View This chips view data description is for informational purposes only. The chips view is created by and updated within Part Developer. The chips view (chips.prt file) contains the physical information for a package. It consists of (at least) one primitive section. Each primitive contains a pin section and a body section. Every pin (coinciding with each pin on all body versions) must be listed in the pin section, and must have a unique pin name along with the corresponding physical pin numbers. Do not use leading zeros in pin numbers, (e.g., use A1 not A01). • Asymmetrical parts are defined in the pin section and have unique pin names and pin numbers for each different asymmetrical section. 7.1 Package types The PACK_TYPE property may be used to specify different physical packages, possibly with different pin mapping or pin numbers, using the same logical symbol and pin names. This is done by defining multiple primitives in the chips file. Each unique package type (PACK_TYPE) requires an entry in the chips.prt file, and may require a unique primitive pin and body section for each different mechanical pin combination. 7.2 Pin properties Pin location may be defined using the drop down lists in the “Add Pin” window in Part Developer, based on the pin type information from the vendor data sheet. Include pin loading information if readily available; substitute an asterisk (*) for unknown values. NOTE: Input and output load currents are expressed in milliamperes. 7.2.1 Pin Group property The PIN_GROUP property may be added to swappable pins. Swappable pins are pins that have identical functionality and are interchangeable. (i.e. the pins of a resistor or non polarized capacitor). Resistor packs sometimes have swappable pins in them, but are often built as functions and the functions are swapped instead of the pins. Example: A sip8, which has a common power pin and 7 resistors in it. The 7 resistors are not swappable pins but swappable functions each with a common power pin. 7.3 Body properties The following properties are contained within in the body section of the chips.prt file: • PART_NAME (required) Same as the primitive name. This property specifies the physical name of a logical part. • CLASS (required) describes the broad category of the component and has one of the following values: DISCRETE - for discrete components such as resistors, capacitors, and so on; Confidential Page 20 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 IC - for semiconductor components; IO - for passive I/O components such as terminals, connectors, and so on. • PHYS_DES_PREFIX The value will depend on the reference designator prefix for the part. The single pin version of a connector will have a hard location property attached to the body to force manual location assignments in the schematic. Table 5: Body properties Property PART_NAME CLASS Value Use Same as the primitive name This property specifies the physical name of a logical part. DISCRETE IC IO Describes the broad category of the component Confidential Page 21 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 Table 6 : Body Properties – Typical Physical Designator Prefixes Property PHYS_DES_PREFIX Component Type Prefix Battery, Battery Holder Board Standoff Busbar Cable Capacitor, Variable Choke Circuit Breaker Clearance Pad Coil Connector Controlled Rectifier Converter Crystal Delay Diode Fence Ground Ferrite Fiducial Filter Fuse Ground Point Inductor Inductor Pack Integrated Circuit IC Socket Jumper Wire Lighting Device (LED, Neon, Etc.) BT BS BB W C L CB CP L J CR MG Y DL D FG L FD FL F GP L LP U U W DS Confidential Component Type Prefix Loudspeaker Moire, Target Motor Oscillator Potentiometer RC Filter Network Relay Resistor, Variable Resistor Pack Rheostat Shield Socket Solder Bridge Surge Arrester Surge Protector Switch, Contact (including DIP switch) Thermistor Test Point Tooling & Mounting Holes (from PCB) Tooling & Mounting Holes (from Schematic) Toroid Transformer Transducer Transistor Voltage Regulator Zener Diode Other (assembly) LS ZM B G R RC K R RP R SH J W E SP S R TP ZH ZT L T MT Q VR DZ Z Page 22 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 8 Part Table View Part table view (Part Table File) provides for selecting and annotating key properties to a part in the schematic, and for passing or injecting additional properties into the net list for Allegro and other tasks where properties are needed. 8.1 Key properties Key properties are annotated to the symbol when placed in the schematic. Any changes made to key properties after placement requires the symbol to be replaced. Key properties will appear to the left of the equal sign on a part row in the part table file. Key properties typically represent parameters for component selection (e.g., value, tolerance, type, and pack_type). Key properties must be chosen carefully. Once a library part is released, multiple steps are required to make changes without affecting designs in progress. Properties should be chosen that impart information required on the schematic. The combined string of all key property values for a part row record must be unique within a given part table file. It is suggested that Key properties be kept to the minimum required to meet the above criteria of uniqueness and required schematic annotation. Key property values may not be blank. A placeholder must be present. The typical properties that are Key include: • PART_NUMBER (Company part number) • VALUE (For Capacitance, Resistance, etc) • Tolerance ((For Capacitors, Resistors, etc) 8.2 Injected properties Injected properties further define the unique characteristics of each line definition of a part. Injected properties appear to the right of the equal sign on a part row in the part table file. Packager-XL passes these properties to Allegro in the physical netlist, - for example, part descriptions, manufacturer and manufacturer part numbers, costs, or package types. You may change, add, or delete injected properties in the part table without affecting the schematic because when the schematic is packaged, the part table definition of the injected property takes precedence over the instance definition. The typical properties that are injected are: • DESCRIPTION (Company part description) • JEDEC_TYPE (Company footprint name) • MFG (Manufacturer) • MFG_PN (Manufacturer’s part number) • STATUS (A qualification or obsolescence related indicator) • ROHS (Environmental complance) Confidential Page 23 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 8.3 Identification of Key vs. Injected properties The identification of which properties should be key and which should be injected must be considered within the framework of how the Cadence tools utilize these and the time impact to the library process as additional key properties are selected. As a core requirement, the set of key property values must form a unique record within the ptf file. As a result, the use of a company part number as a sole key property is only viable when the company PN is unique for each record instance. If not unique, additional key properties must be added to create a unique property value string. 8.4 Additional properties A few select components will require additional properties to be injected. These properties are injected . They are added to the PTF as “additional properties.” They are as follows: • ALT_SYMBOLS indicates additional Allegro symbols available during placement • MECH_PART indicates additional mechanical parts are used with this part Part table entries for component types will typically contain the following properties: Table 7 Examples of Part Table Data Device Key Properties Injected Properties Capacitor PART_NUMBER = Company Part Number JEDEC_TYPE = Allegro Footprint VALUE = uF, pF ROHS = Y/N VOLTAGE = Voltage Rating, STATUS = TOLERANCE = Tolerance Connector PART_NUMBER = Company Part Number JEDEC_TYPE = Allegro Footprint ROHS = Y/N STATUS = DESCR= Text description Diode PART_NUMBER = Company Part Number JEDEC_TYPE = Allegro Footprint ROHS = Y/N STATUS = DESCR= Text description or VOLTAGE = Voltage Rating CURRENT = Current Rating Confidential Page 24 of 25 ConceptHDL Library Development Specification Revision 1.2 10/16/2008 Device Key Properties Injected Properties Ferrite Bead PART_NUMBER = Company Part Number JEDEC_TYPE = Allegro Footprint VALUE = Impedance ROHS = Y/N STATUS = FREQUENCY = Value at Z rated CURRENT = Current Rating DCRES = DC resistance Max. Inductors PART_NUMBER = Company Part Number JEDEC_TYPE = Allegro Footprint VALUE = uH ROHS = Y/N CURRENT = Current Rating STATUS = TOLERANCE = Tolerance Ics-General PART_NUMBER = Company Part Number JEDEC_TYPE = Allegro Footprint STATUS = ROHS = Y/N DESCR= Text description Ics-Memory PART_NUMBER = Company Part Number JEDEC_TYPE = Allegro Footprint STATUS = ROHS = Y/N DESCR= Text description or TYPE ORGANIZATION VOLTAGE Resistor PART_NUMBER = Company Part Number JEDEC_TYPE = Allegro Footprint VALUE = Ohms ROHS = Y/N WATTAGE= Wattage Rating STATUS = TOLERANCE = Tolerance Confidential Page 25 of 25