一种固件共享硬件内部缓存的方法及其系统转让专利

申请号 : CN201910537498.8

文献号 : CN110275679A

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 臧鑫冯元元

申请人 : 深圳忆联信息系统有限公司

摘要 :

本发明涉及一种固件共享硬件内部缓存的方法及其系统;其中,方法,包括:S1,固件通过主控访问和使用缓存资源;S2,主控内部硬件的缓存资源在没有使用需求的情况下,向固件开放接口和使用权限;S3,固件向相应硬件申请缓存资源;S4,判断此时被申请的硬件是否有缓存资源;若是,进入S5;若否,则返回S3;S5,释放缓存资源给固件使用;S6,固件通过主控访问和使用申请到的缓存资源,并在使用完后重新归还给对应的硬件;S7,对应的硬件收到返回的缓存后,重新用作内部缓存,空闲时等待下一次固件的使用请求。本发明有效节约了硬件资源,提高了缓存资源利用效率,减小本地存储空间开销,更好地满足需求。

权利要求 :

1.一种固件共享硬件内部缓存的方法,其特征在于,包括以下步骤:S1,固件通过主控访问和使用缓存资源;

S2,主控内部硬件的缓存资源在没有使用需求的情况下,向固件开放接口和使用权限;

S3,固件向相应硬件申请缓存资源;

S4,判断此时被申请的硬件是否有缓存资源;若是,进入S5;若否,则返回S3;

S5,释放缓存资源给固件使用;

S6,固件通过主控访问和使用申请到的缓存资源,并在使用完后重新归还给对应的硬件;

S7,对应的硬件收到返回的缓存后,重新用作内部缓存,空闲时等待下一次固件的使用请求。

2.根据权利要求1所述的一种固件共享硬件内部缓存的方法,其特征在于,所述缓存资源包括:代码高速存储空间,数据高速存储空间,指令缓存,数据缓存,动态随机存储器,或静态随机存储器。

3.根据权利要求1所述的一种固件共享硬件内部缓存的方法,其特征在于,所述S1之后,还包括:主控内部硬件在工作过程中使用相对应的内部缓存资源。

4.根据权利要求1所述的一种固件共享硬件内部缓存的方法,其特征在于,所述S3中,固件通过请求的方式向相应硬件申请缓存资源。

5.根据权利要求1所述的一种固件共享硬件内部缓存的方法,其特征在于,所述S6中,固件通过主控访问和使用申请到的缓存资源,用作数据缓存或命令缓存,并在使用完后重新归还给对应的硬件。

6.一种固件共享硬件内部缓存的系统,其特征在于,包括:访问使用单元,开放单元,申请单元,判断单元,释放单元,使用归还单元,及恢复单元;

所述访问使用单元,用于固件通过主控访问和使用缓存资源;

所述开放单元,用于主控内部硬件的缓存资源在没有使用需求的情况下,向固件开放接口和使用权限;

所述申请单元,用于固件向相应硬件申请缓存资源;

所述判断单元,用于判断此时被申请的硬件是否有缓存资源;

所述释放单元,用于释放缓存资源给固件使用;

所述使用归还单元,用于固件通过主控访问和使用申请到的缓存资源,并在使用完后重新归还给对应的硬件;

所述恢复单元,用于对应的硬件收到返回的缓存后,重新用作内部缓存,空闲时等待下一次固件的使用请求。

7.根据权利要求6所述的一种固件共享硬件内部缓存的系统,其特征在于,所述缓存资源包括:代码高速存储空间,数据高速存储空间,指令缓存,数据缓存,动态随机存储器,或静态随机存储器。

8.根据权利要求6所述的一种固件共享硬件内部缓存的系统,其特征在于,还包括:工作单元,用于主控内部硬件在工作过程中使用相对应的内部缓存资源。

9.根据权利要求6所述的一种固件共享硬件内部缓存的系统,其特征在于,所述申请单元中,固件通过请求的方式向相应硬件申请缓存资源。

10.根据权利要求6所述的一种固件共享硬件内部缓存的系统,其特征在于,所述使用归还单元中,固件通过主控访问和使用申请到的缓存资源,用作数据缓存或命令缓存,并在使用完后重新归还给对应的硬件。

说明书 :

一种固件共享硬件内部缓存的方法及其系统

技术领域

[0001] 本发明涉及共享硬件内部缓存技术领域,更具体地说是指一种固件共享硬件内部缓存的方法及其系统。

背景技术

