ODROID-N2: Run Ubuntu 18.04 and Android Pie with Hardkernel’s Newest Lightning Fast Single Board Computer

The ODROID-N2 is a new generation single board computer (SBC) that is more powerful, more stable, and faster performing than the ODROID-N1. The main CPU of the ODROID-N2 is based on the big.Little architecture, which integrates a quad-core ARM Cortex-A73 CPU cluster and a dual core Cortex-A53 cluster with a new generation Mali-G52 GPU.

Thanks to the modern 12nm silicon technology, the A73 cores runs at 1.8Ghz without thermal throttling using the large, stock metal-housing heatsink, allowing for a robust and quiet computer. The multi-core CPU performance is around 20% faster and the 4GB DDR4 RAM is about 35% faster than the ODROID-N1. The ODROID-N2’s DDR4 RAM is running at 1320Mhz while ODROID-N1’s DDR3 was running at 800Mhz.

The large metal housing heatsink is designed to optimize the CPU and RAM heat dissipation and minimize throttling. The CPU is placed on the bottom side of the PCB to establish great thermal characteristics.

Figure 1 - The New ODROID-N2 Board

Figure 2 - ODROID-N2 Connector details and components

Figure 3 - ODROID-N2 Components table

Figure 4 - Block Diagram Table

CPU performance

The Dhrystone-2, Double-Precision Whetstone, Sysbench and Memory bandwidth benchmark results below show that the ODROID-N2 system performance comes out ahead of other popular ARM SBCs.

Figure 5 - CPU Benchmarks

GPU performance

The Mali-G52 runs at 846Mhz and is ~10% faster than Mali-T860MP4 in ODROID-N1. The Mali-G52 is the second Bifrost-based mainstream GPU from Arm. There are two Shader Processors in the GPU and each core has three Execution Engines. This is sometimes referred to as MP6. The GPU performance was measured with glmark2-es2 “--off-screen” option.

Figure 6 - GPU Benchmarks

RAM performance

The following chart reflects why the new generation DDR4 RAM matters. The 1320Mhz-DDR4 is 35% faster than 800Mhz-DDR3. The ODROID-N2’s DDR4 RAM runs at 1320Mhz.

Figure 7 - Memory Benchmarks

CPU frequency vs performance

Some ODROID users may recall the lower than expected clock speed of the S905 SOC. We ran a test to double check the ratio between CPU clock frequency and performance, using the following command:

$ sysbench cpu --max-cpu-prime=100000 --time=10 --threads=6 run
Figure 8 - Sysbench Score

Thermal characteristics

To check the thermal throttling, we ran some heavy CPU and GPU loads together on the SoC and monitored temperature. We ran the test within a chamber that keeps the ambient temperature at 35°C, using the following command:

$ stress-ng --cpu 6 --cpu-method matrixprod && glmark2-es2-fbdev --off-screen --run-forever
Figure 9 - CPU and GPU stress test

Figure 10 - CPU Stress test - Frequency versus time

Gigabit Ethernet

According to our iperf test result, the throughput performance was near 1Gbps.

Figure 11 - IfPerf network Benchmark test

USB 3.0 hosts

We measured the USB3 transfer speed with a UAS capable SSD. The average of ~340MB/s throughput we observed, should be acceptable for many applications. Since four USB3 host ports share a single root hub, the transfer rate will be lower if you use multiple USB devices at the same time.

Figure 12 - USB 3.0 Write test

Figure 13 - USB 3.0 Read test

eMMC storage performance

The sequential read and write speed is over 150MB/s and 125MB/s respectively. The 4K random access performance is reasonably fast too. The iozone test result is as follows:

Figure 14 - eMMC storage performance

Micro-SD UHS performance

Using properly implemented UHS dynamic voltage scaling, the sequential read and write speed is over 70MB/s and 55MB/s respectively.

Figure 15 - Micro-SD UHS performance

The previous S905 SoC could not activate the UHS mode once the system booted from eMMC. However, the S922X can keep using the UHS mode with the eMMC module, simultaneously.

Sound DAC

The ODROID-N2 has an on-board high quality 384Khz/32bit stereo audio line output. The dynamic range and SNR is near 100dB and Total-Harmonic-Distortion is lower than 0.006%. One can enjoy Hi-Fi sound quality without an external audio DAC.

Figure 16 - The Signal to Noise Ratio : 1KHz (384KHz, 32bit, 2-ch):

Figure 17 - The THD + N Ratio : 1KHz (384KHz, 32bit, 2-ch):

Figure 18 - The Frequency Response : 20Hz - 20KHz(384KHz, 32bit, 2-ch)

SPI Flash memory boot

The ODROID-N2 can boot from on-board SPI memory instead of uSD memory or eMMC cards. The on-board SPI memory is 8MB in size and can include the bootstrap binaries, U-boot, bare minimum Linux kernel, and a ramdisk that includes “Petitboot”. The “Petitboot” software provides a user friendly interface and allows users to select a boot media.

