uC onboard memory

Thread Starter

Sparky49

Joined Jul 16, 2011
833
Hi all,

Not really a specific question, but one about the design of microcontrollers.

Why is it that even today, when you can easily buy a 64GB flash drive the size of a grain of rice, is it that uC's are still made with relatively tiny amounts of onboard memory? Looking at microchips selection of 16bit uC's, they advertise onboard memories up to 512KB. Why can't they add more, even up to an entire MB?

I'm guessing it's not a question of physical size, is it to do with power consumption or something else? I understand that one could simply use an external memory device for more memory, but wouldn't having more memory on board be more cost and size effective?

Many thanks,

Sparky
 

nsaspook

Joined Aug 27, 2009
13,087
Typically if you need more memory it's not really a job for a <32 bit controller. The banking register and glue logic requirements start to get inefficient for production of typical 16bit chip die sizes at higher memory sizes and the bottom line is that 99% of applications have no need for large memory as each chip used in a design is optimized for its task.
 

takao21203

Joined Apr 28, 2012
3,702
There are numerous reasons. Here a few points:

-Memory cards are produced very high volume
-Typically the price seen as beneficiary by retail is at least $10, they prefer higher priced items.
While controllers typically cost $2 for the more powerful one's, and can be less than $1 for simple one's.
-There are just a few foundries who can make these highly integrated memory chips. The die's as such are large.
A controller isnt typically using 50nm process. That's what makes simple one's so cheap.
-Probably, large memory embedded will never be used. They even offer 100s of different chips, starting with less than 1K FLASH, and just a few bytes RAM.
That cant be made for 20 cents the size of a rice grain with 64MB (or GB).
-Dont forget power consumption too- a large array needs milli Amperes just doing nothing.
 

Thread Starter

Sparky49

Joined Jul 16, 2011
833
See I wouldn't think memory cards production would affect it - surely it is more efficient (cost and size) to include that memory within the one package? I wouldn't imagine that the physical size is too big a factor, as I'm not even thinking about putting 64GB on a uC - 'just' 1MB for example.

Power seems like a good reason to add though.
 

takao21203

Joined Apr 28, 2012
3,702
See I wouldn't think memory cards production would affect it - surely it is more efficient (cost and size) to include that memory within the one package? I wouldn't imagine that the physical size is too big a factor, as I'm not even thinking about putting 64GB on a uC - 'just' 1MB for example.

Power seems like a good reason to add though.
It may look easy but it isnt. 1MB was made on a completely different process. There are many kinds of FLASH arrays, and different technologies, even different kinds of charge pumps.
A controller maker doesnt neccessarily have the toolset for 1MB Flash.

Making hybrids of more than one IC die has been done before, all over the decades. Most of them remained little known, and didnt last long on the market. It increases cost also. The memory die and controller die very likely need to be made by a different process. Their number of masks for instance is different.

I'm not a total expert but I that's how I see it. Some Controller makers have recently increased on-chip FLASH. But you also see the price for these ICs isnt $1 or $2 anymore, and you would worry if you fry one.

There are countless reasons. Such as accessing large memories at lower MHz would be slow. There's serial FLASH actually, quite attractive pricing, and upto some megabytes can be found easily.

A SD card needs a controller just for the protocol, its far more complex than just serial flash, with sectoring, taking care of bad sectors, CRC, cache probably, Quad SPI. Hopelessly too much for a cheap 8 bit chip.
 
Top