cancel
Showing results for 
Search instead for 
Did you mean: 

Add External SRAM to STM32H743 without FMC

Blk81
Associate II

Hello,

I am trying to find available solutions for below requirement.
I am using STM32H743 MCU in a design and I want to add external SRAM of 128Mbytes to the design.
I understand can do this with FMC, but the problem is available pins for the FMC are conflicting with the requirements of the other peripherals.
I read the documents and found that there is a possibility of extending the RAM with Quad-SPI, but it is not clear to me when it says, "Can't be written to the memory when it is configured memory-mapped code execution mode". 

I am open to study available options, it would be appreciated, if anyone can suggest any options, share their experience with a similar situation. 

Thanks

1 ACCEPTED SOLUTION

Accepted Solutions
KDJEM.1
ST Employee

Hello @Blk81 and welcome to the Community 🙂,

 

For the QUADSPI interface, in memory-mapped mode, the external flash memory is seen as an internal memory but with some latency during accesses. Only read operations are allowed to the external flash memory in this mode. as mentioned in RM0433 section 23.3.12 QUADSPI use.

The indirect mode mode support read and write operations.

For more information I advise you to take a look at Quad-SPI interface on STM32 microcontrollers and microprocessors - Application note 

KDJEM1_0-1719492186824.png

 

KDJEM1_1-1719492186825.png

For the QUADSPI interface, the write operation is not supported in memory mapped mode.

For the OCTOSPI interface the write operation is supported in memory mapped mode as mentioned in Getting started with Octo-SPI, Hexadeca-SPI, and XSPI Interface on STM32 MCUs - Application note

KDJEM1_2-1719492186826.png

The QSPI examples can help you to write and read data from external memory.

Thank you.

Kaouthar

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

View solution in original post

9 REPLIES 9
SofLit
ST Employee

Hello and welcome the community,

Could you please indicate where you did find this statement?:

"Can't be written to the memory when it is configured memory-mapped code execution mode"

To give better visibility on the answered topics, please click on "Accept as Solution" on the reply which solved your issue or answered your question.
KDJEM.1
ST Employee

Hello @Blk81 and welcome to the Community 🙂,

 

For the QUADSPI interface, in memory-mapped mode, the external flash memory is seen as an internal memory but with some latency during accesses. Only read operations are allowed to the external flash memory in this mode. as mentioned in RM0433 section 23.3.12 QUADSPI use.

The indirect mode mode support read and write operations.

For more information I advise you to take a look at Quad-SPI interface on STM32 microcontrollers and microprocessors - Application note 

KDJEM1_0-1719492186824.png

 

KDJEM1_1-1719492186825.png

For the QUADSPI interface, the write operation is not supported in memory mapped mode.

For the OCTOSPI interface the write operation is supported in memory mapped mode as mentioned in Getting started with Octo-SPI, Hexadeca-SPI, and XSPI Interface on STM32 MCUs - Application note

KDJEM1_2-1719492186826.png

The QSPI examples can help you to write and read data from external memory.

Thank you.

Kaouthar

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

MHoll.2
Associate III

Hi,

As described very well by Alex from APMemory: 

https://community.st.com/t5/stm32-mcus-products/where-is-it-documented-that-stm32h7-can-only-read-memory-mapped/m-p/598460/highlight/true#M225010

There are some limitations on using QSPI /OSPI RAM chips with the STM32H7xx series, but when You use the right device it is working.

Martin

Pretty sure the H743 isn't supporting any memory mapped writes on Hyper RAM, etc.

Minimal 16-bit wide SDRAM probably going to soak up 30 or so pins.

If you want 128MB of RAM you're going to need to re-evaluate your part choice and foot-print to accommodate the memory and the pin escape for other peripherals.

The FMC having the least amount of choices for pin remapping.

 

Probably going to need to look at H72x/H73x or H7Ax/H7Bx devices with OCTOSPI

Perhaps PSRAM or whatever we're calling the multiplex RAM option. Although the capacity suggests SDRAM as the most viable.

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

Yes Tesla DeLorean is right, I had not realized that the STM32H74x familiy has only the "old" QSPI controller.

Sorry for that.

Martin 

No worries, I wasn't looking to be critical.

The whole serial RAM situation is evolving, I'm not sure how mature half this stuff is, and ST has been improving support in designs moving forward, but they don't come back and revisit old stuff. Once a core design is released that's it, the die is generally not respun, certainly not the ARM portions. There's a strong desire not to have to requalify everything, and have issues with mixed IP on the support side. The approach has typically been to move forward/sideways to add features to new family members, and keep them pin-for-pin as much as possible.

Alex from APMemory has done a good job indicating which parts from them and STMicro play together.

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

Thanks for the information @KDJEM.1 , I really appreciate it.

Thanks for the info @Tesla DeLorean I really appreciate it.

Hello @Blk81 ,

 

Thank you for your contribution in STCommunity 

Has your request been answered?

If you need further clarification, please do not hesitate to share it 🙂.

If you request is answered, please click on Accept as Solution on the reply which solved your issue or answered your question.

Thank you.

Kaouthar

 

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.