Engineering Digital Design: Revised

Tinder, Richard F.

In stock
Regular price 57.500 KD inc. VAT
License
Table of contents
  • Cover
  • Contentsix
  • Prefacexix
  • Chapter 1. Introductory Remarks and Glossary1
  • 1.1 What Is So Special about Digital Systems?1
  • 1.2 The Year 2000 and Beyond?3
  • 1.3 A Word of Warning5
  • 1.4 Glossary of Terms, Expressions, and Abbreviations5
  • Chapter 2. Number Systems, Binary Arithmetic, and Codes31
  • 2.1 Introduction31
  • 2.2 Positional and Polynomial Representations32
  • 2.3 Unsigned Binary Number System33
  • 2.4 Unsigned Binary Coded Decimal, Hexadecimal, and Octal34
  • 2.5 Conversion between Number Systems37
  • 2.6 Signed Binary Numbers43
  • 2.7 Excess (Offset) Representations49
  • 2.8 Floating-Point Number Systems49
  • 2.9 Binary Arithmetic52
  • 2.10 Other Codes68
  • Further Reading72
  • Problems72
  • Chapter 3. Background for Digital Design79
  • 3.1 Introduction79
  • 3.2 Binary State Terminology and Mixed Logic Notation79
  • 3.3 Introduction to CMOS Terminology and Symbology82
  • 3.4 Logic Level Conversion: The Inverter83
  • 3.5 Transmission Gates and Tri-State Drivers84
  • 3.6 AND and OR Operators and Their Mixed-Logic Circuit Symbology87
  • 3.7 Logic Level Incompatibility: Complementation95
  • 3.8 Reading and Construction of Mixed-Logic Circuits97
  • 3.9 XOR and EQV Operators and Their Mixed-Logic Circuit Symbology98
  • 3.10 Laws of Boolean Algebra105
  • 3.11 Laws of XOR Algebra111
  • 3.12 Worked Examples116
  • Further Reading120
  • Problems121
  • Chapter 4. Logic Function Representation and Minimization131
  • 4.1 Introduction131
  • 4.2 SOP and POS Forms131
  • 4.3 Introduction to Logic Function Graphics137
  • 4.4 Karnaugh Map Function Minimization144
  • 4.5 Multiple Output Optimization152
  • 4.6 Entered Variable K-map Minimization158
  • 4.7 Function Reduction of Five or More Variables165
  • 4.8 Minimization Algorithms and Application169
  • 4.9 Factorization, Resubstitution, and Decomposition Methods174
  • 4.10 Design Area vs Performance180
  • 4.11 Perspective on Logic Minimization and Optimization181
  • 4.12 Worked EV K-map Examples181
  • Further Reading188
  • Problems189
  • Chapter 5. Function Minimization by Using K-map XOR Patterns and Reed–Muller Transformation Forms197
  • 5.1 Introduction197
  • 5.2 XOR-Type Patterns and Extraction of Gate-Minimum Cover from EV K-maps198
  • 5.3 Algebraic Verification of Optimal XOR Function Extraction from K-maps204
  • 5.4 K-map Plotting and Entered Variable XOR Patterns205
  • 5.5 The SOP-to-EXSOP Reed–Muller Transformation207
  • 5.6 The POS-to-EQPOS Reed–Muller Transformation208
  • 5.7 Examples of Minimum Function Extraction209
  • 5.8 Heuristics for CRMT Minimization217
  • 5.9 Incompletely Specified Functions218
  • 5.10 Multiple Output Functions with Don’t Cares222
  • 5.11 K-map Subfunction Partitioning for Combined CRMT and Two-Level Minimization225
  • 5.12 Perspective on the CRMT and CRMT/Two-Level Minimization Methods229
  • Further Reading229
  • Problems230
  • Chapter 6. Nonarithmetic Combinational Logic Devices237
  • 6.1 Introduction and Background237
  • 6.2 Multiplexers242
  • 6.3 Decoders/Demultiplexers248
  • 6.4 Encoders254
  • 6.5 Code Converters257
  • 6.6 Magnitude Comparators265
  • 6.7 Parity Generators and Error Checking Systems273
  • 6.8 Combinational Shifters275
  • 6.9 Steering Logic and Tri-State Gate Applications278
  • 6.10 Introduction to VHDL Description of Combinational Primitives279
  • Further Reading287
  • Problems288
  • Chapter 7. Programmable Logic Devices295
  • 7.1 Introduction295
  • 7.2 Read-Only Memories295
  • 7.3 Programmable Logic Arrays301
  • 7.4 Programmable Array Logic Devices307
  • 7.5 Mixed-Logic Inputs to and Outputs from ROMs, PLAs, and PAL Devices310
  • 7.6 Multiple PLD Schemes for Augmenting Input and Output Capability312
  • 7.7 Introduction to FPGAs and Other General-Purpose Devices317
  • 7.8 CAD Help in Programming PLD Devices328
  • Further Reading330
  • Problems331
  • Chapter 8. Arithmetic Devices and Arithmetic Logic Units (ALUs)335
  • 8.1 Introduction335
  • 8.2 Binary Adders335
  • 8.3 Binary Subtractors340
  • 8.4 The Carry Look-Ahead Adder345
  • 8.5 Multiple-Number Addition and the Carry-Save Adder349
  • 8.6 Multipliers350
  • 8.7 Parallel Dividers353
  • 8.8 Arithmetic and Logic Units357
  • 8.9 Dual-Rail Systems and ALUs with Completion Signals369
  • 8.10 VHDL Description of Arithmetic Devices380
  • Further Reading383
  • Problems385
  • Chapter 9. Propagation Delay and Timing Defects in Combinational Logic391
  • 9.1 Introduction391
  • 9.2 Static Hazards in Two-Level Combinational Logic Circuits392
  • 9.3 Detection and Elimination Hazards in Multilevel XOR-Type Functions399
  • 9.4 Function Hazards412
  • 9.5 Stuck-at Faults and the Effect of Hazard Cover on Fault Testability412
  • Further Reading413
  • Problems415
  • Chapter 10. Introduction to Synchronous State Machine Design and Analysis419
  • 10.1 Introduction419
  • 10.2 Models for Sequential Machines421
  • 10.3 The Fully Documented State Diagram: The Sum Rule424
  • 10.4 The Basic Memory Cells428
  • 10.5 Introduction to Flip-Flops436
  • 10.6 Procedure for FSM (Flip-Flop) Design and the Mapping Algorithm440
  • 10.7 The D Flip-Flops: General444
  • 10.8 Flip-Flop Conversion: The T, JK Flip-Flops and Miscellaneous Flip-Flops450
  • 10.9 Latches and Flip-Flops with Serious Timing Problems: A Warning461
  • 10.10 Asynchronous Preset and Clear Overrides463
  • 10.11 Setup and Hold-Time Requirements of Flip-Flops465
  • 10.12 Design of Simple Synchronous State Machines with Edge-Triggered Flip- Flops: Map Conversion466
  • 10.13 Analysis of Simple State Machines476
  • 10.14 VHDL Description of Simple State Machines480
  • Further Reading482
  • Problems483
  • Chapter 11. Synchronous FSM Design Considerations and Applications491
  • 11.1 Introduction491
  • 11.2 Detection and Elimination of Output Race Glitches491
  • 11.3 Detection and Elimination of Static Hazards in the Output Logic499
  • 11.4 Asynchronous Inputs: Rules and Caveats510
  • 11.5 Clock Skew517
  • 11.6 Clock Sources and Clock Signal Specifications520
  • 11.7 Initialization and Reset of the FSM: Sanity Circuits522
  • 11.8 Switch Debouncing Circuits526
  • 11.9 Applications to the Design of More Complex State Machines530
  • 11.10 Algorithmic State Machine Charts and State Tables536
  • 11.11 Array Algebraic Approach to Logic Design542
  • 11.12 State Minimization547
  • Further Reading549
  • Problems551
  • Chapter 12. Module and Bit-Slice Devices561
  • 12.1 Introduction561
  • 12.2 Registers561
  • 12.3 Synchronous Binary Counters572
  • 12.4 Shift-Register Counters590
  • 12.5 Asynchronous (Ripple) Counters600
  • Further Reading605
  • Problems606
  • Chapter 13. Alternative Synchronous FSM Architectures and Systems-Level Design613
  • 13.1 Introduction613
  • 13.2 Architecture Centered around Nonregistered PLDs614
  • 13.3 State Machine Designs Centered around a Shift Register626
  • 13.4 State Machine Designs Centered around a Parallel Loadable Up/Down Counter632
  • 13.5 The One-Hot Design Method636
  • 13.6 System-Level Design: Controller, Data Path, and Functional Partition649
  • 13.7 Dealing with Unusually Large Controller and System-Level Designs666
  • Further Reading668
  • Problems670
  • Chapter 14. Asynchronous State Machine Design and Analysis: Basic Concepts683
  • 14.1 Introduction683
  • 14.2 The Lumped Path Delay Models for Asynchronous FSMs685
  • 14.3 Functional Relationships and the Stability Criteria687
  • 14.4 The Excitation Table for the LPD Model688
  • 14.5 State Diagrams, K-maps, and State Tables for Asynchronous FSMs689
  • 14.6 Design of the Basic Cells by Using the LPD Model692
  • 14.7 Design of the Rendezvous Modules by Using the Nested Cell Model695
  • 14.8 Design of the RET D Flip-Flop by Using the LPD Model698
  • 14.9 Design of the RET JK Flip-Flop by Flip-Flop Conversion700
  • 14.10 Detection and Elimination of Timing Defects in Asynchronous FSMs701
  • 14.11 Initialization and Reset of Asynchronous FSMs719
  • 14.12 Single-Transition-Time Machines and the Array Algebraic Approach720
  • 14.13 Hazard-Free Design of Fundamental Mode State Machines by Using the Nested Cell Approach730
  • 14.14 One-Hot Design of Asynchronous State Machines734
  • 14.15 Perspective on State Code Assignments of Fundamental Mode FSMs738
  • 14.16 Design of Fundamental Mode FSMs by Using PLDs740
  • 14.17 Analysis of Fundamental Mode State Machines741
  • Further Reading758
  • Problems759
  • Chapter 15. The Pulse Mode Approach to Asynchronous FSM Design773
  • 15.1 Introduction773
  • 15.2 Pulse Mode Models and System Requirements773
  • 15.3 Other Characteristics of Pulse Mode FSMs777
  • 15.4 Design Examples779
  • 15.5 Analysis of Pulse Mode FSMs788
  • 15.6 Perspective on the Pulse Mode Approach to FSM Design795
  • Further Reading796
  • Problems797
  • Chapter 16. Externally Asynchronous/Internally Clocked (Pausable) Systems and Programmable Asynchron805
  • 16.1 Introduction805
  • 16.2 Externally Asynchronous/Internally Clocked Systems and Applications806
  • 16.3 Asynchronous Programmable Sequencers823
  • 16.4 One-Hot Programmable Asynchronous Sequencers835
  • 16.5 Epilogue to Chapter 16842
  • Further Reading842
  • Problems844
  • A Other Transistor Logic Families849
  • A.1 Introduction to the Standard NMOS Logic Family849
  • A.2 Introduction to the TTL Logic Family850
  • A.3 Performance Characteristics of Important IC Logic Families852
  • Further Reading852
  • B Computer-Aided Engineering Tools855
  • B.1 Productivity Tools Bundled with this Text855
  • B.2 Other Productivity Tools856
  • Further Reading
  • C IEEE Standard Symbols859
  • C.1 Gates859
  • C.2 Combinational Logic Devices859
  • C.3 Flip-Flops, Registers, and Counters860
  • Further Reading862
  • Index863
