Author Topic: AT25SF081B identification?! (Atmel/Adesto)  (Read 581 times)

0 Members and 1 Guest are viewing this topic.

Online ebastlerTopic starter

  • Super Contributor
  • ***
  • Posts: 7007
  • Country: de
AT25SF081B identification?! (Atmel/Adesto)
« on: May 20, 2023, 10:38:21 am »
Atmel have done a nice job confusing their customers in the serial flash business: Atmel > Adesto > Dialog Semiconductor > Renesas within 10 years, with the last two acquisitions happening within just a 2-year space.

Along the way, they have also made a brilliant version change to the AT25SF081, replacing it with the AT25SF081B. Both are largely standard SPI serial flash chips, but with three extra "Security Register" pages of 256 bytes each. I use them in an FPGA design to be compatible with the "TinyProg" open source in-system programming solution; TinyProg puts board and configuration meta-data into the security pages.
  • When Adesto replaced the AT25SF081 with the updated AT25SF081B, they decided to keep the device ID unchanged, but make the chip incompatible. (The security registers are addressed differently now, with addresses shifted by 4 bit.) >:D
  • They also released an application note which mentions that the SFDP Table (Serial Flash Discoverable Parameters) is an option to distinguish the two versions -- but does not document what the SFDP table for the B version actually looks like, or what to expect from the non-B version (which does not support SFDP at all). Neither do the datasheets -- "contact Adesto".  >:D
Has anyone, by any chance, found a simple and reliable way to distinguish these two chips in software? I could start fiddling around, but don't feel comfortable relying on undocumented behavior: Which aspects are stable, which ones might change from batch to batch? (Response of the older chip to an invalid command; response of the newer chip with some unknown data structure -- which may contain parts that are always the same and parts which are batch-specific?)

Thanks for any pointers you might have!
« Last Edit: May 20, 2023, 11:21:34 am by ebastler »
 

Online ebastlerTopic starter

  • Super Contributor
  • ***
  • Posts: 7007
  • Country: de
Re: AT25SF081B identification?! (Atmel/Adesto)
« Reply #1 on: May 21, 2023, 03:12:36 pm »
Quick follow-up for future reference: I found a description of the SFDP (Serial Flash Discoverable Parameters) from a 3rd party, Macronix. JEDEC apparently wants to limit access to the parameter definitions and Adesto is playing by their rules, but Macronix seems less concerned. Macronix application note AN-114 if anyone is curious.

Anyway, after sending the SFDP read command ($5A) and a 4-byte address, the device's response always starts with a header which begins with the 4 bytes 'S', 'F', 'D', 'P'. That is definitely universal and stable. And since all I need to know is whether the device supports SFDP at all (new AT25SF081B) or doesn't (old AT25SF081), checking for those 4 bytes in the response is all that's needed. Case closed. :)
 
The following users thanked this post: edavid


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf