Как собрать компьютер с микропроцессором Z80?


22

У меня есть чип, так как мне добавить: часы, оперативную память, жесткий диск (может быть, EEPROM?), Экран (графический экран LCD?), Метод ввода (клавиатура, мышь)?


2
Для чего вы хотите его использовать? Это определяет ваши требования.
Stevenvh

6
В свое время Z80 действительно был очень, очень замечательным процессором, но его день давно ушел. Если вы не очень и очень не хотите и не должны использовать Z80, не делайте этого. Используйте что-то еще. Поместите свой Z80 в свой собственный музей в качестве образца процессора, который сильно изменил путь к тому, что мы имеем сейчас.
Рассел МакМэхон

1
Я думаю, вам будет нелегко найти (кросс) ассемблер или (кросс) компилятор, который работает на текущем ПК, не говоря уже о периферийных чипах, EPROM и соответствующем программаторе, который вам необходим для его запуска. Я бы выбрал Arduino, в котором есть живое сообщество в Интернете, множество библиотек для различного оборудования, поддержка разработки для Linux и Windows.
Джиппи

1
@jippie Это не сложно, но в этом нет особого смысла, если только ты не увлекаешься ретро-вычислениями. Есть компилятор sdcc, и Фарнелл перечисляет все доступные периферийные чипы Z80, хотя цены довольно высоки.
звездный синий

1
У меня есть Z80 с таймером для темной комнаты, который я построил в 1980 году. Таймер все еще работает, но он отжил мою потребность во временных выдержках и химических ваннах в темной комнате. Это все еще работающий интервалометр, но я в настоящее время не пользуюсь им.
Олин Латроп

Ответы:


37

Не слушайте, как другие говорят, что z80 слишком старый или слишком жесткий. Z80 был разработан для этой задачи. Это самый старый постоянно производимый процессор по какой-то причине, с ним легко создавать компьютерные системы. Это отличный выбор для вашего проекта.

Есть несколько замечательных книг, таких как «Проекты по проектированию микрокомпьютеров z80» и « Руководство по z80 », которые действительно помогут вам. Кроме того, посмотрите на z80.info , у них есть тонна информации, которую вы хотите.

Ваши цели дизайна реалистичны. Самым сложным будет ЖК-экран, если вы хотите управлять VGA или NTSC дисплеем. Но даже это, как только вы это сделаете, не так сложно. Это будет повторяющаяся тема, с которой вы столкнетесь в этом проекте, все намного проще, чем вы ожидали. Ранние микрокомпьютеры были удивительно простыми машинами, и ожидать, что вы сможете в некоторой степени дублировать их в 2012 году, - очень реалистичная цель. Помимо пользовательских звуковых и видеочипов, остальная часть машины все еще доступна с готовых деталей и легко понятна даже новичку.

Самая простая в использовании система z80 будет иметь процессор z80, немного флэш-памяти или EEPROM, которые вы можете бесплатно получить от старых материнских плат, оперативной памяти и uart для последовательной связи (плюс max232 для сдвига уровня). Все это доступно у любого дистрибьютора электроники, имеет сквозные отверстия и может быть встроено в макетную плату. Единственное специальное оборудование, которое вам понадобится, это программатор flash / EEPROM (который я сам сделал из Arduino). Да, и еще несколько вещей, таких как логические чипы серии 74 для декодирования адресов, схема сброса и т. Д. И кварцевый генератор.

В качестве альтернативы, вы можете заменить UART на микросхему z80 для связи с современным параллельным ЖК-дисплеем. Графика на самом деле не работает, но она проста в использовании, и ваш z80 может печатать вещи на ранних этапах. Клавиатура PS / 2 будет довольно прост в интерфейсе.

Но в любом случае, z80 - хороший выбор для вашего проекта. Это может показаться сложным, но в конце концов это не так уж и плохо. Построение пошагово, начните с тестовой схемы z80, подключите EEPROM, чтобы он мог запустить некоторый код и просто построить оттуда.


1
Самая важная часть проекта будет заключаться в замене эпрома, на который можно легко загрузить код с ПК разработчика; вот где все было примитивно в эпоху z80 по сравнению с современными микроконтроллерами с внутрисхемным программированием. В качестве альтернативы, если вы получите проверенный серийный загрузчик (возможно, с помощью «диска» интерфейса SPI SD-карты bitbang) и поместите его в реальную СППЗУ, вы можете легко использовать статический ram для разрабатываемого кода.
Крис Страттон

