You are previewing Learning Computer Architecture with Raspberry Pi.
O'Reilly logo
Learning Computer Architecture with Raspberry Pi

Book Description

Use your Raspberry Pi to get smart about computing fundamentals

In the 1980s, the tech revolution was kickstarted by a flood of relatively inexpensive, highly programmable computers like the Commodore. Now, a second revolution in computing is beginning with the Raspberry Pi. Learning Computer Architecture with the Raspberry Pi is the premier guide to understanding the components of the most exciting tech product available. Thanks to this book, every Raspberry Pi owner can understand how the computer works and how to access all of its hardware and software capabilities.

Now, students, hackers, and casual users alike can discover how computers work with Learning Computer Architecture with the Raspberry Pi. This book explains what each and every hardware component does, how they relate to one another, and how they correspond to the components of other computing systems. You'll also learn how programming works and how the operating system relates to the Raspberry Pi's physical components.

  • Co-authored by Eben Upton, one of the creators of the Raspberry Pi, this is a companion volume to the Raspberry Pi User Guide
  • An affordable solution for learning about computer system design considerations and experimenting with low-level programming
  • Understandable descriptions of the functions of memory storage, Ethernet, cameras, processors, and more
  • Gain knowledge of computer design and operation in general by exploring the basic structure of the Raspberry Pi

The Raspberry Pi was created to bring forth a new generation of computer scientists, developers, and architects who understand the inner workings of the computers that have become essential to our daily lives. Learning Computer Architecture with the Raspberry Pi is your gateway to the world of computer system design.

Table of Contents

    1. Cover
    2. Introduction
      1. Cambridge
      2. Cut to the Chase
      3. The Knee in the Curve
      4. Forward the Foundation
    3. Chapter 1: The Shape of a Computer Phenomenon
      1. Growing Delicious, Juicy Raspberries
      2. System-on-a-Chip
      3. An Exciting Credit Card-Sized Computer
      4. What Does the Raspberry Pi Do?
      5. Meeting and Greeting the Raspberry Pi Board
      6. The Future
    4. Chapter 2: Recapping Computing
      1. The Cook as Computer
      2. The Box That Follows a Plan
      3. Voltages, Numbers and Meaning
      4. Operating Systems: The Boss of the Box
    5. Chapter 3: Electronic Memory
      1. There Was Memory Before There Were Computers
      2. Rotating Magnetic Memory
      3. Magnetic Core Memory
      4. Static Random Access Memory (SRAM)
      5. Address Lines and Data Lines
      6. Combining Memory Chips into Memory Systems
      7. Dynamic Random Access Memory (DRAM)
      8. The Raspberry Pi Memory System
      9. Cache
      10. Virtual Memory
    6. Chapter 4: ARM Processors and Systems-on-a-Chip
      1. The Incredible Shrinking CPU
      2. Digital Logic Primer
      3. Inside the CPU
      4. Rethinking the CPU: CISC vs. RISC
      5. ARMs from Little Acorns Grow
      6. ARM11
      7. Coprocessors
      8. ARM Cortex
      9. Systems on a Single Chip
    7. Chapter 5: Programming
      1. Programming from a Height
      2. How Native-Code Compilers Work
      3. Pure Text Interpreters
      4. Bytecode Interpreted Languages
      5. Data Building Blocks
      6. Code Building Blocks
      7. Object-Oriented Programming
      8. A Tour of the GNU Compiler Collection Toolset
    8. Chapter 6: Non-Volatile Storage
      1. Punched Cards and Tape
      2. Magnetic Recording and Encoding Schemes
      3. Magnetic Disk Storage
      4. Partitions and File Systems
      5. Optical Discs
      6. Ramdisks
      7. Flash Storage
    9. Chapter 7: Wired and Wireless Ethernet
      1. The OSI Reference Model for Networking
      2. Ethernet
      3. Routers and the Internet
      4. Wi-Fi
    10. Chapter 8: Operating Systems
      1. Introduction to Operating Systems
      2. The Kernel: The Basic Facilitator of Operating Systems
      3. Enablers and Assistants to the Operating System
      4. Operating Systems for Raspberry Pi
    11. Chapter 9: Video Codecs and Video Compression
      1. The First Video Codecs
      2. Changing with the Times
      3. Motion Search
    12. Chapter 10: 3D Graphics
      1. A Brief History of 3D Graphics
      2. The OpenGL Graphics Pipeline
      3. Modern Graphics Hardware
      4. Open VG
      5. General Purpose GPUs
    13. Chapter 11: Audio
      1. Can You Hear Me Now?
      2. Analog vs. Digital
      3. Sound and Signal Processing
      4. 1-Bit DAC
      5. I<sup xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:svg="http://www.w3.org/2000/svg" xmlns:ibooks="http://vocabulary.itunes.apple.com/rdf/ibooks/vocabulary-extensions-1.0">2</sup>SS
      6. Raspberry Pi Sound Input/Output
      7. Sound on the Raspberry Pi
    14. Chapter 12: Input/Output
      1. Introducing Input/Output
      2. I/O Enablers
      3. Raspberry Pi GPIO
    15. End User License Agreement