W7500 flash memory and IAP


I create a new topic, but this question is following "W7500 flash memory interface registers"

I've read the IAP example but ... as i want to understand what the code do, i've look a bit -into- the IAP firmware.

The two sectors "DATA0" (located at 0x0003fe00) and "DATA1" (located at 0x0003ff00) can be erased using ERAS_DAT0 (id 0x16) and ERAS_DAT1 (id 0x17). Into the IAP code, this sectors are searched at 0x[color=#FF0000]1[/color]003fe00 and 0x[color=#FF0000]1[/color]003ff00 ... this address can't be read by cpu. Why this difference ?

(attached file is the begining code of IAP, from memory dead-listing)
iap.txt (3.47 KB)

Hello, Hooligan0

Thank you for your new topic!!

And Thank you for your interests with W7500.

May you know there are Normal operation mode & Boot mode in w7500. And they have different memory map.

You can refer page 34 in datasheet ([url]http://wizwiki.net/wiki/lib/exe/fetch.php?media=products:w7500:151014_w7500_rm_v102.pdf[/url])

As the result,why it happens is ,right after booting, the memory map is changed(remapping) to normal operation mode memory map from boot mode memory map

That’s why you can find the same data at 0x1003fe00(boot mode) and 0x0003fe00(normal mode).

After remapping, anyone can not touch 0x1xxx xxxx (it is reserved). So, you could not read and erase…

If you have any other issues, please ask us, it will be so welcomed!

Thank you and have a good holiday! :smiley: