SoC stands for System on Chip. Many electronic applications are based on microprocessors, memories, and peripherals. Traditionally the integration of these system components has been done at the board (PCB) level.
The never-stopping progression in electronic miniaturization has made it possible for many of these components (processor, memories, peripherals) to be integrated into a single package, thus called SoC.
In the FPGA arena, it is usual to see applications where the FPGA is integrated with a processor (or processors) at the heart of the system. Until around ten years ago, the processors integrated on the FPGAs were mainly soft-core processors, like Nios for Intel-Altera or Microblaze for AMD-Xilinx.
Since then, the two major FPGA manufacturers have returned to the trend of including high-performance processors as hard-IP on their FPGAs.
In the FPGA world, as in the rest of the digital world, most processors are multi-core. So the acronym MPSoC means Multi Processor System on Chip.
As an example of some available MPSoCs in the market, let’s see two examples from Xilinx, comparing some of the features of these devices:
Zynq-7000 SoC | Zynq UltraScale+ MPSoC | |
Processing Unit | Single/Dual-core ARM Cortex-A9 @1GHz | Dual/Quad-core ARM Cortex-A53 MPCore @1.5GHz |
Dynamic Memory Interface | DDR3 | DDR4 |
Interfaces | USB 2.0, Gigabit Ethernet, SDI | PCIe Gen 2, USB 32.0, Gigabit Ethernet, SDI |
Logic Cells | 444K | 1,143K |
Embedded memory | 26.5 MBit | 70.6 MBit |
DSP Slices | 2,020 | 3,528 |
Notes:
- The table shows the maximum capacity (operation frequency, logic elements) for each family
- To make the table simple, I have concentrated only on a few parameters for each device.
You can check this site for projects and VHDL code snippets for Xilinx devices.
For more details about the SoC devices offered by Xilinx, you can visit here