Search

DE-102019111564-B4 - System zum Konfigurieren von Filterobjekten für eine Controller-Area-Network-Steuerung

DE102019111564B4DE 102019111564 B4DE102019111564 B4DE 102019111564B4DE-102019111564-B4

Abstract

System (800), umfassend: einen elektronischen Prozessor (802), der konfiguriert ist zum: Bestimmen (710) einer Vielzahl von Nachrichtenidentifikatoren (410, 610) von Nachrichten, die von einem Filterobjekt (140) erfasst werden sollen; Durchführen (720) der Faktorisierung einer Funktion (630), welche die Vielzahl von Nachrichtenidentifikatoren (410, 610) repräsentiert, um eine vereinfachte Funktion (640) zu erzeugen; und Konfigurieren (730) mindestens eines Filterobjekts (140) basierend auf der erzeugten vereinfachten Funktion (640); wobei der elektronische Prozessor (802) ferner konfiguriert ist, um mindestens einen Nachrichtenidentifikator (510, 520, 530) zu der Vielzahl von Nachrichtenidentifikatoren (410, 610) hinzuzufügen, wobei der hinzugefügte mindestens eine Nachrichtenidentifikator (510, 520, 530) keiner Nachricht entspricht, die auf einen Netzwerkbus übertragen wird, und das Hinzufügen des mindestens einen Nachrichtenidentifikators (510, 520, 530) zu einer vereinfachten Funktion (640) führt, die einfacher ist als eine vereinfachte Funktion (640), die ohne den hinzugefügten mindestens einen Nachrichtenidentifikator (510, 520, 530) erzeugt wird; wobei die Nachrichten, die durch das Filterobjekt (140) erfasst werden sollen, Nachrichten entsprechen, die von einer Steuerung (130) eines Controller-Area-Networks über einen Netzwerkbus (130) empfangen und verarbeitet werden sollen.

Inventors

  • Paolo Giusto
  • Grant A. Soremekun
  • Michael A. Turley
  • Ramesh S

Assignees

  • GM GLOBAL TECHNOLOGY OPERATIONS, LLC

Dates

Publication Date
20260507
Application Date
20190503
Priority Date
20180514

