System on Chip (SOC)
A System on Chip (SOC) is an integrated circuit (IC) that hosts a complete computer system or a well-defined system on a single chip. SOC design can follow either an IP-based or platform-based approach.
SOC Definition and Its Need
- SOC is an IC embedding all essential components onto a chip to meet product design requirements.
- Need for low-power, high-speed, cost-effective, and space-efficient VLSI chips.
- Advancements in RF CMOS, high-density, low-power techniques, and reconfigurable design.
- SOC integration is advantageous for portable devices like smartphones, tablets, and laptops.
SOC Architecture and Components
- A typical SOC architecture includes hardware and software components interconnected through buses.
- Combines CPU, ASIC, software, microcontroller, memory blocks, timing circuits, peripherals, and interfaces.
CPU Processor in SOC
- CPU acts as SOC’s central processing unit.
- Multicore processors enhance speed and multitasking.
- Cache levels (L1, L2, L3) improve data transfer between CPU and memory.
Digital Signal Processor (DSP) in SOC Design
- DSP performs operations for sensor nodes, actuators, and data processing.
- Efficient DSPs embedded in SOCs for functional requirements and CPU cycle reduction.
Memory on SOC
- Memory type and size are chosen based on application.
- MOS memories are preferred for single-chip fabrication.
- Volatile RAM and non-volatile ROM considerations.
SOC On-chip Communication
- Bus architecture and network-on-chip interconnect enable communication between SOC units.
- ARM’s bus communication protocols like AMBA, AHB, and APB.
Advantages of SOC Over ICs
- Compact size due to component integration.
- Low power consumption for prolonged battery life.
- Cost reduction through fewer external components.
- Reprogrammable and reliable designs.
Disadvantages of SOC Design
- Longer design time compared to specific ICs.
- Increased fabrication cost due to component embedding.
- Not suitable for small-scale productions.
- Complex design verification.
SOC Design Applications
- Smartphone industry.
- Smartwatches and wearables.
- LTE and 5G communication.
- Embedded systems and single-board computers.
SOC Design Planning
The high-level design (HLD) of a System-on-Chip (SoC) is further elaborated in the chip’s architecture, where various aspects such as clocking strategy, modules with interfaces, data paths, control paths, intellectual property (IP) core requirements, and mixed-signal block requirements are identified and documented. While complete clarity on all details may not be available at this stage, it becomes clearer over time through discussions with design experts and consultants. This information is sufficient to plan the development of the SoC. It forms the basis for resource planning, tool flow, and design infrastructure planning.
At this juncture, assessments are made regarding the number of designers and verification engineers needed, the required number of workstations, networking infrastructure, client-server needs, and the essential Electronic Design Automation (EDA) tools. These assessments help initiate purchases in a phased manner based on the allocated budget. The design process is initiated with a few modeling engineers, and over time, modeling/simulation tools and other necessities are gradually acquired as the development progresses.
When striving for high performance in terms of speed, power, and size, it’s often advisable to manually design the SoC through the schematic entry and crafting the circuit topology. Although this approach results in longer time-to-market and higher design costs, it can be suitable for small circuit blocks that are reused frequently. The cost of development can be spread across larger volumes. This manual design method is termed “custom design.”
Custom design is particularly suited for small blocks or analog circuits such as high-speed data converters, clock generation circuits, Phase-Locked Loops (PLLs), and high-performance serializer/deserializer (SerDes) circuits. In these cases, close monitoring and control of design parameters are crucial, and cost may not be the primary concern.
However, for large SoC designs under pressure to minimize time-to-market, the standard cell-based design technique is more appropriate. This approach involves using a library of standard cells encompassing a wide range of logic gates with various fan-in and fan-out characteristics. This library might also include more complex functions like adders, comparators, encoder-decoders, and clock buffers. Numerous design automation tools facilitate various processes within this methodology.