1.1 VHDL-Beschreibung

Größe: px
Ab Seite anzeigen:

Download "1.1 VHDL-Beschreibung"

Transkript

1 1 Grundlegende Konzepte in VHDL 1.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 System, ein Board, einen Chip, eine Funktion oder ein logisches Gatter * besteht aus der Beschreibung von I/Os und evtl. Parametern Architecture Body Funktionale Beschreibung einer "Design Entity" - * beschreibt die Funktion auf Verhaltens-, Struktur- oder Datenfluss-Ebene 9

2 Beispiel: 4 Bit Komparator Kommentar von "--" bis Zeilenende VHDL-Schlüsselworte (Fettbuchstaben) -- Komp4; Äquivalenz entity Komp4 is port (a, b: in bit_vector (3 downto 0); equ: out bit); -- "High" bei Gleichheit end Komp4; Deklaration der Ein-/Ausgänge (in / out) Typ: Vektor (links ist msb) architecture datenfluss of Komp4 is begin equ <= '1' when (a = b) else '0'; end datenfluss Zeilenende: " ; " Signal Assignment (bedingt) 10

3 1.2 Entity entity entity_identifier is [generic (generic_interface_list);] [port (port_interface_list);] end entity_identifier Die Schnittstellensignale (port_interface_list)=: port_identifier {,...} : [mode] subtype_indication [:= expression] dabei sind: "mode": in das Signal kann nur gelesen werden out es kann nur geschrieben werden inout es kann sowohl gelesen als auch geschrieben werden buffer ähnlich wie "out", kann auch innerhalb einer Architektur gelesen werden "subtype_identication": Typ des Signals "expression": ein optionaler Ausdruck, der den Defaultwert des Signals definiert 11

4 Folgende Standard-Datentypen sind definiert: BOOLEAN: true / false BIT: '0' / '1' INTEGER: bis REAL: -1E38 bis +1E38 CHARACTER: a, b, c,... TIME: femtosec und Umrechnungsfaktoren bis Minuten SEVERITY LEVEL: note, warning, error, failure (weitere in Bibliotheken z.b.: std_logic_1164 in Standard-Bibliothek "ieee") Beispiele: entity and2 is port (e1,e2: in BIT := '0'; s: out BIT); end and2; entity speicher is port (daten: in INTEGER :=0; adressen: in INTEGER; takt: in BIT) end and2; 12

5 1.2.2 Generic-Parameter (generic_interface_list)=: gen_identifier {,...} : subtype_indication [:= expression] Mit Hilfe von Generic-Parametern können Komponenten parametrisiert werden Beispiel: entity and2 is generic (default: BIT := '0'); port (e1,e2: in BIT := default; s: out BIT); end and2; 13

6 1.3 Architecture Innerhalb der "Architecture" einer Komponentenbeschreibung wird die Funktion der Komponente beschrieben. architecture arch_identifier of entity_name is begin -- Dekarationsbereich -- Funktions- und Strukturbeschreibung end arch_identifier; Im Deklarationsbereich können nur in der "Architektur" sichtbare Objekte (z.b.: Signale, Konstante, Typen,...) deklariert werden. Nach dem Schlüsselwort "begin" folgt die eigentliche Beschreibung des Verhaltens mit Hilfe von sogenannten "concurrent statements". 14

7 Unterschiedliche Beschreibungsmöglichkeiten! Beispiel: NOR-Gate ENTITY nor_gate IS PORT (a,b: IN BIT; c: OUT BIT); END nor_gate; ARCHITECTURE dflow OF nor_gate IS - - Deklarationsbereich BEGIN - - Conditional Signal Assignment Statement c <= '1' WHEN a = '0' AND b = '0' ELSE '0' WHEN a = '0' AND b = '1' ELSE '0' WHEN a = '1' AND b = '0' ELSE '0' WHEN a = '1' AND b = '1' ELSE '0'; - - beliebige Zahl von WHEN-ELSE Kombinationen möglich - - allerdings muss das letzte Statement ein "ELSE" mit - - anschließendem Signalzustand sein END dflow; ENTITY nor_gate IS PORT (a,b: IN BIT; c: OUT BIT); END nor_gate; ARCHITECTURE dflow2 OF nor_gate IS BEGIN c <= a NOR b; END dflow2; 15

8 1.3.1 Verknüpfung mehrerer Funktionen durch Signale Beispielschaltung: Eine Änderung von z.b. "b" wirkt sich auf den Ausgang "out_1" und auf interne Signal "int" aus! Definition des internen Signals "int" in der Declarative Region der Architecture (MODE ist automatisch INOUT): SIGNAL signal_name : TYPE [:= initial_value]; (Damit lassen sich der Ausgang von "NAND2" und der Eingang von "XOR2" verbinden) VHDL-Modell der Beispielschaltung: ENTITY beispielsch IS PORT (a,b: IN BIT; out_1: OUT BIT); END beispielsch; ARCHITECTURE schaltung OF beispielsch IS SIGNAL int: BIT; BEGIN int <= a NAND b; out_1 <= int XOR b; END schaltung; 16

