WO2016068918A1 - Storing a discrete analog signal - Google Patents

Storing a discrete analog signal Download PDF

Info

Publication number
WO2016068918A1
WO2016068918A1 PCT/US2014/062948 US2014062948W WO2016068918A1 WO 2016068918 A1 WO2016068918 A1 WO 2016068918A1 US 2014062948 W US2014062948 W US 2014062948W WO 2016068918 A1 WO2016068918 A1 WO 2016068918A1
Authority
WO
WIPO (PCT)
Prior art keywords
memristive
memristor
parallel
serial
electrically coupled
Prior art date
Application number
PCT/US2014/062948
Other languages
French (fr)
Inventor
Brent Buchanan
Original Assignee
Hewlett Packard Enterprise Development Lp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Enterprise Development Lp filed Critical Hewlett Packard Enterprise Development Lp
Priority to PCT/US2014/062948 priority Critical patent/WO2016068918A1/en
Publication of WO2016068918A1 publication Critical patent/WO2016068918A1/en

Links

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C27/00Electric analogue stores, e.g. for storing instantaneous values
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/56Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
    • G11C11/5685Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using storage elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0007Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/003Cell access
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C19/00Digital stores in which the information is moved stepwise, e.g. shift registers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/02Arrangements for writing information into, or reading information out from, a digital store with means for avoiding parasitic signals
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • G11C13/0021Auxiliary circuits
    • G11C13/0069Writing or programming circuits or methods
    • G11C2013/0092Write characterized by the shape, e.g. form, length, amplitude of the write pulse
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/56Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
    • G11C2211/564Miscellaneous aspects
    • G11C2211/5648Multilevel memory programming, reading or erasing operations wherein the order or sequence of the operations is relevant
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/75Array having a NAND structure comprising, for example, memory cells in series or memory elements in series, a memory element being a memory cell in parallel with an access transistor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/79Array wherein the access device being a transistor

