minhtuanq7
Newbie level 4
fxn_f_selfloop
Hi experts,
I’m developing an application on F2812 using DSP/BIOS and my program run well on RAM. Now I try to write my application to FLASH, I did it base on the SPRA958F document from TI and I met this problem:
After loading into flash, my program look runs well. But when I start communicate with other devices though the SCI and McBSP, the program hangs when I send and receive data at the high speed and it always hang at this address:
3D8772 FXN_F_selfLoop, src/fxn/fxn.s28:107:109$:
3D8772 6F00 SB FXN_F_selfLoop,UNC.
Is there anyone met the same problem like me and how can I solve it?
I guess my problem happen because the speed of FLASH does not fast enough to run the DSP/BIOS kernel code at the high speed (at that time there are up to 4 interrupts happen continuously). I checked in the map file, it show that the FXN_F_selfLoop stay in the .bios sections so I tried to move .bios section from FLASH to RAM at the runtime and execute those codes from RAM. But I can not move this section to RAM, the program hang after the FLASH writer finish. Before I success move .econsts section into RAM but with the .bios section, I can not.
How can I move entire DSP/BIOS kernel such as .bios .rtdx sections from FLASH to RAM at the run time and execute those codes from RAM?
Thank you very much for your help.
Hi experts,
I’m developing an application on F2812 using DSP/BIOS and my program run well on RAM. Now I try to write my application to FLASH, I did it base on the SPRA958F document from TI and I met this problem:
After loading into flash, my program look runs well. But when I start communicate with other devices though the SCI and McBSP, the program hangs when I send and receive data at the high speed and it always hang at this address:
3D8772 FXN_F_selfLoop, src/fxn/fxn.s28:107:109$:
3D8772 6F00 SB FXN_F_selfLoop,UNC.
Is there anyone met the same problem like me and how can I solve it?
I guess my problem happen because the speed of FLASH does not fast enough to run the DSP/BIOS kernel code at the high speed (at that time there are up to 4 interrupts happen continuously). I checked in the map file, it show that the FXN_F_selfLoop stay in the .bios sections so I tried to move .bios section from FLASH to RAM at the runtime and execute those codes from RAM. But I can not move this section to RAM, the program hang after the FLASH writer finish. Before I success move .econsts section into RAM but with the .bios section, I can not.
How can I move entire DSP/BIOS kernel such as .bios .rtdx sections from FLASH to RAM at the run time and execute those codes from RAM?
Thank you very much for your help.