-
Die
vorliegende Erfindung betrifft eine Vorrichtung gemäß dem Oberbegriff
des Patentanspruchs 1, d.h. eine Anordnung mit einer Datenverarbeitungseinrichtung
(DV), einem Speicher (M) zum Speichern von von der Datenverarbeitungseinrichtung
benötigten
Daten (D1), und einer Überprüfungseinrichtung
(CHK), welche
- – beim Auslesen von Daten (D1)
aus dem Speicher (M) Signaturdaten (S2) erzeugt,
- – die
erzeugten Signaturdaten (S2) mit der Überprüfungseinrichtung (CHK) zugeführten, den
aus dem Speicher (M) ausgegebenen Daten (D1) zugeordneten Signaturdaten
(S1) vergleicht, und
- – abhängig vom
Ergebnis dieses Vergleiches festlegt, ob die aus dem Speicher (M)
ausgegebenen Daten (D1) zur Verwendung durch die Datenverarbeitungseinrichtung
(DV) freigegeben werden können.
-
Anordnungen
mit einer Datenverarbeitungseinrichtung und einem Speicher sind
seit vielen Jahren in unzähligen
Ausführungsformen
bekannt und bedürfen
keiner näheren
Erläuterung.
-
Wenn
eine solche Anordnung oder ein eine solche Anordnung enthaltendes
System für
sicherheitskritische Anwendungen, beispielsweise zur Steuerung des
Antiblockiersystems oder des Airbags eines Kraftfahrzeuges verwendet
wird; müssen
Vorkehrungen getroffen werden, durch welche sichergestellt ist,
daß die
Anordnung bzw. das diese enthaltende System unter allen Umständen fehlerfrei
arbeitet; wenn die Anordnung bzw. das diese enthaltende System nicht
fehlerfrei arbeiten würde,
könnte
dies lebensbedrohende Folgen haben.
-
Zu
den Anforderungen, die in sicherheitskritischen Systemen erfüllt sein
müssen,
gehört
unter anderem, daß die
durch die Datenverarbeitungseinrichtung aus dem Speicher ausgelesenen
Daten fehlerfrei sind. Dies kann beispielsweise durch die Verwendung
von Fehlerkorrekturdaten (ECC) erreicht werden, die in einem zweiten
Speicher gespeichert werden. In diesem Fall werden beim Auslesen
von im ersten Speicher gespeicherten und im folgenden als Nutzdaten
bezeichneten Daten auch die im zweiten Speicher gespeicherten Fehlerkorrekturdaten
ausgelesen, und wird durch eine Gegenüberstellung der Nutzdaten und
der Fehlerkorrekturdaten ermittelt, ob die Nutzdaten fehlerfrei
sind; unter Verwendung der Fehlerkorrekturdaten können in
den Nutzdaten enthaltene Fehler erkannt und teilweise sogar korrigiert werden.
-
Anordnungen
dieser Art können
eine Überprüfungseinrichtung
aufweisen, welche
- – beim Auslesen von Daten aus
dem Speicher Signaturdaten erzeugt,
- – die
erzeugten Signaturdaten mit der Überprüfungseinrichtung
zugeführten,
den aus dem Speicher ausgegebenen Daten zugeordneten Signaturdaten
vergleicht, und
- – abhängig vom
Ergebnis dieses Vergleiches festlegt, ob die aus dem Speicher ausgegebenen
Daten zur Verwendung durch die Datenverarbeitungseinrichtung freigegeben
werden können.
-
Derartige
Anordnungen, welches zugleich Anordnungen gemäß dem Oberbegriff des Patentanspruchs
1 sind, sind beispielsweise in der
DE 195 32 144 C2 , in HÖLSCHER H./RADER J., Mikrocomputer in
der Sicherheitstechnik, Verlag TÜV
Rheinland 1984, Seiten 7–29,
7–30,
7–33,
7–34,
sowie in IBM Technical Disclosure Bulletin Vol. 10, No. 10, März 1981,
Seiten 1437–1438
beschrieben.
-
Auf
die genannte Art und Weise können
aber nicht alle Fehler erkannt werden. Beispielsweise können Fehler,
die daraus re sultieren, daß die
Datenverarbeitungseinrichtung die falsche Adresse ausgibt, nicht
erkannt werden.
-
Eine
weitere Möglichkeit
zur Erkennung von Fehlern besteht darin, daß das System redundant aufgebaut
ist und mehrere Komponenten enthält,
die gleichzeitig oder mit geringem Zeitversatz die selbe Operation
ausführen
oder einander gegenseitig überwachen.
Solche Systeme sind sehr groß,
erfordern einen hohen Entwicklungs- und Herstellungsaufwand, und
sind dementsprechend teuer.
-
Der
vorliegenden Erfindung liegt daher die Aufgabe zugrunde, die Anordnung
gemäß dem Oberbegriff
des Patentanspruchs 1 derart weiterzubilden, daß sich durch diese auch Fehler,
die sich bisher nicht oder nur mit großem Aufwand erkennen ließen, mit
geringem Aufwand zuverlässig
erkennen lassen.
-
Diese
Aufgabe wird erfindungsgemäß durch die
in Patentanspruch 1 beanspruchte Anordnung gelöst.
-
Die
erfindungsgemäße Anordnung
zeichnet sich dadurch aus, daß die
der Überprüfungseinrichtung
zugeführten
Signaturdaten die Signatur eines Zugriffskontrollcodes enthalten,
wobei der Zugriffskontrollcode Bedingungen repräsentiert, unter welchen auf
die Daten, welchen die Signaturdaten zugeordnet sind, zugegriffen
werden darf oder nicht zugegriffen werden darf.
-
Durch
eine derartige Anordnung lassen sich mit geringem Aufwand auch Fehler
erkennen, die sich bisher nicht oder nur mit großem Aufwand erkennen ließen.
-
Die
miteinander verglichenen Signaturdaten können darüber hinaus auch weitere Informationen enthalten,
beispielsweise einen error correction code (ECC), eine Information über die
Adresse, unter welcher die aus dem Speicher auszulesenden Daten
in diesem gespeichert sind, und viele andere Informa tionen mehr.
Die beanspruchte Anordnung ermöglicht es
somit, daß auf
eine einheitliche und zugleich sehr einfache Art und Weise unterschiedlichste
Fehler erkannt werden können.
-
Vorteilhafte
Weiterbildungen der Erfindung sind den Unteransprüchen, der
folgenden Beschreibung, und den Figuren entnehmbar.
-
Die
Erfindung wird nachfolgend anhand eines Ausführungsbeispiels unter Bezugnahme
auf die Figur näher
beschrieben.
-
Die
Figur zeigt den Aufbau der im folgenden näher beschriebenen Anordnung.
-
Wie
aus der Figur ersichtlich ist, enthält die hier vorgestellte Anordnung
einen Speicher M, ein Speicherinterface MI, eine Datenverarbeitungseinrichtung
DV, und eine Überprüfungseinrichtung
CHK, wobei die Überprüfungseinrichtung
CHK eine Datenerzeugungseinrichtung DGEN, eine Signaturerzeugungseinrichtung
SGEN, und eine Signaturvergleichseinrichtung V enthält.
-
Die
beschriebene Anordnung ist im betrachteten Beispiel Bestandteil
eines Mikrocontrollers. Sie könnte
aber auch Bestandteil einer anderen programmgesteuerten Einheit
wie beispielsweise eines Mikroprozessors oder eines Signalpro zessors
sein, oder Bestandteil einer beliebigen anderen Einrichtung sein.
Die Anordnung könnte
auch auf mehrere Halbleiter-Chips verteilt sein.
-
Von
den genannten Komponenten der hier vorgestellten Anordnung werden
im betrachteten Beispiel
- – der Speicher M durch einen
internen Flash-Speicher des Mikrocontrollers gebildet,
- – die
Datenverarbeitungseinrichtung DV durch einen ersten Core des Mikrocontrollers
gebildet,
- – die
Datenerzeugungseinrichtung DGEN durch einen zweiten Core des Mikrocontrollers
gebildet, und
- – die
restlichen Komponenten der Anordnung durch entsprechende Logikschaltungen
des Mikrocontrollers gebildet.
-
Hierauf
besteht jedoch keine Einschränkung. Beispielsweise
- – könnte die
Datenverarbeitungseinrichtung DV auch ein DMA-Controller oder eine sonstige auf den
Speicher M zugreifende Mikrocontroller-Komponente sein,
- – könnte die
Datenerzeugungseinrichtung DGEN auch Bestandteil des ersten Cores
des Mikrocontrollers sein, oder ein DMA-Controller, oder eine Speichereinrichtung
wie beispielsweise ein Register.
-
Es
besteht ferner keine Einschränkung
darauf, daß die
Datenverarbeitungseinrichtung DV die im Speicher M gespeicherten
Daten selbst ausliest. Das Auslesen der durch die Datenverarbeitungseinrichtung
zu verarbeitenden Daten aus dem Speicher M könnte auch durch eine andere
Einrichtung durchgeführt
oder veranlaßt
werden.
-
Wie
später
noch besser verstanden werden wird, ist es jedoch vorzugsweise so,
daß die Überprüfungseinrichtung
CHK bzw. deren Bestandteile DGEN, SGEN, und V durch andere Mikrocontroller-Komponenten
gebildet werden als die restlichen Komponenten der hier vorgestellten
Anordnung. Zumindest sollte es jedoch so sein, daß die Überprüfungseinrichtung
CHK und der Rest der hier beschriebenen Anordnung eine möglichst
geringe Anzahl von gemeinsam genutzten Schaltungsteilen aufweisen.
D.h., wenn beispielsweise die Datenverarbeitungseinrichtung DV und
die Datenerzeugungseinrichtung DGEN durch den selben Core des Mikrocontrollers
gebildet werden, sollte es zumindest so sein, daß die von der Datenverarbeitungseinrichtung DV
ausgegebene Adresse einerseits und die von der Datenerzeugungseinrichtung
ausgegebenen Daten andererseits durch verschiedene und voneinander unabhängige Bestandteile
des Cores erzeugt werden oder wenigstens über verschiedene Anschlüsse des Cores
ausgegeben und über
verschiedene Leitungen weitergeleitet werden.
-
Vorzugsweise
sind auch die Datenerzeugungseinrichtung DGEN und die Signaturerzeugungseinrichtung
SGEM einerseits, und die Signaturvergleichseinrichtung V andererseits
durch verschiedene Teile der die Anordnung bildenden Schaltung realisiert.
-
Die
hier vorgestellte Anordnung ist also vorzugsweise auf drei örtliche
Domänen
verteilt, wobei die erste örtliche
Domäne
die Datenverarbeitungseinrichtung DV, das Speicherinterface MI,
und den Speicher M enthält,
die zweite örtliche
Domäne
die Datenerzeugungseinrichtung DGEN und die Signaturerzeugungseinrichtung
SGEN enthält,
und die dritte örtliche
Domäne
die Signaturvergleichseinrichtung V enthält.
-
Dadurch
kann erreicht werden, daß die Überprüfungseinrichtung
CHK besonders zuverlässig
arbeitet; insbesondere besteht dadurch nur eine sehr geringe Wahrscheinlichkeit,
daß die Über prüfungseinrichtung
aufgrund von in anderen Teilen der Anordnung auftretenden Fehlern
fehlerhaft arbeitet.
-
Im
Speicher M ist eine Vielzahl von Datenworten gespeichert, wobei
jedes Datenwort Nutzdaten und den Nutzdaten zugeordnete Signaturdaten enthält. Im betrachteten
Beispiel umfaßt
jedes Datenwort 72 Bits, von welchen 64 Bits (beispielsweise die Bits
0 bis 63 eines jeden Datenwortes) für die Nutzdaten reserviert
sind, und 8 Bits (beispielsweise die Bits 64 bis 71 eines jeden
Datenwortes) für
die Signaturdaten reserviert sind. Es sei jedoch bereits an dieser
Stelle darauf hingewiesen, daß hierauf
keine Einschränkung
besteht. Die Datenworte können auch
länger
oder kürzer
sein, und auch die Länge
der Nutzdaten und der Signaturdaten kann beliebig anders gewählt werden
als im betrachteten Beispiel.
-
Auf
die einzelnen Datenworte kann über
dem Speicher M zugeführte
Adressen zugegriffen werden. Die Adressen umfassen im betrachteten
Beispiel 8 Bits. Sie können
jedoch auch mehr oder weniger Bits umfassen.
-
Das
Beschreiben und das Auslesen des Speichers M erfolgt datenwortweise.
D.h., bei Zugriffen auf den Speicher M werden jeweils die Nutzdaten und
die zugeordneten (und unter der selben Adresse zu speichernden bzw.
gespeicherten) Signaturdaten zum Speicher übertragen bzw. aus dem Speicher ausgegeben.
-
Die
erwähnten
Nutzdaten sind diejenigen Daten, die eine auf den Speicher M zugreifende
Einrichtung bei einem Lesezugriff auf den Speicher M aus diesem
auslesen möchte.
Die Signaturdaten sind Daten, unter Verwendung welcher die Überprüfungseinrichtung
CHK überprüft, ob die
zusammen mit den Signaturdaten in einem Speicherwort gespeicherten Nutzdaten
zur Verwendung durch die diese aus dem Speicher auslesende Einrichtung
freigegeben werden können.
-
Die
Erzeugung der im Speicher M gespeicherten Signaturdaten kann innerhalb
oder außerhalb
der die Anordnung enthaltenden Einrichtung erfolgen.
-
Die
in den Signaturdaten enthaltenen Informationen hängen vom Verwendungszweck der Überprüfungseinrichtung
CHK ab. Im betrachteten Beispiel können die Signaturdaten zur
Erkennung und gegebenenfalls zur Korrektur von in den Nutzdaten enthaltenen
Fehlern, und/oder zur Erkennung des Umstandes, daß der Speicher
M falsch adressiert wurde, und/oder zur Erkennung von unzulässigen Zugriffen
auf den Speicher M verwendet werden. Hierauf wird später noch
genauer eingegangen.
-
Die
auf den Speicher M zugreifende Einrichtung ist im betrachteten Beispiel
die Datenverarbeitungseinrichtung DV. Vorliegend ist insbesondere das
Auslesen von im Speicher M gespeicherten Daten durch die Datenverarbeitungseinrichtung
DV von Interesse.
-
Wenn
die Datenverarbeitungseinrichtung DV Daten, genauer gesagt Nutzdaten
aus dem Speicher M auslesen möchte,
gibt sie die Adresse aus, unter welcher diese Daten im Speicher
M gespeichert sind. Diese Adresse ist in der Figur mit dem Bezugszeichen
A1 bezeichnet.
-
Die
Adresse A1 wird durch eine im Speicherinterface MI enthaltenen Adressierlogik
in dem Speicher M zugeführte
und in der Figur mit A2 bezeichnete Adreßsignale umgesetzt, unter Verwendung
welcher der Speicher M angesteuert werden muß, damit er das die angeforderten
Nutzdaten enthaltende Datenwort ausgibt. Für den Fall, daß bereits
die Datenverarbeitungseinrichtung DV die Adreßsignale A2 ausgibt, kann auf
die Adressierlogik verzichtet werden.
-
Der
Speicher M gibt auf den Erhalt der Adreßsignale A2 hin das unter dieser
Adresse gespeicherte Datenwort, genauer gesagt sowohl die darin
enthaltenen Nutzdaten als auch die darin enthaltenen Signaturdaten
aus. Die aus dem Speicher M ausgegebenen Daten sind in der Figur
mit dem Bezugszeichen DS bezeichnet.
-
Die
vom Speicher M ausgegebenen Daten DS werden dem Speicherinterface
MI, genauer gesagt einer im Speicherinterface MI enthaltenen Leselogik
zugeführt.
Diese Leselogik extrahiert aus dem vom Speicher M ausgegebenen Datenwort
die im folgenden als D1 bezeichneten Nutzdaten und die im folgenden
als S1 bezeichneten Signaturdaten.
-
Die
Leselogik führt
die Nutzdaten D1 der Datenverarbeitungseinrichtung DV und vorzugsweise zusätzlich auch
der Signaturerzeugungseinrichtung SGEN zu, und führt die Signaturdaten S1 der
Signaturvergleichseinrichtung V zu.
-
Der
Signaturerzeugungseinrichtung SGEN werden darüber hinaus von der Datenerzeugungseinrichtung
DGEN mit D2 bezeichnete Daten zugeführt. Die Signaturerzeugungseinrichtung
SGEN erzeugt aus den Nutzdaten D1 und/oder den Daten D2 Signaturdaten
S2, welche so beschaffen sind,
- – daß die durch
die Überprüfungseinrichtung
CHK erzeugten Signaturdaten S2 mit den der Überprüfungseinrichtung CHK zugeführten Signaturdaten S1 übereinstimmen,
wenn die aus dem Speicher M ausgegebenen Daten D1 zur Verwendung durch
die Datenverarbeitungseinrichtung DV freigegeben werden können, und
- – daß die durch
die Überprüfungseinrichtung
CHK erzeugten Signaturdaten S2 mit den der Überprüfungseinrichtung CHK zugeführten Signaturdaten S1
nicht übereinstimmen,
wenn die aus dem Speicher M ausgegebenen Daten D1 zur Verwendung durch
die Datenverarbeitungseinrichtung DV nicht freigegeben werden können.
-
Darüber hinaus
ist es so, daß sowohl
die von der Überprüfungseinrichtung
CHK erzeugten Signaturdaten S2 als auch die der Überprüfungseinrichtung CHK zugeführten Signaturdaten
S1 Informationen enthalten, die bestimmte Eigenschaften der der Signaturdatenerzeugung
zugrundeliegenden Daten repräsentieren,
und daß die
Informationen, die in von der Überprüfungseinrichtung
CHK erzeugten Signaturdaten S2 enthalten sind, und die Informationen, die
in den der Überprüfungseinrichtung
CHK zugeführten
Signaturdaten S1 enthalten sind, die selben Eigenschaften repräsentieren.
Außerdem
sind die Informationen, die in von der Überprüfungseinrichtung CHK erzeugten
Signaturdaten S2 enthalten sind, und die Informationen, die in den
der Überprüfungseinrichtung
CHK zugeführten
Signaturdaten S1 enthalten sind, auf die selbe Art und Weise codiert.
-
Die
von der Signaturerzeugungseinrichtung SGEN erzeugten Signaturdaten
S2 werden der Signaturvergleichseinrichtung V zugeführt, welche
diese Signaturdaten S2 mit den Signaturdaten S1 vergleicht und abhängig vom
Vergleichsergebnis festlegt, ob die Nutzdaten zur Verwendung durch
die Datenverarbeitungseinrichtung DV freigegeben werden können.
-
Wie
eingangs bereits angedeutet wurde, läßt sich durch die Überprüfungseinrichtung
CHK das Vorliegen verschiedener Bedingungen überprüfen.
-
Eine
der vorhandenen Einsatzmöglichkeiten der Überprüfungseinrichtung
CHK besteht darin, daß die Überprüfungseinrichtung überprüft, ob die
Nutzdaten D1 fehlerfrei sind, und ob die Nutzdaten tatsächlich von
der Adresse gelesen wurden, von welcher sie gelesen werden sollten.
-
Daß die Nutzdaten
tatsächlich
von der Adresse gelesen wurden, von welcher sie gelesen werden sollten,
ist keine Selbstverständlichkeit.
Mögliche
Ursachen dafür,
daß dies
nicht der Fall ist, bestehen darin,
- – daß die Datenverarbeitungseinrichtung
DV die falsche Adresse A1 ausgibt,
- – daß die Adresse
A1 nicht richtig zur Adressierlogik des Speicherinterface MI übertragen
wird,
- – daß die Adressierlogik
des Speicherinterface MI die Adresse A1 in eine falsche Adresse
A2 umsetzt,
- – daß die Adresse
A2 nicht richtig zum Speicher M übertragen
wird, und/oder
- – daß der Speicher
M ein Datenwort ausgibt, das unter einer anderen Adresse als der
ihm zugeführten
Adresse A2 gespeichert ist.
-
Wenn
die Überprüfungseinrichtung
CHK dazu verwendet wird, zu überprüfen, ob
die Nutzdaten D1 fehlerfrei sind, und ob die Nutzdaten von der Adresse
gelesen wurden, von welcher sie gelesen werden sollten,
- – enthalten
die zusammen mit den Nutzdaten in dem diese enthaltenden Datenwort
gespeicherten Signaturdaten sowohl Informationen über die Nutzdaten
als auch über
die Adresse, unter welcher das die Nutzdaten enthaltende Datenwort
im Speicher M gespeichert ist,
- – gibt
die Datenerzeugungseinrichtung DGEN Daten D2 aus, die die Adresse
repräsentieren,
von welcher die Datenverarbeitungseinrichtung DV Daten aus dem Speicher
M zu lesen hat, und
- – werden
die von der Signaturerzeugungseinrichtung SGEN erzeugten Signaturdaten
S2 unter Berücksichtigung
der Daten D1 und D2 gebildet.
-
Daß die Datenerzeugungseinrichtung
DGEN Daten D2 ausgibt, die die Adresse repräsentieren, von welcher die
Datenverarbeitungseinrichtung DV Daten aus dem Speicher M zu lesen
hat, läßt sich beispielsweise
dadurch realisieren, daß die
Datenerzeugungseinrichtung DGEN eine wie die Adreßerzeugungseinrichtung
der Datenverarbeitungseinrichtung DV arbeitende und angesteuerte
Adreßerzeugungseinrichtung
enthält.
-
In
diesem Fall läßt sich
am Ergebnis des von der Signaturvergleichseinrichtung V durchgeführten Vergleiches
erkennen, ob die Nutzdaten D1 fehlerfrei sind, und ob die Nutzdaten
von der Adresse gelesen wurden, von welcher sie gelesen werden sollten.
-
Wird
bei dem von der Signaturvergleichseinrichtung V durchgeführten Vergleich
festgestellt, daß die
verglichenen Signaturdaten S1 und S2 gleich sind, kann davon ausgegangen
werden, daß die Nutzdaten
D1 fehlerfrei sind, und daß die
Nutzdaten tatsächlich
von der Adresse gelesen wurden, von welcher sie gelesen werden sollten.
In diesem Fall steht der Verwendung der Nutzdaten durch die Datenverarbeitungseinrichtung
DV nichts entgegen.
-
Anderenfalls,
d.h. wenn bei dem von der Signaturvergleichseinrichtung V durchgeführten Vergleich
festgestellt wird, daß die
verglichenen Signaturdaten S1 und S2 nicht gleich sind, muß davon
ausgegangen werden, daß die
Nutzdaten D1 nicht fehlerfrei sind, und/oder daß die Nutzdaten nicht von der Adresse
gelesen wurden, von welcher sie gelesen werden sollten. In diesem
Fall werden die aus dem Speicher M ausgegebenen Daten nicht zur
Verwendung durch die Datenverarbeitungseinrichtung DV freigegeben.
-
Durch
eine geeignete Erzeugung der Signaturdaten ist es möglich, zu
erkennen, ob die Nutzdaten oder die Adressierung fehlerhaft ist,
und, falls die Nutzdaten fehlerhaft sind, die Nutzdaten zu korrigieren
und die korrigierten Nutzdaten an die Datenverarbeitungseinrichtung
DV weiterzuleiten und zur Verwendung durch die Datenverarbeitungseinrichtung freizugeben.
Dies ist beispielsweise möglich,
wenn die die Nutzdaten betreffende Information innerhalb der Signaturdaten
durch einen ECC (error correction code) gebildet werden. In diesem
Fall könnte
ein in den Nutzdaten enthaltender Fehler unter Zuhilfenahme der
Signaturdaten S1 korrigiert werden.
-
Es
erweist sich als vorteilhaft, wenn als ECC ein SECDED-Code (single
error correction, double error detection) verwendet wird. SECDED-Codes weisen
nämlich
im allgemeinen die Eigenschaft auf, daß sie nur 2n – 1 Bits
lang sind, und, da in der Datenverarbeitung üblicherweise mit 2n Bits
umfassenden Datenworten gearbeitet wird, folglich die für den SECDED-Code
zur Verfügung
stehende Wortbreite nicht voll ausgenutzt wird. Wenn die durch den
SECDED-Code nicht ausgenutzten Bits für die die Adresse betreffende
Information innerhalb der Signaturdaten verwendet werden, kann die Überprüfung, ob
die Nutzdaten tatsächlich
von der Adresse gelesen wurden, von welcher sie gelesen werden sollten,
mit minimalem zusätzlichen
Aufwand erfolgen. Selbstverständlich
kann die Anzahl der Bits, die für
die die Adresse betreffende Information zur Verfügung steht, beliebig groß gewählt werden;
man ist hier nicht zwingend auf die nicht durch den ECC genutzten
Bits eines Datenwortes beschränkt.
-
Wenn
durch den von der Signaturvergleichseinrichtung V durchgeführten Vergleich
der Signaturdaten S1 und S2 festgestellt wird, daß die aus
dem Speicher M ausgelesenen Nutzdaten nicht zur Verwendung durch
die Datenverarbeitungseinrichtung DV freigegeben werden können, und
der erkannte Fehler auch nicht korrigierbar ist, sorgt die Überprüfungseinrichtung
CHK dafür,
daß die
Datenverarbeitungseinrichtung DV die aus dem Speicher ausgegebenen
Nutzdaten nicht erhält
oder nicht verwendet. Dies kann beispielsweise dadurch geschehen,
daß die
aus dem Speicher S ausgelesenen Nutzdaten nicht an die Datenverarbeitungseinrichtung
DV weitergeleitet werden, oder daß die Überprüfungseinrichtung CHK einen
Interrupt Request erzeugt, durch welchen die Verarbeitung der aus
dem Speicher S ausgegebenen Nutzdaten durch die Datenverarbeitungseinrichtung
DV verhindert wird.
-
Bei
der vorstehend beschriebenen Einsatzmöglichkeit der Überprüfungseinrichtung
CHK wurde durch die Überprüfungseinrichtung überprüft, ob die Nutzdaten
D1 fehlerfrei sind, und ob die Nutzdaten tatsächlich von der Adresse gelesen
wurden, von welcher sie gelesen werden sollten.
-
Es
wäre selbstverständlich auch
möglich, daß die Signaturdaten
S1 und S2 nur die Nutzdaten betreffende Informationen, also beispielsweise
nur einen ECC enthalten. In diesem Fall könnte durch die Signaturvergleichseinrichtung
V "nur" festgestellt werden,
ob die Nutzdaten fehlerfrei sind. Ebenso wäre es auch möglich, daß die Signaturdaten
S1 und S2 nur die Speicheradresse der Nutzdaten betreffende Informationen
enthalten. In diesem Fall könnte durch
die Signaturvergleichseinrichtung "nur" festgestellt
werden, ob Fehler in der Speicheradressierung vorliegen.
-
Bei
einer anderen Einsatzmöglichkeit
der Überprüfungseinrichtung
CHK kann durch die Überprüfungseinrichtung überprüft werden,
ob die Datenverarbeitungseinrichtung DV die aus dem Speicher M ausgegebenen
Nutzdaten überhaupt
aus dem Speicher auslesen darf.
-
In
diesem Fall
- – enthalten die zusammen mit
den Nutzdaten D1 in dem diese enthaltenden Datenwort gespeicherten
Signaturdaten S1 die Signatur eines Zugriffskontrollcodes,
- – gibt
die Datenerzeugungseinrichtung DGEN Daten D2 aus, die einen Zugriffskontrollcode
repräsentieren,
und
- – werden
die von der Signaturerzeugungseinrichtung SGEN erzeugten Signaturdaten
S2 unter Berücksichtigung
der Daten D2 gebildet.
-
Der
Zugriffskontrollcode, dessen Signatur in den Signaturdaten S1 enthalten
ist, repräsentiert
Bedingungen, unter welchen auf die Nutzdaten D1, welchen die Signaturdaten
zugeordnet sind, zugegriffen werden darf oder nicht zugegriffen
werden darf.
-
Dieser
Zugriffskontrollcode kann beispielsweise Angaben über die
Phasen enthalten, in welchen auf die zugeordneten Nutzdaten D1 zugegriffen werden
darf oder nicht zugegriffen werden darf. In diesem Fall repräsentieren
die von der Datenerzeugungseinrichtung DGEN ausgegebenen Daten D2 eine
Angabe über
die aktuelle Phase. Auf diese Art und Weise kann durch die Signaturdaten
S1 beispielsweise vorgegeben werden, daß die Nutzdaten, welchen die
Signaturdaten S1 zugeordnet sind, nur während der Initialisierung der
Anordnung oder des diese enthaltenden Systems, oder nur während der Ausführung einer
bestimmten Task, oder nur in einer bestimmten Betriebsart der Anordnung
oder des diese enthaltenden Systems aus dem Speicher M ausgelesen
bzw. an die Datenverarbeitungseinrichtung DV weitergeleitet werden
dürfen.
-
Der
Zugriffskontrollcode, dessen Signatur in den Signaturdaten S1 enthalten
ist, kann auch eine Information über
die Mikrocontroller-Komponenten enthalten, durch die auf die Nutzdaten,
welchen die Signaturdaten S1 zugeordnet sind, zugegriffen werden
darf oder nicht zugegriffen werden darf. In diesem Fall enthalten
die von der Datenerzeugungseinrichtung DGEN ausgegebenen Daten D2
eine Information über
die gerade auf den Speicher M zugreifende Einrichtung. Auf diese
Art und Weise kann durch die Signaturdaten S1 beispielsweise vorgegeben
werden, daß die
Nutzdaten, welchen die Signaturdaten S1 zugeordnet sind, nur durch
bestimmte Mikro controller-Komponenten ausgelesen bzw. nur an bestimmte
Mikrocontroller-Komponenten weitergeleitet werden dürfen.
-
Der
Zugriffskontrollcode, dessen Signatur in den Signaturdaten S1 enthalten
ist, kann aber auch ein Kennwort des Benutzers der Anordnung sein.
In diesem Fall repräsentieren
die von der Datenerzeugungseinrichtung DGEN ausgegebenen Daten D2 ein
der Anordnung durch den Benutzer der Anordnung zugeführtes Kennwort.
Auf diese Art und Weise kann durch die Signaturdaten S1 beispielsweise
vorgegeben werden, daß Nutzdaten,
welchen die Signaturdaten S1 zugeordnet sind, nur dann aus dem Speicher
M ausgelesen bzw. an die Datenverarbeitungseinrichtung DV weitergeleitet
werden dürfen,
wenn dies eine hierzu autorisierte Person durch die Eingabe ihres
Kennwortes in die Anordnung genehmigt hat.
-
Wenn
die Signaturdaten S1 und S2 die Signaturen von Zugriffskontrollcodes
enthalten, läßt sich am
Ergebnis des von der Signaturvergleichseinrichtung V durchgeführten Vergleiches
erkennen, ob das Auslesen der den Signaturdaten S1 zugeordneten Nutzdaten
D1 zulässig
ist oder nicht.
-
Wird
bei dem durch die Signaturvergleichseinrichtung V durchgeführten Vergleich
festgestellt, daß die
verglichenen Signaturdaten S1 und S2 gleich sind, kann davon ausgegangen
werden, daß das Auslesen
der Nutzdaten D1 zulässig
ist. In diesem Fall steht der Verwendung der Nutzdaten durch die Datenverarbeitungseinrichtung
DV nichts entgegen.
-
Anderenfalls,
d.h. wenn bei dem von der Signaturvergleichseinrichtung V durchgeführten Vergleich
festgestellt wird, daß die
verglichenen Signaturdaten S1 und S2 nicht gleich sind, muß davon
ausgegangen werden, daß das
Auslesen der Nutzdaten D1 aus dem Speicher M nicht zulässig ist.
In diesem Fall werden die aus dem Speicher M ausgegebenen Nutzdaten
D1 nicht zur Verwendung durch die Datenverarbeitungseinrichtung
DV freigegeben. In diesem Fall sorgt die Überprüfungseinrichtung CHK dafür, daß die Datenverarbeitungseinrichtung
DV die aus dem Speicher ausgegebenen Nutzdaten nicht erhält oder
nicht verwendet. Dies kann beispielsweise dadurch geschehen, daß die aus
dem Speicher S ausgelesenen Nutzdaten nicht an die Datenverarbeitungseinrichtung
DV weitergeleitet werden, oder daß die Überprüfungseinrichtung CHK einen
Interrupt Request erzeugt, durch welche die Verarbeitung der aus dem
Speicher S ausgelesenen Nutzdaten durch die Datenverarbeitungseinrichtung
DV verhindert wird.
-
Bei
der soeben beschriebenen Nutzungsmöglichkeit der Überprüfungseinrichtung
CHK enthielten die Signaturdaten S1 und S2 die Signatur eines Zugriffskontrollcodes.
Es dürfte
einleuchten und bedarf keiner näheren
Erläuterung,
daß die
Signaturdaten S1 und S2 auch zusätzliche
Informationen enthalten können,
beispielsweise die vorstehend beschriebenen Informationen, unter
Verwendung welcher sich in den Nutzdaten enthaltene Fehler erkennen
und/oder korrigieren lassen, und/oder unter Verwendung welcher sich
erkennen läßt, ob die
Nutzdaten tatsächlich
von der Adresse gelesen wurden, von welcher sie gelesen werden sollten.
-
Der
Inhalt der Signaturdaten S1 und S2 ist nicht auf die vorstehend
erwähnten
Inhalte beschränkt,
sondern kann auch beliebige andere Informationen oder Informations-Kombinationen
enthalten.
-
- Ax
- Adresse
- CHK
- Überprüfungseinrichtung
- Dx
- Daten
- DS
- Daten
und Signatur
- DGEN
- Datenerzeugungseinrichtung
- DV
- Datenverarbeitungseinrichtung
- M
- Speicher
- MI
- Speicherinterface
- Sx
- Signatur
- SGEN
- Signaturerzeugungseinrichtung
- V
- Signaturvergleichseinrichtung