Optimierungsmethodik und Plattformentwurf für ... · DFG-Schwerpunktprogramm „Rekonfigurierbare...
Transcript of Optimierungsmethodik und Plattformentwurf für ... · DFG-Schwerpunktprogramm „Rekonfigurierbare...
DFG-Schwerpunktprogramm „Rekonfigurierbare Rechensysteme“Tübingen, 28. – 29. April 2005
ReCoNodes
Optimierungsmethodik und Plattformentwurf für hardwarekonfigurierbare Knoten
Jan van der VeenTU Braunschweig
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 2
Projekt
Prof. Dr. Sándor Fekete
Dipl.-Math. Jan van der Veen
Prof. Dr.-Ing. Jürgen Teich
Dipl.-Ing. Mateusz MajerDr. rer. nat. Christophe BobdaM.Sc. Ali Ahmadinia
ReCoNodes –Optimierungsmethodik und Plattformentwurf
für hardwarekonfigurierbare Knoten
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 3
ReCoNodes – Motivation und Ziele
Operating SystemServices
task 1
task 2
task N
Reconfigurable HW
PlacerM2
M4
M3
M1
Module Database
Scheduler
Task Request
O.S.
T1TN
T2
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 4
ReCoNodes – Motivation und Ziele
Operating SystemServices
task 1
task 2
task N
Reconfigurable HW
PlacerM2
M4
M3
M1
Module Database
Scheduler
Task Request
O.S.
T1
TN
T2
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 5
Publikationen[25] Optimal Merging of Configurations for Reconfigurable
Architectures. Proc. of the Int. Conf. on Field-Programmable Logicand Applications (FPL), 2005, submitted.
[24] Packet Routing in Dynamically Changing Networks on Chip. Proc. of the 12th Reconfigurable Architectures Workshop (RAW), 2005.
[23] Defragmenting the Module Layout of a Partially Reconfigurable Device. Proc. of the Int. Conf. on Engineering of Reconfigurable Systems and Algorithms (ERSA), 2005, to appear.
[22] A Practical Approach for Circuit Routing on DynamicReconfigurable Devices. Proc. of the 16th IEEE International Workshop on Rapid System Prototyping, Montreal, 2005, to appear.
[21] The Erlangen Slot Machine: A Highly Flexible FPGA-Based Reconfigurable Platform. Proc. of the 2005 IEEE Symposium on Field-Programmable Custom Computing Machines (FCCM), 2005.
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 6
Publikationen[20] The Erlangen Slot Machine (ESM): A flexible Platform for
Dynamic Reconfigurable Computing. Board Demo at theUniversity Booth at Design, Automation and Test in Europe (DATE 2005), 2005.
[19] Designing Partial and Dynamically Reconfigurable Applicationson Xilinx Virtex-II FPGAs using HandelC. Technical Report 03-2004, University of Erlangen-Nuremberg, 2004.
[18] Design and Implementation of Reconfigurable Multiple Bus on Chip (RMBoC). Technical Report 02-2004, University of Erlangen-Nuremberg, 2004.
[17] PackLib²: An Integrated Library of Multidimensional Packing Problems. submitted to European Journal of Operational Research, 2004.
[16] On-line Placement for Dynamic Reconfigurable Devices. International Journal of Embedded Systems (IJES), 2004, to appear.
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 7
Publikationen[15] Optimal Free-Space Management and Routing-Conscious Dynamic
Placement for Reconfigurable Computers. submitted to IEEE Transactions on Computers, 2004.
[14] Task Scheduling for Heterogeneous Reconfigurable Computers. Proc. of the 17th Symposium on Integrated Circuits and Systems Design (SBCCI), 2004.
[13] A New Approach for On-line Placement on Reconfigurable Devices. Proc. of the 18th Int. Parallel and Distributed ProcessingSymposium (IPDPS 2004), 2004.
[12] Generation of Distributed Arithmetic Designs for Reconfigurable Applications. Proc. of GI/ITG Dynamically Reconfigurable Systems Workshop at ARCS - Organic and Pervasive Computing, 2004.
[11] A Dynamic NoC Approach for Communication in Reconfigurable Devices. Proc. of the Int. Conf. on Field-Programmable Logic and Applications (FPL), 2004.
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 8
Publikationen[10] Optimal Routing-Conscious Dynamic Placement for Reconfigurable
Devices. Proc. of the Int. Conf. on Field-Programmable Logic and Applications (FPL), 2004.
[9] Optimization Algorithms for Dynamic Reconfigurable EmbeddedSystems. Proc. of the Int. Conf. on Field-Programmable Logic and Applications (FPL), 2004.
[8] Partial and Dynamic Reconfiguration of XILINX Virtex-II FPGAs. Proc. of the Int. Conf. on Field-Programmable Logic and Applications (FPL), 2004.
[7] Reconfiguration of Xilinx Virtex-II FPGAs. Proc. of the Int. Conf. on Field-Programmable Logic and Applications (FPL), 2004.
[6] A Dynamic Scheduling and Placement Algorithm for Reconfigurable Hardware. Proc. of 17th Int. Conf. on Arch. of Comp. Sys., 2004.
[5] A New Approach for Reconfigurable Massively Parallel Computers. Proc. of the IEEE Int. Conf. on Field-Programmable Technology, 2003.
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 9
Publikationen[4] A Dynamic Scheduling and Placement Algorithm for
Reconfigurable Hardware. Proc. of 17th Int. Conf. on Architecture of Computing Systems (ARCS 2004), 2004.
[3] A New Approach for Reconfigurable Massively Parallel Computers. Proc. of the IEEE Int. Conf. on Field-ProgrammableTechnology, 2003.
[2] Temporal Task Clustering for Online Placement on Reconfigurable Hardware. Proc. of the IEEE Int. Conf. on Field-Programmable Technology, 2003.
[1] Speeding up Online Placement for XILINX FPGAs by ReducingConfiguration Overhead . Proc. of the IFIP Int. Conf. on VLSI-SOC, 2003.
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 10
GliederungEinleitungStolpersteine der partiellen dynamischenRekonfigurationArbeitsprogrammAusblick
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 11
FPGA
M1
M2
M3
M4
M5
M6
M7
M8
Stolperstein 1
4 3 3 3 2 2 1 unterbochene Module
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 12
FPGA
M1 M2
M3
M4 M5
M6
M7
M8
Stolperstein 1
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 13
Stolperstein 1
Spaltenweise Rekonfiguration: Problem:Zur Zeit können nur (Teil-)Spalten partiell rekonfiguriert werden. In Online-Systemen führt dies zu nicht beherrschbarer Komplexität.Lösung:Module auf Spalten beschränken.
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 14
Stolperstein 2
Ethernet
Video InputProzessor
TV Encoder
Video DACBluetoothDisplay
Virtex-II
…
Celoxica RC203
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 15
Stolperstein 2
VGA-Modul
Bildgenerator
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 16
Stolperstein 2
VGA-Pins
VGA-Modul
Bildgenerator
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 17
Stolperstein 2FPGA
Peripherie
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 18
Stolperstein 2FPGA
Peripherie
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 19
Stolperstein 2
I/O-Pin DilemmaProblem:Auf kommerziell verfügbaren FPGA Platt-formen sind die I/O-Pins fest verdrahtet.Dies verhindert dynamische partielle Rekonfiguration.Lösung:Verbinden (eines Teils) der FPGA-Pins mit den I/O-Pins über eine Crossbar.
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 20
Stolperstein 3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 21
Stolperstein 3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 22
Stolperstein 3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 23
Stolperstein 3
FPGA
Bus-Makro
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 24
Stolperstein 3
FPGA
SRAM SRAM …
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 25
Stolperstein 3
FPGA
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 26
Stolperstein 3
FPGA
RMB
Reconfigurable Multiple Bus
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 27
Stolperstein 3
IntermodulkommunikationProblem:Wie tauschen Module Daten aus, wenn Ihre Platzierung zur Compile-Zeit noch unbekannt ist?Lösung:Standardisierte Intermodulkommunikations-kanäle:1. Bus Macros, 2. Reconfigurable Multiple Bus, 3. Crossbar, 4. Speicher
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 28
Stolperstein 4
SRAM-Interface
RMB-Interface
Applikations-modul
Bus
Mac
ros
XIO-Interface
Bus
Mac
ros
SRAM-Interface
RMB-Interface
Applikations-modul
Bus
Mac
ros
XIO-Interface
Bus
Mac
ros
SRAM-Interface
RMB-Interface
Applikations-modul
Bus
Mac
ros
XIO-Interface
Bus
Mac
ros
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 29
Stolperstein 4
SlotComposerWerkzeug zum Entwurfund zur Komposition vonModulen für die ESM
ESM-ShellInteraktives Command-Line-Interface zumLaden von Modulen
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 30
Stolperstein 4Werkzeuge für den Entwurf
Problem:Viel Erfahrungswissen nötig, um im Modular Design Flow zu relozierbarem partiellen Bitstream zu gelangenLösung:SlotComposer, der die Tools Modular Design Flow integriert um die Generierung der partiellen Bitstreams zu vereinfachen
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 31
ESM – Erlangen Slot Machine
M1 M2 M3
FPG
A
Crossbar
SRAM SRAM SRAM
Heart
lokaler Speicher
entkoppelte Verbindungzur Peripherie
Peripherals
Intermodul-kommunikation
Module-memory
Processor
Brain
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 32
Algorithmen zur Rekonfiguration
T1 T2
T3
T7T6
T5
T8
T4
T9
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 33
Algorithmen zur Rekonfiguration
T1
M1
M1
M1
M1
…
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 34
Algorithmen zur Rekonfiguration
T1 T2
T3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 35
Algorithmen zur Rekonfiguration
T1 T2
T3
FPGA
RMB
M1 M2
M3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 36
Algorithmen zur Rekonfiguration
SchedulingKommunikationsbewusste Platzierung
OfflineOnline
Paging und Caching
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 37
Algorithmen zur Rekonfiguration
FPGA
RMB
M1
M2M3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 38
Algorithmen zur Rekonfiguration
FPGA
RMB
M1
M2M3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 39
Algorithmen zur Rekonfiguration
FPGA
RMB
M1
M2M3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 40
Algorithmen zur Rekonfiguration
FPGA
RMB
M1
M2M3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 41
Algorithmen zur RekonfigurationFPGA
RMB
M1M2
M3
FPGA
RMB
M1M2
M3 FPGA
RMB
M1M2
M3
{ } ( ) ( ) ( ){ }jkiEjink σσσ ≤≤∈∈ ,,maxmin ,,1 K
( ) ( ) ( )jiEji σσσ −∈,maxmin
( ) ( )( )∑ ∈−
Ejiji
,min σσσ
Minimum Bandwidth (MBW)
Minimum Cutwidth Linear Arrangement (MCLA)
Optimal Linear Arrangement (OLA)
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 42
Algorithmen zur Rekonfiguration
FPGA
RMB
M1
M2M3
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 43
ErlangenSlotMachine
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 44
ESM - Architekturkonzept
CrossBarVideo
Audio
Ethernet
Control WLAN
Optic
Main-FPGA
MotherBoard
BabyBoard
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 45
Anwendung: Video-Streaming
RAM1 RAM2 RAMnRAM3
Mod1 Mod2 Mod3 Modn
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 46
Arbeitsplan
5%5%5%5%5%5%10%30%AP12Benchmarking45%25%AP11Anwendung
130%125%100%55%AP1025%AP9
70%100%80%60%35%AP8Implementierung45%45%40%AP7
25%80%40%AP645%95%25%AP5
80%80%50%AP4Algorithmen35%AP3
75%AP2110%AP1Modellierung
Q8Q7Q6Q5Q4Q3Q2Q1
Modul- und KommunikationsmodelleKostenmodelle
Offline- und Online-Algorithmen für die kommunikationsbewusste Platzierung
Paging und Caching für ESM-GeometrienAlgorithmen für das Scheduling auf der ESM
Inbetriebnahme und Test der ESM-PlattformEntwicklung und Implementierung der ESM-Plattform
Betriebssystem und Werkzeuge für die ESM-Plattform
BeispielanwendungenReCoLib
Architekturmodellierung der Plattform
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 47
KooperationenProjekt ReCoNet
Kopplung des Projekts ReCoNodes an ReCoNetsPlatzierungsalgorithmen finden Anwendung bei Mechanismen zur Hardware-Migration und zum Hardware-Morphing
Prof. Dr. KochOptimal Merging of Configurations for Reconfigurable Architectures
Projekt Prof. Dr. RosenstielSimultanes Scheduling, Binding und Routing für grobgranulare FPGAs
Projekt Prof. Dr. MerkerMehrdimensionales Packen von verformbaren orthogonalen Objekten
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 48
Ausblick (2. + 3. Phase)
2. Phase terminiert in der ersten ESM-Plattform mitelementaren Treiberfunktionen:
ESM: BabyBoard (Virtex II – 6000)ESM: MotherBoard (Multimedia)Bereitstellung erster Boards an interessierte Projekte
3. Phase: Betriebssystemdienste und IntegrationVerwaltung von HW- und SW-ProzessenWerkzeuge zur Optimierung und zum ModulentwurfKombination der Entwurfsmethodiken auf Mikro- und Makroebene (ReCoNets & ReCoNodes)
DFG-SPP 1148 „Rekonfigurierbare Rechensysteme“ReCoNodes 49
FragenFPGA
RMB
M1M2
M3
FPGA
RMB
M1M2
M3 FPGA
RMB
M1M2
M3
Vielen Dank für Ihre Aufmerksamkeit.