F Ein einfacher Modellprozessor

Ähnliche Dokumente
Teil 2: Rechnerorganisation

H Hypothetischer Prozessor


Von-Neumann-Architektur

Steuerwerk einer CPU. Einführung in die Technische Informatik Falko Dressler, Stefan Podlipnig Universität Innsbruck

Die Mikroprogrammebene eines Rechners

Prozessorarchitektur. Kapitel 1 - Wiederholung. M. Schölzel

Tutorium Rechnerorganisation

Kap 4. 4 Die Mikroprogrammebene eines Rechners

INFORMATIK Oberstufe. Funktionsweise eines Rechners

2. Computer (Hardware) K. Bothe, Institut für Informatik, HU Berlin, GdP, WS 2015/16

Datenpfad einer einfachen MIPS CPU

Datenpfad einer einfachen MIPS CPU

Grundlagen der Rechnerarchitektur

Mikrocomputertechnik. Thema: Der Aufbau des XC888-Mikrocontrollers -Teil 1 -

L3. Datenmanipulation

Mikroprozessor als universeller digitaler Baustein

Mikrocomputertechnik. Einadressmaschine

Vorlesung Rechnerarchitektur. Einführung

RO-Tutorien 3 / 6 / 12

Das Prinzip an einem alltäglichen Beispiel

CPU Speicher I/O. Abbildung 11.1: Kommunikation über Busse

Teil VIII Von Neumann Rechner 1

Arithmetische und Logische Einheit (ALU)

1. Übung - Einführung/Rechnerarchitektur

Der Toy Rechner Ein einfacher Mikrorechner

Arbeitsfolien - Teil 4 CISC und RISC

4 Der Von-Neumann-Rechner als Grundkonzept für Rechnerstrukturen

Lösungsvorschlag 9. Übung Technische Grundlagen der Informatik II Sommersemester 2009

Mikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)

Systeme 1: Architektur

Einführung in die Informatik

Mikroprozessoren. Aufbau und Funktionsweise. Christian Richter. Ausgewählte Themen der Multimediakommunikation SS 2005

Johann Wolfgang Goethe-Universität

Integrierte Schaltungen

Computer-Architektur Ein Überblick

Technische Informatik 1

3. Grundlagen der Rechnerarchitektur

C. BABBAGE ( ): Programmgesteuerter (mechanischer) Rechner

Technische Informatik 1

Das Rechnermodell von John von Neumann

Mikrocomputertechnik. Adressierungsarten

Teil 1: Prozessorstrukturen

2.2 Rechnerorganisation: Aufbau und Funktionsweise

Mikroprozessortechnik. 03. April 2012

9.0 Komplexe Schaltwerke

Name: Vorname: Matr.-Nr.: 4. a) RISC-Architekturen müssen zur Decodierung von Maschinenbefehlen stets ein mikroprogrammierbares Steuerwerk verwenden.

Teil 1: Prozessorstrukturen

a. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF

Daniel Betz Wintersemester 2011/12

Rechnerarchitektur. M. Jakob. 1. Februar Gymnasium Pegnitz

Rechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at

ALU ALU. ALU-Aufbau. Eine ALU (arithmetisch-logische Einheit) besteht in der Regel aus. Addierer. Logischer Einheit. Shifter

1. Rechnersysteme (Einführung) VL1 2. Komponenten. 3. Daten und Informationen VL2 4. Von Neumann Maschine. 5. Computer und Software VL3

Einführung (0) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München

Technische Informatik. Der VON NEUMANN Computer

Einführung (1) Erster funktionsfähiger programmgesteuerter Rechenautomat Z3, fertiggestellt 1941 Bild: Nachbau im Deutschen Museum München

Prozessorentwurf (2) Einführung: im weiteren wird der Entwurf des Datenpfades Steuerwerkes eingeführt.

Rechnerstrukturen Winter WICHTIGE SCHALTNETZE. (c) Peter Sturm, University of Trier 1

Mikrocomputertechnik 2.Mikroprozessor

Mikrocomputertechnik 2.Mikroprozessor

Computer-Systeme. Teil 5: Central Processing Unit (CPU)

3 Rechnen und Schaltnetze

Die Arithmetisch-Logische Einheit ALU 74181

Prozessor HC680 fiktiv

Microcomputertechnik

