Keywords

1 Introduction

DNA computing is a new field which combines computer science and molecularbiology subject. DNA acts as the computing tool, which has solved many problems, such as solving Hamition path, maximal clique problem [1,2,3]. DNA computing has merged a lot of molecule operation technology, such as self-assembly [4,5,6], fluorescence labeling [7,8,9] strand displacement [10,11,12] and probe machine [13]. DNA self-assembly technology and DNA stand displacement technology are two important technical support of DNA nanotechnology. DNA strand displacement technology is developed on the basis of DNA self-assembly technology. In recent years, DNA strand displacement [14,15,16] is a new method in the bio-computing, and has become a common method in DNA self-assembly. Based on the strand displacement cascade reaction [17], the dynamical connection adjacent logic modules [18,19,20] have been achieved, which makes it possible for the researcher to construct large-scale, complicated logic circuits [21]. Moreover, with the advantage of high-capacity information accumulation, high performance parallel computing, programming and simulating, it had acquired an in-depth study in the field of molecular computing, nano-machine, diagnosis and remedy of the disease. DNA strand displacement technology has the gigantic proficiency in solving the math problem [22,23,24], managing the nano-machine and discussing the life course. Based on DNA strand displacement, the construction of the biochemistry logic circuits has significant research means by mastering the design procedures.

Compared with the previous work [25, 26], the one-bit full adder-full subtractor logical operation is constructed for the first time in this paper. Based on the DNA strand displacement, there is the control terminal which concerns the function of the full adder-full subtractor. There are two kinds of function in the circuit, which are the full adder and the full subtroctor, respectively. The circuit could be applied to the construction of the biological computer in the future.

This paper is organized as follows. Firstly, the introduction is described in the Sect. 1. Then the strand displacement reaction mechanism is shown in the Sect. 2. The digit circuit and dual-rail circuit of the full adder-full subtractor is designed in the Sect. 3. The seesaw circuit and the simulation of the full adder-full subtractor are shown in the Sect. 4. Finally, the conclusion is given for the full adder-full subtractor.

2 The Background of DNA Strand Displacement

DNA strand displacement technology acts as an important technology of modern biological computing, which has been proved that it is a kind of nanoscale technologies to overcome circuit component miniaturization problem. DNA strand displacement response is a dynamic process and has the following three advantages. (1) DNA strand displacement response doesn’t need special temperature requirements and can proceed in room temperature without annealing. (2) It is the spontaneous reaction without adding enzyme. (3) A dynamic cascade system can be constituted due to dynamic characteristics of DNA strand displacement response. The characteristics of DNA strand displacement technology provide a good way for building the nanoscale large-scale circuit.

In order to perform mathematical logic, DNA strand displacement cascade technology has been widely applied to the configuration of the basic DNA logic gates (AND gate, OR gate and NOT gate). DNA strand displacement reaction mechanism is shown in Fig. 1. In the Fig. 1, the domain t represents a short toehold and the domain t* is the complementary pairing of the domain t. The DNA single strand <a t b> and strand <b t c> represent input signal and output signal, respectively. The strand <b t> and strand {t*}[b t]<c> are recognition domain and the double strand complex, respectively. Firstly, the short toehold domain t of the strand <a t b> and toehold domain t* of the double strand complex have a DNA complementary pairing. Then the domain b of the DNA single strand <a t b> and domain b* of the double strand complex also conduct a DNA complementary pairing. Eventually, the output strand <b t c> falls off from the double strand complex and releases the molecule complex <a>[t b]:<b> [t]<c> The whole reaction process can be considered that a DNA single strand <a t b> replace of the DNA single strand <b t c>.

Fig. 1.
figure 1

The DNA strand displacement reaction process. The DNA single strand <a t b> and strand <b t c> represent input signal and output signal. The strand <b t> is recognition domain.

Table 1. Truth table of the full adder-full subtractor.
Fig. 2.
figure 2

