Test apparatus, diagnosing program and diagnosing method therefor

There is provided a test apparatus having a plurality of test modules. The test apparatus stores object diagnosing programs for controlling diagnosis of the object test module to be diagnosed of a certain type per type of the test module to be diagnosed and stores, separately from it, a set of identification information of diagnostic performance board to be mounted on a test head to diagnose the object test module to be diagnosed by the respective object diagnosing programs per type of the object test modules to be diagnosed. When the diagnostic performance board is mounted on the test head, the test apparatus obtains identification information of the diagnostic performance board and executes the object diagnosing program corresponding to that type under the condition that the identification information coincides with the identification information stored correlatively with the type of the designated object test module to be diagnosed.

The present application claims priority from a Japanese Patent application No. 2005-139651 filed on May 12, 2005, the contents of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a test apparatus, a diagnosing program and diagnosing method for diagnosing test modules for testing devices-under-test (or DUT).

2. Description of Related Art

Conventionally, a test apparatus for testing DUTs (Devices-Under-Test) such as a memory, a logic LSI or an SOC (System on Chip) carries a plurality of test modules that receives/outputs signals from/to the DUTs. The late test apparatuses are provided with slots capable of carrying a plurality of compatible test modules, thus permitting various tests to be conducted by changing test modules to be inserted into the slots. See the following documents for example.Semiconductor Test Consortium, “STC ANNOUNCES PUBLICATION ACCESS TO THE OPENSTAR™ SPECS” [online], Dec. 7, 2004 [Retrieved on Mar. 16, 2005], INTERNET <URL: http//www.semitest.org/site/News/STC_Spec_Open_to_Pub lic>

If each test module causes a trouble here, the device-under-test cannot be tested adequately because input and output signals cannot be transmitted correctly.

In order to deal with such trouble, a diagnosing program for diagnosing the test module is prepared per each test module. Then, the test apparatus realizes its diagnostic function for diagnosing the corresponding test module by executing the diagnosing program. In concrete, in diagnosing the test module to be diagnosed, the test apparatus carries out input/output tests or the like by inputting a diagnosing signal output by the test module to another test module to compare it with an expectation value and by inputting a diagnosing signal output by the other test apparatus to the test module to compare with an expectation value.

In order to realize such diagnostic function, a test head of the test apparatus is arranged so as to be able to mount a diagnostic performance board for diagnosing the test modules instead of a performance board for mounting the DUTs. For instance, the diagnostic performance board diagnoses input/output functions of the test modules by receiving a signal to be output to the DUT from each test module and by outputting the input signal to the other test module.

In order to diagnose the test module adequately, an input signal or the like set in advance must be input to the test module at adequate timing. Therefore, the diagnostic performance board to be mounted on the test head must be designed adequately corresponding to the test module to be diagnosed. Accordingly, the conventional diagnosing program for controlling the diagnostic process diagnoses the test module after discriminating the type of the diagnostic performance board currently mounted on the test head and only when the diagnostic performance board of that type is suitable for diagnosing the test module.

In diagnosing a certain test module, there is a case of using an upward compatible performance board developed for the improved version of the test module, not only the performance board developed for only diagnosing the test module. However, the type of the performance board for only diagnosing the test module is different from the upward compatible performance board.

Accordingly, the conventional diagnosing program could not diagnose the test modules by using the upward compatible performance board. Still more, in order to make it possible to diagnose by using the upward compatible performance board, the diagnosing program must be prepared over again every time when such performance board is developed.

It is therefore an object of the invention to provide a test apparatus and a program capable of solving the above-mentioned problems. This object may be achieved by combining features described in independent claims. Dependent claims speculate still advantageous embodiments.

SUMMARY OF INVENTION

