Arm has released the latest update to Arm Development Studio, version 2024.0.
This is the first publicly available release to support the latest Arm processors:
The following Arm Architectures and extensions have been added:
See the Arm A-Profile Architecture Developments 2023 blog for a description of some of the above.
Individual components of Development Studio have been updated to the following versions:
Arm Graphics Analyzer is no longer provided with Arm Development Studio. It is available (free of charge) as a component of Arm Performance Studio for Mobile.
See also the Arm Development Studio 2024.0 Release Note, and the Arm Performance Studio 2024.1 Release Note.
Arm Development Studio provides complete support for the Arm IP listed previously:
A collection of example projects are provided to help you get started.
FEAT_D128 Registers view
FEAT_D128 MMU/MPU view
Memory view displaying data in FP8 E4M3 format
Memory view displaying data in FP8 E5M2 format
The Arm Debugger supports additional mmu commands for these Armv9-A features.
To list all available dirty state structures use:
mmu list dirty-state
The output will be similar to:
Available dirty state structures: EL1S_S2_HDBSSPROD_EL2 parameters: HDBSSBR_EL2, HDBSSPROD_EL2 EL1S_S2_HACDBSCONS_EL2 parameters: HACDBSBR_EL2, HACDBSCONS_EL2 ...
If no such structures are available, the command will report:
No available dirty state structures
To interrogate a particular structure use the mmu dirty-state command, for example:
mmu dirty-state EL1S_S2_HDBSSPROD_EL2 all
Which will output similar to the following:
Base address = NP:0x80000000, Size = 4KB, Index = 4 / 63 Index| IPA Range |Type | Security State | Valid -------------------------------------------------------------------------------- 0 | 0x00000000 - 0x3FFFFFFF | Level 1 Block (1GB) | Secure | Y 1 | 0x1C000000 - 0x1C1FFFFF | Level 2 Block (2MB) | Non-secure | Y 2 | 0x2F000000 - 0x2F1FFFFF | Level 2 Block (2MB) | Secure | N 3 | 0x3F000000 - 0x3F1FFFFF | Level 2 Block (2MB) | Secure | N ...
For example, it is now possible to set address ranges on watchpoints with the watch (watches for writes), rwatch (reads) and awatch (reads or writes) commands (Cortex-M hardware targets only). Use the -s option to specify the size of the range window.
For example, to set a watchpoint across an entire array (of size 0x400):
awatch array -s 0x400
The debugger will output similar to the following to confirm:
Watchpoint 1 with mask at 0x00200000..0x00200400
When the watchpoint is hit, the debugger will report similar to:
Execution stopped in Handler mode at 0x000001CE due to a watchpoint at 0x00200000..0x00200400
Connectivity to gdbserver has been extended to version 8.2 and later.
GDB connections can now support M-profile devices. For any bare-metal connection, use the new Generic → GDB Debug connection type.
Bare-metal debug setup with gdb
See the Arm Debugger Release Note for full information on changes and improvements.
Arm Development Studio installers are available from the Arm Developer website.
Download Arm Development Studio
Hi there,Thank's a lot for this sharing !Really interestingGood job