Unfortunately, since the SPI bus on S922X shares the hardware interface with eMMC, the SPI flash memory on ODROID-N2 is only accessible at boot until the eMMC hardware block is activated. So you have to remove eMMC module and boot from a SD card to update firmware in the SPI flash.

RTC

The ODROID-N2 has an on-board RTC component, NXP PCF8563, interfaced to the I2C bus and can use a backup battery as an alternative power source while the main power source is absent. Since the actually measured power consumption is less than 1uA, the RTC can run for over 10 years with a CR2032 backup battery. Also, this will let your ODROID-N2 wake up at a certain time once you set an alarm time and shutdown it.

Crypto Engine

The ARMv8 architecture of the CPU supports hardware accelerated crypto extensions for building a secure system. As expected, we could see very decent openSSL performance with ODROID-N2, using the following command:

$ openssl speed sha256 (8KByte)
Figure 19 - openSSL performance benchmarks with ODROID-N2

The GPIO (40Pin header)

The ODROID-N2 GPIO interface is similar to that of the ODROID-C2 and fully supports a 3.3Volt interface while ODROID-N1 could only support 2.8Volt IO. This is beneficial for using various peripherals without complicated level shifters.

Another big improvement is a faster SPI bus interface. Its maximum frequency is over 150Mhz, and we will try to implement a DMA driven SPI driver for faster LCD performance.

Power consumption

Idle state: 1.6~1.8 Watt Heavy load state: 5.2~5.3 Watt (stress-ng --cpu 6 --cpu-method matrixprod) No cables are attached except DC power input and USB-UART debug console cable.

Software support - Linux

An Ubuntu 18.04 LTS (full 64bit) image is available with Kernel version 4.9.152 LTS at this moment. This kernel version will be officially supported until Jan, 2023.

A hardware accelerated video decoder (VPU) driver is ready. We have c2player and kplayer examples which can play 4K/UHD H.265 60fps videos smoothly on the framebuffer of ODROID-N2 HDMI output.

The Mali G52 GPU Linux driver works only on the framebuffer. We tested the latest PPSSPP emulation and it can handle x3 scaling on a 4K display nicely with well implemented VSYNC. There will be a Linux Wayland driver a few months later. We are intensively working on it together with Arm and Amlogic. Unfortunately, there is no X11 GPU driver since ARM has no plan to support X11 for Bifrost GPUs anymore. We hope that the Panfrost open source driver can be ported to ODROID-N2 soon.

Software support - Android

The Android 9 Pie is ready and we will release a full source code BSP and pre-built image together. At this moment, Android user-land supports only a 32bit system while the Kernel runs in 64bit mode. We will eventually try to support a 64bit Android system with Vulkan capable GPU driver in a few months.

Availability and price

We will start taking orders in very late March, and the first shipment will start in early April. There is  no plan to accept pre-orders. The cost for the ODROID-N2 will be USD$63 for the 2GB, and USD$79 for the 4GB model.

Debugging Party

We have sent some engineering samples to some of our active and friendly community members. The party is well under way!

Specification

Figure 21 - ODROID-N2 Specification Table

Cases (Plastic Shield)

You can choose between two colors: semi-transparent dark black and clear white. The price will be only $4.

Figure 22 - ODROID N2 Case color options 1

Figure 23 - ODROID N2 Case color options 2

Figure 24 - ODROID N2 Case color options 3

Figure 25 - ODROID N2 Case color options 4

Figure 26 - ODROID N2 Case color options 5

Figure 27 - ODROID N2 Case color options 6

Additional Benchmarks

We ran another benchmark test of 7-zip(LZMA) compress/decompress speed with the same GCC 6.3 toolchain on Debian.

Figure 28 - Compression and Decompression using Linux debian

As we can see, N2 is ~20% faster than N1 obviously. If we overclocked the N2, we have additional 7~8% gain.

Figure 29 - Additional Gain overclocking the device

We can say that very old Unixbench is still effective to compare the performance. However, we have to agree we need to run the PTS (Phoronix Test Suite) for modern benchmark tools as well.

We will check the memory performance more carefully in the weeks to come, because the RK3399’s slow memory issue seems to be solved with a couple of patches in the Kernel. We have not tested the ODROID-N1 kernel since we dropped it several months ago. We think the memory bandwidth difference may be negligible, not 35% as seen above, if we apply the patches.

References

Forum: https://forum.odroid.com/viewtopic.php?f=176&t=33781 WiKi pages: https://wiki.odroid.com/odroid-n2/odroid-n2 Github Kernel: https://github.com/hardkernel/linux/tree/odroidn2-4.9.y Github u-boot: https://github.com/hardkernel/u-boot/tr ... 2-v2015.01

Be the first to comment

Leave a Reply