# Patent

## Title
Selective test pattern processor

## Abstract

A method, system, and computer program product to test a semiconductor device are described. The system includes an input interface to receive a set of test patterns to test the semiconductor device and a user selection corresponding to a subset of the set of test patterns. The system also includes a processor to process the subset of the set of test patterns to output test data to the semiconductor device.

## Background
DOMESTIC BENEFIT/NATIONAL STAGE INFORMATION
This application is a continuation of U.S. application Ser. No. 14/055,952 filed Oct. 17, 2013, the disclosure of which is incorporated by reference herein in its entirety.


BACKGROUND
The present invention relates to testing of a semiconductor device, and more specifically, to automated selective testing of a semiconductor device.
When a semiconductor design such as for a wafer, module, application specific integrated circuit (ASIC), or very large scale integrated circuit (VLSI) is tested, the testing involves a set of commercially available test patterns specific to the product under test. The commercially available test pattern generator output is made platform specific by an on-site test pattern processor that may support several test system platforms, for example. While the test pattern generator provides an efficient source for comprehensive testing of the product, the processing of all the test patterns can become time-consuming. At various stages of development, quick feedback from testing is important to determine, for example, new patterns that must be tested to isolate any issues. Thus the time associated with the test pattern processor processing all the test patterns may present issues.
SUMMARY
According to an embodiment of the invention, a system to test a semiconductor device includes an input interface configured to receive a set of test patterns to test the semiconductor device and a user selection corresponding to a subset of the set of test patterns; and a processor configured to process the subset of the set of test patterns to output test data to the semiconductor device.
According to another embodiment of the invention, a computer program product for testing a semiconductor device comprises a computer readable storage medium having program code embodied therewith, the program code being readable and executable by a processor to perform a method. The method includes receiving a set of test patterns to test the semiconductor device; receiving a user selection corresponding to a subset of the set of test patterns; cataloging a content of pattern files associated with the subset of the set of test patterns to generate a catalog; and processing the catalog to output test data to the semiconductor device.
Additional features and advantages are realized through the techniques of the present invention. Other embodiments and aspects of the invention are described in detail herein and are considered a part of the claimed invention. For a better understanding of the invention with the advantages and the features, refer to the description and to the drawings.



BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS
The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The forgoing and other features, and advantages of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which:
FIG. 1 is a process flow of a method of generating tests for a device under test according to embodiments of the invention;
FIG. 2 is a block diagram of a pattern processor according to an embodiment of the invention; and
FIG. 3 is a process flow of an exemplary test mode by the pattern processor according to an embodiment of the invention.



