-
Stand der
Technik
-
Die
Erfindung betrifft ein Verfahren und eine Vorrichtung mit einem
Prozessorbaustein zur Auswahl von Peripherieelementen, insbesondere
bei einer Motorsteuerung in einem Kraftfahrzeug, wobei zur Steuerung
von Betriebsabläufen
Peripherieelemente ausgewählt
bzw. angesteuert werden entsprechend den Oberbegriffen der unabhängigen Ansprüche.
-
Zur
Erweiterung der Teilnehmerzahl ist dazu bekannt aus einer Anzahl
von Selektsignalen eine Codierung zu generieren. Diese Codierung
muss dann durch Zusatzhardware, in der Regel einen Decodierbaustein
wieder decodiert werden. Dabei ergibt sich hierbei durch die notwendige
zusätzliche Decodierlogik
ein Schaltungsmehraufwand, der zu Mehrkosten und größerem Flächenbedarf
der Leiterplatte führt.
-
Der
Einsatz einer solchen Decodierlogik ist im Artikel „EPROM
decoder for device selection" von K.
J. Whiteley aus der Fachzeitschrift „Electronic Engineering", volume 58, number
714, Seite 36 von Juni 1986 bekannt. Üblicherweise wird als Decodierlogik dabei
eine Anzahl TTL-Bausteine hart verdrahtet, um die Auswahlfunktion
darzustellen. In dem genannten Artikel wird die Selektion bzw. Ansteuerung
einzelner Peripheriebausteine durch ein EPROM realisiert. Ist die
Anzahl der Auswahlausgänge
bzw. Auswahlschnittstellen des EPROMs gegenüber der Anzahl der anzusteuernden
Peripheriebausteine zu gering, wird mit Hilfe eines Decodierbausteins
hier ein 4:16-Decoder, welcher zwischengeschaltet ist, eine Aufweitung
der Auswahlmöglichkeiten
erzielt. Durch Einsatz des Decodierbausteins können somit mehr als die maximal
mögliche
Anzahl von Peripheriebausteinen über
das EPROM ausgewählt
bzw. angesteuert werden.
-
Der
Aufbau einer solchen Adressendecodierung mit TTL-Bausteinen ist ebenfalls in dem Fachbuch „PC-gesteuerte
Messtechnik" von
Klaus Dembowsky von 1993 dargestellt, welches im Markt&Technik Buch-
und Softwareverlag GmbH & Co.
unter der ISBN-Nummer 3-87791-516-7 erschienen ist. Auf den Seiten
58 bis 65 wird dabei der Aufbau von Decodierschaltungen, für welche
logische Bausteine, die TTL-Bausteine,
Vergleicherbausteine oder PAL (Programmable Array Logic) -Bausteine eingesetzt
werden, dargestellt.
-
Auch
hier ergibt sich durch die notwendige Decodierlogik ein Schaltungsmehraufwand,
der zu Mehrkosten und größerem Flächenbedarf
für die
Leiterplatte führt.
-
Zur
Auswahl von Peripherieelementen, insbesondere Teilnehmern an einem
Bussystem, ist es z.B aus der
GB 2 264 576 A (
4)
bekannt mehrere Auswahlschnittstellen bzw. Auswahlleitungen (Selektleitungen)
aus einem Decoderbaustein zur Verfügung zu stellen, wobei mit
jeder Selektleitung jeweils ein Peripherieelement bzw. Teilnehmer
angesprochen werden kann. Ein Teilnehmer wird somit durch Aktivieren
seiner zugeordneten Selektleitung durch den Decoderbaustein ausgewählt bzw.
angesprochen. Damit ist die Anzahl möglicher Busteilnehmer bzw.
Peripherieelemente, die ansprechbar sind, durch die zur Verfügung gestellte
Anzahl von Selektleitungen bzw. Selektsignalen bzw. Auswahlsignalen begrenzt.
-
Zur
Vermeidung dieser mehreren Selektleitungen und damit auch zur Verringerung
des Flächenbedarfes
wird in der
GB 2 264
576 A vorgeschlagen aus dem darin dargestellten Decoderbaustein statt
der verschiedenen Selektleitungen, also einer Auswahlleitung je
Peripheriebaustein nur noch eine einzige gemeinsame Selektleitung
für alle
Peripheriebausteine einzusetzen und dafür jedem Peripherieelement eine
individuelle Adresse zuzuordnen, wodurch eine exakte Auswahl eines
Peripherieelementes dann einerseits durch das Freischalten der Chipselektleitung
CS durch den Decoderbaustein und ein individuelles Adresssignal über eine
separate Adressbusleitung von der CPU erfolgt, wobei dieses individuelle
Adresssignal mit einem je Peripherieelement über einen separaten Pin eingebbaren
Vergleichsadresssignal in einem Komparator im Peripherieelement
auf Übereinstimmung
geprüft
wird.
-
Die
DE 196 09 883 A1 zeigt
dazu ein Verfahren zur Steuerung von Datenzugriffen bei bezüglich des
verwendeten Datenübertragungsprotokolles
systemkompatiblen und systeminkompatiblen peripheren Einrichtungen.
Durch den Einsatz eines Datenübertragungsprotokolles
kann hier eine reine Datenleitung verwendet werden und auf eine
separate Adressbusleitung verzichtet werden. Damit systeminkompatible
periphere Einheiten nicht aufwendig über einen separaten Bus angesteuert
werden müssen
ist hierbei vorgesehen alle peripheren Einheiten an den gleichen
Bus anzubinden und je systeminkompatibler Einheit eine Chipselektleitung
zu verwenden. Systeminkompatible Einheiten werden somit durch ein Chipselektsignal
angesprochen und durch eine bei den systemkompatiblen Einheiten
unbenutzte Adresse wird sichergestellt, dass die betreffenden auf
die Adresse folgenden Daten nicht von diesen gelesen werden sondern
nur die durch Chipselekt freigeschaltete systeminkompatible Einrichtung
diese empfängt.
Dabei erfolgt also keine Veränderung
im Datenübertragungsprotokoll,
es muß aber
je systeminkompatibler Einheit eine Chipselektleitung vorgesehen
werden, wobei dieser Schaltungsmehraufwand aber erfindungsgemäß vermieden
werden soll.
-
Des
Weiteren zeigt die
DE
197 52 031 A1 ein Verfahren und eine Schaltungsanordnung
zur selektiven digitalen Übertragung
von Bitfolgen zwischen einem Master und mehreren Slaves. Dabei ist
zunächst
gezeigt, wie bei Verwendung eines üblichen SPI-Bussystems mit
fester Datenwortlänge
ein Multifunktionsblock mit mehreren Funktionen durch ein Slave-Selekt Signal SS
aktiviert wird, wobei bei jeder Datenübertragung die Daten für alle Funktionen
zu dem Multifunktionsblock übertragen
werden müssen (
12). Um dies zu vermeiden wird nun beim SPI-Protokoll
eine variable Datenfeldlänge
eingeführt.
D.h. es wird eine maximal erlaubte Rahmenlänge vorgegeben welche ein Adressfeld
und ein SPI-übliches
Steuerfeld fester Länge
bzw. Bitanzahl enthält.
Das Datenfeld kann eine frei wählbare
Datenlänge
aufweisen, welche nur durch die vorgebbare maximale Rahmenlänge begrenzt
ist. Durch Zuordnung jeweils einer untergeordneten Einrichtung (Slave)
zu einer Funktion können
diese nun ausschließlich über das
Adressfeld separat addressiert werden, wodurch das Slave-Selekt
Signal dann nicht mehr genutzt wird (
11).
Die variable Datenfeldlänge
wird für
den Master dadurch erkennbar, dass den Adressen Plätze einer
festen Adressreihenfolge zugeordnet werden und dem Platz auch eine
bestimmte Datenfeldlänge
zugeordnet ist. Dadurch wird aber das SPI-Protokoll vor allem bezüglich der
eigentlich festen Datenwortlänge
relativ stark verändert.
-
Es
ist daher Aufgabe der Erfindung bei möglichst geringer Veränderung
des verwendeten Busprotokolls, und geringem Flächenbedarf ein einfaches Verfahren
mit Vorrichtung zur Auswahl von Peripherieelementen anzugehen.
-
Diese
Aufgabe wird durch die Merkmale der unabhängigen Ansprüche gelöst, wodurch
sich entsprechende Vorteile ergeben.
-
Die
Erfindung geht aus von einem Verfahren und einer Vorrichtung nach
den Oberbegriffen der Patentansprüche 1 bzw. 2. Dabei werden
Peripherieelemente durch den Prozessorbaustein mit einer vorgegebenen
Anzahl von Auswahlschnittstellen durch über diese Auswahlschnittstellen
ausgegebene Auswahlsignale ausgewählt, wobei zudem Peripherieelemente
außerdem
Instruktionen bzw. Befehle und/oder Daten über wenigstens eine Informationsschnittstelle
des Prozessorbausteins übertragen.
-
Vorteilhafterweise
werden dabei für
bestimmte Peripherieelemente in den Instruktionen Auswahlkennungen
ergänzt
und mit diesen übertragen.
Die Auswahl dieser Peripherieelemente erfolgt damit durch ein Auswahlsignal
und die Auswahlkennung, wobei dabei die Auswahlkennung und die Instruktion
in digitaler Form als Gesamtheit aus binären Einzelsignalen (Bits) übertragen
werden, wobei die Auswahlkennung einen Teil der Bits der Instruktion mit
vorgegebener Bitlänge
ersetzt, so dass die übertragene
Auswahlkennung und Instruktion in ihrer Gesamtheit die gleiche Bitzahl
wie vorher die Instruktion alleine aufweist.
-
Von
Vorteil ist, dass dadurch eine Erweiterung der Anzahl der ansteuerbaren
bzw. ansprechbaren Peripherieelemente, insbesondere Busteilnehmer
ohne zusätzlichen
Hardwaremehraufwand möglich
ist. Damit lässt
sich zweckmäßigerweise
z. B. der SPI (Serial Peripheral Interface)-Bus ebenso wie andere
vergleichbare Bussysteme ohne die Mehrkosten bzw. den Schaltungsmehraufwand
erweitern.
-
Zweckmäßigerweise
können
somit mehrere Peripherieelemente an eine Auswahlschnittstelle des Prozessorbausteins
angeschlossen werden und trotzdem einzeln ausgewählt bzw. angesprochen werden,
wobei sich die Peripherieelemente, welche an der selben Auswahlschnittstelle
angekoppelt sind -zweckmäßigerweise
voneinander unterscheiden.
-
Damit
ist vorteilhafterweise die Anwahl bzw. das Ansprechen von mehr als
der Anzahl der Auswahlschnittstellen des Prozessorbausteins entsprechenden
Zahl von Peripherieelementen bzw. Busteilnehmern möglich, indem
bei den Businstruktionswörtern
bzw. Busbefehlswörtern
ein oder mehrere Bits durch Auswahlbits bzw. Selektbits ersetzt
werden, wodurch die Anzahl der möglichen
Teilnehmer, also Peripherieelemente ohne zusätzliche Hardwaremaßnahme erhöht wird.
-
Zeichnung
-
Nachfolgend
wird die Erfindung anhand der in der Zeichnung dargestellten Figuren
näher erläutert.
-
Dabei
zeigt 1 eine schematische Darstellung eines Prozessorbausteins
mit angekoppeltem Bussystem und verschiedenen Peripherieelementen.
-
In 2 ist
ein Instruktionswort bzw. ein Befehlswort (beispielhaft 8 Bit) erfindungsgemäß dargestellt.
-
3 schließlich offenbart
ein Timing- bzw. Zeitablaufdiagramm der über die Auswahlschnittstellen
bzw. die Informationsschnittstelle übertragenen Signale.
-
Beschreibung
der Ausführungsbeispiele
-
1 zeigt
einen Prozessorbaustein 100, der über eine Bus-IO (BIO), also
eine Busein/-ausgangsschnittstelle an ein Bussystem, beispielsweise einen
SPI-Bus 108 angekoppelt ist und darüber kommuniziert. Der Prozessorbaustein 100 weist
des weiteren Auswahlschnittstellen, sogenannte Selektports SP1 bis
SP4 auf, über
die über
Selektleitungen SL1 bis SL4 Peripherieelemente 101 bis 107 angeschlossen
sind. Im Stand der Technik können
bei Direktanschluß über die
hier gezeigten vier Selektleitungen SL1 bis SL4 bzw. die entsprechenden
Auswahlschnittstellen SP1 bis SP4 maximal vier Peripherieelemente 101 bis 104 vom
Prozessorbaustein ausgewählt
bzw. angesprochen werden. Durch die später noch genauer zu erläuternde
Erweiterung mit einer Auswahlkennung, kurz als SBE (Selekt-Bit-Erweiterung)
bezeichnet, können
dann zusätzlich
zu den Peripherieelementen 101 bis 104 die Peripherieelemente 105 bis 107 durch
den Prozessorbaustein angewählt,
insbesondere einzeln ausgewählt
werden.
-
Des
weiteren wird bei dem Bussystem 108 insbesondere von einem
SPI-Bus als Beispiel ausgegangen. Andere Bussysteme vergleichbarer
Möglichkeiten
und Anwendungsfälle
können
dabei ebenso erfindungsgemäß eingesetzt
werden.
-
Die
SPI-Kommunikation läuft
in der Regel wie folgt ab: Der Controller bzw. Prozessorbaustein 100 aktiviert
das für
den anzusprechenden SPI-Baustein, also das Peripherieelement zuständige Selektsignal über die
entsprechende Auswahlschnittstelle SP1 bis SP4 und sendet anschließend einen
Befehl bzw. eine Instruktion und gegebenenfalls Daten über den
SPI-Bus 108. Der gesendete Befehl, die Instruktion (im
Beispiel 1 Byte) besteht aus Befehlsbits, also binären Einzelsignalen.
Dabei können
im Umfang der gesendeten Instruktion auch Zusatzinformationen, beispielsweise
zur Fehlerkorrektur enthalten sein. Bei einer solchen herkömmlichen
Befehlsstruktur sind dann beispielsweise sechs Instruktionsbits
oder Befehlsbits instr0 bis instr5 abgelegt unter Bit 2 bis Bit 7
der gesendeten Instruktion sowie ein Bit zur Fehlerüberprüfung, beispielsweise
abgelegt unter Bit 1 (z. B. für
einen Even Parity Check oder einen Cyclic Redundancy Check) und
unter Bit 0 weitere mögliche Zusatzinformationen
abgelegt. Damit sind dann wie dargestellt bei sechs Befehlsbits
instr0 bis instr5 maximal 26 = 64 unterschiedliche
Instruktionen bzw. Befehle pro Baustein übertragbar.
-
In 2 ist
nun ein Informationsrahmen 200, insbesondere ein Befehls-
bzw. Instruktionswort erfindungsgemäß dargestellt. Darin sind mit
Bit 0 beliebige Zusatzinformationen beispielsweise zur Fehlerkorrektur,
in Bit 1 ein parity-Bit beispielsweise für einen Even Parity Check dargestellt.
Ebenso können Bit
0 und Bit 1 als Kontrolle im Rahmen eines Cyclic Redündancy Checks
CRC Verwendung finden. Aus den vorher beschriebenen Befehlsbits
bzw. Instruktionsbits instr0 bis instr5, also Bit 2 bis Bit 7 werden nun
zwei hier dargestellte Bit 6 und Bit 7 durch Auswahlsbits, sogenannte
Selektbits SB select0 und select1 ersetzt. Dadurch sind durch die
vier Instruktionsbits instr0 bis instr3 zwar nunmehr 24,
also 16 unterschiedliche Befehle pro Baustein übertragbar, aber es können deutlich
mehr Peripherieelemente bzw. Bausteine, hier vier statt einem pro
Auswahlschnittstelle ausgewählt
werden.
-
Erfindungsgemäß wird also
der Befehl bzw. die Instruktion durch ein oder mehrere Bits zur
Selektion der Bausteine select0, select1 erweitert. Dabei kann,
wie hier dargestellt, ein Teil der Instruktionsbits ersetzt werden.
-
Dann
geschieht das Ansprechen dann durch das Selektsignal über die
Auswahlschnittstellen SP1 bis SP4 und die entsprechenden Selektbits
SB in der Instruktion. Damit ist es nun möglich, mehrere SPI-Bausteine
an eine Selektleitung zu hängen.
Die endgültige
Unterscheidung erfolgt dann über
die neuen Selektbits, insbesondere zu Beginn der Instruktion. Damit
entsteht die in 2 dargestellte Befehlsstruktur.
-
Durch
die Verwendung der Selektbits SB im Instruktionsrahmen 200 ist
dann die in 1 dargestellte Selekt-Bit-Erweiterung SBE durchführbar, wodurch
dann statt der Peripherieelemente 101 bis 104 mit
weiterhin vier Auswahlschnittstellen nun Peripherieelemente 101 bis 107 ausgewählt und
angesteuert werden können.
Diese Peripherieelemente sind beispielsweise ein Endstufenschaltkreis,
ein Stabilisierungsschaltkreis inclusive Watchdog, ein reiner Überwachungsschaltkreis
(Watchdog), weitere z. B. einspritzspezifische Endstufenschaltungen
oder auch ein serielles EPROM. Die dargestellte SPI-Funktionalität der Peripherieelemente
ist beispielsweise die Initialisierung, die Kommunikation mit der Überwachungsschaltung,
insbesondere dem Watchdog, Endstufendiagnose, Einlesen von Eingängen, Schreiben
und Lesen von Daten.
-
3 zeigt
dazu in einem Timingdiagramm über
der Zeit t einen beispielhaften Signalverlauf an den Auswahlschnittstellen
SP1 bis SP4 bzw. den zugehörigen
Selektleitungen SL1 bis SL4 sowie der Busschnittstelle BIO.
-
Das
Selektsignal kann dabei z.B. zwei Werte „high" und „low" annehmen wie bei SP1 bis SP4 dargestellt.
In diesem Beispiel sind die Auswahlschnittstellen bzw. die Selektsignale
SP1 bis SP3 high, wenn man einen Selekt-Low-Betrieb zu Grunde legt: Das
bedeutet, in diesem Beispiel gibt das Schalten des Niveaus von high
auf low auf einer Leitung die Auswahl eines Peripherieelementes
an. Ebenso ist aber die umgekehrte Logik, also ein Selekt-High-Betrieb
denkbar. In diesem Beispiel wird bei tps der Selektport, also die
Auswahlschnittstelle SP4 von high auf low geschaltet. Im Zeitpunkt
ts1 wäre
somit, wie im Stand der Technik dargestellt, bei einer Anordnung,
bei welcher ein Peripherieelement je Selektport vorgesehen ist,
das Peripherieelement über
Selektport SP4 gewählt.
-
Beim
im Rahmen des Standes der Technik beschriebenen Beispiel mit Zusatzhardware,
insbesondere einem Decodierbaustein wäre durch die vier Selektports
SP1 bis SP4 beispielsweise SP1 high, SP2 high, SP3 high, SP4 low
(h h h 1) nach Ablauf einer gewissen Verarbeitungszeit ts2-ts1 im Zeitpunkt ts2
die Auswahl erfolgt.
-
Zum
Zeitpunkt t transmit ttr wird mit der Übertragung von Instruktionen
und/oder Daten über
die Bus IO BIO und somit über
das Bussystem 108 begonnen. Somit erfolgt die erfindungsgemäße Auswahl
nach Auswertung der beiden Selektbits SB im Rahmen der Instruktion
zum Zeitpunkt ts3. Im Anschluss an die Instruktion bzw. Instruktionen
können dann
Daten, wie in 3 dargestellt, übertragen
werden.
-
Zusätzlich zu
der direkten Adressierung eines Peripherieelementes, hier eines
SPI-Bausteines über
eine direkt zugeordnete Selektleitung oder im Rahmen einer Erweiterung
durch einen Decodierbaustein und einer Signalcodierung werden hier
also in den SPI-Befehlswörtern bzw.
Instruktionswörtern um
ein oder mehrere Bits durch eine entsprechende Anzahl Selektbits
ersetzt, wodurch ohne zusätzlichen Hardwareaufwand
und zusätzliche
Hardwaremaßnahmen
im Steuergerät
mehrere Bausteine an einer Selektleitung angeschlossen werden können, was große Einsparpotentiale
im Rahmen der Kosten und der Leiterplattenfläche bzw. des Schaltungsaufwandes
beinhaltet.