CN105988954B - 区域描述元管理方法及其电子装置 - Google Patents

区域描述元管理方法及其电子装置 Download PDF

Info

Publication number
CN105988954B
CN105988954B CN201510096782.8A CN201510096782A CN105988954B CN 105988954 B CN105988954 B CN 105988954B CN 201510096782 A CN201510096782 A CN 201510096782A CN 105988954 B CN105988954 B CN 105988954B
Authority
CN
China
Prior art keywords
description element
area description
project
block
current
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
CN201510096782.8A
Other languages
English (en)
Other versions
CN105988954A (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.)
Jianxing Storage Technology Co., Ltd
Original Assignee
Lite On Technology Corp
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 Lite On Technology Corp filed Critical Lite On Technology Corp
Priority to CN201510096782.8A priority Critical patent/CN105988954B/zh
Publication of CN105988954A publication Critical patent/CN105988954A/zh
Application granted granted Critical
Publication of CN105988954B publication Critical patent/CN105988954B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明提出一种区域描述元管理方法以及其电子装置。区域描述元管理方法适用于电子装置的装置控制器。管理方法包括下列步骤。由区域描述元列表提取多个区域描述元项目,并且每一区域描述元项目包括区块起始地址以及区块长度以对应描述存储器模块的一个存储器区块。依据多个区域描述元项目的区块起始地址以及区块长度,调整部分的区域描述元项目为至少一个目前区域描述元项目。基于前述的目前区域描述元项目,产生目前区域描述元列表。

Description

