地址转换方法和设备技术

技术编号:4472418 阅读:376 留言:0更新日期:2012-04-11 18:40
通过识别引起存储器中的不同页之间的边界跨越的地址且链接与两个存储器页相关联的地址转换信息而改进处理器内的地址转换性能。根据处理器的一个实施例,所述处理器包含经配置以辨识对跨越第一存储器页与第二存储器页之间的页边界的存储器区域的存取的电路。所述电路还经配置以链接与所述第一存储器页和第二存储器页相关联的地址转换信息。因此,响应于对相同存储器区域的后续存取,可基于单一地址转换来检索与所述第一存储器页和第二存储器页相关联的所述地址转换信息。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术大体上涉及地址转换,且特定来说,涉及转换产生存储器页边界跨越情况的 虚拟地址。
技术介绍
虚拟存储器是借以可能将非连续物理存储器(物理地址空间)作为连续存储器(虚 拟地址空间)呈现给进程(软件)的存储器管理技术。即使所分配的物理存储器并不 总是被循序地组织的(乃至在相同媒体中,例如,SDRAM和ROM),但由于其处理连 续的虚拟地址空间,因此进程将存储器视作线性序列。另外,程序通常不知道物理存储 器如何被分配。而是,处理器或其它装置常规上管理虚拟存储器分配。存储器管理将物理存储器划分为多个页(或区段)且提供虚拟地址到实际物理存储 器页上的映射,所述映射对于存取存储器的过程是透明的。过程仅观察虚拟地址空间, 而物理地址空间为对应数据实际上驻存于存储器中的地方。处理器常规上使用地址转换 将虚拟地址空间映射到物理地址空间上。地址转换涉及基于给定虚拟地址查找物理地 址。虚拟地址常规上被划分为至少两部分虚拟页号和页偏移。虚拟页号识别虚拟存储 器的特定页。页偏移识别页内的所要区域(或块)。主存储器中所维持的页表常规上存储虚拟页号和对应物理页号的列表。使用虚拟地 址的虚拟页号部分来搜索页表。如果虚拟页号与页表中的条目匹配,则从表检索对应的 物理页号。否则,出现页表错误。所检索的物理页号与页偏移一起形成用于从存储器检 索信息的物理地址。页号识别物理存储器的适当页。随后使用页偏移来存取页内的所要 存储器区域。为了改进性能,频繁存取的页表条目在本地存储到处理器,例如,转换旁视缓冲器 (TLB)中。TLB可支持单级本地高速缓冲存储器或多个高速缓冲存储器级,例如,一 级指令和数据高速缓冲存储器和二级高速缓冲存储器。在任何情况下,TLB以与页表执 行的方式大致相同的方式执行地址转换。如果在使用虚拟页号的TLB查找期间出现匹 配,则从TLB检索对应的物理页号且与页偏移一起提供到物理标记的高速缓冲存储器。 如果物理地址在高速缓冲存储器中命中,则从高速缓冲存储器检索对应于物理地址的高速缓冲存储器线。否则,可出现较高级高速缓冲存储器査找。虚拟存储器使得程序能够执行而不需要其全部地址空间驻存于物理存储器中。因 此,可使用比实际所需少的物理存储器来执行程序。此外,由于每一程序的虚拟地址空 间可独立地映射到物理存储器的专门分配到那个程序的一个或一个以上页,因此虚拟存 储器使程序彼此隔离。而且,由于应用程序不对存储器管理负责,因此简化了应用程序。 然而,某些类型的存储器存取需要额外的地址转换处理以成功地完成。举例来说,当出现未对准的存储器存取时,所要字部分位于一个存储器行中且部分 位于另一存储器行中。如果两行被分配到不同存储器页,则出现页边界跨越。参考存储 器中的跨越两个存储器页之间的边界的区域的指令常规上被复制且以两部分执行。经复 制指令的第一页片基于与第一存储器页相关联的物理地址完成执行,且经复制指令的第 二页片基于与第二存储器页相关联的地址完成执行。因此,通过复制指令单独存取不同 存储器页。常规上需要多个地址转换以获得与不同存储器页相关联的物理存储器地址。执行第 一地址转换以检索与第一存储器页相关联的物理地址且执行第二地址转换以检索与第 二存储器页相关联的物理地址。产生边界跨越情况的指令所需的额外地址转换处理降低 了处理器性能且增加了功率消耗,尤其在需要存取主存储器中所维持的页表时。
技术实现思路
根据本文中所教示的方法和设备,通过识别引起存储器中的不同页之间的边界跨越 的虚拟或物理地址来改进处理器内的地址转换性能。即,如果指令将引起也跨越页边界 的未对准的存储器存取,则识别指令。当辨识此情况时,将与两个存储器页相关联的地址转换信息链接在一起且存储于处理器内。可响应于随后存取存储器中的相同跨页区域 而使用单一地址转换来获得与两个页相关联的地址转换信息。因此,避免多个地址转换。根据处理器的一个实施例,所述处理器包含经配置以辨识对存储器中的跨越第一存 储器页与第二存储器页之间的页边界的区域的存取的电路。所述电路还经配置以链接与 第一存储器页和第二存储器页相关联的地址转换信息。因此,响应于对相同存储器区域 的后续存取,可基于单一地址转换来检索与第一存储器页和第二存储器页相关联的地址 转换信息。当随后存取存储器中的相同区域时,处理器电路辨识对应指令且将由指令呈现的虚 拟地址转换为与第一存储器页相关联的物理地址。电路基于将虚拟地址链接到与第二存 储器页相关联的物理地址的先前所建立信息来检索与第二存储器页相关联的物理地址。因此,基于单一地址转换来检索与第一存储器页和第二存储器页相关联的地址转换信 息。当然,本专利技术不限于以上特征和优点。所属领域的技术人员在阅读详细描述且在观 看附图后将认识到额外特征和优点。附图说明图1为说明具有用于在地址转换期间跟踪页边界跨越的电路的处理器的实施例的框图。图2为说明图1的跨页跟踪电路的一个实施例的框图。图3为说明用于将地址转换信息存储于图1的跨页跟踪电路中的程序逻辑的实施例 的逻辑流程图。图4为说明用于从图1的跨页跟踪电路检索地址转换信息的程序逻辑的实施例的逻 辑流程图。图5为说明图1的跨页跟踪电路的另一实施例的框图。 具体实施例方式图1说明处理器10的实施例,处理器IO包括指令单元12、执行单元14、数据高 速缓冲存储器16和指令高速缓冲存储器18、 二级高速缓冲存储器20和总线接口单元 22。指令单元12将指令流的集中控制提供到执行单元14。执行单元14执行由指令单元 12派遣的指令,其包括将信息加载并存储于数据高速缓冲存储器16中。数据高速缓冲 存储器16和指令高速缓冲存储器18分别存储数据和指令。L2高速缓冲存储器20在数 据高速缓冲存储器16和指令高速缓冲存储器18与处理器外部的主存储器(例如DRAM 24)和/或一个或一个以上硬盘驱动器(HDD) 26之间提供高速存储器缓冲器。总线接 口单元22提供用于在处理器10与处理器外部的装置(例如外围装置28和主存储器) 之间传递数据、指令、地址和控制信号的机构。主存储器被表示为处理器10上运行的程序的虚拟存储器。g卩,主存储器的页被分 配为虚拟存储器以供程序执行期间由程序使用。存储器管理将物理存储器划分为多个 页,且提供虚拟地址到物理存储器页上的映射,其对于存取存储器的程序是透明的。页 表(未图示)维持在主存储器中以用于实现虚拟存储器地址与物理存储器地址之间的映 射。存储器管理单元(MMU) 30或包括于处理器10中的类似装置将频繁或最近参考的 页表条目维持在处理器IO本地处以用于改进地址转换性能。为此,包括于MMU 30中或与MMU 30相关联的转换旁视缓冲器(TLB) 32存储 最频繁或最近存取的页表条目。由TLB 32在处理器10内在本地执行地址转换。如果 TLB条目与给定虚拟页号匹配,则TLB 32提供对应的物理页号。否则,经由维持于主 存储器中的页表通常由操作系统软件来执行较高级地址转换。包括于MMU 30中或与 MMU 30相关联的跨页跟踪器34通过减少经执行以协调跨越存储器页边界的未对准的 存储器存取的地址转换数目来改进地址转换性能。跨页跟踪器34存储与产生页边界跨越情况的一个或一个以上虚拟地址或物理地址 相关联的地址转换信息。即本文档来自技高网
...

【技术保护点】
一种在处理器中处置未对准的存储器存取的方法,其包含: 辨识对存储器中的跨越第一存储器页与第二存储器页之间的页边界的区域的存取;以及 链接与所述第一存储器页和第二存储器页相关联的地址转换信息,其中响应于对存储器中的相同区域的后续存 取,可基于单一地址转换来检索与所述第一存储器页和第二存储器页相关联的所述地址转换信息。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:布赖恩约瑟夫科佩茨维克托罗伯茨奥格斯堡詹姆斯诺里斯迪芬德尔费尔托马斯安德鲁萨托里乌斯
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1