CN112817534B - 提高ssd读写性能的方法、装置、计算机设备及存储介质 - Google Patents

提高ssd读写性能的方法、装置、计算机设备及存储介质 Download PDF

Info

Publication number
CN112817534B
CN112817534B CN202110143894.XA CN202110143894A CN112817534B CN 112817534 B CN112817534 B CN 112817534B CN 202110143894 A CN202110143894 A CN 202110143894A CN 112817534 B CN112817534 B CN 112817534B
Authority
CN
China
Prior art keywords
descriptor
hardware descriptor
read
hardware
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202110143894.XA
Other languages
English (en)
Other versions
CN112817534A (zh
Inventor
徐攀
冯元元
甘金涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Union Memory Information System Co Ltd
Original Assignee
Shenzhen Union Memory Information System Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Union Memory Information System Co Ltd filed Critical Shenzhen Union Memory Information System Co Ltd
Priority to CN202110143894.XA priority Critical patent/CN112817534B/zh
Publication of CN112817534A publication Critical patent/CN112817534A/zh
Application granted granted Critical
Publication of CN112817534B publication Critical patent/CN112817534B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0658Controller construction arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及提高SSD读写性能的方法、装置、计算机设备及存储介质;其中,方法,包括:接收读写命令;判断读写命令是否为Mul t i‑Plane操作的读写命令;若是,则获取两个硬件描述符资源;配置plane1对应的硬件描述符1;根据硬件描述符1配置plane2对应的硬件描述符2,使硬件描述符1和硬件描述符2构成链表;判断当前通道的命令先入先出队列是否有剩余空间;若有,则将硬件描述符1下发到命令先入先出队列中;根据硬件描述符1找到硬件描述符2,并根据硬件描述符1的配置信息对硬件描述符2进行信息完善;NAND控制器完成Mul t i‑Plane读写操作。本发明可有效提高SSD的读写性能。

Description

提高SSD读写性能的方法、装置、计算机设备及存储介质
技术领域
本发明涉及SSD读写性能技术领域,更具体地说是指提高SSD读写性能的方法、装置、计算机设备及存储介质。
背景技术
当前进行下发Multi-Plane读写操作描述符的处理方法:现有SSD后端接收到读或写命令后,首先对plane1读写操作的命令进行申请硬件描述符资源,对硬件描述符进行合理配置等处理,再检查相应通道的硬件FIFO(先入先出队列)是否有剩余空间,如果有,则将plane1对应的硬件描述符下发到NAND控制器对应通道的命令FIFO中,然后对plane2做相同的处理,将plane2对应的硬件描述符下发到NAND控制器当前通道的命令FIFO中,只有NAND控制器从命令FIFO中取到进行Multi-Plane操作的两个描述符信息之后,NAND控制器硬件才开始进行相应的Multi-Plane读或写操作,从上述下发Multi-Plane读或写操作的硬件描述符过程可以看出,需要分别对每个硬件描述符进行合理配置,实际测试每个描述符配置需费时1200主控时钟周期(600MHz)数,同时,每个描述符下发到NAND控制器命令FIFO的过程,还需要检查FIFO是否被填满,增加了对NAND控制器硬件寄存器的访问次数,另外,如果下发一个描述符之后,准备下发第二个描述符时发现FIFO已经被填满,则需要主控状态机轮转其他通道进行命令下发来等待当前通道FIFO里的命令执行之后而有剩余空间,如果主控状态机在轮转到其它通道的过程中,当前FIFO有剩余空间,则必须等待主控状态机轮转一周之后才能进行plane2描述符命令的下发,从而降低了描述符下发效率,影响读写性能。
发明内容
本发明的目的在于克服现有技术的缺陷,提供提高SSD读写性能的方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:
提高SSD读写性能的方法,包括以下步骤:
接收读写命令;
判断读写命令是否为Multi-Plane操作的读写命令;
若是,则获取两个硬件描述符资源,供Plane1和Plane2读写操作使用;
根据读写命令,配置plane1对应的硬件描述符1;
根据硬件描述符1配置plane2对应的硬件描述符2,使硬件描述符1和硬件描述符2构成链表;
判断当前通道的命令先入先出队列是否有剩余空间;
若有,则将硬件描述符1下发到命令先入先出队列中;
NAND控制器根据硬件描述符1找到硬件描述符2,并根据硬件描述符1的配置信息对硬件描述符2进行信息完善;
NAND控制器完成Multi-Plane读写操作。
其进一步技术方案为:所述根据硬件描述符1配置plane2对应的硬件描述符2,使硬件描述符1和硬件描述符2构成链表步骤中;将描述符1中指向下一个描述符地址配置为plane2对应的硬件描述符2地址,使硬件描述符1和硬件描述符2构成链表。
其进一步技术方案为:所述判断当前通道的命令先入先出队列是否有剩余空间步骤之后;若没有,则将本次Multi-Plane操作的描述符链表暂时保存起来,等下次状态机轮转时再下发到NAND控制器命令命令先入先出队列中。
其进一步技术方案为:所述NAND控制器根据硬件描述符1找到硬件描述符2,并根据硬件描述符1的配置信息对硬件描述符2进行信息完善步骤中;NAND控制器根据硬件描述符1中指向下一个描述符地址找到硬件描述符2,并根据硬件描述符1配置的信息对硬件描述符2进行信息完善。
提高SSD读写性能的装置,包括:接收单元,第一判断单元,获取单元,配置单元,配置构成单元,第二判断单元,发送单元,找到完善单元,及完成单元;
所述接收单元,用于接收读写命令;
所述第一判断单元,用于判断读写命令是否为Multi-Plane操作的读写命令;
所述获取单元,用于获取两个硬件描述符资源,供Plane1和Plane2读写操作使用;
所述配置单元,用于根据读写命令,配置plane1对应的硬件描述符1;
所述配置构成单元,用于根据硬件描述符1配置plane2对应的硬件描述符2,使硬件描述符1和硬件描述符2构成链表;
所述第二判断单元,用于判断当前通道的命令先入先出队列是否有剩余空间;
所述发送单元,用于将硬件描述符1下发到命令先入先出队列中;
所述找到完善单元,用于NAND控制器根据硬件描述符1找到硬件描述符2,并根据硬件描述符1的配置信息对硬件描述符2进行信息完善;
所述完成单元,用于NAND控制器完成Multi-Plane读写操作。
其进一步技术方案为:所述配置单元中,将描述符1中指向下一个描述符地址配置为plane2对应的硬件描述符2地址,使硬件描述符1和硬件描述符2构成链表。
其进一步技术方案为:还包括:保存单元,用于将本次Multi-Plane操作的描述符链表暂时保存起来,等下次状态机轮转时再下发到NAND控制器命令命令先入先出队列中。
其进一步技术方案为:所述找到完善单元中,NAND控制器根据硬件描述符1中指向下一个描述符地址找到硬件描述符2,并根据硬件描述符1配置的信息对硬件描述符2进行信息完善。
一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如上述所述的提高SSD读写性能的方法。
一种存储介质,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现如上述所述的提高SSD读写性能的方法。
本发明与现有技术相比的有益效果是:通过在配置Multi-Plane读或写命令的硬件描述符资源时,利用进行Multi-Plane操作的两个描述符配置相似的特性,只对plane1的硬件描述符进行配置,而plane2的硬件描述符只需配置其指向的颗粒地址,而硬件描述符的其它信息由NAND控制器检测到是Multi-Plane操作时利用plane1的信息即可,从而节省了配置一个硬件描述符所需要的1200主控时钟周期数,在下发硬件描述符到NAND控制器命令先入先出队列过程,将进行Multi-Plane操作的硬件描述符1和硬件描述符2构成描述符链表,当检查到NAND控制器对应通道的命令先入先出队列有剩余空间时,只需下发硬件描述符1即可,从而减少了对NAND控制器硬件寄存器的访问次数,同时,有效避免了现有模式中,由于只下发了Multi-Plane操作的其中一个描述符,需要主控状态机轮转其它通道进行相应处理而带来的降低描述符下发效率的可能,从而有效提高SSD的读写性能。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的提高SSD读写性能的方法的流程示意图;
图2为本发明实施例提供的提高SSD读写性能的装置的示意性框图;
图3为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1到图3所示的具体实施例,其中,请参阅图1所示,本发明公开了一种提高SSD读写性能的方法,包括以下步骤:
S1,接收读写命令;
S2,判断读写命令是否为Multi-Plane操作的读写命令;若不是,则按正常流程完成操作。
S3,若是,则获取两个硬件描述符资源,供Plane1和Plane2读写操作使用;
其中,SSD中具有一堆硬件描述符资源,当Multiplane操作时候,申请使用其中两个。
S4,根据读写命令,配置plane1对应的硬件描述符1;
其中,在步骤S4中,将描述符1中指向下一个描述符地址由0xffffffff配置为plane2对应的硬件描述符2地址,使硬件描述符1和硬件描述符2构成链表;然后,配置硬件描述符2的地址信息为要读写操作的plane1的block、page等地址。
S5,根据硬件描述符1配置plane2对应的硬件描述符2,使硬件描述符1和硬件描述符2构成链表;
S6,判断当前通道的命令先入先出队列是否有剩余空间;
其中,每个通道的命令先入先出队列是有深度的,每填写一个硬件描述符,空间就会减1。
S7,若没有,则将本次Multi-Plane操作的描述符链表暂时保存起来,等下次状态机轮转时再下发到NAND控制器命令命令先入先出队列中。
其中,状态机完成的任务是逐个通道检查是否有读写命令需要申请描述符资源并配置以后下发到命令先入先出队列中。
S8,若有,则将硬件描述符1下发到命令先入先出队列中;
S9,NAND控制器根据硬件描述符1找到硬件描述符2,并根据硬件描述符1的配置信息对硬件描述符2进行信息完善;
其中,NAND控制器根据硬件描述符1中指向下一个描述符地址找到硬件描述符2,并根据硬件描述符1配置的信息对硬件描述符2进行信息完善。
其中,硬件描述符包含颗粒地址信息,操作类型,命令ID,LPA,微码,指向下个描述符的地址等信息。
S10,NAND控制器完成Multi-Plane读写操作,释放硬件描述符资源。
其中,本发明的Multi-Plane操作方案,不局限于2个Plane,该方案同样适用4个或更多plane的读写操作。
其中,本发明使用的名词解释说明如下:
Plane:Nand颗粒内部拥有页寄存器的单位,每个Plane包含若干个block;
Multi-Plane:颗粒支持多个Plane(Multi-Plane)同时进行读或写操作。
本发明通过在配置Multi-Plane读或写命令的硬件描述符资源时,利用进行Multi-Plane操作的两个描述符配置相似的特性,只对plane1的硬件描述符进行配置,而plane2的硬件描述符只需配置其指向的颗粒地址,而硬件描述符的其它信息由NAND控制器检测到是Multi-Plane操作时利用plane1的信息即可,从而节省了配置一个硬件描述符所需要的1200主控时钟周期数,在下发硬件描述符到NAND控制器命令先入先出队列过程,将进行Multi-Plane操作的硬件描述符1和硬件描述符2构成描述符链表,当检查到NAND控制器对应通道的命令先入先出队列有剩余空间时,只需下发硬件描述符1即可,从而减少了对NAND控制器硬件寄存器的访问次数,同时,有效避免了现有模式中,由于只下发了Multi-Plane操作的其中一个描述符,需要主控状态机轮转其它通道进行相应处理而带来的降低描述符下发效率的可能,从而有效提高SSD的读写性能。
请参阅图2所示,本发明还公开了一种提高SSD读写性能的装置,包括:接收单元10,第一判断单元20,获取单元30,配置单元40,配置构成单元50,第二判断单元60,发送单元70,找到完善单元80,及完成单元90;
所述接收单元10,用于接收读写命令;
所述第一判断单元20,用于判断读写命令是否为Multi-Plane操作的读写命令;
所述获取单元30,用于获取两个硬件描述符资源,供Plane1和Plane2读写操作使用;
所述配置单元40,用于根据读写命令,配置plane1对应的硬件描述符1;
所述配置构成单元50,用于根据硬件描述符1配置plane2对应的硬件描述符2,使硬件描述符1和硬件描述符2构成链表;
所述第二判断单元60,用于判断当前通道的命令先入先出队列是否有剩余空间;
所述发送单元70,用于将硬件描述符1下发到命令先入先出队列中;
所述找到完善单元80,用于NAND控制器根据硬件描述符1找到硬件描述符2,并根据硬件描述符1的配置信息对硬件描述符2进行信息完善;
所述完成单元90,用于NAND控制器完成Multi-Plane读写操作。
其中,所述配置单元40中,将描述符1中指向下一个描述符地址配置为plane2对应的硬件描述符2地址,使硬件描述符1和硬件描述符2构成链表。
其中,该装置还包括:保存单元100,用于将本次Multi-Plane操作的描述符链表暂时保存起来,等下次状态机轮转时再下发到NAND控制器命令命令先入先出队列中。
其中,所述找到完善单元80中,NAND控制器根据硬件描述符1中指向下一个描述符地址找到硬件描述符2,并根据硬件描述符1配置的信息对硬件描述符2进行信息完善。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述提高SSD读写性能的装置和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述提高SSD读写性能的装置可以实现为一种计算机程序的形式,该计算机程序可以在如图3所示的计算机设备上运行。
请参阅图3,图3是本申请实施例提供的一种计算机设备的示意性框图;该计算机设备500可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑、个人数字助理和穿戴式设备等具有通信功能的电子设备。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图3,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种提高SSD读写性能的方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种提高SSD读写性能的方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中计算机程序包括程序指令,所述程序指令当被处理器执行时可实现上述的提高SSD读写性能的方法。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
上述仅以实施例来进一步说明本发明的技术内容,以便于读者更容易理解,但不代表本发明的实施方式仅限于此,任何依本发明所做的技术延伸或再创造,均受本发明的保护。本发明的保护范围以权利要求书为准。

Claims (10)

1.提高SSD读写性能的方法,其特征在于,包括以下步骤:
接收读写命令;
判断读写命令是否为Multi-Plane操作的读写命令;
若是,则获取两个硬件描述符资源,供Plane1和Plane2读写操作使用;
根据读写命令,配置plane1对应的硬件描述符1;
根据硬件描述符1配置plane2对应的硬件描述符2,使硬件描述符1和硬件描述符2构成链表;
判断当前通道的命令先入先出队列是否有剩余空间;
若有,则将硬件描述符1下发到命令先入先出队列中;
NAND控制器根据硬件描述符1找到硬件描述符2,并根据硬件描述符1的配置信息对硬件描述符2进行信息完善;
NAND控制器完成Multi-Plane读写操作。
2.根据权利要求1所述的提高SSD读写性能的方法,其特征在于,所述根据硬件描述符1配置plane2对应的硬件描述符2,使硬件描述符1和硬件描述符2构成链表步骤中;将描述符1中指向下一个描述符地址配置为plane2对应的硬件描述符2地址,使硬件描述符1和硬件描述符2构成链表。
3.根据权利要求1所述的提高SSD读写性能的方法,其特征在于,所述判断当前通道的命令先入先出队列是否有剩余空间步骤之后;若没有,则将本次Multi-Plane操作的描述符链表暂时保存起来,等下次状态机轮转时再下发到NAND控制器命令先入先出队列中。
4.根据权利要求1所述的提高SSD读写性能的方法,其特征在于,所述NAND控制器根据硬件描述符1找到硬件描述符2,并根据硬件描述符1的配置信息对硬件描述符2进行信息完善步骤中;NAND控制器根据硬件描述符1中指向下一个描述符地址找到硬件描述符2,并根据硬件描述符1配置的信息对硬件描述符2进行信息完善。
5.提高SSD读写性能的装置,其特征在于,包括:接收单元,第一判断单元,获取单元,配置单元,配置构成单元,第二判断单元,发送单元,找到完善单元,及完成单元;
所述接收单元,用于接收读写命令;
所述第一判断单元,用于判断读写命令是否为Multi-Plane操作的读写命令;
所述获取单元,用于获取两个硬件描述符资源,供Plane1和Plane2读写操作使用;
所述配置单元,用于根据读写命令,配置plane1对应的硬件描述符1;
所述配置构成单元,用于根据硬件描述符1配置plane2对应的硬件描述符2,使硬件描述符1和硬件描述符2构成链表;
所述第二判断单元,用于判断当前通道的命令先入先出队列是否有剩余空间;
所述发送单元,用于将硬件描述符1下发到命令先入先出队列中;
所述找到完善单元,用于NAND控制器根据硬件描述符1找到硬件描述符2,并根据硬件描述符1的配置信息对硬件描述符2进行信息完善;
所述完成单元,用于NAND控制器完成Multi-Plane读写操作。
6.根据权利要求5所述的提高SSD读写性能的装置,其特征在于,所述配置单元中,将描述符1中指向下一个描述符地址配置为plane2对应的硬件描述符2地址,使硬件描述符1和硬件描述符2构成链表。
7.根据权利要求5所述的提高SSD读写性能的装置,其特征在于,还包括:保存单元,用于将本次Multi-Plane操作的描述符链表暂时保存起来,等下次状态机轮转时再下发到NAND控制器命令先入先出队列中。
8.根据权利要求5所述的提高SSD读写性能的装置,其特征在于,所述找到完善单元中,NAND控制器根据硬件描述符1中指向下一个描述符地址找到硬件描述符2,并根据硬件描述符1配置的信息对硬件描述符2进行信息完善。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1-4中任一项所述的提高SSD读写性能的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时可实现如权利要求1-4中任一项所述的提高SSD读写性能的方法。
CN202110143894.XA 2021-02-02 2021-02-02 提高ssd读写性能的方法、装置、计算机设备及存储介质 Active CN112817534B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110143894.XA CN112817534B (zh) 2021-02-02 2021-02-02 提高ssd读写性能的方法、装置、计算机设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110143894.XA CN112817534B (zh) 2021-02-02 2021-02-02 提高ssd读写性能的方法、装置、计算机设备及存储介质

Publications (2)

Publication Number Publication Date
CN112817534A CN112817534A (zh) 2021-05-18
CN112817534B true CN112817534B (zh) 2023-07-04

Family

ID=75860635

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110143894.XA Active CN112817534B (zh) 2021-02-02 2021-02-02 提高ssd读写性能的方法、装置、计算机设备及存储介质

Country Status (1)

Country Link
CN (1) CN112817534B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102124525A (zh) * 2008-02-27 2011-07-13 密克罗奇普技术公司 虚拟存储器接口
CN103052948A (zh) * 2010-07-07 2013-04-17 马维尔国际贸易有限公司 用于非易失性半导体存储器的接口管理控制系统和方法
CN110069212A (zh) * 2018-01-22 2019-07-30 爱思开海力士有限公司 存储装置及存储装置的操作方法
CN110825319A (zh) * 2018-08-13 2020-02-21 爱思开海力士有限公司 基于块状态确定可用性的存储器系统及操作方法
CN110858126A (zh) * 2018-08-23 2020-03-03 爱思开海力士有限公司 数据存储设备及其操作方法和具有该设备的存储系统
CN110888825A (zh) * 2018-09-10 2020-03-17 爱思开海力士有限公司 在存储器系统中处理数据的设备和方法
CN111078130A (zh) * 2018-10-22 2020-04-28 爱思开海力士有限公司 存储器控制器及具有存储器控制器的存储器系统

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9720612B2 (en) * 2015-04-30 2017-08-01 Sandisk Technologies Llc Biasing schemes for storage of bits in unreliable storage locations
KR20210007503A (ko) * 2019-07-11 2021-01-20 에스케이하이닉스 주식회사 메모리 컨트롤러 및 이를 포함하는 메모리 시스템

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102124525A (zh) * 2008-02-27 2011-07-13 密克罗奇普技术公司 虚拟存储器接口
CN103052948A (zh) * 2010-07-07 2013-04-17 马维尔国际贸易有限公司 用于非易失性半导体存储器的接口管理控制系统和方法
CN110069212A (zh) * 2018-01-22 2019-07-30 爱思开海力士有限公司 存储装置及存储装置的操作方法
CN110825319A (zh) * 2018-08-13 2020-02-21 爱思开海力士有限公司 基于块状态确定可用性的存储器系统及操作方法
CN110858126A (zh) * 2018-08-23 2020-03-03 爱思开海力士有限公司 数据存储设备及其操作方法和具有该设备的存储系统
CN110888825A (zh) * 2018-09-10 2020-03-17 爱思开海力士有限公司 在存储器系统中处理数据的设备和方法
CN111078130A (zh) * 2018-10-22 2020-04-28 爱思开海力士有限公司 存储器控制器及具有存储器控制器的存储器系统

Also Published As

Publication number Publication date
CN112817534A (zh) 2021-05-18

Similar Documents

Publication Publication Date Title
US10379745B2 (en) Simultaneous kernel mode and user mode access to a device using the NVMe interface
CN109313620B (zh) 存储器协议
CN108710531B (zh) 循环队列的数据写入方法、装置、终端设备和存储介质
US11003606B2 (en) DMA-scatter and gather operations for non-contiguous memory
US20190155517A1 (en) Methods and apparatus for memory controller discovery of vendor-specific non-volatile memory devices
US20140372831A1 (en) Memory controller operating method for read operations in system having nonvolatile memory device
CN110704084A (zh) 固件升级中内存动态分配的方法、装置、计算机设备及存储介质
TW202011203A (zh) 指令處理方法及使用所述方法的儲存控制器
US10922022B2 (en) Method and system for managing LBA overlap checking in NVMe based SSDs
US10970206B2 (en) Flash data compression decompression method and apparatus
US20150199201A1 (en) Memory system operating method providing hardware initialization
CN112817534B (zh) 提高ssd读写性能的方法、装置、计算机设备及存储介质
US20150212759A1 (en) Storage device with multiple processing units and data processing method
CN110825326A (zh) 提升ssd随机读性能的方法、装置、计算机设备及存储介质
EP2942714A2 (en) Monitoring method, monitoring apparatus, and electronic device
CN113031863B (zh) Ssd命令相关性管理方法、装置、计算机设备及存储介质
CN113253939B (zh) 数据处理方法、装置、电子设备及存储介质
US11500802B1 (en) Data replication for accelerator
US11354130B1 (en) Efficient race-condition detection
US11294832B2 (en) Systems and methods for queuing device management configuration requests
US7707378B2 (en) DDR flash implementation with hybrid row buffers and direct access interface to legacy flash functions
CN111176726A (zh) 可配置的命令撤销方法及其装置
CN112445413A (zh) 一种数据存储的方法、装置及相关设备
WO2016177083A1 (zh) 一种数据存储方法、存储装置和计算机存储介质
CN116841697B (zh) 处理mmio请求的方法、电子装置和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant