chapter 3 qca introduction - inflibnetshodhganga.inflibnet.ac.in/bitstream/10603/24450/8/08_chapter...

25
24 CHAPTER 3 QCA INTRODUCTION Quantum dot cellular automata provide a novel electronics paradigm for information processing and communication. It has been recognized as one of the revolutionary nanoscale computing devices. A major advantage of QCA over other nanoelectronic architectural styles is that the same cells that are used for making logic gates can be used to build wires carrying logic signals. The QCA allows operating frequencies in range of THz and device integration densities about 900 times more than the current end of CMOS scaling limits, which is not possible in current CMOS technologies. It has been predicted as one of the future nanotechnologies in Semiconductor Industries Association’s International Roadmap for Semiconductors (ITRS).Logical operations and data movement are accomplished via Coulombic interaction between neighbouring QCA cells rather than current flow. The QCA design involves diverse new paradigms such as memory- in-motion and processing-by-wire. Memory-in-motion is an instance of the more general paradigm of processing-by-wire. Processing-by-wire (PBW) is the QCA capability by which information manipulation can be accomplished, while transmission and communication of signals take place. PBW capabilities can be observed in the so-called inverter chain as well as in the arrangement of the cells in an MV.

Upload: others

Post on 27-Mar-2020

25 views

Category:

Documents


0 download

TRANSCRIPT

� 24

CHAPTER 3

QCA INTRODUCTION

Quantum dot cellular automata provide a novel electronics

paradigm for information processing and communication. It has been

recognized as one of the revolutionary nanoscale computing devices. A major

advantage of QCA over other nanoelectronic architectural styles is that the

same cells that are used for making logic gates can be used to build wires

carrying logic signals. The QCA allows operating frequencies in range of THz

and device integration densities about 900 times more than the current end of

CMOS scaling limits, which is not possible in current CMOS technologies. It

has been predicted as one of the future nanotechnologies in Semiconductor

Industries Association’s International Roadmap for Semiconductors

(ITRS).Logical operations and data movement are accomplished via

Coulombic interaction between neighbouring QCA cells rather than current

flow.

The QCA design involves diverse new paradigms such as memory-

in-motion and processing-by-wire. Memory-in-motion is an instance of the

more general paradigm of processing-by-wire. Processing-by-wire (PBW) is

the QCA capability by which information manipulation can be accomplished,

while transmission and communication of signals take place. PBW

capabilities can be observed in the so-called inverter chain as well as in the

arrangement of the cells in an MV.

� 25

Quantum dots are nanostructures created from standard semi

conductive materials such as InAs/GaAs. These structures can be modeled as

3-dimensional quantum wells. As a result, they exhibit energy quantization

effects even at distances several hundred times larger than the material system

lattice constant.

A quantum dot can indeed be visualized as a well. Electrons, once

trapped inside the dot, do not alone possess the energy required to escape. We

can use quantum physics to our advantage because the smaller a quantum dot

is physically, the higher the potential energy necessary for an electron to

escape. The Figure 3.1 below shows an example of a quantum dot given by

Konard walus et al (2004).

Figure 3.1 Example quantum dot pyramid created with InAs/GaAs

3.1 QCA CELL

The fundamental unit in QCA circuits is a QCA cell which consists

of four quantum dots which are arranged in a square pattern as shown in

Figure 3.2. Zhang et al (2004) have stated the cell is charged with two excess

electrons which can be allowed to tunnel between the different quantum dots

by a clocking mechanism. These electrons tend to occupy the antipodal sites

as a result of their mutual electrostatic repulsion. The columbic repulsion is

� 26

responsible for the transfer of information from one cell to an adjacent cell.

Thus, there exist two equivalent energetically minimal arrangements of the

two electrons in the QCA cell as shown in Figure 3.2. These two

arrangements are denoted as cell polarization P= +1and P= -1.By using cell

polarization P =+1 to represent logic “1” and P =-1 to represent logic “0,”

binary information is encoded in the charge configuration of the QCA cell.

Also there are special purpose rotated cells. The regular cell and the rotated

cell don't interact with each other when they are aligned, so rotated cells can

be used for coplanar wire crossings.

