+ All Categories
Home > Documents > Raspberry Pi- ARM11 Architecture v2 -...

Raspberry Pi- ARM11 Architecture v2 -...

Date post: 26-Mar-2018
Category:
Upload: vobao
View: 218 times
Download: 2 times
Share this document with a friend
19
Kevin Meehan Stephen Moskal Computer ArchitectureWinter 2012 Dr. Shaaban
Transcript
Page 1: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

Kevin MeehanStephen Moskal

Computer Architecture‐Winter 2012Dr. Shaaban

Page 2: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

ContentsRaspberry Pi  FoundationRaspberry Pi overview & specsARM11 overviewARM11 cache, pipeline, branch predictionARM11 vs. ARM9 ARM11 futureProgramming the Raspberry Pi Raspberry Pi uses and project ideasRaspberry Pi vs. Arduino

Page 3: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

Raspberry Pi FoundationUK registered educational charityPromote the study of computer scienceCheap, low‐power, programmable computersEducation, developing nationsOne Laptop per Child, Arduino

Page 4: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

Raspberry Piultra‐low‐cost ($25‐$35)credit‐card sized Linux computer10/100 Ethernet, HDMI, SD‐card, USBGPIO to control external devicesUART, I2C interface

Page 5: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

SpecificationsBroadcom BCM2835 System on a chip (SoC) [1]

ARM1176JZF‐S processor700 MHz with overclock capability to 1 GHz

VideoCore IV GPU [2]Supports 1080p H.264 decoding and encoding

256 MB (model A) or 512 MB (model B) SDRAM [3]26 available low‐level peripherals

GPIO, UART, I2C, I2S, +3.3V, +5V, GND Price: $35 

Page 6: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the
Page 7: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

ARM11‐ OverviewBased on the ARMv6 instruction set architecture. [4]

32‐bit ARM ISA16‐bit Thumb ISA

Used in embedded systems with low amounts of memory, not used in the RPi.

16 General‐purpose registers R0‐R15, 15 general purpose “mode‐specific” registers, 7 status registers [5]Designed to run various operating systems (Unix/Linux, Android) on many different devices (iPhone (Gen 3), Nintendo 3DS, etc.)

Page 8: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the
Page 9: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

ARM11 Cache OrganizationFour‐way set associative cache of configurable size. [4]

Virtually indexed and physically taggedSizes in the range of 4 to 64KB

Processor level‐one memory has separate instruction and data caches

Data cache misses are non‐blocking [5]L1 cache’s write buffer handles all RAW hazardsL2 cache is off chip

Page 10: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

Eight Stage PipelineFe1‐ Address is issued to memory, data returns from memory. [4]Fe2‐ Branch preditionDe‐ Instruction DecodeIss‐ Register read and instruction issueSh‐ Shifter stageALU‐Main integer operation calculationSat‐ Enable saturation of integer resultsWbex‐Write back

Page 11: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

ARM1176JZF‐S Pipeline Stages

Page 12: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

Typical Multiply Pipeline

Page 13: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

Branch Prediction [6]Static Predictor‐ First time run

Forward conditional branches are assumed to be takenBackward conditionals are assumed to be not taken

Dynamic Predictor‐Branch prediction cache as 128 entries based on the branch instruction address.States: Strongly not taken, weakly not taken, strongly taken, weakly taken.

A return stack predicts unconditional subroutine return instructions.

Page 14: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

ARM11 vs. ARM9Cache is physically addressed in ARM11[7]

ARM9 had cache aliasing and context switching issues.Redesigned pipeline

8 stages for ARM11 vs. 5 for ARM9ARM11 has out‐of‐order completionNo dynamic branch prediction in ARM9 (always assumed not taken)ARM11 has Load/Store and ALU paralellism

ARM11 64‐bit data paths vs. 32‐bit ARM9

Page 15: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

ARM11 FutureVery little.The reason that the Raspberry Pi is extremely cheap is because the ARM11 is outdated.It’s successor, the ARM Cortex A8 is a dual‐issue superscalar design, achieving double the IPC. [8]

The A8 is seen in the iPhone 4The A8 is been also seceded by the Cortex A15 and can be seen in the Nvidia Tegra 4 [9]

Page 16: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

Programming Raspberry Pi Raspbian, Arch Linux ARM, Debian, AndroidChrome OS, RISC OS, FedoraPython, C, Perl, Java (must compile for ARMv6)Education ManualScratch ‐ visual programming environmentRaspberry Pi App store [10]

Page 17: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

Raspberry Pi usesUniversity of Southampton supercomputer [11]Programming introduction for childrenSenior Design projects

Page 18: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

Raspberry Pi    vs.      ArduinoMicroprocessorComputer sciencemultimediaFull Linux environmentPython, C, Perl, Java

MicrocontrollerElectronicsSignal processingReal time applicationsC or C++

Page 19: Raspberry Pi- ARM11 Architecture v2 - meseec.ce.rit.edumeseec.ce.rit.edu/551-projects/winter2012/2-1.pdf · Raspberry Pi Foundation yUK registered educational charity yPromote the

References[1] "BCM2835 Media Processor; Broadcom". http://www.broadcom.com/products/BCM2835 1 September 2011. Retrieved 13 February 2013.[2] Brose, Moses (30 January 2012). "Broadcom BCM2835 SoC has the most powerful mobile GPU in the world?". Grand MAX. Retrieved 13 February 2013.[3] "Model B now ships with 512MB of RAM". http://www.raspberrypi.org/archives/2180. Retrieved 13 Febuary 2013. Retreived 13 February 2013[4] “Arm11 Processors” http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.ddi0360e/I1002919.htmlRetrieved 13 Febuary 2013[5] Davey, Oliveri (Spring 2009) “The ARM11 Architecture” Retrieved 12 February 2013[6] Sloss, Symes, Wright “ARM System Developer's Guide: Designing and Optimizing System Software” page 661, Retreived 13 February 2013[7] "The ARM11 Microarchitecture", ARM Ltd, 2002, Retreived 13 February 2013[8] “Cortex‐A8 Processors”http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.subset.cortexa.a8/index.html ARM Ltd Retreived 13 February [9] “NVIDIA Announces "Project Denver" to Build Custom CPU Cores Based on ARM Architecture, Targeting Personal Computers to Supercomputers”http://pressroom.nvidia.com/easyir/customrel.do?easyirid=A0D622CE9F579F09&version=live&releasejsp=release_157&xhtml=true&prid=705184 , Retrieved 13 Feburary 2013[10]] Brodkin, Jon. "ArsTechnica." Ars Technica. N.p., 17 Dec. 2012. Web. 18 Feb. 2013. <http://arstechnica.com/information‐technology/2012/12/raspberry‐pi‐now‐has‐an‐app‐store‐and‐yes‐it‐has‐games/>.[11] "University of Southampton." Southampton Engineers a Raspberry Pi Supercomputer. Retreived 18 Feb. 2013. <http://www.southampton.ac.uk/mediacentre/features/raspberry_pi_supercomputer.shtml>.


Recommended