FSMC机制的NOR Flash存储器扩展技术
时间:02-02
来源:互联网
点击:
3 STM32扩展S29GL系列NOR Flash实例
3.1 S29GL 系列NOR Flash简介
Spansion公司的S29GL系列芯片是采用90 nm技术制造的高集成度NOR Flash存储芯片,提供16~128 MB可选容量,支持最快25 ns的页访问速度和110 ns的随机访问速度,带有最大64字节的写缓冲区,以提供更快、更高效的编程,是嵌入式系统设计中大容量存储器扩展的理想选择。本文选用的型号为 S29GL512P,容量为512×64K字(总容量64 MB),扩展到NOR Flash控制器管理的BANK1的第2个子BANK。
3.2 STM32与S29GL512P的电路连接
S25GL512P可通过控制引脚BYTE选择对芯片的访问单位(字/字节),区别在于:
① 对于芯片引脚DQ15,字模式时传送最高数据位D15;字节模式时传送最低地址A-1。
②字模式时,数据引脚 D0~D15上传送数据信号;字节模式时,只有D0~D7上有信号。
此处,将BYTE上拉到高电平,选择16位的字访问单位。FSMC数据线FSMC_D[15:0]与S29GL512P的D15~D0对应连接;FSMC地址线FSMC_A[25:0]的低25根与S29GL512P的地址线A[24:0]对应连接。
由于S29GL512P芯片映射到BANK1的子BANK2,可确定其片选线应连接FSMC片选控制线 FSMC_NE2。S29GL512P的RY/BY引脚连接FSMC的FSMC_NWAIT引脚,提供等待信号。
3.3 FSMC的配置
根据S29GL512P的映射位置,需要对FSMC_BCR2和FSMC_BTR2/BWTR2寄存器进行配置。
(1)FSMC_BCR2
配置S29GL512P的读/写采用统一时间参数,只需要设置时问寄存器FSMC_BTR2。配置存储器类型为NOR Flash,数据总线宽度为16位(字),不采用地址/数据复用,使能BANK1的子BANK2。
(2) FSMC_BTR2
由表2可知,异步NOR Flash时序模型Mode2/B需要设置时问参数DATAST和ADDSET。根据时序图,两个参数的计算公式如下:
式中:Twc和Trc为所选存储芯片的写周期长度和读操作周期长度;Twp为所选存储芯片的写信号持续长度。
根据S29GL512P用户手册,可知参数Twc=Trc=130 ns,Twp=35 ns。设STM32微控制器采用72 MHz主频,则HCLK=(1/72×10-6)s。通过上述公式计算,可取值为:DATAST=2,ADDSET=5。
为了达到更好的控制效果,还应考虑FSMC自身延迟问题,使用校正公式:
式中:TAVQV为所选存储芯片访问过程中,从地址有效至数据有效的时间域;Tsu(Data_NE)为STM32特征参数,从数据有效到FSMC_NE(片选)失效时间域;Ttv(A_NE)为STM32特征参数,从 FSMC_NE有效至地址有效的时间域。
TAVQV=130 ns,Tsu(Data_NE)+Ttv(A_NE)=36 ns,对DATAST参数进行校正,可得DATAST=3。
3.4 应用STM32固件对FSMC进行初始化配置
ST公司为用户开发提供了完整、高效的工具和固件库,其中使用C语言编写的固件库提供了覆盖所有标准外设的函数,使用户无需使用汇编操作外设特性,从而提高了程序的可读性和易维护性。
STM32固件库中提供的FSMC的NOR Flash控制器操作固件,主要包括2个数据结构和3个函数。数据结构FSMC_NORSRAMTimingInitTypeDef对应时间参数寄存器 FSMC_BTR和FSMC_BWTR的结构定义;FSMC_NORSRAMInitTypeDef对应特征配置寄存器FSMC_BCR的结构定义,并包含2个指向对应BANK的FSMC_BTR和FSMC_BWTR寄存器的FSMC_NORSRAMTimingInitTypeDef结构指针。
针对上述S29GL512P芯片扩展要求,利用固件库进行的主要初始化操作如下:
结语
STM32作为新一代ARM Cortex-M3核处理器,其卓越的性能和功耗控制能够适用于广泛的应用领域;而其特殊的可变静态存储技术FSMC具有高度的灵活性,对于存储容量要求较高的嵌入式系统设计,能够在不增加外部分立器件的情况下,扩展多种不同类型和容量的存储芯片,降低了系统设计的复杂性,提高了系统的可靠性。
参考文献
1. Shyam Sadasivan.An Introduce to the ARM Cortex-M3 Proccessor,2006.
2. 王永虹,徐炜,等.STM32系列ARM Cortex-M3微控制器原理与实践[M].北京:北京航空航天大学出版社,2008.
3. ST Microelectronics.STM32 Reference Manual,2009.
4. Spansion Inc.S29GL-P MirrorBit Flash Family Data Sheet,2006.
5. ST Microelectronics.STM32 Firmware Library User Manual,2008.
作者: 鲁东大学 潘辉 来源:《单片机与嵌入式系统应用 》 2009(10)
3.1 S29GL 系列NOR Flash简介
Spansion公司的S29GL系列芯片是采用90 nm技术制造的高集成度NOR Flash存储芯片,提供16~128 MB可选容量,支持最快25 ns的页访问速度和110 ns的随机访问速度,带有最大64字节的写缓冲区,以提供更快、更高效的编程,是嵌入式系统设计中大容量存储器扩展的理想选择。本文选用的型号为 S29GL512P,容量为512×64K字(总容量64 MB),扩展到NOR Flash控制器管理的BANK1的第2个子BANK。
3.2 STM32与S29GL512P的电路连接
S25GL512P可通过控制引脚BYTE选择对芯片的访问单位(字/字节),区别在于:
① 对于芯片引脚DQ15,字模式时传送最高数据位D15;字节模式时传送最低地址A-1。
②字模式时,数据引脚 D0~D15上传送数据信号;字节模式时,只有D0~D7上有信号。
此处,将BYTE上拉到高电平,选择16位的字访问单位。FSMC数据线FSMC_D[15:0]与S29GL512P的D15~D0对应连接;FSMC地址线FSMC_A[25:0]的低25根与S29GL512P的地址线A[24:0]对应连接。
由于S29GL512P芯片映射到BANK1的子BANK2,可确定其片选线应连接FSMC片选控制线 FSMC_NE2。S29GL512P的RY/BY引脚连接FSMC的FSMC_NWAIT引脚,提供等待信号。
3.3 FSMC的配置
根据S29GL512P的映射位置,需要对FSMC_BCR2和FSMC_BTR2/BWTR2寄存器进行配置。
(1)FSMC_BCR2
配置S29GL512P的读/写采用统一时间参数,只需要设置时问寄存器FSMC_BTR2。配置存储器类型为NOR Flash,数据总线宽度为16位(字),不采用地址/数据复用,使能BANK1的子BANK2。
(2) FSMC_BTR2
由表2可知,异步NOR Flash时序模型Mode2/B需要设置时问参数DATAST和ADDSET。根据时序图,两个参数的计算公式如下:
式中:Twc和Trc为所选存储芯片的写周期长度和读操作周期长度;Twp为所选存储芯片的写信号持续长度。
根据S29GL512P用户手册,可知参数Twc=Trc=130 ns,Twp=35 ns。设STM32微控制器采用72 MHz主频,则HCLK=(1/72×10-6)s。通过上述公式计算,可取值为:DATAST=2,ADDSET=5。
为了达到更好的控制效果,还应考虑FSMC自身延迟问题,使用校正公式:
式中:TAVQV为所选存储芯片访问过程中,从地址有效至数据有效的时间域;Tsu(Data_NE)为STM32特征参数,从数据有效到FSMC_NE(片选)失效时间域;Ttv(A_NE)为STM32特征参数,从 FSMC_NE有效至地址有效的时间域。
TAVQV=130 ns,Tsu(Data_NE)+Ttv(A_NE)=36 ns,对DATAST参数进行校正,可得DATAST=3。
3.4 应用STM32固件对FSMC进行初始化配置
ST公司为用户开发提供了完整、高效的工具和固件库,其中使用C语言编写的固件库提供了覆盖所有标准外设的函数,使用户无需使用汇编操作外设特性,从而提高了程序的可读性和易维护性。
STM32固件库中提供的FSMC的NOR Flash控制器操作固件,主要包括2个数据结构和3个函数。数据结构FSMC_NORSRAMTimingInitTypeDef对应时间参数寄存器 FSMC_BTR和FSMC_BWTR的结构定义;FSMC_NORSRAMInitTypeDef对应特征配置寄存器FSMC_BCR的结构定义,并包含2个指向对应BANK的FSMC_BTR和FSMC_BWTR寄存器的FSMC_NORSRAMTimingInitTypeDef结构指针。
针对上述S29GL512P芯片扩展要求,利用固件库进行的主要初始化操作如下:
结语
STM32作为新一代ARM Cortex-M3核处理器,其卓越的性能和功耗控制能够适用于广泛的应用领域;而其特殊的可变静态存储技术FSMC具有高度的灵活性,对于存储容量要求较高的嵌入式系统设计,能够在不增加外部分立器件的情况下,扩展多种不同类型和容量的存储芯片,降低了系统设计的复杂性,提高了系统的可靠性。
参考文献
1. Shyam Sadasivan.An Introduce to the ARM Cortex-M3 Proccessor,2006.
2. 王永虹,徐炜,等.STM32系列ARM Cortex-M3微控制器原理与实践[M].北京:北京航空航天大学出版社,2008.
3. ST Microelectronics.STM32 Reference Manual,2009.
4. Spansion Inc.S29GL-P MirrorBit Flash Family Data Sheet,2006.
5. ST Microelectronics.STM32 Firmware Library User Manual,2008.
作者: 鲁东大学 潘辉 来源:《单片机与嵌入式系统应用 》 2009(10)
STM32 意法半导体 ARM Cortex 电子 嵌入式 总线 电路 C语言 单片机 相关文章:
- STM32-FSMC机制的NOR Flash存储器扩展技术(11-20)
- 基于Cortex-M3的 STM32微控制器处理先进电机控制方法(11-23)
- 基于STM32控制的声音导引系统(01-16)
- 基于Cortex-M3的STM32微控制器处理先进电机控制方法(03-07)
- 基于STM32的嵌入式语音识别模块设计(03-29)
- 新一代嵌入式微处理器STM32F103开发与应用(05-08)