Muutke küpsiste eelistusi

E-raamat: Learning Computer Architecture with Raspberry Pi

Contributions by , , Contributions by , , Contributions by
  • Formaat: EPUB+DRM
  • Ilmumisaeg: 22-Aug-2016
  • Kirjastus: John Wiley & Sons Inc
  • Keel: eng
  • ISBN-13: 9781119183921
  • Formaat - EPUB+DRM
  • Hind: 23,40 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Raamatukogudele
  • Formaat: EPUB+DRM
  • Ilmumisaeg: 22-Aug-2016
  • Kirjastus: John Wiley & Sons Inc
  • Keel: eng
  • ISBN-13: 9781119183921

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

Explains what each and every Raspberry Pi hardware component does, how they relate to one another and how they correspond to the components of other computing systems. Original.

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.

Since it was released on 2012, over 2 1/2 million Raspberry Pi units have been sold. Now, students, hackers, and casual users alike can discover how computers work withLearning 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 theRaspberry 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.

Introduction 1(6)
Cambridge
1(2)
Cut to the Chase
3(1)
The Knee in the Curve
4(1)
Forward the Foundation
5(2)
Chapter 1 The Shape of a Computer Phenomenon 7(20)
Growing Delicious, Juicy Raspberries
7(3)
System-on-a-Chip
10(2)
An Exciting Credit Card-Sized Computer
12(2)
What Does the Raspberry Pi Do?
14(1)
Meeting and Greeting the Raspberry Pi Board
14(11)
GPIO Pins
15(1)
Status LEDs
16(2)
USB Receptacles
18(1)
Ethernet Connection
18(1)
Audio Out
19(2)
Composite Video
21(1)
CSI Camera Module Connector
21(1)
HDMI
22(1)
Micro USB Power
22(1)
Storage Card
23(1)
DSI Display Connection
24(1)
Mounting Holes
25(1)
The Chips
25(1)
The Future
25(2)
Chapter 2 Recapping Computing 27(20)
The Cook as Computer
28(3)
Ingredients as Data
28(2)
Basic Actions
30(1)
The Box That Follows a Plan
31(6)
Doing and Knowing
31(1)
Programs Are Data
32(1)
Memory
33(1)
Registers
34(2)
The System Bus
36(1)
Instruction Sets
36(1)
Voltages, Numbers and Meaning
37(7)
Binary: Counting in is and Os
37(3)
The Digit Shortage
40(1)
Counting and Numbering and 0
40(1)
Hexadecimal as a Shorthand for Binary
41(2)
Doing Binary and Hexadecimal Arithmetic
43(1)
Operating Systems: The Boss of the Box
44(3)
What an Operating System Does
44(2)
Saluting the Kernel
46(1)
Multiple Cores
46(1)
Chapter 3 Electronic Memory 47(46)
There Was Memory Before There Were Computers
47(1)
Rotating Magnetic Memory
48(2)
Magnetic Core Memory
50(3)
How Core Memory Works
50(2)
Memory Access Time
52(1)
Static Random Access Memory (SRAM)
53(1)
Address Lines and Data Lines
54(2)
Combining Memory Chips into Memory Systems
56(3)
Dynamic Random Access Memory (DRAM)
59(11)
How DRAM Works
60(2)
Synchronous vs. Asynchronous DRAM
62(2)
SDRAM Columns, Rows, Banks, Ranks and DIMMs
64(2)
DDR, DDR2 DDR3 and DDR4 SDRAM
66(3)
Error-Correcting Code (ECC) Memory
69(1)
The Raspberry Pi Memory System
70(2)
Power Reduction Features
70(1)
Ball-Grid Array Packaging
71(1)
Cache
72(9)
Locality of Reference
72(1)
Cache Hierarchy
72(2)
Cache Lines and Cache Mapping
74(2)
Direct Mapping
76(2)
Associative Mapping
78(1)
Set-Associative Cache
79(2)
Writing Cache Back to Memory
81(1)
Virtual Memory
81(12)
The Virtual Memory Big Picture
82(1)
Mapping Virtual to Physical
83(1)
Memory Management Units: Going Deeper
84(4)
Multi-Level Page Tables and the TLB
88(1)
The Raspberry Pi Swap Problem
88(2)
Watching Raspberry Pi Virtual Memory
90(3)
Chapter 4 ARM Processors and Systems-on-a-Chip 93(66)
The Incredible Shrinking CPU
93(2)
Microprocessors
94(1)
Transistor Budgets
95(1)
Digital Logic Primer
95(4)
Logic Gates
96(1)
Flip-Flops and Sequential Logic
97(2)
Inside the CPU
99(25)
Branching and Flags
101(1)
The System Stack
102(3)
System Clocks and Execution Time
105(1)
Pipelining
106(2)
Pipelining in Detail
108(1)
Deeper Pipelines and Pipeline Hazards
109(3)
The ARM11 Pipeline
112(1)
Superscalar Execution
113(2)
More Parallelism with SIMD
115(3)
Endianness
118(3)
RISC's Legacy
121(1)
Expanded Register Files
122(1)
Load/Store Architecture
122(1)
Orthogonal Machine Instructions
123(1)
Separate Caches for Instructions and Data
123(1)
ARMS from Little Acorns Grow
124(2)
Microarchitectures, Cores and Families
125(1)
Selling Licenses Rather Than Chips
125(1)
ARM11
126(16)
The ARM Instruction Set
126(3)
Processor Modes
129(2)
Modes and Registers
131(6)
Fast Interrupts
137(1)
Software Interrupts
137(1)
Interrupt Priority
138(1)
Conditional Instruction Execution
139(3)
Coprocessors
142(3)
The ARM Coprocessor Interface
143(1)
The System Control Coprocessor
143(1)
The Vector Floating Point (VFP) Coprocessor
144(1)
Emulating Coprocessors
145(1)
ARM Cortex
145(5)
Multiple-Issue and Out-Of-Order Execution
146(1)
Thumb 2
147(1)
Thumb EE
147(1)
big.LITTLE
147(1)
The NEON Coprocessor for SIMD
148(1)
ARMv8 and 64-Bit Computing
148(2)
Systems on a Single Chip
150(9)
The Broadcom BCM2835 SoC
150(1)
Broadcom's Second- and Third-Generation SoC Devices
151(1)
How VLSI Chips Happen
151(1)
Processes, Geometries and Masks
152(1)
IP: Cells, Macrocells and Cores
153(1)
Hard and Soft IP
154(1)
Floorplanning, Layout and Routing
154(1)
Standards for On-Chip Communication: AMBA
155(4)
Chapter 5 Programming 159(72)
Programming from a Height
159(14)
The Software Development Process
160(2)
Waterfall vs. Spiral vs. Agile
162(3)
Programming in Binary
165(1)
Assembly Language and Mnemonics
166(1)
High-Level Languages
167(3)
Apres BASIC, Le Deluge
170(1)
Programming Terminology
171(2)
How Native-Code Compilers Work
173(11)
Preprocessing
174(1)
Lexical Analysis
175(1)
Semantic Analysis
175(1)
Intermediate Code Generation
176(1)
Optimisation
176(1)
Target Code Generation
176(1)
Compiling C: A Concrete Example
177(6)
Linking Object Code Files to Executable Files
183(1)
Pure Text Interpreters
184(2)
Bytecode Interpreted Languages
186(6)
P-Code
186(1)
Java
187(2)
Just-In-Time (JIT) Compilation
189(2)
Bytecode and JIT Compilation Beyond Java
191(1)
Android, Java and Dalvik
191(1)
Data Building Blocks
192(8)
Identifiers, Reserved Words, Symbols and Operators
192(1)
Values, Literals and Named Constants
193(1)
Variables, Expressions and Assignment
193(1)
Types and Type Definitions
194(2)
Static and Dynamic Typing
196(2)
Two's Complement and IEEE 754
198(2)
Code Building Blocks
200(14)
Control Statements and Compound Statements
200(1)
If/Then/Else
200(2)
Switch and Case
202(3)
Repeat Loops
205(1)
While Loops
205(2)
For Loops
207(1)
The Break and Continue Statements
208(2)
Functions
210(1)
Locality and Scope
211(3)
Object-Oriented Programming
214(10)
Encapsulation
217(2)
Inheritance
219(2)
Polymorphism
221(3)
OOP Wrapup
224(1)
A Tour of the GNU Compiler Collection Toolset
224(7)
gcc as Both Compiler and Builder
225(3)
Using Linux Make
228(3)
Chapter 6 Non-Volatile Storage 231(42)
Punched Cards and Tape
232(4)
Punched Cards
232(1)
Tape Data Storage
232(3)
The Dawn of Magnetic Storage
235(1)
Magnetic Recording and Encoding Schemes
236(4)
Flux Transitions
237(1)
Perpendicular Recording
238(2)
Magnetic Disk Storage
240(7)
Cylinders, Tracks and Sectors
240(2)
Low-Level Formatting
242(2)
Interfaces and Controllers
244(2)
Floppy Disk Drives
246(1)
Partitions and File Systems
247(5)
Primary Partitions and Extended Partitions
247(2)
File Systems and High-Level Formatting
249(1)
The Future: GUID Partition Tables (GPTs)
249(1)
Partitions on the Raspberry Pi SD Card
250(2)
Optical Discs
252(3)
CD-Derived Formats
254(1)
DVD-Derived Formats
254(1)
Ramdisks
255(2)
Flash Storage
257(10)
ROMs, PROMs and EPROMs
257(1)
Flash as EEPROM
258(2)
Single-Level vs. Multi-Level Storage
260(1)
NOR vs. NAND Flash
261(4)
Wear Levelling and the Flash Translation Layer
265(2)
Garbage Collection and TRIM
267(1)
SD Cards
268(2)
eMMC
270(1)
The Future of Non-Volatile Storage
271(2)
Chapter 7 Wired and Wireless Ethernet 273(58)
The OSI Reference Model for Networking
274(8)
The Application Layer
276(1)
The Presentation Layer
276(2)
The Session Layer
278(1)
The Transport Layer
278(1)
The Network Layer
279(2)
The Data Link Layer
281(1)
The Physical Layer
282(1)
Ethernet
282(14)
Thicknet and Thinnet
283(1)
The Basic Ethernet Idea
283(2)
Collision Detection and Avoidance
285(1)
Ethernet Encoding Systems
286(4)
PAM-5 Encoding
290(1)
10BASE-T and Twisted-Pair Cabling
291(1)
From Bus Topology to Star Topology
292(1)
Switched Ethernet
293(3)
Routers and the Internet
296(8)
Names vs. Addresses
296(1)
IP Addresses and TCP Ports
297(3)
Local IP Addresses and DHCP
300(2)
Network Address Translation
302(2)
Wi-Fi
304(27)
Standards within Standards
305(1)
Facing the Real World
305(4)
Wi-Fi Equipment in Use
309(2)
Infrastructure Networks vs. Ad Hoc Networks
311(1)
Wi-Fi Distributed Media Access
312(2)
Carrier Sense and the Hidden Node Problem
314(1)
Fragmentation
315(1)
Amplitude Modulation, Phase Modulation and QAM
316(3)
Spread-Spectrum Techniques
319(1)
Wi-Fi Modulation and Coding in Detail
320(3)
How Wi-Fi Connections Happen
323(2)
Wi-Fi Security
325(1)
Wi-Fi on the Raspberry Pi
326(3)
Even More Networking
329(2)
Chapter 8 Operating Systems 331(28)
Introduction to Operating Systems
333(10)
History of Operating Systems
333(3)
The Basics of Operating Systems
336(7)
The Kernel: The Basic Facilitator of Operating Systems
343(6)
Operating System Control
344(1)
Modes
345(1)
Memory Management
346(1)
Virtual Memory
347(1)
Multitasking
347(1)
Disk Access and File Systems
348(1)
Device Drivers
349(1)
Enablers and Assistants to the Operating System
349(5)
Waking Up the OS
349(4)
Firmware
353(1)
Operating Systems for Raspberry Pi
354(5)
NOOBS
354(2)
Third-Party Operating Systems
356(1)
Other Available Operating Systems
356(3)
Chapter 9 Video Codecs and Video Compression 359(24)
The First Video Codecs
360(13)
Exploiting the Eye
361(2)
Exploiting the Data
363(4)
Understanding Frequency Transform
367(4)
Using Lossless Encoding Techniques
371(2)
Changing with the Times
373(5)
The Latest Standards from MPEG
374(4)
H.265
378(1)
Motion Search
378(5)
Video Quality
381(1)
Processing Power
382(1)
Chapter 10 3D Graphics 383(44)
A Brief History of 3D Graphics
383(8)
The Graphical User Interface (GUI)
384(2)
3D Graphics in Video Games
386(1)
Personal Computing and the Graphics Card
387(3)
Two Competing Standards
390(1)
The OpenGL Graphics Pipeline
391(20)
Geometry Specification and Attributes
393(3)
Geometry Transformation
396(4)
Lighting and Materials
400(3)
Primitive Assembly and Rasterisation
403(2)
Pixel Processing (Fragment Shading)
405(2)
Texturing
407(4)
Modern Graphics Hardware
411(10)
Tiled Rendering
411(2)
Geometry Rejection
413(2)
Shading
415(1)
Caching
416(1)
Raspberry Pi GPU
417(4)
Open VG
421(2)
General Purpose GPUs
423(4)
Heterogeneous Architectures
423(2)
OpenCL
425(2)
Chapter 11 Audio 427(20)
Can You Hear Me Now?
427(2)
MIDI
428(1)
Sound Cards
428(1)
Analog vs. Digital
429(1)
Sound and Signal Processing
430(4)
Editing
431(1)
Compression
431(1)
Recording with Effects
432(1)
Encoding and Decoding Information for Communication
433(1)
1-Bit DAC
434(2)
I2S
436(1)
Raspberry Pi Sound Input/Output
437(1)
Audio Output Jack
437(1)
HDMI
438(1)
Sound on the Raspberry Pi
438(9)
Raspberry Pi Sound on Board
439(1)
Manipulating Sound on the Raspberry Pi
439(8)
Chapter 12 Input/Output 447(34)
Introducing Input/Output
448(3)
I/O Enablers
451(13)
Universal Serial Bus
452(3)
USB Powered Hubs
455(2)
Ethernet
457(1)
Universal Asynchronous Receiver/Transmitters
458(1)
Small Computer Systems Interface
459(1)
Parallel ATA
459(1)
Serial Advanced Technology Attachment
460(1)
RS-232 Serial
460(1)
High Definition Media Interface
461(1)
I2S
462(1)
I2C
463(1)
Raspberry Pi Display, Camera Interface and JTAG
464(17)
Raspberry Pi GPIO
464(1)
GPIO Overview and the Broadcom SoC
465(1)
Meeting the GPIO
466(7)
Programming GPIO
473(6)
Alternative Modes
479(1)
GPIO Experimentation the Easy Way
480(1)
Index 481
Eben Upton is one of the co-creators of the Raspberry Pi, driven by the desire to create a new generation of developers capable of making an effective contribution to the field. Eben is also a co-author of the Raspberry Pi User Guide.

Jeff Dunteman is a veteran tech author and a co-founder of Coriolis Press. His previous publications include Assembly Language Step By Step and Jeff Dunteman's Wi-Fi Guide.