Broadcom SOCs

For all your Raspberry Pi's, BeagleBoard's, Parallella's, ORDROID'S, TV boxes et al.
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#1 Broadcom SOCs

Post by Dirk Broer »

Broadcom -formerly Avago- is in the BOINC-world mainly known for supplying the SOCs for the Raspberry family of SBCs, but that is merely a niece market for this silicon giant.

The Broadcom portfolio
SOCImageSpeedGPUGPU SpeedGPU SDK SPECSAPPLICATION
BCM21553Single-core ARM11600 MHzSingle-core VideoCore 4250 MHzOpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAXSmartphones: Samsung Galaxy Y, Samsung Wave Y, Samsung Galaxy Mini (GT-S5570i), Samsung Galaxy Ace (models 5830i/c/m and 5839i), Vodafone Smart 2 (Alcatel TCT V860)
BCM2835Single-core ARM11700 MHzSingle-core VideoCore 4250 MHzOpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAXSBC: Raspberry Pi A/B, A+/B+, Zero/Zero W/Zero WH, Odroid-W Mediaplayer: Roku 2 HD/XD/XS
BCM2836Quad-core ARM Cortex-A7900 MHzQuad-core VideoCore 4250 MHzOpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAXSBC: Raspberry Pi 2 Model B 1.1
BCM23550Quad-core ARM Cortex-A71200 MHzSingle-core VideoCore 4300 MHzOpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAXSmartphones: HTC Desire 601 Dual SIM, XOLO Opus-HD, Samsung Galaxy Grand Neo
BCM2837Quad-core ARM Cortex-A531200 MHzQuad-core VideoCore 4400 MHzOpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAXSBC: Raspberry Pi 2 Model B 1.2 (downclocked to 1.1 speeds), Raspberry Pi 3 Model B
BCM2837BQuad-core ARM Cortex-A531400 MHzQuad-core VideoCore 4400 MHzOpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAXSBC: Raspberry Pi 2 Model B 1.2 (downclocked to 1.1 speeds), Raspberry Pi 3 Model A+/B+
BCM2710AQuad-core ARM Cortex-A531000 MHzQuad-core VideoCore 4400 MHzOpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAXSBC: Zero 2/Zero 2W/Zero 2WH
BCM28150Dual-core ARM Cortex-A91200 MHzSingle-core VideoCore 4300 MHzOpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAX3G baseband processing
BCM28145/28155Dual-core ARM Cortex-A91200 MHzSingle-core VideoCore 4300 MHzOpenGL ES 1.1, OpenGL ES 2.0, hardware-accelerated OpenVG 1.1, Open EGL, OpenMAXSmartphones: Samsung Galaxy SII Plus, Samsung Galaxy Grand, Samsung Galaxy Core Plus, Samsung Galaxy S Duos 2 Mediaplayers: Amazon Fire TV Stick
BCM725xBroadcom Brahma-B15742 MHzQuad-core ARM Mali-400 MP2-OpenGL ES 1.1, OpenGL ES 2.0, OpenVG 1.1Mediaplayer: Smartlabs SML-482 HEVC Hybrid
BCM2711Quad-core ARM Cortex-A721500/1800 MHzQuad-core VideoCore 6500 MHzOpenGL ES 3.0, OpenGL ES 3.2 (partially) and Vulkan 1.0SBC: Raspberry Pi 4 Model B/Raspberry Pi 400/Raspberry Compute Module CM4 (1800 MHz after update to Bullseye or later)
BCM2712Quad-core ARM Cortex-A762400 MHzQuad-core VideoCore 7800 MHzOpenGL ES 3.1, OpenGL ES 3.2 (partially) and Vulkan 1.2SBC: Raspberry Pi 5 Model B/Raspberry Pi 500/Raspberry Compute Module CM5
BOINC-wise, the 2400 MHz BCM2712 SOC of the Raspberry Pi 5 variants is by far the most interesting offering of Broadcom, whose main activity remains connectivity.
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#2 Broadcom Benchmarked

