[发明专利]存储器缓存架构中的CPU在审
申请号: | 201180056389.6 | 申请日: | 2011-12-04 |
公开(公告)号: | CN103221929A | 公开(公告)日: | 2013-07-24 |
发明(设计)人: | 拉塞尔·汉米尔顿·菲什 | 申请(专利权)人: | 拉塞尔·汉米尔顿·菲什 |
主分类号: | G06F12/08 | 分类号: | G06F12/08;G06F13/14 |
代理公司: | 北京英赛嘉华知识产权代理有限责任公司 11204 | 代理人: | 余朦;杨莘 |
地址: | 美国得*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 存储器 缓存 架构 中的 cpu | ||
拉塞尔·汉米尔顿·菲什
代理人案号:FIS10-03
技术领域
本发明一般涉及存储器缓存架构中的CPU,更具体地,涉及存储器交叉式缓存架构中的CPU。
背景技术
在微处理器(术语“微处理器”在本文中也被等同地称为“处理器”、“核”和中央处理单元“CPU”)中,使用在具有8层或更多层的金属互连的管芯(die)(术语“管芯”和“芯片(chip)”在本文中等同地使用)上连接在一起的互补金属氧化物半导体(CMOS)晶体管来实现传统(legacy)计算机架构。另一方面,存储器典型地被制造在具有三层或更多层的金属互连的管芯上。缓存是物理地位于计算机的主存储器与中央处理单元(CPU)之间的快速存储结构。因为实现传统缓存系统需要大量晶体管,所以传统缓存系统(在下文中称为“传统缓存”)消耗大量功率。缓存的目的在于缩短用于数据存取和指令执行的有效的存储器存取时间。在涉及竞争更新和数据获取和指令执行的极高交易量环境中,经验表明经常被存取的指令和数据倾向于物理定位于靠近存储器中其它经常被存取的指令和数据,并且最近被存取的指令和数据通常被重复地存取。缓存通过在物理靠近于CPU的存储器中维持可能被存取的指令和数据的冗余副本来利用这种空间和时间的局域性。
传统缓存通常将“数据缓存”定义成不同于“指令缓存”。这些缓存拦截CPU存储器请求,确定缓存中是否存在目标数据或指令,并且以缓存读取或写入作出响应。缓存读取或写入会比关于外部存储器(即,诸如外部DRAM、SRAM、闪存和/或磁带或磁盘上的存储装置,在下文中共同称为“外部存储器”)读取或写入快很多倍。如果所请求的数据或指令没有存在于缓存中,则发生缓存“缺失(miss)”,导致将所需的数据或指令从外部存储器转移至缓存。单级缓存的有效存储器存取时间是“缓存存取时间”ד缓存命中率”+“缓存缺失代价”ד缓存缺失率”。有时,多级缓存被用于更多地减少有效存储器存取时间。每个更高级的缓存的尺寸逐渐变大并且与逐渐更大的缓存“缺失”代价关联。典型的传统微处理器可具有1-3CPU时钟周期的1级缓存存取时间、8-20时钟周期的2级存取时间和80-200时钟周期的芯片外存取时间。
传统指令缓存的加速机制是基于对空间和时间局域性(即,缓存回路的存储器并且重复地调用类似系统日期、登录/登出等的函数)。回路内的指令从外部存储器被一次提取并被存储在指令缓存中。通过回路的第一执行因为首先从外部存储器提取回路指令的代价而成为最慢的。然而,随后经过回路的每个执行直接从缓存提取指令,这会快得多。
传统缓存逻辑将存储器地址翻译为缓存地址。每个外部存储器地址必须与列出已保持在缓存中的存储器位置的行的表进行比较。此比较逻辑通常被实现为内容可寻址存储器(CAM)。不同于用户提供存储器地址并且RAM返回存储在该地址处的数据字的标准计算机随机存取存储器(即,“RAM”、“DRAM”、SRAM、SDRAM等,在本文中共同被等同地称为“RAM”或“DRAM”或“外部存储器”或“存储器”),CAM被设计成使得用户提供数据字,并且CAM搜寻其整个存储器以查看该数据字是否被存储于其中的任何位置。如果找到该数据字,则CAM返回一个或多个发现该字的存储器地址的列表(在一些架构中,其还返回数据字本身、或者其它关联的数据片)。因此,CAM是在软件术语被称为“关联阵列”的硬件等同。比较逻辑是复杂且缓慢的,并且随着缓存的尺寸的增加而复杂度增加且速度降低。这些“关联缓存”在复杂度和速度之间权衡以得到改进的缓存命中率。
传统操作系统(OS)实现虚拟存储器(VM)管理以使得少量的物理存储器对于程序/用户表现为大得多的存储器。VM逻辑使用间接寻址以将用于非常大量的存储器的VM地址翻译为物理存储器位置的小得多的子集的地址。间接提供了在指令、例程和对象的物理位置恒定变化时存取指令、例程和对象的方式。初始例程指向某一存储器地址,并且该存储器地址使用硬件和/或软件指向某一其它存储器地址。可存在多级间接。例如,指向A,A指向B,B指向C。物理存储器位置由称为“页框”或简单地称为“框”的连续存储器的大小固定的块组成。当选择供执行的程序时,VM管理器将程序带入虚拟存储器中,将其划分至固定块大小(即,例如4千字节“4K”)的页中,然后将这些页转移至主存储器用于执行。对于编程者/用户,整个程序和数据看起来一直占据主存储器中的连续空间。然而,实际上,并非程序或数据的所有页必须同时在主存储器中,并且在任意特定时间点处于主存储器中的页未必占据连续的空间。因此,在虚拟存储器外执行/存取的程序和数据块在如下执行/存取之前、之中或之后,按需要通过VM管理器在实际与辅助存储器之间往复移动:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于拉塞尔·汉米尔顿·菲什,未经拉塞尔·汉米尔顿·菲什许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201180056389.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:三维聚焦防散射栅格及其制造方法
- 下一篇:带有漫射光输入界面的光导