ODroid-N2, the Ferrari power embeeded into a single board computer with 6 cores + GPU + 4Go RAM
The new generation of ODroid plateform is here with the great ODROID-N2.
The N2 is a single board computer offering lot of power, lot of stability and very high clock frequencies.
The main CPU of the N2 is a 6 cores processor using a big.Little architecture with a CPU containing a quad-core ARM Cortex-A73 +PLUS+ a dual core Cortex-A53 +PLUS+ the Mali-G52 GPU (new generation MALI GPU).
The A73 cores runs at 1.8Ghz. Thank to the metal-housing heatsink bed housing, the thermal throttling (reducing the CPU clock speed when overheating) is largly reduced. The heatsink is designed to optimize the CPU and RAM heat dissipation. The CPU is placed on the bottom side of the PCB to establish great thermal characteristics.
So, the N2 is a great to creates robust and quiet computer.
The high clock frequency associated to the high frequency DDR4 RAM make the performance really awesome. Compare to the N1: CPU offers 20% performance benefits and 4GByte DDR4 RAM are clocked at 1.32 GHz (powered under 1.2V).
The N2 consumme 5.2~5.3 Watt under heavy load. Consumption reduced to 1.6~1.8 Watt in Idle mode.
A) CPU S922C
B) 4x DDR4 memory chip
C) Ethernet Gigabit (10/100/1000 on RJ45)
D) HDMI 2.0
E) 4x USB 3.0
F) System LED indicator (2 LEDs)
G) Power supply Jack
H) Audio Video Output (stereo audio + composite video)
I) USB 2.0 OTG (micro USB)
J) SPI Flash (8 Mio)
K) SPI Boot select switch
L) eMMC socket (can be used to boot the OS really quickly)
M) microSD slot (can also boot the OS but will be slower)
N) IR Receiver (also used to shutdown/wake up the board with a remote control)
O) Battery connector for the RTC
P) Fan connector for active cooling
Q) GPIO with 40 pins
R) System console UART
Dhrystone-2, Double-Precision Whetstone, Sysbench and Memory bandwidth benchmark results show the N2 system performance comes out ahead of other popular ARM SBCs.
High quality DAC for sound
Poeple at Hardkernel does like music. So they are use to design High Quality Audio board.
The N2 already includes a High Quality 384 KHz/32 Bits stereo DAC (on the line output).
So, no need for external and expansive audio board add-on, you have an audio output with Dynamic range and SNR is near 100dB and Total-Harmonic-Distortion is lower than 0.006%.
USB 3.0 Hosts and performances
USB Speed transfert have been tested with SSD (UAS capable) and revealed a throughput average of about ~340MB/s. This is acceptable for many of the application.
Note that root hub is shared for all the USB port. As a consequence, the transfert rate may be lower if you have several devices connected.
eMMC, microSD card and storage performance
Poeple knowing the ODroid products already know than eMMC offers extraordinary performance to the Operating System. The eMMC read is about 150 MB/s and writes rated to 125 MB/s.
The microSD use the UHS dynamic voltage scaling to offer UHS (Ultra High Speed) performance on the SD Card. So the sequential SD read is over 70M B/s and writed over 55 MB/s
Other performance analysis
You can learn much more about the various N2 performances measurement from the ODroid Website.
Triple boot: SPI Flash, eMMC, SD Card
ODROID-N2 can boot from:
- on-board SPI memory
- microSD memory
- eMMC cards.
The on-board SPI memory of 8MB can include a bootstrap binaries, U-boot, bare minimum Linux kernel, and a ramdisk that includes Petitboot bootloader (from IBM).
The "Petitboot" software provides a user friendly interface and allows users to select a boot media based on available hardware.
Note that the SPI bus on S922X is shared between the Boot SPI Flash and the eMMC (that can be used to store the Operating System). As a results, the SPI Flash is only accessible at boot time! Once the eMMC is activated, the Boot SPI Flash cannot be accessed anymore. If you need to upgrade the content of Boot SPI Flash, you will have to remove the eMMC module and boot the board OS from SD Card. This configuration would allow the operating system to have an hardware access to the SPI Flash (for upgrade it).
RTC and wakeup on alarm
The board have a PCF8563 RTC clock wired on the I2C bus but you will need to add the RTC battery to help the PCF8563 to keep track of the time when the N2 is shutdown. This will also let the N2 to wake up at a given time when the alarm is activated (the N2 must set the alarm time and shut down).
Crypto Engine included
The ARMv8 architecture supports hardware accelerated crypto extensions for building a secure system. As expected, it offers a very decent openSSL performance with ODROID-N2 (4x better than XU4).
A 40 Pins GPIO at 3.3V :-)
Usually, ODroid GPIOs are using lower voltage and need some level shifting to work with. Maker do prefer 5V logics and would use 3.3V when necessary (newbies doesn't like to work under 5V). On the other ODroid plateform, the GPIO are usually under 3.3V which is absolutely not confortable for makers.
Having a 3.3V GPIO is really great!
A big improvement is the faster SPI bus interface (maximum frequency > 150Mhz). Hardkernel will try to implement a DMA driven SPI driver for faster LCD Display.
N2 under Linux
Ubuntu 18.04 LTS image is available with Kernel version 4.9.152 LTS (That kernel version will be officially supported until Jan, 2023).
A hardware accelerated video decoder (VPU) driver is ready. HardKernel 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. According to HardKernel documentation has tested latest PPSSPP emulation and it can handle x3 scaling on a 4K display nicely with well implemented VSYNC. A Linux Wayland driver should be available few mounth (HardKernel is working intensively on it with Arm and Amlogic).
Note: there is no X11 GPU driver since Arm has no plan to support X11 for Bifrost GPUs anymore. HardKernel beleive that Panfrost open source driver can be ported to ODROID-N2 soon.
N2 under Android
Android 9 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.