WO2009097637A1 - Einrichtung zum koordinierten testen und zur fehlersuche in verteilten eingebetteten mikroprozessorsystemen - Google Patents

Einrichtung zum koordinierten testen und zur fehlersuche in verteilten eingebetteten mikroprozessorsystemen Download PDF

Info

Publication number
WO2009097637A1
WO2009097637A1 PCT/AT2009/000030 AT2009000030W WO2009097637A1 WO 2009097637 A1 WO2009097637 A1 WO 2009097637A1 AT 2009000030 W AT2009000030 W AT 2009000030W WO 2009097637 A1 WO2009097637 A1 WO 2009097637A1
Authority
WO
WIPO (PCT)
Prior art keywords
unit
debug
test
recording
clock
Prior art date
Application number
PCT/AT2009/000030
Other languages
English (en)
French (fr)
Inventor
Roland HÖLLER
Original Assignee
Verein Fachhochschule Technikum Wien
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 Verein Fachhochschule Technikum Wien filed Critical Verein Fachhochschule Technikum Wien
Publication of WO2009097637A1 publication Critical patent/WO2009097637A1/de

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • 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/26Functional testing
    • G06F11/27Built-in tests
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3656Software debugging using additional hardware using a specific debug interface

Definitions

  • the invention relates to a device for coordinated testing and troubleshooting in distributed embedded microprocessor systems having a plurality of embedded system nodes connected via a communications network, wherein the system nodes each comprise a computing unit, a clock module, a test unit, a debug unit and a Communication interface for communication with the other system nodes have over the communication network.
  • Real-time debugging usually provides the ability to process the code line by line while monitoring the states of various variables. Often, additional breakpoints can be set and other options can be used, which greatly simplify the work with the code.
  • the difficulty with distributed systems is that the code is not just executed on one computer as usual, but on a variety of system nodes. Thus, a corresponding tool must support remote debugging and request debugging information from the other node.
  • troubleshooting consists of evaluating recorded information. This information is usually obtained with the help of recording units (trace units) or generated by the applications themselves.
  • US 5,812,830 describes a simple circuit for troubleshooting in microprocessors.
  • the presented system also includes various triggering mechanisms for storing internal processor states.
  • DE 102004052861 A1 describes a diagnostic system for the detection of faulty states, which is realized as a separate system. Message paths are mapped in the diagnostic system. Synchronized clocks, support for a variety of nodes, and the ability to play recorded data are not used.
  • WO 2004/023302 A2 relates to a method for detecting errors in a distributed real-time computer system.
  • the periodic dispatch of a status bit eg via a turn-based communication network, makes it possible to detect the drop of a node and to react accordingly.
  • No devices or the like are listed, which search for the cause of a fault (eg by recording or playback data, or through special troubleshooting functions).
  • EP 943995 A2 describes a processor with an external "real-time instruction insertion".
  • the processor includes other instruction sources, such as a fetch loop, an interrupt register, pipeline protection, and allows external data access.
  • the chip does not include a test unit or playback unit. There is also a performance penalty due to the inclusion of NoOps in the execution process to allow data access.
  • the document WO 2005/073855 A1 relates to a data processing system with a debug module, which delivers real-time debug messages to a DMA control device.
  • US Pat. No. 6,769,076 relates to a "real-time processor debug system" which enables the recording of programs and data of a virtual bus of an embedded system.
  • the proposal includes the reduction of power consumption and the reduction of the impact on the performance of the overall system through the debug interface.
  • An integrated logic is used which stores the virtual bus according to the address and operating mode. This patent is thus directed to recording the internal virtual bus of an embedded system. However, this patent does not address distributed debugging of embedded systems.
  • U.S. Patent No. 7,080,283 is directed to a method that enables real time recording and debugging of multiple processor cores in a system on a chip. It is based on a dedicated debug output of each single processor core.
  • the debug information is stored by one or more recording storage nodes for each processor core.
  • the recording storage cores are interconnected to form a daisy chain.
  • the daisy Chain ends at a record control module which stores the desired debug information.
  • the recording control module transmits the information to an external host agent via a JTAG interface.
  • the debug data may be compressed via compression nodes located between the processor cores and the at least one recording storage node located between the cores. All this is in a SoC.
  • US 2007/0168731 A1 describes a debug method for microcontrollers, which is aimed at low impact and low costs. It is proposed to use hardware support for 2-wire high speed communication in future microcontroller applications. This 2-wire communication interface should be used to transfer debug data between the target microcontroller and a link microcontroller.
  • the link microcontroller is on the same chip as the target microcontroller, but is configured by an EEPROM fuse as a link microcontroller.
  • the link microcontroller executes an interface translation program to establish communication between the target microcontroller and the host computer.
  • European Patent No. 764903 relates to an on-chip debug port for VLSI processors. It includes a debug circuit in the same integrated circuit as the processor to be addressed. The debug circuit is controlled by an external debug workstation connected to the circuit via an external debug bus and an external interface module.
  • the debug circuit includes a debug bus unit that connects to the external debug bus, a plurality of units, and two internal buses that connect the units to each other and to the debug bus unit. Each unit of the plurality of units in turn is connected to specific parts of the VLSI processor. With this configuration, it is possible to either send debug commands to at least one of the plurality of units or debug information from the unit. to obtain. Options are possible, such as sending / monitoring instructions from the processor, "real-time insertion / extraction" of task data related to executing tasks on the processor and monitoring program execution.
  • U.S. Patent No. 6,324,684 describes a processor having a debug circuit that can communicate with a debug host.
  • the host can send "debug_halt, debug_step, debug_run- and debug_release" commands.
  • the processor may also process interrupts during debug mode so that the system can be searched for errors in operation without the use of a debug monitor, which would use more RAM, ROM, and system overhead because of contextual storage and the like ,
  • US Pat. No. 6,470,388 describes a system that deals with debugging and logging services for a distributed computing environment consisting of workstations, servers and other network devices.
  • the logging services include conventional formatting and conventional storage of information for debugging purposes.
  • the logging services can send trace and debug information to a central logging facility where the data is time-stamped and stored in a database.
  • the described system involves the logging of debug information in a distributed computer system but has no coordinated single-step, timing or hardware level functions.
  • US 2006/0080575 A1 discloses a clock synchronization with a main computer, calculation of the drift value, calculation of the transmission delay, hardware timestamping in an optional sniffer unit and optional optical connections between nodes. It does not disclose the support of hardware tests with test, trace or playback functions, BIST, JTAG or coordinated playback and coordinated single-step.
  • US 2007/0061628 A1 describes a method for examining remote systems and collecting in real time debug data in a multi-node system.
  • devices are monitored with probe machines that detect triggering conditions that cause the nodes to stop automatically and the available state data to be collected.
  • this trigger condition is set statically and the operator is not able to perform debugging operators, such as coordinated single-step.
  • US Patent No. 5,642,478 describes a method to acquire trace data in a distributed system.
  • a node controller that performs the task of communicating with other nodes in the system includes detection logic that stores trace data in internal memory buffers. Such trace data are then routed regularly to an external memory. The beginning and the end of the trace data acquisition are triggered by other subcomponents of the system.
  • the present invention now aims to enable distributed debugging of embedded systems and in particular to ensure coordinated access to test structures.
  • the invention further aims at not increasing the processor load of the microprocessors as much as possible by the debugging activities. Furthermore, the testing and the error search should be possible without a separate interface to the system node.
  • the device of the type mentioned above for coordinated testing and error detection in distributed embedded microprocessor systems is essentially characterized in that means for synchronizing the clock modules of the system nodes are provided, that the system nodes each have a discharge unit connected to the test unit and the debug unit, so that data packets arriving or departing via the communication interface and used for testing and troubleshooting can be sent or received and, if necessary, processed via the unloading unit; the clock modules interact with the respective test unit and the debug unit to insert timestamps into data packets and / or to trigger test and / or debug operations in response to clock signals.
  • a relief unit provides the ability to extract control data pertaining to the test and debug unit and to insert data into the communication stream for analysis or dispatch, thus eliminating the need for a dedicated interface to the test and debug units , Special packets are thus filtered out of the communication stream and processed by the unloading unit, so that the loading of the remaining components of the individual system nodes and in particular the processor load of the microprocessors is not increased.
  • the debugging can also be controlled by the invention without any process intervention. So you can, for example, a processor that has crashed, remotely re-boot and put in a working state.
  • the training is preferably further developed in such a way that at least one system node has a recording unit for recording system processes, such as arithmetic operations of the arithmetic unit or system bus activities, which is connected to the unloading unit, so that via the communication interface arrives or outgoing, the recording unit concerned data packets can be sent or received via the discharge unit and possibly processed.
  • a recording unit for recording system processes such as arithmetic operations of the arithmetic unit or system bus activities, which is connected to the unloading unit, so that via the communication interface arrives or outgoing, the recording unit concerned data packets can be sent or received via the discharge unit and possibly processed.
  • the clock module with the recording unit for triggering and / or termination of a recording in response to clock signals interacts so that system operations in several system accounts can be recorded coordinated and used in the sequence for troubleshooting.
  • the training is preferably developed in such a way that at least one system node has a playback unit for reproducing recorded system operations or program instructions which is connected to the unloading unit, so that via the communication interface incoming or outgoing, the playback unit related data packets via the discharge unit can be sent or received and possibly processed.
  • the design can advantageously be such that the clock module interacts with the playback unit to begin and / or end playback in response to clock signals.
  • the arithmetic unit, the test unit, the debug unit and optionally the recording and the playback unit are connected to a common system bus, which advantageously also includes the clock module the system bus is connected.
  • test unit is formed in integrated circuits as a self-test unit for this.
  • test unit is formed in integrated circuits as access to test structures in the entire embedded system node, wherein the test unit as JTAG controller (ie "JTAG For example, the configuration of an FPGA or the updating of software via the unloading unit, but also testing of other chips, could be a practical application.
  • a control and control unit is provided in the communication network, which is designed to send test, debug, record, and / or playback commands to individual system nodes.
  • Fig. 1 is a functional block diagram of a digital embedded system incorporating the apparatus and method of the present invention
  • FIG. 2 is a functional block diagram illustrating the emptying unit of the embedded system of FIG. 1 in accordance with the present invention
  • FIG. 3 is a functional block diagram illustrating the clock unit of the embedded system of FIG. 1 in accordance with the present invention
  • FIG. 4 is a functional block diagram illustrating the embedded system test unit of FIG. 1 in accordance with the present invention.
  • Fig. 5 is a functional block diagram illustrating the playback system of the embedded system of Fig. 1 according to the present invention
  • Fig. 6 is a functional block diagram illustrating the trace system of the embedded system of FIG. 1 in accordance with the present invention
  • Fig. 7 is a functional block diagram illustrating the embedded system debug unit of Fig. 1 according to the present invention
  • Fig. 1 shows a digital embedded system 12 which is improved according to the present invention.
  • the node system 12 includes a system bus 28, a system memory 18, one or more computing units or microprocessors 14, a communication interface 16, and other interfaces 40, such as sensors or actuators.
  • the system communicates via the communications controller 26 of the communication interfaces 16 with other system nodes of a distributed multi-node system connected by a network 20.
  • some of the traffic, and in particular network packets with a certain type of content are not forwarded to the microprocessor by the communications controller 26 but are transmitted to a dedicated unloading unit 24.
  • Fig. 2 shows details of the relief unit according to the present invention.
  • a frame filter 72 allows the traffic 64 to be picked out.
  • the packets are stored in a receive buffer 70, and a special microcontroller 68 in the unload unit extracts the data and addresses of the packet and outputs this data via the bus interface 66 to the bus, which provides the unload unit with the other units 30, 32, 34 , 36 and 38 connects.
  • a corresponding packet is placed in the transmit buffer 74 by the microprocessor 68 and inserted into the traffic 64 in sequence.
  • FIG. 3 shows the clock unit according to the present invention.
  • a clock unit 82 in particular an addition-based clock unit, is controlled by an algorithm in the control unit 88 and a bus interface 86, which has to be synchronized with other clocks in the multi-node system.
  • An event trigger unit 84 allows events to be triggered at given times or timestamped to activities.
  • On-chip BIST structures 110, a JTAG controller 106 and a memory BIST provide maximum functionality for a node. This unit is addressed via a bus interface 104.
  • Fig. 5 shows the reproducing unit according to the present invention.
  • a playback buffer 126 may store the previous messages and a playback controller 128 may insert these messages into the network traffic for debug purposes in the node's microprocessor.
  • the unit is configured via a bus interface 124.
  • Fig. 6 shows the recording or tracing unit according to the present invention.
  • a recording memory 146 is used to record bus traffic or microprocessor activities of interest. This function is controlled by the trace control 148, which is configured via a bus interface 144.
  • FIG. 7 shows the debugging unit according to the present invention.
  • a debug interface 170 has access to debug control lines 168 of the node's microprocessor to obtain full debug access via the debug control 166.
  • the unit is configured via a bus interface 164.
  • the units for the clock 30, the test structures 32, the rendering functions 34, the trace functions 36 and the debug functions are close to each other and as a single unit for coordinated testing, coordinated playback and co-ordinated debugging.
  • the inventive device for coordinated testing, debugging, data recording and data reproduction in distributed embedded microprocessor systems does not require its own interface.
  • Debug capabilities are integrated into embedded system nodes of a distributed multi-node system to provide access to test infrastructure (eg, Boundary Scan or Built-In Seif Test), debugger processor facilities (eg, the processor's Background Debugging Module), system event records (eg, system bus activity dumps) into a local cache), and to obtain data rendering (eg, system bus or network traffic) of each node.
  • test infrastructure eg, Boundary Scan or Built-In Seif Test
  • debugger processor facilities eg, the processor's Background Debugging Module
  • system event records eg, system bus activity dumps
  • data rendering eg, system bus or network traffic
  • the unloading unit extracts control data concerning the units for testing, debugging, data recording and data reproduction, and inserts data into the communication data stream for analysis or transmission.
  • a separate interface to the units of the institution is not necessary.
  • the exact coordination of all nodes of the multi-node system is carried out by synchronization of the local clocks, through which the units for test, troubleshooting, data recording and data playback are triggered.
  • microprocessor systems are to be understood within the scope of the invention, systems of microcontrollers.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

Bei einer Einrichtung zum koordinierten Testen und zur Fehlersuche in verteilten eingebetteten Mikroprozessorsystemen mit einer Mehrzahl von über ein Kommunikationsnetz (20) verbundenen, eingebetteten Systemknoten (12) weisen die Systemknoten (12) jeweils eine Recheneinheit (14), ein Uhrenmodul (30), eine Testeinheit (32), eine Debug-Einheit (38) und eine Kommunikationsschnittstelle (16) zur Kommunikation mit den jeweils anderen Systemknoten (12) über das Kommunikationsnetz (20) auf. Die Uhrenmodule (30) der Systemknoten (12) sind synchronisiert. Weiters weisen die Systemknoten (12) jeweils eine mit der Testeinheit (32) und der Debug-Einheit (38) verbundene Entlastungseinheit (24) auf, sodass über die Kommunikationsschnittstelle (16) eintreffende oder abgehende, dem Testen und der Fehlersuche dienende Datenpakete über die Entlastungseinheit (24) versendet bzw. empfangen und ggf. verarbeitet werden können, wobei die Uhrenmodule (30) mit der jeweiligen Testeinheit (32) und der Debug-Einheit (38) zum Einfügen von Zeitstempeln in Datenpakete und/oder zum Auslösen von Test- und/oder Debug-Vorgängen in Abhängigkeit von Uhrensignalen zusammenwirken.

Description

Einrichtung zum koordinierten Testen und zur Fehlersuche in verteilten eingebetteten Mikroprozessorsystemen
Die Erfindung betrifft eine Einrichtung zum koordinierten Tes- ten und zur Fehlersuche in verteilten eingebetteten Mikroprozessorsystemen mit einer Mehrzahl von über ein Kommunikations- netz verbundenen, eingebetteten Systemknoten, wobei die Systemknoten jeweils eine Recheneinheit, ein Uhrenmodul, eine Testeinheit, eine Debug-Einheit und eine Kommunikationsschnittstel- Ie zur Kommunikation mit den jeweils anderen Systemknoten über das Kommunikationsnetz aufweisen.
Gesamtzustände und Abläufe können in einem verteilten System oft im Nachhinein nicht nachvollzogen werden. Eine Diagnose im Fehlerfall wird hierdurch erschwert. Verteilte Systeme teilen sich keinen gemeinsamen Speicher und müssen ihre gesamte Kommunikation deshalb durch das Versenden und Empfangen von Nachrichten realisieren. Eine solche Kommunikation ist sehr fehleranfällig, so dass es zu Problemen durch Verfälschung von Nach- richten, Duplizierung von Nachrichten und den Verlust von Nachrichten kommen kann. Außerdem ist die Nachrichtenlaufzeit unvorhersehbar, so dass man nie mit Sicherheit vorhersehen kann, ob ein System ausgefallen ist oder ob es nur eine lange Antwortzeit hat .
In verteilten Systemen ist es sehr schwierig oder in der Praxis sogar unmöglich, eine genaue Programmabfolge zu definieren. Einige Entwicklungssysteme verzichten daher auf den Einsatz von Laufzeit-Debuggern, lassen aber in der Regel die Definition von Haltepunkten zu, an dem der Zustand aller Variablen nach dem Programmstopp analysiert werden kann.
Das Echtzeit-Debbuging bietet in der Regel die Möglichkeit, den Code Zeile für Zeile abzuarbeiten und dabei die Zustände der verschiedensten Variablen zu überwachen. Häufig können zusätzlich Haltepunkte festgelegt und weitere Optionen genutzt werden, welche die Arbeit mit dem Code wesentlich vereinfachen. Die Schwierigkeit bei verteilten Systemen ist nun, dass der Code nicht wie gewohnt einfach nur auf einem Rechner ausgeführt wird, sondern auf verschiedensten Systemknoten. So muss ein entsprechendes Tool entferntes Debugging unterstützen und De- bugging-Informationen von dem jeweils anderen Knoten anfordern.
Beim Offline-Debugging hingegen besteht die Fehlersuche in der Auswertung aufgezeichneter Informationen. Diese Informationen werden in der Regel mit Hilfe von Aufzeichnungseinheiten (tra- ce-Einheiten) gewonnen bzw. von den Anwendungen selbst generiert.
Es sind bereits verschiedene Vorschläge bekannt geworden, um die Fehlersuche sowie das Testen, Überwachen und Wiedergeben von Programmanweisungen zu verbessern. In diesem Zusammenhang wurde auch das Thema der Uhrensynchronisation erforscht.
Die US 5,812,830 beschreibt eine einfache Schaltung zur Fehlersuche in Mikroprozessoren. Das vorgestellte System beinhaltet auch verschiedene Auslösemechanismen zur Abspeicherung interner Prozessorzustände .
Die DE 102004052861 Al beschreibt ein Diagnosesystem zur Erkennung von Fehlzuständen, das als separates System realisiert wird. Es werden Nachrichtenwege im Diagnosesystem abgebildet. Synchronisierte Uhren, Unterstützung für eine Vielzahl von Knoten, und die Möglichkeit der Wiedergabe aufgezeichneter Daten werden nicht verwendet.
Die WO 2004/023302 A2 betrifft ein Verfahren zur Erkennung von Fehlern in einem verteilten EchtzeitcomputerSystem. Der periodische Versand eines Statusbits, z.B. über ein rundenbasiertes Kommunikationsnetz , erlaubt es den Absturz eines Knotens zu erkennen und entsprechend zu reagieren. Es werden keine Ein- richtungen oder dergleichen angeführt, die die Suche nach der Ursache eines Fehlers (z.B. durch Aufzeichnung oder Wiedergabe von Daten, oder durch spezielle Funktionen zur Fehlersuche) erkennen lassen.
Die EP 943995 A2 beschreibt einen Prozessor mit einer externen "real-time instruction insertion". Der Prozessor umfasst weitere Instruktionsquellen, wie eine Abholschleife, ein Unterbrechungsregister, einen Pipeline-Schutz und er ermöglicht externen Datenzugriff. Der Chip umfasst keine Testeinheit oder Wiedergabeeinheit. Es gibt auch eine Beeinträchtigung der Leistung wegen des Einfügens von NoOps in den Ausführungsprozess, um den Datenzugriff zu ermöglichen.
Das Dokument WO 2005/073855 Al betrifft ein Datenverarbeitungssystem mit einem Debug-Modul, welches real-time-Debug-Nach- richten an eine DMA-Steuervorrichtung liefert.
Das US-Patent Nr. 6,769,076 betrifft ein "real-time processor debug system", welches die Aufzeichnung von Programmen und Daten eines virtuellen Bus eines eingebetteten Systems ermög- licht. Der Vorschlag umfasst die Reduktion der Stromaufnahme und die Reduktion der Auswirkung auf die Leistung des Gesamtsystems durch die Debug-Schnittstelle. Es wird eine integrierte Logik verwendet, welche den virtuellen Bus entsprechend der Adresse und des Betriebsmodus abspeichert. Dieses Patent ist somit auf das Aufzeichnen des internen virtuellen Bus eines eingebetteten Systems gerichtet. Dieses Patent befasst sich allerdings nicht mit verteiltem Debugging von eingebetteten Systemen.
Das US-Patent Nr. 7,080,283 ist auf ein Verfahren gerichtet, welches die Echtzeit-Aufzeichnung und Fehlerbehebung von Mehrfachprozessorkernen in einem System auf einem Chip ermöglicht. Es basiert auf einer zweckbestimmten Debug-Ausgabe jedes einzelnen Prozessorkernes. Die Debug-Information wird von einem oder mehreren Aufzeichnungsspeicherknoten für jeden Prozessorkern gespeichert. Die Aufzeichnungsspeicherkerne wiederum sind miteinander verbunden und bilden eine Daisy-Chain. Die Daisy- Chain endet bei einem Aufzeichnungskontrollmodul, welches die gewünschte Debug-Information speichert. Das Aufzeichnungskontrollmodul überträgt die Information auf einen externen Host- Agent über ein JTAG-Interface. Weiters können die Debug-Daten über Kompressionsknoten komprimiert werden, welche zwischen den Prozessorkernen und dem zumindest einen Aufzeichnungsspeicherknoten, welcher zwischen den Kernen angeordnet ist, liegen. All dieses befindet sich in einer SoC.
Die US 2007/0168731 Al beschreibt ein Debug-Verfahren für Mik- rokontroller, die auf geringe Auswirkung und geringe Kosten gerichtet ist. Es wird vorgeschlagen, eine Hardware-Unterstützung für 2- Kabelhochgeschwindigkeitskommunikation in zukünftigen Mikrokontrolleranwendungen zu verwenden. Diese 2- Kabelkommunikationsschnittstelle soll verwendet werden, um Debug-Daten zwischen dem Zielmikrokontroller und einem Linkmikro- kontroller zu übertragen. Der Linkmikrokontroller ist auf demselben Chip wie der Zielmikrokontroller, ist jedoch durch eine EEPROM-Sicherung als Linkmikrokontroller konfiguriert. Der Linkmikrokontroller führt ein Schnittstellenübersetzungsprogramm aus, um eine Kommunikation zwischen dem Zielmikrokontroller und dem Host-Computer herzustellen.
Das europäische Patent Nr. 764903 betrifft einen "on-chip debug port" für VLSI-Prozessoren. Es umfasst eine Debug-Schaltung im gleichen integrierten Schaltkreis wie der anzusprechende Prozessor. Der Debug-Schaltkreis wird durch eine externe Debug- Workstation gesteuert, welche über einen externen Debug-Bus und ein externes Schnittstellenmodul mit der Schaltung verbunden ist. Die Debug-Schaltung umfasst eine Debug-Buseinheit, welche die Verbindung zum externen Debug-Bus schafft, eine Mehrzahl von Einheiten und zwei interne Busse, welche die Einheiten miteinander und mit der Debug-Buseinheit verbinden. Jede Einheit der Mehrzahl von Einheiten wiederum ist mit spezifischen Teilen des VLSI-Prozessors verbunden. Mit dieser Konfiguration ist es möglich, entweder Debug-Befehle zu zumindest einer der Mehrzahl von Einheiten zu senden oder Debug-Information von den Einhei- ten zu erhalten. Es sind Optionen möglich, wie z.B. Senden/Überwachen von Anweisungen des Prozessors, "real-time- Insertion/Extraktion" von Task-Daten, welche mit der Ausführung von Tasks auf dem Prozessor und der Überwachung des Programmab- laufs betreffen.
Das US-Patent Nr. 6,324,684 beschreibt einen Prozessor, welcher eine Debug-Schaltung aufweist, die mit einem Debug-Host kommunizieren kann. Der Host kann "debug_halt-, debug_step-, de- bug_run- und debug_release"-Befehle senden. Der Prozessor kann weiters Interrupts während des Debug-Modus so verarbeiten, dass das System in Betrieb nach Fehlern durchsucht werden kann, ohne die Verwendung eines Debug-Monitors, welcher wegen der Speicherung von Kontext und ähnlichem mehr RAM, ROM und System- Overhead benutzen würde.
Das US-Patent Nr. 6,470,388 beschreibt ein System, welches sich mit Debugging und Protokollierungsdiensten für eine verteilte Computerumgebung, die aus Workstations, Servern und anderen Netzwerkeinrichtungen besteht, beschäftigt. Die Protokollie- rungsdienste beinhalten herkömmliches Formatieren und herkömmliche Speicherung von Information für die Zwecke des Debugging. Die Protokollierungsdienste können Trace- und Debug-Information an eine zentrale Protokollierungseinrichtung senden, wo die Daten mit einem Zeitstempel versehen und in einer Datenbank gespeichert werden. Das beschriebene System umfasst die Protokollierung von Debug-Information in einem verteilten Computersystem, hat jedoch keine koordinierten Single-Step-, Zeit- bestimmungs- oder Hardware-Level-Funktionen.
Die US 2006/0080575 Al offenbart eine Uhrensynchronisation mit einem Hauptcomputer, Berechnung des Drift-Wertes, Berechnung der Übertragungsverzögerung, Hardware-Timestamping bei einer optionalen Sniffer-Einheit und optionale optische Verbindungen zwischen Knoten. Sie offenbart nicht die Unterstützung von Hardware-Tests mit Test-, Trace- oder Wiedergabefunktionen, BIST, JTAG oder koordinierte Wiedergabe und koordiniertes Single-Step.
Die US 2007/0061628 Al beschreibt ein Verfahren zur Untersu- chung entfernter Systeme und das Sammeln in Echtzeit von Debug- Daten in einem Mehrknotensystem. Bei diesem Verfahren werden Bausteine mit Sondenmaschinen überwacht, welche Auslösebedingungen detektieren, die ein automatisches Anhalten der Knoten und das Sammeln der verfügbaren Zustandsdaten verursachen. Die- εe Auslösebedingung werden jedoch statisch gesetzt und der Betreiber ist nicht in der Lage Debugging-Operatoren, wie beispielsweise koordiniertes Single-Step durchzuführen.
Das US-Patent Nr. 5,642,478 beschreibt ein Verfahren, um Trace- Daten in einem verteilten System zu akquirieren. Bei diesem Verfahren umfasst eine Knotensteuerung, welche die Aufgabe der Kommunikation mit anderen Knoten in dem System ausführt, eine Erfassungslogik, welche Trace-Daten in internen Speicherpuffern speichert. Derartige Trace-Daten werden dann regelmäßig einem externen Speicher zugeführt. Der Beginn und das Ende der Trace- Daten-Akquirierung werden durch andere Subkomponenten des Systems ausgelöst.
Die vorliegende Erfindung zielt nun darauf ab, verteiltes De- bugging von eingebetteten Systemen zu ermöglichen und insbesondere einen koordinierten Zugang zu Teststrukturen sicherzustellen. Die Erfindung zielt weiters darauf ab, die Prozessorbelastung der Mikroprozessoren durch die Debugging-Aktivitäten möglichst nicht zu erhöhen. Weiters soll das Testen und die Feh- lersuche ohne eine eigene Schnittstelle an den Systemknoten möglich sein.
Zur Lösung dieser Aufgaben zeichnet sich die Einrichtung der eingangs genannten Art zum koordinierten Testen und zur Fehler- suche in verteilten eingebetteten Mikroprozessorsystemen im wesentlichen dadurch aus, dass Mittel zur Synchronisation der Uhrenmodule der Systemknoten vorgesehen sind, dass die System- knoten jeweils eine mit der Testeinheit und der Debug-Einheit verbundene Entlastungseinheit aufweisen, sodass über die Kommu- nikationsschnittstelle eintreffende oder abgehende, dem Testen und der Fehlersuche dienende Datenpakete über die Entlastungs- einheit versendet bzw. empfangen und ggf. verarbeitet werden können, und dass die Uhrenmodule mit der jeweiligen Testeinheit und der Debug-Einheit zum Einfügen von Zeitstempeln in Datenpakete und/oder zum Auslösen von Test- und/oder Debug-Vorgängen in Abhängigkeit von Uhrensignalen zusammenwirken. Dadurch, dass Mittel zur Synchronisation der Uhrenmodule der Systemknoten vorgesehen sind, kann systemweit über eine Vielzahl von Knoten eine koordinierte Aufzeichnung oder Wiedergabe komplexer Vorgänge oder ein koordinierter Zugang zu Teststrukturen erreicht werden. Durch das Vorsehen einer Entlastungseinheit wird die Möglichkeit geschaffen Kontrolldaten, welche die Test- und Debug-Einheit betreffen, zu extrahieren und Daten zur Analyse oder zum Versenden in den Kommunikationsström einzufügen, wodurch eine eigene Schnittstelle zur Test- und zur Debug-Einheit nicht erforderlich ist. Es werden somit spezielle Pakete aus dem Kommunikationsstrom herausgefiltert und von der Entlastungseinheit verarbeitet, sodass die Belastung der übrigen Komponenten der einzelnen Systemknoten und insbesondere die Prozessorbelastung der Mikroprozessoren nicht erhöht wird. Das Debugging kann durch die Erfindung weiters völlig ohne Prozes- soreingriff gesteuert werden. Damit kann man beispielsweise einen Prozessor, der abgestürzt ist, entfernt wieder re-booten und in einen lauffähigen Zustand setzen.
Um zusätzliche Funktionalitäten zu realisieren, ist die Ausbil- düng bevorzugt derart weitergebildet, dass wenigstens ein Systemknoten eine Aufzeichnungseinheit zum Aufzeichnen von Systemvorgängen, wie z.B. von Rechenvorgängen der Recheneinheit oder von Systembusaktivitäten aufweist, die mit der Entlastungseinheit verbunden ist, sodass über die Kommunikationsschnittstelle eintreffende oder abgehende, die Aufzeichnungseinheit betreffende Datenpakete über die Entlastungseinheit versendet bzw. empfangen und ggf. verarbeitet werden können. Dabei kann bevor- zugt vorgesehen sein, dass das Uhrenmodul mit der Aufzeichnungseinheit zum Auslösen und/oder Beenden einer Aufzeichnung in Abhängigkeit von Uhrensignalen zusammenwirkt, sodass Systemvorgänge in mehreren Systemkonten koordiniert aufgezeichnet und in der Folge für eine Fehlersuche herangezogen werden können.
Bei der Fehlersuche kann es oft von Vorteil sein, wenn aufgezeichnete oder vorgegebene Programmanweisungen oder Programmvorgänge gezielt einzelnen Systemkomponenten zur Verfügung ge- stellt bzw. "vorgespielt" werden, um das Verhalten der jeweiligen Komponenten analysieren zu können. In diesem Zusammenhang ist die Ausbildung bevorzugt derart weitergebildet, dass wenigstens ein Systemknoten eine Wiedergabeeinheit zum Wiedergeben von aufgezeichneten Systemvorgängen oder von Programmanwei- sungen aufweist, die mit der Entlastungseinheit verbunden ist, sodass über die Kommunikationsschnittstelle eintreffende oder abgehende, die Wiedergabeeinheit betreffende Datenpakete über die Entlastungseinheit versendet bzw. empfangen und ggf. verarbeitet werden können. Zur koordinierten Wiedergabe in mehreren Systemknoten kann die Ausbildung hierbei mit Vorteil derart getroffen sein, dass das Uhrenmodul mit der Wiedergabeeinheit zum Beginnen und/oder Beenden einer Wiedergabe in Abhängigkeit von Uhrensignalen zusammenwirkt.
Um die Kommunikation zwischen den einzelnen Komponenten zu vereinfachen, ist bevorzugt vorgesehen, dass die Recheneinheit, die Testeinheit, die Debug-Einheit sowie ggf. die Aufzeich- nungs- und die Wiedergabeeinheit an einen gemeinsamen Systembus angeschlossen sind, wobei mit Vorteil auch das Uhrenmodul an den Systembus angeschlossen ist.
Weiters kann vorgesehen sein, dass die Testeinheit in integrierten Schaltkreisen als Selbsttesteinheit für diese ausgebildet ist. Alternativ kann vorgesehen sein, dass die Testeinheit in integrierten Schaltkreisen als Zugang zu Teststrukturen im ganzen eingebetteten Systemknoten ausgebildet ist, wobei man die Testeinheit auch als JTAG Kontroller (also gleichsam "JTAG over Ethernet" ) für außerhalb des ICs liegende Bausteine verwenden kann. Praktische Anwendung wäre z.B. die Konfiguration eines FPGAs oder das Updaten von Software über die Entlastungseinheit, aber auch Test anderer Chips.
Gemäß einer bevorzugten Weiterbildung ist vorgesehen, dass eine Kontroll- und Steuereinheit im Kommunikationsnetz vorgesehen ist, welche zum Versenden von Test-, Debug-, Aufzeichnungs-, und/oder Wiedergabebefehlen an einzelne Systemknoten ausgebil- det ist.
Die Erfindung wird nun anhand von in den Zeichnungen dargestellten Ausführungsbeispielen näher erläutert. Dabei zeigt:
Fig. 1 ein funktionelles Blockdiagramm eines digitalen eingebetteten Systems, welches die Vorrichtung und das Verfahren der vorliegenden Erfindung enthält;
Fig. 2 ein funktionelles Blockdiagramm, welches die Entlas- tungseinheit des eingebetteten Systems von Fig. 1 entsprechend der vorliegenden Erfindung illustriert;
Fig. 3 ein funktionelles Blockdiagramm, welches die Uhreneinheit des eingebetteten Systems der Fig. 1 entsprechend der vor- liegenden Erfindung illustriert;
Fig. 4 ein funktionelles Blockdiagramm, welches die Testeinheit des eingebetteten Systems der Fig. 1 entsprechend der vorliegenden Erfindung illustriert;
Fig. 5 ein funktionelles Blockdiagramm, welches die Wiedergabeeinheit des eingebetteten Systems der Fig. 1 entsprechend der vorliegenden Erfindung illustriert;
Fig. 6 ein funktionelles Blockdiagramm, welches die Aufzeich- nungs- bzw. Trace-Einheit des eingebetteten Systems der Fig. 1 entsprechend der vorliegenden Erfindung illustriert; und Fig. 7 ein funktionelles Blockdiagramm, welches die Debug- Einheit des eingebetteten Systems der Fig. 1 entsprechend der vorliegenden Erfindung illustriert;
Fig. 1 zeigt ein digitales eingebettetes System 12, welches entsprechend der vorliegenden Erfindung verbessert ist. Das Knotensystem 12 enthält einen Systembus 28, einen Systemspeicher 18, einen oder mehrere Recheneinheiten bzw. Mikroprozesso- ren 14, eine Koiranunikationsschnittstelle 16 und andere Schnittstellen 40, wie beispielsweise Sensoren oder Aktuatoren. Während des normalen Betriebes kommuniziert das System über die KommunikationsSteuerung 26 der Kommunikationsschnittsteile 16 mit anderen Systemknoten eines verteilten Mehrknotensystems, welche durch ein Netzwerk 20 verbunden sind. Ein gewisser Teil des Datenverkehrs und insbesondere Netzwerkpakete mit einer bestimmten Art von Inhalt werden jedoch nicht durch die Kommunikationssteuerung 26 an den Mikroprozessor weitergeleitet, sondern werden auf eine spezielle Entlastungseinheit 24 über- tragen. Diese Entlastungseinheit 24 bildet gemeinsam mit der Uhreneinheit 30, einer Testeinheit 32, einer Wiedergabeeinheit 34, einer Trace-Einheit 36 und einer Debug-Einheit 38 eine funktionale Einheit 42. Alle Komponenten der Einheit 42 sind über einen Bus 22 zum Datenaustausch zwischen den Einheiten 30, 32, 34, 36 und 38 untereinander und zwischen den Einheiten 30, 32, 34, 36 und 38 und der Entlastungseinheit 24 verbunden.
Über die Entlastungseinheit 24 ist es möglich, alle Einheiten 30, 32, 34, 36 und 38, welche über den Bus 22 verbunden sind, zu konfigurieren. Es ist weiters Aufgabe der vorliegenden Erfindung, die Uhreneinheit 30 gemeinsam mit der Entlastungseinheit 24 zu verwenden, um die Knoten eines Mehrknotensystems präzise zu synchronisieren. Die systemweit synchronisierte Uhr kann dann verwendet werden, um Testwiedergabe, Trace- und De- bug-Funktionen simultan auf einer Mehrzahl von Knoten 12 des Mehrknotensystems, welches die Vorrichtung 42 der vorliegenden Erfindung aufweist, zu starten. Fig. 2 zeigt Details der Entlastungseinheit entsprechend der vorliegenden Erfindung. Ein Frame-Filter 72 gestattet es, den Datenverkehr 64 herauszugreifen. Die Pakete werden in einem Empfangspuffer 70 gespeichert und ein spezieller Mikro- kontroller 68 in der Entlastungseinheit extrahiert die Daten und Adressen des Pakets und gibt diese Daten über die Busschnittstelle 66 auf den Bus aus, welcher die Entlastungseinheit mit den anderen Einheiten 30, 32, 34, 36 und 38 verbindet. Wenn Daten gesendet werden müssen, wird ein entsprechendes Paket im Übertragungspuffer 74 durch den Mikroprozessor 68 platziert und in der Folge in den Datenverkehr 64 eingesetzt.
Fig. 3 zeigt die Uhreneinheit entsprechend der vorliegenden Erfindung. Eine Uhreneinheit 82, insbesondere eine additionsba- sierende Uhreneinheit, wird durch einen Algorithmus in der Steuereinheit 88 und eine Busschnittstelle 86, welche mit anderen Uhren in dem Multiknotensystem synchronisiert werden muss, gesteuert. Eine Event-Triggereinheit 84 gestattet es, Events zu gegebenen Zeitpunkten zu triggern oder Aktivitäten mit einem Zeitstempel zu versehen.
Fig. 4 zeigt die Testeinheit entsprechend der vorliegenden Er- findung. On-chip-BIST-Strukturen 110, ein JTAG-Kontroller 106 und eine Speicher-BIST bieten höchstmögliche Funktionalität für einen Knoten. Diese Einheit wird über eine Busschnittstelle 104 angesprochen.
Fig. 5 zeigt die Wiedergabeeinheit entsprechend der vorliegenden Erfindung. Ein Wiedergabepuffer 126 kann die vorhergehenden Nachrichten speichern und eine Wiedergabesteuerung 128 kann diese Nachrichten in den Netzwerkverkehr für Debug-Zwecke in den Mikroprozessor des Knotens einsetzen. Die Einheit wird über eine Busschnittstelle 124 konfiguriert. Fig. 6 zeigt die Aufzeichnungs- bzw. Trace-Einheit entsprechend der vorliegenden Erfindung. Ein Aufzeichnungsspeicher 146 wird verwendet um interessierenden Busverkehr oder Mikroprozessoraktivitäten aufzuzeichnen. Diese Funktion wird durch die Trace- Steuerung 148 kontrolliert, die über eine Busschnittstelle 144 konfiguriert wird.
Fig. 7 zeigt die Fehlersuch- bzw. Debug-Einheit entsprechend der vorliegenden Erfindung. Eine Debug-Schnittstelle 170 hat Zugriff auf Debug-Steuerleitungen 168 des Mikroprozessors des Knotens, um vollständigen Debug-Zugriff über die Debug- Steuerung 166 zu erhalten. Die Einheit wird über eine Busschnittstelle 164 konfiguriert.
Es ist weiters ein vorteil der vorliegenden Erfindung, dass die Einheiten für die Uhr 30, die Teststrukturen 32, die Wiedergabefunktionen 34, die Trace-Funktionen 36 und die Debug- Funktionen nahe beieinander liegen und als eine einzelne Einheit für koordiniertes Testen, koordinierte Wiedergabe und ko- ordiniertes Debugging angesehen werden. Dies umfasst komplexe Triggers für Tracen, Debugging, Testen und Wiedergeben, beispielsweise dergestalt, dass das Tracen gestartet wird, nachdem ein gewisser unterbrechungszustand in der Debug-Einheit 38 aufgetreten ist.
Zusammenfassend ist festzuhalten, dass die erfindungsgemäße Einrichtung für koordinierten Test, Fehlersuche, Datenaufzeichnung und Datenwiedergabe in verteilten eingebetteten Mikroprozessorsystemen ohne eigene Schnittstelle auskommt. Debug- Möglichkeiten sind in eingebetteten Systemknoten eines verteilten Mehrknotensystems integriert, um Zugang zu Test Infrastruktur (z.B. Boundary-Scan oder Built-In Seif Test), Prozessoreinrichtungen zur Fehlersuche (z.B. Background Debugging Modul des Prozessors), Aufzeichnungen von Systemereignissen (z.B. Ablage von Systembusaktivitäten in einen lokalen Pufferspeicher), und Möglichkeiten zur Datenwiedergabe (z.B. Systembus oder Netzwerkverkehr) eines jeden Knotens zu erhalten. Der Zugang pas- siert über eine Kommunikationsschnittstelle, die mit einer Entlastungseinheit, welche Teil der im Knoten integrierten Einrichtung ist, ausgestattet ist. Die Entlastungseinheit extrahiert Kontrolldaten, die die Einheiten für Test, Fehlersuche, Datenaufzeichnung und Datenwiedergabe betreffen und fügt Daten zur Analyse oder zum Versenden in den Kommunikationsdatenstrom ein. Eine eigene Schnittstelle zu den Einheiten der Einrichtung ist nicht notwendig. Die exakte Koordination aller Knoten des Mehrknotensystems erfolgt durch Synchronisation der lokalen Uhren, durch welche die Einheiten für Test, Fehlersuche, Datenaufzeichnung und Datenwiedergabe angestoßen werden. Als Mikroprozessorsysteme sind im Rahmen der Erfindung auch Systeme von Mikrokontrollern zu verstehen.

Claims

Patentansprüche :
1. Einrichtung zum koordinierten Testen und zur Fehlersuche in verteilten eingebetteten Mikroprozessorsystemen mit einer
Mehrzahl von über ein Kommunikationsnetz verbundenen, eingebetteten Systemknoten, wobei die Systemknoten jeweils eine Recheneinheit (14), ein Uhrenmodul, eine Testeinheit, eine Debug- Einheit und eine Kommunikationsschnittsteile zur Kommunikation mit den jeweils anderen Systemknoten über das Kommunikations- netz aufweisen, dadurch gekennzeichnet, dass die Uhrenmodule (30) der Systemknoten (12) synchronisiert sind, dass die Systemknoten (12) jeweils eine mit der Testeinheit (32) und der Debug-Einheit (38) verbundene Entlastungseinheit (24) aufwei- sen, sodass über die Kommunikationsschnittstelle (16) eintreffende oder abgehende, dem Testen und der Fehlersuche dienende Datenpakete über die Entlastungseinheit (24) versendet bzw. empfangen und ggf. verarbeitet werden können, und dass die Uhrenmodule (30) mit der jeweiligen Testeinheit (32) und der De- bug-Einheit (38) zum Einfügen von Zeitstempeln in Datenpakete und/oder zum Auslösen von Test- und/oder Debug-Vorgängen in Abhängigkeit von Uhrensignalen zusammenwirken.
2. Einrichtung nach Anspruch 1, dadurch gekennzeichnet, dass wenigstens ein Systemknoten (12) eine Aufzeichnungseinheit (36) zum Aufzeichnen von Systemvorgängen, wie z.B. von Rechenvorgängen der Recheneinheit ( 14 ) oder von Systembusaktivitäten aufweist, die mit der Entlastungseinheit (24) verbunden ist, sodass über die Kommunikationsschnittstelle (26) eintreffende oder abgehende, die Aufzeichnungseinheit (36) betreffende Datenpakete über die Entlastungseinheit (24) versendet bzw. empfangen und ggf. verarbeitet werden können.
3. Einrichtung nach Anspruch 2, dadurch gekennzeichnet dass das Uhrenmodul (30) mit der Aufzeichnungseinheit (36) zum Auslösen und/oder Beenden einer Aufzeichnung in Abhängigkeit von Uhrensignalen zusammenwirkt.
4. Einrichtung nach Anspruch 1 , 2 oder 3 , dadurch gekennzeichnet, dass wenigstens ein Systemknoten (12) eine Wiedergabeeinheit (34) zum Wiedergeben von aufgezeichneten Systemvor- gangen oder von Programmanweisungen aufweist, die mit der Entlastungseinheit (24) verbunden ist, sodass über die Kommunikationsschnittstelle (16) eintreffende oder abgehende, die Wiedergabeeinheit (34) betreffende Datenpakete über die Entlastungseinheit (24) versendet bzw. empfangen und ggf. verarbeitet werden können.
5. Einrichtung nach Anspruch 4, dadurch gekennzeichnet, dass das Uhrenmodul mit der Wiedergabeeinheit (34) zum Beginnen und/oder Beenden einer Wiedergabe in Abhängigkeit von Uhrensig- nalen zusammenwirkt.
6. Einrichtung nach einem der Ansprüche 1 bis 5, dadurch gekennzeichnet, dass die Recheneinheit (14), die Testeinheit (32), die Debug-Einheit (38) sowie ggf. die Aufzeichnungs- (36) und die Wiedergabeeinheit (34) an einen gemeinsamen Systembus (22) angeschlossen sind.
7. Einrichtung nach Anspruch 6, dadurch gekennzeichnet, dass das Uhrenmodul (30) an den Systembus (22) angeschlossen ist.
8. Einrichtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass die Testeinheit (32) in integrierten Schaltkreisen als Selbsttesteinheit für diese ausgebildet ist.
9. Einrichtung nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass die Testeinheit (32) in integrierten Schaltkreisen als Zugang zu Teststrukturen im ganzen eingebetteten Systemknoten (12) ausgebildet ist.
10. Einrichtung nach einem der Ansprüche 1 bis 9, dadurch gekennzeichnet, dass eine Kontroll- und Steuereinheit im Kommuni- kationsnetz (20) vorgesehen ist, welche zum Versenden von Test-, Debug-, Aufzeichnungs-, und/oder Wiedergabebefehlen an einzelne Systemknoten (12) ausgebildet ist.
PCT/AT2009/000030 2008-02-05 2009-01-29 Einrichtung zum koordinierten testen und zur fehlersuche in verteilten eingebetteten mikroprozessorsystemen WO2009097637A1 (de)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
ATA182/2008 2008-02-05
AT1822008A AT505630B1 (de) 2008-02-05 2008-02-05 Einrichtung zum koordinierten testen und zur fehlersuche in verteilten eingebetteten mikroprozessorsystemen

Publications (1)

Publication Number Publication Date
WO2009097637A1 true WO2009097637A1 (de) 2009-08-13

Family

ID=40427617

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AT2009/000030 WO2009097637A1 (de) 2008-02-05 2009-01-29 Einrichtung zum koordinierten testen und zur fehlersuche in verteilten eingebetteten mikroprozessorsystemen

Country Status (2)

Country Link
AT (1) AT505630B1 (de)
WO (1) WO2009097637A1 (de)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111290889A (zh) * 2018-11-21 2020-06-16 展讯通信(上海)有限公司 基于fpga的面向通用处理器的测试方法及系统
CN112131085A (zh) * 2020-08-01 2020-12-25 青岛希望鸟科技有限公司 互联网业务过程记录与回放的方法、系统及装置
CN113849399A (zh) * 2021-09-13 2021-12-28 北京计算机技术及应用研究所 多国产化平台下的多机协同软件的自动化测试系统和方法

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113268031A (zh) * 2021-06-07 2021-08-17 深圳市蔚来芯科技有限公司 一种电子设备远程调试工具的系统及方法
US11841398B2 (en) * 2021-06-28 2023-12-12 Silicon Motion, Inc. Method and apparatus and non-transitory computer-readable storage medium for debugging solid-state disk (SSD) device

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1117045A2 (de) * 2000-01-10 2001-07-18 Agilent Technologies, Inc. Leistungsüberwachung in verteilten Systemen
US6470388B1 (en) * 1999-06-10 2002-10-22 Cisco Technology, Inc. Coordinated extendable system for logging information from distributed applications
US20030167144A1 (en) * 2002-03-01 2003-09-04 Nec Usa, Inc. Re-configurable embedded core test protocol for system-on-chips (SOC) and circuit boards
WO2006030195A2 (en) * 2004-09-14 2006-03-23 Coware, Inc. Mehtod and system for debugging a multi- threaded program executing in a multicore architecture

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6826717B1 (en) * 2000-06-12 2004-11-30 Altera Corporation Synchronization of hardware and software debuggers
DE10118502C1 (de) * 2001-04-12 2002-08-08 Siemens Ag Verfahren zur Erfassung und Aufzeichnung von Systeminformationen und Abläufen in verteilten nebenläufigen komponentenbasierten Softwaresystemen

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6470388B1 (en) * 1999-06-10 2002-10-22 Cisco Technology, Inc. Coordinated extendable system for logging information from distributed applications
EP1117045A2 (de) * 2000-01-10 2001-07-18 Agilent Technologies, Inc. Leistungsüberwachung in verteilten Systemen
US20030167144A1 (en) * 2002-03-01 2003-09-04 Nec Usa, Inc. Re-configurable embedded core test protocol for system-on-chips (SOC) and circuit boards
WO2006030195A2 (en) * 2004-09-14 2006-03-23 Coware, Inc. Mehtod and system for debugging a multi- threaded program executing in a multicore architecture

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111290889A (zh) * 2018-11-21 2020-06-16 展讯通信(上海)有限公司 基于fpga的面向通用处理器的测试方法及系统
CN111290889B (zh) * 2018-11-21 2022-11-25 展讯通信(上海)有限公司 基于fpga的面向通用处理器的测试方法及系统
CN112131085A (zh) * 2020-08-01 2020-12-25 青岛希望鸟科技有限公司 互联网业务过程记录与回放的方法、系统及装置
CN113849399A (zh) * 2021-09-13 2021-12-28 北京计算机技术及应用研究所 多国产化平台下的多机协同软件的自动化测试系统和方法
CN113849399B (zh) * 2021-09-13 2023-06-30 北京计算机技术及应用研究所 多国产化平台下的多机协同软件的自动化测试系统和方法

Also Published As

Publication number Publication date
AT505630A4 (de) 2009-03-15
AT505630B1 (de) 2009-03-15

Similar Documents

Publication Publication Date Title
DE10333817B4 (de) Emulationsschnittstellensystem
EP1720100B1 (de) Verfahren und Vorrichtung zur Emulation einer programmierbaren Einheit
DE102018113625A1 (de) Fehlerinjektionstestvorrichtung und -verfahren
DE69834892T2 (de) Eingebetteter Logikanalysator
EP0318768B1 (de) Logikanalysator
DE112020000035T5 (de) Automatisierte prüfeinrichtung zum prüfen eines oder mehrerer prüfobjekte, verfahren zum automatisierten prüfen eines oder mehrerer prüfobjekte und computerprogramm zur handhabung von befehlsfehlern
CN102687123B (zh) 高级通信控制器单元和用于记录协议事件的方法
AT505630B1 (de) Einrichtung zum koordinierten testen und zur fehlersuche in verteilten eingebetteten mikroprozessorsystemen
CN112148515B (zh) 一种故障定位方法、系统、装置、介质和设备
DE202017106508U1 (de) Synchrone Hardware-Ereignis-Sammlung
US20040153813A1 (en) Apparatus and method for synchronization of trace streams from multiple processors
DE102012224276B4 (de) Verzögerte Ausführung auf mehreren Prozessoren
EP1565825A2 (de) Einrichtung und verfahren zur analyse von eingebetteten systemen
EP0297492A2 (de) Verfahren zur Prüfung eines Netzwerkaufbaus
EP1449083B1 (de) Verfahren zum debuggen rekonfigurierbarer architekturen
EP2648100A1 (de) Vorrichtung zur Prozessorüberwachung und Automatisierungsgerät mit einer solchen Vorrichtung
DE10115572A1 (de) Halbleiterprüfsystem mit Fehlerdatenspeicherverdichtung sowie Verfahren zur Speicherung von Fehlerdaten
DE102020108216A1 (de) Verfahren und Vorrichtungen zum Durchführen von Design for Debug über eine Protokollschnittstelle
DE102013022137A1 (de) Mehrstufige Ablaufprotokollierung
EP1379953B1 (de) Programmgesteuerte einheit
WO2015180932A1 (de) Verfahren zum rechnergestützten testen eines technischen systems
US7519497B2 (en) Apparatus and method for state selectable trace stream generation
DE19951541C1 (de) Integrierter elektronischer Baustein mit duplizierter Kernlogik und Hardware-Fehlereinspeisung für Prüfzwecke
EP1224480B1 (de) Programmgesteuerte einheit und verfahren zum erkennen und/oder analysieren von fehlern in programmgesteuerten einheiten
US20040133824A1 (en) Apparatus and method for identification of a new secondary code start point following a return from a secondary code execution

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 09709260

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09709260

Country of ref document: EP

Kind code of ref document: A1