区域描述元管理方法及其电子装置
技术领域
本发明是有关于一种管理方法及其电子装置,且特别是关于一种区域描述元(Region Descriptor)的管理方法及其电子装置。
背景技术
于已知技术中,当任一储存装置或任一外围装置需要与主机系统的系统存储器作资料传输时,可以例如是利用直接存储器访问(Direct Memory Access)的形式,在不增加主机系统的负载下进行资料的传送。
一般而言,系统存储器上的存储器区块可以通过区域描述元(RegionDescriptor)所定义。换言之,即是通过区域描述元定义每一资料片段(Data Segment)在系统存储器上的位置。详细来说,每一区域描述元项目(Region Descriptor Entry)分别记录了存储器区块的起始地址以及长度。因此,储存装置可以通过提取(fetch)区域描述元项目来进一步存取特定的存储器区块,以达到资料传输的目的。
已知技术之中,区域描述元项目是由主机系统对应系统存储器内的资料片段进行分配,但主机系统基于效能上的考虑或者是为了对应不同储存装置的规格,经常使得区域描述元项目的配置是过于复杂或脆弱,导致储存装置与系统存储器间的资料传输在传输速度以及效率的表现上是较差的。
发明内容
本发明提供一种区域描述元管理方法及其电子装置,通过调整、合并、分割部分的区域描述元项目,使得储存装置以及系统存储器间的资料传输速度能相对的提升。
本发明的一实施例提出一种区域描述元管理方法,适用于电子装置的装置控制器。前述管理方法包括下列步骤。由区域描述元列表提取多个区域描述元项目,其中每一区域描述元项目包括区块起始地址以及区块长度以对应描述存储器模块的存储器区块。依据多个区域描述元项目的区块起始地址以及区块长度,调整部分的区域描述元项目为至少一个目前区域描述元项目。基于目前区域描述元项目,产生目前区域描述元列表。
本发明的一实施例提出一种电子装置,包括主机系统、储存装置以及装置控制器。主机系统具有存储器模块,而装置控制器耦接于主机系统以及储存装置之间。装置控制器由主机系统的区域描述元列表提取多个区域描述元项目,其中每一区域描述元项目包括区块起始地址以及区块长度以对应描述存储器模块的存储器区块。装置控制器依据前述区域描述元项目的区块起始地址以及区块长度,调整部分的区域描述元项目为至少一目前区域描述元项目。装置控制器更基于目前区域描述元项目,产生目前区域描述元列表。
基于上述,本发明实施例所提供的区域描述元管理方法及其电子装置,在进行资料传输时,首先对主机系统所提供的多个区域描述元项目进行调整,以产生至少一个目前区域描述元项目。所产生的目前区域描述元项目以较佳的形式描述存储器模块中的存储器区块,以提升储存装置与存储器模块之间的资料传输速度与效率。
为让本发明的上述特征和优点能更明显易懂,下文特举实施例,并配合所附附图作详细说明如下。
附图说明
下面的所附附图是本发明的说明书的一部分,绘示了本发明的示例实施例,所附附图与说明书的描述一起说明本发明的原理,其中:
图1是依照本发明一实施例所绘示的电子装置的方块图。
图2是依照本发明一实施例所绘示的区域描述元管理方法的流程图。
图3是依照本发明一实施例所绘示的调整区域描述元项目为目前区域描述元项目的示意图。
图4A是依照本发明一实施例所绘示的目前区域描述元列表的示意图。
图4B是依照本发明一实施例所绘示的目前区域描述元项目的示意图。
具体实施方式
现将详细参考本发明的示范性实施例,在附图中说明所述示范性实施例的实例。另外,凡可能之处,在附图及实施方式中使用相同标号的元件/构件代表相同或类似部分。
本发明提供一种区域描述元管理方法及其电子装置,其中区域描述元管理方法适用于耦接在储存装置以及主机系统之间的控制器或系统芯片(System On Chip,SOC)。图1是依照本发明一实施例所绘示的电子装置的方块图。电子装置例如是桌面计算机、笔记本电脑、平板计算机或智能型手机等,但并不以前述为限。参照图1,电子装置100包括主机系统120、储存装置140以及装置控制器160。装置控制器160耦接于主机系统120以及储存装置140之间。主机系统120例如是包括处理器单元(未绘示)以及存储器模块122。处理器单元例如是中央处理单元(Central Processing Unit,CPU)或者是可程序化的一般用途或特殊用途的微处理器(Microprocessor),用于执行各项程序或软件以提供不同的功能。存储器模块122为主机系统120的主存储器(Main Memory),其例如是以静态随机存取存储器(StaticRandom Access Memory,SRAM)、动态随机存取存储器(Dynamic Random Access Memory,DRAM)或同步动态随机存取存储器(Synchronous Dynamic Random Access Memory,SDRAM)来实现。
储存装置140则例如是硬盘(Hard Disk Drive,HDD)、光驱(Optical Disk Drive,ODD)或固态硬盘(Solid State Drive,SSD),其具有并列先进技术配置(ParallelAdvanced Technology Attachment,PATA)接口、串行先进技术配置(Serial AdvancedTechnology Attachment,SATA)接口、快捷外设互联标准(Peripheral ComponentInterconnect Express,PCIE)、串行连接SCSI接口(Serial Attached SCSI,SAS)。装置控制器160例如是嵌入式控制器(embedded controller)或控制芯片(control chip)。在本发明的一实施例中,装置控制器160包括符合进阶主机控制总线接口(Advanced HostController Interface,AHCI)规范的主机总线配接器(Host Bus Adaptor,HBA),以实现主机系统120与储存装置140间的资料传输,但本发明并不限于此。更详细而言,本发明所提出的区域描述元管理方法,同样适用于不同规范下的装置控制器160。然而,为了更清楚地表达本发明的区域描述元管理方法,以下将搭配符合AHCI规范的装置控制器160以及电子装置100来说明前述区域描述元管理方法。
图2是依照本发明一实施例所绘示的区域描述元管理方法的流程图。请参照图1以及图2,区域描述元管理方法包括下列步骤。装置控制器160由区域描述元列表提取多个区域描述元项目(步骤S220),其中每一区域描述元项目包括区块起始地址以及区块长度以对应描述存储器模块122的一个存储器区块。接着,装置控制器160依据前述多个区域描述元项目的区块起始地址以及区块长度,调整部分的区域描述元项目为至少一个目前区域描述元项目(步骤S240)。最后,装置控制器160基于目前区域描述元项目,产生目前区域描述元列表(步骤S260)。
于本发明的一实施例中,主机系统120在AHCI规范下,是通过一个在存储器模块122之中的指令列表(Command List)来对装置控制器160下达指令。主机系统120将指令放置于指令列表中的空隙(Slot)之中,并且通知装置控制器160。装置控制器160收到通知后,由存储器模块122提取指令,并且依据指令执行相关程序,例如是资料传输。值得注意的是,在指令中,通常是以区域描述元(即AHCI规范下的实体区域描述元(Physical RegionDescriptor,PRD))描述参与资料传输的存储器模块122的存储器区块。区域描述元例如是包括存储器区块122的区块起始地址以及区块长度(即AHCI规范下的资料基地址(DataBase Address,DBA)以及资料字节计数(Data Byte Count,DBC)),其对应地指示了资料在存储器模块122上的储存位置或传输位置。更详细而言,指令包括一个区域描述元列表(即AHCI规范下的实体区域描述元列表(Physical Region Descriptor Table,PRDT)),而区域描述元列表还包括多个区域描述元项目(即AHCI规范下的实体区域描述元项目(PhysicalRegion Descriptor Entry))。每一个区域描述元项目对应记载了一个存储器区块的位置信息。
装置控制器160例如是采用分散收集机制(Scatter/Gather Mechanism)来执行资料传输。具体而言,装置控制器160是预先取得相关于资料传输的多个区域描述元后,在对应前述的区域描述元所描述的存储器模块120的多个存储器区块来执行资料传输。一般而言,装置控制器160于每个区域描述元所指示的区块长度为最适区块长度(例如是4096字节(bytes)或者是8192字节)时,在资料传输的表现是较佳的。然而,由主机系统120所配置的区域描述元项目通常是较为杂散,并且每个区域描述元项目并不是依照储存装置140的最适区块长度进行配置,使得装置控制器160在资料传输的表现上无法达到最佳的效果,而通常需要花费更多的时间并且降低整体的效率。
在本发明的一实施例中,装置控制器160由区域描述元列表提取多个区域描述元项目后,接着是依据区域描述元项目的区块起始地址以及区块长度,选择性地调整部分的区域叙述元项目。图3是依照本发明一实施例所绘示的调整区域描述元项目为目前区域描述元项目的示意图。如图3所示,由区域描述元列表PRDT中的区域描述元项目PRD0、PRD1的资料基地址(区块起始地址)DBA(0x1FD040000h、0x1FD040c00h,十六进制)以及资料字节计数(区块长度)DBC(3072字节、1024字节)可知,区域描述元项目PRD0、PRD1所描述的存储器区块是连续地排列于存储器模块122。基于前述,为了使得装置控制器160能较佳地进行资料传输,装置控制器160首先调整区域描述元项目PRD0、PRD1为目前区域描述元项目PRD0’。由图3可知,目前区域描述元项目PRD0’所描述的存储器区块为区域描述元项目PRD0、PRD1所分别描述的两个存储器区块的合并。此外,目前区域描述元项目PRD0’指示的目前区块长度DBC’为4096字节,符合资料传输中的最适区块长度,而目前区块起始地址DBA’则是区域描述元项目PRD0的区块起始地址DBA。
基于前述的目前区域描述元项目PRD0’,装置控制器160产生目前区域描述元列表PRDT’。值得注意的是,其它不需要进行调整的区域描述元项目PRD2~PRDm,对应地保留并调整为目前区域描述元项目PRD1’PRDn’,并且同样放置于目前区域描述元列表PRDT’之中。在本实施例中,前述n、m为大于2的正整数,并且n等于m-1。
图3所示的实施例仅为调整区域描述元项目为目前区域描述元项目的多个实施例之一,但本申请并不以此为限。以下将更详细地说明调整区域描述元项目为目前区域描述元项目所需要注意的细节。
图4A是依照本发明一实施例所绘示的目前区域描述元列表的示意图。图4B是依照本发明一实施例所绘示的目前区域描述元项目的示意图。参照图1-图4A、图4B,如同前述,可以被调整为目前区域描述元项目的多个区域描述元项目,其所描述的存储器区块例如是连续地排列于存储器模块122。以图4A、图4B的存储器模块122为例,存储器区块41-44分别对应储存第一资料-第四资料,并且存储器区块41-43是连续地排列于存储器模块122之中。此时,原先用于分别描述存储器区块41-43的区域描述元项目PRD41-PRD43,即可调整为目前区域描述元项目PRD41’-PRD43’,而用于描述存储器区块44的区域描述元项目PRD44则经保留并调整为PRD44’。
在进行调整的过程中,装置控制器160利用多个固定区块地址以及固定区块长度,比对区域描述元项目PRD41-PRD43的区块起始地址DBA以及区块长度DBC,以产生目前区块起始地址DBA’以及目前区块长度DBC’。在本实施例中,固定区块长度为前述最适区块长度(在本实施例中以4096字节为例),而固定区块地址则是在存储器模块122上,距离地址0为一或多个固定区块长度的地址,例如是0、4096、8192等地址(以字节为单位,十进制)。装置控制器160以固定区块长度以及固定区块地址来比对第一资料-第三资料所在的存储器区块41-43(区块起始地址DBA以及区块长度DBC),以取得多个目前区块起始地址512、4096、8192以及多个目前区块长度3584字节、4096字节、1024字节。最后,依据目前区块起始地址DBA’以及目前区块长度DBC’,取得目前区域描述元项目PRD41’-PRD43’。
由前述可知,调整区域描述元项目PRD41-PRD43为目前区域描述元项目PRD41’-PRD43’的过程中,主要是对区域描述元项目PRD41-PRD43所描述的存储器区块41-43(对应第一资料第三资料)进行合并与裁切,产生符合固定区块长度以及固定区块地址的目前区块起始地址DBA’以及目前区块长度DBC’。明显地,目前区域描述元项目PRD41’-PRD43’所指示目前区块长度DBC’皆不大于固定区块长度,即4096字节。
于本发明的一实施例中,装置控制器160更依据目前区域描述元列表(例如是图3所示的PRDT’或图4A所示的PRDT’40),对目前区域描述元项目所指示的存储器区块,执行资料传输程序。装置控制器160可以是由目前区域描述元项目所指示的存储器区块取得资料至储存装置140,或者是从储存装置140取得资料并储存至目前区域描述元项目所指示的存储器区块。最后,对于所产生的目前区域描述元项目,装置控制器160还可以写入存储器模块122以更新存储器模块122存储器的区域描述元列表PRDT。
综上所述,本发明实施例所提供的区域描述元管理方法及其电子装置,对主机系统所提供的多个区域描述元项目进行整并,以产生至少一个目前区域描述元项目。目前区域描述元项目以较佳的形式描述存储器模块中的存储器区块。基于前述的目前区域描述元项目,装置控制器以较佳的速度与效率进行资料传输,以从目前区域描述元项目所描述的存储器区块中取得资料至储存装置,或者是将储存装置的资料传输至目前区域描述元项目所描述的存储器区块。
虽然本发明已以实施例详述如上,然其并非用以限定本发明,任何所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作些许的更动与润饰,故本发明的保护范围当视后附的权利要求范围所界定的为准。

