Network functions virtualization platforms with function chaining capabilities
US-2016321094-A1 · Nov 3, 2016 · US
US12169729B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12169729-B2 |
| Application number | US-202117453341-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 2, 2021 |
| Priority date | Jun 30, 2017 |
| Publication date | Dec 17, 2024 |
| Grant date | Dec 17, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
A technique for varying firmware for different virtual functions in a virtualized device is provided. The virtualized device includes a hardware accelerator and a microcontroller that executes firmware. The virtualized device is virtualized in that the virtualized device performs work for different virtual functions (with different virtual functions associated with different virtual machines), each function getting a “time-slice” during which work is performed for that function. To vary the firmware, each time the virtualized device switches from performing work for a current virtual function to work for a subsequent virtual function, one or more microcontrollers of the virtualized device examines memory storing addresses for firmware for the subsequent virtual function and begins executing the firmware for that subsequent virtual function. The addresses for the firmware are provided by a corresponding virtual machine at configuration time.
Opening claim text (preview).
What is claimed is: 1. A method, comprising: executing a first firmware on a hardware accelerator for a first virtual function; and in response to a virtualization context switch from the first virtual function to a second virtual function, terminating execution of the first firmware and executing a second firmware for the second virtual function on the hardware accelerator, wherein the first firmware is designated as firmware for the first virtual function and not the second virtual function, the second firmware is designated as firmware for the second virtual function and not the first virtual function, and the first firmware is different than the second firmware. 2. The method of claim 1 , wherein the first firmware is associated with a first virtual machine and the second firmware is associated with a second virtual machine. 3. The method of claim 1 , wherein the first firmware includes instructions for the hardware accelerator to process data. 4. The method of claim 3 , wherein the second firmware includes instructions for the hardware accelerator to process data. 5. The method of claim 1 , wherein the hardware accelerator comprises a video encoder. 6. A virtualized processing device comprising: a hardware accelerator; and a virtualization scheduler configured to: cause a first firmware to execute on the hardware accelerator for a first virtual function; and in response to a virtualization context switch from the first virtual function to a second virtual function, cause the firmware to terminate execution and cause the hardware accelerator to execute a second firmware for the second virtual function, wherein the first firmware is designated as firmware for the first virtual function and not the second virtual function, the second firmware is designated as firmware for the second virtual function and not the first virtual function, and the first firmware is different than the second firmware. 7. The virtualized processing device of claim 6 , wherein the first firmware is associated with a first virtual machine and the second firmware is associated with a second virtual machine. 8. The virtualized processing device of claim 6 , wherein the first firmware includes instructions for the hardware accelerator to process data. 9. The virtualized processing device of claim 8 , wherein the second firmware includes instructions for the hardware accelerator to process data. 10. The virtualized processing device of claim 6 , wherein the hardware accelerator comprises a video encoder. 11. A computing device comprising: a first processor; and a virtualized processing device configured to perform work at a request of the first processor, the virtualized processing device comprising: a hardware accelerator; and a virtualization scheduler configured to: cause a first firmware to execute on the hardware accelerator for a first virtual function; and in response to a virtualization context switch from the first virtual function to a second virtual function, cause the first firmware to terminate execution and cause the hardware accelerator to execute a second firmware for the second virtual function, wherein the first firmware is designated as firmware for the first virtual function and not the second virtual function, the second firmware is designated as firmware for the second virtual function and not the first virtual function, and the first firmware is different than the second firmware. 12. The computing device of claim 11 , wherein the first firmware is associated with a first virtual machine and the second firmware is associated with a second virtual machine. 13. The computing device of claim 11 , wherein the first firmware includes instructions for the hardware accelerator to process data. 14. The computing device of claim 13 , wherein the second firmware includes instructions for the hardware accelerator to process data. 15. The computing device of claim 11 , wherein the hardware accelerator comprises a video encoder.
Starting, stopping, suspending or resuming virtual machine instances · CPC title
Distribution of virtual machine instances; Migration and load balancing · CPC title
Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues · CPC title
Microinstruction function, e.g. input/output microinstruction; diagnostic microinstruction; microinstruction format · CPC title
Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.