Figure 3.2 Basic QCA cell and two possible polarizations

In QCA design, the cells are arranged systematically to implement

the desired gate and interconnect structures. The QCA designs are typically

analyzed using detailed cell to cell interactions.

The bounding box shown around the cell is used only to identify

one cell from another; they do not represent any physical system. Because the

electrons are quantum mechanical particles they are able to tunnel between

the dots in a cell. The electrons in cells placed adjacent to each other will

interact. As a result, the polarization of one cell will be directly affected by

the polarization of its neighbouring cells. This interaction is shown in Figure

3.3 with the corresponding non-linear cell-to-cell response function.

� 27

Figure 3.3 Non-linear response functions of one cell onto its neighbour

The first cell acts as a driver and its polarization is varied from -1 to

1. The graph shows the resulting polarization of its neighbour. Konard walus

(2004) stated that the driver cell will force an almost complete polarization in

its neighbour, even if its own polarization is not saturated. This interaction

forces neighbouring cells to synchronize their polarization. Therefore, an

array of QCA cells acts as a wire and is able to transmit information from one

end to another; i.e. all the cells in the wire will switch their polarizations to

follow that of the input or driver cell.

The electrostatic energy of two cells (cell a and cell b, with

respective polarizations Pa and Pb), are given by the Equation (3.1). The total

energy of the two cells is calculated by the sum of the electrostatic energy

between each of the four quantum-dots of cell a, (with charge qia

and location

ria ) and each of the four quantum-dots of cell b, (with charge qj

b and location

rja ); both i and j range from 1 to 4, as there are 4 quantum-dots in each cell.

a b4 4i ja ,b

a bi 1 j 1 i j

q q1E

4 r r= =

πε −

∑∑ (3.1)

a b a b

a,b a,b

kink p p p pE E E≠ =

= − (3.2)

� 28

3.2 QCA LOGIC DEVICES

Walus et al (2004) have given the details of QCA logic devices.

The QCA logic primitives include a QCA wire, QCA inverter, and QCA

majority gate as described below.

3.2.1 QCA Wire

The wire is a horizontal row of QCA cells and a binary signal

propagates from input to output because of the electrostatic interactions

between adjacent cells. If the cell is charged with two extra electrons, the

electrons will be located diagonally. This kind of location is due to columbic

repulsion forces which do not allow them to locate in other arrangements.

When the electron in one cell is located in a special diagonal (logic 1), this

polarization induces the electrons in the neighbour QCA to be located with

the same polarization.

The wires constructed using the two types of cells such as regular

cells and rotated cells as shown in Figure 3.4 and Figure 3.5. In 45˚ wire, the

propagation of the binary signal alternates between the two polarizations.

Figure 3.4 QCA wire (90˚)

Figure 3.5 QCA wire (45˚)

� 29

Figure 3.6 Wire crossing Figure 3.7 QCA Inverter

Finally, QCA wires possess the unique property that they able to

cross in the plane without the damage of the value being transmitted on either

wire as shown in Figure 3.6. This property holds only if the QCA wires are of

different orientations.

3.2.2 QCA Inverter

The coulombic interaction between adjacent cells allows to

implement logic circuits by simply changing the cell placement in the layout.

In particular the inverter can be realized as shown in Figure 3.7 which is

usually formed by placing the cells with only their corners touching. The

electrostatic interaction is inverted, because the quantum-dots corresponding

to different polarizations are misaligned between the cells. That is, the binary

information stored in cell 1 is transferred to cells 2 to 6. The electron pair in

cell 7 interacts with its neighbouring cells 5 and 6 to increase the columbic

interaction and switching to the state with opposite polarization.

The QCA inverter can be implemented in two ways such as

positioning and rotation. Figure 3.7 shows one way to position QCA cells to

invert the output from input logic level. This is known as fork inverter. The

output cell is affected by both end cells of the fork to insure reliable

operations. In inverter, the 45˚displacement in the two lines of merging cells

produces complement action of the input signal. Unlike conventional CMOS

� 30

in which it is the simplest block, the inverter consumes a substantial area in

QCA.

3.2.3 QCA Majority Gate

The fundamental QCA logic device is a three input majority gate. It

