完整编程命令处理方法与装置制造方法及图纸

技术编号:18940018 阅读:33 留言:0更新日期:2018-09-15 10:58
本申请提供了处理完整编程命令的方法与装置。所提供的处理编程命令的方法,包括:接收指示NVM命令的消息;响应于所述消息是指示向NVM芯片写数据的NVM命令,从存储器搬移数据到缓存,向NVM芯片发出完整编程命令的部分;响应于向NVM芯片搬移了完整编程命令的所有数据,向NVM芯片发出命令信号指示NVM芯片开始编程操作。

Complete programming command processing method and device

The application provides a method and device for processing complete programming commands. The method provided for processing programming commands includes: receiving a message indicating a NVM command; responding to the NVM command indicating that data is written to the NVM chip, moving data from memory to cache, issuing a part of the complete programming command to the NVM chip; and responding to moving all data of the complete programming command to the NVM chip. A command signal is sent to the NVM chip to instruct the NVM chip to start programming operation.

【技术实现步骤摘要】
完整编程命令处理方法与装置
本申请涉及存储技术,具体地,涉及处理NVM芯片的完成编程命令。
技术介绍
图1展示了固态存储设备的框图。固态存储设备102同主机相耦合,用于为主机提供存储能力。主机同固态存储设备102之间可通过多种方式相耦合,耦合方式包括但不限于通过例如SATA(SerialAdvancedTechnologyAttachment,串行高级技术附件)、SCSI(SmallComputerSystemInterface,小型计算机系统接口)、SAS(SerialAttachedSCSI,串行连接SCSI)、IDE(IntegratedDriveElectronics,集成驱动器电子)、USB(UniversalSerialBus,通用串行总线)、PCIE(PeripheralComponentInterconnectExpress,PCIe,高速外围组件互联)、NVMe(NVMExpress,高速非易失存储)、以太网、光纤通道、无线通信网络等连接主机与固态存储设备102。主机可以是能够通过上述方式同存储设备相通信的信息处理设备,例如,个人计算机、平板电脑、服务器、便携式计算机、网络交换机、路由器、蜂窝电话、个人数字助理等。存储设备102包括接口103、控制部件104、一个或多个NVM芯片105以及DRAM(DynamicRandomAccessMemory,动态随机访问存储器)110。NAND闪存、相变存储器、FeRAM(FerroelectricRAM,铁电存储器)、MRAM(MagneticRandomAccessMemory,磁阻存储器)、RRAM(ResistiveRandomAccessMemory,阻变存储器)等是常见的NVM。接口103可适配于通过例如SATA、IDE、USB、PCIE、NVMe、SAS、以太网、光纤通道等方式与主机交换数据。控制部件104用于控制在接口103、NVM芯片105以及DRAM110之间的数据传输,还用于存储管理、主机逻辑地址到闪存物理地址映射、擦除均衡、坏块管理等。控制部件104可通过软件、硬件、固件或其组合的多种方式实现,例如,控制部件104可以是FPGA(Field-programmablegatearray,现场可编程门阵列)、ASIC(ApplicationSpecificIntegratedCircuit,应用专用集成电路)或者其组合的形式。控制部件104也可以包括处理器或者控制器,在处理器或控制器中执行软件来操纵控制部件104的硬件来处理IO(Input/Output)命令。控制部件104还可以耦合到DRAM110,并可访问DRAM110的数据。在DRAM可存储FTL表和/或缓存的IO命令的数据。控制部件104包括闪存接口控制器(或称为介质接口控制器、闪存通道控制器),闪存接口控制器耦合到NVM芯片105,并以遵循NVM芯片105的接口协议的方式向NVM芯片105发出命令,以操作NVM芯片105,并接收从NVM芯片105输出的命令执行结果。已知的NVM芯片接口协议包括“Toggle”、“ONFI”等。存储器目标(Target)是NAND闪存封装内的共享CE(,ChipEnable,芯片使能)信号的一个或多个逻辑单元(LUN,LogicUNit)。NAND闪存封装内可包括一个或多个管芯(Die)。典型地,逻辑单元对应于单一的管芯。逻辑单元可包括多个平面(Plane)。逻辑单元内的多个平面可以并行存取,而NAND闪存芯片内的多个逻辑单元可以彼此独立地执行命令和报告状态。存储介质上通常按页来存储和读取数据。而按块来擦除数据。块(也称物理块)包含多个页。块包含多个页。存储介质上的页(称为物理页)具有固定的尺寸,例如17664字节。物理页也可以具有其他的尺寸。存储介质的每个存储单元可存储一比特或多比特信息。例如,可存储了1比特信息的存储单元称为SLC(单级单元,SingleLevelCell),可存储2比特信息的存储单元称为MLC(多级单元,MultipleLevelCell),可存储3比特信息的存储单元称为TLC(三级单元,TripleLevelCell),可存储4比特信息的存储单元称为QLC(四级单元,quadrupleLevelCell)。每个存储单元中存储的多个比特分别属于不同的物理页。例如,TLC存储单元存储了3比特“101”,按从左到右的顺序分别称为MSB(最高有效位,MostSignificantBit)、CSB(中间有效位,CentralSignificantBit)和LSB(最低有效位,LeastSignificantBit)。将由多个存储单元的MSB构成的物理页称为MSB页,将由多个存储单元的CSB构成的物理页称为CSB页,以及将由多个存储单元的LSB构成的物理页称为LSB页。类似地,MLC存储单元存储的2个比特分别称为MSB(最高有效位,MostSignificantBit)和LSB(最低有效位,LeastSignificantBit)。作为举例,一些MLC类型的NVM芯片的相关联的MSB页与LSB页需要通过单条编程命令被写入数据。一些TLC类型的NVM芯片的相关联的MSB页、CSB页与LSB页需要通过单条编程命令被写入数据。一些TLC类型的NVM芯片的相关联的MSB页、CSB页与LSB页需要通过2条编程命令被写入数据,其中一条编程命令写入1页数据,而另一条编程命令要写入两页数据。图2是现有技术的NVM芯片的编程命令的示意图。控制部件(例如,图1的控制部件104)通过引脚向NVM芯片发出包括命令、地址与数据的编程命令,将数据写入NVM芯片。编程命令包括多个时钟周期。图2中,位于左边的周期时间在前,位于右边的周期时间在后。每个周期内通过DQ引脚向NVM芯片传输一组信号,图2中“周期类型”行,展示了每周期传输的信号的类型(或含义),“DQ”行展示了每周期传输的信号的值。以编程命令为例,编程命令包括地址、数据与状态三部分。在编程命令的地址部分,由DQ引脚的“80h”作为指示,随后是多个(例如5个)周期的地址(由C1、C2、R1、R2与R3)指示,这些地址指示编程命令要写入的NVM芯片的地址。接下来,向NVM芯片传输要写入的数据(由D0、D1、……Dn表示),以及由信号“10h”或“15h”指示数据传输的结束。NVM芯片收到“10h”或“15h”命令后,开始执行编程操作。控制部件104接下来通过向NVM芯片发出“70h”命令来查询NVM芯片的状态,NVM芯片向控制部件给出状态。状态指示编程命令是否执行完成。NVM芯片包括页缓存,用于缓存向NVM芯片提供的待编程数据或待从NVM芯片读出的数据。可选地,编程命中所传输的数据被存储在页缓存中,以及响应于收到例如“10h”或“15h”的指定信号,NVM芯片将页缓存中的数据搬移到内部缓存以及进而搬移到NVM存储介质。为执行编程操作,控制部件根据要写入NVM芯片的物理地址,向NVM芯片发送编程命令的地址部分。接下来,控制部件将存储器中的数据传送给NVM芯片,作为编程命令的数据部分。响应于数据传输完成,数据被存储在NVM芯片的页缓存中。控制部件还向NVM芯片发出命令以查询NVM芯本文档来自技高网...

