Content Addressable Memory (cam) Patents (Class 711/108)
  • Patent number: 8904100
    Abstract: Embodiments of the invention relate to process identifier (PID) based cache information transfer. An aspect of the invention includes sending, by a first core of a processor, a PID associated with a cache miss in a first local cache of the first core to a second cache of the processor. Another aspect of the invention includes determining that the PID associated with the cache miss is listed in a PID table of the second cache. Yet another aspect of the invention includes based on the PID being listed in the PID table of the second cache, determining a plurality of entries in a cache directory of the second cache that are associated with the PID. Yet another aspect of the invention includes pushing cache information associated with each of the determined plurality of entries in the cache directory from the second cache to the first local cache.
    Type: Grant
    Filed: June 11, 2012
    Date of Patent: December 2, 2014
    Assignee: International Business Machines Corporation
    Inventors: Fadi Y. Busaba, Steven R. Carlough, Christopher A. Krygowski, Brian R. Prasky, Chung-Lung K. Shum
  • Patent number: 8904102
    Abstract: Embodiments of the invention relate to process identifier (PID) based cache information transfer. An aspect of the invention includes sending, by a first core of a processor, a PID associated with a cache miss in a first local cache of the first core to a second cache of the processor. Another aspect of the invention includes determining that the PID associated with the cache miss is listed in a PID table of the second cache. Yet another aspect of the invention includes based on the PID being listed in the PID table of the second cache, determining a plurality of entries in a cache directory of the second cache that are associated with the PID. Yet another aspect of the invention includes pushing cache information associated with each of the determined plurality of entries in the cache directory from the second cache to the first local cache.
    Type: Grant
    Filed: March 4, 2013
    Date of Patent: December 2, 2014
    Assignee: International Business Machines Corporation
    Inventors: Fadi Y. Busaba, Steven R. Carlough, Christopher A. Krygowski, Brian R. Prasky, Chung-Lung K. Shum
  • Patent number: 8902915
    Abstract: A context-free (stateless) dataport may allow multiple processors to perform read and write operations on a shared memory. The operations may include, for example, structured data operations such as image and video operations. The dataport may perform addressing computations associated with block memory operations. Therefore, the dataport may be able, for example, to relieve the processors that it serves from this duty. The dataport may be accessed using a message interface that may be implemented in a standard and generalized manner and that may therefore be easily transportable between different types of processors.
    Type: Grant
    Filed: September 24, 2012
    Date of Patent: December 2, 2014
    Assignee: Intel Corporation
    Inventors: Dinakar Munagala, Hong Jiang, Bishara Shomar, Val Cook, Michael K. Dwyer, Thomas Piazza
  • Patent number: 8904101
    Abstract: In one embodiment, multiple content-addressable memory entries are associated with each other to effectively form a batch content-addressable memory entry that spans multiple physical entries of the content-addressable memory device. To match against this content-addressable memory entry, multiple lookup operations are required—i.e., one lookup operation for each combined physical entry. Further, one embodiment provides that a batch content-addressable memory entry can span one, two, three, or more physical content-addressable memory entries, and batch content-addressable memory entries of varying sizes could be programmed into a single content-addressable memory device. Thus, a lookup operation might take two lookup iterations on the physical entries of the content-addressable memory device, with a next lookup operation taking a different number of lookup iterations (e.g., one, three or more).
    Type: Grant
    Filed: August 26, 2012
    Date of Patent: December 2, 2014
    Assignee: Cisco Technology, Inc.
    Inventors: Doron Shoham, Ilan Lisha, Yossi Socoletzky
  • Patent number: 8898423
    Abstract: A data storage system is disclosed that utilizes a high performance caching architecture. In one embodiment, the caching architecture utilizes a cache table, such as a lookup table, for referencing or storing host data units that are cached or are candidates for being cached in the solid-state memory. Further, the caching architecture maintains a segment control list that specifies associations between particular cache table entries and particular data segments. Such separation of activities related to the implementation of a caching policy from activities related to storing cached data and candidate data provides robustness and scalability while improving performance.
    Type: Grant
    Filed: January 31, 2012
    Date of Patent: November 25, 2014
    Assignee: Western Digital Technologies, Inc.
    Inventors: Chandra M. Guda, Michael Ainsworth, Choo-Bhin Ong, Marc-Angelo P. Carino
  • Patent number: 8892805
    Abstract: A high performance computing system is provided with an ASIC that communicates with another device in the system according to a protocol defined by the other device. The ASIC is coupled to a reconfigurable protocol table, in the form of a high speed content-addressable memory (“CAM”). The CAM includes instructions to control the execution of the protocol by the ASIC. The CAM may include instructions to control the ASIC in the event that unanticipated signals or other errors are encountered while executing the protocol. Internal ASIC state data may be routed to the CAM to permit the ASIC to generate a reasonable response to errors either in the design or fabrication of the ASIC or the device with which it is communicating.
    Type: Grant
    Filed: March 7, 2013
    Date of Patent: November 18, 2014
    Assignee: Silicon Graphics International Corp.
    Inventor: Thomas Edward McGee
  • Patent number: 8886657
    Abstract: A method, apparatus, and non-transitory computer readable storage medium for validating content is provided. Data is parsed into at least a first group of data and a second group of data according to a plurality of types of content present in the data. The data is ingested into an associative memory. The associative memory forms a plurality of associations among the data. The associative memory is configured to be queried based on at least one relationship selected from a group consisting of direct relationships and indirect relationships among the data. The associative memory comprises a content-addressable structure, the content-addressable structure comprising a memory organization in which the data is configured to be accessed by the content as opposed to being configured to be accessed by addresses for the data. The first group of data and the second group of data are communicated in a graphical representation.
    Type: Grant
    Filed: September 30, 2011
    Date of Patent: November 11, 2014
    Assignee: The Boeing Company
    Inventor: Brian Warn
  • Patent number: 8886879
    Abstract: Systems, and methods, including executable instructions and/or logic thereon are provided for ternary content addressable memory (TCAM) updates. A TCAM system includes a TCAM matching array, a TCAM action array that specifies actions that are taken upon a match in the TCAM array, and a TCAM driver that provides a programmable interface to the TCAM matching array and the TCAM action array. Program instructions are executed by the TCAM driver to add a divert object which encompasses actions associated with the TCAM actions array and to apply the divert object to update action fields in the TCAM action array, without changing the relative order of entries in the TCAM matching array, while hardware is simultaneously using the entries.
    Type: Grant
    Filed: April 27, 2012
    Date of Patent: November 11, 2014
    Assignee: Hewlett-Packard Development Company, L.P.
    Inventors: Suddha Sekhar Dey, Brian E. Krelle
  • Patent number: 8880494
    Abstract: A LPM search engine includes a plurality of exact match (EXM) engines and a moderately sized TCAM. Each EXM engine uses a prefix bitmap scheme that allows the EXM engine to cover multiple consecutive prefix lengths. Thus, instead of covering one prefix length L per EXM engine, the prefix bitmap scheme enables each EXM engine to cover entries having prefix lengths of L, L+1, L+2 and L+3, for example. As a result, fewer EXM engines are potentially underutilized, which effectively reduces quantization loss. Each EXM engine provides a search result with a determined fixed latency when using the prefix bitmap scheme. The results of multiple EXM engines and the moderately sized TCAM are combined to provide a single search result, representative of the longest prefix match. In one embodiment, the LPM search engine supports 32-bit IPv4 (or 128-bit IPv6) search keys, each having associated 15-bit level 3 VPN identification values.
    Type: Grant
    Filed: October 28, 2011
    Date of Patent: November 4, 2014
    Assignee: Brocade Communications Systems, Inc.
    Inventors: Jian Liu, Philip Lynn Leichty, How Tung Lim, John Michael Terry, Mahesh Srinivasa Maddury, Wing Cheung, Kung Ling Ko
  • Patent number: 8880556
    Abstract: A network device may include a heterogeneously organized TCAM in which entries for different applications implemented by the network device are stored at arbitrary locations in the TCAM. The TCAM may be programmed to include entries, each corresponding to a node of a prefix tree (“trie”) data structure, used in processing network traffic received by the network device. The entries in the TCAM may represent multiple different data structures that are heterogeneously stored in the TCAM and each data structure may be used by the network device to implement an application related to processing of network traffic.
    Type: Grant
    Filed: August 19, 2009
    Date of Patent: November 4, 2014
    Assignee: Juniper Networks, Inc.
    Inventor: Yafan An
  • Patent number: 8879555
    Abstract: The present invention relates to the field of communication technologies, and discloses a method and an apparatus for forwarding packets to solve the problems in the prior art, namely, if a long Internet Protocol (IP) address needs to be searched for at the time of forwarding a packet, the number of Ternary Content Addressable Memories (TCAMs) need to be increased, or an external Random Access Memory (RAM) needs to be accessed for more times, which leads to a high cost and low performance.
    Type: Grant
    Filed: May 18, 2011
    Date of Patent: November 4, 2014
    Assignee: Huawei Technologies Co., Ltd.
    Inventors: Wenhua Du, Rongfeng Hong, Yi Yi
  • Publication number: 20140325139
    Abstract: A method is comprised of inputting a comparand word to a plurality of hash circuits, each hash circuit being responsive to a different portion of the comparand word. The hash circuits output a hash signal which is used to enable or precharge portions of a CAM. The comparand word is also input to the CAM. The CAM compares the comparand word in the precharged portions of the CAM and outputs information responsive to the comparing step. When used to process Internet addresses, the information output may be port information or an index from which port information may be located. A circuit is also disclosed as is a method of initializing the circuit.
    Type: Application
    Filed: July 14, 2014
    Publication date: October 30, 2014
    Inventor: Keith R. Slavin
  • Publication number: 20140325138
    Abstract: Technologies are generally described for exploiting program phase behavior to duplicate most recently and/or frequently accessed tag entries in a Tag Replication Buffer (TRB) to protect the information integrity of tag arrays in a processor cache. The reliability/effectiveness of microprocessor cache performance may be further improved by capturing/duplicating tags of dirty cache lines, exploiting the fact that detected error-corrupted clean cache lines can be recovered by L2 cache. A deterministic TRB replacement triggered early write-back scheme may provide full duplication and recovery of single-bit errors for tags of dirty cache lines.
    Type: Application
    Filed: July 2, 2014
    Publication date: October 30, 2014
    Inventors: Jie Hu, Shuai Wang
  • Patent number: 8874876
    Abstract: A method for performing packet lookups is provided. Packets (which each have a body and a header) are received and parsed to parsing headers. A hash function is applied to each header, and each hashed header is compared with a plurality of binary rules stored within a primary table, where each binary rule is a binary version of at least one ternary rule from a first set of ternary rules. For each match failure with the plurality of rules, a secondary table is searched using the header associated with each match failure, where the secondary table includes a second set of ternary rules.
    Type: Grant
    Filed: December 12, 2011
    Date of Patent: October 28, 2014
    Assignee: Texas Instruments Incorporated
    Inventors: Sandeep Bhadra, Aman A. Kokrady, Patrick W. Bosshart, Hun-Seok Kim
  • Patent number: 8874838
    Abstract: A network device allocates a particular number of memory blocks in a ternary content-addressable memory (TCAM) of the network device to each database of multiple databases, and creates a list of additional memory blocks in an external TCAM of the network device. The network device also receives, by the external TCAM, a request for an additional memory block to provide one or more rules from one of the multiple databases, and allocates, by the external TCAM and to the requesting database, an additional memory block from the list of additional memory blocks.
    Type: Grant
    Filed: December 28, 2009
    Date of Patent: October 28, 2014
    Assignee: Juniper Networks, Inc.
    Inventors: Sandip Shah, Jing Ai
  • Patent number: 8861524
    Abstract: A method, apparatus and computer program product for performing TCAM lookups in multi-threaded packet processors is presented. A Ternary Content Addressable Memory (TCAM) key is constructed for a packet and a Packet Reference Number (PRN) is generated. The TCAM key and the packet are tagged with the PRN. The TCAM key and the PRN are sent to a TCAM and in parallel the packet and the PRN are sent to a packet processing thread. The PRN is used to read the TCAM result when it is ready.
    Type: Grant
    Filed: November 22, 2010
    Date of Patent: October 14, 2014
    Assignee: Avaya Inc.
    Inventor: Hamid Assarpour
  • Patent number: 8861347
    Abstract: A communication apparatus includes a Content-Addressable Memory (CAM) and packet processing circuitry. The packet processing circuitry is configured to store in respective regions of the CAM multiple Access Control Lists (ACLs) that are defined for respective packet types, to classify an input packet to a respective packet type selected from the packet types, to identify a region holding an ACL defined for the selected packet type, and to process the input packet in accordance with the ACL stored in the identified region.
    Type: Grant
    Filed: December 4, 2011
    Date of Patent: October 14, 2014
    Assignee: Mellanox Technologies Ltd.
    Inventors: Gil Bloch, Itamar Rabenstein, Miriam Menes, Ido Bukspan
  • Patent number: 8856092
    Abstract: Systems and methods for managing databases are disclosed. One system includes a processor-addressable physical memory and a processor in communication with the processor-addressable physical memory and configured to execute an environment and to allocate an environment memory to the environment. In such a system, the environment is configured to maintain a database of objects in a database memory within the environment memory. An application executes in an application memory within the environment memory, and upon instantiation of a database object, the application environment allocates memory in the database for the database object, the database providing master storage for the database object. Upon an instruction to obtain the database object from said application, the environment provides to the application a reference to the database object; and upon an access operation on the database object by the application, provides to the application direct access to data of said database object.
    Type: Grant
    Filed: July 11, 2012
    Date of Patent: October 7, 2014
    Assignee: Starcounter AB
    Inventors: Joachim Wester, Erik Ohlsson, Per Samuelsson, Peter Idestam-Almquist
  • Patent number: 8856593
    Abstract: Data replication in a distributed node system including one or more nodes. A consensus protocol for failure recovery is implemented. Data items and information relating to consensus protocol roles of participant nodes are stored in at least some of the plurality of nodes. Logical logs stored in at least some of the plurality of nodes are created. The logical logs contain additional consensus protocol information including container metadata and replicated data.
    Type: Grant
    Filed: April 12, 2011
    Date of Patent: October 7, 2014
    Assignee: Sandisk Enterprise IP LLC
    Inventors: Andrew D. Eckhardt, Michael J. Koster
  • Patent number: 8854852
    Abstract: A multi-priority encoder includes a plurality of interconnected, single-priority encoders arranged in descending priority order. The multi-priority encoder includes circuitry for blocking a match output by a lower level single-priority encoder if a higher level single-priority encoder outputs a match output. Match data is received from a content addressable memory, and the priority encoder includes address encoding circuitry for outputting the address locations of each highest priority match line flagged by the highest priority indicator. Each single-priority encoder includes a highest priority indicator which has a plurality of indicator segments, each indicator segment being associated with a match line input.
    Type: Grant
    Filed: April 24, 2013
    Date of Patent: October 7, 2014
    Assignee: Micron Technology, Inc.
    Inventor: Zvi Regev
  • Patent number: 8856435
    Abstract: A method, apparatus and computer program product for an external, self-initializing FIFO containing indexes of free CAM memory locations is presented. When data is sent to the CAM for a lookup, this external FIFO provides the CAM with the index of a free memory location within the CAM so that if the data word is not found in the CAM (i.e. a CAM miss), the data can be written to the designated available free entry in the CAM. Thus, if the same data word is searched in the CAM in the following cycle it will result in a hit.
    Type: Grant
    Filed: October 25, 2007
    Date of Patent: October 7, 2014
    Assignee: Oracle America, Inc.
    Inventors: Milton H. Shih, Robert J. Weisenbach
  • Patent number: 8850121
    Abstract: A load/store unit with an outstanding load miss buffer and a load miss result buffer is configured to read data from a memory system having a level one cache. Missed load instructions are stored in the outstanding load miss buffer. The load/store unit retrieves data for multiple dependent missed load instructions using a single cache access and stores the data in the load miss result buffer. The outstanding load miss buffer stores a first missed load instruction in a first primary entry. Additional missed load instructions that are dependent on the first missed load instructions are stored in dependent entries of the first primary entry or in shared entries. If a shared entry is used for a missed load instruction the shared entry is associated with the primary entry.
    Type: Grant
    Filed: September 30, 2011
    Date of Patent: September 30, 2014
    Assignee: Applied Micro Circuits Corporation
    Inventors: Matthew W. Ashcraft, John Gregory Favor, David A. Kruckemyer
  • Patent number: 8850109
    Abstract: An apparatus having a first circuit and a second circuit. The first circuit may be configured to (i) parse a first data word into a first data portion and a second data portion and (ii) parse a first address into a first address portion and a second address portion. The second circuit generally has a plurality of memory blocks. The second circuit may be configured to store the second data portion in a particular one of the memory blocks using (i) the first data portion to determine the particular memory block and (ii) the first address portion to determine a particular one of a plurality of locations within the particular memory block. The data portion may not be stored in the memory blocks. The particular location may be determined independently of the second address portion.
    Type: Grant
    Filed: December 22, 2011
    Date of Patent: September 30, 2014
    Assignee: Avago Technologies General IP (Singapore) Pte. Ltd.
    Inventors: David B. Grover, Richard J. Stephani, Gordon W. Priebe
  • Patent number: 8843705
    Abstract: A mechanism is provided in a cache for providing a read and write aware cache. The mechanism partitions a large cache into a read-often region and a write-often region. The mechanism considers read/write frequency in a non-uniform cache architecture replacement policy. A frequently written cache line is placed in one of the farther banks. A frequently read cache line is placed in one of the closer banks. The size ratio between read-often and write-often regions may be static or dynamic. The boundary between the read-often region and the write-often region may be distinct or fuzzy.
    Type: Grant
    Filed: August 13, 2012
    Date of Patent: September 23, 2014
    Assignee: International Business Machines Corporation
    Inventors: Jian Li, Ramakrishnan Rajamony, William E. Speight, Lixin Zhang
  • Publication number: 20140281208
    Abstract: An associative look-up instruction for an instruction set architecture (ISA) of a processor and methods for use of an associative look-up instruction. The associative look-up instruction of the ISA specifies one or more fields within a data unit that are used as a pattern of bits for identifying data content in a memory structure to be loaded into hardware registers or other storage components of the ISA. Specified parameters of the associative operation may be explicit within the instruction or indirectly pointed to via hardware registers or other storage components of the ISA. The memory structure may be content addressable memory (CAM).
    Type: Application
    Filed: March 13, 2013
    Publication date: September 18, 2014
    Applicant: SILICON GRAPHICS INTERNATIONAL CORP.
    Inventor: Eric C. Fromm
  • Patent number: 8838897
    Abstract: Technologies are generally described for exploiting program phase behavior to duplicate most recently and/or frequently accessed tag entries in a Tag Replication Buffer (TRB) to protect the information integrity of tag arrays in a processor cache. The reliability/effectiveness of microprocessor cache performance may be further improved by capturing/duplicating tags of dirty cache lines, exploiting the fact that detected error-corrupted clean cache lines can be recovered by L2 cache. A deterministic TRB replacement triggered early write-back scheme may provide full duplication and recovery of single-bit errors for tags of dirty cache lines.
    Type: Grant
    Filed: June 29, 2011
    Date of Patent: September 16, 2014
    Assignee: New Jersey Institute of Technology
    Inventors: Jie Hu, Shuai Wang
  • Patent number: 8838912
    Abstract: A disclosed embodiment is an interruptible write block comprising a primary register having an input coupled to an input of the interruptible write block, a secondary register having an input selectably coupled to an output of the primary register and to an output of the secondary register through an interrupt circuit. The interrupt circuit is utilized to interrupt flow of new data from the primary register to the secondary register during an interrupt of a write operation, such that upon resumption of the write operation the secondary register contains valid data. A method of utilizing an interruptible write block during a write operation comprises loading data into a primary register, interrupting the write operation to perform one or more other operations, loading the data into a secondary register while loading new data into the primary register, and resuming the write operation using valid data from the secondary register.
    Type: Grant
    Filed: April 26, 2013
    Date of Patent: September 16, 2014
    Assignee: Broadcom Corporation
    Inventor: Christopher Gronlund
  • Patent number: 8818268
    Abstract: In this content data delivery method, content data is transmitted from a content server to a first semiconductor device through a network. Then, the content data, content ID identifying the content data, and route data showing a route through which the content data is transmitted are transmitted from the first semiconductor device to a second semiconductor device using close-proximity wireless communication. Thereafter, the content ID and the route data are transmitted from the second semiconductor device to the content server. In addition, based on the route data, a reward corresponding to the content ID is calculated for the first semiconductor device, and the reward is provided to the first semiconductor device.
    Type: Grant
    Filed: March 21, 2012
    Date of Patent: August 26, 2014
    Assignee: Kabushiki Kaisha Toshiba
    Inventors: Tsukasa Matoba, Shinichi Matsukawa, Akihiro Kasahara, Hiroyuki Sakamoto
  • Patent number: 8819392
    Abstract: In one embodiment, the present invention includes a translation lookaside buffer (TLB) to store entries each having a translation portion to store a virtual address (VA)-to-physical address (PA) translation and a second portion to store bits for a memory page associated with the VA-to-PA translation, where the bits indicate attributes of information in the memory page. Other embodiments are described and claimed.
    Type: Grant
    Filed: July 17, 2012
    Date of Patent: August 26, 2014
    Assignee: Intel Corporation
    Inventors: David Champagne, Abhishek Tiwari, Wei Wu, Christopher J. Hughes, Sanjeev Kumar, Shih-Lien Lu
  • Publication number: 20140223092
    Abstract: Separate key processing units generate different search keys based off of a single master key received at a ternary memory array chip. A reference search key and selection logic are provided to reduce power dissipation in a global search key bus across the chip. The reference search key is the output of one of the key processing units and its bytes are compared with the output from each of the other key processing units. A select signal from each unit indicates which bytes match. Each matching byte at each key processing unit is blocked from changing corresponding bit line logic values across the chip, reducing the number of voltage switches occurring in the global search key bus. The select signal causes a selection module local to each superblock to select the matching byte(s) from the reference search key and non-matching byte(s) from the global search key bus to reconstitute the entire search key.
    Type: Application
    Filed: February 4, 2013
    Publication date: August 7, 2014
    Applicant: Broadcom Corporation
    Inventor: Chetan DESHPANDE
  • Publication number: 20140223093
    Abstract: The hybrid dynamic-static encoder described herein may combine dynamic and static structural and logical design features that strategically partition dynamic nets and logic to substantially eliminate redundancy and thereby provide area, power, and leakage savings relative to a fully dynamic encoder with an equivalent logic delay. For example, the hybrid dynamic-static encoder may include identical top and bottom halves, which may be combined to produce final encoded index, hit, and multi-hit outputs. Each encoder half may use a dynamic net for each index bit with rows that match a search key dotted. If a row has been dotted to indicate that the row matches the search key, the dynamic nets associated therewith may be evaluated to reflect the index associated with the row. Accordingly, the hybrid dynamic-static encoder may have a reduced set of smaller dynamic nets that leverage redundant pull-down structures across the index, hit, and multi-hit dynamic nets.
    Type: Application
    Filed: March 13, 2013
    Publication date: August 7, 2014
    Applicant: QUALCOMM INCORPORATED
    Inventors: David Paul Hoff, Tracey A. Della Rova, Jason P. Martzloff
  • Publication number: 20140223090
    Abstract: An electronic apparatus that includes a controlled device with a plurality of control registers. A data bus is coupled between the controlled device and a processor, and an interface is configured to receive a plurality of portions of data read from or to be written to the plurality of control registers. The electronic apparatus also includes a correlation circuit configured to associate at least some of the plurality of portions of data with respective physical addresses of the plurality of control registers based on respective positions of the respective portions of data within the plurality.
    Type: Application
    Filed: February 1, 2013
    Publication date: August 7, 2014
    Applicant: Apple Inc
    Inventor: Michael Ross Malone
  • Patent number: 8799221
    Abstract: Some of the embodiments herein provide a seamless cloud of storage. This storage may be content-addressable storage. An end application may or may not be exposed to the fact that content-addressable storage is used. Various embodiments herein provide event notification, which may allow applications or users to subscribe to particular events (such as storage of an X-ray by a particular entity). Some embodiments provide for a shared archive. A shared archive may provide homogeneous access to medical data, etc. that was previously stored into the CAS cloud by heterogeneous applications, varied data types, etc. Additionally, embodiments herein allow for the creation and distribution of virtual packages. For example, a user may create a virtual package for all images related to a patient so that she may have a virtual package of all of her medical data to present to a referring physician.
    Type: Grant
    Filed: April 22, 2011
    Date of Patent: August 5, 2014
    Inventors: John Canessa, Kenneth Wright
  • Publication number: 20140215143
    Abstract: Examples disclose a crossbar memory with a first crossbar to write data values corresponding to a word. The crossbar memory further comprises a second crossbar, substantially parallel to the first crossbar, to receive voltage for activation of data values across the second crossbar. Additionally, the examples of the crossbar memory provide an output line that interconnects with the crossbars at junctions, to read the data values at the junctions. Further, the examples of the crossbar memory provide a logic module to determine whether the second crossbar data values correspond to the word written in the first crossbar.
    Type: Application
    Filed: January 31, 2013
    Publication date: July 31, 2014
    Applicant: Hewlett-Packard Development Company, L.P.
    Inventors: Matthew D. Pickett, Frederick Perner
  • Publication number: 20140215144
    Abstract: Aspects of the disclosure provide a packet processing system. The packet processing system includes a plurality of processing units, a ternary content addressable memory (TCAM) engine, and an interface. The plurality of processing units is configured to process packets received from a computer network, and to perform an action on a received packet. The action is determined responsively to a lookup in a table of rules to determine a rule to be applied to the received packet. The TCAM engine has a plurality of TCAM banks defining respective subsets of a TCAM memory space to store the rules. The interface is configured to selectably associate the TCAM banks to the processing units. The association is configurable to allocate the subsets of the TCAM memory space to groups of the processing units to share the TCAM memory space by the processing units.
    Type: Application
    Filed: January 30, 2014
    Publication date: July 31, 2014
    Applicant: Marvell Israel (M.I.S.L) Ltd.
    Inventors: Lior VALENCY, Aron Wohlgemuth, Gil Levy
  • Publication number: 20140208016
    Abstract: A method includes determining addresses, determining masks, and storing the masks in a ternary content-addressable-memory for matching a candidate address to the masks to determine matches to the addresses. The addresses include an address width and positions, the address width equal to the number of positions. Each mask matches one or more addresses, includes a mask width equal to the address width, and includes matching criteria for determining whether to filter a given address. The matching criteria includes a matching component specifying that an identified position in the address includes a particular value or a wildcard component specifying that an identified position in the address is to be ignored. The masks include at least one mask with a wildcard component. The number of masks is less than the number of the addresses. The number of possible addresses corresponding to the masks is equal to the number of the addresses.
    Type: Application
    Filed: June 24, 2013
    Publication date: July 24, 2014
    Inventors: Yasir Malik, Ali Zaringhalam
  • Patent number: 8787059
    Abstract: A content addressable memory (CAM) device has an array including a plurality of CAM rows that are partitioned into row segments, wherein a respective row includes a first row segment including a number of first CAM cells coupled to a first match line segment, a second row segment including a number of second CAM cells coupled to a second match line segment, and a circuit to selectively pre-charge the first match line segment in response to a value indicating whether data stored in the first row segment of the respective row is the same as data stored in the first row segment of another row. Power consumption can be reduced during compare operations in which the first row segment of another row that stores the same data as the first row segment of the respective row is not enabled.
    Type: Grant
    Filed: December 5, 2011
    Date of Patent: July 22, 2014
    Assignee: NetLogic Microsystems, Inc.
    Inventor: Vinay Iyengar
  • Patent number: 8788791
    Abstract: A comparand word is input to a plurality of hash circuits with each hash circuit responding to a different portion of the comparand word. The hash circuit outputs a hash signal which enables or pre-charges portions of a content addressable memory (CAM). The comparand word is also input to the CAM. The CAM compares the comparand word in the pre-charged portions of the CAM and outputs information responsive to the comparison. When Internet addresses are processed, the output information may be port information or an index for locating.
    Type: Grant
    Filed: January 6, 2012
    Date of Patent: July 22, 2014
    Assignee: Micron Technology, Inc.
    Inventor: Keith R. Slavin
  • Patent number: 8782367
    Abstract: A circuit for controlling the access to at least one area of a memory accessible by a program execution unit, including a first instruction address input; at least one second data address input, the addresses coming from the execution unit; at least one function of correlation of these addresses; and at least one output of a bit for validating the fulfilling of conditions set by the correlation function.
    Type: Grant
    Filed: December 18, 2007
    Date of Patent: July 15, 2014
    Assignee: STMicroelectronics S.A.
    Inventors: Stéphan Courcambeck, Albert Martinez, Jean Nicolai, William Orlando
  • Patent number: 8775580
    Abstract: Techniques are disclosed for zoning information to be shared with an NPIV proxy device or an NPV device such as a blade switch in a blade chassis. Doing so allows the NPV device to enforce zoning locally for the attached server blades and virtualized systems. The NPV device may learn zoning rules using Fiber Channel name server queries and registered state change notifications. Additionally, the NPV device may snoop name server queries to retrieve zoning information (or state change messages) without using the zoning change protocols and without consuming a Fiber Channel domain from the Fiber Channel fabric.
    Type: Grant
    Filed: July 22, 2009
    Date of Patent: July 8, 2014
    Assignee: Cisco Technology, Inc.
    Inventors: Madhava Rao Cheethirala, Subrata Banerjee, Raja Rao Tadimeti
  • Patent number: 8775727
    Abstract: Described embodiments provide a lookup engine that receives lookup requests including a requested key and a speculative add requestor. Iteratively, for each one of the lookup requests, the lookup engine searches each entry of a lookup table for an entry having a key matching the requested key of the lookup request. If the lookup table does not include an entry having a key matching the requested key, the lookup engine sends a miss indication corresponding to the lookup request to the control processor. If the speculative add requestor is set, the lookup engine speculatively adds the requested key to a free entry in the lookup table. Speculatively added keys are searchable in the lookup table for subsequent lookup requests to maintain coherency of the lookup table without creating duplicate key entries, comparing missed keys with each other or stalling the lookup engine to insert missed keys.
    Type: Grant
    Filed: August 31, 2012
    Date of Patent: July 8, 2014
    Assignee: LSI Corporation
    Inventors: Leonid Baryudin, Earl T. Cohen, Kent Wayne Wendorf
  • Patent number: 8776191
    Abstract: Techniques for reducing storage space and detecting corruption in hash-based applications are presented. Data strings are hashed or transformed into numerically represented strings. Groupings of the numeric strings form a set. Each numeric string of a particular set is associated with a unique co-prime number. All the numeric strings and their corresponding co-prime numbers for a particular set are processed using a Chinese Remainder Theorem algorithm (CRT) to produce a single storage value. The single storage value is retained in place of the original numeric strings. The original numeric strings can be subsequently reproduced and verified using the single storage value and the co-prime numbers.
    Type: Grant
    Filed: January 25, 2008
    Date of Patent: July 8, 2014
    Assignee: Novell Intellectual Property Holdings, Inc.
    Inventors: Vardhan Itta Vishnu, Hithalapura Basavaraj Puttali
  • Patent number: 8775726
    Abstract: A range determination module determines a search range of TCAM content values and a search criteria module creates a TCAM search value from a search range by combining common higher order bits with don't care lower order bits that change within the search range. A match module searches TCAM using the search value to determine a match count. A division module creates upper/lower sub-ranges by creating upper/lower midpoint content values within the search range. Upper sub-range is between an upper content value and the upper midpoint content value and lower sub-range is between the lower midpoint content value and a lower content value. The upper midpoint content value includes changing a most significant don't care bit to a 1 and remaining don't care bits to 0. The lower midpoint content value includes changing a most significant don't care bit to 0 and remaining don't care bits to 1.
    Type: Grant
    Filed: July 27, 2012
    Date of Patent: July 8, 2014
    Assignee: International Business Machine Corporation
    Inventor: Noriaki Asamoto
  • Patent number: 8767459
    Abstract: A method for data storage includes accepting data for storage in an array of analog memory cells, which are arranged in rows associated with respective word lines. At least a first page of the data is stored in a first row of the array, and at least a second page of the data is stored in a second row of the array, having a different word line from the first row. After storing the first and second pages, a third page of the data is stored jointly in the first and second rows.
    Type: Grant
    Filed: July 28, 2011
    Date of Patent: July 1, 2014
    Assignee: Apple Inc.
    Inventors: Yoav Kasorla, Naftali Sommer, Eyal Gurgi, Micha Anholt
  • Patent number: 8767488
    Abstract: A method and apparatus for performing half-column redundancy in a CAM device is disclosed, capable of replacing a defective half-column in the CAM array with only one half of another column. For example, present embodiments can provide twice the redundancy by replacing only one half of a defective CAM cell with one half of a spare cell or of a selected cell. The half-column redundancy disclosed herein provides finer granularity and higher effectiveness to the redundancy scheme as compared to conventional redundancy schemes employed on a CAM array. Thus, the CAM array can be designed and fabricated with a higher yield without having to accommodate for more spare columns than employed by conventional redundancy schemes, allowing for more efficient use of silicon area and a more robust CAM array design.
    Type: Grant
    Filed: November 21, 2011
    Date of Patent: July 1, 2014
    Assignee: NetLogic Microsystems, Inc.
    Inventors: Varadarajan Srinivasan, Sandeep Khanna, Bindiganavale S. Nataraj
  • Publication number: 20140181394
    Abstract: Responsive to receiving a write request for a cache line from an input/output device, a caching agent of a first processor determines that the cache line is managed by a home agent of a second processor. The caching agent sends an ownership request for the cache line to the second processor. A home agent of the second processor receives the ownership request, generates an entry in a directory cache for the cache line, the entry identifying the remote caching agent as having ownership of the cache line, and grants ownership of the cache line to the remote caching agent. Responsive to receiving the grant of ownership for the cache line from the home agent an input/output controller of the first processor adds an entry for the cache line to an input/output write cache, the entry comprising a first indicator that the cache line is managed by the home agent of the second processor.
    Type: Application
    Filed: December 21, 2012
    Publication date: June 26, 2014
    Inventors: Herbert H. Hum, James R. Vash, Eric A. Gouldey, Ganesh Kumar, David Bubien, Manoj K. Arora, Luke Chang, Lavanya Nama, Mahak Gupta
  • Publication number: 20140173193
    Abstract: A tag unit configured to manage a cache unit includes a coalescer that implements a set hashing function. The set hashing function maps a virtual address to a particular content-addressable memory unit (CAM). The coalescer implements the set hashing function by splitting the virtual address into upper, middle, and lower portions. The upper portion is further divided into even-indexed bits and odd-indexed bits. The even-indexed bits are reduced to a single bit using a XOR tree, and the odd-indexed are reduced in like fashion. Those single bits are combined with the middle portion of the virtual address to provide a CAM number that identifies a particular CAM. The identified CAM is queried to determine the presence of a tag portion of the virtual address, indicating a cache hit or cache miss.
    Type: Application
    Filed: December 19, 2012
    Publication date: June 19, 2014
    Applicant: NVIDIA CORPORATION
    Inventors: Brian Fahs, Eric T. ANDERSON, Nick Barrow-Williams, Shirish GADRE, Joel James MCCORMACK, Bryon S. NORDQUIST, Nirmal Raj Saxena, Lacky V. Shah
  • Patent number: 8756368
    Abstract: A memory controller is disclosed that provides refresh control circuitry to generate first refresh commands directed to a first row of storage cells within a memory device at a first rate. The refresh control circuitry generates second refresh commands directed to a second row of storage cells within the memory device at a second rate. Output circuitry outputs the first and second refresh commands to the memory device.
    Type: Grant
    Filed: July 17, 2009
    Date of Patent: June 17, 2014
    Assignee: Rambus Inc.
    Inventors: Scott C. Best, Ely K. Tsern
  • Patent number: 8750144
    Abstract: Aspects of the invention provide for updating TCAMs while minimizing TCAM entry updates to add/delete ACL rules. For example, one aspect provides a method for minimizing updates in a router forwarding table, such as a TCAM, including a plurality of rules indexed by priority. This method comprises providing a proposed rule to be added to the router forwarding table, identifying a range of candidate entries in the router forwarding table for the proposed rule, determining a minimum set of rules to relocate, and creating an empty entry in the range of candidate entries based upon the minimum set of rules to relocate. The method may further comprise reallocating the minimum set of rules by, for example, shifting the minimum set of rules in sequence based on priority, and adding the proposed rule to the empty entry in the range of candidate entries.
    Type: Grant
    Filed: October 20, 2010
    Date of Patent: June 10, 2014
    Assignee: Google Inc.
    Inventors: Junlan Zhou, Zhengrong Ji
  • Publication number: 20140156924
    Abstract: A semiconductor memory device includes a power block configured to generate an internal voltage based on an external voltage which is applied through a power pad; a circuit block configured to operate according to the internal voltage and drive memory cells; and a CAM (content addressed memory) block configured to operate according to the external voltage and store setting information necessary for driving of the memory cells.
    Type: Application
    Filed: March 18, 2013
    Publication date: June 5, 2014
    Applicant: SK HYNIX INC.
    Inventors: Chun Woo JEON, Hwang HUH