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.