Computer Arithmetics for Nanoelectronics
Description
Table of ContentsINTRODUCTIONComputational paradigms for nanocomputing structures Biological inspiration for computing Selfassembly Molecular computing devices Fault tolerance Computing in 3D Multivalued processing COMPUTATIONAL NANOSTRUCTURES Introduction Theoretical background Analysis and synthesis Implementation technologies Predictable technologies Nanoelectronic networks Switchbased 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 Radixcomplement representations Conversion of numbers in various radices Overflow Implementation of binary arithmetic Other binary codes Further study RESIDUE ARITHMETIC Introduction Residue arithmetic Further study GRAPHBASED DATA STRUCTURES Introduction Graphs in discrete device and system design Basic definitions Treelike 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 Kmap 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 Kmaps 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 multioutput 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 Flipflops 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 flipflops Techniques for the synthesis of sequential networks Redesign Further study MEMORY DEVICES FOR BINARY DATA Introduction Programmable devices Randomaccess memory Readonly 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 Nhypercube Embedding a binary decision tree into an Nhypercube Assembling Nhypercubes Representation of Nhypercubes using Htree 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 wordlevel representation of multivalued functions using logic operations 3D computing arrays design Further study INFORMATION AND DATA STRUCTURES Introduction Informationtheoretical measures Informationtheoretical measures Information measures of elementary switching function of two variables Informationtheoretical measures in decision trees Informationtheoretical measures in multivalued functions Ternary and pseudoternary 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 Selfassembling Fractalbased models for selfassembly Logic network design using directed evolution Neuralbased computing Further study INDEX 

