We were always taught that the fundamental passive components were resistors, capacitors, and inductors. But in 1971, [Leon Chua] introduced the idea of a memristor — a sort of resistor with memory. HP created one in 2008 and since then we haven’t really had the burning need to use one. In a recent Nature article, [Mohammed Zidan] and others discuss a 32 by 32 memristor array on a chip they call a memory processing unit. This analog computer on a chip is useful for certain kinds of operations that CPUs are historically not efficient at, including solving differential equations. Other applications include matrix operations used in things like machine learning and weather prediction. The paper is behind a paywall, although the usual places to find scholarly papers will probably have it soon.
There are several key ideas for using these analog elements for high-precision computing. First, the array is set up in a passive crossbar arrangement. In addition, the memristors are quantized so that different resistance values represent different numbers. For example, a memristor element that could have 16 different resistance values would allow it to operate as a base-16 digit.
A current flowing through a memristor naturally generates a voltage proportional to the product of the current times the resistance — that’s just Ohm’s law. The crossbar performs a summing function. So inputs appear on the rows of the crossbar and the columns get an output corresponding to the inputs multiplied by the memristor values as coefficients and then summed together on the column. If you prefer using voltages, you can do that too, by adjusting your coefficients (for example, 2 times X is the same as X divided by 1/2). You could measure the resulting output current in several ways including converting it to a voltage. From the paper, this last method appears to be what they are doing and converting the output currents to voltage to be read by a standard converter.
In an overly simplified way, then, you could think of the array as a bank of potentiometers with markings around the dials for digits. Input voltages or currents come in on the rows and the columns sum up all the outputs on that column to produce a result. The only difference is these potentiometers are set (and reset) electronically.
That’s maybe a little too simplified, but it does get the basic idea across. If you attempt to tackle the paper, be warned. Simulating an argon plasma reactor with differential equations is a hard task no matter what kind of computer you bring to bear on it.
Differential equations have a long history of analog solutions. We’ve written about memristors and their uses in neural networks.
17 thoughts on “Memristors On A Chip Solve Partial Differential Equations”
Memristor is much like graphene coming soon to a solution near you.
You seem to have written about what can be done with memristors without actually saying what they DO. I guess I can live with that, since Wikipedia is right here https://en.wikipedia.org/wiki/Memristor.
But wait! While the Wikipedia article acknowledges the 2008 claim by HP, it says, “There are, however, some serious doubts as to whether the memristor can actually exist in physical reality”, citing four references.
The important thing is that we actually DO have (and have had for a long time) devices whose resistance can be altered, and which retain this resistance even if power is removed. They are used virtually everywhere, but mainly only in a digital context: this is how flash memory works. To wit, a flash memory cell is just a dynamic memory cell with extremely low leakage. The charge on the gate capacitor in this cell determines the resistance of the transistor, so “writing” to the cell involves overcoming the gate isolation temporarily to charge or discharge the capacitor. If you remove the digital read and write circuits and replace them with circuits better suited to analog use, you would have the memristor. This would require some feedback in the write circuit, so that you keep charging or discharging the gate capacitor until the resistance reaches the value you’re trying to “save”, but really, it’s all there.
Basically, the device is an integrator. Therefore, it should be no surprise, since mechanical and electronic integrators have been used to solve differential equations for many decades, that memristors could be used for solving differential equations.
As you mention there are at least two camps: that these devices are true memristors, or that they are a type of memory with some similarities to but not being memristors. The later camp have a subset that thinks memristors can’t exist as defined.
Whatever they are they aren’t a type of flash memory, I don’t understand why you want to add those to the mix.
Because they can do exactly the same thing, and they use technology that has been well optimized. There’s this claim in the linked abstract, that memristors can be made smaller than flash cells, but this is not quantified in any way.
The memristor is a theoretical device where electric charge and magnetic flux are related as the fourth element of basic circuit theory. It was a “missing device” because no real world example could be thought of – that isn’t to say it’s impossible to make one, but the memristors that HP makes aren’t it.
HPs memristors are more like a wire that corrodes thinner when a current passes through, and then gets electroplated back when the current is reversed. It’s a “memory resistor”, but not a true memristor because it operates on a different principle. Kinda like calling a battery a capacitor.
I like to think of them almost as the opposite of a capacitor.
Stick a capacitor in aa circuit and it increases resistance with time. The memory resistors get better at conducting with the time currant is applied.
I used to make what would be thought of as the analog for these from discreet parts years ago. I believe it was for the auto ranging portion of a bar graph display I was working on.
They are the inverse of a capacitor, just as a dynamic RAM cell (or a flash memory cell) is: you add charge to the gate capacitor, and this increases the conductance of the MOSFET. This isn’t really the “opposite” of a capacitor – that would be an inductor. A memristor just behaves like a capacitor with an inverting amplifier.
Except the memristor is constructed as a single device, a flash memory cell or ram cell is constructed of several devices… and that is the whole point. If you have a more capable base element for constructing new devices… you have fundamentally increased your ability. Yes you could replicate a lot of what a memristor can do with other devices but that doesn’t make them the right tool for the job now that we know about memristors.
“the memristors are quantized so that different resistance values represent different numbers.” Again, nothing new. Intel started making flash memory chips with multi-level cells (to get more than one bit per cell) almost twenty years ago. I’d like to know the characteristics of the tantalum oxide memristors mentioned in the abstract.
But furthermore, if the memristors’ values are being quantized, then this is just digital calculation of integrals. What is actually new, here?
No it’s an analog calculation that is then quantized digitally… but I guess that might be a bit hard for you to grasp seeing as your so cynical.
“For example, a memristor element that could have 16 different resistance values would allow it to operate as a base-16 digit.” I think you mean base-4 digit
I think YOU mean 4-bit digit.
How many base-10 digits are there?
Somewhere between 9, and infinity.
That was a reply to the comment above.
This is what I like about HaD. Other sites have reported on this with the baseline of “omg, we will have super fast low power computers because science!!”. Here there is actually an attempt to get the concept across albeit it being complicated.
Other sites, and their readers, don’t know what a digital computer actually is and how it works. So they’re not going to understand the uses of an analogue one, and more importantly, it’s limitations. To them, it’s just more Facebook.
There was a really nice period around the early-mid 90s when I first got online, when computers had stuff like the Internet, and decent amount of power (for DOOM!), but ordinary people didn’t care about, and slightly mistrusted, computers.
We thought it was hell dealing with AOL, but chripes, I’d bring AOL back a million times if we could permanently get rid of fucking Facebook.
I tell you how old I am, when Google said “don’t be evil” I thought “oh, that’s nice!” instead of laughing into a nearby abyss.
Please be kind and respectful to help make the comments section excellent. (Comment Policy)