DE19638165C1 - Input signal sequence generation - Google Patents

Input signal sequence generation

Info

Publication number
DE19638165C1
DE19638165C1 DE1996138165 DE19638165A DE19638165C1 DE 19638165 C1 DE19638165 C1 DE 19638165C1 DE 1996138165 DE1996138165 DE 1996138165 DE 19638165 A DE19638165 A DE 19638165A DE 19638165 C1 DE19638165 C1 DE 19638165C1
Authority
DE
Germany
Prior art keywords
definition
value
alternative
input signal
signal sequence
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
DE1996138165
Other languages
German (de)
Inventor
Thomas Bauer
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wincor Nixdorf International GmbH
Original Assignee
Wincor Nixdorf International 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 Wincor Nixdorf International GmbH filed Critical Wincor Nixdorf International GmbH
Priority to DE1996138165 priority Critical patent/DE19638165C1/en
Application granted granted Critical
Publication of DE19638165C1 publication Critical patent/DE19638165C1/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors

Abstract

The method involves providing an input signal sequence (S) to a control unit (10) which executes a predetermined control process based on the provided signal. The input signal sequence contains at least one signal group which defines a control instruction (key 20 on) for the control unit in a coded form. A processor begins at a first point in time with the processing of instructions of a generator building block which generates the input signal sequence starting with a first signal group. A number of the signal groups generated since the first point in time is determined at least once during the processing of the instructions of the generator building block. A sum is formed from the determined number and a preview value which is a produced minimum number of signal groups at an execution of a branch instruction of the generator building block. The processor executes the branch instruction only if the sum is smaller than a maximum value.

Description

Die Erfindung betrifft ein Verfahren zum Erzeugen mindestens einer Eingabesignalfolge für eine Steuereinheit, die abhängig von den Signalen der Eingabesignalfolge mindestens einen vor­ gegebenen Steuervorgang ausführt sowie eine Vorrichtung zum Durchführen des Verfahrens.The invention relates to a method for generating at least an input signal sequence for a control unit that is dependent at least one of the signals of the input signal sequence given control operation and a device to perform the procedure.

Das Testen von Steuereinheiten, die durch Eingaben einer Be­ dienperson gesteuert werden, kann automatisiert werden, wenn es gelingt, in einem ersten Testschritt die Eingaben automa­ tisch zu erzeugen. Die automatisch erzeugten Eingaben werden dann in einem weiteren Testschritt von der zu testenden Steu­ ereinheit abgearbeitet. Treten bei diesem Abarbeiten Fehler auf, so ist dies ein Zeichen dafür, daß noch Verbesserungen in der Steuereinheit durchgeführt werden müssen. Die Steuer­ einheit kann zum Beispiel eine Werkzeugmaschine steuern oder Regelungsaufgaben in ein Steuersystem mit einer Vielzahl von Sensoren und Steuerelementen übernehmen. Die zu testende Steuereinheit kann auch als Programm realisiert sein, das auf einer Datenverarbeitungsanlage ausgeführt wird.The testing of control units by entering a Be the operator can be automated if In a first test step, the entries can be made automatically generate table. The automatically generated entries are then in a further test step from the tax to be tested unit worked through. Errors occur during this processing on, this is a sign that there is still improvement must be carried out in the control unit. The tax unit can control a machine tool or Regulatory tasks in a control system with a variety of Take over sensors and controls. The one to be tested Control unit can also be implemented as a program based on a data processing system is executed.

Eine der durch einen Generatorbaustein erzeugten Eingabe­ signalfolgen enthält mindestens eine Signalgruppe, die einen Steuerbefehl für die Steuereinheit in codierter Form defi­ niert. Eine Signalgruppe könnte zum Beispiel einen Steuerbe­ fehl "Taste 1 Ein" definieren. Damit die Steuereinheit auto­ matisch getestet werden kann, ist der Steuerbefehl in der Signalgruppe codiert, z. B. als Binärfolge. Mehrere Signal­ gruppen werden oft zu einer komplexen Eingabesignalgruppe an­ einandergereiht, die einen komplexen Steuerbefehl definiert. Beim Betrieb der Steuereinheit werden jedoch nur Steuerbe­ fehle verwendet, die eine vorgegebene hänge nicht überschrei­ ten. Demzufolge sollen beim Erzeugen verschiedener Eingabesi­ gnalfolgen nur solche Eingabesignalfolgen durch den Generatorbaustein erzeugt werden, die eine Anzahl von Signalgruppen enthalten, die kleiner als eine vorgegebene Ma­ ximalanzahl ist.An input generated by a generator block signal sequences contains at least one signal group, the one Defi control command for the control unit in coded form kidney. For example, a signal group could be a control area "Define button 1 on". So that the control unit auto can be tested matically is the control command in the Coded signal group, e.g. B. as a binary sequence. Multiple signal groups often become a complex input signal group lined up that defines a complex control command. When operating the control unit, however, only control units are used a fault is used that does not exceed a given slope Accordingly, when generating various input pages signal sequences only such input signal sequences through the  Generator block are generated that have a number of Contain signal groups that are smaller than a predetermined Ma is the maximum number.

Beim Durchführen eines Verfahrens zum automatischen Erzeugen von Eingabesignalfolgen tritt eine Anzahl von Problemen auf. So sind nur bestimmte Kombinationen von Signalgruppen inner­ halb einer Eingabesignalfolge erlaubt. Werden die Signalgrup­ pen nacheinander generiert, so kann beim Generieren erst am Ende einer komplexen Signalgruppe überprüft werden, ob unter Berücksichtigung der bereits erzeugten Signalgruppen die vor­ gegebene Maximalanzahl überschritten ist. Ist dies der Fall, so muß die zuletzt erzeugte komplexe Signalgruppe verworfen werden. Das bedeutet aber auch, daß der Rechenaufwand zum Er­ zeugen der letztlich verworfenen Signalgruppe überflüssig war.When performing an automatic generation process There are a number of problems with input bursts. So only certain combinations of signal groups are internal allowed in an input signal sequence. Become the signal group pen are generated one after the other End of a complex signal group are checked whether under Taking into account the signal groups already generated given maximum number is exceeded. Is that the case, the complex signal group generated last must be discarded will. But this also means that the computing effort for the Er testify to the ultimately rejected signal group was.

Beim Erzeugen von Eingabesignalfolgen treten insbesondere auch Probleme auf, wenn beim Generieren Rekursionen beachtet werden müssen. Aufgrund dieser Rekursionen kommt es zu sehr langen Rechenzeiten bis zum Erzeugen einer gültigen Eingabe­ signalfolge. Diese langen Rechenzeiten resultieren auch aus den im vorigen Absatz erläuterten Zusammenhängen.When generating input signal sequences occur in particular also problems if recursions are taken into account when generating Need to become. Because of these recursions, it happens too much long computing times until a valid input is generated signal sequence. These long computing times also result from the relationships explained in the previous paragraph.

Aufgabe der Erfindung ist es, ein Verfahren zum Erzeugen min­ destens einer Eingabesignalfolge anzugeben, bei dem die Ein­ gabesignalfolge mit geringem Rechenaufwand in kurzer Zeit er­ zeugt wird sowie eine Vorrichtung zum Durchführen des Verfahrens anzugeben.The object of the invention is to provide a method for generating min to specify an input signal sequence in which the on signal sequence with little computing effort in a short time is witnessed and a device for performing of the procedure.

Diese Aufgabe wird durch ein Verfahren mit den Merkmalen des Patentanspruchs 1 gelöst, bei dem die folgenden Schritte aus­ geführt werden:
This object is achieved by a method having the features of claim 1, in which the following steps are carried out:

  • a) Ein Prozessor beginnt zu einem ersten Zeitpunkt mit dem Abarbeiten von Befehlen eines Generatorbau­ steins, der beginnend mit einer ersten Signalgruppe die Eingabesignalfolge generiert, a) A processor starts with at a first point in time the processing of commands from a generator construction steins starting with a first signal group generates the input signal sequence,  
  • b) beim Abarbeiten der Befehle des Generatorbausteins wird mindestens einmal die Anzahl der seit dem er­ sten Zeitpunkt generierten Signalgruppen ermittelt,b) when processing the commands of the generator module is at least once the number of times since he signal group generated at the earliest point in time,
  • c) aus der ermittelten Anzahl und einem Vorschauwert wird eine Summe gebildet,
    wobei der Vorschauwert die erzeugte Mindestanzahl von Signalgruppen beim Ausführen eines Verzwei­ gungsbefehls des Generatorbausteins ist,
    c) a sum is formed from the number determined and a preview value,
    the preview value being the minimum number of signal groups generated when a branching command of the generator module is executed,
  • d) der Prozessor den Verzweigungsbefehl nur dann aus­ führt, wenn die Summe kleiner als die Maximalanzahl ist.d) the processor only executes the branch instruction leads if the sum is less than the maximum number is.

Die Erfindung geht von der Erkenntnis aus, daß zusätzlicher Rechenaufwand vermieden werden kann, wenn vor dem Erzeugen weiterer Signalgruppen durch den Generatorbaustein bekannt ist, wieviele Signalgruppen beim Ausführen einer Alternative mindestens erzeugt werden. Die Signalgruppe oder die Signal­ gruppen der Alternative werden nur dann erzeugt, wenn durch Hinzufügen der Signalgruppe oder der Signalgruppen beim Aus­ führen der Alternative nach einem Verzweigungsbefehl die vor­ gegebene Maximalanzahl nicht überschritten wird. Deshalb wird bei der Erfindung ein Vorschauwert verwendet, der die erzeugte Mindestanzahl von Signalgruppen beim Ausführen eines Verzweigungsbefehls des Generatorbausteins angibt. Dieser Vorschauwert wird bei der Erfindung zur Anzahl der bisher er­ zeugten Signalgruppen der Eingabesignalfolge addiert, und der Prozessor führt den Verzweigungsbefehl, der das Ausführen der Alternative zur Folge hat, nur dann aus, wenn die Summe kleiner als der Maximalwert ist. Durch den Vorschauwert läßt sich zusätzlicher Rechenaufwand vermeiden, da nur noch Si­ gnalgruppen erzeugt werden, die zu Eingabesignalfolgen füh­ ren, welche die vorgegebene Maximalanzahl von Signalgruppen nicht überschreiten. The invention is based on the knowledge that additional Computational effort can be avoided if before generating other signal groups known by the generator module is how many signal groups when executing an alternative at least be generated. The signal group or the signal groups of the alternative are only created if by Add the signal group or the signal groups when switched off perform the alternative after a branch instruction given maximum number is not exceeded. That is why in the invention uses a preview value that the generated minimum number of signal groups when executing a Specifies branch instruction of the generator block. This In the case of the invention, the preview value becomes the number of previous ones witnessed signal groups of the input signal sequence added, and the The processor executes the branch instruction that executes the Alternative only results from when the sum is less than the maximum value. By the preview value lets avoid additional computing effort, since only Si Signal groups are generated that lead to input signal sequences ren, which the predetermined maximum number of signal groups do not exceed.  

