我用的K9F2G08-SCB0 这款nand flash 来介绍时序图的阅读。不同的芯片操作时序可能不同,读的命令也会有一些差别。

当然其实有时候像nand flash这种s3c2440内部集成了他的控制器的外设。具体到读写操作的细节时序(比如 CLE/ALE的建立时间,写脉冲的宽度。数据的建立和保持时间等),不明白前期也没有多大的问题。

因为s3c2440内部的nand flash控制器 做了大部分的工作,你需要做的基本就是设置 几个时间参数而已。然后nand flash会自动进行这些细节操作。

当然如果处理器上没有集成 nand flash的控制器 那么久必须要自己来写时序操作了。所以了解最底层的时序操作总是好的

但是上层一点的,比如读写操作的步骤时序(比如读操作,你要片选使能,然后发命令,然后发地址,需要的话还需发一个命令,然后需要等待操作完成,然后再读书数据)。

是必须要明白的。这都不明白的话,怎么进行器件的操作呢

也就是说 s3c2440 可以说在你设置很少的几个时间参数后,将每一个步骤中 细微的操作都替你做好了。(比如写命令,你只要写个命令到相应寄存器中,cpu内部就会协各个引脚发出

适应的信号来实现写命令的操作)。

而我们所需要做的 就是 把这些写命令,写地址,等待操作完成。等步骤组合起来 。从而完成一个 读操作

就像上面说的,虽然我们不会需要去编写每个 步骤中的最细微的时序。 但是了解下。会让你对每个操作步骤的底层细节更加明了

先来看一个命令锁存的时序。也就是上面说的 读 nand flash操作中不是有一个 写命令步骤吗。那么这个步骤具体是怎么实现的。

首先 我们肯定是要片选 nand flash。只有选中芯片才能让他工作啊

nand flash是通过 ALE/CLE (高电平有效)来区分数据线上的数据时命令(CLE有效),地址(ALE有效)还是数据(CLE/ALE都无效)。

那么这里既然是写命令 那么就一定是 CLE有效(高电平) ALE无效(低电平)。

同样命令既然是写给nand flash的那么 肯定有一个写周期。我们需要注意的是,写是在上升沿有效还是下降沿有效。

时序图如下:

spi时序图怎么看?spi时序图阅读方法

1 这里是命令锁存是时序,那么我们要注意的其实就只有 CLE 为高电平期间这段时序。(写命令啊,CLE有效时(高电平)指示现在的数据其实命令)ALE此时一定为低电平我们可以不关心他

2 所以,CLE为 低电平的时期,其他大部分引脚上都是 灰色的阴影,这代表我们不需要关心这段时期这些引脚的电平

3 那么 这个数据是什么时候被nand flash读取到的呢, 注意到 nWE信号 在上升沿有一个贯穿所有其他引脚时序的竖线(这好像是叫生命线?我也不清楚)

这就是说明,写入的数据(命令也是数据啊,只是可以通过CLE有效来区分)是在 WE的上升沿有效。

也就是说,(https://www.dgzj.com/)虽然WE是在低电平有效,但并不是说 WE一变成低电平,命令就被锁存了(即真正获得命令)而是在 WE 的上升沿,命令才真正被锁存。

知道了上面这三点,也就知道了一个大概,那么剩下的图中也只剩那些 txx 的标号。明显它指的是时间,但是具体指什么时间呢。

指的就是箭头两边所指的两条 竖线之间的时间。(在每个信号的跳变沿,都有小竖线)

剩下的就是这些时间到底是代表什么了。这里没什么难的,刚接触的觉得看不懂。是因为之前从来没接触过。(就像单片机刚学的时候不也是各种不懂,原因就是我们从没接触过)。

这些时间标号,在数据手册的前面都有说明

spi时序图怎么看?spi时序图阅读方法

比如 tCLS tCLH 从数据手册中我们可以看到 分表代表的 CLE建立时间,和CLE信号保持时间。

简单点你可以理解为,我让 CLE引脚 变成高电平,总得给人间一点时间去变成高电平吧。总不能瞬间就变成高电平

不过从 时序图中我们能看到更多的端倪,之前不是说过 WE 的上升沿上不是有一个最长贯穿其他信号线的 竖线吗。我们说他指示了,数据(命令也是数据)

是在上升沿被锁存的,在 WE 的上升沿,我写到数据线上的命令数据才真正被锁存(接收),但是 我们注意到 CLE 信号在WE上升沿之前有就有效了。

所以我们说, 在命令数据真正被锁存之前,CLE 有效的那段 tCLS 时间叫做 CLE信号建立时间。

WE上升沿后。命令已经被接受了,但这时候 CLE 其实可以变为无效了,因为已经获取到命令了

但是他并没有立刻结束,而是 Tclh时间之后才结束。那么我们 称这段 时间 tCLH 为 CLE 保持时间。

那么再根据手册中的说明 tCS 表示 片选信号建立时间,tCH表示片选信号保持时间

tDS表示数据建立时间,tDH表示数据保持时间

这里我们看到一个小规律,在数据手册中 以 S 结尾的时间通常指的是建立时间, 以 H 结尾的时间指的是保持时间

这里命令锁存的时序就分析完了。我们再来看看 地址锁存时序图,这个图有点复杂,

因为nand flash的 特性是 地址周期通常需要好几个,就是一个地址是分几次发送的

spi时序图怎么看?spi时序图阅读方法

再给出数据手册中对应时间标号的说明

spi时序图怎么看?spi时序图阅读方法

同样我们按照上面分析的步骤

1 这里是地址锁存是时序,那么我们要注意的其实就只有 ALE 为高电平期间这段时序。(写命令啊,ALE有效时(高电平)指示现在的数据其实是地址)CLE此时一定为低电平,可以不用管

2 所以,ALE 为低电平的时期,其他大部分引脚上都是 灰色的阴影,这代表我们不需要关心这段时期这些引脚的电平

3 同样 WE 的上升沿有一个贯穿其他信号线的长竖线,这也是代表数据(这里其实是地址)在上升沿被锁存

那么剩下的也好理解

tCLS 这个我们不需要关心,因为 CLE 压根就是无效的。

tCS 就像之前分析的,它是指 CE片选信号在 WE上升沿也就是锁存地址之前的有效时间,也就是 CE 建立时间

tWC 呢? 不知道? 不知道 看手册啊,前面也说过这些时间标号在手册中都会给出。

从上面手册的解释我们看到,它指的是一个写周期的时间

tWP 写脉冲宽度(也就是 WE是低电平有限,twp指低电平持续时间,就是有效时间)

tWH 好理解了,就是高电平时间

ALS 这不就是 地址信号 ALE 建立时间嘛

ALH ALE信号有效保持时间啊

TDS TDH 数据建立和保持时间

就像上面对 命令时序的分析,这里 信号的 建立 和 保持时间都是以 数据被 锁存分界点(WE上升沿)

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查