Claims (10)

1.一种区域描述元管理方法,适用于一电子装置的一装置控制器,该管理方法包括:
由一区域描述元列表提取多个区域描述元项目,其中每一所述区域描述元项目包括一区块起始地址以及一区块长度以对应描述一存储器模块的一存储器区块;
依据所述区域描述元项目的所述区块起始地址以及所述区块长度,调整一部分的所述区域描述元项目为至少一目前区域描述元项目,包括:
利用多个固定区块地址以及一固定区块长度,比对该部分的所述区域描述元项目的所述区块起始地址以及所述区块长度,以产生至少一目前区块起始地址以及至少一目前区块长度;以及依据该至少一目前区块起始地址以及该至少一目前区块长度,取得该至少一目前区域描述元项目;以及
基于该至少一目前区域描述元项目,产生一目前区域描述元列表。
2.如权利要求1所述的区域描述元管理方法,其中该部分的所述区域描述元项目所描述的所述存储器区块是连续地排列于该存储器模块。
3.如权利要求1所述的区域描述元管理方法,其中每一该目前区域描述元项目所包括的该目前区块长度不大于该固定区块长度。
4.如权利要求1所述的区域描述元管理方法,还包括:
将该至少一目前区域描述元项目写入该存储器模块。
5.如权利要求1所述的区域描述元管理方法,还包括:
对该至少一目前区域描述元项目所指示的该至少一存储器区块,执行一资料传输程序。
6.一种电子装置,包括:
一主机系统,该主机系统具有一存储器模块;
一储存装置:以及
一装置控制器,耦接于该主机系统以及该储存装置之间,该装置控制器由该主机系统的一区域描述元列表提取多个区域描述元项目,其中每一所述区域描述元项目包括一区块起始地址以及一区块长度以对应描述该存储器模块的一存储器区块,
该装置控制器依据所述区域描述元项目的所述区块起始地址以及所述区块长度,调整一部分的所述区域描述元项目为至少一目前区域描述元项目,该装置控制器更利用多个固定区块地址以及一固定区块长度,比对该部分的所述区域描述元项目的所述区块起始地址以及所述区块长度,以产生至少一目前区块起始地址以及至少一目前区块长度,
该装置控制器依据该至少一目前区块起始地址以及该至少一目前区块长度,取得该至少一目前区域描述元项目,并且该装置控制器基于该至少一目前区域描述元项目,产生一目前区域描述元列表。
7.如权利要求6所述的电子装置,其中该部分的所述区域描述元项目所描述的所述存储器区块是连续地排列于该存储器模块。
8.如权利要求6所述的电子装置,其中每一该目前区域描述元项目所包括的该目前区块长度不大于该固定区块长度。
9.如权利要求6所述的电子装置,其中该装置控制器还将该至少一目前区域描述元项目写入该存储器模块。
10.如权利要求6所述的电子装置,其中该装置控制器由该至少一目前区域描述元项目所描述的该至少一存储器区块取得资料至该储存装置,或者是从该储存装置取得资料至该至少一目前区域描述元项目所描述的该至少一存储器区块。
CN201510096782.8A 2015-03-05 2015-03-05 区域描述元管理方法及其电子装置 Active CN105988954B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510096782.8A CN105988954B (zh) 2015-03-05 2015-03-05 区域描述元管理方法及其电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510096782.8A CN105988954B (zh) 2015-03-05 2015-03-05 区域描述元管理方法及其电子装置

