Occam-pi for Programming of Massively Parallel Reconfigurable Architectures

Massively parallel reconfigurable architectures, which offer massive parallelism coupled with the capability of undergoing run-time reconfiguration, are gaining attention in order to meet the increased computational demands of high-performance embedded systems. We propose that the 𝚘𝚌𝚌𝚊𝚖-𝚙𝚒 language...

Full description

Saved in:
Bibliographic Details
Main Authors: Zain-ul-Abdin, Bertil Svensson
Format: Article
Language:English
Published: Wiley 2012-01-01
Series:International Journal of Reconfigurable Computing
Online Access:http://dx.doi.org/10.1155/2012/504815
Tags: Add Tag
No Tags, Be the first to tag this record!
Description
Summary:Massively parallel reconfigurable architectures, which offer massive parallelism coupled with the capability of undergoing run-time reconfiguration, are gaining attention in order to meet the increased computational demands of high-performance embedded systems. We propose that the 𝚘𝚌𝚌𝚊𝚖-𝚙𝚒 language is used for programming of the category of massively parallel reconfigurable architectures. The salient properties of the 𝚘𝚌𝚌𝚊𝚖-𝚙𝚒 language are explicit concurrency with built-in mechanisms for interprocessor communication, provision for expressing dynamic parallelism, support for the expression of dynamic reconfigurations, and placement attributes. To evaluate the programming approach, a compiler framework was extended to support the language extensions in the 𝚘𝚌𝚌𝚊𝚖-𝚙𝚒 language and a backend was developed to target the Ambric array of processors. We present two case-studies; DCT implementation exploiting the reconfigurability feature of 𝚘𝚌𝚌𝚊𝚖-𝚙𝚒 and a significantly large autofocus criterion calculation based on the dynamic parallelism capability of the 𝚘𝚌𝚌𝚊𝚖-𝚙𝚒 language. The results of the implemented case studies suggest that the 𝚘𝚌𝚌𝚊𝚖-𝚙𝚒-language-based approach simplifies the development of applications employing run-time reconfigurable devices without compromising the performance benefits.
ISSN:1687-7195
1687-7209