Abstract
In this paper, we design and implement C-extensions for the compiler of a newly developed digital signal processor named SDR-DSP. SDR-DSP is based on VLIW and SIMD. It is developed to meet the performance requirement of software-defined radio. The high-level language programming environment for SDR-DSP is very important but the complexity of SDR-DSP architecture and instruction set limits the compiler implementation and optimization. We design and implement C-extensions for SDR-DSP compiler including intrinsics for special operations and pragmas for optimization. With our C-extensions, programmers can develop applications for SDR-DSP in high-level language and can get more optimized executable code than standard C implementation.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
TMS320C6000 Optimizing Compiler User’s Guide, spru187l (May 2004)
TMS320C55x Optimizing C/C++ Compiler User’s Guide, spru281e (March 2003)
Tuttlebee, W.: Software defined radio: enabling technologies. Wiley (2002)
Fisher, J.: Very Long Instruction Word Architectures and the ELI-512. In: Proceedings of the Tenth Annual International Symposium on Computer Architecture, pp. 140–150 (1983)
Lorenz, M., Wehmeyer, L., Drager, T.: Energy aware compilation for DSPs with SIMD instructions. In: LCTES/SCOPES 2002: Proceedings of the Joint Conference on Languages, Compilers and Tools for Embedded Systems, pp. 94–101. ACM Press (2002)
De Subrato, K., Dasgupta, A.: Development of an Efficient DSP Compiler Based on Open64. Qualcomm Incorporated, San Diego & Austin (2008)
Meadows, L.: OpenMP 3.0 – A Preview of the Upcoming Standard. In: Perrott, R., Chapman, B.M., Subhlok, J., de Mello, R.F., Yang, L.T. (eds.) HPCC 2007. LNCS, vol. 4782, p. 4. Springer, Heidelberg (2007)
GCC Internals Manual (GCC v4.4.5). Free Software Foundation (November 2008)
Extensions for the programming language C to support embedded processors, ISO/IEC JTC1 SC22 WG14 N1021, Reference number of document: ISO/IEC DTR 18037 (2003)
Murthy, G.S., Ravishankar, M., Baskaran, M.M., et al.: Optimal loop unrolling for GPGPU programs. In: 2010 IEEE International Symposium on Parallel and Distributed Processing, pp. 1–11 (2010)
Mowry, T.C., Lam, M.S., Gupta, A.: Design and Evaluation of a Compiler Algorithm for Prefetching. In: Proceedings of the Fifth International Conference on Architectural Support for Programming Languages and Operating Systems, New York, USA, pp. 62–73 (1992)
Poulsen, D.K., Yew, P.C.: Data Prefetching and Data Forwarding in Shared Memory Multiprocessors. In: Proceedings of International Conference on Parallel Processing, pp. 276–280 (1994)
Mattson, P., Kapasi, U.J., Owens, S.R.: Imagine Programming System User’s Guide. Stanford University (2004)
Das, A., Dally, W.J., Mattson, P., et al.: Compiling for stream processing. In: Proceedings of the 15th International Conference on Parallel, pp. 33–42. ACM Press, New York (2006)
Burrus, S., Parks, T.W.: DFT/FFT and Convolution Algorithms: Theory and Implementation, pp. 1–23. Publisher John Wiley & Sons Inc., New York (1991)
AltiVec Technology Programming Interface Manual. Motorola Inc. (June 1999)
Yang, L., Ni, X., Liu, H.: Implementation of SOAS for SDR Processor. In: Proceedings of the International Conference on Human-Centric Computing 2011 and Embedded and Multimedia Computing 2011, pp. 603–609. Springer (2011)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer Science+Business Media Dordrecht
About this paper
Cite this paper
Yang, L. et al. (2012). Design and Implementation of C-Extensions for SDR-DSP Compiler. In: Park, J., Jeong, YS., Park, S., Chen, HC. (eds) Embedded and Multimedia Computing Technology and Service. Lecture Notes in Electrical Engineering, vol 181. Springer, Dordrecht. https://doi.org/10.1007/978-94-007-5076-0_16
Download citation
DOI: https://doi.org/10.1007/978-94-007-5076-0_16
Publisher Name: Springer, Dordrecht
Print ISBN: 978-94-007-5075-3
Online ISBN: 978-94-007-5076-0
eBook Packages: EngineeringEngineering (R0)