Universelle Registermaschine

Slides:



Advertisements
Ähnliche Präsentationen
Der Einfachstrechner in Aktion
Advertisements

Programmierung: Einführung
Die Schulkonsole für Lehrerinnen und Lehrer
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil3.
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Vorteile der Online-Produkte
Telefonnummer.
CPCP Institute of Clinical Pharmacology AGAH Annual Meeting, 29. Februar 2004, Berlin, Praktischer Umgang mit den Genehmigungsanträgen gemäß 12. AMG Novelle.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Modelle und Methoden der Linearen und Nichtlinearen Optimierung (Ausgewählte Methoden und Fallstudien) U N I V E R S I T Ä T H A M B U R G November 2011.
Workshop zur Medienarbeit der katholischen Kirche Aspekte des Religionsmonitors Berlin, 02. April 2008.
1 JIM-Studie 2010 Jugend, Information, (Multi-)Media Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
= = = = 47 = 47 = 48 = =
-17 Konjunkturerwartung Europa September 2013 Indikator > +20 Indikator 0 a +20 Indikator 0 a -20 Indikator < -20 Europäische Union gesamt: +6 Indikator.
E / IDE Enhanced / Integrated Device Elektronics
Scratch Der Einstieg in das Programmieren. Scatch: Entwicklungsumgebung Prof. Dr. Haftendorn, Leuphana Universität Lüneburg,
© 2006 W. Oberschelp, G. Vossen Rechneraufbau & Rechnerstrukturen, Folie 2.1.
Grundkurs Theoretische Informatik, Folie 2.1 © 2006 G. Vossen,K.-U. Witt Grundkurs Theoretische Informatik Kapitel 2 Gottfried Vossen Kurt-Ulrich Witt.
Aufbau und Funktionsweise von Prozessoren
Vorlesung: 1 Betriebliche Informationssysteme 2003 Prof. Dr. G. Hellberg Studiengang Informatik FHDW Vorlesung: Betriebliche Informationssysteme Teil2.
Vorlesung 2 Rechnerarchitektur Universität Bielefeld – Technische Fakultät AG Rechnernetze und verteilte Systeme Peter B. Ladkin
Rechnerarchitektur Vorlesung 2 Peter B. Ladkin
1Ausgewählte Themen des analogen Schaltungsentwurfs Kleinsignalmodell gmvgs rds vgs 0 + -
Differentieller Stromverstärker
Schieferdeckarten Dach.ppt
Rechnerarchitektur.
Rechneraufbau & Rechnerstrukturen, Folie 12.1 © W. Oberschelp, G. Vossen W. Oberschelp G. Vossen Kapitel 12.
Der Simple As Possible Computer
1. 2 Schreibprojekt Zeitung 3 Überblick 1. Vorstellung ComputerLernWerkstatt 2. Schreibprojekt: Zeitung 2.1 Konzeption des Kurses 2.2 Projektverlauf.
Bild 1.1 Copyright © Alfred Mertins | Signaltheorie, 2. Auflage Vieweg+Teubner PLUS Zusatzmaterialien Vieweg+Teubner Verlag | Wiesbaden.
20:00.
© Gabriele Sowada © Gabriele Sowada 2 Manuell Beispiel 1 demonstriert die Vorgehensweise bei der manuellen Programm- Eingabe am.
Zusatzfolien zu B-Bäumen
SK / , , in Hochkössen und der Wildschönau flow Ski- und Snowboardschule Intersport Menzel.
Aufbau eines von-Neumann- Rechners Marcel Waldvogel.
Das 19. Jahrhundert: John Ruskin ( ) und die Kunsterziehungsbewegung in England.
Digitaltechnik Klaus Becker 2007.
NEU! 1 2. Wo kommt diese Art von Rezeptor im Körper vor?
Analyse von Ablaufdiagrammen
PROCAM Score Alter (Jahre)
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
Symmetrische Blockchiffren DES – der Data Encryption Standard
PARTENARIAT ÉDUCATIF GRUNDTVIG PARTENARIAT ÉDUCATIF GRUNDTVIG REPERES KULTURELLER ZUSAMMENHALT UND AUSDEHNUNG DER IDEEN AUF EUROPÄISCHEM.
Großer Altersunterschied bei Paaren fällt nicht auf!
MINDREADER Ein magisch - interaktives Erlebnis mit ENZO PAOLO
1 (C)2006, Hermann Knoll, HTW Chur, FHO Quadratische Reste Definitionen: Quadratischer Rest Quadratwurzel Anwendungen.
Analyseprodukte numerischer Modelle
+21 Konjunkturerwartung Europa Dezember 2013 Indikator > +20 Indikator 0 bis +20 Indikator 0 bis -20 Indikator < -20 Europäische Union gesamt: +14 Indikator.
Pigmentierte Läsionen der Haut
Schutzvermerk nach DIN 34 beachten 20/05/14 Seite 1 Grundlagen XSoft Lösung :Logische Grundschaltung IEC-Grundlagen und logische Verknüpfungen.
Einführung in die Astronomie und Astrophysik I Kapitel III: Das Planetensystem 1 Kapitel III: Das Planetensystem.
Folie Beispiel für eine Einzelauswertung der Gemeindedaten (fiktive Daten)
Vortrag von Rechtsanwältin Verena Nedden, Fachanwältin für Steuerrecht zur Veranstaltung Wege zum bedingungslosen Grundeinkommen der Piratenpartei Rhein-Hessen.
1 Mathematical Programming Nichtlineare Programmierung.
Technische Frage Technische Frage Bitte löse die folgende Gleichung:
Ertragsteuern, 5. Auflage Christiana Djanani, Gernot Brähler, Christian Lösel, Andreas Krenzin © UVK Verlagsgesellschaft mbH, Konstanz und München 2012.
D 11 Adress- Dekoder
Johann Baron von Neumann
SiLeBAT Sicherstellung der Futter- und Lebensmittelwarenkette bei bio- und agro-terroristischen (BAT)-Schadenslagen.
Bildergalerie PRESEASON CAMP Juni 2014 Romanshorn Get ready for the Season!
Kw MoDiMiDoFrSaSo 14 1 Semester- beginn: SS Vorlesungs- beginn: SS April 2008.
Es war einmal ein Haus
Sportverletzungen Fussgelenk-Tapeverband
Kompetenztraining Jura Martin Zwickel / Eva Julia Lohse / Matthias Schmid ISBN: © 2014 Walter de Gruyter GmbH, Berlin/Boston Abbildungsübersicht.
1 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt 10 pt 15 pt 20 pt 25 pt 5 pt Wie.
1 Medienpädagogischer Forschungsverbund Südwest KIM-Studie 2014 Landesanstalt für Kommunikation Baden-Württemberg (LFK) Landeszentrale für Medien und Kommunikation.
Monatsbericht Ausgleichsenergiemarkt Gas – Oktober
Monatsbericht Ausgleichsenergiemarkt Gas – November
Der Prozessor Von Stephan Blum.
Speicher CPU Steuerwerk Rechenwerk 1 Befehlsregister 2 Befehlszähler 3
 Präsentation transkript:

