App note from IXYS about their unique digital inrush controller using Zilog’s 8-bit Z8F3281 MCU. Link here (PDF)
Digital control allows distinctive solutions to control inrush current in typical AC-DC rectifier with capacitive load by limiting capacitor pre-charge current to a predetermined value at each half sine-wave cycle. Capacitor charge is spread over a number of cycles until capacitor is charged proportion of peak value of AC voltage source. Capacitor is charged according to timedependent pulse train. The pulses are designed in a way to provide substantially equal voltage increment applied to capacitor to keep peak of charging current about the same value at each cycle. Number of cycles depends on capacitor value and charge current. For a given capacitor value which is selected depending on desired ripples amplitude, the charge current is a function of number of pulses and its timing position with respect to rectified sine wave. Detailed algorithm of creating pulse train for Digital Inrush Control is described in the Principles of Operation section.