WO2006033357A1 - 試験シミュレータ、試験シミュレーションプログラム、及び記録媒体 - Google Patents

試験シミュレータ、試験シミュレーションプログラム、及び記録媒体 Download PDF

Info

Publication number
WO2006033357A1
WO2006033357A1 PCT/JP2005/017396 JP2005017396W WO2006033357A1 WO 2006033357 A1 WO2006033357 A1 WO 2006033357A1 JP 2005017396 W JP2005017396 W JP 2005017396W WO 2006033357 A1 WO2006033357 A1 WO 2006033357A1
Authority
WO
WIPO (PCT)
Prior art keywords
test pattern
test
simulation
semiconductor device
output
Prior art date
Application number
PCT/JP2005/017396
Other languages
English (en)
French (fr)
Inventor
Hideki Tada
Mitsuo Hori
Takahiro Kataoka
Original Assignee
Advantest Corporation
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 Advantest Corporation filed Critical Advantest Corporation
Priority to CN2005800322729A priority Critical patent/CN101027566B/zh
Priority to EP05785167A priority patent/EP1801603B1/en
Priority to DE602005020168T priority patent/DE602005020168D1/de
Priority to US11/240,811 priority patent/US7502724B2/en
Publication of WO2006033357A1 publication Critical patent/WO2006033357A1/ja

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3183Generation of test inputs, e.g. test vectors, patterns or sequences
    • G01R31/318342Generation of test inputs, e.g. test vectors, patterns or sequences by preliminary fault modelling, e.g. analysis, simulation
    • G01R31/318357Simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing
    • G06F11/263Generation of test inputs, e.g. test vectors, patterns or sequences ; with adaptation of the tested hardware for testability with external testers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

