02-13-2016 02:32 AM
02-15-2016 08:02 AM - edited 02-16-2016 01:24 AM
PLEASE read the documentation more carefully. The reference design files are explained on page 19 and the green colour coding tells you which files are not included and where to obtain them. However, did you notice that a BIT file is included in the ZIP file so you can download and try the reference design immediately (to a Spartan-3E Starter Kit)? It is a fully working reference design.
Pages 23 to 26 provide an overview of how this reference design writes individual bytes or bursts of up to 32-bytes into the Flash. There are further descriptions contained within comments in the source code of the reference design. Note that ‘byte commands’ also need to be transmitted to the StrataFlash device as well as the data. Did you read what I said about hundreds of micro seconds and polling the status register? The timing of the signals during a write is only part of what has to be implemented correctly to store data in one of these devices.
02-13-2016 09:21 PM
Any takers ? kinda desperate for help.
02-15-2016 03:02 AM
My quick look at your code gives me the impression that you are only writing to the RAM buffer inside the Flash device and not actually writing the buffer contents into the Flash memory. Note that when the Flash is programmed it takes hundreds of micro seconds (not nano seconds) to complete each storage and you would normally poll the 'Status Register' to determine when each write has completed. I don't see anything that does this in your code. Please look at my reference design for more clues...
http://www.xilinx.com/products/boards/s3estarter/reference_designs.htm
PicoBlaze RS-232 StrataFlash™ Programmer
Turns the Spartan-3E FPGA into an Intel StrataFlash programmer. The FPGA connects to a PC via an RS232 UART. Via HyperTerminal (not included), download an MCS file to the Intel StrataFlash parallel NOR Flash memory, check the memory ID, bulk erase the entire 128Mbit Flash, and read and write Flash data.
In particular, pages 23 to 26 of the document for this reference design...
http://www.xilinx.com/products/boards/s3estarter/files/s3esk_picoblaze_nor_flash_programmer.pdf
02-15-2016 04:36 AM
Thank you for your reply. I fear the design file you provide is incomplete, it does not include the processor component that reads/writes to the strata flash particularly. Moreover, the timing diagram provided in your reference design is rather similar to the one I've been trying to implement (please refer to attached testbench above). I've been stuck trying to access this strata flash as per the datasheet, I'm trying to achieve a simple 1 byte write to begin with and I can't understand what is it that I'm missing.
02-15-2016 08:02 AM - edited 02-16-2016 01:24 AM
PLEASE read the documentation more carefully. The reference design files are explained on page 19 and the green colour coding tells you which files are not included and where to obtain them. However, did you notice that a BIT file is included in the ZIP file so you can download and try the reference design immediately (to a Spartan-3E Starter Kit)? It is a fully working reference design.
Pages 23 to 26 provide an overview of how this reference design writes individual bytes or bursts of up to 32-bytes into the Flash. There are further descriptions contained within comments in the source code of the reference design. Note that ‘byte commands’ also need to be transmitted to the StrataFlash device as well as the data. Did you read what I said about hundreds of micro seconds and polling the status register? The timing of the signals during a write is only part of what has to be implemented correctly to store data in one of these devices.
02-15-2016 07:24 PM
02-26-2016 12:08 AM