STM32F4 FMC学习

一、区域划分

          FMC灵活的存储控制器。FMC可连接SRAM(异步或同步)、SDRAM、NORFLASH、PC卡、NANDFLASH.支持突发模式,可编程时钟,8位、16位、32位宽的数据总线。FMC有6个存储区域,每个区域支持256MB的寻址空间。

          第一个区域用于NORFLASH、PSRAM、SRAM,包括4个子区域,每个子区域有各自的片选信号,可连接4个器件。

          区域2和3 用于NAND Flash,每个区域只能连接1个器件。

          区域 4 用于连接PC卡。

          区域5和6 用于SDRAM,每个区域只能连接1个器件。

          每个存储器区域使用的存储类型,可通过配置寄存器配置。

二、 地址映射

        1、NOR/PSRAM 地址映射

STM32F4 FMC学习

STM32F4 FMC学习

  HADDR 是内部总线地址,根据外部的存储器数据位宽的不同,内部总线地址和外部存储器地址的映射关系如上表所示。

         HADDR 的bit26 bit27 用于选择区域一中的子区域。

       

        2、SDRAM的地址映射

     STM32F4 FMC学习

STM32F4 FMC学习

  ①  HADDR[28]位(内部AHB地址线28)用于选择区域5、6两个SDRAM区域中的1个。

  ②  表252 表示的是13行11列的SDRAM存储器件,不同的数据位宽 HADDR和外部存储器件地址的对应。

          ③   内部存储指的是选择外部存储区域的哪个BANK,最多支持四个BANK。


三、 NOR Flash / PSRAM 控制器

         1、支持的器件访问模式

         异步SRAM和ROM: 8位、16位、32位

 PSRAM: 异步模式、同步访问的突发模式、复用或非复用。

         NOR Flash:异步模式、同步访问的突发模式。

         每个子区域都有唯一的片选信号NE[4:1] ,地址线、数据线、控制信号共用。

         2、可编程时钟

              等待周期可编程(最多15个时钟周期)、总线周转周期可编程(最多15个时钟周期)、输出使能和写入使能延迟可编程(最多15个时钟周期)、独立的读和写时序和协议(可用在读写控制时序不一样的器件 LCD)、可编程的连续时钟输出。

        3、NOR Flash/PSRAM控制器异步事务

              所有的控制器输出信号在时钟的上升沿变化。

           1、异步静态存储器(NOR Flash   PSRAM  SRAM)

               ①  信号通过内部时钟HCLK进行同步,此时钟不会发送到外部存储器。

               ②  如果使能扩展模式,最多提供四种扩展模式(A B C D),可以混合使用A B C D模式来进行读取和写入操     作,可以混合使用不同模式。

               ③   如果禁用扩展模式,则FMC在模式1或模式2下运行。选择SRAM/PSRAM存储器时,模式1是默认模       式,当选择NOR存储器时,模式2为默认模式。

                 模式1:读取信号线数据发送期间保持低电平

                 模式A:读取信号线数据发送期间有高低电平的切换,读取和写入的时序可以独立。

        四、NAND Flash/ PC 卡控制器

             支持的设备类型:8位和16位的NAND,16位PC卡兼容设备

        五、 SDRAM控制器

             1、控制器特性

                  两个SDRAM区域可独立配置,8位、16位、32位的数据宽度,13位行地址11位列地址、支持有4个bank的存储设备,支持字、半字、字节访问,SDRAM时钟可以是HCLK的2或3分频,支持自动刷新可编程刷新频率