- Creating your component and testbench.
You can write a complete C++ application that contains both your component code and your testbench code.
For details, see Creating a High-Level Synthesis Component and Testbench .
- Verify the functionality of your component algorithm and
testbench.
Verify the functionality by compiling your design to an x86-64 executable and running the executable. For details, see Verifying the Functionality of Your Design .
- Optimize and refine the FPGA performance of your component.
Optimize the FPGA performance of your component by compiling your design to an FPGA target and reviewing the high-level design report to see where you can optimize your component. This step generates RTL code for your component. For details, see Optimizing and Refining Your Component .
After initial optimizations, you can see where to further refine your component by simulating it. For details, see Verifying Your IP with Simulation .
- Synthesize your component with
Quartus® Prime.
For details, see Synthesize your Component IP with Quartus Prime Pro Edition .
Synthesizing your component generates accurate quality-of-results (QoR) metrics like FPGA area utilization and fMAX.
- Integrate your IP into a system with
Quartus® Prime or Platform Designer (formerly Qsys).
For details, see Integrating your IP into a System.
For an example of the Intel® HLS Compiler design flow, watch the HLS Walkthrough series at the Intel FPGA channel on YouTube or complete the full-design tutorial found in <quartus_installdir>/hls/examples/tutorials/usability.