CN106775477A - SSD主控BE Buffer、SSD主控、数据传输管理装置及方法 - Google Patents

SSD主控BE Buffer、SSD主控、数据传输管理装置及方法 Download PDF

Info

Publication number
CN106775477A
CN106775477A CN201611177768.1A CN201611177768A CN106775477A CN 106775477 A CN106775477 A CN 106775477A CN 201611177768 A CN201611177768 A CN 201611177768A CN 106775477 A CN106775477 A CN 106775477A
Authority
CN
China
Prior art keywords
dma
memory cell
data
buffer
flash
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.)
Granted
Application number
CN201611177768.1A
Other languages
English (en)
Other versions
CN106775477B (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.)
Hunan Goke Microelectronics Co Ltd
Original Assignee
Hunan Goke Microelectronics 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 Hunan Goke Microelectronics Co Ltd filed Critical Hunan Goke Microelectronics Co Ltd
Priority to CN201611177768.1A priority Critical patent/CN106775477B/zh
Publication of CN106775477A publication Critical patent/CN106775477A/zh
Application granted granted Critical
Publication of CN106775477B publication Critical patent/CN106775477B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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/0638Organizing or formatting or addressing of data
    • 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]

Abstract

本发明公开了一种SSD主控BE Buffer、SSD主控、数据传输管理装置及方法,将DMA间传输过程中的Buffer分配、数据同步、Buffer释放都通过Data Flag结合硬件实现的DMA传输控制规则来自动完成,无需CPU大量干预整个传输过程,节省了大量的CPU时间资源;大量减少Flash DMA的等待时间,从而减少读延迟。特别的,针对大IO的情况,在Data Flag结合硬件实现的DMA传输控制规则下,BE DMA/Flash DMA可根据Data Flag的置位情况自动通过挂起和唤醒的方式进行多次传输,无需CPU介入,大IO场景下,传输效率不但不会恶化,反而会有提升。

Description

