A Generic Hardware / Software Communication Middleware for Streaming Applications on Shared Memory Multi Processor Systems-on-Chip
Résumé
Streaming applications, such as packet switching or video and multimedia processing, require high through-put, that can be obtained by exploiting the application coarse grain parallelism, and mapping the parallel multitasks application on a multiprocessor system on chip (MPSoC). The seamless migration of a task from software to hardware implementation requires an unified communication intrastructure. We present in this paper the multi-writer multi-reader (MWMR) communication middleware and the associated protocol, initially designed for telecom and packet processing applications. Our middleware provides both a software API (for software tasks), and a generic, programmable hardware controller with a DMA capability (that can be used with dedicated hardware coprocessors). We demonstrate on a multitask application (motion JPEG decoder) that this generic communication infrastructure can be used in video or multimedia applications, and it implements the KPN (Kahn process network) semantics more efficiently than previous implementations.