[发明专利]一种缓存系统和方法有效
申请号: | 201310681833.4 | 申请日: | 2013-12-06 |
公开(公告)号: | CN104699627B | 公开(公告)日: | 2019-05-07 |
发明(设计)人: | 林正浩 | 申请(专利权)人: | 上海芯豪微电子有限公司 |
主分类号: | G06F12/0897 | 分类号: | G06F12/0897 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 200092 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 缓存 系统 方法 | ||
本发明提供了一种缓存系统和方法,应用于处理器领域时能区分数据缓存中位于栈区域和非栈区域的数据,并提供独立的栈缓存用于存放栈区域中的数据;在处理器核执行数据访问指令前,提前在栈缓存中分配数据存储单元,使得该数据访问指令对应的数据在栈缓存中一定命中。
技术领域
本发明涉及计算机,通讯及集成电路领域。
背景技术
通常数据缓存的作用是将更低级存储器中的部分数据内容复制在其中,使这些内容能被更高级存储器或处理器核快速存取,以保证流水线的持续运行。当前的高性能计算机/微处理器等多数使用独立的数据缓存以避免指令与数据共用同一通道的冯·诺依曼瓶颈。随着多指令发射技术的广泛应用,单数个的数据缓存也将更经常地成为限制处理器功能提高的瓶颈。
在现有技术中,数据缓存结构由数据存储器和标签存储器构成。数据存储器和标签存储器每行对应,数据存储器重存储数据,标签存储器中存储数据地址的标签,即数据地址中的高位。现行数据缓存的寻址都基于以下方式,用地址中的索引段(index)寻址读出标签存储器中的标签与地址中的标签段进行匹配;用地址中索引段与块内位移段共同寻址读出缓存中的内容。在现有技术中,存储器相邻存储行对应的的索引段寻址地址是连续的,而存储在对应的标签存储器中的标签可以是不连续的。从编译器的角度看,正在执行的目标程序在它自己的逻辑地址空间内运行,每个程序值在这个地址空间中有一个地址。一个目标程序在逻辑地址空间的运行时刻映像包含数据区和代码区。数据区又包含静态区、堆区、空闲内存和栈区。栈区用来存放称为活动记录的数据结构,这些活动记录在函数调用过程中生成。通常静态区与堆区从地址空间的低区从底向顶生长,栈区从地址空间的高区从顶向底生长,两者之间并不重叠,由空闲内存分隔。
通常处理器内的寄存器资源有限,过程调用时经常需要将寄存器原有的内容换出到存储器。过程调用结束时,调用者使用的任何寄存器都必须恢复到过程调用前所存储的值。将原来换出到存储器的内容写回到寄存器。
在现有技术中,换出/写回寄存器的最理想的数据结构是栈。栈是一种后进先出的队列。栈需要一个指针指向栈中最新分配的地址,以指示下一个过程放置换出寄存器的位置,或是寄存器旧值的存放位置。将数据放入栈中称为压栈,从栈中移除数据称为出栈。按照惯例,栈“增长”是按照地址从高到低的顺序进行的。这表明将值压栈时,栈指针值减小;而值出栈时,栈长度缩短,栈指针增大;也就是说栈内地址是连续的。
正是由于栈内地址是连续的,而存储在标签存储器中的标签又是不连续的,所以这就给缓存的查找和替换带来很大的困扰,已成为是制约现代处理器性能提升的最严重瓶颈。
本发明提出的方法与系统装置能直接解决上述或其他的一个或多个困难。
发明内容
本发明提出了一种将数据地址空间细分的方法,使得可以由复数个同一层次的数据缓存并行向处理器提供数据以缓解数据访问瓶颈。其特征在于将缓存分为栈缓存,用于存储程序运行时存储在栈区域中的数据;非栈缓存,用于存储程序运行时的其他数据;当处理器核执行的数据访问指令对应的数据位于栈区域中时,直接访问栈缓存。
可选的,在所述方法中,根据所述数据访问指令数据地址判断对应的数据位于栈区域中,还是位于非栈区域中;或根据所述数据访问指令中的基地址寄存器号判断对应的数据位于栈区域中,还是位于非栈区域中。
可选的,在所述方法中,大于或等于栈寄存器值的数据地址位于栈区域中。
可选的,在所述方法中,用栈缓存中地址连续的存储空间存储栈区域中数据地址连续的数据。
可选的,在所述方法中,用循环缓冲实现所述栈缓存。
可选的,在所述方法中,还包括:栈顶指针,指向所述栈缓存中位于栈顶位置的数据;栈底指针,所述栈底指针与所述栈顶指针保持一定距离,且两者之间的数据就是存储在所述栈缓存中的有效数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海芯豪微电子有限公司,未经上海芯豪微电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310681833.4/2.html,转载请声明来源钻瓜专利网。