Electric vehicles usually have two kinds of battery, a standard 12 V voltage for the general electric appliances, and a high-voltage battery pack to provide the power for the electric traction motors. There is an energy exchange between them.
The 12V battery is no longer recharged by the alternator, but is charged from the high-voltage battery pack. For this purpose, a standard DC-DC converter is used. However, in some cases it could be necessary to reverse operation, and to recharge the high-voltage battery pack from the low-voltage battery to crank the car.
The control algorithm is implemented on a microcontroller, giving substantial advantages in terms of cost, flexibility and also efficiency, due to the possibility of an easy synchronous rectification implementation.