A Compiler for a Domain-Specific Language for Rapid Implementation of DSP Transforms and Filter Banks

  • Marek Parfieniuk
  • Marcin Kazberuk
  • Kamil Kowalewski

Abstract

Transforms and filter banks are widely used in digital signal processing (DSP), but not many specialized tools exist for developing such systems. Moreover, these tools are somewhat user unfriendly and lack useful features, and their drawbacks cannot be easily solved. Therefore, we have recently proposed a domain-specific language, called TDL, for describing systems clearly, compactly, and quickly. In this chapter we present an associated compiler, which converts TDL descriptions into Java/C++ implementation code, so as to save programming effort. In particular, the dataflow and data structures are discussed that are related to code generation.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Vaidyanathan, P.P.: Multirate systems and filter banks. Prentice-Hall, Englewood Cliffs (1993)MATHGoogle Scholar
  2. 2.
    Strang, G., Nguyen, T.Q.: Wavelets and filter banks. Wellesley-Cambridge Press, Wellesley (1996)Google Scholar
  3. 3.
    Piotrowski, A., Parfieniuk, M.: Cyfrowe banki filtrow: analiza, synteza i implementacja dla systemow multimedialnych. Wydawnictwo Politechniki Bialostockiej, Bialystok, Poland (2006)Google Scholar
  4. 4.
    Vaidyanathan, P.P.: On coefficient-quantization and computational roundoff effects in lossless multirate filter banks. IEEE Trans. Signal Process. 39, 1006–1008 (1991)CrossRefGoogle Scholar
  5. 5.
    Parfieniuk, M.: A dedicated high-level language for implementing nonrecursive filter banks and transforms. In: Proc 17th Int. Conf. Mixed Design of Integrated Circuits and Systems (MIXDES), Wroclaw, Poland (2010)Google Scholar
  6. 6.
    Parfieniuk, M., Petrovsky, A.: Inherently lossless structures for eight and six-channel linear-phase paraunitary filter banks based on quaternion multipliers. Signal Process 90, 1755–1767 (2010)MATHCrossRefGoogle Scholar
  7. 7.
    Parfieniuk, M., Petrovsky, A.: Quaternion multiplier inspired by the lifting implementation of plane rotations. IEEE Trans. Circuits Systems I 57, 2708–2717 (2010)MathSciNetCrossRefGoogle Scholar
  8. 8.
    Loeffler, C., Lightenberg, A., Moschytz, G.: Practical fast 1-D DCT algorithms with 11 multiplications. In: Proc IEEE Int. Conf. Acoust. Speech Signal Process. (ICASSP), Glasgow, Scotland (1989)Google Scholar
  9. 9.
    Xiong, J., et al.: SPL: a language and compiler for DSP algorithms. ACM SIGPLAN Notices 36, 298–308 (2001)CrossRefGoogle Scholar
  10. 10.
    Püschel, M., et al.: SPIRAL: Code generation for DSP transforms. Proc. IEEE 93, 232–275 (2005)CrossRefGoogle Scholar
  11. 11.
    Locke, C.D., Dibble, P.C.: Java technology comes to real-time applications. Proc. IEEE 91, 1105–1113 (2003)CrossRefGoogle Scholar
  12. 12.
    Labrosse, J., et al.: Embedded software: know it all. Newnes/Elsevier, Oxford, UK (2008)Google Scholar
  13. 13.
    Parr, T.: The definitive ANTLR reference: Building domain-specific languages. Pragmatic Bookshelf, Raleigh (2007), http://www.antlr.org Google Scholar

Copyright information

© Springer-Verlag GmbH Berlin Heidelberg 2012

Authors and Affiliations

  • Marek Parfieniuk
    • 1
  • Marcin Kazberuk
    • 1
  • Kamil Kowalewski
    • 1
  1. 1.Faculty of Computer ScienceBialystok University of TechnologyBialystokPoland

Personalised recommendations