Multiple engine sequencer
First Claim
Patent Images
1. A multiple engine sequencer, comprising:
- a first engine to facilitate transfer of data across a first interface for transfer of the data to or from a memory device;
a second engine, different from the first engine, to facilitate transfer of data from a second interface to the first interface for transfer of the data to the memory device;
a third engine, different from the first engine and the second engine, to facilitate transfer of data from the first interface to the second interface for transfer of the data from the memory device; and
a flow control engine in communication with the first engine, the second engine and the third engine, wherein the flow control engine is configured to determine if performance of at least a portion of a memory operation corresponding to a command received at the multiple engine sequencer should be delegated to a different engine of the multiple engine sequencer selected from a group consisting of the first engine, the second engine and the third engine.
8 Assignments
0 Petitions
Accused Products
Abstract
Multiple engine sequencers in memory interfaces are disclosed. Individual sequencer engines of multiple engine sequencers perform at least portions of their respective operations in parallel with other individual sequencer engine operations performed in the memory interface. In at least one embodiment, sequencer engine operations are performed at least partially concurrently with other sequencer engine operations in the memory interface.
24 Citations
50 Claims
-
1. A multiple engine sequencer, comprising:
-
a first engine to facilitate transfer of data across a first interface for transfer of the data to or from a memory device; a second engine, different from the first engine, to facilitate transfer of data from a second interface to the first interface for transfer of the data to the memory device; a third engine, different from the first engine and the second engine, to facilitate transfer of data from the first interface to the second interface for transfer of the data from the memory device; and a flow control engine in communication with the first engine, the second engine and the third engine, wherein the flow control engine is configured to determine if performance of at least a portion of a memory operation corresponding to a command received at the multiple engine sequencer should be delegated to a different engine of the multiple engine sequencer selected from a group consisting of the first engine, the second engine and the third engine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A multiple engine sequencer, comprising:
-
a flow control engine responsive to a received command to perform an operation; a first additional engine configured to perform a first portion of the operation responsive to one or more first commands from the flow control engine; and a second additional engine configured to perform a second portion of the operation responsive to one or more second commands from the flow control engine; wherein the first additional engine and the second additional engine are configured to at least partially perform their respective portions of the operation at least partially in parallel; and wherein the flow control engine is configured to inhibit the second additional engine from performing the second portion of the operation to completion until a time subsequent to the completion of the first portion of the operation. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A memory interface, comprising:
-
a first sequencer engine, wherein the first sequencer engine is configured to perform a first operation; a second sequencer engine different from the first sequencer engine, wherein the second sequencer engine is configured to perform a second operation; and a third sequencer engine different from the first sequencer engine and the second sequencer engine, wherein the third sequencer engine is configured to initiate performance of the first operation by the first sequencer engine, and is configured to initiate performance of the second operation by the second sequencer engine in response to an operational delay which occurs during performance of the first operation, wherein the operational delay occurs as a result of performing the first operation. - View Dependent Claims (22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39)
-
-
40. A method of operating a memory interface, the method comprising:
-
initiating performance of a first operation by a first sequencer engine; and initiating performance of a second operation by a second sequencer engine, different from the first sequencer engine, responsive to an operational delay which occurs during performance of the first operation; wherein performance of the first operation includes fetching data for transfer of the fetched data to or from a memory device coupled to the memory interface; wherein performance of the second operation includes transferring the fetched data across a read pipeline of the memory interface when the transfer of the fetched data is from the memory device, and transferring the fetched data across a write pipeline of the memory interface when the transfer of the fetched data is to the memory device; and wherein the performance of the second operation is initiated from a time when the performance of the first operation is initiated to a time when the operational delay is expected to occur. - View Dependent Claims (41, 42, 43, 44, 45, 46, 47, 48, 49, 50)
-
Specification