Compiling real-time digital signal processing applications onto multiprocessor systems

Phu Hoang · 1992

The goal of this research is to develop a set of Computer-Aided Design (CAD) tools to support the real-time implementation of Digital Signal Processing (DSP) applications onto multiple programmable processors. The work has resulted in a complete DSP design environment, called McDAS, which can compile high level DSP applications directly down to parallel code for MIMD multiprocessors. One of the major challenges of the research is the assignment and scheduling of tasks onto the processors in such a way as to maximize the throughput of the resultant implementation while considering interprocessor communication delays and resource constraints imposed by the target architecture. The scheduler in McDAS exploits pipelining, retiming, and parallel execution simultaneously, allowing the environment to efficiently support a wide range of applications with different types of concurrency. Users can invoke the scheduler with different architecture configurations to explore implementation trade-offs. The code generator is similarly retargetable to different multiprocessor architectures as well as core processors. Data buffers and synchronizations are automatically inserted to ensure correct execution. The final implementation can be used for simulation speedup or real-time processing. The results on a set of benchmarks demonstrate McDAS's ability to achieve near optimal speedups across a wide range of applications.

Read the paper · More papers on PaperTik