Why is there a separate Floating Point Units in some micro controllers
While FPU are typically slower than the main CPU, they are much faster in calculating with floating point because they use hardware implementation of the floating point operators. In order to better understand what happens, consider that a floating point operation consists of several steps.

For instance, an addition is roughly:


Comparison of the exponentials;
Scaling of the significand according to the exponentials' difference;
Sum of the significands;
Rounding of the resulting significand;
(possible) adjusting of the result's exponential.


Note that these operations must be performed separately on a fixed-point CPU, and each may take more than one cycle to be computed.

If you design a dedicated unit that can in part parallelize these operations (e.g rounding and adjusting the exponential), you can save significant computation time.