EP1565825A2 - Device and method for analysing embedded systems - Google Patents

Device and method for analysing embedded systems

Info

Publication number
EP1565825A2
EP1565825A2 EP03782193A EP03782193A EP1565825A2 EP 1565825 A2 EP1565825 A2 EP 1565825A2 EP 03782193 A EP03782193 A EP 03782193A EP 03782193 A EP03782193 A EP 03782193A EP 1565825 A2 EP1565825 A2 EP 1565825A2
Authority
EP
European Patent Office
Prior art keywords
memory
cpu
data
analysis device
embedded system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
EP03782193A
Other languages
German (de)
French (fr)
Inventor
Adrian Traskov
Andreas Kirschbaum
Thorsten Ehrenberg
Tasso Kirsch
Burkart Voss
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.)
Continental Teves AG and Co OHG
Original Assignee
Continental Teves AG and Co OHG
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 Continental Teves AG and Co OHG filed Critical Continental Teves AG and Co OHG
Publication of EP1565825A2 publication Critical patent/EP1565825A2/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • G06F11/348Circuit details, i.e. tracer hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2221Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test input/output devices or peripheral units

Definitions

  • the invention relates to an analysis device according to the preamble of claim 1, an embedded system according to the preamble of claim 12 and a method for analyzing an embedded system with an analysis device.
  • test operations can be carried out using a "boundary scan” test method.
  • This method enables processing of the processor (Smglesteppmg), the setting of breakpoints and the setting of so-called atchpoints.
  • BESTATIGUNGSKOPIE Also known is the so-called trace interface, in which the use of a bond-out chip for real-time analysis enables the forwarding of all relevant CPU bus signals (address, data and control signals) via housing pins, for example to an external logic analysis device.
  • a bond-out chip is a microcontroller (MCU) in another housing, in which the processor bus (data, address and control signals) is bonded to the outside.
  • MCU microcontroller
  • the object of the present invention is therefore to provide an analysis device for embedded systems which can also be used in the fast embedded systems which are customary today.
  • the invention is based on the following considerations: On the one hand, the internal system state of an embedded system can be described or analyzed by its current data memory content (RAM). It follows from this that if this memory content can be copied to an external data memory in real time, there is a possibility of further processing and evaluating the system state from there by a downstream evaluation unit.
  • RAM current data memory content
  • a copy of the internal system status is preferably written to an external memory in real time.
  • the analysis device is preferably part of an embedded system, which is used in particular in electronic control units for motor vehicle brake systems.
  • essential components of the system such as e.g. one or more CPU 's and memory partially or fully redundant. This increases the operational security of the embedded system.
  • the data is preferably not logged in such a way that the entire memory content or the content of an entire memory area is transmitted, but only the changes in the memory, in particular all write accesses of the CPU and / or the periphery, are transmitted. In this way, the bandwidth required for data output can be reduced.
  • the system also preferably includes means for direct data output by the CPU.
  • means for direct data output there are in particular means for automatic replication of the data in the background by the Analysis module provided. This has the advantage of increased flexibility in data output.
  • a universal data input and output module is proposed according to the invention, which is set up in such a way that data exchange with an embedded system can be carried out in real time without this (even temporarily) having to be stopped (non -intrusive).
  • the analysis device Compared to the software debugging devices known from the prior art, the analysis device according to the invention has the advantage that when developing control algorithms such. B. for motor vehicle brake systems, the dynamic system behavior, in particular the control variables can be tracked during debugging. It is also advantageous that for the use of an embedded system in a hardware-in-the-loop simulator or in a rapid prototyping system, data can be entered into the embedded system.
  • the invention further relates to a method for analyzing an embedded system described above with an analysis device according to claim 12.
  • the method has the advantage that the processing speed of the embedded system is not reduced by the debugging processes running in the background. This enables real-time processing of the data even during debugging.
  • the method according to the invention preferably also comprises steps for real-time output of the complete data storage content. Further preferred embodiments result from the subclaims.
  • FIG 1 shows an embedded system 9 with an analysis device 4 according to the invention.
  • Embedded system 9 comprises one or more CPU's 1, a RAM 3, an analysis device 4 and a debugging interface 5. To simplify the block diagram, other common functional elements of the embedded system, such as ROM, clock generation, 10, etc., are not shown ,
  • the analysis device has three functional modes, which are described below.
  • function mode 1 the analysis device also reads all write accesses of the CPU 1 from the data memory 3. All write accesses of the CPU 1 to data memory 3 are thus automatically written to the external data memory 6 via a parallel interface 5 via a parallel interface 5 by the proposed extended data output / input unit 4 (EDP, enhanced data port) via CPU bus 2.
  • EDP extended data output / input unit 4
  • the controller must have at least the same bandwidth as the memory 3 used.
  • the controller also has, in particular, a connection to the control bus and to the address bus, so that, according to a preferred embodiment of the method, only specially selected address areas and / or specially selected data types can be tracked for analysis. For the tap of the data and the As a result, data transfer does not have to be executed by CPU 1.
  • the external data memory 6 is preferably designed as a dual-port memory and generally contains an exact image of the memory areas observed in RAM 3 or of the entire memory content of RAM 3.
  • Memory 6 can also be a ring memory which receives the incoming memory Stores data stream for later (offline) analysis.
  • External interface 5 preferably has a bandwidth that is smaller than the bandwidth of the CPU bus.
  • FIFO memory 8 which is arranged within the data output unit 4, ensures that the tapped data is buffered over time. In this way, accesses to interface 5 can also be output in which a cache line or a CPU register dump is written back when the function begins.
  • analysis device 4 also reads all read accesses from CPU 1 to the data memory. This mode largely corresponds to function mode 1, but there are the following differences: All read accesses are automatically output via interface 5. Analysis unit 4 registers all processes, such as read cycles, write cycles, etc., which are visible on the CPU bus (read along). In function mode 2, CPU 1 actively performs a memory dump, which, however, is accompanied by a slight tolerable loss of runtime. By reading the analysis unit 4, the number of clock cycles that are required for the output of data words for analysis are reduced or even avoided entirely. CPU 1 reads the data memory contents into the non-drawn registers of the CPU. The data present in the registers can then be written in analysis unit 4. The mode of operation described here essentially corresponds to function mode 3 described below.
  • CPU 1 reads the data memory content into the CPU registers.
  • the data output unit 4 which overhears the data bus, automatically outputs the corresponding data, i.e. no explicit write cycle is required for data output for analysis.
  • function mode 3 there is a direct write to the data output unit or a direct read from the data output unit.
  • Function mode 3 thus corresponds to function mode 1, except for the fact that the data are actively output externally by the CPU 1 to the analysis unit 4 or actively read in from there, which, however, requires additional clock cycles.
  • the analysis unit can transmit data from the external memory 6 to typical debugging applications, such as e.g. Real-time monitoring of system status 10, offline analysis to create a complete data memory image via module 11, flash download via communication channel 12 (programming the program memory), parameter variation during operation of the embedded system, transmission of system stimuli, rapid prototyping and hardware-in-the -Loop simulation will be transmitted.
  • typical debugging applications such as e.g. Real-time monitoring of system status 10, offline analysis to create a complete data memory image via module 11, flash download via communication channel 12 (programming the program memory), parameter variation during operation of the embedded system, transmission of system stimuli, rapid prototyping and hardware-in-the -Loop simulation will be transmitted.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

