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.

CCS/HERCULES-DSPLIB: Compiling HERCULES-DSPLIB for Cortex R5F of AM65x IDK

Part Number: HERCULES-DSPLIB

Tool/software: Code Composer Studio

Hello all

,

  I'm trying to compile HERCULES-DSPLIB for ARM Cortex R5F processor using CCS .

   CCS version Version: 9.0.1.00004.

  Following are Processor configuration setting as I need to compile CMSIS lib along with sample example for ARM Cortex R5F .

  

I have imported project and try building project but I'm getting many compilation errors .

Queries 

a) Is there any steps which required to follow to run this library for ARM Cortex R5F ...? What modification is should perform to run CMSIS DSP example for R5F...?

b) As per TI documentation we can compile this lib with few IDEs but most of them are paid one . Is there any way by which we can compile this lib or example in this lib using open source toolchain ..?

Regards ,

Manish 

 

  • Hercules-DSPLIB has only been tested to work out of the box for to Hercules Safety MCUs.

    The CMSIS DSP library for AM65x is planned to be integrated in Processor SDK RTOS later in the year. I will loop in a colleague to provide timelines and updates on this porting effort.

    Regards,

    Rahul

  • Hi Manish,

    As Rahul mentions, Hercules-DSPLIB has only been tested OOB for Hercules Safety MCUs. However, I've been able to download, install, compile the little-endian, single-precision float library for AM654x R5F. I've also integrated this library into a simple bare metal application for profiling the cycle counts of a small set of the functions included in the library.

    We plan to release CMSIS_5 for R5F later this year, but the exact timing is TBD.

    Regards,
    Frank

  • Manish,

    Below are the steps I followed to build the little endian single-precision float Hercules-DSPLIB for AM654x R5F. I used the TI ARM code generation tools 18.12.1.LTS provided with Processor-SDK 6.0.

    1. Download Windows installer for Hercules-DSPLIB (link provided above by Rahul).
    2. Execute installer, install to default location, C:\ti\Hercules\Cortex-R4 CMSIS DSP Library\1.0.0
    3. Install CCS 9.0.1, add device support for Hercules devices
    4. Run CCS, import CMSIS project in root folder of Hercules-DSPLIB installation: Project->Import CCS Projects, Click Browse, browse to "C:\ti\Hercules\Cortex-R4 CMSIS DSP Library", Select Folder, click "Finish"
    5. Set "ti_match_Cortex_R4_lspf" as active Build Configuration: right-click CMSIS project, select "Properties", select "Build Configurations->Set Active->4 ti_match_Cortex_R4_lspf (Little Endian Float)"
    6. Change compiler version from TI v5.0.0 to TI v18.12.1.LTS
      • Right click CMSIS project, select "Properties".
      • Select "General" on left-hand side of window.
      • Change "Compiler version" from "TI v5.0.0" to "TI v18.12.1.LTS" on lower right-hand side of window under "Toolchain". Click "Apply and Close".
    7. Change device endianness
      • Right click CMSIS project, select "Properties".
      • Select "General" on left-hand side of window.
      • Change "Device endianness" from "be32" to "little" on lower right-hand side of window. Click "Apply and Close".
    8. Change processor version from 7R4 to 7R5: 
      • Right click CMSIS project, select "Properties".
      • Select "Build->ARM Compiler->Processor Options" on left-hand side of window.
      • Change "Target processor version" from "7R4" to "7R5" on right-hand side of window.
    9. Change archiver output file
      • Right click CMSIS project, select "Properties".
      • Select "Build->ARM Archiver->Basic Options" on left-hand side of window.
      • Change "Output file" from "M:/Data/Software/CMSIS/Lib/ti_math_Cortex_R4_b.lib" to desired output, e.g. C:/Data/Software/CMSIS/Lib/ti_math_Cortex_R4_lspf.lib.
    10. Build library: right-click CMSIS project, select "Build Project".

    Regards,
    Frank

  • Thanks for valuable information . Actually I have tried similar steps but its doesn't worked for me . I will verify If any step is missed and try to compile once again.

    Thanks again for detail explanation .

  • Manish,

    Understood, if you continue to see build problems can you please share the build errors you observe?

    For your reference, here's my build log: 7558.build_log.txt

    Thanks,
    Frank

  • Sure . I will share build errors in case of issue .

    Thanks ,

    Manish

  • Hi Frank,

    While Manish was asking for a DSP library that's specific to the R5F cores, we're likely to need a DSP library for the A53 cores.
    Will the CMSIS DSP library that you've described also run on an A53 core?

    Thanks,
    Roger

    Roger Cox, Project Lead
    Power Components - Meters and Relays, Eaton
    1000 Cherrington Parkway
    Moon Township, PA 15108-4312

    RogerWCox@Eaton.com
    tel: +1 412-893-3271

  • Hi Roger,

    I'm not sure if CMSIS will run on an A53 core. If it runs I'd be concerned it wasn't taking full advantage of the NEON hardware available on the A53.

    Details on the CMSIS library can be obtained here: https://github.com/ARM-software/CMSIS_5.

    In https://github.com/ARM-software/CMSIS_5#overview-of-cmsis-components, I notice the following: 

    Regards,
    Frank