Configurable memory manager
First Claim
1. A configurable memory manager, comprising:
- a first plurality of ports, each port of the first plurality arranged to receive requests for accessing a plurality of memories, and each port of the first plurality being independently configurable to specify one of a first plurality of data widths of the port;
a second plurality of ports, each port of the second plurality arranged to access a respective one of the memories, each port of the second plurality being independently configurable to specify one of a second plurality of data widths of the port;
a translator configured to translate a virtual address of each of the requests into an identifier of one of the memories and a physical address in the memory;
wherein the translator is configurable to associate each port of the second plurality with any one of a plurality of translation look-aside buffers, each translation look-aside buffer configured to translate the virtual address of each request into the physical address for the associated port; and
a switch coupled to the translator and to the first and second pluralities of ports, the switch, responsive to the identifier translated from a request received at a port of the first plurality, arranged to transfer the physical address translated from the request to a port of the second plurality for accessing the memory identified by the identifier.
1 Assignment
0 Petitions
Accused Products
Abstract
A configurable memory manager is configurable with various configuration parameters. The configurable memory manager has client ports for receiving requests for accessing memories and memory ports for accessing respective memories. The client and memory ports are each independently configurable to specify the parameter of a data width of the port. The configurable memory manager includes a switch and a translator. The translator translates a virtual address in each of the requests into an identifier of one of the memories and a physical address in the memory. The switch transfers each request from the client port receiving the request to the memory port for accessing the memory identified by the identifier for the virtual address in the request.
-
Citations
19 Claims
-
1. A configurable memory manager, comprising:
-
a first plurality of ports, each port of the first plurality arranged to receive requests for accessing a plurality of memories, and each port of the first plurality being independently configurable to specify one of a first plurality of data widths of the port; a second plurality of ports, each port of the second plurality arranged to access a respective one of the memories, each port of the second plurality being independently configurable to specify one of a second plurality of data widths of the port; a translator configured to translate a virtual address of each of the requests into an identifier of one of the memories and a physical address in the memory; wherein the translator is configurable to associate each port of the second plurality with any one of a plurality of translation look-aside buffers, each translation look-aside buffer configured to translate the virtual address of each request into the physical address for the associated port; and a switch coupled to the translator and to the first and second pluralities of ports, the switch, responsive to the identifier translated from a request received at a port of the first plurality, arranged to transfer the physical address translated from the request to a port of the second plurality for accessing the memory identified by the identifier. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
Specification