Patent ID: 6640283
Filing Date: 2003-10-28
Classification: G06F

Abstract:
A cache memory comprising:a cache tag memory operable with a tag compare and hit logic to determine cache hits; a cache data memory; a processor port coupled to permit references to the cache tag memory and the cache data memory by a processor; a memory port coupled to pass references that miss to a memory selected from the group consisting of higher level cache and main memory; a compression engine coupled to the cache data memory, the compression engine coupled to read data from the cache data memory, write compressed data into the cache data memory, and update compressed flags stored in a memory selected from the group consisting of cache data memory and cache tag memory; a decompression engine coupled to receive compressed data from the cache data memory, and provide decompressed data to the processor port; and cache control logic coupled to evict data from the cache memory when necessary to make room for new data fetched over the memory port; wherein compressed data read from the cache data memory is decompressed before presentation to the memory port whenever data is written through the memory port into the memory selected from the group consisting of higher level cache and main memory, and wherein compressed data read from the cache data memory is decompressed before presentation to the processor port whenever data is read through the processor port.