Flash memory EndofLife and replacement

Technical questions regarding the XTC tools and programming with XMOS.
DaveBest
Member++
Posts: 25
Joined: Mon Jan 18, 2010 3:36 pm

Flash memory EndofLife and replacement

Post by DaveBest »

Hello again,

an old project reared its head again.

As already seen in this thread: www.xcore.com/forum/viewtopic.php?f=7&t=2590

The AT25DF041A has been canceled.

If I were to replace the AT25DF041A with an AT25DF081A, would i have problems ahead in making this work or are the needed changes insignificant?

It is not officially supported flash memory according to:

https://www.xmos.com/support/documentat ... nent=14585

Thanks in advance for any assistance

Dave
DaveBest
Member++
Posts: 25
Joined: Mon Jan 18, 2010 3:36 pm

Post by DaveBest »

So previously the flash_AT25DF041A.xc/.h and atmelops was used.
The JEDEC device id for the AT25DF041A was 0x1f4401 and for AT25DF081A it is 0x1f4502.

Best case would be that i only have to change the id and everything is golden?
User avatar
mon2
XCore Legend
Posts: 1913
Joined: Thu Jun 10, 2010 11:43 am

Post by mon2 »

DaveBest wrote:So previously the flash_AT25DF041A.xc/.h and atmelops was used.
The JEDEC device id for the AT25DF041A was 0x1f4401 and for AT25DF081A it is 0x1f4502.

Best case would be that i only have to change the id and everything is golden?
Hi Dave. Working on a similar review so can supply our 2 bits (half nibble ?) of details.

Yes, your ID would mismatch so must either change the present definition for your AT25DF041A structure to match the new device.

OR

You could create a fresh definition and extend the current table of supported devices.

You will also need to expand the density of the flash device using the same look up table for the flash. This is one of the parameters in the flash structure. Otherwise, you will not be able to use the extra space of your replacement device

We are experimenting with a mix of devices including Spansion, Winbond (very nice and high speed capable) - there is also Micron, Atmel. Our interest is to attempt to move to use the dual or QUAD SPI modes. We have the Dual SPI mode working in our early tests but @ 25 Mhz clock speeds only (so far).

There is a commonly shared command spec amongst the flash vendors (ie. 0B command is a FAST READ, etc.). For us, the wake up call was more for the mix of footprints (ie. SOIC 8 pin vs. wide body SOIC, etc. - be careful on this during your replacement exercise). While we do not have specific experience (yet) with Atmel, you should be fine to proceed as long as the commands and structure file is correct. You may even save some money by considering a higher density device due to popularity (volume of sales). The XMOS routines are being very gentle on the bus speeds and using traditional SPI single MOSI / MISO commands so literally any device could work.

Did you design your own PCB ?

Do you know the SPI Clock speed for your project ?

To confirm, you wish to drop into the same PCB footprint, a valid flash replacement ?

When ready, post your flash definition for a verification. We have an order pending with Digikey so can source one of the Atmel devices for some testing. Also waiting on a shielded logic analyzer probe to allow us to attempt to kick higher rates out the flash devices in DUAL and QUAD SPI modes. Perhaps others will chime in with additional feedback on this topic.

Kumar
DaveBest
Member++
Posts: 25
Joined: Mon Jan 18, 2010 3:36 pm

Post by DaveBest »

Hi,

according to the distributor, Adesto isn't about to do further work in developing flash memory solutions and suggested Spansion.

Spansion S25FL204K seems to be the closest approximation to the AT25DF041A.

And the changed SPI_DEVICE_ID would be 0x01401300.
The command set seems to be the same.

The memory is currently only used for storing some persistent configuration data and some intermediate data, so the size of the memory isn't an issue.

The memory needs are low enough to just use the low level operations provided by the AtmelOps.xc.

Some samples are ordered to perform some preliminary tests if changing the ID is sufficient and swapping out memory with as little changes performed as possible is possible.

Dave