cancel
Showing results for 
Search instead for 
Did you mean: 

Available QSPI flash for memory mapped mode

Roland Hoesch
Associate II
Posted on February 20, 2018 at 17:25

Actually we are using a tool for GUI development on STM32F746.

 

This tool internally uses memory mapped mode to access the QSPI flash. In principle this is working fine, but the QSPI flash MT48LC4M32B2B5, which used in the their demo application and in the ST discovery board is not available for purchase.

 

Also it seems to be very complicated to flash the binary to the external flash. There's a description, how to write an external loader. But despite this description contains the word 'easily' in each sentence, this isn't easy.

 

So resulting from these problems, there are some questions:

 

1.

Is it possible to replace these 'memory mapped mode' by an other method of accessing the flash? I assume it is not, because the program needs direct memory access.

 

2.

The choice of flash memory supporting the memory mapping feature seems to decrease. Which available chips are supported from ST?

 

3.

For which flash modules supporting memory mapped mode does ST provide an external loader?
6 REPLIES 6
john doe
Lead
Posted on February 20, 2018 at 18:49

memory mapped mode for the qspi flash is read-only.  if you're going to write to it, you don't have it memory mapped mode 

AVI-crak
Senior
Posted on February 20, 2018 at 19:20

Loading a program from a memory card does not differ from downloading data from the internal memory, everything is configured in the linker - the start / end / quantity markers are used.

But loading executable code into memory does not make sense, it's easier to execute this code directly from external memory.

To speed up - you can use the settings for the function for both the translated code (without dependence on the starting address). In this case, you can store a huge number of individual tasks in an external flash memory, and load them for execution in RAM - like * .exe application. From a certain point on, your system will look like an android. And the more complex the system, the closer the correspondence.

You need a huge amount of executable code (not data !!!), in order to require external storage. This situation is possible when using other ready-made software modules, and there should be a lot of them !!!

I want to see this monster.

About loading the firmware into external memory.

First you have to wait about two hours to wait for the compilation of your firmware to complete (I have it exactly), then 8-16 minutes to update the external flash memory. This is an incorrect algorithm, but I can not change it any more.
Posted on February 20, 2018 at 23:19

Hi Joe,

what is the sense of your answer? There's absolutely no coherence to my question

:(

Posted on February 20, 2018 at 23:30

It's really easy to have such a so called 'monster' application, if your building a gui containing a lot of images.

Obviously there exist such external loaders. I.e. when flashing the external flash of the STM32F746-DISCO this is done in less than 30 seconds (depending on amount data). But there is obviously no support of ST, ich you have have to use another flash chip, than the one of there DISCO board.

Posted on February 21, 2018 at 00:10

Images are not executive code, they are just data.

In this case, everything is much simpler.

You can use the file system, and lose the percentage of speed.

You can use a static structure, and access external memory at a direct address.

There is no universal program for writing external memory from st, but the microprocessor itself can work as a programmer. He has everything necessary for this. CubeMX allows you to build a project with a mouse, and it will work. You need to write a small algorithm yourself - the same entry in the external memory. The external memory is surprisingly different, the algorithm and the recording protocol can be quite different. On this single standard does not exist.

When connecting via usb - throw off the binary file. Wait for the green whistle.

Although I personally use an external fast programmer + clothespin to external memory. It was easier and more reliable. The microprocessor must be sent to a long reset during recording, for ten minutes.

Posted on February 21, 2018 at 03:39

if you use the search feature, you can find threads about making your own external loaders. this has come up before here.