In einem Ausführungsbeispiel der Erfindung ist die Eingabesi­ gnalfolge durch die bekannte BNF-Form (Backus-Naur-Form) dar­ stellbar. Die BNF-Form eignet sich insbesondere zur Darstel­ lung von erlaubten Eingabesignalfolgen, in denen Rekursionen auftreten können. Das bedeutet zum Beispiel, daß geklammerte Ausdrücke erlaubt sind, die gegebenenfalls auch verschachtelt sein können. Die BNF-Form enthält sogenannte Terminalelemen­ te. Beim Bearbeiten der Terminalelemente durch den Generator­ baustein wird bei diesem Ausführungsbeispiel der Erfindung jeweils eine Signalgruppe generiert. Durch die BNF-Form las­ sen sich erlaubte Eingabesignalfolgen für eine zu testende Steuereinheit auf einfache Art und Weise beschreiben. Dies gilt auch dann, wenn Rekursionen beim Erzeugen der Eingabesi­ gnalfolgen erlaubt sind.In one embodiment of the invention, the input si sequence due to the well-known BNF form (Backus-Naur form) adjustable. The BNF form is particularly suitable for presentation development of allowed input signal sequences in which recursions may occur. That means, for example, that parenthesized Expressions are allowed, which may also be nested could be. The BNF form contains so-called terminal elements te. When the terminal elements are processed by the generator Building block is in this embodiment of the invention generated one signal group each. Read through the BNF form allowed input signal sequences for a device under test Describe the control unit in a simple way. This also applies if recursions occur when generating the input si signal sequences are allowed.

In einem weiteren Ausführungsbeispiel der Erfindung werden die Vorschauwerte ermittelt, indem folgende Bearbeitungs­ schritte durchgeführt werden:
In a further exemplary embodiment of the invention, the preview values are determined by performing the following processing steps:

  • a) den Definitionselementen der BNF-Form werden Defi­ nitionselementwerte zugeordnet, die zu Beginn einen Startwert haben, der einer nach oben abgeschätzten Mindestanzahl von erzeugten Signalgruppen beim Be­ arbeiten des jeweiligen Definitionselements ent­ spricht,a) The definition elements of the BNF form become defi nition element values assigned, which at the beginning a Have an initial value that is estimated upwards Minimum number of signal groups generated when loading work on the respective definition element speaks,
  • b) beginnend mit einer ersten Definition der BNF-Form wird die jeweils bearbeitete Definition nach Defi­ nitionselementen durchsucht,b) starting with a first definition of the BNF form the definition processed according to Defi item elements searched,
  • c) beim Auftreten eines Definitionselements wird in dessen Definition die Alternative gesucht, bei der die Summe aus der Anzahl von Terminalelementen die­ ser Alternative und den Definitionselementwerten dieser Alternative am kleinsten ist, c) when a definition element occurs, in whose definition sought the alternative where the sum of the number of terminal elements this alternative and the definition element values of this alternative is the smallest  
  • d) der Wert der kleinsten Summe wird als neuer Defini­ tionselementwert für das in Schritt c aufgetretene Definitionselement verwendet,d) the value of the smallest sum is called the new definition tion element value for the one that occurred in step c Definition element used
  • e) falls beim Durchsuchen sämtlicher Definitionen der BNF-Form mindestens ein Definitionselementwert ver­ ringert wurde, wird das Verfahren beginnend mit Schritt b wiederholt.e) if, when searching all definitions of the BNF form ver at least one definition element value has been reduced, the procedure begins with Step b repeated.

Den Verfahrensschritten dieses Ausführungsbeispiels liegt die Erkenntnis zugrunde, daß ein Ermitteln des Vorschauwerts au­ tomatisch durchgeführt werden muß, da die BNF-Form zur Be­ schreibung der erlaubten Eingabesignalfolgen für die Steuer­ einheit sehr umfangreich sein können, z. B. mehrere hundert Zeilen lang. Treten in der BNF-Form Rekursionen auf, so war bisher ein Bestimmen von Vorschauwerten unmöglich. Rekursion bedeutet zum Beispiel, daß in der BNF-Form in einer Definiti­ onszeile eines Definitionselementes dieses Definitionselement auch auf der rechten Seite dieser Definitionszeile auftritt. Ein Definitionselement wird mit anderen Worten durch sich selbst definiert. Oft treten sogar mehrfache Rekursionen auf, die daran erkennbar sind, daß ein Definitionselement mehrfach bei der eigenen Definition auftritt.The method steps of this exemplary embodiment lie in the Based on the knowledge that a determination of the preview value on must be carried out automatically, since the BNF form for loading Write the allowed input signal sequences for the tax unit can be very extensive, e.g. B. several hundred Lines long. If recursions occur in the BNF form, that was So far it was impossible to determine preview values. Recursion means, for example, that in the BNF form in a definiti on line of a definition element of this definition element also occurs on the right side of this definition line. In other words, a definition element becomes itself self-defined. Often there are even multiple recursions, which can be recognized by the fact that a definition element is repeated occurs in your own definition.

Das Ausführungsbeispiel der Erfindung gibt ein Verfahren an, mit dem Vorschauwerte trotz Rekursionen in der BNF-Form be­ stimmt werden können. Dabei wird von der Erkenntnis ausgegan­ gen, daß durch die Rekursion zwar unendlich lange Eingabesi­ gnalfolgen möglich sind, die kleinste Anzahl von erzeugten Signalgruppen beim Bearbeiten eines Definitionselementes bzw. einer Definition jedoch in der Regel einen endlichen Wert hat. Demzufolge wird bei dem Ausführungsbeispiel der Erfin­ dung unterstellt, daß die Mindestanzahl von erzeugten Signal­ gruppen beim Bearbeiten des jeweiligen Definitionselements einen endlichen Wert hat. Dieser Wert kann zum Beispiel der größte durch einen beim Durchführen des Verfahrens verwende­ ten Prozessor bearbeitbare Zahlenwert sein. Den verschiedenen Definitionselementen wird in dem Ausführungsbeispiel der Er­ findung jeweils ein Definitionselementwert zugewiesen, dessen numerischer Wert eine Aussage über die Mindestanzahl erzeug­ ter Signalgruppen gibt, die beim Auflösen, d. h. beim Bearbei­ ten, der zugehörigen Definition erzeugt werden. Alle Defini­ tionselementwerte werden zu Beginn mit einem Startwert be­ legt, der einen großen numerischen Wert hat.The exemplary embodiment of the invention specifies a method with the preview values despite recursions in the BNF form can be voted. It is based on the knowledge against the fact that the recursion means that the input screen is infinitely long signal sequences are possible, the smallest number of generated Signal groups when editing a definition element or however, a definition usually has a finite value Has. Accordingly, in the embodiment, the inven assumes that the minimum number of signal generated groups when editing the respective definition element has a finite value. This value can be, for example, the largest by using one when performing the procedure th processor can be edited numerical value. The different  Definition elements is in the embodiment of the Er invention is assigned a definition element value whose numerical value generate a statement about the minimum number ter signal groups are there when resolving, d. H. while working ten, the associated definition. All defini Element values are initially assigned a start value that has a large numerical value.

Anschließend wird anhand der BNF-Form überprüft, ob sich die Definitionselementwerte verringern lassen. Dies ist der Fall, wenn in der BNF-Form für ein Definitionselement eine kürzere Alternative gefunden werden kann, d. h. eine Alternative, bei der die Summe aus der Anzahl von Terminalelementen dieser Alternative und den Definitionselementwerten dieser Alterna­ tive kleiner als der momentane Definitionselementwert des betrachteten Definitionselements ist. Das betrachtete Defi­ nitionselement ist dabei also das Definitionselement, zu dem die Alternative gehört.The BNF form is then used to check whether the Let definition element values decrease. This is the case if in the BNF form for a definition element a shorter one Alternative can be found d. H. an alternative at which is the sum of the number of terminal elements of this Alternative and the definition element values of this alterna tive less than the current definition element value of the considered definition elements. The Defi considered The nition element is the definition element to which the alternative belongs.

Die gesamte BNF-Form wird nach Definitionselementen durch­ sucht, deren Definitionselementwerte eventuell verringert werden können. Wird bei nur einem Definitionselement der BNF-Form der Definitionselementwert verringert, so wird bei dem Ausführungsbeispiel der Erfindung das Durchsuchen der BNF-Form auf mögliche Verringerungen hin wiederholt. Dieser Maß­ nahme liegt die Erkenntnis zugrunde, daß die verschiedenen Zeilen der BNF-Form in einem sehr engen Zusammenhang stehen. Eine Verringerung eines Definitionselementwertes kann im folgenden Durchlauf eine Verringerung anderer Definitions­ elementwerte zur Folge haben.The entire BNF form is defined by definition elements searches whose definition element values may decrease can be. If there is only one definition element, the BNF form the definition element value is reduced, so the Embodiment of the invention browsing the BNF form repeated for possible reductions. That measure is based on the knowledge that the different Lines of the BNF form are very closely related. A reduction in a definition element value can in subsequent run a reduction in other definitions result in element values.

In einem weiteren Ausführungsbeispiel der Erfindung ist der Verzweigungsbefehl vor den Befehlen zum Bearbeiten eines De­ finitionselements auszuführen und der für dieses Definitions­ element berechnete Definitionselementwert wird als Vorschau­ wert verwendet. Beim Abarbeiten der BNF-Form durch den Gene­ ratorbaustein kann somit vor dem Bearbeiten eines Definiti­ onselements festgestellt werden, welche Mindestanzahl von er­ zeugten Signalgruppen die Bearbeitung, d. h. das Auflösen die­ ses Definitionselements, erbringt.In a further embodiment of the invention, the Branch instruction before the instructions for editing a de to execute finition elements and that for this definition element calculated definition element value is used as a preview worth used. When the genes process the BNF form rator module can thus before editing a Definiti  on elements are determined, the minimum number of he signal groups generated the processing, i.e. H. dissolving the definition element.

