DE102017203486A1 - Method for monitoring a counter of a data transmission device - Google Patents

Method for monitoring a counter of a data transmission device Download PDF

Info

Publication number
DE102017203486A1
DE102017203486A1 DE102017203486.6A DE102017203486A DE102017203486A1 DE 102017203486 A1 DE102017203486 A1 DE 102017203486A1 DE 102017203486 A DE102017203486 A DE 102017203486A DE 102017203486 A1 DE102017203486 A1 DE 102017203486A1
Authority
DE
Germany
Prior art keywords
data
counter
data transmission
circuit arrangement
value
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.)
Pending
Application number
DE102017203486.6A
Other languages
German (de)
Inventor
Eberhard Boehl
Juergen Hanisch
Uwe Scheurer
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.)
Robert Bosch GmbH
Original Assignee
Robert Bosch 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 Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102017203486.6A priority Critical patent/DE102017203486A1/en
Publication of DE102017203486A1 publication Critical patent/DE102017203486A1/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • 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/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0739Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in automotive or aircraft systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache

Abstract

Die Erfindung betrifft eine Schaltungsanordnung zur Überwachung eines Zählers für eine Datenübertragungseinrichtung (10), die mindestens eine Datenübertragung pro Zeiteinheit ermöglicht und bei der der Zähler nacheinander Module für die Datenübertragung adressiert, wobei die Schaltungsanordnung mindestens einen Speicher aufweist, in dem der Zählerstand mit einem Systemtakt periodisch zu speichern ist, wobei mindestens ein Vergleicher vorgesehen ist, der dazu eingerichtet ist, den aktuellen Zählerstand mit dem einen Systemtakt zuvor gespeicherten Zählerstand zu vergleichen, wobei die Schaltungsanordnung dazu eingerichtet ist, anhand dieses Vergleichs einen Fehler zu erkennen.The invention relates to a circuit arrangement for monitoring a counter for a data transmission device (10), which allows at least one data transmission per unit time and in which the counter successively addressed modules for data transmission, wherein the circuit arrangement has at least one memory in which the count with a system clock is to be stored periodically, wherein at least one comparator is provided which is adapted to compare the current count with the one system clock previously stored counter reading, wherein the circuit arrangement is adapted to detect an error based on this comparison.

Description

Die Erfindung betrifft ein Verfahren zum Überwachen eines Zählers einer Datenübertragungseinrichtung und eine Anordnung zum Durchführen des Verfahrens.The invention relates to a method for monitoring a counter of a data transmission device and to an arrangement for carrying out the method.

Stand der TechnikState of the art

Zur Unterstützung einer Verarbeitungseinheit, wie bspw. einer CPU (Central Processing Unit), für zeit- und positionsbezogene Prozesse sind sogenannte Timer, d. h. Zeitgeber-Einheiten, bekannt. Solche Zeitgeber-Einheiten können als Einzelkomponenten oder als Peripheriebausteine der Verarbeitungseinheit ausgebildet sein und dabei mehr oder weniger wichtige Funktionen zur Signalaufnahme und -erzeugung in zeitlicher Abhängigkeit von einem oder mehreren Takten zur Verfügung stellen.To support a processing unit, such as a CPU (Central Processing Unit), for time and position related processes are called timers, d. H. Timer units, known. Such timer units can be designed as individual components or as peripheral components of the processing unit and thereby provide more or less important functions for signal recording and generation in dependence on one or more clocks.

Nach derzeitigem Stand der Technik kommen in Verarbeitungseinheiten, wie bspw. in Mikrocontrollern, unterschiedliche Architekturen zur Realisierung von Zeitgeber-Einheiten bzw. -Modulen zum Einsatz.According to the current state of the art, different architectures for realizing timer units or modules are used in processing units, such as, for example, in microcontrollers.

In einem bekannten generischen Zeitgeber-Modul, das auch als GTM (Generic Timer Module) bezeichnet wird, sind eine oder mehrere Datenübertragungseinrichtungen bzw. Routing-Einheiten, die hierin auch als ARUs (Advanced Routing Units) bezeichnet werden, enthalten. Unter einer solchen Datenübertragungseinrichtung ist ein Modul zu verstehen, das Daten, die von einer Datenquelle bereitgestellt werden, zu einer Datensenke überträgt. Daher hat eine solche Datenübertragungseinrichtung eine zentrale Bedeutung für die Verteilung der Daten. In a known generic timer module, which is also referred to as GTM (Generic Timer Module), one or more data transmission devices or routing units, which are also referred to herein as ARUs (Advanced Routing Units), are included. Such a data transmission device is to be understood as a module which transmits data provided by a data source to a data sink. Therefore, such a data transmission device has a central importance for the distribution of the data.

So sind verschiedene Module mit der ARU verbunden, die untereinander Daten austauschen können. Es wird in diesem Zusammenhang auf 1 verwiesen. Dabei werden im sogenannten Round-Robin-Mode die Datensenken nacheinander über einen Zähler adressiert und diese fordern die entsprechende Datenquelle über eine gespeicherte Adresse zum Senden der Daten auf. Die Überwachung der ARUs und insbesondere auch des zugeordneten Zählers ist bislang jedoch nur bedingt möglich.So different modules are connected to the ARU, which can exchange data with each other. It gets up in this context 1 directed. In this case, in the so-called round-robin mode, the data sinks are successively addressed via a counter and these request the corresponding data source via a stored address for sending the data. The monitoring of the ARUs and in particular of the associated counter is so far only possible to a limited extent.

