
- English
- ePUB (mobile friendly)
- Available on iOS & Android
eBook - ePub
Computer Principles and Design in Verilog HDL
About this book
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
Frequently asked questions
Yes, you can cancel anytime from the Subscription tab in your account settings on the Perlego website. Your subscription will stay active until the end of your current billing period. Learn how to cancel your subscription.
At the moment all of our mobile-responsive ePub books are available to download via the app. Most of our PDFs are also available to download and we're working on making the final remaining ones downloadable now. Learn more here.
Perlego offers two plans: Essential and Complete
- Essential is ideal for learners and professionals who enjoy exploring a wide range of subjects. Access the Essential Library with 800,000+ trusted titles and best-sellers across business, personal growth, and the humanities. Includes unlimited reading time and Standard Read Aloud voice.
- Complete: Perfect for advanced learners and researchers needing full, unrestricted access. Unlock 1.4M+ books across hundreds of subjects, including academic and specialized titles. The Complete Plan also includes advanced features like Premium Read Aloud and Research Assistant.
We are an online textbook subscription service, where you can get access to an entire online library for less than the price of a single book per month. With over 1 million books across 1000+ topics, weâve got you covered! Learn more here.
Look out for the read-aloud symbol on your next book to see if you can listen to it. The read-aloud tool reads text aloud for you, highlighting the text as it is being read. You can pause it, speed it up and slow it down. Learn more here.
Yes! You can use the Perlego app on both iOS or Android devices to read anytime, anywhere â even offline. Perfect for commutes or when youâre on the go.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Please note we cannot support devices running on iOS 13 and Android 7 or earlier. Learn more about using the app.
Yes, you can access Computer Principles and Design in Verilog HDL by Yamin Li in PDF and/or ePUB format, as well as other popular books in Technology & Engineering & Electrical Engineering & Telecommunications. We have over one million books available in our catalogue for you to explore.
Information
Edition
1Chapter 1
Computer Fundamentals and Performance Evaluation
Welcome to read âComputer Principles and Design in Verilog HDLâ. This book starts from the very beginning â introducing the basic logic operations. You will learn that any digital circuit can be designed by using three kinds of logic gates: the AND gate, the OR gate, and the NOT gate. Then the methods of designing the basic components of the CPU (central processing unit), such as the adder, the subtracter, the shifter, the ALU (arithmetic logic unit), and register file, by using these gates, will be presented. After introducing the designs of various simple CPUs, this book describes how to design a multicore CPU with each core containing an IU (integer unit), an FPU (floating-point unit), an instruction cache, a data cache, an instruction TLB (translation lookaside buffer), a data TLB, and the mechanism of interrupt/exceptions.
The design of popular I/O (input/output) interfaces, such as the UART (universal asynchronous receiver transmitter), PS/2 keyboard/mouse and VGA (video graphics array) interfaces, the I2C (inter-integrated circuit) serial bus controller, and the PCI (peripheral component interconnect) parallel bus controller, will be also described. Except for the PS/2 mouse interface controller, all of the circuits of CPUs, I/O interfaces, and bus controllers were designed in Verilog HDL (hardware description language) and simulated with ModelSim. The Verilog HDL source codes and simulation waveforms are also included in the book. Finally, the book describes how to design an interconnection network for connecting multiple CPU and memory modules together to construct a high-performance supercomputer.
This chapter introduces some basic concepts, the organization of modern computers, and the evaluation method of computer performance.
1.1 Overview of Computer Systems
Suppose that you have a personal computer, which has 8 GB memory and the clock frequency is 4 GHz. Question: Are the âGâ in 8 GB and âGâ in 4 GHz same? The answer will be given in the last part of this section. Before that, we introduce the terminologies of âcomputerâ and âcomputer systemâ, a brief history of the computer, instruction set architectures (ISAs), and the differences between RISC (reduced instruction set computer) and CISC (complex instruction set computer).
1.1.1 Organization of Computer Systems
You may know what a âsingle-chip computerâ is, or have heard about it (it does not matter even if you have never). It is an IC (integrated circuit) chip, in which there is a CPU (or a microprocessor), a small amount of memory, and some I/O interface controllers. Generally, any IC chip or printed circuit board that contains these three kinds of components is called a computer.
Then, one more question: is it possible for an end user to use this computer directly? The answer is ânoâ. The computer we often say is actually a âcomputer systemâ. A computer system consists of not only a computer, but also the software, I/O devices, and power supply.
The essential software is an operating system (OS). It manages all the resources of the computer, I/O devices, and other software, and provides an interface for users to use the computer system. The MS-DOS (Microsoft disk operating system) was the early operating system for IBM PC. The various versions of Windows were then provided with graphical user interfaces (GUIs). Another OS is the open-source Linux kernel. The various versions of the operating systems that support GUI, such as Fedora, Ubuntu, OpenSUSE, CentOS, and Scientific Linux, were developed on the top of the Linux kernel. All of the above are called âsystem softwareâ.
Software is a collection of programs and related data. A program provides the instructions for telling a computer what to do and how to do it. The instructions are represented in binary format that a computer can understand. An executable program is usually generated by a compiler, based on the source codes of the program which are prepared by the programmers. Programmers develop source codes in a high-level programming language, C for instance, with a text editor. A debugger is often used by programmers to debug the program. The compiler, editor, debugger, and other libraries are also programs, sometimes we call them âutilitiesâ. All programs other than the system software and utilities are called âapplicationsâ.
I/O devices, also known as peripheral devices, are like the wheels of a car. The keyboard, mouse, display, hard disk, and printer are typical examples of I/O devices. A netw...
Table of contents
- Cover
- Title Page
- Copyright
- Table of Contents
- List of Figures
- List of Tables
- Preface
- Chapter 1: Computer Fundamentals and Performance Evaluation
- Chapter 2: A Brief Introduction to Logic Circuits and Verilog HDL
- Chapter 3: Computer Arithmetic Algorithms and Implementations
- Chapter 4: Instruction Set Architecture and ALU Design
- Chapter 5: Single-Cycle CPU Design in Verilog HDL
- Chapter 6: Exceptions and Interrupts Handling and Design in Verilog HDL
- Chapter 7: Multiple-Cycle CPU Design in Verilog HDL
- Chapter 8: Design of Pipelined CPU with Precise Interrupt in Verilog HDL
- Chapter 9: Floating-Point Algorithms and FPU Design in Verilog HDL
- Chapter 10: Design of Pipelined CPU with FPU in Verilog HDL
- Chapter 11: Memory Hierarchy and Virtual Memory Management
- Chapter 12: Design of Pipelined CPU with Caches and TLBs in Verilog HDL
- Chapter 13: Multithreading CPU and Multicore CPU Design in Verilog HDL
- Chapter 14: Input/Output Interface Controller Design in Verilog HDL
- Chapter 15: High-Performance Computers and Interconnection Networks
- Bibliography
- Index
- End User License Agreement