In einem weiteren Ausführungsbeispiel der Erfindung wird der Verzweigungsbefehl vor den Befehlen zum Bearbeiten eines er­ sten Elements einer Alternative, eines sogenannten Alterna­ tivführers, ausgeführt. Der Vorschauwert ist in diesem Fall die Summe aus der Anzahl der Terminalelemente dieser Alterna­ tive und den Definitionselementwerten dieser Alternative.In a further embodiment of the invention, the Branch instruction before the instructions for editing an er most elements of an alternative, a so-called alterna tivführer, executed. The preview value is in this case the sum of the number of terminal elements of this alterna tive and the definition element values of this alternative.

Eine Vorrichtung zum Durchführen des Verfahrens ist im Patentanspruch 7 angegeben. Für diese Vorrichtung gelten die obengenannten vorteilhaften Wirkungen.An apparatus for performing the method is specified in claim 7. Apply to this device the above beneficial effects.

Die Erfindung wird auch eingesetzt, wenn die zu testende Steuereinheit, z. B. ein Compiler für eine Programmiersprache, ein Debugger oder ein Datenbankabfrageprogramm ist.The invention is also used when the to be tested Control unit, e.g. B. a compiler for a programming language, is a debugger or database query program.

Im folgenden werden Ausführungsbeispiele der Erfindung anhand der Figuren erläutert. Darin zeigen:Exemplary embodiments of the invention are described below of the figures explained. In it show:

Fig. 1 eine zu testende Steuereinheit, Fig. 1 is a control unit to be tested,

Fig. 2 ein Blockdiagramm zum Darstellen er­ laubter Eingaben für die zu testende Steuereinheit, Fig. 2 is a block diagram showing he laubter inputs for the control unit to be tested,

Fig. 3A, 3B und 3C Darstellungen zum Erzeugen dreier Ein­ gaben für die Steuereinheit, und Fig. 3A, 3B and 3C are diagrams for generating three A gave for the control unit, and

Fig. 4A und 4B ein Flußdiagramm der Verfahrensschritte zum Bestimmen der Vorschauwerte für De­ finitionselemente. FIGS. 4A and 4B, a flowchart of method steps for determining values for preview De finitionselemente.

Fig. 1 zeigt eine zu testende Steuereinheit 10, an die über Steuerleitungen 12 ein erster Motor 14 und über Steuerleitun­ gen 16 ein zweiter Motor 18 angeschlossen ist. Die Motoren 14 und 18 werden durch die Steuereinheit 10 abhängig von den Stellungen dreier Taster T1, T2 und T3 angesteuert. Dabei wird die Drehrichtung der Motoren 14 und 18 sowie deren Dreh­ zahl durch die Steuereinheit 10 vorgegeben. Der Taster 20, 22 bzw. 24 ist mit jeweils einem seiner Kontakte über eine Eingangsleitung 30, 32 bzw. 34 mit der Steuereinheit 10 ver­ bunden. Der andere Kontakt der Taster 20, 22 und 24 ist über eine Leitung 40, 42 bzw. 44 mit einer Masseleitung 46 verbun­ den. In Ruhestellung des Tasters 20, 22 bzw. 24 ist die Ein­ gabeleitung 30, 32 bzw. 34 nicht mit der Masseleitung 46 ver­ bunden. Dies ist nur in Arbeitsstellung des Tasters 20, 22 bzw. 24 der Fall. Fig. 1 shows a control unit 10 to be tested, to which a first motor 14 is connected via control lines 12 and a second motor 18 is connected via control lines 16 . The motors 14 and 18 are controlled by the control unit 10 depending on the positions of three buttons T1, T2 and T3. The direction of rotation of the motors 14 and 18 and their rotational speed is predetermined by the control unit 10 . The button 20 , 22 or 24 is connected to one of its contacts via an input line 30 , 32 or 34 with the control unit 10 . The other contact of the buttons 20 , 22 and 24 is connected via a line 40 , 42 and 44 with a ground line 46 to the. In the rest position of the button 20 , 22 or 24 , the A line 30 , 32 or 34 is not connected to the ground line 46 a related party. This is only the case when the button 20 , 22 or 24 is in the working position.

Fig. 2 zeigt ein Blockdiagramm zum Darstellen einer erlaubten Eingabe für die zu testende Steuereinheit 10. Die Taster 20, 22 und 33 dürfen nur in einer vorbestimmten Reihenfolge betä­ tigt werden, damit die Motoren 14 und 18 Drehbewegungen aus­ führen, die nicht zu einer Zerstörung eines mit den Motoren 14 und 18 verbundenen Kraftübertragungssystems führen. Das in der Fig. 2 gezeigte Blockdiagramm enthält einen ersten Block 50 für den Taster 20, einen zweiten Block 52 für den Taster 22 und einen dritten Block 54 für den Taster 24. Ein Start­ pfeil 56 muß zum Erzeugen einer gültigen Tastenfolge S der Taster 20, 22 und 24 auf jeden Fall durchlaufen werden. Der Pfeil 56 vereinigt sich in einem Vereinigungspunkt 58 mit ei­ nem weiter unten erläuterten Rückpfeil 60. Vom Vereinigungs­ punkt 58 führt ein Pfeil 62 zum Block 50. Aus dem Block 50 führt ein Pfeil 64 zu einem Verzweigungspunkt 66, der zwi­ schen den Blöcken 50 und 52 liegt. Ein Pfeil 68 führt vom Verzweigungspunkt 66 zum Block 52, und ein Pfeil 70 führt vom Verzweigungspunkt 66 unter Umgehung des Blocks 52 zu einem Vereinigungspunkt 72, in dem auch ein vom Block 52 kommender Pfeil 74 mündet. FIG. 2 shows a block diagram for illustrating an allowed input for the control unit 10 to be tested. The buttons 20 , 22 and 33 may only be actuated in a predetermined sequence so that the motors 14 and 18 perform rotary movements which do not lead to the destruction of a power transmission system connected to the motors 14 and 18 . The block diagram shown in FIG. 2 contains a first block 50 for the button 20 , a second block 52 for the button 22 and a third block 54 for the button 24 . A start arrow 56 must be run through to generate a valid key sequence S of the buttons 20 , 22 and 24 in any case. The arrow 56 merges in a union point 58 with a back arrow 60 explained below. An arrow 62 leads from block 58 to block 50 . From block 50 , an arrow 64 leads to a branching point 66 which lies between blocks 50 and 52 . An arrow 68 leads from the branching point 66 to the block 52 , and an arrow 70 leads from the branching point 66 , bypassing the block 52, to a union point 72 , in which an arrow 74 coming from the block 52 also ends.

Vom Vereinigungspunkt 72 führt ein Pfeil 76 zu einem Verzwei­ gungspunkt 78. Ein vom Verzweigungspunkt 78 ausgehender Pfeil 80 kennzeichnet, daß eine gültige Tastenfolge S erzeugt wurde, so daß das Ende des Durchlaufens des Blockdiagramms der Fig. 2 erreicht ist. Ein vom Verzweigungspunkt 78 ausge­ hender Rückpfeil 80 führt zum Block 54. Vom Block 54 führt der bereits erwähnte Rückpfeil 60 zum Vereinigungspunkt 58.An arrow 76 leads from the union point 72 to a branching point 78 . An arrow 80 starting from the branch point 78 indicates that a valid key sequence S has been generated, so that the end of running through the block diagram of FIG. 2 is reached. A back arrow 80 starting from the branch point 78 leads to the block 54 . The back arrow 60 already mentioned leads from the block 54 to the union point 58 .

Das Blockdiagramm der Fig. 2 kann auch in einer sogenannten BNF-Form (Backus-Naur-Form) dargestellt werden. Die BNF-Form für die Fig. 2 lautet S: = T1/T1, T2/S, T3,S. Diese BNF-Form hat nur eine Definitionszeile für das Definitionselement S (Tastenfolge). Die Definitionszeile enthält auf der linken Seite das zu definierende Definitionselement S. Die linke Seite ist durch einen Doppelpunkt und ein Gleichheitszeichen von der rechten Seite der Definitionszeile getrennt. Auf der rechten Seite sind durch Schrägstriche drei verschiedene Al­ ternativen voneinander getrennt. Eine erste Alternative be­ steht nur im Einschalten des Tasters 20 - dargestellt durch ein Terminalelement T1. Eine zweite Alternative besteht im Betätigen des Tasters 20 (Terminalelement T1) und einem an­ schließendem Betätigen des Tasters 22 (Terminalelement T2). Zeitlich aufeinander folgende Aktionen bzw. Elemente in der BNF-Form werden durch ein Komma getrennt. Eine dritte Al­ ternative ist durch eine Abfolge des Definitionselementes S, ein Betätigen des Tasters 24 (Terminalelement T3) sowie ein sich daran anschließendes weiteres Auftreten des Definitions­ elementes S gegeben.The block diagram of FIG. 2 can also be represented in a so-called BNF form (Backus-Naur form). . The BNF form for the Fig 2 is S: = T1 / T1, T2 / S, T3, S. This BNF form has only one definition line for the definition element S (key sequence). The definition line contains the definition element S to be defined on the left side. The left side is separated from the right side of the definition line by a colon and an equal sign. On the right side, slashes separate three different alternatives. A first alternative is only when the button 20 is switched on - represented by a terminal element T1. A second alternative consists in pressing the button 20 (terminal element T1) and then pressing the button 22 (terminal element T2). Actions or elements in the BNF form that follow one another in time are separated by a comma. A third alternative is given by a sequence of the definition element S, an actuation of the button 24 (terminal element T3) and a subsequent subsequent occurrence of the definition element S.

Die Elemente am Anfang einer Alternative, d. h. zweimal das Element T1 und einmal das Element S werden auch Alternativ­ führer genannt.The elements at the beginning of an alternative, i.e. H. twice that Element T1 and element S are also alternative called leader.

