Sample Arm Cortex-A53 CPAK
Sample Arm Cortex-A53 CPAK

Getting Started

Virtual prototypes play a vital role in the design and analysis of system on chip designs. In order to maximize the time spent being productive with virtual prototypes and minimize the time required to create them, Arm supplies a rich library of Cycle Performance Analysis Kits (CPAKs). These extensible virtual prototypes come complete with models, system information and software to enable designer productivity within minutes of download.


Access CPAKs 


CPAK Features

  • Pre-built virtual prototypes featuring advanced technology such as the Arm Cortex-A72Cortex-A57, Cortex-R8 and Cortex-M7 processors
  • 100% accurate models for critical performance elements including processors, fabric, memory controllers and GPUs
  • Arm Fast Model representations to enable application software development at millions of instructions per second
  • Swap & Play, to enable the Arm Fast Model representation to switch to 100% accuracy at any software break-point
  • Bare-metal software package to initialize components and enable easy customization and benchmarking
  • Linux OS packages including source code 

Simple Customization

CPAKs are designed to be useful immediately after download, but not all SoCs are the same. To better model the behavior of your actual SoC, CPAKs can also be easily customized using SoC Designer. SoC Designer enables IP blocks to be reconfigured or replaced. Additional blocks and subsystems can also be added to the system. Designers are able to take advantage of the complete Arm model ecosystem including models from Arm IP Exchange, models compiled from RTL using Cycle Model Studio or handwritten models in C/C++ or SystemC.

Source code is also provided for all software components to enable easy customization. CPAKs minimize the setup tasks typically associated with SoC design and enable engineers to focus their efforts in more productive areas.

Architectural Analysis

CPAKs are ideally suited for accurate architectural analysis. They contain 100% accurate models compiled directly from RTL and instrumented for interactive design, debug and analysis. CPAKs let you see the behavior of the actual silicon months before it is built. This enables the designer to make architectural decisions with confidence. CPAKs take advantage of all of SoC Designer's architectural analysis and visualizations tools to give the designer unmatched insight into actual SoC behavior.

System Performance Optimization

Although many benchmarks execute on a bare-metal system, a large number of them require an OS to be present. Traditionally this presents a problem because the cycle accurate models which are so beneficial for bare metal benchmarks and optimization are simply too slow to be used with an OS. Even booting an OS on a platform containing only cycle accurate models can take days.

CPAKs for the Linux and Android OS solve this problem by using Arm's Swap & Play technology. This enables the OS to boot in seconds and get to the software area of interest for performance analysis. The system representation is then swapped to be 100% accurate (for all or just part of the system) and execution continues. This technique enables accurate benchmarking and optimizations.

Unmatched IP Integration

Your SoC design doesn't just use IP from a single vendor. Your virtual prototype representation shouldn't either. CPAKs can easily accommodate additional third party IP models. These models can either be added to the CPAK platform or used to replace a delivered component. Future CPAKs will also include select third party IP to further accelerate the integration process.

Community Forums

Answered Where do I find presentations and photos from SC'18? 2 votes 2888 views 0 replies Started 1 years ago by John Linford Answer this
Suggested answer Hardware counters on Arm Graphics Analyzer tool
  • Graphics Developers
  • Graphics Processing Unit
0 votes 12221 views 6 replies Latest 5 hours ago by azy Answer this
Answered Cortex M0 - Returning from Interrupt
  • Cortex-M0
  • Arm Education Media
0 votes 1189 views 13 replies Latest 7 hours ago by Mezan1 Answer this
Not answered How Can I jump from EL1 to EL0 in bare metal environment
  • EL1
  • ARMv8 Exception Model
  • EL0
  • Armv8-A
  • Arm64
0 votes 258 views 0 replies Started 22 hours ago by Awax Answer this
Suggested answer Problem translating sound file to spectrogram 0 votes 2471 views 7 replies Latest yesterday by LucilleM Answer this
Not answered Arm64 Long Format Translation Table Walk
  • Memory Management Unit (MMU)
  • Arm64
0 votes 72 views 0 replies Started yesterday by angeld Answer this
Suggested answer change frequency of PWM for TIMER on STM32F429I 0 votes 227 views 1 replies Latest yesterday by Andy Neil Answer this
Not answered outsanading behaviour in AXI Vs memory latency
  • AMBA 4
  • AMBA 3 AXI Interface
0 votes 180 views 0 replies Started yesterday by vereng Answer this
Suggested answer Accessing initial_sp and heap_base at run time?
  • Keil MDK
0 votes 716 views 8 replies Latest yesterday by Alexander Tishchenko Answer this
Not answered Can a Physical Target be RESET using the Debugger Commands?
  • Cortex-R52
  • Arm Development Studio
  • DSTREAM Family
  • DS-5 Debugger
  • DSTREAM
0 votes 677 views 0 replies Started yesterday by sska.73 Answer this
Suggested answer Arm Graphics Analyzer 0 votes 3115 views 3 replies Latest yesterday by David1379 Answer this
Suggested answer Remove multiple occurrences of a word in ARM (Big Endian)
  • Character array
  • Keil
  • uVision
  • String
  • Arm Assembly Language (ASM)
0 votes 458 views 2 replies Latest yesterday by Andy Neil Answer this
Answered Where do I find presentations and photos from SC'18? Started 1 years ago by John Linford 0 replies 2888 views
Suggested answer Hardware counters on Arm Graphics Analyzer tool Latest 5 hours ago by azy 6 replies 12221 views
Answered Cortex M0 - Returning from Interrupt Latest 7 hours ago by Mezan1 13 replies 1189 views
Not answered How Can I jump from EL1 to EL0 in bare metal environment Started 22 hours ago by Awax 0 replies 258 views
Suggested answer Problem translating sound file to spectrogram Latest yesterday by LucilleM 7 replies 2471 views
Not answered Arm64 Long Format Translation Table Walk Started yesterday by angeld 0 replies 72 views
Suggested answer change frequency of PWM for TIMER on STM32F429I Latest yesterday by Andy Neil 1 replies 227 views
Not answered outsanading behaviour in AXI Vs memory latency Started yesterday by vereng 0 replies 180 views
Suggested answer Accessing initial_sp and heap_base at run time? Latest yesterday by Alexander Tishchenko 8 replies 716 views
Not answered Can a Physical Target be RESET using the Debugger Commands? Started yesterday by sska.73 0 replies 677 views
Suggested answer Arm Graphics Analyzer Latest yesterday by David1379 3 replies 3115 views
Suggested answer Remove multiple occurrences of a word in ARM (Big Endian) Latest yesterday by Andy Neil 2 replies 458 views