SSD主控BE Buffer、SSD主控、数据传输管理装置及方法
技术领域
本发明SSD主控数据传输领域,特别是一种SSD主控BE Buffer、SSD主控、数据传输管理装置及方法。
背景技术
在主流SSD主控中,常有Sata DMA、Flash DMA、BE DMA等DMA,如图1所示,图中实线箭头表示写操作下的数据流向,虚线箭头表示读操作下的数据流向。
在SSD写流程中,Sata DMA负责将来自HOST的数据传输到芯片外的DRAM中,CoreDMA负责将DRAM中的数据传输到芯片内的BE Buffer,FlashDMA负责将BE Buffer中的数据传输到Flash中;在SSD读流程中,FLASH DMA负责将FLASH的数据传输到BE Buffer,SATADMA负责将BE Buffer的数据传输到HOST。据图1可知,若DMA间数据传输效率越高,管理DMA间数据缓存(DRAM/BE Buffer)消耗CPU时间资源越少,则HOST与FLASH间数据传输时延越短,即SSD数据读写带宽更高。
现有SSD内DMA间数据传输管理方式如图2所示,图中以SSD写操作下BE DMA与FLASH间的一次数据传输过程描述现有技术中DMA间的数据传输管理方式,该方式也可被应用到其他DMA间的数据传输管理中。
图2中各步骤序号的操作含义如下:
结合图2可知,在现有设计方案中每次BE DMA与FLASH DMA的数据传输请求由10个步骤完成,其中8个步骤需要cpu参与,消耗CPU时间资源明显,必然会导致一次传输时延较长。
另外每次传输都需要将BE DMA该次请求传输的数据传输到BE Buffer后方启动Flash DMA的传输,即Flash DMA和CPU有相当长的一段时间在等待BEDMA传输数据完成,这些无效的等待意味着传输效率低下。
结合图2,现有DMA间传输管理方法中存在以下缺点:
(1)占用CPU时间资源较多,图2中一次BE DMA和Flash DMA间的数据传输需要分解为10个步骤完成,其中有8个步骤需要CPU参与,显然CPU时间资源消耗严重,必然导致一次DMA间数据传输延迟的增加,同时导致CPU处理其他任务的能力变弱,拖累整个SSD系统的性能表现。
(2)DMA间无效等待时间过长,传输效率低下。由图2可知,在一次传输请求中,只有在BE DMA完成数据传输后,才可启动FLASH DMA的数据传输(在同一请求内,步骤5和步骤8无法同时进行),即FLASH DMA有相当长一段时间在等待BE DMA数据传输完成,这些无效的等待也是传输延迟较长的一个重要原因。
(3)大IO传输效率恶化,这里的大IO是指一次数据传输大小超过BE Buffer大小的情况,此时需要将大IO拆解成多个可缓存于BE Buffer中的小IO进行传输,即对大IO而言,操作步骤数与拆解的小IO个数呈比例增加,进一步恶化数据传输延迟。
本发明中用到的名词解释或缩写解释如下:
SSD:Solid State Drive,固态硬盘,一种利用Flash介质存储用户数据的存
储设备;
DMA:Direct Memory Access;直接存储访问控制器;
BE DMA:back end DMA,后端DMA,用于SSD内部数据传输;
Flash DMA:闪存DMA,用于传输数据到FLASH或读FLASH数据。
发明内容
本发明所要解决的技术问题是,针对现有技术不足,提供一种SSD主控BE Buffer、SSD主控、数据传输管理装置及方法,解决现有DMA间数据传输管理方法中占用CPU时间资源较多、DMA间无效等待时间过长、大IO传输效率恶化的问题,减少对CPU时间资源的占用,提升DMA间数据传输效率,减少无效延迟,最终提升SSD数据吞吐能力。
为解决上述技术问题,本发明所采用的技术方案是:一种SSD主控BE Buffer,包括多个存储单元;还包括Data Flag空间,且每个所述存储单元在Data Flag空间中都有专属的Mbit信息与该存储单元对应;若某存储单元对应的Data Flag空间专属的Mbit信息状态为0,表示该存储单元未写满;若某存储单元对应的Data Flag空间专属的Mbit信息状态置1,表示该存储单元写满Data FlagData FlagData FlagData FlagData Flag。
本发明的SSD主控,采用上述BE Buffer。
相应的,本发明还提供了一种SSD主控内DMA间数据传输管理装置,包括CPU;所述CPU用于接收来自SSD主控BE DMA的Trans Req请求,获得BE DMA写入BE Buffer的起始位置,并将该起始位置通过Trans req请求配置给Flash DMA,并启动SSD主控Flash DMA传输数据。
为了解决上述问题,本发明还提供了一种利用上述传输管理装置进行SSD主控内DMA间数据传输管理的方法,包括以下步骤:
1)当BE DMA需要传输数据到BE Buffer时,自动将从上一次传输的结束位置作为当前数据传输的起始位置,以Trans Req请求通知CPU,并向CPU上报BE Buffer的传输起始位置;
2)CPU接收到来自BE DMA的Trans Req请求后,获得BE DMA写入BE Buffer的起始位置,CPU将该起始位置通过Trans req请求配置给Flash DMA,并启动Flash DMA传输数据;
3)启动BE DMA传输数据,BE DMA执行数据传输动作,并在BEDMA传输完1个存储单元时,Flash DMA执行数据传输动作。
步骤3)中,BE DMA按照下述规则执行数据传输动作:
1)若BE DMA需要写某存储单元时发现该存储单元对应的Data Flag空间为0,则立即将数据写入该存储单元,写满该存储单元后,立即将与该存储单元对应的Data Flag空间置1;
2)若BE DMA需要写某存储单元时发现该存储单元对应的Data Flag空间为1,则暂停BE DMA的数据传输,直至该存储单元的Data Flag空间被其他模块清0后,BE DMA再按规则1)继续数据传输;
3)当读写到BE buffer右边界时,下一次读写位置自动跳转到BEBuffer的左边界起始位置进行读写。
步骤3)中,Flash DMA按照下述规则执行数据传输动作:
规则A):若Flash DMA需要从某存储单元取数据时发现该存储单元对应的DataFlag空间值为1,则取走该存储单元内的数据,当该存储单元内的所有数据被取完后,将该存储单元对应的Data Flag空间清0;
规则B):若Flash DMA需要从存储单元取数据时发现该存储单元对应的Data Flag空间值为0,则暂停Flash DMA的数据传输,直至该存储单元的Data Flag空间被其他硬件模块置1后,Flash DMA再按规则B)继续进行数据传输。
与现有技术相比,本发明所具有的有益效果为:本发明将DMA间传输过程中的缓存空间分配、数据同步、缓存空间释放都通过Data Flag结合硬件实现的DMA传输控制规则来自动完成,将CPU从上述这些繁重的处理中解脱出来,极大的节省宝贵的CPU时间资源,有效提升CPU处理SSD其他业务的能力;结合Data Flag机制,Write DMA每写完1个存储单元数据,Read DMA便可立即取走该存储单元内的数据,Read DMA并不需要等待Write DMA传输完一次请求下所有数据后才启动数据传输,极大减少Read DMA无效等待时间,由此使得DMA传输效率得到明显提升;结合Data Flag,DMA间可自动完成数据的分片传输,这意味着无论是大IO还是小IO,CPU介入到传输过程中的操作步骤是一样的,所以在本发明下,大IO相对小IO不但传输效率不会恶化,反而优于小IO。
附图说明
图1为现有SSD主控DMA示意图;
图2为现有SSD内DMA间数据传输管理方式示意图;
图3为本发明SSD内DMA间数据传输管理方法示意图。
具体实施方式
如图3,本发明实现过程如下:
1、约定指定大小的存储单元和Data Flag空间,对DMA间Buffer由多个存储单元组成,每个存储单元在Data Flag中都有专属的1bit或多bit信息与其对应。若某存储单元的Data Flag为状态0,表示该存储单元未写满;若某存储单元的Data Flag为状态1,表示该存储单元数据已满。如在图3中的约定存储单元为512B大小,每个存储单元在Data Flag中都有专属的1bit信息与其对应,状态0表示存储单元的Data Flag值为0,状态1表示存储单元的Data Flag值为0,DMA间Buffer为BE Buffer。
2、在1的基础之上,Write DMA需要写buffer内某存储单元时,若其Data Flag为状态0,则Write DMA可写该存储单元,若其Data Flag为状态1,则WriteDMA不可写该存储单元,并将Write DMA的写操作挂起,直至Data Flag变换为状态0,方可激活Write DMA继续写。如在图3中,Write DMA指BE DMA,即需要向buffer内写数据的DMA。
3、在1的基础之上,Read DMA需要读buffer内某存储单元时,若其Data Flag为状态1,则Read DMA可读该存储单元,若其Data Flag为状态0,则ReadDMA不可读该存储单元,并将Read DMA的读操作挂起,直至Data Flag变换为状态1,方可激活Read DMA继续读。如在图3中,Read DMA指FlashDMA,即需要从buffer内取数据的DMA。
4、在2的基础上,当Write DMA写超出Buffer的终点时,则Write DMA写指针跳转到Buffer的起始位置继续开始写入数据。
5、在3的基础之上,当Read DMA读超出Buffer的终点时,则Read DMA读指针跳转到Buffer的起始位置继续开始读取数据。Read DMA指Flash DMA。
6、在4的基础之上,Write DMA可自动完成数据存放目标空间的分配,且无需关心目标空间是否超出buffer大小,目标空间是否被其他传输占用,因为这些都将通过DataFlag自动控制。
对比图3与图2方案可知,图3的最大区别在于多了一个硬件模块Data Flag(用memory实现)。
Data Flag定义:根据SSD前端协议可知,SSD传输数据肯定是sector对齐,每个sector大小为512B。因此在本方案中规定BE Buffer中每个sector空间在Data Flag中都有专属的1bit信息与其对应。某sector空间的Data Flag为0表示该sector空间未写满,若其Data Flag置1表示该sector空间写满。
结合Data Flag,硬件需实现以下DMA传输控制规则:
(1)若BE DMA需要写某sector空间时发现其对应的Data Flag为0,则立即将数据写入该空间,写满512B后,立即将与该空间对应的Data Flag置1。
(2)若BE DMA需要写某sector空间时发现其对应的Data Flag为1,则暂停BE DMA的数据传输,直至该空间的Data Flag被其他模块清0后,BE DMA再按规则(1)继续数据传输。
(3)若Flash DMA需要从某sector空间取数据时发现其对应的Data Flag值为
1,则取走该空间内的数据,取走512B后,将该空间对应的Data Flag清0.
(4)若Flash DMA需要从某sector空间取数据时发现其对应的Data Flag值为0,则暂停Flash DMA的数据传输,直至该空间的Data Flag被其他硬件模块置1后,Flash DMA在按规则(3)继续数据传输。
(5)BE DMA/Flash DMA具备BE Buffer回环读写功能,即读写到BE buffer右边界时,下一次读写位置自动跳转到BE Buffer的左边界起始位置进行读写。
图3中各步骤序号的操作含义如下:
由于在SSD系统中还涉及表项管理,后续写对齐等动作,所以CPU需要知道写请求在BE Buffer中的数据起始位置,因此不可省略步骤1、2。
结合图3可发现,本发明中将DMA间传输过程中的Buffer分配、数据同步(在图2中通过Trans Done信号来确保数据同步)、Buffer释放都通过Data Flag结合硬件实现的DMA传输控制规则来自动完成,无需CPU大量干预整个传输过程,与CPU相关的操作从图2的8个步骤精简为3个步骤,节省了大量的CPU时间资源;另外,图3中的步骤5不需要要等到步骤4全部结束时,才开始数据传输,而是每当步骤4传输完1个sector数据,步骤5便可马上开始数据传输,大量减少Flash DMA的等待时间,从而减少读延迟。特别的,针对大IO的情况,在Data Flag结合硬件实现的DMA传输控制规则下,BE DMA/Flash DMA可根据Data Flag的置位情况自动通过挂起和唤醒的方式进行多次传输,无需CPU介入,所以针对大IO场景的应用,依然只需要图3中的6步操作便可完成,因此在本方案中,大IO场景下,传输效率不但不会恶化,反而会有提升。

