Muutke küpsiste eelistusi

Fundamentals of Digital Logic and Microcontrollers 6th edition [Kõva köide]

(Professor, California State Polytechnic University)
  • Formaat: Hardback, 512 pages, kõrgus x laius x paksus: 262x185x33 mm, kaal: 1034 g
  • Ilmumisaeg: 17-Oct-2014
  • Kirjastus: John Wiley & Sons Inc
  • ISBN-10: 1118855795
  • ISBN-13: 9781118855799
  • Formaat: Hardback, 512 pages, kõrgus x laius x paksus: 262x185x33 mm, kaal: 1034 g
  • Ilmumisaeg: 17-Oct-2014
  • Kirjastus: John Wiley & Sons Inc
  • ISBN-10: 1118855795
  • ISBN-13: 9781118855799
Updated to reflect the latest advances in the field, the Sixth Edition of Fundamentals of Digital Logic and Microcontrollers further enhances its reputation as the most accessible introduction to the basic principles and tools required in the design of digital systems.

Features updates and revision to more than half of the material from the previous edition Offers an all-encompassing focus on the areas of computer design, digital logic, and digital systems, unlike other texts in the marketplace Written with clear and concise explanations of fundamental topics such as number system and Boolean algebra, and simplified examples and tutorials utilizing the PIC18F4321 microcontroller Covers an enhanced version of both combinational and sequential logic design, basics of computer organization, and microcontrollers
Preface xiii
1 Introduction To Digital Systems
1(24)
1.1 Explanation of Terms
2(4)
1.2 Design Levels
6(1)
1.3 Combinational and Sequential Circuits
7(1)
1.4 Digital Integrated Circuits
7(11)
1.4.1 Diodes
7(1)
1.4.2 Transistors
8(6)
1.4.3 MOS Transistors
14(4)
1.5 Integrated Circuits (ICs)
18(1)
1.6 CAD (Computer-Aided Design)
19(1)
1.7 Evolution of the Microcontroller
20(1)
1.8 Typical Microcontroller Applications
21(4)
1.8.1 A Simple Microcontroller Application
22(1)
1.8.2 Embedded Controllers
23(2)
2 Number Systems And Codes
25(34)
2.1 Number Systems
25(5)
2.1.1 General Number Representation
25(3)
2.1.2 Converting Numbers from One Base to Another
28(2)
2.2 Unsigned and Signed Binary Numbers
30(4)
2.3 Codes
34(6)
2.3.1 Binary-Coded-Decimal Code (8421 Code)
34(1)
2.3.2 Alphanumeric Codes
35(1)
2.3.3 Excess-3 Code
36(1)
2.3.4 Gray Code
37(2)
2.3.5 Unicode
39(1)
2.4 Fixed-Point and Floating-Point Representations
40(1)
2.5 Arithmetic Operations
41(12)
2.5.1 Binary Arithmetic
41(10)
2.5.2 BCD Arithmetic
51(2)
2.6 Error Correction and Detection
53(6)
Questions and Problems
55(4)
3 Boolean Algebra And Digital Logic Gates
59(50)
3.1 Basic Logic Operations
59(5)
3.1.1 NOT Operation
59(1)
3.1.2 OR operation
60(2)
3.1.3 AND operation
62(2)
3.2 Other Logic Operations
64(3)
3.2.1 NOR operation
64(1)
3.2.2 NAND operation
64(1)
3.2.3 Exclusive-OR operation (XOR)
65(1)
3.2.4 Exclusive-NOR Operation (XNOR)
66(1)
3.3 IEEE Symbols for Logic Gates
67(1)
3.4 Positive and Negative Logic
68(1)
3.5 Boolean Algebra
69(7)
3.5.1 Boolean Identities
70(2)
3.5.2 Simplification Using Boolean Identities
72(2)
3.5.3 Consensus Theorem
74(1)
3.5.4 Complement of a Boolean Function
75(1)
3.6 Standard Representations
76(4)
3.7 Karnaugh Maps
80(16)
3.7.1 Two-Variable K-map
81(1)
3.7.2 Three-Variable K-map
82(3)
3.7.3 Four-Variable K-map
85(2)
3.7.4 Prime Implicants
87(2)
3.7.5 Expressing a Boolean function in Product-of-sums (POS) form using a K-map
89(2)
3.7.6 Don't Care Conditions
91(4)
3.7.7 Five-Variable K-map
95(1)
3.8 Quine-McCluskey Method
96(1)
3.9 Implementation of Digital Circuits with NAND, NOR, and Exclusive-OR/Exclusive-NOR Gates
97(12)
3.9.1 NAND Gate Implementation
98(1)
3.9.2 NOR Gate Implementation
99(3)
3.9.3 XOR / XNOR Implementations
102(4)
Questions and Problems
106(3)
4 Combinational Logic
109(64)
4.1 Basic Concepts
109(1)
4.2 Analysis of a Combinational Logic Circuit
109(1)
4.3 Design of a Combinational Circuit
110(2)
4.4 Multiple-Output Combinational Circuits
112(2)
4.5 Typical Combinational Circuits
114(22)
4.5.1 Comparators
114(4)
4.5.2 Decoders
118(4)
4.5.3 Encoders
122(5)
4.5.4 Multiplexers
127(2)
4.5.5 Demultiplexers
129(1)
4.5.6 Binary / BCD Adders and Binary Subtractors
129(7)
4.6 IEEE Standard Symbols
136(2)
4.7 Read-Only Memories (ROMs)
138(2)
4.8 Programmable Logic Devices (PLDs)
140(4)
4.9 Commercially Available Field Programmable Devices (FPDs)
144(2)
4.10 Hardware Description Language (HDL)
146(2)
4.11 Verilog basics
148(7)
4.11.1 Verilog keywords
148(1)
4.11.2 A typical Verilog Segment
148(3)
4.11.3 Verilog operators
151(1)
4.11.4 Verilog Constants
152(1)
4.11.5 Modeling logical conditions in a circuit
152(1)
4.11.6 Verilog if-else and case-endcase structures
153(1)
4.11.7 A typical Verilog Simulator
153(2)
4.12 Verilog modeling examples for combinational circuits
155(18)
4.12.1 Structural modeling
155(6)
4.12.2 Dataflow modeling
161(2)
4.12.3 Behavioral modeling
163(5)
Questions and Problems
168(5)
5 Sequential Logic
173(70)
5.1 Basic Concepts
173(1)
5.2 Latches and Flip-Flops
173(8)
5.2.1 SR Latch
174(2)
5.2.2 Gated SR Latch
176(1)
5.2.3 Gated D Latch
176(1)
5.2.4 Edge-Triggered D Flip-Flop
177(3)
5.2.5 JK Flip-Flop
180(1)
5.2.6 T Flip-Flop
181(1)
5.3 Flip-flop timing parameters for edge-triggered flip-flops
181(1)
5.4 Preset and Clear Inputs
182(1)
5.5 Summary of the gated SR latch and the Flip-Flops
182(3)
5.6 Analysis of Synchronous Sequential Circuits
185(3)
5.7 Types of Synchronous Sequential Circuits
188(1)
5.8 Minimization of States
188(2)
5.9 Design of Synchronous Sequential Circuits
190(6)
5.10 Design of Counters
196(5)
5.11 Examples of Synchronous Sequential Circuits
201(6)
5.11.1 Registers
201(2)
5.11.2 Modulo-n Counters
203(3)
5.11.3 Random-Access Memory (RAM)
206(1)
5.12 Algorithmic State Machines (ASM) Chart
207(7)
5.13 Asynchronous Sequential Circuits
214(3)
5.14 Verilog description of typical synchronous sequential circuits
217(26)
Questions and Problems
235(8)
6 CPU, Memory, And I/O
243(74)
6.1 Design of the CPU
243(37)
6.1.1 Register Design
244(1)
6.1.2 Arithmetic Logic Unit (ALU)
244(11)
6.1.3 ALU Design
255(2)
6.1.4 Control Unit Design
257(23)
6.2 Memory Organization
280(10)
6.2.1 Types of Main memory
283(2)
6.2.2 Read and Write Timing Diagrams
285(2)
6.2.3 Main Memory Organization
287(3)
6.3 Input/Output (I/O)
290(6)
6.3.1 Simple I/O Devices
292(1)
6.3.2 Programmed I/O
293(2)
6.3.3 Interrupt I/O
295(1)
6.4 CPU design using Verilog
296(21)
Questions and Problems
309(8)
7 Microcontroller Basics
317(28)
7.1 Basic Blocks of a Microcontroller
317(3)
7.1.1 System Bus
318(1)
7.1.2 Clock Signals
319(1)
7.2 Microcontroller Architectures
320(1)
7.3 Basic Concept of Pipelining
321(2)
7.4 RISC vs. CISC
323(1)
7.5 Functional Representation of a Typical RISC Microcontroller---The PIC18F4321
324(1)
7.6 Basics of Programming Languages
324(4)
7.6.1 Machine Language
326(1)
7.6.2 Assembly Language
327(1)
7.6.3 High-Level Language
327(1)
7.7 Choosing a Programming Language
328(1)
7.8 Introduction to C Language
329(16)
7.8.1 Data Types
332(1)
7.8.2 Bit Manipulation Operators
333(1)
7.8.3 Control Structures
334(4)
7.8.4 The switch Construct
338(1)
7.8.5 The while Construct
338(2)
7.8.6 The for Construct
340(1)
7.8.7 The do-while Construct
341(1)
7.8.8 Structures and Unions
341(1)
7.8.9 Functions in C
342(1)
7.8.10 Macros
343(1)
Questions and Problems
344(1)
8 PIC18F Hardware And Interfacing Using C: Part 1
345(28)
8.1 PIC18F Pins and Signals
345(6)
8.1.1 Clock
346(4)
8.1.2 PIC18F Reset
350(1)
8.1.3 A Simplified Setup for the PIC18F4321
350(1)
8.2 PIC18F4321 programmed I/O using C
351(8)
8.2.1 PIC 18F4321 I/O ports
351(3)
8.2.2 Interfacing LEDs (Light Emitting Diodes) and Seven-segment Displays
354(1)
8.2.3 Microchip MPLAB C18 compiler and the PICkit3 interface
355(1)
8.2.4 Configuration commands
356(3)
8.3 PIC18F Interrupts
359(14)
8.3.1 PIC18F Interrupt Types
359(1)
8.3.2 PIC18F External Interrupts in Default Mode
359(2)
8.3.3 Interrupt Registers and Priorities
361(1)
8.3.4 Setting the Triggering Levels of INTn Pin Interrupts
362(1)
8.3.5 Programming the PIC18 interrupts using C
363(6)
Questions and Problems
369(4)
9 PIC18F Hardware And Interfacing Using C: Part 2
373(56)
9.1 PIC18F Timers
373(17)
9.1.1 Timer0
375(3)
9.1.2 Timer1
378(4)
9.1.3 Timer2
382(2)
9.1.4 Timer3
384(6)
9.2 PIC18F Interface to an LCD (Liquid Crystal Display)
390(4)
9.3 Analog Interface
394(11)
9.3.1 On-chip A/D Converter
395(8)
9.3.2 Interfacing an External D/A (Digital-to-Analog) Converter to the PIC18F4321
403(2)
9.4 Serial Interface
405(8)
9.4.1 Synchronous Serial Data Transmission
405(1)
9.4.2 Asynchronous Serial Data Transmission
405(1)
9.4.3 PIC18F Serial I/O
406(7)
9.5 PIC18F4321 Capture/Compare/PWM (CCP) Modules
413(6)
9.5.1 CCP Registers
413(1)
9.5.2 CCP Modules and Associated Timers
413(1)
9.5.3 PIC18F4321 Capture Mode
413(3)
9.5.4 PIC18F4321 Compare Mode
416(1)
9.5.5 PIC18F4321 PWM (Pulse Width Modulation) Mode
417(2)
9.6 DC Motor Control
419(10)
Questions And Problems
425(4)
APPENDIX A Answers To Selected Problems
429(10)
APPENDIX B Glossary
439(12)
APPENDIX C Tutorial For Compiling And Debugging A C-Program Using The MPLAB
451(28)
APPENDIX D Interfacing The PIC18F4321 To A Personal Computer Or A Laptop Using PICkit™3
479(6)
D.1 Initial Hardware Setup For The PIC18F4321
479(1)
D.2 Connecting The Personal Computer (PC) Or The Laptop To The PIC18F4321 VIA PICkit3
480(2)
D.3 Programming The PICI8F4321 From A Personal Computer Or A Laptop Using The PICkit3
482(3)
Bibliography 485(2)
Credits 487(2)
Index 489
M. RAFIQUZZAMAN is Professor of Electrical and Computer Engineering at California State Polytechnic University, Pomona. Dr. Rafiquzzaman is the founder of Rafi Systems, Inc., a manufacturer of biomedical devices and a computer systems consulting firm in California.