Skip to content

Commit cbd449c

Browse files
ryanvergelGitHub Enterprise
authored andcommitted
TDL: Edits for Embedded Software
1 parent bce128d commit cbd449c

File tree

7 files changed

+207
-152
lines changed

7 files changed

+207
-152
lines changed

Embedded_Software/Feature_Tutorials/01-user_managed_mode/README.md

Lines changed: 33 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -6,54 +6,54 @@
66
</tr>
77
</table>
88

9-
***Version: Vitis 2023.2***
9+
# User Managed Mode in Vitis Unified Embedded IDE
1010

11-
## User Managed Mode in Vitis Unified IDE
11+
***Version: Vitis 2023.2***
1212

13-
This is a new feature with the Vitis Unified Embedded IDE, where users can add a makefile and argument that can be used to create custom builds. This allows the user more control over their project builds instead of letting the tools generate the components.
13+
This is a new feature with the Vitis Unified Embedded IDE, where users can add a makefile and argument that can be used to create custom builds. This allows the user more control over their project builds instead of letting the tools generate the components.
1414

15-
The big advantages of user managed mode are
15+
The biggest advantages of user managed mode are being able to do the following:
1616

17-
1. Allowing user to quickly rebuild a Vitis Unified Workspace in the GUI
18-
2. Allowing user to quickly call makefile actions
17+
1. Quickly rebuild a Vitis Unified Workspace in the GUI.
18+
2. Quickly call makefile actions.
1919

20-
In this tutorial, we shall discuss three use cases on how the **User Managed Mode** can be used
20+
This tutorial describes three use cases for the **User Managed Mode**.
2121

22-
# Use Case 1 - Regenerate a previously created Vitis Unified Workspace using a Python Script
22+
## Use Case 1 - Regenerate a previously created Vitis Unified Workspace using a Python Script
2323

24-
## Lets get started
24+
### Let’s get started
2525

26-
Launch Vitis 2023.2 and select open_workspace and navigate to the <i>Vitis-Tutorials/Embedded_Software/Feature_Tutorials/01-user_managed_mode</i> directory
26+
Launch Vitis 2023.2, select **open_workspace**, and navigate to the `Vitis-Tutorials/Embedded_Software/Feature_Tutorials/01-user_managed_mode` directory
2727

2828
Select the User Managed Mode
2929

3030
![](./images/user_managed_mode.PNG)
3131

32-
## Generating Build Configuration
32+
### Generating Build Configuration
3333

34-
In this use case, we shall be using the Python script introduced in the <i>04-vitis_scripting_flows</i> to build a workspace and with a simple Hello World application template. However, users can also utilize the Python script **logs/builder.py** that gets generated for every Vitis Unified IDE workspace.
34+
In this use case, we shall be using the Python script introduced in the *04-vitis_scripting_flows* to build a workspace and with a simple Hello World application template. However, users can also utilize the Python script `logs/builder.py` that gets generated for every Vitis Unified IDE workspace.
3535

36-
Right click in the **Explorer** view, and select **Edit Build Configurations** and **New Build Configurations** and set as shown below:
36+
Right click in the **Explorer** view, right-click and select **Edit Build Configurations** and **New Build Configurations** and set as shown below:
3737

3838
![](./images/ws_build_config.PNG)
3939

40-
## Running a Build Configuration
40+
### Running a Build Configuration
4141

42-
To launch the build configuration, right click on the **Explorer** view, and select **Build**.
42+
To launch the build configuration, right click on the **Explorer** view, and then select **Build**.
4343

44-
**Note:** If there is only a single build configuration, then this will launch automatically. If there are more than one build configurations, then the user will be presented with a list to choose from.
44+
**Note:** If there is only a single build configuration, then this will launch automatically. If there is more than one build configuration, a list is shown that you can choose from.
4545

4646
This will generate the Vitis Unified IDE workspace based on the XSA.
4747

48-
## Deploying the application on the target
48+
### Deploying the application on the target
4949

5050
Next, we can create a **Launch Configuration** to test the application created above on our hardware target.
5151

5252
Right click in the **Explorer** view, and select **Edit Launch Configurations** and **New Launch Configurations** and select **Baremetal** and browse to your XSA file used to create the workspace above.
5353

5454
![](./images/create_launch_config.PNG)
5555

56-
Here, we can add the FSBL (as this is for a Zynq Ultrascale Device)
56+
Here, we can add the FSBL (as this is for a Zynq UltraScale Device)
5757

5858
![](./images/launch_config.PNG)
5959

