Abstract:
To facilitate the debugging an imaging device having a large number of pixels, a debugging apparatus has an image view display for qualitatively displaying pixel characteristics in a first range of the imaging device, and a code view displaying unit for quantitatively displaying numerical or symbolic data of individual pixels in a second range that is smaller than the first range and designated in an area displayed by the image view display.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to a debugging apparatus referred to as a viewer for analyzing and displaying measured data in a semiconductor test and a method of displaying test results. 
     2. Description of the Related Art 
     The resolution of imaging devices such as CCD chips is greatly increasing at present. The growing resolution of imaging devices requires imaging device tests to handle and process a very large amount of information. 
     Generally, when developing and testing image capturing devices or imaging devices such as CCDs, CMOS imagers, etc., it has been customary to capture an image of a test pattern with a device under test, output the captured image from the device, and inspect image data of the captured image processed for color filtering, smoothing, etc. to determine whether the device under the test is acceptable or not. To determine the acceptability of the tested device, the numerical values of the processed image data are inspected for all the pixels. In the inspection, it has been the general practice to employ an apparatus dedicated for testing imaging devices and automatically select those imaging devices whose values fall in a certain range according to a test program. 
     Recently, however, more and more imaging devices are tested using general-purpose semiconductor testing apparatus (so-called IC testers). When such a general-purpose IC tester is used to test an imaging device, no test pattern is employed, but the imaging device is placed on a test head connected to the IC tester, and irradiated with light to conduct the test. The operator operates a personal computer connected to the IC tester to analyze and display test results. 
     One conventional image inspection process is disclosed in Japanese laid-open patent publication No. 7-230546, for example. According to the disclosed image inspection process, an inspected image is displayed as a histogram and analyzed. 
     During a development stage for imaging devices, a test program often incorporates steps of displaying or printing processed results as binary, octal, or hexadecimal numerical values for the operator to confirm the processed results. Occasionally, the displayed and printed data may cover the values of all pixels of an imaging device being tested. In recent years, imaging devices with several million pixels have been developed and manufactured as such digital cameras are finding widespread use among consumers. 
     According to a conventional process of displaying test information, the characteristic value of each pixel is usually represented by an analog gradation, and those characteristic values of plural pixels are simultaneously displayed to generate an image of captured data on a display unit. Specific numerical values for pixels can be displayed by moving a cursor or the like, and can be retrieved when necessary. When such pixel information is displayed as areas with varying brightness and darkness (luminance information) on the display unit, the operator can recognize the general tendency of the pixel information. However, the operator finds it difficult to determine and compare specific values, such as specific numerical values for certain pixels and differences between specific numerical values for adjacent pixels, e.g., upper, lower, left, and right pixels, from only the displayed pixel information. 
     Even though the test program incorporates the steps of displaying or printing all numerical data of pixels of an imaging device for confirmation, it is tedious and time-consuming for the operator to confirm a certain area of pixels because the numerical data are too many if the number of the pixels in the imaging device is very large. If a range to be displayed is specified in the displaying step, then when such a range is changed, the displaying step incorporated in the test program has to be changed. For displaying numerical values, they should not only be dumped and displayed successively in the order of addresses, but also be dumped while relative positions of the addresses are being calculated taking the arrangement of the pixels in the imaging device into consideration, so that, for example, the numerical values of horizontally adjacent pixels can be compared with each other and also the numerical values of vertically and obliquely adjacent pixels can be compared with each other. If the number of vertically and horizontally arrayed pixels is very large, then special care must be taken to dump and display the numerical values of the pixels. A large expenditure of labor and time may be required to incorporate, in each test program, the displaying step taking into account the proper relationship between an area that needs to be displayed and the addresses of original data. 
     For observing the tendency among codes representing the characteristics of each dot in an imaging device under test, the codes may be displayed as characters or symbols directly over a map which is displayed on a display screen as representing the imaging device. However, since the codes displayed as characters or symbols take up relatively large areas on the display screen, the range that can be displayed by the codes at once is more limited than the range that can be displayed using dots, and hence all the data cannot be displayed together on the display screen. 
     Also a display unit is known for displaying a dot image of visual luminance information converted from original data or processed data. 
     OBJECTS AND SUMMARY OF THE INVENTION 
     It is therefore an object of the present invention to easily display a code view in a necessary area of an imaging device under test for the operator to be able to read the detailed and specific tendencies of characteristic changes among pixels in the necessary area of the imaging device. 
     Another object of the present invention is to relate an area to be displayed in the code view to an area to be displayed in an image view, so that all necessary data can be displayed using codes in the code view while at the same time they can also be displayed as an image in the image view. 
     According to an aspect of the present invention, there is provided an apparatus for debugging an imaging device, comprising an image view display or image view displaying means for qualitatively displaying pixel characteristics in a first range of the imaging device, and a code view display or code view displaying means for quantitatively displaying numerical or symbolic data of individual pixels in a second range that is smaller than the first range and designated within an area displayed by the image view display. 
     According to another aspect of the present invention, there is also provided a semiconductor testing apparatus for testing an imaging device, comprising a test head for reading an output signal from an imaging device under test; an IC tester which receives and processes output data from the test head; a memory for storing output data from the IC tester; a display unit for displaying data stored in the memory; an input device for receiving an operator&#39;s command; a central processing unit for processing data stored in the memory based on an operator&#39;s command received from the input device, which central processing unit connected to the display unit and the input device and the IC tester; an image view display for qualitatively displaying pixel characteristics in a first range of the imaging device on the display unit according to an operator&#39;s command; and a code view display for quantitatively displaying numerical or symbolic data of individual pixels in a second range that is smaller than the first range and designated within an area displayed by the image view display on the display unit, whereby data with respect to the pixel characteristics of the imaging device can be displayed by means of the image view display or the code view display or both. 
     According to still another aspect of the present invention, there is further provided a method of testing an imaging device, comprising the steps of retrieving output data from the imaging device as digital data, qualitatively displaying the digital data as an image view in a first range of the imaging device, receiving the designation of a second range that is smaller than the first range in the qualitative image view, and quantitatively displaying characteristics of pixels within the second range in the imaging device with numerical or symbolic codes. 
     The present invention also provides a computer-readable recording medium storing a program for carrying out the above method. Specifically, there is provided a computer-readable recording medium storing a program for enabling a computer to function as an image view display for qualitatively displaying pixel characteristics in a first range of an imaging device, and a code view display for quantitatively displaying numerical or symbolic data of individual pixels in a second range that is smaller than the first range and designated within an area displayed by the image view display. 
     According to the present invention, an operator can easily display pixel data in both the image view and the code view and also switch between the image view and the code view. While analyzing pixel data, the operator can make detailed judgements on pixel data for a certain area simply by designating that area for observation. Therefore, the operator finds it easy to debug the imaging device which has a relatively large number of pixels. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram of an overall arrangement of a test system including viewers according to the present invention; 
         FIG. 2  is a block diagram of a software architecture required to test an imaging device with an IC tester according to the present invention; 
         FIG. 3  is a flowchart of an operation sequence of a debugger for an imaging device; 
         FIG. 4  is a view showing an example of an image view and a code view which are displayed according to the present invention; and 
         FIG. 5  is a view showing another example of an image view and a code view which are displayed according to the present invention. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In the following description, the display of data relative to a pixel as an image will be referred to as an “image view”, and the display of numerical values representative of the characteristics of pixels as binary, octal, decimal, hexadecimal, or other numerical values or symbols will be referred to as a “code view”. When an area is designated in the image view, the code view can be generated for the designated area. Therefore, the code view can be generated easily from the image view. 
     The image view refers to a display process in which each or a few pixels of an imaging device are associated with respective pixels in a display unit, and the characteristic values of pixels of the imaging device are displayed as color changes or monochromatic shades on the display unit. Specifically, the characteristic values of pixels in the imaging device are numerically processed for increasing contrast, low-pass filtering, finding variations from their average, and singularity processing, and the processed characteristic values are presented in an easily recognizable fashion to the operator. Therefore, image views are suitable for the operator to view qualitative changes of the characteristics of the pixels in the overall imaging surface of the imaging device or in a wide range in the imaging surface of the imaging device. For example, image views are suitable for the operator to recognize a defective group of pixels or shading, i.e., gradual characteristic fluctuations, among widely spaced pixels, e.g., among upper and lower ends of the imaging surface of the imaging device. However, while the operator can understand a general tendency of the imaging device from the image view, the operator finds it difficult to clearly recognize how the characteristics of a certain pixel change from the characteristics of an adjacent pixel. Furthermore, using the image view, it is not possible for the operator to find out whether a defect appearing as a dot is related to a single pixel or a plurality of pixels. The code view is a display process which allows the operator to view quantitative data of the characteristic values of pixels. It should, however, be noted that the code view does not necessarily display data from an IC tester as they are. Rather, depending on the nature of test items or the type of information required by the operator, the numerical values of pixels for code views may be limited in the number of digits to be displayed, converted into symbols, displayed as binary, octal, decimal, hexadecimal, or other numerical values, or filtered. 
       FIG. 1  shows in a block form an overall arrangement of a test system having the viewer according to the present invention. As shown in  FIG. 1 , an imaging device  101 , which is a device under test (DUT), is electrically connected to a DUT board  103  placed in a test head  102 . Light is applied from a light source  104  to the imaging device  101  to cause the imaging device  101  to output electric signals under the control of an IC tester  105 . The operator controls the IC tester  105  from a user interface control processor (UIP)  107  via a LAN such as the Ethernet or a bus. Digital data output from the DUT board  103  is delivered via an interface board (not shown) in the test head  102  to an interface  106  in the IC tester  105 . The timing of the digital data is adjusted by a timing control unit (not shown) in the IC tester  105 , and then sent to an image processor  108 . The image processor  108  includes a keyboard  109  and a mouse  110  that are operated by the operator, and a display unit  111 . The image processor  108  can process and display received digital data. The image processor  108  comprises a personal computer or a computer such as a work station, for example. The image processor  108  is connected to the IC tester  105  and the UIP  107  by a LAN such as the Ethernet or a bus for exchanging test information and processed data therewith. 
       FIG. 2  shows in block form a software architecture required to test an imaging device with the IC tester  105 . A test program for generally managing and conducting a test in its entirety is run by the IC tester  105 . The test program controls an imaging device under test to output data which is read into the image processor  108  by an image processing program run by the image processor  108 . The image processor  108  has a debugger  120 , a sub-module process  121 , a data memory  122 , an image display viewer  123 , and a code display viewer  124 . The debugger  120 , the image display viewer  123 , and the code display viewer  124  are directly operated by an operator  125 . The data memory  122  has a storage capacity large enough to store a plurality of sets of data for all the pixels in the imaging device under test. One-dimensional data obtained in one measurement cycle by sweeping all the pixels is stored in the data memory  122 , and analyzed with respect to necessary test items. Analyzed data is stored in the data memory  122 , so that old and new analyzed data can be compared with each other. 
       FIG. 3  shows an operation sequence of the debugger  120 , which is executed by the image processor  108 . A process of debugging test results for an imaging device with the debugger  120  will be described below with reference to  FIG. 3 . First, the debugger  120  is activated in step  401 , and executes an image-processing program on the image processor  108  in step  402 . Output data produced from the imaging device under test according to the image processing program is retrieved into the data memory  122  in step  403 . The debugger  120  specifies which block of the data in the data memory  122  is to be displayed in step  404 , and then presents an image display in step  405 . The debugger  120  determines, from the image display, whether there is a range to be presented in the code display or not in step  406 . If there is a range to be presented for a code display, then the debugger  120  presents a code display in the range in step  407 . Thereafter, the debugger  120  determines whether there is another block for code display or not in step  408 . If there is another block for code display, then control returns to step  404  in which the debugger  120  specifies the block of the data in the data memory  122  is to be presented. If there is no range to be shown in the code display in step  406 , then control jumps to step  408  in which the debugger  120  determines whether there is another block for code display or not. If there is no other block for code display in step  408 , then the debugger  120  determines whether the data is to be further analyzed or not in step  409 . If the data is to be further analyzed, then control returns to step  402 . If the data is not to be further analyzed, then the operation sequence of the debugger  120  is ended. In this manner, the operator can debug the imaging device under test to see if each of the pixels of the imaging device has a problem or not, or if the controlling of the imaging device according to the test program run by the IC tester  105  is problematic or not, while switching between image and code displays on the display unit  111 . 
       FIG. 4  shows an example of presented display views produced by the viewer of the present invention. As shown in  FIG. 4 , output data from the imaging device under test is displayed as an image display view  200  on the display screen of the display unit  111 . The image display view  200  may comprise monochromatic or colored gradations. In the illustrated example, pattern data from the imaging device under test, which has a large number of pixels, is to be displayed. Because the pattern data to be displayed is very large, only a certain range of all the pixels of the imaging device is displayed in the image display view  200 . The image display view  200  includes a scroll bar  201 . When the operator operates the scroll bar  201 , the displayed pixel range can freely be moved in the image display view  200 . In this example, the operator designates an initial cursor (or pointer) position  202  in the image display view  200  as a starting point for a rectangular area, and then designates an ending point  203  for the rectangular range by dragging the mouse or operating a key on the keyboard  109 , for example. Thereafter, the operator operates the mouse or the keyboard to give a command to display a code display view  210 . When the operator specifies the cursor positions  202 ,  203 , a frame  204  of the rectangular area may be displayed to allow the operator to visually recognize the selected rectangular area. The image display view  200  also shows a black dot  206  as a defect in the rectangular area and other defects  207  of the imaging device under test. 
     The image display view  200  shows, in a lower right corner thereof, coordinates of the center of the rectangular area and a selected size of the rectangular area shown as the code display view  210 . The code display view  210  shows codes including numerical values and symbols. The image display view  200  and the code display view  210  may be presented in various patterns, e.g., in an overlapping manner or separately as individual windows, or may be selectively displayed one at a time. The code display view  210  may be presented in a size that is automatically variable depending on the number of pixels shown, or may be shown in a fixed size at all times. At any rate, once the image display view  200  and the code display view  210  are shown, their sizes and positions should preferably be made variable by the cursor, which can be moved by the mouse or the keyboard. The test program developer or the operator can thus confirm easily certain pixels and their numerical values while the pixels are being held in a mutual positional relationship. The image display view  200  and the code display view  210  enables the test program developer or the operator to verify whether the output data from the imaging device under test are properly processed, confirm what numerical value a certain white dot on the imaging device under test has as a code, and obtain materials for debugging decisions as to whether the imaging device is operating properly or the test program contains an error, through comparison between the numerical values of adjacent pixels. 
     The debugging apparatus according to the present invention is capable of efficiently debugging imaging devices under stricter inspection standards. The debugging apparatus also allows the operator to grasp macroscopic characteristic changes in entire displayed images, such as slow pixel characteristic fluctuations, of imaging devices having a large number of pixels, and also to reliably recognize changes that may often be overlooked when many pixels are shown in one image on the imaging devices, such as small changes found through comparison between the characteristic values of adjacent pixels or a defect of a single pixel or a plurality of pixels. 
     The cursor shown in the image display view  200  may be in the form of a criss-cross shape or an arrow shape. While a rectangular area can be specified in its entirety to be displayed as a code display view as described above with reference to  FIG. 4 , the code display view may be presented for a rectangular area having a predetermined size surrounding a central point that has been specified by the operator. 
     When the cursor in the image display view  200  is moved through the use of the mouse or the keyboard, the codes related to the pixels in the code display view  210  are accordingly updated on a real-time basis. Alternatively, the codes in the code display view  210  may not be updated until the cursor is moved to a point and the point is determined by clicking the mouse. 
     Furthermore, the window of the code display view  210  may be focused or made active and entry modes may be changed, and then X, Y coordinates of the cursor may be entered as numerals directly into entry display frames  211 ,  212  in an upper portion of the code display view  210 , or the cursor in the image display view  200  may be operated by the keyboard to move a central pixel in the image display view  200 , so that the range of pixels presented in the image display view  200  and the code display view  210  can be moved. A marker representing pixel data at the central position in the code display view area may be shown in the code display view  210 . For example, such a marker may comprise a numerical value or a background shown in a special color. 
       FIG. 5  shows another example of an image display view and a code display view which are shown according to the present invention. In the example shown in  FIG. 5 , both image and code views are shown, and as the cursor moves in the image display view, codes corresponding to pixels in an area to be shown in the code display view are newly calculated, and the code display view is updated into new codes. Specifically, as shown in  FIG. 5 , a displayed image  300  includes an image display view  301  and a code display view  302 , with a cursor displayed in the image display view  301 . When the cursor is moved in the image display view  301 , codes displayed in the code display view  302  are updated. 
     Codes are displayed in the code display view  302  immediately after effective data are displayed in the image display view  301 . Alternatively, codes may be displayed in the code display view  302  or displayed codes may be updated in the code display view  302  when the mouse or the keyboard is operated in a certain way after effective data are displayed in the image display view  301  and the cursor is moved. 
     When the center of the cursor is located at an upper, lower, left-hand, or right-hand end of the image display view  301 , e.g., at a left-hand end of the image display view  301  as shown in  FIG. 5 , and a rectangular area for the code display view  302 , e.g., a rectangular area having a starting point  220  and an ending point  221  as indicated by the dotted line in  FIG. 5 , has a portion projecting out of the image display view  301 , the code display view  302  may display non-code data with special characters, e.g., hyphens “- - -” in its region corresponding to the projecting portion of the rectangular area. The code display view  302  may also display such non-code data with characters other than hyphens, blanks, other symbols, or colors. The image processor  108  is implemented such that when the cursor (pointer) in the image display view  301  moves toward an upper, lower, left-hand, or right-hand end of the range to be tested of the imaging device and the range of codes to be shown in the code display view  302  is about to move beyond the end of the range to be tested of the imaging device, the cursor (pointer) is stopped against movement beyond the end of the range. However, the image processor  108  may alternatively be implemented such that when the range of codes to be shown in the code display view  302  is about to move beyond the end of the range to be tested of the imaging device, the cursor (pointer) may not be limited in its movement, but non-code data may be shown in the code display view  302  in response to the movement of the cursor (pointer). 
     The entire disclosure of Japanese Patent Application No. 184837/1999 filed on Jun. 30, 1999 including specification, claims, drawings, and summary are incorporated herein by reference in its entirety.