Physical design algorithms for asynchronous circuits