IP Library Granted Patent US 11,599,391
Granted Patent B2
US 11,599,391 · App. 16/592,074 · Granted Mar 7, 2023

Memory transaction request management for an ordered unit of data items

Inventor: Graeme Leslie Ingram (Cambridge, GB)
Assignee: Arm Limited
G06F9/5016G06F3/0656G06F9/467G06F9/5038G06F9/544G06F13/1673G06F3/0604G06F3/0679
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,599,391
App. No.
16/592,074
Granted
Mar 7, 2023
Kind
B2
Abstract

A method of requesting data items from storage. The method comprising allocating each of a plurality of memory controllers a unique identifier and assigning memory transaction requests for accessing data items to a memory controller according to the unique identifiers. The data items are spatially local to one another in storage. The data items are requested from the storage via the memory controllers according to the memory transaction requests and then buffered if the data items are received out of order relative to an order in which the data items are requested.

Claims (25)

1. A method of requesting a plurality of data items from storage, the data items being requested in a given order, the given order being based on memory addresses associated with each of the data items in the storage, the method comprising:

allocating each of a plurality of memory controllers a unique identifier;

assigning memory transaction requests for accessing the data items to a memory controller according to the unique identifiers, wherein each data item associated with the memory transactions requests has a sequential memory address in the storage;

requesting the data items from the storage via the memory controllers according to the memory transaction requests;

receiving the requested data items from the storage via the memory controllers;

determining whether a data item of the received data items is the next data item in the given order;

processing the data item of the received data items, if it is determined that the received data item is the next data item in the given order based on the associated memory addresses, and

buffering the data item of the received data items, if the received data item is not the next data item in the given order based on the associated memory addresses.

2. The method of requesting the data items from the storage according to claim 1 , wherein the storage is any of random-access memory, dynamic-random access memory, or non-volatile memory.

3. The method of requesting the data items from the storage according to claim 1 , wherein the memory controllers are dynamic memory access controllers.

4. A processor comprising:

an allocation module for allocating each of a plurality of memory controllers a unique identifier;

an assignment module for assigning memory transaction requests issued by the processor to one of the memory controllers according to the unique identifier allocated to the memory controller, wherein the memory transaction requests each represent a request for a respective data item from storage, wherein the data items associated with the memory transaction requests are requested in a given order, the given order being based on memory addresses associated with each of the data items in the storage, and have sequential memory access addresses in the storage;

a determination module for determining whether a data item corresponding to a requested data item received via at least one of the memory controllers, is a next data item in the given order;

a processing module for processing the received data item, if it is determined that the requested data item is the next data item in the ordered unit of data items based on the associated memory addresses; and

a buffer for storing the requested data item if the received data item is not the next data item in the ordered unit of data items based on the associated memory addresses.

5. The processor of claim 4 , wherein the storage is any of random-access memory, dynamic-random access memory, or non-volatile memory.

6. The processor of claim 4 , wherein the memory controllers are dynamic memory access controllers.

7. The processor of claim 4 , wherein the processor is a machine learning processor.

8. A transaction management system comprising:

storage;

a plurality of memory controllers arranged to access the storage; and

a processor according to claim 4 .

9. The transaction management system of claim 8 , wherein the storage is any of random-access memory, dynamic-random access memory, or non-volatile memory.

10. The transaction management system of claim 8 , wherein the memory controllers are dynamic memory access controllers.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 3, 2019
From: INGRAM, GRAEME LESLIE
To: ARM LIMITED
Reel/Frame 050625/0145 →
Priority Claims (1)
GB 1817804 · Oct 31, 2018 · national
Continuity (1)
Related Publication 20200133730A1 · Apr 30, 2020