当前位置: 首页 > news >正文

Nand 基础知识理解

笔者记录一下对于Nand一些知识的理解

对于FW 固件BE模块,Flash的寻址只有ch和ce和lun的概念,通过这些可以组合成die

  • LUN是CE下的一种概念,例如一种是CE下只有一个LUN,第二种是一个CE下有两个LUN,一个LUN下面挂载一个die
  • 只有一个LUN的情况直接拉低对应的CE信号就可以选中了,两个LUN的时候,拉低CE信号会有两个LUN同时接收到信号,这个时候会再发送类似lun select命令去选择要操作的LUN
  • CE是通过引脚,lun是通过地址选择
  • CH 是真正的并行度,CE可以分时复用
  • 2CH 2CE的时间是1CH 1CE的2倍
  • 2CH和2CE对比,并不是2倍的关系,少了一个数据传输的时间,(片选时间足够小(忽略不计),rb时间大于传输时间)

  • 现在FLASH 的RB时间越来越短,例如传输:RB = 1:1的情况下,那么性能提升50%

  • 时间:1CH 2CE = 3,而 2CH 2CE = 2,那么(3-2)/2 ,时间多了50%,性能就提升50%

  • 传输时间一般情况下是DMA时间,取决于主控和带宽,比如带宽800MB,传输16K,19.53125us,而单SLC的read是24us,写是103us,这样的话,对于read来说,提升接近50%,write则提升不多。

  • 例如4H 2CE,那么die的分布分别是die 0-3分别在4ch上(0-3),4-7 die在ch(0-3上面)

    multiplane的编程:

  • plane相对独立,同时编程,同一个页的plane编程(可以并行,只有一个rb)

附录

ONFI协议定义了NAND闪存与控制器之间的通信接口,其物理层信号根据支持的数据接口类型(SDR/DDR等)有所不同。以下表格汇总了ONFI协议中的核心端口/信号及其功能说明:

典型的Nand引脚如下图所示

ONFI协议端口功能汇总表
信号/端口名称功能描述备注/说明
I/O0 - I/O78位数据/命令/地址总线传输数据、命令和地址的低8位。所有ONFI接口必选。
I/O8 - I/O15高8位数据总线仅当Flash支持16位总线宽度时存在,且仅用于数据传输,命令和地址仍为8位。
CEx#片选信号 (Chip Enable)低电平有效,用于选中目标Flash芯片。当一个设备正在执行操作时拉高CE#,操作仍会继续完成。
CLEx命令锁存使能 (Command Latch Enable)高电平时,I/O总线上的数据被锁存为命令
ALEx地址锁存使能 (Address Latch Enable)高电平时,I/O总线上的数据被锁存为地址
R/Bx#就绪/忙状态指示 (Ready/Busy)输出信号。低电平表示设备正忙(编程/擦除/读取中),高电平表示空闲。
WEx#写使能 (Write Enable)SDR接口中,用于锁存写数据、命令和地址。
REx#读使能 (Read Enable)SDR接口中,用于锁存读数据。
WPx#写保护 (Write Protect)低电平有效,拉低时禁止擦除和编程操作。仅在设备无命令执行时才可拉低。
CLKx时钟信号 (Clock)NV-DDR接口中,WE_n引脚功能被CLK取代,用于锁存命令和地址。
W/Rx#读写方向指示 (Write/Read Direction)NV-DDR接口中,RE_n引脚功能被W/R_n取代,用于指示总线的数据传输方向。
DQS数据选通信号 (Data Strobe)DDR接口中新增的双向信号,用于高速数据传输时的数据同步。不同版本可配置为单端或差分对。
RE_t / RE_c读使能差分对 (Read Enable True/Complement)NV-DDR2/3及更高版本中,RE_n可配置为差分信号对以提升高频性能。
DQS_t / DQS_c数据选通差分对 (DQS True/Complement)NV-DDR2/3及更高版本中,DQS可配置为差分信号对。

版本演进说明:ONFI协议随版本演进,端口功能也有所变化。SDR是传统异步接口;NV-DDR引入了时钟(CLK)和数据选通(DQS);NV-DDR2/3开始支持差分信号对(如RE_t/c, DQS_t/c)以支持更高速度。最新的ONFI 6.0已放弃对SDR等旧接口的定义,专注于扩展NV-LPDDR4接口速率。

