Mechanisms and origin of multiferroicity