ebook img

Circuit Design with VHDL PDF

376 Pages·2004·4.986 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 Circuit Design with VHDL

46183Pedroninew 2004-10-11 14:06 Page 1 Circuit Design with VHDL C Volnei A. Pedroni i This textbook teaches VHDL using system examples com- r bined with programmable logic and supported by laboratory c exercises. While other textbooks concentrate only on lan- u guage features, Circuit Design with VHDLoffers a fully inte- grated presentation of VHDL and design concepts by i including a large number of complete design examples, t illustrative circuit diagrams, a review of fundamental design concepts, fully explained solutions, and simulation results. D The text presents the information concisely yet completely, discussing in detail all indispensable features of the VHDL e synthesis. The book is organized in a clear progression, with the first part covering the circuit level, treating foundations s of VHDL and fundamental coding, while the second part cov- i ers the system level (units that might be located in a library g for code sharing, reuse, and partitioning), expanding upon the earlier chapters to discuss system coding. Circuit Design n Part I, “Circuit Design,” examines in detail the back- ground and coding techniques of VHDL, including code structure, data types, operators and attributes, concurrent w and sequential statements and code, objects (signals, vari- VHDL ables, and constants), design of finite state machines, and i with t examples of additional circuit designs. Part II, “System h Design,” builds on the material already presented, adding elements intended mainly for library allocation; it examines V Volnei A. Pedroni packages and components, functions and procedures, and additional examples of system design. Appendixes on pro- H grammable logic devices (PLDs/FPGAs) and synthesis tools follow Part II. The book’s highly original approach of teach- D ing through extensive system examples, as well as its unique integration of VHDL and design, makes it suitable L both for use by students in computer science and electrical engineering. Volnei A. Pedroni earned his Ph.D. in electrical engineering P from Caltech. He is currently Professor of Electrical e d Engineering at CEFET-PR (Federal Center of Technological r Education of Parana), Brazil. o n i The MIT Press Massachusetts Institute of Technology Cambridge, Massachusetts 02142 http://mitpress.mit.edu ,!7IA2G2-bgcceb!:t;K;k;K;k 0-262-16224-5 TLFeBOOK Circuit Design with VHDL TLFeBOOK TLFeBOOK Circuit Design with VHDL Volnei A. Pedroni MITPress Cambridge, Massachusetts London, England TLFeBOOK 62004MassachusettsInstituteofTechnology Allrightsreserved.Nopartofthisbookmaybereproducedinanyformbyanyelectronicormechanical means(includingphotocopying,recording,orinformationstorageandretrieval)withoutpermissionin writingfromthepublisher. ThisbookwassetinTimesNewRomanon3B2byAscoTypesetters,HongKongandwasprintedand boundintheUnitedStatesofAmerica. LibraryofCongressCataloging-in-PublicationData Pedroni,VolneiA. CircuitdesignwithVHDL/VolneiA.Pedroni. p. cm. Includesbibliographicalreferencesandindex. ISBN0-262-16224-5(alk.paper) 1.VHDL(Computerhardwaredescriptionlanguage) 2.Electroniccircuitdesign. 3.Systemdesign. I.Title. TK7885.7.P43 2004 621.3905—dc22 2004040174 10 9 8 7 6 5 4 3 2 1 TLFeBOOK To Claudia, Patricia,Bruno,and Ricardo TLFeBOOK TLFeBOOK Contents Preface xi I CIRCUIT DESIGN 1 1 Introduction 3 1.1 About VHDL 3 1.2 Design Flow 3 1.3 EDATools 4 1.4 Translation of VHDL Code into a Circuit 5 1.5 Design Examples 8 2 Code Structure 13 2.1 Fundamental VHDL Units 13 2.2 LIBRARY Declarations 13 2.3 ENTITY 15 2.4 ARCHITECTURE 17 2.5 Introductory Examples 17 2.6 Problems 22 3 Data Types 25 3.1 Pre-Defined Data Types 25 3.2 User-Defined Data Types 28 3.3 Subtypes 29 3.4 Arrays 30 3.5 Port Array 33 3.6 Records 35 3.7 Signed and Unsigned Data Types 35 3.8 Data Conversion 37 3.9 Summary 38 3.10 Additional Examples 38 3.11 Problems 43 4 Operators and Attributes 47 4.1 Operators 47 4.2 Attributes 50 4.3 User-Defined Attributes 52 4.4 OperatorOverloading 53 TLFeBOOK viii Contents 4.5 GENERIC 54 4.6 Examples 55 4.7 Summary 60 4.8 Problems 61 5 Concurrent Code 65 5.1 ConcurrentversusSequential 65 5.2 Using Operators 67 5.3 WHEN (Simple and Selected) 69 5.4 GENERATE 78 5.5 BLOCK 81 5.6 Problems 84 6 SequentialCode 91 6.1 PROCESS 91 6.2 Signalsand Variables 93 6.3 IF 94 6.4 WAIT 97 6.5 CASE 100 6.6 LOOP 105 6.7 CASEversusIF 112 6.8 CASEversusWHEN 113 6.9 Bad Clocking 114 6.10 Using Sequential Code to Design Combinational Circuits 118 6.11 Problems 121 7 Signals and Variables 129 7.1 CONSTANT 129 7.2 SIGNAL 130 7.3 VARIABLE 131 7.4 SIGNAL versus VARIABLE 133 7.5 Number of Registers 140 7.6 Problems 151 8 State Machines 159 8.1 Introduction 159 8.2 Design Style #1 160 8.3 Design Style #2 (Stored Output) 168 TLFeBOOK Contents ix 8.4 Encoding Style: From Binary to OneHot 181 8.5 Problems 183 9 Additional Circuit Designs 187 9.1 BarrelShifter 187 9.2 Signed and Unsigned Comparators 191 9.3 Carry Ripple and Carry Look Ahead Adders 194 9.4 Fixed-Point Division 198 9.5 Vending-Machine Controller 202 9.6 Serial Data Receiver 208 9.7 Parallel-to-SerialConverter 211 9.8 Playingwith aSeven-SegmentDisplay 212 9.9 SignalGenerators 217 9.10 Memory Design 220 9.11 Problems 225 II SYSTEM DESIGN 231 10 Packages and Components 233 10.1 Introduction 233 10.2 PACKAGE 234 10.3 COMPONENT 236 10.4 PORTMAP 244 10.5 GENERIC MAP 244 10.6 Problems 251 11 Functions and Procedures 253 11.1 FUNCTION 253 11.2 FunctionLocation 256 11.3 PROCEDURE 265 11.4 Procedure Location 266 11.5 FUNCTION versus PROCEDURE Summary 270 11.6 ASSERT 270 11.7 Problems 271 12 Additional System Designs 275 12.1 Serial-Parallel Multiplier 275 12.2 Parallel Multiplier 279 TLFeBOOK

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.