Checking the "basic" micro-operations

Let's evaluate now the potential possibility of the basic micro-operations to detect errors, which may arise at the fulfillment of micro-operations.

It is known that the potential error detection possibility is the ratio of the number of all the detectable errors to the number of all the possible errors. Let's try to explain the essence of the error detection for example of the "convolution" micro-operation:

 011 ® 100. (1)

The "convolution" (1) is fulfilled over the three-digit binary code combination (1). In the general there is 2n = 8 possible passages caused by this micro-operation (1). One of them namely the passage (1) is the correct passage. The code combinations

 {011, 100} (2)

involved into the correct passage (1) are called the allowed code combinations. The rest of the code combinations

 {000, 001, 010, 101, 110, 111} (3)

are called the prohibited code combinations.

The idea of the error detection consists of the following. If during the process of realization of the micro-operation (1) there arises one of the "prohibited" code combinations (3), this fact by itself is the error indication. Note that if there arises the error passage from one allowed code combination to another one this is the case of the non-detectable error.

Let's consider now all situations appearing at fulfillment of the micro-operation (1). It is clear that the passages

 (4)

are erroneous.

Let's consider the erroneous passages (4). We can see that the erroneous passage

 011 => 011 (5)

is the non-detectable as the code combinations (2) are allowed for the micro-operation of the "convolution". Let's consider now the passage (5) since the numerical point of view. It is clear that an essence of this "erroneous" passage consists of the preservation of the initial code combination. If we analyze this passage since the point of view of arithmetical operation we can see that this passage does not destroy numerical information and does not influence on the end result of arithmetical operations. Hence, the erroneous passage (5) does not bring into the numerical error of the catastrophic character. This means that the passage (5) is erroneous but this error douse not influence on the end result of computations. This error delays only the course of data processing. All the rest erroneous passages from (4) bring into the destruction of information and hence there arise for this case the errors of the catastrophic character.

The main conclusion following from this consideration consists of the fact that the set of the "catastrophic" code combinations from (4) coincides with the set of the detectable code combinations (3). It means that all the "catastrophic" passages for the micro-operation of the "convolution" are detectable. Thus, it follows from this consideration that the control of the Fibonacci circuit based on the checking the micro-operation of the "convolution" has the "absolute" (i.e. 100%) potential possibility to detect all the "catastrophic" errors, which can arise when flip-flops involved in the "convolution" micro-operation are switching over.

One may do the similar conclusion for other "basic micro-operations". But realization of some algorithm of data processing in the Fibonacci processor is reduced to fulfillment of the certain "basic micro-operations" on every computing step. As the control of the Fibonacci circuits or units based on the Fibonacci micro-operations has the "absolute" detectable possibility it follows from the above-considered Fibonacci arithmetic the possibility to develop the arithmetical self-checking Fibonacci processor possessing the "absolute" detectable possibility regarding to the "catastrophic" errors arising in the Fibonacci processor at the flip-flop switching over. This fact gives the right to call the new Fibonacci arithmetic as the noise-tolerant one.

Thus, now we have understood the basic advantage of the "noise-tolerant" Fibonacci arithmetic in comparison to the classical "binary" arithmetic. We have proved that there exists a possibility to design the Fibonacci processor for the "noise-tolerant" computations and that this Fibonacci processor guaranties the detection of all the possible flip-flop "malfunctions" arising at the flip-flop switching over!

But even not being computer specialist you understand the importance of this idea for computer science. And later we will tell you about technical realization of this tempting idea. Follow us!