2023-04-27 12:33 AM
Hello,
I'm trying to validate a CNN model using X-CUBE-AI and the STM32H747I-DISCO board with the microcontroller STM32H747XIH6. The Flash memory size should be 2MB and 1MB of RAM. However, the memory limit is bellow the expected one. For instance, the Flash is limited to 1MB (please see the picture from the attachment).
Can someone please help me with an explanation?
Thank you very much!
Solved! Go to Solution.
2024-01-03 12:54 AM
Hello @ILuca.1
X-CUBE-AI displays 1MB of flash available for your project because you are working on either Cortex-M7 or Cortex-M4.
This board has two MCUs. So the project splits this 2MB in half for both MCUs which concludes to 1MB each.
You can follow the documentation to raise this 1MB to approx. 2MB:
See: AI:How to run larger models on STM32H747I-DISCO - stm32mcu
You can use External Flash also, but it may increase your inference time.
Best regards,
Yanis
2023-04-27 04:31 AM - edited 2023-11-20 07:00 AM
Hello,
It's a 2 MB Flash device. You can confirm it by using Cube Programmer:
2023-04-27 05:08 AM - edited 2023-11-20 07:00 AM
Hello SofLit,
Thank you very much for your feedback. This is correct.
But using the STM32CubeMX and analyzing the network I have this result:
If I understand correctly, 1024KB is the maximum Flash size that is considered. This is the issue, why is it so?
Thank you!
2023-04-27 05:50 AM
It could be a typo.
2023-04-27 05:58 AM
Do you think that would be possible to check and to fix it somehow? as a normal user. It would be very helpful for me.
Thank you!
2023-04-27 06:08 AM
Internal ticket 150730 has been opened for that purpose.
2023-04-27 06:13 AM
Excuse me for asking. How long will it take before I can use it? It is useful for me to know how to proceed.
2023-04-27 08:10 AM
Perhaps modify the linker script or use external to proceed.
Check if there is some project level meta-data you can simply edit as a work-around.
2023-05-07 11:40 PM - edited 2023-11-20 07:00 AM
Hello Tesla DeLorean,
Thank you for your feedback. Yes, there is a possibility to modify the linker script. But the SW automatic compilation from 'Validate on target' is not successfully passed using STM32CubeMX. Something else is used as reference for the flash memory..
However, it is possible to compile the SW using STM32CubeIDE with the linker script modification. After that, I used STM32CubeProgrammer to download the output files.
But I still have a problem. Using 'Validate on target' with the aim to validate and not to perform automatic compilation and download, I have the next communication error:
The STM32CubeProgrammer is disconnected when the error occurs.
So far, I have not managed to find a solution. I'm limited with the debugging capabilities.
2023-12-27 06:02 AM
Hello,
Has this internal ticket 150730 been resolved?
Thank you!