Patents by Inventor David E. McCracken

David E. McCracken 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: 6578115
    Abstract: A node controller (12) in a computer system (10) includes a processor interface unit (24), a memory directory interface unit (22), and a local block unit (28). In response to a memory location in a memory (17) associated with the memory directory interface unit (22) being altered, the processor interface unit (24) generates an invalidation request for transfer to the memory directory interface unit (22). The memory directory interface unit (22) provides the invalidation request and identities of processors (16) affected by the invalidation request to the local block unit (28). The local block unit (28) determines which ones of the identified processors (16) are present in the computer system (10) and generates an invalidation message for each present processor (16) for transfer thereto. Each of the present processors (16) process their invalidation message and generate an acknowledgment message for transfer to the processor interface unit (24) that generated the invalidation request.
    Type: Grant
    Filed: January 14, 2002
    Date of Patent: June 10, 2003
    Assignee: Silicon Graphics, Inc.
    Inventors: David E. McCracken, Martin M. Deneroff, Gregory M. Thorson, John S. Keen
  • Patent number: 6532501
    Abstract: A system and method for distributing output queue space is provided that includes an output queue (18), a input queue (12), an asynchronous input queue (14), and a credit allocation module (22). The output queue (18) has a certain number of output spaces (19) where each output space (19) represents an output queue credit. The output queue (18) releases output queue credits when releasing data from output spaces (19) and receives data in response to a command being processed from the input queue (12). The input queue (12) queues commands and requests a number of output queue credits in response to receiving a command. The input queue (12) also releases the queued commands for processing in response to receiving the requested number of output queue credits. The asynchronous input queue (14) queues commands and requests a number of output queue credits in response to receiving a command.
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: March 11, 2003
    Assignee: Silicon Graphics, Inc.
    Inventor: David E. McCracken
  • Patent number: 6487685
    Abstract: A method for minimizing ECC bits in variable sized data formats is provided that comprises determining the number of ECC bits needed for each of a plurality of data formats and creating a common data representation for using a single implementation of error detection and correction logic for all of the plurality of data formats. The method then chooses an ECC matrix and default values for unused data bits in the common data representation such that any ECC bits beyond the minimum required for that sized data format will have known values thereby allowing smaller data formats to go through the error detection and correction logic using the common data representation. The method then retrieves a data entry having one of the plurality of data formats and formats the data entry into the common data representation.
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: November 26, 2002
    Assignee: Silicon Graphics, Inc.
    Inventors: James A. Stuart Fiske, David E. McCracken
  • Publication number: 20020059500
    Abstract: A node controller (12) in a computer system (10) includes a processor interface unit (24), a memory directory interface unit (22), and a local block unit (28). In response to a memory location in a memory (17) associated with the memory directory interface unit (22) being altered, the processor interface unit (24) generates an invalidation request for transfer to the memory directory interface unit (22). The memory directory interface unit (22) provides the invalidation request and identities of processors (16) affected by the invalidation request to the local block unit (28). The local block unit (28) determines which ones of the identified processors (16) are present in the computer system (10) and generates an invalidation message for each present processor (16) for transfer thereto. Each of the present processors (16) process their invalidation message and generate an acknowledgment message for transfer to the processor interface unit (24) that generated the invalidation request.
    Type: Application
    Filed: January 14, 2002
    Publication date: May 16, 2002
    Applicant: Silicon Graphics, Inc., a Delaware corporation
    Inventors: David E. McCracken, Martin M. Deneroff, Gregory M. Thorson, John S. Keen
  • Patent number: 6381681
    Abstract: A memory protection system for shared memory in a multiprocessor computer is provided that comprises a multiprocessor computer (10) having a plurality of processor regions and a plurality of memory pages (16). Each processor region includes one or more processors (12). Each processor (12) includes a cache (18), and each memory page (16) includes one or more cache lines (20) for coupling to the cache (18) of processors (12) within the plurality of processor regions using the memory page (16). Each memory page (16) includes a set of protection bits (82) associated with each processor region in the plurality of processor regions. The set of protection bits (82) includes an acquire protection bit (84) for each processor region in the plurality of processor regions. The acquire protection bit (84) determines whether the associated processor is enabled to perform acquire operations on the memory page (16).
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: April 30, 2002
    Assignee: Silicon Graphics, Inc.
    Inventors: David E. McCracken, Allan James Christie, James A. Stuart Fiske
  • Patent number: 6339812
    Abstract: A node controller (12) in a computer system (10) includes a processor interface unit (24), a memory directory interface unit (22), and a local block unit (28). In response to a memory location in a memory (17) associated with the memory directory interface unit (22) being altered, the processor interface unit (24) generates an invalidation request for transfer to the memory directory interface unit (22). The memory directory interface unit (22) provides the invalidation request and identities of processors (16) affected by the invalidation request to the local block unit (28). The local block unit (28) determines which ones of the identified processors (16) are present in the computer system (10) and generates an invalidation message for each present processor (16) for transfer thereto. Each of the present processors (16) process their invalidation message and generate an acknowledgment message for transfer to the processor interface unit (24) that generated the invalidation request.
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: January 15, 2002
    Assignee: Silicon Graphics, Inc.
    Inventors: David E. McCracken, Martin M. Deneroff, Gregory M. Thorson, John S. Keen
  • Patent number: 6279073
    Abstract: A configurable synchronizer (10) for DDR-SDRAM (12) is provided that includes a strobe select module (40) operable to receive a memory select signal (106) and to pass strobe signals (20, 30) from one or more DDR-SDRAMs (16, 18) to a number of synchronizer circuits (44) corresponding to data signals (17) passed in parallel by each DDR-SDRAM as indicated by the memory select signal (106). A rising edge latch (174) receives a rising edge data signal (170) and latches the rising edge data signal (170) through the rising edge latch (174) on a rising edge of the strobe signal (152). A falling edge latch (176) receives a falling edge data signal (172) and latches the falling edge data signal (172) through the falling edge latch (176) on a falling edge of the strobe signal (152).
    Type: Grant
    Filed: September 30, 1999
    Date of Patent: August 21, 2001
    Assignee: Silicon Graphics, Inc.
    Inventors: David E. McCracken, David L. McCall