Synchronizing memory copy operations with memory accesses
AssigneeIntel Corporation
InventorsSiva Ramakrishnan, Ioannis Schoinas
Life of this patent
Estimating the term…
Abstract
In some embodiments, a comparator compares an incoming memory address with a memory address currently being copied by a memory copy operation. A holding buffer holds the incoming address prior to forwarding it to a memory read/write queue if the incoming memory address is the same as the memory address currently being copied by the memory copy operation, forwards the buffered incoming memory address to the read/write queue once the memory copy operation for the memory address currently being copied has finished. Other embodiments are described and claimed.
Claims19
An apparatus comprising:
- a comparator to compare an incoming memory address with a memory address currently being copied by a memory copy operation;
- a holding buffer to hold the incoming address prior to forwarding it to a memory read/write queue if the incoming memory address is the same as the memory address currently being copied by the memory copy operation, and to forward the buffered incoming memory address to the read/write queue once the memory copy operation for the memory address currently being copied has finished;
- and
- a multiplexer with a first input coupled to the incoming address signal and a select input coupled to an output of the comparator, the multiplexer having a first output to forward the incoming memory address to the read/write queue if the incoming memory address is not the same as the memory address currently being copied by the memory copy operation and having a second output to forward the incoming memory address to the holding buffer if the incoming memory address is the same as the memory address currently being copied by the memory copy operation.
A system comprising:
- an unordered interconnect;
- and
- at least three components coupled to the interconnect, including:
- a comparator to compare an incoming memory address with a memory address currently being copied by a memory copy operation;
- a holding buffer to hold the incoming address prior to forwarding it to a memory read/write queue if the incoming memory address is the same as the memory address currently being copied by the memory copy operation, and to forward the buffered incoming memory address to the read/write queue once the memory copy operation for the memory address currently being copied has finished;
- and
- a multiplexer with a first input coupled to the incoming address signal and a select input coupled to an output of the comparator, the multiplexer having a first output to forward the incoming memory address to the read/write queue if the incoming memory address is not the same as the memory address currently being copied by the memory copy operation and having a second output to forward the incoming memory address to the holding buffer if the incoming memory address is the same as the memory address currently being copied by the memory copy operation.
A method comprising:
- comparing an incoming memory address with a memory address currently being copied by a memory copy operation;
- holding the incoming address prior to forwarding it to a memory read/write queue if the incoming memory address is the same as the memory address currently being copied by the memory copy operation;
- forwarding the incoming memory address to the read/write queue once the memory copy operation for the memory address currently being copied has finished;
- and
- multiplexing the incoming memory address in response to the comparing, to forward the incoming memory address to the read/write queue if the incoming memory address is not the same as the memory address currently being copied by the memory copy operation, and to forward the incoming memory address to a holding buffer if the incoming memory address is the same as the memory address currently being copied by the memory copy operation.
An article comprising a computer readable medium having instructions thereon which when executed cause a computer to:
- compare an incoming memory address with a memory address currently being copied by a memory copy operation;
- hold the incoming address prior to forwarding it to a memory read/write queue if the incoming memory address is the same as the memory address currently being copied by the memory copy operation;
- forward the incoming memory address to the read/write queue once the memory copy operation for the memory address currently being copied has finished;
- and
- multiplex the incoming memory address in response to the compare, to forward the incoming memory address to the read/write queue if the incoming memory address is not the same as the memory address currently being copied by the memory copy operation, and to forward the incoming memory address to a holding buffer if the incoming memory address is the same as the memory address currently being copied by the memory copy operation.
Dependencies are inferred from the claim text.