一、多Plane操作
上章提到
若干个Plane组成Die或者叫LUN
,即一个Die上有多个Plane
每次进行写操作时,控制器先将数据写入页缓存中,等同一个Die上另一个Plane也写数据的时候,再同时写入,原来单独操作一个Plane的时间变成了可以同时做两个Plane或更多,时间更省,速度更快,效率更高
对于读取时也是一样的原理,可以节省更多时间
多Plane操作限制:只有在读写落在每个Plane上的闪存页的编号都一致时才能使用,所以它只适合写入操作或者顺序读操作,随机读取不起作用。
二、缓存读写操作
之间的结构示意图上有看到,每个Plane里有自己的页缓存和闪存缓存,他们是用来缓存即将写入或者读取的闪存页数据的。其操作图如下:
问题:
有页缓存,闪存缓存,大小大概多大呢?假如我的缓存足够大的情况下,我一直在读同一个位置的数据,且这个数据大小不超过缓存页大小,是否一直就是缓存页的数据在直接回给Host,那么就永远也触发不到read disturb? (实际应用应该很难有这样的场景)
写也一样,写同一个位置一直写,但是数据大小不超过缓存页,是否一直不会下刷至闪存介质内?
那假设这个缓存太大,数据多?是否遇到异常断电的时候,数据也是如RAM一样丢失了?还是它依然存在?
三、异步Plane操作
异步Plane操作是指用户在随机读取同一个Die的时候,不需要等钱一个Plane随机读操作完成就可以把下一个随机读命令发给别的Plane.(这个需要NAND支持)