You are on page 1of 14

Available online at www.sciencedirect.

com

Information Sciences 178 (2008) 1519–1532


www.elsevier.com/locate/ins

Computing with random quantum dot repulsion


Ben Zhang *, John C. Lusth
Department of Computer Science and Computer Engineering, University of Arkansas, Fayetteville, AR 72701, United States

Received 17 November 2006; received in revised form 30 August 2007; accepted 30 October 2007

Abstract

Quantum dot cellular automata (QCA) show great promise for fast computation with larger integration density and
lower power consumption. Unfortunately, previous research has shown that QCA are likely to be extremely sensitive to
placement error. During an investigation into placement sensitivity, it was discovered that completely random quantum
dot structures have the ability to compute simple binary functions. In this paper, we further explore the random structures
in an idealized way, looking for higher-order functions; an example of one-bit full adder is shown in the paper. Moreover, a
new structure, the semi-random structure, is introduced to alleviate some, but not all, difficulties in connecting disparate
random structures; the difficulties arise from the fact that inputs and outputs to and from a purely random structure may
not reside at the edges of the structure. In the semi-random structure, the inputs and outputs are localized to the edges. It is
demonstrated that semi-random structures, like random structures, can almost assuredly compute simple Boolean
functions.
Ó 2007 Elsevier Inc. All rights reserved.

Keywords: Quantum dot cellular automata; Simulated annealing; Random structure; Semi-random structure

1. Introduction

With the exponential pace of development in microelectronics, the size and speed of electronic devices have
seen dramatic improvements. Future improvements in conventional CMOS feature sizes, however, will be lim-
ited by quantum-mechanical effects. It is necessary to explore some more radical technologies that leapfrog
conventional CMOS and enable faster speeds at greatly reduced scales. Quantum dot cellular automata
(QCA) is considered such a technology. It was proposed by Lent and Tougaw [11] and has received attention
because it holds the promise for larger integration density and lower power consumption. Originally, QCA
were expected to perform purely by energy minimization; a result by Lusth and Dixon [14], demonstrating that
simulating QCA on a conventional computer was NP-hard, showed the unlikelihood of energy minimization
as a viable mode of computation.
Unfortunately, even in a revised, staged progression of information through a quantum dot system, previ-
ous research has shown that QCA are likely to be extremely sensitive to errors in placement of individual

*
Corresponding author.
E-mail address: bxz01@uark.edu (B. Zhang).

0020-0255/$ - see front matter Ó 2007 Elsevier Inc. All rights reserved.
doi:10.1016/j.ins.2007.10.017
1520 B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532

quantum dots within a QCA cell [4]. A small deviation in the location of a dot can have catastrophic conse-
quences for even simple QCA, such as the chains of cells that are used as binary wires to connect QCA logic
gates.
One approach to mitigating this problem has been to look at molecular analogs of QCA [10]. In this realm,
chemical bonds, with their precise lengths, serve as scaffolds for the localization of electrons. Unfortunately,
under this method of implementation, many of the inherent advantages to semiconductor-based QCA may be
lost. The most important of these advantages is the gain in cell–cell response. In semiconductor-based QCA,
the cell adjacent to a fixed, but weakly polarized, cell will become more strongly polarized. Gain derives from
the fact that localization of electrons in quantum dots is a discrete matter; electrons localize in no other places
than the dots. In the molecular analogs, localization is continuous, rather than discrete. Although not likely,
electrons may localize in regions other than the intended ones.
In an attempt to understand the effect of placement errors upon computation at the nanometer scale, a sim-
ple and idealized simulated experiment was performed, involving randomly placed, but uniformly sized, quan-
tum dots upon a field. Surprisingly, it was found that, given a small but sufficient number of dots populated
with a smaller amount of electrons, the structure almost assuredly computed simple Boolean functions [17].
The term ‘almost assuredly’ denotes that, while the presence of a given property cannot be guaranteed, the
probability that the property is not present appears to become vanishingly small as the structure becomes larger.
The fact that random structures compute is both interesting and profound, but perhaps not surprising. The
importance of asymmetry with respect to computation is well known [16,22]. Indeed, one need only note
the fact that a NAND gate is sufficient for universal computation; replacing the asymmetrical (with respect
to the truth table) NAND gate, for example, with the symmetrical NXOR gate destroys the computational
abilities of the set. Unfortunately, computing with random structures, as described by Lusth and Skaug
[17], is not at all practical. The inputs and outputs to the structure may appear anywhere in the structure,
making the interconnection of a hierarchy of structures problematic.
At least one computational scheme that incorporates a random structure seems to have overcome the inter-
connection problem. In their Nanocell approach [26,8], the internal topology of a cell is generally disordered
with the internal molecular switches of the cell randomly placed and connected during the fabrication. The
computational ability of a Nanocell is created by training it post-fabrication. While easy enough to chain
nanocells together due to fixed, edge-located, inputs and outputs, the computational ability of an individual
nanocell seems to be limited to the simplest Boolean functions.
In this paper, we show that purely random structures can compute more complex functions than simple
booleans. Additionally, in an attempt to add a modicum of practicality to computing with random structures,
we introduce a semi-random structure model, in which inputs and outputs are located on the edges, and inves-
tigate its computational abilities. This new structure can somewhat alleviate the ‘random’ placement of inputs
and outputs exhibited by the purely random structure model. The modifier ‘somewhat’ is necessary since the
locations of inputs and outputs, although localized to the edges, still cannot be precisely determined. A specific
example of how to calculate a desired AND function using this model is also shown in this paper. The result
indicates useful functions can be discovered by this model. Before we introduce the semi-random structure
model, we briefly introduce the simulated annealing algorithm for calculating the ground state of a random
quantum dot system using a semi-classical model.

