SPI FLASH boot mode error in CX3

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
ArSa_3842301
Level 3
Level 3
25 sign-ins 10 replies posted 10 questions asked

Hi,

I have developed an own PCB design based on Denebola development kit. Whit the following differences:

-  the SPI FLASH, which is used to store the firmware image, is supplied by 1.8V. Because I have replaced the 3.3V domain by 1.8 V.

- The boot mode is fixed to start always as SPI mode. But I can also start in USB boot mode in order to update the firmware embedded in SPI FLASH memory.

My own design works correctly if I supply the firmware through USB boot mode, I mean, in this case, I program the CX3 through RAM using the USB Control Center, embedded in the Cypress EZ USB Suite.

But I have detected an issue, also in my own design, When I try to supply the firmware from the SPI FLASH. Because I can store the firmware in the SPI Flash and the USB Control Center does not show me any warning.

The error appear when the CX3 has to get the firmware from the SPI FLASH, since he can't do it.

For this reason I have compared, in both Denebola and own design, the writing and reading of the firmware image between the CX3 and SPI FLASH. To do this, I have used an oscilloscope and a logic analyzer in order to be sure of the results.

I have attached the results, and as you can see. The writing process of the firmware image is exactly the same in both denebola and own design. I mean, I have registered the same writing values in the SPI FLASH.

But in the reading process from the SPI FLASH, my own design does not send the same values. Because I detect some corrupt values in dataframe.

So my question is the next:

It is possible that the memory problem is preceded by the high reflow temperature in the soldering process?.

The memory Cypress model S25FS064S, so, could you tell me please the maximum solder temperature of the device, because it is not appear in the datasheet?.

Thanks.

0 Likes
1 Solution
JayakrishnaT_76
Moderator
Moderator
Moderator
First question asked 1000 replies posted 750 replies posted

Hello,

I understand that the writes to the flash part S25FS064S are successful but the data read back from the flash is not same as the data written into the flash. In order to isolate the issue, we need to understand if the flash erase is working as expected or not. Please try erasing the first sector of flash and then read back the data present in the first sector of the flash. Please refer to the SDK example pointed out in the following thread to understand how to erase a sector of the flash:

how could I communicate with SPI Flash memory through CX3's firmware?

After erasing, please try to read the data present in the first sector of the flash. If the erase was successful, then all the data present in the first sector of the flash would be 0xFF. You need not read back the entire data present in the first sector of flash. As of now, after erasing the first sector of the flash, please try reading back first 4096 bytes of the first sector of the flash. Please share snapshots of the control center after the vendor commands are sent to erase the first sector of flash and to read back the data present in the first sector of flash.

If the sector erase is not working properly, please try the suggestion mentioned in the following KBA:

FX3 SPI boot fails when S25FS128S flash is used – KBA231163

Best Regards,

Jayakrishna

Best Regards,
Jayakrishna

View solution in original post

0 Likes
3 Replies