Claims (8)

1.一种SSD主控BE Buffer,包括多个存储单元;其特征在于,还包括Data Flag空间,且每个所述存储单元在Data Flag空间中都有专属的Mbit信息与该存储单元Data Flag对应;若某存储单元对应的Data Flag空间专属的Mbit信息状态为0,表示该存储单元未写满;若某存储单元对应的Data Flag空间专属的Mbit信息状态置1,表示该存储单元写满。
2.根据权利要求1所述的SSD主控BE Buffer,其特征在于,M≥1。
3.根据权利要求1所述的SSD主控BE Buffer,其特征在于,所述储存单元大小为512B。
4.一种SSD主控,其特征在于,采用权利要求1~3之一所述的BE Buffer。
5.一种SSD主控内DMA间数据传输管理装置,包括CPU;其特征在于,所述CPU用于接收来自SSD主控BE DMA的Trans Req请求,获得BE DMA写入BE Buffer的起始位置,并将该起始位置通过 Trans req请求配置给Flash DMA,并启动SSD主控Flash DMA传输数据。
6.一种利用权利要求5所述传输管理装置进行SSD主控内DMA间数据传输管理的方法,其特征在于,包括以下步骤:
1)当BE DMA需要传输数据到BE Buffer时,自动将从上一次传输的结束位置作为当前数据传输的起始位置,以Trans Req请求通知CPU,并向CPU上报BE Buffer的传输起始位置;
2)CPU接收到来自BE DMA的Trans Req请求后,获得BE DMA写入BE Buffer的起始位置,CPU将该起始位置通过 Trans req请求配置给Flash DMA,并启动Flash DMA传输数据;
3)启动BE DMA传输数据,BE DMA执行数据传输动作,并在BE DMA传输完1个存储单元时,Flash DMA执行数据传输动作。
7.根据权利要求6所述的方法,其特征在于,步骤3)中,BE DMA按照下述规则执行数据传输动作:
1)若BE DMA需要写某存储单元时发现该存储单元对应的Data Flag空间为0,则立即将数据写入该存储单元,写满该存储单元后,立即将与该存储单元对应的Data Flag空间置1;
2)若BE DMA需要写某存储单元时发现该存储单元对应的Data Flag空间为1,则暂停BEDMA的数据传输,直至该存储单元的Data Flag空间被其他模块清0后,BE DMA再按规则1)继续数据传输;
3)当读写到BE buffer右边界时, 下一次读写位置自动跳转到BE Buffer的左边界起始位置进行读写。
8.根据权利要求7所述的方法,其特征在于,步骤3)中,Flash DMA按照下述规则执行数据传输动作:
规则A):若Flash DMA需要从某存储单元取数据时发现该存储单元对应的Data Flag空间值为1,则取走该存储单元内的数据,当该存储单元内的所有数据被取完后,将该存储单元对应的Data Flag空间清0;
规则B):若Flash DMA需要从存储单元取数据时发现该存储单元对应的Data Flag空间值为0,则暂停Flash DMA的数据传输,直至该存储单元的Data Flag空间被其他硬件模块置1后,Flash DMA再按规则B)继续进行数据传输。
CN201611177768.1A 2016-12-19 2016-12-19 Ssd主控数据传输管理装置及方法 Active CN106775477B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611177768.1A CN106775477B (zh) 2016-12-19 2016-12-19 Ssd主控数据传输管理装置及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611177768.1A CN106775477B (zh) 2016-12-19 2016-12-19 Ssd主控数据传输管理装置及方法