Definitions

  • Quantization is the process of mapping a set of continuous input values onto a discrete set, such as rounding values to some unit of precision.
  • the difference between the actual analog value and the quantized digital values is called a quantization error.
  • the difference between a targeted analog value (i.e., the ideal and desired result of writing an analog value to memristor) and the actually obtained analog value is called writing error.
  • FIG. 1 is a block diagram of a memory device according to one example of the principles described herein.
  • Fig. 2 is a circuit diagram of a number of serial 1T1 R memory cells electrically coupled in parallel to form an array according to one example of the principles described herein.
  • Fig. 3 is a circuit diagram of a number of serial 1T1 R memory cells electrically coupled in parallel with the array electrically coupled to a chain shift register according to one example of the principles described herein.
  • Fig. 4 is a number of circuit diagrams demonstrating the propagation of a signal through a parallel array of serial 1T1 R memory cells according to one example of the principles described herein.
  • Fig. 5 is a circuit diagram of a number of parallel 1T1 R memory cells electrically coupled in series to form an array according to one example of the principles described herein.
  • Fig. 6 is a circuit diagram of a number of parallel 1T1 R memory cells electrically coupled in series with the array according to another example of the principles described herein
  • Fig. 7 is a number of circuit diagrams demonstrating the propagation of a signal through a serial array of parallel 1T1 R cells according to one example of the principles described herein.
  • Fig. 8 is a circuit diagram to convert a stream of discrete analog resistance values into a voltage waveform according to one example of the principles described herein.
  • Fig. 9 is a flowchart showing a method of storing a discrete analog sequence according to one example of the principles described herein.
  • the present specification describes the use of memristive devices to store a discrete-time analog signal using the properties of the memristors to shape the noise and restore the analog sequence of the signal by shifting a window of cell selection signal sequentially along a length of a string of memristive devices.
  • the specification further describes a method of storing a discrete analog sequence, including programming, in an ordered sequence, a set of targeted analog values in a number of memristive bit cells, and attenuating writing errors by noise-shaping.
  • This method may further include restoring the discrete analog sequence by shifting a window of memristive bit cell selection signals sequentially along the number of memristive bit cells.
  • resistive random access memory including a number of memristive devices electrically coupled together to form an array of memristive devices, each memristive device including a field-effect transistor and a memristor electrically coupled with the filed-effect transistor wherein a discrete analog sequence is stored on the resistive random access memory cell by programming, in an ordered sequence, a set of targeted analog values in the memristive bit cells, and attenuating writing errors by noise-shaping.
  • the present specification also describes a memory device, including a number of memristive cells, each memristive cell including a transistor and a memristor electrically coupled to the transistor wherein a discrete analog sequence is stored on the memory device by programming, in an ordered sequence, a set of targeted analog values in the memristive cells, and attenuating writing errors by noise-shaping.
  • a memristive device is meant to be understood broadly as any device that stores a value as a resistance.
  • a memristive device may be a passive two-terminal electronic device that is built to express only the property of memristance.
  • the memristive device may be a unipolar resistive random-access memory (RRAM).
  • the memristive device may be a phase change random-access memory (PCRAM).
  • the memristive device may be a memristor.
  • the term “memristance” is meant to be understood as a property of an electronic component such that 1.) bipolar switching - an electronic charge that flows in one direction through a circuit creates an increased resistance while if charge flows in the opposite direction in the circuit, the resistance will decrease, or 2.) unipolar switching - a current of a particular magnitude flowing in either direction creates an increased resistance while a current of a different magnitude flowing in either direction causes a decreased resistance. If the flow of charge is stopped by turning off the applied voltage, the component will 'remember' the last resistance that it had, and when the flow of charge starts again the resistance of the circuit will be what it was when it was last active.
  • Fig. 1 is a block diagram of a memory device according to one example of the principles described herein.
  • the memory device (100) may be implemented in an electronic device.
  • Examples of electronic devices include servers, desktop computers, laptop computers, personal digital assistants (PDAs), mobile devices, smartphones, gaming systems, and tablets, among other electronic devices.
  • PDAs personal digital assistants
  • mobile devices smartphones, gaming systems, and tablets, among other electronic devices.
  • the memory device (100) may include a number of transistors (105) and a number of memristors (110) electrically coupled to each of the transistors to form a number of memristive memory cells. At least two transistor-memristor configurations will be described herein, however, the present specification contemplates other configurations that accomplishes the functionality of the memory device (100) described herein. Additionally, a number of transistor-memristor memory cells may be electrically coupled together to form at least two different kinds of arrays.
  • each memristor is coupled to a transistor in series.
  • the present specification will refer to this as a serial 1T1 R memory cell.
  • an array of transistor-memristor memory cells are created by electrically coupling together the serial 1T1 R memory cell in parallel. This configuration may be seen in Fig. 2 of the present specification and will be described in more detail below.
  • each memristor is coupled to a transistor in parallel.
  • the present specification will refer to this as a parallel 1T1 R memory cell.
  • an array of transistor-memristor memory cells are created by electrically coupling together the parallel 1T1 R memory cells in series. This configuration may be seen in Fig. 5 and will be discussed in more detail below.
  • the memory device (100) receives as input a discrete analog signal (1 15). As will be described below, this discrete analog signal is stored on the memristors of the memory cells in an ordered sequence as targeted analog values. Memristive devices are used occasionally to store either a high-resistive state or a low-resistive state. However, the present memory device (100) uses the continuum of states that exist in a memristive device to store, as close as possible, the values of the discrete-time analog signals. Each resistive state that each memristor is set to may indicate a particular analog value of the discrete analog signal.
  • the transistor-memristor memory cells described above may include a bipolar resistive random-access memory (RRAM) cell or a unipolar RRAM cell.
  • RRAM resistive random-access memory
  • a relatively low resistive state are can be set when sufficient current is ran through in one direction while a relatively high resistive state can be reset when a current is ran through in the opposite direction.
  • a unipolar RRAM cell the switching between the lower and higher states is accomplished by using the same polarity of current to set and reset the cell.
  • Fig. 2 is a circuit diagram of a number of serial 1T1 R (205) memory cells electrically coupled in parallel to form an array (200) according to one example of the principles described herein.
  • 8 serial 1T1 R (205) memory cells are shown and labeled as R Rs.
  • the serial 1T1 R (205) memory cells are arranged in parallel with each terminal end being electrically coupled to a top terminal voltage (V T ) and a bottom terminal voltage (V B ).
  • Each serial 1T1 R (205) memory cell may then have an analog signal programmed to it by setting a resistive state of the memristor in the serial 1T1 R (205) memory cell.
  • a discrete-time ordered sequence representing a number of discrete analog values may be programmed on the parallel group of serial 1T1 R (205) memory cells.
  • the current (210) through the selected serial 1T1 R (205) memory cell is show in Fig. 2 as a dashed line.
  • the voltage or sequence of voltages applied to achieve the current (210) may be sufficient to set the memristor (215) or memristors (215) to a resistive state representative of an analog signal to be saved.
  • Fig. 3 is a circuit diagram of a number of serial 1T1 R (205) memory cells electrically coupled in parallel to form an array (200) that is electrically coupled to a shift register chain (305) according to one example of the principles described herein.
  • Fig. 4 represents the method, using the clock shown in Fig. 3, of reading back an ordered sequence of values stored on the parallel array (200) of serial 1T1 R (205) memory cells.
  • a shift register chain (305) is electrically coupled to the serial 1T1 R (205) parallel array (200).
  • each shift register (310) in the shift register chain (305) may drive a matching transistor gate of one of the serial 1T1 R (205) cells.
  • FIG. 4 shows a number of circuit diagrams demonstrating the propagation of a signal through a parallel array (200) of serial 1T1 R (205) cells according to one example of the principles described herein.
  • Figs. 3 and 4 show only 8 serial 1T1 R (205) electrically coupled together to form a parallel array (200), any number of serial 1T1 R (205) cells may be coupled together to form the array (200).
  • any number of the serial 1T1 R (205) cells may be selected according to the methods described herein.
  • an analog sequence of eight values may be programed into the serial 1T1 R (205) memory cells in parallel.
  • Fig. 4 shows that a single analog value is set and, as it is read, is sequenced through the serial 1T1 R (205) memory cells
  • each serial 1T1 R (205) memory cell may be accessed individually to set a resistance that correlates with a sampled analog value. In this way, an analog signal may be stored and read quickly.
  • the individual resistive values read from each of the serial 1T1 R (205) may be added together such that their values may compensate for any corrupted analog value.
  • Fig. 5 is a circuit diagram of a number of parallel 1T1 R (505) memory cells electrically coupled in series to form an array (500) according to one example of the principles described herein.
  • 8 parallel 1T1 R (505) memory cells are shown and labeled as R Rs.
  • the parallel 1T1 R memory cells (505) are arranged in serial with the strand of the parallel 1T1 R memory cells (505) being connected to a left terminal voltage (V L ) and a right terminal voltage (V R ).
  • Each parallel 1T1 R (505) memory cell may then have an analog value programmed to it by setting a discrete resistive state of the memristor in the parallel 1T1 R memory cell (505).
  • each cell's transistor (515) may be left “off” by setting the gate of the transistor (515) in parallel with the memristor (510) to 0V.
  • the rest of the parallel 1T1 R memory cells (505) may be placed “on” by applying some supply voltage (V D D) to the transistors' gates (515).
  • V D D some supply voltage
  • Each of the parallel 1T1 R memory cell (505) that is turned on is shorted through by the activated transistor, leaving the terminals of the selected parallel 1T1 R memory cell (505) connected to the terminals V L and V R . This allows each parallel 1T1 R memory cells (505) to be accessed individually such that each can be written to and read from.
  • the parallel 1T1 R memory cells (505) in series also provides for the summation of multiple stored resistances.
  • Fig. 6 is a circuit diagram of a number of parallel 1T1 R memory cells electrically coupled in series according to another example of the principles described herein.
  • the transistors (515) for a number of parallel 1T1 R memory cells (505) are selected simultaneously as described above.
  • three parallel 1T1 R memory cells (505) (Ri , R 2 , R3) are simultaneously selected in this example, with the sum of their resistances appearing between terminals V L and V R .
  • the memristors (510) may be programmed individually to have a combined and predetermined resistive value.
  • Fig. 7 is a number of circuit diagrams demonstrating the propagation of a signal through a serial array (500) of parallel 1T1 R cells according to one example of the principles described herein.
  • a shift register chain (305) can be used here to shift a single ⁇ ' along the length of the serial chain of parallel cells, with s in all other shift registers.
  • an analog value may be stored in each of the memristive devices such that an ordered sequence of those analog values can be read later.
  • the resistive value on a number of these parallel 1T1 R memory cells (505) may be added together, low-pass filtering of the signal stream to recover the original analog sequence can be performed with a summation. Low-pass filtering may be useful when noise- shaping is used in writing the stored analog values.
  • serial 1T1 R (205) memory cell or parallel 1T1 R (505) memory cell in their respective arrays (200, 500) may be selected at a time
  • the resulting resistance performed when multiple serial 1T1 R (205) memory cells or parallel 1T1 R (505) memory cells can be used as an advantage when dealing with quantized errors and noise- shaping.
  • w is a discrete-time analog signal with a known Signal-to-Noise ratio (SNR).
  • SNR Signal-to-Noise ratio
  • An attempt may be made to store w in either the serial 1T1 R (205) memory cell array (200) or the parallel 1T1 R memory cell (505) array (500) - with one sample of w in each serial 1T1 R (205) memory cell or parallel 1T1 R memory cells (505) memory cell - with a level of accuracy such that wfs SNR is not degraded.
  • SNR Signal-to-Noise ratio
  • the present specification describes storing the sequence of discrete analog signals such that relatively little of the baseband signal is lost.
  • the sequence x[n] is stored on the parallel 1T1 R memory cells (505) of the series array (500) such that x is an oversampled and noise-shaped sequence created from the discrete-time signal w
  • restoration of w from x may be accomplished by low-pass filtering.
  • the low-passed result may be sub- sampled.
  • Oversampling increases the bandwidth of the discrete-time signal programmed into the arrays (200, 500). This may be accomplished by sampling the analog input signal at some higher rate than, for example, the Nyquist criteria to capture the base band.
  • Noise-shaping pushes either representational errors or quantization noise up into the spectrum created by the oversampling and out of the base band.
  • y[n] is the error corrupted output sequence
  • x[n] is the error-free input sequence
  • e[n] is the current error
  • e[n-1] is the error observed on the prior output.
  • x[n] is the discrete-time input
  • Y[n] is the discrete- frequency output such that Y[0] is the value at 'DC (i.e., the frequency of zero cycles/second point).
  • This scaling factor can be removed where appropriate using any number of circuits such as the output-stage voltage divider shown in Fig. 8 coupled to the array of parallel 1T1 R memory cells (505).
  • sub-sampling may optionally be accomplished by either clock bursts that move the selection window M bit between outputs or by ignoring every L output samples (where M and L are integers determined by the specifics of the operation at hand).
  • Equation 3 For the parallel array of serial 1T1 R memory cells described in connection with Fig. 4, other operations than the linear addition of Equation 3 can be performed by the simultaneous selection of multiple memory cells.
  • Fig. 9 is a flowchart showing a method (900) of storing a discrete analog sequence according to one example of the principles described herein.
  • the method (900) may begin with programming (905), in an ordered sequence, a set of targeted analog values in a number of memristive bit cells.
  • the memristive bits cells may include a memristor and a transistor electrically coupled to the memristor either in serial or parallel as described above.
  • the number of transistors and memristors serially coupled to each other may further be coupled to each other in parallel. Additionally, the number of transistors and memristors coupled together in parallel may further be coupled to each other in series.
  • writing or quantization errors may be attenuated (910) by noise shaping.
  • the noise-shaping may be accomplished as described above in connection with Equations 1 or 2.
  • the method may continue with restoring the discrete analog sequence by shifting a window of memristive bit cell selection signals sequentially along the number of memristive bit cells.
  • the array (200) described above in connection with Fig. 2 may use a shift register.
  • the method may also be used in the array (500) described in connection with Fig. 5 by selectively turning on or off the transistors in the array (500) to read the values.
  • FIG. 1 Aspects of the present system and method are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to examples of the principles described herein.
  • Each block of the flowchart illustrations and block diagrams, and combinations of blocks in the flowchart illustrations and block diagrams, may be implemented by computer usable program code.
  • the computer usable program code may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the computer usable program code, when executed via, for example, a processor of a computer or other programmable data processing apparatus, implement the functions or acts specified in the flowchart and/or block diagram block or blocks.
  • the computer usable program code may be embodied within a computer readable storage medium; the computer readable storage medium being part of the computer program product.
  • the computer readable storage medium is a non-transitory computer readable medium.
  • the specification and figures describe a resistive random access memory and a corresponding method of storing a discrete analog sequence.
  • the method may take a discrete analog sequence and attenuate any writing or quantization error by noise-shaping.
  • This method may have a number of advantages, including allowing for compact storage of an accurate discrete-time signal despite the poor control over memristor cell storage values.
  • This resistive random access memory also provides for a rapid playback of the signal with a relatively small footprint.

