Cache memory system and method with multiple hashing functions and hash control storage

Number of patents in Portfolio can not be more than 2000

United States of America Patent

PATENT NO 5530958
SERIAL NO

08363542

Stats

ATTORNEY / AGENT: (SPONSORED)

Importance

Loading Importance Indicators... loading....

Abstract

See full text

A column-associative cache that reduces conflict misses, increases the hit rate and maintains a minimum hit access time. The column-associative cache indexes data from a main memory into a plurality of cache lines according to a tag and index field through hash and rehash functions. The cache lines represent a column of sets. Each cache line contains a rehash block indicating whether the set is a rehash location. To increase the performance of the column-associative cache, a content addressable memory (CAM) is used to predict future conflict misses.

Loading the Abstract Image... loading....

First Claim

See full text

Family

Loading Family data... loading....

Patent Owner(s)

Patent OwnerAddressTotal Patents
MASSACHUSETTS INSTITUTE OF TECHNOLOGYCAMBRIDGE, MA3337

International Classification(s)

  • [Classification Symbol]
  • [Patents Count]

Inventor(s)

Inventor Name Address # of filed Patents Total Citations
Agarwal, Anant Framingham, MA 110 2589
Pudar, Steven D Rancho Cordova, CA 3 152

Cited Art Landscape

Patent Info (Count) # Cites Year
 
HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. (1)
* 5235697 Set prediction cache memory system using bits of the main memory address 54 1992
* Cited By Examiner

Patent Citation Ranking

Forward Cite Landscape

Patent Info (Count) # Cites Year
 
Other [Check patent profile for assignment information] (3)
* 2002/0177,990 Distributed logic analyzer for use in a hardware logic emulation system 18 2001
* 9952933 Fingerprint change during data operations 0 2014
* 2015/0370,708 Soft Error Protection For Content Addressable Memory 0 2015
 
Allied Telesyn International Corporation (1)
* 6279097 Method and apparatus for adaptive address lookup table generator for networking application 8 1998
 
HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP (4)
* 5860095 Conflict cache having cache miscounters for a computer memory system 24 1996
* 6223256 Computer cache memory with classes and dynamic selection of replacement algorithms 90 1997
6253285 Method and apparatus for minimizing dcache index match aliasing using hashing in synonym/subset processing 14 1998
* 6567907 Avoiding mapping conflicts in a translation look-aside buffer 5 2000
 
VERITAS TECHNOLOGIES LLC (1)
* 5778430 Method and apparatus for computer disk cache management 153 1996
 
EMC IP HOLDING COMPANY LLC (1)
* 5809435 Efficient index arrangement and method for identifying valid records stored on logging digital data storage subsystem 6 1996
 
CADENCE DESIGN SYSTEMS, INC. (13)
6570404 High-performance programmable logic architecture 14 1997
5884066 Method and apparatus for a trace buffer in an emulation system 20 1997
5960191 Emulation system with time-multiplexed interconnect 104 1997
* 5943490 Distributed logic analyzer for use in a hardware logic emulation system 74 1997
5970240 Method and apparatus for configurable memory emulation 60 1997
6289494 Optimized emulation and prototyping architecture 47 1997
6697957 Emulation circuit with a hold time algorithm, logic analyzer and shadow memory 28 2000
6446249 Emulation circuit with a hold time algorithm, logic and analyzer and shadow memory 76 2000
6625793 Optimized emulation and prototyping architecture 14 2001
7555424 Method and apparatus for rewinding emulated memory circuits 1 2006
8959010 Emulation system with improved reliability of interconnect and a method for programming such interconnect 1 2011
8743735 Emulation system for verifying a network device 5 2012
8595683 Generating user clocks for a prototyping environment 5 2012
 
JUNIPER NETWORKS, INC. (12)
* 7809827 Network device having service card for lawful intercept and monitoring of packet flows 10 2006
7747737 Network device having service card for dynamic flow capture and monitoring of packet flows 19 2006
* 7743200 Instruction cache using perfect hash function 5 2007
8089895 Adaptive network flow analysis 5 2008
7869352 Adaptive network router 12 2009
8020200 Stateful firewall protection for control plane traffic within a network device 11 2009
8031715 Network device having service card for dynamic flow capture and monitoring of packet flows 4 2009
7966442 Cache using perfect hash function 3 2010
8037175 Network device having service card for intercept and monitoring of packet flows 17 2010
9444768 Multi-router system having shared network interfaces 1 2013
9485149 Routing device having multiple logical routers 12 2015
9832099 Routing device having multiple logical routers 0 2016
 
SAMSUNG ELECTRONICS CO., LTD. (3)
* 5933860 Multiprobe instruction cache with instruction-based probe hint generation and training whereby the cache bank or way to be accessed next is predicted 57 1997
* 6061819 Generation of reproducible random initial states in RTL simulators 4 1997
* 6233647 Hashed direct-mapped texture cache 21 1998
 
