Abstract:
Embodiments generally relate to integrated circuit devices having through silicon vias (TSVs). In one embodiment, an integrated circuit (IC) device includes a field of TSVs and an address decoder that selectably couples at least one of the TSVs to at least one of a test input and a test evaluation circuit. In another embodiment, a method includes selecting one or more TSVs from a field of TSVs in at least one IC device, and coupling each selected TS V to at least one of a test input and a test evaluation circuit.

Description:
[0001]    This application claims priority to U.S. provisional application Ser. No. 61/529,982, entitled “TESTING THROUGH-SILICON-VIAS”, filed Sep. 1, 2011 and U.S. provisional application Ser. No. 61/635,250, entitled “STACKED MEMORY DEVICE WITH REDUNDANT RESOURCES TO CORRECT DEFECTS”, filed Apr. 18, 2012 which are hereby incorporated by reference as if set forth in full in the application for all purposes. 
     
    
     BACKGROUND 
       [0002]    A through-silicon-via (TSV) is a conductive via that provides electrical continuity through a silicon wafer or die. TSVs enable two or more integrated circuit (IC) devices to be stacked vertically into a three-dimensional (3D) chip stack. For example, the TSVs of an IC device at the top of a stack connect to the TSVs of an IC device below in the stack. By electrically connecting the IC devices in a stack, the TSVs enable the IC devices in the stack to function as a single device. TSV technology enables a 3D chip stack to have increased connectivity, bandwidth, and functionality, yet occupy a small footprint area. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0003]    The various embodiments disclosed herein are illustrated by way of example and not by way of limitation in the figures of the accompanying drawings, in which like reference numerals refer to similar elements. 
           [0004]      FIG. 1  illustrates a block diagram of an example environment, which may be used to implement the embodiments described herein. 
           [0005]      FIG. 2  illustrates a schematic diagram of an example test circuit, which may be used to implement the embodiments described herein. 
           [0006]      FIG. 3  illustrates an example simplified flow diagram for testing TSVs, according to one embodiment. 
           [0007]      FIG. 4  illustrates a schematic diagram of the example test circuit of  FIG. 2 , where a TSV is coupled to a test input and a test evaluation circuit, according to one embodiment. 
           [0008]      FIG. 5  illustrates a cross-section view of a stack of IC devices coupled by a chain of TSVs, where the TSVs are coupled to a test node, according to one embodiment. 
           [0009]      FIG. 6  illustrates an example simplified flow diagram for testing TSV chains, according to one embodiment. 
           [0010]      FIG. 7  illustrates a schematic diagram of an example test circuit, where a TSV of a top-layer IC device in the stack of  FIG. 5  is coupled to a test input, according to one embodiment. 
           [0011]      FIG. 8  illustrates a schematic diagram of an example test circuit, where a TSV of a middle-layer IC device in the stack of  FIG. 5  is not coupled to a test input or test evaluation circuit, according to one embodiment. 
           [0012]      FIG. 9  illustrates a schematic diagram of an example test circuit, where a TSV of a bottom-layer IC device in the stack of  FIG. 5  is coupled to a test evaluation circuit, according to one embodiment. 
       
    
    
     DETAILED DESCRIPTION 
       [0013]    In various embodiments disclosed herein, a test circuit enables integrated circuit device (IC) tests to be performed on one or more TSVs in a field of TSVs of the integrated circuit device, where each TSV is individually addressable for testing. The test circuit includes an address decoder that selectably couples one or more TSVs to a test input and/or test evaluation circuit, all of which may be integrated into the IC device, such as a memory device. Embodiments enable testing that extends beyond TSVs of a single IC device. For example, embodiments may also test one or more chains of TSVs in a stack of IC devices, such as a memory stack. The test circuit may share resources (e.g., address decoder, external test equipment, test flows, etc.) with resources used for other tests (e.g., testing of memory arrays). Accordingly, embodiments disclosed herein provide accurate and efficient testing of TSVs with little overhead. Furthermore, in some embodiments, the techniques and methods described herein may be used to in conjunction with Wide IO memories, Hybrid Memory Cube memories, 3D stacked memories, or other related devices. 
         [0014]      FIG. 1  illustrates a block diagram of an example environment  100 , which may be used to implement the embodiments described herein. As shown, a processor  102  is coupled to a memory controller  104 , which is coupled to a memory device  106 . Memory device  106  includes an address decoder  108 , a field of TSVs  110 , a test input  112 , and a test evaluation circuit  114 . As described in more detail below, in one embodiment, address decoder  108  selectably couples one or more of the TSVs to test input  112  and/or test evaluation circuit  114  for testing. In various embodiments, a field of TSVs may include up to thousands of TSVs. In some embodiments, environment  100  may not have all of the elements listed and/or may have other elements instead of, or in addition to, those listed above. For example,  FIG. 2  shows a more detailed embodiment, which may be used to implement embodiments described herein. 
         [0015]      FIG. 2  illustrates a schematic diagram of an example test circuit  200 , according to one embodiment.  FIG. 2  shows a field of TSVs (an example TSV  202  is numbered), a column address decoder  206 , a row address decoder  208 , a test input  212 , and a test evaluation circuit  214 . In one embodiment, test circuit  200  may include column address decoder  206 , row address decoder  208 , test input  212 , test evaluation circuit  214 , and conductive lines and switches (example switches  216  and  218  are numbered), independent of any other test circuitry. The conductive lines and switches are operable to address each of the TSVs, and operable to couple each of the TSVs to test input  212  and to test evaluation circuit  214 . The switches may be implemented with any suitable logic gates (e.g., AND gates, NAND gates, etc.) or combination thereof. In example embodiments described herein, test circuit  200  is integrated into an IC device, which for example, may be any type of volatile or non-volatile IC memory device. For example, test circuit  200  may be integrated into a memory device such as a dynamic random-access memory (DRAM) device, or a controller device. 
         [0016]    In one embodiment, test input  212  may be coupled to external test equipment, which may provide a test stimulus (e.g., a charge, an alternating current (A/C), a pulsed bias, test data, or other information, etc.) to test input  212 ; and test evaluation circuit  214  may also be coupled to external test equipment, which may receive the test stimulus from test evaluation circuit  214 . The external test equipment coupled to test input  212  and test evaluation circuit  214  may be the same test equipment unit or may be different test equipment units. 
         [0017]    In one embodiment, column address decoder  206  and row address decoder  208  may be shared resources within an IC device. For example, column address decoder  206  and row address decoder  208  may also be used to address memory cells in a memory device. This contributes to reduction in overhead (e.g., die space, etc.). In an alternative embodiment, column address decoder  206  and row address decoder  208  may be dedicated to addressing TSVs in a field of TSVs of an IC device. In yet another alternative embodiment, the decoders for some of the bits (e.g., the most significant bits) may be shared while the decoder for the remaining bits (e.g., the least significant bits) may be dedicated to the TSV field. Operation of test circuit  200  is described in more detail below in connection with  FIGS. 3 and 4 . 
         [0018]      FIG. 3  illustrates an example simplified flow diagram for testing TSVs, according to one embodiment.  FIG. 4  illustrates a schematic diagram of the example test circuit  200  of  FIG. 2 , where TSV  202  is coupled to test input  212  and test evaluation circuit  214 , according to one embodiment. Referring to both  FIGS. 3 and 4 , a process for testing TSVs is initiated in block  302 , where a test application selects one or more TSVs (e.g., TSV  202 ) from a field of TSVs. 
         [0019]    In one embodiment, the selection may be part of a testing algorithm that selects one or more TSVs for testing. For ease of illustration, one selected TSV  202  from a field of TSVs in one IC is shown. In other embodiments, multiple TSVs from the field of TSVs may be selected for testing. In one embodiment, the address used for the selection may be an address used in an extended address mode for redundancy testing, or may be an address used in any another suitable extended address mode. 
         [0020]    In block  304 , the test application couples each selected TSV to test input  212  and/or test evaluation circuit  214 . As shown in  FIG. 4 , for example, column address decoder  206  and row address decoder  208  couple TSV  202  to test input  212  and test evaluation circuit  214  utilizing switches  216  and  218 . These connections are highlighted with bold lines. As  FIG. 4  shows, column address decoder  206  and row address decoder  208  couple TSV  202  to test input  212  and test evaluation circuit  214  by closing switches  216  and  218 . 
         [0021]    In block  306 , the test application performs one or more tests on each selected TSV. In one embodiment, the one or more tests may be a part of any testing algorithm for testing TSVs. Such tests may be performed on the selected TSVs in serial or in parallel, depending on the specific implementation. As indicated above, test input  212  may couple to external test equipment, which may provide a test stimulus (e.g., a charge, an alternating current (A/C), a pulsed bias, capacitance, test data, or other information, etc.). In various embodiments, test input  212  receives the test stimulus; and test evaluation circuit  214  receives test stimulus via each selected TSV, after which any suitable test equipment evaluates the received test stimulus to determine the quality of each selected TSV. In one embodiment, if a given TSV is deemed to be substandard during the testing (e.g., TSV is non-functional, TSV has excessive leakage, etc.), the test application or other application may repair the IC device by programming around the substandard TSV, if possible. Such repairs are possible when the field of TSVs includes redundant TSVs, and the substandard TSVs are indeed redundant. 
         [0022]    In the embodiments described herein, TSVs are addressed by address decoders similar to the manner in which memory cells are addressed in a memory device. As such, column address decoder  206  and row address decoder  208  may also be used to address memory cells in a memory device. Also, test flows of memory devices such as DRAM devices may also be used to test TSVs in the embodiments described herein. Because DRAM test flows are optimized for array testing, addressing a TSV field as an array enables efficient TSV testing with little overhead per TSV. 
         [0023]    The test application may perform a variety of tests on the selected TSVs to test the quality of the selected TSVs (e.g., tests to determine shorts or opens, leakage tests based on capacitance, tests using pulsed-signal propagation, data compression tests, differential comparisons among two or more test results, etc.). In one embodiment, these tests may be performed on the die before assembly. In one embodiment, TSV testing may occur when other pre-assembly tests of the IC device are performed (e.g., during the testing of memory cells of a memory device). 
         [0024]    In the embodiments described herein, because there is one test evaluation circuit per die, the test evaluation circuit may be large and complex, allowing for more sophisticated testing. Also, multiple connections may be activated simultaneously when a multi-bit data path is implemented instead of a one-bit path, thereby allowing parallel testing to be more compatible with other functional tests on the IC device. 
         [0025]    In one embodiment, the test application may be executed by any suitable processor such as processor  102  of  FIG. 1 , and the test application provides instructions that enable the processor to perform the functions described herein. Also, the test application may be stored on any suitable storage location or computer-readable storage medium (e.g., any storage associated with an IC device test system, analyzer, etc.). 
         [0026]      FIG. 5  illustrates a cross-section view of a stack  500  of IC devices  502 ,  504 ,  506 , and  508  coupled by a chain of TSVs  512 ,  514 ,  516 , and  518 , where the chain of TSVs  512 - 518  is coupled to an input node  520  via a switch  522 , to a test node  524  via a switch  526  and an output driver  528 , according to one embodiment. As  FIG. 5  shows, the chain of TSVs may be a vertical series of TSVs spanning multiple IC devices. In one embodiment, a TSV travels from the top side to the bottom side of the silicon die. In one embodiment, interposers or solder balls (an example solder ball  530  is numbered) may be coupled between TSVs in the TSV chain. In one embodiment, test node  520  may be coupled to a test evaluation circuit. While 4 IC devices are for shown for the purposes of illustration, in other embodiments there may be fewer IC devices (e.g., 2 or 3 IC devices) or more IC devices (e.g., 5 or more IC devices). 
         [0027]    In one embodiment, devices  502 - 508  may be any one or more types of IC devices, and may be homogeneous or heterogeneous devices. Also, devices  502 - 508  may be any type of volatile or non-volatile IC device. For example, devices  502 - 508  may be memory devices such as DRAM devices. 
         [0028]      FIG. 6  illustrates an example simplified flow diagram for testing TSV, according to one embodiment. Referring to both  FIGS. 5 and 6 , a process for testing TSV chains is initiated in block  602 , where a test application selects one or more TSV chains from a field of TSVs in a memory stack, such as the chain of TSVs  512 - 518 . In the embodiments described herein, a field of TSVs may include a single two-dimensional (2D) array of TSVs in a single IC device (as in the example above), or may include multiple arrays of TSVs in a 3D stack of IC devices (as in this example). 
         [0029]    Referring now to  FIGS. 6 and 7 , in block  604 , for each selected TSV chain, the test application couples the TSV at the top layer to a test input.  FIG. 7  illustrates a schematic diagram of an example test circuit  700 , where a TSV of a top-layer IC device in stack  500  of  FIG. 5  is coupled to a test input, according to one embodiment. 
         [0030]      FIG. 7  shows a field of TSVs (an example TSV  702  is numbered), a column address decoder  706 , a row address decoder  708 , a test input  712 , a test evaluation circuit  714 , and conductive lines and switches (example switches  716  and  718  are numbered). The conductive lines and switches are operable to address each of the TSVs, and operable to couple each of the TSVs to test input  712  and to test evaluation circuit  714 . As  FIG. 7  shows, column address decoder  706  and row address decoder  708  couple TSV  702  to test input  712  by closing switch  716 . This connection is highlighted with bold lines. 
         [0031]    In one embodiment, test input  712  may be coupled to external test equipment, which may provide a test stimulus (e.g., a charge, an alternating current (A/C), a pulsed bias, capacitance, test data, or other information, etc.) to test input  712 . In this example, TSV  702  at the top of the TSV chain passes the test stimulus from test input  712  to the TSV in the layer below (e.g., TSV  802  shown in  FIG. 8 ). 
         [0032]      FIG. 8  illustrates a schematic diagram of an example test circuit  800 , where a TSV of a middle-layer IC device in stack  500  of  FIG. 5  is not coupled to a test input or test evaluation circuit, according to one embodiment. Test circuit  800  may represent a test circuit of any middle-layer IC device in a stack (e.g., IC devices  504  and  506 ). 
         [0033]      FIG. 8  shows a field of TSVs (an example TSV  802  is numbered), a column address decoder  806 , a row address decoder  808 , a test input  812 , a test evaluation circuit  814 , and conductive lines and switches (example switches  816  and  818  are numbered). The conductive lines and switches are operable to address each of the TSVs, and operable to couple each of the TSVs to test input  812  and to test evaluation circuit  814 . As  FIG. 8  shows, however, column address decoder  206  and row address decoder  208  do not close switches  816  and  818  (or any other switches). As such, TSV  802  and the other TSVs are not coupled to test input  212  or to test evaluation circuit  214 . 
         [0034]    As  FIG. 8  shows, all of the switches, including switches  816  and  818 , are open. As a result, because TSV  802  is in the middle of the TSV chain, TSV  802  simply passes the test stimulus from the TSV in the layer above (e.g., TSV  702 ) to the TSV in the layer below (e.g., another middle-layer TSV in the chain, ultimately to TSV  902  shown in  FIG. 9 , etc.). 
         [0035]    Referring now to  FIGS. 6 and 9 , in block  606 , for each selected TSV chains, the test application couples the TSV at the bottom layer to a test evaluation circuit.  FIG. 9  illustrates a schematic diagram of an example test circuit  900 , where a TSV of a bottom-layer IC device in stack  500  of  FIG. 5  is coupled to a test evaluation circuit, according to one embodiment.  FIG. 9  shows a field of TSVs (an example TSV  902  is numbered), a column address decoder  906 , a row address decoder  908 , a test input  912 , a test evaluation circuit  914 , and conductive lines and switches (example switches  916  and  918  are numbered). The conductive lines and switches are operable to address each of the TSVs, and operable to couple each of the TSVs to test input  912  and to test evaluation circuit  914 . As  FIG. 9  shows, column address decoder  906  and row address decoder  908  couple TSV  902  to test evaluation circuit  214  by closing switch  918 . This connection is highlighted with bold lines. 
         [0036]    In one embodiment, the TSV (e.g., TSV  902 ) at the bottom of the TSV chain passes the test stimulus from the TSV in the layer above (e.g., TSV  802 ) to test evaluation circuit  914 . In one embodiment, test evaluation circuit  914  may be coupled to external test equipment (e.g., via a physical layer (PHY)), which may receive the test stimulus from test evaluation circuit  914 . The external test equipment coupled to test evaluation circuit  914  may be the same unit or a different unit from the test equipment coupled to test input  712 . 
         [0037]    Referring still to  FIG. 6 , in block  608 , the test application performs one or more tests on each selected TSV chain. The test application may perform a variety of tests on the selected TSV chains to test the quality of the selected TSV chains (e.g., tests to determine shorts or opens, leakage test based on capacitance, tests using pulsed-signal propagation, data compression tests, differential comparisons among two or more test results, etc.). In one embodiment, these tests are performed on the stack of IC devices after assembly. In one embodiment, the testing of TSV chains may occur when other post-assembly tests of the IC device are performed (e.g., during testing of memory cells of a memory device). In various embodiments, test input  712  receives the test stimulus; and test evaluation circuit  914  receives the test stimulus via each selected TSV chain, after which any suitable test equipment evaluates the received test stimulus to determine the quality of each selected TSV chain. In one embodiment, if a given TSV chain is deemed to be substandard during the testing (e.g., fails a continuity test, fails a leakage test, etc.), the test application or other application may repair the IC device stack by programming around the substandard TSV chain, if possible. Such repairs are possible when the field of TSVs includes redundant TSV chains, and the substandard TSV chains are indeed redundant. 
         [0038]    For ease of illustration, some example embodiments disclosed herein are described in the context of a top-layer TSV of a TSV chain, where the top-layer TSV is coupled to a test input, and a bottom-layer TSV of the TSV chain, where the bottom-layer TSV is coupled to a test evaluation circuit. Some embodiments disclosed herein may apply other testing configurations. For example, in some embodiments, address decoders may couple a bottom-layer TSV of a TSV chain to a test input and couple a top-layer TSV of the TSV chain to a test evaluation circuit. In some embodiments, the test application may select different TSV chains of different lengths (e.g., different numbers of TSVs in a chain). For example, in some embodiments, in a given TSV chain, the particular TSV that is coupled to a test input, and the particular TSV that is coupled to a test evaluation circuit may vary, depending on the specific implementation. For example, in one embodiment, address decoders may couple a middle-layer TSV in a TSV chain to a test input, and couple either a higher-level TSV and/or a lower-level TSV to a test evaluation circuit. In an alternative embodiment, address decoders may couple a middle-layer TSV in a TSV chain to a test evaluation circuit, and couple either a higher-level TSV and/or a lower-level TSV to a test input. 
         [0039]    In the embodiments described herein, test circuits  700 ,  800 , and  900  may include: respective column address decoders  706 ,  806 , and  906 ; row address decoders  708 ,  808 , and  908 ; test inputs  712 ,  812 , and  912 ; test evaluation circuits  714 ,  814 , and  914 ; and address lines and switches operable to couple each of the TSVs to appropriate test inputs and test evaluation circuits. 
         [0040]    It should be noted that the various circuits disclosed herein may be described using computer aided design tools and expressed (or represented), as data and/or instructions embodied in various computer-readable media, in terms of their behavioral, register transfer, logic component, transistor, layout geometries, and/or other characteristics. Formats of files and other objects in which such circuit expressions may be implemented include, but are not limited to, formats supporting behavioral languages such as C, Verilog, and very-high-speed IC hardware description language (VHDL), formats supporting register level description languages like register transfer language (RTL), and formats supporting geometry description languages such as graphic database system II stream format (GDSII), GDS III, GDSIV, Caltech intermediate form (CIF), manufacturing electron-beam exposure system (MEBES) and any other suitable formats and languages. Computer-readable media in which such formatted data and/or instructions may be embodied include, but are not limited to, computer storage media in various forms (e.g., optical, magnetic or semiconductor storage media, whether independently distributed in that manner, or stored “in situ” in an operating system). 
         [0041]    When received within a computer system via one or more computer-readable media, such data and/or instruction-based expressions of the above described circuits may be processed by a processing entity (e.g., one or more processors) within the computer system in conjunction with execution of one or more other computer programs including, without limitation, net-list generation programs, place and route programs and the like, to generate a representation or image of a physical manifestation of such circuits. Such representation or image may thereafter be used in device fabrication, for example, by enabling generation of one or more masks that are used to form various components of the circuits in a device fabrication process. 
         [0042]    In the foregoing description and in the accompanying drawings, specific terminology and drawing symbols have been set forth to provide a thorough understanding of the disclosed embodiments. In some instances, the terminology and symbols may imply specific details that are not required to practice those embodiments. For example, any of the specific numbers of bits, signal path widths, signaling or operating frequencies, component circuits or devices and the like may be different from those described above in alternative embodiments. Additionally, links or other interconnection between integrated circuit devices or internal circuit elements or blocks may be shown as buses or as single signal lines. Each of the buses may alternatively be a single signal line, and each of the single signal lines may alternatively be buses. Signals and signaling links, however shown or described, may be single-ended or differential. A signal driving circuit is said to “output” a signal to a signal receiving circuit when the signal driving circuit asserts (or deasserts, if explicitly stated or indicated by context) the signal on a signal line coupled between the signal driving and signal receiving circuits. An address or other value provided “in” or “with” a command may be transmitted concurrently (i.e., at least partly overlapping in time) with a group of bits containing a command code or identifier, or prepended, appended or otherwise transmitted in association with the command code or identifier. The term “coupled” is used herein to express a direct connection as well as a connection through one or more intervening circuits or structures. Integrated circuit device “programming” may include, for example and without limitation, loading a control value into a register or other storage circuit within the integrated circuit device in response to a host instruction (and thus controlling an operational aspect of the device and/or establishing a device configuration) or through a one-time programming operation (e.g., blowing fuses within a configuration circuit during device production), and/or connecting one or more selected pins or other contact structures of the device to reference voltage lines (also referred to as strapping) to establish a particular device configuration or operation aspect of the device. The terms “exemplary” and “embodiment” are used to express an example, not a preference or requirement. 
         [0043]    Various modifications and changes may be made to the embodiments presented herein without departing from the broader spirit and scope of the disclosure. For example, features or aspects of any of the embodiments may be applied, at least where practicable, in combination with any other of the embodiments or in place of counterpart features or aspects thereof. Accordingly, the specification and drawings are to be regarded in an illustrative rather than a restrictive sense.