Prozessor- und Rechnerarchitekturen (Master)

Prozessor- und Rechnerarchitekturen 10.05.2017 Prozessor- und Rechnerarchitekturen (Master) Themen am 10.05.17: ARM GPUs – Graphic Processing Units ...
11 downloads 2 Views 4MB Size
Prozessor- und Rechnerarchitekturen

10.05.2017

Prozessor- und Rechnerarchitekturen (Master) Themen am 10.05.17: ARM GPUs – Graphic Processing Units und Ihr Einsatz in gängigen mobilen Geräten (iPad3, Samsung Galaxy SIII, Galaxy Tab 7.7) ProRecArc17_V5 © Ulrich Schaarschmidt FH Düsseldorf, SS 2017

Literatur- und Herkunftsnachweise (ungeordnet) Furber, Steve:

ARM – Rechnerarchitekturen für System-on-Chip-Design Mitp-Verlag Bonn (Pearson Education Ltd.) 2002 www.arm.com http://www.cs.man.ac.uk/ http://www.eetimes.com/General/PrintView/4375114 http://www.eetimes.com/General/PrintView/4373329 http://www.eetimes.com/General/PrintView/4304118 Wikipedia: Mali (GPU), Tegra (NVIDIA), graphics processing unit, Samsung Galaxy S II, Samsung Galaxy S III, Apple Ax, Samsung Galaxy Tab 7.7  www.apdl.co.uk/riscworld/volume8/issue5/grapharm/chap11.htm 10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

2

1

Prozessor- und Rechnerarchitekturen

10.05.2017

Literatur – und Quellnachweise O.v. Fragstein; S. Kundt:  

ARM Cortex Ausarbeitung im Fach „Prozessor- und Rechnerarchitektur“, 2011

R. Fischer:  

ARM Cortex – M- Serie (M0/M0+, M3, M4) Ausarbeitung im Fach „Prozessor- und Rechnerarchitektur“, 2012

NXP-semiconductor R. Aydin:  

Cortex M0 und Cortex M0+ Ausarbeitung im Fach „Prozessor- und Rechnerarchitektur“, 2013

Nn. Infineon:

http://www.infineon.com/KIT_XMC_2GO_XMC1100_V1

10.05.2017

U.G. Schaarschmidt - HS-D

3

Firma ARM (Geschäftsmodell) Verkauft keine Hardware sondern lizensiert IP (Intelectual Property), -> Beschreibung der Hardware z.B. in VHDL, Tools zur Programmierung, Tools zum weiteren Hardwaredesign, Vergibt die Erlaubnis Chips zu verkaufen (um daran zu verdienen) 10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

4

2

Prozessor- und Rechnerarchitekturen

10.05.2017

Aufteilung der ARM und Cortex Leistungsklassen

10.05.2017

U.G. Schaarschmidt - HS-D

5

Übersicht Leistungsklassen Cortex M 

Mikrocontroller, geringstmöglicher Energieverbrauch, trotz 32 bit-Verarbeitung

Cortex R 

Real Time Anwendungen,

Cortex A Application Anwendungen (z.B. Smartphones , Tablets, etc.) 10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

6

3

Prozessor- und Rechnerarchitekturen

10.05.2017

Architektur – und sonstige Merkmale

10.05.2017

U.G. Schaarschmidt - HS-D

7

Verschiedene bekannte Technologien

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

8

4

Prozessor- und Rechnerarchitekturen

10.05.2017

ARM Architektur und Erweiterungen Thumb und Thumb2 ARM Befehlssatz 

32 Bit,

Thumb Befehlssatz     

16 Bit, es muss von 32 auf 16 Bit Verarb. Umgesch. Limitierte Operanden / Register / Sprünge, Geringere Funktionalität, Höhere Codedichte möglich, Höhere Performanz bei kleinen Systemen möglich,

Thumb 2 Befehlssatz  10.05.2017

Mischt Thumb und ausgewählte ARM-Befehle um beide Vorteile zu nutzen U.G. Schaarschmidt - HS-D

9

Cortex Mx - Familien

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

10

5

Prozessor- und Rechnerarchitekturen

10.05.2017

Infineon XMC 2Go (Cortex M0)

10.05.2017

