This project explores practical architectures, circuits, and tool support for asynchronous digital systems. In particular, it seeks to fill a design niche that requires both high-performance in a specific problem domain and some flexibility in how the computation proceeds. One focus is on an asynchronous microprogrammed control style called a microengine. In addition to the flexibility that comes from a microcoded execution style, the asynchronous microengine approach embodies many advantages related directly to the asynchronous execution model of the controller, and of the circuits that it controls. This project explores the classes of design problems that can benefit from asynchronous microengines, explores the use of specialized circuit structures to enhance performance, and constructs a tool for the automated synthesis of microengines within the ACK high-level synthesis framework.