Apparatus to map virtual pages to disparate-sized, non-contiguous real pages and methods relating thereto
    51.
    发明授权
    Apparatus to map virtual pages to disparate-sized, non-contiguous real pages and methods relating thereto 失效
    用于将虚拟页面映射到不同大小的非连续真实页面的方法以及与其相关的方法

    公开(公告)号:US06970992B2

    公开(公告)日:2005-11-29

    申请号:US10457951

    申请日:2003-06-09

    IPC分类号: G06F12/10 G06F13/14

    摘要: A data processing system includes at least one system processor, chipset core logic, main memory to store computer software and data including operating system software, and a graphics address remapping table (GART). The chipset logic operates on first-sized real memory pages, while the operating system operates on larger, second-sized virtual memory pages. In an embodiment GART driver software maps each virtual page to Z continuous or non-contiguous real pages by filling up the GART with Z entries per virtual page, where Z is the rounded integer number of first-sized pages per second-sized page. In another embodiment, an address translation function converts a target address, corresponding to an address within a virtual page, issuing from a processor into a second address, corresponding to a base address of a real page in main memory. Also described are an integrated circuit and a computer-readable medium to map memory pages of disparate sizes.

    摘要翻译: 数据处理系统包括至少一个系统处理器,芯片组核心逻辑,用于存储计算机软件的主存储器和包括操作系统软件的数据和图形地址重映射表(GART)。 芯片组逻辑在第一大实际存储器页面上操作,而操作系统在较大的第二大虚拟存储器页面上操作。 在一个实施例中,GART驱动器软件通过用每个虚拟页面的Z条目填充GART来将每个虚拟页面映射到Z个连续或不连续的真实页面,其中Z是每秒大小页面的第一页尺寸的舍入整数。 在另一个实施例中,地址转换功能将对应于虚拟页面中的地址的目标地址转换成与主存储器中的真实页面的基地址对应的从处理器发送到第二地址。 还描述了用于映射不同大小的存储器页面的集成电路和计算机可读介质。

    Computer system with virtual memory and paging mechanism
    52.
    发明授权
    Computer system with virtual memory and paging mechanism 有权
    具有虚拟内存和分页机制的计算机系统

    公开(公告)号:US06970991B2

    公开(公告)日:2005-11-29

    申请号:US10241178

    申请日:2002-09-11

    申请人: Philip Harman

    发明人: Philip Harman

    IPC分类号: G06F9/50 G06F12/08 G06F12/10

    摘要: A computer system supports virtual memory and a paging mechanism. When a new process is created, this occupies one or more memory region. In one embodiment, at least a first memory region occupied by the process at a first virtual address has predefined, fixed, page characteristics (for example page size). It turns out that these are not optimum for the performance of the process. In order to address this, a routine in a shared library is invoked to copy the component from the first memory region into a second memory region. The second memory region either has different page characteristics from the first memory region (for example, a different page size), or is modifiable to have such different page characteristics. The second memory region is reallocated in virtual memory so that it replaces the first memory region at the first virtual address. The overall consequence of this is that at least one component of the process can now operate at a more suitable page characteristic (such as page size), thereby leading to improved performance.

    摘要翻译: 计算机系统支持虚拟内存和分页机制。 当创建新进程时,它占用一个或多个内存区域。 在一个实施例中,由第一虚拟地址处理所占据的至少第一存储器区域具有预定义的,固定的页面特性(例如页面大小)。 事实证明,这些过程的性能不是最佳的。 为了解决这个问题,调用共享库中的例程以将组件从第一存储器区域复制到第二存储器区域中。 第二存储器区域具有与第一存储器区域不同的页面特性(例如,不同的页面大小),或者可修改为具有这样的不同页面特性。 第二存储器区域被重新分配在虚拟存储器中,使得其替换第一虚拟地址处的第一存储器区域。 这样做的总体结果是,该过程的至少一个组件现在可以在更合适的页面特性(例如页面大小)上操作,从而导致改进的性能。

    Demotion of memory pages to largest possible sizes
    53.
    发明申请
    Demotion of memory pages to largest possible sizes 失效
    将内存页面降级到最大可能的大小

    公开(公告)号:US20050223321A1

    公开(公告)日:2005-10-06

    申请号:US10818103

    申请日:2004-04-05

    IPC分类号: G06F12/02 G06F12/10 G06F17/24

    摘要: Various approaches for demoting a memory page are described. In one approach, a first new page is established from a subpage of a base page in response to a request to demote a specified subpage. The size of the first new page is selected from a plurality of page sizes. For each portion of the base page less the first new page, the portion is divided into one or more pages of a selected size. The selected size for the pages is a largest of the plurality of page sizes that is less than or equal to the size of the portion. If the new one or more pages do not encompass the entire portion, a new feasible, largest of the sizes is selected and the part of the portion not encompassed is further divided into one or more pages.

    摘要翻译: 描述用于降级存储器页面的各种方法。 在一种方法中,响应于降低指定子页面的请求,从基页的子页面建立第一新页面。 从多个页面大小中选择第一个新页面的大小。 对于基页的每个部分少于第一新页面,该部分被分成一个或多个所选尺寸的页面。 页面的所选大小是小于或等于部分大小的多个页面大小中最大的页面大小。 如果新的一个或多个页面不包含整个部分,则选择新的可行的,最大的尺寸,并且未包含的部分的部分被进一步分为一个或多个页面。

    Method of efficiently handling multiple page sizes in an effective to real address translation (ERAT) table
    54.
    发明申请
    Method of efficiently handling multiple page sizes in an effective to real address translation (ERAT) table 失效
    在有效到真实地址转换(ERAT)表中有效处理多个页面大小的方法

    公开(公告)号:US20050125623A1

    公开(公告)日:2005-06-09

    申请号:US10730953

    申请日:2003-12-09

    IPC分类号: G06F12/10 G06F12/00

    CPC分类号: G06F12/1027 G06F2212/652

    摘要: A method and apparatus for efficiently storing an effective address (EA) in an effective to real address translation (ERAT) table supporting multiple page sizes by adding PSI fields, based on the number of unique page sizes supported, to each ERAT entry and using one ERAT entry to store an EA for a memory page, regardless of page size, by setting the PSI fields to indicate the page size.

    摘要翻译: 一种方法和装置,用于通过基于所支持的唯一页面大小的数目添加PSI字段来有效地将有效地址(EA)存储在支持多个页面大小的有效到真实地址转换(ERAT)表中,并且使用一个 ERAT条目通过设置PSI字段来指示页面大小,无论页面大小如何,都可以存储内存页面的EA。

    System and method for resolving virtual addresses using a page size tag
    55.
    发明申请
    System and method for resolving virtual addresses using a page size tag 有权
    使用页面大小标签来解析虚拟地址的系统和方法

    公开(公告)号:US20050027961A1

    公开(公告)日:2005-02-03

    申请号:US10632131

    申请日:2003-07-31

    申请人: David Zhang

    发明人: David Zhang

    IPC分类号: G06F12/08 G06F12/10

    摘要: A method and system for resolving virtual addresses using a page size tag are described herein. In one embodiment, the method comprises translating a virtual memory address into physical memory address. According to the method, the translating includes producing a first page size tag and choosing an entry in a translation lookaside buffer, wherein the entry stores a second page size tag and a page frame number. The method also includes comparing the first page size tag with the second page size tag. The method also includes using the page frame number to form the physical memory address, if the first page size tag is less than or equal to the second page size tag.

    摘要翻译: 这里描述了使用页面大小标签来解析虚拟地址的方法和系统。 在一个实施例中,该方法包括将虚拟存储器地址转换为物理存储器地址。 根据该方法,翻译包括产生第一页面尺寸标签并选择翻译后备缓冲器中的条目,其中该条目存储第二页面大小标签和页面帧号码。 该方法还包括将第一页大小标签与第二页大小标签进行比较。 如果第一页大小标签小于或等于第二页大小标签,则该方法还包括使用页框号来形成物理存储器地址。

    Relocation table for use in memory management
    56.
    发明授权
    Relocation table for use in memory management 有权
    用于内存管理的重定位表

    公开(公告)号:US06795907B2

    公开(公告)日:2004-09-21

    申请号:US09896157

    申请日:2001-06-28

    IPC分类号: G06F1210

    CPC分类号: G06F12/10 G06F2212/652

    摘要: The present invention, in various embodiments, provides techniques for managing memory in computer systems. In one embodiment, each memory page is divided into relocation blocks located at various physical locations, and a relocation table is created with entries used to locate these blocks. To access memory for a particular piece of data, a program first uses a virtual address of the data, which, through a translation look-aside buffer, is translated into a physical address within the computer system. Using the relocation table, the physical address is then translated to a relocation address that identifies the relocation block containing the requested data. From the identified relocation block, the data is returned to the program.

    摘要翻译: 在各种实施例中,本发明提供了用于管理计算机系统中的存储器的技术。 在一个实施例中,每个存储器页面被划分为位于各种物理位置处的重定位块,并且创建具有用于定位这些块的条目的重定位表。 为了访问特定数据片段的存储器,程序首先使用数据的虚拟地址,数据的虚拟地址通过翻译后备缓冲器被翻译成计算机系统内的物理地址。 使用重定位表,物理地址被转换为标识包含所请求数据的重定位块的重定位地址。 从识别的重定位块中,将数据返回给程序。

    Data processor and data processor system having multiple modes of address indexing and operation
    57.
    发明授权
    Data processor and data processor system having multiple modes of address indexing and operation 有权
    数据处理器和数据处理器系统具有多种地址索引和操作模式

    公开(公告)号:US06532528B1

    公开(公告)日:2003-03-11

    申请号:US09563753

    申请日:2000-05-01

    IPC分类号: G06F1210

    CPC分类号: G06F12/1027 G06F2212/652

    摘要: A data processor in which a speed of an address translating operation is raised is disclosed. A translation lookaside buffer is divided into a buffer for data and a buffer for instruction, address translation information for instruction is also stored into a translation lookaside buffer for data, and when a translation miss occurs in a translation lookaside buffer for instruction, new address translation information is fetched from the translation lookaside buffer for data. A high speed of the address translating operation can be realized as compared with that in case of obtaining address translation information from an external address translation table each time a translation miss occurs in the translation lookaside buffer for instruction.

    摘要翻译: 公开了一种提高地址转换操作速度的数据处理器。 翻译后备缓冲区被分为用于数据的缓冲器和用于指令的缓冲器,用于指令的地址转换信息也被存储到用于数据的翻译后备缓冲器中,并且当用于指令的翻译后备缓冲器中发生翻译错误时,新的地址转换 从数据的翻译后备缓冲区中提取信息。 与每次在用于指令的翻译后备缓冲器中发生翻译缺口时从外部地址转换表获得地址转换信息的情况相比,可以实现地址转换操作的高速度。

    Apparatus and method for virtual address aliasing and multiple page size support in a computer system having a prevalidated cache
    58.
    发明授权
    Apparatus and method for virtual address aliasing and multiple page size support in a computer system having a prevalidated cache 有权
    具有预验证缓存的计算机系统中的虚拟地址混叠和多页大小支持的装置和方法

    公开(公告)号:US06493812B1

    公开(公告)日:2002-12-10

    申请号:US09465722

    申请日:1999-12-17

    申请人: Terry L Lyon

    发明人: Terry L Lyon

    IPC分类号: G06F1210

    CPC分类号: G06F12/1054 G06F2212/652

    摘要: A computer micro-architecture employing a prevalidated cache tag design includes circuitry to support virtual address aliasing and multiple page sizes. Support for various levels of address aliasing are provided through a physical address CAM, page size mask compares and a column copy tag function. Also supported are address aliasing that invalidates aliased lines, address aliasing with TLB entries with the same page sizes, and address aliasing the TLB entries of different sizes. Multiple page sizes are supported with extensions to the prevalidated cache tag design by adding page size mask RAMs and virtual and physical address RAMs.

    摘要翻译: 采用预先验证的高速缓存标签设计的计算机微架构包括支持虚拟地址混叠和多页大小的电路。 通过物理地址CAM,页面大小掩码比较和列复制标签功能提供对各种地址混叠的支持。 还支持地址别名,使别名行无效,使用具有相同页大小的TLB条目进行地址混叠,以及对不同大小的TLB条目进行地址混叠。 通过添加页面大小的掩码RAM和虚拟和物理地址RAM,可以对预先生效的缓存标签设计进行扩展,支持多页大小。

    Method and apparatus for overlapping programmable address regions
    59.
    发明授权
    Method and apparatus for overlapping programmable address regions 有权
    用于重叠可编程地址区域的方法和装置

    公开(公告)号:US06484227B1

    公开(公告)日:2002-11-19

    申请号:US09379015

    申请日:1999-08-23

    IPC分类号: G06F1200

    摘要: A flexible address mapping method and mechanism allows mapping regions of a microcontroller's memory and I/O address spaces for a variety of applications by defining memory regions which are mapped to one of a set of physical devices by a programmable address mapper controlled by a set of programmable address registers. The mapping allows setting attributes for a memory region to prohibit writes, caching, and code execution. A deterministic priority scheme allows memory regions to overlap, mapping addresses in overlapping regions to the device specified by the highest priority programmable address register.

    摘要翻译: 灵活的地址映射方法和机制允许通过定义由一组可编程地址映射器映射到一组物理设备中的一个的存储区域来映射微控制器的存储器和I / O地址空间用于各种应用的区域 可编程地址寄存器。 映射允许设置内存区域的属性来禁止写入,缓存和代码执行。 确定性优先级方案允许存储器区域重叠,将重叠区域中的地址映射到由最高优先级可编程地址寄存器指定的设备。

    Virtual address bypassing using local page mask
    60.
    发明授权
    Virtual address bypassing using local page mask 有权
    虚拟地址绕过本地页面掩码

    公开(公告)号:US06446187B1

    公开(公告)日:2002-09-03

    申请号:US09507432

    申请日:2000-02-19

    IPC分类号: G06F1200

    摘要: A cache with a translation lookaside buffer (TLB) that reduces the time required for retrieval of a physical address from the TLB when accessing the cache in a system that supports variable page sizing. The TLB includes a content addressable memory (CAM) containing the virtual page numbers corresponding to pages in the cache and a random access memory (RAM) storing the physical page numbers of the pages corresponding to the virtual page numbers in the CAM. The physical page number RAM stores a page mask along with the physical page numbers, and includes local multiplexers which perform virtual address bypassing of the physical page number when the page has been masked.

    摘要翻译: 具有翻译后备缓冲器(TLB)的高速缓存,用于在支持可变页大小的系统中访问缓存时,减少从TLB检索物理地址所需的时间。 TLB包括包含对应于缓存中的页面的虚拟页码的内容可寻址存储器(CAM)和存储与CAM中的虚拟页码对应的页面的物理页码的随机存取存储器(RAM)。 物理页码RAM与物理页码一起存储页面掩码,并且包括在页面被屏蔽时执行物理页码的虚拟地址旁路的本地多路复用器。