3AA. Prof. Dr. Wolfgang P. Kowalk. Universität Oldenburg WS 2005/2006

Rechner Architektur. Martin Gülck

Technische Informatik 2 Adressierungsarten

05. Assembler-Programmierung. Datenstrukturen des ATMega32. Literatur

Organisatorisches. PDV und Robotik Fakultät 4 TUB 1 INFO4 Übung Assembler 1

Technischen Informatik I, WS 2004/05

7 Ein einfacher CISC-Prozessor

Programmieren. Kapitel 3: Wie funktioniert ein moderner Computer? Wintersemester 2008/2009. Prof. Dr. Christian Werner

Was ist die Performance Ratio?

ZENTRALEINHEITEN GRUPPE

Inhaltsverzeichnis. Inhaltsverzeichnis 3

Assembler-Programmierung

Allgemeine Struktur eines Digitalrechners

MOP: Befehlsliste für den Mikrocontroller 8051

Aufbau und Funktionsweise eines Computers

9.1. Aufbau einer Befehlspipeline

Brückenkurs / Computer

Institut für Informatik Prof. Dr. D. Hogrefe Dipl.-Inf. R. Soltwisch, Dipl.-Inform. M. Ebner, Prof. Dr. D. Hogrefe Informatik II - SS 04.

Neues vom STRIP Forth-Prozessor

Betriebssysteme Vorstellung

Zuse-Computer: Z1. erster Rechner mit binären Zahlen. Entwicklung der computergerechten. (Grundlage für IEEE-754) funktionierte leider nie zuverlässig

68000 Assembler. WAS ist ein Assembler? Ein System, das den Programmierer hilft, eine maschinennahe Programmierung zu realisieren.

Tutorium Rechnerorganisation

Fachbereich Medienproduktion

Binärcodierung elementarer Datentypen: Darstellung negativer Zahlen

bereits in A,3 und A.4: Betrachtung von Addierschaltungen als Beispiele für Schaltnetze und Schaltwerke

Klausur Technische Informatik 1 + E-Technik SS 2013 Prüfer: Sutter Hilfsmittel: keine

Fehlerkorrektur Bild Demoprozessor

Im Original veränderbare Word-Dateien

Name: ES2 Klausur Thema: ARM Name: Punkte: Note:

Inhalt. Prozessoren. Curriculum Manfred Wilfling. 28. November HTBLA Kaindorf. M. Wilfling (HTBLA Kaindorf) CPUs 28. November / 9

Ein- Ausgabeeinheiten

Technische Informatik I, SS 2001

Rechnergrundlagen SS Vorlesung

Transkript:

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 6. Datenpfad 7. Kontrollpfad 8. Befehlssatz 9. ein einfaches Steuerwerk F-2 Prozessor Prozessor = CPU ( Central Processing Unit ) Mikroprozessor = CPU auf einem Chip CPU = Steuerwerk + Rechenwerk + E/A-Werk Von Neumann Prinzip: Programme und Daten sind im gleichen Speicher in jedem Befehlszyklus wird ein Befehl geholt, dekodiert und ausgeführt ( Fetch/Decode/Execute ) E/A-Werk hier nicht weiter behandelt Prozessor (2) Wieso zunächst Betrachtung eines Modellprozessors? Modellprozessor: einfacher, übersichtlicher Aufbau aus bereits bekannten Komponenten einheitlicher Speicherzugriff kompakter Befehlssatz (ca. 35 Instruktionen) realer Prozessor: detaillierter Aufbau des Prozessors nicht dokumentiert sehr große Anzahl unterschiedlicher Speicherzugriffsmöglichkeiten sehr großer Befehlssatz (ca. 25 Instruktionen) viele komplexe, hier zunächst nicht betrachtete Architekturkonzepte (z.b. Instruktionspipelining, Parallelität, Out-of-Order Befehlsausführung) F-3 F-4

