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.

TMS320C6748: How can I confirm that the L1P cache is enable for the code?

Part Number: TMS320C6748

Hi!

    I am testing the read speed of nand flash using the DMA mode,I found when starting the DMA transfer and finishing the transfer,there are more code processing time before real transfer and after the transfer,I watch the OE(read) signal and using a GPIO to notice the start and finsh point of DMA transfer.so I guess maybe this is caused that the code is processing in the DDR(clock is 150M),so I want to let the code process in the L1P cache,I use the demo code of cache,but we don't know weather the cache is enable.the operation is below:(I don't use the RTOS)

1. CacheEnableMAR((unsigned int)0xc0000000 NAND_DATA_BUFF_SIZE/2);     //set the DDR address to the cache

/* Enable Cache */
CacheEnable(L1PCFG_L1PMODE_32K | L1DCFG_L1DMODE_32K | L2CFG_L2MODE_256K);

     Is it correct?how can I do to enabel the L1P cache for the code?

   One more thing:

I also try to edit the cmd file that change the map from DDR to L2,but the code processing time is not changed. Below is the cmd data: Why

// ============================================================================
// Linker Command File for Linking c674 DSP Programs
//
// These linker options are for command line linking only. For IDE linking,
// you should set your linker options in Project Properties.
// -c Link Using C Conventions
// -stack 0x1000 Software Stack Size
// -heap 0x1000 Heap Area Size
// ===========================================================================
-stack 0x1000
-heap 0x1000

// ============================================================================
// Specify the System Memory Map
// ============================================================================
MEMORY
{
L1P: o = 0x11E00000 l = 0x00008000
L1D: o = 0x11F00000 l = 0x00008000
L2: o = 0x11800000 l = 0x00040000
DDR2: o = 0xC0000000 l = 0x08000000
}

// ============================================================================
// Specify the Sections Allocation into Memory
// ============================================================================
SECTIONS
{
// .cinit > DDR2 // Initialization Tables
// .pinit > DDR2 // Constructor Tables
// .init_array > DDR2 //
// .binit > DDR2 // Boot Tables
// .const > DDR2 // Constant Data
// .switch > DDR2 // Jump Tables
// .text > DDR2 // Executable Code
// .text:_c_int00: align=1024 > DDR2 // Entrypoint
//
// GROUP (NEARDP_DATA) // group near data
// {
// .neardata
// .rodata
// .bss // note: removed fill = 0
// } > DDR2
// .far: fill = 0x0, load > DDR2 // Far Global & Static Variables
// .fardata > DDR2 // Far RW Data
// .stack > DDR2 // Software System Stack
// .sysmem > DDR2 // Dynamic Memory Allocation Area
//
// .cio > DDR2 // C I/O Buffer
// .vecs > DDR2 // Interrupt Vectors

.cinit > L2 // Initialization Tables
.pinit > L2 // Constructor Tables
.init_array > L2 //
.binit > L2 // Boot Tables
.const > L2 // Constant Data
.switch > L2 // Jump Tables
.text > L2 // Executable Code
.text:_c_int00: align=1024 > L2 // Entrypoint

GROUP (NEARDP_DATA) // group near data
{
.neardata
.rodata
.bss // note: removed fill = 0
} > L2
.far: fill = 0x0, load > L2 // Far Global & Static Variables
.fardata > L2 // Far RW Data
.stack > L2 // Software System Stack
.sysmem > L2 // Dynamic Memory Allocation Area

.cio > L2 // C I/O Buffer
.vecs > L2 // Interrupt Vectors
}

