computing platforms for the 21c - 25feb14

46
1 Computing Platforms for the 21Century Abstract: Wikipedia defines Platform as "A raised level surface on which people or things can stand". A more familiar technical interpretation applies to the hardware and OS configuration applicable to the execution of software; most frequently applicable to highly stable PC or Mainframe architectures. But the world has changed a lot in the 21 century as serious computing power moved into the hands of the consumer. Nowadays computers that don't look like computers, with production runs in the tens or hundreds of millions; totally eclipse traditional computing and thus the traditional computing platform. So does the ARM architecture define a new platform for this computing environment, or is it more complex than that? One of our greatest forefathers, Isaac Newton, realised the reality of platforms when he talked of standing on the shoulders of giants. A platform is a stable place where engineers and scientists can stand to achieve more than they would by their own efforts alone. Platforms are about re-using rather than re-inventing; about Productivity, Quality, TTM, ROI, etc. for the 21 century products we Engineers are now charged to deliver ... It's the economy, stupid! Context Seminar at Liverpool University http://www.liv.ac.uk/electrical-engineering-and-electronics/ 45min Keynote, 60min Slot. 25feb14 SlideCast and pdf available via http://ianp24.blogspot.co.uk/

Upload: ian-phillips

Post on 06-May-2015

535 views

Category:

Education


2 download

DESCRIPTION

