Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

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

Ähnliche Präsentationen


Präsentation zum Thema: "Workshop Selbstoptimierung und Adaption Reiner Hartenstein* TU Kaiserslautern Paderborn, 24. - 25. November 2003 Morphware: neue Perspektiven für eingebettete."—  Präsentation transkript:

1

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

3 © 2003, TU Kaiserslautern 2 Rekonfigurierbare Plattformen weiche Hardware ? (schwarzer Schimmel ?) Morphware

4 © 2003, TU Kaiserslautern 3 Morphware in der Folge der Zeitalter Mainframe Zeitalter Computer Zeitalter Morphware Zeitalter von Neumann unterstützt keine Morphware Datenstr ö me Flowware: here? Befehlsstr ö me

5 © 2003, TU Kaiserslautern 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

6 © 2003, TU Kaiserslautern 5 3 Wege einen Algorithmus zu implementieren Hardware Software Configware gemischt RAM-basiert Configware von-Neumann-Maschine Anti-Maschine

7 © 2003, TU Kaiserslautern 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

8 © 2003, TU Kaiserslautern 7 Arten von Morphware-Plattformen: Rekonfigurierbare Logik-Bausteine Rekonfigurierbare Interkonnekt-Bausteine Rekonfigurierbare Datenpfad-Felder fine grain reconfigurable coarse grain reconfigurable Reconfigurable interconnect fabrics

9 © 2003, TU Kaiserslautern 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

10 © 2003, TU Kaiserslautern 9 switch rGA mit Insel-Architektur (Ausschnitt) © 2003, 9 Interkonnekt- Geflecht

11 © 2003, TU Kaiserslautern 10 Schaltbox TU Kaiserslautern © 2003, 10

12 © 2003, TU Kaiserslautern 11 Verbindungsbox TU Kaiserslautern © 2003, 11

13 © 2003, TU Kaiserslautern 12 Verbindu ngspunkt (vergröße rt) Verbindungspunkt aktiviert TU Kaiserslautern © 2003, 12

14 © 2003, TU Kaiserslautern 13 der 4. Schaltpunkt der 5. Schaltpunkt 3 Schaltpunkte Schaltboxen aktiviert TU Kaiserslautern © 2003, 13

15 © 2003, TU Kaiserslautern 14 Ergebnis TU Kaiserslautern © 2003, 14

16 © 2003, TU Kaiserslautern 15 TU Kaiserslautern A B Routing beendet für 1 Netz © 2003, Plazierungs- und Routing Software bekannt s. 25 Jahren Solche Netzwerk- Probleme manuell oder mit Hilfe der Graphen-Theorie behandelbar Silva Lisco (Silicon Valley Research Corp.) bietet CALM-P an 20 Transistoren + 20 Flipflops 15

17 © 2003, TU Kaiserslautern 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 ?

18 © 2003, TU Kaiserslautern 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

19 © 2003, TU Kaiserslautern 18 A B C C D D 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

20 © 2003, TU Kaiserslautern 19 Leonhard Euler Eulers 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

21 © 2003, TU Kaiserslautern 20 L. Euler: Solutio Problematis Ad geometriam Situs Pertinentis; Commetarii Academiae Scientiarum Imperialis Petropolitanae 8 (1736), pp Graph edge node Left Bank Right Bank Kneiphof Island Other Island

22 © 2003, TU Kaiserslautern 21 Routing über Chip-Grenzen hinaus Kabel im Schaltschrank verbinden die Einschübe Einschub- Verdrahtung Verbindet 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 ?

23 © 2003, TU Kaiserslautern 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

24 © 2003, TU Kaiserslautern J. N. Reynolds crossbar switch 1915 patent granted 1926 first public telefon switching application in Shweden Betulanders crossbar switch 1919 NASA telemetrics crossbar array 1964 Crossbar Kreuzschienen-Verteiler

25 © 2003, TU Kaiserslautern 24 Morphware in the Seventies Franz 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 programmable cross-bar Host Computer (PDP11) Adaptor logic Probe buffers META-46 Goldlack: Basic outline

26 © 2003, TU Kaiserslautern 25 RWC Real World Computing, Japan, 40 TFLOPS 5120 Prozessoren, jeder mit 5000 Pins Crossbar-Gewicht: 220 t, 3000 km Kabel,

27 © 2003, TU Kaiserslautern 26 Crossbar vollständig ? eine Schiene verbindet 2 pins Größe des Voll-Kreuzschienen-Verteilers: n x n / 2 n x n/2n cossbar chips in a row full n partial no of crossbar chips needed Crossbar Chips erhältlich von Aptix, Texas Instruments und anderen

28 © 2003, TU Kaiserslautern 27 Routing-Stau- Beispiel mit Umleitung Direkte Verbindung unmöglich rGA hindurch-routen Umleitungs-Verbindung rLB Identitäts Funktion konfiguriert Routing-Resourcen: Logik-Gatter und/oder Pass-Transistoren © 2003, 27