In order to solve the above-mentioned problems, according to a first aspect of the invention, there is provided a test apparatus for testing devices-under-test, having a plurality of test modules for supplying a test signal to the device-under-test and receiving an output signal output by the device-under-test corresponding to the supplied test signal, a test head for carrying a testing performance board that carries the device-under-test and connects the mounted device-under-test with the plurality of test modules and a control unit for controlling the plurality of test modules, wherein the control unit has a diagnosing program storage section for storing object diagnosing programs that cause the control unit to control the diagnosis of a certain type of object test module to be diagnosed per type thereof, a file storage section for storing a compatible information file recording, per type of the object test module to be diagnosed, identification information of at least one mutually compatible diagnostic performance board to be mounted on the test head instead of the testing performance board to diagnose the object test module to be diagnosed by the respective object diagnosing programs, an identification information obtaining section for obtaining the identification information of the diagnostic performance board when the diagnostic performance board is mounted on the test head and an object diagnosing program executing section for executing the object diagnosing program corresponding to the type under the condition that at least one of the identification information recorded in the compatible information file correlatively with the type of the designated object test module to be diagnosed coincides with the identification information obtained by the identification information obtaining section.

The file storage section may also store a system configuration file recording the respective types of the plurality of test modules mounted on the test apparatus, the control unit has also a type obtaining section for reading out the system configuration file to obtain the type of the respective test modules mounted on the test apparatus and an object diagnosing program selecting section for setting each of the test modules sequentially as the object test modules to be diagnosed and sequentially selecting the object diagnosing programs corresponding to the type of the object test modules to be diagnosed, and the object diagnosing program executing section executes the object diagnosing program selected by the object diagnosing program selecting section under the condition that at least one of the identification information recorded correlatively with the type of the object diagnosing program coincides with the identification information obtained by the identification information obtaining section.

The control unit may also have amount detecting section for detecting that any one of the diagnostic performance boards is mounted on the test head and the identification information obtaining section may obtain the identification information of the diagnostic performance board corresponding to that the diagnostic performance board is detected as being mounted by the mount detecting section.

The control unit may further include a display section for displaying each of the plurality of test modules so that the user can select under the condition that any one of identification information corresponding to the type of the test module in the compatible information file coincides with the identification information obtained by the identification information obtaining section and an object diagnosing program selecting section for selecting an object diagnosing program for diagnosing the test module designated by the user among the test modules displayed on the display section, and the object diagnosing program executing section may execute the object diagnosing program selected by the object diagnosing program selecting section.

The display section may also display the identification information recorded in the compatible information file to the user as information indicating the performance board to be mounted on the test head when none of the identification information recorded in the compatible information file correlatively with the type of the test module designated by the user coincides with the identification information obtained by the identification information obtaining section.

According to a second aspect of the invention, there is provided a diagnosing program for diagnosing test modules by a control unit in a test apparatus having the plurality of test modules that supply a test signal to a device-under-test, the control unit for controlling the plurality of test modules and a test head for carrying a testing performance board that carries the device-under-test and connects the mounted device-under-test with the plurality of test modules, wherein the diagnosing program operates the control unit as a diagnosing program storage section for storing object diagnosing programs that cause the control unit to control the diagnosis of a certain type of the object test module to be diagnosed per type thereof, a file storage section for storing a compatible information file recording identification information of at least one mutually compatible diagnostic performance board to be mounted on the test head instead of the testing performance board to diagnose the object test module to be diagnosed by the respective object diagnosing program per type of the object test module to be diagnosed, an identification information obtaining section for obtaining the identification information of the diagnostic performance board when the diagnostic performance board is mounted on the test head and an object diagnosing program executing section for executing the object diagnosing program corresponding to the type under the condition that at least one of the identification information recorded in the compatible information file correlatively with the type of the designated object test module to be diagnosed coincides with the identification information obtained by the identification information obtaining section.

According to a third aspect of the invention, there is provided a diagnosing method for diagnosing test modules by a control unit in a test apparatus having the plurality of test modules for supplying a test signal to a device-under-test, a control unit for controlling the plurality of test modules and a test head for carrying a testing performance board that carries the device-under-test and connects the mounted device-under-test with the plurality of test modules, wherein the control unit has a diagnosing program storage section for storing object diagnosing programs that cause the control unit to control the diagnosis of a certain type of the object test module to be diagnosed per type thereof and a file storage section for storing a compatible information file recording identification information of at least one mutually compatible diagnostic performance board to be mounted on the test head instead of the testing performance board to diagnose the object test module to be diagnosed by the respective object diagnosing program per type of the object test module to be diagnosed, and the diagnosing method has an identification information obtaining step of obtaining the identification information of the diagnostic performance board when the diagnostic performance board is mounted on the test head and an object diagnosing program executing step of executing the object diagnosing program corresponding to the type under the condition that at least one of the identification information recorded in the compatible information file correlatively with the type of the designated object test module to be diagnosed coincides with the identification information obtained by the identification information obtaining section.

