Enabling Shared Memory Communication in Networks of MPSoCs

Research output: Contribution to journalArticlepeer-review

  • External authors:
  • Joshua Lant
  • Caroline Concatto
  • Andrew Attwood
  • Jose Pascual Saiz
  • Mike Ashworth
  • Javier Navaridas
  • Mikel Luján


Ongoing transistor scaling and the growing complexity of embedded system designs has led to the rise of MPSoCs (Multi‐Processor System‐on‐Chip), combining multiple hard‐core CPUs and accelerators (FPGA, GPU) on the same physical die. These devices are of great interest to the supercomputing community, who are increasingly reliant on heterogeneity to achieve power and performance goals in these closing stages of the race to exascale. In this paper, we present a network interface architecture and networking infrastructure, designed to sit inside the FPGA fabric of a cutting‐edge MPSoC device, enabling networks of these devices to communicate within both a distributed and shared memory context, with reduced need for costly software networking system calls. We will present our implementation and prototype system and discuss the main design decisions relevant to the use of the Xilinx Zynq Ultrascale+, a state‐of‐the‐art MPSoC, and the challenges to be overcome given the device's limitations and constraints. We demonstrate the working prototype system connecting two MPSoCs, with communication between processor and remote memory region and accelerator. We then discuss the limitations of the current implementation and highlight areas of improvement to make this solution production‐ready.

Bibliographical metadata

Original languageEnglish
JournalConcurrency and Computation: Practice and Experience
Early online date25 Sep 2018
Publication statusPublished - 2018