This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

C674x DSPLIB Release Announcement

All,

This post serves to announce the release of the C674x DSPLIB (http://wiki.davincidsp.com/index.php?title=C674x_DSPLIB), a new floating point signal processing library for devices with the C674x DSP core.  This release is based on the pre-existing C67x DSPLIB, but boasts some key improvements and features. See below summary:

  • What it is:
    • 35 Floating Point kernels
      • 23 C-language kernels (65%)
      • 11 kernels with significantly improved performance over C671x DSPLIB (31%)
      • 14 kernels that fix bugs from the C67x DSPLIB (40%)
      • Single-precision only in initial release; no double precision kernels yet
  • What are the key advantages:
    • Improved Performance:
      • All kernels match or better the performance compared to C671x DSPLIB. Ex:
        • DSPF_sp_fftSPxSP (Mixed Radix Forward FFT) – 35% improvement in cycle count
        • DSPF_sp_ifftSPxSP (Mixed Radix Inverse FFT) – 35% improvement in cycle count
        • DSPF_sp_fir_gen (FIR filter) – up to 30% improvement in cycle count (depends on filter size)
        • DSPF_sp_mat_trans (Matrix Transpose) – 30% improvement in cycle count
    • Improved Interruptibility
      • Most C kernels interruptible thanks to SPLOOP features of the core
      • All kernels interrupt tolerant.
    • Improved Customizability
      • Full source for all kernels included with library
      • “Natural C” implementation for each kernel included
      • For kernels provided in ASM, corresponding optimized C version of kernel also included to allow customization
      • For kernels provided in C, source for legacy ASM versions (from C67x DSPLIB) included to serve as reference for customers
      • Test bench and demonstration app provided for each kernel
        • Compare performance between C, ASM, and Natural C
        • Try out modified kernels without rebuilding the entire DSPLIB

  • What is the release method:

Development for the C674x DSPLIB is ongoing.  This initial release contains only kernels included with the C67x DSPLIB, and only single precision kernels at that.  Double precision kernels, new/original kernels, and more will be added in future releases. There will also be updates to make it easier for ARM developers to leverage the DSPLIB kernels on the DSP.

One final note: this DSPLIB release is a floating point library.  For fixed point algorithms, please use the existing C64x+ DSPLIB. Both libraries are compatible with the C674x DSP core.

Regards,
Joe Coombs
DSP Apps