SSD学习-Command set

Read operation

读取函数读取存储在指定地址的数据。 为了实现这一目标,NAND 设备必须识别何时发出读取操作以及相关地址。 在执行读取算法所需的繁忙时间之后,NAND 设备输出数据序列。 根据器件引脚信号,NAND 命令接口(CI,第 6 章)能够了解何时发出命令、何时发出地址或何时必须执行数据输出。
图 2.11 显示了一个命令周期(“Cmd”)。 如果 CLE 为高电平,CI 将识别“Cmd”周期。 在这种情况下,DQs 上的 8 位值表示命令代码。
图 2.12 显示了地址周期。 通常,所有操作都需要它们必须执行的地址。 地址长度取决于 NAND 的操作和容量; 无论如何,输入列地址需要N个周期,输入行地址需要M个周期。 如果 ALE 为高电平,CI 会识别出地址周期。 同时,所有其他输入信号均为低电平,DQs 值为地址
读操作使用的最后一个命令阶段是数据输出,如图 2.13 所示。 数据输出是通过触发信号 RE# 执行的:在每个周期,DQ 上都有一个新数据可用。
在这里插入图片描述在这里插入图片描述
NAND 使用这些基本周期来解码和执行每个操作。 图 2.14 显示了读操作的命令序列。 第一个周期用于发出读取命令“RD”(例如 00h)。 在命令周期之后,使用多个周期来提供地址。 如第 2.2 节所述,首先给出列地址,然后是行地址。 图中未显示的所有引脚(ALE、CLE、RE#)必须按上述方式驱动。 代码“RDC”(读取命令确认,例如 30h)用于确认读取命令。 最后,设备忙,读操作开始。 当 NAND 返回就绪时,数据输出周期开始。

sequence 序列
Change Read Column Confirm(CRCC) 更改读取列确认

下图 显示了 Change Read Column 的顺序。 在执行通常的读取命令后,可以在数据输出期间更改列地址。 发出命令周期“CRC”(更改读取列,例如 05h),然后是我们想要输出的位置的地址。 与通常的读取命令相比,只需要更少的周期,因为只需要列地址。 确认命令周“CRCC”(更改读取列确认,例如 E0h)用于启用数据输出。 值得注意的是,不需要额外的忙碌时间,因为数据已经存储在页面缓冲区中。
在这里插入图片描述
sequential 顺序的
Read Command(RD)
Read Command Confrim(RDC)
Change Read Column(CRC)
Change Read Column Confrim(CRCC)
Read Cache(RC)
Read Cache END(RCE)
顺序读取缓存命令序列如图 2.16 所示。 必须在读取缓存命令之前发出读取命令。 设备返回就绪后,命令代码“RC”(读取缓存,例如 31h)用于启动从矩阵到页面缓冲区的数据下载。 RB# 变低一段时间,然后 N 个 Dout 周期用于输出第一页。 由于没有输入其他地址,因此在 NAND 内部会自动读取下一个连续页面。 当我们不需要读取其他页面时,使用命令“RCE”将最后一页复制到页面缓冲区中(Read Cache End,例如 3Fh)
随机缓存读取序列(Random Cache Read)如图 2.17 所示:使用此命令可以选择我们要缓存的页面的地址。
在这里插入图片描述
在多平面设备上,可以同时在多个平面上发出读取命令。 图 2.18 显示了多平面读取的命令序列。
Muti-plane read MR
Read Command Confrim RDC
Choose Column CC
Choose Column Confrim CCC
在标准的读取命令周期“RD”之后,发出我们要在平面 0 上读取的页面的地址。 在下一个命令周期中使用命令代码“MR”(多平面读取,例如 32h),以便设备准备好接收属于平面 1 的地址。一旦新地址和读取命令确认代码“RDC” 给定,设备忙于同时在两个平面上执行读取算法。 当设备返回就绪时,命令周期 CC(Choose Column,例如 06h)用于选择我们要输出的页面的地址,然后是多个地址周期。 命令代码“CCC”(Choose Column Confirm,例如 E0h)是命令确认。 最后,Dout 周期用于输出读取数据。
在这里插入图片描述

Program operation

程序操作的目的是在指定地址写入数据序列。 基本周期是那些已经描述的读操作的周期,例如命令周期和地址周期。 唯一增加的循环是“Din”循环,如图 2.21 所示。 数据输入由切换信号 WE# 执行:在每个周期,一个新字节应在数据总线(DQs)上可用。
在这里插入图片描述
Program sequence is shown in Fig. 2.22. A command cycle to input “PM” code
(Program, e.g. 80h) is followed by a number of address cycles to input the
addresses where we want to write. Once the location is set, N “Din” cycles are
used to input data into the page buffers. Finally a “PMC” (Program Confirm, e.g.
10h) command is issued to start the algorithm.
在这里插入图片描述
Program busy time can be very long: 150–200 μs. Program cache command or
double-plane program are used to increase write throughput. Figure 2.23 shows
the sequence for Cache Program and Double Plane Program
程序繁忙时间可很长:150-200 μs。通过程序缓存命令或双平面编程来提高写吞吐量。图2.23显示了缓存编程和双平面编程的顺序
第一个周期(“PM”周期、地址周期和“Din”周期)与标准程序中的相同。 代替“PMC”,发出“C/M”命令周期。 “C/M”可以是缓存程序代码(例如 15h)或双平面命令(例如 11h)。 一旦给出另一个“PM”命令,然后是新地址和“PMC”命令,设备就会忙碌,并且在两个页面上同时执行编程算法。 值得注意的是,上述双平面程序通常被称为并发双平面程序,因为程序算法在两个平面上同时工作。
在这里插入图片描述
重叠的双平面编程(Double-Plane Program)也可用,其中第一个平面上的程序在页面缓冲区中加载数据后立即启动。 在这种情况下,NAND 架构必须能够在两个平面上以独立的方式执行算法。
在这里插入图片描述

Erase operation

在这里插入图片描述
Since erase is the longest operation (about 1 ms), the Double-Plane Erase command has been introduced to erase two blocks at the same time. Figure 2.26 shows the command sequence for the Double-Plane Erase.
The standard erase cycles (“ER” command and row address cycles) are followed by a “MER” command (Multi-plane erase, e.g. D1h). Once both the plane 1 addresses and the “ERC” code are given, the device goes busy, erasing both blocks simultaneously.
在这里插入图片描述

  • 30
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值