NAND flash 信号线的理解
上一篇我们已经讲了NAND flash的分类,这一篇介绍NAND flash 的硬件接口。例如
由NAND Flash的原理图封装,然后查看芯片手册。
由图可知:IO0-IO7:既可传送数据也可传送地址,也可以送传命令。那到底是读是写,还是擦除?怎么区分IO0-IO7传送的是数据?地址?命令? 那么就需要通过CLE与ALE的状态来区分了。
假如2440要读取A地址的数据,或将数据写入B地址。当CLE为高电平表示IO0-IO7传送的是命令;当ALE为高电平表示IO0-IO7传送的是地址;当ALE与CLE都为低电平的时候,表示IO0-IO7传送的是数据。
CE:片选。当2440要操作访问Nand的时候,首先必须选中。
RE:读信号,当RE为低的时候,表示数据由Nand流向2240;
WE:写信号,当RE为低电的时候,表示数据由2240流向Nand;
WP:写保护,只能写,不能擦除。
R/B:Ready信号,表示Nand Flash烧写完成
这些引脚具体怎么组合起来的,需要查看手册中的时序图。
发(写)命令的时序图:
首先CE发出片选信号,CLE发出高电平,IO 0-7将命令驱动出去,WE写脉冲,在写脉冲的上升沿,Nand flash在上升沿,将IO 0-7中数据读取出来。
发地址的时序图:
CE片选, ALE由低变高,IO 0-7驱动 数据,WE发出写脉冲。
输入(写)数据的时序图:
CE选中,ALE、CLE低电平,2440 IO 0-7驱动 数据,WE写信号,Nand flash根据ALE、CLE低电平,读取数据。
输出(读)数据的时序图:
CE低电平选中,RE由高变为低(Nand flash收到RE由高变低时,马上准备数据,然后在RE的上升沿将数据发送出去),Nand flash 驱动数据到IO 0-7,在上升沿,2440取数据。
2440这些引脚发出的数据,必须满足Nand flash的时序要求。需要查看2440芯片手册,查看设备哪个寄存器的某些位来控制时序
Nand Flash操作原理及裸机程序分析——FLASH操作原理
来源:韦东山嵌入式专栏_ARM裸机加强版维基教程
作者:韦东山
本文字数:1056,阅读时长:10分钟
NAND_FLASH操作原理
NAND FLASH原理图NAND FLASH是一个存储芯片那么: 这样的操作很合理”读地址A的数据,把数据B写到地址A”
问1. 原理图上NAND FLASH和S3C2440之间只有数据线,怎么传输地址?
答1. 在DATA0~DATA7上既传输数据,又传输地址当ALE为高电平时传输的是地址,
那么在数据线上是不是只传输数据和只传输地址呢?
我们参考NAND FLASH的芯片手册可以知道,对NAND FLASH的操作还需要发出命令,下面有个NAND FLASH的命令表格
问2. 从NAND FLASH芯片手册可知,要操作NAND FLASH需要先发出命令怎么传入命令?
答2. 在DATA0~DATA7上既传输数据,又传输地址,也传输命令:
当ALE为高电平时传输的是地址。当CLE为高电平时传输的是命令。当ALE和CLE都为低电平时传输的是数据。
问3. 数据线既连接到NAND FLASH,也接到NOR FLASH,还接到SDRAM、DM9000等等那么怎么避免干扰?
答3. 这些设备,要访问时必须”选中”,没有选中的芯片不会工作,相当于没接一样。
问4. 假设烧写NAND FLASH,把命令、地址、数据发给它之后,NAND FLASH肯定不可能瞬间完成烧写的,怎么判断烧写完成?
答4. 通过状态引脚RnB来判断:它为高电平表示就绪,它为低电平表示正忙
问5. 怎么操作NAND FLASH呢?
答5. 根据NAND FLASH的芯片手册,一般的过程是:
发出命令
发出地址
发出数据/读数据
看上面的命令表格,不容易看,我们看一下读ID的时序图,
每个NAND FLASH都内嵌一些ID(譬如:厂家ID,设备ID),时序图从左往右看,纵向放是一列一列的看。
对于我们s3c2440来说,内部集成了一个NAND FLASH控制器,2440和外设连接的简易图,如下图所示
NAND FLASH控制器,帮我们简化了对NAND FLASH的操作,下面来分析一下不使用NAND FLASH控制器和使用NAND FLASH控制器对外设NAND FLASH的操作。
发命令:
发地址:
发数据:
读数据 :
用UBOOT来体验NAND FLASH的操作:
1.读ID
下图是读操作时序图
对于存储为256M的NAND FLASH,需要28条地址线,来表示这个地址值,根据原理图可以,只用8根地址线,所以需要4个周期的地址,为了兼容更大容量的NAND FLASH,要发出5个周期的地址:(如下图所示)
2.读数据
「新品首发」STM32MP157开发板火爆预售!首批仅300套
相关问答
原来做过emmc的字库u盘,现在有一块 flash 想做个u盘但是那8个引脚不知道是那些?这个,看不清楚,找相关的手册去对一下吧!另外,NANDFlash跟eMMC的管脚和协议都是不匹配的,注意一下这个,看不清楚,找相关的手册去对一下吧!另外,NANDFlash跟eMM...
电脑开机显示 FLASH BIOS(Y/N)是咋回事0 0-ZOL问答3条回答:【推荐答案】flashbios是刷新BIOS的意思,应该是需要你把BIOS文件放在软...查找一下你的主板技术资料手册啥的,看看他的BIOS是放软驱
flash 在线烧录方法?要在Flash上进行在线烧录,您需要进行以下步骤:1.准备工具:您需要一台具备在线烧录功能的设备,例如烧录器或开发板。此外,您还需要一根连接器(如USB连接器...
gps导航仪上看电子书怎么老死机目前导航仪从款式上和使用上分主要有车载嵌入式的和手持便携式(PND)之分,就价格、产品便携性、娱乐性、实用性等多方面来衡量手持便携式都相对具有...
cisco交换机命令汇总是什么? - 149****9641 的回答 - 懂得交换机口令设置:(我所针对的都是cisco的设备而言的,华为的可以跟据手册来查,配置都是差不多的,这里华子就不多写华为的设备了,了解的也不是很多)swi...
电脑一开机就进入Q- FLASH ?是可能的因为Q-FLASH是一种硬件备份和更新固件的工具,通常会在计算机启动的时候检测硬件并自动运行。如果您的计算机设置了自动启动Q-FLASH,那么电脑在开机时...
我的电脑的 flash 版本太低,新的 flash 版本下载后安装不上,怎么...可以同时装几个不同版本的flash的,,我就装着flash8和FlashCS4!安装不上可能是你的安装下载包不完整,重新下个吧,搜个别人说能用的下!如果你用的是盘的话,那找...
怎么用下载工具下载[回答]FLASHGET使用方法:(先打开FLASHGET)1.在某链接点上单击鼠标右健,选择用FLASHGET下载,然后就弹出一个对话框,其中:另存为指的是把文件放在哪里,重命...
华为matebook 14怎么进入General flash disk?要进入华为MateBook14的通用闪存盘模式(Generalflashdisk),请按照以下步骤操作:1.首先,将您的闪存盘插入MateBook14的USB端口。2.打开开始菜单,然...
什么是嵌入式系统?比如,在windows下编程,函数中的数组变量可以分配很大的内存,这是因为其栈空间默认很大。但是在嵌入式环境中,最好把这些内存大的变量定义到外部存储硬件中,...但...