US10698842B1

Domain assist processor-peer for coherent acceleration

Summary by NHIP

Coherent Domain Assist Processor

The peripheral I/O device includes a domain assist processor and domain accelerator within a host-extended coherent domain. A gateway receives distinct requests via a coherent interconnect protocol to direct the processor for functions like gzip or crypto and the accelerator for specific tasks.

Claim Score by NHIP

Read claim 1, the broadest

Abstract

Examples herein describe a peripheral I/O device with a domain assist processor (DAP) and a domain specific accelerator (DSA) that are in the same coherent domain as CPUs and memory in a host computing system. Peripheral I/O devices were previously unable to participate in a cache-coherent shared-memory multiprocessor paradigm with hardware resources in the host computing system. As a result, domain assist processing for lightweight processor functions (e.g., open source functions such as gzip, open source crypto libraries, open source network switches, etc.) either are performed using CPUs resources in the host or by provisioning a special processing system in the peripheral I/O device (e.g., using programmable logic in a FPGA). The embodiments herein use a DAP in the peripheral I/O device to perform the lightweight processor functions that would otherwise be performed by hardware resources in the host or by a special processing system in the peripheral I/O device.

US10698842B1, drawing sheet 1
Sheet 1 of 10

Term

12.5 yearsleft in the term

Expires 10 April 2039.

  1. Priority and filed
  2. Granted
  3. Today
  4. Expires

14 claims: 4 independent, 10 dependent

  1. 1
    Broadest claimClaim Score 61, broad(NHIP)A peripheral I/O device, comprising:a domain assist processor (DAP);a domain accelerator;and a gateway configured to communicatively couple the peripheral I/O device to a host using a coherent interconnect protocol, wherein the coherent interconnect protocol extends a coherent domain in the host to the peripheral I/O device such that the DAP is a peer processor to a processor in the host, wherein the gateway comprises an endpoint coherent interconnect communicatively coupled to both the DAP and the domain accelerator, and wherein the gateway is configured to: receive a first request from the host using the coherent interconnect protocol, the first request instructing the DAP to perform a processor function, and receive a second request from the host using the coherent interconnect protocol, the second request instructing the domain accelerator to perform an accelerator task.
  2. 8
    A peripheral I/O device, comprising:a domain assist processor (DAP);a domain accelerator;and a gateway configured to communicatively couple the peripheral I/O device to a host using a coherent interconnect protocol, wherein the coherent interconnect protocol extends a coherent domain in the host to the peripheral I/O device such that the DAP is a peer processor to a processor in the host, wherein the gateway is a hybrid gateway configured to establish an I/O domain and the coherent domain in the peripheral I/O device, and wherein the gateway is configured to: receive a first request from the host using the coherent interconnect protocol, the first request instructing the DAP to perform a processor function, and receive a second request from the host using the coherent interconnect protocol, the second request instructing the domain accelerator to perform an accelerator task.
  3. 9
    A method, comprising:identifying a processor function to offload from a CPU-memory complex in a host to a DAP in a peripheral I/O device, wherein a coherent domain including the CPU-memory complex of the host extends to the DAP in the peripheral I/O device, wherein the DAP comprises at least one processing core and an operating system, wherein the operating system is one of: an embedded, independent operating system and an extension of an operating system in the host, and wherein an instruction set architecture (ISA) used by the processing core is the same as an ISA used by a CPU in the host;instructing, using a coherent interconnect protocol, the DAP to perform the processor function and store resulting data in a memory element in the coherent domain;instructing, using the coherent interconnect protocol, a domain accelerator in the peripheral I/O device to process the resulting data when performing an accelerator task for the host;and receiving resulting data from performing the accelerator task on the domain accelerator.
  4. 13
    A computing system, comprising:a host comprising CPU-memory complex in a coherent domain;a peripheral I/O device, comprising: a DAP, wherein the DAP comprises at least one processing core and an operating system, wherein the operating system is one of: an embedded, independent operating system and an extension of an operating system in the host, wherein a ISA used by the processing core is different than an ISA used by a CPU in the host;a domain accelerator;and a gateway configured to communicatively couple the peripheral I/O device to the host using a coherent interconnect protocol, wherein the coherent interconnect protocol extends the coherent domain in the host to include the DAP, wherein the gateway is configured to: receive a first request from the host instructing the DAP to perform a processor function, and receive a second request from the host instructing the domain accelerator to perform an accelerator task.