Cancel and replay protocol scheme to improve ordered bandwidth

US10540316B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10540316-B2
Application numberUS-201715856799-A
CountryUS
Kind codeB2
Filing dateDec 28, 2017
Priority dateDec 28, 2017
Publication dateJan 21, 2020
Grant dateJan 21, 2020

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Systems, apparatuses, and methods for implementing a cancel and replay mechanism for ordered requests are disclosed. A system includes at least an ordering master, a memory controller, a coherent slave coupled to the memory controller, and an interconnect fabric coupled to the ordering master and the coherent slave. The ordering master generates a write request which is forwarded to the coherent slave on the path to memory. The coherent slave sends invalidating probes to all processing nodes and then sends an indication that the write request is globally visible to the ordering master when all cached copies of the data targeted by the write request have been invalidated. In response to receiving the globally visible indication, the ordering master starts a timer. If the timer expires before all older requests have become globally visible, then the write request is cancelled and replayed to ensure forward progress in the fabric and avoid a potential deadlock scenario.

First claim

Opening claim text (preview).

What is claimed is: 1. A system comprising: an ordering master unit; a coherent slave unit; a memory controller coupled to the coherent slave unit; and an interconnect fabric coupled to the ordering master unit and the coherent slave unit; wherein the system is configured to: send a write request, without corresponding write data, to the coherent slave unit from the ordering master unit; start a timer, by the ordering master unit, responsive to receiving an indication, from the coherent slave unit, that the write request is globally visible; cancel the write request responsive to determining: the timer has expired; and at least one older write request is still not globally visible; and replay the write request by resending the write request from the ordering master unit to the coherent slave unit responsive to cancelling the write request. 2. The system as recited in claim 1 , wherein the ordering master unit is configured to cancel the write request by sending, to the coherent slave unit, a cancel indication that identifies the write request. 3. The system as recited in claim 1 , wherein the ordering master unit is further configured to send an indication that the older write request can be committed, along with the write data of the write request, to the coherent slave unit responsive to all older write requests being globally visible prior to the timer expiring. 4. The system as recited in claim 1 , wherein the ordering master unit is configured to provide commit indications for write requests in age order. 5. The system as recited in claim 4 , wherein the coherent slave unit is further configured to execute address matching requests in age order. 6. The system as recited in claim 1 , wherein the coherent slave unit is configured to write back any modified data to memory which was received via a probe response responsive to the write request being cancelled. 7. The system as recited in claim 1 , wherein the ordering master unit is further configured to issue requests to the interconnect fabric without waiting for prior requests to become globally ordered. 8. A method comprising: sending a write request, without corresponding write data, to a coherent slave unit from an ordering master unit; starting a timer, by the ordering master unit, responsive to receiving an indication, from the coherent slave unit, that the write request is globally visible; cancelling the write request responsive to determining: the timer has expired; and at least one older write request is still not globally visible; and replaying the write request by resending the write request from the ordering master unit to the coherent slave unit responsive to cancelling the write request. 9. The method as recited in claim 8 , further comprising cancelling the write request by sending, to the coherent slave unit, a cancel indication that identifies the write request. 10. The method as recited in claim 8 , further comprising sending an indication that the older write request can be committed, along with the write data of the write request, to the coherent slave unit responsive to all older write requests being globally visible prior to the timer expiring. 11. The method as recited in claim 8 , further comprising providing commit indications for write requests in age order. 12. The method as recited in claim 11 , further comprising executing address matching requests in age order. 13. The method as recited in claim 8 , further comprising writing back any modified data to memory which was received via a probe response responsive to the write request being cancelled. 14. The method as recited in claim 8 , further comprising issuing requests to the interconnect fabric without waiting for prior requests to become globally ordered. 15. An apparatus comprising: an ordering master unit; and a coherent slave unit; wherein the apparatus is configured to: send a write request, without corresponding write data, to the coherent slave unit from the ordering master unit; start a timer, by the ordering master unit, responsive to receiving an indication, from the coherent slave unit, that the write request is globally visible; cancel the write request responsive to determining: the timer has expired; and at least one older write request is still not globally visible; and replay the write request by resending the write request from the ordering master unit to the coherent slave unit responsive to cancelling the write request. 16. The apparatus as recited in claim 15 , wherein the ordering master unit is configured to cancel the write request by sending, to the coherent slave unit, a cancel indication that identifies the write request. 17. The apparatus as recited in claim 15 , wherein the ordering master unit is further configured to send an indication that the older write request can be committed, along with the write data of the write request, to the coherent slave unit responsive to all older write requests being globally visible prior to the timer expiring. 18. The apparatus as recited in claim 15 , wherein the ordering master unit is configured to provide commit indications for write requests in age order. 19. The apparatus as recited in claim 18 , wherein the coherent slave unit is configured to execute address matching requests in age order. 20. The apparatus as recited in claim 15 , wherein the ordering master unit is further configured to issue requests to the interconnect fabric without waiting for prior requests to become globally ordered. 21. The system as recited in claim 1 , wherein the write request is globally visible when all cached copies of data targeted by the write request have been invalidated. 22. The method as recited in claim 8 , wherein the write request is globally visible when all cached copies of data targeted by the write request have been invalidated. 23. The apparatus as recited in claim 15 , wherein the write request is globally visible when all cached copies of data targeted by the write request have been invalidated.

Assignees

Inventors

Classifications

  • PCI express · CPC title

  • Access to shared memory · CPC title

  • Correctness of operation, e.g. memory ordering · CPC title

  • using independent requests or grants, e.g. using separated request and grant lines · CPC title

  • Multiuser, multiprocessor or multiprocessing cache systems · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10540316B2 cover?
Systems, apparatuses, and methods for implementing a cancel and replay mechanism for ordered requests are disclosed. A system includes at least an ordering master, a memory controller, a coherent slave coupled to the memory controller, and an interconnect fabric coupled to the ordering master and the coherent slave. The ordering master generates a write request which is forwarded to the coheren…
Who is the assignee on this patent?
Advanced Micro Devices Inc
What technology area does this patent fall under?
Primary CPC classification G06F13/1663. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jan 21 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).