29 © 2003, TU Kaiserslautern 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

30 © 2003, TU Kaiserslautern 29 Grobkörnig rekonfigurierbar feinkörnige Morphware-Plattformen already 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

31 © 2003, TU Kaiserslautern 30 Warum grobkörnig ? ,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 von Neumann FPGAs coarse grain goes far beyond bridging the gap coarse grain

32 © 2003, TU Kaiserslautern 31 kommerzielle rDPAs XPU family (IP cores): PACT Corp., Munich XPU128 Gewinn in MIPS/mW: eine bis zwei Größenordnungen

33 © 2003, TU Kaiserslautern 32 XPP Architektur Konfigurations-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

34 © 2003, TU Kaiserslautern 33 array size: 10 x 16 = 160 rDPUs mapping algorithms efficently onto rDPA rout thru only not used backbus connect Structured Configware Design [R. H.] SNN filter on KressArray scan window (2D memory*) But you cant implement decisions ! ??? *) z. B.: MoM achitecture

35 © 2003, TU Kaiserslautern 34 Wichtigkeit des Bindezeitpunkts Konfiguration ist wie eine Art vorgezogener eingefrorener super instruction fetch Ladezei t Compilationszeit Reconfigurable Computing Configware Nicht alle Schaltvorgänge werden durch Configware ausgelöst Laufzeit Mikroprozessor Parallel-Computer Software Zeit des instruction fetch read new instruction c 01 Hardware Fabrikationszeit Full custom oder ASIC 1 0 c 1 0 c 1 0 c 1 0 c generiere Datenpfad But you cant implement decisions ! ??? strukturelle Domäne Befehls -fluß prozedurale Domäne strukturelle Domäne

36 © 2003, TU Kaiserslautern 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)

37 © 2003, TU Kaiserslautern 36 weiter Bereich von speed-up Faktoren PlattformAnwendungs-Beispiel speed-up Faktor Methode PACT Xtreme 4-by-4 array [2003] 16 tap FIR Filterx16 MOPS/mW straight 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) multiple aspects **) Design Rule Check

38 © 2003, TU Kaiserslautern 37 Super-Systolische Pipe-Netzwerke Der Schlüssel ist das mapping, weniger die Architektur * *) KressArray [ASP-DAC-1995]

39 © 2003, TU Kaiserslautern 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

40 © 2003, TU Kaiserslautern 39 DPA x x x x x x x x x | || xx x x x x xx x -- - Eingangs- Datenströme xx x x x x xx x x x x x x x x x x | | | | | | | | | | | | | | Ausgangs- Datenströme time port # 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

41 © 2003, TU Kaiserslautern 40 Paradigmen-Wechsel: Nick Tredennicks 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-

42 © 2003, TU Kaiserslautern 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

43 © 2003, TU Kaiserslautern 42 >> Gliederung << Rekonfigurierbare Logik Plazierung und Routing Rekonfigurierbare Interkonnekt-Bausteine Rekonfigurierbare Datenpfad-Felder Flowware Datenstrom-basiertes Rechnen Das Anti-Maschinen-Paradigma Morphware: warum ?

44 © 2003, TU Kaiserslautern 43 CW-Compiler asM Configware / Flowware Übersetzung Zwischenformat höhere Sprache wrapper Flowware scheduler r. Data Path Array rDPA Daten- Ströme Datenzähler instruction fetch before runtime mapper Configware M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M M Address- Generator verteilte Speicher- Architektur

45 © 2003, TU Kaiserslautern 44 früher partitionierender Co-Compiler Analyzer / Profiler SW-Kode SW Compiler CW-Kode CW Compiler Partitionierer Resource Parameters h ö here Programmier-Sprache [Jürgen Becker 1996]

46 © 2003, TU Kaiserslautern 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ügbar click recent talks auch Dissertationen:

47 © 2003, TU Kaiserslautern 46 >> Gliederung << Rekonfigurierbare Logik Plazierung und Routing Rekonfigurierbare Interkonnekt-Bausteine Rekonfigurierbare Datenpfad-Felder Flowware Datenstrom-basiertes Rechnen Das Anti-Maschinen-Paradigma Morphware: warum ?

48 © 2003, TU Kaiserslautern 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), : Disziplin der verteilten Speicher-Architekturen 1997: erster Configware/Software partitionierender Compiler flowware *) rDPU = reconfigurable Data Path Unit Francky Catthoor MoM

49 © 2003, TU Kaiserslautern 48 data-stream machine M DPU or rDPU data address generator (data sequencer) memory I/O asM** (anti machine) Machine paradigms von Neumann instruction stream machine M I/O instruction sequencer CPU instruction stream I/O MMMMM (r)DPU DPU Software distributed 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.

