Multi-host peripheral component interconnect express (PCIe) switching based on interrupt vector from PCIe device
US-10503687-B2 · Dec 10, 2019 · US
US12117958B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-12117958-B2 |
| Application number | US-202117319307-A |
| Country | US |
| Kind code | B2 |
| Filing date | May 13, 2021 |
| Priority date | May 13, 2020 |
| Publication date | Oct 15, 2024 |
| Grant date | Oct 15, 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.
The present invention is related to a computing device (CD), in particular for automotive applications, with a safe and secure coupling between virtual machines (VMi) and a peripheral component interconnect express device (PCIe-D). The invention is further related to a vehicle comprising such a computing device (CD). The computing device (CD) comprises one or more virtual machines (VMi) and a virtual switch (VS). The virtual switch (VS) is configured to provide a safe and secure coupling between the one or more virtual machines (VMi) and at least one peripheral component interconnect express device (PCIe-D) configured to support single-root input/output virtualization, to which the computing device (CD) is connected.
Opening claim text (preview).
The invention claimed is: 1. An automotive computing device (CD), wherein the automotive computing device is at least one of an automotive high-performance computer of a vehicle and an automotive zone controller of a vehicle, the automotive computing device comprising: a plurality of virtual machines (VMi); and a virtual switch (VS); characterized in that the virtual switch (VS) is an extension of a virtual machine manager (VMM) and is a single software component that is configured to provide a safe and secure coupling between the plurality of virtual machines (VMi) and at least one peripheral component interconnect express device (PCIe-D) configured to support single-root input/output virtualization, to which the computing device (CD) is connected, wherein the virtual switch (VS) exclusively controls access to the peripheral component interconnect express device (PCIe-D), wherein the virtual switch (VS) is configured to provide an isolation, with respect to time, of bus requests of the plurality of virtual machines (VMi), wherein the virtual switch is configured to provide address translation between a corresponding plurality of virtual address spaces of the plurality of virtual machines and a plurality of respective physical addresses used for direct memory access transactions thereby eliminating a need for an input-output memory management unit, wherein the virtual switch (VS) is configured to provide a spatial isolation of the communication of the plurality of virtual machines (VMi) related to communication thereby ensuring that data to be received and data to be transmitted by any of the plurality of virtual machines is write protected and read protected with respect to any other of the plurality of virtual machines, and wherein the virtual switch uses a polling mode to eliminate an overhead associated with interrupt remapping. 2. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to provide a temporal isolation of communication of the plurality of virtual machines (VMi) related to virtual functions (VFi). 3. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to program the peripheral component interconnect express device (PCIe-D) to directly access a related memory of the plurality of virtual machines (VMi) for data transmission and reception between the plurality of virtual machines (VMi) and a network as well as between the plurality of virtual machines (VMi). 4. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to provide a generic control path to the plurality of virtual machines (VMi). 5. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to scan outgoing and incoming traffic and to trigger actions. 6. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to enforce further network separation. 7. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to block traffic per virtual machine from unauthorized sources. 8. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to mirror traffic per virtual machine. 9. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to generate traffic statistics per virtual machine. 10. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to provide a common time base to the plurality of virtual machines (VMi) in accordance with IEEE 802.1AS. 11. The computing device (CD) according to claim 1 , wherein the virtual switch (VS) is configured to block traffic from sources that exceed a bandwidth limit. 12. A vehicle, characterized in that the vehicle comprises an automotive computing device (CD) that is at least one of an automotive high-performance computer of the vehicle and an automotive zone controller of the vehicle, the vehicle comprising: a plurality of virtual machines (VMi); and a virtual switch (VS); characterized in that the virtual switch (VS) is an extension of a virtual machine manager (VMM) and is a single software component that is configured to provide a safe and secure coupling between the plurality of virtual machines (VMi) and at least one peripheral component interconnect express device (PCIe-D) configured to support single-root input/output virtualization, to which the computing device (CD) is connected, wherein the virtual switch (VS) exclusively controls access to the peripheral component interconnect express device (PCIe-D), wherein the virtual switch (VS) is configured to provide an isolation, with respect to time, of bus requests of the plurality of virtual machines (VMi)), wherein the virtual switch is configured to provide address translation between a corresponding plurality of virtual address spaces of the plurality of virtual machines and a plurality of respective physical addresses used for direct memory access transactions thereby eliminating a need for an input-output memory management unit, wherein the virtual switch (VS) is configured to provide a spatial isolation of the communication of the plurality of virtual machines (VMi) related to communication thereby ensuring that data to be received and data to be transmitted by any of the plurality of virtual machines is write protected and read protected with respect to any other of the plurality of virtual machines, and wherein the virtual switch uses a polling mode to eliminate an overhead associated with interrupt remapping. 13. The vehicle according to claim 12 , wherein the virtual switch (VS) is configured to provide a temporal isolation of communication of the plurality of virtual machines (VMi) related to virtual functions (VFi). 14. The vehicle according to claim 12 , wherein the virtual switch (VS) is configured to program the peripheral component interconnect express device (PCIe-D) to directly access a related memory of the plurality of virtual machines (VMi) for data transmission and reception between the plurality of virtual machines (VMi) and a network as well as between the plurality of virtual machines (VMi). 15. The vehicle according to claim 12 , wherein the virtual switch (VS) is configured to block traffic per virtual machine from unauthorized sources. 16. The vehicle according to claim 12 , wherein the virtual switch (VS) is configured to block traffic per virtual machine from unauthorized sources. 17. The vehicle according to claim 12 , wherein the virtual switch (VS) is configured to mirror traffic per virtual machine. 18. The vehicle according to claim 12 , wherein the virtual switch (VS) is configured to generate traffic statistics per virtual machine. 19. The vehicle according to claim 12 , wherein the virtual switch (VS) is configured to provide a common time base to the plurality of virtual machines (VMi) in accordance with IEEE 802.1AS.
Filtering policies (mail message filtering H04L51/212) · CPC title
Virtualized environment, e.g. logically partitioned system · CPC title
I/O management, e.g. providing access to device drivers or storage · CPC title
using switching circuits, e.g. switching matrix, connection or expansion network (G06F13/4009 takes precedence) · CPC title
using burst mode transfer, e.g. direct memory access {DMA}, cycle steal (G06F13/32 takes precedence) · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.