VHDL Simulation. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011

Größe: px
Ab Seite anzeigen:

Download "VHDL Simulation. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011"

Transkript

1 VHDL Simulation Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 VHDL Simulation 1/

2 Motivation Der Simulationsalgorithmus bestimmt wesentlich die Semantik von VHDL. Er soll daher im Folgenden etwas näher betrachtet werden. VHDL Simulation 2/

3 Ereignislisten Eigenschaften Gedachte bzw. simulatorinterne Liste von Paaren aus Signalwerten und Zeitpunkten, enthält alle zukünftigen Signalwechsel, verzögerte Signalzuweisungen werden an der entsprechenden Stelle eingetragen, bei der Simulation wird die Liste abgearbeitet und ggf. ergänzt. VHDL Simulation 3/

4 Ereignislisten (2) Beispiel sig_a <= 1 AFTER 2 ns, 0 AFTER 5 ns, 1 AFTER 10 ns, 1 AFTER 12 ns, 0 AFTER 15 ns, 1 AFTER 17 ns ; VHDL Simulation 4/

5 Ereignisse Terminologie Transaktion (transaction): Eintrag aus Wert und Zeitpunkt in einer Ereignisliste. Ereignis (event): Änderung eines Signalwertes zum gegebenen Zeitpunkt. aktiv (active): Ein Signal ist aktiv, wenn ihm gerade von einer Transaktion ein Wert zugewiesen wird. VHDL Simulation 5/

6 Verdrängung ( Preemption ) Eigenschaften bezeichnet das Entfernen von geplanten Transaktionen aus der Ereignisliste, wird bei jeder Signalzuweisung geprüft/durchgeführt, welche Transaktionen gelöscht werden, hängt vom Verzögerungsmodell ab: Transport-Modell, Inertial-Modell, Reject-Inertial-Modell. VHDL Simulation 6/

7 Transport-Modell Alle Transaktionen, die nicht früher als zum Zeitpunkt der neuen Transaktion auftreten, werden entfernt. Beispiel sig_a <= TRANSPORT 1 AFTER 11 ns; führt im obigen Beispiel zum Zeitpunkt 2 ns zu: VHDL Simulation 7/

8 Inertial-Modell Eigenschaften Ist das Default-Modell, es gilt folgende Regel: 1 markiere Transaktion unmittelbar vor dem neuen Eintrag, falls sie denselben Wert hat, 2 markiere aktuelle und neue Transaktion, 3 lösche alle nicht markierten, anschaulich: nur solche Impulse bleiben erhalten, die mindestens die angegebene Verzögerungszeit als Dauer haben. VHDL Simulation 8/

9 Inertial-Modell (2) Beispiel sig_a <= 1 AFTER 11 ns; führt im obigen Beispiel zum Zeitpunkt 2 ns zu: VHDL Simulation 9/

10 Reject-Inertial-Modell Eigenschaften Beispiel Erweitert das Inertial-Modell, es wird eine explizite Mindestdauer für Impulse angegeben. sig_a <= REJECT 2 ns INERTIAL sig_b AFTER 3 ns ; Alle Impulse von sig_b, die länger als 2 ns sind, werden um 3 ns verzögert an sig_a weitergegeben. VHDL Simulation 10/

11 Simulationsalgorithmus Die Simulation springt von Zeitpunkt zu Zeitpunkt, jeder Zeitpunkt besteht aus infinitesimal kurzen Schritten, die mit bezeichnet werden, durch die Unterscheidung von simulierter Realzeit und -Schritten kann die Nebenläufigkeit von VHDL recht leicht sequentialisiert werden. VHDL Simulation 11/

12 Simulationsalgorithmus (2) Zur Erinnerung... Transaktion (transaction): Paar aus Signalwert und Zeitpunkt, Ereignisliste Liste von Transaktionen, Ereignis (event): Änderung eines Signalwertes zum gegebenen Zeitpunkt. Aber: nicht jede Transaktion führt zu einem Ereignis! VHDL Simulation 12/

13 Simulationsalgorithmus (3) solange die Eventliste nicht leer ist gehe zum nächsten Zeitpunkt t mit eingetragenen Transaktionen now := t + 0Δ aktualisiere Signale für alle aktiven Prozesse arbeite Prozessrumpf bis zur nächsten Deaktivierung ab; vermerke dabei zeitlose Signaländerungen für den nächsten Δ-Schritt, zeitbehaftete an der passenden Stelle der Eventliste now := now + 1Δ bis keine Signaländerungen für dieses Δ mehr vorliegen VHDL Simulation 13/

14 Delta-Zyklus Einen Durchlauf von Prozess-Abarbeitung und Signal-Aktualisierung nennt man einen Delta-Zyklus. VHDL Simulation 14/

15 Aktive Prozesse Prozess-Zustandswechsel Sensitiv-Liste mit ohne Aktivierung Event auf sensitivem Signal WAIT kehrt zurück Deaktivierung Prozess-END wird erreicht nächstes WAIT VHDL Simulation 15/

16 Initialisierung Beginn der Simulation: Zeitpunkt 0 + 0, jeder Prozess wird bis zur ersten Deaktivierung ausgeführt, danach: Fortschreiten der -Zeit nach obigem Algorithmus. VHDL Simulation 16/

