< back to publications

Debugging HW/SW Interface for MPSoC: Video Encoder System Design Case Study

Author(s): S. Yoo, Y. Paviot, W. Youssef, A. Sasongko, A. A. Jerraya

ISRN: TIMA-RR--04/05-01--FR

This paper reports a case study of multiprocessor SoC (MPSoC) design of a complex video encoder, namely OpenDivX. OpenDivX is a popular version of MPEG4, it requires massive computation resources and deals with complex data structures to represent video streams. In this study, the initial specification is given in sequential C code that had to be parallelized to be executed on four different processors. High level programming model, namely Message Passing Interface (MPI) was used to enable inter-task communication among parallelised C code. A four processor hardware prototyping platform was used to debug the parallelised software before final SoC hardware is ready. The targeting of abstract parallel code using MPI to the multiprocessor architecture required the design of an additional hardware-dependent software layer to refine the abstract programming model. The design was made by a team work of three types of designer: application software, hardware-dependent software and hardware platform designers. The collaboration was necessary to master the whole flow from the specification to the platform.