Cache memory system allowing concurrent reads and writes to cache lines to increase snoop bandwith

   
   

A cache memory includes a plurality of memory chips, or other separately addressable memory sections, which are configured to collectively store a plurality of cache lines. Each cache line includes data and an associated cache tag. The cache tag may include an address tag which identifies the line as well as state information indicating the coherency state for the line. Each cache line is stored across the memory chips in a row formed by corresponding entries (i.e., entries accessed using the same index address). The plurality of cache lines is grouped into separate subsets based on index addresses, thereby forming several separate classes of cache lines. The cache tags associated with cache lines of different classes are stored in different memory chips. During operation, the cache controller may receive multiple snoop requests corresponding to, for example, transactions initiated by various processors. The cache controller is configured to concurrently access the cache tags of multiple lines in response to the snoop requests if the lines correspond to differing classes.

 
Web www.patentalert.com

< Memory control translators

< System and method for industrial controller with an I/O processor using cache memory to optimize exchange of shared data

> Program store compare handling between instruction and operand caches

> Line rate buffer using single ported memories for variable length packets

~ 00184