It is noted that the summary of the invention does not necessarily describe all necessary features of the invention. The invention may also be a sub-combination of the features described above.

DETAILED DESCRIPTION OF THE INVENTION

The invention will now be described based on preferred embodiments, which do not intend to limit the scope of the invention, but exemplify the invention. All of the features and the combinations thereof described in the embodiments are not necessarily essential to the invention.

FIG. 1shows an overall configuration of a test apparatus10. The test apparatus10has test modules20-1through20-N, a test head30, a diagnostic performance board35, a testing performance board37and a control unit40. Each of the test modules20-1through20-N supplies a test signal to a device-under-test50(DUT) and receives an output signal output by the device-under-test50corresponding to the supplied test signal. The test head30carries the testing performance board37that is a performance board for carrying the device-under-test50. When the testing performance board37is mounted on the test head30, it connects the device-under-test50mounted thereon with the test modules20-1through20-N.

Meanwhile, the diagnostic performance board35is a performance board to be mounted on the test head30, instead of the testing performance board37, to diagnose at least one of the test modules20-1through20-N whether or not it is non-defective. It is not necessary to mount the device-under-test50thereon because the diagnostic performance board35is not used to judge whether or not the device-under-test50is non-defective. The control unit40judges whether or not the device-under-test50is non-defective when the testing performance board37is mounted and judges whether or not the test modules20-1through20-N are non-defective when the diagnostic performance board35is mounted.

It is noted that the test apparatus10in the figure may be composed of a host computer for controlling tests and a test unit for inputting/outputting test signals from/to the device-under-test50for example. In this case, the control unit40may be realized by the host computer and the test modules20-1through20-N and the test head30are provided in the test unit. Or, at least a part of functions of the respective test modules20-1through20-N may be realized by the host computer.

An object of the test apparatus10of the present embodiment is to diagnose whether or not the testing function of the test modules20-1through20-N for use in testing the device-under-test50works normally in the ordinary operation. Controls conducted when the diagnostic performance board35is mounted on the test head30will be explained hereinbelow.

FIG. 2shows functions of the control unit40by functional blocks. The control unit40has a diagnosing program storage section200, a file storage section210, amount detecting section220, an identification information obtaining section230, a display section240, a type obtaining section250, an object diagnosing program selecting section260and an object diagnosing program executing section270. The diagnosing program storage section200stores object diagnosing programs for controlling diagnosis of a certain type of an object test module to be diagnosed by the control unit40per type of the test module to be diagnosed.

The file storage section210stores a compatible information file recording information regarding compatibility of the diagnostic performance boards. More specifically, the compatible information file records identification information of at least one mutually compatible diagnostic performance board to be mounted on the test head30instead of the testing performance board37to diagnose the object test module to be diagnosed by the respective object diagnosing programs per type of the object test module to be diagnosed. The file storage section210also stores a system configuration file recording the respective types of the test modules20-1through20-N mounted on the control unit40.

The mount detecting section220detects if any diagnostic performance board is mounted on the test head30. Corresponding to the result detected by the mount detecting section220that the diagnostic performance board is been mounted, the identification information obtaining section230obtains identification information of that diagnostic performance board. Instead of that, the identification information obtaining section230may obtain the identification information corresponding to an instruction given by an user, regardless whether the diagnostic performance board is been mounted or not. Based on the identification information obtained by the identification information obtaining section230, the display section240displays diagnosable test modules among test modules recorded in the system configuration file so that the user can select.

The type obtaining section250reads the system configuration file from the file storage section210to obtain the type of the test modules20-1through20-N mounted on the control unit40. When the object diagnosing program selecting section260receives an instruction to diagnose all the test modules, it sets each of the test modules20-1through20-N sequentially as test modules to be diagnosed and selects sequentially the object diagnosing programs corresponding to the type of the test modules to be diagnosed. When the object diagnosing program selecting section260receives an instruction to designate a specific test module as an object to be diagnosed on the other hand, it selects an object diagnosing program corresponding to the type of that test module. In this case, the display section240may display information indicating another performance board to be mounted to the user under the condition that the selected object diagnosing program cannot be executed in the state when the diagnostic performance board35is mounted.