Universelle Registermaschine Klaus Becker 2003

Programmierbare Systeme

Universelle Registermaschine als Rechnermodell Teil 1 Universelle Registermaschine als Rechnermodell

Verarbeitungseinheit Registermaschine Adresse Register Progr.zähler Befehl 0: 5 1: 3 2: 0 3: 0 4: 0 .. 0 JMP 3 1 INC 0 2 DEC 1 3 TST 1 > 4 JMP 1 5 HLT Speicher (Registern) Verarbeitungseinheit

Registermaschinenbefehle Erhöhe Register i um 1. Gehe zu Zeile x+1. > x INC i Erniedrige Register i um 1. Gehe zu Zeile x+1. > x DEC i > x JMP i Gehe zu Zeile i. Wenn Register i ungleich 0 ist, dann gehe zu Zeile x+1, sonst zu Zeile x+2. > x TST i > x HLT Beende die Bearbeitung.

Registermaschine in Aktion 0: 5 1: 3 2: 0 3: 0 4: 0 .. > 0 JMP 3 1 INC 0 2 DEC 1 3 TST 1 4 JMP 1 5 HLT 0: 5 1: 3 2: 0 3: 0 4: 0 .. 0 JMP 3 1 INC 0 2 DEC 1 > 3 TST 1 4 JMP 1 5 HLT 0: 5 1: 3 2: 0 3: 0 4: 0 .. 0 JMP 3 1 INC 0 2 DEC 1 3 TST 1 > 4 JMP 1 5 HLT 0: 5 1: 3 2: 0 3: 0 4: 0 .. 0 JMP 3 > 1 INC 0 2 DEC 1 3 TST 1 4 JMP 1 5 HLT 0: 6 1: 3 2: 0 3: 0 4: 0 .. 0 JMP 3 1 INC 0 > 2 DEC 1 3 TST 1 4 JMP 1 5 HLT 0: 6 1: 2 2: 0 3: 0 4: 0 .. 0 JMP 3 1 INC 0 2 DEC 1 > 3 TST 1 4 JMP 1 5 HLT

