Come si costruisce un computer con un microprocessore Z80?


22

Ho il chip, quindi come aggiungerei: un orologio, RAM, disco rigido (forse EEPROM?), Uno schermo (schermo grafico LCD?), Metodo di input (tastiera, mouse)?


2
Per cosa vuoi usarlo? Ciò determina le tue esigenze.
Stevenvh,

6
Lo Z80 era davvero un processore davvero molto meraviglioso ai suoi tempi, ma i suoi giorni sono ormai lontani. A meno che tu non voglia davvero e tu debba usare uno Z80, non farlo. Usa qualcos'altro. Inserisci il tuo Z80 nel tuo museo privato come un campione di un processore che ha fatto una grande differenza nel percorso verso ciò che abbiamo ora.
Russell McMahon,

1
Penso che avrai difficoltà a trovare un assemblatore (incrociato) o un compilatore (incrociato) che gira su un PC attuale, per non parlare dei chip periferici, di una EPROM e di un programmatore corrispondente necessari per farlo funzionare. Preferirei Arduino che ha una vivace comunità su Internet, un sacco di librerie per ogni tipo di hardware, supporto allo sviluppo per Linux e Windows.
jippie,

1
@jippie Non è difficile, ma non ha molto senso a meno che tu non sia seriamente interessato al retrocomputer. C'è sdcc come compilatore e Farnell elenca tutti i chip periferici Z80 disponibili, anche se i prezzi sono piuttosto alti.
Starblue,

1
Ho uno Z80 con un timer per camera oscura che ho costruito nel 1980. Il timer funziona ancora, ma è sopravvissuto al mio bisogno di cronometrare esposizioni e bagni chimici in una camera oscura. È ancora un intervallometro funzionante, ma al momento non ne ho bisogno.
Olin Lathrop,

Risposte:


37

Non ascoltare gli altri dicendo che lo z80 è troppo vecchio o troppo duro. Lo z80 è stato progettato per questo compito. È la più vecchia CPU prodotta continuamente in circolazione per un motivo, è facile costruire sistemi informatici con essa. È una scelta eccellente per il tuo progetto.

Ci sono alcuni grandi libri come "progetti di progettazione di microcomputer z80" e " il manuale z80 " che ti aiuteranno davvero. Inoltre, guarda z80.info , hanno un sacco di informazioni che vorrai.

I tuoi obiettivi di progettazione sono realistici. La parte più difficile sarà lo schermo LCD, supponendo che tu voglia guidare un display VGA o NTSC. Ma anche quello, una volta entrato, non è poi così difficile. Sarà un tema ricorrente che incontrerai in questo progetto, le cose sono molto più facili del previsto. I primi microcomputer erano macchine straordinariamente semplici, aspettarsi di poterli duplicare in una certa misura nel 2012 è un obiettivo molto realistico. A parte i chip audio e video personalizzati, il resto della macchina è ancora disponibile come parti standard e facilmente comprensibile anche come un principiante.

Il sistema z80 utilizzabile più semplice avrà la CPU z80, un po 'di memoria flash o EEPROM che puoi ottenere gratuitamente da vecchie schede madri, ram e un uart per la comunicazione seriale (oltre a un max232 per il cambio di livello). Tutto questo è disponibile presso qualsiasi distributore di elettronica, sono componenti per fori passanti e possono essere costruiti su una breadboard. L'unica attrezzatura speciale di cui avrai bisogno è il programmatore flash / EEPROM (che mi sono costruito da un Arduino). Oh, e alcune altre cose come alcuni chip logici serie 74 per la decodifica degli indirizzi, il circuito di reset, ecc. E un oscillatore a cristallo.

In alternativa, è possibile sostituire l'UART con un chip Z80 Pio per comunicare con un moderno display a caratteri LCD in modalità parallela. Non farà davvero grafica, ma è facile da usare e la tua z80 è in grado di stampare le cose in anticipo. Una tastiera ps / 2 sarà piuttosto semplice da interfacciare.

Comunque, lo z80 è una buona scelta per il tuo progetto. Questo potrebbe sembrare complicato, ma alla fine non è poi così male. Costruisci in modo incrementale, inizia con il circuito di prova z80, collega una EEPROM in modo che possa eseguire un po 'di codice e costruire da lì.


1
La parte più critica del progetto verrà fuori con una sorta di sostituzione eprom a cui il codice può essere facilmente scaricato da un PC di sviluppo; ecco dove le cose erano primitive nell'era z80 rispetto ai microcontrollori di oggi con la programmazione in-circuit. In alternativa, se si ottiene un bootloader seriale convalidato (possibilmente con un'interfaccia "disco" della scheda SD SPI bitbang) e lo si inserisce in una EPROM effettiva, è possibile utilizzare facilmente la RAM statica per il codice in fase di sviluppo.
Chris Stratton,