The object diagnosing program executing section270obtains identification information of the performance board recorded correlatively with the type of the designated object test module to be diagnosed from the compatible information file. Then, the object diagnosing program executing section270executes the object diagnosing program selected by the object diagnosing program selecting section260under the condition that at least one of the obtained identification information coincides with the identification information obtained by the identification information obtaining section230.

FIG. 3shows a first exemplary configuration of various data stored in the diagnosing program storage section200and the file storage section210. The diagnosing program storage section200stores an object diagnosing program300-1for controlling diagnosis of the test module of a certain type corresponding to the type of the test module20-1and an object diagnosing program300-2for controlling diagnosis of the test module of a certain type corresponding to the type of the test module20-2. The object diagnosing program300-1contains a discrimination subprogram310-1and a control subprogram320-1and the object diagnosing program300-2contains a discrimination subprogram310-2and a control subprogram320-2. The discrimination subprogram310-1, the control subprogram320-1, the discrimination subprogram310-2and the control subprogram320-2are read by the object diagnosing program selecting section260and are executed by the object diagnosing program executing section270, respectively.

The file storage section210stores a compatible information file330-1and a compatible information file330-2recording information regarding the compatibility of the performance boards and a system configuration file370recording the types of test modules mounted on the control unit40. The compatible information file330-1is provided corresponding to Module Type 1 which is the type of the test module20-1. Then, the compatible information file330-1records A and B as identification information (ID) of the performance board (PB) to be mounted on the test head30to diagnose the test module of the Module Type 1. The compatible information file330-2is provided corresponding to Module Type 2 which is the type of the test module20-2. Then, the compatible information file330-2records B as identification information (ID) of the performance board (PB) to be mounted on the test head30to diagnose the test module of the Module Type 2.

Based on the control of the discrimination subprogram310-1, the object diagnosing program executing section270judges whether or not at least one of the identification information recorded in the compatible information file330-1coincides with the identification information obtained by the identification information obtaining section230. When they coincides each other, the object diagnosing program executing section270transmits a control signal for diagnosing the test module20-1to the test module20-1under the control of the control subprogram320-1. That is, if the identification information obtained by the identification information obtaining section230is A or B, the object diagnosing program executing section270can start the diagnosis of the test module20-1.

Similarly to that, the object diagnosing program executing section270judges whether or not at least one of the identification information recorded in the compatible information file330-2coincides with the identification information obtained by the identification information obtaining section230based on the control of the discrimination subprogram310-2. When they coincide each other, the object diagnosing program executing section270transmits a control signal for diagnosing the test module20-2to the test module20-2based on the control of the control subprogram320-2. That is, if the identification information obtained by the identification information obtaining section230is B, the object diagnosing program executing section270can start the diagnosis of the test module20-2.

Thus, the configuration explained in the figure allows the compatible information files and the object diagnosing programs to be recorded as separate files, so that it allows a burden of works for updating the information regarding the compatibility of the diagnostic performance boards to be reduced.

Still more, the system configuration file370records the types of the plurality of test modules mounted on the control unit40, respectively. For instance, in the example of the figure, the system configuration file370records a numerical value 1 by correlating with the type of the test module mounted on the control unit40and records a numerical value 0 by correlating with the type of the test module not mounted on the control unit40. That is, the test modules of Module Types 1 and 2 are mounted on the control unit40and the test module of Module Type 3 is not mounted on the control unit40.

It allows the types of the mounted test modules to be readily discriminated.

FIG. 4shows a second exemplary configuration of various data stored in the diagnosing program storage section200and the file storage section210. Similarly to the first exemplary configuration inFig. 3, the diagnosing program storage section200of this example stores the object diagnosing program300-1and the object diagnosing program300-2. The configuration and function of the object diagnosing program300-1and the object diagnosing program300-2have been already explained in connection withFIG. 3, so that their explanation will be omitted here. Meanwhile, the file storage section210stores a compatible information file340instead of the compatible information file330-1and the compatible information file330-2inFIG. 3.

The compatible information file340records both IDs of a performance board to be mounted on the test head30to diagnose the test module of Module Type 1 and of a performance board to be mounted on the test head30to diagnose the test module of Module Type 2 within one file. Such configuration allows information regarding the compatibility of the diagnostic performance boards to be updated just by conducting works for editing one file.

FIG. 5shows a third exemplary configuration of various data stored in the diagnosing program storage section200and the file storage section210. Similarly to the first exemplary configuration inFIG. 3, the file storage section210of this example stores the compatible information file330-1, the compatible information file330-2and the system configuration file370. The configuration of the compatible information file330-1, the compatible information file330-2and the system configuration file370have been already explained in connection withFIG. 3, so that their explanation will be omitted here. Meanwhile, differing from the first exemplary configuration inFIG. 3, the diagnosing program storage section200stores the object diagnosing program350-1, the object diagnosing program350-2and the discrimination program360respectively as separate files.

Based on the control of the discrimination program360, the object diagnosing program executing section270judges whether or not at least one of the identification information recorded in the compatible information file330-1coincides with the identification information obtained by the identification information obtaining section230. Still more, based on the control of the discrimination program360, the object diagnosing program executing section270judges whether or not at least one of the identification information recorded in the compatible information file330-2coincides with the identification information obtained by the identification information obtaining section230. The respective judged results are sent to the object diagnosing program350-1and the object diagnosing program350-2.

Then, based on the control of the object diagnosing program350-1, the object diagnosing program executing section270transmits a control signal for diagnosing the test module20-1to the test module20-1. Still more, based on the control of the object diagnosing program350-2, the object diagnosing program executing section270transmits a control signal for diagnosing the test module20-2to the test module20-2. Thus, the program for discriminating the compatibility of the performance boards is made common as a program module common to the respective object diagnosing programs in this exemplary configuration. This exemplary configuration allows works to be carried out in altering or modifying the processes for diagnosing the test modules without influencing to the compatibility discriminating function and allows works to be carried out in altering or modifying the compatibility discriminating function without influencing to the processes for diagnosing the test modules.

FIG. 6shows one example of processes through which the control unit40diagnoses test modules. By receiving an instruction to sequentially diagnose the entire test modules mounted on the test apparatus10(S600: YES), the identification information obtaining section230obtains identification information of the diagnostic performance board35(S610). Then, the type obtaining section250reads the system configuration file370(S620) and obtains the type of the test modules20-1through20-N mounted on the test apparatus10(S630). The object diagnosing program selecting section260designates each of the test modules20-1through20-N sequentially as an object test module to be diagnosed and selects an object diagnosing program corresponding to the type of the object test module to be diagnosed (S640). The object diagnosing program corresponding to each of test modules may be determined in advance or may be determined by another determination file stored further in the file storage section210.

Under the condition that at least one of the identification information recorded in the compatible information file330-1and or the like correlatively with the type of the designated object test module to be diagnosed coincides with the identification information obtained by the identification information obtaining section230(S650: YES), the object diagnosing program executing section270executes the selected object diagnosing program (S660). When there still remains a test module not selected yet as an object of the diagnostic process among the test modules recorded in the system configuration file370(S670: YES), the process is returned to S640to select all the test modules sequentially.

When all of the plurality of test modules mounted on the test apparatus10have been already selected as objects for the diagnostic process on the other hand (S670: NO), the control unit40ends the processes in the figure.

As described above, the processes in the figure allow only the test modules that can be diagnosed by using the performance board currently mounted on the test head30to be automatically selected and be diagnosed among all the test modules mounted on the test apparatus10.

FIG. 7shows another example of processes through which the control unit40diagnoses the test modules. Corresponding to the result detected by the mount detecting section220that the diagnostic performance board is been mounted (S700: YES), the identification information obtaining section230obtains the identification information of that diagnostic performance board (S710). Then, the display section240displays each of the plurality of test modules mounted on the test apparatus10(S720) under the condition that any one of the identification information corresponding to the type of the test module in the system configuration file370coincides with the identification information obtained by the identification information obtaining section230. For instance, the display section240displays a list of IDs of the respective test modules meeting with the above-mentioned condition on a screen correlatively with check boxes so that the user can select. In addition to that, the display section240may display ID of each test module that does not meet with the above-mentioned condition by graying out (display by gray letters so as to indicate that it is not selectable).