50 © 2003, TU Kaiserslautern 49 >> Gliederung << Rekonfigurierbare Logik Plazierung und Routing Rekonfigurierbare Interkonnekt-Bausteine Rekonfigurierbare Datenpfad-Felder Flowware Datenstrom-basiertes Rechnen Das Anti-Maschinen-Paradigma Morphware: warum ?

51 © 2003, TU Kaiserslautern 50 Mega-rGAs planned Virtex II XC 40250XV Virtex XC 4085XL 100 System gates per rGA chip Jahr [Xilinx Data]

52 © 2003, TU Kaiserslautern 51 FPGA Fabric-based on Virtex-II Architecture Source: Ivo Bolsens, Xilinx On Chip Memory Controller Power PC Core Embeded RAM Rocket IO ganzes System auf einem Chip alles nötige an Bord Xilinx Virtex-II Pro FPGA Architecture PowerPC 405 RISC CPU (PPC405) cores

53 © 2003, TU Kaiserslautern 52 einige soft CPU core Beispiele Spartan-II16 bit DSPDSPuva16 FLEX10K30 or EPF6016 i8080AMy80 32-bitgr 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 RISC 32 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 isp bit DSPReliance-1 2 XILINX 3020 LCA 8 bits Instr. + ext. ROM REGIS 200 XC4000E CLBs CISC, 32 reg.uP bit ARMARM7 clone SPARCLeon 25 Mhz platformarchitecturecore Configware ! (keine Hardware) Configware ! (keine Hardware) Retro- Emulation Retro- Emulation

54 © 2003, TU Kaiserslautern 53 cost / mio $ mask set cost [eASIC] ASIC NRE and mask cost [dataquest] >30 no. of masks feature size Xilinx 42% Altera 37% Lattice 15% Actel 6% Top 4 PLD Manufacturers 2000 Total: $3.7 Bio [ Dataquest ] > $7 billion by 2003 FPGAs going into every type of application fastest growing segment of semiconductor market spezifisches Silizium vermeiden ! rGAs PC: 25% 22% communication others: 31% consumer: 16% 6 % automotive

55 © 2003, TU Kaiserslautern 54 immer mehr Prototyp- Plattformen werden als das Produkt direkt an den Kunden ausgeliefert: vollständig konfiguriert number of design starts rGA-basiert [N. Tredennick, Gilder Technology Report, 2003]... die Emulation überspringen spezifisches Silizium vermeiden...

56 © 2003, TU Kaiserslautern 55 PC ersetzt durch PS Computer Zeitalter data streams... Morphware Zeitalter PC ersetzt durch PS (personal supercomputer) flowware rDPA µ Proc co-compiler anti machine von Neumann Mainframe Zeitalter

57 © 2003, TU Kaiserslautern 56 Informatik-Kurrikula verfehlen den veränderten Arbeitsmarkt Eingebettete Software [DTI* Gesetz] Monate Faktor *) Department of Trade and Industry, London (1.4/Jahr) [Moore 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 !

58 © 2003, TU Kaiserslautern 57 >>> Danke Vielen Dank für Ihre Geduld

59 © 2003, TU Kaiserslautern 58 end - END -

60 © 2003, TU Kaiserslautern 59 appendix Appendix for Discussion

61 © 2003, TU Kaiserslautern 60 Loop Transformation Examples loop 1-8 body endloop loop 1-8 body endloop loop 9-16 body endloop fork join strip mining loop 1-4 trigger endloop loop 1-2 trigger endloop loop 1-8 trigger endloop reconf.array: host: loop 1-16 body endloop sequential processes: resource parameter driven Co-Compilation loop unrolling

62 © 2003, TU Kaiserslautern 61 © 2001, University of Kaiserslautern missing the next revolution Ignoring reconfigurable computing by teaching computing fundamentals within our CS curricula causing the waste billions of dollars. is one of the biggest mistakes in the history of information technology application

63 © 2003, TU Kaiserslautern 62 Glossary DPUdata path unit rDPUreconfigurable DPU DPAdata path array (DPU array) rDPAreconfigurable DPA ISPinstruction set processor AManti machine AMPdata stream processor* rAMPreconfigurable AMP *) no dataflow machine platform source running on platform machine paradigm hardware (not programmable) none ISP**software von Neumann morphwareconfigware FPGA: none data stream processor (AMP*) streamware anti machine reconfigurable AMP (rAMP) streamware & configware digital system platforms: morphware usegranularity (path width) (re)configurable blocks reconfigurable logicfine grain (FPGA) (~1 bit)CLBs reconfigurable computing coarse grain (e.g. 32 bits)rDPUs (e.g. ALU-like) multi granular: by slice bundlingrDPU slices (e.g. 4 bits) categories of morphware: approaching consensus **) instruction set processor *) data stream processor


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

Ähnliche Präsentationen


Google-Anzeigen