3.9.14 DMC520

ARM Dynamic Memory Controller(DMC520). This model is written in C++.

DMC520 contains the following CADI targets:

  • DMC520

DMC520 contains the following MTI components:

About DMC520

A platform can have multiple instances of this component. For example:

//LISA instantiation
    // Memory controllers
    dmc520_0            : DMC520("passthrough_debug_access"=true);
    dmc520_1            : DMC520("passthrough_debug_access"=true);


  • The model does not support address striping.
  • It works with linear addresses and not in rank,bank,row,column form.
  • It does not include any mechanism for error injection or detection.
  • Scrubbing functionality is only provided from the interface point of view.
  • It does not implement direct read or write commands.
  • It does not implement any performance counters.

Differences between the model and the RTL

The DMC520 and DMC620 models have different interfaces to those in the hardware due to the level of abstraction of memory in Fast Models. These are the differences:

  • Like the hardware, the model has a slave port for configuring register accesses, apb_pvbus_s, and an AXI interface for incoming memory transactions that are attempting to access memory that is managed by the DMC.

  • The hardware component translates incoming transactions on the AXI interface to a format that is conducive to accessing DRAM chips. The model performs TrustZone® access control and models the DMC readiness state, but does not translate the transactions. If allowed, the model forwards incoming transactions to be handled by a memory storage handling component that works at the transaction level.

Table 3-314 Ports

Name Protocol Type Description
all_or_interrupt_signal Signal Master A combined interrupt that is the logical OR of the other interrupts.
apb_pvbus_s PVBus Slave Programmers interface to program and control the DMC-520.
arch_fsm_interrupt_signal Signal Master The DMC has detected a change in the architectural state.
failed_access_interrupt_signal Signal Master The DMC has detected a system request that has failed a permissions check and a previously detected assertion was not cleared.
filter_pvbus_m PVBus Master DMC master port to memory.
filter_pvbus_s PVBus Slave System interface.
reset_signal Signal Slave DMC reset.
scrub_event_in[8] Signal Slave Scrub event n trigger.
scrub_event_out[8] Signal Master Scrub event n triggered.
Non-ConfidentialPDF file icon PDF version100964_1110_00_en
Copyright © 2014–2020 Arm Limited or its affiliates. All rights reserved.