This application is related to international patent application PCT/IB2017/051250 filed on Mar. 3, 2017 and titled Random Number Generation from Multiple Memory States, and claims priority to Italian patent application no. UA2016A001468 filed Mar. 8, 2016, the entire content(s) of which is/are incorporated herein by reference.
The present invention relates to electronic methods and devices for generating random numbers.
The invention finds a preferred application in systems-on-chip requiring generation of random numbers for cryptography applications or containing a hardware signature for the purpose of security of transmitted information.
Generally the invention relates to a device according to the preamble of claim 1 and to a relevant method for generating random numbers.
Random number generation is essential for generating random cryptography keys for secure transmission protocols [1]. Pervasiveness of Internet-based communication and the need of protecting data from eavesdropping lead to the need for compact random number generation circuits (RNG), able to generate true random numbers with high entropy quality and high throughput. In order to generate true random numbers, that do not rely on deterministic algorithms and are totally unpredictable, it is important to identify a convenient on-chip entropy source and to design the corresponding circuit for generating the random bit stream with high throughput and stability. Previous approaches for generating true random numbers provide as the source the random telegraph noise (RTN) in dielectrics [2] or in resistive-switching memories (RRAM) [3]. The RTN appears as a random fluctuation of current, or resistance, between two or more levels, resulting from the random charging/discharging of bistable defects [4]. However, RTN is difficult to control in terms of amplitude and frequency, thus increasing the need for dedicated techniques for exploiting RTN. Moreover RTN has been shown to be unstable in RRAMs, where the current fluctuation at a given bias can show unpredictable onset and interruption [5]. Other schemes, based on physical fluctuation phenomena, therefore are under investigation to obtain efficient and stable random number generation.
Recently novel RNG concepts based on the switching variability in low-voltage memory technologies, such as spin transfer torque (STT) magnetic memories MRAM ([6], [7]) and RRAM ([8], [9]) have been proposed.
The switching statistical variability in RRAM was similarly applied to develop physical unclonable functions (PUF) [10] and to improve learning in neuromorphic circuits [11].
For generating random numbers it is possible to exploit the stochastic variation of a switching parameter, such as the voltage Vset necessary for setting the transition from high to low resistance [12]. Application of a voltage close to the median value of the distribution of Vset statistically results in a transition only in a random fraction of attempts. An important problem in this approach, however, is the need for a careful tracking of the applied voltage, which must be exactly centered in the median value of the Vset distribution to guarantee a perfect balance between 0 and 1 [12]. For this aim, real-time voltage tracking techniques must be used for compensating 0 and 1 probabilities [7].
Random number generating circuits using memristors are described in U.S. Pat. No. 8,680,906 B1, EP 2 933 720 A1, KR101566949 and US20140268994.
Patent applications EP2933720, KR101566949 and US20140268994 use a memristor by employing stochastic writing to obtain random functions. However such solutions use only one memristor, which makes the uniform generation of random bits more complicated and subjected to an accurate calibration of the generating algorithm.
The U.S. Pat. No. 8,680,906, to United States Air Force, uses two memristors in series arrangement. Memristors initially are prepared in a low resistance state (LRS), then a voltage is applied to the ends of the series connection such to cause the random reset of one of the two memristors. Such operation causes the random reset only in one memristor, where all the applied voltage is substantially concentrated, this leading to a rapid degeneration of memristors.
Other solutions using two memristors are described in [13] and [14].
[13] and [14] disclose circuits for implementing a PUF, where two RRAM cells (in HRS) are connected to two respective inputs of a comparator that generates a output bit depending on the resistance difference of the two cells. [13] also discloses that, to stabilize the output of the comparator, the cell having the lower resistance can be set in LRS, thus increasing the difference between resistances. The drawback of such solution is the need for a suitable circuit for programming the state of the memristors, downstream the reading and the comparison of resistances in the 2 memristors.
It is the object of the present invention to overcome prior art drawbacks.
Particularly it is the object of the present invention to provide a method and a circuit for generating random numbers based on memristors that does not need probability tracking techniques.
These and further objects of the present invention are achieved by a device and a method embodying the characteristics of the annexed claims, which are an integral part of the present description.
Generally the device for generating random numbers comprises a pair of memristors. The pair of memristors comprises a first and a second memristor, each memristor of the pair in turn comprising a top electrode, a bottom electrode and an intermediate layer adapted to switch resistance in response to predetermined voltage values applied between the top electrode and the bottom electrode. Each memristor is operatively connected to an output terminal by its bottom electrode. A control logic is connected to memristors for applying suitable voltages necessary for determining a change of resistance in at least one of the memristors of the pair.
In detail the control logic is configured to:
fix the voltage of the output terminal to a predetermined value and apply said transition voltage to cause a change of resistance in at least one memristor of the pair,
leave the voltage at said output terminal floating and apply to the top terminals of the first and second memristors two read voltages having opposite sign and amplitude lower than said transition voltage.
The particular connection of the two memristors, that actually are controlled in parallel, allows the resistance of the memristors to be changed without applying high voltages. By using the randomness of the resistance value of the memristor after the application of a SET or RESET voltage, it is possible to generate at the output terminal a voltage that can be positive or negative with a probability substantially of 50%, therefore it is possible to generate a random number (1 or 0) by associating it with the value of the voltage present at the output terminal.
The invention relates also to methods for generating random numbers that use the particular arrangement of the memristors mentioned above.
Further objects and advantages of the present invention will be more clear from the detailed description below.
The invention will be described here below with reference to not limitative examples, provided by way of example and not as a limitation in the annexed drawings. These drawings show different aspects and embodiments of the present invention and, where appropriate, reference numerals showing like structures, components, materials and/or elements in different figures are denoted by like reference numerals.
While the invention is susceptible of various modifications and alternative constructions, some disclosed embodiments are shown in the drawings and will be described in details herein below. It should be understood, however, that there is no intention to limit the invention to the specific disclosed embodiment but, on the contrary, the invention intends to cover all the modifications, alternative constructions and equivalents that fall within the scope of the invention as defined in the claims.
The use of “for example”, “etc.”, “or” denotes non-exclusive alternatives without limitation, unless otherwise noted. The use of “comprises” means “comprises, but not limited to”, unless otherwise noted.
The generating section comprises two memristors (P and Q) connected in parallel to the input terminal of a comparator 12 whose other input terminal is grounded.
The word memristor means a variable resistance device whose resistance value can be changed by applying a suitable voltage at its ends.
An example of a memristor is shown in
Such as shown in
In the example described here, the memristors have a SET voltage VSET=1.5V and a RESET voltage VRESET=−0.9V for a typical ramp rate of 103 V/s. A compliance current (limitation) IC=50 μA was used during the SET transition by applying a relatively low gate voltage. A maximum negative voltage Vstop of 1.5V is applied during the reset sweep.
With reference again to the device of
Firstly the method provides to apply (301) a positive voltage to the top electrode (TE) of P and Q to cause SET transition. In the example of
Then, step 302, a negative voltage VRESET is applied to top electrodes of P and Q to cause the RESET transition in both the variable resistances RP and RQ. Also in this case, for the reset voltage a triangular pulse is applied of 1 ms in duration and an amplitude higher than (in absolute value) VRESET.
Finally, step 303, the step reading the random bit is performed. In this step the control logic 11 is disconnected from the input terminal of the comparator to which memristors P and Q are connected and applies to the top electrode TE of the transistor P a voltage VP=+VRead and, to the electrode TE of Q a voltage VQ=−VRead, where 2VRead<VSet. VRead can be for example equal to 0.3 V, therefore it is not enough for causing a change of resistance in the memristors. In the example of
Now the input node of the comparator 12 has a voltage that will be slightly positive or negative depending on whether the resistance of P is smaller or greater than the resistance of Q, respectively. Therefore it is possible to assign a logic value of 1 or 0 to the value of the measured voltage of VOUT.
This method uses the characteristic of memristors that, statistically, are never with the same HRS resistance after SET and RESET process. As a result of the relatively high statistical variation of HRS resistance, Vout randomly changes from one to another reading cycle, thus acting as an output bit value in the RNG method. In this arrangement, the variation in HRS resistance acts as entropy source for the RNG method.
The output of the analog comparator (12) is used to digitally regenerate Vout.
Each cell, shown in
The source of the cell transistor 20 is connected to the positive input of the comparator 12, thus by applying a sufficiently high gate voltage VG2 it is possible to short circuit the transistor and to connect the positive input of the comparator 12 to the bottom electrode BE of each memristor P, Q.
In the device of
In order to implement the method of
During SET phase, VG1 is kept high (for example equal to the power voltage of the circuit VDD) in order to ground the voltage VOUT. Cell transistors 20 are switched on by applying a voltage VG2 just above threshold, while to the top electrodes TE of P and Q a positive voltage equal to or higher than voltage VSET is applied. In the example shown here VP and VQ are brought to the power voltage VDD, higher than threshold one. Both the memristors therefore perform a SET transition and switch to low resistance value (LRS). In the example described herein triangular voltage pulses of 1 ms in duration are applied to the electrodes TE of P and Q, however it is possible to use different waveforms (e.g. rectangular or parabolic) and of different duration.
Then during the reset phase the transistor 15 is short circuited, meaning that VG1 is kept high (for example equal to the power voltage of the circuit VDD) in order to ground the voltage VOUT. A similar control is performed on VG2 to be sure that the drain source voltage of the transistor is as near as possible to zero and that all the voltage VP and VQ (negative and equal, or in higher modulus, to VRESET) drops at the ends of the respective memristor P and Q, that therefore switches to high resistance state (HRS).
During reading, the transistor 15 is switched off (VG1=0), such to leave its drain voltage as floating. On the contrary VG2 is kept high, to be sure that substantially all voltages VP and VQ applied to positive electrodes of P and Q are between such electrodes and the positive input of the comparator 12. As said above with reference to
In order to demonstrate the efficiency of the device and of the RNG method described above,
RNG method was tested during 1000 cycles, this provides a sufficient statistical accuracy with a negligible degradation of the device.
Distributions RP and RQ are almost identical both in LRS and HRS, which is the key to reach an unbiased RNG of true random numbers.
As it can be observed still in
The comparator 12 can be replaced by one or more integrated CMOS inverters in an integrated circuit to reduce the area occupied on the chip.
According to this method, a triangular voltage pulse of 1 ms in duration and with a value higher than (in absolute value) VReset is initially applied to top electrodes (TE) of P and Q. During such step the transistors 15 and 20 are kept switched on with a gate voltage high enough to short circuit drain and source (e.g. VG1=VG2=VDD>>VDS), such to bring Vout substantially to ground and to cause all the voltage VP and VQ to fall on memristors P and Q which therefore switch to HRS.
Then a voltage higher than VSET (for example VDD) is applied to memristors P and Q which causes a random transition of P or Q to the LRS. In this step the transistor 15 is kept switched on, but with a gate voltage VG1 slightly higher than threshold, such to operate as a resistance to ground for P and Q. Transistors 20 on the contrary are kept switched on with VG2 equal to VDD, such to be short circuited. During this step, one of the two transistors switches to LRS; when this happens the potential of its bottom electrode BE and therefore also of VOUT, follows and gets near VDD, reducing voltage at the ends of both the memristors and thus preventing the other memristor from performing SET transition and from switching to LRS. Thus only one of the two memristors carries out the transition to LRS, the one of the two memristors that due to statistical fluctuations has the smallest transition voltage Vset.
Finally the RNG cycle provides to switch off the transistor 15 (VG1=0) and to read output voltage VOUT (or VOUT2) as shown above for the device of
Since SET transition in P and Q is random, there is no need for any probability tracking circuit, since SET transition is naturally present in a single memristor at each cycle.
In the light of the above mentioned examples it is clear how the invention allows the above objects to be achieved.
It is also clear that the person skilled in the art can make changes to the above examples without for this reason departing from the scope of protection as it results from the annexed claims.
For example, voltage pulses applied to top electrodes (TE) of P and Q can have any shape and duration, for example can have a rectangular or parabolic shape.
Still, the division of the device in the two blocks composed of the generating section 10 and the control logic 11, has to be intended by way of example and not as a limitation. For example the transistor 15 of
It has to be noted that teaching of the invention can be applied also to all methods intended to increase entropy of the sequence of random numbers produced by the device 1 of
Moreover teaching of the invention can be also applied to all methods intended to pre-condition random number generation devices such to obtain a better functionality (for example a higher cycling life) or for a better generation of random numbers.
It has also to be noted that the memristors that can be used in the device 1 can be of different types; for example all memristors able to change their resistance as a response to the application of pulses are suitable. In the type of usable memristors for example we have:
According to another embodiment, memristors P and Q of the device 1 can be of different types, such as the case when, for example, one of the two memristors is a bipolar RRAM and the other memristor is a unipolar RRAM.
With reference to the memristors of the device, 1, memristor devices wherein resistance is modified for a limited time can be also used, such as for example threshold switching devices where LRS spontaneously switches to HRS after SET transition. Such devices for example can contain materials such as:
Number | Date | Country | Kind |
---|---|---|---|
UA2016A001468 | Mar 2016 | IT | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/IB2017/051250 | 3/3/2017 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2017/153875 | 9/14/2017 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
7961494 | Scheuerlein | Jun 2011 | B2 |
8680906 | McDonald et al. | Mar 2014 | B1 |
9910639 | Le Gallo | Mar 2018 | B2 |
20130235647 | Kim | Sep 2013 | A1 |
20130322154 | Youn | Dec 2013 | A1 |
20140268994 | Rose et al. | Sep 2014 | A1 |
20150105687 | Abreu | Apr 2015 | A1 |
20150149517 | Matthews | May 2015 | A1 |
20150200363 | Sacchetto | Jul 2015 | A1 |
20170249990 | Bauer | Aug 2017 | A1 |
Number | Date | Country |
---|---|---|
2933720 | Oct 2015 | EP |
101566949 | Nov 2015 | KR |
WO 2015105687 | Jul 2015 | WO |
WO 2017153875 | Sep 2017 | WO |
Entry |
---|
Brederlow et al., “A Low-Power True Random Number Generator Using Random Telegraph Noise of Single Oxide-Traps”, Dated Feb. 8, 2006, IEEE International Solid-State Circuits Conference (10 Pages). |
Huang et al., “A Contact-Resistive Random-Access-Memory-Based True Random Number Generator”, Aug. 2012, IEEE Electron Device Letters, vol. 33, No. 8 (pp. 1108-1110). |
Mathew et al., “2.4 Gbps, 7 mW All-Digital PVT-Variation Tolerant True Random Number Generator for 45 nm CMOS High Performance Microprocessors”, Nov. 2012, IEEE Journal of Solid-State Circuits, vol. 47, No. 11 (pp. 2807-2821). |
Gaba et al., “Stochastic Memristive Devices for Computing and Neuromorphic Applications”, 2013, RSC Publishing, Nanoscale, No. 5 (pp. 5872-5878). |
Balatti et al., “Multiple Memory States in Resistive Switching Devices Through Controlled Size and Orientation of the Conductive Filament”, Dated Mar. 13, 2013, Advanced Materials, vol. 25, No. 10 (pp. 1474-1478). |
Choi et al., “A Magnetic Tunnel Junction Based True Random Number Generator with Conditional Perturb and Real-Time Output Probability Tracking”, Dated 2014, IEEE International Electron Devices Meeting (pp. 315-318). |
Fukushima et al., “Spin Dice: A Scalable Truly Random Number Generator Based on Spintronics”, Dated 2014, Applied Physics Express, No. 7 (4 Pages). |
Ambrogio et al., “Statistical Fluctuations in Hfox Resistive-Switching Memory: Part II—Random Telegraph Noise”, Dated Aug. 2014, IEEE Transactions on Electron Devices, vol. 61, No. 8 (pp. 2920- 2927). |
Yu, “Orientation Classification by a Winner-Take-All Network with Oxide RRAM Based Synaptic Devices”, Dated Year 2014, School of Computing, Informatics, and Decision Systems Engineering, Circuits and Systems (ISCAS), 2014 IEEE International Symposium on. (pp. 1058- 1061). |
Zhang et al., “Feasibility Study of Emerging Non-Volatile Memory Based Physical Unclonable Functions”, Dated Year 2014, School of Electrical and Electrical Engineering, Nanyang Technological Univ., Proc. International Memory Workshop (IMW) (pp. 1-4). |
Chen, “Comprehensive Assessment of RRAM-Based PUF for Hardware Security Applications”, Dated 2015, IEDM Tech. Dig. (pp. 285-268). |
Chen, “Utilizing the Variability of Resistive Random Access Memory to Implement Reconfigurable Physical Undonable Functions”, Feb. 2015, IEEE Electron Device Letters, vol. 36, No. 2 (p. 138-140). |
Balatti et al., “True Random Number Generation by Variability of Resistive Switching in Oxide-Based Devices”, Date Jun. 2015, IEEE Journal of Emerging and Selected Topics in Circuits and Systems, vol. 5, No. 2 (pp. 214- 221). |
Ambrogio et al., “Noise-Induced Resistance Broadening in Resistive Switching Memory—Part II: Array Statistics”, Dated Nov. 2015, IEEE Transactions on Electron Devices, vol. 62, No. 11 (pp. 3812-3819). |
Wang et al., “A Novel True Random Number Generator Design Leveraging Emerging Memristor Technology”, Dated Year 2015, Dept. of Electrical & Computer Engineering, Univ. of Pittsburgh, PA., Great Lakes Symposium on VLSI (pp. 271-276). |
Balatti et al., “Normally-off Logic Based of Resistive Switched—Part II: Logic Circuits”, Dated Jun. 6, 2015, IEEE Transactions on Electron Devices, vol. 62, No. 6 (pp. 1839-1847). |
Edwards et al., “Reconfigurable Memristive Device Technologies”, Dated Jul. 7, 2015, Proceedings of the IEEE, vol. 103, No. 7 (pp. 1004-1033). |
IT PTO, “International Search Report for related Italian patent application serial No. UA20161468 filed Mar. 8, 2016”, Dated Oct. 26, 2016. |
IT PTO, “Written Opinion for related Italian patent application serial No. UA20161468 filed Mar. 8, 2016”, Dated Oct. 26, 2016. |
EPO, “International Search Report for related international application serial No. PCT/IB2017/051250 filed Mar. 3, 2017”, Dated Jun. 20, 2017. |
EPO, “Written Opinion for related international application serial No. PCT/IB2017/051250 filed Mar. 3, 2017”, Dated Jun. 20, 2017. |
Number | Date | Country | |
---|---|---|---|
20190042201 A1 | Feb 2019 | US |