I'm using ISE/EDK/SDK 11.2. Our design uses a microblaze that bootloads our firmware from an external flash to an external RAM. During development, I have always used the "Program Flash Memory" menu in SDK to write the program to the flash. Now we are in production, I am looking for a way to move all of the parts programming to our manufacturing department.
To program the platform flash, we use Impact, which we can install in our manufacturing department with the Programming Tools installation. My problem, though, is that the only way I have found to program the Microblaze's flash is using SDK or XPS, which requires installing EDK.
Is there an easy way to program the Microblaze flash without EDK (using, say, only the tools provided in the Programming Tools installation)? What have other people done?
You can also use programs like impact to do the programming. There are several guides to do this if the flash is wired correctly. Impact can be used for the PROM generation as well as the programming. Keep in mind that the addresses in impact will be word addresses, not byte addresses. So a 16b flash will have addresses offset half of what would be used in the byte-addressable CPU. Likewise, it seems some formats require the data be bit-reversed before writing to the flash. Its easy enough to write the code to do this, or find some perl scripts in various appnotes.
It might be helpful the first time to write some easily known data to known addresses of the flash Things that easily show bit-reverse/addressing/ ect... issues. That way if things don't work on the first attempt, you'll be able to check the basic address/byte/bit ordering things that can go wrong.