17 Nebenläufige Zuweisungen vs. Prozesse N.B. Nebenläufige Zuweisungen können immer durch äquivalente Prozesse ersetzt werden. Beispiel csa : sig_b <= 1, 0 AFTER 2 ns WHEN s e l = 1 ELSE 0, 1 AFTER 3 ns WHEN s e l = 2 ELSE Z ; VHDL Simulation 17/

18 Nebenläufige Zuweisungen vs. Prozesse (2) Beispiel (Forts.) csa : PROCESS ( s e l ) BEGIN IF s e l = 1 THEN sig_b <= 1, 0 AFTER 2 ns ; ELSIF s e l = 2 THEN sig_b <= 0, 1 AFTER 3 ns ; ELSE sig_b <= Z ; END IF ; END PROCESS; VHDL Simulation 18/

19 Signale vs. Variablen Wichtig! Zuweisungen an Signale und Variablen wirken zu unterschiedlichen Zeitpunkten: Variablen sofort, Signale erst bei der nächsten Aktualisierung, Reihenfolge der Abarbeitung gleichzeitig aktiver Prozesse nicht festgelegt. Variablen nicht über Prozessgrenzen hinaus verwenden! VHDL Simulation 19/

20 Signale vs. Variablen (2) Beispiel ARCHITECTURE arch OF example IS SIGNAL a, b : i n t e g e r := 0 ; BEGIN a <= 1 AFTER 1 ns, 2 AFTER 2 ns, 3 AFTER 3 ns ; PROCESS ( a ) VARIABLE c : i n t e g e r := 0 ; BEGIN b <= a + 2 ; c := 2 b ; END PROCESS; END arch ; VHDL Simulation 20/

VHDL Verhaltensmodellierung

VHDL Verhaltensmodellierung VHDL Verhaltensmodellierung Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2008/2009 VHDL Verhaltensmodellierung 1/26 2008-10-20

Mehr

VHDL Verhaltensmodellierung

VHDL Verhaltensmodellierung VHDL Verhaltensmodellierung Dr.-Ing. Volkmar Sieh Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2013 VHDL Verhaltensmodellierung 1/18 2013-01-11 Inhalt

Mehr

VHDL 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 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

Mehr

VHDL - Objekte und Typen

VHDL - Objekte und Typen VHDL - Objekte und Typen Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2007/2008 VHDL - Objekte und Typen 1/23 2007-08-24 Inhalt

Mehr

Entwurf digitaler Schaltungen Groÿe Übung 3 Simulation mit ghdl

Entwurf digitaler Schaltungen Groÿe Übung 3 Simulation mit ghdl Prof. G. Kemnitz, Dr. C. Giesemann Institut für Informatik, Technische Universität Clausthal7. Mai 20151/26 Entwurf digitaler Schaltungen Groÿe Übung 3 Simulation mit ghdl Prof. G. Kemnitz, Dr. C. Giesemann

Mehr

Praktikum Systementwurf mit VHDL HDL Design Lab

Praktikum Systementwurf mit VHDL HDL Design Lab Praktikum Systementwurf mit VHDL HDL Design Lab Inhalt Kryptographie - Aufgaben VHDL - Konzepte Beispiel: 16 bit XOR Kryptographie - Aufgaben Geheimhaltung Integrität Authentifizierung Verbindlichkeit

Mehr

Array-Zuweisungen. Array-Zuweisungen können über die Position, den Namen oder gemischt erfolgen.

Array-Zuweisungen. Array-Zuweisungen können über die Position, den Namen oder gemischt erfolgen. Array-Zuweisungen Array-Zuweisungen können über die Position, den Namen oder gemischt erfolgen. Ausschnitte (slices) werden über die Indizes gebildet. Mehrdimensionale Arrays Mehrdimensionale Arrays werden

Mehr

Einstellige binäre Addierschaltung (Addierer)

Einstellige binäre Addierschaltung (Addierer) VHDL Addierer 1 Einstellige binäre Addierschaltung (Addierer) Schnittstelle: Ports mit Modus IN bzw. OUT Signale Funktionsnetz: Ports, Funktionsblöcke, Verbindungen Signale für Ports und Verbindungen VHDL

Mehr

17 Zähler. Hochschule für Angewandte Wissenschaften Hamburg FACHBEREICH ELEKTROTECHNIK UND INFORMATIK DIGITALTECHNIK 17-1

17 Zähler. Hochschule für Angewandte Wissenschaften Hamburg FACHBEREICH ELEKTROTECHNIK UND INFORMATIK DIGITALTECHNIK 17-1 7 Zähler Zähler werden in digitalen Systemen sehr vielfältig eingesetzt: Z.B. zum Zählen von Ereignissen, zum Speichern der aktuellen Befehlsadresse eines Mikroprozessors oder zum Zählen von Zuständen

Mehr

Simulation von in VHDL beschriebenen Systemen

Simulation von in VHDL beschriebenen Systemen Simulation von in VHDL beschriebenen Systemen Prof. Dr. Paul Molitor Institut für Informatik Martin-Luther-Universität Halle Aufbau der Lehrveranstaltung Literaturangaben Allgemeines zum Entwurf digitaler

Mehr

Gliederung dieser Einführung in VHDL

Gliederung dieser Einführung in VHDL Gliederung dieser Einführung in VHDL 1) Formaler Aufbau von VHDL-Modellen 2) Testumgebungen VHDL-Modelle, die Eingangssignale zum Testen eines Modells bereitstellen 3) Zeitmodelle in VHDL Nachbildung des

