Skip to main content
Chemistry LibreTexts

2: SOC (System on Chip)

  • Page ID
  • \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    \( \newcommand{\id}{\mathrm{id}}\) \( \newcommand{\Span}{\mathrm{span}}\)

    ( \newcommand{\kernel}{\mathrm{null}\,}\) \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\) \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\) \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\id}{\mathrm{id}}\)

    \( \newcommand{\Span}{\mathrm{span}}\)

    \( \newcommand{\kernel}{\mathrm{null}\,}\)

    \( \newcommand{\range}{\mathrm{range}\,}\)

    \( \newcommand{\RealPart}{\mathrm{Re}}\)

    \( \newcommand{\ImaginaryPart}{\mathrm{Im}}\)

    \( \newcommand{\Argument}{\mathrm{Arg}}\)

    \( \newcommand{\norm}[1]{\| #1 \|}\)

    \( \newcommand{\inner}[2]{\langle #1, #2 \rangle}\)

    \( \newcommand{\Span}{\mathrm{span}}\) \( \newcommand{\AA}{\unicode[.8,0]{x212B}}\)

    \( \newcommand{\vectorA}[1]{\vec{#1}}      % arrow\)

    \( \newcommand{\vectorAt}[1]{\vec{\text{#1}}}      % arrow\)

    \( \newcommand{\vectorB}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vectorC}[1]{\textbf{#1}} \)

    \( \newcommand{\vectorD}[1]{\overrightarrow{#1}} \)

    \( \newcommand{\vectorDt}[1]{\overrightarrow{\text{#1}}} \)

    \( \newcommand{\vectE}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash{\mathbf {#1}}}} \)

    \( \newcommand{\vecs}[1]{\overset { \scriptstyle \rightharpoonup} {\mathbf{#1}} } \)

    \( \newcommand{\vecd}[1]{\overset{-\!-\!\rightharpoonup}{\vphantom{a}\smash {#1}}} \)

    The SoC is the CPU (Central Processing Unit) and the GPU (Graphical Processing Unit)

    clipboard_eebaabe284134823a4f3ab46915814380.pngFigure \(\PageIndex{1}\): SoC or Raspberry Pi 4B. (Belford cc 0.0)

    You should add a heat sink to your SoC. Pi 4 have Dynamic Voltage and Frequency Scaling (DVFS)  which allows SoC components to run at lower voltages and reduces clock speed when not needed. The memory is split between the GPU and CPU and you can identify how much each is allocated with the following command.

    vcgencmd get_mem arm && vcgencmd get_mem gpu

    The Top command gives general information on system performance (CPU and memory)



    The CPU (Central Processing Unit) is the "brain" of the computer. It "fetches", "decodes" and "executes" code with each step being performed at a rate determined by the clock.  A multicore architecture allows parallel processes to occur. If you want to do a dive into how computers work you should check out the PBS Crash Course on Computer Science with Video 8 being on the CPU

    Different versions of the Pi use different CPUs, which can be found on the Raspberry Pi Processors page of the Pi Documentation. the Pi 3 uses a BCM2837B0 and information can be found here.

    • 64 bit Quad Core Broadcom BCM2711 (Pi 4)
    • SRM Cortex-A72 Cores
      • Architecture handles "out of order" execution
      • prioritizes performance over efficiency.
        • one of the reasons the Pi 4 gets hotter than a pi 3
    • Caches
      •  32 KB data and 48 KB Instruction L1 per core, 1 MB L2 shared cache

    Some CPU commands

    To get Information on your CPU

    cat /proc/cpuinfo

    To get CPU temperature

    vcgencmd measure_temp

    To find the clock speed your Pi configuration is limited to

    vcgencmd get_config arm_freq

    to find current clock speed

    cat /sys/devices/system//cpu/cpu0/cpufreq/scaling_cur_freq



    • 32 bit Broadcom VideoCore 6
      • 500 mHz
        • supports Open GL ES 3
      • Runs 4K video decoder at 60 frames/sec

    This page titled 2: SOC (System on Chip) is shared under a not declared license and was authored, remixed, and/or curated by Robert Belford.

    • Was this article helpful?