Resistive arrays can be used to store digital data. Sense circuitry connected to the resistive arrays detects the state of resistive devices within the resistive array and sends these measurements to external circuitry for communication and processing.
The accompanying drawings illustrate various examples of the principles described herein and are a part of the specification. The illustrated examples are merely examples and do not limit the scope of the claims.
Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.
A variety of technologies and devices can be used to create resistive memory arrays. For example, programmable resistance random access devices (PRRAM), magnetroresistive random access memory (MRAM), metal oxide based memory cells and other memristive technologies are examples of resistive memory. For purposes of explanation, nonvolatile resistive memory technologies will all be described as “memristive” or as a “memristor(s).” The term “memristor” is a portmanteau of two terms: “memory” and “resistor.” Any resistive device that can be programmed to different resistive states and maintains the programmed resistance state for a designated period of time can be termed a memristor.
Memristors are time varying non-linear devices that have the potential to compete with available solid state memory in terms of density and power consumption. To form high density memory, memristors can be arranged in crossbar arrays with write and read circuitry arranged around the perimeter of the arrays. In one example, the crossbar array may include an upper layer of crossbars (row lines) and a lower layer of crossbars (column lines). The upper layer of crossbars is oriented so that they intersect the lower layer of crossbars. The memristors are formed at intersections of the upper and lower crossbars so that each memristor connects a different pair of upper and lower crossbars. In one example, the read and write circuitry address a targeted memristor by applying the appropriate voltage to a row crossbar and a column crossbar that are joined at their crossing point by the target memristor. A write voltage produces a change of state in the memristor. For example, the memristor may be programmed by applying a programming voltage to the appropriate column line and row line. The memristor will then be programmed to have either a high resistance state (“OFF” state) or a low resistance state (“ON” state). The OFF state may represent a binary “0” and the ON state may represent a binary “1”. These states remain substantially stable until another programming voltage is applied to the memristor. Thus, a large array of memristors can be programmed for nonvolatile storage of digital data.
The read circuitry is to detect the state of the memristors in the crossbar array without changing the state of the memristors. Thus, the energy applied during the read process is typically lower than the energy applied during the programming process. The challenge of reading the state of a specific memristor is complicated by a number of factors. Memristors in the same memristor array may have different electrical characteristics. Particularly as memristor sizes shrink to tens of nanometers, variations in the number of atoms contained in the switching layer and dopant atoms in the switching layer can produce substantial variations in the electrical performance of the memristors. Other possibilities include variations in the size and material composition of the memristors.
Other factors that vary between memristors include the location of the memristor within the array. For example, a memristor that is farther away from the read circuitry appears to have different electrical characteristics during reading than a memristor that is located next to the read circuitry.
These purely resistive crossbar arrays do not have integral isolation devices (such as diodes). This allows the structure of the cross point arrays to be relatively simple and compact but makes the state of the memory elements difficult to sense at high speeds. In order to overcome the challenges described above, sense circuitry may use multiple sample techniques and adaptive sense techniques that rely on analog feedback, which require long settling times for acquiring sense references and long delay times for stable, reliable sensing.
The principles described herein are directed systems and methods for reading the resistance states of memristors of a crossbar array. These principles describe dynamic sense circuitry that uses a two sample method to make accurate and extremely fast measurements of memristor states. The principles include auto-zeroing a pre-amplifier and a dynamic reference voltage and then developing a dynamic differential signal at an input of a pre-amplifier. In contrast to with the examples described above, the pre-amplifier operates in an open loop mode and consequently does not require feedback or incur long time delays for settling/stability. The output of the pre-amplifier is coupled to a high gain post-amplifier. The output analog signal of the post-amplifier is sampled by an output latch.
One example of a high speed dynamic sense circuit that implements these principles was simulated using SPICE® with 0.25 u CMOS transistor parameters. The high speed sense circuit demonstrated operation over a wide range of circuit parameters and exhibited read latency delays on the order of 200 nanoseconds or less. Alternative sensing circuits such as those described above, would have read latencies on the order of 1 microsecond to 10 microseconds. Thus, the principles described provide for 500% to 5000% decrease in the time to read resistive memory arrays.
In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present systems and methods. It will be apparent, however, to one skilled in the art that the present apparatus, systems and methods may be practiced without these specific details. Reference in the specification to “an example” or similar language means that a particular feature, structure, or characteristic described in connection with the example is included in at least that one example, but not necessarily in other examples.
To address a particular memristor device, the appropriate row and column lines are selected. Ideally, only the resistive device at the intersection of the selected row line and column line would influence the measurement. However, there are a number of other factors, including leakage paths through other memristors, which may obscure the resistance measurement. Although only three row lines and two column lines are illustrated, the array may include hundreds or thousands of row and column lines.
When a read or programming voltage is applied to a particular pair of row and column lines, a substantial portion of the applied current passes through the memristor at the intersection of the row line and column line. For example, in
There may be a number of additional components and variables that influence the measurement and operation of the system shown in
The generation of the reference voltage and sense voltage will now be discussed with reference to
Leakage currents travel through other paths within the memristor array and pass through half selected memristors connected to the grounded row line. In this example, memristor M1 represents these half selected memristors. The resistance of these leakage paths is designated as R_rhs.
The current induced by the applied read voltage flows through two paths: a first path through R_chs and R_ref and a second path through R_rhs. The reference voltage V_ref is extracted from the first path between R_chs and R_ref. The leakage currents flow through the second path. The actual resistance values depend on the programmed resistance states of the memristors that contribute to the resistance values.
After making the reference voltage and sense voltage measurements, the dynamic sense circuitry compares the measurements. This eliminates noise components that the two measurements have in common and emphasizes the difference (if any) in the resistance states of the reference memristor and selected memristor. For example, R_chs may be substantially the same in both measurements. A significant amount of the resistance R_rhs may remain the same. By differencing V_ref and V_sen, the comparator eliminates most of the noise in the measurements. Thus, the difference between the reference voltage and the sense voltage is primarily attributable to the difference in state between the reference memristor M2 and the selected memristor M4. The state of the reference memristor M2 is known. For example, the reference memristor M2 may be set to a high resistance. If the selected memristor M4 is also in a high resistance state, the difference between the reference voltage and the sense voltage will be minimal and will be below a sense threshold. However, if the selected memristor is in a low resistance state, the sense voltage will be greater than the reference voltage and will be above a sense threshold.
An RC circuit in the comparator (110) is used to sample Vref and hold Vref as a dynamic reference voltage which is later compared to the sense voltage Vsen by the differential pre-amplifier (112). For efficient CMOS layout concerns, the differential pre-amplifier may be a minimum size, five transistor, operational amplifier. If the differential pre-amplifier was an ideal amplifier, the output voltage would not change when an identical voltage is applied to both the positive and negative inputs. If there is a small difference between the positive and negative input voltages, as may be caused by offset error, the difference voltage will be multiplied by the gain of the amplifier and result in unpredictable positive or negative swings in the output voltage. This undesirable offset error is compensated for by an auto-zero technique.
The comparator (110) operates in two different modes or configurations: a setup mode and a sense mode. The setup mode begins with an ‘auto-zero’ operation that will cancel the effect of amplifier offset error. Additionally, a measurement of the reference voltage from the crossbar array is also made during the set-up mode. As discussed above with respect to
A sense mode follows the setup mode where the reference device will be switched out (from ‘GND’ to ‘VR’,
A sample window is opened to sense the magnitude of the Vo_AC step to be conveyed to the output data latch through the AC coupled post-amplifier. As discussed above, the differential comparator differences the Vref input on the negative line and Vsen input on the positive line. The AC coupling capacitor blocks the DC component (Vo) of the resulting voltage signal. The amplitude of the output of the differential comparator peaks just after Vsen is introduced and before the reference voltage has decayed. A sample window is opened to sense the magnitude of the Vo_AC step to be conveyed to the output data latch through the AC coupled post-amplifier. The sample window is selected right after Vsen is switched into the circuit. This ensures that the maximum difference between the Vref and Vsen is measured. This is captured as delta_Vsample˜A*(Vin_sen−Vin_ref), where ‘A’ is an amplification factor that is a characteristic of the pre-amplifier.
In the setup mode, the auto-zero operation, the capture of the Vref voltage in the RC circuit, and equalization of the Vin_pos and Vin_neg nodes occur. Some amount of offset error in the pre-amplifier can be expected. The ‘auto-zero’ portion of the circuit generates an input offset voltage to neutralize offset error inherent in the differential pre-amplifier. The basic idea of offset cancellation is to sample the offset of the pre-amplifier during one clock phase and subtract it from the signal during the other clock phase. The setup mode enables the sampling of the offset by forming a unity gain closed feedback loop that feeds the output (Voffset) of the pre-amplifier back into a capacitor Coff connected to the negative input of the pre-amplifier. In this example, this is accomplished by the control signal p2 being high to close switch P2B. The feedback through switch p2B charges capacitor Coff. The capacitor Coff represents output load of the gain state during phase 1. Later in the sense phase, switch p2B is open so that the gain stage is in the open loop configuration and an offset free comparison is performed.
To capture the Vref voltage in the RC circuit, switch p2 is closed to quickly charge capacitor C to approximately Vref and is opened to allow Vref current to flow into the RC circuit and complete the charging of capacitor C. This operation occurs simultaneously with the auto-zero operation. After the auto-zero operation and charging of the capacitor C with Vref is complete, switches p1 and p1B remain closed to allow the equalization of the Vin_pos and Vin_neg nodes to Vref. This provides a fast, initial charge of Vin_neg node to Vref. The final charge of Vin_neg to Vref is through the RC network. The use of the RC network and the fast charge is a means to avoid the effect of ‘clock feedthrough.’
When the offset capacitor Coff has captured the offset error, the capacitor C has captured the reference voltage Vref and the two nodes (Vin_pos, Vin_neg) have equalized, the comparator is ready to switch into the sensing mode.
At time F, p2 goes low but p1 remains high. This allows nodes Vin_pos and Vin_neg to equalize. At time G, p1 goes low and all switches in the comparator are open. The dynamic auto-zero pre-amp is ready for the sense mode.
In the sense mode, switch p1B is closed but all other switches remain open. This allows the captured reference voltage Vref to pass through p1B and the offset error correction capacitor Coff to the negative input of the pre-amplifier. Vsen is applied on the data bus line which is directly connected to the positive input of the pre-amplifier. As discussed above, Vref decays according to an RC time constant to eventually match Vsen. However, the initial value of Vref sensed at the negative terminal of the pre-amplifier is approximately the true value of Vref. The pre-amplifier compares this Vref value to Vsen before significant change in the value of Vref occurs. The pre-amplifier outputs this difference as discussed with reference to
Illustrated in
The truth table (501) in
As seen in the table (501), in the first row (502), the SR latch (120) will hold the current value on the output Q, when both set and rst are a logical 0. When set receives a logical 1, and rst receives a logical 0, shown in the third row (504), the output Q will be set to a logical 1. The final valid combo, seen in row two (503), is set receiving a logical 0 and rst receiving a logical 1, which results in the output Q being set to a logical 0.
The digital output on Q of the SR latch (120) is held with this valid data, generally for the duration of the READ cycle, until the latch is reset, by way of the rst input. In this particular example, the SR latch is considered gated. The pOSmpl gate is placed on the set input line to either deny or allow an input to pass. The gate is closed, blocking all incoming signals, until the proper sampling window arrives. During the sampling window, the pOSmpl gate is disabled, allowing any signal to pass, and therefore perform their perspective action. After the output has been correctly loaded, it can be communicated to the memory controller (125).
The set up operation (block 607) begins by performing the auto-zero operation (block 610) and capturing the sense reference voltage (block 615). The auto-zero operation is executed on the pre-amplifier while an internal node (Vin_neg) is pre-charged to the sense voltage (Vin_sense). After the auto-zero/pre-charge operation, the node Vin_neg is then allowed to adjust the input sense reference voltage to further approach (Vin_sense) with an RC time constant (block 615).
The sense mode operation (block 617) follows the set up operation. In one implementation, the sense mode operation includes the following sequence. The SR latch is reset so that V_data_out (Q) is reset to a known value (block 620). The input stage of the post amplifier is pre-charged to a high gain bias point (equalize) (block 625). The reference row is connected to the READ sense voltage (VS) and the selected row is simultaneously connected to GND (block 630). The transient initiated by the switch of the reference row and selected row causes a step in Vin_sense. The step is also applied to Vin_ref through the RC circuit with a delayed RC response. For a reasonable time window, the transient will cause a large difference voltage to be applied to the comparator (Vin_sense(t)−Vin_ref(0)).
The transient difference is amplified by the pre-amplifier and AC coupled to the high gain post amplifier (block 635). The large transient signal out of the post amplifier is sampled and applied to the SR latch (block 640). The last step in the sense operation is to hold the transient state out of the post amplifier in a set-reset latch which is coupled to a memory controller circuit (block 645).
In conclusion, the dynamic sense circuitry includes a “Fast Auto Zero, Dynamic Differential Comparator” pre-amplifier followed by a high speed, AC coupled post amplifier block and a set-reset data latch. The high speed pre-amplifier dynamically creates a reference voltage using a reference memory cell in the selected column in a cross point array of resistive memory cells and to amplify the dynamic difference between the sense voltage and the reference voltage using a high gain, high speed, differential amplifier. The output of the differential amplifier is then AC coupled to the high gain, high speed post amplifier and the set-reset latch.
The reference voltage is setup and stored on the storage capacitor coupled to the sense signal through a series resistor. In the sense mode, an unknown memory cell is connected to the selected column while, simultaneously, the reference cell is disconnected, causing the sense voltage to be applied to one node of a differential comparator and a delayed sense voltage to be applied to the second node of the differential comparator through a series resistor connected to the storage capacitor that is initially charged to the reference voltage. The difference between the sense voltage and the RC delayed sense voltage on the storage capacitor is amplified through an AC coupled amplifier and the result is stored in a clocked latch circuit to complete the sense amplifier operation.
The principles described herein allow extremely fast read time of state within resistive arrays. The read latency issue is solved in this design in at least two ways. First, the pre-amplifier is operated in an open-loop mode, eliminating the need to slow the amplifier down for closed loop stability considerations and eliminating the need to add time delay while a closed loop feedback system settles to an acceptable operating point.
Second, an RC network is introduced as a dynamic sample-and-hold circuit in place of conventional switched, sample-and-hold circuits. An RC network will hold a reference voltage long enough to complete a comparison operation without the need for sample-and-hold circuitry and the need for inserting sample-and-hold clock delays. Eliminating sample-and-hold clock delays and feedback amplifier settling time delays will significantly improve the read latency performance for sensing resistive cross point memory arrays. For example, a 50× improvement in read latency is demonstrated for a set of array parameters that represent a 1K by 1K array of memristor memory elements with a low resistance state of 10 meg-ohms, a resistance ratio of 10 and a memristor READ nonlinearity (Kr) of 10.
The principles described above allow for the simplification of the pre-amplifier design by eliminating the need for a feedback control network. By operating without a feedback network, i.e., in an open-loop mode, eliminated closed loop stability issues and delays associated with intentionally slowing the amplifier down and requiring extra settling time. Another advantage of the principles described is the use of a simple RC network to capture the sense-reference voltage instead of a sample-and-hold network. The simplification in the pre-amplifier and reference voltage circuit allows for shorter read latency delay times and offers significant simplifications in the physical circuit design. This provides for significantly faster read times and smaller footprints for reading circuitry.
The preceding description has been presented only to illustrate and describe examples of the principles described. This description is not intended to be exhaustive or to limit these principles to any precise form disclosed. Many modifications and variations are possible in light of the above teaching.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/US2012/048679 | 7/27/2012 | WO | 00 | 1/16/2015 |