Für ein automatisches Generieren von erlaubten Tastenfolgen wird ein Generatorprogramm abgearbeitet, dem die BNF-Form zu­ grunde liegt. Aus der BNF-Form lassen sich für das Generator­ programm zwei Eingabedateien ableiten. Dazu werden die Ele­ mente der BNF-Form folgendermaßen numeriert:
For the automatic generation of permitted key sequences, a generator program is processed, which is based on the BNF form. Two input files for the generator program can be derived from the BNF form. The elements of the BNF form are numbered as follows:

Außerdem werden den Elementen der BNF-Form folgende Zustände Z1 bis Z9 zugewiesen:
In addition, the following states Z1 to Z9 are assigned to the elements of the BNF form:

Definitionselementen auf der rechten Seite einer Definitions­ zeile der BNF-Form werden dabei jeweils zwei Zustände zuge­ wiesen.Definition elements on the right side of a definition lines of the BNF form are given two states each grasslands.

In einer Zustandsdatei Z wird dem Generatorprogramm mitge­ teilt, welche Zustände beim Auftreten eines bestimmten Ele­ ments der BNF-Form einzuschalten und welche Zustände auszu­ schalten sind. Für die BNF-Form der Fig. 2 ergibt sich die folgende Zustandsdatei:
In a state file Z the generator program is informed which states should be switched on when a certain element of the BNF form occurs and which states are to be switched off. The following status file results for the BNF form in FIG. 2:

Der Elementnummer "1" wurde ein Endelement mit dem Namen "Ende" zugewiesen. Für alle anderen Elemente gilt die Regel, daß beim Auftreten des jeweiligen Elements, der bzw. die zu diesem Element gehörenden Zustände eingeschaltet werden. Beim Auftreten eines Elements am Ende einer der Alternativen wird der Zustand des durch diese Alternative definierten Definiti­ onselements ausgeschaltet, z. B. der Zustand Z1. Bei Definiti­ onselementen auf der rechten Seite, der BNF-Form, wird zu­ sätzlich auch der Zustand eingeschaltet, der demselben Defi­ nitionselement auf der linken Seite der BNF-Form zugeordnet ist. Die Nutzung der Zustandsdatei Z durch das Generatorpro­ gramm wird unten anhand der Fig. 3A bis 3C erläutert.An element with the name "End" was assigned to element number "1". The rule applies to all other elements that when the respective element occurs, the status or states belonging to this element are switched on. If an element occurs at the end of one of the alternatives, the state of the definition element defined by this alternative is switched off, e.g. B. the state Z1. In the case of definition elements on the right side, the BNF form, the state is also switched on, which is assigned to the same definition element on the left side of the BNF form. The use of the status file Z by the generator program is explained below with reference to FIGS. 3A to 3C.

Dem Generatorprogramm wird außerdem eine Produktionsdatei P vorgegeben, in der für jeden Zustand Z1 bis Z9 die Elemente genannt sind, die beim Einschalten des jeweiligen Zustandes verboten werden und in der die Elemente genannt sind, die beim Ausschalten des jeweiligen Zustandes verboten werden. Für die BNF-Form der Fig. 2 ergibt sich die folgende Produk­ tionsdatei:
The generator program is also given a production file P in which the elements are named for each state Z1 to Z9 which are prohibited when the respective state is switched on and in which the elements are mentioned which are prohibited when the respective state is switched off. The following production file results for the BNF form in FIG. 2:

Der Zustand Z1 verbietet bei "Ein" das Element mit der Ele­ mentnummer "1", d. h., das Endelement. Bei "Aus" verbietet der einem Definitionselement auf der linken Seite der BNF-Form zugeordnete Zustand Z1 alle Alternativführer der Definition dieses Definitionselements, d. h., die Elemente mit den Ele­ mentnummern "2", "3" und "5". Für die Zustände Z2, Z3, Z4 und Z7 gilt, daß bei "Ein" des jeweiligen Zustands die Element­ nummer, die dem jeweiligen Zustand zugeordnet ist, und bei "Aus" die Elementnummer des in der jeweiligen Alternative folgenden Elements verboten ist. Jeder der genannten Zustände Z2, Z3, Z4 und Z7, der einem Alternativführer zugeordnet ist, d. h., die Zustände Z2 und Z3, verbieten bei "Ein" außerdem die anderen Alternativführer der Definition zu der sie gehören. Für die Zustände Z5, Z6, Z8 und Z9 gelten die ge­ nannten Regeln entsprechend, jedoch sind die jeweils verbo­ tenen Elemente jeweils auf zwei Zustände Z5, Z6 bzw. Z8, Z9 verteilt. Die Nutzung der Produktionsdatei P durch das Gene­ ratorprogramm wird anhand der folgenden Beschreibung der Fig. 3A bis 3C deutlich.The state Z1 prohibits the element with the element number "1" at "On", ie the end element. If "Off", the state Z1 assigned to a definition element on the left side of the BNF form prohibits all alternative guides to the definition of this definition element, ie the elements with the element numbers "2", "3" and "5". For the states Z2, Z3, Z4 and Z7 applies that with "On" of the respective state the element number that is assigned to the respective state and with "Off" the element number of the element following in the respective alternative is prohibited. Each of the above-mentioned states Z2, Z3, Z4 and Z7, which is assigned to an alternative leader, ie states Z2 and Z3, also prohibit the other alternative leaders of the definition to which they belong when "on". For the states Z5, Z6, Z8 and Z9, the rules mentioned apply accordingly, but the elements that are prohibited are each divided into two states Z5, Z6 and Z8, Z9. The use of the production file P by the generator program is clear from the following description of FIGS . 3A to 3C.

Die Fig. 3A, 3B und 3C zeigen das Erzeugen dreier Eingaben für die Steuereinheit 10. In diesen Figuren werden durch Dop­ pelpfeile jeweils die als Eingabe realisierten Varianten an­ gegeben. Außerdem werden für verschiedene Schritte beim Er­ zeugen der jeweiligen Eingabe mit Kleinbuchstaben bezeichnete Zustandsvektoren für die Zustände Z1 bis Z9 angegeben. In diesen Zustandsvektoren ist ein eingeschalteter Zustand Z1 bis Z9 durch ein Pluszeichen in dem diesen Zustand zugeordne­ ten Element des Zustandsvektors verdeutlicht. Ein im jeweili­ gen Zustandsvektor ausgeschalteter Zustand wird durch ein Mi­ nuszeichen verdeutlicht. Aus der Produktionsdatei P können für jeden Zustandsvektor die verbotenen Elemente bestimmt werden. Die Elemente mit den Elementnummern "1" bis "7" wer­ den für jeden Zustandsvektor in den Fig. 3A bis 3C in Ele­ mentvektoren dargestellt. Der zu einem Zustandvektor gehö­ rende Elementevektor wird unmittelbar rechts neben diesem Zu­ standsvektor dargestellt. Dabei werden verbotene Elemente durch ein Minuszeichen und erlaubte Elemente durch ein Plus­ zeichen gekennzeichnet. Da auch mehrere Elemente in einem Elementevektor erlaubt sein können, wird das zur Bestimmung des nächsten Zustandvektors ausgewählte Element durch eine doppelte Umrandung gekennzeichnet. Figs. 3A, 3B and 3C show the generating three inputs for the control unit 10. In these figures, the variants implemented as input are indicated by double arrows. In addition, state vectors for the states Z1 to Z9 are given for different steps in generating the respective input with lower case letters. In these state vectors, a switched-on state Z1 to Z9 is illustrated by a plus sign in the element of the state vector assigned to this state. A state that is switched off in the respective state vector is indicated by a minus sign. The forbidden elements can be determined from the production file P for each state vector. The elements with the element numbers "1" to "7" are shown for each state vector in FIGS . 3A to 3C in element vectors. The element vector belonging to a state vector is shown immediately to the right of this state vector. Forbidden elements are identified by a minus sign and permitted elements by a plus sign. Since several elements can also be allowed in an element vector, the element selected for determining the next state vector is identified by a double border.

Die Fig. 3A zeigt das Erzeugen einer gültigen Eingabe, die nur aus dem Betätigen des Tasters 20 besteht. Diese Eingabe kann dargestellt werden, indem ausgehend vom Startpfeil 96 der Block 50 aufgerufen wird und anschließend unter Umgehung des Blocks 52 der Endepfeil 80 durchlaufen wird. Das Genera­ torprogramm beginnt mit einem Zustandsvektor a, in dem nur der Zustand Z1 erlaubt ist. Mit Hilfe der Produktionsdatei P wird der zugehörige Elementevektor bestimmt. In diesem Vektor sind die Elemente mit den Elementnummern "2", "3" und "5" er­ laubt. Das Generatorprogramm wählt nach einem vorgegebenen Schema, z. B. von links beginnend, beim Erzeugen gültiger Ein­ gabefolgen eines der erlaubten Elemente aus. Das jeweils ausgewählte Element kann in einer Merkdatei vermerkt werden, so daß sichergestellt wird, daß dieses Element später nicht noch einmal gewählt wird. Durch die Merkdatei ist es möglich, bei jedem Durchlauf des Generatorprogramms eine neue Eingabe für die Steuereinheit 10 zu erzeugen. Im Beispiel der Fig. 3A wird das Element mit der Elementnummer "2" gewählt. Da das zugehörige Element das Terminalelement T1 ist, wird in einer Ergebnisdatei E der zu diesem Element gehörende Befehl "Taste 20 Ein" in codierter Form hinterlegt. Anschließend wird mit Hilfe der Zustandsdatei Z ein neuer Zustandsvektor b erzeugt, indem aus der Zustandsdatei Z in der Zeile mit der Elementnummer "2" die ein- und auszuschaltenden Zustände abgelesen werden. Im Zustandsvektor b ist nur der Zustand Z2 eingeschaltet. Für diesen Zustandsvektor b ergibt sich aus der Produktionsdatei P der neben dem Zustandsvektor b darge­ stellte Elementevektor, in welchem nur das Element mit der Elementnummer "1" erlaubt ist. Dies ist das Endeelement. Das Generatorprogramm beendet daraufhin das Erzeugen der ersten Eingabe für die Steuereinheit 10. FIG. 3A shows the generation of a valid input which only consists of the actuation of the button 20 . This input can be represented by calling block 50 starting from the start arrow 96 and then traversing the end arrow 80 bypassing block 52 . The generator program begins with a state vector a in which only state Z1 is permitted. The associated element vector is determined using the production file P. In this vector, the elements with the element numbers "2", "3" and "5" are allowed. The generator program chooses according to a predetermined scheme, e.g. B. starting from the left, when creating valid input sequences from one of the allowed elements. The selected element can be noted in a memo file to ensure that this element is not selected again later. The memo file makes it possible to generate a new input for the control unit 10 each time the generator program is run. In the example of FIG. 3A, the element with the element number "2" is selected. Since the associated element is the terminal element T1, the command "key 20 on " belonging to this element is stored in a result file E in coded form. A new state vector b is then generated using the state file Z by reading the states to be switched on and off from the state file Z in the line with the element number “2”. Only state Z2 is switched on in state vector b. For this state vector b results from the production file P the element vector shown next to the state vector b Darge, in which only the element with the element number "1" is allowed. This is the end element. The generator program then ends the generation of the first input for the control unit 10 .

