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

Größe: px
Ab Seite anzeigen:

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

Transkript

1 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 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 Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 22

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) Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 23

3 5.3.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 Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 24

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; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 25

5 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; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 26

6 5.3.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". Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 27

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; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 28

8 5.3.4 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; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 29

9 5.3.5 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 Ablauf des "Beispielcodes" Zeit a b out_1 int Dt *Dt (bei einer Signaländerung z.b. von "b" aus "schaltung" von "beispielsch" erfolgt die Änderung von "int" erst nach einer Zeit "Dt"; dieser "Event" führt zu erneuten Zuweisungen von "int" und "out_1" "out_1" erhält damit seinen endgültigen Wert nach "2*Dt") Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 30

10 5.3.6 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 bit_vector (31 downto 0); signal daten2 bit_vector ((breite-1) downto 0); -- breite mit "generic" definiert Signalzuweisung Die Zuweisung erfolgt durch "<=" sig_name <= waveform; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 31

11 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. Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 32

12 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; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 33

13 5.3.7 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; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 34

14 5.3.8 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 Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 22

15 5.3.9 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! Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 23

16 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; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 24

17 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 Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 25

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 Multiplexers: 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! Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 26

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; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 27

20 Vergleich if-case Beispiel: Schaltung, die testet, ob eine 4-Bit-Zahl größer als Zehn ist. -- VGL_IF.VHD library ieee; use ieee.std_logic_1164.all; entity VGL_IF is port (a: in bit_vector(3 downto 0); gr_zehn: out bit); end VGL_IF; architecture arch_vgl_if of VGL_IF is begin vgl: process (a) begin if a="1111" then gr_zehn <= '1'; elsif a="1110" then gr_zehn <= '1'; elsif a="1101" then gr_zehn <= '1'; elsif a="1100" then gr_zehn <= '1'; elsif a="1011" then gr_zehn <= '1'; else gr_zehn <= '0'; end if; end process; end arch_vgl_if; -- VGL_CASE.VHD library ieee; use ieee.std_logic_1164.all; entity VGL_CASE is port (a: in bit_vector(3 downto 0); gr_zehn: out bit); end VGL_CASE; architecture arch_vgl_case of VGL_CASE is begin vgl: process (a) begin case a is when "1111" => gr_zehn <= '1'; when "1110" => gr_zehn <= '1'; when "1101" => gr_zehn <= '1'; when "1100" => gr_zehn <= '1'; when "1011" => gr_zehn <= '1'; when others => gr_zehn <= '0'; end case; end process; end arch_vgl_case; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 28

21 Schleifenkonstrukte Es gibt zwei Möglichkeiten: "for"-schleife und "while"-schleife Es gibt jeweils die Möglichkeit, einen vorzeitigen Schleifenabbruch zu erzwingen bzw. einzelne Schleifeniterationen vorzeitig zu beenden: exit when <Bedingung> next when <Bedingung> -- dient zum vorzeitigen Verlassen einer Schleife -- dient zur vorzeitigen Beendigung einer Schleifeniteration Die for-schleife [Bezeichner:] for <Schleifenspezifikation> loop {<sequentielle Anweisungen>;} end loop; Schleifenspezifikation: <Schleifenindex> in <untere Grenze> to <obere Grenze> <Schleifenindex> in <obere Grenze> downto <untere Grenze> Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 29

22 Beispiel einer for-schleife: -- Paritaetsgenerator library ieee; use ieee.std_logic_1164.all; entity PARITAET is generic (BITS: integer :=4); port (D: in bit_vector(bits-1 downto 0); GERADE: out bit); end PARITAET; architecture VERHALTEN of PARITAET is begin PARGEN: process (D) variable PAR: boolean; begin PAR:= false; for I in BITS-1 downto 0 loop if D(I) = '1' then PAR := not PAR; end if; end loop; if PAR then GERADE <= '1'; else GERADE <= '0'; end if; end process PARGEN; end VERHALTEN; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 30

23 Die while-schleife -- Paritaetsgenerator fuer einen seriellen Datenstrom library ieee; use ieee.std_logic_1164.all; entity PARITAET_w is port (D_IN, CLK: in bit; STARTBIT, STOPPBIT: in boolean; D_OUT: OUT bit); end PARITAET_w; while <Schleifenbedingung> loop {<sequentielle Anweisungen>;} end loop; architecture VERHALTEN_w of PARITAET_w is begin P1: process variable PAR: boolean; begin wait until (CLK'event and CLK = '1'); if STARTBIT then PAR:= false; while not STOPPBIT loop D_OUT <= D_IN; if D_IN = '1' then PAR := not PAR; end if; wait until (CLK'event and CLK = '1'); end loop; end if; if PAR then D_OUT <= '1'; else D_OUT <= '0'; end if; end process P1; end VERHALTEN_w; Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 31

24 Signalattribute Signalattribut: object_name'attribute_designator z.b: signal'event:boolean - - TRUE, wenn innerhalb "Dt" ein Ereignis an "signal" anliegt signal'active:boolean - - TRUE, wenn innerhalb "Dt" ein Aktivität an "signal" anliegt signal'last_event:time - - Zeit, die seit dem letzten Ereignis an "signal" vergangen ist signal'last_value:value - - Der Wert, den "signal" vor dem aktuellen Zustand hatte signal'last_active:time - - Zeit, die seit der letzten Aktivität an "signal" vergangen ist Beispiel: taktflankengetriggertes D-Latch PROCESS (clk) BEGIN IF clk = '1' THEN out_d <= in_d; END IF; END PROCESS; (Der Prozeß reagiert auf das "Ereignis clk"; wenn "clk = 1", dann erhält der Ausgang "out_d" den Wert des Eingangs "in_d"; diese Zuorndnung erfolgt allerdings auch bei einem Wechsel von "clk" von z.b. 'X' oder 'Z' auf '1' und damit nicht nur bei einer "positiven Flanke von clk"!) Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 32

25 Unterscheidung: Ereignis (Event): "echte" Änderung eines Signals Aktivität: Signal kann auch auf alten Wert getrieben werden Simulation von VHDL-Entwürfen Zur Überprüfung eines Designs kann eine sog. Testbench (eine VDHL-Beschreibung von Eingangssignalen und Überprüfung von Ergebnissen) erzeugt werden. Die "entity" dieser Testbench enthält keinerlei Schnittstellensignale. Die Schnittstellensignale des zu untersuchenden Modells werden als lokale Signale in der "architecture" der Testbench deklariert. Die Definition des Zeitzverlaufs der Stimuli erfolgt durch Concurrent- Anweisungen, in der die Zeitpunkte der Signalübergänge festgelegt sind. Die "architecture" der Testbench enthält das zu untersuchende Modell als Komponente. Für die automatische Auswertung steht das Kontrukt "assert" zur Verfügung: assert <Bedingung> report "<Text>" severity <severity_level> severity_level note warning error failure Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 33

26 5.4 Kontrollfragen - Aus welchen Elementen besteht ein VHDL-Modell? - Was versteht man unter einem "Concurrent-Statement"? - Was versteht man unter einem "Sequential-Statement"? - Erklären Sie den Begriff "PROCESS" - Ist das "PROCESS-Statement" ein "Concurrent-" oder ein "Sequential-Satement"? - Wann wird ein "Concurrent-Satement" ausgeführt? - Wie kann ein "PROCESS" angestoßen werden? - Erklären Sie den Unterschied zwischen Ereignis und Aktivität - Was ist der Unterschied zwischen einem Signal und einer Variablen? Wie unterscheiden sich die Zuweisungen? - In einem PROCESS gibt es die Satements "IF" und "CASE". Wie kann man diese Statements in einem "Concurrent-Region" formulieren? - Wie kann man im sequentiellen Code Schleifen realisieren? Richard Roth / FH Regensburg Rechnergestützte Schaltungsentwicklung 34

1.1 VHDL-Beschreibung

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

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

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

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

Ü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

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

Erwin Grüner 09.02.2006

Erwin Grüner 09.02.2006 FB Psychologie Uni Marburg 09.02.2006 Themenübersicht Folgende Befehle stehen in R zur Verfügung: {}: Anweisungsblock if: Bedingte Anweisung switch: Fallunterscheidung repeat-schleife while-schleife for-schleife

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

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

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben.

Der Aufruf von DM_in_Euro 1.40 sollte die Ausgabe 1.40 DM = 0.51129 Euro ergeben. Aufgabe 1.30 : Schreibe ein Programm DM_in_Euro.java zur Umrechnung eines DM-Betrags in Euro unter Verwendung einer Konstanten für den Umrechnungsfaktor. Das Programm soll den DM-Betrag als Parameter verarbeiten.

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

