WO2007017388A1 - Method and device for analyzing processes in a computer system having a plurality of execution units - Google Patents

Method and device for analyzing processes in a computer system having a plurality of execution units Download PDF

Info

Publication number
WO2007017388A1
WO2007017388A1 PCT/EP2006/064694 EP2006064694W WO2007017388A1 WO 2007017388 A1 WO2007017388 A1 WO 2007017388A1 EP 2006064694 W EP2006064694 W EP 2006064694W WO 2007017388 A1 WO2007017388 A1 WO 2007017388A1
Authority
WO
WIPO (PCT)
Prior art keywords
mode
units
execution units
analysis unit
subsystem
Prior art date
Application number
PCT/EP2006/064694
Other languages
German (de)
French (fr)
Inventor
Reinhard Weiberle
Bernd Mueller
Ralf Angerbauer
Eberhard Boehl
Yorck Collani
Rainer Gmehlich
Original Assignee
Robert Bosch Gmbh
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch Gmbh filed Critical Robert Bosch Gmbh
Priority to EP06777995A priority Critical patent/EP1917596A1/en
Priority to JP2008525523A priority patent/JP2009506408A/en
Publication of WO2007017388A1 publication Critical patent/WO2007017388A1/en

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/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • 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/3636Software debugging by tracing the execution of the program

