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.
Hello,
I have a 28027 controlCard that is used with the TMDSHVRESLLCKIT_v1.0 tI kit with CC 5.5.0.00077.
I have not had any problems in the past. All I did was, I tried to download the TI kit software.
I get the following error. I have gone through some other posts, but really did not see any resolution. Is there one?
C28xx: Flash Programmer: Error encountered when writing to flash memory
C28xx: GEL: File: C:\TI\controlSUITE\development_kits\TMDSHVRESLLCKIT_v1.0\HVLLC\F2802x_FLASH\HVLLC.out: Load failed.
Thanks,
Brent
This is with Verbose Output enabled:
C28xx: Writing Flash @ Address 0x003F7136 of Length 0x0000002C
C28xx: Erasing Flash Sector A
C28xx: Flash operation timed out waiting for the algorithm to complete. Operation cancelled.
C28xx: Error Writing Flash @ Address 0x003F7136 of Length 0x0000002C
C28xx: GEL: File: C:\TI\controlSUITE_same\development_kits\TMDSHVRESLLCKIT_v1.0\HVLLC\F2802x_FLASH\HVLLC.out: Load failed.
I also tried the CCS UniFlash tool. Below is the output:
[09:11:08] Begin Launching session operation.
[09:11:11] Operation Launching session returned.
[09:11:11] Loaded target configuration from: C:\Users\brentw\AppData\Local\TEXASI~1\CCS\TI_CC324\0\0/temptargetconfiguration.ccxml
[09:11:11] Settings purged.
[09:18:56] C28xx: Erasing Flash memory...
[09:18:59] C28xx: Erasing Flash Sector A
[09:19:19] ERROR >> C28xx: Flash Programmer: Error erasing flash memory. Flash operation timed out waiting for the algorithm to complete. Operation cancelled.
[09:19:22] Flash operation Erase failed on core Texas Instruments XDS100v1 USB Emulator/C28xx .
[09:19:35] C28xx: Depletion Recovery started.
[09:19:58] ERROR >> C28xx: Flash Programmer: Error when performing depletion recovery. Flash operation timed out waiting for the algorithm to complete. Operation cancelled.
[09:20:01] Flash operation DepletionRecovery failed on core Texas Instruments XDS100v1 USB Emulator/C28xx .
Hi Brent,
The immediate step would be to try load a simple led_timer based sample code to the kit. Check whether the code gets loaded to the RAM or not. Next try out the flash_f28027 sample code for flash. Let me know what you observe.
Regards,
Gautam
Hi Gautam,
Thanks for the reply.
I am able to load a run a example project from RAM.
I tried running the FlashingLeds-F28027 example from FLASH. I observed the following:
C28xx: Writing Flash @ Address 0x003F64D1 of Length 0x00000016
C28xx: Erasing Flash Sector A
C28xx: Flash operation timed out waiting for the algorithm to complete. Operation cancelled.
C28xx: Error Writing Flash @ Address 0x003F64D1 of Length 0x00000016
C28xx: GEL: File: C:\TI\controlSUITE\development_kits\TemplateProjects\FlashingLeds-F28027_v1.0\F2802x_FLASH\FlashingLeds.out: Load failed.
Brent
Brent, did you ever lock your flash using CSM? Also, I hope your mcu has not gone into permanent lock mode due to power failures while erasing.
Regards,
Gautam
Hi Gautam,
I have not locked the flash using CSM.
Is there a way to check to see if it is permanently locked?
Thanks,
Brent
Brent,
Based on the error messages you are getting, it looks like your flash is in depletion. It also looks like your depletion recovery algorithm also times out (meaning: you cannot recover the part as the flash is in deep depletion).
Unfortunately, you don't have any option but to replace the part.
Regards,
Manoj
Brent,
I forgot to mention. Your CSM isn't locked. I know this because your flash API is starting to run the flash erase algorithms. If the device is locked, it wouldn't and the plugin would just report that device is locked.
Regards,
Manoj
Source: http://processors.wiki.ti.com/index.php/C2000_Flash_Common_Issues/FAQs#Depletion
Depletion
Q: How does depletion occur?
A: If the erase operation is interrupted and not allowed to complete, the device may become depleted. When this happens, the device may then begin to fail to erase. The erase algorithm should not be stopped, as this can also affect the CSM passwords. The Flash API has a depletion recovery function to try to recover flash that has been "over-erased". If the flash programming process was interrupted during the erase stage, it is possible that the timed loops that do the erasing process were disturbed.
The CCS On Chip Flash Programmer does have support for the depletion recovery function. You will see it listed in the as one of the options that can be selected under "Operations" in the flash plug-in GUI. You can get additional information on this by clicking on the "Help" button, go to the search tab and enter "depletion".
The depletion recovery also looks for sectors that are in depletion and attempts to recover them. All sectors on the device are checked.
The current maximum timeout for the algorithm is approx 35 seconds per sector that is in depletion. Typically, only one sector would be in depletion unless erase has been called multiple times on multiple sectors without running to completion. If a longer timeout can be tolerated, the depletion recovery can be used multiple times.
There is no guarantee that this algorithm will be able to bring a sector out of depletion within a reasonable amount of time. The deeper in depletion the part is, the longer it will take to recover. The Flash API erase function has been implemented to erase the flash in such a manner that it is not put into deep depletion. However, if the CPU is halted during an erase pulse for a long period of time, the part can be put into a deep depletion that may not be recoverable in an acceptable time period.
This algorithm cannot recover the part if the flash passwords are unknown. For example, if power is lost during the erase of sector A, where the CSM passwords are located, then the device may be permanently locked and the recovery algorithm cannot operate on the flash.
If the depletion recovery step fails then replacement is the only option.
Manoj Santha Mohan said:I forgot to mention. Your CSM isn't locked. I know this because your flash API is starting to run the flash erase algorithms. If the device is locked, it wouldn't and the plugin would just report that device is locked.
Nice point Manoj and noted. Thanks for the detailed description.
Regards,
Gautam
Hi
I have the same problem.
I didn't interrupt the erase step. It seems the F28069 corrupt due to long erasing time.
I end up with 20+ bad parts on my inventory.
Please help how to recover them by doing depletion recovery or other like the following note from datasheet
If a device is reset while the password locations are all zero or an unknown value, the device
will be permanently locked unless a method to run the flash erase routine from secure
SARAM is embedded into the flash or OTP. Care must be taken when implementing this
procedure to avoid introducing a security hole.
ken
ken ho1 said:I end up with 20+ bad parts on my inventory.
That's huge, Ken!
Are you trying to program the sample flash based code or something else?
Regards,
Gautam
I kept having the problem until I went to a better (more expensive) JTAG emulator and stopped using the XDS100. Since then I have not had any issues.
Brent
Hi everyone
I had similar problems. I also saw the same errors.
I had to go into my advance target configurations and set here the correct path to my *.gel file.
Then everything worked. Perhaps you have the same problem.
good luck
jo
Van,
If your device is failing depletion recovery, there is no option but to replace the part / control card.
Regards,
Manoj