Network List

Networklist can be used to map:

- Interfaces to Interfaces

- Interfaces To Components

- Components to Components

For the ATML demonstrations the UUT is built directly from common components resistors capacitors transistors etc. Describing these components is a edge use case for the ATML hardware descriptions. What is described below will be changed in future releases of the 'dot' standards and therefore replicating its use should be considered carefully.

Conceptually a NetworkList is a series on Networks, where each Network is a collection of nodes which are all jointed together, where each is identified by an XPath (within the document) to an Port. Note: A lot of these connections where written by hand, mainly because of the lack of tools available, its a tedious and error prone exercise. if you do need to do it yourself, and do not have the necessary tool support, try and check each XPath with a XML checker. XMLSpy and Liquid XML have a such features which may be of use.

Walkthrough

In generating the NetworkList, for every set of pins, represented by their ports are connected together, a c:Network element is added with each c:Node representing each port

As an example the following identifies that the interface port Vin is connected to capacitor C1 input

- <hc:Network>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Interface/c:Ports/c:Port[@name="Vin"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="C1"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="a"]</hc:Path>
  </hc:Node>
  </hc:Network>

or alternatively that capacitor C1 output is connected to switch K1 input is connected

- <hc:Network>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="C1"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="b"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="K1"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="in"]</hc:Path>
  </hc:Node>
  </hc:Network>

There is no limit to the number of nodes that can be connected in a single network, in the following example not only are there multiple nodes but the GND XPath finds multiple Ports to connect

- <hc:Network>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Interface/c:Ports/c:Port[@name="GND"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="K2"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="out"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="K6"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="out"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="R7"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="b"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="R5"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="b"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="IC1"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="GND"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="IC1"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="CS"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="IC1"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="B1"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="MOD1"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="GND"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="IC4"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="GND"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="IC2"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="GND"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="IC3"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="GND"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="C4"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="b"]</hc:Path>
  </hc:Node>
- <hc:Node>
  <hc:Path>//uut:Hardware/hc:Components/hc:Component[@ID="C5"]/c:Definition/hc:Interface/c:Ports/c:Port[@name="b"]</hc:Path>
  </hc:Node>
  </hc:Network>