@@ -65,15 +65,15 @@ Once the launch configuration is complete, users can select the **debug** icon t
6565

6666
![](./images/debug.PNG)
6767

68-
The Debug view will be launched and users can debug as normal
68+
The Debug view will be launched, and users can debug as normal
6969

7070
![](./images/debug_view.PNG)
7171

72-
# Use Case 2 - Running Platform Creation tutorials
72+
## Use Case 2 - Running Platform Creation tutorials
7373

7474
In this use case, we can build the example given here [here](https://github.com/Xilinx/Vitis-Tutorials/tree/2023.2/Vitis_Platform_Creation/Design_Tutorials). In particular, we will build the **Edge-AI-ZCU104** Platform.
7575

76-
## Lets get started
76+
### Lets get started
7777

7878
Launch Vitis 2023.2 and select open_workspace and navigate to the <i>Vitis-Tutorials/Vitis_Embedded_Flows/Embedded_Flows/Next_Steps_Embedded/User_Managed_Mode</i> directory
7979

@@ -83,17 +83,17 @@ Select the User Managed Mode
8383

8484
![](./images/user_managed_mode.PNG)
8585

86-
## Generating Build Configuration
86+
### Generating Build Configuration
8787

8888
In this use case, copy the **Makefile**, **export_xsa.tcl** and the **system_step1.tcl** from The Git repository above into the workspace.
8989

9090
Right click in the **Explorer** view, and select **Edit Build Configurations** and **New Build Configurations** and set as shown below:
9191

9292
![](./images/zcu104.PNG)
9393

94-
## Running a Build Configuration
94+
### Running a Build Configuration
9595

96-
To launch the build configuration, right click on the **Explorer** view, and select **Build**.
96+
To launch the build configuration, right click on the **Explorer** view and select **Build**.
9797

9898
**Note:** If there is only a single build configuration, then this will launch automatically. If there are more than one build configurations, then the user will be presented with a list to choose from.
9999

@@ -102,7 +102,7 @@ This will generate the XSA into the **Build** folder.
102102
Users can target these newly generated XSA filed in Vitis Unified IDE. Users can switch views **View****Vitis Components**, and target the platform for their development.
103103

104104

105-
# Use Case 3 - Generate and deploy u-boot from Git sources
105+
## Use Case 3 - Generate and deploy u-boot from Git sources
106106

107107
In this demo I have a simple makefile to generate and deploy u-boot using the metadata extracted from the XSA file. The script will do the following
108108

@@ -114,9 +114,9 @@ In this demo I have a simple makefile to generate and deploy u-boot using the me
114114
* Compile U-boot
115115
* Generate JTAG boot script
116116

117-
Each section above can be built independantly. For example, if users want to make a change to the device-tree, then only the DT needs to be compiled and re-deployed on the board. This allows the users to speed up any u-boot debug or testing.
117+
Each section above can be built independently. For example, if users want to make a change to the device-tree, then only the DT needs to be compiled and re-deployed on the board. This allows the users to speed up any u-boot debug or testing.
118118

119-
## Lets get started
119+
### Lets get started
120120

121121
Launch Vitis 2023.2 and select open_workspace and navigate to the <i>Vitis-Tutorials/Vitis_Embedded_Flows/Embedded_Flows/Next_Steps_Embedded/User_Managed_Mode</i> directory
122122

@@ -127,7 +127,7 @@ Select the User Managed Mode
127127
![](./images/user_managed_mode.PNG)
128128

129129

130-
## Creating a Build Configuration
130+
### Creating a Build Configuration
131131

132132
If users want to create a Build Configuration, then right click in Explorer view -> Edit Build Configurations, and select the + icon. Users will be presented with an empty Build Configuration. For example, if we wanted to created a build configuration to run the boot script in XSCT
133133

@@ -141,24 +141,24 @@ Create the build configuration as follows
141141
![](./images/jtag_boot_build_config.PNG)
142142

143143

144-
## Running a Build Configuration
144+
### Running a Build Configuration
145145

146146
To run a build configuration, right click in Explorer View and select <i>Build</i> and select your build configuration from the list
147147

148148
![](./images/build_configs.PNG)
149149

150-
## Running a Clean Configuration
150+
### Running a Clean Configuration
151151

152152
Similarly, to run a clean configuration, right click in Explorer View and select <i>Clean</i> and select your Clean configuration from the list
153153

154154

155-
# Sharing Build Configurations.
155+
## Sharing Build Configurations.
156156

157157
If users are using Git to maintain their work, then users may want to maintain or share the build configurations. This metadata is stored in the **_ide/.theia/build.json** file
158158

159-
# Summary
159+
## Summary
160160

161-
The examples above should act as an introduction to how to utilise the User Managed Mode for different design flows. However, Wether the users preference is to use the GUI or Command Line to build and maintain their Embedded System, they can still avail of all the debug features within Vitis Unified IDE with ease.
161+
The examples above should act as an introduction to how to utilize the User Managed Mode for different design flows. However, whether the users preference is to use the GUI or Command Line to build and maintain their Embedded System, they can still avail of all the debug features within Vitis Unified IDE with ease.
162162

163163
<p class="sphinxhide" align="center"><sub>Copyright © 2020–2024 Advanced Micro Devices, Inc</sub></p>
164164

Lines changed: 17 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,36 @@
1-
# UG1515: Vitis Embedded Software Debugging Guide
1+
<table class="sphinxhide" width="100%">
2+
<tr width="100%">
3+
<td align="center"><img src="https://raw.githubusercontent.com/Xilinx/Image-Collateral/main/xilinx-logo.png" width="30%"/><h1>Vitis™ Embedded Software Tutorials</h1>
4+
<a href="https://www.xilinx.com/products/design-tools/vitis.html">See Vitis™ Development Environment on xilinx.com</a> </td>
5+
</tr>
6+
</table>
7+
8+
# Vitis Embedded Software Debugging Guide (UG1515)
29

310
***Version: Vitis 2023.2***
411

5-
## Debugging Bare-Metal Applications
12+
## [Debugging Bare-Metal Applications](./1-debugging-bare-metal-applications/)
613

714
This section showcases the different debugging features available in the AMD Vitis™ Embedded software development flow for bare-metal applications. Using an example application project with intentional bugs, the debug guide goes through each issue and leverages the different windows and features available in the application debug session to highlight the potential usage of debug features in a real world scenario.
815

9-
## Debugging Linux Applications
16+
## [Debugging Linux Applications](./2-debugging-linux-applications/)
1017

1118
The Vitis IDE provides a familiar environment for debugging Linux applications for a target platform. This section covers the following Linux application debug features:
1219

1320
- Setting breakpoints
1421
- Stepping through program execution
15-
- Viewing program variables, memory contents, and the stack
22+
- Viewing program variables, memory contents, and the stack
1623

17-
## Creating a Debuggable First Stage Boot Loader
24+
## [Creating a Debuggable First Stage Boot Loader](./3-debuggable-fsbl/)
1825

1926
First Stage Boot Loader (FSBL) can initialize the SoC device, load the required application or data to memory, and launch applications on the target CPU core. FSBL is optimized for size because it needs to fit into OCM, which has limited space on the device. Size based optimization introduces some trouble if you wish to debug FSBL when you add customized code into FSBL. This chapter explains how you can use Vitis Unified IDE to debug FSBL step by step.
2027

21-
## Cross Triggering in Vitis Unified Embedded IDE
28+
## [Cross Triggering in Vitis Unified Embedded IDE](./4-cross-triggering/)
2229

2330
Embedded systems can be complex, that may contain multiple processors. You may also need to debug across software and hardware domains and can use PS-PL cross triggering. However, in this simple tutorial, we learn how to debug over multiple processors using cross triggering.
2431

25-
<p class="sphinxhide" align="center"><sub>Copyright (C) 2020-2024, Advanced Micro Devices, Inc. All rights reserved. SPDX-License-Identifier: X11</sub></p>
32+
</hr class="sphinxhide">
33+
34+
<p class="sphinxhide" align="center"><sub>Copyright © 2020–2024 Advanced Micro Devices, Inc</sub></p>
2635

27-
<p class="sphinxhide" align="center"><sup><a href="https://www.amd.com/en/corporate/copyright">Terms and Conditions</a></sup></p>
36+
<p class="sphinxhide" align="center"><sup><a href="https://www.amd.com/en/corporate/copyright">Terms and Conditions</a></sup></p>

Embedded_Software/Feature_Tutorials/03-vitis_classic_to_unified_migration/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77

88
***Version: Vitis 2023.2***
99

10-
# Migrating from classic Vitis IDE to Vitis Unified IDE
10+
# Vitis Classic to Unified Project Migration
1111

1212
The methodology to pass the metadata from hardware from Vivado to Vitis IDE has changed. However, these changes will not affect the users as the AMD baremetal drivers, standalone bsp and libraries have been fully ported to this new methodology.
1313

0 commit comments

Comments
 (0)