2. Background

Devices based on QCA utilize the energy-minimizing property of quantum cell systems to implement com-
putation. The concept of QCA is as follows. QCA are composed of a large number of simple identical quan-
tum dot cells where each cell has bistable states and its state is determined by its neighboring cells through
Coulomb interaction. To perform computation, some cells are used as input cells and others as output cells.
The state of input cells is fixed to represent a binary encoding of the inputs. Under a given input, each cell,
except the input cells, adjusts its state according to the interaction of its neighbors. Finally, after some inter-
action time, all cells reach their final states that enable the whole system to stabilize in the minimal-energy state
in response to the given input. In the minimal-energy state, the state of the output cells represents the result of
the computation. Thus by detecting the states of the output cells, the final computation result can be retrieved.
B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532 1521

Computation is performed by the relaxation of the system energy from the initial state to the global minimum-
energy state or ground state.
However, an automata system can be trapped into local minima during the relaxation process. Lusth in [15]
shows a simple QCA structure with an unexpected ground state with respect to the inputs. Therefore, to guar-
antee finding the true ground state in a simulation of arbitrary automata, the whole configuration space must
be explored. As the number of cells in an automaton increases, the calculations become computationally
unfeasible. For this reason, some approximation algorithms are necessary to explore larger structures. One
approximation is the intercellular Hartree approximation (ICHA) [9,24]. In this approximation, each cell is
chosen, in turn, to be the target cell. The target cell changes its polarization and then the system energy is cal-
culated by means of the Hamiltonian [25]. If the system energy goes down, the new polarization of the target
cell is accepted. This procedure is carried out iteratively until no further polarization change in any of the cells
exists. In a standard ICHA simulation, the system always takes a energy-down transition. Thus ICHA is
equivalent to hill-climbing and may become trapped in local minima. It should be noted that the ICHA is
a simulation technique used for determining the behavior of a proposed automaton. In the actual physical
operation of a realized automaton, certain techniques can be used to alleviate the local minima problem. Chief
among these is adiabatic switching [23]. In adiabatic switching, the dot barriers in a set of cells are lowered
until the electrons smear out over the dots in the cell. The barriers are then slowly raised while keeping the
system in the instantaneous ground state. Unfortunately, the duration during which the barriers are raised
likely increases exponentially with the number of cells. Otherwise, one can infer, for QCA, that P = NP, based
on the previous result of Lusth and Dixon [14].
In this paper, a semi-classical simulated annealing approach is taken; Simulated annealing was first intro-
duced as a methodology for finding QCA ground states by Akazawa et al. [1]. Other justifications of a semi-
classical approach can be found in [12,18].

2.1. The semi-classical model

One of the simplified models for calculating QCA energy is the semi-classical model. In this model, a QCA
system is regarded as a classical electrostatic system consisting only of electrons and positive charges. While
tunneling is allowed, the energy contribution from de-localization of electrons is ignored. This approach seems
reasonable because QCA systems are designed such that the Coulomb energy far outweighs the tunneling
energy.
For random dot structures, where dots may be much closer or much further apart than for QCA structures,
this assumption may not be as valid. For example, with respect to closely spaced dots, the tunneling energy
might be a significant proportion of the Coulomb energy. With respect to distantly located dots, the mean
tunneling time might be very great. For this paper, the first complication is ignored as it conjectured that
the ability of random structures to compute is dependent upon the existence of ground states, not on the phys-
ical characteristics that contribute to those ground states. This claim should, of course, be investigated in
future work. The second complication is also ignored; the likelihood of a remote dot being involved in the
‘computation’ falls off with the square of its remoteness. Indeed, the existence of a remote dot being involved
(i.e. in a ground state configuration, the dot holds an electron) implies that the ground state is very close to an
excited state, a situation for which the choice of input and output dots should be rejected (although this is not
done in this paper).
In the simplified model where tunneling energy is ignored, the total energy of an array of QCA cells can be
simply expressed as the energy of an array of point charges:
X qi qj

i6¼j
4p0 r rij

