What is the difference between SoC and processors?

A processor is a device that takes programmed instructions and executes them. They range from very simple to very complex. The main thing is you write a program and the controller executes it. Every controller has an instruction set that allows you to use the features the controller has. Arithmetic for example, add and subtract. A microcontroller design described in HDL (hardware description language) can be put on a chip as well, instead of just the processor itself. A system on chip, and I am talking about a meaningful SoC, has one or more processors that are connected to other modules by a bus structure (can be a NoC, a network on chip). These buses are used for data transfer back and forth and for reading and writing register for configuration and status. A processor could be connected to a DMA, for bulk data transfers, a memory (on chip or off-chip via for example a DDR controller), communication interfaces (slow like I2C, UART and fast like gigabit Ethernet), power domain controllers to bring up and power down powe domains, a clock control (for gating clocks), a reset controller, a PLL to change clock frequencies), … . A system on chip is so much more than just a processor (or microcontroller). SoC will be very essential for the whole automatisation, AI, robotics, … future.

Kyle

Hardware and software advisor for tech startups. ASIC, FPGA, RPi, Arduino, AI, robots, drones, blockchain, Machine learning, vision processing, IoT and 3D printers are my fields of expertise.
Close Menu
%d bloggers like this: