Ein Computer zum Selbstbauen



Ähnliche Dokumente
4D Server v12 64-bit Version BETA VERSION

Rechner Architektur. Martin Gülck

Installation LehrerConsole (für Version 6.2)

Mikrocontroller Grundlagen. Markus Koch April 2011

METTLER TOLEDO USB-Option Installation der Treiber unter Windows XP

Installation OMNIKEY 3121 USB

Facharbeit Informatik. Thema:

Informatik 1 Tutorial

Einführung in PHP. (mit Aufgaben)

Installationsanleitung für Update SC-Line

Rillsoft Project - Installation der Software

Hinweise zur Installation der USB Treiber für Windows XP 32bit

Computer-Architektur Ein Überblick

1 Aufgaben zu Wie funktioniert ein Computer?

Teil VIII Von Neumann Rechner 1

Staatlich geprüfter EDV-Führerschein

QUICK INSTALLATION GUIDE

Informatik I Tutorial

Jede Zahl muss dabei einzeln umgerechnet werden. Beginnen wir also ganz am Anfang mit der Zahl,192.

LPT1 Anschluss mit PCMCIA Karte

Die Installation von D-Link WLAN Karten unter Windows Vista

Howto: Erstellen einer Windows PE Boot-CD

Um die Installation zu starten, klicken Sie auf den Downloadlink in Ihrer (Zugangsdaten für Ihre Bestellung vom...)

Datensicherung. Beschreibung der Datensicherung

Version 0.3. Installation von MinGW und Eclipse CDT

In 12 Schritten zum mobilen PC mit Paragon Drive Copy 11 und Microsoft Windows Virtual PC

Die Mikroprogrammebene eines Rechners

Parametrier- & Analysesoftware ensuite Installationsanleitung und Systemanforderungen

Einführung in die Welt der Microcontroller

Technische Alternative elektronische Steuerungsgerätegesellschaft mbh. A-3872 Amaliendorf, Langestr. 124 Tel +43 (0)

Windows Server 2008 (R2): Anwendungsplattform

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

.htaccess HOWTO. zum Schutz von Dateien und Verzeichnissen mittels Passwortabfrage

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

Was ist PDF? Portable Document Format, von Adobe Systems entwickelt Multiplattformfähigkeit,

Windows7 32/64bit Installationsanleitung der ROBO-PRO-Software

Installationsanleitung für das KKL bzw. AGV4000 Interface

Formular»Fragenkatalog BIM-Server«

Internet online Update (Internet Explorer)

PROBLEME BEIM INSTALLIEREN REALTEK HD AUDIO TREIBER

schnell und portofrei erhältlich bei beck-shop.de DIE FACHBUCHHANDLUNG mitp/bhv

Prozessor HC680 fiktiv

Installationsanleitung für das Touch Display: S170E1-01 LCD A170E1-T3 ChiMei - egalaxy

Bedienungsanleitung. FAST SMS Set mit MacOS betreiben MAC

IntelliRestore Seedload und Notfallwiederherstellung

1 Voraussetzungen für Einsatz des FRITZ! LAN Assistenten

M a i l C r e d i t. \\Burt\user\Soutschek\FP\Technik\Frankiermaschinen\00_PC Software\MailCredit\Anleitung MailCredit Installation.

Installation für Windows XP (2000 und höher)

1 Was ist das Mediencenter?

Hier ist die Anleitung zum Flashen des MTK GPS auf der APM 2.0. Prinzipiell funktioniert es auch auf der APM 2.5 und APM 1.

Installationsanleitung für Upgrade auf Windows 10 (Windows 8.1)

Idimager ein Bildverwaltungsprogramm-DAM Software

Upgrade von Windows Vista auf Windows 7

Memeo Instant Backup Kurzleitfaden. Schritt 1: Richten Sie Ihr kostenloses Memeo-Konto ein

Anleitung. Einrichtung vom HotSync Manager für den Palm 1550 bis 1800 unter Windows 7. Palm SPT 1500 / 1550 Palm SPT 1700 / Bits & Bytes Seite 1

1. Sparen Sie sich den teuren Computerfachmann - lösen Sie die häufigsten PC- & Notebook-Probleme doch einfach selbst! 8