Grundlagen der Informatik 2. Grundlagen der Digitaltechnik. 5. Digitale Speicherbausteine

Grundlagen der Informatik 2. Grundlagen der Digitaltechnik. 5. Digitale Speicherbausteine Grundlagen der Informatik 2 Grundlagen der Digitaltechnik 5. Digitale Speicherbausteine Prof. Dr.-Ing. Jürgen Teich Dr.-Ing. Christian Haubelt Lehrstuhl für Hardware-Software Software-Co-Design Grundlagen

Mehr

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen

Übungen 19.01.2012 Programmieren 1 Felix Rohrer. Übungen Übungen if / else / else if... 2... 2 Aufgabe 2:... 2 Aufgabe 3:... 2 Aufgabe 4:... 2 Aufgabe 5:... 2 Aufgabe 6:... 2 Aufgabe 7:... 3 Aufgabe 8:... 3 Aufgabe 9:... 3 Aufgabe 10:... 3 switch... 4... 4 Aufgabe

Mehr

Versuchsreihe 7. Registerfile. Registerfile + Programmzähler. HaPra Versuchsreihe 7 - Registerfile + Programmzähler. 32 Register à 32 Bit

Versuchsreihe 7. Registerfile. Registerfile + Programmzähler. HaPra Versuchsreihe 7 - Registerfile + Programmzähler. 32 Register à 32 Bit HaPra 2007 - Versuchsreihe 7 - Registerfile + Programmzähler Versuchsreihe 7 Registerfile + Programmzähler Registerfile Register à Bit Schreiben in Register: - Dateneingang D(31:0) - Adresseingang A_D(4:0)

Mehr

Einführung in. Logische Schaltungen

Einführung in. Logische Schaltungen Einführung in Logische Schaltungen 1/7 Inhaltsverzeichnis 1. Einführung 1. Was sind logische Schaltungen 2. Grundlegende Elemente 3. Weitere Elemente 4. Beispiel einer logischen Schaltung 2. Notation von

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

Programmieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen

Programmieren. 10. Tutorium 4./ 5. Übungsblatt Referenzen Programmieren 10. Tutorium 4./ 5. Übungsblatt Inhalt I. Übungsblatt 4 II. III. - Rückgabe und Besprechung - Vorbereitung auf Wiederholung/ Nachtrag - Operatorpräzedenzen IV. Übungsblatt 5 - Vorstellung

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

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

Tutorium Rechnerorganisation

Tutorium Rechnerorganisation Woche 2 Tutorien 3 und 4 zur Vorlesung Rechnerorganisation 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu

Mehr

Unterprogramme. Komplexes Verhalten kann modular mit Hilfe von Unterprogrammen beschrieben werden Es gibt zwei Arten von Unterprogrammen:

Unterprogramme. Komplexes Verhalten kann modular mit Hilfe von Unterprogrammen beschrieben werden Es gibt zwei Arten von Unterprogrammen: Unterprogramme Dr. Wolfgang Günther Unterprogramme 2 Unterprogramme Komplexes Verhalten kann modular mit Hilfe von Unterprogrammen beschrieben werden Es gibt zwei Arten von Unterprogrammen: Prozeduren

Mehr

Excel Funktionen durch eigene Funktionen erweitern.

Excel Funktionen durch eigene Funktionen erweitern. Excel Funktionen durch eigene Funktionen erweitern. Excel bietet eine große Anzahl an Funktionen für viele Anwendungsbereiche an. Doch es kommt hin und wieder vor, dass man die eine oder andere Funktion

Mehr

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54

PHP 5.4 ISBN 978-3-86249-327-2. Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012. Grundlagen zur Erstellung dynamischer Webseiten GPHP54 PHP 5.4 Stephan Heller, Andreas Dittfurth 1. Ausgabe, September 2012 Grundlagen zur Erstellung dynamischer Webseiten ISBN 978-3-86249-327-2 GPHP54 5 PHP 5.4 - Grundlagen zur Erstellung dynamischer Webseiten

Mehr

Kontrollstrukturen - Universität Köln

Kontrollstrukturen - Universität Köln Kontrollstrukturen - Universität Köln Mario Manno Kontrollstrukturen - Universität Köln p. 1 Was sind Sprachen Auszeichnungssprachen HTML, XML Programmiersprachen ASM, Basic, C, C++, Haskell, Java, Pascal,

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

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

Übersicht Programmablaufsteuerung

