Soc's typically do not have on board memory. you need to tack on external Flash and (D)ram ...
even the chip in an apple iPhone is an SoC. if you cut the thing apart there is actually two or three die's inside bonded to each other.
the SDram sits in the same package but it is a separate die , made in a dfferent process. Same for the flash.
As A-Sic Enginerd said : the fab processes of flash and dram are not good to make general purpose logic and vice versa. you burn too much real estate ... and cost for a chip is purely defined by its technology and square-millimetrage ...
So Soc for cellphones often emply stacked-die. there are even special memories for mobile that internally are stacked die .... heck the large flash chips themselves are stacked die ...
as for DSP .. yes some microprocessors have dsp-like instructions but a real DSP will still kick their butt... simply becasue of the multiple pathways a DSP has that a general processor does not have ... ( dsp's often have 2 or more data and address buses up to the streaming i/o capabilities )
Intel 432 was the worlds first DSP.
Microcontroller : all in one package . no need for support chips. some variants may require external ram/rom, although those were typically for debug purposes.. once you hit volume you switched to mask rom.
Microprocessor : lots of external support chips and memory
SoC : 'heavyweight' system integrated in a chip missing ram and rom.
SoC : 'heavyweight' system integrated in a chip missing ram and rom.
I would actually be so bold as to make the statement the difference is strictly in the ROM. True, currently most SOCs do also require external RAM, but that's changing. It's kind of stupefying the amount of ram found on the SOCs I've worked on the last few years. Enough so that it's starting to be looked at to determine if there are applications where the external DDR can be done away with. Some applications will still require it simply due to the amount of data and throughput requirements. But more low end applications may be able to suffice with just the on board SRAM.
SoC's in phones usually have off board RAM because the ram buffer is used to store the display buffer ... and that's quite huge.
In my mom's Galaxy Tab P-6800 ( the 7.7" 1.4GHz Dualcore model ) the amount used for the display buffer for 1280x800 is ... almost 400MegaBYTES.
I believe the line between microcontroller and SOC is the memory. If the chip can be used without external memory, it's a microcontroller. SOCs only have cache and various registers inside, while the main memory is external.
SoC's in phones usually have off board RAM because the ram buffer is used to store the display buffer ... and that's quite huge.
In my mom's Galaxy Tab P-6800 ( the 7.7" 1.4GHz Dualcore model ) the amount used for the display buffer for 1280x800 is ... almost 400MegaBYTES.
You are a bit off. 1280x800x2=2MB.
You are a bit off. 1280x800x2=2MB.
That would actually be x3 since the IPS panels are 8 bits per pixel. And 3D can use a lot of memory.
SoC's in phones usually have off board RAM because the ram buffer is used to store the display buffer ... and that's quite huge.
In my mom's Galaxy Tab P-6800 ( the 7.7" 1.4GHz Dualcore model ) the amount used for the display buffer for 1280x800 is ... almost 400MegaBYTES.
You are a bit off. 1280x800x2=2MB.
It's not like i hacked deep into the system ... it's really very clear and the kernel eats up about 100 megbytes which is more accurately the screen chewed 300megbytes... really a hell lot