Landscapes

  • Engineering & Computer Science (AREA)
  • Chemical & Material Sciences (AREA)
  • Materials Engineering (AREA)
  • Computer Hardware Design (AREA)
  • Read Only Memory (AREA)
  • Semiconductor Memories (AREA)

Abstract

A method of storing a discrete analog sequence may include programming, in an ordered sequence, a set of targeted analog values in a number of memristive bit cells and attenuating writing errors by noise-shaping. A resistive random access memory may include a number of memristive devices electrically coupled together to form an array of memristive devices, each memristive device including a field-effect transistor and a memristor electrically coupled with the filed-effect transistor wherein a discrete analog sequence is stored on the resistive random access memory cell by programming, in an ordered sequence, a set of targeted analog values in the memristive bit cells and attenuating writing errors by noise-shaping.

Description

STORING A DISCRETE ANALOG SIGNAL
BACKGROUND
[0001] Quantization is the process of mapping a set of continuous input values onto a discrete set, such as rounding values to some unit of precision. In digital signal processing, the difference between the actual analog value and the quantized digital values is called a quantization error. Similarly, when storing a resistance value on a memristor, the difference between a targeted analog value (i.e., the ideal and desired result of writing an analog value to memristor) and the actually obtained analog value (i.e. , the imperfect result of writing an analog value to a memristor) is called writing error.
BRI EF DESCRIPTION OF THE DRAWINGS
[0002] The accompanying drawings illustrate various examples of the principles described herein and are a part of the specification. The illustrated examples are given merely for illustration, and do not limit the scope of the claims.
[0003] Fig. 1 is a block diagram of a memory device according to one example of the principles described herein.
[0004] Fig. 2 is a circuit diagram of a number of serial 1T1 R memory cells electrically coupled in parallel to form an array according to one example of the principles described herein.
[0005] Fig. 3 is a circuit diagram of a number of serial 1T1 R memory cells electrically coupled in parallel with the array electrically coupled to a chain shift register according to one example of the principles described herein. [0006] Fig. 4 is a number of circuit diagrams demonstrating the propagation of a signal through a parallel array of serial 1T1 R memory cells according to one example of the principles described herein.
[0007] Fig. 5 is a circuit diagram of a number of parallel 1T1 R memory cells electrically coupled in series to form an array according to one example of the principles described herein.
[0008] Fig. 6 is a circuit diagram of a number of parallel 1T1 R memory cells electrically coupled in series with the array according to another example of the principles described herein
[0009] Fig. 7 is a number of circuit diagrams demonstrating the propagation of a signal through a serial array of parallel 1T1 R cells according to one example of the principles described herein.
[0010] Fig. 8 is a circuit diagram to convert a stream of discrete analog resistance values into a voltage waveform according to one example of the principles described herein.
[0011] Fig. 9 is a flowchart showing a method of storing a discrete analog sequence according to one example of the principles described herein.
[0012] Throughout the drawings, identical reference numbers designate similar, but not necessarily identical, elements.
DETAILED DESCRIPTION
[0013] As described above, writing an analog value into a memristor is an imperfect process. When storing an analog signal stream into an array of memristors, the resulting corrupted analog values can be thought of as the sum of two signal streams, the ideal signal stream plus an error signal stream. Each error can be measured at the time of its creation, and then taken into account as subsequent values in the analog stream are written. Oversampling (to create bandwidth above that of the ideal signal stream) and noise shaping (to push the error signal stream's energy into the portion of the spectrum created by oversampling) may be used to attenuate the effect of the error signal stream on the ideal signal stream. The ideal signal stream can then later be recovered from the stored corrupted stream with a filtering operation. In the case of standard noise shaping by differentiation, the recovery filter would be a low-pass filter. Low-pass filtering of a discrete signal may be accomplished by the addition of neighboring samples in the signal stream
[0014] The present specification describes the use of memristive devices to store a discrete-time analog signal using the properties of the memristors to shape the noise and restore the analog sequence of the signal by shifting a window of cell selection signal sequentially along a length of a string of memristive devices.
[0015] The specification further describes a method of storing a discrete analog sequence, including programming, in an ordered sequence, a set of targeted analog values in a number of memristive bit cells, and attenuating writing errors by noise-shaping. This method may further include restoring the discrete analog sequence by shifting a window of memristive bit cell selection signals sequentially along the number of memristive bit cells.
[0016] The present specification further describes resistive random access memory, including a number of memristive devices electrically coupled together to form an array of memristive devices, each memristive device including a field-effect transistor and a memristor electrically coupled with the filed-effect transistor wherein a discrete analog sequence is stored on the resistive random access memory cell by programming, in an ordered sequence, a set of targeted analog values in the memristive bit cells, and attenuating writing errors by noise-shaping.
[0017] The present specification also describes a memory device, including a number of memristive cells, each memristive cell including a transistor and a memristor electrically coupled to the transistor wherein a discrete analog sequence is stored on the memory device by programming, in an ordered sequence, a set of targeted analog values in the memristive cells, and attenuating writing errors by noise-shaping.
[0018] As used in the present specification and in the appended claims, the term "memristive device" is meant to be understood broadly as any device that stores a value as a resistance. In one example, a memristive device may be a passive two-terminal electronic device that is built to express only the property of memristance. In another example, the memristive device may be a unipolar resistive random-access memory (RRAM). In yet another example, the memristive device may be a phase change random-access memory (PCRAM). In still another example, the memristive device may be a memristor.
[0019] As used in the present specification and in the appended claims, the term "memristance" is meant to be understood as a property of an electronic component such that 1.) bipolar switching - an electronic charge that flows in one direction through a circuit creates an increased resistance while if charge flows in the opposite direction in the circuit, the resistance will decrease, or 2.) unipolar switching - a current of a particular magnitude flowing in either direction creates an increased resistance while a current of a different magnitude flowing in either direction causes a decreased resistance. If the flow of charge is stopped by turning off the applied voltage, the component will 'remember' the last resistance that it had, and when the flow of charge starts again the resistance of the circuit will be what it was when it was last active.
[0020] Further, as used in the present specification and in the appended claims, the term "a number of" or similar language is meant to be understood broadly as any positive number including 1 to infinity.
[0021] 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 that example is included as described, but may not be included in other examples.
[0022] Turning now to the figures Fig. 1 is a block diagram of a memory device according to one example of the principles described herein. The memory device (100) may be implemented in an electronic device.
Examples of electronic devices include servers, desktop computers, laptop computers, personal digital assistants (PDAs), mobile devices, smartphones, gaming systems, and tablets, among other electronic devices.
[0023] The memory device (100) may include a number of transistors (105) and a number of memristors (110) electrically coupled to each of the transistors to form a number of memristive memory cells. At least two transistor-memristor configurations will be described herein, however, the present specification contemplates other configurations that accomplishes the functionality of the memory device (100) described herein. Additionally, a number of transistor-memristor memory cells may be electrically coupled together to form at least two different kinds of arrays.
[0024] In one example, each memristor is coupled to a transistor in series. The present specification will refer to this as a serial 1T1 R memory cell. In this example, an array of transistor-memristor memory cells are created by electrically coupling together the serial 1T1 R memory cell in parallel. This configuration may be seen in Fig. 2 of the present specification and will be described in more detail below.
[0025] In another example, each memristor is coupled to a transistor in parallel. The present specification will refer to this as a parallel 1T1 R memory cell. In this example, an array of transistor-memristor memory cells are created by electrically coupling together the parallel 1T1 R memory cells in series. This configuration may be seen in Fig. 5 and will be discussed in more detail below.
[0026] During operation, the memory device (100) receives as input a discrete analog signal (1 15). As will be described below, this discrete analog signal is stored on the memristors of the memory cells in an ordered sequence as targeted analog values. Memristive devices are used occasionally to store either a high-resistive state or a low-resistive state. However, the present memory device (100) uses the continuum of states that exist in a memristive device to store, as close as possible, the values of the discrete-time analog signals. Each resistive state that each memristor is set to may indicate a particular analog value of the discrete analog signal.
[0027] The transistor-memristor memory cells described above may include a bipolar resistive random-access memory (RRAM) cell or a unipolar RRAM cell. In bipolar RRAM, a relatively low resistive state are can be set when sufficient current is ran through in one direction while a relatively high resistive state can be reset when a current is ran through in the opposite direction. In a unipolar RRAM cell, the switching between the lower and higher states is accomplished by using the same polarity of current to set and reset the cell.
[0028] Fig. 2 is a circuit diagram of a number of serial 1T1 R (205) memory cells electrically coupled in parallel to form an array (200) according to one example of the principles described herein. In the example shown in Fig. 2, 8 serial 1T1 R (205) memory cells are shown and labeled as R Rs. As described above, the serial 1T1 R (205) memory cells are arranged in parallel with each terminal end being electrically coupled to a top terminal voltage (VT) and a bottom terminal voltage (VB). Each serial 1T1 R (205) memory cell may then have an analog signal programmed to it by setting a resistive state of the memristor in the serial 1T1 R (205) memory cell. Thus, a discrete-time ordered sequence representing a number of discrete analog values may be programmed on the parallel group of serial 1T1 R (205) memory cells. The current (210) through the selected serial 1T1 R (205) memory cell is show in Fig. 2 as a dashed line. The voltage or sequence of voltages applied to achieve the current (210) may be sufficient to set the memristor (215) or memristors (215) to a resistive state representative of an analog signal to be saved.
[0029] In Fig. 2, all but one of the transistors in the parallel array (200) is turned off. For the remaining "on" serial 1T1 R (205) memory cell (the
"selected" cell), current flows through the transistor and memristor thereby connecting the single connect bit-cell to the top terminal voltage (VT) and bottom terminal voltage (VB) rails. By changing the voltage on either the top terminal voltage (VT) rail or bottom terminal voltage (VB) rail, either polarity voltage can be applied to the serial 1T1 R (205) memory cells to effect forming, setting, resetting, or reading of the selected memory cell.
[0030] The hardware used and the process of sequentially selecting the serial 1T1 R (205) memory cells in Fig. 2, is shown in Figs. 3 and 4. Fig. 3 is a circuit diagram of a number of serial 1T1 R (205) memory cells electrically coupled in parallel to form an array (200) that is electrically coupled to a shift register chain (305) according to one example of the principles described herein. Fig. 4, represents the method, using the clock shown in Fig. 3, of reading back an ordered sequence of values stored on the parallel array (200) of serial 1T1 R (205) memory cells.
[0031] Turing first to Fig. 3, a shift register chain (305) is electrically coupled to the serial 1T1 R (205) parallel array (200). To read back an ordered sequence of values from this parallel array (200) of serial 1T1 R (205) cells, each shift register (310) in the shift register chain (305) may drive a matching transistor gate of one of the serial 1T1 R (205) cells. By shifting a single "1" value through the shift register chain (305), with each cycle of a shift register (310) the "1" advances in the shift register chain (305) and activates the next select transistor in the sequence while a "0" rolls into the previously active shift register (310) deactivating that shift register's (310) select transistor.
[0032] This process is described in Fig. 4 which shows a number of circuit diagrams demonstrating the propagation of a signal through a parallel array (200) of serial 1T1 R (205) cells according to one example of the principles described herein. Although Figs. 3 and 4 show only 8 serial 1T1 R (205) electrically coupled together to form a parallel array (200), any number of serial 1T1 R (205) cells may be coupled together to form the array (200). Additionally, while only a single serial 1T1 R (205) cell is depicted in Figs. 3 and 4 as being selected, any number of the serial 1T1 R (205) cells may be selected according to the methods described herein.
[0033] In an example, an analog sequence of eight values may be programed into the serial 1T1 R (205) memory cells in parallel. Although Fig. 4 shows that a single analog value is set and, as it is read, is sequenced through the serial 1T1 R (205) memory cells, the present specification contemplates that each serial 1T1 R (205) memory cell may be accessed individually to set a resistance that correlates with a sampled analog value. In this way, an analog signal may be stored and read quickly. As will be described herein, the individual resistive values read from each of the serial 1T1 R (205) may be added together such that their values may compensate for any corrupted analog value.
[0034] Fig. 5 is a circuit diagram of a number of parallel 1T1 R (505) memory cells electrically coupled in series to form an array (500) according to one example of the principles described herein. In the example shown in Fig. 5, 8 parallel 1T1 R (505) memory cells are shown and labeled as R Rs. As described above, the parallel 1T1 R memory cells (505) are arranged in serial with the strand of the parallel 1T1 R memory cells (505) being connected to a left terminal voltage (VL) and a right terminal voltage (VR). Each parallel 1T1 R (505) memory cell may then have an analog value programmed to it by setting a discrete resistive state of the memristor in the parallel 1T1 R memory cell (505). Where a specific memristor (510) is to be accessed, that cell's transistor (515) may be left "off" by setting the gate of the transistor (515) in parallel with the memristor (510) to 0V. The rest of the parallel 1T1 R memory cells (505) may be placed "on" by applying some supply voltage (VDD) to the transistors' gates (515). Each of the parallel 1T1 R memory cell (505) that is turned on is shorted through by the activated transistor, leaving the terminals of the selected parallel 1T1 R memory cell (505) connected to the terminals VL and VR. This allows each parallel 1T1 R memory cells (505) to be accessed individually such that each can be written to and read from.
[0035] The parallel 1T1 R memory cells (505) in series also provides for the summation of multiple stored resistances. Fig. 6 is a circuit diagram of a number of parallel 1T1 R memory cells electrically coupled in series according to another example of the principles described herein. In this example, the transistors (515) for a number of parallel 1T1 R memory cells (505) are selected simultaneously as described above. Specifically, three parallel 1T1 R memory cells (505) (Ri , R2, R3) are simultaneously selected in this example, with the sum of their resistances appearing between terminals VL and VR. The memristors (510) may be programmed individually to have a combined and predetermined resistive value.
[0036] Fig. 7 is a number of circuit diagrams demonstrating the propagation of a signal through a serial array (500) of parallel 1T1 R cells according to one example of the principles described herein. As in figure 3 for the parallel chain of serial cells, a shift register chain (305) can be used here to shift a single Ό' along the length of the serial chain of parallel cells, with s in all other shift registers. As described above, an analog value may be stored in each of the memristive devices such that an ordered sequence of those analog values can be read later. In addition, because the resistive value on a number of these parallel 1T1 R memory cells (505) may be added together, low-pass filtering of the signal stream to recover the original analog sequence can be performed with a summation. Low-pass filtering may be useful when noise- shaping is used in writing the stored analog values.
[0037] As mentioned above, while more than one serial 1T1 R (205) memory cell or parallel 1T1 R (505) memory cell in their respective arrays (200, 500) may be selected at a time, the resulting resistance performed when multiple serial 1T1 R (205) memory cells or parallel 1T1 R (505) memory cells can be used as an advantage when dealing with quantized errors and noise- shaping.
[0038] Specifically, assume that w is a discrete-time analog signal with a known Signal-to-Noise ratio (SNR). An attempt may be made to store w in either the serial 1T1 R (205) memory cell array (200) or the parallel 1T1 R memory cell (505) array (500) - with one sample of w in each serial 1T1 R (205) memory cell or parallel 1T1 R memory cells (505) memory cell - with a level of accuracy such that wfs SNR is not degraded. However, due to the physical properties of the memristors or writing circuits involved, this may not be possible. Specifically, the programmability of memristors is very poor such that specific analog values may not be programed to any one memory cell with sufficient accuracy to properly represent the desired analog value.
[0039] The present specification, however, describes storing the sequence of discrete analog signals such that relatively little of the baseband signal is lost. With reference to Figs. 5-7, if the sequence x[n] is stored on the parallel 1T1 R memory cells (505) of the series array (500) such that x is an oversampled and noise-shaped sequence created from the discrete-time signal w, restoration of w from x may be accomplished by low-pass filtering. In one example, in addition to low-pass filtering, the low-passed result may be sub- sampled.
[0040] Oversampling increases the bandwidth of the discrete-time signal programmed into the arrays (200, 500). This may be accomplished by sampling the analog input signal at some higher rate than, for example, the Nyquist criteria to capture the base band. Noise-shaping pushes either representational errors or quantization noise up into the spectrum created by the oversampling and out of the base band. In one example, a first-order noise- shaping algorithm could include: y[n]=x[n]+(e[n]-e[n-1]) Equation 1
[0041] where y[n] is the error corrupted output sequence, x[n] is the error-free input sequence, e[n] is the current error, and e[n-1] is the error observed on the prior output.
[0042] In another example, a second-order noise-shaping algorithm could include: y[n]=x[n]+(e[n]-2e[n-1]+e[n-2]) Equation 2
[0043] Many other noise shaping algorithms are possible. At some later point in the signal processing flow, the original sequence can be restored by low-pass filtering the output from the arrays (200, 500).
[0044] The summation of neighboring values in a discrete-time sequence may be accomplished by implementing the following equation:
Y[0]=(x[0]+x[1] . . . +x[N-1])/N Equation 3
[0045] where x[n] is the discrete-time input, Y[n] is the discrete- frequency output such that Y[0] is the value at 'DC (i.e., the frequency of zero cycles/second point). The division by N in computing Y[0] can be considered a scaling or normalization of Y such that Y*N can be replaced with Z such that Z[0]=(x[0]+x[1] + . . . +x[N-1]). This scaling factor can be removed where appropriate using any number of circuits such as the output-stage voltage divider shown in Fig. 8 coupled to the array of parallel 1T1 R memory cells (505). In addition to the low-pass filter circuit shown in Fig. 8, sub-sampling may optionally be accomplished by either clock bursts that move the selection window M bit between outputs or by ignoring every L output samples (where M and L are integers determined by the specifics of the operation at hand).
[0046] In a serial array of parallel 1T1 R memory cells (505), because the resistance values are added for the parallel 1T1 R memory cells (505) of the selection window, such an array can be used to low-pass filter signals appropriately stored in them. This may provide for a relatively more accurate representation of the stored discrete-time analog signal despite any poor accuracy in storing the individual values of the sequence.
[0047] For the parallel array of serial 1T1 R memory cells described in connection with Fig. 4, other operations than the linear addition of Equation 3 can be performed by the simultaneous selection of multiple memory cells.
These other operations could be tailored to perform useful filtering for attenuating the noise-shaped writing error. In particular, the differences in neighboring cell values that would be characteristic of high frequency elements can be attenuated by the simultaneous selection of multiple memory cells.
[0048] Fig. 9 is a flowchart showing a method (900) of storing a discrete analog sequence according to one example of the principles described herein. The method (900) may begin with programming (905), in an ordered sequence, a set of targeted analog values in a number of memristive bit cells. The memristive bits cells may include a memristor and a transistor electrically coupled to the memristor either in serial or parallel as described above. The number of transistors and memristors serially coupled to each other may further be coupled to each other in parallel. Additionally, the number of transistors and memristors coupled together in parallel may further be coupled to each other in series.
[0049] With these configurations, writing or quantization errors may be attenuated (910) by noise shaping. The noise-shaping may be accomplished as described above in connection with Equations 1 or 2. The method may continue with restoring the discrete analog sequence by shifting a window of memristive bit cell selection signals sequentially along the number of memristive bit cells. In this example the array (200) described above in connection with Fig. 2 may use a shift register. The method may also be used in the array (500) described in connection with Fig. 5 by selectively turning on or off the transistors in the array (500) to read the values.
[0050] Aspects of the present system and method are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to examples of the principles described herein. Each block of the flowchart illustrations and block diagrams, and combinations of blocks in the flowchart illustrations and block diagrams, may be implemented by computer usable program code. The computer usable program code may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the computer usable program code, when executed via, for example, a processor of a computer or other programmable data processing apparatus, implement the functions or acts specified in the flowchart and/or block diagram block or blocks. In one example, the computer usable program code may be embodied within a computer readable storage medium; the computer readable storage medium being part of the computer program product. In one example, the computer readable storage medium is a non-transitory computer readable medium.
[0051] The specification and figures describe a resistive random access memory and a corresponding method of storing a discrete analog sequence. The method may take a discrete analog sequence and attenuate any writing or quantization error by noise-shaping. This method may have a number of advantages, including allowing for compact storage of an accurate discrete-time signal despite the poor control over memristor cell storage values. This resistive random access memory also provides for a rapid playback of the signal with a relatively small footprint. [0052] The preceding description has been presented 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.

