0

TI Code Composer Studio 5.5 (TI ARM 컴파일러 5.1.1)에서 전체 프로젝트에 대한 링커 정렬을 설정해야합니다.CCSv5에서 전체 프로젝트의 정렬을 어떻게 설정합니까?

이 내 링커 .cmd 파일입니다 :

MEMORY 
{ 
    BOOTROM: o = 0x40020000 l = 0x0000C000 /* 48kB public boot ROM */ 
    SRAM:  o = 0x402F0400 l = 0x0000FC00 /* 64kB internal SRAM */ 
    L3OCMC0: o = 0x40300000 l = 0x00010000 /* 64kB L3 OCMC SRAM */ 
    M3SHUMEM: o = 0x44D00000 l = 0x00004000 /* 16kB M3 Shared Unified Code Space */ 
    M3SHDMEM: o = 0x44D80000 l = 0x00002000 /* 8kB M3 Shared Data Memory */ 
    DDR0:  o = 0x80000000 l = 0x10000000 /* 256MB external DDR Bank 0 */  
} 

SECTIONS 
{ 
    .align   8 

    .text   > DDR0 
    .stack   > DDR0 
         RUN_START(stack_start) 
         RUN_END(stack_end) 
    .bss   > DDR0 
         RUN_START(bss_start) 
         RUN_END(bss_end) 
    .cio   > DDR0 
    .const   > DDR0 
    .data   > DDR0 
    .switch  > DDR0 
    .sysmem  > DDR0 
    .far   > DDR0 
    .args   > DDR0 
    .ppinfo  > DDR0 
    .ppdata  > DDR0 

    /* TI-ABI or COFF sections */ 
    .pinit   > DDR0 
    .cinit   > DDR0 

    /* EABI sections */ 
    .binit   > DDR0 
    .init_array > DDR0 
    .neardata  > DDR0 
    .fardata  > DDR0 
    .rodata  > DDR0 
    .c6xabi.exidx > DDR0 
    .c6xabi.extab > DDR0  
} 

.align 8이 일을하지 않았다. 결과 맵 파일에서 4 또는 C로 끝나는 주소를 가진 많은 심볼을 볼 수 있습니다. 모든 심볼이 8의 배수로 정렬 된 경우 주소는 0 또는 8로 끝납니다.

올바른 명령을 사용하여 링커 정렬을 64 비트로 설정 하시겠습니까?

답변

0

문제 해결, Mr George Mock, TI의 호의.

.text   > DDR0 ALIGN(8) 
.stack   > DDR0 
        RUN_START(stack_start) 
        RUN_END(stack_end) 
        ALIGN(8) 
/* ... and so on */ 
:

그는 e2e.ti.com에 다음과 같은 예를 썼다