Question
FSMC with Synchronous Memory
Posted on September 02, 2014 at 02:20
I'm trying to connect from an STM32's FSMC to block-RAM inside an FPGA. Since this type of memory is synchronous, I need to expose the FSMC clock to the FPGA.
At the moment I have an STM32F4-Discovery connected to a logic analyser to check that the signals are behaving as I would expect. When I configure the device as an asynchronous SRAM as per the STM324xG_EVAL in the STM32Cube library examples, I can see the pins toggling basically as I would expect, but with no activity on the clock line. I'm finding the documentation extremely vague for synchronous operations, can I can't find any examples.But, when I change memory to burst mode, I can see activity on the clock line, but nothing else toggles. I'm not sure if this is because the FSMC module is waiting for an extra signal or something, but I can't get it to write to the bus; I simply see the FSMC_CLK pin toggling.I have several questions that I think will help with my problem:- Is ''burst mode'' the only mode that uses the clock.
- I see that there are three types of memory: SRAM, PSRAM and NOR types. However, the library only has ''stm32f4xx_hal_nor.c'' and ''stm32f4xx_hal_sram.c''. Is there another source file for ''PSRAM''? Do I use the NOR functions or the SRAM functions to configure for PSRAM mode?
- If I configure for synchronous operation (burst mode?), do I need to do anything with the WAIT signals? I currently have it disabled, but do I need to enable it?