Definitions

  • Test simulator test simulator program, test simulation program, and recording medium
  • the present invention relates to a test simulator, a test simulation program, and a recording medium.
  • the present invention relates to a test simulator for simulating a test of a semiconductor device, a test simulation program, and a recording medium.
  • HDL hardware description language
  • Verilog—HDL or VHDL a computer in hardware description language
  • Verilog—HDL / VHDL simulator a device simulator
  • Verification is made as to whether or not the intended function is fulfilled.
  • a technique for verifying the design of a semiconductor device by simulating a semiconductor device test by a semiconductor test apparatus using a simulator based on HDL is disclosed (for example, see Patent Document 1).
  • Patent Document 1 JP 2002-215712 A
  • the operation speed of the semiconductor device simulated by the device simulator is very slow compared with the operation speed of the actual semiconductor device. Therefore, a test of a semiconductor device simulated using a device simulator requires a much longer time than a test using an actual semiconductor test apparatus and a semiconductor device. For this reason, automation in semiconductor device design is performed with sufficiently high efficiency. There was a long-awaited test simulator that more efficiently simulates the test.
  • an object of the present invention is to provide a test simulator, a test simulation program, and a recording medium that can solve the above-described problems.
  • This object is achieved by a combination of features described in the independent claims.
  • the dependent claims define further advantageous specific examples of the present invention.
  • a first embodiment of the present invention is a test simulator for simulating a test of a semiconductor device, and holds an existing test pattern to be given to the semiconductor device Generates test pattern holding means, device output holding means for holding in advance the output to be obtained from the semiconductor device when the existing test pattern is given to the semiconductor device, and a new test pattern to be given to the semiconductor device.
  • the test pattern generation means the test pattern judgment means for judging whether the new test pattern is the same as the existing test pattern, and the new test pattern are the same as the existing test pattern
  • the device output holding means force output without giving a new test pattern to the semiconductor device By the output of the semiconductor device force against the pattern, and a simulation skipping means for skipping at least a portion of the simulation test.
  • the test simulator gives a new test pattern to the device simulation means for simulating the operation of the semiconductor device and performs device simulation.
  • Device output generation means for generating an output from the semiconductor device by operating the device means may be further provided.
  • the test simulator may further include device simulation means.
  • the test pattern holding means has a test pattern storing means for storing a new test pattern generated by the test pattern generating means, and the device output holding means is generated by the device simulating means according to the new test pattern. You may have device output storage means to store the output of semiconductor device power!
  • the test pattern holding means further holds the value of the internal register of the semiconductor device when starting to give an existing test pattern.
  • the value of the internal register of the semiconductor device is the same as the value of the internal register held in the test pattern holding means. You may skip.
  • the test pattern holding means has a start register value storing means for receiving and storing the value of the internal register of the semiconductor device when starting to give a new test pattern to the device simulating means. May be.
  • the test pattern holding means holds a plurality of combinations of the value of the internal register of the semiconductor device and the existing test pattern when starting to give the existing test pattern to the device simulating means.
  • the output holding means holds the output from which the semiconductor device power should be obtained when the existing test pattern is given in association with each of a plurality of existing test patterns. Combining force between the internal register value of the semiconductor device and the new test pattern at the start of giving the test pattern When the combination held in the test pattern holding means is the same as at least one of the simulation tests Part may be skipped
  • the end register value holding means for holding the value of the internal register of the semiconductor device after the application of the existing test pattern and the simulation skip means.
  • a register value setting means for setting the value of the internal register held by the end register value holding means in the internal register of the semiconductor device in the case where the end register value holding means is set, and the test pattern generation means is skipped by the simulation skip means.
  • a new test pattern may be generated to resume the simulated simulation.
  • the end register value holding means receives and stores the value of the internal register of the semiconductor device after the new test pattern has been given to the device simulation means. You may have.
  • a test simulation program for causing a computer to function as a test simulator for simulating a test of a semiconductor device, which retains an existing test pattern to be given to the semiconductor device Test pattern retention Means, device output holding means for holding in advance the output to be obtained from the semiconductor device when an existing test pattern is given to the semiconductor device, and test pattern generation for generating a new test pattern to be given to the semiconductor device And a test pattern judging means for judging whether the new test pattern is the same as the existing test pattern, and a semiconductor device when the new test pattern is the same as the existing test pattern.
  • Device skipping at least part of the simulation test by reading the device output holding means force output without giving a new test pattern to the device and using it as the output from the semiconductor device for the new test pattern
  • the computer functions as a test simulator comprising means.
  • the test simulator gives a new test pattern to the device simulation means for simulating the operation of the semiconductor device, and the device simulation means
  • the device may further include device output generation means for generating an output of the semiconductor device force by operating
  • the test simulator may further include device simulation means.
  • the test pattern holding means has a test pattern storage means for storing a new test pattern generated by the test pattern generation means, and the device output holding means is generated by the device simulation means according to the new test pattern.
  • the test pattern holding means further holds the value of the internal register of the semiconductor device when starting to give an existing test pattern, and the simulation skip means when starting to give a new test pattern to the semiconductor device. Further, at least a part of the simulation test may be skipped on condition that the value of the internal register of the semiconductor device is the same as the value of the internal register held in the test pattern holding means.
  • the test pattern holding means has a start register value storing means for receiving and storing the value of the internal register of the semiconductor device when starting to give a new test pattern to the device simulating means. May be.
  • the test pattern holding means is a combination of the value of the internal register of the semiconductor device and the existing test pattern when starting to give the existing test pattern to the device simulation means.
  • the device output holding means holds the output from which the semiconductor device power should be obtained when the existing test pattern is given in association with each of the plurality of existing test patterns.
  • the simulation skip means is the same as any of the combinations held in the test pattern holding means when the new register is used for the value of the internal register of the semiconductor device when starting to give a new test pattern. If at least part of the simulation test may be skipped
  • the test simulator skips at least a part of the simulation test by the end register value holding means for holding the value of the internal register of the semiconductor device after the application of the existing test pattern and the simulation skip means.
  • Register value setting means for setting the internal register value held by the end register value holding means in the case of the internal register of the semiconductor device, and the test pattern generation means is configured by the simulation skip means.
  • a new test pattern may be generated to restart the skipped simulation test.
  • the end register value holding means has end register value storage means for receiving and storing the value of the internal register of the semiconductor device after the new test pattern has been given to the device simulation means. Hey.
  • a recording medium in which the test simulation program is recorded is provided.
  • FIG. 1 is a block diagram showing an example of a functional configuration of a test simulation system 10 according to an embodiment of the present invention.
  • FIG. 2 is a diagram showing an example of a test pattern database 316 according to the embodiment of the present invention.
  • FIG. 3 is a diagram showing an example of a device output database 344 according to the embodiment of the present invention.
  • FIG. 4 is a diagram showing an example of an end register value database 364 according to the embodiment of the present invention.
  • FIG. 5 is a flowchart showing an example of a process flow in the test simulator 30 according to the embodiment of the present invention.
  • FIG. 6 is a block diagram showing an example of a hardware configuration of a computer 1500 according to the embodiment of the present invention.
  • test simulation system 20 test simulator control means, 30 test simulator, 40 device simulation means, 300 test pattern generation means, 310 test pattern holding means, 312 test pattern storage means, 314 start register value storage means 31 6 Test pattern database, 320 Test pattern judgment means, 330 Device output generation means, 340 Device output holding means, 342 Device output storage means, 344 Device output database, 350 Simulation skip means, 360 End register value holding means, 362 end register value storage means, 364 end register value database, 370 register value setting means, 380 expected value holding means, 390 logic comparison means
  • FIG. 1 is a block diagram showing an example of a functional configuration of a test simulation system 10 according to the embodiment of the present invention.
  • the test simulation system 10 includes a test simulator control means 20, a test simulator 30, and a device simulation means 40.
  • the test simulation system 10 uses a semiconductor test apparatus to test the semiconductor device, and instead of judging whether the semiconductor device is good or bad, The quality of the semiconductor device is determined by simulating the test of the semiconductor device using the test simulator 30 that simulates the semiconductor device and the device simulation means 40 that simulates the semiconductor device by software. .
  • the test simulation system 10 in this example gives a test pattern to the semiconductor device, and compares the output signal output from the semiconductor device force in accordance with the test pattern with an expected value, thereby determining the quality of the semiconductor device. List the function tests to be judged.
  • the test simulator 30 provides a device simulation if the test pattern force applied to the device simulation means 40 is the same as an existing test pattern such as a test pattern used before. The purpose of this is to reduce the time required for the simulation test by skipping the process of generating the output of the semiconductor device in the test means 40.
  • the test simulator control means 20 controls the test simulator 30 to cause the device simulation means 40 to execute a simulation test.
  • the test simulator control means 20 includes the procedure and method of the test to be performed on the semiconductor device created by the user corresponding to the semiconductor device whose operation is simulated by the device simulation means 40.
  • the test simulator 30 may be controlled based on the written test program.
  • the test program includes, for example, a test pattern supplied to the device simulation means 40 and the device simulation means 40 when the test simulator 30 performs a simulated function test on the device simulation means 40. Including the expected value of the output of the semiconductor device generated according to the test pattern and timing information indicating the timing for comparing the output with the expected value.
  • test simulator 30 simulates the test of the semiconductor device by performing a simulated test on the device simulation means 40 that simulates the operation of the semiconductor device.
  • Test simulator 30 includes test pattern generation means 300, test pattern holding means 310, test pattern judgment means 320, device output generation means 330, device output holding means, simulation skip means, end register value holding means 360, register value setting. Means 370, expected value holding means 380, and logic comparison means 390 are provided. Book In the configuration shown in the figure, the test simulator 30 does not include the device simulation means 40, but in other configurations, the test simulator 30 may include the device simulator 40.
  • the test pattern generation means 300 Based on the control of the test simulator control means 20, the test pattern generation means 300 generates a new test pattern to be given to the semiconductor device simulated by the device simulation means 40, and generates the generated test pattern. Output to the test pattern holding means 310 and the test pattern judgment means 320.
  • the test pattern holding unit 310 includes a test pattern storage unit 312, a start register value storage unit 314, and a test pattern database 316.
  • the test pattern storage unit 312 stores the new test pattern generated by the test pattern generation unit 300 in the test pattern database 316.
  • the start register value storage means 314 stores the value of the internal register of the semiconductor device simulated by the device simulation means 40 when starting to give a new test pattern to the device simulation means 40.
  • the test pattern database 316 holds existing test patterns to be applied to the semiconductor device simulated by the device simulation means 40.
  • the existing test pattern may be, for example, a test pattern previously applied to a semiconductor device simulated by the device simulating means 40, or a predetermined test pattern such as a typical test pattern. It may be a test pattern.
  • the test pattern database 316 holds the value of the internal register of the semiconductor device when starting to give the existing test pattern being held.
  • the test pattern determination unit 320 determines whether or not the new test pattern force received from the test pattern generation unit 300 is the same as the existing test pattern held in the test pattern database 316.
  • the test pattern judging means 320 receives the value of the internal register of the semiconductor device simulated by the device simulating means 40 when starting to give a new test pattern from the device simulating means 40 and receives it. Further, it is possible to further determine whether or not the value of the internal register is the same as the value of the internal register held in the test pattern database 316 when the existing test pattern is given. In this case, the test pattern judging means 320 is a new test pattern.
  • the test pattern determination unit 320 outputs the determination result to the device output generation unit 330, the simulation skip unit 350, and the register value setting unit 370, and determines that the new test pattern is not the same as the existing test pattern.
  • the new test pattern received from the test pattern generation means 300 is further output to the device output generation means 330.
  • the device output generation means 330 when the test pattern determination means 320 determines that the new test pattern force generated by the test pattern generation means 300 is not the same as the existing test pattern held in the test pattern database 316, The device simulation means 40 for simulating the operation of the semiconductor device is given the new test pattern received from the test pattern judgment means 320, and the device simulation means 40 is operated to operate the semiconductor device power. To produce output.
  • the device output generation means 330 receives the output of the semiconductor device generated by the device simulation means 40 and outputs the received output to the device output holding means 340. Further, the device output generation means 330 acquires the value of the internal register of the semiconductor device when starting to give a new test pattern to the device simulation means 40 from the device simulation means 40.
  • the device output generation means 330 outputs the acquired internal register value to the start register value storage means 314 and stores it in the test pattern database 316. Further, the device output generation means 330 outputs the acquired internal register value to the test pattern determination means 320, and the internal register value when starting to give an existing test pattern held in the test pattern database 316. To determine whether or not the force is the same. Further, the device output generating means 330 finishes giving a new test pattern to the device simulating means 40 and generates the output of the semiconductor device, and then the value of the internal register of the semiconductor device is calculated as the device simulating means. Get from 40. Then, the device output generation unit 330 outputs the acquired internal register value to the end register value holding unit 360.
  • the device output holding unit 340 outputs the output of the semiconductor device generated by the device simulation unit 40 received from the device output generation unit 330 to the simulation skip unit 350.
  • the device output holding means 340 includes a device output storage means 342 and a device output database 344.
  • the device output storage means 342 receives the output from the semiconductor device generated by the device simulation means 40 according to the new test pattern generated by the test pattern generation means 300 from the device output generation means 330 and receives the device output. Store in database 344.
  • the device output data base 344 holds in advance the output to be obtained by the semiconductor device force when an existing test pattern is given to the semiconductor device simulated by the device simulating means 40.
  • the device output database 344 may hold predetermined outputs such as outputs according to typical test patterns in addition to the outputs stored by the device output storage means 342. .
  • the simulation skip means 350 uses a new test pattern force generated by the test pattern generation means 300 as a test pattern to determine whether or not the test pattern database 316 has the same force as the existing test pattern. Receive from decision means 320. The simulation skip means 350 outputs the output of the semiconductor device corresponding to the new test pattern generated by the device simulation means 40 when the new test pattern force is not the same as the existing test pattern. Receive from device output holding means 340 and output to logic comparison means 390. On the other hand, the simulation skip unit 350 does not give the new test pattern to the semiconductor device simulated by the device simulation means 40 when the new test pattern is the same as the existing test pattern.
  • the output from which the semiconductor device power should also be obtained is read from the device output database 344 and used as an output from the semiconductor device for the new test pattern. Skip at least some of the simulation tests. Then, when skipping at least a part of the simulation test, the simulation skip means 350 outputs the output of the semiconductor device corresponding to the existing test pattern read from the device output database 344 to the logical comparison means 390. Output. Simulation skip Means 350 determines the value of the internal register of the semiconductor device when starting to give a new test pattern to the semiconductor device. When received from the test pattern judging means 320, at least a part of the simulation test may be skipped on condition that the values of the internal registers are the same.
  • the end register value holding unit 360 includes an end register value storage unit 362 and an end register value database 364.
  • the end register value storage means 362 provides the device output generation means with the value of the internal register of the semiconductor device simulated by the device simulation means 40 after the new test pattern has been given to the device simulation means 40.
  • the end register value database 364 holds the values of the internal registers of the semiconductor device simulated by the device simulation means 40 after the existing test pattern is given.
  • the register value setting means 370 is determined by the test pattern determination means 320 that the new test pattern generated by the test pattern generation means 300 and the existing test pattern held in the test pattern database 316 are the same.
  • the end register value database 364 holds the internal register of the semiconductor device after giving the existing test pattern. Read the value of.
  • the register value setting unit 370 sets the read internal register value in the internal register of the semiconductor device simulated by the device simulation unit 40.
  • the test pattern generation means 300 generates a new test pattern for restarting the simulation test skipped by the simulation skip means 350.
  • the expected value holding unit 380 includes an expected value of the output of the semiconductor device generated by the device simulating unit 40 in accordance with the new test pattern generated by the test pattern generating unit 300, and the output and the expected value.
  • the timing information indicating the timing for comparing is received from the test simulator control means 20 and held.
  • the logic comparison unit 390 outputs the output of the semiconductor device generated by the device simulation unit 40 according to the new test pattern generated by the test pattern generation unit 300 or the new test pattern.
  • the output read from the device output database 344 corresponding to the same existing test pattern is received from the simulation skip means 350.
  • the logical comparison means 390 holds the output of the semiconductor device received from the simulation skip means 350 by the expected value holding means 380. Whether the semiconductor device simulated by the device simulating means 40 is good or bad is determined based on whether the force matches the expected value, and the determination result is output to the test simulator control means 20.
  • a new test pattern to be given to the device simulating means 40 is an existing test pattern such as a previously given test pattern or a typical test pattern. If it is the same as the test pattern, the existing test stored in the device output database 344 in advance without causing the device simulating means 40 to generate the output of the semiconductor device based on the new test pattern.
  • the output for the test pattern can be compared with the expected value as the output for the new test pattern. As a result, for example, when changing the expected value to be compared with the output of the semiconductor device, the timing to compare the output with the expected value, etc.
  • the time required for the simulation test can be shortened by skipping at least a part of the time-consuming process in which the device simulation means 40 generates the output of the semiconductor device.
  • the device simulation means 40 can actually be operated to generate the output of the semiconductor device. Regardless of the contents of the pattern, the time required for the simulation test can be reduced as much as possible.
  • the semiconductor when the respective test patterns start to be given to the device simulation unit 40 You can skip at least some of the simulation tests only if the condition that the device internal register values are identical is met. As a result, the device simulation means 40 has the same test pattern. Even when the value of the internal register is not the same, it is possible to accurately determine whether or not the simulation test should be skipped even if a different output is generated.
  • the device simulation means 40 does not operate based on the new test pattern.
  • the internal register of the semiconductor device simulated by the device simulating means 40 does not change. In other words, in many cases, the value of the internal register is different when the simulation test is skipped and when it is not skipped. In this case, after skipping the simulation test, the simulation test cannot be resumed using the next new test pattern. For this reason, for example, immediately after initializing the internal register, such as the entire test sequence, the simulation test is skipped except for a very long period, such as the period from when the internal register is next initialized. Can't effectively reduce the time required for simulation testing.
  • the test simulator 30 when it is determined that the new test pattern is the same as the existing test pattern and the simulation test is skipped, the value of the internal register of the semiconductor device can be read from the end register value data base 364 and set in the device simulation means 40. Therefore, the value of the internal register can be made the same when the simulation test is skipped and when it is not skipped, so that the simulation test can be resumed after skipping. As a result, the period during which the simulation test can be skipped, that is, the length of the test pattern when judging whether or not the new test pattern and the existing test pattern are the same, can be made shorter. Therefore, in many cases, the simulation test can be skipped. That is, according to the test simulator 30, the time required for the test simulation can be efficiently reduced.
  • FIG. 2 shows an example of the test pattern database 316 according to the embodiment of the present invention.
  • the test pattern database 316 stores the existing test pattern and the internal register of the semiconductor device when the existing test pattern starts to be given to the device simulation means 40. Holds multiple combinations with the value of.
  • the test pattern database 316 has a different index for each existing test pattern, the existing test pattern, and the internal register of the semiconductor device when the existing test pattern starts to be given to the device simulation means 40.
  • a value may be stored in association with each other.
  • the index may be generated as a unique value for the new test pattern.
  • Each of the existing test patterns may include, for example, a plurality of combinations of event types such as signal rising and falling and the timing of occurrence of the event.
  • the event occurrence timing may be, for example, the elapsed time of the force at the start of the test cycle in the semiconductor device test, or may be the elapsed time of the force at the occurrence of the immediately preceding event.
  • the internal register values include the values of multiple internal registers! /, Teyo! /, Etc.
  • FIG. 3 shows an example of the device output database 344 according to the embodiment of the present invention.
  • the device output database 344 stores the output to be obtained by associating each of a plurality of existing test patterns with the semiconductor device force simulated by the device simulation means 40 when the existing test pattern is given. is doing.
  • the device output database 344 may hold an index that differs for each existing test pattern and an output from the device simulating means 40 when the existing test pattern is given.
  • the index is generated as a unique value by the new test pattern as shown in FIG. It may be the same as the index in the test pattern database 316.
  • FIG. 4 shows an example of the end register value database 364 according to the embodiment of the present invention.
  • the end register value database 364 corresponds to each of the plurality of existing test patterns, and after the application of the existing test pattern, the value of the internal register of the semiconductor device simulated by the device simulation means 40 is stored. Holding.
  • the end register value database 364 holds an index that is different for each existing test pattern and an internal register value when the existing test pattern is given in association with each other. It's okay.
  • the index is generated as a unique value for the new test pattern. It may be the same as the index in database 316.
  • the value of the internal register may include the value of each of the plurality of internal registers.
  • the existing test pattern, the value of the internal register when starting to provide the existing test pattern, and the existing test pattern are provided.
  • a plurality of combinations of the output of the semiconductor device and the value of the internal register when the existing test pattern is given can be held.
  • FIG. 5 is a flowchart showing an example of a process flow in the test simulator 30 according to the embodiment of the present invention.
  • the test pattern generation means 300 generates a new test pattern to be given to the semiconductor device simulated by the device simulation means 40 (S1000).
  • the device output generation means 330 acquires the value of the internal register of the semiconductor device simulated by the device simulation means 40 from the device simulation means 40 (S1010).
  • the test pattern judging means 320 is a semiconductor device which is simulated by the device simulating means 40 when starting to give a new test pattern generated by the test pattern generating means 300 and the new test pattern.
  • the test pattern determination unit 320 determines that the combination is the same as any of the above-described combinations in each of the plurality of existing test patterns held in the test pattern database 316. If it is determined (S1020: Yes), the simulation skip means 350 performs device simulation. When the existing test pattern is given to the semiconductor device without giving the new test pattern to the semiconductor device simulated by means 40, an output that should also obtain a semiconductor device force is output to the device. At least a part of the simulation test is skipped by reading from the database 344 and outputting the semiconductor device power for the new test pattern (S1030).
  • the register value setting unit 370 simulates the device simulation unit 40 after providing the device test unit 40 with the existing test pattern determined to be the same as the new test pattern.
  • the value of the internal register of the semiconductor device to be read is read from the end register value database 364 and set in the internal register of the semiconductor device (S1040).
  • the test pattern determination unit 320 determines that none of the above-described combinations in each of the plurality of existing test patterns held in the test pattern database 316 is the same.
  • the device output generation means 330 gives a new test pattern to the device simulation means 40 and operates the device simulation means 40, thereby operating the semiconductor device power.
  • a thing output is generated (S1050).
  • the device output storage means 342 stores the output of the semiconductor device generated by the device simulation means 40 in accordance with the new test pattern in the device output database 344 (S1060).
  • the test pattern holding means 310 receives the new test pattern and the semiconductor device simulated by the device simulation means 40 when the new test pattern starts to be given to the device simulation means 40.
  • the value of the internal register is stored in the test pattern database 316 (S1070).
  • the end register value storage means 362 gives the value of the internal register of the semiconductor device simulated by the device simulation means 40 after giving a new test pattern to the device simulation means 40.
  • the logic comparison unit 390 outputs the output corresponding to the existing test pattern read from the device output database 344, and If the simulation test is not skipped, the device output generation means 330 By comparing the output generated to 0 with the expected value, the device simulation means 40 determines the quality of the semiconductor device to be simulated (S 1090). Note that the test simulator 30 may repeat the above processing as necessary.
  • the existing test pattern and the existing test If the combination with the value of the internal register at the start of giving a pattern is not the same, the new test pattern, the value of the internal register at the start of giving the new test pattern, and the new test pattern
  • the combination of the output of the semiconductor device generated accordingly and the value of the internal register after the output of the semiconductor device is generated can be stored as one of the combinations in the existing test pattern.
  • the simulation test for the test pattern can be skipped. In other words, even if the above-described combination in the test pattern is not held in advance, the simulation test can be skipped more efficiently and the time required for the simulation test can be shortened as the simulation test is executed.
  • the test pattern judging means 320 judges whether the value of the internal register at the start of giving a new test pattern is the same, the device simulating means 40 is not necessarily used.
  • the same output is obtained by giving the same test pattern in the test simulated by the test simulator 30 that does not need to determine whether all the registers in the semiconductor device to be simulated are the same.
  • the type of internal register power that should be matched the test simulator 30 combines the new test pattern with the value of the internal register when the new test pattern starts to be given, and the internal register when the existing test pattern and the existing test pattern start to give. After the simulation test is skipped and the new test pattern matches the existing test pattern, the value of the internal register when starting to give the test pattern is determined.
  • Simulation tests may be skipped without determining whether or not are identical to each other. Further, the test simulator 30 determines that the combination of the test pattern and the value of the internal register at the start of giving the test pattern is the same, and skips the simulation test. If the test pattern and the existing test pattern further match, it is not necessary to set the value of the internal register after the output of the semiconductor device is generated.
  • FIG. 6 is a block diagram showing an example of a hardware configuration of the computer 1500 according to the embodiment of the present invention.
  • a computer 1500 according to an embodiment of the present invention includes a CPU peripheral unit having a CPU 1505, a RAM 1520, a graphic controller 1575, and a display device 1580 connected to each other by a host controller 1582, and an input / output controller.
  • 1584 Host / Communication interface 1530 connected to controller 1582, hard disk drive 1540, input / output unit with CD-ROM drive 1560, and input / output controller 1584 connected ROM 1510, flexible disk 'drive 1550 and a legacy input / output unit having an input / output chip 1570.
  • the host controller 1582 connects the RAM 1520 to the CPU 1505 and the graphics controller 1575 that access the RAM 1520 at a high transfer rate.
  • the CPU 1505 operates based on the programs stored in the ROM 1510 and the RAM 1520 and controls each part.
  • the graphic 'controller 1575 acquires image data generated on the frame buffer provided by the CPU 1505 and the like in the RAM 1520 and displays it on the display device 1580.
  • the graphic controller 1575 may include a frame notifier for storing image data generated by the CPU 1505 or the like.
  • the input / output controller 1584 connects the host controller 1582 to the communication interface 1530, the hard disk drive 1540, and the CD-ROM drive 1560, which are relatively high-speed input / output devices.
  • the communication interface 1530 communicates with other devices via a network.
  • the hard disk drive 1540 stores programs and data used by the CPU 1505 in the computer 1500.
  • CD-ROM drive 1560 reads CD-ROM 15 95 programs or data and provides them to hard disk drive 1540 via RAM 1520.
  • I / O controller 1584, ROM1510, flexible disk 'drive 1550 and the relatively low-speed input / output device of the input / output chip 1570 are connected.
  • the ROM 1510 stores a boot program executed when the computer 1500 is started up, a program depending on the hardware of the computer 1500, and the like.
  • the flexible disk drive 1550 reads a program or data from the flexible disk 1590 and provides it to the hard disk drive 1540 via the RA M1520.
  • the input / output chip 1570 connects various input / output devices via a flexible disk 'drive 1550' and, for example, a parallel 'port, a serial' port, a keyboard 'port, a mouse' port, and the like.
  • the test simulation program provided to the hard disk drive 1540 via the RAM 1520 is stored in a recording medium such as a flexible disk 1590, a CD-ROM 1595, or an IC card and provided by the user.
  • the test simulation program is read from the recording medium, installed in the hard disk drive 1540 in the computer 1500 via the RAM 1520, and executed by the CPU 1505.
  • the test simulation program installed and executed on the computer 1500 works on the CPU 1505 or the like to cause the computer 1500 to function as the test simulator 30 described with reference to FIGS.
  • the programs described above may be stored in an external recording medium.
  • recording media flexible disk 1590, CD-ROM 1595, optical recording media such as DVD and PD, magneto-optical recording media such as MD, tape media, semiconductor memory such as IC cards, etc.
  • a storage device such as a node disk or a RAM provided in a server system connected to a dedicated communication network or the Internet may be used as a recording medium, and the program may be provided to the computer 1500 via the network.
  • a device simulation having an operation speed slower than that of an actual semiconductor device.
  • simulating a semiconductor device test using a modulator it is possible to provide a test simulator that efficiently simulates the test and reduces the time required for the simulation test.

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

 半導体デバイスの試験をシミュレートする試験シミュレータであって、半導体デバイスに与えるべき既存の試験パターンを保持する試験パターン保持手段と、既存の試験パターンを与えた場合に半導体デバイスから得られるべき出力を予め保持するデバイス出力保持手段と、半導体デバイスに与えるべき新たな試験パターンを生成する試験パターン生成手段と、新たな試験パターンが既存の試験パターンと同一であるか否かを判断する試験パターン判断手段と、試験パターンが同一である場合に、半導体デバイスに新たな試験パターンを与えることなく、デバイス出力保持手段から出力を読み出して、新たな試験パターンに対する出力とすることにより、シミュレーション試験の少なくとも一部をスキップするシミュレーションスキップ手段とを備える試験シミュレータを提供する。