consists of five cells: a central logic cell, three input cells labelled A, B and C

and an output cell. The QCA majority gate performs a three-input logic

function. The logic function of the majority gate is

M (A, B, C) = AB+BC+CA. (3.3)

Figure 3.8 QCA majority gate layout and symbol

A layout of a QCA majority gate is shown in Figure 3.8. The

tendency of the majority device cell (central cell) to move to a ground state

ensures that it takes on the polarization of the majority of its neighbours. The

device cell will tend to follow the majority polarization because it represents

the lowest energy state. By fixing the polarization of one input to the QCA

majority gate as logic “1” or logic “0,” an AND gate or OR gate will be

obtained, respectively, as follows:

M(A,B,0) = AB (3.4)

M(A,B,1) = A+B (3.5)

Thus, we can base all QCA logic circuits on three-input majority gates. In

order to achieve efficient QCA design, majority gate-based design techniques

� 31

are required. The truth table of majority gate is shown below. The majority

gate output M (A, B, C) reflects the majority of inputs.

Table 3.1 Truth table of Majority gate

A B C M (A,B,C)

0 0 0 0

0 0 1 0

0 1 0 0

0 1 1 1

1 0 0 0

1 0 1 1

1 1 0 1

1 1 1 1

3.2.4 Nand-Nor-Inverter (NNI)

Pijush Kanti Bhattacharjee (2010) has done research on NNI gate.

The NNI gate is a universal gate. It can be employed for realizing logical

functions and requires less overhead, for setting the variables while realizing

the basic logic gates. NNI gate ensures very less space comparing to that of

the other gates like MV, AOI and inverter (NOT) gate.

The conventional AND and OR gates can be realized with the

majority gate by fixing an input as ‘0’ and ‘1’ respectively. The MG cannot

realize the logical NOT operation. The functionality complete set is {MG,

NOT}. Therefore, the designers have to use separate QCA cell arrangement

for realization of the logical NOT. Thus to implement MG with NOT function

the resulting gate is called Nand-Nor-Inverter gate as shown in Figure 3.11.

� 32

Figure 3.9 QCA NNI gate and Symbol

The truth table of NNI gate is shown below. The output of NNI

gate depends on the input B expect that all the inputs are equal. If all the

inputs are equal then the output is complement of inputs. The gate computes

the logic function as,

NNI (A, B, C) = M (A', B, C') = A'B+BC'+C'A'. (3.6)

Table 3.2 Truth table of NNI gate

A B C NNI(A,B,C)

0 0 0 1

0 0 1 0

0 1 0 1

0 1 1 1

1 0 0 0

1 0 1 0

1 1 0 1

1 1 1 0

3.2.5 AND-OR-Inverter (AOI)

Mariam Momenzadeh et al (2005) have proposed a complex QCA

gate. It is a 7 cell gate with 5 input cells, one device cell and one output cell.

The gate can be built from the original 5-cell MV by adding two extra inputs

(cells A and C); these two inputs have an inverting effect on the centre cell as

� 33

it can be seen from the layout of the inverter in Figure 3.7 that cells in a

diagonal orientation tend to exhibit an inverting function. It is an universal

QCA gate with embedded AND, OR and INV functions, and with better

usability for synthesis. The logic function realized by the AOI gate is:

F = DE + (D + E) (A' C' + A'B + BC'), (3.7)

= Maj (D, E, Maj (A', B, C')).

where Maj is the 3-input majority function.

Figure 3.10 AOI gate lay out and Symbol

Figure 3.11 AOI gate in terms of MV

The AOI gate is logically equivalent to a concatenation of two

majority voters (MV) with 2 complemented inputs (A and C) as shown in

Figure 3.11. The layout of AOI gate consists of two nested MVs. MV1

performs the function MV1= (A', B, C'). The horizontal input B has the

strongest influence on the center cell in a MV. Hence, in the AOI gate, the

cell B is placed further away than A and C. The second majority voter is MV2

= Maj (D, E, MV1).

In the AOI gate, the distances d1, d2 and d3 as shown in Figure

3.10 to be considered for proper operation of input and output binary wires.

� 34