where qi is the charge associated with the ith point, rij is the distance between point i and point j, 0 is the vac-
uum permittivity, and r is the relative permittivity of the medium.
For QCA and similar structures, the negative charge arising from the population of electrons must be neu-
tralized. Otherwise, every low energy state has the electrons populating the quantum dots at the periphery of
1522 B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532

the structure. The original description of QCA had fractional positive charges located at each quantum dot to
provide charge neutralization. A simpler scheme to compensate for the negative charges is known as image
charges [3,13,27]. With image charges (see Fig. 1), a layer of dielectric and then a layer of metal is deposited
over the planar structure of the quantum dots. An electron in the quantum dot structure repels electrons in the
conduction band of metal layer. This leaves a hole which looks like a positive charge and thus compensates the
negative charge in the random structure.
When the negative charges are compensated through image charges, the classical formula becomes
X qi qj 1
E¼  qffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi
i6¼j
4p 
0 r rij  r2ij þ 4s2

Here, s is the separation distance between the quantum dot layer and the metal layer providing the image
charges. The image charge model is adopted in this paper.

2.2. Simulated annealing

Simulated annealing is a popular algorithm to solve difficult optimization problems. Originally, the concept
of simulated annealing comes from thermodynamics and it is actually an analogy of a thermodynamic system,
such as liquids freezing or metals cooling. Liquids or molten metals, initially at a high-temperature and dis-
ordered state, can reach a completely ordered state at lower temperatures if they are cooled slowly enough.
The process of slow cooling is called annealing and this final ordered state is the lowest energy state of this
system. A very useful property of simulated annealing is that the system is in thermal equilibrium at a fixed
temperature T, meaning its energy probability distribution at temperature T conforms to the Boltzmann
distribution:
ProbðEÞ / expðE=kT Þ
where k is the Boltzmann constant that relates temperature to energy. This property could help a system es-
cape a local minimum because the system could take an energy-up transition rather than always taking energy-
down transitions that may trap the system in local minima.
A classic implementation of simulated annealing follows the Metropolis algorithm [19]. The algorithm
starts from an initial state (configuration) with energy E and temperature T. The algorithm proceeds by chang-
ing the configuration (keeping T constant) and calculating the change in energy DE. If DE < 0, the new con-
figuration is always accepted, which means the system takes an energy-down option. If DE > 0, the new
configuration is accepted with the probability eDE/kT. This process is repeated sufficient times to get a good
result for this temperature T. Then the temperature is reduced a small amount and the above process repeated.
The algorithm usually terminates when the temperature reaches some minimum value. At this point, the final
configuration should be a good estimate of the ground state.
In this algorithm, choosing the appropriate initial temperature T0, the annealing schedule, and the termi-
nation criteria of the inner loop and outer loop is very important. The inner loop denotes the state transitions
at a fixed temperature T and the outer loop denotes reducing the temperature according to some annealing
schedule. These choices play significant roles in the quality of the simulation. Good choices can make the sim-
ulation achieve a fast convergence in a short time, but can be difficult to make a priori. They depend on the

metal layer

dielectric layer

quantum dot layer

Fig. 1. Illustration diagram: image charges.


B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532 1523

specific structure of the system and sometimes need to be determined through repeated simulations. In our
algorithm, T0 is chosen to be approximately one percent of the system’s initial energy; typically, this value
is determined empirically. A simple annealing schedule T = aT is adopted in the algorithm, where a is some
constant between 0 and 1, also determined empirically. In the inner loop, a specified number of occupied dots
donate electrons to unoccupied dots to generate the next state; in contrast, Akazawa [1] used Monte Carlo
iterations to produce the next state. The inner loop terminates when it reaches the sufficient number of iter-
ations, again determined empirically. In the whole simulation, the best configuration ever seen is reported as
the solution.
A simulation result is shown in Figs. 2 and 3. The elements of the random structure are the quantum dots
and each element has two states, unoccupied (LOW) and occupied (HIGH). In the structure, sixteen dots are
randomly generated and populated with eight electrons, yielding a 16–8 random structure, where 16 is the
number of all dots and 8 is the number of dots occupied by electrons. Fig. 2 shows the final simulation ground
state. The distance unit is nanometer, but since the simulation is semi-classical, the units are somewhat arbi-
trary. Likewise, the actual size of the quantum dots is not specified, but is assumed to be such that only a single
electron can localize to any given dot. Fig. 3 shows the energy change during the whole simulation and the
energy is calculated by the image charge energy equation. Note the frequent energy-up transitions in Fig. 3.
As a practical matter, a simulated annealing algorithm typically runs in O(T*A) where T is the starting tem-
perature and A is the time to assess a candidate state. In a naive implementation of the assessment of total
energy for an array of quantum dots using the semi-classical model, A = h(r2), where r is the number of dots
in the system. However, there are good h(r) approximate methods that can be used to calculate the total energy
instead. One such h(r) method is the fast multipole method [5,6].

100
separation distance (nm)

