Method for reducing noise of a memristor based on a random pulse sequence
By applying random pulse sequences to the memristor to modulate the nanofilaments, the noise problem of the memristor was solved, achieving noise reduction effect and stability of conductance control, and simplifying the noise reduction process.
Patent Information
- Application Number
- CN202510292620.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-03-12
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2045-03-12
AI Technical Summary
Existing technologies struggle to effectively reduce noise in memristors, especially random telegraph noise (RTN), which leads to calculation errors and reduced device reliability. Furthermore, existing noise reduction methods are complex and time-consuming.
A method for controlling nanofilaments using random pulse sequences is employed. This involves creating a voltage sequence with the same ratio of positive to negative pulses but different amplitudes, and using a Poisson distribution to generate random time intervals. This random pulse sequence is then applied to a memristor to reduce noise.
It simplifies the noise reduction process, reduces device noise, improves the stability of conductivity control and the reliability of calculation, and reduces complexity and time cost.
Smart Images

Figure CN119811451B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of nanoelectronic device technology, and in particular to a method for reducing memristor noise based on random pulse sequences. Background Technology
[0002] With CMOS transistors facing physical size limitations, the separation of storage and computation in the traditional von Neumann architecture suffers from the "memory wall" problem, restricting improvements in computational energy efficiency. Compared to traditional memory, memristors, as an emerging memory device, offer higher storage density, faster read / write speeds, and lower power consumption, thus becoming one of the key technologies for realizing neuromorphic computing systems. In neural network applications, memristors require high-precision conductance control to achieve high stability in memristor networks, which necessitates that each memristor device possess a stable and distinguishable conductance state.
[0003] Valence-change memory (VDC) is a two-terminal memristor composed of metal oxide sandwiched between metal electrodes with different work functions. When a forward voltage is applied to the device, oxygen vacancies accumulate and form nano-conductive filaments (CFs). When a reverse voltage is applied, the CFs break. The high and low resistance states of the memristor are attributed to the formation and breakage of CFs in the oxide layer. However, CF-based switching does not form a single CF unit in the oxide layer, but rather multiple local CFs appear during the CF formation process. Small morphological changes in the CFs can cause drastic fluctuations in the resistance state, thus introducing noise into the device.
[0004] Current fluctuations caused by random telegraph noise (RTN), which can be attributed to the process of charge being trapped and detrapped by local defects, reduce read margin and lead to serious calculation errors, thereby reducing the reliability of devices and systems. Within the dynamic range of a memristor, an infinite number of conductance levels can theoretically be achieved. However, current fluctuations at each conductance level limit the number of conductances that can be distinguished within a specific conductance range.
[0005] Normal switching operations always generate some incomplete conductive channels. These channels appear as islands or have blurred edges along the main channel and are less stable than the main channel. These incomplete conductive channels cause RTN noise. Existing theory and experiments show that applying positive and negative pulse voltages of a certain amplitude can eliminate these incomplete channels, thereby reducing the device's RTN noise. However, existing noise reduction methods only target the RTN noise in the device and do not address other noise signals. Furthermore, they require numerous iterations to determine whether the noise has been reduced, which increases the complexity and time cost of setting the conductance. Therefore, how to effectively and easily reduce noise in memristors and achieve stable conductance control remains a pressing technical challenge. Summary of the Invention
[0006] The technical problem this invention aims to solve is the conductance fluctuation caused by noise in memristors, and it proposes a universal noise reduction method. This invention provides a method based on random pulse sequence modulation of nanofilaments, which can reduce device noise during conductance adjustment, and not only RTN noise within the device. This invention reduces the complexity of noise reduction and improves its practicality.
[0007] To address the aforementioned technical problems, this invention provides a method for controlling memristor nanofilaments and reducing noise using a random pulse sequence, comprising the following steps: creating a voltage sequence with the same ratio of positive to negative pulses but different amplitudes; extracting pulse amplitudes from the voltage sequence using a random function; generating random time intervals that are not equal to 1 using a Poisson distribution function; repeating the operation according to a given number of pulses to generate the random pulse sequence; and applying a signal in the form of the random pulse sequence to the memristor.
[0008] To further address the technical problem to be solved by this invention, the amplitude of the positive and negative pulses is gradually reduced.
[0009] Preferably, the pulse width is 10 μs and 1 μs, and the number of pulses is set to 1000.
[0010] In one embodiment, the memristor is a cross-structured double-layer memristor.
[0011] like Figure 1 As shown, preferably, the memristor uses Ti as an adhesion layer, Pt as a bottom electrode 1, and HfO2 and Al2O3 as functional layers 2; Al2O3 is used as an insulating layer 3, and is peeled off to form a through-hole structure. Ti is used as a functional electrode, and Pt is used as a protective layer and a top electrode 4 to fill the through-hole.
[0012] In one implementation, the memristor is connected to a signal generator and a source meter via a switch matrix. The source meter is used to test the current of the memristor over a certain period of time to calculate the average conductance of the memristor. A certain threshold range is set, and if the conductance is within this range, the target conductance is achieved by default.
[0013] In one implementation, the memristor forms the basis of neuromorphic computing, mapping elements in the matrix to the conductance of the memristor, and performing deep learning algorithm calculations through vector-matrix multiplication.
[0014] In one implementation, the random pulse sequence is implemented using FPGA hardware, by writing timing logic code to control multiple counters and state machines to generate a high-frequency random pulse sequence.
[0015] Alternatively, the random pulse sequence is implemented in software using a microcontroller combined with a high-resolution DAC.
[0016] The method described above, which uses random pulse sequences to modulate memristor nanofilaments and reduce noise, was compared with the method of setting the target conductance using single pulses and random pulse sequences. Experimental results show that the target conductance set by random pulse sequences has lower noise than that set by single pulses. Introducing random positive and negative pulse signals during the target conductance setting process can reduce device noise, and is not limited to RTN noise. This method does not require additional circuitry or algorithms; noise reduction is achieved during the device's target conductance setting process. Attached Figure Description
[0017] The above and other features of the present invention will be further explained below in conjunction with the accompanying drawings and their detailed description. It should be understood that these drawings only illustrate several exemplary embodiments according to the present invention and should therefore not be considered as limiting the scope of protection of the present invention. Unless otherwise specified, the drawings are not necessarily to scale, and similar reference numerals denote similar parts.
[0018] Figure 1 This is a layout of the device in some embodiments of this application;
[0019] Figure 2 This is a flowchart of a noise reduction method provided in some embodiments of this application;
[0020] Figure 3 In some embodiments of this application, the random pulse sequence 1 takes the form of [missing information].
[0021] Figure 4 In some embodiments of this application, the random pulse sequence 2 takes the form;
[0022] Figure 5 In some embodiments of this application, the form is a single pulse;
[0023] Figure 6 This refers to the RMS difference in target conductance between a single pulse and a random pulse in some embodiments of this application. Detailed Implementation
[0024] The following detailed description incorporates the accompanying drawings, which form part of this specification. The illustrative embodiments mentioned in the description and drawings are for illustrative purposes only and are not intended to limit the scope of the invention. Those skilled in the art will understand that many other embodiments can be employed, and various changes can be made to the described embodiments without departing from the spirit and scope of the invention. It should be understood that the various aspects of the invention illustrated herein can be arranged, substituted, combined, separated, and designed in many different configurations, all of which are included in this invention.
[0025] First, to study the noise characteristics of the memristor, we designed a cross-structured double-layer memristor (Pt / Ti / HfO2 / Al2O3 / Pt), and the device layout is attached. Figure 1 As shown, the manufacturing process is as follows: The bottom electrode 1 is patterned by photolithography; a 10 nm Ti layer is magnetron sputtered as an adhesion layer; and a 50 nm Pt layer is deposited as the bottom electrode 1. Atomic layer deposition of a 10 nm HfO2 and a 2 nm Al2O3 film is performed as the functional layer 2; the Al2O3 layer improves the stability and consistency of the device. Circular vias are photolithographically patterned, and a 100 nm Al2O3 insulating layer 3 is deposited using an ion beam deposition machine. The via structure is then stripped to form the via structure. The top electrode 4 is patterned by photolithography; a 20 nm Ti layer is magnetron sputtered as the functional electrode; and then a 100 nm Pt layer is deposited as a protective layer to fill the vias with the top electrode 4. When wire bonding the device for testing, the bottom electrode 1 is connected to ground. A signal generator and a source meter are connected via a switch matrix. The signal generator generates pulse signals, and the source meter reads current signals at a constant voltage.
[0026] During the formation of the CF (conductive filament) in a memristor, some incomplete conductive channels are randomly generated. These incomplete channels affect charge transport in the CF, leading to noise and unstable changes in conductance within the device. While incomplete channels generated during conductance setting cannot be eliminated by a single pulse, the simultaneous action of positive and negative pulses during random pulse conductance setting increases the probability of eliminating these channels, thereby reducing device noise during conductance setting.
[0027] To generate random pulse signals, we first create a sequence of positive and negative pulses with a certain proportion and amplitude. We then randomly select pulse voltages from this sequence, and finally, we extract random time intervals from a Poisson distribution. Finally, we generate the corresponding random pulse sequence according to the number of pulses. The Poisson distribution is a discrete probability distribution used to describe the probability distribution of the number of times an event occurs within a given time period or spatial region. The Poisson distribution is suitable for events that occur independently and sparsely, where each event occurs independently and does not affect others.
[0028] Example 1:
[0029] Figure 2 A flowchart illustrating a noise reduction method provided for at least one embodiment of this disclosure. Figure 2As shown, the noise reduction method includes the following steps: creating a voltage sequence with the same ratio of positive to negative pulses but different amplitudes; extracting pulse amplitudes from the voltage sequence using a random function in Python, then generating random time intervals (not equal to 1) using a Poisson distribution function, and repeating this process according to a given number of pulses to generate a random pulse sequence of the form 1. In the device used in this invention, the pulse width is 10 μs and 1 μs, the number of pulses is set to 1000, and the pulse form is as shown in the attached figure. Figure 3 As shown. For different memristors, parameters such as pulse amplitude, width, and number can be optimized according to the actual device performance.
[0030] As an example, the random function (code) is as follows:
[0031] positive_state = np.array([pulse_.voltage] * (int(pulse_.points * positive_ratio))) # Generate the corresponding number of positive pulses
[0032] negative_state = np.array([-pulse_.voltage] * (int(pulse_.points * (1 - positive_ratio))) # Number of negative pulses generated
[0033] waveform._data=np.concatenate((positive_state,negative_.state)) # List of positive and negative pulses
[0034] # Create a new waveform
[0035] final_waveform []
[0036] for _in range(pulse_points):
[0037] #Randomly select a pulse
[0038] pulse_choice np.random.choice(waveform_data)
[0039] final_waveform.append(pulse_choice)
[0040] # Randomly select the time interval of the Poisson distribution
[0041] Lambda_poisson 1
[0042] interval = np.random.poisson(Lambda_.poisson) + 1 # Adding 1 ensures that the Poisson distribution does not take the value d.
[0043] final_waveform.extend([0]*interval) # Adds a Poisson interval (denoted by 0) after the pulse.
[0044] print(f"p_ratio:{(np.sum((np.array(final_waveform))>0)) / pulse_points}")
[0045] Example 2:
[0046] Create a voltage sequence with the same ratio of positive to negative pulses, but different pulse amplitudes. Use a random function in Python to extract pulse amplitudes from the voltage sequence, then generate random time intervals (not equal to 1) using a Poisson distribution. Repeat this process with a given number of pulses to generate a random pulse sequence (Form 2), where the amplitudes of the positive and negative pulses gradually decrease. The pulse widths are set to 10 µs and 1 µs, and the number of pulses is set to 1000. The pulse format is shown in the attached diagram. Figure 4 As shown. For different memristors, parameters such as pulse amplitude, width, and number can be optimized according to the actual device performance.
[0047] The noise testing process for devices and how to compare noise levels:
[0048] The conductance of a memristor increases or decreases depending on the applied positive and negative pulse voltages. When setting a random pulse sequence, a positive pulse amplitude greater than a negative pulse amplitude increases the conductance, while a negative pulse amplitude greater than a positive pulse amplitude decreases the conductance. Different forms of random pulse sequences are applied to the device to increase its conductance to the target value. If the conductance exceeds the target value, a random pulse sequence with a higher negative pulse amplitude is applied. After setting the target conductance, the current signal is read at a low voltage. Based on the read current data, the normalized RMS of the current is calculated to measure the relative fluctuation of the current, which is used as a standard to evaluate the noise level. We compared the target conductance setting using single pulses and random pulses, and found that the conductance noise set by random pulses is lower than that set by single pulses.
[0049] Positive and negative pulses will increase or decrease the conductance of the device. After each pulse signal is applied, the source meter tests the device current for 2 seconds and calculates the average conductance to see if it reaches the target conductance. The threshold range is set to 20 µs; if it is within this range, the target conductance is assumed to have been reached. After setting the target conductance, the device current is tested for 100 seconds at a sampling rate of 10K. The normalized RMS of the 100-second current data is calculated as the noise level for measuring the target conductance state. The pulse width of a single pulse is 10 µs, and the pulse width of a random pulse is either 10 µs or 1 µs. The pulse format is shown in the attached figure. Figure 3 and 4 As shown in the figure. The target conductance was varied from 200 μS to 2000 μS using several different pulse formats, including single pulses and random pulses. After each set to the target conductance state, the current data and normalized RMS value were recorded. The RMS values of the single pulse and random pulse tests for the same target conductance state were subtracted, and the mean and standard deviation of the differences from ten cycles of testing were plotted on the same graph as shown in the attached figure. Figure 6 We found that the RMS conductance was lower with random pulses compared to single pulses, meaning the target conductance noise was lower with random pulses, especially noticeable in low conductance states. When we controlled the conductance of the memristor with pulses, adding random positive and negative pulse signals to the pulse sequence resulted in lower target conductance noise compared to single pulse settings.
[0050] In neuromorphic computing, memristor conductance is modulated and noise is reduced using random pulse sequences:
[0051] Memristors, as emerging storage devices, have become the foundation of in-memory computing architectures formed by memristor arrays. The core of deep learning algorithms is vector-matrix multiplication, where elements of a matrix are mapped to the conductance of a memristor, and the computation and storage occur at the same location in the cross array. Vector-matrix multiplication can be implemented based on physical principles such as Ohm's law and Kirchhoff's laws. To perform different matrix multiplication calculations, the memristors in the array need to be adjusted to different target conductances. To reduce errors caused by conductance noise disturbances, random pulse signals can be added during the adjustment of the target conductance to reduce device noise and thus improve the accuracy of neural network calculations. Random pulse sequences can be implemented using FPGA hardware, by writing timing logic code to control multiple counters and state machines to generate high-frequency random pulse sequences. Alternatively, a microcontroller (such as Arduino or STM32) combined with a high-resolution DAC (digital-to-analog converter) can be used to define the pulse sequence in software and output it to the DAC to generate a pulse signal. The microcontroller controls the frequency and width of the pulses through a timer and outputs a voltage waveform through the DAC. Different hardware methods can be selected to generate random pulse sequences depending on the actual circuit. This method does not require additional algorithms or a separate pulse denoising process. It achieves denoising by setting the target conductance, thus reducing the complexity and time cost of denoising.
[0052] In the description of this invention, it should be understood that the terms "center," "longitudinal," "lateral," "length," "width," "thickness," "upper," "lower," "front," "rear," "left," "right," "vertical," "horizontal," "top," "bottom," "inner," "outer," "clockwise," "counterclockwise," "axial," "radial," and "circumferential" indicate the orientation or positional relationship based on the orientation or positional relationship shown in the accompanying drawings. They are used only for the convenience of describing this invention and simplifying the description, and do not indicate or imply that the device or element referred to must have a specific orientation, or be constructed and operated in a specific orientation. Therefore, they should not be construed as limitations on this invention.
[0053] Furthermore, the terms "first" and "second" are used for descriptive purposes only and should not be construed as indicating or implying relative importance or implicitly specifying the number of technical features indicated. Thus, a feature defined as "first" or "second" may explicitly or implicitly include at least one of that feature. In the description of this invention, "a plurality of" means at least two, such as two, three, etc., unless otherwise explicitly specified.
[0054] In this invention, unless otherwise explicitly specified and limited, the terms "installation," "connection," "linking," and "fixing," etc., should be interpreted broadly. For example, they can refer to a fixed connection, a detachable connection, or an integral part; they can refer to a mechanical connection or an electrical connection; they can refer to a direct connection or an indirect connection through an intermediate medium; they can refer to the internal communication of two components or the interaction between two components, unless otherwise explicitly limited. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.
[0055] Any process or method description in the flowchart or otherwise herein can be understood as representing a module, segment, or portion of code comprising one or more executable instructions for implementing a particular logical function or process, and the scope of the preferred embodiments of the invention includes additional implementations in which functions may be performed not in the order shown or discussed, including substantially simultaneously or in reverse order depending on the functions involved, as will be understood by those skilled in the art to which embodiments of the invention pertain.
[0056] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.
[0057] Although embodiments of the present invention have been shown and described above, it is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, substitutions and variations to the above embodiments within the scope of the present invention.
Claims
1. A method for modulating memristor nanofilaments and reducing noise using random pulse sequences, comprising the following steps: Create a voltage sequence with the same ratio of positive to negative pulses but different amplitudes; Use a random function to extract pulse amplitudes from the voltage sequence; Random time intervals that are not equal to 1 are generated by a function of discrete probability distribution; The random pulse sequence is generated by repeating the operation according to a given number of pulses. The above-mentioned random pulse sequence signal is applied to the memristor to modulate the memristor nanofilaments and reduce noise; During the process of setting conductance using random pulses, the simultaneous action of positive and negative pulses increases the probability of eliminating incomplete channels, thereby reducing device noise during conductance setting. The target conductance set by a random pulse sequence has lower noise compared to the target conductance set by a single pulse. The memristor is a cross-structured double-layer memristor; The memristor uses Ti as the adhesion layer, Pt as the bottom electrode, and HfO2 and Al2O3 as functional layers; it uses Al2O3 as the insulating layer and peels it off to form a through-hole structure. The memristor uses Ti as the functional electrode, Pt as a protective layer, and Pt as a top electrode to fill the vias; The memristor is connected to a signal generator and a source meter via a switch matrix. The source meter is used to test the current of the memristor over a certain period of time to calculate the average conductance of the memristor. A certain threshold range is set, and if the conductance is within this range, the target conductance is achieved by default.
2. The method as described in claim 1, characterized in that, The amplitude of the positive and negative pulses gradually decreases.
3. The method as described in claim 1, characterized in that, The discrete probability distribution function is a Poisson distribution.
4. The method as described in claim 1, characterized in that, The memristor forms the basis of neuromorphic computing, mapping the elements in the matrix to the conductance of the memristor, and performing deep learning algorithm calculations through vector-matrix multiplication.
5. The method as described in claim 4, characterized in that, The random pulse sequence is implemented using FPGA hardware. Timing logic code is written to control multiple counters and state machines to generate a high-frequency random pulse sequence.
6. The method as described in claim 4, characterized in that, The random pulse sequence is implemented in software using a microcontroller combined with a high-resolution DAC.
Citation Information
Patent Citations
Neuromorphic processing apparatus
CN110998611A
Superlattice ferroelectric memristor based on HfO2 / ZrO2 or HfO2 / Al2O3 and preparation thereof
CN114023876A
Random matrix vector multiply-add operation system and operation method thereof
WO2024221762A1