Book details
  • Vendor Elsevier S & T
  • SKU 9780126912951
  • ISBN-13 9780080505657
  • Author Tinder, Richard F.
  • Edition 2nd
  • Category Technology & Engineering
  • Subject Digital

Do you have questions about this book?

Ask an expert!

Engineering Digital Design, Second Edition provides the most extensive coverage of any available textbook in digital logic and design. The new REVISED Second Edition published in September of 2002 provides 5 productivity tools free on the accompanying CD ROM. This software is also included on the Instructor's Manual CD ROM and complete instructions accompany each software program.

In the REVISED Second Edition modern notation combines with state-of-the-art treatment of the most important subjects in digital design to provide the student with the background needed to enter industry or graduate study at a competitive level. Combinatorial logic design and synchronous and asynchronous sequential machine design methods are given equal weight, and new ideas and design approaches are explored.

The productivity tools provided on the accompanying CD are outlined below:
[1] EXL-Sim2002 logic simulator: EXL-Sim2002 is a full-featured, interactive, schematic-capture and simulation program that is ideally suited for use with the text at either the entry or advanced-level of logic design. Its many features include drag-and-drop capability, rubber banding, mixed logic and positive logic simulations, macro generation, individual and global (or randomized) delay assignments, connection features that eliminate the need for wire connections, schematic page sizing and zooming, waveform zooming and scrolling, a variety of printout capabilities, and a host of other useful features.