Definitions

  • a microcontroller consists on the one hand of memory modules (eg RAM, ROM, cache), one processor (CPU, core) and of input / output interfaces, so-called peripherals (eg A / D converter, CAN -Interface). Since memory elements can be effectively monitored with check codes (parity or ECC), and peripherals are often application-specific as part of a string. sor or actuator signal paths are monitored, there is another redundancy approach in the sole doubling of the cores of a microcontroller.
  • memory modules eg RAM, ROM, cache
  • processor CPU, core
  • peripherals eg A / D converter, CAN -Interface
  • Such microcontrollers with at least two integrated cores are also known as dual-core architectures. Both cores execute the same program segment redundantly and in isochronous mode (lockstep mode), the results of the two cores are compared, and an error is then detected in the comparison for consistency.
  • This configuration of a dual-core system can be called a comparison mode.
  • Dual-core architectures are also used in other applications to increase performance, ie to increase performance. Both cores execute different programs, program segments, and commands, which can improve performance, so this configuration of a dual-core system can be called a performance mode.
  • This system is also referred to as a symmetric multiprocessor system (SMP).
  • SMP symmetric multiprocessor system
  • An extension of these systems is software switching between these two modes of access to a specific address and specialized hardware devices.
  • comparison mode the output signals of the cores are compared with each other.
  • the two cores work as a symmetric multiprocessor (SMP) system and execute different programs, program segments, or commands.
  • An advantage according to claim 1 is that in a computer system having multiple execution units or components operating in at least two different modes in the system are configurable, which differ in that in the one mode, at least two components in a performance mode by these components process different input signals to different output signals and process in an at least second mode, these components in a comparison mode equal input signals to the same output signals, and in that for analyzing and / or influencing the states and processes in all execution units or component analysis units, in particular debug support units, more analysis units are present than execution units or components in a performance mode can operate independently of each other and thus different modes of the system are better observable and influenceable.
  • a further advantage of the system is that in this case all execution units or components which do not cooperate with other execution units or components in a comparison mode in at least one first mode of the particular computer system are each assigned an analysis unit which monitors states and processes in this execution unit or component and / or can influence.
  • An additional advantage is that, in the case that in at least a second mode of the computer system, at least two execution units or components work together as a temporary subsystem in a compare mode and that subsystem is associated with a further analysis unit, observe the states and operations in that subsystem, and / or influence.
  • a further advantage is that observation and / or influencing of the states and sequences of all execution units of the subsystem, which cooperates in a comparison mode, can take place synchronously by the analysis unit.
  • a further advantage results from the fact that additional means are included which enable activation and / or deactivation of analysis units depending on the operating modes of the printer system and / or other predefinable conditions.
  • At least one mode signal preferably a core mode signal, can cause a change of activity of at least one of the analysis units.
  • control signals of at least one analysis unit can be used to switch over the activity of at least one further analysis unit.
  • the analysis unit assigned to the subsystem is active and the analysis units of the execution units or components assigned to the subsystem are not active.
  • the states or individual input signals of the execution units or components of the comparison means can be influenced by at least one analysis unit and the states or output signals of these influenced units can be observed by this or another analysis unit.
  • FIG. 1 shows a multiprocessor system with two execution units G 140a and
  • G 140b and the associated analysis units in particular debug support units GlOOa and GlOOb and the debug support unit Gl 10.
  • FIG. 2 shows a multiprocessor system with two execution units G 140a and
  • FIG. 3 shows a multiprocessor system with two execution units G 140a and
  • debug support management unit G 170 and a switching and comparison unit G200. The system works here in a performance mode.
  • FIG. 4 shows a multiprocessor system with two execution units G 140a and
  • debug sub support management unit G 170 and a switching and comparison unit G200. The system works here in a comparison mode.
  • FIG. 5 shows a general case of the switching and comparison component, also for use with more than two execution units.
  • FIG. 6 shows the general form of the mode signal.
  • An execution unit can in the following designate both a processor / core / CPU, as well as an FPU (Floating Point Unit), DSP (Digital Signal Processor), coprocessor or ALU (Arithmetic Logical Unit).
  • a component is understood to be a unit of at least one execution unit which are interconnected in a fixed manner and consequently work together in a fixed mode.
  • a debug support unit is understood as a unit which can influence an execution unit, a component or a subsystem of a plurality of execution units or components and comparators by suitable signals and by other suitable signals information about states and / or processes of the execution units, components, comparators or subsystems returned directly or indirectly and so that they are observable by the debug support unit.
  • a general case of the switching and comparison component also for use in processor systems having more than two execution units, is shown in FIG. Of the n execution units to be considered, n signals N 140,..., Nl 4n go to the switching and comparison component N100. This can generate up to n output signals N160, ..., N16n from these input signals.
  • the "pure performance mode” all signals N14i are directed to the corresponding output signals N16i.
  • the "pure comparison mode” all signals N140, ..., N14n are directed to only one of the output signals N16i ,
  • This figure shows how the various conceivable modes can arise.
  • the logical component of a switching logic Nl 10 is included in this figure. This first determines how many output signals there are. Furthermore, the switching logic Nl 10 determines which of the input signals contribute to which of the output signals. An input signal can contribute to exactly one output signal.
  • a function is defined by the switching logic, which assigns an element of the set ⁇ N160, ..., N16n ⁇ to each element of the set ⁇ N140, ..., N14n ⁇ .
  • the processing logic N 120 determines to each of the outputs N16i how the inputs contribute to that output signal.
  • a first possibility is to compare all signals and to detect an error in the presence of at least two different values, which can be optionally signaled.
  • a second possibility is to make a k out of m selection (k> m / 2). This can be realized by using comparators.
  • an error signal can be generated if one of the signals is detected as deviating.
  • a possible As different error signal can be generated when all three signals are different.
  • a third possibility is to supply these values to an algorithm.
  • This may be, for example, the formation of an average, a median, or the use of a Fault Tolerant Algorithm (FTA).
  • FTA Fault Tolerant Algorithm
  • Such an FTA is based on sweeping out extreme values of the input values and prioritizing one way of averaging over the remaining values. This averaging can be done over the entire set of residual values, or preferably over a subset that is easy to form in HW. In this case, it is not always necessary to actually compare the values. For example, averaging only adds and divides, FTM, FTA, or median require partial sorting. If necessary, an error signal can optionally also be output at sufficiently large extreme values
  • the task of the processing logic is thus to determine the exact shape of the comparison operation for each output signal - and thus also for the associated input signals.
  • the combination of the information of the switching logic Nl 10 (i.e., the above mentioned function) and the processing logic (i.e., the determination of the comparison operation per output signal, i.e., per function value) is the mode information and sets the mode.
  • This information is of course multivalued in the general case, i. not just a logical bit. Not all the theoretically conceivable modes are meaningful in a given implementation, it will be preferred to limit the number of allowed modes. It should be emphasized that in the case of only two execution units, where there is only one compare mode, all the information can be condensed to only one logical bit.
  • Switching from a performance mode to a comparison mode is characterized in the general case by the fact that execution units that are displayed in the performance mode on different outputs are mapped in the compare mode to the same output.
  • This is preferably realized in that there is a subsystem of execution units in which in the performance mode all input signals N14i which are to be executed in the subsystem have to be switched directly to corresponding output signals N16i, while they are all mapped to an output in comparison mode.
  • switching can also be realized by changing pairings. It is represented by the fact that in the general case one can not speak of the performance mode and the equilibrium mode, although in a given form of the invention one can limit the set of allowed modes such that this is the case. However, one can always speak of switching from the performance to the comparison mode (and vice versa).
  • the error logic N130 collects the error signals and can optionally passively switch outputs N16i, for example, by interrupting them via a switch.
  • the mode signal is shown in a general form in FIG.
  • the signals and components N10, N120, N130, N140, N141, N142, N143, N14n, N160, N161, N162, N163, N16n of the switching and comparison component N200 have the same meaning as in the switching and comparison component N100 in FIG. 5.
  • the mode signal Nl 50 and the error signal N 170 are shown in this figure.
  • the optional error signal is generated by fault circuit logic N130, which collects the error signals, and is either a direct forwarding of the single error signals or a bundling of the error information contained therein.
  • the mode signal Nl 50 is optional, but its use outside of this component can be used to advantage in many places.
  • the combination of the information of the switching logic NI 10 (ie the above mentioned function) and the processing logic (ie the determination of the comparison operation per output signal, ie per function value) is the mode information and sets the mode.
  • this information is multivalued, ie not representable only via a logical bit. Not all theoretically conceivable modes are meaningful in a given implementation, it will be preferable to restrict the ZaIi of the allowed modes.
  • the mode signal then brings the relevant mode information to the outside.
  • An HW implementation is preferably shown so that the externally visible mode signal can be configured.
  • the processing logic and circuitry are also configured to be configurable. Preferably, these configurations are coordinated. Alternatively, one can give only or additionally changes of the mode signal to the outside.
  • FIG. 1 shows a two-processor system. If the two-processor system is in a performance mode, different instructions, program segments or programs are calculated on the various execution units G 140a and G 140b in accordance with this mode. The coupling between the processors is given only loosely.
  • the execution units G140a and G140b are preferably "debugged" via the debug support units GlOOa and GOOOOb and via the debug interfaces G 120a and G 120b, where the execution unit G 140a is debugged via the debug interface G120a and the debug support unit GlOOa. " debugged ".
  • the execution unit G140b is “debugged” via the debug interfaces G 120b and the debug support units GlOOb This means that via these units and via other communication devices not shown, the internal states, in particular internal registers of the execution units, an external program (a so-called “debugger"), which is processed on a so-called host computer, are transmitted. This is done in accordance with the nature of "debugging” during execution of programs on the "debug" execution units G140a, G140b.
  • the debugger in accordance with the general operation of a "debugger", besides monitoring states, is also capable of determining the internal states of the "debug" execution units G 140a and G 140b via the interfaces G 120a and G 120b as well as the debugger. Support units GlOOa and GlOOb to change, stop this, or after a stop, this again to start again.
  • the execution units G 140a and G 140b in a preferred variant process the same commands clock-synchronously or with a defined clock offset.
  • the output signals of execution units G 140a and G 140b are compared in accordance with the comparison mode. If these signals differ, an error is detected.
  • this mode if there is a change in the internal states or execution units G 140a and G 140b are stopped via one of the debug support units GlOOa and GlOOb, an error is detected by the comparator (not shown in the figure).
  • the execution units G 140a and G 140b via the debug support units G10 and the debug interfaces G130a and G130b, with the execution unit G140a via the debug interface G130a, and the execution unit G 140b via the Debug interfaces G 130b from debug support units Gl 10 "Debug".
  • the debug support unit Gl 10 is in capable of simultaneously displaying the states of the two execution units G140a and G140b. It can also change states at the same time, stop or restart the execution units. In this case, the execution units G 140a and G 140b also behave synchronously during an intervention for debugging reasons, so that there is no difference that the comparator recognizes.
  • each of the execution units G 140a and G 140b may also be implemented as a component that includes a plurality of execution units that are fixedly interconnected and cooperate with each other in a particular mode (eg, a compare mode).
  • This component does not fundamentally differ from an execution unit with respect to the input and output signals, but optionally outputs only additional signals, such as an error or several status signals, and possibly has additional input signals for test purposes.
  • Such a component can also replace an execution unit in all following variants.
  • FIG. 2 shows the general case, in FIG. 3 the expression in the performance mode is shown in detail, in FIG. 4 the expression in the comparison mode is shown in detail.
  • the Debug Support Management Unit G 170 by hardware, depending on the mode in which the system operates, ensures that only the debug support units are used, which are also useful in this mode.
  • Support management unit G 170 uses a core mode signal Gl 80 (corresponding to Nl 50 of FIG. 6) supplied by a switching and comparing unit G200 (corresponding to N200 of FIG. 6).
  • debug support control unit G 170 in performance mode will only allow debugging of execution units G 140a and G 140b using debug support units GlOOa and GlOOb and debug interfaces G120a, G190a and G120b, G190b.
  • debug support management unit G 170 allows debugging of logic execution unit G150 only via debug support unit Gl10.
  • Logical execution unit G150 consists of execution units G 140a and G 140b only the debug interfaces G 160 and G 190a for debugging execution unit G 140a, and it uses only the debug interfaces G 160 and G 190b for debugging execution unit G140b.
  • a debug mechanism and a debug hardware is proposed, which makes it possible to debug the execution units according to the requirements resulting from the mode (performance or comparison mode).
  • Debugging solutions for a SMP system are known in which the execution units always fulfill different tasks separately from one another, and solutions for systems in pure comparison mode are also known.
  • the invention described here differs from the prior art in that the debugging mechanisms and the debug hardware and the switching of the execution units in operation are adapted between a performance mode and a comparison mode.

Abstract

The invention relates to a method and a device for analyzing processes in a computer system having a plurality of execution units that can be configured in at least two different modes in the computer system. At least two execution units operate in a performance mode as a first mode and at least one second mode is provided as the comparative mode. For analyzing and/or influencing states and operations in all execution units, analytical units, especially debug support units, are used. The invention is characterized in that the device comprises at least one analytical unit more than the maximum number of execution units that independently operate in the performance mode.

Description

R. 312750R. 312750
Verfahren und Vorrichtung zur Analyse von Abläufen in einem Rechnersystem mit mehreren AusfiihrungseinheitenMethod and device for analyzing processes in a computer system with several execution units
Stand der TechnikState of the art
Transiente Fehler, ausgelöst durch Alpha-Teilchen oder kosmische Strahlung, werden zunehmend ein Problem für integrierte Halbleiterschaltungen. Durch abnehmende Strukturbreiten, sinkende Spannungen und höhere Taktfrequenzen nimmt die Wahrscheinlichkeit zu, dass eine Ladungsänderung, hervorgerufen durch ein Alpha-Teilchen oder kosmische Strahlung, einen logischen Wert in einer integrierten Schaltung verfälscht. Ein falsches Berechnungsresultat kann die Folge sein. In sicherheitsrelevanten Systemen, insbesondere im Kraftfahrzeug, müssen sd- che Fehler daher zuverlässig detektiert werden.Transient errors, caused by alpha particles or cosmic rays, are increasingly becoming a problem for semiconductor integrated circuits. With decreasing feature widths, decreasing voltages, and higher clock frequencies, the likelihood that a charge change caused by an alpha particle or cosmic rays will distort a logic value in an integrated circuit increases. A wrong calculation result can be the result. In safety-relevant systems, in particular in motor vehicles, it is therefore necessary to reliably detect defective faults.
Bei sicherheitsrelevanten Systemen, wie z. B. einem ABS-Regelsystem in einem Kraftfahrzeug, in denen Fehlfunktionen der Elektronik sicher detektiert werden müssen, werden bei den eit- sprechenden Steuereinrichtungen solcher Systeme üblicherweise Redundanzen zur Fehlererkennung eingesetzt. So ist beispielsweise in bekannten ABS-Systemen jeweils der komplette Mik- rocontroller dupliziert, wobei die gesamten ABS-Funktionen redundant berechnet und auf Ü- bereinstimmung geprüft werden. Tritt eine Diskrepanz der Ergebnisse auf, so wird das ABS- System abgeschaltet.For safety-relevant systems, such. As an ABS control system in a motor vehicle, in which malfunctions of the electronics must be detected safely, usually redundancies are used for error detection in the eit- speaking control devices such systems. For example, in known ABS systems, the complete microcontroller is duplicated in each case, the entire ABS functions being redundantly calculated and checked for conformity. If a discrepancy of the results occurs, the ABS system is switched off.
Ein MikroController besteht einerseits aus Speichermodulen (z. B. RAM, ROM, Cache), aus einem Prozessor (CPU, Core) und aus Ein- /Ausgangs-Schnittstellen, so genannten Peripherals (z. B. A/D-Wandler, CAN-Schnittstelle). Da Speicherelemente mit Prüfcodes (Parity oder ECC) effektiv überwacht werden können, und Peripherals oft anwendungsspezifisch als Teil eines Sei- sor- oder Aktor-Signalpfades überwacht werden, besteht ein weiterer Redundanzansatz in der alleinigen Verdopplung der Cores eines MikroControllers.A microcontroller consists on the one hand of memory modules (eg RAM, ROM, cache), one processor (CPU, core) and of input / output interfaces, so-called peripherals (eg A / D converter, CAN -Interface). Since memory elements can be effectively monitored with check codes (parity or ECC), and peripherals are often application-specific as part of a string. sor or actuator signal paths are monitored, there is another redundancy approach in the sole doubling of the cores of a microcontroller.
Solche MikroController mit wenigstens zwei integrierten Cores sind auch als Dual-Core Architekturen bekannt. Beide Cores führen redundant und taktsynchron (Lockstep-Modus) das gleiche Programmsegment aus, die Ergebnisse der beiden Cores werden verglichen, und ein Fehler wird dann bei dem Vergleich auf Übereinstimmung erkannt werden. Diese Konfiguration eines Dual-Core Systems kann als Vergleichsmodus bezeichnet werden.Such microcontrollers with at least two integrated cores are also known as dual-core architectures. Both cores execute the same program segment redundantly and in isochronous mode (lockstep mode), the results of the two cores are compared, and an error is then detected in the comparison for consistency. This configuration of a dual-core system can be called a comparison mode.
Dual-Core Architekturen werden in anderen Anwendungen auch zur Leistungssteigerung, also zu einer Performanz-Steigerung eingesetzt. Beide Cores führen unterschiedliche Programme, Programmsegmente und Befehle aus, wodurch sich eine Leistungssteigerung erzielen lässt, weshalb diese Konfiguration eines Dual-Core Systems als Performanzmodus bezeichnet werden kann. Dieses System wird auch als ein symmetrisches Multiprozessorsystem (SMP) bezeichnet. Eine Erweiterung dieser Systeme ist eine Umschaltung durch Software zwischen diesen beiden Modi mittel eines Zugriffs auf eine spezielle Adresse und spezialisierter Hardware- Vorrichtungen. Im Vergleichsmodus werden die Ausgangsignale der Cores miteinander verglichen. Im Performanzmodus arbeiten die beiden Cores als ein symmetrisches Mehrprozessorsystem (SMP) und führen unterschiedliche Programme, Programmsegmente oder Befehle aus. Bei der Entwicklung von Software für einen μC ist es notwendig, die Auswirkungen von bestimmten Programmschritten genau verfolgen zu können und Testmodi zu verwenden, um während der Entwicklung Fehler in der SW zu erkennen Dazu werden Debug-Konzepte verwendet. Im Stand der Technik gibt es für die bisher eingeführten Dual Core Architekturen, die entweder rein im Lockstep oder rein im SMP-Betrieb laufen, Debug-Konzepte für die Software- Entwicklung.Dual-core architectures are also used in other applications to increase performance, ie to increase performance. Both cores execute different programs, program segments, and commands, which can improve performance, so this configuration of a dual-core system can be called a performance mode. This system is also referred to as a symmetric multiprocessor system (SMP). An extension of these systems is software switching between these two modes of access to a specific address and specialized hardware devices. In comparison mode, the output signals of the cores are compared with each other. In performance mode, the two cores work as a symmetric multiprocessor (SMP) system and execute different programs, program segments, or commands. When developing software for a μC, it is necessary to be able to accurately track the effects of certain program steps and to use test modes to detect errors in the SW during development. Debug concepts are used. In the prior art, there are debug concepts for software development for the previously introduced dual-core architectures, which run either purely in Lockstep or purely in SMP operation.
Für ein umschaltbares System ist aus dem Stand der Technik kein Debug-Konzept bekannt. Da die Umschaltung aber insbesondere bei Test oder Fehlersuche besonders zu berücksichtigen ist, ist es notwendig, ein dediziertes Debug-Konzept für ein umschaltbares System zu entwickeln.For a switchable system, no debug concept is known in the prior art. However, as the switchover has to be taken into account especially during test or debugging, it is necessary to develop a dedicated debug concept for a switchable system.
Vorteile der ErfindungAdvantages of the invention
Ein Vorteil gemäß Anspruch 1 liegt darin, dass in einem Rechnersystem mit mehreren Ausfiih- rungseinheiten oder Komponenten, die in mindestens zwei verschiedenen Modi in dem System konfigurierbar sind, die sich dadurch unterscheiden, dass in dem einem Modus mindestens zwei Komponenten in einem Performanzmodus arbeiten, indem diese Komponenten unterschiedliche Eingangs-Signale zu unterschiedlichen Ausgangssignalen verarbeiten und in einem mindestens zweiten Modus diese Komponenten in einem Vergleichsmodus gleiche Eingangssignale zu gleichen Ausgangssignalen verarbeiten, und in dem zur Analyse und/oder Beeinflussung der Zustände und Abläufe in allen Ausfiihrungseinheiten oder Komponenten Analyseeinheiten, insbesondere Debug-Unterstützungseinheiten verwendet werden, mehr Analyseeinheiten vorhanden sind als Ausfiihrungseinheiten oder Komponenten in einem Performanz-Modus unabhängig voneinander arbeiten können und damit verschiedene Modi des Systems besser beobachtbar und beeinflussbar sind.An advantage according to claim 1 is that in a computer system having multiple execution units or components operating in at least two different modes in the system are configurable, which differ in that in the one mode, at least two components in a performance mode by these components process different input signals to different output signals and process in an at least second mode, these components in a comparison mode equal input signals to the same output signals, and in that for analyzing and / or influencing the states and processes in all execution units or component analysis units, in particular debug support units, more analysis units are present than execution units or components in a performance mode can operate independently of each other and thus different modes of the system are better observable and influenceable.
Ein weiterer Vorteil des Systems ist, dass dabei allen Ausfiihrungseinheiten oder Komponenten, die in mindestens einem ersten Modus des besagten Rechnersystems nicht mit anderen Ausfiihrungseinheiten oder Komponenten in einem Vergleichsmodus zusammenarbeiten, jeweils eine Analyseeinheit zugeordnet ist, die Zustände und Abläufe in dieser Ausfiihrungseinheit oder Komponente beobachten und/oder beeinflussen kann.A further advantage of the system is that in this case all execution units or components which do not cooperate with other execution units or components in a comparison mode in at least one first mode of the particular computer system are each assigned an analysis unit which monitors states and processes in this execution unit or component and / or can influence.
Ein zusätzlicher Vorteil ist, dass in dem Fall, dass in mindestens einem zweiten Modus des Rechnersystems mindestens zwei Ausfiihrungseinheiten oder Komponenten als ein temporäres Teilsystem in einem Vergleichsmodus zusammenarbeiten und diesem Teilsystem eine weitere Analyseeinheit zugeordnet ist, die Zustände und Abläufe in diesem Teilsystem beobachten und/oder beeinflussen kann.An additional advantage is that, in the case that in at least a second mode of the computer system, at least two execution units or components work together as a temporary subsystem in a compare mode and that subsystem is associated with a further analysis unit, observe the states and operations in that subsystem, and / or influence.
Ein weiterer Vorteil ist, dass eine Beobachtung und/oder Beeinflussung der Zustände und Abläufe aller Ausführungseinheiten des Teilsystems, das in einem Vergleichsmodus zusammenarbeitet, durch die Analyseeinheit synchron erfolgen kann.A further advantage is that observation and / or influencing of the states and sequences of all execution units of the subsystem, which cooperates in a comparison mode, can take place synchronously by the analysis unit.
Ein weiterer Vorteil ergibt sich daraus, dass zusätzliche Mittel enthalten sind, die eine Aktivierung und/oder Deaktivierung von Analyseeinheiten abhängig von den Betriebsmodi des Redi- nersystems und/oder weiterer vorgebbarer Bedingungen ermöglichen. - A -A further advantage results from the fact that additional means are included which enable activation and / or deactivation of analysis units depending on the operating modes of the printer system and / or other predefinable conditions. - A -
Vorteilhaft ist weiterhin, dass in dem System mindestens ein Modus Signal, vorzugsweise ein Core Modus Signal, eine Umschaltung der Aktivität wenigstens einer der Analyseeinheiten veranlassen kann.A further advantage is that in the system at least one mode signal, preferably a core mode signal, can cause a change of activity of at least one of the analysis units.
Weiterhin vorteilhaft ist, dass durch Steuersignale mindestens einer Analyseeinheit eine Umschaltung der Aktivität wenigstens einer weiteren Analyseeinheit erfolgen kann.It is also advantageous that control signals of at least one analysis unit can be used to switch over the activity of at least one further analysis unit.
Es ist weiterhin vorteilhaft, dass bei einem System mit einem aktiven Vergleichsmodus eines Teilsystems die dem Teilsystem zugeordneten Analyseeinheit aktiv ist und die Analyseeinheiten der dem Teilsystem zugeordneten Ausführungseinheiten oder Komponenten nicht aktiv sind. Weiterhin ist auch vorteilhaft, dass in dem System zusätzlich die Zustände oder einzelnen Einganssignale der Ausführungseinheiten oder Komponenten un^oder der Vergleichsmittel von mindestens einer Analyseeinheit beeinflusst werden können und die Zustände oder Ausgangssignale dieser beeinflussten Einheiten von dieser oder einer anderen Analyseeinheit beobachtbar sind.It is furthermore advantageous that in a system with an active comparison mode of a subsystem, the analysis unit assigned to the subsystem is active and the analysis units of the execution units or components assigned to the subsystem are not active. Furthermore, it is also advantageous that in the system additionally the states or individual input signals of the execution units or components of the comparison means can be influenced by at least one analysis unit and the states or output signals of these influenced units can be observed by this or another analysis unit.
Weitere Vorteile und vorteilhafte Ausgestaltungen ergeben sich aus den Merkmalen der Ansprüche sowie der Beschreibung.Further advantages and advantageous embodiments will become apparent from the features of the claims and the description.
Figurencharacters
In Figur 1 ist ein Multiprozessorsystem mit zwei Ausführungseinheiten G 140a undFIG. 1 shows a multiprocessor system with two execution units G 140a and
G 140b sowie den zugehörigen Analyseeinheiten, insbesondere Debug- Unterstützungseinheiten GlOOa und GlOOb und der Debug- Unterstützungseinheit Gl 10.G 140b and the associated analysis units, in particular debug support units GlOOa and GlOOb and the debug support unit Gl 10.
In Figur 2 ist ein Multiprozessorsystem mit zwei Ausführungseinheiten G 140a undFIG. 2 shows a multiprocessor system with two execution units G 140a and
G 140b sowie den zugehörigen Analyseeinheiten, insbesondere Debug- Unterstützungseinheiten GlOOa und GlOOb und der Debug- Unterstützungseinheit Gl 10. Weiter enthalten ist eineDebug- Unterstützungsmanagementeinheit G 170 und eine Umschalt- und Vergleichseinheit G200. In Figur 3 ist ein Multiprozessorsystem mit zwei Ausfiihrungseinheiten G 140a undG 140b and the associated analysis units, in particular debug support units GlOOa and GlOOb and the debug support unit Gl 10. Further included is a debug support management unit G 170 and a switching and comparison unit G200. FIG. 3 shows a multiprocessor system with two execution units G 140a and
G 140b sowie den zugehörigen Debug-Unter Stützungseinheiten GlOOa und GlOOb und der Debug-Unterstützungseinheit Gl 10. Weiter enthalten ist eine Debug-Unterstützungsmanagementeinheit G 170 und eine Umschalt- und Vergleichseinheit G200. Das System arbeitet hier in einem Performanzmodus.G 140b and the associated debug support units GlOOa and GlOOb and the debug support unit Gl 10. Further included is a debug support management unit G 170 and a switching and comparison unit G200. The system works here in a performance mode.
In Figur 4 ist ein Multiprozessorsystem mit zwei Ausfuhrungseinheiten G 140a undFIG. 4 shows a multiprocessor system with two execution units G 140a and
G 140b sowie den zugehörigen Debug-Unterstützungseinheiten GlOOa und GlOOb und der Debug-Unterstützungseinheit Gl 10. Weiter enthalten ist eine Debug-Unter Stützungsmanagementeinheit G 170 und eine Umschalt- und Vergleichseinheit G200. Das System arbeitet hier in einem Vergleichsmodus.G 140b and the associated debug support units GlOOa and GlOOb and the debug support unit Gl 10. Further included is a debug sub support management unit G 170 and a switching and comparison unit G200. The system works here in a comparison mode.
In Figur 5 ist ein allgemeiner Fall der Umschalt- und Vergleichskomponente, auch für die Verwendung für mehr als zwei Ausführungseinheiten gezeigt.FIG. 5 shows a general case of the switching and comparison component, also for use with more than two execution units.
In Figur 6 ist die allgemeine Form des Modussignals dargestellt.FIG. 6 shows the general form of the mode signal.
Beschreibung der AusfuhrungsbeispieleDescription of the exemplary embodiments
Eine Ausführungseinheit kann im Folgenden sowohl einen Prozessor/Core/CPU, als auch eine FPU (Floating Point Unit), DSP (Digitaler Signalprozessor), Coprozessor oder ALU (Arithmetic logical Unit) bezeichnen. Weiterhin wird unter einer Komponente eine Einheit aus mindestens einer Ausführungseinheit verstanden, die in einer festen Art und Weise miteinander verschaltet sind und demzufolge in einem festen Modus zusammenarbeiten.An execution unit can in the following designate both a processor / core / CPU, as well as an FPU (Floating Point Unit), DSP (Digital Signal Processor), coprocessor or ALU (Arithmetic Logical Unit). Furthermore, a component is understood to be a unit of at least one execution unit which are interconnected in a fixed manner and consequently work together in a fixed mode.
Unter Debug-Unterstützungseinheit wird eine Einheit verstanden, die eine Ausführungseinheit, eine Komponente oder ein Teilsystem aus mehreren Ausführungseinheiten oder Komponenten und Vergleichern durch geeignete Signale beeinflussen kann und durch andere geeignete Signale eine Information über Zustände und/oder Abläufe von den Ausführungseinheiten, Komponenten, Vergleichern oder Teilsystemen mittelbar oder unmittelbar zurückerhält und damit diese durch die Debug-Unterstützungseinheit beobachtbar sind. Ein allgemeiner Fall der Umschalt- und Vergleichskomponente, auch fiir die Verwendung in Prozessorsystemen mit mehr als zwei Ausfiihrungseinheiten, ist in Figur 5 gezeigt. Von den n zu berücksichtigenden Ausfiihrungseinheiten gehen n Signale N 140,..., Nl 4n an die Umschalt und Vergleichskomponente NlOO. Diese kann bis zu n Ausgangssignale N160,..., N16n aus diesen Eingangssignalen erzeugen. Im einfachsten Fall, dem „reinen Performanzmodus", werden alle Signale N14i auf die entsprechenden Ausgangssignale N16i geleitet. Im entgegen gesetzten Grenzfall, dem „reinen Vergleichsmodus" werden alle Signale N 140,..., N14n nur auf genau eines der Ausgangssignale N16i geleitet.A debug support unit is understood as a unit which can influence an execution unit, a component or a subsystem of a plurality of execution units or components and comparators by suitable signals and by other suitable signals information about states and / or processes of the execution units, components, comparators or subsystems returned directly or indirectly and so that they are observable by the debug support unit. A general case of the switching and comparison component, also for use in processor systems having more than two execution units, is shown in FIG. Of the n execution units to be considered, n signals N 140,..., Nl 4n go to the switching and comparison component N100. This can generate up to n output signals N160, ..., N16n from these input signals. In the simplest case, the "pure performance mode", all signals N14i are directed to the corresponding output signals N16i. In the opposite limit case, the "pure comparison mode", all signals N140, ..., N14n are directed to only one of the output signals N16i ,
An dieser Figur lässt sich darlegen, wie die verschiedenen denkbaren Modi entstehen können. Dazu ist in dieser Figur die logische Komponente einer Schaltlogik Nl 10 enthalten. Diese legt zunächst fest, wie viele Ausgangssignale es überhaupt gibt. Weiter legt die Schaltlogik Nl 10 fest, welche der Eingangssignale zu welchem der Ausgangssignale beitragen. Dabei kann ein Eingangssignal zu genau einem Ausgangssignal beitragen. In mathematischer Form anders famuliert ist also durch die Schaltlogik eine Funktion definiert, die jedem Element der Menge {N140,..., N14n} ein Element der Menge {N160,..., N16n} zuordnet.This figure shows how the various conceivable modes can arise. For this purpose, the logical component of a switching logic Nl 10 is included in this figure. This first determines how many output signals there are. Furthermore, the switching logic Nl 10 determines which of the input signals contribute to which of the output signals. An input signal can contribute to exactly one output signal. In other words, in mathematical form, a function is defined by the switching logic, which assigns an element of the set {N160, ..., N16n} to each element of the set {N140, ..., N14n}.
Die Verarbeitungslogik N 120 legt dann zu jedem der Ausgänge N16i fest, in welcher Form die Eingänge zu diesem Ausgangsignal beitragen. Um beispielhaft die verschiedenen Variationsmöglichkeiten zu beschreiben, sei ohne Beschränkung der Allgemeinheit angenommen, dass der Ausgang N 160 durch die Signale N141, ..., N 14m erzeugt wird. Falls m = 1 entspricht dies einfach einer Durchschaltung des Signals, falls m = 2 dann werden die Signale N141, N 142 verglichen. Dieser Vergleich kann synchron oder asynchron durchgeführt werden, er kann bitweise oder nur auf signifikante Bits oder auch mit einem Toleranzband durchgeführt werden. Falls m >= 3 gibt es mehrere Möglichkeiten.The processing logic N 120 then determines to each of the outputs N16i how the inputs contribute to that output signal. By way of example, to describe the various possible variations, it is assumed without loss of generality that the output N 160 is generated by the signals N141, ..., N 14m. If m = 1, this simply means that the signal is switched through, if m = 2 then the signals N141, N 142 are compared. This comparison can be performed synchronously or asynchronously, it can be performed bitwise or only on significant bits or even with a tolerance band. If m> = 3, there are several possibilities.
Eine erste Möglichkeit besteht darin alle Signale zu vergleichen und bei Vorhandensein mindestens zweier verschiedener Werte einen Fehler zu detektieren, den man optional signalisieren kann.A first possibility is to compare all signals and to detect an error in the presence of at least two different values, which can be optionally signaled.
Eine zweite Möglichkeit besteht darin, dass man eine k aus m -Auswahl vornimmt (k >m/2). Diese kann durch Verwendung von Vergleichern realisiert werden. Optional kann ein Fehlersignal generiert werden, wenn eines der Signale als abweichend erkannt wird. Ein möglicher- weise verschiedenes Fehlersignal kann generiert werden, wenn alle drei Signale verschieden sind.A second possibility is to make a k out of m selection (k> m / 2). This can be realized by using comparators. Optionally, an error signal can be generated if one of the signals is detected as deviating. A possible As different error signal can be generated when all three signals are different.
Eine dritte Möglichkeit besteht darin, diese Werte einem Algorithmus zuzufiihren. Dies kann beispielsweise die Bildung eines Mittelwerts, eines Medianwert, oder die Verwendung eines fehlertoleranten Algorithmus (FTA) darstellen. Ein solcher FTA beruht darauf, Extremwerte der Eingangswerte wegzustreichen und eine Art der Mittelung über die restlichen Werte vorzundi- men. Diese Mittelung kann über die gesamte Menge der restlichen Werte, oder vorzugsweise über eine in HW leicht zu bildenden Teilmenge vorgenommen werden. In diesem Fall ist es nicht immer notwendig, die Werte tatsächlich zu vergleichen. Bei der Mittelwertbildung muss beispielsweise nur addiert und dividiert werden, FTM, FTA oder Median erfordern eine teilweise Sortierung. Gegebenenfalls kann auch hier bei hinreichend großen Extremwerten optional ein Fehlersignal ausgegeben werdenA third possibility is to supply these values to an algorithm. This may be, for example, the formation of an average, a median, or the use of a Fault Tolerant Algorithm (FTA). Such an FTA is based on sweeping out extreme values of the input values and prioritizing one way of averaging over the remaining values. This averaging can be done over the entire set of residual values, or preferably over a subset that is easy to form in HW. In this case, it is not always necessary to actually compare the values. For example, averaging only adds and divides, FTM, FTA, or median require partial sorting. If necessary, an error signal can optionally also be output at sufficiently large extreme values
Diese verschiedenen genannten Möglichkeiten der Verarbeitung mehrerer Signale zu einem Signal werden der Kürze wegen als Vergleichsoperationen bezeichnet.These various possibilities of processing a plurality of signals into one signal are referred to as comparison operations for the sake of brevity.
Die Aufgabe der Verarbeitungslogik ist es also, die genaue Gestalt der Vergleichsoperation für jedes Ausgangssignal - und damit auch für die zugehörigen Eingangssignale- festzulegen. Die Kombination der Information der Schaltlogik Nl 10 (d.h. die o. g. Funktion) und der Verarbeitungslogik (d.h. die Festlegung der Vergleichsoperation pro Ausgangssignal, d.h. pro Funktionswert) ist die Modusinformation und diese legt den Modus fest. Diese Information ist im allgemeinen Fall natürlich mehrwertig, d.h. nicht nur über ein logisches Bit darstellbar. Nicht alle theoretisch denkbaren Modi sind in einer gegebenen Implementierung sinnvoll, man wird verzugsweise die Zahl der erlaubten Modi einschränken. Zu betonen ist, dass im Fall von nur zwei Ausführungseinheiten, wo es nur einen Vergleichsmodus gibt, die gesamte Information auf nur ein logisches Bit kondensiert werden kann.The task of the processing logic is thus to determine the exact shape of the comparison operation for each output signal - and thus also for the associated input signals. The combination of the information of the switching logic Nl 10 (i.e., the above mentioned function) and the processing logic (i.e., the determination of the comparison operation per output signal, i.e., per function value) is the mode information and sets the mode. This information is of course multivalued in the general case, i. not just a logical bit. Not all the theoretically conceivable modes are meaningful in a given implementation, it will be preferred to limit the number of allowed modes. It should be emphasized that in the case of only two execution units, where there is only one compare mode, all the information can be condensed to only one logical bit.
Eine Umschaltung von einem Performanz- in einen Vergleichsmodus ist im allgemeinen Fall dadurch charakterisiert, dass Ausführungseinheiten, die im Performanzmodus auf verschiedene Ausgänge hin abgebildet werden, im Vergleichsmodus auf den gleichen Ausgang hin abgebildet werden. Vorzugsweise ist dies dadurch realisiert, dass es ein Teilsystem von Ausführungsein- heiten gibt, bei dem im Performanzmodus alle Eingangssignale N14i, die im Teilsystem zu be- rücksichtigen sind, direkt auf korrespondierende Ausgangssignale N16i geschalten werden, während sie im Vergleichsmodus alle auf ein Ausgang hin abgebildet sind. Alternativ kann eine solche Umschaltung auch dadurch realisiert werden, dass Paarungen geändert werden. Es ist dadurch dargestellt, dass man im allgemeinen Fall nicht von dem Performanzmodus und dem Vσ- gleichsmodus sprechen kann, obwohl man in einer gegebenen Ausprägung der Erfindung die Menge der erlaubten Modi so einschränken kann, dass dies der Fall ist. Man kann aber immer von einer Umschaltung vom Performanz- in den Vergleichsmodus (und umgekehrt) sprechen.Switching from a performance mode to a comparison mode is characterized in the general case by the fact that execution units that are displayed in the performance mode on different outputs are mapped in the compare mode to the same output. This is preferably realized in that there is a subsystem of execution units in which in the performance mode all input signals N14i which are to be executed in the subsystem have to be switched directly to corresponding output signals N16i, while they are all mapped to an output in comparison mode. Alternatively, such switching can also be realized by changing pairings. It is represented by the fact that in the general case one can not speak of the performance mode and the equilibrium mode, although in a given form of the invention one can limit the set of allowed modes such that this is the case. However, one can always speak of switching from the performance to the comparison mode (and vice versa).
Die Fehlerschaltungslogik N130 sammelt die Fehlersignale und kann optional die Ausgänge N16i passiv schalten, indem sie beispielsweise über einen Schalter unterbrochen werden.The error logic N130 collects the error signals and can optionally passively switch outputs N16i, for example, by interrupting them via a switch.
Das Modus Signal ist in einer allgemeinen Form in der Figur 6 dargestellt. Die Signale und Komponenten Nl 10, N120, N130, N140, N141, N142, N143, N14n, N160, N161, N162, N163, N16n der Umschalt- und Vergleichskomponente N200 haben die gleiche Bedeutung wie in der der Umschalt- und Vergleichskomponente NlOO in Figur 5. Darüber hinaus ist das Modussignal Nl 50 und das Fehlersignal N 170 in dieser Figur eingezeichnet. Das optionale Fehlersignal wird von der Fehlerschaltungslogik N130, die die Fehlersignale sammelt, generiert und ist entweder eine direkte Weiterleitung der Einzelfehlersignale oder eine Bündelung der darin enthaltenen Fehlerinformation. Das Modussignal Nl 50 ist optional, seine Verwendung außerhalb dieser Komponente kann aber an vielen Stellen vorteilhaft verwendet werden. Die Kombination der Information der Schaltlogik Nl 10 (d. h. die o. g. Funktion) und der Verarbeitungslogik (d. h. die Festlegung der Vergleichsoperation pro Ausgangssignal, d.h. pro Funktionswert) ist die Modusinformation und diese legt den Modus fest. Diese Information ist im allgemeinen Fall natürlich mehrwertig, d.h. nicht nur über ein logisches Bit darstellbar. Nicht alle theoretisch denkbaren Modi sind in einer gegebenen Implementierung sinnvoll, man wird vorzugsweise die ZaIi der erlaubten Modi einschränken. Das Modussignal bringt dann die relevante Modusinformation nach außen. Eine HW-Implementierung ist vorzugsweise so dargestellt, dass das extern sichtbare Modussignal konfiguriert werden kann. Vorzugsweise sind ebenfalls die Verarbeitungslogik und die Schaltlogik konfigurierbar gestaltet. Vorzugsweise sind diese Konfigurationen aufeinander abgestimmt. Alternativ kann man auch nur oder ergänzend Änderungen des Modussignals nach außen geben. Dies hat insbesondere in einer Zweierkonfiguration Vorteile. Im Folgenden wird hauptsächlich ein System mit zwei Ausführungseinheiten beschrieben. In Figur 1 ist ein Zweiprozessorsystem dargestellt. Falls sich das Zweiprozessorsystem in einem Performanzmodus befindet, werden auf den verschiedenen Ausführungseinheiten G 140a und G 140b diesem Modus entsprechend unterschiedliche Befehle, Programmsegmente oder Programme berechnet. Die Kopplung zwischen den Prozessoren ist dabei nur lose gegeben. In diesem Fall werden die Ausführungseinheiten G140a und G140b vorzugsweise über die Debug- Unterstützungseinheiten GlOOa und GlOOb und über die Debug Schnittstellen G 120a und G 120b „debuggt". Dabei wird die Ausführungseinheit G 140a über die Debug Schnittstelle G120a und die Debug-Unterstützungseinheit GlOOa „debuggt". Die Ausführungseinheit G140b wird über die Debug Schnittstellen G 120b und die Debug-Unterstützungseinheiten GlOOb „debuggt". Dies bedeutet, dass über diese Einheiten und über weitere, nicht eingezeichnete Kommunikationseinrichtungen, die internen Zustände, insbesondere interne Register der Ausführungseinheiten, einem externen Programm (einem so genannten „Debugger"), das auf einem so genannten Host Rechner abgearbeitet wird, übermittelt werden. Dies geschieht, der Natur des „debuggen" gemäß, während der Abarbeitung von Programmen auf den zu „debuggenden" Ausführungseinheiten G140a, G140b. Der Debugger ist gemäß der allgemeinen Funktionsweise eines „Debuggers", neben dem Beobachten von Zuständen, auch dazu in der Lage, die internen Zustände der zu „debuggenden" Ausführungseinheiten G 140a und G 140b über die Schnittstellen G 120a und G 120b sowie den Debug-Unterstützungseinheiten GlOOa und GlOOb zu verändern, diese anzuhalten, oder nach einem Anhalten, diese auch wieder zu starten.The mode signal is shown in a general form in FIG. The signals and components N10, N120, N130, N140, N141, N142, N143, N14n, N160, N161, N162, N163, N16n of the switching and comparison component N200 have the same meaning as in the switching and comparison component N100 in FIG FIG. 5. In addition, the mode signal Nl 50 and the error signal N 170 are shown in this figure. The optional error signal is generated by fault circuit logic N130, which collects the error signals, and is either a direct forwarding of the single error signals or a bundling of the error information contained therein. The mode signal Nl 50 is optional, but its use outside of this component can be used to advantage in many places. The combination of the information of the switching logic NI 10 (ie the above mentioned function) and the processing logic (ie the determination of the comparison operation per output signal, ie per function value) is the mode information and sets the mode. Of course, in the general case this information is multivalued, ie not representable only via a logical bit. Not all theoretically conceivable modes are meaningful in a given implementation, it will be preferable to restrict the ZaIi of the allowed modes. The mode signal then brings the relevant mode information to the outside. An HW implementation is preferably shown so that the externally visible mode signal can be configured. Preferably, the processing logic and circuitry are also configured to be configurable. Preferably, these configurations are coordinated. Alternatively, one can give only or additionally changes of the mode signal to the outside. This has advantages especially in a two-configuration. The following mainly describes a system with two execution units. FIG. 1 shows a two-processor system. If the two-processor system is in a performance mode, different instructions, program segments or programs are calculated on the various execution units G 140a and G 140b in accordance with this mode. The coupling between the processors is given only loosely. In this case, the execution units G140a and G140b are preferably "debugged" via the debug support units GlOOa and GOOOOb and via the debug interfaces G 120a and G 120b, where the execution unit G 140a is debugged via the debug interface G120a and the debug support unit GlOOa. " debugged ". The execution unit G140b is "debugged" via the debug interfaces G 120b and the debug support units GlOOb This means that via these units and via other communication devices not shown, the internal states, in particular internal registers of the execution units, an external program (a so-called "debugger"), which is processed on a so-called host computer, are transmitted. This is done in accordance with the nature of "debugging" during execution of programs on the "debug" execution units G140a, G140b. The debugger, in accordance with the general operation of a "debugger", besides monitoring states, is also capable of determining the internal states of the "debug" execution units G 140a and G 140b via the interfaces G 120a and G 120b as well as the debugger. Support units GlOOa and GlOOb to change, stop this, or after a stop, this again to start again.
Im Vergleichsmodus bearbeiten die Ausführungseinheiten G 140a und G 140b in einer bevorzqg- ten Variante die gleichen Befehle taktsynchron oder mit einem definierten Taktversatz. Die Ausgangssignale der Ausführungseinheiten G 140a und G 140b werden dem Vergleichsmodus entsprechend verglichen. Bei einem Unterschied dieser Signale wird auf einen Fehler erkannt. Falls in diesem Modus eine Veränderung der internen Zustände oder ein Anhalten der Ausführungseinheiten G 140a und G 140b über eine der Debug-Unterstützungseinheiten GlOOa und GlOOb erfolgt, wird vom Vergleicher (nicht in der Figur dargestellt) auf einen Fehler erkannt. In diesem Fall wird bevorzugt das „Debugging" der Ausführungseinheiten G 140a und G 140b über die Debug-Unterstützungseinheiten Gl 10 und die Debug Schnittstellen G130a und G130b erfolgen. Dabei wird die Ausführungseinheit G140a über die Debug Schnittstelle G130a, und die Ausführungseinheit G 140b über die Debug Schnittstellen G 130b von der Debug- Unterstützungseinheiten Gl 10 „debuggt". Die Debug-Unterstützungseinheit Gl 10 ist dazu in der Lage, die Zustände der beiden Ausführungseinheiten G140a und G140b gleichzeitig anzuzeigen. Sie kann auch gleichzeitig Zustände ändern, die Ausführungseinheiten anhalten oder wieder anstarten. In diesem Fall verhalten sich die Ausführungseinheiten G 140a und G 140b auch bei einem Eingriff aus Debugging Gründen synchron, so dass kein Unterschied entsteht, den der Vergleicher erkennt.In the compare mode, the execution units G 140a and G 140b in a preferred variant process the same commands clock-synchronously or with a defined clock offset. The output signals of execution units G 140a and G 140b are compared in accordance with the comparison mode. If these signals differ, an error is detected. In this mode, if there is a change in the internal states or execution units G 140a and G 140b are stopped via one of the debug support units GlOOa and GlOOb, an error is detected by the comparator (not shown in the figure). In this case, it is preferable to "debug" the execution units G 140a and G 140b via the debug support units G10 and the debug interfaces G130a and G130b, with the execution unit G140a via the debug interface G130a, and the execution unit G 140b via the Debug interfaces G 130b from debug support units Gl 10 "Debug". The debug support unit Gl 10 is in capable of simultaneously displaying the states of the two execution units G140a and G140b. It can also change states at the same time, stop or restart the execution units. In this case, the execution units G 140a and G 140b also behave synchronously during an intervention for debugging reasons, so that there is no difference that the comparator recognizes.
Diesem Vorschlag liegt damit die konzeptionelle Idee zu Grunde, dass es sich bei einem Zweiprozessorsystem, die im Betrieb zwischen einem Performanz- und einem Vergleichsmodus umschalten können, um drei getrennt zu „debuggende" Einheiten handelt. Im Performanzmodus sind dabei die Ausführungseinheiten G 140a und Gl 40b als separate Ausführungseinheiten zu betrachten, im Vergleichsmodus ist der synchrone Betrieb dieser beiden Ausführungseinheiten als eine logische Ausführungseinheit Gl 50 zu behandeln. Entsprechend diesem Konzept wird für die logische Ausführungseinheit G 150 eine separate Debug-Unterstützungseinheiten Gl 10 eingesetzt. Diese Debug-Unterstützungseinheiten Gl 10 ist dabei dazu in der Lage, gleichzeitig die beiden physikalischen Ausführungseinheiten G 140a und G 140b über die Debug Schnittstd- len G130a und G130b zu beeinflussen und die Zustände dieser einem externen Programm (, ,De- bugger") zur Verfügung zu stellen.This suggestion is based on the conceptual idea that in a two-processor system, which can switch between a performance and a comparison mode during operation, there are three separate units to be "debugged." In performance mode, execution units G 140a and Eq 40b are to be regarded as separate execution units, in the compare mode the synchronous operation of these two execution units is to be treated as a logical execution unit Gl 50. According to this concept, a separate debug support unit Gl 10 is used for the logical execution unit G 150. These debug support units Gl 10 is able to simultaneously influence the two physical execution units G 140a and G 140b via the debug interface G130a and G130b and to make the states of these available to an external program ("debugger").
In einer Verallgemeinerung des Beispiels von Figur 1 kann jede der Ausführungseinheiten G 140a und G 140b auch als eine Komponente ausgeführt sein, die mehrere Ausführungseinheiten enthält, die fest miteinander verschaltet sind und in einem bestimmten Modus (zum Beispiel einem Vergleichsmodus) miteinander zusammenarbeiten. Diese Komponente unterscheidet sich bezüglich der Ein- und Ausgangssignale nicht grundsätzlich von einer Ausführungseinheit, sondern gibt ggf. nur zusätzliche Signale, wie ein Fehler- oder mehrere Statussignale aus und hat möglicherweise zusätzliche Eingangssignale zu Testzwecken. Eine solche Komponente kann auch in allen folgenden Varianten eine Ausführungseinheit ersetzen.In a generalization of the example of Figure 1, each of the execution units G 140a and G 140b may also be implemented as a component that includes a plurality of execution units that are fixedly interconnected and cooperate with each other in a particular mode (eg, a compare mode). This component does not fundamentally differ from an execution unit with respect to the input and output signals, but optionally outputs only additional signals, such as an error or several status signals, and possibly has additional input signals for test purposes. Such a component can also replace an execution unit in all following variants.
In einer Erweiterung, wie in den Zeichnungen Figur 2, Figur 3, Figur 4 dargestellt, wird zusätzlich zu der Debug-Unterstützungseinheit Gl 10 eine Debug-Unterstützungsmanagementeinheit G 170 vorgeschlagen. Figur 2 stellt dabei den allgemeinen Fall dar, in Figur 3 wird die Ausprägung im Performanzmodus detailliert dargestellt, in Figur 4 wird die Ausprägung im Vergleichsmodus detailliert dargestellt. Die Debug-Unter Stützungsmanagementeinheit G 170 stellt per Hardware, abhängig vom Modus, in dem das System arbeitet, sicher, dass nur die Debug-Unterstützungseinheiten benutzt werden, die in diesem Modus auch sinnvoll zu benutzen sind. Die Debug-In an extension, as shown in the drawings Figure 2, Figure 3, Figure 4, in addition to the debug support unit Gl 10, a debug support management unit G 170 is proposed. FIG. 2 shows the general case, in FIG. 3 the expression in the performance mode is shown in detail, in FIG. 4 the expression in the comparison mode is shown in detail. The Debug Support Management Unit G 170, by hardware, depending on the mode in which the system operates, ensures that only the debug support units are used, which are also useful in this mode. The debug
Unterstützungsmanagementeinheit G 170 benutzt dazu ein Core Modus Signal Gl 80 (entspricht Nl 50 aus Figur 6), das von einer Umschalt- und Vergleichseinheit G200 (entspricht N200 aus Figur 6) geliefert wird.Support management unit G 170 uses a core mode signal Gl 80 (corresponding to Nl 50 of FIG. 6) supplied by a switching and comparing unit G200 (corresponding to N200 of FIG. 6).
In einer bevorzugten Implementierung wird die Debug-Unter Stützungsmanagementeinheit G 170 im Performanzmodus nur ein „Debugging" der Ausfiihrungseinheiten G 140a und G 140b erlauben. Sie benutzt dazu die Debug-Unterstützungseinheiten GlOOa und GlOOb sowie die Debug Schnittstellen G120a, G190a und G120b, G190b.In a preferred implementation, debug support control unit G 170 in performance mode will only allow debugging of execution units G 140a and G 140b using debug support units GlOOa and GlOOb and debug interfaces G120a, G190a and G120b, G190b.
Im Vergleichsmodus erlaubt die Debug-Unterstützungsmanagementeinheit G 170 dagegen ein „debugging" der logischen Ausfiihrungseinheit Gl 50 nur über die Debug- Unterstützungseinheit Gl 10. Die logische Ausfiihrungseinheit G150 besteht dabei aus den Ausfiihrungseinheiten G 140a und G 140b. Die Debug-Unterstützungseinheit Gl 10 verwendet dabei nur die Debug Schnittstellen G 160 und G 190a zum Debuggen von Ausfiihrungseinheit G 140a, und sie verwendet nur die Debug Schnittstellen G 160 und G 190b zum Debuggen von Ausfüh- rungseinheit G140b.In comparison mode, debug support management unit G 170, on the other hand, allows debugging of logic execution unit G150 only via debug support unit Gl10. Logical execution unit G150 consists of execution units G 140a and G 140b only the debug interfaces G 160 and G 190a for debugging execution unit G 140a, and it uses only the debug interfaces G 160 and G 190b for debugging execution unit G140b.
Für das vorgeschlagene Mehrprozessorsystem wird ein Debug Mechanismus und eine Debug Hardware vorgeschlagen, die es ermöglicht, die Ausfiihrungseinheiten entsprechend den Anforderungen die sich aus dem Modus (Performanz oder Vergleichsmodus) ergeben, zu debuggen. Bekannt sind Debuglösungen für ein SMP System in dem die Ausfiihrungseinheiten immer getrennt voneinander verschiedene Aufgaben erfüllen, ebenso bekannt sind Lösungen für Systeme im reinen Vergleichsmodus.For the proposed multiprocessor system, a debug mechanism and a debug hardware is proposed, which makes it possible to debug the execution units according to the requirements resulting from the mode (performance or comparison mode). Debugging solutions for a SMP system are known in which the execution units always fulfill different tasks separately from one another, and solutions for systems in pure comparison mode are also known.
Die hier beschriebene Erfindung unterscheidet sich dabei vom Stand der Technik indem die De- bugmechanismen und die Debughardware and die Umschaltung der Ausführungseinheiten im Betrieb zwischen einem Performanzmodus und einem Vergleichsmodus angepasst werden. The invention described here differs from the prior art in that the debugging mechanisms and the debug hardware and the switching of the execution units in operation are adapted between a performance mode and a comparison mode.

