Memory system having programmable multiple and continuous memory regions and method of use thereof
First Claim
1. A method of allocating and accessing a memory having first and second addressable memory regions, the method comprising:
- separating logical memory addresses of first and second allocated memory spaces into first and second portions;
allocating the first portions of the first and second memory spaces to the first addressable memory region and allocating the second portions of the first and second memory spaces to the second addressable memory region; and
remapping memory access requests to the second portion of the first and second memory spaces to the second addressable memory region.
8 Assignments
0 Petitions
Accused Products
Abstract
A memory system and method for allocating and accessing memory. The memory system includes first and second addressable memory regions coupled to a memory controller. The memory controller includes a register to store a respective offset value and values defining portions of the first and second addressable memory regions allocated to first and second logical memory spaces. A first portion of the first addressable memory region is allocated to a first requested memory space, and a second portion of the first addressable memory region is allocated to a second requested memory space. Any remaining portions of the first and second requested memory spaces are remapped to the second addressable memory region. The memory controller is adapted to access the first addressable memory region in response to receiving a memory address for a location within the first portions of the first and second memory spaces and to access the second addressable memory region in response to receiving a memory address for a location within the second portions of the first and second memory spaces.
-
Citations
37 Claims
-
1. A method of allocating and accessing a memory having first and second addressable memory regions, the method comprising:
-
separating logical memory addresses of first and second allocated memory spaces into first and second portions;
allocating the first portions of the first and second memory spaces to the first addressable memory region and allocating the second portions of the first and second memory spaces to the second addressable memory region; and
remapping memory access requests to the second portion of the first and second memory spaces to the second addressable memory region. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of allocating memory having first and second addressable memory regions that are logically contiguous, the method comprising:
-
allocating a first portion of the first addressable memory region to a first requested memory space, and a second portion of the first addressable memory region to a second requested memory space; and
mapping any remaining portions of the first and second requested memory space to the second addressable memory region. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A memory sub-system for a graphics processing system, comprising:
-
first and second addressable memory regions; and
a memory controller coupled to the first and second addressable memory regions and having a register to store for first and second logical memory spaces a respective offset value and values defining first and second portions for the respective memory space, the memory controller adapted to access the first addressable memory region in response to receiving a memory address for a location within the first portions of the first and second memory spaces and to access the second addressable memory region in response to receiving a memory address for a location within the second portions of the first and second memory spaces. - View Dependent Claims (15, 16, 17, 18)
-
-
19. A memory sub-system for a graphics processing system, comprising:
-
first and second addressable memory regions;
a register to store values defining first and second portions of a first memory space and first and second portions of a second memory space, and an offset value for each memory space; and
a memory controller coupled to the register and to the first and second addressable memory regions, the memory controller adapted to access the first and second addressable memory regions and in response to receiving a requested memory address corresponding to a logical memory address in the second portion of the first or second memory spaces, add the respective offset value to the requested memory address and access the resulting memory location. - View Dependent Claims (20, 21, 22, 23)
-
-
24. A memory system for storing graphics data in a computer graphics processing system, comprising:
-
a plurality of memory arrays having memory locations corresponding to memory addresses;
a register to store values defining allocation of the plurality of memory arrays to first and second portions of a first memory space and first and second portions of a second memory space, the register further storing an offset value for each memory space; and
a plurality of memory controllers corresponding to the plurality of memory arrays, each memory controller coupled to a memory controller bus on which memory addresses can be passed from one memory controller to the other and coupled to query the register for the stored values, each memory controller further coupled to a respective memory array and adapted to add in response to receiving a requested memory address corresponding to a logical memory address in the second portion of the first or second memory spaces a respective offset value to the requested memory address and provide the resulting address to the memory controller coupled to the memory array including the memory location corresponding to the resulting address. - View Dependent Claims (25, 26)
-
-
27. The memory system of c aim 24 wherein the plurality of memory arrays comprises first and second embedded memory arrays, and a local memory array, the register having values defining the allocation of the first embedded memory array to the first portion of the first memory space, the second embedded memory array to the first portions of the second memory space, and the local memory array to the second portions of the first and second memory spaces.
-
28. A graphics processing system, comprising:
-
a bus interface for coupling to a system bus;
a graphics processor coupled to the bus interface to process graphics data;
address and data busses coupled to the graphics processor to transfer address and graphics data to and from the graphics processor;
display logic coupled to the data bus to drive a display;
a memory request bus coupled to the data bus to drive a display;
access requests; and
a memory system coupled to the data bus to store and retrieve data, the memory system comprising;
first and second addressable memory regions; and
a memory controller coupled to the first and second addressable memory regions and having a register to store for first and second logical memory spaces a respective offset value and values defining first and second portions for the respective memory space, the memory controller adapted to access the first addressable memory region in response to receiving a memory address for a location within the first portions of the first and second memory spaces and to access the second addressable memory region in response to receiving a memory address for a location within the second portions of the first and second memory spaces. - View Dependent Claims (29, 30, 31, 32)
-
-
33. A computer system, comprising:
-
a system processor;
a system bus coupled to the system processor;
a system memory coupled to the system bus; and
a graphics processing system coupled to the system bus, the graphics processing system, comprising;
a bus interface for coupling to the system us;
a graphics processor coupled to the bus interface to process graphics data;
address and data busses coupled to th graphics processor to transfer address and graphics data to and from the graphics processor;
display logic coupled to the data bus to drive a display;
a memory request bus coupled to the graphics processor to transfer memory access requests; and
a memory system coupled to the data bus to store and retrieve data, the memory system comprising;
first and second addressable memory regions; and
a memory controller coupled to he first and second addressable memory regions and having a register to store for first and second logical memory spaces a respective offset value and values defining first and second portions for the respective memory space, the memory controller adapted to access the first addressable memory region in response to receiving a memory address for a location within the first portions of the first and second memory spaces and to access the second addressable memory region in response to receiving a memory address for a location within the second portions of the first and second memory spaces. - View Dependent Claims (34, 35, 36, 37)
-
Specification