Login

Juno ARM Development Platform

Juno ARM Development Platform Image (View Larger Juno ARM Development Platform Image)
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 :

Juno Software Overview

The Juno software stack delivers

  • System Control Processor (SCP) Firmware
    • System initialisation, cold boot flow and controls clocks, voltage, power gating.
    • Delivered as binary via Linaro with public programmers interface
  • Application Processor (AP) Software – all delivered as source via Linaro
    • ARM Trusted Firmware – supporting PSCI power controls and trusted execution environments
    • Choice of UEFI or U-Boot firmware
    • Linux – support for both latest kernel and Linaro Stable Kernel which includes Mali GPU drivers and Android patch-set.
      • Includes big.LITTLE scheduling and Intelligent Power Allocation support from ARM
    •  Linaro supported Linux filesystems including:
      • Busybox
      • OpenEmbedded (yocto)
      • Android (Linaro Confectionary Release) – contains user-space driver for the Mali GPU

For more details please review the ARM Development Platform Connected Community page

 

 

The ARM® 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 Juno boards for early access of porting OS kernel or driver code to the big.LITTLE architecture, based on the Cortex-A72 or Cortex-A57 and Cortex-A53 ARM v8 processors or PCI-Express development.

The table below outlines the difference between the Juno variants

  Juno r0 Juno r1 Juno r2
Target application   Platform for big.LITTLE development with ARMv8-A   Platform for PCI-Express development with ARMv8-A  Platform for big.LITTLE development with big.LITTLE and PCI-Express 
big cluster Cortex-A57 r0p0 Cortex-A57 r0p1 Cortex-A72 r0p0eac
LITTLE cluster Cortex-A53 r0p0 Cortex-A53 r0p3 Cortex-A53 r0p3
CCI-400 r1p2 r1p3 r1p3
NIC-400 r0p1 r0p2 r0p2
TZC-400 r0p0 r0p1 r0p1
STM STM r0p1 STM-500 r0p1 STM-500 r0p1
FPGA support IO coherent Fully coherent Fully coherent
PCI-Express support No Yes, 4 lanes plus GbEthernet & SATA Yes, 4 lanes plus GbEthernet & SATA

Juno Platforms can also 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. To enable early access to hardware the TestChip has not been fully optimized for performance and power.

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.

 ARM Public and Live Remote Training Courses

ARM has a number of relevant training both public and live remote courses which will help you get the most out of the Juno development platform.  Please visit the Training tab below.

 

 
 


 

 

  • 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
  • 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

Refer to ARM's Connected Community for more detailed information how to access the software.


 

 

 

 

The Juno ARM Development Platform has the following features

  • Compute Subsystem
    • Dual Cluster, big.LITTLE configuration
    • Cortex-A72 MP2 (r0p0eac) or Cortex-A57 MP2 cluster (r0p0)
      • Caches: L1 48KB I, 32KB D, L2 2MB
    • Cortex-A53 MP4 cluster (r0p0)
      • Caches: L1 32KB, L2 1MB
    • Quad Core MALI T624 r1p0
      • Caches: L2 128KB
    • CoreSight ETM/CTI per core & STM-500 (Juno r1 only)
    • DVFS and power gating via SCP
    • 4 energy meters
    • DMC-400 dual channel (2x32bit) DDR3L interface, 8GB 800MHz (1600MT/s)
    • 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
    • 4 lane Gen 2.0 PCI-Express slots (Juno r1 and r2 only)
  • Debug
    • ARM JTAG : 20-way DIL box header
    • ARM 32/16 bit parallel trace