Claims

CLAIMS WHAT IS CLAIMED IS:
1. A method of storing a discrete analog sequence, comprising:
programming, in an ordered sequence, a set of targeted analog values in a number of memristive bit cells; and
attenuating writing errors by noise-shaping.
2. The method of claim 1 , wherein further comprising restoring the discrete analog sequence by shifting a window of memristive bit cell selection signals sequentially along the number of memristive bit cells.
3. The method of claim 1 , wherein each of the memristive bit cells comprise: a transistor; and
a memristor electrically coupled in serial to the field-effect transistor.
4. The method of claim 3, wherein the number of memristive bit cells are arranged in a one-dimensional array of parallel memristive bit cells.
5. The method of claim 1 , wherein each of the memristive bit cells comprise: a transistor; and
a memristor electrically coupled in parallel to the field-effect transistor.
6. The method of claim 5, wherein the number of memristive bit cells are arranged in a one-dimensional array of serial memristive bit cells.
7. The method of claim 2, wherein the memristor is a bipolar memristor.
8. The method of claim 2, wherein the memristor is a unipolar memristor.
9. A resistive random access memory, comprising:
a number of memristive devices electrically coupled together to form an array of memristive devices, each memristive device comprising:
a field-effect transistor; and
a memristor electrically coupled with the filed-effect transistor; wherein a discrete analog sequence is stored on the resistive random access memory cell by:
programming, in an ordered sequence, a set of targeted analog values in the memristive bit cells; and
attenuating writing errors by noise-shaping.
10. The resistive random access memory cell of claim 9, wherein the discrete analog sequence is restored by shifting a window of memristive bit cell selection signals sequentially along the serial string of parallel memristive bit cells.
11. The resistive random access memory cell of claim 9, wherein the field- effect transistor and memristor are electrically coupled in serial and the number of memristive devices are arranged in a one-dimensional array of parallel memristive bit cells.
12. The resistive random access memory cell of claim 9, wherein the field- effect transistor and memristor are electrically coupled in parallel and the number of memristive devices are arranged in a one-dimensional array of serial memristive bit cells.
13. A memory device, comprising:
a number of memristive cells, each memristive cell comprising:
a transistor; and
a memristor electrically coupled to the transistor;
wherein a discrete analog sequence is stored on the memory device by: programming, in an ordered sequence, a set of targeted analog values in the memristive cells; and
attenuating writing errors by noise-shaping.
14. The memory device of claim 13, wherein the discrete analog sequence is restored by shifting a window of memristive cell selection signals sequentially along the memristive cells.
15. The memory device of claim 13, wherein the transistor and memristor are electrically coupled in parallel and the number of memristive devices are arranged in a one-dimensional array of serial memristive bit cells.
PCT/US2014/062948 2014-10-29 2014-10-29 Storing a discrete analog signal WO2016068918A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2014/062948 WO2016068918A1 (en) 2014-10-29 2014-10-29 Storing a discrete analog signal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/US2014/062948 WO2016068918A1 (en) 2014-10-29 2014-10-29 Storing a discrete analog signal