Fig. 3B zeigt das Erzeugen einer Eingabe, bei der erst der Taster 20 und dann der Taster 22 betätigt wird. Ausgehend vom Startpfeil 56 wird der Block 50, der Block 52 und anschlie­ ßend der Endepfeil 80 durchlaufen. Das Generatorprogramm be­ ginnt mit einem Zustandsvektor a, der dem bereits erläuterten Zustandsvektor a der Fig. 3A entspricht. Aus dem zum Zu­ standsvektor gehörenden Elementvektor wird jedoch im Beispiel der Fig. 3B das Element mit der Elementenummer "3" gewählt. Da dieses Element das Terminalelement T1 ist, wird es in ei­ ner neuen Zeile der Ergebnisdatei E eingetragen. Mit Hilfe der Zustandsdatei Z wird ein neuer Zustandsvektor b bestimmt, in dem für die Elementenummer "3" die ein- bzw. auszuschal­ tenden Zustände abgelesen werden. Im Zustandsvektor b sind der Zustand Z1 und der Zustand Z3 eingeschaltet und die an­ deren Zustände Z2, Z4 bis Z9 sind ausgeschaltet. Mit Hilfe der Produktionsdatei P ergibt sich ein zugehöriger Elemente­ vektor, bei dem nur das Element mit der Elementenummer "4" erlaubt ist. Bei Auswahl dieses Elementes wird festgestellt, daß es sich um das Terminalelement T2 handelt. Demzufolge wird dieses Terminalelement T2 in der Ergebnisdatei E ver­ merkt. Anschließend wird mit Hilfe der Zustandsdatei Z ein neuer Zustandsvektor c bestimmt. In diesem Zustandsvektor sind die Zustände Z3 und Z4 eingeschaltet, der Zustand Z1 wird ausgeschaltet. Aus der Produktionsdatei P ergibt sich für den Zustandsvektor c ein Elementevektor, in dem nur das Element mit der Elementnummer "1" erlaubt ist. Dieses Element ist das Endeelement. Somit ist auch das Erzeugen der Eingabe beendet. FIG. 3B shows the generation of an input in which the button 20 and then the button 22 are actuated first. Starting from the start arrow 56 , the block 50 , the block 52 and then the end arrow 80 are run through. The generator program begins with a state vector a, which corresponds to the already explained state vector a in FIG. 3A. From the element vector belonging to the state vector, however, the element with the element number "3" is selected in the example of FIG. 3B. Since this element is the terminal element T1, it is entered in a new line of the result file E. With the help of the status file Z, a new status vector b is determined, in which the on or off states are read for the element number "3". In the state vector b, the state Z1 and the state Z3 are switched on and the other states Z2, Z4 to Z9 are switched off. With the help of the production file P, an associated element vector results, in which only the element with the element number "4" is permitted. When selecting this element, it is determined that it is the terminal element T2. Accordingly, this terminal element T2 is noted in the result file E. A new state vector c is then determined using the state file Z. In this state vector, states Z3 and Z4 are switched on, state Z1 is switched off. From the production file P, an element vector results for the state vector c, in which only the element with the element number "1" is permitted. This element is the end element. The creation of the input is thus ended.

Fig. 3C zeigt das Erzeugen einer Eingabe, bei der der Taster 20, der Taster 24 und der Taster 20 in dieser Reihenfolge be­ tätigt werden. Ausgehend vom Startpfeil 56 wird der Block 50 durchlaufen, und anschließend wird unter Umgehung des Blocks 52 der Block 54 durchlaufen. Der Rückpfeil 60 führt erneut zum Block 50, von dem unter erneuter Umgehung des Blocks 52 der Endepfeil 80 erreicht wird. Das Generatorprogramm beginnt mit einem Zustandsvektor a, der dem bereits anhand der Fig. 3A erläuterten Zustandsvektor a entspricht. Das Generatorpro­ gramm wählt diesmal jedoch im zum Zustandsvektor a gehörenden Elementevektor das Element mit der Elementnummer "5" aus. Der Elementenummer ist das Definitionselement S zugeordnet. Dem­ zufolge ergeben sich beim Erzeugen weiterer Zustandsvektoren Besonderheiten. Aus der Zustandsdatei Z ergibt sich, daß zum einen die Zustände Z1, Z5 und Z6 einzuschalten sind. Ein re­ sultierender Zustandsvektor b1 wird jedoch nicht unmittelbar ausgewertet, sondern auf einem Stapelspeicher zur späteren Bearbeitung abgelegt. Dieser Stapelspeicher arbeitet nach dem bekannten Stapelprinzip, bei dem - ähnlich wie bei einem Bücherstapel - die zuletzt abgelegten Zustandsvektoren als erste wieder entnommen werden. Fig. 3C shows the generation of an input in which the button 20 , the button 24 and the button 20 are operated in this order. Starting from the start arrow 56 , the block 50 is run through, and then bypassing the block 52, the block 54 is run through. The back arrow 60 leads again to the block 50 , from which the end arrow 80 is reached by bypassing the block 52 again. The generator program begins with a state vector a which corresponds to the state vector a already explained with reference to FIG. 3A. This time, however, the generator program selects the element with the element number "5" in the element vector belonging to the state vector a. The definition element S is assigned to the element number. According to this, there are peculiarities when generating further state vectors. The state file Z shows that states Z1, Z5 and Z6 must be switched on. A resultant state vector b1 is not evaluated immediately, however, but is stored on a stack for later processing. This stack memory works according to the known stack principle, in which - similar to a stack of books - the last stored state vectors are removed first.

Außerdem ergibt sich aus der Zustandsdatei Z, daß ein neuer Zustandsvektor b2 anzulegen ist, bei dem nur der Zustand Z1 eingeschaltet ist. Dieser Zustandsvektor b2 entspricht dem Zustandsvektor a der Fig. 3A, so daß die Bearbeitung wie oben erläutert fortgesetzt wird. Dabei wird in der Ergebnis­ datei E in einer neuen Zeile das Terminalelement T1 vermerkt. Anstelle des in der Fig. 3A entstandenen Zustandsvektors b ergibt sich in der Fig. 3C ein Zustandsvektor c mit einem zugehörigen Elementevektor, in dem nur das Element mit der Elementenummer "1" erlaubt ist. Das Generatorprogramm wählt dieses Element aus, stellt fest, daß es sich um das Endeele­ ment handelt und prüft nun jedoch, ob sich noch ein Zustands­ vektor auf dem Speicher befindet. Da dies der Fall ist, wird vom Stapelspeicher der oberste Zustandsvektor b1 gelesen und als neuer Zustandsvektor d verwendet. Der zum Zustandsvektor d gehörende Elementevektor erlaubt nur das Element mit der Elementenummer "6", d. h. das Terminalelement T3, welches in der Ergebnisdatei E vermerkt wird. Aus der Zustandsdatei Z werden dann für dieses Element die ein- bzw. auszuschaltenden Zustände abgelesen. Es ergibt sich ein Zustandsvektor e und ein zugehöriger Elementevektor, bei dem nur das Element mit der Elementenummer "7" erlaubt ist. Die Elementenummer "7" ist wiederum einem Definitionselement zugeordnet. Gemäß Zu­ standsdatei Z werden in einem Zustandsvektor f1 zusätzlich zu den bereits eingeschalteten Zuständen die Zustände Z8 und Z9 eingeschaltet und der Zustand Z1 ausgeschaltet. Der Zustands­ vektor f1 wird anschließend auf dem Stapelspeicher abgelegt.It also follows from the status file Z that a new status vector b2 is to be created in which only the status Z1 is switched on. This state vector b2 corresponds to the state vector a of FIG. 3A, so that the processing is continued as explained above. The terminal element T1 is noted in the result file E in a new line. Instead of the state vector b created in FIG. 3A, a state vector c with an associated element vector results in FIG. 3C, in which only the element with the element number "1" is permitted. The generator program selects this element, determines that it is the end element and now checks whether there is still a state vector in the memory. Since this is the case, the top state vector b1 is read from the stack and used as the new state vector d. The element vector belonging to the state vector d only allows the element with the element number "6", ie the terminal element T3, which is noted in the result file E. The states to be switched on or off are then read from the status file Z for this element. The result is a state vector e and an associated element vector, in which only the element with the element number "7" is permitted. The element number "7" is in turn assigned to a definition element. According to state file Z, states Z8 and Z9 are switched on and state Z1 is switched off in a state vector f1 in addition to the states that have already been switched on. The state vector f1 is then stored on the stack.

