.

SynqNet Cable Length

The SynqNet cable lengths are derived from the measured propagation delays during network initialization. This information is used to determine the spacing between packets for each node. SynqNet networks can have up to 32 nodes and cables can be up to 100 meters in length. By measuring the actual propagation delays and optimizing the packet spacing, the network performance and actual bandwidth is improved.

Typical CAT5 cable propagation delays are roughly 0.005 microsec per meter. Actual values are affected by cable construction and will vary, but the variation will be small for any reasonable cable. The propagation delay can be estimated by a cable propagation velocity of 70% the speed of light, using the formula:

       delay = meters * 1,000,000 / (.7 * 299,722,458)

For example, here are some rough values for various cable lengths:

Length (meters)
Time (microsec)
1
0.005
10
0.048
25
0.119
50
0.238
100
0.477

 

Measurement

During SynqNet initialization the controller sends a packet to each node, waits for the node to repeat the packet back, and measures the elapsed time. In ring topologies, the last cable requires the packet to travel around the network and return to the controller. The controller reads the clock values for each measurement packet and stores the values. The MPI converts the raw time values into cable length (meters). The MPI also uses the propogation delay values to calculate the packet spacing.

The propogation delay measurement is based on the SynqNet clock rate, which is 25MHz (period = 0.040 microseconds). At 25MHz, the clock resolution is 0.040 microseconds, which translates to roughly 8 meters. The accuracy is based on the forwarding variations for each node (+/- 1 clock) and the resolution of the propogation delay timer (+/- 0.5 clocks). The accuracy for each cable can be determined from:

        accuracy = ((.020 microsec) + (.040 microsec * nodeCount)) / 2

in terms of meters:

        accuracy = ((4 meters) + (8 meters * nodeCount)) / 2

For example, a network with 3 nodes has following cable length accuracies:

Cable
Resolution + Variation = Accuracy
0
(.02 + .04)/2 = +/- .03 microsec (+/- 6 meters)
1
(.02 + .08)/2 = +/- .05 microsec (+/- 10 meters)
2
(.02 + .12)/2 = +/- .07 microsec (+/- 14 meters)

To read the measured cable lengths from the MPI, see mpiSynqNetInfo(...).

 

Configuration

In some high performance networks, the system designer may want to optimize the packet spacing by configuring the cable length values. Most networks will not need this type of optimization. The SynqNet network has maximum, minimum, and nominal cable length configurations. Changing these configurations will affect the packet spacing calculations and the topology mismatch checking. During network initialization, if a measured cable length is not between the minimum and maximum values, a MPISynqNetMessageTOPOLOGY_MISMATCH error will be returned by the MPI.

 

Cable Length Check

During network initialization, the nominal cable lengths are measured and the minimum and maximum values are calculated. See mpiSynqNetInfo(...) for details. The minimum cable length will be set to the nominal –16 meters. The maximum cable length will be set to the nominal +16 meters. To enable cable length checking, use mpiSynqNetConfigGet(...) and mpiSynqNetConfigSet(...) to configure the min, max, and nominal cable lengths. During subsequent network initializations, the discovered cable length will be compared to the minimum and maximum values. If the measured cable length is not between the minimum and maximum values, a MPISyqnNetMessageCABLE_LENGTH_MISMATCH error will be returned by the MPI. To disable cable length checking, configure the minimum, maximum, and nominal values to zero.

See Also: MPISynqNetConfig

Previous

 

       Legal Notice  |  Tech Email  |  Feedback
      
Copyright ©
2001-2021 Motion Engineering