Bagaimana cara saya membangun komputer dengan mikroprosesor Z80?

22

Saya sudah mendapatkan chip, jadi bagaimana cara menambahkan: jam, RAM, hard drive (mungkin EEPROM?), Layar (layar grafis LCD?), Metode input (keyboard, mouse)?

pengguna8210
sumber
2
Anda ingin menggunakannya untuk apa? Itu menentukan persyaratan Anda.
stevenvh
6
Z80 benar-benar adalah prosesor yang sangat sangat sangat luar biasa pada zamannya, tetapi zamannya sudah lama berlalu. Kecuali Anda sangat ingin dan harus menggunakan Z80, jangan lakukan itu. Gunakan sesuatu yang lain. Masukkan Z80 Anda di museum pribadi Anda sebagai sampel prosesor yang membuat perbedaan besar dalam jalur menuju apa yang kita miliki sekarang.
Russell McMahon
1
Saya pikir Anda akan mengalami kesulitan menemukan (cross) assembler atau (cross) compiler yang berjalan pada PC saat ini, belum lagi chip periferal, EPROM dan programmer yang cocok yang Anda perlukan untuk menjalankannya. Saya akan menggunakan Arduino yang memiliki komunitas yang hidup di Internet, banyak perpustakaan untuk semua jenis perangkat keras, dukungan pengembangan untuk Linux dan Windows.
jippie
1
@ Jippie Ini tidak sulit, tetapi tidak masuk akal kecuali Anda serius melakukan retrocomputing. Ada sdcc sebagai kompiler dan Farnell mencantumkan semua chip periferal Z80 yang tersedia, meskipun harganya agak curam.
starblue
1
Saya memiliki Z80 yang menjalankan penghitung waktu gelap yang saya buat pada tahun 1980. Penghitung waktu masih berfungsi, tetapi penghilang waktu saya perlu waktu dan pemandian bahan kimia di kamar gelap. Ini masih merupakan intervalometer yang berfungsi, tetapi saat ini saya tidak menggunakannya.
Olin Lathrop

Jawaban:

37

Jangan dengarkan yang lain mengatakan bahwa Z80 terlalu tua atau terlalu keras. Z80 dirancang untuk tugas ini. Ini adalah CPU tertua yang diproduksi terus-menerus karena suatu alasan, mudah untuk membangun sistem komputer dengannya. Ini pilihan yang sangat baik untuk proyek Anda.

Ada beberapa buku hebat seperti "proyek desain komputer mikro z80" dan " buku pegangan z80 " yang akan sangat membantu Anda. Juga, lihat z80.info , mereka memiliki banyak informasi yang Anda inginkan.

Tujuan desain Anda realistis. Bagian tersulit adalah layar LCD, dengan asumsi Anda ingin menggerakkan layar VGA atau NTSC. Tetapi bahkan itu, begitu Anda masuk ke dalamnya, tidaklah sulit. Itu akan menjadi tema berulang yang akan Anda temui dalam proyek ini, banyak hal lebih mudah dari yang Anda harapkan. Mikrokomputer awal adalah mesin yang sangat sederhana, berharap Anda dapat menduplikasi mereka pada tingkat tertentu di tahun 2012 adalah tujuan yang sangat realistis. Selain chip suara dan video khusus, sisa mesin masih tersedia sebagai bagian dari rak dan mudah dimengerti bahkan sebagai pemula.

Sistem z80 yang dapat digunakan paling sederhana akan memiliki CPU z80, beberapa memori flash atau EEPROM yang dapat Anda peroleh secara gratis dari motherboard lama, ram, dan uart untuk komunikasi serial (ditambah max232 untuk pemindahan level). Semua ini tersedia di setiap distributor elektronik, melalui komponen lubang dan dapat dibangun di atas papan tempat memotong roti. Satu-satunya peralatan khusus yang Anda perlukan adalah programer flash / EEPROM (yang saya buat sendiri dari Arduino). Oh, dan beberapa hal lain seperti 74 chip logika seri untuk decoding alamat, rangkaian reset, dll dan osilator kristal.

