As systems grow more complex and require better performance and enhanced reliability, the process of using existing design tools to build circuits becomes more complicated. Increased automation is desirable because it simplifies this process and holds out the promise of reducing the time and cost of developing circuits. We introduce a novel approach that relies heavily on compiler technology capable of delivering highly concurrent, synchronous implementations of circuits described using our method. We have designed a specification language which reflects our approach and implemented a compiler able to automatically synthesize efficient, fully pipelined circuits starting from high-level, asynchronous, modular specifications.