Knowledge Articles

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

Migrating Arm Linux from CoreLink CCI-400 Systems 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 infrastructure.

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

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

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

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

  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