Welcome to our site! EDAboard.com is an international Electronic Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.
Generally speaking, it's the same thing.
Both are Application Specific ICs. But
in terms of complexity, SoC is usually
more complex in scale. Usually it contains
both digital & analog ckts, like PLL, ADC/DAC, RAM/ROM, micro-controller,
dedicated digital IPs and glue logics.
For example, single DVD servo chip is a good example of SoC.
A "joke" I once heard was that after VLSI and ULSI, the industry felt that following the incresing desing complexity we would make us use all letters of the alphabet to describe new fanufacturable devices. So the description ideas behind SSI, MSI, LSI, VLSI and ULSI has been abandoned (like the 8086, 80186, 80286, 80386, 80486 Intel line of processors) and SoC (System-on-Chip) has been introduced to denote advanced VLSI devices, which integrate improved functionality, sometimes both analog and digital and even mechanical parts. SoCs are most of the times designed using IPs because of their complexity but the two terms are not equivalent. As far as for frequencies, they are technology and application dependent.
I think we should also mention co-design when talking about SOC.
As a system that had only possible been realized on a PCB board using various components becoming possible to put together on a single chip (SOC), the verification of such chip and its firmware could put together in a single simulation environment. Hence improving the design time and the chance of first spin success.
ASIC --> A IC is designed for 'one' special application.
SOC --> System on a chip. SOC may be a ASIC. However, I think the main idea of SOC is that the chip is the whole system. You can image that one chip is a PC. In this chip, there consists of DRAM, CPU, GPU, LAN MAC,....
In ASIC design, each block is designed only for a special purpose in special Chip. But System on Chip is mastly based on block reuse. This means that a designer uses previousely designed blocks for designing its new system. Sometimes he needs to design a new block. In this situation, He designs that block so that he can use it for other purposes in future. ASIC is a Block-Based Design approach while System on Chip is Platform-Based Design approach.