Beschreibungsmöglichkeiten in Verilog
|
|
- Marta Kolbe
- vor 6 Jahren
- Abrufe
Transkript
1 Fachgebiet Rechnerarchitektur Fachbereich Informatik Prof. Dr. R. Hoffmann 4/2005, 4/2007 Beschreibungsmöglichkeiten in Verilog Inhalt 1 Grundsätzliche Möglichkeiten 1.1 Strukturbeschreibung (Structural Modeling) 1.2 Prozedurale Beschreibung, Verhaltensbeschreibung, Algorithmische Beschreibung (Procedural Modeling, Behavioral Description) 2 Beschreibung von Schaltnetzen und Schaltwerken 2.1 Beschreibung von Schaltnetzen Verbindungsnetze aus Gattern und Primitiven (Gatternetz, Net) Beschreibung durch (logische) Gleichungen, Zuweisungen an Wire Beschreibung durch einen zyklischen Prozess, der durch Änderungen der Eingänge getriggert werden 2.2 Beschreibung von synchronen Schaltwerken Zähler Zähler mit Ausgabesignalen 1
2 1 Grundsätzliche Möglichkeiten 1.1 Strukturbeschreibung (Structural Modeling) Diese Form dient dazu, vorgefertigte Bausteine oder Module miteinander zu einer Struktur zu verbinden. Verwet werden Primitive wie Gates, Buffer, Transistoren oder selbstdefinierte Module. Die Verbindung der Module erfolgt über explizit oder implizit erklärte Wires. Durch die Verwung identischer Namen in den Parameterlisten der Modul-Instanzen werden implizit Wire-Verbindungen hergestellt. Beispiel Multiplexer select a and asel b not snot and bsel or y module mux(y,a,b,select); output y; input a,b,select; not n1 (snot, select); and a1 (asel, a, select); and a2 (bsel, b, snot); or or1 (y, asel, bsel); Von den Modulbeschreibungen not, and, or werden die Bausteine (Instanzen) mit den Namen n1, a1, a2, or1 erzeugt. Zur Verbindung werden hier die impliziten Wires snot, asel, bsel benutzt. 1.2 Prozedurale Beschreibung, Verhaltensbeschreibung, Algorithmische Beschreibung (Procedural Modeling, Behavioral Description) Diese Beschreibungsform ist orientiert an der klassischen sequentiellen Programmierung und am Ausführungsmodell des Simulators. Sie kann auch dazu benutzt werden, von der Hardware-Implementierung zu abstrahieren, z.b. um nur das Verhalten zu spezifizieren. In der Regel werden zyklische Prozess (always) oder einmalige Prozesse (initial) als Rahmen für die Anweisungen benutzt. Einzelne Anweisungen oder Blöcke von Anweisungen (/) werden meist durch Events gestartet. Die Abarbeitungsreihenfolge ist sequentiell oder nebenläufig parallel (z.b. fork/join, mehrere always-blöcke). Innerhalb von Prozessen dürfen nur Blocking-Zuweisungen (r = x) oder Non-Blocking- Zuweisungen (r <= x) an Register verwet werden. Dauerhafte Zuweisungen (assign) an Wire-Variablen sind dort nicht zulässig. Die Register-Variablen (reg) werden in Anhängigkeit von ihrer Verwungsart unterschiedlich interpretiert: 1. (temp) Hilfsvariable zur Berechnung, keine physikalische Bedeutung. 2
3 2. (tempwire) Sie dienen zur prozeduralen Beschreibung von Schaltnetzen anstelle von permanenten Zuweisungen (wire/assign). Zur Dokumentation dieser Verwung sollte man den Kommentar "tempwire" (für temporary wire, Hilfsvariable für wire) benutzen, insbesondere dann, wenn reg-variablen auch mit einer anderen Bedeutung im Programm verwet werden. 3. (memory) Sie dienen zur asynchronen Speicherung von Werten. Durch die Zuweisung r = x wird der Wert x der speichernden Variablen r zugewiesen. Zur Dokumentation dieser Verwungsart sollte man den Kommentar "memory" oder "store" benutzen, um den Charakter der Speicherung zu Ausdruck zu bringen. In der Hardware entspricht diese Anwung einem Latch, einem RS-FF oder einer RAM- Speicherzelle. 4. (sync) Sie dienen zur Beschreibung taktgesteuerten synchronen Registern und synchronen Automaten. In diesem Fall erfolgt die Zuweisung unter der Bedingung eines Events, insbesondere unter dem Einfluß einer Taktflanke (@(posedge clock) r <= x). Hierbei ist die Non-Blocking-Zuweisung (<=) zu bevorzugen, weil sie die klare Absicht zum Ausdruck bringt, daß mehre solcher Anweisungen synchron parallel ausgeführt werden sollen. Zur Dokumentation sollte man den Kommentar "sync" bei der Deklaration hinzusetzen, falls es im Programmstext auch andere Verwungsarten für reg gibt. Beispiele: // Einmaliger Prozess module hello; initial $display("hello Verilog"); // Einmaliger Prozess mit repeat module rep; reg clk; //boole initial clk=0; repeat(5) $display("time= %t clk=%b",$time,clk); #10 clk=~clk; // Zyklischer Prozess mit synchroner Non-Blocking-Anweisung clock) r <= r+1; 2 Beschreibung von Schaltnetzen und Schaltwerken 2.1 Beschreibung von Schaltnetzen Verbindungsnetze aus Gattern und Primitiven (Gatternetz, Net) Auf dem Niveau der Logikebene werden aus einfachen Gattern (and, or, xor, nand, nor, xnor), Treibern (buf, not, pulldown, pullup,...) und Transistoren (nmos, pmos, cmos,...) Schaltungen als Strukturen (vergl. Abschnitt 1.1) miteinander verbunden. 3
4 2.1.2 Beschreibung durch (logische) Gleichungen, Zuweisungen an Wire In der folgen Beschreibung ist z als output und gleichzeitig implizit als wire erklärt. Durch assign wird z dauerhaft das Ergebnis (x+1) zugewiesen, es erfolgt also eine Verbindung oder Verdrahtung. module incr(z,x); input [1:0] x; output [1:0] z; // wire [1:0] z; // explizite Dekl. kann hier entfallen assign z=x+1; // Alternative: wire [1:0] z=x+1; module testbench(); wire [1:0] z; reg [1:0] h; // store incr incr1(z,h); initial h=0; #10 h=1; #2 h=2; Die Signalweiterleitung über die Verbindung kann auch zeitverzögert erfolgen, in der folgen Anweisung beträgt die Verzögerungszeit 15 Einheiten. assign #15 z=x+1. Innerhalb von Modulen können auch Funktionen benutzt werden, um z.b. wie hier den Wert x+1 als Funktionswert (ohne Zeitverzögerung) zu berechnen. module testbench(); function [1:0] incr; input [1:0] x; incr=x+1; function wire [1:0] z; reg [1:0] h; // store assign z=incr(h); initial h=0; #10 h=1; #2 h=2; Prozedurale Beschreibung durch einen zyklischen Prozess, der durch Änderungen der Eingänge getriggert wird Die folge Beschreibung mit always erzeugt das gleiche äußere Verhalten wie die obige Beschreibung durch Gleichungen mit wire und assign unter Es wird eine Hilfsvariable vom Typ reg benutzt, die hier gleichzeitig mit dem Datenausgang verbunden ist. Bei der Synthese wird dasselbe Ergebnis erzielt, wie durch die Beschreibung unter // description with data change trigger module incr(z,x); input [1:0] x; output [1:0] z; reg [1:0] z; //temp z=x+1; // bei Änderung von x 4
5 2.2 Beschreibung von synchronen Schaltwerken Synchrone Automaten werden am besten mit synchronen (Non-Blocking) Zuweisungen beschrieben. Dazu zwei Beispiele Zähler Der folge Zähler zählt mit der positiven Taktflanke. Der Typ reg wird hier zur Modellierung eines synchronen flankengesteuerten Flipflops benutzt. //sync. counter module counter(z, clk); input clk; output [1:0] z; reg [1:0] z; // sync reg initial z=0; clk) z <= z+1; module testbench(); wire [1:0] z; reg clk; parameter thalf=5; parameter k=4; counter c1(z, clk); //periods initial clk=0; #(thalf); repeat(k*2+1) #(thalf) clk=~clk; In der Hardware wird sich der Ausgang eines Flipflops erst nach der Zeit t clock2output, gezählt ab der positiven Taktflanke, verändern. Diese Verzögerungszeit kann wie folgt simuliert werden: parameter tclock2output=2; initial z=0; clk) #tclock2output z <= z+1; Zähler mit Ausgabesignalen In dem folgen Beispiel wird ein Zähler beschrieben, dessen Zustände umcodiert werden und als Y ausgegeben werden. Es handelt sich um einen Moore-Automaten. Die Zuordnung der Ausgangssignale zu den Zuständen (Ausgangsfunktion) erfolgt am besten in einem getrennten Abschnitt. Für einfache Ausgangsfunktionen empfiehlt sich die Beschreibung der Ausgangsfunktion mit Assign-Zuweisungen: module Counter(Clock,Reset,Incr,Decr,Z,Y); input Clock, Reset, Incr, Decr; output [1:0] Z; reg [1:0] Z; output [2:0] Y; wire [2:0] Y; assign Y = (Z==0)?3: (Z==1)?4: (Z==2)?5:2'bx; // Ausgangsfunktion Y=g(Z) Clock) 5
6 case (Z) 0: if (Reset) Z <= 0; else if (Incr) Z <= 1; else if (Decr) Z <= 2; 1: if (Reset) Z <= 0; else if (Incr) Z <= 2; else if (Decr) Z <= 0; 2: if (Reset) Z <= 0; else if (Incr) Z <= 0; else if (Decr) Z <= 1; 2'bx: if (Reset) Z <= 0; case Die Ausgangsfunktion kann mit Hilfe einer Verilog-Funktion berechnet werden. Dabei steht der Funktionsname als temporäre Variable zur Verfügung, außerdem können weitere temporäre Variablen innerhalb der Funktion benutzt werden: function [2:0] g; input [1:0] Z; case (Z) 0: g=3; 1: g=4; 2: g=5; default: g=3'bx; case function assign Y = g(z); Eine Mischung von dauerhaften Zuweisungen mit synchronen Anweisungen ist in Verilog nicht möglich Automaten mit Ausgabesignalen und Mikrooperationen Zustandsautomaten erzeugen in der Regel Ausgabesignale, die den Zuständen zugeordnet sind. Bei Mealy-Automaten hängen die Ausgaben zusätzlich von den Inputs ab. Zusätzlich oder alternativ zu den Ausgabesignalen können synchrone Mikrooperationen in den Zuständen aktiviert werden. Man kann sich vorstellen, daß die Mikrooperationen in einem zugeordneten Operationswerk ausgeführt werden. Für den allgemeinen Fall muß man ein Beschreibungsform haben, die es erlaubt (1) die Kontrollzustände s des Automaten synchron zu verändern, (2) direkte Ausgaben y(s, x) zu erzeugen und (3) Mikrooperationen etwa der Form ra <= ra+rb in den Zuständen auszulösen. 6
7 1. Möglichkeit Programmteil 1: berechnet den neuen Zustand des Automaten und die Mikrooperationen durch synchrone Zuweisungen Programmteil 2: berechnet die Ausgangssignale durch logische Gleichungen (Zuweisungen an wire) // 1. Neuer Zustand und sync Mikrooperationen reg state, ra, rb; clock) case(state) 0: state <= 1; ra <= ra +rb; 1: state <= case // 2. Ausgabe wire y = f(state,x) 2. Möglichkeit Programmteil 1: wie 1. Möglichkeit Programmteil 2: berechnet die Ausgangssignale prozedural. // 2. Ausgabe reg y; // tempwire x) y = f(state,x) 3. Möglichkeit Der Programmteil 1 wird in zwei Teile A und B aufgespalten. Der Programmteil 2 steht separat wie unter 1. oder 2. Für das synchrone Zustandsregister state wird eine Hilfvariable nextstate als tempwire deklariert. Der erste Teil A weist den neu berechneten Folgezustand an das eigentliche synchrone Register zu. clock) state <= nextstate Zusätzlich können hier die synchronen Mikrooperationen stehen. Der zweite Teil B berechnet den Folgezustand prozedural. reg nextstate; // tempwire x) nextstate = f(state, x). 4. Möglichkeit Für große Entwürfe kann diese Beschreibungsform am flexibelsten sein, wobei eine gewisse Unübersichtlichkeit der Preis ist. Testausgaben auf die neuen Master-Werte sind einfach möglich. Die Register werden in Slave (state, ra, rb,..) und Master (nextstate, nextra, nextrb,..) aufgespalten. Die Ausgangssignale werden als reg y // tempwire erklärt. Im Programmteil 1 finden die synchronen Zuweisungen an die Slaves statt. Im Programmteil 2 werden prozedural die Folgezustände (nextstate), die Folgewerte der Register (nextra, nextrb) und die 7
8 Ausgangssignale berechnet. Dadurch ist es leichter möglich, konsistente Änderungen durchzuführen, die den Zuständen zugeordnet sind (Folgezustand, Mikrooperationen, Ausgabesignale). // Deklarationen reg y; // tempwire Ausgabe reg nextstate, nextra, nextrb; // Master tempwire reg state, ra, rb; // Slave syncreg // Programmteil 1 clock) state <= nextstate; ra <= nextra; rb <= nextrb; // Programmteil 2 x, ra, rb) nextstate = f(state, x); nextra = ra + rb; y = g(state, x, ra, rb) 8
Lösungsvorschlag 1. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Aufgabe 1.1: Verilog Lösungsvorschlag 1. Übung Technische Grundlagen der Informatik II Sommersemester 2009 a) Wie können Werte an Wire-Variablen zugewiesen
MehrLösungsvorschlag 2. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Aufgabe 2.1: Zähler Lösungsvorschlag 2. Übung Technische Grundlagen der Informatik II Sommersemester 2009 a) Beschreiben Sie einen 4-Bit-Zähler in Verilog
MehrTutorial Vivado/Verilog Teil 5 Zyklisches Schieberegister
Tutorial Vivado/Verilog Teil 5 Zyklisches Schieberegister Prof. Dr.-Ing. Michael Karagounis Dipl.-Ing. Rolf Paulus 1. Motivation Das Ziel dieses Laborversuchs ist es, den Entwurf von taktsensitiven always
MehrVerilog Hardware Description Language (HDL)
Elektrotechnik Intelligent Systems Design Verilog Hardware Description Language (HDL) Einführung Prof. Dr.-Ing. Michael Karagounis Sommersemester 2016 HDL Konzept Was ist eine Hardwarebeschreibungssprache?
MehrEinführung in Computer Microsystems Sommersemester Vorlesung Dr.-Ing. Wolfgang Heenes
Einführung in Computer Microsystems Sommersemester 2010 3. Vorlesung Dr.-Ing. Wolfgang Heenes 28. April 2010 TechnischeUniversitätDarmstadt Dr.-Ing. WolfgangHeenes 1 Inhalt 1. Verilog HDL, Simulation und
Mehr5. Aufgabenblatt mit Lösungsvorschlag
Einführung in Computer Microsystems Sommersemester 2010 Wolfgang Heenes 5. Aufgabenblatt mit Lösungsvorschlag 19.05.2010 Aufgabe 1: Logik, Latch, Register Geben Sie für alle folgen reg-variablen an, ob
MehrVHDL Synthese. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010
VHDL Synthese Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2009/2010 VHDL Synthese 1/36 2009-11-02 Inhalt Begriff Arten Kombinatorische
Mehr6. Aufgabenblatt mit Lösungsvorschlag
Einführung in Computer Microsystems Sommersemester 2010 Wolfgang Heenes 6. Aufgabenblatt mit Lösungsvorschlag 26.05.2010 Aufgabe 1: Entwurf der Steuerung eines Verkaufsautomaten Folge Spezifikation für
MehrEinfü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
MehrVHDL - Synthese. Dr.-Ing. Matthias Sand. Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg
VHDL - Synthese Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2007/2008 VHDL - Synthese 1/19 2007-10-27 Inhalt Begriff Arten
MehrAufgabe 7.2: Mikroprogramm-Steuerwerk analysieren
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 7. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 7.1: Schritt-Steuerwerk in Verilog Das in der Vorlesung
MehrSemestralklausur Einführung in Computer Microsystems
Semestralklausur Einführung in Computer Microsystems 07. Juli 2008 Dr.-Ing. Wolfgang Heenes Name (Nachname, Vorname) Matrikelnummer Unterschrift Prüfung Bitte ankreuzen Anzahl abgegebene Zusatzblätter:
MehrVerilog/VHDL. Mehdi Khayati Sarkandi Uni Siegen
Mehdi Khayati Sarkandi Uni Siegen Hardware Description Language (HDL) Werkzeug zum Entwurf komplexer digitaler Schaltungen, zur Simulation des Systemverhaltens, zur Überprüfung auf korrekte Funktionsfähigkeit
MehrEntwurf von digitalen Schaltungen und Systemen mit HDLsundFPGAs
Entwurf von digitalen Schaltungen und Systemen mit HDLsundFPGAs Einführung mit VHDL und SystemC von Prof. Dr.-Ing. Frank Kesel und Dr. Rüben Bartholomä 2., korrigierte Auflage Oldenbourg Verlag München
MehrVersuchsreihe 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)
MehrERA-Zentralübung 11. Maximilian Bandle LRR TU München Maximilian Bandle LRR TU München ERA-Zentralübung 11
ERA-Zentralübung 11 Maximilian Bandle LRR TU München 20.1.2017 Einschränkungen bei std logic vector architecture stdlogic of irgendwas signal test: std_logic_vector( 3 downto 0) := 9; -- Nicht ok -- Richtig
Mehr5 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
MehrLösungsvorschlag 3. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 3. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 3.1: Codierungen a) Vervollständigen Sie folge Tabelle,
MehrVerilog. Modellbildung für Synthese und Verifikation von Bernhard Hoppe. Oldenbourg Verlag München Wien
Verilog Modellbildung für Synthese und Verifikation von Bernhard Hoppe Oldenbourg Verlag München Wien Inhalt Vorwort des Herausgebers XI 1 Einleitung 1 2 Electronic-Design mit Verflog HDL 5 2.1 Der Design-Zyklus
MehrDie Hardwarebeschreibungssprache Verilog Eine kurze Einführung
KURZBESCHREIBUNG VERILOG 1 Die Hardwarebeschreibungssprache Verilog Eine kurze Einführung 25. 1. 2010 Diese Kurzbeschreibung betrifft Schaltungsbeschreibungen mit dem Ziel der Synthese. Sie beschränkt
MehrVollsynchrone Mehrfunktionsregister
VOLLSYNCHRONE MEHRFUNKTIONSREGISTER 1 Vollsynchrone Mehrfunktionsregister Mehrfunktionsregister können verschiedene Funktionen ausführen (Daten parallel übernehmen, in verschiedene Richtungen schieben,
MehrEndliche Automaten 1 WS 00/01. Steuerautomaten
Endliche Automaten 1 WS 00/01 Steuerautomaten Steuerautomaten dienen zur Erzeugung von Steuersignalen. Die erzeugten Steuersignale hängen vom Bearbeitungsstand ("Zustand") der Aufgabe und von Eingangsgrößen
MehrOutline Automaten FSM Synthesis FSM in VHDL FSM auf FPGA. State Machines. Marc Reichenbach und Michael Schmidt
State Machines Marc Reichenbach und Michael Schmidt Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/11 1 / 34 Gliederung Endliche Automaten Automaten Synthese FSM Beschreibung in VHDL
MehrModul Computersysteme Prüfungsklausur SS Prof. Dr. J. Keller LG Parallelität und VLSI Prof. Dr.-Ing. W. Schiffmann LG Rechnerarchitektur
Modul Computersysteme Prüfungsklausur SS 2016 Lösungsvorschläge Prof. Dr. J. Keller LG Parallelität und VLSI Prof. Dr.-Ing. W. Schiffmann LG Rechnerarchitektur 1 Aufgabe 1 Schaltfunktionen (11 Punkte):
MehrI 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
Mehr15 Einführung in den Entwurf von Zustandsautomaten
15 Einführung in den Entwurf von Zustandsautomaten Die Ausgänge kombinatorischer Logik sind ausschließlich vom aktuellen Wert der Eingangssignale abhängig. MUX, Decoder, Code-Umsetzer und Addierer können
Mehr5.2 Endliche Automaten
5.2 Endliche Automaten 129 5.1.6 Kippstufen Flip-Flops werden auch als bistabile Kippstufen bezeichnet. Bistabil meint, dass beide Kippwerte, also 0 und 1 stabil sind. Diese Bezeichnung legt nahe, dass
MehrSequentielle Schaltungen 37 SS 96. Steuerpfad
Sequentielle Schaltungen 37 SS 96 Steuerpfad Der Steuerpfad dient zur Erzeugung von Steuersignalen. Die erzeugten Steuersignale hängen vom Bearbeitungsstand ("Zustand") der Aufgabe und von Eingangsgrößen
MehrÜbungen zu Informatik 1
Übungen zu Informatik Technische Grundlagen der Informatik - Übung 9 Ausgabedatum: 2. November 22 Besprechung: Übungsstunden in der Woche ab dem 9. November 22 ) Schaltungen und Schaltnetze Communication
Mehr- Zustandsvariable z i werden durch binäre Speicherelemente Flipflops FF realisiert, die entweder 1 gesetzt oder auf 0 rückgesetzt werden
sequentielle Schaltungen: digitale Schaltung mit inneren Rückführungen sie haben eine zeitsequentielle Arbeitsweise, wobei die einzelnen diskreten Zeitpunkte durch innere Zustände repräsentiert werden
Mehr1 Entwurf und Verhalten einfacher, synchroner Automaten
1 Entwurf und Verhalten einfacher, synchroner Automaten 1.1 Vergleich der Automatenstrukturen Mealy-Automat Rückkopplung des aktuellen Zustands Mealy-FSM I Externe Eingänge Übergangsschaltnetz Z + Zustands-
MehrE Q 1 Q 0 D 1 D X X X X
Musterlösung Übung 9 Aufgabe 1 a) Wahrheitstabelle: E Q 1 Q 0 D 1 D 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 1 X X 1 0 0 0 0 1 0 1 0 0 1 1 0 0 1 1 1 1 X X Bei diesem Automaten handelt es sich um einen Moore-Automaten.
MehrLösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 9.1: Dinatos-Algorithmus-Analyse Die folgenden Verilog-Zeilen
MehrOutline 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
MehrVHDL 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
MehrTutorial Vivado/Verilog Teil 6 Zählerbasierter Taktgenerator
Tutorial Vivado/Verilog Teil 6 Zählerbasierter Taktgenerator Prof. Dr.-Ing. Michael Karagounis Dipl.-Ing. Rolf Paulus 1. Motivation Das Ziel dieses Laborversuchs ist es, die Nutzung von synthetisierbaren
MehrOutline Logik Speicher Synthese Signale/Variablen Packages Generische Designs. Basics. Marc Reichenbach
Basics Marc Reichenbach Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 06/14 1 / 45 Gliederung Kombinatorische Logik Speicher (Latch, DFF, Register) Synthese Signale/Variablen Packages
MehrLaborübung 3. Latches, Flipflops, Counter
Laborübung 3 Latches, Flipflops, Counter Teil 1 Abbildung 1 zeigt den Schaltkreis eines gated D-Latches. In Listing 1 wird exemplarisch ein Stück VHDL-Code vorgestellt, der den abgebildeten Schaltkreis
MehrLogik mit Gedächtnis : Sequentielle Logik
Logik mit Gedächtnis : Sequentielle Logik Schaltwerke Grundkomponenten zur Informationspeicherung: Flip-Flops Typische Schaltwerke Entwurf eines Schaltwerks Wintersemester 14/15 1 Kombinatorische Logik
MehrKlausuraufgaben: Flip-Flops
Klausuraufgaben: Flip-Flops - Seite 1 Klausuraufgaben: Flip-Flops (1.) Nennen Sie 3 verschiedene Flip-Flops. (2.) Was bezeichnet man bei RS-Flip-Flop als den verbotenen Zustand? (3.) Zeichnen Sie ein RS
Mehr2 Von der Aufgabenbeschreibung zum Zustandsdiagramm
2 Von der Aufgabenbeschreibung zum Zustandsdiagramm Die erste Hauptaufgabe eines Automatenentwurfs liegt bei der Umsetzung einer textuellen Spezifikation in ein Zustandsdiagramm. Dazu ist zunächst zu prüfen:
MehrGrundlagen der Informationsverarbeitung:
Grundlagen der Informationsverarbeitung: Boolesche Funktionen, Schaltnetze und Schaltwerke Prof. Dr.-Ing. habil. Ulrike Lucke Durchgeführt von Prof. Dr. rer. nat. habil. Mario Schölzel Maximaler Raum für
MehrAufgabe 1: Kombinatorische Schaltungen
Aufgabe 1: Kombinatorische Schaltungen a) Geben Sie die VHDL-Beschreibung (entity und architecture) einer Schaltung quersumme an, die für einen Bitvektor x der Länge n die Anzahl der 1-Bits von x zurückliefert.
MehrEine Schaltung, deren Ausgänge von der Belegung der Eingänge und ihrem inneren Zustand abhängt, wird ein Schaltwerk genannt.
Schaltwerke Bisher haben wir uns nur mit Schaltnetzen befasst, also Schaltungen aus Gattern, die die Ausgaben als eine Funktion der Eingaben unmittelbar (durch Schaltvorgänge) berechnen. iese Schaltnetze
MehrD.6 Versuchsreihe 6: Registersatz und Programmzähler
D.6: Versuchsreihe 6: Registersatz und Programmzähler D D.6 Versuchsreihe 6: Registersatz und Programmzähler Abgabedatum: 04.06.2010 Name: Gruppe: Theorie: Versuch: (vom Tutor abzuzeichnen) (vom Tutor
MehrKlausur zur Vorlesung
Prof. Dr. Franz J. Rammig Paderborn,.3. C. Böke, C. Ditze Klausur zur Vorlesung "Grundlagen der technischen Informatik" und "Grundlagen der Rechnerarchitektur" Wintersemester 999/. Teil: GTI Der erste
MehrGrundlagen der Digitaltechnik GD. Aufgaben
DIGITALTECHNIK GD KLAUSUR VOM 21. 3. 2012 AUFGABEN SEITE 1 VON 4 Name: FH Dortmund Matr.-Nr.: FB Informations- und Elektrotechnik Grundlagen der Digitaltechnik GD Klausur vom 21. 3. 2012 Aufgaben 1. Wandeln
Mehr1.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
MehrEingebettete Systeme
Einführung in Eingebettete Systeme Vorlesung 7 Bernd Finkbeiner 03/12/2014 finkbeiner@cs.uni-saarland.de Prof. Bernd Finkbeiner, Ph.D. finkbeiner@cs.uni-saarland.de 1 Schaltfunktionen! Schaltfunktion:
MehrLogik mit Gedächtnis : Sequentielle Logik
Logik mit Gedächtnis : Sequentielle Logik Schaltwerke Grundkomponenten zur Informationspeicherung: Flip-Flops Typische Schaltwerke Entwurf eines Schaltwerks Wintersemester 12/13 1 asynchrone und synchrone
MehrStruktur der CPU (1) Die Adress- und Datenpfad der CPU: Befehl holen. Vorlesung Rechnerarchitektur und Rechnertechnik SS Memory Adress Register
Struktur der CPU (1) Die Adress- und Datenpfad der CPU: Prog. Counter Memory Adress Register Befehl holen Incrementer Main store Instruction register Op-code Address Memory Buffer Register CU Clock Control
MehrÜbung Hardwareentwurf
Übung Hardwareentwurf Übung vom. Mai 25 Stefan Reichör HWE- 25- Slides7.tex (7. Mai 25) Überblick Finite Machines Moore FSM Mealy FSM Implementierung von FSMs in VHDL Xilinx Synthesetool Xilinx LUTs Übung
MehrHochschule Emden / Leer. Ausarbeitung. Speicherung digitaler Signale
Hochschule Emden / Leer Ausarbeitung Thema: Speicherung digitaler Signale eingereicht von: Jens Fresenborg Inhaltsverzeichnis 1 Speicherung Digitaler Signale 1 2 Asynchrone Speicherelemente 1 2.1 RS-Flip-Flop
MehrÜbungen zu Informatik 1
Übungen zu Informatik 1 Technische Grundlagen der Informatik - Übung 9 Ausgabedatum: 11. November 2013 Besprechung: Übungsstunden in der Woche 47 (18.11. - 22.11.2013) 1) Normal- und Minimalformen Communication
Mehr18 Schieberegister. Serieller Serieller Eingang 5 Stufen Ausgang. 1. Takt. 2. Takt
8 Schieberegister In Schieberegistern wird die Eingangsinformation am Schiebeeingang SE in einer Kette von Flipflops bei jeder Taktflanke eingelesen und weiter geschoben. Sie erscheint schließlich nach
MehrInhaltsverzeichnis. Teil I Aufgaben 1
iii Teil I Aufgaben 1 1 Grundlagen der Elektrotechnik 3 Aufgabe 1: Punktladungen............................ 3 Aufgabe 2: Elektronenstrahlröhre........................ 3 Aufgabe 3: Kapazität eines Koaxialkabels...................
MehrKlausur "Informatik I" vom Teil "Rechnerstrukturen"
Seite 1 von 6 Seiten Klausur "Informatik I" vom 20.2.2001 Teil "Rechnerstrukturen" Aufgabe 1: Binäre Informationsdarstellung (18 Punkte) 1.1 Gleitkommazahlen: Gegeben sei eine 8-bit Gleitkommazahl-Darstellung
Mehr2. Aufgabenblatt
Einführung in Computer Microsystems Sommersemester 2010 Wolfgang Heenes 2. Aufgabenblatt 28.04.2010 Aufgabe 1: Installation Xilinx ISE Als erstes muss die Entwicklungsumgebung ISE installiert werden. Die
MehrBasics. Marc Reichenbach und Michael Schmidt 05/11. Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg
Basics Marc Reichenbach und Michael Schmidt Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/11 1 / 45 Gliederung Kombinatorische Logik Speicher (Latch, DFF, Register) Synthese Signale/Variablen
Mehr17 Zähler. Hochschule für Angewandte Wissenschaften Hamburg FACHBEREICH ELEKTROTECHNIK UND INFORMATIK DIGITALTECHNIK 17-1
7 Zähler Zähler werden in digitalen Systemen sehr vielfältig eingesetzt: Z.B. zum Zählen von Ereignissen, zum Speichern der aktuellen Befehlsadresse eines Mikroprozessors oder zum Zählen von Zuständen
MehrLaborübung 4. Zustandsautomaten (Finite State Machines)
Laborübung 4 Zustandsautomaten (Finite State Machines) Für den Entwurf und die Beschreibung von digitalen Systemen bilden Zustandsautomaten (Finite State Maschines; FSMs) eine wesentliche Grundlage. Mit
MehrHardware Programmierbare Logik
Hardware Programmierbare Logik Dr.-Ing. Matthias Sand Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2010/2011 Hardware Programmierbare Logik 1/23
MehrEine Möglichkeit: Latch als Speicherzelle
SRAM Eine Möglichkeit: Latch als Speicherzelle Man könnte ein Latch z.b. aus Gated Invertern benutzen Diese Zelle benötigt 4 Steuerleitungen (LD, RD und Inverse), einen Bus, 2 Versorgungen Viele Leitungen
MehrBasics. Marc Reichenbach und Michael Schmidt 05/11. Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg
Basics Marc Reichenbach und Michael Schmidt Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/11 1 / 45 Gliederung Kombinatorische Logik Speicher (Latch, DFF, Register) Synthese Signale/Variablen
MehrCarry Lookahead Adder
Carry Lookahead Adder Mittels der Generate und Propagate Ausdrücke lässt ich dann für jede Stelle i der Carry (Übertrag) für die Stelle i+1 definieren: Für einen 4 Stelligen Addierer ergibt sich damit:
MehrLaborübung 2. Teil 1: Latches, Flipflops, Counter. Abbildung 1: Schaltkreis eines Gated D-Latch
Laborübung 2 Teil 1: Latches, Flipflops, Counter A 1 Abbildung 1 zeigt den Schaltkreis eines gated D-Latches. In Listing 1 wird exemplarisch ein Stück VHDL-Code vorgestellt, der den abgebildeten Schaltkreis
MehrElektronische Morsetaste, CMOS-Ausführung
Elektronische Morsetaste, CMOS-Ausführung Claude L. Frantz (DJ0 OT) 9. Januar 2018 Abbildung 1: Die Taste in TTL Technologie, von vorn. Wie an dem einen Schalter zu erkennen ist, sind zwei Geschwindigkeitsbereiche
Mehr16 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
MehrGTI Bonus VHDL - EXTRA
1 GTI Bonus VHDL - EXTRA 2 Beschreibung Gegeben seien die Moore- (Abbildung 1) und Mealy-Automaten (Abbildung 2) der Armbanduhr aus Übungsblatt 11. 3 Beschreibung Gegeben seien die Moore- (Abbildung 1)
MehrBenutzte Quellen. Benutzte Bezeichnungen. Logik. Logik
Benutzte uellen Benutzte Bezeichnungen Vorlesungen von r.-ing. Vogelmann, Universität Karlsruhe Vorlesungen von r.-ing. Klos, Universität Karlsruhe Vorlesungen von r.-ing. Crokol, Universität Karlsruhe
MehrDigitaltechnik Grundlagen 9. Zählschaltungen
9. Zählschaltungen Version 1.0 von 02/2018 Zählschaltungen Gliederung: - Grundlagen - Synchrone Zähler - Einführung - Systematischer Entwurf 2 Zählschaltungen - Grundlagen Ebenfalls häufige Anwendung von
MehrZur Multiplikation von Gleitkommazahlen müssen die Mantissen inkl. führender 1, als Festkommazahlen multipliziert werden.
70 Arithmetische Schaltungen Multiplikation vorzeichenbehafteter Zahlen Zur Multiplikation vorzeichenbehafteter Zahlen (er-komplement) kann auf die Schaltung für vorzeichenlose Multiplikation zurückgegriffen
MehrName: 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
MehrKlausur - Digitaltechnik
Klausur - Digitaltechnik Aufgabe : Testen integrierter Schaltungen: D-Algorithmus (3 Punkte: a 2, b, c 5, d 3, e 2) B = S N A >= O OR Der Ausgang des N-Gatters soll auf einen Stuck-AT--Fehler überprüft
Mehr8. Aufgabenblatt mit Lösungsvorschlag
Einführung in Computer Microsystems Sommersemester 2010 Wolfgang Heenes 8. Aufgabenblatt mit Lösungsvorschlag 09.06.2010 Aufgabe 1: Realisierung des Modellrechners WKP Der in der Vorlesung vorgestellt
Mehr4 Entwurf eines Prozessorelementes
4 Entwurf eines Prozessorelementes In diesem Kapitel werden die Prinzipien des Entwurfs eines Prozessorelementes vorgestellt: Spezialprozessor, dessen Funktion unabhängig von einem Programm fest verdrahtet
Mehrzu 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
MehrFunktionsblöcke
11 Anhang 11.1 Schaltsymbole in der Digitaltechnik In diesem Kapitel erfolgt eine Zusammenfassung der wichtigsten Begriffe und Symbolzeichen, die nach DIN 40900 Teil 12 zur Kennzeichnung digitaler Schaltungen
MehrLösungsvorschlag 6. Übung Technische Grundlagen der Informatik II Sommersemester Aufgabe 6.1: Multiplikation von positiven Dualzahlen
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 6. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 6.1: Multiplikation von positiven Dualzahlen Berechnen
MehrProgrammierbare Logik mit GAL und CPLD. Einführung in die Schaltungsentwicklung mit Logikbausteinen in ISP-Technologie von Christian Ellwein
Programmierbare Logik mit GAL und CPLD Einführung in die Schaltungsentwicklung mit Logikbausteinen in ISP-Technologie von Christian Ellwein R.Oldenbourg Verlag München Wien 999 Inhaltsverzeichnis Vorwort..2.2..2.2.2.3.3.4
MehrIn diesem Abschnitt werden wir einige Schaltwerke kennenlernen, die als Basisbauteile überall im Aufbau digitaler Schaltungen verwendet werden.
Spezielle Schaltwerke In diesem Abschnitt werden wir einige Schaltwerke kennenlernen, die als Basisbauteile überall im Aufbau digitaler Schaltungen verwendet werden. Das Register Das Register oder der
MehrGrundlagen der Digitaltechnik GD. Aufgaben und Musterlösungen
DIGITALTECHNIK GD KLAUSUR VOM 16. 7. 2015 AUFGABEN UND MUSTERLÖSUNGEN SEITE 1 VON 7 FH Dortmund FB Informations- und Elektrotechnik Grundlagen der Digitaltechnik GD Klausur vom 16. 7. 2015 Aufgaben und
MehrHandelt es sich um ein taktzustands- oder taktflankengesteuertes D-Flipflop?
Kapitel 4 - Zähler Versuch 400 D-Flipflop Ein D-Flipflop besitzt nur einen Eingang D. Es hat nur zwei Betriebszustände: Bei T = 0 behält es seinen bisherigen Zustand, es speichert. Bei T = 1 übernimmt
MehrEin ROM soll aus mehreren ROMs (vgl. Abbildung rechts: Enable-Leitung EN, Adressleitungen ADDR, Datenleitungen DATA) aufgebaut werden.
VU Technische Grundlagen der Informatik Übung 4: Schaltwerke 183.579, 2015W Übungsgruppen: Mo., 23.11. Mi., 25.11.2015 Aufgabe 1: ROM-Erweiterung Ein 256 64 ROM soll aus mehreren 128 16 ROMs (vgl. Abbildung
MehrKapitel 3 - Steuerungstypen Seite 89. Es wird die Erzeugung der Steuersignale für das Rechenwerk betrachtet.
Kapitel - Steuerungstypen Seite 89 Kapitel Steuerungstypen Es wird die Erzeugung der Steuersignale für das Rechenwerk betrachtet. zu steuerndes Werk Flags Steuerleitungen externe Eingänge x Steuerwerk
MehrGrundlagen 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
MehrHardwarebeschreibung mit Verilog. Vorlesung Hardwareverifikation (Verification Engeneering)
Hardwarebeschreibung mit Verilog Vorlesung Hardwareverifikation (Verification Engeneering) Schaltungsbeschreibung Um Schaltungen verifizieren zu können, muß man sie erst beschreiben Hardwarebeschreibung
MehrAufbau und Funktionsweise eines Computers - II
Aufbau und Funktionsweise eines Computers - II Schaltwerke Schaltwerke Bei Schaltnetzen: Ausgabe hängt nur von der aktuellen Eingabe ab. Bei Schaltwerken: Ausgabe hängt zusätzlich von endlich vielen vorausgegangenen
MehrSpeichern von Zuständen
Speichern von Zuständen Erweiterung eines R S Latch zu einem D Latch (D=Data, C=Clock) R S altes Q neues Q 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 1 0 0 0 1 0 1 0 R S C D altes Q neues Q 0 0 0 0 0 1 0 1 0 0 1
MehrGrundlagen der Technischen Informatik. 9. Übung
Grundlagen der Technischen Informatik 9. Übung Christian Knell Keine Garantie für Korrekt-/Vollständigkeit 9. Übungsblatt Themen Aufgabe : Aufgabe 2: Aufgabe 3: Aufgabe 4: CMOS-Gatterschaltungen PAL-Implementierung
MehrAufgabe 1 Minimieren Sie mit den Gesetzen der Booleschen Algebra 1.1 f a ab ab 1 = + + Aufgabe 2. Aufgabe 3
Logischer Entwurf Digitaler Systeme Seite: 1 Übungsblatt zur Wiederholung und Auffrischung Aufgabe 1 Minimieren Sie mit den Gesetzen der Booleschen Algebra 1.1 f a ab ab 1 = + + 1.2 f ( ) ( ) ( ) 2 = c
MehrAnhang zum Lehrbuch Digitaltechnik, Gehrke, Winzker, Urbanski, Woitowitz, Springer-Verlag, 2016.
Schaltsymbole in der Digitaltechnik Anhang zum Lehrbuch Digitaltechnik, Gehrke, Winzker, Urbanski, Woitowitz, Springer-Verlag, 2016. In diesem Anhang erfolgt eine Zusammenfassung der wichtigsten Begriffe
MehrWS 2012/13 Klausur zur Digitaltechnik. Donnerstag,
Universität Koblenz Landau Name: Musterlösung Institut Naturwissenschaften Vorname:... Abteilung Physik Matr. Nr.:... Studiengang:... WS 01/13 Klausur zur Digitaltechnik Donnerstag, 8..013 Lösen Sie die
MehrVersuch 1. Versuch 1.2 Messung des Kennlinienfeldes I D = f (U DS ) des N-Kanal-MOS-FET mit Parameter U GS = 3V und. Messschaltung: Gemessene Werte:
Versuch Versuch.2 Messung des Kennlinienfeldes I D = f (U DS ) des N-Kanal-MOS-FET mit Parameter U GS = 3V und 4,5V. Messschaltung: I D U 2 U DS U U GS Gemessene Werte: U GS = 3V U DS [V ] I D [ma] 0 0.0
MehrMATLAB - Funktionen. function fcn (Parameterliste) 1. Zeiger
1 MATLAB - Funktionen Funktionszeiger 1. Zeiger Zeiger (in der MATLAB-Notation @) sind Variablen, die als Inhalt (Wert) Adressen (z.b. von anderen Variablen oder von Funktionen) haben. Sie
Mehr