Patents Assigned to Cavium Networks, In.
  • Publication number: 20120262314
    Abstract: The disclosure relates to a system and a method for hardware encoding and decoding according to the Limpel Ziv STAC (LZS) and Deflate protocols based upon a configuration bit.
    Type: Application
    Filed: April 15, 2011
    Publication date: October 18, 2012
    Applicant: Cavium Networks, Inc.
    Inventor: David A. Carlson
  • Publication number: 20120027199
    Abstract: Systems and methods are disclosed for enabling access to a protected hardware resource. A hardware component includes at least one protected hardware resource. A unique hardware ID and a unique cryptographically secure or randomly generated enable value (EV) are integrated in the hardware component at the time of manufacturing. At run-time, special software generates or receives from an external source an enable register (ER) value and a comparison is made with the stored enable value. If the ER value and the EV match, access to the protected hardware resource is allowed.
    Type: Application
    Filed: August 1, 2010
    Publication date: February 2, 2012
    Applicant: CAVIUM NETWORKS
    Inventors: Amer Haider, Steven Craig Barner, Richard Eugene Kessler
  • Publication number: 20120011373
    Abstract: Disclosed are systems and methods for protecting secret device keys, such as High-bandwidth Digital Content Protection (HDCP) device keys. Instead of storing secret device keys in the plain, a security algorithm and one or more protection keys are stored on the device. The security algorithm is applied to the secret device keys and the one or more protection keys to produce encrypted secret device keys. The encrypted secret device keys are then stored either on chip or off-chip.
    Type: Application
    Filed: April 20, 2011
    Publication date: January 12, 2012
    Applicant: CAVIUM NETWORKS
    Inventors: Harri Hakkarainen, Amer Haider, Muhammad Hussain, Trent Parker
  • Publication number: 20110276710
    Abstract: Systems and methods for transmitting a multimedia stream over a communication link on a network are disclosed. The systems and methods adaptively adjust encoding parameters based on monitoring changing conditions of the network. A transmitter includes an adaptive-rate encoder that adaptively adjusts a video encoding bit rate in response to changing conditions of the communication link. The encoder maintains tight rate control by utilizing slice processing and sub-frame rate adaptation, as well as maintaining a headroom between the channel bit rate and the video encoding bit rate. The adaptive-rate encoder also embeds intra-frame constraints in predictive frames traffic in order to reduce latency.
    Type: Application
    Filed: May 5, 2010
    Publication date: November 10, 2011
    Applicant: CAVIUM NETWORKS
    Inventors: Farhad Mighani, Alberto Duenas, Nguyen Nguyen, Gorka Garcia
  • Publication number: 20110274156
    Abstract: Systems and methods for transmitting a multimedia stream are disclosed. A transmitter encodes audio data, video data, and control information received from a source and transmits over a network the different types of data to a receiver coupled to a display. The systems and methods utilize different network queues for the different types of traffic in order to account for differences in quality of service (QoS) parameters. The systems and methods adaptively adjust encoding and transmission parameters based on monitoring changing conditions of the network.
    Type: Application
    Filed: May 5, 2010
    Publication date: November 10, 2011
    Applicant: CAVIUM NETWORKS
    Inventors: Farhad Mighani, Alberto Duenas, Nguyen Nguyen, Gorka Garcia
  • Publication number: 20110271277
    Abstract: A virtual system on chip (VSoC) is an implementation of a machine that allows for sharing of underlying physical machine resources between different virtual systems. A method or corresponding apparatus of the present invention relates to a device that includes a plurality of virtual systems on chip and a configuring unit. The configuring unit is arranged to configure resources on the device for the plurality of virtual systems on chip as a function of an identification tag assigned to each virtual system on chip.
    Type: Application
    Filed: April 28, 2010
    Publication date: November 3, 2011
    Applicant: Cavium Networks, Inc.
    Inventors: Muhammad Raghib Hussain, Rajan Goyal, Richard Kessler
  • Publication number: 20110185203
    Abstract: Embodiments of the present invention relate to limiting maximum power dissipation occurred in a processor. Therefore, when an application that requires excessive amounts of power is being executed, the execution of the application may be prevented to reduce dissipated or consumed power. Example embodiments may stall the issue or execution of instructions by the processor, allowing software or hardware to reduce the power of an application by imposing a decrease in the performance of the application.
    Type: Application
    Filed: January 28, 2010
    Publication date: July 28, 2011
    Applicant: Cavium Networks, Inc.
    Inventors: David A. Carlson, Richard E. Kessler, Amer Haider
  • Patent number: 7961033
    Abstract: A temperature sensor includes an open-loop delay line comprising plural delay cells and a multiplexer configured to select a first number of the plural delay cells; a delay-locked loop comprising plural delay cells and a multiplexer configured to select a second number of the plural delay cells; a clock coupled to an input of the open-loop delay line and to an input of the delay-locked loop; a detector having a first input coupled to an output of the open-loop delay line and a second input coupled to an output of the delay-locked loop; and a finite state machine configured to detect a transition in the output of the phase detector.
    Type: Grant
    Filed: September 17, 2009
    Date of Patent: June 14, 2011
    Assignee: Cavium Networks, Inc.
    Inventors: Scott Meninger, Kyoungho Woo
  • Patent number: 7949683
    Abstract: An apparatus, and corresponding method, for traversing a compressed graph used in performing a search for a match of at least one expression in an input stream is presented. The compressed graph includes a number of interconnected nodes connected solely by valid arcs. A valid arc of a current node represents a character match in an expression of a character associated with the current node. Arcs which are not valid may be pruned. Non-valid arcs may include arcs which point back to a designated node(s), or arcs that point to the same next node as the designated node(s) for the same character. Each valid arc may comprise a next node pointer, a hash function, and a copy of an associated character. The hash function may be used to manage a retrieval process used by a walker traversing the compressed node. The walker may also use a comparison function to verify the correct arc has been retrieved.
    Type: Grant
    Filed: November 27, 2007
    Date of Patent: May 24, 2011
    Assignee: Cavium Networks, Inc.
    Inventor: Rajan Goyal
  • Patent number: 7941585
    Abstract: A RISC-type processor includes a main register file and a data cache. The data cache can be partitioned to include a local memory, the size of which can be dynamically changed on a cache block basis while the processor is executing instructions that use the main register file. The local memory can emulate as an additional register file to the processor and can reside at a virtual address. The local memory can be further partitioned for prefetching data from a non-cacheable address to be stored/loaded into the main register file.
    Type: Grant
    Filed: December 17, 2004
    Date of Patent: May 10, 2011
    Assignee: Cavium Networks, Inc.
    Inventors: David H. Asher, David A. Carlson, Richard E. Kessler
  • Patent number: 7930349
    Abstract: A network application executing on a host system provides a list of application buffers in host memory stored in a queue to a network services processor coupled to the host system. The application buffers are used for storing data transferred on a socket established between the network application and a remote network application executing in a remote host system. Using the application buffers, data received by the network services processor over the network is transferred between the network services processor and the application buffers. After the transfer, a completion notification is written to one of the two control queues in the host system. The completion notification includes the size of the data transferred and an identifier associated with the socket. The identifier identifies a thread associated with the transferred data and the location of the data in the host system.
    Type: Grant
    Filed: October 6, 2009
    Date of Patent: April 19, 2011
    Assignee: Cavium Networks, Inc.
    Inventors: Muhammad R. Hussain, Richard E. Kessler, Faisal Masood, Robert A. Sanzone, Imran Badr
  • Patent number: 7895431
    Abstract: A method and apparatus for ordering, synchronizing and scheduling work in a multi-core network services processor is provided. Each piece of work is identified by a tag that indicates how the work is to be synchronized and ordered. Throughput is increased by processing work having different tags in parallel on different processor cores. Packet processing can be broken up into different phases, each phase having a different tag dependent on ordering and synchronization constraints for the phase. A tag switch operation initiated by a core switches a tag dependent on the phase. A dedicated tag switch bus minimizes latency for the tag switch operation.
    Type: Grant
    Filed: December 6, 2004
    Date of Patent: February 22, 2011
    Assignee: Cavium Networks, Inc.
    Inventors: Gregg A. Bouchard, Thomas F. Hummel, Richard E. Kessler, Muhammed R. Hussain, Yen Lee
  • Patent number: 7814310
    Abstract: A method and apparatus for optimizing IPsec processing by providing execution units with windowing data during prefetch and managing coherency of security association data by management of security association accesses. Providing execution units with windowing data allows initial parallel processing of IPsec packets. The security association access ordering apparatus serializes access to the dynamic section of security association data according to packet order arrival while otherwise allowing parallel processing of the IPsec packet by multiple execution units in a security processor.
    Type: Grant
    Filed: April 12, 2003
    Date of Patent: October 12, 2010
    Assignee: Cavium Networks
    Inventors: Gregg A. Bouchard, Richard E. Kessler, Muhammad R. Hussain
  • Publication number: 20100131658
    Abstract: A Session Initiation Protocol (SIP) proxy server including a multi-core central processing unit (CPU) is presented. The multi-core CPU includes a receiving core dedicated to pre-SIP message processing. The pre-SIP message processing may include message retrieval, header and payload parsing, and Call-ID hashing. The Call-ID hashing is used to determine a post-SIP processing core designated to process messages between particular user pair. The pre-SIP and post-SIP configuration allows for the use of multiple processing cores to utilize a single control plane, thereby providing an accurate topology of the network for each processing core.
    Type: Application
    Filed: November 26, 2008
    Publication date: May 27, 2010
    Applicant: Cavium Networks, Inc.
    Inventors: Rajan Goyal, M. Raghib Hussain
  • Publication number: 20100114973
    Abstract: An apparatus, and corresponding method, for generating a graph used in performing a search for a match of at least one expression in an input stream is presented. The graph includes a number of interconnected nodes connected solely by valid arcs. A valid arc may also include a nodal bit map including structural information of a node to which the valid arc points to. A walker process may utilize the nodal bit map to determine if a memory access is necessary. The nodal bit map reduces the number of external memory access and therefore reduces system run time.
    Type: Application
    Filed: November 24, 2008
    Publication date: May 6, 2010
    Applicant: Cavium Networks, Inc.
    Inventor: Rajan Goyal
  • Publication number: 20100050177
    Abstract: The scheduling of multiple request to be processed by a number of deterministic finite automata-based graph thread engine (DTE) workstations is processed by a novel scheduler. The scheduler may select an entry from an instruction in a content search apparatus. Using attribute information from the selected entry, the scheduler may thereafter analyze a dynamic scheduling table to obtain placement information. The scheduler may determine an assignment of the entry, using the placement information, that may limit cache thrashing and head of line blocking occurrences. Each DTE workstation may including normalization capabilities. Additionally, the content searching apparatus may employ an address memory scheme that may prevent memory bottle neck issues.
    Type: Application
    Filed: August 25, 2008
    Publication date: February 25, 2010
    Applicant: Cavium Networks, Inc
    Inventors: Rajan Goyal, Muhammad Raghib Hussain
  • Patent number: 7661130
    Abstract: An apparatus is described comprising: a plurality of security processing resources for processing two or more different types of data traffic within a cryptographic processor; a first scheduler to provide a first type of data traffic to a first predefined subset of the security processing resources using a first scheduling technique; and a second scheduler to provide a second type of data traffic to a second predefined subset of the security processing resources using a second scheduling technique.
    Type: Grant
    Filed: April 12, 2003
    Date of Patent: February 9, 2010
    Assignee: Cavium Networks, Inc.
    Inventors: Muhammad Raghib Hussain, Philip H. Dickinson, Imran Badr
  • Patent number: 7657933
    Abstract: An apparatus is described comprising: a plurality of security processing resources for processing two or more different types of data traffic within a cryptographic processor; a first scheduler to provide a first type of data traffic to a first predefined subset of the security processing resources using a first scheduling technique; and a second scheduler to provide a second type of data traffic to a second predefined subset of the security processing resources using a second scheduling technique.
    Type: Grant
    Filed: April 12, 2003
    Date of Patent: February 2, 2010
    Assignee: Cavium Networks, Inc.
    Inventors: Muhammad Raghib Hussain, Richard Kessler, Philip H. Dickinson
  • Publication number: 20100023626
    Abstract: A network application executing on a host system provides a list of application buffers in host memory stored in a queue to a network services processor coupled to the host system. The application buffers are used for storing data transferred on a socket established between the network application and a remote network application executing in a remote host system. Using the application buffers, data received by the network services processor over the network is transferred between the network services processor and the application buffers. After the transfer, a completion notification is written to one of the two control queues in the host system. The completion notification includes the size of the data transferred and an identifier associated with the socket. The identifier identifies a thread associated with the transferred data and the location of the data in the host system.
    Type: Application
    Filed: October 6, 2009
    Publication date: January 28, 2010
    Applicant: Cavium Networks, Inc.
    Inventors: Muhammad R. Hussain, Richard E. Kessler, Faisal Masood, Robert A. Sanzone, Imran Badr
  • Patent number: 7653763
    Abstract: A subsystem (200) is provided at least Direct Memory Access (DMA) device (220) utilized to provide instructions to facilitate the operation of a subsystem processor (210). In one embodiment, a system level processor (102) initiates the provision of instructions for a subsystem (210). The DMA device may be additionally or alternatively utilized to provide data transfer capabilities to a plurality of data channels in a subsystem (200). The DMA device processes channels in a time limited manner to ensure that data is processed in a manner appropriate for time critical data.
    Type: Grant
    Filed: February 28, 2002
    Date of Patent: January 26, 2010
    Assignee: Cavium Networks, Inc.
    Inventors: Mileend Gadkari, Harsimran S. Grewal, George Apostol, Jr.