High Performance Embedded Processors

Ähnliche Dokumente
Rekonfigurierbare Prozessoren

Entwicklung von Partitionierungsstrategien im Entwurf dynamisch rekonfigurierbarer Systeme

Übersicht aktueller heterogener FPGA-SOCs

Digitale Signalprozessor - Architekturen im Überblick

Digital Image Interpolation with CUDA

Hardware Programmierbare Logik

CUDA. Moritz Wild, Jan-Hugo Lupp. Seminar Multi-Core Architectures and Programming. Friedrich-Alexander-Universität Erlangen-Nürnberg

Military Air Systems

Motivation. Eingebettetes System: Aufgabe:

Cell and Larrabee Microarchitecture

LEISTUNGSVERGLEICH VON FPGA, GPU UND CPU FÜR ALGORITHMEN ZUR BILDBEARBEITUNG PROSEMINAR INF-B-610

Prinzipien und Komponenten eingebetteter Systeme

10 Versuch Nr Anmerkungen zum Versuch Nr. 8

REKONFIGURIERBARE ARCHITEKTUREN. Robert Rasche

OpenCL. Programmiersprachen im Multicore-Zeitalter. Tim Wiersdörfer

Ein Vortrag von Kamal Laghmari im Fach: Technische Informatik

FPGA. Field Programmable Gate Array

Verteidigung der Bachelorarbeit, Willi Mentzel

JAEMACOM Berlin. Benjamin Schantze IGEL Technology GmbH

Entwicklung einer FPGA-basierten asymmetrischen MPSoC Architektur

Aktuelle RTOS-Entwicklungen aus der Forschung

Application Note 025

CRC (Configurable Reconfigurable Core)

Technische Informatik 1 Übung 8 Instruktionsparallelität (Rechenübung) Andreas Tretter 8./9. Dezember Bitte immer eine Reihe freilassen

Hardware Logik-Analysatoren

Multiprozessor System on Chip

Am Beispiel der SHARC-DSPs Jan Kiene

Vortrag zum Hauptseminar Hardware/Software Co-Design

Cell Broadband Engine & CellSs: ein Programmiermodel für den Cell Prozessor

Mikrorechner-Technik

Architekturen, Werkzeuge und Laufzeitumgebungen für eingebettete Systeme

Intelligente Videotechnologien des

Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen

Busse. Dr.-Ing. Volkmar Sieh WS 2005/2006. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg

Lehrstuhl für Informatik 12 (Hardware-Software-Co-Design) Friedrich-Alexander-Universität Erlangen-Nürnberg Prof. Dr.-Ing. J.

HOCHLEISTUNGSFÄHIGE VIDEO-CODECS

OpenCL. OpenCL. Boris Totev, Cornelius Knap

Schwerpunktprogramm 1148 Rekonfigurierbare Rechensysteme. Rekonfigurierbare Controller

Modell-Programmierte Roboter Regelung. Univ.-Prof. Dr. Michael Hofbaur Institut für Automatisierungs- und Regelungstechnik, UMIT, Hall i.

Emulation und Rapid Prototyping. Hw-Sw-Co-Design

Emulation und Rapid Prototyping

CPU, GPU und FPGA. CPU, GPU und FPGA Maximilian Bandle, Bianca Forkel 21. November 2017

Grundlagen der Anwendung und Programmierung des ESP8266. Dennis Hoffmann Mittwoch, :30 Uhr Schulungsraum SW23/147

HS Technische Informatik

E Mikrocontroller-Programmierung

Analyse von Synchronisation

PRIP-Preis. Effizientes Object Tracking durch Programmierung von Mehrkernprozessoren und Grafikkarten

Lehrstuhl für Informatik 12 (Hardware-Software-Co-Design) Prof. Dr.-Ing. J. Teich

PCG-NV209 PCG-NV209. Technische Daten. Modellnummer. Betriebssystem. Prozessor. Festplattenlaufwerk. Standard-RAM. Maximaler RAM

Entwurf einer universellen rekonfigurierbaren Architektur für Visual Computing. Urs Kanus WSI / GRIS Universität Tübingen urs@gris.uni-tuebingen.

Grafikkarten-Architektur

FPGA-basierte Automatisierungssysteme

PCG-C1MHP PCG-C1MHP. Technische Daten. Modellnummer. Betriebssystem. Prozessor. Festplattenlaufwerk. Standard-RAM. Maximaler RAM 384 MB **

Dekodierung eines Funkfernschreibersignals mithilfe der Zynq-Plattform. Lehrstuhlseminar Benjamin Koch

Busse. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009

Einführung. GPU-Versuch. Andreas Schäfer Friedrich-Alexander-Universität Erlangen-Nürnberg

COOL HASHING MIT FPGAS. Robert Bachran

Datenblatt: TERRA PC-BUSINESS 5000 GREENLINE 539,00. Bestseller Core i5 PC. Zusätzliche Artikelbilder IT. MADE IN GERMANY

Einleitung_. FPAAs Field Programmable Analog Arrays. (1) Was sind FPAAs? (2) Wie funktionieren FPAAs? (3) Stand der Technik heute?

Systeme 1: Architektur

Technische Grundlagen der Informatik 2 SS Einleitung. R. Hoffmann FG Rechnerarchitektur Technische Universität Darmstadt E-1

FPGA vs. Mikrocontroller. Agenda

Architektur paralleler Plattformen

Parallelisierung auf MPSoC-Plattformen

Parallelrechner (1) Anwendungen: Simulation von komplexen physikalischen oder biochemischen Vorgängen Entwurfsunterstützung virtuelle Realität

Symmetric Multiprocessing mit einer FPGA basierten. Marco Kirschke INF-M3 Seminar Wintersemester 2010/ November 2010

Memory Models Frederik Zipp


Automatisierung mit Hilfe einer rekonfigurierbaren FPGA-Hardwareplattform

Prof. Dr.-Ing. Peter Schulz

Betriebssysteme. FU Berlin WS 2004/05 Klaus-Peter Löhr. bs-1.1 1

GigE Vision: Der Standard

Transkript:

High Performance Embedded Processors Matthias Schwarz Hardware-Software-Co-Design Universität Erlangen-Nürnberg martin.rustler@e-technik.stud.uni-erlangen.de matthias.schwarz@e-technik.stud.uni-erlangen.de Matthias Schwarz 1

Übersicht Einführung Motivation und Zielsetzung Begriffe Nexperia Home Platform Architektur Speicherlayout Softwarearchitektur Entwicklungsumgebung Pact XPP III Architektur FNC-PAE ALU-PAE RAM-PAE Synchronisation Video Dekodierung Matthias Schwarz 2

Motivation und Zielsetzung Eingebettete Systeme stellen Anforderungen an Performance Fläche Energieverbrauch Unter diesen Umständen ergeben sich neue Ansätze für Prozessoren die in eingebetteten Systemen zum Einsatz kommen. Matthias Schwarz 3

Heterogene - Homogene Architekturen Heterogen Bestehen aus verschiedenartigen Hardwarebausteinen Anpassung an Anwendungsgebiet durch Auswahl dieser Bausteine Abstraktionsschichten für Programmierung Homogen Gleiche Hardwarebausteine Performancegewinn durch weitere Prozessorelemente Abstraktionsschichten nur bedingt notwendig Matthias Schwarz 4

Kommunikation Shared Memory Komponenten kommunizieren über gemeinsam genutzten Speicher Message Passing Komponenten kommunizieren untereinander mittels Nachrichten Matthias Schwarz 5

Nexperia Home Platform Architektur Vorlage für Digital Video Audio im Bereich der Consumer Electronics. Matthias Schwarz 6

Main Memory Interface Arbitriert Speicherzugriffe Behandelt Kontroll- und Datensignale Keine weitere Logik bei Verbindung mit externem Speicherbaustein nötig Matthias Schwarz 7

Softwarearchitektur Matthias Schwarz 8

