DE112021003053T5 - COMPUTING DEVICE AND VEHICLE CONTROL DEVICE - Google Patents

COMPUTING DEVICE AND VEHICLE CONTROL DEVICE Download PDF

Info

Publication number
DE112021003053T5
DE112021003053T5 DE112021003053.1T DE112021003053T DE112021003053T5 DE 112021003053 T5 DE112021003053 T5 DE 112021003053T5 DE 112021003053 T DE112021003053 T DE 112021003053T DE 112021003053 T5 DE112021003053 T5 DE 112021003053T5
Authority
DE
Germany
Prior art keywords
error detector
computing
error
influence
computing device
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
DE112021003053.1T
Other languages
German (de)
Inventor
Akira Kitayama
Goichi Ono
Tadashi Kishimoto
Hiroaki Ito
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.)
Hitachi Astemo Ltd
Original Assignee
Hitachi Astemo Ltd
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 Hitachi Astemo Ltd filed Critical Hitachi Astemo Ltd
Publication of DE112021003053T5 publication Critical patent/DE112021003053T5/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/07Responding to the occurrence of a fault, e.g. fault tolerance
    • 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/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
    • 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/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Detection And Correction Of Errors (AREA)
  • Hardware Redundancy (AREA)
  • Traffic Control Systems (AREA)

Abstract

Wenn ein umfassender Mehrfachparallelbetrieb wie z. B. ein tiefgehendes neuronales Netz in Hardware implementiert ist, sind Schaltungsmehraufwände eines Fehlerdetektionsmechanismus erhöht. Um die oben beschriebenen Probleme zu lösen, schlägt die vorliegende Erfindung eine Rechenvorrichtung 1 vor, die Folgendes enthält: in großem Umfang mehrfach parallele Rechenelemente 110, die durch ein neuronales Netz repräsentiert werden; und einen Fehlerdetektor 120 zum Detektieren eines Vorliegens oder eines Fehlens und eines Orts eines Fehlers im Rechenelement 110, und Bilddaten durch das Rechenelement 110 verarbeitet und ein Erkennungsergebnis 3 ausgibt, wobei das Rechenelement 110, in dem der Fehlerdetektor 120 angeordnet ist, ein Rechenelement 110 ist, in dem eine Änderung der Erkennung zunimmt, wenn ein Fehler, eine Bitumkehrung oder dergleichen auftritt.If a comprehensive multiple parallel operation such. For example, if a deep neural network is implemented in hardware, circuit overhead of an error detection mechanism is increased. In order to solve the problems described above, the present invention proposes a computing device 1 including: large-scale multi-parallel computing elements 110 represented by a neural network; and an error detector 120 for detecting a presence or absence and a location of an error in the computing element 110, and image data processed by the computing element 110 and outputting a recognition result 3, wherein the computing element 110 in which the error detector 120 is arranged is a computing element 110 in which a change in recognition increases when an error, bit inversion or the like occurs.

Description

Technisches Gebiettechnical field

Die vorliegende Erfindung bezieht sich auf Rechenvorrichtungen. Unter diesen bezieht sich die vorliegende Erfindung insbesondere auf eine Anordnung von Rechenelementen, die eine Rechenvorrichtung bilden.The present invention relates to computing devices. Among these, the present invention particularly relates to an arrangement of computing elements constituting a computing device.

Technischer HintergrundTechnical background

Als ein Anwendungsbeispiel einer Rechenvorrichtung, die durch mehrere Rechenelemente realisiert wird, ist ein neuronales Netz wie z. B. ein tiefgehendes neuronales Netz vorhanden. Zusätzlich ist bekannt, dass ein neuronales Faltungsnetz (CNN), das eines der tiefgehenden neuronalen Netze ist, auf eine Bilderkennungsverarbeitung, die ein Typ einer Datenverarbeitung ist, angewendet wird. In einer derartigen Bildverarbeitung ist bekannt, dass die Erkennungsgenauigkeit im Vergleich zu einem herkömmlichen regelbasierten Algorithmus drastisch verbessert ist, und ist die praktische Anwendung in verschiedenen Feldern fortgeschritten.As an application example of a computing device realized by a plurality of computing elements, a neural network such as B. a deep neural network available. In addition, it is known that a convolution neural network (CNN), which is one of deep neural networks, is applied to image recognition processing, which is one type of data processing. In such image processing, it is known that the recognition accuracy is drastically improved as compared with a conventional rule-based algorithm, and practical application in various fields has progressed.

Zum Beispiel ist es im Gebiet der Automobilindustrie denkbar, durch Anwenden eines CNN zur Umgebungserkennung zur Fahrunterstützung und zum automatischen Fahren zur Verhinderung schwerer Unfälle beizutragen. Als Anforderung einer Vorrichtung, die ein CNN verarbeitet, ist es erforderlich, ein Bild, das von einer Kamera gesendet wurde, in einem Zyklus in einer Größenordnung von einigen zehn Millisekunden mit hoher Geschwindigkeit zu verarbeiten. Aus diesem Grund ist eine Vorrichtung erforderlich, die mit einer teuren GPU ausgestattet ist. Allerdings kann aufgrund einer kürzlichen Gewichtsverringerung eines Algorithmus und des Fortschritts einer Einbautechnik zum Komprimieren eines Modells eine kostengünstige Vorrichtung gewählt werden und eine ECU, in der ein CNN eingebaut ist, wurde auch für Nutzfahrzeuge in die praktische Verwendung gebracht.For example, in the field of automobile industry, it is conceivable to contribute to prevention of serious accidents by applying a CNN to environment recognition for driving assistance and automatic driving. As a requirement of an apparatus processing a CNN, it is required to process an image sent from a camera in a cycle on the order of tens of milliseconds at high speed. For this reason, a device equipped with an expensive GPU is required. However, due to a recent weight reduction of an algorithm and progress of an installation technique for compressing a model, an inexpensive device can be selected, and an ECU in which a CNN is installed has been put into practical use for commercial vehicles as well.

Andererseits ist es erforderlich, hohe Sicherheits- und Zuverlässigkeitsnormen, die in ISO 26262 oder dergleichen definiert sind, für fahrzeuginterne Komponenten zu erfüllen. Das heißt, es ist ein hoher Bedarf einer Fehlerrate und einer Fehlerdetektionsrate einer Rechenschaltung und einer Software zur Bildverarbeitung vorhanden.On the other hand, it is required to meet high safety and reliability standards defined in ISO 26262 or the like for in-vehicle components. That is, there is a high demand for an error rate and an error detection rate of an arithmetic circuit and software for image processing.

Als Mittel zum Detektieren eines Fehlers einer Rechenvorrichtung, in der eine allgemeine kombinatorische Logikschaltung (eine Zufallslogik) montiert ist, ist die folgende Technik bekannt. Zum Beispiel ist eine Technik des Detektierens davon, ob die Ausgabewerte immer übereinstimmen oder nicht, durch ein Gleichschrittverfahren (ein Duplikationsverfahren) bekannt. Zusätzlich ist eine Technik bekannt, wobei ein Fehlerdetektionsmuster (ein Prüfsignal) zum Detektieren eines Fehlers eines Rechenelements in eine Schaltung eingegeben wird, um zu bestimmen, ob ein Ausgabewert der Schaltung mit einem erwarteten Wert übereinstimmt.As means for detecting an error of a computing device in which a general combinatorial logic circuit (random logic) is mounted, the following technique is known. For example, a technique of detecting whether the output values always agree or not by a lockstep method (a duplication method) is known. In addition, a technique is known in which an error detection pattern (a test signal) for detecting an error of a computing element is input to a circuit to determine whether an output value of the circuit agrees with an expected value.

Zum Beispiel offenbart Patentliteratur 1 eine Konfiguration, in der zum Zweck der Selbstdiagnose des Vorliegens oder des Fehlens eines Fehlers in einer Bildverarbeitungsvorrichtung. gespeichert wird, welche Rechenelemente als Rechenelemente in Pipelines, die in mehreren Stufen angeordnet sind, verwendet werden, und lediglich die verwendeten Rechenelemente zur Erzeugung eines Prüfmusters geprüft werden, wodurch eine Untersuchung in kurzer Zeit ermöglicht wird, ohne eine Gesamtuntersuchung durchzuführen.For example, Patent Literature 1 discloses a configuration in which, for the purpose of self-diagnosing the presence or absence of an error in an image processing device. storing which computational elements are used as computational elements in pipelines arranged in plural stages, and only the computational elements used are tested to generate a test pattern, thereby enabling inspection in a short time without performing an overall inspection.

Entgegen haltu ngslisteRejection list

Patentliteraturpatent literature

PTL 1: JP 2017-092757 A PTL 1: JP 2017-092757 A

Zusammenfassung der ErfindungSummary of the Invention

Technisches ProblemTechnical problem

Allerdings besteht, falls eine Datenverarbeitung durch mehrere Rechenelemente z. B. in einem CNN, das in großem Umfang mehrfach parallele Produkt-Summen-Rechenelemente erfordert, durchgeführt wird, das Problem, dass Schaltungsmehraufwände und eine Untersuchungszeit zur Fehlerdetektion zunehmen, selbst wenn die herkömmliche Technik angewendet wird, weil es keine Verarbeitung des Pipeline-Typs ist.However, if data processing by several computing elements z. For example, in a CNN that requires large-scale plural parallel product-sum arithmetic operations, there is a problem that a circuit overhead and an investigation time for error detection increase even if the conventional technique is applied because there is no pipeline-type processing is.

In einem derartigen Fall ist z. B. eine Vorrichtung, die zur Berechnung verwendet wird, wie z. B. eine Rechenvorrichtung teuer. Zusätzlich nimmt die Anzahl von Parallelrechenelementen, die an der Vorrichtung montiert sein können, ab und nimmt die Datenverarbeitungsgeschwindigkeit, z. B. die Bildrate der Bildverarbeitung, ab.In such a case z. B. a device used for calculation, such as e.g. B. a computing device expensive. In addition, the number of parallel computing elements that can be mounted on the device decreases and the data processing speed, e.g. B. the frame rate of the image processing.

Die vorliegende Erfindung wurde gemacht, um ein derartiges Problem zu lösen, und eine Aufgabe der vorliegenden Erfindung ist, eine Rechenvorrichtung zu schaffen, die den Schaltungsmehraufwand zur Fehlerdetektion verringern und die Kosten der Vorrichtung verringern kann. Es ist festzuhalten, dass in der vorliegenden Spezifikation ein Fehler, der einen Mangel und einen Defekt enthält, als ein Fehler ausgedrückt wird.The present invention has been made to solve such a problem, and an object of the present invention is to provide a computing device which can reduce the circuit overhead for error detection and reduce the cost of the device. It is to be noted that in the present specification, an error including a deficiency and a defect is expressed as an error.

Lösung des Problemsthe solution of the problem

Ein Beispiel einer Rechenvorrichtung gemäß der vorliegenden Erfindung ist eine Rechenvorrichtung, die eine vorgegebene Datenverarbeitung an Eingabedaten ausführt, wobei die Rechenvorrichtung Folgendes enthält: mehrere Rechenelemente, die jeweils eine Berechnung an einer Eingabe ausführen und ein Ergebnis der Berechnung ausgeben, um die Datenverarbeitung zu realisieren; und einen Fehlerdetektor, der in mindestens einem der mehreren Rechenelemente angeordnet ist und einen Fehler des Rechenelements detektiert, wobei der Fehlerdetektor in einem Rechenelement angeordnet ist, das gemäß einem Einflussgrad bestimmt wird, der einen Grad des Einflusses auf die Datenverarbeitung durch ein Berechnungsergebnis des Rechenelements unter den mehreren Rechenelementen angibt.An example of a computing device according to the present invention is a computing device that performs predetermined data processing on input data, the computing device including: a plurality of computing elements each performing calculation on an input and outputting a result of the calculation to realize the data processing; and an error detector that is arranged in at least one of the plurality of computing elements and detects an error of the computing element, wherein the error detector is arranged in a computing element that is determined according to an influence degree that includes a degree of influence on the data processing by a calculation result of the computing element indicates the multiple computational elements.

Zusätzlich ist ein Beispiel einer Fahrzeugsteuervorrichtung gemäß der vorliegenden Erfindung eine Fahrzeugsteuervorrichtung, die ein Steuersignal zum Steuern eines Fahrzeugs auf der Grundlage von Bilddaten ausgibt, wobei die Fahrzeugsteuervorrichtung Folgendes enthält: mehrere Rechenelemente, die jeweils eine Berechnung an einer Eingabe auf der Grundlage der Bilddaten ausführen, um eine Erzeugung des Steuersignals zu realisieren; und einen Fehlerdetektor, der in mindestens einem der mehreren Rechenelemente angeordnet ist und einen Fehler des Rechenelements detektiert, wobei der Fehlerdetektor in einem Rechenelement angeordnet ist, das gemäß einem Einflussgrad bestimmt wird, der einen Grad des Einflusses auf die Steuerung am Fahrzeug durch ein Berechnungsergebnis des Rechenelements unter den mehreren Rechenelementen angibt.In addition, an example of a vehicle control device according to the present invention is a vehicle control device that outputs a control signal for controlling a vehicle based on image data, the vehicle control device including: a plurality of computing elements each performing a calculation on an input based on the image data, to realize generation of the control signal; and an error detector which is arranged in at least one of the plurality of calculation elements and detects an error of the calculation element, wherein the error detector is arranged in a calculation element which is determined according to an influence degree indicating a degree of influence on the control on the vehicle by a calculation result of the indicates a computational element among the plurality of computational elements.

Vorteilhafte Wirkungen der ErfindungAdvantageous Effects of the Invention

Gemäß der vorliegenden Erfindung ist es möglich, eine Zunahme der Anzahl von Fehlerdetektoren, die angeordnet werden sollen, d. h. einen Schaltungsmehraufwand in der Fehlerdetektion in einer Rechenvorrichtung unter Verwendung eines neuronalen Netzes oder dergleichen zu verhindern.According to the present invention, it is possible to increase the number of error detectors to be arranged, i.e. H. to prevent a circuit overhead in error detection in a computing device using a neural network or the like.

Die Probleme, Konfigurationen und Wirkungen außer den oben beschriebenen werden aus der Beschreibung der Ausführungsformen unten deutlich werden.The problems, configurations, and effects other than those described above will become apparent from the description of the embodiments below.