Atau, Anda dapat mengganti uart dengan chip z80 pio untuk berkomunikasi dengan tampilan karakter LCD mode paralel modern. Ini tidak akan benar-benar membuat grafik, tetapi mudah digunakan dan Z80 Anda dapat mencetak hal-hal sejak awal. Keyboard ps / 2 akan lebih mudah digunakan.

Tapi bagaimanapun, Z80 adalah pilihan yang baik untuk proyek Anda. Ini mungkin terdengar rumit, tetapi pada akhirnya tidak terlalu buruk. Bangun secara bertahap, mulailah dengan sirkuit uji z80, pasang EEPROM sehingga dapat menjalankan beberapa kode dan hanya membangun dari sana.

UziMonkey
sumber
1
Bagian paling kritis dari proyek ini akan datang dengan semacam penggantian dari yang kode dapat dengan mudah diunduh dari PC pengembangan; di situlah hal-hal yang primitif di era Z80 dibandingkan dengan mikrokontroler saat ini dengan pemrograman di-sirkuit. Atau, jika Anda mendapatkan bootloader serial divalidasi (mungkin dengan "disk" kartu SD SPI bitbang) dan memasukkannya ke dalam EPROM yang sebenarnya, Anda dapat dengan mudah menggunakan ram statis untuk kode Anda yang sedang dikembangkan.
Chris Stratton
Untuk mengembangkan kode Anda dengan mudah, gunakan emulator eprom yang terhubung ke PC Anda. Bekerja seperti ICP.
14

Untungnya ada sebuah buku - "Bangun Komputer Z80 Anda sendiri" dan meskipun sekarang sudah tidak dicetak, penulis Steve Ciarcia dengan murah hati mengizinkannya untuk didistribusikan secara bebas sebagai PDF: http://retro.hansotten.nl/index.php? halaman = z80-sbc

Anda mungkin juga ingin melihat proyek Home Brew Computer N8VEM. Ini adalah Z80 SBC (komputer papan tunggal) yang dapat menjalankan CP / M dan dapat dibangun dengan sangat murah - PCB adalah $ 20 plus ongkos kirim. Sekarang ada berbagai papan ekspansi yang tersedia (S100 bus!) Dan ada komunitas berpengetahuan & membantu di balik itu semua.

Tapi pertama-tama, mengapa tidak mengambil beberapa komponen dan membangun tester Z80 minimal untuk memastikan CPU Anda bekerja - http://www.z80.info/z80test0.htm Ini hanya hardwire's data dan garis alamat untuk terus dieksekusi instruksi yang sama (NOP) untuk menunjukkan secara fundamental, jantung dari komputer berbasis Z80.

Sixer Berat
sumber
Tautan yang luar biasa. Sekarang saya bahkan tergoda untuk mencoba sendiri .. ;-)
Cees Meijer
4

Memang Z-80 adalah chip lama, tetapi bisa menjadi tantangan yang bagus untuk membangun komputer dengan itu. Tidak seperti semua mikrokontroler modern, mikrokontroler tidak memiliki banyak fitur bawaan sehingga Anda harus menambahkan RAM, EPROM, dan menangani sendiri perangkat keras pengodean sandi. Dan inilah tepatnya yang mereka lakukan bertahun-tahun lalu ketika Tandy membangun TRS-80. Lihatlah skema Model-1 yang asli: http://electrickery.xs4all.nl/comp/trs80/doc/westHWBook.pdf

Cees Meijer
sumber
Anda mulai menghargai perangkat keras apa yang diintegrasikan ke dalam chip seperti ATtiny dan ATmega saat menelusuri dokumen itu. Saya mungkin akan mengalami mimpi buruk spontan hanya dari data- dan alamat kabel bus.
jippie
Terlepas dari Z80 itu sendiri, sebagian besar yang ada di TRS-80 adalah karena bagian video dan antarmuka RAM yang dinamis. Juga, jumlah chip agak lebih tinggi daripada mungkin b / c untuk beberapa alasan mereka menggunakan banyak suku cadang 'hex' 16 pin (misalnya 74LS367) alih-alih lebih sedikit, suku cadang 'oktal' 20 pin (mis. 74LS244). Maksud saya adalah, Anda mungkin bisa mengkloning TRS80 yang memutar Z80 Anda sendiri. +1!
JustJeff
4