Publications (1)

Publication Number Publication Date
WO2016068918A1 true WO2016068918A1 (en) 2016-05-06

Family

ID=55858027

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US2014/062948 WO2016068918A1 (en) 2014-10-29 2014-10-29 Storing a discrete analog signal

Country Status (1)

Country Link
WO (1) WO2016068918A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110797063A (en) * 2019-09-17 2020-02-14 华中科技大学 Memristor memory chip and operation method thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120105143A1 (en) * 2010-10-27 2012-05-03 John Paul Strachan Programmable analog filter
WO2012106080A1 (en) * 2011-02-01 2012-08-09 Koza John R Signal processing devices having one or more memristors
US20130106462A1 (en) * 2011-10-26 2013-05-02 Jianhua Yang Field-programmable analog array with memristors
US20140003139A1 (en) * 2012-06-28 2014-01-02 Matthew D. Pickett Memory devices with in-bit current limiters
US20140149773A1 (en) * 2012-11-29 2014-05-29 Agency For Science, Technology And Research Latch circuit and data processing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120105143A1 (en) * 2010-10-27 2012-05-03 John Paul Strachan Programmable analog filter
WO2012106080A1 (en) * 2011-02-01 2012-08-09 Koza John R Signal processing devices having one or more memristors
US20130106462A1 (en) * 2011-10-26 2013-05-02 Jianhua Yang Field-programmable analog array with memristors
US20140003139A1 (en) * 2012-06-28 2014-01-02 Matthew D. Pickett Memory devices with in-bit current limiters
US20140149773A1 (en) * 2012-11-29 2014-05-29 Agency For Science, Technology And Research Latch circuit and data processing system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110797063A (en) * 2019-09-17 2020-02-14 华中科技大学 Memristor memory chip and operation method thereof
CN110797063B (en) * 2019-09-17 2021-05-25 华中科技大学 Memristor memory chip and operation method thereof