Description

明 細 書
試験シミュレータ、試験シミュレーションプログラム、及び記録媒体 技術分野
[0001] 本発明は、試験シミュレータ、試験シミュレーションプログラム、及び記録媒体に関 する。特に本発明は、半導体デバイスの試験をシミュレートする試験シミュレータ、試 験シミュレーションプログラム、及び記録媒体に関する。
また、本出願は、下記の日本出願に関連する。文献の参照による組み込みが認め られる指定国については、下記の出願に記載された内容を参照により本出願に組み 込み、本出願の一部とする。
1.特願 2004— 278582 出願日 2004年 09月 24日
背景技術
[0002] 現在、 VLSI等の半導体デバイスの設計は、 Verilog— HDLや VHDL等のハード ウェア記述言語 (HDL)によって、コンピュータを用いて行われる。そして、このような HDLを用いた設計は、ビヘイビオラルレベルやゲートレベル等のデバイスシミュレ一 タ(Verilog— HDL/VHDLシミュレータ)を用いることによって、シリコン ICとして製 造される前に、設計者の意図した機能が果たされる力否かについて検証が行われる 。例えば、 HDLに基づくシミュレータを用いて、半導体試験装置による半導体デバイ スの試験をシミュレートして、当該半導体デバイスの設計を検証する技術が開示され ている(例えば、特許文献 1参照。 ) o
特許文献 1 :特開 2002— 215712号公報
発明の開示
発明が解決しょうとする課題
[0003] し力しながら、デバイスシミュレータによってシミュレートされた半導体デバイスの動 作速度は、実際の半導体デバイスの動作速度に比べて非常に遅い。従って、デバイ スシミュレータを用いてシミュレートされた半導体デバイスの試験は、実際の半導体試 験装置と半導体デバイスとを用いた試験に比べて非常に長い時間を要する。このた め、半導体デバイスの設計における自動化は、十分に高い効率で行われているとは 言えず、より効率的に試験をシミュレートする試験シミュレータが待望されていた。
[0004] そこで本発明は、上記の課題を解決することのできる試験シミュレータ、試験シミュ レーシヨンプログラム、及び記録媒体を提供することを目的とする。この目的は請求の 範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本 発明の更なる有利な具体例を規定する。
課題を解決するための手段
[0005] 上記課題を解決するために、本発明の第 1の形態にぉ ヽては、半導体デバイスの 試験をシミュレートする試験シミュレータであって、半導体デバイスに与えるべき既存 の試験パターンを保持する試験パターン保持手段と、半導体デバイスに既存の試験 ノ ターンを与えた場合に、半導体デバイスから得られるべき出力を予め保持するデ バイス出力保持手段と、半導体デバイスに与えるべき新たな試験パターンを生成す る試験パターン生成手段と、新たな試験パターンが、既存の試験パターンと同一であ るか否かを判断する試験パターン判断手段と、新たな試験パターンが、既存の試験 ノ ターンと同一である場合に、半導体デバイスに対して新たな試験パターンを与える ことなぐデバイス出力保持手段力 出力を読み出して、新たな試験パターンに対す る半導体デバイス力 の出力とすることにより、シミュレーション試験の少なくとも一部 をスキップするシミュレーションスキップ手段とを備える。
[0006] 当該試験シミュレータは、新たな試験パターンが既存の試験パターンと同一ではな かった場合に、半導体デバイスの動作をシミュレートするデバイスシミュレート手段に 対して新たな試験パターンを与えてデバイスシミュレート手段を動作させることによつ て、半導体デバイスからの出力を生成させるデバイス出力生成手段を更に備えてもよ い。当該試験シミュレータは、デバイスシミュレート手段を更に備えてもよい。試験パ ターン保持手段は、試験パターン生成手段が生成した新たな試験パターンを格納す る試験パターン格納手段を有し、デバイス出力保持手段は、新たな試験パターンに 応じてデバイスシミュレート手段が生成した半導体デバイス力 の出力を格納するデ バイス出力格納手段を有してもよ!、。
[0007] 試験パターン保持手段は、既存の試験パターンを与え始める時の、半導体デバイ スの内部レジスタの値を更に保持しており、シミュレーションスキップ手段は、新たな 試験パターンを半導体デバイスに与え始める時の、半導体デバイスの内部レジスタ の値が、試験パターン保持手段に保持された内部レジスタの値と同一であることを、 更に条件として、シミュレーション試験の少なくとも一部をスキップしてもよい。試験パ ターン保持手段は、新たな試験パターンをデバイスシミュレート手段に対して与え始 める時の、半導体デバイスの内部レジスタの値をデバイスシミュレート手段力 受け取 つて格納する開始レジスタ値格納手段を有してもよい。
[0008] 試験パターン保持手段は、既存の試験パターンをデバイスシミュレート手段に与え 始める時の、半導体デバイスの内部レジスタの値と当該既存の試験パターンとの組 み合わせを複数保持しており、デバイス出力保持手段は、複数の既存の試験パター ンのそれぞれに対応付けて、当該既存の試験パターンを与えた場合に半導体デバ イス力も得られるべき出力を保持しており、シミュレーションスキップ手段は、新たな試 験パターンを与え始める時の半導体デバイスの内部レジスタの値と当該新たな試験 パターンとの組み合わせ力 試験パターン保持手段に保持された組み合わせの 、ず れかと同一である場合に、シミュレーション試験の少なくとも一部をスキップしてもよい
[0009] 当該試験シミュレータは、既存の試験パターンを与え終えた後の、半導体デバイス の内部レジスタの値を保持する終了レジスタ値保持手段と、シミュレーションスキップ 手段により、シミュレーション試験の少なくとも一部がスキップされた場合に、終了レジ スタ値保持手段が保持して ヽる内部レジスタの値を、半導体デバイスの内部レジスタ に設定させるレジスタ値設定手段とを更に備え、試験パターン生成手段は、シミュレ ーシヨンスキップ手段によりスキップされたシミュレーション試験を再開させるベぐ新 たな試験パターンを生成してもよい。終了レジスタ値保持手段は、新たな試験パター ンをデバイスシミュレート手段に対して与え終えた後の、半導体デバイスの内部レジ スタの値をデバイスシミュレート手段力 受け取って格納する終了レジスタ値格納手 段を有してもよい。
[0010] また、本発明の第 2の形態においては、半導体デバイスの試験をシミュレートする試 験シミュレータとしてコンピュータを機能させる試験シミュレーションプログラムであつ て、半導体デバイスに与えるべき既存の試験パターンを保持する試験パターン保持 手段と、半導体デバイスに既存の試験パターンを与えた場合に、半導体デバイスか ら得られるべき出力を予め保持するデバイス出力保持手段と、半導体デバイスに与 えるべき新たな試験パターンを生成する試験パターン生成手段と、新たな試験バタ ーンが、既存の試験パターンと同一である力否かを判断する試験パターン判断手段 と、新たな試験パターンが、既存の試験パターンと同一である場合に、半導体デバイ スに対して新たな試験パターンを与えることなぐデバイス出力保持手段力 出力を 読み出して、新たな試験パターンに対する半導体デバイスからの出力とすることによ り、シミュレーション試験の少なくとも一部をスキップするシミュレーションスキップ手段 とを備える試験シミュレータとしてコンピュータを機能させる。
[0011] 試験シミュレータは、新たな試験パターンが既存の試験パターンと同一ではなかつ た場合に、半導体デバイスの動作をシミュレートするデバイスシミュレート手段に対し て新たな試験パターンを与えてデバイスシミュレート手段を動作させることによって、 半導体デバイス力ゝらの出力を生成させるデバイス出力生成手段を更に備えてもよい
。試験シミュレータは、デバイスシミュレート手段を更に備えてもよい。試験パターン保 持手段は、試験パターン生成手段が生成した新たな試験パターンを格納する試験パ ターン格納手段を有し、デバイス出力保持手段は、新たな試験パターンに応じてデ バイスシミュレート手段が生成した半導体デバイス力ゝらの出力を格納するデバイス出 力格納手段を有してもよい。
[0012] 試験パターン保持手段は、既存の試験パターンを与え始める時の、半導体デバイ スの内部レジスタの値を更に保持しており、シミュレーションスキップ手段は、新たな 試験パターンを半導体デバイスに与え始める時の、半導体デバイスの内部レジスタ の値が、試験パターン保持手段に保持された内部レジスタの値と同一であることを、 更に条件として、シミュレーション試験の少なくとも一部をスキップしてもよい。試験パ ターン保持手段は、新たな試験パターンをデバイスシミュレート手段に対して与え始 める時の、半導体デバイスの内部レジスタの値をデバイスシミュレート手段力 受け取 つて格納する開始レジスタ値格納手段を有してもよい。
[0013] 試験パターン保持手段は、既存の試験パターンをデバイスシミュレート手段に与え 始める時の、半導体デバイスの内部レジスタの値と当該既存の試験パターンとの組 み合わせを複数保持しており、デバイス出力保持手段は、複数の既存の試験パター ンのそれぞれに対応付けて、当該既存の試験パターンを与えた場合に半導体デバ イス力も得られるべき出力を保持しており、シミュレーションスキップ手段は、新たな試 験パターンを与え始める時の半導体デバイスの内部レジスタの値と当該新たな試験 パターンとの組み合わせ力 試験パターン保持手段に保持された組み合わせの 、ず れかと同一である場合に、シミュレーション試験の少なくとも一部をスキップしてもよい
[0014] 試験シミュレータは、既存の試験パターンを与え終えた後の、半導体デバイスの内 部レジスタの値を保持する終了レジスタ値保持手段と、シミュレーションスキップ手段 により、シミュレーション試験の少なくとも一部がスキップされた場合に、終了レジスタ 値保持手段が保持している内部レジスタの値を、半導体デバイスの内部レジスタ〖こ 設定させるレジスタ値設定手段とを更に備え、試験パターン生成手段は、シミュレ一 シヨンスキップ手段によりスキップされたシミュレーション試験を再開させるベぐ新た な試験パターンを生成してもよい。終了レジスタ値保持手段は、新たな試験パターン をデバイスシミュレート手段に対して与え終えた後の、半導体デバイスの内部レジスタ の値をデバイスシミュレート手段力 受け取って格納する終了レジスタ値格納手段を 有してちょい。
[0015] また、本発明の第 3の形態においては、上記の試験シミュレーションプログラムを記 録した記録媒体を提供する。
[0016] なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなぐ これらの特徴群のサブコンビネーションもまた、発明となりうる。
発明の効果
[0017] 本発明によれば、実際の半導体デバイスに比べて動作速度の遅いデバイスシミュ レータを用いて半導体デバイスの試験をシミュレートする場合において、効率的に試 験をシミュレートして、シミュレーション試験に要する時間を短縮することができる。 図面の簡単な説明
[0018] [図 1]本発明の実施形態に係る試験シミュレーションシステム 10の機能構成の一例を 示すブロック図である。 [図 2]本発明の実施形態に係る試験パターンデータベース 316の一例を示す図であ る。
[図 3]本発明の実施形態に係るデバイス出力データベース 344の一例を示す図であ る。
[図 4]本発明の実施形態に係る終了レジスタ値データベース 364の一例を示す図で ある。
[図 5]本発明の実施形態に係る試験シミュレータ 30における処理の流れの一例を示 すフローチャートである。
[図 6]本発明の実施形態に係るコンピュータ 1500のハードウェア構成の一例を示す ブロック図である。
符号の説明
[0019] 10 試験シミュレーションシステム、 20 試験シミュレータ制御手段、 30 試験シミュ レータ、 40 デバイスシミュレート手段、 300 試験パターン生成手段、 310 試験パ ターン保持手段、 312 試験パターン格納手段、 314 開始レジスタ値格納手段、 31 6 試験パターンデータベース、 320 試験パターン判断手段、 330 デバイス出力 生成手段、 340 デバイス出力保持手段、 342 デバイス出力格納手段、 344 デバ イス出力データベース、 350 シミュレーションスキップ手段、 360 終了レジスタ値保 持手段、 362 終了レジスタ値格納手段、 364 終了レジスタ値データベース、 370 レジスタ値設定手段、 380 期待値保持手段、 390 論理比較手段
発明を実施するための最良の形態
[0020] 以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は請求の 範隨こかかる発明を限定するものではなぐまた実施形態の中で説明されている特 徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
[0021] 図 1は、本発明の実施形態に係る試験シミュレーションシステム 10の機能構成の一 例を示すブロック図である。試験シミュレーションシステム 10は、試験シミュレータ制 御手段 20、試験シミュレータ 30、デバイスシミュレート手段 40を備える。試験シミュレ ーシヨンシステム 10は、半導体試験装置を用いて半導体デバイスを試験することによ つて、当該半導体デバイスの良否を判定する代わりに、半導体試験装置をソフトゥ ァによってシミュレートする試験シミュレータ 30と、半導体デバイスをソフトウェアによ つてシミュレートするデバイスシミュレート手段 40とを用いて、当該半導体デバイスの 試験をシミュレートすることによって、当該半導体デバイスの良否を判定する。なお、 本例における試験シミュレーションシステム 10は、半導体デバイスに試験パターンを 与えて、当該試験パターンに応じて当該半導体デバイス力 出力された出力信号を 期待値と比較することにより、当該半導体デバイスの良否を判定する機能試験をシミ ユレ一卜する。
[0022] 本発明の実施形態に係る試験シミュレータ 30は、デバイスシミュレート手段 40に与 える試験パターン力 例えば以前に用いた試験パターン等の、既存の試験パターン と同一である場合には、デバイスシミュレート手段 40における半導体デバイスの出力 を生成する処理をスキップすることにより、シミュレーション試験に要する時間を短縮 することを目的とする。
[0023] 試験シミュレータ制御手段 20は、試験シミュレータ 30を制御して、デバイスシミュレ ート手段 40に対してシミュレーション試験を実行させる。ここで、試験シミュレータ制 御手段 20は、デバイスシミュレート手段 40が動作をシミュレートする半導体デバイス に対応してユーザにより作成された、当該半導体デバイスに対して行うべき試験の手 順や方法等が記述された試験プログラムに基づ 、て、試験シミュレータ 30を制御し てよい。また、試験プログラムは、例えば、試験シミュレータ 30がデバイスシミュレート 手段 40に対して模擬的な機能試験を行う場合における、デバイスシミュレート手段 4 0に対して供給する試験パターン、デバイスシミュレート手段 40が当該試験パターン に応じて生成する半導体デバイスの出力の期待値、及び当該出力を当該期待値と 比較するタイミングを示すタイミング情報等を含んで 、てよ 、。
[0024] 試験シミュレータ 30は、半導体デバイスの動作をシミュレートするデバイスシミュレ ート手段 40に対して模擬的な試験を行うことにより、当該半導体デバイスの試験をシ ミュレートする。試験シミュレータ 30は、試験パターン生成手段 300、試験パターン保 持手段 310、試験パターン判断手段 320、デバイス出力生成手段 330、デバイス出 力保持手段、シミュレーションスキップ手段、終了レジスタ値保持手段 360、レジスタ 値設定手段 370、期待値保持手段 380、及び論理比較手段 390を有する。なお、本 図に示した構成において、試験シミュレータ 30は、デバイスシミュレート手段 40を備 えていないが、他の構成においては、試験シミュレータ 30力 デバイスシミュレート手 段 40を備えていてもよい。
[0025] 試験パターン生成手段 300は、試験シミュレータ制御手段 20の制御に基づいて、 デバイスシミュレート手段 40によりシミュレートされる半導体デバイスに与えるべき新 たな試験パターンを生成し、生成した試験パターンを試験パターン保持手段 310及 び試験パターン判断手段 320に出力する。試験パターン保持手段 310は、試験バタ ーン格納手段 312、開始レジスタ値格納手段 314、及び試験パターンデータベース 316を含む。試験パターン格納手段 312は、試験パターン生成手段 300が生成した 新たな試験パターンを、試験パターンデータベース 316に格納する。開始レジスタ値 格納手段 314は、新たな試験パターンをデバイスシミュレート手段 40に対して与え始 める時の、デバイスシミュレート手段 40によりシミュレートされる半導体デバイスの内 部レジスタの値を、デバイスシミュレート手段 40から受け取って、試験パターンデータ ベース 316に格納する。試験パターンデータベース 316は、デバイスシミュレート手 段 40によりシミュレートされる半導体デバイスに与えるべき既存の試験パターンを保 持する。ここで、既存の試験パターンとは、例えば、以前にデバイスシミュレート手段 4 0によりシミュレートされる半導体デバイスに与えた試験パターンであってよぐまた、 典型的な試験パターン等の、予め定められた試験パターンであってもよい。更に、試 験パターンデータベース 316は、保持している既存の試験パターンを与え始める時 の、半導体デバイスの内部レジスタの値を保持する。
[0026] 試験パターン判断手段 320は、試験パターン生成手段 300から受け取った新たな 試験パターン力 試験パターンデータベース 316に保持されている既存の試験パタ ーンと同一であるカゝ否かを判断する。また、試験パターン判断手段 320は、新たな試 験パターンを与え始める時の、デバイスシミュレート手段 40によりシミュレートされる半 導体デバイスの内部レジスタの値を、デバイスシミュレート手段 40から受け取ると共に 、受け取った内部レジスタの値力 試験パターンデータベース 316に保持されている 、既存の試験パターンを与え始める時の内部レジスタの値と同一であるか否かを更 に判断してもよい。この場合において、試験パターン判断手段 320は、新たな試験パ ターンと既存の試験パターンとの内容が同一であっても、当該新たな試験パターンを 与え始める時と、当該既存の試験パターンを与え始める時とのそれぞれにおいて、 内部レジスタの値が同一でな 、場合には、当該新たな試験パターンと当該既存の試 験パターンとは同一ではないと判断してよい。そして、試験パターン判断手段 320は 、判断結果をデバイス出力生成手段 330、シミュレーションスキップ手段 350、及びレ ジスタ値設定手段 370に出力すると共に、新たな試験パターンは既存の試験パター ンと同一ではない判断した場合には、試験パターン生成手段 300から受け取った新 たな試験パターンを、デバイス出力生成手段 330に更に出力する。
デバイス出力生成手段 330は、試験パターン生成手段 300が生成した新たな試験 パターン力 試験パターンデータベース 316に保持されている既存の試験パターンと 同一ではないと試験パターン判断手段 320によって判断された場合に、半導体デバ イスの動作をシミュレートするデバイスシミュレート手段 40に対して、試験パターン判 断手段 320から受け取った当該新たな試験パターンを与えて、デバイスシミュレート 手段 40を動作させることによって、半導体デバイス力もの出力を生成させる。そして、 デバイス出力生成手段 330は、デバイスシミュレート手段 40に生成させた半導体デ バイスの出力を受け取り、受け取った出力をデバイス出力保持手段 340に出力する 。また、デバイス出力生成手段 330は、新たな試験パターンをデバイスシミュレート手 段 40に与え始める時の、半導体デバイスの内部レジスタの値を、デバイスシミュレ一 ト手段 40から取得する。そして、デバイス出力生成手段 330は、取得した内部レジス タの値を開始レジスタ値格納手段 314に出力して、試験パターンデータベース 316 に格納させる。また、デバイス出力生成手段 330は、取得した内部レジスタの値を試 験パターン判断手段 320に出力して、試験パターンデータベース 316に保持されて いる、既存の試験パターンを与え始める時の内部レジスタの値と同一である力否かを 判断させる。更に、デバイス出力生成手段 330は、新たな試験パターンをデバイスシ ミュレート手段 40に与え終えて、半導体デバイスの出力を生成させた後の、当該半 導体デバイスの内部レジスタの値を、デバイスシミュレート手段 40から取得する。そし て、デバイス出力生成手段 330は、取得した内部レジスタの値を終了レジスタ値保持 手段 360に出力する。 [0028] デバイス出力保持手段 340は、デバイス出力生成手段 330から受け取った、デバ イスシミュレート手段 40が生成した半導体デバイスの出力を、シミュレーションスキッ プ手段 350に出力する。また、デバイス出力保持手段 340は、デバイス出力格納手 段 342及びデバイス出力データベース 344を含む。デバイス出力格納手段 342は、 試験パターン生成手段 300が生成した新たな試験パターンに応じてデバイスシミュレ ート手段 40が生成した半導体デバイスからの出力を、デバイス出力生成手段 330か ら受け取って、デバイス出力データベース 344に格納する。デバイス出力データべ一 ス 344は、デバイスシミュレート手段 40によりシミュレートされる半導体デバイスに既 存の試験パターンを与えた場合に、半導体デバイス力 得られるべき出力を予め保 持する。なお、デバイス出力データベース 344は、デバイス出力格納手段 342により 格納された出力だけでなぐ例えば典型的な試験パターンに応じた出力等の、予め 定められた出力を保持して 、てもよ!/、。
[0029] シミュレーションスキップ手段 350は、試験パターン生成手段 300が生成した新た な試験パターン力 試験パターンデータベース 316に保持されている既存の試験パ ターンと同一である力否かの判断結果を、試験パターン判断手段 320から受け取る。 そして、シミュレーションスキップ手段 350は、新たな試験パターン力 既存の試験パ ターンと同一ではない場合に、デバイスシミュレート手段 40によって生成された、当 該新たな試験パターンに応じた半導体デバイスの出力を、デバイス出力保持手段 34 0から受け取って、論理比較手段 390に出力する。一方、シミュレーションスキップ手 段 350は、新たな試験パターンが、既存の試験パターンと同一である場合、デバイス シミュレート手段 40によりシミュレートされる半導体デバイスに対して当該新たな試験 ノ ターンを与えることなく、当該既存の試験パターンを半導体デバイスに与えた場合 に、半導体デバイス力も得られるべき出力を、デバイス出力データベース 344から読 み出して、当該新たな試験パターンに対する半導体デバイスからの出力とすることに より、シミュレーション試験の少なくとも一部をスキップする。そして、シミュレーションス キップ手段 350は、シミュレーション試験の少なくとも一部をスキップする場合に、デ バイス出力データベース 344から読み出した、既存の試験パターンに対応する半導 体デバイスの出力を、論理比較手段 390に出力する。なお、シミュレーションスキップ 手段 350は、新たな試験パターンを半導体デバイスに与え始める時の、半導体デバ イスの内部レジスタの値力 既存の試験パターンを与え始める時の内部レジスタの値 と同一であるか否かの判断結果を試験パターン判断手段 320から受け取った場合は 、それぞれにおける内部レジスタの値が同一であることを更に条件として、シミュレ一 シヨン試験の少なくとも一部をスキップしてもよい。
[0030] 終了レジスタ値保持手段 360は、終了レジスタ値格納手段 362及び終了レジスタ 値データベース 364を含む。終了レジスタ値格納手段 362は、新たな試験パターン をデバイスシミュレート手段 40に対して与え終えた後の、デバイスシミュレート手段 40 によりシミュレートされる半導体デバイスの内部レジスタの値を、デバイス出力生成手 段 330から受け取って、終了レジスタ値データベース 364に格納する。終了レジスタ 値データベース 364は、既存の試験パターンを与え終えた後の、デバイスシミュレ一 ト手段 40によりシミュレートされる半導体デバイスの内部レジスタの値を保持する。
[0031] レジスタ値設定手段 370は、試験パターン生成手段 300が生成した新たな試験パ ターンと、試験パターンデータベース 316が保持する既存の試験パターンとが同一 であると試験パターン判断手段 320によって判断され、シミュレーションスキップ手段 350により、シミュレーション試験の少なくとも一部がスキップされた場合に、終了レジ スタ値データベース 364が保持して 、る、当該既存の試験パターンを与え終えた後 の、半導体デバイスの内部レジスタの値を読み出す。そして、レジスタ値設定手段 37 0は、読み出した内部レジスタの値を、デバイスシミュレート手段 40によりシミュレート される半導体デバイスの内部レジスタに設定させる。そして、これを受けて、試験パタ ーン生成手段 300は、シミュレーションスキップ手段 350によりスキップされたシミュレ ーシヨン試験を再開させるベぐ新たな試験パターンを生成する。
[0032] 期待値保持手段 380は、試験パターン生成手段 300により生成された新たな試験 パターンに応じてデバイスシミュレート手段 40が生成する半導体デバイスの出力の 期待値、及び当該出力と当該期待値とを比較するタイミングを示すタイミング情報を、 試験シミュレータ制御手段 20から受け取って保持する。論理比較手段 390は、試験 ノ ターン生成手段 300により生成された新たな試験パターンに応じてデバイスシミュ レート手段 40が生成する半導体デバイスの出力、または当該新たな試験パターンと 同一である既存の試験パターンに応じた、デバイス出力データベース 344から読み 出された出力を、シミュレーションスキップ手段 350から受け取る。そして、論理比較 手段 390は、期待値保持手段 380により保持されているタイミング情報に基づくタイミ ングにおいて、シミュレーションスキップ手段 350から受け取った半導体デバイスの出 力が、期待値保持手段 380により保持されている期待値と一致する力否かにより、デ バイスシミュレート手段 40によりシミュレートされる半導体デバイスの良否を判定し、 判定結果を試験シミュレータ制御手段 20に出力する。
[0033] 本発明の実施形態に係る試験シミュレータ 30によれば、デバイスシミュレート手段 4 0に与えるべき新たな試験パターンが、例えば以前に与えた試験パターンや典型的 な試験パターン等の、既存の試験パターンと同一である場合には、当該新たな試験 ノ ターンに基づいてデバイスシミュレート手段 40に半導体デバイスの出力を生成さ せることなぐデバイス出力データベース 344に予め保持されている、当該既存の試 験パターンに対する出力を、当該新たな試験パターンに対する出力として期待値と 比較することができる。これにより、例えば、半導体デバイスの出力と比較する期待値 や、出力を期待値と比較するタイミング等を変更する場合のように、デバイスシミュレ ート手段 40に与える試験パターンは変更せずにシミュレーション試験を再実行する 場合等において、デバイスシミュレート手段 40が半導体デバイスの出力を生成すると いう、多大な時間を要する処理の少なくとも一部をスキップして、シミュレーション試験 に要する時間を短縮することができる。一方、新たな試験パターンとして、既存の試 験パターンとは異なる試験パターンを用いる場合には、実際にデバイスシミュレート 手段 40を動作させて半導体デバイスの出力を生成させることができるので、用いる試 験パターンの内容に関わらず、シミュレーション試験に要する時間を可能な限り短縮 することができる。
[0034] また、試験シミュレータ 30によれば、新たな試験パターンと既存の試験パターンと が同一であるという条件に加えて、それぞれの試験パターンをデバイスシミュレート手 段 40に与え始める時の、半導体デバイスの内部レジスタの値が同一であるという条 件が満たされる場合にのみ、シミュレーション試験の少なくとも一部をスキップすること ができる。これにより、デバイスシミュレート手段 40が、与えられる試験パターンが同 一であっても、内部レジスタの値が同一でない場合には異なる出力を生成する場合 にお 、ても、シミュレーション試験をスキップすべきか否かを正確に判断することがで きる。
[0035] 新たな試験パターンと既存の試験パターンとが同一であると判断してシミュレーショ ン試験をスキップした場合、デバイスシミュレート手段 40は、当該新たな試験パター ンに基づいて動作しないので、デバイスシミュレート手段 40がシミュレートする半導体 デバイスの内部レジスタは変化しない。つまり、多くの場合において、シミュレーション 試験をスキップした場合と、スキップしな力つた場合とで、内部レジスタの値は異なる 。この場合、シミュレーション試験をスキップした後で、次の新たな試験パターンを用 いてシミュレーション試験を再開することはできない。このため、例えば、試験シーケ ンス全体といった、内部レジスタの初期化を行った直後から、次に内部レジスタの初 期化を行うまでの期間等の、非常に長い期間以外ではシミュレーション試験をスキッ プすることができず、シミュレーション試験に要する時間を効率的に短縮できな 、。
[0036] しかし、本発明の実施形態に係る試験シミュレータ 30によれば、新たな試験パター ンと既存の試験パターンとが同一であると判断してシミュレーション試験をスキップし た場合において、以前に、当該既存の試験パターンをデバイスシミュレート手段 40に 与え終えた後の、半導体デバイスの内部レジスタの値を、終了レジスタ値データべ一 ス 364から読み出してデバイスシミュレート手段 40に設定することができる。従って、 シミュレーション試験をスキップした場合と、スキップしなかった場合とで、内部レジス タの値を同一にすることができるので、スキップした後でシミュレーション試験を再開 することができる。これにより、シミュレーション試験をスキップすることができる期間、 即ち新たな試験パターンと既存の試験パターンとが同一である力否かを判断する場 合における試験パターンの長さを、より短くすることができるので、より多くの場合にお いて、シミュレーション試験をスキップすることができる。つまり、試験シミュレータ 30に よれば、試験シミュレーションに要する時間を、効率的に短縮することができる。
[0037] 図 2は、本発明の実施形態に係る試験パターンデータベース 316の一例を示す。
試験パターンデータベース 316は、既存の試験パターンと、当該既存の試験パター ンをデバイスシミュレート手段 40に与え始める時の、半導体デバイスの内部レジスタ の値との組み合わせを複数保持している。例えば、試験パターンデータベース 316 は、既存の試験パターン毎に異なるインデックスと、当該既存の試験パターンと、当 該既存の試験パターンをデバイスシミュレート手段 40に与え始める時の、半導体デ バイスの内部レジスタの値とを対応付けて保持してよい。ここで、インデックスは、例え ば、試験パターン生成手段 300によって、新たな試験パターンが生成される場合に、 当該新たな試験パターンについて一意な値として生成されてよい。また、既存の試験 パターンのそれぞれは、例えば、信号の立ち上がりや立ち下がりといったイベントの 種類と、当該イベントの発生タイミングとの複数の組み合わせを含んでいてよい。なお 、ここで、イベントの発生タイミングとは、例えば、半導体デバイスの試験における試験 サイクルの開始時点力 の経過時間であってよぐまた、直前のイベントの発生時点 力 の経過時間であってもよい。また、内部レジスタの値は、複数の内部レジスタそれ ぞれの値を含んで!/、てよ!/、。
[0038] 図 3は、本発明の実施形態に係るデバイス出力データベース 344の一例を示す。
デバイス出力データベース 344は、複数の既存の試験パターンのそれぞれに対応付 けて、当該既存の試験パターンを与えた場合に、デバイスシミュレート手段 40により シミュレートされる半導体デバイス力 得られるべき出力を保持している。例えば、デ バイス出力データベース 344は、既存の試験パターン毎に異なるインデックスと、当 該既存の試験パターンを与えた場合の、デバイスシミュレート手段 40からの出力とを 対応付けて保持してよい。ここで、インデックスは、例えば、試験パターン生成手段 3 00によって、新たな試験パターンが生成される場合に、当該新たな試験パターンに っ 、て一意な値として生成されてよぐ図 2に示した試験パターンデータベース 316 におけるインデックスと同一であってよい。
[0039] 図 4は、本発明の実施形態に係る終了レジスタ値データベース 364の一例を示す。
終了レジスタ値データベース 364は、複数の既存の試験パターンのそれぞれに対応 付けて、当該既存の試験パターンを与え終えた後の、デバイスシミュレート手段 40に よりシミュレートされる半導体デバイスの内部レジスタの値を保持している。例えば、 終了レジスタ値データベース 364は、既存の試験パターン毎に異なるインデックスと 、当該既存の試験パターンを与えた場合の内部レジスタの値とを対応付けて保持し てよい。ここで、インデックスは、例えば、試験パターン生成手段 300によって、新た な試験パターンが生成される場合に、当該新たな試験パターンについて一意な値と して生成されてよぐ図 2に示した試験パターンデータベース 316におけるインデック スと同一であってよい。また、内部レジスタの値は、複数の内部レジスタそれぞれの値 を含んでいてよい。
[0040] 本発明の実施形態に係る試験シミュレータ 30によれば、既存の試験パターンと、当 該既存の試験パターンを与え始める時の内部レジスタの値と、当該既存の試験パタ ーンが与えられた場合の半導体デバイスの出力と、当該既存の試験パターンを与え 終えた時の内部レジスタの値との組み合わせを、複数保持することができる。これに より、多様な試験パターンを用いる場合であっても、シミュレーション試験においてス キップすることができる部分を精度よく検出して、シミュレーション試験に要する時間 を効率的に短縮することができる。
[0041] 図 5は、本発明の実施形態に係る試験シミュレータ 30における処理の流れの一例 を示すフローチャートである。まず、試験パターン生成手段 300は、デバイスシミュレ ート手段 40によりシミュレートされる半導体デバイスに与えるべき新たな試験パターン を生成する(S1000)。続いて、デバイス出力生成手段 330は、デバイスシミュレート 手段 40によりシミュレートされる半導体デバイスの内部レジスタの値を、デバイスシミ ュレート手段 40から取得する(S 1010)。続いて、試験パターン判断手段 320は、試 験パターン生成手段 300が生成した新たな試験パターンと、当該新たな試験パター ンを与え始める時の、デバイスシミュレート手段 40によりシミュレートされる半導体デ バイスの内部レジスタの値との組み合わせ力 試験パターンデータベース 316に保 持された、既存の試験パターンと、当該既存の試験パターンを与え始める時の、半導 体デバイスの内部レジスタの値との複数の組み合わせの何れかと同一であるか否か を判断する(S 1020)。
[0042] そして、新たな試験パターンにおける前述した組み合わせ力 試験パターンデータ ベース 316に保持されている、複数の既存の試験パターンのそれぞれにおける前述 した組み合わせの何れかと同一であると試験パターン判断手段 320により判断され た場合に(S1020 :Yes)、シミュレーションスキップ手段 350は、デバイスシミュレート 手段 40によりシミュレートされて 、る半導体デバイスに対して当該新たな試験パター ンを与えることなく、当該既存の試験パターンを半導体デバイスに与えた場合に半導 体デバイス力も得られるべき出力をデバイス出力データベース 344から読み出して、 当該新たな試験パターンに対する半導体デバイス力 の出力とすることにより、シミュ レーシヨン試験の少なくとも一部をスキップする(S1030)。続いて、レジスタ値設定手 段 370は、新たな試験パターンと同一であると判断された既存の試験パターンをデ バイスシミュレート手段 40に与え終えた後の、デバイスシミュレート手段 40がシミュレ ートする半導体デバイスの内部レジスタの値を、終了レジスタ値データベース 364か ら読み出して、半導体デバイスの内部レジスタに設定させる(S1040)。
[0043] 一方、新たな試験パターンにおける前述した組み合わせ力 試験パターンデータ ベース 316に保持されている、複数の既存の試験パターンのそれぞれにおける前述 した組み合わせの何れとも同一ではないと試験パターン判断手段 320により判断さ れた場合に(S 1020 : No)、デバイス出力生成手段 330は、新たな試験パターンをデ バイスシミュレート手段 40に与えて、デバイスシミュレート手段 40を動作させることに よって、半導体デバイス力もの出力を生成させる(S1050)。続いて、デバイス出力格 納手段 342は、新たな試験パターンに応じてデバイスシミュレート手段 40が生成した 半導体デバイスの出力を、デバイス出力データベース 344に格納する(S1060)。続 いて、試験パターン保持手段 310は、新たな試験パターン、及び当該新たな試験パ ターンをデバイスシミュレート手段 40に対して与え始めた時の、デバイスシミュレート 手段 40によりシミュレートされる半導体デバイスの内部レジスタの値を、試験パターン データベース 316に格納する(S1070)。続いて、終了レジスタ値格納手段 362は、 新たな試験パターンをデバイスシミュレート手段 40に対して与え終えた後の、デバイ スシミュレート手段 40によりシミュレートされる半導体デバイスの内部レジスタの値を、 終了レジスタ値データベース 364に格納する(S1080)。
[0044] 続いて、論理比較手段 390は、シミュレーションスキップ手段 350によってシミュレ ーシヨン試験がスキップされた場合には、デバイス出力データベース 344から読み出 された、既存の試験パターンに対応する出力を、また、シミュレーション試験がスキッ プされな力つた場合には、デバイス出力生成手段 330が、デバイスシミュレート手段 4 0に生成させた出力を、期待値と比較することにより、デバイスシミュレート手段 40が シミュレートする半導体デバイスの良否を判定する(S 1090)。なお、試験シミュレ一 タ 30は、必要に応じて、以上の処理を繰り返し行ってもよい。
[0045] 本発明の実施形態に係る試験シミュレータ 30によれば、新たな試験パターンと当 該新たな試験パターンを与え始める時の内部レジスタの値との組み合わせ力 既存 の試験パターンと当該既存の試験パターンを与え始める時の内部レジスタの値との 組み合わせと同一でない場合には、当該新たな試験パターンと、当該新たな試験パ ターンを与え始める時の内部レジスタの値と、当該新たな試験パターンに応じて生成 された半導体デバイスの出力と、当該半導体デバイスの出力が生成された後の、内 部レジスタの値との組み合わせを、既存の試験パターンにおける組み合わせの 1つと して格納することができる。これにより、以降に、同じ試験パターンが新たな試験バタ ーンとして用いられる場合には、当該試験パターンについてのシミュレーション試験 をスキップすることができる。つまり、試験パターンにおける前述した組み合わせが予 め保持されていなくとも、シミュレーション試験を実行するに従って、より効率的にシミ ユレーシヨン試験をスキップして、シミュレーション試験に要する時間を短縮することが できる。
[0046] なお、試験パターン判断手段 320により、新たな試験パターンを与え始める時の内 部レジスタの値が同一であるカゝ否かが判断される場合においては、必ずしも、デバイ スシミュレート手段 40がシミュレートする半導体デバイスにおけるすべてのレジスタが 同一であるか否かが判断されなくともよぐ試験シミュレータ 30によってシミュレートさ れる試験において、同一の試験パターンを与えることによって同一の出力が得られる 場合に一致しているべき種類の内部レジスタ力 少なくとも一致していればよい。また 、試験シミュレータ 30は、新たな試験パターンと当該新たな試験パターンを与え始め る時の内部レジスタの値との組み合わせ、及び既存の試験パターンと当該既存の試 験パターンを与え始める時の内部レジスタの値との組み合わせが同一であると判断 し、シミュレーション試験をスキップした後で、更に新たな試験パターンと既存の試験 パターンとが一致する場合には、試験パターンを与え始める時の内部レジスタの値が 互いに同一であるか否かを判断せずに、シミュレーション試験をスキップしてよい。更 に、試験シミュレータ 30は、試験パターンと当該試験パターンを与え始める時の内部 レジスタの値との組み合わせが同一であると判断し、シミュレーション試験をスキップ した場合にぉ 、て、続、て用いる新たな試験パターンと既存の試験パターンとが更 に一致する場合には、半導体デバイスの出力が生成された後の内部レジスタの値を 設定しなくともよい。
[0047] 図 6は、本発明の実施形態に係るコンピュータ 1500のハードウェア構成の一例を 示すブロック図である。本発明の実施形態に係るコンピュータ 1500は、ホスト'コント ローラ 1582によりネ目互に接続される CPU1505、 RAM1520、グラフィック 'コント口 ーラ 1575、及び表示装置 1580を有する CPU周辺部と、入出力コントローラ 1584に よりホスト.コントローラ 1582に接続される通信インターフェイス 1530、ハードディスク ドライブ 1540、及び CD— ROMドライブ 1560を有する入出力部と、入出力コント口 ーラ 1584〖こ接続される ROM1510、フレキシブルディスク 'ドライブ 1550、及び入出 力チップ 1570を有するレガシー入出力部とを備える。
[0048] ホスト'コントローラ 1582は、 RAM1520と、高い転送レートで RAM1520をァクセ スする CPU1505及びグラフィック 'コントローラ 1575とを接続する。 CPU1505は、 R OM1510及び RAM 1520に格納されたプログラムに基づ 、て動作し、各部の制御 を行う。グラフィック 'コントローラ 1575は、 CPU1505等が RAM1520内に設けたフ レーム ·バッファ上に生成する画像データを取得し、表示装置 1580上に表示させる
。これに代えて、グラフィック 'コントローラ 1575は、 CPU1505等が生成する画像デ ータを格納するフレーム ·ノ ッファを、内部に含んでもょ ヽ。
[0049] 入出力コントローラ 1584は、ホスト'コントローラ 1582と、比較的高速な入出力装置 である通信インターフェイス 1530、ハードディスクドライブ 1540、 CD— ROMドライ ブ 1560を接続する。通信インターフェイス 1530は、ネットワークを介して他の装置と 通信する。ハードディスクドライブ 1540は、コンピュータ 1500内の CPU1505が使用 するプログラム及びデータを格納する。 CD— ROMドライブ 1560は、 CD—ROM15 95力 プログラム又はデータを読み取り、 RAM1520を介してハードディスクドライブ 1540に提供する。
[0050] また、入出力コントローラ 1584〖こは、 ROM1510と、フレキシブルディスク 'ドライブ 1550、及び入出力チップ 1570の比較的低速な入出力装置とが接続される。 ROM 1510は、コンピュータ 1500が起動時に実行するブート'プログラムや、コンピュータ 1500のハードウェアに依存するプログラム等を格納する。フレキシブルディスク'ドラ イブ 1550は、フレキシブルディスク 1590からプログラム又はデータを読み取り、 RA M1520を介してハードディスクドライブ 1540に提供する。入出力チップ 1570は、フ レキシブルディスク 'ドライブ 1550や、例えばパラレル 'ポート、シリアル 'ポート、キー ボード'ポート、マウス'ポート等を介して各種の入出力装置を接続する。
[0051] RAM1520を介してハードディスクドライブ 1540に提供される試験シミュレーション プログラムは、フレキシブノレディスク 1590、 CD— ROM1595、又は ICカード等の記 録媒体に格納されて利用者によって提供される。試験シミュレーションプログラムは、 記録媒体から読み出され、 RAM1520を介してコンピュータ 1500内のハードデイス クドライブ 1540にインストールされ、 CPU 1505において実行される。コンピュータ 15 00にインストールされて実行される試験シミュレーションプログラムは、 CPU1505等 に働きかけて、コンピュータ 1500を、図 1から図 5にかけて説明した試験シミュレータ 30として機能させる。
[0052] 以上に示したプログラムは、外部の記録媒体に格納されてもよい。記録媒体として は、フレキシブルディスク 1590、 CD— ROM1595の他〖こ、 DVDや PD等の光学記 録媒体、 MD等の光磁気記録媒体、テープ媒体、 ICカード等の半導体メモリ等を用 いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシ ステムに設けたノヽードディスク又は RAM等の記憶装置を記録媒体として使用し、ネ ットワークを介してプログラムをコンピュータ 1500に提供してもよい。
[0053] 以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実 施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または 改良を加えることが可能であることが当業者に明らかである。その様な変更または改 良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から 明らかである。
産業上の利用可能性
[0054] 本発明によれば、実際の半導体デバイスに比べて動作速度の遅いデバイスシミュ レータを用いて半導体デバイスの試験をシミュレートする場合において、効率的に試 験をシミュレートして、シミュレーション試験に要する時間を短縮する試験シミュレータ を提供することができる。

