The GhostCard library may be used in conjunction with the Pickering LXI ClientBridge library to make more efficient use of Pickering switching products, LXI, PXI or PCI controlled,by speeding up the transition from one state to a new state in a switch system while maintaining the convenience of being able to operate through higher level commands.
The utility operates by minimizing the number of control transactions required to achieve a composite change of target switch state, condensing multiple operations in a single sub unit into a single operation. By doing this the connection latency and switch settling times of multiple single operations within a sub unit are replaced by a single latency and settling time, thus providing the fastest possible means of achieving the composite state change.
An example of GhostCard code can be found here GhostCard Example and in the GhostCard installation.
Each command to change the state of a switch comprises the following elements:
- Driver computation time typically 10us
- Connection latency time typically 1ms for an ethernet connection
- Data transfer time typically 10us
- Driver hardware control time typically 200us
- Switch state transition time typically 100us
- Switch contact settling time typically 3ms
Overall this gives a figure of about 4.3ms per switch operation.
The two major contributions to this time are the switch settling time and the connection latency.
If multiple switches need to change state then doing them individually incurs this time for each operation, the time required will be linearly proportional to the number switches to be operated. So, using the typical figures,2 switch operations will take 8.6ms, three will take 12.9ms and so on.
Use of GhostCard library combines multiple operations into a single control transaction for each sub unit, all contributions 2 thru to 6 will be incurred just once for each sub unit at the cost of a marginally increased driver computation time. So, operating 2 switches would incur no perceptible increase in the operation time. Even operating 100 switches would lead to a operation time of approximately 1 switch.
Some measured examples demonstrate the practical improvements in operation time that may be achieved.
This utility uses Pickering ClientBridge to communicate with a remote Pickering LXI device so ClientBridge must be installed.
ClientBridge may also be used to control local Pickering PXI switch products for which purpose the Pickering PILPXI direct-IO driver must also be installed.
The utility library is a Windows C-interface dll which may be easily imported into many different programing environments. Also provided are support files for National Instruments environments LabWindows and LabVIEW.
Performance of GhostCard:
Some tests have been carried out to find operation time difference between using Piplx and GhostCard library on two matrix cards with different settling time. During the test both Piplx and Ghost card library are used to accomplish the same number of switch actuation tasks in a sub unit. In both cases initially the Picmlx library PICMLX_Connect function is used to connect to a remote LXI. To perform the GhostCard test, each switching test is carried out in combination with Piplx and GhostCard library. The Piplx library is used separately to test normal Clientbridge switches operation time. The outcomes of the measured time are plotted into graphs. These graphs represent following characteristics:
- x-axis represents number of switch actuated for each test,
- y-axis represents time in millisecond (ms),
- each graph shows relay settling time of tested card.
- The left hand plot uses settling times consistent with fast reed relays, the right hand plot with EMR's.
From the graphs it can be seen that GhostCard library taken approximately 4ms for any number of switches operation where as Piplx library functions operation time gradually increased with with proportional to the number of switches.
From the above tests it can be seen that an application where more switching are required at a single operation within a sub unit a user is expected to benefit from using GhostCard library. The GhostCard library is not expected to improve single switch operation time as it requires same Ethernet transaction. The more switch operations that are combined into one operation the greater the improvement in operating time achieved by GhostCard.