IP Library › Granted Patent US 11,789,859
Granted Patent B1
US 11,789,859 · App. 17/449,579 · Granted Oct 17, 2023

Address generation for page collision prevention

Inventors: Kun Xu (Austin, TX); Suresh Hariharan (Austin, TX)
Assignee: Amazon Technologies, Inc.
G06F12/0238G06F12/0857G06F12/1081G06F15/17375G06N3/063
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,789,859
App. No.
17/449,579
Filed
Sep 30, 2021
Granted
Oct 17, 2023
Kind
B1
Art Unit
2139
USPC
711/154
Abstract

To generate sequential addresses when multiple integrated circuit (IC) devices are accessing the same memory, an address token is sent along the IC devices communicatively coupled in a ring topology. The address token is first transferred along the ring topology during a memory reservation phase in which each IC device can set a corresponding memory request bit to indicate that the IC device has data to write to the memory. The modified address token is then transferred along the ring topology again during a memory access phase. During the memory access phase, each IC device that has data to write can perform a memory write operation using a sequential address determined from the contents of the address token.

Claims (42)

1. A method comprising:

receiving, by an integrated circuit device in a system of integrated circuit devices communicatively coupled in a ring topology, an address token during a memory access phase, the address token indicating memory accesses for the system of integrated circuit devices and including a bit map containing a memory request bit for each of the integrated circuit devices, the address token being sequentially transferred along the ring topology;

determining, by the integrated circuit device, a sequential address based on the address token; and

performing, by the integrated circuit device, a memory access to a memory device using the sequential address.

2. The method of claim 1 , wherein the ring topology includes a token initiation device operable to initiate transfer of the address token.

3. The method of claim 2 , wherein the sequential address is determined during the memory access phase by:

determining a number of memory request bits that have been set for memory request bits corresponding to the integrated circuit devices along the ring topology between the token initiation device and the integrated circuit device; and

adding an address offset corresponding to the number of memory request bits that have been set to a base address to generate the sequential address.

4. The method of claim 3 , further comprising:

incrementing the base address by a base address offset corresponding to a total number of memory request bits that are set in the address token.

5. The method of claim 1 , further comprising:

receiving, by the integrated circuit device, the address token during a memory reservation phase;

determining, by the integrated circuit device, that the integrated circuit device has data to write to the memory device; and

setting, by the integrated circuit device, the memory request bit corresponding to the integrated circuit device.

6. The method of claim 5 , wherein the memory access phase is differentiated from the memory reservation phase by a logic value of a phase indicator bit in the address token.

7. The method of claim 6 , wherein the phase indicator bit is toggled by a token initiation device.

8. The method of claim 7 , wherein the memory request bits in the address token are cleared by the token initiation device to initiate the memory reservation phase.

9. An integrated circuit device comprising:

memory access circuitry operable to write data to a memory device; and

address generation circuitry operable to:

receive an address token during a memory access phase;

generate a sequential address based on the address token;

provide the sequential address to the memory access circuitry to write the data to the memory device using the sequential address; and

transmit the address token to another integrated circuit device in a system of integrated circuit devices,

wherein the address token has a set of memory request bits including a memory request bit corresponding to each of the integrated circuit devices in the system of integrated circuit devices.

10. The integrated circuit device of claim 9 , wherein the sequential address is generated by adding an address offset to a base address, the address offset determined based on the memory request bits.

11. The integrated circuit device of claim 10 , wherein the address generation circuitry is operable to update the base address after generating the sequential address by incrementing the base address by a total number of memory request bits that have been set in the address token.

12. The integrated circuit device of claim 9 , wherein the address generation circuitry is operable to:

receive the address token during a memory reservation phase;

determine that the memory access circuitry has data to write to the memory device;

set the memory request bit corresponding to the integrated circuit device in the address token; and

transmit the address token to the next integrated circuit device.

13. The integrated circuit device of claim 12 , wherein the address token includes a phase indicator bit to indicate whether a current phase is the memory access phase or the memory reservation phase.

14. The integrated circuit device of claim 13 , wherein the memory reservation phase and the memory access phase are initiated by a token initiation device in the system of integrated circuit devices.

15. The integrated circuit device of claim 14 , wherein the token initiation device initiates the memory access phase by:

receiving the address token modified during the memory reservation phase;

toggling the phase indicator bit; and

sending the address token from the memory reservation phase with the toggled phase indicator bit along the system of integrated circuit devices.

16. The integrated circuit device of claim 15 , wherein the token initiation device initiates a second memory reservation phase by:

sending a second address token having all of the memory request bits cleared and the phase indicator bit indicating a memory reservation phase along the system of integrated circuit devices.

17. The integrated circuit device of claim 15 , wherein the integrated circuit devices of the system are communicatively coupled in a ring topology.

18. The integrated circuit device of claim 9 , wherein the system of integrated circuit devices includes a plurality of different types of integrated circuit devices including a direct memory access engine type of integrated circuit device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2021
From: XU, KUN; HARIHARAN, SURESH
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 057662/0404 →
Cited By (1)
US 12,493,431