852 Pages 440 B/W Illustrations
    by CRC Press

    852 Pages 440 B/W Illustrations
    by CRC Press

    Emphasizes the Basic Principles of Computational Arithmetic and Computational Structure Design
    Taking an interdisciplinary approach to the nanoscale generation of computer devices and systems, Computer Arithmetics for Nanoelectronics develops a consensus between computational properties provided by data structures and phenomenological properties of nano and molecular technology.

    Covers All Stages of the Design Cycle, from Task Formulation to Molecular-Based Implementation
    The book introduces the theoretical base and properties of various data structures, along with techniques for their manipulation, optimization, and implementation. It also assigns the computational properties of logic design data structures to 3D structures, furnishes information-theoretical measures and design aspects, and discusses the testability problem. The last chapter presents a nanoscale prospect for natural computing based on assorted computing paradigms from nature.

    Balanced Coverage of State-of-the-Art Concepts, Techniques, and Practices
    Up-to-date, comprehensive, and pragmatic in its approach, this text provides a unified overview of the relationship between the fundamentals of digital system design, computer architectures, and micro- and nanoelectronics.

    Introduction

    Computational paradigms for nanocomputing structures

    Biological inspiration for computing

    Self-assembly

    Molecular computing devices

    Fault tolerance

    Computing in 3D

    Multivalued processing

    Computational Nanostructures

    Introduction

    Theoretical background

    Analysis and synthesis

    Implementation technologies

    Predictable technologies

    Nanoelectronic networks

    Switch-based computing structures

    Spatial computational nanostructures

    Binary Arithmetic

    Introduction

    Positional numbers

    Counting in a positional number system

    Basic arithmetic operations in various number systems

    Binary arithmetic

    Radix-complement representations

    Conversion of numbers in various radices

    Overflow

    Implementation of binary arithmetic

    Other binary codes

    Further study

    Residue Arithmetic

    Introduction

    Residue arithmetic

    Further study

    Graph-Based Data Structures

    Introduction

    Graphs in discrete device and system design

    Basic definitions

    Tree-like graphs and decision trees

    Voronoi diagrams

    Further study

    Foundation of Boolean Data Structures

    Introduction

    Definition of algebra over the set {0, 1}

    Boolean functions

    Fundamentals of computing Boolean functions

    Proving the validity of Boolean equations

    Gates

    Local transformations

    Properties of switching functions

    Further study

    Boolean Data Structures

    Introduction

    Data structure types

    Relationships between data structures

    The truth table

    K-map

    Cube data structure

    Graphical data structure for cube representation

    Logic networks

    Networks of threshold gates

    Binary decision trees

    Decision diagrams

    Further study

    Fundamental Expansions

    Introduction

    Shannon expansion

    Shannon expansion for symmetric Boolean functions

    Techniques for computing symmetric functions

    The logic Taylor expansion

    Graphical representation of the fundamental expansions

    Further study

    Arithmetic of the Polynomials

    Introduction

    Algebra of the polynomial forms

    GF(2) algebra

    Relationship between standard SOP and polynomial forms

    Local transformations for EXOR expressions

    Factorization of polynomials

    Validity check for EXOR networks

    Fixed and mixed polarity polynomial forms

    Computing the coefficients of polynomial forms

    Decision diagrams

    Techniques for functional decision tree construction

    Functional decision tree reduction

    Further study

    Optimization of Computational Structures

    Introduction

    Minterm and maxterm expansions

    Optimization of Boolean functions in algebraic form

    Implementing SOP expressions using logic gates

    Minimization of Boolean functions using K-maps

    Boolean function minimization using decision diagrams

    Optimization of Boolean functions using decision trees

    Decision diagrams for symmetric Boolean functions

    Measurement of the efficiency of decision diagrams

    Representation of multi-output Boolean functions

    Embedding decision diagrams into lattice structures

    Further study

    Multivalued Data Structures

    Introduction

    Representation of multivalued functions

    Multivalued logic

    Galois fields GF(m)

    Fault models based on the concept of change

    Polynomial representations of multivalued logic functions

    Polynomial representations using arithmetic operations

    Fundamental expansions

    Further study

    Computational Networks

    Introduction

    Data transfer logic

    Implementation of Boolean functions using multiplexers

    Demultiplexers

    Decoders

    Implementation of switching functions using decoders

    Encoders

    Design examples

    Design example: magnitude comparator

    Design example: BCD adder

    The verification problem

    Decomposition

    Further study

    Sequential Logic Networks

    Introduction

    Physical phenomena and data storage

    Basic principles

    Data structures for sequential logic networks

    Latches

    Flip-flops

    Registers

    Counters

    Sequential logic network design

    Mealy and Moore models of sequential networks

    Data structures for analysis of sequential networks

    Analysis of sequential networks with various types of flip-flops

    Techniques for the synthesis of sequential networks

    Redesign

    Further study

    Memory Devices for Binary Data

    Introduction

    Programmable devices

    Random-access memory

    Read-only memory

    Memory expansion

    Programmable logic

    Field programmable gate arrays

    Further study

    Spatial Computing Structures

    Introduction

    The fundamental principles of 3D computing

    Spatial structures

    Hypercube data structure

    Assembling of hypercubes

    N-hypercube

    Embedding a binary decision tree into an N-hypercube

    Assembling N-hypercubes

    Representation of N-hypercubes using H-tree

    Spatial topological measurements

    Further reading

    Linear Cellular Arrays

    Introduction

    Linear arrays based on systolic computing paradigm

    Spatial systolic arrays

    Linear arrays based on linear decision diagrams

    Linear models of elementary functions

    Logic networks and linear decision diagrams

    Linear models for logic networks

    Linear models for multivalued logic networks

    Linear word-level representation of multivalued functions using logic operations

    3D computing arrays design

    Further study

    Information and Data Structures

    Introduction

    Information-theoretical measures

    Information-theoretical measures

    Information measures of elementary switching function of two variables

    Information-theoretical measures in decision trees

    Information-theoretical measures in multivalued functions

    Ternary and pseudo-ternary decision trees

    Further reading

    Design for Testability

    Introduction

    Fault models

    Controllability and observability

    Functional decision diagrams for computing Boolean differences

    Random testing

    Design for testability techniques

    Further study

    Error Detection and Error Correction

    Introduction

    Channel models

    The simplest error detecting network

    Discrete memoryless channel

    Linear block codes

    Cyclic codes

    Block codes

    Arithmetic codes

    Further study

    Natural Computing

    Introduction

    Fundamentals of the intermediate data structures

    Self-assembling

    Fractal-based models for self-assembly

    Logic network design using directed evolution

    Neural-based computing

    Further study

    Index

    Biography

    Vlad P. Shmerko, Svetlana N. Yanushkevich, Sergey Edward Lyshevski