WO2006012875A2 - Verfahren zur bewertung der güte eines testprogramms - Google Patents
Verfahren zur bewertung der güte eines testprogramms Download PDFInfo
- Publication number
- WO2006012875A2 WO2006012875A2 PCT/DE2005/001349 DE2005001349W WO2006012875A2 WO 2006012875 A2 WO2006012875 A2 WO 2006012875A2 DE 2005001349 W DE2005001349 W DE 2005001349W WO 2006012875 A2 WO2006012875 A2 WO 2006012875A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- integrated circuit
- mutation
- file
- test program
- mutations
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
Definitions
- the invention relates to a method for evaluating the quality of a test program for computer-simulated integrated circuits.
- HDLs high level description languages
- VHDL and Veriog Common HDLs are VHDL and Veriog.
- the HDL file is used to automatically generate, by means of special computer programs, the layout of the circuit arrangement and the required photolithographic masks with which the actual circuit arrangement can be produced.
- test bench the test program (ie computer code) that provides the input (“input”) that the integrated circuit is to process, and the results of the processing ⁇ tion (output values) in the simulated circuit with the waited for results.
- test result depends largely on the quality and completeness of the test program.
- An ⁇ may be a positive test result may be due only to insufficient testing (or verification) of the integrated circuit. It is therefore necessary to check the quality and completeness of the test program.
- the already low speed of the software simulation of an integrated circuit is further reduced by tests intended to check the quality and completeness of the test program.
- DE 199 59 157 A1 describes a method for functionally simulating and checking the correctness of a computer program in which mutated computer programs are generated.
- the computer program can output source code modules Have functional models of an integrated circuit.
- the method simulates a computer program into which a syntactic mutation has been incorporated in order to determine whether this mutation is a subtle or gross mutation in the context of the computer program. If the mutation is a gross mutation, the simulation is terminated; if, on the other hand, the mutation is a subtle mutation, an attempt is made to detect this mutation within a predetermined period of time. The method therefore evaluates the quality of a computer program by attempting to determine the influence of the mutation in the context of the computer program.
- the disclosed system compares the mutated computer program with the non-mutated computer program. It is therefore only suitable for determining the quality of the stimulation of the mutations by the test environment.
- the quality of the computer program that is actually to be tested can only be concluded indirectly from this. Errors that are already included in the non-mutated circuit can only be detected if the mutation actually affects the errors. However, this is not necessarily the case.
- the quality of the computer program can thus be determined only insufficiently with the proposed system.
- the object of the invention is to eliminate the disadvantages of the prior art.
- a method is to be provided which enables the evaluation of the quality of a test program for computer-simulated integrated circuits with higher quality.
- the method according to the invention thus compares the output values of the mutated integrated circuit with expected values obtained from an independent source, ie come from the reference system.
- the expected values are to be generated in a reference system which is independent of the integrated circuit described in the first file.
- independent is understood to mean that the reference system is not based on the first file but has functional differences with respect to the integrated circuit described in the first file.
- the reference system can be programmed in a different programming language and / or by a second programmer.
- step (b) comprises the following steps:
- step (b) in a second embodiment may comprise the following steps:
- the simulation program of the computer is the part of the computer in that the simulation of the mutated integrated circuit is carried out.
- step (iii) Selection of the mutations which cause a change in the behavior of the integrated circuit at a point found according to step (i) and which can be addressed by one of the tests, and generate the mutated integrated circuit.
- a mutation is to be understood as meaning that an active switched mutation participates in the processing of the input values and can participate in the generation of the output values. Whether it is actually involved or participates, ie causes a change in the output values, is checked by comparing the output values with the expected values.
- an activated, active or actively connected mutation means the following:
- the mutated integrated circuit has mutations with respect to the integrated circuit described in the first file. These mutations are initially inactivated, d. H.
- the integrated circuit described in the first file delivers exactly the same output values as the mutated integrated circuit, since none of the mutations participates in the processing of the input values. In the course of the procedure, however, exactly one of the built-in mutations is always switched one after the other, ie. H. the active mutation can participate in the processing of the input values.
- the tests that provide the input values were selected to be responsive to the actively switched mutation.
- Tests that can address one of the selected mutations at least once are conveniently combined into a test set. Tests which are able to respond to a selected mutation at least once are also referred to below as tests assigned to this mutation. Test sets comprising these tests are also referred to as test sets assigned to this mutation.
- a mutation is understood as meaning a change of the first file that has a radio frequency. normal change of the electronic circuit generated on the basis of this file causes.
- the mutation can be posi ⁇ tioned in a statement that is described in the file or distributed over several test lines of the file.
- RTL Register Transfer Level
- a mutation is to be understood as meaning a functional mutation, unless stated otherwise.
- Suitable types of mutation are, for example, logical negation errors, omission of logical factors, incorrect logical factors, omissions of logical expressions, incorrect logical expressions, incorrect numerical values and dropouts.
- the mutations in the sense of the present invention are deliberate changes. Mutations already included in the first file represent changes to the programmer's intended programming goal depicted in the file. Such non-intentional mutations are to be used in tests during which the first file described integrated circuit is detected. However, this can only be the case with sufficient success if the test program has sufficient quality, ie the non-intentional mutations can actually be recognized by the test program.
- the method according to the invention on the basis of the checking of the test program, offers a high guarantee that the integrated circuit has actually been adequately checked since low-quality test programs, ie test programs which provide no or no sufficient number of tests, which can find the non-deliberate mutations contained in the (first) file, can not be used to test the first file, or be modified that they provide tests that can find the non-intentional mutations.
- the quality of the test program is determined by the comparison of the generated output values, which are generated by the integrated circuit, with the expected values contained in the test program.
- the result of this comparison can be regarded as negative if the initial value obtained for a mutation is equal to the expected value generated for the initial value by the reference system. In this case, the mutation that would have had to cause a change in the initial value has not been recognized by the tests that have been carried out by the test program.
- the result of the comparison can be regarded as positive if the initial value obtained for a mutation is not equal to the expectation value generated for the initial value by the reference system.
- the mutation has caused a change in the output value (or the change in the output value is due to an involuntary mutation), indicating that the test performed by the test program is useful for testing the simulated circuit he a change, ie the deviation of the output values of the expected simulated circuit from the expected values.
- the method can be continued according to one of the following alternatives:
- Variant 2 The first file is changed and then steps (b) to (e) are repeated. This is particularly useful if the negative result is possibly due to non-deliberate mutations in the first file that influence the deliberate mutations in such a way that the changes caused by the latter do not affect the baseline values.
- Variant 3 Tests are selected which respond to this mutation and provide changed starting values compared with the previous tests, and then repeat steps (b) to (e). This is particularly useful if it can be assumed that neither the reference system nor the simulated integrated circuit input values have been supplied, which led to expected values or output values, which are useful in terms of intended intended use of the integrated circuit.
- the mutated integrated circuit can be realized by means of a hardware accelerator.
- a preferred hardware accelerator is a field programmable gate array (FPGA).
- FIG. 2 shows the first file in the form of an HDL file of an exemplary unmutated integrated circuit
- the mutated integrated circuit described in HDL 'File 2 is simulated by the simulation program.
- the built-in mutations are activated successively by a control program 52 (see FIG. 5) and, if appropriate, in a predetermined sequence, so that in each case only one mutation is activated.
- the test program 70 carries out the tests that can respond to the respective akti ⁇ fourth mutation. These tests are summarized in Test ⁇ sets.
- the test program 70 generates input values EgW, which are fed to the simulated mutated integrated circuit 61. These input values EgW are processed by the simulated mutated integrated circuit 61 and stored in Output values AW transferred.
- the quality of the test program can be determined from the number of mutations detected by the test program in this way (reference numeral 7 in FIG. 1). If every mutation is detected, the quality of the test program is good. If not all mutations are recognized, this result is a worse result, although a value for the quality can be calculated from the ratio of the recognized mutations to the unrecognized mutations, which in turn has a predetermined value is compared. If the calculated value for the quality is higher than the predetermined value, then the test program can be evaluated as good.
- FIG. 2 shows an example of a first file in the form of an HDL file 1, from which, as shown in FIG. 3, an imitated HDL 'file 2 was obtained by incorporating mutations in the HDL' file 1 have been.
- the HDL shown in Fig. 2 contains the complete HDL code for a 4-bit up / down counter which has the data outputs CO, C1, C2 and C3 and counts from 0 to 15 or in the opposite direction. It includes the following data inputs:
- Em makes it possible to actively activate a mutation in the mutations emn (n 1 to 13) inserted in the HDL 'file, while all other mutations are switched inactively.
- the first file is an HDL file 101.
- the HDL file 101 describes an integrated circuit which may contain non-deliberate mutations.
- the first file is transferred to the computer represented by a dotted line, read into the simulation unit of the computer (reference numeral 102a), and there the integrated circuit is imaged (reference numeral 102b). From the illustrated integrated circuit, a mutated integrated circuit is created by incorporating functional mutations 103 provided by the test program in the manner described. A multiplexed integrated circuit is obtained, which is based on the integrated circuit described in HDL 1, but additionally has mutations.
- the mutated integrated circuit is simulated by the simulation unit (reference numeral 104).
- the built-in mutations are activated one after the other and, if appropriate, in a predetermined sequence by a control program 52 (see FIG. 5), so that only one mutation is activated at a time.
- the test program carries out the tests which are able to respond to the respectively activated mutation. These tests are summarized in test sets sixteen ⁇ .
- the test program 70 generates input values EgW, which are fed to the simulated, multiplexed integrated circuit 61. These input values EgW are processed by the simulated mutated integrated circuit 61 and thereby converted into output values AW.
- the output values AW are then compared by the test program 70 with expected values EW (reference numeral 106 in FIG. 4), which are generated by the test program by means of a reference clock 105 (in FIG. 5, reference numeral 72).
- EW reference numeral 106 in FIG. 4
- the tests summarized in the test set are carried out successively until a test leads to output values which differ from the expected values. Subsequently, the activated mutation is switched inactive and - if not all built-in mutations have been tested - the next mutation is activated, which in turn is associated with a test set with tests that respond to this mutation activated now.
- test program provides at least one test which test the corresponding mutation. This case is a positive test result because the test program detects the mutation.
- the quality of the test program is thus good with respect to one mutation. If output values which differ from the expected values are not obtained for any test of the test set, the active mutation has had no influence on the processing of the input values to output values. This case is a negative test result since the test program does not recognize the mutation. The quality of the test program is thus poor in relation to the one mutation.
- the control program 52 controls the simulation 60 (arrow 53) and the test program 70 (arrow 54). It also switches the mutations contained in the mutated integrated circuit 61 to active and inactive (arrow 55). It instructs the test program to carry out the tests associated with the actively switched mutation.
- the test program 70 executes the tests for the mutations actively activated by the control program 52 according to the specifications of the control program 52, for which purpose it supplies the mutated integrated circuit 61 with input values EgW.
- the output values AW obtained by the integrated circuit 61 for the input values EgW are returned to the test program 70, provided the comparison 74 is to be executed by the test program and is not performed elsewhere by the computer 51. If the output values AW are supplied to the test program 70, then it carries out a comparison 74 between the output values AW and expected values EW obtained for the actively switched mutation.
- the evaluation 53 of the quality of the test program 70 is made and a report about a suitable Means 54, such as a monitor or a printer output.
- the result of the comparison is further communicated to the control program 52 that, if the output values AW obtained for an actively switched mutation differ from the expected values EW, the execution of the tests associated with this mutation terminates, which were previously active switched mutation switches inactive and the next mutation can switch active (dashed arrow 56).
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Debugging And Monitoring (AREA)
Abstract
Description
Claims
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/658,930 US8311793B2 (en) | 2004-07-30 | 2005-07-28 | Method for evaluating a test program quality |
| EP05771429A EP1771799B1 (de) | 2004-07-30 | 2005-07-28 | Verfahren zur bewertung der güte eines testprogramms |
| DE502005006290T DE502005006290D1 (de) | 2004-07-30 | 2005-07-28 | Verfahren zur bewertung der güte eines testprogramms |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE102004037402.3 | 2004-07-30 | ||
| DE102004037402A DE102004037402B4 (de) | 2004-07-30 | 2004-07-30 | Verfahren zur Bewertung der Güte eines Testprogrammes |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2006012875A2 true WO2006012875A2 (de) | 2006-02-09 |
| WO2006012875A3 WO2006012875A3 (de) | 2006-05-26 |
Family
ID=35345117
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/DE2005/001349 Ceased WO2006012875A2 (de) | 2004-07-30 | 2005-07-28 | Verfahren zur bewertung der güte eines testprogramms |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US8311793B2 (de) |
| EP (1) | EP1771799B1 (de) |
| AT (1) | ATE418108T1 (de) |
| DE (2) | DE102004037402B4 (de) |
| WO (1) | WO2006012875A2 (de) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8997034B2 (en) * | 2012-07-30 | 2015-03-31 | Synopsys, Inc. | Emulation-based functional qualification |
| US10394533B2 (en) * | 2013-09-30 | 2019-08-27 | The Mathworks, Inc. | Reusable component in a modeling environment |
| GB2519545A (en) * | 2013-10-24 | 2015-04-29 | Ibm | Determining a quality parameter for a verification environment |
| CN105335379B (zh) | 2014-06-26 | 2018-11-02 | 国际商业机器公司 | 突变测试中对突变、测试用例、随机种子的组合排序的方法和设备 |
| US9952837B1 (en) | 2015-04-01 | 2018-04-24 | The Mathworks, Inc. | Reusable component in a modeling environment |
| CN118393127B (zh) * | 2024-06-28 | 2024-08-23 | 兰州百源基因技术有限公司 | 一种应用于试剂盒精准诊断方法及系统 |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CA2147036A1 (en) * | 1994-05-16 | 1995-11-17 | Yih-Farn Robin Chen | System and method for selective regression testing |
| US5724504A (en) * | 1995-06-01 | 1998-03-03 | International Business Machines Corporation | Method for measuring architectural test coverage for design verification and building conformal test |
| US5754760A (en) * | 1996-05-30 | 1998-05-19 | Integrity Qa Software, Inc. | Automatic software testing tool |
| US6298317B1 (en) * | 1999-01-25 | 2001-10-02 | Hewlett-Packard Company | Enhanced functional testing through the filtration of non-subtle mutations |
| US6931629B1 (en) * | 1999-12-30 | 2005-08-16 | Intel Corporation | Method and apparatus for generation of validation tests |
| EP1382976B1 (de) * | 2002-07-19 | 2007-02-28 | Infineon Technologies AG | Verfahren zur Bearbeitung von Testmustern für einen integrierten Schaltkreis |
| FR2843214B1 (fr) * | 2002-07-30 | 2008-07-04 | Bull Sa | Procede de verification fonctionnelle d'un modele de circuit integre pour constituer une plate-forme de verification, equipement emulateur et plate-forme de verification. |
-
2004
- 2004-07-30 DE DE102004037402A patent/DE102004037402B4/de not_active Expired - Lifetime
-
2005
- 2005-07-28 EP EP05771429A patent/EP1771799B1/de not_active Expired - Lifetime
- 2005-07-28 US US11/658,930 patent/US8311793B2/en not_active Expired - Fee Related
- 2005-07-28 WO PCT/DE2005/001349 patent/WO2006012875A2/de not_active Ceased
- 2005-07-28 AT AT05771429T patent/ATE418108T1/de not_active IP Right Cessation
- 2005-07-28 DE DE502005006290T patent/DE502005006290D1/de not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| EP1771799B1 (de) | 2008-12-17 |
| DE102004037402A1 (de) | 2006-03-23 |
| EP1771799A2 (de) | 2007-04-11 |
| US20100057424A1 (en) | 2010-03-04 |
| US8311793B2 (en) | 2012-11-13 |
| DE102004037402B4 (de) | 2011-02-03 |
| DE502005006290D1 (de) | 2009-01-29 |
| WO2006012875A3 (de) | 2006-05-26 |
| ATE418108T1 (de) | 2009-01-15 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| DE69033360T2 (de) | Simulation von ausgewählten Logik-Schaltungsentwürfen | |
| DE69315576T2 (de) | Verfahren und testanlage zur entwicklung einer integrierten schaltung. | |
| DE69831732T2 (de) | Verfahren und gerät zum korrigieren von fehlern in einem rechnersystem | |
| DE3787431T2 (de) | Verfahren zur Generierung einer Kandidatenliste von fehlerhaften Schaltungselementen und Verfahren zur Isolierung von Fehlern in einer logischen Schaltung unter Verwendung dieser Kandidatenliste. | |
| DE60010906T2 (de) | Verfahren zum testen von web-basierten softwareobjekten | |
| US7324363B2 (en) | SPICE optimized for arrays | |
| DE102004023450B4 (de) | System und Verfahren zum Diagnostizieren von Sensoren eines Motorsteuerungssystems | |
| DE60215730T2 (de) | Vorrichtung und Verfahren zur Leistungsmessung in einem digitalen Signalprozessor unter Verwendung von Ablaufdaten und Simulationstechniken. | |
| DE10147078A1 (de) | Verfahren zur Gültigkeitsprüfung von Entwürfen für komplexe integrierte Schaltungen | |
| DE10296464T5 (de) | Verfahren und Gerät zur Validierung des Entwurfes einer komplexen integrierten Schaltungen | |
| DE69433907T2 (de) | Autonomes, evolutionsartiges Hardwareentwurfssystem | |
| DE60012735T2 (de) | Verfahren zur unterscheidung von verschiedenen typen von abtastfehlern, rechnerbasierte schaltungsemulation und fehlerdetektionssystem | |
| EP1127323A1 (de) | Verfahren und anordnung zum vergleich einer ersten eigenschaft mit vorgegebenen eigenschaften eines technischen systems | |
| WO1992018944A1 (de) | Verfahren zur verifikation datenverarbeitender systeme | |
| DE112021003677T5 (de) | Automatisierte unterstützte schaltkreisvalidierung | |
| EP1771799A2 (de) | Verfahren zur bewertung der güte eines testprogramms | |
| DE10324594A1 (de) | Verfahren zum Bereitstellen einer verbesserten Simulationsfähigkeit eines dynamischen Systems außerhalb der ursprünglichen Modellierungsumgebung | |
| EP1947567A2 (de) | Verfahren und Vorrichtung zum automatischen Testen von modellbasierten Funktionen | |
| DE60218447T2 (de) | Verfahren zur Bearbeitung von Testmustern für einen integrierten Schaltkreis | |
| EP1771798B1 (de) | Verfahren der bewertung der güte eines computerprogramms | |
| DE102021109130A1 (de) | Verfahren zum Testen eines Produkts | |
| DE69329007T2 (de) | Kompilierungsmechanismus für Simulationsmodelle | |
| DE10325513B4 (de) | Verfahren und Vorrichtung zum Erstellen eines Verhaltensaspekts einer Schaltung zur formalen Verifikation | |
| DE102019216684B4 (de) | Verfahren zur Timinganalyse von Anwendungssoftware für ein eingebettetes System, Vorrichtung zur Datenverarbeitung, Computerprogramm und computerlesbarer Datenträger | |
| Soni et al. | Automated Evaluation of Drive File Simulation Accuracy |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| AK | Designated states |
Kind code of ref document: A2 Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KM KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NG NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SM SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW |
|
| AL | Designated countries for regional patents |
Kind code of ref document: A2 Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LT LU LV MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| DPE1 | Request for preliminary examination filed after expiration of 19th month from priority date (pct application filed from 20040101) | ||
| WWE | Wipo information: entry into national phase |
Ref document number: 2005771429 Country of ref document: EP |
|
| WWP | Wipo information: published in national office |
Ref document number: 2005771429 Country of ref document: EP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 11658930 Country of ref document: US |