-
Die
vorliegende Erfindung bezieht sich auf einen Mikrocomputer, der
einen PWM-Zeitgeber hat.
-
Ein
PWM-(das heißt Pulsbreitenmodulations-(englisch: pulse
width modulation))Verfahren ist ein Modulationsverfahren zum Modulieren
und Ändern eines Tastverhältnisses einer Pulswelle.
Bei einem Mikrocomputer (zum Beispiel einer Mikrosteuerung, einem
Mikroprozessor oder dergleichen) erzeugt ein PWM-Zeitgeber eine
PWM-Pulswelle.
-
Das
Patentdokument Nr. 1 lehrt ein Verfahren, dass ein Inhalt von Daten
zum Einstellen eines Tastverhältnisses durch eine Hardware
derart überwacht wird, dass ein aktiver Pegel des PWM-Signals gesteuert
wird. Das heißt, die Last einer Software wird reduziert.
Dieses Verfahren zeigt, dass das Tastverhältnis durch einen
Wert in einem Einstellregister für eine untere Grenze definiert
wird, wenn ein Wert, der in einem Vergleichsregister eingestellt
ist, kleiner als der Wert in dem Einstellregister für eine
untere Grenze ist, und das Tastverhältnis durch einen Wert in
einem Einstellregister für eine obere Grenze definiert
wird, wenn der Wert, der in dem Vergleichsregister eingestellt ist,
größer als der Wert in dem Einstellregister für
eine obere Grenze ist. Das Tastverhältnis wird somit als
ein Tastverhältnissignal ausgegeben. In diesem Fall ist
es nicht notwendig, unter Verwendung der Software zu überwachen,
da das Tastverhältnis unter Verwendung der Hardware überwacht wird.
-
Das
Patentdokument Nr. 2 lehrt ferner einen Pulsbreitenmodulator zum
Ausgeben eines PWM-Signals, das mit einem Bezugstakt synchronisiert
ist.
- [Patentdokument Nr. 1] JP-A-H06-083985
- [Patentdokument Nr. 2] JP-A-2003-11410
-
Ein
peripheres Funktionselement (das heißt ein peripheres Schaltungsmodul)
ist an einem Mikrocomputer, wie zum Beispiel einem allgemeinen Zeitgeber,
der einen PWM-Zeitgeber, eine SCI (das heißt eine serielle
Kommunikationsschnittstelle (englisch: serial communication interface))
und ein CAN (= controller area network = Steuerungsbereichsnetz)
aufweist, angebracht. Bei dem peripheren Funktionselement ist es
notwendig, einen bestimmten Wert in einem Steuerungsregister, das
das periphere Funktionselement hat, durch Schreiben von einer zentralen Verarbeitungseinheit
(das heißt CPU (= central processing unit)) einzustellen.
Die vorliegenden Erfinder haben über das vorhergehende
Verfahren Studien unternommen. Die vorliegenden Erfinder haben herausgefunden,
dass ein Busverkehr in der CPU überlastet ist, derart,
dass eine zeitliche Ausnahme (englisch: Trap) einer Schreibfunktion
in der CPU auftreten kann. Wenn die Ausnahme aufgetreten ist, kann die
CPU die PWM nicht ausreichend steuern, derart, dass ein normaler
PWM-Puls nicht ausgegeben wird. Es wird ferner in Betracht gezogen,
dass eine Unterbrechung der CPU durchgeführt wird, um den
Tastwert zu aktualisieren. Die vorliegenden Erfinder haben jedoch
herausgefunden, dass der normale PWM-Puls möglicherweise
nicht ausgegeben werden kann, wenn eine Störung eines Unterbrechungssignals,
die durch einen Softwarefehler oder einen Ausfall der Hardware verursacht
wird, auftritt. Dies liefert eine Reduzierung einer Zuverlässigkeit
eines Systems.
-
Angesichts
des im Vorhergehenden beschriebenen Problems besteht eine Aufgabe
der vorliegenden Offenbarung darin, einen Mikrocomputer zu schaffen,
der einen PWM-Zeitgeber hat. Bei dem Mikrocomputer ist eine Zuverlässigkeit
einer Erzeugung eines PWM-Pulses verbessert.
-
Gemäß einem
Beispielaspekt der vorliegenden Offenbarung weist ein Mikrocomputer
eine CPU zum Ausführen eines vorbestimmten Berechnungsverfahrens
und einen PWM-Zeitgeber zum Erzeugen eines PWM-Pulses auf. Der PWM-Zeitgeber
weist einen RAM zum Speichern eines Tastwerts eines PWM-Pulses und
eine PWM-Steuerung zum Erzeugen des PWM-Pulses auf. Die PWM-Steuerung
weist einen PWM-Zähler zum Hochzählen von einem
vorbestimmten Wert als ein Anfangswert auf. Eine Einheitswellenform
des PWM-Pulses wird basierend auf einem Vergleich zwischen dem Tastwert
in dem RAM und einem Ausgangswert des PWM-Zählers erzeugt. Ein
anderer Tastwert bei jedem Vergleich wird von dem RAM bei jedem
Vergleich ausgegeben, ohne die CPU in Funktion zu setzen, derart,
dass der Tastwert des PWM-Pulses auf eine Art und Weise einer Zeitfolge
geändert wird.
-
Wenn
der PWM-Puls erzeugt wird, wird somit ein Einfluss der Überlast
des Busverkehrs in der CPU vermieden, derart, dass eine zeitliche
Ausnahme einer Schreibfunktion in der CPU vermieden wird. Bei dem
Mikrocomputer ist dementsprechend die Zuverlässigkeit einer
Erzeugung des PWM-Pulses verbessert.
-
Entsprechend
einem zweiten Aspekt der vorliegenden Offenbarung weist ein Mikrocomputer
eine CPU zum Ausführen eines vorbestimmten Berechnungsverfahrens
und einen PWM-Zeitgeber zum Erzeugen eines PWM-Pulses auf. Der PWM-Zeitgeber weist
einen RAM zum Speichern eines Tastwerts eines PWM-Pulses, eine Mehrzahl
von PWM-Steuerungen zum Erzeugen des PWM-Pulses und einen Anschluss
zum Ausgeben des PWM-Pulses, der in den mehreren PWM-Steuerungen
erzeugt wird, zu einer externen Schaltung auf. Jede PWM-Steuerung weist
einen PWM-Zähler zum Hochzählen von einem vorbestimmten
Wert als ein Anfangswert auf. Eine Einheitswellenform des PWM-Pulses
wird basierend auf einem Vergleich zwischen einem Tastwert in dem RAM
und einem Ausgangswerts des PWM-Zählers erzeugt. Ein anderer
Tastwert bei jedem Vergleich wird von dem RAM, ohne die CPU in Funktion
zu setzen, ausgegeben, derart, dass der Tastwert des PWM-Pulses,
der zu der externen Schaltung auszugeben ist, auf eine Art und Weise
einer Zeitfolge geändert wird.
-
Wenn
der PWM-Puls erzeugt wird, wird somit ein Einfluss der Überlast
des Busverkehrs in der CPU vermieden, derart, dass eine zeitliche
Ausnahme einer Schreibfunktion in der CPU vermieden wird. Bei dem
Mikrocomputer ist dementsprechend die Zuverlässigkeit einer
Erzeugung des PWM-Pulses verbessert.
-
Die
vorhergehende und andere Aufgaben, Merkmale und Vorteile der vorliegenden
Erfindung sind aus der folgenden detaillierten Beschreibung, die
unter Bezugnahme auf die begleitenden Zeichnungen vorgenommen ist,
offensichtlicher. Es zeigen:
-
1 ein
Blockdiagramm, das einen Hauptteil eines Mikrocomputers gemäß der
vorliegenden Erfindung zeigt;
-
2 ein
Blockdiagramm, das ein Detail des Hauptteils des Mikrocomputers
zeigt;
-
3 ein
Blockdiagramm, das einen Zuteiler in 1 und 2 zeigt;
-
4 ein
Zeitdiagramm, das einen Betrieb des Hauptteils des Mikrocomputers
zeigt;
-
5 ein
Zeitdiagramm, das einen Betrieb des Hauptteils des Mikrocomputers
zeigt;
-
6 ein
Diagramm, das eine Betriebswellenform des Hauptteils des Mikrocomputers
zeigt;
-
7 ein
Flussdiagramm, das einen Betrieb des Hauptteils des Mikrocomputers
zeigt;
-
8 ein
Blockdiagramm, das einen anderen Hauptteil des Mikrocomputers zeigt;
-
9 ein
Blockdiagramm, das ein Detail des anderen Hauptteils des Mikrocomputers
zeigt;
-
10 ein
Blockdiagramm, das einen Hauptteil eines Benutzersystems, das den
vorhergehenden Mikrocomputer hat, zeigt;
-
11 ein
Blockdiagramm, das einen Hauptteil eines Mikrocomputers als einen
Vergleich des Hauptteils des Mikrocomputers zeigt; und
-
12 ein
Zeitdiagramm, das einen Betriebs des Hauptteils in 11 zeigt.
-
Exemplarische
Ausführungsbeispiele der vorliegenden Erfindung sind wie
folgt erläutert.
-
9 zeigt
eine exemplarische Struktur eines Mikrocomputers gemäß der
vorliegenden Erfindung.
-
Der
in 9 gezeigte Mikrocomputer 100 kann an
einem Halbleitersubstrat, wie zum Beispiel einem Einkristall-Silizium-Substrat,
durch ein herkömmliches Herstellungsverfahren einer integrierten Halbleiterschaltung
gebildet sein, obwohl ein Herstellungsverfahren nicht besonders
begrenzt ist. Der Mikrocomputer 100 weist einen eingebauten
ROM (das heißt einen Nur-Lese-Speicher (englisch: read
only memory)) 10, einen eingebauten RAM (das heißt
einen Zufallszugriffsspeicher (englisch: random access memory)) 12,
eine Unterbrechungssteuerung (das heißt INTC (= interruption
controller) 13, einen ROM-Cache-Speicher 14, eine
RAM-Schnittstelle 15, eine CPU (das heißt eine
zentrale Verarbeitungseinheit (englisch: central processing unit)) 16,
Busbrücken (BBRUDG) 17, 18, 19,
eine Direktspeicherzugriffssteuerung (DMAC; DMAC = direct memory access
controller) 20, einen A/D-Wandler (ADC; ADC = A/D converter) 21,
ein Steuerungsbereichsnetz (CAN; CAN = contoller area network) 22,
einen Taktoszillator (CPG; CPG = clock oscillator) 23,
eine Multifunktionszeitgeberpulseinheit (MTU; MTU = multi function
timer pulse unit) 24, einen Neuladungsmustererzeugungszeitgeber
(RPGT; RGPT = reload Pattern generation timer) 25 und ein
Duplikationssystemdiagnoseelement 31 auf, obwohl Elemente
in dem Mikrocomputer 100 nicht besonders begrenzt sind.
-
Der
eingebaute ROM 10 speichert ein Programm, das in der CPU 16 auszuführen
ist. Der eingebaute ROM 10 ist aus einem Flash-Speicher
gebildet. Der ROM-Cache-Speicher 14 ist mit einem CPU-Bus
(Abrufbus) BUS1, einem CPU-Bus (Speicher zugriffsbus) BUS2 und einem
Innenbus BUS3 gekoppelt. Der ROM-Cache-Speicher 14 speichert Daten,
die häufig verwendet werden, derart, dass die Zahl von
Malen, um auf den eingebauten ROM 10 zuzugreifen, reduziert
ist. Die CPU 16 ist fähig, ein vorbestimmtes Verfahren
mit einem Durchführen des Programms, das in dem eingebauten
ROM 10 gespeichert ist, auszuführen. Der eingebaute
RAM 12 ist mit den CPU-Bussen BUS1, BUS2 und dem Innenbus
BUS3 über die RAM-Schnittstelle 15 gekoppelt.
Der eingebaute RAM 12 funktioniert als ein Arbeitsbereich
des Verarbeitens in der CPU 16. Die Unterbrechungsteuerung 13 ist
angeordnet, um die CPU 16 von außen zu unterbrechen.
Die Unterbrechungssteuerung 13 steuert basierend auf einer
NMI (das heißt einer nicht maskierbaren Unterbrechung (englisch:
non-maskable interrupt)) und einer IRQ (das heißt einer
Unterbrechungsanfrage (englisch: interrupt request)), die über
einen externen Anschluss und ein Tor 11 (englisch: Port),
das mit dem externen Anschluss verbunden ist, eingegeben werden,
die Unterbrechung der CPU 16. Die CPU-Busse BUS1, BUS2
sind mit dem Innenbus BUS3 über die Busbrücke
(BBRDG) 17 gekoppelt. Der Innenbus BUS3 ist über
eine Busbrücke (BBRDG) 18 mit einem Peripheriebus
BUS4 gekoppelt. Der Innenbus BUS3 ist ferner mit einer DMAC 20 gekoppelt.
Die DMAC 20 überträgt zwischen Speichern
Daten, ohne die CPU 16 in Funktion zu setzen. Der Peripheriebus BUS4
ist mit einem ADC 21, einer RCAN-TL 22, einem
CPG 28, einer MTU 24 und einem RPGT 25 gekoppelt.
Ein analoges Signal wird über den externen Anschluss und
das Tor 21, das mit dem externen Anschluss verbunden ist,
in den ADC 21 eingegeben, und der ADC 21 wandelt
das analoge Signal in ein digitales Signal. Das CAN 22 kommuniziert
verschiedene Informationen in einem Steuerungsbereichsnetz über
einen externen Anschluss und ein Tor 27, das mit dem externen
Anschluss verbunden ist. Der CPG 23 ist über ein
Tor 28 und einen externen Anschluss, der mit dem Tor 28 verbunden
ist, mit einem Quarzoszillator gekoppelt. Der CPG 23 erzeugt
ein Taktsignal, das eine vorbestimmte Frequenz hat. Die MTU 24 gibt
verschiedene Zeitgeberpulse über ein Tor 29 und
einen externen Anschluss, der mit dem Tor 29 verbunden
ist, ein und aus. Der RPGT 25 ist ein PWM-Zeitgeber zum
periodischen Ändern eines Tastens. Der RPGT 25 ändert
insbesondere das Tasten der PWM-Pulswellenform, die über
ein Tor 30 und einen externen Anschluss, der mit dem Tor 30 verbunden
ist, periodisch auf eine chronologische Art und Weise durch Einstellen
und Verwenden eines bestimmten Tastwertmusters in einem später
beschriebenen Tastwert-RAM zu einem Äußeren auszugeben ist.
Die MTU 24 und der RPGT 25 sind über
die Busbrücke (BBRDG) 19 mit dem Peripheriebus
BUS4 gekoppelt. Obwohl es keine Begrenzung gibt, ist beispielsweise
eine Taktfrequenz des Peripheriebusses BUS4 40 MHz. Die MTU 24 und
der RPGT 25 funktionieren mit einer Taktfrequenz von 80
MHz, um beispielsweise die Auflösung zu erhöhen.
Bei der Busbrücke 19 wird dementsprechend eine
Frequenzwandlung durchgeführt, um einen Buszyklus anzupassen.
-
Das
Duplikationssystemdiagnoseelement 31 fährt eine
Duplikationssystemdiagnose derart aus, dass eine Verbesserung einer
Zuverlässigkeit eines Verarbeitens in dem Mikrocomputer 100 erhalten wird.
Das Duplikationssystemdiagnoseelement 31 weist Funktionsmodule,
die die gleiche Funktion wie und entsprechend zu dem eingebauten
ROM 10, dem eingebauten RAM 12, der Unterbrechungssteuerung 13,
dem ROM-Cache-Speicher 14, der RAM-Schnittstelle 15,
der CPU 16, den Busbrücken 17, 18, 19 und
der DMAC 20 haben, auf, derart, dass das Duplikationssystemdiagnoseelement 31 einen eingebauten
ROM 10', einen eingebauten RAM 12', eine Unterbrechungssteuerung 13',
einen ROM-Cache-Speicher 14', eine RAM-Schnittstelle 15',
eine CPU 16', Busbrücken 17', 18', 19' und
eine DMAC 20' aufweist. Um ferner die Duplikationssystemdiagnose
auszuführen, weist das Duplikationssystemdiagnoseelement 31 einen
Vergleicher 33 zum Vergleichen von Daten in den CPU-Bussen
BUS1, BUS2, dem inneren Bus BUS3 und dem Peripheriebus BUS4 auf.
Der Vergleicher 33 weist vergleichende CPU-Bus-Elemente 331, 332,
ein vergleichendes Element 333 für eine I-Busbrücke,
die RAM-Schnittstelle und den ROM-Cache-Speicher, ein vergleichendes
DMAC-Element 334 und ein vergleichendes Busbrückenelement 335 auf.
Datenvergleichsresultate des Vergleichers 33 können über
ein Tor 32 zu einem Äußeren ausgegeben
werden, derart, dass die Resultate auf einem Benutzersystem, in
dem der Mikrocomputer angebracht ist, widergespiegelt werden. Wenn
sich die Datenvergleichsresultate des Vergleichers 33 vollständig
miteinander decken, führt der Mikrocomputer 100 das
Verarbeiten ordnungsgemäß aus. Wenn sich jedoch
die Datenvergleichsresultate des Vergleichers 33 nicht
vollständig miteinander decken, kann das Verarbeiten in
dem Mikrocomputer 10 einen Fehler aufweisen. Wenn der Fehler
erfasst wird, wird der Mikrocomputer 100 gesteuert, um
den Betrieb des Mikrocomputers zu einem normalen Betrieb zu schalten.
Der Mikrocomputer wird beispielsweise neu eingestellt, eine Unter brechungsanfrage wird
in die CPU eingegeben oder eine Neueinstellungsanweisung wird durchgeführt,
wenn der Fehler mehr als eine vorbestimmte Zahl von Malen auftritt. Durch
Ausführen der Duplikationssystemdiagnose wird die Zuverlässigkeit
des Benutzersystems verbessert.
-
1 zeigt
einen Hauptteil des RPGT 25 in dem Mikrocomputer 100.
Der RPGT 25 weist einen Tastwert-RAM 251, einen
Zuteiler 252, eine Busschnittstelle 235, eine
PWM-Steuerung (CH1) 254 und eine weitere PWM-Steuerung
(CH2) 255 auf, obwohl Elemente in dem RPGT 25 nicht
begrenzt sind. Ein bestimmtes Tastwertmuster wird in dem Tastwert-RAM 251 eingestellt.
Wie später beschrieben ist, weisen die PWM-Steuerung 254 und
die andere PWM-Steuerung 255 einen PWM-Zähler
zum Hochzählen von einem vorbestimmten Einstellungswert als
ein Anfangswert jeweils auf. Die PWM-Steuerung 254 und
die andere PWM-Steuerung 255 weisen jeweils einen oder
mehrere externe Anschlüsse 258 zum Ausgeben des
PWM-Pulses zu einem Äußeren des Mikrocomputers
auf. Die Einheitswellenform des PWM-Pulses wird basierend auf der
Vergleichsübereinstimmung zwischen dem Tastwert in dem
Tastwert-RAM 251 und dem Ausgangswert des PWM-Zählers
erzeugt. Ein neuer Tastwert wird von dem Tastwert-RAM 251 bei
jeder Vergleichsübereinstimmung heruntergeladen, ohne die
CPU 16 in Funktion zu setzen. Eine Zeitreihenvariation
des Tastwerts des PWM Pulses kann somit durchgeführt werden.
Bei dem in 1 gezeigten exemplarischen Aufbau
werden, da die PWM-Steuerung zwei Kanäle (CH1, CH2) liefern,
zwei Typen von PWM-Ausgangssignalen (RPGTOUT1, RPGTOUT2), die fähig
sind, eine Zeitreihenvariation des Tastwerts durchzuführen,
erhalten. Die Busschnittstelle 235 ist mit dem Peripheriebus
BUS4 über die Busbrücke 19 gekoppelt. Verschiedene
Informationen zum Steuern des Betriebs des RPGT 25 werden über
die Busbrücke 19 in den RPGT 25 eingegeben.
Der Zuteiler 252 fahrt eine Anpassung durch, wenn die RAM-Zugriffsanfragen von
der Busschnittstelle 253 und den PWM-Steuerungen 254, 255 miteinander
konkurrieren. Entsprechend dem Zugriffssignal einer Quelle einer
Anfrage, die durch den Zuteiler 252 erkannt wird, kann
das Tastwertmuster in den Tastwert-RAM 251 geschrieben
werden, und der Tastwert kann aus dem Tastwert-RAM 251 ausgelesen
werden.
-
2 zeigt
ferner einen detaillierten exemplarischen Aufbau des RPGT 25.
-
Adressinformationen,
ein Lesesignal, ein Schreibsignal und ein Modulauswahlsignal werden über
den Peripheriebus BUS4 und die Brücke 19 in die
Busschnittstelle 253 eingegeben. Die Busschnittstelle 253 kann
ferner über die Brücke 19 bestimmte Daten
zu dem Peripheriebus BUS4 ausgeben. Wenn die Buszugriffserkennung
von „0” von dem Zuteiler 253 zu der Busschnittstelle 253 entsprechend
der RAM-Zugriffsanfrage von „0” von der Busschnittstelle 253 eingegeben
wird, wird das Zugriffssignal von „0” für
den Tastwert-RAM 251 von der Busschnittstelle 253 zu
dem Zuteiler 252 ausgegeben. Ein Zugriff von der Busschnittstelle 253 auf
den Tast-RAM 251 kann somit erreicht werden. Während
des Zugriffs von der Busschnittstelle 253 auf den Tastwert-RAM 251 kann das
Tastwertmuster in dem Tastwert-RAM 251 geschrieben werden.
Die Schreibaufgabe des Tastwertmusters wird durch Steuern der CPU
durchgeführt, wenn der Mikrocomputer 100 initialisiert
wird. Wenn ferner die Buszugriffserkennung von „1” von
dem Zuteiler 252 zu der PWM-Steuerung 254 entsprechend der
RAM-Zugriffsanfrage von „1” von der PWM-Steuerung 254 eingegeben
wird, wird das Zugriffssignal von „1” für
den Tastwert-RAM 251 von der PWM-Steuerung 254 zu
dem Zuteiler 252 ausgegeben. Ein Zugriff von der PWM-Steuerung 254 auf
den Tastwert-RAM 251 kann somit erreicht werden. Während
des Zugriffs von der PWM-Steuerung 254 auf den Tastwert-RAM 251 wird
der Tastwert in dem Tastwert-RAM 251 in der PWM-Steuerung 254 gelesen. Wenn ähnlicherweise
die Buszugriffserkennung von „2” von dem Zuteiler 252 zu
der PWM-Steuerung 255 entsprechend der RAM-Zugriffsanfrage
von „2” von der PWM-Steuerung 255 eingegeben
wird, wird das Zugriffssignal von „2” für
den Tastwert-RAM 251 von der PWM-Steuerung 255 zu
dem Zuteiler 252 ausgegeben. Ein Zugriff von der PWM-Steuerung 255 auf den
Tastwert-RAM 251 kann somit erreicht werden. Während
des Zugriffs von der PWM-Steuerung 255 auf den Tastwert-RAM 251 wird
der Tastwert in dem Tastwert-RAM 251 in der PWM-Steuerung 255 gelesen.
-
Der
RPGT 25 weist ferner ein RPGT-Steuerungsregister RPCR,
einen Vorskalierer PRSCR, ein Vorskalierereinstellregister RPISR,
ein RPGT-Ereigniserzeugungserlaubnisregister RPICR und ein RPGT-Ereignisstatusregister
RPISR auf. Das RPGT-Steuerungsregister RPCR ist ein Register, das
fähig ist, Bits OP1, OP2 zum Anweisen eines Betriebsstarts
und eines Betriebsstops der PWM-Steuerungen 254, 255 abzuspeichern.
Wenn die CPU 16 einen logischen Wert „1” in
das Bit OP1 schreibt, wird die PWM-Steuerung 254 aktiviert.
Wenn die CPU 16 einen logischen Wert „1” in
das Bit OP2 schreibt, wird die PWM-Steuerung 255 aktiviert.
Wenn die CPU 16 einen logischen Wert „0” in
das Bit OP1 schreibt, stoppt die PWM-Steuerung 254 das
Funktionieren. Wenn die CPU 16 einen logischen Wert „0” in
das Bit OP2 schreibt, stoppt die PWM-Steuerung 255 das Funktionieren.
Das Ereigniserzeugungserlaubnisregister RPICR ist ein Register zum
Einstellen einer Erlaubnis und eines Verbots einer Zeigerunterbrechung für
eine obere Grenze von „1” und „2”,
einer Ereignisvergleichsunterbrechung von „1” und „2” und
eines A/D-Wandlungsaktivierungsauslösers von „1” und „2”.
Das RPGT-Ereignisstatusregister RPISR speichert die Zeigerunterbrechung
für eine obere Grenze von „1” und „2” und
die Ereignisvergleichsunterbrechung von „1” und „2”,
die aus den PWM-Steuerungen 254, 255 ausgegeben
werden. Durch Erhalten einer logischen UND-Operation zwischen dem
Ausgangssignal des Ereigniserzeugungserlaubnisregisters RPICR und
der Zeigerunterbrechung für eine obere Grenze von „1” und „2”,
der Ereignisvergleichsunterbrechung von „1” und „2” oder
dem A/D-Wandlungsaktivierungsauslöser von „1” und „2” werden
die Erlaubnis und das Verbot geschaltet.
-
Als
Nächstes ist die innere Struktur der PWM-Steuerungen 254, 255 erläutert.
Die PWM-Steuerungen 254, 255 haben hier die gleiche Struktur.
Dementsprechend ist lediglich die Struktur der PWM-Steuerung 254 erläutert.
Die detaillierte Beschreibung der PWM-Steuerung 255 ist
ausgelassen. Hier ist ein Element in der PWM-Steuerung 255, das
die gleiche Funktion hat, mit der gleichen Bezugsziffer wie ein
Element in der PWM-Steuerung 254 definiert. Das Element
wird mit Suffixen von „1” und „2” identifiziert,
die den Kanälen (CH1, CH2) entsprechen.
-
Die
PWM-Steuerung 254 weist ein Tastzeigerregister für
eine obere Grenze RPMPTR1, ein Tastzeigerregister RPCPTR1, ein Tastzeigerneuladungsregister
RPRPTR1, ein Tastpufferregister RPDTBR1, ein PWM-Periodenregister
RPPWCR1, einen PWM-Zähler RPTCNT1, ein Tastvergleichsregister
RPDTCR1, ein Ereignisvergleichsregister RPECR1, einen Ereigniszähler
RPECNT1, einen Vergleicher COMP1-1, einen weiteren Vergleicher COMP1-2,
einen weiteren Vergleicher COMP1-3, einen weiteren Vergleicher COMP1-4
und ein UND-Gatter UND1-1 auf.
-
Das
Tastzeigerregister für eine obere Grenze RPMPTR1 speichert
den oberen Grenzwert des Tastzeigerregisters RPCPTR1. Das Tastzeigerregister RPCPTR1
speichert den Zeiger, der eine Adresse zum Liefern einer Anweisung,
um den Tastwert von dem Tastwert-RAM 251 zu lesen, zeigt.
Basierend auf dem Zeiger wird das Adresssignal (das heißt
ein Zugriffssignal von „1”) des Tastwert-RAM 251 gebildet.
Eine Differenz zwischen dem Tastzeigerregister für eine
obere Grenze RPMPTR1 und dem Tastzeigerneuladungsregister RPRPTR1
entspricht der Zahl, die durch Subtrahieren von eins von der PWM-Pulszahl
in einem Zyklus der Ausgangswellenform erhalten wird. Die Differenz
zwischen dem Tastzeigerregister für eine obere Grenze RPMPTR1
und dem Tastzeigerneuladungsregister RPRPTR1 wird durch den Vergleicher
COMP1-1 erhalten. Basierend auf der Vergleichsübereinstimmung
zwischen dem Tastzeigerregister für eine obere Grenze RPMPTR1 und
dem Tastzeigerneuladungsregister RPRPTR1 wird der Einstellwert des
Tastzeigerneuladungsregisters RPRPTR1 neu geladen. Das Tastzeigerneuladungsregister
RPRPTR1 speichert den Neuladungswert des Tastzeigerregisters RPCPTR1.
Das Tastpufferregister RPDTBR1 speichert die Lesedaten (das heißt
den Tastwert) von dem Tastwert-RAM 251, die der Adresse,
die in dem Tastzeigerregister RPCPTR1 gezeigt ist, entsprechen.
Der in dem Tastpufferregister RPDTBR1 gespeicherte Wert liefert
einen neuen Tastwert des PWM-Pulses, der in der PWM-Steuerung 254 gebildet
wird. Der Ausgangswert des PWM-Periodenregisters RPPWCR1 und der
Ausgangswert des PWM-Zählers RPTCNT1 werden durch den Vergleicher
COMP1-2 verglichen. Basierend auf der Vergleichsübereinstimmung
zwischen dem Ausgangswert des PWM-Periodenregisters RPPWCR1 und
dem Ausgangssignal des PWM-Zählers RPTCNT1 nimmt die RAM-Zugriffsanfrage
von „1” einen hohen Pegel ein. Das Ausgangssignal
des Tastpufferregisters RPDTBR1 wird somit zu dem Tastvergleichsregister
RPDTCR1 über das UND-Gatter UND1-1 hochgeladen.
-
Eine
PWM-Zählerperiode wird in dem PWM-Periodenregister RPPWCR1
durch die CPU 16 eingestellt. Irgendein Wert kann als Anfangswert
in den PWM-Zähler RPTCNT1 geschrieben werden. Der PWM-Zähler
RPTCNT1 zählt von einem Einstel lungswert als ein Anfangswert
hoch. Der Ausgangswert des PWM-Zählers RPTCNT1 wird zu
dem Vergleicher COMP1-2 und dem Vergleicher COMP1-3 übertragen.
Der Vergleicher COMP1-2 vergleicht den Ausgangswert des PWM-Periodenregisters RPPWCR1
und den Ausgangswert des PWM-Zählers RPTCNT1, derart, dass
die RAM-Zugriffsanfrage von „1” einen hohen Pegel
gemäß der Vergleichsübereinstimmung einnimmt.
Der Ereigniszähler RPECNT1 zählt bei jeder Periode
des PWM-Zählers basierend auf dem Ausgangssignal des Vergleichers COMP1-2
hoch. Das Tastvergleichsregister RPDTCR1 speichert den aktuellen
Tastwert des PWM-Pulses. Der Wert von RPGTOUT von „1” nimmt
einen hohen Pegel ein, wenn der Wert des PWM-Zählers RPTCNT1
ein logischer Wert von „0” ist. Der Vergleicher
COMP1-3 vergleicht den Ausgangswert des PWM-Zählers RPTCNT1
und den Ausgangswert des Tastvergleichsregisters RPDTCR1. Der Wert
von RPGTOUT von „1” nimmt einen niedrigen Pegel
entsprechend der Vergleichsübereinstimmung zwischen dem
Ausgangswert des PWM-Zählers RPTCNT1 und dem Ausgangswert des
Tastvergleichsregisters RPDTCR1 ein. Das Ereignisvergleichsregister
RPECR1 speichert einen Ereignisauftrittszählwert. Der Vergleicher
COMP1-4 vergleicht den Ausgangswert des Ereignisvergleichsregisters
RPECR1 und den Ausgangswert des Ereigniszählers RPECNT1.
Wenn der Ereignisauftritt durch das RPGT-Ereigniserzeugungserlaubnisregister
RPICR erlaubt wird, behaupten sich der A/D-Wandlungsaktivierungsauslöser
von „1” und die Ereignisvergleichsunterbrechung
von „1” entsprechend einer Vergleichsübereinstimmung
zwischen dem Ausgangswert des Ereignisvergleichsregisters RPECR1
und dem Ausgangswert des Ereigniszählers RPECNT1.
-
Hier
kann jedes Register gemäß einem Neueinstellungssignal
neu eingestellt werden.
-
6 zeigt
eine Beziehung zwischen dem Tastpufferregister RPDTBR1 und der Ausgangswellenform
(das heißt RPGTOUT). Die horizontale Achse t stellt die
Zeit dar.
-
Die
PWM-Zählerperiode von RPPWCR1 von „[7:0] = 255” wird
in dem PWM-Periodenregister RPPWCR1 eingestellt, obwohl die Periode
nicht auf diesen Wert begrenzt ist. Der PWM-Zähler RPTCNT1
zählt hoch, und wenn sich der Ausgangswert des PWM-Zählers
RPTCNT1 mit dem Ausgangswert (das heißt 255) des
PWM-Periodenregisters RPPWCR1 deckt, nimmt der Ausgangswert des PWM-Zählers
RPTCNT1 einen logischen Wert „0” an, und der PWM-Puls
(das heißt RPGTOUT1) nimmt einen hohen Pegel an. Der PWM-Puls
(das heißt RPGTOUT1) nimmt einen niedrigen Pegel entsprechend
einer Vergleichsübereinstimmung zwischen dem Ausgangswert
des PWM-Zählers RPTCNT1 und dem Ausgangswert des Tastvergleichsregisters
RPDTCR1 an. Die Einheitswellenform des PWM-Pulses wird insbesondere
entsprechend der Vergleichsübereinstimmung zwischen dem
Tastwert des Tastwert-RAM 251 und dem Ausgangswert des
PWM-Zählers RPTCNT1 erzeugt. Ein neuer Tastwert wird von
dem Tastwert-RAM 251 bei jeder Vergleichsübereinstimmung
heruntergeladen. Der Tastwert des PWM-Pulses kann dementsprechend
in einer chronologischen Reihenfolge geändert werden. Der
Tastwert, der dem Ausgangswert (das heißt dem Wert, der
durch den Zeiger angegeben ist) des Tastzeigerregisters RPCPTR1
entspricht, wird somit von dem Tastwert-RAM 251 zu dem
Tastpufferregister RPDTBR1 geladen. Der Tastwert wird über
das UND-Gatter UND1-1 ferner in das Tastvergleichsregister RPDTCR1
geschrieben. Der Tastwert kann somit mit dem Ausgangswert des PWM-Zählers
RPTCNT1 verglichen werden. Wenn hier der Wert, der von dem Tastwert-RAM 251 zu dem
Tastpufferregister RPDTBR1 geladen wird und über das UND-Gatter
UND1-1 in das Tastvergleichsregister RPDTCR1 geschrieben wird, zwischen „127”, „191”, „223”,
..., „31”, „63” und „127” aktualisiert wird,
wird das Tasten des PWM-Pulses (das heißt PRGTOUT1) in
chronologischer Reihenfolge entsprechend dem Wert geändert.
-
3 zeigt
eine exemplarische Struktur des Zuteilers 252.
-
Wie
in 3 gezeigt ist, weist der Zuteiler 252 einen
Prioritätsdecodierer 252A und einen Zugriffssignalauswähler 252B auf.
Der Prioritätsdecodierer 252A bestimmt die Priorität
und weist entweder der Busschnittstelle 253 oder den PWM-Steuerungen 254, 255 eine
RAM-Zugriffserkennung zu, wenn mehrere RAM-Zugriffsanfragen von
der Busschnittstelle 253 und den PWM-Steuerungen 254, 255 miteinander
konkurrieren. Das Verfahren zum Bestimmen der Priorität
besteht beispielsweise darin, (1) die Priorität in einer
Hardware vorausgehend abzuspeichern, (2) die Priorität
durch stati sches und variables Verwenden von Software zu bestimmen,
(3) die Priorität durch dynamisches und variables Verwenden
von Software zu bestimmen, und (4) die Priorität, auf die
beim letzten Mal zugegriffen wurde, auf die niedrigste zu reduzieren,
oder dergleichen. Das RAM-Zugriffssignal (zum Beispiel eine Adresse
oder dergleichen), das dem Kanal entspricht, der für einen Zugriff
erkannt wird, wird durch den Zugriffssignalauswähler 252A ausgewählt
und zu dem Tastwert-RAM 251 übertragen.
-
7 zeigt
ein Flussdiagramm einer PWM-Pulserzeugung in dem Mikrocomputer 100,
der die vorhergehende Struktur hat.
-
Wenn
das Bit OP1 durch die CPU 16 eingestellt wird, um den logischen
Wert „1” zu haben, wird die PWM-Steuerung 254 aktiviert.
Wenn das Bit OP2 eingestellt wird, um den logischen Wert „1” zu
haben, wird die PWM-Steuerung 255 aktiviert. Hier wird
angesichts einer einfachen Erläuterung ein Fall, bei dem
die PWM-Steuerung 254 aktiviert wird, wenn das Bit OP1
durch die CPU 16 eingestellt wird, um den logischen Wert „1” zu
haben, erläutert. Die PWM-Steuerung 254 wird bei
einem Schritt S1 aktiviert. Bei einem Schritt S2 wird bestimmt,
ob der Ausgangswert des PWM-Zählers RPTCNT1 der logische Wert „0” ist.
Bei einem Schritt S3 steigt die PWM-Wellenform an, wenn der Ausgangswert
des PWM-Zählers RPTCNT1 der logische Wert „0” ist.
Wenn der Ausgangswert des PWM-Zählers RPTCNT1 der logische
Wert „1” ist, wird bei einem Schritt S4 eine Vergleichsübereinstimmung
zwischen dem Ausgangswert des PWM-Zählers RPTCNT1 und dem
Ausgangswert des Tastvergleichsregisters RPDTCR1 durchgeführt.
Bei diesem Vergleich fällt, wenn sich der Ausgangswert
des PWM-Zählers RPTCNT1 mit dem Ausgangswert des Tastvergleichsregisters RPDTCR1
deckt, die PWM-Wellenform bei einem Schritt S5 ab. Eine Vergleichsübereinstimmung
zwischen dem Ausgangswert des PWM-Zählers RPTCNT1 und dem
PWM-Periodenregister RPPWCR1 wird dann bei einem Schritt S6 durchgeführt.
Wenn sich der Ausgangswert des PWM-Zählers RPTCNT1 mit
dem PWM-Periodenregister RPPWCR1 nicht deckt, wird der PWM-Zähler RPTCNT1
bei einem Schritt S7 um +1 inkrementiert. Wenn sich ferner der Ausgangswert
des PWM-Zählers RPTCNT1 mit dem PWM-Periodenregister RPPWCR1
deckt, nimmt das Ausgangssignal des PWM-Zählers RPTCNT1
den logischen Wert „0” ein, derart, dass der Tastwert
bei einem Schritt S9 bis zu einem Schritt S12 aktualisiert wird.
Der gespeicherte Wert des Tastpufferregisters RPDTBR1 wird somit
zu dem Tastvergleichsregister RPDTCR1 geladen, derart, dass das
Tastvergleichsregister RPDTCR1 bei dem Schritt S9 aktualisiert wird.
Bei dem Schritt S10 wird eine Leseanfrage für den Tastwert-RAM 251 durchgeführt,
um einen neuen Tastwert zu erhalten. Wenn die Leseanfrage bei dem
Schritt S11 erkannt wird, zählt das Tastzeigerregister
RPCPTR1 hoch. Das Tastpufferregister RPDTBR1 wird durch den Tastwert,
der aus dem Tastwert-RAM 251 neu gelesen wird, bei dem
Schritt S12 aktualisiert.
-
In
der vorhergehenden Beschreibung ist erläutert, dass die
PWM-Steuerung 254 durch Einstellen des Bits OP1 auf den
logischen Wert „1” unter Verwendung der CPU 16 aktiviert
wird. Wenn die PWM-Steuerung 255 durch unter Verwendung
der CPU 16 Einstellen des Bits OP2, um den logischen Wert „1” zu
haben, aktiviert wird, wird der PWM-Puls in der PWM-Steuerung 255 ähnlich
zu der vorhergehenden Beschreibung erzeugt. Hier ist es möglich, beide
PWM-Steuerungen 254, 255 zu der gleichen Zeit
zu aktivieren.
-
5 zeigt
einen Fall, bei dem beide PWM-Steuerungen 254, 255 betrieben
werden, derart, dass ein Zugriff von der PWM-Steuerung 254 auf den
Tastwert-RAM 251 mit einem Zugriff von der PWM-Steuerung 254 auf
den Tastwert-RAM 251 konkurriert. In 5 stellt
CH1 die PWM-Steuerung 254 dar, und CH2 stellt die PWM-Steuerung 255 dar. Wenn
ein Zugriff von der PWM-Steuerung 254 auf den Tastwert-RAM 251 mit
einem Zugriff von der PWM-Steuerung 255 auf den Tastwert-RAM 251 konkurriert,
wird eine Zugriffsanpassung wie folgt durchgeführt. Wenn
die Zugriffsanfrage von CH1 und die Zugriffsanfrage von CH2 zu der
gleichen Zeit durchgeführt werden, führt der Zuteiler 252 basierend
auf einer vorbestimmten Prioritätsreihenfolge eine Zugriffssteuerung
als eine Zugriffsanpassung durch. Bei dem in 5 gezeigten
Beispiel hat CH1 eine höhere Prioritätsreihenfolge,
die höher als CH2 ist. Als ein Resultat wird die Zugriffserkennung
von CH2 um einen Takt verzögert. Ein Zugriff von CH1 auf den
Tastwert-RAM 251 und ein Zugriff von CH2 auf den Tastwert-RAM 251 werden
jedoch offensichtlich zu der gleichen Zeit durchgeführt.
Ein vorbestimmter Tast wert wird aus dem RAM 251 zu sowohl
CH1 als auch CH2 ausgelesen, und eine Taststeuerung wird basierend
auf dem Tastwert durchgeführt.
-
Durch
Nutzen eines offensichtlich gleichzeitigen Zugriffs von CH1 und
CH2 auf den Tastwert-RAM 251 kann eine Erzeugung des PWM-Pulses
somit dupliziert werden. Das gleiche Tastwertmuster wird beispielsweise
in einer ersten Speicherregion und einer zweiten Speicherregion
in dem Tastwert-RAM 251 doppelt eingestellt. Die zweite
Speicherregion unterscheidet sich von der ersten Speicherregion.
Die erste Speicherregion entspricht der PWM-Steuerung 254 (CH1),
und die zweite Speicherregion entspricht der PWM-Steuerung 255 (CH2).
Sowohl die PWM-Steuerung 254 (CH1) als auch die PWM-Steuerung 255 (CH2)
erzeugen den gleichen PWM-Puls. In diesem Fall werden, wie in 8 gezeigt
ist, das PWM-Ausgangssignal (das heißt RPGTOUT1) der PWM-Steuerung 254 (CH1) und
das PWM-Ausgangssignal (das heißt RPGTOUT2) der PWM-Steuerung 255 (CH2)
mit dem Vergleicher CMP verglichen. Wenn dieselben sich nicht miteinander
decken, wird in Betracht gezogen, dass die PWM-Steuerung 254 (CH1)
und/oder die PWM-Steuerung 255 (CH2) abnorm funktionieren können.
Wenn beispielsweise das PWM-Ausgangssignal (RPGTOUT1) der PWM-Steuerung 254 (CH1) für
eine Steuerung eines Benutzersystems verwendet wird, ist eine Zuverlässigkeit
des PWM-Ausgangssignals (RPGTOUT1) verbessert. Der Vergleicher CMP
kann in dem Mikrocomputer 100 angeordnet sein. Der Vergleicher
CMP kann alternativ in dem Benutzersystem angeordnet sein, an dem
der Mikrocomputer 100 angebracht ist.
-
11 zeigt
einen exemplarischen Aufbau als ein Vergleichsobjekt des RPGT 25.
-
In 11 sind
Tastwertregister 554, 555 zum Einstellen des Tastwerts
gebildet. Die PWM-Steuerung 454, 455 erzeugt den
PWM-Puls entsprechend einem Einstellwert des entsprechenden Tastwertregisters 554, 555.
Wenn ein in dem Tastwertregister 554, 555 gespeicherter
Wert aktualisiert wird, wird das Tasten des PWM-Pulses geändert.
Die Aktualisierung des gespeicherten Werts des Tastwertregisters 554, 555 wird
durch die CPU 16 über die CPU-Busse BUS1, BUS2,
den Innenbus BUS3 und den Peripheriebus BUS4 durchgerührt.
Wie in 12 gezeigt ist, erzeugt insbesondere
die PWM-Steuerung 454, 455 jedes Mal zum Einstellen des
Tastwertregisters die Unterbrechung in der CPU 16, wenn
das Tasten des PWM-Pulses geändert wird. Bei dem Unterbrechungsverfahren
zum Einstellen des Tastwertregisters schreibt die CPU 16 über
die CPU-Busse BUS1, BUS2, den Innenbus BUS3 und den Peripheriebus
BUS4 einen neuen Tastwert in das Tastwertregister 554, 555.
In diesem Fall kann eine zeitliche Ausnahme, die durch einen Stau
des Busverkehrs in der CPU 16 verursacht wird, bei dem Schreibbetrieb
von der CPU 16 auftreten. Wenn die Ausnahme auftritt, führt
die CPU 16 keine ausreichende PWM-Steuerung durch, und
dadurch wird der normale PWM-Puls nicht ausgegeben. Es ist ferner
notwendig, die Unterbrechung in der CPU 16 zu erzeugen,
um den Tastwert zu aktualisieren. Wenn eine Schwierigkeit, die beispielsweise
aus einem Softwarefehler des Unterbrechungssignals oder einem Bruch
einer Hardwareleitung abgeleitet wird, auftritt, kann der normale
PWM-Puls nicht ausgegeben werden.
-
Die
Aktualisierung des gespeicherten Werts in dem Tastwertregister 554, 555 kann
durch die DMAC durchgeführt werden. In diesem Fall ist
es notwendig, dass die DMAC das Recht einer Verwendung des Busses,
der in einem Durchgang von dem DMAC zu dem Tastwertregister 554, 555 angeordnet ist,
erhält. Ähnlich zu dem in 11 gezeigten
Aufbau, kann somit die Schwierigkeit, die durch einen Stau des Busverkehrs
verursacht wird, entstehen.
-
Bei
der in 1 bis 3 gezeigten Struktur kann andererseits,
wenn der Mikrocomputer 100 initialisiert wird, das Tastwertmuster
in dem Tastwert-RAM 251 eingestellt werden. Ohne durch
den Stau des Busverkehrs der CPU 16 beeinflusst zu sein,
wird somit eine Erzeugung der zeitlichen Ausnahme bei der Schreibfunktion
in der CPU 16 sicher verhindert. Die normale PWM-Pulswellenform
wird somit immer ausgegeben, und eine Zuverlässigkeit des
PWM-Pulses ist verbessert. Es ist ferner kein Unterbrechungssignal
für ein Aktualisieren des Tastens des PWM-Pulses notwendig.
Es gibt dementsprechend keine Schwierigkeit, die sich aus beispielsweise
einem Softwarefehler des Unterbrechungssignals oder einem Bruch
einer Hardwareleitung ableitet.
-
Bei
der in 11 gezeigten Struktur ist es ferner
notwendig, den Tastwert des Tastwertregisters 554, 555 häufig
gemäß dem Unterbrechungsverfahren in der CPU 16 in
Echtzeit zu aktualisieren. Wenn daher durch die Software bestätigt
wird, ob die Aktualisierung normal durchgeführt wird, kann
der erzeugte PWM-Puls verzögert werden.
-
Bei
der in 1 bis 3 gezeigten Struktur kann beispielsweise
andererseits, bevor die PWM-Pulserzeugung startet, wenn der Mikrocomputer 100 initialisiert
wird, das Tastwertmuster in dem Tastwert-RAM 251, wie in 4 gezeigt
ist, eingestellt werden. Bevor der PWM-Puls erzeugt wird, wird somit
bestätigt, ob das Tastwertmustereinstellen normal durchgeführt
wird. Dies liefert einen Vorteil, um die Zuverlässigkeit
des PWM-Pulses zu verbessern.
-
Gemäß der
vorhergehenden Struktur werden die folgenden Effekte erhalten.
- (1) Ohne durch den Stau eines Busverkehrs in
der CPU beeinträchtigt zu sein, wird ein Auftritt der zeitlichen
Ausnahme bei der Schreibfunktion in der CPU sicher verhindert. Die
normale PWM-Pulswellenform wird somit immer ausgegeben. Die Zuverlässigkeit
des PWM-Pulses ist somit verbessert.
- (2) Da der Mikrocomputer 100 das Unterbrechungssignal
zu der CPU 16 nicht liefert, um das Tasten zu aktualisieren,
wird eine Schwierigkeit, die sich beispielsweise aus einem Softwarefehler des
Unterbrechungssignals oder einem Bruch einer Hardwareleitung ableitet,
dementsprechend reduziert.
- (3) Bevor die PWM-Pulserzeugung startet, kann beispielsweise
das Tastwertmuster in dem Tastwert-RAM 251 eingestellt
werden, wenn der Mikrocomputer 100 initialisiert wird.
Es wird dementsprechend bestätigt, ob das Tastwertmuster,
bevor der PWM-Puls erzeugt wird, normal eingestellt wird.
- (4) Wenn die PWM-Steuerungen 254, 255 multiplexiert
werden, erfasst der Vergleicher CMP ohne weiteres eine abnorme Ausgangswellenform.
Die Zuverlässigkeit des Benutzersystems ist somit verbessert.
-
10 zeigt
ein Anwendungsbeispiel des Mikrocomputers 100.
-
Der
Mikrocomputer 100 ist an dem Benutzersystem angebracht.
Das Benutzersystem ist ein Beispiel einer externen Vorrichtung.
Das Benutzersystem ist beispielsweise eine Kraftlenksteuerungsvorrichtung
bzw. Servolenkungsvorrichtung für ein Fahrzeug, obwohl
das Benutzersystem nicht auf die Kraftlenksteuerungsvorrichtung
begrenzt ist. Das Fahrzeug, an dem das Benutzersystem angebracht
ist, weist ein Lenkrad 101 und einen Motor 106 zum
aktiven Liefern eines Steuerwinkels zu Rädern des Fahrzeugs
auf. Das Lenkrad 101 weist einen Drehmeldersensor zum Erfassen
eines axialen Winkels des Lenkrads 101 und eine Schaltung,
wie zum Beispiel ein CR-Filter 108, zum Ausgeben eines
Erregungssignals zu dem Drehmeldersensor 102 auf. Der Motor 106 weist
einen Drehmeldersensor 107 zum Erfassen eines axialen Winkels
des Motors 106 und eine Schaltung 109, wie zum
Beispiel eine CR-Filterschaltung, zum Ausgeben eines Erregungssignals
zu dem Drehmeldersensor 107 auf. Jeder Drehmeldersensor 102, 107 weist
einen Rotor und einen Stator auf. Wenn eine Erregungswechselsignal (das
heißt ein analoges Erregungssignal) in den Rotor eingegeben
wird, wird ein AV-Signal, das einen axialen Winkel als einen Parameter
hat, in dem Stator erhalten. Eine Versorgung jedes Drehmeldersensors 102, 107 mit
dem Erregungswechselsignal wird derart durchgeführt, dass
die Schaltung 108, 109, wie zum Beispiel das CR-Filter,
von dem RPFT 25 über das Tor 30 und den
externen Anschluss mit einer digitalen Rechteckwelle versorgt wird.
Eine Sinuswelle wird ferner als ein analoges Signal durch die Schaltung 108, 109,
wie zum Beispiel das CR-Filter, entsprechend dem PWM-Puls erzeugt.
Es wird dann mit der Sinuswelle als das Erregungswechselsignal versorgt.
Da der Mikrocomputer 100 zwei PWM-Steuerungen 454, 455,
die zwei Kanälen entsprechen, aufweist, entspricht die
PWM-Steuerung 454 dem Drehmeldersensor 102, und
die PWM-Steuerung 455 entspricht dem Drehmeldersensor 107.
Das Erfassungssignal (das heißt ein Wechselsignal) des
Drehmeldersensors 102 wird in dem ADC 21 über
das Tor 26 wiedergewonnen. Nachdem das Erfassungssignal
in ein digitales Signal gewandelt ist, wird das digitale Signal
bei einem Berechnungsverfahren zum Steuern eines Drehungsbetriebs
des Motors 106 verwendet. Das Berechnungsverfahren wird
durch die CPU 16 durchgeführt. Der Treiber 104 wird über
die MTU 24 und das Tor 29 mit dem Berechnungsverfahrensresultat
versorgt. Das Resultatssignal wird in dem Treiber 104 verstärkt,
und die Treibschaltung 105, die auf einer späteren Stufe
angeordnet ist, wird mit dem Resultatssignal versorgt. Die Treibschaltung 105 ist
aus einem Leistungs-MOS-Transistor gebildet. Basierend auf einem
Ausgangssignal von dem Treiber 104 wird ein Drehungsbetrieb
des Motors 106 durchgeführt. In diesem Fall wird
der axiale Winkel des Motors 106 durch den Drehmeldersensor 107 erfasst. Der
erfasste axiale Winkel wird über den externen Anschluss
und das Tor 26 zu dem ADC 21 wiedergewonnen. Das
Winkelsignal wird dann in dem ADC 21 in ein digitales Signal
gewandelt. Das digitale Signal wird dann in die CPU 16 eingegeben.
Die tatsächlichen Informationen eines axialen Winkels des
Motors werden somit zu der CPU 16 zurückgekoppelt, derart,
dass der Drehungsbetrieb des Motors 106 korrigiert wird.
Fahrzeuggeschwindigkeitsinformationen werden hier über
das Tor 27 wiedergewonnen, und dann werden die Informationen
für das Berechnungsverfahren in der CPU 16 verwendet.
Die Leistungsquellenschaltung 103 ist angeordnet, und der Mikrocomputer 100 wird
mit einer Leistungsquellenspannung für einen Betrieb von
der Leistungsquellenschaltung 103 versorgt. Der Mikrocomputer 100, der
Motor, der Drehmeldersensor, die Schaltung, wie zum Beispiel das
CR-Filter, und eine Schaltung, die mit einem externen Element, wie
zum Beispiel einer Leistungsquellenschaltung, verbunden ist, können direkt
miteinander gekoppelt sein. Dieselben können alternativ über
andere Schaltungen (nicht gezeigt) miteinander gekoppelt sein.
-
Bei
der vorhergehenden Struktur wird der Mikrocomputer 100,
der die in (1) bis (5) gezeigten Effekte hat, verwendet. Die Zuverlässigkeit
der Lenkradsteuerung ist somit verbessert.
-
Bei
einer Modifikation des vorhergehenden Ausführungsbeispiels
weist beispielsweise der Mikrocomputer ferner eine Fehlerkorrekturfunktion
in dem Tastwert-RAM 251 auf. Die Fehlerkorrekturfunktion
ist beispielsweise eine ECC (= error check and correct = Fehlerprüfung
und Korrektur) oder ein Paritätsbit. Durch Vorsehen der
Fehlerkorrekturfunktion kann ein Lesefehler selbst dann korrigiert
werden, wenn der Lesefehler in dem Tastwert-RAM 251 auftritt.
Die Zuverlässigkeit der PWM-Pulserzeugung ist somit verbessert.
-
Ein
Aspekt der vorliegenden Offenbarung ist einfach wie folgt erläutert.
-
Der
Mikrocomputer weist die CPU und den PWM-Zeitgeber in sich auf. Der
PWM-Zeitgeber weist den RAM zum Einstellen des Tastwertmusters des
PWM-Pulses und die PWM-Steuerung zum Erzeugen des PWM-Pulses auf.
Die PWM-Steuerung weist den PWM-Zähler auf, und die Einheitswellenform
des PWM-Pulses wird durch die Vergleichsübereinstimmung
zwischen dem Tastwert in dem RAM und dem Ausgangswert des PWM-Zählers
erzeugt. Ein neuer Tastwert wird bei jeder Vergleichsübereinstimmung
von dem RAM, ohne die CPU in Funktion zu setzen, geladen. Der Tastwert
des PWM-Pulses ist fähig, die chronologische Reihenfolge
zu ändern. Die vorhergehende Struktur sieht vor, den Einfluss
eines Busverkehrsstaus der CPU zu vermeiden, wenn der PWM-Puls erzeugt
wird, und um ferner eine Erzeugung einer zeitlichen Ausnahme bei
einer Schreibfunktion in der CPU zu vermeiden.
-
Die
Effekte der vorliegenden Offenbarung sind einfach wie folgt erläutert.
-
Ein
Verfahren zum Verbessern der Zuverlässigkeit der PWM-Pulserzeugung
durch den Mikrocomputer ist dargestellt.
-
Der
Mikrocomputer (100) gemäß einem Aspekt
der vorliegenden Offenbarung weist eine CPU (16) zum Ausführen
eines vorbestimmten Berechnungsverfahrens und einen PWM-Zeitgeber
(25) zum Erzeugen des PWM-Pulses auf. Der PWM-Zeitgeber
weist einen RAM (251) zum Einstellen des Tastwertmusters
des PWM-Pulses und eine PWM-Steuerung (254, 255)
zum Erzeugen des PWM-Pulses auf. Die PWM-Steuerung weist einen PWM-Zähler
(RPTCNT1, RPTCNT2) zum Hochzählen von einem vorbestimmten
Wert als ein Anfangswert auf. Die Einheitswellenform des PWM-Pulses wird
durch die Vergleichsübereinstimmung zwischen dem Tastwert
in dem RAM und dem Ausgangswert des PWM-Zählers erzeugt.
Der Tastwert wird bei jeder Vergleichsübereinstimmung von
dem RAM, ohne die CPU in Funktion zu setzen, geladen. Der Tastwert des
PWM-Pulses wird somit in einer chronologischen Reihenfolge geändert.
-
Bei
der vorhergehenden Struktur wird eine Erzeugung des PWM-Pulses durch
den Einfluss eines Busverkehrsstaus der CPU nicht beeinträchtigt, derart,
dass eine Erzeu gung einer zeitlichen Ausnahme bei einer Schreibfunktion
der CPU sicher verhindert wird. Eine normale PWM-Pulswellenform
wird somit immer ausgegeben. Die Zuverlässigkeit des PWM-Pulses
ist verbessert.
-
Der
Mikrocomputer (100) gemäß einem weiteren
Aspekt der vorliegenden Offenbarung weist eine CPU (16)
zum Ausführen eines vorbestimmten Berechnungsverfahrens
und einen PWM-Zeitgeber (25) zum Erzeugen des PWM-Pulses
auf. Der PWM-Puls ist dazu fähig, dass eine externe Vorrichtung
mit demselben versorgt wird. Der PWM-Zeitgeber weist einen RAM (251)
zum Einstellen des Tastwertmusters des PWM-Pulses, eine Mehrzahl
von PWM-Steuerungen (254, 255) zum Erzeugen des PWM-Pulses
und ein Tor (30) zum Ausgeben des PWM-Pulses, der in den
mehreren PWM-Steuerungen erzeugt wird, zu der externen Vorrichtung
auf. Jede PWM-Steuerung in den mehreren PWM-Steuerungen weist einen
PWM-Zähler (RPTCNT1, RPTCNT2) zum Hochzählen von
einem vorbestimmten Wert als ein Anfangswert auf. Die Einheitswellenform
des PWM-Pulses wird durch die Vergleichsübereinstimmung
zwischen dem Tastwert in dem RAM und dem Ausgangswert des PWM-Zählers
erzeugt. Der Tastwert wird bei jeder Vergleichsübereinstimmung
von dem RAM, ohne die CPU in Funktion zu setzen, geladen. Der Tastwert
des PWM-Pulses wird somit in einer chronologischen Reihenfolge geändert.
Bei der vorhergehenden Struktur wird eine Erzeugung des PWM-Pulses
durch einen Einfluss eines Busverkehrsstaus der CPU nicht beeinträchtigt, derart,
dass eine Erzeugung einer zeitlichen Ausnahme bei einer Schreibfunktion
der CPU sicher verhindert wird. Eine normale PWM-Pulswellenform
wird somit immer ausgegeben. Die Zuverlässigkeit des PWM-Pulses
ist verbessert.
-
Der
PWM-Zeitgeber weist ein Steuerungsregister (RPCR), das ein Bit zum
Anweisen eines Betriebsstarts und eines Betriebsstops der PWM-Steuerung
speichert, auf. Das Steuerungsregister ist konfiguriert, um fähig
zu sein, in die CPU zu schreiben.
-
Die
PWM-Steuerung weist ein PWM-Periodenregister (RPPWCR1, RPPWCR2)
zum Einstellen einer Periode des PWM-Zählers auf. Der PWM-Zähler
wird gemäß einer Vergleichsübereinstimmung
mit dem Ausgangssignal des PWM-Periodenregisters gelöscht.
-
Die
PWM-Steuerung weist ein Tastvergleichsregister (RPDTCR1, RPDTCR2)
zum Speichern des aktuellen Tastwerts auf. Das PWM-Pulsausgangssignal
von der PWM-Steuerung nimmt einen hohen Pagel ein, wenn der Ausgangswert
des PWM-Zählers ein logischer Wert „0” ist.
Das PWM-Pulsausgangssignal nimmt einen niedrigen Pegel entsprechend
einer Vergleichsübereinstimmung zwischen dem Ausgangswert
des PWM-Zählers und dem Ausgangswert des Tastvergleichsregisters
ein.
-
Die
PWM-Steuerung weist ein Tastzeigerregister (RPCPTR1, RPCPTR2) zum
Einstellen einer Adresse, die die Lesestartanweisung liefert, in
dem RAM auf. Die Adresse zum Liefern der Lesestartanweisung in dem
RAM entspricht dem Ausgangswert des Tastzeigerregisters.
-
Die
PWM-Steuerung weist ein Tastzeigerregister für eine obere
Grenze (RPMPTR1, RPMPTR2) zum Einstellen einer oberen Grenze des
Tastzeigerregisters und ein Tastzeigerladungsregister (RPRPTR1,
RPRPTR2) zum Einstellen eines Neuladungswerts des Tastzeigerregisters
auf. Basierend auf einer Vergleichsübereinstimmung zwischen
dem Ausgangswert des Tastzeigerregisters und dem Ausgangswert des
Tastzeigerregisters für eine obere Grenze wird der Einstellwert
des Tastzeigerneuladungsregisters zu dem Tastzeigerregister neu
geladen.
-
Der
PWM-Zeitgeber weist einen Zuteiler (252) zum Anpassen einer
Konkurrenz einer Zugriffsanfrage auf den RAM von mehreren PWM-Steuerungen
auf.
-
Obwohl
die Erfindung unter Bezugnahme auf bevorzugte Ausführungsbeispiele
derselben beschrieben ist, versteht es sich von selbst, dass die
Erfindung nicht auf die bevorzugten Ausführungsbeispiele
und den bevorzugten Aufbau begrenzt ist. Die Erfindung soll verschiedene
Modifikationen und äquivalente Anordnungen abdecken. Trotz
der bevorzugten verschiedenen Kombinationen und Konfigurationen
liegen zusätzlich andere Kombinationen und Konfigurationen,
die mehr, weniger oder lediglich ein einzelnes Element aufweisen,
ebenfalls innerhalb des Geistes und des Schutzbereichs 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 083985
A [0004]
- - JP 2003-11410 A [0004]