Figurenlistecharacter list

  • [1A] 1A ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Rechenvorrichtung gemäß einer ersten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 1A ] 1A 14 is a block diagram illustrating a configuration example of a computing device according to a first embodiment of the present invention.
  • [1B] 1B ist ein Blockdiagramm, das ein Konfigurationsbeispiel eines Rechenelements (ohne einen Fehlerdetektor) gemäß der ersten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 1B ] 1B 14 is a block diagram illustrating a configuration example of a computing element (without an error detector) according to the first embodiment of the present invention.
  • [1C] 1C ist ein Blockdiagramm, das ein Konfigurationsbeispiel eines Rechenelements und eines Fehlerdetektors, der im Rechenelement angeordnet ist, gemäß der ersten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 1C ] 1C 14 is a block diagram illustrating a configuration example of a computing element and an error detector arranged in the computing element according to the first embodiment of the present invention.
  • [1D] 1D ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Rechenvorrichtung, die mit einem Fehlerdetektoranordnungs-Element und einer Fehlerdetektoranordnungs-Speichereinheit versehen ist, gemäß der ersten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 1D ] 1D 12 is a block diagram illustrating a configuration example of a computing device provided with an error detector array element and an error detector array storage unit according to the first embodiment of the present invention.
  • [1E] 1E ist ein Diagramm, das ein Beispiel von ) Fehlerdetektoranordnungs-Informationen, die in der ersten Ausführungsform der vorliegenden Erfindung verwendet werden, veranschaulicht.[ 1E ] 1E Fig. 12 is a diagram illustrating an example of error detector arrangement information used in the first embodiment of the present invention.
  • [1F] 1F ist ein Ablaufplan, der ein Beispiel der Verarbeitung des Bestimmens eines Vorliegens oder eines Fehlens eines Fehlerdetektors in der ersten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 1F ] 1F 14 is a flowchart illustrating an example of processing of determining presence or absence of an error detector in the first embodiment of the present invention.
  • [2A] 2A ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Rechenvorrichtung gemäß einer zweiten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 2A ] 2A 14 is a block diagram illustrating a configuration example of a computing device according to a second embodiment of the present invention.
  • [2B] 2B ist ein Diagramm, das ein Beispiel von Fehlerdetektoranordnungsplaninformationen, die in der Ausführungsform der vorliegenden Erfindung verwendet werden, veranschaulicht.[ 2 B ] 2 B FIG. 12 is a diagram illustrating an example of error detector arrangement map information used in the embodiment of the present invention.
  • [2C] 2C ist ein Diagramm, das ein Beispiel von Fehlerdetektoranordnungs-Informationen, die in der zweiten Ausführungsform der vorliegenden Erfindung verwendet werden, veranschaulicht.[ 2C ] 2C Fig. 12 is a diagram illustrating an example of error detector arrangement information used in the second embodiment of the present invention.
  • [3A] 3A ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Rechenvorrichtung gemäß einer dritten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 3A ] 3A 14 is a block diagram illustrating a configuration example of a computing device according to a third embodiment of the present invention.
  • [3B] 3B ist ein Blockdiagramm, das ein Diagramm veranschaulicht, das Fehlerdetektoranordnungs-Informationen gemäß der dritten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 3B ] 3B 12 is a block diagram illustrating a diagram showing error detector arrangement information according to the third embodiment of the present invention.
  • [4A] 4A ist ein Blockdiagramm, das ein Konfigurationsbeispiel eines Rechenelements gemäß einer vierten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 4A ] 4A 14 is a block diagram illustrating a configuration example of a computing element according to a fourth embodiment of the present invention.
  • [4B] 4B ist ein Blockdiagramm, das ein Beispiel, in dem ein Fehlerdetektor in einer Vorrichtung der Operationseinheit angeordnet ist, gemäß der vierten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 4B ] 4B 14 is a block diagram illustrating an example in which an error detector is arranged in an apparatus of the operation unit according to the fourth embodiment of the present invention.
  • [4C] 4C ist eine vergrößerte Ansicht, die ein Beispiel eines Rechenelements, in dem ein Fehlerdetektor in der Vorrichtung der Operationseinheit angeordnet ist, gemäß der vierten Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 4C ] 4C 14 is an enlarged view illustrating an example of a computing element in which an error detector is arranged in the apparatus of the operation unit according to the fourth embodiment of the present invention.
  • [4D] 4D ist eine vergrößerte Ansicht, die ein Beispiel veranschaulicht, in dem Funktionen der Vorrichtung der Operationseinheit in der vierten Ausführungsform der vorliegenden Erfindung getauscht sind.[ 4D ] 4D 14 is an enlarged view illustrating an example in which functions of the operation unit apparatus are switched in the fourth embodiment of the present invention.
  • [4E] 4E ist ein Diagramm, das ein Beispiel von Fehlerdetektoranordnungs-Informationen, die in der vierten Ausführungsform der vorliegenden Erfindung verwendet werden, veranschaulicht.[ 4E ] 4E 14 is a diagram illustrating an example of error detector arrangement information used in the fourth embodiment of the present invention.
  • [5A] 5A ist ein Diagramm, das Schichten von Neuronen (Rechenelemente 110) einer fünften Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 5A ] 5A 12 is a diagram illustrating layers of neurons (computational elements 110) of a fifth embodiment of the present invention.
  • [5B] 5B ist ein Diagramm, das ein Beispiel einer Anordnung von Fehlerdetektoren gemäß der fünften Ausführungsform der vorliegenden Erfindung veranschaulicht.[ 5B ] 5B 14 is a diagram illustrating an example of an arrangement of error detectors according to the fifth embodiment of the present invention.
  • [6] 6 ist ein Diagramm zum Erläutern eines Anwendungsbeispiels jeder Ausführungsform der vorliegenden Erfindung.[ 6 ] 6 Fig. 14 is a diagram for explaining an application example of each embodiment of the present invention.

Beschreibung der AusführungsformenDescription of the embodiments

Im Folgenden werden Ausführungsformen der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen beschrieben. Jede Ausführungsform ist ein Beispiel zum Beschreiben der vorliegenden Erfindung, und Auslassungen und Vereinfachungen werden zur Verdeutlichung der Beschreibung geeignet vorgenommen. Die vorliegende Erfindung kann in verschiedenen weiteren Formen implementiert werden. Sofern es nicht anders angegeben ist, kann jede Komponente Einzahl oder Mehrzahl sein.In the following, embodiments of the present invention will be described with reference to the drawings. Each embodiment is an example for describing the present invention, and omissions and simplifications are appropriately made for clarity of description. The present invention can be implemented in various other forms. Unless otherwise noted, each component may be singular or plural.

Positionen, Größen, Formen, Bereiche und dergleichen der jeweiligen Komponenten, die in den Zeichnungen und dergleichen veranschaulicht sind, müssen keine tatsächlichen Positionen, Größen, Formen, Bereiche und dergleichen repräsentieren, um das Verständnis der Erfindung zu erleichtern. Aus diesem Grund ist die vorliegende Erfindung nicht notwendigerweise auf die Position, die Größe, die Form, den Umfang usw., die in den Zeichnungen und dergleichen offenbart sind, beschränkt.Positions, sizes, shapes, ranges and the like of the respective components illustrated in the drawings and the like may not represent actual positions, sizes, shapes, ranges and the like to facilitate understanding of the invention. For this reason, the present invention is not necessarily limited to the position, size, shape, scope, etc. disclosed in the drawings and the like.

Als Beispiel von Informationen, die in jeder Ausführungsform verarbeitet werden, werden die Ausdrücke „Tabelle“ und „Informationen“ verwendet, jedoch können „Liste“, „Warteschlange“ oder „Informationen“ und „Tabelle“ verwendet werden. Zusätzlich können die Kennungsinformationen sein als „Kennung“, „Name“, „ID“, „Nummer“ oder dergleichen gelesen werden.As an example of information processed in each embodiment, the terms "table" and "information" are used, however, "list", "queue" or "information" and "table" can be used. In addition, the identifier information can be read as "identifier", "name", "ID", "number" or the like.

Falls mehrere Elemente vorhanden sind, die dieselben oder ähnliche Funktionen aufweisen, können dieselben Bezugszeichen mit verschiedenen Indizes bezeichnet werden. Zusätzlich kann, falls es nicht nötig ist, die mehreren Komponenten zu unterscheiden, die Beschreibung durch Auslassen des Index vorgenommen werden.If there are multiple elements that have the same or similar functions, the same reference numbers may be denoted with different subscripts. In addition, if it is not necessary to distinguish the plural components, the description can be made by omitting the index.

In jeder Ausführungsform kann eine Verarbeitung beschrieben werden, die durch Ausführen eines Programms durchgeführt wird. Hier führt der Computer ein Programm durch einen Prozessor (z. B. eine CPU, eine GPU) aus und führt eine Verarbeitung, die durch das Programm definiert ist, unter Verwendung eines Speicherbetriebsmittels (z. B. eines Arbeitsspeichers), einer Schnittstellenvorrichtung (z. B. eines Kommunikationsanschlusses) und dergleichen durch. Deshalb kann der Gegenstand.der Verarbeitung, die durch Ausführen des Programms durchgeführt wird, ein Prozessor sein. Ähnlich kann der Gegenstand der Verarbeitung, die durch Ausführen des Programms durchgeführt wird, eine Steuereinheit, eine Vorrichtung, ein System, ein Computer oder ein Knoten, der einen Prozessor aufweist, sein. Der Gegenstand der Verarbeitung, die durch Ausführen des Programms durchgeführt wird, kann eine Recheneinheit sein und kann eine fest zugeordnete Schaltung enthalten, die eine bestimmte Verarbeitung durchführt. Hier ist die fest zugeordnete Schaltung z. B. ein feldprogrammierbares Gate-Array (FPGA), eine anwendungsspezifische integrierte Schaltung (ASIC), eine komplexe programmierbare Logikvorrichtung (CPLD) oder dergleichen.In each embodiment, processing performed by executing a program can be described. Here, the computer executes a program through a processor (e.g. CPU, GPU) and performs processing defined by the program using a storage resource (e.g. memory), an interface device (e.g a communication port) and the like. Therefore, the subject of the processing performed by executing the program can be a processor. Similarly, the subject of the processing performed by executing the program may be a controller, device, system, computer, or node having a processor. The object of the processing performed by executing the program may be an arithmetic unit and may include a dedicated circuit that performs a specific processing. Here the dedicated circuit z. a field programmable gate array (FPGA), an application specific integrated circuit (ASIC), a complex programmable logic device (CPLD), or the like.

Das Programm kann von einer Programmquelle im Computer installiert werden. Die Programmquelle kann z. B. ein Programmauslieferungs-Server oder ein computerlesbares Speichermedium sein. Wenn die Programmquelle ein Programmauslieferungs-Server ist, kann der Programmauslieferungs-Server einen Prozessor und ein Speicherbetriebsmittel, das ein Verteilungszielprogramm speichert, enthalten und kann der Prozessor des Programmauslieferungs-Servers das Verteilungszielprogramm zu einem weiteren Computer verteilen. Zusätzlich können in der Ausführungsform zwei oder mehr Programme als ein Programm realisiert werden oder kann ein Programm als zwei oder mehr Programme realisiert werden.The program can be installed from a program source in the computer. The program source can B. be a program delivery server or a computer-readable storage medium. When the program source is a program delivery server, the program delivery server may include a processor and a memory resource storing a distribution target program, and the processor of the program delivery server may distribute the distribution target program to another computer. In addition, in the embodiment, two or more programs can be realized as one program, or one program can be realized as two or more programs.

Im Folgenden werden Ausführungsformen der vorliegenden Erfindung unter Bezugnahme auf die Zeichnungen beschrieben. Es ist festzuhalten, dass in der folgenden Ausführungsform ein Beispiel beschrieben ist, in dem die vorliegende Erfindung auf eine fahrzeuginterne ECU zur Fahrzeugsteuerung, z.B. fortschrittliches Fahrerunterstützungssystem (ADAS) oder autonomes Fahren (AD) angewendet wird. Allerdings ist die vorliegende Erfindung nicht auf die fahrzeuginternen ECUs für ADAS und AD beschränkt. Zusätzlich kann die vorliegende Erfindung auf allgemeine Datenverarbeitung wie z. B. Bildverarbeitung angewendet werden. Darunter kann die vorliegende Erfindung besonders auf Rechenvorrichtungen, die Sicherheit erfordern, wie z. B. eine Anlagensteuerung weitgehend angewendet werden.In the following, embodiments of the present invention will be described with reference to the drawings. Note that in the following embodiment, an example in which the present invention is applied to an in-vehicle ECU for vehicle control such as advanced driver assistance system (ADAS) or autonomous driving (AD) is described. However, the present invention is not limited to the in-vehicle ECUs for ADAS and AD. In addition, the present invention can be applied to general data processing such as e.g. B. Image processing can be applied. Among them, the present invention can be particularly applied to computing devices that require security, such as e.g. B. a system control can be widely applied.

<Erste Ausführungsform><First Embodiment>

Eine erste Ausführungsform, in der die vorliegende Erfindung auf eine fahrzeuginterne ECU für ADAS und AD angewendet wird, wird unter Bezugnahme auf 1A bis 1F beschrieben. 1A ist ein Blockdiagramm, das ein Konfigurationsbeispiel einer Rechenvorrichtung gemäß einer ersten Ausführungsform veranschaulicht.A first embodiment in which the present invention is applied to an in-vehicle ECU for ADAS and AD will be described with reference to FIG 1A until 1F described. 1A 14 is a block diagram illustrating a configuration example of a computing device according to a first embodiment.

Als Beispiel einer Datenverarbeitung enthält eine Rechenvorrichtung 1 eine Recheneinheit 11, die eine Bildverarbeitung an Bilddaten 2, die Eingabedaten sind, ausführt und ein Erkennungsergebnis 3 ausgibt, das Ausgabedaten sind. Es wird angenommen, dass die Recheneinheit 11 eine umfassende Parallelberechnung wie z. B. CNN durchführt und eine Verarbeitung über mehrere Schichten ausführt, wobei jede Schicht die Rechenelemente 110, die in 1B veranschaulicht sind, d. h. Neuronen, die parallel angeordnet sind, aufweist. Eingaben 130 der Rechenelemente 110, z. B. Eingabesignale, können jeweils an Ausgaben 140 der Rechenelemente 110 der vorhergehenden Schicht gekoppelt sein oder können lediglich an einige wahlweise Ausgaben gekoppelt sein, und die Anzahl von Neuronen (Rechenelementen 110) jeder Schicht kann optional sein. Wie oben beschrieben ist, enthält die Recheneinheit 11 die mehreren Rechenelemente 110. Zusätzlich werden Informationen, die normal/anornal 4 angeben, was ein Detektionsergebnis eines Fehlerdetektors 120 ist, der später beschrieben wird, von der Rechenvorrichtung 1 ausgegeben.As an example of data processing, a computing device 1 includes a computing unit 11 that performs image processing on image data 2, which is input data, and outputs a recognition result 3, which is output data. It is assumed that the arithmetic unit 11 performs a comprehensive parallel calculation such as e.g. B. CNN performs and performs processing across multiple layers, each layer comprising the compute elements 110 shown in 1B are illustrated, ie neurons arranged in parallel. Inputs 130 of the computing elements 110, e.g. B. input signals, may each be coupled to outputs 140 of the previous layer's computational elements 110, or may be coupled to only some optional outputs, and the number of neurons (computational elements 110) of each layer may be optional. As described above, the computing unit 11 includes the plurality of computing elements 110. In addition, information indicating normal/abnormal 4 which is a detection result of an error detector 120, which will be described later, is output from the computing device 1.

Zusätzlich ist als ein Mechanismus zum Detektieren, dass das Rechenelement 110 fehlerhaft ist, z. B. ein Fehlerdetektor 120, der in 1C veranschaulicht ist, angeordnet. Der Fehlerdetektor 120 besitzt die folgende Konfiguration. Die Konfiguration enthält eine Prüfsignalerzeugungsschaltung 121 zum Erzeugen eines Prüfsignals 150 in der Eingabeeinheit des Rechenelements 110, eine Eingangsseitenauswahlvorrichtung 122 zum Schalten zwischen einer Eingabe 130 zum Rechenelement und dem Prüfsignal 150 und einen Komparator 123 zum Bestätigen, ob das Prüfsignal 150 mit einem erwarteten Wert übereinstimmt. Dann wird eine Ausgabe 140 vom Rechenelemerit 110 ausgegeben. Zusätzlich wird ein Normal/Abnormal-Signal 160 des Fehlerdetektors 120 vom Komparator 123 ausgegeben. Diese Konfiguration ist ein Beispiel und die vorliegende Erfindung ist nicht darauf beschränkt, solange sie eine Funktion zum Detektieren eines Fehlers des Rechenelements 110 besitzt. Zusätzlich führt eine „Anordnung“ im Rechenelement einen Zustand herbei, der einen Fehler des Rechenelements detektieren kann und enthält z. B. eine Verbindung mit dem Rechenelement. Zusätzlich sind, um die Anordnung zu realisieren, sowohl eine Anordnung unter Verwendung eines FPGA und dergleichen als auch eine feste Anordnung als Hardware enthalten, wie später beschrieben wird.Additionally, as a mechanism for detecting that the computing element 110 is faulty, e.g. B. an error detector 120, which in 1C is illustrated, arranged. The error detector 120 has the following configuration. The configuration includes a test signal generation circuit 121 for generating a test signal 150 in the input unit of the computing element 110, an input side selector 122 for switching between an input 130 to the computing element and the test signal 150, and a comparator 123 for confirming whether the test signal 150 matches an expected value. An output 140 is then output from the arithmetic element 110 . In addition, a normal/abnormal signal 160 from the error detector 120 is output from the comparator 123 . This configuration is an example, and the present invention is not limited to this as long as it has a function of detecting a failure of the computing element 110 . In addition, an "arrangement" in the computing element brings about a state that can detect a failure of the computing element and includes e.g. B. a connection to the computing element. In addition, to realize the arrangement, both an arrangement using an FPGA and the like and a fixed arrangement are included as hardware, as will be described later.

