This language is a superset of the Java programming language, with a few extensions which are more suitable for an easier creation of the data-flow programs. The manager and the kernels are written in a domain-specific language called MaxJ. The manager also constructs the interfaces with which the CPU code interacts with the DFE. It establishes connections between the kernels and the LMem as well as interconnects the kernels. The manager is the component that connects the data streams from the CPU to the recipient kernels and vice versa. It has a set of input streams and a set of output streams attached. Set of kernels:Įach kernel implements a certain functionality and is roughly an equivalent of a function abstraction. Typically written in the C programming language, the CPU code controls the execution and uses the DFE as a processing unit by calling suitable functions exposed by the Maxeler compiler.