Claims (8)

  1. System (800), umfassend: einen elektronischen Prozessor (802), der konfiguriert ist zum: Bestimmen (710) einer Vielzahl von Nachrichtenidentifikatoren (410, 610) von Nachrichten, die von einem Filterobjekt (140) erfasst werden sollen; Durchführen (720) der Faktorisierung einer Funktion (630), welche die Vielzahl von Nachrichtenidentifikatoren (410, 610) repräsentiert, um eine vereinfachte Funktion (640) zu erzeugen; und Konfigurieren (730) mindestens eines Filterobjekts (140) basierend auf der erzeugten vereinfachten Funktion (640); wobei der elektronische Prozessor (802) ferner konfiguriert ist, um mindestens einen Nachrichtenidentifikator (510, 520, 530) zu der Vielzahl von Nachrichtenidentifikatoren (410, 610) hinzuzufügen, wobei der hinzugefügte mindestens eine Nachrichtenidentifikator (510, 520, 530) keiner Nachricht entspricht, die auf einen Netzwerkbus übertragen wird, und das Hinzufügen des mindestens einen Nachrichtenidentifikators (510, 520, 530) zu einer vereinfachten Funktion (640) führt, die einfacher ist als eine vereinfachte Funktion (640), die ohne den hinzugefügten mindestens einen Nachrichtenidentifikator (510, 520, 530) erzeugt wird; wobei die Nachrichten, die durch das Filterobjekt (140) erfasst werden sollen, Nachrichten entsprechen, die von einer Steuerung (130) eines Controller-Area-Networks über einen Netzwerkbus (130) empfangen und verarbeitet werden sollen.
  2. System (800) nach Anspruch 1 , wobei der hinzugefügte mindestens eine Nachrichtenidentifikator (510, 520, 530) keiner Nachricht entspricht, die auf dem Netzwerkbus (130) des Controller Area Networks übertragen wird.
  3. System (800) nach Anspruch 1 , wobei das Durchführen der Faktorisierung der Funktion (630) das Durchführen einer Booleschen Faktorisierung der Funktion (630) umfasst.
  4. System (800) nach Anspruch 3 , wobei das Durchführen der Booleschen Faktorisierung das Vereinfachen der Funktion (630) umfasst, um einen minimalen Satz von Booleschen Produkten zu erhalten.
  5. System (800) nach Anspruch 1 , wobei sich jeder Nachrichtenidentifikator (510, 520, 530), der zu der Vielzahl von Nachrichtenidentifikatoren (410, 610) hinzugefügt wird, von einem anderen Nachrichtenidentifikator (410, 610) der Vielzahl von Nachrichtenidentifikatoren (410, 610) durch ein einzelnes Bit unterscheidet.
  6. System (800) nach Anspruch 1 , wobei das Konfigurieren des mindestens einen Filterobjekts (140) das Konfigurieren eines Satzes von Identifikator-Bits (310) und eines Satzes von Maskierungsbits (320) umfasst.
  7. System (800) nach Anspruch 1 , wobei die Steuerung (130) einer Steuerung (130) einer Vielzahl von Steuerungen (110, 120, 130) des Controller Area Networks entspricht.
  8. System (800) nach Anspruch 1 , wobei das Hinzufügen des mindestens einen Nachrichtenidentifikators (510, 520, 530) das Hinzufügen verschiedener Kombinationen von Nachrichtenidentifikatoren (510, 520, 530) umfasst, um zu bestimmen, welche Kombination zu einer einfachsten vereinfachten Funktion (640) führt.

Description