Для разработки вашего кода просто используйте эмулятор eprom, подключенный к вашему ПК. Работает как ICP.

14

К счастью, есть книга - «Создайте свой собственный компьютер Z80», и, хотя она больше не печатается, автор Стив Сиарсия щедро разрешил свободно распространять ее в формате PDF: http://retro.hansotten.nl/index.php? страница = z80-SBC

Возможно, вы также захотите взглянуть на проект N8VEM Home Brew Computer. Это Z80 SBC (одноплатный компьютер), который может работать с CP / M и может быть изготовлен очень дешево - плата составляет $ 20 плюс доставка. Сейчас доступно множество плат расширения (шина S100!), И за всем этим стоит знающее и полезное сообщество.

Но, прежде всего, почему бы не взять несколько компонентов и собрать минимальный тестер Z80, чтобы убедиться, что ваш процессор работает - http://www.z80.info/z80test0.htm Это просто аппаратно соединяет строки данных и адресов для постоянного выполнения та же самая инструкция (NOP), чтобы продемонстрировать фундаментально, сердце работающего компьютера на базе Z80.


Потрясающие ссылки. Теперь я даже испытываю желание попробовать себя .. ;-)
Cees Meijer

4

Действительно, Z-80 - это старая микросхема, но это может быть хорошим испытанием для создания компьютера с ее помощью. В отличие от всех современных микроконтроллеров, он не имеет много встроенных функций, поэтому вам придется самостоятельно добавлять ОЗУ, СППЗУ и аппаратное декодирование адресов. И это именно то, что они сделали много лет назад, когда Тэнди построил TRS-80. Просто взгляните на оригинальную схему Model-1: http://electrickery.xs4all.nl/comp/trs80/doc/westHWBook.pdf


Вы начинаете уважать, какое оборудование встроено в чипы, такие как ATtiny и ATmega, при просмотре этого документа. Вероятно, у меня будут спонтанные ночные кошмары только из-за проводки шины данных и адреса.
Джиппи

Помимо самого Z80, большая часть того, что было в TRS-80, было связано с видео-разделом и динамическим интерфейсом RAM. Кроме того, число микросхем было несколько выше, чем могло бы быть б / к, по какой-то причине они использовали множество 16-контактных «шестигранных» частей (например, 74LS367) вместо меньшего количества 20-контактных «восьмеричных» частей (например, 74LS244). Я хочу сказать, что вы, вероятно, могли бы клонировать TRS80, катящий свой собственный Z80. +1!
JustJeff

4

У меня была возможность собрать несколько компьютеров с нуля на основе микропроцессора Z80, а именно Sinclair ZX80 (улучшенная версия) и Jupiter Ace от компании Jupiter Cantab. Оба работают отлично, и эти машины используют клавиатуру и генерируют черно-белые изображения (с разрешением 240 x 192 пикселей) на телевизор. Больше информации о них:

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

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

Преемник ZX80, ZX Spectrum, не только делает все это, но также имеет все виды интерфейсов, таких как интерфейс IDE-дисков, интерфейс гибких дисков, а также для более современных носителей, таких как USB-накопители или SD-карты.

Моя рекомендация: идти вперед и сделать это! Исследуйте, узнайте много нового и получайте удовольствие. В наши дни все намного проще, чем в 80-х, у нас есть Интернет, CPLD, FPGA, столько статической оперативной памяти, сколько мы хотим и т. Д.!

Удачи и береги себя.


3

Вам будет очень сложно создать свой собственный «компьютер» на базе Z80 со всеми функциями, которые вы описали. Однако, если вы можете жить без сборки оборудования, компьютер Z80, который вы программируете самостоятельно, вполне возможен.

Старые TI-83, TI-84 и аналогичные (я думаю, до TI-89) представляют собой калькуляторы на базе Z80. Они по-прежнему являются очень распространенными калькуляторами, и их можно купить примерно за 100 долларов: http://www.amazon.com/s/ref=nb_sb_noss_1?url=search-alias%3Daps&field-keywords=ti-84

В калькуляторе есть все, что вам нужно, кроме мыши, и, поскольку калькуляторы по-прежнему распространены в школах, вы все равно найдете множество разработчиков Z80. StackOverflow может помочь, если у вас есть вопросы: /programming/tagged/z80

Я не уверен, насколько легко будет перепрограммировать Z80 с помощью собственного кода.


