【SRAM控制流程】

SRAM控制流程

一、IS62WV51216介绍

IS62WV51216 是 ISSI(Integrated Silicon Solution, Inc)公司生产的一颗 16 位宽 512K(512*16,即 1M 字节)容量的 CMOS 静态内存芯片。该芯片具有如下几个特点:高速,具有 45ns/55ns 访问速度;低功耗;TTL 电平兼容;全静态操作,不需要刷新和时钟电路;三态输出;字节控制功能,支持高/低字节控制。其引脚图如下所示:

IS62WV51216引脚图
图1 IS62WV51216引脚图
如下图2所示,为该芯片的功能框图,图中所示①部分表示的是该芯片的地址线,A0~A18共有19根(即2^19=512K,但该芯片为16位宽,则有2*512=1024K=1M)。
第②部分是该芯片的数据线,I/O0-I/O15共有16根数据线,一次可以访问16bit的数据,也就是两个字节,因此数据可以分为高字节和低字节之分,其中I/O0-I/O7为低字节数据,I/O8-I/O15为高字节数据。
第③部分是控制线,其中CS1和CS2是片选信号,CS1为低电平有效,CS2为高电平有效,此片选信号是为了选择SRAM(该片是由两片拼接起来的)。OE是输出使能信号,低电平有效,也就是主控从SRAM读数据。WE是写使能信号,低电平有效,主控向SRAM写数据。UB和LB信号是访问高字节和低字节的选择,都是低电平有效,UB是访问高字节,LB是访问低字节。

IS62WV51216功能框图
图2 IS62WV51216功能框图

二、FSMC简介

FSMC是Flexible Static Memory Controller的缩写,就是灵活的静态存储控制器。它可以用于驱动包括SRAM、NOR FLASH以及NAND FLSAH类型的存储器。stm32就是使用FSMC这个存储控制器来管理IS62WV51216。
FSMC框图
图3 FSMC框图
从上图我们可以看出,STM32F4 的 FSMC 将外部设备分为 2 类:NOR/PSRAM 设备、NAND/PC 卡设备。他们共用地址数据总线等信号,他们具有不同的 CS 以区分不同的设备。
FSMC与IS62WV51216接线图

图4 FSMC与IS62WV51216接线图
从图4可以看出STM32F4和IS62WV51216的连接关系:
A[0:18]接 FMSC_A[0:18]
D[0:15]接 FSMC_D[0:15]
UB 接 FSMC_NBL1
LB 接 FSMC_NBL0
OE 接 FSMC_OE
WE 接 FSMC_WE
CS 接 FSMC_NE3

三、配置FSMC

上面已经对IS62WV51216芯片和STsM32F4的FSMC进行了简单的介绍,接下来就是对FSMC进行相关的配置进行概括性的阐述:
1、 使能FSMC时钟,配置FSMC相关的I/O及其时钟的使能
要使用 FSMC,当然首先得开启其时钟。然后需要把 FSMC_D0-15,FSMCA0-18 等相关IO 口,全部配置为复用输出,并使能各 IO 组的时钟。
使能FSMC时钟:
RCC_AHB3PeriphClockCmd(RCC_AHB3Periph_FSMC,ENABLE);//使能FSMC 时钟
配置IO口为复用输出:
GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用输出
引脚复用映射调用的函数为:
void GPIO_PinAFConfig(GPIO_TypeDef* GPIOx, uint16_t GPIO_PinSource, uint8_t GPIO_AF);
2、 设置FSMC BANK1区域3的相关寄存器
设置区域3的存储器工作模式、位宽和读写时序等。
3、 使能BANK1区域3
最后,需要通过FSMC_BCR寄存器使能BANK1,区域3.。

四、操作流程

SRAM的读取与存储的操作流程:
从Dout引脚读取1bit数据须要下面的步骤:
1、 通过地址总线把要读取的数据的地址传送到对应的读取地址引脚(这个时候~WE引脚应该没有激活,所以SRAM知道它不应该运行写入操作)
2、 激活~CS选择该SRAM芯片
3、 激活~OE引脚让SRAM知道是读取操作
从Dout引脚存储1bit的数据须要下面的步骤:
1、 通过地址总线确定要写入信息的位置(确定~OE引脚没有被激活)
2、 通过数据总线将要写入的传输数据到Dout引脚
3、 激活~CS引脚选择SRAM芯片
4、 激活~WE引脚通知SRAM要进行写入操作

        描述多有粗糙,还望理解,如有不当还请海涵!!!
  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值