workshop selbstoptimierung und adaption reiner hartenstein* tu kaiserslautern paderborn, 24. - 25....

62
Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete Systeme *) IEEE fellow

Upload: gudrun-langguth

Post on 05-Apr-2015

107 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

WorkshopSelbstoptimierung

und Adaption

Reiner Hartenstein*

TU Kaiserslautern

Paderborn, 24. - 25. November 2003

Morphware: neue Perspektiven für eingebettete Systeme

*) IEEE fellow

Page 2: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

2

Rekonfigurierbare Plattformen

„weiche Hardware“ ?(schwarzer Schimmel ?)

Morphware

Page 3: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

3

Morphware in der Folge der Zeitalter

Mainframe Zeitalter

Computer Zeitalter

Morphware Zeitalter

19571967

1977

1987

1997

2007

von Neumann unterstützt keine Morphware

DatenströmeFlowware:

here?

Befehlsströme

Page 4: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

4

allgegenwärtige eingebettete Systeme

... und zum Brennpunkt im System-Entwurf

eingebettete Software und Configware wurden Haupt-Vehikel der Produkt- Differenzierung ...

(Durchsatz und) Flexibilität ist der Schlüssel

Informatik-Kurrikula qualifizieren hier nicht

Page 5: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

5

3 Wege einen Algorithmus zu implementieren

•Hardware•Software•Configware•gemischt

RAM-basiert

Configware

von-Neumann-Maschine

Anti-MaschineAnti-Maschine

Page 6: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

6

Ein zweites Programmierungs- Paradigma

... zur Migration der Programmierung vom Prozeduralen hinüber in die strukturelle Domäne

Die strukturelle Domäne ist nun ebenfalls RAM-basiert

Nun besteht Gelegenheit, die Kluft zwischen Programmiern und Hardware-Leuten zu überbrücken durch geschickte Abstraktions-Mechanismen : ein neues Maschinen- Paradigma

Die Einführung von Morphware führt hier letztlich zu einem Paadigmenwechsel :

Bisher wird die Programmierung beherrscht durch eine prozedurale Denke: Programmierung in der Zeit-Domäne, wobei das dominante Maschinen-Paradigma RAM-basiert ist

Page 7: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

7

Arten von Morphware-Plattformen:

Rekonfigurierbare Logik-Bausteine

Rekonfigurierbare Interkonnekt-

Bausteine

Rekonfigurierbare Datenpfad-Felder

fine grain reconfigurable

coarse grain reconfigurable

Reconfigurable interconnect fabrics

Page 8: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

8

>> Gliederung <<

•Rekonfigurierbare Logik•Plazierung und Routing•Rekonfigurierbare Interkonnekt-Bausteine•Rekonfigurierbare Datenpfad-Felder•Flowware•Datenstrom-basiertes Rechnen•Das Anti-Maschinen-Paradigma•Morphware: warum ?

FPGA rGA

rGA: reconfigurable Gate Array

Page 9: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

9

switch

rGA mit Insel-Architektur(Ausschnitt)

© 2003, [email protected] http://hartenstein.de9

Interkonnekt-

Geflecht

Rainer Hartenstein
Page 10: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

10

SchaltboxTU Kaiserslautern

Xputer Lab

© 2003, [email protected] http://hartenstein.de10

Page 11: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

11

VerbindungsboxTU Kaiserslautern

Xputer Lab

© 2003, [email protected] http://hartenstein.de11

Page 12: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

12

Verbindungspunkt

(vergrößert)

Verbindungspunkt aktiviertTU Kaiserslautern

Xputer Lab

© 2003, [email protected] http://hartenstein.de12

Page 13: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

13

der 4. Schaltpunkt

der 5. Schaltpunkt

3 Schaltpunkte Schaltboxen aktiviertTU Kaiserslautern

Xputer Lab

© 2003, [email protected] http://hartenstein.de13

Page 14: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

14

ErgebnisTU Kaiserslautern

Xputer Lab

© 2003, [email protected]

14http://hartenstein.de

Rainer Hartenstein
Page 15: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

15

TU KaiserslauternXputer Lab

A

B

Routing beendet für

1 Netz

© 2003, [email protected]

Plazierungs- und Routing Software bekannt s. 25 Jahren

