Hesambook
Full Member level 2
Connecting a 512K*16bit SRAM (IS62WV51216BLL-55TLI) to a 144-Pin package STM32 microcontroller, using the FSMC bus
In some projects, such as using a graphical LCD by the StemWin (EmWin) library, the embedded STM32’s SRAM capacity might not be sufficient. For the 100-pin and 144-pin STM32 packages, there is a possibility to easily connect an external SRAM to a bus named FSMC (flexible static memory controller).
In this project, I decided to connect the IS62WV51216BLL-55TLI to the STM32F103ZE microcontroller. According to the IS62WV51216BLL-55TLI datasheet: “the ISSI IS62WV51216ALL/IS62WV51216BLL are highspeed, 8M bit static RAMs organized as 512K words by 16 bits. It is fabricated using ISSI's high-performance CMOS technology. This highly reliable process coupled with innovative circuit design techniques, yields high-performance and low power consumption devices”.
The STM32F103ZE is a 144-pin MCU package and it provides a fully functional FSMC connection. The figure below demonstrates the architecture of the STM32 and the SRAM blocks.
I use the Altium designer to design schematics and PCBs. I did not have the footprint/schematic symbols for the IS62WV51216BLL-55TLI, nor the STM32F103ZE. For these circumstances, I have installed the Samacsys Altium plugin to easily find and use the components libraries (or by using the Samacsys component search engine).
I “personally” prefer to make a functional schematic symbol for a mixed component, such as a microcontroller like the STM32F103ZE. Therefore, I modified it and divided it up into a few functional parts. If you don’t like a separated-function schematic symbol, you can stick to the Samacsys schematic library and use it directly. This is just a personal taste.
I have prepared the Altium designer files for download, which you can modify/use them for your own project requirements.
The STM32CubeMx is a nice tool to easily setup the FSMC and SRAM for the STM32.
First, you should select the FSMC from the connectivity section. Then modify the hardware type, the chip select, the address, and data bus sizes. In the configuration section, enable the write operation and also the extended mode, then adjust the variables.
In some projects, such as using a graphical LCD by the StemWin (EmWin) library, the embedded STM32’s SRAM capacity might not be sufficient. For the 100-pin and 144-pin STM32 packages, there is a possibility to easily connect an external SRAM to a bus named FSMC (flexible static memory controller).
In this project, I decided to connect the IS62WV51216BLL-55TLI to the STM32F103ZE microcontroller. According to the IS62WV51216BLL-55TLI datasheet: “the ISSI IS62WV51216ALL/IS62WV51216BLL are highspeed, 8M bit static RAMs organized as 512K words by 16 bits. It is fabricated using ISSI's high-performance CMOS technology. This highly reliable process coupled with innovative circuit design techniques, yields high-performance and low power consumption devices”.
The STM32F103ZE is a 144-pin MCU package and it provides a fully functional FSMC connection. The figure below demonstrates the architecture of the STM32 and the SRAM blocks.
I use the Altium designer to design schematics and PCBs. I did not have the footprint/schematic symbols for the IS62WV51216BLL-55TLI, nor the STM32F103ZE. For these circumstances, I have installed the Samacsys Altium plugin to easily find and use the components libraries (or by using the Samacsys component search engine).
https://altium.componentsearchengin...um.componentsearchengine.com/ga/downloads.php
https://componentsearchengine.com
https://componentsearchengine.com
I “personally” prefer to make a functional schematic symbol for a mixed component, such as a microcontroller like the STM32F103ZE. Therefore, I modified it and divided it up into a few functional parts. If you don’t like a separated-function schematic symbol, you can stick to the Samacsys schematic library and use it directly. This is just a personal taste.
I have prepared the Altium designer files for download, which you can modify/use them for your own project requirements.
The STM32CubeMx is a nice tool to easily setup the FSMC and SRAM for the STM32.
First, you should select the FSMC from the connectivity section. Then modify the hardware type, the chip select, the address, and data bus sizes. In the configuration section, enable the write operation and also the extended mode, then adjust the variables.