Übersicht Programmablaufsteuerung Übersicht Programmablaufsteuerung Konditionale Verzweigung: if - else switch-anweisung Schleifenkonstrukte: while, do - while for Schleife Sprung-Anweisungen: break, continue, goto, return Anweisungen

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2008/09 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund - mit / ohne Parameter - mit / ohne Rückgabewerte

Mehr

Grundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen

Grundlagen der Programmierung Prof. H. Mössenböck. 3. Verzweigungen Grundlagen der Programmierung Prof. H. Mössenböck 3. Verzweigungen If-Anweisung n > 0? j n if (n > 0) x = x / n; ohne else-zweig x x / n j max x x > y? n max y if (x > y) max = x; else max = y; mit else-zweig

Mehr

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten

Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten Virtueller Seminarordner Anleitung für die Dozentinnen und Dozenten In dem Virtuellen Seminarordner werden für die Teilnehmerinnen und Teilnehmer des Seminars alle für das Seminar wichtigen Informationen,

Mehr

Gesicherte Prozeduren

Gesicherte Prozeduren Gesicherte Prozeduren Wenn eine Anwendung auf einer Client-Maschine läuft, wird normalerweise jede SQL-Anweisung einzeln vom Client an den Server gesandt, und jedes Ergebnistupel wird einzeln zurückgeliefert.

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Dr. Dietrich Boles Aufgaben zu UE16-Rekursion (Stand 09.12.2011) Aufgabe 1: Implementieren Sie in Java ein Programm, das solange einzelne Zeichen vom Terminal einliest, bis ein #-Zeichen

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

Elektrische Logigsystem mit Rückführung

Elektrische Logigsystem mit Rückführung Mathias Arbeiter 23. Juni 2006 Betreuer: Herr Bojarski Elektrische Logigsystem mit Rückführung Von Triggern, Registern und Zählern Inhaltsverzeichnis 1 Trigger 3 1.1 RS-Trigger ohne Takt......................................

Mehr

Java-Programmierung mit NetBeans

Java-Programmierung mit NetBeans Java-Programmierung mit NetBeans Steuerstrukturen Dr. Henry Herper Otto-von-Guericke-Universität Magdeburg - WS 2012/13 Steuerstrukturen Steuerstrukturen Verzweigungen Alternativen abweisende nichtabweisende

Mehr

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Tutorial: Wie erfasse ich einen Termin? In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können. Neben den allgemeinen Angaben zu einem

Mehr

Inhaltsverzeichnis Vorlesung VHDL, HW/SW-Codesign"

Inhaltsverzeichnis Vorlesung VHDL, HW/SW-Codesign Inhaltsverzeichnis Vorlesung VHDL, HW/SW-Codesign" 1 Einführung... 1-1 2 VHDL Grundlagen... 2-1 2.1 Allgemeines... 2-1 2.2 Aufbau eines VHDL-Modells...2-7 VHDL Design-Einheiten Überblick...2-10 Programmerstellung...

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

Programmierparadigmen. Programmierparadigmen. Imperatives vs. objektorientiertes Programmieren. Programmierparadigmen. Agenda für heute, 4.

Programmierparadigmen. Programmierparadigmen. Imperatives vs. objektorientiertes Programmieren. Programmierparadigmen. Agenda für heute, 4. Agenda für heute, 4. Mai, 2006 Programmierparadigmen Imperative Programmiersprachen In Prozeduren zusammengefasste, sequentiell ausgeführte Anweisungen Die Prozeduren werden ausgeführt, wenn sie als Teil

Mehr

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

VHDL Grundelemente. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg VHDL Grundelemente Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010 VHDL Grundelemente 1/15 2009-07-31 Inhalt Folgende

Mehr

Tevalo Handbuch v 1.1 vom 10.11.2011

Tevalo Handbuch v 1.1 vom 10.11.2011 Tevalo Handbuch v 1.1 vom 10.11.2011 Inhalt Registrierung... 3 Kennwort vergessen... 3 Startseite nach dem Login... 4 Umfrage erstellen... 4 Fragebogen Vorschau... 7 Umfrage fertigstellen... 7 Öffentliche

Mehr

Monitore. Klicken bearbeiten

Monitore. Klicken bearbeiten Sascha Kretzschmann Institut für Informatik Monitore Formatvorlage und deren Umsetzung des Untertitelmasters durch Klicken bearbeiten Inhalt 1. Monitore und Concurrent Pascal 1.1 Warum Monitore? 1.2 Monitordefinition

