Skip to content

Commit 771382a

Browse files
authored
FPGA: Add platform designer tutorial: Readme clarification (#1400)
1 parent 7d72bb1 commit 771382a

File tree

7 files changed

+27
-11
lines changed

7 files changed

+27
-11
lines changed

DirectProgramming/C++SYCL_FPGA/Tutorials/Tools/experimental/platform_designer/README.md

Lines changed: 27 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ This example is intended for users interested in creating standalone modules tha
5555

5656
### Board-specific Considerations
5757

58-
This design is intended to work with the Intel® Arria® 10 SX SoC Development Kit. The board-specific configurations that you should specify in Intel® Quartus® Prime are as follows:
58+
This design is intended to work with the Intel® Arria® 10 SX SoC Development Kit. These board-specific configurations are not guaranteed to work with different boards:
5959
1. Choose `10AS066N3F40E2SG` device to match the devkit
6060
2. Choose pin `PIN_AM10` to drive the `i_clk` signal
6161
3. Choose pin `PIN_AR23` to drive the `fpga_led` signal
@@ -102,7 +102,7 @@ Follow these steps to compile and test the design:
102102
> nmake fpga_ip_export
103103
```
104104

105-
2. **From the same terminal**, launch the Intel® Quartus® Prime Pro Edition GUI, and create a new Intel® Quartus® Prime project using the 'New Project' wizard.
105+
2. **From the same terminal**, prepare a project directory for the Intel® Quartus® Prime project and copy the source files `add.sv` and `jtag.sdc` from the `add-quartus-sln` into it. Then launch the Intel® Quartus® Prime Pro Edition GUI, and create a new Intel® Quartus® Prime project using the 'New Project' wizard.
106106

107107
> **Note**: You may confirm your Intel® Quartus® Prime project settings by comparing with the sample Intel® Quartus® Prime project included in the `add-quartus-sln` directory.
108108
@@ -111,6 +111,8 @@ Follow these steps to compile and test the design:
111111
```
112112
$> cd ../../
113113
$> mkdir add-quartus
114+
$> cp add-quartus/add.sv add-quartus
115+
$> cp add-quartus/jtag.sdc add-quartus
114116
$> cd add-quartus
115117
$> quartus
116118
```
@@ -120,11 +122,13 @@ Follow these steps to compile and test the design:
120122
```
121123
> cd ..\..\
122124
> mkdir add-quartus
125+
> xcopy add-quartus\add.sv add-quartus
126+
> xcopy add-quartus\jtag.sdc add-quartus
123127
> cd add-quartus
124128
> quartus.exe
125129
```
126130

127-
1. Set the project directory to be the `add-quartus` directory of this code sample.
131+
1. Set the project directory to be the `add-quartus` directory.
128132

129133
2. Set the top-level entity to be `add` to make project management easier.
130134

@@ -140,7 +144,7 @@ Follow these steps to compile and test the design:
140144

141145
3. Copy the generated IP to the Intel Quartus® Prime project. This design uses host pipes, which generates additional internal SYCL kernels. The `fpga_ip_export` build target uses the `-fsycl-device-code-split=per_kernel` flag to separate these additional kernels from your kernel, but these kernels have their own reports and associated RTL. You must locate the the `.prj_X` directory that contains the IP you want to use in your design.
142146

143-
You can identify the correct `.prj_X` folder by looking for the folder that contains `*_di_inst.v` file where the interfaces match your kernel. For example, in this project, `add_xample.fpga_ip.prj_1` is the correct `.prj_x` directory, because `add_example_fpga_ip_1_di_inst.v` contains only a CSR Agent interface in addition to the clock/reset signals:
147+
You can identify the correct `.prj_X` folder by looking for the folder that contains `*_di_inst.v` file where the interfaces match your kernel. For example, in this project, `add.fpga_ip_export.prj_1` is the correct `.prj_x` directory, because `add_fpga_ip_export_1_di_inst.v` contains only a CSR Agent interface in addition to the clock/reset signals:
144148

145149
```verilog
146150
add_fpga_ip_export_1_di add_fpga_ip_export_1_di_inst (
@@ -184,21 +188,29 @@ Follow these steps to compile and test the design:
184188

185189
![](assets/open-platform-designer-button.png)
186190

187-
Create a new system by clicking the 'New Platform Designer System' button (![](assets/new-platform-designer-system-button.png)) and name it `add_kernel_wrapper.qsys`.
191+
2. Create a new system by clicking the 'New Platform Designer System' button (![](assets/new-platform-designer-system-button.png)) and name it `add_kernel_wrapper.qsys`.
188192

189-
Configure the `Reset Bridge` IP as shown:
193+
3. Disconnect the clock from the `Reset Bridge` IP:
194+
195+
![](assets/disconnect-clock_mouse.png)
196+
197+
4. Configure the `Reset Bridge` IP as shown:
190198

191199
![](assets/reset-bridge.png)
192200

193-
2. Add the following IP to your system:
201+
5. Add the following IP to your system:
194202

195203
* Basic Functions > Bridges and Adaptors > Memory Mapped > **JTAG to Avalon Master Bridge Intel® FPGA IP**
196204

197205
* oneAPI > **add_fpga_ip_export_1_di**
198206

199207
![](assets/add-ip-platform-designer.png)
200208

201-
3. Connect the modules as shown:
209+
> **Note**: If you cannot see the oneAPI IP component, refresh Platform Designer by clicking `File` > `Refresh System`
210+
>
211+
> ![](assets/refresh-system.png)
212+
213+
6. Connect the modules as shown:
202214

203215
![](assets/complete-system_platform-designer.png)
204216

@@ -208,13 +220,13 @@ Follow these steps to compile and test the design:
208220
>
209221
> ![](assets/fix-reset_n-platform-designer.png)
210222
211-
4. Save the system by clicking `File` > `Save`
223+
7. Save the system by clicking `File` > `Save`
212224

213-
5. Generate the system so that it can be included in the Intel® Quartus® Prime project by clicking `Generate HDL...`
225+
8. Generate the system so that it can be included in the Intel® Quartus® Prime project by clicking `Generate HDL...`
214226

215227
![](assets/generate-hdl.png)
216228

217-
6. Close Platform Designer.
229+
9. Close Platform Designer.
218230

219231
6. In the Intel® Quartus® Prime window, run Analysis and Elaboration by clicking 'Start Analysis and Elaboration'.
220232

@@ -234,6 +246,10 @@ Follow these steps to compile and test the design:
234246

235247
![](assets/pins-from-design.png)
236248

249+
> **Note**: If you cannot see the pin details, click the `All Pins` button in the bottom left corner of the Pin Planner GUI.
250+
>
251+
> ![](assets/all-pins.png)
252+
237253
8. Add the timing constraints.
238254

239255
1. If you are using the Intel® Arria® 10 SX SoC Dev Kit, you can find a timing constraints file for the JTAG interface (jtag.sdc) in the GHRD. This file was added during project creation.

0 commit comments

Comments
 (0)