EDIS: Guide | FAQ | New | Search | Bibliography | Index | Feedback

# E-Element

## Specifications

### Informal

A E-Element (`Each-Element') has three 2-phase handshake ports, one passive and two active. A request on the passive port brings about a handshake on each of the active ports (concurrently or in some order, that is not prescribed). When both active ports have acknowledged their handshakes, the passive port is acknowledged.

The E-Element is useful in decompositions to preserve symmetry and to postpone further design decisions (express further design freedom), [Verhoeff98, 176-177]. For an example see the Decision-Wait.

### XDI

Schematic diagram for an E-Element:

[Zoom|FIG]

XDI state graph for an E-Element:

[Zoom|FIG]

Specification in XDI model.

### Verdect

There is no appropriate VERDECT specification because the E-Element is not maximally transient.

### DI Algebra

Specification in DI Algebra:

```NAME = "E-element"
I = { r?, a0?, a1? }
O = { a!, r0!, r1! }

E  = [r? -> Er, else -> CHAOS]
Er = [r0! -> Er0
,r1! -> Er1
,else -> CHAOS
]
Er0= [a0? -> r1!;F0, r1! -> F, else -> CHAOS]
ND [a0? -> r1!;F0, else -> CHAOS]
Er1= [a1? -> r0!;F1, r0! -> F, else -> CHAOS]
ND [a1? -> r0!;F1, else -> CHAOS]
F  = [a0? -> F0, a1? -> F1, r? -> CHAOS]
F0 = [a1? -> a!;E, else -> CHAOS]
F1 = [a0? -> a!;E, else -> CHAOS]
```

## Properties

XDI Report.

The roles of the b and c ports can be interchanged:
E(a; b, c) = E(a; c, b)

The E-Element satisfies Rules Y' and Z'. It is not output deterministic since states 2 and 3 are indifferent and have outgoing output arrows. The output nondeterminism is static.

## Implementations

### DI Decompositions

1. A E-Element can be implemented with a SEQ-Element (not equ). This implementation starts the active handshakes concurrently. The active handshakes can be ordered either way. [Verhoeff98, 177].
2. A E-Element can be implemented with a PAR-Element (not equ). This implementation forces one of the active handshakes to complete before the other is started. The active handshakes can be ordered either way. [Verhoeff98, 177].

### Using Boolean Gates

No information available

### Using Transistors

No information available

## Generalizations

No information available

## Miscellaneous

The E-Element was introduced in EDIS to describe the decomposition of a Decision-Wait in terms of a Partial Decision-Wait without committing to a parallel or sequential `reset'.

## References

[Verhoeff98, 176-177]
[Verhoeff98, 177]