[0002] 现有固态硬盘固件通常采用设备端外置存储内存和诸如静态随机存储器等主控内部相应缓存作为数据缓存和代码缓存,而固态硬盘主控内部硬件使用的缓存资源不对固件开放接口和使用。
[0003] 目前,固态硬盘固件可以通过主控访问和使用诸如代码高速存储空间/数据高速存储空间/指令缓存/数据缓存/动态随机存储器/静态随机存储器等缓存资源,主控内部硬件模块拥有独立使用的缓存资源,其中以静态随机存储器为主,主控内部硬件模块使用的缓存资源不对外开放,固件无法通过主控访问和使用该部分缓存资源,而主控内部硬件模块和固件使用的缓存资源较为独立,无法达到共享效果;当特定时刻下,某些硬件模块对其内部缓存资源没有使用需求时,会造成资源的浪费、资源利用率不高等情况,因此,无法满足需求。

发明内容

[0004] 本发明的目的在于克服现有技术的缺陷,提供一种固件共享硬件内部缓存的方法及其系统。
[0005] 为实现上述目的,本发明采用于下技术方案:
[0006] 一种固件共享硬件内部缓存的方法,包括以下步骤:
[0007] S1,固件通过主控访问和使用缓存资源;
[0008] S2,主控内部硬件的缓存资源在没有使用需求的情况下,向固件开放接口和使用权限;
[0009] S3,固件向相应硬件申请缓存资源;
[0010] S4,判断此时被申请的硬件是否有缓存资源;若是,进入S5;若否,则返回S3;
[0011] S5,释放缓存资源给固件使用;
[0012] S6,固件通过主控访问和使用申请到的缓存资源,并在使用完后重新归还给对应的硬件;
[0013] S7,对应的硬件收到返回的缓存后,重新用作内部缓存,空闲时等待下一次固件的使用请求。
[0014] 其进一步技术方案为:所述缓存资源包括:代码高速存储空间,数据高速存储空间,指令缓存,数据缓存,动态随机存储器,或静态随机存储器。
[0015] 其进一步技术方案为:所述S1之后,还包括:主控内部硬件在工作过程中使用相对应的内部缓存资源。
[0016] 其进一步技术方案为:所述S3中,固件通过请求的方式向相应硬件申请缓存资源。
[0017] 其进一步技术方案为:所述S6中,固件通过主控访问和使用申请到的缓存资源,用作数据缓存或命令缓存,并在使用完后重新归还给对应的硬件。
[0018] 一种固件共享硬件内部缓存的系统,包括:访问使用单元,开放单元,申请单元,判断单元,释放单元,使用归还单元,及恢复单元;
[0019] 所述访问使用单元,用于固件通过主控访问和使用缓存资源;
[0020] 所述开放单元,用于主控内部硬件的缓存资源在没有使用需求的情况下,向固件开放接口和使用权限;
[0021] 所述申请单元,用于固件向相应硬件申请缓存资源;
[0022] 所述判断单元,用于判断此时被申请的硬件是否有缓存资源;
[0023] 所述释放单元,用于释放缓存资源给固件使用;
[0024] 所述使用归还单元,用于固件通过主控访问和使用申请到的缓存资源,并在使用完后重新归还给对应的硬件;
[0025] 所述恢复单元,用于对应的硬件收到返回的缓存后,重新用作内部缓存,空闲时等待下一次固件的使用请求。
[0026] 其进一步技术方案为:所述缓存资源包括:代码高速存储空间,数据高速存储空间,指令缓存,数据缓存,动态随机存储器,或静态随机存储器。
[0027] 其进一步技术方案为:还包括:工作单元,用于主控内部硬件在工作过程中使用相对应的内部缓存资源。
[0028] 其进一步技术方案为:所述申请单元中,固件通过请求的方式向相应硬件申请缓存资源。
[0029] 其进一步技术方案为:所述使用归还单元中,固件通过主控访问和使用申请到的缓存资源,用作数据缓存或命令缓存,并在使用完后重新归还给对应的硬件。
[0030] 本发明与现有技术相比的有益效果是:通过在特定时间共享主控内部硬件内存,降低设备端外置存储内存的使用,从而达到降低硬件成本的目的,在固件运转过程中,通过请求的方式向主控申请硬件内部的缓存资源,如果此时主控内部硬件缓存资源有空闲,就可以释放相应资源交由固件使用,固件可以将此部分缓存资源作为数据缓存或者命令缓存,使用完后重新归还给主控内部硬件使用,从而有效节约了硬件资源,提高了缓存资源利用效率,减小本地存储空间开销,更好地满足需求。
[0031] 下面结合附图和具体实施例对本发明作进一步描述。

附图说明

[0032] 图1为现有固态硬盘内部缓存资源的典型架构示意图;
[0033] 图2为本发明一种固件共享硬件内部缓存的方法流程图;
[0034] 图3为图2的应用示意图;
[0035] 图4为本发明一种固件共享硬件内部缓存的系统方框图。

具体实施方式

