It's not at all unusual to see separate CPU, RAM and flash memory in products like routers.
The thing is the interfaces between CPU, RAM and flash tend to use a lot of pins - especially if you want them fast and with support for lots of memory. Look at the number of contacts you get on a stick of RAM in a PC.
Lots of pins is acceptable in a product like this which is BGA surface mounted - but for things like Arduino where the pins are 0.1" apart for easy manual working, having the memory and flash on-chip is much more practical :)
The thing is the interfaces between CPU, RAM and flash tend to use a lot of pins - especially if you want them fast and with support for lots of memory. Look at the number of contacts you get on a stick of RAM in a PC.
Lots of pins is acceptable in a product like this which is BGA surface mounted - but for things like Arduino where the pins are 0.1" apart for easy manual working, having the memory and flash on-chip is much more practical :)