90
80
70
60
50
40
30
20
10
0
0 20 40 60 80 100 120
separation distance (nm)
Fig. 2. The simulation ground state of a 16-8 random structure, where 16 is the number of all dots and 8 is the number of dots occupied by
electrons.

0.75

0.7
energy

0.65

0.6

0.55

0.5
1 12 23 34 45 56 67 78 89 100 111 122 133 144
time (steps)
Fig. 3. The system energy of the 16-8 random structure over time. Note the frequent energy-up transitions.
1524 B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532

100

80

percentage (%)
60

40

20

0
18 20 22 24 26 28 30
r
Fig. 4. The frequency of successfully computing full adders, correlated with structure size r.

3. Higher-order functions with random structures

Lusth and Skaug explore random structures to compute basic logic functions [17]. In their structures, r-dots
are randomly generated and populated with m electrons (usually m is set as dr/2e). Relatively small structures
can be used to compute because there are such a large number of ways to interpret their  ground state
 config-
r ri
urations. To see why, suppose a logic function has i inputs and o outputs. There are  different
i o
ways to assign i-dots as inputs and o-dots as outputs. Each of these ways potentially computes that logic func-
tion. For each way, 2i input combinations are set, and for each of these combinations, after the system relaxes
to its ground state1, o outputs are checked to see if they match the logic computation results for the inputs. If
within these ways one is found to correctly compute the logic function, it issaid
  that thisfunction
 canbe com-
r i ri
puted by this random structure. The time complexity of the algorithm is O 2   T r , where
i o
2
Tr is the computing time for the simulated annealing algorithm, roughly equal to O(r ). In the cited paper,
random structures are searched for simple logic functions such as AND, NAND, OR and XOR. It was found
that the AND function was almost assuredly computed in every 10-dot structure; OR function was reliably
found in every 7-dot structure; NAND function was almost assuredly computed in every 12-dot structure.
In contrast, XOR was found in only 89% of all simulated 14-dot structures. This matches the intuition that
XOR seems to be a much harder function to compute due to its symmetrical nature.
Not only can these small random structures compute simple Boolean functions, but they can also compute
higher-ordered functions. A new result is that a one-bit full adder function is almost assuredly found in struc-
tures roughly three times the size of those in which AND and OR functions can be reliably found. Fig. 4 shows
the frequency of successfully computing the full adder function, correlated with structure size r. From the fig-
ure, we can see that computing success increases with the size of the structure.
The result follows from the geometric increase in the number of possible interpretations based on the num-
ber of dots. However, it is still a rather remarkable result since the simplest implementation of a full adder has
7 binary Boolean gates (sum = A  B  C (2 gates), carry = AB + AC + BC (5 gates)). While a random full
adder is significantly smaller than one constructed from random analogs of simple gates (assuming one could
connect such gates), finding the inputs and outputs, unfortunately, takes much longer time.
As a measure of runtime, finding an AND gate with 10 random dots, using a h(r2) energy calculation within
the simulated annealing algorithm, took 0.026 s on a Linux server (Pentium M 3.2 GHz, 2 M Cache, 1 G
RAM), where r is the number of dots. Finding a one-bit full adder with 30 random dots took 56.7 s. The large

1
In the relaxation process, the states of the chosen inputs are never changed while the states of dots in the random and output set may
change.
B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532 1525

increase in time for the second case comes from naive searching for the proper inputs and outputs from among
a much larger set of candidate dots. The simulated annealing algorithm is run for every candidate set of inputs
and outputs. One would expect a modest improvements when using an h(r) energy calculation (such as the fast
multipole algorithm of Greengard and Rokhlin [7]). The truth table for one such adder is shown in the fol-
lowing figures (Fig. 5a–h).
However, a major drawback to this approach is the need for random access for setting the inputs and read-
ing the outputs. Therefore, the interconnections between such nano-structures are problematic. A new model,
the semi-random structure model, introduced in the next sections can somewhat alleviate this problem.

(a) SUM(LOW,LOW,LOW) = LOWs + LOWc (b) SUM(LOW,LOW,HIGH) = HIGHs + LOWc

(c) SUM(LOW,HIGH,LOW) = HIGHs + LOWc (d) SUM(LOW,HIGH,HIGH) = LOWs + HIGHc

(e) SUM(HIGH,LOW,LOW) = HIGHs + LOWc (f ) SUM(HIGH,LOW,HIGH) = LOWs + HIGHc

(g) SUM(HIGH,HIGH,LOW) = LOWs + HIGHc (h) SUM(HIGH,HIGH,HIGH) = HIGHs + HIGHc


Fig. 5. Ground state of the 22-10 full adder random structure for four different input combinations. The other four input combinations are
omitted. In every subfigure, squares denote inputs; the triangle denotes the sum bit and the circle denotes the carry bit.
1526 B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532

Fig. 6. Basic computation model with random structures. The left dash box denotes the input set; the right dash box denotes the output set
and the box in the middle denotes the random set. The arrows indicate the inputs and the outputs.

