Abstract:
A multi-level electrical fuse system comprises at least one fuse box having at least one electrical fuse, a programming device serially coupled to the electrical fuse, and a variable power supply coupled to the fuse box and configured to generate two or more voltage levels.

Description:
BACKGROUND 
       [0001]    The present invention relates generally to an integrated circuit (IC) design, and more particularly to a system of circuit designs used for programming an electrical fuse using only one programming device. 
         [0002]    Electrical fuses are often utilized for modern semiconductors for making adjustments and repairs that are performed as late as after a semiconductor chip is packaged. They are designed to be blown when a current through the fuses exceeds a predetermined threshold, thus causing energy build-up that in turn blows the fuses. By blowing a fuse during programming, nonvolatile data storage can be provided. Electrical fuses can be flexibly positioned even in the most complex semiconductor designs, since wirings are allowed above and below the fuses, thereby making electrical fuses a desirable component for higher density memory devices. 
         [0003]    A conventional system used for the programming of electrical fuses is designed to only program two-state fuses that can only provide one of the two states: “1” or a “0”. As such, it is difficult to achieve high data volume, such as 64 k-bits or more since there will be a very high bit count that requires a large number of electrical fuses. As the bit count reaches an even higher number, the probability that the semiconductor circuit may malfunction due to a bit malfunctioning increase, thereby reducing overall yield. To improve the efficiency of electrical fuses, multi-level electrical fuses that can be programmed into one of three states have been used recently. These multi-level electrical fuses can increase in density and can be implemented in a smaller effective area. For example, by using 10 cells, a three-state electrical fuse system can yield 3̂10 or 59,049 data options, while a two-state electrical fuse system can only yield 2̂10 or 1,024 data options. However, the original design for a multi-level electrical fuse circuit requires an additional programming device in order to program the multi-level fuse properly. This additional programming device is a penalty that space-conscious semiconductor designers can ill afford. 
         [0004]    Desirable in the art of integrated circuit designs is a new multi-level electrical fuse system that achieves a higher data volume without resorting to larger bit count and increasing the number of programming devices. 
       SUMMARY 
       [0005]    In view of the foregoing, this invention provides a multi-level electrical fuse system. In one embodiment, the multi-level electrical fuse system comprises at least one fuse box having at least one electrical fuse, a programming device serially coupled to the electrical fuse, and a variable power supply coupled to the fuse box and configured to generate two or more voltage levels. 
         [0006]    In another embodiment, the multi-level electrical fuse system comprises at least one fuse box having at least one electrical fuse, a programming device serially coupled to the electrical fuse, and a fuse writing circuit having a comparator having a first input coupled to the fuse box and a second input coupled to a controllable state reference circuit, wherein when the first input voltage is higher than the second input voltage, the comparator outputs a first logic state and when the first input voltage is lower than the second input voltage, the comparator outputs a second logic state complementary to the first logic state, and a control circuit coupled between an output of the comparator and the programming device. 
         [0007]    The construction and method of operation of the invention, however, together with additional objects and advantages thereof will be best understood from the following description of specific embodiments when read in connection with the accompanying drawings. 
     
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         [0008]      FIG. 1A  is a schematic diagram illustrating a conventional two-level electrical fuse circuit with a programming device. 
           [0009]      FIG. 1B  is a schematic diagram illustrating a conventional multi-level electrical fuse circuit with programming and reading circuits. 
           [0010]      FIG. 2  is a schematic diagram illustrating a multi-level electrical fuse circuit with a reading circuit in accordance with one embodiment of the present invention. 
           [0011]      FIG. 3  is a schematic diagram illustrating a multi-level electrical fuse circuit with a fuse writing circuit in accordance, the embodiment of the present invention. 
       
    
    
     DESCRIPTION 
       [0012]    The following will provide a detailed description of a system for programming an electrical fuse at multiple levels using only one programming device. 
         [0013]      FIG. 1A  illustrates a circuit diagram  100  showing a conventional system for programming electrical fuses with a programming device. The programming device is typically a NMOS type programming device or a PMOS type programming device. In the circuit diagram  100 , an NMOS type programming device  102  is coupled with an electrical fuse  104 , which is placed between the NMOS type program device  102  and a power supply source  105 . Control signals will enter through a select line  106  when the electrical fuse  104  is assigned to be programmed. The NMOS or PMOS type programming device used for programming an electrical fuse is designed to be large in physical size since a large current is typically required to program electrical fuses such as the electrical fuse  104 . 
         [0014]    However, this conventional system is designed to only program two-state fuses that can only provide one of the two states: a “1” or a “0”. As such, it is difficult to achieve a higher data volume, such as 64 k-bits or more, since there will be a very high bit count requiring a large number of electrical fuses. 
         [0015]      FIG. 1B  illustrates a circuit diagram of a conventional multi-level electrical fuse circuit  108  where an electrical fuse can be programmed by one of two programming devices in order to increase a high data volume without the need for high bit counts. The multi-level electrical fuse circuit  108  comprises an electrical fuse  110 , a small programming device  112 , a large programming device  114 , two sense amplifiers  116  and  118 , and a logic device  120 . The electrical fuse  110  is designed to be programmed into one of three possible states, or levels. The state of the electrical fuse  110  is determined by the resistance of the electrical fuse  110 . In order to program the electrical fuse  110 , the small programming device  112  and the large programming device  114  are coupled to the electrical fuse  110  at a node  122 . The small programming device  112  is designed to program the electrical fuse  110  by slightly blowing the electrical fuse  110 , thus leaving it in a state with a lower resistance while the large programming device  114  is designed to program the electrical fuse  110  by applying a larger current to flow to the fuse, thus leaving it in a state with a higher resistance. By having these two programmed resistance states and a non-programmed state, the electrical fuse  110  can be programmed with one of the three states. 
         [0016]    The sense amplifiers  116  and  118  are also coupled to the node  122  to detect the resistance state of the electrical fuse  110  for a reading process. The sense amplifiers  116  and  118  are coupled to reference resistors  124  and  126 , respectively. In this example, the reference resistor  124  is a 600-ohm resistor and the reference resistor  126  is a 2.5 k-ohm resistor. By comparing the resistance of the electrical fuse  110  with the resistance of the reference resistors  124  and  126 , the sense amplifiers  116  and  118  can determine the resistance state of the electrical fuse  110 . The output of the sense amplifiers  116  and  118  is received by the logic device  120  where a binary output of the state of the electrical fuse  110  is provided. 
         [0017]    With this system, an electrical fuse can be programmed to be one of the multiple states, or levels, thus allowing a device to achieve a high data volume without a high number of bit counts. However, the need for both the small programming device  112  and the large programming device  114  greatly increases the area necessary for implementing this conventional multi-level electrical fuse circuit  108 . 
         [0018]      FIG. 2  is a schematic diagram illustrating a multi-level electrical fuse circuit  200  with a reading circuit  208  in accordance with one embodiment of the present invention. The multi-level electrical fuse circuit  200  comprises the programming device  202 , the electrical fuse  204  and the reading circuit  208 . The reading circuit may be implemented as two sense amplifiers  206  and  208 , and a logic device  210 . The electrical fuse  204  is designed to be programmable into one of three possible states using only one programming device  202 . The state of the electrical fuse  204  is determined by the resistance of the electrical fuse  204 . Unlike the conventional multi-level electrical fuse circuit  100  shown in  FIG. 1B , the electrical fuse  204  is designed to be programmable into one of the three states based on the different levels of voltage applied to the electrical fuse  204  during a programming process. By contrast, the multi-level electrical fuse circuit  200  is similar to the circuit diagram  100  in  FIG. 1A  in that the electrical fuse in both is programmed using only one programming device coupled with the electrical fuse. A lower level of voltage applied to the electrical fuse  204  can program the electrical fuse  204  by slightly blowing the fuse, thus leaving it in a state with a lower resistance while a higher level of voltage applied to the electrical fuse  204  can further blow the fuse, thus leaving it in a state with a higher resistance. By having these two programmed resistance states and a non-programmed state, the electrical fuse  204  can be programmed with one of the three states. 
         [0019]    The sense amplifiers  206  and  208  are coupled to a node  212  in order to detect the resistance state of the electrical fuse  204  during a reading process. The sense amplifiers  206  and  208  are respectively coupled to reference resistors  214  and  216 . In this example, the reference resistor  214  is a 600-ohm resistor and the reference resistor  216  is a 2.5 k-ohm resistor. By comparing the resistance of the electrical fuse  204  with the resistances of the reference resistors  214  and  216 , the sense amplifiers  206  and  208  can determine the resistance state of the electrical fuse  204 . The output of the sense amplifiers  206  and  208  are received by the logic device  210  where a binary output of the state of the electrical fuse  204  is provided. 
         [0020]    By implementing only one programming device  202 , the effective cell size can be reduced while keeping the same area necessary for the traditional fuse structure. In a preferred embodiment, an effective 58% increase in bit capacity, given a similar semiconductor footprint, may be achieved. In this scenario, an estimate 1-to-3 ratio between fuse area and programming device area is achieved. Also, resistance distribution is reduced due to the simplicity of the design. Furthermore, the interface to control programming is also reduced because only one, not two, programming device needs to be controlled. 
         [0021]      FIG. 3  is a schematic diagram illustrating a multi-level electrical fuse circuit  300  with a fuse writing circuit in accordance with the embodiment of the present invention. The multi-level electrical fuse circuit  300  comprises an electrical fuse  302 , a programming device  304 , a voltage regulator  306 , a state reference circuit  308 , a comparator  310 , and a control circuit  312 . The electrical fuse  302  may be a silicide poly fuse, a non-volatile fuse, or a contact fuse. The programming device  304  may be implemented as a NMOS transistor as shown in  FIG. 3 . In this case, the NMOS programming device  304  is coupled with the electrical fuse  302  through its drain while its source is coupled to the ground. Note that it is also possible for a PMOS transistor to be used as the programming device  304  without deviating from the spirit of this invention. In the case wherein the programming device  304  is a PMOS transistor, the circuit  300  is modified such that the source of the PMOS transistor is coupled with the voltage regulator while the drain is coupled with one end of the electrical fuse  302 . The voltage regulator  306 , which is shown as a multiplexer and acts as a voltage selection device, is designed to provide the electrical fuse  302  with a desired voltage level during a fuse writing process. For example, if the electrical fuse  302  is to be programmed to have a higher resistance state, the multiplexer  306  will provide a higher level of fuse writing voltage, and if the electrical fuse  302  is to be programmed to a lower resistance state, the multiplexer  306  will provide a lower level of fuse writing voltage. 
         [0022]    The state reference circuit  308 , used for providing a reference voltage to the comparator  310  during a fuse writing process, can produce at least two predetermined reference states that may be generated by a resistive voltage divider. In this example, the state reference circuit  308  comprises three reference resistors  314 ,  316 , and  318 , which are respectively coupled with resistance selectors  320 ,  322  and  324 . For this example, the reference resistor  314  is a 500-ohm resistor, the reference resistor  316  is a 1 k-ohm resistor, and the reference resistor  318  is a 1.5 k-ohm resistor. The resistance selectors  320 ,  322 , and  324 , shown as NMOS pass-gate transistors, are controlled by a logic device, not shown in this figure, and can be turned on and off to adjust the reference resistance which in turn affects the reference voltage provided to the comparator  310 . The resistance state of the state reference circuit  308  can be calculated by converting the state of the resistance of the electrical fuse  302  in a fixed time duration. For example, if the initial state is 10 X +/−10% ohm, the first state is about 10 2X +/−10% ohm, and the second state is about 10 3X +/−10% ohm. With the reference resistors  314 ,  316 , and  318  in this example, multiple reference resistance states can be achieved. Using the values provided in this example, the first reference resistance state may be about 480 ohms to about 520 ohms at a ramping program voltage of about 0.8V to about 1.2V. A second reference resistance state ranges from about 960 ohms to about 1,040 ohms at a ramping program voltage of about 1.1V to about 1.4V, and a third reference resistance state ranges from about 1,200 ohms to about 1,300 ohms at about 1.3V to 1.6V. With this information, a reference voltage can be used for comparison with the fuse voltage in the comparator  310  to determine the state of the electrical fuse  302 . 
         [0023]    The comparator  310 , which has two input terminals, is designed to compare the states of the electrical fuse  302  with the states of the state reference circuit  308 . This can be done by comparing the fuse voltage at a node  326  with the reference voltage provided by the state reference circuit  308 . Note that the fuse voltage at the node  326  is dependent on the resistance state of the electrical fuse  302 . After the comparison, the output signal from the comparator  310  is then provided to the control circuit  312  which controls the programming device  304 . An output signal “1” would represent the case in which the reference voltage is higher than the fuse voltage, and an output signal “0” would represent the case where the reference voltage is lower than the fuse voltage. 
         [0024]    The control circuit  312 , comprising an address decoder  328 , two AND-gates  330  and  332 , and a flip-flop  334 , is designed to turn off the programming device  304  when the comparator output signal reaches a predetermined state. Initially, the output of the flip-flip  334  is pre-set to “1” thus allowing the AND-gate  330  to turn on the address decoder  328  as well as the programming device  304  when the strobe signal is switched high. The addressing information is also provided as an input for the address decoder  328 . During a write operation, the AND-gate  332 , with one input terminal connected to a node  336  and another input terminal connected to the output of the comparator  310 , continuously receives the output signals from the comparator  310 . If the fuse voltage is less than the reference voltage, a “1” is outputted from the comparator  310 , thus allowing the AND-gate  332  to output a high signal to the flip-flop  334  and keeping the output of the flip-flop  334  high at “1”. This allows the control circuit  312  to remain in the same condition and keeps the programming device  304  turned on. If the fuse voltage is greater than the reference voltage, a “0” is outputted from the comparator  310 , thus causing the AND-gate  332  to output a low signal and allowing the output of the flip-flop  334  to switch low to “0” when a clock signal CK is initiated during the next clock cycle. This will result in the AND-gate  330  to output a low signal, thus turning off the address decoder  328  as well as the programming device  304 . With the flip-flop  334  switched to output a low signal, the node  336  is latched to a low state and cannot be switched back to high state even if the comparator  310  outputs a high signal. Then the fuse writing process is completed with the resistance of the fuse  302  reaching a target value, which is determined by the reference circuit  308 . Changing power supply voltage can certainly affect the resistance increasing rate of the electrical fuse  302 , allowing for longer time under a certain power supply voltage, which can also increase the resistance of the electrical fuse to the same desired level. No matter if it is changing voltage or changing time, once a target resistance is reached, the reference circuit  308  will inform the control circuit  312  to turn off the programming device  304 , hence stop the progressing process, so that the resistance of the fuse  304  can stay at the desired level. 
         [0025]    In an example scenario where the electrical fuse  302  is to be programmed, the strobe signal provided for the AND-gate  330  of the control circuit will be switched high. The flip-flop  334  is pre-set to output “1” initially, thus allowing the AND-gate  330  to output a high signal that turns on the address decoder  328 . The address decoder  328  then uses the given address information to select the programming device  304  by providing a high signal to the NMOS transistor within. A desired level of voltage will be selected by the multiplexer  306  to program the electrical fuse  302 . During writing of the electrical fuse  302 , the comparator  310  will compare the fuse voltage at the node  326  with a predetermined reference voltage provided by the state reference circuit  308 . Once the resistance of the electrical fuse  302  is programmed to a desired level, the fuse voltage should be greater than the reference voltage, and a low signal “0” should be outputted by the comparator  310 . This will cause both the AND-gate  332  and the flip-flop  334  to output a low signal, thereby causing the node  336  to latch onto a low signal. With the node  336  latched onto a low signal, the programming device  304  will be turned off, thus stopping the fuse writing process, so that a targeted resistance of the fuse  302  has been reached. 
         [0026]    The electrical fuse within the proposed multi-level electrical fuse circuit is designed to be connected to one programming device and an input voltage provided by a voltage selection device or a voltage regulator that is predefined with a different resistance value. By implementing an adjustable supply voltage for the electrical fuse, only one programming device is necessary for writing a multi-level electrical fuse, thus reducing the effective cell size. The data programmed at an electrical fuse is converted into a voltage at a level corresponding to the resistance of the electrical fuse. This voltage is compared at a comparator with a reference voltage provided by a state reference circuit to determine if the electrical fuse has been programmed. The comparison result may also read out as a high or low signal during a read operation. 
         [0027]    The above illustration provides many different embodiments or embodiments for implementing different features of the invention. Specific embodiments of components and processes are described to help clarify the invention. These are, of course, merely embodiments and are not intended to limit the invention from that described in the claims. 
         [0028]    Although the invention is illustrated and described herein as embodied in one or more specific examples, it is nevertheless not intended to be limited to the details shown, since various modifications and structural changes may be made therein without departing from the spirit of the invention and within the scope and range of equivalents of the claims. Accordingly, it is appropriate that the appended claims be construed broadly and in a manner consistent with the scope of the invention, as set forth in the following claims.