ebook img

Digital Logic for Computing PDF

324 Pages·2017·3.994 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 Digital Logic for Computing

John Seiff ertt Digital Logic for Computing Digital Logic for Computing John Seiffertt Digital Logic for Computing JohnSeiffertt TrumanUniversity Kirksville,Missouri USA ISBN978-3-319-56837-9 ISBN978-3-319-56839-3 (eBook) DOI10.1007/978-3-319-56839-3 LibraryofCongressControlNumber:2017937652 ©SpringerInternationalPublishingAG2017 Thisworkissubjecttocopyright.AllrightsarereservedbythePublisher,whetherthewholeorpartof the material is concerned, specifically the rights of translation, reprinting, reuse of illustrations, recitation, broadcasting, reproduction on microfilms or in any other physical way, and transmission or information storage and retrieval, electronic adaptation, computer software, or by similar or dissimilarmethodologynowknownorhereafterdeveloped. The use of general descriptive names, registered names, trademarks, service marks, etc. in this publicationdoesnotimply,evenintheabsenceofaspecificstatement,thatsuchnamesareexempt fromtherelevantprotectivelawsandregulationsandthereforefreeforgeneraluse. Thepublisher,theauthorsandtheeditorsaresafetoassumethattheadviceandinformationinthis book are believed to be true and accurate at the date of publication. Neither the publisher nor the authors or the editors give a warranty, express or implied, with respect to the material contained hereinor for anyerrors oromissionsthat may havebeenmade. Thepublisher remainsneutralwith regardtojurisdictionalclaimsinpublishedmapsandinstitutionalaffiliations. Printedonacid-freepaper ThisSpringerimprintispublishedbySpringerNature TheregisteredcompanyisSpringerInternationalPublishingAG Theregisteredcompanyaddressis:Gewerbestrasse11,6330Cham,Switzerland Preface A traditional Introduction to Digital Logic course can cover all of Chaps. 1, 2, 3, and4,selectionsfromChap.5,andthenallofChaps.6,7,8,11,12,13,14,and17, andmaybeselectionsfromChap.19.IhappentothinkChaps.15and18areofvital importance, and the case study presented in Chap. 20 really ties the whole book together,buttheyarenotincludedineveryintrocourse.Whatthisbookaddsthat others in the field leave out, through Chaps. 9, 10, and 16, is more depth for applicationsinthecomputingdomain.Theycanbeincorporatedinanintrocourse geared towards computer engineers or computer scientists, and I have used this materialmyself,buttheycanalsobenefitthesestudentssimplybybeinginthetext as breadth and a good reference for later use even if not directly included in the course. Thefollowingdescriptionsdetailthecontentsofeachchapter. Chapter1—TheDigitalElectronicComputer The goals of the text are introduced and the words digital, electronic, and computerareexploredinrelationtothesegoals.Theblockdiagramforacomputer is discussed, the digital abstraction is laid out, and the idea of programmability is discussed as core to our notion of a computer. The algorithmic approach of the text—theideathatthistextislookingatthedigitallogicelementsasthephysical means by which algorithmsare realized—is made clear. This chapter isshort and nottootechnicalandisrecommendedforallreaders. Chapter2—BooleanAlgebra The heart of all mathematical engagement with digital logic is through the structure known as Boolean Algebra. We give a practitioner’s appreciation for the ideas of Boolean Algebra while remaining rigorous and pointing to where the mathematicsandphilosophyunderlyingitallcantaketheinterestedreader.Often texts get bogged down in “axioms” and the like, but we focus on the uses of the tools of Boolean Algebra without watering down the sophistication. This is an absolutelycorechapterasitdealswiththefundamentaldefinitionsusedthroughout thetextandtheentirefieldofdigitaldesign. v vi Preface Chapter3—LogicFunctionSynthesis Truth tables, canonical forms, and the first real stab at digital design properly understoodareintroducedinthischapter.Everyonereadingthisbookwillwantto be quite familiar with this material. Many examples are walked through, and, combined with the analytic approach from Chap. 2, after finishing this chapter, thestudentwillhaveafullgraspofwhatitmeanstospecifylogicfunctionsandwill have completed step 1 of a larger journey towards full understanding of what it meanstoimplementalgorithmsinhardware. Chapter4—BasicLogicFunctionMinimization OncewehavelogicfunctionsgeneratedwiththemethodsofChaps.2and3,we oftenwanttowritetheminmoreefficientformssothatourdevicescancostlessand consume less power. This chapter shows how to use Boolean Algebra to reduce logic functions to minimal forms and also introduces the Karnaugh Map. While more of a ladderidea than something of direct use to practicing digitaldesigners, K-maps are ubiquitous in the literature of the field and the rest of this book uses themextensivelytoshowcaseminimallogicforms.Itisworthitforthestudentof digitallogictoatleastbeabletoreadaK-mapandknowwhattheyareallabout. Chapter5—AdvancedLogicFunctionMinimization Themostimportantconceptinthischapterusedthroughouttherestofthisbook is that of variable-entry K-maps. Almost every K-map presented in later chapters usesthevariable-entryapproach,sothereaderisencouragedtoreadenoughofthis chapter to understand what they are all about. Working them requires more skill thanthenormalK-maps,soanyparticularreadermaybeforgivenfornotwanting to pour too much energy into attaining complete mastery of the variable-entry maps. However, reading them and understanding how they let us get minimal formsiskey.Theothertopicsinthischapterareself-containedandcanbeskipped withoutlossofcontinuity. Chapter6—LogicGates This chapter introduces the schematics for the various logic gates for implementing Boolean Algebra operations. It also shows how to realize them in hardware using CMOS transistor arrays. While being able to read gate-level dia- grams is of the utmost importance both for the digital design professional and for thestudentofthefield,thetransistor-leveldetailsarebestsuitedforthosegoingon to VLSI design work. The remainder of the text focuses on the gate-level and device-levelratherthantransistors. Chapter7—UnsignedArithmetic Workingwithnumbersisessentialindigitaldesignandcomputingwork.Inthis chapter, the student will learn about binary representations and how to construct addition and other basic arithmetic circuits from logic gates. Beyond the use of binarynumbers,thematerialinthischapterisrelativelyself-contained.Thisisnota dedicatedcomputerarithmetictext,andaslongasthereaderunderstandsthedevice blockdiagramforthem,theremainderofthechaptersoughttobeaccessible. Preface vii Chapter8—SignedNumbers The important two’s complement representation is covered. It cannot be overstatedhowimportantthisistoreadersofthisworkbecauseoftheubiquityof two’scomplementinallmannerofdigitaldevicesandcomputers.Otherrepresen- tationsarealsocovered,asaresignedarithmeticdevices. Chapter9—OtherDigitalRepresentations Not everything we need to encode within a digital system is a number. This chapter discusses how to design such representations and emphasizes that overall thewayweexpressanyinformationis,infact,anactualdesigndecision.Floating pointnumbersarediscussedaswell,showinghownon-place-valuerepresentations composedoffieldscanbeusedtoformusefulencodings.WhiletheBCDrepresen- tation is referenced throughout the rest of the text, much of this chapter is self- contained,andthereaderwhoonlywantstostudy19chapterscouldprobablyhold offonthisonewithminimaleffectontherestofthematerial. Chapter10—EncodingCode This chapter highlights the text’s unique focus on computing by extending the work of Chap. 9 in showing how to represent computer programs themselves as digital information. Assembly language concepts are introduced, and we begin to see the development of datapaths to support them. How we write selection and controlprogrammingconstructsatthemachinelevelisdiscussed,andfortechnical readerswhohaveneverbeforeseenthismaterialitisquitetheride.Thisisahighly recommendedchapter,especiallyforcomputerscientists andcomputerengineers. One of this book’s unique features is that it ties in later as we often use these instructionsasmotivatingdesignelementsforourdatapathsanddatapathcontrollers. Chapter11—SequentialLogicElements Sequentiallogicisavital,ifnotdefining,featureofdigitaldesign.Itisthrough sequentialcircuitsthatwecanstoreinformation,implementalgorithms,andreally harness thepowerofourdigitalsystemstocreatetoolsofsuch awesomenessthat integrated circuitry is arguably the most transformative technology man has ever seen.Thischapterdiscussesflip-flops,synchronizationsignals,andtimingdiagrams. Chapter12—MultiplexersandComparators Thischapterbeginsourmarchtowardsthefulldevelopmentofdigitaldatapaths andtheimplementationofalgorithmsinhardware.Thetwodevicescoveredhere, multiplexers and comparators, are shown in the context of the various types of instructionstheycanhelprealizeaswellastheiruseinalgorithms.Thesedevices reallyarecoretothefield.Everyreaderofthetextshouldknowaboutthem. Chapter13—DecodersandRegisterFiles Building on the development ofChap. 12,this chapter introduces moreimpor- tantdatapathcomponentsandshowshowtheyareusedindesigns.Thedecoder,in particular,isusedtoillustratehowlogicfunctionsmaybeimplementedandgives the student a strong workout in Boolean Algebra and active-high vs. active-low logic. viii Preface Chapter14—Counters The state machine design process, core to the use of sequential networks, is introduced in this chapter in the context of building counters. Many kinds of counters are presented and their use in datapath design and signal generation is discussed. As counters are of critical importance in digital design, and the state machinedesignprocessisgoodtolearninitssimplifiedformpresentedherefirst, thisisahighlyrecommendedchapter. Chapter15—Datapaths This is an important design chapter. The study of datapaths brings together all thecomponentsfrompreviouschaptersandtiesthemintothealgorithmconceptsat thecoreofthetext.Asuccessfulstudyofthischapterwillhelpthereadertolearnto take specifications, optimally lay out the design using digital elements, and mini- mizetherequiredsignalsformaximumefficiency. Chapter16—BasicComputerDatapath A combination of sorts of Chaps. 9 and 15, in this chapter we discuss how to construct a datapath of particular importance: that of an actual digital electronic computer.Ofdefiniteinteresttocomputerscientistsandcomputerengineers,even electrical engineers may enjoy seeing this key specialized application of digital circuitry. Chapter17—StateMachines Thisisoneofthemostimportantchapters.Nostudyofdigitaldesigniscomplete without full coverage of the design and application of state machines. We begin withageneralizedstatemachinepartitionedintonextstatelogic,outputlogic,and state memory. This chapter then develops state diagram, state tables, and implementationsusingvariousflip-flops.MealyandMooremachinesarecovered. Chapter18—DatapathControllers Extending the initial discussion of state machines from Chap. 17, this chapter looksattheirusespecificallyinconjunctionwiththedatapathscoveredinChap.15. Partitioning large digital systems into state machine controller and datapath sec- tions is common, and through detailed examples this chapter walks through the lengthy design process. The climax of the text in a way, the design of datapath controllersbringstogethereverythingpreviouslystudied.Thestudentwhosuccess- fully works through this chapter has obtained a strong intro-level knowledge of digitaldesignandiswell-positionedformoreadvancedstudyinthefield. Chapter19—StateMachineTheoryandOptimization State reduction and assignment are covered in this chapter, and those are reasonably standard in texts of this kind. This chapter begins, however, with a discussion of formal languages and automata. These are topics typically reserved for computer science theory courses, and they are included here to emphasize the text’suniquefocusoncomputing.Therelationship betweentheoretical modelsof computation and their applied counterparts the student has been construction in previouschaptersismadeclear.Notintendedevenasaprimerinautomatatheory, Preface ix thegoalhereistogivejustabriefmorseltoenticefurtherthinkingonthematter. Toooften,thescienceandengineeringsidesofthefieldarekeptveryfarapartfrom oneanother,andthischapter,bydrawingparallelsbetweenthembasedonmaterial relevanttobothandcoveredpreviouslyinthetext,isanattempttobridgethisgap. Itiscertainlynotgoingtoserveasacompetestudyofthesetopics,butthehopeis thatsomephilosophicallyinclinedreadersmayseetheseideashereforthefirsttime andbemotivatedtoexplorethemfurther. Chapter20—InstructionProcessorDesign Thetextendswithafull-designcasestudyofanelectronicdigitalcomputer.We takeapedagogicalapproachhereinrepeatingsomeconceptsfromearlierchapters, intentionallyusingslightlydifferentlanguageandnotation,sothestudentcansee themreallycomingtogetherinasolidwhole.Theideaisthatifyoutrytoreadthis chapterfirst,itshouldfeeloverwhelming.But,ifreadaftercarefulstudyoftherest of the text, the successful student should be nodding along and say “Yes, I have this!” as the actual computer is designed from the instruction set on up. The exercises continue the design process and, if completed, the reader will have finished the study of digital logic for computing by actually sketching the details ofafunctionalinstructionprocessor.Wefeelthischapterisauniquefeatureofthis textandencouragestudentstotakeadvantageofit. Acknowledgments Thisworkistheresultofmorethan5yearsofteachingdigitallogicattheMissouri UniversityofScienceandTechnology.Ithankmostofallthefinestudentsofthat great institutionwhosequestions, comments,and feedback shaped mycourseand formed the bulk of this text. I am also grateful for the support provided by my colleagues,inparticularJoeStanleyandDonaldWunsch,whotaughtalongsideme andmotivatedmetoincreasemyteachingabilitybothintheclassroomandinthe preparationofthismanuscript.Manyexcellentproblemtypesandmodesofexpla- nation found in this text are due to their insights. I also want to thank my current department at Truman State University for their encouragement as I completed thistext. xi

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.