Solche Netzwerk-Probleme manuell oder mit Hilfe der Graphen-Theorie behandelbar.

1979 Silva Lisco (Silicon Valley Research Corp.) bietet CALM-P an

20 Transistoren + 20 Flipflops

http://hartenstein.de15

Page 16: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

16

>> Gliederung <<

•Rekonfigurierbare Logik•Plazierung und Routing•Rekonfigurierbare Interkonnekt-Bausteine•Rekonfigurierbare Datenpfad-Felder•Flowware•Datenstrom-basiertes Rechnen•Das Anti-Maschinen-Paradigma•Morphware: warum ?

Plazierung: welchen rLB für welche Funktion ?

Page 17: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

17

A

B

Auf der Durchreise

Routing:Lang-strecken- Netze

Zu einer Zeit kann ein Weg nur einmal benutzt werden , d. h. nur für ein Signal ...

... Brücken von Königsberg

Rainer Hartenstein
Page 18: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

18

A

B

CCDD

C und D sind nicht erreichbar

C und D benötigen eine andere Plazierung

Routing- Stau

C kann nicht mit D verbunden werden.

rLBs sind nicht 100% nutzbar

Page 19: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

19

Leonhard Euler

Euler‘s Problem der Brücken von Königsberg ist solch ein Netzwerk Problem (1736):

Finde einen Weg, der jede Brücke genau einmal passiert ..... ... auch eine Optimierung: keine Brücke bleibt ungenutzt.

1736

Page 20: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

20

L. Euler: Solutio Problematis Ad geometriam Situs Pertinentis; Commetarii Academiae Scientiarum Imperialis Petropolitanae 8 (1736), pp. 128-140

Graph

edge

node

Left Bank

Right Bank

Kneiphof Island

Other Island

Page 21: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

21

Routing über Chip-Grenzen

hinaus

Kabel im Schaltschrankverbinden die Einschübe

Einschub-VerdrahtungVerbindet die Karten

Karten-Verdrahtung

verbindet die Chips

*) 30er: Telefon-Vermittlung (ohne Chips,Crossbar / Hebdreh-Wähler statt Karten)40er: erste Computer (ohne Chips)

vor der

Fabrikation ?

nach der

Fabrikation ?

Page 22: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

22

>> Gliederung <<

•Rekonfigurierbare Logik•Plazierung und Routing•Rekonfigurierbare Interkonnekt-Bausteine•Rekonfigurierbare Datenpfad-Felder•Flowware•Datenstrom-basiertes Rechnen•Das Anti-Maschinen-Paradigma•Morphware: warum ?

rIA

rIA: reconfigurable Interconnect Array

Page 23: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

23

1913 J. N. Reynold‘s crossbar switch

1915 patent granted

1926 first public telefon switching application in Shweden

Betulander‘s crossbar switch 1919

NASA telemetrics crossbar array 1964

CrossbarKreuzschienen-Verteiler

Page 24: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

24

Morphware in the SeventiesFranz J. Rammig: A Concept for the Editing of Hardware Resulting

in an Automatic Hardware Editor, 14th DAC, 1977, New Orleans

• Meta-46 was intended as prototyping system => • Emulation of logic behaviour• Emulation of timing behaviour

Picture of one of 16 cross-bar boards

.

.

.

. ..Selectable library board

programmablecross-bar

HostComputer(PDP11)

Adaptor logic

Pro

be

bu

ffe

rs

0255

0

128

META-46 Goldlack: Basic outline

Page 25: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

25

RWC Real World Computing, Japan, 40 TFLOPS

5120 Prozessoren, jeder mit 5000 PinsCrossbar-Gewicht: 220 t, 3000 km Kabel,

Page 26: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

26

Crossbar vollständig ?

eine Schiene verbindet 2 pins

Größe des Voll-Kreuzschienen-Verteilers: n x n / 2

n x n/2n

4 8100 5000

cossbar chips in

a row fulln

4100

partial

no of crossbar chips needed

Crossbar Chipserhältlich von

Aptix, Texas Instruments

und anderen

Page 27: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

27

Routing-Stau- Beispiel mit

Umleitung

Direkte Verbindung unmöglich

rGA rGA rGA rGA

hindurch-routen

Umleitungs-Verbindung

rLB

IdentitätsFunktion