Mehr

LOOP-Programme: Syntaktische Komponenten

LOOP-Programme: Syntaktische Komponenten LOOP-Programme: Syntaktische Komponenten LOOP-Programme bestehen aus folgenden Zeichen (syntaktischen Komponenten): Variablen: x 0 x 1 x 2... Konstanten: 0 1 2... Operationssymbole: + Trennsymbole: ; :=

Mehr

Übungen zu Architektur Eingebetteter Systeme. Teil 1: Grundlagen. Blatt 5 1.1: VHDL 28./29.05.2009

Übungen zu Architektur Eingebetteter Systeme. Teil 1: Grundlagen. Blatt 5 1.1: VHDL 28./29.05.2009 Übungen zu Architektur Eingebetteter Systeme Blatt 5 28./29.05.2009 Teil 1: Grundlagen 1.1: VHDL Bei der Erstellung Ihres Softcore-Prozessors mit Hilfe des SOPC Builder hatten Sie bereits erste Erfahrungen

Mehr

EHP Einführung Projekt A

EHP Einführung Projekt A Volker Dörsing EHP Einführung Projekt A email: doersing@uni-jena.de praktische Übung www: http://users.minet.uni-jena.de/~ehp-head Vorbereitung, Durchführung, Kolloquium Infos zur Veranstaltung, Versuchsanleitung

Mehr

Übungsblatt 8 Lösungen:

Übungsblatt 8 Lösungen: Übungsblatt 8 Lösungen: Aufgabe 71: VHDL Halbaddierer Schnittstellenbeschreibung und Modellbeschreibung(Verhaltensmodell) eines Halbaddierers: ENTITY halbaddierer IS GENERIC (delay: TIME := 10 ns); PORT

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 7 (21.5.2014) Binäre Suche, Hashtabellen I Algorithmen und Komplexität Abstrakte Datentypen : Dictionary Dictionary: (auch: Maps, assoziative

Mehr

Einführung in die technische Informatik

Einführung in die technische Informatik Einführung in die technische Informatik Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris VHDL VHDL Akronym für Very High-Speed Integrated Circuit Hardware Description Language

Mehr

Syntax von LOOP-Programmen

Syntax von LOOP-Programmen LOOP-Berechenbarkeit Syntax von LOOP-Programmen Definition LOOP-Programme bestehen aus: Variablen: x 0, x 1, x 2, x 3,... Konstanten: 0, 1, 2, 3,... Trennsymbolen:; und := Operationen: + und Befehlen:

Mehr

Outline Überblick VHDL/Verilog Designflow VHDL-Module Architektur-Beschreibungen Signale/Variablen. VHDL Einführung 1

Outline Überblick VHDL/Verilog Designflow VHDL-Module Architektur-Beschreibungen Signale/Variablen. VHDL Einführung 1 VHDL Einführung 1 Marc Reichenbach und Michael Schmidt Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/12 1 / 44 Gliederung Überblick zu VHDL Vergleich VHDL/Verilog Designflow Aufbau

Mehr

Outline Simulation Design-Richtlinien. VHDL Einführung 2. Marc Reichenbach. Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/14

Outline Simulation Design-Richtlinien. VHDL Einführung 2. Marc Reichenbach. Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/14 VHDL Einführung 2 Marc Reichenbach Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/14 1 / 37 Gliederung Simulation und Testbench Design-Richtlinien 2 / 37 Simulation und Testbench vor

Mehr

Signalzuweisungen können nebenläufig sein oder als sequentielle Anweisungen innerhalb von Prozessen, Funktionen oder Prozeduren stehen.

Signalzuweisungen können nebenläufig sein oder als sequentielle Anweisungen innerhalb von Prozessen, Funktionen oder Prozeduren stehen. 6 Verhaltensmodellierung 6.3 Signalzuweisungen und Verzögerungsmodelle Die wohl wichtigste Anweisung in VHDL ist die Zuweisung von neuen Werten an Signale. Signale dienen als Informationsträger innerhalb

Mehr

N. Schmiedel, J. Brass, M. Schubert VHDL Formelsammlung FH Regensburg, 01.12.2008. VHDL Formelsammlung

N. Schmiedel, J. Brass, M. Schubert VHDL Formelsammlung FH Regensburg, 01.12.2008. VHDL Formelsammlung VHDL Formelsammlung INHALTSVERZEICHNIS: 1 DATENOBJEKTE 2 1.1 SIGNAL: 2 1.2 VARIABLE: 2 1.3 CONSTANT 2 2 DATENTYPEN 2 2.1 selbstdefinierte Aufzähltypen (Deklaration) 3 2.2 Physikalische Datentypen 3 2.3

Mehr

Hardware Programmierbare Logik

Hardware Programmierbare Logik Hardware Programmierbare Logik Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2010/2011 Hardware Programmierbare Logik 1/23

Mehr

Theorie der Informatik

Theorie der Informatik Theorie der Informatik 8. Reguläre Sprachen II Malte Helmert Gabriele Röger Universität Basel 24. März 24 Pumping Lemma Pumping Lemma: Motivation Man kann zeigen, dass eine Sprache regulär ist, indem man

Mehr

SoC Design. Prof. Dr. Christophe Bobda Institut für Informatik Lehrstuhl für Technische Informatik

SoC Design. Prof. Dr. Christophe Bobda Institut für Informatik Lehrstuhl für Technische Informatik SoC Design Prof. Dr. Christophe Bobda Institut für Informatik Lehrstuhl für Technische Informatik VHDL Crashkurs Übersicht 1. Einführung 2. Sprachkonstrukte 3. Designflow Christophe Bobda 3 1. VHDL VHDL:

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Kontrollstrukturen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Kontrollstrukturen Wichtig: bedingte Ausführung

Mehr

Theoretische Informatik SS 03 Übung 3

Theoretische Informatik SS 03 Übung 3 Theoretische Informatik SS 03 Übung 3 Aufgabe 1 a) Sind die folgenden Funktionen f : partiell oder total: f(x, y) = x + y f(x, y) = x y f(x, y) = x y f(x, y) = x DIV y? Hierbei ist x DIV y = x y der ganzzahlige

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere

Mehr

Kapitel 10, VHDL, Teil 2. Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design. Grundlagen der Technischen Informatik

Kapitel 10, VHDL, Teil 2. Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design. Grundlagen der Technischen Informatik Grundlagen der Technischen Informatik Kapitel 10, VHDL, Teil 2 Prof. Dr.-Ing. Jürgen Teich Lehrstuhl für Hardware-Software-Co-Design VHDL Syntax und Semantik von VHDL Entwurf einer Verkehrsampelsteuerung

Mehr

Entwurf und Verifikation digitaler Systeme mit VHDL

Entwurf und Verifikation digitaler Systeme mit VHDL Entwurf und Verifikation digitaler Systeme mit VHDL Wolfgang Günther Infineon AG CL DAT DF LD V guenther@informatik.uni freiburg.de, wolfgang.guenther@infineon.com Dr. Wolfgang Günther Einleitung 2 Inhalt

Mehr

Use Case Schablonen: Eventmanager

Use Case Schablonen: Eventmanager Use Case Schablonen: Eventmanager Erweiterung: Künstler bewerten Kunde Künstler können bewertet werden. Ticket in Warenkorb legen Kunde Tickets für die Buchung zwischenspeichern. Stadt absagen, Veranstalter

Mehr

4.2 Die Behandlung diskreter Zeitaspekte unter Synchroniehypothese

4.2 Die Behandlung diskreter Zeitaspekte unter Synchroniehypothese Zeit in Prozeßalgebra Synchroniehypothese: Aktionen des Systems brauchen keine Zeit. Einbau einer diskreten Uhr. 1 Beispiel Doppelte Maus-Clicks Angenommen, wir wollen ein Programm schreiben, das doppelte

Mehr

Einführung in VHDL (2)

Einführung in VHDL (2) Einführung in VHDL Digitale Systeme haben immer größere Bedeutung erlangt. Komplexität wurde dabei immer größer, sodass die Entwicklung digitaler Systeme zu weiten Teilen nur noch mit Computerunterstützung

Mehr

LOOP-Programme: Syntaktische Komponenten

LOOP-Programme: Syntaktische Komponenten LOOP-Programme: Syntaktische Komponenten LOOP-Programme bestehen aus folgenden Zeichen (syntaktischen Komponenten): Variablen: x 0 x 1 x 2... Konstanten: 0 1 2... Operationssymbole: + Trennsymbole: ; :=

Mehr

3. Anweisungen und Kontrollstrukturen

3. Anweisungen und Kontrollstrukturen 3. Kontrollstrukturen Anweisungen und Blöcke 3. Anweisungen und Kontrollstrukturen Mit Kontrollstrukturen können wir den Ablauf eines Programmes beeinflussen, z.b. ob oder in welcher Reihenfolge Anweisungen

Mehr

Theoretische Informatik SS 03 Übung 5

Theoretische Informatik SS 03 Übung 5 Theoretische Informatik SS 03 Übung 5 Aufgabe 1 Im Buch von Schöning ist auf S. 106-108 beschrieben, wie eine Turing-Maschine durch ein GOTO-Programm simuliert werden kann. Zeigen Sie, wie dabei die Anweisungen

Mehr

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn

Ideen und Konzepte der Informatik. Programme und Algorithmen Kurt Mehlhorn Ideen und Konzepte der Informatik Programme und Algorithmen Kurt Mehlhorn November 2016 Algorithmen und Programme Algorithmus = Schritt-für-Schritt Vorschrift zur Lösung eines Problems. Formuliert man

Mehr

Architecture Body Funktionale Beschreibung einer "Design Entity" - * beschreibt die Funktion auf Verhaltens-, Struktur- oder Datenfluss-Ebene

Architecture Body Funktionale Beschreibung einer Design Entity - * beschreibt die Funktion auf Verhaltens-, Struktur- oder Datenfluss-Ebene 5.3.1 VHDL-Beschreibung Device A Design Entity A Entity Declaration Interface Delclaration Architecture Body Functional Definition Entity Declaration - Abstraktions eines Designs * repräsentiert ein komplettes

Mehr

Universität des Saarlandes

Universität des Saarlandes Universität des Saarlandes FR 6.2 Informatik Prof. Dr. Kurt Mehlhorn WiSe 2015/2016 Übungen zu Ideen der Informatik http://www.mpi-inf.mpg.de/departments/algorithms-complexity/teaching/winter15/ideen/

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,

