ebook img

Electronic devices and amplifier circuits with MATLAB applications PDF

448 Pages·2005·10.56 MB·English
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Electronic devices and amplifier circuits with MATLAB applications

Digital Circuit Analysis and Design with an Introduction to CPLDs and FPGAs Steven T. Karris Editor A AB AB A AB B B A A A+B A A+B B B B S SETQ J SETQ DSETQ RCLRQ KCLRQ CLRQ Orchard Publications www.orchardpublications.com Digital Circuit Students and working professionals will find Digital Circuit Analysis and Design with Analysis and Design an Introduction to CPLDs and FPGAs, to be a concise and easy-to-learn text. It pro- with an Introduction to CPLDs & FPGAs vides complete, clear, and detailed expla- nations of the state-of-the-art electronic digital circuits. All topics are illustrated with many real-world examples. This text includes the following chapters and appendices: • Common Number Systems and Conversions • Operations in Binary, Octal, and Hexadecimal Systems • Sign Magnitude and Floating Point Arithmetic • Binary Codes • Fundamentals of Boolean Algebra • Minterms and Maxterms • Combinational Logic Circuits • Sequential Logic Circuits • Memory Devices • Advanced Arithmetic and Logic Operations • Introduction to Field Programmable Devices • Introduction to the ABELHardware Description Language • Introduction to VHDL• Introduction to Verilog • Introduction to Boundary-Scan Architecture Each chapter contains numerous practical applications. This is a design-oriented text. Steven T. Karris is the president and founder of Orchard Publications. He earned a bachelors degree in electrical engineering at Christian Brothers University, Memphis, Tennessee, a masters degree in electrical engineering at Florida Institute of Technology, Melbourne, Florida, and has done post-master work at the latter. He is a registered professional engineer in California and Florida. He has over 35 years of professional engineering experience in industry. In addition, he has over 30 years of teaching experience that he acquired at several educational institutions as an adjunct pro- fessor. He was formerly with UC Berkeley Extension. Orchard Publications Visit us on the Internet www.orchardpublications.com or email us: [email protected] ISBN 0-9744239-5-5 $49.95 U.S.A. Digital Circuit Design with an Introduction to CPLDs and FPGAs Steven T. Karris Editor Orchard Publications www.orchardpublications.com Digital Circuit Design with an Introduction to CPLDs and FPGAs Copyright ” 2005 Orchard Publications. All rights reserved. Printed in the United States of America. No part of this publication may be reproduced or distributed in any form or by any means, or stored in a data base or retrieval system, without the prior written permission of the publisher. Direct all inquiries to Orchard Publications, [email protected] Product and corporate names are trademarks or registered trademarks of Xilinx, Inc., Altera, Inc. Cypress Semiconductor, Lattice, Inc., and Atmel, Inc. They are used only for identification and explanation, without intent to infringe. Library of Congress Cataloging-in-Publication Data Library of Congress Control Number (LCCN) 2005929326 Copyright TX 5-612-942 ISBN 0-9744239-5-5 Disclaimer The author has made every effort to make this text as complete and accurate as possible, but no warranty is implied. The author and publisher shall have neither liability nor responsibility to any person or entity with respect to any loss or damages arising from the information contained in this text. Preface This book is an undergraduate level textbook presenting a thorough discussion of state-of-the-art digital devices and circuits. It supplements our Electronic Devices and Amplifier Circuits, ISBN 0- 9744239-4-7. It is self-contained; begins with the basics and ends with the latest developments of the digital technology. The intent is to prepare the reader for advanced digital circuit design and programming the powerful Complex Programmable Logic Devices (CPLDs), and Field Programmable Gate Arrays (FPGAs). The prerequisites for this text are just basic high-school math; Accordingly, it can be read and understood by high-school seniors, trade-school, community college, and 4-year university students. It is ideal for self-study. The author and contributors make no claim to originality of content or of treatment, but have taken care to present definitions, statements of physical laws, theorems, and problems. Chapter 1 is an introduction to the decimal, binary, octal, and hexadecimal numbers, their representation, and conversion from one base to another. Chapter 2 presents an introduction to arithmetic operations in binary, octal, and hexadecimal numbers. The tens complement and nines complements in the decimal system and the twos complement and ones complements in the binary system are discussed and illustrated with numerous examples. Chapter 3 begins with an introduction to sign magnitude representation of binary numbers. It concludes with a discussion on floating point arithmetic for representing large numbers and the IEEE standard that specifies single precision (32 bit) and double precision (64 bit) floating point representation of numbers. Chapter 4 describes the most commonly used binary codes. The Binary Coded Decimal (BCD), the Excess-3 Code, the 2*421 Code, the Gray Code, and the American Standard Code for Information Interchange (ASCII) code are introduced as well as the use of parity bits. Chapter 5 begins with the basic logic operations and continues with the fundamentals of Boolean algebra and the basic postulates and theorems as applied to electronic logic circuits. Truth tables are defined and examples are given to illustrate how they can be used to prove Boolean algebra theorems or equivalent logical expressions. Chapter 6 introduces the standard forms of expressing Boolean functions; the minterms and maxterms, also known as standard products and standard sums respectively. A procedure is also presented to show how one can convert one form to the other. This topic is essential in understanding the programming of Programmable Logic Arrays (PLAs) discussed in Chapter 11. Chapter 7 is an introduction to combinational logic circuits. It begins with methods of implementing logic diagrams from Boolean expressions, the derivation of Boolean expressions from logic diagrams, input and output waveforms, and the use of Karnaugh maps for simplifying Boolean expressions. Chapter 8 is an introduction to sequential logic circuits. It begins with a discussion of the different types of flip flops, and continues with the analysis and design of binary counters, registers, ring counters, and ring oscillators. Chapter is an introduction to computer memory devices. We discuss the random-access memory (RAM), read-only memory (ROM), row and column decoders, memory chip organization, static RAMs (SRAMs) dynamic RAMs (DRAMs), volatile, nonvolatile, programmable ROMs (PROMs), Erasable PROMs (EPROMs), Electrically Erasable PROMs (EEPROMs), flash memories, and cache memory. Chapter 10 begins with an introduction to the basic components of a digital computer. It continues with a discussion of the basic microprocessor operations, and concludes with the description of more advanced arithmetic and logic operations. We consider Chapter 11 as the highlight of this text. It is an introduction to Field Programmable Devices (FPDs), also referred to as Programmable Logic Devices (PLDs). It begins with the description and applications of Programmable Logic Arrays (PLAs), continues with the description of Simple PLDs (SPLDs) and Complex PLDs (CPLDs), and concludes with the description of Field Programmable Gate Arrays (FPGAs). This text includes also four appendices; Appendix A is an overview of the Advanced Boolean Equation Language (ABEL) which is an industry-standard Hardware Description Language (HDL) used in Programmable Logic Devices (PLDs). Appendix B describes the VHSIC Hardware Description Language briefly referred to as VHDL. This language was developed to be used for documentation, verification, and synthesis of large digital designs. Appendix C introduces the Verilog Hardware Description Language (HDL). Like VHDL introduced in Appendix B, Verilog is a programming language used to describe a digital system and its components. Appendix D is a brief discussion on the boundary-scan architecture and the new technology trends that make using boundary-scan essential for the reduction in development and production costs. This is our eighth science and electrical and computer engineering-related text. My associates, contributors, and I have a mission to produce substance and yet inexpensive texts for the average reader. Our texts are very popular with students and working professionals seeking to enhance their knowledge and prepare for the professional engineering examination. We are working with limited resources and our small profits realized after large discounts to the bookstores and distributors, are reinvested in the production of more texts. To maintain our retail prices as low as possible, we avoid expensive and fancy hardcovers. Like any other new text, the readers will probably find some mistakes and typo errors for which we assume responsibility. We will be grateful to readers who direct these to our attention at [email protected]. Thank you. Orchard Publications Fremont, California 94538-4741 United States of America www.orchardpublications.com [email protected] Table of Contents Chapter 1 Common Number Systems and Conversions Decimal, Binary, Octal, and Hexadecimal Systems......................................................................1-1 Binary, Octal, and Hexadecimal to Decimal Conversions...........................................................1-3 Decimal to Binary, Octal, and Hexadecimal Conversions...........................................................1-3 Binary-Octal-Hexadecimal Conversions......................................................................................1-7 Summary.......................................................................................................................................1-9 Exercises......................................................................................................................................1-11 Solutions to End-of-Chapter Exercises.......................................................................................1-12 Chapter 2 Operations in Binary, Octal, and Hexadecimal Systems Binary System Operations.............................................................................................................2-1 Octal System Operations..............................................................................................................2-2 Hexadecimal System Operations..................................................................................................2-5 Complements of Numbers.............................................................................................................2-6 Tens-Complement........................................................................................................................2-7 Nines-Complement.......................................................................................................................2-7 Twos-Complement........................................................................................................................2-8 Ones-Complement........................................................................................................................2-9 Subtraction with Tens- and Twos-Complements.......................................................................2-10 Subtraction with Nines- and Ones-Complements......................................................................2-11 Summary.....................................................................................................................................2-14 Exercises......................................................................................................................................2-16 Solutions to End-of-Chapter Exercises.......................................................................................2-18 Chapter 3 Sign Magnitude and Floating Point Arithmetic Signed Magnitude of Binary Numbers..........................................................................................3-1 Floating Point Arithmetic.............................................................................................................3-2 The IEEE Single Precision Floating Point Arithmetic..................................................................3-3 The IEEE Double Precision Floating Point Arithmetic................................................................3-7 Summary.......................................................................................................................................3-9 Exercises......................................................................................................................................3-10 Solutions to-End-of-Chapter Exercises.......................................................................................3-11 Digital Circuit Design with an Introduction to CPLDs and FPGAs i Orchard Publications Chapter 4 Binary Codes Encoding.......................................................................................................................................4-1 Binary Coded Decimal (BCD).....................................................................................................4-1 The Excess-3 Code.......................................................................................................................4-2 The 2*421 Code...........................................................................................................................4-3 The Gray Code.............................................................................................................................4-4 The American Standard Code for Information Interchange (ASCII) Code...............................4-5 The Extended Binary Coded Decimal Interchange Code (EBCDIC).........................................4-8 Parity Bits......................................................................................................................................4-8 Error Detecting and Correcting Codes........................................................................................4-9 Cyclic Codes.................................................................................................................................4-9 Summary.....................................................................................................................................4-14 Exercises.....................................................................................................................................4-16 Solutions to End-of-Chapter Exercises......................................................................................4-17 Chapter 5 Fundamentals of Boolean Algebra Basic Logic Operations.................................................................................................................5-1 Fundamentals of Boolean Algebra...............................................................................................5-1 Postulates......................................................................................................................................5-1 Theorems......................................................................................................................................5-2 Truth Tables.................................................................................................................................5-3 Summary.......................................................................................................................................5-5 Exercises.......................................................................................................................................5-7 Solutions to End-of Chapter Exercises.........................................................................................5-8 Chapter 6 Minterms and Maxterms Minterms......................................................................................................................................6-1 Maxterms......................................................................................................................................6-2 Conversion from One Standard Form to Another......................................................................6-3 Properties of Minterms and Maxterms.........................................................................................6-4 Summary.......................................................................................................................................6-9 Exercises.....................................................................................................................................6-10 Solutions to End-of-Chapter Exercises......................................................................................6-12 ii Digital Circuit Design with an Introduction to CPLDs and FPGAs Orchard Publications Chapter 7 Combinational Logic Circuits Implementation of Logic Diagrams from Boolean Expressions...................................................7-1 Obtaining Boolean Expressions from Logic Diagrams.................................................................7-9 Input and Output Waveforms...................................................................................................7-11 Karnaugh Maps (K-maps)..........................................................................................................7-12 K-map of Two Variables............................................................................................................7-12 K-map of Three Variables..........................................................................................................7-14 K-map of Four Variables............................................................................................................7-14 General Procedures for Using a K-map of n Squares.................................................................7-16 Don’t Care Conditions...............................................................................................................7-20 Design of Common Logic Circuits.............................................................................................7-21 Parity Generators/Checkers.......................................................................................................7-21 Digital Encoders.........................................................................................................................7-23 Decimal-to-BCD Encoder..........................................................................................................7-26 Digital Decoders.........................................................................................................................7-28 Equality Comparators.................................................................................................................7-32 Multiplexers and Demultiplexers...............................................................................................7-36 Arithmetic Adder and Subtractor Logic Circuits......................................................................7-42 Summary....................................................................................................................................7-48 Exercises.....................................................................................................................................7-50 Solutions to End-of-Chapter Exercises......................................................................................7-53 Chapter 8 Sequential Logic Circuits Introduction to Sequential Circuits..............................................................................................8-1 Set-Reset (SR) Flip Flop...............................................................................................................8-1 Data (D) Flip Flop.........................................................................................................................8-4 JK Flip Flop...................................................................................................................................8-5 Toggle (T) Flip Flop......................................................................................................................8-6 Flip Flop Triggering.......................................................................................................................8-7 Edge-Triggered Flip Flops.............................................................................................................8-8 Master / Slave Flip Flops...............................................................................................................8-8 Conversion from One Type of Flip Flop to Another..................................................................8-11 Analysis of Synchronous Sequential Circuits.............................................................................8-13 Design of Synchronous Counters................................................................................................8-22 Registers......................................................................................................................................8-27 Ring Counters.............................................................................................................................8-32 Ring Oscillators...........................................................................................................................8-35 Digital Circuit Design with an Introduction to CPLDs and FPGAs iii Orchard Publications Summary.....................................................................................................................................8-36 Exercises.....................................................................................................................................8-39 Solutions to End-of-Chapter Exercises......................................................................................8-42 Chapter 9 Memory Devices Random-Access Memory (RAM)................................................................................................9-1 Read-Only Memory (ROM).........................................................................................................9-3 Programmable Read-Only Memory (PROM)..............................................................................9-6 Erasable Programmable Read-Only Memory (EPROM).............................................................9-7 Electrically-Erasable Programmable Read-Only Memory (EEPROM)........................................9-8 Flash Memory...............................................................................................................................9-8 Cache Memory.............................................................................................................................9-9 Virtual Memory............................................................................................................................9-9 Scratch Pad Memory..................................................................................................................9-10 Summary.....................................................................................................................................9-11 Exercises.....................................................................................................................................9-13 Solutions to End-of-Chapter Exercises......................................................................................9-14 Chapter 10 Advanced Arithmetic and Logic Operations Computers Defined....................................................................................................................10-1 Basic Digital Computer System Organization and Operation...................................................10-2 Parallel Adder.............................................................................................................................10-4 Serial Adder................................................................................................................................10-5 Overflow Conditions..................................................................................................................10-6 High-Speed Addition and Subtraction......................................................................................10-9 Binary Multiplication................................................................................................................10-10 Binary Division.........................................................................................................................10-13 Logic Operations of the ALU...................................................................................................10-14 Other ALU functions...............................................................................................................10-15 Summary...................................................................................................................................10-16 Exercises...................................................................................................................................10-18 Solutions to End-of-Chapter Exercises....................................................................................10-19 iv Digital Circuit Design with an Introduction to CPLDs and FPGAs Orchard Publications

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.