Skip to main content
Andrei Chichak
Lead
December 21, 2023
Question

CMSIS pack DSP libraries aren't being stitched into projects

STM32CubeIDE 1.14.0

STM32H563ZI Nucleo board

In <Software Packs> <Manage Software Packs><ARM> install CMSIS 5.6.0

In <Software Packs><Select Components> and select <CMSIS DSP> 1.7.0 <Library> and hit OK

So, this should do "The Right Thing", except it doesn't actually pull the proper .lib or .a or ??? out of the pack and stitch it into the project in <Drivers><CMSIS><should be Library>. Bummer.

For this processor there are 5 candidate libraries available, all I know is that I have a arm8m, so:

 

 

arm_ARMv8MBLl_math.lib
arm_ARMv8MMLl_math.lib
arm_ARMv8MMLld_math.lib
arm_ARMv8MMLldfsp_math.lib
arm_ARMv8MMLlfsp_math.lib

 

 

 Any chance that, in the future, the .lib or .a file be copied into the project and the appropriate gcc flags get thrown to find the file?

In the mean time, any idea which .lib/.a file is appropriate for an H563?

 

Thanks,

Andrei (from The Great White North)

This topic has been closed for replies.

2 replies

Piranha
Principal III
December 22, 2023

Most likely:

  • d - debug
  • fsp - floating point single precision

Take a note that CMSIS 5.8.0 removed the pre-built DSP libraries, therefore in the "future" there are no .lib/.a files at all. In addition the recently released CMSIS 6.0.0 moved the CMSIS-DSP into a separate library.

Andrei Chichak
Lead
January 3, 2024

After a bunch of experimentation, when using STM32CubeIDE, you/I should use the .a files. 

In the library names:

The processor is an ARMv8M.

There is one character (B|M) which indicates if you are using a baseline or mainline processor with no indication of what those terms mean.

No indication what the next 'L' means. Maybe BL and ML, for BaseLine and MainLine?

The small 'l' (el) means little endian. There are other libraries that use 'b' for big endian.

Apparently the 'd' character means DSP, and fsp does mean floating point single precision.

Any comments from ARM or ST with some information beyond conjecture?

Thanks,

Andrei