The stable configuration of AOI the distances are fixed with d1= d3=

d4=25nm and d2=35nm.

3.2.6 Fanout

In a fanout, one signal comes in and several copies of input go out.

Each output reflects the input. The FANOUT is just the opposite of a majority

gate. In standard electronic, circuits a FANOUT is just a connection of several

metal wires.

Figure 3.12 QCA Fanout

3.2.7 Crossover Design

Walus et al (2004) have given two crossover options. There are

coplanar crossings and multilayer crossovers.

Crossing of two wires in one plane is achieved by placing a binary

wire (90˚) and inverter chain (45˚) as shown in Figure 3.6. The two signals are

able to cross each other without interference since the wires of different

orientation do not have any switch effect on each other .This is known as

coplanar crossings.

The Coplanar crossings use only one layer, but require two cell

types (regular and rotated). The regular cell and the rotated cell do not interact

with each other when they are properly aligned, so rotated cells can be used

for coplanar wire crossings. This feature allows the coplanar crossover to

transmit information independently along the two different cell wires. One

� 35

wire comprised of regular cells and other comprised of rotated cells as shown

in Figure 3.13. In the coplanar crossing, rotated cells are used when two wires

cross. By choosing the connection point from rotated cells, either an original

or an inverse of the input is available. If the effect of the vertical wire

consisting of the rotated cells could be ignored, then the information in

horizontal wire progress across the gap.

Figure 3.13 Coplanar crossover Figure 3.14 Multi layer crossover

Multilayer crossovers are used for wire crossings. They use

more than one layer of cells like bridge. The signals are transferred from one

layer to another layer using these multilayer QCA cells. To do this, it requires

a vertical interconnect. By stacking cells one on top of another, the signal can

be transmitted to another layer where the signal is again transmitted

horizontally.

The vertical separation between cells can be tuned to match the

Ekink of the horizontal cells. Unlike present CMOS integrated circuits, where

metal layers are used to connect discontinuous sections of a circuit and cannot

perform any intelligent functions, the extra layers of QCA can be used as

active components of the circuit. Hence the multilayer circuits can potentially

consume much less area as compared to coplanar circuits. On the other hand,

a multilayer crossover is quite straightforward from the design perspective

and the signal connection is steadier. The multilayer crossovers use more than

one layer of cells like multiple metal layers in a conventional IC.

� 36

3.2.8 QCA Clocking

In VLSI systems, timing is controlled through a reference signal

(i.e., a clock) and is mostly required for sequential circuits. Timing in QCA is

accomplished by clocking in four distinct and periodic phases and is needed

for both combinational and sequential circuits. Clocking provides control of

information flow and true power gain in QCA. Signal energy lost to the

environment is restored by the clock.

For QCA, the clock signals are generated through an electric

field, which is applied to the cells to either raise or lower the tunneling barrier

between dots within a QCA cell. When the barrier is low, the cells are in a

non-polarized state; when the barrier is high, the cells are not allowed to

change state. Adiabatic switching is achieved by lowering the barrier,

removing the previous input, applying the current input and then raising the

barrier. If transitions are gradual, the QCA system will remain close to the

ground state.

Clocking of QCA circuits has been explained by Heumpil Cho et al

(2007). It requires a completely different approach than CMOS. The cells are

not powered from any other external source apart from the clock. In order to

pump information down a circuit in a controllable manner four clocking zones

are available as shown in Figure 3.15. Each of clocking signal is phase shifted

by 90degrees with respect to one before.

Figure 3.15 QCA clocking zones Figure 3.16 The four phases of clock

� 37

The QCA clocks control the potential barrier between the dots. The

change in potential barrier allows to control the rate at which the electrons

quantum mechanically tunnel between the dots in the QCA cell and therefore,

the switching of its polarization.

When the clock signal is high the potential barriers between the

dots are low and electrons effectively spread out in the cell and no net

polarization exists (P = 0).As the clock signal is switched low, the potential

barriers between the dots are raised high and the electrons are localized such

that a polarization is developed based on the interaction of their neighbours.

When clock is high cell is unlatched and when clock is low cell is latched.

Cells can be grouped into zones so that the field influencing all the

