Title: Regular Structures
1Regular Structures
2Levelized Structures
3Standard Lattice Diagrams for continuous,
multiple-valued and binary logic
4Lattice Structure for Multivalued and Binary Logic
- Realizes every binary symmetric function
- Realizes every non-symmetric function by
repeating variables - Realizes piece-wise linear multivalued functions
Patented by Pierzchala and Perkowski 1994/1999
5Lattice Structure for Multivalued and Binary Logic
- Cell has three inputs and two outputs
- Both outputs have the same function
Multi-valued output variable
red nose
0
1
Binary input variables
beard
red eyes
Perkowski
Jeske
Al-Rabadi
Zakrevskij
Multivalued variables
6Lattice Structure for Multivalued and Binary Logic
binary
Multi-valued output variable
Redness of nose in interval 3,4
0
1
Length of beard an odd number
Redness of eyes in intervals 2,4 or 7,9
Perkowski
Jeske
Al-Rabadi
Zakrevskij
Multivalued variables
7Lattice Structure for Multivalued and Binary Logic
binary
Multi-valued output variable
AgtB
0
1
Multivalued input variables
CltD
EG
Perkowski
Jeske
Al-Rabadi
Zakrevskij
Multivalued input variables
8Lattice Structure for Multivalued and Binary Logic
Cell has 4 inputs and 2 outputs
Can we make the cell reversible?
Multi-valued output variable
A B
AgtB
0
1
Multivalued input variables
C D
CltD
Cgt0
E G
EltG and Glt0
EltGor Ggt0
EG
Perkowski
Jeske
Al-Rabadi
Zakrevskij
Multivalued input variables
9output
Control
left
right
right
left
Control
We want to make this cell reversible
0 0 1 1
0 1 1 0
Values not separated
output
10output
output1
Let us try to repeat control variable in output
left
Control
right
right
left
Control
00 00 10 10
Still not separated
01 11 11 01
output1
output
11output
output1
Repeating variables will not help
left
Control
right
right
left
Control
000 001 101 100
Now it works!
010 110 111 010
output1
output2
output
12output2
output
output1
Control
left
right
right
left
Control
000 001 101 100
This means that we added another MUX
010 110 111 010
output1
output
13. And we reinvented the Fredkin Gate .!!!
- But how to use it in a Lattice?
14Lattice Structure for Binary Logic
F S 1,3 (A,B,C)
A
0
1
B
C
0
1
1
0
S0
S1
S2
S3
15P
S
R
Q
Q R S
(a)
P
0 1 2
0 1 2
0 1 2
A
(b)
D C B
C
Q
A
C
D
A
B
B
S
(c)
P
D
R
161
x1
2
4
3
x2
6
5
7
8
x3
178
x2
2
7
x3
x1
x3
x1
1
3
6
x2
C
Q
4
5
A
B
S
P
D
R
18Notation for Fredkin Gates
P
Q
R
(a)
Q
R
P
0
1
0
1
A
0
1
(b)
A
C
B
B
C
19Three Types of General Expansions
g
f
h
(a)
A
A
1
1
0
0
0
1
g1
ho
(b)
f0
f1
g1Ah0A
g,h and A g1Ah0A
f and A f0 and f1
Reverse Shannon
Forward Shannon
(c)
g, h, and A g0Ah1A and g1Ah0A
Reversible Shannon
g1Ah0A
20Previous levels
f4
f1
f2
f3
...
Other same level
...
ci
...
k4
k2
k1
k3
k5
k6
next levels
21Previous levels
f4
f1
f2
f3
...
Other same level
...
ci
...
k4
k2
k1
k3
k5
k6
next levels
22(No Transcript)
23YZ
X
YZ
- - - -
00 01 11 10
X
- - - -
1
0
0
1
0 1
YZ
YZ
1
1
1
0
X
X
1
0
1
0
garbage
- - - -
g
f
- - - -
0 1 1 1
X
garbage
0
1
garbage
garbage
h
i
fg
gf
garbage
Y
1
0
0
1
garbage
hfg
fgh
1
Z
garbage
1
0
1
0
24YZ
X
X
Y
- - - -
- - 1 1
1
Z
- 0 - -
1 - - -
- 1 - -
0 - - -
1
0
1
0
25Reversible Lattice Structure for Binary Logic
F S 1,3 (A,B,C)
G waste
A
F waste
0
1
F waste
B
F waste
F waste
C
0
1
1
0
S0
S1
S2
S3
26Two-Dimensional Lattice Diagrams for reversible
logic
27Three Types of General Expansions
f
Forward Shannon
A
0
1
f0
f1
f and A f0 and f1
28Three Types of General Expansions
g
h
A
1
1
0
0
g1
ho
(b)
g1Ah0A
g,h and A g1Ah0A
Reverse Shannon
29Three Types of General Expansions
Reversible Shannon
g, h, and A g0Ah1A and g1Ah0A
g1Ah0A
30a
a
x
c
0
c?? ab
1
b
y
b
0
c?? ?ab
1
a
a
First stage of decomposition Feynman gate
Second stage of decomposition Reversible
Expansion for Fredkin gate
Third stage of decomposition Feynman gate
Realization of Toffoli Gate from Fredkin and
Feynman Gates
31a
a
x
c
0
c?? ab
1
b
y
b
0
c?? ?ab
1
a
a
Third stage of composition Feynman gate
Second stage of composition Reversible Expansion
for Fredkin gate
First stage of composition Feynman gate
Realization of Toffoli Gate from Fredkin and
Feynman Gates
32YZ
YZ
X
X
- - - -
0 1 1 1
garbage
0
1
i
fg
garbage
1
0
0
1
33cofactor permuter
- To distinguish this new general decomposition
from the well-known decompositions of Ashenhurst,
Curtis or Shannon, we call it the Multi-purpose
Portland Decomposition, the MP-decomposition for
short.
34Generalization
- We mapped the logic function to a lattice
structure of geometrical connections - there is nothing in our method to map to only
this kind of structure - we can map to any selected regular structure
- we can also map to a irregular structure with
arbitrary connections
35Generalizations of Fredkin gate
- Observe, that this definition of the gate does
not specify the type of signals. - Thus they can be binary, multi-valued, fuzzy,
continuous or complex. - The only requirement is that the relation of
order (lt) is defined on them - It is interesting and important that a single
reversible gate in binary logic has many
generalizations in multiple-valued logic.
36Generalizations of Fredkin gate
- Because it has been shown in 1 that there are
many multiple-valued and multi-output (kgt3)
generalizations of Fredkin gate, the name
modified assigned by Picton is not correct. - The generalization invented by him we will call
the Picton Gate, while generalization of
Fredkin-like gates we call new gates.
37Generalizations of Fredkin gate
- The exhaustive list of families of all such
permutative multi-valued gates (both Shannon-like
and Davio-like) has been presented in 1 and
even more families in 18. - These of the new gates that use multiplexers
only are similar to the original Fredkin gate but
they use multiple-valued multiplexers. - Such multiplexers have been already realized in
many technologies, including super-pass
transistors 9, so building these new gates
should be also possible.
38Generalizations of Fredkin gate
- We believe therefore that they are good
candidates for future reversible multiple-valued
nano-technologies. The new generalization of
Fredkin gate using multi-valued logic has
additional advantages and is simpler. Let us
observe, that equations for the binary 4 4
binary Fredkin gate can be rewritten as follows - P A , Q if A1 then C else if A0 then B ,
R if A1 then B else if A0 then D , S
if A1 then D else if A0 then C - Now, it can be easily generalized to a 4 4
ternary gate as follows P A, Q if A2 then
B else if A1 then C else if A0 then D, R
if A2 then C else if A1 then D else if A0
then B, S if A2 then D else if A1
then B else if A0 then C
39Reversible Lattice Structure for Binary Logic
- Advantages
- regular structure
- binary Fredkin Gate
- planar structure (good for Quantum Logic)
- Easy algorithmic creation
- Reasonable waste
- Disadvantages
- Variable ordering?
- Symmetrization?
- Waste still exist
Should be patented!
40Do you remember that there are other binary
expansions?
- Ideas
- Fredkin ltVar, S, fSgt
- what about these?
- ltVar, pD, fpDgt
- ltVar, nD, fnDgt
- ltVar, nD, pDgt
- .
- All Binary Expansions
- Shannon - S
- Flipped Shannon - fS
- Positive Davio - pD
- Negative Davio - nD
- Flipped Positive Davio - fpD
- Flipped Negative Davio - fnD
I checked some of them to work
41Do you remember that there are other component
functions of reversible gates
- Ideas
- Fredkin ltVar, S, fSgt
- what about these?
- ltN, pD, fpDgt
- ltVar, M, fnDgt
- ltVar, nD, Lgt
- .
- All Binary Balanced Expansions
- ..
- Linear functions - L
- Negations - N
- Majorities - M
I checked some of them to work
42As you see, this opens a very broad area of
research that will lead to invention of new
reversible gates and regular structures that use
them
- Easy way to become a pioneer
- Investigate all combinations
- Use genetic programming or other search methods
to build structures and map functions to them - There is a place for many researchers
- Nobody does this research
But this was only for binary
What about multivalued, fuzzy, arithmetic or
other logics?
43. And we reinvented the Fredkin Gate .!!!
- But what about the variant with two control
signals?
44Multi-valued Fredkin Gate
- MVFG is described by equations
- P A
- Q B
- R C if A lt B else R D
- S D if A lt B else S C
A lt B
lt
A B C D
P Q R S
45Lattice Structure for Multivalued and Binary Logic
Cell has 4 inputs and 4 outputs
MV and Generalized MV Fredkin
Cell is reversible!
Multi-valued output variable
waste
A B
waste
0
1
Multivalued input variables
C D
E G
Perkowski
Jeske
Al-Rabadi
Zakrevskij
Multivalued input variables
46Multi-valued logic generates less signals
Hence it generates less waste
Of course, it generates also less power, less
connections and is easier to test
47The main open research problem
- The real-life functions are multi-output.
- Thus, there exists an opportunity to re-use some
waste functions in other output functions - This is a tough problem.
- I do not know now how to solve it!
We need some group creativity
48Generalized Multi-valued Fredkin Gate
Select other function of two variables
A lt B
lt
Select other pairs of VAR-type and NOT-type
functions
A B C D
P Q R S
Select other pairs of MUX-type functions
49Generalized Multi-valued Fredkin Gate
- The number of these gates is astronomical
- We need both computer generation and some
intelligence, simply generating them all would be
a nonsense - Very wide area of research
- It will give hints to gate designers what to look
for
50But this is only a beginning....
51Let us go back to our fundamental invention..
- What if we resign from oblique buses?
52Buses are removed and each cell is programmed
individually..
533ABCD
1 A B
X
A
B
Y
B
Z
A
C
1
V
B
D
2ZV
3
2
54- The general levelized method can assume any
structure of the layout, thus any order and
choice of input signals of successive Reversible
Shannon expansions. - Assuming other type of structure, cascade or
non-planar lattice with intersecting signals,
this other type of structure would be created. - For arbitrary structures, however, the method
requires small modification if the structure is
too constrained, the structural equations have no
solutions or the algorithm loops.
55- This happens, for instance, when a Maitra
Cascade structure is assumed for a function that
is not Maitra-realizable. - It happens also when we assume a levelized
circuit of too narrow a bandwidth - Thus the algorithm must be modified to deal with
these special cases. - Finally, our general approach will work also for
irregular structures. In such case, any pair of
signals can be the inputs to the Reversible
Shannon Expansion, regardless of their order. The
signals are paired to give the smallest evaluated
total complexity for the level.
56- Arbitrary symmetric function can be realized in a
lattice without repeated variables. - Arbitrary (non-symmetric) function can be
realized in a lattice with repeated variables
(so-called symmetrization). - Similar property exist for the presented method.
This method terminates for arbitrary function,
assuming that the variables are repeated in
levels. Thus, if the leafs of the lattice are not
constants after expanding for all input
variables, some of these variables are used again
in new levels of expansions, which we call
variable repetition. - Interestingly, the functions that do not require
variable repetition in the Reversible Shannon
Lattices are not symmetric functions. - We work on the characterization of the functions
realizable in these structures without
repetitions and respective synthesis algorithms.
57- We can impose during joining the structure of the
three dimensional lattice. Such lattice is
typical for some crystals. - There are also several other three-dimensional
structures corresponding to other types of bonds
or constraints that exist in Nature (for example,
quantum dot computers). - This leads to very many new circuit types, which
are reversible and multi-valued generalizations
of Shannon Lattices, Kronecker Lattices, Fat
Trees, and many other structures introduced in
the past.
58Future Work
- Several realizations of reversible and quantum
logic, such as for instance quantum dots, involve
a geometrical space. - For instance, in the quantum dot model this space
is two-dimensional. - Here we propose to create three-dimensional
regular structures, because our physical world is
three dimensional. Layout-driven synthesis - We plan to design these structures in CMOS and
Optical technologies. - Software