Field of the Invention
The invention generally relates to electronics. In particular, the invention relates to memory devices.
Description of the Related Art
The performance of an integrated circuit is subject to many variables, including manufacturing process variability. To compensate for the manufacturing process variability, integrated circuits are often “trimmed” during manufacture. It would be desirable to improve the trim process to improve yield.
These drawings and the associated description herein are provided to illustrate specific embodiments of the invention and are not intended to be limiting.
Although particular embodiments are described herein, other embodiments of the invention, including embodiments that do not provide all of the benefits and features set forth herein, will be apparent to those of ordinary skill in the art.
Conventionally, the memory die 102, 104, 106, 108 are tested individually and if trimmed, trimmed before packaging in a 3D integrated circuit. However, due to the stacking, conditions during manufacturing and test can be quite different from conditions encountered during use in the field. For example, there can be more parasitic capacitance on contacts connected to the TSVs due to parasitic capacitance from other die. In another example, the number of other memory die to be arranged in a stack can be an unknown. In another example, the position of a memory die within a stack can be unknown. This mismatch between test and operation can lead to failures during a system-level test or to failures in the field. Such failures can include, for example, a DRAM not operating reliably at its rated specifications. Disclosed herein are apparatuses and methods to perform post package trim of memory, which advantageously permits the memory die to be trimmed in a configuration closer to or the same as that used in the field. This can advantageously permit a system on a chip to operate the DRAM at its full speed, rather than at reduced speeds or with additional latencies.
The test equipment 202 can execute memory tests by, for example, providing test patterns to the DRAM stack 212 and monitoring for errors, by uploading executable code for a built in self-test, monitoring signals on busses, and the like. Memory testing techniques are well known to those of ordinary skill in the art.
The portion 300 of the memory device has two different test modes for trim. A first test mode is used when the memory device is being tested by itself during manufacturing test. The first test mode can be optional when a facility for post package trim is present. A second test mode corresponds to a post package trim (PPT) test mode, which can be used after the memory device has been stacked with other memory devices and/or packaged in a system on a chip.
In the illustrated example, the circuit to be trimmed 312 corresponds to a delay. Such a delay can be used to determine the setup and hold time for a latch, such as an address latch or a data latch. There can be relatively many setup and hold times to be trimmed. Other items for the other circuits to be trimmed 316 can be trimmed, such as, but not limited to, voltages, the number of clock cycles in a latency, a frequency of a clock circuit, an output driver drive strength, and the like. The illustrated circuit to be trimmed 312 includes delay circuits 320, 322, and multiplexers 324, 326. The delay circuits 320, 322 can be implemented by, for example, gate delays. The multiplexers 324, 326 can select a path that includes zero, one, or two delays to adjust the delay through the circuit to be trimmed 312.
In one embodiment, the commands for the first test mode are provided to the memory device by probing on contacts. Since the first test mode can be performed before packaging, test equipment utilizing the first test mode can utilize contacts that are not available post packaging. Contacts that are also available post packaging can alternatively be used. The test mode control circuit 302 determines whether or not to enter the first test mode. The first test mode is implemented by the test mode control circuit 302, the test mode latches 304, the fuse logic/serializer 306, the fuses 308, and the decoder 310. In the first test mode, the test mode control circuit 302 can place data at appropriate addresses for the test mode latches 304 to test a trim setting. The outputs of the test mode latches 304 are provided as inputs to a decoder 310. The decoder 310 can interpret the setting from the test mode latches 304 to control the multiplexers 324, 326 of the circuit to be trimmed 312 or other trim settings for the other circuits to be trimmed 316.
After an appropriate setting is found, the setting can be stored by programming one or more fuses of the fuses 308. In one embodiment, the fuse logic/serializer 306 can program or “blow” fuses in a sequential manner as described in commonly-owned U.S. patent application Ser. No. 14/077,630, filed Nov. 12, 2013, titled “Post Package Repair of Memory Devices”, the disclosure of which is incorporated by reference herein. The blowing of fuses in a sequential manner can advantageously reduce the peak current used to blow fuses. An oscillator signal can be used to step through the sequential blowing of the fuses. The memory device can then retrieve the stored settings from the fuses 308 for configuration during normal operation. If no trimming is indicated during the first test mode for a particular circuit, the corresponding fuses 308 do not need to be blown, and the decoder 310 can interpret the absence of blown fuses to use a default setting. During the first test mode and during normal operation without post package trimming, the decoder 310 uses the upper path from the test mode latches 304. As will be explained later, if the trim setting has been altered by PPT, the decoder 310 can select an alternate setting from the PPT fuses 314. It should be noted that as used herein, the term “fuses” as used in the fuses 308 and the PPT fuses 314 shall be construed to cover both fuses and antifuses. Fuses start as shorts and can be opened. Antifuses start as open circuits and can be shorted by, for example, causing dielectric breakdown in a relatively thin oxide layer between two nodes with a pulse of relatively high voltage. Other forms of non-volatile storage can alternatively be used to store trim settings.
The second test mode or PPT test mode is implemented by the fuse logic/serializer 306, the fuses 308, the test mode latches 304, and the decoder 310. In the illustrated embodiment, the input/output (I/O) that is already present on the memory device for addresses/data is used to communicate for the PPT test mode. In one embodiment, the memory device that is being trimmed includes redundant columns and/or rows for repair of one or more memory arrays and a facility for post package repair (PPR), and the protocols and interface circuits used for communicating with the memory device for PPT and PPR can be the same.
Based on commands received over the I/O, the fuse logic/serializer 306 can program new or alternative trim settings into the PPT fuses 314 that can override the original trim settings, if present, stored in the fuses 308 of the first test mode. The PPT fuse data is retrieved by the decoder 310 to determine whether or not a PPT setting should be used, and to retrieve the value of the PPT setting. If a PPT setting is present, the decoder 310 applies the PPT setting to the circuit to be trimmed 312. Otherwise, the decoder 310 can use a setting from the first test mode.
The illustrated portion 400 includes a test mode control circuit 302, test mode latches 304, a fuse logic/serializer 306, fuses 308, a decoder 310, a circuit to be trimmed 312, post package trim (PPT) fuses 314, and other circuits to be trimmed 316. The portion 400 further includes SPPT latches 402 and an SPPT mode multiplexer (SPPT mode mux) 404 for provision of an SPPT mode. To avoid repetition of description, components in
The SPPT latches 402 can correspond to data latches, registers, flip flops, SRAM cells, or the like. The SPPT latches 402 can be used to store temporary trim settings during the SPPT mode. During the SPPT mode, the fuse logic/serializer 306 can communicate with the test equipment via the memory device's I/O. Trim settings that work well can then be programmed to the PPT fuses 314. When trim settings do not work well, different trim settings can be tried. Advantageously, the SPPT latches 402 can be overwritten repeatedly so that various trim settings can be tried. An activate signal can control the latching of the SPPT latches 402.
The SPPT mode mux 404 has two sets of inputs. A first set of inputs is coupled to the PPT fuses 314, and a second set of inputs is coupled to the SPPT latches 402. When in the SPPT mode, the SPPT mode mux 404 selects the second set of inputs (SPPT fuses) as an output. Otherwise, the SPPT mode mux 404 can select the first set of inputs (PPT fuses) as an output. The output of the SPPT mode mux 404 is coupled to the decoder 310, which can trim the circuit to be trimmed 312 in the manner prescribed by the data in the SPPT latches 402 or the PPT fuses 314. It will be understood that there can be many sets of SPPT latches 402 and SPPT mode muxes 404 in a memory device to provide soft trimming of multiple parameters.
The process begins in a state 502 to enter the post package trim (PPT). For example, test equipment can communicate with the memory device's I/O directly or can communicate indirectly via, for example, a CPU of a system on a chip in which the memory device resides. The process advances from the state 502 to a state 504.
In the state 504, the process receives an indication of the parameter to be trimmed. For example, the indication can correspond to an address, and the address can be mapped to a parameter, such as a trim for a setup and hold of a particular latch. The process advances from the state 504 to a state 506.
In the state 506, the process receives the trim setting. For example, the setting can correspond to a delay in a setup and hold for a latch. The process advances from the state 506 to a state 508.
In the state 508, the process blows fuses to store the trim setting. For example, the fuse logic/serializer 306 can blow the applicable fuses of the PPT fuses 314. In one embodiment, the process sets up the trim settings for all the PPT fuses 314, and the applicable PPT fuses 314 are blown in a sequential manner. The process can be repeated as desired for other trim settings.
The process begins in a state 602 to enter the soft post package trim (SPPT) mode. In the SPPT mode, the SPPT mode mux 404 should be instructed to use the inputs that are coupled to the SPPT latches 402. For example, test equipment can communicate with the memory device's I/O directly or can communicate indirectly via, for example, a CPU of a system on a chip in which the memory device resides. The process advances from the state 602 to a state 604.
In the state 604, the process receives an indication of the parameter to be trimmed. For example, the indication can correspond to an address, and the address can be mapped to a parameter, such as a trim for a setup and hold of a particular latch. The process advances from the state 604 to a state 606.
In the state 606, the process receives the trim setting. For example, the setting can correspond to a delay in a setup and hold for a latch. The process advances from the state 606 to a state 608.
In the state 608, the process waits to receive an activate command, which can correspond to a rising edge on an activate signal, which is used to latch the setting to the SPPT latch. The signal can be generated by the fuse logic/serializer 306, another circuit, or externally. The process can be repeated until suitable trim parameters are found, and then the process can commit to the suitable trim settings by storing them in the PPT fuses 314 as described earlier in connection with
One embodiment includes an apparatus, wherein the apparatus includes: an integrated circuit die comprising: an array of memory cells; an interface configured to permit data transfer to and from the integrated circuit die; a circuit configured to enter a post-package trim mode in response to instructions received over the interface, wherein the circuit is configured to receive one or more values and to adjust a characteristic of the integrated circuit relating to a memory characteristic based at least partly on the one or more values.
One embodiment includes an electronically-implemented method of performing trimming for an integrated circuit die, wherein the method includes: receiving, via an interface of the integrated circuit die, an instruction to enter a post-package trim mode, wherein the integrated circuit die comprises an array of memory cells, wherein the interface is configured to permit data transfer to and from the integrated circuit die; and receiving one or more values via the interface and adjusting a characteristic of the integrated circuit die relating to a memory characteristic based at least partly on the one or more values.
One embodiment includes a system on a chip, wherein the system on a chip includes: a processor; and a plurality of integrated circuit memory die, wherein the plurality of integrated circuit memory die are arranged in a stack and share a bus via through-silicon vias, wherein an integrated circuit memory die of the plurality of integrated circuit memory die comprises: an array of memory cells; a bus configured to permit data transfer to and from the integrated circuit die; a circuit configured to enter a post-package trim mode in response to instructions received over the bus and a chip select associated with the integrated circuit memory die, wherein the circuit is configured to receive one or more values and to adjust a characteristic of the integrated circuit relating to a memory characteristic based at least partly on the one or more values.
Unless expressly stated to the contrary, “coupled” means that one element/feature is directly or indirectly coupled to another element/feature, and not necessarily mechanically. Thus, although the drawings illustrate various examples of arrangements of elements and components, additional intervening elements, devices, features, or components may be present in an actual embodiment.
Semiconductor memory devices are ubiquitous in digital electronics devices and various systems. These various systems can include a process configured to execute instructions and/or access data stored on the memory devices. Examples of these devices include desktop computers, workstations, servers, tablets, laptop computers, digital cameras, video cameras, digital media players, personal digital assistants, smart phones, mobile phones, navigation devices, non-volatile storage products, kiosks, automotive products, and the like.
Devices employing the above described schemes can be implemented into various electronic devices. Examples of the electronic devices can include, but are not limited to, consumer electronic products, parts of the consumer electronic products, electronic test equipment, etc. Examples of the electronic devices can also include circuits of optical networks or other communication networks, including, for example base stations. The consumer electronic products can include, but are not limited to, an automobile, a camcorder, a camera, a digital camera, a portable memory chip, a washer, a dryer, a washer/dryer, a copier, a facsimile machine, a scanner, a multi-functional peripheral device, etc. Further, the electronic device can include unfinished products, including those for industrial, medical and automotive applications.
Various embodiments have been described above. Although described with reference to these specific embodiments, the descriptions are intended to be illustrative and are not intended to be limiting. Various modifications and applications may occur to those skilled in the art.
Number | Name | Date | Kind |
---|---|---|---|
3886323 | Miller et al. | May 1975 | A |
5278839 | Matsumoto et al. | Jan 1994 | A |
5764878 | Kablanian et al. | Jun 1998 | A |
5862314 | Jeddeloh | Jan 1999 | A |
5910921 | Beffa et al. | Jun 1999 | A |
5930169 | Iwata et al. | Jul 1999 | A |
5974564 | Jeddeloh | Oct 1999 | A |
6085334 | Giles et al. | Jul 2000 | A |
6367030 | Yamauchi | Apr 2002 | B1 |
6490219 | Yoneya | Dec 2002 | B2 |
6665226 | Yoneya | Dec 2003 | B2 |
6967878 | Dono | Nov 2005 | B2 |
7020033 | Nagata et al. | Mar 2006 | B2 |
7350119 | Zuraski, Jr. et al. | Mar 2008 | B1 |
7436222 | Shyr et al. | Oct 2008 | B2 |
7437626 | Chang et al. | Oct 2008 | B2 |
7536267 | Zimmerman et al. | May 2009 | B2 |
7606102 | Blodgett | Oct 2009 | B2 |
7684266 | Lee | Mar 2010 | B2 |
7746712 | Kang et al. | Jun 2010 | B2 |
7768847 | Ong et al. | Aug 2010 | B2 |
8086916 | Kopel | Dec 2011 | B2 |
8379460 | Jeong | Feb 2013 | B2 |
8593891 | Nishioka | Nov 2013 | B2 |
8645583 | Vu et al. | Feb 2014 | B2 |
9343184 | Wilson et al. | May 2016 | B2 |
9349491 | Morgan et al. | May 2016 | B1 |
20020051400 | Yoneya | May 2002 | A1 |
20020133769 | Cowles et al. | Sep 2002 | A1 |
20030031075 | Yoneya | Feb 2003 | A1 |
20030038649 | D'Angelo | Feb 2003 | A1 |
20050041491 | Kyung | Feb 2005 | A1 |
20050097383 | Puri et al. | May 2005 | A1 |
20050149782 | McPartland | Jul 2005 | A1 |
20100046292 | Hahn et al. | Feb 2010 | A1 |
20100124132 | Sarin et al. | May 2010 | A1 |
20110110164 | Jeong | May 2011 | A1 |
20120027077 | Reznik | Feb 2012 | A1 |
20120054549 | Kwan et al. | Mar 2012 | A1 |
20120092943 | Nishioka | Apr 2012 | A1 |
20120267791 | Lee et al. | Oct 2012 | A1 |
20130083612 | Son et al. | Apr 2013 | A1 |
20130223171 | Kim et al. | Aug 2013 | A1 |
20130235644 | Chung | Sep 2013 | A1 |
20140049854 | Ho | Feb 2014 | A1 |
20140078842 | Oh et al. | Mar 2014 | A1 |
20140140138 | Tran et al. | May 2014 | A1 |
20140211567 | Chung | Jul 2014 | A1 |
20140223257 | Oh et al. | Aug 2014 | A1 |
20150135038 | Wilson et al. | May 2015 | A1 |
20150277790 | Mozak et al. | Oct 2015 | A1 |
20160232987 | Wilson et al. | Aug 2016 | A1 |
Entry |
---|
U.S. Appl. No. 14/077,630, filed Nov. 12, 2013, Wilson et al. |
U.S. Appl. No. 14/246,589, filed Apr. 7, 2014, Wilson, et al. |
Cataldo, Anthony, “Virage Logic Readies self-repairing embedded memory,” EE Times, Mar. 6, 2001, 2 pages. Available at: http://www.eetimes.com/document.asp?doc—id=1143164&print=yes (accessed, Apr. 10, 2014). |
Impact of I/O Settings on Signal Integrity in Stratix III Devices, Altera Corporation, Application Note 476, ver. 1.0, 15 pgs, Oct. 2007. |
International Search Report and Written Opinion received for PCT/US2015059786 dated Apr. 21, 2016. |
U.S. Appl. No. 15/382,394, entitled “Soft Post Package Repair of Memory Devices”, filed Dec. 16, 2016. |
TW Office Action received for TW Appl. No. 104137235 dated Nov. 22, 2016. |
Number | Date | Country | |
---|---|---|---|
20160133310 A1 | May 2016 | US |