# US 12,117,958 B2 · Computing device with safe and secure coupling between virtual machines and peripheral component interconnect express device

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,117,958 B2
- Document ID: US12117958B2
- Status: Granted
- Kind: B2
- Application number: 17/319,307
- Filed: 2021-05-13
- Published: 2021-11-18
- Granted: 2024-10-15
- Earliest claimed: 2020-05-13
- Assignees: Elektrobit Automotive GmbH
- Applicants: Elektrobit Automotive GmbH
- Inventors: Helmut Gepp; Bekim Chilku; Georg Gaderer; Michael Ziehensack
- Web page: https://patentgrep.com/patent/US12117958B2

## CPC

- G06F 13/4282: {on a serial bus, e.g. I2C bus, SPI bus (on daisy chain buses G06F13/4247)}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 12/10: Address translation
- G06F 13/28: using burst mode transfer, e.g. direct memory access {DMA}, cycle steal (G06F13/32 takes precedence)
- G06F 13/4022: {using switching circuits, e.g. switching matrix, connection or expansion network (G06F13/4009 takes precedence)}
- H04L 63/0227: {Filtering policies (mail message filtering H04L51/212)}
- G06F 2009/45579: {I/O management, e.g. providing access to device drivers or storage}
- G06F 2009/45587: {Isolation or security of virtual machine instances}
- G06F 2009/45595: {Network integration; Enabling network access in virtual machine instances}
- G06F 2212/152: Virtualized environment, e.g. logically partitioned system
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

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.

## Claims

### Claim 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.

### Claim 2 (depends on 1)

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).

### Claim 3 (depends on 1)

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).

### Claim 4 (depends on 1)

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).

### Claim 5 (depends on 1)

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.

### Claim 6 (depends on 1)

The computing device (CD) according to claim 1, wherein the virtual switch (VS) is configured to enforce further network separation.

### Claim 7 (depends on 1)

The computing device (CD) according to claim 1, wherein the virtual switch (VS) is configured to block traffic per virtual machine from unauthorized sources.

### Claim 8 (depends on 1)

The computing device (CD) according to claim 1, wherein the virtual switch (VS) is configured to mirror traffic per virtual machine.

### Claim 9 (depends on 1)

The computing device (CD) according to claim 1, wherein the virtual switch (VS) is configured to generate traffic statistics per virtual machine.

### Claim 10 (depends on 1)

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.

### Claim 11 (depends on 1)

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.

### Claim 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.

### Claim 13 (depends on 12)

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).

### Claim 14 (depends on 12)

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).

### Claim 15 (depends on 12)

The vehicle according to claim 12, wherein the virtual switch (VS) is configured to block traffic per virtual machine from unauthorized sources.

### Claim 16 (depends on 12)

The vehicle according to claim 12, wherein the virtual switch (VS) is configured to block traffic per virtual machine from unauthorized sources.

### Claim 17 (depends on 12)

The vehicle according to claim 12, wherein the virtual switch (VS) is configured to mirror traffic per virtual machine.

### Claim 18 (depends on 12)

The vehicle according to claim 12, wherein the virtual switch (VS) is configured to generate traffic statistics per virtual machine.

### Claim 19 (depends on 12)

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.
