An algorithm for reversible logic synthesis is proposed. The task is, for a given $n$-bit substitution map $P_n: \{0,1\}^n \rightarrow \{0,1\}^n$, to find a sequence of reversible logic gates that implements the map. The gate library adopted in this work consists of multiple-controlled Toffoli gates denoted by $C^m\!X$, where $m$ is the number of control bits that ranges from 0 to $n-1$. Controlled gates with large $m \,\,(>2)$ are then further decomposed into $C^0\!X$, $C^1\!X$, and $C^2\!X$ gates. A primary concern in designing the algorithm is to reduce the use of $C^2\!X$ gate (also known as Toffoli gate) which is known to be universal. The main idea is to view an $n$-bit substitution map as a rank-$2n$ tensor and to transform it such that the resulting map can be written as a tensor product of a rank-($2n-2$) tensor and the $2\times 2$ identity matrix. Let $\mathcal{P}_n$ be a set of all $n$-bit substitution maps. What we try to find is a size reduction map $\mathcal{A}_{\rm red}: \mathcal{P}_n \rightarrow \{P_n: P_n = P_{n-1} \otimes I_2\}$. %, where $I_m$ is the $m\times m$ identity matrix. One can see that the output $P_{n-1} \otimes I_2$ acts nontrivially on $n-1$ bits only, meaning that the map to be synthesized becomes $P_{n-1}$. The size reduction process is iteratively applied until it reaches tensor product of only $2 \times 2$ matrices.
翻译:本文提出了一种可逆逻辑综合算法。该算法的任务是:对于给定的 $n$ 位置换映射 $P_n: \{0,1\}^n \rightarrow \{0,1\}^n$,寻找一个实现该映射的可逆逻辑门序列。本工作采用的门库由多控制位托福利门(表示为 $C^m\!X$)构成,其中 $m$ 是控制位的数量,取值范围为 $0$ 到 $n-1$。具有较大 $m \,\,(>2)$ 的控制门将进一步分解为 $C^0\!X$、$C^1\!X$ 和 $C^2\!X$ 门。设计该算法的一个主要考虑是减少对 $C^2\!X$ 门(也称为托福利门)的使用,该门已知是通用的。其主要思想是将一个 $n$ 位置换映射视为一个秩为 $2n$ 的张量,并对其进行变换,使得结果映射可以写成一个秩为 $(2n-2)$ 的张量与 $2\times 2$ 单位矩阵的张量积。令 $\mathcal{P}_n$ 为所有 $n$ 位置换映射的集合。我们试图寻找的是一个规模约简映射 $\mathcal{A}_{\rm red}: \mathcal{P}_n \rightarrow \{P_n: P_n = P_{n-1} \otimes I_2\}$。可以看出,输出 $P_{n-1} \otimes I_2$ 仅对 $n-1$ 位进行非平凡作用,这意味着待综合的映射变为 $P_{n-1}$。该规模约简过程迭代进行,直至达到仅由 $2 \times 2$ 矩阵的张量积表示。