9 1.3.2 Concurrent Execution... ARCHITECTURE schaltung OF beispielsch IS SIGNAL int: BIT; BEGIN out_1 <= int XOR b; int <= a NAND b; END schaltung; VHDL-Simulation "gleichzeitige" Abarbeitung durch "virtuelle Verzögerung" ( Reihenfolge der Signalzuweisungen ist nicht relevant) Signalzuweisung erst nach Zeit Dt Iterative Abarbeitung (bei einer Signaländerung z.b. von "b" aus "schaltung" von "beispielschaltung" erfolgt die Änderung von "b" erst nach einer Zeit "Dt"; dieser "Event" führt zu einer erneuten Zuweisung von "int" und damit auch von "out_1") Ablauf des "Beispielcodes" Zeit a b out_1 int Dt *Dt

10 1.4 Signale Signaldeklaration Signale können bei der Portdefinition in der "ENTITY" deklariert werden oder innerhalb der "Architecture" (im Deklarationsbereich, innerhalb von Prozessen,...). Wenn Signale innerhalb der "Architecture" deklariert sind, sind auch nur "beschränkt" gültig bzw. sichtbar (d.h. innerhalb der "Architecture" bzw. bestimmten Bereichen) Deklaration: signal sig_identifier {,...} : subtype_indication [:= expression]; Beispiel: signal wert: INTEGER := 16-4; signal daten bitvector (31 downto 0); signal daten2 bitvector ((breite-1) downto 0); -- breite mit "generic" definiert Signalzuweisung Die Zuweisung erfolgt durch "<=" sig_name <= waveform; 18

11 1.4.3 Zeitabhängige Zuweisungen (nur für Verhaltensbeschreibung) c<= a NOR b AFTER x ns Bei einer Signalzuweisung nimmt der Ausgang nach einem "Event" (Änderung des Zustandes eines Einganges) erst nach x ns einen neuen Zustand an; "Spikes" kürzer als x ns werden unterdrückt c<= TRANSPORT a NOR b AFTER x ns Auch Änderungen, die kürzer als x ns sind, wirken sich auf den Ausgang aus Bedingte Signalzuweisung sig_name <= waveform when bool_expression else {waveform when bool_expression else} waveform; Je nach dem Wert von "bool_expression" wird entschieden, welcher "waveform-ausdruck" dem Signal "sig_name" zugewiesen wird. Es kann in jedem Fall ein Wert zugewiesen werden, weil der "letzte Wert" nicht an eine Bedingung geknüpft ist. 19

12 1.4.5 Selektierte Signalzuweisung with expression select sig_name <= { waveform when choices,} waveform when choices; In Abhängigkeit von dem aktuellen Wert von "expression" kann eine bestimmte Zuweisung erfolgen. ACHTUNG: Es müssen alle Möglichkeiten zugeordnet werden können! Mit dem Schlüsselwort others können alle noch nicht definierten Möglichkeiten abgedeckt werden. Beispiel: entity alu is port (a,b, sel: in INTEGER; q: out INTEGER), end alu; architecture behave of alu is begin with sel select q <= a + b when 0, a b when 1, a * b when 2, a when others; end behave; 20

13 1.5 Datentypen Für die Modellierung auf Gatterebene sind z.b. die VHDL-Definitionen "bit" bzw. "bit_vector" mit den Werten '0' und '1' nicht ausreichend, weil damit z.b. keine Kurzschlüsse, keine undefinierten Zustände,... simuliert werden können. Daher wurden weitere Datentypen in dem IEEE Standard 1164 definiert, z.b.: Datentyp std_ulogic 'U' Uninitialized 'X' Forcing Unknown '0' Forcing 0 '1' Forcing 1 'Z' High Impedance 'W' Weak Unknown 'L' Weak 0 'H' Weak 1 '-' Don t Care Reihe von Funktionen wie Busdefinitionen Operatoren Auflösungsfunktionen etc. Einbinden der Bibliothek in VHDL- Code: LIBRARY ieee; USE ieee.std_logic1164.all; 21

14 1.6 Operatoren VHDL unterscheidet 7 Klassen von Operatoren (nicht für alle Datentypen definiert "Operator Overloading" ist möglich) logical AND OR NAND NOR XOR XNOR relational = /= < <= > >= shift SLL SRL SLA SRA ROL ROR adding + - & sign + - multiply * / MOD REM misc ** ABS NOT 10

15 1.7 Prozesse Mit Hilfe von Prozessen kann in VHDL auf effektive Weise das Verhalten komplexer Schaltungen beschrieben werden. Innerhalb eines Prozesskörpers werden die Anweisungen dabei sequentiell ausgeführt (wie in herkömmlichen Programmiersprachen). [process_label:] process [(sensitivity_list)] Deklarationen (keine Signale!) begin Sequentielle Statements; end process [process_label]; sensitivity_list: Reihe von Signalen, die bei einer Änderung jeweils die Ausführung des Prozesses starten Sequentialle Statements: Statements, die, im Gegensatz zu "Concurrent Statements" nicht gleichzeitig, sondern nacheinander ausgeführt werden. Prozessausführung: Der Prozess wird in den Zustand "aktiv" (d.h. die sequentiellen Anweisungen werden durchgeführt) versetzt, wenn ein Ereignis (Event) bei einem Signal aus der "Sensitivity_List" (d.h. eine echte Signaländerung) oder bei einem von der WAIT-Anweisung spezifizierten Signalen stattgefunden hat. Die Signalzuweisungen (nicht Variablenzuweisungen) erfolgen immer erst am Ende des Prozessablaufes! 11