Digital logic circuit of one-bit full adder-full subtractor. \(x_{\mathrm {0}}\), \(x_{\mathrm {1}}, x_{\mathrm {2}}\) and \(y_{\mathrm {0}}\) are input signal, \(y_{\mathrm {1}}\) and \(y_{\mathrm {2}}\) are output signal. \(x_{\mathrm {0}}\) is the control terminal which concerns the function of the circuit. \(y_{\mathrm {0}}\) is the low level carry-bit or low level borrow-bit.

Fig. 3.
figure 3

The dual-rail logic circuits. (a) The dual-rail logic circuit of AND gate. (b) The dual-rail logic circuit of OR gate. (c) The dual-rail logic circuit of NAND gate. (d) The dual-rail logic circuit of NOR gate. (e) The dual-rail logic circuit of full adder-full subtractor.

3 The Digit Circuit and Dual-rail Circuit

The full adder-full subtractor also is a combinational logic circuit which performs simple logic operations of four binary digits. The truth table of the full adder-full subtractor is given in Table 1. In the Table 1, there are sixteen kinds of conditions which achieve two kinds of functions. Boolean functions of logic circuit is constructed by “AND”, “OR” and “NOT” gates. Based on the function of the truth table one-bit the full adder-full subtractor combinational logic circuit is shown in Fig. 2. The full adder-full subtractor logic circuit haves four inputs which are \(x_{\mathrm {0}}\), \(x_{\mathrm {1}}, x_{\mathrm {2}}\) and \(y_{\mathrm {0}}\) in the left side of the logic circuit and two outputs which are \(y_{\mathrm {1}}\) and \(y_{\mathrm {2}}\) in the right side of the logic circuit, respectively. In the logic circuit, the input \(x_{\mathrm {0}}\) is the control terminal and concerns the function of the circuit. If the value of \(x_{\mathrm {0}}\) is “0”, the logic circuit implements the function of full adder in which \(x_{\mathrm {1}}\) and \(x_{\mathrm {2}}\) are two addends, \(y_{\mathrm {0}}\), \(y_{\mathrm {1}}\) and \(y_{\mathrm {2}}\) indicate low level carry-bit the sum-bit and the high level carry-bit, respectively. On the other hand, the logic circuit achieves the function of full subtractor if the value of \(x_{\mathrm {0}}\) is “1”. Under the circumstances, \(x_{\mathrm {1}}\) and \(x_{\mathrm {2}}\) are minuend and subtrahend, \(y_{\mathrm {0}}\), \(y_{\mathrm {1}}\) and \(y_{\mathrm {2}}\) indicate low level borrow-bit the difference-bit and the high level borrow-bit, respectively.

On the basis of the given principle, one-bit the full adder-full subtractor combinational logic circuit should be translated into the corresponding dual-rail circuit to avoid generating error output signal. The logic gate consists of a pair of “AND” gate and “OR” gate. The dual-rail circuits of “AND” gate, “OR” gate, “NAND” gate and “NOR” gate are shown in Fig. 3(a)–(d), respectively. The input signal state is represented by logic “ON” and “OFF”. Taking the input \(x_{\mathrm {0}}\) as an example, if the input \(x_{\mathrm {0}}\) participates in the reaction, then the states of the \(x_{\mathrm {0}}^{\mathrm {0}}\) and \(x_{\mathrm {0}}^{\mathrm {1}}\) represent logic “OFF” and “ON”, respectively. On the contrary, if the input \(x_{\mathrm {0}}\) can’t participate in the reaction, then the states of the \(x_{\mathrm {0}}^{\mathrm {0}}\) and \(x_{\mathrm {0}}^{\mathrm {1}}\) represent logic “ON” and “OFF” respectively. According to the corresponding logical relationship, the dual-rail circuit of the full adder-full subtractor is constructed, as shown in Fig. 3(e).

4 Seesaw Circuit and Simulation with Visual DSD

