Proceedings of the conference on Design, automation and test in Europe: Proceedings
LMPI: MPI for Heterogeneous Embedded Distributed Systems
ICPADS '06 Proceedings of the 12th International Conference on Parallel and Distributed Systems - Volume 1
Effective OpenMP Implementation and Translation For Multiprocessor System-On-Chip without Using OS
ASP-DAC '07 Proceedings of the 2007 Asia and South Pacific Design Automation Conference
CellStats: A Tool to Evaluate the Basic Synchronization and Communication Operations of the Cell BE
PDP '08 Proceedings of the 16th Euromicro Conference on Parallel, Distributed and Network-Based Processing (PDP 2008)
Proceedings of the 6th FPGAworld Conference
Proceedings of the Conference on Design, Automation and Test in Europe
RTCSA '10 Proceedings of the 2010 IEEE 16th International Conference on Embedded and Real-Time Computing Systems and Applications
XMCAPI: Inter-core Communication Interface on Multi-chip Embedded Systems
EUC '11 Proceedings of the 2011 IFIP 9th International Conference on Embedded and Ubiquitous Computing
Multiprocessor System-on-Chip (MPSoC) Technology
IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems
Hi-index | 0.00 |
FPGAs are traditionally designed with RTL-level IP-block descriptions. Many FPGA designs include several synthesizable processors and SW executables are mapped to them after a separate software development process. The tools help connecting physical blocks together and typically provide a board support package for SW development to access HW from the application code. The designer is still responsible of carefully planning how the applications on multiple cores communicate, which is getting the more difficult the more cores and other IP blocks are introduced. We apply Multicore Association Communications API (MCAPI) to implement hardware independent communication mechanism between the applications. The benefit is a unified programming API to different processor and operating system types, but also for hardware IP-blocks that the cores can access. We introduce MCAPI and show a case study of a simple video encoder with and without MCAPI abstraction. Porting an application function takes 3 hours with MCAPI and 5 without, i.e. 40% reduction. However, the overhead from MCAPI is increase memory footprint by 25 KB and effect on the video encoder performance -22% compared to non-MCAPI case.