Patents by Inventor Judson S. Leonard

Judson S. Leonard 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: 9294419
    Abstract: Architectures, apparatus and systems employing scalable multi-layer 2D-mesh routers. A 2D router mesh comprises bi-direction pairs of linked paths coupled between pairs of IO interfaces and configured in a plurality of rows and columns forming a 2D mesh. Router nodes are located at the intersections of the rows and columns, and are configured to forward data units between IO inputs and outputs coupled to the mesh at its edges through use of shortest path routes defined by agents at the IO interfaces. Multiple instances of the 2D meshes may be employed to support bandwidth scaling of the router architecture. One implementation of a multi-layer 2D mesh is built using a standard tile that is tessellated to form a 2D array of standard tiles, with each 2D mesh layer offset and overlaid relative to the other 2D mesh layers. IO interfaces are then coupled to the multi-layer 2D mesh via muxes/demuxes and/or crossbar interconnects.
    Type: Grant
    Filed: June 26, 2013
    Date of Patent: March 22, 2016
    Assignee: INTEL CORPORATION
    Inventors: William C. Hasenplaugh, Tryggve Fossum, Judson S. Leonard
  • Publication number: 20150003281
    Abstract: Architectures, apparatus and systems employing scalable multi-layer 2D-mesh routers. A 2D router mesh comprises bi-direction pairs of linked paths coupled between pairs of IO interfaces and configured in a plurality of rows and columns forming a 2D mesh. Router nodes are located at the intersections of the rows and columns, and are configured to forward data units between IO inputs and outputs coupled to the mesh at its edges through use of shortest path routes defined by agents at the IO interfaces. Multiple instances of the 2D meshes may be employed to support bandwidth scaling of the router architecture. One implementation of a multi-layer 2D mesh is built using a standard tile that is tessellated to form a 2D array of standard tiles, with each 2D mesh layer offset and overlaid relative to the other 2D mesh layers. IO interfaces are then coupled to the multi-layer 2D mesh via muxes/demuxes and/or crossbar interconnects.
    Type: Application
    Filed: June 26, 2013
    Publication date: January 1, 2015
    Inventors: William C. Hasenplaugh, Tryggve Fossum, Judson S. Leonard
  • Patent number: 7773617
    Abstract: Systems and methods for arbitrating for virtual channels to prevent livelock in richly-connected multiprocessor computer system. Livelock is prevented in a multiprocessor computer system, in which each of a large plurality processing node has input links and egress links. A virtual channel is assigned to convey the communication. Communication data from the plurality of input links is buffered in cross point buffers. A subset of the cross point buffers bids for, and arbitrates, use of the same one egress link. The virtual channel of the selected communication is identified. It is determined whether any of the other communications bidding for use of the egress link are associated with the identified virtual channel and if so whether any communication has been waiting longer than the selected communication. If so, allowing that communication to use the egress link before the selected communication does.
    Type: Grant
    Filed: November 8, 2006
    Date of Patent: August 10, 2010
    Assignee: SiCortex, Inc.
    Inventors: Nitin Godiwala, Judson S. Leonard, Matthew H. Reilly
  • Patent number: 7773618
    Abstract: Systems and methods for preventing deadlock in richly-connected multiprocessor computer system using dynamic assignment of virtual channels. Deadlock is prevented in a multiprocessor computer system having a large plurality of processing nodes interconnected by a defined interconnection topology. Each link in the interconnection topology is associated with a set of virtual channels. Each virtual channel has corresponding communication buffers to store communication data and each virtual channel has an associated virtual channel identifier. Each communication between a source processing node and a target processing node is assigned an initial virtual channel to convey the communication from the source processing node. At an intermediate processing node, a different virtual channel is assigned to convey the communication toward the target processing node, in accordance with pre-defined rules to avoid a cycle of dependency of communication buffer resources.
    Type: Grant
    Filed: November 8, 2006
    Date of Patent: August 10, 2010
    Assignee: SiCortex, Inc.
    Inventors: Judson S. Leonard, Matthew H. Reilly, Nitin Godiwala
  • Patent number: 7773616
    Abstract: Systems and methods for communicating on a richly-connected multiprocessor computer system using a pool of buffers for dynamic association with a virtual channel. Packets are communicated in a multiprocessor computer system having a large plurality of processing nodes interconnected by a defined interconnection topology, in which a communication from a source processing node to a target processing node may pass through one or more intermediate nodes en route to the target processing node. A set of virtual channels is associated for each link in the interconnection topology. A first subset of buffers is dedicated for fixed correspondence to virtual channel identifiers, and a second subset of buffers is dedicated for dynamic allocation and assignment to virtual channels.
    Type: Grant
    Filed: November 8, 2006
    Date of Patent: August 10, 2010
    Assignee: SiCortex, Inc.
    Inventors: Matthew H. Reilly, Nitin Godiwala, Judson S. Leonard
  • Patent number: 7751344
    Abstract: Computer system and method using a Kautz-like digraph to interconnect computer nodes and having control back channel between nodes. A multinode computing system includes a large plurality of computing nodes interconnected via a Kautz topology having order O, diameter n, and degree k. The order equals (k+1)kn?1; The data interconnections from a node x to a node y in the topology satisfy the relationship y=(?x*k?j) mod O, where 1?j?k; and each x,y pair includes a unidirectional control link from node y to node x to convey flow control and error information from a receiving node y to a transmitting node x.
    Type: Grant
    Filed: November 8, 2006
    Date of Patent: July 6, 2010
    Assignee: SiCortex, Inc.
    Inventors: Judson S. Leonard, Matthew H. Reilly, Lawrence C. Stewart, Washington Taylor
  • Patent number: 7660270
    Abstract: Computer systems and methods using efficient module and backplane tiling to interconnect computer nodes via a Kautz-like digraph. A multinode computing system includes a large plurality of computing nodes interconnected via a Kautz topology having order O, diameter n, and degree k. The order equals (k+1)kn?1. The interconnections from a node x to a node y in the topology satisfy the relationship y=(?x*k?j) mod O, where 1?j?k, and the computing nodes are arranged onto a plurality of modules. Each module has an equal plurality of computing nodes on it. A majority of the inter-node connections are contained on the plurality of modules and a minority of the inter-node connections are inter-module connections. Inter-module connections are routed among modules in parallel on an inter-module connection plane.
    Type: Grant
    Filed: November 8, 2006
    Date of Patent: February 9, 2010
    Assignee: SiCortex, Inc.
    Inventors: Judson S. Leonard, Matthew H. Reilly, Lawrence C. Stewart, Washington Taylor
  • Patent number: 7533197
    Abstract: A multi-node computer system with a plurality of interconnected processing nodes, including a method of using DMA engines without page locking by the operating system. The method includes a sending node with a first virtual address space and a receiving node with a second virtual address space. Performing a DMA data transfer operation between the first virtual address space on the sending node and the second virtual address space on the receiving node via a DMA engine, and if the DMA operation refers to a virtual address within the second virtual address space that is not in physical memory, causing the DMA operation to fail. The method includes causing the receiving node to map the referenced virtual address within the second virtual address space to a physical address, and causing the sending node to retry the DMA operation, wherein the retried DMA operation is performed without page locking.
    Type: Grant
    Filed: November 8, 2006
    Date of Patent: May 12, 2009
    Assignee: SiCortex, Inc.
    Inventors: Judson S. Leonard, David Gingold, Lawrence C. Stewart
  • Publication number: 20080126571
    Abstract: Computer systems and methods using efficient module and backplane tiling to interconnect computer nodes via a Kautz-like digraph. A multinode computing system includes a large plurality of computing nodes interconnected via a Kautz topology having order O, diameter n, and degree k. The order equals (k+1)kn?1. The interconnections from a node x to a node y in the topology satisfy the relationship y=(?x*k?j) mod O, where 1?j?k, and the computing nodes are arranged onto a plurality of modules. Each module has an equal plurality of computing nodes on it. A majority of the inter-node connections are contained on the plurality of modules and a minority of the inter-node connections are inter-module connections. Inter-module connections are routed among modules in parallel on an inter-module connection plane.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 29, 2008
    Inventors: Judson S. Leonard, Matthew H. Reilly, Lawrence C. Stewart, Washington Taylor
  • Publication number: 20080109586
    Abstract: Systems and methods for arbitrating for virtual channels to prevent livelock in richly-connected multiprocessor computer system. Livelock is prevented in a multiprocessor computer system, in which each of a large plurality processing node has input links and egress links. A virtual channel is assigned to convey the communication. Communication data from the plurality of input links is buffered in cross point buffers. A subset of the cross point buffers bids for, and arbitrates, use of the same one egress link. The virtual channel of the selected communication is identified. It is determined whether any of the other communications bidding for use of the egress link are associated with the identified virtual channel and if so whether any communication has been waiting longer than the selected communication. If so, allowing that communication to use the egress link before the selected communication does.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 8, 2008
    Inventors: Nitin Godiwala, Judson S. Leonard, Matthew H. Reilly
  • Publication number: 20080107105
    Abstract: Systems and methods for communicating on a richly-connected multiprocessor computer system using a pool of buffers for dynamic association with a virtual channel. Packets are communicated in a multiprocessor computer system having a large plurality of processing nodes interconnected by a defined interconnection topology, in which a communication from a source processing node to a target processing node may pass through one or more intermediate nodes en route to the target processing node. A set of virtual channels is associated for each link in the interconnection topology. A first subset of buffers is dedicated for fixed correspondence to virtual channel identifiers, and a second subset of buffers is dedicated for dynamic allocation and assignment to virtual channels.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 8, 2008
    Inventors: Matthew H. Reilly, Nitin Godiwala, Judson S. Leonard
  • Publication number: 20080109569
    Abstract: The invention relates to a remote DMA system, and methods for supporting synchronization of distributed processes in a multiprocessor system using collective operations. One aspect of the invention is a multi-node computer system having a plurality of interconnected processing nodes. This system uses DMA engines to perform collective operations synchronizing processes executing on a set of nodes. Each process in the set of processes causes the DMA engine on the node on which the process executes, to transmit a collective operation command to the master node when the process reaches a synchronization point in its execution. The DMA engine on the master node receives and executes the collective operations from the processes, and in response to receiving a pre-established number of the collective operations, conditionally executing the set of associated commands.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 8, 2008
    Inventors: Judson S. Leonard, Lawrence C. Stewart, David Gingold
  • Publication number: 20080109604
    Abstract: The invention relates to a systems and methods for remote direct memory access to processor caches for remote direct memory access (RDMA) reads and writes. One aspect of the invention is a computer node within a multi-node computer system having a plurality of interconnected processing nodes. The computer node has least one processor associated with at least one processor cache for holding cache entries for the at least one processor. A cache interface for the remote DMA engine on the node includes logic to consult the processor cache control structure, to determine whether the processor cache has a cache entry associated with a physical address of a DMA transfer, and if so, reading from that cache entry or writing to that cache entry to service the DMA transfer.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 8, 2008
    Inventors: Matthew H. Reilly, Judson S. Leonard
  • Publication number: 20080107116
    Abstract: A large-scale multiprocessor system with a link-level interconnect that provides in-order packet delivery. The method comprises transmitting, over a link in the defined interconnection topology, a sequence of packets in a defined order from a first node to a second node. The second node is an intermediate node in a route between the first and third node. At the first node, the transmitted packets are stored in a buffer. In response to an error in reception, the first node retrieves packets from the buffer and re-transmits them to the second node, beginning with the packet subsequent to the last packet in the sequence correctly received by the second node and continuing through the remainder of the sequence of packets.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 8, 2008
    Inventors: Nitin Godiwala, Judson S. Leonard, Matthew H. Reilly, Lawrence C. Stewart
  • Publication number: 20080109544
    Abstract: Computer system and method using a Kautz-like digraph to interconnect computer nodes and having control back channel between nodes. A multinode computing system includes a large plurality of computing nodes interconnected via a Kautz topology having order O, diameter n, and degree k. The order equals (k+1)kn?1; The data interconnections from a node x to a node y in the topology satisfy the relationship y=(?x*k?j) mod O, where 1?j?k; and each x,y pair includes a unidirectional control link from node y to node x to convey flow control and error information from a receiving node y to a transmitting node x.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 8, 2008
    Inventors: Judson S. Leonard, Matthew H. Reilly, Lawrence C. Stewart, Washington Taylor
  • Publication number: 20080109570
    Abstract: Systems and methods for remote direct memory access without page locking by the operating system. A multi-node computer system has a plurality of interconnected processing nodes. DMA engines are used in a way to avoid page locking.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 8, 2008
    Inventors: Judson S. Leonard, David Gingold, Lawrence C. Stewart
  • Publication number: 20080109573
    Abstract: The invention relates to a RDMA system for sending commands from a source node to a target node. These commands are locally executed at the target node. One aspect of the invention is a multi-node computer system having a plurality of interconnected processing nodes. The computer system issues a direct memory access (DMA) command from a first node to be executed by a DMA engine at a second node. Commands are transferred and executed by forming, at a first node, a packet having a payload containing the DMA command. The packets are sent to the second node via the interconnection topology, where the second node receives the packet and validating that the packet complies with a predefined trust relationship. The command is then processed by the DMA engine at the second node.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 8, 2008
    Inventors: Judson S. Leonard, Lawrence C. Stewart, David Gingold
  • Publication number: 20080107106
    Abstract: Systems and methods for preventing deadlock in richly-connected multiprocessor computer system using dynamic assignment of virtual channels. Deadlock is prevented in a multiprocessor computer system having a large plurality of processing nodes interconnected by a defined interconnection topology. Each link in the interconnection topology is associated with a set of virtual channels. Each virtual channel has corresponding communication buffers to store communication data and each virtual channel has an associated virtual channel identifier. Each communication between a source processing node and a target processing node is assigned an initial virtual channel to convey the communication from the source processing node. At an intermediate processing node, a different virtual channel is assigned to convey the communication toward the target processing node, in accordance with pre-defined rules to avoid a cycle of dependency of communication buffer resources.
    Type: Application
    Filed: November 8, 2006
    Publication date: May 8, 2008
    Inventors: Judson S. Leonard, Matthew H. Reilly, Nitin Godiwala
  • Patent number: 5327368
    Abstract: A fast binary reduction tree of the type used in high speed digital computer multiplication circuits is disclosed having chunky adders formed by sub-dividing carry propagate adders into chunks of equal bit length such that chunk addition can be initiated in parallel. In the tree, chunky adders with the same chunk size and offset can be cascaded by connecting the carry-outs of one adder to the carry-ins of another, while carry-outs from adders having different offsets can be interleaved to form new partial product terms for input to the next adder level. The chunky adder tree reduces the number of levels without significantly increasing the computation time at each level, thereby increasing the overall computational speed of the circuit.
    Type: Grant
    Filed: June 28, 1993
    Date of Patent: July 5, 1994
    Assignee: Digital Equipment Corporation
    Inventors: Robert A. Eustace, Judson S. Leonard
  • Patent number: 5113362
    Abstract: An interpolator circuit is formed from a chain of multiplexer/adder circuits. Each multiplexer/adder circuit selects one of the two multi-bit binary values which are to be interpolated in accordance with one bit of a multi-bit ratio value. The selected value is shifted and added to the output of a previous stage in the chain. When one of the two values is injected into the first stage, the final sum generated by the circuit chain is the interpolated value.
    Type: Grant
    Filed: May 11, 1990
    Date of Patent: May 12, 1992
    Assignee: Analog Devices, Inc.
    Inventors: Stephen W. Harston, Judson S. Leonard