DE4218418A1 - Verfahren zur Überwachung der Datenübertragung zwischen einem Prozessor und einer Peripherie-Einheit sowie Anordnung zur Durchführung des Verfahrens - Google Patents
Verfahren zur Überwachung der Datenübertragung zwischen einem Prozessor und einer Peripherie-Einheit sowie Anordnung zur Durchführung des VerfahrensInfo
- Publication number
- DE4218418A1 DE4218418A1 DE19924218418 DE4218418A DE4218418A1 DE 4218418 A1 DE4218418 A1 DE 4218418A1 DE 19924218418 DE19924218418 DE 19924218418 DE 4218418 A DE4218418 A DE 4218418A DE 4218418 A1 DE4218418 A1 DE 4218418A1
- Authority
- DE
- Germany
- Prior art keywords
- address
- data
- word
- peripheral unit
- processor
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Detection And Correction Of Errors (AREA)
Description
Die Erfindung betrifft ein Verfahren zur Überwachung der
Datenübertragung zwischen einem Prozessor und einer
Peripherie-Einheit und einer Anordnung zur Durchführung
des Verfahrens.
Derartige Datenübertragungen finden im allgemeinen über
einen Datenbus statt, der mit einem Adreßbus und
gegebenenfalls weiteren Kontrollsignalen wie z. B. Read
oder Write kombiniert ist. Der Prozessor, bei dem es sich
beispielsweise um einen sogenannten Mikrokontroller
handeln kann, kann über ein derartiges Bussystem auf die
Peripherie-Einheit, beispielsweise ein sogenanntes ASIC
(anwenderspezifisches IC) zugreifen. In dieser Peripherie-
Einheit ist dazu meist ein sogenanntes Mikrocontroller-
Interface vorgesehen, über das Steuer- und Kontroll
funktionen realisiert werden können.
Beim Übertragen der Adressen bzw. Daten über das Daten
bussystem kann schon die Verfälschung eines einzelnen Bits
in den Adressen oder Daten fatale Folgen für den gesamten
Datenverkehr haben, da beispielsweise nachfolgend auf
falsche Adreßbereiche zugegriffen wird, bzw. in falsche
Bereiche neue Daten geschrieben werden. Daher ist eine
Überwachung des Datenverkehrs zwischen dem Prozessor und
der Peripherie-Einheit erforderlich. Dazu sind nach dem
Stande der Technik verschiedene Möglichkeiten bekannt. So
kann beispielsweise ein in der Peripherie-Einheit durch
den Prozessor neu beschriebener RAM-Bereich anschließend
wieder ausgelesen werden, so daß der Prozessor feststellen
kann, ob die Daten richtig abgelegt wurden. Dieses
Rücklesen erfordert jedoch relativ viel Zeit. Ferner sind
verschiedene Verfahren und Algorithmen zur Bildung von
Paritätsbits bekannt.
Es ist Aufgabe der Erfindung, ein Verfahren der eingangs
genannten Art zu schaffen, das die Sicherheit der
Erkennung von Fehlern weiter verbessert.
Nach einer ersten Ausführungsform der Erfindung ist diese
Aufgabe dadurch gelöst, daß für jede von dem Prozessor an
die Peripherie-Einheit übertragene Adresse deren Bits
einzeln mit den jeweils gleichwertigen Bits eines abge
speicherten Adreß-Paritätswortes exklusiv-oder-verknüpft
und als neues Adreß-Paritätswort für den Vergleich mit den
Bits der nächstübertragenen Adresse abgespeichert werden,
daß die Berechnung des Adreß-Paritätswortes in dem
Prozessor und in der Peripherie-Einheit unabhängig
voneinander vorgenommen wird und daß der Prozessor das in
der Peripherie-Einheit gebildete Paritätswort nach Über
tragung einer Adresse oder Adressenfolge ausliest und mit
dem selbst erzeugten Adreß-Paritätswort zwecks Kontrolle
der von der Peripherie-Einheit erkannten Adressen ver
gleicht.
Gemäß diesem Verfahren würden also sämtliche von dem
Prozessor an die Peripherie-Einheit übertragenen Adreß
worte kontrolliert. Dies geschieht dadurch, daß sowohl in
dem Prozessor wie auch in der Peripherie-Einheit unab
hängig voneinander, jedoch nach gleichem Bildungsmuster je
ein Adreß-Paritätswort erzeugt wird. Nachdem der Prozessor
eine Adresse oder eine Adressenfolge an die Peripherie-
Einheit übertragen hat (und dabei beispielsweise Daten
gelesen oder geschrieben hat), kann der Prozessor
anschließend das in der Peripherie-Einheit aus den über
tragenen Adressen gebildete Adreß-Paritätswort zurücklesen
und mit dem von ihm selbst gebildeten Adreß-Paritätswort
vergleichen. Aus diesem Vergleich ergibt sich unmittelbar,
ob die von dem Prozessor zur Peripherie-Einheit über
tragenen Adressen in dieser richtig erkannt wurden.
Die Bildung der Adreß-Paritätsworte geschieht dabei
dadurch, daß jede neu übertragene Adresse mit einem
bereits abgespeicherten Adreß-Paritätswort, das beispiels
weise vor Beginn einer Datenübertragung auf Null gesetzt
werden kann, verglichen wird. Die erste übertragene
Adresse wird einzeln Bit für Bit mit den jeweils gleich
wertigen Bits des abgespeicherten Adreßparitätswortes
verglichen. Es wird also das niederwertigste Bit der über
tragenen Adresse mit dem niederwertigsten Adreß-Paritäts
wort exklusiv-oder-verknüpft und dieses neue Bit als
niederwertigstes Bit des Adreß-Paritätswortes neu abge
speichert. Dieser Vorgang gilt paarweise für alle weiteren
Bits des der übertragenen Adresse bzw. des alten abge
speicherten Adreß-Paritätswortes. Die durch die Exklusiv-
Oder-Verknüpfungen neu gebildeten Bits werden als neues
Adreß-Paritätswort abgespeichert. Bei der nächsten über
tragenen Adresse wird dieses neu abgespeicherte Adreß-
Paritiätswort in gleicher Weise bitweise mit den Bits der
neuen Adresse exklusiv-oder-verknüpft.
Nachdem beispielsweise eine Folge derartiger Adressen
während einer Datenübertragung zwischen Prozessor und der
Peripherie-Einheit übertragen wurde, kann der Prozessor
nachfolgend das in der Peripherie-Einheit erzeugte Adreß-
Paritätswort auslesen und mit dem von ihm selbst
gebildeten vergleichen.
Es ist auf diese Weise, insbesondere durch die bitweise
Exklusiv-Oder-Verknüpfung aller Adressenworten, auch nach
einer Folge von Adressen noch möglich, zu erkennen, ob ein
einzelnes Bit in den übertragenen Adressen möglicherweise
von der Peripherie-Einheit falsch erkannt wurde. Es ergibt
sich hierbei eine wesentlich höhere Sicherheit als bei der
üblichen Paritätsbildung. Dadurch, daß vorteilhafterweise
erst nach einer übertragenen Folge von Adressen das
Paritätswort zurückgelesen wird, wird Zeit gespart.
Aufgrund der oben beschriebenen Zusammenhänge werden
gleichwohl Fehler in allen zuvor übertragenen Adressen
erkannt.
Nach einer zweiten Ausführungsform der Erfindung ist vor
gesehen, daß für jedes übertragene Datenwort dessen Bits
einzeln mit den jeweils gleichwertigen Bits eines abge
speicherten Daten-Paritätswortes exklusiv-oder-verknüpft
und als neues Daten-Paritätswort für den Vergleich mit den
Bits des nächsten übertragenen Datenwortes abgespeichert
werden, daß die Berechnung des Daten-Paritätswortes in dem
Prozessor und in der Peripherie-Einheit unabhängig
voneinander vorgenommen wird und daß der Prozessor das in
der Peripherie-Einheit gebildete Daten-Paritätswort nach
Übertragung eines oder mehrerer Datenworte ausliest und
mit dem selbst erzeugten Daten-Paritätswort zwecks
Kontrolle der Datenübertragung vergleicht.
Diese Bildung der Daten-Paritätsworte findet nach dem
gleichen Muster statt, wie die der oben beschriebenen
Adreß-Paritätsworte. Auch hier kann durch Rücklesen des in
der Peripherie-Einheit gebildeten Daten-Paritätswortes
eine Kontrolle der Datenübertragung durch den Prozessor
stattfinden.
Nach einer Ausgestaltung dieser zweiten Ausführungsform
der Erfindung ist vorgesehen, daß sowohl in dem Prozessor
wie auch in der Peripherie-Einheit unabhängig voneinander
jeweils zwei Daten-Paritätsworte gebildet werden, wobei
für die Bildung des ersten Daten-Paritätswort nur die von
dem Prozessor zur Peripherie-Einheit übertragenen Daten
und für die Bildung des zweiten Daten-Paritätswortes nur
die von der Periphier-Einheit zu dem Prozessor über
tragenen Daten herangezogen werden.
Durch die getrennte Bildung der Daten-Paritätsworte für in
die Peripherie-Einheit eingeschriebene oder aus ihr ausge
lesene Daten, können Einlese- bzw. Auslesevorgänge durch
den Prozessor getrennt überwacht werden. Damit ist
gegebenenfalls eine engere Einkreisung eines Fehlers in
der Datenübertragung möglich.
Eine optimale Sicherheit bei der Überwachung der Daten
übertragung kann durch Kombination der Verfahren nach den
beiden Ausführungsformen erreicht werden. Dazu ist nach
einer Ausgestaltung der Erfindung vorgesehen, daß für jede
Datenübertragung zwischen dem Prozessor und der
Peripherie-Einheit die entsprechenden Adressen zur Bildung
der Adreß-Paritätsworte und die übertragenen Daten zur
Bildung des jeweils zugeordneten Daten-Paritätswortes
herangezogen werden.
Nach einer weiteren Ausgestaltung der Erfindung ist vor
gesehen, daß für jedes in der Peripherie-Einheit gebildete
Paritätswort eine zugeordnete Adresse zum Auslesen vor
gesehen ist, nach deren Übertragung die Peripherie-Einheit
das zugeordnete Paritätswort an den Prozessor sendet.
Werden beispielsweise sowohl in den Prozessor wie auch in
der Peripherie-Einheit ein Adreß-Paritätswort und zwei
Daten-Paritätsworte (für gelesene bzw. eingeschriebene
Daten) gebildet, so sind drei spezielle Adressen vorge
sehen, von denen je eine je einem dieser Paritätsworte
zugeordnet ist. Wird einer dieser Adressen vom Prozessor
an die Peripherie-Einheit übertragen, so wird aus der
Peripherie-Einheit das zugeordnete Paritätswort ausgelesen
und kann in dem Prozessor mit dem von ihm selbst
gebildeten Paritätswort verglichen werden.
Bei jeder Initialisierung des Prozessors und der
Peripherie-Einheit sowie gegebenenfalls auch nach einer
Datenübertragung bzw. nach Auslesen der Paritätsworte ist
es sinnvoll, die Paritätsworte sowohl im Prozessor wie in
der Peripherie-Einheit zurückzusetzen, d. h. alle Bits der
Paritätsworte auf Null zu setzen. Dazu ist nach einer
weiteren Ausgestaltung der Erfindung vorgesehen, daß eine
vorgegebene Adresse dieses Zurücksetzen auslöst. Es kann
sich bei dieser Adresse um eine solche handeln, die aus
schließlich das Rücksetzen auslöst, diese Adresse kann
aber auch kombinierte mit einer der drei ober erläuterten
Adressen, die ein Auslesen der Paritätsworte aus der
Peripherie-Einheit auslösen. In diesem Falle wird
unmittelbar nach dem Auslesen eines Paritätswortes das
entsprechende Register in der Peripherie-Einheit zurückge
setzt.
Nach einer weiteren Ausgestaltung der Erfindung ist vor
gesehen, daß die Peripherie-Einheit bei Adressierung durch
eine vorgegebene Adresse aus allen in vorgegebenen
Registern der Peripherie-Einheit abgespeicherten Daten
worten ein Daten-Paritätswort bildet und dieses zum
Prozessor überträgt.
Auf diese Weise können die Inhalte bestimmter Register in
der Peripherie-Einheit überprüft werden. Durch die Ver
knüpfung aller Datenworte der Inhalte der zu überprüfenden
Register wird mit großer Wahrscheinlichkeit ein Fehler in
einem der dort abgespeicherten Datenworte erkannt.
Für eine Interface-Schaltung für die Peripherie-Einheit
zur Durchführung des Verfahrens ist nach einer weiteren
Ausgestaltung der Erfindung vorgesehen, daß in der
Peripherie-Einheit für jedes dort zu erzeugende Paritäts
wort je eine Schaltungsanordnung des folgenden Aufbaus
vorgesehen ist:
- - es ist ein Register (1, 201, 301) vorgesehen, das eine Anzahl von Speicherzellen entsprechend der Anzahl der Bits jedes Adreß- bzw. Datenwortes auf weist,
- - es sind Exklusiv-Oder-Gatter (20 bis 27, 220 bis 227, 320 bis 327) gleicher Anzahl vorgesehen,
- - die Ausgänge der Speicherzellen (10 bis 17, 210 bis 217, 310 bis 317) sind mit je einem Eingang eines zugeordneten Exklusiv-Oder-Gatters (20 bis 27, 220 bis 227, 320 bis 327) verbunden, dessen Ausgang mit einem Eingang der jeweils zugeordneten Speicherzelle verbunden ist,
- - zweite Eingänge der Exklusiv-Oder-Gatter (20 bis 27, 220 bis 227, 320 bis 327) sind mit den Bits der über tragenen Adressen- bzw. Datenworte so belegt, daß jeweils gleichwertige Bits der übertragenen Adressen- bzw. Datenworte und des in dem Register (1, 201, 301) abgespeicherten Paritätswortes in einem Gatter mit einander verknüpft werden,
- - das Register (1, 201, 301) wird mit jedem neuen Adreß-Wort bzw. Datenwort getaktet, so daß das neu übertragene Adreß- bzw. Datenwort mit dem letzten in dem Register (1, 201, 301) abgespeicherten Paritäts wort bitweise exklusiv-oder-verknüpft wird und dieses Verknüpfungsergebnis als neues Paritätswort in dem Register (1, 201 301) abgespeichert wird.
Für jedes in der Peripherie-Einheit zu bildende
Paritätswort ist je eine dieser Schaltungsanordnungen
erforderlich.
Innerhalb jeder dieser Schaltungsanordnungen ist ein
Register vorgesehen, das so viele Speicherzellen aufweist,
wie die Adreßworte bzw. Datenworte Bits. Ferner sind
Exklusiv-Oder-Gatter gleicher Anzahl vorgesehen. Je einer
Speicherzelle des Registers ist ein Exklusiv-Oder-Gatter
zugeordnet. Der Ausgang jeder Speicherzelle ist mit einem
Eingang des jeweils zugeordneten Exklusiv-Oder-Gatters
verbunden. Der Ausgang des Exklusiv-Oder-Gatters wiederum
ist mit dem Eingang der zugeordneten Speicherzelle ver
bunden. Die Exklusiv-Oder-Gatter weisen ferner je einen
zweiten Eingang auf, der mit einem Bit des Adressen- bzw.
Datenwortes, das zu überprüfen ist, belegt ist. Diese
Zuordnung findet dabei so statt, daß jeweils gleichwertige
Bits des Adressen- bzw. Datenwortes einerseits und des in
dem Register angespeicherten Paritätswortes andererseits
in einem Gatter miteinander exklusiv-oder-verknüpft
werden. Es wird also das niederwertigste Bit eines Adreß- bzw.
Datenwortes mit dem niederwertigsten Bit des abge
speicherten Paritätswortes verglichen, das zweitnieder
wertigste Bit des Adressen- bzw. Datenwortes mit dem
zweitniederwertigsten Bit des abgespeicherten Paritäts
wortes, und sofort.
Diese Verknüpfung findet bei jedem neu übertragenen
Adressen- bzw. Datenwort statt. Die Verknüpfungsergebnisse
der einzelnen Bit ergeben das neue Paritätswort, das in
das Register eingeschrieben wird, aus dem zuvor das alte
Paritätswort ausgelesen wurde. Dieses nunmehr neu abge
speicherte Paritätswort steht in dem Register zur Ver
knüpfung des nächsten übertragenen Adressen- bzw. Daten
wortes zur Verfügung. Dieser Vorgang setzt sich solange
fort, bis durch Anlegen einer bestimmten vorgegebenen
Adresse durch den Prozessor das in dem Register abgelegte
Paritätswort aus diesem ausgelesen und an den Prozessor
übertragen wird. Diese in ihrem Aufbau einfache Anordnung
gestattet auf oben beschriebene Weise eine nahezu voll
ständige Kontrolle der übertragenen Adressen bzw. Daten
worte.
Anhand der Zeichnung werden drei Ausführungsbeispiele für
Interface-Schaltungen für die für eine Peripherie-Einheit
zur Durchführung der Überwachung der Datenübertragung
näher erläutert. Es zeigen:
Fig. 1 eine Interface-Schaltung zur Erzeugung des Adreß-
Paritätswortes in einer Peripherie-Einheit,
Fig. 2 eine entsprechende Schaltungsanordnung zur
Erzeugung eines Daten-Paritätswortes für aus der
Peripherie-Einheit ausgelesene Daten und
Fig. 3 eine Schaltungsanordnung entsprechend Fig. 2 für in
die Peripherie-Einheit eingeschriebene Daten.
Eine in Fig. 1 dargestellte Schaltungsanordnung dient zur
Erzeugung eines Adreß-Paritätswortes in einer Interface-
Schaltung einer Peripherie-Einheit.
Dazu weist die Schaltungsanordnung in Fig. 1 ein
Register 1 auf, welches meinerseits Speicherzellen 10
bis 17 aufweist. Es sind ferner Exklusiv-Oder-Gatter 20
bis 27 vorgesehen, wobei das Exklusiv-Oder-Gatter 20 der
Speicherzelle 10 des Registers 1, das Exklusiv-Oder-
Gatter 21 der Registerzelle 11 zugeordnet ist und sofort
bis zum Exklusiv-Oder-Gatter 27, das der Registerzelle 17
des Registers 1 zugeordnet ist.
Der Ausgang der Speicherzelle 10 ist mit einem ersten
Eingang des Exklusiv-Oder-Gatters 20 verbunden, der
Ausgang der Speicherzelle 11 mit einem ersten Eingang des
Exklusiv-Oder-Gatters 21 und sofort. Auf zweite Eingänge
der Exklusiv-Oder-Gatter 20 bis 27 ist das von außen
beispielsweise über einen Adreßbus auf die Peripherie-
Einheit geführte Adreßwort A geführt. Dabei ist das
niederwertigste Bit A0 auf den zweiten Eingang des
Exklusiv-Oder-Gatters 20, das zweitniederwertigste Bit A1
auf den zweiten Eingang des Exklusiv-Oder-Gatters 21 und
sofort bis hin zum höchstwertigen Bit A7, das auf den
zweiten Eingang des Exklusiv-Oder-Gatters 27 geführt ist.
Im Register 1 ist an einem Takteingang ein in der Fig. mit
SYS CLK bezeichnetes Signal zugeführt, das als Taktsignal
vorgesehen ist.
Ferner ist dem Register 1 ein Signal SYNC RST zugeführt,
das dazu dient, beim Rücksetzen der Peripherie-Einheit,
wie dies beispielsweise beim Einschaltvorgang notwendig
ist, das Register 1 und somit das gespeicherte Adreß-
Paritätswort auf den definierten Ausgangszustand Null zu
setzen.
Ein Signal CS dient dazu, das Register 1 zu aktivieren
bzw. zu deaktivieren. Über ein Signal SRX kann das
Register 1, wie noch näher zu beschreiben ist, adressiert
werden.
Der Schaltungsanordnung in Fig. 1 ist ferner das Signal
CPU CYCLE zugeführt, das in ein Register 31 eingeschrieben
wird, welches mit dem Signal SYS CLK getaktet ist. Der
Ausgang des Registers 31 wird in invertierter Form mit dem
Signal CPU CYCLE in einem Addierer 32 verknüpft und als
Enable-Signal dem Register 21 zugeführt. Dieses Signal
steuert das Register 1 so, daß mit Auftreten des Enable-
Signals mit dem nächsten Takt des Signals SYS CLK neue an
den Eingängen der Speicherzelle 10 anstehende Daten in die
Speicherzellen 10 bis 17 eingeschrieben werden. Die
Anordnung mit dem Register 31 und dem Und-Gatter 32 dient
dazu, das Signal CPU CYCLE so zu verzögern, daß die an den
Eingängen der Speicherzellen 10 bis 17 des Registers 1
anliegenden Daten nach erfolgten Exklusiv-Oder-Verknüpfung
gültig sind. Diese Anordnung dient also mit anderen Worten
dazu, die durch die Verknüpfung auftretenden Laufzeiten
auszugleichen.
Die Bildung eines Adreß-Paritätswortes in den Speicher
zellen 10 bis 17 des Registers 1 vollzieht sich auf
folgende Weise:
Geht man zunächst einmal davon aus, daß nach einer
Initialisierung oder nach einer bereits erfolgten Über
tragung eines Adreß-Paritätswortes die Speicherzellen 10
bis 17 zurückgesetzt sind, also in diese Speicherzellen
z. B. Nullen eingeschrieben sind, so werden diese Nullen an
die ersten Eingänge der Exklusiv-Oder-Gatter 20 bis 27
geführt. Ein von einem in der Fig. nicht dargestellten
Prozessor an die Peripherie-Einheit und somit auch an die
in Fig. 1 dargestellte Schaltungsanordnung übertragenes
Adreßwort wird an die zweiten Eingänge der Exklusiv-Oder-
Gatter 20 bis 27 angelegt, wobei das niederwertigste Bit
an das Exklusiv-Oder-Gatter 20 und das höchstwertige Bit
an das Exklusiv-Oder-Gatter 27 angeleget wird. Es findet
nun in den Exklusiv-Oder-Gattern eine bitweise Verknüpfung
der Bits des aus den Speicherzellen 10 bis 17 stammenden
Adreß-Paritätswortes und des aktuellen von dem Prozessor
übertragenen Adreßwortes statt. Das Verknüpfungsergebnis
gelangt auf die Eingänge der Speicherzellen 10 bis 17 und
wird dort mit dem nächsten Takt des Signals Enable (EN1)
und des Signals SYS CLK übernommen. Damit ist das nächste
Paritätswort in den Speicherzellen 10 bis 17 des
Registers 1 abgespeichert.
Dieses nunmehr in den Speicherzellen 10 bis 17 abge
speicherte Paritätswort liegt wiederum an den ersten
Eingängen der Exklusiv-Oder-Gatter 20 bis 27 an. Mit dem
nächsten übertragenen Adreßwort wird dieses Paritätswort
in den Exklusiv-Oder-Gattern 20 bis 27 wiederum bitweise
exklusiv-oder-verknüpft. Dieses Verknüpfungsergebnis
gelangt dann wiederum als nächstes Paritätswort an die
Eingänge der Speicherzellen 10 bis 17 und von dort mit den
nächsten Takten von Enable bzw. SYS CLK übernommen. Dieser
Vorgang setzt sich mit jedem neuen übertragenen Adreßwort
fort. Nach jedem neu übertragenen Adreßwort ist das in den
Speicherzellen 10 bis 17 abgespeicherte Paritätswort ent
sprechend der bitweise vorgenommenen Exklusiv-Oder-Ver
knüpfung erneuert.
In dieses in den Speicherzellen 10 bis 17 abgespeicherte
Paritätswort gehen die Werte sämtlicher zuvor übertragenen
Adressen ein. Da in der in der Fig. nicht dargestellten
Prozessoreinheit ein entsprechendes Paritätswort auf
gleiche Weise gebildet wurde, kann der Prozessor durch
Vergleich dieser beiden Paritätsworte feststellen, ob
sämtliche Adressen in der Peripherie-Einheit richtig
erkannt wurden.
Dieses Auslesen des in den Speicherzellen 10 bis 17 des
Registers 1 abgespeicherten Adreßwortes geschieht durch
Anlegen einer bestimmten Adresse des Signals SRX. Bei
Anlegen dieser Adresse wird nachfolgend das in den
Speicherzellen 10 bis 17 abgespeicherte Adreß-Paritätswort
(in der Fig. APAR0 bis APAR7) an den Prozessor übertragen.
Gleichzeitig mit dieser Adresse können die Speicher
zellen 10 bis 17 wieder auf Null zurückgesetzt werden. Für
dieses Zurücksetzen kann aber auch eine andere Adresse SRX
vorgesehen sein.
Nach dem Zurücksetzen der Speicherzellen 10 bis 17 durch
eine solche Adresse wiederholt sich nachfolgend der oben
beschriebene Vorgang, bis das nächste Adreßwort wieder
ausgelesen wird und die Speicherzellen 10 bis 17
anschließend wieder zurückgesetzt werden.
Auf diese Weise können für eine Adresse bzw. an eine
Adreßfolge ein Paritätswort gebildet werden, in das die
Werte aller zuvor übertragenen Adressen eingehen, und das
sehr sicher anzeigt, ob eventuell eine der Adressen nicht
richtig übertragen bzw. in der Peripherie-Einheit nicht
richtig erkannt wurde.
Eine in Fig. 2 dargestellte Anordnung dient dazu, ein
Paritätswort zu bilden, in das nur Daten eingehen, die aus
der Peripherie-Einheit zum Prozessor übertragen werden.
Die entsprechenden Datenworte sind in der Fig. 2 mit DRR
bezeichnet. Die Gesamtanordnung gemäß Fig. 2 ist weit
gehend identisch mit denjenigen gemäß Fig. 1, mit dem
einzigen Unterschied, daß anstelle des Adreßwortes APAR
gemäß Fig. 1 an die ersten Eingänge der Exklusiv-Oder-
Gatter die Datenworte DRR gelangen, wobei ebenfalls das
niederwertigste Bit an das Exklusiv-Oder-Gatter 220 (ent
sprechend dem Gatter 20 in Fig. 1) und das höchstwertige
Bit an das Exklusiv-Oder-Gatter 227 angelegt werden. Die
Arbeitsweise der Schaltungsanordnung entspricht voll
ständig derjenigen gemäß Fig. 1, so daß auch hier mit
jedem neuen von der Peripherie-Einheit an den Prozessor
übertragenen Datenwort eine bitweise Exklusiv-Oder-Ver
knüpfung mit dem zuvor in den Speicherzellen 210 bis 217
des Registers 201 abgespeicherten Paritätswort vorgenommen
wird und das Ergebnis der Verknüpfung wiederum als neues
Paritätswort in den Speicherzellen 210 bis 217 abge
speichert wird. Auch hier kann durch eine bestimmte
Adresse SRX, welche nicht mit derjenigen Adresse SRX der
Schaltung gemäß Fig. 1 identisch ist, ein Auslesen und
gegebenenfalls ein anschließendes Zurücksetzen der
Speicherzellen 210 bis 217 ausgelöst werden.
Eine in Fig. 3 dargestellte Schaltungsanordnung ist weit
gehend ähnlich mit den Schaltungsanordnungen gemäß Fig. 1
und 2, jedoch mit dem Unterschied, daß die als Ver
zögerungsglieder dienenden Register 231 und Gatter 232
(bzw. 31 und 32 gemäß Fig. 1) entfallen können, da der
Schreibimpuls WR-SYNC bereits vorgeformt ist und, im
Gegensatz zu den Signalen CPU-CYCLE und RD-SYNC in Fig. 1
bzw. Fig. 2, keiner weitern Impulsformung bedarf.
Die Anordnung gemäß Fig. 3 dient dazu, ein Paritätswort
aus denjenigen Datenworten zu bilden, die von der
Prozessoreinheit zur Peripherie-Einheit übertragen werden.
Diese Datenworte sind in der Fig. mit DW bezeichnet und an
die zweiten Eingänge der Exklusiv-Oder-Gatter 320 bis 327
geführt. Auch hier sind den Exklusiv-Oder-Gattern 320
bis 327 entsprechende Speicherzellen 310 bis 317 eines
Registers 301 zugeordnet. Die Schaltungsanordnung gemäß
Fig. 3 arbeitet in entsprechender Weise wie diejenige
gemäß Fig. 1 und 2, jedoch ist diejenige Adresse SRX, mit
der die Speicherzellen 310 bis 317 ausgelesen und
gegebenenfalls anschließend wieder zurückgesetzt werden
können, eine andere als diejenigen Adressen SRX der
Anordnungen gemäß Fig. 1 und 2.
Um eine möglichst gute Überwachung der Datenübertragung zu
erzielen, sind in einer Peripherie-Einheit bzw. in deren
Interface-Schaltung vorteilhafterweise alle drei
Anordnungen gemäß den in den Fig. 1, 2 und 3 dargestellten
Schaltungsanordnungen vorgesehen, so daß also sämtliche
übertragenen Adressen sowie die Datenworte getrennt für
beide Übertragungsrichtungen überwacht werden können. Es
wird ausschließlich durch den Prozessor bestimmt, zu
welchem Zeitpunkt die entsprechenden Paritätsworte aus den
Registern 1, 201 und 301 ausgelesen werden und in dem
Prozessor mit den von ihm erzeugten Paritätsworten ver
glichen werden. Durch Überwachung sowohl der Adreßworte
wie auch beider Arten Datenworte ist eine sehr gute Über
wachung einer Kommunikation zwischen dem Prozessor und der
Peripherie-Einheit möglich. Durch die Dreiteilung ist auch
eine relativ enge Fehlereingrenzung bereits aufgrund der
Paritätsworte möglich.
Claims (8)
1. Verfahren zur Überwachung der Datenübertragung
zwischen einem Prozessor und einer Peripherie-Einheit,
dadurch gekennzeichnet, daß für jede von dem Prozessor an
die Peripherie-Einheit übertragene Adresse deren Bits
einzeln mit den jeweils gleichwertigen Bits eines abge
speicherten Adreß-Paritätswortes exklusiv-oder-verknüpft
und als neues Adreß-Paritätswort für den Vergleich mit den
Bits der nächstübertragenen Adresse abgespeichert werden,
daß die Berechnung des Adreß-Paritätswortes in dem
Prozessor und in der Peripherie-Einheit unabhängig
voneinander vorgenommen wird und daß der Prozessor das in
der Peripherie-Einheit gebildete Paritätswort nach Über
tragung einer Adresse oder Adressenfolge ausliest und mit
dem selbst erzeugten Adreß-Paritätswort zwecks Kontrolle
der von der Peripherie-Einheit erkannten Adressen ver
gleicht.
2. Verfahren zur Überwachung der Datenübertragung
zwischen einem Prozessor und einer Peripherie-Einheit,
dadurch gekennzeichnet, daß für jedes übertragene Daten
wort dessen Bits einzeln mit den jeweils gleichwertigen
Bits eines abgespeicherten Daten-Paritätswortes exklusiv-
oder-verknüpft und als neues Daten-Paritätswort für den
Vergleich mit den Bits des nächsten übertragenen Daten
wortes abgespeichert werden, daß die Berechnung des Daten-
Paritätswortes in dem Prozessor und in der Peripherie-
Einheit unabhängig voneinander vorgenommen wird und daß
der Prozessor das in der Peripherie-Einheit gebildete
Daten-Paritätswort nach Übertragung eines oder mehrerer
Datenworte ausliest und mit dem selbst erzeugten Daten-
Paritätswort zwecks Kontrolle der Datenübertragung ver
gleicht.
3. Verfahren nach Anspruch 2,
dadurch gekennzeichnet, daß sowohl in dem Prozessor wie
auch in der Peripherie-Einheit unabhängig voneinander
jeweils zwei Daten-Paritätsworte gebildet werden, wobei
für die Bildung des ersten Daten-Paritätswortes nur die
von dem Prozessor zur Peripherie-Einheit übertragenen
Daten und für die Bildung des zweiten Daten-Paritätswortes
nur die von der Periphie-Einheit zu dem Prozessor über
tragenen Daten herangezogen werden.
4. Verfahren nach Anspruch 1 und Anspruch 2 oder
Anspruch 3,
dadurch gekennzeichnet, daß für jede Datenübertragung
zwischen dem Prozessor und der Peripherie-Einheit die
entsprechenden Adressen zur Bildung der Adreß-Paritäts
worte und die übertragenen Daten zur Bildung des jeweils
zugeordneten Daten-Paritätswortes herangezogen werden.
5. Verfahren nach einem der Ansprüche 1 bis 4,
dadurch gekennzeichnet, daß für jedes in der Peripherie-
Einheit gebildete Paritätswort eine zugeordnete Adresse
zum Auslesen vorgesehen ist, nach deren Übertragung die
Peripherie-Einheit das zugeordnete Paritätswort an den
Prozessor sendet.
6. Verfahren nach einem der Ansprüche 1 bis 5,
dadurch gekennzeichnet, daß eine vorgegebene Adresse vor
gesehen ist, bei deren Senden in der Peripherie-Einheit
alle Bits der Paritätsworte auf Null gesetzt werden.
7. Verfahren nach einem der Ansprüche 1 bis 6,
dadurch gekennzeichnet, daß die Peripherie-Einheit bei
Adressierung durch eine vorgegebene Adresse aus allen in
vorgegebenen Registern der Peripherie-Einheit abge
speicherten Datenworten ein Daten-Paritätswort bildet und
dieses zum Prozessor überträgt.
8. Interface-Schaltung für die Peripherie-Einheit zur
Durchführung des Verfahrens nach einem oder mehreren der
Ansprüche 1 bis 7,
dadurch gekennzeichnet, daß in der Peripherie-Einheit für
jedes dort zu erzeugende Paritätswort je eine Schaltungs
anordnung des folgenden Aufbaus vorgesehen ist:
- - es ist ein Register (1, 201, 301) vorgesehen, das eine Anzahl von Speicherzellen entsprechend der Anzahl der Bits jedes Adreß- bzw. Datenwortes auf weist,
- - es sind Exklusiv-Oder-Gatter (20 bis 27, 220 bis 227, 320 bis 327) gleicher Anzahl vorgesehen,
- - die Ausgänge der Speicherzellen (10 bis 17, 210 bis 217, 310 bis 317) sind mit je einem Eingang eines zugeordneten Exklusiv-Oder-Gatters (20 bis 27, 220 bis 227, 320 bis 327) verbunden, dessen Ausgang mit einem Eingang der jeweils zugeordneten Speicherzelle verbunden ist,
- - zweite Eingänge der Exklusiv-Oder-Gatter (20 bis 27, 220 bis 227, 320 bis 327) sind mit den Bits der über tragenen Adressen- bzw. Datenworte so belegt, daß jeweils gleichwertige Bits der übertragenen Adressen- bzw. Datenworte und des in dem Register (1, 201, 301) abgespeicherten Paritätswortes in einem Gatter mit einander verknüpft werden,
- - das Register (1, 201, 301) wird mit jedem neuen Adreß-Wort bzw. Datenwort getaktet, so daß das neu übertragene Adreß- bzw. Datenwort mit dem letzten in dem Register (1, 201, 301) abgespeicherten Paritäts wort bitweise exklusiv-oder-verknüpft wird und dieses Verknüpfungsergebnis als neues Paritätswort in dem Register (1, 201, 301) abgespeichert wird.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19924218418 DE4218418A1 (de) | 1992-06-04 | 1992-06-04 | Verfahren zur Überwachung der Datenübertragung zwischen einem Prozessor und einer Peripherie-Einheit sowie Anordnung zur Durchführung des Verfahrens |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE19924218418 DE4218418A1 (de) | 1992-06-04 | 1992-06-04 | Verfahren zur Überwachung der Datenübertragung zwischen einem Prozessor und einer Peripherie-Einheit sowie Anordnung zur Durchführung des Verfahrens |
Publications (1)
Publication Number | Publication Date |
---|---|
DE4218418A1 true DE4218418A1 (de) | 1993-12-09 |
Family
ID=6460374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE19924218418 Withdrawn DE4218418A1 (de) | 1992-06-04 | 1992-06-04 | Verfahren zur Überwachung der Datenübertragung zwischen einem Prozessor und einer Peripherie-Einheit sowie Anordnung zur Durchführung des Verfahrens |
Country Status (1)
Country | Link |
---|---|
DE (1) | DE4218418A1 (de) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102007029116A1 (de) * | 2007-06-25 | 2009-01-02 | Continental Automotive Gmbh | Verfahren zum Betreiben eines Mikrocontrollers und einer Ausführungseinheit sowie ein Mikrocontroller und eine Ausführungseinheit |
EP2667304A2 (de) | 2012-05-24 | 2013-11-27 | PHOENIX CONTACT GmbH & Co. KG | Eingang-Ausgangsmodul |
-
1992
- 1992-06-04 DE DE19924218418 patent/DE4218418A1/de not_active Withdrawn
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102007029116A1 (de) * | 2007-06-25 | 2009-01-02 | Continental Automotive Gmbh | Verfahren zum Betreiben eines Mikrocontrollers und einer Ausführungseinheit sowie ein Mikrocontroller und eine Ausführungseinheit |
US8392815B2 (en) | 2007-06-25 | 2013-03-05 | Continental Automotive Gmbh | Method for the operation of a microcontroller and an execution unit and microcontroller and an execution unit |
EP2667304A2 (de) | 2012-05-24 | 2013-11-27 | PHOENIX CONTACT GmbH & Co. KG | Eingang-Ausgangsmodul |
DE102012010145A1 (de) | 2012-05-24 | 2013-11-28 | Phoenix Contact Gmbh & Co. Kg | E/A-Modul |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE2328869C2 (de) | Verfahren und Schaltungsanordnung zum Betreiben eines digitalen Speichersystems | |
DE2132565C3 (de) | Umsetzer | |
DE69123952T2 (de) | Rechneradressierungseinrichtung | |
DE2023908A1 (de) | Ausfallverträgliches, digitales Speichersystem | |
DE3300263A1 (de) | Schaltungsanordnung zur zuteilung des zugriffs zu einer auf anforderungsbasis gemeinsam benutzten sammelleitung | |
DE3300699A1 (de) | Verfahren und schaltungsanordnung zur adressierung der speicher mehrerer datenverarbeitender einrichtungen in einem mehrfachleitungssystem | |
DE2741886A1 (de) | Datenuebertragungseinrichtung | |
DE3222390A1 (de) | Kanal-schnittstellenschaltungsanordnung | |
DE2219918A1 (de) | Programmierbares Steuergerät | |
DE2725396C3 (de) | ||
DE2225841B2 (de) | Verfahren und Anordnung zur systematischen Fehlerprüfung eines monolithischen Halbleiterspeichers | |
DE19614238C1 (de) | Kommunikationssystem mit einer Meisterstation und mindestens einer Sklavenstation | |
DE2926322A1 (de) | Speicher-subsystem | |
EP0062141B1 (de) | Schaltungsanordnung zur Eingabe von Steuerbefehlen in ein Mikrocomputersystem | |
DE2131787C3 (de) | Schaltungsanordnung zur Fehlerfeststellung bei Datenverarbeitungssystemen | |
WO2001022225A1 (de) | Verfahren und schaltungsanordnung zum speichern von datenworten in einem ram modul | |
DE69122001T2 (de) | Integrierte Schaltung mit einer Standardzelle, einer Anwendungszelle und einer Prüfzelle | |
DE2628847A1 (de) | Selbstpruefende lese- und schreibschaltung | |
DE2242279C3 (de) | Schaltungsanordnung zur Ermittlung von Fehlern in einer Speichereinheit eines programmgesteuerten Datenvermittlungssystems | |
DE4218418A1 (de) | Verfahren zur Überwachung der Datenübertragung zwischen einem Prozessor und einer Peripherie-Einheit sowie Anordnung zur Durchführung des Verfahrens | |
DE19645057C2 (de) | Vorrichtung zur Selektion von Adressenwörtern mittels Demultiplex-Decodierung | |
DE69126249T2 (de) | Verarbeitungsvorrichtung und Verfahren zur Programmierung einer solchen Vorrichtung | |
EP0453609B1 (de) | Verfahren zum Testen einer kleinsten adressierbaren Einheit eines RAM's auf über einer bestimmten Zahl liegende Bitfehler | |
DE3422287A1 (de) | Pruefanordnung fuer digitalschaltungen | |
DE4030629C2 (de) | Anordnung zur Sicherung von mit den Speichereinträgen eines Arbeitsspeichers gekoppelten Steuerinformationen in einem Multiprozessorsystem |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
8141 | Disposal/no request for examination |