today’s smartphone architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · armv8-a...

22
Today’s Smartphone Architecture Malik Wallace Rafael Calderon

Upload: others

Post on 26-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Today’s Smartphone ArchitectureMalik Wallace

Rafael Calderon

Page 2: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Agenda

History

What is a Smartphone?

Smartphone Innovations

Today’s Smartphones

Hardware

Internals of Smartphones - SoC

CPU Architecture

Supported ISA

Examples

Future

Future Technologies

Page 3: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

What is a Smartphone?

It is a cellphone and PDA combined with additional computer-like features

Initially cellphones were only able to make calls, and PDAs were only able to store contact information and create to-do lists

Over time people wanted wireless connectivity, which was restricted to computers and laptops, integrated onto PDAs and cellphones thus came the smartphone

Page 4: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Smartphone Innovations - Timeline

1993 The First Smartphone - IBM Simon

1996 Nokia’s First Smartphone

1997 Ericsson GS88 - The first device labeled as a smartphone

2000 Symbian OS

2001 Windows CE Pocket PC OS

2002 Palm OS and Blackberry OS

2007 The iPhone with iOS, first phone with multi-touch capabilities

2008 HTC Dream with Android OS

Page 5: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Today’s Smartphones

Dominated by Android and Apple

Features rich user interface with a variety of applications that integrate with the phone's architecture.

Utilizes specific mobile operating systems which combines the features of personal computers with those of mobile phones.

Built for efficiency, meant to use the least amount of power as possible (debatable!)

Page 6: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general
Page 7: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general
Page 8: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general
Page 9: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Let’s Talk about the Hardware

Page 10: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

System-on-Chip (SoC)

In order to maintain portability and lower power consumption system-on-chips were the chosen IC for smartphones

CPU

GPU

Memory

Busses and Channels

I/O

Networking

Anything extra

Page 11: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Harvard Architecture

Instructions and data are treated the same

Instructions are read and accessed just like data

However...

Each have a separate memory and bus system

Each can be accessed simultaneously

Page 12: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

ARM big.LITTLE

General concept: Pair a more powerful (big) core with a low powered, energy-efficient core (LITTLE).

The computer sees this thing as one multi-core system.

Any menial tasks sent to the bigger core will be processed by the low-powered core without spending any resources on the larger main core.

Both cores access the same memory system, but they retain their own memory caches.

The Global Task Scheduler (GTS) sends tasks to a specific core depending on the intensity of the power consumption of each core.

The cores are never both on at the same time, but ARM has left “an open door” to developers who wish to operate the system this way.

Page 13: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

ARMv8-A: Supporting 64-bits

Introduces 64-bit support

Maintains and enhances 32-bit support

Focuses on a power efficient implementation

Utilizes larger registers for general purpose and media instructions

Page 14: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

ARMv8-A: Details

ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes:

● 64-bit general purpose registers, SP (stack pointer) and PC (program counter)● 64-bit data processing and extended virtual addressing

Two main execution states:

● AArch64 - The 64-bit execution state including exception model, memory model, programmers' model and instruction set support for that state

● AArch32 - The 32-bit execution state including exception model, memory model, programmers' model and instruction set support for that state

Page 15: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Apple A9

“Twister” Processor

Dual Cores

ARM big.LITTLE

ARMv8-A

Page 16: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Apple A9’s Cache

L1- Separate

L2- Unified

L3- Unified (Victim Cache)

Page 17: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Qualcomm Snapdragon 820

Kryo Processor

Quad Cores (2 lower clocked, 2 higher clocked)

Harvard

ARMv8-A

Page 18: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Qualcomm Snapdragon 820’s Cache

L1 - Separate

L2 - Unified

Page 19: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Has the Smartphone Reached Its Peak?

Page 20: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Future Technologies

Smartphones and their ecosystems are firmly established

Efforts are being focused on furthering the development of

- Wearables- Advanced Driver Assistance Systems (ADAS)- Internet of Things (IoT)

Page 21: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Referenceshttp://cellphones.about.com/od/smartphonebasics/a/what_is_smart.htmhttp://www.bitrebels.com/technology/the-evolution-of-smartphones-infographic/http://www.ubergizmo.com/what-is/system-on-a-chip/http://www.arm.com/products/processors/armv8-architecture.phphttp://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/3738.htmlhttps://www.arm.com/products/processors/technologies/biglittleprocessing.phphttp://system-on-a-chip.specout.com/l/1172/Apple-A9-APL0898http://www.tomshardware.com/reviews/apple-iphone-6s-6s-plus,4437-6.htmlhttp://system-on-a-chip.specout.com/l/1170/Qualcomm-Snapdragon-820-MSM8996http://www.tomshardware.com/reviews/snapdragon-820-performance-preview,4389-2.htmlhttp://www.theverge.com/2015/1/6/7500743/ces-2015-internet-of-things-advanced-driver-assistancehttp://www.ubergizmo.com/2013/01/what-is-arm-big-little/http://www.slideshare.net/matungaolson/von-neumann-vs-harvard-architecture

Page 22: Today’s Smartphone Architecturemeseec.ce.rit.edu/551-projects/spring2016/2-6.pdf · ARMv8-A introduces 64-bit architecture support to the ARM architecture and includes: 64-bit general

Questions?