Getting Started with Arm DS-5 CE and Armv8-A Foundation Platform
Start DS-5 and set up your Workspace
- To start DS-5 select Eclipse for DS-5 CE from the installation folder.
- In the Workspace Launcher dialog, accept the default workspace, or click Browse and select a folder. For example,
C:\DS-5_Workspace
. - Select Use this as the default and do not ask again option and click OK.
- Either close the Welcome page, or click Go to workbench to view the C\C++ Perspective.
Import a bare-metal compiler
In order to build a project, setup a compilation toolchain in the DS-5 preferences. For the purpose of this tutorial we'll use a bare metal compiler (AArch64) from Linaro. This tutorial uses GCC version 5.3.1, which is available here: https://releases.linaro.org/components/toolchain/binaries/5.3-2016.02/aarch64-elf/.
The most recent version of the GCC compiler is available here: https://releases.linaro.org/components/toolchain/binaries/latest-7/aarch64-elf/. This tutorial has been confirmed to work with GCC 7.2.1, however Arm cannot guarantee that this tutorial will always work with the latest version of the GCC compiler.
- In DS-5, click Window > Preferences and expand DS-5
- Select Toolchains and click Add... in the Add/Remove toolchains section and Browse to your toolchain folder
- Select Next to run autodetection
- Select Finish to complete adding the Toolchain.


Eclipse will automatically restart.
Create a new Hello World C project
- From the DS-5 main menu, select File > New > C Project to display the C Project dialog.
- In the C Project dialog:
- In Project name field, enter Hello World as the name of your project.
- Under Project type, select Executable > Hello World ANSI C Project.
- Under Toolchains, select the compiler you imported in the previous section. For example GCC 5.3.1 [aarch64-elf]
- Click Finish to create a C project called Hello World. You can view the project in the Project Explorer view.
Modify project build settings and build the application
Before building the example specify the project build settings.
- Locate your Hello World project in the Project Explorer view, Right click it and select Properties.
- In the Properties dialog
- Navigate to C/C++ Build > Settings
- Select All configurations in the Configurations list
- Select GCC C Linker > Miscellaneous and in the Other flags field enter:
--specs=aem-ve.specs
- Click OK to apply and close the Properties dialog
If the platform specification file is not available in your toolchain, you will need to replicate the compiler switches for the Armv8-A Foundation Platform model. To find out more about building with bare-metal applications see Building bare-metal applications in DS-5 using GCC compiler
- Locate your Hello World project in the Project Explorer view, right click it and select Build Project.
- You can view the build output console by selecting Window > Show view > Console.
Create a DS-5 debug configuration
- From the DS-5 main menu, select Run > Debug Configurations.
- In the Debug Configurations dialog:
- Select DS-5 Debugger.
- Click the New launch configuration button.
This creates a new DS-5 debug configuration and displays the various tabs required to specify settings for loading your application on the target.
- In the Debug Configurations dialog:
- Give a name to the debug configuration. For example,
Hello World
. - In the Connection tab, under Select Target, browse and select Arm Model > Armv8-Ax1 Foundation Platform > Bare Metal Debug > Debug Armv8-A.
- Select the Files tab, and under Target Configuration in the Application on host to download field, click Workspace.
The workspace folder Hello World > Debug contains the
Hello World.axf
application file you created when you built the Hello World project. - Select
Hello World.axf
, click OK
Note: Ensure that the Load symbols option is selected in the Files tab. - Select the Debugger tab, and ensure the Debug from symbol option is selected and set to
main
. - Click Debug to load the application on the target, and load the debug information into the debugger.
- In the Confirm Perspective Switch dialog that appears, click Yes.
DS-5 connects to the model and displays the connection status in the Debug Control view.
The application is loaded on the target, and has stopped at the
main()
function, ready to run. - Click
to continue running the application.
You can view the application output in the Target Console view.
Other views display information relevant to the debug connection
- Commands view displays messages output by the debugger. Also use this view to enter DS-5 commands.
- Disassembly view shows the loaded program in memory as addresses and assembler instructions.
Indicates the location in the code where your program is stopped. In this case, it is at the
main()
function.
- Commands view displays messages output by the debugger. Also use this view to enter DS-5 commands.
- Give a name to the debug configuration. For example,
Step through the application
Use the controls provided in the Debug Control view to step through the application.
- Click to continue processing code.
- Click to interrupt or pause processing code.
- Click to step through the code.
- Click to step over source line.
- Click to step out.
- This is a toggle. Select this if you want the above controls to step through instructions.
- Debug from main()
Disconnect from the debug connection
To disconnect from a debug connection, you can either right-click the connection and select Disconnect from Target or select the connection and in the Debug Control view toolbar click