there are already quite a few multi-core microcontrollers available ,why not use them instead?
Or, there may not be enough pins. May use a small micros to watch all the user interface buttons (think like a keyboard controller) which communicates to the large micro.
Also, closely related to above, simplicity and modularity. Don't want to be the guy debugging why the antilock brakes occasionally miss an encoder transition when the engine RPM fuel injector routine is just perfectly the wrong interrupt rate. Its very much unix vs windows philosophy WRT monolithic-ness.