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

Toggle

Specifications

Informal

A Toggle has one input terminal a and two output terminals b and c. Each input signal produces one output signal. Input and output signals alternate. Signals on the output terminals also alternate, first on b then on c, etc.

XDI

Schematic diagram for a Toggle:


[Zoom|FIG]

XDI state graph for a Toggle:


[Zoom|FIG]

Specification in XDI model.

Verdect

Specification in Verdect:


define TOGGLE( a?, b!, c! ) =
       pref *[ a?; b!; a?; c! ]
end
Also available through this link

DI Algebra

Specification in DI Algebra:

NAME = "Toggle"
I = {a? }
O = {b!, c!}
T = a?; b!; a?; c!; T
Also available through this link

Properties

XDI Report.

T(a; b, c) / ab = T(a; c, b)

Implementations

DI Decompositions

  1. A Toggle can be implemented as a small state machine using a Latch:


    [Zoom|FIG]

Using Boolean Gates

No information available

Using Transistors

No information available

Generalizations

The Toggle can be generalized to a k-Toggle, which cycles over k outputs (k>0). A Toggle is a 2-Toggle.

The Toggle can be generalized to a Modulo-N Counter. A Toggle is a Modulo-2 Counter.

Miscellaneous

In Section 2.2.6 of [Ebergen89, p. 32], the Toggle is referred to as TOGGLE component.

Conjecture: A Toggle cannot be implemented with only Forks, Joins, Merges, and I-Wires.

References

[Ebergen89, p. 32]


Last modified at Fri Nov 20 10:11:41 1998
Encyclopaedia of Delay-Insensitive Systems
Copyright © 1995-1998 Tom Verhoeff / Tom.Verhoeff@acm.org