2 Aufbau des Modellprozessors 3 Organisation eines SRAM CPU besteht aus SRAM = Static Random Access Memory Datenpfad: Datenregister, ALU und MBR Adreßpfad: Programmzähler (PC), Inkrementer und Adreßregister (MAR) allgemeiner Aufbau: 2 b n D Flip-Flops 2 b Speicherzeilen Kontrollpfad: Instruktionsregister (IR), Kontrolleinheit und Statusregister (CCR) Speicher nicht Teil der CPU! je Zeile ein n-bit Wort Steuersignale E (Enable) und R/W (Read/Write) F-5 F-6 4 Beschreibung in RTL 4 Beschreibung in RTL (2) Arbeitsweise einer CPU läßt sich einfach durch den Transfer von Registerinhalten beschreiben Verwendung von RTL ( Register Transfer Language ) Notationen: D [D] [M(x)] [Y] [X] Datenregister D Inhalt von Datenregister D Inhalt des Speichers M an Adresse x Transfer des Inhalts von Register X nach Register Y Beispiele: [D] [D] Registerinhalt von D nach D kopieren [D] [M(3)] Speicherinhalt von Adresse 3 nach D kopieren [M(5)] [D] Registerinhalt von D nach Speicheradresse 5 kopieren [D] [D]+ Registerinhalt von D inkrementieren [D] [M([AR])] Speicherinhalt von Adresse aus Register AR nach D kopieren RTL ist eine Notation und keine Programmiersprache! RTL kann eingesetzt werden, um Abläufe im Modellprozessor einfach zu beschreiben Beispiel: durch den Befehl MOVE 4,D soll der Modellprozessor den Inhalt von Speicheradresse 4 lesen und in das Register D schreiben die Ausführung des Befehls kann in RTL beschrieben werden durch: [D] [M(4)] im folgenden werden in RTL die Phasen bei der Abarbeitung eines Befehls im Modellprozessor beschrieben: Befehlsholesequenz: RTL-Sequenz zum Holen des nächsten Befehls aus dem Speicher ( Fetch -Phase) Ausführungssequenz: RTL-Sequenz zur Ausführung des Befehls mit allen beteiligten Registern ( Decode - und Execute -Phase) F-7 F-8

5 Adresspfad des Modellprozessors 5 Adresspfad des Modellprozessors (2) PC enthält Adresse der Speicherzeile mit dem nächsten auszuführenden Befehl (Initialisierung mit [PC] ) n-bit Instruktion kann neben dem Opcode-Anteil auch einen b-bit Adress-Anteil a enthalten (im Modellprozessor gilt: n > b) Adresse i ist eine b-bit Zahl, die die i-te Zeile aus 2 b Speicherzeilen auswählt jede n-bit Speicherzeile kann einen Befehl enthalten Befehlsholesequenz in RTL: (nächster Befehl wird ins MBR und von dort in das Register IR geladen; Opcode-Anteil des Befehlswortes wird dem Steuerwerk übergeben) FETCH: [MAR] [PC] [PC] [PC] + [MBR] [M(MAR)] [IR] [MBR] CU [IR(Opcode)] in der Ausführungsphase wird dieser Adressanteil in das Register MAR geladen und dient als Speicheradresse Beispiel: RTL-Ausführungssequenz für Befehl MOVE 7,D : (Ausführungssequenz ist für jeden Befehl unterschiedlich!) MOVE: [MAR] [IR(Addr)] [MBR] [M(MAR)] [D] [MBR] F-9 F- 6 Datenpfad des Modellprozessors 6 Datenpfad des Modellprozessors (2) arithmetisch/logische Einheit: kann einstellige Operation auf Inhalt von D ausführen (Beispiel: NOT D) zwei Operanden aus D und aus Speicheradresse i verknüpfen (Beispiel: ADD 7,D) Ergebnis der arithmetisch/ logischen Operation in D Auswahl der ALU-Funktion durch Opcode und Steuerwerk Beispiel: RTL-Ausführungssequenz für Befehl ADD 7,D : ADD: [MAR] [IR(Addr)] [MBR] [M(MAR)] ALU [D]; ALU [MBR] [D] ALU Aufbau einer einfachen n-bit Arithmetisch/Logischen Einheit zur Addition, Multiplikation und bitweisen logischen Verknüpfung: Auswahl von Addierer, Logikeinheit oder Multiplizierer über zwei Multiplexer-Steuersignale ALU, ALU F- F-2