cells in the zones will be the same. A zone cycles through 4 phases. Kyosun

Kim et al (2007) have explained about the 4 phases. In the Switch phase, the

tunneling barriers in a zone are raised. While this occurs, the electrons within

the cell can be influenced by the Columbic charges of neighbouring zones.

Zones in the Hold phase have a high tunneling barrier and will not change

state, but influence other adjacent zones. The Release and Relax phases

decrease the tunneling barrier so that the zone will not influence other zones.

The clock signals act to pump information in the circuit as a result

of the successive latching and unlatching in cells connected to different clock

phases. For example, a wire, which is clocked from left to right with

increasing clocking zones, will carry information in the same direction; i.e.,

from left to right.

Walus et al (2003) stated that the different part of the wire is

connected to the different clock signals. Figure 3.17 shows a wire connected

to different clock zones. Each group of cells connected to a particular

clocking zone can be described schematically as a D-latch. The decreasing

� 38

shades of gray represent increasing clocking zones. Since the cells in one

clock zone get latched and stay latched until the next groups of cells get

latched, they can be considered a D-latch. This is not a regular D-latch

because a group of cells connected to C1 will only transmit information to

cells connected to C2, never C0 nor C3. Figure 3.18 shows the D-latches with

the appropriate clock zone to obtain a schematic representation of the QCA

wire.

Figure 3.17 Clocked QCA wire

A low value of the clock means that the cells are latched. When the

clock signal is high, the cells are relaxed, and have no polarization. In

between, the cells are either latching or relaxing when the clock is decreasing

/increasing respectively. The minimum size of the clocking zone is

determined by the minimum feature size of the technology used to support

clocking. Large clocking zones can be problematic because signals travelling

down long QCA wires have increased probability of error from outside

influences. These include thermal effects, which can potentially flip the state

of a cell. Small clocking zones allow the designer the ability to create more

complicated and dense circuits.

3.3 QCADESIGNER

QCA logic and circuit designers require a rapid and accurate

simulation and design layout tool to determine the functionality of QCA

circuits. QCADesigner gives the designer the ability to quickly layout a QCA

� 39

design by providing an extensive set of Computer Aided Design (CAD) tools.

As well, several simulation engines facilitate rapid and accurate simulation. It

is the first publicly available design and simulation tool for QCA, developed

at the ATIPS Laboratory, at the University of Calgary. QCADesigner is

capable of simulating complex QCA circuits on most standard platforms. One

of the most important design specifications is that other developers should be

able to easily integrate their own utilities into QCADesigner. This is

accomplished by providing a standardized method of representing information

within the software. As well, simulation engines can easily be integrated into

QCADesigner using a standardized calling scheme and data types.

The QCADesigner has three distinct simulation engines. Each of

the three engines has a different and important set of benefits and drawbacks.

Additionally, each simulation engine can perform an exhaustive verification

of the system or a set of user-selected vectors.

3.3.1 Digital Simulation Engine

The digital simulation engine is a binary logic simulator within

QCADesigner. This engine considers each cell to be in one of three states:

null, logical one, or logical zero. With these three states and the appropriate

clocking zone information for each cell, a design can be quickly simulated to

ensure that for a given set of inputs, the correct set of outputs will be

produced. This allows the logic designer to determine if the structure that has

been laid out in QCADesigner corresponds to the desired logic function.

The simulator functions by first assigning values to the inputs of

the design. Then, for each change in the clock, only cells about to switch are

considered. Cells in the release and relax states are given a null value. Any

cells about to switch are processed by assigning them values based on the

QCA interaction rules and the polarization of cells in their neighbourhood.

� 40

After all switching cells have been processed, their values are examined to

ensure that none are null which ensures that the system will operate on all

cells. Upon completing this check, the clock cycle is finished and the next

cycle begins. This simulation will continue until all input combinations are

exhausted and the last input vector has traversed the system. Since each cell

can only receive input/output from its immediate neighbours in this engine,

most QCA structures are able to be handled.

The advantage of this simulator is that a designer can quickly see if

the logic functionality of a system corresponds to what is desired. Since no

physical information outside of cell locations and orientation is needed by the