NAND闪存基本操作耗时

这三个参数是衡量NAND闪存基本操作耗时的核心性能指标,它们对应了读(Read)、编程(Program/写)、擦除(Erase)这三种主要操作。

具体定义如下:

参数全称对应操作含义解释
tRPage Read Time页读取从存储单元(Cell)将数据读取到页寄存器(Page Register)所需的最大时间。这是完成一次读操作命令后,控制器需要等待数据就绪的典型延迟。
tPROGPage Program Time页编程将数据从页寄存器编程(写入)到存储单元所需的最大时间。这是完成一次写操作命令后,控制器需要等待写入完成的典型延迟。
tBERSBlock Erase Time块擦除擦除一个完整的块(Block)所需的最大时间。这是NAND闪存管理(如垃圾回收)中耗时最长的操作之一。

⏱️ 典型时间与作用

这三个时间参数通常在NAND芯片的数据手册(Datasheet)中明确给出,或可以从支持ONFI协议的芯片参数页中读取。

  • 典型时间:tR和tPROG的典型值通常在几毫秒(ms)级别。作为参考,ONFI规范定义的默认(最慢)值为:tR为200µs,对于非ONFI芯片,驱动通常会使用一个较大的保守值(如65ms)作为超时阈值。tBERS的时间会更长。
  • 核心作用:这些参数是NAND控制器驱动程序配置超时定时器(Timeout Timer)的关键依据。控制器需要根据这些最大值来决定等待操作完成的最长时间,以确保操作不会因意外卡死而无限等待。
http://www.jsqmd.com/news/1103606/

相关文章:

  • 揭秘微信小程序解包:wxappUnpacker如何让你看见小程序的“源代码“
  • 阴阳师自动化脚本实战指南:从零配置到高效托管
  • 终极阴阳师自动化脚本使用教程:5分钟快速上手指南
  • 太原专业公装公司|商场火锅店全案装修不踩坑
  • IntelliJ IDEA接入GitHub Copilot终极指南(2024企业级落地手册)
  • 3步搭建免费数字标牌系统:LibreSignage让你的旧设备变身专业广告屏
  • 为什么你的仓库需要GreaterWMS:开源仓库管理系统的完整指南
  • AI科技热点日报 | 2026年06月28日
  • 基于PLC的工业机器人自动化焊接控制系统设计(PLC;工业机器人;自动化焊接;时序控制;HMI可视化;15000字;组态设计)
  • 如何高效使用Xenos:Windows进程注入的完整实用指南
  • 数据分析常用库基础知识
  • Platinum-MD:让尘封的MiniDisc设备重获新生的终极指南 [特殊字符]
  • AIGC 疑似率太高怎么办?专业科研 AI 写作软件语义改写方案分享
  • UnrealPakViewer:游戏资源分析与优化解决方案
  • 如何评估 AI 回答中品牌解释能力的稳定性?
  • 派了任务没回音?实测哪款工具能管好门店发视频的“最后一公里”
  • 提供海外云服务器,大模型API接口
  • 不会写代码怎么选股票量化软件:回测、盯盘和风控要看哪些模块
  • 如何永久保存微信聊天记录?WeChatMsg一键导出完整指南
  • 火锅店新店筹备:适合初学者入门使用的友好型AI应用推荐
  • 基于FME的伪节点检查
  • 【爱马仕智能体】Hermes 客户端运行故障排查,部署加载失败、程序无响应处理办法(含安装包)
  • uniapp上架苹果应用商店遇到4.3a问题? 如何百分百解决?(2026)
  • 国产智能机器人品牌选型:如何评估技术认可度与方案通用性?
  • 让Windows任务栏焕然一新:TranslucentTB透明美化工具完全指南
  • 终极Windows任务栏透明化神器:TranslucentTB完全指南 [特殊字符]
  • VMware Unlocker:在普通PC上免费运行macOS虚拟机的终极指南
  • 终极指南:三分钟解决Windows DLL注入难题的完整方案
  • DDR3 / DDR4 / DDR5 内存调试技术指南
  • 国常会定调AI:智算集群与“人工智能+“对企业落地的实质影响