Pin Map File XML Structure (TSM)

The pin map XML schema, located at <TestStand>\Components\Schemas\NI_SemiconductorModule\PinMap.xsd, defines the following structure for a pin map XML file:
Legend
Root element>
Element
Attribute
PinMap
  • schemaVersion—Specifies the version of the schema file.
  • Instruments—Specifies the type of instruments connected to the tester, the name of each instrument, and the number of channels available for each instrument.
    Note Consider using the following instrument naming convention for semiconductor test programs: InstrumentType_ModelNumber_PXIChassisLocation_SlotLocation, for example, HSD_657x_C2_S03, where InstrumentType is an ASCII description of the instrument, ModelNumber is the model number as defined on ni.com, PXIChassisLocation uses a single digit to identify the PXI chassis (Cx), and SlotLocation uses double digits to identify the slot location (Sxx).
    • NIDigitalPatternInstrument—Defines an NI-Digital Pattern instrument.
      • name—Name of the instrument, as defined in Measurement & Automation Explorer (MAX).
      • numberOfChannels—Number of channels available on the instrument.
      • group—Name of the group that contains the instrument. Group names are case sensitive. By default, the Pin Map Editor sets this attribute to Digital when you add NI-Digital Pattern instruments to the pin map file. By using the same group name for all NI-Digital Pattern instruments, TSM combines all instruments into a single session so you can avoid session loops in code modules. To create multiple NI-Digital Pattern sessions, use a unique name for each set of instruments for which you want to create a session. Refer to the Digital Pattern Help for information about hardware limitations that prevent certain instruments from operating together as a single instrument.
    • NIDCPowerInstrument—Defines an NI-DCPower instrument.
      • name—Name of the instrument, as defined in MAX.
      • numberOfChannels—Number of channels available on the instrument.
      • ChannelGroup—Defines a group of channels controlled by one session. By grouping channels into a single session, you can avoid using session loops in code modules. By default, the Pin Map Editor creates one channel group containing all instrument channels. To create multiple, custom groups, use a unique name for the set of instrument channels for which you want to create a session. Note that channels within a group do not have to be from the same NI-DCPower instrument. Refer to the NI-DCPower Help for information about independent channels.
        • name—Name of a group of channels. Group names are case sensitive.
        • channels—Channel(s) that are assigned to a group. If not defined, TSM will assign all channels from the instrument. Channels can be defined as a comma-separated list (e.g., 0,1,3,..,n), a continuous range (e.g., 0:3), or as a combination of the two (e.g., 0:1,3). All channels from an instrument must be assigned to a group and a channel cannot be in multiple groups.
    • NIDAQmxTask—Defines an NI-DAQmx task, not an instrument.
      • name—Name of the task, as defined in test program code modules.
      • taskType—Category of the task. Pin queries that return tasks of more than one task type return an error.
      • channelList—List of physical channels associated with the task.
      • useAsRelayDriver—Specifies whether the task is used as a relay driver.
        Note Setting this attribute to true allows the DAQmx device to be used as a Relay Module to make connections to relays instead of pins. Only one DAQmx digital output line can be defined within the channelList. You must define separate DAQmx tasks in the pin map for each digital output line you want to connect to a relay. The logic state for relay close is the digital high from the digital output line.
    • NIDmmInstrument—Defines an NI-DMM instrument. NI-DMM instruments define a single channel, displayed within TSM as channel 0.
      • name—Name of the instrument, as defined in MAX.
    • NIFGenInstrument—Defines an NI-FGEN instrument.
      • name—Name of the instrument, as defined in MAX.
      • numberOfChannels—Number of channels available on the instrument.
    • NIScopeInstrument—Defines an NI-SCOPE instrument.
      • name—Name of the instrument, as defined in MAX.
      • numberOfChannels—Number of channels available on the instrument.
      • group—Name of the group that contains the instrument. Group names are case sensitive. By default, the Pin Map Editor sets this attribute to Scope when you add NI-SCOPE instruments to the pin map file. Group names are case sensitive. By using the same group name for all NI-SCOPE instruments, TSM combines all instruments into a single session so you can avoid session loops in code modules. To create multiple NI-SCOPE sessions, use a unique name for each set of instruments for which you want to create a session. Refer to the NI-SCOPE Help for information about hardware limitations that prevent certain instruments from operating together as a single instrument.
    • NIHSDIOInstrument—Defines an NI-HSDIO instrument.
      • name—Name of the instrument, as defined in MAX.
      • numberOfChannels—Number of channels available on the instrument.
      • PFILines—(Optional) Defines the PFI lines available in the NI-HSDIO instrument in a comma-separated list of numbers or ranges of numbers separated by a hyphen. PFI number ranges are inclusive and must be in ascending order. Example: PFILines=2,3,4-8
    • NIRFSAInstrument—Defines an NI-RFSA instrument. NI-RFSA instruments define a channel named In.
      • name—Name of the instrument, as defined in MAX.
    • NIRFSGInstrument—Defines an NI-RFSG instrument. NI-RFSG instruments define a channel named Out.
      • name—Name of the instrument, as defined in MAX.
    • NIVSTInstrument—Defines an NI-VST instrument that can hold RFSA, RFSG, and FPGA sessions. NI-VST instruments define a channel named In and another channel named Out.
      • name—Name of the instrument, as defined in MAX.
      • fpgaFilePath—(Optional) Path to the FPGA file relative to the path of the pin map file. You can manually specify an absolute file path.
    • NIRFPMInstrument—Defines an RF Port Module instrument that can hold RFPM, RFmx, RFSA, RFSG, and FPGA sessions.
      • name—Name of the VST instrument, as defined in MAX, that is part of the RF port module subsystem.
      • portsList—Defines the ports available in the RF Port Module in a comma-separated list of numbers or ranges of numbers separated by a hyphen. Port number ranges are inclusive and must be in ascending order, for example, channelList="2,3,4-8".
      • calibrationFilePath—Path, relative to the path of the pin map file, to the TDMS files that contain the calibration data for the RF Port Module instrument. You can manually specify an absolute file path.
      • iviSwitchName—IVI Switch resource name associated with the port module, as defined in MAX.
      • fpgaFilePath—(Optional) Path to the FPGA file relative to the path of the pin map file. You can manually specify an absolute file path.
    • NI5530RFPortModule—Defines an NI-5530 RF Port Module instrument. You can use the NI-5530 RF Port Module to multiplex one RF instrument across multiple test sites or multiple RF instruments across multiple test sites. This element is replaced by the NIRFPMInstrument.
      • name—Name of the instrument, as defined in MAX.
      • calibrationFilePath—Path, relative to the path of the pin map file, to the TDMS files that contain the calibration data for the RF Port Module instrument. You can manually specify an absolute file path.
    • NIRelayDriverModule—Defines a PXI-2567 relay driver module.
      • name—Name of the relay driver module, as defined in MAX.
      • numberOfControlLines—Number of control lines available on the relay driver module.
    • Instrument—Defines an instrument that TSM does not natively support. Use the TSM Code Module API to set any type of session data on a channel, group of channels, or instrument. Refer to the example sequence files, pin map files, and LabVIEW code module VIs located in the <TestStand Public>\Examples\NI_SemiconductorModule\Custom Instruments directory for examples of using TSM pin map files and VIs to perform tests using instruments that TSM does not natively support.
      • name—String that identifies the instrument. For instruments that NI provides but that TSM does not natively support, specify the name of the instrument, as defined in MAX.
      • instrumentTypeId—String that identifies the instrument type, family, class, or product group. You cannot specify a value that begins with ni. This value is a string that you define in the pin map and is not a predefined value from some other source, such as a name in MAX, that you select. Use this value to identify all instances of a particular instrument type. Instruments of the same type typically have the same session data type and same driver API.
      • ChannelGroup—Defines a synchronized group of channels. Specify individual Channel elements with unique IDs within the channel group.
        • id—Unique ID for the channel group. An instrument cannot contain more than one channel group with the same ID.
        • Channel—Channel within the channel group.
          • id—Unique ID for the channel. An instrument cannot contain more than one channel with the same ID.
      • Channel—Channel on the instrument.
        • id—Unique ID for the channel. An instrument cannot contain more than one channel with the same ID.
    • NIModelBasedInstrument—Defines a Model-Based Instrument.
      • name—Unique string that identifies the instrument.
      • instrumentModel—Installed model description files in the model library.
      • category—String that specifies the category to which the instrument belongs. The instrument model description defines the category for the instrument model.
      • subcategory—(Optional) String that specifies the subcategory to which the instrument belongs. The instrument model description defines the subcategory for the instrument model.
      • Resource—(Optional) If required by the model description file, specifies the instrument resource name in Measurement & Automation Explorer (MAX).
        • owner—Specifies the instrument resource in the model description file to which the attribute values of the UserData element apply.
        • UserData—Contains the properties from the model description file you can assign.
          • propertyName—Name of the property defined in the model description file.
          • propertyValue—Value you assign to the property.
    • Multiplexer—Defines a switching instrument to use as a multiplexer across multiple test sites. You can use one instrument multiplexed across multiple test sites or multiple instruments multiplexed across multiple test sites.
      • name—Name of the Switch Executive virtual device, as defined in MAX.
      • multiplexerTypeId—(Optional) String that identifies the switch type, family, class, or product group. You cannot specify a value that begins with ni. This value is a string that you define in the pin map and is not a predefined value from some other source, such as a name in MAX, that you select. Use this value to identify all instances of a particular switch type. Switches of the same type typically have the same session data type and same driver API.
  • Pins—Specifies the pins on the DUT and the pins on the tester that the test program associated with the pin map file references.
    • DUTPin—Defines a DUT pin, which is a pin on a DUT or a resource on the tester or DIB that is associated with one or more sites.
      • name—String that identifies the DUT pin.
    • SystemPin—Defines a system pin, which is resource on the tester or DIB that is connected to an instrument.
      • name—String that identifies the system pin.
  • PinGroups—Specifies named grouping of pins.
    • PinGroup—Defines a group of pins that you can reference with a single name.
      • name—String that identifies the group of pins.
      • PinReference—Specifies a pin or a group of pins within the pin group.
        • pin—String that specifies the name of an existing pin or pin group.
  • Relays—Specifies the relays on the site and the relays on the tester that the test program associated with the pin map file references
    • SiteRelay—Defines a site relay, which is a relay on the tester or DIB that is connected to a relay driver module and that is associated with one or more sites.
      • name—String that identifies the site relay.
      • openStateDisplayLabel—(Optional) A description of the connections when the relay is in the open state. This attribute is only for informational and display purposes for the Digital Pattern Editor.
      • closedStateDisplayLabel—(Optional) A description of the connections when the relay is in the closed state. This attribute is only for informational and display purposes for the Digital Pattern Editor.
    • SystemRelay—Defines a system relay, which is a relay on the tester or DIB that is connected to a relay driver module and that is associated with all sites.
      • name—String that identifies the system relay.
      • openStateDisplayLabel—(Optional) A description of the connections when the relay is in the open state. This attribute is only for informational and display purposes for the Digital Pattern Editor.
      • closedStateDisplayLabel—(Optional) A description of the connections when the relay is in the closed state. This attribute is only for informational and display purposes for the Digital Pattern Editor.
  • RelayGroups—Specifies named grouping of relays.
    • RelayGroup—Defines a group of relays that you can reference with a single name.
      • name—String that identifies the group of relays.
      • RelayReference—Specifies a relay or a group of relays within the relay group.
        • relay—String that specifies the name of an existing relay or relay group.
  • RelayConfigurations—Specifies a grouping of relay configurations.
    • RelayConfiguration—Defines a relay configuration. A relay configuration is the name assigned to a set of relays and their positions.
      • name—String that identifies the relay configuration.
      • RelayPosition—Specifies a relay and its position.
        • relay—String that specifies the name of an existing relay or relay group.
        • position—String that specifies the position of the relay or relay group. Valid values are Open or Closed.
  • Sites—Specifies the sites on the tester.
    • Site—Defines a site to test.
      • siteNumber—Number that identifies the site. Site numbers must start at 0 and be consecutive without gaps.
  • Connections—Specifies mappings among pins, sites, instruments, and instrument channels.
    • Connection—Defines a connection between a DUT pin and an instrument channel.
      • pin—Name of the DUT pin to connect. The value must match the value of the name attribute of a DUTPin element.
      • siteNumber—The site or group of sites associated with the connection. The value must match the value of the siteNumber attribute of one of the Site elements or it must be a comma-separated list of site numbers.
      • instrument—Name of the instrument or DAQmx task to connect. The value must match the value of the name attribute of an Instrument element.
      • channel—ID of the instrument channel or physical channel ID of the DAQmx task to connect.
      • deembeddingFilePath—Path, relative to the path of the pin map file, to the S2P file for de-embedding an RF Port Module connection. You can manually specify an absolute path.
      • deembeddingOrientation—(Optional) Used with the deembeddingFilePath attribute to specify the orientation of the data in the S2P file relative to the port the channel attribute specifies. Valid values are Port1TowardDUT or Port2TowardDUT.
    • SystemConnection—Defines a direct connection between a system pin and an instrument channel.
      • pin—Name of the system pin to connect. The value must match the value of the name attribute of a SystemPin element.
      • instrument—Name of the instrument to connect. The value must match the value of the name attribute of an Instrument element.
      • channel—(Optional) ID of the instrument channel to connect.
      • deembeddingFilePath—Path, relative to the path of the pin map file, to the S2P file for de-embedding an RF Port Module connection. You can manually specify an absolute path.
      • deembeddingOrientation—(Optional) Used with the deembeddingFilePath attribute to specify the orientation of the data in the S2P file relative to the port the channel attribute specifies. Valid values are Port1TowardDUT or Port2TowardDUT.
    • MultiplexedConnection—Defines a multiplexed connection between the same DUT pin on multiple sites and a single instrument channel.
      • instrument—Name of the instrument to connect. The value must match the value of the name attribute of an Instrument element.
      • channel—ID of the instrument channel to connect.
      • MultiplexedDUTPinRoute—Specifies the route required to connect a DUT pin on a specific site to the instrument channel.
        • pin—Name of the DUT pin to connect. The value must match the value of the name attribute of a DUTPin element.
        • siteNumber—Site for the DUT pin in the system. The value must match the value of the siteNumber attribute of a Site element.
        • multiplexer—String that identifies the multiplexer required to create the route. The value must match the value of the name attribute of a Multiplexer element.
        • routeName—String that identifies the multiplexer route required to connect the pin and site to the instrument and channel.
        • deembeddingFilePath—Path, relative to the path of the pin map file, to the S2P file for de-embedding an RF Port Module connection. You can manually specify an absolute path.
        • deembeddingOrientation—(Optional) Used with the deembeddingFilePath attribute to specify the orientation of the data in the S2P file relative to the port the channel attribute specifies. Valid values are Port1TowardDUT or Port2TowardDUT.
    • RelayConnection—Defines a connection between a site relay and a control line of a relay driver module.
      • relay—Name of the site relay to connect. The value must match the value of the name attribute of a SiteRelay element.
      • siteNumber—The site or group of sites associated with the connection. The value must match the value of the siteNumber attribute of one of the Site elements or it must be a comma-separated list of site numbers.
      • relayDriverModule—Name of the relay driver module to connect. The value must match the value of the name attribute of an NIRelayDriverModule element.
      • controlLine—ID of the physical control line of the relay driver module to connect.
    • SystemRelayConnection—Defines a direct connection between a system relay and a control line of a relay driver module.
      • relay—Name of the system relay to connect. The value must match the value of the name attribute of a SystemRelay element.
      • relayDriverModule—Name of the relay driver module to connect. The value must match the value of the name attribute of an NIRelayDriverModuleelement.
      • controlLine—ID of the physical control line of the relay driver module to connect.