cancel
Showing results for 
Search instead for 
Did you mean: 

External OctoSPI flash and internal Flash

Hector_06
Associate III

Hello everyone ;

I am sorry for the basic question ; this is my first experience in external flash.

we a re using kiel for develop our software . how can I set that some part of code to be located in the external falash ? and is it possibel to have mix code internal flash and external flash ? and can we debug it?

when placing some code in the external flash and internal flash how could we downlaod the program to the board using jtag? or i need to write a bootlaoder to flash the external flash ?

Thank you in advanced

1 REPLY 1

In the target pane you should be able to configure the IROM and EROM regions to describe the memories. Alternatively via the Scatter File.

Content can be directed to sections via an attribute directive, or at an object/symbol level in the scatter file.

To program the external memory you'd need to have a Flash Algorithm (.FLM) file which you pick in the Debug Settings / Flash pane. This algorithm you create will need to support the external memory and pin interface you've used on your board. The flash algorithms need to describe all the memory areas you want to be able to program.

Debugging, the debugger can't see the memory until a) you bring it up in your own BSP code, b) you have a debugger script (.INI) where you manually walk through the external interface set up by poking all the assorted GPIO, RCC and OSPI peripheral registers.

I'd certainly recommend considering a robust boot loader, that manages all the critical clock, PLLs, GPIOs and memory interfaces, and removes those tasks from the Application so as not to repeat those processes.

Tips, Buy me a coffee, or three.. PayPal Venmo
Up vote any posts that you find helpful, it shows what's working..