Mehr

Grundlagen der Technischen Informatik. Sequenzielle Netzwerke. Institut für Kommunikationsnetze und Rechnersysteme. Paul J. Kühn, Matthias Meyer

Grundlagen der Technischen Informatik. Sequenzielle Netzwerke. Institut für Kommunikationsnetze und Rechnersysteme. Paul J. Kühn, Matthias Meyer Institut für Kommunikationsnetze und Rechnersysteme Grundlagen der Technischen Informatik Paul J. Kühn, Matthias Meyer Übung 2 Sequenzielle Netzwerke Inhaltsübersicht Aufgabe 2.1 Aufgabe 2.2 Prioritäts-Multiplexer

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

Synchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73

Synchronisierung. Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73 Synchronisierung Kommunikationstechnik, SS 08, Prof. Dr. Stefan Brunthaler 73 Übertragungsprozeduren Die Übertragung einer Nachricht zwischen Sender und Empfänger erfordert die Übertragung des Nutzsignals

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

Java Kurs für Anfänger Einheit 5 Methoden

Java Kurs für Anfänger Einheit 5 Methoden Java Kurs für Anfänger Einheit 5 Methoden Ludwig-Maximilians-Universität München (Institut für Informatik: Programmierung und Softwaretechnik von Prof.Wirsing) 22. Juni 2009 Inhaltsverzeichnis Methoden

Mehr

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1

3.2 Binäre Suche. Usr/local/www/ifi/fk/menschen/schmid/folien/infovk.ppt 1 3.2 Binäre Suche Beispiel 6.5.1: Intervallschachtelung (oder binäre Suche) (Hier ist n die Anzahl der Elemente im Feld!) Ein Feld A: array (1..n) of Integer sei gegeben. Das Feld sei sortiert, d.h.: A(i)

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

Kurzeinführung LABTALK

