US20030230787A1 - Reducing fuse programming time for non-volatile storage of data - Google Patents

Reducing fuse programming time for non-volatile storage of data Download PDF

Info

Publication number
US20030230787A1
US20030230787A1 US10/170,428 US17042802A US2003230787A1 US 20030230787 A1 US20030230787 A1 US 20030230787A1 US 17042802 A US17042802 A US 17042802A US 2003230787 A1 US2003230787 A1 US 2003230787A1
Authority
US
United States
Prior art keywords
value
fuse circuits
count number
fuse
logical value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
US10/170,428
Other versions
US6653711B1 (en
Inventor
Vijayakumar Dhanasekaran
Raghu Srinivasa
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Texas Instruments Inc filed Critical Texas Instruments Inc
Priority to US10/170,428 priority Critical patent/US6653711B1/en
Assigned to TEXAS INSTRUMENTS INCORPORATED reassignment TEXAS INSTRUMENTS INCORPORATED ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: TEXAS INSTRUMENTS (INDIA) PRIVATE LIMITED, DHANASEKARAN, VIJAYAKUMAR, SRINIVASA, RAGHU NANDAN
Application granted granted Critical
Publication of US6653711B1 publication Critical patent/US6653711B1/en
Publication of US20030230787A1 publication Critical patent/US20030230787A1/en
Adjusted expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C17/00Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards
    • G11C17/14Read-only memories programmable only once; Semi-permanent stores, e.g. manually-replaceable information cards in which contents are determined by selectively establishing, breaking or modifying connecting links by permanently altering the state of coupling elements, e.g. PROM
    • G11C17/18Auxiliary circuits, e.g. for writing into memory

Definitions

  • the present invention relates to integrated circuits, and more specifically to a method and apparatus for reducing fuse programming time for non-volatile storage of data in an integrated circuit.
  • Non-volatile data data stored in non-volatile manner. Data stored in non-volatile manner generally continues existence on an integrated circuit even when the integrated circuit (storing the data) is powered off and turned on again.
  • One problem often encountered with such storage in integrated circuits is that the data value may not be known prior to completion of manufacturing of an integrated circuit. For example, in an approach often known as trimming, a desired impedance value is attained by using multiple parallel impedances, and turning on/off only some of the impedances. Trimming may be necessary, for example, because attaining precise desired impedance value is often not practicable due to process variations or imprecision of manufacturing technologies.
  • Turning on/off of each impedance may be controlled by a bit, and the bits together form non-volatile data.
  • the specific impedances to turn on/off are generally known only after measurements are made on the manufactured integrated circuits. Accordingly, a desired value for the non-volatile data (which controls the specific impedances turned on or off) to be stored may be known only after completion of manufacturing.
  • fuse circuit associated with (or to generate) each bit (non-volatile bit).
  • a fuse circuit generates one logical value if blown-off, and the other logical value otherwise.
  • the output values generated by many such fuses form the desired non-volatile data.
  • the blowing-off of fuses may be referred to as fuse programming.
  • the fuse circuits corresponding to bits providing one logical value may be blown off. Accordingly, the specific impedances turned on/off may be controlled after manufacturing of integrated circuits is complete by appropriate fuse programming.
  • the present invention reduces the amount of time required for fuse programming when implementing a non-volatile data storage.
  • fuse circuits generating corresponding outputs are provided. Each fuse circuit is associated with a corresponding bit position of a desired value. A first count and a second count respectively representing the number of logical ones and zeros in the desired value are generated.
  • a set of fuse circuits at bit positions equaling the logical value with a smaller one of the two counts are blown.
  • the outputs of the fuse circuits are inverted if the blown set of fuse circuits are designed to generate the logical value associated with the larger one of the two counts after being blown.
  • the inversion of the outputs of fuse circuits is implemented using another fuse and XOR gates.
  • Each XOR gate accepts one of the fuse circuit outputs and the output of the another fuse circuit (XOR fuse circuit).
  • the XOR fuse circuit is implemented to generate a 1 if the blown fuses are designed to generate a logical value associated with the larger one of the two counts. As a result, each XOR gate inverts the corresponding fuse circuit output.
  • FIG. 1 is a block diagram illustrating the details of an integrated circuit in an embodiment of the present invention
  • FIG. 2 is a flow chart illustrating a method by which fuse programming time may be reduced in implementing a non-volatile storage which stores a desired data value according to an aspect of the present invention
  • FIG. 3 is a circuit diagram illustrating the details of a non-volatile storage in an embodiment of the present invention
  • FIG. 4 is a circuit diagram illustrating the details of an embodiment of a fuse circuit
  • FIG. 5 is a circuit diagram of an amplifier illustrating an example use of the approach of the present invention.
  • An aspect of the present invention reduces the amount of time required to program (store) non-volatile data in integrated circuits.
  • An embodiment according to the present invention may contain a fuse circuit associated with each bit of the non-volatile data to be stored. The embodiment may then determine a first count and a second count respectively representing the number of logical zeros and ones contained in the data to be stored. Only the fuse circuits corresponding to the logical value (0 or 1) having the smaller count are blown off. The outputs of all the fuse circuits are inverted if needed to obtain the desired non-volatile data.
  • the number of fuse circuits to be blown may not exceed half the aggregate number of fuse circuits generating the non-volatile data. As a result, the time required to perform fuse programming and the associated costs for testing integrated circuits may be minimized.
  • FIG. 1 is a block diagram illustrating the details of an integrated circuit that stores non-volatile data.
  • Integrated circuit 100 is shown containing non-volatile data storage 110 and application block 150 . Each block is described in further detail below.
  • Application block 150 is shown receiving N-bits of data on paths 115 - 1 through 115 -N respectively.
  • Application block 150 may perform any operation(s) as desired by a designer.
  • Application block 150 may use the provided N-bit value in various ways.
  • the N-bit value may be represented as a version number of integrated circuit 100 which is read by user applications using application block 150 .
  • An embodiment in which the N-bit value is used to trim various impedances in application block 150 is described below for illustration.
  • Non-volatile data storage 110 implemented according to an aspect of the present invention stores the data in a non-volatile manner and provides the stored data bits on paths 115 - 1 through 115 -N.
  • the manner in which non-volatile data storage 110 may be implemented to provide desired bits (value) on paths 115 - 1 through 115 -N is described below in further detail with reference to several examples.
  • FIG. 2 is a flow-chart illustrating a method by which a non-volatile data storage can be implemented according to an aspect of the present invention. The method is described with reference to FIG. 1 for illustration. However, the method can be implemented in several other embodiments as will be apparent to one skilled in the relevant arts based on the disclosure provided herein.
  • the method begins in step 201 in which control passes to step 210 .
  • a fuse circuit is implemented associated with a corresponding bit position of a data value to be generated.
  • each fuse circuit may be made to eventually provide a desired bit value at the corresponding bit position while minimizing the aggregate time required for fuse programming (“blowing off some of the fuse circuits”) of integrated circuit 100 .
  • step 215 the desired data value to be generated by non-volatile data storage 110 is determined.
  • the data value is generally determined according various requirements for which integrated circuit 100 is designed. The manner in which the data value can be determined is described with an example in a section below.
  • step 220 a determination of a first count representing the number of bits having a value of 1, and in step 230 a determination of a second count representing the number of bits having a value of 0 are determined.
  • the two determinations may be performed by counting the number of ones and zeros.
  • step 240 the fuse circuits at bit positions equaling the logical value with less count are blown.
  • step 250 a determination is made as to whether the blown fuse circuits would generate the logical value associated with the larger count. As may be readily appreciated, all the fuse circuits together in such a situation would generate a ones complement of the desired value.
  • control passes to step 270 , where are all output bits are inverted to generate the desired value, and control passes to step 299 . If the blown fuse circuits are designed to generate the logical value associated with the smaller count, the output of the fuse circuits represents the desired value, and control passes to step 299 . The method ends in step 299 .
  • FIG. 3 is a circuit diagram illustrating the details of a non-volatile data storage in an embodiment of the present invention.
  • Non-volatile data storage 110 is shown containing fuse circuits 310 and 320 - 1 through 320 -N, and XOR gates 330 - 1 through 330 -N. Each component is described below in detail.
  • Fuse circuits 320 - 1 through 320 -N are respectively associated with a corresponding one of the N-bit data value sought to be generated using non-volatile data storage 110 .
  • Each fuse circuit generates one logical value when blown and the other value otherwise. The operation and implementation of an example fuse circuit is described below.
  • Fuse circuit 310 and XOR gates 330 - 1 through 330 -N together (an example of an inverting circuit) invert the output values of fuse circuits 320 - 1 through 320 -N if necessary only.
  • the fuse circuits associated with bit positions equaling the logical value with lower count are always blown, and may need to be inverted to generate the desired value. Such an objective may be achieved as described below.
  • Fuse circuit 310 is blown or left without blowing to cause a one to be generated when the outputs of fuse circuit 320 - 1 through 320 -N need to be inverted, and a zero otherwise.
  • XOR gates 330 - 1 through 330 -N respectively invert the output values generated by fuse circuits 320 - 1 through 320 -N when fuse circuit 310 generates a one and passes through the output values of fuse circuits 320 - 1 through 320 -N unaltered otherwise.
  • Other circuits such as XNOR gates may also be used to perform inversion.
  • the specific fuse circuits (of 320 - 1 through 320 -N) to be blown are determined based on a desired value sought to be generated from (or stored in) non-volatile data storage 110 .
  • a decision on blowing fuse circuit 310 is also made depending on whether the output values of fuse circuits 320 - 1 through 320 -N are to be inverted or not. Accordingly, non-volatile data storage 110 may be implemented while reducing the fuse programming time. The description is continued with respect to an example implementation of a fuse circuit.
  • FIG. 4 is a circuit diagram illustrating the details of an embodiment of a fuse circuit.
  • the fuse circuit is described as corresponding to fuse circuit 320 - 1 for illustration. However, the remaining fuse circuits ( 310 and 320 - 2 through 320 -N) of FIG. 3 may also be implemented similarly.
  • Fuse circuit 320 - 1 shown contains fuse element 401 , NMOS transistors 405 and 410 , inverting latch 425 and supply voltage of 3.3 v. Each component is described below.
  • Fuse element 401 is made of material such as thin filament of poly silicon, which burns when high current passes through the filament. Burning fuse element 401 causes fuse circuit 320 - 1 to be considered blown. Fuse element 401 may be implemented using one of many known ways.
  • fuse element 401 When burnt, fuse element 401 operates as a high impedance and thus causes a logical value of zero to be provided as an input to inverting latch 425 . If not burnt, fuse element 401 operates as a low impedance and causes a logical value of one to be applied as input to the latch.
  • NMOS transistor 405 is used to burn fuse element according to the desired data value. Applying high voltage to the gate terminal of transistor 405 causes fuse element 401 to burn as would be apparent to one skilled in the relevant arts.
  • NMOS transistor 410 is used to sense whether fuse element 401 is in a blown state or un-blown state. Due to the operation of NMOS transistor 410 , a high voltage (logical 1) is provided on path 420 when fuse element 401 is un-blown, and a low voltage level otherwise.
  • Inverting latch 425 latches the logical value represented by voltage at node 420 , and provides an inverted output on path 115 - 1 .
  • Inverting latch 425 can be implemented in a known way.
  • fuse circuit 401 when fuse circuit 401 is burnt, a voltage level of zero volts (representing zero logical value) is presented at node 420 . Inverting latch 425 inverts the zero logical value to cause a logical one to be generated on path 115 - 1 . Similarly, a logical zero is generated when fuse circuit 401 is not burnt. Accordingly, fuse circuit 320 - 1 generates logical one when burnt and zero otherwise. However, fuse circuits which generate 0 and 1 when burnt can be used in alternative embodiments.
  • FIG. 5 is a circuit diagram of an amplifier illustrating an example application of the approach of the present invention.
  • Differential amplifier 500 is shown containing operational amplifier 510 , resistors Ri, Ra and R- 1 through R-N, and switches 525 - 1 through 525 -N.
  • the resistance values are symmetric on both sides of operational amplifier 510 , the resistors in similar positions on both sides are shown with the same labels R- 1 through R-N.
  • Each component is described in further detail below.
  • a technique known as trimming is employed to attain a desired impedance for Za as described below.
  • resistors R- 1 to R-N are provided in parallel to resistor Ra.
  • Switches 525 - 1 through 525 -N respectively control whether a corresponding resistor R- 1 through R-N is connected in parallel to Ra. Only the resistors as necessary to attain a desired impedance value (Za), are activated by turning on the corresponding switch.
  • the set (zero or more) of resistors to be connected in parallel to resistor Ra are determined.
  • One logical value will need to be provided as input to the switches controlling the operation the resistors to be connected, and the other logical value otherwise.
  • the logical values at the respective bit positions determines the desired value to be generated by non-volatile data storage 110 .
  • the fuse elements to be burnt are determined as described above, which causes the corresponding fuse circuit to be blown.
  • the data generated by non-volatile data storage 110 causes the desired impedance value to be attained for Za.

Abstract

Multiple fuse circuits are used associated with a corresponding number of bits forming a desired value which may need to be stored in a non-volatile storage. Assuming the desired value contains a first count number of zeros and a second count number of ones, the fuse circuits at bit positions having values equaling the logical value with smaller count are blown. If the blown fuse circuits generate the logical value associated with larger one of the two counts, the outputs of all the fuse circuits are inverted. Thus, a desired value can be always generated while reducing the number of fuse circuits blown.

Description

    BACKGROUND OF THE INVENTION
  • 1. Field of the Invention [0001]
  • The present invention relates to integrated circuits, and more specifically to a method and apparatus for reducing fuse programming time for non-volatile storage of data in an integrated circuit. [0002]
  • 2. Related Art [0003]
  • Integrated circuits often store data (“non-volatile data”) in a non-volatile manner. Data stored in non-volatile manner generally continues existence on an integrated circuit even when the integrated circuit (storing the data) is powered off and turned on again. [0004]
  • One problem often encountered with such storage in integrated circuits is that the data value may not be known prior to completion of manufacturing of an integrated circuit. For example, in an approach often known as trimming, a desired impedance value is attained by using multiple parallel impedances, and turning on/off only some of the impedances. Trimming may be necessary, for example, because attaining precise desired impedance value is often not practicable due to process variations or imprecision of manufacturing technologies. [0005]
  • Turning on/off of each impedance may be controlled by a bit, and the bits together form non-volatile data. The specific impedances to turn on/off are generally known only after measurements are made on the manufactured integrated circuits. Accordingly, a desired value for the non-volatile data (which controls the specific impedances turned on or off) to be stored may be known only after completion of manufacturing. [0006]
  • One approach often used in such situations is to use a fuse circuit associated with (or to generate) each bit (non-volatile bit). In general, a fuse circuit generates one logical value if blown-off, and the other logical value otherwise. The output values generated by many such fuses form the desired non-volatile data. The blowing-off of fuses may be referred to as fuse programming. [0007]
  • Thus, in the above trimming example, the fuse circuits corresponding to bits providing one logical value may be blown off. Accordingly, the specific impedances turned on/off may be controlled after manufacturing of integrated circuits is complete by appropriate fuse programming. [0008]
  • In general, it is desirable to reduce the amount of time required for fuse programming, for example, to reduce the cost associated with blowing fuse circuits. [0009]
  • SUMMARY OF THE INVENTION
  • The present invention reduces the amount of time required for fuse programming when implementing a non-volatile data storage. In an embodiment, fuse circuits generating corresponding outputs are provided. Each fuse circuit is associated with a corresponding bit position of a desired value. A first count and a second count respectively representing the number of logical ones and zeros in the desired value are generated. [0010]
  • According to an aspect of the present invention, a set of fuse circuits at bit positions equaling the logical value with a smaller one of the two counts are blown. The outputs of the fuse circuits are inverted if the blown set of fuse circuits are designed to generate the logical value associated with the larger one of the two counts after being blown. [0011]
  • As a result, no more than half of the fuse circuits may need to be blown for any desired value to be implemented in a non-volatile data storage. [0012]
  • In an embodiment, the inversion of the outputs of fuse circuits is implemented using another fuse and XOR gates. Each XOR gate accepts one of the fuse circuit outputs and the output of the another fuse circuit (XOR fuse circuit). The XOR fuse circuit is implemented to generate a 1 if the blown fuses are designed to generate a logical value associated with the larger one of the two counts. As a result, each XOR gate inverts the corresponding fuse circuit output. [0013]
  • Further features and advantages of the invention, as well as the structure and operation of various embodiments of the invention, are described in detail below with reference to the accompanying drawings. In the drawings, like reference numbers generally indicate identical, functionally similar, and/or structurally similar elements. The drawing in which an element first appears is indicated by the leftmost digit(s) in the corresponding reference number. [0014]
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The present invention will be described with reference to the accompanying drawings, wherein: [0015]
  • FIG. 1 is a block diagram illustrating the details of an integrated circuit in an embodiment of the present invention; [0016]
  • FIG. 2 is a flow chart illustrating a method by which fuse programming time may be reduced in implementing a non-volatile storage which stores a desired data value according to an aspect of the present invention; [0017]
  • FIG. 3 is a circuit diagram illustrating the details of a non-volatile storage in an embodiment of the present invention; [0018]
  • FIG. 4 is a circuit diagram illustrating the details of an embodiment of a fuse circuit; and [0019]
  • FIG. 5 is a circuit diagram of an amplifier illustrating an example use of the approach of the present invention.[0020]
  • DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
  • 1. Overview and Discussion of the Invention [0021]
  • An aspect of the present invention reduces the amount of time required to program (store) non-volatile data in integrated circuits. An embodiment according to the present invention may contain a fuse circuit associated with each bit of the non-volatile data to be stored. The embodiment may then determine a first count and a second count respectively representing the number of logical zeros and ones contained in the data to be stored. Only the fuse circuits corresponding to the logical value (0 or 1) having the smaller count are blown off. The outputs of all the fuse circuits are inverted if needed to obtain the desired non-volatile data. [0022]
  • Due to such an approach, the number of fuse circuits to be blown may not exceed half the aggregate number of fuse circuits generating the non-volatile data. As a result, the time required to perform fuse programming and the associated costs for testing integrated circuits may be minimized. [0023]
  • Several aspects of the invention are described below with reference to example devices for illustration. It should be understood that numerous specific details, relationships, and methods are set forth to provide a full understanding of the invention. One skilled in the relevant art, however, will readily recognize that the invention can be practiced without one or more of the specific details, or with other methods, etc. In other instances, well-known structures or operations are not shown in detail to avoid obscuring the invention. [0024]
  • 2. Integrated Circuit [0025]
  • FIG. 1 is a block diagram illustrating the details of an integrated circuit that stores non-volatile data. Integrated circuit [0026] 100 is shown containing non-volatile data storage 110 and application block 150. Each block is described in further detail below.
  • [0027] Application block 150 is shown receiving N-bits of data on paths 115-1 through 115-N respectively. Application block 150 may perform any operation(s) as desired by a designer. Application block 150 may use the provided N-bit value in various ways. For example, the N-bit value may be represented as a version number of integrated circuit 100 which is read by user applications using application block 150. An embodiment in which the N-bit value is used to trim various impedances in application block 150 is described below for illustration.
  • [0028] Non-volatile data storage 110 implemented according to an aspect of the present invention stores the data in a non-volatile manner and provides the stored data bits on paths 115-1 through 115-N. The manner in which non-volatile data storage 110 may be implemented to provide desired bits (value) on paths 115-1 through 115-N is described below in further detail with reference to several examples.
  • 3. Method [0029]
  • FIG. 2 is a flow-chart illustrating a method by which a non-volatile data storage can be implemented according to an aspect of the present invention. The method is described with reference to FIG. 1 for illustration. However, the method can be implemented in several other embodiments as will be apparent to one skilled in the relevant arts based on the disclosure provided herein. The method begins in [0030] step 201 in which control passes to step 210.
  • In [0031] step 210, a fuse circuit is implemented associated with a corresponding bit position of a data value to be generated. As described below, each fuse circuit may be made to eventually provide a desired bit value at the corresponding bit position while minimizing the aggregate time required for fuse programming (“blowing off some of the fuse circuits”) of integrated circuit 100.
  • In [0032] step 215, the desired data value to be generated by non-volatile data storage 110 is determined. The data value is generally determined according various requirements for which integrated circuit 100 is designed. The manner in which the data value can be determined is described with an example in a section below.
  • In [0033] step 220, a determination of a first count representing the number of bits having a value of 1, and in step 230 a determination of a second count representing the number of bits having a value of 0 are determined. The two determinations may be performed by counting the number of ones and zeros.
  • In [0034] step 240, the fuse circuits at bit positions equaling the logical value with less count are blown. In step 250, a determination is made as to whether the blown fuse circuits would generate the logical value associated with the larger count. As may be readily appreciated, all the fuse circuits together in such a situation would generate a ones complement of the desired value.
  • Accordingly control passes to step [0035] 270, where are all output bits are inverted to generate the desired value, and control passes to step 299. If the blown fuse circuits are designed to generate the logical value associated with the smaller count, the output of the fuse circuits represents the desired value, and control passes to step 299. The method ends in step 299.
  • From the above, it may be appreciated that utmost half the number of fuses may need to be blown among the fuse circuits implemented associated with the respective bit positions of the desired value. Additional circuitry may be needed for the [0036] steps 250 and 270. An example implementation of the method of FIG. 2 is described below.
  • 4. Non-Volatile Storage [0037]
  • FIG. 3 is a circuit diagram illustrating the details of a non-volatile data storage in an embodiment of the present invention. [0038] Non-volatile data storage 110 is shown containing fuse circuits 310 and 320-1 through 320-N, and XOR gates 330-1 through 330-N. Each component is described below in detail.
  • Fuse circuits [0039] 320-1 through 320-N are respectively associated with a corresponding one of the N-bit data value sought to be generated using non-volatile data storage 110. Each fuse circuit generates one logical value when blown and the other value otherwise. The operation and implementation of an example fuse circuit is described below.
  • [0040] Fuse circuit 310 and XOR gates 330-1 through 330-N together (an example of an inverting circuit) invert the output values of fuse circuits 320-1 through 320-N if necessary only. As described above with reference to steps 250 and 270 of FIG. 2, the fuse circuits associated with bit positions equaling the logical value with lower count are always blown, and may need to be inverted to generate the desired value. Such an objective may be achieved as described below.
  • [0041] Fuse circuit 310 is blown or left without blowing to cause a one to be generated when the outputs of fuse circuit 320-1 through 320-N need to be inverted, and a zero otherwise. XOR gates 330-1 through 330-N respectively invert the output values generated by fuse circuits 320-1 through 320-N when fuse circuit 310 generates a one and passes through the output values of fuse circuits 320-1 through 320-N unaltered otherwise. Other circuits such as XNOR gates may also be used to perform inversion.
  • Thus, in operation, the specific fuse circuits (of [0042] 320-1 through 320-N) to be blown are determined based on a desired value sought to be generated from (or stored in) non-volatile data storage 110. A decision on blowing fuse circuit 310 is also made depending on whether the output values of fuse circuits 320-1 through 320-N are to be inverted or not. Accordingly, non-volatile data storage 110 may be implemented while reducing the fuse programming time. The description is continued with respect to an example implementation of a fuse circuit.
  • 5. Fuse Circuit [0043]
  • FIG. 4 is a circuit diagram illustrating the details of an embodiment of a fuse circuit. The fuse circuit is described as corresponding to fuse circuit [0044] 320-1 for illustration. However, the remaining fuse circuits (310 and 320-2 through 320-N) of FIG. 3 may also be implemented similarly. Fuse circuit 320-1 shown contains fuse element 401, NMOS transistors 405 and 410, inverting latch 425 and supply voltage of 3.3 v. Each component is described below.
  • Fuse element [0045] 401 is made of material such as thin filament of poly silicon, which burns when high current passes through the filament. Burning fuse element 401 causes fuse circuit 320-1 to be considered blown. Fuse element 401 may be implemented using one of many known ways.
  • When burnt, fuse element [0046] 401 operates as a high impedance and thus causes a logical value of zero to be provided as an input to inverting latch 425. If not burnt, fuse element 401 operates as a low impedance and causes a logical value of one to be applied as input to the latch.
  • [0047] NMOS transistor 405 is used to burn fuse element according to the desired data value. Applying high voltage to the gate terminal of transistor 405 causes fuse element 401 to burn as would be apparent to one skilled in the relevant arts. NMOS transistor 410 is used to sense whether fuse element 401 is in a blown state or un-blown state. Due to the operation of NMOS transistor 410, a high voltage (logical 1) is provided on path 420 when fuse element 401 is un-blown, and a low voltage level otherwise.
  • Inverting [0048] latch 425 latches the logical value represented by voltage at node 420, and provides an inverted output on path 115-1. Inverting latch 425 can be implemented in a known way.
  • Thus in operation, when fuse circuit [0049] 401 is burnt, a voltage level of zero volts (representing zero logical value) is presented at node 420. Inverting latch 425 inverts the zero logical value to cause a logical one to be generated on path 115-1. Similarly, a logical zero is generated when fuse circuit 401 is not burnt. Accordingly, fuse circuit 320-1 generates logical one when burnt and zero otherwise. However, fuse circuits which generate 0 and 1 when burnt can be used in alternative embodiments.
  • 6. Example Application [0050]
  • FIG. 5 is a circuit diagram of an amplifier illustrating an example application of the approach of the present invention. Differential amplifier [0051] 500 is shown containing operational amplifier 510, resistors Ri, Ra and R-1 through R-N, and switches 525-1 through 525-N. As the resistance values are symmetric on both sides of operational amplifier 510, the resistors in similar positions on both sides are shown with the same labels R-1 through R-N. Each component is described in further detail below.
  • Operation amplifier [0052] 510 amplifies an input signal according to a ratio of effective impedance at input (Zi) to across (Za). Assuming hypothetically that only Ri and Ra resistors are present/operational, Zi=Ri and Za=Ra. One problem in attaining a desired gain (within acceptable tolerance limits) is that it is often difficult to attain precise impedance values. Accordingly, a technique known as trimming is employed to attain a desired impedance for Za as described below.
  • Multiple resistors R-[0053] 1 to R-N are provided in parallel to resistor Ra. Switches 525-1 through 525-N respectively control whether a corresponding resistor R-1 through R-N is connected in parallel to Ra. Only the resistors as necessary to attain a desired impedance value (Za), are activated by turning on the corresponding switch.
  • Thus, by appropriate testing and measurement, the set (zero or more) of resistors to be connected in parallel to resistor Ra are determined. One logical value will need to be provided as input to the switches controlling the operation the resistors to be connected, and the other logical value otherwise. The logical values at the respective bit positions determines the desired value to be generated by [0054] non-volatile data storage 110. The fuse elements to be burnt are determined as described above, which causes the corresponding fuse circuit to be blown. The data generated by non-volatile data storage 110 causes the desired impedance value to be attained for Za.
  • 7. Conclusion [0055]
  • While various embodiments of the present invention have been described above, it should be understood that they have been presented by way of example only, and not limitation. Thus, the breadth and scope of the present invention should not be limited by any of the above described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents. [0056]

Claims (9)

What is claimed is:
1. A method of creating a non-volatile storage storing a desired data value, said desired data value containing a plurality of bit values at a corresponding plurality of bit positions, said desired data value containing a first count number of a first logical value and a second count number of second logical value, said method comprising:
providing a plurality of fuse circuits generating a corresponding plurality of outputs, wherein each of said plurality of fuse circuits is associated with a corresponding one of said plurality of bit positions;
blowing a set of fuse circuits at bit positions having values equaling the logical value with a smaller value of said first count number and said second count number, wherein said set of fuse circuits are contained in said plurality of fuse circuits; and
inverting all of said outputs if said set of fuse circuits are designed to generate the logical value with a larger value of said first count number and said second count number after being blown.
2. The method of claim 1, wherein said inverting is performed using another fuse circuit and a plurality of XOR gates.
3. A non-volatile storage storing a desired data value, said desired data value containing a plurality of bit values at a corresponding plurality of bit positions, said desired data value containing a first count number of a first logical value and a second count number of second logical value, said non-volatile storage comprising:
fuse circuit means for generating a corresponding plurality of outputs, wherein each of said plurality of fuse circuits is associated with a corresponding one of said plurality of bit positions;
means for blowing a set of fuse circuits at bit positions having values equaling the logical value with a smaller value of said first count number and said second count number, wherein said set of fuse circuits are contained in said plurality of fuse circuits; and
means for inverting all of as said outputs if said set of fuse circuits are designed to generate the logical value with a larger value of said first count number and said second count number after being blown.
4. The non-volatile storage of claim 1, wherein said means for inverting comprises an XOR gate or an XNOR gate receiving a corresponding one of said plurality of outputs as an input.
5. An integrated circuit comprising:
an application block receiving a desired data value, said desired data value containing a plurality of bit values at a corresponding plurality of bit positions, said desired data value containing a first count number of a first logical value and a second count number of second logical value;
non-volatile storage providing said desired data value, said non-volatile storage comprising:
a plurality of fuse circuits generating a corresponding plurality of outputs, wherein each of said plurality of fuse circuits is associated with a corresponding one of said plurality of bit positions; and
an inverting circuit to invert said plurality of outputs upon receiving one value of a input signal and passing through said plurality of outputs upon receiving another value of said input signal after being blown.
6. The integrated circuit of claim 5, wherein a set of fuse circuits are blown, wherein said set of fuse circuits are comprised in said plurality of fuse circuits, said set of fuse circuits corresponding to bit positions having values equaling the logical value with a smaller value of said first count number and said second count number, and wherein said input signal generates said one value if said set of fuse circuits are designed to generate the logical value with a larger value of said first count number and said second count number.
7. The integrated circuit of claim 6, wherein said inversion circuit comprises:
another fuse circuit which generates said input signal; and
a plurality of XOR gates receiving said input signal and a corresponding one of said plurality of outputs.
8. The integrated circuit of claim 6, wherein said non-volatile storage stores a version number of said integrated circuit.
9. The integrated circuit of claim 6, wherein said application block comprises a plurality impedances to be trimmed, each of said plurality of bit values controlling whether a corresponding one of said plurality of impedances is to be trimmed.
US10/170,428 2002-06-14 2002-06-14 Reducing fuse programming time for non-volatile storage of data Expired - Lifetime US6653711B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/170,428 US6653711B1 (en) 2002-06-14 2002-06-14 Reducing fuse programming time for non-volatile storage of data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/170,428 US6653711B1 (en) 2002-06-14 2002-06-14 Reducing fuse programming time for non-volatile storage of data

Publications (2)

Publication Number Publication Date
US6653711B1 US6653711B1 (en) 2003-11-25
US20030230787A1 true US20030230787A1 (en) 2003-12-18

Family

ID=29583834

Family Applications (1)

Application Number Title Priority Date Filing Date
US10/170,428 Expired - Lifetime US6653711B1 (en) 2002-06-14 2002-06-14 Reducing fuse programming time for non-volatile storage of data

Country Status (1)

Country Link
US (1) US6653711B1 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7215175B1 (en) 2004-09-01 2007-05-08 Sun Microsystems, Inc. Fuse sensing scheme with auto current reduction
KR101132402B1 (en) * 2005-04-13 2012-04-03 삼성전자주식회사 Dummy fuse device, electronic apparatus using the same and operating method of the dummy fuse device
JP2007250125A (en) * 2006-03-17 2007-09-27 Toshiba Corp Fuse latch circuit and semiconductor device
TW200807425A (en) * 2006-06-05 2008-02-01 Renesas Tech Corp Semiconductor device, unique ID of semiconductor device and method for verifying unique ID
KR101497456B1 (en) * 2008-04-29 2015-03-02 삼성전자주식회사 Security circuit having an electrical fuse rom and method of programming a security key

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141281A (en) * 1998-04-29 2000-10-31 Enhanced Memory Systems, Inc. Technique for reducing element disable fuse pitch requirements in an integrated circuit device incorporating replaceable circuit elements
US6438059B2 (en) * 2000-06-09 2002-08-20 Kabushiki Kaisha Toshiba Fuse programming circuit for programming fuses
US6574157B2 (en) * 2001-06-27 2003-06-03 Taiwan Semiconductor Manufacturing Co., Ltd. Modular memory structure having adaptable redundancy circuitry

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6141281A (en) * 1998-04-29 2000-10-31 Enhanced Memory Systems, Inc. Technique for reducing element disable fuse pitch requirements in an integrated circuit device incorporating replaceable circuit elements
US6438059B2 (en) * 2000-06-09 2002-08-20 Kabushiki Kaisha Toshiba Fuse programming circuit for programming fuses
US6574157B2 (en) * 2001-06-27 2003-06-03 Taiwan Semiconductor Manufacturing Co., Ltd. Modular memory structure having adaptable redundancy circuitry

Also Published As

Publication number Publication date
US6653711B1 (en) 2003-11-25

Similar Documents

Publication Publication Date Title
US5767732A (en) Circuit for permanently adjusting a circuit element value in a semiconductor integrated circuit using fuse elements
US7200064B1 (en) Apparatus and method for providing a reprogrammable electrically programmable fuse
US6949971B2 (en) Reference voltage generating circuit for outputting multi-level reference voltage using fuse trimming
US7254080B2 (en) Fuse circuit and electronic circuit
US7986024B2 (en) Fuse sensing scheme
US7110313B2 (en) Multiple-time electrical fuse programming circuit
CN107992157B (en) Electric fuse state reading circuit
JP2000200497A (en) Fuse deciding circuit and redundancy setting circuit of memory
KR20120016604A (en) The method of adaptively programming, testing and sorting magnetic random access memory array
WO2002001708A2 (en) Digital trimming of op amp offset voltage and quiescent current using non-volatile memory
JP2002305247A (en) Equipment and method for precise trimming of semiconductor device
KR102529357B1 (en) Systems and Methods for Providing Write Termination for One-Time Programmable Memory Cells
US20050225375A1 (en) Circuits associated with fusible elements for establishing and detecting of the states of those elements
US7304527B1 (en) Fuse sensing circuit
US6531914B2 (en) Internal voltage generation circuit
US6653711B1 (en) Reducing fuse programming time for non-volatile storage of data
JPH0845293A (en) Circuit and method for storage and retrieval of data
US7307864B2 (en) Semiconductor integrated circuit with fuse data read circuit
EP1586098B1 (en) Multiple trip point fuse latch device and test method of the fuse
JPH06195995A (en) Address-matching structure with reference to redundant structure of dram
US20050046472A1 (en) Data driving circuit and semiconductor memory device having the same
US5729551A (en) Space efficient column decoder for flash memory redundant columns
US7403432B2 (en) Differential read-out circuit for fuse memory cells
CN115273951B (en) Fuse trimming device and method
JP2002083928A (en) Semiconductor device and its trimming method

Legal Events

Date Code Title Description
AS Assignment

Owner name: TEXAS INSTRUMENTS INCORPORATED, TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:DHANASEKARAN, VIJAYAKUMAR;SRINIVASA, RAGHU NANDAN;TEXAS INSTRUMENTS (INDIA) PRIVATE LIMITED;REEL/FRAME:013032/0657;SIGNING DATES FROM 20020529 TO 20020610

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FPAY Fee payment

Year of fee payment: 12