Hier sind in der vorliegenden Ausführungsform das Rechenelement 110, in dem der Fehlerdetektor. 120 angeordnet ist und das Rechenelement 110 nicht angeordnet ist, gemischt. Der Grund dafür, dass das Vorliegen oder das Fehlen des Fehlerdetektors gemischt ist, wird unten beschrieben. Es ist festzuhalten, dass in der vorliegenden Ausführungsform der Fehlerdetektor 120 in mindestens einem Rechenelement 110 angeordnet ist.Here are the computing element 110 in the present embodiment, in which the error detector. 120 is arranged and the computing element 110 is not arranged mixed. The reason why the presence or absence of the error detector is mixed will be described below. It is noted that in the present embodiment, the error detector 120 is arranged in at least one computing element 110 .

im Falle eines Rechenelements in einer allgemeinen Zufallslogik weicht ein Berechnungsergebnis oder ein Ergebnis einer Datenverarbeitung dann, wenn ein Schaltungselement oder eine Verdrahtung an einer Stelle (in einem 1 Bit) fehlerhaft ist, von einem erwarteten Wert ab und besitzt ein System unter Verwendung des Rechenelements häufig einen großen Einfluss. Andererseits ist in einem Rechenelement 110, das eine Schaltung enthält, die eine Produktsummenoperation einer großen Anzahl von Eingabesignalen wie z. B. ein CNN und eine Rundungsfunktion wie z. B. eine Bitverschiebung und eine Aktivierungsfunktion aufweist, selbst dann, wenn ein 1 Bit-Fehler auftritt, eine Änderung eines Berechnungsergebnisses häufig vernachlässigbar. Zusätzlich kann selbst dann, wenn die Änderung des Berechnungsergebnisses in einem Rechenelement groß ist, da die Berechnung in der nächsten und nachfolgenden Schichten, die die Ergebnisse von weiteren Rechenelementen enthalten, durchgeführt wird, die Änderung in Bezug auf den erwarteten Wert im Ergebnis der Datenverarbeitung (dem Erkennungsergebnis 3), die das endgültige Berechnungsergebnis ist, winzig sein.in the case of an arithmetic element in a general random logic, when a circuit element or a wiring is defective at one point (in 1 bit), a calculation result or a result of data processing deviates from an expected value and a system using the arithmetic element often has A great influence. On the other hand, in an arithmetic unit 110 including a circuit that performs a product sum operation of a large number of input signals such as B. a CNN and a rounding function such. B. has a bit shift and an activation function, even if a 1-bit error occurs, a change in a calculation result is often negligible. In addition, even if the change in the calculation result in one calculation element is large, since the calculation is performed in the next and subsequent layers containing the results of other calculation elements, the change in the expected value in the result of data processing ( the recognition result 3), which is the final calculation result, must be minute.

Darüber hinaus werden den Operationsparametern (Gewicht, Vorbelastung usw.) des CNN, die durch Trainieren unter Verwendung der Lerndaten, die für jede Schicht und jedes Rechenelement gesetzt werden, bestimmt werden, verschiedene Werte zugewiesen. Da ein Rechenelement, dem ein winziger Wert nahe null unter den zugewiesenen Parametern zugewiesen wird, ungeachtet davon, welche Daten eingegeben werden, lediglich ein winziges Ergebnis aufweist, kann man sagen, dass der Einfluss des Fehlers, der dem Berechnungsergebnis und dem Erkennungsergebnis 3 vermittelt wird, klein ist.In addition, the operational parameters (weight, preload, etc.) of the CNN obtained by training using the training data provided for each layer and each compute element are set, are determined, different values are assigned. Since a calculation element assigned a minute value close to zero among the assigned parameters has only a minute result regardless of what data is input, it can be said that the influence of the error imparted to the calculation result and the recognition result 3 , is small.

Aus dem oben genannten Grund unterscheidet sich der Einflussgrad des Fehlers, der dem Berechnungsergebnis des Rechenelements 110 und dem Datenverarbeitungsergebnis der Rechenvorrichtung 1 vermittelt wird, abhängig von den Eigenschaften des Algorithmus selbst und davon, wie die Operationsparameter zugewiesen werden (Ergebnis des Lernens). Der Einflussgrad wird während des Entwerfens des CNN im Voraus untersucht, ein Rechenelement, das einen großen Einfluss auf das Berechnungsergebnis aufweist, wird festgelegt und der Fehlerdetektor 120 wird in Bezug auf das Rechenelement angeordnet.For the above reason, the degree of influence of the error imparted to the calculation result of the computing element 110 and the data processing result of the computing device 1 differs depending on the characteristics of the algorithm itself and how the operation parameters are assigned (result of learning). The degree of influence is studied in advance during designing of the CNN, a calculation element having a large influence on the calculation result is determined, and the error detector 120 is arranged with respect to the calculation element.

Um dies zu realisieren, sind in der vorliegenden Ausführungsform, wie in 1D veranschaulicht ist, ein Fehlerdetektoranordnungs-Element 101 und eine Fehlerdetektoranordnungs-Speichereinheit 102 vorgesehen. Das heißt, das Fehlerdetektoranordnungs-Element 101 bestimmt die Anordnung der Fehlerdetektoren 120 auf der Grundlage von Fehlerdetektoranordnungs-Informationen 1021, die in der Fehlerdetektoranordnungs-Speichereinheit 102 gespeichert sind. Die Funktion des Fehlerdetektoranordnungs-Elements 101 ist eine Verarbeitung gemäß einem Programm, jedoch kann die Funktion als Hardware realisiert werden. Es ist festzuhalten, dass in jeder Ausführungsform, die später beschrieben wird, entsprechend die Rechenvorrichtung 1, die in 1A und 1D veranschaulicht ist, als eine Fahrzeugsteuervorrichtung verwendet werden kann.In order to realize this, in the present embodiment, as in 1D 1, an error detector array element 101 and an error detector array storage unit 102 are provided. That is, the error detector arrangement element 101 determines the arrangement of the error detectors 120 based on error detector arrangement information 1021 stored in the error detector arrangement storage unit 102 . The function of the error detection array element 101 is processing according to a program, but the function can be realized as hardware. It is to be noted that in each embodiment described later, according to the computing device 1 shown in FIG 1A and 1D is illustrated can be used as a vehicle control device.

Hier veranschaulicht 1E ein Beispiel der Fehlerdetektoranordnungs-Informationen 1021. Die Fehlerdetektoranordnungs-Informationen 1021 enthalten ein „Rechenelement“, das Kennungsinformationen zum Identifizieren des Rechenelements sind, einen „Einflussgrad“, der den Einfluss des Berechnungsergebnisses des Rechenelements, der der Erkennungsverarbeitung vermittelt wird, angibt, und „das Vorliegen oder das Fehlen einer Anordnung“ des Fehlerdetektors 120. Hier kann das „Rechenelement“ weitere Kennungsinformationen wie z. B. einen Namen außer einer Nummer verwenden.Illustrated here 1E an example of the error detector arrangement information 1021. The error detector arrangement information 1021 includes “calculation element” that is identification information for identifying the calculation element, “degree of influence” that indicates the influence of the calculation result of the calculation element given to the recognition processing, and “ the presence or absence of an arrangement” of the error detector 120. For example, use a name other than a number.

Hier ist der Einflussgrad ein Index, der durch einen vorgegebenen Algorithmus berechnet wird und den Grad des Einflusses auf die Datenverarbeitung der Rechenvorrichtung 1 durch das Berechnungsergebnis des Rechenelements angibt. Deshalb enthält der Einflussgrad einen Gegenstand, der gemäß einem Ergebnis einer Datenverarbeitung, die später beschrieben wird, und/oder einer Steuerung gemäß dem Ergebnis der Datenverarbeitung bestimmt wird. Dies ermöglicht eine geeignete Fehlerdetektion gemäß der Datenverarbeitung und dem Anwendungsziel der Rechenvorrichtung 1.Here, the degree of influence is an index that is calculated by a predetermined algorithm and indicates the degree of influence on the data processing of the computing device 1 by the calculation result of the computing element. Therefore, the degree of influence includes an item that is determined according to a result of data processing, which will be described later, and/or control according to the result of data processing. This enables appropriate error detection according to the data processing and application goal of the computing device 1.

Insbesondere enthält der Einflussgrad einen Grad der Verschlechterung (eine Erkennungsgenauigkeit), der ein Grad der Änderung eines Erkennungsergebnisses als Ergebnis einer Datenverarbeitung ist, und einen Gegenstand, der gemäß dem Einfluss des Erkennungsergebnisses auf das Steuerungsergebnis des Fahrzeugs bestimmt wird. Wie oben beschrieben ist, gibt der Einflussgrad den Grad des Einflusses auf die Datenverarbeitung durch ein Berechnungsergebnis eines Rechenelements oder dergleichen an.Specifically, the degree of influence includes a degree of deterioration (a recognition accuracy) that is a degree of change in a recognition result as a result of data processing, and an item that is determined according to the influence of the recognition result on the control result of the vehicle. As described above, the degree of influence indicates the degree of influence on data processing by a calculation result of a computing element or the like.

Es ist festzuhalten, dass in der vorliegenden Ausführungsform der Schwellenwert des Einflussgrads als „0,5“ gespeichert ist und dann, wenn der Schwellenwert überschritten wird, bestimmt wird, dass „das Vorliegen oder das Fehlen einer Anordnung“ angeordnet ist, d. h. der Fehlerdetektor 120 im entsprechenden Rechenelement 110 angeordnet ist. Andererseits wird dann, wenn der Einflussgrad gleich oder kleiner als der Schwellenwert ist, bestimmt, dass „das Vorliegen oder das Fehlen einer Anordnung“ nicht vorhanden ist, d. h. der Fehlerdetektor 120 nicht im entsprechenden Rechenelement 110 angeordnet ist. Zusätzlich müssen die Fehlerdetektoranordnungs-Informationen 1021 den „Einflussgrad“ nicht enthalten.Note that in the present embodiment, the threshold of the degree of influence is stored as "0.5", and when the threshold is exceeded, it is determined that "the presence or absence of an arrangement" is ordered, that is, H. the error detector 120 is arranged in the corresponding computing element 110 . On the other hand, when the degree of influence is equal to or smaller than the threshold value, it is determined that "the presence or absence of an arrangement" is not present, i. H. the error detector 120 is not located in the corresponding computing element 110 . In addition, the error detector arrangement information 1021 does not have to include the “degree of influence”.

Ferner kann das „das Vorliegen oder das Fehlen einer Anordnung“ durch Kombinieren von mehreren Anforderungen bestimmt werden. Zum Beispiel kann es auf der Grundlage eines Produkts, einer Summe oder dergleichen des Grads einer Änderung des Erkennungsergebnisses und des Einflussgrads des Erkennungsergebnisses auf das Steuerungsergebnis des Fahrzeugs bestimmt werden. Zusätzlich kann der Einflussgrad unter Verwendung sowohl des Grads der Änderung des Erkennungsergebnisses als auch des Einflussgrads des Erkennungsergebnisses auf das Steuerungsergebnis des Fahrzeugs erneut berechnet werden. Darüber hinaus kann jeder davon verwendet werden, derart, dass bestimmt wird, dass der Fehlerdetektor angeordnet ist, wenn sowohl der Grad der Änderung des Erkennungsergebnisses als auch der Einflussgrad des Erkennungsergebnisses auf das Steuerungsergebnis des Fahrzeugs einen Schwellenwert überschreiten.Furthermore, the “presence or absence of an arrangement” can be determined by combining multiple requirements. For example, it can be determined based on a product, a sum, or the like of the degree of change in the recognition result and the degree of influence of the recognition result on the control result of the vehicle. In addition, the degree of influence may be recalculated using both the degree of change in the recognition result and the degree of influence of the recognition result on the control result of the vehicle. Moreover, each of them can be used such that it is determined that the failure detector is arranged when both the degree of change in the detection result and the degree of influence of the detection result on the control result of the vehicle exceed a threshold.

Es ist festzuhalten, dass die Anordnung des Fehlerdetektors 120 ungeachtet des Fehlerdetektoranordnungs-Elements 101 und der Fehlerdetektoranordnungs-Speichereinheit 102 manuell bestimmt werden kann. Zusätzlich können das Fehlerdetektoranordnungs-Element 101 und die Fehlerdetektoranordnungs-Speichereinheit 102 in einer Vorrichtung vorgesehen sein, die von der Rechenvorrichtung 1 verschieden ist. In diesem Fall ist es wünschenswert, diese in einer Entwurfsvorrichtung oder einer Herstellungsvorrichtung der Rechenvorrichtung 1 bereitzustellen und das Vorliegen oder das Fehlen der Anordnung des Fehlerdetektors 120 während des Entwerfens oder des Herstellens zu bestimmen. Die Verarbeitung in diesem Fall wird unter Bezugnahme auf einen Ablaufplan beschrieben, der in 1F veranschaulicht ist.It is to be noted that the arrangement of the error detector 120 is the same regardless of the error detector arrangement element 101 and the error detectors a Arrangement memory unit 102 can be determined manually. In addition, the error detector array element 101 and the error detector array storage unit 102 may be provided in a device other than the computing device 1 . In this case, it is desirable to provide them in a designing device or a manufacturing device of the computing device 1 and to determine the presence or absence of the arrangement of the error detector 120 during the designing or the manufacturing. The processing in this case will be described with reference to a flow chart shown in 1F is illustrated.

Zunächst liest in Schritt S1 die Entwurfsvorrichtung ein Lernbild ein, das im Voraus gemäß der Operation des Entwerfers gespeichert wurde, und führt ein Lernen, d. h. eine Parameteraktualisierung durch. Als nächstes bewertet in Schritt S2 die Entwurfsvorrichtung die Genauigkeit auf der Grundlage des Ergebnisses des Lernens, d. h. der Genauigkeit einer Bildverarbeitung unter Verwendung des Schlussfolgerungsbilds, das im Voraus gespeichert wurde. Diese Bewertung dient dazu, eine Indexanzeigeleistungsfähigkeit, d. h. eine Genauigkeit der Rechenvorrichtung, die durch einen vorgegebenen Algorithmus festgelegt wird, zu berechnen. Dann werden die Schritte S1 und S2 wiederholt, bis die Genauigkeit eine bestimmte Norm erfüllt oder eine vorgegebene Anzahl erreicht ist.First, in step S1, the design device reads in a learning image stored in advance according to the designer's operation and performs learning, i. H. a parameter update. Next, in step S2, the design device evaluates the accuracy based on the result of the learning, i. H. the accuracy of image processing using the inference image stored in advance. This evaluation serves to determine an index display performance, i. H. calculate an accuracy of the computing device determined by a predetermined algorithm. Then steps S1 and S2 are repeated until the accuracy meets a certain norm or a predetermined number is reached.

