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 Verfahrens

Info

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
Application number
DE19924218418
Other languages
English (en)
Inventor
Michael Dr Behrens
Roland Lieder
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Philips Intellectual Property and Standards GmbH
Original Assignee
Philips Patentverwaltung GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Philips Patentverwaltung GmbH filed Critical Philips Patentverwaltung GmbH
Priority to DE19924218418 priority Critical patent/DE4218418A1/de
Publication of DE4218418A1 publication Critical patent/DE4218418A1/de
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding 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.
DE19924218418 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 Withdrawn DE4218418A1 (de)

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)

* Cited by examiner, † Cited by third party
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

Cited By (4)

* Cited by examiner, † Cited by third party
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