Forum Rule: Always post complete source code & details to reproduce any issue!
Results 1 to 5 of 5

Thread: Request: update CMSIS-DSP (arm_math.h)

  1. #1
    Senior Member Blackaddr's Avatar
    Join Date
    Mar 2017
    Location
    Canada
    Posts
    170

    Request: update CMSIS-DSP (arm_math.h)

    I was starting to write with the CMSIS-DSP stuff and noticed the library (ie. arm_math.h) is version 1.1.0 from Feb 2012.

    This version is getting pretty old, I think the latest is 1.5.1 from Jan 2017.

    I'm particularly interested because it appears new, faster versions of the floating point FFTs are now available with the old ones being deprecated.

    "The main functions are arm_rfft_fast_f32() and arm_rfft_fast_init_f32(). The older functions arm_rfft_f32() and arm_rfft_init_f32() have been deprecated but are still documented."


    http://www.keil.com/pack/doc/CMSIS/D...__RealFFT.html

    These 'fast' functions do not appear to be available in the older 1.1.0.

  2. #2
    Senior Member
    Join Date
    Jul 2014
    Posts
    1,710
    Quote Originally Posted by Blackaddr View Post
    I was starting to write with the CMSIS-DSP stuff and noticed the library (ie. arm_math.h) is version 1.1.0 from Feb 2012.

    This version is getting pretty old, I think the latest is 1.5.1 from Jan 2017.

    I'm particularly interested because it appears new, faster versions of the floating point FFTs are now available with the old ones being deprecated.

    "The main functions are arm_rfft_fast_f32() and arm_rfft_fast_init_f32(). The older functions arm_rfft_f32() and arm_rfft_init_f32() have been deprecated but are still documented."


    http://www.keil.com/pack/doc/CMSIS/D...__RealFFT.html

    These 'fast' functions do not appear to be available in the older 1.1.0.
    AFAIK,
    the teensy arm_math.h and related arm files in cores/teensy3 are customized by Paul and consistent CMSIS_DSP stuff used in audio.
    CMSIS developed code further, as you rightly noted, but modified the file structure/content making painless upgrade somewhat difficult.

    My work around:
    I use DSP code from CMSIS V5, created own local DSP library to overload cores/teensy3 files and I removed the CMSIS library provided by teensyduino
    (note: CMSIS uses special compiler flag for fastest execution)
    Alternatively,
    there is another thread on this forum where instructions are given on how to modify cores/teensy3 to use updated DSP library.

  3. #3
    Senior Member Blackaddr's Avatar
    Join Date
    Mar 2017
    Location
    Canada
    Posts
    170
    Thanks WMXZ, I'll look into your suggestions.

  4. #4
    Junior Member
    Join Date
    May 2018
    Posts
    1

    Question about your modification

    Quote Originally Posted by WMXZ View Post
    AFAIK,
    the teensy arm_math.h and related arm files in cores/teensy3 are customized by Paul and consistent CMSIS_DSP stuff used in audio.
    CMSIS developed code further, as you rightly noted, but modified the file structure/content making painless upgrade somewhat difficult.

    My work around:
    I use DSP code from CMSIS V5, created own local DSP library to overload cores/teensy3 files and I removed the CMSIS library provided by teensyduino
    (note: CMSIS uses special compiler flag for fastest execution)
    Alternatively,
    there is another thread on this forum where instructions are given on how to modify cores/teensy3 to use updated DSP library.
    Hello there. I would like to use the CMSIS Pack v5.3.0, which includes DSP Library v1.5.3

    However, I'm not sure about the modifications I should do in order to make it work with Teensyduino. I already downloaded the CMSIS Pack and I would like to know where should I extract the files so that I can use these DSP functions, just as you do.

    Thanks for your time and attention, hope you can read this and help me

  5. #5
    Senior Member DD4WH's Avatar
    Join Date
    Oct 2015
    Location
    Central Europe
    Posts
    253
    you can find step-by-step instruction here (this is for CMSIS version 4.5.0, for newer versions you have to figure out by yourself how to do that ;-)):

    https://forum.pjrc.com/threads/40590...l=1#post129081

    Ignore point 1.) on the Si5351

    Follow every single step in 2.) exactly as written up.

    Good luck, have fun with the Teensy!

    Frank DD4WH

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •