Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Network-on-Chip (NoC)

Ähnliche Präsentationen


Präsentation zum Thema: "Network-on-Chip (NoC)"—  Präsentation transkript:

0 Ronald Hecht Universität Rostock, Deutschland
Internet-on-a-Chip: The Network is the Computer Linux-basierte Middleware für Networks-on-Chip Ronald Hecht Universität Rostock, Deutschland GRK-Workshop Schwarzenhof, November2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

1 Network-on-Chip (NoC)
Überblick Trends und Motivation Network-on-Chip (NoC) Anwendungsschicht Entwurfsparadigmen Rekonfigurierbare Hardware Architekturen Virtuelle Hardware Linux Erweiterungen Zusammenfassung Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

2 Mobile Alleskönner Mobiltelefon Messaging Web und e-mail Multimedia
Spiele! Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

3 System-on-Chip (SoC) Mix aus Hardware und Software
Viele Systemkomponenten Datenströme Von Neumann Architektur Flaschenhals Systembus Speicher Feste Hardware Große Chipfläche Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

4 Multifunktionalität  Skalierbarkeit  Dezentralisierung
Ziele Kosten  Time-to-Market  Stromverbrauch  Performance  Effizienz  Programmierbarkeit  Multifunktionalität  Skalierbarkeit  Dezentralisierung Datenstromorientierte Kommunikation Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

5 Network-on-Chip (NoC)
Skalierbare on-Chip Kommunikation „Route Packets not Wires“ Dezentralisierung Abstraktion durch Schichtenmodell Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

6 Physical und Data Link Layer
Verbindung zwischen benachbarten Routern Verbindung zwischen Router und Ressource Leitungen, Takt und Fehlerkorrektur Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

7 Network Layer Verbindung zwischen entfernten Routern
Schnelles, deterministisches Routing durch das Netz Geographische Adressierung Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

8 Transport Layer Punkt-zu-Punkt Verbindung zwischen Ressourcen/Prozessen Verbindungslose und Verbindungsorientierte Dienste Logische Adressierung und Portnummern Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

9 Application Layer Verbindung zwischen Anwendungen Anwendungsprotokoll
Audio, Video, Crypto, Networking ... Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

10 Entwurfsparadigmen für NoC-Anwendungen
NoC als Ersatz für SoC-Bus Sockets, Netzwerk-Programmierung Message Passing Remote Procedure Call Verteilte Objektsysteme Abstraktion Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

11 NoC als Ersatz für SoC-Bus
Dezentralisierung durch Topologie Programmierung wie bisher (Adressen und Daten) Noch immer von Neumann Speicher ist Flaschenhals Nicht Datenstrom orientiert Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

12 NoC Sockets Client-Server Architektur Lokaler Speicher Message Passing
Datenstromorientierte Kommunikation Dezentralisierung der Datenströme Bessere Lastverteilung im Netzwerk Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

13 Remote Procedure Call Auch in Hardware realisierbar
Verfeinerung von Schnittstellen Gleichberechtigung von Hardware und Software Verteilung der Rechenlast Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

14 Objektorientierter Ansatz
„Everything is an Object“ IP Cores sind Objekte IP Cores haben Schnittstellen Einsatz von UML Einfache Partitionierung in Hardware und Software Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

15 Remote Method Invocation (RMI)
IP Cores kommunizieren über Nachrichten miteinander Automation durch Interface Description Language (IDL) Nachrichtenformat Proxy Skeleton Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

16 Hardware/Software Entwurf
Grafischer System-Entwurf Komponenten-basiert Manuelle Partitionierung IDL Compiler Automatische Generierung der HW/SW-Schnittstelle Abbildung auf NoC Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

17 Verteiltes Objektsystem
IP Cores sind im NoC verteilt Verteilte Objekte, Entfernte Referenzen Verwendung der Module wird durch Middleware vereinfacht Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

18 Code Beispiel AES Crypto Core
// Referenz auf AESCore deklarieren AESCoreRef myAESCore; // Explizites Binden mit AESCore // Lokalisieren des AESCore im NoC myAESCore = AESCore::getInstance(); // Remote Method Invocation myAESCore->setKey(aKey); aCypher = myAESCore->encrypt(aMessage); // Explizites Trennen vom AESCore myAESCore->releaseInstance(); Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

19 Linux-Integration Ronald Hecht, November 2005
Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

20 NoC Device Ronald Hecht, November 2005
Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

21 Dezentralisierung und Verteilung
NoC – Zusammenfassung Dezentralisierung und Verteilung Kommunikation Rechenlast Abstraktion der Kommunikation Objektorientierung UML-Entwurf von Hardware und Software Automation durch IDL Vereinfachung Keine Treiber, sondern Anwendungsprotokolle Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