Similar Documents

Publication Publication Date Title
CN111433851B (en) Operation memory architecture
TWI657381B (en) Electronic device and related method
Kim et al. Memristor-based multilevel memory
US10860292B2 (en) Device and method for generating random numbers
EP2591449A1 (en) Methods and systems for replaceable synaptic weight storage in neuro-processors
WO2017131632A1 (en) Memristive arrays with offset elements
WO2011133139A1 (en) Refreshing memristive systems
EP2943959A1 (en) Nonvolatile memory array logic
CN112445456A (en) System, computing device and method using multiplier-accumulator circuit
WO2015199844A1 (en) Asynchronous pulse modulation for threshold-based signal coding
WO2015112167A1 (en) Bit-flip coding
US20200134443A1 (en) Storing neural networks and weights for neural networks
US20230410872A1 (en) Code comparators with nonpolar dynamical switches
WO2016064404A1 (en) Generating a representative logic indicator of grouped memristors
US10062432B2 (en) Resistive memory sensing
WO2016068918A1 (en) Storing a discrete analog signal
US11244723B1 (en) Device for high dimensional encoding
Lepri et al. In-memory computing for machine learning and deep learning
US8451644B2 (en) Non-volatile sampler
Zheng et al. High-density analog image storage in an analog-valued non-volatile memory array
WO2017105514A1 (en) Apparatus and method of in-memory computation using non-volatile arrays
US9472279B2 (en) Memory cell dynamic grouping using write detection
US11151289B2 (en) Non-rewritable code comparators with memristors and serial resistors
US11227656B1 (en) Device for high dimensional encoding
CN114281149B (en) RRAM array summation operation circuit and method

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 14904736

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 14904736

Country of ref document: EP

Kind code of ref document: A1