0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

NAND Flash接口的演进史

UnionMemory忆联 来源:UnionMemory忆联 2023-01-14 11:22 次阅读

1从Flash系统的性能提升说起

SD卡、手机、平板等消费级产品到数据中心企业级场景,NAND Flash凭借其高性能、大容量、低功耗以及低成本等特性大受欢迎,是目前应用最为广泛的半导体非易失存储介质。为了满足业务场景越来越严苛的性能要求,人们想了许多方法来提升基于NAND Flash的系统性能,具体可分为以下几类:

c1df0916-934e-11ed-bfe3-dac502259ad0.png

图一 Flash系统性能提升概览

-提升总线频率,优化AC Timing:在满足可靠传输的基础上,提升NAND Flash总线频率,尽可能使用较小的时序参数进行操作。特别是在Page Size越来越大(2K 4K 8K 16KB)的情况下,优化时序参数从而减小数据在总线上的传输时间显得尤为重要,这也是过去二十多年来人们一直在持续努力的方向,比如总线接口速率为200Mbps (100MHz)时,完成4KB数据传输需要大约40us,但如果将总线接口速率提升到1600Mbps (800MHz)时,完成4KB数据传输仅需要大约5us。

-使用Cache Read/Program: 一般情况下,LUN(Logic Unit Number)是NAND Flash最小的逻辑操作单元,读/写操作是串行执行的,即一个读/写命令完成后,才能进行下一个读/写操作。Cache Read/Program允许用户在NAND Flash Array Busy时,同时在总线上进行读/写数据传输,从而提高流水效率。

-多路并发技术包括:1)通道间并发,允许用户在不同的通道上并发执行独立的命令和数据操作;2)通道内并发,即Interleaving操作,允许用户在满足一定约束的情况下,在通道内的不同CE或CE内的不同Die之间进行交织操作;3)多平面操作,即Multi-Plane操作,允许用户并发读/写Die内的不同Plane。可以说,正是因为有了多路并发技术,才使得基于NAND Flash的固态存储产品能达到GB级别的读/写性能。

可见,以上优化覆盖了NAND Flash基础时序/指令优化到系统级的综合优化,在实际应用中可以根据系统要求组合选用。经过多年发展,Cache Read/Program及多路并发技术已发展得较为成熟,近年来的变化相对较小,但NAND Flash总线频率提升技术一直在蓬勃发展,并且近年来有加速演进的趋势,下面我们将结合ONFI协议演进来感受一下NAND Flash接口速率的演进。

2ONFI接口演进历史

ONFI (Open NAND Flash Interface)组织成立于2006年5月,致力于简化NAND Flash在消费电子应用和计算平台中的集成和普及。自2006年12月发布第一个ONFI协议以来,ONFI组织已经累计发布了数十个版本,最大接口速率也从最初的50Mbps发展到目前最新的3600Mbps,从图二可以看到ONFI协议不断优化的接口演进趋势。

c20c202c-934e-11ed-bfe3-dac502259ad0.png

图二 ONFI接口速率演进

- ONFI 1.0:随着NAND Flash在SD卡及IPod等消费级电子产品的成功应用,以及基于闪存的MP3、U盘等需求量不断增大,极大地拓展了NAND Flash的应用领域。但由于不同NAND Flash厂家的接口协议各有不同,导致下游的主控厂商和产品制造厂商遇到各种兼容性问题。为了改变这种局面,Intel牵头成立了ONFI组织,并在不久后迅速推出ONFI 1.0版本,目的是统一NAND Flash接口协议。

- ONFI 2.x:ONFI 2.x引入了NV-DDR技术,通过双边沿采样(Double Data Rate)实现速率倍增,最大接口速率从ONFI 2.0的133Mbps演进到ONFI 2.1/2.2的200Mbps。NV-DDR技术引入外部参考电压作为数据输入/输出信号的采样基准,采用源同步时钟来精确锁存数据、命令、地址信号,但由于DQS和Clock不是差分信号,所以边沿容易受干扰,目前主流消费级/企业级NAND Flash已经很少看到NV-DDR接口。

- ONFI 3.x:ONFI 3.x引入了NV-DDR2技术,最大接口速率从ONFI 3.0/3.1的400Mbps演进到ONFI 3.2的533Mbps。NV-DDR2引入了差分信号和On-Die Termination (ODT)技术来提升信号质量。在差分模式下,通过在数据传输阶段使能RE_n/RE_c差分信号对和DQS_t/DQS_c signals差分信号对,可有效抑制噪声和干扰。通过在NAND Flash芯片上集成ODT端接电阻,可以将控制器和NAND Flash的信号传输通道上的阻抗失配减少到最小,有助于减少信号反射;另外,ODT阻值可以通过软件配置寄存器来控制,因此可以大大简化硬件电路设计

