The courses are categorized into levels to help you select the best course that aligns with your existing knowledge and your training goals.
The training material is broken up into three levels of depths, which are explained below:
100 level courses are introductory courses that offer a high-level overview on a topic.
200 level courses expect a basic understandings of material covered in the 100 level courses and provides the next level of instruction.
300 level courses are more technically advanced and/or are specific to an area of expertise.
Software Developer for Host Applications
This curriculum is designed for software developers writing applications for different vertical markets that run on a CPU. Very little to no knowledge of hardware is required. You likely want to take advantage of the FPGA as an accelerator. You typically build host applications in high level languages like Python and Java, but are familiar with C/C++ and leverage optimized libraries for functions that have already been tuned for the hardware.
This curriculum is designed for software developers that are architecting software applications for heterogenous systems that run on a CPU host, but also offload specific functions to hardware accelerators using a common programming language, such as OpenCL™. These programmers not only write application code, but also tune and optimize the acceleration functions for the different accelerator platforms such as FPGAs.
This curriculum is designed for people who are lower level software developers that are comfortable coding in C or C++ and are much more familiar with details of the hardware and memory management. These programmers are typically tuning and optimizing compute intensive function libraries for specific hardware platforms.
Traditional FPGA developers code in languages such as Verilog HDL and VHDL. These developers are comfortable with creating FPGAs using the Intel Quartus Prime software, closing timing on complicated hardware circuits and managing complicated I/O interfaces to the FPGA.
Intel® FPGA offers full semester educational materials that include tutorials, laboratory exercises, intellectual property (IP) cores, computer systems examples, and software. They are used in university FPGA centric courses on digital logic, computer organization, embedded systems, and machine learning.