Mehr

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen

Mehr

2. Einführung in VHDL

2. Einführung in VHDL 2. Einführung in VHDL Programm für heute: Motivation für eine Hardwarebeschreibungssprache Aufbau einer VHDL-Beschreibung Signale Zuweisungen Wertebereich Schnittstellen Entity und Architecture Hardwareanalogie

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 05: Weitere Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme 1. Teil: Weitere Kontrollstrukturen Wiederholungsstrukturen (Schleifen) While-,do-,for-Schleifen

Mehr

3. Grundanweisungen in Java

3. Grundanweisungen in Java 3. Grundanweisungen in Java Die Grundanweisungen entsprechen den Prinzipien der strukturierten Programmierung 1. Zuweisung 2. Verzweigungen 3. Wiederholungen 4. Anweisungsfolge (Sequenz) Die Anweisungen

Mehr

Dialognetze. Ziel : Beschreibung von Methoden und Beschreibungstechniken für den Entwurf und die Dokumentation von Dialogabläufen

Dialognetze. Ziel : Beschreibung von Methoden und Beschreibungstechniken für den Entwurf und die Dokumentation von Dialogabläufen Dialognetze Ziel : Beschreibung von Methoden und Beschreibungstechniken für den Entwurf und die Dokumentation von Dialogabläufen Dialogabläufe auf Fensterebene "grobe Dialogabläufe" d.h. Wechsel zwischen

Mehr

Zeon PDF Driver Trial

Zeon PDF Driver Trial FPGA Praktikum WS2000/2001 1.Woche: Organisation Synthetisierbares VHDL 1. Organisation des Praktikums Das Praktikum Zuordnung: 4 SWS PT3 (P5, P6) Treffen: Mittwochs, 14:00 c.t. Raum 308 Georg-Voigt-Straße

Mehr

3. Übungsblatt zu Algorithmen I im SoSe 2017

3. Übungsblatt zu Algorithmen I im SoSe 2017 Karlsruher Institut für Technologie Prof. Dr. Jörn Müller-Quade Institut für Theoretische Informatik Björn Kaidel, Sebastian Schlag, Sascha Witt 3. Übungsblatt zu Algorithmen I im SoSe 2017 http://crypto.iti.kit.edu/index.php?id=799

Mehr

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben

Grundlagen der Theoretischen Informatik Musterlösungen zu ausgewählten Übungsaufgaben Dieses Dokument soll mehr dazu dienen, Beispiele für die formal korrekt mathematische Bearbeitung von Aufgaben zu liefern, als konkrete Hinweise auf typische Klausuraufgaben zu liefern. Die hier gezeigten

Mehr

Programmierkurs Python I

