Parallel programming models for a multiprocessor SoC platform applied to networking and multimedia

  • Authors:
  • Pierre G.` Paulin;Chuck Pilkington;Michel Langevin;Essaid Bensoudane;Damien Lyonnard;Olivier Benny;Bruno Lavigueur;David Lo;Giovanni Beltrame;Vincent Gagné;Gabriela Nicolescu

  • Affiliations:
  • STMicroelectronics, Ottawa, Canada;STMicroelectronics, Ottawa, Canada;STMicroelectronics, Ottawa, Canada;STMicroelectronics, Ottawa, Canada;STMicroelectronics, Ottawa, Canada;STMicroelectronics, Ottawa, Canada;STMicroelectronics, Ottawa, Canada;STMicroelectronics, Ottawa, Canada;STMicroelectronics, Ottawa, Canada;STMicroelectronics, Ottawa, Canada;École Polytechnique de Montréal, Montréal, Canada

  • Venue:
  • IEEE Transactions on Very Large Scale Integration (VLSI) Systems
  • Year:
  • 2006

Quantified Score

Hi-index 0.00

Visualization

Abstract

The MultiFlex system is an application-to-platform mapping tool that integrates heterogeneous parallel components-- H/W or S/W-- into a homogeneous platform programming environment. This leads to higher quality designs through encapsulation and abstraction. Two high-level parallel programming models are supported by the following MultiFlex platform mapping tools: a distributed system object component (DSOC) object-oriented message passing model and a symmetrical multiprocessing (SMP) model using shared memory. We demonstrate the combined use of the MultiFlex multiprocessor mapping tools, supported by high-speed hardware-assisted messaging, context-switching, and dynamic scheduling using the StepNP demonstrator multiprocessor system-on-chip platform, for two representative applications: 1) an Internet traffic management application running at 2.5 Gb/s and 2) an MPEG4 video encoder (VGA resolution, at 30 frames/s). For these applications, a combination of the DSOC and SMP programming models were used in interoperable fashion. After optimization and mapping, processor utilization rates of 85%-91% were demonstrated for the traffic manager. For the MPEG4 decoder, the average processor utilization was 88%.