【技术保护点】
1.一种处理编程命令的方法,包括:接收指示NVM命令的消息;响应于所述消息是指示向NVM芯片写数据的NVM命令,从存储器搬移数据到缓存,向NVM芯片发出完整编程命令的部分;响应于向NVM芯片搬移了完整编程命令的所有数据,向NVM芯片发出命令信号指示NVM芯片开始编程操作。

【技术特征摘要】
2017.12.27 CN 20171144543951.一种处理编程命令的方法,包括:接收指示NVM命令的消息;响应于所述消息是指示向NVM芯片写数据的NVM命令,从存储器搬移数据到缓存,向NVM芯片发出完整编程命令的部分;响应于向NVM芯片搬移了完整编程命令的所有数据,向NVM芯片发出命令信号指示NVM芯片开始编程操作。2.根据权利要求1所述的方法,还包括:响应于所述消息指示向NVM芯片写入数据的位置是LSB页,将用于LSB页的数据从存储器搬移到缓存,通过向NVM芯片发出完整编程命令的部分以指示将用于LSB页的数据发送给NVM芯片。3.根据权利要求1或2所述的方法,还包括:响应于所述消息指示向NVM芯片写入数据的位置是MSB页,通过向NVM芯片发出完整编程命令的部分以指示将用于MSB页的数据发送给NVM芯片。4.根据权利要求1所述的方法,还包括:响应于所接收的第一消息指示向NVM芯片写入数据的位置是LSB页,缓存所述第一消息。5.根据权利要求4所述的方法,还包括:响应于所接收的第三消息指示向NVM芯片...

【专利技术属性】
技术研发人员:王晨阳
申请(专利权)人:贵阳忆芯科技有限公司
类型:发明
国别省市:贵州,52

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1