Patents by Inventor Richard E. Kessler

Richard E. Kessler 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: 11868262
    Abstract: A memory request, including an address, is accessed. The memory request also specifies a type of an operation (e.g., a read or write) associated with an instance (e.g., a block) of data. A group of caches is selected using a bit or bits in the address. A first hash of the address is performed to select a cache in the group. A second hash of the address is performed to select a set of cache lines in the cache. Unless the operation results in a cache miss, the memory request is processed at the selected cache. When there is a cache miss, a third hash of the address is performed to select a memory controller, and a fourth hash of the address is performed to select a bank group and a bank in memory.
    Type: Grant
    Filed: February 9, 2023
    Date of Patent: January 9, 2024
    Assignee: Marvell Asia Pte, Ltd.
    Inventors: Richard E. Kessler, David Asher, Shubhendu S Mukherjee, Wilson P. Snyder, II, David Carlson, Jason Zebchuk, Isam Akkawi
  • Patent number: 11709534
    Abstract: According to at least one example embodiment, a method and corresponding apparatus for controlling power in a multi-core processor chip include: accumulating, at a controller within the multi-core processor chip, one or more power estimates associated with multiple core processors within the multi-core processor chip. A global power threshold is determined based on a cumulative power estimate, the cumulative power estimate being determined based at least in part on the one or more power estimates accumulated. The controller causes power consumption at each of the core processors to be controlled based on the determined global power threshold. The controller may directly control power consumption at the core processors or may command the core processors to do so.
    Type: Grant
    Filed: March 16, 2021
    Date of Patent: July 25, 2023
    Assignee: MARVELL ASIA PTE, LTD.
    Inventors: David A. Carlson, Richard E. Kessler
  • Publication number: 20230185720
    Abstract: A memory request, including an address, is accessed. The memory request also specifies a type of an operation (e.g., a read or write) associated with an instance (e.g., a block) of data. A group of caches is selected using a bit or bits in the address. A first hash of the address is performed to select a cache in the group. A second hash of the address is performed to select a set of cache lines in the cache. Unless the operation results in a cache miss, the memory request is processed at the selected cache. When there is a cache miss, a third hash of the address is performed to select a memory controller, and a fourth hash of the address is performed to select a bank group and a bank in memory.
    Type: Application
    Filed: February 9, 2023
    Publication date: June 15, 2023
    Inventors: Richard E. Kessler, David Asher, Shubhendu S. Mukherjee, Wilson P. Snyder, II, David Carlson, Jason Zebchuk, Isam Akkawi
  • Patent number: 11646971
    Abstract: In an embodiment, a method includes, in response to detecting available memory of a destination node of a packet flow of nodes to the destination node being below a particular threshold, marking the destination node as being in a backpressure state. The destination node, in the backpressure state, sends a signal indicating a condition of packet backpressure to the nodes of the packet flow, and initiates a timer for a particular time period. The method further marks, at the end of the particular time period, the destination node as being in a bad actor state if the available memory is below the particular threshold, and as being in a good actor state if the memory is above the particular threshold. The method, in response to marking the destination node as being in a bad actor state, sends a signal to the nodes causing the nodes to drop packets directed to the destination node.
    Type: Grant
    Filed: July 6, 2020
    Date of Patent: May 9, 2023
    Assignee: Marvell Asia Pte, Ltd.
    Inventors: Richard E. Kessler, Nick Jamba, Victor Hart
  • Patent number: 11615027
    Abstract: A memory request, including an address, is accessed. The memory request also specifies a type of an operation (e.g., a read or write) associated with an instance (e.g., a block) of data. A group of caches is selected using a bit or bits in the address. A first hash of the address is performed to select a cache in the group. A second hash of the address is performed to select a set of cache lines in the cache. Unless the operation results in a cache miss, the memory request is processed at the selected cache. When there is a cache miss, a third hash of the address is performed to select a memory controller, and a fourth hash of the address is performed to select a bank group and a bank in memory.
    Type: Grant
    Filed: November 18, 2021
    Date of Patent: March 28, 2023
    Assignee: Marvell Asia Pte, Ltd.
    Inventors: Richard E. Kessler, David Asher, Shubhendu S. Mukherjee, Wilson P. Snyder, II, David Carlson, Jason Zebchuk, Isam Akkawi
  • Publication number: 20220114101
    Abstract: A memory request, including an address, is accessed. The memory request also specifies a type of an operation (e.g., a read or write) associated with an instance (e.g., a block) of data. A group of caches is selected using a bit or bits in the address. A first hash of the address is performed to select a cache in the group. A second hash of the address is performed to select a set of cache lines in the cache. Unless the operation results in a cache miss, the memory request is processed at the selected cache. When there is a cache miss, a third hash of the address is performed to select a memory controller, and a fourth hash of the address is performed to select a bank group and a bank in memory.
    Type: Application
    Filed: November 18, 2021
    Publication date: April 14, 2022
    Inventors: Richard E. KESSLER, David ASHER, Shubhendu S. MUKHERJEE, Wilson P. SNYDER, II, David CARLSON, Jason ZEBCHUK, Isam AKKAWI
  • Patent number: 11188466
    Abstract: A memory request, including an address, is accessed. The memory request also specifies a type of an operation (e.g., a read or write) associated with an instance (e.g., a block) of data. A group of caches is selected using a bit or bits in the address. A first hash of the address is performed to select a cache in the group. A second hash of the address is performed to select a set of cache lines in the cache. Unless the operation results in a cache miss, the memory request is processed at the selected cache. When there is a cache miss, a third hash of the address is performed to select a memory controller, and a fourth hash of the address is performed to select a bank group and a bank in memory.
    Type: Grant
    Filed: February 11, 2020
    Date of Patent: November 30, 2021
    Assignee: Marvell Asia Pte, Ltd.
    Inventors: Richard E. Kessler, David Asher, Shubhendu S. Mukherjee, Wilson P. Snyder, II, David Carlson, Jason Zebchuk, Isam Akkawi
  • Patent number: 11093405
    Abstract: A network processor includes a memory subsystem serving a plurality of processor cores. The memory subsystem includes a hierarchy of caches. A mid-level instruction cache provides for caching instructions for multiple processor cores. Likewise, a mid-level data cache provides for caching data for multiple cores, and can optionally serve as a point of serialization of the memory subsystem. A low-level cache is partitionable into partitions that are subsets of both ways and sets, and each partition can serve an independent process and/or processor core.
    Type: Grant
    Filed: May 29, 2019
    Date of Patent: August 17, 2021
    Assignee: MARVELL ASIA PTE, LTD.
    Inventors: Shubhendu S. Mukherjee, David H. Asher, Richard E. Kessler, Srilatha Manne
  • Patent number: 11095626
    Abstract: A network processor provides for in-line encryption and decryption of received and transmitted packets. For packet transmittal, a processor core generates packet data for encryption and forwards an encryption instruction to a cryptographic unit. The cryptographic unit generates an encrypted packet, and enqueues a send descriptor to a network interface controller, which, in turn, constructs and transmits an outgoing packet. For received encrypted packets, the network interface controller communicates with the cryptographic unit to decrypt the packet prior to enqueuing work to the processor core, thereby providing the processor core with a decrypted packet.
    Type: Grant
    Filed: September 26, 2018
    Date of Patent: August 17, 2021
    Assignee: MARVELL ASIA PTE, LTD.
    Inventors: Richard E. Kessler, Shahe H. Krakirian
  • Publication number: 20210200287
    Abstract: According to at least one example embodiment, a method and corresponding apparatus for controlling power in a multi-core processor chip include: accumulating, at a controller within the multi-core processor chip, one or more power estimates associated with multiple core processors within the multi-core processor chip. A global power threshold is determined based on a cumulative power estimate, the cumulative power estimate being determined based at least in part on the one or more power estimates accumulated. The controller causes power consumption at each of the core processors to be controlled based on the determined global power threshold. The controller may directly control power consumption at the core processors or may command the core processors to do so.
    Type: Application
    Filed: March 16, 2021
    Publication date: July 1, 2021
    Inventors: David A. Carlson, Richard E. Kessler
  • Patent number: 11038856
    Abstract: A network processor provides for in-line encryption and decryption of received and transmitted packets. For packet transmittal, a processor core generates packet data for encryption and forwards an encryption instruction to a cryptographic unit. The cryptographic unit generates an encrypted packet, and enqueues a send descriptor to a network interface controller, which, in turn, constructs and transmits an outgoing packet. For received encrypted packets, the network interface controller communicates with the cryptographic unit to decrypt the packet prior to enqueuing work to the processor core, thereby providing the processor core with a decrypted packet.
    Type: Grant
    Filed: September 26, 2018
    Date of Patent: June 15, 2021
    Assignee: MARVELL ASIA PTE, LTD.
    Inventor: Richard E. Kessler
  • Patent number: 10983576
    Abstract: According to at least one example embodiment, a method and corresponding apparatus for controlling power in a multi-core processor chip include: accumulating, at a controller within the multi-core processor chip, one or more power estimates associated with multiple core processors within the multi-core processor chip. A global power threshold is determined based on a cumulative power estimate, the cumulative power estimate being determined based at least in part on the one or more power estimates accumulated. The controller causes power consumption at each of the core processors to be controlled based on the determined global power threshold. The controller may directly control power consumption at the core processors or may command the core processors to do so.
    Type: Grant
    Filed: June 8, 2020
    Date of Patent: April 20, 2021
    Assignee: MARVELL ASIA PTE, LTD.
    Inventors: David A. Carlson, Richard E. Kessler
  • Publication number: 20210081572
    Abstract: An encryption interface provides secure, low-latency communications between processors. A first processor block transforms initial data into encrypted data using a cipher for receipt by a second processor block, which transforms the encrypted data into decrypted data. The first processor block utilized a crypto circuit having a plurality of stages, each of which generate a subset of a cipher digit stream for encrypting the data. The second processor block receives and decrypts the encrypted data using a respective decryption circuit.
    Type: Application
    Filed: November 13, 2020
    Publication date: March 18, 2021
    Inventors: Georgios Angelopoulos, Steven C. Barner, Richard E. Kessler
  • Patent number: 10872173
    Abstract: An encryption interface provides secure, low-latency communications between processors. A first processor block transforms initial data into encrypted data using a cipher for receipt by a second processor block, which transforms the encrypted data into decrypted data. The first processor block utilized a crypto circuit having a plurality of stages, each of which generate a subset of a cipher digit stream for encrypting the data. The second processor block receives and decrypts the encrypted data using a respective decryption circuit.
    Type: Grant
    Filed: September 26, 2018
    Date of Patent: December 22, 2020
    Assignee: Marvell Asia Pte, Ltd.
    Inventors: Georgios Angelopoulos, Steven C. Barner, Richard E. Kessler
  • Publication number: 20200336433
    Abstract: In an embodiment, a method includes, in response to detecting available memory of a destination node of a packet flow of nodes to the destination node being below a particular threshold, marking the destination node as being in a backpressure state. The destination node, in the backpressure state, sends a signal indicating a condition of packet backpressure to the nodes of the packet flow, and initiates a timer for a particular time period. The method further marks, at the end of the particular time period, the destination node as being in a bad actor state if the available memory is below the particular threshold, and as being in a good actor state if the memory is above the particular threshold. The method, in response to marking the destination node as being in a bad actor state, sends a signal to the nodes causing the nodes to drop packets directed to the destination node.
    Type: Application
    Filed: July 6, 2020
    Publication date: October 22, 2020
    Inventors: Richard E. Kessler, Nick Jamba, Victor Hart
  • Publication number: 20200301491
    Abstract: According to at least one example embodiment, a method and corresponding apparatus for controlling power in a multi-core processor chip include: accumulating, at a controller within the multi-core processor chip, one or more power estimates associated with multiple core processors within the multi-core processor chip. A global power threshold is determined based on a cumulative power estimate, the cumulative power estimate being determined based at least in part on the one or more power estimates accumulated. The controller causes power consumption at each of the core processors to be controlled based on the determined global power threshold. The controller may directly control power consumption at the core processors or may command the core processors to do so.
    Type: Application
    Filed: June 8, 2020
    Publication date: September 24, 2020
    Inventors: David A. Carlson, Richard E. Kessler
  • Patent number: 10732684
    Abstract: According to at least one example embodiment, a method and corresponding apparatus for controlling power in a multi-core processor chip include: accumulating, at a controller within the multi-core processor chip, one or more power estimates associated with multiple core processors within the multi-core processor chip. A global power threshold is determined based on a cumulative power estimate, the cumulative power estimate being determined based at least in part on the one or more power estimates accumulated. The controller causes power consumption at each of the core processors to be controlled based on the determined global power threshold. The controller may directly control power consumption at the core processors or may command the core processors to do so.
    Type: Grant
    Filed: December 5, 2018
    Date of Patent: August 4, 2020
    Assignee: MARVELL ASIA PTE, LTD.
    Inventors: David A. Carlson, Richard E. Kessler
  • Patent number: 10721172
    Abstract: In an embodiment, a method includes, in response to detecting available memory of a destination node of a packet flow of nodes to the destination node being below a particular threshold, marking the destination node as being in a backpressure state. The destination node, in the backpressure state, sends a signal indicating a condition of packet backpressure to the nodes of the packet flow, and initiates a timer for a particular time period. The method further marks, at the end of the particular time period, the destination node as being in a bad actor state if the available memory is below the particular threshold, and as being in a good actor state if the memory is above the particular threshold. The method, in response to marking the destination node as being in a bad actor state, sends a signal to the nodes causing the nodes to drop packets directed to the destination node.
    Type: Grant
    Filed: July 6, 2018
    Date of Patent: July 21, 2020
    Assignee: MARVELL ASIA PTE, LTD.
    Inventors: Richard E. Kessler, Nick Jamba, Victor Hart
  • Publication number: 20200183844
    Abstract: A memory request, including an address, is accessed. The memory request also specifies a type of an operation (e.g., a read or write) associated with an instance (e.g., a block) of data. A group of caches is selected using a bit or bits in the address. A first hash of the address is performed to select a cache in the group. A second hash of the address is performed to select a set of cache lines in the cache. Unless the operation results in a cache miss, the memory request is processed at the selected cache. When there is a cache miss, a third hash of the address is performed to select a memory controller, and a fourth hash of the address is performed to select a bank group and a bank in memory.
    Type: Application
    Filed: February 11, 2020
    Publication date: June 11, 2020
    Inventors: Richard E. KESSLER, David ASHER, Shubhendu S. MUKHERJEE, Wilson P. SNYDER, II, David CARLSON, Jason ZEBCHUK, Isam AKKAWI
  • Publication number: 20200099670
    Abstract: A network processor provides for in-line encryption and decryption of received and transmitted packets. For packet transmittal, a processor core generates packet data for encryption and forwards an encryption instruction to a cryptographic unit. The cryptographic unit generates an encrypted packet, and enqueues a send descriptor to a network interface controller, which, in turn, constructs and transmits an outgoing packet. For received encrypted packets, the network interface controller communicates with the cryptographic unit to decrypt the packet prior to enqueuing work to the processor core, thereby providing the processor core with a decrypted packet.
    Type: Application
    Filed: September 26, 2018
    Publication date: March 26, 2020
    Inventors: Richard E. Kessler, Shahe H. Krakirian