10.4.4 SRAM Quality of Service

To ensure that Hosts with latency requirements get sufficient priority when accessing RAM, priority levels can be assigned to the Hosts for different types of access.

The Quality of Service (QoS) level is independently selected for each Host accessing the RAM. For any access to the RAM, the RAM also receives the QoS level. The QoS levels and their corresponding bit values for the QoS level configuration is shown in the table below.

Table 10-6. Quality of Service
ValueNameDescription
0x0DISABLEBackground (no sensitive operation)
0x1LOWSensitive Bandwidth
0x2MEDIUMSensitive Latency
0x3HIGHCritical Latency

If a Host is configured with QoS level DISABLE (0x0) or LOW (0x1) there will be a minimum latency of one cycle for the RAM access.

The priority order for concurrent accesses are decided by two factors. First, the QoS level for the Host and second, a static priority given by the port ID. The lowest port ID has the highest static priority. See the tables below for details.

The MTB has a fixed QoS level HIGH (0x3).

The CPU QoS level can be written/read, using 32-bit access only, at address 0x4100C114, bits [1:0]. Its reset value is 0x3.

Refer to different Host QOSCTRL registers for configuring QoS for the other Hosts (USB, DMAC).

Table 10-7. SRAM Port Connections QoS
SRAM Port ConnectionPort IDConnection TypeQoSdefault QoS
CM0+ - Cortex M0+ Processor0Bus Matrix0x4100C114, bits[1:0](1)0x3
DSU - Device Service Unit1Bus Matrix0x4100201C, bits[1:0](1)0x2
DMAC - Direct Memory Access Controller - Data Access2Bus MatrixIP-QOSCTRL.DQOS0x2
DMAC - Direct Memory Access Controller - Fetch Access3, 4DirectIP-QOSCTRL.FQOS0x2
DMAC - Direct Memory Access Controller - Write-Back Access5, 6DirectIP-QOSCTRL.WRBQOS0x2
USB - Universal Serial Bus7DirectIP-QOSCTRL0x3
MTB - Micro Trace Buffer8DirectSTATIC-30x3
Note: 1. Using 32-bit access only.