Design and Analysis of Asynchronous Circuits