Einrichtung des Cisco VPN Clients (IPSEC) in Windows7

Wie halte ich Ordnung auf meiner Festplatte?

Konvertieren von Settingsdateien

Anleitung über den Umgang mit Schildern

Präsentation Von Laura Baake und Janina Schwemer

Installationsanleitung. Hardlock Internal PCI Hardlock Server Internal PCI

Sicherung persönlicher Daten

Schritt-Schritt-Anleitung zum mobilen PC mit Paragon Drive Copy 10 und VMware Player

In 15 einfachen Schritten zum mobilen PC mit Paragon Drive Copy 10 und Microsoft Windows Virtual PC

Installation. Windows. E-mP Ernst-mechanische Produkte Auf die Bell Linkenheim-Hochstetten Deutschland

Eigene Dokumente, Fotos, Bilder etc. sichern

Bedienungsanleitung PC-Konfigurationssoftware des ID Inclinometers

Mit der RoeTest-Software können Barcodes wie folgt erstellt werden:

DOKUMENTATION VOGELZUCHT 2015 PLUS

PicKit 3. Programmierung mit dem USB-Programmer PICkit3 (Microchip) AB

Wie richten Sie Ihr Web Paket bei Netpage24 ein

Fernseher Bild Bildschirm Computergeräte. Festplatte CD DVD Eingabegerät. Computertasten Mauszeiger Cursor rechten Maustaste

Microcontroller Kurs Microcontroller Kurs/Johannes Fuchs 1

Internet Explorer Version 6

Computeria Urdorf. Treff vom 16. Januar Was ist ein Computer?

Benutzerkonto unter Windows 2000

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Dieses Dokument beschreibt die Installation des Governikus Add-In for Microsoft Office (Governikus Add-In) auf Ihrem Arbeitsplatz.

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

WORKSHOP VEEAM ENDPOINT BACKUP FREE

1Computergrundlagen = 1*16 + 0*8 + 1*4 + 1*2 + 0*1

Mein eigener Homeserver mit Ubuntu LTS

Im Original veränderbare Word-Dateien

Dokumentation IBIS Monitor

Mikroprozessor als universeller digitaler Baustein

Hex Datei mit Atmel Studio 6 erstellen

Stecken Sie Ihren USB Stick oder Ihre externe USB Festplatte in den USB Steckplatz des Sinus 154 DSL SE.

Sharpdesk Kurzinformationen

IBM Software Demos Tivoli Provisioning Manager for OS Deployment

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Wenn keine Verbindung zwischen den Computern besteht, dann bist du offline.

Übertragung von MoData2 Dateien mit dem mobilen Gerätecenter unter Windows 7

Zurücksetzen von "Internetprotokoll (TCP/IP)" in Windows XP

Technische Bestandteile und deren Einsatz - Hardware

Anleitung zur Nutzung des SharePort Utility

ORGA 6000 in Terminalserver Umgebung


Transkript:

www. MyCPU.eu Ein Computer zum Selbstbauen von Dennis Kuschel

Gliederung: 1. Was ist die MyCPU und warum existiert sie? 2. Architektur der MyCPU 3. Befehlssatz 4. Emulator 5. Software 6. Nachbau

Was ist die MyCPU? 8 Bit Prozessor max. 8 MHz schnell Harvard Architektur 64k Programm- und 64k Datenspeicher adressierbar komplett aus Einzelteilen aufgebaut besteht aus 61 IC s der 74er Serie auf 5 Platinen verwendet keine Spezial-IC s kann von jedermann nachgebaut werden mit weiteren Komponenten entsteht ein kompletter PC

MyCPU: 5 Platinen, 61 IC s

Warum das Ganze? Die MyCPU entstand aus einer Laune heraus. Während der Vorbereitungen zu meiner Diplomprüfung hatte ich Langeweile. Inspiriert wurde ich durch die Vorlesung Digitaltechnik Die MyCPU sollte anfangs nur ein Taschenrechner werden Absolute kreative Freiheit (Architektur, Software, u.s.w.) Der Weg ist das Ziel. Es gibt viel zu lernen. Andere können hoffentlich etwas von meiner CPU lernen Andere haben eine Modelleisenbahn im Keller, ich eine CPU!

