Z80-Projekt

Hier steckt alles noch in den Kinderschuhen,
aber ein paar Informationen gibt es dennoch.

Hintergrund:

       Der Z80 ist die erfolgreichste CPU aller Zeiten und
       wurde in unzähligen Schaltungen verbaut. Er ist relativ
       einfach anzusteuern und nicht übermäßig komplex.

       Es existiert ein einfach auf eigene Hardware anpassbares
       Betriebssystem namens CP/M und ein darauf aufbauendes,
       extrem großes Softwareangebot. Einige Programme sind
       durch CP/M berühmt geworden.

       Außerdem wollte ich schon immer mal einen Computer bauen,
       denn wenn man etwas einmal gemacht hat, hat man bewiesen,
       dass man es verstanden hat.

Mainboard:

       * Z80A, 4 MHz (Hauptprozessor)
       * ATmega328p, 16 MHz (Systemcontroller)
       * 1 Erweiterungsslot für Speicher
       * 6 allgemeine Erweiterungsslots

Wozu ist der Systemcontroller da?

       Der AVR hat mehrere Funktionen:
       * Taktgenerator
       * Bootloader
       * Konfigurationsspeicher
       * Multifunktionsgerät

Erweiterungsslots:

       Es gibt acht Erweiterungsslots, wobei jeder Slot
       einen Interrupt und 32 I/O-Ports durch seine Position
       zugewiesen bekommt. Die oberen acht Adressbits stehen
       der Hardware zusätzlich zur Verfügung.

       Der erste Slot (Slot 0) ist fest mit dem Systemcontroller
       verbunden und als Teil des Mainboards nicht herausgeführt.
       Slot 1 ist für Speichererweiterungen reserviert.

       Das Pinout (eine Reihe, 36 Pins) der Slots ist wie folgt:
         +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
         |   1 |   2 |   3 |   4 |   5 |   6 |   7 |   8 |   9 |  10 |  11 |  12 |
         | Vcc |/MREQ|/RFSH| GND | n/c | n/c | /RES|/WAIT| /SEL| /INT| /RD | /WR |
         +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
         +-----+-----+-----+-----+-----+-----+-----+-----+
         |  13 |  14 |  15 |  16 |  17 |  18 |  19 |  20 |
         | D0  | D1  | D2  | D3  | D4  | D5  | D6  | D7  |
         +-----+-----+-----+-----+-----+-----+-----+-----+
         +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
         |  21 |  22 |  23 |  24 |  25 |  26 |  27 |  28 |  29 |  30 |  31 |  32 |  33 |  34 |  35 |  36 |
         | A0  | A1  | A2  | A3  | A4  | A5  | A6  | A7  | A8  | A9  | A10 | A11 | A12 | A13 | A14 | A15 |
         +-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+
       Nur Slot 1 enthält /MREQ und /RFSH.

Slot-Konfiguration

       Erweiterungskarten bekommen eine ID (8 Bit) zugewiesen.
       Die I/O-Ports 0x00-0x07 enthalten die IDs der verbauten
       Karten und werden im EEPROM des Systemcontrollers dauerhaft
       gespeichert, müssen dort aber manuell eingetragen werden.

Erweiterungskarten:

       * ID 0x01: Systemcontroller
       * ID 0x02: 32 KB SRAM
       * geplant: MMU + Flash + DRAM
       * geplant: Tastaturcontroller (PC-kompatibler KBC)
       * geplant: Grafik (TMS9929A)

Bilder (nicht ganz aktuell):

Mainboard
Mainboard
Bestückungsseite
Bestückungsseite
Lötseite
Lötseite