Integrated circuit for the programming of a memory cell in a non-volatile memory register

Abstract: An integrated circuit for the programming of a memory cell in a non-volatile memory register, said memory cell comprising at least one programmable non-volatile memory element (TF;TF0,TF1) having a cotrol electrode and a supply electrode and being suitable to store one bit of information and a load circuit (LC;T0-T3) associated to said memory element (TF;TF0,TF1) to read the information stored therein, comprises switching means (TS;T4,T5), connected in series between the supply electrode of said at least one memory element (TF;TF0,TF1) and a respective data line (A;A,AN) carrying a datum to be programmed into said memory element (TF;TF0,TF1); the switching means are controlled by a signal (7) which determines the switching means (TS;T4,T5) to electrically connect the memory element (TF;TF0,TF1) to the data line (A;A,AN) when the memory cell of the non-volatile memory register is to be programmed.

Description: The present invention relates to an integrated circuit for the programming of a memory cell in a non-volatile memory register. Non-volatile memory registers are commonly used in memory device chips to implement redundancy. In such applications, address configurations corresponding to defective memory elements in the memory array of the memory device are stored in said non-volatile registers during the in-factory device testing, so that the defective memory elements can be replaced by redundant memory elements. In this way the manufacturing process yield is greatly improved. The memory registers must be non-volatile, since they must retain the information stored therein even in absence of the power supply, and not accessible to the end user. Depending on the particular kind of memory device, and on the manufacturing process, fuses or electrically programmable MOS transistors may be utilized as non-volatile memory elements for the memory registers. In general, redundancy provides for the existence of both rows and columns of redundant memory elements; each redundant row or column has an associated non-volatile register. A defective memory element in the memory matrix can be replaced by a redundant memory element by substituting either the matrix row or matrix column to which it belongs with a redundant row or column, respectively; this requires that the defective row or column address is stored during testing in a non-volatile register, which, in consequence, must be made up of a number of cells equal to the number of bits in the row or column address bus. During the memory device operation, each non-volatile memory register performs a comparison between the address configuration stored in it and the address currently supplied to the memory device and, if a matching occurs, the selection of the defective row or column is inhibited and in substitution the selection of the redundant row or column is enabled. According to a known circuital solution, adopted to implement redundancy in a Flash EEPROM device, each register cell comprises two programmable non-volatile memory elements, represented by two electrically erasable and programmable MOS transistors, connected to respective load transistors in latch configuration. The register cell further comprises a program load circuit comprising two pairs of selection transistors, the transistors in each pair being connected in series between a high voltage supply and a respective programmable MOS transistor. A first transistor in each pair is controlled by a first signal, supplied in common to all the cells of all the non-volatile memory registers, which is normally at the ground level, but when during the device testing a defective memory element is found is raised to the high voltage supply value to enable the programming of the programmable MOS transistors of the non-volatile registers. A second transistor in each pair is instead controlled by a selection signal which is used to select one particular non-volatile memory register among all those available, so that only the programmable MOS transistors of the selected memory register are programmed to store a particular address configuration corresponding to a defective matrix row or column. The control gates of the programmable MOS transistors in each register cell are controlled by two signals, one of which is the logical complement of the other, which during programming are connected either to ground or to the high voltage supply depending on the logical state of the bit of the address configuration which must be stored in the register cell. In other words, when the logical state of an address bit is to be memorized into the register cell, each programmable MOS transistor is connected to a high voltage supply through selection transistors, and the datum to be programmed is translated into a voltage applied to the control gate of the programmable MOS transistor: if the datum is a logical "0", the control gate potential is raised to, let's say, 12 V, while if the datum is a logical "1", the control gate potential is kept to the ground level. A register cell architecture such as described has some disadvantages: first of all it is necessary to supply said first signal, connected to the output of a ground/high-voltage switch, to all the cells of all the non-volatile memory registers: secondly, a number of different selection signals corresponding to the number of non-volatile memory registers must be generated, so that in each register a different address configuration can be programmed; thirdly, it is necessary to generate two complementary signals for each register cell to drive the control gates of the programmable MOS transistors. Furthermore, to prevent the programming current of the programmable MOS transistors from being reduced, the transistors in the program load circuit must be highly conductive, and occupy a significant area. Finally, it would be desirable to reduce the number of transistors of each program load circuit. EP-A-0 545 904 discloses an EEPROM in which data are supplied to the drain of a cell transistor during programming. In view of the state of the art described, the object of the present invention is to provide a non-volatile memory register for storing an address configuration of a defective row or column of a memory matrix, which is not affected by the abovementioned drawbacks. According to the present invention, such object is attained by means of an integrated circuit non-volatile memory device as defined in claim 1. In other words, if for example the programmable memory element is represented by a programmable floating-gate MOS transistor, the datum to be memorized is translated into a voltage which is applied to the supply electrode of the floating-gate MOS transistor, instead of to the control electrode (i.e. the control gate) as in the known art. Thanks to the present invention, the programming circuit is greatly simplified, the number of transistors required is minimum, and the area occupied by the circuit is therefore reduced. The number of signals required to perform the programming of a particular memory register among the others available is also reduced. It is also made possible to use as data lines signal lines already present in the memory device, such as the address signal lines supplying the decoding circuitry of the memory device. The features of the present invention shall be made more evident by the following detailed description of two particular embodiments, described as non-limiting examples in the annexed drawings, wherein: Figure 1 is a schematic diagram of a first type of memory cell of a non-volatile memory register, with a programming circuit according to a first embodiment of the present invention; Figure 2 is a schematic diagram of a second type of memory cell of a non-volatile memory register, with a programming circuit according to a second embodiment of the invention. A non-volatile memory register suitable for example to store an address configuration corresponding to a defective row or column of a memory matrix of a memory device, for example a Flash EEPROM, comprises a number of memory cells corresponding to the number of row or column address bits in the memory device address bus. In its simplest form, shown in Figure 1, each register cell comprises an electrically erasable and programmable floating-gate transistor TF, identical to those composing the memory matrix, having a source electrode connected to a source line 9, normally connected to a ground reference voltage, and a drain electrode connected to a node 12. The register cell comprises a load circuit LC connected to the node 12 and suitable to read the information stored in TF; an output D of the load circuit LC can assume two logical states depending on the information stored in TF. The register cell also comprises a program load circuit substantially represented by an N-channel MOSFET TS with source connected to the node 12, and drain connected to a data line A carrying the datum to be programmed into TF. The data line A corresponds to one bit of the address configuration to be programmed into the non-volatile memory register, and is already present in the memory device since it is used for decoding purposes. The use of an already existent line allows a circuital simplification, which means a reduction in the chip area. TS has a gate electrode connected to the output 7 of a first switch 1, controlled by a signal 10. TF has a control gate electrode connected to the output of a second switch 2. Each register cell further comprises a comparison circuit (not shown) suitable to compare the datum stored in the floating gate transistor TF, represented by the voltage on node D, with the current logical value of the address bit A. When, during testing, a defective memory element is found, the matrix row or column to which said element belongs can be substituted by a redundant row or column, provided that redundant elements are currently available. To this purpose, the address configuration of bits which normally addresses the defective row or column must be stored in a non-volatile register corresponding to the redundant row or column which has been chosen to replace the defective one. To program said address configuration in the selected non-volatile register, the second switch 2 raises the voltage on the control gate of the floating gate transistor TF of all the cells of all the non-volatile memory registers to a high voltage value; the selection signal 10 drives the first switch 1 to raise the gate voltage of the MOSFET TS of all the cells of the selected non-volatile memory register to the high voltage value, thus turning TS on; in the cells of the non-selected non-volatile memory registers the gate voltage of TS is instead kept low (i.e. the gate electrode of TS is connected to the ground voltage). The floating gate transistor TF of each cell of the selected non-volatile register is therefore programmed according to the voltage value on its drain, i.e. to the logical value of the respective address bit: if for example the cell shown in the drawing is associated to an address bit which is at a logical "1" when a defective memory element is addressed, the data line A will be at a logical "1"; the logical "1" present on line A will be transferred to the drain 12 of TF, which will undergo an injection of electrons into its floating gate. When the memory device is operated in the normal reading condition, the first switch 1 keeps the voltage on the gate electrode of TS to ground, thus keeping TS in the off state, and the second switch 2 keeps the voltage on the floating gate of TF to the usual supply value VDD. The information stored in TF is read by the load circuit LC, and supplied to the comparison circuit of the register cell. When the exact configuration of address bits is encountered, all the cells of the non-volatile register detect the matching, and a redundant row or column is addressed instead of the defective one. In Figure 2 a second type of register cell is shown, comprising two electrically erasable and programmable floating gate transistors TF0 and TF1, identical to those composing the memory array, whose sources are commonly connected to the source line 9, and whose drains are connected to respective nodes 5 and 4. The register cell comprises a load circuit comprising two N-channel MOSFETs T2 and T3 with source respectively connected to nodes 5 and 4 and drain connected to nodes D and DN; the load circuit further comprises two P-channel MOSFETs T0 and T1 whose sources are connected to a common voltage supply line VDD, and whose drains are respectively connected to the nodes D and DN. The gates of T0 and T1 are cross-connected to DN and D, respectively, so that a latch configuration is obtained. The gates of T2 and T3 are instead connected to a common node 8 which is driven by a bias voltage 11 suitable to limit the voltage value on the drains of the floating gate transistors TF0 and TF1. The register cell comprises a program load circuit which comprises two N-channel MOSFETs T4 and T5 whose sources are connected to the nodes 5 and 4 respectively, and thus to the drains of the floating gate transistors TF0 and TF1, and whose drains are connected to respective programming data lines A and AN, which are already present in the memory device and used for decoding purposes. In this case, referred to the implementation of redundancy in the memory device, they correspond to one bit A of the address configuration to be programmed, and to its logical complement AN. As already noted with reference to the first embodiment, the use of already existent lines allows a circuital simplification, which means a reduction in the overall chip area. The gates of T4 and T5 are connected to a common node 7 whose potential is controlled by the output of a first switch 1. The signal on node 7 is commonly supplied to all the memory cells of a given memory register, and allows the selection of one particular memory register among those available to store the address configuration corresponding to a defective matrix row or column. To this purpose, a number of different selection signals 10 equal to the number of distinct non-volatile memory registers must be generated. The control gates of the floating gate transistors TF0 and TF1 are both connected to a node 6 which is common to all the cells of all the non-volatile memory registers; node 6 is also connected to the output of a second switch 2. Each register cell further comprises a comparison circuit (not shown) suitable to compare the data stored in the floating gate transistors TF0, TF1, represented by the voltages on nodes D and DN, with the logical value of the current address supplied to the memory device. When, during testing, a defective memory element is found, the matrix row or column to which said element belongs can be substituted by a redundant row or column, provided that redundant elements are currently available. To this purpose, the address configuration of bits which normally addresses the defective row or column must be stored in a non-volatile register corresponding to the redundant row or column which has been chosen to replace the defective one. To program said address configuration in the selected non-volatile register, the second switch 2 raises the voltage on the control gate of the floating gate transistors TF0, TF1 of all the cells of all the non-volatile memory registers to a high voltage value; the selection signal 10 drives the first switch 1 to raise the gate voltage of the MOSFETs T4, T5 of all the cells of the selected non-volatile memory register to the high voltage value, thus turning T4 and T5 on; in the cells of the non-selected non-volatile memory registers the gate voltage of T4 and T5 is instead kept low (i.e. the gates of T4 and T5 are connected to the ground voltage). The floating gate transistors TF0 and TF1 of each cell of the selected non-volatile register are therefore programmed according to the voltage value on their drains, i.e. to the logical value of the respective address bit: if for example the cell shown in the drawing is associated to an address bit which is at a logical "1" when a defective memory element is addressed, the data line A will be at a logical "1", while the data line AN will be at a logical "0"; the logical "1" present on line A will be transferred to the drain 5 of TF0, which will undergo an injection of electrons into its floating gate; the logical "0" present on line AN, transferred to the drain 4 of TF1, will prevent TF1 from being programmed: TF1 will remain in its original, i.e. virgin, state. When the memory device is operated in the normal reading condition, the first switch 1 keeps the voltage on node 7 to ground, thus keeping T4 and T5 in the off state, and the second switch 2 keeps the voltage on the floating gates of TF0 and TF1 to the usual supply value VDD. The gates of T2 and T3 are biased by a voltage of about 2 V, to limit the voltage on the drains of TF0 and TF1 so that soft programming is prevented. Since TF0 has been previously programmed, it will be in the off state, and node 5 is therefore left floating; the voltage on node D raises towards VDD and causes T1 to turn off; since instead TF1 is not programmed, it will drain current, and node 4 is grounded; the voltage on node DN lowers correspondingly. The information stored in TF0 and TF1 is therefore transferred into the latch T0-T1, and supplied to the comparison circuit of the register cell. When the exact configuration of address bits is encountered, all the cells of the non-volatile register detect the matching, and a redundant row or column is addressed instead of the defective one. Even if the circuit according to the invention has been described with reference to its application for implementing redundancy in a Flash EEPROM device, it can also be used in general in memory cells of non-volatile memory registers.

