Memcomputing: A Computing Paradigm To Store and Process Information On The Same Physical Platform
Memcomputing: A Computing Paradigm To Store and Process Information On The Same Physical Platform
physical platform
Massimiliano Di Ventra1, and Yuriy V. Pershin2,
In present day technology, storing and processing of information occur on physically distinct regions of space. Not only does this result in space limitations; it also translates into unwanted delays
in retrieving and processing of relevant information. There is, however, a class of two-terminal
passive circuit elements with memory, memristive, memcapacitive and meminductive systems collectively called memelements that perform both information processing and storing of the initial,
intermediate and final computational data on the same physical platform. Importantly, the states of
these memelements adjust to input signals and provide analog capabilities unavailable in standard
circuit elements, resulting in adaptive circuitry, and providing analog massively-parallel computation. All these features are tantalizingly similar to those encountered in the biological realm, thus
offering new opportunities for biologically-inspired computation. Of particular importance is the
fact that these memelements emerge naturally in nanoscale systems, and are therefore a consequence
and a natural by-product of the continued miniaturization of electronic devices. We will discuss the
various possibilities offered by memcomputing, discuss the criteria that need to be satisfied to realize this paradigm, and provide an example showing the solution of the shortest-path problem and
demonstrate the healing property of the solution path.
PACS numbers:
I.
INTRODUCTION
FIG. 1: (Color online) Symbols of the three memory elements that we consider for memcomputing. Memcapacitive (left),
memristive (center), and meminductive (right) systems.
cost of relatively high power consumption and low density. While active elements are unlikely to be eliminated
from electronics all-together, it would be desirable to
keep them at a minimum, and instead leave the storing
and processing of information to passive elements, preferably with dimensions at the nanometer scale, namely
comparable to, or even smaller than their biological counterpart.
In this work we introduce the concept of
memcomputingcomputing using memory circuit
elements (memelements)9 which indeed satisfies requirements i) and ii), and does not rely on active elements as
main tools of operation. Memelements are two-terminal
electronic devices whose resistance, capacitance or
inductance keeps track of the systems past dynamics.
They arise naturally at the nanoscale due to the delayed
response of electrons and ions in condensed matter
systems subject to external time-dependent fields9 .
Their general definition is quite straightforward: an n-th
order u-controlled memory circuit element is defined by
the set of equations9
y(t) = g (x, u, t) u(t)
x = f (x, u, t)
(1)
(2)
II.
u(t) = charge
y(t) = voltage
u(t) = current
y(t) = voltage
Memcapacitive ,
(4)
Meminductive .
(5)
MEMCOMPUTING CRITERIA
3
those required by any computing paradigm. Others are
specific to memcomputing. As briefly mentioned above,
both memcomputing and quantum computation rely on
massive parallelism of information processing. The basic mechanisms of the massive parallelism, however, are
quite different. While quantum computing relies on the
superposition of states, memcomputing utilizes the collective dynamics of a large number of (essentially classical) systems. Its specific criteria are then as follows.
1. Scalable massively-parallel architecture with combined information processing and storage
Fundamentally, memcomputing is performed by an
electronic circuit containing a collection of memelements
(memristive, memcapacitive or meminductive systems or
their combinations) that simultaneously allow for information processing and storage. By definition, memelements store information in analog form in their response
characteristics (in addition to the ability of memcapacitive and meminductive systems to store information in
the electric and magnetic field energies, respectively). It
is expected that all, or at least a large number of memelements are involved in the parallel computation. This is
the basis of the potential advantage of memcomputing
over the traditional sequential one.
Combined information processing and storage is a useful feature of memelements. It simplifies the hardware
design reducing the amount of components needed to realize computing functions. In this way, it becomes possible to achieve higher integration densities as well as
more complex connectivities. Clearly, both factors improve the hardware functionality. For example, such a
feature has been recently employed in memristive binary
logic circuits, where the same memristive devices serve
simultaneously as a gate and latch1417 , or in memristive networks solving a maze problem11 . Moreover, it
has been shown that the performance of logic circuits
improves if several types of memelements are combined
together17 . This fact should also be taken into account
in memcomputing architecture design.
2. Sufficiently long information storage times
Next, let us consider requirements that should be
imposed on individual memelements.
First of all,
they should provide sufficiently long information storage times. At least, much longer than the calculation
time. Ideally, one would use memelements with nonvolatile memory storage capabilities, such as, emergent
non-volatile memory cells10,1822 . It is important that
many of these elements are realized at the nanoscale, and
thus many of these can be incorporated on a single chip.
Additionally, it is desirable to use memelements with
low power consumption and short read/write times.
Emergent non-volatile memory cells satisfy these requirements and thus are ideal candidates for memcomputing architectures. For example23 , CMOS compatible
nanoionic resistive switches based on amorphous-Si offer promising switching characteristics in terms of write
speed (<10 ns), endurance (>105 cycles), retention (7
4
tensively studied yet, memcapacitors and meminductors9
can also be used in the above memcomputing schemes by
replacing memristors, albeit in a modified form. Since
memcapacitors and meminductors may in principle be
constructed to consume little or virtually no energy, their
use in memcomputing is potentially energetically more
efficient than the use of memristors. An important milestone in this field would be the demonstration of a memcomputing device with computing capabilities and power
consumption comparable to (or better than) those of the
human brain.
FIG. 2:
Memristive processor consisting of a network of
memristive elements in which each grid point is attached to
several basic units. Each basic unit involves two memristive devices connected symmetrically (in-parallel) and two
switches (field-effect transistors). The switches provide access
to individual memristive devices, while in-parallel connection
symmetrizes the response of bipolar memristive elements.
III.
MEMCOMPUTING SCHEMES
5
10
10
(a)
(b)
Ron
Roff
Ron
Roff
0
0
10
10
10
10
(c)
(d)
8
0
0
10
10
FIG. 3: (Color online). Solution of the shortest path problem for the pair of nodes indicated by red arrows in (a) and (b) in a
an 1111 memristive network. (a) Initial and (b) final states of the memristive network. Here, the memristance of each basic
unit (involving two memristive devices) is represented by a color. Distributions of electron current corresponding to (a) and
(b) are shown in (c) and (d), respectively. See Methods for details of all calculations.
-10
i =1, 10
i =2, 9
i =3, 8
i =4, 7
i =5, 6
-20
(a)
-30
-40
0.0
0.1
0.2
0.3
0.4
2.4
Entropy
2.2
2.0
Roff /Ron=20
1.8
1.6
1.4
0.0
Roff /Ron=10
Roff /Ron=4
(b)
Roff /Ron=1.25
0.1
0.2
0.3
0.4
0.5
0.6
out self-intersecting)
(t) =
10
N
X
Iij (t)ln Iij (t) ,
(6)
i=1
8
7
6
Ron
Roff
4
3
2
1
0
0
10
7
10
(a)
9
8
7
Ron
Roff
quite naturally with increasing miniaturization of electronic devices. The computational possibilities offered by
this paradigm are varied, and due to its tantalizing similarities both with some features of the brain as well as
with the collective properties of colonies of living organisms, it promises to open new directions in neuromorphic
architectures and biological studies.
4
3
VI.
2
1
0
0
10
10
ACKNOWLEDGMENT
(b)
Methods
8
7
Ron
Roff
5
4
VM = R (x) IM ,
2
1
(7)
and
0
0
10
FIG. 6: (Color online). Healing (b) of a damaged (a) solution. To heal the solution damage in (a), a single square pulse
of appropriate width and duration is applied to the input and
output nodes shown by the red arrows in (b).
V.
CONCLUSION
In conclusion, we have discussed the concept of memcomputing: storing and processing of information on the
same physical platform. In particular, we have outlined
the main criteria that need to be satisfied in order to realize such a paradigm and analyzed a specific example to
show the healing properties of the solution. Unlike other
promising but more speculative proposals, like quantum
computing, memcomputing is already a practical reality,
at least in regard to some applications, such as digital
logic. It bypasses several of the bottlenecks of presentday computing architectures and its constitutive units
memristors, memcapacitors, and meminductors are already widely available. Indeed, these elements emerge
dx
=
dt
0
sgn (IM ) (|IM | It )
(8)
(9)
=
10
Ohms/(sA),
It = 10mA. Figs.
f
M
3, 4(a) and 6 are obtained with Ron = 10 Ohms and
V = 6V of applied voltage; Fig. 4(b) is found using
M
M
V = 6, 6.75, 10, 15.25V for Rof
f /Ron = 20, 10, 4, 1.25
M
curves, respectively; Fig. 5 is plotted with Ron
= 160
M
M
Ohms and V = 15.25V. Note that Ron and Rof
f are
related to individual memristive devices, while Ron and
Rof f (used in Figs. 3, 5 and 6) represent limiting values of memristance of the basic unit. While the "OFF"
state of the basic unit is attained when both memristive
devices are in their "OFF" states, the "ON" state of the
basic unit corresponds to the "ON", "OFF" combination
of single device states. In our simulations, at each time
8
step, the potential at all grid points is found as a solution of Kirchhoffs current law equations obtained using
a sparse matrix technique. The corresponding change in
1
2
3
4
5
7
8
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37