Post by Dirk Broer »

No Antutu or GeekBench scores here, but Gareth Halfacree has done a splendid job here, of which I give you a few graphs:
ImageImage
ImageImage
For more detail: visit the article of Gareth Halfacree.
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#3 Re: Broadcom SOCs

Post by Dirk Broer »

Before everyone rushes out to buy a new Pi 3 Model B+ a few words of warning:
Running a Pi 24/7/365 DOES get them hot, so make sure you have at least a heatsink on the SOC.
That heatsink may be helped with a fan (I am having my Pi-rack on top of two 120mm fans).
The RAM gets hot too, after a while. That RAM is still DDR2 RAM

All this would perhaps be less severe if the chips were produced at 28, 20, 14 or 10 nm, but the Broadcom chips are still being made using a 40 nm production process!

So If I were to design the Raspberry Pi 4 I would:
  • Do away with the by now ancient 40 nm VideoCore 4 and take a quad-core 10 nm Mali G51 or so.
  • Increase RAM to at least 2GB DDR3 -and even 4GB if the Pi 4 is to run a 64-bit OS.
  • Step up the CPU part to a quad-core Corex-A57 or A72.
Bearing in mind that one of the goals of the organisation behind the Raspberry is to keep the cost of a single unit to approximately $35 you see why I'm not hired as the next Raspberry Pi designer
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#4 Re: Broadcom SOCs

Post by Dirk Broer »

Dirk Broer wrote: Mon May 28, 2018 1:15 pmSo If I were to design the Raspberry Pi 4 I would:
  • Do away with the by now ancient 40 nm VideoCore 4 and take a quad-core 10 nm Mali G51 or so.
  • Increase RAM to at least 2GB DDR3 -and even 4GB if the Pi 4 is to run a 64-bit OS.
  • Step up the CPU part to a quad-core Cortex-A57 or A72.
Bearing in mind that one of the goals of the organisation behind the Raspberry is to keep the cost of a single unit to approximately $35 you see why I'm not hired as the next Raspberry Pi designer
I should apply at Eben Upton's firm it seems! They've done away with VideoCore 4 and replaced it with inhome VideoCore 6, give now an opportunity to choose from 1, 2 or 4 GB DDR4(!) RAM and to top it off have chosen for a four-core Cortex-A72! And they now also have real gigabit ethernet, two USB 3.0 ports, and a USB-C power connector. And all for -in the case of the 1GB version- 35 quid!
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#5 Re: Broadcom SOCs

Post by Dirk Broer »

So, if I now were to design the Raspberry Pi 5, I would....
  • Add an NVMe M.2 slot -at the backside- for added storage.
  • Use an eMMC module, to either replace the Micro-SD slot or as an addition to it.
  • Upgrade to the ARM Cortex-A73 -or even the A76, if feasible.
  • Unlock the full power of ARMv8 instructions, meaning forking Raspbian into two seperate branches: 32-bit (older BCM2835 and -2836 SOCs) and 64-bit (BCM2837, -2837B0 and -2711), though you might better just want to run the 32-bit on the BCM2837 and BCM2837B0, in view of the meagre 1GB DDR2 RAM aboard.
  • Try to unlock the VideoCore6 GPU for OpenCL use -some success has been made with the older Raspberries VideoCore4 in that field.
Image
davidbam
General Bitchin'
General Bitchin'
Posts: 6380
Joined: Wed Aug 15, 2018 1:15 pm
Location: Huntly, Scotland
Contact:

#6 Re: Broadcom SOCs

Post by davidbam »

put me down for 10
I think this is fool-proof but could you just try it for me please? • There are 10 types of people in the world; those who understand binary, and those who don’t
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#7 Re: Broadcom SOCs

Post by Dirk Broer »