U.G. Schaarschmidt - HS-D

11

Infineon XMC 2Go (Cortex M0) XMC1100 (ARM® Cortex™-M0 based), Flash 64kB, RAM 16kB, 32 MHz CPU Clock, 64 MHz Timer Clock, On-board J-Link Lite Debugger (Realized with XMC4200 Microcontroller) 

Serial Wire Debug (SWD), Single Pin Debug (SPD), UART-to-USB Bridge (virtual COM)

Power over USB (Micro USB), 2 Kanal USIC (UART, SPI, I2C, I2S, LIN), External Interrupts (via ERU), 6 Kanal AD-C (12-Bit Auflösung), 4 * 16 Bit Timer, Real Time Clock, Random Number Generator, ESD and reverse current protection 2 x user LED @ P1.0 und P1.1, Pin Header 2x8 Pins suitable for Breadbord [http://www.infineon.com/] 10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

12

6

Prozessor- und Rechnerarchitekturen

10.05.2017

Blockdiagramm des XMC 2Go Kits

10.05.2017

U.G. Schaarschmidt - HS-D

13

Klein aber oho 

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

14

7

Prozessor- und Rechnerarchitekturen

10.05.2017

Aktuelle ARM Prozessoren

10.05.2017

U.G. Schaarschmidt - HS-D

15

U.G. Schaarschmidt - HS-D

16

Cortex M0

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

8

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex M0 Beispielimplementierung

HS Düsseldorf

10.05.2017

U.G. Schaarschmidt - HS-D

17

10.05.2017

U.G. Schaarschmidt - HS-D

18

(c) U.Schaarschmidt

9

Prozessor- und Rechnerarchitekturen

10.05.2017

ARM Prozessorarchitektur

10.05.2017

U.G. Schaarschmidt - HS-D

19

U.G. Schaarschmidt - HS-D

20

Pipeline

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

10

Prozessor- und Rechnerarchitekturen

10.05.2017

Speicherschutz

10.05.2017

U.G. Schaarschmidt - HS-D

21

Befehlssätze der M-Familie

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

22

11

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex M0 - Blockdiagramm

10.05.2017

U.G. Schaarschmidt - HS-D

23

Cortex M - Familie

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

24

12

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex M - Vergleich

² mit Branch Speculation; * Minimalkonfiguration (40nm)

HS Düsseldorf

10.05.2017

U.G. Schaarschmidt - HS-D

25

10.05.2017

U.G. Schaarschmidt - HS-D

26

(c) U.Schaarschmidt

13

Prozessor- und Rechnerarchitekturen

Leistungsmerkmal

10.05.2017

Cortex M0+

10.05.2017

Cortex M0

Cortex M3

ARM7TDMI-S

U.G. Schaarschmidt - HS-D

27

Vergleich mit anderen (schwächer motorisierten  )

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

28

14

Prozessor- und Rechnerarchitekturen

10.05.2017

10.05.2017

U.G. Schaarschmidt - HS-D

29

ARM Architektur und Erweiterungen VFP – Vector Floating Point Architecture

 Coprozessor für Gleitkommaberechnung  16, 32, 64 Bit Gleitkommazahlen  Entlastung des Hautprozessors  Schnelle Abarbeitung

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

30

15

Prozessor- und Rechnerarchitekturen

10.05.2017

ARM Architektur und Erweiterungen SIMD Extension for Multimedia  Coprozessor für Multimedia Anwendungen  SIMD => Single Instruction Multiple Data  Ein Befehl wird parallel auf verschiedenen Daten ausgeführt  Funktionen • Bruchrechnung • Gleichzeitige Berechnung von 4 8-Bit Zahlen oder 2 16Bit Variablen • Multiplikation von 16 und 32 Bit in Hardware

10.05.2017

U.G. Schaarschmidt - HS-D

31

ARM Architektur und Erweiterungen Neon  Erweiterung der SIMD-Extension  Es werden 8, 16, 32 signed und unsigned Datentypen und 32-Bit Float-Variablen unterstützt  Maximal 16 Operationen parallel  Bibliotheken für Multimediaformate wie jpg, mp3, MPEG-4, usw.  Bibliotheken für Filter wie FIR, IIR, usw.  Vektoroperationen wie Skalieren, Drehen, usw. 10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

32

16

Prozessor- und Rechnerarchitekturen

10.05.2017

ARM Architektur und Erweiterungen TrustZone  Kapselung von sicherheitskritischen Prozessen (Onlinebanking, Verschlüsselung, …)  Zwei virtuelle Prozessoren auf einem realen Prozessor  Unsichere Welt hat beschränkten Zugriff auf sichere Welt  Zugriffverwaltung durch Monitor-Mode

10.05.2017

U.G. Schaarschmidt - HS-D

33

ARM Architektur und Erweiterungen Jazelle Jazelle DBX (Direct Bytecode eXecution)  In Hardware realisierte virtuelle Maschine für Java Bytecode  Hohe Geschwindigkeit  Niedriger Stromverbrauch Jazelle RCT (Runtime Compilation Target)  Just in Time Compiler für Java und .net  Wandelt Quellcode zur Laufzeit in ARM-Befehle 10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

34

17

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-M Serie Cortex M0  Kleinster ARM Prozessor  Einsteigermodell  Voll kompatibel zu allen anderen  Langsam getaktet  Sehr stromsparend  Konkurrenz zum 8-Bit Markt

HS Düsseldorf

10.05.2017

U.G. Schaarschmidt - HS-D

35

10.05.2017

U.G. Schaarschmidt - HS-D

36

(c) U.Schaarschmidt

18

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-M Serie Cortex M1  ARM Prozessor für den Einsatz im FPGA Bereich  Kompatibel zu allen gängigen FPGA Herstellern  Taktfrequenz 60KHz

10.05.2017

U.G. Schaarschmidt - HS-D

37

Cortex-M Serie Cortex M3

 Nachfolger der ARM7TDMI Architektur  Verbesserte Energieeffizienz  Geeignet für deterministische Echtzeitanwendungen und low cost Plattformen  Einsatzbereich in Automotive, Industriesteuerung, drahtlose Sensornetzwerke  Im Release 2 noch einmal im Bereich des Debugging verbessert  Taktfrequenz: 190 MHz (Release 1) und 250 MHz (Release 2

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

38

19

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex M3

HS Düsseldorf

10.05.2017

U.G. Schaarschmidt - HS-D

39

10.05.2017

U.G. Schaarschmidt - HS-D

40

(c) U.Schaarschmidt

20

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-M Serie Cortex M4  Wie Cortex-M3, jedoch mit 80 zusätzlichen 32-Bit Befehlen  Befehle stellen DSP Funktionalität her  Eine DSP-Operation pro Taktzyklus  Ursprung der Befehle ARM9E und ARM11  Der M4 vereint DSP Funktionalität der ARM-Reihe mit den Energiesparfeatures der Cortex-Reihe  Aber im Vergleich zu echten DSP fällt der Prozessor ab 10.05.2017

U.G. Schaarschmidt - HS-D

41

Cortex-M Serie Cortex M4

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

42

21

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-M Serie Architekturmerkmale  3 Stufige Pipeline  Keine Sprungvorhersagen und superskalare Befehlsausführung  Kein Cache, sondern direkter Zugriff auf Daten und Code im Hauptspeicher (Deterministisches Verhalten)  Nested Vector Interrupt Controler (244 Interrupts in 256 Ebenen)  Thumb und ARM Befehlssatz Unterstütung 10.05.2017

U.G. Schaarschmidt - HS-D

43

Cortex-A Serie Cortex A5

 Kleinster Cortex-A  Voll kompatibel zu allen anderen  Langsam getaktet  Sehr stromsparend

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

44

22

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-A Serie Cortex A8  Ältester Cortex-A  Nur als Single Core verfügbar

10.05.2017

U.G. Schaarschmidt - HS-D

45

Cortex-A Serie Cortex A9  Leistungsstärkster verfügbarerer Cortex-A

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

46

23

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-A Serie Cortex A15  Nächste Generation der Cortex-Reihe  Ab Ende 2012 verfügbar

 Einsatz:  leistungsstarkten Smartphones  Netbooks, PDA  Konkurrenz zu Intel Atom

10.05.2017

U.G. Schaarschmidt - HS-D

47

Cortex-A Serie Übersicht über die Prozessoren Eigenschaft

A5

A8

A9

A15

Befehlsbreite

16/32

16/32

16/32

16/32

Thumb-Anweisungen

Thumb, Thumb2

Thumb, Thumb2

Thumb, Thumb2

Thumb, Thumb2

Jazelle Erweiterung

DBX, RCT

RCT

RCT

RCT

TrustZone

ja

ja

ja

ja

Multiprocessing

1 – 4 Cores

nein

2 – 4 Cores

2 – 4 Cores

L1-Cache Code/Daten in

4 - 64

16/32

16 - 64

32

extern 16 - 8192

extern 128 - 1024

extern 128 - 1024

intern 512 - 4096

Integer Pipeline

8 Stufe

13 Stufen

8 Stufen

13 (geschätzt)

Taktfrequenz (MHz)

480 / 1000

800 /1100

> 1000

1500 / 2500

Leistungsaufnahme

0,12 mW/MHz / 0,08

0,59 mW/MHz/ 0,45

0,53 mW/MHz 0,48

?

mW/MHz

mW/Mhz

mW/MHz

kB L2-Cache Code/Daten in kB

10.05.2017 IC-Prozess

HS Düsseldorf

40 nm

(c) U.Schaarschmidt

U.G. Schaarschmidt - 45HS-D 65 nm nm

28 nm

48

24

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-A Serie Leistungsvergleich

10.05.2017

U.G. Schaarschmidt - HS-D

49

Cortex-A Serie Architektur  Mehrere Prozessorcluster mit L1 und L2 Cache  Grafik mit ARM Mali-Prozessor

 Alle Komponenten über AMBA-3-AXIBus verbunden •

Vollduplex



max 2,6 Gbyte/s

 Modifizierte Harvard-Architektur •

Gemeinsamer Bus



Getrennter L1 Cache für Daten und Befehle

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

50

25

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-A Serie CPU-Cluster  Jede CPU L1 Cache für Daten und Befehle  Gleitkommaeinheiten/NEON  Koordination der CPUs durch Snoop Control Unit  Gemeinsames L2 Cache  Interruptvercontroller  Accelerator Coherency Port

10.05.2017

U.G. Schaarschmidt - HS-D

51

Cortex-A Serie CPU-Cluster

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

52

26

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-A Serie Anwendungsbeispiele

10.05.2017

U.G. Schaarschmidt - HS-D

53

Cortex-A Serie Anwendungsbeispiele

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

54

27

Prozessor- und Rechnerarchitekturen

10.05.2017

Cortex-A Serie Betriebssysteme  Android  Chrome  Klassische Linux Distributionen wie Ubuntu und Debian  Symbian  Windows CE  Geplante Unterstützung durch Windows 8 • Konkurrenz für Netbooks & Co mit Intel Atom 10.05.2017

U.G. Schaarschmidt - HS-D

55

Lizenznehmer freescale Kinetis

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

56

28

Prozessor- und Rechnerarchitekturen

10.05.2017

ARM-IP designed by Apple Inc. für iPod, iPhone, iPad, Apple TV

10.05.2017

U.G. Schaarschmidt - HS-D

57

Handfolien 1

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

58

29

Prozessor- und Rechnerarchitekturen

10.05.2017

Handfolien 2

10.05.2017

U.G. Schaarschmidt - HS-D

59

Handfolien 3

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

60

30

Prozessor- und Rechnerarchitekturen

10.05.2017

Handfolien OpenGL / DirectX

10.05.2017

U.G. Schaarschmidt - HS-D

61

Handfolien – wofür GPUs? ARM – GPU Mali xxx

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

62

31

Prozessor- und Rechnerarchitekturen

10.05.2017

10.05.2017

U.G. Schaarschmidt - HS-D

63

ARM Mali – 400MP GPU

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

64

32

Prozessor- und Rechnerarchitekturen

10.05.2017

ARM Mali – T604 3D-GPU

10.05.2017

U.G. Schaarschmidt - HS-D

65

Frisch / demnächst von ARM MALI-450MP -> scalable 8 core (3.Q12) ARM – new generation SKRYMIR (2014)

10.05.2017

HS Düsseldorf

(c) U.Schaarschmidt

U.G. Schaarschmidt - HS-D

66

33