The RPi 4
So let us now talk about the latest avatar of the Raspberry Pi. After tasting success with its earlier models, the Raspberry foundation wanted to expand the scope of the product. Has it been too ambitious? Can the new model fulfil the roles it is ‘designed’ for?
‘Designed for’ is questionable. In my mind, the designers of RPi found certain loopholes in the earlier versions of the product and filled them. On a broad scale, they have introduced a more modern CPU, enhanced the RAM to 4GB, introduced two micro HDMI interfaces, and introduced an advanced graphics processor. The RPi 4 is just a natural evolution of what happens in the electronics market.
Seeing all this, the market is agog as to what the intentions of the foundation are? I would say nothing. For the same prices, the foundation could introduce a new CPU, a graphics processor, more RAM, and, current communication and I/O standards. Beyond that, the foundation expects the product to create its own niche market, whatever that may be. They have hinted at some opportunities, but they are just hints.
Before we discuss this in detail, let us look at the specs of the product.
|Feature||RPi 3||RPi 4||Change|
|CPU||Broadcom BCM2837 SOC using the quad-core ARM Cortex-A53, 1.2GHz.||Broadcom BCM2711 SOC using the quad-core ARM Cortex-A72, 1.5GHz.||Slightly more modern and more powerful CPU.|
|GPU||Broadcom VideoCore IV.||Broadcom VideoCore VI.||Full 4K video with the use of hardware for decoding of H.265.|
|RAM||1GB LPDDR2 (900 MHz).||1GB, 2GB or 4GB LPDDR4-2400 SDRAM.||More and faster memory.|
|Networking||10/100 Ethernet, 2.4GHz 802.11n wireless.||Gigabit Ethernet, 2.4GHz and 5.0. GHz 802.11n wireless.||Faster Ethernet as well as options for stronger wireless connectivity.|
|Bluetooth||Bluetooth 4.1 Classic, Bluetooth Low Energy.||Bluetooth 5.0 Classic, Bluetooth Low Energy.||More modern Bluetooth connectivity.|
|GPIO||40-pin header, populated.||40-pin header, populated.||Same.|
|Ports||HDMI, 3.5mm analogue audio-video jack, 4× USB 2.0, Ethernet, Camera Serial Interface (CSI), Display Serial Interface (DSI).||2x Micro HDMI, 3.5mm analogue audio-video jack, 2×USB 2.0, 2xUSB 3.0, Ethernet, Camera Serial Interface (CSI), Display Serial Interface (DSI).||The dual micro HDMI allows two simultaneous displays of 4K video.|
The interesting part is that graphics processing has been upgraded. The new SoC has VideoCore VI with OpenGL ES 1.1, 2.0, 3.0.
Whoa! Hold your horses. Videocore? SoC? OpenGL? What the heck are these?
Let me explain.
SoC stands for System On a Chip. In the regular world, the CPU does very specific tasks and other tasks are outsourced to other processors. This means large boards and more circuity. For example, on your regular PC motherboard, you will have multiple ICs for CPU, GPU, communication, I/O, etc. Today, the GPUs offered by companies such as Nvidia and AMD are more powerful than many CPUs available in the market.
An SoC, on the other hand, integrates a CPU, a GPU, I/O ports, secondary storage, co-processors, and even WiFi on a single chip. In this case, the BCM2711 is an SoC that has a 4 core processor, and a GPU called Videocore on a single chip, in addition to other components. Videocore is a low-power media processor developed originally by Alphamosaic, now owned by Broadcom.
Videocore uses OpenGL, a computer graphics rendering application programming interface (API) for rendering 2D and 3D computer graphics. OpenGLES is a sub-set of OpenGL, that gives more power and control to the programmer to display graphics the way he wants. OpenGL is available free from its developers – the Khronos Group in the US.
OpenGLES 3.0 is huge progress from the previous versions and enables multiple rendering of targets, additional texturing capabilities, uniform buffers, instancing and transform feedback. These are essential steps to display high definition video. Though many of these were originally developed for gaming, they are also very useful for the rendering of any video.
In layman terms, the Videocore VI using OpenGLES 3.0 functions at 500MHz, uses all the four cores and offers Dual 4K 2160P video rendering. In other words, the RPi 4 can drive 2x4K displays concurrently. Most important, the GPU has the hardware capability to decode H.265 video codec. This is a new video compression standard that offers up to 50% better compression of video. H.265 is also called High-Efficiency Video Coding (HEVC) or MPEG-H Part 2. Though the RPi does not do hardware decoding of H.265, it allows and enables external software to directly access the hardware GPU to decode and display the H.265 perfectly.
Let us now discuss in detail the possible uses of RPi4.