Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
Arm Community blogs
Arm Community blogs
SoC Design and Simulation blog How to Measure and Optimize the System Performance of a Smartphone RTL Design - Part 2
  • Blogs
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
More blogs in Arm Community blogs
  • AI blog

  • Announcements

  • Architectures and Processors blog

  • Automotive blog

  • Embedded and Microcontrollers blog

  • Internet of Things (IoT) blog

  • Laptops and Desktops blog

  • Mobile, Graphics, and Gaming blog

  • Operating Systems blog

  • Servers and Cloud Computing blog

  • SoC Design and Simulation blog

  • Tools, Software and IDEs blog

Tags
  • AMBA
  • Corelink
  • performance_analysis
  • Cadence Design Systems
  • corelink_system_ip
  • amba_traffic
  • cache_coherence
  • amba4
  • corelink_500_series
  • interconnect
  • fabric
  • system_ip
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

How to Measure and Optimize the System Performance of a Smartphone RTL Design - Part 2

Nick
Nick
November 7, 2013
2 minute read time.

By William Orme, Strategic Marketing Manager, Arm and Nick Heaton, Distinguished Engineer, Cadence

This is Part 2 of a 4 part series. Links below

Part 2

Performance Characterization

Because of the complexity of assembling and configuring the multitude of IPs needed in contemporary mobile platforms there is a potential risk that bugs can be introduced. The first step in validating such a platform is to perform a rigorous set of tests that characterize the maximum achievable performance of all the paths through the system. Taking each master in turn and driving the maximum traffic the interface is capable of and then measuring the limits can find many issues that otherwise may not be found. To perform this task the actual master interfaces need to be driven with an appropriate verification IP (VIP) to give total control on the type of traffic injected into the system.

Figure 3 shows how VIP for AMBA protocols needs to be connected to the system in order to drive all the possible paths through the system for Performance Characterization.

Figure 1 (See Part 1 How to Measure and Optimize the System Performance of a Smartphone RTL Design) introduced some of these classes at a high level, let’s drill down and understand better what the different requirements are.

Using VIP to drive AMBA Traffic for Performance Characterization

Figure 3: Using VIP to drive AMBA Traffic for Performance Characterization

Tests can be run on the testbench to perform comprehensive characterization of the system behavior and then the results can be tabulated and analyzed. Typically a range of tests are performed  including bandwidth testing where each path from master to slave memory is driven with saturating (back-to-back transactions) traffic for READ, WRITE and mixed READ/WRITE. For example the path from M5 to S0 in Figure 3 would be characterized for maximum READ bandwidth, maximum WRITE bandwidth and maximum READ/WRITE bandwidth. The proportion of READ and WRITE can be variable but a typical system would have 60/40 or 70/30 READ/WRITE ratio. Similarly minimum latency testing can be performed using simple traffic sequences.

When running characterization tests it is normal to disable any quality of service (QoS) or similar dynamic load balancing mechanisms as only one master is active. Characterization tests can also be used to explore the limits of double data rate (DDR) controller performance and understand the upper limits of DDR efficiency that might be achieved with the knowledge that in realistic operation the system will never achieve 100% of its theoretical limits.

This type of performance characterization lends itself to automation as a suite of systematic tests can be generated by EDA tools if they have sufficient system knowledge and the results can be captured by the VIP monitors.

In part 3 we will introduce the second step in our systematic approach to performance analysis, use case performance analysis.

How to Measure and Optimize the System Performance of a Smartphone RTL Design - Part 1

How to Measure and Optimize the System Performance of a Smartphone RTL Design - Part 3

How to Measure and Optimize the System Performance of a Smartphone RTL Design - Part 4

Cadence System Design and Verification

Anonymous
SoC Design and Simulation blog
  • Performance verification with AMBA Viz

    Tony Nip
    Tony Nip
    Run consistent latency and bandwidth checks on CMN interconnects using AMBA Viz’s new performance script—no API expertise needed.
    • June 30, 2025
  • Understanding Scandump: A key silicon debugging technique

    Vincent Yang
    Vincent Yang
    Scandump is highly effective in silicon debugging as it can capture most internal states through scan chains, making it invaluable in diagnosing silicon issues.
    • June 5, 2024
  • Introduction to AMBA Viz

    Tony Nip
    Tony Nip
    AMBA Viz enables faster debug and performance analysis for cycle-accurate simulation and emulation, even for complex interconnects and AMBA bus protocols.
    • May 31, 2024