Offenbarung der ErfindungDisclosure of the invention

Vor diesem Hintergrund werden eine Schaltungsanordnung nach Anspruch 1 und ein Verfahren gemäß Anspruch 6 vorgestellt. Ausführungsformen ergeben sich aus den abhängigen Ansprüchen und aus der Beschreibung.Against this background, a circuit arrangement according to claim 1 and a method according to claim 6 are presented. Embodiments emerge from the dependent claims and from the description.

Die vorgestellte Schaltungsanordnung dient zur Überwachung eines Zählers für eine Datenübertragungseinrichtung. Diese Datenübertragungseinrichtung, die eingangs auch als Routing-Einheit oder ARU bezeichnet wurde, ermöglicht typischerweise eine Datenübertragung pro Zeiteinheit. Dabei werden Daten von einer Datenquelle zu einer Datensenke übertragen. Hierzu adressiert in einer Ausführung die ARU bzw. deren Zähler die Datensenken nacheinander und fragt an, ob diese Daten benötigen bzw. bereit sind, Daten von einer Datenquelle zu empfangen. Erklärt eine der Datensenken die Bereitschaft, so spricht die Datenübertragungseinrichtung anschließend die Datenquelle, deren Adresse in einem Speicher hinterlegt ist an, um die Datenübertragung vorzunehmen.The presented circuit arrangement serves to monitor a counter for a data transmission device. This data transmission device, which was initially also referred to as a routing unit or ARU, typically allows a data transmission per unit of time. Data is transferred from a data source to a data sink. For this purpose, in one embodiment, the ARU or its counter addresses the data sinks in succession and asks whether they require or are ready to receive data from a data source. If one of the data sinks declares readiness, then the data transmission device subsequently addresses the data source whose address is stored in a memory in order to carry out the data transmission.

Selbstverständlich kann die Datenübertragung auch zunächst die Datenquellen nacheinander mittels Adressierung durch den Zähler ansprechen, um zu erfragen, ob Daten für eine Datenübertragung bereitstehen und wohin, bestimmt durch die Adresse einer Datensenke, diese Daten zu übertragen sind.Of course, the data transmission can also initially address the data sources one after the other by means of addressing by the counter in order to inquire whether data is available for data transmission and where, determined by the address of a data sink, this data is to be transmitted.

Der Zähler dient somit dazu, nacheinander Module, d. h. Datensenken oder Datenquellen, zu adressieren, denen die Ressourcen der Datenübertragungseinrichtung zugeordnet werden.The counter thus serves to successively modules, d. H. Data sinks or data sources, to which the resources of the data transmission device are assigned.

Die vorgestellte Schaltungsanordnung weist mindestens einen Speicher auf, in dem der Zählerstand mit einem Systemtakt periodisch zu speichern bzw. zwischenzuspeichern ist. Es ist weiterhin mindestens ein Vergleicher vorgesehen, der dazu eingerichtet ist, den aktuellen Zählerstand mit dem einen Systemtakt zuvor zwischengespeicherten Zählerstand zu vergleichen, Anhand dieses Vergleichs kann die Schaltungsanordnung einen Fehler erkennen.The presented circuit arrangement has at least one memory in which the counter reading is to be periodically stored or buffered with a system clock. Furthermore, at least one comparator is provided, which is set up to compare the current counter reading with the counter value previously stored temporarily in the system clock. Based on this comparison, the circuit arrangement can detect an error.

Es wird in Ausgestaltung vorgeschlagen, den Zähler mit dem Systemtakt in einer Pipeline zu speichern (siehe 2) und erst nach dieser Pipeline den Wert für den Round-Robin-Mode zu benutzen. Für die Zugriffszeit der ARU besteht durch die Verzögerung von einem Systemtakt keinerlei nachteiliger Effekt, weil die Datenanforderungen der Module nicht synchron mit dem Zählerstand erfolgen. Es muss deshalb immer davon ausgegangen werden, dass der Zähler der Datenübertragungseinrichtung bei einer Datenanforderung im worst case die betreffende Datensenke gerade adressiert hatte.It is proposed in an embodiment to store the counter with the system clock in a pipeline (see 2 ) and only after this pipeline to use the value for the round-robin mode. Due to the delay of one system clock, there is no disadvantageous effect on the access time of the ARU because the data requirements of the modules do not occur synchronously with the counter reading. It must therefore always be assumed that the counter of the data transmission device had just addressed the data sink in question in the worst case for a data request.