Claims

Patentansprüche claims
1. Vorrichtung zur Analyse von Abläufen in einem Rechnersystem mit mehreren Ausfüh- rungseinheiten, die in mindestens zwei verschiedenen Modi in dem Rechnersystem konfigurierbar sind, wobei wenigstens zwei Ausfiihrungseinheiten in einem Performanzmo- dus als einem ersten Modus arbeiten und mindestens ein zweiter Modus als Vergleichsmodus vorgesehen ist und dass zur Analyse von Zuständen und Abläufen in allen Ausführungseinheiten Analyseeinheiten, insbesondere Debug-Unterstützungseinheiten, verwendet werden, dadurch gekennzeichnet, dass die Vorrichtung wenigstens eine Analyseeinheit mehr enthält als die maximale Anzahl der Ausführungseinheiten, die im Perfor- manzmodus unabhängig voneinander arbeiten.1. An apparatus for analyzing processes in a computer system having a plurality of execution units which are configurable in at least two different modes in the computer system, wherein at least two execution units operate in a performance mode as a first mode and at least one second mode is provided as a comparison mode and that analysis units, in particular debug support units, are used to analyze states and processes in all execution units, characterized in that the device contains at least one analysis unit more than the maximum number of execution units which operate independently in the performance mode.
2. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass allen Ausführungseiiiieiten, die in mindestens einem ersten Modus nicht mit anderen Ausführungseinheiten in einem Vergleichsmodus zusammenarbeiten, jeweils eine Analyseeinheit zugeordnet ist, die die Zustände und Abläufe in dieser Ausführungseinheit beobachten und/oder beeinflussen kann.2. Device according to claim 1, characterized in that all Ausführungsseiiiieiten which do not cooperate in at least a first mode with other execution units in a comparison mode, each having an analysis unit is assigned, which can observe and / or influence the states and processes in this execution unit.
3. Vorrichtung nach Anspruch 1, dadurch gekennzeichnet, dass die Vorrichtung derart gestaltet ist, dass in mindestens einem zweiten Modus des Rechnersystems mindestens zwei Ausführungseinheiten als ein temporäres Teilsystem in einem Vergleichsmodus zusammenarbeiten und diesem Teilsystem eine weitere Analyseeinheit zugeordnet ist, die die Zustände und Abläufe in diesem Teilsystem beobachten und/oder beeinflussen kann.3. Device according to claim 1, characterized in that the device is designed such that work in at least a second mode of the computer system at least two execution units as a temporary subsystem in a comparison mode and this subsystem is associated with a further analysis unit, the states and procedures observe and / or influence in this subsystem.
4. Vorrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Vorrichtung derart ausgestaltet ist, dass durch mindestens ein Modus Signal, insbesondere Core Modus Signal, eine Umschaltung der Aktivität wenigstens einer Analyseeinheit erfolgt. 4. Device according to one of claims 1 to 3, characterized in that the device is designed such that by at least one mode signal, in particular core mode signal, a switching of the activity of at least one analysis unit takes place.
5. Vorrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass die Vorrichtung derart ausgestaltet ist, dass durch Steuersignale mindestens einer Analyseeinheit eine Umschaltung der Aktivität wenigstens einer anderen Analyseeinheit erfolgt.5. Device according to one of claims 1 to 3, characterized in that the device is designed such that by control signals of at least one analysis unit, a switching of the activity of at least one other analysis unit takes place.
6. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, dass die Vorrichtung derart ausgestaltet ist, dass eine synchrone Beobachtung und Beeinflussung der Zustände und Abläufe aller Ausführungseinheiten des Teilsystems, das in einem Vergleichsmodus zusammenarbeitet, durch die Analyseeinheit möglich ist.6. The device according to claim 3, characterized in that the device is designed such that a synchronous observation and influencing of the states and processes of all execution units of the subsystem, which cooperates in a comparison mode, by the analysis unit is possible.
7. Vorrichtung nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass zusätzliche Mittel enthalten sind, die eine Aktivierung und/oder Deaktivierung von Analyseeinheiten abhängig von den Betriebsmodi des Rechnersystems und/oder weiteren vorgebbaren Bedingungen ermöglichen.7. Device according to one of claims 1 to 3, characterized in that additional means are included, which enable activation and / or deactivation of analysis units depending on the operating modes of the computer system and / or further specifiable conditions.
8. Vorrichtung nach Anspruch 3, dadurch gekennzeichnet, dass die Vorrichtung derart ausgestaltet ist, dass in einem Vergleichsmodus eines Teilsystems die dem Teilsystem zugeordnete Analyseeinheit aktiv ist und die Analyseeinheiten der dem Teilsystem zugeordneten Ausführungseinheiten nicht aktiv sind.8. The device according to claim 3, characterized in that the device is configured such that in a comparison mode of a subsystem, the subsystem associated with the analysis unit is active and the analysis units of the subsystem associated execution units are not active.
9. Vorrichtung nach Anspruch 4 oder 5, dadurch gekennzeichnet, dass zusätzlich Zustände oder einzelne Einganssignale der Ausführungseinheiten und/oder der Vergleichsmittel von mindestens einer Analyseeinheit beeinflusst werden können und die Zustände oder Ausgangssignale dieser beeinflussten Einheiten von dieser oder einer anderen Analyseeinheit beobachtbar sind.9. Device according to claim 4 or 5, characterized in that additionally states or individual input signals of the execution units and / or the comparison means can be influenced by at least one analysis unit and the states or output signals of these influenced units can be observed by this or another analysis unit.
10. Rechnersystem mit einer Vorrichtung nach einem der Ansprüche 1 bis 9.10. Computer system with a device according to one of claims 1 to 9.
11. Verfahren zur Analyse von Abläufen in einem Rechnersystem mit mehreren Ausführungseinheiten, die in mindestens zwei verschiedenen Modi in dem Rechnersystem kcn- figurierbar sind, wobei wenigstens zwei Ausführungseinheiten in einem Performanzmo- dus als einem ersten Modus arbeiten und mindestens ein zweiter Modus als Vergleichsmodus vorgesehen ist und dass zur Beobachtung und/oder Beeinflussung von Zuständen und Abläufen in allen Ausführungseinheiten Analyseeinheiten, insbesondere Debug- Unterstützungseinheiten, verwendet werden, dadurch gekennzeichnet, dass die Vorrichtung wenigstens eine Analyseeinheit mehr enthält als die maximale Anzahl der Ausfüh- rungseinheiten, die im Performanzmodus unabhängig voneinander arbeiten, wobei die Analyseeinheiten die Zustände und Abläufe in den Ausfiihrungseinheiten beobachten und/oder beeinflussen können.11. A method for analyzing processes in a computer system having a plurality of execution units that can be configured in at least two different modes in the computer system, wherein at least two execution units operate in a performance mode as a first mode and at least one second mode is provided as a comparison mode and that for the observation and / or influencing of states and processes in all execution units analysis units, in particular debug Support units, characterized in that the device contains at least one analysis unit more than the maximum number of Ausfüh- tion units that operate independently of each other in the performance mode, the analysis units can observe and / or influence the states and processes in the execution units.
12. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass allen Ausführungseinheiten, die in mindestens einem ersten Modus nicht mit anderen Ausführungseinheiten in einem Vergleichsmodus zusammenarbeiten, jeweils eine Analyseeinheit zugeordnet ist, die die Zustände und Abläufe in dieser Ausführungseinheit beobachten und/oder beeinflussen kann.12. The method according to claim 11, characterized in that all execution units, which do not cooperate with other execution units in a comparison mode in at least one first mode, are each assigned an analysis unit which can observe and / or influence the states and processes in this execution unit.
13. Verfahren nach Anspruch 11, dadurch gekennzeichnet, dass in mindestens einem zweiten Modus des Rechnersystems mindestens zwei Ausführungseinheiten als ein temporäres Teilsystem in einem Vergleichsmodus zusammenarbeiten und diesem Teilsystem eine weitere Analyseeinheit zugeordnet ist, die die Zustände und Abläufe in diesem Teilsystem beobachten und/oder beeinflussen kann.13. The method according to claim 11, wherein in at least one second mode of the computer system, at least two execution units work together as a temporary subsystem in a compare mode, and that subsystem is assigned a further analysis unit which monitors the states and processes in that subsystem and / or can influence.
14. Verfahren nach einem der Ansprüche 11 bis 13, dadurch gekennzeichnet, dass durch mindestens ein Modus Signal, insbesondere Core Modus Signal, eine Umschaltung der Aktivität wenigstens einer Analyseeinheit erfolgt.14. The method according to any one of claims 11 to 13, characterized in that by at least one mode signal, in particular core mode signal, a switching of the activity of at least one analysis unit takes place.
15. Verfahren nach einem der Ansprüche 11 bis 13, dadurch gekennzeichnet, dass durch Steuersignale mindestens einer Analyseeinheit eine Umschaltung der Aktivität wenigstens einer anderen Analyseeinheit erfolgt.15. The method according to any one of claims 11 to 13, characterized in that by control signals of at least one analysis unit, a switching of the activity of at least one other analysis unit takes place.
16. Verfahren nach Anspruch 13, dadurch gekennzeichnet, dass eine Beobachtung und/oder Beeinflussung der Zustände und Abläufe aller Ausführungseinheiten des Teilsystems, das in einem Vergleichsmodus zusammenarbeitet, durch die Analyseeinheit synchron erfolgt.16. The method according to claim 13, characterized in that an observation and / or influencing of the states and processes of all execution units of the subsystem, which cooperates in a comparison mode, takes place synchronously by the analysis unit.
17. Verfahren nach einem der Ansprüche 11 bis 13, dadurch gekennzeichnet, dass eine Aktivierung und/oder Deaktivierung von Analyseeinheiten abhängig von den Betriebsmodi des Rechnersystems und/oder weiteren vorgebbaren Bedingungen vorgenommen wird 17. The method according to any one of claims 11 to 13, characterized in that an activation and / or deactivation of analysis units is carried out depending on the operating modes of the computer system and / or other predetermined conditions
18. Verfahren nach Anspruch 17, dadurch gekennzeichnet, dass die Aktivierung und/oder Deaktivierung durch in Hardware implementierte Mittel erfolgt, die Teil des Rechnersystems sind.18. The method according to claim 17, characterized in that the activation and / or deactivation is carried out by means implemented in hardware, which are part of the computer system.
19. Verfahren nach Anspruch 13, dadurch gekennzeichnet, dass in einem Vergleichsmodus eines Teilsystems die dem Teilsystem zugeordnete Analyseeinheit aktiv ist und die Analyseeinheiten der dem Teilsystem zugeordneten Ausführungseinheiten nicht aktiv sind.19. Method according to claim 13, characterized in that in a comparison mode of a subsystem, the analysis unit assigned to the subsystem is active and the analysis units of the execution units assigned to the subsystem are not active.
20. Verfahren nach Anspruch 14 oder 15, dadurch gekennzeichnet, dass zusätzlich Zustände oder einzelne Einganssignale der Ausführungseinheiten und/oder der Vergleichsmittel von mindestens einer Analyseeinheit beeinflusst werden und die Zustände oder Ausgangssignale dieser beeinflussten Einheiten von dieser oder einer anderen Analyseeinheit beobachtbar sind. 20. The method according to claim 14 or 15, characterized in that additionally states or individual input signals of the execution units and / or the comparison means are influenced by at least one analysis unit and the states or output signals of these influenced units are observable by this or another analysis unit.
PCT/EP2006/064694 2005-08-08 2006-07-26 Method and device for analyzing processes in a computer system having a plurality of execution units WO2007017388A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
EP06777995A EP1917596A1 (en) 2005-08-08 2006-07-26 Method and device for analyzing processes in a computer system having a plurality of execution units
JP2008525523A JP2009506408A (en) 2005-08-08 2006-07-26 Method and apparatus for analyzing a process in a computer system having a plurality of execution units

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
DE200510037232 DE102005037232A1 (en) 2005-08-08 2005-08-08 Method and device for analyzing processes in a computer system with several execution units
DE102005037232.5 2005-08-08