konfiguriert

Routing-Resourcen:Logik-Gatter und/oder Pass-Transistoren

© 2003, [email protected] 27

Page 28: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

28

>> Gliederung <<

•Rekonfigurierbare Logik•Plazierung und Routing•Rekonfigurierbare Interkonnekt-Bausteine•Rekonfigurierbare Datenpfad-Felder•Flowware•Datenstrom-basiertes Rechnen•Das Anti-Maschinen-Paradigma•Morphware: warum ?

rDPA

rDPA: reconfigurable Data Path Array

Page 29: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

29

Grobkörnig rekonfigurierbar

• feinkörnige Morphware-Plattformenalready mainstream: reconfigurable logic

eigentlich nur Logik- Entwurf auf einer seltsamen Plattform

Reconfigurable Computing:nicht so sehr neu – aber erschüttert die

Grundlagen unserer Informatik-Kurrikula

• grobkörnige Plattformen (rDPAs):

Eine Größenordnung mehr MIPS/mW als die feinkörnigen

Page 30: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

30

Warum grobkörnig ?

1000

100

10

1

0.1

0.01

0.0012 1 0.5 0.25 0.13 0.1 0,07

MOPS / mW

µ feature size

rGAs (reconfigurierbare Logik)fest verdrahtet

Befehlsstrom-Prozessoren

Standard-Mikroprozessoren

DSP

T. Claasen et al.: ISSCC 1999*) R. Hartenstein: ISIS 1997

rDPAs (reconfigurable computing)*

flexibility

throughput

hard-wired

vonNeumann

FPGAs

coarse grain goes far beyond bridging the gap

coarsegrain

Page 31: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

31

kommerzielle rDPAs

XPU family (IP cores):PACT Corp., Munich

XPU128

http://pactcorp.com

Gewinn in MIPS/mW:eine bis zwei Größenordnungen

Page 32: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

32

XPP ArchitekturKonfigurations-Speicher

Viele Operationen

per Taktzyklus

FFT

Viterbi

Buffer

Datenstrom

ALU-Feld

Filter

PACT XPP-Architektur: Betriebsweise

MULT eine Operation

per Taktzyklus

Befehlsstrom-Architektur

SHIFT

Befehls-Speicher

ADD

Register

ein Datenwort

ALU

Page 33: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

33

rDPU not used used for routing only operator and routing port location markerLegend: backbus connect

array size: 10 x 16 = 160 rDPUs

mapping algorithms efficently onto rDPA

rout thru only

not usedbackbus connect

„Structured Configware Design“[R. H.]

SNN filter on KressArray

scan window(2D memory*)

„But you can‘t implement decisions !“ ???*) z. B.: MoM achitecture

Page 34: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

34

Wichtigkeit des Bindezeitpunkts

Konfiguration ist wie eine Art vorgezogener eingefrorener „super instruction fetch“

Ladezeit

Compilationszeit

ReconfigurableComputing

Configware

Configware

Nicht alle Schaltvorgänge werden durch Configware ausgelöst

Laufzeit MikroprozessorParallel-ComputerSoftw

are

Software

Zeit des “instruction

fetch”read new

instructionread new instruction

c0 1

Hardware

HardwareFabrikationszeit

Full customoder ASIC

1

0

c1

0

c

1

0

c1

0

c

generiere Datenpfad

„But you can‘t implement decisions !“ ???

strukturelle Domäne

Befehls-fluß

prozedurale Domäne

strukturelle Domäne

Page 35: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

35

Was lernen wir daraus ?

Probleme der (interdisziplinären) Kommunikation und der Kurrikulums-Entwicklung ...... gehen oft auf die falsche Wahl der Abstraktions-Ebene zurück

(anfangs ist Morphware-Anwendung praktiziert worden als Logik-Entwurf auf einer sehr seltsamen Plattform)

Page 36: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

36

weiter Bereich von speed-up Faktoren

Plattform Anwendungs-Beispiel speed-up Faktor

Methode

PACT Xtreme

4-by-4 array[2003]

16 tap FIR Filter x16 MOPS/mWstraight forward

*) MPC fabrication via E.I.S. multi university project

Der Schlüssel: algorithmische Cleverness

MoM Anti Maschine

mit DPLA*[1983]

