Entwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2 Seminar
|
|
- Karoline Beyer
- vor 7 Jahren
- Abrufe
Transkript
1 Entwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2 Seminar Jorge Meza jorge.meza@tu-ilmenau.de Zusebau R2082, Tel: Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group 15. Januar 2015 Self-Organization 15 January
2 Inhalt des Seminars Modelle für high-level Synthesis High-level Synthesis Datenflussgraph (DFG) Kontrollflussgraph (CFG) Leistungsbewertung Taskgraph Aufgaben Verteilung von Tasks auf Prozessoren Antwortzeit und Auslastung 15. Januar
3 Modelle für high-level Synthesis Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group 15. Januar 2015 Self-Organization 15 January
4 Y-Diagramm Domänen und Abstraktionen des HW-Entwurfes Verhalten Systemspezifikation Algorithmen Register-Transfers System-level Synthesis High-level Synthesis RTL Synthesis Logic Synthesis Boolesche Gleichungen Gatter, Flip-Flops Circuit Synthesis Differentialgleichungen Transistoren Struktur Prozessoren, Coprozessoren, Bussen Datenpfad, Kontrollpfad Register, ALUs, Muxer Transistor Layout Zellen Floorplan Cluster Geometrie Board/SoC 15. Januar
5 High-Level Synthesis Vollautomatischer Entwurf auf algorithmischer Ebene Entwickler ist mit den Aufgaben der Spezifikation der Algorithmen beauftragt SystemC, C, Matlab Automatischer Entwurf des Datenpfades und Kontrollpfades Grundaufgaben Allokation Bestimmung von Ressourcentypen und Anzahl der benötigten Instanzen Scheduling (Ablaufplanung [1]) Festlegen von Startzeiten der Aufgaben unter Berücksichtigung aller Datenabhängigkeiten Mapping (Bindung [1]) Spezifiziert auf welchen Ressourcentyp und Instanz eine Aufgabe implementiert wird DFGs und CFGs Als Zwischendarstellungen verwendet [1] J. Teich: Digitale Hardware/Software Systeme. Springer, Januar
6 DFG (Datenflussgraph) Formale Beschreibung für Daten-dominierte Anwendungen (bspw. digitale Signalverarbeitung) Menge von Verarbeitungseinheiten (Knoten) Menge von Pfeilen, die den Datenfluss und die Datenabhängigkeiten repräsentieren Ausgabe ist eine Funktion der Eingabe Keine Zustände, keine externen Ereignisse zum Auslösen von Zustandsänderungen Anwendbar für Scheduling (Ablaufplanung) und Code-Generierung 15. Januar
7 ASAP Algorithmus (ohne Ressourcenbeschränkungen) Idee: Jeden Knoten so früh wie möglich (as soon as possible ASAP) starten Bestimmung des latenzoptimalen Ablaufplanes Problem der Latenzminimierung kann in polynomieller Zeit exakt gelöst werden 15. Januar
8 ALAP Algorithmus (ohne Ressourcenbeschränkungen) Idee: Jeden Knoten so spät wie möglich (as late as possible ALAP) starten Komplementärer Algorithmus Der Algorithmus ermittelt die spätesten Startzeitpunkte alle Knoten. 15. Januar
9 DFG + Scheduling Aufgabe 1 Erzeugen Sie für folgende Gleichungen eine Datenflussbeschreibung (DFG) x = 3*7+4*a y = 2*x+b^2 z = a*b+5 Führen Sie dies mit folgenden Algorithmen durch ASAP ohne Ressourcenbeschränkungen ALAP ohne Ressourcenbeschränkungen 15. Januar
10 Latenz + Mapping Aufgabe 2 Wie viele Takte werden für die ASAP und ALAP Lösungen benötigt, wenn eine Multiplikation 4 Takte benötigt eine Addition 2 Takte benötigt Wie viele Ressourcen (Multiplizierer und ALUs mit 2 Eingängen) sind notwendig für eine maximal parallele Abarbeitung? (Mapping) ASAP ALAP Wie kann die Abarbeitung mit wenigen Ressourcen im Vergleich zu ASAP und ALAP Lösungen umgesetzt werden? Anforderung: Latenz < 18 Takte Wie viele Multiplizierer und ALUs sind notwendig? Wie viele Takte sind für die gesamte Abarbeitung notwendig? Ist es möglich die Ressourcen zu minimieren ohne die Abarbeitungszeit zu erhöhen? 15. Januar
11 Ressourcenbeschränkungen Aufgabe 3 Wie sieht der DFG aus, wenn nur 1 Multiplizierer und eine ALU zur Verfügung stehen? Wie viele Takte werden in diesem Fall benötigt, wenn eine Multiplikation 4 Takte benötigt eine Addition 2 Takte benötigt 15. Januar
12 Aufgabe 4 Erzeugen Sie für folgende Gleichungen eine optimierte DFG Lösung (minimale Latenz mit wenigen Ressourcen) wenn x = 2*b+4*a y = (2+x)+b^2 z = d*(e+5) eine Multiplikation 4 Takte benötigt eine Addition 2 Takte benötigt Führen Sie eine Ablaufplanung mit minimalen Ressourcen (1x Mult, 1x ALU) durch. Berechnen sie die Latenz. 15. Januar
13 Anmerkungen Unberücksichtigt sind bisher geblieben: Der Aufwand für die Speicherung der Daten Die Ressourcen für die Speicherung der Daten Die Ressourcen für das Multiplexen der Daten zu den einzelnen Ausführungseinheiten, wenn diese für mehr als eine Berechnung genutzt werden. Die genauen zusätzlichen Kosten hängen von der verwendeten Hardware ab und werden hier deshalb vernachlässigt. 15. Januar
14 Kontrollflussgraph (CFG) Formale Beschreibung mit Fokus auf Steueraspekten eines Systems Knoten stellen Operationen und Kanten bedingte Übergänge dar Datenabhängigkeiten der Operationen werden nicht dargestellt Modellierung von Kontrollstrukturen wie Verzweigungen und Schleifen Verzweigungsknoten Knoten mit mehreren Nachfolgern Anwendbar zur Darstellung des Kontrollflusses eines Programms 15. Januar
15 Kontrollflussgraph (CFG) 15. Januar
16 CFG Aufgabe 1 1 program { 2 output (1,2); 3 tmp := input; 4 if tmp == 0 { 5 i := 1; 6 a := 2; } 7 else { 8 done := false; 9 loop { 10 tmp := tmp-1; } 11 until tmp = 0 } 12 output (3,3); 13 } Das Programm ist in Pseudocode geschrieben. 15. Januar
17 Leistungsbewertung Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group 15. Januar 2015 Self-Organization 15 January
18 Leistungsbewertung Qualität eines Entwurfs bzgl. Zeit- und Leistungsaspekten abzuschätzen Antwortzeit (Latenz): Zeitintervall zwischen einem Service-Request und der entsprechenden Antwort Auslastung: Nutzungsgrad einer Ressource in einem bestimmten Zeitraum Notwendig für: Validierung und Verifikation der Leistungsanforderungen des Systems Festlegung und Optimierung des zu entwickelnden Systems Heute: Modellbasierte Bewertung Modell: Taskgraph Methode: Diskrete ereignisorientierte Simulation Leistungskriterien: Antwortzeit und Ressourcenauslastung 15. Januar
19 Taskgraph Verhaltensmodell einer Applikation/Funktion Knoten repräsentieren funktionelle Einheiten (Funktion, Prozedur, Operation, etc.) Allgemeine Bezeichnung Task Gerichtete Kanten repräsentieren Reihenfolgeabhängigkeiten A B C D 15. Januar
20 Aufgaben Ereignisorientierte Simulation Bestimmung der Startzeiten und Verteilung von Tasks auf Prozessoren A Scheduling erfolgt nach bestimmten Prioritäten Ziel: Analyse der minimale Antwortzeit und Auslastung unter Berücksichtigung der Prioritäten und Abhängigkeiten B C D Ausführungszeiten E F A: 3, B: 2, C: 4, D: 1 E: 2, F: 7, G: 3, H: 4 G I: 1, J: 3, K: 2 H Vorgaben Die Prioritäten werden nur berücksichtigt, wenn zwei Tasks gleichzeitig gestartet werden können. Ist nur ein Task bereit, wird dieser unabhängig von seiner Priorität gestartet. Ein einmal gestartetes Task wird nicht unterbrochen (ohne Verdrängung) I K J 15. Januar
21 Aufgaben Ereignisorientierte Simulation 1. Scheduling: vordefinierte Prioritäten A 1.1. Ordnen Sie die Tasks A..K einem Prozessor zu Ordnen Sie die Tasks zwei Prozessoren zu, so dass die gesamte Ausführungszeit möglichst minimal wird. B C D 1.3. Ordnen Sie die Tasks drei Prozessoren zu Wie verändert sich das Verhalten, wenn D und F eine höhere Priorität als B und C haben und zwei Prozessoren verwendet werden? E G F Berechnen Sie für alle Aufgaben die Auslastung der Prozessoren, sowie die Antwortzeit von Task F H In welchen Fällen werden folgende Anforderungen erfüllt? Deadline für Abarbeitung von F < 12 Zeiteinheiten. Auslastung > 60% I J Prioritäten: Ein Buchstabe, der vorne im Alphabet steht, hat eine höhere Priorität. Also A vor B vor C vor D bzw. A hat die höchste Priorität, K die niedrigste. K 15. Januar
22 Aufgaben Ereignisorientierte Simulation Aufgabe 1.1.: Einheiten gesamte Abarbeitungszeit A P1 Antwortzeit von Task F: Einheiten Auslastung der Prozessoren (in % bzw. als Bruch) Prozessor 1: B C D E F Aufgabe 1.2.: Einheiten gesamte Abarbeitungszeit G P1 P2 H Antwortzeit von Task F: Einheiten Auslastung der Prozessoren (in % bzw. als Bruch) Beide Prozessoren zusammen: I J Prozessor 1: Prozessor 2: K 15. Januar
23 Aufgaben Ereignisorientierte Simulation Aufgabe 1.3: Einheiten gesamte Abarbeitungszeit P1 A P2 P3 Antwortzeit von Task F: Einheiten Auslastung der Prozessoren (in % bzw. als Bruch) Alle Prozessoren zusammen: Prozessor 1: Prozessor 2: Prozessor 3: B C E G D F Aufgabe 1.4.: Einheiten gesamte Abarbeitungszeit P1 H P2 Antwortzeit von Task F: Einheiten Auslastung der Prozessoren (in % bzw. als Bruch) Beide Prozessoren zusammen: Prozessor 1: Prozessor 2: I K J 15. Januar
24 Aufgaben Ereignisorientierte Simulation 2. Scheduling: Listschedulingverfahren HLFET A 2.1. Ordnen Sie die Aufgaben zwei Prozessoren zu, so dass die gesamte Ausführungszeit möglichst minimal wird. Berechnen Sie die Auslastung der Prozessoren, sowie die Antwortzeit von Task F. Werden die Anforderungen erfüllt? Deadline für Abarbeitung von F < 12 Zeiteinheiten. Auslastung > 60% B C E G D F Highest Level First with Estimated Times (HLFET) Ziel: Festlegung der Task-Prioritäten!! H Schritte: 1. Berechnung des längsten Pfades (Level) aller Knoten. Das ist als die maximale Ausführungszeit vom Knoten X bis zum Exit-Knoten K definiert. 2. Festlegung von Prioritäten für alle Knoten. Der berechnete Level ist der Prioritätswert eines Knotens. Ein höherer Wert entspricht einer höheren Priorität. I K J 15. Januar
25 Aufgaben Ereignisorientierte Simulation Aufgabe 2.1.: A Task A B C D E F G H I J K Level B C D Task Priorität E F Einheiten gesamte Abarbeitungszeit G P1 P2 H Antwortzeit von Task F: Einheiten Auslastung der Prozessoren (in % bzw. als Bruch) I J Beide Prozessoren zusammen: Prozessor 1: K Prozessor 2: 15. Januar
26 Fragen zum Seminar Wie funktioniert ein DFG? Geben Sie für eine vorgegebene Berechnung den DFG an, wenn sie beliebig viele Ressourcen zur Verfügung haben. Was kann man daraus ablesen? Wie ändert sich der DFG bei minimalen Ressourcen? Wie funktioniert ein CFG? Wie wird die Leistung eines Systems bewertet? Berechnen Sie an einem einfachen Beispiel die Antwortzeit und Auslastung. Berechnen Sie die Prioritäten von Tasks mittels heuristischen Algorithmen wie HLFET. 15. Januar
27 Literatur Schaltsysteme (H.-D. Wuttke K. Henke, Pearson Verlag, 2006) Systems Engineering with SDL (A. Mitschele-Thiel, Wiley Verlag, 2001) Digitale Hardware/Software Systeme (J. Teich, Springer Verlag, 1997) 15. Januar
28 Fakultative Aufgaben Geben Sie ein Beispiel von einem Kontroll- Datenflussgraph (CDFG). Was sind seine Vorteile gegenüber DFG und CFG? Benutzen Sie das Schedulingverfahren SCFET, um die Prioritäten des Taskgraphen festzulegen. Welche anderen Leistungsbewertungskriterien gibt es? Wie werden sie berechnet? 15. Januar
IHS2 Seminar. Jorge Meza Zusebau R2082, Tel: -4128
Jorge Meza Zusebau R2082, Tel: -4128 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group 14. Januar 2014 Self-Organization 14 January 2014 1 Nächster Termin Das letzte findet am
MehrEntwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2 Seminar
Entwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2 Seminar Jorge Meza jorge.meza@tu-ilmenau.de Zusebau R2082, Tel: -4128 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated
MehrIHS2 Seminar CFG. Steffen Ostendorff Zusebau, R2078, Tel: -1788
CFG Steffen Ostendorff Zusebau, R2078, Tel: -1788 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group 2. Januar 2012 Self-Organization 05 January 2012 1 Wiederholung CFG 2. Januar
MehrTask& Data-Flow Graphs
Task& Data-Flow Graphs M. Thaler, TG208, tham@zhaw.ch www.zhaw.ch/~tham Februar 16 1 1 Um was geht es? Parallele Algorithmen was sind Möglichkeiten zur Darstellung? was sind Möglichkeiten zur Analyse?
MehrRechnergestützter VLSI-Entwurf
Schaltungssynthese Dipl.-Ing. e-mail: rgerndt@iam.de Seite SYN/1 Motivation Vereinfachung des Systementwurfes Weniger Fehler durch abstrakte Beschreibung Portierbarkeit der Schaltung (PLD, CPLD, FPGA,
MehrVerhaltensbeschreibung und Spezifikationssprachen
TECHNISCHE UNIVERSITÄT ILMENAU Integrierte Kommunikationssysteme http://www.tu-ilmenau.de/iks Verhaltensbeschreibung und Spezifikationssprachen Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische
MehrVerhaltensbeschreibung und Spezifikationssprachen
TECHNISCHE UNIVERSITÄT ILMENAU Integrierte Kommunikationssysteme http://www.tu-ilmenau.de/iks Verhaltensbeschreibung und Spezifikationssprachen Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische
MehrHardware/Software-Codesign
Klausur zur Lehrveranstaltung Hardware/Software-Codesign Dr. Christian Plessl Paderborn Center for Parallel Computing Universität Paderborn 8.10.2009 Die Bearbeitungsdauer beträgt 75 Minuten. Es sind keine
MehrSystempartitionierung. Hw-Sw-Co-Design
Systempartitionierung Hw-Sw-Co-Design Wo sind wir? System Verhalten Modul Architektur Block SW HW Logik Struktur Überblick Modelle für die Systemsynthese Partitionierung Allgemeine Partitionierungsalgorithmen
MehrX Inhaltsverzeichnis 2.7 StrukturorientierteModelle Komponenten-Verbindungsdiagramm (CCD) HeterogeneModelle Kontr
1 Einleitung... 1 1.1 Motivation... 1 1.2 Entwurfsmethodik..... 7 1.2.1 Erfassenundsimulieren... 7 1.2.2 Beschreibenundsynthetisieren... 8 1.2.3 Spezifizieren,explorierenundverfeinern... 9 1.3 Abstraktion
MehrMikroarchitektursynthese - Scheduling Peter Marwedel, Robert Pyka. Informatik 12
Mikroarchitektursynthese - Scheduling Peter Marwedel, Robert Pyka Informatik 12 Übersicht Einführung SystemC Vorlesungen und Programmierung FPGAs - Vorlesungen - VHDL-basierte Konfiguration von FPGAs Algorithmen
MehrSystemtheorie 1. Formale Systeme 1 # WS 2006/2007 Johannes Kepler Universität Linz, Österreich
Einführung 1 Systemtheorie 1 Formale Systeme 1 #342234 http://fmv.jku.at/fs1 WS 2006/2007 Johannes Kepler Universität Linz, Österreich Univ. Prof. Dr. Armin Biere Institut für Formale Modelle und Verifikation
MehrÜbungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling
Übungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling Aufgabe 1: Sie haben in der Vorlesung einen hypothetischen Prozessor kennen
MehrIHS2 Seminar. Simulation. Steffen Ostendorff
Simulation Steffen Ostendorff BlockM, R602, Tel: -1788 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Integrated HW/SW Systems Group 06 December 2010 Self-Organization 08 December 2010 1 Inhalt des Seminars
MehrEntwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2 Seminar
Entwicklung integrierter HW/SW-Systeme Integrierte Hard- und Softwaresysteme 2 Seminar Einführung Jorge Meza jorge.meza@tu-ilmenau.de Zusebau R2082, Tel: -4128 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel
MehrSynthese Eingebetteter Systeme. 9 Synthese: Grundlagen
12 Synthese Eingebetteter Systeme Sommersemester 2011 9 Synthese: Grundlagen Michael Engel Informatik 12 TU Dortmund 2011/05/13 Synthese: Grundlagen Überblick: Synthese High-Level-Synthese Werkzeugfluss
MehrIntegrated HW/SW Systems Group 20 November 2009 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel.
Erweiterte Simulation / Aufgaben 20 November 2009 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Self-Organization 20 November 2009 1 Inhalt Erweiterung der Simulation Ausgabe der Bilddaten in eine Datei
MehrSystemtheorie 1. Einführung Systemtheorie 1 Formale Systeme 1 # WS 2006/2007 Armin Biere JKU Linz Revision: 1.4
Einführung intro 1 Grobklassifizierung r Methoden in der Informatik intro 2 Systemtheorie 1 Systeme 1 #342234 http://fmv.jku.at/fs1 WS 2006/2007 Johannes Kepler Universität Linz, Österreich Univ. Prof.
MehrVHDL - Synthese. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg
VHDL - Synthese Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2007/2008 VHDL - Synthese 1/19 2007-10-27 Inhalt Begriff Arten
MehrVerteilte Systeme. Verteilte Systeme. 5 Prozeß-Management SS 2016
Verteilte Systeme SS 2016 Universität Siegen rolanda.dwismuellera@duni-siegena.de Tel.: 0271/740-4050, Büro: H-B 8404 Stand: 31. Mai 2016 Betriebssysteme / verteilte Systeme Verteilte Systeme (1/14) i
MehrSynthese Eingebetteter Systeme. 12 Synthese: Bereitstellung (Allocation)
12 Synthese Eingebetteter Systeme Wintersemester 2012/13 12 Synthese: Bereitstellung (Allocation) 2012/12/10 Michael Engel Informatik 12 TU Dortmund Synthese: Bereitstellung (Allocation) Bereitstellung
MehrVerhaltensbeschreibung und Spezifikationssprachen
TECHNISCHE UNIVERSITÄT ILMENAU Integrierte Kommunikationssysteme http://www.tu-ilmenau.de/iks Verhaltensbeschreibung und Spezifikationssprachen Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische
MehrSystembeschreibungssprachen
Systembeschreibungssprachen Dr. Jürgen Ruf Organisation Vorlesung Donnerstags 15:45 bis 17:15 Kleiner Hörsaal, Sand 6/7 Sprechzeiten: nach Vereinbarung Email: ruf@informatik.uni-tuebingen.de Tel: 07071/29-74706
MehrElectronic Design Automation (EDA) Spezifikation
Electronic Design Automation (EDA) Spezifikation Inhalte einer Spezifikation Beispielspezifikation Ampelsteuerung Formale Beschreibung Blockdiagramme... für die Ampel Zustandsübergangs-diagramme... für
MehrVortrag zum Hauptseminar Hardware/Software Co-Design
Fakultät Informatik Institut für Technische Informatik, Professur für VLSI-Entwurfssysteme, Diagnostik und Architektur Vortrag zum Hauptseminar Hardware/Software Co-Design Robert Mißbach Dresden, 02.07.2008
MehrCodegenerierung für Basisblöcke (1)
Codegenerierung für Basisblöcke (1) Basisblock (Grundblock): Teil des Kontrollflussgraphen, der keine Verzweigungen (Sprünge) oder Vereinigungen (Label) enthält keine Zyklen: bessere Optimierung möglich
MehrEntwurf und Synthese von Eingebetteten Systemen
Inhaltsübersicht Teil : Architektur oder HighLevelSynthese Entwurf und Synthese von Eingebetteten Systemen Teil a: Architektursynthese oder HighLevelSynthese Teil Sommersemester 00 Dr. Walter Lange .
MehrInstitut für Angewandte Mikroelektronik und Datentechnik Fachbereich Elektrotechnik und Informationstechnik Universität Rostock.
Seite 1 Optimierung der Verbindungsstrukturen in Digitalen Neuronalen Netzwerken Workshop on Biologically Inspired Methods on Modelling and Design of Circuits and Systems 5.10.2001 in Ilmenau, Germany
MehrMotivation. Eingebettetes System: Aufgabe:
Motivation n Aufgabe: n Eingebettetes System: Computersystem, das in einen technischen Kontext eingebettet ist - also ein Computer, der ein technisches System steuert oder regelt. Das sind z.b. das Antiblockiersystem,
MehrIntegrierte Schaltungen
Integrierte Schaltungen Klassen von Chips: SSI (Small Scale Integrated) circuit: 1 bis 10 Gatter MSI (Medium Scale Integrated) circuit: 10 bis 100 Gatter LSI (Large Scale Integrated) circuit: 100 bis 100
MehrAlgorithmen und Datenstrukturen 2. Stefan Florian Palkovits, BSc Juni 2016
Algorithmen und Datenstrukturen 2 Übung 1 Stefan Florian Palkovits, BSc 0926364 e0926364@student.tuwien.ac.at 12. Juni 2016 Aufgabe 1: Es existiert eine Reduktion von Problem A auf Problem B in O(n 3 +
Mehr5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS)
5 BINÄRE ENTSCHEIDUNGS- DIAGRAMME (BDDS) Sommersemester 2009 Dr. Carsten Sinz, Universität Karlsruhe Datenstruktur BDD 2 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer:
MehrVorlesung Hardware-Beschreibungssprachen
Vorlesung Hardware-Beschreibungssprachen Dr.-Ing. S. Arlt Fakultät EI Fachbereich Elektronische Schaltungen und Systeme S. Arlt TUI/EI/ESS HBS 0-1 Vorlesung Hardware-Beschreibungssprachen Kapitel 1 : Einführung
MehrEntscheidungsverfahren für die Software-Verifikation. 4 - BDDs
Entscheidungsverfahren für die Software-Verifikation 4 - BDDs Datenstruktur BDD 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer: Booleschen Funktionen) Boolesche
MehrEinfache Bedingte Ausführung
Kontrollstrukturen Bisher Programme mit Funktionen als einfache Folge von Befehlen Ablauf von Programmen darüber hinaus steuerbar über Bedingte Ausführung: Ausführung von Programmteilen (Befehlen oder
MehrDiskrete Ereignissysteme. Spezielle Netzstrukturen- Übersicht. Beispiele zu speziellen Netzstrukturen. Petri-Netze und Zustandsautomaten
Diskrete Ereignissysteme 4.4 Spezialisierungen von Petri Netzen Spezielle Netzstrukturen- Übersicht Ein S-T-Netz heisst Zustands-System gdw. gilt:. W(f) = für alle Kanten f F. 2. t = t = für alle Transitionen
MehrHardware/Software-Codesign
Hardware/Software-Codesign Kapitel 6: Systemsynthese M. Schölzel Modelle für den Systementwurf Typische Modelle im Entwurfsablauf Prozessbasierte Modelle (Kommunizierende Prozesse,, DFGs), Zustandsbasierte
MehrOutline Automaten FSM Synthesis FSM in VHDL FSM auf FPGA. State Machines. Marc Reichenbach und Michael Schmidt
State Machines Marc Reichenbach und Michael Schmidt Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/11 1 / 34 Gliederung Endliche Automaten Automaten Synthese FSM Beschreibung in VHDL
MehrKapitel 1: Informationsverarbeitung durch Programme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2008 Kapitel 1: Informationsverarbeitung
Mehrp max = 4 T = 8 Work = 28 3 I = Work / T = 3,5 2 Cost = p max * T = 32 U = I / p max = 87,5% 1
Massivparallele Modelle und Architekturen Wintersemester 13/14 Lösungsvorschlag 1. Übung 1. Aufgabe: Leistungsbewertung paralleler Systeme Betrachtet werden soll der Odd-Even-Sort-Algorithmus mit n Eingangswerten
Mehrp max = 4 T = 8 Work = 28 3 I = Work / T = 3,5 2 Cost = p max * T = 32 U = I / p max = 87,5% 1
Massivparallele Modelle und Architekturen Wintersemester 2010/2011 Lösungsvorschlag 1. Übung 1. Aufgabe: Leistungsbewertung paralleler Systeme Betrachtet werden soll der Odd-Even-Sort-Algorithmus mit n
MehrAutomatisches Parallelisieren
Automatisches Parallelisieren Vorlesung im Wintersemester 2010/11 Eberhard Zehendner FSU Jena Thema: Ablaufplanung mit unbeschränkten Ressourcen Eberhard Zehendner (FSU Jena) Automatisches Parallelisieren
Mehr2.2 Register-Transfer-Synthese
2.2 Register-Transfer-Synthese Register-Transfer-Synthese Überblick digitale Synthese Register-Transfer- Synthese Makrozellgeneratoren Beispiel Addierer Beispiel Speicher Synthese endlicher Automaten Zustandskodierung
MehrVerilog Hardware Description Language (HDL)
Elektrotechnik Intelligent Systems Design Verilog Hardware Description Language (HDL) Einführung Prof. Dr.-Ing. Michael Karagounis Sommersemester 2016 HDL Konzept Was ist eine Hardwarebeschreibungssprache?
MehrApproximationsalgorithmen
Effiziente Algorithmen Lösen NP-vollständiger Probleme 320 Approximationsalgorithmen In polynomieller Zeit lässen sich nicht exakte Lösungen von NP-harten Problemen berechnen. Approximationsalgorithmen
MehrElectronic Design Automation (EDA) Technology Mapping
Electronic Design Automation (EDA) Technology Mapping Überblick digitale Synthese Technology Mapping Abbildung durch die Abdeckung eines Baumes Partitionierung des DAG Dekomposition und Abdeckung Beispiel
MehrLernmodul 7 Algorithmus von Dijkstra
Folie 1 von 30 Lernmodul 7 Algorithmus von Dijkstra Quelle: http://www.map24.de Folie 2 von 30 Algorithmus von Dijkstra Übersicht Kürzester Weg von A nach B in einem Graphen Problemstellung: Suche einer
MehrModell-basierte Entwicklung mit der Timing Definition Language (TDL)
Modell-basierte Entwicklung mit der Timing Definition Language (TDL) Prof. Dr. Wolfgang Pree Univ. Salzburg Inhalt Motivation für einen Paradigmenwechsel bisher: zuerst Plattform, dann Software => Software
MehrLehrveranstaltung: PR Rechnerorganisation Blatt 8. Thomas Aichholzer
Aufgabe 8.1 Ausnahmen (Exceptions) a. Erklären Sie den Begriff Exception. b. Welche Arten von Exceptions kennen Sie? Wie werden sie ausgelöst und welche Auswirkungen auf den ablaufenden Code ergeben sich
MehrAlgorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems
4. Algorithmen Motivation Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems Der Begriff Algorithmus geht auf den Gelehrten Muhammad al-chwarizmi zurück, der um
MehrDer Dreyfus-Wagner Algorithmus für das Steiner Baum Problem
Der Dreyfus-Wagner Algorithmus für das Steiner Baum Problem Andreas Moser Dietmar Ebner Christian Schauer Markus Bauer 9. Dezember 2003 1 Einführung Der in der Vorlesung gezeigte Algorithmus für das Steiner
MehrBitte verwenden Sie nur dokumentenechtes Schreibmaterial!
VO 182.713 Prüfung Echtzeitsysteme 27. März 2015 KNr. MNr. Zuname, Vorname Ges.)(100) 1.)(35) 2.)(25) 3.)(15) 4.)(25) Zusatzblätter: Bitte verwenden Sie nur dokumentenechtes Schreibmaterial! 1 Grundlagen
MehrAlgorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems
4. Algorithmen Motivation Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems Der Begriff Algorithmus geht auf den Gelehrten Muhammad al-chwarizmi zurück, der um
MehrInstitut für Angewandte Mikroelektronik und Datentechnik Fachbereich Elektrotechnik und Informationstechnik Universität Rostock.
Seite 1 Implementierung Neuronaler Netze mittels Digit-Online Algorithmen Vortrag im Rahmen des 10. Symposium Maritime Elektronik 2001 M.Haase, A.Wassatsch, D.Timmermann Seite 2 Gliederung Was sind Neuronale
MehrECDL MODUL COMPUTING. Syllabus Version 1.0
ECDL MODUL COMPUTING Syllabus Version 1.0 DLGI Dienstleistungsgesellschaft für Informatik Am Bonner Bogen 6 53227 Bonn Tel.: 0228-688-448-0 Fax: 0228-688-448-99 E-Mail: info@dlgi.de, URL: www.dlgi.de In
MehrHW vs. SW ein erster Vergleich
HW vs. SW ein erster Vergleich 182.700 - HW/SW-Codesign Daniel Haslauer Vortrag 18.10.2016 Florian Wagner Mitschrift 1 Definition - Was ist Hard- und Software? Eine wirklich reine Hardware- und eine reine
MehrScheduling-Algorithmen: Zeitpunkt der Auswahlentscheidung
Scheduling-Algorithmen: Zeitpunkt der Auswahlentscheidung Nicht-präemptives Scheduling: CPU kann einem Prozess nur entzogen werden, wenn er beendet oder blockiert ist Präemptives Scheduling: Aktueller
MehrKontrollpfad der hypothetischen CPU
Kontrollpfad der hypothetischen CPU fast alle Algorithmen benötigen FOR- oder WHILE-Schleifen und IF.. ELSE Verzweigungen Kontrollfluß ist datenabhängig CCR speichert Statussignale N,Z, V,C der letzten
MehrTechnische Informatik I - HS 18
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik I - HS 18 Übung 7 Datum : 22.-23. November 2018 Pipelining Aufgabe 1: Taktrate / Latenz In dieser Aufgabe
MehrSpeichern von Zuständen
Speichern von Zuständen Erweiterung eines R S Latch zu einem D Latch (D=Data, C=Clock) R S altes Q neues Q 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 R S C D altes Q neues Q 0 0 0 0 0 1 0 1 0 0 1
MehrKontrollpfad der hypothetischen CPU
Kontrollpfad der hypothetischen CPU fast alle Algorithmen benötigen FOR- oder WHILE-Schleifen und IF.. ELSE Verzweigungen Kontrollfluß ist datenabhängig CCR speichert Statussignale N,Z, V,C der letzten
MehrRechnerarithmetik. Vorlesung im Sommersemester Eberhard Zehendner. FSU Jena. Thema: Addierschaltungen
Rechnerarithmetik Vorlesung im Sommersemester 2008 Eberhard Zehendner FSU Jena Thema: Addierschaltungen Eberhard Zehendner (FSU Jena) Rechnerarithmetik Addierschaltungen 1 / 19 Addierer für UInt 2 (l)
MehrMultiplikationschip. Multiplikation. Beitrag zu "Werkstattunterricht Multiplikation" Allgemeine Didaktik - Seminar SS95. Oberwiesenstr.
Informationsblatt für die Lehrkraft Multiplikation Multiplikationschip Beitrag zu "Werkstattunterricht Multiplikation" Allgemeine Didaktik - Seminar SS95 Autor: Ernesto Ruggiano Oberwiesenstr. 42 85 Zürich
MehrKapitel 1: Informationsverarbeitung durch Programme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2009 Kapitel 1: Informationsverarbeitung
MehrAn Overview of the Signal Clock Calculus
An Overview of the Signal Clock Calculus, Jennifer Möwert Inhaltsverzeichnis Synchrone Programmiersprachen Clock Calculus Synchrone Paradigmen SLTS Clocks SIGNAL Definitionen Endochrony Bäume, Jennifer
MehrCompiler für f r Eingebettete Systeme (CfES)
Compiler für f r Eingebettete Systeme (CfES) Sommersemester 2009 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung für Eingebettete Systeme Kapitel 9 Ausblick
MehrTeil 1: Digitale Logik
Teil 1: Digitale Logik Inhalt: Boolesche Algebra kombinatorische Logik sequentielle Logik kurzer Exkurs technologische Grundlagen programmierbare logische Bausteine 1 Analoge und digitale Hardware bei
MehrMusterlösung 3. Mikroprozessor & Eingebettete Systeme 1
Musterlösung 3 Mikroprozessor & Eingebettete Systeme 1 WS214/215 Hinweis: Die folgenden Aufgaben erheben nicht den Anspruch, eine tief ergehende Kenntnis zu vermitteln; sie sollen lediglich den Einstieg
MehrTeil V. Programmierbare Logische Arrays (PLAs)
Teil V Programmierbare Logische Arrays (PLAs) 1 Aufbau von PLAs Programmierbares Logisches Array (PLA): Programmierbarer Einheitsbaustein aufgebaut als ein Gitter (Array) von Basisbausteinen (Zellen).
MehrTechnische Informatik 1 Rechnerorganisation (RO)
Technische Informatik 1 Rechnerorganisation (RO) Dr.-Ing. Heinz-Dietrich Wuttke H.-D. Wuttke `13 10.10.2013 www.tu-ilmenau.de/iks 1 Hier fanden Sie uns: nun Informatikgebäude, EG, Sekretariat Zi. 1031
MehrMIN-Fakultät Department Informatik. Universität Hamburg. 3 VLSI- und Systementwurf RAM. Gliederung
3 VLSI- und Systementwurf 18.145 RAM Gliederung 1. Mikroelektronik 2. Mikrosysteme 3. VLSI- und Systementwurf Entwurfsmethodik EDA-Werkzeuge Entwurfsstile VHDL Hardwarebeschreibungssprachen Trends und
MehrKapitel 1: Informationsverarbeitung durch Programme
LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2018 Kapitel 1: Informationsverarbeitung
MehrCarry Lookahead Adder
Carry Lookahead Adder Mittels der Generate und Propagate Ausdrücke lässt ich dann für jede Stelle i der Carry (Übertrag) für die Stelle i+1 definieren: Für einen 4 Stelligen Addierer ergibt sich damit:
MehrElectronic Design Automation (EDA) Register-Transfer-Synthese
Electronic Design Automation (EDA) Register-Transfer-Synthese Überblick digitale Synthese Register-Transfer-Synthese Makrozellgenerator Beispiel Addierer (1)... (2)... (3)... (4) Beispiel Speicher Synthese
MehrVorlesung und Übung. Modellierung, Simulation, Entwurf heterogener Systeme. Dr. Christoph Grimm Professur Technische Informatik
Vorlesung und Übung Modellierung, Simulation, Entwurf heterogener Systeme - Am Beispiel SystemC Dr. Christoph Grimm Professur Technische Informatik 1 Dr. Ch. Grimm - Modellierung und Simulation heterogener
MehrSchriftliche Prüfung
OTTO-VON-GUERICKE-UNIVERSITÄT MAGDEBURG FAKULTÄT FÜR INFORMATIK Schriftliche Prüfung im Fach: Technische Grundlagen der Informatik Studiengang: Bachelor (CV / CSE / IF / WIF) am: 19. Juli 2008 Bearbeitungszeit:
MehrConfigurable Embedded Systems
Configurable Embedded Systems Prof. Dr. Sven-Hendrik Voß Wintersemester 2017 Technische Informatik (Master), Semester 2 Termin 9, 04.12.2017 Seite 2 High-Level Synthese Configurable Embedded Systems Wintersemester
MehrOutline Schieberegister Multiplexer Zähler Addierer. Rechenschaltungen. Marc Reichenbach und Michael Schmidt
Rechenschaltungen Marc Reichenbach und Michael Schmidt Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/11 1 / 22 Gliederung Schieberegister Multiplexer Zähler Addierer 2 / 22 Schieberegister
MehrKapitel 10. Komplexität von Algorithmen und Sortieralgorithmen
Kapitel 10 Komplexität von Algorithmen und Sortieralgorithmen Arrays 1 Ziele Komplexität von Algorithmen bestimmen können (in Bezug auf Laufzeit und auf Speicherplatzbedarf) Sortieralgorithmen kennenlernen:
Mehr5.3 Korrektheit und Verifikation
5.3 Korrektheit und Verifikation Korrektheit bedeutet, dass ein Algorithmus oder ein Programm das in der Spezifikation beschriebene Problem für beliebige Eingabedaten korrekt löst. Die Korrektheit kann
Mehr1. Klausur zur Vorlesung Algorithmentechnik Wintersemester 2008/2009
. Klausur zur Vorlesung Algorithmentechnik Wintersemester 008/009 Hier Aufkleber mit Name und Matrikelnummer anbringen Vorname: Nachname: Matrikelnummer: Beachten Sie: Bringen Sie den Aufkleber mit Ihrem
MehrDatenstrukturen und Algorithmen D-INFK
Eidgenössische Technische Hochschule Zürich Ecole polytechnique fédérale de Zurich Politecnico federale di Zurigo Federal Institute of Technology at Zurich Institut für Theoretische Informatik Peter Widmayer
MehrJ. Reinier van Kampenhout Robert Hilbrich Hans-Joachim Goltz. Workshop Echtzeit Fraunhofer FIRST
Modellbasierte Generierung von statischen Schedules für sicherheitskritische, eingebettete Systeme mit Multicore Prozessoren und harten Echtzeitanforderungen J. Reinier van Kampenhout Robert Hilbrich Hans-Joachim
Mehr1.4 Spezifikation. Inhalte einer. Spezifikation
1.4 Spezifikation Spezifikation Inhalte einer Spezifikation Beispielspezifikation Ampelsteuerung Formale Beschreibung Blockdiagramme... für die Ampel Zustandsübergangsdiagramme... für die Ampel Task-Flow-Graphen...
MehrElectronic Design Automation (EDA) Algorithmensynthese
Electronic Design Automation (EDA) Algorithmensynthese Überblick digitale Synthese Algorithmensynthese Beispiel für einen Algorithmus Abhängigkeitsgraph Schleifen Bedingte Verzweigungen Schritte der Algorithmensynthese
MehrHeinz-Dietrich Wuttke Karsten Henke. Schaltsysteme. Eine automatenorientierte Einführung. Pearson Studium
Heinz-Dietrich Wuttke Karsten Henke Schaltsysteme Eine automatenorientierte Einführung Pearson Studium ein Imprint der Pearson Education Deutschland GmbH 1 2 2.1 2.2 2.3 2.4 Vorwort Einleitung Mathematische
MehrVHDL Einleitung. Dr.-Ing. Volkmar Sieh. Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2010
VHDL Einleitung Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2010 VHDL Einleitung 1/17 2010-04-14 Inhalt Entwurfsebenen und -sichten
MehrEinführung in die Informatik I
Einführung in die Informatik I Kapitel I.5: Verzweigungen Prof. Dr.-Ing. Marcin Grzegorzek Juniorprofessur für Mustererkennung im Institut für Bildinformatik Department Elektrotechnik und Informatik Fakultät
MehrKlausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)
Institut für Angewandte Informatik und Formale Beschreibungsverfahren 15.02.2010 Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten) Name: Vorname: Matr.-Nr.: Semester: (WS 2009/10)
MehrComputerarithmetik (15b)
Computerarithmetik (15b) Dazugehöriges Beispiel: Schleife Schritt Multiplikator Multiplikand Produkt 0 Anfangswerte 0011 0000 0010 0000 0000 1 1a: 1 -> Prod. = Prod. + Mcand 0011 0000 0010 0000 0010 2:
MehrGrundlagen: Algorithmen und Datenstrukturen
Grundlagen: Algorithmen und Datenstrukturen Sommersemester 2018 Tobias Lasser Computer Aided Medical Procedures Technische Universität München Multiplikation langer Zahlen Schulmethode: gegeben Zahlen
MehrEntwicklung von Partitionierungsstrategien im Entwurf dynamisch rekonfigurierbarer Systeme
Entwicklung von Partitionierungsstrategien im Entwurf dynamisch rekonfigurierbarer Systeme R. Merker, Technische Universität Dresden, Fakultät ET und IT J. Kelber, Fachhochschule Schmalkalden, ET Gliederung
Mehr1. Einleitung. 2. Aufgabenstellung. R. Bartholomä, Prof. F. Kesel, Prof. T. Greiner Fachhochschule Pforzheim, Tiefenbronnerstraße 65, 75175 Pforzheim
Methoden, Werkzeuge und Architekturen zum Entwurf und zur Realisierung von Signal- und Bildverarbeitungsalgorithmen für die Umsetzung in R. Bartholomä, Prof. F. Kesel, Prof. T. Greiner Fachhochschule Pforzheim,
MehrFPGA Systementwurf. Rosbeh Etemadi. Paderborn University. 29. Mai 2007
Paderborn Center for Parallel l Computing Paderborn University 29. Mai 2007 Übersicht 1. FPGAs 2. Entwicklungssprache VHDL 3. Matlab/Simulink 4. Entwicklungssprache Handel-C 5. Fazit Übersicht FPGAs 1.
Mehr