simulator, it should remain an integral part of QCADesigner throughout its

lifetime.

3.3.2 Nonlinear Approximation Simulation Engine

The nonlinear approximation simulation engine is built on a

nonlinear approximation to the cell-to-cell response function. It has been

shown that two cells have a nonlinear cell-to-cell response function shown in

Figure 3.3. This approximation excludes the quantum mechanical correlations

between cells. The system is assumed to switch adiabatically, always

remaining very close to the ground state. The polarization state of each of the

cells is computed using

k

i , j

j

j

ik

i , j

j

j

EP

2P

E1 P

2

γ=

+ γ

(3.8)

where Pi is the polarization state of the cell, and Pj is the polarization state of

the neighbouring cells. Eki, j is the kink energy between cells, i and j represents

the energy cost of oppositely polarized cells, γ is the tunnelling potential and

� 41

is used to clock the circuit, as described by Walus (2004). Since

experimentally determined switching times are not available, the simulation

does not include any timing information. Using this response function the

simulation engine calculates the state of each cell with respect to other cells

within a predetermined effective radius. This calculation is iterated until the

entire system converges within a predetermined tolerance. Once the circuit

has converged, the output is recorded and new input values are set.

It is believed that although this approximation is sufficient to verify

the logical functionality of a design, it cannot be extended to include valid

dynamic simulation; but, as a result of its simplicity this simulation engine is

able to simulate a large number of cells very rapidly and, therefore, provides a

good, in process, check of a design. For a more accurate simulation the two-

state simulation engine is required.

3.3.3 Two-State Simulation Engine (Bistable simulation Engine)

To facilitate more accurate simulations we require a more advanced

simulation engine. The two-state model assumes that the cell is a simple two-

state system and it was proposed by Walus (2004). For this two-state system,

it has been shown that the following Hamiltonian (Hi) can be constructed.

k

j i , j i

i

kj

i j i, j

1P E

2H

1P E

2

− −γ =

−γ

∑ (3.9)

where Eki, j is the kink energy between cell i and j . This kink energy is

associated with the energy cost of two cells having opposite polarization. Pj is

the polarization of cell. γ is the tunneling energy of electrons within the cell.

The summation is over all cells within an effective radius of cell i, and can be

set prior to the simulation. Using the time-independent Schrödinger equation

� 42

we are able to find the stationary states of the cell in the environment

described by this Hamiltonian. QCADesigner uses the Jacobi algorithm to

find the eigenvalues and eigenvectors of the Hamiltonian with

Hi Ψi = Ei Ψi (3.10)

where Hi is the Hamiltonian given in Equation (3.9). Ψi is the state vector of

the cell. Ei is the energy associated with the state. The algorithm sorts each of

the states, Ψi, according to their respective energy, in ascending order. The

first state in the sorted list is that which has the lowest energy. Our

assumption is that the system remains very close to the ground state during

computation. As a result, the state with the lowest energy is chosen and the

cell polarization is set accordingly.

� The two state simulation engine computes the polarization of each

cell in the design until the entire system has converged to a preset tolerance.

Once the system has converged, the output values are recorded, new input

values are set and the simulation is reiterated.

This method is less efficient in comparison to the nonlinear

approximation, and as a result leads to longer simulation times. The

advantage of this method is that the model on which it is based is far more

accurate.

Before the simulation starts, the simulation parameters need to be

defined. All the simulations presented in this thesis use the bistable simulation

engine. All parameters use the default values provided by QCADesigner. The

following parameters are used for a bistable approximation:

� 43

Table 3.3 Truth table of simulation parameters

Parameters Values

Cell Size 20 nm

Number Of Samples 12800

Convergence Tolerance 0.001000

Radius of Effect 65nm

Relative Permittivity 12.9

Clock High 9.8e-22J

Clock Low 3.8e-23J

Clock Amplitude Factor 2

Layer Separation 11.5nm

Maximum Iteration Per Sample 10000

The definition of simulation parameters are given below:

Convergence Tolerance

During each sample, each cell is converged by the simulation

engine. The sample will complete when the polarization of each cell has

changed by less than this number; i.e. loop while any design cell has (old

polarization - new polarization) > convergence tolerance.

