[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
article
Free access

An open framework for rapid prototyping of signal processing applications

Published: 01 January 2009 Publication History

Abstract

Embedded real-time applications in communication systems have significant timing constraints, thus requiring multiple computation units. Manually exploring the potential parallelism of an application deployed on multicore architectures is greatly time-consuming. This paper presents an open-source Eclipse-based framework which aims to facilitate the exploration and development processes in this context. The framework includes a generic graph editor (Graphiti), a graph transformation library (SDF4J) and an automatic mapper/scheduler tool with simulation and code generation capabilities (PREESM). The input of the framework is composed of a scenario description and two graphs, one graph describes an algorithm and the second graph describes an architecture. The rapid prototyping results of a 3GPP Long-Term Evolution (LTE) algorithm on a multicore digital signal processor illustrate both the features and the capabilities of this framework.

References

[1]
E. A. Lee, "The problem with threads," Computer, vol. 39, no. 5, pp. 33-42, 2006.
[2]
M. Pelcat, S. Aridhi, and J. F. Nezan, "Optimization of automatically generated multi-core code for the LTE RACH-PD algorithm," in Proceedings of the Conference on Design and Architectures for Signal and Image Processing (DASIP '08), Bruxelles, Belgium, November 2008.
[3]
J. Piat, S. S. Bhattacharyya, M. Pelcat, and M. Raulet, "Multicore code generation from interface based hierarchy," in Proceedings of the Conference on Design and Architectures for Signal and Image Processing (DASIP '09), Sophia Antipolis, France, September 2009.
[4]
M. Pelcat, P. Menuet, S. Aridhi, and J.-F. Nezan, "Scalable compile-time scheduler for multi-core architectures," in Proceedings of the Conference on Design and Architectures for Signal and Image Processing (DASIP '09), Sophia Antipolis, France, September 2009.
[5]
"Eclipse Open Source IDE," http://www.eclipse.org/downloads.
[6]
T. Grandpierre and Y. Sorel, "From algorithm and architecture specifications to automatic generation of distributed real-time executives: a seamless flow of graphs transformations," in Proceedings of the 1st ACM and IEEE International Conference on Formal Methods and Models for Co-Design (MEMOCODE '03), pp. 123-132, 2003.
[7]
"OpenMP," http://openmp.org/wp.
[8]
R. D. Blumofe, C. F. Joerg, B. C. Kuszmaul, C. E. Leiserson, K. H. Randall, and Y. Zhou, "Cilk: an efficient multithreaded runtime system," Journal of Parallel and Distributed Computing, vol. 37, no. 1, pp. 55-69, 1996.
[9]
"OpenCL," http://www.khronos.org/opencl.
[10]
"The Multicore Association," http://www.multicore-association.org/home.php.
[11]
"PolyCore Software Poly-Mapper tool," http://www.polycoresoftware.com/products3.php.
[12]
E. A. Lee, "Overview of the ptolemy project," Technical Memorandum UCB/ERL M01/11, University of California, Berkeley, Calif, USA, 2001.
[13]
J. Eker and J. W. Janneck, "CAL language report," Tech. Rep. ERL Technical Memo UCB/ERL M03/48, University of California, Berkeley, Calif, USA, December 2003.
[14]
S. S. Bhattacharyya, G. Brebner, J. Janneck, et al., "OpenDF: a dataflow toolset for reconfigurable hardware and multicore systems," ACM SIGARCH Computer Architecture News, vol. 36, no. 5, pp. 29-35, 2008.
[15]
G. Karsai, J. Sztipanovits, A. Ledeczi, and T. Bapty, "Model-integrated development of embedded software," Proceedings of the IEEE, vol. 91, no. 1, pp. 145-164, 2003.
[16]
P. Belanovic, An open tool integration environment for efficient design of embedded systems in wireless communications, Ph.D. thesis, Technische Universität Wien, Wien, Austria, 2006.
[17]
T. Grandpierre, C. Lavarenne, and Y. Sorel, "Optimized rapid prototyping for real-time embedded heterogeneous multiprocessors," in Proceedings of the 7th International Workshop on Hardware/Software Codesign (CODES '99), pp. 74-78, 1999.
[18]
C.-J. Hsu, F. Keceli, M.-Y. Ko, S. Shahparnia, and S. S. Bhattacharyya, "DIF: an interchange format for dataflow-based design tools," in Proceedings of the 3rd and 4th International Workshops on Computer Systems: Architectures, Modeling, and Simulation (SAMOS '04), vol. 3133 of Lecture Notes in Computer Science, pp. 423-432, 2004.
[19]
S. Stuijk, Predictable mapping of streaming applications on multiprocessors, Ph.D. thesis, Technische Universiteit Eindhoven, Eindhoven, The Netherlands, 2007.
[20]
B. D. Theelen, "A performance analysis tool for scenario-aware steaming applications," in Proceedings of the 4th International Conference on the Quantitative Evaluation of Systems (QEST '07), pp. 269-270, 2007.
[21]
"Graphiti Editor," http://sourceforge.net/projects/graphitieditor.
[22]
E. A. Lee and D. G. Messerschmitt, "Synchronous data flow," Proceedings of the IEEE, vol. 75, no. 9, pp. 1235-1245, 1987.
[23]
"SDF4J," http://sourceforge.net/projects/sdf4j.
[24]
"PREESM," http://sourceforge.net/projects/preesm.
[25]
J. W. Janneck, "NL--a network language," Tech. Rep., ASTG Technical Memo, Programmable Solutions Group, Xilinx, July 2007.
[26]
SPIRIT Schema Working Group, "IP-XACT v1.4: a specification for XML meta-data and tool interfaces," Tech. Rep., The SPIRIT Consortium, March 2008.
[27]
U. Brandes, M. Eiglsperger, I. Herman, M. Himsolt, and M. S. Marshall, "Graphml progress report, structural layer proposal," in Proceedings of the 9th International Symposium on Graph Drawing (GD '01), P. Mutzel, M. Junger, and S. Leipert, Eds., pp. 501-512, Springer, Vienna, Austria, 2001.
[28]
J. Piat, M. Raulet, M. Pelcat, P. Mu, and O. Déforges, "An extensible framework for fast prototyping of multiprocessor dataflow applications," in Proceedings of the 3rd International Design and Test Workshop (IDT '08), pp. 215-220, Monastir, Tunisia, December 2008.
[29]
"w3c XML standard," http://www.w3.org/XML.
[30]
"w3c XSLT standard," http://www.w3.org/Style/XSL.
[31]
"Grammatica parser generator," http://grammatica.percederberg.net.
[32]
J. W. Janneck and R. Esser, "A predicate-based approach to defining visual language syntax," in Proceedings of IEEE Symposium on Human-Centric Computing (HCC '01), pp. 40- 47, Stresa, Italy, 2001.
[33]
J. L. Pino, S. S. Bhattacharyya, and E. A. Lee, "A hierarchical multiprocessor scheduling framework for synchronous dataflow graphs," Tech. Rep., University of California, Berkeley, Calif, USA, 1995.
[34]
S. Sriram and S. S. Bhattacharyya, Embedded Multiprocessors: Scheduling and Synchronization, CRC Press, Boca Raton, Fla, USA, 1st edition, 2000.
[35]
V. Sarkar, Partitioning and scheduling parallel programs for execution on multiprocessors, Ph.D. thesis, Stanford University, Palo Alto, Calif, USA, 1987.
[36]
O. Sinnen and L. A. Sousa, "Communication contention in task scheduling," IEEE Transactions on Parallel and Distributed Systems, vol. 16, no. 6, pp. 503-515, 2005.
[37]
M. R. Garey and D. S. Johnson, Computers and Intractability: A Guide to the Theory of NP-Completeness, W. H. Freeman, San Francisco, Calif, USA, 1990.
[38]
Y.-K. Kwok, High-performance algorithms of compiletime scheduling of parallel processors, Ph.D. thesis, Hong Kong University of Science and Technology, Hong Kong, 1997.
[39]
F. Ghenassia, Transaction-Level Modeling with Systemc: TLM Concepts and Applications for Embedded Systems, Springer, New York, NY, USA, 2006.
[40]
"TMS320TCI6487 DSP platform, texas instrument product bulletin (SPRT405)".
[41]
"Tms320 dsp/bios users guide (SPRU423F)".
[42]
B. Feng and R. Salman, "TMS320TCI6482 EDMA3 performance," Technical Document SPRAAG8, Texas Instruments, November 2006.
[43]
"RapidIO," http://www.rapidio.org/home.
[44]
"The 3rd Generation Partnership Project," http://www .3gpp.org.
[45]
J. Jiang, T. Muharemovic, and P. Bertrand, "Random access preamble detection for long term evolution wireless networks," US patent no. 20090040918.
[46]
"3GPP technical specification group radio access network; evolved universal terrestrial radio access (EUTRA) (Release 8), 3GPP, TS36.211 (V 8.1.0)".
[47]
S. S. Bhattacharyya and E. A. Lee, "Memory management for dataflow programming of multirate signal processing algorithms," IEEE Transactions on Signal Processing, vol. 42, no. 5, pp. 1190-1201, 1994.
[48]
"TMS320C64x/C64x+ DSP CPU and instruction set," Reference Guide SPRU732G, Texas Instruments, February 2008.

Cited By

View all
  • (2021)A model of architecture for estimating GPU processing performance and powerDesign Automation for Embedded Systems10.1007/s10617-020-09244-425:1(43-63)Online publication date: 1-Mar-2021
  • (2020)HW/SW co-design of a visual SLAM applicationJournal of Real-Time Image Processing10.1007/s11554-018-0836-217:3(667-689)Online publication date: 1-Jun-2020
  • (2018)Comparing Three Clustering-based Scheduling Methods for Energy-Aware Rapid Design of MP2SoCsJournal of Signal Processing Systems10.5555/3200212.320022290:4(537-570)Online publication date: 1-Apr-2018
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image EURASIP Journal on Embedded Systems
EURASIP Journal on Embedded Systems  Volume 2009, Issue
Special issue on design and architectures for signal and image processing
January 2009
192 pages
ISSN:1687-3955
EISSN:1687-3963
Issue’s Table of Contents

Publisher

Hindawi Limited

London, United Kingdom

Publication History

Accepted: 14 September 2009
Revised: 07 July 2009
Received: 27 February 2009
Published: 01 January 2009

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)36
  • Downloads (Last 6 weeks)4
Reflects downloads up to 07 Jan 2025

Other Metrics

Citations

Cited By

View all
  • (2021)A model of architecture for estimating GPU processing performance and powerDesign Automation for Embedded Systems10.1007/s10617-020-09244-425:1(43-63)Online publication date: 1-Mar-2021
  • (2020)HW/SW co-design of a visual SLAM applicationJournal of Real-Time Image Processing10.1007/s11554-018-0836-217:3(667-689)Online publication date: 1-Jun-2020
  • (2018)Comparing Three Clustering-based Scheduling Methods for Energy-Aware Rapid Design of MP2SoCsJournal of Signal Processing Systems10.5555/3200212.320022290:4(537-570)Online publication date: 1-Apr-2018
  • (2017)Energy-Awareness and Performance Management with Parallel Dataflow ApplicationsJournal of Signal Processing Systems10.1007/s11265-015-1059-487:1(33-48)Online publication date: 1-Apr-2017
  • (2016)Performance Estimation Based Multicriteria Partitioning Approach for Dynamic Dataflow ProgramsJournal of Electrical and Computer Engineering10.1155/2016/85364322016(12)Online publication date: 1-Aug-2016
  • (2016)Prototyping real-time tracking systems on mobile devicesProceedings of the ACM International Conference on Computing Frontiers10.1145/2903150.2903471(301-308)Online publication date: 16-May-2016
  • (2015)A Methodology for Profiling and Partitioning Stream Programs on Many-core ArchitecturesProcedia Computer Science10.1016/j.procs.2015.05.49851:C(2962-2966)Online publication date: 1-Sep-2015
  • (2015)Execution Trace Graph Based Multi-criteria Partitioning of Stream ProgramsProcedia Computer Science10.1016/j.procs.2015.05.33451:C(1443-1452)Online publication date: 1-Sep-2015
  • (2014)Fast and efficient dataflow graph generationProceedings of the 17th International Workshop on Software and Compilers for Embedded Systems10.1145/2609248.2609258(40-49)Online publication date: 10-Jun-2014
  • (2013)MPEG Reconfigurable Video CodingImage Communication10.1016/j.image.2013.08.00928:10(1224-1238)Online publication date: 1-Nov-2013

View Options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media