О чем - сделаем компьютер своими руками шаг за шагом
Я расскажу вам как сделать свой собственный компьютер шаг за шагом: мы разработаем его структуру, блок-схему, а затем и принципиальную схему. Потом разработаем печатные платы, закажем их производство и купим необходимые комплектующие. Потом напишем системное ПО, соберем и отладим наш компьютер. И запустим на нем дисковую операционную систему.
Я с детства мечтал конструировать ЭВМ. Закончил университет по специальности вычислительные машины, комплексы, системы и сети. В 1998 году. Тогда было не до конструирования ЭВМ. А страсть осталась.
С тех пор было многое: самодельные компьютеры, игрушки, промышленные контроллеры, самоделки на МК. Но желание конструировать именно ЭВМ не пропало. Чтобы все "по взрослому": блок CPU, PIC, RAM, контроллеры ввода-вывода и т.п.
Недавно наткнулся на описание миниЭВМ АЮША. И меня зацепило.
Дальше - больше. Я стал изучать первоисточник, послуживший вдохновением автору АЮШИ - труды Гранта Сирила. Ну и конечно решил попробовать.
Сначала я решил повторить конструкцию Гранта Сирила с небольшими изменениями, а затем двигаться дальше: разработать модульный компьютер с поддержкой шины, PIC и изменяемой конфигурацией.
В оригинальную конструкцию Гранта Сирила я добавил буферизацию Шины Данных, параллельный порт на базе i8255 (КР580ВВ55), а так же вывел на внешний разъем внутреннюю шину. К сожалению, в процессе разработки печатной платы в погоне за уменьшением её площади я допустил, как оказалось, большую ошибку: исключил внешний разъем системной шины. Что серьезно ограничило возможности подключения внешних устройств.
Однако и на этом компьютере я смогу обкатать все интересующие меня программные и аппаратные решения за исключением, разве что контроллера прерываний. Но об этом дальше.
Что у меня получилось: одноплатная микроЭВМ со следующими характеристиками:
- CPU Z80 на частоте 7,3726 Mhz;
- RAM 64K - статическая память полностью доступная для приложений;
- ROM 32K - доступно 2 банка по 16К, выбирается перемычкой;
- 1 или 2 (если не использовать видеоадаптер и адаптер клавиатуры PS/2) последовательных порта на скорости 115200Bps с сигналами RTS и CTS на базе Z80 SIO/2;
- 3 8-битных последовательных порта на базе i8255 (КР580ВВ55);
- Дисковый накопитель на базе CompactFlash card max емкостью 128Мбайт;
- Адаптер клавиатуры PS/2 на базе ATMEGA 328;
- Видеоадаптер на базе ATMEGA 328 c TV видеовыходом.
Пока я использую оригинальный BIOS Гранта Сирила. В дальнейшем планирую добавить в него ряд дополнительных функций, в частности автоматическую загрузку CP/M c CompactFlash card.
Подробное описание моей разработки в следующем выпуске.