grid-based DRC** 1-metal 1-poly nMOS 256 reference patterns

> x1000(computation

time)

multipleaspects

**) Design Rule Check

Page 37: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

37

Super-Systolische Pipe-Netzwerke

Pipeline Eigenschaften Array Anwendungen

Form Ressourcen

Mapping Scheduling

(Datenstrom- Formierung)

systolischer Array

nur mit regelmäßigen

Datenab-hängigkeiten

nur linear

nur uniform

lineare Projektion oder algebraische Synthese

super-systolischer Array

keine Beschränkungen: völlig freie, auch extrem unregelmäßige Formen

Simulated Annealing oder P&R

Algorithmen

Scheduling Algorithmus

(z.B. force-directed)

Der Schlüssel ist das mapping, weniger die Architektur

*

*) KressArray [ASP-DAC-1995]

Page 38: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

38

>> Gliederung <<

•Rekonfigurierbare Logik•Plazierung und Routing•Rekonfigurierbare Interkonnekt-Bausteine•Rekonfigurierbare Datenpfad-Felder•Flowware•Datenstrom-basiertes Rechnen•Das Anti-Maschinen-Paradigma•Morphware: warum ?

Datenströme statt Befehlsströme

Page 39: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

39

DPA

xxx

xxx

xxx

|

||

x x

x

x

x

x

x x

x

- -

-

Eingangs-Datenströme

xx

x

x

x

x

xx

x

--

-

-

-

-

-

-

-

-

-

-

xxx

xxx

xxx

|

|

|

|

|

|

|

|

|

|

|

|

|

|Ausgangs-Datenströme

time

port #

time

time

port #time

port #

... welches Datenobjekt zu welcher zeit an welchem Port

Flowware definiert...

Flowware: für das Management der Datenströme

Software: für das Management der Befehlsströme

Page 40: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

40

Paradigmen-Wechsel: Nick Tredennick‘s Sicht

Algorithmen variabel

Ressourcen fest

Befehlsstrom-basiertes Rechnen:

Algorithmen variabel

Ressourcen variabel

data-stream-based reconfigurable computing:

programmierbar

warum 2 Programm-Quellen?

Configware

Ressourcen variabel

Flowware

data-stream

Software

Befehlsstrom-

Page 41: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

41

Kontroll-prozedural gegen Daten-prozedural

Die strukturelle Domäne ist primär Datenstrom-basiert:

Flowware bringt eine (Daten-)prozedurale Abstraktion der (Datenstrom-basierten) strukturellen Domäne

Flowware wandelt „prozedural gegen strukturell“ in „Kontroll-prozedural gegen Daten-prozedural“ ...

... ein Troianisches Pferd zur Einführung der strukturellen Domäne in die prozedurale Welt der Programmierer

Flowware ist meist verdeckt durch indirekte Befehlsstrom-basierte Implementatierung

Page 42: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

42

>> Gliederung <<

•Rekonfigurierbare Logik•Plazierung und Routing•Rekonfigurierbare Interkonnekt-Bausteine•Rekonfigurierbare Datenpfad-Felder•Flowware•Datenstrom-basiertes Rechnen•Das Anti-Maschinen-Paradigma•Morphware: warum ?

Page 43: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

43

CW-CompilerasM

Configware / Flowware Übersetzung

Zwischenformat

höhere Sprache

wrapper

FlowwareFlowware

scheduler

r. DataPath

Array

rDPA

Daten- Ströme

DatenzählerDatenzähler

„instruction“ fetch before runtime mapper

ConfigwareConfigware

MM MM MM MM

MM MM MM MM

MM

MM

MM

MM

MM

MM

MM

MM

Address- Generato

r

verteilte Speicher-

Architektur

verteilte Speicher-

Architektur

Page 44: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

44

früher partitionierender Co-Compiler

Analyzer/ Profiler

SW-Kode

SWCompiler

CW-Kode

CWCompiler

Partitionierer

Resource Parameters

höhere Programmier-Sprache

[Jürgen Becker 1996]

Page 45: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

45

>>> extreme effizient: Flowware-basiertes Rechnen

1. Flowware-Sprachen einfacher als Software-Sprachen und leichter zu lernen

2. Viel weniger Konfigurations-Speicher

