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.

TMS570LS0432: about crc value

Part Number: TMS570LS0432


Hello

 I want to use tms570  crc ,first if my code flash origin  00000020  length   0005ffe0 ,How can I get the value of crc ,

 if I get the value I can put the value into the other flash area, compare the value in main loop

 I want to know how can get the crc value first 

 thank you

  • hello,

    Please refer to this useful application note:

    www.ti.com/.../spna235.pdf

  • Thank you

     I try it ,that is ok!

    I use cmd

    MEMORY
    {

    VECTORS (X) : origin=0x00000000 length=0x00000020
    FLASH0 (RX) : origin=0x00000020 length=0x0005FFE0
    STACKS (RW) : origin=0x08000000 length=0x00003C00
    RAM (RW) : origin=0x08003C00 length=0x00002800
    PROFILE(RW) : origin=0x08006400 length=0x00001000 /* Added for profiling purposes */
    LOG (RW) : origin=0x08007400 length=0x00000400 /* Added for logging purposes */
    FEE (R) : origin=0xF0200000 length=0x00000064 fill=0xDEADBEEF /* For FEE testing, Valid only for sample application */
    }

    SECTIONS
    {
    .intvecs : START( ulFlashStartAddr ) {} > VECTORS
    .text : {}palign=8, crc_table(_my_crc_table, algorithm=TMS570_CRC64_ISO) > FLASH0
    .const : END( ulFlashEndAddr )
    {} > FLASH0
    .cinit : {} > FLASH0
    .pinit : {} > FLASH0
    .STACK_DATA_svc : {. += 10240;} > STACKS, RUN_START(StackModeSVC)
    .STACK_DATA_fiq : {. += 1024;} > STACKS, RUN_START(StackModeFIQ)
    .STACK_DATA_irq : {. += 1024;} > STACKS, RUN_START(StackModeIRQ)
    .STACK_DATA_abt : {. += 1024;} > STACKS, RUN_START(StackModeABT)
    .STACK_DATA_und : {. += 1024;} > STACKS, RUN_START(StackModeUND)
    .STACK_DATA_sys : {. += 1024;} > STACKS, RUN_START(StackModeSYS)
    .bss : {} > RAM
    .data : {} > RAM
    .sysmem : {} > RAM

    LOG_DATA : START( ulLOGStartAddr ), END( ulLOGEndAddr ) > LOG
    PROFILE_DATA : START( ulPROFILEStartAddr ), END( ulPROFILEEndAddr ) > PROFILE
    }

    But now that  have a  warming #10247-D null: creating output section ".TI.crctab" without a SECTIONS specification

  • Please add following line to the SECTION{} in your linker cmd:

    SECTIONS{

          ....................

        .TI.crctab  : {} palign=8 > FLASH0 | FLASH1 /* The CRC tables generated by the linker are created in the special section .TI.crctab */

    }

    For Linker generated CRC Tables, please refer to TI ARM Assembly Language Tool user guide:

    www.ti.com/.../spnu118u.pdf