The invention relates to an analysis device for an embedded system (9) comprising a CPU (1), a CPU bus (2) and a memory (3). The embedded system has at least one communication module (4) for the input or output of analysis data via a test interface (5). The communication module permits the internal memory and the input and output access operations of the embedded system to be monitored and/or logged without using the clock cycles of the CPU (1).

Description

Einrichtung und Verfahren zur Analyse von eingebetteten SystemenSetup and method for analysis of embedded systems
Die Erfindung betrifft eine Analyseeinrichtung gemäß Oberbegriff von Anspruch 1, ein eingebettetes System gemäß Oberbegriff von Anspruch 12 sowie ein Verfahren zur Analyse eines eingebetteten Systems mit einer Analyseeinrichtung.The invention relates to an analysis device according to the preamble of claim 1, an embedded system according to the preamble of claim 12 and a method for analyzing an embedded system with an analysis device.
Um Software für eingebettete Systeme erfolgreich entwickeln zu können, ist es allgemein üblich, Einrichtungen vorzusehen, mit denen eine Fehlererkennung zur Laufzeit (Debugging) möglich ist. Bei dem bekannten Konzept des Debugging von eingebetteten Systemen via einer sogenannten JTAG-Schnitt- stelle (Joint Test Action Group, IEEE Standard 1149.1-1990, "IEEE Standard Test Access Port and Boundary Scan Architec- ture", Institute of Electπcal and Electronics Engineers Inc., New York, USA, 1990) lassen sich Prufoperationen durch ein "Boundary-Scan"-Testverfahren durchfuhren. Dieses Verfahren ermöglicht eine Emzelschπttverarbeitung des Prozessors (Smglesteppmg) , das Setzen von Haltepunkten (Break- points) und das Setzen von sogenannten atchpoints. Durch diese an sich bekannten Hilfsmittel zur Fehlererkennung kann zwar die prinzipielle Programrrabarbeitung und der Zustand vereinzelter Variablenwerte mitverfolgt werden, jedoch muss das laufende System dazu in der Regel angehalten werden. Nachteilhafterweise kann dann jedoch die Ausgabe des Mikrorechners nicht mehr in Echtzeit erfolgen.In order to be able to successfully develop software for embedded systems, it is common practice to provide facilities with which error detection at runtime (debugging) is possible. In the known concept of debugging embedded systems via a so-called JTAG interface (Joint Test Action Group, IEEE Standard 1149.1-1990, "IEEE Standard Test Access Port and Boundary Scan Architecture", Institute of Electronic and Electronics Engineers Inc ., New York, USA, 1990), test operations can be carried out using a "boundary scan" test method. This method enables processing of the processor (Smglesteppmg), the setting of breakpoints and the setting of so-called atchpoints. These known tools for error detection can be used to track the basic program processing and the status of individual variable values, but the running system must usually be stopped to do this. Disadvantageously, however, the microcomputer can then no longer be output in real time.
Es besteht nun das Problem, dass eingebettete Systeme häufig Echtzeitsysteme sind, die aufgrund ihres typischen Einsatzgebiets in Echtzeιt-Steuerungen/-Regelungen ein Anhalten zu Debuggmgzwecken zumindest zur Überprüfung der im Zusammenhang mit der Echtzeitbearbeitung veränderten Daten nicht erlauben .The problem now arises that embedded systems are often real-time systems which, owing to their typical area of use in real-time controls, do not permit stopping for debugging purposes, at least for checking the data changed in connection with real-time processing.
BESTATIGUNGSKOPIE Weiterhin bekannt ist das sogenannte Trace-Interface, bei dem unter Benutzung eines "Bond-out" Chips zur Echtzeitanalyse die Weiterleitung aller relevanten CPU-Bussignale (Adressen-, Daten-, und Kontrollsignale) über Gehäusepins zum Beispiel an eine externe Logikanalyseeinrichtung ermöglicht wird. Bei einem Bond-out Chip handelt es sich um einen Microcontroller (MCU) in einem anderen Gehäuse, bei dem der Prozessorbus (Daten-, Adressen- und Kontrollsignale) nach außen gebondet ist.BESTATIGUNGSKOPIE Also known is the so-called trace interface, in which the use of a bond-out chip for real-time analysis enables the forwarding of all relevant CPU bus signals (address, data and control signals) via housing pins, for example to an external logic analysis device. A bond-out chip is a microcontroller (MCU) in another housing, in which the processor bus (data, address and control signals) is bonded to the outside.
Bei den heute für eingebettete Systeme üblichen hohen Sys- temfreguenzen von mehreren hundert Megahertz und den modernen Speicherarchitekturen mit Caches kann diese Methode zur Fehleranalyse auf Grund der hohen Geschwindigkeitsanforderungen nicht mehr verwendet werden. Eine Echtzeitausgabe relativ großer Datenspeicher (zum Beispiel einer Größe von mehr als 100 Kbyte) ist in der Regel durch die auf Grund der verwendeten Technologie vorgegebenen Systemfrequenzen und der sich daraus ergebenden Bandbreite nicht möglich. Eine denkbare Möglichkeit zur Schaffung der für die Echtzeitdatenübertragung notwendigen Bandbreite wäre eine parallele Ausgabe der zu übertragenden Daten. Die hierfür zur Verfügung stehende Pinzahl ist jedoch nicht zuletzt aus Kostengründen in der Regel begrenzt.With the high system frequencies of several hundred megahertz common today for embedded systems and the modern memory architectures with caches, this method of error analysis can no longer be used due to the high speed requirements. Real-time output of relatively large data memories (for example, a size of more than 100 Kbytes) is generally not possible due to the system frequencies specified due to the technology used and the resulting bandwidth. A conceivable way to create the bandwidth required for real-time data transmission would be a parallel output of the data to be transmitted. The number of pins available for this is usually limited, not least for cost reasons.
Aufgabe der vorliegenden Erfindung ist es daher, eine Analyseeinrichtung für eingebettete Systeme zur Verfügung zu stellen, welche auch bei den heute üblichen schnellen eingebetteten Systemen eingesetzt werden kann.The object of the present invention is therefore to provide an analysis device for embedded systems which can also be used in the fast embedded systems which are customary today.
Diese Aufgabe wird durch die Analyseeinrichtung gemäß Anspruch 1 gelöst. Die Erfindung basiert auf folgenden Überlegungen: Zum einen lässt sich der interne Systemzustand eines eingebetteten Systems durch seinen aktuellen Datenspeicherinhalt (RAM) beschreiben bzw. analysieren. Daraus folgt, dass für den Fall, dass dieser Speicherinhalt in Echtzeit in einen externen Datenspeicher kopiert werden kann, eine Möglichkeit besteht, den Systemzustand von dort durch eine nachgeschaltete Auswerteeinheit weiterzuverarbeiten und auszuwerten.This object is achieved by the analysis device according to claim 1. The invention is based on the following considerations: On the one hand, the internal system state of an embedded system can be described or analyzed by its current data memory content (RAM). It follows from this that if this memory content can be copied to an external data memory in real time, there is a possibility of further processing and evaluating the system state from there by a downstream evaluation unit.
In der Analyseeinrichtung wird bevorzugt eine Kopie des internen Systemzustands in einen externen Speicher in Echtzeit geschrieben.In the analysis device, a copy of the internal system status is preferably written to an external memory in real time.
Die Analyseeinrichtung ist vorzugsweise Bestandteil eines eingebetteten Systems, welches insbesondere in elektronischen Steuergeräten für Kraftfahrzeugbremssysteme Verwendung findet. In dem eingebetteten System nach der Erfindung sind vorzugsweise wesentliche Komponenten des Systems, wie z.B. eine oder mehrere CPU 's und Speicher teil- oder vollredundant ausgeführt. Hierdurch wird die Betriebssicherheit des eingebetteten Systems erhöht.The analysis device is preferably part of an embedded system, which is used in particular in electronic control units for motor vehicle brake systems. In the embedded system according to the invention, essential components of the system, such as e.g. one or more CPU 's and memory partially or fully redundant. This increases the operational security of the embedded system.
Vorzugsweise erfolgt die Protokollierung der Daten nicht in der Weise, dass der gesamte Speicherinhalt oder der Inhalt eines ganzen Speicherbereichs übertragen wird, sondern es werden nur die Veränderungen des Speichers, insbesondere alle Schreibzugriffe der CPU und/oder der Peripherie, übertragen. Auf diese Weise kann eine Verringerung der notwendigen Bandbreite zur Datenausgabe erfolgen.The data is preferably not logged in such a way that the entire memory content or the content of an entire memory area is transmitted, but only the changes in the memory, in particular all write accesses of the CPU and / or the periphery, are transmitted. In this way, the bandwidth required for data output can be reduced.
Das System umfasst außerdem vorzugsweise Mittel für die direkte Datenausgabe durch die CPU. Neben diesen Mitteln für die direkte Datenausgabe sind insbesondere Mittel für eine automatische Replizierung der Daten im Hintergrund durch das Analysemodul vorgesehen. Hierdurch ergibt sich der Vorteil einer erhöhten Flexibilität bei der Datenausgabe.The system also preferably includes means for direct data output by the CPU. In addition to these means for direct data output, there are in particular means for automatic replication of the data in the background by the Analysis module provided. This has the advantage of increased flexibility in data output.
Speziell für diese Anwendungs älle wird gemäß der Erfindung ein universelles Datenein- und ausgabemodul vorgeschlagen, welches in der Weise eingerichtet ist, dass in Echtzeit ein Datenaustausch mit einem eingebetteten System durchgeführt werden kann, ohne dass dieses (auch nur zeitweise) angehalten werden muss (non-intrusive) .Especially for these application cases, a universal data input and output module is proposed according to the invention, which is set up in such a way that data exchange with an embedded system can be carried out in real time without this (even temporarily) having to be stopped (non -intrusive).
Gegenüber den aus dem Stand der Technik bekannten Software- Debuggingeinrichtungen besitzt die Analyseeinrichtung nach der Erfindung den Vorteil, dass bei der Entwicklung von Regelalgorithmen z. B. für Kraftfahrzeugbremssysteme, das dynamische Systemverhalten insbesondere der Regelvariablen während des Debuggings verfolgt werden kann. Weiterhin ist vorteilhaft, dass für den Einsatz eines eingebetteten Systems in einem Hardware-in-the-Loop Simulator oder in einem Rapid-Prototyping System eine Dateneingabe in das eingebettete System vorgenommen werden kann.Compared to the software debugging devices known from the prior art, the analysis device according to the invention has the advantage that when developing control algorithms such. B. for motor vehicle brake systems, the dynamic system behavior, in particular the control variables can be tracked during debugging. It is also advantageous that for the use of an embedded system in a hardware-in-the-loop simulator or in a rapid prototyping system, data can be entered into the embedded system.
Die Erfindung betrifft weiterhin ein Verfahren zur Analyse eines dem weiter oben beschriebenen eingebetteten System mit einer Analyseeinrichtung gemäß Anspruch 12.The invention further relates to a method for analyzing an embedded system described above with an analysis device according to claim 12.
Das Verfahren hat den Vorteil, dass die Verarbeitungsgeschwindigkeit des eingebetteten Systems durch die im Hintergrund ablaufenden Debugging-Prozesse nicht verringert wird. Hierdurch ist eine Echtzeitverarbeitung der Daten auch während des Debuggings möglich.The method has the advantage that the processing speed of the embedded system is not reduced by the debugging processes running in the background. This enables real-time processing of the data even during debugging.
Das Verfahren gemäß der Erfindung umfasst bevorzugt auch Schritte zur echtzeitfähigen Ausgabe des kompletten Datenspeicherinhalts . Weitere bevorzugte Ausführungsformen ergeben sich aus den Unteransprüchen .The method according to the invention preferably also comprises steps for real-time output of the complete data storage content. Further preferred embodiments result from the subclaims.
Nachfolgend wird die erfindungsgemäße Analyseeinrichtung und das erfindungsgemäße Verfahren an Hand von Ausführungsbeispielen unter Bezugnahme auf Fig. 1 beschrieben.The analysis device according to the invention and the method according to the invention are described below using exemplary embodiments with reference to FIG. 1.
Fig. 1 zeigt ein eingebettetes System 9 mit einer Analyse- einrichtung 4 gemäß der Erfindung.1 shows an embedded system 9 with an analysis device 4 according to the invention.
Eingebettetes System 9 umfasst einen oder mehrere CPU 's 1, ein RAM 3, eine Analyseeinrichtung 4 und ein Debugg- Interface 5. Zur Vereinfachung des Blockschaltbilds sind weitere übliche Funktionselemente des eingebetteten Systems, wie ROM, Takterzeugung, 10, etc., nicht gezeichnet.Embedded system 9 comprises one or more CPU's 1, a RAM 3, an analysis device 4 and a debugging interface 5. To simplify the block diagram, other common functional elements of the embedded system, such as ROM, clock generation, 10, etc., are not shown ,
Die Analyseeinrichtung weist drei Funktionsmodi auf, welche nachfolgend beschrieben werden. In Funktionsmodus 1 liest die Analyseeinrichtung alle Schreibzugriffe der CPU 1 vom Datenspeicher 3 mit. Es werden also alle Schreibzugriffe der CPU 1 auf Datenspeicher 3 automatisch über CPU-Bus 2 von der vorgeschlagenen erweiterten Datenaus-/eingabeeinheit 4 (EDP, Enhanced Data Port) mittels eines darin enthaltenen Controllers über ein paralleles Interface 5 auf den externen Datenspeicher 6 geschrieben. Hierzu muss der Controller zumindest die gleiche Bandbreite besitzen, wie der verwendete Speicher 3. Der Controller besitzt neben einer Verbindung zum Datenbus auch insbesondere eine Verbindung zum Kontrollbus und zum Adressbus, damit, nach einer bevorzugten Ausführungsform des Verfahrens, nur speziell selektierte Adressbereiche und/oder speziell selektierte Datentypen für die Analyse mitverfolgt werden können. Für den Abgriff der Daten und den Datentransfer muss CPU 1 demzufolge keine zusätzlichen Befehle ausführen.The analysis device has three functional modes, which are described below. In function mode 1, the analysis device also reads all write accesses of the CPU 1 from the data memory 3. All write accesses of the CPU 1 to data memory 3 are thus automatically written to the external data memory 6 via a parallel interface 5 via a parallel interface 5 by the proposed extended data output / input unit 4 (EDP, enhanced data port) via CPU bus 2. For this purpose, the controller must have at least the same bandwidth as the memory 3 used. In addition to a connection to the data bus, the controller also has, in particular, a connection to the control bus and to the address bus, so that, according to a preferred embodiment of the method, only specially selected address areas and / or specially selected data types can be tracked for analysis. For the tap of the data and the As a result, data transfer does not have to be executed by CPU 1.
Der externe Datenspeicher 6 ist bevorzugt als Dual-Port Speicher ausgeführt und enthält in der Regel ein genaues Abbild der in RAM 3 beobachteten Speicherbereiche bzw. des gesamten Speicherinhaltes von RAM 3. Es kann sich bei Speicher 6 auch um einen Ringspeicher handeln, der den ankommenden Datenstrom für eine spätere (offline-) Analyse speichert .The external data memory 6 is preferably designed as a dual-port memory and generally contains an exact image of the memory areas observed in RAM 3 or of the entire memory content of RAM 3. Memory 6 can also be a ring memory which receives the incoming memory Stores data stream for later (offline) analysis.
Externes Interface 5 weist bevorzugt eine Bandbreite auf, die kleiner ist als die Bandbreite des CPU-Bus. FIFO- Speicher 8, welcher innerhalb der Datenausgabeeinheit 4 angeordnet ist, sorgt dabei für eine zeitliche Pufferung der abgegriffenen Daten. Auf diese Weise können auch Zugriffe auf Interface 5 ausgegeben werden, bei denen ein Zurückschreiben einer Cache-Line oder eines CPU-Register Dump bei Funktionseintritt durchgeführt wird.External interface 5 preferably has a bandwidth that is smaller than the bandwidth of the CPU bus. FIFO memory 8, which is arranged within the data output unit 4, ensures that the tapped data is buffered over time. In this way, accesses to interface 5 can also be output in which a cache line or a CPU register dump is written back when the function begins.
In Funktionsmodus 2 liest Analyseeinrichtung 4 alle Lesezugriffe von CPU 1 auf den Datenspeicher mit. Dieser Modus entspricht weitgehend Funktionsmodus 1, jedoch sind folgende Unterschiede vorhanden: Alle Lesezugriffe werden automatisch über Interface 5 ausgegeben. Analyseeinheit 4 registriert dabei alle Vorgänge, wie Lesezyklen, Schreibzyklen etc., die auf dem CPU-Bus sichtbar sind, auf (Mitlesen) . In Funktionsmodus 2 führt CPU 1 aktiv einen Speicherdump durch, was allerdings mit einem geringfügigen tolerierbaren Laufzeitverlust einhergeht. Durch das Mitlesen der Analyseeinheit 4 werden die Anzahl von Taktzyklen, welche für die Ausgabe die von Datenworten zur Analyse erforderlich sind, verringert bzw. oder sogar ganz vermieden. CPU 1 liest den Datenspeicherinhalt in die nichtgezeichneten Register der CPU ein. Die in den Registern vorhandenen Daten können dann in Analyseeinheit 4 geschrieben werden. Die hier beschriebene Funktionsweise entspricht im wesentlichen dem weiter unten beschriebenen Funktionsmodus 3.In function mode 2, analysis device 4 also reads all read accesses from CPU 1 to the data memory. This mode largely corresponds to function mode 1, but there are the following differences: All read accesses are automatically output via interface 5. Analysis unit 4 registers all processes, such as read cycles, write cycles, etc., which are visible on the CPU bus (read along). In function mode 2, CPU 1 actively performs a memory dump, which, however, is accompanied by a slight tolerable loss of runtime. By reading the analysis unit 4, the number of clock cycles that are required for the output of data words for analysis are reduced or even avoided entirely. CPU 1 reads the data memory contents into the non-drawn registers of the CPU. The data present in the registers can then be written in analysis unit 4. The mode of operation described here essentially corresponds to function mode 3 described below.
Bei der im vorliegenden Beispiel (Funktionsmodus 2) vorgeschlagenen Analyseeinrichtung liest CPU 1 den Datenspeicherinhalt in die CPU-Register. Parallel hierzu gibt die Datenausgabeeinheit 4, welche den Datenbus mithört, die entsprechenden Daten automatisch aus, d.h. es ist kein expliziter Schreibzyklus für die Datenausgabe zur Analyse erforderlich.In the analysis device proposed in the present example (function mode 2), CPU 1 reads the data memory content into the CPU registers. In parallel, the data output unit 4, which overhears the data bus, automatically outputs the corresponding data, i.e. no explicit write cycle is required for data output for analysis.
In Funktionsmodus 3 erfolgt ein direktes Schreiben auf die Datenausgabeeinheit oder ein direktes Lesen von der Datenausgabeeinheit. Funktionsmodus 3 entspricht also Funktionsmodus 1, bis auf die Tatsache, dass die Daten aktiv durch die CPU 1 auf die Analyseeinheit 4 extern ausgegeben bzw. aktiv von dort eingelesen werden, wodurch allerdings zusätzliche Taktzyklen erforderlich sind.In function mode 3, there is a direct write to the data output unit or a direct read from the data output unit. Function mode 3 thus corresponds to function mode 1, except for the fact that the data are actively output externally by the CPU 1 to the analysis unit 4 or actively read in from there, which, however, requires additional clock cycles.
Die Analyseeinheit kann über Modul 7 Daten aus dem externen Speicher 6 an typische Debugging-Anwendungen, wie z.B. Echtzeitüberwachung des Systemzustands 10, Offline-Analyse zur Schaffung eines kompletten Datenspeicherabbilds über Modul 11, Flash-Download über Kommunikationskanal 12 (Programmierung des Programmspeichers) , Parametervariation während des Betriebs des eingebetteten Systems, Übertragung von Systemstimuli, Rapid-Prototyping und Hardware-in-the-Loop Simulation übertragen werden. The analysis unit can transmit data from the external memory 6 to typical debugging applications, such as e.g. Real-time monitoring of system status 10, offline analysis to create a complete data memory image via module 11, flash download via communication channel 12 (programming the program memory), parameter variation during operation of the embedded system, transmission of system stimuli, rapid prototyping and hardware-in-the -Loop simulation will be transmitted.

