Praktikum Grundlagen von Hardwaresystemen Wintersemester 2012/13. Versuch 5: Carry-Ripple, Conditional-Sum und Carry-Lookahead-Addierer
|
|
- Bertold Gärtner
- vor 6 Jahren
- Abrufe
Transkript
1 Praktikum Grundlagen von Hardwaresystemen Wintersemester 2012/13 Versuch 5: Carry-Ripple, Conditional-Sum und Carry-Lookahead-Addierer 10. Dezember 2012 Fachbereich 12: Informatik und Mathematik Institut für Informatik Professur für Eingebettete Systeme Prof. Dr. Uwe Brinkschulte unter Mitarbeit von Benjamin Betting Michael Bauer Daniel Lohn Johann Wolfgang Goethe-Universität Frankfurt am Main
2 Inhaltsverzeichnis 1 Einleitung 2 2 Grundlagen Erzeugung regulärer Strukturen mittels Schemata Verwendung von Schemata im ISE Webpack Addierer Carry-Ripple-Addierer Conditional-Sum-Addierer Carry-Lookahead-Addierer Laufzeiteffekte in Schaltnetzen Anmerkungen und Tipps 15 4 Vorbereitungsaufgaben 16 5 Praktikumsaufgaben 18 1
3 Kapitel 1 Einleitung Dieser Versuch behandelt im wesentlichen zwei Addierertypen (Carry-Ripple-Addierer und Carry-Lookahead-Addierer). In den Aufgaben werden die folgenden Punkte ausführlich behandelt: Notwendigkeit der strukturellen Beschreibung Verwendung des Schemata Konzepts zur strukturellen Beschreibung von Architekturen Implementierung und Vergleich zweier Addierertypen (Carry-Ripple-Addierer und Carry- Lookahead-Addierer) Betrachtung von Laufzeiteffekten in Schaltnetzen Implementierung der Verzögerung in VHDL 2
4 Kapitel 2 Grundlagen 2.1 Erzeugung regulärer Strukturen mittels Schemata Bei den bisherigen Praktikumsaufgaben ging es hauptsächlich darum, einfache Komponenten in algorithmischer oder Datenflussbeschreibung zu modellieren, sowie diese Komponenten mittels struktureller Verknüpfung zu komplexeren Schaltungen zu verbinden. Die strukturelle Verknüpfung ist allerdings zur vollständigen Beschreibung von Entwürfen heutzutage nicht mehr adäquat, da z.b. moderne Prozessoren mittlerweile aus einigen Millionen Gattern bestehen. Beim modernen Schaltungsdesign beschreibt man den Entwurf deshalb hauptsächlich algorithmisch, und extrahiert aus dieser Beschreibung mittels einer automatischen Synthese eine strukturelle Beschreibung mit Gattern, Flipflops und Registern, die dann weiterverarbeitet werden kann. Es gibt aber durchaus noch Gründe für eine strukturelle Beschreibung in VHDL: zur Verbindung von großen Bausteinen, die algorithmisch beschrieben sind. Heutzutage werden solche Bausteine auch als sog. IP-Cores (intellectual property cores) gehandelt, d.h. Chiphersteller kaufen bestimmte Komponenten für ihren Entwurf als VHDL- Beschreibung von Drittanbietern. bei regulären Strukturen wie z.b. Speichern ist eine strukturelle Beschreibung durchaus sinnvoll. Um solche großen Strukturen zu beschreiben, bietet das ISE Webpack das Schemata-Konzept, mit dem sich strukturelle Beschreibungen, bestehend aus beliebig vielen Einzelkomponenten, einfach per Drag & Drop erzeugen lassen. es kann sein, dass algorithmische Konstrukte vom Synthesewerkzeug nicht oder nur ungenügend umgesetzt werden, so dass man hier auf eine bessere selbstdefinierte strukturelle Beschreibung zurückgreifen muss. 3
5 KAPITEL 2. GRUNDLAGEN 4 Für die Erzeugung komplexerer und aufwendiger struktureller Beschreibungen, bieten VHDL und die Entwicklungsumgebung ISE Webpack zwei Konzepte an. Ziel dieser ist es, eine möglichst einfache Erzeugung der Netzliste (Instanziierung und Vernetzung der Komponenten/Entities), also die eigentliche Beschreibung der strukturellen Zielarchitektur, dem Entwickler bereitzustellen. Diese sind: generate-anweisung Schemata (Schaltsymbole) Die generate-anweisung ist ein Konzept von VHDL selbst und wird in diesem Praktikum aufgrund des zeittechnischen Aufwands und der Komplexität nicht betrachtet. Dennoch ist das Prinzip und die Funktionsweise die, dass durch die Verwendung von Schleifen eine parametrisierte iterative Instanziierung der Komponenten durchgeführt werden kann. Das zweite Konzept ist Teil der Entwicklunsgumbegung. Im ISE Webpack ist es möglich eine visualisierte Darstellung der VHDL Entwürfe in Form von Schemata zu erzeugen. Schemata sind, auf diesen Kontext bezogen, technische Schaltsymbole die den jeweiligen Entities zugeordnet sind. Unter Verwendung dieser Symbole kann der Entwickler den Entwurf dann visuell per Drag & Drop aus den jeweiligen Schaltsymbolen erstellen. Der zugehörige VHDL- Quellcode wird automatisch über die verknüpften Komponenten/Entites generiert, welcher später auch eingesehen und verwendet werden kann Verwendung von Schemata im ISE Webpack Um Ihnen das Prinzip einfach zu verdeutlichen, wird hier ein Beispiel ausgeführt, welches die strukturelle Beschreibung eines XOR-Gatters basierend, auf vier NAND-Gattern (Aufgabe 5 aus Praktikumsversuch 1), verwendet. Bevor Sie Entities schematisch im ISE Webpack visuell per Drag & Drop instanziieren und verschalten können, müssen zunächst für die benötigten Entities die zugehörigen Schaltsymbole (Schematic Symbols) erzeugt werden. Dazu gehen Sie wie folgt vor: Im Drop Down Menü Sources for: des Design-Fensters den Vorgang Implementation auswählen.
6 KAPITEL 2. GRUNDLAGEN 5 Auswahl der entsprechenden Entity im Design-Fenster. Dabei ist es wichtig, dass sich die Datei der Entity im Verzeichnis des aktuellen Projekts befindet. Sollte die Entity nicht bereits Teil des Projekts sein, so fügen Sie diese dem Projekt zuvor hinzu (Rechtsklick auf FPGA-Design (xc3s200) Add Copy of Source). Die Erzeugung des Schaltsymbols starten Sie im Prozess-Fenster unter dem Punkt Design Utilities Create Schematic Symbol. Wiederholen Sie diesen Vorgang gegebenenfalls für alle Entity Dateien, die für die strukturelle Beschreibung der Zielentity notwendig sind.
7 KAPITEL 2. GRUNDLAGEN 6 Nachdem alle Schaltsymbole erstellt wurden, kann die eigentliche strukturelle Beschreibung begonnen werden. Erzeugen Sie dazu eine neue VHDL Schematic Datei, mit welcher die Beschreibung einer Entity schematisch erfolgen kann. Dazu gehen Sie wie folgt vor: Anlegen einer neuen VHDL Schematics Datei mit Rechtsklick auf das FPGA-Design (xc3s200). Aus dem Kontextmenü wählen Sie New Source. Der create new File Wizard wird geöffnet. Als Dateiformat wählen Sie auf der linken Seite Schematic. Im Namensfeld geben Sie den Namen der Entity ein. Mit Next gelangen Sie zur Zusammenfassung. Klicken Sie dort auf Finish um die Datei zu erzeugen. Anschließend wird die schematische Ansicht der Entity geöffnet. Alternativ öffnet sich durch einen Doppelklick auf die Schemata-Datei im Design-Fenster ebenfalls diese Ansicht. Um wieder zur normalen Ansicht (Design-Fenster) zu wechseln, wählen Sie den Reiter Design unterhalb des Symbol-Fensters aus.
8 KAPITEL 2. GRUNDLAGEN 7 Nun können Sie die strukturelle Bechreibung schematisch mittels Drag & Drop vornehmen. Um eine Entity zu instanziieren, wählen Sie das zugehörige Schaltsymbol aus dem Symbol-Fenster auf der linken Seite aus. Damit Sie nicht lange suchen müssen, wählen Sie aus dem darüberliegenden Kategorie-Fenster ihr aktuelles Projekt aus (zweite Position). Somit werden lediglich ihre Entitäten angezeigt. Nachdem Sie die gewünschte Entity ausgewählt haben, klicken Sie einfach im Schemata- Plan auf der rechten Seite auf eine freie Fläche. Das Schaltbild wird dann dort platziert. Mit der Platzierung wird die Entity instanziiert. Wiederholen Sie diesen Vorgang gegebenenfalls für alle weiteren Entitäten, die benötigt werden.
9 KAPITEL 2. GRUNDLAGEN 8 Um die erzeugten Entity-Instanzen miteinander zu vernetzen, wählen Sie aus der Werkzeug- Toolbar in der Mitte den Punkt Add Wire (dritte Position von oben) aus. Um nun zwei IO-Ports miteinander zu verbinden, klicken Sie auf einen der beiden Ports und ziehen Sie eine Linie (Verdrahtung) zum anderen. Um ein IO-Port als Ein- bzw. Ausgangssignal der aus dem Schemata resultierenden Entity zu deklarieren, wählen Sie aus der Werkzeug-Toolbar in der Mitte den Punkt Add I/O Marker (siebte Position von oben) aus und klicken Sie auf den Pin, der als I/O-Port deklariert werden soll. Das Verhalten bzw. die Polarität des Ports ist wählbar, indem Sie auf dessen Symbol doppelklicken und im sich öffnenden Eigenschafts-Fenster unter Nets die PortPolarity auf In- bzw. Output stellen. Um einen Bus zu erstellenm klicken Sie auf Add Wire und erstellen Sie einen einfachen Draht. Diese Leitung hat zunächst nur eine Breite von einem Bit. Durch einen Doppelklick auf den neuen Draht öffnet sich sein Eigenschafts-Fenster. Durch einen Namenszusatz können Sie jetzt den Draht zu einem Bus machen. Schreiben Sie in Klammern
10 KAPITEL 2. GRUNDLAGEN 9 hinter dem Namen, welche Bits verwendet werden, z.b. ist Test(3:0) ein 4-Bit breiter Bus. Mit Add Bus Tap können von einem Bus einzelne Bit ausgewählt werden. Verbinden Sie dazu das Bus Tap mit dem gewünschten Bus. Über den Namen kann ein bestimmtes Bit ausgewählt werden, z.b. wird über den Namen Test(3) das höchstwertige Bit des Busses Test ausgewählt. Nachdem Sie ihre Schaltung fertiggestellt haben, kann die resultierende Entity wie folgt verwendet werden. Wechseln Sie wieder zum Design-Fenster des Projekts (Reiter Design unterhalb des Symbol-Fensters), wo die Entitäten und Dateien ihres aktuellen Projekts angezeigt werden. Es gibt nun zwei Arten den VHDL-Quellcode der Schemata-Datei einzusehen.
11 KAPITEL 2. GRUNDLAGEN 10 Die Erste umfasst den gesamten Code, also Entity und Architektur. Die Zweite bietet eine Ansicht des zugehörigen Instanz-Templates, d.h. den Component- Block welcher benötigt wird, wenn Sie die Entity in einer höheren Entity instanziieren möchten, wie zum Beispiel in einer Testumgebung (SimBox). Das Instanz- Template wird dann wie gewohnt in die Architektur der Simbox eingefügt und instanziiert. Für die Ansicht des gesamten Quellcodes gehen Sie wie folgt vor: Auswahl der schematisch beschriebenen Entity aus dem Design-Fenster Im Prozess-Fenster wählen Sie dann den Punkt Design Utilities View HDL Functional Model Für die Ansicht des Instanz-Templates gehen Sie wie folgt vor: Auswahl der schematisch beschriebenen Entity aus dem Design-Fenster Im Prozess-Fenster wählen Sie dann den Punkt Design Utilities View HDL Instantiation Template Wichtig: In beiden Varianten ist nur eine Einsicht des Codes möglich und keine Bearbeitung. Dazu muss der Code kopiert und in einer neuen Datei abgelegt werden (in den Praktikumsversuchen ist dies allerdings nicht notwendig).
12 KAPITEL 2. GRUNDLAGEN Addierer Addierglieder sind Schaltnetze, die zwei Dualzahlen addieren. Dualzahlen werden wie Dezimalzahlen stellenweise addiert, beginnend bei der Stelle mit dem niedrigsten Wert. Die Addition von zwei mehrstelligen Dualzahlen kann bitseriell oder bitparallel ausgeführt werden. Man spricht daher von Serienaddierer und Paralleladdierer. Beide Addiernetze unterscheiden sich wesentlich im Hardwareaufwand und in der Addierzeit. Der Serienaddierer führt während eines Taktschrittes die Addition von nur einer Stelle aus. Der Paralleladdierer führt während einem Taktschritt die Addition aller Stellen aus. Der Serienaddierer besteht aus einem VA-Schaltnetz (beim ersten Praktikumsversuch haben wir Halbaddierer und Volladdierer kennengelernt), zwei Registern zur Aufnahme der Summanden und der Summe und einem Speicherglied für die Zwischenspeicherung des Übertrages. Der Serienaddierer ist deshalb ein Schaltwerk. Paralleladdierer können nach drei Strategien realisiert werden: Paralleladdierer in Normalformlösung Ripple-Carry-Addierer Carry-Look-Ahead-Addierer (Paralleladdierer mit Übertragsvorausberechnung) Carry-Ripple-Addierer Der Carry-Ripple-Addierer (Abbildung 2.1) realisiert ein mehrstufiges Schaltnetz. Die Addition der ersten oder wertniedrigsten Stelle wird von einem HA ausgeführt. Für jede weitere zu addierende Stelle wird ein VA nachgeschaltet, der aus den Stellenbits und dem Übertrag der vorangehenden Stelle wiederum einen Übertrag und eine Summe bildet. B3 A3 B2 A2 B1 A1 B0 A0 Cout C3 C2 C1 VA VA VA VA Cin S3 S2 S1 S0 Abbildung 2.1: Aufbau eines 4-Bit Ripple-Carry Addierers Conditional-Sum-Addierer Bei einem Carry-Ripple-Addierer ist die Berechnung der Carry-Signale zeitkritisch, da bei entsprechenden Eingangswerten ein Carry vom ersten bis zum letzten Volladdierer durchpropagiert werden muss, bevor das entsprechende Summen-Bit korrekt berechnet werden kann. In zeitkritischen Schaltungen können solche Addierer bei aktuellen Bitbreiten zwischen 32
13 KAPITEL 2. GRUNDLAGEN 12 bis 64 Bit zu langsam werden. Ein Conditional-Sum-Addierer nutzt den Vorteil einer gleichzeitigen Voraus-Berechnung der Summen-Bits. Dies erfolgt durch die Annahme beider Werte von 0 und 1 eines entsprechenden Carry-Signals in der jeweiligen Addierer-Stufe. Die Addition zweier Bits erfolgt somit doppelt, jedoch mit unterschiedlichem Carry-Eingangssignal. Sobald das tatsächliche Carry-Signal aus der vorangegangen Stufe propagiert wurde, wird das korrekte Ergebnis selektiert. Mittels dieses Verfahrens werden Latenzen dies bis zum Eintreffen eines Carry-Signals entstehen können, durch eine vorzeitige Berechnung beider Ergebnismöglichkeiten effektiv ausgenutzt. Das Auswahlschaltnetz welches die Selektion des richtigen Teilergebnisses durchführt, wird durch den Einsatz gewöhnlicher Multiplexer realisiert. Je nach Wortbreite und Eingabe wird eine deutliche kürzere Rechenzeit gegenüber dem Ripple-Carrry-Addierer erzielt. B3 A3 B2 A2 B1 A1 B0 A0 VA VA VA VA C in VA VA VA MUX MUX MUX MUX MUX MUX MUX MUX MUX C S3 S2 S1 S0 out Abbildung 2.2: Realisierung eines 4-Bit Conditional-Sum Addierers mittels 2:1 Multiplexern Carry-Lookahead-Addierer Da der bereits vorgestellte Ripple-Carry wie auch Conditional-Sum-Addierer eine Addition stehts in Abhängigkeit des vorangehenden Carry-Signals berechnen, werden Latenzen die durch das Propagieren dieses Signals entstehen nicht vermieden. Dies stellt vor allem bei großen Wortbreiten (> 64 Bit) ein Problem dar. Um jedoch auch bei einer hohen Anzahl von Bits kurze Rechenzeiten zu erhalten, bedient man sich in solch einem Fall der Carry- Lookahead-Addierer (CLA). Diese Addierer berechnen die Überträge der einzelenen Volladdierer wesentlich schneller. Die Funktionsweise der CLA basiert auf folgenden Überlegungen zum Carry-Ripple-Addierer: Der Volladdierer k generiert ein Carry-Signal genau dann, wenn
14 KAPITEL 2. GRUNDLAGEN 13 beide Summanden a k und b k den Wert 1 haben oder ein Volladdierer j < k ein Carry produziert und alle Volladdierer (j + 1)...k dieses Carry propagieren. Ein Volladdierer propagiert ein eingehendes Carry, wenn genau einer der beiden Summanden den Wert 1 hat. Diese Überlegungen führen zu einem erweiterten Volladdierer, dem Carry-Lookahead-fähigen Volladdierer (Abb. 2.3). a b CVA c_in c_p s c_g Abbildung 2.3: Ein Carry-Lookahead-fähiger Volladdierer Dieser hat neben dem Summen-Ausgang einen Ausgang c g (Carry-generate) und einen Ausgang c p (Carry-propagate). Aus diesen beiden Ausgangssignalen wird dann mit einem Schaltnetz, in das auch die Carry-generates und -propagates der vorherigen Volladdierer eingehen, das Carry-in des nächsten Volladdierers berechnet. a1 b1 a0 b0 c_out S1 CVA c_in CVA c_in S0 p s g p s g AND c_in OR OR AND AND Abbildung 2.4: Ein 2-Bit-Carry-Lookahead Addierer Das zusätzliche Carry-in auf der rechten Seite nimmt dabei die Rolle eines Carry-generate ein.
15 KAPITEL 2. GRUNDLAGEN Laufzeiteffekte in Schaltnetzen Bisher haben wir nur verzögerungsfreie Schaltungen simuliert, d.h. wenn zum Zeitpunkt t eine Signaländerung am Eingang einer Schaltung anlag, hat diese auch zum Zeitpunkt t darauf am Ausgang reagiert. Dies ist natürlich kein reales Verhalten, denn jedes Gatter braucht eine gewisse Zeitspanne, um eine Signaländerung zu verarbeiten. Es gibt hierbei zwei Modelle: ideale Verzögerung um die Zeitspanne t: Jede Signaländerung wirkt sich erst nach der Zeitspanne t am Ausgang aus. träge Verzögerung um die Zeitspanne t: Signaländerungen, die nur eine Zeitspanne s < t andauern, werden verschluckt. Nur Signaländerungen, die mindestens die Zeitspanne t überstehen, werden ideal verzögert. Auch VHDL kennt ideale und träge Verzögerung. Dies ist wichtig für die Simulation, da diese Verzögerungen in der Realität auftreten und deshalb auch modellierbar sein müssen. Kennt man die Verzögerungswerte der Technologie, in der man sein Design implementiert, kann man dies bei der Simulation berücksichtigen. In VHDL gibt es jedoch keine Laufzeitglieder, die Verzögerung wird durch Sprachkonstrukte bei der Signalzuweisung implementiert. Die Architektur eines AND-Gatters mit einer trägen Verzögerung von 10 Nanosekunden sieht so aus: Listing 2.1: AND mit Verzögerung architecture dataflow of AND gate i s begin c <= a and b after 10 ns ; end Dataflow ; Das Schlüsselwort after beschreibt eine träge Verzögerung. Für eine ideale Verzögerung sieht die Signalzuweisung dagegen wie folgt aus: Listing 2.2: Signalzuweisung bei einer idealen Verzögerung c <= transport a and b a f t e r 10 ns ;
16 Kapitel 3 Anmerkungen und Tipps carry generate sagt aus, wann ein Übertrag gebildet wird. carry propagate sagt aus, wann ein Übertrag weitegeleitet wird. Die Tatktfrequenz eines Addierers in MHz lässt sich anhand der worst-case Rechenzeit in Nanosekunden wie folgt berechnen: F requenz = 10 3 W C Zeit 15
17 Kapitel 4 Vorbereitungsaufgaben Die folgenden Aufgaben dienen der Vorbereitung der Praktikumsaufgaben und sind teilweise Ausgangsbasis für eine VHDL-Implementierung. Bearbeiten Sie diese Aufgaben vor dem Praktikumstermin. Aufgabe 1. Worin liegt der Unterschied zwischen Schaltnetzen und Schaltwerken? Nennen Sie jeweils ein konkretes Beispiel. Aufgabe 2. Welche ist die kleinste Zahl, die einen Überlauf des 6-Bit-Carry-Ripple-Addierers verursacht, wenn sie zu sich selbst addiert wird? Aufgabe 3. Unter welchen Bedingungen, bezüglich der Eingabevektoren A und B, benötigt ein 6-Bit Carry-Ripple, Conditional Sum und Carry-Lookahead Addierer die maximale Rechenzeit? Aufgabe 4. Was ist ein Hazard und welche Hazardarten haben Sie in der Vorlesung Hardwarearchitekturen und Rechensysteme kennengelernt? Aufgabe 5. Geben Sie die booleschen Ausdrücke für das Carry-generate c g und das Carry-propagate c p eines einzelnen Carry-Lookahead-fähigen Volladdierers an. Aufgabe 6. Geben Sie einen zweistufigen booleschen Ausdruck für das Carry-in aller Addierer und das Carry-out eines 6-Bit-Carry-Lookahead-Addierers an. Aufgabe 7. Erstellen Sie eine Tabelle mit der notwendigen Anzahl an Gattern für einen Carry- Ripple (RCA), Conditional-Sum (CSA) und einen Carry-Lookahead-Addierer (CLA) in Abhängigkeit von der Anzahl der zu addierenden Bits 6, 16, 32 und 64. Betrachten Sie hierzu den Volladdierer (VA) und Multiplexer (MUX) als eigenständiges Gatter und gehen Sie davon aus, dass die verwendeten Volladdierer (VA) auch die Signale carry generate und carry propagate erzeugen. Des Weiteren ist zu berücksichtigen, dass die ODER und UND-Gatter beliebig viele Eingänge besitzen können. Die Tabelle soll demnach wie folgt aufgebaut sein: 6-Bit 16-Bit VA OR AND MUX VA OR AND MUX CLA???????? CSA???????? RCA???????? 16
18 KAPITEL 4. VORBEREITUNGSAUFGABEN Bit 64-Bit VA OR AND MUX VA OR AND MUX CLA???????? CSA???????? RCA????????
19 Kapitel 5 Praktikumsaufgaben Aufgabe 1. Legen Sie ein neues Projekt an und fügen Sie dem Projekt eine Kopie der Quelldateien vom Halb- und Volladdierer aus dem letzten Versuch hinzu. Erzeugen Sie für diese beiden Bausteine die zugehörigen Schaltsymbole. Erstellen Sie einen Carry-Ripple-Addierer mit 6 Bit mit Hilfe von Schemata. Fügen Sie dazu eine neue Datei vom Typ Schematic mit dem Namen carry ripple 6 Ihrem Projekt hinzu. Als Bausteine für den Addierer verwenden Sie den Volladdierer aus dem vorangegangenen Versuch. Als Eingabe soll der Addierer zwei 6-Bit-Vektoren sowie ein zusätzliches Carry-Bit haben. Als Ausgabe soll ein 7-Bit-Vektor dienen. Schreiben Sie die Stimuli zur Simulation der Schaltung in eine neue VHDL-Datei. Das benötigte Instanz-Template (Component-Block) des Carry-Ripple-Addierers erhalten Sie aus der Schemata-Datei (wie in Abschnitt2.1.1 beschrieben). Führen Sie bei der Simulation 20 Additionen aus, wobei insgesamt jeder 1-Bit-Volladdierer mindestens einmal ein Carry produziert. Aufgabe 2. Versehen Sie den bereits konstruierten Volladdierer mit einer idealen Verzögerung von jeweils drei Nanosekunden. Wiederholen Sie anschließend die Simulation des Carry- Ripple-Addierers und beachten Sie die Unterschiede in den Simulationen. Unter welchen Bedingungen, bezüglich der Eingabevektoren A und B, erreicht ihr Addierer seine maximale Rechenzeit? Können Sie laufzeitbedingte Phänomene wie Hazards beobachten und wenn ja, erklären Sie um welche Hazardart es sich handelt? Aufgabe 3. Implementieren Sie einen 6-Bit-Conditional-Sum-Addierer auf der Basis des gezeigten Multiplexer-Ansatzes in Abschnitt Ändern Sie hierzu die bereits von Ihnen erstellte 4:1 mux gate Entity aus dem vorangegangen Versuch 1 in einen 2:1 Multiplexer ab. Anschließend setzen Sie die Vernetzung der Komponenten mittels Schemata um. Der Addierer soll zwei 6-Bit Vektoren und ein Carry-Bit für die Eingabe haben. Für die Ausgabe soll ein 7-Bit Vektor dienen. Simulieren Sie den Entwurf mit den gleichen Testfällen aus Aufgabe 1. Aufgabe 4. Realisieren Sie nun eine Verzögerung von drei Nanosekunden für die Volladdierer und jeweils einer für jeden Multiplexer. Anschließend simulieren Sie den Entwurf erneut. Untersuchen Sie das Schaltungsverhalten auf Hazards. Aufgabe 5. Entwerfen Sie einen Carry-Lookahead-fähigen Volladdierer in VHDL (mit der Bezeichnung CLAVA) auf der Basis des schon entwickelten Volladdierers. Verwenden Sie die 18
20 KAPITEL 5. PRAKTIKUMSAUFGABEN 19 Variante ohne Verzögerung. Testen Sie Ihren Entwurf für alle möglichen Belegungen der Eingangssignale. Aufgabe 6. Erweitern Sie Ihr Projekt und entwerfen Sie einen 6-Bit-Carry-Lookahead-Addierer mittels Schemata. Verknüpfen Sie dazu 6 CLAVAs mit der Lookahead-Logik zu einem Carry-Lookahead-Addierer. Der Lookahead Generator (CLAG) steht Ihnen als Quellcode (Entity der Schaltung) auf der Praktikumswebseite zur Verfügung. Um diesen mittels Schemata zu verknüpfen, müssen Sie die Datei in das bestehende Projekt einbinden und das Schaltsymbol erzeugen. Anschließend vernetzen Sie die CLAVAs mit dem CLAG wie in Abbildung 5.1 gezeigt. Der Addierer soll zwei 6-Bit-Vektoren, ein zusätzliches Carry-Bit als Eingang und einen 7-Bit-Vektor als Ausgang haben. Simulieren Sie ihre Schaltung mit den Testfällen aus Aufgabe 1. B5 A5 B4 A4 B3 A3 B2 A2 B1 A1 B0 A0 VA VA VA VA VA VA S5 S4 S3 S2 S1 S0 p_5 g_5 p_4 g_4 p_3 g_3 p_2 g_2 p_1 g_1 p_0 g_0 C_out CLAG C_in Abbildung 5.1: Ein 6-Bit-Carry-Lookahead Addierer Aufgabe 5. Versehen Sie jetzt die CLAVAs mit einer idealen Verzögerung von drei Nanosekunden und alle anderen Gatter innerhalb des CLAG-Schaltnetzes mit einer idealen Verzögerung von einer Nanosekunde. Behandeln Sie dabei, unabhängig von der Anzahl der Eingänge, alle Und- sowie Oder-Gatter gleich. Simulieren Sie die Schaltung erneut und vergleichen Sie die worst-case Rechenzeit des Carry-Lookahead-Addierer gegenüber dem Conditional- Sum und Ripple-Carry-Addierer.
Praktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 2: Multiplexer, Carry-Ripple- und Carry-Lookahead-Addierer
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2010 Versuch 2: Multiplexer, Carry-Ripple- und Carry-Lookahead-Addierer 15. April 2010 Fachbereich 12: Informatik und Mathematik Institut für Informatik
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 2: Multiplexer, Carry-Ripple- und Carry-Lookahead-Addierer
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2012 Versuch 2: Multiplexer, Carry-Ripple- und Carry-Lookahead-Addierer 18. April 2012 Fachbereich 12: Informatik und Mathematik Institut für Informatik
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 2: Multiplexer, Carry-Ripple- und Carry-Lookahead-Addierer
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2007 Versuch 2: Multiplexer, Carry-Ripple- und Carry-Lookahead-Addierer 26. Juni 2007 Fachbereich 12: Informatik und Mathematik Institut für Informatik
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 2: VHDL-Einstieg
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2014 Versuch 2: VHDL-Einstieg 22. April 2014 Fachbereich 12: Informatik und Mathematik Institut für Informatik Professur für Eingebettete Systeme
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester 2009. Versuch 2: Multiplexer, Carry-Ripple- und Carry-Lookahead-Addierer
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2009 Versuch 2: Multiplexer, Carry-Ripple- und Carry-Lookahead-Addierer 19. Februar 2009 Fachbereich 12: Informatik und Mathematik Institut für
MehrDigitale Systeme und Schaltungen
Zusammenfassung meines Vortrages vom 26. Jänner 2017 Digitale Systeme und Schaltungen Andreas Grimmer Pro Scientia Linz Johannes Kepler Universität Linz, Austria andreas.grimmer@jku.at In dieser Zusammenfassung
MehrRechnerstrukturen, Teil 1. Vorlesung 4 SWS WS 14/15
Rechnerstrukturen, Teil 1 Vorlesung 4 SWS WS 14/15 Prof. Dr Jian-Jia Chen Dr. Lars Hildebrand Fakultät für Informatik Technische Universität Dortmund lars.hildebrand@tu-.de http://ls1-www.cs.tu-.de Übersicht
MehrCarry-Lookahead Addierer (CLA)
Carry-Lookahead Addierer (CLA) Idee: Vorausberechnung der Carry-Signale c i für alle n Stellen für i-ten Volladdierer gilt: c i+1 = a i b i + (a i +b i )c i := G i + P i c i G i = a i b i gibt an, ob in
MehrErste praktische Übung zur Vorlesung Grundlagen der Technischen Informatik
Lehrstuhl für Informatik 12 Cauerstraße 11 91058 Erlangen TECHNICHE FAKULTÄT Erste praktische Übung zur Vorlesung Grundlagen der Technischen Informatik Aufgabe 1 (NAND-chalterfunktion) Es soll ein NAND-Gatter
MehrRechnerstrukturen, Teil 1
Rechnerstrukturen, Teil 1 Vorlesung 4 SWS WS 18/19 Prof. Dr. Jian- Jia Chen Fakultät für Informatik Technische Universität Dortmund jian- jia.chen@cs.uni-.de http://ls12- www.cs.tu-.de Übersicht 1. Organisatorisches
MehrSeminararbeit Sommersemester 2017
Schaltkreise für die Addition Seminararbeit Sommersemester 2017 Bearbeitet von: Maximilian Breymaier (Matrikelnummer: 57214) Christoph Mantsch (Matrikelnummer: 57266) Betreuer: Prof. Dr. Thomas Thierauf
MehrHardware Praktikum 2008
HaPra 2008 - Versuchsreihe 5 - ALU Hardware Praktikum 2008 Prof. Dr. H.-J. Wunderlich Dipl.-Inf. M. Imhof Dipl.-Inf. S. Holst Agenda Die HaPra-CPU Eine kleine Übersicht VHDL Projekt-Organisation Entwurf
Mehr3.1 Schaltungselemente 129. b) Tragen Sie in nachfolgende Abbildung die Realisierung eines 1 Bit 4-auf-1 Multiplexers aus Logikgattern ein.
3.1 Schaltungselemente 129 b) Tragen Sie in nachfolgende Abbildung die Realisierung eines 1 Bit 4-auf-1 Multiplexers aus Logikgattern ein. 2 1 0 1 1 130 3 Arithmetische Schaltungen emultiplexer emultiplexer
MehrInhalt. Zahlendarstellungen
Inhalt 1 Motivation 2 Integer- und Festkomma-Arithmetik Zahlendarstellungen Algorithmen für Integer-Operationen Integer-Rechenwerke Rechnen bei eingeschränkter Präzision 3 Gleitkomma-Arithmetik Zahlendarstellungen
MehrÜbungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 4 Zahlendarstellung/Rechenarithmetik/Rechenwerke
Übungen zur Vorlesung Technische Informatik I, SS 2001 Strey / Guenkova-Luy / Prager Übungsblatt 4 Zahlendarstellung/Rechenarithmetik/Rechenwerke Aufgabe 1: a) Bestimmen Sie die Darstellung der Zahl 113
Mehr3 Arithmetische Schaltungen
. Schaltungselemente Arithmetische Schaltungen. Schaltungselemente Logikgatter Treiber; gibt am Ausgang denselben Logikpegel aus, der auch am Eingang anliegt Inverter; gibt am Ausgang den Logikpegel des
MehrAufgabe 1. Aufgabe 2. Abbildung 1: Schaltung für die Multiplikation mit 4
Aufgabe 1 Eine Zahl a ist mit 8 Bits vorzeichenlos (8 bit unsigned) dargestellt. Die Zahl y soll die Zahl a multipliziert mit 4 sein (y = a 4 D ). a) Wie viele Bits benötigen Sie für die Darstellung von
MehrGrundlagen der Technischen Informatik
Universität Duisburg-Essen PRAKTIKUM Grundlagen der Technischen Informatik VERSUCH 2 Schaltungssimulation und Schaltungsanalyse Name: Vorname: Betreuer: Matrikelnummer: Gruppennummer: Datum: Vor Beginn
MehrWandeln Sie die folgenden Zahlen in Binärzahlen und Hexadezimalzahlen. Teilen durch die Basis des Zahlensystems. Der jeweilige Rest ergibt die Ziffer.
Digitaltechnik Aufgaben + Lösungen 2: Zahlen und Arithmetik Aufgabe 1 Wandeln Sie die folgenden Zahlen in Binärzahlen und Hexadezimalzahlen a) 4 D b) 13 D c) 118 D d) 67 D Teilen durch die Basis des Zahlensystems.
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
MehrLö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
MehrOutline Schieberegister Multiplexer Zähler Addierer. Rechenschaltungen. Marc Reichenbach und Michael Schmidt
Rechenschaltungen Marc Reichenbach und Michael Schmidt Informatik 3 / Rechnerarchitektur Universität Erlangen Nürnberg 05/11 1 / 22 Gliederung Schieberegister Multiplexer Zähler Addierer 2 / 22 Schieberegister
MehrEntwurf 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.........................
MehrDigital Design 2 Schaltnetze (kombinatorische Logik) Digital Design
2 Schaltnetze (kombinatorische Logik) Schaltnetze realisieren eine Schalt- oder Vektorfunktion Y = F (X) X: Eingangsvektor mit den Variablen x 0, x 1, x n Y: Ausgabevektor mit den Variablen y 0, y 1, y
MehrÜbungsblatt 1 Einführung in die Xilinx Vivado FPGA Design Plattform Abgabefrist: Mittwoch , 10:00 Uhr
Praktikum zur Vorlesung Prozessorarchitektur SS 2017 Übungsblatt 1 Einführung in die Xilinx Vivado FPGA Design Plattform Abgabefrist: Mittwoch 03.05.2017, 10:00 Uhr 1. Einführung In dieser Übung werden
MehrGTI ÜBUNG 12. Komparator und Addierer FRIEDRICH-ALEXANDER UNIVERSITÄT ERLANGEN-NÜRNBERG JAN SPIECK 1
GTI ÜBUNG 12 Komparator und Addierer FRIEDRICH-ALEXANDER UNIVERSITÄT ERLANGEN-NÜRNBERG JAN SPIECK 1 AUFGABE 1 KOMPARATOR Beschreibung Entwickeln Sie eine digitale Schaltung, die zwei Bits a und b miteinander
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
MehrÜbungsblatt 1. Einführung in die Xilinx Vivado FPGA Design Plattform
Praktikum zur Vorlesung Prozessorarchitektur SS 2016 Übungsblatt 1. Einführung in die Xilinx Vivado FPGA Design Plattform 1.1. Einführung In dieser Übung werden wir einen einfachen digitalen Entwurf als
MehrRechnerstrukturen WS 2012/13
Rechnerstrukturen WS 2012/13 Boolesche Funktionen und Schaltnetze Schaltnetze Rechner-Arithmetik Addition Bessere Schaltnetze zur Addition Carry-Look-Ahead-Addierer Multiplikation Wallace-Tree Hinweis:
MehrKlausur ( ): Technische Grundlagen der Informatik 1 Digitale Systeme WS 2006/2007
Klausur (9.02.2007): Technische Grundlagen der Informatik Digitale Systeme WS 2006/2007 Vorname :.............................................. Name :.............................................. Matrikelnummer
MehrRechnerarithmetik. Vorlesung im Sommersemester Eberhard Zehendner. FSU Jena. Thema: Addierschaltungen
Rechnerarithmetik Vorlesung im Sommersemester 2008 Eberhard Zehendner FSU Jena Thema: Addierschaltungen Eberhard Zehendner (FSU Jena) Rechnerarithmetik Addierschaltungen 1 / 19 Addierer für UInt 2 (l)
Mehr14 Addierer und Subtrahierer
14 Addierer und Subtrahierer 14.1 Darstellung positiver und negativer Zahlen Die Anzahl der Bitstellen muss festgelegt sein, um positive und negative Zahlen unterscheiden zu Binär m -1 = 3 Positiv Dezimal
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
MehrDigitaltechnik Grundlagen 5. Elementare Schaltnetze
5. Elementare Schaltnetze Version 1.0 von 02/2018 Elementare Schaltnetze Dieses Kapitel beinhaltet verschiedene Schaltnetze mit speziellen Funktionen. Sie dienen als Anwendungsbeispiele und wichtige Grundlagen
MehrMinimierung nach Quine Mc Cluskey
Minimierung nach Quine Mc Cluskey F(A,B,C,D) =!A!B!C!D +!A!B!C D +!A B!C!D +!A B!C D +!A B C!D +!A B C D + A!B!C!D + A!B!C D + A!B C D + A B C D Notiere die Funktion als # A B C D Gruppe Binärelemente
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:
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
MehrGrundlagen der Technischen Informatik
TECHNISCHE FAKULTÄT 11. Übung zur Vorlesung Grundlagen der Technischen Informatik Aufgabe 1 (VHDL) Gegeben ist ein binärer Taschenrechner (siehe Abb. 1), der als Eingabe die Tasten 0, 1, +, - und = und
Mehr3 Arithmetische Schaltungen
. Schaltungselemente 7 Arithmetische Schaltungen. Schaltungselemente Logikgatter Treiber; gibt am Ausgang denselben Logikpegel aus, der auch am Eingang anliegt Inverter; gibt am Ausgang den Logikpegel
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 1: VHDL-Grundlagen
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2009 Versuch 1: VHDL-Grundlagen 8. April 2010 Fachbereich 12: Informatik und Mathematik Institut für Informatik Professur für Eingebettete Systeme
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
Mehr5.Vorlesung Rechnerorganisation
Mario.Trams@informatik.tu-chemnitz.de, 29. April 2004 1 Inhalt: 5.Vorlesung Rechnerorganisation Wiederholung aus Digitaltechnik: Allgemeiner Überblick über VHDL (Teil 1) Schwerpunkt Modellierungssichtweisen,
MehrFAKULTÄT FÜR INFORMATIK
FAKULTÄT FÜR INFORMATIK TECHNISCHE UNIVERSITÄT MÜNCHEN Lehrstuhl für Rechnertechnik und Rechnerorganisation Prof. Dr. Martin Schulz Einführung in die Rechnerarchitektur Wintersemester 2017/2018 Lösungsvorschlag
Mehr3.8 Sequentieller Multiplizierer 159
.8 Sequentieller Multiplizierer 59 Nachfolgende Abbildung zeigt den (unvollständigen) Aufbau einer Schaltung zur Implementierung des gezeigten Multiplikationsverfahrens. b) Vervollständigen Sie die Schaltung
MehrKlausur ( ) : Technische Grundlagen der Informatik 1 Digitale Systeme WS 2010/2011
Klausur (08.04.20) : Technische Grundlagen der Informatik Digitale Systeme WS 200/20 Vorname : Max Name : Mustermann Matrikelnummer : 23456 Klausur-Code : 007 Mobiltelefone sind auszuschalten Wichtige
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
MehrD.4 Versuchsreihe 4: Integrierte Logikbausteine
.4 Versuchsreihe 4: Integrierte Logikbausteine Name: Gruppe: Theorie: Versuch: (vom Tutor abzuzeichnen) (vom Tutor abzuzeichnen) In den Versuchsreihen.5 bis.11 soll ein einfacher RISC Prozessor entworfen
Mehr2 Initialisierung clk_mkand= clk_produkt= multiplexer= init/>>1= 6 Schieben clk_mkand= clk_produkt= multiplexer= init/>>1=
Arithmetische Schaltungen c) Vervollständigen Sie nachfolgend abgebildeten Zustands-Automaten so, dass er den Multiplizierer wie gewünscht steuert. Nehmen Sie an, dass Sie zur Detektion des Schleifen-Abbruchs
Mehr13. Vorlesung. Logix Klausuranmeldung nicht vergessen! Übungsblatt 3 Logikschaltungen. Multiplexer Demultiplexer Addierer.
13. Vorlesung Logix Klausuranmeldung nicht vergessen! Übungsblatt 3 Logikschaltungen Diode Transistor Multiplexer Demultiplexer Addierer 1 Campus-Version Logix 1.1 Vollversion Software und Lizenz Laboringenieur
Mehr6 Schaltwerke und endliche Automaten
6 Schaltwerke und endliche Automaten 6.1 Entwicklungsstufen 143 In diesem Abschnitt wird gezeigt, wie das Blockschaltbild aus 1.4 realisiert werden kann. Mithilfe der entwickelten Speicherbausteine und
MehrKapitel 5. Standardschaltnetze. Prof. Dr. Dirk W. Hoffmann. Hochschule Karlsruhe w University of Applied Sciences w Fakultät für Informatik
Kapitel 5 Standardschaltnetze Prof. Dr. Dirk W. Hoffmann Hochschule Karlsruhe w Universit of Applied Sciences w Fakultät für Informatik Inhalt und Lernziele Inhalt Vorstellung der wichtigsten Standardelemente
MehrKapitel 6 - Addierwerke
Kapitel 6 - Addierwerke Versuch 600 Halbaddierer und Volladdierer Der bürgerliche Algorithmus des schriftlichen Addierens zerlegt die binäre Addition in die folgenden elementaren Additionen. Es ergibt
MehrMenschliches Addierwerk
Menschliches Addierwerk Einleitung In seinem Buch The Three-Body Problem 1 beschreibt der chinesische Autor Liu Cixin die Entwicklung eines Computers, der aus mehreren Millionen Menschen zusammengesetzt
MehrÜ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
MehrArithmetische Schaltungen: log(n)-addierer
Arithmetische Schaltungen: log(n)-addierer Prof. Dr. Paul Molitor Institut für Informatik Martin-Luther-Universität Halle Aufbau der Lehrveranstaltung Literaturangaben Allgemeines zum Entwurf digitaler
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
Mehr3 Verarbeitung und Speicherung elementarer Daten
3 Verarbeitung und Speicherung elementarer Daten 3.1 Boolsche Algebra Definition: Eine Boolsche Algebra ist eine Menge B mit den darauf definierten zweistelligen Verknüpfungen (+,*) sowie der einstelligen
Mehrx x y x y Informatik II Schaltkreise Schaltkreise Schaltkreise Rainer Schrader 3. November 2008
Informatik II Rainer Schrader Zentrum für Angewandte Informatik Köln 3. November 008 1 / 47 / 47 jede Boolesche Funktion lässt mit,, realisieren wir wollen wir uns jetzt in Richtung Elektrotechnik und
MehrSchriftliche Prüfung
OTTO-VON-GUERICKE-UNIVERSITÄT MAGDEBURG FAKULTÄT FÜR INFORMATIK Schriftliche Prüfung im Fach: Technische Grundlagen der Informatik Studiengang: Bachelor (CV / CSE / IF / WIF) am: 19. Juli 2008 Bearbeitungszeit:
MehrMinimierung nach Quine Mc Cluskey
Minimierung nach Quine Mc Cluskey F(A,B,C,D) =!A!B!C!D +!A!B!C D +!A B!C!D +!A B!C D +!A B C!D +!A B C D + A!B!C!D + A!B!C D + A!B C D + A B C D Notiere die Funktion als # A B C D Gruppe Binärelemente
MehrTristate Buffer / erste Module
IP-Core Generator / Automaten / Platzierung Tristate Buffer / erste Module 27 November 2009 Prof. Dr.-Ing. habil. Andreas Mitschele-Thiel Self-Organization 27 November 2009 1 Inhalt IP-Core Generator Implementierung
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 6: Computergrafik und Sprites
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2007 Versuch 6: Computergrafik und Sprites 28. Juni 2007 Fachbereich 12: Informatik und Mathematik Institut für Informatik Professur für Technische
MehrIntegrierte Schaltungen
Integrierte Schaltungen Klassen von Chips: SSI (Small Scale Integrated) circuit: 1 bis 10 Gatter MSI (Medium Scale Integrated) circuit: 10 bis 100 Gatter LSI (Large Scale Integrated) circuit: 100 bis 100
MehrPraktikum Grundlagen von Hardwaresystemen Wintersemester 2012/13. Versuch 4: VHDL-Grundlagen
Praktikum Grundlagen von Hardwaresystemen Wintersemester 2012/13 Versuch 4: VHDL-Grundlagen 14 November 2012 Fachbereich 12: Informatik und Mathematik Institut für Informatik Professur für Eingebettete
MehrElectronic Design Automation (EDA) Technology Mapping
Electronic Design Automation (EDA) Technology Mapping Überblick digitale Synthese Technology Mapping Abbildung durch die Abdeckung eines Baumes Partitionierung des DAG Dekomposition und Abdeckung Beispiel
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 1: VHDL-Grundlagen
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2007 Versuch 1: VHDL-Grundlagen 26. Juni 2007 Fachbereich 12: Informatik und Mathematik Institut für Informatik Professur für Technische Informatik
MehrMinimierung nach Quine Mc Cluskey Ermitteln der Primtermtabelle
Minimierung nach Quine Mc Cluskey Ermitteln der Primtermtabelle # A B C D OK m9 + m11 1 0 1 P1 m7 + m15 1 1 1 P2 m11 + m15 1 1 1 P3 m0 + m1 + m4 + m5 0 0 P4 m0 + m1 + m8 + m9 0 0 P5 m4 + m5 + m6 + m7 0
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:
MehrDarstellung eines 1-Bit seriellen Addierwerks mit VHDL. Tom Nagengast, Mathias Herbst IAV 07/09 Rudolf-Diesel-Fachschule für Techniker
Darstellung eines 1-Bit seriellen Addierwerks mit VHDL Tom Nagengast, Mathias Herbst IAV 07/09 Rudolf-Diesel-Fachschule für Techniker Inhalt: 1. Verwendete Tools 1.1 Simili 3.1 1.2 Tina 2. Vorgehensweise
MehrKonfiguration des MIG für DDR2-SDRAM Ansteuerung
Konfiguration des MIG für DDR2-SDRAM Ansteuerung Verwendete Ressourcen: Board: Spartan-3A/3AN FPGA Starter Kit Board FPGA: XC3S700AN Speicher: Micron Technology DDR2-SDRAM (MT47H32M16) Software: - ISE
Mehr2.2 Register-Transfer-Synthese
2.2 Register-Transfer-Synthese Register-Transfer-Synthese Überblick digitale Synthese Register-Transfer- Synthese Makrozellgeneratoren Beispiel Addierer Beispiel Speicher Synthese endlicher Automaten Zustandskodierung
MehrHTWK Leipzig Fakultät EIT. Praktikum Schaltungstechnik. Versuch PLD. Anleitung zum. Bedienen der Entwurfssoftware. StateCAD.
Versuch PLD Anleitung zum Bedienen der Entwurfssoftware StateCAD am Beispiel einer Ampelsteuerung Prof. Dr. W. Reinhold, HTWK Leipzig 01.06.16 1 Inhaltsverzeichnis 1 STATECAD... 2 2 STATEBENCH... 15 1
MehrArbeitsbereich Technische Aspekte Multimodaler Systeme. Praktikum der Technischen Informatik T1 1. Schaltnetze. Name:...
Universität Hamburg, Fachbereich Informatik Arbeitsbereich Technische Aspekte Multimodaler Systeme Praktikum der Technischen Informatik T Schaltnetze Name:... Bogen erfolgreich bearbeitet:... Scheinkriterien
MehrGTI ÜBUNG 12 KOMPARATOR UND ADDIERER
1 GTI ÜBUNG 12 KOMPARATOR UND ADDIERER Aufgabe 1 Komparator 2 Beschreibung Entwickeln Sie eine digitale Schaltung, die zwei Bits a und b miteinander vergleicht. Die Schaltung besitzt drei Ausgänge: ist
MehrD.5 Versuchsreihe 5: Arithmetisch-Logische Einheit
D.5: Versuchsreihe 5: Arithmetisch-Logische Einheit D D.5 Versuchsreihe 5: Arithmetisch-Logische Einheit Abgabedatum: 21.05.2010 Name: Gruppe: Theorie: Versuch: (vom Tutor abzuzeichnen) (vom Tutor abzuzeichnen)
MehrFPGA Systementwurf. Rosbeh Etemadi. Paderborn University. 29. Mai 2007
Paderborn Center for Parallel l Computing Paderborn University 29. Mai 2007 Übersicht 1. FPGAs 2. Entwicklungssprache VHDL 3. Matlab/Simulink 4. Entwicklungssprache Handel-C 5. Fazit Übersicht FPGAs 1.
MehrÜbungsblatt 6. Implementierung einer Befehlspipeline
Praktikum zur Vorlesung Prozessorarchitektur SS 2016 Übungsblatt 6. Implementierung einer Befehlspipeline 1.1. Einführung Durch die Einteilung der Befehlsverarbeitung in mehrere Zyklen in dem vorangegangenen
MehrParitäts-Bit- Generator
Projektseminar: Hardware-Beschreibung mit VHDL Seite: 4 2 Aufgaben 2.1 Aufgabe Parity-Generator 2.1.1 Aufgabenstellung Beschreiben sie eine Hardware, welche ein Paritäts-Bit an eine 31-stellige Bitfolge
MehrMultiplizierer. Beispiel komplexer arithmetischer Schaltung. Langsamer als Addition, braucht mehr Platz. Sequentielle Multiplikation
Multiplizierer 1 Beispiel komplexer arithmetischer Schaltung Langsamer als Addition, braucht mehr Platz Sequentielle Multiplikation Kompakte kombinatorische Variante mit Carry-Save-Adders (CSA) Vorzeichenbehaftete
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 6: Computergrafik und Sprites
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2009 Versuch 6: Computergrafik und Sprites 12. Mai 2009 Fachbereich 12: Informatik und Mathematik Institut für Informatik Professur für Eingebettete
MehrSignale und Logik (3)
Signale und Logik (3) Zwischenbilanz der bisherigen Erkenntnisse: Prof. Dr. A. Christidis SS 205 Energieformen (z.b. Elektrizität) können auch als Signale (=Informationsträger) genutzt werden (vgl. Telegraph).
MehrWirtschaftsingenieurwesen Elektronik/Schaltungstechnik Prof. M. Hoffmann FB ETIT Übung 7 Schaltnetze 2
Wirtschaftsingenieurwesen Elektronik/chaltungstechnik Prof. M. Hoffmann FB ETIT Übung 7 chaltnetze 2 Kenntnisse bezüglich der logischen Grundfunktionen sowie der Regeln und Gesetze der chaltalgebra sind
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
MehrERA-Zentralübung 12. Maximilian Bandle LRR TU München Maximilian Bandle LRR TU München ERA-Zentralübung 12
ERA-Zentralübung 12 Maximilian Bandle LRR TU München 27.1.2017 Schaltungsentwurf IV Rest von letzter Übung Aufgabe 11.1 Standardschaltnetze Aufgabe 10.3.3 Automaten 8 Erzeugung der Ausgabe Zuweisung der
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
MehrPraktikum Grundlagen von Hardwaresystemen Sommersemester Versuch 1: VHDL-Grundlagen
Praktikum Grundlagen von Hardwaresystemen Sommersemester 2007 Versuch 1: VHDL-Grundlagen 12. April 2007 Fachbereich 12: Mathematik für Informatik Institut für Informatik Professur für Technische Informatik
MehrLösungsvorschlag 4. Übung Technische Grundlagen der Informatik II Sommersemester 2009
Fachgebiet Rechnerarchitektur Fachbereich Informatik Lösungsvorschlag 4. Übung Technische Grundlagen der Informatik II Sommersemester 2009 Aufgabe 4.1: Zahlensysteme a) Bitte füllen Sie die leeren Zellen
MehrÜbungsblatt 3 (10 Punkte)
ingo.korb [ ] tu-dortmund.de thomas.hess [ ] tu-dortmund.de niklas.ueter [ ] tu-dortmund.de Übung zur Vorlesung Eingebettete Systeme Wintersemester 15/16 Übungsblatt 3 (10 Punkte) Präsenzaufgaben zur Woche
MehrVersuch: D1 Gatter und Flipflops
Versuch: D1 Gatter und Flipflops Vorbemerkung Es ist nicht beabsichtigt, daß Sie einfach eine vorgegebene Versuchsanordnung abarbeiten. Sie sollen die hier angewendeten Zusammenhänge erkennen und verstehen.
Mehr3-BIT VOLLADDIERER MIT EINZELNEM EINGABE-DATENBUS
Physikalisches Praktikum für Vorgerückte 3-BIT VOLLADDIERER MIT EINZELNEM EINGABE-DATENBUS Simon C. Leemann, Abteilung für Physik Versuch: Digitale Elektronik November 998 Zusammenfassung In diesem Bericht
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
MehrComputerarithmetik (15b)
Computerarithmetik (15b) Dazugehöriges Beispiel: Schleife Schritt Multiplikator Multiplikand Produkt 0 Anfangswerte 0011 0000 0010 0000 0000 1 1a: 1 -> Prod. = Prod. + Mcand 0011 0000 0010 0000 0010 2:
MehrComputational Engineering I
DEPARTMENT INFORMATIK Lehrstuhl für Informatik 3 (Rechnerarchitektur) Friedrich-Alexander-Universität Erlangen-Nürnberg Martensstraße 3, 91058 Erlangen 01.02.2017 Probeklausur zu Computational Engineering
MehrLehrveranstaltung: Digitale Systeme. KS-Praktikums-Vorbereitung Dipl.-Inf. Markus Appel , , ,
Lehrveranstaltung: Digitale Systeme KS-Praktikums-Vorbereitung Dipl.-Inf. Markus Appel 24.04.2012, 25.04.2012, 26.04.2012, 27.04.2012 Übersicht Kombinatorische Schaltungen n-bit-addierer Minimierungsverfahren
MehrSchülerseminar Programmieren einer Ampelsteuerung
Prof. G. Kemnitz Institut für Informatik 23. April 2016 1/17 Schülerseminar Programmieren einer Ampelsteuerung Prof. G. Kemnitz Institut für Informatik 23. April 2016 Prof. G. Kemnitz Institut für Informatik
MehrHardware Praktikum 2008
HaPra 2008 - Versuchsreihe 4 - Aufbau eines Volladdierers Hardware Praktikum 2008 Prof. Dr. H.-J. Wunderlich Dipl.-Inf. M. Imhof Dipl.-Inf. S. Holst Übersicht Entwurfsablauf Diskreter Aufbau Rechnergestützter
Mehr