FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
6359 Discussions

Parallel Flash Loader PFL: What CFI IDs for Spansion S29WS256P?

Altera_Forum
Honored Contributor II
1,362 Views

Greetings, 

 

 

I have a custom board with Cyclone-V and Max-V 5M1270 plus a Spansion S29WS256P 16b NOR flash, the Max-V sits between the FPGA's configuration pins and the flash memory. I would like to use the PFL to both program the flash through JTAG and to configure the FPGA on power-up. I know the WS256P is not on the PFL's list of recognized flash parts, but it seemed easy enough to "Define new CFI Flash." The question is: what manufacturer's and device IDs should I use? The datasheet for the part is here: 

http://spansion.com/support/datasheets/s29ws-p.pdf 

 

The CFI block shows a manufacturer's ID of 2, but I don't see anything that I can call a device ID. The autoselect data has a manufacturer's ID of 1 and device IDs of 0x227E, 0x2242, and 0x2200. Not to give up, I've tried all combinations of MFR ID=1/2 with device ID=0x2272, 0x2242, 0x2200 and also tried using device ID=0x227E and Extended Device ID of 0x2242. In the programmer I have attached a flash memory with the generic CFI_256Mb ID. In all cases when I try to program the flash I get "Error (209025): Can't recognize silicon ID for device 1." That seems strange because 'device 1' is the CPLD, but I have already programmed the CPLD with my PFL design and that works fine, I can also program the FPGA and use SignalTap with the FPGA, so I'm sure the JTAG chain is healthy. If I erase the CPLD I get an error about not being able to find the PFL, so that part seem OK too. I've checked the pinout relative to the schematic, so I'm at a loss for a next step to try. 

 

This would be trivial if the programmer would report what IDs it found before giving up on the part, but that info isn't shown. 

 

Any advice appreciated, I would like to avoid having to create my own programmer & loader module when this one seems so easy to use. 

 

TIA, 

Fred
0 Kudos
2 Replies
Altera_Forum
Honored Contributor II
290 Views

Solved: I inadvertently had the AVD# pin pulled up instead of down, so the PFL could not set any addresses on the device (AVD# 'address valid' is not a PFL pin). With that fixed I find that the S29WS256P is already defined in the PFL / progammer tool, no custom CFI device needed. The PFL can now happily write & verify my device. 

 

Now to get it to configure the FPGA...
0 Kudos
Altera_Forum
Honored Contributor II
290 Views

 

--- Quote Start ---  

Solved: I inadvertently had the AVD# pin pulled up instead of down, so the PFL could not set any addresses on the device (AVD# 'address valid' is not a PFL pin). With that fixed I find that the S29WS256P is already defined in the PFL / progammer tool, no custom CFI device needed. The PFL can now happily write & verify my device. 

 

Now to get it to configure the FPGA... 

--- Quote End ---  

 

my english is bad, but i have the same problem, you anwser may help me, so thank you very much.
0 Kudos
Reply