Publications (1)

Publication Number Publication Date
WO2007017388A1 true WO2007017388A1 (en) 2007-02-15

Family

ID=37114444

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/EP2006/064694 WO2007017388A1 (en) 2005-08-08 2006-07-26 Method and device for analyzing processes in a computer system having a plurality of execution units

Country Status (5)

Country Link
EP (1) EP1917596A1 (en)
JP (1) JP2009506408A (en)
CN (1) CN101243411A (en)
DE (1) DE102005037232A1 (en)
WO (1) WO2007017388A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010117813A (en) * 2008-11-12 2010-05-27 Nec Electronics Corp Debugging system, debugging method, debugging control method, and debugging control program

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101944061B (en) * 2010-09-15 2012-09-12 青岛海信移动通信技术股份有限公司 Method and device for debugging codes

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0528585A1 (en) * 1991-08-12 1993-02-24 Advanced Micro Devices, Inc. Processing system with internal instruction cache
US5371746A (en) * 1991-05-31 1994-12-06 Fuji Xerox Co., Ltd. Program debugging system for a distributed data processing system
US5968160A (en) * 1990-09-07 1999-10-19 Hitachi, Ltd. Method and apparatus for processing data in multiple modes in accordance with parallelism of program by using cache memory
US6615366B1 (en) * 1999-12-21 2003-09-02 Intel Corporation Microprocessor with dual execution core operable in high reliability mode
WO2006045776A1 (en) * 2004-10-25 2006-05-04 Robert Bosch Gmbh Method and device for generating a mode signal in a computer system comprising a plurality of components

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0934736A (en) * 1995-07-19 1997-02-07 Nec Corp Operation switching controller

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5968160A (en) * 1990-09-07 1999-10-19 Hitachi, Ltd. Method and apparatus for processing data in multiple modes in accordance with parallelism of program by using cache memory
US5371746A (en) * 1991-05-31 1994-12-06 Fuji Xerox Co., Ltd. Program debugging system for a distributed data processing system
EP0528585A1 (en) * 1991-08-12 1993-02-24 Advanced Micro Devices, Inc. Processing system with internal instruction cache
US6615366B1 (en) * 1999-12-21 2003-09-02 Intel Corporation Microprocessor with dual execution core operable in high reliability mode
WO2006045776A1 (en) * 2004-10-25 2006-05-04 Robert Bosch Gmbh Method and device for generating a mode signal in a computer system comprising a plurality of components

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
"MICROPROCESSOR Y CABLE", IBM TECHNICAL DISCLOSURE BULLETIN, IBM CORP. NEW YORK, US, vol. 34, no. 7B, 1 December 1991 (1991-12-01), pages 157 - 159, XP000282536, ISSN: 0018-8689 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010117813A (en) * 2008-11-12 2010-05-27 Nec Electronics Corp Debugging system, debugging method, debugging control method, and debugging control program