Publications (2)

Publication Number Publication Date
CN106775477A true CN106775477A (zh) 2017-05-31
CN106775477B CN106775477B (zh) 2021-01-01

Family

ID=58890023

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611177768.1A Active CN106775477B (zh) 2016-12-19 2016-12-19 Ssd主控数据传输管理装置及方法

Country Status (1)

Country Link
CN (1) CN106775477B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108132758A (zh) * 2018-01-10 2018-06-08 湖南国科微电子股份有限公司 一种Buffer管理方法、系统及其应用
CN109189337A (zh) * 2018-08-21 2019-01-11 浪潮电子信息产业股份有限公司 一种选择数据块的方法、装置、设备及可读存储介质
CN109614048A (zh) * 2018-12-10 2019-04-12 深圳市硅格半导体有限公司 基于闪存的数据读写方法、装置及计算机可读存储介质
CN111831595A (zh) * 2020-06-30 2020-10-27 山东云海国创云计算装备产业创新中心有限公司 一种dma传输方法及相关装置
TWI709857B (zh) * 2017-12-08 2020-11-11 日商東芝記憶體股份有限公司 記憶體系統及控制方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1477532A (zh) * 2002-08-20 2004-02-25 华为技术有限公司 控制芯片片内存储装置及其存储方法
CN101034384A (zh) * 2007-04-26 2007-09-12 北京中星微电子有限公司 一种能同时进行读写操作的dma控制器及传输方法
US20070260769A1 (en) * 2006-03-28 2007-11-08 Arndt Richard L Computer-implemented method, apparatus, and computer program product for managing DMA write page faults using a pool of substitute pages
US20100125695A1 (en) * 2008-11-15 2010-05-20 Nanostar Corporation Non-volatile memory storage system
CN102693198A (zh) * 2012-05-12 2012-09-26 北京忆恒创源科技有限公司 Dma传输方法及系统
CN103176932A (zh) * 2011-12-23 2013-06-26 重庆重邮信科通信技术有限公司 一种dma数据传输方法及系统
CN103198021A (zh) * 2013-04-18 2013-07-10 北京理工大学 一种提高固态硬盘数据传输效率的方法
US20150026368A1 (en) * 2013-07-17 2015-01-22 Mellanox Technologies Ltd. Direct memory access to storage devices
US20150255130A1 (en) * 2014-03-10 2015-09-10 Futurewei Technologies, Inc. Ddr4-ssd dual-port dimm device
CN105389135A (zh) * 2015-12-11 2016-03-09 华中科技大学 一种固态盘内部缓存管理方法
CN105988953A (zh) * 2015-02-12 2016-10-05 深圳市中兴微电子技术有限公司 一种直接内存存取dma控制器及数据传输的方法

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1477532A (zh) * 2002-08-20 2004-02-25 华为技术有限公司 控制芯片片内存储装置及其存储方法
US20070260769A1 (en) * 2006-03-28 2007-11-08 Arndt Richard L Computer-implemented method, apparatus, and computer program product for managing DMA write page faults using a pool of substitute pages
CN101034384A (zh) * 2007-04-26 2007-09-12 北京中星微电子有限公司 一种能同时进行读写操作的dma控制器及传输方法
US20100125695A1 (en) * 2008-11-15 2010-05-20 Nanostar Corporation Non-volatile memory storage system
CN103176932A (zh) * 2011-12-23 2013-06-26 重庆重邮信科通信技术有限公司 一种dma数据传输方法及系统
CN102693198A (zh) * 2012-05-12 2012-09-26 北京忆恒创源科技有限公司 Dma传输方法及系统
CN103198021A (zh) * 2013-04-18 2013-07-10 北京理工大学 一种提高固态硬盘数据传输效率的方法
US20150026368A1 (en) * 2013-07-17 2015-01-22 Mellanox Technologies Ltd. Direct memory access to storage devices
US20150255130A1 (en) * 2014-03-10 2015-09-10 Futurewei Technologies, Inc. Ddr4-ssd dual-port dimm device
CN105988953A (zh) * 2015-02-12 2016-10-05 深圳市中兴微电子技术有限公司 一种直接内存存取dma控制器及数据传输的方法
CN105389135A (zh) * 2015-12-11 2016-03-09 华中科技大学 一种固态盘内部缓存管理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
田玉恒等: "《一种高效的DMA核间同步传输方法》", 《计算机工程与科学》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI709857B (zh) * 2017-12-08 2020-11-11 日商東芝記憶體股份有限公司 記憶體系統及控制方法
CN108132758A (zh) * 2018-01-10 2018-06-08 湖南国科微电子股份有限公司 一种Buffer管理方法、系统及其应用
CN109189337A (zh) * 2018-08-21 2019-01-11 浪潮电子信息产业股份有限公司 一种选择数据块的方法、装置、设备及可读存储介质
CN109189337B (zh) * 2018-08-21 2021-12-17 浪潮电子信息产业股份有限公司 一种选择数据块的方法、装置、设备及可读存储介质
CN109614048A (zh) * 2018-12-10 2019-04-12 深圳市硅格半导体有限公司 基于闪存的数据读写方法、装置及计算机可读存储介质
CN111831595A (zh) * 2020-06-30 2020-10-27 山东云海国创云计算装备产业创新中心有限公司 一种dma传输方法及相关装置

