Difference between revisions of "Memory accesses"

From SEGGER Wiki
Jump to: navigation, search
Line 1: Line 1:
 
__TOC__
 
__TOC__
   
  +
= Modes when accessing memory while CPU is running =
= Modes =
 
  +
Memory on the target device can be accessed in different modes. Some modes are not available on all devices. The modes only matter in case a memory access is performed while the target CPU is running.
TBD
 
  +
  +
Memory can be accessed in the following ways/modes:
  +
* Background mode
  +
* Stop mode
  +
* Legacy stop mode
   
 
== Background mode ==
 
== Background mode ==
  +
In this mode, J-Link can access the memory of the target system while the MCU + application keeps running (background memory access), effectively not impacting the real time behavior of the application.
TBD
 
  +
  +
=== Cores with background mode support ===
  +
* Cortex-M based devices (all cores from the series)
  +
* Renesas RX based devices (all cores from the series)
   
 
== Stop mode ==
 
== Stop mode ==
  +
In this mode, J-Link needs to temporarily halt the CPU in order to access memory. Execution will be resumed automatically, after the memory access has been performed.
TBD
 
  +
  +
'''Note:''' The whole operation (halt + acc + go) is performed inside the J-Link firmware, reducing the halted time of the CPU to a minimum.
  +
  +
In this mode, J-Link temporarily halts the CPU (interrupts the execution of the target application) to access the memory and continues operation automatically after the memory access is done. The actual impact (halted time) on the real time behavior depends on the setup (target interface speed used, target interface used, length of JTAG chain, actual core that is used, ...).
  +
  +
=== Cores with stop mode support ===
  +
* Cortex-A based devices
  +
* Cortex-R based devices
  +
* RISC-V based devices
   
 
== Legacy stop mode ==
 
== Legacy stop mode ==

Revision as of 16:02, 14 May 2018

Modes when accessing memory while CPU is running

Memory on the target device can be accessed in different modes. Some modes are not available on all devices. The modes only matter in case a memory access is performed while the target CPU is running.

Memory can be accessed in the following ways/modes:

  • Background mode
  • Stop mode
  • Legacy stop mode

Background mode

In this mode, J-Link can access the memory of the target system while the MCU + application keeps running (background memory access), effectively not impacting the real time behavior of the application.

Cores with background mode support

  • Cortex-M based devices (all cores from the series)
  • Renesas RX based devices (all cores from the series)

Stop mode

In this mode, J-Link needs to temporarily halt the CPU in order to access memory. Execution will be resumed automatically, after the memory access has been performed.

Note: The whole operation (halt + acc + go) is performed inside the J-Link firmware, reducing the halted time of the CPU to a minimum.

In this mode, J-Link temporarily halts the CPU (interrupts the execution of the target application) to access the memory and continues operation automatically after the memory access is done. The actual impact (halted time) on the real time behavior depends on the setup (target interface speed used, target interface used, length of JTAG chain, actual core that is used, ...).

Cores with stop mode support

  • Cortex-A based devices
  • Cortex-R based devices
  • RISC-V based devices

Legacy stop mode

TBD