3. Adreßrechnung verbraucht kaum Speicherzyklen

4. hohe Parallelität durch vielfache tiefe Pipelines

5. alle Methodologien sind fertig verfügbarclick „recent talks“

auch Dissertationen:

Page 46: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

46

>> Gliederung <<

•Rekonfigurierbare Logik•Plazierung und Routing•Rekonfigurierbare Interkonnekt-Bausteine•Rekonfigurierbare Datenpfad-Felder•Flowware•Datenstrom-basiertes Rechnen•Das Anti-Maschinen-Paradigma•Morphware: warum ?

Page 47: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

47

Computing Paradigmen und Methodologien

1946: Maschinen-Paradigma (von Neumann)

1980: Datenströme (Kung, Leiserson)

1989: Anti-Maschinen-Paradigma

1990: erste rDPA* (Rabaey)

1994: höhere Anti-Maschinen-Programmier-Sprache

1995: super-systolischer Array: rDPA (Kress)

1996+: SCCC (LANL), SCORE, ASPRC, Bee (UCB), ...

1997+: Disziplin der verteilten Speicher-Architekturen

1997: erster Configware/Software partitionierender Compiler

flow

ware

*) rDPU = reconfigurable Data Path Unit

Fran

cky

Catth

oor

MoM

Page 48: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

48

data-stream machine

M

DPU or rDPU

data addressgenerator(data sequencer)

memory

I/O

asM**

(anti machine)(anti machine)

Machine paradigms

von Neumanninstruction

stream machineM

I/O

instructionsequencer

CPU

instructionstream

I/OMM MM M

(r)DPU

DPU

Software

I/OMM MM M

(r)DPA

memorydistributed memory architecture*

data stream

Flowware

(Configware)

(reconf.)

*) the new discipline came just in time:see Herz et al.: Proc. IEEE ICECS, 2002

memory

also see books by Francky Catthoor et al.

Page 49: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

49

>> Gliederung <<

•Rekonfigurierbare Logik•Plazierung und Routing•Rekonfigurierbare Interkonnekt-Bausteine•Rekonfigurierbare Datenpfad-Felder•Flowware•Datenstrom-basiertes Rechnen•Das Anti-Maschinen-Paradigma•Morphware: warum ?

Page 50: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

50

Mega-rGAs10 000 000

1 000 000

100 000

10 000

1 000

1984 1986 1988 1990 1992 1994 1996 1998 2000 2002 2004

planned

Virtex II

XC 40250XV

Virtex

XC 4085XL

100

System gates per rGA chip

Jahr

[Xilinx Data]

200

500

Page 51: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

51

• FPGA Fabric-based on Virtex-II Architecture

Source: Ivo Bolsens, Xilinx

On Chip Memory Controller

Power PCCore

EmbededRAM

RocketIO

ganzes System auf einem Chip

alles nötige an Bordalles nötige an Bord• Xilinx Virtex-II Pro

FPGA Architecture

• PowerPC 405 RISC CPU (PPC405) cores

Page 52: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

52

einige „soft CPU core“ Beispiele

Spartan-II16 bit DSPDSPuva16

FLEX10K30 or EPF6016

i8080AMy80

32-bit gr1050

16-bitgr1040

Altera – Mercury

8 bitNios

Altera 22 D-MIPS

32-bit instr. set

Nios 50 MHz

Altera Mercury

16-bit instr. set

Nios

Xilinx up to 100 on one FPGA

32 bit standard RISC32 reg. by 32 LUT RAM-based reg.

MicroBlaze 125 MHz 70 D-MIPS

platformarchitecturecore

SpartanXLRISC integer Cxr16

old Xilinx FPGA Board

16-bit RISC, 2 opd. Instr.

YARD-1A

1 Flex 10K20Acorn-1

Altera, Lattice, Xilinx

8 bit CISC1Popcorn-1

Lattice 4 isp30256, 4 isp1016

12 bit DSPReliance-1

2 XILINX 3020 LCA

8 bits Instr. + ext. ROM

REGIS

200 XC4000E CLBs

CISC, 32 reg.uP1232 8-bit

ARMARM7 clone

SPARCLeon25 Mhz

platformarchitecturecore

Configware !

(keine Hardware)

Configware !

(keine Hardware)

Retro-

Emulation

Retro-

