This book presents the key technologies and components employed in modern processor and computer architectures and discusses how various architectural decisions result in computer configurations optimized for specific needs.
To understate the situation quite drastically, modern computers are complicated devices. Yet, when viewed in a hierarchical manner, the functions of each level of complexity become clear. We will cover a great many topics in these chapters and will only have the space to explore each of them to a limited degree. My goal is to provide a coherent introduction to each important technology and subsystem you might find in a modern computing device and explain its relationship to other system components.
This book is intended for software developers, computer engineering students, system designers, computer science professionals, reverse engineers, and anyone else seeking to understand the architecture and design principles underlying all types of modern computer systems from tiny embedded devices to smartphones to warehouse-sized cloud server farms. Readers will also explore the directions these technologies are likely to take in the coming years. A general understanding of computer processors is helpful but is not required.
Chapter 1 - Introducing Computer Architecture
Chapter 3 - Processor Elements
Chapter 4 - Computer System Components
Chapter 5 - Hardware-Software Interface
Chapter 6 - Specialized Computing Domains
Chapter 7 - Processor and Memory Architectures
Chapter 8 - Performance-Enhancing Techniques
Chapter 9 - Specialized Processor Extensions
Chapter 10 - Modern Processor Architectures and Instruction Sets
Chapter 11 - The RISC-V Architecture and Instruction Set
Chapter 12 - Processor Virtualization
Chapter 13 - Domain-Specific Computer Architectures
Chapter 14 - Future Directions in Computer Architectures
This is the code repository for Modern Computer Architecture and Organization , published by Packt.
Learn x86, ARM, and RISC-V architectures and the design of smartphones, PCs, and cloud servers
Are you a software developer, systems designer, or computer architecture student looking for a methodical introduction to digital device architectures but overwhelmed by their complexity? This book will help you to learn how modern computer systems work, from the lowest level of transistor switching to the macro view of collaborating multiprocessor servers. You'll gain unique insights into the internal behavior of processors that execute the code developed in high-level languages and enable you to design more efficient and scalable software systems.
This book covers the following exciting features: Get to grips with transistor technology and digital circuit principles Discover the functional elements of computer processors Understand pipelining and superscalar execution Work with floating-point data formats Understand the purpose and operation of the supervisor mode Implement a complete RISC-V processor in a low-cost FPGA Explore the techniques used in virtual machine implementation Write a quantum computing program and run it on a quantum computer
If you feel this book is for you, get your copy today!
All of the code is organized into folders. For example, Chapter02.
The code will look like the following:
result_sim = job_sim.result()
counts_sim = result_sim.get_counts(qc)
counts_sim
Following is what you need for this book: This book is for software developers, computer engineering students, system designers, reverse engineers, and anyone looking to understand the architecture and design principles underlying modern computer systems from tiny embedded devices to warehouse-size cloud server farms. A general understanding of computer processors is helpful but not required.
Jim Ledin Jim Ledin is the CEO of Ledin Engineering, Inc. Jim is an expert in embedded software and hardware design, development, and testing. He is also accomplished in embedded system cybersecurity assessment and penetration testing. He has a B.S. degree in aerospace engineering from Iowa State University and an M.S. degree in electrical and computer engineering from Georgia Institute of Technology. Jim is a registered professional electrical engineer in California, a Certifi ed Information System Security Professional (CISSP), a Certifi ed Ethical Hacker (CEH), and a Certified Penetration Tester (CPT).
Click here if you have any feedback or suggestions.