[发明专利]一种缓存处理方法及装置有效
申请号: | 201210478383.4 | 申请日: | 2012-11-22 |
公开(公告)号: | CN103838679B | 公开(公告)日: | 2017-08-04 |
发明(设计)人: | 张林生 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | G06F12/0802 | 分类号: | G06F12/0802 |
代理公司: | 北京银龙知识产权代理有限公司11243 | 代理人: | 许静,安利霞 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 缓存 处理 方法 装置 | ||
技术领域
本发明涉及网络存储领域,特别是一种缓存处理方法及装置。
背景技术
SoC(System on Chip,系统级芯片)技术将CPU/MPU(Micro Process Unit微处理器)、DSP(Digital Signal Processor,数字信息号处理)、硬件加速器、存储、外设接口等各个子系统,通过总线互联集成到一颗芯片上。这些子系统除了其内部数据处理所需要的本地专用存储/缓存之外,还往往由于各种各样的原因需要共享集中的存储/缓存,如各子系统相互之间需要数据交互缓冲;如处理多用户业务而共享存储。
这些由多源/多用户共享的集中缓存可以在物理上是一块或几块存储单元,如一块SRAM(Static Random-Access Memory,静态存储器)或一块DRAM(Dynamic Random-Access Memory,动态随机存储器)或几块它们的任意组合,但我们可以在逻辑上把它们看作是一块共享缓存。下文所述的共享缓存均基于逻辑上是一块存储单元来论述,而实际物理实现上可以是一块或多块存储单元的组合。
如同任何公共资源一样,多源/多用户共享一块缓存的使用需要考虑存储资源的分配与管理。
目前SoC设计中的缓存共享使用方法基本上是将共享缓存划分为N个相等大小的“片”,这个“片”的大小以能容纳下各源/各用户所需的最小数据为准,大的数据就占用整数个“片”。
这种方法的缺点是需要很大的存储空间来记录每个“片”的使用状态及存储位置信息。特别是当系统所需的最小数据的长度很小时,相对于每个“片”用于存储的空间也会随之很小,在存储大数据时,需要用到很多的“片”。另 外使用这方法还对共浪费享缓存空间,如有些数据只比整数个“片”大一点点,这就需要再单独使用一个“片”进行存储。
发明内容
本发明要解决的技术问题是提供一种能够更好的进行规划管理并能节约使用缓存空间的缓存处理方法及装置。
为解决上述技术问题,本发明的实施例提供一种缓存处理方法,包括如下步骤:
在需要缓存第一用户的第一数据时,读取当前存储起始地址;
从所述当前存储起始地址开始存储所述第一数据到缓存空间,其中,所述第一数据占用的缓存空间为第一缓存空间;
对应于所述第一用户中的第一数据,保存一包括所述第一缓存空间的起始地址和空间长度的存储位置信息,使得在需要读取所述第一数据时,能够根据所述起始地址和空间长度定位所述第一缓存空间,并从所述第一缓存空间读取所述第一数据;
更新所述当前存储起始地址为所述第一缓存空间的下一地址,使得下一个需要缓存的数据,能够从该存储起始地址开始进行缓存,从而使每个已缓存的数据都能连续占用所述缓存空间。
其中,从所述当前存储起始地址开始存储所述第一数据到缓存空间后还包括:
记录所述第一数据的空闲状态,从而根据所述空闲状态,判断所述第一数据是否被释放掉。
其中,本方法还包括:
设置一阈值,所述阈值为存储一最大数据可能需要的缓存空间大小;
若在当前存储起始地址之后的剩余缓存空间小于预设阈值,则按照预设方法对所述缓存空间的数据进行整理,并在整理之后更新每个数据的起始地址;其中,所述预设方法为:在所述缓存空间中选择一最早存储的失效数据,在其起始地址,重新对该数据之后的有效数据连续存储,直至全部有效数据都已连 续占用所述缓存空间;其中,所述失效数据为:已被释放掉的数据;所述有效数据为:未被释放掉的数据;
在整理完成后,更新所述当前存储起始地址为最后一个有效数据在所述缓存空间的下一地址。
其中,所述预设方法具体为:
在所述缓存空间中选择一最早存储的失效数据,通过其存储位置信息,获取该失效数据在所述缓存空间的起始地址,更新当前存储起始地址为所述失效数据的起始地址;
从该存储起始地址开始存储在所述失效数据之后的第一有效数据,更新第一有效数据的存储位置信息;
更新所述当前存储起始地址为所述第一有效数据所在缓存空间的下一地址,使得在其之后的下一个有效数据能够从该存储起始地址开始重新进行缓存,直至每个已缓存的有效数据都能连续占用所述缓存空间。
使得在其之后的下一个有效数据能够从该存储起始地址开始重新进行缓存,直至每个已缓存的有效数据都能连续占用所述缓存空间。
其中,本方法还包括:
对正被读取或者正被整理的有效数据进行锁定,使得一个有效数据在锁定过程中不能同时被读取与整理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210478383.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于歌词的歌曲检索系统及其检索方法
- 下一篇:滋阴补肾的中药及其制备方法