Also Published As

Publication number Publication date
CN106775477B (zh) 2021-01-01

Similar Documents

Publication Publication Date Title
CN106775477A (zh) SSD主控BE Buffer、SSD主控、数据传输管理装置及方法
US20200218662A1 (en) Data caching device and control method therefor, data processing chip, and data processing system
US8572342B2 (en) Data transfer device with confirmation of write completion and method of controlling the same
CN103064807B (zh) 多通道直接存储器存取控制器
US6785751B1 (en) Method and apparatus for minimizing bus contention for I/O controller write operations
TW201234188A (en) Memory access device for memory sharing among multiple processors and access method for the same
JP2009540681A (ja) データ通信フロー制御の装置および方法
US8583842B2 (en) Data transfer device and data transfer system
WO2019229531A1 (en) Method of out of order processing of scatter gather lists
US11010094B2 (en) Task management method and host for electronic storage device
CN105095109A (zh) 缓存访问方法、缓存访问路由器和计算机系统
CN111651396B (zh) 一种优化的pcie完成包乱序管理电路实现方法
US20080225858A1 (en) Data transferring apparatus and information processing system
CN110716691A (zh) 调度方法、装置、闪存设备和系统
EP2998867A1 (en) Data writing method and memory system
CN116257191B (zh) 存储器的控制器、组件、电子设备及命令调度方法
WO2015165055A1 (zh) 存储数据的方法、内存控制器和中央处理器
US7743179B2 (en) Data transmission methods
KR102334473B1 (ko) 적응형 딥러닝 가속 장치 및 방법
CN106776404A (zh) SSD主控Buffer、SSD主控及SSD非对齐写数据传输控制方法
US8473682B2 (en) Cache unit and processing system
WO2009033971A1 (en) System and method for splitting data and data control information
JP2002123420A (ja) メモリアクセス装置
CN112732166A (zh) 访问固态硬盘的方法及装置
JP2010287058A (ja) メモリシステム

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