4. The semi-random structures

4.1. The new structure

The new model for computing a logic function with a semi-random structure is shown in Fig. 6. The com-
putation structure consists of three parts: the input set, the random set, and the output set. In this new struc-
ture, both input and output sets are regular arrays located on the edges of the overall structure with the
random set residing in the middle. This means the placements of dots in the input and output sets are fixed,
almost distributed evenly within their respective sets.2 The dots in the random set are randomly placed as
before. It seems reasonable and possible to build the symmetric input and output sets through self assembly
[2,20,21]. The random set is required since symmetric structures are not capable of universal computation [12].
Suppose there are m-dots in the input set, r-dots in the random set, and n-dots in the output set. This struc-
ture would be denoted as an m-r-n semi-random structure. In the initialization process, each dot is set to the
state 1 or 0 (both 0 and 1 represent dots, but 1 marks the presence of an electron, while 0 marks its absence; in
other words 1 is a dot containing an electron and 0 is a dot containing no electrons).The initialization rules are
as follows: the m-dots in the input set are initially set to 0; for the random section, 2r dots are randomly cho-
sen to be set to 1 and the rest to 0; the output set is treated similarly to the random set.
In the discussion that follows, keep in mind that electrons in each set are not allowed to migrate to the other
sets. Moreover, dot states (occupied or unoccupied) in the input set are not allowed to change during the com-
putation (this constraint is relaxed somewhat in Section 4.5). Although it is not the intent of this paper to pro-
pose a physically realizable system, it does seem that these constraints are consistent with the kinds of
constraints necessary for successful operation of QCA. Therefore, electrons in one cell cannot migrate to
neighboring cells.
Suppose a particular logic function is desired and there are i inputs and o outputs in this logic function.
How can the logic function be computed
  using the m-r-n semi-random structure? Firstly, i-dots need to be
m
chosen from the input set, with choices in this structure. For each choice, all possible combinations
i
i
of the input states (2 ) are tried. This implies that the number of electrons in the input set can vary. In the case
of tccwo inputs, the number of electrons in the input set can vary from zero to two over the entire set of inputs.
This implies that it must be possible to inject or remove electrons from the input set between calculations. If
this is not desirable, it should be possible to replace each quantum dot with a two-dot cell populated with a
single electron. The cell is arranged so that the rightmost dot (being consistent with the illustrations) coincides

2
‘‘Almost distributed evenly’’ means that the placements of dots are distributed regularly within the input and output set with a tolerance
for a small amount of error in placement. Empirical studies show that imprecision in the placement of the dots in those sets does not
significantly affect the ability of these structures to compute. Therefore, the semi-random simulations shown in the following parts do use
precisely positioned input and output dots (although this is not a requirement).
B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532 1527

with the dot the cell replaces and having the other dot in the cell to the left. Setting an input dot now corre-
sponds to polarizing the two-dot cell so that the electron is localized to the rightmost dot and vice versa.3
For each combination, the whole system relaxes to its ground state and in the whole relaxation process, the
states of the chosen inputs are never changed and the states of dots in the random or output set are free to
change. Then n output dots are checked to see if there exists a set of o-dots whose states reflect the computa-
tion result of the logic function for all the combinations. If there is such
 a set, it is said that this logic function
m
can be computed by this semi-random structure. If for all of the input choices, a corresponding correct
i
output set still fails to be found, it is said that this logic function cannot be computed by this semi-random
structure. The function-searching algorithm is described in detail in the next section.

4.2. The algorithm

This algorithm mainly consists of three parts: initialization, an inner loop, and an outer loop. In the initial-
ization, 
function
 initialization() is used to initialize the states of all m + r + n-dots. The outer loop is used to
m
test all choices of inputs. For any choice, if the function can be computed for all combinations of
i
the input states, then the functionSearching() function terminates and returns true. The function
initCandidateOutputSet() puts all n-dots from the output set into the candidate output set. The inner loop,
for all combinations of the input states, calculates the system ground state and updates the candidate output
set. Function relax() calculates the ground state of the system using the simulated annealing algorithm. Func-
tion updateCandidateOutputSet() checks each dot in the candidate output set to see if its state is equal to the
logic computation result based onthe  input states. If it is not, we remove the offending dot from the candidate
m
output set. If, after calculating all choices, a set of o outputs that satisfies the logic function computation
i
still cannot be found, the whole function returns  false.
   
m i m
The time complexity of this algorithm is O 2  T r  o  n , where is the result of choosing i
i i
inputs from m-dots in the input set; 2i is the number of all combinations of i input states; Tr is the computing

3
Empirical studies show that the introduction of such inputs slightly increases the size of structures in which desired functions are
reliably found. This difference arises from the extra electrons located on the input edge.
1528 B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532

