Patents by Inventor Cheng Zhen
Cheng Zhen 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).
-
Publication number: 20260140764Abstract: Fine-grained preemption of a data flow architecture based neural processing unit (NPU) includes executing, by a controller, control-code that implements a first context in the NPU. In response to the controller detecting a preemption opcode in the control-code, detecting, by the controller, a second context awaiting execution by the neural processing unit. The second context has a priority that is greater than a priority of the first context. In response to detecting the second context, the NPU switches from executing the first context to implementing the second context.Type: ApplicationFiled: November 20, 2024Publication date: May 21, 2026Applicants: Advanced Micro Devices, Inc., Xilinx, Inc.Inventors: Sonal Santan, Vinod K. Kathail, Yu Liu, Huazhuo Xu, Cheng Zhen, Nishad Nandkishor Saraf, Satish Rangarajan, Pranjal Joshi, Javier Cabezas Rodriguez, Shanthanand Kutuva Rabindranath
-
Publication number: 20260127023Abstract: Command stream stitching for hardware acceleration includes generating, by a host processor, a stitched block representing a plurality of commands for a hardware accelerator. The host processor generates a stitched command from the plurality of commands. The stitched command references the stitched block. The hardware accelerator executes the stitched block in response to invoking the stitched command. The hardware accelerator generates a single notification directed to the host processor for the stitched command.Type: ApplicationFiled: November 5, 2024Publication date: May 7, 2026Applicants: Advanced Micro Devices, Inc., ATI Technologies ULC, Xilinx, Inc.Inventors: Cheng Zhen, Sonal Santan, Min Ma, Pat Truong, Satish Rangarajan, Soren T. Soe, Yu Liu
-
Publication number: 20260030052Abstract: Examples herein describe an array of controllers. The array includes a first controller having a first memory and a first processor and a second controller having a second memory and a second processor. The first controller is configured to execute a first segment of control code. The control code is compiled based on one or more instructions included in a user defined application. The second controller is configured to execute a second segment of the control code. The one or more instructions included in the user defined application are executable by executing the first segment of the control code and the second segment of the control code.Type: ApplicationFiled: July 23, 2024Publication date: January 29, 2026Inventors: Sonal SANTAN, Huazhuo XU, David Patrick CLARKE, Himanshu CHOUDHARY, Javier CABEZAS RODRIGUEZ, Yu LIU, Cheng ZHEN, Patrick SCHLANGEN
-
Patent number: 11947469Abstract: 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.Type: GrantFiled: February 18, 2022Date of Patent: April 2, 2024Assignee: XILINX, INC.Inventors: Cheng Zhen, Sonal Santan, Min Ma, Chien-Wei Lan
-
Patent number: 11861010Abstract: An integrated circuit can include a communication endpoint configured to maintain a communication link with a host computer, a queue configured to receive a plurality of host commands from the host computer via the communication link, and a processor configured to execute a device runtime. The processor, responsive to executing the device runtime, is configured to perform validation of the host commands read from the queue and selectively execute the host commands based on a result of the validation on a per host command basis. The host commands are executable by the processor to manage functions of the integrated circuit. The queue is implemented in a region of memory that is shared by the integrated circuit and the host computer.Type: GrantFiled: February 14, 2022Date of Patent: January 2, 2024Assignee: Xilinx, Inc.Inventors: Sonal Santan, Yu Liu, Yenpang Lin, Lizhi Hou, Cheng Zhen, Yidong Zhang
-
Publication number: 20230267080Abstract: 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.Type: ApplicationFiled: February 18, 2022Publication date: August 24, 2023Inventors: Cheng ZHEN, Sonal SANTAN, Min MA, Chien-Wei LAN
-
Publication number: 20230259627Abstract: An integrated circuit can include a communication endpoint configured to maintain a communication link with a host computer, a queue configured to receive a plurality of host commands from the host computer via the communication link, and a processor configured to execute a device runtime. The processor, responsive to executing the device runtime, is configured to perform validation of the host commands read from the queue and selectively execute the host commands based on a result of the validation on a per host command basis. The host commands are executable by the processor to manage functions of the integrated circuit. The queue is implemented in a region of memory that is shared by the integrated circuit and the host computer.Type: ApplicationFiled: February 14, 2022Publication date: August 17, 2023Applicant: Xilinx, Inc.Inventors: Sonal Santan, Yu Liu, Yenpang Lin, Lizhi Hou, Cheng Zhen, Yidong Zhang
-
Patent number: 11386034Abstract: 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.Type: GrantFiled: October 30, 2020Date of Patent: July 12, 2022Assignee: Xilinx, Inc.Inventors: 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
-
Publication number: 20220138140Abstract: 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.Type: ApplicationFiled: October 30, 2020Publication date: May 5, 2022Applicant: Xilinx, Inc.Inventors: 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
-
Patent number: 11163605Abstract: 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.Type: GrantFiled: September 16, 2019Date of Patent: November 2, 2021Assignee: XILINX, INC.Inventors: Sonal Santan, Min Ma, Soren Soe, Cheng Zhen, Lizhi Hou, Yu Liu
-
Patent number: 11086815Abstract: Supporting multiple clients on a single programmable integrated circuit (IC) can include implementing a first image within the programmable IC in response to a first request for processing to be performed by the programmable IC, wherein the request is from a first process executing in a host data processing system coupled to the programmable IC, receiving, using a processor of the host data processing system, a second request for processing to be performed on the programmable IC from a second and different process executing in the host data processing system while the programmable IC still implements the first image, comparing, using the processor, a second image specified by the second request to the first image, and, in response to determining that the second image matches the first image based on the comparing, granting, using the processor, the second request for processing to be performed by the programmable IC.Type: GrantFiled: April 15, 2019Date of Patent: August 10, 2021Assignee: Xilinx, Inc.Inventors: Sonal Santan, Soren T. Soe, Cheng Zhen