Logo image
MDI: An Annotation Language for Heterogeneous DSP Processors
Thesis

MDI: An Annotation Language for Heterogeneous DSP Processors

Bo-Shiun Hsu
Masters, 國立清華大學, 資訊工程學系
2004

Abstract

多核心軟體分割 特定處理器最佳化 編譯器注釋指令 Multi-core partition Processors specific optimization Compiler directives
In today’s media-rich environment, the processing of audio/video and multimedia image information becomes essential for any consumer product. Aiming at highperformance, power-efficiency, high-flexibility, and low-cost, many embedded systems employ programmable Digital Signal Processor s (DSPs) as their core components to construct dataflow-centric, concurrent, and computation-intensive architectures. It’s common to see employing multi-core heterogeneous DSP processors as hardware solutions for embedded and SOC systems with high-throughput streamed-data processing and arithmetic-intensive computing. Traditional DSP compilers usually yield poorquality object codes. Lack of an insight into the DSP architecture and the specific semantics of DSP applications, a compiler would have troubles selecting appropriatly special instructions to exploit advanced hardware features. Those compilers cannot automatically discover the best ways to utilize the specific architecture features and to unleash proper optimized code composed of custom-built instructions for DSP operations without intervening from the programmers. Hence, there is a demand for effective methods to guide the compilation and optimizations of DSP programs. The issues of software portability and optimization in multi-core SOCs with DSPs are further crucial than ever. MDI, an annotation language as compiler directive extension of standard C/C++, is proposed to incorporate the ideas of DSP specific computing, multi-core deployment, and streamed data parallel programming into the portable C program developments for the optimizations in compilers and other toolkits. Our approach is to employ DSP-specific semantic descriptions and multi-core deployment indications to be annotated on top of high-level languages by programmers. This information can be picked up by compilers, system designers and other development toolkits to perform processor optimizations. All annotations are categorized into five types;Environment Description, Target Specification, Data Storage Characterization, Operation Intention and Computation-Flow Commentary. We present a complete MDI specification in this thesis.

Metrics

1 Record Views

Details

Logo image