ORACLE AMERICA, INC. (5)
* 5701432 Multi-threaded processing system having a cache that is commonly accessible to each thread 71 1995
* 5943691 Determination of array padding using collision vectors 10 1995
6449700 Multiprocessing computer system employing a cluster protection mechanism 28 1998
6401174 Multiprocessing computer system employing a cluster communication error reporting mechanism 20 1998
6351795 Selective address translation in coherent memory replication 15 1998
 
QUICKTURN DESIGN SYSTEMS, INC. (1)
6882176 High-performance programmable logic architecture 9 2003
 
UTMC MICROELECTRONIC SYSTEMS INC. (1)
6353873 Apparatus and method to determine a longest prefix match in a content addressable memory 22 1999
 
MASSACHUSETTS INSTITUTE OF TECHNOLOGY (2)
* 7856529 Customizable memory indexing functions 0 2007
* 2008/0256,328 Customizable memory indexing functions 3 2007
 
SOCIONEXT INC. (6)
* 6574711 Semiconductor integrated circuit 1 2000
7260683 Semiconductor integrated circuit 1 2004
* 2004/0260,860 Semiconductor integrated circuit 0 2004
7444475 Semiconductor integrated circuit 1 2006
7795645 Semiconductor integrated circuit 1 2008
* 2009/0129,138 Semiconductor Integrated Circuit 2 2008
 
THALES HOLDINGS UK PLC (1)
* 6665210 Data storage and retrieval 7 2001
 
MICROSOFT TECHNOLOGY LICENSING, LLC (2)
* 7664927 Hash tables 3 2006
* 2007/0234,005 Hash tables 45 2006
 
AEROFLEX COLORADO SPRINGS INC. (2)
6226710 Content addressable memory (CAM) engine 78 1997
6473846 Content addressable memory (CAM) engine 69 2000
 
RENESAS ELECTRONICS AMERICA INC. (4)
* 7412581 Processor for virtual machines and method therefor 2 2003
* 2005/0091,468 Processor for virtual machines and method therefor 23 2003
7877572 Data access in a processor for virtual machines 0 2008
* 2008/0313,383 Processor for Virtual Machines and Method Therefor 38 2008
 
KABUSHIKI KAISHA TOSHIBA (1)
* 5651135 Multi-way set associative cache system in which the number of lines per set differs and loading depends on access frequency 28 1995
 
DASSAULT SYSTEMES AMERICAS CORP. (2)
8521736 Managing hierarchies of components 0 2005
* 2007/0106,708 Managing hierarchies of components 2 2005
 
Creative Technology Ltd (1)
* 6275919 Memory storage and retrieval with multiple hashing functions 37 1998
 
AVAGO TECHNOLOGIES GENERAL IP (SINGAPORE) PTE. LTD. (3)
* 6934796 Content addressable memory with hashing function 48 2002
7193874 Content addressable memory device 15 2003
7382637 Block-writable content addressable memory device 52 2004
 
INTERNATIONAL BUSINESS MACHINES CORPORATION (14)
* 5666506 Apparatus to dynamically control the out-of-order execution of load/store instructions in a processor capable of dispatchng, issuing and executing multiple instructions in a single processor cycle 63 1995
* 5873123 Processor and method for translating a nonphysical address into a physical address utilizing a selectively nonsequential search of page table entries 15 1996
* 5749087 Method and apparatus for maintaining n-way associative directories utilizing a content addressable memory 18 1996
* 5916314 Method and apparatus for cache tag mirroring 12 1996
* 6026470 Software-managed programmable associativity caching mechanism monitoring cache misses to selectively implement multiple associativity levels 15 1997
* 7127587 Intent seizes in a multi-processor environment 0 2003
7120747 Lower overhead shared cache invalidations 2 2004
* 2005/0204,098 Lower overhead shared cache invalidations 3 2004
* 8914574 Content addressable memory and method of searching data thereof 0 2012
* 2013/0046,922 CONTENT ADDRESSABLE MEMORY AND METHOD OF SEARCHING DATA THEREOF 1 2012
* 9003125 Cache coherency protocol for allowing parallel data fetches and eviction to the same addressable index 0 2012
* 2013/0339,622 CACHE COHERENCY PROTOCOL FOR ALLOWING PARALLEL DATA FETCHES AND EVICTION TO THE SAME ADDRESSABLE INDEX 3 2012
* 9250913 Collision-based alternate hashing 0 2012
9244851 Cache coherency protocol for allowing parallel data fetches and eviction to the same addressable index 0 2013
 
