×

Level One Data Cache Line Lock and Enhanced Snoop Protocol During Cache Victims and Writebacks to Maintain Level One Data Cache and Level Two Cache Coherence

  • US 20120198163A1
  • Filed: 09/28/2011
  • Published: 08/02/2012
  • Est. Priority Date: 09/28/2010
  • Status: Active Grant
First Claim
Patent Images

1. A data processing system comprising:

  • a central processing unit executing program instructions to manipulate data;

    a first level data cache connected to said central processing unit temporarily storing in a plurality of cache lines data for manipulation by said central processing unit;

    a second level memory connected to said first level cache including second level cache temporarily storing in a plurality of cache lines data for manipulation by said central processing unit and a second level local memory directly addressable by said central processing unit; and

    a direct memory access unit connected to said central processing unit controlling data transfer, said direct memory access unit operating under control of said central processing unit to control data transfers including transferring data into said second level local memory;

    a first level cache controller connected to said first level cache capable controlling data transfers into and out of said first level cache includinga first victim buffer having a plurality of entries, each entry storing an address corresponding to data stored in a cache line selected for replacement and said cache line, an entry initiated upon selection of a cache line for eviction and retired upon committing said cache line,a snoop write port receiving write data and a corresponding address, anda first victim comparator connected to said first victim buffer and said snoop write port comparing said address of each entry in said first victim buffer to said snoop write address,said first level cache controller enabling a write of said snoop write data into a corresponding entry in said first victim buffer when said victim comparator detects a match between a snoop write address and a victim address in said victim buffer;

    a second level memory controller connected to said first level cache operation unit and said second level cache controlling data transfers into and out of said second level cache, said second level cache includinga second victim buffer having a plurality of entries, each entry storing an address corresponding to data stored in said cache line selected for replacement and said cache line, an entry initiated upon receipt from said first level cache controller and upon storing said cache line to said second level memory,a direct memory access write port receiving write data and a corresponding address of a direct memory access unit controlled data transfer, anda second victim comparator connected to said second victim buffer and said direct memory access write port comparing said address of each entry in said second victim buffer to said direct memory access write address,said second level memory controller enabling a write of said direct memory access write data into a corresponding entry in said second victim buffer if said second victim comparator detects a match between a direct memory access write address and a victim address in said second victim buffer and enabling a snoop write to said first level cache controller if said second victim comparator does not detect a match between a direct memory access write address and a victim address in said second victim buffer.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×