Kurzeinführung LABTALK Kurzeinführung LABTALK Mit der Interpreter-Sprache LabTalk, die von ORIGIN zur Verfügung gestellt wird, können bequem Datenmanipulationen sowie Zugriffe direkt auf das Programm (Veränderungen der Oberfläche,

Mehr

Client-Server-Beziehungen

Client-Server-Beziehungen Client-Server-Beziehungen Server bietet Dienste an, Client nutzt Dienste Objekt ist gleichzeitig Client und Server Vertrag zwischen Client und Server: Client erfüllt Vorbedingungen eines Dienstes Server

Mehr

9 Multiplexer und Code-Umsetzer

9 Multiplexer und Code-Umsetzer 9 9 Multiplexer und Code-Umsetzer In diesem Kapitel werden zwei Standard-Bauelemente, nämlich Multiplexer und Code- Umsetzer, vorgestellt. Diese Bausteine sind für eine Reihe von Anwendungen, wie zum Beispiel

Mehr

Kontrollstrukturen, Strukturierte Programmierung

Kontrollstrukturen, Strukturierte Programmierung , Strukturierte Programmierung Steuer- und Kontrollfluss Strukturierte Programmierung Arten von Strukturblöcken Sequenz Alternative Iteration C-Spezifisches Seite 1 Elementare Algorithmen SelectionSort

Mehr

Übung 1 RS-FFs mit NOR- oder NAND-Gattern

Übung 1 RS-FFs mit NOR- oder NAND-Gattern Übung 1 RS-FFs mit NOR- oder NAND-Gattern Übungsziel: Aufbau eines RS-Flipflops mit NOR- oder NAND-Gattern Wahrheitstabelle: S (Setzen) R (Rücksetzen) Q m (Aktueller Zustand) Q m+1 (Nächster Zustand) 0

Mehr

S7-Hantierungsbausteine für R355, R6000 und R2700

S7-Hantierungsbausteine für R355, R6000 und R2700 S7-Hantierungsbausteine für R355, R6000 und R2700 1. FB90, Zyklus_R/W Dieser Baustein dient zur zentralen Kommunikation zwischen Anwenderprogramm und dem Modul R355 sowie den Geräten R6000 und R2700 über

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

Klassendefinitionen verstehen

Klassendefinitionen verstehen Klassendefinitionen verstehen Java-Programme bestehen aus Klassendefinitionen und sonst nichts! 1 1.0 Konzepte Felder Konstruktoren Methoden Parameter Zuweisungen ( = ) Anweisungen bedingte Anweisungen

Mehr

Eigenschaften von Zählerschaltungen (1) 1 1. Richtung

Eigenschaften von Zählerschaltungen (1) 1 1. Richtung Eigenschaften von Zählerschaltungen (1) 1 1. Richtung Vorwärts Vorwärtszählen entspricht einer fortlaufenden 1-Addition Rückwärts Rückwärtszählen entspricht einer fortlaufenden 1-Subtraktion 2. Verwendeter

Mehr

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.

4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes. Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel

Mehr

FB Informatik. Fehler. Testplan

FB Informatik. Fehler. Testplan Fehler #include int i,n,summe; int summe (int); cout 0) cin>n; i=summme(n); cout

Mehr

Künstliches binäres Neuron

Künstliches binäres Neuron Künstliches binäres Neuron G.Döben-Henisch Fachbereich Informatik und Ingenieurwissenschaften FH Frankfurt am Main University of Applied Sciences D-60318 Frankfurt am Main Germany Email: doeben at fb2.fh-frankfurt.de

Mehr

Prozedurale Datenbank- Anwendungsprogrammierung

Prozedurale Datenbank- Anwendungsprogrammierung Idee: Erweiterung von SQL um Komponenten von prozeduralen Sprachen (Sequenz, bedingte Ausführung, Schleife) Bezeichnung: Prozedurale SQL-Erweiterung. In Oracle: PL/SQL, in Microsoft SQL Server: T-SQL.

Mehr

Grundlagen der Informationverarbeitung

Grundlagen der Informationverarbeitung Grundlagen der Informationverarbeitung Information wird im Computer binär repräsentiert. Die binär dargestellten Daten sollen im Computer verarbeitet werden, d.h. es müssen Rechnerschaltungen existieren,

Mehr

5 VHDL Einführung (I)

5 VHDL Einführung (I) 5 VHDL Einführung (I) VHDL = Very High Speed Integrated Hardware Description Language Dient der Beschreibung von Hardware bei: Dokumentation Simulation Synthese Hardwarebeschreibungssprachen (HDLs) sind

Mehr

Rente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren Rentenperiode = Zeitabstand zwischen zwei Rentenzahlungen

Rente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren Rentenperiode = Zeitabstand zwischen zwei Rentenzahlungen 1 3.2. entenrechnung Definition: ente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren entenperiode = Zeitabstand zwischen zwei entenzahlungen Finanzmathematisch sind

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

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen!

Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Visual Basic Basisbefehle Hinweis: Der Text in eckigen Klammern [ ] ist variabel, z.b. [var] => 5.3. Eckige Klammern sind stets wegzulassen! Grundstrukturen: Sub [name]([übergabe]) End Sub [Übergabe] ist

Mehr

Modellierung und Programmierung 1

Modellierung und Programmierung 1 Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {

Mehr

Entwurf von Algorithmen - Kontrollstrukturen

Entwurf von Algorithmen - Kontrollstrukturen Entwurf von Algorithmen - Kontrollstrukturen Eine wichtige Phase in der Entwicklung von Computerprogrammen ist der Entwurf von Algorithmen. Dieser Arbeitsschritt vor dem Schreiben des Programmes in einer

Mehr

Wirtschaftsinformatik I

Wirtschaftsinformatik I Wirtschaftsinformatik I - Tutorium 6/ 7 (April 2010) Zusatzinformationen - Lösungsvorschläge Wirtschaftsinformatik I Tutorium Jochen Daum (4.Semester BWL) Universität Mannheim Rechtshinweis: Diese Präsentation

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

C/C++ Programmierung

C/C++ Programmierung 1 C/C++ Programmierung Grundlagen: Anweisungen Sebastian Hack Christoph Mallon (hack mallon)@cs.uni-sb.de Fachbereich Informatik Universität des Saarlandes Wintersemester 2009/2010 2 Anweisungen (Statements)

Mehr

Schaltungen Jörg Roth 197

Schaltungen Jörg Roth 197 Schaltungen Jörg Roth 197 2.2.2 Flipflops Flipsflops sind einfache rückgekoppelte Schaltungen, die jeweils ein einzelnes Bit speichern können. Es gibt verschiedene Typen, die sich im "Komfort" der Ansteuerung

Mehr

Methodische Grundlagen des Software Engineering - Übung 9

Methodische Grundlagen des Software Engineering - Übung 9 Engineering - Übung 9 9 Prozess und Softwarequalität Abgabe der Hausaufgaben am Anfang der jeweiligen Präsenzübung am 14.06.2011 bzw. 15.06.2011. Hinweise und Kontakt: Veranstaltungsseite 1 9.1 Grundlagen

Mehr

Tutorium Informatik 1. Aufgabe 2: Formatierte Ein- und Ausgabe

Tutorium Informatik 1. Aufgabe 2: Formatierte Ein- und Ausgabe Tutorium Informatik 1 Aufgabe 2: Formatierte Ein- und Ausgabe Fachbereich: Elektrotechnik Inhaltsverzeichnis 1 Aufgabe 1 2 Benötigte Funktionen und Schlüsselwörter 2 Robert Halas / FH Regensburg - 2003

Mehr

Simulation LIF5000. Abbildung 1

Simulation LIF5000. Abbildung 1 Simulation LIF5000 Abbildung 1 Zur Simulation von analogen Schaltungen verwende ich Ltspice/SwitcherCAD III. Dieses Programm ist sehr leistungsfähig und wenn man weis wie, dann kann man damit fast alles

Mehr

Aufgabensammlung. a) Berechnen Sie den Basis- und Kollektorstrom des Transistors T 4. b) Welche Transistoren leiten, welche sperren?