Aufbau der MyCPU external bus /RESET Resetcurcuit Accu Register Set (each register has 8 bit) X Register Y Register Scratch- Register Stack- Pointer Constant Value Speicher Bus-Interface Ein- / Ausgabewerk /RD, /WR D0-D7 A0-A15 Bus- Control Databus Driver Address Logic Program- Counter direct address Arithmetic Logic Unit (ALU) D-Input Output ALU Reg. 1 Register D-Input Reg. 2 Lookup Tables (2064kb) Output Bypass Flags Latch Carry Carry F-Input Flags Flags Register Register Driver 8Bit internal databus Rechenwerk (ALU) address readback Control Unit BusClk, 4MHZ /HALT Clock tribution Dis- Interrupt Logic OP-Code Latch Decoder Steuerwerk /INT Clock- Generator 5 Bit Counter 384 kb Microcode

Aufbau der MyCPU auf 5 Platinen Rechenwerk (ALU) Steuerwerk, Teil 1 Steuerwerk, Teil 2 Adressierungslogik Speicher und Ein-/Ausgabe

Ein kleiner Computer mit der MyCPU Zentraleinheit (MyCPU) Daten- und Programmspeicher (Permanent: ROM) Ein- und Ausgabe über ein Terminal via RS232 (kann ein PC sein) Bauteilkosten: 400, Arbeitsaufwand: Je nach dem... Basteln macht doch Spaß!

Ein echter Computer mit der MyCPU! 8 MHz CPU, 1216 kb Speicher, Festplatte, Tastatur, Grafikkarte

Aufbau des Steuerwerks Datenbus OP-Code- Register Microcode- Tabelle Schreibsignal- Decoder /WR1 /WR2 /WR3 /WR4 RESET 5 Bit Binärzähler 3 EPROMs Lesesignal- Decoder /RD1 /RD2 /RD3 /RD4 IRQ Flags Z V C Steuersignale (z.b. für ALU)

Ablaufsteuerung (State Machine) OP-Code laden, fortfahren mit State-Machine für den OP-Code OP-Code 1 Daten laden OP-Code 2 Zieladresse laden OP-Code n Accu := Accu + 1 Daten verarbeiten Daten speichern Sprung ausführen wenn Carry == 1 Innerhalb eines OP-Codes kann nicht zurück gesprungen werden. Das Überspringen von Mikro-OP s ist allerdings möglich.

Der Mikrocode Compiler Für die Erstellung der 256 Mikrocodes wurde ein spezieller Compiler geschrieben. Ein Mikrocode kann komfortabel nach dem Schema Lade OP- Code, lade Operand vom RAM in ALU, lade Inhalt von Akku in ALU, führe Addition aus, speichere das Ergebnis der Addition im Akku erstellt werden. Der Compiler erstellt unter Beachtung von Timing-Vorgaben den korrekten Code für die State- Machine. Mikrocode des OP-Codes ADC /* 82 - ADC abs */ { 0x82, FETCH, NOP, MOVE_ROMPC_TO_ADDR_LO INC_PC, MOVE_ACCU_TO_AREG1, MOVE_ROMPC_TO_ADDR_HI, INC_PC, MOVE_RAM_TO_AREG2, ALU_TO( MODE_ADC, CFLAG_VISIBLE, ALU_TO_ACCU ) LOAD_FLAGS_ALU NEXTOP, },

Assembler-Sprache Die Assembler-Syntax der MyCPU ist dem Prozessor 6502 sehr ähnlich. Es werden die meisten der 6502-Befehle unterstützt. Keine Binärkompatibilität! Es gibt keine relativen Sprünge, nur absolute (auch bedingte Sprünge sind bei der MyCPU immer absolut, da Zeitersparnis) Zusätzliche Befehle: -- MUL / DIV für 8/16 Bit Integer Zahlen -- 16 Bit Zeiger-Operationen: LPT, SPT, LPA, SPA -- Befehle zur schnellen Berechnung von CRC-Summen -- Befehle zur schnellen Umschaltung von Speicherseiten -- erweiterte Befehle für Stack-Manipulationen -- u.v.m.