Technisches Gebiet Die betreffenden Ausführungsformen beziehen sich auf die Konfiguration von Filterobjekten für eine Controller Area Network (CAN) Steuerung. Insbesondere können sich eine oder mehrere Ausführungsformen auf die Konfiguration eines Filterobjekts beziehen, das Nachrichten filtert, die auf einem Netzwerkbus des Controller Area Network empfangen werden. Eine oder mehrere Ausführungsformen können die Nachrichten des Netzwerkbusses filtern, um eine oder mehrere Nachrichten zu bestimmen, die beispielsweise für eine oder mehrere Steuerungen relevant sind. Einleitung Eine CAN-Steuerung ist eine Software- und/oder Hardwareschnittstelle für eine Fahrzeugsteuerung, die über das Controller Area Network (CAN)-Protokoll kommuniziert. Das CAN-Protokoll ist ein Kommunikationsstandard, der die Kommunikation zwischen Steuerungen in einem Netzwerk ermöglicht. Das Protokoll kann in einer Vielzahl von Anwendungen verwendet werden, einschließlich, aber nicht beschränkt auf, Anwendungen in Bezug auf Automobile, Fabrikautomatisierung, Industrie- und Geschäftsgebäude, usw. Da Nachrichten über einen seriellen Bus übertragen werden und jede Steuerung die Nachrichten empfängt, verwendet jede Steuerung ein oder mehrere Filterobjekte, um zu bestimmen, welche der empfangenen Nachrichten für die Steuerung relevant sind. Wie im Folgenden näher beschrieben, weist jede empfangene Nachricht eine entsprechende Nachrichtenkennung auf, und das Bestimmen, ob eine empfangene Nachricht für eine bestimmte Steuerung relevant ist, erfolgt durch Vergleichen der empfangenen Nachrichtenkennung mit einer Liste von Identifikatoren für Nachrichten, die die jeweilige Steuerung verarbeiten muss. Wenn ein Filterobjekt in der CAN-Steuerung bestimmt, dass eine Nachricht für die Steuerung relevant ist, wird die entsprechende Nachricht der Steuerung zur weiteren Verarbeitung zur Verfügung gestellt. Die US 2008 / 0 263 093 A1 beschreibt ein Verfahren, ein System und ein Computerprogrammprodukt zum Erreichen eines Gleichgewichts zwischen VorfilterEffizienz und Vorfilter-Durchsatz. Für einen bestimmten Ereignisverbraucher werden Ereignisabonnements abgerufen. Die Ereignisabonnements definieren die Ereignisse, die an diesen Ereignisverbraucher weitergeleitet werden sollen. Auf der Grundlage dieser Ereignisabonnements werden Vorfilter unterschiedlicher Komplexität und Filterleistung erstellt. Ein Gleichgewicht zwischen Vorfiltereffizienz und Vorfilterdurchsatz kann erreicht werden, indem aus diesen erstellten Vorfiltern der beste Vorfilter ausgewählt wird, um Ereignisse an den zugehörigen Ereignisverbraucher zu filtern. Der beste Vorfilter wird ausgewählt, indem ein Komplexitätsschwellenwert (z. B. eine Grenze für die Anzahl der atomaren Booleschen Ausdrücke in einem Vorfilter) mit der tatsächlichen Komplexität (z. B. der tatsächlichen Anzahl der atomaren Booleschen Ausdrücke) für jeden erstellten Vorfilter verglichen und der komplexeste Vorfilter ausgewählt wird, ohne den Schwellenwert zu überschreiten. Die US 6 732 254 B1 beschreibt ein CAN-Gerät, das eine Vielzahl n (wobei n >= 3) von Nachrichtenobjekten unterstützt, einschließlich einer Vielzahl von Registern, die jedem Nachrichtenobjekt zugeordnet sind, einschließlich mindestens eines Objekt-Match-ID-Registers, das ein Mehrbit-Objekt-Match-ID-Feld enthält, und mindestens eines Objekt-Masken-Registers, das ein Mehrbit-Objekt-Masken-Feld enthält; und ein CAN/CAL-Modul, das eingehende Nachrichten verarbeitet. Das CAN/CAL-Modul setzt aus ausgewählten Bits jeder eingehenden Nachricht, die akzeptiert werden soll, eine Multi-Bit-Screener-ID zusammen, vergleicht die Bits, aus denen die Screener-ID besteht, mit den entsprechenden Bits des Objektübereinstimmungs-ID-Feldes, das jedem der mindestens bezeichneten der Vielzahl n von Nachrichtenobjekten zugeordnet ist, wobei alle Bits jedes Objektübereinstimmungs-ID-Feldes, die durch entsprechende Bits des zugehörigen Objektmaskenfeldes maskiert sind, ignoriert werden, und bestimmt dann, ob einer der Vergleiche zu einer Übereinstimmung führt. Jedes ausgewählte Bit oder mehrere ausgewählte Bits des Objektübereinstimmungs-ID-Feldes, das jedem der mehreren n Nachrichtenobjekte zugeordnet ist, kann auf „1“ oder „0“ gesetzt werden, und jedes ausgewählte eine oder mehrere Bits des Objektmaskenfelds, das jedem der mehreren n Nachrichtenobjekte zugeordnet ist, kann auf „1“ oder „0“ gesetzt werden, um jedes ausgewählte eine oder mehrere Bits des zugehörigen Objektübereinstimmungs-ID-Felds zu maskieren, wodurch die Kombination aus dem Objektübereinstimmungs-ID-Feld und dem Objektmaskenfeld, das jedem der mehreren n Nachrichtenobjekte zugeordnet ist, einen vollständig programmierbaren Übereinstimmungs- und Maskenfilter bildet. Das CAN/CAL-Modul ist in der Lage, eingehende Nachrichten, die entweder Standard- oder erweiterte CAN-Frames darstellen, einer Akzeptanzfilterung zu unterziehen. Wenn mehr als eine Übereinstimmung festgestellt wird, wird das Nachrichtenobjekt mit der