Skip to content

Commit a6b9e6e

Browse files
authored
FPGA: New sample platform_designer_standard (#2480)
An Intel® FPGA tutorial demonstrating how to export a reusable IP component to Intel® Quartus® Prime Standard and Platform Designer targeting Cyclone® V SoC FPGAs. Features include: Updated script for building the Quartus system for Quartus® Prime Standard. Updated script for board testing, including System Console initialization and establishing a connection to the host. Revised tutorial steps, tailored for Quartus Prime Standard Edition, with updated screenshots. This code sample is tested on a DE1-SoC board using Quartus Prime Standard 23.1std.
1 parent 7bb3748 commit a6b9e6e

30 files changed

+1981
-12
lines changed

DirectProgramming/C++SYCL_FPGA/README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ flowchart LR
5757
| [fast_recompile](Tutorials/GettingStarted/fast_recompile) | [Tutorials/GettingStarted](Tutorials/GettingStarted) | Why to separate host and device code compilation in your FPGA project <br> How to use the `-reuse-exe` and device link. <br> Which method to choose for your project
5858
| [fpga_template](Tutorials/GettingStarted/fpga_template) | [Tutorials/GettingStarted](Tutorials/GettingStarted) | An Intel® FPGA tutorial that explains the CMake build system that is used in other code samples, and serves as a template that you can re-use in your own designs
5959
[component_interfaces_comparison](Tutorials/Features/hls_flow_interfaces/component_interfaces_comparison) | [Tutorials/Features/hls_flow_interfaces](Tutorials/Features/hls_flow_interfaces) | This sample introduces different invocation/data interfaces that can be used for IP components
60+
| [platform_designer](Tutorials/Tools/platform_designer) | [Tutorials/Tools](Tutorials/Tools) | How to use FPGA IP produced with the Intel® oneAPI DPC++/C++ Compiler with Intel® Quartus® Prime Pro Edition software suite and Platform Designer
61+
| [platform_designer_standard](Tutorials/Tools/platform_designer_standard) | [Tutorials/Tools](Tutorials/Tools) | How to use FPGA IP produced with the Intel® oneAPI DPC++/C++ Compiler with Intel® Quartus® Prime Standard Edition software suite and Platform Designer
6062

6163
#### Tier 2: Explore the Fundamentals
6264

@@ -139,7 +141,6 @@ flowchart LR
139141
| [optimization_targets](Tutorials/Features/optimization_targets) | [Tutorials/Features](Tutorials/Features) | How to set optimization targets for your compile</br>How to use the minimum latency optimization target to compile low-latency designs<br>How to manually override underlying controls set by the minimum latency optimization target
140142
| [optimize_inner_loop](Tutorials/DesignPatterns/optimize_inner_loop) | [Tutorials/DesignPatterns](Tutorials/DesignPatterns) | How to optimize the throughput of an inner loop with a low trip
141143
| [pipe_array](Tutorials/DesignPatterns/pipe_array) | [Tutorials/DesignPatterns](Tutorials/DesignPatterns) | A design pattern to generate an array of pipes using SYCL* <br> Static loop unrolling through template metaprogramming
142-
| [platform_designer](Tutorials/Tools/platform_designer) | [Tutorials/Tools](Tutorials/Tools) | How to use FPGA IP produced with the Intel® oneAPI DPC++/C++ Compiler with Intel® Quartus® Prime Pro Edition software suite and Platform Designer
143144
| [private_copies](Tutorials/Features/private_copies) | [Tutorials/Features](Tutorials/Features) | The basic usage of the `private_copies` attribute <br> How the `private_copies` attribute affects the throughput and resource use of your FPGA program <br> How to apply the `private_copies` attribute to variables or arrays in your program <br> How to identify the correct `private_copies` factor for your program
144145
| [read_only_cache](Tutorials/Features/read_only_cache) | [Tutorials/Features](Tutorials/Features) | How and when to use the read-only cache feature
145146
| [restartable_streaming_kernel](Tutorials/DesignPatterns/restartable_streaming_kernel) | [Tutorials/DesignPatterns](Tutorials/DesignPatterns) | How to make a restartable kernel. The technique shown in this tutorial lets you dynamically terminate your kernel while it runs, allowing it to load a new set of kernel arguments.

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

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
11
# `Platform Designer` Sample
22

3-
This example design shows how to use an FPGA IP produced with the Intel® oneAPI DPC++/C++ Compiler with the Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) software suite.
3+
This example design shows how to use an FPGA IP produced with the Intel® oneAPI DPC++/C++ Compiler with the Intel® Quartus® Prime Pro Edition software suite. Please refer to [Platform Designer Standard](../platform_designer_standard/) code sample when targeting a Cyclone® V SoC Board.
44