[2] BOOZER logic minimizer: BOOZER is a software minimization tool that is recommended for use with the text. It accepts entered variable (EV) or canonical (1's and 0's) data from K-maps or truth tables, with or without don't cares, and returns an optimal or near optimal single or multi-output solution. It can handle up to 12 functions Boolean functions and as many inputs when used on modern computers.

[3] ESPRESSO II logic minimizer: ESPRESSO II is another software minimization tool widely used in schools and industry. It supports advanced heuristic algorithms for minimization of two-level, multi-output Boolean functions but does not accept entered variables. It is also readily available from the University of California, Berkeley, 1986 VLSI Tools Distribution.

[4] ADAM design software: ADAM (for Automated Design of Asynchronous Machines) is a very powerful productivity tool that permits the automated design of very complex asynchronous state machines, all free of timing defects. The input files are state tables for the desired state machines. The output files are given in the Berkeley format appropriate for directly programming PLAs. ADAM also allows the designer to design synchronous state machines, timing-defect-free. The options include the lumped path delay (LPD) model or NESTED CELL model for asynchronous FSM designs, and the use of D FLIP-FLOPs for synchronous FSM designs. The background for the use of ADAM is covered in Chapters 11, 14 and 16 of the REVISED 2nd Edition.

[5] A-OPS design software: A-OPS (for Asynchronous One-hot Programmable Sequencers) is another very powerful productivity tool that permits the design of asynchronous and synchronous state machines by using a programmable sequencer kernel. This software generates a PLA or PAL output file (in Berkeley format) or the VHDL code for the automated timing-defect-free designs of the following: (a) Any 1-Hot programmable sequencer up to 10 states. (b) The 1-Hot design of multiple asynchronous or synchronous state machines driven by either PLDs or RAM. The input file is that of a state table for the desired state machine. This software can be used to design systems with the capability of instantly switching between several radically different controllers on a
time-shared basis. The background for the use of A-OPS is covered in Chapters 13, 14 and 16 of the REVISED 2nd Edition.