-
公开(公告)号:US11947469B2
公开(公告)日:2024-04-02
申请号:US17675897
申请日:2022-02-18
Applicant: XILINX, INC.
Inventor: Cheng Zhen , Sonal Santan , Min Ma , Chien-Wei Lan
CPC classification number: G06F13/102 , G06F13/4221 , G06F2213/0026
Abstract: Embodiments herein describe partitioning an acceleration device based on the needs of each user application executing in a host. In one embodiment, a flexible queue provisioning method allows the acceleration device to be dynamically partitioned by pushing the configuration through a control command queue to the device by management software running in a trusted zone. The new configuration is parsed and verified by trusted firmware, which, then, creates isolated IO command queues on the acceleration device. These IO command queues can be directly mapped to a user application, VM, or other PCIe devices. In one embodiment, each IO command queue exposes only the compute resource assigned by the trusted firmware in the acceleration device.
-
公开(公告)号:US11386034B2
公开(公告)日:2022-07-12
申请号:US17085740
申请日:2020-10-30
Applicant: Xilinx, Inc.
Inventor: Sonal Santan , Ravi N. Kurlagunda , Min Ma , Himanshu Choudhary , Manjunath Chepuri , Cheng Zhen , Pranjal Joshi , Sebastian Turullols , Amit Kumar , Kaustuv Manji , Ravinder Sharma , Ch Vamshi Krishna
IPC: G06F13/42
Abstract: A hardware acceleration device can include a switch communicatively linked to a host central processing unit (CPU), an adapter coupled to the switch via a control bus, wherein the control bus is configured to convey addresses of descriptors from the host central CPU to the adapter, and a random-access memory (RAM) coupled to the switch through a data bus. The RAM is configured to store descriptors received from the host CPU via the data bus. The hardware acceleration device can include a compute unit coupled to the adapter and configured to perform operations specified by the descriptors. The adapter may be configured to retrieve the descriptors from the RAM via the data bus, provide arguments from the descriptors to the compute unit, and provide control signals to the compute unit to initiate the operations using the arguments.
-
公开(公告)号:US20220138140A1
公开(公告)日:2022-05-05
申请号:US17085740
申请日:2020-10-30
Applicant: Xilinx, Inc.
Inventor: Sonal Santan , Ravi N. Kurlagunda , Min Ma , Himanshu Choudhary , Manjunath Chepuri , Cheng Zhen , Pranjal Joshi , Sebastian Turullols , Amit Kumar , Kaustuv Manji , Ravinder Sharma , Ch Vamshi Krishna
IPC: G06F13/42
Abstract: A hardware acceleration device can include a switch communicatively linked to a host central processing unit (CPU), an adapter coupled to the switch via a control bus, wherein the control bus is configured to convey addresses of descriptors from the host central CPU to the adapter, and a random-access memory (RAM) coupled to the switch through a data bus. The RAM is configured to store descriptors received from the host CPU via the data bus. The hardware acceleration device can include a compute unit coupled to the adapter and configured to perform operations specified by the descriptors. The adapter may be configured to retrieve the descriptors from the RAM via the data bus, provide arguments from the descriptors to the compute unit, and provide control signals to the compute unit to initiate the operations using the arguments.
-
4.
公开(公告)号:US11163605B1
公开(公告)日:2021-11-02
申请号:US16571776
申请日:2019-09-16
Applicant: XILINX, INC.
Inventor: Sonal Santan , Min Ma , Soren Soe , Cheng Zhen , Lizhi Hou , Yu Liu
Abstract: Examples herein describe techniques for launching and executing a pipeline formed by heterogeneous processing units. A system on a chip (SoC) can include different hardware elements which form a collection of heterogeneous processing units, such as general purpose processor, programmable logic array, and specialized processors. These processing units are heterogeneous meaning their underlying hardware and techniques for processing data are different, in contrast to a system that using homogeneous processing units. In the embodiments herein, the heterogeneous processing units can be arranged into a pipeline where each stage of the pipeline is performed by one of the processing units.
-
-
-