Method and apparatus for managing snoop requests using snoop advisory cells
AssigneeCagEnt Technologies, Inc.
InventorJohn V. Sell
Life of this patent
Estimating the term…
Loading patent…
AssigneeCagEnt Technologies, Inc.
InventorJohn V. Sell
Estimating the term…
A plurality of "snoop advisory" bits are maintained by snoop management circuitry externally to the processor structure. Each snoop advisory bit corresponds to a respective "snoop advisory page" of the memory address space. Three parallel processes take place with respect to these bits. First, in response to each read access by the processor structure, if the read access is of a predetermined type (such as a cache line fill operation with intent to modify), snoop management circuitry writes a "snoop yes" value into the snoop advisory cell corresponding to the snoop advisory page which includes the address of the processor's access. Second, in response to each access by another device which shares the address space with the processor structure, a snoop request is issued to the processor structure, but only if the snoop advisory cell corresponding to the snoop advisory page which includes the address of the device's access, contains the "snoop yes" value. Otherwise, the device is allowed to perform its access directly to the memory structure without issuing a snoop request. Third, on a recurrent basis, the processor internal cache is synchronized with the memory structure and the system writes a "snoop no" value into each of the snoop advisory bits to clear them. Synchronization can involve performing a write-back on each cache line which is in a modified state, and/or invalidating each line in the cache.
A method for managing snoop requests to a processor structure which accesses data in a memory structure external to said processor structure, said memory structure having a first address space and said processor structure including a cache memory for caching data of said first address space for said processor structure, for use with an additional device which also accesses data in said first address space of said memory structure, and for use further with a first snoop advisory cell corresponding to a first subset of addresses in said first address space, comprising the steps of:
A method for managing snoop requests to a processor structure which accesses data in a memory structure external to said processor structure, said memory structure having a first address space and said processor structure including a cache memory for caching data of said first address space for said processor structure, for use with an additional device which also accesses data in said first address space of said memory structure, and for use further with a first snoop advisory cell, comprising the steps of:
A method for managing snoop requests to a processor structure which accesses data in a memory structure external to said processor structure, said memory structure having a first address space and said processor structure including a cache memory for caching data of said first address space for said processor structure, for use with an additional device which also accesses data in said first address space of said memory structure, and for use further with a plurality of snoop advisory cells, each corresponding to a respective distinct subset of said first address space, comprising the steps of:
Snoop request management apparatus, for use with a memory structure and a processor structure which accesses data in said memory structure, said memory structure having a first address space and said processor structure including a cache memory for caching data of said first address space for said processor structure, for use with an additional device which also accesses data in said first address space of said memory structure, comprising:
Snoop request management apparatus, for use with a memory structure and a processor structure which accesses data in said memory structure, said memory structure having a first address space and said processor structure including a cache memory for caching data of said first address space for said processor structure, said cache memory having a plurality of entries, for use with an additional device which also accesses data in said first address space of said memory structure, comprising:
Dependencies are inferred from the claim text.