Per sviluppare facilmente il tuo codice usa un emulatore eprom collegato al tuo PC. Funziona come ICP.

14

Fortunatamente c'è un libro - "Costruisci il tuo computer Z80" e sebbene sia ormai fuori stampa, l'autore Steve Ciarcia ha generosamente permesso che fosse distribuito liberamente come PDF: http://retro.hansotten.nl/index.php? page = Z80-SBC

Potresti anche dare un'occhiata al progetto N8VEM Home Brew Computer. È un Z80 SBC (computer a scheda singola) che può eseguire CP / M e può essere costruito in modo molto economico: i PCB costano $ 20 più la spedizione. Ora ci sono una varietà di schede di espansione disponibili (bus S100!) E dietro c'è una comunità ben informata e disponibile.

Ma prima di tutto, perché non prendere una manciata di componenti e creare il tester Z80 minimo per assicurarsi che la CPU funzioni - http://www.z80.info/z80test0.htm Questo è solo il filo dei dati e delle linee di indirizzi da eseguire continuamente la stessa istruzione (NOP) per dimostrare fondamentalmente, il cuore di un computer funzionante basato su Z80.


Link fantastici. Ora sono anche tentato di provare me stesso .. ;-)
Cees Meijer il

4

In effetti lo Z-80 è un vecchio chip, ma può essere una bella sfida costruire un computer con esso. A differenza di tutti i moderni microcontrollori, non ha molte funzionalità integrate, quindi dovrai aggiungere tu stesso RAM, EPROM e hardware di decodifica degli indirizzi. E questo è esattamente ciò che hanno fatto molti anni fa quando Tandy ha costruito il TRS-80. Dai un'occhiata agli schemi originali del Modello 1: http://electrickery.xs4all.nl/comp/trs80/doc/westHWBook.pdf


Inizi a rispettare quale hardware è integrato in chip come ATtiny e ATmega quando sfogli quel documento. Probabilmente avrò incubi spontanei solo dal cablaggio del bus dati e indirizzi.
jippie,

A parte lo stesso Z80, la maggior parte di ciò che era nel TRS-80 era dovuto alla sezione video e all'interfaccia dinamica della RAM. Inoltre, il conteggio dei chip era piuttosto più alto di quanto avrebbe potuto essere in b / c per qualche motivo hanno usato molte parti "esagonali" a 16 pin (ad esempio 74LS367) invece di un numero inferiore di parti "ottali" a 20 pin (ad esempio 74LS244). Il mio punto è che probabilmente potresti clonare un TRS80 facendo rotolare il tuo Z80. +1!
JustJeff,

4

Ho avuto la possibilità di costruire da zero un paio di computer basati sul microprocessore Z80, vale a dire un Sinclair ZX80 (una versione migliorata) e il Jupiter Ace della società Jupiter Cantab. Entrambi funzionano bene e queste macchine fanno uso di una tastiera e generano immagini in bianco e nero (con una risoluzione di 240 x 192 pixel) su un televisore. Maggiori informazioni su di loro:

http://www.jupiter-ace.co.uk/

http://searle.hostei.com/grant/zx80/zx80.html

Un successore dello ZX80, lo ZX Spectrum, non solo ha tutto questo, ma ha anche tutti i tipi di interfacce come l'interfaccia del disco IDE, l'interfaccia del floppy disk e anche per supporti di archiviazione più moderni come pen drive USB o schede SD.

Il mio consiglio: vai avanti e fallo! Ricerca, impara molto lungo la strada e divertiti. In questi giorni le cose sono molto più facili di quanto non fossero negli anni '80, abbiamo Internet, CPLD, FPGA, tutta la RAM statica che vogliamo, ecc.!

Buona fortuna e abbi cura di te.


3

Si avrà un molto tempo difficile costruire il proprio "computer" sulla base della Z80, con tutte le caratteristiche che hai descritto. Tuttavia, se riesci a vivere senza costruire tu stesso l'hardware, un computer Z80 che programmi da solo è completamente possibile.

La vecchia TI-83, TI-84 e simili (pre-TI-89, credo) sono calcolatori basati su Z80. Sono ancora calcolatori molto comuni e si possono avere per circa $ 100: http://www.amazon.com/s/ref=nb_sb_noss_1?url=search-alias%3Daps&field-keywords=ti-84