time for the simulated annealing algorithm; o is the number of outputs; and n is the number of dots in the
output set.
Note that although the inputs and outputs have been localized to the edges in the semi-random structure
(an improvement over a purely random structure where inputs and outputs can appear anywhere), the prob-
lem of how semi-random devices are connected together has not yet been determined and is the focus of future
work. The main problem to be overcome is that the dots in the input and outputs array cannot be determined
a priori in the current model.

4.3. Example

An example is specified to describe how to use an m-r-n semi-random structure to compute an AND func-
tion. Figs. 7a–d show an AND function that is computed using a 4-12-4 semi-random structure. From the
figures, we can see that the first and second dot (from bottom to top) are chosen as the inputs of an AND
function. All possible state combinations of these two inputs are tried, and then we calculate the respective
ground states, which are shown in Fig. 7a–d. These figures show that the state of the second dot in the output
set (from bottom to top) is always equal to the state resulting from computing an AND function with the same
input state. So, it is said that an AND function can be computed by this 4-12-4 semi-random structure.

4.4. Analysis

The AND function can be computed with a 4-12-4 semi-random structure as shown above. However, if
another 4-12-4 semi-random structure is tried, the AND function may not be computed. Actually, it is desirable
that a certain logic function can be reliably computed using a certain m-r-n semi-random structure, in which the
placement of m input dots and n output dots is regular, and r-dots are randomly placed in the random dots
range. Intuitively, a larger structure has more degrees of freedom and thus should be more likely to compute
the desired function. Empirically, we find this to be case. It is shown in the Fig. 8a–d that increasing m or r or n
helps to more reliably compute a logic gate. In these figures, an AND function was tested 100 times using each

(a) AND(LOW,LOW) = LOW (b) AND(LOW,HIGH) = LOW

(c) AND(HIGH,LOW) = LOW (d) AND(HIGH,HIGH) = HIGH


Fig. 7. Computing AND function with the semi-random structure: inputs on left, outputs on right, and random dots in middle are shown
in boxes. Arrows denote specific inputs and outputs.
B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532 1529

100 100

80 80
percentage (%)

percentage (%)
60 60

40 40

20 20

0 0
10 12 14 16 18 20 22 4 5 6 7 8 9 10
r n
(a) fixing m and n (m = n = 6) and varying r (b) fixing m and r (m = 6, r =18) and varying n

100 100

80 80
percentage (%)

percentage (%)

60 60

40 40

20 20

0 0
4 5 6 7 8 9 10 5 6 7 8
m m,n
(c) fixing r and n (r =18, n=6) and varying m (d) fixing r (r = 18) and varying m and n simultaneously

Fig. 8. The percentage of successfully computing AND function in 100 trials. Subfigures (a), (b), (c), (d), respectively, show the influence
of each parameter of m, r and n on computing a logic function. The regions explored center on a 6-18-6 structure, which is at the edge of
computing AND reliably.

m-r-n semi-random structure and the probability of successfully computing the AND function was calculated.
The figures respectively show the influence of each parameter of m, r and n on computing a logic function.
In Fig. 8a, parameters m(= 6) and n(= 6) are fixed while r is varied. It is shown that with r increasing,
the percentage of successfully computing the AND function increases too and stays unchanged at some
point. The percentage stays at 88% when r is eighteen or more in those 6-r-6 semi-random structures.
It seems parameter r is playing an important but not a fundamental role on computing functions. In
Fig. 8b, m(= 6) and r(= 18) are kept unchanged and n is varied. It is shown that increasing n is also help-
ful to compute functions and when n is more than 6 the percentage increases over 88% and when n is 10 it
reaches 100%. It is also shown in Fig. 8c, keeping r(= 18) and n(= 6) unchanged and varying m, the per-
centage can also reach 98% in those m-18-6 structures when increasing m to 10. Fig. 8d shows increasing
m and n simultaneously and keeping r(= 18) unchanged are helpful to compute functions and the percent-
age reaches 100% when m = n = 8. This study shows that larger structures are better at computing a func-
tion because of the increased degrees of freedom. In the m-r-n semi-random structures, increasing m or r
or n is helpful to successfully compute logic functions. Another exciting result shown in these figures is
that a 6-18-10 semi-random structure can almost assuredly compute an AND function. The NAND func-
tion was reliably found in an 8-18-10 semi-random structure; in 8-18-12 semi-random structures. Table 1
1530 B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532

Table 1
Comparisons on r-dot random structures and m-r-n semi-random structures for computing AND, NAND, OR and XOR functions
Function AND NAND OR XOR
r-dot random 10-5 7-4 12-6 22-11
m-r-n semi-random 6-18-10 8-18-10 8-18-12 8-18-12