Aufgabensammlung. a) Berechnen Sie den Basis- und Kollektorstrom des Transistors T 4. b) Welche Transistoren leiten, welche sperren? Aufgabensammlung Digitale Grundschaltungen 1. Aufgabe DG Gegeben sei folgende Schaltung. Am Eingang sei eine Spannung von 1,5V als High Pegel und eine Spannung von 2V als Low Pegel definiert. R C = 300Ω;

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

I EINLEITUNG SYNTAX SPEZIELLE PROBLEME BEISPIEL AUSBLICK

I EINLEITUNG SYNTAX SPEZIELLE PROBLEME BEISPIEL AUSBLICK I EINLEITUNG SYNTAX SPEZIELLE PROBLEME BEISPIEL AUSBLICK... 1... V H D L Tim Köhler April 2005 I EINLEITUNG SYNTAX SPEZIELLE PROBLEME BEISPIEL AUSBLICK... 2... Übersicht 1. Einleitung 2. Syntax 3. Spezielle

Mehr

teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep

teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep teischl.com Software Design & Services e.u. office@teischl.com www.teischl.com/booknkeep www.facebook.com/booknkeep 1. Erstellen Sie ein neues Rechnungsformular Mit book n keep können Sie nun Ihre eigenen

Mehr

Whitebox-Tests: Allgemeines

Whitebox-Tests: Allgemeines -Tests: Allgemeines Andere Bezeichnungen Logic driven, Strukturelles Der Tester entwickelt Testfälle aus einer Betrachtung der Ablauflogik des Programms unter Berücksichtigung der Spezifikation Intuitiv

Mehr

Kommunikations-Management

Kommunikations-Management Tutorial: Wie kann ich E-Mails schreiben? Im vorliegenden Tutorial lernen Sie, wie Sie in myfactory E-Mails schreiben können. In myfactory können Sie jederzeit schnell und einfach E-Mails verfassen egal

Mehr

Lizenzierung von SharePoint Server 2013

Lizenzierung von SharePoint Server 2013 Lizenzierung von SharePoint Server 2013 Das Lizenzmodell von SharePoint Server 2013 besteht aus zwei Komponenten: Serverlizenzen zur Lizenzierung der Serversoftware und CALs zur Lizenzierung der Zugriffe

Mehr

Kostenstellen verwalten. Tipps & Tricks

Kostenstellen verwalten. Tipps & Tricks Tipps & Tricks INHALT SEITE 1.1 Kostenstellen erstellen 3 13 1.3 Zugriffsberechtigungen überprüfen 30 2 1.1 Kostenstellen erstellen Mein Profil 3 1.1 Kostenstellen erstellen Kostenstelle(n) verwalten 4

Mehr

1 Vom Problem zum Programm

1 Vom Problem zum Programm Hintergrundinformationen zur Vorlesung GRUNDLAGEN DER INFORMATIK I Studiengang Elektrotechnik WS 02/03 AG Betriebssysteme FB3 Kirsten Berkenkötter 1 Vom Problem zum Programm Aufgabenstellung analysieren

