There are multiple reasons for designing asynchronous or self-timed circuits, systems, and algorithms:
low power, low energy, low delay-sensitivity, and low electro-magnetic interference,
as well as high speed, high delay-tolerance, and high scalability.
Our primary goal is to design and study hardware that scales and distributes over space.
We do this by dividing the hardware into self-timed components and communication protocols.
Inside our basic non-composite component, behaviors can be as chaotic as a kindergarten playground.
This is fine, because basic components are small enough to oversee and control events.
The protocols between the components are as orderly as a "crocodile" chain of children
going from playground to playground, which guarantees that the communications are correct.
At this web site you will find a selection of our presentations and publications.
Feel free to download and use our work, but please reference it when you do.