Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I....

26
1 Designing of QCA Schemes by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop on Boolean Problems September 18-19, 2008

Transcript of Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I....

Page 1: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

1

Designing of QCA Schemes

by Boundary Functions

V. Ostrovsky, I. Levin, O. Keren

Tel Aviv University, Bar Ilan University, Israel

8th International Workshop on Boolean Problems September 18-19, 2008

Page 2: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Outline

2

•  Boundary functions •  Representation of Boolean functions by Boundary functions •  Boundary oriented decomposition •  Majority implementation by boundary functions •  Boundary Comparator •  QCA based Boundary Comparator •  Programmable Comparator Array (PCA) •  Synthesis of Boolean Functions by PCA •  Benchmark results •  Conclusions

Page 3: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Definitions

3

F xn−1,...., x0( ) = Sign νn−1xn−1 + ....+ ν0x0 − a( ) =

=Sign ν jx j − aj=0

n-1

∑⎛

⎝⎜⎞

⎠⎟,

where SignA =1 if A ≥ 00 if A < 0

⎧⎨⎩

ν j - weight of input (variable) x j ;a - threshold.

Function F x0,x1,....,xn−1( ) is called thresholdif it can be expressed as follows :

Page 4: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Definitions

4

A boundary function is a threshold function

having νi = 2i weight of its ith arguments :

y = Γ xn−1,…,x0; a( ) = Γ a( ) ,xn−1,…, x0 − arguments,

a − threshold.

y = Sign xii=1

n

∑ 2i − a⎛

⎝⎜⎞

⎠⎟.

Page 5: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

If and , then from follows:

But: from does not follow:

Definitions

a ↔ a

xi ↔αi

5

One to one correspondence: and

b↔b a > b

a >b

a = αn−1,…,α0( ), αi ∈ 0,1{ }

a = αi 2

i ;i=0

n−1∑ a∈ 0,2n −1⎡

⎣⎤⎦

Page 6: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Graph of the boundary function

a – the bound 1 1 0 0

0 1 1 0

2 3 1 0 0 0

6 7 5 4 1 0

14 15 13 12 1 1

10 11 9 8 0 1

6

Example: Γ 9( )

Page 7: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Boundary Representation of Boolean function

7

Any Boolean function y=F xn−1,…,x0⎛⎝⎜

⎞⎠⎟ can be defined by a set

of its bound points A= a1,…,ak⎧⎨⎩

⎫⎬⎭

Notations: y=F xn−1,…,x0; a1,…,ak⎧⎨⎩

⎫⎬⎭

⎝⎜⎜

⎠⎟⎟

y=F A⎛⎝⎜

⎞⎠⎟y=F xn−1,…,x0;A⎛

⎝⎜⎞⎠⎟y=F a1,…,ak

⎛⎝⎜

⎞⎠⎟

Example: yi =Fi x3,x2,x1,x0⎛⎝⎜

⎞⎠⎟ equals to 1 on the set of points:

{3,4,5,6,11,12,13,14,15}.

Its bound points are a1 = 3;a2 = 7;a3 =11.

yi =Fi x3,x2,x1,x0; 3,7,11⎧⎨⎩

⎫⎬⎭

⎝⎜⎜

⎠⎟⎟

or yi =Fi 3,7,11⎛⎝⎜

⎞⎠⎟

Page 8: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Boundary Representation of a Boolean function

8

y = F a1,…,ak{ }( ) = Γ a1( )Γ a2( )…Γ ak( ) == Γ a1( )⊕⊕Γ ak( ) == Γ a1( )Γ a2( ) ++ Γ ak−1( )Γ ak( ).

y1 = Γ 3( )Γ 7( )Γ 11( ) = Γ 3( )⊕Γ 7( )⊕Γ 11( ) = Γ 3( )Γ 7( ) + Γ 11( ).

Page 9: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Implementation of by a network of boundary functions

9 y1 = Γ 3( )Γ 7( )Γ 11( )

Page 10: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Implementation of by a network of boundary functions

10 y1 = Γ 3( )Γ 7( )Γ 11( )

Page 11: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Interval functions A logic function being equal to 1 only on interval is called interval function

Any Boolean function can be presented as

11

[a,b)

F = I1 ++ Is = Γ I1,…, Is ;0…01( ) F

Page 12: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

12

Analog Implementation of a threshold element

Example: Summing Amplifier.

Page 13: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Implementation 1. Analog implementation

13

Analog boundary gate

Page 14: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Digital implementation Synthesis of boundary functions

Put components of a binary vector of the threshold into correspondence with arguments of the function.

For example, a =001101001 : 1 0 0 1 0 1 1 0 0

x0 x1 x2 x3 x4 x5 x6 x7 x8

1 0 0 1 0 1 1 0 0 x0 x1+ x2+ x3 x4+ x5 x6 x7+ x8+

14

Put “+” after 0 and “&” after 1

If 0 follows 1, the expression that begins with '0’ appears in brackets:

Page 15: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Example 1

15

y1 = F x3, x2 , x1, x0; 3,7,11{ }( )

