UUT Description - Interface

A physical interface is described in two parts, through its Ports and/or through its connectors and pins. ATML IEEE Std 1671, has a major annex (E) on Pins, Ports and Connectors, which will not be elaborated on further here. However as an introduction Connectors and Pins represent physical entities, where as Ports are considered more abstract collection of pins (sometimes these overlap, mostly they do not).



Connector

Define the physical connectors and pins to/from the UUT.



- <hc:Interface>
+ <c:Ports>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="2" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="4" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="6" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="vc" type="Analog" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="7" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="ve" type="Analog" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="8" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="vb" type="Analog" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="9" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="Vout" type="Analog" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="3" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="Vin" type="Analog" direction="Input">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="1" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="+12V" type="Power" direction="Input">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="5" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D0" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="25" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D1" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="24" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D2" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="23" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D3" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="22" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D4" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="21" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D5" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="20" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D6" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="19" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D7" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="18" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="17" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="STX" type="Digital" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="11" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="SRX" type="Digital" direction="Input">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="12" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="13" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="J1">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="1" />
  <c:ConnectorPin connectorID="J1" pinID="2" />
  <c:ConnectorPin connectorID="J1" pinID="3" />
  <c:ConnectorPin connectorID="J1" pinID="4" />
  <c:ConnectorPin connectorID="J1" pinID="5" />
  <c:ConnectorPin connectorID="J1" pinID="6" />
  <c:ConnectorPin connectorID="J1" pinID="7" />
  <c:ConnectorPin connectorID="J1" pinID="8" />
  <c:ConnectorPin connectorID="J1" pinID="9" />
  <c:ConnectorPin connectorID="J1" pinID="11" />
  <c:ConnectorPin connectorID="J1" pinID="12" />
  <c:ConnectorPin connectorID="J1" pinID="13" />
  <c:ConnectorPin connectorID="J1" pinID="17" />
  <c:ConnectorPin connectorID="J1" pinID="18" />
  <c:ConnectorPin connectorID="J1" pinID="19" />
  <c:ConnectorPin connectorID="J1" pinID="20" />
  <c:ConnectorPin connectorID="J1" pinID="21" />
  <c:ConnectorPin connectorID="J1" pinID="22" />
  <c:ConnectorPin connectorID="J1" pinID="23" />
  <c:ConnectorPin connectorID="J1" pinID="24" />
  <c:ConnectorPin connectorID="J1" pinID="25" />
  </c:ConnectorPins>
  </c:Port>
  </c:Ports>
- <c:Connectors>
- <c:Connector type="25 Pin D (Female)" ID="J1" location="Front" matingConnectorType="25 Pin D (Male)">
- <c:Identification>
- <c:IdentificationNumbers>
  <c:IdentificationNumber type="Part" number="MFR25K-ND" qualifier="Vendor" />
  </c:IdentificationNumbers>
  <c:ModelName>8325-6000</c:ModelName>
- <c:Manufacturers>
  <c:Manufacturer name="DigiKey" />
  </c:Manufacturers>
  </c:Identification>
- <c:Pins>
  <c:Pin ID="1" name="Vin" />
  <c:Pin ID="2" name="GND" />
  <c:Pin ID="3" name="Vout" />
  <c:Pin ID="4" name="GND" />
  <c:Pin ID="5" name="+12V" />
  <c:Pin ID="6" name="GND" />
  <c:Pin ID="7" name="vc" />
  <c:Pin ID="8" name="ve" />
  <c:Pin ID="9" name="vb" />
  <c:Pin ID="11" name="STX" />
  <c:Pin ID="12" name="SRX" />
  <c:Pin ID="13" name="GND" />
  <c:Pin ID="17" name="GND" />
  <c:Pin ID="18" name="D7" />
  <c:Pin ID="19" name="D6" />
  <c:Pin ID="20" name="D5" />
  <c:Pin ID="21" name="D4" />
  <c:Pin ID="22" name="D3" />
  <c:Pin ID="23" name="D2" />
  <c:Pin ID="24" name="D1" />
  <c:Pin ID="25" name="D0" />
  </c:Pins>
  </c:Connector>
  </c:Connectors>
  </hc:Interface>


Walkthrough

The first point no node it that this is using the IEEE Std 1671-2010 standard, that allows us to iterate the connector pins (c:Connector/c:Pins) as part of the connector description. Earlier version did not have this option, that made pin description more verbose.

The UUT has one 25 way D-type connector for all its signals and test points. The purpose of c:Connector is to describe the physical connector and its pins (c:Pins). The key information for the connector is its type and ModelName. The type is defined as "A descriptive or common name for the type of connector. Example: MIL-C-38999", the ModelName is defined as "... the model name of the item", when filling in these values the type should represent a common name and be keyed, so that it can be distinguished from the matingConnectorType. For the demo the type chosen was the type description provided by the vendor, a search key to find all possible options. The ModelName is a generic part number that may be supported by multiple vendors. As a rule of thumb the type should be more generic than the ModelNumer, since both are required, try and use a more user readable description for type "25 Pin D (Female)" than ModelName ("8325-6000").

