I notice that the ram capacity (ignore program flash for now, but it tends to basically be proportionate) of microcontrollers seems to grow fairly continuously (say in 2x jumps) from very small (a dozen or so bytes in an 8 bitter, lots of MSP430's in the 128 to 1k byte range, Cortex M0's with 4k, etc.), up to about 32k (Cortex M4). Above that there are a few chips with 64k or 128k, that are quite expensive, and above that not much is available til you get to external DRAM which on ready-made boards usually starts at 32 meg or even 64 meg (Olimex Olinuxino) or 512 meg (Raspberry Pi). So there is a big jump from 32k to 32 meg. It would be nice to have a low cost, single chip, 256k or 1 megabyte device but this doesn't seem to exist.
Is there some technical reason for this, or is it just a market-determined thing? I know that desktop cpu's often have megabytes of sram cache, so it's certainly technologically feasible to do something similar with a smaller cpu.
Thanks.