Patents by Inventor David W. Carr

David W. Carr 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).

  • Patent number: 7657525
    Abstract: An improved data structure is provided by modifying a public-domain data structure known as a “heap”. When these improvements are applied, the resultant data structure is known as a “pile.” This invention further describes a pipelined hardware implementation of a pile. Piles offer many advantages over heaps: they allow for fast, pipelined hardware implementations with increased throughput, making piles practical for a wide variety of new applications; they remove the requirement to track and update the last position in the heap; they reduce the number of memory reads accesses required during a delete operation; they require only ordinary, inexpensive RAM for storage in a fast, pipelined implementation; and they allow a random mixture of back-to-back insert, remove, and swap operations to be performed without stalling the pipeline.
    Type: Grant
    Filed: October 18, 2005
    Date of Patent: February 2, 2010
    Assignee: Altera Corporation
    Inventors: Paul Nadj, David W. Carr, Edward D. Funnekotter
  • Patent number: 7653619
    Abstract: A pipelined search engine device, such as a longest prefix match (LPM) search engine device, includes a hierarchical memory and a pipelined tree maintenance engine therein. The hierarchical memory is configured to store a b-tree of search prefixes (and possibly span prefix masks) at multiple levels therein. The pipelined tree maintenance engine, which is embedded within the search engine device, includes a plurality of node maintenance sub-engines that are distributed with the multiple levels of the hierarchical memory. The search engine device may also include pipeline control and search logic that is distributed with the multiple levels of the hierarchical memory.
    Type: Grant
    Filed: February 13, 2007
    Date of Patent: January 26, 2010
    Assignee: NetLogic Microsystems, Inc.
    Inventors: Gary Depelteau, David W. Carr
  • Patent number: 7603346
    Abstract: A pipelined search engine device, such as a longest prefix match (LPM) search engine device, includes a hierarchical memory and a pipelined tree maintenance engine therein. The hierarchical memory is configured to store a b?tree of search prefixes (and possibly span prefix masks) at multiple levels therein. The pipelined tree maintenance engine, which is embedded within the search engine device, includes a plurality of node maintenance sub-engines that are distributed with the multiple levels of the hierarchical memory. The search engine device may also include pipeline control and search logic that is distributed with the multiple levels of the hierarchical memory.
    Type: Grant
    Filed: February 13, 2007
    Date of Patent: October 13, 2009
    Assignee: NetLogic Microsystems, Inc.
    Inventors: Gary Depelteau, David W. Carr
  • Patent number: 7424474
    Abstract: An improved data structure is provided by modifying a public-domain data structure known as a “heap”. When these improvements are applied, the resultant data structure is known as a “pile.” This invention further described a pipelined hardware implementation of a pile. Piles offer many advantages over heaps: they allow for fast, pipelined hardware implementations with increased throughput, making piles practical for a wide variety of new applications; they remove the requirement to track and update the last position in the heap; they reduce the number of memory reads accesses required during a delete operation; they require only ordinary, inexpensive RAM for storage in a fast, pipelined implementation; and they allow a random mixture of back-to-back insert, remove, and swap operations to be performed without stalling the pipeline.
    Type: Grant
    Filed: August 17, 2005
    Date of Patent: September 9, 2008
    Assignee: Altera Corporation
    Inventors: Paul Nadj, David W. Carr, Edward D. Funnekotter
  • Patent number: 7286565
    Abstract: A method and apparatus for reassembling packets using a limited number of reassembly contexts is presented. Upon receipt of a first cell of a packet corresponding to a selected source, a reassembly context is allocated to the selected source. The reassembly context is allocated from a limited set of reassembly contexts. The first cell is then stored in a buffer and the reassembly context is updated to reflect the storage of the first cell in the buffer. As subsequent cells of the packet are received they are stored in the buffer and the reassembly context is updated to reflect the storage of each of these subsequent cells. When an end of message cell is received for the packet that indicates the end of the packet, reassembly of the packet within the buffer is completed to produce a reassembled packet. The reassembled packet is then queued for transmission to a destination, and the reassembly context is deallocated such that is can be used for reassembly of a subsequently received packet.
    Type: Grant
    Filed: June 28, 2000
    Date of Patent: October 23, 2007
    Assignee: Alcatel-Lucent Canada Inc.
    Inventor: David W. Carr
  • Patent number: 7007021
    Abstract: An improved data structure is provided by modifying a public-domain data structure known as a “heap”. When these improvements are applied, the resultant data structure is known as a “pile.” This invention further describes a pipelined hardware implementation of a pile. Piles offer many advantages over heaps: they allow for fast, pipelined hardware implementations with increased throughput, making piles practical for a wide variety of new applications; they remove the requirement to track and update the last position in the heap; they reduce the number of memory reads accesses required during a delete operation; they require only ordinary, inexpensive RAM for storage in a fast, pipelined implementation; and they allow a random mixture of back-to-back insert, remove, and swap operations to be performed without stalling the pipeline.
    Type: Grant
    Filed: November 28, 2000
    Date of Patent: February 28, 2006
    Assignee: Altera Corporation
    Inventors: Paul Nadj, David W. Carr, Edward D. Funnekotter
  • Patent number: 6952696
    Abstract: An improved data structure is provided by modifying a public-domain data structure known as a “heap”. When these improvements are applied, the resultant data structure is known as a “pile.” This invention further described a pipelined hardware implementation of a pile. Piles offer many advantages over heaps: they allow for fast, pipelined hardware implementations with increased throughput, making piles practical for a wide variety of new applications; they remove the requirement to track and update the last position in the heap; they reduce the number of memory reads accesses required during a delete operation; they require only ordinary, inexpensive RAM for storage in a fast, pipelined implementation; and they allow a random mixture of back-to-back insert, remove, and swap operations to be performed without stalling the pipeline.
    Type: Grant
    Filed: November 28, 2000
    Date of Patent: October 4, 2005
    Assignee: Altera Corporation
    Inventors: Paul Nadj, David W. Carr, Edward D. Funnekotter
  • Publication number: 20040167923
    Abstract: A method and apparatus for compressing the data associated with trie cuts (strides), and a method and apparatus for utilizing such compressed data to determine forwarding decisions for data packets in a communication network are presented. The compression technique presented generates a pair of bitmaps and a pair of base pointers for each set of compressed data. The bitmaps are compared with a portion of the address to ascertain whether the forwarding decision is determined within this portion of the trie. Forwarding decisions are stored in a leaf table that is accessed via a leaf table index. The leaf table index is generated by combining a leaf table offset generated from at least one of the bitmaps with a leaf table base pointer included in the stride block. Thus, if the forwarding decision is determined within the stride, the leaf table will be accessed via the leaf table index to retrieve the forwarding decision.
    Type: Application
    Filed: February 24, 2004
    Publication date: August 26, 2004
    Inventor: David W. Carr.
  • Patent number: 6697363
    Abstract: A method and apparatus for compressing the data associated with trie cuts (strides), and a method and apparatus for utilizing such compressed data to determine forwarding decisions for data packets in a communication network are presented. The compression technique presented generates a pair of bitmaps and a pair of base pointers for each set of compressed data. The bitmaps are compared with a portion of the address to ascertain whether the forwarding decision is determined within this portion of the trie. Forwarding decisions are stored in a leaf table that is accessed via a leaf table index. The leaf table index is generated by combining a leaf table offset generated from at least one of the bitmaps with a leaf table base pointer included in the stride block. Thus, if the forwarding decision is determined within the stride, the leaf table will be accessed via the leaf table index to retrieve the forwarding decision.
    Type: Grant
    Filed: June 28, 2000
    Date of Patent: February 24, 2004
    Assignee: Alcatel Canada Inc.
    Inventor: David W. Carr
  • Patent number: 6600744
    Abstract: A method and apparatus for packet classification stores rules or parameters for classifying the packets in a memory structure. The memory structure receives a set of rule selection signals, where the memory provides a selected set of rules in response to the rule selection signals. A comparison block operably coupled to the memory receives a key, which is also preferably derived from the header information for the packet. The key includes the relevant information for classifying the packet according to the rules stored in the memory. The comparison block compares the key with each of the rules in the selected set of rules, and when a favorable comparison is determined, the comparison block provides an indication of the favorable comparison. A prioritization block operably coupled to the comparison block prioritizes the rules that resulted in a favorable comparison to determine a preferred rule, where the preferred rule includes the resulting classification information for the packet.
    Type: Grant
    Filed: March 23, 1999
    Date of Patent: July 29, 2003
    Assignee: Alcatel Canada Inc.
    Inventors: David W. Carr, Paul Nadj
  • Patent number: 6519264
    Abstract: There is provided a method and device for measuring a rate of message element traffic over a message path in a communications network. The path includes at least one connection and is associated with a maximum rate of transmission. The path is periodically polled for transmission of a message element, the polling being performed at a polling rate associated with polling intervals which are at least as frequent as the maximum rate of transmission. If transmission of a message element is detected during a polling interval, a running count of such detection is incremented, the running count of detection being associated with the connection over which the message element was detected. If transmission of a message element is not detected, a running count of such non-detection is incremented, the running count of non-detection being associated with inactivity of the message path.
    Type: Grant
    Filed: April 26, 1999
    Date of Patent: February 11, 2003
    Assignee: Alcatel Canada Inc.
    Inventors: David W. Carr, Jason T. Sterne, Denny L. S. Lee
  • Patent number: 6449214
    Abstract: A method and means to reduce memory requirements for storing statistics by recording, in a separate overflow memory, the most significant bits of counters requiring more bits than provided in the main statistics memory. A binary CAM provides the linking mechanism between the main and overflow memories.
    Type: Grant
    Filed: November 28, 2000
    Date of Patent: September 10, 2002
    Assignee: Silicon Access Networks
    Inventors: David W. Carr, Edward D. Funnekotter
  • Patent number: 6115863
    Abstract: A drive and support system for a bottom plate disposed in the bottom of a wash basket of an automatic washer. The bottom plate is driven to radially gyrate or wobble within the wash basket by an output shaft which extends upwardly though the bottom and is rotatable in a first and second direction. A spin tube is disposed coaxially about the output shaft and has a top end which engages the bottom of the basket. The spin tube is co-rotatable in the second direction with the output shaft. A universal joint pivotably supports the wash plate about the top end of the spin tube. Drive means connect the wash plate with the upper end of the output shaft such that the wash plate is disposed in an angled orientation when the output shaft is driven in the first direction and the wash plate is disposed in a level orientation when the output shaft is driven in the second direction.
    Type: Grant
    Filed: March 8, 1999
    Date of Patent: September 12, 2000
    Assignee: Whirlpool Corporation
    Inventors: Anthony Mason, Victor W. Cuthbert, Gerald L. Kretchman, David W. Carr, Eric M. Coates, James P. Carow
  • Patent number: 5818839
    Abstract: Data traffic such as cell streams in an ATM communication network frequently contain data destined for multiple output ports having different transmission data rates. In order to accurately schedule such traffic a clocking signal unique to each output data rate is required. This invention provides systems and methods for generating the necessary clock signals utilizing a single timing reference.
    Type: Grant
    Filed: June 27, 1997
    Date of Patent: October 6, 1998
    Assignee: Newbridge Networks Corporation
    Inventors: Jason T. Sterne, David W. Carr, Joey M. W. Chow
  • Patent number: 5293379
    Abstract: A data processing system is described that employs data packets which include at least static and dynamic fields, the static fields containing information that often remains constant during a multi-packet communication interval and the dynamic fields containing information that changes for each packet. Many packets also include a user-data fields. A compression method is described which comprises: reformatting each data packet by associating its static fields with a first packet region and its dynamic fields with a second packet region. The process then assembles a static table that includes static information from at least an initial data packet's first packet region. It then identifies static field information in a subsequent data packet's first packet region that is common to the information in the static table. Such common information is encoded so as to reduce its data length.
    Type: Grant
    Filed: May 27, 1993
    Date of Patent: March 8, 1994
    Assignee: Gandalf Technologies, Inc.
    Inventor: David W. Carr
  • Patent number: 4449771
    Abstract: A miniaturized plastic bus bar connecting a series of spaced terminal pins arranged in a row. The bar has U-shaped cross-section or the like with parallel legs and a connecting base web; and the web has openings formed by slots removing the bar base in the area of each pin. When one metal bar is used, the opposite leg can have a longitudinally extending boss to contact the pins and the opposite leg can be divided between each opening to localize the resilient force of the plastic material in gripping each pin. One or two metal conductive strips are set in one or both legs in position to bear on the pins. Insulation of metal strips at all or part of the pin locations and selective removal of insulation permits various circuit connections to the pins. Surfaces of boss and strips that the pins initially contact upon entry into said openings are disposed at camming angles for ease of bus bar installation.
    Type: Grant
    Filed: December 10, 1979
    Date of Patent: May 22, 1984
    Inventor: David W. Carr
  • Patent number: RE39103
    Abstract: Data traffic such as cell streams in an ATM communication network frequently contain data destined for multiple output ports having different transmission data rates. In order to accurately schedule such traffic a clocking signal unique to each output data rate is required. This invention provides systems and methods for generating the necessary clock signals utilizing a single timing reference.
    Type: Grant
    Filed: October 5, 2000
    Date of Patent: May 23, 2006
    Assignee: Alcatel Canada Inc.
    Inventors: Jason T. Sterne, David W. Carr, Joey M. W. Chow
  • Patent number: D393333
    Type: Grant
    Filed: November 20, 1996
    Date of Patent: April 7, 1998
    Assignee: Whirlpool Corporation
    Inventors: Lawrence R. Kibler, David W. Carr, Kenneth Todd Shelley