Patents by Inventor Bruce A. Wilford
Bruce A. Wilford 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: 11340794Abstract: A system has a collection of central processing units. Each central processing unit is connected to at least one other central processing unit and has a path into flash memory resources. A central processing unit supports a mapping from a data address space, to a flash memory virtual address space, to a flash memory virtual page number to a flash memory physical address space.Type: GrantFiled: December 17, 2018Date of Patent: May 24, 2022Assignee: EMC IP HOLDING COMPANY LLCInventors: Mark Himelstein, James Yarbrough, Rick Carlson, Vishwas Durai, Vikram Venkataraghavan, Bruce A. Wilford, Grace Ho, Bill Katz, Richard Van Gaasbeck, Dan Arai, David R. Emberson
-
Patent number: 11010054Abstract: According to one embodiment, a data processing system includes a plurality of processing units, each processing unit having one or more processor cores. The system further includes a plurality of memory roots, each memory root being associated with one of the processing units. Each memory root includes one or more branches and a plurality of memory leaves to store data. Each of the branches is associated with one or more of the memory leaves and to provide access to the data stored therein. The system further includes a memory fabric coupled to each of the branches of each memory root to allow each branch to access data stored in any of the memory leaves associated with any one of remaining branches.Type: GrantFiled: June 10, 2016Date of Patent: May 18, 2021Assignee: EMC IP HOLDING COMPANY LLCInventors: Mark Himelstein, Bruce Wilford, Richard Van Gaasbeck, Todd Wilde, Rick Carlson, Vikram Venkataraghavan, Vishwas Durai, James Yarbrough, Blair Barnett
-
Patent number: 10713334Abstract: According to one embodiment, a data processing system includes a plurality of processing units, each processing unit having one or more processor cores. The system further includes a plurality of memory roots, each memory root being associated with one of the processing units. Each memory root includes one or more branches and a plurality of memory leaves to store data. Each of the branches is associated with one or more of the memory leaves and to provide access to the data stored therein. The system further includes a memory fabric coupled to each of the branches of each memory root to allow each branch to access data stored in any of the memory leaves associated with any one of remaining branches.Type: GrantFiled: June 21, 2017Date of Patent: July 14, 2020Assignee: EMC IP HOLDING COMPANY LLCInventors: Mark Himelstein, Bruce Wilford, Richard Van Gaasbeck, Todd Wilde, Rick Carlson, Vikram Venkataraghavan, Vishwas Durai, Blair Barnett, Kevin Rowett
-
Patent number: 10515014Abstract: According to one embodiment, a data processing system includes a plurality of processors, each of the processors being coupled to each of remaining processors via a processor interconnect, a plurality of memory controllers, each memory controller corresponding to one of the processors, a plurality of memory targets, each memory target includes one or more branches and a plurality of memory leaves for storing data, and an Ethernet switch fabric coupled to the memory controllers and the memory targets. When a first of the memory controllers writes data to a first of the memory leaves, the first memory controller sends a cache coherence message to remaining ones of the memory controllers to indicate that the data stored in the first memory leaf has been updated, such that any of the remaining memory controllers can update its cache by fetching the data from the first memory leaf.Type: GrantFiled: June 21, 2017Date of Patent: December 24, 2019Assignee: EMC IP Holding Company LLCInventors: Mark Himelstein, Kevin Rowett, Bruce Wilford, Richard Van Gaasbeck, Todd Wilde, Rick Carlson, Vikram Venkataraghavan, Vishwas Durai, Blair Barnett
-
Patent number: 10503416Abstract: According to one embodiment, a data processing system includes a plurality of central processing unit (CPU) subsystems, each CPU subsystem having a plurality of CPUs and a plurality of memory controllers, each memory controller corresponding to one of the CPUs, a plurality of memory complexes, each memory complex being associated with one of the CPU subsystems, wherein each memory complex comprises one or more branches, a plurality of memory leaves to store data, wherein each of the branches is coupled to one or more of the memory leaves and to provide access to the data stored in the memory leaves, and a replication interface to automatically replicate data received from one of the CPU subsystems to another one of the memory complexes, wherein the received data is to be stored in one of the memory leaves.Type: GrantFiled: June 21, 2017Date of Patent: December 10, 2019Assignee: EMC IP Holdings Company LLCInventors: Mark Himelstein, Bruce Wilford, Richard Van Gaasbeck, Todd Wilde, Rick Carlson, Vikram Venkataraghavan, Vishwas Durai, Blair Barnett, Kevin Rowett
-
Patent number: 10496284Abstract: A page virtualization table (PVT) and one or more block virtualization tables (BVTs) are maintained. The PVT includes PVT entries, each mapping a logical page number (LPN) to a virtual page number (VPN). Each BVT includes BVT entries, each mapping a virtual block number (VBN) to a physical block number (PBN). A request is received for accessing data stored in one of flash memory devices, the request including a first LPN. A search is performed in the PVT based on the first LPN to locate a first PVT entry to obtain a first VPN from the first PVT entry. A search is performed in a first BVT to locate a first BVT entry based on the VPN to obtain a first PBN from the first BVT entry. An input and output (IO) request is issued based on the first PBN to a flash controller associated with a first flash memory device that stores data corresponding to the first PBN.Type: GrantFiled: June 21, 2017Date of Patent: December 3, 2019Assignee: EMC IP Holding Company LLCInventors: Mark Himelstein, Bruce Wilford, Richard Van Gaasbeck, Todd Wilde, Rick Carlson, Vikram Venkataraghavan, Vishwas Durai, Blair Barnett, Kevin Rowett
-
Patent number: 10410693Abstract: A system includes a plurality of processors, each being coupled to each of remaining processors via a cluster of processor interconnects. The cluster of processor interconnects form a data distribution network. The system further includes a plurality of roots coupled to the processors, each root corresponding to one of the processors. Each root comprises a memory controller, one or more branches coupled to the memory controller, and a plurality of memory leaves coupled to the branches, each memory leaf having one or more solid state memory devices. Each of the branches is associated with one or more of the memory leaves and provides access to the associated memory leaves. Each of the processors can access any one of the memory leaves via a corresponding branch of any one of the roots over the data distribution network.Type: GrantFiled: November 3, 2016Date of Patent: September 10, 2019Assignee: EMC IP Holding Company LLCInventors: Frederic Roy Carlson, Jr., Mark Himelstein, Bruce Wilford, Dan Arai, David R. Emberson
-
Publication number: 20190121553Abstract: A system has a collection of central processing units. Each central processing unit is connected to at least one other central processing unit and has a path into flash memory resources. A central processing unit supports a mapping from a data address space, to a flash memory virtual address space, to a flash memory virtual page number to a flash memory physical address space.Type: ApplicationFiled: December 17, 2018Publication date: April 25, 2019Inventors: Mark Himelstein, James Yarbrough, Rick Carlson, Vishwas Durai, Vikram Venkataraghavan, Bruce A. Wilford, Grace Ho, Bill Katz, Rich Van Gaasbeck, Daniel Arai, David R. Emberson
-
Patent number: 10209904Abstract: A system has a collection of central processing units. Each central processing unit is connected to at least one other central processing unit and has a path into flash memory resources. A central processing unit supports a mapping from a data address space, to a flash memory virtual address space, to a flash memory virtual page number to a flash memory physical address space.Type: GrantFiled: March 6, 2015Date of Patent: February 19, 2019Assignee: EMC IP Holding Company LLCInventors: Mark Himelstein, James Yarbrough, Rick Carlson, Vishwas Durai, Vikram Venkataraghavan, Bruce A. Wilford, Grace Ho, Bill Katz, Rich Van Gaasbeck, Daniel Arai, David R. Emberson
-
Patent number: 9899996Abstract: A hardware trie structure includes a tree of internal node circuits and leaf node circuits. Each internal node is configured by a corresponding multi-bit node control value (NCV). Each leaf node can output a corresponding result value (RV). An input value (IV) supplied onto input leads of the trie causes signals to propagate through the trie such that one of the leaf nodes outputs one of the RVs onto output leads of the trie. In a transactional memory, a memory stores a set of NCVs and RVs. In response to a lookup command, the NCVs and RVs are read out of memory and are used to configure the trie. The IV of the lookup is supplied to the input leads, and the trie looks up an RV. A non-final RV initiates another lookup in a recursive fashion, whereas a final RV is returned as the result of the lookup command.Type: GrantFiled: November 29, 2014Date of Patent: February 20, 2018Assignee: Netronome Systems, Inc.Inventors: Gavin J. Stark, Bruce A. Wilford
-
Publication number: 20170076763Abstract: A system includes a plurality of processors, each being coupled to each of remaining processors via a cluster of processor interconnects. The cluster of processor interconnects form a data distribution network. The system further includes a plurality of roots coupled to the processors, each root corresponding to one of the processors. Each root comprises a memory controller, one or more branches coupled to the memory controller, and a plurality of memory leaves coupled to the branches, each memory leaf having one or more solid state memory devices. Each of the branches is associated with one or more of the memory leaves and provides access to the associated memory leaves. Each of the processors can access any one of the memory leaves via a corresponding branch of any one of the roots over the data distribution network.Type: ApplicationFiled: November 3, 2016Publication date: March 16, 2017Inventors: Frederic Roy Carlson, JR., Mark Himelstein, Bruce Wilford, Dan Arai, David R. Emberson
-
Patent number: 9519615Abstract: A system includes a collection of central processing units, where each central processing unit is connected to at least one other central processing unit and a root path into at least 10 Tera Bytes of solid state memory resources. Each central processing unit directly accesses solid state memory resources without swapping solid state memory contents into main memory.Type: GrantFiled: April 9, 2014Date of Patent: December 13, 2016Assignee: EMC CorporationInventors: Frederic Roy Carlson, Jr., Mark Himelstein, Bruce Wilford, Dan Arai, David R. Emberson
-
Publication number: 20150234612Abstract: A system has a collection of central processing units. Each central processing unit is connected to at least one other central processing unit and has a path into flash memory resources. A central processing unit supports a mapping from a data address space, to a flash memory virtual address space, to a flash memory virtual page number to a flash memory physical address space.Type: ApplicationFiled: March 6, 2015Publication date: August 20, 2015Applicant: Graphite System, Inc.Inventors: Mark Himelstein, James Yarborough, Rick Carlson, Vishwas Durai, Vikram Venkataraghavan, Bruce Wilford, Grace Ho, Bill Katz, Rich Van Gaasbeck, Dan Arai, David R. Emberson
-
Publication number: 20140304460Abstract: A system includes a collection of central processing units, where each central processing unit is connected to at least one other central processing unit and a root path into at least 10 Tera Bytes of solid state memory resources. Each central processing unit directly accesses solid state memory resources without swapping solid state memory contents into main memory.Type: ApplicationFiled: April 9, 2014Publication date: October 9, 2014Applicant: Graphite Systems, Inc.Inventors: Frederic Roy Carlson, JR., Mark Himelstein, Bruce Wilford, Dan Arai
-
Patent number: 7558270Abstract: A linecard architecture for high speed routing of data in a communications device. This architecture provides low latency routing based on packet priority: packet routing and processing occurs at line rate (wire speed) for most operations. A packet data stream is input to the inbound receiver, which uses a small packet FIFO to rapidly accumulate packet bytes. Once the header portion of the packet is received, the header alone is used to perform a high speed routing lookup and packet header modification. The queue manager then uses the class of service information in the packet header to enqueue the packet according to the required priority. Enqueued packets are buffered in a large memory space holding multiple packets prior to transmission across the device's switch fabric to the outbound linecard. On arrival at the outbound linecard, the packet is enqueued in the outbound transmitter portion of the linecard architecture.Type: GrantFiled: February 3, 2004Date of Patent: July 7, 2009Assignee: Cisco Technology, Inc.Inventors: Bruce Wilford, Yie-Fong Dan
-
Patent number: 7031323Abstract: A system and method for locally determining a fair allocated bandwidth for a network node configured to send and receive packets in an upstream direction and a downstream direction is disclosed. A local allocated bandwidth is allocated for locally generated network packets sent in the downstream direction. A minimum downstream available network bandwidth is determined from information received in the upstream direction. The local allocated bandwidth is adjusted based on the minimum downstream available network bandwidth and the local allocated bandwidth is used to govern whether a class of locally generated network packets are sent in the downstream direction.Type: GrantFiled: June 21, 2001Date of Patent: April 18, 2006Assignee: Cisco Technology, Inc.Inventors: Hon Wah Chin, David J. Tsiang, Anthony J. Bates, Robert M. Broberg, Bruce A. Wilford
-
Patent number: 6990099Abstract: The invention provides a method and system for routing information lookup for packets using a routing protocol such as IP. Routing information which has been determined responsive to the packet header, which includes a destination address, a source address, and an input interface for the packet. Routing lookup is performed in response to at least one set of selected routing information, using a lookup table which includes tags both for the routing information and for a bitmask length (thus indicating the generality or scope of the routing information for the routing lookup). The lookup table is structured so that addresses having the most common bitmask length are addressed first, but that more specific addresses are still considered when they are present. It has been discovered that most internet addresses can be found by reference to 24-bit or 21-bit IP addresses, after which 16-bit, 12-bit, and finally 32-bit IP addresses are considered.Type: GrantFiled: March 2, 2001Date of Patent: January 24, 2006Assignee: Cisco Technology, Inc.Inventor: Bruce A. Wilford
-
Patent number: 6968392Abstract: An apparatus and method that provides improved statistics collection for high bandwidth interfaces supporting multiple connections. Statistics are counted for a plurality of connections. A determination is made to determine if a count value for each of the connections is greater than or equal to a threshold. Statistics are collected for connections having a determined count value greater than or equal to the threshold before connections having a count value below the threshold. The apparatus and method can thus avoid data loss and reduce wasted processing time in maintaining reliable and accurate statistics for multiple connection supported by a network switch or interface.Type: GrantFiled: June 29, 2000Date of Patent: November 22, 2005Assignee: Cisco Technology, Inc.Inventors: Bruce Wilford, Jan Medved, Stephan Crandall
-
Patent number: 6757791Abstract: A method and system for reordering data units that are to be written to, or read from, selected locations in a memory are described herein. The data units are reordered so that an order of accessing memory is optimal for speed of reading or writing memory, not necessarily an order in which data units were received or requested. Packets that are received at input interfaces are divided into cells, with cells being allocated to independent memory banks. Many such memory banks are kept busy concurrently, so cells (and thus the packets) are read into the memory as rapidly as possible. The system may include an input queue for receiving data units in a first sequence and a set of storage queues coupled to the input queue for receiving data units from the input queue. The data units may be written from the storage queues to the memory in an order other than the first sequence.Type: GrantFiled: March 30, 1999Date of Patent: June 29, 2004Assignee: Cisco Technology, Inc.Inventors: Robert O'Grady, Sonny N. Tran, Yie-Fong Dan, Bruce Wilford
-
Patent number: 6687247Abstract: A linecard architecture for high speed routing of data in a communications device. This architecture provides low latency routing based on packet priority: packet routing and processing occurs at line rate (wire speed) for most operations. A packet data stream is input to the inbound receiver, which uses a small packet FIFO to rapidly accumulate packet bytes. Once the header portion of the packet is received, the header alone is used to perform a high speed routing lookup and packet header modification. The queue manager then uses the class of service information in the packet header to enqueue the packet according to the required priority. Enqueued packets are buffered in a large memory space holding multiple packets prior to transmission across the device's switch fabric to the outbound linecard. On arrival at the outbound linecard, the packet is enqueued in the outbound transmitter portion of the linecard architecture.Type: GrantFiled: October 27, 1999Date of Patent: February 3, 2004Assignee: Cisco Technology, Inc.Inventors: Bruce Wilford, Yie-Fong Dan