ARM11 S3C6410系列教程之四:NANDflash操作
2014-10-24 00:00
246 查看
摘要: ARM11 DDR NAND flash 寄存器
在本章开始之前,我们先来看下ARM11S3C6410内部结构:
本文引用地址:http://www.eepw.com.cn/article/203125.htm
在图中,我们看到ARM11S3C6410内存部分有SRAM、SDRAM、DDR和NANDflash几种类型,关于这几种内存之间的联系可参考ARM11s3c6410系列教程之三内存使用的介绍。从以上几节的介绍可以看出,若ARM11S3C6410设置为NANDflash启动,则NANDflash作为程序暂时储存的场所,我们不能不认真的理解下NANDflash的操作。
在硬件上,使能 NAND Flash时, XSELNAND需保持为高电平,也就是AB16为高电平。
在NAND Flash 控制器图解如下图所示:
在图解中我们可以看出NAND Flash控制器片选信号、命令信号,地址信号,读信号、写信号、空闲/繁忙管脚和8个数据管脚组成,这大大方便了NANDflash的使用和控制。
关于NAND Flash芯片的硬件连接,我们来分析下其连接:
本文引用地址:http://www.eepw.com.cn/article/203125.htm
首先,来看下NAND Flash芯片连接图
在硬件连接中,可以看出NANDflash的I/O端口连接只有8位,我们不难想到数据、地址复用的情形。其实,NANDflash的操作也是这样。
其次,我们来分析下NANDflash的操作:
① 通过片选信号CE1和CE2完成NANDFlash的选择;
② NANDFlash操作时序图如下:
由于NANDFlash不能像内存一样直接读写,要先发出命令、再发地址、再读写数据完成相应的操作;
③ 关于命令,地址和数据的传送有以下规则:
CLE = 1, data0~data7上传输的是命令;
ALE = 1, data0~data7上传输的是地址;
CLE/ALE都是0, data0~data7上传输的是数据, nWE = 0, 表示写;
④ ARM11S3C6410发出命令操作:只需要把命令写到NFCMD寄存器中即可完成;
⑤ ARM11S3C6410发出地址:把地址写到NFADDR寄存器;
⑥ ARM11S3C6410发出数据:把数据写到NFDATA寄存器;
⑦ ARM11S3C6410读数据操作:通过读取NFDATA寄存器即可完成数据的读取;
ARM11S3C6410正是有了NFCON,才使对NANDFlash的操作变得更加简单。对于其他的处理器,需要用普通的GPIO按照NANDFlash的操作时序完成相应的操作。
在本章开始之前,我们先来看下ARM11S3C6410内部结构:
本文引用地址:http://www.eepw.com.cn/article/203125.htm
在图中,我们看到ARM11S3C6410内存部分有SRAM、SDRAM、DDR和NANDflash几种类型,关于这几种内存之间的联系可参考ARM11s3c6410系列教程之三内存使用的介绍。从以上几节的介绍可以看出,若ARM11S3C6410设置为NANDflash启动,则NANDflash作为程序暂时储存的场所,我们不能不认真的理解下NANDflash的操作。
在硬件上,使能 NAND Flash时, XSELNAND需保持为高电平,也就是AB16为高电平。
在NAND Flash 控制器图解如下图所示:
在图解中我们可以看出NAND Flash控制器片选信号、命令信号,地址信号,读信号、写信号、空闲/繁忙管脚和8个数据管脚组成,这大大方便了NANDflash的使用和控制。
关于NAND Flash芯片的硬件连接,我们来分析下其连接:
本文引用地址:http://www.eepw.com.cn/article/203125.htm
首先,来看下NAND Flash芯片连接图
在硬件连接中,可以看出NANDflash的I/O端口连接只有8位,我们不难想到数据、地址复用的情形。其实,NANDflash的操作也是这样。
其次,我们来分析下NANDflash的操作:
① 通过片选信号CE1和CE2完成NANDFlash的选择;
② NANDFlash操作时序图如下:
由于NANDFlash不能像内存一样直接读写,要先发出命令、再发地址、再读写数据完成相应的操作;
③ 关于命令,地址和数据的传送有以下规则:
CLE = 1, data0~data7上传输的是命令;
ALE = 1, data0~data7上传输的是地址;
CLE/ALE都是0, data0~data7上传输的是数据, nWE = 0, 表示写;
④ ARM11S3C6410发出命令操作:只需要把命令写到NFCMD寄存器中即可完成;
⑤ ARM11S3C6410发出地址:把地址写到NFADDR寄存器;
⑥ ARM11S3C6410发出数据:把数据写到NFDATA寄存器;
⑦ ARM11S3C6410读数据操作:通过读取NFDATA寄存器即可完成数据的读取;
ARM11S3C6410正是有了NFCON,才使对NANDFlash的操作变得更加简单。对于其他的处理器,需要用普通的GPIO按照NANDFlash的操作时序完成相应的操作。
相关文章推荐
- ARM11 s3c6410系列教程之五:LCD操作
- ARM11 S3C6410系列教程之二:串口
- ARM11 s3c6410系列教程之一:时钟
- ARM11 S3C6410系列教程之三:内存使用
- ARM11 S3C6410系列教程之三:内存使用(转)
- MsChart教程系列之实例操作数据绑定(交叉表)应用
- 在ASP.NET 2.0中操作数据教程系列
- Android系列教程(六) adb操作命令详
- Android系列教程(六) adb操作命令详解
- Android系列教程adb操作命令详解
- Android系列教程 adb操作命令详解
- C#系列视频教程-字符和字符串操作
- (LINQ 学习系列)(4)Linq教程实例: LINQ单表操作
- (LINQ 学习系列)(5)Linq教程实例: 单表操作之增 删 改 查询
- Selenium-webdriver系列教程(9)——如何操作select下拉框
- Flexigrid系列使用教程(四)同时操作选择的多条数据
- 【EntityFramework系列教程二,翻译】借助EntityFramework在ASP.NET MVC程序中完成增删改查操作
- (LINQ 学习系列)(7)Linq教程实例: LINQ多表关联操作
- ASP.NET 2.0中的数据操作系列教程二十:定制数据修改界面
- Selenium-Webdriver系列教程(二)————浏览器的简单操作