Question: Which external memories can the external memory interface (EMIF) support?
The EMIF supports four types of external memory: synchronous SRAM, asynchronous SRAM, cellular RAM/PSRAM, and NOR flash. The following are the main features of the EMIF:
- The EMIF Component enables access by the CPU or DMA to memory ICs external to the PSoC® 3/5LP.
- EMIF memory can be 8- and16-bit data bus width and 8-, 16-, and 24-bit address bus width.
- For PSoC 3, the EMIF XDATA Data Address Map ranges from 0x800000 to 0xFFFFFF; for PSoC 5LP, the EMIF Memory Address Map ranges from 0x60000000 to 0x60FFFFFF.
- The EMIF also supports a custom interface apart from standard asynchronous and synchronous interfaces.
- Code cannot be executed from the EMIF in PSoC 3, while it is possible in PSoC 5LP. However, it is difficult to initialize code in external memory. In general, having code in external memory is not recommended.
There is an example project associated with the EMIF Component, which can be opened from PSoC Creator™ > File > Open > Example Project. Select EMIF in Keyword #1. This project was performed with an asynchronous SRAM on a prototype QVGA board. You can also find the necessary documentation along with this project.