当前位置:首页 > 实用技巧 >

flash设置是否允许存储(flash本地储存点不动怎么办)

来源:原点资讯(www.yd166.com)时间:2023-11-13 13:52:57作者:YD166手机阅读>>

Nand flash支持一个叫做CE don’t-care的技术,字面意思就是,不关心是否片选,那有人会问了,


如果不片选,那还能对其操作吗?答案就是,这个技术,主要用在当时是不需要选中芯片却还可以继续操作的这些情况:在某些应用,比如录音,音频播放等应用中,外部使用的微秒(us)级的时钟周期,此处假设是比较少的2us,在进行读取一页或者对页编程时,是对Nand Flash操作,这样的串行(Serial Access)访问的周期都是20/30/50ns,都是纳秒(ns)级的,此处假设是50ns,当你已经发了对应的读或写的命令之后,接下来只是需要Nand Flash内部去自己操作,将数据读取除了或写入进去到内部的数据寄存器中而已,此处,如果可以把片选取消,CE#是低电平有效,取消片选就是拉高电平,这样会在下一个外部命令发送过来之前,即微秒量级的时间里面,即2us-50ns≈2us,这段时间的取消片选,可以降低很少的系统功耗,但是多次的操作,就可以在很大程度上降低整体的功耗了。

总结起来简单解释就是:由于某些外部应用的频率比较低,而Nand Flash内部操作速度比较快,所以具体读写操作的大部分时间里面,都是在等待外部命令的输入,同时却选中芯片,产生了多余的功耗,此“不关心片选”技术,就是在Nand Flash的内部的相对快速的操作(读或写)完成之后,就取消片选,以节省系统功耗。待下次外部命令/数据/地址输入来的时候,再选中芯片,即可正常继续操作了。这样,整体上,就可以大大降低系统功耗了。


flash设置是否允许存储,flash本地储存点不动怎么办(9)

NAND FLASH 的读操作详细解读


以最简单的read操作为例,解释如何理解时序图,以及将时序图中的要求,转化为代码。解释时序图之前,让我们先要搞清楚,我们要做的事情:那就是,要从nand flash的某个页里面,读取我们要的数据。要实现此功能,会涉及到几部分的知识,至少很容易想到的就是:需要用到哪些命令,怎么发这些命令,怎么计算所需要的地址,怎么读取我们要的数据等等。


就好比你去图书馆借书,想想是一个什么样的流程,首先得告诉馆长你要要借书还是还书、然后把要借书的位置告诉馆长,最后是把图书卡或者借书证件给馆长,此时就耐心等待要借的书籍了。


下面,就一步步的解释,需要做什么,以及如何去做:


1.需要使用何种命令


首先,是要了解,对于读取数据,要用什么命令。

下面是datasheet中的命令集合:

flash设置是否允许存储,flash本地储存点不动怎么办(10)

很容易看出,我们要读取数据,要用到Read命令,该命令需要2个周期,第一个周期发0x00,第二个周期发0x30。


2.发送命令前的准备工作以及时序图各个信号的具体含义


知道了用何命令后,再去了解如何发送这些命令。

flash设置是否允许存储,flash本地储存点不动怎么办(11)

Nand Flash数据读取操作的时序图

注:此图来自镁光的型号MT29F1G08ABAEAH4:E的nand flash的数据手册(datasheet)。


我们来一起看看,我在图中的特意标注的①边上的红色竖线。


红色竖线所处的时刻,是在发送读操作的第一个周期的命令0x00之前的那一刻。让我们看看,在那一刻,其所穿过好几行都对应什么值,以及进一步理解,为何要那个值。


(1)红色竖线穿过的第一行,是CLE。还记得前面介绍命令所存使能(CLE)那个引脚吧?CLE,将CLE置1,就说明你将要通过I/O复用端口发送进入Nand Flash的,是命令,而不是地址或者其他类型的数据。只有这样将CLE置1,使其有效,才能去通知了内部硬件逻辑,你接下来将收到的是命令,内部硬件逻辑,才会将受到的命令,放到命令寄存器中,才能实现后面正确的操作,否则,不去将CLE置1使其有效,硬件会无所适从,不知道你传入的到底是数据还是命令了。

(2)而第二行,是CE#,那一刻的值是0。这个道理很简单,你既然要向Nand Flash发命令,那么先要选中它,所以,要保证CE#为低电平,使其有效,也就是片选有效。


(3)第三行是WE#,意思是写使能。因为接下来是往nand Flash里面写命令,所以,要使得WE#有效,所以设为低电平。


(4)第四行,是ALE是低电平,而ALE是高电平有效,此时意思就是使其无效。而对应地,前面介绍的,使CLE有效,因为将要数据的是命令,而不是地址。如果在其他某些场合,比如接下来的要输入地址的时候,就要使其有效,而使CLE无效了。


(5)第五行,RE#,此时是高电平,无效。可以看到,知道后面低6阶段,才变成低电平,才有效,因为那时候,要发生读取命令,去读取数据。


