Data processing apparatus and method for performing load-exclusive and store-exclusive operations
US-9223701-B2 · Dec 29, 2015 · US
US9372808B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9372808-B2 |
| Application number | US-201314059732-A |
| Country | US |
| Kind code | B2 |
| Filing date | Oct 22, 2013 |
| Priority date | Oct 24, 2012 |
| Publication date | Jun 21, 2016 |
| Grant date | Jun 21, 2016 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
This invention mitigates these deadlocking issues by a adding a separate non-blocking pipeline for snoop returns. This separate pipeline would not be blocked behind coherent requests. This invention also repartitions the master initiated traffic to move cache evictions (both with and without data) and non-coherent writes to the new non-blocking channel. This non-blocking pipeline removes the need for any coherent requests to complete before the snoop request can reach the memory controller. Repartitioning cache initiated evictions to the non-blocking pipeline prevents deadlock when snoop and eviction occur concurrently. The non-blocking channel of this invention combines snoop responses from memory controller initiated requests and master initiated evictions/non-coherent writes.
Opening claim text (preview).
What is claimed is: 1. An interface between a multi-core shared memory controller and one of a plurality of processing cores comprising: a read address bus adapted for receiving a read address from the processing core; a read data bus adapted for supplying read data from the interface to the processing core; a write address bus separate from said read address bus adapted for receiving a write address from the processing core; a write data bus separate from said read data bus adapted for supplying write data from the processing core to the interface; a snoop response bus adapted for supplying a snoop response signal from the processing core to the interface; a snoop data bus separate from said read data bus and from said write data bus adapted for supplying snoop data from the processing core to the interface; a first snoop address bus separate from said read address bus and from said write address bus adapted for supplying a snoop address from the interface to the processing core; a command address bus adapted for supplying one of a read data address from the processing core or a write data address from the processing core to the multi-core shared memory controller; a data bus adapted for one of (1) receiving read data from the multi-core shared memory controller, (2) supplying write data to the multi-core shared memory controller or (3) supplying snoop response data from the processing core to the multi-core shared memory controller; and a second snoop address bus separate from said first snoop address bus adapted for receiving a snoop address from the multi-core shared memory controller. 2. The interface of claim 1 , further comprising: a bus converter connected to said read address bus, said write address bus and said command address bus for converting said read address and said write address from the processing core from a first bus protocol to a second bus protocol supplied to said command address bus. 3. The interface of claim 1 , further comprising: an asynchronous crossing unit connecting a first clock domain including said read address, said write address, read data, said write data, said snoop response, said snoop data and said first snoop address from the processing core to a second clock domain including said command address, said data bus and said second snoop address.
using a bus scheme, e.g. with bus monitoring or watching means · CPC title
using switching circuits, e.g. switching matrix, connection or expansion network (G06F13/4009 takes precedence) · CPC title
Rule management · CPC title
Cache consistency protocols · CPC title
Multiplexed DMA (G06F13/30 takes precedence) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.