ARM - Juno ARMv8-A Development Platform

ARM - Juno ARMv8-A Development Platform

The Juno ARM Development Platform is a software development platform for ARMv8-A


The Juno ARM Development Platform is a software development platform for ARMv8-A, it includes the Juno Versatile Express board and an ARMv8-A reference software port available through Linaro. The Juno hardware delivers to software developers an open, vendor neutral ARMv8 development platform with

  • Cortex® A57 and A53 MPCore™ for ARMv8 big.LITTLE™
  • MaliTM-T624 for 3D Graphics Acceleration and GP-GPU compute
  • A SoC architecture aligned with Level 1 (Server) Base System Architecture

The Juno software stack available through Linaro delivers to developers an out of the box Linux software package running

  • ARM Trusted Firmware
  • A 64-bit Linux Kernel with big.LITTLE and Mali support
  • Linux based file systems (e.g Android Open Source Project)

It enables

  • ARMv8-A AArch64 kernel and tools development for Cortex-A50 series
  • Secure OS & Hypervisors through ARM Trusted Firmware
  • Expansion using a LogicTile Express 20MG FPGA board that connects directly to the platform
  • 3D graphics and GPU compute with native big.LITTLE and Mali support
  • Middleware & file systems porting and optimisation to 64-bit
  • Real-time debug, trace and performance tuning with CoreSight technology

Juno compute Subsystem


The Versatile Express™ family of development boards provide an excellent environment for development of the next generation of system-on-chip designs. Through a range of plug-in options, hardware and software applications can be developed and debugged.

Developers can use the system for early access of porting OS kernel or driver code to the big.LITTLE architecture, based on the Cortex-A57 and Cortex-A53 ARM v8 processors.

The system can be expanded by adding a LogicTile Express board to the tile site on the motherboard. This adds a large FPGA for prototyping custom logic blocks alongside the ARM processor.The exported AXI interface from the platform has dedicated routing, directly linking the Test Chip and FPGA. This ensures sufficent bandwidth is available for the user AXI subsystem.

A microcontroller-based configuration mechanism provides an easy, USB-based plug-and-play method for programming software, firmware and FPGA images into the system flash memory from an attached PC.

The Juno ARM Development Platform is designed for ARMv8-A software enablement, it integrates an test chip developed by ARM that does not aim to provide a power and performance optimised SoC.

  • System Control Processor (SCP) Firmware
    • System initialisation, cold boot flow and controls clocks, voltage, power gating.
    • ARMv7-M architecture, thumb2 AArch32 instruction set 
  • Application Processor (AP) Trusted Firmware
    • Sets up security and virtualization
    • Loads subsequent boot stages
    • EL3 monitor layer
    • PSCI support (a power management API to do shutdown/wakeup operations as well as other features)
    • Standardised APIs (SCPI, PSCI)
    • AArch64 Executable binaries and partially as source code
  • EDK2 (an open source implementation of UEFI)
    • Supports USB and network boot
    • Loads the Rich Operating System (OS)
    • Standardised APIs and easy to extend
    • AArch64 source code
  • Android
    • Unified kernel. The same kernel binary can boot Linux or Android
    • Android Open Source Project (AOSP) 32-bit filesystem from Linaro
    • Android LSK available here
  • A Linaro Evaluation Build (LEB) of the Linux kernel
    • Demonstrates Linux running
    • 64-bit kernel that can mount a 32-bit or 64-bit filesystem
    • Combines all the Juno software components required to boot Linux on Juno
    • Mali kernel driver and user space driver
    • Power management and scheduler optimizations
    • Linux device drivers for all supported Juno I/O
    • Unified Linux/Android kernel. The same kernel binary can boot either Linux or AOSP
    • AArch64 Executable binaries and source code
    • Open embedded LSK available here
Caratteristiche e Benefici

The Juno ARM Development Platform has the following features

  • Compute Subsystem
    • Dual Cluster, big.LITTLE configuration
    • Cortex-A57 MP2 cluster (r0p0)
      • Overdrive 1.1GHz operating speed
      • Caches: L1 48KB I, 32KB D, L2 2MB
    • Cortex-A53 MP4 cluster (r0p0)
      • Overdrive 850MHz operating speed
      • Caches: L1 32KB, L2 1MB
    • Quad Core MALI T624 r1p0
      • Nominal 600MHz operating speed
      • Caches: L2 128KB
    • CoreSight ETM/CTI per core
    • DVFS and power gating via SCP
    • 4 energy meters
    • DMC-400 dual channel DDR3L interface, 8GB 1600MHz DDR
    • Internal CCI-400, 128-bit, 533MHz
  • Rest of SoC
    • Internal NIC-400, 64-bit, 400MHz
    • External AXI ports: using Thin- Links
    • DMAC : PL330, 128-bit
    • Static Memory Bus Interface : PL354
      • 32bit 50MHz to slow speed peripheral
    • HDCLD dual video controllers: 1080p
  • Expansion support
    • AXI expansion to FPGA daughterboard
    • USB 2.0 with 4 port hub
  • Debug
    • ARM JTAG : 20-way DIL box header
    • ARM 32/16 bit parallel trace