DE102018010323A1 - Data communication method between the virtual machines of a vehicle electronics unit and their network interface to a local vehicle network of a vehicle - Google Patents
Data communication method between the virtual machines of a vehicle electronics unit and their network interface to a local vehicle network of a vehicle Download PDFInfo
- Publication number
- DE102018010323A1 DE102018010323A1 DE102018010323.5A DE102018010323A DE102018010323A1 DE 102018010323 A1 DE102018010323 A1 DE 102018010323A1 DE 102018010323 A DE102018010323 A DE 102018010323A DE 102018010323 A1 DE102018010323 A1 DE 102018010323A1
- Authority
- DE
- Germany
- Prior art keywords
- data
- memory
- network interface
- virtual machine
- virtual
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45595—Network integration; Enabling network access in virtual machine instances
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Small-Scale Networks (AREA)
Abstract
Die Erfindung betrifft ein Datenkommunikationsverfahren zwischen den virtuellen Maschinen (P1, P2) und der Netzwerk-Schnittstelle einer Fahrzeugelektronikeinheit (10), die Fahrzeugelektronikeinheit (10) aufweisend:
- die wenigstens zwei virtuellen Maschinen (P1, P2) mit jeweils einer virtuellen Netzwerk-Schnittstelle (5.1, 5.2),
- einen Speicher (3) mit jeweils einer virtuellen Maschine (P1, P2) exklusiv zugeordneten Speicherabschnitten (3.1, 3.2), wobei jeder Speicherabschnitt (3.1, 3.2) direkte Speicherbereiche (3.10, 3.20) für die direkte Kommunikation der virtuellen Maschine (P1, P2) mit deren zugeordneten virtuellen Netzwerk-Schnittstelle (5.1, 5.2) aufweist, und
- die physikalische Netzwerk-Schnittstelle (2.1) zur Herstellung einer Kommunikationsverbindung zwischen jeweils einer virtuellen Netzwerk-Schnittstelle (5.1, 5.2) einer virtuellen Maschine (P1, P2) und einem Fahrzeugnetzwerk (B1).
The invention relates to a data communication method between the virtual machines (P1, P2) and the network interface of a vehicle electronics unit (10), the vehicle electronics unit (10) comprising:
the at least two virtual machines (P1, P2) each having a virtual network interface (5.1, 5.2),
a memory (3) each having a virtual machine (P1, P2) exclusively associated memory sections (3.1, 3.2), each memory section (3.1, 3.2) direct memory areas (3.10, 3.20) for the direct communication of the virtual machine (P1, P2) with its associated virtual network interface (5.1, 5.2), and
- The physical network interface (2.1) for establishing a communication connection between each of a virtual network interface (5.1, 5.2) of a virtual machine (P1, P2) and a vehicle network (B1).
Description
Die Erfindung betrifft eine Fahrzeugelektronikeinheit mit einer physikalischen Netzwerk-Schnittstelle und wenigstens zwei virtuellen Maschinen sowie ein Datenkommunikationsverfahren zwischen den virtuellen Maschinen und der Netzwerk-Schnittstelle zu einem lokalen Fahrzeugnetzwerk eines Fahrzeugs.The invention relates to a vehicle electronics unit having a physical network interface and at least two virtual machines and a data communication method between the virtual machines and the network interface to a local vehicle network of a vehicle.
In modernen Fahrzeugen werden Informationen wie Fahrzeugzustandsinformationen und Unterhaltung (Entertainment) in einem gemeinsamen System aus Bedien- und Anzeigeelementen zugänglich gemacht und als Cockpit- und Infotainmentsystem bezeichnet. Derartige Systeme bieten bspw. Zugriff auf Betriebs- und Fahrzeugdatenanzeigen, Navigation, Servicefunktionen, Mobiltelefon und Internet sowie Audio/Video usw.In modern vehicles, information such as vehicle condition information and entertainment (entertainment) is made available in a common system of control and display elements and referred to as cockpit and infotainment system. Such systems offer, for example, access to operating and vehicle data displays, navigation, service functions, mobile telephone and Internet as well as audio / video, etc.
Um die Applikationen für die unterschiedlichen Komponenten zu realisieren, werden Mehrprozessorsysteme für solche Cockpit und Infotainmentsystem eingesetzt und die entsprechenden Funktionen in einem solchen Mehrprozessorsystem zusammengefasst. Um Nutzdaten und Steuerdaten zwischen den unterschiedlichen Komponenten austauschen zu können, wird das Konzept der Visualisierung mit mehreren Betriebsystemen (OS) durch einen Hypervisor (VMM, virtual machine monitor) realisiert. Mittels solcher Hypervisoren wird eine virtuelle Umgebung mit Hardwareressourcen, wie bspw. Prozessor, Speicher und Peripherie definiert, die unabhängig von der tatsächlich vorhandenen Hardware als Basis für die Installation der Betriebssysteme (auch Gastsysteme genannt) dient. Damit können mehrere Betriebssysteme (auch Partitionen) parallel auf eine gemeinsame Hardware betrieben werden. Der Hypervisor verwaltet hierbei die Ressourcenzuteilung für die einzelnen Partitionen, so dass für jedes Betriebssystem die benötigten Ressourcen verfügbar sind.In order to realize the applications for the different components, multiprocessor systems are used for such cockpit and infotainment system and summarized the corresponding functions in such a multiprocessor system. In order to be able to exchange user data and control data between the different components, the concept of visualization with multiple operating systems (OS) is realized by a hypervisor (VMM, virtual machine monitor). By means of such hypervisors, a virtual environment with hardware resources, such as, for example, processor, memory and peripherals is defined, which serves as the basis for the installation of the operating systems (also called guest systems) independently of the actually existing hardware. Thus, several operating systems (including partitions) can be operated in parallel on a common hardware. The hypervisor manages the resource allocation for each partition so that the required resources are available for each operating system.
Es ist bekannt, dass zur Übertragung von Daten innerhalb einer Hypervisor-Architektur mit einer ersten und zweiten Partition ein Datenübertragungsverfahren verwendet wird, welche zu einer unerwünschten erhöhten CPU-Last führt und nachteilige Eigenschaften hinsichtlich von Sicherheitsaspekten aufweist. Bei diesem Datenübertragungsverfahren werden Ethernet-Datenpakete zwischen einer Partition und einer Netzwerkschnittstelle eines Fahrzeugnetzwerkes übertragen, wobei Daten der zweiten Partition nicht direkt an die Netzwerkschnittstelle übergeben werden, sondern zunächst über ein virtuelles Netzwerk zur ersten Partition und erst anschließend zur Netzwerkschnittstelle übergeben werden.It is known that to transfer data within a hypervisor architecture having a first and second partition, a data transfer method is used which results in an undesirably increased CPU load and has disadvantageous characteristics in terms of security. In this data transmission method, Ethernet data packets are transmitted between a partition and a network interface of a vehicle network, wherein data of the second partition are not transferred directly to the network interface, but are first transferred via a virtual network to the first partition and only then to the network interface.
Aus der
Die
Ein Datenübertragungsverfahren zwischen einer vertrauenswürdigen Domain (trusted Domain) und einer Gast-Domain beschreibt die
Die Aufgabe der Erfindung besteht darin, eine Fahrzeugelektronikeinheit mit wenigstens zwei virtuellen Maschinen anzugeben, mit welcher eine leistungsstarke, sichere und zuverlässige Datenkommunikation innerhalb der Architektur der Fahrzeugelektronikeinheit erzielt wird. Ferner ist es Aufgabe ein entsprechendes Datenkommunikationsverfahren anzugeben.The object of the invention is to provide a vehicle electronics unit with at least two virtual machines, with which a powerful, secure and reliable data communication within the architecture of the vehicle electronics unit is achieved. It is also an object to specify a corresponding data communication method.
Die erstgenannte Aufgabe wird durch eine Fahrzeugelektronikeinheit mit den folgenden Merkmalen gelöst.The former object is achieved by a vehicle electronics unit having the following features.
Eine solche Fahrzeugelektronikeinheit umfasst
- - wenigstens zwei virtuelle Maschinen mit jeweils einer virtuellen Netzwerk-Schnittstelle,
- - einen Speicher mit jeweils einer virtuellen Maschine exklusiv zugeordneten Speicherabschnitten, wobei jeder Speicherabschnitt direkte Speicherbereiche für die direkte Kommunikation der virtuellen Maschine mit deren zugeordneten virtuellen Netzwerk-Schnittstelle aufweist, und
- - eine physikalische Netzwerk-Schnittstelle zur Herstellung einer Kommunikationsverbindung zwischen jeweils einer virtuellen Netzwerk-Schnittstelle einer virtuellen Maschine und einem Fahrzeugnetzwerk.
- at least two virtual machines, each with a virtual network interface,
- a memory with a respective virtual machine exclusively associated memory sections, each memory section having direct memory areas for direct communication of the virtual machine with their associated virtual network interface, and
- - A physical network interface for establishing a communication connection between each virtual network interface of a virtual machine and a vehicle network.
Bei einer solchen Fahrzeugelektronikeinheit wird der gemeinsame Speicher in jeweils einer virtuellen Maschine exklusiv zugeordneten Speicherabschnitte aufgeteilt, wobei jeder Speicherabschnitt direkte Speicherbereiche für die direkte Kommunikation der virtuellen Maschine mit deren zugeordneten virtuellen Netzwerk-Schnittstelle aufweist. Damit ist ein Speicherabschnitt nur von demselben zugeordneten virtuellen Maschine zugreifbar. Die Vorteile einer solchen Fahrzeugelektronik-Architektur bestehen in einer klaren Trennung der zwischen jeweils einer virtuellen Maschine und der physikalischen Netzwerk-Schnittstelle des lokalen Fahrzeugnetzwerkes zu kommunizierenden Datenpaketen und damit können weder negativen Auswirkungen auf die Sicherheit dieser Architektur noch auf die Leistungsfähigkeit und Zuverlässigkeit eintreten.In such a vehicle electronics unit, the common memory is divided into memory sections exclusively allocated to a virtual machine, each memory section having direct memory areas for the direct communication of the virtual machine with its associated virtual network interface. Thus, a memory section is accessible only from the same associated virtual machine. The advantages of such a vehicle electronics architecture consist in a clear separation between each of a virtual machine and the physical Network interface of the local vehicle network to be communicated data packets and thus can not adversely affect the security of this architecture, nor on the performance and reliability.
Vorzugsweise ist die Fahrzeugelektronikeinheit mit einem Hypervisor ausgebildet, welcher zur Trennung der mindestens zwei virtuellen Maschinen ausgebildet ist.Preferably, the vehicle electronics unit is formed with a hypervisor, which is designed to separate the at least two virtual machines.
Nach einer bevorzugten Weiterbildung der Erfindung weist die Fahrzeugelektronikeinheit
- - einen ersten Speicherabschnitt einer ersten virtuellen Maschine auf, wobei dieser Speicherbereich mit
- - einem Signalisierungsbereich zum Signalisieren, ob RX- oder TX-Daten übermittelt werden,
- - einem RX-Puffer zum Speichern von empfangenen Daten, und
- - einem TX-Puffer zum Speichern von zu sendenden Daten ausgebildet ist, und
- - einen zweiten Speicherabschnitt einer zweiten virtuellen Maschine auf, wobei dieser Speicherbereich mit
- - einem Signalisierungsbereich zum Signalisieren, ob RX- oder TX-Daten übermittelt werden,
- - einem RX-Puffer zum Speichern von empfangenen Daten, und
- - einem TX-Puffer zum Speichern von zu sendenden Daten ausgebildet ist.
- a first memory section of a first virtual machine, this memory area having
- a signaling area for signaling whether RX or TX data is being transmitted,
- an RX buffer for storing received data, and
- a TX buffer is designed to store data to be transmitted, and
- - A second memory section of a second virtual machine, said memory area with
- a signaling area for signaling whether RX or TX data is being transmitted,
- an RX buffer for storing received data, and
- - A TX buffer is designed for storing data to be transmitted.
Hiernach sind die beiden Speicherabschnitte jeweils weiter unterteilt in Speicherabschnitte nämlich in jeweils einen Signalisierungsbereich, einen RX-Puffer sowie einen TX-Puffer. In einem solchen Speicherabschnitt ist ein Software-Treiber installiert, bspw. für den IP-Datenverkehr oder für die Bearbeitung von Video- und/oder Grafikdaten.After that, the two memory sections are each subdivided further into memory sections, namely into a respective signaling area, an RX buffer and a TX buffer. In such a memory section, a software driver is installed, for example for the IP traffic or for the processing of video and / or graphics data.
So kann der erste Speicherabschnitt einen Speicherbereich für IP-Steuerdaten, und einen Speicherbereich für Nutzdaten, bspw. Video- und/oder Grafikdaten aufweisen und ebenso der zweite Speicherabschnitt mit einem Speicherbereich für IP-Steuerdaten und einen Speicherbereich für Nutzdaten, bspw. Video- und/oder Grafikdaten ausgebildet werden.Thus, the first memory section can have a memory area for IP control data, and a memory area for user data, for example video and / or graphics data, and likewise the second memory section with a memory area for IP control data and a memory area for user data, for example video and video data / or graphics data are trained.
Weiterbildungsgemäß kann der Signalisierungsbereich dadurch ersetzt werden, dass die Fahrzeugelektronikeinheit zur Durchführung von definierten Interrupts konfiguriert ist.According to training, the signaling area can be replaced by the fact that the vehicle electronics unit is configured to perform defined interrupts.
Nach einer weiteren bevorzugten Ausgestaltung der Erfindung ist wenigstens eine virtuelle Maschine mit einer PCIe-Schnittstelle zum Empfangen von in dem zugeordneten Speicherabschnitt zu speichernden Daten und Senden von Daten aus dem zugeordneten Speicherabschnitt konfiguriert.According to a further preferred embodiment of the invention, at least one virtual machine with a PCIe interface for receiving data to be stored in the associated memory section and transmitting data from the associated memory section is configured.
Eine besonders vorteilhafte Weiterbildung der Erfindung sieht vor, dass die wenigstens zwei virtuellen Maschinen auf wenigstens zwei Prozessoren ausgeführt werden, wobei
- - den beiden Prozessoren jeweils wenigstens ein Speicher zugeordnet sind, und
- - die beiden Speicher jeweils eine PCIe-Schnittstelle zum Empfangen von zu speichernden Daten und zum Senden von Daten über die physikalische Netzwerk-Schnittstelle aufweisen.
- - The two processors are each assigned at least one memory, and
- - The two memories each having a PCIe interface for receiving data to be stored and to send data over the physical network interface.
Die zweitgenannte Aufgabe wird durch ein Verfahren mit den Merkmalen des Patentanspruches 1 und mit den Merkmalen des Patentanspruches 3 gelöst.The second object is achieved by a method having the features of
Nach der erstgenannten Lösung wird das Datenkommunikationsverfahren zwischen den virtuellen Maschinen der erfindungsgemäßen Fahrzeugelektronikeinheit und der Netzwerkschnittstelle zum Empfangen wenigstens einer ein Datenpaket mit einem Header und ein Nachrichtensignalisierungs-Interrupt (MSI = Message Signaled Interrupt) aufweisende Datennachricht entsprechend einem Netzwerkprotokoll mit folgenden Verfahrensschritten durchgeführt:
- - Speichern des Datenpaketes der Datennachricht in einem RX-Puffer,
- - Auswerten des Headers der Datennachricht mittels einer Filter- und Routingeinheit hinsichtlich der das Datenpaket zuzuweisenden Partition, wobei die Header-Information und das Nachrichtensignalisierung-Interrupt über einen PCIe-Treiber einer Speicherdirektzugriffs (DMA)-Funktion und einer MSI-Interrupt-Steuerungsfunktion (MSI-Handler) des Hypervisors zur Verfügung gestellt werden,
- - Kopieren des Datenpaketes mittels der direkten Speicherzugriffs (DMA)-Funktion in den der Header-Information entsprechenden ersten oder zweiten Speicherabschnitt der entsprechenden virtuellen Maschine, und
- - Bereitstellen eines virtuellen Interrupts mittels der MSI-Interrupt-Steuerungsfunktion für die der Header-Information entsprechenden virtuellen Maschine, und
- - Verarbeiten des Datenpaketes durch die der Header-Information entsprechenden virtuellen Maschine.
- Storing the data packet of the data message in an RX buffer,
- Evaluating the header of the data message by means of a filtering and routing unit with respect to the partition to be allocated to the data packet, the header information and the message signaling interrupt being provided via a PCIe driver of a memory direct access (DMA) function and an MSI interrupt control function (MSI Handler) of the hypervisor,
- - Copy the data packet by means of the direct memory access (DMA) function in the header information corresponding first or second memory portion of the corresponding virtual machine, and
- Providing a virtual interrupt by means of the MSI interrupt control function for the virtual machine corresponding to the header information, and
- Processing of the data packet by the virtual machine corresponding to the header information.
Bei diesem erfindungsgemäßen Datenkommunikationsverfahren zum Empfangen einer Datennachricht aus dem Fahrzeugnetzwerk mittels der Netzwerkschnittstelle übernimmt bspw. eine Netzwerkkarte oder ein Netzwerkprozessor die Aufgabe, die von der Netzwerkschnittstelle empfangenen Datenpakete einer Datennachricht in denjenigen Speicherabschnitt der der Header-Information entsprechenden virtuellen Maschine zu schreiben. Hierzu wird das Datenpaket in einen RX-Puffer der Netzwerkschnittstelle geschrieben, der Header der Datennachricht ausgewertet und mittels eines MSI-Interrupts die entsprechende Partition informiert.In this data communication method according to the invention for receiving a data message from the vehicle network by means of Network interface takes over, for example, a network card or a network processor, the task of writing the data packets received from the network interface of a data message in that memory section of the header information corresponding virtual machine. For this purpose, the data packet is written into an RX buffer of the network interface, the header of the data message is evaluated and informed by means of an MSI interrupt the corresponding partition.
Nach einer vorteilhaften Weiterbildung dieses erfindungsgemäßen Datenkommunikationsverfahrens wird das Datenpaket mittels der direkten Speicherzugriffs (DMA)-Funktion in den der Header-Information entsprechenden Speicherabschnitt der ersten oder der zweiten Partition kopiert. In einem Speicherabschnitt einer virtuellen Maschine können unterschiedliche Applikationen implementiert werden, wie bspw. die Verarbeitung von Steuerdaten für den IP-Datenverkehr und die Verarbeitung von Video- und/oder Grafikdaten. Damit können die Datenpakete entsprechend der Header-Informationen jeweils dem richtigen Speicherabschnitt einer virtuellen Maschine zugewiesen werden.According to an advantageous development of this data communication method according to the invention, the data packet is copied by means of the direct memory access (DMA) function into the memory section of the first or the second partition corresponding to the header information. In a memory section of a virtual machine, different applications can be implemented, such as the processing of control data for the IP traffic and the processing of video and / or graphics data. Thus, the data packets according to the header information can each be assigned to the correct memory section of a virtual machine.
Nach der zweitgenannten Lösung wird das Datenkommunikationsverfahren zwischen den virtuellen Maschinen der erfindungsgemäßen Fahrzeugelektronikeinheit und der Netzwerkschnittstelle zum Senden wenigstens einer ein Datenpaket mit einem Header und ein Nachrichtensignalisierungs-Interrupt (MSI = Message Signaled Interrupt) aufweisende Datennachricht entsprechend einem Netzwerkprotokoll mit folgenden Verfahrensschritten durchgeführt:
- - Erzeugen des an die Netzwerkschnittstelle weiterzuleitenden Datenpaketes durch eine virtuelle Maschine und Speichern des Datenpaketes in dem zugehörigen Speicherabschnitt,
- - Erzeugen einer die Bereitstellung des weiterzuleitenden Datenpaketes anzeigende Nachricht für einen PCIe-Treiber,
- - Kopieren des Datenpaketes in einen TX-Puffer mittels der durch den PCIe-Treiber ausgeführten Speicherdirektzugriffs (DMA)-Funktion,
- - Ergänzen des Datenpaketes mit einer Header-Information entsprechend der Information des PCIe-Treibers mittels der Netzwerkschnittstelle,
- - Erstellen einer Datennachricht aus dem Datenpaket mit Header entsprechend dem Netzwerkprotokoll mittels der Netzwerkschnittstelle, und
- - Senden der Datennachricht mittels der Netzwerkschnittstelle.
- Generating the data packet to be forwarded to the network interface by a virtual machine and storing the data packet in the associated memory section,
- Generating a message indicating the provision of the data packet to be forwarded for a PCIe driver,
- Copying the data packet into a TX buffer by means of the memory direct access (DMA) function performed by the PCIe driver,
- Supplementing the data packet with header information corresponding to the information of the PCIe driver via the network interface,
- - Creating a data message from the data packet with headers according to the network protocol using the network interface, and
- - Sending the data message via the network interface.
Bei diesem erfindungsgemäßen Datenkommunikationsverfahren zum Übermitteln einer Datennachricht aus einer der virtuellen Maschinen an die Netzwerkschnittstelle des Fahrzeugnetzwerkes übernimmt bspw. ebenso eine Netzwerkkarte oder ein Netzwerkprozessor die Aufgabe, die an die Netzwerk-Schnittstelle weiterzuleitenden Datenpakete aus einem Speicherabschnitt der jeweiligen virtuellen Maschine auszulesen und in einen TX-Puffer der Netzwerkschnittstelle zu kopieren. Mittels der Netzwerkschnittstelle wird das Datenpaket mittels eines Headers zu einer Datennachricht entsprechend des Netzwerkprotokolles ergänzt und in das Fahrzeugnetzwerk gesendet.In this data communication method according to the invention for transmitting a data message from one of the virtual machines to the network interface of the vehicle network, for example, a network card or a network processor also undertakes the task of reading out the data packets to be forwarded to the network interface from a memory section of the respective virtual machine and into a TX To copy the network interface buffer. By means of the network interface, the data packet is supplemented by means of a header to form a data message in accordance with the network protocol and sent to the vehicle network.
Vorzugsweise wird bei diesem Datenkommunikationsverfahren das zu übermittelnde Datenpaket mittels der direkten Speicherzugriffs (DMA)-Funktion in den TX-Puffer kopiert.Preferably, in this data communication method, the data packet to be transmitted is copied to the TX buffer by means of the direct memory access (DMA) function.
Weitere Vorteile, Merkmale und Einzelheiten der Erfindung ergeben sich aus den Ansprüchen, der nachfolgenden Beschreibung bevorzugter Ausführungsformen sowie anhand der Zeichnungen. Dabei zeigen:
-
1 ein Blockschaltbild einer Fahrzeugelektronikeinheit mit einem Hypervisor und zwei virtuellen Maschinen, -
2 ein Blockschaltbild einer weiteren Fahrzeugelektronikeinheit mit einem Hypervisor und zwei virtuellen Maschinen mit jeweils mehreren Speicherabschnitten, -
3 ein detailliertes Blockschaltbild einer Fahrzeugelektronikeinheit gemäß1 , -
4 ein Blockschaltbild zur Darstellung einer Datenkommunikation einer über ein Fahrzeugnetzwerk empfangenen Datennachricht innerhalb der Fahrzeugelektronikeinheit nach2 , und -
5 ein Blockschaltbild zur Darstellung einer Datenkommunikation einer über ein Fahrzeugnetzwerk zu sendenden Datennachricht innerhalb der Fahrzeugelektronikeinheit nach2 .
-
1 a block diagram of a vehicle electronics unit with a hypervisor and two virtual machines, -
2 a block diagram of another vehicle electronics unit with a hypervisor and two virtual machines, each with multiple memory sections, -
3 a detailed block diagram of a vehicle electronics unit according to1 . -
4 a block diagram for representing a data communication received via a vehicle network data message within the vehicle electronics unit according to2 , and -
5 a block diagram for representing a data communication to be sent via a vehicle network data message within the vehicle electronics unit according to2 ,
Die Fahrzeugelektronikeinheit
Nach
Eine Datenkommunikation zwischen jeweils einer virtuellen Maschine
Bei dieser Datenkommunikation werden Datenpakete von Datennachrichten aus dem Fahrzeugnetzwerk
Nach
So dient bspw. der Speicherbereich
For example, the memory area is used
Der Speicherbereich
Der Datenverkehr zwischen den Speicherabschnitten
Bei diesen Hypervisor-Architekturen gemäß den
Die
Mittels der MMX-Steckkarte
Innerhalb dieser Speicherabschnitte
Der Speicherbereich
Der Speicherbereich
Jeder der beiden Speicherabschnitte
Die RSC-Steckkarte
Die Netzwerkschnittstelle
Ein DMA-Ausgang der Filter- und Routingeinheit
Ein weiterer DMA-Ausgang der Filter- und Routingeinheit
Ein weiterer DMA-Ausgang ist mit einem Softwaremodul
Schließlich ist ein weiteres Softwaremodule
Der Rechenknoten
Eine MOST-Schnittstelle
Schließlich ist ein Softwaremodul
Im Folgenden wird der interne Datenverkehr der Fahrzeugelektronikeinheit
Bei dieser Fahrzeugelektronikeinheit
Die Fahrzeugelektronikeinheit
Nach
Das Datenpaket (oder auch mehrere) wird von der Netzwerkschnittstelle
Ein Triggersignal der Filter- und Routingeinheit
Eine MSI-Interrupt-Steuerungsfunktion wird von dem Hypervisor
Datenpakete, die als Datennachricht über die Netzwerkschnittstelle
Gleichzeitig wird von dieser virtuellen Maschine, welche das an die Netzwerkschnittstelle
Ein von dem PCIe-Treiber
In der Fahrzeugelektronikeinheit
Es ist auch möglich die beiden virtuellen Maschinen
Im Folgenden sind weitere Ausführungsbeispiele der Erfindung beschrieben:
Beispiel 1. Eine Fahrzeugelektronikeinheit (10 ) mit- - wenigstens zwei virtuellen Maschinen (
P1 ,P2 ) mit jeweils einer virtuellen Netzwerk-Schnittstelle (5.1 ,5.2 ), - - einem Speicher (
3 ) mit jeweils einer virtuellen Maschine (P1 ,P2 ) exklusiv zugeordneten Speicherabschnitten (3.1 ,3.2 ), wobei jeder Speicherabschnitt (3.1 ,3.2 ) direkte Speicherbereiche (3.10 ,3.20 ) für die direkte Kommunikation der virtuellen Maschine (P1 ,P2 ) mit deren zugeordneten virtuellen Netzwerk-Schnittstelle (5.1 ,5.2 ) aufweist, und - - einer physikalischen Netzwerk-Schnittstelle (
2.1 ) zur Herstellung einer Kommunikationsverbindung zwischen jeweils einer virtuellen Netzwerk-Schnittstelle (5.1 ,5.2 ) einer virtuellen Maschine (P1 ,P2 ) und einem Fahrzeugnetzwerk (B1 ).
- - wenigstens zwei virtuellen Maschinen (
Bespiel 2 . Fahrzeugelektronikeinheit (10 ) nachBeispiel 1 mit einem Hypervisor (1 ), welcher zur Trennung der virtuellen Maschinen (P1 ,P2 ) ausgebildet ist.Bespiel 3 . Fahrzeugelektronikeinheit (10 )nach Bespiel 1 oder 2 , bei welcher- - ein erster Speicherabschnitt (
3.1 ) einer ersten virtuellen Maschine (P1 ) wenigstens einen Speicherbereich (3.10 ) aufweist, wobei dieser Speicherbereich (3.10 ) mit- - einem Signalisierungsbereich (
3.01 ) zum Signalisieren, ob RX- oder TX-Daten übermittelt werden, - - einem RX-Puffer zum Speichern von empfangenen Daten, und
- - einem TX-Puffer zum Speichern von zu sendenden Daten ausgebildet ist, und
- - einem Signalisierungsbereich (
- - ein zweiter Speicherabschnitt (
3.2 ) einer zweiten virtuellen Maschine (P2 ) wenigstens einen Speicherbereich (3.20 ) aufweist, wobei dieser Speicherbereich (3.20 ) mit- - einem Signalisierungsbereich (
3.02 ) zum Signalisieren ob RX-Daten oder.TX-Daten übermittelt werden, - - einem RX-Puffer zum Speichern von empfangenen Daten, und
- - einem Tx-Puffer zum Speichern von zu sendenden Daten ausgebildet ist.
- - einem Signalisierungsbereich (
- - ein erster Speicherabschnitt (
- Bespiel
4 . Fahrzeugelektronikeinheit (10 )nach Bespiel 3 , bei welcher der Signalisierungsbereich dadurch ersetzt ist, dass die Fahrzeugelektronikeinheit (10 ) zur Durchführung von definierten Interrupts konfiguriert ist. - Bespiel
5 . Fahrzeugelektronikeinheit (10 ) nach einem der vorhergehenden Bespiele, bei welcher jeweils ein Speicherabschnitt (3.1 ,3.2 ) einen Speicherbereich (3.10 ,3.20 ) für IP-Steuerdaten und einen Speicherbereich (3.11 ,3.21 ) für Video- und/oder Grafikdaten aufweist. Bespiel 6 . Fahrzeugelektronikeinheit (10 ) nach einem der vorhergehenden Bespiele, bei welcher wenigstens eine virtuelle Maschine (P1 ,P2 ) mit einer PCIe-Schnittstelle (6 ) zum Empfangen von in dem zugeordneten Speicherabschnitt (3.1 ,3.2 ) zu speichernden Daten und Senden von Daten aus dem zugeordneten Speicherabschnitt (3:1 ,3.2 ) konfiguriert ist.Bespiel 7 . Fahrzeugelektronikeinheit (10 ) nach einem der vorhergehenden Bespiele, bei welcher die wenigstens zwei virtuellen Maschinen (P1 ,P2 )- - auf wenigstens zwei Prozessoren ausgeführt werden,
- - den beiden Prozessoren jeweils wenigstens ein Speicher zugeordnet sind, und
- - die beiden Speicher jeweils eine PCIe-Schnittstelle zum Empfangen von zu speichernden Daten und zum Senden von Daten über die physikalische Netzwerk-Schnittstelle (
2.1 ) aufweisen.
- Example 1. A vehicle electronics unit (
10 ) With- at least two virtual machines (
P1 .P2 ) each with a virtual network interface (5.1 .5.2 ) - - a memory (
3 ) each with a virtual machine (P1 .P2 ) exclusively allocated memory sections (3.1 .3.2 ), each memory section (3.1 .3.2 ) direct memory areas (3.10 .3.20 ) for direct communication of the virtual machine (P1 .P2 ) with its associated virtual network interface (5.1 .5.2 ), and - a physical network interface (
2.1 ) for establishing a communication connection between in each case a virtual network interface (5.1 .5.2 ) of a virtual machine (P1 .P2 ) and a vehicle network (B1 ).
- at least two virtual machines (
- recordable
2 , Vehicle electronics unit (10 ) according to example 1 with a hypervisor (1 ), which is used to separate the virtual machines (P1 .P2 ) is trained. - recordable
3 , Vehicle electronics unit (10 ) after example1 or2 , in which- a first memory section (
3.1 ) of a first virtual machine (P1 ) at least one memory area (3.10 ), this memory area (3.10 ) With- a signaling area (
3:01 ) to signal whether RX or TX data is being transmitted, - an RX buffer for storing received data, and
- a TX buffer is designed to store data to be transmitted, and
- a signaling area (
- a second memory section (
3.2 ) a second virtual machine (P2 ) at least one memory area (3.20 ), this memory area (3.20 ) With- a signaling area (
3:02 ) for signaling whether RX data or .TX data are transmitted, - an RX buffer for storing received data, and
- - A Tx buffer for storing data to be sent is formed.
- a signaling area (
- a first memory section (
- recordable
4 , Vehicle electronics unit (10 ) after example3 in which the signaling area is replaced by the fact that the vehicle electronics unit (10 ) is configured to perform defined interrupts. - recordable
5 , Vehicle electronics unit (10 ) according to one of the preceding examples, in which in each case a memory section (3.1 .3.2 ) a memory area (3.10 .3.20 ) for IP control data and a memory area (3.11 .3.21 ) for video and / or graphics data. - recordable
6 , Vehicle electronics unit (10 ) according to one of the preceding examples, in which at least one virtual machine (P1 .P2 ) with a PCIe interface (6 ) for receiving in the associated memory section (3.1 .3.2 ) data to be stored and sending data from the associated memory section (3: 1 .3.2 ) is configured. - recordable
7 , Vehicle electronics unit (10 ) according to one of the preceding examples, in which the at least two virtual machines (P1 .P2 )- be executed on at least two processors,
- - The two processors are each assigned at least one memory, and
- the two memories each have a PCIe interface for receiving data to be stored and for sending data over the physical network interface (
2.1 ) exhibit.
BezugszeichenlisteLIST OF REFERENCE NUMBERS
- 11
- Hypervisorhypervisor
- 1.11.1
- MSI-Handler MSI handler
- 22
- Netzwerkkartenetwork card
- 2.12.1
- NetzwerkschnittstelleNetwork Interface
- 2.22.2
-
RX-Puffer der Netzwerkkarte 2Network
card RX buffer 2 - 2.202.20
-
TX-Puffer der Netzwerkkarte
2 TX buffer of thenetwork card 2 - 2.32.3
- Filter- und RoutingeinheitFilter and routing unit
- 2.302.30
-
DMA-Ausgänge der Filter-und Routingeinheit
2 .3DMA outputs of the filter androuting unit 2 .3 - 2.42.4
- PCIe-TreiberPCIe driver
- 2.5 2.5
- Ethernet-Treiber Ethernet driver
- 33
- gemeinsamer Speichershared memory
- 3.03.0
- Signalisierungsbereichsignaling area
- 3.013:01
- Signalisierungsbereichsignaling area
- 3.023:02
- Signalisierungsbereichsignaling area
- 3.0x3.0x
- die Finanzierungsbereichthe funding area
- 3.13.1
- erste Speicherabschnitt der ersten virtuellen Maschine P1first storage section of the first virtual machine P1
- 3.103.10
-
Speicherbereich des ersten Speicherabschnittes
3 .1Memory area of thefirst memory section 3 .1 - 3.1003100
- Protokoll-StackProtocol stack
- 3.113.11
-
Speicherbereich des ersten Speicherabschnittes
3.1 Memory area of the first memory section3.1 - 3.1103110
- Protokoll-StackProtocol stack
- 3.23.2
- zweiter Speicherabschnitt der zweiten virtuellen Maschine P2second storage section of the second virtual machine P2
- 3.203.20
-
Speicherbereich des zweiten Speicherabschnittes
3 .2Memory area of thesecond memory section 3 .2 - 3.2003200
- Protokoll-StackProtocol stack
- 3.213.21
-
Speicherbereich des zweiten Speicherabschnittes
3 .2Memory area of thesecond memory section 3 .2 - 3.2103210
- Protokoll-StackProtocol stack
- 3.223.22
-
Speicherbereich des zweiten Speicherabschnittes
3 .2Memory area of thesecond memory section 3 .2 - 3.2203220
- Protokoll-StackProtocol stack
- 3.x3.x
- Speicherabschnitt der virtuellen Maschine Px Memory section of the virtual machine Px
- 4.04.0
- Mikroprozessormicroprocessor
- 4.14.1
- Mikroprozessormicroprocessor
- 4.104.10
- Softwaremodulsoftware module
- 4.114.11
- MPEG-TS-TreiberMPEG-TS driver
- 4.24.2
- Mikroprozessormicroprocessor
- 4.204.20
- Softwaremodulesoftware modules
- 4.34.3
- Mikroprozessormicroprocessor
- 4.304.30
- Softwaremodulesoftware modules
- 4.314.31
- Protokoll-StackProtocol stack
- 4.324:32
- Ausgänge des Protokoll-Stacks 4.31Outputs of the protocol stack 4.31
- 4.334:33
- Softwaremodulesoftware modules
- 4.344:34
- Softwaremodulsoftware module
- 4.44.4
- MOST-Schnittstelle MOST interface
- 55
- virtuelles Netzwerkvirtual network
- 5.15.1
-
virtuelle Netzwerk-Schnittstelle(n) des virtuellen Netzwerks
5 virtual network interface (s) of the virtual network5 - 5.25.2
- virtuelle Netzwerk-Schnittstelle(n) des virtuellen Netzwerks 5 virtual network interface (s) of the virtual network 5
- 66
- PCIe-Treiber PCIe driver
- 77
- PCIe-Schnittstelle PCIe interface
- 1010
- FahrzeugelektronikeinheitAutomotive electronics unit
- 10.110.1
- MMX-SteckkarteMMX plug-in card
- 10.210.2
- RSC-SteckkarteRSC plug-in card
- 10.2010:20
- Rechenknotencompute nodes
- 10.2110:21
- Rechenknoten compute nodes
- 1111
- Gatewaygateway
- 11.111.1
- Gateway/Ethernet-Switch Gateway / Ethernet switch
- B1B1
- FahrzeugnetzwerkVehicle network
- B2B2
- Fahrzeugnetzwerk Vehicle network
- P1P1
- erste virtuelle Maschinefirst virtual machine
- P2P2
- zweite zweite virtuellen Maschine second second virtual machine
- Pxpx
- virtuelle Maschinevirtual machine
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- US 2009/0307436 A1 [0005]US 2009/0307436 A1 [0005]
- US 2012/0084517 A1 [0006]US 2012/0084517 A1 [0006]
- US 2014/0330868 A1 [0007]US 2014/0330868 A1 [0007]
Claims (10)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018010323.5A DE102018010323A1 (en) | 2018-01-15 | 2018-01-15 | Data communication method between the virtual machines of a vehicle electronics unit and their network interface to a local vehicle network of a vehicle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102018010323.5A DE102018010323A1 (en) | 2018-01-15 | 2018-01-15 | Data communication method between the virtual machines of a vehicle electronics unit and their network interface to a local vehicle network of a vehicle |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102018010323A1 true DE102018010323A1 (en) | 2019-11-07 |
Family
ID=68276171
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102018010323.5A Pending DE102018010323A1 (en) | 2018-01-15 | 2018-01-15 | Data communication method between the virtual machines of a vehicle electronics unit and their network interface to a local vehicle network of a vehicle |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE102018010323A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11652827B2 (en) * | 2018-06-08 | 2023-05-16 | Nvidia Corporation | Virtualized intrusion detection and prevention in autonomous vehicles |
-
2018
- 2018-01-15 DE DE102018010323.5A patent/DE102018010323A1/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11652827B2 (en) * | 2018-06-08 | 2023-05-16 | Nvidia Corporation | Virtualized intrusion detection and prevention in autonomous vehicles |
US12101338B2 (en) | 2018-06-08 | 2024-09-24 | Nvidia Corporation | Protecting vehicle buses from cyber-attacks |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2030116B1 (en) | Communication component | |
DE102009061252B3 (en) | Apparatus, method and system for processing a transaction on a PCI bus using a root complex | |
DE112016005477T5 (en) | SYSTEM FOR THE PARALLEL BUFFER AND PREPARATION OF DATA FLOWS BASED ON A CONTEXT AT SEVERAL LEVELS IN VEHICLE DOMAINS | |
DE69613056T2 (en) | Interface device between a computer of redundant architecture and a means of communication | |
DE102020101576A1 (en) | SYSTEMS AND METHODS FOR DATA PROCESSING AND STORAGE IN VEHICLES WITH A ZONE-BASED, CENTRAL, COMPUTER-BASED VEHICLE COMMUNICATION NETWORK ARCHITECTURE | |
DE102015216190A1 (en) | Method and system for providing optimized Ethernet communication for a vehicle | |
DE102015214915B4 (en) | Flexible scheduling method and scheduling device in LIN communication | |
DE102017129751A1 (en) | Vehicle network system | |
DE112019002392T5 (en) | VEHICLE CONTROL UNIT, METHOD FOR MANAGING INTERRUPT INFORMATION AND PROGRAM FOR MANAGING INTERRUPT INFORMATION | |
EP0050305A1 (en) | Unit to control the access of processors to a data bus | |
DE102020106264A1 (en) | MULTIPLE CONTROL UNIT FOR A VEHICLE | |
EP3655876B1 (en) | Single-chip system, method for operating a single-chip system, and motor vehicle | |
DE102015108005A1 (en) | Mechanisms and devices for newly configurable interprocessor communications with embedded controller | |
DE102017119065A1 (en) | Update a memory | |
DE102018010323A1 (en) | Data communication method between the virtual machines of a vehicle electronics unit and their network interface to a local vehicle network of a vehicle | |
DE102018200555B4 (en) | Vehicle electronics unit with a physical network interface and a plurality of virtual network interfaces having virtual machines and data communication methods between the virtual machines and the network interface to a local vehicle network of a vehicle | |
DE102019210552B4 (en) | Vehicle electronics unit with a physical network interface and a plurality of virtual machines having virtual network interfaces, as well as data communication methods | |
WO2016162144A1 (en) | Management of interfaces in a distributed system | |
DE10005878B4 (en) | navigation device | |
DE102017220472A1 (en) | Method and device for data-oriented information exchange with a vehicle network | |
DE102016206109A1 (en) | Memory direct access control device for at least one memory unit having a memory | |
DE112022005200T5 (en) | System and method for flexible switching of data packets of different protocols | |
DE102019126897B4 (en) | DATA PROCESSING DEVICE AND METHOD FOR PROCESSING AN INTERRUPT | |
DE102018123563B4 (en) | Method for inter-core communication in a multi-core processor | |
DE69400008T2 (en) | Method and system for determining the composition of an integrated circuit. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R129 | Divisional application from |
Ref document number: 102018200555 Country of ref document: DE |
|
R012 | Request for examination validly filed | ||
R129 | Divisional application from |
Ref document number: 102018200555 Country of ref document: DE |