Thanks a lot.

  • Hi,

    Thanks for your post. Due to the Easter Holiday in the US, we will not be able to get back to you until early next week. We're sorry for the delay.
  • Hi,

    Any Update? thanks!
  • Hello,

    It looks like you are missing a "," between the DDR location and size in CacheEnableMAR(). Not sure if that was a typo when copying it over to this thread but I wanted to point that out just in case.

    Other than that, your cache configuration looks correct. On this device, L1D and L1P should enabled as all cache by default though.

    Have you tried doing some profiling with and without your cache configuration? Are you seeing a difference in performance?

    You should definitely see a performance improvement if you place your application into L2.

    What does your map file look like?

    Regards,
    Sahin
  • Hi Sahin,

       Missing “,” is  a typo,thanks.

       Actually I make a delay test code to check the performance,but the best one is like running in L2,so I am not sure wether the code runing in L1P or L1D.

      please see the attached map file,thanks.

    ******************************************************************************
                   TMS320C6x Linker PC v7.4.4                      
    ******************************************************************************
    >> Linked Fri Apr 19 17:27:04 2019
    
    OUTPUT FILE NAME:   <nandReadWrite.out>
    ENTRY POINT SYMBOL: "_c_int00"  address: 1180c800
    
    
    MEMORY CONFIGURATION
    
             name            origin    length      used     unused   attr    fill
    ----------------------  --------  ---------  --------  --------  ----  --------
      L2                    11800000   00040000  0000c708  000338f8  RWIX
      L1P                   11e00000   00008000  00000000  00008000  RWIX
      L1D                   11f00000   00008000  00000000  00008000  RWIX
      DDR2                  c0000000   08000000  00000000  08000000  RWIX
    
    
    SEGMENT ALLOCATION MAP
    
    run origin  load origin   length   init length attrs members
    ----------  ----------- ---------- ----------- ----- -------
    11800000    11800000    00009d00   00009d00    r-x
      11800000    11800000    00009d00   00009d00    r-x .text
    11809d00    11809d00    00002280   00001280    rw-
      11809d00    11809d00    00001280   00001280    rw- .far
      1180af80    1180af80    00001000   00000000    rw- .stack
    1180bf80    1180bf80    00000680   00000680    r--
      1180bf80    1180bf80    0000054c   0000054c    r-- .const
      1180c4cc    1180c4cc    00000134   00000134    r-- .switch
    1180c600    1180c600    00000010   00000010    rw-
      1180c600    1180c600    0000000c   0000000c    rw- .fardata
      1180c60c    1180c60c    00000004   00000004    rw- .neardata
    1180c610    1180c610    00000004   00000004    r--
      1180c610    1180c610    00000004   00000004    r-- .rodata
    1180c614    1180c614    00000004   00000000    rw-
      1180c614    1180c614    00000004   00000000    rw- .bss
    1180c618    1180c618    00000070   00000070    r--
      1180c618    1180c618    00000070   00000070    r-- .cinit
    1180c800    1180c800    00000080   00000080    r-x
      1180c800    1180c800    00000080   00000080    r-x .text:_c_int00
    
    
    SECTION ALLOCATION MAP
    
     output                                  attributes/
    section   page    origin      length       input sections
    --------  ----  ----------  ----------   ----------------
    .init_array 
    *          0    11800000    00000000     UNINITIALIZED
    
    .text      0    11800000    00009d00     
                      11800000    00001aa0     system_config.lib : interrupt.obj (.text:retain)
                      11801aa0    000017c0     edma.obj (.text)
                      11803260    00000f80     emifa.obj (.text)
                      118041e0    00000e60     nandlib.obj (.text)
                      11805040    00000b60     utils.lib : uartStdio.obj (.text)
                      11805ba0    00000ac0     nandReadWrite.obj (.text)
                      11806660    00000aa0     nand_emifa2.obj (.text)
                      11807100    000005e0     system_config.lib : interrupt.obj (.text)
                      118076e0    00000580     drivers.lib : gpio.obj (.text)
                      11807c60    00000580                 : uart.obj (.text)
                      118081e0    00000540     nandDma.obj (.text)
                      11808720    00000420     cache.obj (.text)
                      11808b40    000000c0     rts6740_elf.lib : divu.obj (.text:__divu)
                      11808c00    00000200     system_config.lib : intvecs.obj (.text)
                      11808e00    00000180     rts6740_elf.lib : copy_decompress_rle.obj (.text:__TI_decompress_rle_core)
                      11808f80    00000180     platform.lib : uart.obj (.text)
                      11809100    00000140     drivers.lib : psc.obj (.text)
                      11809240    00000100     rts6740_elf.lib : autoinit.obj (.text:_auto_init_elf)
                      11809340    00000100                     : cpy_tbl.obj (.text:copy_in)
                      11809440    000000e0                     : divi.obj (.text:__divi)
                      11809520    000000e0                     : copy_zero_init.obj (.text:decompress:ZI:__TI_zero_init)
                      11809600    000000e0                     : memset.obj (.text:memset)
                      118096e0    000000e0     platform.lib : emifa.obj (.text)
                      118097c0    000000e0                  : uartConsole.obj (.text)
                      118098a0    000000c0     rts6740_elf.lib : exit.obj (.text:exit)
                      11809960    000000c0                     : tls.obj (.text:tls:init:__TI_tls_init)
                      11809a20    000000a0                     : remu.obj (.text:__remu)
                      11809ac0    000000a0                     : memcpy64.obj (.text:memcpy)
                      11809b60    00000080     gpio.obj (.text)
                      11809be0    00000060     rts6740_elf.lib : cpp_init.obj (.text:__TI_cpp_init)
                      11809c40    00000040                     : args_main.obj (.text:_args_main)
                      11809c80    00000020                     : exit.obj (.text:abort)
                      11809ca0    00000020                     : copy_decompress_none.obj (.text:decompress:none:__TI_decompress_none)
                      11809cc0    00000020                     : copy_decompress_rle.obj (.text:decompress:rle24:__TI_decompress_rle24)
                      11809ce0    00000020     platform.lib : edma.obj (.text)
    
    .far       0    11809d00    00001280     
                      11809d00    00001040     nandReadWrite.obj (.far) [fill = 0]
                      1180ad40    00000240     system_config.lib : interrupt.obj (.far) [fill = 0]
    
    .stack     0    1180af80    00001000     UNINITIALIZED
                      1180af80    00000008     rts6740_elf.lib : boot.obj (.stack)
                      1180af88    00000ff8     --HOLE--
    
    .const     0    1180bf80    0000054c     
                      1180bf80    00000508     nandReadWrite.obj (.const:.string)
                      1180c488    00000028     nandDma.obj (.const:.string)
                      1180c4b0    0000001c     utils.lib : uartStdio.obj (.const:.string)
    
    .switch    0    1180c4cc    00000134     
                      1180c4cc    00000030     emifa.obj (.switch:EMIFANANDEccValGet)
                      1180c4fc    00000024     utils.lib : uartStdio.obj (.switch:UARTprintf)
                      1180c520    00000010     emifa.obj (.switch:EMIFAAsyncDevDataBusWidthSelect)
                      1180c530    00000010     emifa.obj (.switch:EMIFAAsyncDevOpModeSelect)
                      1180c540    00000010     emifa.obj (.switch:EMIFACSWaitPinSelect)
                      1180c550    00000010     emifa.obj (.switch:EMIFAExtendedWaitConfig)
                      1180c560    00000010     emifa.obj (.switch:EMIFANAND4BitECCSelect)
                      1180c570    00000010     emifa.obj (.switch:EMIFANAND4BitEccErrAddrGet)
                      1180c580    00000010     emifa.obj (.switch:EMIFANAND4BitEccErrValGet)
                      1180c590    00000010     emifa.obj (.switch:EMIFANANDCSSet)
                      1180c5a0    00000010     emifa.obj (.switch:EMIFANANDECCStart)
                      1180c5b0    00000010     emifa.obj (.switch:EMIFANORPageAccessDelaySet)
                      1180c5c0    00000010     emifa.obj (.switch:EMIFANORPageModeConfig)
                      1180c5d0    00000010     emifa.obj (.switch:EMIFANORPageSizeSet)
                      1180c5e0    00000010     emifa.obj (.switch:EMIFAWaitTimingConfig)
                      1180c5f0    00000010     drivers.lib : gpio.obj (.switch:GPIOIntTypeSet)
    
    .fardata   0    1180c600    0000000c     
                      1180c600    0000000c     rts6740_elf.lib : exit.obj (.fardata)
    
    .neardata 
    *          0    1180c60c    00000004     
                      1180c60c    00000004     nandDma.obj (.neardata)
    
    .rodata    0    1180c610    00000004     
                      1180c610    00000004     utils.lib : uartStdio.obj (.rodata)
    
    .bss       0    1180c614    00000004     UNINITIALIZED
                      1180c614    00000004     edma.obj (.bss)
    
    .cinit     0    1180c618    00000070     
                      1180c618    0000000d     (.cinit..fardata.load) [load image, compression = rle]
                      1180c625    00000003     --HOLE-- [fill = 0]
                      1180c628    0000000c     (__TI_handler_table)
                      1180c634    0000000b     (.cinit..far.load) [load image, compression = rle]
                      1180c63f    00000001     --HOLE-- [fill = 0]
                      1180c640    0000000a     (.cinit..rodata.load) [load image, compression = rle]
                      1180c64a    00000002     --HOLE-- [fill = 0]
                      1180c64c    00000009     (.cinit..neardata.load) [load image, compression = rle]
                      1180c655    00000003     --HOLE-- [fill = 0]
                      1180c658    00000008     (.cinit..bss.load) [load image, compression = zero_init]
                      1180c660    00000028     (__TI_cinit_table)
    
    .text:_c_int00 
    *          0    1180c800    00000080     
                      1180c800    00000080     rts6740_elf.lib : boot.obj (.text:_c_int00)
    
    
    LINKER GENERATED COPY TABLES
    
    __TI_cinit_table @ 1180c660 records: 5, size/record: 8, table size: 40
    	.fardata: load addr=1180c618, load size=0000000d bytes, run addr=1180c600, run size=0000000c bytes, compression=rle
    	.far: load addr=1180c634, load size=0000000b bytes, run addr=11809d00, run size=00001280 bytes, compression=rle
    	.rodata: load addr=1180c640, load size=0000000a bytes, run addr=1180c610, run size=00000004 bytes, compression=rle
    	.neardata: load addr=1180c64c, load size=00000009 bytes, run addr=1180c60c, run size=00000004 bytes, compression=rle
    	.bss: load addr=1180c658, load size=00000008 bytes, run addr=1180c614, run size=00000004 bytes, compression=zero_init
    
    
    LINKER GENERATED HANDLER TABLE
    
    __TI_handler_table @ 1180c628 records: 3, size/record: 4, table size: 12
    	index: 0, handler: __TI_decompress_rle24
    	index: 1, handler: __TI_decompress_none
    	index: 2, handler: __TI_zero_init
    
    
    GLOBAL SYMBOLS: SORTED ALPHABETICALLY BY Name 
    
    address    name
    --------   ----
    11809c80   C$$EXIT
    11808a20   CacheDisableMAR
    118088a8   CacheEnable
    11808988   CacheEnableMAR
    11808ad4   CacheInv
    11808aac   CacheInvL1pAll
    11808af0   CacheWB
    11808ab8   CacheWBAll
    11808b0c   CacheWBInv
    11808ac8   CacheWBInvAll
    11801e20   EDMA3ChannelToParamMap
    11802bc8   EDMA3ClearErrorBits
    118021c4   EDMA3ClrCCErr
    11802268   EDMA3ClrEvt
    1180265c   EDMA3ClrIntr
    118020b4   EDMA3ClrMissEvt
    11803068   EDMA3ContextRestore
    11802e84   EDMA3ContextSave
    11802d64   EDMA3Deinit
    11801d5c   EDMA3DisableChInShadowReg
    11802378   EDMA3DisableDmaEvt
    118025d4   EDMA3DisableEvtIntr
    1180242c   EDMA3DisableQdmaEvt
    11802b38   EDMA3DisableTransfer
    11801c94   EDMA3EnableChInShadowReg
    118022f0   EDMA3EnableDmaEvt
    1180254c   EDMA3EnableEvtIntr
    118023fc   EDMA3EnableQdmaEvt
    11802aac   EDMA3EnableTransfer
    11802504   EDMA3ErrIntrHighStatusGet
    11802a0c   EDMA3FreeChannel
    11802460   EDMA3GetCCErrStatus
    118024e0   EDMA3GetErrIntrStatus
    11802484   EDMA3GetIntrStatus
    118026c4   EDMA3GetPaRAM
    11801aa0   EDMA3Init
    118024b0   EDMA3IntrStatusHighGet
    11801e44   EDMA3MapChToEvtQ
    11801f8c   EDMA3MapQdmaChToPaRAM
    11801c80   EDMA3PeripheralIdGet
    1180216c   EDMA3QdmaClrMissEvt
    11802528   EDMA3QdmaGetErrIntrStatus
    11802728   EDMA3QdmaGetPaRAM
    118028a4   EDMA3QdmaGetPaRAMEntry
    118027f8   EDMA3QdmaSetPaRAM
    11802864   EDMA3QdmaSetPaRAMEntry
    118028ec   EDMA3RequestChannel
    118021e4   EDMA3SetEvt
    1180278c   EDMA3SetPaRAM
    11802078   EDMA3SetQdmaTrigWord
    11801f08   EDMA3UnmapChToEvtQ
    11809ce0   EDMAVersionGet
    118035f8   EMIFAAsyncDevDataBusWidthSelect
    118036a4   EMIFAAsyncDevOpModeSelect
    11803488   EMIFACSWaitPinSelect
    118096e0   EMIFAClkConfig
    11803760   EMIFAExtendedWaitConfig
    11803448   EMIFAMaxExtWaitCycleSet
    11803260   EMIFAModuleIdRead
    1180406c   EMIFAMskedIntClear
    11804150   EMIFAMskedIntDisable
    118040e0   EMIFAMskedIntEnable
    11804004   EMIFAMskedIntStatusRead
    11803300   EMIFANAND4BitECCAddrCalcStart
    11803bb8   EMIFANAND4BitECCLoad
    11803970   EMIFANAND4BitECCNumOfErrsGet
    118033b8   EMIFANAND4BitECCSelect
    11803950   EMIFANAND4BitECCStateGet
    11803d48   EMIFANAND4BitEccErrAddrGet
    11803de8   EMIFANAND4BitEccErrValGet
    11803278   EMIFANANDCSSet
    1180702c   EMIFANANDDMAXfer
    11806fa0   EMIFANANDECCCalculate
    11806fd8   EMIFANANDECCCheckAndCorrect
    11806f6c   EMIFANANDECCDisable
    11806f04   EMIFANANDECCEnable
    11806ec4   EMIFANANDECCInit
    11806f90   EMIFANANDECCReadSet
    11803320   EMIFANANDECCStart
    11806f80   EMIFANANDECCWriteSet
    11803be4   EMIFANANDEccValGet
    118086b4   EMIFANANDEdmaInit
    11806d30   EMIFANANDInit
    11806d00   EMIFANANDWaitPinStatusGet
    1180864c   EMIFANANDXferSetup
    118086ac   EMIFANANDXferStatusGet
    11803b04   EMIFANORPageAccessDelaySet
    11803990   EMIFANORPageModeConfig
    11803a48   EMIFANORPageSizeSet
    11803f90   EMIFARawIntClear
    11803f28   EMIFARawIntStatusRead
    11803818   EMIFASDRAMConfig
    11803870   EMIFASDRAMPowDownModeConfig
    118038a0   EMIFASDRAMRefDurPowDownModeEnable
    118038b8   EMIFASDRAMRefRateSet
    118038ec   EMIFASDRAMSelfRefExitTimeConfig
    11803844   EMIFASDRAMSelfRefModeConfig
    118038d4   EMIFASDRAMTimingConfig
    118035a8   EMIFAWaitPinPolaritySet
    11803908   EMIFAWaitPinStatusGet
    11803e88   EMIFAWaitTimingConfig
    11807558   ExcCombineAdd
    118075a0   ExcCombineRemove
    11807538   ExcGlobalEnable
    11809b60   GPIOBank4Pin0PinMuxSetup
    11809b98   GPIOBank4Pin1PinMuxSetup
    11807b84   GPIOBankIntDisable
    11807b54   GPIOBankIntEnable
    11807bb0   GPIOBankPinsWrite
    11807778   GPIODirModeGet
    118076e0   GPIODirModeSet
    11807a24   GPIOIntTypeGet
    118078b8   GPIOIntTypeSet
    11807b0c   GPIOPinIntClear
    11807aac   GPIOPinIntStatus
    11807858   GPIOPinRead
    118077d8   GPIOPinWrite
    11807100   IntDSPINTCInit
    118074b0   IntDisable
    11807480   IntEnable
    11807278   IntEventClear
    118073b4   IntEventCombineAdd
    118072b0   IntEventCombineInit
    11807458   IntEventCombineRegister
    11807408   IntEventCombineRemove
    118071bc   IntEventMap
    11807244   IntEventSet
    1180750c   IntGlobalDisable
    118074f8   IntGlobalEnable
    11807520   IntGlobalRestore
    11807170   IntRegister
    118074e4   IntReset
    11807194   IntUnRegister
    11804ee4   NANDBadBlockCheck
    11804820   NANDBlockErase
    11804f90   NANDMarkBlockAsBad
    118045b0   NANDOpen
    11804b34   NANDPageRead
    118048ac   NANDPageWrite
    118096f8   NANDPinMuxSetup
    118046ec   NANDReadId
    118046d0   NANDReset
    11804664   NANDWaitUntilReady
    11809100   PSCModuleControl
    118080c4   UARTBreakCtl
    11807fb4   UARTCharGet
    11807f88   UARTCharGetNonBlocking
    11807ff0   UARTCharPut
    11807f48   UARTCharPutNonBlocking
    11807ef8   UARTCharsAvail
    11807cf4   UARTConfigGetExpClk
    11807c60   UARTConfigSetExpClk
    11809880   UARTConsoleGetc
    11809820   UARTConsoleInit
    11809858   UARTConsolePutc
    11807dcc   UARTDMADisable
    11807dac   UARTDMAEnable
    11807e74   UARTDisable
    11807e58   UARTEnable
    11807eb4   UARTFIFODisable
    11807ea0   UARTFIFOEnable
    11807d88   UARTFIFOLevelSet
    118053f4   UARTGetHexNum
    11805334   UARTGetNum
    118056a4   UARTGetc
    118050e4   UARTGets
    11808070   UARTIntDisable
    11808048   UARTIntEnable
    11808098   UARTIntStatus
    11808150   UARTModemControlClear
    11808184   UARTModemControlGet
    118080f8   UARTModemControlSet
    118081a4   UARTModemStatusGet
    11807e34   UARTParityModeGet
    11807dec   UARTParityModeSet
    11808f80   UARTPinMuxSetup
    11805244   UARTPutHexNum
    11805180   UARTPutNum
    1180568c   UARTPutc
    1180504c   UARTPuts
    11807f28   UARTRxErrorGet
    11807ecc   UARTSpaceAvail
    11805040   UARTStdioInit
    11805714   UARTprintf
    118056b0   UARTwrite
    1180c660   __TI_CINIT_Base
    1180c688   __TI_CINIT_Limit
    1180c628   __TI_Handler_Table_Base
    1180c634   __TI_Handler_Table_Limit
    UNDEFED    __TI_INITARRAY_Base
    UNDEFED    __TI_INITARRAY_Limit
    1180bf80   __TI_STACK_END
    00001000   __TI_STACK_SIZE
    1180c60c   __TI_STATIC_BASE
    UNDEFED    __TI_TLS_INIT_Base
    UNDEFED    __TI_TLS_INIT_Limit
    00000001   __TI_args_main
    11809be0   __TI_cpp_init
    11809ca0   __TI_decompress_none
    11809cc0   __TI_decompress_rle24
    1180c608   __TI_enable_exit_profile_output
    ffffffff   __TI_pprof_out_hndl
    ffffffff   __TI_prof_data_size
    ffffffff   __TI_prof_data_start
    11809960   __TI_tls_init
    11809520   __TI_zero_init
    ffffffff   __binit__
    11809440   __c6xabi_divi
    11808b40   __c6xabi_divu
    11809a20   __c6xabi_remu
    ffffffff   __c_args__
    11809440   __divi
    11808b40   __divu
    11809a20   __remu
    11809c40   _args_main
    11809240   _auto_init_elf
    11800ff8   _c674x_mask_int10_isr
    118011c0   _c674x_mask_int11_isr
    11801384   _c674x_mask_int12_isr
    11801548   _c674x_mask_int13_isr
    11801710   _c674x_mask_int14_isr
    118018d8   _c674x_mask_int15_isr
    11800550   _c674x_mask_int4_isr
    11800718   _c674x_mask_int5_isr
    118008e0   _c674x_mask_int6_isr
    11800aa4   _c674x_mask_int7_isr
    11800c68   _c674x_mask_int8_isr
    11800e30   _c674x_mask_int9_isr
    11800000   _c674x_nmi_isr
    118001c4   _c674x_rsvd_int2_isr
    11800388   _c674x_rsvd_int3_isr
    1180c800   _c_int00
    1180c600   _cleanup_ptr
    1180c604   _dtors_ptr
    11808c00   _intcVectorTable
    1180af80   _stack
    11809c80   abort
    ffffffff   binit
    11809340   copy_in
    1180ad00   eccData
    118098a0   exit
    11806168   main
    11809ac0   memcpy
    11809600   memset
    1180c614   regionId
    1180a500   rxData
    11809d00   txData
    
    
    GLOBAL SYMBOLS: SORTED BY Symbol Address 
    
    address    name
    --------   ----
    00000001   __TI_args_main
    00001000   __TI_STACK_SIZE
    11800000   _c674x_nmi_isr
    118001c4   _c674x_rsvd_int2_isr
    11800388   _c674x_rsvd_int3_isr
    11800550   _c674x_mask_int4_isr
    11800718   _c674x_mask_int5_isr
    118008e0   _c674x_mask_int6_isr
    11800aa4   _c674x_mask_int7_isr
    11800c68   _c674x_mask_int8_isr
    11800e30   _c674x_mask_int9_isr
    11800ff8   _c674x_mask_int10_isr
    118011c0   _c674x_mask_int11_isr
    11801384   _c674x_mask_int12_isr
    11801548   _c674x_mask_int13_isr
    11801710   _c674x_mask_int14_isr
    118018d8   _c674x_mask_int15_isr
    11801aa0   EDMA3Init
    11801c80   EDMA3PeripheralIdGet
    11801c94   EDMA3EnableChInShadowReg
    11801d5c   EDMA3DisableChInShadowReg
    11801e20   EDMA3ChannelToParamMap
    11801e44   EDMA3MapChToEvtQ
    11801f08   EDMA3UnmapChToEvtQ
    11801f8c   EDMA3MapQdmaChToPaRAM
    11802078   EDMA3SetQdmaTrigWord
    118020b4   EDMA3ClrMissEvt
    1180216c   EDMA3QdmaClrMissEvt
    118021c4   EDMA3ClrCCErr
    118021e4   EDMA3SetEvt
    11802268   EDMA3ClrEvt
    118022f0   EDMA3EnableDmaEvt
    11802378   EDMA3DisableDmaEvt
    118023fc   EDMA3EnableQdmaEvt
    1180242c   EDMA3DisableQdmaEvt
    11802460   EDMA3GetCCErrStatus
    11802484   EDMA3GetIntrStatus
    118024b0   EDMA3IntrStatusHighGet
    118024e0   EDMA3GetErrIntrStatus
    11802504   EDMA3ErrIntrHighStatusGet
    11802528   EDMA3QdmaGetErrIntrStatus
    1180254c   EDMA3EnableEvtIntr
    118025d4   EDMA3DisableEvtIntr
    1180265c   EDMA3ClrIntr
    118026c4   EDMA3GetPaRAM
    11802728   EDMA3QdmaGetPaRAM
    1180278c   EDMA3SetPaRAM
    118027f8   EDMA3QdmaSetPaRAM
    11802864   EDMA3QdmaSetPaRAMEntry
    118028a4   EDMA3QdmaGetPaRAMEntry
    118028ec   EDMA3RequestChannel
    11802a0c   EDMA3FreeChannel
    11802aac   EDMA3EnableTransfer
    11802b38   EDMA3DisableTransfer
    11802bc8   EDMA3ClearErrorBits
    11802d64   EDMA3Deinit
    11802e84   EDMA3ContextSave
    11803068   EDMA3ContextRestore
    11803260   EMIFAModuleIdRead
    11803278   EMIFANANDCSSet
    11803300   EMIFANAND4BitECCAddrCalcStart
    11803320   EMIFANANDECCStart
    118033b8   EMIFANAND4BitECCSelect
    11803448   EMIFAMaxExtWaitCycleSet
    11803488   EMIFACSWaitPinSelect
    118035a8   EMIFAWaitPinPolaritySet
    118035f8   EMIFAAsyncDevDataBusWidthSelect
    118036a4   EMIFAAsyncDevOpModeSelect
    11803760   EMIFAExtendedWaitConfig
    11803818   EMIFASDRAMConfig
    11803844   EMIFASDRAMSelfRefModeConfig
    11803870   EMIFASDRAMPowDownModeConfig
    118038a0   EMIFASDRAMRefDurPowDownModeEnable
    118038b8   EMIFASDRAMRefRateSet
    118038d4   EMIFASDRAMTimingConfig
    118038ec   EMIFASDRAMSelfRefExitTimeConfig
    11803908   EMIFAWaitPinStatusGet
    11803950   EMIFANAND4BitECCStateGet
    11803970   EMIFANAND4BitECCNumOfErrsGet
    11803990   EMIFANORPageModeConfig
    11803a48   EMIFANORPageSizeSet
    11803b04   EMIFANORPageAccessDelaySet
    11803bb8   EMIFANAND4BitECCLoad
    11803be4   EMIFANANDEccValGet
    11803d48   EMIFANAND4BitEccErrAddrGet
    11803de8   EMIFANAND4BitEccErrValGet
    11803e88   EMIFAWaitTimingConfig
    11803f28   EMIFARawIntStatusRead
    11803f90   EMIFARawIntClear
    11804004   EMIFAMskedIntStatusRead
    1180406c   EMIFAMskedIntClear
    118040e0   EMIFAMskedIntEnable
    11804150   EMIFAMskedIntDisable
    118045b0   NANDOpen
    11804664   NANDWaitUntilReady
    118046d0   NANDReset
    118046ec   NANDReadId
    11804820   NANDBlockErase
    118048ac   NANDPageWrite
    11804b34   NANDPageRead
    11804ee4   NANDBadBlockCheck
    11804f90   NANDMarkBlockAsBad
    11805040   UARTStdioInit
    1180504c   UARTPuts
    118050e4   UARTGets
    11805180   UARTPutNum
    11805244   UARTPutHexNum
    11805334   UARTGetNum
    118053f4   UARTGetHexNum
    1180568c   UARTPutc
    118056a4   UARTGetc
    118056b0   UARTwrite
    11805714   UARTprintf
    11806168   main
    11806d00   EMIFANANDWaitPinStatusGet
    11806d30   EMIFANANDInit
    11806ec4   EMIFANANDECCInit
    11806f04   EMIFANANDECCEnable
    11806f6c   EMIFANANDECCDisable
    11806f80   EMIFANANDECCWriteSet
    11806f90   EMIFANANDECCReadSet
    11806fa0   EMIFANANDECCCalculate
    11806fd8   EMIFANANDECCCheckAndCorrect
    1180702c   EMIFANANDDMAXfer
    11807100   IntDSPINTCInit
    11807170   IntRegister
    11807194   IntUnRegister
    118071bc   IntEventMap
    11807244   IntEventSet
    11807278   IntEventClear
    118072b0   IntEventCombineInit
    118073b4   IntEventCombineAdd
    11807408   IntEventCombineRemove
    11807458   IntEventCombineRegister
    11807480   IntEnable
    118074b0   IntDisable
    118074e4   IntReset
    118074f8   IntGlobalEnable
    1180750c   IntGlobalDisable
    11807520   IntGlobalRestore
    11807538   ExcGlobalEnable
    11807558   ExcCombineAdd
    118075a0   ExcCombineRemove
    118076e0   GPIODirModeSet
    11807778   GPIODirModeGet
    118077d8   GPIOPinWrite
    11807858   GPIOPinRead
    118078b8   GPIOIntTypeSet
    11807a24   GPIOIntTypeGet
    11807aac   GPIOPinIntStatus
    11807b0c   GPIOPinIntClear
    11807b54   GPIOBankIntEnable
    11807b84   GPIOBankIntDisable
    11807bb0   GPIOBankPinsWrite
    11807c60   UARTConfigSetExpClk
    11807cf4   UARTConfigGetExpClk
    11807d88   UARTFIFOLevelSet
    11807dac   UARTDMAEnable
    11807dcc   UARTDMADisable
    11807dec   UARTParityModeSet
    11807e34   UARTParityModeGet
    11807e58   UARTEnable
    11807e74   UARTDisable
    11807ea0   UARTFIFOEnable
    11807eb4   UARTFIFODisable
    11807ecc   UARTSpaceAvail
    11807ef8   UARTCharsAvail
    11807f28   UARTRxErrorGet
    11807f48   UARTCharPutNonBlocking
    11807f88   UARTCharGetNonBlocking
    11807fb4   UARTCharGet
    11807ff0   UARTCharPut
    11808048   UARTIntEnable
    11808070   UARTIntDisable
    11808098   UARTIntStatus
    118080c4   UARTBreakCtl
    118080f8   UARTModemControlSet
    11808150   UARTModemControlClear
    11808184   UARTModemControlGet
    118081a4   UARTModemStatusGet
    1180864c   EMIFANANDXferSetup
    118086ac   EMIFANANDXferStatusGet
    118086b4   EMIFANANDEdmaInit
    118088a8   CacheEnable
    11808988   CacheEnableMAR
    11808a20   CacheDisableMAR
    11808aac   CacheInvL1pAll
    11808ab8   CacheWBAll
    11808ac8   CacheWBInvAll
    11808ad4   CacheInv
    11808af0   CacheWB
    11808b0c   CacheWBInv
    11808b40   __c6xabi_divu
    11808b40   __divu
    11808c00   _intcVectorTable
    11808f80   UARTPinMuxSetup
    11809100   PSCModuleControl
    11809240   _auto_init_elf
    11809340   copy_in
    11809440   __c6xabi_divi
    11809440   __divi
    11809520   __TI_zero_init
    11809600   memset
    118096e0   EMIFAClkConfig
    118096f8   NANDPinMuxSetup
    11809820   UARTConsoleInit
    11809858   UARTConsolePutc
    11809880   UARTConsoleGetc
    118098a0   exit
    11809960   __TI_tls_init
    11809a20   __c6xabi_remu
    11809a20   __remu
    11809ac0   memcpy
    11809b60   GPIOBank4Pin0PinMuxSetup
    11809b98   GPIOBank4Pin1PinMuxSetup
    11809be0   __TI_cpp_init
    11809c40   _args_main
    11809c80   C$$EXIT
    11809c80   abort
    11809ca0   __TI_decompress_none
    11809cc0   __TI_decompress_rle24
    11809ce0   EDMAVersionGet
    11809d00   txData
    1180a500   rxData
    1180ad00   eccData
    1180af80   _stack
    1180bf80   __TI_STACK_END
    1180c600   _cleanup_ptr
    1180c604   _dtors_ptr
    1180c608   __TI_enable_exit_profile_output
    1180c60c   __TI_STATIC_BASE
    1180c614   regionId
    1180c628   __TI_Handler_Table_Base
    1180c634   __TI_Handler_Table_Limit
    1180c660   __TI_CINIT_Base
    1180c688   __TI_CINIT_Limit
    1180c800   _c_int00
    ffffffff   __TI_pprof_out_hndl
    ffffffff   __TI_prof_data_size
    ffffffff   __TI_prof_data_start
    ffffffff   __binit__
    ffffffff   __c_args__
    ffffffff   binit
    UNDEFED    __TI_INITARRAY_Base
    UNDEFED    __TI_INITARRAY_Limit
    UNDEFED    __TI_TLS_INIT_Base
    UNDEFED    __TI_TLS_INIT_Limit
    
    [247 symbols]
    

  • Hello,

    If you want to place your code directly into L1, you will need to set the L1 cache to SRAM and place the application into L1 using the linker cmd file. After building, you can check the map file to verify that the application has been placed into L1.

    Regards,
    Sahin
  • Hi Sahin,

         Noted,I will try to test it,thanks your help!