Einfache Registermaschine Registermaschine als programmgesteuertes System Daten Programm 0: 5 1: 3 2: 0 3: 0 4: 0 .. > 0 JMP 3 1 INC 0 2 DEC 1 3 TST 1 4 JMP 1 5 HLT Eine Registermaschine bearbeitet beliebig eingebbare Daten nach einem fest vorgegebenen Programm.

Universelle Registermaschine Universelle Registermaschine als programmierbares System Programm 0: JMP 3 1: INC 0 2: DEC 1 3: TST 1 4: JMP 1 5: HLT 0: 0 0005 1: 0 0003 .. 0 0000 Daten Speicher (Registern) Verarbeitungseinheit Eine universelle Registermaschine bearbeitet beliebig eingebbare Daten nach einem beliebig vorgegebenen Programm.

Vereinheitlichung von Programm und Daten 0: JMP 3 1: INC 0 2: DEC 1 3: TST 1 4: JMP 1 5: HLT 0: 0 0005 1: 0 0003 .. 0 0000 Kodierung CPU INC: 1 DEC: 2 JMP: 3 TST: 4 HLT: 5 Daten Programm 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 CPU Daten

Rechnerarchitektur (nach von Neumann) Adressbus 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 PC IR Arbeitsspeicher Steuerwerk Datenbus Akku Rechenwerk

Befehl holen PC IR Akku Adressbus 3 0003 Arbeitsspeicher Steuerwerk 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 PC 3 0003 IR Arbeitsspeicher Steuerwerk Datenbus Akku Rechenwerk

Befehl dekodieren und ausführen Adressbus 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 PC 3 3 0003 IR Arbeitsspeicher Steuerwerk Datenbus Akku Rechenwerk

Fundamentalzyklus Wiederhole Befehl holen (fetch-Phase) Befehl dekodieren und ausführen (execute-Phase)

Steueralgorithmus Wiederhole Befehl holen Befehl dekodieren und ausführen Befehl holen WIEDERHOLE PC  ABus; PC  ABus; RInhalt  DBus; DBus  IR; op := Operatorteil(IR); adr := Adressteil(IR) FALLS op 1: adr  ABus; adr  ABus; RInhalt  DBus; DBus  Akku; adr  ABus; upAkku; adr  ABus; Akku  DBus; DBus  RInhalt; IncPC; 2: // analog 3: adr ABus; ABus  PC; 4: adr  ABus; adr  ABus; Registerinhalt  DBus; WENN DBus = 0 DANN IncPC; IncPC; BIS op = 5 // HLT Befehl dekodieren INC-Befehl ausführen JMP-Befehl ausführen TST-Befehl ausführen

Steuerung durch ein Mikroprogramm Befehl holen 0 10 1 10, 3, 11 2 0, 2 INC ausführen 10 12 11 12, 3, 7 12 12, 5 13 12, 4, 8, 13 14 0, 1 DEC ausführen 20 12 21 12, 3, 7 22 12, 6 23 12, 4, 8, 13 24 0, 1 JMP ausführen  30 12, 9 31 0, 1 TST ausführen  40 12 41 12, 3 42 12, 3, 14 43 13 44 0, 1 WIEDERHOLE PC  ABus; PC  ABus; RInhalt  DBus; Dbus  IR; op := Operatorteil(IR); adr := Adressteil(IR) FALLS op 1: adr  ABus; adr  ABus; RInhalt  DBus; DBus  Akku; adr  ABus; upAkku; adr  ABus; Akku  DBus; DBus  RInhalt; IncPC; 2: // analog 3: adr ABus; ABus  PC; 4: adr  ABus; adr  ABus; Registerinhalt  DBus; WENN DBus = 0 DANN IncPC; IncPC; BIS op = 5 // HLT

Entwicklung einer universellen Registermaschine Teil 2 Entwicklung einer universellen Registermaschine

Zielsetzung Mit Hilfe vorgegebener Hardwarebausteinen soll ein einfacher, voll funktionsfähiger (Bonsai) Rechner entwickelt werden.

Schritt 1: Akku-Register Wir beginnen mit dem Akku-Register. Der hier benutzte Akku soll 8-Bit-Dateneinheiten aufnehmen können. Akku

