11-09-2016 10:53 AM
I am using a Spartan 6 with an Atmel AT45DB642D-CNU SPI flash for configuration memory. The AT45DB642D series has gone end of life and was replaced with the AT45DB641E.
Xilinx's page of supported flash memories for iMPACT (https://www.xilinx.com/support/documentation/sw_manuals/xilinx14_7/pim_r_supported_spi_bpi_proms.htm) only shows up to Rev D of Atmel's flash (what I am using) and doesn't say anything about Rev E.
As far as I can tell the newer version should work with the Spartan 6. And as far as iMPACT goes it looks like I can use the method in post #1 of https://forums.xilinx.com/t5/Spartan-Family-FPGAs/Are-Spartan-3A-6-and-iMPACT-v12-3i-compatible-with-Numonyx/td-p/150790 to get iMPACT to program the newer Rev E of flash.
Does anyone have any experience with this newer Atmel flash, or have any pointers?
11-09-2016 08:27 PM
11-09-2016 09:50 PM
yes you can give a try by Setting the environment variable: XIL_IMPACT_SKIPIDCODECHECK to 1 according to the forum thread you have pointed. Kindly note that this is not a tested flash in board setup for programming and configuration.
If there is no change in the page size/sector size and the flash registers address etc between these two revisions then you should not see any issue
11-10-2016 08:31 AM
Page size is the only big difference I can see.
The part I am currently using has a page size of 1024 (or 1056, it says it's user configurable) bytes, the replacement part has a page size of 256 (or 264, same deal) bytes. Many of the other supported flash memories for the Spartan 6 have page sizes of 256 bytes.
The Spartan 6 uses standard spi flash commands (03h and E8h) to read out the contents. These start reading at a given address and read bytes out continuously, hiding the details of page size and going between pages. So, from all that it seems to me that page size shouldn't be a problem.
11-10-2016 11:56 AM
There wouldn't be a problem using the new part to configure the FPGA. Any problem would come from an inability of Impact to indirectly program the flash part. For that reason it's generally best to stick to parts listed as supported by Impact. If you have another way to program the part, either off-board or using your own in-system method, then there should be no problem.
11-10-2016 10:06 PM
@d_andrews One of the customers reported setting the variable does not work with AT45DB641E flash. I would recommend if the boards are not ready please consider using supported flash.
11-10-2016 10:27 PM
As per ISE help topics Atmel make all AT45DB (Rev B, C, and D) series SPI flashes were tested and officially supported in ISE 14.X tools. AT45DB641E was not characterised by Xilinx.
So we are not sure whether it works or not. Use Skip ID code function and try your luck.
11-17-2016 06:38 AM
Just an update for anyone coming across this:
I installed the AT45DB641E part and tried programming it w/ impact. iMPACT says that it succeeds in programming but then it fails when it tries to verify. This was with the XIL_IMPACT_SKIPIDCODECHECK variable set in windows.
So, no luck. iMPACT reports some stuff about page numbers during programming and it still thinks the page size is 1024 bytes. So I'm guessing the failure is in part due to this.
11-17-2016 09:50 AM
Which version of ISE tools are you using?
Are you using mult-boot configuration? If your answer is yes, then below answer records helps
In case of using multiple Spartan-6 devices the following AR https://www.xilinx.com/support/answers/41877.html helps
Please check whether any start-up cycle problem exists. The following AR https://www.xilinx.com/support/answers/42128.html helps to find out that