Mit der vorgesehenen Zwischenspeicherung des Zählerwerts besteht die Möglichkeit, den „alten“ Stand bzw. Wert, nach der Pipeline-Stufe, mit dem „neuen“ Stand bzw. Wert, vor der Pipeline-Stufe, typischerweise über zusätzliche Hardware, zu vergleichen. Der neue Zählerstand kann höchstens um den Wert ‚1‘ abweichen, wenn der Takt der Pipeline entweder der Systemtakt SYS_CLK ist, der Takt mit der höchsten Frequenz im System, oder ein Takt ist, der nicht langsamer ist als der Takt, mit dem der Zähler betrieben wird. Auch das Anhalten des Zählers bei einem dynamischen Routing stellt kein Problem dar, weil dann der Unterschied zwischen alt und neu 0 ist.With the envisaged temporary storage of the counter value, it is possible to compare the "old" state or value, after the pipeline stage, with the "new" state or value, before the pipeline stage, typically via additional hardware. The new count can deviate at most by the value '1' when the clock of the pipeline is either the system clock SYS_CLK, the clock with the highest frequency in the system, or a clock that is not slower than the clock at which the counter is operated. Also, stopping the counter on a dynamic routing is not a problem because then the difference between old and new is zero.

Es ist lediglich zu beachten, dass der Zähler, nachdem er seinen maximalen Wert erreicht hat, auf 0 zurückgesetzt wird. Die Differenz zwischen alt und neu ist dann dieser maximale Wert max. Zu beachten ist weiterhin, dass der Zähler nur vorwärts zählen kann. Die Abweichungsmöglichkeiten sind: Zähler_alt Zähler_neu = 0, 1  oder +max .

Figure DE102017203486A1_0001
It is only to be noted that the counter, after reaching its maximum value, is reset to 0. The difference between old and new is then this maximum value max. It should also be noted that the counter can only count forward. The deviation possibilities are: Zähler_alt - Zähler_neu = 0 - 1 or + max ,
Figure DE102017203486A1_0001

Das vorgestellte Verfahren wird insbesondere mit einer Schaltungsanordnung, wie diese hierin beschrieben ist, durchgeführt.The proposed method is carried out in particular with a circuit arrangement as described herein.

Weitere Vorteile und Ausgestaltungen der Erfindung ergeben sich aus der Beschreibung und den beigefügten Zeichnungen.Further advantages and embodiments of the invention will become apparent from the description and the accompanying drawings.

Es versteht sich, dass die voranstehend genannten und die nachstehend noch zu erläuterten Merkmale nicht nur in der jeweils angegebenen Kombination, sondern auch in anderen Kombinationen oder in Alleinstellung verwendbar sind, ohne den Rahmen der vorliegenden Erfindung zu verlassen.It is understood that the features mentioned above and those yet to be explained below can be used not only in the respectively specified combination but also in other combinations or in isolation, without departing from the scope of the present invention.

Figurenlistelist of figures

  • 1 zeigt in einem Blockschaltbild eine Routing-Einheit zur Verdeutlichung des Round-Robin-Konzepts. 1 shows in a block diagram a routing unit for clarification of the round-robin concept.
  • 2 zeigt eine Paritäts-Überprüfung in einer Routing-Einheit. 2 shows a parity check in a routing unit.
  • 3 zeigt eine Paritäts-Überprüfung von Adressen in jeder Datenquelle. 3 shows a parity check of addresses in each data source.
  • 4 zeigt in einem Blockschaltbild eine Ausführung einer Schaltung für eine Paritäts-Überprüfung. 4 shows a block diagram of an embodiment of a circuit for a parity check.

Ausführungsformen der ErfindungEmbodiments of the invention

Die Erfindung ist anhand von Ausführungsformen in den Zeichnungen schematisch dargestellt und wird nachfolgend unter Bezugnahme auf die Zeichnungen ausführlich beschrieben.The invention is schematically illustrated by means of embodiments in the drawings and will be described in detail below with reference to the drawings.

1 zeigt das Zuteilungs- bzw. Routing-Konzept bei einer Datenübertragungseinrichtung bzw. ARU, die bspw. in einem generischen Zeitgeber-Modul bzw. GTM (Generic Timer Module) eingesetzt wird und insgesamt mit der Bezugsziffer 10 bezeichnet ist. Die Darstellung zeigt ein Submodul 0, bezeichnet mit der Bezugsziffer 12, ein Submodul 1, bezeichnet mit der Bezugsziffer 14 und ein Submodule 2, bezeichnet mit der Bezugsziffer 16. Das Submodul 0 12 umfasst Datenquellen 20 und Datensenken 22, das Submodul 1 14 umfasst Datenquellen 30 und Datensenken 32 und das Submodul 2 16 umfasst Datenquellen 40 und Datensenken 42. Die in den Datenquellen 20, 30, 40 und Datensenken 22, 32, 42 gezeigten Ziffern ermöglichen eine Zuordnung von Datenquelle 20, 30 bzw. 40 zu Datensenke 22, 32 bzw. 42 und stellen jeweils eine Art Adressierung bzw. eine Adresse dar. 1 shows the allocation or routing concept in a data transmission device or ARU, which is used, for example. In a generic timer module or GTM (Generic Timer Module) and in total with the reference numeral 10 is designated. The illustration shows a submodule 0 , denoted by the reference numeral 12 , a submodule 1 , denoted by the reference numeral 14 and a submodule 2 , denoted by the reference numeral 16 , The submodule 0 12 includes data sources 20 and data sinking 22 , the submodule 1 14 includes data sources 30 and data sinking 32 and the submodule 2 16 includes data sources 40 and data sinks 42 , The in the data sources 20 . 30 . 40 and data sinks 22, 32, 42 enable data source allocation 20 . 30 respectively. 40 to data sink 22 . 32 respectively. 42 and each represent a kind of addressing or an address.

