The startup time is too long for me, and I found the process of initializing SRAM ECC costs about 80ms. If I delete this process, It cannot start normally. So, How can I reduce the time in startup.s?
You can initialize RAM by parts.
First initialize minimum RAM needed for your application to run.
During application runtime initialize rest of RAM as you like.
PS: RAM has to be initialized once its content is destroyed as it implements ECC protection.
I tried to reduce the size of RAM to 128K. which is m_data. The chip runed normally if I didn't use the RAM named sys_data, Mag, temptracksect,etc. However, If I added the code in the main function which is used to initialize RAM named sys_data, the chip cannot work again.
use only RAM which you have initialized. If you use unitialized RAM you will get multibit ECC faults on read.
As I have explained above. Initialize RAM by parts according to you SW needs.
So if your main use RAM which is not yet initialized, do init first and then execute the code which is using it.
There is no real issue here.
Retrieving data ...