Emulation

Page 53: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

53

cost / mio $

4

3

2

1

mask set cost [eASIC]

ASIC NRE and mask cost

[dataquest] .

12 12 16 20 26 28 30 >30no. of masks

0.8 0.6 0.35 0.25 0.18 0.15 0.13 0.1 0.07 feature size

Xilinx42%

Altera37%

Lattice15%

Actel6%

Top 4 PLD Manufacturers 2000Total: $3.7 Bio

• [Dataquest] > $7 billion by 2003

• FPGAs going into every type of application• fastest growing segment of semiconductor market

spezifisches Silizium vermeiden !

spezifisches Silizium vermeiden !

rGAsrGAs

PC: 25%

22%communication

others: 31%

consumer: 16%

6 %automotive

Page 54: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

54

immer mehr Prototyp- Plattformen werden als das Produkt direkt an den Kunden ausgeliefert: vollständig konfiguriert

0.1 3

2001 2002 2003 2004

year

50,000

40,000

30,000

20,000

10,000

0c)

number of design starts

rGA-basiert

[N. Tredennick, Gilder Technology Report, 2003]

... die Emulation überspringen

spezifisches Silizium vermeiden...

spezifisches Silizium vermeiden...

Page 55: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

55

PC ersetzt durch PS

Computer Zeitalter

data streams ...

Morphware Zeitalter

19571967

1977

1987

1997

2007

PC ersetzt durch PS (personal supercomputer)

PC ersetzt durch PS (personal supercomputer)

flowware

rDPArDPAµProcµProc

co-compilerco-compiler

anti machineanti machinevon Neumannvon Neumann

Mainframe Zeitalter

Page 56: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

56

Informatik-Kurrikula verfehlen den veränderten Arbeitsmarkt

Eing

ebet

tete

Sof

twar

e [D

TI*

Ges

etz]

1

2

0 10 12 18 Monate

Faktor

*) Department of Trade and Industry, London

(1.4/Ja

hr) [M

oore’s

Gesetz]Agenda 2010:

90% allen Kodes geschrieben für eingebettete Systeme

10 mal mehr Programmierer müssen

für Hardware- / Configware- / Software-

Partitionierung qualifiziert werden !

Page 57: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

57

>>> Danke

Vielen Dank für Ihre Geduld

Page 58: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

58

end

- END -

Page 59: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

59

appendix

Appendix for Discussion

Page 60: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

60

Loop Transformation Examples

loop 1-8bodybodyendloop

loop 1-8bodyendloop

loop 9-16bodyendloop

fork

joinstrip mining

loop 1-4triggerendloop

loop 1-2triggerendloop

loop 1-8triggerendloop

reconf.array:host:loop 1-16bodyendloop

sequential processes: resource parameter drivenCo-Compilation

loop unrolling

Page 61: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

61© 2001, [email protected] http://KressArray.de

University of Kaiserslautern

Xputer Lab missing the next revolution

Ignoring reconfigurable computing by teaching computing fundamentals within our CS curricula

Ignoring reconfigurable computing by teaching computing fundamentals within our CS curricula

causing the waste billions of dollars.causing the waste billions of dollars.

is one of the biggest mistakes in the history of information technology application

is one of the biggest mistakes in the history of information technology application

Page 62: Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete

© 2003, [email protected] http://hartenstein.de

TU KaiserslauternXputer Lab

62

Glossary

DPU data path unitrDPU reconfigurable DPUDPA data path array (DPU array)rDPA reconfigurable DPAISP instruction set processorAM anti machineAMP data stream processor*rAMP reconfigurable AMP

*) no “dataflow machine”

platform source „running“ on platform

machine paradigm

hardware (not programmable) noneISP** software von Neumann• morphwar

econfigware FPGA: none

data stream processor (AMP*) streamware

anti machinereconfigurable AMP (rAMP)

streamware & configware

digital system platforms:

morphware use granularity (path width) (re)configurable blocksreconfigurable logic • fine grain (FPGA) (~1 bit) CLBs

reconfigurable computingcoarse grain (e.g. 32 bits) rDPUs (e.g. ALU-like)multi granular: by slice bundling rDPU slices (e.g. 4 bits)

categories of morphware:

approaching consensus

**) instruction set processor *) data stream processor