ADVANCED MICRO DEVICES, INC. (7)
* 5845106 Method for simulating cache operation 12 1996
* 5838943 Apparatus for speculatively storing and restoring data to a cache memory 40 1996
* 5987561 Superscalar microprocessor employing a data cache capable of performing store accesses in a single clock cycle 28 1997
* 5900012 Storage device having varying access times and a superscalar microprocessor employing the same 15 1997
* 6006317 Apparatus and method performing speculative stores 18 1998
6189068 Superscalar microprocessor employing a data cache capable of performing store accesses in a single clock cycle 48 1999
6233657 Apparatus and method for performing speculative stores 11 1999
 
SAP SE (2)
* 7788240 Hash mapping with secondary table having linear probing 0 2004
* 2006/0143,168 Hash mapping with secondary table having linear probing 11 2004
 
HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. (2)
* 6804768 Programmable microprocessor cache index hashing function 6 2002
* 2003/0196,026 Programmable microprocessor cache index hashing function 0 2002
 
IRDETO B.V. (2)
* 7350085 Tamper resistant software-mass data encoding 16 2001
* 2003/0163,718 Tamper resistant software-mass data encoding 66 2003
 
CISCO TECHNOLOGY, INC. (1)
* 6515963 Per-flow dynamic buffer management 95 1999
 
PACKET INTELLIGENCE LLC (6)
6789116 State processor for pattern matching in a network monitor device 79 2000
* 6771646 Associative cache structure for lookups and updates of flow records in a network monitor 111 2000
6954789 Method and apparatus for monitoring traffic in a network 54 2003
* 2004/0083,299 Method and apparatus for monitoring traffic in a network 141 2003
7299282 State processor for pattern matching in a network monitor device 29 2004
* 2004/0199,630 State processor for pattern matching in a network monitor device 23 2004
 
TELEFONAKTIEBOLAGET L M ERICSSON (PUBL) (2)
* 7197622 Efficient mapping of signal elements to a limited range of identifiers 15 2001
* 2004/0221,132 Efficient mapping of signal elements to a limited range of identifiers 2 2003
 
SILICON GRAPHICS, INC. (1)
* 2006/0149,904 Prefetching hints 25 2006
 
GLOBALFOUNDRIES INC. (6)
* 5860104 Data cache which speculatively updates a predicted data cache storage location with store data and subsequently corrects mispredicted updates 178 1995
* 5752069 Superscalar microprocessor employing away prediction structure 75 1995
7117290 MicroTLB and micro tag for reducing power in a processor 9 2003
* 2005/0050,277 MicroTLB and micro TAG for reducing power in a processor 8 2003
* 2005/0050,278 Low power way-predicted cache 27 2003
8767501 Self-reconfigurable address decoder for associative index extended caches 1 2012
 
GOOGLE LLC (1)
* 5978888 Hardware-managed programmable associativity caching mechanism monitoring cache misses to selectively implement multiple associativity levels 29 1997
 
FUJITSU LIMITED (1)
* 2014/0289,475 CACHE MEMORY DEVICE, INFORMATION PROCESSING DEVICE, AND CACHE MEMORY CONTROL METHOD 3 2014
 
SUN MICROSYSTEMS, INC. (2)
* 6308246 Skewed finite hashing function 5 1998
6618799 Selective address translation in coherent memory replication 8 2002
 
AMPERE COMPUTING LLC (3)
* 9367454 Address index recovery using hash-based exclusive or 0 2013
* 2015/0052,286 RETRIEVAL HASH INDEX 0 2013
* 9558123 Retrieval hash index 0 2016
 
ARM LIMITED (1)
* 6366978 Cache memory 20 1999
 
INTEL CORPORATION (1)
8954790 Fault tolerance of multi-processor system with distributed cache 0 2011
 
RED HAT, INC. (2)
* 9542409 Deduplicated file system 0 2008
* 2010/0131,480 DEDUPLICATED FILE SYSTEM 22 2008
 
TEXAS INSTRUMENTS INCORPORATED (1)
* 2010/0169,578 CACHE TAG MEMORY 33 2008
 
MORGAN STANLEY & CO., INCORPORATED (1)
7386701 Prefetching hints 5 2006
 
CoWare N.V., Frontier Design BYBA (1)
* 6324629 Method for determining an optimized data organization 14 1999
 
NETWORK APPLIANCE, INC. (3)
* 7702870 Method and apparatus for defragmentation and for detection of relocated blocks 53 2006
* 2007/0168,633 Method and apparatus for defragmentation and for detection of relocated blocks 34 2006
8156290 Just-in-time continuous segment cleaning 18 2009
 
ARM FINANCE OVERSEAS LIMITED (3)
* 5732242 Consistently specifying way destinations through prefetching hints 58 1995
6240488 Prefetching hints 27 1997
7127586 Prefetching hints 4 2001
* Cited By Examiner