Wie bereits ausgeführt wurde, ist die Überwachung der Datenübertragungseinrichtung 10 bislang nur bedingt möglich, obwohl in neueren Versionen ein Zugriff über ein generisches AE-Interface (AEI) (AE: Automotive Electronics) auf die Zähler möglich ist, die den Ablauf im Round-Robin-Mode steuern. Das alleinige Lesen des Zählers reicht jedoch nicht aus, um den Zustand zu prüfen oder Fehler in der Ablauffolge zu entdecken.As already stated, the monitoring of the data transmission device 10 so far only conditionally possible, although in newer versions an access via a generic AE interface (AEI) (AE: Automotive Electronics) is possible on the counters that control the process in round-robin mode. However, reading the counter alone is not enough to check the condition or to detect errors in the sequence.

Zu berücksichtigen ist, dass die Zähler der Datenübertragungseinrichtung durch transiente oder auch permanente Fehler gestört sein können. Ein transienter Fehler im Zähler führt dazu, dass ein oder mehrere Tasks bei der Bedienung übersprungen werden. Bei dem nächsten Umlauf der Datenübertragungseinrichtung 10 ist alles wieder in Ordnung. Im Einzelfall kann ein solcher transienter Fehler dazu führen, dass die Bedienung eines Ziels bzw. einer Datenquelle 22, 32 bzw. 42 nicht rechtzeitig erfolgt oder Daten, die nicht rechtzeitig abgeholt worden sind, überschrieben werden.It should be noted that the counters of the data transmission device may be disturbed by transient or permanent errors. A transient error in the counter causes one or more tasks to be skipped during operation. In the next round of the data transmission device 10 is everything in order again. In individual cases, such a transient error can lead to the operation of a target or a data source 22 , 32 or 42 did not take place on time or data that has not been picked up in time is overwritten.

Weitaus gravierender ist es, wenn ein permanenter Fehler im Zähler vorliegt. Dann werden permanent bestimmte Tasks übersprungen. Eine Feststellung eines solchen Fehlers ist erst an den Auswirkungen möglich. Dabei werden Daten an einzelnen Modulen permanent nicht abgeholt und überschrieben und andere Module erhalten keine neuen Daten. Es ist deshalb wichtig, solche Fehler unmittelbar zu erkennen, um auf den Datenfluss Einfluss nehmen zu können und damit das Sicherheitsziel einhalten zu können.It is far more serious if there is a permanent error in the meter. Then permanently certain tasks are skipped. A determination of such an error is only possible at the impact. Data on individual modules are not permanently fetched and overwritten and other modules receive no new data. It is therefore important to be able to recognize such errors immediately in order to be able to influence the data flow and thus be able to comply with the safety objective.

2 zeigt eine sogenannte Pipeline-Stufe des Zählers der Datenübertragungseinrichtung und damit in stark vereinfachter Form eine Ausführung der vorgestellten Schaltungsanordnung, die insgesamt mit der Bezugsziffer 50 bezeichnet ist. Die Darstellung zeigt ein Pipeline-Register 52. Eingangsgrößen sind der Takt ARU_CLK51 der Datenübertragungseinrichtung, der bspw. dem Systemtakt SYS_CLK oder einem halben Systemtakt SYS_CLK/2 entspricht, und der aktuelle Zählerstand Zähler_neu 54. Ausgangsgröße ist der alte bzw. gespeicherte Zählerstand Zähler_alt 56. 2 shows a so-called pipeline stage of the counter of the data transmission device and thus in a highly simplified form, an embodiment of the proposed circuit arrangement, the whole with the reference numeral 50 is designated. The illustration shows a pipeline register 52 , Input variables are the clock ARU_CLK51 of the data transmission device, which, for example, corresponds to the system clock SYS_CLK or half a system clock SYS_CLK / 2, and the current counter state counter_new 54. The output variable is the old or stored counter state counter_old 56.

Es wird somit vorgeschlagen, den Zähler mit dem Systemtakt in einer Pipeline bzw. dem Pipeline-Register 52 zu speichern und erst nach dieser Pipeline den Wert für den Round-Robin-Mode zu benutzen. Für die Zugriffszeit der ARU entstehen durch die Verzögerung von einem Systemtakt keine Nachteile, weil die Datenanforderungen der Module nicht synchron mit dem Zählerstand erfolgen. Es wird in jedem Fall angenommen, dass der Zähler der Datenübertragungseinrichtung bei einer Datenanforderung im worst case die betreffende Datensenke gerade adressiert hatte. Mit dieser Speicherung bzw. Zwischenspeicherung des Zählerwertes bzw. Zählerstands besteht die Möglichkeit des Vergleichs des „alten“ Wertes, nach der Pipeline-Stufe, mit dem „neuen“ Wert, vor der Pipeline-Stufe. Dies erfolgt regelmäßig über eine zusätzliche Hardware, nämlich die vorgestellte Schaltungsanordnung 50.It is thus proposed to include the counter with the system clock in a pipeline or the pipeline register 52 save and only after this Pipeline to use the value for the round-robin mode. Due to the delay of one system clock, there are no disadvantages for the access time of the ARU because the data requirements of the modules do not occur synchronously with the counter reading. In any case, it is assumed that the counter of the data transmission device had just addressed the data sink in question in the worst case for a data request. With this storage or intermediate storage of the counter value or count, there is the possibility of comparing the "old" value, after the pipeline stage, with the "new" value, before the pipeline stage. This is done regularly via additional hardware, namely the proposed circuit arrangement 50 ,

