If that's the concern, get a smaller, dedicated chip for running the motor, and keep the i/o laden one for running the periferals.
Things like wheel sensors, etc, might overwhelm the cpu with interupts if you have a 40 tooth crank, 4 tooth cam, 100 tooth x 4 wheels, 50 tooth driveshaft, etc... Figure that's (per minute) 8000 rpm x (40 + 2 + 100x4wheels/4rear-end + 50) = 1536000 interuprts per minute at top gear, full tilt, low geared car. Can you run 25600 sub routines per second? It's over 3 thousand cpu cycles per interupt at 80 mhz.
My feeling is you would still use most of it on the chip. If I were to offload some things, it would be stuff like a wheel speed sensor. Perhaps you can get away without an interupt and merely have a counter you poll. Certainly various interupts take priority over each other, which does mean some debugging.... And honestly many of the things I would want a high amount of i/o for is low rate stuff: updating guages, turning on lights, enabling cooling fans, air conditioning.
The best thing to do is write some sub routines which do some generic math, light a light or something, and bang the chip at 30 khz with interupts out on different pins (I guess you could have it interupt itself if you're short on ways to drive it.