This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Question -

Hi,

I have strange symptom with Cortex-A15 device.

The below is traced data.

Program AddressDisassembly

0x40401AA0CMP             R12, R0

0x40401AA4BHI             0x40401A80

0x40401A80LDR             R0, [R13]

0x40401A84LDRB            R12, [R13, #24]

0x40401A88STRB            R12, [R0]

0x40401A8CLDR             R12, [R13]

0x40401A90ADD             R12, R12, #1

0x40401A94STR             R12, [R13]

0x40401A98LDR             R12, [R13, #4]

0x40401A9CLDR             R0, [R13]

0x40401AA0CMP             R12, R0

0x40401AA4BHI             0x40401A80

We execute the memory write repeatedly.

10 step instructions is used for 1 addreess  write of DDR3.  But the trace data shows 724 cycles is spend for this 10 instruction execution.

In generally speaking, one instruction is one cycle. 724 cycles are abnormal.

Why does this symptom occur? Please

let me know the reason.

I appreciate your quick reply.

Best regards,

Michi

Parents Reply Children
  • Dear Koumoto-san,

    Thank you for your reply.

    I understood 724cycles is normal on DDR3. How about internal RAM(OCMC_RAM3). When the same code is executed, 824cycles is spend.

    I think this execution time is also too long time.Is it same result with cortex-A9? If it is so, does the optimization effect to reduce the cycle time?

    I appreciate your quick reply.

    Best regards,

    Michi 

  • Hello Michi,

    it looks strange.
    The execution time on internal SRAM should be shorter than on DDR3.
    By my Cortex-A9 environment, the execution time on SRAM was only 34 cycles.
    As my code had a problem, I revised it and measured the execution time again.
    The results on external SDR DRAM were
    875 cycles when L2 cache was off and
    320 cycles when L2 cache was on.
    Best regards,
    Yasuhiko Koumoto.