6 Datenpfad des Modellprozessors (3) entweder die n höherwertigen oder die n niedrigwertigen Bits des 2n-Bit breiten Produktes y = a b können ausgegeben werden bei Wahl von NOT =, CIN = und SUB = kann Addierer auch y = a b berechnen Funktionen der Logikeinheit: L 2 L L Bedeutung y i = a i b i (bitweises UND) y i = a i + b i (bitweises ODER) y i = a i b i (bitweises XOR) y i = a i y i = a i (bitweises NOT) y i = a i+ für i < n, y n = c in, c out = a y i = a i+ für i < n, y n = a n, c out = a y i = a i für i >, y = c in, c out = a n 6 Datenpfad des Modellprozessors (4) ALU generiert vier Statussignale: N =, wenn Ergebnis y negativ ist, d.h. wenn y n = Z =, wenn y = ist (Zero), d.h. wenn y n +... + y + y = V =, wenn im Addierer bei c n c n 2 = ein arithmetischer Überlauf (overflow) generiert wird C =, wenn bei Addition zweier n-bit Zahlen das Carry-Bit c n gesetzt ist bzw. wenn bei Subtraktion zweier n-bit Zahlen das Carry-Bit c n nicht gesetzt ist oder : C = bei Linksschieben einer n-bit Zahl a mit Bit a n =, bzw. bei Rechtsschieben von a mit Bit a = F-3 F-4 7 Kontrollpfad des Modellprozessors 8 Befehlssatz des Modellprozessors fast alle Algorithmen haben for- oder while-schleifen und if-verzweigungen datenabhängiger Kontrollfluß Statusregister CCR speichert Statussignale N,Z,V und C der letzten ALU-Operation bedingte Sprungbefehle testen ein Bit ( Flag ) des CCR und verzweigen zur Zieladresse a, wenn das Flag gesetzt ( Set ) oder nicht gesetzt ( Clear ) ist Beispiel: RTL-Sequenz zur Ausführung des Befehls BCC a (BCC = Branch on Carry Clear ) IF [C]= THEN [PC] [IR(ADDR)] Lade- und Speicherbefehle: MOVE a,d MOVE D,a MOVE #x,d Laden von [D] mit Inhalt von Speicheradresse a Speichern von [D] in Speicheradresse a unmittelbares Laden von D mit einer Konstanten x beim Befehl MOVE #x,d befindet sich die Konstante x im Adreßfeld der Instruktion ( Move Immediate ): zur Kodierung von x stehen nur b < n Bits zur Verfügung beim Transfer [D] [IR(Addr)] wird durch Ergänzung führender Bits mit demwert x b ein n-bit Operand generiert Beispiel: MOVE #-, D Seien z.b. b = und n = 6, dann ist im Adressteil des Befehlsworts die Bitsequenz kodiert; in das Register D wird jedoch geladen! F-5 F-6

8 Befehlssatz des Modellprozessors (2) arithmetische Befehle: ADD a,d Addition von [M(a)] und [D] ADD #x,d Addition der Konstanten x zu [D] ADDC a,d Addition von [M(a)] und [D] mit Carry SUB a,d Subtraktion der Speicherstelle [M(a)] von [D] SUB #x,d Subtraktion der Konstanten x von [D] CMP a,d wie SUB a,d jedoch ohne Modifikation von D CMP #x,d wie SUB #x,d jedoch ohne Modifikation von D SUBC a,d Subtraktion der Speicherstelle [M(a)] von [D] mit Carry MUL a,d Bits n,..., der Multiplikation von [M(a)] und [D] MULH a,d Bits 2n,...,n der Multiplikation von [M(a)] und [D] 8 Befehlssatz des Modellprozessors (3) logische Befehle: AND a,d OR a,d XOR a,d NOT D LSR D ASR D ROR D LSL D ROL D bitweise UND-Verknüpfung von [M(a)] und [D] bitweise ODER-Verknüpfung von [M(a)] und [D] bitweise XOR-Verknüpfung von [M(a)] und [D] Negation (er-komplement) von [D] Logisches Rechtsschieben von [D]: Null wird eingeschoben, Bit von D nach Flag C Arithmetisches Rechtsschieben von [D]: Vorzeichenbit wird eingeschoben, Bit von D nach Flag C Rechtsrotieren von [D]: Wert von Flag C wird eingeschoben, Bit von D nach Flag C Logisches Linksschieben von [D]: Null wird eingeschoben, Bit n von D nach Flag C Linksrotieren von [D]: Wert von Flag C wird eingeschoben, Bit n von D nach Flag C F-7 F-8 8 Befehlssatz des Modellprozessors (4) Befehle zur Steuerung des Kontrollflusses: BCC a Sprung bei C= ( Branch on Carry Clear ) BCS a Sprung bei C= ( Branch on Carry Set ) BNE a Sprung bei Z= ( Branch on Not Equal ) BEQ a Sprung bei Z= ( Branch on Equal ) BPL a Sprung bei N= ( Branch on Plus ) BMI a Sprung bei N= ( Branch on Minus ) BVC a Sprung bei V= ( Branch on overflow Clear ) BVS a Sprung bei V= ( Branch on overflow Set ) BRA a Unbedingter Sprung ( Branch Always ) STOP Anhalten der CPU 8 Befehlssatz des Modellprozessors (5) weitere Sprungbefehle für den Vergleich zweier Zahlen: BLT a BLE a BGT a BGE a BLS a BHI a Sprung falls arithmetisch kleiner ( Branch on Less Than ), d.h. wenn N V + N V = Sprung falls arithmetisch kleiner oder gleich ( Branch on Less or Equal ), d.h. wenn Z + N V + N V = Sprung falls arithmetisch größer ( Branch on Greater Than ), d.h. wenn Z N V + Z N V = Sprung falls arithmetisch größer oder gleich ( Branch on Greater or Equal ), d.h. wenn N V + N V= Sprung falls logisch kleiner oder gleich ( Branch on Lower or Same ), d.h. wenn C + Z = Sprung falls logisch größer ( Branch on Higher ), d.h. wenn C Z = F-9 F-2

