Abstract:
A method and apparatus is disclosed for sharing multiple fuses with a programming device. A fuse circuit embodying features of the present invention comprises one or more one-time programmable electrical fuses coupled in parallel, a programming device coupled to the fuses, and a selection module coupled to the fuses for selecting a predetermined fuse, wherein upon a selection by the selection module, a programming voltage is imposed for inducing a programming current through the predetermined fuse.

Description:
CROSS REFERENCE  
       [0001]     The present application claims the benefits of U.S. Provisional Patent Application Ser. No. 60/568,923, which was filed on May 5, 2004, and entitled “Electrical Fuse with One Program Device and Multiple Fuses.” 
     
    
     BACKGROUND  
       [0002]     The present invention relates generally to integrated circuit designs, and more particularly to methods and apparatuses for implementing multiple electrical fuses in a fuse cell equipped with only one programming device.  
         [0003]     Electrical fuses are often utilized for modern semiconductors. Typically, they are designed to blow when a current through the fuses exceeds a pre-determined threshold. When the fuses are programmed or “blown”, although not necessarily physically broken, they enter into a high impedance state. Electrical fuses are commonly used for making adjustments and repairs that are performed as late as after the chip is packaged. Since wirings are allowed at the two ends of the fuses, the fuses can be flexibly positioned within the chip, which is much more desirable than the conventional laser fuses as it is impossible to implement many metal layers or thick dielectrics above the laser fuses. This flexibility makes electrical fuses a desirable component for higher density memory devices.  
         [0004]     However, conventional methods of programming electrical fuses in a memory device are not very efficient in utilizing precious silicon area and thus are costly. For example, conventional methods for programming an electrical fuse require that one programming device is assigned for each fuse. In order to program an electrical fuse, a large supply current is necessary to be directed through the fuse. In order to provide this large supply current, programming devices attached to the fuses are very large. As the number of electrical fuses increase, the number of these large programming devices also increases proportionally. The result is a very poor rate of silicon area utilization.  
         [0005]     It is always desirable to provide an improved programming mechanism with multiple fuses to improve silicon area utilization without causing deterioration to operational performance.  
       SUMMARY  
       [0006]     In view of the foregoing, this invention provides paratuses and methods to allow multiple electrical fuses to share a single programming device.  
         [0007]     A method and apparatus is disclosed for sharing multiple fuses with a programming device. A fuse circuit embodying features of the present invention comprises one or more one-time programmable electrical fuses coupled in parallel, a programming device coupled to the fuses, and a selection module coupled to the fuses for selecting a predetermined fuse, wherein upon a selection by the selection module, a programming voltage is imposed for inducing a programming current through the predetermined fuse.  
         [0008]     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  
       [0009]      FIGS. 1A and 1B  present two schematic diagrams showing conventional fuse cell programming methods.  
         [0010]      FIGS. 2A  to  2 D present four schematic diagrams detailing various single-fuse cell implementations in accordance with the first through the fourth embodiments of the present invention.  
         [0011]      FIGS. 3A and 3B  present two schematic diagrams detailing various multiple-fuse cell implementations in accordance with the fifth and the sixth embodiments of the present invention. 
     
    
     DESCRIPTION  
       [0012]     The present invention provides apparatuses and methods for allowing multiple fuses to share a single program device within a fuse cell to save silicon area. The present invention proposes the idea of grouping multiple fuses in a fuse cell to share a single programming device. Since programming is only performed on one fuse at a time, it is not necessary to have a programming device for each fuse. By implementing a selection mechanism to select which fuse is to be programmed within a fuse cell, the number of program devices can be reduced dramatically since multiple electrical fuses can share one programming device.  
         [0013]     Detail descriptions for embodiments of this invention will show how this invention can work in a one- or two-dimensional array of fuse cells. Methods of implementing sense amplifiers within the fuse cells to allow logic state data output are also demonstrated to further show how, by allowing multiple electrical fuses to share a single programming device, silicon area may be better utilized without causing deterioration to operational performance.  
         [0014]      FIG. 1A  presents a schematic diagram  102  showing how an electrical fuse is programmed using a NMOS programming device, while  FIG. 1B  presents a schematic diagram  104  showing how an electrical fuse is programmed using a PMOS programming device. In the schematic diagram  102 , an electrical fuse  106  is placed between a NMOS programming device  108  and a high voltage source VDDQ. In the schematic diagram  104 , a PMOS programming device  110  is placed between an electrical fuse  112  and a high voltage source VDDQ. A “Select” control signal enters through either a select line  114  or a select line  116 , when either the electrical fuse  106  or  112  is assigned to be programmed.  
         [0015]     The programming devices  108  and  110  are large in physical size since large currents are required to program electrical fuses, such as the electrical fuses  106  and  112 . The conventional method of programming electrical fuses requires one program device for each fuse. This method is extremely inefficient and costly since each fuse requires a separate programming device. In a large array of fuses, the large programming devices will take up massive area within a silicon environment.  
         [0016]      FIG. 2A  presents a schematic diagram  200  showing how two electrical fuses  202  and  204  share a single programming device  206  within a fuse cell  208  in accordance with the first embodiment of the present invention. Both electrical fuses  202  and  204  are connected to a high voltage source VDDQ through a selection module such as multiplexers  210  and  212 , respectively. When the electrical fuse  202  or  204  needs to be programmed, a programming selection signal will enter through a “Select” line  214 , commanding the programming device  206  to program one of the electrical fuses. Control signals coming in through the fuse select lines such as two fuse selection signals FS 0  and FS 1  will enter the multiplexers  210  and  212  to close one of the multiplexers, thereby allowing one of the electrical fuses to be programmed.  
         [0017]     For example, if the electrical fuse  202  needs to be programmed, the high voltage source VDDQ will rise in order to provide enough current to break the electrical fuse  202 . Control signal will enter the programming device  206  through the “Select” line  214  and command it to program the electrical fuse  202  by turning on, in this example, the NMOS transistor within the programming device  206 . Incoming signals will also appear at the fuse select line FS 0 , which commands the multiplexer  210  to close. This opens up a path for the high voltage source VDDQ to provide the current necessary to program the electrical fuse  202 .  
         [0018]     While the programming device  206  is shown to be a single NMOS device, it is nevertheless understood by those skilled in the art that the programming device  206  may have other NMOS-type or PMOS-type configurations. In addition, the multiplexers  210  and  212  may also be NMOS-type, PMOS-type, or CMOS-type, without deviating from the spirit of this invention. In fact, the multiplexers  210  and  212  can be combined into one multiplexer in this embodiment with the fuse selection signal FS 0  and FS 1  complementary to each other so that the programming current is either passing through the fuse  202  or  204  at any round of programming. In essence, the function of the selection module is to allow VDDQ to be coupled to one and only one predetermined fuse at any particular round of programming. To meet this need, the selection module is essential an N-to-one multiplexer where “N” is the total number of fuses the fuse cell. In the simplest example, each fuse is controlled by one fuse selection signal and one multiplexer.  
         [0019]      FIG. 2B  presents a schematic diagram  216  showing how two electrical fuses  220  and  222  share a single programming device  224  within a fuse cell  218  in accordance with the second embodiment of the present invention. The fuse cell  218  is implemented with an input select device  226  and an output select device  228  to allow the construction of a one- or two-dimensional fuse array. The electrical fuses  220  and  222  are also connected to the high voltage source VDDQ through, respectively, multiplexers  230  and  232 , which are controlled, respectively, by fuse signal lines FS 0  and FS 1 .  
         [0020]     For example, when the electrical fuse  222  needs to be programmed, a Y-select line (YSELB) will provide a low signal to command the input select device  226  to turn on, thereby allowing a high input signal from a write wordline (WWL) to enter the programming device  224  and turning on, in this example, the NMOS transistor therein. The control signal from the fuse signal line FS 1  will close the multiplexer  232 , thereby allowing the high voltage source VDDQ to provide the current necessary for the programming device  224  to program the electrical fuse  222 .  
         [0021]     It is also possible to read data by ensuring that the NMOS transistor in the programming device  224  is off and by inputting a low signal through a read wordline (RWLB) to turn on the output select device  228 . This can allow the signal (e.g., an electrical parameter value) at a node  234  to output through a read bit line (RBL). For example, if the electrical fuse  222 , which is previously programmed, needs to be checked to ensure that it is properly programmed, the fuse select line FS 1  can input a signal to close the multiplexer  232 . Since the electrical fuse  222  has already been blown due to previous programming, the high voltage source VDDQ will be hard to reach the node  234 . As such, RBL will have a low output. To check the electrical fuse  220 , the fuse select line FS 0  will need to input a signal to close the multiplexer  230 . This allows the high voltage supply VDDQ to reach the node  234 , thereby providing a high signal output to RBL.  
         [0022]     While the electrical fuses  220  and  222  are shown to connect to the programming device  224  which contains an NMOS transistor, it is nevertheless understood by those skilled in the art that that PMOS-type devices may also be used as a programming device for this invention, whereas input and output select devices  226  and  228  can also be NMOS-type, PMOS-type, or zero threshold transistors (i.e., zero-V t  MOS devices) within the scope of this invention.  
         [0023]      FIG. 2C  presents a schematic diagram  242  demonstrating how a sense amplifier  238  may be used to provide an output of data in logic state “0” or “1” rather than resistance values in accordance with the third embodiment of the present invention. This output, as illustrated by the black arrow, is generated by the sense amplifier  238 , which detects very small changes in the voltage of bit lines. The schematic diagram  242  is similar to the schematic diagram  200  in  FIG. 2A  except that the sense amplifier  238 , which detects the high voltage source VDDQ, is added. In this embodiment, whether or not the multiplexers  246  and  248  are closed, the sense amplifier  238  provides a logic state output to determine if the fuses are programmed or not.  
         [0024]      FIG. 2D  presents a schematic diagram  244  demonstrating how a sense amplifier  240  may be used to provide an output of RBL, as previously illustrated in  FIG. 2B , relative to a pre-determined reference voltage, in accordance with the fourth embodiment of the present invention. The schematic diagram  244  is similar to the schematic diagram  216  except that the sense amplifier  240  is added at the output of an output select device  250 . When a signal comes in from a read wordline (RWLB) to turn on the output select device  250  and a PMOS device  252 , the sense amplifier  240  will be able to determine the logic state for either one of the two electrical fuses  254  or  256 , depending on which of the two multiplexers  258  or  260  is closed.  
         [0025]     If the electrical fuse  256  is to be measured for its state, a fuse select line FS 1  will command the multiplexer  260  to close, thereby providing a path for voltage to reach the electrical fuse  256 . If the electrical fuse  256  has already been broken through previous programming, a node  262  will not have a signal. The RWLB will need to have a low signal in order to turn on the output select device  250  and the PMOS device  252  to allow the sense amplifier  240  to determine if the resistance value at the node  262  is logically high or low in comparison with a reference resistor,  264 . By comparing the resistance value of the electrical fuse  256  with a reference resistor  264 , the sense amplifier  240  may conclude that the electrical fuse  256  has already been blown and programmed. It is also important for a Y-select line (YSELB) to input a high signal to an input select device  266 , thereby turning it off and not allowing any signal to enter a programming device  268  through a write wordline (WWL). This prevents the node  262  from being grounded during the reading process.  
         [0026]     Similarly, if the electrical fuse  254 , which as an example is non-programmed, the RWLB will again provide a low signal to turn on the output select device  250  and the PMOS device  252  to allow the sense amplifier  240  to operate. The YSELB will input a high signal to the input select device  266  during the reading process to prevent the programming device  268  from turning on, thereby grounding the node  262 . The multiplexer  258  will be closed, thus allowing voltage to pass through the electrical fuse  254  to reach the node  262 . The sense amplifier  240  will compare the resistance of the electrical fuse  254  with comparison to the reference resistor  264  to determine whether or not the electrical fuse  254  has been blown.  
         [0027]     Sense amplifiers can also be implemented in fuse cell arrays.  FIG. 3A  presents a schematic diagram  300  showing a one-dimensional array of 8 fuse cells  302  in accordance with the fifth embodiment of the present invention. The array is set up in an 8-by-1 configuration. The fuse cells  302  are similar to the fuse cell, which allows two electrical fuses to share one programming device. Each electrical fuse is connected to the high voltage source VDDQ through one of the multiplexers  304  or  306 , which are respectively controlled by the fuse select lines FS 0  and FS 1 . The fuse cell that needs to be programmed will be selected by “Select” signals  0  through  7 . A select line is connected to each programming device within the array of fuse cells  302 . By selecting a certain select signal and closing the correct multiplexer, a predetermined electrical fuse can be programmed when the high voltage source VDDQ provides the necessary current for the programming device.  
         [0028]     For example, if an electrical fuse  308  is to be programmed, a control signal will enter a programming device  310  through a select line  312  and command it to program the electrical fuse  308  by turning on, in this example, the NMOS transistor within the programming device  310 . Incoming signals will also appear at the fuse select line FS 0  commanding the multiplexer  304  to close. This opens up a path for the high voltage source VDDQ to provide the current necessary to break the electrical fuse  308 .  
         [0029]     By implementing fuses cells where two electrical fuses sharing one program device, the number of available fuses is effectively doubled without wasting extra silicon area for larger number of large programming devices. Note that fuse cells used in such array is merely an embodiment of this invention and it can vary since it is not limited to only two fuses per cell. For example a 4-to-1 selection module such as a 4-to-1 multiplexer can be used to select one of four fuses to be programmed at any time. As such, each fuse cell can have four fuses sharing one programming device. Similarly, an x-to-1 selection module combined with a programming device can control “x” number of fuses to be programmed wherein “x” is an integer or most likely an even integer.  
         [0030]      FIG. 3B  presents a schematic diagram  314  illustrating a two-dimensional array of 64 fuse cells  316  in accordance with the sixth embodiment of the present invention. The array is set up in an 8-by-8 configuration. All 64 fuse cells are similar to the fuse cell  218  in  FIG. 2B , which allows two electrical fuses to share one programming device in each fuse cell. As shown, the 64 fuse cells are arranged in 8 rows and 8 columns as shown. This two-dimensional array is controlled by various selection signals. With incoming signals from various Y-select lines (YSELBs)  318 , various write wordlines (WWLs)  320 , and fuse select lines FS 0  and FS 1 , an exact electrical fuse can be located for programming. Signals from YSELBs  318  can determine the column location of the fuse cell that contains the electrical fuse that needs to be programmed, while signals from WWLs  320  can determine the row location. The fuse select lines FS 0  and FS 1  control if either the multiplexer  322  or  324  will close. With the exact fuse cell selected and the correct multiplexer closed, a specific electrical fuse can be located for the programming process.  
         [0031]     For example, if an electrical fuse  326  is to be programmed, a Y-select line YSEL 7 B will provide a low signal to turn on an input select device  328 , thus allowing a high input signal from a write wordline (WWL 0 ) to enter a programming device  330 . Meanwhile, the control signal from the fuse signal line FS 1  will close the multiplexer  324 , thus allowing the high voltage source VDDQ to provide the current necessary for the programming device  330  to program the electrical fuse  326 .  
         [0032]     Since the fuse cells  316  are implemented with both input and output select devices, it is possible to read the state of a certain fuse if specific address of the fuse is provided. RWLs  332  can provide a low signal to turn on the output select devices for a row of fuse cells  316 . YSELBs  318  will provide the column location of the certain electrical fuse. With the row and the column location along with a proper signal from the fuse select lines FS 0  or FS 1 , a specific electrical fuse can be precisely located for in a read operation. The results from this reading process may exit through various read bit lines (RBLs)  334 .  
         [0033]     If the previously programmed electrical fuse  326  is to be read for its state, the read wordline RWL 0 B will input a low signal, thereby turning on the output select devices of an entire row of the fuse cells  316 , including the output select device  336 . The Y-select line YSEL 7 B will assist in locating the specific fuse cell by providing the column address of the fuse cell. The fuse select line FS 1  will also command the multiplexer  324  to close. Since the electrical fuse  326  has already been programmed due to previous programming, high voltage supply VDDQ will be hard to reach a node  338 . As such, a read bit line RBL 7  will have a low output.  
         [0034]     The above illustration provides many different 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.  
         [0035]     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.