[发明专利]动态可调整大小的循环缓冲区有效
申请号: | 201310414911.4 | 申请日: | 2013-09-12 |
公开(公告)号: | CN103678167B | 公开(公告)日: | 2019-02-12 |
发明(设计)人: | D·桑德斯;H·杰克逊 | 申请(专利权)人: | 美普思技术有限责任公司 |
主分类号: | G06F12/0877 | 分类号: | G06F12/0877 |
代理公司: | 北京安信方达知识产权代理有限公司 11262 | 代理人: | 陆建萍;杨明钊 |
地址: | 美国加利*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 循环缓冲区 移除 分配 方法和装置 动态调整 添加数据 可调整 禁用 释放 保存 | ||
1.一种循环缓冲区结构,包括:
多个阵列,其中每个阵列均包括被配置以存储数据的至少两个存储单元;
一个或多个循环缓冲区;以及
缓冲区控制逻辑,其被配置为:
接收以下中的至少一个:(a)添加数据至特定循环缓冲区的请求以及(b)从具体循环缓冲区移除数据的请求;
如果收到了添加数据至特定循环缓冲区的请求并且所述特定循环缓冲区已满,则将阵列动态地分配给所述特定循环缓冲区;以及
如果收到了从具体循环缓冲区移除数据的请求并且从所述具体循环缓冲区移除数据形成了空阵列,则从所述具体循环缓冲区动态地释放所述空阵列并且禁用该释放的阵列。
2.根据权利要求1所述的循环缓冲区结构,其中所述循环缓冲区结构包括多个循环缓冲区,并且所述多个阵列在所述多个循环缓冲区之间共享。
3.根据权利要求1所述的循环缓冲区结构,其中每个所述阵列均包括相同数量的存储单元。
4.根据权利要求1所述的循环缓冲区结构,其中至少两个所述阵列包括不同数量的存储单元。
5.根据权利要求4所述的循环缓冲区结构,其中:
每个循环缓冲区均包括尾单元和头单元;并且
所述缓冲区控制逻辑被进一步配置以基于所述尾单元追赶上其所在的所述阵列的末尾有多快来选择待分配给所述特定循环缓冲区的阵列。
6.根据权利要求5所述的循环缓冲区结构,其中所述缓冲区控制逻辑被配置以当所述尾单元快速地追赶上所述阵列的末尾时选择具有较大数量的存储单元的阵列,并且当所述尾单元缓慢地追赶上所述阵列的末尾时选择具有较小数量的存储单元的阵列。
7.根据权利要求1所述的循环缓冲区结构,其中所述缓冲区控制逻辑被配置为:如果已经分配给所述特定循环缓冲区的阵列的数量不等于或大于最大阈值,则仅将阵列分配给所述特定循环缓冲区。
8.根据权利要求7所述的循环缓冲区结构,其中所述最大阈值被动态地确定。
9.根据权利要求8所述的循环缓冲区结构,其中所述缓冲区控制逻辑被进一步配置以基于电力保存还是速度在当前是最重要的来动态地调节所述最大阈值。
10.根据权利要求9所述的循环缓冲区结构,其中所述缓冲区控制逻辑被进一步配置为:
当所述缓冲区控制逻辑检测到速度比电力保存更重要的情况时,增加所述最大阈值;以及
当所述缓冲区控制逻辑检测到电力保存比速度更重要的情况时,减小所述最大阈值。
11.根据权利要求7所述的循环缓冲区结构,其中所述最大阈值表达为所述多个阵列的百分比。
12.根据权利要求7所述的循环缓冲区结构,其中至少两个所述循环缓冲区具有不同的最大阈值。
13.根据权利要求1所述的循环缓冲区结构,其中所述缓冲区控制逻辑被配置为:如果分配给所述具体循环缓冲区的阵列的数量大于最小阈值,则仅从所述具体循环缓冲区释放阵列。
14.根据权利要求13所述的循环缓冲区结构,其中所述最小阈值为1。
15.根据权利要求13所述的循环缓冲区结构,其中至少两个所述循环缓冲区具有不同的最小阈值。
16.根据权利要求1所述的循环缓冲区结构,其中禁用释放的阵列包括:关断到所述阵列的每个存储单元的电力。
17.根据权利要求1所述的循环缓冲区结构,其中每个存储单元均可读。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于美普思技术有限责任公司,未经美普思技术有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310414911.4/1.html,转载请声明来源钻瓜专利网。