Arm Community
Arm Community
  • Site
  • User
  • Site
  • Search
  • User
  • Groups
    • Arm Research
    • DesignStart
    • Education Hub
    • Graphics and Gaming
    • High Performance Computing
    • Innovation
    • Multimedia
    • Open Source Software and Platforms
    • Physical
    • Processors
    • Security
    • System
    • Software Tools
    • TrustZone for Armv8-M
    • 中文社区
  • Blog
    • Artificial Intelligence
    • Automotive
    • Healthcare
    • HPC
    • Infrastructure
    • Innovation
    • Internet of Things
    • Machine Learning
    • Mobile
    • Smart Homes
    • Wearables
  • Forums
    • All developer forums
    • IP Product forums
    • Tool & Software forums
    • Pelion IoT Platform
  • Activity
  • Support
    • Open a support case
    • Documentation
    • Downloads
    • Training
    • Arm Approved program
    • Arm Design Reviews
  • More
  • Cancel
System
  • Developer Community
  • IP Products
  • System
  • Jump...
  • Cancel
System
SoC Design blog Introduction to the QVN Protocol
  • Blogs
  • Forums
  • Videos & Files
  • Mentions
  • Sub-Groups
  • Tags
  • Jump...
  • Cancel
  • New
More blogs in System
  • Embedded blog

  • SoC Design blog

Tags
  • Corelink
  • qvn
  • White_paper
  • Cortex-A
  • nic-400
Actions
  • RSS
  • More
  • Cancel
Related blog posts
Related forum threads

Introduction to the QVN Protocol

Ashley Stevens
Ashley Stevens
December 16, 2013

I created a short introduction to the QVN protocol used with the QVN-400 plugin to NIC-400 and with the DMC-400 dynamic memory controller. This is a non-confidential introductory-level document for those seeking to understand how QVN works and what issues it can solve.

The Problem

Today’s SoCs often consist of dozens of masters and slaves, but typically most masters only target main memory (i.e. SDRAM), while the majority of slaves are only accessed by a very limited number of masters, primarily the CPU(s). It’s common for a large number of masters to contend for access to main memory and for the memory system to become a key bottleneck in the system.

QoS regulation and prioritization systems attempt to regulate traffic flow based on the requirements of the masters, e.g. bandwidth or latency targets and the capability of the memory system. Memory controllers typically contain a transaction queue and can re-order transactions based on QoS priority, but in heavily congested systems the memory controller queue may saturate resulting in the controller stalling the interconnect and ultimately creating back-pressure on masters.

This can cause blocking in the interconnect and no matter what QoS schemes are employed, latency will be indeterminate and uncontrolled. As a result, high priority traffic may get blocked behind low priority traffic, and cannot make progress to enter the memory controller queue where it could be prioritized appropriately. It would be desirable to enable traffic to flow uninterrupted from the master through the interconnect to the memory controller queue, where it can be prioritized accordingly.
QVN-Introduction-CC.pdf
Anonymous
SoC Design blog
  • SoC Design blog: Simplifying workload modeling with AMBA ATP Engine

    Francisco Socal
    Francisco Socal
    Following the release of the AMBA Adaptive Traffic Profiles (ATP) Specification, we are pleased to announce the AMBA ATP Engine, to further facilitate ATP’s adoption into a variety of platforms.
    • May 20, 2020
  • SoC Design blog: Docker enables Arm Cycle Model Studio on Ubuntu

    Jason Andrews
    Jason Andrews
    Arm Cycle Model Studio (CMS) is a great tool to create SystemC simulation models from Verilog RTL source code. This articles shows how to use Docker to run CMS and create models on an Ubuntu machine.
    • October 23, 2019
  • SoC Design blog: AMBA ATP: Gaining momentum with workload modeling

    Francisco Socal
    Francisco Socal
    This blog presents examples of AMBA ATP adoption and the benefits that Arm and its ecosystem partners deliver.
    • August 7, 2019