-
Die vorliegende Erfindung betrifft einen Prozessor und ein Speichermodul.
-
Wenn im Stand der Technik eine Datenschreibanfrage auftritt bzw. erfolgt, schreibt ein Prozessor die Daten in eine spezifische Adresse eines Speichers. In einem Prozessor eines Mehrkernsystems bzw. eines Multi-Kern-Systems, der auf einer elektronischen Steuervorrichtung in einem Fahrzeug angebracht ist, kann eine Differenz bzw. ein Unterschied zwischen einer Betriebsfrequenz eines Speichers und einer Betriebsfrequenz eines Kerns erweitert bzw. vergrößert sein oder es kann eine Zugriffsentscheidung unter Kernen auftreten. In diesem Fall erhöht sich eine Zugriffslatenz des Speichers. Wenn die Daten in den Speicher geschrieben werden, wird der Kern, der ein Programm für eine Datenschreibanfrage ausführt, beschäftigt bzw. besetzt. Ein anderer Vorgang bzw. Prozess im Kern muss somit warten, bis ein Schreiben von Daten abgeschlossen bzw. beendet ist. Wie in
JP 2008-158804 A (entspricht
US 2008/155136 A ) beschrieben, wird eine Konfiguration offenbart, die dieselben Daten in mehrere Adressen schreibt, so dass eine Datenzuverlässigkeit bzw. Datensicherheit sichergestellt wird.
-
Wie oben beschrieben, erhöht sich die Zugriffslatenz auf den Speicher. Die Konfiguration, die dieselben Daten in die mehreren Adressen schreibt, erhöht somit eine Verarbeitungslast beim Schreiben von Daten.
-
In Hinblick auf die vorhergehenden Schwierigkeiten ist es eine Aufgabe der vorliegenden Erfindung, einen Prozessor und ein Speichermodul bereitzustellen, die jeweils eine Datenzuverlässigkeit sicherstellen und eine Verarbeitungslast beim Schreiben von Daten reduzieren.
-
Gemäß einem Aspekt der vorliegenden Erfindung weist ein Prozessor einen Speicher und einen Speichermanagementabschnitt auf. Der Speicher speichert Daten. Der Speichermanagementabschnitt (i) schreibt die Daten in eine erste Adresse und (ii) schreibt automatisch dieselben Daten in eine zweite Adresse, wenn eine Datenschreibanfrage auftritt. Die zweite Adresse unterscheidet sich von der ersten Adresse. In der oben beschriebenen Konfiguration teilt ein Abschnitt, der eine Datenschreibanfrage überträgt, dem Speichermanagementabschnitt die Datenschreibanfrage einmal mit und der Speichermanagementabschnitt kann die Daten automatisch in die mehreren Adressen schreiben. Diese Konfiguration kann somit eine Datenzuverlässigkeit sicherstellen und eine Verarbeitungslast beim Schreiben von Daten reduzieren.
-
Gemäß einem anderen Aspekt der vorliegenden Erfindung führt ein Speichermodul eine Datenkommunikation mit einem Prozessor aus, der einen Daten speichernden Speicher aufweist. Das Speichermodul schreibt die Daten in den Speicher. Das Speichermodul weist einen Speichermanagementabschnitt auf. Der Speichermanagementabschnitt (i) schreibt die Daten in eine erste Adresse und (ii) schreibt dieselben Daten automatisch in eine zweite Adresse, wenn eine Datenschreibanfrage auftritt. Die zweite Adresse unterscheidet sich von der ersten Adresse. In der oben beschriebenen Konfiguration teilt ein Abschnitt, der eine Datenschreibanfrage überträgt, dem Speichermanagementabschnitt die Datenschreibanfrage einmal mit und der Speichermanagementabschnitt kann die Daten automatisch in die mehreren Adressen schreiben. Diese Konfiguration kann somit eine Datenzuverlässigkeit sicherstellen und eine Verarbeitungslast beim Schreiben von Daten reduzieren.
-
Die obigen und andere Objekte, Merkmale und Vorteile der vorliegenden Erfindung werden durch die folgende detaillierte Beschreibung unter Bezugnahme auf die beigefügten Figuren verdeutlicht. Es zeigen:
- 1 ein Diagramm, das funktionale Blöcke gemäß einer ersten Ausführungsform zeigt;
- 2 ein Diagramm, das einen Vorgang zum Schreiben von Daten in einen Speicher zeigt;
- 3 ein Diagramm, das einen anderen Vorgang zum Schreiben von Daten in den Speicher zeigt; und
- 4 ein Diagramm, das funktionale Blöcke gemäß einer zweiten Ausführungsform zeigt.
-
Nachfolgend werden Ausführungsformen der vorliegenden Erfindung mit Bezug auf die Figuren beschrieben. In den Ausführungsformen wird gleichen oder ähnlichen Abschnitten jeweils dasselbe oder ein ähnliches Bezugszeichen zugewiesen und deren wiederholende Beschreibung kann weggelassen werden. In der zweiten Ausführungsform kann in dem Fall, in dem nur ein Teil einer Konfiguration beschrieben wird, die vorhergehend beschriebene Ausführungsform auf den anderen Teil der Konfiguration angewendet werden.
-
(Erste Ausführungsform)
-
Nachfolgend wird eine erste Ausführungsform der vorliegenden Erfindung mit Bezug auf 1 bis 3 beschrieben. Eine Mikrocontrollereinheit 1 ist durch einen Prozessor bereitgestellt, in dem ein Computersystem auf einem integrierten Schaltkreis integriert ist. Die Mikrocontrollereinheit 1 kann auf einer elektronischen Steuervorrichtung bzw. einem elektronischen Steuergerät in einem Fahrzeug angebracht sein. Nachfolgend wird die Mikrocontrollereinheit 1 als die MCU 1 bezeichnet. Die MCU 1 weist einen Kern 2, einen Speichermanagementabschnitt 3, einen Adressfestlegabschnitt 4 und einen Speicher 5 auf.
-
Eine Datenschreibanfrage an den Speicher 5 kann während einer Ausführung eines im Kern 2 gespeicherten Programms auftreten. In diesem Fall teilt der Kern 2 dem Speichermanagementabschnitt 3 eine Schreibanfrage mit. Die Schreibanfrage ermöglicht es dem Speichermanagementabschnitt 3, Schreibobjektdaten und eine Schreibadresse, in die die Schreibobjektdaten geschrieben werden sollen, zu bestimmen bzw. zu erkennen. Der Adressfestlegabschnitt 4 weist einen Objektadress-Festlegabschnitt 6 und einen Spiegeladress-Festlegabschnitt 7 auf. Der Objektadress-Festlegabschnitt 6 entspricht einem ersten Adressfestlegabschnitt. Der Spiegeladress-Festlegabschnitt 7 entspricht einem zweiten Adressfestlegabschnitt. Der Objektadress-Festlegabschnitt 6 legt eine beliebige Adresse des Speichers 5 als eine Objektadresse fest. Der Spiegeladress-Festlegabschnitt 7 legt eine beliebige Anzahl von Spiegeladressen fest. Die Spiegeladressen entsprechen jeweils der Objektadresse. Das heißt, der Spiegeladress-Festlegabschnitt 7 ist imstande, die Spiegeladressen festzulegen, die jeweils einer Objektadresse entsprechen. Die Anzahl der Spiegeladressen kann beliebig festlegt werden. Der Adressfestlegabschnitt 4 teilt dem Speichermanagementabschnitt 3 eine Festleginformation mit. Die Festleginformation ermöglicht es dem Speichermanagementabschnitt 3, eine Übereinstimmung der Objektadresse mit der Spiegeladresse zu bestimmen.
-
Wenn der Kern 2 dem Speichermanagementabschnitt 3 die Schreibanfrage mitteilt, bestimmt der Speichermanagementabschnitt 3 die Schreibadresse auf Grundlage der Schreibanfrage. Der Speichermanagementabschnitt 3 sucht die bestimmte Schreibadresse in einer Gruppe der Objektadressen, die in der durch den Adressfestlegabschnitt 4 mitgeteilten Festleginformation gespeichert ist. Wenn die der Schreibadresse entsprechende Objektadresse in der durch den Adressfestlegabschnitt 4 mitgeteilten Festleginformation gespeichert ist, bestimmt der Speichermanagementabschnitt 3 ferner die der Objektadresse entsprechenden Spiegeladresse. Der Speichermanagementabschnitt 3 teilt dem Speicher 5 eine Schreibanweisung mit und der Speichermanagementabschnitt 3 schreibt dann die Daten in die Schreibadresse und die Spiegeladresse. In diesem Fall ermöglicht es die Schreibanweisung dem Speicher 5, die Daten, die Schreibadresse und die Spiegeladresse zu bestimmen. Wenn die der Schreibadresse entsprechende Objektadresse nicht in der durch den Adressfestlegabschnitt 4 mitgeteilten Festleginformation gespeichert ist, teilt der Speichermanagementabschnitt 3 dem Speicher 5 eine Schreibanweisung mit, und der Speichermanagementabschnitt 3 schreibt die Daten nur in die Schreibadresse. In diesem Fall ermöglicht es die Schreibanweisung dem Speicher 5, die Daten und die Schreibadresse zu bestimmen.
-
Der Adressfestlegabschnitt 4 kann, wie in 2 und 3 gezeigt, 0x0100 bis 0x0200 als die Gruppe der Objektadressen und 0x1000 bis 0x1100 und 0x0000 bis 0x0100 als eine Gruppe der Spiegeladressen festlegen. Es kann, wie in 2 gezeigt, angenommen werden, dass der Kern 2 dem Speichermanagementabschnitt 3 eine Schreibanfrage mitteilt, die es dem Speichermanagementabschnitt 3 ermöglicht, 0x0011 als die Daten und 0x0123 als die Schreibadresse zu bestimmen. In diesem Fall ist die der Schreibadresse entsprechende Objektadresse in der durch den Adressfestlegabschnitt 4 mitgeteilten Festleginformation gespeichert. In dieser Konfiguration bestimmt der Speichermanagementabschnitt 3 0x1023 und 0x0023 als die Spiegeladressen, die der Schreibadresse von 0x0123 entsprechen. Der Speichermanagementabschnitt 3 schreibt die Daten von 0x0011 in die Adressen von 0x0123, 0x1023 und 0x0023. Im Fall von 2 werden die Daten in zwei Spiegeladressen geschrieben. Alternativ können die Daten in eine Spiegeladresse oder in drei oder mehr Spiegeladressen geschrieben werden.
-
Es ist, wie in 3 gezeigt, anzunehmen, dass der Kern 2 dem Speichermanagementabschnitt 3 eine Schreibanfrage mitteilt, die es dem Speichermanagementabschnitt 3 ermöglicht, 0x0111 als die Daten und 0x1111 als die Schreibadresse zu bestimmen. In diesem Fall wird die der Schreibadresse entsprechende Objektadresse nicht in der durch den Adressfestlegabschnitt 4 mitgeteilten Festleginformation gespeichert. In dieser Konfiguration schreibt der Speichermanagementabschnitt 3 die Daten von 0x0111 nur in die Adresse von 0x1111.
-
Ein Zeitpunkt, an dem der Kern 2 dem Speichermanagementabschnitt 3 die Schreibanfrage mitteilt, und ein Zeitpunkt, an dem der Adressfestlegabschnitt 4 dem Speichermanagementabschnitt 3 die Festleginformation mitteilt, sind nicht begrenzt bzw. können unterschiedlich sein. Der Kern 2 teilt dem Speichermanagementabschnitt 3 die Schreibanfrage beispielsweise mit, nachdem der Adressfestlegabschnitt 4 dem Speichermanagementabschnitt 3 die Festleginformation mitteilt. Der Speichermanagementabschnitt 3 kann die Schreibadresse bestimmen und dann die bestimmte Schreibadresse in der Gruppe der Objektadressen suchen, die in der mittgeteilten Festleginformation gespeichert ist. Alternativ kann der Speichermanagementabschnitt 3 die neueste bzw. letzte Festleginformation durch Anfragen der Mitteilung der neuesten Festleginformation an den Adressfestlegabschnitt 4 erhalten. In diesem Fall kann der Speichermanagementabschnitt 3 die Schreibadresse bestimmen und dann die bestimmte Schreibadresse in der Gruppe der Objektadressen suchen, die in der neuesten Festleginformation gespeichert ist.
-
Die Konfiguration gemäß der oben beschriebenen ersten Ausführungsform kann die folgenden Vorteile bereitstellen. Die MCU 1 weist den Speichermanagementabschnitt 3 auf. Der Kern 2 teilt dem Speichermanagementabschnitt 3 die Schreibanfrage mit. Wenn die der Schreibadresse entsprechende Spiegeladresse dem Speichermanagementabschnitt 3 mitgeteilt wird, schreibt der Speichermanagementabschnitt 3 die Schreibobjektdaten in die Schreibadresse des Speichers 5 und schreibt automatisch die Daten, die dieselben wie die Schreibobjektdaten sind, in die Spiegeladresse des Speichers 5. Der Kern 2 teilt dem Speichermanagementabschnitt 3 die Schreibanfrage einmal mit und der Speichermanagementabschnitt 3 kann die Schreibobjektdaten automatisch in die mehreren Adressen schreiben. Diese Konfiguration kann somit eine Datenzuverlässigkeit sicherstellen und eine Verarbeitungslast beim Schreiben der Daten reduzieren.
-
Der Objektadress-Festlegabschnitt 6, der die Objektadresse festlegt, ist bereitgestellt. Die Objektadresse, die die Datenzuverlässigkeit sicherstellen soll, kann beliebig festlegt werden. Der Spiegeladress-Festlegabschnitt 7, der die Spiegeladresse festlegt, ist bereitgestellt. Die Spiegeladresse kann somit beliebig festgelegt werden, und die beliebige Anzahl von Spiegeladressen kann festlegt werden.
-
(Zweite Ausführungsform)
-
Eine zweite Ausführungsform der vorliegenden Erfindung wird mit Bezug auf 4 beschrieben. In der ersten Ausführungsform ist der Speichermanagementabschnitt 3 in der MCU 1 vorhanden. In der zweiten Ausführungsform ist ein Speichermanagementabschnitt 18 außerhalb einer MCU 11 angeordnet.
-
Die MCU 11 weist einen Kern 12, einen Adressfestlegabschnitt 13 und einen Speicher 14 auf. Ein Speichermodul 15 ist von der MCU 11 getrennt und das Speichermodul 15 und die MCU 11 führen eine Datenkommunikation miteinander aus. Der Adressfestlegabschnitt 13 weist einen Objektadress-Festlegabschnitt 16 und einen Spiegeladress-Festlegabschnitt 17 auf. Der Objektadress-Festlegabschnitt 16 entspricht einem ersten Adressfestlegabschnitt. Der Spiegeladress-Festlegabschnitt 17 entspricht einem zweiten Adressfestlegabschnitt. Der Objektadress-Festlegabschnitt 16 legt eine beliebige Adresse des Speichers 14 als eine Objektadresse fest. Der Spiegeladress-Festlegabschnitt 7 legt eine beliebige Anzahl von Spiegeladressen fest. Die Spiegeladressen entsprechen jeweils der Objektadresse.
-
Das Speichermodul 15 weist einen Speichermanagementabschnitt 18 auf. Der Speichermanagementabschnitt 18 funktioniert ähnlich dem in der ersten Ausführungsform beschriebenen Speichermanagementabschnitt 3. Wenn der Kern 12 dem Speichermanagementabschnitt 18 eine Schreibanfrage mitteilt, bestimmt der Speichermanagementabschnitt 18 eine Schreibadresse auf Grundlage der Schreibanfrage. Der Speichermanagementabschnitt 18 sucht die bestimmte Schreibadresse in einer Gruppe von Objektadressen, die in einer durch den Adressfestlegabschnitt 13 mitgeteilten Festleginformation gespeichert ist. Wenn die der Schreibadresse entsprechende Objektadresse in der durch den Adressfestlegabschnitt 13 mitgeteilten Festleginformation gespeichert ist, bestimmt der Speichermanagementabschnitt 18 die der Objektadresse entsprechende Spiegeladresse. Der Speichermanagementabschnitt 18 teilt dem Speicher 14 eine Schreibanweisung mit und der Speichermanagementabschnitt 18 schreibt dann die Daten in die Schreibadresse und die Spiegeladresse. In diesem Fall ermöglicht es die Schreibanweisung dem Speicher 14, die Daten, die Schreibadresse und die Spiegeladresse zu bestimmen. Wenn die der Schreibadresse entsprechende Objektadresse nicht in der durch den Adressfestlegabschnitt 13 mitgeteilten Festleginformation gespeichert ist, teilt der Speichermanagementabschnitt 18 dem Speicher 14 eine Schreibanweisung mit und der Speichermanagementabschnitt 18 schreibt dann die Daten nur in die Schreibadresse. In diesem Fall ermöglicht es die Schreibanweisung dem Speicher 14, die Daten und die Schreibadresse zu bestimmen. Die Konfiguration gemäß der zweiten Ausführungsform, die den Speichermanagementabschnitt 18 außerhalb der MCU 11 anordnet, kann die gleichen Vorteile wie die Konfiguration gemäß der ersten Ausführungsform bereitstellen.
-
(Andere Ausführungsform)
-
Die oben beschriebene Konfiguration kann in einem Prozessor verwendet werden, der auf einer elektronischen Steuervorrichtung angebracht ist, ist aber nicht darauf begrenzt. Alternativ kann die oben beschriebene Konfiguration in einem Prozessor verwendet werden, der auf einer elektronischen Steuervorrichtung mit Ausnahme der elektronischen Steuervorrichtung in einem Fahrzeug angebracht ist. Die MCU kann einen Kern aufweisen, ist aber nicht darauf begrenzt. Alternativ kann die MCU mehrere Kerne aufweisen.
-
Während die Erfindung mit Bezug auf bevorzugte Ausführungsformen davon beschrieben wurde, ist es zu verstehen, dass die Erfindung nicht auf die bevorzugten Ausführungsformen und Konstruktionen begrenzt ist. Die Erfindung ist dafür vorgesehen, verschiedene Modifikationen und äquivalente Anordnungen abzudecken. Zusätzlich zu den verschiedenen Kombinationen und Konfigurationen, die zu bevorzugen sind, sind andere Kombinationen und Konfigurationen, die mehrere, weniger oder nur ein einziges Element aufweisen, auch innerhalb des Geistes und des Umfangs der Erfindung.
-
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
-
- JP 2008158804 A [0002]
- US 2008155136 A [0002]