Also Published As

Publication number Publication date
JP2009506408A (en) 2009-02-12
CN101243411A (en) 2008-08-13
EP1917596A1 (en) 2008-05-07
DE102005037232A1 (en) 2007-02-15

Similar Documents

Publication Publication Date Title
DE102005037246A1 (en) Method and device for controlling a computer system having at least two execution units and a comparison unit
EP1812858B1 (en) Method and device for generating a mode signal in a computer system comprising a plurality of components
DE102009019961A1 (en) Apparatus, systems and methods for efficiently using hardware resources for a software test
DE102005037230A1 (en) Method and device for monitoring functions of a computer system
EP1810150A2 (en) Method and device for controlling a computer system
DE10312264A1 (en) Method and apparatus for causing differences in interlocked processors
DE102011011333B4 (en) Read to peripherals and write from peripherals with time-separated, redundant processor execution
EP1817662B1 (en) Method and device for switching between operating modes of a multiprocessor system by means of at least an external signal
WO2007057270A1 (en) Program-controlled unit and method for the operation thereof
EP1810146B1 (en) Method and device for separating the processing of program codes in a computer system comprising at least two execution units
WO2007017388A1 (en) Method and device for analyzing processes in a computer system having a plurality of execution units
EP2228723B1 (en) Method for error treatment of a computer system
DE102011007467A1 (en) Polynuclear integrated microprocessor circuitry for, e.g. vehicle domain computer, has tester to perform time-integral checking of specific components of auxiliary processor structure to and gradually expand checking of other components
EP3341843A1 (en) Method and apparatus for monitoring a state of an electronic circuit unit of a vehicle
DE102013022137A1 (en) Multi-level trace logging
EP1915686A2 (en) Method and device for determining a start status of a computer system having at least two execution units by marking registers
DE102006004988A1 (en) Flow analysis device for analyzing flows in a computer system has multiple executive units configured in two or more different modes in the computer system
DE102005037245A1 (en) Method and device for controlling a computer system with at least two execution units
EP1915674B1 (en) Method and device for controlling a computer system comprising at least two execution units and at least two groups of internal states
WO2007017363A1 (en) Method and device for switching in a computer system having at least two execution units by way of bit information in a register
DE102010031017A1 (en) Program flow monitoring method for e.g. microprocessor utilized in technical application, involves dividing program into atomic units and modifying signature using modification points utilized for hopping in program flow
EP1917594A2 (en) Method and device for processing data items and/or instructions
DE102005037259A1 (en) Method and device for determining a start state in a computer system having at least two execution units by switching register sets
DE102005037261A1 (en) Mode signal generation for use in computer system involves producing mode signal indicating current operating mode of computer system and changes in mode signal in one of components of computer system
WO2007017394A2 (en) Method and device for defining a start condition in a computer system comprising at least two execution units, by taking over the start condition

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 2006777995

Country of ref document: EP

121 Ep: the epo has been informed by wipo that ep was designated in this application
WWE Wipo information: entry into national phase

Ref document number: 2008525523

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 200680029453.0

Country of ref document: CN

WWP Wipo information: published in national office

Ref document number: 2006777995

Country of ref document: EP