Claims

Patentansprüche claims
1. Analyseeinrichtung für ein eingebettetes System (9), welches eine CPU (1), einen CPU-Bus (2) und einen Speicher (3) umfasst, wobei diese zumindest ein Kommunikationsmodul (4) für die Ein- bzw. Ausgabe von Analysedaten über eine Testschnittstelle (5) aufweist, dadurch gekennzeichnet, dass mit dem Kommunikationsmodul ohne Verbrauch von TaktZyklen der CPU (1) der interne Speicher und I/O-Zugriffe des eingebetteten Systems überwacht und/oder protokolliert werden kann.1. Analysis device for an embedded system (9), which comprises a CPU (1), a CPU bus (2) and a memory (3), said at least one communication module (4) for the input and output of analysis data Via a test interface (5), characterized in that the communication module can be used to monitor and / or log the internal memory and I / O accesses of the embedded system without consuming clock cycles of the CPU (1).
2. Analyseeinrichtung nach Anspruch 1, gekennzeichnet durch zwei, insbesondere mindestens drei frei wählbare Analysemodi, wobei sich die Analysemodi in Art und Umfang der Beteiligung der CPU 1 beim Einlesen und/oder Schreiben von Daten für Analysezwecke voneinander unterscheiden.2. Analysis device according to claim 1, characterized by two, in particular at least three, freely selectable analysis modes, the analysis modes differing in the type and scope of the involvement of the CPU 1 when reading and / or writing data for analysis purposes.
3. Analyseeinrichtung nach Anspruch 2, dadurch gekennzeichnet, dass je nach gewähltem Analysemodus entweder3. Analysis device according to claim 2, characterized in that depending on the selected analysis mode either
- alle Schreibzugriffe der CPU auf insbesondere definierbare Adressbereiche ohne Taktzyklenverbrauch protokolliert werden oder- All write accesses of the CPU to especially definable address areas are logged without clock cycle consumption or
- alle Lesezugriffe der CPU protokolliert werden oder- all read accesses of the CPU are logged or
- ein direktes Lesen und Schreiben der CPU aus/in ei- nem/-n externen Speicher (6) mit Taktzyklenverbrauch erfolgt . - The CPU is read and written directly from / to an external memory (6) with clock cycle consumption.
. Analyseeinrichtung nach mindestens einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass das Kommunikationsmodul einen Controller umfasst, welcher selbstständig über eine Verbindung mit dem Datenbus und/oder dem Kontrollbus und/oder dem Adressbus auf diese (n) Bus/Busse des eingebetteten Systems zugreifen kann, um Schreib- und/oder Lese-Zugriffe in Echtzeit, d.h. ohne Beeinflussung der CPU, mitzuverfolgen., Analysis device according to at least one of claims 1 to 3, characterized in that the communication module comprises a controller which independently access this bus (s) of the embedded system via a connection to the data bus and / or the control bus and / or the address bus can to read and / or read accesses in real time, ie without influencing the CPU.
5. Analyseeinrichtung nach mindestens einem der Ansprüche 1 bis 4, dadurch gekennzeichnet, dass das Kommunikationsmodul mit einem Pufferspeicher (8) verbunden ist oder diesen insbesondere umfasst, wobei in dem Pufferspeicher die bei Schreib- und/oder Lese-Zugriffen ü- bertragenen Daten gespeichert werden können.5. Analysis device according to at least one of claims 1 to 4, characterized in that the communication module is connected to a buffer memory (8) or in particular comprises this, the data transmitted during write and / or read accesses being stored in the buffer memory can be.
6. Analyseeinrichtung nach mindestens einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass aus dem Pufferspeicher Daten über die Testschnittstelle (5) gepuffert ausgegeben bzw. Daten in den Pufferspeicher über diese Schnittstelle eingeschrieben werden können.6. Analysis device according to at least one of claims 1 to 5, characterized in that data can be output in buffered form from the buffer memory via the test interface (5) or data can be written into the buffer memory via this interface.
7. Analyseeinrichtung nach mindestens einem der Ansprüche 1 bis 6, dadurch gekennzeichnet, dass der externe Prüfspeicher (6) ein Ringspeicher oder ein Dual-Port Speicher ist.7. Analysis device according to at least one of claims 1 to 6, characterized in that the external test memory (6) is a ring memory or a dual-port memory.
8. Analyseeinrichtung nach mindestens einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass das Kommunikationsmodul (4) im eingebetteten System integriert ist.8. Analysis device according to at least one of claims 1 to 7, characterized in that the communication module (4) is integrated in the embedded system.
9. Analyseeinrichtung nach mindestens einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass die Testschnitt- stelle (5) mit einem außerhalb des eingebetteten Systems angeordneten PrüfSpeicher (6) verbunden ist.9. Analysis device according to at least one of claims 1 to 8, characterized in that the test cut point (5) is connected to a test memory (6) arranged outside the embedded system.
10. Analyseeinrichtung nach mindestens einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass die Datenübertragung vom Kommunikationsmodul zum externen Speicher über eine Parallelschnittstelle erfolgt.10. Analysis device according to at least one of claims 1 to 9, characterized in that the data transmission from the communication module to the external memory takes place via a parallel interface.
11. Analyseeinrichtung nach mindestens einem der Ansprüche 1 bis 10, dadurch gekennzeichnet, dass externer Speicher (6) mit einer Datenaufbereitungseinrichtung (7) verbunden ist, welche eine Schnittstellenverbindung (14) zu externen Debugging-Anwendungen schafft.11. Analysis device according to at least one of claims 1 to 10, characterized in that external memory (6) is connected to a data preparation device (7) which creates an interface connection (14) to external debugging applications.
12. Eingebettetes System umfassend eine Zentralrecheneinheit (1), einen CPU-Bus (2) und einem Speicher (3), dadurch gekennzeichnet, dass dieses eine Analyseeinrichtung gemäß mindestens einem der Ansprüche 1 bis 11 umfasst .12. Embedded system comprising a central processing unit (1), a CPU bus (2) and a memory (3), characterized in that it comprises an analysis device according to at least one of claims 1 to 11.
13. Verfahren zur Analyse eines eingebetteten Systems mit einer Analyseeinrichtung, gemäß mindestens einem der Ansprüche 1 bis 11, dadurch gekennzeichnet, dass mindestens ein Modus vorhanden ist, in dem die Analysedaten in Echtzeit aus dem System, welches zumindest CPU, Datenspeicher, Programmspeicher und I/0-Element/-e umfasst, herausgelesen und/oder in das System hinein geschrieben werden können, so dass das System für die Analyse nicht angehalten bzw. unterbrochen werden muss .13. A method for analyzing an embedded system with an analysis device, according to at least one of claims 1 to 11, characterized in that there is at least one mode in which the analysis data in real time from the system, which at least CPU, data memory, program memory and I / 0 element (s) can be read out and / or written into the system, so that the system does not have to be stopped or interrupted for the analysis.
14. Verfahren nach Anspruch 13, dadurch gekennzeichnet, dass - der Speicherinhalt oder eine entsprechend auswertbare Information des eingebetteten Systems ganz oder teilweise in einen externen Speicher in Echtzeit kopiert wird, wobei insbesondere zuvor die Daten gepuffert werden, und/oder14. The method according to claim 13, characterized in that - The memory content or a correspondingly evaluable information of the embedded system is copied in whole or in part into an external memory in real time, in particular the data being buffered beforehand, and / or
- der Speicherinhalt eines externen Speichers (6) oder eine entsprechend auswertbare Information über den Speicherinhalt von Speicher (6) ganz oder teilweise in einen Speicher des eingebetteten Systems in Echtzeit kopiert wird, wobei insbesondere zuvor die Daten gepuffert werden.- The memory content of an external memory (6) or a correspondingly evaluable information about the memory content of memory (6) is copied in whole or in part into a memory of the embedded system in real time, in particular the data being buffered beforehand.
15. Verfahren nach Anspruch 13 oder 14, dadurch gekennzeichnet, dass der externe Speicher zur Übertragung von Daten für typische Debugging-Anwendungen verwendet wird.15. The method according to claim 13 or 14, characterized in that the external memory is used to transfer data for typical debugging applications.
16. Verfahren nach mindestens einem der Ansprüche 13 bis16. The method according to at least one of claims 13 to
15, dadurch gekennzeichnet, dass nur die für das Debugging erforderlichen Daten bei Zugriffen der CPU auf RAM 3 an den externen Speicher (6) übertragen werden.15, characterized in that only the data required for debugging are transferred to the external memory (6) when the CPU accesses RAM 3.
17. Verfahren nach mindestens einem der Ansprüche 13 bis17. The method according to at least one of claims 13 to
16, dadurch gekennzeichnet, dass Schreibzugriffe und/oder Lesezugriffe der CPU mittels eines Pufferspeichers protokolliert werden.16, characterized in that write accesses and / or read accesses of the CPU are logged by means of a buffer memory.
18. Verfahren nach Anspruch 13 bis 17, dadurch gekennzeichnet, dass Informationen über die Schreibzugriffe ohne zusatzliche CPU-Befehle in den Pufferspeicher (8) oder direkt in das Kommunikationsmodul (4) geschrieben werden und die Informationen über die Lesezugriffe mit aktiver Unterstützung der CPU in den Pufferspeicher - ab ¬18. The method according to claim 13 to 17, characterized in that information about the write accesses without additional CPU commands in the buffer memory (8) or directly in the communication module (4) are written and the information about the read accesses with active support of the CPU in the buffer memory - from ¬
geschrieben werden.to be written.
19. Verfahren nach mindestens einem der Ansprüche 13 bis19. The method according to at least one of claims 13 to
18, dadurch gekennzeichnet, dass ein Modus des eingebetteten Systems vorgesehen ist, in dem alle Schreibund/oder Lesezugriffe der CPU auf das Kommunikationsmodul umgeleitet werden.18, characterized in that a mode of the embedded system is provided in which all write and / or read accesses of the CPU to the communication module are redirected.
20. Verfahren nach mindestens einem der Ansprüche 13 bis20. The method according to at least one of claims 13 to
19, dadurch gekennzeichnet, dass ein Modus des eingebetteten Systems vorgesehen ist, in dem nur entweder die Schreibzugriffe oder die Lesezugriffe der CPU auf das Kommunikationsmodul umgeleitet werden, und die übrigen Zugriffe der CPU auf den Speicher von der CPU aktiv in den externen Speicher protokolliert werden. 19, characterized in that a mode of the embedded system is provided in which only either the write accesses or the read accesses of the CPU are redirected to the communication module, and the remaining accesses of the CPU to the memory are actively logged by the CPU into the external memory ,
EP03782193A 2002-11-22 2003-11-12 Device and method for analysing embedded systems Withdrawn EP1565825A2 (en)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE10254788 2002-11-22
DE10254788 2002-11-22
PCT/EP2003/012630 WO2004049159A2 (en) 2002-11-22 2003-11-12 Device and method for analysing embedded systems