Connector has two other mandated properties, ID and location. ID (like most ATML IDs) is a type unique name for internal reference within the specific ATML description. Generally across ATML files we do not match on IDs (unless they represent some physical entity) however using consistent IDs across files does make life easier. The value of the ID, is also associated with each connector pin to identify a unique pin e.g. DSUB1-1, this gives the ID the value "DSUB1". The value of location has to be either "Front" or "Back" Given that there are only two options use "Front" if its accessible to the user and "Back" if its not (directly) accessible to the user.

Port

In ATML Ports deal with the logical connectors that are needed to help describe the ATML Description, in this case, helping to describe the interfaces used by the c:NetworkLists. In this example the the logical connectors map almost one-to-one on to the UUT connector pins.



- <c:Ports>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="2" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="4" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="6" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="vc" type="Analog" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="7" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="ve" type="Analog" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="8" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="vb" type="Analog" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="9" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="Vout" type="Analog" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="3" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="Vin" type="Analog" direction="Input">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="1" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="+12V" type="Power" direction="Input">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="5" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D0" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="25" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D1" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="24" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D2" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="23" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D3" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="22" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D4" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="21" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D5" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="20" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D6" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="19" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="D7" type="Digital" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="18" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="17" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="STX" type="Digital" direction="Output">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="11" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="SRX" type="Digital" direction="Input">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="12" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="GND" type="Ground" direction="Bi-Directional">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="13" />
  </c:ConnectorPins>
  </c:Port>
- <c:Port name="J1">
- <c:ConnectorPins>
  <c:ConnectorPin connectorID="J1" pinID="1" />
  <c:ConnectorPin connectorID="J1" pinID="2" />
  <c:ConnectorPin connectorID="J1" pinID="3" />
  <c:ConnectorPin connectorID="J1" pinID="4" />
  <c:ConnectorPin connectorID="J1" pinID="5" />
  <c:ConnectorPin connectorID="J1" pinID="6" />
  <c:ConnectorPin connectorID="J1" pinID="7" />
  <c:ConnectorPin connectorID="J1" pinID="8" />
  <c:ConnectorPin connectorID="J1" pinID="9" />
  <c:ConnectorPin connectorID="J1" pinID="11" />
  <c:ConnectorPin connectorID="J1" pinID="12" />
  <c:ConnectorPin connectorID="J1" pinID="13" />
  <c:ConnectorPin connectorID="J1" pinID="17" />
  <c:ConnectorPin connectorID="J1" pinID="18" />
  <c:ConnectorPin connectorID="J1" pinID="19" />
  <c:ConnectorPin connectorID="J1" pinID="20" />
  <c:ConnectorPin connectorID="J1" pinID="21" />
  <c:ConnectorPin connectorID="J1" pinID="22" />
  <c:ConnectorPin connectorID="J1" pinID="23" />
  <c:ConnectorPin connectorID="J1" pinID="24" />
  <c:ConnectorPin connectorID="J1" pinID="25" />
  </c:ConnectorPins>
  </c:Port>
  </c:Ports>


Walkthrough

In order to define the UUT schematic the UUT description needs to create a c:NetworkList, Ports have to be connected to Ports, UUT description therefore needs to create a Port per pin that is used in the interface. In the Port description there are three distinct examples:

J1 a logical port representing all the pins in the J1 connector. Within the document Port J1 is not used, so why is it there? At some point it will be necessary to identify that the UUT connects to the ITA. Having a port representing the connector with all the used pins makes that interface definition easier.

In the Port definition there are multiple GND ports all mapped to different Pins. This is really to do with where ground is mapped in the c:NetworkList, In the UUT Schematic all ground pins are tied together. The only use of GND Ports in the UUT Description is no represent that UUT schematic, by using the same name "GND" one node can apply to all ports as a collective.

Because UUT description is describing the UUT schematic, we need to define wire to wire connections that leads to a port-per-pin mapping. As an aside this is common in the UUT and ITA Descriptions , but not common in the Test Station or Test Description where Ports represent complete signal paths. A port must have a name, for convenience the port name and pin names have been chosen to match. there is no significance in this, and no information can be implied from this name mapping, it just saves on having to think up extra names when the port contains a single pin

The direction and type are optional attributes, but for the ATML useful necessary values. The direction is the only place where a signal direction can be specified, important for some of the in-circuit applications. Equally the port type of Analogue, Digital, Ground, Optical, Power, Software provides a simple classification without needing to examine the test description