Claims

請求の範囲
[1] 半導体デバイスの試験をシミュレートする試験シミュレータであって、
前記半導体デバイスに与えるべき既存の試験パターンを保持する試験パターン保 持手段と、
前記半導体デバイスに前記既存の試験パターンを与えた場合に、前記半導体デ バイスカゝら得られるべき出力を予め保持するデバイス出力保持手段と、
前記半導体デバイスに与えるべき新たな試験パターンを生成する試験パターン生 成手段と、
前記新たな試験パターンが、前記既存の試験パターンと同一である力否かを判断 する試験パターン判断手段と、
前記新たな試験パターンが、前記既存の試験パターンと同一である場合に、前記 半導体デバイスに対して前記新たな試験パターンを与えることなぐ前記デバイス出 力保持手段から出力を読み出して、前記新たな試験パターンに対する前記半導体 デバイスからの出力とすることにより、シミュレーション試験の少なくとも一部をスキップ するシミュレーションスキップ手段と
を備える試験シミュレータ。
[2] 前記新たな試験パターンが前記既存の試験パターンと同一ではな力つた場合に、 前記半導体デバイスの動作をシミュレートするデバイスシミュレート手段に対して前記 新たな試験パターンを与えて前記デバイスシミュレート手段を動作させることによって 、前記半導体デバイスからの出力を生成させるデバイス出力生成手段を更に備える 請求項 1に記載の試験シミュレータ。
[3] 前記デバイスシミュレート手段を更に備える請求項 2に記載の試験シミュレータ。
[4] 前記試験パターン保持手段は、前記試験パターン生成手段が生成した前記新た な試験パターンを格納する試験パターン格納手段を有し、
前記デバイス出力保持手段は、前記新たな試験パターンに応じて前記デバイスシ ミュレート手段が生成した前記半導体デバイス力 の出力を格納するデバイス出力格 納手段を有する
請求項 2に記載の試験シミュレータ。
[5] 前記試験パターン保持手段は、前記既存の試験パターンを与え始める時の、前記 半導体デバイスの内部レジスタの値を更に保持しており、
前記シミュレーションスキップ手段は、前記新たな試験パターンを前記半導体デバ イスに与え始める時の、前記半導体デバイスの内部レジスタの値力 前記試験パタ ーン保持手段に保持された前記内部レジスタの値と同一であることを、更に条件とし て、前記シミュレーション試験の少なくとも一部をスキップする
請求項 2に記載の試験シミュレータ。
[6] 前記試験パターン保持手段は、前記新たな試験パターンを前記デバイスシミュレ一 ト手段に対して与え始める時の、前記半導体デバイスの内部レジスタの値を前記デ バイスシミュレート手段力 受け取って格納する開始レジスタ値格納手段を有する請 求項 5に記載の試験シミュレータ。
[7] 前記試験パターン保持手段は、前記既存の試験パターンを前記デバイスシミュレ ート手段に与え始める時の、前記半導体デバイスの内部レジスタの値と当該既存の 試験パターンとの組み合わせを複数保持しており、
前記デバイス出力保持手段は、複数の前記既存の試験パターンのそれぞれに対 応付けて、当該既存の試験パターンを与えた場合に前記半導体デバイスから得られ るべき出力を保持しており、
前記シミュレーションスキップ手段は、前記新たな試験パターンを与え始める時の 前記半導体デバイスの内部レジスタの値と当該新たな試験パターンとの組み合わせ
1S 前記試験パターン保持手段に保持された前記組み合わせの!/ヽずれかと同一で ある場合に、前記シミュレーション試験の少なくとも一部をスキップする
請求項 6に記載の試験シミュレータ。
[8] 前記既存の試験パターンを与え終えた後の、前記半導体デバイスの内部レジスタ の値を保持する終了レジスタ値保持手段と、
前記シミュレーションスキップ手段により、前記シミュレーション試験の少なくとも一 部がスキップされた場合に、前記終了レジスタ値保持手段が保持している内部レジス タの値を、前記半導体デバイスの内部レジスタに設定させるレジスタ値設定手段と を更に備え、 前記試験パターン生成手段は、前記シミュレーションスキップ手段によりスキップさ れた前記シミュレーション試験を再開させるベぐ前記新たな試験パターンを生成す る
請求項 5に記載の試験シミュレータ。
[9] 前記終了レジスタ値保持手段は、前記新たな試験パターンを前記デバイスシミュレ ート手段に対して与え終えた後の、前記半導体デバイスの内部レジスタの値を前記 デバイスシミュレート手段力 受け取って格納する終了レジスタ値格納手段を有する 請求項 8に記載の試験シミュレータ。
[10] 半導体デバイスの試験をシミュレートする試験シミュレータとしてコンピュータを機能 させる試験シミュレーションプログラムであって、
前記半導体デバイスに与えるべき既存の試験パターンを保持する試験パターン保 持手段と、
前記半導体デバイスに前記既存の試験パターンを与えた場合に、前記半導体デ バイスカゝら得られるべき出力を予め保持するデバイス出力保持手段と、
前記半導体デバイスに与えるべき新たな試験パターンを生成する試験パターン生 成手段と、
前記新たな試験パターンが、前記既存の試験パターンと同一である力否かを判断 する試験パターン判断手段と、
前記新たな試験パターンが、前記既存の試験パターンと同一である場合に、前記 半導体デバイスに対して前記新たな試験パターンを与えることなぐ前記デバイス出 力保持手段から出力を読み出して、前記新たな試験パターンに対する前記半導体 デバイスからの出力とすることにより、シミュレーション試験の少なくとも一部をスキップ するシミュレーションスキップ手段と
を備える試験シミュレータとして前記コンピュータを機能させる試験シミュレーション プログラム。
[11] 前記新たな試験パターンが前記既存の試験パターンと同一ではな力つた場合に、 前記半導体デバイスの動作をシミュレートするデバイスシミュレート手段に対して前記 新たな試験パターンを与えて前記デバイスシミュレート手段を動作させることによって 、前記半導体デバイスからの出力を生成させるデバイス出力生成手段を更に備える 試験シミュレータとして前記コンピュータを機能させる請求項 10に記載の試験シミュ レーシヨンプログラム。
[12] 前記デバイスシミュレート手段を更に備える試験シミュレータとして前記コンピュータ を機能させる請求項 11に記載の試験シミュレータ。
[13] 前記試験パターン保持手段は、前記試験パターン生成手段が生成した前記新た な試験パターンを格納する試験パターン格納手段を有し、
前記デバイス出力保持手段は、前記新たな試験パターンに応じて前記デバイスシ ミュレート手段が生成した前記半導体デバイス力 の出力を格納するデバイス出力格 納手段を有する
請求項 11に記載の試験シミュレーションプログラム。
[14] 前記試験パターン保持手段は、前記既存の試験パターンを与え始める時の、前記 半導体デバイスの内部レジスタの値を更に保持しており、
前記シミュレーションスキップ手段は、前記新たな試験パターンを前記半導体デバ イスに与え始める時の、前記半導体デバイスの内部レジスタの値力 前記試験パタ ーン保持手段に保持された前記内部レジスタの値と同一であることを、更に条件とし て、前記シミュレーション試験の少なくとも一部をスキップする
請求項 11に記載の試験シミュレーションプログラム。
[15] 前記試験パターン保持手段は、前記新たな試験パターンを前記デバイスシミュレ一 ト手段に対して与え始める時の、前記半導体デバイスの内部レジスタの値を前記デ バイスシミュレート手段力 受け取って格納する開始レジスタ値格納手段を有する試 験シミュレータとして前記コンピュータを機能させる請求項 14に記載の試験シミュレ ーシヨンプログラム。
[16] 前記試験パターン保持手段は、前記既存の試験パターンを前記デバイスシミュレ ート手段に与え始める時の、前記半導体デバイスの内部レジスタの値と当該既存の 試験パターンとの組み合わせを複数保持しており、
前記デバイス出力保持手段は、複数の前記既存の試験パターンのそれぞれに対 応付けて、当該既存の試験パターンを与えた場合に前記半導体デバイスから得られ るべき出力を保持しており、
前記シミュレーションスキップ手段は、前記新たな試験パターンを与え始める時の 前記半導体デバイスの内部レジスタの値と当該新たな試験パターンとの組み合わせ
1S 前記試験パターン保持手段に保持された前記組み合わせの!/ヽずれかと同一で ある場合に、前記シミュレーション試験の少なくとも一部をスキップする
請求項 15に記載の試験シミュレーションプログラム。
[17] 前記試験シミュレータは、
前記既存の試験パターンを与え終えた後の、前記半導体デバイスの内部レジスタ の値を保持する終了レジスタ値保持手段と、
前記シミュレーションスキップ手段により、前記シミュレーション試験の少なくとも一 部がスキップされた場合に、前記終了レジスタ値保持手段が保持している内部レジス タの値を、前記半導体デバイスの内部レジスタに設定させるレジスタ値設定手段と を更に備え、
前記試験パターン生成手段は、前記シミュレーションスキップ手段によりスキップさ れた前記シミュレーション試験を再開させるベぐ前記新たな試験パターンを生成す る
請求項 14に記載の試験シミュレーションプログラム。
[18] 前記終了レジスタ値保持手段は、前記新たな試験パターンを前記デバイスシミュレ ート手段に対して与え終えた後の、前記半導体デバイスの内部レジスタの値を前記 デバイスシミュレート手段力 受け取って格納する終了レジスタ値格納手段を有する 試験シミュレータとして前記コンピュータを機能させる請求項 17に記載の試験シミュ レーシヨンプログラム。
[19] 請求項 10から請求項 18のいずれかに記載の試験シミュレーションプログラムを記 録した記録媒体。
PCT/JP2005/017396 2004-09-24 2005-09-21 試験シミュレータ、試験シミュレーションプログラム、及び記録媒体 WO2006033357A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN2005800322729A CN101027566B (zh) 2004-09-24 2005-09-21 测试模拟器及测试模拟方法
EP05785167A EP1801603B1 (en) 2004-09-24 2005-09-21 Test simulator, test simulation program and recording medium
DE602005020168T DE602005020168D1 (de) 2004-09-24 2005-09-21 Testsimulator, testsimulationsprogramm und aufzeichnungsmedium
US11/240,811 US7502724B2 (en) 2004-09-24 2005-09-30 Test simulator, test simulation program and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004-278582 2004-09-24
JP2004278582A JP4580722B2 (ja) 2004-09-24 2004-09-24 試験シミュレータ及び試験シミュレーションプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US11/240,811 Continuation US7502724B2 (en) 2004-09-24 2005-09-30 Test simulator, test simulation program and recording medium