(See http://youtu.be/Z0YU0T5cR6E ) A Compute Platform is normally considered to be the highly stable HW and SW architecture associated with Mainframe or PC computers. But the 21 century is bringing serious computing power to the hands of the consumer and computers that don't look like computers have totally eclipsed traditional computing market. Does this change the definition of the Compute Platform in the 21C? ## By Ian Phillips, Uo.Liverpool. 25feb14. http://ianp24.blogspot.co.uk/ ## Opinions expressed are my own.

TRANSCRIPT

Page 1: Computing Platforms for the 21C - 25feb14

1

Computing Platforms for the 21Century Abstract:

Wikipedia defines Platform as "A raised level surface on which people or things can stand". A more familiar technical interpretation applies to the hardware and OS configuration applicable to the execution of software; most frequently applicable to highly stable PC or Mainframe architectures. But the world has changed a lot in the 21 century as serious computing power moved into the hands of the consumer. Nowadays computers that don't look like computers, with production runs in the tens or hundreds of millions; totally eclipse traditional computing and thus the traditional computing platform. So does the ARM architecture define a new platform for this computing environment, or is it more complex than that? One of our greatest forefathers, Isaac Newton, realised the reality of platforms when he talked of standing on the shoulders of giants. A platform is a stable place where engineers and scientists can stand to achieve more than they would by their own efforts alone. Platforms are about re-using rather than re-inventing; about Productivity, Quality, TTM, ROI, etc. for the 21 century products we Engineers are now charged to deliver ... It's the economy, stupid!

Context Seminar at Liverpool University

http://www.liv.ac.uk/electrical-engineering-and-electronics/

45min Keynote, 60min Slot. 25feb14

SlideCast and pdf available via http://ianp24.blogspot.co.uk/

Page 2: Computing Platforms for the 21C - 25feb14

2

Prof. Ian Phillips Principal Staff Eng’r,

ARM Ltd [email protected]

Visiting Prof. at ...

Contribution to Industry Award 2008

Seminar Uo.Liverpool

25feb14

1v0

SlideCast and pdf available via http://ianp24.blogspot.co.uk/

Opinions expressed are those of the author alone

Page 3: Computing Platforms for the 21C - 25feb14

3

The Traditional Computing Platform General Purpose Compute Platforms PC – Dominated by x86 architecture (Intel + AMD + Windows)

Windows ‘N’

DOS

Linux

OpenBSD

FreeVMS

But also Apple ... MacOS ‘N’ – Universal Binaries (PowerPC/x86)

Mainframe - IBM, EMC, Hitachi, Unysis, HP, NEC, Fujitsu Fortran C/C++ Cobol - One of first languages (1959). In 1997, 80% of the world's business ran on COBOL with >200

billion lines of code in existence and >5 billion lines of new code annually (Gartner).

Portable Computing – Pocketable GP Compute Platforms iOS (iPad/iPhone/iPod) Android Windows 8

... We all have our personal favourites!

Page 4: Computing Platforms for the 21C - 25feb14

4

Markets provide the Product Opportunities

1960 1970 1980 1990 2000 2010 2020

Milli

ons

of U

nits

1st Era Select work

tasks

2nd Era Broad-based computing

for specific tasks

3rd Era Computing as part

of our lives

... Older Markets are still there; just not the Biggest!

Page 5: Computing Platforms for the 21C - 25feb14

5

The Face of Computing Today

Page 6: Computing Platforms for the 21C - 25feb14

6

The Face of Computing Today

Page 7: Computing Platforms for the 21C - 25feb14

7

The Computing Machine ... Computing: A general term for algebraic manipulation of Data ...

... State and Time are frequently factors in this.

It can include phenomena ranging from human thinking to calculations with a narrower meaning. Wikipedia

Usually used it to exercise analogies (models) of real-world situations; Frequently in real-time (Fast enough to be a stabilising factor in a loop).

... Not prescriptive about Implementation Technology! ... Not prescriptive about Programmability!

y=F(x,t,s) Numerated Phenomena

IN (x)

Processed Data/ Information

OUT (y)

Page 8: Computing Platforms for the 21C - 25feb14

8

Antikythera c87BC ... Planet Motion Computer

See: http://www.youtube.com/watch?v=L1CuR29OajI

Early-Mechanical Computation

• Inventor: Hipparchos (c.190 BC – c.120 BC). Ancient Greek Astronomer, Philosopher and Mathematician.

• Single-Task, Continuous Time, Analogue Mechanical Computing (With backlash!)

Page 9: Computing Platforms for the 21C - 25feb14

9

Babbage's Difference Engine 1837

The difference engine consists of a number of columns, numbered from 1 to N. Each column is able to store one decimal number. The only operation the engine can do is add the value of a column n + 1 to column n to produce the new value of n. Column N can only store a constant, column 1 displays (and possibly prints) the value of the calculation on the current iteration.

Computer for Calculating Tables: A Basic ALU Engine

(Re)construction c2000

Late-Mechanical Computation

Page 10: Computing Platforms for the 21C - 25feb14

10

“Baby” 1947 (Reconstruction)

General Purpose, Quantised Time and Data, (Digital) Electronic Computing

Valve/Software Computation

Page 11: Computing Platforms for the 21C - 25feb14

11

Electronic System1 2014

Analogue Electronics Digital Electronics Software Memory Mechanics Micro-Motors Optics Sensors Displays Discharge Tube Robotic Assembly Plastic, Metal, Glass

...Technologies working seamlessly to deliver Functionality ... Enhanced Human Memory

1: aka; Cyber-Physical System (Geek-Talk!)

Incorporating DIGIC5+ (ARM)

Page 12: Computing Platforms for the 21C - 25feb14

12

Putting Technologies into Context 21c Businesses have to be Selling things that Customers (esp. End-Customers) want to buy. Focusing on Their Core Competencies Opportunities, Competition, Operations and Investors are Global

Business by ... Product Differentiation (Functionality+) Focusing on what End-Customers need ... Technologies enable Product Options ..but..

Business-Models make the Money

New Products are Design is a Cost (Risk) to be Minimised Technology (HW, SW, Mechanics, Optics, Graphene, etc)

just offers the potential to differentiate your Products! The Value of New Technology may not exceed the Cost (Risk)!

... Successful End-Products fund their entire Value-Chains

Page 13: Computing Platforms for the 21C - 25feb14

13

Moore’s Law: A Technology Opportunity ... 10nm

100nm

1um

10um

100um

Appr

oxim

ate

Proc

ess

Geo

met

ry

ITRS’99

Tran

sist

ors/

Chi

p (M

)

Tran

sist

or/P

M (K

)

X

http://en.wikipedia.org/wiki/Moore’s_law

Page 14: Computing Platforms for the 21C - 25feb14

14

... But an Increasing Design Problem ! 10nm

100nm

1um

10um

100um

Appr

oxim

ate

Proc

ess

Geo

met

ry

ITRS’99

Tran

sist

ors/

Chi

p (M

)

Tran

sist

or/P

M (K

)

http://en.wikipedia.org/wiki/Moore’s_law

Page 15: Computing Platforms for the 21C - 25feb14

15

... With Supporting

Methodology!

(Incl. Software)

Pre.1990 chip design was entire ... Moore’s Law was handled by ever Bigger Teams and ever Faster Tools With Improved Productivity through HDL and Synthesis ... I was a chip designer in 1978; and did it all myself in 3mth (~1k gates!)

Post 1995 reuse silently entered the picture ... Circuit Blocks CPUs (and Software) External IP Up-Integration Chip Reuse (ASSP) ... Delivering Productivity, Quality and Reliability

... Birth of IP and Know-How Companies (Like ARM c1991)

... Lead to the Commoditisation of Silicon (and FABs) !

Reuse Closes the Productivity Gap!

Page 16: Computing Platforms for the 21C - 25feb14

16

How Much Reuse Today? Mobile Products have ~500m gate SoCs / ~500m lines of code Doubling every 18mth Designer Productivity: is just 100-1000 Gates(Lines)/day That is tested, verified, incorporated gates(lines) That’s 2,500-25,000 p.yrs to clean-sheet design! (Un-Resourceable)

Typically ‘Product Designs’ have 50-200 p.yr available ... That’s just ~0.5% New ... >99.5% Reuse already! Not Viable to do clean-sheet product design ... nor has it been since ~1995

The core HW/SW is only a part of a Product ... There’s all of the other Components and Sub-Systems There’s the IO systems (RF, Audio, Optical, Geo-spatial, Temporal) There’s the Mechanical There’s the Reproduction (Factory) There's the Business Model (Cash-flow, Distribution, Legal) There’s the Support (Repair, Installation, Maintenance, Replacement)

Page 17: Computing Platforms for the 21C - 25feb14

17

How do we Reuse? Design Tools (across all Product Disciplines) underpin this ... Reuse of Modules and Components Reuse of Existing Code and Circuits Sharing Methodology Sharing Architecture Creating Tools to Accelerate Methodology and Repeatability Design For “x” (DFx) is Design For Up-Stream (Re)Deployment

A significant part is (and will remain) Knowledge based ... The Designer has done similar work before The Team has Collective experience The Company has experience and a customer base

The Design Engineer’s Role is ... To create Order out of Chaos Using Current-Technology and Knowledge; to create a Viable Product

Page 18: Computing Platforms for the 21C - 25feb14

18

Reuse Platform for Productivity Disintegration of Value-Chains ... Allows Componentisation of Product (Physical and Virtual) Encourages Focus on Your Value-Add Outsource other people’s expertise Across all aspects of business (Technical, Business and Admin) Created the opportunity for ; and for many others.

Changed the meaning of Local ... ∘ English as the lingua-franca ∘ International Contract Law ∘ Instant global telecoms (ICT) ∘ The World-Trade Organisation (WTO) ∘ IT and the Internet ∘ Standardisation of GP-Compute Architecture

... This is a very different way of conducting business ... has never happened before in Human History ... And most people don’t see it today

Page 19: Computing Platforms for the 21C - 25feb14

19

Growing opinion that 14 or 7nm will be the smallest yieldable node ... Ever!

All Exponentials Must End ... 130nm

90nm

30nm

14nm

7nm

Just 2-3 gen. (3-5yr) to the end of Planar Scaling

... can get into the last of the of planar chips! Its also the end-of-the-road for

‘promising technologies’ ! Clean-Sheet Synthesis Scalable Processor Arrays Formal Design Top-Down Design

Only things on the drawing board today ...

...And the end for Moore’s Law?

Page 20: Computing Platforms for the 21C - 25feb14

20

Packing Technology into an iCon

Analogue and Digital Design Embedded Software Mechanics, Plastics and Glass Micro-Machines (MEMs) Displays and Transducers Robotics and Test Knowledge and Know-How Research, Education and Training Components, Sub-Systems and Systems;

Design, Assembly and Manufacture Metrology, Methodology and Tools ... Involving Many Specialist Businesses

... Round and Round the World ... Not-Least from the UK

Page 21: Computing Platforms for the 21C - 25feb14

21

Inside The Control Board (a-side)

http://www.ifixit.com

Level-2: Sub-Assemblies Visible Computing Contributors ...

Samsung: Flash Memory - NV-MOS (ARM Partner) Cirrus Logic: Audio Codec - Bi-CMOS (ARM Partner) AKM: Magnetic Sensor - MEM-CMOS Texas Instruments:Touch Screen Controller and mobile DDR - Analogue-CMOS (ARM Partner) RF Filters - SAW Filter Technology

Invisible Computing Contributors ... OS, Drivers, Stacks, Applications, GSM, Security, Graphics, Video, Sound, etc Software Tools, Debug Tools, etc

Page 22: Computing Platforms for the 21C - 25feb14

22

Inside The Control Board (b-side)

GPS Bluetooth, EDR &FM

http://www.ifixit.com

Level-2: Sub-Assemblies More Visible Computing Contributors ... A4 Processor. Spec:Apple, Design & Mfr: Samsung Digital-CMOS (nm) ...

Provides the iPhone 4 with its GP computing power. (Said to contain ARM A8 600 MHz CPU and other ARM IP)

ST-Micro: 3 axis Gyroscope - MEM-CMOS (ARM Partner) Broadcom: Wi-Fi, Bluetooth, and GPS - Analogue-CMOS (ARM Ptr) Skyworks: GSM Analogue-Bipolar Triquint: GSM PA Analogue-GaAs Infineon: GSM Transceiver - Anal/Digi-CMOS (ARM Partner)

Page 23: Computing Platforms for the 21C - 25feb14

23

The A4 SIP Package (Cross-section)

Down 3-Levels: IC Packaging The processor is the centre rectangle. The silver circles beneath it are solder balls. Two rectangles above are RAM die, offset to make room for the wirebonds.

Putting the RAM close to the processor reduces latency, making RAM faster and cuts power. Unknown Mfr (Memory) Samsung/ARM (Processor) Unknown (SIP Technology)

Source ... http://www.ifixit.com

Processor SOC Die

2 Memory Dies

Glue

Memory ‘Package’

4-Layer Platform Package’

Page 24: Computing Platforms for the 21C - 25feb14

24

The Processor Unit (Nvidea Tegra 3, Around 1B transistors)

NB: The Tegra 3 is similar to the A4/5, but is not used in the iPhone

Page 25: Computing Platforms for the 21C - 25feb14

25

Lots and Lots of Designers ...

159 Tier-1 Suppliers ... Thousands of Design Engineers 10’s of thousands of Engineers Globally

... Hundreds more Tier-2 suppliers (Including ARM)

Page 26: Computing Platforms for the 21C - 25feb14

26

… System-Packaging Maintains Momentum! Interposer today

Die-Integration ..and.. Genuine 3D-Process very soon

10 Layer Interposer

4x Transfer to Production

8x Sampling

10 stack 1.6 mm Active Carrier

DRAM - 20nm Si FIN-MOS CPU- 90nm Si CMOS RF - 300nm GaAs PV - 500nm Ge

Die-Stack Mixed-Technology

300nm Si CMOS

Die-Stack

13aug13

24-Layers 3D NAND-Flash

Page 27: Computing Platforms for the 21C - 25feb14

27

Electronic era:

1975-2005 System era:

2003-2030

x2 System Functionality every 18-24mth A Cascade of Technologies over the ages

... A ‘Law’ that started: Stone ⇒ Wood ⇒ Bronze ⇒ Iron ⇒ ...

Moore's Real Law ... Fu

nctio

nal D

ensi

ty (u

nits

)

1960 1980 2000 2020

102

1010

106

1012

100

Page 28: Computing Platforms for the 21C - 25feb14

28

ARM: A Platform for Electronic Systems? “ARM designs processor technology

that lies at the heart of advanced consumer products”

Page 29: Computing Platforms for the 21C - 25feb14

29

Multiplier

Instruction Decoder

Address Incrementer

nRESET ABORT

nIRQ nFIQ

WRITE SIZE[1:0]

LOCK

CPnCPI CPA CPB

CLKEN CLK

CPnOPC

CFGBIGEND

TRANS

RDATA[31:0]

Barrel Shifter

32 Bit ALU Write Data Register

Address Register

Register Bank

ADDR[31:0]

and

Control Logic

A B u s

A L U B u s

P C

PC Update

Decode Stage

Instruction Decompression

Incrementer

Read Data Register

WDATA[31:0]

PROT

Scan Debug Control

B B u s

1991: ARM a RISC-Processor Core …

Page 30: Computing Platforms for the 21C - 25feb14

30

The ‘Lego-Brick’ Chip-Design Concept

ARM7 Core

DMA

Par. Port

PCMCIA UART (2)

Int’t. Contr.

Memory Interface

Timers W’Dog Arb’tr. Misc.

Page 31: Computing Platforms for the 21C - 25feb14

31

Today, users require a pocket ‘Super-Computer’ ... Silicon Technology Provides a few-Billion transistors ...

ARM’s Technology (still) makes it Practical to utilise them ...

Systems Get Ever-More Complex!

• 10 Processors • 4 x A9 Processors (2x2): • 4 x MALI 400 Fragment Proc: • 1 x MALI 400 Vertex Proc. • 1 x MALI Video CoDec • Software Stacks, OS’s and Design

Tools/ • ARM Technology gives

chip/system designers ... • Improved Productivity • Improved TTM • Improved Quality/Certainty

ARM

ARM

ARM

ARM

ARM

ARM

nVidea Tegra3

... So By Definition ARM is (≥1) Platform!

Page 32: Computing Platforms for the 21C - 25feb14

32

Systems using Billions of Transistors ARM Technology drives efficient

Electronic System solutions: Software increasing system efficiency

with optimized software solutions Diverse components, including CPU

and GPU processors designed for specific tasks Interconnect System IP delivering

coherency and the quality of service required for lowest memory bandwidth Physical IP for a highly optimized

processor implementation

Backed by >900 Global Partners ... >800 Licences Millions of Developers

Page 33: Computing Platforms for the 21C - 25feb14

33

C/C++ Development

Middleware

Debug & Trace

Methodology For Productivity

Energy Trace Modules

Page 34: Computing Platforms for the 21C - 25feb14

34

The Right Horse for The Course ...

... Delivering ~5x speed (Architecture + Process + Clock)

About 50MTr

About 50KTr

Page 35: Computing Platforms for the 21C - 25feb14

35

... Means 24 Processors in 6 Families

Page 36: Computing Platforms for the 21C - 25feb14

36

A Platform for Power Efficiency Watts don’t just happen; they are caused! In the Chip ... Matching the processor to the application Minimise voltage/frequency (P=CV2f) Variable/Gated clock domains Variable/Switched voltage domains Maximises Activity-Proportionality (Counter Intuitive)

In the Software ... Give the OS and the Application SW

Information and Controls Methodology and Utilities

In the System ... Architecture Extend control beyond the chip

... HW Dissipates, but SW Makes It!

Page 37: Computing Platforms for the 21C - 25feb14

37

Parallel is More Power-Efficient

Processor

f

Input Output

Processor

f/2

Processor

f/2

f

Input Output

Capacitance = 2.2C Voltage = 0.6V

Frequency = 0.5f Power = 0.4CV2f

Capacitance = C Voltage = V

Frequency = f Power = CV2f

... By a factor determined by Amdahl or Gustafson?

Page 38: Computing Platforms for the 21C - 25feb14

38

CoreLink Supports Multi-Processing

ACE

ACE

NIC-400 Network Interconnect

Flash GPIO

NIC-400

USBQuad Cortex-

A15

L2 cache

Interrupt Control

CoreLink™DMC-520

x72DDR4-3200

PHY

AHB

Snoop Filter

Quad Cortex-

A15

L2 cache

Quad Cortex-

A15

L2 cache

Quad Cortex-

A15

L2 cache

CoreLink™DMC-520

x72DDR4-3200

8-16MB L3 cache

PCIe10-40GbE

DPI Crypto

CoreLink™ CCN-504 Cache Coherent Network

IO Virtualisation with System MMU

DSPDSP

DSP

SATA

Dual channel DDR3/4 x72

Up to 4 cores per cluster

Up to 4 coherent clusters

Integrated L3 cache

Up to 18 AMBA

interfaces for I/O coherent accelerators

and IO

Peripheral address space

Heterogeneous processors – CPU, GPU, DSP and accelerators

Virtualized Interrupts

Uniform System

memory

Page 39: Computing Platforms for the 21C - 25feb14

39

big.LITTLE Processing For High-Performance, Variable-Load systems...

Tightly coupled combination of two ARM CPU clusters: Cortex-A15 (big Performance) and Cortex-A7 (LITTLE Power) - functionally identical Same programmers view, looks the same to OS and applications

big.LITTLE combines high-performance and low power Automatically selects the right processor for the right job Redefines the efficiency/performance trade-off

big

“Demanding tasks”

LITTLE

“Always on, always connected tasks”

30% of the Power (select use cases)

Current smartphone

big.LITTLE Current smartphone

big.LITTLE

>2x Performance

Page 40: Computing Platforms for the 21C - 25feb14

40

Fine-Tuned to Different Performance Points

Simple, in-order, 8 stage pipelines

Performance better than mainstream, high-volume smartphones (Cortex-A8 and Cortex-A9)

Most energy-efficient applications processor from ARM

Complex, out-of-order, multi-issue pipelines

Up to 2x the performance of today’s high-end smartphones

Highest performance in mobile power envelope

Cortex-A7 Cortex-A53

Cortex-A15 Cortex-A57

LIT

TLE

bi

g

Queue

Issue

Integer

Page 41: Computing Platforms for the 21C - 25feb14

41

CPU Migration Migrate a single processor workload to the appropriate CPU Migration = save context then resume on another core Also known as Linaro “In Kernel Switcher”

DVFS driver modifications and kernel modifications Based on standard power management routines Small modification to OS and DVFS, ~600 lines of code

big.LITTLE MP OS scheduler moves threads/tasks to appropriate CPU Based on CPU workload Based on dynamic thread performance requirements

Enables highest peak performance by using all cores at once

big.LITTLE Software Model

Page 42: Computing Platforms for the 21C - 25feb14

42

A Platform for Applications

Raspberry-Pi (Samsung CPU)

Xilinx Zinq

BeagleBoard Black (TI CPU)

Samsung

Page 43: Computing Platforms for the 21C - 25feb14

43

A Platform for Things (IoT)

NXP Freescale

mbed web-based dev’t iot environment

www.mbed.org ST Micro

Page 44: Computing Platforms for the 21C - 25feb14

44

A Platform for Society Electronic Systems will underpin all aspects of our lives. We depend on them today; we will

be ever-more-so in the future Based on Electronic Technology,

but integrate a mix of technology to delivering Human-Level Functionality.

Economic Independence of supply is not an option: but Co-Dependence is!

The most important technology in a System is the one that doesn’t work!

...They will NOT Solve Societies Challenges, but will be fundamental to the solutions.

Page 45: Computing Platforms for the 21C - 25feb14

45

Conclusions ... Business is about Making Money for Investors ... Good enough is enough; perfection is for the gods. Technology enables Product Options; not all of which are Valuable Most Tech Enterprises, provide ‘components’ into ES Products

Platforms are Productivity-Aids ... A way of creating new Products as quickly and cheaply as possible Sophisticated is not the same as Valuable ARM is a Productivity-Aid to the biggest Computer Market today

Electronic Systems will underpin all of our futures ... Society will create the 21C using the power of Electronic Systems And will be increasingly unaware of them and their technologies! Ever more Sophisticated Systems will require ever greater Reuse

... Platforms will make 21C Electronic-Systems Possible

Page 46: Computing Platforms for the 21C - 25feb14

46

Prof. Ian Phillips Principal Staff Eng’r,

ARM Ltd [email protected]

Visiting Prof. at ...

Contribution to Industry Award 2008

http://ianp24.blogspot.co.uk/ [email protected]