22 Hardware oder Software ?
Parallele Verarbeitung – Datenfluss-Dominiert Hohe Effizienz Fest verdrahtet, Für eine Anwendung zugeschnitten Hohe Kosten, Kompliziert, Hohes Risiko Software Sequentielle Verarbeitung – Kontrollfluss-Dominiert Niedrige Effizienz Programmierbar Multifunktional Niedrige Kosten, Geringes Risiko Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

23 Rekonfigurierbare Hardware
Field Programmable Gate Arrays (FPGA) Programmierbare Hardware Logik und Verbindungen konfigurierbar Virtueller ASIC Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

24 Hoher Abstraktionsgrad Schneller Entwurfszyklus Geringes Risiko
Vorteile Hoher Abstraktionsgrad Schneller Entwurfszyklus Geringes Risiko Hardware-Updates „Bananaware“ Time-to-Market Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

25 Aktuelle FPGAs Mix aus Logik und Leitungen Speicher
Prozessoren und Hardmacros Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

26 FPGAs der Zukunft (Ausblick)
Festverdrahtetes NoC Hardmacros im NoC integriert Tiles mit Logik und Speicher I/Os über dem gesamten Chip verteilt Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

27 Partielle dynamische Rekonfiguration
Rekonfiguration der Tiles zur Laufzeit Einspielen von Updates Virtuelle Hardware Mehrfachnutzung von Chipfläche Hardware-Swapping Fragestellungen Physikalische Verbindungen Logische Verbindung Relokation Sichern des Zustands Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

28 Betriebsystem für Virtuelle Hardware
Verwaltung der rekonfigurierbaren Chipfläche Selbstrekonfiguration Virtualisierung, Vereinfachung Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

29 NoC und Dynamische Rekonfiguration
Feste physikalische Schnittstellen zwischen Tile und NoC Logische Punkt-zu-Punkt Verbindung zwischen Prozessen Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

30 Zur Realisierung von IP Core-Swapping Zwischen Tiles
Relokation Zur Realisierung von IP Core-Swapping Zwischen Tiles Zwischen Tiles und Software Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

31 Accelerators und Decelerators
Hardware-Implementierung Wird in Tile geladen Schnell Decelerator Software-Implementierung (Emulator) Läuft auf Prozessor Wenn kein Tile (mehr) vorhanden Wenn Beschleunigung nicht nötig ist Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

32 Sichern des Zustands Objektorientierter Ansatz
„Serialisieren“ von IP Cores Verpacken der Attribute Nur zwischen atomaren Operationen erlaubt Nicht alle Speicherele-mente des IP Cores Erweiterung der IP Core Schnittstelle Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

33 Verteiltes Objektsystem
Erweiterung um Allokation und Deallokation IP Core Loader startet Decelerators Accelerators Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

34 Codebeispiel – Dynamische Rekonfiguration
AESCoreRef myAESCore; // Explizites Binden mit AESCore // Initialisieren des Decelerators // Eventuelles Laden des Accelerators myAESCore = AESCore::getInstance(); // Remote Method Invocation myAESCore->setKey(aKey); aCypher = myAESCore->encrypt(aMessage); // Explizites Trennen vom AESCore // Decelerator und Accelerator entfernen myAESCore->releaseInstance(); Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

35 Implizites Binden { AESCoreRef myAESCore;
// Implizites Binden mit AESCore // Decelerator und Accelerator laden // Remote Method Invocation myAESCore->setKey(aKey); aCypher = myAESCore->encrypt(aMessage); // Implizites Trennen vom AESCore // Decelerator und Accelerator entfernen } Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

36 IP Core Scheduler und Dispatcher
Faire Zuteilung der Chipfläche Scheduler nutzt Priorität IP Core-Auslastung Netzauslastung Trifft Entscheidungen Dispatcher führt sie aus Laden des Accelerators oder Decelerators Relocation NoC Konfiguration Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

37 Linux Erweiterungen Ronald Hecht, November 2005
Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

38 Erweiterung des /proc-Dateisystems
Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

39 Entwurfsprozess Manuelle Partitionierung IDL-Compiler
Decelerator aus Software-Implementierung Accelerator durch Verfeinerung der Implementierung Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock

40 Verteiltes Objektsystem Hohes Potential zur Automation
Zusammenfassung Überblick über NoC-Anwendungsschicht Dynamische Rekonfiguration von Hardware Verteiltes Objektsystem Hohes Potential zur Automation Keine Treiber sondern Anwendungsprotokolle Linux-Integration FPGA-Modell Ronald Hecht, November 2005 Institut für Angewandte Mikroelektronik und Datentechnik, Universität Rostock


Herunterladen ppt "Network-on-Chip (NoC)"

Ähnliche Präsentationen


Google-Anzeigen