Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Michael Kirkedal Thomsen is active.

Publication


Featured researches published by Michael Kirkedal Thomsen.


Journal of Physics A | 2010

Reversible arithmetic logic unit for quantum arithmetic

Michael Kirkedal Thomsen; Robert Glück; Holger Bock Axelsen

This communication presents the complete design of a reversible arithmetic logic unit (ALU) that can be part of a programmable reversible computing device such as a quantum computer. The presented ALU is garbage free and uses reversible updates to combine the standard reversible arithmetic and logical operations in one unit. Combined with a suitable control unit, the ALU permits the construction of an r-Turing complete computing device. The garbage-free ALU developed in this communication requires only 6n elementary reversible gates for five basic arithmetic–logical operations on two n-bit operands and does not use ancillae. This remarkable low resource consumption was achieved by generalizing the V-shape design first introduced for quantum ripple-carry adders and nesting multiple V-shapes in a novel integrated design. This communication shows that the realization of an efficient reversible ALU for a programmable computing device is possible and that the V-shape design is a very versatile approach to the design of quantum networks.


Journal of Systems Architecture | 2008

Optimized reversible binary-coded decimal adders

Michael Kirkedal Thomsen; Robert Glück

Babu and Chowdhury [H.M.H. Babu, A.R. Chowdhury, Design of a compact reversible binary coded decimal adder circuit, Journal of Systems Architecture 52 (5) (2006) 272-282] recently proposed, in this journal, a reversible adder for binary-coded decimals. This paper corrects and optimizes their design. The optimized 1-decimal BCD full-adder, a 13x13 reversible logic circuit, is faster, and has lower circuit cost and less garbage bits. It can be used to build a fast reversible m-decimal BCD full-adder that has a delay of only m+17 low-power reversible CMOS gates. For a 32-decimal (128-bit) BCD addition, the circuit delay of 49 gates is significantly lower than is the number of bits used for the BCD representation. A complete set of reversible half- and full-adders for n-bit binary numbers and m-decimal BCD numbers is presented. The results show that special-purpose design pays off in reversible logic design by drastically reducing the number of garbage bits. Specialized designs benefit from support by reversible logic synthesis. All circuit components required for optimizing the original design could also be synthesized successfully by an implementation of an existing synthesis algorithm.


reversible computation | 2011

A reversible processor architecture and its reversible logic design

Michael Kirkedal Thomsen; Holger Bock Axelsen; Robert Glück

We describe the design of a purely reversible computing architecture, Bob, and its instruction set, BobISA. The special features of the design include a simple, yet expressive, locally-invertible instruction set, and fully reversible control logic and address calculation. We have designed an architecture with an ISA that is expressive enough to serve as the target for a compiler from a high-level structured reversible programming language. All-in-all, this paper demonstrates that the design of a complete reversible computing architecture is possible and can serve as the core of a programmable reversible computing system.


Parallel Processing Letters | 2009

PARALLELIZATION OF REVERSIBLE RIPPLE-CARRY ADDERS

Michael Kirkedal Thomsen; Holger Bock Axelsen

The design of fast arithmetic logic circuits is an important research topic for reversible and qnantum computing. A special challenge in this setting is the computation of standard arithmetical functions without the generation of garbage. Here, we present a novel parallelization scheme wherein in parallel k-bit reversible ripple-carry adders are combined to form a reversible ink-bit ripple-block carry adder with logic depth O(m + k) for a minimal logic depth O(Vmk), thus improving on the nik-bit ripple-carry adder logic depth O(m · k). The underlying mechanisms of the parallelization scheme are formally proven correct. We also show designs for garbage-less reversible comparison circuits. We compare the circuit costs of the resulting ripple-block carry adder with known optimised reversible ripple-carry adders in measures of circuit delay, width, gate, transistor count, and relative power efficiency, and find that the parallelized adder offers significant speedups at realistic word sizes with modest parallelization overhead.


reversible computation | 2013

White dots do matter: rewriting reversible logic circuits

Mathias Soeken; Michael Kirkedal Thomsen

The increased effort in recent years towards methods for computer aided design of reversible logic circuits has also lead to research in algorithms for optimising the resulting circuits; both with higher-level data structures and directly on the reversible circuits. To obtain structural patterns that can be replaced by a cheaper realisation, many direct algorithms apply so-called moving rules; a simple form of rewrite rules that can only swap gate order. In this paper we first describe the few basic rules that are needed to perform rewriting directly on reversible logic circuits made from general Toffoli circuits. We also show how to use these rules to derive more complex formulas. The major difference compared to existing approaches is the use of negative controls (white dots), which significantly increases the algebraic strength. We show how existing optimisation approaches can be adapted as problems based on our rewrite rules. Finally, we outline a path to generalising the rewrite rules by showing their forms for reversible control-gates. This can be used to expand our method to other gates such as the controlled-swap gate or quantum gates.


