Jump to content

Joern

Members
  • Posts

    1
  • Joined

  • Last visited

Joern's Achievements

Newbie

Newbie (1/4)

0

Reputation

  1. Thanks for your hints malexander. I had a project on a Cmod A7-35T with micron-flash and vivado/sdk 2017.4 that worked perfectly till a new shipping arrived with cmods with macronix flash MX25L3233F. After some analysis and forum searches I found this thread and the good hints. I followed them and the updated guide @ https://reference.digilentinc.com/learn/programmable-logic/tutorials/htsspisf/start First I tried it with my old 2017.4 (because I saw no hint, that it have to be a never SDK). But it didn't work. Then i migrate my project to vitis 2020.2 but I had some new problems with this. So I finally migrate my project to 2019.1 (because this seems to be the last version with SDK). After many hours of trial and error, I found out, that the described way didn't work on my site, when writing first the bootloader and after that the application at 0x00300000. But if I do it the other way, it works! :-) I can not understand why this is so, but I tested it several times with different programming orders. It seems, that I have to program the application first and the bootloader second, otherwise the FPGA doesn't boot, the DONE led never lits and my design is not loaded. When reread the flash content after both programming sequences it is always exactly the same content in flash. So the different seems to be in the flash configuration registers. I read the datasheet and looked for the non-volatile flags and found the quad enable QE bit. Maybe the program_flash sets this bit only when programming with 0x00 offset? To test against this suspicion, I tried to configure my AXI_QUAD_SPI from "quad" to "standard" and it really boot with this solution in every programming sequence, also 1st bootloader and 2nd application (but of course much slower).
×
×
  • Create New...