Publications (2)

Publication Number Publication Date
CN105988954A CN105988954A (zh) 2016-10-05
CN105988954B true CN105988954B (zh) 2018-09-11

Family

ID=57038281

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510096782.8A Active CN105988954B (zh) 2015-03-05 2015-03-05 区域描述元管理方法及其电子装置

Country Status (1)

Country Link
CN (1) CN105988954B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI636363B (zh) * 2017-08-08 2018-09-21 慧榮科技股份有限公司 用來於一記憶裝置中進行動態資源管理之方法以及記憶裝置及其控制器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200900943A (en) * 2007-06-22 2009-01-01 Via Tech Inc PRD (Physical Region Descriptor) pre-fetch methods for DMA (Direct Memory Access) unit
TW200921385A (en) * 2007-11-15 2009-05-16 Genesys Logic Inc Storage system for improving efficiency in accessing flash memory and method for the same
CN104360967A (zh) * 2010-09-22 2015-02-18 株式会社东芝 存储器系统、主机控制器以及dma的控制方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200900943A (en) * 2007-06-22 2009-01-01 Via Tech Inc PRD (Physical Region Descriptor) pre-fetch methods for DMA (Direct Memory Access) unit
TW200921385A (en) * 2007-11-15 2009-05-16 Genesys Logic Inc Storage system for improving efficiency in accessing flash memory and method for the same
CN104360967A (zh) * 2010-09-22 2015-02-18 株式会社东芝 存储器系统、主机控制器以及dma的控制方法

