The present invention relates to semiconductor circuitry, and particularly, to semiconductor fuse programming circuitry.
Electrically programmable fuses are utilized within the field of semiconductor integrated circuit devices for a number of purposes, including the storage of unalterable information for permanent memory, selection of a particular configuration from among many possible circuit configurations, optimizing the value of a particular analogue circuit component, optimizing overall circuit performance, and/or replacing defective circuit elements with redundant circuit elements.
Electrical fuses may be programmed on a tester before packaging of a chip in an environment where a stable voltage supply is available, inside an operational computer where the voltage supply is less stable, or in hand held devices where the power source is often a battery with a wide range of voltage variations during the operation. The number of electrical fuses in a semiconductor chip may vary between a few fuses to millions of fuses. In most configurations where multiple fuses are employed, the electrical fuses are in an array format where the voltage supplies are shared among many fuses. The array may be addressable by a scan chain or by a row and column addressing scheme. By selecting a particular electrical fuse and allowing a sufficient amount of electrical current flow through the fuse, the fuse is “programmed.” Once the electrical fuse programs, the electrical resistance of the fuse changes and the sense circuit detects the change of the resistance to read the stored information.
Programming of the electrical fuses with high yield requires a controlled amount of programming current from the programming transistor. Too low programming current underprograms the fuse and results in lower post-programming fuse resistance, and thus causes the programmed fuses to be erroneously sensed as intact fuses. Likewise, too high programming current causes the temperature of the electrical fuse to rise too high, causing ruptures of the fuses, which tends to produce some low resistance fuses statistically, thereby causing the programmed fuses to be sensed erroneously. In general, an optimal programming current window exists for electrical fuses that produces reliable post-programming fuse resistance distribution and high sense yield.
The control of the programming current is critical in insuring that the fuses are programmed properly. In addition, there are cases where the programming current variation is amplified beyond what is normally specified in the device specifications, such as programming of electrical fuses inside a computer while the computer is operational and the ambient temperature of the circuit is hard to predict or programming inside a mobile battery powered device in which the conditions of power supply, e.g., a battery, may have large variations during the usage. Whether caused during the manufacture of the semiconductor chips or whether due to the external conditions during the operation of the semiconductor chips, variations in the programming current invariably degrades the yield and reliability of the electrical fuses. In view of the above, a need exists for a circuit that adjusts the programming current near a target value even in the presence of adverse process or ambient conditions that cause significant changes in the transistor performance.
The present invention addresses the above-described problems by providing a circuit that can adjust the variations in the programming current through the electrical fuse. As can be seen in
In accordance with one aspect of this invention, a simulated fuse load circuit element is provided that is electrically equivalent to an intact fuse but does not change resistance in time. The embodiments of this circuit element include: large fuses where dimensions are proportionally enlarged from typical electrical fuses, a 2×2 array of electrical fuses in a series connection, a 2×2 array of electrical fuses in a parallel connection, an N×N array of resistive elements in a series connection with the resistance equivalent to that of an intact single fuse where N is greater than 2, and an N×N array of electrical fuses in a parallel connection with the resistance equivalent to that of an intact single fuse where N is greater than 2.
In accordance with another aspect of this invention, a circuit is provided to determine the optimal gate voltage for the programming transistor to enable the centering of the programming current through the fuses. By substituting a simulated fuse load for a fuse in the circuit consisting of a serial connection of the fuse and the programming transistor, the initial programming current in a serial connection of the fuse and the programming transistor can be estimated.
In accordance with yet another aspect of this invention, a circuit that determines the optimal gate voltage for programming transistors during the electrical fuse programming is provided. The voltage drop across a programming transistor is compared in a comparator with the externally provided reference voltage that corresponds to the ideal initial voltage drop across the programming transistor. A latching circuitry that generates a series of increasing or decreasing voltages is connected to the gate of the programming transistor to measure the voltage drop across the programming transistor at various voltage conditions applied to the gate. When the output of the comparator flips during the voltage sweep on the gate, the circuitry holds the value in the latch that is stored at that time. This voltage setting may be frozen or stored and then applied to the gates of the programming transistors connected to other fuses during the electrical fuse programming process. Alternatively, the digital value held in the latch may be used to recreate the gate voltage on the programming transistors during programming of other fuses.
In accordance with yet another aspect of this invention, the external reference voltage described above is internally supplied with a voltage divider circuit.
In a first embodiment of the voltage divider circuit, the reference voltage is derived from the F-source supply voltage through a circuit consisting of resistors.
In a second embodiment of the voltage divider circuit, the reference voltage is derived from the F-source supply voltage through a circuit comprising resistors and diodes.
In a third embodiment of the voltage divider circuit, the reference voltage is derived from the F-source supply voltage through a circuit comprising resistors and fuses or resistors and circuit elements that electrically simulate fuses.
a) is a diagram illustrating an embodiment of a simulated fuse load which is made of a structure obtained by proportionately enlarging the dimensions of an electrical fuse.
b) is a diagram illustrating an embodiment of a simulated fuse load which is made of a structure obtained by a parallel connection of two serial connections of two electrical fuses.
c) is a diagram illustrating an embodiment of a simulated fuse load which is made of a structure obtained by a series connection of two parallel connections of two electrical fuses.
d) is a diagram illustrating an embodiment of a simulated fuse load which is made of a structure obtained by a parallel connection of N serial connections of N electrical fuses, where N is an integer greater than 2.
e) is a diagram illustrating an embodiment of a simulated fuse load which is made of a structure obtained by a series connection of N parallel connections of N electrical fuses, where N is an integer greater than 2.
a) is a diagram illustrating an embodiment of a reference voltage generator circuit according to the present invention where the circuit consists of resistors.
b) is a diagram illustrating an embodiment of a reference voltage generator circuit according to the present invention where the circuit consists of resistors and diodes.
c) is a diagram illustrating an embodiment of a reference voltage generator circuit according to the present invention where the circuit consists of resistors and electrical fuses.
As stated above, the present invention describes a circuit for determining the optimal gate voltage for programming transistors to compensate for normal manufacturing process variations in the programming current of a programming transistor in an electrical fuse circuitry. This is achieved through the measurement of the voltage drop across the programming transistor in a circuit comprising the programming transistor in a series connection with a simulated fuse load. The simulated fuse load is a circuit element that mimics the electrical characteristics of an electrical fuse but does not program under the electrical fuse programming conditions. A gate voltage that produces the optimal level of voltage drop across the programming transistor is determined by comparing the voltage between the programming transistor and the simulated fuse load with a reference voltage.
In this circuit, the simulated fuse load 110 is a resistive circuit component that mimics the resistance of the electrical fuse but, unlike an electrical fuse, it is structurally stable enough not to change electrical characteristics even when electrical current which would be sufficient to program an electrical fuse is passed through it. In other words, the simulated fuse load has the same electrical resistance as an intact electrical fuse but the structure itself is robust enough to withstand the passage of the current equivalent to the programming current of a fuse. Specific embodiments of the simulated fuse load 110 are disclosed in
The programming transistor 120 in the circuit 100 in
It is further noted that even when the actual programming transistor curve significantly deviates from the ideal programming transistor curve 222 due to variations in the manufacture process or ambient conditions, it is possible to compensate for the deviation by adjusting the voltage to the gate of the programming transistor. For example, if the actual programming transistor curve is one represented by the curve 221 in
The voltage at the node between the transistor 120 and the simulated fuse load 110 is fed into the first input 182 of the voltage comparator 180. The value of the reference voltage as determined by the abscissa of the intersect 231 of the ideal programming transistor 222 and the load line 211 is supplied to the second input 181 of the voltage comparator 180. When the input voltage to the first input 182 is lower than the input voltage to the second input 181, the output of the voltage comparator 180 is low. When the input voltage to the first input 182 is higher than the input voltage to the second input 181, the output of the voltage comparator 180 is high. The reference voltage applied to the second input 181 may be either externally generated and supplied to the system or internally generated from one of the other available voltages including the system power supply voltage and F-source supply voltage. The output of the voltage comparator 180 changes depending on which of the first input 182 and the second input 181 has a higher voltage. The voltage output of the voltage comparator 180 is fed into the counter 150 and the latch 160.
For the operation of the circuit 100, the counter 150 is reset by a signal to the reset input 153. With each cycle of the clock signal connected to the clock input 152, the counter 150 generates counter data outputs 159, which are parallel digital outputs from the counter 150, that corresponds to a monotonically increasing number. A full range of numbers corresponding to all possible variations of all the bits or alternatively, a partial range of numbers corresponding to a subset of all possible variations of all the bits may be digitally generated. As the digital output of the counter 150 is monotonically increased, the voltage at the count enable input 151, which is the output voltage of the voltage comparator 180, is flipped from high to low. The counter 150 stops counting with the change in the count enable input 151. The granularity of the counter is fine enough that the voltage change at the gate 130 of the programming transistor 120 corresponding to a unit count change of the counter 150 causes insignificant variation in the programming current or voltage drop across the programming transistor 120.
The output of the voltage comparator 180 is fed into the hold bar (the inverse of hold enable) input 161 of the latch 160 and monitored by the latch 160. The latch 160 transmits the data outputs 159 from the counter 150 to the digital to analog voltage converter (DAC) 170 through the latch data outputs 169, which are also parallel digital outputs, from the latch 160 as long as the hold bar input 161 remains high. As the hold bar input 161 changes from high to low, the latch 160 holds the value of the last latch data inputs, which is the same as the last counter data outputs, that it received from the counter 150 and consequently, the latch data outputs 169 of the latch 160 freezes. If there is a significant wiring length between any of the components above, signal buffers may be employed to ensure the transmission of the signal without losing the fidelity of the signal.
The digital to analog voltage converter (DAC) 170 receives the latch data outputs 169 of the latch 160 as the DAC data inputs and converts it to an analog voltage. This voltage is supplied to the gate 130 of the programming transistor 120. The output voltage range of the DAC 170 is set to cover all anticipated variations of the performance of the programming transistor 120, caused during the manufacture of the circuit and the ambient conditions, with the adjustment of the gate voltage 130 so that the voltage drop across the programming transistor 120 is sufficiently close to the reference voltage supplied to the second input 181 of the voltage comparator 180. In other words, with sufficient granularity of the digital output 159 of the counter 150, by the time the counter stops counting, the output voltage from the DAC 170 has a voltage that, when applied to the programming transistor 120 of the circuit 100 or when applied to the programming transistor 20 of an electrical fuse circuit 50, generates a voltage drop across the programming transistor 20 or 120 that is sufficiently close to the reference voltage supplied to the second input 181 of the voltage comparator 180.
The output voltage of the DAC 170 can then be applied to the gate of each of the programming transistor 20 of a conventional electrical fuse circuit 50 or an array of electrical fuse circuitry. Since the programming transistor 120 and the programming transistor 20 are built the same way, the adjusted voltage setting on the programming transistor 20 also produces a programming transistor curve that closely matches the ideal programming transistor curve 222 in
While the operation of the counter, latch, and the DAC described above involved a monotonically increasing counter output, one skilled in the art would immediately recognize that a similar operation would be possible with a monotonically decreasing counter output. Also, while the operation of the circuit above was described with the count enable input 151 initially being high and then switching to low and the hold bar input 161 initially being high and then switching to low, it is immediately recognizable that the polarity of the signal is a matter of preference and that alternative polarities of the signals are just as well acceptable.
a) illustrates an enlarged fuse 410, which is an embodiment of the simulated fuse load 110. The enlarged fuse 410 is a structure that is a proportionately enlarged version of an intact electrical fuse 70 in
b) illustrates a second embodiment 420 of the simulated fuse load 110 where a 2×2 array of electrical fuses are used to simulate the electrical characteristics of an electrical fuse. A set of two instances 421_A1 and 421_B1 of electrical fuse are connected in series. Another set of two instances 421_A2 and 421_B2 of electrical fuse are connected in series as well. The resistance of each set of two instances of electrical fuses is twice that of one electrical fuse. The second embodiment 420 of the simulated fuse load is formed by connecting the two sets of two instances electrical fuses in parallel with the wiring 431 and the wiring 432. While the second embodiment 420 of the simulated fuse load has the same resistance as one electrical fuse, programming it would require twice as high voltage supply and twice as much current due to its physical size. Therefore, given the same level of programming current as what a normal electrical fuse would require for programming, this embodiment 420 of the simulated fuse load 110 does not program and maintains the electrical characteristics of an intact fuse.
c) illustrates a second embodiment 440 of the simulated fuse load 110 where a 2×2 array of electrical fuses are used to simulate the electrical characteristics of an electrical fuse. A set of two instances 441_A1 and 441_A2 of electrical fuse are connected in parallel with the wiring 452 and the wiring 454. Another set of two instances 441_B1 and 421_B2 of electrical fuse are connected in parallel with the wiring 451 and the wiring 453 as well. The resistance of each set of two instances of electrical fuses is half that of one electrical fuse. The third embodiment 440 of the simulated fuse load is formed by connecting the two sets of two instances electrical fuses in series with the wiring 455. While the third embodiment 440 of the simulated fuse load has the same resistance as one electrical fuse, programming it would require twice as high voltage supply and twice as much current due to its physical size. Therefore, given the same level of programming current as what a normal electrical fuse would require for programming, this embodiment 420 of the simulated fuse load 110 does not program and maintains the electrical characteristics of an intact fuse.
To provide additional stability against possible effects of the current through the simulated fuse load, an array of increased size may be employed.
e) illustrates a fifth embodiment 480 of the simulated fuse load 110, where an N×N array of electrical fuses are employed, where N is an integer greater than 2. N electrical fuses, that is, 481_X1, 481_X2, . . . and 481_XN, where X is any alphabet between (and including) A and N, are connected in parallel. It should be noted that the alphabetical designations for the row is for the convenience in the notation in
Alternatively, a rectangular structure or a maze structure that is manufactured in the same level as the electrical fuse and has the same material composition as the electrical fuse may be tailored to have the resistance as a single electrical fuse may be used instead of the above mentioned specific embodiments of the simulated fuse load 110. Furthermore, any alternative resistive circuit components that electrically resemble an intact electrical fuse in its resistance but do not program (and hence change the resistance) may be substituted for the above mentioned specific embodiments of the simulated fuse load without altering the characteristics of the circuit for determining the optimal gate voltage for programming transistors of the electrical fuses.
In another aspect of this invention, instead of supplying the reference voltage to the comparator externally, circuitries are provided for internally generating the reference voltage from the voltage applied to the F-source power supply. This is done by a connecting a network of circuit elements, connecting one end of the network to the F-source power supply, connecting another end to the ground, and tapping off one node of the network to draw the internally generated reference voltage. Alternatively, a system power supply voltage or battery supplied voltage may be substituted for the F-source power supply.
Instead of externally supplying the reference voltage, which is the abscissa of the intersect 231 in
Alternatively, other passive circuit components including diodes and electrical fuses may be used in a voltage divider.
c) illustrates still another embodiment of a voltage divider circuit 700 that comprises a network 750 of electrical fuses 740 that contain at least one electrical fuse 740. If tow or more electrical fuses 740 are in the network, they may be connected in a parallel connection, a series connection, or any combination of serial and parallel connections among the fuses. One end of this voltage divider circuit 700 is connected to the F-source power supply 711, which is also labeled V_fs. The resistance values of the two resistors and the number of fuses and internal connections are tailored such that the reference voltage on the reference voltage line 721 produces a target voltage. Compared to the regular resistors, the fuse provides the added advantage of compensating the reference voltage for the variations in the electrical fuse resistance that occur as a result of variations during manufacturing or due to the ambient conditions. Placing multiple networks 740 of electrical fuses 740 or changing the number or placement of resistors within the network is also is expected by a person of ordinary skill in the art.
It should be obvious to one skilled in the art to combine the resistors, diodes, and electrical fuses to generate a voltage divider network that derives the reference voltage from the externally supplied F-source voltage while providing reasonable stability against the variations of circuit components induced by the variations in manufacturing or ambient conditions. Also, it should also be obvious that any external voltage supplied to the system may be substituted for the F-source power supply to generate the reference voltage.
The circuit for determining the optimal gate voltage for programming transistors of the electrical fuses according to the present invention can be incorporated into any programmable electrical fuse circuits incorporated within a processor or embedded memory. Alternatively, it can be implemented in a stand alone product such as a Programmable Read Only Memory (PROM) integrated circuit. In either case, this circuit may be used before packaging on a tester, after packaging at a final module test before shipping the product, or in the field while the product is operational inside a system.
While the invention has been described in terms of specific embodiments, it is evident in view of the foregoing description that numerous alternatives, modifications and variations will be apparent to those skilled in the art. Accordingly, the invention is intended to encompass all such alternatives, modifications and variations which fall within the scope and spirit of the invention and the following claims.