y1 = (x3 + x2 + x1x0 )(x3 + x2x1x0 )+ x3(x2 + x1x0 ) =

x3 x2 + x1x0( ) x2x1x0( ) + x3(x2 + x1x0 )

Page 16: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Example 2

Function

16

x1 1 1 0 0

x0 0 1 1 0

0 0 0 0 0 0

1 1 1 0 1 0

0 0 1 1 1 1

1 1 1 1 0 1

x2 x3

Page 17: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

BDDs of Boundary Functions

17

y1 = F 3,7,11{ }( )

Separate BDDs

Page 18: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Merging of separate BDDs

18

Page 19: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Decomposition of Boundary Functions

19

For any boundary functiona simple disjoint decomposition exists :Γ Xa , Xb;a.b( ) = Γ Xa ,Γ Xb;b( );a.1( )For example :Γ 01.111( ) = Γ x4 , x3,Γ x2 , x1, x0;111( );011( ) == Γ x4 , x3, x2x1x0( );011( ) = x4 + x3 x2x1x0( )Let Xa = xn−1 and a = αn−1, then:

Γ xn−1, Xb;αn−1.b( ) = Γ xn−1,Γ Xb;b( );αn−1.1( ) == αn−1xn−1Γ b( ) +αn−1 xn−1 + Γ b( )( )= maj Γ b( ) , xn−1,αn−1( )

Page 20: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Partition on a set of arguments

20

Let y = Γ X ; A( ) , and X = Xa Xb; Xa Xb =∅( )Then : y = Γ Xa . Xb;a. b( ).For example: y3 = Γ x4 , x3. x2 , x1, x0;01.101( ) ,Xa = x4 , x3{ } , Xb = x2 , x1, x0{ } ,a = 01,b = 101

Theorem :Γ Xa . Xb;a. b( ) = Γ Xa ;a +1( ) + Γ Xa ;a( )Γ Xb;b( );or :Γ a . b( ) = Γ a +1( ) + Γ a( )Γ b( )In theexample : y3 = Γ x4 , x3;10( ) + Γ x4 , x3;01( )Γ x2 , x1, x0;101( )y3 = x4 + x4 + x3( ) x2 x1 + x0( )( )In a case of a different partition:Γ 011.01( ) = Γ 100( ) + Γ 011( )Γ 01( ) = x4 + x4 + x3x2( ) x1 + x0( )

Page 21: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Functional expansion of Boundary Functions

21

Two above - obtained formulae Γ xn−1, Xb;αn−1. b( ) = maj Γ b( ) , xn−1,αn−1( ) and

Γ a . b( ) = Γ a +1( ) + Γ a( )Γ b( )enable to express Boundary expansion formulae. Let α i be a certain bit of the threshold. Then :

Γ a.α i . b( ) = Γ a +1( ) + Γ a( )Γ α i . b( ) = Γ a +1( ) + Γ a( )maj Γ b( ) , xi ,α i( )For example : Γ 01.1.11( ) = Γ x4 , x3;10( ) + Γ x4 , x3;01( )maj Γ x1, x0;11( ) , x2 ,0( ) == x4 + x4 + x3( ) x2x1x0( )Γ 0.1.111( ) = Γ x4;1( ) + Γ x4;0( )maj Γ x2 , x1, x0;111( ) , x3,0( ) == x4 + x3x2x1x0( )

Page 22: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Important Cases of Expansion

22

The expansion can be simplified in the following important cases :α i = 1→Γ a.1.b( ) = Γ a +1( ) + Γ a( ) Γ b( ) xi( )α i = 0 →Γ a.0 .b( ) = Γ a +1( ) + Γ a( ) Γ b( ) + xi( )Γ αn−1.b( ) = maj Γ b( ) , xn−1,αn−1( )Γ a.α0( ) = Γ a +1( ) + Γ a( )maj Γ b( ) , x0 ,0( ) = Γ a +1( ) + Γ a( ) x0

Γ X ;a( ) = maj αn−1, xn−1, maj αn−2 , xn−2 , maj …maj α1, x1, x0( )( )( )( )The last expression is used as the basic expansion for the proposed QCA implementation of Boolean functions.

Page 23: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Majority comparator

23

Γ X ;a( ) = maj αn−1, xn−1, maj αn−2 , xn−2 , maj …maj α1, x1, x0( )( )( )( )

Page 24: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

QCA implementation of the comparator

24

Page 25: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

25

Programmable Comparator Array

Page 26: Designing of QCA Schemes by Boundary Functions€¦ · by Boundary Functions V. Ostrovsky, I. Levin, O. Keren Tel Aviv University, Bar Ilan University, Israel 8th International Workshop

Conclusions •  A novel universal quantum cellular automata gate -

boundary comparator is presented •  A programmable comparator based array (PCA) based

on this comparator is presented •  A method for implementation of the QCA schemes by

the PCA is developed •  The PCA provides better solution in comparison with

conventional methods for considerable number of benchmarks

•  The main advantage of the proposed solution is its regularity, which provides the testability, a potential reconfigureability, reparability etc.

26