Skip to main content
Graduate II
June 27, 2024
Solved

FMC memory in fmc display

  • June 27, 2024
  • 1 reply
  • 1283 views

hello, I have a display configured for FMC but I would like to add a framebuffer to the RAM memory, unfortunately the MCU memory is not enough (the display resolution is 480x800) so I have to add external RAM. My question is how to do it since I am already using FMC for the display. Can I connect RAM to the same pins?

    This topic has been closed for replies.
    Best answer by mƎALLEm

    Hello,

    You will be using the same Address/Data/ NOE/NWE pins and you need to drive your SRAM with another chip enable. The chip enable FMC_NE is driven according to the access address :

    SofLit_0-1719483210024.png

    BANK1 (256MB) needs to be used which in turn split into 4x64MB. Each access to a block of 64MB will activate the corresponding FMC_NEx pin FMC_NE1 to FMC_NE4.

    SofLit_1-1719483320578.png

    Hope I answered your question.

     

    1 reply

    mƎALLEmAnswer
    Technical Moderator
    June 27, 2024

    Hello,

    You will be using the same Address/Data/ NOE/NWE pins and you need to drive your SRAM with another chip enable. The chip enable FMC_NE is driven according to the access address :

    SofLit_0-1719483210024.png

    BANK1 (256MB) needs to be used which in turn split into 4x64MB. Each access to a block of 64MB will activate the corresponding FMC_NEx pin FMC_NE1 to FMC_NE4.

    SofLit_1-1719483320578.png

    Hope I answered your question.

     

    Graduate II
    June 27, 2024

    Thank you, so FMC_NEX works in parallel with another enable? Do I have to stop refreshing the display when I want to modify something in the buffer? Additionally, will this solution work OK and does double buffer make sense in this case?

    Technical Moderator
    June 28, 2024

    Thank you, so FMC_NEX works in parallel with another enable? 


    Each enable is activated at a time. FMC_NEx is activated automatically by the FMC controller according to the description I provided previously.

    As example, you can refer to the STM3240G-EVAL board schematics which is using LCD and SRAM that both are connected on FMC interface: 

    SofLit_0-1719586124747.png

     

    Do I have to stop refreshing the display when I want to modify something in the buffer? 


    You are using LCD over FMC, and normally, these kind of display devices have their own controllers with an internal RAM that holds the display buffer. I don't think you need to stop refreshing the display.

     


    Additionally, will this solution work OK and does double buffer make sense in this case?

    I think it depends on your application.