Hardware support for CSP on a Java chip multiprocessor

Flavius Gruian, Martin Schoeberl

Research output: Contribution to journalJournal articleResearchpeer-review


Due to memory bandwidth limitations, chip multiprocessors (CMPs) adopting the convenient shared memory model for their main memory architecture scale poorly. On-chip core-to-core communication is a solution to this problem, that can lead to further performance increase for a number of multithreaded applications. Programmatically, the Communicating Sequential Processes (CSPs) paradigm provides a sound computational model for such an architecture with message based communication. In this paper we explore hardware support for CSP in the context of an embedded Java CMP. The hardware support for CSP are on-chip communication channels, implemented by a ring-based network-on-chip (NoC), to reduce the memory bandwidth pressure on the shared memory.The presented solution is scalable and also specific for our limited resources and real-time predictability requirements. CMP architectures of three to eight processors were implemented and tested on both Altera (EP1C12, EP2C70) and Xilinx (XC3S1200e) FPGAs, showing that the NoC accounts for under 9% of the total device area used by the system. Compared to shared memory-based communication, our NoC-based solution is between 1.7 and 9.3 times faster for raw data transfer, depending on the communication and memory configuration. Application speed-up, on the other hand, is highly dependent on the type of processing, as our measurements show.
Original languageEnglish
JournalMicroprocessors and Microsystems
Issue number4-5
Pages (from-to)472-481
Publication statusPublished - 2013


  • Java
  • Embedded systems
  • Network-on-chip
  • Communicating sequential processes


Dive into the research topics of 'Hardware support for CSP on a Java chip multiprocessor'. Together they form a unique fingerprint.

Cite this