Title     Description 
Juno Getting Started Guide Introduction to the Juno platform
Juno FAQ Juno Frequently asked questions
Juno r0 ARM Development Platform Technical Reference manual   Juno r0 Technical reference manual for the development board, detailing board peripherals, memory map interrupts etc.
Juno r0 SoC Technical Reference manual Juno r0 Technical reference manual for the SoC
Juno r0 ARM Development Platform datasheet Juno r0 Datasheet summarising the hardware and software features of this platform.
Juno r0 ARM Development Platform Soc Technical Overview Juno r0 Technical overview of the  platform covering both software and hardware features.
Juno Software Developers Errata Notice List of errata for software developers.
Juno r1 ARM Development Platform Technical Reference manual Juno r1 Technical reference manual for the development board.
Juno r1 SoC Technical Reference manual Juno r1 Technical reference manual for the SoC
Juno r1 ARM Development Platform datasheet Juno r1 Datasheet summarising the hardware and software features of this platform.
Juno r1 errata document Juno r1 errata document
Juno r2 ARM Development Platform Technical Reference Manual Juno r2 Technical reference manual for the development board, detailing board peripherals, memory map interrupts etc.
Juno r2 SoC Technical Reference manual Juno r2 Technical reference manual for the SoC
Juno r2 ARM Development Platform datasheet Juno r2 Datasheet summarising the hardware and software features of this platform.
 

 

 

The Juno ARM Development Platform can be expanded by adding a Versatile Express LogicTile 20MG FPGA development board. This allows the addition of user logic to the system. The FPGA board connects to the platform using master & slave Thin Links as a method off chip communication.

An application note AN415 on how to to connect an ARM LogicTile Express 20MG to the Juno Development Platform is available to download here  

The Juno r1 variant can also be expanded using the 4 Gen 2.0 PCI-Express slots.

 

The Juno platform also supports PRO DESIGN Electronics proFPGA unoduo and quad Prototyping solution, offering a larger capacity FPGA solution beyond Versatile Express 20MG. The proFPGA product family is a complete, scalable and modular multi-FPGA prototyping solution consisting of different types of motherboards, various Xilinx Virtex® FPGA modules based on the latest Virtex UltraScale™ technology and a portfolio of interconnection boards/cables, as well as a large range of daughter boards including memory boards and high-speed interface boards. This solution is supported by all Juno variants and an example Application Note AN499 is available as a starting point for an FPGA design implementation. A short video showing the mechanical assembly instructions is available here.

proFPGA+Juno

 


 

  • Linaro host all the software components required to boot Linux/Android on Juno.For instructions on using these software stacks go to ARM's Connected Community Portal
  • If you wish to return the board to factory setting you can do that here by downloading the Versatile Express support DVD

 

  • Development Platform
    • The Juno hardware delivers to software developers an open, vendor neutral ARMv8 development platform with
      • Cortex® A72 or A57 with A53 MPCore™ for ARMv8
      • Mali™-T624 for 3D Graphics Acceleration and GP-GPU compute
      • 4 lane Gen 2.0 PCI-Express expansion (Juno r1 and r2 only)
      • A SoC architecture aligned with Level 1 (Server) Base System Architecture

 

With out-of-the-box support for the Juno ARM Development Platform, ARM DS-5 Ultimate Edition is the complete tool suite for ARM, including ARMv8. Enabling code generation, debug, trace and optimization of software from bare-metal to userspace, DS-5 has been developed alongside the ARMv8 architecture to help take full advantage of ARM’s highest performance processors.

It offers OS-aware debug for Linux and Android, along with a range of RTOSs, keeping track of threads and processes across multicluster and big.LITTLE configurations is intuitive. System optimization is made easier with excellent support for advanced CoreSight debug and trace, whilst Streamline performance analyzer helps identify bottlenecks in CPU and Mali GPU, which can be tracked down to individual functions or lines of source code.   


 

ARM has number of relevant training courses which will help you get the most out your Juno Development plaform:

ARMv8-A Software Development (3 day face-to-face course)

ARMv8 Overview (Two hour remote training course delivered via web conference)

Introduction to ARMv8 Programming (Four hour remote training course via web conference)

ARM TrustZone Technology Training (Three day face-to-face course)

Introduction of TrustZone (One house online course)

TrustZone Overview (Eight hour remote training course delivered via web conference) 


Maximise


Cookies

We use cookies to give you the best experience on our website. By continuing to use our site you consent to our cookies.

Change Settings

Find out more about the cookies we set