Analog Integrated Circuits and Signal Processing

, Volume 73, Issue 2, pp 613–625 | Cite as

On the use of an algebraic language interface for waveform definition



We discuss implementation aspects of a software-defined radio system that allows the user to define waveforms using an algebraic language interface, currently as an extension to C++. Current software-defined radio systems provide waveform definitions through a combination of a graphical interface, markup language, interpreted script, and compiled code. Regardless of the methods used, the actual executed code generates each waveform via a series of graph-style connections: instantiating blocks and then explicitly connecting ports between blocks. We propose a system that allows the definition of waveforms using a novel text-based algebraic language interface similar to that found in MathWorks MATLAB or GNU Octave. Our system simplifies the waveform programming abstraction by using implicit graph-style connections; it makes extensive use of C++ templates and operator overloading to allow this high-level abstraction. Our interface is solely an abstraction layer providing an alternative means for coding waveforms in comparison to current techniques, and hence has no more overhead than current techniques. Example code is provided to compare and contrast various methods of waveform definition.


Software defined radio Waveform definition language MATLAB Octave C++ Runtime optimization 



This work has been supported in part by NIJ Grant 2006-IJ-CX-K034 and an NVIDIA Professor Partnership Award.


  1. 1.
    Zimmermann, H. (1980). OSI reference model—The ISO model of architecture for open systems interconnection. IEEE Transactions on Communications, 28(4), 425–432.CrossRefGoogle Scholar
  2. 2.
    Jones, D. (2012). Efficient FFT algorithm and programming tricks, Connexions Website. Accessed June 2012
  3. 3.
    Frigo M., & Johnson, S. G. (2005). The design and implementation of FFTW3. Proceedings of the IEEE. Invited paper, Special Issue on Program Generation, Optimization, and Platform Adaptation, 93(2): 216–231.Google Scholar
  4. 4.
    Ramakrishnan, V., Witte, E. M., Kempf, T., Kammler, D., Ascheid, G., Leupers R., Meyr, H., Adrat, M., & Antweiler, M., (2009). Efficient and Portable SDR Waveform Development: the nucleus concept. Proceedings of the 28th IEEE Conference on Military Communications, (pp. 918–924), 2009.Google Scholar
  5. 5.
    Williams, L.J (ITT: Technical Director, JTRS Business Area). (2009). Software defined radios: Are they really that hard?, Presented at the IPFW Wireless Summer School, June 17, 2009.Google Scholar
  6. 6.
    GNU Radio Discussion Email List, Thread on why isn’t gnu radio used more. Accessed June 2012
  7. 7.
    MathWorks MATLAB Website. Accessed June 2012
  8. 8.
    GNU Octave Website. Accessed June 2012
  9. 9.
    MathWorks Company Facts Sheet. Accessed June 2012
  10. 10.
    Dickens, M. L., Laneman, J. N., & Dunn, B. P. (2011). Seamless dynamic runtime reconfiguration in a software defined radio. Proceedings of SDR’11 WInnComm Europe, Brussels, June 2011.Google Scholar
  11. 11.
    GNU Radio Website. Accessed June 2012
  12. 12.
    The Khronos Group, OpenCL Website. Accessed June 2012
  13. 13.
    Dickens, M. L., & Laneman, J. N. (2011). On the use of an algebraic language for waveform definition. Proceedings of SDR’11 WInnComm, Washington, DC, November–December 2011.Google Scholar
  14. 14.
    Software Communications Architecture Website. Accessed June 2012
  15. 15.
    GNU Radio Companion Website. Accessed June 2012
  16. 16.
    MathWorks Simulink Website. Accessed June 2012
  17. 17.
    National Instruments Corporation, LabVIEW Website. Accessed June 2012
  18. 18.
    Eker, J., Janneck, J. W., Lee, E. A., Liu, J., Liu, X., Ludvig, J., et al. (2003). Taming heterogeneity—the ptolemy approach. Proceedings of the IEEE, 91(1), 127–144.CrossRefGoogle Scholar
  19. 19.
    Agilent VEE Website. Accessed June 2012
  20. 20.
    Mitov Software OpenWire Website. Accessed June 2012
  21. 21.
    Schniter, P. (2012). Polyphase decimation filter, Connexions Website. Accessed June 2012
  22. 22.
    Morrison, J. P. (2012) Flow-based programming, 2nd ed.: A new approach to application development, self-published: EAN-13 978-1451542325, 2010. Accessed June 2012
  23. 23.
    Hsu, C. J., Corretjer, I., Ko, M. Y., Plishker, W., Bhattacharyya, S. S., (2007). Dataflow interchange format. Technical Report UMIACS-TR-2007-32, Institute for Advanced Computer Studies, University of Maryland at College Park, June 2007.Google Scholar
  24. 24.
    SystemC Website. Accessed June 2012
  25. 25.
    Grimm, C. (Ed.). (2004). Languages for system specification. Boston: Kluwer Academic Publishers.MATHGoogle Scholar
  26. 26.
    NoFlo (Flow-based programming for Node.js) Website. Accessed June 2012
  27. 27.
    Berka, A. V. (2012). Interlanguages and synchronic models of computation, Published 25 May 2010 on the Isynchronise Ltd. Website. Accessed June 2012
  28. 28.
    ParC Website. Accessed June 2012
  29. 29.
    Thies, W., Karczmarek, M., & Amarasinghe, S. (2002). StreamIt: A language for streaming applications. Proceedings of the International Conference on Compiler Construction, Grenoble, 2002.Google Scholar
  30. 30.
    Stroustrup, B. (2000). The C++ Programming Language: Special Edition, Addison-Wesley, ISBN 0201700735.Google Scholar
  31. 31.
    C++03 Wikipedia Entry. Accessed June 2012
  32. 32.
    C++ Working Group Documents Website. Accessed June 2012
  33. 33.
    C++11 Wikipedia Entry. Accessed June 2012
  34. 34.
    Dinesh, T. B., Haveraaen, M., & Heering, J. (2000). An algebraic programming style for numerical software and its optimization. Scientific Programming, 9(4), 247–259.Google Scholar
  35. 35.
    McCarthy, N. (2011). The VOLK is for the people: On-Chip, hand-coded optimization in an unaccommodating world. Presented at the 1st GNU Radio Conference, Philadelphia.Google Scholar
  36. 36.
    Apple Developer Website, Taking advantage of the accelerate framework. Accessed June 2012

Copyright information

© Springer Science+Business Media, LLC 2012

Authors and Affiliations

  1. 1.University of Notre DameNotre DameUSA

Personalised recommendations