Definition: Der MyCPU - Emulator Ein Emulator versucht eine reale Hardware so naturgetreu wie möglich auf einem anderen Computer nachzuahmen. Nutzen: Testen von Hardware, die noch nicht real existiert. Die CPU und die Grafikkarte wurden zuerst in Software emuliert, um deren Funktion sicherzustellen. Entwicklung von Software. Programme können auf dem PC geschrieben und im Emulator getestet werden. Der Emulator erlaubt vielfältige Debugging-Möglichkeiten, die die reale Hardware nicht bieten kann. Den MyCPU-Emulator gibt es für MS Windows und BSD/Linux.

Bildschirmausgabe der MyCPU Debug- und Status-Fenster

Software für die MyCPU Haupt-Programmiersprache: Assembler Es gibt 247 verschiedene OP-Codes. 9 OP-Codes sind noch undefiniert und können vom Anwender frei definiert werden (z.b. für Lehrzwecke). Ein OP-Code benötigt im Schnitt 9 Takt-Zyklen. Die MyCPU erreicht somit bei einer Taktrate von 8 MHz eine Geschwindigkeit von 0,89 MIPS. Es gibt zwei verschiedene Macro-Cross-Assembler für die MyCPU: ca65 (Unix/DOS) und hasm (nur DOS). Zusätzlich gibt es einen Assembler, der auch direkt auf der MyCPU läuft.

Zusätzliche Programmiersprachen Basic Die MyCPU lässt sich in einem alten Basic-Dialekt, dem Basic V2 (bekannt vom Commodore 64), programmieren. Basic-Programme, die für den C64 geschrieben wurden, funktionieren auch auf der MyCPU. ANSI-C Es gibt einen C-Cross-Compiler (cc65, DOS/Unix) für die MyCPU. Die gängigsten C-Funktionen werden direkt unterstützt: Konsolen- Ein-/Ausgabe, Dateizugriffe, Standard-C Laufzeitbibliothek (Speicherverwaltung, String-Funktionen, Systemaufrufe).

MyCPU Betriebssystem Das Betriebssystem ist zu 100% in Assembler geschrieben Das Betriebssystem belegt 160 kb ROM Bedient wird es über eine DOS-artige Eingabeaufforderung Alle gängigen DOS-Befehle sind vorhanden Bis zu 8 Speicherlaufwerke (RAM-Disk, Festplatte, CDROM, CF-Karte, Netzwerklaufwerk) werden unterstützt. Direkte Unterstützung von zwei seriellen (COM1: / COM2:) und einer parallelen (LPT1:) Schnittstelle Ein Basic-Interpreter ist integriert.

Vorhandene Software Folgende Software läuft auf der MyCPU: Basic-Interpreter für den schnellen Einstieg Text-Editor Assembler Netzwerk TCP/IP-Stack Telnet-Demon und HTTP Webserver Pico]OS - Echtzeit Betriebssystem Verschiedene Spiele Tools: Datei-Packer, Grafik-Viewer, und vieles mehr

RemoteFS Datenaustausch mit der MyCPU Oft ist es nötig, Dateien zwischen dem MyCPU-System und einem PC auszutauschen. Diese Aufgabe übernimmt der Remote Filesystem -Treiber: Die MyCPU wird über eine serielle Schnittstelle (RS232) mit einem Dateiserver verbunden. Ein beliebiges Verzeichnis auf dem Server-PC wird in der MyCPU als physikalisches Laufwerk abgebildet. Die MyCPU erhält Vollzugriff auf das freigegebene Verzeichnis. Alle DOS-Operationen sind möglich. Beispiel: 8:\>deltree 8:\windows

Nachbau Das gesamte MyCPU-Projekt ist Open Source. Auf www.mycpu.thtec.org gibt es ein Forum zum Austausch von Ideen und zum Stellen von Fragen. Platinenlayouts im PDF-Format stehen zum Selberätzen der Platinen bereit. Fertige Platinen können erworben werden. Die gesamte Hardware ist Open Source, die Schaltpläne und Platinenenlayouts können von der Homepage herunter geladen werden (Eagle-Format) Software und alles Weitere, das zum Nachbau benötigt wird, steht auf www.mycpu.eu zum download bereit.

ENDE