Apparatus for processor with hardware fence and associated methods

US12411693B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-12411693-B2
Application numberUS-202017138841-A
CountryUS
Kind codeB2
Filing dateDec 30, 2020
Priority dateDec 30, 2020
Publication dateSep 9, 2025
Grant dateSep 9, 2025

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.

An apparatus includes a pipelined processor. The pipelined processor includes a pipeline and a hardware fence. The hardware fence detects if a hazard condition exists by comparing an address for an input operation with an address for an output operation.

First claim

Opening claim text (preview).

The invention claimed is: 1. An apparatus, comprising: a pipelined processor comprising branched parallel processing paths for instructions, and a hardware fence that maintains increasing transaction identifications (IDs) representing a submitted order on when instructions enter and are being processed within the branched parallel processing paths, wherein the increasing transaction IDs representing the submitted order are checked at a pipeline element level to stall a pipeline element when advancement of a pipeline stage of the branched parallel processing paths would produce an erroneous result. 2. The apparatus according to claim 1 , wherein the increasing transaction IDs can be used to determine when a transaction for a stage representing part of an instruction results in a hazard by comparing an address for an input operation with an address for an output operation, wherein the input operation comprises a read operation. 3. The apparatus according to claim 2 , wherein a hazard condition exists where a later read operation has an address specified that matches an address specified for an earlier write operation. 4. The apparatus according to claim 2 , wherein the output operation comprises a write operation. 5. The apparatus according to claim 4 , wherein the hardware fence comprises a comparator to compare the address specified for the read operation with the address specified for the write operation based on a pipeline memory element. 6. The apparatus according to claim 1 , wherein the pipelined processor comprises a first-in first-out (FIFO) circuit, and wherein the hardware fence detects if a hazard condition exists by comparing an address for an input operation with an address for an output operation, wherein the input and output operations are stored in the FIFO circuit. 7. The apparatus according to claim 1 , wherein the pipelined processor is stalled if the hardware fence detects that a hazard condition exists. 8. The apparatus according to claim 1 , wherein the hardware fence uses modulo IDs to implement the increasing transaction IDs. 9. The apparatus according to claim 1 , wherein the pipelined processor comprises a cache, and wherein a partial hardware fence is used with the cache. 10. An apparatus, comprising: a pipelined processor integrated into an integrated circuit, the pipelined processor comprising: branched parallel processing paths for instructions supplied to the pipeline processor; and a hardware fence that maintains increasing transaction identifications (IDs) representing a submitted order on when instructions supplied to the pipeline processor enter and are being processed within the branched parallel processing paths, wherein the increasing transaction IDs are checked at a pipeline element level to stall a pipeline element when advancement of a pipeline stage of the branched parallel processing paths would produce an erroneous result. 11. The apparatus according to claim 10 , wherein the pipelined processor is stalled if the hardware fence detects that a hazard condition exists. 12. The apparatus according to claim 10 , wherein the hardware fence uses modulo IDs to implement the increasing transaction IDs. 13. The apparatus according to claim 12 , wherein the hardware fence comprises an adder or a subtracter to receive modulo IDs and to generate an output whether a first instruction occurs before a second instruction. 14. The apparatus according to claim 10 , wherein the pipelined processor comprises a first-in first-out (FIFO) circuit, and wherein the hardware fence detects if a hazard condition exists by comparing an address for a read operation with an address for a write operation, wherein the read and write operations are stored in the FIFO circuit. 15. A method of processing information in a pipelined processor comprising branched parallel processing paths for instructions, and a hardware fence that maintains increasing transaction identifications (IDs) representing a submitted order on when instructions enter and are being processed within the branched parallel processing paths, the method comprising checking the increasing transaction IDs at a pipeline element level to stall a pipeline element when advancement of a pipeline stage of the branched parallel processing paths would produce an erroneous result. 16. The method according to claim 15 , wherein the increasing transaction IDs can be used to determine when a transaction for a stage representing part of an instruction results in a hazard by comparing an address for an input operation with an address for an output operation, wherein the input operation comprises a read operation, and wherein the output operation comprises a write operation. 17. The method according to claim 16 , wherein determining a hazard condition further comprises determining whether a later read operation has an address specified that matches an address specified for an earlier write operation. 18. The method according to claim 15 , wherein the pipelined processor comprises a first-in first-out (FIFO) circuit, and wherein determining a hazard condition further comprises comparing an address for an input operation with an address for an output operation stored in the FIFO circuit. 19. The method according to claim 15 , wherein increasing transaction IDs are modulo IDs. 20. The method according to claim 15 , further comprising stalling the pipeline processor in response to the hardware fence detecting that a hazard condition exists.

Assignees

Inventors

Classifications

  • Maintaining memory consistency · CPC title

  • G06F9/3838Primary

    Dependency mechanisms, e.g. register scoreboarding · 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 US12411693B2 cover?
An apparatus includes a pipelined processor. The pipelined processor includes a pipeline and a hardware fence. The hardware fence detects if a hazard condition exists by comparing an address for an input operation with an address for an output operation.
Who is the assignee on this patent?
Silicon Lab Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/3838. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 09 2025 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 6 related publications on this page (citations in our corpus or others sharing the same primary CPC).