Systems and methods for faster read after write forwarding using a virtual address

US9767020B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9767020-B2
Application numberUS-201514819255-A
CountryUS
Kind codeB2
Filing dateAug 5, 2015
Priority dateAug 30, 2013
Publication dateSep 19, 2017
Grant dateSep 19, 2017

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.

Methods for read after write forwarding using a virtual address are disclosed. A method includes determining when a virtual address has been remapped from corresponding to a first physical address to a second physical address and determining if all stores occupying a store queue before the remapping have been retired from the store queue. Loads that are younger than the stores that occupied the store queue before the remapping are prevented from being dispatched and executed until the stores that occupied the store queue before the remapping have left the store queue and become globally visible.

First claim

Opening claim text (preview).

We claim: 1. A method for read-after-write forwarding using a virtual address, said method comprising: determining if a load and a store are to a same page; if said load and said store are to said same page, completing said load with data acquired via virtual-address-based forwarding while said load and said store are delayed for acquisition of their respective physical addresses and while the physical address of said load is cross-checked against the physical address of said store; and retiring said load if said cross checking indicates that said load and said store have different physical addresses. 2. The method of claim 1 , further comprising flushing an instruction pipeline if said cross checking indicates that said load and said store have the same physical address, wherein said load, and every instruction subsequent to it, is flushed. 3. The method of claim 1 , wherein said same page is 4 k in size. 4. The method of claim 1 , further comprising signaling a hazard during said completing. 5. A cache system, comprising: data storage components; and a cache controller, wherein said cache controller includes a system that comprises: a determining component for determining if a load and a store are to a same page; a hazard signaling/load completing component, wherein responsive to a determination that said load and said store are to said same page, said load completing component is operable to complete said load with data acquired via virtual-address-based forwarding while said load and said store are delayed for acquisition of their respective physical addresses and while the physical address of said load is cross-checked against the physical address of said store, wherein said load is retired if said cross checking indicates that said load and said store have different physical addresses. 6. The cache system of claim 5 , wherein if said cross checking indicates that said load and said store have the same physical address an instruction pipeline is flushed such that said load and every instruction subsequent to it is flushed. 7. The cache system of claim 5 , wherein said same page is 4 k in size. 8. The cache system of claim 5 , wherein said hazard signaling/load completing component is further operable to signal a hazard while said load is completing. 9. A computer system, comprising: a memory; a processor; a cache system; and a cache controller, wherein said cache controller comprises: a determining component for determining if a load and a store are to a same page; a hazard signaling/load completing component, wherein responsive to a determination that said load and said store are to said same page, said load completing component is operable to complete said load with data acquired via virtual address based forwarding while said load and said store are delayed for acquisition of their respective physical addresses and while the physical address of said load is cross-checked against the physical address of said store, wherein said load is retired if said cross checking indicates that said load and said store have different physical addresses. 10. The computer system of claim 9 , wherein if said cross checking indicates that said load and said store have the same physical address an instruction pipeline is flushed such that said load and every instruction subsequent to it is flushed. 11. The computer system of claim 9 , wherein said same page is 4 k in size. 12. The computer system of claim 9 , wherein said hazard signaling/load completing component is further operable to signal a hazard while said load is completing.

Assignees

Inventors

Classifications

  • Maintaining memory consistency · CPC title

  • Performance improvement · CPC title

  • Bypassing or forwarding of data results, e.g. locally between pipeline stages or within a pipeline stage · CPC title

  • Look-ahead translation · CPC title

  • G06F12/08Primary

    in hierarchically structured memory systems, e.g. virtual memory 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 US9767020B2 cover?
Methods for read after write forwarding using a virtual address are disclosed. A method includes determining when a virtual address has been remapped from corresponding to a first physical address to a second physical address and determining if all stores occupying a store queue before the remapping have been retired from the store queue. Loads that are younger than the stores that occupied the…
Who is the assignee on this patent?
Intel Corp
What technology area does this patent fall under?
Primary CPC classification G06F12/08. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 19 2017 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 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).