← Back to Patent Explorer
US4763250A Expired / Lapsed US ⏱️ 0.0 years remaining

Paged memory management unit having variable number of translation table levels

Assignee: NXP USA Inc
•
Filing: 1985-04-01
•
Granted: 1988-08-09
•
Expires: 2005-04-01
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract In a paged memory management unit (PMMU), a translation control (TC) register contains a set of table indexes which define the number of bits of the logical address to be used to access the translation table at the respective levels. The TC register also contains an initial shift field which defines the number of high order bits of the logical address to be discarded before an address translation, and a page size field which defines the number of low order bits of the logical address comprising the page address. Each descriptor in each translation table contains a descriptor type field which defines whether that particular descriptor is a translation descriptor or a pointer descriptor. If a pointer descriptor is encountered at a table level other than the lowest level, the translation table walk is terminated early and the translation performed using that pointer descriptor. In general, a table may occupy either the lower or upper portions of the page in which such table is stored. Each descriptor contains a lower/upper (L/U) bit which defines the relative displacement of the next-lower table relative to the specified table address. If a table is addressed outside the appropriate range, the PMMU will not abort the table walk and bus error the access.

Inventors

  • 👤 William M. Keshlear
  • 👤 William C. Moyer
  • 👤 John Zolnowsky

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 14:06
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/10; G06F12/1009; G06F2212/00; G06F2212/65; G06F2212/652

Claims Analysis

Total Claims: 10
Claim 1
Independent Claim 188 words
In a paged memory management unit (PMMU) for use in a data processing system which operates under the control of an operating system, the PMMU selectively translating each logical address provided by the data processing system into a respective physical address in a memory using one of a plurality of translation descriptors constructed by said operating system and stored in said memory, each translation descriptor being addressable in said memory using a respective one of a plurality of pointer descriptors constructed by said operating system and stored in said memory, the improvement: wherein said pointer descriptor includes a descriptor type field for storing a first value provided by said operating system if said pointer descriptor is constructed by said operating system to comprise a pointer descriptor and a second value provided by said operating system if said pointer descriptor is constructed by said operating system to comprise a translation descriptor; and wherein said PMMU translates said logical address into the respective physical address using said pointer descriptor as said one of said translation descriptors if said second value is stored in said type field of said pointer descriptor.
Claim 2
Dependent Claim 188 words
In a paged memory management unit (PMMU) for use in a data processing system which operates under the control of an operating system, the PMMU selectively translating each logical address provided by the data processing system into a respective physical address in a memory using one of a plurality of translation descriptors constructed by said operating system and stored in said memory, each translation descriptor being addressable in said memory using a respective one of a plurality of pointer descriptors constructed by said operating system and stored in said memory, the improvement: wherein said pointer descriptor includes a descriptor type field for storing a first value provided by said operating system if said pointer descriptor is constructed by said operating system to comprise a pointer descriptor and a second value provided by said operating system if said pointer descriptor is constructed by said operating system to comprise a translation descriptor; and wherein said PMMU translates said logical address into the respective physical address using said pointer descriptor as said one of said translation descriptors if said second value is stored in said type field of said pointer descriptor.
Claim 3
Dependent Claim 51 words
The PMMU of claim 1 wherein each of said plurality of said translation descriptors is constructed by said operating system to include a pointer address, and wherein the PMMU translates said logical address into said respective physical address by substituting said logical address for a corresponding portion of said pointer address.
Claim 4
Dependent Claim 99 words
The PMMU of claim 1 wherein each of said plurality of said pointer descriptors is constructed by said operating system to include a pointer address, and wherein, if said first value is stored in said type field of said pointer descriptor, said PMMU calculates the address in said memory of said one of said translation descriptors by adding to said pointer address a selected portion of said logical address, and then translates the remaining portion of said logical address into the respective physical address using as said one of said translation descriptors the translation descriptor at said calculated address.
Claim 5
Dependent Claim 62 words
The PMMU of claim 3 wherein each of said plurality of said translation descriptors is constructed by said operating system to include a pointer address, and wherein the PMMU translates said logical address into said respective physical address by substituting said remaining portion of said logical address for a corresponding portion of the pointer address in said one of said translation descriptors.
Claim 6
Dependent Claim 188 words
In a paged memory management unit (PMMU) for use in a data processing system which operates under the control of an operating system, the PMMU selectively translating each logical address provided by the data processing system into a respective physical address in a memory using one of a plurality of translation descriptors constructed by said operating system and stored in said memory, each translation descriptor being addressable in said memory using a respective one of a plurality of pointer descriptors constructed by said operating system and stored in said memory, the method comprising the steps of: storing in a descriptor type field of said pointer descriptor a first value provided by said operating system if said pointer descriptor is constructed by said operating system to comprise a pointer descriptor and a second value provided by said operating system if said pointer descriptor is constructed by said operating system to comprise a translation descriptor; and translating said logical address into the respective physical address using said pointer descriptor as said one of said translation descriptors if said second value is stored in said type field of said pointer descriptor.
Claim 7
Dependent Claim 188 words
In a paged memory management unit (PMMU) for use in a data processing system which operates under the control of an operating system, the PMMU selectively translating each logical address provided by the data processing system into a respective physical address in a memory using one of a plurality of translation descriptors constructed by said operating system and stored in said memory, each translation descriptor being addressable in said memory using a respective one of a plurality of pointer descriptors constructed by said operating system and stored in said memory, the method comprising the steps of: storing in a descriptor type field of said pointer descriptor a first value provided by said operating system if said pointer descriptor is constructed by said operating system to comprise a pointer descriptor and a second value provided by said operating system if said pointer descriptor is constructed by said operating system to comprise a translation descriptor; and translating said logical address into the respective physical address using said pointer descriptor as said one of said translation descriptors if said second value is stored in said type field of said pointer descriptor.
Claim 8
Dependent Claim 62 words
The PMMU of claim 5 wherein each of said plurality of said translation descriptors is constructed by said operating system to include a pointer address, and wherein the step of translating said logical address into said respective physical address comprises substituting said remaining portion of said logical address for a corresponding portion of the pointer address in one of said translation descriptors.
Claim 9
Dependent Claim 102 words
The PMMU of claim 5 wherein each of said plurality of said pointer descriptors is constructed by said operating system to include a pointer address, and wherein, if said first value is stored in said type field of said pointer descriptor, said step of translating further comprises calculating the address in said memory of said one of said translation descriptors by adding to said pointer address a portion of said logical address, and then translating the remaining portion of said logical address into the respective physical address using as said one of said translation descriptors the translation descriptor at said calculated address.
Claim 10
Dependent Claim 63 words
The PMMU of claim 7 wherein each of said plurality of said translation descriptors is constructed by said operating system to include a pointer address, and wherein the step of translating said logical address into said respective physical address comprises substituting said remaining portion of said logical address for a corresponding portion of the pointer address in said one of said translation descriptors.

References Cited (Backward Citations)

US3657705A Cited
US4128875A Cited
US4615006A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1991-08-09 1992-02-08 1992-08-09 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1995-08-09 1996-02-08 1996-08-09 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1999-08-09 2000-02-08 2000-08-09 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag