As is well known, a non-volatile memory is able to continuously retain data after the supplied power is interrupted. Consequently, the non-volatile memory is widely used in a variety of electronic devices.
For example, a radio frequency identification (RFID) circuit uses radio waves to transfer identification data in order to identify an object. Generally, the RFID circuit is equipped with a non-volatile memory to store the identification data.
FIG. 1 schematically illustrates a RFID circuit. As shown in FIG. 1, the RFID circuit 100 comprises an antenna 110, a control circuit 120 and a non-volatile memory 130. Generally, the identification data are stored in the non-volatile memory 130. During the normal operations of the RFID circuit 100, the control circuit 120 reads the identification data from the non-volatile memory 130. In addition, the identification data are transmitted to an external receiver (not shown) through the antenna 110.
Moreover, the identification data in the non-volatile memory 130 can be modified by the control circuit 120. For modifying the identification data, the control circuit 120 firstly performs an erase action to delete the old identification data of the non-volatile memory 130 and then performs a program action to store the updated identification data into the non-volatile memory 130.
While the control circuit 120 performs the erase action to delete the old identification data of the non-volatile memory 130, the control circuit 120 provides an erase voltage Ves to the non-volatile memory 130. In response to the erase voltage Ves, the old identification data of the non-volatile memory 130 are deleted.
While the control circuit 120 performs the program action to store the updated identification data into the non-volatile memory 130, the control circuit 120 provides a program voltage Vpg to the non-volatile memory 130. In response to the program voltage Vpg, the updated identification data are stored into the non-volatile memory 130.
Moreover, the control circuit 120 receives a power voltage Vdd. Generally, the magnitude of the power voltage Vdd is much lower than the magnitude of the program voltage Vpg and the magnitude of the erase voltage Ves. The control circuit 120 is usually equipped with a voltage booster 122 such as a charge pump. After the magnitude of the power voltage Vdd is multiplied by specified factors, the program voltage Vpg and the erase voltage Ves are generated. In such way, the program voltage Vpg and the erase voltage Ves can be provided to the non-volatile memory 130.
For example, the magnitude of the power voltage Vdd is 2.0V. After the magnitude of the power voltage Vdd is multiplied by 5, the magnitude of the program voltage Vpg is 10V. After the magnitude of the power voltage Vdd is multiplied by 3.5, the magnitude of the erase voltage Ves is 7V.
For allowing the non-volatile memory 130 to be normally operated, the proportion of the power voltage Vdd to the program voltage Vpg and the proportion of the power voltage Vdd to the erase voltage Ves should be previously realized by the control circuit 120. Consequently, the voltage booster 122 is designed according to these proportions.
However, some electronic devices are powered by a wide range power voltage. For example, the power voltage received by the RFID circuit is in a wide range between 1.2V and 2.5V. As long as the power voltage Vdd received by the RFID circuit is in the range between 1.2V and 2.5V, the RFID circuit can be normally operated.
Since the RFID circuit is unable to predict the magnitude of the received power voltage Vdd, some problems occur. For example, if the voltage booster 122 of the control circuit 120 as shown in FIG. 1 is used to generate the program voltage Vpg and the erase voltage Ves, the non-volatile memory 130 is not normally operated or even the non-volatile memory 130 is burnt out.
For example, if the power voltage Vdd received by the control circuit 120 is 1.2V, the voltage booster 122 generates a 6.0V-program voltage Vpg (e.g., multiple=5) and a 4.2V-erase voltage Ves (e.g., multiple=3.5). Since the magnitudes of the 6.0V-program voltage Vpg and the 4.2V-erase voltage Ves are too low, the erase action or the program action of the non-volatile memory 130 cannot be successfully done.
On the other hand, if the power voltage Vdd received by the control circuit 120 is 2.5V, the voltage booster 122 generates a 12.5V-program voltage Vpg (e.g., multiple=5) and an 8.75V-erase voltage Ves (e.g., multiple=3.5). Since the magnitudes of the 12.5V-program voltage Vpg and the 8.75V-erase voltage Ves are too high, the non-volatile memory 130 cannot withstand these high voltages. Under this circumstance, the memory cells of the non-volatile memory 130 are possibly burnt out.