Also Published As

Publication number Publication date
CN105988954A (zh) 2016-10-05

Similar Documents

Publication Publication Date Title
US10248468B2 (en) Using hypervisor for PCI device memory mapping
US11132300B2 (en) Memory hierarchy using page-based compression
US8332367B2 (en) Parallel data redundancy removal
US9152474B2 (en) Context aware synchronization using context and input parameter objects associated with a mutual exclusion lock
KR102321913B1 (ko) 불휘발성 메모리 장치, 및 그것을 포함하는 메모리 시스템
JP2018502376A (ja) 複数のコンピュートサブシステムを備えるチップ上のシステム
US11016805B2 (en) Programmatically applying labels to nodes in cluster orchestration platforms
US9477605B2 (en) Memory hierarchy using row-based compression
US9515951B2 (en) Computing system architecture that facilitates forming of customized virtual disks
US10592285B2 (en) System and method for information handling system input/output resource management
US10241926B2 (en) Migrating buffer for direct memory access in a computer system
CN109791510B (zh) 在异构计算中管理数据流
US9740618B2 (en) Memory nest efficiency with cache demand generation
US9792042B2 (en) Systems and methods for set membership matching
CN107632779B (zh) 数据处理方法和装置、服务器
CN105988954B (zh) 区域描述元管理方法及其电子装置
US20190096490A1 (en) Pseudo single pass nand memory programming
US10255209B2 (en) Tracking statistics corresponding to data access in a computer system
US9330037B2 (en) Dynamically resizing direct memory access (DMA) windows
US10628309B1 (en) Loading a serial presence detect table according to jumper settings
Hollowell et al. The effect of flashcache and bcache on I/O performance
CN106202262A (zh) 一种信息处理方法及电子设备
CN108292265B (zh) 对高性能存储器的存储器管理
US9830261B2 (en) Region descriptor management method and electronic apparatus thereof
US20140317328A1 (en) Serial attached scsi expander and interface expanding device with the same

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20191230

Address after: 21 / F, 392 Ruiguang Road, Neihu district, Taipei, Taiwan, China

Patentee after: Jianxing Storage Technology Co., Ltd

Address before: Ruiguang road Taiwan Taipei City Neihu district China No. 392 22 floor

Patentee before: Lite-On Technology Corporation

TR01 Transfer of patent right