[0036] 为了更充分理解本发明的技术内容,下面结合具体实施例对本发明的技术方案进一步介绍和说明,但不局限于此。
[0037] 如图1到图4所示的具体实施例,其中,如图1所示,目前固态硬盘内部缓存资源的典型架构:固件可以通过主控访问和使用诸如代码高速存储空间/数据高速存储空间/指令缓存/数据缓存/动态随机存储器/静态随机存储器等缓存资源,主控内部硬件模块拥有独立使用的缓存资源,其中以静态随机存储器为主,主控内部硬件模块使用的缓存资源不对外开放,固件无法通过主控访问和使用该部分缓存资源;该架构下主控内部硬件模块和固件使用的缓存资源较为独立,无法达到共享效果。当特定时刻下,某些硬件模块对其内部缓存资源没有使用需求时,会造成资源的浪费、资源利用率不高等情况。
[0038] 其中,附图中的英文解释如下:ATCM,代码高速存储空间;BTCM,数据高速存储空间;I-cache,指令缓存;D-cache,数据缓存;DRAM,动态随机存储器;ISRAM,静态随机存储器;NVMe,非易失性内存主机控制硬件;BM,缓存管理硬件;NFC,闪存控制硬件。
[0039] 其中,如图2至图3所示,本发明公开了一种固件共享硬件内部缓存的方法,包括以下步骤:
[0040] S1,固件通过主控访问和使用缓存资源;
[0041] S2,主控内部硬件的缓存资源在没有使用需求的情况下,向固件开放接口和使用权限;
[0042] S3,固件向相应硬件申请缓存资源;
[0043] S4,判断此时被申请的硬件是否有缓存资源;若是,进入S5;若否,则返回S3;
[0044] S5,释放缓存资源给固件使用;
[0045] S6,固件通过主控访问和使用申请到的缓存资源,并在使用完后重新归还给对应的硬件;
[0046] S7,对应的硬件收到返回的缓存后,重新用作内部缓存,空闲时等待下一次固件的使用请求。
[0047] 其中,所述缓存资源包括:代码高速存储空间,数据高速存储空间,指令缓存,数据缓存,动态随机存储器,或静态随机存储器等。
[0048] 其中,所述S1之后,还包括:主控内部硬件在工作过程中使用相对应的内部缓存资源。
[0049] 其中,所述S3中,固件通过请求的方式向相应硬件申请缓存资源,包括请求信息或命令。
[0050] 进一步地,所述S6中,固件通过主控访问和使用申请到的缓存资源,用作数据缓存或命令缓存,并在使用完后重新归还给对应的硬件。
[0051] 其中,相比于原有的固件和主控内部硬件使用两套独立的缓存资源的方法,本发明提高了资源利用率,节省本地存储空间开销。
[0052] 如图4所示,本发明还公开了一种固件共享硬件内部缓存的系统,包括:访问使用单元10,开放单元30,申请单元40,判断单元50,释放单元60,使用归还单元70,及恢复单元80;
[0053] 所述访问使用单元10,用于固件通过主控访问和使用缓存资源;
[0054] 所述开放单元30,用于主控内部硬件的缓存资源在没有使用需求的情况下,向固件开放接口和使用权限;
[0055] 所述申请单元40,用于固件向相应硬件申请缓存资源;
[0056] 所述判断单元50,用于判断此时被申请的硬件是否有缓存资源;
[0057] 所述释放单元60,用于释放缓存资源给固件使用;
[0058] 所述使用归还单元70,用于固件通过主控访问和使用申请到的缓存资源,并在使用完后重新归还给对应的硬件;
[0059] 所述恢复单元80,用于对应的硬件收到返回的缓存后,重新用作内部缓存,空闲时等待下一次固件的使用请求。
[0060] 其中,所述缓存资源包括:代码高速存储空间,数据高速存储空间,指令缓存,数据缓存,动态随机存储器,或静态随机存储器。
[0061] 其中,该系统还包括:工作单元20,用于主控内部硬件在工作过程中使用相对应的内部缓存资源。
[0062] 其中,所述申请单元40中,固件通过请求的方式向相应硬件申请缓存资源。
[0063] 进一步地,所述使用归还单元70中,固件通过主控访问和使用申请到的缓存资源,用作数据缓存或命令缓存,并在使用完后重新归还给对应的硬件。
[0064] 本发明通过在特定时间共享主控内部硬件内存,降低设备端外置存储内存的使用,从而达到降低硬件成本的目的,在固件运转过程中,通过请求的方式向主控申请硬件内部的缓存资源,如果此时主控内部硬件缓存资源有空闲,就可以释放相应资源交由固件使用,固件可以将此部分缓存资源作为数据缓存或者命令缓存,使用完后重新归还给主控内部硬件使用,从而有效节约了硬件资源,提高了缓存资源利用效率,减小本地存储空间开销,更好地满足需求。
[0065] 上述仅以实施例来进一步说明本发明的技术内容,以便于读者更容易理解,但不代表本发明的实施方式仅限于此,任何依本发明所做的技术延伸或再创造,均受本发明的保护。本发明的保护范围以权利要求书为准。