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.

Which platform file to use?

Other Parts Discussed in Thread: OMAPL138

Developing a DSP app on a Logic PD OMAPL138 experimenter kit....

What kind of freaks me out is I was using a platform file

ti.sdo.ipc.examples.platforms.evmOMAPL138.dsp

which presents this memory map:

MEMORY
{
    IROM (RX) : org = 0x11700000, len = 0x100000
    L3_CBA_RAM (RWX) : org = 0x80000000, len = 0x20000
    DDR (RWX) : org = 0xc1000000, len = 0x1000000
    SHARED (RWX) : org = 0xc2000000, len = 0x1000000
}

Notice there is no IRAM defined...

Yet if I go to

ti.platforms.evmOMAPL138

I get this:

MEMORY
{
    IROM (RX) : org = 0x11700000, len = 0x100000
    IRAM (RWX) : org = 0x11800000, len = 0x40000
    L3_CBA_RAM (RWX) : org = 0x80000000, len = 0x20000
    DDR : org = 0xc3000000, len = 0x1000000
}

So the IRAM is present here but the DDR is at a different address and the SHARED section is missing...

Which one is the real one?

Using the first one actually caused my emulator to reset when explcitly accessing IRAM-space, but I plan on using IPC when the ARM app is developed...


  • Kent,

    From within a CCS memory view are you able to read and write the IRAM memory from the DSP side?

    Alan

  • Yes, and I'm currently using the bottom MEMORY definition from above...but I'm more wondering about the different base addresses/sizes for the DDR/SHARED...

  • I think this comment I found in the evmOMAPL137 Platform.xdc file attempts to explain the ambiguous memory segment definitions:

        /*
         *  SDRAM is 64MByte but we need to share it with Arm.
         *  Reserve 32MB for Arm/Linux (base: 0xC000000)
         *  16MB for shared Arm/DSP (base: 0xC2000000)
         *  16MB for DSP (base: 0xC3000000)
         */
        override readonly config xdc.platform.IPlatform.Memory
            externalMemoryMap[string] = [
                ["SDRAM",  {name: "SDRAM",  base: 0xC3000000, len: 0x01000000}],
            ];

    I believe that 64MB of memory exists starting at base address 0xc0000000.

    The different platform definitions represent various efforts to carve the memory up between the ARM and DSP.

    Alan