- ONFI 4.x:ONFI 4.x引入了NV-DDR3技术,最大接口速率从ONFI 4.0的800Mbps演进到ONFI 4.2的1600Mbps。为保障高速信号传输质量,NV-DDR3引入了多项校准技术,包括ZQ Calibration、Duty Cycle Correction (DCC)和读/写DQ校准。上文提到ONFI 3.0引入了ODT技术,由于NAND Flash上的ODT电阻采用CMOS工艺制备,容易在温度和电压变化时发生阻值漂移,因此需要通过ZQ Calibration技术通过外接高精度电阻进行阻值校准。DCC校准可调节信号占空比,解决高速信号传输路径不对称导致的上升沿与下降沿失配问题,而读/写DQ校准可以保证读/写采样信号对准眼图中心。

- ONFI 5.x:ONFI 5.x引入了NV-LPDDR4技术,最大接口速率从ONFI 5.0的2400Mbps演进到ONFI 5.1的3600Mbps。为了解决高速接口带来的巨大信号完整性挑战,ONFI 5.x除了进一步加强写校准和VrefQ校准外,还引入了非对称DQS设计和自适应均衡器设计。如DFE(ecision Feedback Equalizer,判决反馈均衡器)技术用上次信道的输出经过判断后加权反馈到输入上,可以消除码后干扰。另外,NV-DDR3和NV-LPDDR4支持的最大接口速率相同,但NV-LPDDR4的优势在于采用LTT技术后可大幅度降低读操作功耗。

从ONFI 1.0到近期最新发布的ONFI 5.1可以看出,为了匹配系统前端接口(如eMMC/UFS/PCIe)越来越高的带宽要求,NAND Flash接口速率整整提升了72倍,而且未来还将快速走向下一个峰值。

那接口速率的提升给系统带来的收益是否也在翻倍上涨呢?答案是否定的。

3传统协议的不足呼唤进一步改进

NAND Flash总线上传输的信号可分为命令、地址和数据3种,通过DQ[7:0]时分复用,在不同的时刻分别传输命令、地址和数据。其中,数据是同步传输、差分采样,速率较高;但命令和地址是异步传输、单端采样,速率较低。从ONFI 1.0到ONFI 5.1,接口速率得到了飞速发展,但命令、地址和数据的传输形式基本不变。实际上,随着总线速率提升,改善的主要是数据传输时延,命令和地址的传输时延并没有得到改善,对系统而言总线使用效率是在不断下降的。如下图三在乐观的场景下比较了写/读场景的总线效率,可以看到,读和写的总线效率都在逐渐降低,尤其是在读场景跌落到50%左右时进一步加剧了系统设计的挑战。

c241fb48-934e-11ed-bfe3-dac502259ad0.png

图三 NAND Flash总线效率分析

图四以业内某型号SSD为参考,与忆联企业级固态硬盘产品UH811a进行了对比分析。可以看到,两款SSD的读带宽相当,都在7000MB/s左右,但UH811a的4K随机读IOPS相比参考SSD有显著提升。进一步分析可以发现,将UH811a的4K IOPS换算成带宽,是与读带宽相当的;但对参考SSD进行同样的换算,则换算出来的带宽只有读带宽的70%,原因就在于随机读操作的总线开销高于顺序读。

c26002fa-934e-11ed-bfe3-dac502259ad0.png

图四 读带宽 vs 4K读IOPS

可见,在传统命令/地址/数据传输形式不变的情况下,随着接口速率提升,增加系统复杂度的同时,带来的收益却在衰减,因此,传统协议的不足推动协议不断改进。面对这个问题,JEDEC组织正紧锣密鼓地讨论协议的下一轮演进,未来将在提升接口速率的同时优化命令/地址传输方式,这也势必会给主控设计带来新的考验。

4总结

一直以来,提升NAND Flash接口速率是提高系统性能的主要手段,NAND Flash厂商也想出了各种办法来解决高速信号带来的信号完整性问题。面向未来,传统的命令/地址输入方式导致总线利用率不高,协议的进一步演进除了考虑继续提升接口速率外,也将迎来新的命令/地址输入方式。忆联将密切关注协议发展动态,并以灵活的架构来兼容支持未来的介质,给客户带来更好的存储产品与解决方案。

审核编辑:汤梓红

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • NAND
    +关注

    关注

    16

    文章

    1546

    浏览量

    134799
  • FlaSh
    +关注

    关注

    10

    文章

    1551

    浏览量

    146671
  • 存储器
    +关注

    关注

    38

    文章

    7151

    浏览量

    162001
  • 接口
    +关注

    关注

    33

    文章

    7640

    浏览量

    148509
  • ONFI
    +关注

    关注

    1

    文章

    4

    浏览量

    7660