Zu berücksichtigen ist, dass der neue Zählerwert höchstens um den Wert ‚1‘ abweichen kann, wenn der Takt der Pipeline entweder dem Systemtakt SYS_CLK, d. h. der Takt mit der höchsten Frequenz im System, oder einem Takt entspricht, der nicht langsamer ist als der Takt, mit dem der Zähler betrieben wird. Ebenso ist das Anhalten des Zählers bei einem dynamischen Routing unproblematisch, da dann der Unterschied zwischen alt und neu 0 ist. Es ist lediglich zu beachten, dass der Zähler, nachdem er seinen maximalen Wert erreicht hat, auf 0 zurückgesetzt wird. Die Differenz zwischen alt und neu ist dann dieser maximale Wert max. Zu beachten ist weiterhin, dass der Zähler nur vorwärts zählen kann. Die Abweichungsmöglichkeiten sind: Zähler_alt Zähler_neu = 0, 1  oder +max .

Figure DE102017203486A1_0002
It should be noted that the new counter value can deviate at most by the value '1' if the clock of the pipeline corresponds either to the system clock SYS_CLK, ie the clock with the highest frequency in the system, or to a clock that is not slower than the clock , with which the counter is operated. Similarly, stopping the counter in a dynamic routing problem is unproblematic, since then the difference between old and new is 0. It is only to be noted that the counter, after reaching its maximum value, is reset to 0. The difference between old and new is then this maximum value max. It should also be noted that the counter can only count forward. The deviation possibilities are: Zähler_alt - Zähler_neu = 0 - 1 or + max ,
Figure DE102017203486A1_0002

3 zeigt in einem Blockschaltbild eine Ausführung der vorgestellten Schaltungsanordnung, die insgesamt mit der Bezugsziffer 100 bezeichnet ist. Die Darstellung zeigt einen Subtrahierer 102, der einen Addierer 104 umfasst, in den die Werte Zähler_alt 110, Zähler_neu 112 über einen Inverter 114 und ein Carryjn = 1, Bezugsziffer 116 eingehen. Der Ausgang 120 des Subtrahierers 102 wird drei Vergleichern zugeführt, nämlich einen ersten Vergleicher 130 mit der Funktion =0?, einem zweiten Vergleicher 132 mit der Funktion =max? und einem dritten Vergleicher 134 mit der Funktion =(-1)?. Die Ausgänge dieser Vergleicher 130, 132, 134 werden in ein NOR-Glied 140 eingegeben, dessen Ausgang 142 ein Setz-Signal für ein Flipflop 150 darstellt, in das zusätzlich das Taktsignal ARU_CLK 152 eingeht und das ggf. ein Fehlersignal 160 ausgibt. 3 shows in a block diagram an embodiment of the presented circuit arrangement, the whole with the reference numeral 100 is designated. The illustration shows a subtractor 102 , the adder 104 includes in which the values counter_old 110, counter_new 112 via an inverter 114 and a Carryjn = 1, reference numeral 116 received. The exit 120 of the subtractor 102 is fed to three comparators, namely a first comparator 130 with the function = 0 ?, a second comparator 132 with the function = max? and a third comparator 134 with the function = (- 1) ?. The outputs of these comparators 130 , 132, 134 become a NOR gate 140 entered, whose output 142 a set signal for a flip-flop 150 represents, in addition to the clock signal ARU_CLK 152 received and that possibly an error signal 160 outputs.

Durch eine Differenzbildung zwischen dem Wert Zähler_alt 110, nach der Pipeline-Stufe als Minuend, und Zähler_neu 112, vor der Pipeline-Stufe als Subtrahend, dürfen nur die Werte 0, -1 und +max auftreten. Eine solche Subtraktion ist bspw. durch den gezeigten Addierer 104 möglich, wenn vom Subtrahenden alle Bits invertiert werden, d. h. ein Einerkomplement gebildet wird, in diesem Fall durch den Inverter 114, und zusätzlich der einlaufende Übertrag Carry_in=l 116 am Addierer 104 vorgesehen wird. Dadurch wird aus dem Einerkomplement das Zweierkomplement des Subtrahenden. Die Addition von dem Minuenden und dem Zweierkomplement des Subtrahenden entspricht der Subtraktion dieser beiden Operanden. Das Ergebnis dieser Subtraktion wird verglichen mit den festen Werten 0, -1 und dem variablen Wert +max. Dabei wird ein Vorwärtszählen des Zählers vorausgesetzt. Die Ausgänge dieser drei Vergleicher 130, 132, 134 werden in dem NOR-Glied 140 verknüpft.By subtraction between the value counter_old 110, after the pipeline stage as Minuend, and counter_new 112, before the pipeline stage as subtrahend, only the values 0 , - 1 and + max occur. Such a subtraction is, for example, by the adder shown 104 possible if all bits are inverted by the subtrahend, ie a one's complement is formed, in this case by the inverter 114 , and additionally the incoming carry Carry_in = 1 116 at the adder 104 is provided. As a result, the one's complement becomes the two's complement of the subtrahend. The addition of the minuend and the two's complement of the subtrahend equals the subtraction of these two operands. The result of this subtraction is compared with the fixed values 0 , - 1 and the variable value + max. In this case, a count-up of the counter is required. The outputs of these three comparators 130 . 132 . 134 be in the NOR gate 140 connected.