Als nächstes führt in Schritt S3 die Entwurfsvorrichtung eine Fehlereinbringung an der Stelle (der Rechenelement), bei der der Einflussgrad untersucht werden soll, auf der Grundlage des Schlussfolgerungsbilds aus. Dann bewertet in Schritt S4 die Entwurfsvorrichtung den Einflussgrad jedes Rechenelements. Das heißt, die Entwurfsvorrichtung berechnet den Einflussgrad, wie in 1E veranschaulicht ist, und bestimmt das Vorliegen oder das Fehlen der Anordnung des Fehlerdetektors im Rechenelement. Unter Verwendung dieses Ergebnisses wird der Fehlerdetektor in der Herstellungsvorrichtung angeordnet. Es ist festzuhalten, dass die Schritte S3 und S4 wiederholt werden, bis ein Fehlerabschnitt (ein Rechenelement), für den eine Untersuchung des Einflussgrads gewünscht ist, endet.Next, in step S3, the design device carries out error injection at the place (the calculation element) at which the degree of influence is to be examined based on the conclusion image. Then, in step S4, the design device evaluates the degree of influence of each calculation element. That is, the design device calculates the degree of influence, as in 1E is illustrated and determines the presence or absence of the placement of the error detector in the computing element. Using this result, the defect detector is placed in the manufacturing device. It is to be noted that steps S3 and S4 are repeated until an error portion (an arithmetic element) for which examination of the degree of influence is desired ends.

Als nächstes wird unten ein Beispiel der Anordnung des Fehlerdetektors 120 beschrieben. Wie oben beschrieben ist, dient eines der Verfahren zum Bestimmen des Einflussgrads eines Fehlers im CNN zur Bildverarbeitung dazu, den Grad der Änderung des Erkennungsergebnisses zu bewerten, wie oben beschrieben ist. Im einfachsten Bewertungsverfahren in diesem Beispiel wird die Erkennungsgenauigkeit aus dem Schlussfolgerungsergebnis berechnet, wenn die Bilddaten zur Schlussfolgerung in das gelernte CNN eingegeben werden. Die Erkennungsgenauigkeit kann z. B. durch die Koordinaten des Begrenzungsrahmens des Fahrzeugs, in dem das Objekt erkannt wird, und dadurch, wie viel Differenz die Größe vom korrekten Wert aufweist, bewertet werden. Ein Schwellenwert ist bezüglich dessen definiert, wie viel der Wert der Erkennungsgenauigkeit sich zum Zeitpunkt eines Fehlers verschlechtert, und das Rechenelement 110, das sich mehr als der Schwellenwert verschlechtert, oder die Vorrichtung der Operationseinheit, die das Rechenelement bildet, wird ein Bezug zum Anordnen des Fehlerdetektors 120. Das heißt, im vorliegenden Beispiel wird der Grad der Verschlechterung, der die Erkennungsgenauigkeit angibt, als der Einflussgrad verwendet.Next, an example of the arrangement of the error detector 120 will be described below. As described above, one of the methods for determining the degree of influence of an error in the CNN for image processing is to evaluate the degree of change in the recognition result as described above. In the simplest evaluation method in this example, the recognition accuracy is calculated from the inference result when the image data is input to the learned CNN for inference. The recognition accuracy can e.g. B. by the coordinates of the bounding box of the vehicle in which the object is detected and by how much difference the size has from the correct value. A threshold is defined in terms of how much the value of the recognition accuracy deteriorates at the time of failure, and the computing element 110 that deteriorates more than the threshold or the device of the operation unit constituting the computing element becomes a reference for arranging the error detector 120. That is, in the present example, the degree of deterioration indicating the detection accuracy is used as the degree of influence.

Es ist festzuhalten, dass in diesem Fall der Grad der Änderung des Ergebnisses der Erkennungsverarbeitung, die auftritt, wenn ein Fehler und/oder eine Bitumkehrung des Rechenelements 110 auftreten, als der Verschlechterungsgrad verwendet werden kann.Note that in this case, the degree of change in the result of the recognition processing that occurs when an error and/or bit inversion of the computing element 110 occurs can be used as the degree of degradation.

Darüber hinaus ist es auch denkbar, als den Einflussgrad ein Bewertungskriterium unter Berücksichtigung nicht nur die Genauigkeit einer Erkennung, sondern auch des Einflusses des Erkennungsergebnisses aufgrund des Fehlers auf den Anmeldungen von ADAS und AD zu verwenden. Speziell ist eine Sichtweise, ob eine Änderung des Begrenzungsrahmens des Erkennungsergebnisses aufgrund eines Fehlers zu einer plötzlichen Steuerung führt. Das heißt, im Bild während des Fahrens wird berücksichtigt, dass kein Einfluss auf die Steuerung aufgrund einer fehlerhaften Detektion weit entfernt vom Trägerfahrzeug (falls erkannt wird, dass eine Detektion vorliegt, obwohl keine Detektion vorliegt) oder einer winzigen Änderung des Begrenzungsrahmens vorliegt. Andererseits besteht, falls eine fehlerhafte Detektion einige Meter vor dem Trägerfahrzeug aufgrund eines Fehlers auftritt, die Möglichkeit des Führens zu einer Notfallsteuerung wie z. B. einem plötzlichen Bremsen oder einem plötzliches Lenken. Man kann sagen, dass es wünschenswert ist, den Fehlerdetektor 120 für den Fehlerabschnitt (das Rechenelement 110) anzuordnen, das einen Einfluss wie den Letztgenannten aufweist. Das heißt, im vorliegenden Beispiel wird auch als der Einflussgrad verwendet, ob die vorgegebene Steuerung ausgeführt wird oder nicht. Als Beispiel kann die Möglichkeit des Ausführens einer vorgegebenen Steuerung als der Einflussgrad in mehreren angenommenen Szenen durch Simulation oder dergleichen verwendet werden. Zusätzlich enthält die vorgegebene Steuerung eine Notfallsteuerung, die ein plötzliches Lenken und ein plötzliches Bremsen enthält, wenn die Rechenvorrichtung 1 ein Steuersignal des Fahrzeugs ausgibt. In diesem Fall ist der Fehlerdetektor 120 in dem Rechenelement 110 angeordnet, das eine Berechnung durchführt, die die Notfallsteuerung verursacht. Als Ergebnis kann eine Ausfallschutzsteuerung in ADAS und AD realisiert werden.In addition, it is also conceivable to use, as the influence degree, an evaluation criterion considering not only the accuracy of a recognition but also the influence of the recognition result due to the error on the ADAS and AD applications. Specifically, a view is whether a change in the bounding box of the recognition result due to an error leads to sudden control. That is, in the image during driving, it is considered that there is no influence on the control due to erroneous detection far from the host vehicle (if it is recognized that there is detection although there is no detection) or a minute change in the bounding box. On the other hand, if erroneous detection occurs a few meters in front of the host vehicle due to an error, there is a possibility of leading to an emergency control such as B. sudden braking or sudden steering. It can be said that it is desirable to dispose the error detector 120 for the error section (the computing element 110) having an influence like the latter. That is, in the present example, whether or not the given control is executed is also used as the degree of influence. As an example, the possibility of executing a predetermined control as the degree of influence in a plurality of assumed scenes through simulation or the like can be used. In addition, the given control includes emergency control including sudden steering and sudden braking when the computing device 1 outputs a control signal of the vehicle. In this case, the error detector 120 is arranged in the arithmetic unit 110 that performs a calculation that causes the emergency control. As a result, a Failure protection control can be implemented in ADAS and AD.

Falls die derartige vorliegende Ausführungsform tatsächlich angewendet wird, wird eine Definition davon, welche Art einer fehlerhaften Detektion/Nichtdetektion einen großen Einfluss auf die Steuerung aufweist, aus einem Fahrort wie z. B. einer Schnellstraße oder einem Stadtgebiet, einer Trägerfahrzeuggeschwindigkeit, einem Grad einer Überlastung der Umgebung von Fahrzeugen und dergleichen umfassend bestimmt und wird ein Bezug erstellt.If such the present embodiment is actually applied, a definition of what kind of erroneous detection/non-detection has a large influence on the control is obtained from a driving locus such as a road. an expressway or an urban area, a host vehicle speed, a degree of congestion around vehicles, and the like, and a reference is made.

<Wirkungen der ersten Ausführungsform><Effects of the first embodiment>

Als eine Konfiguration im Falle des Durchführens einer Fehlerdetektion der Rechenvorrichtung ist der Fehlerdetektor bevorzugt in einem Abschnitt angeordnet, der einen hohen Einflussgrad auf das Erkennungsergebnis aufweist, und dadurch kann die Anzahl von Fehlerdetektoren verringert werden, kann eine hohe Sicherheit sichergestellt werden und können Vorrichtungskosten niedergehalten werden.As a configuration in the case of performing error detection of the computing device, the error detector is preferably arranged in a portion that has a high degree of influence on the detection result, and thereby the number of error detectors can be reduced, high security can be ensured, and device costs can be suppressed .

<Zweite Ausführungsform><Second embodiment>

Im Hinblick auf den Einfluss auf das Erkennungsergebnis kann, wenn der Fehler des Rechenelements 110 fest auftritt, eine Gegenmaßnahme wie in der ersten Ausführungsform vorgenommen werden. Hier nimmt selbst in den Rechenelementen 110, in denen der Fehlerdetektor 120 nicht angeordnet ist, dann, wenn einige davon fehlerhaft sind, der Einfluss auf das Berechnungsergebnis zu und ist somit eine Gegenmaßnahme erforderlich. Deshalb ist es in einer zweiten Ausführungsform möglich, einen Fehler auch für ein Rechenelement 110 zu detektieren, wofür bestimmt wird, dass ein kleiner Einfluss des Fehlers vorliegt, und in dem der Fehlerdetektor 120 nicht angeordnet ist. Deshalb wird in der zweiten Ausführungsform das Rechenelement, in dem der Fehlerdetektor 120 angeordnet ist, dynamisch geändert. Mit anderen Worten wird der Fehlerdetektor 120 in Bezug auf das Rechenelement 110 dynamisch neuangeordnet. Wie oben beschrieben ist, wird in der zweiten Ausführungsform die Anordnungsbeziehung zwischen dem Fehlerdetektor 120 und dem Rechenelement 110 dynamisch geändert. Die Details werden unten beschrieben.In view of the influence on the recognition result, when the failure of the computing element 110 occurs fixedly, a countermeasure can be taken as in the first embodiment. Here, even in the computing elements 110 in which the error detector 120 is not arranged, if some of them are defective, the influence on the calculation result increases and thus a countermeasure is required. Therefore, in a second embodiment, it is possible to detect an error also for a computing element 110 which is determined to have a small influence of the error and in which the error detector 120 is not arranged. Therefore, in the second embodiment, the computing element in which the error detector 120 is arranged is dynamically changed. In other words, error detector 120 is dynamically relocated with respect to compute element 110 . As described above, in the second embodiment, the arrangement relationship between the error detector 120 and the computing element 110 is dynamically changed. The details are described below.

Zunächst veranschaulicht 2A eine Konfiguration der Rechenvorrichtung 1 der vorliegenden Ausführungsform. Wie in 2A veranschaulicht ist, enthält die Rechenvorrichtung 1 der vorliegenden Ausführungsform eine Recheneinheit 11, ein Fehlerdetektorneukonfigurationselement 12, eineFirst illustrated 2A a configuration of the computing device 1 of the present embodiment. As in 2A As illustrated, the computing device 1 of the present embodiment includes a computing unit 11, an error detector reconfiguration element 12, a

Fehlerdetektoranordnungsplanungsvorrichtung 13 und eine Fehlerdetektoranordnungsplanungseinheit 14. Die Recheneinheit 11 enthält mehrere Rechenelemente 110. Hier werden die Funktionen des Fehlerdetektorneukonfigurationselements 12 und der Fehlerdetektoranordnungsplanungsvorrichtung 13 gemäß einem Programm verarbeitet, jedoch können die Funktionen als Hardware implementiert sein.error detector arrangement planning device 13 and an error detector arrangement planning unit 14. The arithmetic unit 11 includes a plurality of arithmetic elements 110. Here, the functions of the error detector reconfiguration element 12 and the error detector arrangement planning device 13 are processed according to a program, but the functions may be implemented as hardware.

Hier gibt dann, wenn ein Anordnungsaustauschauslöser 6 empfangen wird, die Fehlerdetektoranbrdnungsplanungsvorrichtung 13 einen Befehl zum Fehlerdetektorneukonfiguratidnselement 12 aus, eine Neuanordnung (eine Konfiguration) gemäß Fehlerdetektoranordnungsplaninformationen, die in der Fehlerdetektoranordnungsplanungseinheit 14 gespeichert sind, auszuführen. Deshalb ordnet das Fehlerdetektorneukonfigurationselement 12 den Fehlerdetektor 120 gemäß den Fehlerdetektoranordnungsplaninformationen neu an. Es ist festzuhalten, dass, obwohl es in 2A nicht veranschaulicht ist, die vorliegende Ausführungsform ähnlich zur ersten Ausführungsform auch ein Fehlerdetektoranordnungs-Element 101 und eine Fehlerdetektoranordnungs-Speichereinheit 102 enthalten kann. in diesem Fall können das Fehlerdetektorneukonfigurationselement 12 und die Fehlerdetektoranordnungsplanungseinheit 14 die Funktionen des Fehlerdetektoranordnungs-Elements 101 bzw. der Fehlerdetektoranordnungs-Speichereinheit 102 aufweisen. Im Folgenden wird die vorliegende Ausführungsform unter der Annahme beschrieben, dass die Fehlerdetektoranordnungsplanungseinheit 14 die Funktion der Fehlerdetektoranordnungs-Speichereinheit 102 besitzt.Here, when a placement replacement trigger 6 is received, the failure detector placement planning device 13 issues an instruction to the failure detector reconfiguration item 12 to perform rearrangement (configuration) according to failure detector placement plan information stored in the failure detector placement planning unit 14 . Therefore, the error detector reconfiguration element 12 rearranges the error detector 120 according to the error detector arrangement plan information. It is noted that although it is in 2A is not illustrated, the present embodiment may also include an error detector array element 101 and an error detector array storage unit 102 similarly to the first embodiment. in this case, the error detector reconfiguration element 12 and the error detector arrangement planning unit 14 may have the functions of the error detector arrangement element 101 and the error detector arrangement storage unit 102, respectively. In the following, the present embodiment will be described on the assumption that the error detector arrangement planning unit 14 has the function of the error detector arrangement storage unit 102 .

Im Folgenden werden Details der vorliegenden Ausführungsform beschrieben. Zunächst speichert die Fehlerdetektoranordnungsplanungseinheit 14 Fehlerdetektoranordnungsplaninformationen 141, die in 2B veranschaulicht sind. In Übereinstimmung mit diesem Inhalt ordnet das Fehlerdetektorneukonfigurationselement 12 den Fehlerdetektor 120 neu an. Es ist festzuhalten, dass zu diesem Zweck die Rechenvorrichtung 1 wünschenswerterweise eine neukonfigurierbare Vorrichtung wie z. B. ein FPGA ist.Details of the present embodiment are described below. First, the error detector arrangement planning unit 14 stores error detector arrangement plan information 141 contained in 2 B are illustrated. In accordance with this content, the error detector reconfiguration element 12 rearranges the error detector 120 . It should be noted that for this purpose the computing device 1 is desirably a reconfigurable device such as e.g. B. is an FPGA.