Publications (1)

Publication Number Publication Date
WO2006033357A1 true WO2006033357A1 (ja) 2006-03-30

Family

ID=36090114

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2005/017396 WO2006033357A1 (ja) 2004-09-24 2005-09-21 試験シミュレータ、試験シミュレーションプログラム、及び記録媒体

Country Status (8)

Country Link
US (1) US7502724B2 (ja)
EP (1) EP1801603B1 (ja)
JP (1) JP4580722B2 (ja)
KR (1) KR20070065884A (ja)
CN (1) CN101027566B (ja)
DE (1) DE602005020168D1 (ja)
TW (1) TWI353515B (ja)
WO (1) WO2006033357A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4684183B2 (ja) * 2006-08-09 2011-05-18 株式会社日立ハイテクエンジニアリングサービス 半導体試験装置のテストプログラム生成システム
US8037357B2 (en) * 2009-03-24 2011-10-11 Visa U.S.A. Inc. System and method for generating test job control language files
KR20110003182A (ko) 2009-07-03 2011-01-11 삼성전자주식회사 인쇄 회로 기판 설계 방법 및 인쇄 회로 기판을 포함하는 패키지 테스트 디바이스
US9404743B2 (en) * 2012-11-01 2016-08-02 Taiwan Semiconductor Manufacturing Company, Ltd. Method for validating measurement data
US10539609B2 (en) 2014-12-08 2020-01-21 Nxp Usa, Inc. Method of converting high-level test specification language to low-level test implementation language
US10755014B2 (en) * 2018-03-14 2020-08-25 Montana Systems Inc. Event-driven design simulation
TWI700584B (zh) * 2018-07-06 2020-08-01 華邦電子股份有限公司 測試系統及適應性測試程式產生方法
CN112069015B (zh) * 2020-11-10 2021-02-23 鹏城实验室 指令模拟器指令执行方法、装置、终端设备以及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0361871A (ja) * 1989-07-31 1991-03-18 Hitachi Ltd シミュレーシヨン処理装置
JP2003315419A (ja) * 2002-04-24 2003-11-06 Ando Electric Co Ltd シミュレート領域範囲設定機能を有するマイクロプログラムシミュレータ

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0769392B2 (ja) * 1987-03-20 1995-07-31 富士通株式会社 論理回路の故障箇所推定方法
DE69114183T2 (de) * 1990-06-07 1996-05-30 Ibm System zur Reduzierung von Prüfdatenspeichern.
JP3247937B2 (ja) * 1992-09-24 2002-01-21 株式会社日立製作所 論理集積回路
US5913022A (en) * 1995-08-31 1999-06-15 Schlumberger Technologies, Inc. Loading hardware pattern memory in automatic test equipment for testing circuits
US6167545A (en) * 1998-03-19 2000-12-26 Xilinx, Inc. Self-adaptive test program
US6249891B1 (en) * 1998-07-02 2001-06-19 Advantest Corp. High speed test pattern evaluation apparatus
US6308292B1 (en) * 1998-12-08 2001-10-23 Lsi Logic Corporation File driven mask insertion for automatic test equipment test pattern generation
US6321363B1 (en) * 1999-01-11 2001-11-20 Novas Software Inc. Incremental simulation using previous simulation results and knowledge of changes to simulation model to achieve fast simulation time
US7089517B2 (en) 2000-09-29 2006-08-08 Advantest Corp. Method for design validation of complex IC
JP3795822B2 (ja) * 2002-04-03 2006-07-12 Necエレクトロニクス株式会社 組込み自己テスト回路及び設計検証方法
US6973633B2 (en) * 2002-07-24 2005-12-06 George Lippincott Caching of lithography and etch simulation results
CN1318965C (zh) * 2002-09-10 2007-05-30 华邦电子股份有限公司 测试式样产生方法与其装置
JP3833982B2 (ja) * 2002-10-03 2006-10-18 株式会社東芝 テストパターン選択装置、テストパターン選択方法、及びテストパターン選択プログラム

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0361871A (ja) * 1989-07-31 1991-03-18 Hitachi Ltd シミュレーシヨン処理装置
JP2003315419A (ja) * 2002-04-24 2003-11-06 Ando Electric Co Ltd シミュレート領域範囲設定機能を有するマイクロプログラムシミュレータ