We're two years further, so our expectations have grown too in some aspects.
The forking of Raspbian -now Raspberry Pi OS- into 32- and 64-bit versions has occurred, but what I still would want to see in the upcoming Raspberry Pi 5:
  • Add an NVMe M.2 slot -at the backside- for added storage.
  • Upgrade to the ARM Cortex-A73 -or even the A76, if feasible. But it needs to be Broadcom, so the BCM58732 SoC springs into mind: An octo-core Cortex-A72 @3000 MHz.
  • Try to unlock the VideoCore6 GPU for OpenCL use -some success has been made with the older Raspberries VideoCore4 in that field.
Where I would want to see more improvement, as compared to two years ago:
  • Use UFS instead of the ancient SD card. UFS 2.0 is already superior to eMMC 5.1, so having an UFS 3.0 card slot would be a tremendous improvement.
  • Bring out a 16GB version -especially when the BCM58732 octo-core comes into view.
Image
Image
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#8 Re: Broadcom SOCs

Post by Dirk Broer »

Dirk Broer wrote: Sat Aug 31, 2019 1:44 pm So, if I now were to design the Raspberry Pi 5, I would....
  • Add an NVMe M.2 slot -at the backside- for added storage.
  • Use an eMMC module, to either replace the Micro-SD slot or as an addition to it.
  • Upgrade to the ARM Cortex-A73 -or even the A76, if feasible.
  • Unlock the full power of ARMv8 instructions, meaning forking Raspbian into two seperate branches: 32-bit (older BCM2835 and -2836 SOCs) and 64-bit (BCM2837, -2837B0 and -2711), though you might better just want to run the 32-bit on the BCM2837 and BCM2837B0, in view of the meagre 1GB DDR2 RAM aboard.
  • Try to unlock the VideoCore6 GPU for OpenCL use -some success has been made with the older Raspberries VideoCore4 in that field.
Pi 5 has just been released
  • No NVMe M.2 slot -at the backside- for added storage, but a multi-purpose PCIe connector.
  • No eMMC module.
  • ARM Cortex-A76!
  • 64-bit OS, 4GB and 8GB models certain, 16GB promises!
  • VideoCore7 GPU.
Image
User avatar
scole of TSBT
Boinc Lieutenant General
Boinc Lieutenant General
Posts: 6003
Joined: Mon Feb 03, 2014 2:38 pm
Location: Goldsboro, (Eastern) North Carolina, USA

#9 Re: Broadcom SOCs

Post by scole of TSBT »

A PCIe 2.0 x1 interface, 500 MB. No faster than USB 3.0. meh
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#10 Re: Broadcom SOCs

Post by Dirk Broer »

scole of TSBT wrote: Sat Sep 30, 2023 2:25 am A PCIe 2.0 x1 interface, 500 MB. No faster than USB 3.0. meh
We must be able to think of things we want in a future Raspberry Pi 6 (or any other high-end ARM SBC) too, it seems...

