CN109710411A - Tlp字段资源管理方法、装置、计算机设备及存储介质 - Google Patents
Tlp字段资源管理方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN109710411A CN109710411A CN201811622244.8A CN201811622244A CN109710411A CN 109710411 A CN109710411 A CN 109710411A CN 201811622244 A CN201811622244 A CN 201811622244A CN 109710411 A CN109710411 A CN 109710411A
- Authority
- CN
- China
- Prior art keywords
- label
- resource
- allocation list
- request
- physical tag
- 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
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及TLP字段资源管理方法、装置、计算机设备及存储介质,该方法包括获取来自PCIE端点的空闲物理标签资源;对空闲物理标签资源进行处理,以得到标签映射表;判断标签映射表内是否有空闲物理标签资源;若是,则将空闲物理标签资源放置于先进先出队列;获取物理标签资源申请请求;获取标签配置表;根据请求判断标签配置表内是否有空闲的物理标签资源分配;若是,则对请求做出响应;统计请求发起方的物理标签资源使用情况;根据物理标签资源使用状态动态调整标签配置表。本发明实现减少PCIE EP的物理标签资源和电路面积,对物理标签资源实时动态灵活地配置。
Description
技术领域
本发明涉及固态硬盘,更具体地说是指TLP字段资源管理方法、装置、计算机设备及存储介质。
背景技术
在SSD固态硬盘,Solid State Drives)主控芯片中涉及到NVME(非易失性内存主机控制器接口规范,Non-Volatile Memory express)、BM(缓存管理器Buffer Manager)、HMB(主机内存缓存技术,Host Memory Buffer)等模块,每个模块都能够通过PCIE EP(PCIExpress端点,PCI Express Endpoint)发起内存读操作,然后都会等待PCIE RC(PCIExpress回应,PCI Express root complex)回复CPLD(带数据的完成报文,completionwith data)包,内存读操作的TLP(传输层报文,Transaction Layer Packet)包都需要使用PCIE PCI Express规范中TLP的一个字段标签资源。
现有的设计方案是NVME、BM和HMB都需要按照各自最大的带宽来分配固定的标签资源数量,实际上三者各自的最大带宽都是等于PCIE EP带宽,但是在同一时间三者带宽之和是不会超过PCIE EP带宽的。因此如果使用现有的分配方案是存在物理标签资源的极大浪费。而且在芯片不同场景的工作过程中三者的实际带宽也是不同的,固定的物理标签资源就做不到实时动态地调整标签分配方案。
综上所述,目前的方案存在以下的问题:固定的物理标签数量导致PCIE EP和NVME、BM、HMB电路复杂且面积偏大;固定的物理标签数量导致NVME、BM、HMB不能灵活使用物理标签资源而造成不公平和浪费;不能在芯片工作过程中实时动态地调整配置,影响芯片配置效率。
因此,有必要设计一种新的方法,以解决上述的问题。
发明内容
本发明的目的在于克服现有技术的缺陷,提供TLP字段资源管理方法、装置、计算机设备及存储介质。
为实现上述目的,本发明采用以下技术方案:TLP字段资源管理方法,包括:
获取来自PCIE端点的空闲物理标签资源;
对所述空闲物理标签资源进行处理,以得到标签映射表;
判断所述标签映射表内是否有空闲物理标签资源;
若是,则将空闲物理标签资源放置于先进先出队列;
获取物理标签资源申请请求;
获取标签配置表;
根据所述请求判断标签配置表内是否有空闲的物理标签资源分配;
若是,则对所述请求做出响应;
统计请求发起方的物理标签资源使用情况;
根据所述物理标签资源使用状态动态调整标签配置表。
其进一步技术方案为:所述根据所述物理标签资源使用状态动态调整标签配置表之后,还包括:
判断所述PCIE端点的某一空闲物理标签资源的PCIE读操作是否完成;
若是,则清除并维护PCIE读操作完成的空闲物理标签资源所在的标签映射表。
其进一步技术方案为:所述对所述空闲物理标签资源进行处理,以得到标签映射表,包括:
对所述空闲物理标签资源进行格式转换,形成逻辑标签资源;
将所述空闲物理标签资源与所述逻辑标签资源的对应关系写入预设的映射表内,以形成标签映射表。
其进一步技术方案为:所述标签配置表包括私有静态配置表以及公共动态配置表。
其进一步技术方案为:所述根据所述请求判断标签配置表内是否有空闲的物理标签资源分配,包括:
根据所述请求判断所述标签配置表内的私有静态配置表是否有空闲的物理标签资源分配;
若是,则标签配置表内有空闲的物理标签资源分配;
若否,则判断所述标签配置表内的公共动态配置表是否有空闲的物理标签资源分配;
若是,则标签配置表内有空闲的物理标签资源分配;
若否,则标签配置表内无空闲的物理标签资源分配。
其进一步技术方案为:所述根据所述物理标签资源使用情况动态调整标签配置表,包括:
修改所述标签配置表内的配置,以得到修改后的标签配置表;
将修改后的标签配置表写入备用寄存器表中;
获取所述空闲物理标签资源的处理状态以及请求的处理状态;
判断所述空闲物理标签资源的处理状态以及请求的处理状态是否都处于处理完毕状态;
若是,则将备用寄存器表中的值切换为修改后的标签配置表。
其进一步技术方案为:所述判断所述标签映射表内是否有空闲的物理标签资源之后,还包括:
若否,则继续等待,并返回所述判断所述标签映射表内是否有空闲的物理标签资源。
本发明还提供了TLP字段资源管理装置,包括:
空闲资源获取单元,用于获取来自PCIE端点的空闲物理标签资源;
空闲资源处理单元,用于对所述空闲物理标签资源进行处理,以得到标签映射表;
资源判断单元,用于判断所述标签映射表内是否有空闲物理标签资源;
资源放置单元,用于若是,则将空闲物理标签资源放置于先进先出队列;
请求获取单元,用于获取物理标签资源申请请求;
配置表获取单元,用于获取标签配置表;
资源分配判断单元,用于根据所述请求判断标签配置表内是否有空闲的标签资源分配;
响应单元,用于若是,则对所述请求做出响应;
情况统计单元,用于统计请求发起方的物理标签资源使用情况;
动态调整单元,用于根据所述物理标签资源使用状态动态调整标签配置表。
本发明还提供了一种计算机设备,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现上述的方法。
本发明还提供了一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现上述的方法。
本发明与现有技术相比的有益效果是:本发明通过来自PCIE端点的空闲物理标签资源进行处理和预读,以提高物理标签资源申请请求的响应速度,采用私有静态配置表和公共动态配置表的结合,灵活配置物理标签资源的使用情况,以减少PCIE EP的物理标签资源和电路面积,且实时统计物理标签资源的使用情况,根据统计结果动态修改私有静态配置,实现对物理标签资源实时动态灵活地配置,且不会造成物理标签资源的浪费。
下面结合附图和具体实施例对本发明作进一步描述。
附图说明
为了更清楚地说明本发明实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的TLP字段资源管理方法的流程示意图;
图2为本发明实施例提供的TLP字段资源管理方法的子流程示意图;
图3为本发明实施例提供的TLP字段资源管理方法的子流程示意图;
图4为本发明实施例提供的TLP字段资源管理方法的子流程示意图;
图5为本发明另一实施例提供的TLP字段资源管理方法的流程示意图;
图6为本发明实施例提供的TLP字段资源管理装置的示意性框图;
图7为本发明实施例提供的TLP字段资源管理装置的空闲资源处理单元的示意性框图;
图8为本发明实施例提供的TLP字段资源管理装置的资源分配判断单元的示意性框图;
图9为本发明实施例提供的TLP字段资源管理装置的动态调整单元的示意性框图;
图10为本发明另一实施例提供的TLP字段资源管理装置的示意性框图;
图11为本发明实施例提供的计算机设备的示意性框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本发明说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本发明。如在本发明说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1为本发明实施例提供的TLP字段资源管理方法的示意性流程图。该TLP字段资源管理方法可以运用在带有固态硬盘的设备中,由设备中的NVME、BM、HMB发起物理标签资料请求,而空闲物理标签资源是从PCIE EP提供,针对这些请求和提供的空闲物理标签资源进行处理,并由控制器对标签配置表内的配置进行修改,以达到动态修改静态配置的功能。
图1是本发明实施例提供的TLP字段资源管理方法的流程示意图。如图1所示,该方法包括以下步骤S110至S210。
S110、获取来自PCIE端点的空闲物理标签资源。
在本实施例中,空闲物理标签资源是指未被占用的物理标签资源,而标签资源是指一种PCI Express规范中TLP的一个字段。
当PICE EP发现自身的物理标签资源处于空闲状态时,会将这些空闲物理标签资源发送至服务器内的TLP字段资源管理模块,进行空闲物理标签资源的处理和管理。
S120、对所述空闲物理标签资源进行处理,以得到标签映射表。
在本实施例中,标签映射表是指由空闲物理标签资源与所述逻辑标签资源的映射关系形成的表格。
在一实施例中,如图2所示,上述的步骤S120可包括步骤S121~S122。
S121、对所述空闲物理标签资源进行格式转换,形成逻辑标签资源。
在本实施例中,逻辑标签资源是指空闲物理标签资源按照一定的规则转换后形成逻辑资源,该规则可以是字段中数据的摘取等。逻辑标签资源作为内存读操作的TLP包的一个字段,在内存读结果回来后用标签来对应哪一次内存读操作。
S122、将所述空闲物理标签资源与所述逻辑标签资源的对应关系写入预设的映射表内,以形成标签映射表。
空闲物理标签资源转换后形成逻辑标签资源,可以得知两者的关系,该关系则可组成标签映射表。
S130、判断所述标签映射表内是否有空闲物理标签资源。
当标签映射表内有空闲物理标签资源时,会将该空闲物理标签资源放置到备用的地址内。
若否,则返回所述步骤S110;
S140、若是,则将空闲物理标签资源放置于先进先出队列。
先进先出队列是一个用于存储备用空闲物理TAG资源的缓存,先进先出队列内有备用缓存,具体是将空闲物理TAG资源放置到备用缓存中。
采用预读的方式将空闲物理标签资源放置到先进先出队列内,可提高物理标签资源请求的响应速度。
S150、获取物理标签资源申请请求。
在本实施例中,物理标签资源申请请求是指请求分配标签资源您行内存读取操作的TLP包。具体是由NVME、BM、HMB等模块发起该请求。
在发起请求后,会采用加权轮询的方式对这些请求发起方进行优先级进行仲裁,以得到仲裁结果,对优先级高的发起方的请求先进行处理。
S160、获取标签配置表。
当接收到该请求后,需要读取标签配置表,以得知是否有空闲的物理标签资源可分配。
上述的标签配置表包括私有静态配置表以及公共动态配置表。
S170、根据所述请求判断标签配置表内是否有空闲的物理标签资源分配。
在一实施例中,如图3所示,上述的步骤S170可包括步骤S171~S175。
S171、根据所述请求判断所述标签配置表内的私有静态配置表是否有空闲的物理标签资源分配;
在本实施例中,私有静态配置表是指包括所有请求发起方对应的私有静态配置的表格。
S172、若是,则标签配置表内有空闲的物理标签资源分配;
S173、若否,则判断所述标签配置表内的公共动态配置表是否有空闲的物理标签资源分配;
在本实施例中,私有静态配置表是指包括所有请求发起方共用的公共动态配置的表格。
S174、若是,则标签配置表内有空闲的物理标签资源分配;
S175、若否,则标签配置表内无空闲的物理标签资源分配。
每个请求发起方都有私有静态配置,同时所有的模块共享一份公共动态配置,因此,需要先确定私有静态配置表内的与请求发起方相关的私有静态配置对应的标签资源是否有空闲的且可分配的,若有,则将私有静态配置表中关于该请求发起方相关的空闲的且可分配的私有静态配置对应的物理标签资源反馈至该请求发起方;若私有静态配置表内与请求发起方相关的私有静态配置对应的标签资源没有空闲的且可分配的,则需要动用公共动态配置对应的物理标签资源,但是该公共动态配置对应的物理标签资源是所有模块共用的,一般会对每个请求发起方的享用数量进行设定阈值,当达到该阈值,则表明该标签配置表内的公共动态配置表没有空闲的物理标签资源分配;若未达到,则反馈该公共动态配置表空闲的物理标签资源至对应的请求发起方。
S180、若否,则继续等待,并返回所述S170;
S190、若是,则对所述请求做出响应。
由于增加了公共动态配置表内的物理标签资源,即增加了所有请求发起方所共用的公共动态配置,可灵活配置标签资源的使用,避免造成不公平和浪费。
S200、统计请求发起方的物理标签资源使用情况。
在本实施例中,根据加权轮询方式的仲裁结果进行请求发起方所占用的物理标签资源使用请求,以对标签资源进行实时调整。该统计结果会反馈到标签配置表内,也就是标签配置表会标记有每个模块使用的物理标签资源使用情况
S210、根据所述物理标签资源使用情况动态调整标签配置表。
在本实施例中,具体是控制器通过配置总线接口读取标签配置表,再对该标签配置表进行动态调整。以减少PCIE EP的物理标签资源和电路面积,对物理标签资源实现实时动态灵活的配置。协调请求发起方之间的资源使用状态,防止某一个请求发起方的请求短时间内过多占用物理标签资源。
在一实施例中,如图4所示,上述的步骤S210可包括步骤S211~S215。
S211、修改所述标签配置表内的配置,以得到修改后的标签配置表。
具体地,可以根据统计的结果,动态调整所述标签配置表内的配置,以使得整个标签配置表内的物理标签资源发生变化。
S212、将修改后的标签配置表写入备用寄存器表中;
S213、获取所述空闲物理标签资源的处理状态以及请求的处理状态;
S214、判断所述空闲物理标签资源的处理状态以及请求的处理状态是否都处于处理完毕状态;
S215、若是,则将备用寄存器表中的值切换为修改后的标签配置表。
若否,则返回所述S213。
在TLP字段资源管理模块处于空闲的状态下才进行备用寄存器表中的值切换为修改后的标签配置表,确保在请求的响应速度的情况下,达到动态修改静态配置的功能。
上述的TLP字段资源管理方法,通过来自PCIE端点的空闲物理标签资源进行处理和预读,以提高物理标签资源申请请求的响应速度,采用私有静态配置表和公共动态配置表的结合,灵活配置物理标签资源的使用情况,以减少PCIE EP的物理标签资源和电路面积,且实时统计物理标签资源的使用情况,根据统计结果动态修改私有静态配置,实现对物理标签资源实时动态灵活地配置,且不会造成物理标签资源的浪费。
图5是本发明另一实施例提供的一种TLP字段资源管理方法的流程示意图。如图5所示,本实施例的TLP字段资源管理方法包括步骤S310-S430。其中步骤S310-S410与上述实施例中的步骤S110-S210类似,在此不再赘述。下面详细说明本实施例中所增加的步骤S420-S430。
S420、判断所述PCIE端点的某一空闲物理标签资源的PCIE读操作是否完成;
S430、若是,则清除并维护PCIE读操作完成的空闲物理标签资源所在的标签映射表;
若否,则返回所述S420。
当PCIE EP某一个物理标签资源对应的PCIE读操作完成后,将会触发此物理标签资源对应的映射表清除和维护动作,以避免映射表占据一定的内存。
图6是本发明实施例提供的一种TLP字段资源管理装置300的示意性框图。如图6所示,对应于以上TLP字段资源管理方法,本发明还提供一种TLP字段资源管理装置300。该TLP字段资源管理装置300包括用于执行上述TLP字段资源管理方法的单元,该装置可以被配置于设有固态硬盘的设备中。
具体地,请参阅图6,该TLP字段资源管理装置300包括:
空闲资源获取单元301,用于获取来自PCIE端点的空闲物理标签资源;
空闲资源处理单元302,用于对所述空闲物理标签资源进行处理,以得到标签映射表;
资源判断单元303,用于判断所述标签映射表内是否有空闲物理标签资源;
资源放置单元304,用于若是,则将空闲物理标签资源放置于先进先出队列;
请求获取单元305,用于获取物理标签资源申请请求;
配置表获取单元306,用于获取标签配置表;
资源分配判断单元307,用于根据所述请求判断标签配置表内是否有空闲的标签资源分配;
响应单元308,用于若是,则对所述请求做出响应;
情况统计单元309,用于统计请求发起方的物理标签资源使用情况;
动态调整单元310,用于根据所述物理标签资源使用状态动态调整标签配置表。
在一实施例中,如图7所示,所述空闲资源处理单元302包括:
转换子单元3021,用于对所述空闲物理标签资源进行格式转换,形成逻辑标签资源;
映射表生成子单元3022,用于将所述空闲物理标签资源与所述逻辑标签资源的对应关系写入预设的映射表内,以形成标签映射表。
在一实施例中,如图8所示,所述资源分配判断单元307包括:
私有配置判断子单元3071,用于根据所述请求判断所述标签配置表内的私有静态配置表是否有空闲的物理标签资源分配;若是,则标签配置表内有空闲的物理标签资源分配;
公共配置判断子单元3072,用于若否,则判断所述标签配置表内的公共动态配置表是否有空闲的物理标签资源分配;若是,则标签配置表内有空闲的物理标签资源分配;若否,则标签配置表内无空闲的物理标签资源分配。
在一实施例中,如图9所示,所述动态调整单元310包括:
配置修改子单元3101,用于修改所述标签配置表内的配置,以得到修改后的标签配置表;
配置写入子单元3102,用于将修改后的标签配置表写入备用寄存器表中;
状态获取子单元3103,用于获取所述空闲物理标签资源的处理状态以及请求的处理状态;
状态判断子单元3104,用于判断所述空闲物理标签资源的处理状态以及请求的处理状态是否都处于处理完毕状态;
切换子单元3105,用于若是,则将备用寄存器表中的值切换为修改后的标签配置表。
图10是本发明另一实施例提供的一种TLP字段资源管理装置300的示意性框图。如图10所示,本实施例的一种TLP字段资源管理装置300是上述实施例的基础上增加了操作判断单元311以及清除单元312。
操作判断单元311,用于判断所述PCIE端点的某一空闲物理标签资源的PCIE读操作是否完成;
清除单元312,用于若是,则清除并维护PCIE读操作完成的空闲物理标签资源所在的标签映射表。
需要说明的是,所属领域的技术人员可以清楚地了解到,上述一种TLP字段资源管理装置300和各单元的具体实现过程,可以参考前述方法实施例中的相应描述,为了描述的方便和简洁,在此不再赘述。
上述一种TLP字段资源管理装置300可以实现为一种计算机程序的形式,该计算机程序可以在如图11所示的计算机设备上运行。
请参阅图11,图11是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500可以是终端,也可以是服务器,其中,终端可以是智能手机、平板电脑、笔记本电脑、台式电脑等具有通信功能且带有固态硬盘的电子设备。服务器可以是独立的服务器,也可以是多个服务器组成的服务器集群。
参阅图11,该计算机设备500包括通过系统总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作系统5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种TLP字段资源管理方法。
该处理器502用于提供计算和控制能力,以支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种TLP字段资源管理方法。
该网络接口505用于与其它设备进行网络通信。本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下步骤:
获取来自PCIE端点的空闲物理标签资源;
对所述空闲物理标签资源进行处理,以得到标签映射表;
判断所述标签映射表内是否有空闲物理标签资源;
若是,则将空闲物理标签资源放置于先进先出队列;
获取物理标签资源申请请求;
获取标签配置表;
根据所述请求判断标签配置表内是否有空闲的物理标签资源分配;
若是,则对所述请求做出响应;
统计请求发起方的物理标签资源使用情况;
根据所述物理标签资源使用状态动态调整标签配置表。
在一实施例中,处理器502在实现所述根据所述物理标签资源使用状态动态调整标签配置表步骤之后,还实现如下步骤:
判断所述PCIE端点的某一空闲物理标签资源的PCIE读操作是否完成;
若是,则清除并维护PCIE读操作完成的空闲物理标签资源所在的标签映射表。
在一实施例中,处理器502在实现所述对所述空闲物理标签资源进行处理,以得到标签映射表步骤时,具体实现如下步骤:
对所述空闲物理标签资源进行格式转换,形成逻辑标签资源;
将所述空闲物理标签资源与所述逻辑标签资源的对应关系写入预设的映射表内,以形成标签映射表。
其中,所述标签配置表包括私有静态配置表以及公共动态配置表。
在一实施例中,处理器502在实现所述根据所述请求判断标签配置表内是否有空闲的物理标签资源分配步骤时,具体实现如下步骤:
根据所述请求判断所述标签配置表内的私有静态配置表是否有空闲的物理标签资源分配;
若是,则标签配置表内有空闲的物理标签资源分配;
若否,则判断所述标签配置表内的公共动态配置表是否有空闲的物理标签资源分配;
若是,则标签配置表内有空闲的物理标签资源分配;
若否,则标签配置表内无空闲的物理标签资源分配。
在一实施例中,处理器502在实现所述根据所述物理标签资源使用情况动态调整标签配置表步骤时,具体实现如下步骤:
修改所述标签配置表内的配置,以得到修改后的标签配置表;
将修改后的标签配置表写入备用寄存器表中;
获取所述空闲物理标签资源的处理状态以及请求的处理状态;
判断所述空闲物理标签资源的处理状态以及请求的处理状态是否都处于处理完毕状态;
若是,则将备用寄存器表中的值切换为修改后的标签配置表。
在一实施例中,处理器502在实现所述判断所述标签映射表内是否有空闲的物理标签资源步骤之后,还实现如下步骤:
若否,则继续等待,并返回所述判断所述标签映射表内是否有空闲的物理标签资源。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
本领域普通技术人员可以理解的是实现上述实施例的方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成。该计算机程序包括程序指令,计算机程序可存储于一存储介质中,该存储介质为计算机可读存储介质。该程序指令被该计算机系统中的至少一个处理器执行,以实现上述方法的实施例的流程步骤。
因此,本发明还提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中该计算机程序被处理器执行时使处理器执行如下步骤:
获取来自PCIE端点的空闲物理标签资源;
对所述空闲物理标签资源进行处理,以得到标签映射表;
判断所述标签映射表内是否有空闲物理标签资源;
若是,则将空闲物理标签资源放置于先进先出队列;
获取物理标签资源申请请求;
获取标签配置表;
根据所述请求判断标签配置表内是否有空闲的物理标签资源分配;
若是,则对所述请求做出响应;
统计请求发起方的物理标签资源使用情况;
根据所述物理标签资源使用状态动态调整标签配置表。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据所述物理标签资源使用状态动态调整标签配置表步骤之后,还实现如下步骤:
判断所述PCIE端点的某一空闲物理标签资源的PCIE读操作是否完成;
若是,则清除并维护PCIE读操作完成的空闲物理标签资源所在的标签映射表。
在一实施例中,所述处理器在执行所述计算机程序而实现所述对所述空闲物理标签资源进行处理,以得到标签映射表步骤时,具体实现如下步骤:
对所述空闲物理标签资源进行格式转换,形成逻辑标签资源;
将所述空闲物理标签资源与所述逻辑标签资源的对应关系写入预设的映射表内,以形成标签映射表。
其中,所述标签配置表包括私有静态配置表以及公共动态配置表。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据所述请求判断标签配置表内是否有空闲的物理标签资源分配步骤时,具体实现如下步骤:
根据所述请求判断所述标签配置表内的私有静态配置表是否有空闲的物理标签资源分配;
若是,则标签配置表内有空闲的物理标签资源分配;
若否,则判断所述标签配置表内的公共动态配置表是否有空闲的物理标签资源分配;
若是,则标签配置表内有空闲的物理标签资源分配;
若否,则标签配置表内无空闲的物理标签资源分配。
在一实施例中,所述处理器在执行所述计算机程序而实现所述根据所述物理标签资源使用情况动态调整标签配置表步骤时,具体实现如下步骤:
修改所述标签配置表内的配置,以得到修改后的标签配置表;
将修改后的标签配置表写入备用寄存器表中;
获取所述空闲物理标签资源的处理状态以及请求的处理状态;
判断所述空闲物理标签资源的处理状态以及请求的处理状态是否都处于处理完毕状态;
若是,则将备用寄存器表中的值切换为修改后的标签配置表。
在一实施例中,所述处理器在执行所述计算机程序而实现所述判断所述标签映射表内是否有空闲的物理标签资源步骤之后,还实现如下步骤:
若否,则继续等待,并返回所述判断所述标签映射表内是否有空闲的物理标签资源。
所述存储介质可以是U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、磁碟或者光盘等各种可以存储程序代码的计算机可读存储介质。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的。例如,各个单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。本发明实施例装置中的单元可以根据实际需要进行合并、划分和删减。另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。
该集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,终端,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (10)
1.TLP字段资源管理方法,其特征在于,包括:
获取来自PCIE端点的空闲物理标签资源;
对所述空闲物理标签资源进行处理,以得到标签映射表;
判断所述标签映射表内是否有空闲物理标签资源;
若是,则将空闲物理标签资源放置于先进先出队列;
获取物理标签资源申请请求;
获取标签配置表;
根据所述请求判断标签配置表内是否有空闲的物理标签资源分配;
若是,则对所述请求做出响应;
统计请求发起方的物理标签资源使用情况;
根据所述物理标签资源使用状态动态调整标签配置表。
2.根据权利要求1所述的TLP字段资源管理方法,其特征在于,所述根据所述物理标签资源使用状态动态调整标签配置表之后,还包括:
判断所述PCIE端点的某一空闲物理标签资源的PCIE读操作是否完成;
若是,则清除并维护PCIE读操作完成的空闲物理标签资源所在的标签映射表。
3.根据权利要求1所述的TLP字段资源管理方法,其特征在于,所述对所述空闲物理标签资源进行处理,以得到标签映射表,包括:
对所述空闲物理标签资源进行格式转换,形成逻辑标签资源;
将所述空闲物理标签资源与所述逻辑标签资源的对应关系写入预设的映射表内,以形成标签映射表。
4.根据权利要求1所述的TLP字段资源管理方法,其特征在于,所述标签配置表包括私有静态配置表以及公共动态配置表。
5.根据权利要求4所述的TLP字段资源管理方法,其特征在于,所述根据所述请求判断标签配置表内是否有空闲的物理标签资源分配,包括:
根据所述请求判断所述标签配置表内的私有静态配置表是否有空闲的物理标签资源分配;
若是,则标签配置表内有空闲的物理标签资源分配;
若否,则判断所述标签配置表内的公共动态配置表是否有空闲的物理标签资源分配;
若是,则标签配置表内有空闲的物理标签资源分配;
若否,则标签配置表内无空闲的物理标签资源分配。
6.根据权利要求1所述的TLP字段资源管理方法,其特征在于,所述根据所述物理标签资源使用情况动态调整标签配置表,包括:
修改所述标签配置表内的配置,以得到修改后的标签配置表;
将修改后的标签配置表写入备用寄存器表中;
获取所述空闲物理标签资源的处理状态以及请求的处理状态;
判断所述空闲物理标签资源的处理状态以及请求的处理状态是否都处于处理完毕状态;
若是,则将备用寄存器表中的值切换为修改后的标签配置表。
7.根据权利要求1所述的TLP字段资源管理方法,其特征在于,所述判断所述标签映射表内是否有空闲的物理标签资源之后,还包括:
若否,则继续等待,并返回所述判断所述标签映射表内是否有空闲的物理标签资源。
8.TLP字段资源管理装置,其特征在于,包括:
空闲资源获取单元,用于获取来自PCIE端点的空闲物理标签资源;
空闲资源处理单元,用于对所述空闲物理标签资源进行处理,以得到标签映射表;
资源判断单元,用于判断所述标签映射表内是否有空闲物理标签资源;
资源放置单元,用于若是,则将空闲物理标签资源放置于先进先出队列;
请求获取单元,用于获取物理标签资源申请请求;
配置表获取单元,用于获取标签配置表;
资源分配判断单元,用于根据所述请求判断标签配置表内是否有空闲的标签资源分配;
响应单元,用于若是,则对所述请求做出响应;
情况统计单元,用于统计请求发起方的物理标签资源使用情况;
动态调整单元,用于根据所述物理标签资源使用状态动态调整标签配置表。
9.一种计算机设备,其特征在于,所述计算机设备包括存储器及处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任一项所述的方法。
10.一种存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时可实现如权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811622244.8A CN109710411B (zh) | 2018-12-28 | 2018-12-28 | Tlp字段资源管理方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811622244.8A CN109710411B (zh) | 2018-12-28 | 2018-12-28 | Tlp字段资源管理方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109710411A true CN109710411A (zh) | 2019-05-03 |
CN109710411B CN109710411B (zh) | 2020-09-22 |
Family
ID=66259024
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811622244.8A Active CN109710411B (zh) | 2018-12-28 | 2018-12-28 | Tlp字段资源管理方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710411B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060064698A1 (en) * | 2004-09-17 | 2006-03-23 | Miller Troy D | System and method for allocating computing resources for a grid virtual system |
CN101697544A (zh) * | 2009-10-28 | 2010-04-21 | 中兴通讯股份有限公司 | 一种标签的冲突避免方法及装置 |
US20140282576A1 (en) * | 2013-03-15 | 2014-09-18 | D.E. Shaw Research, Llc | Event-driven computation |
CN102193833B (zh) * | 2010-01-26 | 2014-12-17 | 微软公司 | 资源管理器中空闲资源的高效利用 |
CN106716367A (zh) * | 2014-09-25 | 2017-05-24 | 甲骨文国际公司 | 用于支持分布式数据网格中的动态线程池大小确定的系统和方法 |
CN106708751A (zh) * | 2015-11-13 | 2017-05-24 | 三星电子株式会社 | 包括用于多模操作的多分区的存储装置及其操作方法 |
CN107451858A (zh) * | 2017-07-24 | 2017-12-08 | 孙晖 | 资源管理方法、装置、存储介质和计算机设备 |
US10083141B2 (en) * | 2015-09-21 | 2018-09-25 | Huawei Technologies Co., Ltd. | Computer system and method for accessing endpoint device in computer system |
CN108632165A (zh) * | 2018-04-23 | 2018-10-09 | 新华三技术有限公司 | 一种报文处理方法、装置及设备 |
US20180314421A1 (en) * | 2017-04-26 | 2018-11-01 | Western Digital Technologies, Inc. | System and method for locality detection to identify read or write streams in a memory device |
US20190132198A1 (en) * | 2018-12-24 | 2019-05-02 | Intel Corporation | Memory resource allocation in an end-point device |
-
2018
- 2018-12-28 CN CN201811622244.8A patent/CN109710411B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060064698A1 (en) * | 2004-09-17 | 2006-03-23 | Miller Troy D | System and method for allocating computing resources for a grid virtual system |
CN101697544A (zh) * | 2009-10-28 | 2010-04-21 | 中兴通讯股份有限公司 | 一种标签的冲突避免方法及装置 |
CN102193833B (zh) * | 2010-01-26 | 2014-12-17 | 微软公司 | 资源管理器中空闲资源的高效利用 |
US20140282576A1 (en) * | 2013-03-15 | 2014-09-18 | D.E. Shaw Research, Llc | Event-driven computation |
CN106716367A (zh) * | 2014-09-25 | 2017-05-24 | 甲骨文国际公司 | 用于支持分布式数据网格中的动态线程池大小确定的系统和方法 |
US10083141B2 (en) * | 2015-09-21 | 2018-09-25 | Huawei Technologies Co., Ltd. | Computer system and method for accessing endpoint device in computer system |
CN106708751A (zh) * | 2015-11-13 | 2017-05-24 | 三星电子株式会社 | 包括用于多模操作的多分区的存储装置及其操作方法 |
US20180314421A1 (en) * | 2017-04-26 | 2018-11-01 | Western Digital Technologies, Inc. | System and method for locality detection to identify read or write streams in a memory device |
CN107451858A (zh) * | 2017-07-24 | 2017-12-08 | 孙晖 | 资源管理方法、装置、存储介质和计算机设备 |
CN108632165A (zh) * | 2018-04-23 | 2018-10-09 | 新华三技术有限公司 | 一种报文处理方法、装置及设备 |
US20190132198A1 (en) * | 2018-12-24 | 2019-05-02 | Intel Corporation | Memory resource allocation in an end-point device |
Non-Patent Citations (3)
Title |
---|
JIJUN HUANG,ET AL.,: "pci express-based nvme solid state disk", 《APPLIED MECHANICS AND MATERIAL》 * |
张亮,: "PCI Express协议的实现与验证", 《中国优秀硕士学位论文全文数据库信息科技辑(月刊)》 * |
郑海东: "基于Flash_MediaServer的HTTP动态视频流技术", 《信息化研究》 * |
Also Published As
Publication number | Publication date |
---|---|
CN109710411B (zh) | 2020-09-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3796179A1 (en) | System, apparatus and method for processing remote direct memory access operations with a device-attached memory | |
CN101916236B (zh) | 为邮递性中断事务提供留存机构的方法、装置和系统 | |
US9806904B2 (en) | Ring controller for PCIe message handling | |
CN104040516B (zh) | 用于数据去重的方法、设备和系统 | |
US8928677B2 (en) | Low latency concurrent computation | |
US9684613B2 (en) | Methods and systems for reducing spurious interrupts in a data storage system | |
US10474620B2 (en) | System and method for improving peripheral component interface express bus performance in an information handling system | |
CN103827842A (zh) | 向控制器存储器空间写入消息 | |
US11983437B2 (en) | System, apparatus and method for persistently handling memory requests in a system | |
US20120260005A1 (en) | Controller for direct access to a memory for the direct transfer of data between memories of several peripheral devices, method and computer program enabling the implementation of such a controller | |
WO2019153702A1 (zh) | 一种中断处理方法、装置及服务器 | |
WO2014004192A1 (en) | Performing emulated message signaled interrupt handling | |
CN105357042A (zh) | 一种高可用集群系统及其主节点和从节点 | |
CN104050118A (zh) | 提供对设备功能的访问的装置、系统和方法 | |
CN104123173B (zh) | 一种实现虚拟机间通信的方法及装置 | |
CN106936931A (zh) | 分布式锁的实现方法、相关设备及系统 | |
CN110457251A (zh) | 一种多处理器间的数据通信方法及装置 | |
WO2024027140A1 (zh) | 一种数据处理方法、装置、设备、系统及可读存储介质 | |
US11099740B2 (en) | Method, apparatus and computer program product for managing storage device | |
CN109062671A (zh) | 一种轻量级的高性能互连网络软件虚拟化方法 | |
US10769092B2 (en) | Apparatus and method for reducing latency of input/output transactions in an information handling system using no-response commands | |
CN107463829B (zh) | 一种密码卡中dma请求的处理方法、系统及相关装置 | |
CN109710411A (zh) | Tlp字段资源管理方法、装置、计算机设备及存储介质 | |
CN109710187A (zh) | NVMe SSD主控芯片的读命令加速方法、装置、计算机设备及存储介质 | |
CN109684256A (zh) | 服务器及数据传输方法 |
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 |