1,191 research outputs found

    Energy-Efficient Algorithms

    Full text link
    We initiate the systematic study of the energy complexity of algorithms (in addition to time and space complexity) based on Landauer's Principle in physics, which gives a lower bound on the amount of energy a system must dissipate if it destroys information. We propose energy-aware variations of three standard models of computation: circuit RAM, word RAM, and transdichotomous RAM. On top of these models, we build familiar high-level primitives such as control logic, memory allocation, and garbage collection with zero energy complexity and only constant-factor overheads in space and time complexity, enabling simple expression of energy-efficient algorithms. We analyze several classic algorithms in our models and develop low-energy variations: comparison sort, insertion sort, counting sort, breadth-first search, Bellman-Ford, Floyd-Warshall, matrix all-pairs shortest paths, AVL trees, binary heaps, and dynamic arrays. We explore the time/space/energy trade-off and develop several general techniques for analyzing algorithms and reducing their energy complexity. These results lay a theoretical foundation for a new field of semi-reversible computing and provide a new framework for the investigation of algorithms.Comment: 40 pages, 8 pdf figures, full version of work published in ITCS 201

    Synthesis and Optimization of Reversible Circuits - A Survey

    Full text link
    Reversible logic circuits have been historically motivated by theoretical research in low-power electronics as well as practical improvement of bit-manipulation transforms in cryptography and computer graphics. Recently, reversible circuits have attracted interest as components of quantum algorithms, as well as in photonic and nano-computing technologies where some switching devices offer no signal gain. Research in generating reversible logic distinguishes between circuit synthesis, post-synthesis optimization, and technology mapping. In this survey, we review algorithmic paradigms --- search-based, cycle-based, transformation-based, and BDD-based --- as well as specific algorithms for reversible synthesis, both exact and heuristic. We conclude the survey by outlining key open challenges in synthesis of reversible and quantum logic, as well as most common misconceptions.Comment: 34 pages, 15 figures, 2 table

    HDL-based Synthesis of Reversible Circuits : A Scalable Design Approach

    Get PDF
    Reversible computing is a promising research field due to its applications in several emerging technologies. Accordingly, several approaches for the design of reversible circuits have been introduced. Hardware Description Languages approach scales better than other methodologies, however, its main drawback is substantial amounts of additional circuit lines. This dissertation is an important step towards an elaborated scalable design flow of reversible circuits. In which, HDL-based design of reversible circuit is optimised, with line-awareness considered as the main objective. A line-aware programming style for a dedicated reversible hardware description language SyReC is proposed. Another contribution is a line-aware computation of HDL expressions. Reversible circuits' synthesis from a conventional hardware description language (VHDL) is examined. Finally, syntactical extensions to the dedicated hardware description language SyReC are suggested

    How to Efficiently Handle Complex Values? Implementing Decision Diagrams for Quantum Computing

    Full text link
    Quantum computing promises substantial speedups by exploiting quantum mechanical phenomena such as superposition and entanglement. Corresponding design methods require efficient means of representation and manipulation of quantum functionality. In the classical domain, decision diagrams have been successfully employed as a powerful alternative to straightforward means such as truth tables. This motivated extensive research on whether decision diagrams provide similar potential in the quantum domain -- resulting in new types of decision diagrams capable of substantially reducing the complexity of representing quantum states and functionality. From an implementation perspective, many concepts and techniques from the classical domain can be re-used in order to implement decision diagrams packages for the quantum realm. However, new problems -- namely how to efficiently handle complex numbers -- arise. In this work, we propose a solution to overcome these problems. Experimental evaluations confirm that this yields improvements of orders of magnitude in the runtime needed to create and to utilize these decision diagrams. The resulting implementation is publicly available as a quantum DD package at http://iic.jku.at/eda/research/quantum_dd

    A Uniform Mathematical Representation of Logic and Computation.

    Get PDF
    The current models of computation share varying levels of correspondence with actual implementation schemes. They can be arranged in a hierarchical structure depending upon their level of abstraction. In classical computing, the circuit model shares closest correspondence with physical implementation, followed by finite automata techniques. The highest level in the abstraction hierarchy is that of the theory of computation.Likewise, there exist computing paradigms based upon a different set of defining principles. The classical paradigm involves computing as has been applied traditionally, and is characterized by Boolean circuits that are irreversible in nature. The reversible paradigm requires invertible primitives in order to perform computation. The paradigm of quantum computing applies the theory of quantum mechanics to perform computational tasks.Our analysis concludes that descriptions at lowest level in the abstraction hierarchy should be uniform across the three paradigms, but the same is not true in case of current descriptions. We propose a mathematical representation of logic and computation that successfully explains computing models in all three paradigms, while making a seamless transition to higher levels of the abstraction hierarchy. This representation is based upon the theory of linear spaces and, hence, is referred to as the linear representation. The representation is first developed in the classical context, followed by an extension to the reversible paradigm by exploiting the well-developed theory on invertible mappings. The quantum paradigm is reconciled with this representation through correspondence that unitary operators share with the proposed linear representation. In this manner, the representation is shown to account for all three paradigms. The correspondence shared with finite automata models is also shown to hold implicitly during the development of this representation. Most importantly, the linear representation accounts for the Hamiltonians that define the dynamics of a computational process, thereby resolving the correspondence shared with underlying physical principles.The consistency of the linear representation is checked against a current existing application in VLSI CAD that exploits the linearity of logic functions for symbolic representation of circuits. Some possible applications and applicability of the linear representation to some open problems are also discussed

    An FPGA-based quantum computing emulation framework based on serial-parallel architecture

    Get PDF
    Hardware emulation of quantum systems can mimic more efficiently the parallel behaviour of quantum computations, thus allowing higher processing speed-up than software simulations. In this paper, an efficient hardware emulation method that employs a serial- parallel hardware architecture targeted for field programmable gate array (FPGA) is proposed. Quantum Fourier transform and Grover’s search are chosen as case studies in this work since they are the core of many useful quantum algorithms. Experimental work shows that, with the proposed emulation architecture, a linear reduction in resource utilization is attained against the pipeline implementations proposed in prior works. The proposed work contributes to the formulation of a proof-of-concept baseline FPGA emulation framework with optimization on datapath designs that can be extended to emulate practical large-scale quantum circuits

    Reversible Computation: Extending Horizons of Computing

    Get PDF
    This open access State-of-the-Art Survey presents the main recent scientific outcomes in the area of reversible computation, focusing on those that have emerged during COST Action IC1405 "Reversible Computation - Extending Horizons of Computing", a European research network that operated from May 2015 to April 2019. Reversible computation is a new paradigm that extends the traditional forwards-only mode of computation with the ability to execute in reverse, so that computation can run backwards as easily and naturally as forwards. It aims to deliver novel computing devices and software, and to enhance existing systems by equipping them with reversibility. There are many potential applications of reversible computation, including languages and software tools for reliable and recovery-oriented distributed systems and revolutionary reversible logic gates and circuits, but they can only be realized and have lasting effect if conceptual and firm theoretical foundations are established first
    corecore