Mehr

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur Unterprogramme Unterprogramme sind abgekapselte Programmfragmente, welche es erlauben, bestimmte Aufgaben in wiederverwendbarer Art umzusetzen. Man unterscheidet zwischen Unterprogrammen mit Rückgabewert

Mehr

Algorithmische Kryptographie

Algorithmische Kryptographie Algorithmische Kryptographie Walter Unger Lehrstuhl für Informatik I 16. Februar 2007 Quantenkryptographie 1 Einleitung Grundlagen aus der Physik 2 Datenübertragung 1. Idee 2. Idee Nochmal Physik 3 Sichere

Mehr

Kommunikations-Parameter

Kommunikations-Parameter KNX App knxpresso für Android Tablets/Phones Kommunikations-Parameter Ausgabe Dokumentation: Mai. 2015 Doku Version V1.0.0 - Seite 1/8 Inhaltsverzeichnis 1.1 Nützliche Links... 3 1.2 Beschreibung der Kommunikations-Datei...

Mehr

Übungen Workflow Management. Blatt 2

Übungen Workflow Management. Blatt 2 Übungen Workflow Management Blatt 2 Aufgabe 1: Erstellen Sie ein Petrinetz inklusive Anfangsmarkierung für den im Folgenden beschriebenen Prozess zur Bearbeitung einer Münzbestellung. Zuerst geht eine

Mehr

Was meinen die Leute eigentlich mit: Grexit?

Was meinen die Leute eigentlich mit: Grexit? Was meinen die Leute eigentlich mit: Grexit? Grexit sind eigentlich 2 Wörter. 1. Griechenland 2. Exit Exit ist ein englisches Wort. Es bedeutet: Ausgang. Aber was haben diese 2 Sachen mit-einander zu tun?

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

How to do? Projekte - Zeiterfassung

How to do? Projekte - Zeiterfassung How to do? Projekte - Zeiterfassung Stand: Version 4.0.1, 18.03.2009 1. EINLEITUNG...3 2. PROJEKTE UND STAMMDATEN...4 2.1 Projekte... 4 2.2 Projektmitarbeiter... 5 2.3 Tätigkeiten... 6 2.4 Unterprojekte...

Mehr

Benutzerverwaltung Business- & Company-Paket

Benutzerverwaltung Business- & Company-Paket Benutzerverwaltung Business- & Company-Paket Gemeinsames Arbeiten mit der easyfeedback Umfragesoftware. Inhaltsübersicht Freischaltung des Business- oder Company-Paketes... 3 Benutzerverwaltung Business-Paket...

Mehr

Graphic Coding. Klausur. 9. Februar 2007. Kurs A

Graphic Coding. Klausur. 9. Februar 2007. Kurs A Graphic Coding Klausur 9. Februar 2007 Kurs A Name: Matrikelnummer: Hinweise - Es sind keine Hilfsmaterialien erlaubt. (Keine Bücher, Taschenrechner, Handys) - Sie haben zwei Stunden Zeit. - Insgesamt

Mehr

1 Anmerkungen zur Entwicklung von GALs mit LOG/iC

1 Anmerkungen zur Entwicklung von GALs mit LOG/iC 1 Anmerkungen zur Entwicklung von GALs mit LOG/iC 1.1 Generic Array Logic (GAL) - Prinzip Ein GAL (Generic Array Logic) stellt ein (wieder)programmierbares UND- Array mit einem festen ODER Array dar. Zusätzlich

Mehr

12 VHDL Einführung (III)

12 VHDL Einführung (III) 12 VHDL Einführung (III) 12.1 Mehrwertige Datentypen (std_logic, std_ulogic) Einführung zweier neuer neunwertiger Datentypen std_logic und std_ulogic (IEEE-Standard 1164) Wert 'U' 'X' '0' '1' 'Z' 'W' 'L'

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf http://informatik.swoke.de. Seite 1 von 18 Kapitel 3 Datentypen und Variablen Seite 1 von 18 Datentypen - Einführung - Für jede Variable muss ein Datentyp festgelegt werden. - Hierdurch werden die Wertemenge und die verwendbaren Operatoren festgelegt.

Mehr

Übung 9 - Lösungsvorschlag

Übung 9 - Lösungsvorschlag Universität Innsbruck - Institut für Informatik Datenbanken und Informationssysteme Prof. Günther Specht, Eva Zangerle Besprechung: 15.12.2008 Einführung in die Informatik Übung 9 - Lösungsvorschlag Aufgabe

Mehr