TriMedia TM32 Familie Media Processor Mischung aus DSP und GPP VLIW Architektur Matthias Schwarz 9

VLIW Verarbeitung multi-port 128 words x 32 bits register file bypass network FU FU FU FU FU VLIW instruction decode and launch Matthias Schwarz 10

XPP-III Hardware-Software-Co-Design Universität Erlangen-Nürnberg martin.rustler@e-technik.stud.uni-erlangen.de 1

Motivation, Klassifikation, Einsatzbereiche Klassifikation homogene Architektur grobgranular (coarse-grained) rekonfigurierbar Warum rekonfigurierbare Architekturen? rekonfigurierbare Architekturen kombinieren die Performance von ASIC's mit der Flexibilität von programmierbaren Prozessoren Algorithmen UND Ressourcen variabel Einsatzbereiche: Multimedia Telekommunikation Simulation Kryptographie... 2

Gesamtstruktur 30 ALU-, 12 RAM-, 6 FNC-PAEs 3

Gesamtstruktur (Function-PAEs) FNC-PAEs (Function-PAEs) sequentielle 16-Bit Prozessor-Kerne führen unregelmäßigen, kontrollflussdominierten Code aus bis zu 8 ALU-Operationen und 1 Spezialbefehl pro Zyklus (z.b. MUL) 4

Gesamtstruktur (dataflow array) ALU-PAEs 3 ALUs RAM-PAEs 2 ALUs, kleiner RAM, I/O Objekt führen regelmäßige Streaming-Algorithmen aus (Filter, Transformationen,...) 5

FNC-PAE 6

ALU-PAE 7

RAM-PAE 8

Synchronisation Paket-orientiertes Netzwerk Standard-Modus XPP Objekte sind selbst-synchronisierend Eine Operation wird ausgeführt, sobald alle nötigen Pakete verfügbar sind 1 Paket pro Zyklus Hardware-Protokolle schützen vor Paketverlust Kein explizites Scheduling der Operationen nötig constant mode setzt die Synchronisation außer Kraft erlaubt die wiederholte Nutzung von Daten 9

Rekonfiguration eigentliche Stärke des XPP-III leistungsfähiger Rekonfigurations-Mechanismus zur Laufzeit PAEs können konfiguriert werden, während benachbarte PAEs Daten verarbeiten ganze Algorithmen können unabhängig auf verschiedenen Teilen des Arrays konfiguriert und ausgeführt werden 10

Video Decoding auf dem XPP-III 11

Video Decoding auf dem XPP-III MPEG 2 H.264 VC-1 VGA (640x480), 30 fps Local Buffer: 240 Kbit XPP12.6.3 XPP20.8.4 XPP40.16.8 45 MHz 25 MHz 19 MHz 237 MHz 148 MHz 80 MHz 149 MHz 106 MHz 59 MHz MPEG 2 H.264 VC-1 SD/D1 (720x480), 30 fps Local Buffer: 270 Kbit XPP12.6.3 XPP20.8.4 XPP40.16.8 50 MHz 28 MHz 21 MHz 266 MHz 166 MHz 90 MHz 167 MHz 119 MHz 66 MHz MPEG 2 H.264 VC-1 HD (1280x720), 30 fps Local Buffer: 480 Kbit XPP12.6.3 XPP20.8.4 XPP40.16.8 132 MHz 72 MHz 53 MHz n/a 325 MHz 174 MHz n/a 312 MHz 165 MHz MPEG 2 H.264 VC-1 VGA (640x480), 30 fps Local Buffer: 60 Kbit XPP12.6.3 XPP20.8.4 XPP40.16.8 50 MHz 31 MHz 28 MHz 242 MHz 156 MHz 92 MHz 161 MHz 118 MHz 84 MHz MPEG 2 H.264 VC-1 HD (1920x1080), 30 fps Local Buffer: 720 Kbit XPP12.6.3 XPP20.8.4 XPP40.16.8 300 MHz 162 MHz 117 MHz n/a n/a 390 MHz n/a n/a 366 MHz 12