Publications (1)

Publication Number Publication Date
EP1565825A2 true EP1565825A2 (en) 2005-08-24

Family

ID=32335768

Family Applications (1)

Application Number Title Priority Date Filing Date
EP03782193A Withdrawn EP1565825A2 (en) 2002-11-22 2003-11-12 Device and method for analysing embedded systems

Country Status (5)

Country Link
US (1) US20060150021A1 (en)
EP (1) EP1565825A2 (en)
JP (1) JP2006507586A (en)
DE (1) DE10393102D2 (en)
WO (1) WO2004049159A2 (en)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102005055229A1 (en) * 2004-11-26 2006-06-08 Continental Teves Ag & Co. Ohg Hard wired electronic digital circuit e.g. field programmable gate array, for motor vehicle`s brushless motor, has embedded system with register, where data from register and/or I/O access is logged by measuring circuit by using interface
DE102005020899A1 (en) * 2005-05-04 2006-11-16 Siemens Ag Method for preparing test coverage analysis involves testing of a program with several threads of error, which results e.g. from lack of synchronization between the threads with an conflicting access on common resources
US7725922B2 (en) * 2006-03-21 2010-05-25 Novell, Inc. System and method for using sandboxes in a managed shell
US7702400B2 (en) 2006-05-22 2010-04-20 Ideal Aerosmith, Inc. Motion controllers and simulation systems including motion controllers
WO2007139733A2 (en) 2006-05-22 2007-12-06 Ideal Aerosmith Inc. Simulation system including motion controller
US7743414B2 (en) * 2006-05-26 2010-06-22 Novell, Inc. System and method for executing a permissions recorder analyzer
US7805707B2 (en) * 2006-07-21 2010-09-28 Novell, Inc. System and method for preparing runtime checks
US7739735B2 (en) * 2006-07-26 2010-06-15 Novell, Inc. System and method for dynamic optimizations using security assertions
US7856654B2 (en) * 2006-08-11 2010-12-21 Novell, Inc. System and method for network permissions evaluation
US7823186B2 (en) * 2006-08-24 2010-10-26 Novell, Inc. System and method for applying security policies on multiple assembly caches
US20080056139A1 (en) * 2006-09-06 2008-03-06 Mentor Graphics Corporation Network traffic monitoring using embedded target-side analyzer during embedded software development
JP4856023B2 (en) * 2007-08-08 2012-01-18 パナソニック株式会社 Real-time watch apparatus and method
JP2010538338A (en) * 2007-08-31 2010-12-09 エアバス オペラシオン Electronic device board capable of executing instructions from simulation system and instructions from diagnostic module, and related simulation method
TWI388979B (en) * 2009-09-18 2013-03-11 Asustek Comp Inc Computer system and monitoring device
DE102011007437A1 (en) 2010-11-15 2012-05-16 Continental Teves Ag & Co. Ohg Method and circuit arrangement for data transmission between processor modules
CN104090833B (en) * 2014-06-20 2016-10-05 英业达科技有限公司 Server and signal resolver thereof
WO2016089416A1 (en) 2014-12-05 2016-06-09 Honeywell International Inc. Monitoring and control system using cloud services
CN107102921B (en) * 2017-03-23 2020-05-12 北京航天自动控制研究所 Digital quantity monitoring method for SoC (system on chip) with I/O (input/output) type digital quantity asynchronous port

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5771240A (en) * 1996-11-14 1998-06-23 Hewlett-Packard Company Test systems for obtaining a sample-on-the-fly event trace for an integrated circuit with an integrated debug trigger apparatus and an external pulse pin
US6142683A (en) * 1997-04-08 2000-11-07 Advanced Micro Devices, Inc. Debug interface including data steering between a processor, an input/output port, and a trace logic
US6769076B1 (en) * 2000-02-07 2004-07-27 Freescale Semiconductor, Inc. Real-time processor debug system
US6732311B1 (en) * 2000-05-04 2004-05-04 Agere Systems Inc. On-chip debugger
US6748558B1 (en) * 2000-05-10 2004-06-08 Motorola, Inc. Performance monitor system and method suitable for use in an integrated circuit
JP2002163127A (en) * 2000-11-27 2002-06-07 Mitsubishi Electric Corp Trace control circuit
DE10119265A1 (en) * 2001-04-20 2002-10-31 Infineon Technologies Ag Program controlled unit
US6834360B2 (en) * 2001-11-16 2004-12-21 International Business Machines Corporation On-chip logic analyzer

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2004049159A2 *

Also Published As

Publication number Publication date
JP2006507586A (en) 2006-03-02
WO2004049159A2 (en) 2004-06-10
DE10393102D2 (en) 2005-07-21
WO2004049159A3 (en) 2005-05-19
US20060150021A1 (en) 2006-07-06

Similar Documents

Publication Publication Date Title
EP1720100B1 (en) Method and apparatus for emulating a programmable unit
EP1565825A2 (en) Device and method for analysing embedded systems
DE69915377T2 (en) ON-CHIP TROUBLESHOOTING SYSTEM
DE4313594C2 (en) microprocessor
DE19742577C1 (en) In-circuit emulation circuit for microcontroller
EP1248198B1 (en) Program-controlled unit with emulation units
DE60023882T2 (en) System on a chip with reprogrammable tester, debugger and bus monitor
DE2328058A1 (en) DIGITAL DATA PROCESSING ARRANGEMENT
DE69815006T2 (en) Data processing unit with troubleshooting options
EP0104635A2 (en) Digital computer test method and configuration
DE102009058652A1 (en) Method for influencing a control unit and manipulation unit
EP1716490B1 (en) Method and device for analyzing integrated systems for critical safety computing systems in motor vehicles
EP0108414B1 (en) Device for testing a large scale integrated microprogramme-controlled electronic component
DE3037475A1 (en) INTERFACE CIRCUIT ARRANGEMENT FOR A DATA PROCESSING SYSTEM
DE102004043063B4 (en) Method for operating a semiconductor device with a test module
DE19903302B4 (en) Method and device for checking the function of a computer
CH694927A5 (en) Method and apparatus for fault analysis of digital logic Saddle obligations ..
DE19544723C2 (en) Processor analysis system
EP1248195B1 (en) Test of connection state between a programmable unit and a circuit
DE19735163A1 (en) Integrated electronic component with hardware fault input for testing
DE4142161C2 (en) Bus emulation device
DE102017116304B4 (en) CONTROL SYSTEM AND METHOD FOR PERFORMING AN OPERATION
EP1365325B1 (en) Device for in-circuit-emulation of a programmable unit
DE102020111261A1 (en) FIELD ADAPTABLE IN-SYSTEM TEST MECHANISMS
DE10116864A1 (en) Method for emulating a program-controlled unit

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

AK Designated contracting states

Kind code of ref document: A2

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LI LU MC NL PT SE SK TR

17P Request for examination filed

Effective date: 20051121

RBV Designated contracting states (corrected)

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR IE IT LI LU MC NL PT SE SK TR

RBV Designated contracting states (corrected)

Designated state(s): DE FR IT

RIN1 Information on inventor provided before grant (corrected)

Inventor name: KIRSCH, TASSO

Inventor name: VOSS, BURKART

Inventor name: KIRSCHBAUM, ANDREAS

Inventor name: TRASKOV, ADRIAN

Inventor name: EHRENBERG, THORSTEN

RIN1 Information on inventor provided before grant (corrected)

Inventor name: EHRENBERG, THORSTEN

Inventor name: KIRSCH, TASSO

Inventor name: TRASKOV, ADRIAN

Inventor name: KIRSCHBAUM, ANDREAS

Inventor name: VOSS, BURKART

STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION HAS BEEN WITHDRAWN

18W Application withdrawn

Effective date: 20070215