Based on DNA stand displacement response, DNA seesaw logic gates could be designed. The logic gates are divided into left side and right side, and are connected by a node, as shown in Fig. 4. In Fig. 4(a), the input acts as the input single strand <a t b>, the strand {t*}[b t]<c> is the gate note. The output 1 acts as the output strand <b t c>. And output 2 is other output strand. The red digit 0.6 is the threshold value. The value of fuel is two times of the total output value. The gates usually consist of amplifying gate which can produce multi-path outputs and integration gate which could receive multi-path inputs, respectively. One-input-four-output and one-input-five-output amplifying gates are shown in Fig. 4(b)–(c), respectively. Two-input-one-output integration gate is shown in Fig. 4(d). The seesaw motifs of “OR” gate and “AND” gate are shown in Fig. 4(e)–(f).

Fig. 4.
figure 4

The seesaw motif of basic gates. (a) The amplifying gate of one-input-two-output. (b) The amplifying gate of one-input-four-output. (c) The amplifying gate of one-input-five-output. (d) The integration gate of two-input-one-output. (e) OR gate. (f) AND gate. (Color figure online)

Fig. 5.
figure 5

The seesaw circuit of one-bit full adder-full subtractor.

According to the seesaw circuit and the dual-rail logic circuit of full adder-full subtractor, the seesaw circuit of full adder-full subtractor is shown in Fig. 5, which could be simulated in the Visual DSD. There will be sixteen outputs which are produced along with the sixteen inputs. The simulation results of the full adder-full subtractor are shown in Fig. 6. In the Fig. 6, the blue curve and yellow curve represent the value of \(y_{\mathrm {1}}^{\mathrm {0}}\) and \(y_{\mathrm {1}}^{\mathrm {1}}\), respectively; the red line and green line separately indicate the value of \(y_{\mathrm {2}}^{\mathrm {0}}\) and \(y_{\mathrm {2}}^{\mathrm {1}}\), respectively In this paper, the total concentration of the reaction is 1000 nm. When the range is 0–100 nm, it expresses the logic “0”. On the other hand, it expresses the logic “1” if the range is 900–1000 nm.

If the control terminal \(x_{\mathrm {0}}\) is “0”, then the function of logic circuit is full adder whose simulation results are shown in Fig. 6(a)–(h). Under this cases, if the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “000”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “00” in Fig. 6(a). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “001”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “10” in Fig. 6(b). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “010”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “10”, as shown in Fig. 6(c). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “011”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “01”, as shown in Fig. 6(d). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “100”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “10” in Fig. 6(e). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “101”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “01” in Fig. 6(f). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “110”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “01”, as shown in Fig. 6(g). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “111”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “11”, as shown in Fig. 6(h).

Fig. 6.
figure 6

The simulation in Visual DSD. (Color figure online)

If the control terminal \(x_{\mathrm {0}}\) is “1”, then the function of the logic circuit is full subtractor whose simulation results are shown in Fig. 6(i)–(p). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “000”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “00”, as shown in Fig. 6(i). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “001”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “11” in Fig. 6(j). If the input signal\( x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “010”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “11”, as shown in Fig. 6(k). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “011”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “01”, as shown in Fig. 6(l). When the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “100”, the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “00”, as shown in Fig. 6(m). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “101”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “11” in Fig. 6(n). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “110”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “11”, as shown in Fig. 6(o). If the input signal \(x_{\mathrm {1}}x_{\mathrm {2}}y_{\mathrm {0}}\) is “111”, then the output signal \(y_{\mathrm {1}}y_{\mathrm {2}}\) is “01”, as shown in Fig. 6(p).

According to the simulation results, the following conclusions can be obtained. The logic “ON” and logic “OFF” curves both enter into the stable area, which express the logic “1” and logic “0” correctly, respectively. The simulation results have a high validity.

5 Conclusion

In this paper, one-bit full adder-full subtractor logic circuit has been constructed by DNA strand displacement. Then the full adder-full subtractor combinational logic circuit has been converted to the corresponding the dual-rail logic circuit and the biochemical logic circuit. Finally, the seesaw logic circuit of the full adder-full subtractor is simulated in the visual DSD. The correctness of simulation results proves that the DNA strand displacement technique is a feasible method in the study of biochemical circuit. As a result of the limitation of the current scientific research platform and technology, the biochemical experiment also needs to continue to be explored, which will be the focus of the next research direction.