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.