SYSTEMS AND METHODS FOR PROGRAM DIRECTED MEMORY ACCESS PATTERNS
First Claim
1. A computer memory system for storing and retrieving data, the system comprising:
- a memory including a plurality of memory devices organized into one or more physical groups, wherein each group is accessible via an associated bus for transferring data and control information;
a memory controller for receiving and responding to memory access requests that include application access information to control access pattern and data organization within the memory, the responding including accessing one or more memory devices in one or more of the physical groups via the associated busses; and
a virtual memory management system including a plurality of page table entries for mapping virtual memory addresses to real addresses in the memory and also including a hint state responsive to application access information for indicating how real memory for associated pages is to be physically organized within the memory, and a means for conveying the hint state to the memory controller when a memory access request is directed to the memory controller to access the memory.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for program directed memory access patterns including a memory system with a memory, a memory controller and a virtual memory management system. The memory includes a plurality of memory devices organized into one or more physical groups accessible via associated busses for transferring data and control information. The memory controller receives and responds to memory access requests that contain application access information to control access pattern and data organization within the memory. Responding to memory access request includes accessing one or more memory devices. The virtual memory management system includes: a plurality of page table entries for mapping virtual memory addresses to real addresses in the memory; a hint state responsive to application access information for indicating how real memory for associated pages is to be physically organized within the memory; and a means for conveying the hint state to the memory controller.
119 Citations
23 Claims
-
1. A computer memory system for storing and retrieving data, the system comprising:
-
a memory including a plurality of memory devices organized into one or more physical groups, wherein each group is accessible via an associated bus for transferring data and control information; a memory controller for receiving and responding to memory access requests that include application access information to control access pattern and data organization within the memory, the responding including accessing one or more memory devices in one or more of the physical groups via the associated busses; and a virtual memory management system including a plurality of page table entries for mapping virtual memory addresses to real addresses in the memory and also including a hint state responsive to application access information for indicating how real memory for associated pages is to be physically organized within the memory, and a means for conveying the hint state to the memory controller when a memory access request is directed to the memory controller to access the memory. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A memory system comprising:
-
a plurality of busses for transferring information to memory devices; and a memory controller in communication with the busses for receiving memory access requests and for initiating an information transfer on one or more of the busses to respond to the memory access requests, wherein the memory controller determines on a cycle by cycle basis which of the busses are required to respond to each of the memory access requests based on a memory access pattern associated with each memory access request. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method for processing a read request in a memory system, the method comprising:
-
receiving a read request including a virtual address; completing a virtual address to real address mapping; forwarding the real address to a memory controller that is in communication with a plurality of busses; selecting one or more of the busses that are required to process the read request; accessing just the required busses to process the read request; reading data responsive to the read request from one or more memory devices attached to the required busses; and transmitting the data to a requestor. - View Dependent Claims (18, 19, 20)
-
-
21. A method for processing a write request in a memory system, the method comprising:
-
receiving a write request including application access information at a memory controller that is in communication with a plurality of busses; selecting one or more of the busses that are required to process the write request, the selecting responsive to the application access information; accessing just the required busses to process the write request; and writing data responsive to the write request to one or more memory devices attached to the required busses. - View Dependent Claims (22, 23)
-
Specification