Knowledge Articles

In this section you can find articles to help you get started with Cycle Models.

Using Arm Cycle Models to Explore the Cortex-R8

Arm Cycle Models are used to perform a variety of tasks, including IP evaluation, software development and performance optimization. This tutorial describes how they have been used by Arm silicon partners to understand the Cortex-R8. This model is available for use in SoC Designer and, for the first time, Accellera SystemC simulation.

Read more

Migrating Arm Linux from CoreLink CCI-400 to CoreLink CCN-504

The Armv8 Linux CPAK utilizes Arm CoreLink CCN-504 Cache Coherent Network on Arm System Exchange. This tutorial explains how to migrate a multi-cluster Linux CPAK from CCI to CCN. The CCN family of interconnect offers a wide range of high bandwidth, low latency options for networking and data center infrastructre.

Read more

Comparing Arm Cortex-A72 and Arm Cortex-A57

This article discusses the Cortex-A72 processor which delivers CPU performance that is 50x greater than leading smartphones from five years ago. The core delivers 3.5x the sustained performance compared to a Cortex-A15 design from 2014.

Read more

SAM Configuration for AMBA 5 CHI Systems

This tutorial explores the new AMBA 5 CHI features in SoC Designer including support for monitors, breakpoints and CHI stub component, as well as how to configure the CCN-504 on Arm IP Exchange using System Address Map.

Read more

Using the Arm Performance Monitor Unit (PMU) Linux Driver

This article discusses how to use the Arm Linux PMU driver to gather performance information, including kernel configuration, device tree entry, and obtaining performance information from a Linux application. A Cycle Performance Analysis Kit (CPAK) for a Cortex-A53 system running 64-bit Linux has been used.

Read more

Systems Performance Analysis and Arm Performance Monitor Unit (PMU)

This tutorial explains how Cycle Models of Arm CPUs enable system performance analysis by providing access to the Performance Monitor Unit (PMU). This includes an introduction to using the Cycle Model System Analyzer to automatically gather information on Arm PMU events for bare metal and Linux software loads.

Read more

Using Linux Swap and Play with Cortex-A Systems

 This article explains how the availability of Swap & Play models on Cortex-A processors allows Cycle Model users to run Linux benchmark applications for system performance analysis.

Read more

Running 64-bit Linux Applications on an 8-core Arm Cortex-A53 CPAK

The 8-core Arm Cortex-A53 CPAK running 64-bit Linux is a dual-cluster system with full Swap & Play support. This article explains how to run 64-bit Linux Applications on the system and make the most of the new features within the tool.

Read more

Semihosting with Arm Cortex-A53 and Cortex-A57

This article explains the differences between using semihosting on Armv7 processors, such as the Cortex-A7 and Cortex-A15, and using semihosting on Armv8 processors, such as the Cortex-A53 and Cortex-A57. When used in multi-core Armv8 environments, semihosted functions can result in memory corruption and scrambled output; this article details these cases and presents solutions.

Read more

Using Arm Compiler 6 with CPAKs

This tutorial provides tips on using Arm Compiler 6 with CPAKs. This compiler is based on Clang and the LLVM Compiler Framework, and provides best in class code generation for the Arm Architecture.

Read more

Understanding Arm Bare Metal Benchmark Application Startup Time

This article provides an insight into the initialization code within CPAKs, specifically what happens between the end of the assembly code which initializes the hardware and the start of a C program.

Read more

SMP Linux on a Minimal Dual-Core Arm Cortex-A15 System

This article explains how to create a minimal, dual-core Cortex-A15 system running SMP (Symmetric Multiprocessing) Linux using the Cortex-A15 CPAK found on Arm IP Exchange.

Read more

Running Linux Kernel on a Minimal Arm Cortex-A15 System

Linux is a popular operating system in embedded products, and as a result is experiencing increased usage for system design and verification. The Linux Device Tree has made it significantly easier for those who work with simulated hardware, and often partial systems, to be able to run Linux with nearly no changes to the kernel source code. The following article describes how to embrace these features and get Linux running on a minimal system using the Arm Cortex-A15 processor.

Read more

Getting Up and Running with the Arm Mali-450 MP GPU

This article describes how to create a Cycle Model from the Mali RTL for Mali-450 MP GPU using Cycle Model Studio and introduces a bare-metal system built on SoC Designer that consists of the GPU alongside several other components. The article also discusses a Linux-based CPAK containing a Cortex-A15 based system with a Mali-450 GPU, which enables users to integrate the GPU drivers into the Linux Kernel and register the Mali driver while booting Linux on the virtual prototype environment.

Read more

Optimizing the Arm CoreLink NIC-400

This tutorial explains how to optimize the Arm CoreLink NIC-400 Network interconnect for your application, introducing concepts of virtual prototyping, modeling the NIC-400 and how to drive and analyze traffic through it. The key features of the NIC-400 are highlighted as well as a methodology, based on real system traffic and software, for making the best design decisions.

Read more

Memory Subsystem Optimization

This article provides answers to questions around the memory subsystem, for example how memory controllers impact system performance and whether there is increased latency in a processor due to memory data path. It also discusses how Cycle Model products can be used to address these concerns.

Read more

  Blogs

    These blogs provide an introduction to various Cycle Model products and help you use them effectively.


Software Driven System Verification of Arm-based SoC Designs

This account discusses the importance of system verification in understanding true system behavior and fixing problems earlier in the design cycle.

Read on Arm Community

Optimization of Systems Containing the NIC-400

This article and webinar discusses the importance of accurate models for the NIC-400 for system tasks ranging from IP selection to accurate firmware bringup and debug.

Read on Arm Community

Sometimes Hardware Details Matter in Arm Embedded Systems Programming

This account highlights the challenges embedded systems engineers often face and reminds developers to watch out for hardware details when building and debugging a system running software.

Read on Arm Community

Unified Virtual Prototypes: Fast and Accurate?

This tutorial explains the benefits of unified virtual prototypes to achieve both speed and accuracy in models.

Read on Arm Community

IP Selection: Arm Cortex-A9 or Cortex-A7?

This article explains how Cycle Models can be used to decide which IP an architect should select to design their products with.

Read on Arm Community

Optimization of Systems Containing the Arm CoreLink CCN-504

This article explores the Arm Cortex-A57 CPAK which has been configured for AMBA 5 CHI and the CoreLink CCN-504 Cache Coherent Network. The system has a single core running 64-bit bare-metal software with memory and a PL011 UART.

Read on Arm Community