这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界» 论坛首页» 嵌入式开发» STM32» STM32FSMC简介(一)

共3条 1/1 1 跳转至

STM32FSMC简介(一)

高工
2022-01-26 10:52:34 打赏

以下内容整理自《STM32中文参考手册》、正点原子《STM32F1开发指南--库函数版》、野火《零死角玩转STM32F103霸道V2》,仅为个人学习方便所整理


1.STM32控制器芯片内部有一定大小的SRAM及FLASH作为内存和程序存储空间,但当程序较大,内存和程序空间不足时,就需要在STM32芯片的外部扩展存储器了,扩展内存时一般使用SRAM和SDRAM 存储器。STM32F1系列的芯片不支持扩展SDRAM (STM32F429系列支持),它仅支持使用FSMC外设扩展SRAM,由于引脚数量的限制,只有STM32F103ZE 或以上型号的芯片才可以扩展外部SRAM。


给STM32芯片扩展内存与给PC扩展内存的原理是一样的,只是PC上一般以内存条的形式扩展,内存条实质是由多个内存颗粒(即SDRAM芯片)组成的通用标准模块,而STM32直接与SRAM芯片连接。


STM32F1系列芯片使用FSMC外设来管理扩展的存储器,FSMC是Flexible Static Memory Controller的缩写,译为灵活的静态存储控制器。它可以用于驱动包括SRAM、NOR FLASH以及NAND FLSAH类型的存储器,不能驱动如 SDRAM这种动态的存储器。


2.FSMC的功能:将AHB传输信号转换到适当的外部设备协议;满足访问外部设备的时序要求。


所有的外部存储器共享控制器输出的地址、数据和控制信号,每个外部设备可以通过一个唯一的片选信号加以区分。FSMC在任一时刻只访问一个外部设备。


3.FSMC包含四个主要模块:AHB接口(包含FSMC配置寄存器);NOR闪存和PSRAM控制器;NAND闪存和PC卡控制器;外部设备接口。FSMC框图如图1:


1643165463506786.png


图1 FSMC框图


3.1通讯引脚:在框图的右侧是FSMC外设相关的控制引脚,控制不同类型存储器的时候会有一些不同的引脚,其中地址线FSMC_A和数据线FSMC_D是所有控制器都共用的。NOR闪存和PSRAM接口的典型信号如表1~3,其中具有前缀“N”的信号表示低有效信号。

表1 非复用信号的NOR闪存接口


表2复用信号的NOR闪存接口


表3 非复用信号的PSRAM接口




3.2存储器控制器:上面不同类型的引脚是连接到FSMC内部对应的存储控制器中的。NOR/PSRAM/SRAM设备使用相同的控制器,NAND/PC卡设备使用相同的控制器,不同的控制器有专用的寄存器用于配置其工作模式。


控制SRAM的有FSMC_BCR1/2/3/4控制寄存器、FSMC_BTR1/2/3/4片选时序寄存器以及FSMC_BWTR1/2/3/4写时序寄存器。每种寄存器都有4个,分别对应于4个不同的存储区域,各种寄存器介绍如下:


FSMC_BCR控制寄存器可配置要控制的存储器类型、数据线宽度以及信号有效极性能参数。


FSMC_BTR时序寄存器用于配置SRAM访问时的各种时间延迟,如数据保持时间、地址保持时间等。


FSMC_BWTR写时序寄存器与FMC_BTR寄存器控制的参数类似,它专门用于控制写时序的时间参数。


3.3时钟控制逻辑:FSMC外设挂载在AHB总线上,时钟信号来自于 HCLK (默认72MHz),控制器的同步时钟输出就是由它分频得到。





关键词: STM32 FSMC

专家
2022-01-26 10:53:14 打赏
2楼

感谢分享!


工程师
2022-01-26 16:08:45 打赏
3楼
谢谢分享

共3条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册]