Ergibt einer der drei Vergleiche eine 1, so liefert der Ausgang 142 des NOR-Glieds 140 eine 0. Nur wenn keiner dieser drei Vergleicher 130, 132, 134 eine 1 am Ausgang hat, liefert dieses NOR-Glied 140 eine 1 am Ausgang und diese 1 setzt das Flipflop 150 mit der aktiven Flanke des System-Taktes ARU_CLK 152 und signalisiert dadurch einen Fehler. Dieses Setz- bzw. Set-Flipflop ist in einer Realisierung in 4 gezeigt. Es kann nur aktiv vom Benutzer oder vom System zurückgesetzt werden.If one of the three comparisons yields a 1, then the output delivers 142 of the NOR member 140 a 0. Only if none of these three comparators 130 . 132 . 134 has a 1 at the output, provides this NOR gate 140 a 1 at the output and this 1 sets the flip flop 150 with the active edge of the system clock ARU_CLK 152 and thereby signals an error. This set flip-flop is in a realization in 4 shown. It can only be actively reset by the user or the system.

4 zeigt ein Setz-Flipflop 200, dessen Ausgang 202 und ein Setz-Eingang 204 über ein ODER-Glied 206 als Eingänge eingehen. Weiterhin ist ein Rücksetz- bzw. Reset-Eingang 208 zum Rücksetzen des Flipflops 200 vorgesehen. 4 shows a set flip-flop 200 whose output 202 and a set input 204 via an OR gate 206 as inputs enter. Furthermore, there is a reset or reset input 208 to reset the flip-flop 200 intended.

Typischerweise ist das Fehlersignal (Bezugsziffer 160 in 3) in der Überwachungs- bzw. Monitor-Einheit (MON) des GTM anzusiedeln. Ein transienter Fehler, der in der Zeitbasis ein Speicherelement des Zählers, das nicht das LSB (least significant bit) ist, verfälscht, führt zu einer plötzlichen Abweichung zwischen dem Wert TBU_neu und TBU_alt, die größer als 1 ist. Auch ein entsprechender transienter Fehler in der Pipeline-Stufe liefert das gleiche Ergebnis. Ebenso führt ein permanenter Fehler im Zähler oder der Pipeline-Stufe, bei dem beispielsweise ein Speicherelement permanent auf einem festen Wert, d. h. stuck-at fault, bleibt, zu einer Abweichung >1, wenn der Fehler nicht am LSB auftritt und wenn bei der Zähloperation ein Übertrag bis zu diesen Bitwert des defekten Speicherelementes oder auch darüber hinaus gezählt werden soll. In beiden Fällen liefert keiner der Vergleicher 130, 132, 134 aus 3 eine 1 und somit wird das Fehler-Flipflop 150 gesetzt. Ein Fehler im LSB kann dadurch nicht entdeckt werden, hat aber in der Regel auch keine Auswirkung auf das Sicherheitsziel und braucht deshalb auch nicht entdeckt zu werden.Typically, the error signal (reference numeral 160 in 3 ) in the monitoring or monitoring unit (MON) of the GTM. A transient error that falsifies in the time base a memory element of the counter that is not the least significant bit (LSB) leads to a sudden deviation between the value TBU_neu and TBU_alt that is greater than one. Also a corresponding transient error in the pipeline stage gives the same result. Likewise, a permanent error in the counter or pipeline stage, for example, where a memory element permanently remains at a fixed value, ie stuck-at fault, results in a deviation> 1 if the error does not occur on the LSB and if on the count operation a carry up to this bit value of the defective memory element or beyond should be counted. In both cases, none of the comparators delivers 130 . 132 . 134 out 3 a 1, and thus the error flip-flop 150 set. An error in the LSB can not be detected, but usually has no effect on the security target and therefore does not need to be discovered.

In einer weiteren Ausführungsform des vorgestellten Verfahrens kann der Zähler auch rückwärts zählen. Dabei ändern sich die Vorzeichen der Vergleichswerte entsprechend, oder man vertauscht die Eingänge des Subtrahierers (Bezugsziffer 102 in 3).In a further embodiment of the presented method, the counter can also count backwards. In this case, the signs of the comparison values change accordingly, or the inputs of the subtractor are interchanged (reference number 102 in 3 ).

Bei allen Ausführungen kann vorgesehen sein, dass ein erkannter Fehler gespeichert wird.In all embodiments, it can be provided that a detected error is stored.

Claims (9)