(6)第六行,就是我们重点要介绍的,复用的输入输出I/O端口了,此刻,还没有输入数据,接下来,在不同的阶段,会输入或输出不同的数据/地址。


(7)第七行,R/B#,高电平,表示R(Ready)/就绪,因为到了后面的第5阶段,硬件内部,在第四阶段,接受了外界的读取命令后,把该页的数据一点点送到页寄存器中,这段时间,属于系统在忙着干活,属于忙的阶段,所以,R/B#才变成低,表示Busy忙的状态的。


介绍了时刻①的各个信号的值,以及为何是这个值之后,相信,后面的各个时刻,对应的不同信号的各个值,大家就会自己慢慢分析了,也就容易理解具体的操作顺序和原理了。


3.如何计算出,我们要传入的地址


在介绍具体读取数据的详细流程之前,还要做一件事,那就是,先要搞懂我们要访问的地址,以及这些地址,如何分解后,一点点传入进去,使得硬件能识别才行。


此处还是以MT29F1G08ABAEAH4:E为例,此nand flash,一共有1024个块,每个块内有64页,每个页是2K 64 bytes,假设,我们要访问其中的第1000个块中的第25页中的1208字节处的地址,此时,我们就要先把具体的地址算出来:

物理地址=块大小×块号 页大小×页号 页内地址=1000×128K 2K×25 1208=0x7D0CCB8,接下来,我们就看看,怎么才能把这个实际的物理地址,转化为nand Flash所要求的格式。


在解释地址组成之前,先要来看看其datasheet中关于地址周期的介绍:

flash设置是否允许存储,flash本地储存点不动怎么办(12)

栏目热文

flash为什么粘贴到当前位置不能用(flash中为什么不能添加形状提示)

flash为什么粘贴到当前位置不能用(flash中为什么不能添加形状提示)

  苹果、微软、谷歌等大公司都无情地抛弃了flash player,但以前flash player装机量巨大,很多用fl...

2023-11-13 13:52:16查看全文 >>

flash设置本地存储老是弹出允许(flash怎样设置自动保存)

flash设置本地存储老是弹出允许(flash怎样设置自动保存)

谷歌浏览器69之后的版本,因为flash存在安全隐患问题,对flash做了严格限制,所以每次打开都会提示是否允许使用fl...

2023-11-13 14:14:23查看全文 >>

win8.1安装哪个版本的cad(win8能下载哪个版本的cad)

win8.1安装哪个版本的cad(win8能下载哪个版本的cad)

挑选AutoCAD的基本产品逻辑:从最新版本往下看,如果一个最新版本的特性对你来说不可或缺,那这个版本就是你的底线版本。...

2023-11-13 13:58:21查看全文 >>

win10激活不了cad2013(win10cad2013注册机打不开)

win10激活不了cad2013(win10cad2013注册机打不开)

许多人CAD激活不成功,每天都在倒数的天数让人心焦急,一次次注册却总是不成功,除了常规步骤还要注意哪些要点呢,干货来了!...

2023-11-13 14:14:04查看全文 >>

win10安装cad总是重新激活(win10系统怎么激活不了cad)

win10安装cad总是重新激活(win10系统怎么激活不了cad)

问题描述如下:启动AuotCAD软件后,出现激活界面,无法选择单用户或者多用户选项,有时输入序列号会提示序列号无效。此错...

2023-11-13 14:06:14查看全文 >>

flash设置不能保存(flash中心设置为何不能保存)

flash设置不能保存(flash中心设置为何不能保存)

写在前面今天来说一说如何快速的建立起初步的个人网络安全保护问题。简单的来说,在没有“贼惦记”的情况下,通常有两件事情是第...

2023-11-13 14:06:33查看全文 >>

怎么更改flash的存储位置(flash怎么恢复初始面板)

怎么更改flash的存储位置(flash怎么恢复初始面板)

STM32 内部FLASH概述今天说一下STM32中的内部Flash。当我们把写好的代码下载MCU中,这个代码时存放在f...

2023-11-13 14:14:36查看全文 >>

flash怎么存储本地(如何改变flash储存位置)

flash怎么存储本地(如何改变flash储存位置)

  Flash2X EXE Packager是一款把Flash、FlV格式转换到EXE文件的程序。Flash2X EXE...

2023-11-13 14:04:34查看全文 >>

flash默认保存位置(flash怎么打开本地文件夹)

flash默认保存位置(flash怎么打开本地文件夹)

太长不看版2020年5月28日更新日志极为方便的CSGO跑图工具,分享给大家2020年5月28日CSGO更新日志翻译:M...

2023-11-13 14:00:50查看全文 >>

欧洲十大最强队标排名(欧洲国家队射手榜历史前十)

欧洲十大最强队标排名(欧洲国家队射手榜历史前十)

近日,知名媒体442评选出了世界足坛历史上的百大经典队徽,来自德国的慕尼黑1860排名第一,广州队排名第44位。442在...

2023-11-13 14:15:15查看全文 >>

文档排行