原文标题:必看“芯”知识 | NAND Flash接口的演进史

文章出处:【微信号:UnionMemory忆联,微信公众号:UnionMemory忆联】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    Nand Flash接口定义解析 基于AMD FPGA的Nand Flash接口读写实现

    Nand Flash因其具有容量大、成本低、寿命长的特点,被广泛的用作数据存储的解决方案。然而NandFlash的读写控制较为复杂,Nand Flash
    的头像 发表于 11-10 09:40 3586次阅读
    <b class='flag-5'>Nand</b> <b class='flag-5'>Flash</b><b class='flag-5'>接口</b>定义解析 基于AMD FPGA的<b class='flag-5'>Nand</b> <b class='flag-5'>Flash</b><b class='flag-5'>接口</b>读写实现

    标准NAND FLASH控制器/超高速NAND FLASH阵列控制器

    NAND FLASH Controller IP Core标准NAND FLASH Controller标准NAND
    发表于 03-01 18:49

    nand flash 接口切换

    请问有没有 使用过 nand flash的,遇到一个问题找不到原因。最开始 nand flash 默认接口 是 SDR 模式,我将
    发表于 10-04 13:30

    NAND Flash的储存结构与接口设计

    Flash 的存储结构以及NAND Flash接口控制设计。NAND Flash 的存储结构
    发表于 11-05 09:18

    NAND Flash的驱动程序设计方案

    NAND Flash的驱动程序设计方案 以三星公司K9F2808UOB为例,设计了NAND Flash与S3C2410的接口电路,介绍了
    发表于 03-29 15:07 1538次阅读
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>的驱动程序设计方案

    NAND FLASH在WINCENET系统中的应用设计

    本文提出了 一种 NAND Flash 在 WINCE. net 系统中的应用方案设计。首先介绍了 NAND Flash 原理及与 NO R Fla
    发表于 03-14 16:01 2次下载

    NAND Flash和NOR Flash二者之间的区别是什么

    字节。 NAND Flash器件使用复杂的I/O口来串行地存取数据﹐只能通过I/O接口发送命令和地址,对NAND Flash内部数据进行访问
    发表于 11-03 16:17 3w次阅读

    NAND Flash 的存储结构以及NAND Flash接口控制设计

    Flash 的存储结构以及NAND Flash接口控制设计。 NAND Flash 的存储结
    发表于 11-03 16:12 3917次阅读
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b> 的存储结构以及<b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>的<b class='flag-5'>接口</b>控制设计

    FPGA MCU FSMC通信接口——NAND Flash模式

    FPGA MCU通信——异步接口(仿NAND Flash)FPGA MCU通信——异步接口MCU侧开发注意事项FPGA侧注意事项FPGA MCU通信——异步
    发表于 10-26 11:51 27次下载
    FPGA MCU FSMC通信<b class='flag-5'>接口</b>——<b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>模式

    SPI Nand Flash简介

    1.SPI Nand Flash简介SPI Nand Flash顾名思义就是串行接口Nand
    发表于 12-02 10:51 33次下载
    SPI <b class='flag-5'>Nand</b> <b class='flag-5'>Flash</b>简介

    nand_flash的初始化,如何从nand_flash中读取数据

    本文章主要讲解了nand_flash初始化的方法,如何读取nand_flash上的数据
    发表于 12-22 19:04 15次下载
    <b class='flag-5'>nand_flash</b>的初始化,如何从<b class='flag-5'>nand_flash</b>中读取数据

    NOR FlashNAND FLASH的区别是什么

    与NOR Flash相近,根据接口的不同有所差异; NAND FLASH的写入速度比NOR Flash快很多;
    发表于 01-25 17:25 6w次阅读
    NOR <b class='flag-5'>Flash</b>和<b class='flag-5'>NAND</b> <b class='flag-5'>FLASH</b>的区别是什么

    NAND Flash接口简单介绍

    NAND Flash是一种非易失存储器,也就是掉电不丢失类型,现在我们常见的存储设备基本都是NAND Flash,比如U盘、固态硬盘,手机存储等等,电脑传统硬盘除外。
    发表于 09-11 14:48 680次阅读
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b><b class='flag-5'>接口</b>简单介绍

    NAND Flash 原理深度解析(下)

    在上一篇文章中为大家介绍了NAND Flash的工作原理和自身的特性(点击查看 ),本次文章将继续为大家带来关于NAND Flash的内容。 一、N
    的头像 发表于 09-22 18:10 842次阅读
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b> 原理深度解析(下)

    NAND Flash和NOR Flash的区别

    NAND Flash和NOR Flash是两种常见的闪存类型。
    的头像 发表于 11-30 13:53 932次阅读
    <b class='flag-5'>NAND</b> <b class='flag-5'>Flash</b>和NOR <b class='flag-5'>Flash</b>的区别