Multicore, multibank, fully concurrent coherence controller

US9652404B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9652404-B2
Application numberUS-201615047318-A
CountryUS
Kind codeB2
Filing dateFeb 18, 2016
Priority dateOct 24, 2012
Publication dateMay 16, 2017
Grant dateMay 16, 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.

This invention optimizes non-shared accesses and avoids dependencies across coherent endpoints to ensure bandwidth across the system even when sharing. The coherence controller is distributed across all coherent endpoints. The coherence controller for each memory endpoint keeps a state around for each coherent access to ensure the proper ordering of events. The coherence controller of this invention uses First-In-First-Out allocation to ensure full utilization of the resources before stalling and simplicity of implementation. The coherence controller provides Snoop Command/Response ID Allocation per memory endpoint.

First claim

Opening claim text (preview).

What is claimed is: 1. A method of coherent data processing system comprising the steps of: temporarily storing data in a cache memory of at least one processing core of a plurality of processing cores; storing data in a plurality of memory endpoints; storing each of a plurality of coherence maintenance addresses in a corresponding entry, each entry storing an address of an access request committed to a shared memory at a corresponding memory endpoint and an assigned ID tag; assigning an available ID tag from a set of ID tags to the entry of an access request committed to the shared memory for storage; retiring a coherence maintenance address entry upon receipt of a completion signal from the shared memory indicating completion of the corresponding access request; and comparing the address of a memory access request with all stored coherence maintenance addresses; and generating a hazard stall signal if the address of a memory access request matches any stored coherence maintenance address. 2. The method of data processing system of claim 1 , wherein: storing dirty tags corresponding to coherence write data and an assigned ID tag in a coherence maintenance address entry corresponding to each write access request; receiving dirty tags corresponding to snoop response data; determining where snoop response dirty tags indicate dirty and said stored dirty tags indicate clean; writing snoop response data that is dirty in the snoop response and clean in the coherence write data to the corresponding memory endpoint; and assigning an available ID tag from said set of ID tags upon creation of an coherence transaction tracking entry corresponding to each write access request. 3. The method processing system of claim 1 , wherein: said step of assigning an available ID tag assigns a lowest available ID tag upon allocating an ID tag. 4. The method data processing system of claim 1 , wherein: said step of storing data in a plurality of memory endpoints includes a plurality of independently accessible memory banks. 5. The method data processing system of claim 4 , wherein: each of said plurality of independently accessible memory banks includes a plurality of virtual subbanks.

Assignees

Inventors

Classifications

  • using a bus scheme, e.g. with bus monitoring or watching means · CPC title

  • Cross-Sectional Technologies · mapped topic

  • Details of cache specific to multiprocessor cache arrangements · CPC title

  • Bus transfer protocol, e.g. handshake; Synchronisation · CPC title

  • Cross-Sectional Technologies · mapped topic

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 US9652404B2 cover?
This invention optimizes non-shared accesses and avoids dependencies across coherent endpoints to ensure bandwidth across the system even when sharing. The coherence controller is distributed across all coherent endpoints. The coherence controller for each memory endpoint keeps a state around for each coherent access to ensure the proper ordering of events. The coherence controller of this inve…
Who is the assignee on this patent?
Texas Instruments Inc
What technology area does this patent fall under?
Primary CPC classification G06F12/0831. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue May 16 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 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).