Non-Patent Citations (1)

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

Also Published As

Publication number Publication date
TWI353515B (en) 2011-12-01
EP1801603A1 (en) 2007-06-27
CN101027566B (zh) 2010-10-27
KR20070065884A (ko) 2007-06-25
DE602005020168D1 (de) 2010-05-06
US20060085682A1 (en) 2006-04-20
EP1801603B1 (en) 2010-03-24
JP2006090905A (ja) 2006-04-06
US7502724B2 (en) 2009-03-10
EP1801603A4 (en) 2008-07-23
TW200611118A (en) 2006-04-01
CN101027566A (zh) 2007-08-29
JP4580722B2 (ja) 2010-11-17

Similar Documents

Publication Publication Date Title
WO2006033357A1 (ja) 試験シミュレータ、試験シミュレーションプログラム、及び記録媒体
US7003420B2 (en) Late binding of variables during test case generation for hardware and software design verification
EP1790989B1 (en) Test emulator, emulation program, and semiconductor device manufacturing method
US7561999B2 (en) Verification apparatus, verification method, and program
US7761825B2 (en) Generating testcases based on numbers of testcases previously generated
US20070067150A1 (en) Method and apparatus to provide alternative stimulus to signals internal to a model actively running on a logic simulation hardware emulator
TWI723219B (zh) 加速閘層級模擬的方法與設備
US7266795B2 (en) System and method for engine-controlled case splitting within multiple-engine based verification framework
US7502966B2 (en) Testcase generation via a pool of parameter files
US7840924B2 (en) Apparatus, method, and program for verifying logic circuit operating with multiple clock signals
CN112906345A (zh) 验证逻辑电路中的路径的方法、系统、介质和程序产品
US6505149B1 (en) Method and system for verifying a source-synchronous communication interface of a device
JP2005108007A (ja) Lsi設計検証装置及びlsi設計検証方法
Bensalem et al. A Simplified Approach for Testing Real-Time Systems Based on Action Refinement.
JP2000259445A (ja) ソフトウェア/ハードウェア協調シミュレーション方法
JP2005011451A (ja) 試験装置、及びプログラム
WO2009122700A1 (ja) 試験装置および試験方法
US20030233504A1 (en) Method for detecting bus contention from RTL description
JP4351961B2 (ja) シミュレータプログラム及び記憶媒体
JP2009140028A (ja) ハードウェア検証用プログラミング記述生成装置、ハードウェア検証用プログラミング記述生成方法、制御プログラムおよび可読記録媒体
CN101201872A (zh) 为硬件描述语言仿真器创建波形轨迹生成的方法和系统
JP2004062522A (ja) 回路検証装置、回路検証プログラム、回路検証方法
JP4421498B2 (ja) プログラム
JP3678656B2 (ja) インタフェース回路、論理回路検証方法、論理装置、情報処理装置
JP2006085363A (ja) テストベンチシステム、プログラム、及び記憶媒体

Legal Events

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

Ref document number: 11240811

Country of ref document: US

AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE 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 LY 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: A1

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

WWP Wipo information: published in national office

Ref document number: 11240811

Country of ref document: US

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

Ref document number: 200580032272.9

Country of ref document: CN

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 1020077008599

Country of ref document: KR

WWE Wipo information: entry into national phase

Ref document number: 2005785167

Country of ref document: EP

WWP Wipo information: published in national office

Ref document number: 2005785167

Country of ref document: EP

NENP Non-entry into the national phase

Ref country code: JP