Schaltungsanordnung zur Überwachung eines Zählers für eine Datenübertragungseinrichtung (10), die mindestens eine Datenübertragung pro Zeiteinheit ermöglicht und bei der der Zähler nacheinander Module für die Datenübertragung adressiert, wobei die Schaltungsanordnung (50, 100) mindestens einen Speicher aufweist, in dem der Zählerstand mit einem Systemtakt periodisch zu speichern ist, wobei mindestens ein Vergleicher (130, 132, 134) vorgesehen ist, der dazu eingerichtet ist, den aktuellen Zählerstand mit dem einen Systemtakt zuvor gespeicherten Zählerstand zu vergleichen, wobei die Schaltungsanordnung (50, 100) dazu eingerichtet ist, anhand dieses Vergleichs einen Fehler zu erkennen.Circuit arrangement for monitoring a counter for a data transmission device (10), which allows at least one data transmission per unit time and in which the counter successively addressed modules for data transmission, wherein the circuit arrangement (50, 100) has at least one memory in which the count with a Periodically store system clock, wherein at least one comparator (130, 132, 134) is provided, which is adapted to compare the current count with the one system clock previously stored counter reading, wherein the circuit arrangement (50, 100) is adapted to to detect an error based on this comparison. Schaltungsanordnung nach Anspruch 1, die dazu eingerichtet ist, Datensenken (22, 32, 42) mittels Adressierung durch den Zähler nacheinander anzufragen, ob diese bereit sind, Daten von einer Datenquelle (20, 30, 40) zu empfangen und für den Fall, dass eine der Datensenken (22, 32, 42) die Bereitschaft erklärt, die Datenübertragungseinrichtung (10) anschließend die Datenquelle (20, 30, 40), deren Adresse bei der bereiten Datensenke hinterlegt ist, anspricht, um die Datenübertragung vorzunehmen.Circuit arrangement according to Claim 1 which is arranged to query data sinks (22, 32, 42) in succession by addressing by the counter, whether they are ready to receive data from a data source (20, 30, 40) and in the event that one of the data sinks ( 22, 32, 42) explains the readiness, the data transmission device (10) then the data source (20, 30, 40), whose address is stored at the ready data sink, responds to make the data transmission. Schaltungsanordnung nach Anspruch 1, die dazu eingerichtet ist, Datenquellen (20, 30, 40) nacheinander ansprechen, um zu erfragen, ob Daten für eine Datenübertragung bereitstehen und für den Fall, dass eine Datenquelle (20, 30, 40) anzeigt, dass Daten für eine Datenübertragung bereitstehen, die Datensenke, deren Adresse bei der bereiten Datenquelle (20, 30, 40) hinterlegt ist, anspricht, um die Datenübertragung vorzunehmen.Circuit arrangement according to Claim 1 arranged to address data sources (20, 30, 40) in succession to query whether data is ready for data transmission and in the event that a data source (20, 30, 40) indicates that data is ready for data transmission , the data sink whose address is stored at the ready data source (20, 30, 40) responds to make the data transfer. Schaltungsanordnung nach einem der Ansprüche 1 bis 3, die dazu eingerichtet ist, einen erkannten Fehler zu speichern.Circuit arrangement according to one of Claims 1 to 3 , which is set up to save a detected error. Schaltungsanordnung nach einem der Ansprüche 1 bis 4, die dazu eingerichtet ist, den Vergleich zwischen dem zwischengespeicherten Zählerstand und dem aktuellen Zählerstand durch Subtraktion vorzunehmen und eine durch die Subtraktion erhaltene Differenz mit dem Wert 0, dem Wert -1 und dem maximalen Zählerwert zu vergleichen, wobei das Vorzeichen des jeweiligen Vergleichswertes von der Zählrichtung des Zählers und von der Reihenfolge der Operanden bei der Subtraktion abhängig ist.Circuit arrangement according to one of Claims 1 to 4 , which is adapted to make the comparison between the latched count and the current count by subtraction and to compare a difference obtained by the subtraction with the value 0, the value -1 and the maximum counter value, wherein the sign of the respective comparison value of the Counting of the counter and on the order of the operands in the subtraction is dependent. Verfahren zur Überwachung eines Zählers für eine Datenübertragungseinrichtung (10), die mindestens eine Datenübertragung pro Zeiteinheit ermöglicht und bei der der Zähler nacheinander Module für die Datenübertragung adressiert, wobei der Zählerstand mit einem Systemtakt periodisch gespeichert wird, und wobei der aktuelle Zählerstand mit dem einen Systemtakt zuvor gespeicherten Zählerstand verglichen wird, um anhand dieses Vergleichs einen Fehler zu erkennen.Method for monitoring a counter for a data transmission device (10), which allows at least one data transmission per unit time and in which the counter successively addressed modules for data transmission, wherein the count is stored periodically with a system clock, and wherein the current count with the one system clock previously stored counter reading is compared to detect an error based on this comparison. Verfahren nach Anspruch 6, bei dem der Vergleich zwischen dem zwischengespeicherten Zählerstand und dem aktuellen Zählerstand durch Subtraktion vorgenommen wird und eine durch die Subtraktion erhaltene Differenz mit dem Wert 0, dem Wert -1 und dem maximalen Zählerwert verglichen wird, wobei das Vorzeichen des jeweiligen Vergleichswertes von der Zählrichtung des Zählers und von der Reihenfolge der Operanden bei der Subtraktion abhängig ist.Method according to Claim 6 in which the comparison between the buffered counter reading and the current counter reading is made by subtraction and a difference obtained by the subtraction is compared with the value 0, the value -1 and the maximum counter value, the sign of the respective comparison value being dependent on the counting direction of the counter Counter and depends on the order of the operands in the subtraction. Verfahren nach Anspruch 6 oder 7, bei dem Datensenken (22, 32, 42) mittels Adressierung durch den Zähler nacheinander angefragt werden, ob diese bereit sind, Daten von einer Datenquelle (20, 30, 40) zu empfangen und für den Fall, dass eine der Datensenken die Bereitschaft erklärt, die Datenübertragungseinrichtung anschließend die Datenquelle (20, 30, 40), deren Adresse bei der bereiten Datensenke (22, 32, 42) hinterlegt ist, anspricht, um die Datenübertragung vorzunehmen.Method according to Claim 6 or 7 in which data sinks (22, 32, 42) are successively requested by means of addressing by the counter, whether they are ready to receive data from a data source (20, 30, 40) and in the event that one of the data sinks declares readiness in that the data transmission device then responds to the data source (20, 30, 40) whose address is stored at the ready data sink (22, 32, 42) in order to carry out the data transmission. Verfahren nach Anspruch 6 oder 7, bei dem Datenquellen (20, 30, 40) nacheinander angesprochen werden, um zu erfragen, ob Daten für eine Datenübertragung bereitstehen, und für den Fall, dass eine Datenquelle (20, 30, 40) anzeigt, dass Daten für eine Datenübertragung bereitstehen, die Datensenke (22, 32, 42), deren Adresse bei der bereiten Datenquelle (20, 30, 40) hinterlegt ist, anspricht, um die Datenübertragung vorzunehmen.Method according to Claim 6 or 7 in which data sources (20, 30, 40) are addressed in succession in order to ascertain whether data is available for data transmission, and in the event that a data source (20, 30, 40) indicates that data is available for data transmission, the data sink (22, 32, 42) whose address is stored at the ready data source (20, 30, 40) responds to carry out the data transfer.
DE102017203486.6A 2017-03-03 2017-03-03 Method for monitoring a counter of a data transmission device Pending DE102017203486A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102017203486.6A DE102017203486A1 (en) 2017-03-03 2017-03-03 Method for monitoring a counter of a data transmission device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102017203486.6A DE102017203486A1 (en) 2017-03-03 2017-03-03 Method for monitoring a counter of a data transmission device