8 Befehlssatz des Modellprozessors (6) 8. Beispielprogramme Vergleich zweier Zahlen erfolgt i.a. durch CMP a,d oder CMP #x,d Vergleiche D mit Wert an Speicherstelle a bzw. mit Konstante #x arithmetischer Vergleich (bei Zahlen im Zweierkomplement): BLT: Sprung bei [D] < [M(a)] bzw. [D] < #x BLE: Sprung bei [D] [M(a)] bzw. [D] #x BGT: Sprung bei [D] > [M(a)] bzw. [D] > #x BGE: Sprung bei [D] [M(a)] bzw. [D] #x logischer Vergleich (bei vorzeichenlosen Zahlen): BLS: Sprung bei [D] < [M(a)] bzw. [D] < #x BCS: Sprung bei [D] [M(a)] bzw. [D] #x BHI: Sprung bei [D] > [M(a)] bzw. [D] > #x BCC: Sprung bei [D] [M(a)] bzw. [D] #x Programmfragment in Hochsprache: int a,b,c; c = (a+b) / 2; c = abs(c); if (c > ) c = ; gleiches Programmfragment in Maschinensprache: RUN: MOVE a,d load a ADD b,d add b ASR D divide by 2 BPL POS >? NOT D s compl. ADD #,D 2 s compl. POS: MOVE D,c store c MOVE #,D load SUB c,d BPL END c >? MOVE #,D MOVE D,c store c = END: STOP a:... Wert a b:... Wert b c:... Ergebnis c F-2 F-22 8. Beispielprogramme (2) 9 ein einfaches Steuerwerk Programmfragment zur Berechnung von n! in Hochsprache: int i,n,f; f=; for (i=;i<=n;i++) f=f*i; gleiches Programmfragment in Maschinensprache: FAK: MOVE #,D load MOVE D,f store f = MOVE D,i store i = LOOP: MOVE n,d load n SUB i,d compute n i BMI END n i <? MOVE f,d load f MUL i,d compute f = f i MOVE D,f store f MOVE i,d load i ADD #,D i = i + MOVE D,i store i BRA LOOP END: STOP i:... Wert i n:... Wert n f:... Ergebnis f benötigte Steuersignale für den Datenfluss im Modellprozessor: Taktsignale Clock R für jedes Register R (aus negativ flankengetriggerten D Flip-Flops) Steuersignale G i zur Kontrolle des Zugriffs auf Busleitungen Steuersignale R/W und E für Speicher Steuersignale für ALU F-23 F-24

