DE102016212729A1 - Anordnung, Fortbewegungsmittel und Verfahren zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators - Google Patents

Anordnung, Fortbewegungsmittel und Verfahren zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators Download PDF

Info

Publication number
DE102016212729A1
DE102016212729A1 DE102016212729.2A DE102016212729A DE102016212729A1 DE 102016212729 A1 DE102016212729 A1 DE 102016212729A1 DE 102016212729 A DE102016212729 A DE 102016212729A DE 102016212729 A1 DE102016212729 A1 DE 102016212729A1
Authority
DE
Germany
Prior art keywords
task
processor core
pseudo
result
time
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
Application number
DE102016212729.2A
Other languages
English (en)
Inventor
Timo Dobberphul
Reno Davids
Alexander Bartels
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Volkswagen AG
Original Assignee
Volkswagen AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Volkswagen AG filed Critical Volkswagen AG
Priority to DE102016212729.2A priority Critical patent/DE102016212729A1/de
Publication of DE102016212729A1 publication Critical patent/DE102016212729A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T7/00Brake-action initiating means
    • B60T7/02Brake-action initiating means for personal initiation
    • B60T7/04Brake-action initiating means for personal initiation foot actuated
    • B60T7/042Brake-action initiating means for personal initiation foot actuated by electrical means, e.g. using travel or force sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T7/00Brake-action initiating means
    • B60T7/02Brake-action initiating means for personal initiation
    • B60T7/08Brake-action initiating means for personal initiation hand actuated
    • B60T7/085Brake-action initiating means for personal initiation hand actuated by electrical means, e.g. travel, force sensors
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B61RAILWAYS
    • B61HBRAKES OR OTHER RETARDING DEVICES SPECIALLY ADAPTED FOR RAIL VEHICLES; ARRANGEMENT OR DISPOSITION THEREOF IN RAIL VEHICLES
    • B61H11/00Applications or arrangements of braking or retarding apparatus not otherwise provided for; Combinations of apparatus of different kinds or types
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B62LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
    • B62DMOTOR VEHICLES; TRAILERS
    • B62D5/00Power-assisted or power-driven steering
    • B62D5/04Power-assisted or power-driven steering electrical, e.g. using an electric servo-motor connected to, or forming part of, the steering gear
    • B62D5/0457Power-assisted or power-driven steering electrical, e.g. using an electric servo-motor connected to, or forming part of, the steering gear characterised by control features of the drive means as such
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • G06F9/4887Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues involving deadlines, e.g. rate based, periodic
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T2220/00Monitoring, detecting driver behaviour; Signalling thereof; Counteracting thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Transportation (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Combustion & Propulsion (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Control Of Driving Devices And Active Controlling Of Vehicle (AREA)
  • Steering Control In Accordance With Driving Conditions (AREA)

Abstract

Es werden eine Anordnung, ein Fortbewegungsmittel sowie ein Verfahren zur Verwendung zweier Prozessoren zur Ansteuerung eines haptisch relevanten Aktuators vorgeschlagen. Das Verfahren umfasst die Schritte: – Ausführen einer ersten Aufgabe auf einem ersten Prozessorkern (1), zeitlich darauffolgend – Ausführen einer Pseudoaufgabe auf einem ersten Prozessorkern (1) und – Übergeben eines Ergebnisses der ersten Aufgabe an den zweiten Prozessorkern (2), wobei die Ausführung der Pseudoaufgabe einen während eines ersten möglichen Zeitpunktes zur Übergabe des Ergebnisses noch andauert und zu einem darauffolgenden zweiten Zeitpunkt zur Übergabe des Ergebnisses bereits abgeschlossen ist.

Description

  • Stand der Technik
  • Die vorliegende Erfindung betrifft eine Anordnung, ein Fortbewegungsmittel sowie ein Verfahren zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators, wie z. B. ein Lenksystem, ein Bremssystem o. ä.
  • Bei Fahrzeugsteuergeräten, die über ihre Aktuatoren die Haptik beeinflussen (z. B. elektromechanische Lenkung oder elektromechanischer Bremskraftverstärker, etc.) und die mehrere Prozessorkerne besitzen, kann es vorkommen, dass haptisch relevante und voneinander abhängige Aufgaben (englisch „Task“) wiederkehrend auf verschiedenen Prozessorkernen mit unterschiedlichen Zykluszeiten gerechnet werden. Dabei kann es bedingt durch Laufzeitunterschiede zu verschiedenen Zeitfolgen (englisch „Timing“) des Datenaustauschs beider Prozessorkerne kommen. Dieser Umstand kann sich z. B. beim Stellen eines Motormomentes auf eine größere oder kleinere Latenzzeit im Verhältnis zur Fahrereingabe auswirken, welche wiederum durch den Fahrer als störend wahrgenommen wird. Die Fahrereingabe kann beispielsweise eine Winkelveränderung eines Lenkrades oder eine Betätigung eines Bremspedals umfassen.
  • WO 2012/051972 A2 offenbart ein Verfahren zur effizienten Nutzung eines Zwei- oder Mehrkehrprozessors durch ein Betriebssystem. Ein erster Prozessorkern ist mit Standard Single-Core Betriebsmitteln ausgestattet, wobei über die Standard Single-Core Betriebsmittel des ersten Prozessorkerns ein zweiter Prozessorkern durch Interrupts gesteuert wird. Hierbei wird das Laufzeitverhalten komplett durch den ersten Prozessorkern verwaltet, wodurch sich eine einfache Überwachung des Laufzeitverhaltens ergibt.
  • Die Benutzung mehrerer Prozessorkerne weißt grundsätzlich den Vorteil auf, dass mitunter günstigere Prozessoren eingesetzt und gleichzeitig höhere Leistungen erzielt werden können. Aufgrund der vorstehend beschriebenen Zeitfolgeprobleme wird für haptisch relevante Rechenaufgaben im Automobilbau überwiegend auf die Verwendung mehrerer Prozessorkerne verzichtet.
  • Es ist eine Aufgabe der vorliegenden Erfindung, die vorgenannten Nachteile auszuräumen.
  • Offenbarung der Erfindung
  • Die vorstehend identifizierte Aufgabe wird erfindungsgemäß durch ein Verfahren zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators (z. B. elektromechanisch unterstütztes Lenksystem, elektromechanisch unterstütztes Bremssystem o. ä.) gelöst. Das Verfahren startet beispielsweise mit dem Ausführen einer ersten Aufgabe auf dem ersten Prozessorkern. Zeitlich darauffolgend wird eine Pseudoaufgabe auf dem ersten Prozessorkern ausgeführt. Als „Pseudoaufgabe“ wird im Rahmen der vorliegenden Erfindung eine solche Aufgabe verstanden, deren Ergebnis nicht relevant ist und das zumindest logisch nicht verwendet wird. Vielmehr besteht der Zweck der Pseudoaufgabe darin, den ersten Prozessorkern nach Abschluss der ersten Aufgaben weiter zu beschäftigen. Ein Ergebnis der ersten Aufgabe wird an den zweiten Prozessorkern erst nach Abschluss der Ausführung der Pseudoaufgabe übergeben. Mit anderen Worten dauert die Ausführung der Pseudoaufgabe während eines ersten möglichen Zeitpunktes zur Übergabe des Ergebnisses noch an, während zu einem darauffolgenden zweiten Zeitpunkt, an welchem die Übergabe des Ergebnisses erfolgen soll, die Ausführung der Pseudoaufgabe bereits abgeschlossen ist. Die Pseudoaufgabe kann insbesondere eine vordefinierte Länge aufweisen. Zumindest kann der Endzeitpunkt der Ausführung der Pseudoaufgabe bekannt sein. Der Endzeitpunkt kann beispielsweise bezüglich einzelner, wiederkehrender Zeitpunkte innerhalb eines Taktes, an welchem grundsätzlich eine Übergabe von Ergebnissen des ersten Prozessorkerns an den zweiten Prozessorkern erfolgen kann, bekannt sein. Durch die Ausführung der Pseudoaufgabe wird verhindert, dass die Ergebnisse der ersten Aufgabe durch den ersten Prozessorkern an den zweiten Prozessorkern (und/oder eine dritte Instanz) übergeben werden, bevor der zweite Prozessorkern die Ergebnisse der ersten Aufgabe empfangen oder die Ergebnisse einer selbst bearbeiteten Aufgabe versenden kann, ohne haptische Nachteile für den Anwender des erfindungsgemäßen Verfahrens zu bewirken. Im Ergebnis verbessert sich die Haptik eines durch den ersten Prozessorkern und / oder zweiten Prozessor angesteuerten Aktuators.
  • Anders ausgedrückt schlägt die vorliegende Erfindung eine Steuerung vor, welche es ermöglicht, die Laufzeit einer Aufgabe auf einem ersten Prozessorkern so zu erhöhen, dass das Timing des Gesamtsystems beeinflusst wird. Zum anderen schlägt die vorliegende Erfindung eine Regelung vor, welche die tatsächliche Laufzeit einer Aufgabe analysiert und mit Hilfe der vorstehend beschriebenen Überlegungen die Laufzeit auf eine festgelegte, optimale Laufzeit durch Ausführen einer zusätzlichen Rechenoperation ausregelt.
  • Die Unteransprüche zeigen bevorzugte Weiterbildungen der Erfindung.
  • Das Verfahren kann bevorzugt dann Vorteile bringen, wenn der zweite Prozessorkern vor dem Empfangen des Ergebnisses der ersten Aufgabe eine zweite Aufgabe ausführt. Am Beispiel eines elektromotorisch unterstützten Lenksystems kann die erste Aufgabe beispielsweise die Errechnung eines vom Anwender ausgeübten Handmomentes aus Sensorgrößen umfassen. Die zweite Aufgabe kann beispielsweise die Berechnung einer geeigneten Reaktion (z. B. Sollmoment) umfassen, welches mit einem Elektromotor innerhalb des Lenksystems ausgeübt werden soll. Unterschiedliche Bearbeitungszeiten und Laufzeitdifferenzen für die Bearbeitung der ersten Aufgabe und der zweiten Aufgabe können zu unterschiedlichen Verzögerungen zwischen der Anwendereingabe und der Systemreaktion führen. Gleichmäßige Verzögerungen sind für den Anwender angenehmer und daher wünschenswert. Während gemäß dem Stand der Technik sogenannte Interrupts von einem ersten Prozessorkern zu einem zweiten Prozessorkern gesendet werden, um die Zeitfolge der Bereitstellung der Rechenergebnisse zu synchronisieren beziehungsweise zu homogenisieren, kann die Sendung der Interrupts erfindungsgemäß erübrigt werden. Hierzu kann in Kenntnis der minimalen beziehungsweise maximalen Dauer für die vom ersten Prozessorkern auszuführende Aufgabe die Pseudoaufgabe für die Abarbeitung auf dem ersten Prozessorkern bemessen werden. Auf diese Weise wird ein geeigneter Übergabezeitpunkt aus einer Vielzahl zyklisch wiederkehrender Übergabezeitpunkte sicher eingehalten. Es wird also die Rechenzeit des ersten Prozessorkerns künstlich verlängert und somit der Rechenzeit des zweiten Prozessorkerns angepasst. Auf diese Weise werden die Ergebnisse der ersten Aufgabe und der auf dem zweiten Prozessorkern ausgeführten Aufgabe zu einem identischen Zeitpunkt übergeben. Die Ergebnisse der ersten Aufgabe und der zweiten Aufgabe können in dem zweiten Prozessorkern oder in einer dritten Instanz miteinander kombiniert werden, ohne dass variable Zeitdauern zwischen dem Erhalt der Ergebnisse der ersten Aufgabe und der zweiten Aufgabe die Haptik nachteilig beeinflussen.
  • Das Ausführen der zweiten Aufgabe auf dem zweiten Prozessorkern kann während des ersten möglichen Zeitpunktes zur Übergabe des Ergebnisses der ersten Aufgabe noch andauern. Deshalb wird während dieses Zeitpunkts der erste Prozessorkern noch mit der Ausführung der Pseudoaufgabe beschäftigt.
  • Um bei stark variierender Rechenzeit für die erste Aufgabe und / oder die zweite Aufgabe geeignete Pseudoaufgaben auswählen und ausführen zu können, kann eine voraussichtliche Dauer zur Ausführung der auf dem ersten Prozessorkern auszuführenden ersten Aufgabe (beispielsweise anhand eines Fahrzeugparameter oder eines Fahrzustandsparameters) ermittelt werden. In entsprechender Weise kann auch eine voraussichtliche Dauer zur Ausführung der auf dem zweiten Prozessorkern auszuführenden zweiten Aufgabe ermittelt werden. In Kenntnis der jeweiligen Startzeitpunkte zur Ausführung der ersten und der zweiten Aufgabe kann nun ermittelt werden, wie lange die Ausführung der Pseudoaufgabe im Anschluss an die Beendigung der Ausführung der ersten Aufgabe dauern muss, damit der erste Prozessorkern die Ergebnisse der ersten Aufgabe nicht vor einem geeigneten Übergabezeitpunkt bereitstellt.
  • Wie vorstehend beschrieben kann die Dauer zur Ausführung der ersten Aufgabe von einem Fahrzeugparameter abhängen. Dieser kann beispielsweise sensorisch ermittelt und / oder von einem Bussystem ausgelesen werden. Beispielsweise kann eine Fahrzeuggeschwindigkeit, eine Bauteiltemperatur, ein Spannungsniveau, die Ausführung eines Suchalgorithmus‘ (z. B. Stützstellen in Kennlinien), die Ausführung einer Hintergrundaufgabe o. ä. als Fahrzeugparameter ermittelt und anschließend eine neue Pseudoaufgabe zur Ausführung auf dem ersten Prozessorkern festgelegt werden, wobei die neue Pseudoaufgabe beispielsweise eine längere oder kürzere Dauer zur Ausführung als die erste Pseudoaufgabe verursacht. Dies kann beispielsweise dadurch erfolgen, dass ein in der ersten Pseudoaufgabe enthaltener Befehlssatz zur Erzeugung der neuen Pseudoaufgabe häufiger oder weniger häufig auszuführen ist.
  • Die Pseudoaufgabe kann beispielsweise eine Inkrementierung eines Hardware-Registers oder mehrerer Hardware-Register umfassen. Andere Aufgaben sind ebenfalls möglich, sofern diese nicht bei der Kompilierung auf eine unvorhersehbare Komplexitätsstufe verändert werden. Mit anderen Worten muss auch nach dem Kompilieren der Pseudoaufgabe sichergestellt sein, dass die Dauer zur Ausführung der Pseudoaufgabe bekannt und erfindungsgemäß geeignet ist.
  • Bevorzugt kann ein Datenspeicher ausgelesen werden, in welchem (z. B. als Nur-Lese-Speicher (ROM) ab Werk) Datensätze enthalten sind, anhand welcher eine Dauer zur Ausführung der ersten Aufgabe (gegebenenfalls in Abhängigkeit aktueller Fahrzeug-/Fahrzustandsparameter) sowie eine erforderliche Dauer zur Ausführung der Pseudoaufgabe ermittelt werden können. Beispielsweise kann anhand einer Nachschlagetabelle (englisch „Look-Up-Table“) eine jeweils geeignete Pseudoaufgabe definiert sein, welche anschließend zur Ausführung durch den ersten Prozessorkern erteilt wird. Selbstverständlich kann auch lediglich eine bereits im ersten Prozessorkern gespeicherte Aufgabe hinsichtlich einer Anzahl erforderlicher Wiederholungen konkretisiert werden.
  • Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird eine Anordnung (z. B. ein elektronisches Steuergerät für ein Fortbewegungsmittel) vorgeschlagen, welche einen ersten Prozessorkern und einen zweiten Prozessorkern umfasst. Der erste Prozessorkern und der zweite Prozessorkern sind informationstechnisch miteinander gekoppelt und können als Teile eines Mehrkernprozessors ausgeführt sein. Die Anordnung ist erfindungsgemäß eingerichtet, ein Verfahren auszuführen, wie es oben in Verbindung mit dem erstgenannten Erfindungsaspekt im Detail beschrieben ist, sodass hinsichtlich der Merkmale, Merkmalskombinationen und der sich aus diesen ergebenden Vorteile auf die obigen Ausführungen verwiesen werden kann.
  • Gemäß einem dritten Aspekt der vorliegenden Erfindung wird ein Fortbewegungsmittel vorgeschlagen, welches eine vorgenannte Anordnung aufweist. Die Anordnung kann als elektronisches Steuergerät eines Bremssystems und / oder eines Lenksystems ausgestaltet sein.
  • Unabhängig von den vorgenannten Aspekten kann eine Messung einer tatsächlichen Zeitdauer zur Ausführung der ersten Aufgabe und / oder der zweiten Aufgabe und / oder der Pseudoaufgabe während des Betriebes ermittelt (z. B. gemessen) und durch Anpassung der Länge der Pseudoaufgabe behandelt werden. Somit kann eine Regelung auf eine optimale Solllaufzeit der Verarbeitung mittels des ersten Prozessorkerns erzielt werden.
  • Kurzbeschreibung der Figuren
  • Nachfolgend werden Ausführungsbeispiele der vorliegenden Erfindung anhand der beigefügten Figuren erläutert. In den Figuren sind:
  • 1 eine schematische Übersicht über Komponenten eines Ausführungsbeispiels eines erfindungsgemäß ausgestalteten Fortbewegungsmittels;
  • 2 eine schematische Darstellung von Komponenten eines Ausführungsbeispiels einer erfindungsgemäßen Anordnung;
  • 3 ein erstes Zeitablaufdiagramm zur Veranschaulichung der vorliegenden Erfindung;
  • 4 ein zweites Zeitablaufdiagramm zur Veranschaulichung der vorliegenden Erfindung; und
  • 5 ein Flussdiagramm veranschaulichend Schritte eines Ausführungsbeispiels eines erfindungsgemäßen Verfahrens.
  • Ausführungsformen der Erfindung
  • 1 zeigt einen PKW 10, als Ausführungsbeispiel eines erfindungsgemäßen Fortbewegungsmittels mit einem elektromechanisch unterstützten Lenksystem 9. Von einem Anwender mittels eines Lenkrades 6 ausgeübtes Handmoment wird an eine Zahnstange 11 weitergeleitet, um einen gewünschten Lenkeinschlag zu erzeugen. Um den Komfort und die Fahrsicherheit zu erhöhen, veranlasst ein Elektromotor 3 als Aktuator über ein Ritzel 7 eine Aufbringung eines Unterstützungsmomentes auf die Zahnstange 11. Die Ermittlung des Handmomentes 6 und die Ermittlung eines geeigneten Lenkunterstützungsmoments soll erfindungsgemäß auf zwei Prozessorkerne aufgeteilt werden.
  • 2 zeigt einen ersten Prozessorkern 1 und einen zweiten Prozessorkern 2, welche mit Daten aus einem elektromechanisch unterstützten Lenksystem 9 (siehe 1) versorgt werden. Die Prozessorkerne 1, 2 sind informationstechnisch mit einem Taktgeber clk und einem Datenspeicher 12 verbunden. Der Datenspeicher 12 hält Instruktionen zur Ausführung des erfindungsgemäßen Verfahrens bereit. Über dies hält der Datenspeicher 12 ein Nachschlagewerk zur Ermittlung einer erforderlichen Länge einer Pseudoaufgabe bereit, welche auf dem ersten Prozessorkern 1 zur künstlichen Verzögerung einer Übergabe eines Ergebnisses einer ersten Aufgabe auszuführen ist. Wie durch einen Pfeil P veranschaulicht wird das Ergebnis der ersten Aufgabe zum durch die Ausführung der Pseudoaufgabe verzögerten Übergabezeitpunkt an den zweiten Prozessorkern 2 übergeben, um eine konstante zeitliche Zuordnung zwischen der Bereitstellung des Ergebnisses der ersten Aufgabe und der Bereitstellung eines Ergebnisses der zweiten Aufgabe zu gewährleisten.
  • 3 zeigt durch einen Taktgeber (siehe clk in 2) vordefinierte Zeitintervalle T1 bis T6, welche jeweils bis zu einer steigenden Flanke des Taktes dauern. Die Zeitpunkte der steigenden Flanken sind mit t1 bis t6 benannt und kennzeichnen gleichzeitig mögliche Übergabezeitpunkte für Ergebnisse auf den Prozessorkernen ausgeführter Aufgaben 4, 8. Während die Ausführung der ersten Aufgabe 4 bereits im Zeitintervall T2 beendet wird und eine Übergabe an eine Folgeinstanz bereits zum Zeitpunkt t2 erfolgen könnte, ist die Ausführung der zweiten Aufgabe 8 erst im vierten Zeitintervall T4 beendet, sodass ein Ergebnis der zweiten Aufgabe 8 erst zum Zeitpunkt t4 übergeben werden könnte. Erfindungsgemäß wird daher im Anschluss an die Ausführung der ersten Aufgabe 4 eine Pseudoaufgabe 5 mit vordefinierter Länge ausgeführt. Die Länge des Pseudocodes 5 ist so bemessen, dass der Pseudocode 5 ebenfalls erst im Zeitintervall T4 vollständig ausgeführt ist und die Ergebnisse der ersten Aufgabe 4 somit ebenfalls erst zum Übergabezeitpunkt t4 (also zeitgleich mit den Ergebnissen der zweiten Aufgabe 8) übergeben werden. Im Beispiel sind die Aufgaben 4, 8 Lenkfunktionen eines Fortbewegungsmittels zugeordnet, welche nach jeweils 1,2 ms erneut berechnet werden. Die Latenzzeiten des Systems, welche die Zeit zwischen einer Fahrerwunscherfassung über das Handmoment und die Umsetzung der Lenkunterstützung durch den Elektromotor beschreibt, werden durch die Ausführung der Pseudoaufgabe 5 auf dem ersten Prozessorkern daher einander angepasst, wodurch die Anwenderakzeptanz und der Anwenderkomfort steigen.
  • 4 zeigt ein Zeitdiagramm zur Ausführung unterschiedlich langer erster Aufgaben 4, 4‘ auf einem ersten Prozessorkern, im Ansprechen worauf auch die Komplexität und somit die Länge der Pseudoaufgabe 5, 5‘ angepasst wird, um eine jeweils feste Bearbeitungsdauer von 0,7 ms zu erzielen. Die Ausführung der ersten Aufgabe 4 startet bei 0 ms und endet bei 0,5 ms. Zwischen 0,5 ms und 0,7 ms wird der Pseudocode 5 ausgeführt. Anschließend erfolgt (nicht dargestellt) die Übergabe der Ergebnisse der ersten Aufgabe 4. Nach Ablauf der Zykluszeit von 1,2 ms beginnt bei 1,2 ms die Ausführung einer aufgrund eines geänderten Fahrzustandsparameters veränderten ersten Aufgabe 4‘. Die Komplexität der für die Lenkfunktion auf dem ersten Prozessorkern auszuführende erste Aufgabe 4‘ hat sich sichtlich verringert und dauert lediglich 0,3 ms bis zum Zeitpunkt 1,5 ms. Entsprechend wird ein verlängerter Pseudocode 5‘ verwendet, um eine feste Bearbeitungszeit von 0,7 ms bis zum Zeitpunkt 1,9 ms einzuhalten. Durch die Verwendung unterschiedlich komplexer Pseudoaufgaben können betriebsbedingt unterschiedlich komplex ausfallende Aufgaben künstlich verlängert werden und somit vorhersehbare Zeitfolgen bei der Verwendung mehrerer Prozessorkerne erzielt werden.
  • 5 zeigt Schritte eines Ausführungsbeispiels eines erfindungsgemäßen Verfahrens zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators. In einem ersten Schritt 100 wird eine erste Aufgabe auf dem ersten Prozessorkern ausgeführt. Auf dem zweiten Prozessorkern wird in Schritt 200 vor einem Empfangen eines Ergebnisses der ersten Aufgabe eine zweite Aufgabe ausgeführt. In Schritt 300 werden Daten aus einem Speicher ausgelesen, anhand welcher in Schritt 400 eine voraussichtliche Dauer zur Ausführung der auf dem ersten Prozessorkern auszuführenden ersten Aufgabe ermittelt wird und in Schritt 500 eine voraussichtliche Dauer zur Ausführung der auf dem zweiten Prozessorkern auszuführenden zweiten Aufgabe ermittelt wird. In Schritt 600 wird eine Dauer zur Ausführung der Pseudoaufgabe anhand der ausgelesenen Daten ermittelt. In Schritt 700 wird die Pseudoaufgabe auf dem ersten Prozessorkern ausgeführt, um die Ergebnisse der ersten Aufgabe in Schritt 800 nicht vor einem geeigneten Zeitpunkt an den zweiten Prozessorkern zu übergeben. Hierzu dauert die Ausführung der Pseudoaufgabe während der Ausführung der zweiten Aufgabe zumindest so lange an, dass das Ende der Pseudoaufgabe und das Ende der zweiten Aufgabe bevorzugt in einem selben Zeitraum zwischen zwei möglichen, zueinander benachbarten Übergabezeitpunkten liegen. In Schritt 900 wird das Ergebnis der ersten Aufgabe mit dem Ergebnis der zweiten Aufgabe gemeinsam verarbeitet. In Schritt 1000 wird ein veränderter Fahrzeugparameter in Form einer Bauteiltemperatur ermittelt. Da die veränderte Bauteiltemperatur eine veränderte Ausführungslänge der auf dem ersten Prozessorkern auszuführenden ersten Aufgabe bedeutet, wird im Ansprechen darauf in Schritt 1100 eine neue Pseudoaufgabe zur Ausführung auf dem ersten Prozessorkern festgelegt, welche eine veränderte Länge zur Ausführung als die zuvor definierte Pseudoaufgabe verursacht.
  • Im Ergebnis führen Laufzeitunterschiede für die Bearbeitung auf mehrere Prozessorkerne aufgeteilter Aufgaben innerhalb eines haptisch relevanten Systems nicht zu stark variierenden Rückmeldungen an einen Anwender.
  • Auch wenn die erfindungsgemäßen Aspekte und vorteilhaften Ausführungsformen anhand der in Verbindung mit den beigefügten Zeichnungsfiguren erläuterten Ausführungsbeispiele im Detail beschrieben worden sind, sind für den Fachmann Modifikationen und Kombinationen von Merkmalen der dargestellten Ausführungsbeispiele möglich, ohne den Bereich der vorliegenden Erfindung zu verlassen, deren Schutzbereich durch die beigefügten Ansprüche definiert wird.
  • Bezugszeichenliste
  • 1
    erster Prozessorkern
    2
    zweiter Prozessorkern
    3
    Elektromotor
    4
    erste Aufgabe
    4‘
    erste Aufgabe veränderter Komplexität
    5
    Pseudocode
    5‘
    Pseudocode veränderter Komplexität
    6
    Lenkhandrad
    7
    Ritzel
    8
    zweite Aufgabe
    9
    elektromechanisch unterstütztes Lenksystem
    10
    PKW
    11
    Zahnstange
    12
    Datenspeicher
    19
    Latenzzeit
    100–1100
    Verfahrensschritte
    clk
    Taktgeber (englisch „Clock“)
    P
    Pfeil
    t
    Zeit
    t1–t6
    Übergabezeitpunkte
    T1–T6
    Zeitintervalle
  • ZITATE ENTHALTEN IN DER BESCHREIBUNG
  • 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.
  • Zitierte Patentliteratur
    • WO 2012/051972 A2 [0003]

Claims (12)

  1. Verfahren zur Verwendung eines Prozessors mit mindestens zwei Prozessorkernen zur Ansteuerung eines haptisch relevanten Aktuators (3) umfassend die Schritte: – Ausführen (100) einer ersten zyklischen Aufgabe (4) auf einem ersten Prozessorkern (1), zeitlich darauffolgend – Ausführen (700) einer Pseudoaufgabe (5) auf einem ersten Prozessorkern (1) und – Übergeben (800) eines Ergebnisses der ersten Aufgabe (4) durch den ersten Prozessorkern (1), wobei die Ausführung der Pseudoaufgabe (5) einen während eines ersten möglichen Zeitpunktes (t1) zur Übergabe des Ergebnisses noch andauert und zu einem darauffolgenden zweiten Zeitpunkt (t4) zur Übergabe des Ergebnisses bereits abgeschlossen ist.
  2. Verfahren nach Anspruch 1 weiter umfassend – Ausführen (200) einer zweiten zyklischen Aufgabe (8) mit einer gegenüber der ersten Aufgabe (4) unterschiedlichen Zykluszeit auf dem zweiten Prozessorkern (2) Übergeben des Ergebnisses der ersten Aufgabe (4) und insbesondere – Kombinieren (900) eines Ergebnisses der zweiten Aufgabe (8) und des Ergebnisses der ersten Aufgabe (4).
  3. Verfahren nach Anspruch 2, wobei das Ausführen der zweiten Aufgabe (8) auf dem zweiten Prozessorkern (2) während des ersten möglichen Zeitpunktes (t2) zur Übergabe des Ergebnisses der ersten Aufgabe (4) noch andauert.
  4. Verfahren nach Anspruch 2 oder 3, weiter umfassend – Ermitteln (400) einer voraussichtlichen Dauer zur Ausführung der auf dem ersten Prozessorkern (1) auszuführenden ersten Aufgabe (4) und – Ermitteln (500) einer voraussichtlichen Dauer zur Ausführung der auf dem zweiten Prozessorkern (2) auszuführenden zweiten Aufgabe (8).
  5. Verfahren nach einem der vorstehenden Ansprüche, wobei der Aktuator – ein elektromechanisch unterstütztes Lenksystem (9) und/oder – ein elektromechanisch unterstütztes Bremssystem ist.
  6. Verfahren nach einem der vorstehenden Ansprüche weiter umfassend – Ermitteln (1000) eines Fahrzeugparameters, insbesondere – einer Fahrzeuggeschwindigkeit und/oder – einer Bauteiltemperatur und/oder – eines Spannungsniveaus und/oder – einer Ausführung eines Suchalgorithmus‘ und/oder – einer Ausführung einer Hintergrundaufgabe und im Ansprechen darauf – Festlegen (1100) einer neuen Pseudoaufgabe zur Ausführung auf dem ersten Prozessorkern (1), wobei die neue Pseudoaufgabe insbesondere eine längere Dauer zur Ausführung als die erste Pseudoaufgabe verursacht.
  7. Verfahren nach Anspruch 6, wobei die neue Pseudoaufgabe eine Wiederholung eines bereits in der ersten Pseudoaufgabe (5) enthaltenen Befehlssatzes umfasst.
  8. Verfahren nach einem der vorstehenden Ansprüche, wobei die Pseudoaufgabe (5) eine Inkrementierung eines Hardware-Registers, insbesondere mehrerer Hardware-Register umfasst.
  9. Verfahren nach einem der vorstehenden Ansprüche, wobei das Übergeben des Ergebnisses der ersten Aufgabe (4) an den zweiten Prozessorkern (8) zu einem Übergabezeitpunkt (t4) aus einer Vielzahl zyklisch wiederkehrender Übergabezeitpunkte (t1–t6) erfolgt.
  10. Verfahren nach einem der vorstehenden Ansprüche weiter umfassend – Auslesen (300) von Daten aus einem Speicher (12) und – Ermitteln (600) einer Dauer zur Ausführung der ersten Aufgabe (4) sowie einer erforderlichen Dauer zur Ausführung der Pseudoaufgabe (5) anhand der ausgelesenen Daten.
  11. Anordnung, insbesondere elektronisches Steuergerät für ein Fortbewegungsmittel (10), umfassend – einen ersten Prozessorkern (1), und – einen zweiten Prozessorkern (2), welcher informationstechnisch mit dem ersten Prozessorkern (1) verknüpft ist, wobei die Anordnung eingerichtet ist, ein Verfahren nach einem der vorstehenden Ansprüche auszuführen.
  12. Fortbewegungsmittel (10) umfassend eine Anordnung nach Anspruch 11.
DE102016212729.2A 2016-07-13 2016-07-13 Anordnung, Fortbewegungsmittel und Verfahren zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators Pending DE102016212729A1 (de)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102016212729.2A DE102016212729A1 (de) 2016-07-13 2016-07-13 Anordnung, Fortbewegungsmittel und Verfahren zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102016212729.2A DE102016212729A1 (de) 2016-07-13 2016-07-13 Anordnung, Fortbewegungsmittel und Verfahren zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators

Publications (1)

Publication Number Publication Date
DE102016212729A1 true DE102016212729A1 (de) 2018-01-18

Family

ID=60782900

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102016212729.2A Pending DE102016212729A1 (de) 2016-07-13 2016-07-13 Anordnung, Fortbewegungsmittel und Verfahren zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators

Country Status (1)

Country Link
DE (1) DE102016212729A1 (de)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012051972A2 (de) 2010-10-19 2012-04-26 Conti Temic Microelectronic Gmbh Verfahren, zur effizienten nutzung eines zwei- oder mehrkernprozessors durch ein betriebssystem

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012051972A2 (de) 2010-10-19 2012-04-26 Conti Temic Microelectronic Gmbh Verfahren, zur effizienten nutzung eines zwei- oder mehrkernprozessors durch ein betriebssystem

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Baker, T.P.: What to Make of Multicore Processors for Reliable Real-Time Systems?In: J. Real and T. Vardanega (Eds.): Ada-Europe 2010, LNCS 6106, 2010. pp. 1 - 18
Qin C, Yu D, Wu W, et al. Scheduling Algorithm for Data Flow Model in Real-time Control System. In: Proceedings of 2010 3rd International Conference on Computer and Electrical Engineering (ICCEE 2010 no.1). 2012. S. 1 - 9
Ragunathan Rajkumar: Dealing with Suspending Periodic Tasks. IBM Thomas J. Watson Research Center, 1991.<http://www.cs.cmu.edu/afs/cs/project/rtmach/public/papers/period-enforcer.ps>(recherchiert am 15.03.2017)

Similar Documents

Publication Publication Date Title
EP2120143B1 (de) Verfahren zur Ausführung von Tasks zur Berechnung eines zu simulierenden Signals in Echtzeit
DE102010028259A1 (de) Mikrocontroller mit einer Recheneinheit und einer Logikschaltung sowie Verfahrung zur Durchführung von Rechnungen durch einen Mikrocontroller für eine Regelung oder eine Steuerung in einem Fahrzeug
EP3417373B1 (de) Verfahren und vorrichtung zum betreiben eines steuergeräts
DE102019113804A1 (de) Fahrzeugsteuerungssystem
DE10241696A1 (de) Lenkvorrichtung
DE112018001051T5 (de) Schaltbereichssteuerungsvorrichtung
DE102018124428A1 (de) Proaktiver zustandsbasierter übergang zu redundanten subsystemen
DE102017204129A1 (de) Vorrichtung zum Steuern von Fahrzeugen und Steuerverfahren für diese
DE112017001415T5 (de) Fahrzeugsteuervorrichtung
DE102013212842A1 (de) Verfahren zum Betreiben eines Steuergeräts sowie Steuergerät mit einer Modellberechnungseinheit
DE102013218721A1 (de) Verfahren zur Reduktion von Lenkmomenten einer Lenkung eines Kraftfahrzeugs
DE102015100566A1 (de) Verfahren und leichter Mechanismus für gemischte kritische Anwendungen
DE102016212729A1 (de) Anordnung, Fortbewegungsmittel und Verfahren zur Verwendung zweier Prozessorkerne zur Ansteuerung eines haptisch relevanten Aktuators
DE102017210893A1 (de) Verfahren und eine Vorrichtung zum Betreiben einer automatisierten Feststellbremse
EP2018604B1 (de) Verfahren zum betreiben eines steuergeräts
DE102014208379A1 (de) Verfahren und Vorrichtung zum Ermitteln eines Funktionswerts eines bezüglich einer Eingangsgröße invertierten datenbasierten Funktionsmodells
DE102016203138B4 (de) Verfahren zum Betreiben einer elektronischen Parkbremse mit ABS-Funktion eines Fahrzeugs
EP3805998A1 (de) Verarbeitung von sensordaten in einem kraftfahrzeug
DE102014213826B4 (de) Verfahren zum Synchronisieren von Zustandswechseln in Mehrkernrechnern eingebetteter Systeme
DE102011055205A1 (de) Informationsverarbeitungsvorrichtung
DE102013206320A1 (de) Verfahren und Steuergerät zur Berechnung eines datenbasierten Funktionsmodells
DE102013200932A1 (de) Verfahren und Vorrichtung zur Überwachung einer Funktion eines Motorsteuergeräts zum Einsatz in einem Motorsystem mit einem Verbrennungsmotor
DE102019130642B4 (de) Verfahren zur Notunterbrechung der Generierung eines EPM-Microticks mittels eines direkten Speicherzugriffs
DE102018217139B4 (de) Verfahren und Vorrichtung zum Konfigurieren einer Kennfunktion eines Steuergeräts eines Kraftfahrzeugs
EP3331740B1 (de) Verfahren zum betreiben einer steuervorrichtung und diagnosesystem

Legal Events

Date Code Title Description
R163 Identified publications notified
R012 Request for examination validly filed