What is hot-swap?
Hot-swap refers to the action of replacing a system component while the system continues to run, whilst maintaining normal operation. Hot-Swap is a complex operation due to the high level of variability introduced by human and mechanical factors, which must be considered during the design and test phases.
Pin Connection Sequence
During a hot-plug operation, the pins in a connector system do not all mate at the same time. Microscopic differences in pin lengths and contact bounce will result in some pins connecting before others.
Many designs use multiple pin lengths in the connector, to specifically plan the insertion sequence. In this case, the speed of insertion will give a different length of time between the pins mating.
This behavior may lead to undesirable system operation and must be properly tested to ensure reliable device operation. As every single hot-plug will be slightly different, it can become difficult to plan for every possible case, or to ensure they have all been tested.
Hot-Swappable components of moderate size must employ some means of pre-charge circuitry to limit inrush current on connection. The uncharged capacitance of a ‘cold’ device appears as an electrical short circuit to a host system on first contact, this may cause the host system power rails to dip out of regulation or in some cases lead to complete system failure due to over-current shutdown at the power supply.
Pre-Charge Design Options
A long pin and current limiting resistor may be used to limit inrush current to a device. The long pin mates first; the current limit must be set so that the host system power rails stay within specification, but the device charges up adequately before the power and signal pins make connection.
Choosing a Pre-Charge Resistor
Care must be taken when choosing a pre-charge resistor value, the following scenarios show some common problems:
Pre-Charge Resistor too small
If the pre-charge resistor value is too small, the device will still draw too much current on insertion, causing the system power rails to drop out of regulation.
Pre-Charge Resistor too large
If the pre-charge resistor value is too large, the device capacitance is still not adequately charged before the power pins mate, causing the system power rails to drop out of regulation.
Choosing a Hot-Swap Controller
A hot swap controller IC controls inrush current to a device. Hot swap controllers typically incorporate electronic fusing, and in high-current applications it may be difficult to distinguish between inrush current and a short circuit. The components are more expensive than pre-charge resistors and, in some cases, the use of more active components in the system may introduce reliability concerns.
Electrical pins within a connector do not mate cleanly on contact with one another; typically a pair of contacts will bounce in and out of connection repeatedly at a millisecond scale before a constant connection is achieved. This behavior occurs for an insignificant time in terms of human perception, but a digital logic system interfaced to such a signal must deal with a large number of events in a short time. Pins also bounce out of sync, making the connection sequence unique in each case – this is why 1 in 1000 hot-plugs may fail on the same system.
(Human factors i.e. speed/force of insertion) The primary reason for inconsistencies between hot-plugs is the human factor, it is practically impossible for a human to insert or remove a device with the same velocity and force in a repeatable manner. Differences in the time between pins mating has a huge effect on the power-up profile of a device, making it impossible to reliably test a hot-pluggable device over all its likely operating conditions.
In some cases robotic systems are used to hot-swap devices as a time saver – these systems are still unlikely to produce deterministic results, due to the tolerance in the actuators and the manufacturing tolerances inherent in each connector. Each system and each connector is subtly different in practice; it is not practical to test every device in existence with every host, so bounds testing should be undertaken to give confidence that the system will operate within expected tolerances. It isn’t practical to have a hundred connectors made with every possible combination of pin length, insertion force, etc – so the solution is to emulate a connector profile with a single programmable fixture.
In order to comprehensively test a hot-swap design, it is necessary to create all the possible scenarios in a repeatable way. The key is to run a large number of tests, and to cover all the likely corner cases.
Quarch modules are designed specifically for this, and can create almost any hot-plug scenario in an automated and repeatable way. This removes the need for most manual testing, greatly increases the range of tests that can be run, and ensures that failure conditions can be easily repeated for debugging purposes.