The object diagnosing program selecting section260sets the test modules designated by the user among the test modules displayed by the display section240as object test modules to be diagnosed and selects the object diagnosing programs for diagnosing the object test modules to be diagnosed (S730). Under the condition that at least one of the identification information recorded in the compatible information file correlatively with the type of the object test modules to be diagnosed coincides with the identification information obtained by the identification information obtaining section230, the object diagnosing program executing section270executes the selected object diagnosing program (S750).

When none of the identification information recorded in the compatible information file330-1or the like correlatively with the type of the test modules designated by the user coincides with the identification information obtained by the identification information obtaining section230(S740: NO) on the other hand, the display section240reads the identification information recorded correlatively with the type of the designated test modules from the compatible information file330-1or the like and displays at least one of them as information indicating a performance board to be mounted on the test head30(S760).

FIG. 8shows one example of a hardware configuration of an information processing unit400that functions as a host computer composing the control unit40. The information processor400has a CPU peripheral sections including a CPU1000, a RAM1020and a graphic controller1075mutually connected by a host controller1082, an input/output section including a communication interface1030connected with the host controller1082via an input/output controller1084, a hard disk drive1040and a CD-ROM drive1060, and a legacy input/output section including a ROM1010, a flexible disk drive1050and an input/output chip1070connected with the input/output controller1084.

The host controller1082connects the RAM1020with the CPU1000and the graphic controller1075that access to the RAM1020at high transfer rate. The CPU1000is operative based on programs stored in the ROM1010and the RAM1020to control the respective sections. The graphic controller1075obtains image data generated by the CPU1000and the like on a frame buffer provided within the RAM1020to display on a display unit1080. Instead of that, the graphic controller1075may contain a frame buffer for storing image data generated by the CPU1000and the like.

The input/output controller1084connects the host controller1082with the communication interface1030, the hard disk drive1040and the CD-ROM drive1060which are input/output units of relatively high rate. The communication interface1030communicates with external units via a network. The hard disk drive1040stores programs and data used by the information processor400. The CD-ROM drive1060reads the programs or data from a CD-ROM1095and supplies it to the RAM1020or the hard disk drive1040.

The input/output controller1084is connected with the relatively low rate input/output units such as the ROM1010, the flexible disk drive1050and the input/output chip1070. The ROM1010stores a boot program executed by the CPU1000when the information processor400starts and programs dependent on the hardware of the information processor400. The flexible disk drive1050reads programs or data from the flexible disk1090and supplies it to the RAM1020or the hard disk drive1040via the input/output chip1070. The input/output chip1070connects the flexible disk1090with the various input/output units via parallel ports, serial ports, a keyboard port and a mouse port for example.

The information processor400is also provided with the diagnosing programs for diagnosing the test modules20-1through20-N by the control unit40. The diagnosing programs include the object diagnosing programs300-1and300-2, object diagnosing programs350-1and350-2and the discrimination program360. These programs are stored in the flexible disk1090, the CD-ROM1095or a recording medium such as an IC card to be provided by the user. The programs are read from the recording medium via the input/output chip1070and/or the input/output controller1084and are installed in the information processor400to be executed. Operations of the programs executed by the information processor400and the like are the same with those of the control unit40explained in connection withFIGS. 1 through 7, so that their explanation will be omitted here.

The programs described above may be stored in an external recording medium. As the recording medium, an optical recording medium such as DVD and PD, an magneto-optic recording medium such as MD, a taped medium and a semiconductor memory such as an IC card may be used beside the flexible disk1090and the CD-ROM1095. Still more, a storage unit such as a hard disk and a RAM provided in a server system connected with a dedicated communication network or Internet may be used as the recording medium and the programs may be supplied to the information processor400via the network.

The test apparatus10of the present embodiment records the information indicating the compatibility of the performance boards as files separately from the programs for conducting the processes for diagnosing the test modules as described above. It allows the burden of works to be reduced in changing setting of a newly developed diagnostic performance board so that it can be used for testing the existing test module.

Although the invention has been described by way of the exemplary embodiments, it should be understood that those skilled in the art might make many changes and substitutions without departing from the spirit and the scope of the invention. It is obvious from the definition of the appended claims that the embodiments with such modifications also belong to the technological scope of the invention.

As it is apparent from the explanation described above, the invention allows the setting information determining the diagnostic performance board that can be used for diagnosing the various test modules to be changed with less burden of works than before.