16 1.7.1 Variable Im Deklarationsteil einer Prozessdefinition können Variable definiert werden. Diese Variablen sind nur innerhalb eines Prozesses gültig. Variablenzuweisungen werden sofort durchgeführt (im Gegensatz zu Signalzuweisungen diese werden erst am Ende des Prozesses durchgeführt und damit ist immer nur die letzte Zuweisung wirksam). Mit Variablen können Zwischenergebnisse bis zum nächsten Prozessdurchlauf gespeichert werden. Mit Signalen können Informationen zwischen verschiedenen Prozessen ausgetauscht werden. Initialisierung wird von FPGA-Express Variablendeklaration (s. auch Signaldeklaration): nicht unterstützt!! variable var_identifier {,...} : subtype_indication [:= expression]; Variablenzuweisung Signalzuweisung var_name = expression; sig_name <= expression; 12

17 1.7.2 Sequentielle Anweisungen Innerhalb von Prozessen (und auch in Unterprogrammen) können sequentielle Anweisungen zur Implementierung von Algorithmen verwendet werden Die WAIT-Anweisungen WAIT-Anweisungen dienen zur Synchronisation von Prozessen. WAIT [ON list] [UNTIL condition] [FOR time]; Beispiele: WAIT; - - wartet endlos WAIT ON a; - - wartet auf "Event a" WAIT ON b FOR 100 ns; - - wartet 100ns auf "Event b" WAIT UNTIL a = '1' FOR 50 ns; ns Periode und a = '1' WAIT ON b UNTIL (a = '1') FOR 100 ns; - - wenn a=1, ns Periode, asynchrone Triggerung durch "Event b" Bei der Synthese gibt es je nach Synthese-Tool unterschiedliche Einschränkungen. FPGA-Express unterstützt nur "WAIT UNTIL condition" (nicht FOR...) z.b.: wait until sig_a = '1'; wait until clk'event and clk = '1'; -- warten auf positive Flanke von Signal clk 13

