233
Views
0
CrossRef citations to date
0
Altmetric
Original Articles

A programmable ternary CPU using hybrid CMOS/memristor circuits

, &
Pages 387-407 | Received 18 Oct 2017, Accepted 25 Dec 2017, Published online: 16 Jan 2018
 

Abstract

The carry propagation of arithmetic operations is one of the major shortcomings of common binary number encodings as the two’s complement. Signed-digit arithmetic allows the addition of two numbers without carry propagation and in asymptotically constant time in dependence of the word length, while at the same time requiring a digit representation with more than two states. With the advent of memristors, it has become possible to store multiple states within a single memory cell. This paper proposes an implementation of a general purpose CPU using signed-digit arithmetic by exploiting memristors in order to implement multi-value registers. The proposed model of the CPU is evaluated by the execution of various image processing algorithms. It is shown that a break-even point exists at which signed-digit algorithms outperform conventional binary arithmetic operations. Furthermore, simulation results prove that the memristor device lends itself to store signed-digit data efficiently.

Graphical Abstract

Measurement of memristors behavior to store multiple discrete values. Below 5 k the digit 1 is coded, between 5 and 12.5 k the digit 0, and above 12.5 k the digit 1.

Disclosure statement

No potential conflict of interest was reported by the authors.

Reprints and Corporate Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

To request a reprint or corporate permissions for this article, please click on the relevant link below:

Academic Permissions

Please note: Selecting permissions does not provide access to the full text of the article, please see our help page How do I view content?

Obtain permissions instantly via Rightslink by clicking on the button below:

If you are unable to obtain permissions via Rightslink, please complete and submit this Permissions form. For more information, please visit our Permissions help page.