S25FL256 Strange State | Cypress Semiconductor
S25FL256 Strange State
I'm using an S25FL256 with a Xilinx 7-series FPGA in single speed mode in a very simple design that works 99.9% of the time. But every once in a while something weird happens to the flash which makes our device stop working. This may occur during a power on/off but I don't know for sure
When I examine a "bad" unit I can immediately see something different from normal units--- the configuration register value is 0xEC. the configuration register value on a good unit is 0. What's more, if I try and change the configuration register value on a bad unit I get a programming error bit set and I can't talk to the memory after that. On a good unit I can change the configuration register value at will. On a bad unit I can still change the value of the status register, just not the configuration register.
The value of "0xEC" is particularly bad because it sets the latency to 0 and our software depends on the latency being 8 bits.
In our design, the "HOLD" and "WP" pins are held to Vcc.
Does anyone have any idea what could happening to our flash memories to cause the configuration register to get stuck in some strange bad value?
Any ideas would appreciated.