Skip to main content
Graduate II
February 2, 2023
Question

H723 - OCTOSPI: device's page size and wrap settings

  • February 2, 2023
  • 3 replies
  • 1874 views

Hey Octospi experts,

I just got an external quad-SPI SRAM (AP6404L-3SQN) running via the H723's Octospi.

At least mostly...

No HAL use, only direct register settings (except for writing via DMA, still using HAL_MDMA_Start_IT() to trigger the transfer).

Right now Memory-Mapped reading* is working, so does DMA writing.

And good that I tested with write / read buffers > 1024, the SRAM's page size, so that I found the page wrap problem early.

Question:

There are many STM32 registers concerning WRAP stuff, but can I set these up so that I don't need any other precautions vs page wrapping?

Esp. when doing memory-mapped reading (with the 8 byte limit) and DMA writing (probably not, as the ref manual says)?

Before spending another week on that and wrecking my nerves, I better ask here.

I honestly admit that I don't really understand the (slightly thin) documentation about the wrap part in the ref manual (RM0468, pg 923) - and I experienced that this is not always 100% reliable.

* Memory-Mapped writing is NOT working 100% reliable (sometimes it does...), as expected after advice from AP-Alex and this thread:

https://community.st.com/s/question/0D53W00000iCq1hSAC/stm32h723-problem-with-serial-ram-in-memory-mapped-mode?t=1674625319580

    This topic has been closed for replies.

    3 replies

    LCEAuthor
    Graduate II
    February 3, 2023

    Any hints or ideas anybody?

    LCEAuthor
    Graduate II
    February 8, 2023

    Nobody?

    I really get some strange results, sometimes it's wrapping, sometimes it doesn't, depending on compilation, without having changed any OCTOSPI registers.

    Super User
    October 1, 2024

    @LCE Any progress here? I'm running into the same issue. It seems like the wrap setting in CubeMX have no effect on what the MCU does. I can look at the signal level and see it's treating the interface as if there is no wrap.

    Will make a new thread if you haven't found the answer.

    @Alex - APMemory 

     

    Edit: seems like I made this too soon. It looks like memory mapped writes are simply not fully supported on the H723 with AP memory. Okay, that's that. Weird for STM32 to have an "AP Memory" setting if that's the case.

    https://community.st.com/t5/stm32-mcus-products/stm32h723-problem-with-serial-ram-in-memory-mapped-mode/m-p/229476?t=1674625319580

    The more I read into troubles and erratas it feels like the OCTOSPI interface is quite half-baked on the STM32H7. Maybe newer families are better.

    Explorer
    October 1, 2024

    Yes, there are a documented limitation for supporting Quad SPI SDR memorry mapped write on STM32H723. OCTAL SPI Memory controller is full spec. Newer MCU have this QSPI limitation solved.

    Alex

    LCEAuthor
    Graduate II
    October 2, 2024

    @TDK 

    I actually gave up on using a quad RAM - and a good idea that was, seeing that you only get 55 Mbps...
    I need at least 55 MByte/s.

    I somehow got a H735 dev board including the octal HyperRAM, and that worked like a charm, also on my custom board with a H733 and a newer version of Infineon's HyperRAM.

    The only drawback: it's a BGA - which we still try to avoid in our small company, not having the tools to change or repair these.

    Explorer
    October 11, 2024

    Hi,

    Adding few comments, if pin count is most critical we do have 128Mb QSPI DDR supported by STM32H72x/3x, improving BW at low pin count but this is WLCSP, so not most easy to assy.

    Regarding Octal RAM all density (64Mb ~512Mb) can be supporting in BGA24.

    Overview below:

    AlexAPMemory_0-1728666321841.png

    Alex