Skip to main content
Graduate II
March 20, 2024
Solved

Boot from and execute code from external Single- or Dual-SPI flash memory

  • March 20, 2024
  • 1 reply
  • 1093 views

Hey. Is it possible to execute code from external memory using only single- or dual-SPI mode? I have a PCB here with a STM32H730 CPU, but on the flash memory, WP/SIO2 and RESET/SIO3 are connected, so no Quad-SPI possible. :frowning_face:

In these official references concerning XiP I only find Quad-SPI or Dual-Quad(=Octo)-SPI mentioned:

- AN5188

- AN4760 section 6.2

- https://www.youtube.com/watch?v=YFIvJVsvIsE&list=PLnMKNibPkDnHIrq5BICcFhLsmJFI_ytvE&index=2

Thank You!

    This topic has been closed for replies.
    Best answer by Tesla DeLorean

    Yes

    If you can construct a read command and access the memory, you can use that as a template for the Memory Mapped mode.

    Single or Dual will work fine, although will constrain bandwidth. Caching properly can hide a lot of that.

    1 reply

    Graduate II
    March 20, 2024

    Yes

    If you can construct a read command and access the memory, you can use that as a template for the Memory Mapped mode.

    Single or Dual will work fine, although will constrain bandwidth. Caching properly can hide a lot of that.

    pkoevesdiAuthor
    Graduate II
    March 20, 2024

    Ah, thank You very much, good news. So, I'll try this.

    To get it right: By "use that as a template" You mean setting the right commands for instance into OCTOSPI_IR and OCTOSPI_WIR registers? Ist this special in Single- or Dual-SPI-Usage of Memory-mapped mode, or wouldn't I have to put the commands there anyway, also in Quad-SPI (unless my HAL or any other layer doesn't put some proper / common / default commands there)?