Publications (1)

Publication Number Publication Date
DE102017203486A1 true DE102017203486A1 (en) 2018-09-06

Family

ID=63171120

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102017203486.6A Pending DE102017203486A1 (en) 2017-03-03 2017-03-03 Method for monitoring a counter of a data transmission device

Country Status (1)

Country Link
DE (1) DE102017203486A1 (en)

Similar Documents

Publication Publication Date Title
EP0048767B1 (en) Priority stage controlled interruption device
DE2721319A1 (en) DEVICE FOR INDEPENDENT CHANGE OF THE PROCESSOR / MEMORY CONFIGURATION
EP1812860A1 (en) Method and device for mode switching and signal comparison in a computer system comprising at least two processing units
DE102013113262B4 (en) trigger routing unit
EP2513796B1 (en) Method for operating a processor
WO2019219796A1 (en) Method for event-based simulation of a system
EP1812859B1 (en) Method and device for mode switching and signal comparison in a computer system with at least two processing units
DE102013212842A1 (en) Method for operating a control device and control device with a model calculation unit
DE102010003538A1 (en) Method for checking signal and module activities in a timer module and timer module
DE102013206292A1 (en) Method and device for creating a data-based function model
DE102018129189A1 (en) METHOD FOR OPERATING A NETWORK SUBSCRIBER IN AN AUTOMATION COMMUNICATION NETWORK
DE102017203486A1 (en) Method for monitoring a counter of a data transmission device
DE112018006405T5 (en) Method and device for calculating the hash function
DE102012004844B4 (en) System of measured value monitoring and shutdown when measured value deviations occur
DE102017207976A1 (en) Circuit arrangement for monitoring a counter of a data transmission device
DE2161994A1 (en) Error detection circuit in a data processing system
WO2014090657A1 (en) Assigning time stamps to received data packets
WO2022058140A1 (en) Control of a technical system by means of a computing unit for artificial intelligence
DE112016006102T5 (en) MEMORY WITH EXTENSION TO PERFORM A RADIATION MEASUREMENT
DE102015211458A1 (en) A method and apparatus for securing a program counter structure of a processor system and for monitoring the handling of an interrupt request
DE102019130642B4 (en) Method for emergency interruption of the generation of an EPM microtick using direct memory access
DE3103574A1 (en) Circuit arrangement for establishing phase synchronism between clock pulses and sync bits of data envelopes
DE112018007778T5 (en) INTERRUPT CONTROL DEVICE, INTERRUPT CONTROL PROCEDURE AND INTERRUPT CONTROL PROGRAM
DE102004010562A1 (en) Interface device and method for the synchronization of data
DE102018103152A1 (en) DEVICE AND METHOD FOR MONITORING A DIGITAL CONTROL UNIT AS REGARDS FUNCTIONAL SAFETY AND A CONTROL DEVICE

Legal Events

Date Code Title Description
R012 Request for examination validly filed