Das Generatorprogramm erzeugt anschließend einen Zustandsvek­ tor f2, bei dem nur der Zustand Z1 erlaubt ist. Der Zustands­ vektor f2 stimmt mit dem Zustandsvektor a der Fig. 3A über­ ein, so daß die Bearbeitung wie dort erläutert fortgesetzt wird. Dabei wird in der Eingabedatei E erneut das Terminal­ element T1 vermerkt. Anstelle des Zustandsvektor b der Fig. 3A entsteht beim Beispiel der Fig. 3C ein Zustandsvektor g. Diesem Zustandsvektor ist ein Elementevektor zugeordnet, bei dem nur das Endeelement mit der Elementnummer "1" erlaubt ist. Da sich jedoch noch der Zustandsvektor f1 auf dem Sta­ pelspeicher befindet, beendet das Generatorprogramm das Er­ zeugen der Eingabe vorerst noch nicht, sondern liest den Zu­ standsvektor f1 vom Stapelspeicher als neuen Zustandsvektor h. Der zum Zustandsvektor h gehörende Elementevektor erlaubt nur das Endeelement mit der Elementenummer "1". Da nunmehr keine Zustandsvektoren mehr auf dem Stapelspeicher vorhanden sind, beendet das Generatorprogramm das Erzeugen der dritten Eingabefolge für die Steuereinheit 10.The generator program then generates a state vector f2 in which only state Z1 is permitted. The state vector f2 agrees with the state vector a of FIG. 3A, so that the processing is continued as explained there. The terminal element T1 is again noted in the input file E. Instead of the state vector b of FIG. 3A, a state vector g is created in the example of FIG. 3C. An element vector is assigned to this state vector, in which only the end element with the element number "1" is permitted. However, since the state vector f1 is still on the stack, the generator program does not end the generation of the input for the time being, but reads the state vector f1 from the stack as a new state vector h. The element vector belonging to the state vector h only allows the end element with the element number "1". Since there are now no more state vectors on the stack, the generator program ends the generation of the third input sequence for the control unit 10 .

Dem Generatorprogramm wird vor dem Start durch eine Bedien­ person vorgegeben, wie lang eine Eingabe für die Steuerein­ heit 10 maximal sein darf, d. h. wieviele aufeinanderfolgende Tastenbetätigungen zugelassen sind. Um die vorhandene Rechen­ kapazität beim Erzeugen der Eingaben für die Steuereinheit 10 zu nutzen, berücksichtigt das Generatorprogramm Vorschau­ werte. Die Vorschauwerte geben bei Alternativführern an, wie­ viele Tastenbetätigungen beim Bearbeiten der jeweiligen Al­ ternative erzeugt werden. Bei Definitionselementen geben die Vorschauwerte an, wieviele Tastenbetätigungen beim Auflösen bzw. Bearbeiten der jeweiligen Definition erzeugt werden. Für die genannte BNF-Form ergeben sich drei Vorschauwerte für Al­ ternativführer. Dem Element mit der Elementenummer "2", "3" bzw. "5" ist der Vorschauwert "1", "2" bzw. "3" zugeordnet. Dem Definitionselement S mit der Elementnummer "5" bzw. "7" ist der Vorschauwert "1" zugeordnet. Anhand der Vorschauwerte bestimmt das Generatorprogramm, ob die jeweilige Alternative, bzw. das jeweilige Definitionselement bearbeitet werden soll. Dazu werden die bereits in der Ergebnisdatei E hinterlegten Tastenbetätigungen gezählt. Zu der so ermittelten Anzahl von bereits erzeugten Tastenbetätigungen, wird der Vorschauwert addiert. Ergibt sich ein Wert, der größer als die vorgegebene Anzahl von Tastenbetätigungen ist, so wird eine andere Alter­ native gesucht. Ist der ermittelte Wert jedoch kleiner als der vorgegebene Wert, so wird die Alternative, auf die sich der Vorschauwert bezieht, bzw. das Definitionselement, auf das sich der Vorschauwert aufgelöst, in dem die Alternative bzw. das Definitionselement nach dem oben erläuterten Schema abgearbeitet werden.Before the start, the generator program is specified by an operator as to how long an input for the control unit 10 may be, ie how many consecutive key presses are permitted. In order to use the existing computing capacity when generating the inputs for the control unit 10 , the generator program takes into account preview values. For alternative guides, the preview values indicate how many button presses are generated when editing the respective alternative. In the case of definition elements, the preview values indicate how many key presses are generated when the definition is edited or edited. There are three preview values for alternative leaders for the BNF form mentioned. The preview value "1", "2" or "3" is assigned to the element with the element number "2", "3" or "5". The preview value "1" is assigned to the definition element S with the element number "5" or "7". The generator program uses the preview values to determine whether the respective alternative or the respective definition element should be processed. To do this, the button presses already stored in the result file E are counted. The preview value is added to the number of key presses already generated. If there is a value that is greater than the specified number of key presses, a different alternative is sought. However, if the determined value is smaller than the specified value, the alternative to which the preview value relates or the definition element to which the preview value is resolved is processed by processing the alternative or the definition element in accordance with the scheme explained above .

Die Fig. 4A und 4B zeigen ein Flußdiagramm der Verfahrens­ schritte zum Bestimmen der Vorschauwerte für Definitionsele­ mente. Dieses Verfahren beginnt in einem Schritt 100, in dem ein Speicherbereich für eine später benötigte Tabelle bereit­ gestellt wird. Anschließend wird ein Schritt 102 ausgeführt. FIGS. 4A and 4B show a flowchart of the process steps for determining the values for preview Definitionsele elements. This method begins in a step 100 , in which a storage area is made available for a table that is required later. A step 102 is then carried out.

Im Schritt 102 wird das erste Element der rechten Seite in der ersten Zeile der BNF-Form geholt. Anschließend wird das Verfahren im Schritt 104 fortgesetzt.In step 102 , the first element of the right side is fetched in the first line of the BNF form. The method is then continued in step 104 .

Im Schritt 104 wird festgestellt, ob das aktuelle Element ein Definitionselement ist. Ist dies nicht der Fall, wird das Verfahren in einem später erläuterten Schritt 142 fortge­ setzt. Wird im Schritt 104 jedoch festgestellt, daß das aktu­ elle Element ein Definitionselement ist, so folgt unmittelbar nach dem Schritt 104 der Schritt 106.Step 104 determines whether the current element is a definition element. If this is not the case, the method is continued in a step 142 explained later. However, if it is determined in step 104 that the current element is a definition element, step 106 follows immediately after step 104 .

Im Schritt 106 wird eine Variable "Min" auf den größten ganz­ zahligen Wert gesetzt, der durch einen Mikroprozessor bear­ beitet werden kann, der das Verfahren zur Bestimmung der Vor­ schauwerte durchführt. Außerdem wird im Verfahrensschritt 106 eine Variable "Sum" auf den Wert Null gesetzt. Anschließend wird das Verfahren im Schritt 108 fortgesetzt.In step 106 , a variable "Min" is set to the largest integer value that can be processed by a microprocessor that carries out the method for determining the preview values. In addition, in method step 106, a variable "Sum" is set to the value zero. The method is then continued in step 108 .

Im Schritt 108 wird überprüft, ob das gerade betrachtete De­ finitionselement bereits in der genannten Tabelle eingetragen ist. Ist dies nicht der Fall, so wird in Schritt 110 für die­ ses Definitionselement eine Variable für einen zugeordneten Definitionselementwert bereitgestellt, die mit dem maximal bearbeitbaren Wert belegt wird. Nach dem Schritt 110 folgt unmittelbar der Schritt 112. Dieser Schritt folgt auch unmit­ telbar nach dem Schritt 108, wenn im Schritt 108 festgestellt wird, daß das betrachtete Definitionselement bereits in der Tabelle vorhanden ist.In step 108 it is checked whether the definition element just under consideration has already been entered in the table mentioned. If this is not the case, a variable for an assigned definition element value is provided in step 110 for this definition element, which variable is assigned the maximum editable value. After step 110 , step 112 follows immediately. This step also follows immediately after step 108 when it is determined in step 108 that the definition element under consideration already exists in the table.

Im Schritt 112 wird der zum betrachteten Definitionselement gehörende Definitionselementwert aus der Tabelle gelesen. An­ schließend wird das Verfahren im Schritt 114 fortgesetzt. Im Schritt 114 wird aus der BNF-Form die rechte Seite des be­ trachteten Definitionselementes geholt, und das erste Element der ersten Alternative dieser rechten Seite wird als aktuelles Element gekennzeichnet. Anschließend wird das Ver­ fahren in Schritt 116 fortgesetzt.In step 112 , the definition element value belonging to the definition element under consideration is read from the table. The method then continues in step 114 . In step 114 , the right side of the definition element in question is fetched from the BNF form, and the first element of the first alternative of this right side is identified as the current element. The method is then continued in step 116 .

Im Schritt 116 wird ermittelt, ob die zum jeweils aktuellen Element gehörende Alternative ein unbearbeitetes Definitions­ element enthält. Unbearbeitete Definitionselemente sind dabei Definitionselemente, die nicht in der Tabelle eingetragen sind, bzw. deren zugeordneter Definitionselementwert den ma­ ximalen Wert hat. Enthält die aktuelle Alternative unbear­ beitete Definitionselemente, so folgt unmittelbar nach dem Schritt 116 der Schritt 118. Im Schritt 118 wird überprüft, ob bereits die letzte Alternative in der Definition des be­ trachteten Definitionselementes geprüft wurde. Ist dies der Fall, so wird das Verfahren in dem später erläuterten Schritt 142 fortgesetzt. Wird im Schritt 118 jedoch festgestellt, daß die letzte Alternative der Definition des betrachteten Definitionselementes noch nicht erreicht ist, so wird unmittelbar nach dem Schritt 118 der Schritt 120 durch­ geführt, in welchem das erste Element der nächsten Alterna­ tive geholt wird. Nach dem Schritt 120 wird das Verfahren mit dem bereits erläuterten Schritt 116 fortgesetzt.In step 116 it is determined whether the alternative belonging to the current element contains an unprocessed definition element. Unprocessed definition elements are definition elements that are not entered in the table or whose assigned definition element value has the maximum value. If the current alternative contains unprocessed definition elements, step 118 follows immediately after step 116 . In step 118 it is checked whether the last alternative in the definition of the definition element in question has already been checked. If this is the case, the method is continued in step 142 explained later. If, however, it is determined in step 118 that the last alternative of the definition of the definition element under consideration has not yet been reached, step 120 is carried out immediately after step 118 , in which the first element of the next alternative is fetched. After step 120 , the method continues with step 116 already explained.

Wird im Schritt 116 festgestellt, daß die aktuelle Alterna­ tive der Definition des betrachteten Definitionselementes keine unbearbeiteten Definitionselemente enthält, so wird das Verfahren im Schritt 122 fortgesetzt. Im Schritt 122 wird die Variable "Sum" um einen Wert erhöht, der bei Definitionsele­ menten dem variablen Wert aus der Tabelle entspricht. Bei Terminalelementen ist der zur Variable "Sum" addierte Wert gleich Null. Nach dem Schritt 122 wird unmittelbar ein Schritt 124 ausgeführt.If it is determined in step 116 that the current alternative to the definition of the definition element under consideration does not contain any unprocessed definition elements, the method continues in step 122 . In step 122 , the variable "Sum" is increased by a value which corresponds to the variable value from the table in the case of definition elements. For terminal elements, the value added to the "Sum" variable is zero. After step 122 , step 124 is carried out immediately.

