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.

AM2434: Quick Way to do some Performance Tests?

Part Number: AM2434
Other Parts Discussed in Thread: UNIFLASH, CCSTUDIO

Tool/software:

Hi,

I would love to do some performance tests of some existing functions on an AM243x LaunchPad to run on one of the Cortex R5F cores to evaluate if their performance would fit our needs. The code compiles with GCC and I was able to identify and also compile the required parts of the SDK to toggle some GPIOs for profiling.

What would be the easiest way to create an image that could be booted on the LaunchPad out of the generated elf file (could also be converted to hex of cause).

best regards

Torsten

  • Hi Tortsen,

    What would be the easiest way to create an image that could be booted on the LaunchPad out of the generated elf file

    Please refer to the makefiles of the examples provided in the SDK to know how bootable image is generated from *.out file.

    Also refer TOOLS_BOOT for details.

    Regards,

    Tushar

  • Hi Tushar,

    your input gave me much more insight into the complexity of the am243x. I fiddled a little bit with the makefile of one of the second level bootloaders and managed to get my code running on the eval board and do some coarse performance tests. The results are very promising. Now, I would love to verify, that the code, indeed, ran on one of the R5F cores.

    So, I read out the 
    R5FSS_CPU0_REV (Revision register at 0x3F00D000) compared that to the expected value according to the latest documentation. The value that is documented, is : 66A0E200h, the value, that I've read out, is 66A02A01h. I can not find the value 66A02A01h neither in the reference manual, nor anywhere here on the TI website.

    On the other hand, when I try to read out R5FSS_CPU1_REV (the revision register of the second core), the CPU seem to crash (execution does not reach the code behind the read to the register).

    Do you have any idea, how I could verify that the code indeed ran on the R5F core?

    best regards

    Torsten

  • Hi Torsten,

    The value that is documented, is : 66A0E200h, the value, that I've read out, is 66A02A01h

    I am checking this information internally. Please allow some time to revert back. 

    On the other hand, when I try to read out R5FSS_CPU1_REV (the revision register of the second core), the CPU seem to crash (execution does not reach the code behind the read to the register).

    Can you please halt the core and check what instruction the CPU is executing?

    Regards,

    Tushar

  • Can you please halt the core and check what instruction the CPU is executing?

    I'm working on MacOS and I was not able to install the required components for AM243x support. I was able to install the required compiler and SDK and build the bootloader with a slightly change makefile and to upload the binary, using the newest version of Uniflash.

  • Hi Tortsen,

    You can install the CCSTUDIO for debugging purpose. The tool is available for MAC also.

    Regards,

    Tushar 

  • I have installed CCSTUDIO and I used it on a daily basis to debug C2000 microcontrollers, but I'm unable to install support for AM243x within CCSTUDIO.

  • Hi Torsten,

    Have you selected the correct family of devices during CCS installation?

    Please select the AM2x Arm-based high performance microcontrollers and Arm-based processors to install support for AM243x devices.

    Regards,

    Tushar

  • Hi Tushar,

    I figured out, that I have to completely do a new installation of CCS. I was under the impression that it would be possible to incremental install support for new device types. So far, I was not able to create a debug configuration on the fly for an existing executable (the help shows me some dialogs for the configuration, but not, how to reach that dialog) or to find one in the SDK or under the CCS installation (looking for files with the ccxml extension).

    Anyway, I started a demo project and tried to hide jack the created debug session and load my example binary. This crashed, but it crashed on Cortex_R5_0_0, which makes me quite confident, that my example really runs one that core.

    thank you and best regards

    Torsten

  • Hi Torsten,

    tried to hide jack the created debug session and load my example binary.

    By this do you mean that you have loaded the binary on R5F core?

    As I can see you are using multicore appimage, so loading a multicore appimage on single core is expected to crash.

    Regards,

    Tushar

  • The plan was, to install the image, that I've build using the makefile using Uniflash and then to use CCS to debug it to provide the information requested by you. But anyway, I think I got all information that I was looking for. Thank you!

  • Hi Torsten,

    But anyway, I think I got all information that I was looking for.

    Thanks for the confirmation. If there are no open queries we can close the thread.

    Feel free to raise new threads if required.

    Regards,

    Tushar