4. Mikroprogrammierung (Firmware)
|
|
- Kirsten Kappel
- vor 5 Jahren
- Abrufe
Transkript
1 4. Mikroprogrammierung (Firmware) 4. Ein Mikroprogramm-gesteuerter Computer 4.2 Mikroprogramm-Beispiel: Multiplikation 4.3 Interpretation von Maschinenbefehlen durch ein Mikroprogramm 4. Mikroprogrammierung Zwei Techniken zur Implementierung von Maschinenbefehlen in Hardware: Die Ausführungsschritte für jeden einzelnen Maschinenbefehl werden direkt in Hardware implementiert. Dies führt bei einer typischen Anzahl von Maschinenbefehlen (ca. 256) zu sehr aufwendigen Schaltnetzen und Schaltwerken. Einführung einer Zwischenebene: Mikroprogrammierung. Ein Befehl des Mikroprogramms (Mikroinstruktion) besteht aus einer Bitfolge, die unmittelbar die Steuersignale für die Schaltnetze und Schaltwerke des Rechners darstellt. Eine Mikroinstruktion ist also sehr schnell und einfach ausführbar. Die Befehle der Maschinensprache werden durch Mikroprogramme interpretiert. Der Mikroprogrammspeicher kann neu geladen werden. Dadurch lassen sich verschiedene Befehlssätze flexibel implementieren. 4. Mikroprogrammierung 4-4. Mikroprogrammierung 4-2
2 Ein Mikroprogramm-gesteuerter Computer Aufbau der Mikroinstruktionen Jedes Bit der Mikroinstruktion entspricht einem Steuersignal! Abarbeitung einer Mikroinstruktion in fünf Phasen, die vom Taktgeber (Clock) vorgegeben werden. Taktgeberphase Steuersignale, die eingeschaltet werden können Die mit Phase 5 gekennzeichneten Steuersignale 4. Mikroprogrammierung Mikroprogrammierung 4-4
3 Die fünf Phasen Phase und 2: Addition, Subtraktion, Verschieben und Abspeichern in Registern Phase 3: Lesen und Schreiben im Hauptspeicher Phase 4: Addition/Subtraktion von Adressen Phase 5: Neuberechnung des Befehlszählers (MPC), der den nächsten auszuführenden Mikro-Befehl bestimmt 4.2 Ein Mikroprogrambeispiel: Ganzzahl-Multiplikation Der folgende Algorithmus beschreibt die Multiplikation von positiven ganzen Zahlen per Mikroprogramm. Es wird angenommen, dass die beiden Multiplikanden und das Ergebnis mit 6 Bits dargestellt werden können. Modul Multiplizieren { Multipliziert den Inhalt von Register C mit dem Inhalt von Register A und speichert das Ergebnis in die Hauptspeicherstelle } Setze MDR auf 0 Wiederhole A-mal Addiere C zu MDR Bringe in MAR und veranlasse Schreiben in den Hauptspeicher Die Zahl in Register C wird A-mal aufaddiert, das Resultat wird in Register MDR berechnet. Wir nehmen an, dass wir den Mikroprogrammspeicher durch einen nicht näher beschriebenen Mechanismus geladen haben. 4. Mikroprogrammierung Mikroprogrammierung 4-6
4 Mikroprogramm zur Multiplikation Symbolische Schreibweise für Mikroprogramme () Mikroanweisung Darstellung in Nullen und Einsen leicht lesbar für den Rechner, schwer lesbar für den Menschen. Deshalb führen wir eine symbolische Darstellung ein. Mikrospeicheradressen Mikroprogramm zur Multiplikation Mikro- Mikroanweisung Erläuterung speicheradresse 0 0+0ÆMDR; MPC+Æ MPC Initialisieren von MDR MPC+TESTZEROÆMPC Prüfen, ob A gleich Null 2 5ÆMPC Ja: Verlassen der Schleife 3 C+MDRÆMDR; MPC+ÆMPC Nein: Addiere C zu MDR 4 A-ÆA; 0+ÆMPC Vermindere A und gehe zum Schleifenanfang 5 0+ÆMAR; write; MPC+ÆMPC Schreibe das Produkt in Speicherstelle 4. Mikroprogrammierung Mikroprogrammierung 4-8
5 Komplexität des Mikroprogramms Effizienterer Algorithmus zur Multiplikation () Dieses Programm ist allerdings sehr ineffizient! Komplexitätsanalyse: Drei Mikroinstruktionen im Schleifenrumpf bei 6-Bit-Operanden maximal = Schleifendurchläufe im ungünstigsten Fall ca Mikroinstruktionen! Angelehnt an den Schulalgorithmus für Dezimalzahlen: Wiederholtes Linksverschieben des ersten Multiplikanden und Addition genau dann, wenn der zweite Multiplikand an der aktuellen Stelle ein -Bit hat =C x =A C einmal verschoben C zweimal verschoben Produkt 4. Mikroprogrammierung Mikroprogrammierung 4-0
6 Effizienterer Algorithmus zur Multiplikation (2) Effizienterer Algorithmus zur Multiplikation (3) Implementierung mit kleiner Modifikation: Beginn mit dem Bit links außen von A (wir rechnen von unten nach oben) Jeweils sofortiges Aufaddieren in MDR und Linksverschiebung von MDR Einfügen eines -Bits in A nach dem ersten Schritt zur Markierung des Endes der Multiplikation. Modul Multipliziere { Multipliziert den Inhalt von Register C mit dem Inhalt von Register A und belässt das Ergebnis in Register MDR } Setze MDR auf Null Falls das äußerst linke Bit von A gleich ist dann addiere C zu MDR Verschiebe MDR um eine Bitposition nach links Verschiebe A um eine Bitposition nach links Addiere zu A Solange bei A irgendein anderes Bit als das äußerste linke auf steht, führe aus Falls das äußerst linke Bit von A gleich ist dann addiere C zu MDR Verschiebe MDR um eine Bitposition nach links Verschiebe A um eine Bitposition nach links 4. Mikroprogrammierung 4-4. Mikroprogrammierung 4-2
7 Effizienterer Algorithmus zur Multiplikation (4) In symbolischer Schreibweise als Mikroprogramm: Mikroanweisung Erläuterung 0 0+0ÆMDR; MPC+TESTNEGÆMPC Setze MDR auf 0; prüfe, ob das führende Bit von A gleich ist C+MDRÆMDR; MPC+ÆMPC Ja: Addiere C zu MDR 2 0+MDR MDR; MPC+ÆMPC Verschiebe MDR 3 A+0 A; MPC+ÆMPC Verschiebe A 4 A+ÆA; MPC+ÆMPC Setze Endemarke bei A 5 MPC+TESTNEGÆMPC Prüfe, ob das führende Bit von A gleich ist 6 0ÆMPC Ja: Vorwärtssprung 7 0+MDR MDR; MPC+ÆMPC Nein: Verschiebe MDR 8 A+0 A; MPC+ÆMPC Verschiebe A 9 5ÆMPC Springe zum Schleifenbeginn 0 A+0 A; MPC+TESTZEROÆMPC Verschiebe A; prüfe, ob A gleich Null ist 4ÆMPC Ja: Ende erreicht 2 C+MDR MDR; MPC+ÆMPC Nein: Addiere C zu MDR 3 5ÆMPC Springe zum Schleifenbeginn Effizienterer Algorithmus zur Multiplikation (5) Als binäres Mikroprogramm (Speicherauszug) bedeutet Linksverschiebung um Bit und Transfer. 4. Mikroprogrammierung Mikroprogrammierung 4-4
8 Komplexität des neuen Mikroprogramms Laden von Mikroprogrammen Falls führendes Bit immer = (ungünstigster Fall), dann fünf Mikroinstruktionen im Schleifenrumpf (5, 6, 0, 2, 3) Bei 6-Bit-Operanden maximal 6 Schleifendurchläufe (führendes Bit wurde vorab separat behandelt). Insgesamt maximal 85 Mikroinstruktionen! In den meisten Fällen implementiert das Mikroprogramm eines Rechners einen Interpretierer für die Maschinenbefehle. Es wird vom Hersteller des Prozessors bereitgestellt und ist dann oft als ROM ausgebildet. Manchmal wird aber auch die Möglichkeit vorgesehen, den Mikroprogrammspeicher im Feld neu zu laden. Dadurch können beispielsweise nachträgliche Erweiterungen des Befehlssatzes implementiert werden, oder es kann der Befehlssatz eines anderen Rechners ausführbar gemacht werden (Emulation). Mikroprogramme werden auch als Firmware bezeichnet (zwischen Hard- und Software einzuordnen). 4. Mikroprogrammierung Mikroprogrammierung 4-6
9 4.3 Interpretation von Maschinenbefehlen Eine einfache Maschinensprache für eine Akkumulatormaschine: Programmbeispiel Berechne y = 2 x Hauptspeicher Anweisung der Erläuterung Adresse Maschinensprache 946 LOAD STORE 957 Setze y auf 948 LOAD JUMPZERO 959 Falls x=0, ist das Ende erreicht 950 SUBTRACT STORE 956 Subtrahiere von x 952 LOAD ADD STORE 957 Verdopple y 955 JUMP Diese Stelle enthält zu Beginn x 957 Diese Stelle enthält am Ende die Lösung y 958 Diese Stelle enthält den Wert 4. Mikroprogrammierung Mikroprogrammierung 4-8
10 Der Unterprogrammsprung als Maschinenbefehl Der Unterprogrammsprung (JUMPSUB) Rücksprung aus dem Unterprogramm (RETURN) Rücksprung über die indirekte Adresse in 945 Vorher Nachher Vorher Nachher 4. Mikroprogrammierung Mikroprogrammierung 4-20
11 Mehrfacher Aufruf eines Unterprogramms Algorithmus für den mikroprogrammierten Interpreter Modul Interpreter { Holt immer wieder Maschineninstruktionen aus dem Hauptspeicher und führt sie aus. } Übertrage 0 nach B Wiederhole Hole nächste Maschineninstruktion Addiere zu B Entschlüssele die Anweisung Führe die Anweisung aus ständig 4. Mikroprogrammierung Mikroprogrammierung 4-22
12 Der mikroprogrammierte Interpreter () Mikroanweisungen Erläuterung 0 B+0ÆMAR; lesen; MPC+ÆMPC Hole nächste Anweisung in MDR B+ÆB; MPC+MDR top bitsæmpc Addiere zum Befehlszähler und entschlüssele die Anweisung 2 3ÆMPC Laden (Load) 3 5ÆMPC Speichern (Store) 4 7ÆMPC Addieren (Add) 5 9ÆMPC Subtrahieren (Subtract) 6 2ÆMPC Multiplizieren (Multiply) 7 38ÆMPC Dividieren (Divide) 8 55ÆMPC Sprung (Jump) 9 56ÆMPC Sprung-bei-Null (Jumpzero) 0 59ÆMPC Sprung-bei-führendem -Bit (Jumpmsb) 62ÆMPC Unterprogrammsprung (Jumpsub) 2 65ÆMPC Rücksprung (RETURN) 3 0+MDRÆMAR; lesen; MPC+ÆMPC Führe LOAD aus 4 0+MDRÆA; 0+0ÆMPC HspÆAkku 5 0+MDRÆMAR; MPC+ÆMPC Führe STORE aus 6 A+0ÆMDR; schreiben; 0+0ÆMPC AkkuÆHsp 7 0+MDRÆMAR; lesen; MPC+ÆMPC Führe ADD aus 8 A+MDRÆA; 0+0ÆMPC Akku + HspÆAkku 9 0+MDRÆMAR; lesen; MPC+ÆMPC Führe SUBTRACT aus 20 A-MDRÆA; 0+0ÆMPC Akku - HspÆAkku 2... (siehe Folien weiter oben) Führe MULTIPLY aus Der mikroprogrammierte Interpreter (2) Führe DIVIDE aus MDRÆB; 0+0ÆMPC Führe JUMP aus 56 MPC+TESTZEROÆMPC Führe JUMPZERO aus 57 0+MDRÆB; 0+0ÆMPC A = NULL: verzweige ÆMPC A Null: weiter 59 MPC+TESTNEGÆMPC Führe JUMPMSB aus 60 0+MDRÆB; 0+0ÆMPC Führendes Bit von A ist 6 0+0ÆMPC Bit ist NUll: weiter 62 0+MDRÆMARÆC; MPC+ÆMPC Führe JUMPSUB aus 63 B+0ÆMDR; schreiben; MPC+ÆMPC Retten der Rücksprungadresse auf dem Modulanfang 64 C+ÆB; 0+0ÆMPC Sprung zum Modul 65 0+MDRÆMAR; lesen; MPC+ÆMPC Führe RETURN aus 66 0+MDRÆB; 0+0ÆMPC Springe auf Rücksprungadresse 4. Mikroprogrammierung Mikroprogrammierung 4-24
13 Zusammenfassung Jede einzelne Mikroinstruktion ist direkt in Hardware realisiert. Die einzelnen Bits entsprechen Steuerleitungen des Prozessors. Zur Interpretation von Maschinenbefehlen (Assembler-Befehlen) werden in der Regel mehrere Mikro- Instruktionen benötigt. Im normalen Betrieb des Prozessors bleibt der Mikroprogrammspeicher unverändert. Er enthält einen Interpretierer für die Maschinenbefehle des Rechners. Bei manchen Prozessoren kann der Mikroprogrammspeicher im Feld neu geladen werden. 4. Mikroprogrammierung 4-25
Steuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck
Steuerwerk einer CPU Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck Übersicht Implementierung des Datenpfads Direkte Implementierung Mikroprogrammierung
MehrKap.3 Mikroarchitektur. Prozessoren, interne Sicht
Kap.3 Mikroarchitektur Prozessoren, interne Sicht Kapitel 3 Mikroarchitektur 3.1 elementare Datentypen, Operationen und ihre Realisierung (siehe 2.1) 3.2 Mikroprogrammierung (zur Realisierung der Befehlsabarbeitung
MehrÜbung Praktische Informatik II
Übung Praktische Informatik II FSS 2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 20.03.09 4-1 Heutige große Übung Ankündigung
MehrTECHNISCHE HOCHSCHULE NÜRNBERG GEORG SIMON OHM Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl
MehrTutorium Rechnerorganisation
Woche 3 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
MehrControl Beispiel. Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Control
Control Beispiel Store R1 4 Bit Register R1 SUB 4 Bit Register R2 Store R2 R2 Bit 0 Control wird als kombinatorische Schaltung realisiert. Hierzu die Wahrheitstabelle: Eingabe R2 Bit 0 Zero 0 0 Ausgabe
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
Mehr5.1 Beschreibung des Prozessors M Programmierung in Maschinensprache. 5.1 Beschreibung des Prozessors M 68000
5. Programmierung in Maschinensprache (Assembler) 5.1 Beschreibung des Prozessors M 68000 5.1 Beschreibung des Prozessors M 68000 5.2 Adressierungsarten des M 68000 5.3 Maschinenbefehle des M 68000 5.4
Mehr5. Programmierung in Maschinensprache
5. Programmierung in Maschinensprache (Assembler) 5.1 Beschreibung des Prozessors M 68000 5.2 Adressierungsarten des M 68000 5.3 Maschinenbefehle des M 68000 5.4 Unterprogrammtechnik 5. Maschinensprache
MehrVon-Neumann-Architektur
Von-Neumann-Architektur Bisher wichtig: Konstruktionsprinzip des Rechenwerkes und Leitwerkes. Neu: Größerer Arbeitsspeicher Ein- und Ausgabewerk (Peripherie) Rechenwerk (ALU) Steuerwerk (CU) Speicher...ppppp...dddddd..
MehrDer Toy Rechner Ein einfacher Mikrorechner
Der Toy Rechner Ein einfacher Mikrorechner Dr. Gerald Heim Haid-und-Neu-Str. 10-14 76131 Karlsruhe 16. Mai 1995 Allgemeine Informationen 2 Quelle: Phil Kopmann, Microcoded versus Hard-Wired Logic, Byte
Mehr2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16
2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16 Version: 14. Okt. 2015 Computeraufbau: nur ein Überblick Genauer: Modul Digitale Systeme (2. Semester) Jetzt: Grundverständnis
Mehr3. Grundlagen der Rechnerarchitektur
3. Grundlagen der Rechnerarchitektur 3.1 Architektur des von-neumann-rechners 3.2 Maschinentypen: Einadressmaschine, Zweiadressmaschine 3.3 Befehlsformate und Adressierungstechniken 3.4 Beispiel: der Prozessor
MehrKap 4. 4 Die Mikroprogrammebene eines Rechners
4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).
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
MehrDie Mikroprogrammebene eines Rechners
Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.
MehrTechnische Informatik I - HS 18
Institut für Technische Informatik und Kommunikationsnetze Prof. L. Thiele Technische Informatik I - HS 18 Musterlösung zu Übung 3 Datum : 25.-26. Oktober 2018 Aufgabe 1: Wurzelverfahren nach Heron Das
Mehr3.1 Architektur des von-neumann-rechners. 3. Grundlagen der Rechnerarchitektur
3. Grundlagen der Rechnerarchitektur 3.1 Architektur des von-neumann-rechners 3.1 Architektur des von - Neumann - Rechners 3.2 Maschinentypen: Einadressmaschine, Zweiadressmaschine 3.3 Befehlsformate und
MehrRO-Tutorien 3 / 6 / 12
RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 4 AM 21.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation Mikroprogrammierung
MehrKontrollpfad der hypothetischen CPU
Kontrollpfad der hypothetischen CPU fast alle Algorithmen benötigen FOR- oder WHILE-Schleifen und IF.. ELSE Verzweigungen Kontrollfluß ist datenabhängig CCR speichert Statussignale N,Z, V,C der letzten
Mehrbereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke
Rechnerarithmetik Rechnerarithmetik 22 Prof. Dr. Rainer Manthey Informatik II Übersicht bereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke in diesem
MehrRechnerarithmetik. Vorlesung im Sommersemester Eberhard Zehendner. FSU Jena. Thema: Multiplikation
Rechnerarithmetik Vorlesung im Sommersemester 2008 Eberhard Zehendner FSU Jena Thema: Multiplikation Eberhard Zehendner (FSU Jena) Rechnerarithmetik Multiplikation 1 / 28 Multiplikation in UInt 2 (l),
MehrKontrollpfad der hypothetischen CPU
Kontrollpfad der hypothetischen CPU fast alle Algorithmen benötigen FOR- oder WHILE-Schleifen und IF.. ELSE Verzweigungen Kontrollfluß ist datenabhängig CCR speichert Statussignale N,Z, V,C der letzten
MehrEinführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München
Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München Einführung (2) Architektur des Haswell- Prozessors (aus c t) Einführung
Mehr3. Grundlagen der Rechnerarchitektur. Praktische Informatik 2. Wolfgang Effelsberg
3.1 Architektur des von-neumann-rechners 3.2 Maschinentypen: Einadressmaschine, Zweiadressmaschine 3.3 Befehlsformate und Adressierungstechniken 3.4 Beispiele: Die Prozessoren Texas Instruments MSP 430
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:
MehrPraktikumsprotokoll Mikrorechentechnik I Versuch
Praktikumsprotokoll Mikrorechentechnik I Versuch Von-Neumann-Simulator Fabian Kurz, Alexander Eder Stephan Stiebitz, Phillip Burker 5. November 2004 Inhaltsverzeichnis 1 Aufgabenstellung 2 2 Lösung 2 2.1
MehrComputersysteme. Stacks Anwendung in der Assembler-Programmierung
Computersysteme Stacks Anwendung in der Assembler-Programmierung 1 Unterprogramme Betrachten wir zunächst folgendes Programm m_mod_n : /Berechne m modulo n für positive Integerwerte m und n. /Beim Programmstart
Mehr1 Rechnerstrukturen 1: Der Sehr Einfache Computer
David Neugebauer, Informationsverarbeitung - Universität zu Köln, Seminar BIT I Inhaltsverzeichnis 1 Rechnerstrukturen 1: Der Sehr Einfache Computer 1 1.1 Komponenten................................. 1
MehrTechnische Informatik - Eine Einführung
Martin-Luther-Universität Halle-Wittenberg Fachbereich Mathematik und Informatik Lehrstuhl für Technische Informatik Prof. P. Molitor Ausgabe: 2005-02-21 Abgabe: 2005-02-21 Technische Informatik - Eine
MehrPrinzipieller Aufbau und Funktionsweise eines Prozessors
Prinzipieller Aufbau und Funktionsweise eines Prozessors [Technische Informatik Eine Einführung] Univ.- Lehrstuhl für Technische Informatik Institut für Informatik Martin-Luther-Universität Halle-Wittenberg
Mehr2.1 Rechnersichten 2.2 Rechnerorganisation: Aufbau und Funktionsweise
Teil 1 Kapitel 2 Rechner im Überblick 2.1 Rechnersichten 2.2 Rechnerorganisation: Aufbau und Funktionsweise Frank Schmiedle Technische Informatik I 2.1 Rechnersichten Modellierung eines Rechners Zusammenspiel
Mehrb i Ergänzung zu Vollkonjunktionen (ohne Indizierung i = 0... n-1): q = a b a b q = a b q = a b a b a b
Ansatz: Die Realisierung von arithmetischen Operationen mit Logikgattern führt zu ähnlichen Verarbeitungsstrukturen für arithmetische und logische Befehle Parallele Zahlwort/oder Logikverarbeitung ist
Mehr9. Assembler: Der Prozessor Motorola 68000
9.1 Architektur des Prozessors M 68000 9.2 Adressierungsarten des M 68000 9-1 9.1 Beschreibung des Prozessors M 68000 Charakteristische Daten des 56 Maschinenbefehle 14 Adressierungsarten Zweiadressmaschine
Mehr9. Assembler: Der Prozessor Motorola 68000
9.1 Architektur des Prozessors M 68000 9.2 Adressierungsarten des M 68000 9-1 9.1 Beschreibung des Prozessors M 68000 Charakteristische Daten des 56 Maschinenbefehle 14 Adressierungsarten Zweiadressmaschine
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:
MehrPraktikum Rechnerstrukturen Bogen 2
Praktikum Rechnerstrukturen Bogen 2 Mikroprogrammierung I Department Informatik, AB TAMS MIN Fakultät, Universität Hamburg Vogt-Kölln-Str. 30 D22527 Hamburg Steuerwerk µ µmux DEODER 4: 2: Flag Offset Offset
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
Mehr13.2 Übergang zur realen Maschine
13.2 Übergang zur realen Maschine Bernd Becker Technische Informatik II Unterschiede zwischen abstrakter und realer Maschine 1. Bei realer Maschine nur ein Speicher M für Daten und Befehle. M ist endlich.
MehrFakultät Angewandte Informatik Lehrprofessur für Informatik Übungen zur Vorlesung Informatik I, Blatt 2 - Musterlösung
WS 2011/2012 Fakultät Angewandte Informatik Lehrprofessur für Informatik 31.10.2011 Prof. Dr. Robert Lorenz Übungen zur Vorlesung Informatik I, Blatt 2 - Musterlösung Aufgabe 5 * Wenden Sie den in der
Mehr4. Mikroprogrammierung 4a - 1
4. Mikroprogrammierung 4.1 Motivation 4.2 Eine einfache Mikroarchitektur 4.3 Die Integer Java Virtual Machine und der Stack 4.4 Die Mikroprogrammiersprache MAL 4.5 Optimierung der Mikroarchitektur 4. Mikroprogrammierung
MehrRandom Access Machine (RAM) Berechenbarkeit und Komplexität Random Access Machines
Random Access Machine (RAM) Berechenbarkeit und Komplexität Random Access Machines Wolfgang Schreiner Wolfgang.Schreiner@risc.jku.at Research Institute for Symbolic Computation (RISC) Johannes Kepler University,
MehrOrganisatorisches (1)
Organisatorisches (1) Abteilung Echtzeitsysteme und Kommunikation Prof. Dr. Nett nett@ivs.cs.uni-magdeburg.de Sekretariat: Frau Duckstein, Tel. 67-18345 pduckste@ivs.cs.uni-magdeburg.de Gebäude 29/ Etage
MehrEinführung in die Rechnerarchitektur (ERA) Zentralübung 6 am 2. Dezember 2016
Einführung in die Rechnerarchitektur (ERA) Zentralübung 6 am 2. Dezember 26 Mikroprogrammierung (): Leitwerk und Maschinenbefehls-Interpretationsschleife Ausblick auf Speicher/Rechenwerk Josef Weidendorfer
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
MehrBegriffe, die auf eine Multiplikation oder Division hinweisen
Fachbegriffe der Addition und Subtraktion Bei der Addition werden Zahlen zusammengezählt: 2 + 4 = 6 1. Summand 2. Summand Summe Bei der Subtraktion wird eine Zahl von einer anderen abgezogen. 7 2 = 5 Minuend
MehrRechnerstrukturen 1: Der Sehr Einfache Computer
Inhaltsverzeichnis 1: Der Sehr Einfache Computer 1 Komponenten.................................... 1 Arbeitsweise..................................... 1 Instruktionen....................................
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation Mikroprogrammierung
MehrTeil 2: Rechnerorganisation
Teil 2: Rechnerorganisation Inhalt: Zahlendarstellungen Rechnerarithmetik schrittweiser Entwurf eines hypothetischen Prozessors mit Daten-, Adreß- und Kontrollpfad Speicherorganisation Mikroprogrammierung
MehrÜbungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling
Übungen zur Vorlesung Technische Informatik I, SS 2002 Hauck / Guenkova-Luy / Prager / Chen Übungsblatt 5 Rechenwerke / Scheduling Aufgabe 1: Sie haben in der Vorlesung einen hypothetischen Prozessor kennen
MehrAdressierungsarten des 6809 (Forts.)
Adressierungsarten des 6809 (Forts.) Zusammenfassung zur indizierten Adressierung: 19 Beispiel-Programm 1 für 6809 6809-Assemblerprogramm zur Suche nach Leerzeichen (space, tab, return) in einem String:
MehrAlgorithmen zur Division
Algorithmen zur Division Umkehrung der Multiplikation: Berechnung von q = a / b durch wiederholte bedingte Subtraktionen und Schiebeoperationen in jedem Schritt wird Divisor b testweise vom aktuellen Rest
MehrF Ein einfacher Modellprozessor
F ein einfacher Modellprozessor F Ein einfacher Modellprozessor Einordnung in das Schichtenmodell:. Prozessor 2. Aufbau des Modellprozessors 3. Organisation eines SRAM 4. Beschreibung in RTL 5. Adresspfad
Mehr2.2 Rechnerorganisation: Aufbau und Funktionsweise
2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise
MehrMultiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: 1 1 0 1 0 Multiplikator
MehrLösungsvorschlag zu 1. Übung
Prof. Frederik Armknecht Sascha Müller Daniel Mäurer Grundlagen der Informatik 3 Wintersemester 09/10 Lösungsvorschlag zu 1. Übung 1 Präsenzübungen 1.1 Schnelltest a) Welche der Aussagen treffen auf jeden
MehrMotivation und Überblick
Motivation und Überblick Drei große Bereiche der Vorlesung: Darstellung von Zahlen in Rechnern Verarbeitung von Binärdaten auf der Ebene digitaler Schaltungen Programmierung auf Maschinenebene und relativ
MehrAlgorithmen zur Division
Algorithmen zur Division Umkehrung der Multiplikation: Berechnung von q = a / b durch wiederholte bedingte Subtraktionen und Schiebeoperationen in jedem Schritt wird Divisor b testweise vom aktuellen Rest
MehrZusammenhang Interrupt, Befehlszyklus, indirekte Adressierung und Mikroprogramm [Stallings, Kap. 15, S ]
2.1.2 Behandlung von Unterbrechungen (Interrupts) Zusammenhang Interrupt, Befehlszyklus, indirekte Adressierung und Mikroprogramm [Stallings, Kap. 15, S. 582-585] t 1 : MAR (PC) t 2 : MBR Memory[MAR] PC
MehrFAKULTÄT FÜR INFORMATIK
FAKULTÄT FÜ INFOMATIK TECNISCE UNIVESITÄT MÜNCEN Lehrstuhl für echnertechnik und echnerorganisation Prof. Dr. Martin Schulz Einführung in die echnerarchitektur Wintersemester 2017/2018 Lösungsvorschlag
MehrKlausur "Informatik I" vom Teil "Rechnerstrukturen"
Seite 1 von 6 Seiten Klausur "Informatik I" vom 19.2.1999 Teil "Rechnerstrukturen" Aufgabe 1: Binäre Informationsdarstellung (18 Punkte) Folgende Gleitkommadarstellung werde im folgenden zugrundegelegt
MehrMit den Rechenfunktionen werden zwei digitale Werte addiert oder subtrahiert.
Blatt:4.1 4. RECHENFUNKTIONEN Mit den Rechenfunktionen werden zwei digitale Werte addiert oder subtrahiert. 4.1 ADDITION VON DUALZAHLEN Sollen Dualzahlen addiert werden, so gilt folgende Rechenregel: 0
MehrClevere Algorithmen programmieren
ClevAlg 2017 Arithmetische Operationen Clevere Algorithmen programmieren Dennis Komm, Jakub Závodný, Tobias Kohn 27. September 2017 Addition zweier Zahlen Addition von Zahlen Wir stellen Zahlen als Strings
MehrTechnische Informatik I Übung 3: Assembler
Technische Informatik I Übung 3: Assembler Roman Trüb Computer Engineering Group, ETH Zürich 1 Lernziele Übung 3 Aufgabe 1 Aufbau und Aufruf von Funktionen in Assembler Assembler Codeanalyse Aufgabe 2
MehrLogische Bausteine. Grundlagen der Rechnerarchitektur Logik und Arithmetik 31
Logische Bausteine Sequentielle Schaltungen Shlt Grundlagen der Rechnerarchitektur Logik und Arithmetik 31 Sequentielle Schaltungen n Eingänge m Ausgänge n Eingänge m Ausgänge Zustand Ausgänge hängen nur
MehrArithmetik, Register und Speicherzugriff. Grundlagen der Rechnerarchitektur Assembler 9
Arithmetik, Register und Speicherzugriff Grundlagen der Rechnerarchitektur Assembler 9 Arithmetik und Zuweisungen Einfache Arithmetik mit Zuweisung C Programm: a = b + c; d = a e; MIPS Instruktionen: Komplexere
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
MehrAufbau eines Taschenrechners
siehe Skizze Aufbau einer Waage siehe Skizze Speichermöglichkeit Aufbau eines Taschenrechners Speichermöglichkeit Adressbus 65536 (2 16 ) (2 wegen der Zustände =aus und 1=an) => 65536 Möglichkeiten =>
MehrFehlerkorrektur Bild 3.190 Demoprozessor
7 Prozessor 3 0 Flags C V N Z A IP 0 SP AB 8 MS W/R DB 4 00h..6Fh Daten Speicher 70h..70h PA 71h..71h PB 72h..73h PC 74h..76h PD 80h..FFh Programm Speicher Fehlerkorrektur Bild 3.190 Demoprozessor Die
MehrALU ALU. ALU-Aufbau. Eine ALU (arithmetisch-logische Einheit) besteht in der Regel aus. Addierer. Logischer Einheit. Shifter
ALU ALU-Aufbau Eine ALU (arithmetisch-logische Einheit) besteht in der Regel aus Addierer Logischer Einheit Shifter Eingänge in eine ALU: zwei Operanden, Instruktionscode OP1 OP0 Ausgänge einer ALU: Ergebnis,
MehrVorlesung Rechnerarchitektur. Einführung
Vorlesung Rechnerarchitektur Einführung Themen der Vorlesung Die Vorlesung entwickelt an Hand von zwei Beispielen wichtige Prinzipien der Prozessorarchitektur und der Speicherarchitektur: MU0 Arm Speicher
MehrCompiler für f r Eingebettete Systeme (CfES)
Compiler für f r Eingebettete Systeme (CfES) Sommersemester 2009 Dr. Heiko Falk Technische Universität Dortmund Lehrstuhl Informatik 12 Entwurfsautomatisierung für Eingebettete Systeme Kapitel 9 Ausblick
Mehr1. TÜ-Zusammenfassung zum Modul Computersysteme
1. TÜ-Zusammenfassung zum Modul Computersysteme Kurzzusammenfassung 1. Kapitel Netzteil: Aufbau: Bereitgestellte Spannungen: 12V, -12V, 5V, -5V und 3.3V Leistung: Da bei Transformatoren die übertragbare
MehrMultiplikation. Grundlagen der Rechnerarchitektur Logik und Arithmetik 79
Multiplikation Grundlagen der Rechnerarchitektur Logik und Arithmetik 79 Multiplikation nach der Schulmethode Gegeben seien die Binärzahlen A und B. Was ist a * b? Beispiel: Multiplikand A: 1 1 0 1 0 Multiplikator
Mehr1. Übung - Einführung/Rechnerarchitektur
1. Übung - Einführung/Rechnerarchitektur Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: Was ist Hard- bzw. Software? a Computermaus b Betriebssystem c Drucker d Internetbrowser
MehrRechnerarithmetik. Vorlesung im Sommersemester Eberhard Zehendner. FSU Jena. Thema: Implementierung von Gleitkomma-Operationen
Rechnerarithmetik Vorlesung im Sommersemester 2008 Eberhard Zehendner FSU Jena Thema: Implementierung von Gleitkomma-Operationen Eberhard Zehendner (FSU Jena) Rechnerarithmetik Gleitkomma-Operationen 1
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
MehrINFORMATIK Oberstufe. Funktionsweise eines Rechners
INFORMATIK Oberstufe Funktionsweise eines Rechners Lehrplan Inf 12.3 (ca. 17 Std.): Grundlegende Kenntnisse über den Aufbau eines Rechners und seiner prinzipiellen Funktionsweise helfen den Schülern, den
Mehr11. Unterprogrammtechnik
11 Unterprogrammtechnik 111 Sprung und Rücksprung 112 Retten der Register 113 Parameter-Übergabe Programmierkurs II Wolfgang Effelsberg 11 Unterprogrammtechnik 11-1 111 Sprung und Rücksprung BSR Verzweige
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
MehrOffenbar hängt das Ergebnis nur von der Summe der beiden Argumente ab...
0 1 2 0 2 1 1 2 0 2 1 0 Offenbar hängt das Ergebnis nur von der Summe der beiden Argumente ab... 0 1 2 0 1 2 1 1 3 2 2 3 212 Um solche Tabellen leicht implementieren zu können, stellt Java das switch-statement
MehrProzessorarchitektur. Kapitel 1 - Wiederholung. M. Schölzel
Prozessorarchitektur Kapitel - Wiederholung M. Schölzel Wiederholung Kombinatorische Logik: Ausgaben hängen funktional von den Eingaben ab. x x 2 x 3 z z = f (x,,x n ) z 2 z m = f m (x,,x n ) Sequentielle
Mehrbei Unterlauf wird stattdessen Hälfte des Divisors addiert Ersparnisse einer Addition bzw. Subtraktion
6.2 Non-Restoring Division Restoring Division Divisor wird subtrahiert falls Unterlauf (Ergebnis negativ) Divisor wird wieder addiert im nächsten Durchlauf wird die Hälfte des Divisor subtrahiert (Linksshift
MehrAssembler Integer-Arithmetik
Assembler Integer-Arithmetik Dr.-Ing. Volkmar Sieh Department Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2008 Assembler Integer-Arithmetik 1/23 2008-04-01 Arithmetik
MehrSelbststudium Informationssysteme - H1102 Christian Bontekoe & Felix Rohrer
Übung RA, Kapitel 1.5 1. Beantworten Sie bitte folgende Repetitionsfragen 1. Beschreiben Sie in eigenen Worten und mit einer Skizze die Schichtung einer Multilevel Maschine. Folie 5, rechte Seite 2. Welche
Mehr4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen
4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen Ein Rechner besteht aus den folgenden Bestandteilen: Rechenwerk Rechenoperationen wie z.b. Addition, Multiplikation logische Verknüpfungen
MehrRISC-Prozessoren (1)
RISC-Prozessoren (1) 1) 8 Befehlsklassen und ihre mittlere Ausführungshäufigkeit (Fairclough): Zuweisung bzw. Datenbewegung 45,28% Programmablauf 28,73% Arithmetik 10,75% Vergleich 5,92% Logik 3,91% Shift
MehrProgrammierung. Wiederholung: verschiedene Register. Abarbeitung von Instruktionen. 4. Kapitel Von der Befehls- zur Programmenausführung
Wintersemester 2018/2019. Kapitel Von der Befehls- zur Programmenausführung Prof. Matthias Werner Professur Betriebssysteme Programmierung Wir können nun prinzipiell arithmetisch und logische Operationen
MehrProgrammierung. Abarbeitung von Instruktionen. Wiederholung: verschiedene Register. 4. Kapitel Von der Befehls- zur Programmenausführung
Wintersemester 2017/2018. Kapitel Von der Befehls- zur Programmenausführung Prof. Matthias Werner Professur Betriebssysteme Programmierung Wir können nun prinzipiell arithmetisch und logische Operationen
Mehr... Adressierung und Befehlsfolgen (1) Speicherbelegung. Hauptspeicheradressen. Inhalt von Speicherbelegungen: Operanden - Zahlen - Zeichen Befehle
Adressierung und Befehlsfolgen (1) Speicherbelegung Hauptspeicheradressen Inhalt von Speicherbelegungen: Operanden - Zahlen - Zeichen Befehle Address 0 1 i k 2-1 n bits...... word 0 word 1 b n-1 b 1 b
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Kapitel 22: Mima-X Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische Informatik
MehrMIMA Die Sicht von außen
MIMA Die Sicht von außen Aufgabensammlung & Lösungen zur MIMA-Assemblersprache 1. Juni 2004 Vorwort Weniger ist bekanntlich mehr. Auf diesem Prinzip baut die Architektur der MIMA auf. Das Befehlsformat
MehrARM-Cortex-M4 / Thumb-2-Befehlssatz Adressierungsarten und arithmetische Operationen
ARM-Cortex-M4 / Thumb-2-Befehlssatz Adressierungsarten und arithmetische Operationen Aufgabenstellung: - das beigefügte Assembler-Programm schrittweise ausführen - sich mit der Handhabung der Entwicklungswerkzeuge
MehrDatenpfad einer einfachen MIPS CPU
Datenpfad einer einfachen MIPS CPU Zugriff auf den Datenspeicher Grundlagen der Rechnerarchitektur Prozessor 19 Betrachten nun Load und Store Word Erinnerung, Instruktionen lw und sw sind vom I Typ Format:
MehrMikrocomputertechnik. Einadressmaschine
technik Einadressmaschine Vorlesung 2. Mikroprozessoren Einführung Entwicklungsgeschichte Mikroprozessor als universeller Baustein Struktur Architektur mit Akku ( Nerdi) FH Augsburg, Fakultät für Elektrotechnik
Mehr