Hier wird die Fehlerdetektoranordnungsplaninformationen 141 durch die Fehlerdetektoranordnungsplanungsvorrichtung 13 unter Verwendung der Fehlerdetektoranordnungs-Informationen 1021 von 2C (gleich wie 1E) erstellt. Zu diesem Zweck legt die Fehlerdetektoranordnungsplanungsvorrichtung 13 zuerst Vergleichsniveaurechenelemente des Einflussgrads, d. h. Nr. 3 bis 5, 7, 10 und M, die Rechenelemente des Schwellenwerts oder weniger sind, in den Fehlerdetektoranordnungs-Informationen 1021 fest. Dann speichert die Fehlerdetektoranordnungsplanungsvorrichtung 13 die Kennungsinformationen dieser Rechenelemente in den Rechenelementen (Schwellenwert oder weniger), die einen niedrigen Einflussgrad der Fehlerdetektoranordnungsplaninformationen 141 aufweisen. Hier werden in der vorliegenden Ausführungsform die Kennungsinformationen der Fehlerdetektoranordnungs-Informationen 1021 verwendet, jedoch können sie wieder zugewiesen werden. Dann ersetzt die Fehlerdetektoranordnungsplanungsvorrichtung 13 das Rechenelement, in dem der Fehlerdetektor 120 für jedes Mal angeordnet ist, und den Austausch in den Fehlerdetektoranordnungs-Informationen 1021 aufzeichnet. Es ist festzuhalten, dass in 2B, das Vorliegen oder das Fehlen der Anordnung für jedes Mal bestimmt wird, jedoch ein Auslöser außer der Zeit verwendet werden kann. Wie oben beschrieben ist, ändert sich in der vorliegenden Ausführungsform das Rechenelement 110, in dem der Fehlerdetektor 120 angeordnet ist, periodisch.Here, the error detector arrangement plan information 141 is planned by the error detector arrangement planning device 13 using the error detector arrangement information 1021 of FIG 2C (same as 1E) created. For this purpose, the error detector arrangement planner 13 first sets comparison level calculus of influence degree, ie, Nos. 3 to 5, 7, 10 and M, which are calculus of the threshold value or less, in the error detector arrangement information 1021 . Then, the error detector arrangement planner 13 stores the identification information of these calculation elements in the Calculation elements (threshold value or less) that have a low degree of influence of the error detector arrangement plan information 141 . Here, in the present embodiment, the identification information of the error detector arrangement information 1021 is used, but it can be assigned again. Then, the error detector arrangement planner 13 replaces the computing element in which the error detector 120 is arranged for each time, and records the replacement in the error detector arrangement information 1021 . It is to be noted that in 2 B The presence or absence of the arrangement is determined for each time, however, a trigger other than time can be used. As described above, in the present embodiment, the computing element 110 in which the error detector 120 is arranged changes periodically.

Im Folgenden werden Details des Austauschens, d. h. die Anordnungsumsetzung, die die Neukonfiguration des Fehlerdetektors 120 ist, beschrieben. Zunächst wird angenommen, dass die Anzahl von Rechenelementen, in denen kein Fehlerdetektor angeordnet ist, N ist (wobei N eine natürliche Zahl ist). Hier wird, wenn n als eine Austauschdetektionszahl definiert ist, angenommen, dass der Fehlerdetektor 120 für n Rechenelemente (z. B. die oberen n der Fehlerdetektoranordnungsplaninformationen 141) angeordnet ist. Zum Beispiel zeichnet dann, wenn n = 2, die Fehlerdetektoranordnungsplanungsvorrichtung 13 „Anordnung“ in den Nr. 3 und Nr. 4 zur Zeit = t auf.In the following, details of the exchange, i. H. the arrangement conversion, which is the reconfiguration of the error detector 120, will be described. First, it is assumed that the number of calculation elements in which no error detector is arranged is N (where N is a natural number). Here, when n is defined as a replacement detection number, it is assumed that the error detector 120 is arranged for n calculation elements (e.g., the upper n of the error detector arrangement plan information 141). For example, when n=2, the failure detector arrangement planner 13 records “arrangement” in Nos. 3 and 4 at time = t.

