ASIC is the application specified IC ... design for especial application
SOC ... system on chip means whole system ADC, DAC, UARTs, Code memory, .... all peripherals are integrated on single chip it is not necessary it is application specified, u can program ur self
ASIC is to draw the layout of your function on (say) a silicon chip .. so as to implement this specific function on a device .. yet, this function may not be representing a complete system .. for example, it can be an FM modulator .. 555 .. whatever ..
When this function resembles a complete system like a Wireless LAN for example, this ASIC can then be called SoC ..
asic is nothing but a single chip which is designed for a specific application ... and it address a perticular domain such as analog, digital or RF.
and SOC is nothing but complete system sitting on a single chip.... and in that multiple domain functinality can be there... such as a system includes RF + digital + communication blocks...
need some more comments on this issue []
Added after 4 minutes:
BUT here I have got a doubts that if SOC is system on a chip ( then its an asic) ...
Now as how can we program it ???? As ashad said u can program it ....
later for those who told SOC is software + hard ware ... can u ples eloborate some more on this with some examples......
SoCs can be fabricated by several technologies, including:
Full-custom
Standard cell
FPGA
SoC designs usually consume less power and have a lower cost and higher reliability than the multi-chip systems that they replace. And with fewer packages in the system, assembly costs are reduced as well.