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.

Programming flash takes too to erase flash sectors

Hello! So i've noticed something with both my F28069 controlStick as well as a custom board with the F28068. The first time a chip is programmed with code that runs from flash, it takes about 10-15 seconds or so to erase the flash sectors and then it write the program fairly quickly. However, if i try to program this device again with the same program, it takes about 1-2 minutes to erase the flash sectors, and when it send the program fairly quickly.

I was able to modify the controlStick so that i could switch the TDO line between high and low, thereby changing which bootmode i was in. So long that i wasn't in GET MODE, which i think is the device just booting from flash, i could power off and on the controlStick and then program it and it would program quickly.

So, that being said, how can i setup my board so that I can always program it quickly? Do i need to have it fixed in one of the other boot modes and then power cycle it every time? Please let me know if you have any idea, or if you think my problem is something other than the bootmode being selected. Thanks!!

  • Hi Gregory,

    By my personal experience, I never faced any issue while flashing the above controlStick. No boot mode settings at all.
    Can you try uninstalling XDS100 drivers and re-installing them?

    Regards,
    Gautam
  • Gregory,
    I'd like to add on to what Gautam said. From the factory all C2000 devices come in erased state. So first time the unit is flashed, there is no need to erase anything, in this regard only the program function will need to execute.

    Now, after this first program the subsequent flash operations will again depend on what you need to do. If you are programming a section of flash that was not used previously, then again no need to execute the erase function, and therefore only program.

    If you are only changing bits from 1 to 0, then again no need to erase since this is a program operation.

    Erase is the most time intensive operation on our devices, so all the above will have impact.

    Also, with regard to GETMODE comment, from reset the flash is in max WS, waiting on application to choose the WS based on the DS parameters and the device frequency. That could also contribute to a perceived slowness of one method vs another.

    Matt
  • Gregory,
    Wanted to see if any of the above helped or you are still seeing long program that are not explained.

    Matt