Hier gilt n < N und n ist auch eine natürliche Zahl. Zum jetzigen Zeitpunkt ist kein Fehlerdetektor in den Rechenelementen außer den oben beschriebenen (Nr. 5 und nachfolgende Zahlen in 2B) angeordnet.Here n<N and n is also a natural number. At this time there is no error detector in the computing elements other than those described above (#5 and subsequent numbers in 2 B) arranged.

Als nächstes weist die Fehlerdetektoranordnungsplanungsvorrichtung 13 das Fehlerdetektorneukonfigurationselement 12 an, den Fehlerdetektor 120 in den Rechenelementen Nr. 5 und Nr. 7 zu einem vom Anordnungsaustauschauslöser 6 festgelegten Zeitpunkt anzuordnen, wie z. B. Warten auf ein Signal oder eine Initialisierung, wenn die Kraftmaschine eingeschaltet wird. Zum jetzigen Zeitpunkt ordnet die Fehlerdetektoranordnungsplanungsvorrichtung 13 den Fehlerdetektor 120 in den Rechenelementen Nr. 3, Nr. 4 und Nr. 10 außer Nr. 5 und Nr. 7 nicht an. Gemäß diesem Befehl ersetzt das Fehlerdetektorneukonfigurationselement 12 die Anordnung der Fehlerdetektoren in der Recheneinheit und konfiguriert sie neu.Next, the error detector placement scheduler 13 instructs the error detector reconfiguration element 12 to place the error detector 120 in the compute elements #5 and #7 at a timing specified by the placement exchange trigger 6, such as: B. Waiting for a signal or initialization when the engine is turned on. At this time, the error detector arrangement planner 13 does not arrange the error detector 120 in the calculation elements #3, #4 and #10 except for #5 and #7. According to this command, the error detector reconfiguration element 12 replaces and reconfigures the arrangement of the error detectors in the arithmetic unit.

Die Fehlerdetektoranordnungsplanungsvorrichtung 13 wiederholt einen derartigen Austausch der Anordnung der Fehlerdetektoren, d. h. eine Anordnungsumsetzung, zu jedem Zeitpunkt, zu dem der Anordnungsaustauschauslöser 6 empfangen wird. Wenn dies x-Mal wiederholt worden ist, sind die Rechenelemente bis zu Nr. M abgedeckt. Hier gilt eine Beziehung von n * x > N (x ist auch eine natürliche Zahl). Es ist festzuhalten, dass der Prozess in der (x + 1)-ten Anordnungsumsetzung (eine Runde) zur ersten Anordnung zurückkehrt. Als Ergebnis bestehen, wie in 2A veranschaulicht ist, „Rechenelement weist einen geringen Einfluss auf das Erkennungsergebnis auf. Fehlerdetektor ist zur Zeit des Diagramms nicht angeordnet“, „Rechenelement weist einen geringen Einfluss auf das Erkennungsergebnis auf. Fehlerdetektor ist zur Zeit des Diagramms angeordnet“ und „Rechenelement weist einen großen Einfluss auf das Erkennungsergebnis auf. Fehlerdetektoranordnungsziel“ nebeneinander. Das heißt, der Fehlerdetektor 120 ist für mindestens ein Rechenelement angeordnet und der Fehlerdetektor 120 ist für mindestens eines der weiteren Rechenelemente nicht angeordnet.The error detector arrangement scheduler 13 repeats such replacement of the arrangement of the error detectors, that is, arrangement conversion, every time the arrangement exchange trigger 6 is received. When this has been repeated x times, the computational elements up to #M are covered. Here, a relationship of n * x > N (x is also a natural number) holds. Note that in the (x+1)-th arrangement conversion (one round), the process returns to the first arrangement. As a result, as in 2A is illustrated, “Computing element has a small influence on the recognition result. Error detector is not arranged at the time of the diagram", "Calculation element has a small influence on the detection result. Error detector is placed at the time of the diagram" and "Calculation element has a large influence on the detection result. Error Detector Array Target” side by side. That is, the error detector 120 is arranged for at least one computing element and the error detector 120 is not arranged for at least one of the other computing elements.

Ferner werden im oben beschriebenen Beispiel die Fehlerdetektoren durch die konstante Anzahl (n = 2) ersetzt, jedoch kann diese Anzahl veränderlich sein. Allerdings setzt die Fehlerdetektoranordnungsplanungsvorrichtung 13 eine Obergrenze, um die Gesamtanzahl von Fehlerdetektoren 120 nicht zu überschreiten. Zusätzlich ist die Anzahl der Anordnungen des Fehlerdetektors 120 von „Rechenelement, das einen geringen Einfluss auf das Erkennungsergebnis aufweist“ in jeder Runde der Anordnungsumsetzung gleich, kann jedoch veränderlich sein. Zum Beispiel kann die Fehlerdetektoranordnungsplanungsvorrichtung 13 die Anzahl von Anordnungen eines Rechenelements, das einen größeren Einflussgrad der Fehlerdetektoranordnungs-Informationen 1021 aufweist, erhöhen. In diesem Fall bestimmt die Fehlerdetektoranordnungsplanungsvorrichtung 13 wünschenswerterweise die Anzahl von Anordnungen im Verhältnis zum Einflussgrad.Furthermore, in the example described above, the error detectors are replaced by the constant number (n=2), but this number can be variable. However, the error detector arrangement planner 13 sets an upper limit not to exceed the total number of error detectors 120 . In addition, the number of placements of the error detector 120 of “computational element having a small influence on the detection result” is the same in each round of placement conversion, but may be variable. For example, the error detector arrangement planning device 13 can increase the number of arrangements of a computing element that has a greater degree of influence of the error detector arrangement information 1021 . In this case, the failure detector placement planner 13 desirably determines the number of placements in relation to the degree of influence.

Zusätzlich können die Fehlerdetektoranordnungsplaninformationen 141, die diese Anordnung angeben, auf der Grundlage eines Zählers oder eines mathematischen Ausdrucks programmiert werden oder können in der Fehlerdetektoranordnungsplanungseinheit 14 in Form einer Tabelle oder dergleichen gespeichert werden, wie in 2B veranschaulicht ist. Darüber hinaus kann, wie oben beschrieben ist, der Auslöser der Anordnungsumsetzung auf ein Signal, das die Kraftmaschine einschaltet, warten oder einen beliebigen Zyklus verwenden.In addition, the defect detector arrangement plan information 141 indicating this arrangement may be programmed based on a counter or a mathematical expression, or may be stored in the defect detector arrangement plan unit 14 in the form of a table or the like, as shown in FIG 2 B is illustrated. Additionally, as described above, the arrangement translation trigger may wait for a signal turning on the engine or use any cycle.

<Wirkungen der zweiten Ausführungsform><Effects of the second embodiment>

Gemäß der vorliegenden Ausführungsform kann eine Zuverlässigkeit selbst für ein Rechenelement, das einen niedrigen Einflussgrad wie z. B. eine Empfindlichkeit eines 1 Bit-Fehlers aufweist, d. h. ein Rechenelement, in dem der Fehlerdetektor 120 nicht angeordnet ist, sichergestellt werden.According to the present embodiment, reliability can be achieved even for a computing element having a low degree of influence such as e.g. B. has a sensitivity of a 1 bit error, ie a Computing element in which the error detector 120 is not arranged can be ensured.

<Dritte Ausführungsform><Third embodiment>

Als nächstes wird eine dritte Ausführungsform beschrieben, in der der Fehlerdetektor 120 gemäß verschiedenen Situationen und Umgebungen angeordnet ist. Fahrzeuge fahren häufig unter verschiedenen Fahrumgebungen wie z. B. Zeitzonen und Orten (Fahrbahnen usw.). Deshalb ist es nötig, eine Steuerung durchzuführen, die für die Umgebung auch in ADAS und AD für das Fahrzeug geeignet ist. Zum jetzigen Zeitpunkt kann der Einflussgrad eines sehr empfindlichen Neurons, d. h. des Rechenelements 110, verschieden für jede Umgebung sein. Hier ist, wenn der Fehlerdetektor 120 entsprechend jeder angenommenen Umgebung angeordnet ist, der Zahlenwert des Einflussgrads hoch und ist die Empfindlichkeit für jedes Rechenelement insgesamt hoch und wird die Differenz kaum erzeugt. Deshalb besteht ein Problem, dass die Anzahl von Rechenelementen, die angeordnet werden müssen, zunimmt. Das heißt, es tritt ein Mehraufwand in Bezug auf die Anordnung des Fehlerdetektors 120 auf.Next, a third embodiment will be described in which the error detector 120 is arranged according to various situations and environments. Vehicles often drive under various driving environments such as B. Time zones and locations (roadways, etc.). Therefore, it is necessary to perform control suitable for the environment also in ADAS and AD for the vehicle. At this point in time, the degree of influence of a very sensitive neuron, i. H. of the computing element 110, may be different for each environment. Here, when the error detector 120 is arranged corresponding to each assumed environment, the numerical value of the degree of influence is high and the sensitivity for each computing element is high as a whole, and the difference is hardly generated. Therefore, there is a problem that the number of calculation elements to be arranged increases. That is, there is an overhead in arranging the error detector 120 .

Deshalb wird in der vorliegenden Ausführungsform der Einflussgrad des Rechenelements für jede Umgebung berechnet und in der Fehlerdetektoranordnungs-Speichereinheit 102 von 3A gespeichert und wird die Anordnung des Fehlerdetektors 120 unter Verwendung des berechneten Einflussgrads bestimmt. Im Folgenden wird dies genau beschrieben, jedoch enthält die Umgebung auch eine Szene, eine Situation, einen Zustand, eine Zeitzone, das Wetter, eine Position und dergleichen.Therefore, in the present embodiment, the degree of influence of the computing element is calculated for each environment and stored in the error detector array storage unit 102 of FIG 3A is stored and the arrangement of the error detector 120 is determined using the calculated degree of influence. This is detailed below, but the environment also includes a scene, situation, condition, time zone, weather, position, and the like.

Zunächst veranschaulicht 3A eine Konfiguration einer Rechenvorrichtung 1 der vorliegenden Ausführungsform. Wie in 3A veranschaulicht ist, enthält die Rechenvorrichtung 1 der vorliegenden Ausführungsform ein Fehlerdetektorneukonfigurationselement 12, eine Umgebungsbestimmungsvorrichtung 15 und eine Fehlerdetektoranordnungs-Speichereinheit 102 zusätzlich zur Recheneinheit 11. Die Funktionen des Fehlerdetektorneukonfigurationselements 12 und der Umgebungsbestimmungsvorrichtung 15 sind eine Verarbeitung gemäß einem Programm, jedoch können die Funktionen als Hardware implementiert sein.First illustrated 3A A configuration of a computing device 1 of the present embodiment. As in 3A As illustrated, the computing device 1 of the present embodiment includes an error detector reconfiguration element 12, an environment determination device 15 and an error detector arrangement storage unit 102 in addition to the computation unit 11. The functions of the error detector reconfiguration element 12 and the environment determination device 15 are processing according to a program, but the functions can be hardware be implemented.

Es ist festzuhalten, dass, obwohl es in 3A nicht veranschaulicht ist, die vorliegende Ausführungsform ähnlich zur ersten und die zweiten Ausführungsform auch ein Fehlerdetektoranordnungs-Element 101 und eine Fehlerdetektoranordnungsplanungseinheit 14 enthalten kann. In diesem Fall können das Fehlerdetektorneukonfigurationselement 12 und die Fehlerdetektoranordnungs-Speichereinheit 102 die Funktionen des Fehlerdetektoranordnungs-Elements 101 bzw. der Fehlerdetektoranordnungsplanungseinheit 14 aufweisen. Das heißt, für die erste bis dritte Ausführungsform können die Funktionen in Kombination implementiert sein. Darüber hinaus kann jeder dieser Teile wie in der ersten und der zweiten Ausführungsform in einer externen Vorrichtung der Rechenvorrichtung 1 vorgesehen sein.It is noted that although it is in 3A is not illustrated, the present embodiment may also include a failure detector array element 101 and a failure detector array planning unit 14 similarly to the first and second embodiments. In this case, the error detector reconfiguration element 12 and the error detector arrangement storage unit 102 may have the functions of the error detector arrangement element 101 and the error detector arrangement planning unit 14, respectively. That is, for the first to third embodiments, the functions can be implemented in combination. Moreover, each of these parts may be provided in an external device of the computing device 1 as in the first and second embodiments.

Hier besitzt die Fehlerdetektoranordnungs-Speichereinheit 102 eine Speicherfunktion ähnlich der der ersten Ausführungsform, jedoch ist sie von der ersten Ausführungsform dahingehend verschieden, dass die Fehlerdetektoranordnungs-Ihformationen 1021 für jede Umgebung gespeichert werden. Das heißt, die Fehlerdetektoranordnungs-Speichereinheit 102 der vorliegenden Ausführungsform speichert sämtliche Fehlerdetektoranordnungs-Informationen wie z. B. die Fehlerdetektoranordnungs-Informationen 1021-1 der Umgebung 1 (Schnellstraße) und die Fehlerdetektoranordnungs-Informationen 1021-2 der Umgebung 2 (städtische Fläche) ..., die in 3B veranschaulicht sind. Zusätzlich kann, obwohl es nicht veranschaulicht ist, die Umgebung der Fehlerdetektoranordnungs-Informationen 1021 Zeitzonen wie z. B. Nacht und Tag, Wetter wie z. B. gutes Wetter und regnerisches Wetter und eine Position/einen Bereich wie z. B. einen Stadtbereich und einen Vorort enthalten.Here, the error detector arrangement storage unit 102 has a storage function similar to that of the first embodiment, but it is different from the first embodiment in that the error detector arrangement information 1021 is stored for each environment. That is, the error detector arrangement storage unit 102 of the present embodiment stores all error detector arrangement information such as e.g. B. the error detector arrangement information 1021-1 of the environment 1 (expressway) and the error detector arrangement information 1021-2 of the environment 2 (urban area) ... which are in 3B are illustrated. In addition, although not illustrated, the environment of the error detector arrangement information 1021 may include time zones such as e.g. B. night and day, weather such. e.g. good weather and rainy weather and a position/area such as e.g. B. contain a city area and a suburb.

Im Folgenden wird die Verarbeitung der vorliegenden Ausführungsform beschrieben. Zunächst liest die Umgebungsbestimmungsvorrichtung 15 eine Bedingung 5 in Bezug auf die Bildaufnahme und das Fahren ein. Hier kann die Umgebungsbestimmungsvorrichtung 15 die Umgebung auf der Grundlage der eingegebenen Bedingung 5 bestimmen oder kann ein Ergebnis, das durch eine externe Rechenvorrichtung als die Bedingung 5 bestimmt wurde, als die Umgebung verwenden.The processing of the present embodiment will be described below. First, the environment determination device 15 reads in a condition 5 related to imaging and driving. Here, the environment determination device 15 may determine the environment based on the inputted condition 5, or may use a result determined as the condition 5 by an external computing device as the environment.

Als nächstes gibt die Umgebungsbestimmungsvorrichtung 15 die Umgebung als das Bestimmungsergebnis zum Fehlerdetektorneukonfigurationselement 12 aus. Dann legt das Fehlerdetektorneukonfigurationselement 12 die Fehlerdetektoranordnungs-Informationen 1021, die der empfangenen Umgebung entsprechen, fest. Zum Beispiel legt dann, wenn die Umgebung eine „Schnellstraße“ ist, das Fehlerdetektorneukonfigurationselement 12 die Fehlerdetektoranordnungs-Informationen 1021-1 für den Fehlerdetektor in der Umgebung 1 fest. Dann ordnet das Fehlerdetektorneukonfigurationselement 12 den Fehlerdetektor 120 unter Verwendung der Fehlerdetektoranordnungs-Informationen 1021-1 an.Next, the environment determination device 15 outputs the environment as the determination result to the error detector reconfiguration element 12 . Then, the error detector reconfiguration element 12 sets the error detector arrangement information 1021 corresponding to the received environment. For example, when the environment is an “expressway”, the error detector reconfiguration element 12 sets the error detector arrangement information 1021 - 1 for the error detector in the environment 1 . Then, the error detector reconfiguration element 12 arranges the error detector 120 using the error detector arrangement information 1021-1.

Zusätzlich gibt dann, wenn detektiert wird, dass die Umgebung sich gemäß der eingegebenen Bedingung 5 geändert hat, die Umgebungsbestimmungsvorrichtung 15 die Tatsache zum Fehlerdetektorneukonfigurationselement 12 aus. Dann ordnet das Fehlerdetektorneukonfigurationselement 12 den Fehlerdetektor 120 in der Recheneinheit 11 unter Bezugnahme auf die Fehlerdetektoranordnungs-Informationen 1021 in der Fehlerdetektoranordnungs-Speichereinheit 102 neu an. Deshalb ist die Rechenvorrichtung 1 wünschenswerterweise eine neukonfigurierbare Vorrichtung wie z. B. ein FPGA. Es ist festzuhalten, dass die Umgebungsbestimmungsvorrichtung 15 die Änderung der Umgebung ausgeben kann, wenn das Fahrzeug in einem gestoppten Zustand ist, z. B. auf eine Ampel wartet, oder wenn das Fahrzeug in einem Fahrzustand mit einer niedrigen Geschwindigkeit ist (eine Situation, in der die Sicherheit sichergestellt ist). Zusätzlich kann das Fehlerdetektorneukonfigurationselement 12 eine Neuanordnung im oben beschriebenen Zustand durchführen.In addition, when it is detected that the environment changes according to the entered Condition 5 has changed, the environment determination device 15 outputs the fact to the error detector reconfiguration element 12 . Then, the error detector reconfiguration element 12 rearranges the error detector 120 in the arithmetic unit 11 with reference to the error detector arrangement information 1021 in the error detector arrangement storage unit 102 . Therefore, the computing device 1 is desirably a reconfigurable device such as e.g. an FPGA. Note that the environment determination device 15 may output the change in environment when the vehicle is in a stopped state, e.g. B. waiting for a traffic light, or when the vehicle is in a running state at a low speed (a situation where safety is assured). In addition, the error detector reconfiguration element 12 can perform reconfiguration in the state described above.

<Wirkungen der dritten Ausführungsform><Effects of the third embodiment>

Da der Fehlerdetektor 120 gemäß verschiedenen Fahrumgebungen angeordnet sein kann, kann eine Fahrzeugsteuerung gemäß der Fahrumgebung durchgeführt werden.Since the failure detector 120 can be arranged according to various driving environments, vehicle control can be performed according to the driving environment.

< Vierte Ausführungsform><Fourth embodiment>

In der ersten bis dritten Ausführungsform ist der Fehlerdetektor 120 in Einheiten von Neuronen, d. h. Rechenelementen 110, angeordnet, jedoch wird in einer vierten Ausführungsform ferner bestimmt, ob der Fehlerdetektor 120 für die Vorrichtung der Operationseinheit darin angeordnet werden soll. Die Vorrichtung der Operationseinheit enthält einen Integrator 111 und dergleichen, wie später beschrieben wird. Es ist bekannt, dass das CNN eine Konfiguration, die in 4A veranschaulicht ist, als Beispiel einer Arithmetikkonfiguration eines Neurons (eines Rechenelements 110) besitzt. Das heißt, jedes der Rechenelemente 110, die die Recheneinheit 11 bilden, enthält Vorrichtungen der Operationseinheit wie z. B. einen Integrator 111, einen kumulativen Addierer 112, eine Bitverschiebung (ein Runden) 113, einen Vorbelastungskoeffizientenaddierer 114 und ein Aktivierungsfunktionsrechenelement (ReLU-Rechenelement) 115. Hier sind in einer derartigen Konfiguration die Werte des Gewichts und des Vorbelastungskoeffizienten im Allgemeinen für jedes Neuron verschieden. Deshalb ist es auch möglich, den Einflussgrad für jede Vorrichtung der Operationseinheit im Neuron zusätzlich zum Berechnen des Einflussgrads für jedes Neuron (jedes Rechenelement 110) auf der Grundlage der Werte des Gewichts und des Vorbelastungskoeffizienten zu berechnen. in der vorliegenden Ausführungsform wird der Einflussgrad für jede Vorrichtung der Operationseinheit berechnet und ist der Fehlerdetektor 120 in dem Rechenelement 110 angeordnet, das einen hohen Einflussgrad aufweist, wie z. B. in 4B veranschaulicht ist, wodurch der Schaltungsmehraufwand weiter niedergehalten werden kann. Eine Verarbeitung zu diesem Zweck wird unten beschrieben.In the first to third embodiments, the error detector 120 is arranged in units of neurons, ie, arithmetic elements 110, but in a fourth embodiment, it is further determined whether to arrange the error detector 120 for the operation unit device therein. The operation unit apparatus includes an integrator 111 and the like as will be described later. It is known that the CNN has a configuration that in 4A illustrated has an example of an arithmetic configuration of a neuron (a calculation element 110). That is, each of the arithmetic elements 110 constituting the arithmetic unit 11 includes operation unit devices such as B. an integrator 111, a cumulative adder 112, a bit shift (rounding) 113, a bias coefficient adder 114 and an activation function arithmetic element (ReLU arithmetic element) 115. Here, in such a configuration, the values of the weight and the bias coefficient are in general for each neuron different. Therefore, it is also possible to calculate the degree of influence for each device of the operation unit in the neuron in addition to calculating the degree of influence for each neuron (each computing element 110) based on the values of the weight and the bias coefficient. In the present embodiment, the degree of influence is calculated for each device of the operation unit, and the error detector 120 is arranged in the computing element 110 having a high degree of influence, such as e.g. Am 4B is illustrated, whereby circuit overhead can be further held down. Processing for this purpose is described below.

Die Konfiguration der vorliegenden Ausführungsform kann durch eine der ersten bis dritten Ausführungsformen oder eine Kombination davon realisiert werden. Hier wird die Konfiguration der ersten Ausführungsform, d. h. die Konfiguration von 1D, als Beispiel beschrieben. Allerdings werden als die Fehlerdetektoranordnungs-Informationen 1021 die Fehlerdetektoranordnungs-Informationen 1021-3, die in 4E veranschaulicht sind, verwendet. Hier speichern die Fehlerdetektoranordnungs-Informationen 1021-3, die in 4E veranschaulicht sind, den Einflussgrad für jede Operationseinheit jedes Rechenelements, die die Rechenvorrichtung 1 bilden. Dann bestimmt das Fehlerdetektoranordnungs-Element 101 durch die oben beschriebene Verarbeitung die Anordnung des Fehlerdetektors 120 auf der Grundlage der Fehlerdetektoranordnungs-Informationen 1021-3, die in der Fehlerdetektoranordnungs-Speichereinheit 102 gespeichert sind.The configuration of the present embodiment can be realized by any one of the first to third embodiments or a combination thereof. Here, the configuration of the first embodiment, ie, the configuration of 1D , described as an example. However, as the error detector arrangement information 1021, the error detector arrangement information 1021-3 shown in 4E are illustrated, used. Here, the error detector arrangement information 1021-3 stored in 4E 1, the degree of influence for each operation unit of each computing element constituting the computing device 1 is illustrated. Then, the error detector arrangement element 101 determines the arrangement of the error detector 120 based on the error detector arrangement information 1021-3 stored in the error detector arrangement storage unit 102 through the processing described above.

Die Beschreibung der Verarbeitung des Bestimmens der Anordnung des Fehlerdetektors 120 gemäß der vorliegenden Ausführungsform endet. Als nächstes wird eine Antwort beschrieben, falls ein Fehler in der Vorrichtung der Operationseinheit detektiert wird.The description of the processing of determining the arrangement of the error detector 120 according to the present embodiment ends. Next, a response if an error is detected in the device of the operation unit will be described.

Zunächst wird, wie in 4B veranschaulicht ist, angenommen, dass die Fehlerdetektoren 120 für die Vorrichtung der Operationseinheit auf der Grundlage der Fehlerdetektoranordnungs-Informationen 1021-3 angeordnet sind. Unter diesen sind, da die Einflussgrade eines Integrators 1 und eines Integrators F größer als der Schwellenwert im oberen linken Rechenelement 110-1 (Nr. 1) sind, wie in 4E veranschaulicht ist, die Fehlerdetektoren 120 in diesen angeordnet. Eine vergrößerte Ansicht des Rechenelements 110-1 ist in 4C veranschaulicht.First, as in 4B 1, assume that the error detectors 120 for the operation unit device are arranged based on the error detector arrangement information 1021-3. Among them, since the degrees of influence of an integrator 1 and an integrator F are larger than the threshold in the upper left calculation element 110-1 (No. 1), as in FIG 4E 1, the error detectors 120 are located therein. An enlarged view of computing element 110-1 is shown in FIG 4C illustrated.

Hier wird dem Fehlerdetektoranordnungs-Element 101 durch den Fehlerdetektor 120 des Integrators Nr. 1 mitgeteilt, dass der Integrator 1 fehlerhaft ist. Als nächstes legt das Fehlerdetektoranordnungs-Element 101 einen Integrator, in dem der Fehlerdetektor 120 nicht angeordnet ist, unter Verwendung der Fehlerdetektoranordnungs-Informationen 1021-3 fest. Dann legt das Fehlerdetektoranordnungs-Element 101 einen Integrator unter einer vorgegebenen Bedingung, wie z. B. einen, der den kleinsten Einflussgrad unter den Integratoren aufweist, fest. Dies ist darauf zurückzuführen, dass bestimmt werden kann, dass der Einfluss umso kleiner ist, je kleiner der Einflussgrad ist, selbst wenn der Integrator 1 durch den Integrator 1, der eine fehlerhafte Vorrichtung der Operationseinheit ist, ersetzt wird.Here, the error detector array element 101 is informed by the error detector 120 of the integrator #1 that the integrator 1 is in error. Next, the error detector array element 101 sets an integrator in which the error detector 120 is not arranged using the error detector array information 1021-3. Then the error detector array element 101 sets an integrator under a predetermined condition such as e.g. B. one that has the smallest degree of influence among the integrators. This is because it can be determined that the smaller the degree of influence, the smaller the influence is even if the integrator 1 is replaced with the integrator 1 which is a defective device of the operation unit.

Als Ergebnis wird im vorliegenden Beispiel angenommen, dass das Fehlerdetektoranordnungs-Element 101 einen Integrator 2 festlegt. Dann tauscht das Fehlerdetektoranordnungs-Element 101 die Funktionen des Integrators 1 und des Integrators 2 in Bezug auf das Rechenelement 110 und gibt einen Befehl aus, den Fehlerdetektor 120 zum Integrator 2 anzuordnen. Als Ergebnis ist das Rechenelement 110-1 konfiguriert, wie in 4D veranschaulicht ist. Deshalb ist auch in der vorliegenden Ausführungsform die Rechenvorrichtung 1 wünschenswerterweise eine neukonfigurierbare Vorrichtung wie z. B. ein FPGA.As a result, it is assumed in the present example that the error detection array element 101 designates an integrator 2 . Then, the error detector arrangement element 101 exchanges the functions of the integrator 1 and the integrator 2 with respect to the calculation element 110 and issues an instruction to arrange the error detector 120 to the integrator 2. As a result, the computing element 110-1 is configured as shown in 4D is illustrated. Therefore, also in the present embodiment, the computing device 1 is desirably a reconfigurable device such as e.g. an FPGA.

Es ist festzuhalten, dass das Fehlerdetektoranordnungs-Element 101 jedes Mal, wenn ein Fehler detektiert wird, zuerst die Funktionen des Integrators 1 und des Integrators 2 tauscht und verursacht, dass der Integrator 1 und der Integrator 2 eine alternative Verarbeitung ausführen. Dann gibt, falls diese alternative Verarbeitung in einer bestimmten Anzahl oder mehr durchgeführt wurde, das Fehlerdetektoranordnungs-Element 101 einen Befehl aus, den Fehlerdetektor 120 anzuordnen. Ferner gibt dann, wenn die Anzahl der alternativen Verarbeitungen eine bestimmte Anzahl oder mehr ist, das Fehlerdetektorariordnungs-Element 101 wünschenswerterweise Warninformationen zu einer externen Vorrichtung wie z. B. einem fahrzeuginternen Endgerät aus.It is noted that the error detection array element 101 first swaps the functions of the integrator 1 and the integrator 2 each time an error is detected, and causes the integrator 1 and the integrator 2 to perform alternative processing. Then, if this alternative processing has been performed a certain number or more, the error detector arranging element 101 issues an instruction to arrange the error detector 120 . Further, when the number of alternative processings is a certain number or more, the error detector arrangement element 101 desirably gives warning information to an external device such as a computer. B. an in-vehicle terminal.

Ferner ist es wünschenswert, dass das Fehlerdetektoranordnungs-Element 101 eine Vorrichtung der Operationseinheit, deren Funktion getauscht wird, aus denen, die eine vorgegebene Bedingung erfüllen, wie z. B. eine benachbarte Vorrichtung wählt.Further, it is desirable that the error detecting array element 101 is a device of the operation unit whose function is switched from those that meet a predetermined condition such as e.g. B. selects a neighboring device.

Es ist festzuhalten, dass diese Verarbeitung auch in der ersten bis dritten Ausführungsform ähnlich durchgeführt werden kann. Das heißt, es ist auch möglich, die Verarbeitung des Rechenelements, in dem der Fehler detektiert wird, durch die eines weiteren Rechenelements zur Verarbeitung zu ersetzen.It is to be noted that this processing can be similarly performed also in the first to third embodiments. That is, it is also possible to replace the processing of the computing element in which the error is detected with that of another computing element for processing.

<Wirkungen der vierten Ausführungsform><Effects of the fourth embodiment>

Durch Durchführen der Anordnung in der Vorrichtung der Operationseinheit ist es möglich, den Fehlerdetektor in Bezug auf das Rechenelement genauer anzuordnen. Zusätzlich ist es selbst dann, wenn ein Fehler detektiert wird, möglich, zu verhindern, dass das System in den Degenerationsmodus oder den Stoppmodus direkt eintritt, und ist es möglich, den Betrieb des Systems wie z. B. die Fahrzeugsteuerung eine Weile sicher fortzusetzen.By performing the arrangement in the device of the operation unit, it is possible to more precisely arrange the error detector with respect to the computing element. In addition, even if an error is detected, it is possible to prevent the system from entering the degeneration mode or the stop mode directly, and it is possible to stop the operation of the system such as e.g. B. to safely continue vehicle control for a while.

<Fünfte Ausführungsform><Fifth embodiment>

Als nächstes wird eine fünfte Ausführungsform beschrieben, in der der Fehlerdetektor 120 üblicherweise für jeden Typ einer Vorrichtung der Operationseinheit, die jedes der Rechenelemente 110, die parallel angeordnet bildet, angeordnet ist.Next, a fifth embodiment will be described in which the error detector 120 is commonly arranged for each type of device of the operation unit constituting each of the computing elements 110 arranged in parallel.

in der Rechenvorrichtung 1 existiert ein Fall, in dem die Berechnung jedes Neurons (Rechenelements 110) aufgrund einer Begrenzung von Schaltungsbetriebsmitteln in einer Vorrichtung nicht implementiert werden kann. Zum Beispiel ist in einem Netz, in dem Schichten, in denen Neuronen angeordnet sind, fortgesetzt werden, wie in 5A veranschaulicht ist, die folgende Konfiguration vorgesehen. Das heißt, die Arithmetikkonfiguration eines Neurons (eines Rechenelements 110) enthält einen Integrator 111, einen kumulativen Addierer 112, eine Bitverschiebung (ein Runden) 113, die ein Rundungsrechenelement ist, einen Vorbelastungskoeffizientenaddierer 114, ein Aktivierungsfunktionsrechenelement (ReLU-Rechenelement) 115 und dergleichen. In diesem Fall ist die Kombination der Eingabedaten, des Gewichts und des Werts des Vorbelastungskoeffizienten für jedes Neuron verschieden. In einer derartigen Rechenvorrichtung 1 sind K Rechenelemente 110 in der Rahmenleitung an der Recheneinheit 11 montiert und werden, wenn die Berechnung abgeschlossen wird, die Gewichte zu den Gewichten der nächsten Ks Recheneinheiten 11 gewechselt, um die Berechnung durchzuführen. In einem derartigen Fall kann, da dasselbe Rechenelement lediglich durch Wechseln von Parametern kontinuierlich verwendet wird, die Anordnung des Fehlerdetektors nicht durch den Einflussgrad des Gewichts oder des Vorbelastungskoeffizienten auf das Berechnungsergebnis bestimmt werden.in the arithmetic device 1, there is a case where the calculation of each neuron (arithmetic element 110) cannot be implemented in one device due to a limitation of circuit resources. For example, in a network in which layers in which neurons are arranged are continued, as in 5A illustrated, the following configuration is provided. That is, the arithmetic configuration of a neuron (an arithmetic element 110) includes an integrator 111, a cumulative adder 112, a bit shift (round) 113 which is a rounding arithmetic element, a bias coefficient adder 114, an activation function arithmetic element (ReLU arithmetic element) 115 and the like. In this case, the combination of the input data, the weight and the value of the bias coefficient is different for each neuron. In such a calculation apparatus 1, K calculation elements 110 are mounted in the frame line on the calculation unit 11, and when the calculation is completed, the weights are switched to the weights of the next Ks calculation units 11 to perform the calculation. In such a case, since the same computing element is used continuously only by changing parameters, the arrangement of the error detector cannot be determined by the degree of influence of the weight or the preload coefficient on the calculation result.

Andererseits kann sie durch den Typ der Vorrichtung der Operationseinheit, die aufgrund der algorithmischen Eigenschaften einen hohen Einflussgrad auf den Fehler aufweist, definiert sein. Zum Beispiel ist der kumulative Addierer 112 in 5B ein Abschnitt, der eine hohe Empfindlichkeit aufweist, weil der Einfluss des Fehlers kumuliert wird. Zusätzlich kann man, da das Aktivierungsfunktionsrechenelement (ReLU-Rechenelement) 115 einen negativen Wert von null und die weiteren Werte wie sie sind ausgibt, sagen, dass die Empfindlichkeit des Vorzeichenbits, d. h. der Einflussgrad, relativ hoch ist. Deshalb weist die vorliegende Ausführungsform eine Konfiguration auf, in der der Fehlerdetektor 120 im Voraus in Bezug auf diese Vorrichtungen der Operationseinheit angeordnet ist. Es ist festzuhalten, dass die Konfiguration der vorliegenden Ausführungsform durch eine der ersten bis vierten Ausführungsform oder einer Kombination davon realisiert werden kann. Hier wird die Konfiguration der ersten Ausführungsform, d. h. die Konfiguration von 1D, als Beispiel beschrieben.On the other hand, it can be defined by the type of the device of the operation unit, which due to the algorithmic properties has a high degree of influence on the error. For example, the cumulative adder is 112 in 5B a portion that has high sensitivity because the influence of the error is accumulated. In addition, since the activation function arithmetic element (ReLU arithmetic element) 115 outputs a negative value of zero and the other values as they are, it can be said that the sensitivity of the sign bit, ie the degree of influence, is relatively high. Therefore, the present embodiment has a configuration in which the error detector 120 is arranged in advance with respect to these operation unit devices. Note that the configuration of the present embodiment can be realized by any one of the first to fourth embodiments or a combination thereof. Here the configuration of the first embodiment, ie the configuration of 1D , described as an example.

Zu diesem Zweck verwendet das Fehlerdetektoranordnungs-Element 101 Konfigurationsinformationen des Rechenelements 110, die im Voraus gespeichert wurden. Diese Konfigurationsinformationen definieren das Vorliegen oder das Fehlen einer Anordnung für jede Vorrichtung der Operationseinheit. Aus diesem Grund wird bestimmt, dass die Vorrichtungen der Operationseinheit, die angeordnet werden sollen, vom Fehlerdetektoranordnungs-Element 101 festgelegt werden und die Fehlerdetektoren 120 in Bezug darauf angeordnet sind. Hier kann das Fehlerdetektoranordnungs-Element 101 bestimmen, den Fehlerdetektor 120, der durch denselben Typ von Vorrichtungen der Operationseinheit gemeinsam verwendet wird, anzuordnen. Das heißt, wie in 5B veranschaulicht ist, ist der Fehlerdetektor 120, der durch die mehreren kumulativen Addierer 112 gemeinsam verwendet wird, angeordnet. Wie oben beschrieben ist, kann die Anordnung des gemeinsam verwendeten Fehlerdetektors 120 auch in der ersten bis vierten Ausführungsform ausgeführt werden.For this purpose, the error detector array element 101 uses configuration information of the computing element 110 that has been stored in advance. This configuration information defines the presence or absence of an arrangement for each device of the operation unit. For this reason, it is determined that the devices of the operation unit to be arranged are determined by the error detector arrangement element 101 and the error detectors 120 are arranged with respect thereto. Here, the error detector arrangement element 101 can determine to arrange the error detector 120 shared by the same type of devices of the operation unit. That is, as in 5B As illustrated, the error detector 120 shared by the plurality of cumulative adders 112 is arranged. As described above, the arrangement of the shared error detector 120 can also be carried out in the first to fourth embodiments.

Wie oben beschrieben ist, ist in der vorliegenden Ausführungsform der Fehlerdetektor 120 z. B. im kumulativen Addierer 112 oder einer vorgegebenen Vorrichtung der Operationseinheit wie z. B. ein Vorzeichenbit eines Rundens, eines Vorbelastungsaddierers oder dergleichen (die nicht veranschaulicht sind) angeordnet.As described above, in the present embodiment, the error detector 120 is z. B. in the cumulative adder 112 or a predetermined device of the operation unit such. B. a sign bit of rounding, a bias adder or the like (which are not illustrated) arranged.

<Wirkungen der fünften Ausführungsform><Effects of the fifth embodiment>

Gemäß der vorliegenden Ausführungsform kann der Fehlerdetektor 120 selbst in einer Rechenvorrichtungsvorrichtung effizient angeordnet werden, die ein relativ kleines Schaltungsbetriebsmittel aufweist.According to the present embodiment, the error detector 120 can be efficiently arranged even in a computing device device having a relatively small circuit resource.

<Kombination der ersten bis fünften Ausführungsformen><Combination of the First to Fifth Embodiments>

Dies ist das Ende der Beschreibung der ersten bis fünften Ausführungsformen. Es ist festzuhalten, dass die Verarbeitung jeder Ausführungsform unabhängig ausgeführt werden kann oder durch Kombinieren von mindestens zwei davon realisiert werden kann.This is the end of the description of the first to fifth embodiments. Note that the processing of each embodiment can be executed independently or can be realized by combining at least two of them.

<Anwendungsbeispiel der ersten bis fünften Ausführungsformen><Application example of the first to fifth embodiments>

Als nächstes wird ein Anwendungsbeispiel hinsichtlich der Anordnung des Fehlerdetektors 120 der ersten bis fünften Ausführungsformen unter Bezugnahme auf 6 beschrieben. Es ist festzuhalten, dass im vorliegenden Beispiel, ein Beispiel, in dem die Rechenvorrichtung 1 auf eine Fahrzeugsteuervorrichtung, eine sogenannte fahrzeuginterne ECU angewendet wird, beschrieben wird, jedoch die ersten bis fünften Ausführungsformen ähnlich auch auf eine fahrzeuginterne Steuervorrichtung angewendet werden können. Im vorliegenden Anwendungsbeispiel wird ein Steuerungsergebnis in einem Fahrzeug 3000 gelernt und wird dieses Ergebnis zu Aktivitäten in einer Konstruktions- und Fertigungsabteilung zurückgeführt. Im Folgenden wird die Verarbeitung mit der Konfiguration der ersten Ausführungsform, d. h. der Konfiguration von 1D als Beispiel beschrieben. Allerdings kann das vorliegende Anwendungsbeispiel durch eine der ersten bis fünften Ausführungsformen oder eine Kombination davon realisiert werden.Next, an application example regarding the arrangement of the error detector 120 of the first to fifth embodiments will be explained with reference to FIG 6 described. Note that in the present example, an example in which the computing device 1 is applied to an in-vehicle control device called an in-vehicle ECU is described, however, the first to fifth embodiments can be similarly applied to an in-vehicle control device. In the present application example, a control result is learned in a vehicle 3000, and this result is fed back to activities in a design and manufacturing department. In the following, the processing with the configuration of the first embodiment, that is, the configuration of 1D described as an example. However, the present application example can be realized by any one of the first to fifth embodiments or a combination thereof.

Zunächst enthält in 6 ein Fahrzeug 3000 eine Fahrzeugsteuervorrichtung 1A-1 und eine Kommunikationsvorrichtung 3001, die durch die Rechenvorrichtung 1 realisiert werden können. Diese Komponenten sind mittels eines Kommunikationspfads miteinander verbunden. Zusätzlich wird angenommen, dass die Fahrzeugsteuervorrichtung 1A-1 die Konfiguration von 1D besitzt.First contains in 6 a vehicle 3000, a vehicle control device 1A-1, and a communication device 3001, which can be realized by the computing device 1. These components are connected to each other by means of a communication path. In addition, it is assumed that the vehicle control device 1A-1 has the configuration of 1D owns.

Hier führt das Fehlerdetektoranordnungs-Element 101 der Fahrzeugsteuervorrichtung 1A-1 die Verarbeitung jeder Ausführungsform durch. Ferner führt das Fehlerdetektoranordnungs-Element 101 mindestens einen der Schritte S1 bis S4 in 1F in der Reihenfolge unter Verwendung des Verarbeitungsergebnisses und des Steuerungsergebnisses der Fahrzeugsteuervorrichtung 1A-1 durch. Dann sendet das Fehlerdetektoranordnungs-Element 101 sein eigenes Verarbeitungsergebnis mittels der Kommunikationsvorrichtung 3001 zu einer Server-Vorrichtung 1000, die in der Konstruktions-/Fertigungsabteilung verwendet wird.Here, the failure detector array element 101 of the vehicle control device 1A-1 performs the processing of each embodiment. Furthermore, the error detector array element 101 performs at least one of steps S1 to S4 in 1F in order using the processing result and the control result of the vehicle control device 1A-1. Then, the error detecting arrangement element 101 sends its own processing result via the communication device 3001 to a server device 1000 used in the design/manufacturing department.

Hier wird die Server-Vorrichtung 1000 durch einen sogenannten Computer realisiert und führt eine Verarbeitungsvorrichtung wie z. B. eine CPU die Verarbeitung gemäß einem Programm aus. Dann führt die Server-Vorrichtung 1000 die verbleibende Verarbeitung der Schritte S1 bis S4 von 1F unter Verwendung des Verarbeitungsergebnisses des Fehlerdetektors, der ein Element 101 anordnet, durch und speichert das Ergebnis in einem Dateisystem 4000. Es ist festzuhalten, dass, falls das Fehlerdetektoranordnungs-Element 101 die Schritte S1 bis S4 ausführt, die Server-Vorrichtung 1000 das Ergebnis im Dateisystem 4000 speichert. Es ist festzuhalten, dass das Dateisystem 4000 lediglich Informationen speichern können muss und innerhalb oder außerhalb. der Server-Vorrichtung 1000 vorgesehen sein kann. Dann werden die Konstruktion und die Fertigung durch Widerspiegeln des Ergebnisses durchgeführt, um die Fahrzeugsteuervorrichtung 1A-2 herzustellen.Here, the server device 1000 is realized by what is called a computer, and executes a processing device such as a computer. For example, a CPU executes processing according to a program. Then, the server device 1000 performs the remaining processing of steps S1 to S4 of 1F using the processing result of the error detector arranging element 101, and stores the result in a file system 4000. Note that if the error detector arranging element 101 executes steps S1 to S4, the server device 1000 returns the result in File system 4000 stores. It should be noted that the file system 4000 only needs to be able to store information and inside or outside. of the server device 1000 may be provided. Then, the design and manufacture are performed by reflecting the result to manufacture the vehicle control device 1A-2.

Deshalb ist es möglich, eine realistischere Anordnung des Fehlerdetektors 120, die das Ergebnis der tatsächlichen Steuerung reflektiert, zu realisieren.Therefore, it is possible to realize a more realistic arrangement of the failure detector 120 reflecting the result of actual control.

BezugszeichenlisteReference List

11
Rechenvorrichtungcomputing device
1111
Recheneinheitunit of account
1212
FehlerdetektorneukonfigurationselementError detector reconfiguration element
1313
FehlerdetektoranordnungsplanungsvorrichtungError detector layout planning device
1414
Fehlerdetektoranordnungsplanungseinheiterror detector placement planning unit
1515
Umgebungsbestimmungsvorrichtungenvironment determination device
102102
Fehlerdetektoranordnungs-Speichereinheiterror detector array memory unit
110110
Rechenelementelement of calculation
111111
Integratorintegrator
112112
Kumulativer AddiererCumulative adder
113113
Bitverschiebung (Runden)Bit Shift (Rounds)
114114
Vorbelastungskoeffizientenaddiererbias coefficient adder
115115
Aktivierungsfunktionsrechenelement (ReLU-Rechenelement)Activation Function Calculator (ReLU Calculator)
120120
Fehlerdetektorerror detector
121121
Prüfsignalerzeugungsschaltungtest signal generation circuit
122122
Auswahlvorrichtungselection device
123123
Komparatorcomparator
130130
Eingabeinput
140140
Ausgabeoutput
150150
Prüfsignaltest signal
160160
Normales/anomales SignalNormal/abnormal signal
170170
Umfang von Rechenelementen, die an einer Vorrichtung montiert sein könnenScope of computing elements that can be mounted on a device
22
Bilddatenimage data
33
Erkennungsergebnisrecognition result
44
Normal/anomalNormal/Abnormal

ZITATE ENTHALTEN IN DER BESCHREIBUNGQUOTES INCLUDED IN DESCRIPTION

Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of documents cited by the applicant was generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.

Zitierte PatentliteraturPatent Literature Cited

  • JP 2017092757 A [0007]JP 2017092757 A [0007]

Claims (14)

Rechenvorrichtung, die eine vorgegebene Datenverarbeitung an Eingabedaten ausführt, wobei die Rechenvorrichtung Folgendes umfasst: mehrere Rechenelemente, die jeweils eine Berechnung an einer Eingabe ausführen und ein Ergebnis der Berechnung ausgeben, um die Datenverarbeitung zu realisieren; und einen Fehlerdetektor, der in mindestens einem der mehreren Rechenelemente angeordnet ist und einen Fehler des Rechenelements detektiert, wobei der Fehlerdetektor in einem Rechenelement angeordnet ist, das gemäß einem Einflussgrad bestimmt wird, der einen Grad des Einflusses auf die Datenverarbeitung durch ein Berechnungsergebnis des Rechenelements unter den mehreren Rechenelementen angibt.A computing device that performs predetermined data processing on input data, the computing device comprising: a plurality of computing elements each performing computation on an input and outputting a result of the computation to realize data processing; and an error detector disposed in at least one of the plurality of computing elements and detecting an error of the computing element, wherein the error detector is arranged in a computing element that is determined according to an influence degree indicating a degree of influence on data processing by a calculation result of the computing element among the plurality of computing elements. Rechenvorrichtung nach Anspruch 1, wobei die vorgegebene Datenverarbeitung eine Erkennungsverarbeitung an den Eingabedaten ist und der Einflussgrad gemäß einem Einfluss eines Berechnungsergebnisses des Rechenelements, der einem Erkennungsergebnis der Erkennungsverarbeitung und/oder einer Steuerung gemäß dem Erkennungsergebnis vermittelt wird, bestimmt wird.computing device claim 1 wherein the predetermined data processing is recognition processing on the input data, and the degree of influence is determined according to an influence of a calculation result of the computing element given to a recognition result of the recognition processing and/or a control according to the recognition result. Rechenvorrichtung nach Anspruch 2, wobei der Einflussgrad einen Einfluss, der einem Erkennungsergebnis der Erkennungsverarbeitung durch ein Berechnungsergebnis des Rechenelements vermittelt wird, angibt und gemäß einem Grad der Änderung eines Ergebnisses der Datenverarbeitung, die auftritt, wenn ein Fehlers und/oder eine Bitumkehrung des Rechenelements auftritt, bestimmt wird.computing device claim 2 , wherein the degree of influence indicates an influence given to a recognition result of the recognition processing by a calculation result of the calculation element and is determined according to a degree of change of a result of the data processing that occurs when an error and/or a bit inversion of the calculation element occurs. Rechenvorrichtung nach Anspruch 2, wobei die Rechenvorrichtung eine Rechenvorrichtung ist, die Bilddaten einliest und ein Steuersignal zum Steuern eines Fahrzeugs ausgibt, der Einflussgrad durch einen Einfluss bestimmt wird, der einer Steuerung gemäß dem Erkennungsergebnis durch ein Berechnungsergebnis des Rechenelements vermittelt wird, und der Fehlerdetektor in einem Rechenelement angeordnet ist, das eine Notfallsteuerung des Fahrzeugs durch das Steuersignal bewirkt.computing device claim 2 wherein the computing device is a computing device that reads in image data and outputs a control signal for controlling a vehicle, the degree of influence is determined by an influence given to a control according to the recognition result by a calculation result of the computing element, and the error detector is arranged in a computing element , which causes an emergency control of the vehicle by the control signal. Rechenvorrichtung nach Anspruch 4, die ferner Folgendes umfasst: eine Umgebungsbestimmungsvorrichtung, die eine Fotografierumgebung zum Fotografieren der Bilddaten bestimmt; und eine Fehlerdetektoranordnungs-Speichereinheit, die ein Vorliegen oder ein Fehlen einer Anordnung des Fehlerdetektors für jede der Fotografierumgebungen speichert, wobei der Fehlerdetektor gemäß der Fotografierumgebung, die durch die Umgebungsbestimmungsvorrichtung bestimmt wird, unter Verwendung der Fehlerdetektoranordnungs-Speichereinheit angeordnet ist.computing device claim 4 further comprising: an environment determination device that determines a photographing environment for photographing the image data; and an error detector arrangement storage unit that stores a presence or absence of arrangement of the error detector for each of the photographing environments, the error detector being arranged according to the photographing environment determined by the environment determination device using the error detector arrangement storage unit. Rechenvorrichtung nach einem der Ansprüche 1 bis 5, wobei ein Rechenelement, in dem der Fehlerdetektor angeordnet ist, gemäß einer vorgegebenen Bedingung dynamisch geändert wird.Computing device according to one of Claims 1 until 5 , wherein a computing element in which the error detector is arranged is dynamically changed according to a predetermined condition. Rechenvorrichtung nach Anspruch 6, wobei das Rechenelement, in dem der Fehlerdetektor angeordnet ist, periodisch geändert wird.computing device claim 6 , wherein the computing element in which the error detector is located is changed periodically. Rechenvorrichtung nach Anspruch 6, wobei eine Funktion eines Rechenelements, in dem der Fehlerdetektor angeordnet ist, und eine Funktion eines Rechenelements, in dem der Fehlerdetektor nicht angeordnet ist, vertauscht sind.computing device claim 6 , wherein a function of a computing element in which the error detector is arranged and a function of a computing element in which the error detector is not arranged are reversed. Rechenvorrichtung nach Anspruch 8, wobei dann, wenn der Fehlerdetektor einen Fehler eines Rechenelements, in dem der Fehlerdetektor angeordnet ist, detektiert, eine Funktion des Rechenelements, in dem der Fehler detektiert wird, und eine Funktion des Rechenelements, in dem der Fehlerdetektor nicht angeordnet ist, vertauscht sind.computing device claim 8 , wherein when the error detector detects an error of a computing element in which the error detector is arranged, a function of the computing element in which the error is detected and a function of the computing element in which the error detector is not arranged are reversed. Rechenvorrichtung nach Anspruch 9, wobei die Rechenvorrichtung eine Rechenvorrichtung ist, die Bilddaten einliest und ein Steuersignal zum Steuern eines Fahrzeugs ausgibt und eine Steuerung zum Fahrzeug beendet, wenn die Anzahl der Rechenelemente, deren Funktionen ausgetauscht worden sind, einen vorgegebenen Schwellenwert überschreitet.computing device claim 9 wherein the computing device is a computing device that reads in image data and outputs a control signal for controlling a vehicle and terminates control to the vehicle when the number of computing elements whose functions have been exchanged exceeds a predetermined threshold. Fahrzeugsteuervorrichtung, die ein Steuersignal zum Steuern eines Fahrzeugs auf der Grundlage von Bilddaten ausgibt, wobei die Fahrzeugsteuervorrichtung Folgendes umfasst: mehrere Rechenelemente, die jeweils eine Berechnung an einer Eingabe auf der Grundlage der Bilddaten ausführen, um eine Erzeugung des Steuersignals zu realisieren; und einen Fehlerdetektor, der in mindestens einem der mehreren Rechenelemente angeordnet ist und einen Fehler des Rechenelements detektiert, wobei der Fehlerdetektor in einem Rechenelement angeordnet ist, das gemäß einem Einflussgrad bestimmt wird, der einen Grad des Einflusses auf die Steuerung am Fahrzeug durch ein Berechnungsergebnis des Rechenelements unter den mehreren Rechenelementen angibt.A vehicle control device that outputs a control signal for controlling a vehicle based on image data, the vehicle control device comprising: a plurality of computing elements each performing computation on an input based on the image data to realize generation of the control signal; and an error detector disposed in at least one of the plurality of computing elements and detecting an error of the computing element, wherein the failure detector is arranged in an arithmetic element determined according to an influence degree indicating a degree of influence on the control on the vehicle by a calculation result of the arithmetic element among the plurality of arithmetic elements. Fahrzeugsteuervorrichtung nach Anspruch 11, wobei der Fehlerdetektor in einem Rechenelement angeordnet ist, das eine Notfallsteuerung des Fahrzeugs durch das Steuersignal bewirkt.Vehicle control device claim 11 , wherein the error detector is arranged in a computing element which causes an emergency control of the vehicle by the control signal. Fahrzeugsteuervorrichtung nach Anspruch 11 oder 12, wobei dann, wenn der Fehlerdetektor einen Fehler eines Rechenelements, in dem der Fehlerdetektor angeordnet ist, detektiert, eine Funktion eines Rechenelements, in dem der Fehler detektiert wird, und eine Funktion eines Rechenelements, in dem der Fehlerdetektor nicht angeordnet ist, ausgetauscht sind.Vehicle control device claim 11 or 12 wherein when the error detector detects an error of a computing element in which the error detector is arranged, a function of a computing element in which the error is detected and a function of a computing element in which the error detector is not arranged are exchanged. Fahrzeugsteuervorrichtung nach Anspruch 13, wobei dann, wenn die Anzahl der Rechenelemente, in denen die Funktionen ausgetauscht sind, einen vorgegebenen Schwellenwert überschreitet, die Steuerung zum Fahrzeug beendet wird.Vehicle control device Claim 13 wherein when the number of compute elements in which the functions are exchanged exceeds a predetermined threshold, control to the vehicle is terminated.
DE112021003053.1T 2020-07-31 2021-06-28 COMPUTING DEVICE AND VEHICLE CONTROL DEVICE Pending DE112021003053T5 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020-130212 2020-07-31
JP2020130212A JP7449193B2 (en) 2020-07-31 2020-07-31 Computing device and vehicle control device
PCT/JP2021/024398 WO2022024634A1 (en) 2020-07-31 2021-06-28 Computing device and vehicle control device

Publications (1)

Publication Number Publication Date
DE112021003053T5 true DE112021003053T5 (en) 2023-07-20

Family

ID=80035458

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112021003053.1T Pending DE112021003053T5 (en) 2020-07-31 2021-06-28 COMPUTING DEVICE AND VEHICLE CONTROL DEVICE

Country Status (3)

Country Link
JP (1) JP7449193B2 (en)
DE (1) DE112021003053T5 (en)
WO (1) WO2022024634A1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017092757A (en) 2015-11-12 2017-05-25 株式会社リコー Image processing system and image processing method

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS567154A (en) * 1979-06-27 1981-01-24 Hitachi Ltd Double system
JP2009001124A (en) 2007-06-20 2009-01-08 Toyota Motor Corp Power source device for vehicle
JP5639611B2 (en) 2012-03-21 2014-12-10 富士重工業株式会社 Vehicle control device
JP7121737B2 (en) 2018-05-23 2022-08-18 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ Anomaly detection device, anomaly detection method and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2017092757A (en) 2015-11-12 2017-05-25 株式会社リコー Image processing system and image processing method

Also Published As

Publication number Publication date
WO2022024634A1 (en) 2022-02-03
JP2022026647A (en) 2022-02-10
JP7449193B2 (en) 2024-03-13

Similar Documents

Publication Publication Date Title
EP2564049B1 (en) Control device and method for calculating an output parameter for a controller
DE102019103825A1 (en) FAULT DIAGNOSIS DEVICE AND MACHINE LEARNING DEVICE
DE102018203374A1 (en) Fault tree analysis for technical systems
DE102018116696A1 (en) A method for generating normal state prediction data of a plant and apparatus using the same
DE102012110710A1 (en) Method for integrating models of a health management system for means of transport
DE102012223393A1 (en) Method and system for root cause analysis and quality control of system level errors
DE102018002779A1 (en) Circuit configuration optimizer and machine learning device
EP3767403B1 (en) Machine learning based shape and surface measurement for monitoring production
WO2021058223A1 (en) Method for applying automated driving functions efficiently and in a simulated manner
DE102018002781A1 (en) Circuit configuration optimizer and machine learning device
DE102019217613A1 (en) METHOD OF DIAGNOSING AN ENGINE CONDITION AND DIAGNOSTIC MODELING METHOD FOR THEREOF
DE112021004024T5 (en) APPROPRIATE DETECTION AND LOCATION OF ANOMALIES
EP0416370B1 (en) Method and device for detecting and indentifying sensor errors
DE112021002866T5 (en) MODEL FAITH MONITORING AND REBUILDING TO SUPPORT DECISIONS OF A MANUFACTURING PROCESS
DE112019003929T5 (en) ELECTRONIC CONTROL DEVICE AND UPDATING SYSTEM OF A NEURAL NETWORK
DE102021126726A1 (en) DISTRIBUTED SYSTEM AND DATA TRANSFER METHOD
DE112021005568T5 (en) Data processing device and data processing method
DE112021003053T5 (en) COMPUTING DEVICE AND VEHICLE CONTROL DEVICE
DE102011007467A1 (en) Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components
DE102018117509A1 (en) Method, device, computer program and computer program product for monitoring an effective chain of an active network of a vehicle
DE102021114191A1 (en) Distributed system
WO2021089787A1 (en) Method, apparatus and computer program for enabling a sensor system for detecting objects in an environment of a vehicle
DE102016206490A1 (en) ELECTRONIC CONTROL UNIT
DE102018217014A1 (en) Dynamic qualification of user data
DE102018210733A1 (en) Method for monitoring at least one computing unit

Legal Events

Date Code Title Description
R012 Request for examination validly filed