cancel
Showing results for 
Search instead for 
Did you mean: 

How can I extend much more RAM on STM32?

DMårt
Senior II

Hello!

I have just currently developed a matrix library for embedded systems. It works for all systems. The problem is that using matrices, takes lot of both ram memory and flash memory. So i need a better controller, but the largest RAM from STM32 i could find was 1 MB RAM from the STM32F7 controllers.

I wonder if there is a way to extend flash and ram for STM32?

My library:

https://github.com/DanielMartensson/EmbeddedLapack

You can see the programs I using. It's the system identification algorithm and model predective control algorithm.

17 REPLIES 17

So I cannot use the STM32F746G-DISCO board for my C-library and C-programs listed at my GitHub?

S.Ma
Principal

Search for

ARM Cortex M7 CPU with DPFPU in the description to confirm 64 bit double format support.

If not you will read FPU instead (32 bit float).

Do the reading and conclude.

Weird. In this document, they say that STM32776xxx have DPFPU.

https://www.st.com/content/ccc/resource/technical/document/application_note/0e/53/06/68/ef/2f/4a/cd/DM00169764.pdf/files/DM00169764.pdf/jcr:content/translations/en.DM00169764.pdf

But the link above, say something else.

But anyway. I cannot use the Discovery board STM32F746G-DISCO.

MNapi
Senior III

It is just impossible you would need external data and address bus to plug it in.

look for example for I2C RAM it can give you a few MB.

OLD fassion CPU like Intel, Zilog have data and address pins so you can connect as high as the address line allows. Here you are stock with whatever you have inside.

The STM32 provides for similar external bussing. The Z80 had NO internal memories beyond the register file.

I2C is hideously slow in the context of a processor running at a few hundred MHz

Now the STM32 will run a lot faster using its internal tightly coupled memories, and the external interfaces will eat a lot of pins, so there is a balance.

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

There are several STM32F7 parts. The F72x,F73xF74x,F75x parts have the smaller single precision FPU, where as the F76x,F77x have the large double precision FPU. The functionality not performed by the FPU is handled in software.

Why can't you use the STM32F746G-DISCO? You're writing/testing software.

The real problem seems that the STM32 is under resourced for your specific application.

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

No. The real problem is that I don't know if STM32F746G-DISCO will work with https://github.com/DanielMartensson/EmbeddedLapack Try the library if you want. Very easy to use one of my example programs and include "Lapack" and "LinearAlgebra" inside your IDE.