Circuit and method for learning attributes of computer memory
AssigneeDell USA, L.P.
InventorGary W. Abbott
Life of this patent
Estimating the term…
Abstract
Disclosed are a circuit and method for learning attributes of computer memory (such as cacheability and writability) in a computer system. The circuit is coupled to a central processing unit ("CPU") and memory units within the computer system. The circuit is capable of retrieving an attribute relating to performance or operation of a particular memory unit when the CPU accesses the particular memory unit and storing the attribute in random-access memory ("RAM") within the circuit, subsequent accesses by the CPU of the memory unit made more efficient by use of the stored attribute. Operation of the circuit is transparent to the CPU and the memory unit. In an alternative embodiment, the circuit is within the CPU itself.
Claims34
A computer system, comprising:
- a central processing unit (CPU) capable of operating in real and virtual addressing modes;
- a memory unit, coupled to said CPU, having a particular attribute;
- and
- a mapping circuit, coupled to said CPU and said memory unit, capable of retrieving said attribute each time said CPU accesses said memory unit and storing said attribute in said mapping circuit, subsequent accesses by said CPU of said memory unit optimized by use of said stored attribute, said mapping circuit functional in said real and virtual addressing modes.
A method of managing memory in a computer system, comprising the steps of:
- accessing a memory unit with a central processing unit (CPU) capable of operating in real and virtual addressing modes, said memory unit generating a signal representing a particular performance attribute of said memory unit each time said memory unit is accessed;
- receiving and storing said attribute in a memory-mapping circuit coupled to said CPU and said memory unit, said memory-mapping circuit functional in said real and virtual addressing modes;
- and
- retrieving said attribute from said circuit when said CPU subsequently accesses said memory unit, said retrieved attribute used to optimize said subsequent access.
A computer system, comprising:
- a central processing unit (CPU) capable of operating in real and virtual addressing modes;
- memory units coupled to said CPU via address and data buses, said memory units having corresponding attributes relating to performance of the memory units;
- a memory controller configured to generate signals representing said performance attributes each time said CPU accesses said corresponding memory units;
- a memory-mapping circuit including mapping random-access memory (RAM) and capable of receiving and storing said signal in a location within said mapping RAM corresponding to an addressable location of said memory unit, said memory-mapping circuit learning performance attributes as successive ones of said memory units are accessed and building, within said mapping RAM, a performance attribute map of said memory units, said memory-mapping circuit functional in said real and virtual addressing modes;
- and
- a write buffer, coupled to said address and data buses, capable of controlling communication of data between said CPU and said memory units and capable of retrieving said performance attributes from said map to optimize said communication, operation of said CPU and said memory units being independent of operation of said memory-mapping circuit and said write buffer.
A method of operating a computer system, comprising the steps of:
- addressing a location within a memory unit with a central processing unit (CPU) capable of operating in real and virtual addressing modes, said memory unit having a particular attribute relating to operation of said memory unit;
- establishing a path for communication of data between said CPU and said location with a memory controller, said memory controller developing a signal representing said attribute;
- receiving said attribute into a memory-mapping circuit coupled to said memory controller, said memory-mapping circuit fuctional in said real and virtual addressing modes;
- storing said attribute in an attribute map within said memory-mapping circuit, said attribute map becoming more complete as said CPU addresses other memory units within said computer system;
- retrieving said attribute from said attribute map into a write buffer when said CPU again addresses said memory unit, said write buffer using said attribute to increase efficiency of communication between said CPU and said memory unit independent of operation of said CPU and memory unit;
- and
- erasing said attribute map when said computer system is booted to thereby allow said memory-mapping circuit to dynamically learn said attribute map while said computer system functions.
Dependencies are inferred from the claim text.