1
В старших классах у нас был курс программирования на ассемблере с использованием плат z80 developmebt; у нас был весь набор инструментов для программирования его кода на Ассемблере, для освещения некоторых светодиодов и отображения некоторых чисел на 7-сегментных дисплеях. Так что я думаю, что для более аппаратно-ориентированного обучения это может быть хорошей отправной точкой, но кто знает, где их можно найти ...
clabacchio

1
Хотя есть смысл предложить потенциально взломанную платформу для разработки, первоначальное «очень сложное» утверждение преувеличено. Это правда, что будет много этапов проекта, чтобы сделать все в списке авторов, но ни одна из этих вещей не является особенно сложной или выходит за рамки того, что обычно делали любители в начале 1980-х или сегодня.
Крис Страттон

3

В сети существует несколько сайтов, которые документируют, как создавать системы на базе Z80. В настоящее время я работаю над этим, и на данный момент у меня есть дисковод, последовательная клавиатура, VGA-монитор и SD-карта.

Проект дома:

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


2

Я не думаю, что Z-80 устарел. Это довольно мощный процессор сам по себе. Вы можете найти бесплатный ассемблер + IDE на www.zilog.com. Это очень хороший инструмент.

Если вы хотите заменить ПК, не беспокойтесь. Если вы хотите узнать много нового о микропроцессорах, продвигайтесь вперед.

Существует много печатных материалов, касающихся Z-80, сопряжения, программирования и т. Д.

В то время как Z-80 никогда не будет соответствовать четырехъядерному процессору с частотой 3 ГГц, он все еще может быть довольно быстрым с точки зрения человека. В семье тоже есть более быстрые процессоры. Посмотрите на семью Z80S180. Вы получаете много энергии, много периферийных устройств, все интегрировано в один пакет. Да, rom & ram являются внешними, вы не ожидали, что это ВСЕ на одном чипе, не так ли? Вы бы пропустили всю концепцию автобуса! Однако я бы НЕ попробовал один из этих высокоскоростных дизайнов из коробки.

Arduinos, малиновый PI и т. Д. Поймите, что вы покупаете блоки lego, а не проектируете их. Да, они объединяются, но ваш вклад будет ограничен программным обеспечением (хорошо, может быть, вы могли бы разработать свою собственную плату - но не так ли?)

Z-80 остается отличным инструментом обучения. Так же как и 8051, и вы получаете ОЗУ, ПЗУ, ЦП и 1 MIPS в одном пакете с 51. Более высокие скорости, если хотите.

Не слушайте выбор, который сделали другие. Решите, что вы хотите сделать, и затем сделайте это. Гораздо легче отлаживать при 2 МГц, чем 40.

Используйте возможности Интернета и соберите несколько схем Z-80. Их там много. Рассмотрим «Микропроцессор Z-80» от Gaonkar ISBN 0-02-340484-1 (Amazon может продавать использованные копии за очень небольшую сумму). На самом деле, Гаонкар ответит на все ваши вопросы.


1

Z80 настолько устарел, что вы не сможете собрать с ним ничего, кроме новенького ретро-компьютера, но это не значит, что не будет поучительно и забавно делать попытки.

Если бы я просто хотел доказать, что могу запустить старый z80, я бы, вероятно, поставил его со статическим ОЗУ 32Kx8 и чипом UART и записал модифицированный образ ПЗУ модели I TRS-80 в любую маленькую EPROM / EEPROM, лежащую вокруг. , Вся карта памяти может быть декодирована с помощью чипа MSI.

Не потребовалось бы много времени для того, чтобы очистить процедуры декодирования матрицы клавиатуры TRS-80 и заменить их подпрограммой ввода UART, а также не найти подпрограмму вывода символов и заменить ее подпрограммой вывода UART. Затем он может быть подключен к последовательному порту ПК, а старый BASIC может быть запущен и взаимодействовать с ним.

Это должно доказать, что вы используете z80, без хлопот, пытаясь реализовать для него много операций ввода-вывода.


2
Я не думаю, что Z80 устарел ... в настоящее время калькуляторы серии TI-83 используют его в качестве основного процессора, а TI-84 также использует его в ASIC.
fuzzyhair2

Что плохого в создании новинки ретро-компьютера? Никто не строит ничего на уровне фишек, кроме веселья и самообразования. Не тогда, когда вы можете получить отличную готовую материнскую плату за 5 долларов!
Исаак Рабинович
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.