Information Processing Letters | 2014

Upper bounds for reversible circuits based on Young subgroups

Nabila Abdessaied; Mathias Soeken; Michael Kirkedal Thomsen; Rolf Drechsler

We present tighter upper bounds on the number of Toffoli gates needed in reversible circuits. Both multiple controlled Toffoli gates and mixed polarity Toffoli gates have been considered for this purpose. The calculation of the bounds is based on a synthesis approach based on Young subgroups that results in circuits using a more generalized gate library. Starting from an upper bound for this library we derive new bounds which improve the existing bound by around 77%. We present new upper bounds on the number of Toffoli gates in reversible circuits.The idea is to use a synthesis method based on Young subgroups as starting point.One technique derives the bounds based on function decomposition.Another technique is based on existing ESOP upper bounds.The best new upper bound improves the existing one by around 77%.


reversible computation | 2012

Garbageless Reversible Implementation of Integer Linear Transformations

Stéphane Burignat; Kenneth Vermeirsch; Alexis De Vos; Michael Kirkedal Thomsen

Discrete linear transformations are important tools in information processing. Many such transforms are injective and therefore prime candidates for a physically reversible implementation into hardware. We present here reversible digital implementations of different integer transformations on four inputs. The resulting reversible circuit is able to perform both the forward transform and the inverse transform. Which of the two computations that actually is performed, simply depends on the orientation of the circuit when it is inserted in a computer board (if one takes care to provide the encapsulation of symmetrical power supplies). Our analysis indicates that the detailed structure of such a reversible design strongly depends on the prime factors of the determinant of the transform: a determinant equal to a power of 2 leads to an efficient garbage-free design.


reversible computation | 2012

Garbage-Free Reversible Integer Multiplication with Constants of the Form 2 k ±2 l ±1

Holger Bock Axelsen; Michael Kirkedal Thomsen

Multiplication of integers is non-injective and, thus, requires garbage lines for any reversible logic implementation. However, multiplying with a fixed constant is injective, and should therefore be implementable in reversible logic without garbage. Despite this, the only reported circuits for constant multiplication without garbage are restricted to powers of 2, i.e., the multiplication is a simple bit-shift.


implementation and application of functional languages | 2015

Interpretation and programming of the reversible functional language RFUN

Michael Kirkedal Thomsen; Holger Bock Axelsen

rfun is a small first-order reversible functional language introduced by Yokoyama et al. in 2012. The present paper aims to further the understanding of reversible functional programming (and RFUN in particular) by describing implementations in, and of, the RFUN language. After briefly summarizing rfun in terms of syntax and semantics, we first (informally) describe a transformation from the simple irreversible first-order language fun to rfun. This highlights how irreversibility is avoided in rfun, such as in the use of the so-called first-match policy. It also emphasizes the fact that rfun is trace-less, while also showing how the standard reversible (trace-full) embeddings of Landauer and Bennett can be implemented. Second, we outline (by examples) a number of the reversible functions that have been implemented in rfun. The programming examples given here focus on Peano arithmetic and list functions, and are intended to show various useful programming techniques of the reversible functional programming paradigm. Finally, we discuss the implementation of rfun. This is twofold as we relate a Haskell implementation of an rfun interpreter, to an implementation of a self-interpreter, i.e., an rfun interpreter implemented in rfun. Although rfun does not have the rich and expressive syntax of Haskell---which makes programming the self-interpreter more cumbersome in some aspects---the built-in support for reverse execution greatly reduces the code base and makes the rfun-based self-interpreter implementation follow the formal semantics of rfun more directly than the Haskell-based interpreter.


implementation and application of functional languages | 2011

Describing and optimising reversible logic using a functional language

Michael Kirkedal Thomsen

This paper presents the design of a language for the description and optimisation of reversible logic circuits. The language is a combinator-style functional language designed to be close to the reversible logical gate-level. The combinators include high-level constructs such as ripples, but also the recognisable inversion combinator f−1, which defines the inverse function of f using an efficient semantics. It is important to ensure that all circuits descriptions are reversible, and furthermore we must require this to be done statically. This is ensured by the type system, which also allows the description of arbitrary sized circuits. The combination of the functional language and the restricted reversible model results in many arithmetic laws, which provide more possibilities for term rewriting and, thus, the opportunity for good optimisation.

Collaboration


Dive into the Michael Kirkedal Thomsen's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Robert Glück

University of Copenhagen

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Stéphane Burignat

Université catholique de Louvain

View shared research outputs
Top Co-Authors

Avatar

Robert Wille

Johannes Kepler University of Linz

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Mathias Soeken

École Polytechnique Fédérale de Lausanne

View shared research outputs
Top Co-Authors

Avatar

Eva Rotenberg

University of Copenhagen

View shared research outputs
Researchain Logo
Decentralizing Knowledge