Saya berkesempatan membuat beberapa komputer dari awal berdasarkan mikroprosesor Z80, yaitu Sinclair ZX80 (versi yang disempurnakan) dan Jupiter Ace dari perusahaan Jupiter Cantab. Keduanya bekerja dengan baik dan mesin-mesin ini menggunakan keyboard dan menghasilkan gambar hitam dan putih (pada resolusi 240 x 192 piksel) ke perangkat TV. Informasi lebih lanjut tentang mereka:

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

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

Sebuah penerus ZX80, ZX Spectrum, tidak hanya semua ini tetapi juga memiliki semua jenis antarmuka seperti antarmuka disk IDE, antarmuka floppy disk, dan juga untuk media penyimpanan yang lebih modern seperti pen drive USB atau kartu SD.

Rekomendasi saya: silakan dan lakukan itu! Penelitian, belajar banyak di sepanjang jalan dan bersenang-senang. Banyak hal yang jauh lebih mudah hari ini daripada di tahun 80-an, kami mendapatkan internet, CPLD, FPGA, RAM statis sebanyak yang kami inginkan, dll!

Semoga beruntung dan jaga diri.

Ismael Perez de Albeniz
sumber
3

Anda akan memiliki yang sangat keras waktu membangun "komputer" Anda sendiri berdasarkan Z80 dengan semua fitur yang Anda dijelaskan. Namun, jika Anda dapat hidup tanpa membuat perangkat keras sendiri, komputer Z80 yang Anda program sendiri sepenuhnya mungkin.

TI-83, TI-84 dan sejenisnya (pra-TI-89, saya percaya) adalah kalkulator berbasis Z80. Mereka masih merupakan kalkulator yang sangat umum, dan dapat diperoleh dengan harga sekitar $ 100: http://www.amazon.com/s/ref=nb_sb_noss_1?url=search-alias%3Daps&field-keywords=ti-84

Kalkulator ini menampilkan semua yang Anda inginkan kecuali mouse, dan karena kalkulatornya masih umum di sekolah, Anda masih akan menemukan banyak pengembang Z80. StackOverflow dapat membantu jika Anda memiliki pertanyaan: /programming/tagged/z80

Saya tidak yakin betapa mudahnya memprogram ulang Z80 dengan kode Anda sendiri.

Chris Laplante
sumber
1
Di sekolah menengah, kami mengikuti kursus pemrograman Majelis menggunakan papan pengembangan Z80; kami memiliki semua rantai alat untuk memprogramnya dengan kode Assembler-nya, untuk menyalakan beberapa LED dan menampilkan beberapa angka dengan tampilan 7-segmen. Jadi saya berpikir bahwa untuk pembelajaran yang lebih berorientasi pada perangkat keras bisa menjadi titik awal yang baik, tetapi siapa yang tahu di mana mereka dapat ditemukan ...
clabacchio
1
Meskipun ada manfaat dalam menyarankan platform pengembangan yang berpotensi diretas, klaim awal "sangat sulit" terlalu berlebihan. Memang benar bahwa akan ada banyak tahapan proyek untuk melakukan segala sesuatu pada daftar poster, tetapi tidak satu pun dari hal-hal itu sangat sulit, atau di luar ruang lingkup apa yang biasa dilakukan oleh penggemar baik di awal 1980-an atau hari ini.
Chris Stratton
3

Ada di web beberapa situs yang mendokumentasikan cara membuat sistem berbasis Z80. Saya saat ini sedang membangun dan pada saat ini saya sudah mengaturnya dengan floppy drive keyboard seri dan monitor VGA dan kartu SD.

Rumah proyek:

http://n8vem-sbc.pbworks.com/w/page/44366173/Zeta%20SBC

