Patents by Inventor Eric Baden

Eric Baden has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).

  • Publication number: 20090259810
    Abstract: A system may include a content addressable memory (CAM) that is configured to include multiple services, receive a key, where the key includes source port information and IP information related to a packet received on one of multiple ports, and output a match index value in response to a search of the CAM using the key. The system may include a policy memory module that is configured to receive the match index value and to output meter controls and a meter address based on the match index value, a port meter map module that is configured to receive the source port information and to output a mask value and a per port meter value, and a remapping module that is configured to receive the meter address, receive the mask value and the per port meter value, and modify the meter address based on those values.
    Type: Application
    Filed: April 11, 2008
    Publication date: October 15, 2009
    Applicant: BROADCOM CORPORATION
    Inventors: Eric Baden, Puneet Agarwal
  • Patent number: 7583588
    Abstract: A network device for processing packets. The network devices includes a ingress module for performing lookups for layer 2 switching and performing operations for maintaining a layer 2 table. When the ingress module updates the layer 2 table, the ingress module records the operation performed on the layer 2 table in a modification buffer. Entries are added to the modification buffer when the layer 2 table is modified and in the order in which the layer 2 table was modified. The network device thus enables reconstruction of the layer 2 table by performing the operations in the modification buffer.
    Type: Grant
    Filed: April 6, 2005
    Date of Patent: September 1, 2009
    Assignee: Broadcom Corporation
    Inventors: Michael J. Bowes, Eric A. Baden, John Jeffrey Dull, Curt McDowell
  • Patent number: 7554984
    Abstract: A network device for processing packets. The network device includes applying specific fields from a packet to an associated memory device and comparing means for comparing input to the memory device with entries in the memory device. The network device also includes enabling means for enabling selection of bits, by the memory device, that are required to match exactly with bits from the input to the memory device. The network device further includes outputting means for outputting an address for a matched entry by the memory device and applying means for applying a match from the memory device to an associated entry in a table for applying actions from the table that are associated with the match to the packet.
    Type: Grant
    Filed: November 30, 2005
    Date of Patent: June 30, 2009
    Assignee: Broadcom Corporation
    Inventors: Mohan Kalkunte, Eric A. Baden
  • Publication number: 20080229056
    Abstract: Methods and apparatus for dual hash tables are disclosed. An example method includes logically dividing a hash table data structure into a first hash table and a second hash table, where the first hash table and the second hash table are substantially logically equivalent. The example method further includes receiving a key and a corresponding data value, applying a first hash function to the key to produce a first index to a first bucket in the first hash table, and applying a second hash function to the key to produce a second index to a second bucket in the second hash table. In the example method the key and the data value are inserted in one of the first hash table and the second hash table based on the first index and the second index.
    Type: Application
    Filed: August 28, 2007
    Publication date: September 18, 2008
    Applicant: BROADCOM CORPORATION
    Inventors: Puneet Agarwal, Eric Baden, Jeff Dull, Bruce Kwan
  • Publication number: 20070171838
    Abstract: A network device for processing packets that includes means for applying specific fields from a packet to an associated memory device and comparing means for comparing input to the memory device with entries in the memory device. The network device also includes enabling means for enabling selection of bits, by the memory device, that are required to match exactly with bits from the input to the memory device. The specific fields include a plurality of fields some of which include multiple field values and definitions. An input bit map field of one of the plurality of fields is used to provide an additional global mask that is ANDed to associated masks in selected entries in the memory device thereby enabling the memory device to output an OR of the data in the selected entries and thereby allowing multiple ports to share a rule within a memory device entry.
    Type: Application
    Filed: April 20, 2006
    Publication date: July 26, 2007
    Inventor: Eric Baden
  • Publication number: 20060114914
    Abstract: A network device for processing packets. The network device includes an ingress module for performing switching functions on an incoming packet. The network device also includes a memory management unit for storing packets and performing resource checks on each packet and an egress module for performing packet modification and transmitting the packet to an appropriate destination port. Each of the ingress module, memory management unit and egress module includes multiple cycles for processing instructions and each of the ingress module, memory management unit and egress module processes one packet every clock cycle.
    Type: Application
    Filed: April 7, 2005
    Publication date: June 1, 2006
    Inventors: Anupam Anand, John Dull, Eric Baden, Michael Bowes
  • Publication number: 20060114900
    Abstract: A network device for processing packets. The network device includes applying specific fields from a packet to an associated memory device and comparing means for comparing input to the memory device with entries in the memory device. The network device also includes enabling means for enabling selection of bits, by the memory device, that are required to match exactly with bits from the input to the memory device. The network device further includes outputting means for outputting an address for a matched entry by the memory device and applying means for applying a match from the memory device to an associated entry in a table for applying actions from the table that are associated with the match to the packet.
    Type: Application
    Filed: November 30, 2005
    Publication date: June 1, 2006
    Inventors: Mohan Kalkunte, Eric Baden
  • Publication number: 20060114906
    Abstract: A network device for processing packets. The network devices includes a ingress module for performing lookups for layer 2 switching and performing operations for maintaining a layer 2 table. When the ingress module updates the layer 2 table, the ingress module records the operation performed on the layer 2 table in a modification buffer. Entries are added to the modification buffer when the layer 2 table is modified and in the order in which the layer 2 table was modified. The network device thus enables reconstruction of the layer 2 table by performing the operations in the modification buffer.
    Type: Application
    Filed: April 6, 2005
    Publication date: June 1, 2006
    Inventors: Michael Bowes, Eric Baden, John Dull, Curt McDowell
  • Publication number: 20060114908
    Abstract: A network device for processing packets. The network device includes applying specific fields from a packet to an associated memory device and comparing means for comparing input to the memory device with entries in the memory device. The network device also includes enabling means for enabling selection of bits, by the memory device, that are required to match exactly with bits from the input to the memory device. The network device further includes outputting means for outputting an address for a matched entry by the memory device and applying means for applying a match from the memory device to an associated entry in a table for applying actions from the table that are associated with the match to the packet.
    Type: Application
    Filed: November 30, 2005
    Publication date: June 1, 2006
    Inventors: Mohan Kalkunte, Venkateshwar Buduma, Eric Baden
  • Publication number: 20050135399
    Abstract: A method of handling a datagram in a network device is disclosed. The steps include receiving a datagram, with the datagram having multiple field values, at a port of a network device, parsing the received datagram to obtain the field values, applying the parsed field values to a Ternary Content Addressable Memory (TCAM), determining matches between the parsed field values and predetermined criteria in the TCAM, indexing into a policy table based on the determined matches to obtain an action entry and taking an action based on the obtained action entry.
    Type: Application
    Filed: November 10, 2004
    Publication date: June 23, 2005
    Inventors: Eric Baden, Mohan Kalkunte, John Dull, Venkateshwar Buduma
  • Patent number: 5838955
    Abstract: A system includes a requesting agent coupled to a system bus. The system bus includes an address bus, control lines for indicating a requested transfer type, a data bus, address bus arbitration control lines and data bus arbitration control lines. The system further includes a system bus arbiter coupled to the system bus for resolving competing requests for access to the address bus and for separately resolving competing requests for access to the data bus. A graphics controller for enabling the requesting agent to access a frame buffer has a memory, which may be a FIFO, responsive to a first control signal, for storing data received from a frame buffer. The memory is further responsive to a second control signal for supplying the stored data to the data bus. The graphics controller also includes a controller coupled to the system bus and to the memory means.
    Type: Grant
    Filed: May 3, 1995
    Date of Patent: November 17, 1998
    Assignee: Apple Computer, Inc.
    Inventors: Brian A. Childers, Eric A. Baden
  • Patent number: 5793996
    Abstract: In a computer system an apparatus interconnects a first bus, a second bus and a frame buffer, wherein the first bus and the second bus are of incompatible bus architecture types. For example the first bus may be a loosely coupled bus having split-bus transaction capability, such as the ARBus, and the second bus may be a tightly ordered bus, such as the PCI local bus. The apparatus includes bridge hardware for converting access requests from the first bus into suitable requests for the second bus. Data paths within the apparatus allow data to be routed from one bus to another. The apparatus further includes a frame buffer controller that is accessible from either of the first or second buses for performing read or write operations from/to the frame buffer. Data path logic allows data to be routed from any of the first bus, second bus and frame buffer to any other one of these three locations.
    Type: Grant
    Filed: May 3, 1995
    Date of Patent: August 11, 1998
    Assignee: Apple Computer, Inc.
    Inventors: Brian A. Childers, Eric A. Baden
  • Patent number: 5689656
    Abstract: A method of prioritizing computer resource access requests to a shared computer resource, such as a video frame buffer, includes the steps of providing a number, n, of priority schemes in correspondence with a like number of potentially requesting entities, where n is an integer greater than one, and where each priority scheme designates relative priority of the potentially requesting entities with respect to one another. Thus, for each priority scheme there exists one corresponding potentially requesting entity, and a number, n-1, of noncorresponding potentially requesting entities. Next, one of the priority schemes is selected for use as a current priority scheme. A set of currently requesting entities is then determined from the number of potentially requesting entities, and the current priority scheme is used to select a highest priority requesting entity from the set of currently requesting entities.
    Type: Grant
    Filed: January 10, 1997
    Date of Patent: November 18, 1997
    Assignee: Apple Computer, Inc.
    Inventors: Eric A. Baden, Brian A. Childers
  • Patent number: 5640545
    Abstract: An apparatus for transforming pixel data from a data bus into an expected format for storage in a frame buffer has a first multiplexor, a second multiplexor and a controller. The first multiplexor includes two data inputs coupled to the data bus so that the first data input provides pass-through of received data, and the second data input provides end-for-end byte swapping of bus data. Input selection is made by a byte-swap control signal. The second multiplexor includes an output and four data inputs. The output of the first multiplexor is coupled to each of the four inputs of the second multiplexor so as to provide for end-for-end byte swapping from two of the inputs, end-for-end word swapping from another one of the inputs, and end-for-end half-word swapping from a fourth input. The second multiplexor is responsive to a reorder control signal that alternatively selects one of the first, second, third and fourth inputs of the second multiplexor to be gated to the output of the second multiplexor.
    Type: Grant
    Filed: May 3, 1995
    Date of Patent: June 17, 1997
    Assignee: Apple Computer, Inc.
    Inventors: Eric A. Baden, Brian A. Childers
  • Patent number: 5634013
    Abstract: A computer bus bridge interconnects first and second buses, the first bus being big-endian and the second bus being little-endian. First address and size signals received from the first bus during a first bus cycle are converted into second address and data unit enable signals for transmission on the second bus during a second bus cycle. The first address comprises a low-order address portion and a remaining upper-order address portion. The data unit enable signals are generated from the low-order address portion and the size signals of the first bus. An address offset is generated from the data unit enable signals. The remaining upper-order address portion of the first address are then concatenated with the address offset and a predetermined lower address portion for use as the second address. The data unit enable signals may designate, say, up to 4 possible data bytes being transferred during a single beat on the second bus.
    Type: Grant
    Filed: May 3, 1995
    Date of Patent: May 27, 1997
    Assignee: Apple Computer, Inc.
    Inventors: Brian A. Childers, Eric A. Baden
  • Patent number: 5625778
    Abstract: A system has a system resource, such as a frame buffer, coupled to a system bus, the system bus conveying a request for access to the system resource from another system element connected to the system bus. An apparatus for presenting the access request to the system resource from the system bus includes a queue, a multiplexor that is preferably glitchless, and a controller. The queue has an input for receiving access request information from the system bus; one or more storage elements, each for storing access request information, wherein the one or more storage means are connected to form a queue having a head and a tail; and a queue output for supplying data stored in the head of the queue. The multiplexor has a first input coupled to the queue output, a second input for receiving the access request information from the system bus, and a multiplexor output for supplying the access request to the system resource.
    Type: Grant
    Filed: May 3, 1995
    Date of Patent: April 29, 1997
    Assignee: Apple Computer, Inc.
    Inventors: Brian A. Childers, Eric A. Baden
  • Patent number: 5504913
    Abstract: The present invention reduces the overhead commonly associated with computer queues by not requiring direct addressing of each location in the queue and by not requiring specialized underflow logic. Furthermore, reads and writes to the computer queue of the present invention can be asynchronous. Lastly, the computer queue of the present invention requires less circuitry and is thus physically smaller, requires less power to operate and can operate more quickly than can queues of the prior art.
    Type: Grant
    Filed: May 14, 1992
    Date of Patent: April 2, 1996
    Assignee: Apple Computer, Inc.
    Inventor: Eric A. Baden