Professional Documents
Culture Documents
V. O. VASYUKEVICH
_________________________________________________________________________
_______________________________
_________________________________________________________________________
PREFACE
First of all let me comply with A.L. Fradkov 1): “Overall majority of science areas today
look like a flowering meadow after a huge herd of animals had a walk on it. Grass is
largely eaten and “juiciest peaces” are eroded up to the ground. Some areas are strolled
upon numerous times. Here and there grass is only rumpled, but it would take an enormous
effort to eat it, and the result would be so hardly noticeable that big animals are already
seeking new pastures over many years…”
Now in essence.
This manuscript is dedicated to new mathematical instruments assigned for logical
modeling of the memory of digital devices. The case in point is logic-dynamical operation
named venjunction and venjunctive function as well as sequention 2) and sequentional
function. Venjunction and sequention operate within the framework of sequential logic. In
a form of corresponding equations, they organically fit analytical expressions of Boolean
algebra. Thus, a sort of symbiosis is formed using elements of asynchronous sequential
logic on the one hand, and combinational logic on the other hand. Thence, a common
denomination is asynchronous logic.
“Elements” in the title imply initial concepts, fundamental definitions, statements,
principles and rules needed for theoretical justification of the new mathematical apparatus
and its validity for asynchronous logic. Asynchronous circuits named venjunctor and
sequentor are designed for practical implementation. These basic elements are assigned for
realizing of memory function in sequential circuits. It is important that in general case
memory depth theoretically is not restricted.
The manuscript does not contain overview-educational fragments. It is narrow
specialized research of “pure” kind. Reader should know Boolean algebra, set theory, and
foundations of digital devices.
1)
Article “How to publish a good article and to reject a bad one. Notes of a reviewer.” Available in
Russian at: http://www.ipme.ru/ipme/labs/ccs/alf/f_at03r.pdf .
2)
No need to associate with “sequent”, used for the sequent calculus.
V.Vasyukevich - Asynchronous logic elements 3
CONTENTS
PREFACE…………………………………………………………………………... 2
1. VENJUNCTION
1.1. Binary sets and sequences ………………............................................................ 6
(format of binary set , asynchronous sequences,
intersection of sets and sequences )
1.2. Logical switchings ……….................................................................................... 9
(moments of switchings, background of switchings, rules for switchings)
1.3. Methods for representation of variables collections.............................................. 10
(sequence of binary sets, set of asynchronous sequences,
sequence of logical switchings)
1.4. Switching function – venjunction …………......................................................... 12
(venjunction operation, venjunction as function)
1.5. Venjunction in comparison with conjunction........................................................ 15
1.6. Methods of venjunction formalized definition …………..................................... 17
(on a basis of binary sets and sequences, with involving an undetermined
value, with involving a conjunction, with involving the additional binary
variable, verbal “reading” of venjunction)
1.7. Truth tables for venjunction ……..……............................................................... 19
(venjunctive dependences, master truth table for venjunctions)
1.8. Venjunctive functions and their enumeration …................................................... 23
(venjunctive complete form, enumeration of functions of two variables)
1.9. Graphs of switchings for venjunctive functions ………....................................... 28
(graph of venjunction, graphs of venjunctive functions,
graphs and venjunctive complete forms)
1.10. Venjunction properties. Basic functions …........................................................... 30
(relation between operations of conjunction and venjunction, inversion of
venjunction, operations with mirror venjunctions, commutativity and
associativity, distributivity, idempotency, absorptions, rules of zeroing,
venjunction with logical unity)
1.11. Venjunctive representation of logical indeterminacy …………........................... 33
(indeterminacy of venjunction, criterion for indeterminacy)
V.Vasyukevich - Asynchronous logic elements 4
2. APPLICATION AREA
3. SEQUENTION
AFTERWORD.............................................................................................................. 117
V.Vasyukevich - Asynchronous logic elements 6
1. VENJUNCTION
Let us assume that [ x1 x2 ... xn ] is an ordered collection consisting of all elements of a set
{x1 , x2 ,..., xn } . These elements are binary variables with logical values 0 or 1. By replacing
the variables with their values a binary combination is formed. Generally this combination
can be considered as a word in the alphabet {0,1} , and therefore termed binary set.
In the context of Boolean algebra, a set is said to be binary, if it contains logical zero
(0) and unity (1) signs as values of certain Boolean variables. For example, variables
{x1 , x2 , x3 , x4 , x5 } with values x1 = 1 , x2 = 1 , x3 = 0 , x4 = 1 , x5 = 0 form the binary set
[11010] . Here, the first in order unit determines a value of the variable x1 because it
occupies the first position in the corresponding set. Similarly, second unit associates with
the second symbol of the set, that is, x2 . And so on, up to zero value of the last, fifth
variable x5 . Thus, there is positional correspondence between a binary set and a sequence
of symbols located in a set of Boolean variables.
Format of binary set
For realization of the positional principle established above, the concept of a format of
variables is entered. The format is represented in the form of a set of variables, the
sequence of which predetermines values of these variables in the appropriate binary set.
Let's explain on an example. In view of the coordination of positions at values x1 = 1 ,
[ x1 x2 x3 x4 x5 ] = [11010] . (1-1)
[ x1 x2 x3 x4 x5 ] = [01101] . (1-2)
Thus, it is possible to consider that binary sets are positioned in accordance with a format
of variables. Thanks to the format, binary sets are able to represent Boolean variables in an
explicit form.
Binary sequences
Unlike set a binary sequence represents values only for single variable, but not for
whole set of them. So the sequence 〈11010〉 means that a certain variable x is presented by
five values fixed during time, since the moment t1 and finishing t5 . Point in time t1
corresponds to the unity value x(t1 ) = 1 , point t2 – to x(t2 ) = 1 , and further: x(t3 ) = 0 ,
x(t4 ) = 1 and x(t5 ) = 0 . Time depending variable x(t ) forms the sequence
〈 x(t1 ) x(t2 ) x (t3 ) x(t4 ) x (t5 )〉 , which determines a format for the proper construction of
set these points, placing the certain marks on the axis of time during which variable x(t ) is
traced. In other words, the binary sequence of a format 〈 x(t1 ) x(t2 ) x(t3 )... x (tm )〉 is called
x1 x2 x3 x4
t1 X1 0 0 0 1
t2 X2 0 1 0 1
t3 X3 1 1 0 1
t4 X4 1 1 0 0
t5 X5 1 1 1 0
This table is structured as follows. There are horizontally located binary sets:
X 1 = [0 0 01] , (1-4.1)
X 2 = [0101] , (1-4.2)
X 3 = [1101] , (1-4.3)
X 4 = [110 0] , (1-4.4)
X 5 = [1110] , (1-4.5)
which are fixed in moments of time t1 , t2 , t3 , t4 , t5 respectively. All sets are presented in
x1 (t ) = 〈 0 0111〉 , (1-5.1)
x2 (t ) = 〈 01111〉 , (1-5.2)
x3 (t ) = 〈 0 0 0 01〉 , (1-5.3)
x4 (t ) = 〈1110 0〉 , (1-5.4)
Attention is drawn to that data presented in Table 1.1 can be examined as a series of logical
switchings. Thus, under switching is meant changing of value of one or another binary
variable from a logical zero to logical unity or from unity to zero: 0/1 or 1/0 respectively.
Switchings are carried out in the following order. First it concerns a variable x2 . It changes
the value from logical zero to unity, because at the moment of time t1 equality x2 (t1 ) = 0 is
x4 = 1/ 0 and x3 = 0 /1 , which meet the moments of time t3 , t4 and t5 with binary sets
Moments of switchings
Moments of switchings are tied to the moments of time when the values of variables are
fixed. This obvious circumstance admits different interpretations because of binary
variable behavior directly at the time of logical switching. Therefore, eliminating possible
collisions and without losing a generality, we believe that any asynchronous sequence x(t )
Until the time t j variable x does not change its value. At the moment t j switching occurs
and variable takes on another value that meets x(t j ) . This new value holds constant until
the moment of the next switching. Concretely, if x(t j-1 ) = 0 but x(t j ) = 1 , then at the
moment of time t j variable x is switched from logical zero to unity: x = 0 /1 . If x(t j-1 ) = 1
X 3 (Table 1.1) the following happens. Variable x1 changes its value from logical zero to
unity. At the same time other variables do not change their own values and thus create a
peculiar background for switching x1 = 0 /1 . Background switches at the moment of time t3
Judging from configuration of table, its content can be expressed in analytical form. For
this purpose it is enough to take advantage of the following methods.
Here, all values of binary variables are in agreement with the following denotations:
For a general case asynchronous sequence of binary sets is given by the following formal
expression:
Here “m” is a length of sequence, which is caused by number of points used for fixing the
values of Boolean variables.
〈 0 0111〉 = x1 (t ) = 〈 x1 〉 , (1-11.1)
〈 01111〉 = x2 (t ) = 〈 x2 〉 , (1-11.2)
〈 0 0 0 01〉 = x3 (t ) = 〈 x3 〉 , (1-11.3)
〈1110 0〉 = x4 (t ) = 〈 x4 〉 . (1-11.4)
[〈 X〉 ] = [〈 x1 〉 〈 x2 〉 〈 x3 〉 ... 〈 xn -1 〉 〈 xn 〉 ] , (1-12)
With due account of the variables formatting logical switchings naturally present in
equality:
On the basis of logical switchings a switching function is built. For its realization an
operation called venjunction is involved.
Operation of venjunction
Verbal expression written as “switching … on the background …” has a formalized
mathematical representation. For this purpose a special operation named venjunction and
designated by sign “ ∠ ” is intended. This sign links binary variables. As an example, for
pair of variables x and y the expression “switching x on the background y” is presented by
formula x ∠ y .
Venjunction is an asymmetrical logic dynamical operation. It takes into account the
values of variables not only current, but also their previous moment of time. The operation
is asymmetrical in the sense of inequality:
x∠ y≠ y∠x . (1-16)
Switching x on the background y and reverse switching y on the background x are different
actions, not compatible in time of their realization. Venjunctions associated with these
V.Vasyukevich - Asynchronous logic elements 13
z= x∠ y. (1-17)
This formula serves as a basis for construction of switching function which components
are tabulated (Table 1.2) in view of the format of Table 1.1. Variables x and y, as being
arguments, are fixed at the moments of time t j -1 and t j . Values of these variables x (t j-1 ) ,
x y z
tj Xj x (t j ) y (t j ) z (t j )
Venjunction as function
Operation of venjunction implies that the truth of the respective function, which is
expressed by the logical unity z (t j ) = 1 , is caused by switching x (t j -1 ) / x (t j ) = 0 /1 on the
x y z
t j -1 X j-1 0 1 J
tj Xj 1 1 1
is zero, value z (t j ) = 0 , accompanies switchings which answer data of Table 1.3. These
From equality z (t j-1 ) = J it follows that a value assigned to variable z (t j-1 ) does not
1) 2) 3) 4) 5)
0 1 0 0 0 0 1 1 0 1 1 1 1 0 0
1 1 1 1 0 0 0 1 0 0 1 0 0 0 0
6) 7) 8) 9) 10)
1 0 0 0 0 0 1 1 0 1 1 1 0 1 0
1 1 0 0 1 0 1 0 0 1 0 0 0 0 0
there is one more sufficient condition, namely: logical unity setting for x must occur at the
moment when unity value y = 1 is already fixed. That is, logical switching x = 0 /1 must be
realized on the background of a steady value y = 1 . An essence of operation is explained by
a diagram in Figure. 1.1.
According to the diagram, at the moments of time t1 and t9, when y = 1 , and variable
x changes the value in connection with its switching from logical zero to unity (0/1), a
resulting function reduces to unity. On a contrary due to y = 0 , switching x = 0 /1 at the
moment t5 does not produce an effect on the graph of venjunction x ∠ y . Unity of the
corresponding function is maintained by the unity values of arguments. When a variable x
or y reduces to zero, function value becomes zero. In the diagram it is shown by the
moments of time t2 and t10, which are connected with switchings y = 1/ 0 and x = 1 / 0
respectively.
x∠ y
y∠x
x∧ y
λ
t1 t2 t3 t4 t5 t6 t7 t8 t9 t10
x ∧ y = ( x ∠ y ) ∨ ( y ∠ x) . (1-23)
The given expression formalizes the rule of disjunctive expansion of a conjunction into
two venjunctions as components. Or otherwise (reverse “reading”), it is a rule of merging
of venjunctions.
because of J ∈ {10} .
Based on the foregoing the function of venjunction is defined as follows:
Moments of switching λ = 0 /1 are points in time t1 and t9; switching λ = 1/ 0 occurs at the
moment t3. By using the auxiliary variable venjunction is defined through a conjunction in
accordance with the following formula:
x∠ y =λ ∧ x∧ y . (1-28)
Similar expression for mirror venjunction differs only by the value of the auxiliary
variable:
y ∠ x=λ ∧ x∧ y . (1-29)
V.Vasyukevich - Asynchronous logic elements 19
according to which a function (z) and its arguments (x, y) take the form of logical
switchings.
y
z
1/1 0/1 1/0 0/0
1/1 J/J 0/0 J/0 0/0
0/1 0/1 0/0
x
1/0 J/0 0/0
0/0 0/0 0/0 0/0 0/0
Left column of the table contains switchings of the binary variable x. Switchings of
V.Vasyukevich - Asynchronous logic elements 20
the binary variable y are placed in upper row. In the squares located at the intersection of
columns and rows, switchings of resulting variable z are presented. For example, if x = 0 /1
and y =1/1 , then z = 0 /1 . Indetermination of z = J / J caused by pseudoswitchings x = 1/1
and y =1/1 means that in the present context two results z = 0 / 0 and z = 1/1 can be
equally supposed.
If switching values contradict the rules accepted for the binary variables, the
corresponding squares for z remain not filled. For example, the combination of switchings
x = 0 /1 and y = 1/ 0 is not subject to examination. This combination is considered
inadmissible because at once two variables simultaneously change their values that is
forbidden a priori (p. 1.2).
Table 1.5 contains all switchings concerned with the operation of venjunction,
including those which are typical for a venjunctive function. In view of accepted above
definitions (p. 1.6) values of this function are presented by the second component of the
switching z (t j-1 ) / z (t j ) , that is z (t j ) . The corresponding functional dependence is
represented by formula:
z (t j ) = ϕ ( x (t j -1 ) / x (t j ), y (t j-1 ) / y (t j )) . (1-31)
On the basis of given dependence a truth table of venjunction is constructed (Table 1.6).
y
z
1 0/1 1/0 0
1 0 0
0/1 1 0
x
1/0 0 0
0 0 0
Accordingly, truth values of function are determined in Table 1.7. This table differs from
Tables 1.5 and 1.6 in that its function is defined on sequences of binary sets and not on the
switchings of binary variables. For example, instead of the switching x = 0 /1 and constant
value y = 1 two binary sets [ x y ] = [01] and [ x y ] = [11] in the sequence 〈 [01] [11] 〉 are used.
t1 t2
X1 X2
z
x y x y
0 1 1 1 1
1 1 1 0 0
1 0 0 0 0
0 0 1 0 0
1 0 1 1 0
1 1 0 1 0
0 1 0 0 0
0 0 0 1 0
At the moment of time t1 a binary set X 1 = [ x (t1 ) y (t1 )] acts. At the next moment t2 a
set X 2 = [ x (t2 ) y (t2 )] interchanges the previous one. A function is assigned by the values of
z at the time t2 , that is z (t2 ) . Logical switchings of variables x and y are presented in the
form of sequences of two sets: 〈 X 1 X 2 〉 . These sets, as well as their corresponding values
Table 1.7 is constructed in such a manner that step-by-step shifting from upper row
of binary sets to the lower row forms the following sequence:
V.Vasyukevich - Asynchronous logic elements 22
〈 [01] [11] 〉 〈 [11] [10] 〉 〈 [10] [0 0] 〉 〈 [0 0] [10] 〉 〈 [10] [11] 〉 〈 [11] [01] 〉 〈 [01] [0 0] 〉 〈 [0 0] [01] 〉 .
(1-33)
The sequence can be adequately minimized by removing all repeated sets. Then:
In the given sequence all switchings which are typical for two variables are presented. This
feature serves as a basis for constructing yet another table (Table 1.8). This master table
aside from a basic venjunction x ∠ y incorporates all its modifications which are generated
by permutation and logical inversion of the variables x and y.
z
x y
x∠ y y∠x x∠y x∠ y y∠x x∠y y∠x y∠x
t1 X1 0 1 0 0 0 0 0 J 0 J
t2 X2 1 1 1 0 0 0 0 0 0 0
t3 X3 1 0 0 1 0 0 0 0 0 0
t4 X4 0 0 0 0 1 0 0 0 0 0
t5 X5 1 0 0 0 0 1 0 0 0 0
t6 X6 1 1 0 0 0 0 1 0 0 0
t7 X7 0 1 0 0 0 0 0 1 0 0
t8 X8 0 0 0 0 0 0 0 0 1 0
t9 X1 0 1 0 0 0 0 0 0 0 1
z (t ) = ϕ (〈 [X] 〉 ) . (1-35)
The order, in which binary sets X = [ x y ] are arranged, is caused by the format:
V.Vasyukevich - Asynchronous logic elements 23
〈 [X] 〉 = 〈 X 1 X 2 X 3 X 4 X 5 X 6 X 7 X 8 X 1 〉 . (1-36)
The values of each venjunctive function are displayed in the form of asynchronous
sequence:
z (t ) = 〈 z (t1 ) z (t2 ).z (t3 ) z (t4 ) z (t5 ) z (t6 ) z (t7 ) z (t8 ) z (t9 )〉 . (1-37)
z (t ) = 〈 0 0 1 0 0 0 0 0 0〉 . (1-38)
∨ (k ∧ V ) , i∈{1, 2,...,8} .
i
i i (1-39)
x ∠ y = V1 , (1-40.1)
y ∠ x = V2 , (1-40.2)
V.Vasyukevich - Asynchronous logic elements 24
x ∠ y = V3 , (1-40.3)
x ∠ y = V4 , (1-40.4)
y ∠ x = V5 , (1-40.5)
x ∠ y = V6 , (1-40.6)
y ∠ x = V7 , (1-40.7)
y ∠ x = V8 . (1-40.8)
Coefficient k regulates the sampling of such venjunctions that are chosen for representation
of one or another function in its complete form. Representation takes place at unity value
of k ( k = 1 ). In the opposite case ( k = 0 ) the corresponding venjunction does not take part
in formation of function.
For example, if venjunctions V1, V2, V4, V5, and V6 are chosen, they form the
function which in its complete form looks as follows:
z = ( x ∠ y ) ∨ ( y ∠ x) ∨ ( x ∠ y ) ∨ ( y ∠ x) ∨ ( x ∠ y ) . (1-41)
In view of the rule established above (p. 1.5, 1-23) for mirror venjunctions, the given
formula is minimized to the compact expression:
z = x ∨ ( x ∠ y) . (1-42)
It is necessary to note that a compact form cannot include more than four venjunctions.
Whole set of venjunctions contains four mirror pairs. Therefore, any fifth venjunction is a
mirror in relation to existing venjunction, and together they generate a conjunction.
Note
In an effort to enumerate the functions, another expression is also applicable. It is an
alternative complete form, where logical operations of conjunction and negation are used
in such a manner:
∧ (k ∨ V ) , i∈{1, 2,...,8} .
i
i i (1-43)
In this case chosen above venjunctions form a function represented by the following
V.Vasyukevich - Asynchronous logic elements 25
expressions:
z = V1 ∧ V2 ∧ V4 ∧ V5 ∧ V6 = ( x ∠ y ) ∧ ( y ∠ x) ∧ ( x ∠ y ) ∧ ( y ∠ x) ∧ ( x ∠ y ) , (1-44.1)
z = V3 ∨ V7 ∨ V8 = ( x ∠ y ) ∨ ( y ∠ x ) ∨ ( y ∠ x ) = x ∧ y ∨ y ∠ x . (1-44.2)
It is obvious that venjunctive complete form based on the disjunctive operation is more
convenient for enumeration in contrast with another form based on the conjunction.
Alternative form is burdened with additional calculations, which are caused by logical
negation.
In such a manner:
One venjunction: it is z = ( x ∠ y ) .
Venjunction and a variable:
z = ( x ∠ y) ∨ x , (1-45.1)
z = ( x ∠ y) ∨ y . (1-45.2)
z = ( x ∠ y) ∨ x ∧ y ∨ x ∧ y . (1-48)
Two venjunctions:
z = ( x ∠ y) ∨ ( x ∠ y ) , (1-49.1)
z = ( x ∠ y ) ∨ ( y ∠ x) , (1-49.2)
z = ( x ∠ y) ∨ ( x ∠ y) , (1-49.3)
z = ( x ∠ y) ∨ ( y ∠ x ) , (1-49.4)
z = ( x ∠ y) ∨ ( x ∠ y ) , (1-49.5)
z = ( x ∠ y) ∨ ( y ∠ x ) . (1-49.6)
z = ( x ∠ y) ∨ ( x ∠ y) ∨ x ∧ y , (1-51.1)
z = ( x ∠ y) ∨ ( x ∠ y) ∨ x ∧ y , (1-51.2)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ x ∧ y , (1-51.3)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ x ∧ y , (1-51.4)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ x ∧ y , (1-51.5)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ x ∧ y , (1-51.6)
z = ( x ∠ y) ∨ ( y ∠ x ) ∨ x ∧ y , (1-51.7)
z = ( x ∠ y) ∨ ( y ∠ x ) ∨ x ∧ y , (1-51.8)
z = ( x ∠ y ) ∨ ( y ∠ x) ∨ x ∧ y , (1-51.9)
z = ( x ∠ y ) ∨ ( y ∠ x) ∨ x ∧ y , (1-51.10)
z = ( x ∠ y) ∨ ( y ∠ x ) ∨ x ∧ y , (1-51.11)
z = ( x ∠ y) ∨ ( y ∠ x ) ∨ x ∧ y . (1-51.12)
V.Vasyukevich - Asynchronous logic elements 27
Three venjunctions:
z = ( x ∠ y) ∨ ( x ∠ y) ∨ ( x ∠ y ) , (1-52.1)
z = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x) , (1-52.2)
z = ( x ∠ y) ∨ ( x ∠ y) ∨ ( x ∠ y ) , (1-52.3)
z = ( x ∠ y) ∨ ( x ∠ y) ∨ ( y ∠ x ) , (1-52.4)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( y ∠ x ) , (1-52.5)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( x ∠ y ) , (1-52.6)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( y ∠ x ) , (1-52.7)
z = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x) , (1-52.8)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( y ∠ x ) , (1-52.9)
z = ( x ∠ y ) ∨ ( y ∠ x ) ∨ ( y ∠ x) , (1-52.10)
z = ( x ∠ y) ∨ ( y ∠ x ) ∨ ( y ∠ x ) , (1-52.11)
z = ( x ∠ y ) ∨ ( y ∠ x) ∨ ( y ∠ x ) . (1-52.12)
z = ( x ∠ y) ∨ ( x ∠ y) ∨ ( x ∠ y ) ∨ x ∧ y , (1-53.1)
z = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x) ∨ x ∧ y , (1-53.2)
z = ( x ∠ y) ∨ ( x ∠ y) ∨ ( x ∠ y ) ∨ x ∧ y , (1-53.3)
z = ( x ∠ y) ∨ ( x ∠ y) ∨ ( y ∠ x ) ∨ x ∧ y , (1-53.4)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( y ∠ x ) ∨ x ∧ y , (1-53.5)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( x ∠ y ) ∨ x ∧ y , (1-53.6)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( y ∠ x ) ∨ x ∧ y , (1-53.7)
z = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x) ∨ x ∧ y , (1-53.8)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( y ∠ x ) ∨ x ∧ y , (1-53.9)
z = ( x ∠ y ) ∨ ( y ∠ x ) ∨ ( y ∠ x) ∨ x ∧ y , (1-53.10)
z = ( x ∠ y) ∨ ( y ∠ x ) ∨ ( y ∠ x ) ∨ x ∧ y , (1-53.11)
z = ( x ∠ y ) ∨ ( y ∠ x) ∨ ( y ∠ x ) ∨ x ∧ y . (1-53.12)
V.Vasyukevich - Asynchronous logic elements 28
Four venjunctions:
z = ( x ∠ y) ∨ ( x ∠ y) ∨ ( x ∠ y ) ∨ ( x ∠ y ) , (1-54.1)
z = ( x ∠ y) ∨ ( x ∠ y) ∨ ( x ∠ y ) ∨ ( y ∠ x ) , (1-54.2)
z = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x) ∨ ( x ∠ y ) , (1-54.3)
z = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x) ∨ ( y ∠ x ) , (1-54.4)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( y ∠ x ) ∨ ( x ∠ y ) , (1-54.5)
z = ( x ∠ y) ∨ ( x ∠ y ) ∨ ( y ∠ x ) ∨ ( y ∠ x ) , (1-54.6)
z = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x) ∨ ( y ∠ x ) , (1-54.7)
z = ( x ∠ y ) ∨ ( y ∠ x ) ∨ ( y ∠ x) ∨ ( y ∠ x ) . (1-54.8)
To continue searching for new functions and in such a manner to complete commenced
enumeration, it is sufficient to perform rearrangement and logical negation operations for
binary variables of the given expressions.
Thus, having 16 functions which can be constructed in the framework of Boolean
algebra using two variables, it is possible to add 240(!) venjunctive functions.
1
01 11
0
0 0 0 0
0
00 10
0
Nodes of the graph are binary sets [01] , [11] , [10] and [0 0] , presented in the format
V.Vasyukevich - Asynchronous logic elements 29
[ x y ] . Nodes are connected by arcs, which symbolize transitions between nodes. Each
transition is caused by corresponding switching of variables. For example, a switching
x = 0 /1 on the background y = 1 is displayed by the arc, which comes from node [01] and
reaches a node [11] .
Each edge-switching is accompanied by a digit, that is 1 (unity), because in response
to the switching x = 0 /1 the given function produces a value z = 1 . Other switchings, as it
is characteristic for venjunction, cause a zero value z = 0 .
In Figure 1.3 graph of venjunction is represented in the different form. Arcs are not
burdened with function values 0 and 1. Instead of this, it is meant that every unbroken line
of arc indicates z = 1 setting, and dotted line is associated with the value z = 0 .
As examples, two graphs of venjunctive functions (p. 1.8, 1-47.1 and 1-53.1) are
displayed in Figure 1.4.
01 11
00 10
01 11 01 11
1) 2)
00 10 00 10
z = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x) , (1-55.1)
z = ( x ∠ y) ∨ ( x ∠ y) ∨ ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x ) . (1-55.2)
x ∧ y = ( x ∠ y ) ∨ ( y ∠ x) . (1-56)
( x ∧ y) ∧ ( x ∠ y) = ( x ∠ y) . (1-57)
( x ∧ y) ∨ ( x ∠ y) = ( x ∧ y) . (1-58)
( x ∠ y ) = x ∨ y ∨ ( y ∠ x) , (1-59.1)
( x ∠ y ) = ( x ∧ y ) ∨ ( y ∠ x) . (1-59.2)
( x ∠ y) = ( x ∠ y) . (1-60)
( x ∠ y ) ∨ ( y ∠ x) = x ∧ y , (1-61.1)
( x ∠ y ) ∨ ( y ∠ x) = ( y ∠ x) , (1-61.2)
( x ∠ y ) ∨ ( y ∠ x) =1 . (1-61.3)
Conjunction rules:
( x ∠ y ) ∧ ( y ∠ x) = 0 , (1-62.1)
( x ∠ y ) ∧ ( y ∠ x) = x ∠ y , (1-62.2)
( x ∠ y ) ∧ ( y ∠ x) = x ∧ y . (1-62.3)
( x ∠ y ) ≠ ( y ∠ x) , (1-63.1)
x ∠ ( y ∠ z) ≠ ( x ∠ y) ∠ z . (1-63.2)
x ∠ ( y ∠ z ) = ( x ∠ y) ∧ ( y ∠ z ) , (1-64.1)
( x ∠ y) ∠ z = x ∠ ( y ∧ z) , (1-64.2)
( x ∠ y) ∠ y = x ∠ y . (1-64.3)
Distributivity
Mainly, distributivity is not inherent to venjunction:
x ∠ ( y ∨ z ) ≠ ( x ∠ y) ∨ ( x ∠ z ) , (1-65.1)
( x ∨ y) ∠ z ≠ ( x ∠ z ) ∨ ( y ∠ z ) , (1-65.2)
V.Vasyukevich - Asynchronous logic elements 32
x ∧ ( y ∠ z ) ≠ ( x ∧ y) ∠ ( x ∧ z) , (1-65.3)
x ∨ ( y ∠ z ) ≠ ( x ∨ y) ∠ ( x ∨ z) . (1-65.4)
x ∠ ( y ∧ z) = ( x ∠ y) ∧ ( x ∠ z) . (1-66)
However in the case of mirror components this expression does not obey to distributivity:
( x ∧ y) ∠ z ≠ ( x ∠ z ) ∧ ( y ∠ z ) . (1-67)
Idempotency
Idempotency is not inherent to venjunction:
( x ∠ x) ≠ x . (1-68)
Absorptions
Established above (p. 1.6) equality, namely x ∠ y = x ∧ y ∧ λ , allows to form the rules of
absorption as follows:
x ∧ ( x ∠ y) = ( x ∠ y) , (1-69.1)
y ∧ ( x ∠ y) = ( x ∠ y) , (1-69.2)
x ∨ ( x ∠ y) = x , (1-69.3)
y ∨ ( x ∠ y) = y . (1-69.4)
In other cases absorption does not happen, and the following inequalities take place:
x ∠ ( x ∧ y) ≠ x ∧ y , (1-70.1)
( x ∧ y) ∠ y ≠ x ∧ y , (1-70.2)
x ∠ ( x ∨ y) ≠ x , (1-70.3)
( x ∨ y) ∠ y ≠ y . (1-70.4)
V.Vasyukevich - Asynchronous logic elements 33
Rules of zeroing
In the given context zeroing rules coincide with the similar rules for conjunctions as can be
seen from formulae:
x∠ x =0 , (1-71.1)
x ∠ x=0 , (1-71.2)
x∠0=0, (1-71.3)
0∠ x =0. (1-71.4)
x ∠1 ≠ x ; (1-72.1)
1∠ x ≠ x . (1-72.2)
( x ∠ y ) = (1 ∠ 1) . (1-73)
Thus, as concerning the term of indeterminacy the following laws are postulated:
1) if z ≠ 1 and z ≠ 0 , then z = J ;
2) if z =1 ∠1 , then z = J .
The above concept is corroborated and can be proved on the following formal grounds.
Earlier (p. 1.6) it was defined that a binary variable λ in the formula
z = ( x ∧ y ) ∧ λ changes the value exclusively at the moment of switchings x = 0 /1 and
y = 0 /1 . Therefore, if the switchings themselves are only partly determined as x = J /1 and
y = J /1 , existing indeterminacy is extended to auxiliary variable, and λ = J . Then:
z = ( x ∧ y) ∧ J . (1-74)
2. APPLICATION AREA
2.1. Bistable cell
Bistable cell is the simplest memory element in asynchronous (venjunctive) logic. This cell
is considered as a fundamental element for constructing and realizing the operation of
venjunction itself as well as of venjunctive functions on its basis.
ZX ZY
NAND NAND
X Y
Y Y
ZX ZY
1/1 0/1 1/0 0/0 1/1 0/1 1/0 0/0
1/1 J/J 0/0 J/0 0/0 1/1 J/J 1/1 J/1 1/1
0/1 1/1 1/0 0/1 0/0 1/1
X X
1/0 J/1 0/1 1/0 J/0 1/1
0/0 1/1 1/1 1/1 1/1 0/0 0/0 1/0 0/1 1/1
A cell is symmetrical by its own structure. There are two inputs designated as X and
Y, and two outputs ZX and ZY respectively. Switchings of input signals are transformed by
logical NAND-elements into output switchings. Thus, the logic of bistable cell operating is
V.Vasyukevich - Asynchronous logic elements 36
defined. Corresponding logical relationships are displayed in the form of switching tables.
Tables 2.1 show what kind of binary switchings appear on the outputs of bistable cell
in response to the switchings of input signals. For example, appearance Z X = J/1 in
response to X = 1/0 and Y = 1/1 means that owing to switching X = 1/0 on the
background Y = 1 bistable cell is transferred to unity state of the output Z X . Sign J
symbolizes dependency of the output signal from its initial, and therefore unknown, value.
According to p. 1.4, venjunctive function is defined at such values that complete
switchings of output signal in Tables 2.1. In view of the given circumstance, the examined
bistable cell responds to input switchings in compliance with the data of Tables 2.2. These
tables represent the following functional dependences:
ZX = ϕ X ( X ,Y ) , (2-1.1)
ZY = ϕ Y ( X ,Y ) , (2-1.2)
Y Y
ZX ZY
1 0/1 1/0 0 1 0/1 1/0 0
1 0 0 1 1 1
0/1 1 0 0/1 0 1
X X
1/0 1 1 1/0 0 1
0 1 1 0 0 1
Z Y = (Y ∠ X ) ∨ (Y ∠ X ) ∨ ( X ∠ Y ) ∨ ( X ∠ Y ) ∨ (Y ∠ X ) . (2-2.2)
These expressions are output functions presented in their venjunctive complete form. They
combine all input venjunctions, unity values of which cause the outputs of Z X = 1 and
( X ∠ Y ) ∨ (Y ∠ X ) = X ∧ Y , (2-3.1)
( X ∠ Y ) ∨ (Y ∠ X ) = X ∧ Y , (2-3.2)
X ∧Y ∨ X ∧Y = X , (2-3.3)
ZX = X ∨ ( X ∠ Y ) , (2-4.1)
Z Y = Y ∨ (Y ∠ X ) . (2-4.2)
Thus, unity value of output ZX (ZY) takes place at zero signal of input X (Y), or at the
switching X = 0 /1 ( Y = 0 /1 ) on the background Y = 1 ( X = 1 ). Specifics of formulae
allow their otherwise reading, for example referring to ZX: ”if signal X = 0 occurs, function
takes unity value and retains it, even when the value of X switches, but only until a signal
Y = 1 is unchangeable, that is until the moment of switching Y = 1/0”.
For Z X = 0 (Tables 2.2) a compact formula and its complete form are presented as
follows:
Z X = X ∧ Y ∨ (Y ∠ X ) , (2-5.1)
Z X = ( X ∠ Y ) ∨ (Y ∠ X ) ∨ (Y ∠ X ) . (2-5.2)
Z Y = X ∧Y ∨ ( X ∠Y ) , (2-6.1)
Z Y = ( X ∠ Y ) ∨ (Y ∠ X ) ∨ ( X ∠ Y ) . (2-6.2)
V.Vasyukevich - Asynchronous logic elements 38
ZX ZY
NOR NOR
X Y
Y Y
ZX ZY
1 0/1 1/0 0 1 0/1 1/0 0
1 0 0 1 0 1
0/1 0 0 0/1 0 1
X X
1/0 1 0 1/0 0 1
0 1 1 0 0 0
From comparing the data in Tables 2.3 with the corresponding data in Tables 2.2
follows that after replacement of logical NAND-elements (Figure 2.1) with NOR-elements
(Figure 2.2) functioning of bistable cell changes in a certain way. Former logic operations
and structure of formulae remain valid, but input and output signals are subject to negation.
Thus, functions assume the form of dependences:
Z X = ϕ X ( X ,Y ) , (2-7.1)
Z Y = ϕ Y ( X ,Y ) . (2-7.2)
Z X = X ∨ ( X ∠Y ) , (2-8.1)
Z Y = Y ∨ (Y ∠ X ) , (2-8.2)
Z X = X ∧ Y ∨ (Y ∠ X ) , (2-8.3)
ZY = X ∧ Y ∨ ( X ∠ Y ) . (2-8.4)
ZX ZY ZX ZY Z ZX ZY
1) BC 2) 3) V 4) DV
BC
X Y X Y X Y X Y
X
Figure 2.3. Asynchronous logic elements:
1) BC – bistable cell; 2) BC – inverted bistable cell;
3) V – Venjunctor; 4) DV – Double venjunctor.
Z = X ∠Y . (2-9)
passive input Y.
Double venjunctor unites two venjunctors so that two mirror venjunctive functions
are performed. They are:
ZX = X ∠ Y , (2-10.1)
ZY = Y ∠ X . (2-10.2)
2.3. Venjunctor
Venjunctor as a logical element is built on a base of bistable cell. Functional properties of
this cell allow constructing a venjunctor using different methods. If a bistable cell (Figure
2.3-1, Figure 2.1) is applied, it is suitable to deduce a venjunction X ∠ Y by the following
transformations:
Z = ( X ∧ Z X = X ∧ ( X ∨ X ∠ Y )) = X ∠ Y , (2-11.1)
Z = ( X ∧ Z Y = X ∧ ( X ∧ Y ∨ X ∠ Y )) = X ∠ Y , (2-11.2)
Z = ( X ∧ Y ∧ ZX ) = X ∠ Y , (2-11.3)
Z = (X ∧Y ∧ Z Y ) = X ∠Y . (2-11.4)
The given four formulae serve as a reference for constructing logical circuits (Figure 2.4,
Figure 2.5, Figure 2.6, Figure 2.7). Each of these circuits performs the operation of
venjunction: Z = X ∠ Y .
From a structural redundancy and signals race standpoint, it can be determined that
the logical circuit shown in Figure 2.5 realizes a functionality of a venjunctor most
efficiently.
AND
NAND NAND
X Y
AND NOT
NAND NAND
X Y
Z
AND
BC
X Y
AND NOT
BC
X
Y
Note
Scheme implementations, that operate using inverted signals, are ensured by the logical
BC -element (Figure 2.3-2, Figure 2.2). In this case the following formulae can be
V.Vasyukevich - Asynchronous logic elements 42
involved:
X ∧ Z X = ( X ∧ ( X ∨ X ∠ Y )) = X ∠ Y , (2-12.1)
X ∧ Z Y = ( X ∧ ( X ∧ Y ∨ X ∠ Y )) = X ∠ Y . (2-12.2)
Double venjunctor
Double venjunctor (Figure 2.3-4) is presented by its logical circuit in Figure 2.8.
Logic scheme contains two bistable cells connected consecutively in such a manner that
outputs of the first cell are linked with the inputs of another cell. Input signals are applied
to both cells. On the circuit outputs, two inventors (NOT-elements) are placed.
According to the logical circuit, a dependence of output signal ZX from input signals
X and Y is represented by the following formula:
Z X = ( X ∧ ( X ∨ X ∠ Y )) ∨ (( X ∧ ( X ∨ X ∠ Y )) ∠ (Y ∧ (Y ∨ Y ∠ X ))) . (2-13)
Z X = ( X ∠ Y ) ∨ (( X ∠ Y ) ∠ (Y ∠ X )) . (2-14)
ZX ZY
NOT NOT
NAND NAND
NAND NAND
X Y
ZX = ( X ∠ Y ) = X ∠ Y . (2-15)
Z Y = (Y ∠ X ) = Y ∠ X . (2-16)
Thus, as to double venjunctor, its functional validity is certainly confirmed by the logical
circuit in Figure 2.8.
1) Y 2) Y
Z Z
1/1 1
1/1 J/J 1 J
0/1 0/1 0/1 1
X X
1/0 J/0 1/0 0
0/0 0/0 0 0
V.Vasyukevich - Asynchronous logic elements 44
X
X
Figure 2.9. Logical circuit of venjunction Z = X ∠ 1 .
1) Y 2) Y
Z Z
1/1 0/1 1/0 0/0 1 0/1 1/0 0/0
AND
the constant values X = 1 and Y = 1 . In these conditions the resulting “logical” scheme is
displayed in Figure 2.11.
Y
Z
1
X 1 J
or
Remark
Above mentioned examples are remarkable because of their clarity. It seems to be the
simplest way to demonstrate those not trivial possibilities that become available owing to
mathematics of venjunctive formulae.
2.5. Triggers
A trigger is assumed to be a common name for all kinds of binary devices (including flip-
flops, latches, bistable multivibrators, etc.) with two stable output states. Each state, being
set, remains stable until switching signal appears. Logical circuits for triggers of various
types are constructed on the basis of bistable cell.
SR flip-flop
The logic of trigger functioning is given in Table 2.7. Symbols S and R denote the
input signals. Output signal of the device is marked as Q. The S input is intended for
setting the trigger in its unity state, that means logical unity appearance at the Q output:
V.Vasyukevich - Asynchronous logic elements 46
Q = 1 . A similar unity signal at R input produces a switching of trigger into its zero state,
that is Q = 0 .
R
Q
1 0/1 1/0 0
1 F 1
0/1 F 1
S
1/0 0 1
0 0 0
The special feature of SR flip-flop is in its input regulation, due to that a coincidence
of signals S = 1 and R = 1 is not allowed. In other words, it is forbidden to perform unity
and zero setting actions simultaneously. This circumstance is symbolized by character “F”.
Taking into account Table 2.7, it is assuming that only permitted switchings are
considered, the function of SR flip-flop appears in the following venjunctive complete
form:
Q = (S ∠ R) ∨ ( R ∠ S ) ∨ ( S ∠ R) . (2-17)
Q = S ∧ R ∨ (S ∠ R) . (2-18)
Q = (( S ∨ R ) ∧ ( S ∨ R ∨ R ∠ S )) = R ∨ R ∠ S , (2-19)
that does not agree with the data in Table 2.7, because aside from allowed input values, a
forbidden binary combination [ S R ] = [11] is also able to perform zero setting Q = 0 . This
V.Vasyukevich - Asynchronous logic elements 47
Q = S ∧ R ∨ (R∠ S ) . (2-20)
Implementation
For SR flip-flop implementation two solutions at least are applicable.
1. Bistable cell based on NAND-elements (Figure 2.1), when inputs and outputs are
ZX = Q , ZY = Q .
2. Bistable cell based on NOR-elements (Figure 2.2), when inputs and outputs are
associated with trigger signals in accordance with the following equalities: X = S , Y = R ,
ZX = Q , ZY = Q .
Remark
In spite of the fact that SR flip-flop is based on an element of asynchronous logic, the
trigger itself can be considered as asynchronous device only conditionally. This is because
one of the input binary sets is forbidden, that does not perfectly match with principles of
asynchronous implementations. Although, on the other hand, exactly owing to the given
restriction, SR flip-flop can be named a trigger as such.
JK flip-flop 1)
One of the possible solutions for constructing an asynchronous trigger is that the SR
flip-flop functionality can be expanded at the expense of permission to use previously
forbidden input binary set [ S R ] = [11] . In other words, it is necessary to specify the values
marked “F” in Table 2.7 by replacing these marks with logical symbols 0 and 1. Thus, the
function of a trigger becomes completely determined, and not caused by restrictions
unacceptable for the asynchronous logic.
To ensure that updated SR flip-flop is transformed into JK flip-flop the following
changes in Table 2.7 are required. Switching S = 0 /1 on the background R = 1 should be
applied for Q = 1 setting, and switching R = 0 /1 on the background S = 1 for Q = 0
1)
In order to avoid misunderstanding, no need to associate character “J” in trigger abbreviation
with the sign of logical indeterminacy. When applied to JK flip-flop, “Jump” input is symbolized in
such a way.
V.Vasyukevich - Asynchronous logic elements 48
setting. Furthermore, S input should be replaced with J, and R input – with K. As a result,
the function displayed in Table 2.8, as well as the JK trigger, is formed.
K
Q
1 0/1 1/0 0
1 0 1
0/1 1 1
J
1/0 0 1
0 0 0
Q = (J ∠ K ) ∨ (K ∠ J ) ∨ ( J ∠ K ) ∨ ( J ∠ K ) , (2-21.1)
Q = J ∧ K ∨ (J ∠ K ) ∨ (J ∠ K ) . (2-21.2)
Q = (J ∧ K ∨ J ∠K ) ∨ (J ∧ K ∨ J ∠K ) ∠ (J ∧ K ∨ K ∠ J ) , (2-22)
Q = ( J ∧ Q) ∨ ( J ∧ Q) ∠ ( K ∧ Q) . (2-23)
From an asynchronous logic standpoint, the obtained function is not wholly correct,
V.Vasyukevich - Asynchronous logic elements 49
because there are input switchings with indefinite output after-effects. While J = 1 setting
at the time of K = 1 and Q = 0 takes place, the output signal changes because of the
Q = ( J ∠ Q) ∨ ( J ∠ Q) ∠ ( K ∠ Q) , (2-24)
where venjunctions J ∠ Q and K ∠ Q are involved for performing unity and zero state
settings respectively. Corresponding switchings remove the problem of hazards. Due to the
given updates a JK flip-flop is free from hazardous functional race.
Remark
Generally JK flip-flop is realized as a synchronous device with additional clock signal.
Therefore, it will be more correct to represent updated trigger as an asynchronous module
of JK trigger.
the clock signal identified by its value, and dynamic trigger responds to the switching of
the signal.
In static mode T flip-flop realizes the following function:
Q = T ∧ Q ∨ (T ∧ Q )∠ (T ∧ Q ) . (2-25)
For this function (as well as in the case of JK flip-flop), a race problem is characteristic.
Switching T = 0 /1 on the background Q = 0 produces output switching Q = 0 /1 , which
provokes race process prolonged up to the moment of T = 1/ 0 . At this time a stable output
state is formed, and its signal can be set to zero as well as to unity value. In the first event
after output setting Q = 1 invalid switching Q = 1/ 0 takes place. In other case trigger
maintains the unity state, and so performs its own toggle function.
In an effort to provide a valid functioning for the T flip-flop, race hazards must be
blocked, for example, by the clock pulse reduction. Combining mentioned above and other
schematic and technical methods, it is possible to avoid the hazardous switchings Q = 0 /1
and Q = 1/ 0 on the background T = 1 completely. The logic of static toggle trigger
functioning is presented in Table 2.9.
Q
Q
1 0/1 1/0 0
1 F F
0/1 0 1
T
1/0 1 0
0 1 0
Q = T ∠ Q ∨ (T ∠ Q )∠ (T ∠ Q ) . (2-26)
Obtained toggle trigger is dynamical because of its output settings, that are
performed not during the time of unity signal T = 1 , but at the moment of switching
T = 0 /1 . All possible input switchings therewith are allowed and each of them causes a
valid hazard-free transition to the next state. These states are presented by trigger output
values in Table 2.10.
Q
Q
1 0/1 1/0 0
1 1 0
0/1 0 1
T
1/0 1 0
0 1 0
Remark
Dynamic toggle trigger is able to function without any restrictions in relation to input
signals, and therefore dynamic T flip-flop belongs to asynchronous logic.
Clocked D-latch
In analogy with a toggle trigger, clocked D-latches are also subdivided into two
types. Static and dynamic triggers differ from one another by their functional possibilities.
Corresponding Tables 2.11 clearly demonstrate how mentioned differences are presented
on the outputs of compared types of triggers.
D-latch is clocked by T signal. Symbol J’ with apostrophe characterizes so called
conditional (partial) indeterminacy, when a signal is not certainly defined, because it
depends on another signal or on the previous value of the same signal. Partial
independency is secondary in relation to unconditional independency marked J. In this
V.Vasyukevich - Asynchronous logic elements 52
case, updated symbol denotes, that a previous output signal is repeated, previous value is
stored according to pseudoswitchings Q = 0 /0 or Q = 1/1 .
D D
Q Q
1 0/1 1/0 0 1 0/1 1/0 0
1 1 0 1 J’ J’
0/1 1 0 0/1 1 0
T T
1/0 1 0 1/0 J’ J’
0 J’ J’ 0 J’ J’
Analytically, functions of static and dynamic triggers are expressed by the following
formulae:
Q = T ∧ D ∨ (T ∧ D )∠ (T ∧ D ) , (2-27.1)
Q = T ∠ D ∨ ((T ∠ D )∠ (T ∠ D )) . (2-27.2)
Static D-latch is able to change its output signal repeatedly during a clock period
when T = 1 . This circumstance produces independency as a factor of trigger behavior,
because it is not known, what a state will be set at the moment of clock signal reverse
switching T = 1/ 0 . To avoid confusion, it is usually recommended to shorten clock pulse.
However, even a short clock signal does not eliminate but only reduces the hazard of
trigger not proper functioning. To solve this problem completely, it is necessary to block
dangerous switchings D = 0 /1 and D = 1/ 0 on the background T = 1 , or to assign output
values for these switchings. The last solution is basically used for dynamic type triggers
constructing purposes.
Setting actions for dynamic D-latch are performed by venjunctions instead of
conjunctions related to static latch. As a result of this replacement, trigger becomes free
from invalid consequences caused by repeated switchings. Changes of output state are
V.Vasyukevich - Asynchronous logic elements 53
Z = X ∨ X ∠Y, (2-28.1)
Z =Y∨Y∠ X . (2-28.2)
These formal expressions define a trigger function. To identify this function it is necessary
to obey the following conditions:
X ∧ Y = 0 , ( X ≠ 0 , Y ≠ 0 ); (2-29.1)
X ≠Y, (2-29.2)
X ∠ Y ≠ 0, (2-29.3)
Y ∠ X ≠ 0. (2-29.4)
In the case when the conditional requirements are wholly satisfied, any function is
recognized as the trigger function, and a procedure of its realization by logical device of
trigger type becomes much easier.
Trigger function is controlled by subfunctions X and Y as well as by venjunctions
V.Vasyukevich - Asynchronous logic elements 54
Z ∧ Z = (( X ∨ X ∠ Y ) ∧ (Y ∨ Y ∠ X ) = X ∧ Y ) = 0 . (2-30)
Y ∠ X ≠ 0 . Corresponding venjunctions are not zero, and so each of them is able to keep
its own state. Conflicts between the states are expelled, because of zero conjunction:
( X ∠ Y ) ∧ (Y ∠ X ) = 0 .
Realization features
Trigger function is performed by realizing the corresponding operations at the outputs ZX
and ZY, logical unity values of which are set by signals X and Y respectively. Obeying the
rule:
V.Vasyukevich - Asynchronous logic elements 55
ZX ∧ ZY = Z ∧ Z = 0 , (2-31)
Φ= X ∧ Y , (2-32)
Φ = S∧ R∨ S ∧ R , (2-33)
according to which and taking into account the locked binary set [ S R ] ≠ [11] , output state
is stored during the time of [ S R ] = [0 0] . As for static D latch, its memory is maintained by
zero value of clock signal, as follows:
Φ = (T ∧ D ) ∧ (T ∧ D ) = T . (2-34)
Memory formula is related with trigger function by means of the rule: if Φ = 0 /1 , then
Z = 1/1 or Z = 0 /0 .
Note
Initially, trigger function was considered to be an analytical representation for trigger type
devices. However along with this, trigger function possesses fundamental opportunity to
represent wide variety of venjunctive expressions on the basis of this specific form. In
particular, it can be used as an off-beat template for generating various logical devices. As
well trigger function can represent sequential devices with memory that could not be
displayed using venjunctive complete form.
Triggered lambda-function
Introduced above (p. 1.6) auxiliary variable λ (lambda) is controlled by switchings
x = 0/1 on the background y = 1 and y = 0/1 on the background x = 1 . In the context of
trigger functions these switchings serve as a basis for defining setting subfunctions by the
following venjunctions: X = x ∠ y and Y = y ∠ x . Availability of settings permits to
characterize the logic of lambda-variable behavior by means of trigger type function:
Z = x∠ y ∨ ( x ∠ y ) ∠ ( y ∠ x ) . (2-35)
It is real trigger function because all required conditions are satisfied by the following
V.Vasyukevich - Asynchronous logic elements 57
expressions:
X ∧ Y = (( x ∠ y ) ∧ ( y ∠ x)) = 0 , (2-36.1)
( X = x ∠ y ) ≠ (Y = ( y ∠ x) = ( x ∨ y ∨ x ∠ y )) , (2-36.2)
Φ = (( x ∠ y ) ∧ ( y ∠ x) = ( x ∨ y ∨ y ∠ x) ∧ ( x ∨ y ∨ x ∠ y )) = x ∨ y . (2-37)
Y
Z
1 0/1 1/0 0
1 0 J’
0/1 1 J’
X
1/0 J’ J’
0 J’ J’
1
01 11
J’
J’ J’ 0 J’
J’
00 10
J’
Z Z
BC
DV
x y
B
С
1 0/1 1/0 0
1 1 1
0/1 1 0
A
1/0 1 0
0 0 0
Tabulated data are adequately converted into the following venjunctive forms:
C = A ∧ B ∨ ( A ∠ B ) ∨ ( B ∠ A) , (2-38.1)
C = A ∧ B ∨ ( A ∠ B ) ∨ ( B ∠ A) . (2-38.2)
V.Vasyukevich - Asynchronous logic elements 59
Output unity value is set by the binary combination [ A B ] = [11] , and zero value – by
[ A B ] = [0 0] . Other switchings ensure a storage mode for output states.
X ∧ Y = (( A ∧ B ) ∧ ( A ∧ B )) = 0 , (2-39.1)
( X = A ∧ B ) ≠ (Y = ( A ∧ B ) = A ∨ B )) , (2-39.2)
C = A ∧ B ∨ ( A ∧ B) ∠ ( A ∧ B) . (2-40)
Memory formula combines input signals by means of XOR operation in accordance with
the expression:
Φ = ( X ∧ Y = A ∧ B ∨ A ∧ B) = A ⊕ B . (2-41)
Z = ( x ∨ x ∠ y) ∨ ( x ∨ x ∠ y ) ∠ ( y ∨ y ∠ x ) , (2-42.1)
Z = ( y ∨ y ∠ x) ∨ ( y ∨ y ∠ x ) ∠ ( x ∨ x ∠ y ) . (2-42.2)
X = ( x ∨ x ∠ y) , (2-43.1)
V.Vasyukevich - Asynchronous logic elements 60
Y = ( y ∨ y ∠ x) . (2-43.2)
The logic of functioning is presented by the corresponding truth table and switching graph
(Table 2.14, Figure 2.15).
Z Z
BC
X Y
BC
x y
y
Z
1 0/1 1/0 0
1 1 1
0/1 0 1
x
1/0 0 1
0 0 0
0
01 11
0
0 0 1 1
1
00 10
1
X ∧ Y = (( x ∨ x ∠ y ) ∧ ( y ∨ y ∠ x) = ( x ∧ y ∨ y ∠ x) ∧ ( y ∧ x ∨ x ∠ y )) = 0 , (2-44.1)
( X = x ∨ x ∠ y = x ∧ y ∨ y ∠ x) ≠ (Y = y ∨ y ∠ x) , (2-44.2)
Φ= x ∧ y . (2-45)
Remark
As presented in Table 2.14, the logic of doubled cell functioning copies the similar logic of
C-element with an accuracy to the input associations: A = x , B = y .
Example 1.
Trigger, output settings of which are caused by signal switchings formed on the basis of
venjunctions of initial variables.
Unity setting: X = x ∠ y .
Zero setting: Y = y ∠ x .
Function: Z = x ∠ y ∨ ( x ∠ y ) ∠ ( y ∠ x ) .
Memory formula: Φ = ( x ∨ x ∠ y ) ∨ ( x ∨ y ∠ x ) = x ∧ y ∨ x ∧ y ∨ x ∠ y ∨ y ∠ x .
Tabulated switchings:
V.Vasyukevich - Asynchronous logic elements 62
Table 2.15.
y
Z
1 0/1 1/0 0
1 J’ J’
0/1 1 J’
x
1/0 J’ J’
0 J’ 0
Example 2.
Trigger with two pairs of mirror venjunctions intended for setting actions.
Unity setting: X = ( x ∠ y ) ∨ ( x ∠ y ) .
Zero setting: Y = ( y ∠ x) ∨ ( y ∠ x ) .
Function: Z = ( x ∠ y ∨ x ∠ y ) ∨ ( x ∠ y ∨ x ∠ y ) ∠ ( y ∠ x ∨ y ∠ x ) .
Memory formula: Φ = x ∧ y ∨ x ∧ y = x ⊕ y .
Tabulated switchings:
Table 2.16.
y
Z
1 0/1 1/0 0
1 0 J’
0/1 1 J’
x
1/0 J’ 1
0 J’ 0
Example 3.
Trigger with settings caused by three pairs of mirror venjunctions.
Unity setting: X = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x ) .
Zero setting: Y = ( y ∠ x) ∨ ( y ∠ x ) ∨ ( x ∠ y ) .
Function: Z = ( x ∠ y ∨ x ∠ y ∨ y ∠ x ) ∨ ( x ∠ y ∨ x ∠ y ∨ y ∠ x ) ∠ ( y ∠ x ∨ y ∠ x ∨ x ∠ y ) .
Memory formula: Φ = x ∧ y .
V.Vasyukevich - Asynchronous logic elements 63
Tabulated switchings:
Table 2.17.
y
Z
1 0/1 1/0 0
1 0 J’
0/1 1 J’
x
1/0 0 1
0 1 0
Example 4.
Trigger with two venjunctions intended for memory state.
Unity setting: X = x ∠ y ∨ y ∠ x ∨ y ∠ x .
Zero setting: Y = y ∠ x ∨ x ∠ y ∨ y ∠ x .
Function: Z = ( x ∠ y ∨ y ∠ x ∨ y ∠ x ) ∨ ( x ∠ y ∨ y ∠ x ∨ y ∠ x ) ∠ ( y ∠ x ∨ x ∠ y ∨ y ∠ x) .
Memory formula: Φ = ( x ∠ y ) ∨ ( x ∠ y ) .
Tabulated switchings:
Table 2.18.
y
Z
1 0/1 1/0 0
1 0 0
0/1 J’ 1
x
1/0 0 J’
0 1 1
Example 5.
Trigger with three venjunctions intended for memory.
Unity setting: X = x ∠ y ∨ x ∠ y .
Zero setting: Y = y ∠ x ∨ x ∠ y ∨ y ∠ x .
Function: Z = ( x ∠ y ∨ x ∠ y ) ∨ ( x ∠ y ∨ x ∠ y ) ∠ ( y ∠ x ∨ x ∠ y ∨ y ∠ x) .
V.Vasyukevich - Asynchronous logic elements 64
Memory formula: Φ = ( x ∠ y ) ∨ ( y ∠ x ) ∨ ( y ∠ x ) .
Tabulated switchings:
Table 2.19.
y
Z
1 0/1 1/0 0
1 0 0
0/1 1 1
x
1/0 0 1
0 1 0
Example 6.
Trigger with four venjunctions intended for memory.
Unity setting: X = x ∠ y ∨ x ∠ y .
Zero setting: Y = y ∠ x ∨ y ∠ x .
Function: Z = ( x ∠ y ∨ x ∠ y ) ∨ ( x ∠ y ∨ x ∠ y ) ∠ ( y ∠ x ∨ y ∠ x) .
Memory formula: Φ = ( x ∠ y ) ∨ ( x ∠ y ) ∨ ( y ∠ x) ∨ ( y ∠ x ) .
Tabulated switchings:
Table 2.20.
y
Z
1 0/1 1/0 0
1 J’ 0
0/1 1 J’
x
1/0 J’ 1
0 0 J’
Note
Due to venjunction applicability for constructing sequential trigger-type devices, the set of
basic asynchronous elements and devices can be essentially expanded and varied. Area of
V.Vasyukevich - Asynchronous logic elements 65
the expansion is limited, because of the limits of venjunctive complete form itself. Any
compact logical expression uses not more than four venjunctions (p. 1.8). Therefore two-
input triggers, their setting functions, and memory formulae are restricted by four
components.
М-zone
(Φ = 1)
1-zone 0-zone
( X = 1) (Y = 1)
1-zone is intended for logical unity settings. It unites all input signals (binary sets and
their sequences) required for output unity value setting. Within this zone, setting signals of
X subfunction are active. While and because signal X = 1 acts, trigger device holds the
unity state Q = 1 .
0-zone is intended for logical zero settings. It unites all input signals (binary sets and
their sequences) required for output zero value setting. Within this zone, setting signals of
Y subfunction are active. While and because signal Y =1 acts, trigger device holds the zero
state Q = 0 .
M-zone is intended for storing the output state that has been set previously. It unites
all input signals (binary sets and their sequences) required for keeping output state in its
V.Vasyukevich - Asynchronous logic elements 66
unity or zero value. Within this zone, memory formula is active. While and because signal
Φ =1 acts, trigger device holds the constant output value, invariability of which is
maintained due to pseudoswitchings Q = 1/1 and Q = 0 / 0 .
All three zones are connected together by transition channels. Transition from 0-zone
into 1-zone is initiated by switching X = 0 /1 on the background Φ = 0 , and is
accompanied by zeroing Y = 1/ 0 and setting Q = 0 /1 . Reverse transition from 1-zone into
0-zone is initiated by switching Y = 0 /1 on the background Φ = 0 , and is accompanied by
zeroing X = 1/ 0 with the setting Q = 1/ 0 .
Transition from 1-zone into M-zone is initiated by switching X = 1/ 0 on the
background Y = 0 , and is accompanied by switching Φ = 0 /1 and keeping Q = 1/1 .
Transition from 0-zone into M-zone is initiated by switching Y = 1/ 0 on the background
X = 0 , and is accompanied by switching Φ = 0 /1 and keeping Q = 0 / 0 .
Transition from M-zone into 1-zone is initiated by switching X = 0 /1 on the
background Y = 0 , and is accompanied by zeroing Φ = 1/ 0 and setting Q = 1 . Transition
from M-zone into 0-zone is initiated by switching Y = 0 /1 on the background X = 0 , and
is accompanied by zeroing Φ = 1/ 0 and setting Q = 0 .
There are transitions, which do not presume moving to other zone. They are called
intrazone (as contrast with interzone) transitions. Intrazone transitions are caused by signal
actions, that occurred inside of zone and do not initiate exit from it. As a result, zone model
retains its state. Switching function, subfunctions X and Y, and memory formula keep their
states.
In accordance with the represented model, every switching of any input signal
activates one of transitions, thus initiating the movement inside or outside the
corresponding zone. Transition from one zone to another zone is performed without
participation of the third zone, which holds zero state. Every transition process is
completed by stable state setting.
Depending on the modeled function, some switchings can prove to be not realized.
For this reason it is possible that some transitions, as well as their channels, “disappear”.
This circumstance is reflected in the objects of asynchronous logic. In the specific zone
configurations only real (active) transitions are displayed.
In Tables 2.21 typical zone models are presented. These models are constructed on
the basis of the above mentioned trigger functions (Examples 1 – 6, p. 2.8), which are used
V.Vasyukevich - Asynchronous logic elements 67
1) Example 1. 2) Example 2.
1-zone 1-zone
0-zone 0-zone
M-zone M-zone
3) Example 3. 4) Example 4.
1-zone 1-zone
0-zone 0-zone
M-zone M-zone
5) Example 5. 6) Example 6.
1-zone 1-zone
0-zone 0-zone
M-zone M-zone
Transition tables are structured as follows. Columns and rows are headed by 1-zone,
0-zone and M-zone. For definiteness sake, transitions are directed from vertically located
zones to horizontally located zones that are shown by arrows. Really acted transitions are
marked by tick sign “”.
As judged from data of Table 2.21-1 and Table 2.21-2, there are no transitions
between setting zones (1-zone and 0-zone) because necessary switchings cannot be
realized. Furthermore, setting zones are devoid of intrazone transitions. Aside from the
V.Vasyukevich - Asynchronous logic elements 68
source function (Example 1, p. 2.8), zone model presented in Table 2.21-1 is also
characteristic of dynamic D-latch (p. 2.5) and lambda-trigger (p. 2.7).
According to Table 2.21-2, only four interzone transitions can be used. They connect
both of the setting zones with the memory zone. Aside from the source function
(Example 2, p. 2.8), the corresponding zone model is also characteristic of SR flip-flop
(p. 2.5) and C-element (p. 2.7).
Zone models presented in Table 2.21-3 and Table 2.21-4 are equally configured
without transitions inside of the memory zone. Such a model is characteristic of the
doubled bistable cell (p. 2.7).
In zone model presented in Table 2.21-5, transition within the setting 1-zone is
absent. Zone model in Table 2.21-6 does not use intrazone transitions of the setting zones.
Analogous configuration is characteristic of static D-latch (p. 2.5).
Modeled trigger devises are able to function under conditions when the number of
transitions is restricted. According to the trigger function definition (p. 2.6), the following
transitions must be obligatory used:
– both of transitions from setting zones into the memory zone;
– at least one transition into setting 1-zone as well as into 0-zone.
Four transitions is a minimal number of interzone transitions for any model of trigger
function. Corresponding basic configurations are presented in Figure 2.17. Basic models
do not contain optional intrazone transitions.
М М М
1 0 1 0 1 0
Basic model (1) exactly conforms to transitions that are shown in Table 2.21-2. As
for Table 2.21-1, its data differs from the basic model (1) by one intrazone transition. In
other exemplary transition tables, in contrast to four basic transitions, all six of them are
used. Similar configuration is formed as a result of merging the basic models (2) and (3),
V.Vasyukevich - Asynchronous logic elements 69
that means (2 plus 3). Compositions, which combine basic model (1) with model (2) as
well as with model (3) contain five interzone transitions.
Zone configurations conformed to basic model (1), as well as compositions formed
by merging basic models (2) and (3), are symmetric from the memory zone standpoint.
This symmetry is adequately revealed in Tables 2.21. Interzone transitions are located
symmetrically about the diagonal that crosses squares assigned for intrazone transitions.
Other models are considered to be asymmetrical. Basic models (2) and (3), as well as zone
compositions (1 plus 2) and (1 plus 3), produce asymmetric forms of zone models.
Function: Z = ( x ∧ y ∨ x ∠ y ∨ y ∠ x) ∨ ( x ∧ y ∨ x ∠ y ∨ y ∠ x) ∠ ( x ∠ y ∨ y ∠ x ) .
Memory formula: Φ = x ∧ y .
Tabulated switchings:
Table 2.22.
y
Z
1 0/1 1/0 0
1 1 1
0/1 1 0
x
1/0 1 J’
0 0 J’
Zone model:
Table 2.23.
1-zone
0-zone
M-zone
V.Vasyukevich - Asynchronous logic elements 70
Graph of switchings:
M-zone
00
10
1-zone 01 01
10
11 0-zone
Note
Transitions may come into conflict with each other because of signals race. Conflict is
considered to be hazardous, if it happens between transitions from 1-zone (0-zone) into
memory zone on the one hand, and into 0-zone (1-zone) on the other hand. Valid transition
into M-zone holds the previous output state. Otherwise, invalid transition into setting zone
changes output signal to opposite value. To avoid such a situation it is necessary to forbid
hazardous switchings. Other way – to give preference to conflict-free zone models: basic
model (1) in Figure 2.17, exemplifying models (examples 1 and 2) in Tables 2.21. As a
result the conflict condition proves to be closed a priori, because one of the conflicting
switchings loses its own transition.
Positive feedback
When positive feedback is activated its output signal is identified by the binary
dependency Q = ϕ (..., Q) , in consequence of which the following logical options are
presumed.
Q ⇔ 1∠1 , (2-46)
( x ∧ Q ) ⇔ (1 ∠ x) . (2-47)
The feature of equivalency remains valid after the logical negation is applied as follows:
( x ∧ Q ) = ( x ∨ Q ) ⇔ (1 ∠ x) = ( x ∨ x ∠ 1) . (2-48)
V.Vasyukevich - Asynchronous logic elements 72
( x ∨ Q ) ⇔ ( x ∨ x ∠ 1) , (2-49.1)
( x ∧ Q ) ⇔ (1 ∠ x ) . (2-49.2)
( x ∠ Q) ⇔ ( x ∧ Q) , (2-50.1)
( x ∨ Q ∨ Q ∠ x) ⇔ ( x ∨ Q) . (2-50.2)
(Q ∠ x) ⇔ ( x ∧ Q ) . (2-51.1)
( x ∨ Q ∨ x ∠ Q) ⇔ ( x ∨ Q) . (2-51.2)
V.Vasyukevich - Asynchronous logic elements 73
( x ∨ y ∧ Q) ⇔ ( x ∨ x ∠ y ) , (2-52.1)
( x ∧ ( y ∨ Q )) ⇔ ( x ∧ ( y ∨ y ∠ x )) . (2-52.1)
( x ∨ y ∠ Q) ⇔ ( x ∨ ( y ∠ x) ∠ y ) . (2-53.1)
( x ∨ Q ∠ y) ⇔ ( x ∨ ( x ∠ y) ∠ y) ; (2-54.1)
Negative feedback
When negative feedback is activated its output signal is identified by the binary
V.Vasyukevich - Asynchronous logic elements 74
Signal x = 1 transforms the function into equality Q = Q that is characteristic of the closed
negative feedback. Output signal Q is found to be in logically unstable condition because
the switching 0/1 permanently alternates with the switching 1/0. In accordance with zone
model, the function circulates between 0-zone and 1-zone so that the corresponding
transitions are permanently active. This operating mode is related to oscillation that is
considered to be unproductive within the framework of asynchronous logic. The output
state is not stable, reversible signal does not fix its own value in the form of logical 1 or 0.
Alternated switchings Q = 0 /1 and Q =1/ 0 of the feedback can be used for
interrupting the process of oscillation, and in this way for performing the required output
value setting. The given feedback is provided by its zero setting, and therefore it is
necessary to maintain the unity setting. Otherwise the function remains not completely
defined, and will be considered as not full-fledged. Oscillating process needs to be
interrupted at the time when signal Q = 1 acts. For this purpose the switching Q = 0 /1 on
the background x = 1 is suitable, for example, in the following form:
Q = x ∧ Q ∨ (Q ∠ x) . (2-55)
Additional venjunction by its own signal Q ∠ x = 1 stimulates the output setting at logical
unity value, which remains constant until the moment of the switching x = 1/ 0 . However
in this case, the required output setting is not ensured, because the simultaneously occurred
switching ( x ∧ Q ) = 1/ 0 causes the undesirable race hazards. Preferable way to avoid the
risk of invalid operation is provided by trigger functions. The problem can be solved by
means of the following expressions:
Q = x ∧ (Q ∨ Q ∠ x) , (2-56.1)
V.Vasyukevich - Asynchronous logic elements 75
Q = ( x ∨ x ∠ Q) , (2-56.2)
Q = ( x ∧ Q) ∨ ( x ∧ Q) ∠ x , (2-56.3)
produces the switching ( x ∠ Q ) = 1/ 0 , owing to which the output signal returns to the initial
zero state. So, the feedback instead of stable unity value generates a short-time pulse,
which is causes by the switching x = 0 /1 on the background Q = 0 . In other words, the
feedback generates imperfect function. In order for output setting to be really performed, a
short-time pulse should be kept.
To retain setting – means to prolong short pulse, and in this way do not allow the
function to be reduced to zero at the moment of switching ( x ∠ Q ) =1/ 0 . This operation is
performed by entering the venjunctive component, due to which the feedback is expressed
in a trigger-like form:
Q = x ∠ Q ∨ ( x ∠ Q) ∠ x . (2-57)
V.Vasyukevich - Asynchronous logic elements 76
3. SEQUENTION
Initially defined that sequention is a sequence of Boolean variables. At the same time,
sequention may be considered as an ordered set as well as a function of this set.
〈 x〉 = 〈 x1 x2 ... x n 〉 , (3-1)
element x1 occupies the first position, x2 – the second, and so on until x n . Number n
assigns a length of ordered sequence (number of elements), and therefore n-positioned
sequention is specified as n-sequention.
The set {x1 x2 ... x n } does not contain similar, equal one to another elements. In other
x j ∈〈 x〉 , where (i, j)∈{1, 2,...n} . It is meant (if is not especially conditioned) that x i ≠ x j .
But if equality of elements is allowed, the corresponding indexes are also equal, that is
i = j . Otherwise initially assumed principle of uniqueness of elements is violated.
Order of elements in sequention is conditioned by rules, which are intended for
regulating placement of elements in common sequence. These rules define relations of
elements with each other by means of priority sign ≺ or ≻ . Every pair of elements is
linked by binary relation x i ≺ x j , according to which element x i leads, and is ahead of x j
If element xi is ahead of x j , the same element is also ahead of x j+1 , and the previous
element xi -1 is ahead of x j .
Consequence
The given binary relations are generalized by the following statement. If all adjacent
elements are connected by the binary relation xi ≺ xi +1 , where i ∈{1, 2,...n-1} , the
binary sequences. In the framework of this set, sequention is defined as a binary function
with arguments, which are represented in the manner of sequences of binary elements-
variables. There is the following dependence:
〈 x〉 = ϕ (〈 x1 x2 ... xn 〉 ) . (3-4)
V.Vasyukevich - Asynchronous logic elements 78
All possible states of the function are 〈 x〉 =1 and 〈 x〉 = 0 . Sequention takes the value
that depends on the values of variables, as well as, on the order how these values appear.
Functional features of sequention are determined on the following grounds.
Sequention is able to take a unity value on condition that all its variables are also
unity: x1 = 1 , x2 = 1 , and so on until x n = 1 . This statement can be expressed by means of
∧ x = ( x ∧ x ∧ ... x ) =1.
i=1
i 1 2 n (3-5)
The equation represents a necessary condition for sequention to be set at logic 1. However,
it is not sufficient to have unity values of all variables for obtaining 〈 x〉 =1 . Corresponding
binary set needs to be ordered in time taking into account priorities of elements in a
sequence 〈 x1 x2 ... x n 〉 . Concretely, logical unity setting x1 = 1 needs to be ahead in time of
Binary sequences of logical unities and zeros ordered in accordance with a format
〈 x1 x2 ... xn 〉 represent the domain of sequention definition. In this connection it is correct
ϕ (〈 x1 x2 ... x n 〉 ) =1 . (3-6)
where x1 = J /1 , x2 = 0 /1 , x3 = 0 /1 , ... xn = 0 /1 .
From the obtained switching sequence follows that the setting x n = 0 /1 of the last
variable immediately causes the unity setting of the sequention as a whole, that is
〈 x〉 = 0 /1 .
When the ordered setting of unity values is not performed, sequention stays in zero
condition. Sequention uniquely takes a zero value, if at least one of variables is reduced to
zero.
Definition
Sequention is a function which takes 1 or 0 value depending on the values of binary
arguments-variables as well as on the switching order of these variables. It is assumed that
proposed binary operation of sequention is realized by a binary variable z as follows:
z = ϕ ( 〈 x〉 ) . (3-8)
In view of the above-mentioned principles of sequention functioning, let us define that the
corresponding logic obeys the following rules.
Switchings:
Note
In consequence of the given definition the following rules are true:
perceived as set members, and on the other hand they are binary variables – arguments of
the sequential function. Therefore, it could not be excluded that nonempty set 〈 x〉 ≠ ∅
generates functionally negligible sequention because of the permanent zero value
ϕ (〈 x〉 ) = 0 . Exactly such a situation is provoked by the equality xi = x j , a possibility of
Correct sequentions
Taking into account performed above analysis, and intending to construct functionally
valid sequentions it is necessary to introduce some restrictive measures. In this connection,
all sequences, which contain elements related with equality xi = x j should be excluded
from consideration. Any pair of elements ( xi , x j ) of the sequence 〈 x〉 should obey the
Two and more sequences form a simple composite sequention. For example, 〈 x y〉 is
a composite sequention, which consists of two sequences contained in elementary
sequentions 〈 x〉 and 〈 y〉 .
Complicated sequentions differ in that they contain elements, which themselves are
simple or complicated sequentions. For example, 〈〈 x〉 y〉 is a complicated two-component
sequention, which contains a simple sequention 〈 x〉 followed by elementary sequence of
the sequention 〈 y〉 . Expressions 〈 x 〈 y〉〉 and 〈〈 x〉 〈 y〉〉 represent two-component
sequentions as well.
Remark
Understanding of “element” in composite sequentions is interpreted specifically, that
means – more widely. It is implied that “component” is considered as a certain
complicated element. For example, from the sequention 〈〈 x〉 〈 y〉〉 standpoint, its
V.Vasyukevich - Asynchronous logic elements 82
components 〈 x〉 and 〈 y〉 are elements with all the consequences that follow from this
circumstance including the binary relation 〈 x〉 ≺ 〈 y〉 . In accordance with the concept
assumed, sequention 〈 x 〈 y〉〉 contains two equal in status elements; one of them is
presented in the form of sequention 〈 y〉 , and another in the form of initial elements –
Embedded sequentions
Components, sequences of elements, elements themselves including elements-
variables contained in the certain sequention; all of them are considered to be embedded in
this sequention. For example, the following complicated sequention:
Embedding layers
Embedding layers of sequentions are intended for ranking of components, which constitute
one or another composite sequention. Offered for these purposes structure is built as a tree-
type.
Layer 0. Zeroes layer is the layer assigned for function. It is occupied by entire sequention
with all its embeddings.
Layer 1. On the first layer, the following components are embedded into initial sequention:
V.Vasyukevich - Asynchronous logic elements 83
1 – complicated sequention 〈 x 〈 y z 〉〉 ;
Layer 2. On the second layer, the following components are embedded into complicated
sequentions of the first layer:
1.1 – initial elements x1 , x2 ,... x x of the sequention 〈 x〉 ;
Layer 3. On the third layer, the following components are embedded into sequentions of
the second layer:
1.2.1 – initial elements y1 , y2 ,... y y of the sequention 〈 y〉 ;
Layer 4. On the fourth layer, the following components are embedded into sequentions of
the third layer:
2.2.1.1 – initial elements v1 , v2 ,...v v of the sequention 〈 v〉 ;
( x ≺ y ) ≈ ( xL ≺ yF ) . (3-14)
x ≺ 〈 y〉 . Along with this, binary relations xL ≺ 〈 y〉 and xL ≺ yL are also available for
arranging components in the given order. In other words, valid arrangement of variables is
equally held by each of the presented binary relations. These relationships ensure required
order, and therefore are equivalent:
( x ≺ 〈 y〉 ) ≈ ( xL ≺ 〈 y〉 ) ≈ ( xL ≺ yL ) . (3-15)
(〈 x〉 ≺ y ) ≈ (〈 x〉 ≺ yF ) ≈ ( xL ≺ yF ) . (3-16)
relation of two sequentions in the form 〈 x〉 ≺ 〈 y〉 . Similarly ordered placement is also held
by the binary relation xL ≺ yL . The following equivalence takes place:
(〈 x〉 ≺ 〈 y〉 ) ≈ ( xL ≺ yL ) . (3-17)
( x ≺ y ) ≈ (〈 x 〉 ≺ y ) . (3-18)
〈 x y〉 = 〈〈 x〉 y〉 . (3-19)
Principle 2
Sequention 〈 x 〈 y〉〉 contains elements, which are ordered in accordance with a binary
relation xL ≺ yL . The same order is also set for another sequention 〈〈 x〉 〈 y〉〉 . Therefore,
binary relations between components of both sequentions are equivalent:
( x ≺ 〈 y 〉 ) ≈ (〈 x〉 ≺ 〈 y 〉 ) , (3-20)
V.Vasyukevich - Asynchronous logic elements 86
Principle 3
Transitivity principal presented in formulae intended for binary relations causes the
following assertion: “if xL ≺ yF , then xL ≺ yL because yF ≺ yL ”. In other words, binary
〈 x y〉 ⇒ 〈 x 〈 y〉〉 , (3-22.1)
〈 x y〉 ⇒ 〈〈 x〉 〈 y〉〉 , (3-22.2)
〈〈 x〉 y〉 ⇒ 〈 x 〈 y〉〉 , (3-22.3)
〈〈 x〉 y〉 ⇒ 〈〈 x〉 〈 y〉〉 . (3-22.4)
Note
Two-component sequentions can be considered as fragments (adjacent components) of
more complicated sequentions. From order relations of adjacent components,
corresponding relationships for entire sequention are formed. Therefore, above-obtained
results are available for any sequention regardless of its complexity. Common elements-
variables and similar orders are sufficient conditions for equality of compared sequentions.
Sequentions with common elements
Some elements of one sequention can be the same as elements contained in another
V.Vasyukevich - Asynchronous logic elements 87
relation causes ranked location of elements for another sequention: 〈 x y〉 . Therefore, the
following equality is valid:
〈〈 x 〉 〈 x y〉〉 = 〈 x y〉 . (3-23)
(u ≺ v) ≈ (〈 x y z u 〉 ≺ 〈 y u v〉 ) , (3-24)
〈〈 x y z u 〉 〈 y u v〉〉 = 〈 x y z u v〉 . (3-25)
Introduced earlier (p. 3.2) concept of functional perfection (imperfection) is directly related
to that sequention is binary-valued function. Thanks to unity value, function is able to
identify a certain series of variable switchings, and respond by zero value to all other
V.Vasyukevich - Asynchronous logic elements 88
switchings. When unity value is not ensured quite at all, sequention operating becomes
meaningless, and sequention itself proves to be functionally imperfect.
Definition
Sequention 〈 x〉 is considered to be functionally perfect only in the event that
equation ϕ (〈 x〉 ) =1 possesses solution. But if the possible values of function are restricted
by a set {0, J}, sequention is imperfect. Imperfection is expressed in that none of the binary
sequences is able to provide unity value for sequentional function. Sequention is
permanently zeroed or its value could not be determined in principle.
Examples of imperfect sequentions
A simplest case of imperfection is provoked by the component repetition, for example:
〈〈 x〉 〈 x〉〉 = J . (3-26)
〈〈 x y〉 〈 y〉〉 = J , (3-27.1)
〈〈 y 〉 〈 x y〉〉 = J . (3-27.2)
Here, indeterminacy of sequentions is caused by that functions are not able to become
unity because of irresistible obstacle expressed in the form of incorrect and therefore not
realizable binary relation y ≺ y .
Some sequentions are found to be imperfect because of another reason.. They are
absolutely unusable for receiving unity values, and constantly stay at zero. For example:
〈〈 x y 〉 〈 y x〉〉 = 0 . (3-28)
〈〈 y u z v〉 〈 x y z 〉〉 = 0 . (3-29)
Therefore any sequention with both components 〈...xi ...〉 and 〈...xi ...〉 is doomed to
functional imperfection as follows:
relations might be used. They are 〈... y...x〉 ≺ 〈...u...x〉 and 〈...u...x〉 ≺ 〈... y...x〉 . None of the
relationships is acceptable because of the identity x = x . . Combined sequentions are
inconsistent. Since zeroing criterions are not detected composite sequention “swoons” in
its indeterminate condition as follows:
Compatible sequentions
Let us assume that functional imperfection of sequention is caused by incompatibility of its
components. In this connection it should be considered that sequentions as embedded
components are incompatible, if there is no way available for forming functionally perfect
sequention by associating the corresponding elements. But if sequentions are compatible,
they do not provoke functional imperfection phenomenon and can be combined without
problem. The possibility exists of obtaining sequention with partly compatible
components, when functionality of composite sequention depends on sequencing of
combined components. It is obvious that sequentions without common elements-variables
are compatible by definition.
Stage 1. Divide the initial sequention 〈 x1 x2 ... xi xi+1 ... xn -1 xn 〉 into two
subsequentions 〈 x1 x2 ... xi 〉 and 〈 xi+1 ... xn -1 xn 〉 , where adjacent elements xi and xi+1 are
separated.
Stage 2. Add element xi to sequention 〈 xi+1 ... xn -1 xn 〉 , and doing so form sequention
〈 xi xi+1 ... xn -1 xn 〉 .
Resulting sequention is equal to initial one because both sequentions are characterized by
V.Vasyukevich - Asynchronous logic elements 92
the identical binary relations and the common set of elements as well.
Enumerated actions in essence fix the rule of sequention splitting. In this connection
it should be noted that on the second stage not only single element can be used as additive.
Other variants are also available, for example sequence 〈 xi-1 xi 〉 or 〈 x2 x3 ... xi 〉 . Set of
Otherwise, merged sequention loses binary relation xi ≺ xi+1 and therefore its function
could not coincide with the initial sequention.
It is significant that splitting rule is applicable to simple composite sequentions. For
this case two transformations are equally available. They are:
〈 x y〉 = 〈〈 x〉 〈 xL y〉〉 , (3-36.1)
〈 x y〉 = 〈〈 x yF 〉 〈 y〉〉 . (3-36.2)
Splicing
If it is possible to split sequention, naturally it can be spliced. Splicing rule is backward
directed procedure in contrast with splitting. As a result simple composite sequention is
obtained by joining two elementary sequentions with common elements.
For example, if sequentions 〈 x〉 and 〈 y〉 are compatible, and they share common
Splicing procedure could be performed on the basis of common sequences as well. For
example, in the case of common 〈 y〉 splicing is represented by the following
transformation:
〈〈 x y〉 〈 y z 〉〉 = 〈 x y z 〉 . (3-38)
〈 x y z 〉 ≠ 〈 y x z〉 . (3-39.1)
〈〈 x y〉 〈 z u 〉〉 ≠ 〈〈 z u 〉 〈 x y〉〉 . (3-39.2)
Associativity
Mainly, associativity is not inherent to sequention:
〈 x 〈 y z 〉〉 ≠ 〈〈 x y〉 z 〉 , (3-40.1)
〈 x y〉 ≠ 〈〈 x〉 〈 y〉〉 , (3-40.2)
〈 x y〉 ≠ 〈 x 〈 y〉〉 , (3-40.3)
〈〈 x〉 〈 y〉〉 ≠ 〈〈 x〉 y〉 , (3-40.4)
〈 x 〈 y〉〉 ≠ 〈〈 x〉 y〉 . (3-40.5)
〈 x y〉 = 〈〈 x〉 y〉 , (3-41.1)
〈〈 x〉 〈 y〉〉 = 〈 x 〈 y〉〉 . (3-41.2)
Distributivity
Distributivity is partly inherent to sequention. For example:
In other cases sequentions does not comply with distributivity because of inequalities:
〈〈 x y〉 〈 x z 〉〉 ≠ 〈 x 〈 y〉 〈 z 〉〉 , (3-43.1)
〈〈 x y〉 〈 y z 〉〉 ≠ 〈〈 x〉 y 〈 z 〉〉 , (3-43.2)
〈〈 x y〉 〈 z y〉〉 ≠ 〈〈 x〉 〈 z 〉 y〉 . (3-43.3)
The last inequality beside of uncoordinated binary relations is notable due to sequention
〈〈 x y〉 〈 z y〉〉 , which is imperfect because of its indeterminacy:
〈〈 x y〉 〈 z y〉〉 = J . (3-44)
Zeroing rule
If sequention 〈 x〉 is contained in sequention 〈 y〉 , that means 〈 x 〉 ⊂ 〈 y〉 , and inequality
〈〈 x z 〉 〈 x〉〉 = 0 , (3-45.1)
〈〈 x z 〉 x〉 = 0 , (3-45.2)
〈 x z 〈 x〉〉 = 0 . (3-45.3)
Absorption rule
If sequention 〈 x〉 is contained in sequention 〈 y〉 , that means 〈 x 〉 ⊂ 〈 y〉 , and inequality
〈〈 x〉 〈 x z 〉〉 = 〈 x z 〉 , (3-46.1)
〈 x 〈 x z 〉〉 = 〈 x z 〉 . (3-46.2)
Exception
Absorption rule is valid only if sequentions are functionally perfect. Otherwise expected
absorption reduces to zero as follows:
〈〈 x〉 x z 〉 = 0 , (3-47)
Splicing rule
If sequentions 〈 x〉 and 〈 y〉 = 〈u z 〉 are such that elements of sequence 〈 y〉 are partly
contained in 〈 x〉 owing to 〈u 〉 ⊂ 〈 x〉 , and equality uL = xL takes place, then the formed
〈〈 x〉 〈 y〉〉 = 〈〈 x〉 〈u z 〉〉 = 〈 x z 〉 . (3-48)
Splitting rule
Splitting is the reverse action of splicing. Therefore, if sequention 〈 x〉 is conditionally
presented in the form of three sequences 〈 y u z 〉 , and if subset of elements is chosen such
〈 x〉 = 〈 y u z 〉 = 〈〈 y u 〉 〈 v z 〉〉 . (3-49)
Postulates
1. Functionality of any sequention independent of its complexity is fully defined by
the binary relations of adjacent components presented in the form of relations between
initial elements of xF and xL type.
2. Logical unity setting (0/1) of sequention is immediately preceded by the same
setting of the last variable of the last component. Sequentional function switches at the
V.Vasyukevich - Asynchronous logic elements 96
〈 x1 x2 〉 = 〈〈 x1 〉 〈 x1 x2 〉〉 . (3-50)
Generally, different scenarios of decomposition can take place and therefore there are
several ways of solving the corresponding problem. Result to be expected is caused by the
set of split elements and depends on concrete elements, which are chosen for performing
splitting actions.
Non-systemized splitting
According to this method of decomposition, elements used for sequence splitting are
chosen without preassigned regulation. This selection is arbitrary, that means – non-
systemized. As an example, it is proposed to perform decomposition by splitting of seven-
element sequention:
〈 x1 x2 x3 x4 x5 x6 x7 〉 . (3-51)
subject to splitting, that is, split element. As a result two subsequentions are formed inside
of the entire sequention:
〈〈 x1 x2 x3 x4 〉 〈 x4 x5 x6 x7 〉〉 . (3-52)
Structure of the resulting expression in essence reflects staged order of the splitting
described above. Non-systemized splitting generates sequention in the form of complicated
composition with irregular placed embeddings.
Note
During decomposition the first element of sequention is not subject to splitting; it is
senseless because of the following equality:
〈〈 xF 〉 〈 x〉〉 = 〈 x〉 . (3-55)
… x3, x2 .
For further explanations let us return to the initially considered sequention
〈 x1 x2 x3 x4 x5 x6 x7 〉 . Decomposition procedure begins with splitting of element x6 . As a
result a complicated two-component sequention is formed:
〈〈 x1 x2 x3 x4 x5 x6 〉 〈 x6 x7 〉〉 . (3-56)
This sequention by means of the additional operation takes the following form:
〈 x1 x2 x3 x4 x5 x6 〈 x6 x7 〉〉 . (3-57)
The obtained sequention differs from the initial one because it contains minisequention
〈 x6 x7 〉 = 〈 x n -1 x n 〉 as separate embedding in contrast with other elements.
〈 x2 x3 〉 respectively. As a result of all these actions, initial elementary sequention takes the
required final form:
〈〈 x1 x2 〉 〈 x2 x3 〉 〈 x3 x4 〉 〈 x4 x5 〉 〈 x5 x6 〉 〈 x6 x7 〉〉 . (3-58)
This expression contains (n-1) = 6 minisequentions, which are regularly and equally
placed on the first layer of embeddings. Each minisequention includes adjacent elements of
the initial sequention.
Note
According to the given method of decomposition the final sequentions are structured so
that their representations can be generalized on the basis of the following formula:
Separation of elements
This method is based on the proved above (p. 3.4) equality 〈 x y〉 = 〈〈 x〉 y〉 , by means
of which the initial sequention takes the following form:
As it can be seen, due to the transformation the last element x n becomes separated from all
other elements of sequention. Thus, the first stage of decomposition is completed. Further
transformations are connected with systemized separations of elements x n -1 , x n -2 , and so
on until x2 . After performing all announced actions a multi-layer and regular structured
sequention is formed as follows:
( x j ∠ xi ) = 〈 xi x j 〉 . (3-63)
〈〈 x〉 〈 y〉〉 = 〈 y〉 ∠ 〈 x〉 , (3-64.1)
〈 x 〈 y〉〉 = 〈 y〉 ∠ 〈 x〉 . (3-64.2)
As to sequentions 〈 x y〉 and 〈〈 x〉 y〉 , similar equalities are also possible, but provided that
sequence 〈 y〉 consists of a single element. Then:
〈 x y1 〉 = y1 ∠ 〈 x〉 , (3-65.1)
〈〈 x〉 y1 〉 = y1 ∠ 〈 x〉 . (3-65.2)
In any other cases that sequention 〈 y〉 contains at least two elements ( | y | ≥ 2 ), analogous
transformations could not be obtained because of the following inequalities:
〈 x y 〉 ≠ 〈 y 〉 ∠ 〈 x〉 , (3-66.1)
〈〈 x〉 y〉 ≠ 〈 y〉 ∠ 〈 x〉 . (3-66.2)
Representative forms
Sequention has the following forms for its representation.
Conjunctive form
Judging by definition of sequention (p. 3.2), and taking into account decomposition by
splitting (p. 3.8), sequentional function is expressed via minisequentions, which are
connected by logical operation – conjunction. Thus, sequention 〈 x〉 is separated into its
forming components as follows:
V.Vasyukevich - Asynchronous logic elements 101
∧〈x x
i
i i+1 〉 , i ∈{1, 2,..., x n -1} . (3-68)
((〈 x1 x2 〉 ∧ 〈 x2 x3 〉 ) ∧ 〈 x3 x4 〉 ) ∧ (〈 x4 x5 〉 ∧ (〈 x5 x6 〉 ∧ 〈 x6 x7 〉 )) . (3-69)
Owing to the law of associativity, this conjunction is not regular, but it easy reduces to the
conjunctive form of systematic kind that is reasonably expected.
Note
It is obvious that minisequention and venjunction are two analytical forms of functionally
equivalent operations. Therefore, aside from conjunctive representations with the given
above formulae the following representative varieties are available as well:
∧ (x
i
i+1 ∠ xi ) , i ∈{1, 2,..., n-1} , (3-70)
Venjunctive form
According to developed above (p. 3.8) method of decomposition, procedure of
consequently performed separation of elements obeys the following rule:
〈〈 y〉 xi 〉 = xi ∠ 〈 y〉 , (3-73)
In the context of the representative form this rule should be modified as follows:
Thus, after required transformations initial sequention eventually takes the announced
venjunctive form:
Findings
1. Functional logic of any simple sequention can be presented in systemized
conjunctive form, in venjunctive form as well as in multi-version non-systemized
conjunctive form.
2. Owing to above-cited formulae, sequention appears in more accustomed form of
logical operations on binary variables.
3. Representative forms and conjunctive decomposition especially are such algebraic
expressions, which are able to lay the justified foundations for involving sequentions into
logical formulae as objects adapted to manipulations, which are characteristic of usual
Boolean expressions.
Algorithm I
Algorithm is based on the conjunctive decomposition of sequention (p. 3.9).
Step 1: x1 = 〈 x1 〉 ;
V.Vasyukevich - Asynchronous logic elements 103
step 2: x2 ∠ 〈 x1 〉 = 〈 x1 x2 〉 ;
step 3: 〈 x1 x2 〉 ∧ 〈 x2 x3 〉 = 〈 x1 x2 x3 〉 ;
step 4: 〈 x1 x2 x3 〉 ∧ 〈 x3 x4 〉 = 〈 x1 x2 x3 x4 〉 ;
....... ...............................
step N: 〈 x1 x2 x3 x4 ... xn -1 〉 ∧ 〈 xn -1 xn 〉 = 〈 x1 x2 x3 x4 ... xn -1 xn 〉 .
Algorithm II
This algorithm is mirror with reference to the previous algorithm I.
Step 1: 〈 xn 〉 = xn ;
step 2: xn ∠ 〈 xn -1 〉 = 〈 xn -1 xn 〉 ;
step 3: 〈 xn -2 xn -1 〉 ∧ 〈 xn -1 xn 〉 = 〈 xn -2 xn -1 xn 〉 ;
step 4: 〈 xn -3 xn -2 〉 ∧ 〈 xn -2 xn -1 xn 〉 = 〈 xn -3 xn -2 xn -1 xn 〉 ;
....... .....................................
step N: 〈 x1 x2 〉 ∧ 〈 x2 ... xn -3 xn -2 xn -1 xn 〉 = 〈 x1 x2 ... xn -3 xn -2 xn -1 xn 〉 .
Algorithm III
Algorithm is based on the venjunctive form of decomposed separation of elements (p. 3.9).
Step 1: x1 = 〈 x1 〉 ;
step 2: x2 ∠ 〈 x1 〉 = 〈〈 x1 〉 x2 〉 = 〈 x1 x2 〉 ;
step 3: x3 ∠ 〈 x1 x2 〉 = 〈〈 x1 x2 〉 x3 〉 = 〈 x1 x2 x3 〉 ;
step 4: x4 ∠ 〈 x1 x2 x3 〉 = 〈〈 x1 x2 x3 〉 x4 〉 = 〈 x1 x2 x3 x4 〉 ;
....... ........................................
step N: xn ∠ 〈 x1 x2 x3 ... xn -1 〉 = 〈〈 x1 x2 x3 ... xn -1 〉 xn 〉 = 〈 x1 x2 x3 ... xn -1 xn 〉 .
Note
Only systemized representative forms fit for producing step by step procedures, which
cause an increase in size of sequentions.
3.11. Sequentor
Above mentioned algorithms serve as a basis for construction of sequentor – logical device
of special kind assigned for realization of sequentional function. Sequentor is considered as
a basic element for various circuits designed in the frameworks of asynchronous sequential
V.Vasyukevich - Asynchronous logic elements 104
logic.
Implementation of algorithm I is performed by means of the logical circuit presented
in Figure 3.1. This circuit contains conjunctors (AND) and venjunctors V1, V2, V3,… Vn-2,
Vn-1. Outputs of venjunctors are connected with inputs of conjunctors. External input x1 is
connected with a passive input of venjunctor V1, and input xn – with an active input of
venjunctor Vn-1. All remaining inputs are furcated so that each of them is attached to active
and passive inputs of neighboring venjunctors.
s1 s2 s3 sn-2 sn-1
V1 V2 V3 Vn-2 Vn-1
...
x1 x2 x3 x4 xn-1 xn
the algorithm. By means of these outputs sequentional functions of two, three… (n-1) and
(n) variables are realized as follows:
s1 = 〈 x1 x2 〉 , (3-76.1)
s2 = 〈 x1 x2 x3 〉 , (3-76.2)
s3 = 〈 x1 x2 x3 x4 〉 , (3-76.3)
...............
sn -2 = 〈 x1 x2 x3 x4 ... xn -1 〉 , (3-76.4)
sn -1 = 〈 x1 x2 x3 x4 ... xn -1 xn 〉 . (3-76.5)
V.Vasyukevich - Asynchronous logic elements 105
Other variant of sequentor is represented in Figure 3.2. Here algorithm II (p. 3.10) is
chosen as a basis for construction of logical circuit. Structurally this circuit looks like the
previous one (Figure 3.1): output elements are conjunctors, whose inputs are connected
with venjunctors. However in the case considered, sequentor resolves the problem
differently as compared with algorithm I.
s1 s2 s3 sn-2 sn-1
V1 V2 V3 Vn-2 Vn-1
...
xn xn-1 xn-2 xn-3 x2 x1
s1 = 〈 xn -1 xn 〉 , (3-77.1)
s2 = 〈 xn -2 xn -1 xn 〉 , (3-77.2)
s3 = 〈 xn -3 xn -2 xn -1 xn 〉 , (3-77.3)
..................
sn -2 = 〈 x2 ..xn -3 xn -2 xn -1 xn 〉 , (3-77.4)
sn -1 = 〈 x1 x2 ..xn -3 xn -2 xn -1 xn 〉 . (3-77.5)
The third implementation of sequentor corresponds to algorithm III (p. 3.10). Logical
circuit is represented in Figure 3.3. It contains venjunctors and no conjunctors in contrast
with the previous circuits (Figure 3.1, 3.2). Venjunctors are connected consecutively
(cascade like) so that output of each logical element except Vn-1 is attached to the passive
V.Vasyukevich - Asynchronous logic elements 106
input of the next element. Passive input x1 of venjunctor V1, аs well as active inputs of
venjunctors V1, V2, V3… Vn-2, Vn-1, are external inputs of the sequentor. Functions, which
are realized on the outputs of the circuit, coincide with the analogous output functions of
the device in Figure 3.1.
s1 s2 s3 sn-2 sn-1
x1 x2 x3 x4 xn-1 xn
〈 x〉 ∧ 〈 x〉 = 0 . (3-78.1)
〈 x〉 ∧ 〈 x 〉 = 〈 x〉 , (3-78.2)
Action of disjunction does not distinct from analogous operations with Boolean variables,
and therefore obeys the following equalities:
〈 x〉 ∨ 〈 x 〉 = 〈 x〉 , (3-79.1)
〈 x〉 ∨ 〈 x 〉 = 1 . (3-79.2)
〈 xi x j 〉 = 〈 xi 〉 ∨ 〈 y j 〉 ∨ 〈 x j xi 〉 , (3-80)
which in essence copies the corresponding formula assigned earlier (p. 1.10) for inverse
venjunction.
Taking into account all required operations, logically negated sequention is found as
a result of the following transformations:
Inverse sequention obeys the rule expressed in the compact form as follows:
〈 x〉 = ∨ (x ) ∨ 〈 x x
i
i
j
j j-1 〉 , i ∈{1, 2,..., n} , j∈{2,..., n} . (3-82)
〈 x1 x2 〉 ∨ 〈 x2 x1 〉 = x1 ∧ x2 . (3-83)
〈 x y〉 ∧ 〈〈 x〉 〈 y〉〉 = 〈 x y〉 , (3-84.1)
〈〈 x 〉 y〉〉 ∧ 〈 x 〈 y〉〉 = 〈〈 x〉 y〉 , (3-84.2)
〈 x y〉 ∨ 〈〈 x〉 〈 y〉〉 = 〈〈 x〉 〈 y〉〉 , (3-84.3)
〈〈 x 〉 y〉〉 ∨ 〈 x 〈 y〉〉 = 〈 x 〈 y〉〉 . (3-84.4)
〈 z u 〉 ∧ 〈 z v〉 = 〈 z 〉 ∧ 〈 z L u 〉 ∧ 〈 z L v〉 . (3-85)
〈u z 〉 ∧ 〈 v z 〉 = 〈 z 〉 ∧ 〈 u zF 〉 ∧ 〈 v z F 〉 . (3-86)
〈 z u 〉 ∧ 〈 v z 〉 = 〈 z 〉 ∧ 〈 zL u 〉 ∧ 〈 v zF 〉 . (3-87)
〈u z 〉 ∧ 〈 z v 〉 = 〈 z 〉 ∧ 〈 u zF 〉 ∧ 〈 z L v 〉 . (3-88)
〈 z u 〉 ∨ 〈 z v〉 = 〈 z 〉 ∧ (〈 z L u 〉 ∨ 〈 z L v〉 ) . (3-89)
〈 u z 〉 ∨ 〈 v z 〉 = 〈 z 〉 ∧ (〈 u z F 〉 ∨ 〈 v z F 〉 ) . (3-90)
〈 z u 〉 ∨ 〈 v z 〉 = 〈 z 〉 ∧ (〈 zL u 〉 ∨ 〈 v zF 〉 ) . (3-91)
〈 u z 〉 ∨ 〈 z v 〉 = 〈 z 〉 ∧ ( 〈 u z F 〉 ∨ 〈 z L v〉 ) . (3-92)
〈 x〉 ∠ 〈 y〉 = 〈〈 y〉 〈 x〉〉 . (3-93)
V.Vasyukevich - Asynchronous logic elements 110
〈 x〉 ∠ 〈 y〉 = 〈 y z 〉 ∠ 〈 y〉 = 〈〈 y〉 〈 y z 〉〉 = 〈 y z 〉 = 〈 x〉 . (3-94)
〈 y〉 ∠ 〈 x〉 = 〈 y〉 ∠ 〈 y z 〉 = 〈〈 y z 〉 〈 y〉〉 = 0 . (3-95)
〈u z 〉 ∠ 〈 z v〉 = 〈〈 z v〉 〈u z 〉〉 = 0 . (3-96)
〈u z 〉 ∠ 〈 v z 〉 = 〈〈 v z 〉 〈u z 〉〉 = J . (3-97)
〈 z u 〉 ∠ 〈 v z 〉 = 〈〈 v z 〉 〈 z u 〉〉 = 〈 v z u 〉 . (3-98)
〈 z u 〉 ∠ 〈 z v〉 = 〈〈 z v〉 〈 z u 〉〉 . (3-99)
Conjunctive expansion
Conjunctive representation of complicated sequention is based on the conjunctive
form (p. 3.9) of elementary sequention as well as on the rules assigned for expansion of
two-component sequentions. This is because a simple sequention transforms into
conjunction of minisequentions, that is, two-element sequentions. But in the case of
complicated sequention the same two-element, precisely two-component subsequentions
are subject to further transformation. Corresponding actions are specified by the following
rules:
〈 x y〉 = 〈〈 x〉 y〉 ⇔ 〈 x〉 ∧ 〈 y〉 ∧ 〈 xL yF 〉 , (3-100.1)
ϕ (〈 x〉, 〈 y〉, 〈 z〉, 〈u〉, 〈v〉, 〈 p〉, 〈 r 〉, 〈 s〉 ) = 〈〈 x 〈 y z〉〉 〈〈u〉 〈〈v〉 〈 p 〈 r〉〉 s〉〉〉 . (3-101)
Three layers of the sequention are occupied with components, which properly speaking are
subject to expansion. If planned converting actions distribute in accordance with
embedding layers (p. 3.3), required procedure appears in the following systemized form:
Layer 3:
V.Vasyukevich - Asynchronous logic elements 112
〈 p 〈 r 〉〉 = 〈 p〉 ∧ 〈 r 〉 ∧ 〈 pL rL 〉 . (3-102.1)
Layer 2:
〈 y z 〉 = 〈 y 〉 ∧ 〈 z 〉 ∧ 〈 yL z F 〉 , (3-102.2)
〈〈v〉 〈 p 〈 r 〉〉 s〉 = 〈 v〉 ∧ 〈 p〉 ∧ 〈 r 〉 ∧ 〈 pL rL 〉 ∧ 〈 s〉 ∧ 〈 vL rL sF 〉 . (3-102.3)
Layer 1:
〈 x 〈 y z 〉〉 = 〈 x〉 ∧ 〈 y〉 ∧ 〈 z 〉 ∧ 〈 yL zF 〉 ∧ 〈 xL zL 〉 , (3-102.4)
In accordance with the layered scheme, components of the third layer are
decomposed in the first place. Then the result obtained is taken into account on the next
(second) layer, and planned transformations are performed with reference to components
of this layer. And so on until the complete expansion on the first layer. Finally (on a zero
layer) initial sequence is found to be presented in the following form:
The given conjunctive expansion is represented by two types of forming components that
is characteristic of this operation.
1. Conjunction of elementary sequentions is responsible for the logical unity setting
of all components.
2. Sequentions, which contains first and last elements of embedded components,
control the succession of the mentioned settings.
Venjunctive separation
V.Vasyukevich - Asynchronous logic elements 113
A given transformation does not copy the analogous representative form (p. 3.9),
because that venjunctive form is applicable to simple sequentions only. Venjunctive
separation is based on the relations of two-component sequentions with venjunctions
(p.3.9). For example, a complicated sequention:
taking into account its three embedding layers is subdivided by venjunctive operation as
follows:
Unification of sequentions
Unification is a way to transform sequentions into a certain unified form similar for
all kinds of sequentions. In the context considered, unification implies monotony in
relation to components presented in sequention. Elementary sequention is the simplest
example of such unification because it contains only initial variables.
Manipulations, which provide transformation of sequentions to their unified form,
are performed in accordance with certain rules. These rules are represented by the
following formulae:
Here, equality symbol together with arrow constitute a sign => , which indicates direction
of transformation. On the left of this sign, sequentions, which are subject to transformation,
are placed; on the right, unified forms of these sequentions are located.
As a result of unification initially complicated sequention loses embeddings, which
V.Vasyukevich - Asynchronous logic elements 114
are presented by sequences of variables. In such a manner sequences are transformed into
sequentions. In certain cases first and last elements are involved. Thus, unified sequention
appears in the form of embedded elementary subsequentions. There is a sense of
unification.
Examples of unification:
〈 x y z 〈u 〉〉 = 〈〈 x yF 〉 〈 y〉 〈 yL z 〉 〈u 〉〉 , (3-107.1)
〈 x 〈 y z 〉 〈u 〉 v 〈 r 〉〉 = 〈〈 x〉 〈〈 y〉 〈 yL zF 〉 〈 z 〉〉 〈u 〉 〈uL vF 〉 〈 v〉 〈 r 〉〉 . (3-107.2)
Note
In the context of expansion, unification is an auxiliary, preliminary action. However,
initially unified sequention is able to simplify procedures required for further
transformations of complicated sequention into its conjunctive or venjunctive
representative form (p. 3.9).
sL
zL sF
xL zF uL rL
xF yL uF vL pL rF
yF vF pF
V.Vasyukevich - Asynchronous logic elements 115
that in accordance with a binary relation zL ≺ sL the last element of sequention 〈 z 〉 directly
Memory depth
In the context of asynchronous logic, let us consider that memory depth of a binary
sequential function is defined on the basis of the following thought.
Logical constants 0 and 1 do not depend on time. Constant is a permanent state, in
reference to which any temporal categories including memory are improper. Taking into
account this circumstance, absence of memory should be considered as zero memory.
Logical constants possess zero memory that means zero depth: md = 0.
〈 xF ...xL zL sL 〉 , (3-108.1)
Memory depth of the given sequention, as well as sequention as such, is defined by the
longest path in the graph. As to Figure 3.4, memory depth is found in accordance with the
following expression:
AFTERWORD
Present research work is the final stage of generalization and systematization of all
those ideas and investigations, author’s interest to which alternately flashed up and faded
over many years and for various reasons until formed “critical mass”, and all findings were
arranged definitively as a mathematical basis of a theory appropriately associated under a
common title – asynchronous logic.
The first part was basically provided by the previous papers, content of which was
essentially processed and added in an effort to increase logical coherence of the material
represented. The following articles were anyway involved:
In the second part as well as in the first one but not so widely, the results of the
previous researches are presented. Furthermore, there are many innovations, which were
generated during preparation of the manuscript. When forming the section, alongside with
above cited sources, some data from the following article were used:
The third part was prepared without preassigned solutions and therefore the content
is wholly original, though some steps in this direction were earlier undertaken. In this
context it is necessary to refer the following papers:
Current condition in the field of sequential logic, including asynchronous one, was
evaluated after the following overviews:
Acknowledgements
I am grateful to everybody who did not bother me during writing of this book.
Thanks also to my friends who from time to time distracted me with important and trivial
dealings that helped me to preserve my potency and peace of mind.
My especial thanks to my beloved daughter Katerina for her help with translation
from Russian.