Radius of Effect

Because the interaction effect of one cell onto another decays

inversely with the fifth power of the distance between cells, need not to

consider each cell as affecting every other cell. This number determines how

far each cell will look to find its neighbours. The next-to-nearest neighbours

are included in this radius.

� 44

Figure 3.18 Radius effect of the cell. Figure 3.19 Clock signal

Note that with multilayer capability the radius of effect is extended

into the third dimension. Therefore in order to include cells in adjacent layers,

make sure that the layer separation is less than the radius of effect.

Relative Permittivity

The relative permittivity of the material is essential for simulation.

For GaAs/AlGaAs it is roughly 12.9 which is the default value. This is only

used in calculating the kink energy.

Clock Signal

The clock signal in QCADesigner is calculated as a hard-saturating

cosine as shown below. The clock signal is tied directly to the tunneling

energy in the Hamiltonian.

Clock High/Clock Low

Clock low and high values are the saturation energies for the clock

signal. When the clock is high the cell is unlatched. When it is low the cell is

latched.

� 45

Clock Shift

The clock shift is used to add a positive or negative offset to the

clock as shown in the Figure 3.19.

Clock Amplitude Factor

Clock amplitude factor is multiplied by (Clock High - Clock Low)

and reflects the amplitude of the underlying cosine.

Layer Separation

When simulating multilayer QCA circuits, this determines the

physical separation between the different cell layers in (nm).

Maximum Iterations per Sample

If the design does not converge in this number of iterations, then

the simulation will move on to the next sample point.

3.4 QCADESIGNER WINDOW

QCADesigner is the QCA layout editor and simulator. The main

layout design window of QCADesigner is presented in Figure 3.20.

Figure 3.20 QCADesigner layout editor window

� 46

The physical layout editing facilities include:

• Drawing QCA cells individually or in arrays, optionally aligned

to a grid with a default spacing (20 nm) equal to the default cell

size (18 nm) plus the default inter cell spacing (2 nm).

• Setting clock signal for each QCA cell, this is required to have

synchronous circuits working properly.

• Multi-layer QCA layout design, which is required to have multi

layer signal crossing.

• Drawing QCA cells with 90 degrees rotation, which is required

to have in plane signal crossing.

Figure 3.21 QCA cell style conventions used to visually distinguish the

cells on the Main Cell Layer from the cell used in via and

crossover connections

• Graphical marking of special cells (on via and crossover layers),

according to the Convention presented in Figure 3.22. Although

cell in via and crossover structures may look different in the

layout, they are regular QCA cells and no distinction is made

during simulation. Cells acting as vertical via interconnections

between layers are represented by a square with a circle inside,

and cells in crossover layers are represented by a square with a

cross inside, the normal cells are represented as a square with

four little circles inside and the arrangement of those circles

depend on the rotation of the cell.

� 47

• Grouping the input/output signals in buses, to simplify signal

name handling, simulation input vectors definition, and

simulation results inspection (see Figure 3.22).

Figure 3.22 Grouping the QCA layout signals using buses in QCADesigner

As layouts become more complex, the designer may wish to group

inputs and outputs logically into buses. A bus is simply a named collection of

inputs or of outputs. Once the design contains inputs and/or outputs, the

designer can group them into buses using the bus layout dialog. The

simulation can be performed with an exhaustive set of input vectors, or

alternatively with a user-defined set of input vectors (Figure 3.23).

Figure 3.23 QCADesigner simulation inputs window

� 48

Figure 3.24 QCADesigner simulation results window

There are two integrated simulation engines available with

QCADesigner: the Coherence Vector Simulation Engine, which is slower, but

provides more accurate results, than the Bistable Simulation Engine.

Simulation results are presented as waveforms, optionally grouped in buses as

shown in Figure 3.24.

3.5 CONCLUSION

The relevant QCA background for this research is presented in this

Chapter 3, where the theoretical basis of Quantum Cellular Automata is

discussed. The basic logic elements of this technology and its operation are

explained here. A detailed explanation of the software tool QCADesigner is

presented in this Chapter. The different types of simulation engines and the

corresponding simulation parameters are defined here.