Patents Assigned to Cavium, Inc.
  • Publication number: 20190141725
    Abstract: Methods and apparatus for simultaneous multiprotocol processing of different radio standards using a common pipeline. In an exemplary embodiment an apparatus includes a plurality of wireless interfaces that transmit radio data symbols, a scheduler that outputs scheduled events that control transmission of the radio data symbols using any wireless interface type and any radio protocol, and an event processor that processes the transmission events to transport the radio data symbols to selected wireless interfaces for over the air transmission using selected radio protocols.
    Type: Application
    Filed: August 23, 2018
    Publication date: May 9, 2019
    Applicant: Cavium, Inc.
    Inventors: Ahmed Shahid, Tejas Maheshbhai Bhatt, Eric Marenger
  • Publication number: 20190098620
    Abstract: Methods and apparatus for channel detection in an uplink shared control channel. In an exemplary embodiment, a method includes generating soft-combined bit streams for an acknowledgement (ACK) indicator, rank indicator (RI), and channel quality indicator (CQI) received in an uplink shared channel. The method also includes decoding the ACK, RI, and CQI soft-combined bit streams to generate Top-M decoded bit streams for each indicator, and generating Top-Q symbols for each indicator from the Top-M decoded bit streams for each indicator. The method also includes calculating metrics from the Top-Q symbols and uplink control information (UCI) symbols extracted from the uplink shared channel, combining the metrics to form a search space, and searching the search space to determine transmitted ACK, RI, and CQI bits.
    Type: Application
    Filed: September 28, 2017
    Publication date: March 28, 2019
    Applicant: Cavium Inc.
    Inventor: Yuanbin Guo
  • Publication number: 20190068349
    Abstract: Methods and apparatus for uplink control channel detection. In an exemplary embodiment, a method includes generating Top-Q Channel Quality Indicator (CQI) candidates from information received over an uplink control channel, generating a CQI symbol for each of the Top-Q CQI candidates, and generating a CQI energy metric from the CQI symbols. If the uplink control channel is formatted in format 2, then performing operations of combining the CQI energy metric with a pilot energy metric to generate a combined metric and searching the combined metric to determine transmitted CQI bits. If the control channel is formatted in format 2a or format 2b, then performing operations of generating an acknowledgement (ACK) energy metric for ACK candidates, combining the CQI energy metric, the pilot energy metric, and the ACK energy metric to generate the combined metric, and searching the combined metric to determine transmitted CQI bits and ACK bits.
    Type: Application
    Filed: August 22, 2017
    Publication date: February 28, 2019
    Applicant: Cavium, Inc.
    Inventor: Yuanbin Guo
  • Publication number: 20190028576
    Abstract: A system with co-resident data-plane and network interface controllers embodying a method for network switching of a data packet incoming from a network at a packet input processor portion of a network interface resource comprising the packet input processor, a packet output processor, and a network interface controller , implemented on a chip, to a target entity, is disclosed. Additionally, the system embodying a method for network switching of a data packet outgoing from an internal facing interface of a network interface controller portion of the network interface resource to a network is disclosed.
    Type: Application
    Filed: September 16, 2018
    Publication date: January 24, 2019
    Applicant: Cavium, Inc.
    Inventors: Wilson Parkhurst Snyder, II, Muhammad Raghib Hussain
  • Publication number: 20190021013
    Abstract: Methods and apparatus for coordinated multipoint receiver processing acceleration and latency reduction. In an exemplary embodiment, an apparatus includes a receiver that receives symbols from a wireless transmission and stores the symbols in a memory. The receiver also outputs an indicator that indicates that storage of the symbols in the memory has begun. The apparatus also includes a controller that outputs control signaling in response to the indicator. The apparatus also includes a link that acquires the symbols and remote scheduling and control information (RSCI) from the memory in response to receiving the control signaling. The link combines the symbols with the RSCI to form packets and transmits the packets to an external system.
    Type: Application
    Filed: August 31, 2017
    Publication date: January 17, 2019
    Applicant: Cavium, Inc.
    Inventors: Ahmed Shahid, Jason Daniel Zebchuk, Tejas Maheshbhai Bhatt, Hong Jik Kim
  • Publication number: 20180349185
    Abstract: Method and system embodying the method for programmable scheduling encompassing: enqueueing at least one command into one of a plurality of queues having a plurality of entries; determining a category of the command at the head entry of each of the plurality of queues; processing each determined non-job category command by a non-job command arbitrator; and processing each determined job category command by a job arbitrator and assignor, is disclosed.
    Type: Application
    Filed: June 5, 2017
    Publication date: December 6, 2018
    Applicant: Cavium, Inc.
    Inventors: Timothy Toshio Nakada, Jason Daniel Zebchuk, Gregg Alan Bouchard, Tejas Maheshbhai Bhatt, Hong Jik Kim, Ahmed Shahid, Mark Jon Kwong
  • Publication number: 20180349180
    Abstract: Method and system embodying the method for for scheduling arbitration among a plurality of service requestors encompassing: designating among the plurality of service requestors all the service requestors that have an active request; determining whether at least one of the designated service requestors has an un-served status indicator which is set; and when the determining is positive then: selecting one of the at least one designated service requestors in accordance with a pre-determined policy; and clearing the un-served status indicator for the selected service requestor, is disclosed.
    Type: Application
    Filed: June 5, 2017
    Publication date: December 6, 2018
    Applicant: Cavium, Inc.
    Inventors: Timothy Toshio Nakada, Jason Daniel Zebchuk, Tejas Maheshbhai Bhatt, Mark Jon Kwong
  • Publication number: 20180352557
    Abstract: Methods and apparatus for a unified baseband architecture. In an exemplary embodiment, an apparatus includes a shared memory having a plurality of access ports and a scheduler that outputs scheduled jobs. Each scheduled job identifies data processing to be performed. The apparatus also includes a plurality of functional elements coupled to the plurality of access ports, respectively, to access the shared memory. Each functional element is operable to retrieve selected data from the shared memory, process the selected data to generate processed data, and store the processed data into the shared memory based on a received scheduled job.
    Type: Application
    Filed: June 2, 2017
    Publication date: December 6, 2018
    Applicant: Cavium, Inc.
    Inventors: Tejas M. Bhatt, Gregg A. Bouchard, Hong Jik Kim, Jason D. Zebchuk, Ahmed Shahid
  • Publication number: 20180341602
    Abstract: A method utilizing a system encompassing a free pool buffer; a deadlock avoidance buffer; and a controller communicatively coupled to the free pool buffer and the deadlock avoidance buffer to reorder out-of-order responses to fetch requests into correct order by: receiving a fetch request on behalf of a consumer; allocating space first in the free pool buffer and when such space is not available then allocating space in a division associated with the consumer in the deadlock avoidance buffer. Issuing segment(s) of the fetch request including associated tag(s) to one of one or more memories; writing response data for each of the segment(s) to the allocated space in the free buffer or the deadlock avoidance buffer according to each of the associated tag(s); and transferring the response data to the consumer according to an entry in an ordering first-in, first-out buffer and an entry in a pending request array.
    Type: Application
    Filed: May 23, 2017
    Publication date: November 29, 2018
    Applicant: Cavium, Inc.
    Inventors: Kalyana Sundaram Venkataraman, Jason Daniel Zebchuk, Gregg Alan Bouchard, Tejas Maheshbhai Bhatt, Hong Jik Kim, Eric Marenger, Ahmed Shahid
  • Publication number: 20180336063
    Abstract: Method and system embodying the method for load balancing of scheduled jobs among a plurality of engines encompassing determining a number of cluster credits for each of a plurality of clusters that comprise at least one engine capable of processing a scheduled job; determining a number of engine credits for each of the plurality of engines comprising each of the at least one engine in accordance with a number of jobs assigned to each of the plurality of engines; evaluating the determined number of cluster credits and the determined number of engine credits in accordance with a credit evaluation policy; and assigning the job to one of the plurality of engines in accordance with the evaluation, is disclosed.
    Type: Application
    Filed: May 20, 2017
    Publication date: November 22, 2018
    Applicant: Cavium, Inc.
    Inventors: Timothy Toshio Nakada, Jason Daniel Zebchuk, Gregg Alan Bouchard, Tejas Maheshbhai Bhatt, Hong Jik Kim, Ahmed Shahid, Mark Jon Kwong
  • Publication number: 20180329472
    Abstract: Methods and apparatus for adaptive power profiling in a baseband processing system. In an exemplary embodiment, an apparatus includes one or more processing engines. Each processing engine performs at least one data processing function. The apparatus also includes an adaptive power profile (APP) and a job manager that receives job requests for data processing. The job manager allocates the data processing associated with the job requests to the processing engines based on the adaptive power profile. The adaptive power profile identifies a first group of the processing engines to perform the data processing associated with the job requests, and identifies remaining processing engines to be set to a low power mode.
    Type: Application
    Filed: May 15, 2017
    Publication date: November 15, 2018
    Applicant: Cavium, Inc.
    Inventors: Kalyana S. Venkataraman, Gregg A. Bouchard, Eric Marenger, Ahmed Shahid
  • Publication number: 20180321983
    Abstract: A method and a system embodying the method for job pre-scheduling in a processing system comprising distributed job management, encompassing: determining a maximum amount of pre-schedulable jobs for each of a plurality of engines; setting for each of the plurality of engines a threshold less than or equal to the maximum amount; pre-scheduling by a scheduler an amount of jobs less than or equal to the threshold to at least one of a plurality of job managers; determining at the at least one of the plurality of job managers managing one of the plurality of engines one of a plurality of data processing devices in order for each pre-scheduled job; and assigning the job to the determined data processing device.
    Type: Application
    Filed: May 5, 2017
    Publication date: November 8, 2018
    Applicant: Cavium, Inc.
    Inventors: Kalyana Sundaram Venkataraman, Tejas Maheshbhai Bhatt, Hong Jik Kim, Eric Marenger, Ahmed Shahid, Jason Daniel Zebchuk, Gregg Alan Bouchard
  • Publication number: 20180321986
    Abstract: A method and a system for port access management at a distributed job manager, encompassing: initializing a port access process for each of one or more ports on a processing device; determining first whether a job is assigned to an active slot identified by an active_slot_id on the processing device, and when the determining is positive: determining second whether the job has been serviced by a port identified by the active_slot_id; and when either the first determining is negative or the second determining is positive then: retesting the first and second determining; else: determining whether the job requires an access to the port identified by the active_slot_id; and when the determining is positive: fetching the port's configuration words; processing the fetched port's configuration words; marking the job as serviced by the port upon conclusion or the processing of the fetched port's configuration words; and recalculating the value of the active_slot_id.
    Type: Application
    Filed: May 5, 2017
    Publication date: November 8, 2018
    Applicant: Cavium, Inc.
    Inventors: Kalyana Sundaram Venkataraman, Tejas Maheshbhai Bhatt, Hong Jik Kim, Eric Marenger, Ahmed Shahid, Jason Daniel Zebchuk
  • Publication number: 20180316463
    Abstract: Methods and apparatus for control bit detection. In an exemplary embodiment, a method includes receiving an LLR sequence (l) that includes P control bits and calculating a sum of LLR squares parameter (L) associated with the LLR sequence. The method also includes generating a value (Vp) for each of the 2P combination of the control bits. Each Vp value is based on a parameter sequence and the LLR sequence. The method also includes determining a smallest value of Vp, and outputting a determination that a control bit combination was received if the smallest value of Vp is less than a threshold value (THD) multiplied by the parameter L.
    Type: Application
    Filed: April 26, 2017
    Publication date: November 1, 2018
    Applicant: Cavium, Inc.
    Inventor: Tianmin Ren
  • Patent number: 10116564
    Abstract: Embodiments of the present invention are directed to a wildcard matching solution that uses a combination of static random access memories (SRAMs) and ternary content addressable memories (TCAMs) in a hybrid solution. In particular, the wildcard matching solution uses a plurality of SRAM pools for lookup and a spillover TCAM pool for unresolved hash conflicts.
    Type: Grant
    Filed: November 10, 2014
    Date of Patent: October 30, 2018
    Assignee: Cavium, Inc.
    Inventors: Weihuang Wang, Tsahi Daniel, Srinath Atluri
  • Patent number: 10116772
    Abstract: A system with co-resident data-plane and network interface controllers embodying a method for network switching of a data packet incoming from a network at a packet input processor portion of a network interface resource comprising the packet input processor, a packet output processor, and a network interface controller, implemented on a chip, to a target entity, is disclosed. Additionally, the system embodying a method for network switching of a data packet outgoing from an internal facing interface of a network interface controller portion of the network interface resource to a network is disclosed.
    Type: Grant
    Filed: November 14, 2014
    Date of Patent: October 30, 2018
    Assignee: Cavium, Inc.
    Inventors: Wilson Parkhurst Snyder, II, Muhammad Raghib Hussain
  • Patent number: 10110393
    Abstract: This application is directed to protocol switching over multi-network interface, specifically switching between mirroring and streaming protocols using one L2 connection established between a source multimedia device and a sink multimedia device, depending on the application and/or multimedia content and as facilitated by a controller device.
    Type: Grant
    Filed: September 30, 2013
    Date of Patent: October 23, 2018
    Assignee: Cavium, Inc.
    Inventors: Abhay Bhorkar, Abhijit Ayarekar, Anil M. Kongovi, SathishKumar Mani
  • Patent number: 10110515
    Abstract: System and method of data routing according to a hierarchical scheduling process. Incoming data traffic is allocated to various queues of a buffer. A scheduling tree has a top level for queues, a bottom level for egress ports, and a plurality of intermediate levels corresponding to different granularities with respect to service categories. Each queue is assigned to a particular node in each intermediate level of the scheduling tree. The scheduling tree traverses through multiple scheduling stages from the bottom to the top level to select a winner node in each level based on a variety of fairness and differentiating variables. As a result, a queue associated with the winner nodes in various levels is selected and data from the queue is read out and sent to the selected egress port for transmission.
    Type: Grant
    Filed: November 14, 2014
    Date of Patent: October 23, 2018
    Assignee: Cavium, Inc.
    Inventors: Vamsi Panchagnula, Tsahi Daniel, Kegin Han
  • Patent number: 10110558
    Abstract: At least one processor may be operatively coupled to a plurality of memories and a node cache and configured to walk nodes of a per-pattern non-deterministic finite automaton (NFA). Nodes of the per-pattern NFA may be stored amongst one or more of the plurality of memories based on a node distribution determined as a function of hierarchical levels mapped to the plurality of memories and per-pattern NFA storage allocation settings configured for the hierarchical levels, optimizing run time performance of the walk.
    Type: Grant
    Filed: April 14, 2014
    Date of Patent: October 23, 2018
    Assignee: Cavium, Inc.
    Inventors: Rajan Goyal, Satyanarayana Lakshmipathi Billa
  • Patent number: 10103993
    Abstract: A data processing system includes a phantom queue for each of a plurality of output ports each associated with an output link for outputting data. The phantom queues receive/monitor traffic on the respective ports and/or the associated links such that the congestion or traffic volume on the output ports/links is able to be determined by a congestion mapper coupled with the phantom queues. Based on the determined congestion level on each of the ports/links, the congestion mapper selects one or more non or less congested ports/links as destination of one or more packets. A link selection logic element then processes the packets according to the selected path or multi-path thereby reducing congestion on the system.
    Type: Grant
    Filed: January 4, 2018
    Date of Patent: October 16, 2018
    Assignee: Cavium, Inc.
    Inventor: Martin Leslie White