Claims: An integrated circuit non-volatile memory device comprising a register associated to a memory matrix of the memory device for storing an address configuration corresponding to a defective row or a defective column in the memory matrix, the non-volatile memory register comprising a plurality of non-volatile memory cells, each non-volatile memory cell comprising at least one programmable non-volatile memory element (TF;TF0,TF1) having a control electrode and a supply electrode and being suitable to store one bit of said address configuration, and a load circuit (LC;T0-T3) associated to said memory element (TF;TF0,TF1) to read the information stored therein, said memory cell comprising switching means (TS;T4,T5), connected in series between the supply electrode and a respective data line (A;A,AN) carrying a datum to be programmed into said at least one memory element (TF;TF0,TF1), said switching means being controlled by a signal (7) which determines the switching means (TS;T4,T5) to electrically connect the memory element (TF;TF0,TF1) to the data line (A;A,AN) when the memory cell of the non-volatile memory register is to be programmed, said data line (A;A,AN) being an address signal line of an address signal bus which also supplies a decoding circuitry of the memory matrix. The device according to claim 1, characterized in that said memory cell comprises two programmable non-volatile memory elements (TF0,TF1), said switching means (T4,T5) comprising a first switch (T4) connected in series between one of said two memory elements (TF0) and a first data line (A) and a second switch (T5) connected in series between another of said two memory elements (TF1) and a second data line (AN), said first (A) and second (AN) data lines carrying logical complemented data and being two address signal lines of said address signal bus. The device according to claim 2, characterized in that said first and second switches are represented by two transistors (T4,T5). The device according to claim 3, characterized in that said two transistors (T4,T5) are N-channel MOSFETs. The device according to claim 2, characterized in that said two programmable non-volatile memory elements are electrically programmable MOS transistors (TF0,TF1) each comprising a floating gate and a control gate. The device according to claim 5, characterized in that the control gates of said two programmable MOS transistors (TFO,TF1) are controlled by a signal (6) which is switched to a high voltage value during the programming of the memory cell.

Inventors: PADOAN SILVIA, PASCUCCI LUIGI, PADOAN, SILVIA, PASCUCCI, LUIGI
Applicants: ST MICROELECTRONICS SRL, STMICROELECTRONICS S.R.L.
Application year: 1993
Main classification: G11C16
IPC codes: G11C16, G11C17, G11C29