18 Die CASE-Anweisung (vgl. switch/case in C bzw. SELECT von Concurrent-Anweisungen) case <Kontrollausdruck> is when <Testausdruck_1> => {<Sequentielle Anweisungen>;} when <Testausdruck_1> => {<Sequentielle Anweisungen>;}... [when others {<Sequentielle Anweisungen>;} end case; Beispiel eines Multipexers: ARCHITECTURE case_arch OF mux_3 IS BEGIN PROCESS (in_a, in_b, sel) CASE sel IS WHEN '0' => output <= in_a; WHEN '1' => output <= in_b; WHEN OTHERS => output <= 'X'; END CASE; END PROCESS; END case_arch; Das "CASE-Statement" muss vollständig auflösbar sein, d.h. jedem möglichen Zustand muss eine Aktion zugewiesen werden! 14

19 Die if-anweisung IF <Bedingung_1> THEN {<Sequentielle Anweisungen>;} [ELSIF <Bedingung_2> THEN {<Sequentielle Anweisungen>;} ELSIF...;] [ELSE {<Sequentielle Anweisungen>;}] END IF; Beispiel: NAND-Gatter LIBRARY ieee; USE ieee.std_logic_1164.all; ENTITY alg_nand IS PORT (in_a, in_b : IN std_logic; c : OUT std_logic); END alg_nand; AFTER wird nicht von Synthese-Tools unterstützt!! ARCHITECTURE algorithm OF alg_nand IS BEGIN PROCESS (in_a, in_b) BEGIN IF in_a = '1' AND in_b = '1' THEN c <= '0' AFTER 15ns; ELSIF in_a = '0' OR in_b = '0' THEN c <= '1' after 15ns; ELSE c <= 'X' AFTER 15ns; END IF; END PROCESS; END algorithm; 15

20 16

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

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

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

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

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

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

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

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

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

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

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

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

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

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

1 Hardwareentwurf. 1.1 Grundlagen

1 Hardwareentwurf. 1.1 Grundlagen 1 Hardwareentwurf 1.1 Grundlagen POSITIVE natürliche Zahlen N NATURAL N 0 INTEGER ganze Zahlen Z REAL reelle Zahlen R BOOLEAN (true, false), (low, high) BIT ( 0, 1 ) CHARACTER (..., A, B,..., a, b,...,

Mehr

VHDL-Synthese digitaler Systeme Lösungen zu den Übungsaufgaben

VHDL-Synthese digitaler Systeme Lösungen zu den Übungsaufgaben VHDL-Synthese digitaler Systeme Lösungen zu den Übungsaufgaben Aufgabe 1 -- Aufgabe 1 -- 8 zu 1 Decoder entity DECODER1X8 is port( S: in bit_vector(2 downto 0); Y: out bit_vector(7 downto 0)); end DECODER1X8;

Mehr

1 Grundlagen von VHDL

1 Grundlagen von VHDL TI 2 - Zusammenfassung 1 1 Grundlagen von VHDL entity Die entity deklariert die externe Schnittstelle. Es werden die elektrischen Signale (PORTS) und die zahlenmäßigen (GENERICS) Signale beschrieben. Jeder

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

Ü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

VHDL-Syntax F. Schubert 09/08. Prof. Dr. F. Schubert. Hochschule für Angewandte Wissenschaften Hamburg VHDL-SYNTAX. 09/2008 Sbr

VHDL-Syntax F. Schubert 09/08. Prof. Dr. F. Schubert. Hochschule für Angewandte Wissenschaften Hamburg VHDL-SYNTAX. 09/2008 Sbr Prof. Dr. F. Schubert Hochschule für Angewandte Wissenschaften Hamburg VHDL-SYNTAX 09/2008 Sbr Erläuterungen: Groß geschrieben: Selbstdefinierte Namen z.b. VADD, CARRY_IN, TD Klein geschrieben und fett

Mehr

Einführung in VHDL. 1 ARCHITECTURE Tauschen OF B e i s p i e l IS. 2 SIGNAL a, b : STD_LOGIC; 4 BEGIN. 5 PROCESS( a, b ) 6 BEGIN.

Einführung in VHDL. 1 ARCHITECTURE Tauschen OF B e i s p i e l IS. 2 SIGNAL a, b : STD_LOGIC; 4 BEGIN. 5 PROCESS( a, b ) 6 BEGIN. 2 Einführung in VHDL Wie bereits in der Einleitung erwähnt ist VHDL eine Hardwarebeschreibungssprache, die sich im Gegensatz zu Softwaresprachen dadurch auszeichnet, dass Abarbeitungen paralell ablaufen

Mehr

Name: DT2 Klausur Bitte achten Sie auf eine saubere Form. Nicht leserliches kann nicht bewertet werden.

Name: DT2 Klausur Bitte achten Sie auf eine saubere Form. Nicht leserliches kann nicht bewertet werden. Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 90 min. Name nicht vergessen! Geben Sie alle Blätter ab. Erlaubte Hilfsmittel sind Taschenrechner und Zusammenfassungen. Nicht erlaubt ist

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

Entwurf digitaler Systeme mit VHDL-1076

Entwurf digitaler Systeme mit VHDL-1076 Entwurf digitaler Systeme mit VHDL1076 Vorlesung aus dem Grundstudium für Studierende der Fachrichtung Informatik Diplom Zielsetzung Wie werden digitale Schaltungen entworfen? Erlernen einer Hardwarebeschreibungssprache

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

Übersicht. Prof. Dr. B. Lang, HS Osnabrück Konstruktion digitaler Komponenten, 3. Hierarchischer und generischer VHDL-Entwurf - 1 -

Übersicht. Prof. Dr. B. Lang, HS Osnabrück Konstruktion digitaler Komponenten, 3. Hierarchischer und generischer VHDL-Entwurf - 1 - Übersicht 1. Einführung 2. VHDL-Vertiefung 3. Hierarchischer und generischer VHDL-Entwurf 4. Grundstrukturen digitaler Schaltungen 5. Zielarchitekturen 6. Synthese 7. Soft-Prozessoren 8. Ausgewählte Beispiele

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

Entwurf und Simulation einfacher Logikelemente

Entwurf und Simulation einfacher Logikelemente Entwurf und Simulation einfacher Logikelemente Philipp Fischer 10. Dezember 2002 1 Inhaltsverzeichnis I Theoretische Grundlagen 3 Einleitung 3 Entwurf einer Schaltung 3 Entitys und Architectures.........................

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

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

Technische Grundlagen der Informatik Kapitel 3. Prof. Dr. Sorin A. Huss Fachbereich Informatik TU Darmstadt

Technische Grundlagen der Informatik Kapitel 3. Prof. Dr. Sorin A. Huss Fachbereich Informatik TU Darmstadt Technische Grundlagen der Informatik Kapitel 3 Prof. Dr. Sorin A. Huss Fachbereich Informatik TU Darmstadt Kapitel 3: Themen Hardware-Beschreibungssprachen Syntax von VHDL Simulation Synthese Testrahmen

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

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

Name: DT2 Klausur 06.05.08. Bitte achten Sie auf eine saubere Form. Nicht leserliches kann nicht bewertet werden.

Name: DT2 Klausur 06.05.08. Bitte achten Sie auf eine saubere Form. Nicht leserliches kann nicht bewertet werden. Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 90 min. Name nicht vergessen! Geben Sie alle Blätter ab. Erlaubte Hilfsmittel sind Taschenrechner und Zusammenfassungen. Nicht erlaubt ist

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

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

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

Outline Schieberegister Multiplexer Barrel-Shifter Zähler Addierer. Rechenschaltungen 1. Marc Reichenbach

Outline Schieberegister Multiplexer Barrel-Shifter Zähler Addierer. Rechenschaltungen 1. Marc Reichenbach Rechenschaltungen 1 Marc Reichenbach Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 06/14 1 / 32 Gliederung Schieberegister Multiplexer Barrel-Shifter Zähler Addierer 2 / 32 Schieberegister

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

Welche Informatik-Kenntnisse bringen Sie mit?

Welche Informatik-Kenntnisse bringen Sie mit? Welche Informatik-Kenntnisse bringen Sie mit? So gehen Sie vor! Lösen Sie die Aufgaben der Reihe nach von 1 bis 20, ohne das Lösungsblatt zur Hilfe zu nehmen. Der Schwierigkeitsgrad der Aufgaben nimmt

Mehr

5.2 Endliche Automaten

5.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

Mehr

Praktikum Rechnerarchitektur. Seite 1 Prof. Dr.-Ing. Ulrich Schmidt 2011 Praktikum Rechnerarchitektur

Praktikum Rechnerarchitektur. Seite 1 Prof. Dr.-Ing. Ulrich Schmidt 2011 Praktikum Rechnerarchitektur Praktikum Rechnerarchitektur Seite Prof. Dr.-Ing. Ulrich Schmidt 2 Praktikum Rechnerarchitektur Praktikum Rechnerarchitektur Inhalt Literatur Field Programmable Gate Array (FPGA) DE Development and Evaluation

Mehr

Hardware/Software Co-Design

Hardware/Software Co-Design Hardware/Software Co-Design Kapitel : Logiksynthese und VHDL-Einführung Mario Schölzel Geschichte von VHDL VHDL = VHSIC Hardware Description Language VHSIC = Very-High Speed Integrated Circuits Entwickelt

Mehr

EXCEL VBA Cheat Sheet

EXCEL VBA Cheat Sheet Variable Declaration Dim As Array Declaration (Unidimensional) Dim () As Dim ( To ) As

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

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

Mehr

VHDL Syntax V1.0. F. Wolf

VHDL Syntax V1.0. F. Wolf VHDL Syntax V1.0 Graz, Februar 2002 Inhaltsverzeichnis 1 Einführung 3 2 Kurze Beschreibung der Design-Einheiten 4 2.1 Schnittstellenbeschreibung (Entity) 4 2.2 Architektur (Architecture) 5 2.3 Konfiguration

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

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr

Einführung in den HDL- gestützten Schaltungsentwurf Einführung in VHDL

Einführung in den HDL- gestützten Schaltungsentwurf Einführung in VHDL Einführung in den HDLgestützten Schaltungsentwurf Einführung in VHDL Ablauf des Entwurfs Spezifikation golden specification Funktionale Simulation Testbench Logiksynthese Gate-Level Simulation Formale

Mehr

VHDL Simulation. in ORCAD

VHDL Simulation. in ORCAD VHDL Simulation in ORCAD V1.0 Graz, Jänner 2002 Inhaltsverzeichnis 1 Einleitung 1 1.1 Simulation und Verifikation 2 1.2 Entwurfsqualität 2 1.3 Begriffe in der Elektronik und ihre Äquivalenz zu VHDL 3 1.4

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

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

Mehr

Tutorium für Fortgeschrittene

Tutorium für Fortgeschrittene Tutorium für Fortgeschrittene Stroop Aufgabe: Die Farbe gesehener Wörter ist zu klassifizieren. Es gibt 4 Farben (rot, blau, gelb, grün) In Eprime: red, blue, yellow and green. Jeder Farbe ist einer Taste

Mehr

Klausur zur Vorlesung

Klausur zur Vorlesung Prof. Dr. Franz J. Rammig Paderborn, 2..2001 C. Böke Klausur zur Vorlesung "Grundlagen der technischen Informatik" und "Grundlagen der Rechnerarchitektur" Sommersemester 2001 1. Teil: GTI Der erste Teil

Mehr

Systembeschreibung und Entwurf

Systembeschreibung und Entwurf Systembeschreibung und Entwurf Systemspezifikation mit Hardwarebeschreibungssprachen Bernhard Hoppe Thomas Schumann Hochschule Darmstadt University of Applied Sciences Inhaltsverzeichnis Inhaltsverzeichnis

Mehr

2. Praktische Übung zur Vorlesung Grundlagen der Technischen Informatik. Entwurf eines digitalen Weckers

2. Praktische Übung zur Vorlesung Grundlagen der Technischen Informatik. Entwurf eines digitalen Weckers Friedrich-Alexander-Universität Erlangen-Nürnberg Informatik 12 Am Weichselgarten 3 91058 Erlangen 2. Praktische Übung zur Vorlesung Grundlagen der Technischen Informatik Entwurf eines digitalen Weckers

Mehr

Einführung in die Programmierung mit VBA

Einführung in die Programmierung mit VBA Einführung in die Programmierung mit VBA Vorlesung vom 07. November 2016 Birger Krägelin Inhalt Vom Algorithmus zum Programm Programmiersprachen Programmieren mit VBA in Excel Datentypen und Variablen

Mehr

Programmieren I. Kapitel 5. Kontrollfluss

Programmieren I. Kapitel 5. Kontrollfluss Programmieren I Kapitel 5. Kontrollfluss Kapitel 5: Kontrollfluss Ziel: Komplexere Berechnungen im Methodenrumpf Ausdrücke und Anweisungen Fallunterscheidungen (if, switch) Wiederholte Ausführung (for,

Mehr

VHDL. D. Neuhäuser, G. Grune (W. Koch) Einleitung. Entity. Architecture. Sequenziell Strukturell. Packages

VHDL. D. Neuhäuser, G. Grune (W. Koch) Einleitung. Entity. Architecture. Sequenziell Strukturell. Packages Beschreibung von Rechensystemen auf 6 Ebenen Algorithmische Ebene spezifiziert den Algorithmus zur Lösung eines Entwurfsproblems Dezember 2012 PMS-Ebene (Processor, Memory, Switch) beschreibt Rechner grob

Mehr

FPGA: Pseudo Random Generator (PRNG) von Prof. Dr.-Ing. Dirk Rabe

FPGA: Pseudo Random Generator (PRNG) von Prof. Dr.-Ing. Dirk Rabe Praktikum Digitaltechnik FPGA: Pseudo Random Generator (PRNG) von Prof. Dr.-Ing. Dirk Rabe Gruppe: Teilnehmer: Vortestat: Testat: Benutzte Geräte: 1 1 Einleitung und Überblick 1 Einleitung und Überblick

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

1.4.12 Sin-Funktion vgl. Cos-Funktion

1.4.12 Sin-Funktion vgl. Cos-Funktion .4. Sgn-Funktion Informatik. Semester 36 36.4.2 Sin-Funktion vgl. Cos-Funktion Informatik. Semester 37 37 .4.3 Sqr-Funktion Informatik. Semester 38 38.4.4 Tan-Funktion Informatik. Semester 39 39 .5 Konstanten

Mehr

Informationsverarbeitung auf Bitebene

Informationsverarbeitung auf Bitebene Informationsverarbeitung auf Bitebene Dr. Christian Herta 5. November 2005 Einführung in die Informatik - Informationsverarbeitung auf Bitebene Dr. Christian Herta Grundlagen der Informationverarbeitung

Mehr

RO-Tutorien 3 / 6 / 12

RO-Tutorien 3 / 6 / 12 RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Praktikum Grundlagen von Hardwaresystemen Wintersemester 2013/2014. Versuch 1: VHDL-Grundlagen

Praktikum Grundlagen von Hardwaresystemen Wintersemester 2013/2014. Versuch 1: VHDL-Grundlagen Praktikum Grundlagen von Hardwaresystemen Wintersemester 2013/2014 Versuch 1: VHDL-Grundlagen 15. Oktober 2013 Fachbereich 12: Informatik und Mathematik Institut für Informatik Professur für Eingebettete

Mehr

Imperative vs. Funktionale Programmierung

Imperative vs. Funktionale Programmierung Beispiel: Entwerfe eine Funktion, die testet, ob eine Zahl n eine Primzahl ist oder nicht. Beobachtung: (1) Wenn n Primzahl ist, ist die Menge der Teiler von n leer. (2) Die Menge der Teiler von n sind

Mehr

Kontrollstrukturen, Pseudocode und Modulo-Rechnung

Kontrollstrukturen, Pseudocode und Modulo-Rechnung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 29.10.2012 CoMa-Übung III (TU Berlin) Kontrollstrukturen, Pseudocode und Modulo-Rechnung 29.10.2012 1 / 1 Themen der Übung 1

Mehr

Digitales Hardwaredesign mit VHDL und FPGAs

Digitales Hardwaredesign mit VHDL und FPGAs TAE Technische Akademie Esslingen Ihr Partner für Weiterbildung seit 60 Jahren! In Zusammenarbeit mit dem VDE-Bezirksverein Württemberg e.v. (VDE) Maschinenbau, Produktion und Fahrzeugtechnik Tribologie

Mehr

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme

zu große Programme (Bildschirmseite!) zerlegen in (weitgehend) unabhängige Einheiten: Unterprogramme Bisher Datentypen: einfach Zahlen, Wahrheitswerte, Zeichenketten zusammengesetzt Arrays (Felder) zur Verwaltung mehrerer zusammengehörender Daten desselben Datentypes eindimensional, mehrdimensional, Array-Grenzen

Mehr

Algorithmen & Programmierung. Ausdrücke & Operatoren (1)

Algorithmen & Programmierung. Ausdrücke & Operatoren (1) Algorithmen & Programmierung Ausdrücke & Operatoren (1) Ausdrücke Was ist ein Ausdruck? Literal Variable Funktionsaufruf Ausdruck, der durch Anwendung eines einstelligen (unären) Operators auf einen Ausdruck

Mehr

C.3 Funktionen und Prozeduren

C.3 Funktionen und Prozeduren C3 - Funktionen und Prozeduren Funktionsdeklarationen in Pascal auch in Pascal kann man selbstdefinierte Funktionen einführen: Funktionen und Prozeduren THEN sign:= 0 Funktion zur Bestimmung des Vorzeichens

Mehr

Praktikum DST FPGA 5.Termin Projekterstellung & Simulation

Praktikum DST FPGA 5.Termin Projekterstellung & Simulation Praktikum DST (FPGA Teil) 5. Termin 29.11.2016 Praktikum DST FPGA 5.Termin Projekterstellung & Simulation Inhalt Praktikum DST FPGA 5.Termin Projekterstellung & Simulation... 1 1. Erstellung eines Projektes....

Mehr

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung

Korn-Shell: Einführung in Shellscripte 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung 1. Übersicht: Einführung - 2. Die Kornshell im Detail - 3.Grundlagen der Programmierung 1. Übersicht und Einführung 1.1 Die Shell allgemein 1.2 Die korn-shell 1.3 Der Weg zum ersten Skript 1.4 Nutzen und

Mehr

1. Beschreibung der Aufgabe

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

Mehr

Erfahrungen mit VHDL-AMS bei der Simulation heterogener Systeme

Erfahrungen mit VHDL-AMS bei der Simulation heterogener Systeme Erfahrungen mit VHDL-AMS bei der Simulation heterogener Systeme Peter Trappe Joachim Haase Peter Schwarz Wolfgang Vermeiren Inhalt Einleitung - Was ist VHDL-AMS? Beschreibung digitaler Systeme Beschreibung

Mehr

Werkzeuge zur Programmentwicklung

Werkzeuge zur Programmentwicklung Werkzeuge zur Programmentwicklung B-15 Bibliothek Modulschnittstellen vorübersetzte Module Eingabe Editor Übersetzer (Compiler) Binder (Linker) Rechner mit Systemsoftware Quellmodul (Source) Zielmodul

Mehr

Datentypen. Agenda für heute, 4. März, 2010. Pascal ist eine streng typisierte Programmiersprache

Datentypen. Agenda für heute, 4. März, 2010. Pascal ist eine streng typisierte Programmiersprache Agenda für heute, 4. März, 2010 Zusammengesetzte if-then-else-anweisungen Datentypen Pascal ist eine streng typisierte Programmiersprache Für jeden Speicherplatz muss ein Datentyp t (Datenformat) t) definiert

Mehr

Modul 122 VBA Scribt.docx

Modul 122 VBA Scribt.docx Modul 122 VBA-Scribt 1/5 1 Entwicklungsumgebung - ALT + F11 VBA-Entwicklungsumgebung öffnen 2 Prozeduren (Sub-Prozeduren) Eine Prozedur besteht aus folgenden Bestandteilen: [Private Public] Sub subname([byval

Mehr

Einführung in den Einsatz von Objekt-Orientierung mit C++ I

Einführung in den Einsatz von Objekt-Orientierung mit C++ I Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen

Mehr

Starten Sie die Arduino IDE und geben Sie den folgenden Programmcode ein:

Starten Sie die Arduino IDE und geben Sie den folgenden Programmcode ein: Blinken Starten Sie die Arduino IDE und geben Sie den folgenden Programmcode ein: // Projekt 1 - LED Blinker int ledpin = 13; void setup() pinmode(ledpin, OUTPUT); void loop() digitalwrite(ledpin, HIGH);

Mehr

Entwurf digitaler Systeme

Entwurf digitaler Systeme Entwurf digitaler Systeme Aufgabe 1 - Dekoder für Segmentanzeige Eine Schaltung soll einen 4-Bit BCD-Code umsetzen zur Ansteuerung einer Anzeige mit 7 Segmenten, wie in der folgenden Abbildung gezeigt.

Mehr

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015 Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens Grundlagen von C Jonas Gresens Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität

Mehr

Wintersemester 2001/2002. Hardwarepraktikum. Versuch 4: Sequentielle Systeme 1. - Toralf Zemlin - Swen Steinmann - Sebastian Neubert

Wintersemester 2001/2002. Hardwarepraktikum. Versuch 4: Sequentielle Systeme 1. - Toralf Zemlin - Swen Steinmann - Sebastian Neubert Hardwarepraktikum Wintersemester 2001/2002 Versuch 4: Sequentielle Systeme 1 - Toralf Zemlin - Swen Steinmann - Sebastian Neubert Aufgabenstellung: 2.1. Untersuchen Sie theoretisch und praktisch die Wirkungsweise

Mehr

Übersicht. Vorstellung des OO-Paradigmas

Übersicht. Vorstellung des OO-Paradigmas Java, OO und UML Vorstellung des OO-Paradigmas Übersicht Umsetzung des OO-Paradigmas in Java Einführung (seeeeeehr rudimenter) in UML zur graphischen Darstellung von OO Grammatik und Semantik von Java

Mehr

Schritt 1 : Das Projekt erstellen und programmieren des Zählers

Schritt 1 : Das Projekt erstellen und programmieren des Zählers Implementieren eines Mini-Testprogramms Ziel soll es sein ein kleines VHDL Projekt zu erstellen, eine entsprechende Testbench zu schreiben, dass Projekt zu synthetisieren und auf dem FPGA- Testboard zu

Mehr

JAVA-Datentypen und deren Wertebereich

JAVA-Datentypen und deren Wertebereich Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).

Mehr

Interpreter - Gliederung

Interpreter - Gliederung Institut für Informatik Ludwig-Maximilian Universität Interpreter - Gliederung Programmiersprache Syntax Konkrete Syntax Abstrakter Syntax Baum (Abstrakte Syntax) Parser Syntaktische Struktur einer Sprache

Mehr

Entwurf digitaler Schaltungen mit Hochsprachen (VHDL)

Entwurf digitaler Schaltungen mit Hochsprachen (VHDL) Entwurf digitaler Schaltungen mit Hochsprachen (VHDL) Einführung in die Hardwarebeschreibungssprache VHDL (Text/Graphik) sowie Schaltungssynthese bw. -optimierung F. Stockmayer Inhaltsverzeichnis Inhaltsverzeichnis

Mehr

Beispiel: Temperaturumwandlung. Imperative Programmierung. Schwerpunkte. 3. Grundlegende Sprachkonstruktionen imperativer Programme

Beispiel: Temperaturumwandlung. Imperative Programmierung. Schwerpunkte. 3. Grundlegende Sprachkonstruktionen imperativer Programme Schwerpunkte 3. Grundlegende Sprachkonstruktionen imperativer Programme Java-Beispiele: Temperature.java Keyboard.java Imperative Programmierung Beispiel für ein Programm aus drei Komponenten Variable,

Mehr

Daniel Betz Wintersemester 2011/12

Daniel Betz Wintersemester 2011/12 Daniel Betz Wintersemester 2011/12 Digitally signed by daniel.betz@daniel-betz.com Date: 2011.12.04 17:24:40 +01'00' Insgesamt 16 Register von je 16 Bit (=WORD) Breite Untere 8 Register auch als 2 Register

Mehr

Übungsaufgaben mit Lösungen zur 6. Auflage

Übungsaufgaben mit Lösungen zur 6. Auflage Übungsaufgaben mit Lösungen Übungsaufgaben mit Lösungen zur 6. uflage Zu den einzelnen Kapiteln sind Übungsaufgaben angegeben. Einige enthalten die Lösung in Kurzform. Sie finden die ausführlichen Musterlösungen

Mehr

Hardwarepraktikum WS05/06

Hardwarepraktikum WS05/06 Hardwarepraktikum WS5/6 Sven Eckelmann 2..26 Inhaltsverzeichnis Versuch Komb. NANDNANDRealisierung.......................2 NORNORRealisierung.........................3 Schaltung................................

Mehr

Martin V. Künzli Marcel Meli. Vom Gatter zu VHDL. Eine Einführung in die Digitaltechnik. : iasms!wil5i-8sb*l!f. 3. Auflage. zh aw

Martin V. Künzli Marcel Meli. Vom Gatter zu VHDL. Eine Einführung in die Digitaltechnik. : iasms!wil5i-8sb*l!f. 3. Auflage. zh aw Martin V. Künzli Marcel Meli Vom Gatter zu VHDL Eine Einführung in die Digitaltechnik : iasms!wil5i-8sb*l!f 3. Auflage zh aw Inhaltsverzeichnis 1. Begriffe und Definitionen 1 1.1 Logische Zustände 1 1.2

Mehr

Praktium Systementwurf mit VHDL HDL Design Lab. Lehrstuhl für Entwurfsautomatisierung Technische Universität München

Praktium Systementwurf mit VHDL HDL Design Lab. Lehrstuhl für Entwurfsautomatisierung Technische Universität München Praktium Systementwurf mit VHDL HDL Design Lab Lehrstuhl für Entwurfsautomatisierung Technische Universität München 1 Das Projekt: Verschlüsselung Entschlüsselung 2 Hardware-Emulation Oszillograph Signalgenerator

Mehr

4.Grundsätzliche Programmentwicklungsmethoden

4.Grundsätzliche Programmentwicklungsmethoden 4.Grundsätzliche Programmentwicklungsmethoden 1.1 Grundlage strukturierter und objektorientierter Programmierung Begriff Software Engineering - umfaßt den gezielten Einsatz von Beschreibungsmitteln, Methoden

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

Formal methods for fun and profit VHDL. Ilja Kipermann. Sommersemester 2005. Leitung Jun. Prof. Beckert. Universität Koblenz-Landau

Formal methods for fun and profit VHDL. Ilja Kipermann. Sommersemester 2005. Leitung Jun. Prof. Beckert. Universität Koblenz-Landau Formal methods for fun and profit VHDL Ilja Kipermann Sommersemester 2005 Leitung Jun. Prof. Beckert Universität Koblenz-Landau Einleitung Früher: Manuelles Zeichnen von Belichtungsmasken Heute: Hardwarebeschreibungssprachen

Mehr