|The Uninterruptible Power Supply (UPS) is intended to keep the system active to handle grid failures and allow enough time to shut down cleanly. A power failure alert from the UPS commands the Main Processing Unit (MPU) to save its data to a disk drive or flash memory so it can resume properly when power is restored. However, grid power outages are only one of many potential failure modes. The components that could interrupt the transaction logging include any faults that might disrupt MPU system operation, including:
- UPS failure
- Software bug or glitch
- Disk drive failure
- Network interface failure
- Power supply failure
- ESD events
Consider the list just mentioned with the hundreds of components involved and it is clear that a UPS cannot protect vital operational data in many cases. Too many other failures can result in data loss. A single nvSRAM write operation is always the highest-reliability solution requiring the lowest number of components.
Because of the energy storage on the nvSRAM’s off-chip capacitor, automatic data saving to nvSRAM’s on-chip EEPROM is ensured even when the MPU power supply or disk drive fails. An ESD event could disrupt the alert signal as well. With nvSRAM, the MPU does not intervene upon power loss. NvSRAM is the smallest self-contained local memory subsystem possible that logs the state of the system. The nvSRAM requires only two highly reliable components and has the highest Mean Time Between Failures (MTBF). Compare this to the much lower MTBFs of the MPU power supply, disk drive, and controller. NvSRAM is clearly a robust, highly reliable, easy-to-implement, and less costly solution that a UPS or battery backup of the entire memory space.
The list of transactions is scanned to detect any defective subsystems or incomplete operations. First, any transactions that can be cleared are checked to ensure they are completed. For example, say that axis controller #3 is supposed to move from 29 degrees to 34 degrees at 1 degree per second. The axis controller is queried to report its current position and this positioning data is also stored in high-speed nvSRAM. If it is in range, its operation is cleared (reconciled). Otherwise, it remains an open item for analysis. Is axis controller #3 responding? Is the network card functioning? Can other devices respond over the network?