Im Schritt 124 wird geprüft, ob bereits das Ende in der aktu­ ell bearbeiteten Alternative erreicht ist. Ist dies nicht der Fall, so wird in einem sich unmittelbar an den Schritt 124 anschließenden Schritt 126 geprüft, ob in der aktuell bear­ beiteten Alternative ein weiteres Definitionselement vorhan­ den ist. Wird im Schritt 126 festgestellt, daß es noch ein weiteres Definitionselement in der aktuell bearbeiteten Al­ ternative gibt, so folgt unmittelbar nach dem Schritt 126 der Schritt 128, in welchem das nächste Definitionselement in der aktuell bearbeiteten Alternative geholt wird. Nach dem Holen des nächsten Definitionselementes wird das Verfahren im bereits erläuterten Schritt 122 fortgesetzt.In step 124 it is checked whether the end in the currently processed alternative has already been reached. If this is not the case, then in a step 126 immediately following step 124 , it is checked whether there is a further definition element in the currently processed alternative. If it is determined in step 126 that there is still another definition element in the currently processed alternative, step 128 follows immediately after step 126 , in which the next definition element in the currently processed alternative is fetched. After the next definition element has been fetched, the method is continued in step 122 already explained.

Wird im Schritt 124 festgestellt, daß das letzte Element in der aktuell bearbeiteten Alternative erreicht ist, so wird unmittelbar nach dem Schritt 124 der Schritt 130 ausgeführt. Dieser Schritt 130 wird auch ausgeführt, wenn im Schritt 126 festgestellt wird, daß die aktuell bearbeitete Alternative kein weiteres Definitionselement mehr enthält.If it is determined in step 124 that the last element in the currently processed alternative has been reached, step 130 is carried out immediately after step 124 . This step 130 is also carried out if it is determined in step 126 that the currently processed alternative no longer contains any further definition element.

Im Schritt 130 wird die Variable "Sum" um die Anzahl der in der aktuell bearbeiteten Alternative enthaltenen Terminalele­ mente erhöht. Anschließend wird der Schritt 132 ausgeführt, in welchem der Wert der Variablen "Min" erneut bestimmt wird, in dem das Minimum aus dem Wert der Variablen "Min" und der Variablen "Sum" gebildet wird. Anschließend wird das Verfah­ ren im Schritt 134 fortgesetzt.In step 130 , the variable "Sum" is increased by the number of terminal elements contained in the currently processed alternative. Step 132 is then carried out, in which the value of the variable "Min" is determined again, in which the minimum is formed from the value of the variable "Min" and the variable "Sum". The method is then continued in step 134 .

Im Schritt 134 wird geprüft, ob der Wert der Variable "Min" kleiner als der Definitionselementwert des betrachteten Defi­ nitionselements. Das betrachtete Definitionselement ist je­ weils das letzte Definitionselement, für das die Frage im Schritt 104 mit "Ja" beantwortet wurde. Ist der ermittelte Wert für die Variable "Min" größer oder gleich dem Definiti­ onselementwert des betrachteten Definitionselements, so wird das Verfahren im Schritt 142 fortgesetzt. Ist der Wert der Variable Min jedoch kleiner als der Definitionselementwert des betrachteten Definitionselements, so wird unmittelbar nach dem Schritt 134 der Schritt 136 ausgeführt.In step 134 it is checked whether the value of the variable “Min” is less than the definition element value of the definition element under consideration. The definition element under consideration is always the last definition element for which the question in step 104 was answered with "yes". If the value determined for the variable “Min” is greater than or equal to the definition element value of the definition element under consideration, the method continues in step 142 . However, if the value of the variable Min is smaller than the definition element value of the definition element under consideration, step 136 is carried out immediately after step 134 .

Im Schritt 136 wird der ermittelte Wert für die Variable "Min" dem Definitionselementwert des betrachteten Definiti­ onselements zugewiesen. Dies kann zum Beispiel dadurch er­ folgen, daß in der Tabelle der Definitionselementwert für das betrachtete Definitionselement mit dem Wert der Variable "Min" überschrieben wird (Schritt 138). Nach dem Schritt 138 wird unmittelbar ein Schritt 140 durchgeführt. Im Schritt 140 wird geprüft, ob das Ende der im Schritt 114 geholten rechten Seite erreicht ist. Ist dies nicht der Fall, so wird das Ver­ fahren im bereits erläuterten Schritt 120 fortgesetzt. Wird im Schritt 140 jedoch festgestellt, daß das Ende der rechten Seite erreicht ist, so folgt unmittelbar nach dem Schritt 140 der Schritt 142.In step 136 , the determined value for the variable "Min" is assigned to the definition element value of the definition element under consideration. This can be done, for example, by overwriting the definition element value for the definition element under consideration with the value of the variable "Min" in the table (step 138 ). After step 138 , step 140 is carried out immediately. In step 140 it is checked whether the end of the right side obtained in step 114 has been reached. If this is not the case, the method is continued in step 120 already explained. However, if it is determined in step 140 that the end of the right side has been reached, step 142 follows immediately after step 140 .

Im Schritt 142 wird geprüft, ob bereits das letzte Element der BNF-Form bearbeitet wurde. Ist dies nicht der Fall, so wird im Schritt 144 das nächste Element der BNF-Form geholt. Anschließend wird das Verfahren im Schritt 104 fortgesetzt. Wird im Schritt 142 jedoch festgestellt, daß das letzte Ele­ ment der BNF-Form bereits bearbeitet wurde, so wird der Ver­ fahrensschritt 146 unmittelbar nach dem Verfahrensschritt 142 durchgeführt.In step 142 it is checked whether the last element of the BNF form has already been processed. If this is not the case, the next element of the BNF form is fetched in step 144 . The method is then continued in step 104 . However, if it is determined in step 142 that the last element of the BNF form has already been processed, method step 146 is carried out immediately after method step 142 .

Im Verfahrensschritt 146 wird überprüft, ob seit dem letzten Ausführen des Schritt 102 eine Verringerung irgendeines Defi­ nitionselementwertes erreicht wurde. Dazu kann zum Beispiel die aktuelle Tabelle mit einer im Schritt 102 gespeicherten älteren Tabelle verglichen werden. Können im Schritt 146 Ver­ besserungen festgestellt werden, so wird das beschriebene Verfahren beginnend mit dem Schritt 102 wiederholt. Wird im Schritt 146 jedoch festgestellt, daß keine Verbesserungen seit dem letzten Durchführen des Schritts 102 erreicht wur­ den, so wird das Verfahren in einem Schritt 148 beendet. Die Definitionselementwerte in der Tabelle werden zur weiteren Bearbeitung gespeichert.In step 146 , it is checked whether a reduction in any definition element value has been achieved since the last execution of step 102 . For this purpose, for example, the current table can be compared with an older table stored in step 102 . If improvements can be determined in step 146 , the described method is repeated starting with step 102 . However, if it is determined in step 146 that no improvements have been achieved since the last time step 102 was carried out , the method is ended in a step 148 . The definition element values in the table are saved for further processing.

Die Vorschauwerte für die Definitionselemente können der Ta­ belle unmittelbar entnommen werden. Die Vorschauwerte für die Alternativführer werden ermittelt, indem für jede Alternative die Definitionselementwerte von gegebenenfalls in dieser Al­ ternative enthaltenen Definitionselementen addiert werden und anschließend zu dem so erhaltenen Wert noch die Anzahl der in der betrachteten Alternative enthaltenen Terminalelemente addiert wird.The preview values for the definition elements can be found in the Ta belle can be removed immediately. The preview values for the Alternative guides are identified by looking for each alternative the definition element values of where appropriate in this Al ternative contained definition elements are added and then the number of in of the considered alternative contained terminal elements is added.

Claims (7)

1. Verfahren zum Erzeugen mindestens einer Eingabesignalfol­ ge (S) für eine Steuereinheit (10), die abhängig von den Signalen der Eingabesignalfolge mindestens einen vorge­ gebenen Steuervorgang ausführt,
wobei die Eingabesignalfolge (S) mindestens eine Signal­ gruppe enthält, die einen Steuerbefehl (Taster 20 Ein) für die Steuereinheit (10) in codierter Form definiert,
und wobei die Anzahl von Signalgruppen kleiner als eine vorgegebene Maximalanzahl ist,
und bei dem die folgenden Schritte ausgeführt werden:
  • a) Ein Prozessor beginnt zu einem ersten Zeitpunkt mit dem Abarbeiten von Befehlen eines Generatorbau­ steins, der beginnend mit einer ersten Signalgruppe die Eingabesignalfolge (S) generiert,
  • b) beim Abarbeiten der Befehle des Generatorbausteins wird mindestens einmal die Anzahl der seit dem er­ sten Zeitpunkt generierten Signalgruppen ermittelt,
  • c) aus der ermittelten Anzahl und einem Vorschauwert wird eine Summe gebildet,
    wobei der Vorschauwert die erzeugte Mindestanzahl von Signalgruppen beim Ausführen eines Verzweigungsbefehls des Generatorbausteins ist,
  • d) der Prozessor den Verzweigungsbefehl nur dann aus­ führt, wenn die Summe kleiner als die Maximalanzahl ist.
1. A method for generating at least one input signal sequence (S) for a control unit ( 10 ) which, depending on the signals of the input signal sequence, carries out at least one predetermined control process,
wherein the input signal sequence (S) contains at least one signal group which defines a control command (button 20 on ) for the control unit ( 10 ) in coded form,
and the number of signal groups is less than a predetermined maximum number,
and doing the following:
  • a) At a first point in time, a processor begins to process commands from a generator module which, starting with a first signal group, generates the input signal sequence (S),
  • b) when processing the commands of the generator module, the number of signal groups generated since the first time is determined at least once,
  • c) a sum is formed from the number determined and a preview value,
    the preview value being the minimum number of signal groups generated when a branch instruction of the generator module is executed,
  • d) the processor executes the branch instruction only if the sum is less than the maximum number.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, daß die Eingabesignalfolge durch die bekannte Backus-Naur-Form dar­ stellbar ist,