9. Tristate-Puffer Ausgang eines Tristate-Puffers kann die Zustände, oder x ( floating bzw. unconnected ) annehmen Tristate-Puffer werden eingesetzt, wenn mehrere Komponenten Signale über einen gemeinsam genutzten Bus übertragen sollen 9.2 Entwurf eines einfachen Steuerwerks Schritt : Dekodierung der Instruktion 6 Bit sind ausreichend zur Kodierung aller Befehle für jeden Befehl x existiert eine Steuerleitung I x der Dekoder aktiviert eine Steuerleitung, sobald der zugehörige Opcode ins IR geladen wird F-25 F-26 9.2 Entwurf eines einfachen Steuerwerks (2) Schritt 2: Entwurf eines Sequencers jeder Befehl des Modellprozessors kann durch Zusammenfassen von RTL-Schritten in max. 6 Taktzyklen ausgeführt werden bei gleichzeitiger Ausführung mehrerer RTL Schritte werden diese durch Semikolon getrennt in eine Zeile geschrieben Beispiel: ADD a,d Fetch- Phase: [MAR] [PC] [MBR] [M(MAR)] ; [PC] [PC]+ [IR] [MBR]; 9.2 Entwurf eines einfachen Steuerwerks (3) Sequencer generiert in jedem Taktzyklus i =,...,5 ein Signal T i kann als synchrones Schaltwerk aus einem Modulo-6 Zähler mit Reseteingang (zählt von bis ) und einigen UND-Gattern entworfen werden: Decode/ Execute- Phase CU [IR(Opcode)] ; [MAR] [IR(Addr)] [MBR] [M(MAR)] ALU [D] ; ALU [MBR] ; [D] ALU F-27 F-28

9.2 Entwurf eines einfachen Steuerwerks (4) Schritt 3: Ermittlung der Steuersignale für Taktzyklen bis 5 Transfers und resultierende Steuersignale für die Fetch-Phase: T : [MAR] [PC] G = ; Clock MAR = T : [MBR] [M(MAR)] R/W = ; G 6 = ; G = ; Clock MBR = [PC] [PC]+ G 2 = ; Clock PC = T 2 : [IR] [MBR]; G 7 = ; Clock IR = Transfers und resultierende Steuersignale für die Execute-Phase sind für jeden Befehl unterschiedlich, z.b. für ADD a,d : T 3 : CU [IR(Opcode)] [MAR] [IR(Addr)] G 3 = ; Clock MAR = T 4 : [MBR] [M(MAR)] R/W = ; G 6 = ; G = ; Clock MBR = T 5 : ALU [D] G = ; L 2 = L = L = ALU [MBR] G 7 = ; NOT = ; CIN = ; SUB = [D] ALU ALU = ALU 2 = ; G 2 = ; Clock D = 9.2 Entwurf eines einfachen Steuerwerks (4) Schritt 4: Kombination der Steuersignale die Signale der Execute-Phase jedes Befehls müssen mit dem zugehörigen Dekoder- Signal konjunktiv verknüpft werden, z.b.: Clock D = T 5 I ADD a,d die resultierenden Signale müssen dann disjunktiv zusammengefasst werden, z.b.: G 7 = T 2 + T 5 I ADD a,d + T 5 I SUB a,d +... F-29 F-3 9.3 Nachteile des Modellprozessors Lernziele nur ein einzelnes Datenregister erfordert eine sehr häufige Speicherung von Zwischenergebnissen im RAM kein Aufruf von Unterprogrammen möglich kein indizierter Zugriff auf Komponenten a[i] eines Feldes keine Hardwareunterstützung von Gleitkommazahlen und Division in ALU keine Unterstützung eines größeren Adressraums mit mehr als 2 b Adressen (mit b = Breite des Adressfeldes in Instruktion) keine Unterbrechungen ( Interrupts ) langsam (getrennte Fetch- und Execute-Phasen, sechs Taktzyklen je Befehl) aufwendiges Schaltwerk zur Generierung der Steuersignale Begriffe: CPU, Daten-/ Adress-/ Kontrollpfad, SRAM, Opcode, Statusregister, Programmzähler, Sequencer,... Verständnis der Arbeitsweise eines von-neumann Rechners (Fetch-/Decode-/Execute-Phase) Aufbau und Befehlssatz eines einfachen Prozessors Beschreibung des Ablaufs von Befehlen unter Verwendung von RTL Verständnis einfacher Maschinenprogramme Unterschied von Mikroarchitektur und Instruktionssatz- Architektur Entwurf eines einfachen Prozessors: ALU Steuerwerk in diskreter Logik F-3 F-32