|
A proposed four-phase design flow is described that assists with computations by transforming a quantum algorithm from a high-level language program into precisely scheduled physical actions. Major topics covered are quantum computation, ongoing research in quantum computing, four phase design flow, programming environment and language, quantum computer compiler, high-performance simulation of quantum circuits, and design flow for fault-tolerant architectures. In the proposed design flow, the first three phases are part of the quantum computer compiler, and the last phase implements the quantum algorithm on a quantum device or simulator. The developers envisage a hierarchy of design tools with straightforward and intuitive interfaces between layers that include program languages, compilers, optimizers, simulators, and layout tools. As the demand for nanoscale control rises, ease of quantum programming environments should increase. The quantum programming environment has the following key attributes: a high-level quantum programming language with the needed abstractions, an environment and programming language based on familiar concepts and constructs, easy separation of classical and quantum computations, and a language that supports high-level abstractions to streamline and ease development of new quantum algorithms and applications. The work under way to date has focused on the languages, transformations, and fault-tolerance procedures needed for robust implementations. Several other requirements for future progress are described, including further development of simulation techniques for quantum circuits and high-level programs.
|