Register-Baustein hades.models.rtlib.register.RegRE CLK: Takt-Eingang (Register reagiert b. steigender Taktflanke) NR: Reset-Eingang (NR = 0: Reset) ENA: Enable-Eingang (ENA = 1: Register bereit zum Lesen) D: Daten-Eingang Q: Daten-Ausgang

Registertest hades.models.rtlib.io.IpinVector hades.models.rtlib.io.OpinVector

Schritt 2: Rechenwerk Akku Mit Hilfe des Rechenwerkes sollen Inkrementier- und Dekrementieroperationen ausgeführt werden Akku Rechenwerk

Rechenwerk hades.models.rtlib.arith.Decr hades.models.rtlib.arith.Incr hades.models.rtlib.muxes.Mux21

Schritt 3: Arbeitsspeicher Die im Akku-Register zu verarbeitenden Daten sollen aus einem Arbeitsspeicher geholt und wieder gespeichert werden. 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 Arbeitsspeicher Akku Rechenwerk

RAM-Baustein nCS: nCS = 0: (notChipSelect) RAM-Baustein aktiv hades.models.rtlib.memory.RAM nCS: nCS = 0: (notChipSelect) RAM-Baustein aktiv nWE: nWE = 0: DIN  adressiertes Register nWE = 1: adressiertes Register  DOUT A: Adress-Eingang DIN: Daten-Eingang DOUT: Daten-Ausgang

RAM-Test RAM  Akku Akku  RAM

Schritt 4: Datenbus Akku Der Datenaustausch zwischen dem Arbeitsspeicher und dem Akku-Register soll über einen Datenbus erfolgen. 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 Arbeitsspeicher Datenbus Akku Rechenwerk

Datenbus Datenbus Datenbus RAM  Akku Akku  RAM

Torsteuerung hades.models.rtlib.muxes.TriBuf Datenbus

tri-state-Verhalten S 1 E 1 A 1 S 1 E 1 A Z 1 S = 0: passiv 1 E 1 A 1 S 1 E 1 A Z 1 hochohmig S = 0: passiv S = 1: aktiv (durchlassen)

Schritt 5: Befehlsregister und Adressbus 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 3 0003 IR Arbeitsspeicher Datenbus Akku Rechenwerk

Befehlsregister Adressbus Bussplitter Speicher Befehlsregister Datenbus Reset

Befehlsregister hades.models.rtlib.register.RegRE

Bussplitter hades.models.rtlib.io.BusTapBottom

Bussystem 4-Bit-Adressbus Speicher mit 16 8-Bit-Registern Befehlsregister Befehlsregister 8-Bit-Datenbus

Schritt 6: Programmzähler Adressbus 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 PC 3 0003 IR Arbeitsspeicher Datenbus Akku Rechenwerk

Programmzähler Adressbus Programmzähler Befehlsregister Datenbus

Schritt 7: Programmbeendung Adressbus 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 PC 3 0003 IR Arbeitsspeicher Datenbus Akku Rechenwerk

Nullentdeckung Datenbus hades.models.rtlib.compare.CompareEqual

Schritt 8: Steuerwerk PC IR Akku Adressbus 3 0003 Arbeitsspeicher 0: 3 0003 1: 1 0007 2: 2 0008 3: 4 0008 4: 3 0001 5: 5 0000 6: 0 0000 7: 0 0005 8: 0 0003 .. 0 0000 PC 3 0003 IR Arbeitsspeicher Steuerwerk Datenbus Akku Rechenwerk

Steuerwerk Steuersignal Steuerwerk

Mikroprogramm Mikroprogramm Befehl holen 0 10 1 10, 3, 11 2 0, 2 INC ausführen 10 12 11 12, 3, 7 12 12, 5 13 12, 4, 8, 13 14 0, 1 ... Mikroprogramm

Ausführung des Mikroprogramms Befehl holen 0 10 1 10, 3, 11 2 0, 2 INC ausführen 10 12 11 12, 3, 7 12 12, 5 13 12, 4, 8, 13 14 0, 1 ... Mikroprogrammzähler Mikroprogrammzähler

Funktionseinheiten Programmzähler Befehlsregister Adressbus Arbeitsspeicher Datenbus Rechenwerk Steuerwerk Akkumulator

Funktionseinheiten PC IR Akku Adressbus Arbeitsspeicher Steuerwerk Datenbus Akku Rechenwerk

Literaturhinweise Klaus Merkert, Walter Zimmer: Handbuch zum Bonsai-Lehrcomputer. 1994. Siehe auch hsg.kaiserslautern.de/faecher/inf/material/bonsai