Programmierkurs Python I Programmierkurs Python I Michaela Regneri & Stefan Thater Universität des Saarlandes FR 4.7 Allgemeine Linguistik (Computerlinguistik) Winter 2010/11 Übersicht Kurze Wiederholung: while Sammeltypen (kurz

Mehr

Konflikte. Konflikt-Äquivalenz von Read/Write-Plänen, Konflikt-Serialisierbarkeit

Konflikte. Konflikt-Äquivalenz von Read/Write-Plänen, Konflikt-Serialisierbarkeit Konflikte Zwei Transaktionen liegen im Konflikt, wenn sie ein Objekt o gemeinsam nutzen, wobei mindestens eine der Transaktionen in o schreibt. Für eine Menge von Transaktionen T kann man nun alle Konflikte

Mehr

Perzeptronen. Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg

Perzeptronen. Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg Perzeptronen Lehrstuhl für Künstliche Intelligenz Institut für Informatik Friedrich-Alexander-Universität Erlangen-Nürnberg (Lehrstuhl Informatik 8) Perzeptronen 1 / 22 Gliederung 1 Schwellwert-Logik (MCCULLOCH-PITTS-Neuron)

Mehr

1. Beschreibung der Aufgabe

1. Beschreibung der Aufgabe c ^ ` e e l ` e p ` e r i b m c l o w e b f j d b p q ^ i q r k d e l ` e p ` e r i b c o q b ` e k f h r k a t f o q p ` e ^ c q c ^ ` e e l ` e p ` e r i b m c l o w e b f j d b p q ^ i q r k d e l `

Mehr

Beispiellösung zu den Übungen Datenstrukturen und Algorithmen SS 2008 Blatt 5

Beispiellösung zu den Übungen Datenstrukturen und Algorithmen SS 2008 Blatt 5 Robert Elsässer Paderborn, den 15. Mai 2008 u.v.a. Beispiellösung zu den Übungen Datenstrukturen und Algorithmen SS 2008 Blatt 5 AUFGABE 1 (6 Punkte): Nehmen wir an, Anfang bezeichne in einer normalen

Mehr

Theoretische Informatik SS 03 Übung 4

Theoretische Informatik SS 03 Übung 4 Fakten aus Übung 3 Theoretische Informatik SS 03 Übung 4 In Übung 3 wurden einigen Fakten bewiesen, die für diese Übung benötigt werden. Folgende Konstrukte können mit LOOP-Programmen simuliert werden:

Mehr

Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009

Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 9.1: Dinatos-Algorithmus-Analyse Die folgenden Verilog-Zeilen

Mehr

C- Kurs 04 Anweisungen

C- Kurs 04 Anweisungen C- Kurs 04 Anweisungen Dipl.- Inf. Jörn Hoffmann jhoffmann@informa@k.uni- leipzig.de Universität Leipzig Ins@tut für Informa@k Technische Informa@k Ausdrücke Institut für Informatik Anweisungen C-Programm

Mehr

Field Programmable Gate Array (FPGA) Complex Programmable Logic Devices (CPLD)

Field Programmable Gate Array (FPGA) Complex Programmable Logic Devices (CPLD) Field Programmable Gate Array (FPGA) Complex Programmable Logic Devices (CPLD) 1 FPGA Design Flow 2 1. Einleitung 2. Grundlegende Strukturelemente 3. Syntax 4. Synthesefähiger VHDL-Code 5. Zusammenfassung

Mehr

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Kontrollstrukturen

Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer. Programmiertechnik Kontrollstrukturen Prof. Dr. Oliver Haase Karl Martin Kern Achim Bitzer Programmiertechnik Kontrollstrukturen Was sind Kontrollstrukturen Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 12.01.2012 INSTITUT FÜR THEORETISCHE 0 KIT 12.01.2012 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der Informatik

Mehr

Praktische Informatik I WS 1999/2000

Praktische Informatik I WS 1999/2000 Universität Mannheim Lehrstuhl für Praktische Informatik IV Prof. Dr. W. Effelsberg Christoph Kuhmünch, Gerald Kühne Praktische Informatik I WS 999/2 Übungsblatt 2 Ausgabe: Mi, 26.. Abgabe: Di,.2., 8 Uhr

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten Operatoren, Ausdrücke und Anweisungen Kontrollstrukturen (Steuerfluss)

Mehr

Einführung - Parser. Was ist ein Parser?

Einführung - Parser. Was ist ein Parser? Gliederung 1. Einleitung 1.1 Was ist ein Parser? 1.2 Was ist ein tabellengesteuerter TD-Parser? 1. Tabellengesteuerter TD-Parser 2.1 Funktionsweise 2.2 Darstellung als Pseudocode 2.3 Konstruktion von prädiktiven

Mehr

16 Latches und Flipflops (Bistabile Kippstufen)

16 Latches und Flipflops (Bistabile Kippstufen) 6 Latches und Flipflops (Bistabile Kippstufen) Latches und Flipflops dienen als Speicherelemente in sequentiellen Schaltungen. Latches werden durch Pegel gesteuert (Zustandssteuerung). Bei der VHDL-Synthese

Mehr

Webbasierte Programmierung

Webbasierte Programmierung Webbasierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der HTML5-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 6: JavaScript Kontrollstrukturen Verzweigungen Einseitig, zweiseitig,

Mehr

2.4 Schleifen. Schleifen unterscheiden sich hinsichtlich des Zeitpunktes der Prüfung der Abbruchbedingung:

2.4 Schleifen. Schleifen unterscheiden sich hinsichtlich des Zeitpunktes der Prüfung der Abbruchbedingung: 2.4 Schleifen Schleifen beschreiben die Wiederholung einer Anweisung bzw. eines Blocks von Anweisungen (dem Schleifenrumpf) bis eine bestimmte Bedingung (die Abbruchbedingung) eintritt. Schleifen unterscheiden

Mehr

Softwaretechnik. Kapitel 11 : Zustandsdiagramme. Statecharts / State Machines Historisches. State Machines in UML Verwendung in OO

Softwaretechnik. Kapitel 11 : Zustandsdiagramme. Statecharts / State Machines Historisches. State Machines in UML Verwendung in OO Statecharts / Historisches Softwaretechnik Kapitel 11 : Zustandsdiagramme Kurt Stenzel, Hella Seebach Statecharts entstanden als Verallgemeinerung von Automaten Beschreibung von Zustandsübergangsystemen

Mehr

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: VBA Programmierung mit Excel Schleifen 1/6 Erweiterung der Aufgabe Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen: Es müssen also 11 (B L) x 35 = 385 Zellen berücksichtigt

Mehr

Inhaltsverzeichnis. 4.1 Systemmodell und notwendige Bedingungen. 4.2 Gegenmaßnahmen

Inhaltsverzeichnis. 4.1 Systemmodell und notwendige Bedingungen. 4.2 Gegenmaßnahmen Inhaltsverzeichnis 4.1 Systemmodell und notwendige Bedingungen Was sind Deadlocks? Darstellungsarten von Prozessabhängigkeiten Notwendige Bedingungen für Deadlocks 4.2 Gegenmaßnahmen Deadlock-Prevention

Mehr

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13)

Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) Berlin, 21. Februar 2013 Name:... Matr.-Nr.:... Klausur Informatik-Propädeutikum (Niedermeier/Hartung/Nichterlein, Wintersemester 2012/13) 1 2 3 4 5 6 7 8 9 Σ Bearbeitungszeit: 90 min. max. Punktezahl:

Mehr

Elementare Konzepte von

Elementare Konzepte von Elementare Konzepte von Programmiersprachen Teil 2: Anweisungen (Statements) Kapitel 6.3 bis 6.7 in Küchlin/Weber: Einführung in die Informatik Anweisungen (statements) in Java Berechnung (expression statement)

Mehr

Aufgaben und Lösungen

Aufgaben und Lösungen Aufgaben und Lösungen Aufgabe 2.1 Das folgende Schaltbild soll in eine VHDL-Verhaltensbeschreibung übertragen werden. Lösung 2.1 Jedes Schaltbild aus logischen Grundelementen kann in eine logische Gleichung

Mehr

15. Elementare Graphalgorithmen

15. Elementare Graphalgorithmen Graphen sind eine der wichtigste Modellierungskonzepte der Informatik Graphalgorithmen bilden die Grundlage vieler Algorithmen in der Praxis Zunächst kurze Wiederholung von Graphen. Dann Darstellungen

Mehr

PROGRAMMIERUNG IN JAVA

PROGRAMMIERUNG IN JAVA PROGRAMMIERUNG IN JAVA ZUWEISUNGEN (1) Deklaration nennt man die Ankündigung eines Platzhalters (Variablen) und Initialisierung die erste Wertvergabe bzw. die konkrete Erstellung des Platzhalters. In einem

Mehr

R a i n e r N i e u w e n h u i z e n K a p e l l e n s t r G r e v e n T e l / F a x / e

R a i n e r N i e u w e n h u i z e n K a p e l l e n s t r G r e v e n T e l / F a x / e R a i n e r N i e u w e n h u i z e n K a p e l l e n s t r. 5 4 8 6 2 8 G r e v e n T e l. 0 2 5 7 1 / 9 5 2 6 1 0 F a x. 0 2 5 7 1 / 9 5 2 6 1 2 e - m a i l r a i n e r. n i e u w e n h u i z e n @ c

Mehr

F r e i t a g, 3. J u n i

F r e i t a g, 3. J u n i F r e i t a g, 3. J u n i 2 0 1 1 L i n u x w i r d 2 0 J a h r e a l t H o l l a, i c h d a c h t e d i e L i n u x - L e u t e s i n d e i n w e n i g v e r n ü n f t i g, a b e r j e t z t g i b t e

Mehr

Programmiertechnik Kontrollstrukturen

Programmiertechnik Kontrollstrukturen Programmiertechnik Kontrollstrukturen Prof. Dr. Oliver Haase Oliver Haase Hochschule Konstanz 1 Was sind Kontrollstrukturen? Kontrollstrukturen erlauben es, ein Programm nicht nur Zeile für Zeile auszuführen,

Mehr

Vorlesung Programmieren

Vorlesung Programmieren Vorlesung Programmieren 3. Kontrollstrukturen 04.11.2015 Prof. Dr. Ralf H. Reussner Version 1.1 LEHRSTUHL FÜR SOFTWARE-DESIGN UND QUALITÄT (SDQ) INSTITUT FÜR PROGRAMMSTRUKTUREN UND DATENORGANISATION (IPD),

Mehr

Grundlagen der Rechnerarchitektur

Grundlagen der Rechnerarchitektur Grundlagen der Rechnerarchitektur Speicher Übersicht Speicherhierarchie Cache Grundlagen Verbessern der Cache Performance Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 2 Speicherhierarchie

Mehr

Lösungsvorschlag 2. Übung Technische Grundlagen der Informatik II Sommersemester 2009

Lösungsvorschlag 2. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Fachgebiet Rechnerarchitektur Fachbereich Informatik Aufgabe 2.1: Zähler Lösungsvorschlag 2. Übung Technische Grundlagen der Informatik II Sommersemester 2009 a) Beschreiben Sie einen 4-Bit-Zähler in Verilog

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 13 (18.6.2014) Binäre Suchbäume IV (Rot Schwarz Bäume) Algorithmen und Komplexität Rot Schwarz Bäume Ziel: Binäre Suchbäume, welche immer

Mehr

Übung 7: VHDL Automaten

Übung 7: VHDL Automaten Übung 7: VHDL Automaten Aufgabe 1 Zustandsdiagramm Erkennen. (a) Analysieren Sie den unteren Code und zeichnen Sie die entsprechenden Zustands- und RTL- Diagramme. (b) Identifizieren Sie den getakteten

Mehr

Einführung in VHDL. Dipl.-Ing. Franz Wolf

Einführung in VHDL. Dipl.-Ing. Franz Wolf Einführung in VHDL Literatur Digital Design and Modeling with VHDL and Synthesis Kou-Chuan Chang Wiley-IEEE Computer Society Press ISBN 0818677163 Rechnergestützter Entwurf digitaler Schaltungen Günter

Mehr

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration

Algorithmen & Programmierung. Steuerstrukturen im Detail Selektion und Iteration Algorithmen & Programmierung Steuerstrukturen im Detail Selektion und Iteration Selektion Selektion Vollständige einfache Selektion Wir kennen schon eine Möglichkeit, Selektionen in C zu formulieren: if

Mehr

INTERVALLBÄUME. Tanja Lehenauer, Besart Sylejmani

INTERVALLBÄUME. Tanja Lehenauer, Besart Sylejmani INTERVALLBÄUME Tanja Lehenauer, Besart Sylejmani Datenstrukturen in der Informatik Baumstrukturen Warum Intervallbäume? Centered Interval Tree Konstruktion Suchen eines Punktes Suchen eines Intervalls

Mehr

Eine blinkende LED mit Xilinx ISE 13: das Hello World! der Hardware.

Eine blinkende LED mit Xilinx ISE 13: das Hello World! der Hardware. Tutorial Xilinx ISE13 Lothar Miller 12/2011 Seite 1 Eine blinkende LED mit Xilinx ISE 13: das Hello World! der Hardware. Das hier ist eine Schritt-für-Schritt Anleitung, in der gezeigt wird, wie mit Xilinx

Mehr

OpenMP - Threading- Spracherweiterung für C/C++ Matthias Klein, Michael Pötz Systemprogrammierung 15. Juni 2009

OpenMP - Threading- Spracherweiterung für C/C++ Matthias Klein, Michael Pötz Systemprogrammierung 15. Juni 2009 - Threading- Spracherweiterung für C/C++ Matthias Klein, Michael Pötz Systemprogrammierung 15. Juni 2009 Grundlagen der Parallelen Programmierung Hardware Threads vs. Prozesse Kritische Abschnitte Lange

Mehr

Hardware Praktikum 2008

Hardware 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

Mehr

Grafische Benutzeroberfläche mit Glade und Python

Grafische Benutzeroberfläche mit Glade und Python Grafische Benutzeroberfläche mit Glade und Python Grundsätzliches Die grafische Benutzeroberfläche (GUI) wird getrennt von dem Programm erstellt und gespeichert. Zu dieser GUI-Datei wird ein passendes

Mehr

Einführung in die Programmierung Wintersemester 2011/12

Einführung in die Programmierung Wintersemester 2011/12 Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Kontrollstrukturen Inhalt Wiederholungen - while

Mehr

Programmieren in Haskell. Stefan Janssen. Strukturelle Rekursion. Universität Bielefeld AG Praktische Informatik. 10.

Programmieren in Haskell. Stefan Janssen. Strukturelle Rekursion. Universität Bielefeld AG Praktische Informatik. 10. Universität Bielefeld AG Praktische Informatik 10. Dezember 2014 Wiederholung: Schema: f :: [σ] -> τ f [] = e 1 f (a : as) = e 2 where s = f as wobei e 1 und e 2 Ausdrücke vom Typ τ sind und e 2 die Variablen

Mehr

3. Prozesse in VHDL 1

3. Prozesse in VHDL 1 3. Prozesse in VHDL 1 entity VOLLADDIERER is port( A, B, CIN: in std_logic; S, COUT: out std_logic; end VOLLADDIERER; architecture VERHALTEN of VOLLADDIERER is VA: process(a, B, CIN) variable TEMP_IN:

Mehr

Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt

Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt AMPEL-Steuerung(en) Die Beschreibung und Programmierung der Ampel (vor allem Ampel_5) können sehr kompliziert

Mehr

22. Algorithmus der Woche Partnerschaftsvermittlung Drum prüfe, wer sich ewig bindet

22. Algorithmus der Woche Partnerschaftsvermittlung Drum prüfe, wer sich ewig bindet 22. Algorithmus der Woche Partnerschaftsvermittlung Drum prüfe, wer sich ewig bindet Autor Volker Claus, Universität Stuttgart Volker Diekert, Universität Stuttgart Holger Petersen, Universität Stuttgart

Mehr

Netzlaufwerk-Verbindung auf den Server se-1ug w2k.makro.privat. im Computerraum für die Daten der Chemikaliendatenbank

Netzlaufwerk-Verbindung auf den Server se-1ug w2k.makro.privat. im Computerraum für die Daten der Chemikaliendatenbank Netzlaufwerk-Verbindung auf den Server se-1ug-01008-05.w2k.makro.privat im Computerraum für die Daten der Chemikaliendatenbank Verwendung nur für geschäftliche Belange, ablegen oder Missbrauch durch private

Mehr

13. Binäre Suchbäume

13. Binäre Suchbäume 1. Binäre Suchbäume Binäre Suchbäume realiesieren Wörterbücher. Sie unterstützen die Operationen 1. Einfügen (Insert) 2. Entfernen (Delete). Suchen (Search) 4. Maximum/Minimum-Suche 5. Vorgänger (Predecessor),

Mehr

Laborübung 4. Zustandsautomaten (Finite State Machines)

Laborübung 4. Zustandsautomaten (Finite State Machines) Laborübung 4 Zustandsautomaten (Finite State Machines) Für den Entwurf und die Beschreibung von digitalen Systemen bilden Zustandsautomaten (Finite State Maschines; FSMs) eine wesentliche Grundlage. Mit

Mehr

Einige Beispiele zur Turingmaschine

Einige Beispiele zur Turingmaschine Einige Beispiele zur Turingmaschine Beispiel 1: Addition von 1 zu einer Dualzahl Aufgabe: Auf dem Eingabe-Band einer Turingmaschine steht eine Dualzahl (= Binärzahl, bestehend aus 0-en und 1-en, links

Mehr

Übungsblatt 2 - Lösung

Übungsblatt 2 - Lösung Institut für Theoretische Informatik Lehrstuhl Prof. Dr. D. Wagner Übungsblatt 2 - Lösung Vorlesung Algorithmentechnik im WS 08/09 Ausgabe 04. November 2008 Abgabe 8. November, 5:0 Uhr (im Kasten vor Zimmer

Mehr

Simulation und weiterführende Simulationstechniken

Simulation und weiterführende Simulationstechniken Simulation und weiterführende Simulationstechniken Marc Reichenbach und Michael Schmidt Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/12 1 / 48 Gliederung Einführung Allgemeiner Simulations-Workflow

Mehr