Sam Castledine
sumber
2

Saya tidak berpikir Z-80 sudah usang. Ini adalah prosesor yang cukup kuat di dalamnya. Anda dapat menemukan assembler + IDE gratis di www.zilog.com. Ini adalah alat yang sangat bagus.

Jika Anda ingin mengganti PC, jangan repot-repot. Jika Anda ingin belajar banyak tentang mikroprosesor, teruskan maju.

Ada banyak materi cetak yang berkaitan dengan Z-80, interfacing, pemrograman, dll.

Sementara Z-80 tidak akan pernah cocok dengan quad core 3 GHZ, itu masih bisa sangat cepat dalam hal manusia. Ada prosesor yang lebih cepat dalam keluarga juga. Lihatlah keluarga Z80S180. Anda mendapatkan banyak daya, banyak periferal, semuanya terintegrasi ke dalam satu paket. Ya, rom & ram adalah eksternal, Anda tidak mengharapkan itu SEMUA dalam satu chip sekarang kan? Anda akan kehilangan seluruh konsep bus! Saya TIDAK akan mencoba salah satu dari desain kecepatan tinggi ini di luar kotak.

Arduino, raspberry PI, dll. Sadarilah bahwa Anda membeli blok lego, bukan mendesainnya. Ya mereka terhubung, tetapi kontribusi Anda akan terbatas pada perangkat lunak (OK, mungkin Anda bisa mendesain papan Anda sendiri - tetapi ya kan?)

Z-80 tetap merupakan alat belajar yang hebat. Begitu juga dengan 8051, dan Anda mendapatkan RAM, ROM, CPU dan 1 MIPS dalam satu paket dengan 51. Kecepatan lebih cepat juga jika Anda suka.

Jangan dengarkan pilihan yang dibuat orang lain. Putuskan apa yang ingin Anda lakukan dan lakukan. Jauh lebih mudah untuk debug pada 2 MHZ dari 40.

Gunakan kekuatan internet & kumpulkan beberapa skema Z-80. Ada banyak dari mereka mengambang di sana. Pertimbangkan "Mikroprosesor Z-80" oleh Gaonkar ISBN 0-02-340484-1 (Amazon dapat menjual salinan bekas dengan sangat sedikit $). Sebenarnya, Gaonkar akan menjawab setiap pertanyaan yang Anda ajukan.

Pete
sumber
1

Z80 sudah ketinggalan zaman, Anda tidak akan bisa membuat apa pun selain komputer retro baru, tetapi itu tidak berarti tidak akan instruktif dan menyenangkan untuk dicoba.

Jika saya hanya ingin membuktikan bahwa saya dapat menjalankan Z80 lama, saya mungkin akan menaruhnya dengan RAM statis 32Kx8 dan chip UART, dan membakar gambar ROM Model TRS-80 yang dimodifikasi menjadi EPROM / EEPROM kecil apa pun yang tergeletak di sekitar . Seluruh peta memori dapat diterjemahkan dengan chip MSI.

Tidak perlu banyak peretasan untuk menghapus rutinitas dekode matriks keyboard TRS-80 dan menggantinya dengan rutin input UART, atau menemukan rutin karakter-out dan menggantinya dengan rutin output UART. Kemudian dapat dihubungkan ke port serial PC, dan BASIC yang lama dapat dibesarkan dan berinteraksi dengan.

Itu harus membuktikan Anda menjalankan Z80, tanpa repot mencoba menerapkan banyak I / O untuk itu.

JustJeff
sumber
2
Saya tidak berpikir Z80 sudah ketinggalan zaman ... saat ini seri TI-83 kalkulator menggunakannya sebagai prosesor utamanya, dan TI-84 juga menggunakannya dalam ASIC.
fuzzyhair2
Apa yang salah dengan membangun komputer retro baru? Tidak ada yang membangun apapun dari level chip kecuali untuk kesenangan dan pendidikan mandiri. Tidak ketika Anda bisa mendapatkan motherboard pra-dibangun yang sangat baik untuk $ 5!
Isaac Rabinovitch