DETAILED DESCRIPTION
As noted above, the processing of all the test patterns provided by a commercially available test pattern generator can be time consuming and inefficient. Test patterns may be used in many sectors of a product's final test including, for example, power-on, engineering product bring-up, design verification, test coverage, yield analysis, characterization, diagnosis, burn-in, and manufacturing final test. During each of the stages, turn around time (TAT) of the testing plays a major role in determining feasibility, capability, manufacturability, and functionality of a design. In fact, the time and data volume associated with the processing can be one of the most critical items affecting the usefulness of testing designs and test patterns. Embodiments of the system and method described herein facilitate processing of a subset of the test patterns. Embodiments of the invention also facilitate selection of American Standard Code for Information Interchange (ASCII) rather than binary test pattern files.
FIG. 1 is a process flow of a method of generating tests for a device under test according to embodiments of the invention. At block 101, a user testing the device under test (DUT) may submit a selection of an initial test mode 130. A test mode 130 defines a subset of test patterns for processing by a pattern processor 110. There may be information embedded in the selected initial test mode 130 that specifies an expanded subset of test patterns. In alternate embodiments, the user specifies a test mode 130 defining a subset of test patterns in ASCII or binary pattern files. The user may also elect to process only newly released test patterns. At 102, the test pattern generator 120 provides all the test patterns to the pattern processor 110. At 103, the pattern processor 110 processes only the subset of test patterns that are specified by the user (e.g., based on selected test mode 130). Processing by the pattern processor 110 at 103 includes the pattern processor 110 cataloging only the subset of test patterns that are based on the user selection of test mode. This decreased cataloging (as compared to cataloging the full set of test patterns) holds true for embodiments that include user selection of a test mode 130 or test patterns in ASCII as well as binary format. Cataloging includes listing the contents of the pattern files that are part of the selection. In the case of an ASCII format selection by the user, the pattern processor 110 may directly process ASCII test patterns provided by the test pattern generator 120.
FIG. 2 is a block diagram of a pattern processor 110 according to an embodiment of the invention. The pattern processor 110 includes one or more processors 112, one or more memory devices 115, an input interface 117, and an output interface 119. The pattern processor 110 receives input from the test pattern generator 120 (complete set of all test patterns) and the user (e.g., test mode 130 selection) through the input interface 117. The one or more processors 112 use instructions stored in the one or more memory devices 115 to catalog only the selected test pattern files and process the test patterns of the selected test patterns to generate the output for the DUT. This output is specific to the platform of the DUT. The memory device 115 stores instructions that facilitate the association between a user selected test mode 130 and a subset of the test patterns from the test pattern generator 120. For example, the correspondence between a user-identified test mode 130 and a subset of test patterns may be stored in the memory device 115 in the form of a look up table or in another format. Test modes 130 may be added or modified as needed in the pattern processor 110. A number of test modes 130 may be selected in turn to complete a full test at a particular stage for the DUT. The catalog generated by the processor 112 may be stored in the memory device 115, as well.
FIG. 3 is a process flow of an exemplary test mode 130 by the pattern processor 110 according to an embodiment of the invention. At block 310, the input interface 117 of the pattern processor 110 receives the full set of patterns from the pattern generator 120. The input interface 117 also receives the user selected test mode 130 as the logic test mode. As noted above, the user selection of the test mode 130 may be in binary or ASCII format. Other exemplary test modes 130 include the array test mode or the selection of one or more chips, for example. Each test mode 130 may have some number of test patterns associated with it (e.g., 10 patterns). The test mode 130 puts the DUT in a particular state to test the portion of the DUT identified by the test mode 130. That is, for example, the logic test mode puts the DUT in a state in which the logic of the DUT may be tested by the test platform. At block 320, the processor 112 of the pattern processor 110, in conjunction with the memory device 115, determines the subset of test patterns (among the full set of tests patterns received from the test pattern generator 120) corresponding with the logic test mode selected by the user. The processor 112 then catalogues and processes only the subset of test patterns. At block 330, the output interface 119 of the pattern processor 110 outputs, to the DUT, platform-specific test patterns that test the logic (the selected test mode 130).
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a”, “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one more other features, integers, steps, operations, element components, and/or groups thereof.
The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated
The flow diagrams depicted herein are just examples. There may be many variations to this diagram or the steps (or operations) described therein without departing from the spirit of the invention. For instance, the steps may be performed in a differing order or steps may be added, deleted or modified. All of these variations are considered a part of the claimed invention.
While the preferred embodiment to the invention had been described, it will be understood that those skilled in the art, both now and in the future, may make various improvements and enhancements which fall within the scope of the claims which follow. These claims should be construed to maintain the proper protection for the invention first described.

## Claims

1. A system to test a semiconductor device, comprising:
an input interface configured to receive a set of test patterns to test the semiconductor device and a user selection corresponding to a subset of the set of test patterns; and
a processor configured to process the subset of the set of test patterns to output test data to the semiconductor device, wherein the processor processing the subset of the set of test patterns includes cataloging a content of pattern files corresponding with the subset of the set of test patterns by listing the content of pattern files corresponding with the subset of the set of test patterns to generate a catalog.

2. The system according to claim 1, further comprising a memory device storing a correspondence between a plurality of test modes and respective subsets of the set of test patterns, wherein the user selection is of a test mode among the plurality of test modes, and the processor associates the test mode with the subset of the set of test patterns based on the correspondence stored in the memory device.

3. The system according to claim 1, wherein the user selection of the subset of the set of test patterns corresponds with test pattern files in American Standard Code for Information Interchange (ASCII) format.

4. The system according to claim 1, wherein the user selection of the subset of the set of test patterns corresponds with pattern files in binary format.

5. The system according to claim 1, wherein the catalog is in American Standard Code for Information Interchange (ASCII) format or binary format based on the user selection.

6. The system according to claim 1, wherein the processor processing the subset of the set of test patterns includes outputting the test data as being specific to a platform of the semiconductor device.

7. A non-transitory computer program product for testing a semiconductor device, the non-transitory computer program product comprising a non-transitory computer readable storage medium having program code embodied therewith, the program code being readable and executable by a processor to perform a method comprising:
receiving a set of test patterns to test the semiconductor device;
receiving a user selection corresponding to a subset of the set of test patterns;
cataloging a content of pattern files associated with the subset of the set of test patterns by listing the content of pattern files corresponding with the subset of the set of test patterns to generate a catalog; and
processing the catalog to output test data to the semiconductor device.

8. The non-transitory computer program product according to claim 7, further comprising receiving the user selection of a test mode and identifying the subset of the set of test patterns based on a pre-defined correspondence.

9. The non-transitory computer program product according to claim 7, wherein the user selection corresponds with the subset of the set of test patterns in American Standard Code for Information Interchange (ASCII) format and the cataloging is of the pattern files in the ASCII format.

10. The non-transitory computer program product according to claim 7, wherein the user selection corresponds with the subset of the set of test patterns in binary format and the cataloging is of the pattern files in the binary format.

11. The non-transitory computer program product according to claim 7, wherein the processing generates the test data to be platform specific based on the semiconductor device.