Kernels are declared as C/C++ functions that return void and can use special data types for arguments which are discussed in Data Accessing Mechanisms. The kernels should be defined each in their own source file. This organization is recommended for reusability and faster compilation. Furthermore, the kernel source files should include all relevant header files to allow for independent compilation.
The topics in this section introduce some basics of AI Engine programming which are necessary to understand the Vitis Model Composer AI Engine design flow. Refer to AI Engine Tools and Flows User Guide (UG1076) for a high-level overview of the kernel and AI Engine programming models. Some insight is also provided on data access APIs to help you understand the configuration parameters of the AI Engine kernel blocks available in the library.