Hardware/Software-Codesign
|
|
- Eike Neumann
- vor 6 Jahren
- Abrufe
Transkript
1 Hardware/Software-Codesign Kapitel 6: Systemsynthese M. Schölzel
2 Modelle für den Systementwurf
3 Typische Modelle im Entwurfsablauf Prozessbasierte Modelle (Kommunizierende Prozesse,, DFGs), Zustandsbasierte Systeme (Petrinetze, State Charts) zur Modellierung von Nebenläufigkeit Verarbeitungselemente (Prozessoren, ASICs, ASIPs) und Kommunikationselemente System Programmiersprachen, CFG, DAGs zur Modellierung sequentiellen Verhaltens Verhalten Prozessor Logik Standardzellen Struktur Komponenten: z.b. ALUs, Register, Multiplizierer Zustandsautomaten zur Modellierung sequentieller Logik, Aussagenlogische Formeln, Wahrheitswertetabellen zur Modellierung Boolescher Funktionen Physisch Spannungs- /Stromgleichungen Gatter (NAND, NOR), Flip-Flops Transistoren, Netzlisten
4 Prozess-basierte Modelle Prozesse (P): Verarbeiten Daten Datenverarbeitung im Prozess sequentiell Prozesse arbeiten nebenläufig, Reihenfolge nur durch Datenabhängigkeiten gegeben Verschiedene Arten der Kommunikation (C) möglich: Gemeinsamer Speicher (Semaphore, Kritische Sektionen für gegenseitigen Ausschluss) Nachrichtenbasiert (synchron oder asynchron) P C P C PE C
5 Details Prozess Prozess P Steuerflussgraph des Prozesses Kommunikation Nichtdeterministisches Verhalten kann entstehen (Race-Conditions) Deadlocks können entstehen
6 Beispiel: Deadlock P P P P besitzt Ressourcen und wartet gleichzeitig auf Anforderungen von P und P. P bzw. P benötigen beide Ressourcen gleichzeitig. P fordert zuerst bei P eine Ressource an. Bevor P die zweite Ressource anfordern kann, fordert diese P an. Weder P noch P können jetzt die benötigte zweite Ressource erhalten.
7 Beispiel: Race-Condition P P P P Schreibt X Schreibt danach Y Schreibt danach X Schreibt zuerst Y Liest dann erst Y Liest dann erst X P P Reihenfolge, in der P und P den Kommunikationskanal (z.b. gemeinsame Variable) nutzen, beeinflusst das Ergebnis des Systems.
8 Kahn Prozess Netzwerk Verhalten des Netzwerks wird deterministisch durch Einschränkungen bei der Kommunikation Kommunikationskanäle sind: Nachrichtenbasiert Unidirektional Punkt zu Punkt Verbindungen Asynchrone FIFOs mit unendlich großem Puffer Prozesse: Schreibende Prozesse werden wegen unendlich großer Puffer nie blockiert Lesende Prozess werden blockiert, falls keine Daten im Kanal vorhanden sind Gleichzeitiges Lesen mehrerer Kanäle nicht erlaubt Konsequenz: Reihenfolge, in der Kanäle von einem Prozess gelesen werden, ist durch den Prozess statisch festgelegt; kann sich aber in Abhängigkeit verfügbarer Daten ändern KPN haben ein deterministisches Verhalten P K P
9 Praktische Umsetzung von KPN Für KPN ist unentscheidbar Halteproblem Beschränkte Puffergröße Implementierung eines KPN Modells erfordert: Dynamische Ablaufplanung mit Prozesswechsel Anpassung der Puffergröße Umschalten auf anderen Prozess, wenn Kanal blockiert.
10 Datenflussgraph (DFG) Prozesse werden zu Aktoren: Ein Aktor wird erst aktiviert, wenn alle eingehenden Kanäle genügend Daten erhalten. Daten werden gelesen, verarbeitet und Ausgabedaten geschrieben Damit ist ein Aktor eine atomare Ausführungseinheit, bei dem einmal gestartet kein Wechsel zu einem anderen Aktor erforderlich wird. Kanäle: sind weiterhin FIFOs mit unendlicher Kapazität unidirektionale Punkt-zu-Punkt Verbindungen DFGs erlauben eine vereinfachte Ablaufplanung verglichen mit KPN, da Ausführung von Aktoren nicht unterbrochen werden muss. Trotzdem bleibt im Allgemeinen eine dynamische Ablaufplanung erforderlich.
11 Synchroner Datenflussgraph (SDF) Anzahl der konsumierten/produzierten Daten eines Aktors je Kanal ist konstant Damit statische Ablaufplanung möglich SDF G = (V,E,c,p,d) mit V ist die Menge der Knoten (Aktivitäten) E Í V V Kantenmenge (FIFO-Speicher) c : E konsumierte Marken beim Feuern p : E produzierte Marken beim Feuern d : E Anzahl der initialen Marken in den FIFOs Gut geeignet zur Modellierung von Signalverarbeitungssystemen
12 Beispiel zu SDF produzierte Daten Schaltung zur Bilddatenkompression konsumierte Daten 77 R D Q C Quelle DCT RLC Quelle: Bildquelle DCT: Diskrete Cosinus-Transformation Q: Quantisierer ( Wert pro quantisiertem Block) C: Neuer Wert für Q nach 77 Blöcken RLC: Lauflängen Kodierung R: Wert für Q muss für 77 Blöcke wiederholt werden.
13 Topologiematrix zum SDF Knoten Knoten Knoten Aufbau der Topologiematrix: Jede Spalte j entspricht einer Kante Zeile i entspricht Knoten i Zwei Fälle für Eintrag c ij : c ij < 0: Knoten i produziert -c ij Marken von Kante j c ij > 0: Knoten i konsumiert c ij Marken auf Kante j Kante von nach Kante von nach Kante von nach
14 Modellierung des dynamischen Verhaltens Eine Markierung der Kanten ist gegeben durch d = (e,,e E ) T mit e i Î. Schaltvorgang, bei dem Knoten i genau k i mal feuert, wird beschrieben durch einen Vektor k = (k,,k V ). Damit ergibt sich eine neue Kantenmarkierung d' durch: d' = d C T k, wobei C T die transponierte Topologiematrix des SDF ist. Beispiel zum SDF von voriger Folie: e e d C T k e 0 C Notwendige Bedingung für eine periodische Schaltfolge : C T k = 0, wobei k ¹ 0 (SDF wird dann konsistent genannt). Das kann nur erfüllt sein, wenn rang(c T ) < V Knoten (Aktoren) in einem konsistenten SDF sind statisch planbar.
15 Beispiel Konsistenz im SDF C T C C T C nicht konsistent konsistent
16 Konsistenter Graph 0 C 0 0 T C k k k k k k k = k = k =6 k =k k = k Schalthäufigkeiten der Knoten Finden einer Schaltreihenfolge durch beliebige Planung; zum Beispiel:,,,,,,,,,, Daraus initiale Kantenmarkierung ableiten, so dass jeder Knoten genug Marken zum Schalten hat, indem Schaltreihenfolge abgearbeitet wird: Hat eine Kante nicht genug Marken, darf der Knoten trotzdem feuern, Markenzahl der entsprechenden Kanten wird auf 0 reduziert (sonst werden nur die verbrauchten Marken abgezogen. Erreichte Schlussmarkierung ist auch Anfangsmarkierung: d (e ) =, d(e ) =, d(e ) = 0
17 Zustandsbasierte Modelle Endliche Automaten: Einfache Modellierung möglich Keine Hierarchie Keine Nebenläufigkeit Moore- und Mealy-Automat bekannt State-Charts: unterstützen Hierarchie und Nebenläufigkeit
18 Hierarchische Modellierung in State Charts Rechtecke mit runden Kanten sind Zustände Pfeile sind Zustandsübergänge Hierarchie Schachtelung der Zustände Superzustand Zusätzliche Bedingung für Zustandsübergang Ereignis zum Auslösen des Zustandsübergangs D A α χ (K) β B Subzustand C δ XOR-Dekomposition von D (entweder in A oder in C)
19 Zustandsübergang in State Charts a ist ein Ereignis (elementar oder Verknüpfung von elementaren Ereignissen) P ist boolescher Ausdruck (besonderer Ausdruck ist in S). A ist eine Aktion: Externes Ereignis aus Sicht des Systems Internes Ereignis: Zuweisung eines Ausdrucks an eine Variable (die dann z.b. in einer Bedingung verwendet wird) S α (P) / A T
20 Nebenläufige Zustände Modellierung der Nebenläufigkeit durch AND-Dekomposition von Superzuständen (Ein Subzustand von A und ein Subzustand von D des Superzustandes Y ist aktiv) Y a ist Synchronisationsereignis (B,F) (C,G) unter a Anfangszustände bei Eintritt in Y A B D µ E α β (in G) χ δ F C G α
21 State Chart für Armbanduhr mit Stoppuhr und Alarm 4H Timer lr lr AM_PM ul ul Ii / change_item TIME UPDATE lr / update ur /light l l lr / start_stop ALARM l l ur ur lr lr l l ALARM_ON CHIME ul ul STOP WATCH ur / reset l l / change_item ALARM UPDATE lr / update ur / stop_bell
22 Entwurfsmethoden
23 Syntheseprobleme Systemsynthese Prozessorsynthese / Architektursynthese Verhalten System Prozessor Logik Logiksynthese Struktur Standardzellen Physisch
24 Typische Schritte Systemsynthese Profiling: Informationen über Operationen, Speicher- und Buszugriffe einzelner Prozesse sammeln Allokation von Prozessoren und Hardware Binden von Prozessen und Kommunikation an Prozessoren und Busse Ablaufplanung von Prozessen, die an denselben Prozessor gebunden sind Zusammensetzen aller allokierten Komponenten zum strukturorientierten Modell
25 Modell der Systemsynthese Spezifikation des Problems Spezifikation von Zielarchitekturen (Allokation von Prozessoren und Kommunikationseinheiten) RISC ASIC R A gemeinsam genutzter Bus (S) ASIC Punkt-zu-Punkt Verbindung (P) S A P Datenflussgraph (z.b. kommunizierende Prozesse) 4 Problemgraph Kommunikationsknoten Operationsknoten Proc Proc Punkt-zu-Punkt Verbindung (P) Zwei mögliche Zielarchitekturen P P P Architekturgraphen
26 Spezifikation Problemgraph Abbildungskanten Architekturgraphen R S A P P P A Weggelassen wurden die Abbildungskanten von Kommunikationsknoten zu Operatorknoten im Architekturgraph P Aktivierung aller verwendeten Knoten und Kanten Eine gültige Bindung muss folgende Eigenschaften haben: Alle Knoten und Kanten des Problemgraphen sind aktiviert Für jeden aktivierten Knoten im Problemgraphen ist genau eine Abbildungskante aktiviert. Jede aktivierte Abbildungskante beginnt und endet in einem aktivierten Knoten Für jede Kante (u,v) des Problemgraphen gilt: Entweder werden u und v auf denselben Knoten abgebildet oder zwischen den zwei Knoten, auf die u und v abgebildet sind, existiert eine Kante
27 Beispiel: Gültige Bindung R 5 A S 7 P A 4 P 6 P P
28 Modellierung der Kosten (5,) R Beschriftung der Abbildungskanten mit Tupeln, z.b.: (Kosten c, Latenz L, Leistungsverbrauch P) 5 A Bewertung mittels totale Kostenfunktion: Setzt voraus, dass Bindung vollständig vorliegt. S Vergleich gegebener Implementierungen möglich partielle Kostenfunktion: Bewertung unvollständiger Bindungen möglich 7 P dient der Abwägung im Entscheidungsprozess bei der Konstruktion einer Bindung A 4 P 6 P P Weggelassen wurden die Abbildungskanten von Kommunikationsknoten zu Operatorknoten im Architekturgraph
29 Anwendungsbeispiel Abbildung unabhängiger Prozesse auf homogenes Multiprozessorsystem: P 4 Problemgraph P BUS P P P 4 P Bus Prozessorsystem Spezifikationsgraph
30 Anwendungsbeispiel HW/SW-Partitionierung: Proz essor BUS ASIC
31 Simulated Annealing als Lösungsstrategie Ausgangspunkt ist eine gültige Bindung (z.b. zufallsbasiert bestimmt) t n sei eine monoton gegen 0 fallende Folge von Zeitschritten i := 0 In jedem Zeitschritt t i führe k-mal aus: Es sei a die aktuelle Bindung Erzeuge aus a eine neue Bindung b durch Mutation; z.b. durch ändern der Bindung einer Operation Falls Koste f(b) kleiner als f(a) sind, dann ist b die neue aktuelle Bindung Falls f(b) ³ f(a), dann wird b mit Wahrscheinlichkeit f() b f() a t die neue aktuelle Bindung. i := i + Solange t i kleiner als festgelegter Schwellwert, wiederhole ab Punkt 4 e i
32 Top-Down-Entwurfsablauf : Funktionale Beschreibung des Systems einschließlich Nebenläufigkeit ohne Zeitverhalten (z.b. kommunizierende Prozesse) : Beschreibung der Struktur des Systems bestehend aus Prozessoren und Verbindungsnetzwerken einschließlich geeigneter Protokolle mit erforderlichem Zeitverhalten : Beschreibung des Verhaltens der Prozessoren z.b. durch CFGs und DAGs 4: Aufbaus der Prozessoren aus System Struktur Verhalten Komponenten (Register, ALU, Bus) Prozessor 5 -> 6: Implementierung der Komponenten durch Logikgatter Logik 4 (Logiksynthese) 5 6 Standard- 7 zellen 8 7->8: Logikgatter werden auf Standardzellen/Transistoren abgebildet 9 8->9: Layout, Routing Physisch
33 Bottom-Up-Entwurfsablauf ->->: Erstellen von Standardzellen (Flip-Flops, NAND-, NOR-Gatter) einschließlich Layout aus Transistoren 4->5->6: Erstellen von RT-Komponenten (Register, ALU, ) beschrieben durch Boolesche Ausdrücke, Endliche Automaten aus Standardzellen 7->8->9: Beschreibung des Verhaltens der Prozessoren durch Programme, CFG, DAGs. Überführung Datenpfad- und Kontrollpfad-Struktur, bis hin zum Layout unter Verwendung der RT-Komponenten 0->->: Funktionale Beschreibung des Systemverhaltens, z.b. kommunizierende Prozesse. Überführung in Kommunikationsstruktur zwischen Prozessoren. Schließlich Layoutgenerierung unter Verwendung der bereits entworfenen Prozessoren Verhalten System 0 Prozessor Logik 7 8 Standardzellen Physisch Struktur
34 Meet-in-the-Middle Entwurfsablauf Top-Down-Entwurf auf höheren Abstraktionsebenen Bottom-Up-Entwurf auf niedrigeren Abstraktionsebenen Variante : Nutzung von RT-Komponenten aus Bibliothek Variante : Nutzung vorhandener Prozessoren Verhalten System Prozessor Logik 4 Standardzellen 4 5 Struktur Verhalten System Prozessor Logik 7 8 Standardzellen 4 5 Struktur 6 Physisch 6 9 Physisch
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
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
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,
MehrHardware/Software-Codesign
Hardware/Software-Codesign Kapitel 1 - Einführung M. Schölzel Entwicklungsgeschichte Job User User Ergebnis Mainframes / Großrechner Großrechner Desktops Sensoren Physisches System Prozessrechner Zuverlässigkeit
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
Mehr1. Einführung in Temporallogik CTL
1. Einführung in Temporallogik CTL Temporallogik dient dazu, Aussagen über Abläufe über die Zeit auszudrücken und zu beweisen. Zeit wird in den hier zunächst behandelten Logiken als diskret angenommen
Mehr3.0 VU Formale Modellierung
3.0 VU Formale Modellierung Gernot Salzer Arbeitsbereich Theoretische Informatik und Logik Institut für Computersprachen SS 2016 1 Inhalt 0. Überblick 1. Organisation 2. Was bedeutet Modellierung? 3. Aussagenlogik
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
MehrThomas Schirrmann Nebenläufigkeit. Nebenläufigkeit. Vortrag Thomas Schirrmann. Seminar Systementwurf Dozentin Daniela Weinberg
Nebenläufigkeit Vortrag Seminar Systementwurf Dozentin Daniela Weinberg 1 Gliederung 1. Einführung 2. Modellierung 2.1. POMSET 2.2. Transitionssystem 2.3. Petrinetz 2.4. abstraktes nebenläufiges Programm
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
Mehr5.2 Endliche Automaten
5.2 Endliche Automaten 129 5.1.6 Kippstufen Flip-Flops werden auch als bistabile Kippstufen bezeichnet. Bistabil meint, dass beide Kippwerte, also 0 und 1 stabil sind. Diese Bezeichnung legt nahe, dass
MehrAbkürzungen. Kapitel 1 - Einleitung Stand der Automobilelektronik Historische Entwicklung Gegenwärtige Probleme 2
Inhalt Abkürzungen X Kapitel 1 - Einleitung 1 1.1 Stand der Automobilelektronik 1 1.1.1 Historische Entwicklung 1 1.1.2 Gegenwärtige Probleme 2 1.2 Zielsetzung 5 1.3 Aufbau der Arbeit 6 1.4 Veröffentlichungen
MehrEinführung in die Informatik
Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle 24. November 28 Einführung in die Informatik Übung 7 Allgemeines Für die Abgabe der
MehrGrundlagen der Technischen Informatik. 13. Übung
Grundlagen der Technischen Informatik 13. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 13. Übungsblatt Themen Aufgabe 1: Aufgabe 2: Aufgabe 3: Aufgabe 4: Automaten VHDL VHDL VHDL 13.
MehrModellierung verteilter Systeme Grundlagen der Programm und Systementwicklung
Modellierung verteilter Systeme Grundlagen der Programm und Systementwicklung Wintersemester 2009/10 Prof. Dr. Dr. h.c. Manfred Broy Unter Mitarbeit von Dr. K. Spies, Dr. M. Spichkova, L. Heinemann, P.
MehrTheoretische Informatik. Berechenbarkeit
Theoretische Informatik Berechenbarkeit 1 Turing Maschine Endlicher Automat mit unendlichem Speicher Ein Modell eines realen Computers Was ein Computer berechnen kann, kann auch eine TM berechnen. Was
Mehr2.4.3 Zustandsgraphen
2.4.3 Zustandsgraphen Folie 2-1+45 Paradigma der Zustandsmodellierung Zustandsmodellierung betrachtet ein System als Zustandsautomaten beschreibt die Zerlegung in Zustände und Zustandsübergänge orientiert
Mehr2.4.3 Zustandsgraphen
2.4.3 Zustandsgraphen Folie 2-1+45 Paradigma der Zustandsmodellierung Zustandsmodellierung betrachtet ein System als Zustandsautomaten beschreibt die Zerlegung in Zustände und Zustandsübergänge orientiert
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
MehrEinführung: Zustandsdiagramme Stand:
Einführung: Zustandsdiagramme Stand: 01.06.2006 Josef Hübl (Triple-S GmbH) 1. Grundlagen Zustandsdiagramme Zustände, Ereignisse, Bedingungen, Aktionen 2. Verkürzte Darstellungen Pseudozustände 3. Hierarchische
MehrPartitionierung komplexer heterogener Systeme
Berichte aus der Elektrotechnik Thomas Hollstein Entwurf und interaktive Hardware-/Software- Partitionierung komplexer heterogener Systeme D17(Diss.TU Darmstadt) Shaker Verlag Aachen 2001 Inhaltsverzeichnis
MehrWarum Modellierung? OE-Vorlesung 2016 Einführung in Petrinetze. Was ist ein Modell? Und warum Petrinetze? Petrinetze sind ein Modellierungswerkzeug.
Warum Modellierung? OE-Vorlesung 016 Einführung in Petrinetze Dr. Lawrence Cabac cabac@informatik.uni-hamburg.de Folien: Dr. Frank Heitmann Fachbereich Informatik Universität Hamburg Petrinetze sind ein
MehrHw-Sw-Co-Design. Hw-Sw-CO-Design. embedded systems. Spezialprozessoren Prozessor, Compiler, Codegenerierung. Systementwurf
Zusammenfassung Hw-Sw-Co-Design Hw-Sw-CO-Design embedded systems Spezialprozessoren Prozessor, Compiler, Codegenerierung Systementwurf Systemsynthese, Partitionierung 1 Inhalt der Vorlesung Zielarchitekturen
MehrTeil III. Schaltnetze und ihre Optimierung
Teil III Schaltnetze und ihre Optimierung 1 Teil III.1 Schaltnetze 2 Beispiel 1 Schaltnetz für xor mit {+,, } x y x y 0 0 0 0 1 1 1 0 1 1 1 0 DNF: x y = xy + xy 3 Beispiel 2 xor mittels nand-verknüpfung;
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
MehrVHDL Synthese. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010
VHDL Synthese Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010 VHDL Synthese 1/36 2009-11-02 Inhalt Begriff Arten Kombinatorische
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:
MehrPetri-Netze / Eine Einführung (Teil 2)
Manuel Hertlein Seminar Systementwurf Lehrstuhl Theorie der Programmierung Wiederholung (1) Petri-Netz = bipartiter, gerichteter Graph Aufbau: Plätze (passive Komponenten) Transitionen (aktive Komponenten)
MehrVerlustleistungsreduzierung in Datenpfaden
Verlustleistungsreduzierung in Datenpfaden F. Grassert, F. Sill, D. Timmermann Inhalt Motivation Analyse der Ausgangssituation Verlustleistung in der Schaltungstechnik Selbstgetaktete dynamische Logiken
MehrALP I Turing-Maschine
ALP I Turing-Maschine Teil I WS 2012/2013 Äquivalenz vieler Berechnungsmodelle Alonzo Church λ-kalkül Kombinatorische Logik Alan Turing Turing-Maschine Mathematische Präzisierung Effektiv Berechenbare
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
MehrPetri-Netze / Eine Einführung
Manuel Hertlein Seminar Systementwurf Lehrstuhl Theorie der Programmierung Carl Adam Petri am 12. Juli 1926 in Leipzig geboren Studium der Mathematik 1962 Promotion zum Doktor der Naturwissenschaft Titel
MehrKapitel 4: Analyse von Petrinetzen
Kapitel 4: Analyse von Petrinetzen 1. Beispiele 2. Analyseansatz 3. Markierungsgraph 4. Beschränktheit 5. State Space Explosion: Beispiel 6. Komplementbildung 7. Zusammenhängend 8. Tot, lebendig, verklemmungsfrei
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
MehrModellierung von Geschäftsprozessen Teil 6 - Petri-Netze
FHTW Berlin FB4, Wirtschaftsmathematik Modellierung von Geschäftsprozessen Teil 6 - Petri-Netze Dr. Irina Stobbe, 2005-2008 Thema - Überblick Petri-Netze Petri-Netze Einführung Funktionsweise Definition
Mehr4.2.4 Reguläre Grammatiken
4.2.4 Reguläre Grammatiken Eine reguläre Grammatik ist eine kontextfreie Grammatik, deren Produktionsregeln weiter eingeschränkt sind Linksreguläre Grammatik: A w P gilt: w = ε oder w = Ba mit a T und
MehrHardware Praktikum 2008
HaPra 2008 - Versuchsreihe 5 - ALU Hardware Praktikum 2008 Prof. Dr. H.-J. Wunderlich Dipl.-Inf. M. Imhof Dipl.-Inf. S. Holst Agenda Die HaPra-CPU Eine kleine Übersicht VHDL Projekt-Organisation Entwurf
MehrGTI Bonus VHDL - EXTRA
1 GTI Bonus VHDL - EXTRA 2 Beschreibung Gegeben seien die Moore- (Abbildung 1) und Mealy-Automaten (Abbildung 2) der Armbanduhr aus Übungsblatt 11. 3 Beschreibung Gegeben seien die Moore- (Abbildung 1)
MehrTheoretische Informatik I
heoretische Informatik I Einheit 2 Endliche Automaten & Reguläre Sprachen. Deterministische endliche Automaten 2. Nichtdeterministische Automaten 3. Reguläre Ausdrücke 4. Grammatiken 5. Eigenschaften regulärer
MehrGrundlagen der Technische Informatik / Digitaltechnik (GTI/DT)
Klausur zur Vorlesung Grundlagen der Technische Informatik / Digitaltechnik (GTI/DT) Prof. Marco Platzner Fachgebiet Technische Informatik Universität Paderborn 25.3.2 Die Bearbeitungsdauer beträgt für
MehrProzessorarchitektur. Kapitel 1 - Wiederholung. M. Schölzel
Prozessorarchitektur Kapitel - Wiederholung M. Schölzel Wiederholung Kombinatorische Logik: Ausgaben hängen funktional von den Eingaben ab. x x 2 x 3 z z = f (x,,x n ) z 2 z m = f m (x,,x n ) Sequentielle
MehrMessage Sequence Charts, Live Sequence Charts
Message Sequence Charts, Live Sequence Charts SE Systementwurf WS 05/06 Evgeniya Ershova Message Sequence Charts, Live Sequence Charts 1 Gliederung Heute basic MSC s Message Sequence Graphs Hierarchical
Mehr2.6 Verdeutlichung verwendeter Begriffe
2.6 Verdeutlichung verwendeter Begriffe endlich/finit: die Mengen der Zustände und der Ein- bzw. Ausgabezeichen sind endlich synchron: die Ausgabezeichen erscheinen synchron mit dem Einlauf der Eingabezeichen
MehrEin ROM soll aus mehreren ROMs (vgl. Abbildung rechts: Enable-Leitung EN, Adressleitungen ADDR, Datenleitungen DATA) aufgebaut werden.
VU Technische Grundlagen der Informatik Übung 4: Schaltwerke 183.579, 2015W Übungsgruppen: Mo., 23.11. Mi., 25.11.2015 Aufgabe 1: ROM-Erweiterung Ein 256 64 ROM soll aus mehreren 128 16 ROMs (vgl. Abbildung
MehrRechnerstrukturen. Michael Engel und Peter Marwedel. Sommer TU Dortmund, Fakultät für Informatik
Rechnerstrukturen Michael Engel und Peter Marwedel TU Dortmund, Fakultät für Informatik Sommer 2014 Folien a. d. Basis von Materialien von Gernot Fink und Thomas Jansen 19. Mai 2014 1/43 1 Sequenzielle
Mehr1 Lineare Gleichungssysteme und Matrizen
1 Lineare Gleichungssysteme und Matrizen Das Studium linearer Gleichungssysteme und ihrer Lösungen ist eines der wichtigsten Themen der linearen Algebra. Wir werden zunächst einige grundlegende Begriffe
MehrTransaktionen. Michael Löwe 04/15/16. FHDW Hannover, Freundallee 15, Hannover address:
Transaktionen Michael Löwe 04/15/16 FHDW Hannover, Freundallee 15, 30173 Hannover E-mail address: michael.loewe@fhdw.de KAPITEL 1 Isolation 1.1. Formales Modell für Transaktionen und Ablaufpläne Zustand.
MehrDie mathematische Seite
Kellerautomaten In der ersten Vorlesung haben wir den endlichen Automaten kennengelernt. Mit diesem werden wir uns in der zweiten Vorlesung noch etwas eingängiger beschäftigen und bspw. Ansätze zur Konstruktion
MehrDigitalelektronik - Inhalt
Digitalelektronik - Inhalt Grundlagen Signale und Werte Rechenregeln, Verknüpfungsregeln Boolesche Algebra, Funktionsdarstellungen Codes Schaltungsentwurf Kombinatorik Sequentielle Schaltungen Entwurfswerkzeuge
MehrEinführung in die Theoretische Informatik
Technische Universität München Fakultät für Informatik Prof. Tobias Nipkow, Ph.D. Dr. Werner Meixner, Dr. Alexander Krauss Sommersemester 2010 Lösungsblatt 11 15. Juli 2010 Einführung in die Theoretische
MehrKlausur: Modellierung Prof. Dr. U. Kastens, Universität Paderborn Wintersemester 2000/ , 09:00 11:00 Uhr
Klausur: Modellierung Prof. Dr. U. Kastens, Universität Paderborn Wintersemester 2000/2001 05.09.2001, 09:00 11:00 Uhr Name: Matrikelnummer: Bitte genau durchlesen! Schreiben Sie zu Beginn der Klausur
MehrLexikalische Programmanalyse der Scanner
Der Scanner führt die lexikalische Analyse des Programms durch Er sammelt (scanned) Zeichen für Zeichen und baut logisch zusammengehörige Zeichenketten (Tokens) aus diesen Zeichen Zur formalen Beschreibung
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
MehrF Programmierbare Logikbausteine
1 Einordnung Ebene 6 Problemorientierte Sprache Ebene 5 Assemblersprache F Programmierbare Logikbausteine Ebene 4 Ebene 3 Ebene 2 Ebene 1 Betriebssystem ISA (Instruction Set Architecture) Mikroarchitektur
MehrSPI-Workbench: Modelle und Verfahren zur Synthese und Optimierung von Hardware/Software-Systemen aus SPI-Modellen
SPI-Workbench: Modelle und Verfahren zur Synthese und Optimierung von Hardware/Software-Systemen aus SPI-Modellen Prof. Dr.-Ing. J. Teich C. Grabbe, Ch. Haubelt, D. Koch Hardware-Software-Co-Design Universität
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?
MehrRechnerstrukturen. Michael Engel und Peter Marwedel WS 2013/14. TU Dortmund, Fakultät für Informatik
Rechnerstrukturen Michael Engel und Peter Marwedel TU Dortmund, Fakultät für Informatik WS 2013/14 Folien a. d. Basis von Materialien von Gernot Fink und Thomas Jansen 20. November 2013 1/48 1 Sequenzielle
MehrTeil IV. Schaltwerke
Teil IV Schaltwerke 1 Teil IV.1 Flip Flops 2 Bistabile Kippstufe Ziel: Speichere Ausgabe einer Schaltung. Ansatz: Leite Ausgabe wieder als Eingabe in die Schaltung. x t & Q Q = x + P t + t t t y t & P
Mehr2. Übung zu Software Engineering
2. Übung zu Software Engineering WS 2009/2010 Henning Heitkötter Projektplanung, Netzplantechnik AUFGABE 3 1 Aufgabenstellung Ausgangspunkt ist die Anforderungsermittlung, an die sich eine Durchführbarkeitsstudie
MehrGrundlagen der Programmentwurfstechnik Fundamentals of Software Engineering
Vorlesung 6 Fundamentals of Software Engineering Inhaltsverzeichnis 1. Einführung 2. Allgemeine Modellbildung 3. Strukturierte Analyse (SE) 5. Benutzersschnittstellen 6. Softwaretest 2 1 Inhaltsverzeichnis
MehrWS 2009/10. Diskrete Strukturen
WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910
MehrF Programmierbare Logikbausteine
1 Einordnung Ebene 6 Problemorientierte Sprache Ebene 5 Assemblersprache F Programmierbare Logikbausteine Ebene 4 Ebene 3 Ebene 2 Ebene 1 Betriebssystem ISA (Instruction Set Architecture) Mikroarchitektur
MehrEinführung in Petri-Netze. Modellierung von Abläufen und Prozessen (1) Abhängigkeitsgraphen: Motivation. Petri-Netze
Einführung in Petri-Netze Modellierung von Abläufen und Prozessen () Motivation Abhängigkeitsgraphen: A B 6 C 5 D Petri-Netze Markierungen Invarianten Credits: L. Priese, H. Wimmel: Petri-Netze, Theoretische
MehrMathematik für Informatiker I
Mathematik für Informatiker I Mitschrift zur Vorlesung vom 19.10.2004 In diesem Kurs geht es um Mathematik und um Informatik. Es gibt sehr verschiedene Definitionen, aber für mich ist Mathematik die Wissenschaft
MehrWeitere Verbesserungen
Weitere Verbesserungen Welcher Cache liefert aktuellen Block falls mehrere Caches Block im Zustand S halten? Lösung: Einführung eines weiteren Zustands O (Owner) Zustand O besagt: Eigentümer des Blocks
MehrTeil 1: Digitale Logik
Teil 1: Digitale Logik Inhalt: Boolesche Algebra kombinatorische Logik sequentielle Logik kurzer Exkurs technologische Grundlagen programmierbare logische Bausteine 1 Tri-State Ausgangslogik Ausgang eines
MehrKlausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)
Institut für Angewandte Informatik und Formale Beschreibungsverfahren 23.07.2012 Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten) Name: Vorname: Matr.-Nr.: Semester: (SS 2012)
MehrMotivation. Motivation
Vorlesung Modellierung nebenläufiger Systeme Sommersemester 2012 Universität Duisburg-Essen Was sind nebenläufige Systeme? Ganz allgemein: Systeme, bei denen mehrere Komponenten/Prozesse nebenläufig arbeiten
MehrCompiler: Einführung
Fakultät für Informatik und Mathematik Hochschule München Letzte Änderung: 10.05.2017 15:49 Inhaltsverzeichnis Ein Compiler................................... 2 Ein Compiler...................................
MehrLösung zur Klausur. Grundlagen der Theoretischen Informatik im WiSe 2003/2004
Lösung zur Klausur Grundlagen der Theoretischen Informatik im WiSe 2003/2004 1. Geben Sie einen deterministischen endlichen Automaten an, der die Sprache aller Wörter über dem Alphabet {0, 1} akzeptiert,
MehrSommersemester Analyse II: Verhalten (Zustandsautomaten)
Sommersemester 23 Analyse II: Verhalten (Zustandsautomaten) 8 Aufgabe 2 Analyse II: Verhalten (Zustandsautomaten) Umfang: 2 Wochen Punkte: P. Nachdem in der ersten Aufgabe die Systemstruktur mit Hilfe
MehrDiskrete Strukturen Kapitel 1: Einleitung
WS 2015/16 Diskrete Strukturen Kapitel 1: Einleitung Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15
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
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
MehrRechnerarchitektur. Lösungsvorschlag 6. Übung. Sommersemester Aufgabe: Zyklische Verschiebung
Rechnerarchitektur Lösungsvorschlag 6. Übung Sommersemester 2010 Fachgebiet Rechnerarchitektur Prof. R. Hoffmann Patrick Ediger 1. Aufgabe: Zyklische Verschiebung Gegeben sei eine Folge von n Variablen
MehrFormale Sprachen. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S
Formale Grundlagen (WIN) Franz Binder Institut für Algebra Johannes Kepler Universität Linz Vorlesung im 2008S http://www.algebra.uni-linz.ac.at/students/win/fg Inhalt Das Alphabet Σ sei eine endliche
MehrWas bisher geschah Modellierung von Daten durch Mengen Beziehungen (Zusammenhänge und Eigenschaften) durch Relationen, Graphen und Funktionen
Was bisher geschah Modellierung von Daten durch Mengen Beziehungen (Zusammenhänge und Eigenschaften) durch Relationen, Graphen und Funktionen Anforderungen durch Logiken Modellierung als algebraische Strukturen
MehrHardware/Software-Codesign
Hardware/Software-Codesign Kapitel 5: Hardwaresynthese M. Schölzel Zur Erinnerung Prozessoren, ASICs, ASIPs, Busse, Speicher, Software Hardware Programmiersprachen, Hardwarebeschreibungssprachen, DAGs,
Mehr(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl
Übung zur Vorlesung Grundlagen Betriebssysteme und Systemsoftware (Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de) http://www11.in.tum.de/veranstaltungen/grundlagenbetriebssystemeundsystemsoftwarews1112
MehrAnomalien und andere folk lores
Anomalien und andere folk lores Perlen der Weisheit Bernhard Schätz Denotationelle Semantiken Grundlagen: Scott sche Bereichstheorie zur LCF Ansatz: System als mathematisches Objekt (Ein/Ausgabe) Definierte
MehrComputertechnik 1. 4.3 Schaltwerke, Sequentielle Schaltungen. 4.3.2 Register. Register. Dr. Wolfgang Koch
omutertechnik r. Wolfgang Koch 4.3 Schaltwerke, Sequentielle Schaltungen Seicher, Register... : Frühere Eingaben (innere Zustände) sielen eine Rolle (werden geseichert) Friedrich Schiller University Jena
MehrVektor-Additions-Systeme und Invarianten
Vektor-Additions-Systeme und Invarianten http://www.informatik.uni-bremen.de/theorie/teach/petri Renate Klempien-Hinrichs Stellen- und Transitions-Vektoren T -Invarianten S-Invarianten Bezug zu erreichbaren
MehrInteraktionsdiagramme in UML
Interaktionsdiagramme in UML Interaktionsdiagramm ist ein Oberbegriff für eine Reihe von Diagrammen, die das Verhalten eines objektorientierten Systems durch Objektinteraktionen beschreiben Ein Sequenzdiagramm
MehrKlausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten)
Institut für Angewandte Informatik und Formale Beschreibungsverfahren 17.02.2014 Klausur über den Stoff der Vorlesung Grundlagen der Informatik II (90 Minuten) Name: Vorname: Matr.-Nr.: Semester: (WS 2013/14)
MehrFachbereich Medienproduktion
Fachbereich Medienproduktion Herzlich willkommen zur Vorlesung im Studienfach: Grundlagen der Informatik Themenübersicht Rechnertechnik und IT Sicherheit Grundlagen der Rechnertechnik Prozessorarchitekturen
Mehrc) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} c) {abcabc} d) {abcbc, abc, a} c) {aa, ab, ba, bb} d) {{aa}, {ab}, {ba}, {bb}}
2 Endliche Automaten Fragen 1. Was ergibt sich bei {a, bc} {de, fg}? a) {abc, defg} b) {abcde, abcfg} c) {abcde, abcfg, bcade, bcafg} d) {ade, afg, bcde, bcfg} 2. Was ergibt sich bei {abc, a} {bc, λ}?
MehrFD Informatik Mauch SSDL (WHRS) Reutlingen. Algorithmen
FD Informatik Mauch SSDL (WHRS) Reutlingen Algorithmen Überblick Definition Notwendigkeit Realisierung Grundkonzepte Umsetzung im Unterricht Algorithmus? Ein Algorithmus ist eine Verwaltungsvorschrift,
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
MehrPraktikum des modernen VLSI-Entwurfs
Praktikum des modernen VLSI-Entwurfs Eine Einführung in die Entwurfsprinzipien und -beschreibungen, unter besonderer Berücksichtigung von VHDL; mit einer umfangreichen Anleitung zum Praktikum Von Dipl.-Inf.
Mehr23.1 Constraint-Netze
Grundlagen der Künstlichen Intelligenz 1. April 2015 2. Constraint-Satisfaction-Probleme: Constraint-Netze Grundlagen der Künstlichen Intelligenz 2. Constraint-Satisfaction-Probleme: Constraint-Netze Malte
MehrGrundlagen der Programmentwurfstechnik Fundamentals of Software Engineering 1
Vorlesung 6 Fundamentals of Software Engineering 1 Sommersemester 2016 Inhaltsverzeichnis 1. Einführung 2. Allgemeine Modellbildung 3. Strukturierte Analyse (SE) 5. Benutzersschnittstellen 6. Softwaretest
MehrHochschule Emden / Leer. Ausarbeitung. Speicherung digitaler Signale
Hochschule Emden / Leer Ausarbeitung Thema: Speicherung digitaler Signale eingereicht von: Jens Fresenborg Inhaltsverzeichnis 1 Speicherung Digitaler Signale 1 2 Asynchrone Speicherelemente 1 2.1 RS-Flip-Flop
Mehr4. Alternative Temporallogiken
4. Alternative Temporallogiken Benutzung unterschiedlicher Temporallogiken entsprechend den verschiedenen Zeitbegriffen LTL: Linear Time Logic Ähnlich der CTL, aber jetzt einem linearen Zeitbegriff entspechend
MehrVerhaltensbeschreibung und Spezifikationssprachen
TECHNISCHE UNIVERSITÄT ILMENAU Integrierte Kommunikationssysteme http://www.tu-ilmenau.de/iks Verhaltensbeschreibung und Spezifikationssprachen Verhaltensmodelle Zustandsautomaten (FSM) Nicht-deterministische
MehrPaul Molitor und Jörg Ritter VHDL. Eine Einführung. ein Imprint von Pearson Education
Paul Molitor und Jörg Ritter VHDL Eine Einführung ein Imprint von Pearson Education München Boston San Francisco Harlow, England Don Mills, Ontario Sydney Mexico City Madrid Amsterdam Inhaltsverzeichnis
MehrTeil 1: Digitale Logik
Teil 1: Digitale Logik Inhalt: Boolesche Algebra kombinatorische Logik sequentielle Logik kurzer Exkurs technologische Grundlagen programmierbare logische Bausteine 1 Tri-State Ausgangslogik Ausgang eines
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
MehrKapitel 1 Parallele Modelle Wie rechnet man parallel?
PRAM- PRAM- DAG- R UND R Coles und Kapitel 1 Wie rechnet man parallel? Vorlesung Theorie Paralleler und Verteilter Systeme vom 11. April 2008 der Das DAG- Das PRAM- Das werkmodell Institut für Theoretische
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
Mehr