La calcolatrice offre tutto ciò che desideri tranne il mouse e poiché i calcolatori sono ancora comuni nelle scuole, troverai comunque un buon numero di sviluppatori Z80. StackOverflow può aiutarti in caso di domande: /programming/tagged/z80

Non sono sicuro di quanto sarà facile riprogrammare lo Z80 con il tuo codice.


1
Al liceo, abbiamo tenuto un corso di programmazione dell'Assemblea utilizzando le schede di sviluppo Z80; avevamo tutta la toolchain per programmarla con il suo codice Assembler, per accendere alcuni LED e visualizzare alcuni numeri con i display a 7 segmenti. Quindi penso che per un apprendimento più orientato all'hardware potrebbe essere un buon punto di partenza, ma chissà dove possono essere trovati ...
clabacchio

1
Sebbene vi sia merito nel suggerire una piattaforma di sviluppo potenzialmente hackerabile, l'affermazione iniziale "molto difficile" è esagerata. È vero che ci saranno molte fasi di un progetto per fare tutto sulla lista dei poster, ma nessuna di queste cose è particolarmente difficile, o al di fuori di ciò che era comunemente fatto dagli hobbisti all'inizio degli anni '80 o oggi.
Chris Stratton,


2

Non credo che lo Z-80 sia obsoleto. È un processore abbastanza potente a sé stante. Puoi trovare un assemblatore + IDE gratuito su www.zilog.com. È un ottimo strumento.

Se stai cercando di sostituire un PC, non preoccuparti. Se vuoi imparare molto sui microprocessori, vai avanti.

C'è molto materiale stampato relativo allo Z-80, all'interfaccia, alla programmazione, ecc.

Sebbene lo Z-80 non corrisponderà mai a un quad core a 3 GHZ, può comunque essere abbastanza veloce in termini umani. Ci sono anche processori più veloci in famiglia. Guarda la famiglia Z80S180. Ottieni molta energia, molte periferiche, tutte integrate in un unico pacchetto. Sì, rom e ram sono esterni, non te lo aspettavi TUTTO su un chip, vero? Ti mancherebbe l'intero concetto di un autobus! Tuttavia, NON proverei subito uno di questi progetti ad alta velocità.

Arduinos, lampone PI, ecc. Renditi conto che stai acquistando blocchi lego, non li stai progettando. Sì, si collegano insieme, ma il tuo contributo sarà limitato al software (OK, forse potresti progettare la tua scheda - ma lo farai?)

Lo Z-80 rimane un ottimo strumento di apprendimento. Così è l'8051, e ottieni la tua RAM, ROM, CPU e 1 MIPS in un unico pacchetto con il 51. Se vuoi, anche più veloce.

Non ascoltare le scelte fatte dagli altri. Decidi cosa vuoi fare e poi vai a farlo. È molto più facile eseguire il debug a 2 MHZ di 40.

Usa la potenza di Internet e raccogli alcuni schemi Z-80. Ce ne sono molti che galleggiano là fuori. Considera "Il microprocessore Z-80" di Gaonkar ISBN 0-02-340484-1 (Amazon può vendere copie usate per pochissimi $). In realtà, Gaonkar avrebbe risposto a tutte le domande che hai posto.


1

Lo z80 è così obsoleto, non sarai in grado di costruire nient'altro che una novità retro-computer con esso, ma ciò non significa che non sarebbe istruttivo e divertente da provare.

Se volessi solo dimostrare di poter eseguire una vecchia z80, probabilmente la metterei con una RAM statica 32Kx8 e un chip UART e brucerei un'immagine ROM TRS-80 Model I modificata in qualunque piccola EPROM / EEPROM sia in giro . L'intera mappa di memoria potrebbe essere decodificata con un chip MSI.

Non ci vorrebbe molto hacking s / w per cancellare le routine di decodifica della matrice della tastiera TRS-80 e sostituirle con una routine di input UART, né per trovare la routine di out dei caratteri e sostituirla con una routine di output UART. Quindi potrebbe essere collegato a una porta seriale del PC e il vecchio BASIC potrebbe essere visualizzato e interagito con esso.

Ciò dovrebbe dimostrare che stai eseguendo uno z80, senza il fastidio di provare a implementare molto I / O per esso.


2
Non credo che la Z80 sia obsoleta ... attualmente la serie di calcolatori della TI-83 lo usa come suo processore principale, e la TI-84 lo usa anche in un ASIC.
fuzzyhair2,

Cosa c'è di sbagliato nella costruzione di una novità retro-computer? Nessuno costruisce nulla a livello di chip tranne il divertimento e l'autoeducazione. Non quando puoi ottenere un'eccellente scheda madre pre-costruita per $ 5!
Isaac Rabinovitch,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.