The LatticeXP and LatticeXP2 internal flash cells program using looping algorithms in order to provide the correct erase or programming timing for flash accesses. This method is critical to providing correct programming of the flash fuses. They also require the power supplies used for programming to be stable and at proper operating levels to ensure that the fuses are correctly written. If these conditions are not maintained the device could be left with an illegal/corrupt pattern residing in the flash fuses. The symptom is the device becomes very hot due to internal contention and any other action will not correct the issue. If this occurs, the method to recover the device is as follows:
In the case of LatticeXP2, the corrective action requires an additional step.
The CFG0 pin must be driven to GND to enable the PROGRAMN pin functionality. Once the above corrective steps are completed the user should investigate the root-cause as mentioned above.