Today’s aircrafts, space vehicles and other flying equipment contain more and more connected heterogeneous (multi-core) processing units. These can be any cluster or configuration of embedded controllers, processors, FPGA devices and (embedded) PCs. The combination of this many different processing units often comes together in a highly complex infrastructure involving various interfaces and data links due to the lack of a common protocol. In addition to major effort, the integration of distributed processes come with challenges concerning synchronization, performance, testing and reliability. Proving overall system integrity is a complex and time consuming activity.
Topic Products took up the challenge to get the best out of distributed processes covering various connected embedded systems and eliminating the hurdles by creating Dyplo®.
Topics Dyplo is a DYnamic Process LOader which implements an abstraction layer to act as a common interface to supports dynamic task distribution and control over a heterogeneous embedded platform. Dyplo connects individual processes via a programmable transport media and data queues. This can be e.g. on-chip AXI4 bus interfaces or off-chip connections such as PCI-Express or Ethernet allowing for distributed processing networks.
Dyplo enables on-the-fly volatility of processes and/or tasks over different processing units via these interfaces and handles all the queueing and process synchronization. This way the programmer can decide on compile-time and at run-time which tasks or processes are executed where: on the processor or on the FPGA fabric. On the FPGA many execution workspaces can be created using the unique integrated support of partial reconfiguration.
Dyplo® on Zynq® running Linux
The ecosystem is rapidly growing in order to provide more and more ways to accelerate development in a variety of solutions.
Dyplo® on softcore running Linux interacting with an FPGA
Dyplo® on PC using PCIe to interact with the Zynq® and/or an FPGA
Dyplo® enables you to get the maximum out of your platform of choice, achieving the most flexible and best possible technical solution for your application.