STM32F429第二十四篇之SRAM原理

前言

在整个F4系列的器件,都支持FSMC——灵活的静态存储控制器。而F429支持FMC——可变存储控制器。两者的区别在于,FMC在FMSC的基础上增加了对DRAM的支持。而FSMC和FMC在地址上是重叠的,也就是说,在F429中,是通过FMC直接替代了FSMC,所以,在F429的学习中,直接学习FMC即可,不用两者同时学习。

本文只介绍FMC中SRAM部分,其余的部分待以后补充。

本文主要参考资料为:

  • ST.RM0090
  • 正点原子.STM32F429开发指南-HAL库版本_V1.1

框图

在这里插入图片描述
上图是整个FMC的框图。其中与SRAM相关的管脚,已经用红色标红。具体如下:

  • NBL[3:0]:字节控制
  • A[25:0]:地址线
  • D[31:0]:数据线
  • NE[4:1]:片选信号
  • NOE:读信号使能
  • NWE:写信号使能
  • NWAIT:等待

在这里插入图片描述

外部器件地址映射

在这里插入图片描述
整个FMC划分为6个固定大小的存储区域,如上图所示,每个存储区域的大小为256MB。其中,SRAM在BANK1中。BANK1被划分成4个子区域,带有4个片选信号,上文已经介绍。

其中,映射地址(HADDR)的第26位与第27位用于选择四个存储区域。在上图表格中已经列出。

HADDR[25:0]则对应地址输出管脚,对应外部存储器的地址。HADDR是按照字节编址,即数据宽度为8位。若存储器的数据宽度不同,则FMC向存储器发送的地址也将不同,如下表所示。

在这里插入图片描述
注意:

若外部存储器的宽度为16位,FMC将使用HADDR[25:1]地址来作为对外部存储器的寻址地址,即地址线上输出的地址为A[24:0]。 则无论外部存储器的宽度是多少,都应将FMC_A[0] 连接到存储器地址 A[0] 。则每个存储区域的子区域的最大存储容量为512Mb(64MB)。

时序

如果使能扩展模式,则最多可以提供四种扩展模式,并且可以组合不同的模式来分别配置读写操作。
如果禁用扩展模式,则只有两种模式可以选择。

本文不再详细分析每一种模式,而是通过与35510的时序对比的方式,重点介绍拓展模式中的模式A。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

上图文档详细介绍了模式A的时序图以及寄存器的配置方法。

其中第一个寄存器是功能配置,这里不再详细介绍,下面重点介绍一下时序的配置。

通过观察时序图,可以发现,共有三个时间可以配置,分别为:

  • 存储器事物时间,对应寄存器为:BUSTTURN
  • ADDSET时间,对应寄存器为:ADDSET
  • DATAST时间,对应寄存器为:DATAST

他们的取值范围为:
在这里插入图片描述
若以显示器nt35510为例,该时序为:

在这里插入图片描述

很容易找到该时序前6项与FMC的A模式对应关系。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值