Visible to Intel only — GUID: tew1697418635441
Ixiasoft
1. About this Document
2. Ashling RiscFree* IDE for Altera® FPGAs
3. Ashling Visual Studio Code Extension for Altera FPGAs
4. Ashling RiscFree* Integrated Development Environment (IDE) for Altera® FPGAs User Guide Archives
5. Document Revision History for the Ashling RiscFree* Integrated Development Environment (IDE) for Altera® FPGAs User Guide
A. Appendix
2.1. About the RiscFree* IDE for Altera® FPGAs IDE
2.2. Getting Started with the Ashling* RiscFree* IDE for Altera® FPGAs
2.3. Using Ashling* RiscFree* IDE for Altera® FPGAs with Nios® V Processor System
2.4. Using Ashling* RiscFree* IDE for Altera® FPGAs with Arm* Hard Processor System
2.5. Debugging Features with RiscFree* IDE for Altera® FPGAs
2.2.1. Installing RiscFree* IDE for Altera FPGAs
2.2.2. Getting Started with RiscFree* IDE for Altera® FPGAs
2.2.3. Creating the Project
2.2.4. Building the Application
2.2.5. Run and Debug Configurations in the RiscFree* IDE for Altera® FPGAs
2.2.6. Debug Information in the RiscFree* IDE for Altera® FPGAs
2.5.1. Debug Features in RiscFree* IDE
2.5.2. Processor System Debug
2.5.3. Heterogeneous Multicore Debug
2.5.4. Debugging µC/OS-II Application
2.5.5. Debugging FreeRTOS Application
2.5.6. Debugging Zephyr Application
2.5.7. Arm* HPS On-Chip Trace
2.5.8. Debugging the Arm* Linux Kernel
2.5.9. Debugging Target Software in an Intel® Simics Simulator Session
3.1. About the Ashling Visual Studio Code Extension
3.2. Getting Started with Ashling* Visual Studio Code Extension
3.3. Using Ashling* Visual Studio Code Extension with Nios® V Processor System
3.4. Using Ashling* Visual Studio Code Extension with Arm Hard Processor System
3.5. Debugging Features in Ashling* Visual Studio Code Extension
3.3.1. Creating Nios® V Processor BSP using Nios® V Processor BSP Generator
3.3.2. Creating Nios® V Processor Application Project using Nios® V App Generator
3.3.3. Importing Nios® V Processor Project
3.3.4. Building Nios® V Processor Project
3.3.5. Debugging a Nios® V Processor Project
3.3.6. Debugging Tools
Visible to Intel only — GUID: tew1697418635441
Ixiasoft
2.5.8.2. Debugging the Arm* HPS Linux Kernel
Refer to the following steps to debug the Arm* HPS Linux Kernel:
- Boot Linux* on the Agilex™ development board using a Linux kernel ready for debugging.
- Go to File > Import > C/C++ Executable then click Next.
Figure 75. Selecting Import Wizard
- In the Import Executable window, click Browse… and select the vmlinux executable location on your computer. Click Next.
Figure 76. Importing C/C++ Executable Files
- Use Linux Kernel Debug for New project name. Select Ashling Heterogeneous Multicore Hardware Debug for Create a Launch Configuration, then click Finish.
Figure 77. Choosing Project
- The Debug Configurations window appears. Use the Auto-detect Scan Chain button, if you need to populate the device list in the Device tab in the launch configuration. Perform and repeat the following steps for all four Cortex-A53 cores.
Figure 78. Creating, Managing, and Running Configuration
- For the Linux debug session, check all the cores that Linux is running on as shown below.
Figure 79. Linux CoresNote: Altera recommends you specify a proper memory access attributes to avoid unwanted or illegal memory access during the debug session. For example, the memory access region configured for Agilex™ platform is:
set remotetimeout 10 set mem inaccessible-by-default on mem 0xffff000000000000 0xffff0003ffffffff rw mem 0xffff800000000000 0xffff802effffffff rw
Ensure you select the default path and then select aarch64-none-linux-gnu-gdb as the GDB Executable name. - Click Target Application tab. Click Add. The Browse Executable window appears. For Project, click Browse... and select the current project. For C/C++ Application, click Browse... and select vmlinux as the executable. Click OK.
Figure 80. Browse Executable Window
- After adding the executable, ensure you turn off Load image as the image is already loaded to the target.
Figure 81. Target Application Tab
- Click the Startup tab. Ensure the configuration is as shown below.
Figure 82. Startup Tab
- Go to OS Awareness tab. Turn on the OS Aware Debugging checkbox and select appropriate Linux kernel version.
Figure 83. OS Awareness Tab
- For the Linux debug session, check all the cores that Linux is running on as shown below.
- After you complete the configurations for all of the Cortex-A53 cores, click Apply then click Debug. The debugger connects to the Linux running on the board, then it stops the cores, and display the current code, as shown below.
Figure 84. idle.c tab
- Go to Linux > Processes > List Running Processes, and then the debugger shows the processes.
Figure 85. Linux Process
- Right-click a process in the list, then select the Watch option. The debugger opens the process in the Watch window. You can now inspect its properties.
Figure 86. Inspecting the Process Properties
The following figure shows an example of the Linux process properties.
Figure 87. Process Properties - Go to Linux > Modules > List Loaded Modules to show the list of modules. In the example below only one module was loaded:
Figure 88. Linux Modules
- Right-click a module in the list, then select the Watch option. You can inspect the module properties as shown in the figure below:
Figure 89. Module Properties