makes comparisons between r-dot random and m-r-n semi-random structures. Both can successfully com-
pute AND, NAND, OR and XOR functions.
As shown in the previous section, r-dot random structures can be used to compute higher-order functions,
so can m-r-n semi-random structures. A one-bit full adder was reliably found in a 20-54-32 semi-random struc-
ture. In Table 1, it is shown that m-r-n semi-random structures are about three times larger than r-dot random
structures that compute the same functions.
With respect to practically finding an AND gate, finding one in a 6-18-10 semi-random structure took
0.147 s on the system described in the previous section. Finding a one-bit full adder in a 20-54-32 semi-random
structure took 16.7 s.

4.5. Algorithm improvement

The algorithm above can be extended and improved by allowing the state of the input set to vary during
relaxation. In the previous algorithm, all dots in the input set are initialized to state 0. When doing the com-
putation, i-dots are chosen as the inputs of the logic function, and the other m  i-dots in the input set remain
in state 0. In the revised algorithm, not only can these m  i-dots be set to 0, but they can also be set to 1. The
whole idea of the new algorithm is described as follows:

Step 0: 
In the
 initialization, set all dots in the input set to state 0, choose i-dots from m-dots in the input set
m
choices), and do the computation for each choice. If the given logic function can be imple-
i
mented, the algorithm terminates; otherwise continue.
Step 1: In the initialization, choose any one dot from the input set and set it to state 1 (m  choices);the other
m1
m  1 dots are set to state 0. Choose i-dots from the m  1 dots in the input  set ( choices)
1
m1
and do the computation for each choice. There are, in total, m  choices. If the given logic
i
function can be implemented for any one of these choices, the algorithm terminates; otherwise
continue.
...  
m
Step j: In the initialization, choose any j-dots from the input set and set them to state 1 ( choices);
 the

j
mj
other m  j-dots are set to state 0. Choose i-dots from the m  j-dotsin  the 
input set (
i
m mj
choices) and do the computation for each choice. There are, in total,  choices. If
j i
the given logic function can be implemented for any one of these choices, the algorithm terminates;
otherwise continue.

The steps continue when the given function has not been found and j < m  i. Intuitively, this algorithm
makes use of the input set for computational purposes; therefore a desired function should  befound reliably

P m mj
in smaller structures than if the input set is not 
usedin such a way. There are 0¼<j<¼mi total
j i
m
choices, while the previous algorithm has only choices. For the same m-r-n random structure, this new
i
improved algorithm has a higher probability of successfully computing a logic function because it further
increases the degrees of freedom. A 6-14-8 semi-random structure was tested and shown the case. The
B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532 1531

AND function was found only in 88% of all simulated 6-14-8 semi-random structures without the improved
algorithm and could be reliably found with the improved algorithm.

5. Conclusions

Lusth and Skaug show the computational abilities of random structures in [17]. In that paper, only some
simple logic functions such as AND, NAND, and XOR are implemented, using an r-dots random structure. A
more complicated logic function, a full adder, is implemented in this paper using the same idea. The result
shows that the random structure can implement complicated logic functions, and that more complicated func-
tions can be found in larger random structures.
The problem with the r-dot random structure is the need for random access for setting the inputs and read-
ing the outputs. As such, the interconnections between such nano-structures are problematic. A new m-r-n
semi-random structure consisting of an input set, random set, and output set is proposed in this paper.
Because the positions of the input set and output set are regular, this new random structure alleviates the need
for random access and interconnection problems of the r-dots random structure. Empirical studies show that
the placements of dots within the input and output set can tolerate a small amount of error in placement. The
tolerance of error in placement can be furtherly studied in the future work. The new m-r-n semi-random struc-
ture shows the same computation power as the r-dots random structure. The cost is that semi-random struc-
tures need more dots compared to random structures.
There are other limitations concerning the random structures. One is that the time to search for the proper
interpretation in a random structure quickly becomes intolerable as the size of the structure grows. As
described previously, finding an AND gate within a 6-18-10 semi-random structures took 0.147 s on a Linux
server (Pentium M 3.2 GHz, 2 M Cache, 1 G RAM), while finding a one-bit full adder with 20-54-32 semi-ran-
dom dots took 16.7 s. While the number of possible interpretations grows, so does the time to search for a
desired interpretation. The search time to find a full adder function is two orders of magnitude greater than
of an AND function, despite the fact that a full adder only one order of magnitude more complex. Another
limitation is that while the semi-random structure can somewhat alleviate random access and interconnection
problems of the r-dots random structure, the precise locations of the inputs and outputs along the edges can-
not be determined a priori. However, the mere fact that semi-random structures can compute anything at all
and seem to be able to compute a function of interest given a sufficient size is remarkable and perhaps worth
more study.

References

