Data driven kernels are present in the device and enabled automatically after
downloading but are not directly managed by the software application, instead
triggered by the arrival of data at the interface. The kernels must have at least
one AXI4-Stream interface. The kernel
synchronizes with the rest of the system through these streaming interfaces. These
kernels can have scalar inputs and outputs connected through the AXI4-Lite interface. You can read or write to the
kernels by native XRT register read and write APIs (xrt::ip::read_register, xrt::ip::write_register).
Data driven kernels do not require a software API, as the host application is not required to interact directly with the kernel. The kernel can be developed as either an RTL IP or synthesized from C/C++ source code by HLS compiler.
When compiled by HLS compiler, the data driven kernels are specified
with ap_ctrl_none interface protocol. Refer to
Vitis High-Level Synthesis User Guide (UG1399) for protocol usage.