IP Library › Granted Patent US 10,853,308
Granted Patent B1
US 10,853,308 · App. 16/195,218 · Granted Dec 1, 2020

Method and apparatus for direct memory access transfers

Inventors: Ramesh R. Subramanian (Hyderabad, IN); Ravinder Sharma (Hyderabad, IN); Jayaram Pvss (Hyderabad, IN); Michael Zapke (Munich, DE); Manjunath Chepuri (Secundrabad, IN)
Assignee: Xilinx, Inc.
G06F15/17331G06F13/28
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 10,853,308
App. No.
16/195,218
Granted
Dec 1, 2020
Kind
B1
Abstract

A circuit for memory access includes a memory access control circuit. The memory access controller is coupled to a memory and configured to perform data transfers to retrieve data from the memory. The memory access control circuit includes a timing control circuit and a transfer control circuit. The timing control circuit is configured to determine first timing information based on a timing requirement for transmitting a first data stream to a first network; and determine a first fetch time for retrieving the first data stream from the memory based on the first timing information. The transfer control circuit is configured to retrieve the first data stream from the memory based on the first fetch time.

Claims (59)

1. A circuit for memory access, comprising:

a memory access control circuit coupled to a memory and configured to perform data transfers to retrieve data from the memory, the memory access control circuit includes:

a timing control circuit configured to:

determine first timing information based on a timing requirement for transmitting a first data stream to a first network,

wherein the first timing information includes a stream fetch type selected from a continuous fetch type and a discrete fetch type based on a stream priority level of the first data stream; and

determine a first fetch time for retrieving the first data stream from the memory based on the first timing information; and

a transfer control circuit configured to:

retrieve the first data stream from the memory based on the first fetch time.

2. The circuit of claim 1 , wherein the first timing information includes a stream parameter selected from consisting of a stream identifier and a stream priority level.

3. The circuit of claim 1 , wherein the memory access control circuit further comprises:

an output control circuit configured to provide the first data stream to an end station coupled to the first network,

wherein the first timing information includes end station timing information from the end station, and

wherein the timing requirement includes a first timing requirement associated with transmitting the first data stream by the end station to the first network.

4. The circuit of claim 3 , wherein the end station timing information includes:

data buffer occupancy information associated with a plurality of data buffers of the end station configured to receive streams of corresponding stream priorities respectively.

5. The circuit of claim 4 , wherein the end station timing information includes:

scheduler information associated with a scheduler of the end station, and

wherein the scheduler includes a plurality of data transmission gates configured to control data transmission from the plurality of data buffers to the first network, and

wherein the first timing requirement is associated with transmitting the first data stream at a first data transmission gate.

6. The circuit of claim 5 , wherein the scheduler information includes a scheduler cycle time of the scheduler or gate transmission times of the data transmission gates, and

wherein the plurality of data transmission gates are configured to control data transmission based on the scheduler cycle time or gate transmission times.

7. The circuit of claim 6 ,

wherein the timing control circuit is configured to:

determine second timing information based on a second timing requirement for transmitting a second data stream to the first network; and

determine a second fetch time for retrieving the second data stream from the memory based on the second timing information; and

wherein the transfer control circuit is configured to:

retrieve the second data stream from the memory based on the second fetch time.

8. The circuit of claim 7 , wherein the first data stream and the second data stream have a same stream priority level,

wherein the first timing requirement is associated with a first allocated gate transmission time associated with the first data transmission gate, and

wherein the second timing requirement is associated with a second allocated gate transmission time associated with the first data transmission gate.

9. The circuit of claim 7 , wherein the first data stream and the second data stream have different stream priority levels, and

wherein the second timing requirement is associated with transmitting the second data stream at a second data transmission gate.

10. The circuit of claim 1 , further comprising:

a user input configured to receive a frame fetch latency of the timing information associated with fetching a frame from the memory;

wherein the first fetch time is determined based on the frame fetch latency.

11. A method for memory access, comprising:

determining a first timing information based on a timing requirement for transmitting a first data stream to a first network,

wherein the first timing information includes a stream fetch type selected from a continuous fetch type and a discrete fetch type based on a stream priority level of the first data stream;

determining a first fetch time for retrieving the first data stream from a memory based on the first timing information; and

retrieving the first data stream from the memory based on the first fetch time.

12. The method of claim 11 , wherein the first timing information includes a stream parameter selected from a stream identifier and a stream priority level.

13. The method of claim 12 , wherein the stream priority level is selected from the group consisting of a scheduled priority level, a reserved priority level, and a best-effort priority level, and

wherein the scheduled priority is higher than the reserved priority, and the reserved priority is higher than the best-effort priority.

14. The method of claim 13 , wherein a continuous fetch type is determined for the scheduled priority level, and a discrete fetch type is determined for one of the reserved priority level and the best-effort priority level.

15. The method of claim 11 , further comprising:

providing, to an end station coupled to the first network, the retrieved first data stream;

wherein the first timing information includes end station timing information from the end station.

16. The method of claim 15 , wherein the end station timing information includes:

data buffer occupancy information associated with a plurality of data buffers of the end station configured to receive streams of corresponding stream priorities respectively.

17. The method of claim 16 , wherein the end station timing information includes:

scheduler information associated with a scheduler of the end station,

wherein the scheduler includes a plurality of data transmission gates configured to control data transmission from the plurality of data buffers to the first network;

wherein the timing requirement is associated with transmitting the first data stream at a first data transmission gate.

18. The method of claim 17 , wherein the scheduler information includes a scheduler cycle time of the scheduler or gate transmission times of the data transmission gates, and

wherein the plurality of data transmission gates are configured to control data transmission based on the scheduler cycle time or gate transmission times.

19. The method of claim 11 , further comprising:

receiving, through a user input, a frame fetch latency of the timing information;

wherein the first fetch time is determined based on the frame fetch latency.

20. The method of claim 11 , wherein the first data stream is retrieved from the memory by performing a direct memory access (DMA) transfer.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2018
From: SUBRAMANIAN, RAMESH R.; SHARMA, RAVINDER; PVSS, JAYARAM; CHEPURI, MANJUNATH
To: XILINX, INC.
Reel/Frame 047546/0579 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 19, 2018
From: ZAPKE, MICHAEL
To: XILINX GMBH
Reel/Frame 047601/0828 →
Cited By (3)
US 12,250,163 US 12,339,795 US 12,717,740