[1] M. Akazawa, Y. Amemiya, N. Shibata, Annealing method for operating quantum-cellular-automaton systems, Journal of Applied
Physics 82 (1997) 5176–5184.
[2] S. Bandyopadhyay, V.P. Roychowdhury, D.B. Janes, Chemically self-assembled nanoelectronic computing networks, International
Journal of High Speed Electronic Systems (1998) 1–35.
[3] M. Girlanda, M. Governale, M. Macucci, G. Iannaccone, Operation of quantum cellular automaton cells with more than two
electrons, Applied Physics Letters 75 (20) (1999) 3198–3200.
[4] M. Governale, M. Macucci, G. Iannaccone, C. Ungarelli, J. Martorell, Modeling and manufacturability assessment of bistable
quantum-dot cells, Journal of Applied Physics 85 (1999) 2962–2971.
[5] L. Greengard, The Rapid Evaluation of Potential Fields in Particle Systems, MIT Press, Cambridge, 1988.
[6] L. Greengard, V. Rokhlin, A fast algorithm for particle simulations, Journal of Computational Physics (1987) 325–348.
[7] L. Greengard, V. Rokhlin, A fast algorithm for particle simulations, Journal of Computational Physics 73 (1987) 325–348.
[8] C.P. Husband, S.M. Husband, J.S. Daniels, J.M. Tour, Logic and memory with nanocell circuits, IEEE Transactions on Electron
Devices 50 (9) (2003) 1865–1875.
[9] C.S. Lent, P.D. Tougaw, Lines of interacting quantum-dot cells: a binary wire, Journal of Applied Physics 74 (1993) 6227–6233.
[10] C.S. Lent, B. Isaksen, M. Lieberman, Molecular quantum-dot cellular automata, Journal of the American Chemical Society 125
(2003) 1056–1063.
[11] C.S. Lent, P.D. Tougaw, A device architecture for computing with quantum dots, Proceedings of the IEEE 85 (4) (1997) 541–557.
[12] J.C. Lusth, Symmetric versus asymmetric charge neutralization in quantum-dot cellular automata, in: The Proceeding of the First
IEEE Conference on Nanotechnology, Mauti, HI, October 2001, pp. 380–385.
[13] J.C. Lusth, Balancing QCA logic gates under image charge neutralization, in: The Proceedings of the Second IEEE Conference on
Nanotechnology, Washington DC, August 2002, pp. 347–350.
1532 B. Zhang, J.C. Lusth / Information Sciences 178 (2008) 1519–1532

[14] J.C. Lusth, B. Dixon, A characterization of important algorithms for quantum-dot cellular automata, Information Sciences 113 (3–4)
(1999) 193–204.
[15] J.C. Lusth, B. Dixon, D.J. Jackson, S.L. Burkett, Quantum-dot cellular automata and the problem of unbalanced logic gates, in:
Proceedings of the International Conference on Quantum Devices and Circuits, Alexandria, Egypt, June 1996.
[16] J.C. Lusth, J. Jackson, A graph theoretic approach to quantum cellular design and analysis, Journal of Applied Physics 79 (1996)
2097–2102.
[17] J.C. Lusth, E.A. Skaug, The computational abilities of fixed random structures, in: The Proceedings of the Fourth IEEE Conference
on Nanotechnology, Munich, Germany, August 2004, pp. 343–345.
[18] M. Macucci, G. Iannaccone, S. Francaviglia, B. Pellegrini, Semiclassical simulation of quantum cellular automaton circuits,
International Journal of Circuit and Theory and Applications 29 (2001) 37–47.
[19] N. Metropolis, A. Rosenbluth, M. Rosenbluth, M. Teller, E. Teller, Equations of state calculations by fast computing machines,
Journal of Chemical Physics 21 (1953) 1087–1092.
[20] V.P. Roychowdhury, D.B. Janes, S. Bandyopadhyay, Collective computational activity in self-assembled arrays of quantum dots: a
novel neuromorphic architecture for nanoelectronics, IEEE Transactions on Electron Devices 43 (10) (1996) 1688–1699.
[21] V.P. Roychowdhury, D.B. Janes, S. Bandyopadhyay, Nanoelectronic architecture for boolean logic, Proceedings of the IEEE 85 (4)
(1997) 574–587.
[22] Stuart Harvey Rubin, On randomization and discovery, Information Sciences 177 (1) (2007) 170–191.
[23] G. Tóth, C.S. Lent, Quasiadiabatic switching for metal-island quantum-dot cellular automata, Journal of Applied Physics 85 (1999)
2977–2984.
[24] P.D. Tougaw, C.S. Lent, Logical devices implemented using quantum cellular automata, Journal of Applied Physics 75 (1994) 1818–
1825.
[25] P.D. Tougaw, C.S. Lent, Dynamic behavior of quantum cellular automata, Journal of Applied Physics 80 (8) (1996) 4722–4736.
[26] J.M. Tour, W.L. Van Zandt, C.P. Husband, S.M. Husband, L.S. Wilson, P.D. Franzon, D.P. Nackashi, Nanocell logic gates for
molecular computing, IEEE Transactions on Nanotechnology 1 (2) (2002) 100–109.
[27] N. Wu, N. Shibata, Y. Amemiya, Quantum cellular automaton device using image charge effect, Japanese Journal of Applied Physics
37 (1998) 2433–2438.

You might also like