, ,

Computer Principles and Design in Verilog HDL

Specificaties
Gebonden, 568 blz. | Engels
John Wiley & Sons | e druk, 2015
ISBN13: 9781118841099
Rubricering
John Wiley & Sons e druk, 2015 9781118841099
€ 151,49
Levertijd ongeveer 15 werkdagen

Samenvatting

Uses Verilog HDL to illustrate computer architecture and microprocessor design, allowing readers to readily simulate and adjust the operation of each design, and thus build industrially relevant skills

Introduces the computer principles, computer design, and how to use Verilog HDL (Hardware Description Language) to implement the design
Provides the skills for designing processor/arithmetic/cpu chips, including the unique application of Verilog HDL material for CPU (central processing unit) implementation
Despite the many books on Verilog and computer architecture and microprocessor design, few, if any, use Verilog as a key tool in helping a student to understand these design techniques
A companion website includes color figures, Verilog HDL codes, extra test benches not found in the book, and PDFs of the figures and simulation waveforms for instructors

Specificaties

ISBN13:9781118841099
Taal:Engels
Bindwijze:gebonden
Aantal pagina's:568

Inhoudsopgave

<p>List of Figures xv<br /><br />List of Tables xxvii<br /><br />Foreword xxix<br /><br />Preface xxxi<br /><br />1 Computer Fundamentals and Performance Evaluation 1<br /><br />1.1 Overview of Computer Systems 1<br /><br />1.2 Basic Structure of Computers 8<br /><br />1.3 Improving Computer Performance 13<br /><br />1.4 Hardware Description Languages 16<br /><br />Exercises 18<br /><br />2 A Brief Introduction to Logic Circuits and Verilog HDL 19<br /><br />2.1 Logic Gates 19<br /><br />2.2 Logic Circuit Design in Verilog HDL 22<br /><br />2.3 CMOS Logic Gates 25<br /><br />2.4 Four Levels/Styles of Verilog HDL 28<br /><br />2.5 Combinational Circuit Design 34<br /><br />2.6 Sequential Circuit Design 42<br /><br />Exercises 59<br /><br />3 Computer Arithmetic Algorithms and Implementations 63<br /><br />3.1 Binary Integers 63<br /><br />3.2 Binary Addition and Subtraction 65<br /><br />3.3 Binary Multiplication Algorithms 74<br /><br />3.4 Binary Division Algorithms 84<br /><br />3.5 Binary Square Root Algorithms 95<br /><br />Exercises 110<br /><br />4 Instruction Set Architecture and ALU Design 111<br /><br />4.1 Instruction Set Architecture 111<br /><br />4.2 MIPS Instruction Format and Registers 117<br /><br />4.3 MIPS Instructions and AsmSim Tool 118<br /><br />4.4 ALU Design 136<br /><br />Exercises 140<br /><br />5 Single–Cycle CPU Design in Verilog HDL 143<br /><br />5.1 The Circuits Required for Executing an Instruction 143<br /><br />5.2 Register File Design 148<br /><br />5.3 Single–Cycle CPU Datapath Design 154<br /><br />5.4 Single–Cycle CPU Control Unit Design 160<br /><br />5.5 Test Program and Simulation Waveform 164<br /><br />Exercises 166<br /><br />6 Exceptions and Interrupts Handling and Design in Verilog HDL 170<br /><br />6.1 Exceptions and Interrupts 170<br /><br />6.2 Design of CPU with Exception and Interrupt Mechanism 176<br /><br />6.3 The CPU Exception and Interrupt Tests 187<br /><br />Exercises 191<br /><br />7 Multiple–Cycle CPU Design in Verilog HDL 192<br /><br />7.1 Dividing Instruction Execution into Several Clock Cycles 192<br /><br />7.2 Multiple–Cycle CPU Schematic and Verilog HDL Codes 198<br /><br />7.3 Multiple–Cycle CPU Control Unit Design 201<br /><br />7.4 Memory and Test Program 208<br /><br />Exercises 211<br /><br />8 Design of Pipelined CPU with Precise Interrupt in Verilog HDL 212<br /><br />8.1 Pipelining 213<br /><br />8.2 Pipeline Hazards and Solutions 219<br /><br />8.3 The Circuit of the Pipelined CPU and Verilog HDL Codes 225<br /><br />8.4 Precise Interrupts/Exceptions in Pipelined CPU 240<br /><br />8.5 Design of Pipelined CPU with Precise Interrupt/Exception 248<br /><br />Exercises 265<br /><br />9 Floating–Point Algorithms and FPU Design in Verilog HDL 266<br /><br />9.1 IEEE 754 Floating–Point Data Formats 266<br /><br />9.2 Converting between Floating–Point Number and Integer 268<br /><br />9.3 Floating–Point Adder (FADD) Design 273<br /><br />9.4 Floating–Point Multiplier (FMUL) Design 290<br /><br />9.5 Floating–Point Divider (FDIV) Design 302<br /><br />9.6 Floating–Point Square Root (FSQRT) Design 312<br /><br />Exercises 321<br /><br />10 Design of Pipelined CPU with FPU in Verilog HDL 323<br /><br />10.1 CPU/FPU Pipeline Model 323<br /><br />10.2 Design of Register File with Two Write Ports 326<br /><br />10.3 Data Dependency and Pipeline Stalls 328<br /><br />10.4 Pipelined CPU/FPU Design in Verilog HDL 335<br /><br />10.5 Memory Modules and Pipelined CPU/FPU Test 345<br /><br />Exercises 351<br /><br />11 Memory Hierarchy and Virtual Memory Management 353<br /><br />11.1 Memory 353<br /><br />11.2 Cache Memory 359<br /><br />11.3 Virtual Memory Management and TLB Design 367<br /><br />11.4 Mechanism of TLB–Based MIPS Memory Management 377<br /><br />Exercises 384<br /><br />12 Design of Pipelined CPU with Caches and TLBs in Verilog HDL 386<br /><br />12.1 Overall Structure of Caches and TLBs 386<br /><br />12.2 Design of Circuits Related to Caches 387<br /><br />12.3 Design of Circuits Related to TLB 392<br /><br />12.4 Design of CPU with Caches and TLBs 400<br /><br />12.5 Simulation Waveforms of CPU with Caches and TLBs 416<br /><br />Exercises 424<br /><br />13 Multithreading CPU and Multicore CPU Design in Verilog HDL 425<br /><br />13.1 Overview of Multithreading CPUs 425<br /><br />13.2 Multithreading CPU Design 428<br /><br />13.3 Overview of Multicore CPUs 434<br /><br />13.4 Multicore CPU Design 436<br /><br />Exercises 442<br /><br />14 Input/Output Interface Controller Design in Verilog HDL 443<br /><br />14.1 Overview of Input/Output Interface Controllers 443<br /><br />14.2 Error Detection and Correction 445<br /><br />14.3 Universal Asynchronous Receiver Transmitter 452<br /><br />14.4 PS/2 Keyboard/Mouse Interface Design 461<br /><br />14.5 Video Graphics Array (VGA) Interface Design 466<br /><br />14.6 Input/Output Buses 483<br /><br />Exercises 507<br /><br />15 High–Performance Computers and Interconnection Networks 509<br /><br />15.1 Category of High–Performance Computers 509<br /><br />15.2 Shared–Memory Parallel Multiprocessor Systems 510<br /><br />15.3 Inside of Interconnection Networks 514<br /><br />15.4 Topological Properties of Interconnection Networks 516<br /><br />15.5 Some Popular Topologies of Interconnection Networks 518<br /><br />15.6 Collective Communications 521<br /><br />15.7 Low–Node–Degree Short–Diameter Interconnection Networks 524<br /><br />Exercises 535<br /><br />Bibliography 536<br /><br />Index 539</p>
€ 151,49
Levertijd ongeveer 15 werkdagen

Rubrieken

    Personen

      Trefwoorden

        Computer Principles and Design in Verilog HDL