- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi all,
I am using the On-Chip Flash Intel FPGA IP and following the Intel® MAX® 10 User Flash Memory User Guide here. I am trying to simply write test data.
I have followed the guide's steps for erasing and writing to the memory and have only had success when erasing. I can see this by the status register reads '1' in bit 4.
However, I follow the process for writing and the status register reads 2'b10 (BUSY_WRITE) but a few clock cycles later, when these bits are 2'b00 (IDLE), bit 3 (write-successful) is a '0'. I expect bit 3 to be a '1' after this write operation.
The user guide suggests 3 reasons for this issue
- The burst count is not equal to 1 (parallel mode) or 32 (serial mode).
- The given address is out of range
- The sector protection mode or write protection mode of the corresponding sector is not clear (the value is not 1'b0).
- I have set the burst count to '1' because I am in parallel mode.
- I have tried both address 0x00000 and 0x7000, both are valid addresses in Sector 1 (which is the sector I disable write-protection for).
- I am writing to sector 1, the same sector I had erased in the prior steps. This is confirmed by the status register reading from the control register. [23] (sector ID 1 write protection) is set to '0', and [22:20] (sector erase address) is set to 3'b001 for sector ID 1.
I have attached my waveform and Platform Designer design / IP Parameters.
Thanks everyone in advance
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Do you make sure to erase the flash location before you perform a program (write) operation?
Do you able to duplicate the figure no. 8 diagram in the UG?
https://www.intel.com/content/dam/www/programmable/us/en/pdfs/literature/hb/max-10/ug_m10_ufm.pdf#page14
You can refer to the example design below from the link below.
https://fpgacloud.intel.com/devstore/platform/17.1.0/Standard/max-10-user-flash-memory-write-operation/
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Yes, I make sure to erase the flash location before writing.
In my original design I did not hold the write signal for long, though after modifying the code, writing still fails.
I'll work off the example design, I couldn't find that from the design store.
Thank you.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Try again with the design store. The link should be fixed by now.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page