NON-VOLATILE REGISTER AND NON-VOLATILE SHIFT REGISTER
Non-Volatile Register (NVR) and Non-Volatile Shift Register (NVSR) devices are disclosed. The innovative NVR and NVSR devices of the invention can rapidly load the stored non-volatile data in non-volatile memory elements into their correspondent static memory elements for fast and constant referencing in digital circuitry. According to the invention, the loading process from non-volatile memory to static memory is a direct process without going through the conventional procedures of accessing the non-volatile memory, sensing from the non-volatile memory, and loading into the digital registers and shift registers.
This application is a divisional application of U.S. patent application Ser. No. 13/724,623, filed Dec. 21, 2012, which is incorporated herein by reference in its entirety.
BACKGROUND OF THE INVENTION1. Field of the Invention
The invention relates to Non-Volatile Register (NVR) and Non-Volatile Shift Register (NVSR) devices in digital circuitry. In particular, the NVR and NVSR devices of the invention can directly load non-volatile digital information into the registers for fast and constantly referencing.
2. Description of the Related Art
In digital circuitry, registers and shift registers are broadly applied for storing small amount digital information for fast and constantly referencing. A common property of computer programs is locality of reference: the same values are often accessed repeatedly and frequently used values held in registers improve performance. This is what makes fast registers meaningful in contrast to the general data accessed from the main memory units. For building the register and shift register in a digital circuitry the main static memory element of the conventional register and shift register is usually constructed by a pair of cross-connected MOSFET (Metal-Oxide-Semiconductor-Field-Effect-Transistor) invertors 111 and 112 as the circuit schematics shown in
Registers are normally measured by the number of bits they can hold, for example, an “8-bit register” or a “32-bit register”. Registers are also categorized as processor registers and memory registers according to their applications for Computing Process Unit (CPU) and memory units, respectively. A processor often contains several kinds of registers classified accordingly to their content or instructions. For example, floating point and constant registers store floating point numbers and numerical constants; vector registers hold data for vector processing done by single instruction multiple data; conditional registers hold truth values often used to determine whether some instructions should or should not be executed; control and status registers are applied for program counters, instruction registers and program status words. Meanwhile the memory registers such as buffer register, data registers, address registers, and type range registers fetch data from RAM (Random Addressable Memory).
Although the data inside the conventional registers and shift registers can be fast and constantly accessed, the stored data disappear after the chip power is turned off, that is, the stored data in the conventional registers and shift registers are volatile. When a digital circuitry is turned on, the initial data in the registers must be loaded either from an on-chip non-volatile memory unit such as ROM (Read Only Memory) and EEPROM (Electrical Erasable Programmable Read Only Memory), or from external memory units. The conventional data fetching process for registers would require the time to read out the data from a memory unit and the time to load the fetched data into the registers, resulting in performance degradation. The data fetch process also requires more chip power from the non-volatile memory sensing circuitry. Therefore, it will be very desirable for registers to load non-volatile data directly without going through the conventional data fetching process from non-volatile memory units to improve the performance of register and to save chip power from non-volatile memory data sensing.
In this invention, we have developed Non-Volatile Register (NVR) and Non-Volatile Shift Register (NVSR) based on the previously developed Non-Volatile Static Random Access Memory (U.S. patent application Ser. No. 13/206,270, the disclosure of which is incorporated herein by reference in its entirety). The NVR and NVSR of the invention can directly load non-volatile data from semiconductor non-volatile memory elements to their correspondent static memory elements (cross-connected inverters) without going through a readout process from a non-volatile memory. When a digital circuitry embedded with the NVR and NVSR is “on”, the non-volatile data are immediately loaded to the correspondent static memory elements in the registers. The data in the NVR and NVSR are then ready for fast and constantly referencing for the digital circuitry.
SUMMARY OF THE INVENTIONAccording to an embodiment, an N-type Non-Volatile Register (NVR) cell 200 consists of a static memory element 210, an N-type semiconductor non-volatile memory element 220, and an N-type reset MOSFET 230 shown in
In the operations of the NVR cell 200, the non-volatile data “0” and “1” are represented by the programmed high threshold voltage state VthH and the erased low threshold voltage VthL of the N-type semiconductor non-volatile memory element 220 respectively. When a control gate voltage bias VCG for VthH>VCG>VthL is applied to the control gates of a plurality of the N-type semiconductor non-volatile memory elements 220 through the external terminal CG 222 with the second source/drain electrodes connected to the external terminal D applied with the ground voltage VSS, the N-type semiconductor non-volatile memory elements at low threshold voltage state VthL are “on” to pull down the voltage potentials at the nodes 213 of the inverters 211 to the ground voltage VSS. While the N-type semiconductor non-volatile memory elements at high threshold voltage state VthH are “off” to retain the voltage potentials at the nodes 213 of the inverters 211.
Upon digital circuit power-on for loading the non-volatile data to a plurality of NVR cells, a “reset” signal of the digital “high” voltage VDD is initially applied to the gate electrodes 231 of the N-type MOSFET devices 230 to reset the voltage potentials at the output nodes Q 214 to the ground voltage VSS (“0”) and the voltage potentials at the complementary nodes 213 to the digital “high” voltage VDD. After the reset procedure, the set procedure takes place by applying a control gate voltage bias VCG for VthH>VCG>VthL to the control gate electrodes and the ground voltage VSS to the second source/drain electrodes of N-type semiconductor non-volatile memory elements 220 respectively. Consequently the N-type semiconductor non-volatile memory elements at the low threshold voltage state VthL are then “on” to pull down the initial voltage VDD to the ground voltage VSS at the complementary nodes 213 leading to the voltage potential at the output nodes Q 214 changed from the ground voltage VSS (“0”) to the digital “high” voltage VDD (“1”). The non-volatile data “1” stored in the N-type non-volatile memory elements with the low threshold voltage are then loaded into their correspondent static memory elements with digital data “1” in NVR cells. Meanwhile since the N-type semiconductor non-volatile memory elements at high threshold voltage state VthH are “off” to retain the initial voltage potential VDD at the complementary nodes 213, the voltage potentials at the output nodes Q 214 remain the same ground voltage VSS (“0”). The non-volatile data “0” stored in the N-type non-volatile memory elements with the high threshold voltage are then equivalent to the initial digital value “0” in their correspondent static memory elements in NVR cells. Therefore, the set procedure completes loading the non-volatile data from the non-volatile memory elements into their correspondent static memory elements in NVR cells.
After the non-volatile data are loaded to the static memory elements in a plurality of NVR cells, the digital data information can be referenced either directly from the output node Q of each individual NVR cell in parallel or from a single output port in series by a clock sequence as for the conventional shift registers. The schematic of a NVSR cell 300 where two transmission gate devices 340 and 350 are added to the register is shown in
Upon digital circuit power on for loading the non-volatile data to the P-type NVR cells 400a, a “reset” signal, the digital “low” voltage VSS, is initially applied to the gate electrodes 431 of the P-type MOSFET devices 430 to reset the voltage potentials at the output nodes Q 414 to the digital “high” voltage VDD (“1”) and the voltage potentials at the complementary nodes 413 to the digital “low” voltage VSS. After the reset procedure, the set procedure takes place by applying the digital “high” voltage bias VDD to the control gate electrodes, the second source/drain electrodes, and well electrodes of the P-type semiconductor non-volatile memory elements 420 respectively. Consequently the P-type semiconductor non-volatile memory elements at the high threshold voltage state VthH are then “on” to pull up the initial ground voltage VSS to the voltage VDD at the complementary nodes 413 leading to the voltage potential at the output node Q 414 changed from the digital “high” voltage VDD (“1”) to the ground voltage VSS (“0”). The non-volatile data “0” stored in the P-type non-volatile elements in the high threshold voltage state are then loaded into their correspondent static memory elements with digital data “0” in NVR cells 400a. Meanwhile since the P-type semiconductor non-volatile memory elements at the low threshold voltage state VthL are “off” to retain the initial ground potential VSS at the complementary nodes 413, the voltage potentials at the output nodes Q 414 remain the same digital “high” voltage VDD (“1”). The non-volatile data “1” stored in the P-type non-volatile elements with the low threshold voltage states are then equivalent to the initial digital value “1” in their correspondent static memory elements in NVR cells. Therefore, the set procedure completes loading the non-volatile data from the non-volatile memory elements to their correspondent static memory elements in NVR cells.
After the non-volatile data are loaded to the static memory elements in a plurality of NVR cells, the digital data information can be referenced either directly from the output node Q of each individual NVR cell in parallel or from a single output port in series by a clock sequence as for the conventional shift registers. The schematic of a NVSR cell 400b where two transmission gate devices 440 and 450 are added to the register is shown in
For a better understanding of the present invention and to show how it may be carried into effect, reference will now be made to the following drawings, which show the preferred embodiment of the present invention, in which:
The following detailed description is meant to be illustrative only and not limiting. It is to be understood that other embodiment may be utilized and element changes may be made without departing from the scope of the present invention. Also, it is to be understood that the phraseology and terminology used herein are for the purpose of description and should not be regarded as limiting. Those of ordinary skill in the art will immediately realize that the embodiments of the present invention described herein in the context of methods and schematics are illustrative only and are not intended to be in any way limiting. Other embodiments of the present invention will readily suggest themselves to such skilled persons having the benefits of this disclosure.
According to a preferred embodiment of an N-bit NVR 500, a number of NVR cells 200 equal to N are arranged in a row as shown in
In a preferred embodiment of an N-bit NVSR 700, a number of NVSR cells 300 equal to N are arranged in a row in
The aforementioned description of the preferred embodiments of the invention has been presented for purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise form or to exemplary embodiments disclosed. Accordingly, the description should be regarded as illustrative rather than restrictive. Obviously, many modifications and variations of non-volatile memory elements including the types of non-volatile memory device made of different charge storing material and the types of reset transistors will be apparent to practitioners skilled in this art. The embodiments are chosen and described in order to best explain the principles of the invention and its best mode practical application, thereby to enable persons skilled in the art to understand the invention for various embodiments and with various modifications as are suited to the particular use or implementation contemplated. It is intended that the scope of the invention be defined by the claims appended hereto and their equivalents in which all terms are meant in their broadest reasonable sense unless otherwise indicated. The abstract of the disclosure is provided to comply with the rules requiring an abstract, which will allow a searcher to quickly ascertain the subject matter of the technical disclosure of any patent issued from this disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. Any advantages and benefits described may not apply to all embodiments of the invention. It should be appreciated that variations may be made in the embodiments described by persons skilled in the art without departing from the scope of the present invention as defined by the following claims. Moreover, no element and component in the present disclosure is intended to be dedicated to the public regardless of whether the element or component is explicitly recited in the following claims.
Claims
1. An non-volatile register for initial loading and outputting N-bit data in parallel upon power-on, comprising:
- N non-volatile register cells arranged in a row, each non-volatile register cell comprising:
- a static memory element comprising two inverters, a first output node and a second output node;
- a non-volatile memory (NVM) element having a charge storing material, a control gate electrode, a first source/drain electrode and a second source/drain electrode, the first source/drain electrode being coupled to the first output node; and
- a reset transistor coupled to the second output node for resetting the second output node to a predetermined voltage;
- wherein a gate of each reset transistor is connected with each other to form a reset line;
- wherein the control gate of each NVM element is connected with each other to form a first voltage line and the second source/drain electrode of each NVM element is connected with each other to form a second voltage line;
- wherein the non-volatile register cells output the N-bit data in parallel at their second output nodes; and
- wherein the predetermined voltage and a threshold voltage state of the NVM element determine a logic state of the second output node upon power-up for each non-volatile register cell.
2. The non-volatile register according to claim 1, wherein when the reset transistor is N-type, the reset transistor is coupled between the second output node and a ground node carrying a ground voltage for each non-volatile register cell, otherwise the reset transistor is coupled between the second output node and an operating node carrying an operating voltage for each non-volatile register cell.
3. The non-volatile register according to claim 2, wherein the second output node is reset to the predetermined voltage for each non-volatile register cell when a gate voltage is applied to the reset line.
4. The non-volatile register according to claim 3, wherein when the reset transistor is N-type, the gate voltage is the operating voltage and the predetermined voltage is the ground voltage for each non-volatile register cell, and wherein when the reset transistor is P-type, the gate voltage is the ground voltage and the predetermined voltage is the operating voltage for each non-volatile register cell.
5. The non-volatile register according to claim 1, wherein when the NVM element is N-type, a control gate voltage is applied to the first voltage line and a ground voltage is applied to the second voltage line to load an non-volatile value from the NVM element into the static memory element for each non-volatile register cell, and wherein the control gate voltage is between a programmed threshold voltage and an erased threshold voltage of the NVM element.
6. The non-volatile register according to claim 1, wherein when the NVM element is P-type, an operating voltage is applied to the first voltage line, the second voltage line and a well electrode of the NVM element to load an non-volatile value from the NVM element into the static memory element for each non-volatile register cell.
7. The non-volatile register according to claim 1, wherein after the second output node is reset and then an non-volatile value is loaded from the NVM element into the static memory element, the second output node has the ground voltage if the NVM element is in a programmed threshold voltage state for each non-volatile register cell and the second output node has the operating voltage if the NVM element is in an erased threshold voltage state for each non-volatile register cell.
8. The non-volatile register according to claim 1, wherein the static memory element comprises a latch for each non-volatile register cell.
9. An operating method of a non-volatile register for initial loading and outputting N-bit data in parallel upon power-on, the non-volatile register comprising N non-volatile register cells arranged in a row, each non-volatile register cell comprising a static memory element, a non-volatile memory (NVM) element and a reset transistor, the static memory element having comprising two inverters, a first output node and a second output node, a first source/drain electrode of the NVM element being coupled to the first output node, the reset transistor coupled to the second output node, wherein a gate of each reset transistor is connected with each other to form a reset line, wherein a control gate of each NVM element is connected with each other to form a first voltage line and a second source/drain electrode of each NVM element is connected with each other to form a second voltage line, the operating method comprising the sequential steps of:
- resetting each second output node to a predetermined voltage by its corresponding reset transistor;
- when the NVM element is N-type, loading an non-volatile value from the NVM element into the static memory element by applying a control gate voltage to the first voltage line and applying a ground voltage to the second voltage line for each non-volatile register cell;
- when the NVM element is P-type, loading the non-volatile value from the NVM element into the static memory element by applying an operating voltage to the first voltage line, the second voltage line and a well electrode of the NVM element for each non-volatile register cell; and
- outputting the N-bit data in parallel at the second output nodes of the N non-volatile register cells;
- wherein the control gate voltage is between an erased threshold voltage and a programmed threshold voltage of the NVM element; and
- wherein the predetermined voltage and a threshold voltage state of the NVM element determine a logic state of the second output node upon power-up for each non-volatile register cell.
10. The method according to claim 9, wherein the step of resetting comprises:
- when the reset transistor is N-type, applying the operating voltage to a gate of the reset transistor to reset the second output node to the ground voltage for each non-volatile register cell; and
- when the reset transistor is P-type, applying the ground voltage to the gate of the reset transistor to reset the second output node to the operating voltage for each non-volatile register cell.
11. The method according to claim 9, wherein each NVM element is N-type, and wherein when the NVM element is in a programmed threshold voltage state, the NVM element is turned off for each non-volatile register cell, otherwise the NVM element is turned on during the step of loading the non-volatile value from the NVM element into the static memory element for each non-volatile register cell.
12. The method according to claim 9, wherein each NVM element is P-type, and wherein when the NVM element is in a programmed threshold voltage state, the NVM element is turned on, otherwise the NVM element is turned off during the step of loading the non-volatile value from the NVM element into the static memory element.
13. The method according to claim 9, further comprising:
- when the NVM element is in a programmed threshold voltage state, causing the second output node to have the ground voltage for each non-volatile register cell, otherwise causing the second output node to have the operating voltage after the step of loading the non-volatile value from the NVM element into the static memory element.
Type: Application
Filed: Jul 21, 2015
Publication Date: Nov 12, 2015
Inventor: Lee WANG (Diamond Bar, CA)
Application Number: 14/805,211