55
| Optimized for | Description
66
|:--- |:---
77
| OS | Ubuntu* 20.04 <br> RHEL*/CentOS* 8 <br> SUSE* 15 <br> Windows* 10, 11 <br> Windows Server* 2019
8-
| Hardware | This process applies to any Intel® FPGA that is supported by the DPC++/C++ compiler, but the sample Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) project targets the [Intel® Arria® 10 SX SoC Development Kit](https://www.intel.com/content/www/us/en/products/details/fpga/development-kits/arria/10-sx.html)
9-
| Software | Intel® oneAPI DPC++/C++ Compiler <br> Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) Version 22.3 or later
10-
| What you will learn | How to integrate an RTL IP generated from a SYCL kernel with an Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) project
8+
| Hardware | This process applies to any Intel® FPGA that is supported by the DPC++/C++ compiler, but the sample Intel® Quartus® Prime Pro Edition project targets the [Intel® Arria® 10 SX SoC Development Kit](https://www.intel.com/content/www/us/en/products/details/fpga/development-kits/arria/10-sx.html)
9+
| Software | Intel® oneAPI DPC++/C++ Compiler <br> Intel® Quartus® Prime Pro Edition Version 22.3 or later
10+
| What you will learn | How to integrate an RTL IP generated from a SYCL kernel with an Intel® Quartus® Prime Pro Edition project
1111
| Time to complete | 1 hour
1212

1313
> **Note**: Even though the Intel DPC++/C++ oneAPI compiler is enough to compile for emulation, generating reports and generating RTL, there are extra software requirements for the simulation flow and FPGA compiles.
1414
>
15-
> To use the simulator flow, Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) and one of the following simulators must be installed and accessible through your PATH:
15+
> To use the simulator flow, Intel® Quartus® Prime Pro Edition and one of the following simulators must be installed and accessible through your PATH:
1616
> - Questa*-Intel® FPGA Edition
1717
> - Questa*-Intel® FPGA Starter Edition
1818
> - Questa* Advanced Simulator
1919
> - ModelSim® SE
2020
>
21-
> To use the hardware compile flow, Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) must be installed and accessible through your PATH.
21+
> To use the hardware compile flow, Intel® Quartus® Prime Pro Edition must be installed and accessible through your PATH.
2222
2323
## Prerequisites
2424

@@ -118,7 +118,7 @@ Follow these steps to compile and test the design:
118118
> cd ..
119119
```
120120

121-
2. **From the same terminal**, prepare a project directory called `add_quartus` for the Intel® Quartus® Prime project and copy the source files `add.sv` and `jtag.sdc` from the `starting_files` directory into it. Then launch the Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) GUI, and create a new Intel® Quartus® Prime project using the 'New Project' wizard.
121+
2. **From the same terminal**, prepare a project directory called `add_quartus` for the Intel® Quartus® Prime project and copy the source files `add.sv` and `jtag.sdc` from the `starting_files` directory into it. Then launch the Intel® Quartus® Prime Pro Edition GUI, and create a new Intel® Quartus® Prime project using the 'New Project' wizard.
122122

123123
> **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.
124124
@@ -300,10 +300,10 @@ You may also build the SOF using the pre-generated Intel® Qupartus® Prime proj
300300
### Additional Documentation
301301
- [Intel® Arria® 10 SoC Golden System Reference Design](https://rocketboards.org/foswiki/Documentation/Arria10SoCGSRD) describes a reference design you can use with your Intel® Arria® 10 SX SoC Developer kit.
302302
- [Intel® Arria® 10 SX SoC Development Kit](https://www.intel.com/content/www/us/en/products/details/fpga/development-kits/arria/10-sx.html) describes the Intel® Arria® 10 SX SoC Development kit in greater detail.
303-
- [Intel® FPGA Software Installation and Licensing](https://www.intel.com/content/www/us/en/docs/programmable/683472/current/) describes how to license Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) software.
304-
- [Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) User Guide: Getting Started](https://www.intel.com/content/www/us/en/docs/programmable/683463/current/) introduces you to the Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) software.
305-
- [Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) User Guide: Platform Designer](https://www.intel.com/content/www/us/en/docs/programmable/683609/current/) describes the Intel® Platform Designer software.
306-
- [Intel® Quartus® Prime Pro Edition (or Standard Edition when targeting Cyclone® V) User Guide: Programmer](https://www.intel.com/content/www/us/en/docs/programmable/683039/current/) describes the Intel® Quartus® Prime Pro Programmer software.
303+
- [Intel® FPGA Software Installation and Licensing](https://www.intel.com/content/www/us/en/docs/programmable/683472/current/) describes how to license Intel® Quartus® Prime Pro Edition software.
304+
- [Intel® Quartus® Prime Pro Edition User Guide: Getting Started](https://www.intel.com/content/www/us/en/docs/programmable/683463/current/) introduces you to the Intel® Quartus® Prime Pro Edition software.
305+
- [Intel® Quartus® Prime Pro Edition User Guide: Platform Designer](https://www.intel.com/content/www/us/en/docs/programmable/683609/current/) describes the Intel® Platform Designer software.
306+
- [Intel® Quartus® Prime Pro Edition User Guide: Programmer](https://www.intel.com/content/www/us/en/docs/programmable/683039/current/) describes the Intel® Quartus® Prime Pro Programmer software.
307307

308308
## Running the Sample
309309

0 commit comments

Comments
 (0)