Let's kick of then!
  • At least one PCIe 3.0 x4 interface, whether M.2 or PCIe.
  • Replace the ancient SD card slot with either fast eMMC or a much faster type slot -or both.
  • A 2.5GB LAN port instead of the old 1GB.
  • Replace the USB 2.0 ports with at least USB 3.0 -but better USB-C 3.2.
  • We want to be able to use OpenCL for the GPU on our ARM boards.
  • We want a coprocessor socket, to be able to plug in an AI chip of choice (I bet that's a very hard one, a copro-hat might do as well).
  • We want to be able to add extra useable RAM to our boards.
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#11 Re: Broadcom SOCs

Post by Dirk Broer »

scole of TSBT wrote: Sat Sep 30, 2023 2:25 am A PCIe 2.0 x1 interface, 500 MB. No faster than USB 3.0. meh
Rumour has it that the CPU performance is between 200 and 300% of the level of the Pi 4, no slouch either -SBC-wise....My Pi 3's are about to be retired!

Here is a comparison between the Pi 4 and the Pi 5 by Gareth Halfacree, with the Pi 5 as clear winner -except in the powerdraw field.
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#12 Re: Broadcom SOCs

Post by Dirk Broer »

scole of TSBT wrote: Sat Sep 30, 2023 2:25 amA PCIe 2.0 x1 interface, 500 MT/s. No faster than USB 3.0 (600 MT/s) meh.
Jeff Geerling shows here that the PCIe 2.0 x1 can easily be changed to PCIe 3.0 x1, thereby doubling the speed to 1,000 MT/s (Theoretically that is. But as the great Yogi Berra already said "In theory there is no difference between theory and practice. In practice there is.", so it is actually only 800 MT/s)

tldr:
By default, the external PCIe header is not enabled, so to enable it, you can add one of the following options into /boot/config.txt and reboot:

Code: Select all

# Enable the PCIe External connector.
dtparam=pciex1

# This line is an alias for above (you can use either/or to enable the port).
dtparam=nvme
And the connection is certified for Gen 2.0 speed (5 GT/sec), but you can force it to Gen 3.0 (10 GT/sec) if you add the following line after:

Code: Select all

dtparam=pciex1_gen=3
This Polish company makes not only M.2 2230-2242 Raspberry Pi 5 hats, but also does even better M.2 2230-2242-2280 Raspberry Pi 5 bottoms -and they have also a AI bottom/hat for the Coral dual edge TPU! -but at PCIe 2.0 x1 or PCIe 3.0 x1 speeds only one lane gets used...
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#13 Re: Broadcom SOCs

Post by Dirk Broer »

Should you upgrade your Raspberry Pi (or other hardware)? See the increase in performance (hurray), powerdraw (boo) and efficiency of the latest models as compared to the earlier ones!
Image
(click on it to make readable)
2024-12-18: Updated with both Compute Model 5 and Raspberry Pi 500
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#14 Re: Broadcom SOCs

Post by Dirk Broer »

A bit of amateurish DIY, as the original creator stopped updating:

Image (click on it to see better)
Image
User avatar
Dirk Broer
Corsair
Corsair
Posts: 2027
Joined: Thu Feb 20, 2014 11:24 pm
Location: Leiden, South Holland, Netherlands
Contact:

#15 Re: Broadcom SOCs

Post by Dirk Broer »

For those that try the Pi 5 in 32-bit mode and that see this error message when their WUs fail
error while loading shared libraries: libm.so.6: ELF load command address/offset not page-aligned
If you find this problem, switch to the 4k page size using:

kernel=kernel8.img

in /boot/firmware/config.txt

For those Raspberry Pi 5 and 4 users that do not follow Jeff Geerling or forums.raspberrypi.com too closely: free performance upgrades!

SDRAM Tweaks
To get the latest RAM speedups for now (this may be default soon/was already set when I checked my latest Pi 500):
  1. Update the Pi's firmware to the latest version:

    Code: Select all

    sudo rpi-update
    (confirm with Y)
  2. Check the bootloader config:

    Code: Select all

    sudo rpi-eeprom-config -e
    for the line SDRAM_BANKLOW=1
  3. If not there, add the configuration SDRAM_BANKLOW=1 (for Pi 5, you might also want to test SDRAM_BANKLOW=2, but 1 works better For Pi 4, use 3)
  4. Reboot
NUMA Emulation
The needed patches required have now been added to the latest Raspberry Pi's OS kernel, so to use NUMA, all you have to do is make sure you're on the latest Raspberry Pi OS (so Bookworm, not Bullseye!)

Code: Select all

sudo apt update --fix-missing
sudo apt full-upgrade
To check if NUMA emulation is working, run

Code: Select all

dmesg | grep NUMA

and make sure it says something like mempolicy: NUMA default policy overridden to 'interleave:0-7'

You can tweak the settings further if you want by adding numa=fake=[n] (where n is between 2 and 8) inside /boot/firmware/cmdline.txt, though the default should be appropriate for most use cases. I get the best GeekBench scores with numa=fake=8.

BTW: The Raspberry Pi 5 is now available in all the same various formats as the Raspberry Pi 4: SBC, Keyboard and Compute Module.
Image
Post Reply Previous topicNext topic

Return to “Single-board Computers”