wobei die Backus-Naur-Form mindestens eine Definitionszeile für ein Definitionselement (S) enthält,
die Definitionszeile mindestens eine Alternative enthält,
in der mindestens ein Terminalelement (T1, T2, T3) und/oder das Definitionselement (S) enthalten ist,
und wobei bei der Bearbeitung des Terminalelements (T1, T2, T3) die Signalgruppe generiert wird.
2. The method according to claim 1, characterized in that the input signal sequence can be set by the known Backus-Naur form,
the backus-naur form containing at least one definition line for a definition element (S),
the definition line contains at least one alternative,
in which at least one terminal element (T1, T2, T3) and / or the definition element (S) is contained,
and wherein the signal group is generated when processing the terminal element (T1, T2, T3).
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, daß zum Ermitteln des Vorschauwertes folgende Schritte durch­ geführt werden:
  • a) den Definitionselementen (S) der Backus-Naur-Form werden Definitionselementwerte zugeordnet, die zu Beginn einen Startwert haben, der einer nach oben abge­ schätzten Mindestanzahl von erzeugten Signalgruppen beim Bearbeiten des jeweiligen Definitionselements (S) entspricht (Schritt 110),
  • b) beginnend mit einer ersten Definition der Backus-Naur-Form wird die jeweils bearbeitete Definition nach Defi­ nitionselementen (S) durchsucht (Schritt 102),
  • c) beim Auftreten eines Definitionselements (S) wird in dessen Definition die Alternative gesucht, bei der die Summe aus der Anzahl von Terminalelementen (T1, T2, T3) dieser Alternative und den Definiti­ onselementwerten (Wert (DE)) dieser Alternative am kleinsten ist,
  • d) der Wert der kleinsten Summe wird als neuer Defini­ tionselementwert (Wert (DE)) für das in Schritt c aufgetretene Definitionselement (S) verwendet (Schritte 136, 138),
  • e) falls beim Durchsuchen sämtlicher Definitionen der Backus-Naur-Form mindestens ein Definitionselementwert (Wert (DE)) verringert wurde, wird das Verfahren beginnend mit Schritt b wiederholt (Schritt 146).
3. The method according to claim 2, characterized in that the following steps are carried out to determine the preview value:
  • a) the definition elements (S) of the Backus-Naur form are assigned definition element values which initially have a starting value which corresponds to an upwardly estimated minimum number of signal groups generated when the respective definition element (S) is processed (step 110 ),
  • b) starting with a first definition of the backus-naur form, the definition processed in each case is searched for definition elements (S) (step 102 ),
  • c) when a definition element (S) occurs, the alternative is sought in its definition, in which the sum of the number of terminal elements (T1, T2, T3) of this alternative and the definition element values (value (DE)) of this alternative is the smallest ,
  • d) the value of the smallest sum is used as the new definition element value (value (DE)) for the definition element (S) that occurred in step c (steps 136 , 138 ),
  • e) if at least one definition element value (value (DE)) has been reduced when searching through all definitions of the Backus-Naur form, the process is repeated starting with step b (step 146 ).
4. Verfahren nach Anspruch 3, dadurch gekennzeichnet, daß der Startwert für alle Definitionselementwerte (Wert (DE)) gleich ist und vorzugsweise der größte durch den Prozessor bearbeitbare Zahlenwert ist.4. The method according to claim 3, characterized in that the starting value for all definition element values (value (DE)) is the same and preferably the largest by the Processor is editable numerical value. 5. Verfahren nach Anspruch 3 oder 4, dadurch gekennzeichnet, daß der Verzweigungsbefehl vor den Befehlen zum Bearbei­ ten eines Definitionselements (S) auszuführen ist und daß der für dieses Definitionselement berechnete Definition­ selementwert (Wert (DE)) als Vorschauwert gespeichert wird.5. The method according to claim 3 or 4, characterized in that the branch instruction before the instructions for processing ten of a definition element (S) and that the definition calculated for this definition element element value (value (DE)) saved as preview value becomes. 6. Verfahren nach Anspruch 3 oder 4, dadurch gekennzeichnet, daß der Verzweigungsbefehl vor den Befehlen zum Bearbei­ ten eines ersten Elements einer Alternative auszuführen ist und daß der Vorschauwert die Summe aus der Anzahl der Terminalelemente (T1, T2, T3) dieser Alternative und den Definitionselementwerten (Wert (DE)) dieser Alternative ist.6. The method according to claim 3 or 4, characterized in that the branch instruction before the instructions for processing of a first element of an alternative and that the preview value is the sum of the number of Terminal elements (T1, T2, T3) of this alternative and the Definition element values (value (DE)) of this alternative is. 7. Vorrichtung zum Durchführen des Verfahrens nach einem der vorhergehenden Ansprüche, mit mindestens einem Prozessor, der zu einem ersten Zeitpunkt mit dem Abarbeiten von Be­ fehlen eines in einem Speicher gespeicherten Generator­ programms beginnt,
wobei beim Abarbeiten des Generatorprogramms mindestens eine Eingabesignalfolge generiert wird, die im Speicher zur späteren Verwendung gespeichert wird,
im Speicher mindestens ein Vorschauwert gespeichert ist, der die erzeugte Mindestanzahl von Signalgruppen der Ein­ gabesignalfolge beim Ausführen eines Verzweigungsbefehls des Generatorprogramms ist,
und wobei der Verzweigungsbefehl nur dann ausgeführt wird, wenn eine Summe aus dem Vorschauwert und einer mo­ mentan ermittelten Anzahl von bereits generierten Signal­ gruppen der Eingabesignalfolge kleiner als eine vorgege­ bene Maximalanzahl von Signalgruppen ist.
7. Device for carrying out the method according to one of the preceding claims, with at least one processor that starts at a first point in time with the processing of a missing generator program stored in a memory,
wherein at least one input signal sequence is generated when the generator program is processed and is stored in the memory for later use,
at least one preview value is stored in the memory, which is the generated minimum number of signal groups of the input signal sequence when executing a branch instruction of the generator program,
and wherein the branch instruction is only executed when a sum of the preview value and a currently determined number of already generated signal groups of the input signal sequence is smaller than a predetermined maximum number of signal groups.
DE1996138165 1996-09-18 1996-09-18 Input signal sequence generation Expired - Fee Related DE19638165C1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE1996138165 DE19638165C1 (en) 1996-09-18 1996-09-18 Input signal sequence generation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE1996138165 DE19638165C1 (en) 1996-09-18 1996-09-18 Input signal sequence generation

Publications (1)

Publication Number Publication Date
DE19638165C1 true DE19638165C1 (en) 1998-04-23

Family

ID=7806083

Family Applications (1)

Application Number Title Priority Date Filing Date
DE1996138165 Expired - Fee Related DE19638165C1 (en) 1996-09-18 1996-09-18 Input signal sequence generation

Country Status (1)

Country Link
DE (1) DE19638165C1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108490922A (en) * 2018-04-27 2018-09-04 北京新能源汽车股份有限公司 A kind of generation method and device of unified diagnostic service test case

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3605431A1 (en) * 1986-02-20 1987-08-27 Vdo Schindling TESTABLE ELECTRONIC DEVICE AND METHOD FOR TESTING SUCH A DEVICE
DE4446988A1 (en) * 1993-12-28 1995-07-27 Advantest Corp High-speed test pattern generator for semiconductor test system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3605431A1 (en) * 1986-02-20 1987-08-27 Vdo Schindling TESTABLE ELECTRONIC DEVICE AND METHOD FOR TESTING SUCH A DEVICE
DE4446988A1 (en) * 1993-12-28 1995-07-27 Advantest Corp High-speed test pattern generator for semiconductor test system

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
BAUER, T.: TARGET - ein Tool zur Testfall- generierung, In: Informationstechnik it, 29. Jg. Heft 2, 1987, S. 96-102 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108490922A (en) * 2018-04-27 2018-09-04 北京新能源汽车股份有限公司 A kind of generation method and device of unified diagnostic service test case

Similar Documents

Publication Publication Date Title
DE3416939A1 (en) METHOD FOR CONTROLLING OPERATING DEVICES
EP0346801A2 (en) Method and arrangement for the execution of a programme in a heterogeneous multiprocessor system
DE102015016413A1 (en) A ladder program retrieval device capable of retrieving ladder circuits based on predetermined signal operating conditions
EP1347599B1 (en) Protocol analyzer and method for decoding data based on a protocol description
DE4104568A1 (en) Distributed program processing for processing system - examining input and output commands to organise data flow
EP2407842A2 (en) Method for operating machines or machines in a machine series and design system
DE10041072A1 (en) Automatic generation of program code involves forming symbol for component with interfaces in graphical editor, offering selection, generating code combining components
DE112017006457T5 (en) Machining program changing device and machining program changing method
DE4327660C2 (en) Apparatus for manufacturing and manufacturing methods for a semiconductor integrated circuit device and electronic circuit device
DE60318993T2 (en) Embedded garbage collection
DE10256990A1 (en) Program code generator and program
DE102016007651A1 (en) Numerical control with automatic selection of a storage destination for a machining program
DE1916109A1 (en) Arrangement for determining corner points from a large number of data points describing an empirical form
DE19638165C1 (en) Input signal sequence generation
DE10008632B4 (en) Method and system for generating a computer program
EP0838054A1 (en) Graphic control process and device for controlling operations in a network management system
EP0677835B1 (en) Process to ascertain a series of words
DE10108688A1 (en) measuring device
DE2016326C3 (en) Document scanner
DE3613740C2 (en)
EP1593007A2 (en) Method for determining the processing sequence of function blocks of an automated system and corresponding automated system
EP2682866B1 (en) Methods for the implementation of data formats
DE2259726A1 (en) METHOD FOR OPTIMIZING A SEMI-CONDUCTOR CIRCUIT
EP0416072B1 (en) Process and device for treating a column of figures
DE19940306B4 (en) Method and data processing system for testing a program system

Legal Events

Date Code Title Description
8100 Publication of the examined application without publication of unexamined application
D1 Grant (no unexamined application published) patent law 81
8364 No opposition during term of opposition
8339 Ceased/non-payment of the annual fee